From b825e2668fefc120c2da3f53ed86a86534cd85e3 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Wed, 6 Mar 2019 12:46:17 +0100 Subject: [PATCH 001/120] Aggregate all liquidity restrictions in a single place (#1921) * Clean up session key rotation * Fix build * Bump version * Introduce feature to balances. * Move staking locking logic over to central point * ^^^ rest * First part of assimilation * More assimilation * More assimilation * Fix most tests * Fix build * Move Balances to new locking system * :q! * Bump runtime version * Build runtime * Convenience function * Test fix. * Whitespace * Improve type legibility. * Fix comment. * More tests. * More tests. * Bump version * Caps * Whitespace * Whitespace * Remove unneeded function. --- Cargo.lock | 11 +- core/executor/wasm/Cargo.lock | 1 - core/primitives/Cargo.toml | 4 +- core/serializer/Cargo.toml | 2 +- core/sr-io/with_std.rs | 39 +++- core/sr-primitives/Cargo.toml | 2 +- core/sr-primitives/src/lib.rs | 40 ++-- core/sr-primitives/src/traits.rs | 17 +- core/sr-version/Cargo.toml | 4 +- core/state-machine/src/basic.rs | 183 ++++++++++++++++++ core/state-machine/src/lib.rs | 4 +- core/test-runtime/wasm/Cargo.lock | 7 + .../substrate_test_runtime.compact.wasm | Bin 55951 -> 55903 bytes core/trie/src/node_header.rs | 1 - node-template/runtime/Cargo.toml | 4 +- node-template/runtime/src/lib.rs | 2 - node-template/runtime/wasm/Cargo.lock | 10 +- node/executor/src/lib.rs | 16 +- node/primitives/Cargo.toml | 4 +- node/runtime/Cargo.toml | 2 +- node/runtime/src/lib.rs | 9 +- node/runtime/wasm/Cargo.lock | 11 +- .../release/node_runtime.compact.wasm | Bin 876964 -> 889279 bytes srml/assets/Cargo.toml | 4 +- srml/aura/Cargo.toml | 5 +- srml/balances/Cargo.toml | 4 +- srml/balances/src/lib.rs | 147 ++++++++++++-- srml/balances/src/mock.rs | 1 - srml/balances/src/tests.rs | 133 ++++++++++++- srml/consensus/Cargo.toml | 4 +- srml/contract/Cargo.toml | 4 +- srml/contract/src/exec.rs | 4 +- srml/contract/src/tests.rs | 1 - srml/council/Cargo.toml | 3 +- srml/council/src/lib.rs | 1 - srml/democracy/Cargo.toml | 4 +- srml/democracy/src/lib.rs | 56 ++---- srml/example/Cargo.toml | 4 +- srml/example/src/lib.rs | 1 - srml/executive/Cargo.toml | 4 +- srml/executive/src/lib.rs | 1 - srml/fees/Cargo.toml | 4 +- srml/grandpa/Cargo.toml | 4 +- srml/indices/Cargo.toml | 4 +- srml/indices/src/lib.rs | 3 + srml/session/Cargo.toml | 4 +- srml/session/src/lib.rs | 2 +- srml/staking/Cargo.toml | 7 +- srml/staking/src/lib.rs | 131 ++++++------- srml/staking/src/mock.rs | 23 ++- srml/staking/src/tests.rs | 20 +- srml/sudo/Cargo.toml | 4 +- srml/support/Cargo.toml | 6 +- .../procedural/src/storage/transformation.rs | 21 +- srml/support/src/lib.rs | 3 + srml/support/src/traits.rs | 117 +++++------ srml/system/Cargo.toml | 4 +- srml/timestamp/Cargo.toml | 6 +- srml/timestamp/src/lib.rs | 15 +- srml/treasury/Cargo.toml | 4 +- srml/treasury/src/lib.rs | 1 - srml/upgrade-key/Cargo.toml | 4 +- 62 files changed, 795 insertions(+), 346 deletions(-) create mode 100644 core/state-machine/src/basic.rs diff --git a/Cargo.lock b/Cargo.lock index 7b7cdd9021..1ad583f7fa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -212,6 +212,11 @@ name = "bitflags" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "bitmask" +version = "0.5.0" +source = "git+https://github.com/paritytech/bitmask#c2d8d196e30b018d1385be8357fdca61b978facf" + [[package]] name = "blake2" version = "0.8.0" @@ -3052,6 +3057,7 @@ 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-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)", "sr-io 0.1.0", @@ -3343,6 +3349,7 @@ dependencies = [ name = "srml-support" version = "0.1.0" 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)", @@ -3415,7 +3422,6 @@ dependencies = [ "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", - "srml-consensus 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "substrate-inherents 0.1.0", @@ -4608,7 +4614,7 @@ name = "twox-hash" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -4954,6 +4960,7 @@ dependencies = [ "checksum bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ebecac13b3c745150d7b6c3ea7572d372f09d627c2077e893bf26c5c7f70d282" "checksum bindgen 0.43.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6d52d263eacd15d26cbcf215d254b410bd58212aaa2d3c453a04b2d3b3adcf41" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" +"checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" "checksum blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "91721a6330935673395a0607df4d49a9cb90ae12d259f1b3e0a3f6e1d486872e" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" "checksum block-buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1339a1042f5d9f295737ad4d9a6ab6bf81c84a933dba110b9200cd6d1448b814" diff --git a/core/executor/wasm/Cargo.lock b/core/executor/wasm/Cargo.lock index 27c80a723e..dc1159e8d0 100644 --- a/core/executor/wasm/Cargo.lock +++ b/core/executor/wasm/Cargo.lock @@ -189,7 +189,6 @@ dependencies = [ "parity-codec 3.1.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)", - "serde 1.0.79 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", ] diff --git a/core/primitives/Cargo.toml b/core/primitives/Cargo.toml index ad42502ddc..579264cc9a 100644 --- a/core/primitives/Cargo.toml +++ b/core/primitives/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" rstd = { package = "sr-std", path = "../sr-std", default-features = false } parity-codec = { version = "3.1", default-features = false, features = ["derive"] } rustc-hex = { version = "2.0", default-features = false } -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } twox-hash = { version = "1.1.0", optional = true } byteorder = { version = "1.1", default-features = false } @@ -46,7 +46,7 @@ std = [ "hash256-std-hasher/std", "hash-db/std", "rstd/std", - "serde/std", + "serde", "rustc-hex/std", "twox-hash", "blake2-rfc", diff --git a/core/serializer/Cargo.toml b/core/serializer/Cargo.toml index d25c8ce074..8788f776e5 100644 --- a/core/serializer/Cargo.toml +++ b/core/serializer/Cargo.toml @@ -5,5 +5,5 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -serde = { version = "1.0", default-features = false } +serde = "1.0" serde_json = "1.0" diff --git a/core/sr-io/with_std.rs b/core/sr-io/with_std.rs index 562e349ced..f7db1825d3 100644 --- a/core/sr-io/with_std.rs +++ b/core/sr-io/with_std.rs @@ -17,19 +17,29 @@ #[doc(hidden)] pub use parity_codec as codec; // re-export hashing functions. -pub use primitives::{blake2_256, twox_128, twox_256, ed25519, Blake2Hasher, sr25519}; +pub use primitives::{ + blake2_256, twox_128, twox_256, ed25519, Blake2Hasher, sr25519 +}; pub use tiny_keccak::keccak256 as keccak_256; // Switch to this after PoC-3 // pub use primitives::BlakeHasher; -pub use substrate_state_machine::{Externalities, TestExternalities}; +pub use substrate_state_machine::{Externalities, BasicExternalities, TestExternalities}; use environmental::{environmental, thread_local_impl}; -use primitives::hexdisplay::HexDisplay; -use primitives::H256; +use primitives::{hexdisplay::HexDisplay, H256}; use hash_db::Hasher; +#[cfg(feature = "std")] +use std::collections::HashMap; + environmental!(ext: trait Externalities); +/// A set of key value pairs for storage. +pub type StorageOverlay = HashMap, Vec>; + +/// A set of key value pairs for children storage; +pub type ChildrenStorageOverlay = HashMap, StorageOverlay>; + /// Get `key` from storage and return a `Vec`, empty if there's a problem. pub fn storage(key: &[u8]) -> Option> { ext::with(|ext| ext.storage(key).map(|s| s.to_vec())) @@ -196,7 +206,7 @@ pub fn sr25519_verify>(sig: &[u8; 64], msg: &[u8], pubkey: P) -> /// Verify and recover a SECP256k1 ECDSA signature. /// - `sig` is passed in RSV format. V should be either 0/1 or 27/28. -/// - returns `Err` if the signatue is bad, otherwise the 64-byte pubkey (doesn't include the 0x04 prefix). +/// - returns `Err` if the signature is bad, otherwise the 64-byte pubkey (doesn't include the 0x04 prefix). pub fn secp256k1_ecdsa_recover(sig: &[u8; 65], msg: &[u8; 32]) -> Result<[u8; 64], EcdsaVerifyError> { let rs = secp256k1::Signature::parse_slice(&sig[0..64]).map_err(|_| EcdsaVerifyError::BadRS)?; let v = secp256k1::RecoveryId::parse(if sig[64] > 26 { sig[64] - 27 } else { sig[64] } as u8).map_err(|_| EcdsaVerifyError::BadV)?; @@ -213,6 +223,17 @@ pub fn with_externalities R>(ext: &mut Externalities R>(storage: &mut StorageOverlay, f: F) -> R { + let mut alt_storage = Default::default(); + rstd::mem::swap(&mut alt_storage, storage); + let mut ext: BasicExternalities = alt_storage.into(); + let r = ext::using(&mut ext, f); + *storage = ext.into(); + r +} + /// Trait for things which can be printed. pub trait Printable { fn print(self); @@ -248,7 +269,7 @@ mod std_tests { #[test] fn storage_works() { - let mut t = TestExternalities::::default(); + let mut t = BasicExternalities::default(); assert!(with_externalities(&mut t, || { assert_eq!(storage(b"hello"), None); set_storage(b"hello", b"world"); @@ -258,7 +279,7 @@ mod std_tests { true })); - t = TestExternalities::new(map![b"foo".to_vec() => b"bar".to_vec()]); + t = BasicExternalities::new(map![b"foo".to_vec() => b"bar".to_vec()]); assert!(!with_externalities(&mut t, || { assert_eq!(storage(b"hello"), None); @@ -269,7 +290,7 @@ mod std_tests { #[test] fn read_storage_works() { - let mut t = TestExternalities::::new(map![ + let mut t = BasicExternalities::new(map![ b":test".to_vec() => b"\x0b\0\0\0Hello world".to_vec() ]); @@ -285,7 +306,7 @@ mod std_tests { #[test] fn clear_prefix_works() { - let mut t = TestExternalities::::new(map![ + let mut t = BasicExternalities::new(map![ b":a".to_vec() => b"\x0b\0\0\0Hello world".to_vec(), b":abcd".to_vec() => b"\x0b\0\0\0Hello world".to_vec(), b":abc".to_vec() => b"\x0b\0\0\0Hello world".to_vec(), diff --git a/core/sr-primitives/Cargo.toml b/core/sr-primitives/Cargo.toml index 2a971c3941..4ef85b4989 100644 --- a/core/sr-primitives/Cargo.toml +++ b/core/sr-primitives/Cargo.toml @@ -13,7 +13,7 @@ parity-codec = { version = "3.1", 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 } -log = {version = "0.4", optional = true } +log = { version = "0.4", optional = true } [dev-dependencies] serde_json = "1.0" diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index 7a5739d8f1..b2491c57a1 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -27,7 +27,7 @@ pub use parity_codec as codec; pub use serde_derive; #[cfg(feature = "std")] -use std::collections::HashMap; +pub use runtime_io::{StorageOverlay, ChildrenStorageOverlay}; use rstd::prelude::*; use substrate_primitives::hash::{H256, H512}; @@ -87,17 +87,9 @@ pub use serde::{Serialize, de::DeserializeOwned}; #[cfg(feature = "std")] use serde_derive::{Serialize, Deserialize}; -/// A set of key value pairs for storage. -#[cfg(feature = "std")] -pub type StorageOverlay = HashMap, Vec>; - -/// A set of key value pairs for children storage; -#[cfg(feature = "std")] -pub type ChildrenStorageOverlay = HashMap, StorageOverlay>; - /// Complex storage builder stuff. #[cfg(feature = "std")] -pub trait BuildStorage { +pub trait BuildStorage: Sized { /// Hash given slice. /// /// Default to xx128 hashing. @@ -107,7 +99,21 @@ pub trait BuildStorage { r } /// Build the storage out of this builder. - fn build_storage(self) -> Result<(StorageOverlay, ChildrenStorageOverlay), String>; + fn build_storage(self) -> Result<(StorageOverlay, ChildrenStorageOverlay), String> { + let mut storage = Default::default(); + let mut child_storage = Default::default(); + self.assimilate_storage(&mut storage, &mut child_storage)?; + Ok((storage, child_storage)) + } + /// Assimilate the storage for this module into pre-existing overlays. + fn assimilate_storage(self, storage: &mut StorageOverlay, child_storage: &mut ChildrenStorageOverlay) -> Result<(), String> { + let (s, cs) = self.build_storage()?; + storage.extend(s); + for (other_child_key, other_child_map) in cs { + child_storage.entry(other_child_key).or_default().extend(other_child_map); + } + Ok(()) + } } #[cfg(feature = "std")] @@ -115,6 +121,10 @@ impl BuildStorage for StorageOverlay { fn build_storage(self) -> Result<(StorageOverlay, ChildrenStorageOverlay), String> { Ok((self, Default::default())) } + fn assimilate_storage(self, storage: &mut StorageOverlay, _child_storage: &mut ChildrenStorageOverlay) -> Result<(), String> { + storage.extend(self); + Ok(()) + } } /// Permill is parts-per-million (i.e. after multiplying by this, divide by 1000000). @@ -411,6 +421,14 @@ macro_rules! impl_outer_config { } #[cfg(any(feature = "std", test))] impl $crate::BuildStorage for $main { + fn assimilate_storage(self, top: &mut $crate::StorageOverlay, children: &mut $crate::ChildrenStorageOverlay) -> ::std::result::Result<(), String> { + $( + if let Some(extra) = self.$snake { + extra.assimilate_storage(top, children)?; + } + )* + Ok(()) + } fn build_storage(self) -> ::std::result::Result<($crate::StorageOverlay, $crate::ChildrenStorageOverlay), String> { let mut top = $crate::StorageOverlay::new(); let mut children = $crate::ChildrenStorageOverlay::new(); diff --git a/core/sr-primitives/src/traits.rs b/core/sr-primitives/src/traits.rs index 8050451b38..4ff1ad3115 100644 --- a/core/sr-primitives/src/traits.rs +++ b/core/sr-primitives/src/traits.rs @@ -23,8 +23,7 @@ use runtime_io; #[cfg(feature = "std")] use serde::{Serialize, de::DeserializeOwned}; #[cfg(feature = "std")] use serde_derive::{Serialize, Deserialize}; -use substrate_primitives; -use substrate_primitives::Blake2Hasher; +use substrate_primitives::{self, Hasher, Blake2Hasher}; use crate::codec::{Codec, Encode, HasCompact}; pub use integer_sqrt::IntegerSquareRoot; pub use num_traits::{ @@ -84,6 +83,8 @@ pub trait StaticLookup { type Target; /// Attempt a lookup. fn lookup(s: Self::Source) -> result::Result; + /// Convert from Target back to Source. + fn unlookup(t: Self::Target) -> Self::Source; } /// A lookup implementation returning the input value. @@ -93,6 +94,7 @@ impl StaticLookup for IdentityLookup< type Source = T; type Target = T; fn lookup(x: T) -> result::Result { Ok(x) } + fn unlookup(x: T) -> T { x } } impl Lookup for IdentityLookup { type Source = T; @@ -184,7 +186,7 @@ pub trait SimpleArithmetic: CheckedMul + CheckedDiv + Saturating + - PartialOrd + Ord + + PartialOrd + Ord + Bounded + HasCompact {} impl + Ord + + PartialOrd + Ord + Bounded + HasCompact > SimpleArithmetic for T {} @@ -298,7 +300,10 @@ tuple_impl!(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, pub trait Hash: 'static + MaybeSerializeDebug + Clone + Eq + PartialEq { // Stupid bug in the Rust compiler believes derived // traits must be fulfilled by all type parameters. /// The hash type produced. - type Output: Member + MaybeSerializeDebug + AsRef<[u8]> + AsMut<[u8]>; + type Output: Member + MaybeSerializeDebug + rstd::hash::Hash + AsRef<[u8]> + AsMut<[u8]> + Copy + Default; + + /// The associated hash_db Hasher type. + type Hasher: Hasher; /// Produce the hash of some byte-slice. fn hash(s: &[u8]) -> Self::Output; @@ -338,6 +343,7 @@ pub struct BlakeTwo256; impl Hash for BlakeTwo256 { type Output = substrate_primitives::H256; + type Hasher = Blake2Hasher; fn hash(s: &[u8]) -> Self::Output { runtime_io::blake2_256(s).into() } @@ -480,6 +486,7 @@ pub trait MaybeHash {} #[cfg(not(feature = "std"))] impl MaybeHash for T {} + /// A type that can be used in runtime structures. pub trait Member: Send + Sync + Sized + MaybeDebug + Eq + PartialEq + Clone + 'static {} impl Member for T {} diff --git a/core/sr-version/Cargo.toml b/core/sr-version/Cargo.toml index 3ad1ac299e..5a1e6162f1 100644 --- a/core/sr-version/Cargo.toml +++ b/core/sr-version/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] impl-serde = { version = "0.1", optional = true } -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false, features = ["derive"] } rstd = { package = "sr-std", path = "../sr-std", default-features = false } @@ -16,7 +16,7 @@ runtime_primitives = { package = "sr-primitives", path = "../sr-primitives", def default = ["std"] std = [ "impl-serde", - "serde/std", + "serde", "serde_derive", "parity-codec/std", "rstd/std", diff --git a/core/state-machine/src/basic.rs b/core/state-machine/src/basic.rs new file mode 100644 index 0000000000..cb9f5d33d0 --- /dev/null +++ b/core/state-machine/src/basic.rs @@ -0,0 +1,183 @@ +// Copyright 2017-2018 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 . + +//! Basic implementation for Externalities. + +use std::collections::HashMap; +use std::iter::FromIterator; +use hash_db::Hasher; +use heapsize::HeapSizeOf; +use trie::trie_root; +use primitives::storage::well_known_keys::{CHANGES_TRIE_CONFIG, CODE, HEAP_PAGES}; +use parity_codec::Encode; +use super::{Externalities, OverlayedChanges}; + +/// Simple HashMap-based Externalities impl. +pub struct BasicExternalities { + inner: HashMap, Vec>, + changes: OverlayedChanges, + code: Option>, +} + +impl BasicExternalities { + /// Create a new instance of `BasicExternalities` + pub fn new(inner: HashMap, Vec>) -> Self { + Self::new_with_code(&[], inner) + } + + /// Create a new instance of `BasicExternalities` + pub fn new_with_code(code: &[u8], mut inner: HashMap, Vec>) -> Self { + let mut overlay = OverlayedChanges::default(); + super::set_changes_trie_config( + &mut overlay, + inner.get(&CHANGES_TRIE_CONFIG.to_vec()).cloned(), + false, + ).expect("changes trie configuration is correct in test env; qed"); + + inner.insert(HEAP_PAGES.to_vec(), 8u64.encode()); + + BasicExternalities { + inner, + changes: overlay, + code: Some(code.to_vec()), + } + } + + /// Insert key/value + pub fn insert(&mut self, k: Vec, v: Vec) -> Option> { + self.inner.insert(k, v) + } +} + +impl ::std::fmt::Debug for BasicExternalities { + fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { + write!(f, "{:?}", self.inner) + } +} + +impl PartialEq for BasicExternalities { + fn eq(&self, other: &BasicExternalities) -> bool { + self.inner.eq(&other.inner) + } +} + +impl FromIterator<(Vec, Vec)> for BasicExternalities { + fn from_iter, Vec)>>(iter: I) -> Self { + let mut t = Self::new(Default::default()); + t.inner.extend(iter); + t + } +} + +impl Default for BasicExternalities { + fn default() -> Self { Self::new(Default::default()) } +} + +impl From for HashMap, Vec> { + fn from(tex: BasicExternalities) -> Self { + tex.inner.into() + } +} + +impl From< HashMap, Vec> > for BasicExternalities { + fn from(hashmap: HashMap, Vec>) -> Self { + BasicExternalities { + inner: hashmap, + changes: Default::default(), + code: None, + } + } +} + +impl Externalities for BasicExternalities where H::Out: Ord + HeapSizeOf { + fn storage(&self, key: &[u8]) -> Option> { + match key { + CODE => self.code.clone(), + _ => self.inner.get(key).cloned(), + } + } + + fn child_storage(&self, _storage_key: &[u8], _key: &[u8]) -> Option> { + None + } + + fn place_storage(&mut self, key: Vec, maybe_value: Option>) { + self.changes.set_storage(key.clone(), maybe_value.clone()); + match key.as_ref() { + CODE => self.code = maybe_value, + _ => { + match maybe_value { + Some(value) => { self.inner.insert(key, value); } + None => { self.inner.remove(&key); } + } + } + } + } + + fn place_child_storage(&mut self, _storage_key: Vec, _key: Vec, _value: Option>) -> bool { + false + } + + fn kill_child_storage(&mut self, _storage_key: &[u8]) { } + + fn clear_prefix(&mut self, prefix: &[u8]) { + self.changes.clear_prefix(prefix); + self.inner.retain(|key, _| !key.starts_with(prefix)); + } + + fn chain_id(&self) -> u64 { 42 } + + fn storage_root(&mut self) -> H::Out { + trie_root::(self.inner.clone()) + } + + fn child_storage_root(&mut self, _storage_key: &[u8]) -> Option> { + None + } + + fn storage_changes_root(&mut self, _parent: H::Out, _parent_num: u64) -> Option { + None + } +} + +#[cfg(test)] +mod tests { + use super::*; + use primitives::{Blake2Hasher, H256}; + use hex_literal::{hex, hex_impl}; + + #[test] + fn commit_should_work() { + let mut ext = BasicExternalities::default(); + let ext = &mut ext as &mut Externalities; + ext.set_storage(b"doe".to_vec(), b"reindeer".to_vec()); + ext.set_storage(b"dog".to_vec(), b"puppy".to_vec()); + ext.set_storage(b"dogglesworth".to_vec(), b"cat".to_vec()); + const ROOT: [u8; 32] = hex!("0b33ed94e74e0f8e92a55923bece1ed02d16cf424e124613ddebc53ac3eeeabe"); + assert_eq!(ext.storage_root(), H256::from(ROOT)); + } + + #[test] + fn set_and_retrieve_code() { + let mut ext = BasicExternalities::default(); + let ext = &mut ext as &mut Externalities; + + let code = vec![1, 2, 3]; + ext.set_storage(CODE.to_vec(), code.clone()); + + assert_eq!(&ext.storage(CODE).unwrap(), &code); + } +} diff --git a/core/state-machine/src/lib.rs b/core/state-machine/src/lib.rs index 3b9e482e82..6ba376d046 100644 --- a/core/state-machine/src/lib.rs +++ b/core/state-machine/src/lib.rs @@ -29,6 +29,7 @@ pub mod backend; mod changes_trie; mod ext; mod testing; +mod basic; mod overlayed_changes; mod proving_backend; mod trie_backend; @@ -37,6 +38,7 @@ mod trie_backend_essence; use overlayed_changes::OverlayedChangeSet; pub use trie::{TrieMut, TrieDBMut, DBValue, MemoryDB}; pub use testing::TestExternalities; +pub use basic::BasicExternalities; pub use ext::Ext; pub use backend::Backend; pub use changes_trie::{ @@ -625,7 +627,7 @@ where /// differs from previous OR config decode has failed. pub(crate) fn set_changes_trie_config(overlay: &mut OverlayedChanges, config: Option>, final_check: bool) -> Result<(), Box> { let config = match config { - Some(v) => Some(changes_trie::Configuration::decode(&mut &v[..]) + Some(v) => Some(Decode::decode(&mut &v[..]) .ok_or_else(|| Box::new("Failed to decode changes trie configuration".to_owned()) as Box)?), None => None, }; diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index 1dae80fcba..ff712a4aef 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -44,6 +44,11 @@ name = "bitflags" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "bitmask" +version = "0.5.0" +source = "git+https://github.com/paritytech/bitmask#c2d8d196e30b018d1385be8357fdca61b978facf" + [[package]] name = "blake2-rfc" version = "0.2.18" @@ -1221,6 +1226,7 @@ dependencies = [ name = "srml-support" version = "0.1.0" dependencies = [ + "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1863,6 +1869,7 @@ dependencies = [ "checksum backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "c66d56ac8dabd07f6aacdaf633f4b8262f5b3601a810a0dcddffd5c22c69daa0" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" +"checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" "checksum block-buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1339a1042f5d9f295737ad4d9a6ab6bf81c84a933dba110b9200cd6d1448b814" "checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d" diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 13b55df5d1434798d967fb35a1e13737b982c3fd..15ed8aabd2faf73ab308f4e7de30c0f9eac3f67d 100644 GIT binary patch delta 3722 zcmb7Hdvp}l8J|15gbhhHvxJaU9&Q53=AC)%?5sTEkc!xz;)_>64D(uKg+xi93QD3x z2#=7&4=bdIV6_KZtKa~KC~8Dc8s!xUrK#GIT2AGtJxXmYRZrXR?j|9Mf3&-2_V?ZI z-uu1o_kFXs<&f+ALD&8xrL@`y~OK=Gek+=(bmbN)HB)+ z@Uim>inxlJm3EcBs_yQZmCNdu*|kjZ=s3&1-!@m(*;U5!8uK2e6k6G=Ov(3SyH2Wx|l&JDz1!2)c5}_3%ya1ZSzMlw1?>-*M}0qt0Ane>8&O zyiCd{M*F;_li@_?1^2cLvdfv~e}yIc;9u7U$q~pN_dIzLPK~R<-|6F(@34x4j0C+AnkDb1kE>WVM>5#7dJW2Oz2N%|I-K?N($M_ zTj8aW0@4H@lq^i$(b~xcrbE&{+7>3 z=BW*xjE35|Jnal6Qz!|(g=3t5-lnpo-{I#J5)8#;e-HN!Y~@SFOAi@ zV9lK!Oz};1)q!3P47021_^SYa9xc9gM>s=V`4eUI8b9;5X!5UP&@ZlAIjV`w9Fq13@x~)=BC7gQuwfDCfNi9 z_f8~1n04=+gY2{So}D->zTZPa*L?@jr2AJY1mo~xZ3o>NtD8fivu-~51Nc|XCKq7o zs%fMPo?Ufr%*A+A8Zam{PN`^ZPcyWv9-B277ObC8ynb5a^#ey&7g1?T8uH=AUz9rK zKlzBD_rV8t7JnWW)juHWyCLsqW5YrYpFSXwPav>nJi0h-jg@dQ!#TWW5+Re|y|t&w zB86-%cG+}-Izs6;MR@T zmS8L3(r7!l5p7E2#tv@?SM>;ZVq*~|V?wmw$KF7{=t(PyX&gN-w&??M!8zabXPV9P zw-mx(H^+D`@oCb_b4u^JVS5@yzTT4e|@1W&Qs~p$GTUNXw zw9@R{K~Jk2ZfPqoy|{^1az9Cw#aTpcfBYDGC^u|;uX6N9juLX{_MaU87%eL!j zz6#*D@>0F9Zu@j6cl#{bGpiq8nZ)+D!iPV5pTg_AKF#yv}`Bie4@Pt;@+s}43E6PP58b62wo|vU zGkpEbH8&4-2IPz%p6t)lHQ(Nr=qJ=t`htp=tit+{z*k#ev$OcwN4-h=5`E>OqftAG z4g$8m*AHf4U-;d@J1A>!bq16ls=V^f*>fl>*cvwv^PXBKqr`;&=yiZq;#tH~74XMH zg;d6x~%XADaqE$8x|rR^V(s79nu* z%>~Jqx1xqU?u%|HeQRQU8sQj)VVG)$V-_Md6NVXq*n{I~!}!|=_;=y@G~`zxjzjEn zCH61Cc^8iFK|Y7L7I6$>3t~FrZo~}40|Vnu#8C`W&%A?#4=3J7^do+OI2N%G1y4qN zo8_1Y;_djb^g(|9F#cTw{B~T2|I~)o-#x(JhwCRIJ!t4!q?7Ua2KgDNe`sO_dXO|U zafQEWfS>OEwxAaV_)CzF|4W!=#8kwch%^$fAyUUqBW59fjMmf0Uc_+#(KCW$Mx%aa zBtGt4Y{4b=>rqAG>MmSTm%koWc)&WxHNRnU3MGA-4R3}^q_ zDI`M>l~6<%Bt8@orHE*be}Vw%^TS`>so{7zEXx+p>lEck80_N#j<-cwmrcQpqGT&- zz~jf?f+HvLe5Ro2VM!JwC2Co!ZBByEPJ}agK^ASnj+nYCNuq8}o-uXN9OyY&=F>yE zh+9-CgzklOB^TD7EcY3LVM`%1!b@R3B!!GTIDS(0g-t0e**0%mqN>P>5(Mtllng;N zR9;s?VZ$`!s1nM*5|<1^koBk{n2MlCMmS;>EE$YhE~K4Ie(ZFrPl~FBZdtk+37a}E z$%QcCbh!{UWZkl5-L_TTQbI;iYWya&8tZ>qO?B~ASEUkYK3$es`aSohGI;lN&=*pa zupmpKB$`$eIYWvlm^rEujmoO5Snx#e9L_X(K8%NHDXJia<&g7r?>WLLA~HjG7J@G8 elFB=O`t4knQx(e=R5@zeQC%^kf-|%4X7;~I)f@)^ delta 3669 zcma)94RjRM6`nV{ImtmRdYm>#2HLd$68zdf)z-RO~r!&g}Q* zzPa~(@4NTi?ELANXYX;(vnR=9FXPX^kJszX&h}<|GrVcp*}m-TY?2MbM9J*i*UR|Y z7`+by?CoWh-2CPiXQi>RwV}CXb?a(p15-6VZgMs|*2Y$6rPA^R7Bu7cwNpB$o!ZsQ#A+C3 z7Q+O+`n|DWy8cL8V=yhIlUDr{T%6KGPQfix^}whHeLf2d;xV*x8gDicjw%YG?7k549Awv)CkC7pF&Hj9!`z`TJLQ0@mF2nC7 za;UTb-7}NP2(mcHKmuGz&=VvI`=!OpmB6F&G*aTeAaC=LGSJf|z`gn3ai5&` zG0DBu(aY$#Di_lKMu$E+bbnrZ6H6|;|GuuAkY1Rvpsw)1PMpj{ZV33t5xs4JpFy@r zdLBDZKLA||K4p>meG6w0Qtm!^!*p`}xlVjq;;I=R)mTqMcHM5Vr8$KxXKV%@8RhngxTzfezI5H~ zmv_@_bbEqqEs3xbFlPH6YQgA<_zD}u0T zFl9bczo2>_?p9${WRan;vk^*TSYnr%7!K7KR~lqXS-ueSS<03cdcd&rz-MMbtx<_l z+;s*^rloix>8}|=mw6Nk)>;ZdWwzKobamNTMq!t82YDafbC!^gK#0yEgU}p3r~fFf zQ9DXRRm(ym3DsyV;+TyoY(5UKOjD}i=~LpTuQx6VbgZhN;mg;T!ZS})yO|A_2#WLR z>H`zH1%Adzos?Fx)=^Mo*~6CJ zK|^9@F0kx8thj^g%ZUgB>kERsp3Vh|$n}0apE_13Q_B2#=R5^_2%+P5A*1D55`u*- zKSnvDOa3@pE~j3-PL^ z0LJDDtT!6&7n^fvxc<#=#|?SzOIrqLl@@Npxvk^qT;J9TJl6l*N{@BnwjH4nHFcLZ zo+8?K^sCS4>)Wcwr1jzX=OnnYeKHw>Njv6Fpp6f6in*nw{U*)v1!&xn&vte}#}18r z;P&pANsH`@`&<%opV`?-yP(?9lE!xJgCjrqBZUWdf0WaW|LcO8K`*z2wu-pcZs(ry z@sfIEZ$2r4<9j8H^Vhv{&a?3h;}NH87UPobdw}oCO-m%$-TssP1nK2H-a+^K*yHQb znL8-rzl-??f6C^bjC&tWQr=G~qyHC&Cf%4S5VTAgT~d@BZ2S z*=gq!XZHhFr#vc-0k*7{j!neF_|~yosj2dKV@67T=srF%)ElQpYXmnY$B9vSdDLo@^}`1IPJDiZ*_9*>^%k7x(mu>1@tW+y^@$ z^+~o2(vwSDMt+Y;X28~-TSMo+Vc^et`qDm0?DUmiULq&mr=EY6Wc@zCGI~4KlkW*X zeDB5Pu?@{lPK~kFZgJqV7ni#Wenr@8Mr<{AG`FlVowZg&%{l{r+-zxetOmHP_W^jP zchxs|t`Ii79D_-xir}4>XTz*hWv+8dCFxA!1CP9NXXarnU0=7C8v|Efnbwv|I7Y$Q zwG7AHg}9qA%oxP;ct2;9eSgv(#pnHKUxZkI_^yXz79uXkc@N?Sv~!5}Ax=Pi7;zlp z6Nov8J<0n%#IX$1#th>ifD?Z~%t!nJF%NM*1};W?gXNey#9Q!U@hU)j=_vb(r2Qa1 zhd;T#e7+%R@5Se*;W$NfD~>bqn&G8{+D0ata0h8$PK?+eOxjg+7#-;8r2Q$h<1Yy2 zJYp8&MMSE^B}BTh%ZL*ZKScIaS#Au+1QB_}@wh&d$_~b3GVm%&ODLcsQmMxxQe`$E zZ5kko_Z5iy5OWdlL`RBC@t!KT%*(_VPTk*t_f#>uF#V+bveEA5zdDzUQ&q( zQ+C24M1OlIM^YoQq^WXP69vuG!ra}n;b?y@TpWmSVL2j24M7!c!Hk%O16%r{6hRZL5X>Hs0}g6oTc$0jie|~8Rtnn(X5o&sh~Y?TR8k^Q z#}Ud#)XGt#Vpx#vs9W&k@eF4I{!kvg}xzAxXA-^mn(h9M4-}Q!&Dd7_oT8 LP~5!pH?sc)5jz3a diff --git a/core/trie/src/node_header.rs b/core/trie/src/node_header.rs index 99b1241cab..6324a6e353 100644 --- a/core/trie/src/node_header.rs +++ b/core/trie/src/node_header.rs @@ -72,7 +72,6 @@ impl Decode for NodeHeader { BRANCH_NODE_NO_VALUE => NodeHeader::Branch(false), // 254 BRANCH_NODE_WITH_VALUE => NodeHeader::Branch(true), // 255 - _ => unreachable!(), }) } } diff --git a/node-template/runtime/Cargo.toml b/node-template/runtime/Cargo.toml index 986b12ce94..066e9da79d 100644 --- a/node-template/runtime/Cargo.toml +++ b/node-template/runtime/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -serde = { version = "1.0", default-features = false } +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"] } @@ -47,7 +47,7 @@ std = [ "sudo/std", "version/std", "serde_derive", - "serde/std", + "serde", "safe-mix/std", "consensus-aura/std", ] diff --git a/node-template/runtime/src/lib.rs b/node-template/runtime/src/lib.rs index 9caef856fd..fd696e9500 100644 --- a/node-template/runtime/src/lib.rs +++ b/node-template/runtime/src/lib.rs @@ -158,8 +158,6 @@ impl balances::Trait for Runtime { type OnFreeBalanceZero = (); /// What to do if a new account is created. type OnNewAccount = Indices; - /// Restrict whether an account can transfer funds. We don't place any further restrictions. - type EnsureAccountLiquid = (); /// The uniquitous event type. type Event = Event; } diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index f1b317903e..421d9cdcad 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -50,6 +50,11 @@ name = "bitflags" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "bitmask" +version = "0.5.0" +source = "git+https://github.com/paritytech/bitmask#c2d8d196e30b018d1385be8357fdca61b978facf" + [[package]] name = "blake2-rfc" version = "0.2.18" @@ -1276,6 +1281,7 @@ version = "0.1.0" dependencies = [ "hex-literal 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-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1401,6 +1407,7 @@ dependencies = [ "parity-codec 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.85 (registry+https://github.com/rust-lang/crates.io-index)", + "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", "srml-consensus 0.1.0", @@ -1429,6 +1436,7 @@ dependencies = [ name = "srml-support" version = "0.1.0" dependencies = [ + "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1499,7 +1507,6 @@ dependencies = [ "serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", - "srml-consensus 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "substrate-inherents 0.1.0", @@ -2079,6 +2086,7 @@ dependencies = [ "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" +"checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" "checksum block-buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1339a1042f5d9f295737ad4d9a6ab6bf81c84a933dba110b9200cd6d1448b814" "checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d" diff --git a/node/executor/src/lib.rs b/node/executor/src/lib.rs index 5b100c3a93..8b67e98834 100644 --- a/node/executor/src/lib.rs +++ b/node/executor/src/lib.rs @@ -318,9 +318,9 @@ mod tests { sudo: Some(Default::default()), grandpa: Some(GrandpaConfig { authorities: vec![ // set these so no GRANDPA events fire when session changes - (keyring::ed25519::Keyring::Alice.to_raw_public().into(), 1), - (keyring::ed25519::Keyring::Bob.to_raw_public().into(), 1), (keyring::ed25519::Keyring::Charlie.to_raw_public().into(), 1), + (keyring::ed25519::Keyring::Bob.to_raw_public().into(), 1), + (keyring::ed25519::Keyring::Alice.to_raw_public().into(), 1), ], }), fees: Some(FeesConfig { @@ -449,9 +449,9 @@ mod tests { let mut digest = generic::Digest::::default(); digest.push(Log::from(::grandpa::RawLog::AuthoritiesChangeSignal(0, vec![ - (Keyring::One.to_raw_public().into(), 1), - (Keyring::Two.to_raw_public().into(), 1), - ([3u8; 32].into(), 1), + (Keyring::Charlie.to_raw_public().into(), 1), + (Keyring::Alice.to_raw_public().into(), 1), + (Keyring::Bob.to_raw_public().into(), 1), ]))); assert_eq!(Header::decode(&mut &block2.0[..]).unwrap().digest, digest); @@ -592,9 +592,9 @@ mod tests { EventRecord { phase: Phase::Finalization, event: Event::grandpa(::grandpa::RawEvent::NewAuthorities(vec![ - (Keyring::One.to_raw_public().into(), 1), - (Keyring::Two.to_raw_public().into(), 1), - ([3u8; 32].into(), 1), + (Keyring::Charlie.to_raw_public().into(), 1), + (Keyring::Alice.to_raw_public().into(), 1), + (Keyring::Bob.to_raw_public().into(), 1), ])), }, EventRecord { diff --git a/node/primitives/Cargo.toml b/node/primitives/Cargo.toml index bdb1fd64cd..724eb7d0ab 100644 --- a/node/primitives/Cargo.toml +++ b/node/primitives/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } @@ -26,5 +26,5 @@ std = [ "rstd/std", "runtime_primitives/std", "serde_derive", - "serde/std", + "serde", ] diff --git a/node/runtime/Cargo.toml b/node/runtime/Cargo.toml index d009a544d5..0c695f5ef1 100644 --- a/node/runtime/Cargo.toml +++ b/node/runtime/Cargo.toml @@ -65,7 +65,7 @@ std = [ "fees/std", "version/std", "node-primitives/std", - "serde/std", + "serde", "safe-mix/std", "client/std", "consensus_aura/std", diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index d9089f6b0a..16ace6f280 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -60,8 +60,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 33, - impl_version: 33, + spec_version: 34, + impl_version: 34, apis: RUNTIME_API_VERSIONS, }; @@ -101,9 +101,8 @@ impl indices::Trait for Runtime { impl balances::Trait for Runtime { type Balance = Balance; - type OnFreeBalanceZero = (((Staking, Contract), Democracy), Session); + type OnFreeBalanceZero = ((Staking, Contract), Session); type OnNewAccount = Indices; - type EnsureAccountLiquid = (Staking, Democracy); type Event = Event; } @@ -116,7 +115,7 @@ impl consensus::Trait for Runtime { type Log = Log; type SessionKey = SessionKey; - // the aura module handles offline-reports internally + // The Aura module handles offline-reports internally // rather than using an explicit report system. type InherentOfflineReport = (); } diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 5bb473efb1..0d6c80edea 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -44,6 +44,11 @@ name = "bitflags" version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "bitmask" +version = "0.5.0" +source = "git+https://github.com/paritytech/bitmask#c2d8d196e30b018d1385be8357fdca61b978facf" + [[package]] name = "blake2-rfc" version = "0.2.18" @@ -1300,7 +1305,7 @@ version = "0.1.0" dependencies = [ "hex-literal 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)", - "serde 1.0.81 (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", "srml-session 0.1.0", @@ -1513,6 +1518,7 @@ dependencies = [ "parity-codec 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.81 (registry+https://github.com/rust-lang/crates.io-index)", + "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", "srml-consensus 0.1.0", @@ -1541,6 +1547,7 @@ dependencies = [ name = "srml-support" version = "0.1.0" dependencies = [ + "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1611,7 +1618,6 @@ dependencies = [ "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", - "srml-consensus 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "substrate-inherents 0.1.0", @@ -2224,6 +2230,7 @@ dependencies = [ "checksum backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "c66d56ac8dabd07f6aacdaf633f4b8262f5b3601a810a0dcddffd5c22c69daa0" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" +"checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" "checksum block-buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1339a1042f5d9f295737ad4d9a6ab6bf81c84a933dba110b9200cd6d1448b814" "checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 7c6e43a51622bdd2c89c0dc1f1c19f0efae79cd4..da9604c4eba33a1705709d8d679edef9e30230ba 100644 GIT binary patch delta 307618 zcmeEv33yaR*7mKseS1lFCml#aHj=uXKoTJABy4JKlug8a6c;3@xCGo7+=XTn7(qp& z6z)+_P(*{EaW}Y(yW)(F%(&sWF^&t)sKYoa|9h(L?d~kNe7}DG_dm}^9=ht*t>x6I zb55N)b*k=~Cx$(?x@JYrC@Vq#j0RKv`t$=&Bv_(>AsI2FLFYk=pI)nXK?GME)F)vk z=FY_nJkFgvrJxeX!xPNh+`bLUdi^ve=>%@gXGel4U@I;WcOfV@V7 zj}nar15KJpVL3Xa7pf8hd~Q>O<;$C2kL2bW0dxB4=R~HTH+$;rbI&+$>Y%~H4c_z} ztIjj&MJByCe&)0p(+5u-Jgf$<1Ur@mo93{57HV3_Dx3D>1x*8ZZqpQA(>+GHPnbD< z+N`N(&YFJGsplE~re}H2rgE0kw3hddM(O>TvravI_S93RH)WXpnAuco4oj>yZ#Fr% zjHo}8@hrdJ=cj)b$CE$m=Nu0)3kj6UGP8Z%cz1g5&on##%klF})8agrGMlQ9&mZNe zgmYhB56kkSQa?BS`P?d?Jbr(|LaP493#}r=kRyU0ix=aeM^Ae8Q|^e)RpKwDOqS2* z7eSlStW4D5Gkv}|wGi(S_v0D==oPv~Stvz?>9I_Dm+*7+(#_)rsM{B{%(AjFKljlO z(&+*J>7S}hwP2x>K0m{MuAh^?C_%Lw9w@4PdaIhiPY+cK_xIv{ANL_E#sHm;Vjzr6 zpJn)b`5E}}8TeOJ)D*EwGgd8l(g-IEXVrqHVb*VQ*YnuEXUv*Db=ujpPdQ`Osk2X= z{#)bDrkkwX!VNrEy*c%Cq)wZ8>TjomjLtY=hOtq;GAP=e8~4bzA<+_U+%Ml5679*2 z2jq7{qH%6KD32LR=?}{bhDHmy@rb;7XtbIek2Y=em$S#@M?)!BThljwn{8<-4&)~u z=b`TyGaMFP#>%cTpJ#t&2TVHfpo0%N^svK!bHtI8k2?C8W2YQ9^-b2oZ{=5-&#^by zo#qB}Ex(Q5Wv(%I^L~Q{4?S_8=_iey$F619uvKgxmuw}QXI{-NHUGoD=1=qad^h`^ zeaF6K3(br9OZ-*#C$^3MneXENPVj&6kJ;bZ-`E%YAABeO3;&4iU>~wK__O>u{tSPU zf5*S)-}1Nkm;5XKPyROlH~WU|V(;*Ud=X#3xASG@a`O`NUA~R2=4<#Z{IC24{vv;# zzsH-{RqRUkK7We;oKGi_8V)eDhZGHgl~RT4&yFW^DU@z|EV61#h~4 z&`oAIYzRXz!DG#4IDmNUMl&2WoM+|Zh7*s44I`XkIL-ff!iZHF;g_1ME$@cRI>8-Z zqn*+8`IfuI2j!(zne|BaKPGQEQ{{ z5zu-}!XKK<*L2&HgYyA9t4|yX$bA6ZbkWS~nqJAvk&pg?MVMcHu@}o7O?u{CDvop{=fI}%&+fZW)PE^nJ6=ywx(mBDPVsC0%m|PUS$MoshHEY zsrcC*Y}172OulL63rDm4MIf_{UE{mPXDnjn*Z6K{-rqWQD_hHMW+I&JC3)d(%=Dt& z@>j7#3e{6nx0fE;?;0PCXC>$<)=TheqtapHq8pe%+f}?@E%yN+MntFKLQcR}#f@4d z0Xn0x+{kLW;_cF=HCwYo(iEm(6QZk{Hom@Zzq`2bo$Q>_=xqihMfU;V!%@+4>ldMwK!7) z5_U4}K;&v40aVxmeiN+G;bWs8F~P<}SGv$ig06|Z+Jm>Su0hAkqNb*|dp6B^IXkq< zEq0ApEaM&)cJ@L;SEzPRGGh-{(A($3J`& zh9F#o@OesDh{)pDE$&u^Bp4prpUL5{E;I6L1Z37Oe(TX)3w}4Ua$_U;l(U5=|ZIXiC-rqUa!r7XLg+6n6Fj6#qnz zMk4$N!oN`$zd+;-itI$>!1pQkIbw?m51%3OHKlxtNE<~yLF8MC{2h^hQsiSqwo~M9 zh%BX2I}lkyk&mdyO};m>L-Slj%_l?^T->3P7wb-5ttHMi$UooBzku=&*hBu6K`=0a-CgSud;~S=?jLQJRpQ(~Rp|)mf=QTtIBYYL%U+B#r5&4E9e?Vj{WqAdW zg%sHeFL?FF@$So9k9+4|4@*E;f6nPer z+bQx4A{`{jJXZuf>`Icq6Y?@Vq4f!Gy5Y4$LXQAh-BA8%g>V${X2C}k!as2l{wX2+ zHy?LE_{SRI^H9h21jJKjxE`}D0bW@mFM9)4Ud^~~3I%?)|MAlGb3nF(=qz#ev6nPAhmnrk3 zh&)S?M-W*~uO3F^T8cb`$cyyqK|~f%$^!|+-l3%X5s{SCipXb_avvhMQOdoDd`u~u z5&4uNn-Ez^ukJzQMv81iB&J@tp?$b?jXEMgOLAnhe3E*55n}OLGR|4+@@xWvC%ays$Zp|-jw@V(~0jM z&==)_YW#*ALUrj`vuD{Mry8xV^GJWxe?RH}iMoFqFmg3v3`e*c;ZTIP zARLA8W`x5KViD;qq7pYDvWg;DPCEafqBkHipHi+zWG7M*k?RnJ8s3AG!+W_J-Zpo5x6tsGKG zMV27)1Vt7jvWp@YBl09g79sK$MHV9Rdx|VTw1=;zf{U*(g2_#b2O$cJr|FG)2DWO;>z0AhgNt!)EkhO6(PS^DVOcfg=Aw zmbXg_oMgA>t8U-p7TKiu_qGn*zD;-A=~Vl^6D?Z35!FgQDBr!FiXf^$3>QSS|(ytzw;lDEb*8x!S0*!$2|U3yTt;!*y{i1UeL_ zwS}7dIXKN!HL545>=cw$jA@s$u9el}c-WI;4ujJV=|^*EL-M`AgULt91IuMZBEPS*e`#h*<)| zQ)+Jbp9Rf-xf}oe1%GL>_@(RnRR;F|3m|`$p8qP9{+Frtmm3FdgR4uInH77qy^?f? z%~qLU9Sd{LNK7;-S@O$4rRSU>=}_&-A`Cdfk@;%wOPZ2@X+VCJ!T+U!{4W#JuhP3; zrP5y-WxooLze=V5<-z?K1xw5Nfu*5o_q7A0q=&x0{%xu7#k^(9rBPUD<~GE z-;Rye!rlO#`A)J2VFR!+4!wVa9B8paqr<}@ya5)UO43Z*6&kJ!VV5aY=q^<#G{P-} zeY69sOK7f>d9ua&!XE08~`l{~caVY^mF>Oyy?x6+~ujdBa+qtFNK3XRf*uy>RK zZKEzU+AU&#eOr(oKwVcN%qsThUcZC7X?U1)Q9p?j%Nt(+KSrJ*`qGP1p0DcXd>aNe6<>OS3* zy#we;547`6yAqBrabJ3gRyi+#o|Gf=+wC&f>&&g`neW#<+1Kq!6$-tj3I$yf+gCQ2 z?4;;^ZiYU{@MgOV`^hhnL0%SO!IE6OeFFt2Lne^$lBglLpXMP+t`<@#P@Ua68!rL01fdR>F!z8xc%`T*-#7uGUl_*1(K zV`Z_04CCAkJ(1zHb{WRW7G#hu5n#I)-oD!I?RdGLAH^rQ#Y>RkkL@x{klQH3{%(c> zWcWk74ExKO0n|S;6ZQAT+gIAXowzc{Cdz$$tY~Ex3m#mG3|rOmn9(BCN3;R6J~?nv`ZGjX`!&x076ke$_pku`U*!BRa#9{FU256?OF7!T z=YJYB?<^gpe#E^*oMefzc&ztqV7a5G*j?Hf;xzeg6N{icZR zzacg8-`iZL)?lyyZ|`$D5DAwb|6c*opqy&0pC@P_pxTie6iXjD<#rTU*pUs(k&l>z zdV!`2;IB&CHvJssaqAxgUr~2&Lq`X;=JbM}Xv|MeTZptXO#KWUCwEZP*^PhZS!1F; zc;yz5=ISb_3G9%N#38p+lCV4Odz`$QXTeHw7&H^y#}Pgk;vlGP@fzaOa%{$ghv z;aFcIJm1HBUme3fTZfEgP%~)HGHxqn72VWHzwYjKLCZBq`*&Jw!9RJF%2uUa(!GscO)IsVnp~I{uNyfoU~RIo`3H z(J^73uU$&}S-lnAigUhor|jLA{fWZw`?3QIh$cfK;Lh?PMWZ2T1C?@mKXyHD`=^{; z&3gN{{u564FUSGaY+v5&rnTs_=4v*Iue(mZRn7Xb7g{s=vt#d*PYeUNEpqoT-Y;HF z{?qg)tV%B87)jci=FYn7K(<7KhMZKxdzJL37w|M!86wD#H~?(KmD6@?fLsAjX=ca= zK!&za=m0xo$>kmI;VcR!cQ!8BVmL!$1Bs$#?^^yD8zFOt^Jc(t-*6shO#XQ|zlix- zj~K!GF;um1B>x?P=qP?Pf>TEElM!qk#U};SVT7AaSv;Co<(f6TpCa%jLww_zZy2 zdKj70h^!yVCzNct zSG8)otv+zCYSpAxH{M$(@4CZx@b0EoX>+7o*mnQF(+v9kOk_)_jJXkm+SC zh9aOna++pz%ES~s+{`)24&{jguLAj89WVL`aPIpHz$xcDJdc@jmBT9rffmTAI$Qfz z=jf+Ax9=oFXQM~RawYBjIMULoB37ADjNh@cq)5d; z=9tByJS5{mFW%bsH~d(J*=p$#I7!zci;v_3F&vYQ;_L7s1 z;xm!w!K3)oS$8YaXaUm&F$K2B6-V>u*xs$j9K&-t@|-n=&(9!g!hlYQ24u_aR*5V; zj*q}QHkcR6(~skad-1o91G%{AeWvpL5IfB=$O< ze}js|3H+c=@8+Js|H^J?opvHW-()wozHu_|VcGzS*o!n+(cKBE^Lg&HiMDcL74q$w z++lT6oCXZvBj=okLyz~!>8JBM1rQT~Y{0-)s^dZ?baUq9c&ay(gU;Y1j-r~ec2$cE zW?K<(__>U!lU&A(xB2OG}dt@A87YRTy476h`Bo1pjgxjn1yt$KAoLRC(?js|y zu1gg|RG~hCln|+?`+dx$I#JiD5;k%xRxJ|a@42dMi8Vb zriUEK+Y~maq@tilFm%BxqnYV(eTp8PW}Sx)RMKF-m`v1UrV?LECTjGn#5ea>sgJQn zcv6zSA9VRD=Twd;ACA?@h7WjUqJ>iz6sUKi zLwfWHC=kK@R1o1hgp^5Dq;o*gQLjLVSs1rxjF~74UsAZ8szz$DxT9riIf7n<0gwW9 z7C!z2hb9>y$<~R(yhJ?^D&t-{t+nz)ZZfv7tp14C5NAP$V$NtSEsfZIyiNp3O(KV5 z5_g#Bf>lt&XjlxjQYM1Z!|ZbDX0B`kYTPtw#iPi9{?jQ@g$qq7bSBzalS&qc>#9Km zRHNpFP;#s(A>ZX&RZANtmB5?D4Ccphmwh@;sSGpC;GwJ9A^iDB3x?{ zgVMl($M~xhH!-IWw*pIG{2ET;Kyfk#ABHqdzt0eL5{5~QBd&F4XN(Q>@G)}8-}&)- zlUxH$XQodAl!i$lGkp@EG)w}SX_Ekn?`dDNoI*urC_u9?mGNXF-m_15QPk^FkN}fa zpYVtJVpcThaFDWefeV$`HEdXnAWTV=ICvRSaLcSud2ZU2tAs~^+a&@U&8f61N^=?8 zn`uMNATKpd^o;P*(n`ZthvG{h47At|;ba%3=&_WmKjlLNM1{xg1ae(+v`8LN-@g8o zHzqKFV8)M%oX&ZP(Sga>SPWf6bi*;{nHaq_G?I}Tu0}Lltuoa!@J1$Ex6C+Xf&mSO zQ<7ycZK*QQ2}xknG=}vg3RQZA#>>w>w?70$PS=wL0iQNw=su2=WjpzJHbKtZ$p`re0{PK7{8FglXP?Wf*+#kg zTz+h9qqio7e0l~eR+)7k*8VN>sPp*Q2wpyq_snlGZJgPo`3FnD?O1UeG$A3c?|gm; zG97U~mNgq?^#y#aeDQp4t4gzI8SGX1{rSAV&T)F@m+LR!N1zsdA+JX;=0biPf;AWN zy%D^3p#tNmi+Cx4(F3?8Fain;(*w#WjN#Jf4xY-nT&J2O=S$R5X0U=I=5j)>i3 z#=DczHRLpq;*d#Z_e^NAu;oKBM-Hm1yOY?Tbi*(dJ1m;IAxC(O8RcO)WoxJ~(LF3; zWJies3>9kmV&|Y9rRmwZTBw8K1GL=oVQk!`Rt_x#f-oIGLZAR%t5Y{sW~H5rYfeB> zN~gwMe+QDiv%xxl62&QWiqdxI)Tm65XH&K)OW{(K zD_n{~g-g*(p;DA7R0^R`*%PRQ{hCnO6Z=JB(Nh4`J<(jIuxB@lc%$8$);5utLN0fa zi_k@GMH0D*N*a_9ZDh3TwV8KAs06__Wg)S2{(tcN9|FKb!ja`V*!d%f9 zFM>pJf_5CaAu5D_j=XS zYf`C-ROzIsnv|Dj*cBM)N2P059Gv2omHrGCO4D{Ju#Ae{^_@pRz-hF@&A^M0+ zSPT-HjDRb}{KJX=ya#Ya@+p%v6A)=gg)xLnnSMJtYJl!k!^hH&Cjk&Eh=7!-1vJ!G zWX`Zdyv`FiA!jnNMK)TtGbbagq+FS*DO83to*F<@bSy6BF>x!4K2`>;2^mA!Y9nL* zQ>|EV6FDRPm>17<`qO1kW1=B>-5*1HCET&eY&SM2)4%h;5CCeup$CS>#ltx4``E|z zx(IEv51yPp)QPB~B^a$QiuV(_hhveFBm5VM(1wfR6(T2bI7l)_lh!-WDf+8cq@{WS zThmya%S50A@EF92tuPP)C!wcvf**`)lGO9;Ae06L&ZLn`PXlq$-jA0i%qjzS3xLMd zN+6)GVv6@w%SsZ99$QvJD1#A!N_QCV+G~*C}g-oR(D861BA-L4x?MM zblpl7OsMiyo04UBqF)LEt=_7%&0d-YhSCJo%B#Tcq^Yf-5cpkAVRa2BF@TYaKoea> zQ3#RYwfuTSmGDT}K$IwfdrQ!nrvy*3OZUW$s7Xxa zd@-4*X;CGE@3FAtk2l9~j+AV(*Zs!lZ@;H2?t*D2}7q zN?n{w5^ilJ)ep#O|<8|p`CbdSd#aKYTg?rhHBnJK)g3p(;tmy z*St5><-Hp4UMhUcglSDOY_|@q4|zQqTstRQPoIC3Q8#Z zDbYEQ`O`>fXa^F~6oft`7h%|GmoGUAsJ5g-F4B8IgS5s9B5BYsU0ks#Fnh>SpvpCTeivjq=VXddp@6%P}?Xffzb znMZr`qmqUl=1fZKFlV~D946!xFRL`P+=1uirGEfehlD|mPF6ES~UE*>E&kXu5!e4>{RH9~ynhG-c4CG(Bgje9EAcnkH46GUudbRF$U8 zIh2-G7XD>Z(8?RhX+$kzgkO)fRcnq{okMRz(2pRkN#=zGz^mc7NI`cW*0l_^ALd+j zH@4GoSLm)R7NN!SPD37iBQKNdTC8q8H?3^vo3nnU(jwI+`0ADN^%m>Egq{uKmY$4E z3MOOtheEx=s~DDfw8ah5vD`@&SL{@olWWa^o;ss*bk^j}`dBSL78)PbP{Su9#5n3| z`wJ6}QCNeYL6LIozmwLN{xY8y=y-?IT1W;-rWM4(TfNJ%NlOml6-Ig{0x0oucvJvy z2v8VpLa)XP?5#Ms@dEqv+4ore4pE#y-BWNV2P|Za#Bo2<0a#z)Xbxo_5YNDcscy9} z1W>iKHHzK;WYrni6bPf*OYgC&_HSL;X4rnZKt+i`91CQ2Mk=!dy41CyrkHZ*!hI}Q z5TiXqWRRNeZTqj>Wc6gP%92f%ee~f18&uW$_z${0fE_-H%~bvhYG`2e38%lEIf@Mg zR=`ZA(+_*GjeyzBn4WFmDArG2v&rgrEOz5M*3oYiHYw}$ANhg|6#hwAFp|#+?*0S@ z$YH{Xs-?+m9#N5&TxD$a9ua?LrL5hYqOm{+8XE?<+S6E|BaLauJJJ@2vJ-8&b*TY` zK?as+a&f@g;(%xZrWeww0~k@b!Vw+eLFJZONJ3OVrG~`tt|SG~ zN9A7kSrv(w4evM^(UUQ06eH$*L8U5of+37r@*x%CilXpGB7;6fiJa6fm`&!AB<&(q zQ&MI+nN0>IfmARGfWx*>z&9oVYNyLnP!!@D{DUW$Fu^I*$sEi+glY9aQ;~Y0>wSkq zmIP|xi;KH6Ye18@&aH-zMgW@(ZcSxlM;hau99=P8EgS8(OU6p8<4vEw-p6SeN zfN11PM+ACE>wYVTRm#Hqt@5zzB!M1=<%IjK(yTtoK_S~+xjgZGTrq9Qf4|R88~o2@ z_2eiUb&LVV7t88L8SueHN3m42V7`R+EYj~=Sch~xqSN;*l&d~q$KfL2e|^CEWVSCZ z2Ykr#%D>iCBKrX2OI0QCC@{#bO#x4qJoQ6XH=%uL)p(X}JdD-?itS&%xSp_z+Q9ZY z9ztDMkLl_nsLn6{@gZ|M0^@wd^77tJEB?AyJRnc|sB`{@KVkz|P=4|e8`r6-9jNN- ziwQyv$!A_wA$i&kHg04WJ;~5L$wdJYU;~VKi&N!ydF3i*to7R8P@F=pgdu+(r8*-Py6c%lgqvG^WcT+)0iv-CL?k;s_UvdUw&4Mwf}I(Wx??@E$>D4|&zaWVcVc2FIn-au=K`<8@s|p<}C8 zK3g{Jp?pB2qc_T%YIOdZ>`tZej*f?%ZZhZ7uDg@1yHknokTj|`zFzDyvYstJOY6>u z9ys0QnzZWDd7f;87+u&JUAy3SY2EpkSAL!kF83go$e3tfxJcy4p`WF&1FbkILZ~_* zyBg4GGvl%)ieAxVm2t6-N1R-F?;gsNwvO@xP+oWEy0r35Uimy(^Lf|pyX6NZ%dbx> zzuGI`L$-d7JN-w<%XYHS2%g``uErMAv@cjCo-X+U*YM-2g2RLPa(g!(Zms(V3v--- zKHy7M$O7`@FWDW1Ba|H*S8b7*71J7-ZSAO&0U!ImU$HWXlY_oub*w?I_=@eara>1A z$xFXxy&*q0f6ZpI<6Eo#g^v&T7rjPDSme{Y*yC(k>m~nYyG&&Hit`G2$9Jqde2X6a zjtxT6&hOY^{QiY<%=hd<=5O8dJsaZFIS0x)XYlQ8SnF|T@_wAdZ*uu8z88A%+$?@D zyQj72xBM)|>RT_J&G%*S-hAb3emOfqPCJL!)+oQ+Hs<==(snJZJzQ;|yMDRkC*IL7 zSH5%(&*u{j8GAAKS2Xm`7lWtD@1GC8i}>~zf`jDax0+M28+y(A=5hpg-)4?M@YtV& zxiVv|8A1HA56qbe{_}zPRcuKx;KN2;DB;7WQ`lT4FMQA}l}|ks>XzjisiBQ4BeneS zq0pp+Qd{U2d0O9a3I;+S=nt@QR)!$}uJAY%1Jy$R=^Pz3K&lF>i()}; z)j?=x`6`AZKd2c>3f*LY&=)_-+E8CP7e4QL9qM0;b1_gxuoXnw65Yp-`C5H(Kz(As zAlpe$81+FIG2z_~(^3HXlof``3%fd$E@Tg46AR}p3LnKbAezso4#c688Fr8wErtq( zARh`1-E41@lZ+qbBlr)_vaz(VGtD~mKp_L@!si!IL}_>;2-PzS`w z2wzMfJt)fwkP8ao2-|eLo^0NriY{t`lTEvtXpc13uBI$ilh!MNeXN*OwcWa`4))A; z)wzJd=Gg^gbT9%dGSbk3slLH_0CyiOq}jxHmRE{aatw(!cEziWf!Gb@SZI-pSzj8_ zN@Jk=wSY>aZ;gSI3WVB9Xn(v;Fp;UgLlMCSB7DKL)d7Q@s|MRIa@WT5$mrmwyrh){ z;QNpV!5Gjd7xMJzLzl-3IxvOhX%4AbOk|VEg^6xNw6qH=)R`zo>(K5xtsJh*l}2I+ z&DG4Y>4^`d2Y>xM{EJ-#TEXRka4Up#!=_JE;GiAA#D^nDA4I=tP45?(8y2Y#2aslq z7qmFwq-oRfECE>$sN3t3$|RDf%_HZI>FAgn(~h}2=93F12$>vn3y5-l)G;^UI_AnU zlkXpz{}Pn9FU{CMd5+0fv(2*5#}~7hyxE7n`_1xgA6&BUmJ=;_0>tDZ3m-*+BsH=OAZY9-Pk4 z%jAb5`}|y9EI-ObLr_?<_z=k7v01#%%XM>>%C#Yn7szM~ZXvPO(J@}n*vT@H%~vGS z!TP1*9)c86@eWvnl}cNERW4T5dU-dvlK|X1x~F&lu$*M~cNthWsqV`hoI7*7-#^#u z{#f+}*q1HYT)8Vc@~-O3b`O)TSm*%k8KGTy%@op6BlVWc6zE&>vDmS!7# zDFdYUco|4+hWxCIkH~C>AaHu%Eqn!WaAsIJ@1K5f=CpENiGwpM%XvjsYrCvM?o-Zl zb2%35YEvzJ29|EI(q4QV+ayo!#RnEmh`>mxT-$LoDwV)5AlpU&-O~#Kp+$y!^92+3 zghmfR?I_VRhXJ)|QEl>+f9ehHYmwO%_~g@OSy9C&uxxo&6}R^|ROxN+RH8v%SjpG7 zFI}CUYfo`q+6X@=kE`Y-d2~8RF!+Gvqt|4!z?2cYTwYntXR*H0>dyzUhPAc*ImumHsyf>_zSFA77gU%Lm%IXA=?Rpk~0VL{_+<5pqsA@2qE<5G9*^bsC$&laNW%kK*9iqLggYPzbr)NF>ZnF+qSKn>6v5~TF zqd5+``xo~@OMkw_oZUXDb?rtIGt8LQkMA+>Wo)c$-fRwGw!lG2QhYP>-@>V(Tp|9E%VHR)@?@x11z#_iJpu>{FWTx_xF^+ zV}dgwsLnYiIDn04z3rIbaw54QQ-XK+cYaQp<$F_tyV%CoH;)U}(W{;f!O{G(4B2pc zaD;4l-?U`I)}X)j=9a*7zSa%ntl4IdFE=Dx(JKQe+SqfG!zWtB6ADQaqKgn5^4CHP zi}IXCI;cbs#Kp8vfjPI9n7|WdbLNBdqNx$BwjyBN%z4MThQQI?^iBPlw4dldU==EuL(R4`0Wf zmU}c*a?5d6Z@GK2bxhWiuWQla=!gb%`(YNW&qrC0@uG!3#B)`uxvQSx<2bpuT>q&$NA5`GJ*Vr?xISh3a)X@ZwBsgBM?M8sZ~V$660P-3oB`L7sl5^$ZxL z_AKifmbK;aVAm9wo)UR?@fS+h09a^#CEtsq`)Jj$w&S!*=n z-Un|w%wN@7daiY<=@q=;0&5f8c+|ZQ3{ry}J&ZU?6Lq5tQw@46^O4~ip zij?TV8r}}$ng&(wKJ%?DsOXdVsP9y{aRGuxdCo!=OgjctJ#7(S-nQ6aU6!5D)HOg267MUv90-TJf<9 zvySL$4_SfkDv?qp_qqa&Z-2pUTt_I^l;E99by0cNLEwuCS6UPOI*DGFuRPewldoQB zm7sMcVoIBo*twy}x|W4MBIGK@K2`Je!7DXiTXOf+RyH^!d!_Ycg=Pf0{42!>R1#A> z1BTq8S0hXVjX|YAjmY{{fP2wuw|6?Cd$;>VaQrFPSZ@Z<$D0KZ${i#Zophb_rYKmS^<@jKHRySLY$afimP2xe-OF2?S(`P&aI3`@FdLD z$fZ(h_?K8*)1-FXX7az(7umERiU)MBhVNACaAzku8?;fD?dY`6X@M$IPD<)2*#ARt zB5WE68nC}@*+Fc1A`i|isgu71i@fv;9#8DK`Cqbi!VEk{9HszCVS>vSuMUOuVF6Co zGC~1PQ^7{(kO|GpiM5JB`@`z+p6aU37dwr**kaNP=J@OkG(^_Fi11Y#o8kWt@3RYKK3KWcc1gB*_ePy4cImt?QRHPK-eAOGYE4KVub8mgl!1(5I&5M z7Han+%twO(r_!dKcGWn-5GD>E4H0eW7r>gwz5PNT&OI3LVZ|uYX#_Z>W4UKGRvv)xX7o#Pm>mPI9}$c%Y6| zHWBaHoCGr~EOXwoZ&EaX!=rdUg|0a2MULQpI!xeY;FF?656NdZEco;h0iB=hrgY4~ z%O8e!I8m_o9KsPq`XFFXlsVCfFc5ONZ%9I&ga-APHa$L7Y?z+HXd@l;S1yQ;GxuFaMY*hD9+P&5m?a z{V7APvdqi^pT!Ca3W8=~z~FvlwZ}yBaU0ZLut?f+{ql^y`F?vGn2X{30KM!XY&h9N z4EW`{U&BE4&e)8~>_|Skj+c2(u{~au9DSK8c_=u9kqa_j=AvXyvZP(Z9k^<7_|fNu z+ksEO=L(^q&7+elDBB%neY3q*i)F*98IX|9nYw};wC-0oUg0bZ9nfTS1cvK^aaB=H z1P5wRQ8pkvj39K1XExf0I}!UgPS8FAs5}y^I~m`TJjw~#N9()H>|>lW?PG=Co&q;U z7RgXG#E|besv!Z08tthl(tskBjtc)lCJ&K4@Cqliq>7#JOG2kw8 zG%x_Ik2C;^>I-!+xxz%uo!Pp3QFISA(1&;6^=qRdYWQlDi`gr25tuC*8ehen+4ePf zZ(qwGm2n7NjdKD`bxpMn9k2~3S8$8_}usgKq8G|4S)m=Oms#X(i&!V5ys6NFu61Q z1z@y~Y^d)yH{M$r?E|7W?a;tzAE07{8+cgZ3o8TSU?eV%y z+wIi?k2x2?8D6dMm~&pED5iN3XlfKab?nSWQKDlr8%3#(ozf_Tj-A*jK&4co0Y{Q_ z>{uL8)v;q5MY-EY<{X7tasX=}e*?ID;mg;674jc0Ex3{cJ3qh-W(fRZ0*aj`-~EQ? z;9GmJcykC=_(TSs*g43Jq7FT+#9Y4{H8UuY3^tCChymd!-&^c9(IsX; zYrmNwoD4e61`iu`_=KtLE$48eC<}%-7qoaZf%XFE0K^JyM9?WZJCjBdL0VNfwbFG} z*vinoj7PniAkt71W-=%Z(b(xY%!L_rKb&qLV6oE_-RqagrNGT_6BF$uL;)fZ{oVg!+J0NC5PNUZ4-d@e09co72nzHSC9U ztDmUcB--m%&O?empl?Az0ZM2GNo|QV)EYRj=2K@}eNL8%mp%7}0QS^X~H`QepJ45voT?v95;)x(SN}XxuP~2wO45i>G;QAjz8g-B45HVoB z;SQLf$i}K&nMNpH4aBCQ)Fn2cmCmws#ww;bh1G#6tR}EcrqMbSXjOEVYN~%)Q_-K- zlt+YEW~2tNQn%DEttCt!s#gQjni|--DPkgG2_l)U`-Ul9^-ZKVSdPj;F(S^2FvmfO zP^fea`a=qsl0I6dXVN5AVJx;G^VFtrro!SFI(UgwVlBCEO=57#Ktr(&0xVEm5PVLz;1s zGz3X1g`5PVIB@~)fJn%k5eMT=jE0;y7Nc{_>1~&Z0RrmZ!GiAQ#DNUL^TE!1bP%rv zUiYKTStG9U;5Ice!prlpuA&rqa3cv1q7H%$o3+@Cj*1auqot99mFyBj#Avt};+j*M zk!9xMXv z#ZHMpqzo{0-6&eFHufONu+~m7Ld;f@EC-BW$=_X?VRr+L3^5M-4|v1HK2Wmc!q@Au{tU;iHclynJRJ!6?x(^e7&|Lau8{CQ^apl zMW%Q~CZmW}f&jHR8rT8J96=eyF$%LxOr|H&U70vaQNK9WrG8bb%1n??N#&d(4nt1$ z`p5(oSMPD;T2*6DK~;y3i(-~E^{LeQr1nDfq%`q!a{IyMb*}I^<;R6jFny4NHqM|y z`b1LV4r|C$Q!T}@@uZ|51W=Oa`|%75;?bJcyH820(jXGl-j7eJM~(Ah&g=B>JLYVqOqVdHi83uCjd(e8Rxf!xVc3^4=Rwuwasg~hcj9uO;`r(H|qhtsIOIMgPC;zHu0BN7=zDcCk*P~kP@QmR(p#Z@W~ z<SmI!w4Tx3ATmiQPQO31QT#dzJabz4mxN@_dcHUrB~OQB#F`_Yl4*hQfUh7y@f-+UG-WtnFH!B2 z&}HI`vG{T>0@d6Y#Gz{Frpv{d+PP*RFmMX#=B3p}M4W{li&BF7OgCoOSr`unDay!0 zUtl!oVkZQUZQ@Lzv!Ad?T0kIUiETuBV!lWNf{Wh*)nfLo6v2vtiDjy#WmI&z z+Y-9Q#HFgrOOxqQPP)vE1$o;qCD)lqSH$ zBGvjLYJC=ARiyf(8$k;$Rudjt_luNLhoEwY1R-Uf?oLQ`XTGX%K2@mFqsZ%Fs6=C^ z#H%q?VF^`uF^Y!pi|A}M6uQR6s>a0-f;v5l%v~ZVg&*Azk+zC;z)$y|fS*z@ITIHU zKo=l#A>c{S2>~W9qVw(-xoJ4>u6jL}$YQRW810$rvgQl0M+ef}FH%hN7846p?-o#} z7ZM($#i_zY8ec`aa3V$6`$UR#>2s-FR%ICC{6nKfVQ_}>d{l%}W8hqcICG@o(oYIK zIhuUV85dQtbo87D6>JaaNu={@u1h~F6!h0H29k7(%5ozL|L_%xJ(tk zj0#__3PXa<(LLw|AVBjen7fOFk}z||fin?H2l~v3I2iQfG!Mg)LOH51AVRN%G-|>k z1tWu5k426Ri_>-Ey{U0pvU!B7T1*7R>0LBFbD}nTbdqrG8IG)4UUj(|F$naKLjQ$C z%2mUR=qxR}VB+!$sA0kqFQ+3Jjl!xfnM*+#B=n?L+r3@2L+IiYmr4|l_e>?3Nh(n> zC;?fXOcx*%oWANptheuU7Iiuu7|fh0A*}j2nk-O<5|IMo?Y%Edi5DIt$Q)3~u#OQ; z(4b)ZYl4{*d)`46G2+)T6$!?#ho%uiiQP~^X!Y}~0X654j`d)<)4t+^Iwl<0F+r)< z*O6{_JxkEO04g8{TUY^o5q#mTeSH(~%K6^Hw(Ymmw}B8 zDteo8IZ?ZBsFfVAb+zOS3uBHsp6pq)jYQ32&$Wu~)bNoJ?0#yo(zARaGcu)i>##(H zWWpF^%PHCBk%?LM4fqZOlAy@Ku^To@I)vgLgW^u=CPqsD1Z+q z&=drP7+N10i4mU=btpcYS|fAujSRNp8<}$F*T>2o0TU_?Z;q#&Wd8HfIbSr1a+NbN zZkhdwnyAHbNzafO~Eym0ussTF(R8+fVI|f^bgPym z$xMUXOj{_^-IVEZ78#&x!7@cPI}mw*7UFf?Ha)LKlL*!Tm(`IPta92@{(c=3_N4?x zGRnk>lZWC)`9*iLpg*>&k_g3SBzA28=13zS&EcYXe0-&TAspQYlJ`1;<~=gUtjV}R z?Kw9CK6ycoS(s3csMabL+oOJ8kR1byNh2C0vSq}HethL zMs{aT2HR$afeBzZX;%%y){Jcs8g;dJQ$vsU%``kt!nLefSYMz*l!0Z9NUVcp4OrBW zxG;bVa3OFr`%zeK=l~12EghDGw)EYgfcY=L0@DKUK~QwShBD|YY@{I27EsleO>_bK zTVjB+I^bbUv_I*oR-=6jx@xaxns$_Rd=2e$E1rfk0NI3ZC3?IKdnfijy1Q)(mA0_sTn9)`8*CRQ)(3MXN2 zW-tKU#IR3xFLUPF_c1W6-OB1s`+io>?FSfk^Xvy{AL}6oRqJ7b;}QCK6jBr%f)Ci@ z4yIVKT-L*!81zh-^6egG&p3)inkI#p$pxKmw)&j1owI4A&dE zjcs)0KFpBf9(Z~fr~+)QjE!5EXaRJVC>FOV{zSsieT7miuqfPrVm_%u}LJLg9=tK`HAs9&X!9z#wC+ZG~A`N%Ej0Uwxfk#U$$T5Id zut7Wk@DdunJ}LP6(7rvxU=;kWO3@qez7WE&}t{8nmUfknOyJV%J z{2*-OKt1Dnr_c*&n924Jp{1}+Q(6LK$uqgZ(3__~j|O~8Fi7^JxGNFYDB%i26w>{{ z@B_QF8*&@Nc%W^8T*?h4UMMic55jQWb7GMw6g_czt&p&+>4hWd1{zg>q(&0wZ0f|5 zkV-}Zfl5Mv1)%OmD*$+k_+E8eQ4X9|6cGT^_-r;K#nw$nO*k{9hCz|Fw%O^PP@`eI zzDw~H(I?Ddpdo6JYC0&I07)T2t6AK7i74Tb3S+l`R`I&xcmY`lL05RwNHjJ9FAJzT zwUZ1G6h#_}2wjS-P!D^g$O=8;2_i{krBjG5NxBpnpu41q;y`%M?0IBzyjIJC9B@5uyRSIyF{4Rz1 ziET#WC(w`q=LlRQ!|X>G66lss<^PjS?0j=O<>QN1i$Nh%mSK`kabjm0T}J&@4o}o?B00CqVa&DA zn;Y#dKm^kD?1Om|3`|)R?v$jUY1Sr!!rWzZ$Q&q(D4^C0tKI3CV1rdvYumS|IaKNU zwj!a9v$4Yn-4)k>CVN#Qi%6OT1aO5m} z(+eLWqSbm(Cd$mho+z0Cgm{ZIpjKtUO{4IallPUu(V|(tUS^J)5UPe64zD!aP6d;8 z@>7uN5l2~(UEQ97Z=JZ=aPmGq8y;1*pgg(UJPPM)wv?L%iSsmB;Fp{fUJ{7ufg`dU${&SGIh-_UO+$+dyd#07F{%rEiNT_WlJi;`50i7$1qgF`6j4oYNg>l$p(Ne58Akk69cinJ3`eVj)^gGn~k# zXRP>W;fz!T4515W(8AUYBv)mXipp)Y2Ugh|yaGZ5di4?zZVCho^~&~cvxMQn zDexXJBjZXq7|qG#W3TLk1#QU5B6kK&3l)uV0nJxeqmu+VHiSKMj-p?D`y*3$H(Tjk z_`py@@*8_P3AQCi*j_=;4g`8apYaU>e3ig}15Z7SMGj?BPuSvbNIt;HK;7!A-oR>| z`iM^jT-!V#!M|vvN8$qEt2S`6vr|Ymm$=5W@`qx|D+{v#Xoap4CwJ6lS|Z_r99n=A zEW+^!f#zZUXAjMU)Yy;&`$a~Dc#7l&MkU^PR7B@diFO{9%+90I@Z+O$5=JF85Ezxz zKwwl-1A$Qy$??Ld#8ac9XGvuv(b8Na9IV9a#ECRxH8Z)pkC{KB0;0SaW<0XF;X_=o z{*Y8q$10RyQfD--cM}2Fbvi1h$%Ffvb%|-j*eBY@qS`oBOQT7GQ1MFpar8!485@!; z=J6F+%ucab+#5!^&Wr3TZr6yPlFS8u%1?2ZjaNzTiYxB2h`Z9p5rgKTNDZyxuJ){? zxXb%oWg2%SSxFUC+!g;Z?n?Y$a~FK`ltq?oU3(lyt*Iz^O(UQLtxD?w8Ld9pJdM(i zrTG)zSi`(=M74XKZE+>z|1mtX|YQp4F7*?JRa3X|(T3v>Y#+B>t4>}?$ zHN`0aa7p(=b&DS4vm!i9pX!PkqfolyQL|18!6#+Hp;&K;!dwOAgY%wk&uiwoU z)(00a!c0ujMcOY^lLR?BLVVI81|S$c!g>l59Z;wg5E_GKIBY=sqbUadrZkDRSFg%c z4d^ZbPK2*AQ61{Kbi?@@jsSmJZI(`XG6u3p}_ka@2i*Nji zrR1E4bEc#(Wk#O((ejq6-z^`d@)2F0PRIBnZ9iH8eXd2&-VXr~YY#wnaKwe~B*A>X%JE7B959xdq>XD$UWLK zuXKAb@H&OMjhso$iq4oVorUvkU1GMT3(RH#cANYH_6U1i!|r!sFY{oJL2CmE5Jh;f zmv;&K6b<`v9bw0TNSQno`_Q4K$ILN(pLOlTgILNiV_BpI_o;EB*YctUgL^x)$Q5Nhzty}{2GLul~nx($!d z=!(70viEp=ga$I=1b6V`o{nM>QFP?A@>zCySHqtm5!XTfM(u6@YFOmPwBfJmV)#SJ z;jh)hPhU!*;UD4Q9Cy*D;rs-8qTvV5PZantH*k(wGky3+%(6$MBRwgYJ8>CQsXoAQ zE;&cJ0@&7~SJJ5tLB;rY9*w z>wB6q%vm<+hKe$vDhpi8VzJy|DK!tH0-w(Q_|T2buq4379ZVRssDN#!uLBh^vJ#t7 zxE3$6N=_@wDCz~xj83VS16F-TT?km&opqQa=rTKs2OFjRmr!m3^9#*}RVIi7w<^-X zN2w|+q&a*f{*Q8JeKnKO3JGcCMULZ*PM&yQM+=}4# z1AAf7h2$B=5E|!t$n` z8NoiJv8=U6($G-PGDUPP&g)oqAu0+-u1U2NkSjh8RVe*`?~JMvrRuE3egF#oALha+ z@8!=HRtG27zE@wjdV$Scfo>|WIR#=0bj_d9u>c8PEoe2aKu!fhi|$jsBp$6!l&jx7 z962!k8Vb6OScr1=`;*pO`N%5pUF95Szk20Eag-Bo;AFSzv5koQHMai6$uaNMk6XQ? zmfKUzjN&`X_W7gN49f-%mY(Y9h7{f4W*I(ixyk@wW{_Do9$xi9 zz(@6r-WcSOoa?o{>AK@n_40$S*ldyD9Oz!>{5=JT2PWBEyE~i z(B;TrNQ$|!W)$PbpWyzWP6qp%oXpCM`<6x=-?S#Im06jp_%n+7N6Dzh@+fu!jHLQK=NTA{Sg3M!&xK?dNil=G}dn`>jK@==*tBY_*Y7b z)y=Uta10*}lRaQ-DhciE6;$clW;O2tCa6|z2Ov(}NdHA- zIE6wfTPGB=aS?P+BwTANoLnXWtX&Vp&BeNSvU`FuQ}A)wn&#uFxT|bKEAh6)ed8Zv z*qtWNmhGTHHZE;HabUc|L=*3b_smXs)$Cjh2ubftNP15~(&;-b_Tg_o{x->}lFfcW zv5)<&F8&FS{FF8~Xo>%e+n-UzzC6M^*yQ$`=;5X;@kxLWZ5}W&AOD=j4g~CjiboLJ zQ~G5*4>z9qxc3|aybFrU6xp+|L}<^!#P#TOLqdCS?OJ#+Q9X4;^kj(WA)E(l4w_74 zoexwy<2&l0S}5$X>#6o&0 zd=%p=1*Crzq&P?!IY0G zsG=v;@JKcJlyLI2ZSom4`8PHBtZni+Z(`5*dEw**QR+q2xQ_ZD!_!N8dRabRw$-s} z)r*(Ypc%D){EE8#sy6uh6Pk-HJZ@u#}GOLw1H@_cT|^G~n%trveG zlzl0nzS2Km>z{8Nzty^4;P5Ql6yp$<8shF?rr~@jL0->a6)KGt77*4};JIzJAcrC>N(4yDlG6bS9`??K3^wO<(O%CNr*dntn>t-^v zHcS4f0*GGr;^Hk}P|Y*m{6=xcyyDR$u<2ezQzjd9Jlii#@Y6r0yG|4K19mZkc(y7g zzX}m%5ITMGiM}a%@$5)HPA(9$l2vC@vrn@?oLZP%v5N{8tvP5%Q?^An@JuNTC@%DM zB#%h0oZ&)8Lu?=2E_1wr*-P}^P!w(=VNjXS1I={Xd#amm))%4YFfr!L90~wcoa;iv=kq{tO#VV-^6z=e>+^kt#szNaARsR!IbqBeLU{te zxa1=Rknz=b_3M&} zsllyl>fEZv)E0i8KQOsvi*UF_7)Jl(^Ka^Rs4p)^SP!kPg*y}Q*9xR z6fTuMhdhr>?)tWV?3UqDxlD{*dUTuz$GQAo)!=%FQ1)Co~RY7MT%j)eu_U%3>r1E*O)JEy9OLguc z6c(gH&?pHXbZEGJ)c#15g;G5il90a)B>vqmlwR4P@eI7_M|*phZY@P zi%PRG?Z-GT4xy8&^6VUC#v+94P!&*o%_y{dDbNnAAuKwGnslOtZ5B8ZS#AAkLDQZQ ztelg7C=@|*Te(82vb`^lHy|5U)tDW+pD>MSMnS@M!Bif*6wX_xC@XmD78n%p?vh25 z)Q2(^dYb8lP4Zib$N>x{jB8!StRYkec}}%(LNC8@^4NFvBht|^#_p}8e63-^GK+L5 zt`9zEkz;UY;ZF3>5bX(I{xM@4>$fj#AWCH$hH2Z5-={^$!eWV~hTgC!Q4$?JBWK+! zZYpona`w5T&yeTtGu;q7;R;uOrmt3iZeOZy4W-(DH7fn8^0s7~EW=xFqUY+L*{|w5 zeVf%=@G{DFbQCz#vsOkxtlLq}!AHratfNmGnrLQYi>G$&g4waQuCZwa2m%#E8*rXN z9zxGcw%Rn5r!n)AhLbyIFJqr=EPW1^X0l{txS?ZLfzDGI(+B&x=2*7G> z&+?M5f^b~-ezyHSwtYri{uK+~=v_Ty>@S1uFCo7y2ZN#6$l2h=ODotowZZx32H$>s zy>Gvc`1)mQYI0K6&Qi>N4<*a8;aVDm>e2oWr#<5Q5%s8>kz)c2o=4OpV-u`Bs!8@S zb>?xQ_X&0INp#B>3PJFizHQ3i+75y`I{td4eKy;h=1w&6 z8=WB`52WH5Try2vx@CMXS5sS8A9m}}xBo!XG;JE5?2Wsdi7js8E|R4&n83f99JZ4E zc8XN2>84p1v{h7AeT=edww_!#1pN_Zb%Ee++oNnwZRBPu3bWaYO~IP^aSc+AoG%F0 zoY__zg5r8JO@VH?pP3)GnC<47;?x2r9bdB@-LlFoOA|A3a$!67c9PwEn&BQM+lM{W zb`$CKoauQcvujR}$L%0T=`RgIP5`>c1<;QpFN|TvJ>Je;b&V+5vh>iiX6OBs75G#I z_%r9Dhvo!*j>2W=a}N4!74$5qSq)h5iW#%LW`8S?W->&yM4gS`&=Q5TU-29u1%mxi zr{^HO%=WafJ@YjSk&VC%#<0194~xQdGk0o%zzB;NQqPnvTFpk9v>LFD%r;o(tSQY} z;^vAnuX$#+nJ5>{xh13ekcno(*7m&=g1z`z%KTm^1ed_8^sgnJYd!K1pL;bIuwEOx zR@sYR90bmsCWOpsX`DmKOUoSKRjeW%U269%GZ(X*tZc5wb8$kMVEUNdwc6<8K;mML zR<&T|mYN-Y+qk#ck#)yQo?Und(3d>hw?2|F0R?wDz{0C#rnb%k?+{wuI8#&@Md3D@cgVbyR|?Y^HW?YDSJ2( zGG^byVBJCHCx^*!uPP3*e$2md4?nSKgxH?QNg=~J`djk0mg3)7N~?mLt03np_>KAH zQRP}T^fO1tZPh^HL2$3~h|(#xOUf$`%!WddZ+<2$@8=w?eA8n0Ud;X*B`e2-{Y$7; z7WleGLEw)dI2JI_472nP^c^tI{A9s=I&}c^tY?0seTbY+Te58MYjcG7=LqxD1whP2 z7Gt;_wr*N#elGqw5dL|=@=wlyXKs%Wh6BDn=m1m7SsR6)KQuB&NQ;1P919&H=J}QQ z(I$D!ktYTy_OOBT0;@g_EG@uLTHdhRoQ%0`c*$Gzc`G3@}ac z5yr#L>G+{Uk|#-0a9~%me5}VoQwo^&q}JRCM88IL0>STbYZ_;gq@yJ^pj;~uC!D(i z*-^?@W)|BRp6TQ*N#(PKunI^(FTtjBfRoTaPXXGl;_iUX?shWGah}BVQC=#ixj&u? zB&ScXo*R~BPeK$~Nv$I~PNu{nUQ9@y3d3F{Wf4g&Pe-#15h(E-ItUXU%d-uJm@5F9 zQrVbxzQKAC7~q{uw6*}>wMdo)v{&=jT~l?m@`N~ z8{L*kbGm8`$U7)A3xx;F3^p_Ed0~SoATg_}V@fM)my%mVTxlVF)&iQffIjP4hPGiQ z0i{m!4nWy;_Ostnz0R^lu(3&Kh>Woo6@B9*+p*qZjaet!rf=kz8t4}yt4g$;A>ErC zBdKsZQ&WcP^;z8R?rx!#nd5FDlM{c&5c_kL*XCd5*t7xTy9)xYA*M$3P3b9mm6)P` z2ML{ZvP|1bi9OR2yF1b{d23Er0XEy*ARy#T>?`Yq#2#rAS{kisr)hFwZPUcZ;>RX) z5rr`N)6uDg#hxnS^TvU5Op~3ub6CpKP1)IS@5PLep~+JhW_y<~$ps$a_>7?0{FOmK zP60V{3E#x3a57O?o^4>EZ9r`{&YW6U%B^=LlQPw)|E3o8qM6Eyh29tj-jQNZWa%jwYhq9k@z%el1W)6_Ck;pwhr zXG|@Xt*N9aQ?s>*Cyy{L=Dy9jxk*-4;*O^jwtxfvEj$zvmK8k6a~Zs(u=)8dH8V{Y zfHTR|g1NXvU&KK(EpphCq4}wW3kBj#$2n5gQ|`ld>bMB=EeMj$)vYJN)0D!NRE^Em zlFmB)atHo^-`=#-XRc)E-|CU+p@f+Fn@4D_#FS9*H_wj#Rx8>96}^h_FGWm>&FLES zZv3CdZ4NV;1i&r!D^UimBoE%m9*pfs16Sxo$;ogb9fjFj!96?v`LSGuzz~%`N>%H(1H?SI;2>I1`x?SVR`39LgsWqoc z;p}DQX((szhHe?t^fPl8Fy2F{drAJXxdib;;6u8B01`O>iT@>pAM#2|2}9O|ala;v zXVUrNHVE+ygh)?Dr{n_+gfbE2ACVH_9E*PYGe{JUsCl@>!rT1hSFtQo&yLkc>FqH0 z%i~^)O<7`{_L^b@rxS9#m(Y_2Wrf~jpv8Lqu~r!lhdydqHfx@sDz^3+U{edEy0WeD zt%R@@sS<(Ow~&ZJ61v699P=djUq@WVAMH+kaW(fqlzc512@!l}hOP+ZdiI~yNqjt>Mn>G>XEj7_>LuO@z5W9;XGzIJ4Xi?Q!N^czm85 zH>Vcn3zlM^IG0@fnct%{#*EW|MkV4*bx=Icyib|3t1YVl))nL6hz}U$By@v3E!`2wD_~D~3VkjGMSC9qL_x{f?tj5_qiy7@nI*E!qE`!;zjSTE zN;aKz04zn#iV{`4?l^pwOc!(bq>1T$4%7RU@IVv1J*T;#7=osFR>bcNyBr`KvS~)t z7KenfNH*d}aeakH(f-VG7NN z$MC`p#$)Xr!!};*YlFvvtT7pxqkIkCqkTs1F#`HnyphaeCJny9PXHlN)9j9lSshN+ zJpY!w7+9jAHa=cbh6>^yR}Hc>g6Z+`elcU&O?b2JX0zZMhSL&Z_c%d!e0$^)17eX2 zKh2RPz9wGi!&!@b7QaVQaC&KV5tXwqpg_*bES+m3$yogdc3uwOuyiSCD|VLXYXv7G zk6-?yaqT;~IY0&=#$6jSPVnP4Y@FzKM8`=!_z=$^pNdZ%cNbbtku{Mc3*3Y;%Slr7 zd7!gHW)-6AA`jU&&JO9U9n#u)_t-^q<64UVjq7Y>TUo8*PSMYQ~ao8PPWW;ikOYAO*izp$$*79 zWk!RBF84DeofF%(sE2J&L5c%KnKNV`n~C)Q+DdyJtzo|Lc#>eU?_@8LTSpd|^bM2o zJ4y|-xA}+W;-^wugk;@Q2r5cA6DuWOrLnRtVnM|eVGU&NR~b0Ivl9O+59nKPaAG0D3CzI5o;C}J*XidCe&bworr#n@hKwDOT0D@( z+TYf0h2x5uXQSzC;==c5S1{DKGLRpDi@S5otTBl%*>#p*Rzy8>4i&1k5H0CkU%D6l zV+lio9a00;{LGx^V`HG$8N9J>0n!5S&&Zhb{ff;V&#MeTi7Z+NN?o1>a0L4APuFI# zb};F;+Jg6S%)t9EFhh)Ax6K_lVmTH2CRL z3(tAHKGToX4b@`eI1pW^A-8TpCQxQgexa zteK<3<@0B zxem0`Mo~5CIN|{MNMc#fBp&uaNZcq^+7r0;WM50XrL7^ss;wdTPrSvU4)QtsgNwrQ5N8PyCdS6W~TmmK8)@TG*cA-^M=|npQv>Qcb2JFau@Ls9XgFlfB zYB%hNa!AuWd8y@EESxk;bC|NG7A_UuoJ*QTn;lS&C1zMi7np0{V{5n(Lto4AAhjet z+(VrfYRZ31mi3?Kmz-moXZA3=qZ*I_tmrdX?32?;5YDCyHL}j9?PdJpIWU}X}Z8T9;TWK>ySs2TAD{*!X8$~Vy)RPMnd2N+-5Znm; zPxFOpbOUKxK98d_nICz4;fj;(K}&0NcvW_Rdzxvk5QoU1NB91yyzyvzm+62X*!*lL zCsmC3aw(GKQqZs0LfP)7X8ZUidBxS3o9OipXx6r30keB08xAVKXo2t}&rpBX%uvNy zTLZJwR7vYO#^aAX^kytISGJ+w33AVh2`k7Yx6EE((e3Mb`9DfffOYKFf6!4e{H7ID zY64P9nRLI4;owkDW?gRWIv?{Dx4Wn4@&uA#H9rD*b1csyk%T6g$O6pJsgb5?hZMpD zv^h5c?g+|H24urR3H!de-ZyjAO|BAon4NUfwt8ek@G4)nbIWBt^cvjSXGNYFCLVO|D>H@phIRL*yYcT{jAE`xeLI1=g1~omsU3LARB1 zC%Lt*w%e9C4(1Ggznnbxl?TdXunbl78>Zq9UELpgR#(QlRaoxjSK6nTS^r1*%{ut# z4aK>48R{*JyxQ{92Fp-KbK#?8_K)a{~2vT`iM2Ax*0f1f<8E@$vN1gP zO#$?szG-!`(wai=qyeoKbLKXGLE0~=-{y8ZA~0*)kIi3w7El?mdz*c>E+XbHmREA- z4$+!!D_Nr&aAov84{Zf___Ip5k8ZUUxsPxZu{Fkg;+dOi`j1|I6XC1B*}bq8Zpf5* z5K!yf;TpO{W&rhF)ll!7G54lm-{-)-zYO+WRbbzfg8e`WHr7wy*q62y>Xh6NWVRg# z8J~FOZfgI7mw#6AL1QYYAK4W4T+iX15G@d=AFAL>Fr<{^JysicujaH!vQ)LqPr(O(;sWVBP@oyf})PR#LiIyQ~s?&s%ZSl)tAvXCqV^O4gOB4!tsG ztyZ)1WYqv!gxjX0QGvI%Yah4o+RC(RpSZ4lTJGA%We9=oqqJ+ERk{|qcWS}t%h7Hq zsu4F51M?xhno{_kmtSVV?r&xk#^u+y<0F4t`yNz{t6^4m-OOf%9ieL&EM7M3;{U2Xk)cntx+XT4OooIF;#iwK|h^!XaI%sPE-( zO0FDDM7Lc1Mu%(fKO(@6oX$9sT-SA!Tv*1oG_!HNoohuPA30C!oS7SkW-r+07O!x- zmnKRn|F%27?TMZ>gWu;CZe^lk3WfT>B4b=S!9zB(GS|I7 z(!O`{QNOs^Y*EloYdl6d_Yqdd+K)|XageHwu2!cu9!02vbhjlz88|aFu3r6l<)#QhP4WNM_m6s!I? ze~W2gpgDPLF5EZePqA0#73&`~!;y5))k#Vb;mj_P_Y{P?r=i<<}zRHzL`$Wm0}8QhqN|{@^p5oAST4ip4dKlE@Z;m_M3{cMKL1mr`|RRX$a@ zFmZ(477Vv#8I;DXqbmHcmxX#l8zTZS-C|uSh=Dz1!Gs3Dp_)Pn9FgZNa&rFiWQQh5 zW&CuIE@UQCZn3>pg5@pIW|rIfCzdd;T|Czh;wy9FyHt+lKKm>+Lh zwl^sFU69y~2;DJYAT81pQ0bL#{#2{Qzk+@48WZ+QMr;)JtX9aoBy%$0(Uc@*A4L!S<+e@Z9oy+5pn?t0*gjFckYL7R<8mmkSyDY=vfC@f^1G9%l z_*^@}S)vQMdIBYV<5gmexz+=GVE~a91@Od?0qk&80G}Kkz!S$1o)8~Pl)8;GSRB9@ zO9B|gn){b;$JwgKxvDA4_KgEfH)(^U zk#n#*K-EGDknK)s%}u7C{R_b8wTn?{3vwxcJ+lmoZcL5sdpWYD4Od=6Ng+gtI`@H@ zYa5+wENnuI4K^tkOp(WX7b3&HNQ(4v<>qu#!AH5LE;1)AMTckFR%Qz4;9rQdFEDhM z(Vh0)K9^}rvvt+rFff|(-DOg2;;1kD#q1^PF02IfQsLQL6yMB6@rztE5phIxsLNCx z1mBeJrLeCiA~&sY?GqJ=n#psKpz9l1wnlt05;@SV=yBnt&xKC{E|d$--ZZ>y|J=V+ zE+iH99v>L#T21I$te!({Db2A0#yVV^g461V3>(R~#mb(6D2!-?Ls^-#B0os3sjD4W zBA_#8)+u6aTF1`ea&aIT1p|-M^;TEutj0nwrfYL;{bu4TPL*Kg04}}cFG)F@BnT_w za6Y1Z;ll4~*$SF1_%Lvi=EVlC)d1e^BzDM{8G_FW5GS&40R{w2kc{6f+@#c~D!F}iSi+c>kHGv|#~Gh=9mHmM^+5S5~r*k>YW z3PR-AvSS7fiW0ZlDpbt9bFoOC+#+m{+$92L-Tqd6w00|Ma-Mc>>I{awPqFk9vr2Ucus}8Vi#I(T50Tx<$a#uDS zY@yjAT&J&vhTJaYUXfF|z>36nv0t)ca%hr46T+x}yB=n7Qq*x@VuS9Tg{?JNy5q57XWEqR?P6+& zR`m@GS18!jOoYAaCD{#ZluVfruC-P{E{vICPv?ut9bTDv_l{*lkQ_51EcUWNe1z~R zK2OPE$ZFEi?~EP3?^UvcKBEw+-uO<2xP@BxX&R?jUcE@xtc1Qp5%mz!<<73T+w9z9u9_f~BQ4GT! z?aLmW)YiST+E9bYod?wGcv8pQosUH`fp0Mscoy_tPE97P+5krjGg}+GPWQ(K-SR45{{b5 zc@x9o1G);L*y0_mZkAGPbD(H&SnXC}0!y}r_GIfStPY5)C{$anYd{LZpbCX{{+}X; zX>x(-U#@u56v!V@aXzVS4hOB(r9F`O_CQ9-R?T7Kz}}W?(T0V3_!qsDV$o+^y$wo9 z(W@DeEPtUcYQ3O2e7V;D$DfiTriGh$*Cl_R7JlhnpDf)j9Lr_JcHssx#78t&B9JFoR;KMAk&yz5%K z{a4tvhj&gA|1zBE9oSm>Wq4VR>#$O|Q=U40bwc=azW&Dv;U;y-uq(0?{Dq$-`(2S8 z9z5!05_4vFWz7E zalC!(Yaj0^KQ`FMzmy-zAH~NvmLIvlYDw#L7lwJ?JFWGv7l*F~rOVq_d|~-pS8-B) zbQPacesmQtEOncBhQP2*;{1ZX5+Tl+qVB<`7>9^JLN}J(l8>kqWnxP&o60R z=d!TL4+q9SpXiZL>bj3xr(Y3X<9lZ$wO3hIn|oDwIh3fsIy}w4Xl3&ItHZs#vy$(w zhN=g(HZ5fZ2az|q7GAwRIpo@KIp6MZUHBU=k6#z|;qv$E!i)KB$@SqlE`PZ`+>J~3 z8^q47lWu_Qd~@-Q;k!-w_Vy(&{d+xl8?>_T@Nt+0$K) zc9*5@@|?S@a+l%DY=Ir!O5-`|+5& z!)<$Z_HlB`-QoClzo?`w^U~d6sr%v7vJfJ*)zx~yJ>j!K{U1)cJHsyxW0Gwi2zRUd z!^u2u*f6H`iU-1{120LAcqE+0_Y z(0tLy_higr90<-4M#UQ!Q_rKBhB4fi>*RJN-@w(x6Q*mSU%6}Lo7U#1!yYu$I^&t} z9KXI&P3t$$!ph#f);*sOU-7$DqhMK%V=a?yUJ9>()jxYFJl8uYIr-)A7Vp4h>*e8C z|BBxwM=TFF=kd1X>?!j2!SZlMUgyWgTI6$*Z0nA%geQ5uMrQ1}Dc|4hcN*E&YPw*!csSroQV()mG7_C=4E&1{L;d(W%3y3$8();0nt>098Of!vdRW~@v zH8_EV$rzjX;B7VdciZ4Qw!wd>EmC(WbC($tzn{GEez;E$(t%-!!RXlUi#iU{R=G?Htjz$;KE0`FMqQMz_U1)~&Jl zNGrrQj1`S_6On5sIVHCzR)|6zsR8Pf`#%cJkSaK37DLX^5;EvDdupP^P*VSK*f_;D z(qhmXti-a_00DG;4Yz+`W<9NjN173qLGJa<2$^6VRvdmH%ZgFlk9_8_mX} z)xFVel+LPqqfPky>G zoHk%t#wI%tt43jYP$ZA73=iwB4;aJNsgDzpH}WSX%YO)`B)|V8TzimCsen&qP?e#Q zA;#woix_KIHIvsq2@h^`<@u2<4ovuyQ2Mw`U_nBz0CEl$A5A{lB^sCf;nVQ_0k&XZ zv(1s(lS&oGI7$Vw$_6lsd;BvzWh0wEvO%c;gZMe6Ykb}-e*g8VUnm*imNCfy!5S0y+DZc0;IOoIygd2g zpW(S@4~=@aUi}4ZoOE3~>YcpvWw^t@ta2yTanhPL%bNoxckA?6NYP)B1q=P{|qqpWif(T+(ZWaJe%zQeK;MCxcB?;khR1_d3b5Umyod8o{~ke=ua7BK)j_7*di0sMxOAsQ#q zXNu#+&~5bO9J9>mRES#k$cj5M@Y@4k^12_z$?e&QBah>aWEY~w5y9~B8IL;~jcUym zR6Dx$>0Ffe(M29jUagI$^nC{(VKPDB7cHKsVKV+NO~&seo7Y7L`)~NkwRKT1UGJ}p zrhD%sYt=`+{dYL)Z;z-~^5gpG=ze6*VbZMjfoI=l>%yCU@@{>!PPbwBjNV5cQoCWJ zkjrFf7!4~8XVzM-&{5(y`GV}B1^J2=NqvLN)3e>s5z8*u3R*nNOEz|FDZ0+-&~1|q z^9;2_%+xxA>Q$9sP$0$GMq-*q>Qcg<$Hj?B88b3@GK{)2)n0dKG|YR`^$Lh>uQraN zL)KYg)4gfd#1JXh&=s9`bA_Kg8%4u#utjuifvCvlUnX3^BZqX2F63#g=iQ5bGB_V? zJN!kgv~Dmr7wmnyZ3Uq@zEH`e4K}hD{NyxbN$CZBZQRCI)fb!K8Kmj%BmHa<+sLNb zRtV~kHH)p(Yg=#QCs5a^huYsHBUVHFxwbah_^gZB_>`e7(B|jC+Wd?WVOKHbZP{Ev z5_rWScB)DrIs(cH=2<^kP>7l&V$*J+8?|+1i{^qn&B`6N_Z{omxVgZ@n`h^hPb=Li zvg^(^Y?f_UUc2smr|t|SL(}(y{|EJHmHISfq4wq$mAB=N)VADFL9vnkTuFZ>G#8%s zld806*H@L!Z$ZD0W(B;eM@}|uNw4Ho>qAICWyCpb1Nn4vpnR4A6-Q;k3s%kt zVF_8LycVY^r`o)=$-bh)XBnt6hK@JuH5Xp?h*53E4OluYIxk9X{v|K@wtLh_y@Pv1 zo8;HUIfP>nq*knx?9(IKblON{(cV1i73wcJ!^-+a{10*HyCTMW;@bE9;sSa8^;QZy za*O9r2c7$v-p%t1BXBFAvEj+PJ)+69HKu1Ya`$`q8BEyCMie%b3B<{LR>Yvo6?nMU zK1BIu-iE!jWlXo8QXY(x(xR+LI2H$=d!hfx2&&=@`Wx9UB_?IqkFHl zciMTEU5D;9XT-Xr#*CZwv;FpSDg~%vD%?iNud-&FsSF4`ENBFu{E4*gG?TXGwWd|G zO{yJD;v+3Rvn<-!z_&}pY;!;Ip``3ur#PhYlUu$;9OP|*)XRQ{+2eqkQH9tjyjasT@ zRYhp!!C0GI0_Z@?lu5}eeWD)?k+zH$;?#}dvh&cJ1~x01j~j^&nNk>^Y}q#&{vQHB zM4MGVs{sJ04ghSJoN{;+CSUc929=PHk-Esn0)OnVRu}cU(nZKe7b8^1vqchVxM(zb z3qhL;I@yB>+YtylO)|S$Wgs%Uf}OfHNkF32R1Vl35FG?qGJBB5Xb&@4X`()9b91}JcCj;DjX${gnAhUiU!h~U#=B3`b?weuNCzftXbCj9tb^vY1yHRb(aMt z$y56FmGs+J?6)-zmE~`1aC;R+CqKh+eLg^dYNxX zb|rbH;8`cnE+kA=KU4uFftJGs@@h4t(QZ8+>|L!qNYZy$$kIEe;*^Cir3li}p-U{x zIq|75xF9(K!&$OwNR&&)#8K_W2%h0)sN;mPUB=>^&{$=mu47cN_kA%{=EVCc1tuj2 z$I%u(`lUL)IjSYFW09%ucwJtlQi#bxl|qL@ER9w{r>c58kOnnIL;NQk<~K+DQE3I6 zj!N}ymF8p~l!#~4DwKf9p{>hRm0sHzjoi)7BAubVlX*m*!`|G^YVgaCo0$~0J( zY|8PL@&(|hm=|=N*OyCfXo`CFS?bA2;%d)a>n(^Q@^l%}HpMl`GfmNu-uG#e63a@3 zSgN#ITNm#0llHf~iyY@AI}VGA zf=;ogT2v2cTn)OPR6(~-^7yc5>W+|tA%jw`JWVL&FB1S)XdG%Da~*#fJk((+ec2nq z1Ukz8jE0Ot_ppaAj~t#K@|0+&G2&)w;ch=UXn53b%-zfmywKe6h(6?V1Sn8uvZ z0##IwY#|qk`5H1xVZ-379K{8H&Vo;(l&OUWd}{^+<=`%D{{gjc{kiCf%9Q)T1YT+X zfJoikl_f#cLXsdj>p7ASJP$uU>K$?znSAE46+2(1^;!~6ajGyb0g*$S3@1=bKq@W8 zv)(T7gjfNf?PJmtRj+8fdI>I;9RPOYeYErhY zt%VIL3T#Dkq_p(Q+MGrYi(lE`sUYBFAXbCUtGJ>tio_?Ce*#=E;EZg5A}&>TEIe6z zORuG1@RNF`4BZKD(35v9pW8W! zFUzZ&BY++*hjo8N-Bu}89;PY{h$Kv!F5d(2w>&Z=sZq@=%9hkZrX*5a%-7`|y2It~ zN|!0YRuc9!BC;{BD^*ihBkkKt8UOR!mL*h3wLfkia#CA_RP!$1(Hlu1RH zGQNP5 zZzs@C&uyG6MqUXc-|iUsi!vh*)Q4q8{$+)c52xy4Ury=yxE&)8B%_j;akv{`kkUpzcM z&F74@(<$J^XJ~Va(|ESjX*|m^@!7uFFiw23qD@oiJDFaHs&C&$*QzuJXZ_zJC#rz{L1$rYPev+U31hp`^@zAKryTe)P?{Jp-UdSy0=rXgU+r0ubT_@>|bjkWZ>{TEEzdkMcuZ$we#lmT4q9l&A_*ojON06`H_|8xNA_l4y+KU0T^tr#LS(%nG4q` z!6DP~Pe7nOw8pnnzA}GUGSpDuYIj?!-y7mOn0F6SJ6L{o(%3BZrOu*cT1SN}gOpSz z5`@{bFbPL&OjwprRZvFTEV)mZHVxD1^@*7t_1X4Hp7)@7gb5N&-&mUo_84Av)k_zDdLE&l+1q_%+0>8el~Dxh)c+{0>%> zUwu5Slz+xnk<#D_U)9}MrULh*QBZreyf4#%w>PyT#LXQEaZ5@FSKQoMCdAEEgdjOY zoI@8gw}}wFWbnCxSBt!M#Nh1#QwnE$`78Wnw_T!NHezo|C(eIO22#XyMur4CkrRRv8zFkq2Cn3qHgIc5|GS-DA{Vd=CAF%nitkojed}VmsVqI>9(d? z@Xc7gOAeUlNkl<4-P={uV@=htg}Hh)4m0{e0YKH5>6O2#(xuvJ%&@arRSQ|oDhSpu z&4qsLs_9<^OuK5>`mCy^suumwkxXs)ZCA@PW7bp+r}0qDpmx9v2AJf6iP08o$zM#? zrqOs*rOsk429|Y2 zO|cy0SS3stSm*eboNTO@d>KFnr+s9VHLdkmp0-h@9V_XVUa7+pAz-J-N7_R z1O7`uS@b>x7A<-;$0Nr;?`Vr&{h)9)i{8{puWw!npK9>Z!!9Q?peQYCV>_mLa!pLd zu1V)ir5{pKRxuTXTaBqmi}-)TR5aK*Q|X6}Oa*(d##FHP{~t`H%^XX=)n&haNPAMn zRE~q%G1V!S&;C!D3hPMcOr;+>GSweCGS%-_XR2q`#8lQC*4e1i4;`7x%B6PwXFu}) zhN)<4dFRQkBK0_KMp{sz)kJg``~JNrJmSv?TqA%z`CJQPeDEB8=7!044+JS=Mcx z1nVeT`l&);>&JyEW1X; z(q`v~)ejvJD^Hd791D^EH;ApRLael_cCz51{{*otS=WSE{nQC!Eq}J-SO(<(6=G?# zbHwV0j)=AV*)GxoBL8m?s}xaXQ6LSY9bzB-PY`>{nh~p?Izg=E&vuC2|NjoLwAndg z^+QL*TK;T@SSxk^$1)bQVjs8{E5wza_V>$yG1|ytn3mTw_0sasc6UdaB$4Fon_Ptvil_F@b1yM_>jx3DL?y%drtChaodn*vHJFw=@E=Qo ziq{SMCd1Jk0luD@LhV?e3#N@0b>ejvnOt6Dy~||<3tktPg?~7R<&_P}3e*eysRE9U zvO7i{0s_?4s)!JBL~=BiKY@Il22c5n8LGP8^j$u3dBjd{-zhu&)eS$fYuz~RvDr#b6#HqBS5Pplz}jXx@r$?F4p>`Y!YhRl}` zLLb$%CAd@`NTtsdo8Zuykwd3;X9$e=nYLc=A8j%JW$(;SZK~j4;?ZQLTb3E`3k^0m zwc9!*)bU@(MYw<&8xf(i$cdhf#}kl~&0pfnB8?aP$_j{|$UX=t?md|;#i3Di2?+HQ zz611brR;%iHgaWml#SeFp)_BXZGo;~Voe7H z8WoRO^J$4DWTL6Kik~6J*$%GaK>b}gKczM*GCV?6+w!;VfnH>@y=BQ~skY3KF4-Fi zliS)RU7G{?sGyWW?HX`pT=i82Xj=I*!IP|tfjAZhyiYSf?9X=e-ruw8^u z$@z{eL`dldV)T586O@RzF~zkL~jmA@Do7fd9T6CUCyO1TF}Q zJut>U2ow}QCuq?&)49Q9P7mgVP{!GDT!{&$H@d59%$C%dtT|7JL?5Zzp!!{k%-=g? zo?k}hc~!_vQe<9Gp*}6^hlwk| zM8;fZE3dIvA)++F-hv5-h$}lH;!i0eu5yUDx{Qb`s}S+W6cI}+h@fG;yi7rW%wee@ z=dJc#ZJjE0~0a- z{UO*W!xnDLE?rfqX~5Hkf&A($&aVN#Lix3AD8DX6`SpTzs2Y<~HfX;gXxk3GQ8>Lx zVGw^7!fzJ-TZ3Y$A-+XaxV21x+eCoB=+|l1C||v2dXvQ%Y`BNH+1<9=GySuDSEfX3 zM@rn9QodYO;r~cX78yLQ9R-$= zdem;3YDfAmk>Kv21P$&H4ek||?^8g?{UX5wWfD9n5N=0e@cgkEFF4gY3{D%ll7zCAGZHw*E_BfGqc#!NMT1BgV#h z6B3@vCl~7t4`b-;rA_#<=WK5qxKJ*|8NVE7Ua#DLuz>!l)&4aEek?GLS~RKGk1?!M zt?03!WS(%Cw+e=Sa$3=&qClHg^i+!cr|rk)nKJTStwLkgJeeZ@Zxwk&vybSdgMi;t z9fJ1{+lPjJ%*EN5XRKp1aZvtQ3-1eodA16y7pwr4w(xv=uwF^QddY$HY8kBO)7k~r z@)WEUWw3yT`dtyL3-Z)ffQRQ&n7Mt~RwS$mhE(t2eb&5a!F|z!`#Qf_%_d`Xo3V<` zYwbaOD+Tp!2kPHbP)p{uDp=o4VST3zEA<)s5}>(t-wGVtj>UV-`>c7xg7c~c=l#I^ z!&d54m-j2!d#^o6D=C96mNg$bm_8|^@4YIJK2AaUv~Z^% zt;c;-!5;6k<^u~ZJCsG{jygECElok&$PyQeiTTUPD`*x3{&ktgQ6>4;G-z0;!L-@r zz|X@C7){&l7H!!qrr!uLmCb)zHLku4SQ>o|TwmImQIe^$H2R_nQ<3>1U}cod9~Cw3 z#SfN_-<3Pgisze3hic5X6(kWT_Z9uYte=L3HW%LTxVN#G?Sk!|^RelEPsPvq$$IOu z{rQ7yJyisLQ0uH2Q;i5tDzD8J+SP$DnXb(!XrWtGfezWgqD(B2t_xcb(%Jk+;GyCt zagWYXGDkXZO8g{x6KCTdI&qXZ8VAkQ^s{5KZgF(1Eo2sFQ%8xT?XwdDRA?bvk}YfJ zG`WbEojXdjPgr?}IRn7XR44J3rPCY_wDG!8p>&q(WXfr0sgs>@+Ub=( zq?|@U+tITt9c|;ZGqctLv7hFcwuOJ1&4RwB8Nlb7AZ$x!k-W79!IAss-v(k3v7Du> zz(q>6%US_$n3w+<Ijc)tk#GInrN6rjaF>DZqBJ&q(&-^ael@9i#g-DQru?By=A-DQ@$%ybtHI#Y4-H|R3MU8cLs z?(VXiyKu&jKH0@xc6Jxe#+#wHJG#dm++}-r+0I?2xeJKXm!MG>kg5wP)&+#?0{V4< zCb~2yE&CA^YwuwJy@DZhfpv6&k#vErbor6Hz-xMf^K^k7b%8l`fmL;_I^*Gb*7Y$wxDz^}KCu z!0DiE-KH@Ec@k56IVuYuHoZxZ zHb`5}HT+_1vlsZBR6AdnqcP=jISNy*-4>NFRa@DZw@YNsXtX}hy15wpS9d!eh#|(w z`CPpFJpPR@k(YOtoZ03QpM!5(;!Az*h+JwMRdTM;$Z8rojsiWv*S7@eeCr*GFDc&9 z)fR5spo6_JoqvTRIW`xjQ1EN~W2?PFgdyI`(ruB`MhbAFH}TeXA4NMkY;F*20-CUK zgG=SHDWeJ3Bao!(EskhT+s48WMmylv5x)s%2a*|M4GwOi3 z+VNGGcRq#C2JL7!9Sskt0T9RpAmm&fz)}h!%_-yQnf@Wnf}CAy&IVS3@nLNX#9gu4)w`m7txV$0J>3| zb_0#p4%r%XLlXE21rVSHa5bX&wd8&Vohe(}E;pi-(I;(4oCqfEo)orSXTd(9Y<8zZ zj54QLwl!l7sJ~0Gsvj)}#)R~Wy$M+0IvkwZ0pEB)*ls-K)JS6;)q+;=)2N8;>XB6| zzTMj5e*s~aN=j0X*G0YMTi%Orb3(PM$YQus#IwzA#oOe9y`#Zn`OyXDs&0Al$;Tk& zQ>yP|B%RhR>T&iy(cs2OAVfo2oGVD=2Wf?#Hm|frc3d)HAL7nj``91gU8_|7k#0+= zyi9DOv;%ZgO6BDi9h2fKWFM98=KNo1<}~mi?jtPQk)pPZ6p=cYk|E+G%rY6u)SqF= zZbbCesX;TA9uk=%hzJDd1gt$o8e&nm&ZZfTkj{)T6^+gSe>&W zv7@V94Yg#-b+t`K1ow>>Wzm_A#Aq8IMZ{QqbQVSI7{bWnW3#Di|KcoGswK(gKZ&;O zy4qBjct4HSn*a{KCk$Bn=mr9RL%|M0D;6SB`lk7PY~QQ}2_|sn(Leaf;~PZ1$(mEK zk6w|S`qQXq*NfV(YLmbHJld@50M>|B+jeWjWUT|EDW(3r?3e}$vh_oed^jjCEA0Z7 zK0hLR+@pH!^n007Y!;};Ww?7H02xopQ1_IKcTbnCb7p`p7ik9)p|HEeoj4n zzO9F{zSzW2FRDu~shcmWo6CdZ=JoL_4)Ueib;h8u{mU}T zH5`N#dosCXel(|R9iLPgQ<83n5XW&`w*0n{1-8S-2^#z-YRI1?32?I3$ERfN8V0ZM zigl)@T(TXTrfq17>x7G~rrgcx#0^}gp(u29k6qkFif%cxTRZuos5eJ%7aBFtW&7;g zmhH1Cd2)I*woiAuf#hE;4;GBsjRbt#?;0)X)2-8RsBXzeyGBawIcmSCsT;FRc{S^n zy~*NVMC&#Fn}I>Cb%#gmD7E4Gzl?t3txO(X9<1A?bumu;ZA=t^}5bVq2rdlC%h4X&UDg-LE{oMjRATf56m# z1qtx~zG#9JAF)7@9O6PaT)piCZfl|W)1y{@6xeNUklbAQ|!qMhjb7NtLfpHyZ$_ZEwf6~ zxBfYWgr=|m^MvGz*Mfsx)16^p{_DYdTVHb1vP|reMWA*U^gtBzUG&e6+Lj_-s>NiA z_Q&5ehI;=SQ@8Xtjk$(jD-f}+kzfatp=_?O(ftm7`KkgP;yRY-3lj*bR<?nuHqrP$J|M=v2xQ!NRg$r8&@0po^zr+TAaLmO6|C=Uu%>M;7A=7 zQN@eAy%KXqZA~)%)Y^7qWy?!ydnenUQJY6L%saJq>iTV*2O8VS0C9sxLn;GE zn{H*m_{8vk&`wx8A z!^#}=DQ7CKk~wQ=FZt%Q+I_29>RvtctGjdS>9t#RP31)gOmtmSsV(1tyZ*J zwBFe|A$jY}+G)uP7u5C$*-*8FOp8vaDk_u~yEs^olEoTJp^v{RYQC^ly<5KTQXIw7 z516Cm^D}EX^Fp*5QH_S9&#K)7Hn`)g+N1K0aqO7vl8j1f`+I(}@7c8*j_6Wp<=V&E zTDh`(UumUla{t-oRt6?pCbi@Sv(OeCv<=jgv(PU6vaOyg%J+rhdJfud$#0YP^)$PB zy1RP1Q;*nmbmo%RikdXbY;)dgZPlJ$zVBWf=c?_IG@sMH+P!SGpc=>6py4$S!**@4 zhik-BCTgL&@~(iHg{?lD{IV0F-8PCU13J0$;MyU{)N^Z1a`NN#U6Xy!tsP;WI>k<} zWtbm6rHu#f);&Y3NAlpgwfi}8IYdH=>F3oR698xOdQ#gn`TV@v^_sijA=Ho zMrRhE+zuuR4FR0yM&{J2m z$KDlH*t;Ux{<7NrLEFj;YS#v1uU}R>)j!@#=3H3Ye`pW1iXukVESC#VhOpK}_8nPC z_3r9h?&e*x{n`G2RG9v})p@}v2(8QX`GrDfoX_WS>N0L462%hq;P1e0Lm_-}M-x>UZi@%I)smFN9 zrptmEYT>M9!DYH`ephfyKQ)4_#~u(#P^E2zOmz*zlP-4$iGSI-t(V^&{MGkPOn!P_ z(AZrki)4#BJSD3$S{fF6$vO80yU@yq_XPv89Q{(0{Pn@0Z`b0Je`Mz9qmO};{M`=* zgOVNY4@OqYiDT|(jg?6*yFb`=>Jo*FGhdp<`khD}6+k=>r`RJ3-R#)G62SVP*p&e~ zJd={EHl0TvcI2wnJaYFH$tDj32STnZ9teh3H}=818E^<$>y9Dqvig}R^WC!sL?%SeO6qBQ$4kmafwBGl0FwpZ)^jhC|CYa;-@7$0~dNw$j zCZBoMl4kOA!F?eI2ihtc_D@cGrLJe|$mfHPyuoc9Y8V9gD?f2Z{}f+XY|j82|6*{T zmrcHZG1%D)lO10Q`fm`T17fnkxU4N|P-xZ9O!1+!BzGij(o^? zZQUvMNN2P4-SxpYyikjb`jY=!uaxDl_uKxZoE9C+YVEN>H=g?N)}B2#C}|uQ4C=Xe zuD+13smn$|=pj$hZ=S4425%em>(Q7SA3Vw2ae48#m~e}^Z43XE{6F&EJkE})%>Tbt zb?f$aZ}&|)duOS839&nng={PVOhvXBP=bgkf`FnJ7zISs5x7wigQ5gbD=wpPKoW&u zkKn+#Ho}Zi7;OO(V?heuU&F`NdygIj*Q)hYh=Q+DKg*Xk@);Wl{O6%>lr&Fu@#4wYskOA4&xbqksp`J%@30cjtXX+ zwNF9my-Z2C7OZsnqv+c~|0$B_^t+cWfYL4zx2SaSr}Uq0{*(g5UP~OA^^kRP6HVa( zbtF5N2h+Vx$v-X+22YoZJ%8g$My&wO;Kn0zxeBM4>L4u@F4D8^jYD4ATRkP|xr?Wh zTc6Hg^D3UsN-n>+tG_m!kC=G?s0F~zo`D6*CV{%qu2WwaX(WVdYMx%`*2R9>#wVZ$LHRI!nOjOK*+<*$6A5n zs@ya5j9qSXztbOd4oRA^kZwc%z+xBxeXBWgDcV)HBt4W)^9Z7{9Yc}(t6z{qTa2k#rSG&*A~ z*fthu4X$EhVWOjsiSqHeU+9y*BXi$LKivnQe^?-|0A{hEtRv_&^l7Z8XtBjzAu4}S za?z2&yc*6op0abcb*#{MY$~ZT30B54)$9@y;k43&Udp@bn*tp0YF%{b89YS7aqBaM zSy)BXRPH?E2X!lZNQu0=5l~DD{aMm#tgxyXMA-#axI`Q}Vf7#2bI`vx6;{JeSV<_2 z5mv>oGz+OB9gLcLn~Ka$()343E>xsRmfDpj9(E=Bj|!F?)y<_%5&(Rin8Hjj(G?HN zPjX1nmBG5OJG?IJ_V~#wjt&NDFk~3@iTjX-Bo3z;#U{!+oG4>YL5Z?%C(2$0{Z`Uy z{CLjBl{C`Nv%EE@qo)0hOfw@m*qCYKAa9X~_?x=oKx>)8beD@wx=8-5*g0w17O_Ao zQgrF$M>6RY;0 zE4s6xt<-pEHXj$RD&J@taW}KY>=;?~Ph$`8AZB+cksiAL^cM!R*w=f@Nx^~|nrkq} zszm*eXaXS`fj)+1H0;?j2&)$ogH%Rx4Fx1-TdIdfd`|M|*`S^o88)67qYk!yYmCZq zve~Fi+8C!cX+LME3_S1uU7p<5#*^>0A>W?z+k56=Es zg#AM~V};UZQ5z_ELkVh~TbXqX5avNqL(w%T&rdajeun+{)3Vb0-Fu5B35XQSx03R( z5N<@v>vFlTbaB*H(cA8(B2hREQPH^H%cfKP?HcS(2uA&>D*>sdePY3;IPN)8to!`a zODb){89SP`PPo<@qp7842Lsn|)?!-uYbNMZs+tejB~DILmnwbGZ!1{eCuneZx%%0F zMqB$6v^;naz(`w;`mT<`vr0p@8JHXG#KgXFXl`b{84|=P|BJ+awt;R(8?oPF#C}&w z>^mH>%QCJLJJ;RC&zthu0tt|2;>Ep^+N(Wq0$C)LHNiBW-=o(A1GBbJVPhb)$@x`I zxg@V!6HNDq^G=s!CNME(sU9*lVh;DxETgH9ybOm6Q3mbmL!P2jACUAI^#S5j^&uN{ zJ3EJ^glmFD=3)F9dsy3Ki|Jg3QpYhlSz%FlBvvfH$i*%Gs@%MW8 z=z&ebn3UJZwwN<%flgAY-T+=)_%{u7o|8GqX{6JagPcY>ah@#x%Xe2|c^9DxDMj*O zCUaX(wJY}jB5r$DIErkQd&eF z;ypJ;duHC1<429po|y@vXKsi*zcw`|&dOu6(AX;)oS$g|bjSBADrAnO;Op zx#XF0As0#JZK`F(YqZ-U5;$`FdBN;x%Xmhfaz30{-H|LhA(%dOKeIV7tKbZS8KK9U zl9!$k%wDLyh#-6rjk&mRp@oD4#LF|G;vS z`g=!^8i_(GM^a8U-*PgR8~hpH#9N*;IhG)fvyO7V(=P)y%T3p^+oCRVRf5Z%`IbJE zbID~ka5LXB!aSjsS=e$cGvA))#s^-;GvC(nc0BX#xSH&=PkKe|iPmJETsW?I!qF1V z<_WiT^F)fc(PzJf#N$mnMwp9tugyY9i5x+b{Po2__li~m$2PgBMH}N>r{O_^id8X8 zScI8&eL1XzLMH^<%@Q!Au9)33Y|N8VL6cSTQpevi0SFYFS$Z|Nabc}G4kjE=r`ZOy zZM|9OdXx1<1C|6R2gam#8;DJARLaQ(rv!7#T?TWf%+NZa>A7PNsGaqAniQIOLHwFx zGheEYJ7X_?O|_X{RZM=pCYV|GYXyhWqH08XQbk*q0WB)L8r12tS9Wc4%RizWs_ z=j8sNXGH=s_Ui&Nh|(sq8}Z{CAAX=O7wg<3`rAx2>cOx&ZzRzcjfa#}4ZhF#q*HFh zTHXZo`%Wvp$q^7{990tV1Q^x6sC*XWRNlY>-!<{=4?mz-XNfFXHidhwzy@Lb&z+yT zB(?hfw|$@23fl4hT&e=O-UnQN!NWoSYA3tjY@t)dVoJr&dOfW{-Xd(;2-}PkvMK&O zEFvY5O#0i7{+cv{T9o!c?{;TIW)B!_SIYx5Uom?igtP=PRZYqYS&id{!|G8?O4SY! z#zdG|h-|VHRa+QSL+S?e9^_JIlAC-_F=!8-;?wee!jt^yZOraB8+f(gS2j<5wSQJaQ8g`b^RQ{=r) zAlUB~!z8FHup7*T0!biYNB~w0v*vEWh!K}bs{S;HIk^$UMCK`oxlH8i=Q@r&7TY#DW{+O)rjm<_l>K){&Dkg zF|W}X+NgtQpaYSxa$q&Q`Bpr1JNq{k?;Q1wO>kkWHIcPf4s^;={4=J(u`lb*+$O^o zYH*zsuGBjUmhLIsf`wjlY8QK{J~TJjkCr;NIkLi37Q`C z_Y*f>$93lSyaHx$e$R(of=A}|-26UE@bKmK+>l*Qj^~s10y58!Fa}rQ?qpc3rqdHO zQ)95OA5U{HO%;whoVTcYA$v3vm4t|Z6CQ>Znk;Bk+YFo$KYrx>04HtL=~!2Boz;>} z7YF&8Q@Pkds$MkHZmA(k)|QX-pEd!e603YuH!ve#>;uF9Xy6(x$SeCRkOp-=R$u~> zf4L*)0~ChaZB}P{l{Cp^#ZBPBA-aY~t(LdBr6`!H@;nH5JAZ?GO6Toeh_?q6F&k4} zXbHA4+#haFqe2jK({S6pW;fhys8PN~1I}gB+=m$#QQ0JZ8#uqB`e(c5slUw`Z>!d^ zq4MuCR%xs4ej#THwE=&1_h71%xtc=bl|Z8)XtY)PFRE67!h@-mAWfO=J#bfrkMa26 z;~5{Y*7D>3JA7baJE@^Dd>~pxkd5Jk;fV2r0Q2 z*&}f;J;TnXr%W_w&5B!$yWp!he}yYke;bcl#BYl}8wxft%v!uTkgZw%kym8VY9>5c zDw7G+co5rGn}F4){N=;LniUF1zKL{J-yi@qDM#9|Qqh^d(-~vT138i3#gqFy%H-`p zyn0n#xZPG4HkA{dQ(7%c&Cgrqc$8M?1knIHDt1X0RK5A z5QGj(2QTYQ_7PZe>Dk_COeA1xjTS282zA9Xu8e2AG48l3>Ux8&*?!C} zxFta0DVKO-<}dh~VQDzVlTU&v3UGQc{~`b&EmNd88Q9Qh(d+PDO-zx)qKC?pAbH{y zjV*x#born z;3Vb!BOY{GWmIH#UxOMgC>lbPetoHy+HVp!eDAXpz=yrLo4k3Er6sxMPAq-MI{KL8 zi_TqbB9#_-b+yRFNnkES)}7C(yVOpGOJnpjo4?w8o*CrisiT9ruiN8mPw;F)xn5a2 zlkM@FYv9O`rZ243F^%qNZB)C!a^A75TMpATQ~6pR5i)1vThl{ZOypR@id@t!=TyJ= zE&3(?g)CZ49Prv%F)o@mk$q8oZO>Y!@tLVQyYzOH_#f|nFjpQTOYXlOhF3MQZ}bAz zF&+@bpaub7&(G*6hMMFog6f4SOM53({Q*ZiA_T*Ccg>}9WScE@@);G^AygqJ88Z!X zJ2fJ$0Pi^7r}m{4uv)TcxLV@RBn7{nMGhaFxb;c(*0l*3#Ao`6@&#MaJb@Wl4@cGk zIIhTd@T^Z#N_({1z0DEInia@~oJm*~z#Qj@v3-^j34fbrDI0cuo62d$XPfhmT_~z( z679=VV2{&s8Q%;@iC2XHm@{JU0CDY2=LOYynj0Wr4F!{}!ybpVJ2FsO%XMX`)tKsd7b9)`ZQnRlZ2hZ@5g3h z^~BR1$($V3C_}dLQ0_nOO&uvT6SqIjZn^$pc0JwJR4~$09H~vG)_JR(tKplgk;+by zXPF~~&D0vis;X$1M*Vs96c}|>{9uj0CYgRgP^wv9_vAJrgUQil3tY}N=n-fcteo1kcBvS6t3Zc1*T<#T6<;rg8DkmJx1RX=9S=}pjkVT2MGi3} z3$l>qlo^X@MPwu4qBFa5Bw`&*?N{+*WJ$rf_#1bq(zr^UuT6Os1Suyvm}UJZ^zEXw z@jk;0mPD#{$~PdS)$x7ai7pruquh)d1=4quTZ{NUx2>mp8l6ViH%Yb8LfS_uG#gOX z$ERH%kD!ki_gMad<5e@F8)6eibQ0Bk;QG9g&BIQZ79+>EKCc4xg;#>m=1jXhQqsJR z{L0(_7*FQBGFb8&3<}w^Czj4GzC;7e^wwM5bH>dq8S^g zTb^x^RVxBLbV{doCL69`KdQ@mdj@JVL~xz)#kd-xx2AgEQm^+dTKJ+UPlRYz3T$dt zmtIjkzx`F3uv@ya$WBWs1wK|NU0P&+d~m)Bp9k@x32l69$W9!}78j`hb*0zpT6@Ll z*jt?=(z$c3e|=SE#&%wY+gaww;ffT~8fZjX>|Y5n%#!0@U@xe(dpjyDrMJP?sf}An z4yJmqPTy$t1n1ikvGzCi4`Pt;iP*%k3t_U6R|PX(ys2&mg=~WAESybPIGyp|J#4g% zg;RX-1ndXAIqL(@U9Mx!5Mefjk4q%$`)7xC)x4dwHIG>jS}@Dl}1c zBR`6sIw|~LndD_`zr8oP}I% zG}GI~CJ`~B7}yHBl_~8ME-ljrQkgAqLDAtw7fZ1q5N;d-i}xxy%IK{zYWWBPLw$C; zBRThqfC+2(fVu6kYSgzitdgWcm0|{d)|D>MwYHWj^1qHl>)E+B%$VTOO2G(H5mlcm?uQ8>{m|!TKz_x7kGo_g}qwrxW zv2bbzo^*=U84=VX#pYb#af}%8e3L2RBoji!d5QVcN=wxTyhK*+a zhEp1xiE2a)&{|xzRttyji9856S^5SbTaMm@e)r)zBjDpF(HU>UCneG-(rF`JBPYw| zXkaqO&ZMGIKGwrVI!9(=N0j-a>ovZ|?!VN+@&i9d{rOcNS*I zU|cg8lGzQ(DMI>wXYdazLTZyLPNPDa<(+V;U@W>gl7>?6%gh5JF(p0z&N9<+Y zZW2T4H3RBS-_$wN4VCfq*2hB<>&c=OjR%FZuJjT&o-P=jos}3**Uq&a*H<+$y`7hR z+fnnd zqdlWXho9u;GrDHhY>Lw;S9Hy5tuk~=Um)ddQ#qzd%;_VtESA!aPfzKW^VXqEt^_YA z67c2O!_i3*7O^Y`Rn|p1M7FA_q%Yo+x^`MXR6D3W4^U(yPkz-ogde>v{rsWL>BWxh z)ni%B_hw}t$u741bNcxcUrWDw(mc%Lse0QZ>AU;0i>9Sb2fj>R|5w5KQ=7_Qwb&r1 zr@xES-=-o5zO?Nfl9{gyDknAyX0Ve_1PN42nL;u<7#Cakssp3kjbiQo7gC(a&qb_V|^1NV>tgaa+iz@OInjJ$4pKKs%ss! z>WSQqO-=4bQ-q}^S3u%RQUC*6l1-Ncs@3&eDwL2WiUsNo+q9YN7Fn60Zs9kPmmC&t zN2kt|*_eh=u~nYQEC#a09C{~BY_uZf;`6vnc_B-*OGUFIdf62;E2D_E^~|xdJu}IS zVe$CugW0v4KNs6{MQT&L`*V#Mv$tp0{qX`fV}>=L*$rh*PjB<==%H(={0u@4_0L8~ zX*}vcioe4p=Q_>5aI_%dp#L*#M`IY*+WGQj!Qt~-tQ{~?ANG9fO!Bsm2K@;4WbWm` zv=`YKOm$5@X8NGn%0W}mYHLPeo7&VqJwfuW%Y*0DkQq($X$>7B`3eQpvF6P3ba%NR zp1jJY?rb`6%*@@_OfSjbf$*L0pD)fcIW&qxgEVA;F=2psYK0KY&p!Kr(^2Xt+Zvkp>O$2ZMI)9`C&b5d=~vWz_z>sOqn$vi8KFW8vyd zesxNCr(f!KrpYr!E)JR~YoZn(RN6$RmU=0LkhBTh)@-^%M(AzWsAHGsIi2THCW!7@ z(h9(`wRe~-_4Qsgk0pDU0G2zU)J+H2R_f6x_bAJ@%hJv|vjp2ppTpW-zu7b2;{y-Y zf@^aVbhI-iWM#Ojn-R6guci6Kzk$^1Szz%mb$2}c9>kAxX>*c6{39-9+bI&rn}6fB zk)**a?sr8EH~MLY2bmr&%kzkT&D+LWK{C?5 z&&N!m)t9i1TK0zoc-j`CiY!hwmtn?lvIP%7On&m_i-TfY(v9n>l70bVzNdNL1gx{p zIK&i_b7?}jM<~dy1#}q867!3*1%65FUwcha^djun?IKPc3OjWY=;O%ov@$A~lvTj5 zD#K8)*s86A<(gGtgyP)dy4l4!#?|{2af*E7Y9Fp{WolGE2oO7`Iu&X_11~5 zYNxZ)m|OET3pYMu42hXnD6KOFO~W_=KNRY^QZzxnbu@uv60OSDI2c7!qW&_+%(;DF zoshb8qVXJzkZKu@Yol%G5>hroQO%y@zt;!TkB7-JC{>#&XvB{XB2ggu_61?T1e(A& zjt~+_T9~Fa3T#9|`TCMlxy__GsxN2&*rP(&OPadU53wON`}vzJd^v=+bag6y9h)@K zJl)`Q4R?m`-Y1*nX#r1{_U4r<20vLU3bJ3Kww&5F5x-6m*^{@TqFW&y8UvJGT zbu75wTRU>yahpt|B+tA#IQ;lsTE-uLa{B`?8{0Pam=!bL&=}c1N;QSw0d@1pAY=5v z|6pVmA7x}xaWHzj&)h~5jn1^DC7;%&?Hz)Zkm9b|ykN8aoRviZF>90OULLq1hl>) z2piGT9;U*~bR?Wly|Se-tz=8ff^;GSb2>KF)!kxG7um?M;ayB{IXQJ*<|p3YXnA5TXY1_;y*LRaksmY9$ zwXAlRxN!Jr0UF)8eHt?S0nx z*bXL_T}!yL4d!EeHEw69HLG197Y56xE90hwKw4WPGrjNX>SQ!t-`iR?LkxXWweM{D8b(L;t@W<1mN%5Tk?{&%jSs2EHKE)BDJKUVXr2`!jl@5CJ;r_5 zo`tohY2#_jR;Wxx)&uNmn)FfVz4p$lw^wJ#!I-KLO?758gGs|h1fD9h=rvYjg#| zROI0aD5?QJN=yttd~$kanN+xM>Yuq+%#FB_mVf1&!m`;*GvNqUc|~@c^E~92J$sKcOle$DiL3<$LRzbdZ{Gvn8!6Zm z;JpTuPKfwt9k^i|BWO@8pQ{X-yk?=2 z!P|yYPwV*0$#^_lx@9v{gqhjSHiIc|m~jj>6pA^>jALQLzQ}y$!`i%X)>*Npplt|W z5=NA*&@_bcWXhalCPvA)iP(E>-OoPwdvW4l9~?E6ONWD@47jNGd8=Lt@HFB4 z{j7w>uB8oVHAh!ib9G&6ghq_7KEad9r`BQbGZO_ukVfj$#;To_MW_L2%$?g5?_?E#HF#NTIAz|q$THq^dq84 zEstn&QnVy{WV8$LSO=dO5se<0C?~q6J$-8(gog&IOipWpdL4NOY5N^<$7$+<5uoOI z-K1S>EsVfwah3GOdG>bV_y<*@XfStyD)DhgWXqaRvQ47QCa*4ume#T!rx<0ZN3=X* zTunn&e{AhL0aL`*Vr@gm>=^$SnRr>ebM4Y=(}|ZMO}wz9&ncxL6_vVQ#8k>80=kP3 zhM01bn9o>**6Quio8)Jk*J4V=WA(sFOqOv`e7 zfd9gJ*Hf}y5*?O3Qr8_l)1UlKWlJvJN&ckSAl-4ajvjW$OD}~QmMUPkNNp+Th-YmcUEgelaUCI{-CY18CDJ)&e9aI^;Y zjapavgEXac3HsilDVvQ#*L5aB>Mi_bBNrk?ZygMAOwVfu(!Z$dO+9aNQlJ}Aaj@1) zr~4eWF>hp26(V)RDIaY@v1V)n{ajkJ}D~7!8~lttf;YRA>vq=VtlD4J=x_4+dC)TeUq~|@d-idKZC&;$mNo!-y8IAEDET>dfM+~)i$D~Q|*(idL^oI68|Hs zt0*P`6V@gJjy`p!fFx-P5UG77!2(0h6|*Vc1`IXPjF@1;I=TFPEROF0Zw*9uOLlZ~ zHj=OWuN3PkYUsI?rT;9}M3+32R=ZxIA1CHD;Bp|^5yLaDbDW&BzU{{TiZE*jV~A1P zvAD3%=IwSEf)6s3h`Gt_#_H>O{~gJio7hv)4A?~#wZLb~${%PL4t8{sG?27ea>q@< z5`4EdYv^aPh9;?p6Z<8+9R^eFo;r4#wEeRLNKy7DA%pV@kj|{xl4NCMI}1<9axo8N zYQs{M8bLZY>{LB~G7o8n?H0_OeLm_zDdw_O`D6C9ZG8JRJ~_5FzFIVa0S+F(HZ01Qf7LktCL6gD0}qrMGL<3N>Q2RB@-DF16xz9pFIm6HXx1oH;UXYRbl zQr@FgXYRbZ+DFn`j>eZ?Q!OXwQ$SO(Z@VQJoY$ulMFJs^A!xCUow7oM8bJA;WY;as zO#iFLpq5HG)H9@K!*Svb*WL82B@qnJ&{pMbsJ`_lpxPoZ2TjTrw`0nFv`}lWEm6Sc zSsXXIGAvR}d#JeGUrNojl$=Sv?1|<^{Vu^kXj-~4nxZ=-zj6zpA)NEYx5rLGfea;C`JfQhzjl zP5Zv{Ai3ep)x9x!(FcNR^BE(Xv&@)%52v{@<5r=4jh!xTo}F{k?V6;6m4TR$B3h0W zK&;zRpuTC!9VDjFDAcIDJok~H4l1pzjP7Ag*y&yyuZnoIIZk~h)i%;;nXr2XiJ*Da zY!`#!Y{457cCu|W-)y_%V4@^%_#lqv1MU!;OoOBcSoqQ)9AYC9@Z%}*3REbH2NpEy zLLt|)N;kLXS;$|l(^Q&V+VEj>I{U;Vi~*;XEwXn0m?p}Ud11o14#9>$tJX)6>m!XQ zwt(EOd4Sj$p={++K)b0qX`Wfc^Gx+fl%{iYCTo#R+mc|W*Oz=g31)R>u9A5nLo3Dca)rXaFs51SaXp@r)GiLf3mv^p(24PEoUxQPQ74cV2Chp!%q|Dz zXgMc4p(y*K@|mbv+xaFJvraGG_3#L@Ud0X7M+bs<{#~r zlheY`_|EK`2q2$9%BXSGScJssfjB))Tz3%Ar@n)QJ`rC*KeaQX$rEhy6LO?=4_gk| zPzycr$r;a)!gz4Uh)6i=$SM7c5b`6yRK7Ynaa-`5noiA<5hB}%e;k|^(cq82VGWw( z<|};*6}Y7@5(;{zdah}aTWwSwXJ_fOORg+5XQY&7rKEx(onUHPQ+9Bo%Lqyw-n2hV-%x+(1ai&3yt)3gK7Ssl zJLbpT&&%b`HXG)0nY-MM%yQRJkIL8w${tbOE$iq0eoG_@wqZ!o}mbA4}Zbi5y zJzb~;o%qeEuC#(&r;DmEX~;c5Al574I(-Ls;f||KM>7Yp;Od1FFSvq7T)hSr6J?9vnTXqywz9pC8FyMe^=Cl5gDJ@*%EdA^F|y!Gal$%6O&?A*)vRN0TEy8Jv0a zBpJv}8?);M>UKr4ZuCT)o@^&xXk!V+r-LM}|0jRNM8~vv3Sn*bvSV7jn8oOEUQ^)7 zFaF6ty7!Yi(5Tw=ogFF5Ub5_Ke#>!I7k$mIc#D&Fea*k1*buYW*H3@Ve?RBf+_1|( zk)Lnv@{jT!O*+5sU(8V(mw(+qo}b~b`%C%x$=Cf6&K~*OZ&1_pMjbS%b@41LW(i~R zgNNzlaPrDWe2#^=?-P&si+t}p$+y1gzo5N`hkeUG#0&0w;kW!bUb6C}aDMOS-5EH9 z*oShT-I2WJr0^(C@z{1!SZzMJ<&l%ZHWHjb308x;*tLdG)A&c<+c?_hohc z!`;cYQO4yZ=dJ7_}77q z$uCC2W$w$5@Z&A>XC~iyAUwrg&rXi|YIt4WXRIL(-n7nHsoD4a?5knodCy5|4~4bC zUtQi2)&fpZ@vklL*HPmfl}%ljRQ>sKKJdPGDEhpkGx^H>;Z*8gdS>U0Tep1Umizww zAHyR&pBFQ~7S8WaOQ{{EV@|H-p}*6=79O^I2eNHS@q5T1);qg3&YQY8mr^}%x2RTWeKI~1_6jdu-DjNjM6N7D{z z<-nti_duU4o5i5)G|ZX6i?Pihx8-3f5Tv*KB%C|RVNOE@qFRrf^!^~6`4VMJt6bzS z$$g5P;9;z5L8!vB!Q7plcz6C#?!HdNO^0${>8yagMY*qaRwy@=`%EV%mFQc(BXz+0 zJx_HG#{T5auZOe8MPi1FX*ELw8|KdUnJelIbJeIa532X$``Ne0EB~B&$w$l+FrClC zU7RKnFtMPABYAZr#oHDSn5LitudEMO@rTg-eonoM?{$~dtRZSZi!`toXaxRU1hF-O z_={GGL~czsu||2fev3>ga7Y^GY`d$pC$R}LL(Ya|7%?y#iou8#2Ihd=a6s}zh9SV5!rpM&K$hV~_##hPIhJsU=pqO+3kYuBo?r5=ded+H! zBgU@W%4N%sSasBjqm3Y0F-;E~7WWf5VHq`O{G(qj#kEsem5zDw3Qn^csB$vcr#XZQ zDwU1E*+@*w^A|>?N?))h>cvVi)Hn0KY=;_gSM>eKRpU%%dJF4HoH@~}t4m};cmz)i zw$cqEx{#wEZL-;Ms-}r?7Bx-WZPUbBZ`h}4lN&V}4#LC)Q3=960n@_TvZc>;_I+IP zYGX3_o8jC_iRszm1=vsrLjPik=(l|{oU;(aKLbkn#1iMj4*F9RN;tLj7EQ;#811!0 z$8dhaOHTV~I2T#}vu}n+jw=*E#MFg-ZlGwrY{u)v((_X)E61hvrRT?CCC`Y;oVylE zey9U1#dd@kiuJ8Lgw~xBnzGj%XFE0*Q5jE*<(-T;GT19t&*Vgd^Cb!5t;q3A7H##A zMd!GOak!>KdsI!h>JN7D?W$#J9M^jdENf#<-iNC4v>yp8o%saTm2 zad1*ccA%Fep#NmYk->f##}tnFGm>gV8aQO6`0|O7g{J1bl69qbct(uL>E8`!CBGaE zyN)we!Mxju$fMAk&rO-!Z*-0oS|5YFGx-ptI;2!7lCJh8=RO+FOiulF*tGyH!C^BB z95j8^9d|ODteHDU%Y8}t(Xe_LWdT)NS!M}np;5NcLNqu;rIPk-pG;gmKxr#GarM<2 zavzuuGF}OewhtSPlYJ3-hp=m_uf#a{118;8 zpBL8vWtnsLx-Y5L$-X)*Q#RC7?_E|;pAu7C?-->xp@H9; z%zzRV@mH@%;I}?y~E8s>uMCZi^#<5*G z>qcEBgC}(y?KmP?`dBz4W$wC7c0lFGhi%G{-B!#dLkzL^6=%fCCd1|vdo@%hH#7aY@=j)7CYildGCMi$d*OVf^@ZOHm*aGnkCU{?0hQ{M|KwMMaqpiX5N0nUcFm0KWN8m5wz%j~f1G4ZB`wV+Uo3B^o`n+U}K zWIMt(hhU}i2-G%-NBV=#iACl3KZ?Rj(4q6z50o2bF;s$&aoP97g*6$%GG$e}>_sz# z5!eS~2>-rdtEtc&P2k=NY}W|dAI+nhOw5@rppmuP0@bqCC}9iqnXF)g)O96h>PRVz z`s%hopK&JU#&e@CGlBY|uI&}TZ(T+z%O)SCD|Z*-0K+gA@iy>aU^83UK5=HgS!P1P z($sjC{!5joSV1zb$)0BF*ut}D$K>06;oRe~qv1MHgyW~Pp$O${aBQ{NYW=CL*6(aJ z5-7!F%$*Dc=U4iZ8IOl6r}b;@B&Wl%dfXNBp~WMUXPyZc^aNVV%)trlbe_EX@o?4! z8HJ5wzA9>wQtoDH?avxzZt-2ydRtHgnweK381Eq{odIo6NN+E251lDn(|K=0!QN1yibt)i zvE*o4bST&zR)pVO_Rg89yD+?{X3&2m#4p4qyGXIVSK#_BsrH^&N<>gHQyejtWw7*t zEB;^;M|t+J6xE==t+GE$b^5ap9SQQm$))p)pE4+J!7_I`*}4J2O`^$E6pKoXDw8bXVL zWX<^6pw6Qo$*)2k36i}jC)|xGyr$xIgXH}UG~X{Y-$f7bdv$y$ zkZ8j5Fx}Hj1o@;C)2|e!PY|Y)Sw9NrPf>8F+aWkuSGvW+nCVN-_)%B|U;@IOc4D3k zQkwx#+5n7cqSj3bu)?_I0U|Zb9;jQRSg0(-36zjS@33PL+7cw1P;g;&$!&Xsl$X%c zn=+f(XYJ@C;;3R9y)rX56ZX{2+<5`kr(ts0u7qaUF#HN94v?~;yTY-Rd?=#iNuVt_ z`7tFuD8XK7Ya}&kH}f~Lt~b4dBI_|EmZC$%j*E5xUCDp{t`IFr04IbjJO$2??@i^l zQV#eb-|d?iQzA6yA{d)>AS^rZ?Q3YzebS(m8w&R4P0sFZQXqR# zAlATBc}e+r5Ai9WE^UZEW3dVjS0+}G_L5Srm)n|pxs6@|{6YVAH<}v52`Ok4H)^f9 zE|01!bUxlw54xydyS0CrY&%-s-2uKm^A!<@63SrCv^Zm|5+-QgDk?W&)3|{B9ABU$BTKeUW+pUYX<|k_0p1YdOWf@0rY--?R zlYsDXWcKzHbdY(l1WmPw=dX!;{4LzSl{;tt$l|;-OkiP zkA(*3G;E+WG-yfzd!vANl05vAaP|QP<3fNfqSd4dAwmYF0SwC`64}Tk>8SRmgW=cQ z+GhI)1tiPI2~9-kIu4VOR9z@}nu^Rqot=B8?A*g6*}4Dxui+u+j^F%ixO_fRFJpR^&8-)g%yu8VNFOY+4^H{1eQ@bd z!xhIf*INH#l$g*|Nd|rPm=8*rV`_B*Q{5v}=ae+lWC|tuV=cyRY%CW%O3r)|(v#H+Wq8`)Dl_{I&XrOS58mY8_V6}9 zc*De=l#o=Fl2HfQqN^U}XGBi*WIaR~L1pVWmyTYG!UE@QVn`qkbd8k4l{OO<<7$10 zRVUKkO zwP#@cUZ4Xq-4s; zP^e-h5x=IZ5P=ot}ijj>KPW51N)X&1Gc2__cp>G1RQDF@CRK!xJ5CS)XtUkT1LD2S2cTy%)15}fixbw;Kw;*h zTHGVE7~rI>Zc!nT`tbbr7A;x;=ic3wBnNdfWx^mb7s^b?s_ua2E}}RRtfZgSmsL_Tt;D zWE)_N*4`3#Ryc@Ppm6Z68P*L-4rZxim!g0MUG%={TvGa(~m(%gf9`?*I>^w=*h7e)z ze(uL*G44>XOFk(PbG>k0UK-Qo6j|6QU%XQ2+u9^pwjx;I&OyKSQJ*O$Fwq_NQt)yW z+~lNF+(U9QMK)=_S~as-8wW0+gk77H(H$HH2N z2E#%alL6~6frts#G3*{!>E09>Zm5I)UJ!y-gP*+W>lQs`zywgKVSs>tnr zby{-GQ{hUov>VL4h1bYuoy(cQzsL|S2Il;{S|ibx&RAe^w?o4|FGT~#a`v#@5JL`R zFpDAd!Wx>KT0b`X^MG{j`2-2vUpBf`25lb`ewuPY>1 z|B|GGzU0Hd3>VJ$v}u!EynsRTXxR05eBKch48*DT@cp?+nG<>*=UATtvYI7F9V7l#CYHBn**_jxv z;R|~>P0_RCSm?k-O40UN8oa;*Jc$`G+hDvzSBPcIu)QBQ+Bw?Y(Ig=Rs^otyhMKf< z?Tl+VokqJ}u82CfS0`(lZ3R%VRejo>c`~zXA$6|q;S#1gv2=`Oa>%(YyGa9lQZsbA z;~Dr(=_PKfMew^7gb$L}KPQ~AxK}GPHIGF06fu90)E7dhBnzXAh`uIL>mDKYUeg_0>K-f!Ct%37J(X`4`xOKV&doG&cerCEKP}4Lc zXXZCUG2V;KEYk)RZks$z8tHpCaHe?agKgV0MKWY7n5;lag2e zE__aTvTa_e*c^~7M5W|!eizQHrA*PsB1qsI2*}a248YAyv0hBE^STN(JAK)Kpk{qM z8@C9a#yIOJGqt%48-Mo{pKn4vngko4>@Ja*C-DI(hW#g6)?|+Pex#NO!*X)U)8Xkg zasx3lDAP6*p^1om>Dc0N!awp>GKXUiOq}&nx_FviV5mgQ>j4D#X&RT0o%hpnjE{|>_uNR zjoh-o`#<5d<4Ugk=@$x>Ff^tN(%pbTrmGSdw!A?8QpKdh!YRmW_mZ*j%z%>q*863( zBFtRB3a*tg_gVK48deW`0@^sTac1vPS@zzIo5j1m>4RWAJd)Hta zN&45dzl(?v>?63jqZ5W<)ozRSuPgsFB1(MTo6}s&C`Q0tW)Ntin9y9Z{F(5QLop|i zO*!O`Oh96%c6T^Noj&HqC)k-h_zcN@eaY{iA?dD^4DJu-_~o6+NF|)>^Y%6S!xL(X zF{aTtqIMQz#FlWAN{oX=Yi=TVXSGKQ{d=xcbWkZ87X66#^0_T+^R=SQd?n_JZP&GIEFT1|BD*13R#DOX%4FexhR0{KhzGQr@^Q!bkekqK>O#f3XfZyv zCG0_j?!gd%a#z?R-N}uM!Z}I)zwkRUlWJj`NoBc*Z76q69ATt|^^hr8HTI4LWgzMqYteZ&{CM*^ByG9?>KQP4-A_ z39ZedskBaV|c+3@Uf;GMqJnGt_4~L&Wo__B(JB;qFij;DBnYgyzxl7Zc}RS8ymtx zt#EBOxx|5hI-I=lWBv)r`5lGugL}xV-uf|rP4dLY{67C@pG=<1mPc6P{RpFJNG@&eMUH+ER`AI-DD}!eRZ9m(6*($Lt}YL@Pd4iHu2km(1Jd z4-lMQ&CkiIfDvg;ol3&cY?AMK9q(rM9NuX|#_Rk{%h+Icu_4AVwbL2@k6iCg{$`th z!L(r(-;B^h^^qAJ|7ou$e$Va6lu!7pm%kf74g$k1m;<-5>!h?rKGx5M(Lpq_mr*i*N$8Qq>-GV3;f&YVYqH*frnOFYh88g+Li zSML1e#kcu)%}pynvb0vPF)p#WPZHhcPk)wb&b-}!>4E$4x&!t@#vY~yyBcT<5Zm{N z@i#WAA!moaM3b?@C29f4qTHh>tZ!&Ioa{YHvh^;z9tzF}-T7q0C;gfI-!Pr#Kt_G4 zIQi9ff7)tSU!%4qe7)M+0|AR1wCm7_kv~yy&gjd#V@2^dW5dDXFyO?tZrV4n@JUs)-X#&PIq)6Om2ql$*d3JTM=}PRe77>SgZ+2zz;B4+=SoL zS9_a;R~E3pOTWz0lZt9|wmF~tdWS#v9A+q8ca28XyD7@rmu_;;>wTNu`kWReHlOsG z1fGqq=*ofA-cR|1YX#5$O@2Cde1wh9PdD8$!t|KfN<_AcwMRSr8Ho7aPx~|Z5%1Ja zX#gCo`(_~g0^M8|W+VVi-ZN_yK+7%QJ|*Q7!2M$}AmILC%7|jIpX$2Lh~fuaW&+u7 z709(eLrYT0HYuaFC9hC|^y7`zwo0(F%^EcQ2*I_e$BbT&awIfFBs-%)qvNGcZHhD~ zQr8RU$JgCy`tjZT94(56By@CzN}^P!wA3PnnZBdgw8p#SU+(m)z}~yde~6!dx(gIY zp*FFP6L{&@O?fGtWY;9i5TYZJDW>-&REmcR$pR2|Qby!X!Q%zGH^c!mGFO+}^BSL! zrxMCp(-V`+9Efte<0XHac!p7yKW5CN%T>%as-U}uXJh8Th@`j*Vy2y{%tbn`LSVvV z@e}u%T}x3tz<$Uya~$b`()j9zkxd&0@g_PZQ#9GL(;rCI-0e>tFx02}Z0-H@1GFcz zNbT-P&bZs(a7HYdHxg6_n7d$3p$>Rwv{3YmVG{?t4YME)%iV^{nSp@o8CH<~VRW=#MG>)^@(LpFsWIo7Y z{+M`Q(mU*L$lr^}lUy+DPfJc6@_TB;)Jk%I^MszdwQ(PtkD+ZxZXZ#fNgke2oUWiy zXK}vbRRDDm(3aeJ0zxxkt5p4!FO{j9H7n9;?u>fCaUxTT(@e2BJ_%P+ib^=@oO257 zC}blw<2ZOl;YTptEQq0yNy(=5!IVWpk9`a$`59HIGCrK#e9tHS$z^}%&!`EBGPTf8 zn6Qg-UuExXb#$*Y3dNe=!7hfMOz`V5#sYEVW)>SE`Q?0Lhup)cqrK4kVD3RrA;7`h z*E~EWN1_-6Q|h|U%uaIM8|Jc}pvtE;SABk}sbJo{H~=G<26g`95QLO!`x|Ci%9FB{ zrZ{t%s3-u4bA!2iKDfr2%|yU+L%BOYxTYq-?d#^Y53X_7^*vaWsf(`N06kWRUWhHY|(Nn%goEuq>Wt^rZ{VA^_bU>0S~Ve3HP^x~-wNQ!@y z3@YEv0O5c%n%x4UUD@^2c%^eOAjb?wOfv{ZvmK0xnzQeYJT14I{d5ie?Ota3*o=~+ zRVTL%K8p-KjG_)76Ii>TC+#2z@|nL%!32P)5ddrNKrz`v0p13`yMk)@lBmGedC#+j zSy&_GbxfsjILMW@4_8Rcf56QS@zfl5STtZyJDVROtFYJ)N9q|O;_vVE&zeaP521k( z&c8wpj0sZ9ANP`_pYvB8A{i$dm&xWUO6F9DcLiy|?3}>csmVDH_!nS)%jm5*QI}D@+~>+tNwFmn-PI_b9LJBvxEK&@e|thp1=2>-(##!3FKh%_*ebKFOV)I z>MqHn%btz(Zd5i}H$*HYCyRB-)I}$v7=CK@!BXY=X!7C*{nfSe>1<>(3mTpJQ|~-8 z@wVnx0CAQaur<@u8HhjvIl(p+4eEOqyPS#y9@l*n^<`TnC3yrykgPT1 z4Jbmc&bVSJb!Q~xGn*6|)pj4r$zSj*wbK>p3gXAa_GC{G9MSC)+?wfPcR%5-GbK1? z!b~~Kh8WQhM;KxcXm$FHJDCuU=Cm;~3%}uK6ne-!R5nl%q~`c$A$(Oq0Q?J~*F0GztAG5n)5vNtBKRO+LScgJfhhL0zoq z>aPp_CaAj>8e6&m_hjhP{v4*7At95;052(i$zN-3nm%pq0KQ@B=}_+SFZuodBUex~ zav)dmonP`7o-2ZAHpNYj7)JGGJX2iH#k}xVizWV)_=NcIUVepfEb*lHWq;Q5Wpy)6 z>uf1_^x3U$cCl=j_6yCTg}OfWAMjVrn^+$!6#IDck_Y^Y+H~>PA8@)@1)6p73DX5X zQ|+l5E~jevonQU4)vzl6|C1VS24+JIzi^T%P`FeIRC;ze`Tj%xJI?&y(8$T%|LA|O zgC#8Ub3KnGZ~3-A*n8Ja%r>ZNa0xs1c;E5oCExtE-`~79&9#sE^Vl_}=TU!U@4Hpr zHs;OB&q*$M)bARn{Kp<;r-v`y^+58~NBtvuKQiXS!RBwSe#~D$8!!8gf6Sn5%Nilj z){=s-)|~^kmOQZfjZ6Jno_z5;{>orCEj;}l|CHWzN4ch0Uqg?XR$7%lms^pZcB+buCe*FW#*xZM-;$J=PuPvn;8KxB<_XEELXlcp! z|G+<{FWqU;m5h3mPdx6=9jDfXKlG0;-TcWhow(_Tez|YQN4}bi`JeNkbYN66>4*N5 z(9VZSzV<_ZN$HdNZrYg6ALzRcPxxOy`_I5q^NwlH_Sw@(X>qWml=4f6>i|aAEe@8R z*ftP0RzW-Vwz4Bz#E#&}hOj5A~I=y^v^5wN^udvJG z_l}@&UO+T6>?j<1-^XVaPV(mb{tnw&oD4s6zkhXy#UaT19LoLs9f?1?aItq=a>?w1 zHkR5vyRed!|~!Vzq;_1!sz7Bctd7Ur?PR%LEs$V-y-x*JX| znOk6Ms$}cj!eCEhG=ECA%_?k4*3T<^dCq3H(|OjPbfhfu*Ky)#t*n1nsm*BZ5Td!l5D6Ho}5x21Gz?7Z<2M@!kk%){WX{; z*mrhN7QeGA3jKKH4k!s;RUhckA4=KFH^7Ow4(V+uOQ2W9TzeW4=n6P%wX7N1F--6_bp9KTwdn5=HxfL>JP^44y+N11| z<;~B*XtFhMw4h1ZhHNLJXjgW$oW15uI4@?ch3xz+Ov@t|zS-vvPires^FFT*;m{NLSy)eOTc?hcG1KMWwT>o_up}Fx{e6V_`d{4`YWj&S+Q% zxXRj$|LY!QgltV)jPHKe0|K*}-63zUppFmvyF05>Y>U7>ouqj*#8vX{N+!1kTC%oFXmo`r!(CZV@#hBpUs}x7*!50A$fU+d)wP7PAM))H2vW?ERg4w;qDJr2@$nc_q;}Dyu z7h>yol$24M(=R>03g*6oMjz7V>r?BEj@#BjwK85KfBHo*t#cWay-Z`39+d-?v;O*levi!g=gPBJhn4(%i+90SJAbVO= zEQ5>AK*i&>aS%j1P7|6(>NE*S@(jzP#?n$P!`rZ^y3q+&88kORZ~jO9$%_VdcXBpm zC3()Tg9SChPM$5(P8a<&$f>PcCz56?(EwE)QYWWk zWN+{+vbLdVA(DpLQ`4qsfBKu?ujfm>Rp!RE$~@MyMW!Ju6}B?3#!|MGL!=~=xBWI) zvSM7>@+@-bz9)Yh9OoscKN(D_`D|e3`BOONnp`R}Oh~Cm*7?N`9{{mW+ymjssc`~g z9B8xvBSY(WSY488xN*>$3X3ksoSI_aP%0+hdODb2TiS%EXocB%`hf&~tFASa;eon_ zX|cp{PR2iuZO7`NChN#>R?BRa6lpsl95YZ@@zt-(Cps%f@NSQ-M6E7iA%rcQI3i|( z5V$Ulmc$)bYO>wgSW5@}v&(mT(NfJ(DtR*dUv=%p+>zmj9Z0;|1Xc3%{|RQSBp_kW zWVo=R5c7$YV%8f8+^p2I*#M>4Gft%rcXCES(M#gr2g`<*R=NrIxyEhRAx(hXZE_^a zbDg!gH~HxAgV|H9rM;Hvpq5a&*mKE0|30{QNUAGh*!;UB>N$-~VV6cd8eCNtShdIX zi~-+w)-%C#{Mr#@TQKZs=_(95dN7r#Rm891jcG$&I;(RVsV<+PM{c2q;1zGGX@%3$ zicjDD^18@(;37=K8}??*_4H8w2mx!U#@+AcO|`hH565jV_rZH>ar5l*P4~w2$>n!t z*ZuJVH*v}gI{Q%PK&V;Z(mf(pFrgpJ1)q~K?Ol^_Q_QzvSL`=Kk3yyoAgo$*v;d>U zy|O*w$W&g%dSzGp9$-`F4B_4?;8zBaJF!D?Rh`R7Mg>=_KqZr;gDV!As>>?aL>OpW zs*Y<8xGXLxZ>Mo1TGrn20XPLS)e;%JAc19^`AUHgoV9e|kvp4Z?8vu@K=o42i;jCO zZTC4M@$x@#l*n-Mo<9U{G(|hE%@f48-F?tPhGsGVH^Z0a>o9DFUn7jM{xr@HGnT4! zXlcF3?Ab_61O^qdz({NC8I=><>yptw1~Y4T*0SrAHMgX<{v==h@8Hnd?d(jO%FdWg*eX2@Nm~A_1Xd4|esE==p5m}4Q)AE3^tpiAF853Toc@P8_e#;|`sPqdu~fBonCMA7u0$i!b5%9OPdhaer@d?Yng1!D1=#U zg&$~{^D(*0NW!A%Hd0b92QW`FBSvR#`@m@akU4^~^n*Sb1LdUbO}# zL4IK^o>n>2f~}Po)5ck5>Qr9B8vL`dHD9{cue@yS@s)Gp|ISrj9{ZJZ5oPDa*H&J^ z0eY45*FLv$!CJ3!AyetEj3vh^uVT5{MYQlFExwvQy(aFjTpUX{R9?$0T1AwrzU_fc zE+G@JQoEEVKcVzrVb;EGEk$0xHmY0}Pp@1a_f@Wl7gyfE8r>`7ZMDi9;~AB!;;8bb zcqCVOGx>dQiRV}TI-Xs5YrLXz_1Y)D@wq?z{Uc8d|1?**hD{`{HD{wzi#sZtytPMF z-sY{XRo+fyzk*5YsAzCw&r;IXpt2|MQMdN8JdShFUG~Qrj|r=oXO7*HijRW4z^eYsBvYw>!%Zg ze;43s_RL7=n#;BZlgqhip5(L{I&O@vZW%sw7(vyzueotH8h3(Q1=9*R6OzNOJ5}c( zv*im;+DEs8PSSprWz|}!tGQrS^LF< zr-AA+_Fae1gJ_v~Dh_~w1*HWocMl(>DW_r!_l(sW*)w>#_?)0Mc* zn#5>Ya#44_>@7{M>dsfEl4i+}h*RqT%<`2e(8$_~Q%d>y)mMQ=zxXb6!VO+kiAqf<9VFJO-BrIf4PAhXYpHYf`So;t%x6i0z7O~K4A`v?n5K9br@>W(&BQ_dO>t6CXz1CfGh_2UUz_tw3lV&d%eY0gq7niY>>V=8Fm+Z zAbOF^MORk3*UER#Czam(Kuz1Oak8$MMwcgB454Vw5HSQjrQ=sgMELyFg}$DiEkWV) zlRm{0*Y~MjAR?_RO!~8dDNIiu2d|^EhI0SqeC&YhTJE>m&DqhLpgIapr{J)X>)e;l9aw)YIu##Iwt2N45H|43P~`$COQjM@)|BqW9=t%68j4k zTXg>>aVjbR5SNs|7+rN`bk!THowaC_cU9E$2EN%Dz0JFxzjsCF+1bB{`eGDbP5F+i zs~u5^^MY|G&r54DM6n}KXLQyn)nFhx@@l=j5{ z!?1|cW)F%;A9`5=RVMd3qL*zZlzYzg*Hw>-I^N0U%Qjb!j>31^S<6R7N9$J{ZMklq z_Nm7yCVN4={PN4oe=mi1F8IQZW*a}>)#A!IsHc^Akt&PMJ3|pC;GkXbT}7@I32Gr7 zpR1g&yk>Ly`Yft{g>*jctj8#d&bKy!F$Io_F1)_FI=b+>>M_yLT=U?9&DYU=ZbcQV zxu9NIgxZ+wEP}Hga{034W0Uf8F5u)dD1c=a?PFDS z`#thZDGe!8%vA~932rF2sH179+8E5$Qy=PH)4R#+$@xl+wKMj5!lCY_K-e_Y4h=Q5 zp>{CBj;5jRHX_>PX{h?l^-GZzwc_rM)j6NXZWtJVK}hsXzBoC*noUODBG?yh)dl)SM&KXCq59vub1RgZ;FH}haMz)A7B!tm%-OV_}*tEfZo zt&VHx5IlcPwFLYFx&o%_?<%Y5o#-Ih*PlPGwjY;Sy@ej>Z4^>hNA(!+cb9%CxZi&v%jJOqj?_Nql4N=Y8Ab0U# zHDy#c4{VU9RKsf!V;bYGbwkaDb9T}*HGfL&JsvC#hrY)cyBM`eomWM# z6fn%tpGerK`zDviikfB-V-n`%OlY5cT4?~N){sJ+lBkiP<)m4qSb2tF#|1(C_e#;P zt7}ymd??n96|AcpSwm%!AZcaOn|Y@I7-Zktgmu-Sb_S+iJq88|o)D%Sl?Tq*NQ4lh8BMO{wx;-q3DNrf#e*se2*o8iu=( zR9LHPZEOauplZ?DzBG8Mv{C-1v?-@mM5eU;RB7{!UGG%mZd2O6l=kwv6^qhdQom_Z z+KZ#}XkV(sDQmw;S&xrw2!#oiO7{UZwb_-9B8+reH1%w0>aFa7BOORmg7KmGu^?u*<9_dqbx&$J1t7-q3Z1<6hY? z+}j$!r#)yNh9LE-*cGL|T%K z(b6l9JkpiXe{>Cp+lrL=WHbA$>?hY2xz#2LYSFb~DH8=?VT|3eUsy=TK91F4qCg;% z{U%;9QBacshb)+;wq1I{lIZOu?B}9&>F;%3bgql;>8m$wRBv<9as(b5L>s;%*>yL2 zEr#8-gx)E)meW`-`1|~!4ENxrkNAJ+2CG<}B!20!?P_PXanO%hj7;hBgmO@HqHP)+YM>Ke%Ui6kRa**Pkl_r*hbbNU035^ zy@B)^Sg$wtm!Z8A*)93d13E!2CYgSWzuhc=C|hV0X~1T}?KVj}Xklv&K4cbssV3x> zB8$+~OV^d?5jR&#*(~AzEgrF(B|D>cde=hrm$8#7FNi?#?^&mCO%+VXi>{VJY?o3V zN4g8XUC^UzBR)1)sMAeaPRh*qf2;MF+7ND87>_$NSLP^lhuX?wncShVvM{E)4U6CE zMTTZ=w3?El9O{NJkPtwa$ks|lSa-Cp)=Zo0WIZ{d6(D|_B-pxU31&V&woe0cO9VMT zT4F~)a&x5xE69HUZk^3=%OZDxO(#A2YiiLF2e~B%IX?y5b7UPD+yG%`WeM>p2U|6R z*l`dOW7UEL+AvYXo*XSjk?mrAQ^uKqVnHs*Dr}nm*wzY zldCt{I`d`a`>g+t&GoMg5NP1lSZ36_E;_?>R&-ICxs2}8%F0WOJ>}#%EMWgAn7<*7 zLrIT^XfAfPzF$S8@m#^IgnG9wy3~~)^lvN>adB1x`k&R=xbG+HAQWK)&9knAe&gm! ziYW@&14epwMz6mX@hd{E@tU3KyG6(5kDl&w*>3{E9`@095Xc&)p1G`MAd{X>B73vLhdR%JFA9!X)9AcmN! zo_Ycowa@yS6gejq`-TdhvqyCuDlp5$x|obn#6n|81-}w<9HQFbE~gbn=xFY|cu=mv zFY^Q%i33i5Qk-)9{o?p?_Yww?*W{K{R!5WBSL7K%;qvUB*-@?WDMo&1IdkL&mGo1Q zy#rlq$*_B|3~Ca9B*nO^S&ElJZ#idlit?%ds_y***lZBrvicZ>Bk4z5WZ=Y|Qx<9g&`bZ6(G2d+p&!)^d=S9vNmIW0m zeW2h=-)`QFXo^{O3=3=>4J*^<+EUVkX@pmNv3L)sL*!=6w3}7=95QLHcK+MWSbHyc zh!!yO*$|m~8FQ>KnaXs_qvIzypGh?|*rXU~6-+VMIxYq~osus0gMA|7RIaAca^h%CK-HFU9z;1+}<*PQ*(}0SBjt}9 z(y(?rzatHyPp0gc2CGLFaPew^H9|st7H_ zg*I1$3qWVii2Xz9qsZ{K?Cv?NuR;GHgoG1I51{ZNou}`Z^qsB~&Dx3TP>R(pOugtt zIh6iko#%`vh67C%_^pWt0bzLfkx!%{Ic_8`{fI=VJpaOaC5(fm)W6|zt1 zxjl4(#koBo72-XlZaluTl)P7zb1N|k0a+LKQG_+QpGQi`rvj2L{x$Gf7xX_&J{^!-@|nQW z_L9#AX;1RGAieGffU`45XCw~<>8j+xAYGPxK1dfO55eYhk}m}5?@P%SgY?l-@}(gC zYAJa*NIzdnz8s|AFC|}5p2k;$fm-r4rEPpYNLMER9(0{A1&pkKFf5F*-5m75>6d8F zdjt0#^}|aOFU0j^Wq3H^j9kp;yx^a^EpYD(M6kC8%;vnGjp${fe=TUPjUte=SH?EG zwnFKM71Ua9_Kx{cU*iM84Lje%9@{p*cDb*iK3MEGm!&@vb0mOZHR@hxn;JLH@o2A2U;gI5`ZzS0wq_iM(xEJWCa z$BGNOyQ?_4BXIvNKZm{^0$OO4&{1hBhj;UyMTcmm)4FU?JUe3$nt@5|%@#tE5y0dB zK14_($ft#RKpbSj2*Psj&`=*;F!zn&VEyk&^ zMxsU&BO**;t9`ONc-TduDRMVucP)x0H#k8SVL6p^u|$lptSeRYqK(92Zqc?R7L3M4 zHL3{=f2P)!$^5r_RsB97=0||4pxb*OjaxBJfA?s=Y*iC}#{2*CsDuIAcr~TL&+Q5q zBn^I8oIDV?2PF+?kD6&3NzFv4GTi5B+QJyt?n4Dt+SwNhinOx_1NX(e4HZz!XrInd z?#(s6#Dk0TzJ=~#&N`ZBU*>FCepYFfC}m=Qq5F!cX195tCIGA>MKr)@&M*3H5)OtX z$QveE8j1m+aLt-bLw9Fzx%)KN%s!IpI=o~8JAc*lFt&&3w08pEJ6WSl?lvdj|fZ2y~A+r>+f?+Glc9#@ifM{#Fa6CsEu=I*>efEJ%()!%RQjlBKa~B zv1gezda*fe;-kBG$EQqry~^p^Ei@R|Z|i$y;x~$9dy;5=49fvK%@1P^k6qH0A&7NJ zB(Aw9e3AcW9nbsSXzBPnfq&GFFHzSAPxQVp<3f^hNSf*^JKepxQfJoDuqeLX_5s z3@$RV4S7D?`z+Hcn7-B6a-=XP=d>jnUln|5*sFca+|mb z-!p=zNp-rR`IEh|gzfX0X9wfB{YBI>0zx&QgQFfoOWx}5V|Nmk|$*Vqg_-oTfMCpYTN>*~gQ4R7CBK z-itju)bD05PB|o+7Cv3hp0g^NL^@^TkZ97Jz51$fV_|0)JKOUU4h?E$`6;{P52lRFNb+JPu`Tr20ZvxOMIY5sV>S7dndR+80u^0(YP_qlX?2Dv6w<>ZCBPrJB zuN)V*&-rD?GY2;-<`ZfwnVUlkLCstR(7T*p|<#!jf zmX@_7bhWNB;;;pZUXNo2gzj6x4mL8T7_BA7eJAkm5B!b)jZMC*g)ol=YUMi|l5O)J zIwE#N9OQd}dsL7m-&YLfaoS6MpdiT)1KU#WvgAiv2=av9PJXP07I(d()BTvvA;B>- zFfH8ogB^VQ2f=ajI?yeo6Z^m#%Hs#Ym72MbnH;-s5-)d;1y^WZidjR&owWfo51pup zsedB0C+ar!*>)P6ete(a-?^bWo2Sc8#V|wnLrfyRI;cl$A15^!qWW&|nltq5_s9kP zQE>HjA~a5)pe6x7KMwS2ouB`ZQ0inn^oD66#^gHzd*u+Vr8mM%Nyq|A!g}rF*`}4z z)Q(XD}^K~7Gui;m69)LuI}fp7{) zcn{l224c9?fCo8c_l@kehefj+HwauR1haUIzslMfcd{s)@7jh}Rql4>-_?UOTM(Xo zRqR|=2$3(?R%QCSF7ow)KtX^ei`pmzQKv21SfejqNngWLtL3$zZvNpcX*omi5<@pi zK#dFpH%P}lnw@iabYNo_ArsTx&mw>sEL>e1EI(V(wZgBB{$|m@V1)FR=tV@z zG}>GIW)d-n6(VN93m9$axG(X3%g2yo%n-Hc#c5uQjn?{_BO=$)Y(2aDh-hZxTO`}u zKqB?kETCNQZIQWrKQ*;d#TgrvTN2>kbUGQA>{Xv zKbReHWHhhQapyoU@jPRu*D#b&z1%mW1_RVk_L7waqZsNy4b*>(@1Ed3byv*vl| zVX>!_jur7W=R>}~#Upizuz;Q)3JLhpok}x!-bF*w=d?@_U*E9K)uz%V+WEe6AD_-H zJSs~3QlgT=00`};vs;gf7Bt9h(X`((@AED*9?o;tTSmA%oOp*DDD;uhvECs4{1mZ1 zVAj6TuWpZCkx6-?`TN5vGRYuAdmbZ5v3f$EtR4RR47&jzvslk-7F zssO0o%5=NS>F-|uz=#T84G;J*(p22wR-g2C>plP`%KUeq5gTZv^W%4RCG>3b8$E8e3C53o()Rr_G1x&hIbtgJTjh4=OLy-4E8kdiRX)haTD7TGIW_PC1+$n_eq3?pQ%o2sXqwK%ZX#SB_?_&Gw z9snT18TesDd^G_j$C-GAU4Sr!mY?DK>lLl~PES3sWn6|Vqs+~C2%6k8p zs^SW;ISdwpacM8J*SM{sYb6>AZj0Sl#7NjTRQ5#ccc9y?m`5ImspN${mRTgW_D}%B zR!-*K?3V-4l*1niT&S}kWn)V7G<>I;(*>d&#W2+=KSSci(5qUQtvZIq0;9Y#y!M;k zg2EVh%fhBP(M<|hC@^Dw zzOb;*w(q|gCY8<2r)xHb&%mP^hV)i(@#yl!ix*>K9+Vq1RI%dZDv9(GFTNhmsRO0t zKLbZWhgT0k{hB?^uM7ls#q?`|5BHz>T$z54N4EU8ifn0_&v3A1?-azVuNA_@13m)o z%&m^5KED;(nu<4|v?z#rI@7uoBsrZ=Fl$Yl$xpzJiN~KR<^`}nl~?r>6M*9BpLh_x z_crK$n%%S-T2XYZMVtfr*M#x$P0&Y$n7anoh>AWy(2^>^6MG56FBBB}GYmw4S7sa} zMnbJsXmLNoLffq^rGKumhLNefg691N@iI_JeWP0Ey=HWsg(SN9R-vBWkuBZCUF0XI@c8P-{cr=6IeI0MEzAdxPgOLhv}H) zH6(T<*M)%bTK(te0_b`jy)FcR#SOfsTIsKj;~&z zTnK-SL2UTJm{}U`J-Bzru2WMR9E8X;#R1xjaPF`P}{5EjE&!;xlbB}WN zIU70NgZ2NA3km)12DR>K(SK7!JdM?<2Yq^P({gH+n?RIL4E%S2G+>1L-TyKEWMu^I zPdWS>n(+6Q9=JE3@G0Q`)V-SU;faQN^YP;BPl5Y$-ht zqz`NhefogVXeOWz%=E~gHPNn@^f-9e3ui&g*P&IhKx_sO1&WZ(A{X2#XO|J!*@{uC6Vg?%;IG>3uc3ih6T9Zy9zy9Ax+}33ay1 z3i2w)XvuM`vG5qeG2mRpR&3zGDX2DsU*iU`PMrV5H0LN+5!|7u^tN^`$J z4wv9{GhjGJuCb}4uKhGf&hh$33u_AnIb6m3P%5VCZ!`QD4Co5E45KPXp4077RC=?* zk=^Gxsr1$gN6&G=p;~8lj=G6ACY9*U@ipd6aoPsIVnVMWDLenG|9s+zVg(8 zo!1??O-BwJU`G8M-ajKPA(7S*%b8I>*AF^5iXxbESiR>Lh6E|QQ$vtkjIT+~kpw%} z$Scmt%K&9!OHlFQ22V8U2lF=1tn~&89rCo~+bmv%CiIfgf6FRgkXRp~&-Y=9wBWiy z54|M6HRv8`4PG3UJ4xjkUESw7l`9(b!Mz`W~6JGyNZ%SJTRNdN5v ztpR6Jghy!rD$AP~VReYnAoRUl$5ujM*@_v;FM~v(`{U6}$5WbTI>vuUQp7x`qIzj* zN$KaW>R$!N$;(jA351#j{m(lo}M0pZ-Dlm?>5NnKOT9xVR=dQqQbPN z_OKYyd=^LnC`!qdA}Jg^Nf&w*Pj=_nO6n`cKc0w11ldWaMl+^w@GMzv@vcNTFLTFd zuR4`b%s+*G>V>9D?`T;TbE_?jq4{IofI^D{?ky}4^0Fnei*EIg-w^u3XMQDs5?}Hg zjMr!@lE8$%EL;MgkSQ=5YeB{ZHb$cwl?%tdOWON7#@~_7m(}g%~EW6K1W`T zG!;E6YFu$l&p;`leMC3}n%l%AjUow7)>RAkjr!Dkh=LEk$z$TyGQeFs#2$#?18 zt_wTe8_4`liyBx%kECVmwH|4$jWi>*BFowR)%Nl2MfIbs=hE`bEV-0=eZ{5Hu(yV; z;=lMR&AoZp_(qI(#gAJ*GW2-MRk&)e2TQdt2e{ZMWY>1aASW-Np`EYWyHHb0i#LBP zzui1&x!H19Y*u!#2e`H<`}I%C6K1zO(Q-I5@6{1m@bPGBV`_f7GXHIPa`Z!&Ke!#( zy|G_=DP5V8UtYXdJ5IBcBhYrYUX~5tu$M>u5?D0+yD@vezvnK*@%-9SKD_6t97%V4 z{Xr{Lp6>eEgTzPR{?XvNVb3s>H>{0Ozuz*TX;B6pcii`-_-%P}*k@a=KjR_wdmcDF zTGXV^`+j?RG&=|u+fD@8QJccC*~&Ab=LCzgH=Gf@GAP|wSs%SIpqSr3Z-~}%_3;hS z3l8yB^p&h6fnHPCCG7Wq-k;%eZ#bfM{?_M5E2*9T{^v(;YJNRid1iD}_q%q0Tp2&C zYGGFTx-+BYty^+DbY@f!cHQ@jGugU#=*@*^MXzN?hr7>;4hWyzGg2Z5`RnP0_6G zx7>xPr$Vt$gzD|xFN$Vmue>7zPm9oP(M<;ZD_IG@YO*mUW_OZ=TXY2E?x+v=9`Co004(J)`TPrmdSF;u8 zMoUL+^PkU+ri{|&L^MQ4p2{;13P2ct>Z zlC4pDcIiJw9Sr8W^P}nAd42Sj24`naT^d!gcb*@O?H)e7!;tvh^P^c9R) zgQC7q&}WtMus>I>mR-(TGBn7ygah6Juj+0(~C!3 z8ugESadfaoFra}213n|~^}Q(S>mI=_yttrX>OYAshq?;3he?U#%IJ7dxA?N??(mLx zWKUccy)<}#cE;t=72)g3_kHd1=*)og1uuzi*7;{%65X%!D_lMx9ZU{M z9aRYYDeHTdrvb&b=A^-K$x3#jN)AgODkX=f50{cv=+EScfu+fj11>oVv-aq8Y0}>{ zbsv(z%}(1d9BC&#tIX(4BYUU#ZFyl=X>Yr!xShS}s%Sy6nN;A$53)sfDc?*g&@r1y z?Yb&DBY0c3;N{T`!Bg4YFORN-?-#rx>Y1r>N!sETsdobiOK%_&G+xoF+70Dw^DCl5 zX2a*IY-*2O#i7a(*%OY{V6}hA?s-MjAM)_;X|6%_0*V-D(8}^_QMzt11ko(x=`S%) z)kAI3{3$PSSwTAzBWM^&WYv>Mn&`M36~|JHf%(5m!ftHI@k%0^CJcJCf_E)h4VQ z)F;Icel8lVGrXkPKhPL>Wfhp)#8B)1~_z%|kA2&P+}J$y|xulv7-so(5R z*FkD=`XEU9QzGwc;LNqm%A9~yI1!m~5^K#)hEq?0?N1dSuM|pW&eoh-~Xi)n!B7r+ukCJ#1xKr%NadfI3VS2iC zgMF|@!qIbVYI(NWa|w&vMK{~a+N^mEpcVXKr+@};2rfGXrnCHdfRG_b@Gr8jHlm43 zpG%}$=Q-bq$e!Eeob~X{u`mVe2%IaQ!P%+V*lp4Dna}l1vmTIiAFg!ux+|-2->KQ^ zZBcJyfF0sN9&%fN^+5DtjyGKbxC+$YdI$UaA`f625doZ z@#Q9j@!k;j>4imwf-!<@5yxAzmxsr4maHhRVI0l?rK_t%B#HX1 zPmT^u2+lc`l9r69Mu1~EEoJp%x zflQv?$v5+1=Ve-FgtmfP%Z6MiIwmrppStxhIa@>ud!NIjMWWD5yV)-mC8=Mr z@N~A_Y6wep{}d=P`k|Vpzp!plJy!$I85AmXM12;pR|2Bv4kpyWJHe9?Trf1RbAWX$-Z~%6)R)0H($t^1Bk)qNzHxO`)wRNJ1xcA%4kXsb zta@EEHQ1QVzb)33u%*p$8Uy69xw>Mvgx^&Uz_Hx?!G=sXzk?JMu*ed4X+(;EPnR2ksDW% z&xF)QXOZF&Cg)~Py*8R&Mz3Tyy)v4Zx$C2jIR=6|7ik|biJ?^Ypi7mQfUBfGE@mfP zA59-}Z7#h&Iw;tjZP$+hK*EtbH~T#R#Q`O;D_L+ciEkv0Wc{y$G&h28(0m^MBF12j zl9v${$R%Cn3MYsl-IltL`WTd~EspCZLeJw)ua~oaM#+j|oo9-eL^~$^G~d4wzR0cI z^JU&5*y{RyB20&SUp%LX1J>{h-TAlN5KTINbAE}~j<;cJ+D$mQ0Dz^?wx|f-dg^mf zdw*;QL_=Nb?Z)Ca-Sg<@4eJ(9D?HP*8A#J@p=)F$uleM`c}Q@4{`+T~TefXQkob3= z0v;vsPTgCKf|?Sw42_-6nEFp2!^(kNw&&IOYAzN4>MYH|$3b@<4A$ z;mf^VJ`AF=^sCriesMCp+%Nk~e`17hWt-j*b6rd19A4>C0>t zSD9@I?(5wJg9-W^ahAj`JN=DOt>=9AVk2h#fT`3m`65DRrVaWP!%aQdZKko-#%RXug{!L&1RU4ZE*Z8Evfk|GRNFKs z+~ekEl{ZBP*XD`x`|Qd*z+ITFc~f-m6eZNL@n>OY<*whR?148$lY;r#ci)8VIGdKm z&VKin=-BS36*n3Ru@RA2oG=?ZGQ9KFKk(R4bk$-KBNdpw z(p$>)01&IIh5aBBn>>ID$jpYkhcdJK z+$P4klFZ3=-xU2Ocqse+KSzg$?+LRhZ;fv5-Q?y22JXgOdu)C(2TNlv2&>O^^G=nH zrY%?dME2-gqjbWi<=_vjK?r0E$lrc2TX3_f`BQEtveP=Z@b;T+ZsEzBqn9wwo8A^J z?_qHslbBDF6(*7m)9v`qIPgSi9wU7xyXS4}8&%4F|F-DL@v5UTE*UQa$eyd+o?UxO zG=;$bEw@D1@G~)s?%?M$S@iZ`ZMNao=&V_{+>QC+nG+-oxSGvXi?9%eUeeJwf5JGQy}}oz5UtO zZjUbI#W%ex8V1_^@51CMWv_o{^qkfR@6;TemHyX7W<@m|HM^lav0pPq{hU@8HR>>S;b_1qT zDSg|$l1dRrXqgf}jQN-BQ%vM$*KLmu9tqw<+oMI}$X|B&JeN5PStGhz-V@C|;EB7^ z*1U(u?(zw4IUVgPPC?|ucV+9|10J_#2bJ5V-uJ!tL?^aPRB3ATzW(<`uNN77<^565 zBw{nJOP#YE;&znN7{L3>`=f&uC13i1=(ytJWgEr5QvUIRi1Uvd5%cl)et?;=Ap7A5 zqB*U?6e3;>r5ygjXld}-Z0iT3nJcUikr+*Jt3Q^+XjGIhDlEa*st+16uv9woPuRWe zvmeCFEoFN?XuNpvj%YbtcF_(l-krT;M|AemwXL)`J*UM(a#~b_R5ogPnZ))p-Pj7rv+p)Er zDVtx+&i!z-xF=8gE3laJg0)S;Uv}4rjp5+bDcO=k!(nq|Yd>OKxAh~@+94m{(;tau z6kJ?1nsc!=DlY!rM~uOCJ=C$!M(_D(bXv=#Vw$t?&)UKcCKQ=Nbga0WTgo2zw~ooP zzi?l_Oag2FbH#DDl|N&ZPmulbYaOc^q4)C<9W!e@KvGvcH zT~cC=fyFg(!|)8+^frqOdc%oHsoZ?tm0bJQv|aWiQ`1&_XKl4joOeZ?#g!fWDUD`~ zmJ@Lq(9}eY*Hl|k3p?AXaLJo2B+?C>N2I#y1+w%2J;%bp<)QK{N!qDVjGC#bHmz)- z>kjoC%i_xIOB#{;jxnX5uCSkAhW_|g$JVqa5Ig8COMW_Gjm?Tu$;Z4+oD(6S& z;8y%_HmL!^>Y$GehStfE95*wlidW+C|y8 z+lXw8Dj@$g`^(3ple&v}nNsI}#={Ml``-A8=)3@3w&!1>-xV#EvYmg4CdDX9;u*hw zh|Suj--`}doFzXXyXn+JO0_eQ6YAM)?_M$bc2%>884KM`$1l%N~K8n|x6tP5(N z&93?+^SO6tZ~LSvr-wcn9d)#{l7Apfe~d+t*8%L7qQXH+$4F1{esQCCc8tH0rS~D6 z@6OJ}IuiqD)w%~R%5%ta1CJQ*!q*rXm-H)BRHoN5hXhq{yuMH-Imd+7e8Bp(?Kp5d+x+6|<#{S^{1i)9CgedO zR~p#e_G%>ujF(4PKI6q{x%$G>6Z7A&BKHB;&HKRANVpm{nEtDyC1?9PIXvvZEEtOs6(xy8P}f7FN}Nbb zo2a3iwsT}~64$pA3dESFT8lVK2!5{N!Uiq@I%H}uKULEFhR>>BjqeoRXp4! zEVW435hFjG6Z2@Hsio}lA4C%`_{SO2NDzipSw;WnOia|PaEin~%Yd;1(SEL+UH-Y~ zu%JEr$mgONTe??QJ6*R3cv~pXrn@x^+KrXxCn4<)`m<#hk3Olqq!j3Pxqp zo;r%H1WAQ|W6PMn&2JvKGwPjElg}Vc(p1M%-Q%*0cSbY%#{1%Wc3T6A%fQx_%{THf zuDNm9-8)HS9_uQyrTG#qxXRk<5*=SrpWw#vHvwaQ!kq*0^?7xLB`U5kPR2El$++(3 z>G%pa4&%BT;>>p5r)Rw_UCp6ii$#`=!ii; zF2cqZA|4BX$yhf5G1)G=yWQK}AgCLn8_Pc?m$lK_*sXPzT#v!d7xMTwL6=kNy;M%* zGNwKdHlJ*qSnW`(yeUne{m_leP41R=b|MWBv+XvS<8l*yf+2`)@1H@oHa;!k%C<`T zDa7{8T7?SUOZ|d46hxHk(Co(1LqC!#`yEPO=kS`y8nBbsDZxEf$`uMilyHnVoCH*(3+Ts0LJZD7NJ0$-Em?WaxM-30GpLQim>Q263^g%W zlfVcpHr~Xgn`BG5D=8Imj=sEZz)wh{E9zQM)Gbdu&#Y@tx@GX-GH6HX0fr&IVo(6+ zfB|J}*vo98*k;xu@`OkRYfAoke@G)OH2n*Jok$P;10_!{bE#aV0(&=^lAm! zDPiJYk)bQS?EeUygn3*=o-)*h-8UEE0(Ffu>KX@inXKcgSh>b45_GjZiojdc5yVB4 ztgBfRVO-Ka6#=6=6`r?+S!G33SV@{K_);{xoq&R}zm;uECw! zGPt6ak+f5T%oUEck`A>Iw6o8q|Ei|7k{Pnv5BrG+_cH7jc)EEuwceGje>i&13ii() zcjv%Ta^yrPqg1;p<&&pCq=up5$V%oze-)%b z@RjJg2CS_yp(uyU(+S?CNpJj*ow$WN11^E{98LclfM(>0XG<9{?4;{Y7H~PtYQXWFd(>UuqsD#)sTV@)9K=mt2k`{AZ3F8QVjj*K3fH! zZKz2mDdn?;GZ-?VEL1z`uIDweTL_rRLa?_>9l^!ZRJL;;!f${0Lrd$2`{;iMdVR+| zDo1nj{GH|DHVp*s@OAtax|sZod~owK&2fP|J3>qqxJ*hFaR` z4IAsA{(^qDkz-I`cnTA+5D01;KRhQok8xy8FBcO^T_$6nQSa=9#6mO;(P*~tm(dun z;PxH_F<44n<^7UB1tLdrE1y|u{Wds8Jz7`C24QuUX)XUvW4qyWu@^{1ms&J+4IbVX zH4gVoc&vDT2qm6v*MV77QU1he9vp1GlcBK|P-#LEf}$mOV1bjJ3LcE4?q_k>8SiHk z9z0Rdu*nt=$0*-lmrO^d(Ged)nT+mfR(VageUAY?)GN2pW?2W~WV(zQ369Z?na4#G zxveu&Da{`t`NWzuG*bFyr+g!td~plhuq`%@RLyb9@>6{s*%ydzSp>i$hAYW1?$8X) z*xZnrkuD|aBoA!5X_86Pq&~)@J7T^}sdO1FW8I8w*Egc`rqsX$xA>TU#M?%-?1Wte zlV@hzcSTbw$}6}#$X@hlv}TbiRLxvn?Q)1}5{k`loGGu!cZuZ{6GS$plAD<=eI%MR zbEY(azlp}^%5MS&HgvZ6k!bQlT$5xL!eTszx$J({QwP{UH5GBdzr;R}lvy`euV(Lg zB$_rw336B26jZCfI6ixX&jsDtFCK{&HoEig$f|MUn^ZR-+dR?RojyhKOP^=eg@3c^H~PRMoLSX}OAGhJ?c_U>;+leUg?v*fnYUwviV z+Ugw4e)`7b*o^ut^H{x+F~=Jj_y}_tGSl2MvF^0oeWs;JacIK;8*xLeH3vhr1Kfn{ zvZF|&Sovr)c}ly?33xE6Ib04m(SLtj_QFS_(;MJD87G6K2LdNqd>;hwD3!9iz8!TOoHy003~<`8rW{Sd z^|E9nJ`AKVeZn7>vj6&a0GH7yEgU9m=4*bQ>jV@)ubGq{C8n#CIY$D}PZ7 zfQDY&vYINGHSY^q~D&X1*>vG(jU---H`H&K|=As>dv zv?gM83B($HOWDltvYE|3km%a$9S9V8;4R*>kMP(orOd4+Od|st^+gixGetO1N1=`| zdXu!wQKy@3v0WH$oLoN=v}W%}<`py;&W0SFNRaOJ=!4_a#!E2Q)klb_C;P^Cqb&^w zZOwFZwdoaHJit_{@XRgX%AQ_p3Bz;z#u+k#Zm!BMjd?- z9rLZ@s>q^TIzMmFNm#Q=qcs?Zh@2@g7Z1D2cO<)8N`TI^``hKk8us;kB0+z|l$$am9DP}!CyZU?4+J*C>N_a>Q zo1+;EA#l4e=sO|&svp@?-;3t;KSM8K>qXZjSq?_REh8skK!56`?DX$Pi_V^{;gZ|a zVl+6r=*0&Z2Qzv<7bZD<11oNrK;9XEBVv$Dd)R=&JJqhq%37V9J^uZuH+$aBXk0ew z@n}{%vrN7Nhd)jv;n_PdQ4H7N=2a)r;Ijr10mDz)4@C|onKX|tO)_#7V@q;*YtwG; zCtKP>^jUiZajm`f{I|B(TM`KNNJtqkXvu{X0fn$?`~zP}`?_*}lb`B&d`T2PvEY}S zuZR^FLs4Ha>>ecFVk`G5IzOv1UWyxA%m}n%1Ulc%b@5he?aCM!@8+Y!=S#EaCxi9* z4tKwch{}BaYTRz6G6}RRJTnQa)=AC z2>xL0G$*p44y5hHsY{k@6`dOOI z)KSXM9Y8ohE;`ewE#U0m#7@Ih_K3A3Ebg9M2j zuXtRSkH=9IUNLFgsd2A(-0u{RGgG09rWxo9a#;jDZ5i&{zfYd!DB;d6ITOi%E@EoH zcVW)od;6DvU$FclTMdQ*UcW$Nn_TGK!iyvrZw&`?7)cDu=Kds_bx<@ggV5*{)(phg z@2GE)ex73EzeV`lf=nAkz--B-d5{cdFaAk%G-1zA{3Ke!xNkvdZ&63q$!6Umsb&ct zc7jy1rQCJ`+ZEH0TcnP+NGKx`6(+qKOBdyTDCptE zQSl*v&0AVr+bRQct2}M*V{ai$%G#?EYp*u2?rL4~B8c)b2=elLG%3{jV)*AJ(B~ET zB|_{kg`KX1{$G|~YM(opT$OH0UJm`e09>zLdK``xPUs1$@{ z%)1V^2vx9fu)b)m(iU~jbfH_U5HqUB9l&Z^Hb|ENhqRvW7TFb++T+i1r5>HhgQf%B zQfzDl9Y2Ns@YfHLDvTXJRbgu)?f4r9qfoiQ&w}iuKZ|BQe*qsnxDe)5P7W$gaEWPH zuk$vu5&j5xDWfe=V|R$|I)Ov4V|QTE4mq&Vrk0e4*+D-iKP+^IaXj>e*!9`e+NqEg zJ(V~NS@CY|oNlXZ%p+E;8C_^5AU{i6lqCQT=|>uNxq;B>4&=MZfo>6Vtlgb%Q?fZN zHB363>o&7UR8vHgJe%drHXpbDBuWO@dTbEAnKQQib*Bp+kLCd`KJQ|;mUK^oGjwl) zHkDSqfK{gx2p7v%td~wtF!x-)qW{t$1pl$)JKg363s>plfI|=9y4v~_wL-7WJ9EeB z6<)Ab&QzMGTB%qov3MiYBkDl7HSdF!P`3%_&29q8L)`0Nu9<=1d~5w&cife7jY}?d z?TMPtyXmL3#4dE0?A3~XYFYR0XiCF2-2>ysIjlvmqfGTP%=mIgLN#3Hrx$oNLd=rc z5e~R6J5FTU>D9S9))=13!ekv|%(0;=ui>n{Kuse#kHI;=YbH-6 zo7_2W<8jq#UDFvrP;Y0GyQXLv9Lbf4Lsl$;)-CQuNPRkC{i5_@;HJ4(9EaL}g`38% zcxA=xwuo5lg-Xi{LK-h9yzvUjz($D#g1r4w*w34KMc9h`TZTDyR_E+8T^GJy%E?QL zldCwnvN#clFZU-q0|$p1aDHqrS6al2^CtYID+Z@9ANkT@*Ip(Hxk_>9p2qK`4+*HT z-jIOW(7U?Cu0h=`uj&%7PHt9JHr_1q?cn|64wqR?oC{5<_;z2Vb>|Bq{ z*E#B4_jTT*a|;3J+?1NEdG@t2d8D76NTrlA{BqGPsGm=ZpTk=yQVE#yt`H+MKHHy`v0jOe7Jo9_V zW@EUtf7p8sT!CkP@zml)HhypYA`60_;YA2zn=C^h?)ME~#tngsf80*_g`~Y<9f!EK zrhh9Tl1=`Rml1QH_r<=}M~^e%?i4NwcLaD1bwb&2T(wexxC+8DVjY1pEtN?d_7PDN zc{p2e;c?vsn=UH|*PdRhqfkfJ=m_OukaHyzeLxQUZ8>poVJJz@5THT`5Sxr zE4H{8Te`$rGKf5Im$0XaFbikQ6Wfe%TJDw8GTGmUbI@EZGm%_IAXCb!>_)uyRlTOf z_JZN`90q^k>jZ@o*lyEXc|)U2GZfSNdcVeFLK%tiXEfJ2`q;kg`7PeD*`i);8S2$2 zo!SdJwJPXF?Hg2cfhAE~B#cevaJHL5R^9AQB$f|yQBBN(UW-^-w4gL(>SL`i0K-dKADQP%18vrWxf z!1ZjL6et+?nZTO@lV`h)Jf^Rl%Q{eP-@Hj=xKUqzAs+S%-3e>)YXa<}iHg-&Ei?Pd z`Q2eDfGy~)%q;a5^lf&VWQFpQoENjOX&Zx2&LCGd$>s)F8KGQhb!RXYS4wO0+fb|dD?YsPC`>=m}ZasZ#46H3jqJf!VZ!;TcxCb2_! zec+3Fan*`@ogUX^3S}SsJ+JrQh9uCd5PgqokX`9kxHPGkb!7Z>vtX|jHC<&wgft9&#^-J8uK}OlCOL>uV+=*2jsZF+HlA8$iaj5AV zFW4lSkI-s@qf~5&&tv26`RRit+L~xd(RM=ES|<=lXhIpnF*zJ0i&ml6k!bd#_s8fg zRNO{CWN6D9EbHw2?1Agr`lf91f?dTTYO`oFPe93bKOOb4r0=F5wAZsIzSq7cyZVn5 z+g+4h|Ho((OZtBC$7oAXy6@Egi?V=>(TzQA2W3w#i(hr$ZGTn;X)AFsGwyIDmI(g! zkT|hrmq+~Zg0`4-b1IXp--_1G?P<3K&6pl63cb}bIZN`V@V3)iv9r;!tW>7#-Zz$2 ze!z;jH)J0@q|y=I+MeC}w`lH+<{QlJihGNfBHnnUJ$C5_;a|3#XR2*t*9YNLc23sf z(@;B0%q@+T&C~kfeKgaciildNmo-B%(UqB@w@+yqWBvsN0@9rn%FkhVaj`_PthI}J zemBMJ?UDQr)*cK(p{r|A_83QW923AlSiDRE@0Cfp7jYJ8f_A^4UHaZ;r)ypBrPKTK z*0gNts!B)pmLTo`@#GIN{vMy}NzT+whbM7&_E2HP3XP!P$0rWm<=B zI8t>=*|<|G6S8U;Pd@Rs_Eo`l*iYC*B7|(qz_xjW8cI9Zuv@<$Ye#%=|GsuD2k$Gr zyFD2L>xD~ruO6%lelF(acXxJa7|(oG3TQ)h>SNj0!gyA2OZLk!P8vYQ$ZZcnYmO>L zmJai5dXHa!3~cHB{*Vu*@5eU_wdg2h!=rZM7c>gwf-t64#;hnm ztlv&NH>M((pQv5&Vn&f!v$lLdvYX2BL_-rZK%nWaa=hRokWXcW<4E3(s>CYOZEVUA z)L7-*8*XD+KbLyL>morQ25BWgfjk-k#v(v9HJkvmqoR1m!CWiIF=XLArqHueOS-as zLiVmG9(P#5ME@XHp(2O4YP>6}oMzss?HU`yvT+?_V-I_j+Yof|Y(7Bhcs^_zD?bdP zrj}u|VS=!jb`jEUVZ6@h4f~M`OlJVp#BmIrL09c3R?iJt$JX6ZT6yU5Lk?TD;s_*d(b1a#gpI#>aCP=nl0t`V2XAy69T zV?&qqe13++3DZw|@zoe1%8(j<(pz%Yl&q(5>)Cdbw&1H>d!=sW0SO4^zie5V!K4c~ z{I>sR^MWK%Zf0q0zz~~ifjdOX9O4N3gDBT_L{5z9n0RVVDNXGv6pSX^A_+HM93k8& zH(=To;(eJbJKH4+^r=1F%F3n=0_A_O2y&QKS>}zk zyPKBAvzQ>vrc<6`N?e#BF+3eih$mzpt;Um1k{KdHLf>neA@pKYGlb__&5)m0Rt3gi zH+apQRlDOU5^&Py<7{*gxHiyF6A zRK<$TYhZ&V!Q1Vu)e;^W*jz0moQ=K_&LGFsu4K;rLnhLwYPYFtbE`>PJnShAM&h*W zk+JcV)ngUeNa5xK34H zUaaw0Ek5uW#eo}V>W#EQD6i{PCJRO&)U@5zxwb=}8A31uAWfOIyzjfJgrr#-tHYC$sR&-Rrcj%@($x0{Qzzm1D~j$ESk z#xyMY9gAIL&e)I<(aqqDH3eA@cu0$!_$6|o-?7=5=8IT$0q0=*8S%2?4T1X)4IfO&Xv8=hQWJ>^ETvaE{5^8cO~}4vNam(qw!uaX zo3OE3mfNijEz-1yo0)H@L2Jw;vznlVZyzSpf*a|2?kFhMEN!-p|Ol~zI` z--|teAs!=t)a}I)%M2Ok?G?|Q#72s>>MY(Kngx{DViAD=fK7+Vr+iQrPm1TyG-LG! z28QnRhHr|^|K4LF`IhXmNuY9fcI%{g<^lHLV;HaY;N#Q>qS0MgzU^N96pk8M{X4TK zCdKm@k;-J=za?8dId%=ndd=ED+=kFLk)0b&!U$%YSxAoK=HM3h{onI6}i3I!X13!u(T#|IRPlE%Pk&1T^nM@{qgv{sugSQ zY-{!YcUE#|Eta!}kAuv;M6C6M??vdcf0-ID_&fS>S$}0>txJ6E@#-TNG8q~wK}qh2 zf_qUq`()Lk_riN$J$nX010Sh3+jAo#?^$;q*Wg#f-x`zZ>Sa12hl#y*F=L)Qy)xs} zMY-{U8c`d&)!qo4$ix^FPMikT*ubr>4v1amdgpG9oVx?$++_z%Z<>VJE2hU?J@)+6 z)zwtb&-Bk9ujdaO@%&==Dp+>rel3me z#HF=x#zVLXMW?fyW{he@eR4+Z*2q{>WZp)IJ~gdl8KC?04x|C$KL3aXJF=dc@r-4K zacm{Wo*@co$}lnkpItmNuCFko9k+1YKuJE7k9m2W$+X^Z<&cX6R{JKXn4=?7 z&Z-vBXlSy(&5Vx$jmON2lT*B!eoW2?nIzg=#X=doh7h+4#Bqz#-5^ddq-35C*^=TD zvnKi7o^AMfJTLq1thlEE&5abOO-p{r;A7m)8*erEayw1{@0aZ-CBNMm(HjHXRmA6F zTDBVVEg_XV%H9dJXN}@+g~Ap$O~7u~X(r%A*9n)a%eR+_&y3rFM{N-hZy}CND}+9* zOv(+usq9BR@uWsKa-rrCedEw4ZZx8&t((h`wIV2xXHApi5RpBWTS|g@k%r*ma-EVb z`6r8LO9$^5Ep8iXdK*nI6qwh+e2(IqqgjAFU>JtcM_Pc=vMm9~p-2``5N8|_@2GRZ zVvJ}f#T->Bx#0Atp^=7x^5@WkS$l@=?cv@+O}?0QK~lWon8}SD39)S-Q{sDHqri#! z@=%*cJy8#%y5EL(CZr@J%EPH?WdKw$go67)L7!gxbh%NWw=Jo4di;*ShmX3FeagI+ zI@p3{!%d43)C_a+IZuyd$0+Wlpy3dr3iL^ep4}u?dZvUduI*|W;9VNv`5NHIMjPNU zKn+)w(l&3tC~}xP7O-u5c3Ki2M8U-Cl6b+4ZW%x27UKu!V(gs*?s`fpob+@&?SMjQ zmnl+Q)0Pz< zW4yG?;<@ouq~-B*ERkRPQ#mQ+Kl5b!aC;kO_@cbRPh;lk!ejF6Kj;T*Q)ty{JI#o1Sf_Y=9X{)C%2Q-2n&_svsynuutc^)`4otn)GbCF_wC||1bY)Fd8+cnO zo`@LSWD+(aK1DXFQtKG08B}L=W%(9kv*Q;qJyXkGxFD`i=+^p@ZrF*8^)icuJ7A)> zFNlw2AbzwUc8QD~6kIv2DX*%UhwrO-xPY)h=6a#%J=v<>cvb^>N-lxPh(z0KB0Q2Q z8oSh4@^aZtN+y;yh9iVimx9w}K0{s(zJtkZymgb=-8`O47wTz&FpxJ{Gekq)`V^gZ zh7BS)ZlcgdNhSWYwtC{719Pvfo9=?{&}LJGt?^(B;faw6d2AYVQ*(qdCo|O}jM)e7 z4c5!lh$@wU>^!Ek8C#+y6j!TVDLGY6H&e$&n!ZdznydBrC&{dAmp@fb$qZLXV2;j5 zo@H0`#VgO8I6ww7jVt`p<|f{G9sTfJglSRka-=pGU`@g0hhRjEPSGjLu2l6LPx524 z%EI{k&RqIIW8K+Uq|LaJh?#Y;L?Dbny0h&I3IB#@-{hoU3baFO<@Ijd zbt}RrD-dLtM#O+%#?O3{IQ#wq@xjl{@i1hojT-lB`+MSk*oq`2{Sm&85U zhYnQxg@6aG<0+ z2q$RiB=O_$a z$lkM*>9^LzjKv2ri%0r~R{v!;o)Im{E;%S(gQWcALGi1}(Kzhj_!+#~O%X22mMkkv;1B1ED<1s^|pK|g`^sxss0t^w_g60 z84YgkohTWpblS0ca5)IqwiS6>pQo|DvKt7WQ`J!5iydO(2(63gm9Q!KSx(8Xl3n6W z5+W_dV>pmjU8YgZTb8&hVrm6|CI9igisV=?RdU?^(f?s}WB{;6P8jcoJ5pOayALe= z^BW#0HQ3kIZs%zFe*yzp2EgFr4MwIm>#JpRd*OpPd}AQE-oqe&qPp>jwE+R^S^1jPM~aC zb7&!}mdHW~9>cm(8MypuG@&OG+2tY@l}YqkrvnA5HKk+hy2!9oz;uanCSr$n%uPyV z%rgH633P2uol@tzQm6T;E>**C%RYV>!5x8zq;?Q80?$=V$ zCd^$q%;{3K>>)>i+W3qCwq7<3KpdjTBKjfZ!r+Ens{;>xoyN!791p>fSWsZKw6@x< z<0~W-_-g~aHi5@gt+Ox`^AgZis*!Sd_j0%;>^r!K|H9?1cydI0oA5sC0#0AREM!hj2VU*E>Z)51HNF{rV`N4zBY z$Ho)+8-&>#D%hgl?DTRPu`M0GFF9>}hQ@r%zmS8um{aC*n^i`HxPeIG)=F3S?G*|! zYx#ruMhdRcl_!-C6;)`hzR+@YL}>+~(z4JgHrx99V7XF86DfC4|IkOZJaN$XOkR?o zl(F2wBT`ExRJC&%@S3M0uE7z-`1Bk@hmOHQ$t6HJwR(J52(VUm`OC?3M$U}-wzi=& z&#CntS&o6q1>r-I`Yk-+eIf<3&ka@Gj1{ zICZdg2RKgxA^07{J7izym`4n25uyr^ZXn=h2h+F-#5y$QK3m=&pNxTWU4Og|!{*!laV_Y%?Jc%569WsI^p$RUODcI;*757#l4j)r?3*Av zY9Q_#wm;B7JU94!cFREAGfg{Al%$;0Et|TbsVB7E*w+W*1BQ0^366;m!;V^YOgwE= zJ1WVtW9?(#JT@M-OV?kIjS~ziw>mzyM^!C~^;(dDt&?+r>#(_NVfO0P@xt{(%)z!F z8jzh>UI8N#q>Gn_)S*iEd`ydCpm3?piCj2hFwNK8959$tj!@6CS z$;!vYeQkSw^Z8QkYwVBuM||k7XE!|1cJAcs-}NB*@=!3cVjDCGBDU84{gwyY&fLeX z?6L>jCe74>kcbzQgglNfn!?wAqS{BY*?+7opM2y0ejWf7n-@tKsny0c@<`1#;pDjy3zeBT*=tsEL;pIK0u za_HATv=cExBZxmO|A9Pl47<1>@!;hO;dLk@%}WxN*=DArw{pOAl-02N@4B0&#u3;H zvQv92+THE4-pb_ef4!q$-km-MeQ6X z!JhTDRT3Nz+cW0qP2tq++P2E$0QG|Q$_YnVOb(SkM&dN02p@TfRYf2Oq>zU=NddMl z7H;GsU$&i_#Da@Fg!Ys6$|W@QoQ}#b`8i@t<-Pp;XiVjYYzg++PJT-Fy|b%wcNo0u zzEj3lrj(H>7mTmGDtOO*yT@0K4`Fh4$2_de@8HzRmxJIv*&)*_Tc`Z$qd{B6bWr)) za-+gNF!1KKa(43J9m0B^pg!3W)F~zL$wMj&rWFb8%^XZ*3$`TUuNjzaSJ(%!-=57l zw6fqB9{3-GkIhLjv0x4iqFA17$k+UZP$t2?+a>|kr*kjESEpr=7b0Rj#fB1B2i)Wp|%S7nZtg^f^w!ykjV-W7nY$kDOH7KoO*@aBs^R98bl;A|a zt8HJ{l@J?~hoDK0`|WY3eW<(&(gmb19*kKkrs=f%`2C1X9pORxYR zmJ|4V;4D(iKefCvq0ye8M$=CceA=Xu;<0JJAJ$$X@R%T?Y`1|`5B>J>*vEG z$s*iODmaEEwon0@nRwdrAXw+dAlBRA(LdkO^maY}z{)%{kK?&LM*x%uybrC+jM zodhv@a)1^O^p^fRU}AWg;!69+7-NSRqe=AB)IGEM%-A}RM;J!Pg7IpO62r;}>65#{ ze!HQUUysR;AMv#I&ciSUy0>) z+mzWR@8QktRp(bG2#a_Sz_o2vWzI61&|srS#Zaxi7@Dq7BOd&r4y~~lCo=s+kl?Dz zZSn{a0`O{%=@aWxd)G1h-<{)GG3EJyWbBRBov1W*+I0G2xSKjC@Cry;Pew>crMwLB z!c#}W3okkWUI65OfEOeg$>LDABt8ES3?5n%5PveUL|pm0fvML^AUqY+#|-q|pxFEv zE(xCpLiy=bZRi^=3yym-aN$9v|6vD$>#q~0_GTB>pRC@0gdL;hybP|8W-Eax%A-XJ zBD8-HS(Z;@E|m9HEuUuE|6jaGqwGK4&KQZfXTe*PvWbk!rtB{(uYEy5Xk>Q3zz8ia z9WZ02R@m*o$c4nKwvcLw)J*Iyxe!u2;~z#@u7nv@Pg9t@CUl#E_IEPs$l|m0CEKpO zoSC@2D2a^{MRO*2qptP)gBrgiW#F8_U0niIM%(6eqW*mRjg}fbl$w@l>MzoVoMn z|GnecHex(mvdb(4VBGMJNfC7zbmV4M`q>b*Bt_XYf9}yJQ&iYnB@zv*f=_ep_<{_! z>w&OI1|J9+V+4|oapmt38;2mxyqv|*7~{%p*=1#to*CohPrLK{n=%bj@}0Z^!2s6= zdrP^UsLO?yZUIu0*y;nSd6(ar^qD`@w2qh4UEm}{KBUS-QD$cPkjQk#L3me1Ch(|-~Xh}vO8L>v(-x_I9?ClNwf84!! zd==H*KYnL!a_3~_0!bi*z|0MS1PBQ`hzf%UA|j%QTV2~)3~q>8ZH0?1Dzz?XsmIn0 zSJ1j3YJ;r{sC`PStyrr?tCm)4wTq%f#Ye5*_xp2Z=FUxS0PXYp=l9}8X6~7pvwZgD zEJVB5o`S$XVD$>)$URU=C%>Uu|n_F-B#QbId(4=4fH}gf?ZsH{>D`Uw7_F zG~1fkd~1gBPl`lZBBS9`T0&7m%OZij=aOFL&g7&#R?B)>^htawh&$fKh7x#MG`e=@ zY2}6jcrfS~_q7lijdHIXPT*}B&dUO0^t;Rl0n;H~m2=KE7#~Px30N32!jVF+f@;IO z_&x)P6IfKjwWcQ26Hb_3C;W`;fSCr(wO8~b>u{>Od?`J%`L+lyTru%#W@;+Wjh&eq zoP~7wZD$TC(2s6<5eg4T4hfQW=7!zku!Q!aG0OAlGiMdLfJ;D>#2GqVm2;Z|x(pOq z|IVH>Ni(3yP_h$(m^v@G5YVy!!Xm;Jecj(vmcyUgV!P8s^1OvS+bfjl#ZZ367H3cP z*ou31cHI3F3iYCK;U-3(W=JUOLY-Y1Ei!6hu8K`73Ls|F=9y-&+j1uDk;Vn2ll~Do zB+p#-(ikIlgZ3Cl?`2lbe@Q_DL^fmxMPuzou)qu5?Rbg(K(J6n7?KR)9{GaB$Q5IS zAz$F{6$+MQd1Jt4dyKilWLcRtB#AD4A=Le!I4VTy!Mk--uuy)t?3d%d&?Pp}s&K=B z$}D1uA@`9=x(rs<)^%_-(q2?0R`ML=}2>$5C}ctUa( zIXIa2lEK4FD%=$zgO}$(V*4KSifF>*y1YswKjDj3N3$38rSuJxO8QhstKj0*NWd}6 z_RQ)o?jjU)gOIcRj=&6CLs1MIAh?%YZSE6K;(oi_`&e%vNV@OokmqJP}9 z3W}M#HlAm0x8ru1eAt}$z#cy~aS`AL%j|&vV_rf3yKoB13i1gdg&~Lf>E14$$8GE| zR#&Z-jvLS8?qCoM^aYUEF+GU%ePGj^AUF`#D+2nU56RU zBs>ESVt5893BxlO%xLS-JY5Dsn$u;X${1!SE^qrnm@F*ZOS2=Rp^AL#f=kh21+f`3 zgkw@KGA=}c!II01)8|P&%;@#?%g3flt40NeM%+u%A#!q&zUkDRV0II_%tnmjz@gf{(QmWkN)ftO)~)bPDE*_oi?N5;8{*JSEl86j)_2 z!D(%IPzH42m~YQFo%DU{R1H!-T>WIscxEJe9+7IwBKCiu$OC+7LfTD+~ z6UT@S4NXHISVaI6pW#uaV$h<=)kt&bMyvG*3R@D7nS21kfK2PKtX_kF=LdHg*mgkPS_Pdu)T|Cyxq7y@sO7FDIO3;f4u*F+@&?fkag&5ey+S+R91b zg+kR`L~u9WL^;Nc{I%!c+OvEZ88%-65cnixuq~f-$`|AhKWCc``_f|$%y0^*J&${X zVM2u@&^Rmyj)M6Ddi6!+!*gaUn=4?g1!A&O6gE5Fh+OcS0ZOq6OWgqeB-?<{uMKYL ze6Nsukto57mtzhKOq&UWwi}1;EI?&q7@`wltaLO;nq>c z?3r7aHQs@V7h&dTEM7F6d-Gv3B-U}FIuqiF>V=VMoJEs*56VTT3CU3yNjS#h3XXAj z9%R3Nmka;i4fsx@eB2VGyDyM}>($1R3x@F$12n*o*aXRmi z(YRRM_d19ZkrSvbA=6!^{R8`)z{7+`vo1uov0bSQm6W{tMD^=UhQ9_tSz= zemPMIxlJ@cdlAF5y`|q#%zsJXx%R-7jw}42PDX0dx3WgTi)}uFD_MLxkf`q-%#fhn zQamp4yl}HjlmH>2EIA2;$E&PT`knZaz&}1FO*>}=C%~~gIKSLLZV99oy#WKa^*$|;1(L^qdE zEmOjmabonI7?=&Mf$jl7=1uuY=}0#|oHSAB1(*0X}0Xk6iiz;s9-OyMWO+>YHd|S_a!IVd*+CE3;o9Dmdqq z^C`&punWbIv)AgXld<7q=XSwW1N3Ppr^68A({E z#x8+&@i4UHXxyV(aX)>xWe>HE(K!0KtL(nTuFOWd`2}`T<=vp)@ z(x^t-GWdbs0jZcGo~H(|2*poNfF6+DZ$dqQ6N3XH$m7;dEbdn5?R(kPI9`l(T7a$W zGK4l@(uY-2v0&#jQ=#D}%)27*gCiMJ!H0-HQ5xZVS&{hV``SAxZ$8CCER2n0K9(G9 zq?EvXS*Al7J!jYoE0l6^tF@4ntN9S%;XE*j>GTdG7tIpS5o5*@kx%i0Ek5viOX3z= zSPQe*IL8ctZnk&WLS_v1fF+v}w+0^48hS{*1J5W6Z-mw+{?q#8eJ}jyxyV)^bD=Y_ zYw>bfcF2)JY%F(65ylH*cZfpfVt2^Y3G%7fB}NHBE1i85#qi1`pU?3$RUQuF9s(i&&*sB5UX!>~kEgqY;S zzPK^BFtp|n=OxD!w&qAV74TF7jlT%eKmz`Gn!FZ#(2!e z7PTn{bFl*+-CAN8gp5&&|BPmf?c6n*U6>(ct#iR(_E&7*M6(U%LWL3qwBbLjL(d5s z#&%Pc}JZcGjg&9W~YH-;z~8%a3G8i|nr++73_+G>Ib zf(wXai=aTs&JaBUV2C0tz#*4IpfEJi|BO^)7JL|R9r!O`GNgHfy)eL9NyCDJB4&2M zc%}@CksNaeW(*eSZUn27u1pNV#5H0wA2#zb)k@&u;9MOe9*nN}(ov4whmaaYB3O!d z7wiBgiz;YSM7ZrV$uY{=^Z`LcmdrmRqiBaQir&&2&P;KZhJ0Saz?t!vX~${zcx=B5 zV}^u+39R4?3r$Lz10{SpXUg>hwY13m{K+4*3 zWhN{I3YZX<=?BkB)n>!_@14ah`2W9=1Dt=j4nRg)-S{Jh@Wi@dxlF}@FgT18kpf?Q z7t%mRv&XTqFyLtnN6D<`=0nQd55S@8jDbL=bUR}J>>Zkqq#q1T5|uJ07GO-#gb;AD znK1x|9kgebnFUc`Lw>T>UyS7BHrx0IuRsJ-2=1xCA|QhmuTicG_GVX^g(H+e*pN)L z#S=e~IC2vu6eN`xOBi}<;$|_LS`w?l2+#zO{#K{~zPQ2-^(}NlADDif6>eP7V$zIJ zv`Mo86%6G+ffIueiU?h5OJj61TyB!GG_b_FMp#A0^?)UtDJ6aaUjq`?@MJ6adQt*& ze-eIRw?L$Z;faLr;>W&Xo8WwjKqBKz%D{la0g}NMr_GUUZj9tGL|$N3ffNFX3>hx_ zh$MVS>72=w4a7Ot`^r8dvazf<6I^BQ78{GI%NmA=X=4l@F}Dzq5j2qy5EH|cMZ$ud zXO0X{;FMhOW1uEt23Rxfa}OSR6nD7Ym}t~EChj22Txn7t2sMC6ktnc(2n1?GLX}Yo zWXWq#3uAYcXbF~x@tCso0hm|_Ei9ZwMM5WCAyQF9vpI>?k1{V5QM@2r!37F1Mr|e_ zfGRpp5VJ;1#(w0-hK;2Vxm3_L*mspXteP)fS^FumOXEsmO(xfqVG}}j{lAI=fgAx| zi2^OdT~J+l7_}m^A;u#)mA5R9DS6H(l`V8AKtMA1n$Z;W)vehJb{wunfHJS3#OI|_ z>;y|_<37)mj7FRrD;CP{!r{we+~V=oz_*mG--_ItFls>{i_A76Dmah9tkVf1a|})` zkx^oPWJdfn$QTp=k7me}O5wsE@rEUGEny`1Lq;efjuZr~@o^ZmmQ;M=au5_dMlqD+ z8CQ_Mw*_$u3aNl#8455T5Nu$&fMk(2M;HcB6k2Pw?vBwbno49ruy6<9SvSKNL1kf> zf?*Si6yUGI4213{8!-`fN#m7C8V_@EnU^YJetHE!g04Y0hR72g#_L;rvt1b^udjR4IS$;ZsTKVwl~_D zY>;CM)Cgu4mIq^^0YtoG$2mI_4v-_mjF+Q@#hEQWfuGSs|v@Js|`Jk7{oj|Rmd#%8!$P(DC)+>CKf!A%w=A6cD>`)4?pHo(ycLklvUpiDDT?h~zfGhg>kD zB0rb`^XCi7U`N7Eh~F`HAUV1t8?lQm+W8V+Vn)16+Y%lQ4cDLXzj<2xF6(6FCSO*Ng53oF`5TC=Eri5q#Lj4&i+hM{Y`JbOMG= z5+U0d-gob&Grtqz+Cmu4@ZA@jbcV4Pk}sTiWyTpzyoyOnGtyA>V6aGQiK+qXB3MV0 zI?)k$$`5dOoEu+G0mER=f1kNyLabA)=eWYsrE{<+lrGZ60@B6!lbs|BvnO12kwv?^ z5GV!22`sH$M0-GU6ax{Y!%SEJX-b+rNN1@#@d;*#KypZw2jttDcrGyU;p>`B^>Lh; z*?KWjPxy+&PgQDIqMK|}sA+?s|DR-y9pxD9_F6_}p+SQ%nX$njfw2<^bDeU23PiEV zQ|><32^J*#6PaJk3dEL)22VMgh)!WPo?vxBlP;p*HRxY^rjJRm!Wu-Q|DBkk9R45X z@p3|{%vix$?vO*HHk4Av95$At5h{_8qFgZxh73k1SMm)ov9QosU||I$>0tvz2E$E0 zHv&XolqhToQG~NfP0}bU12^G+G+@DO z3Qf`jfNxB*K!OFayn9F%G9NV~PC_xA1X>Ya+({t$(o8k!Cqj^^Vj%%+X&f%del&(_ zsxJ@N5)T343;MsZrh7L!D3-S5=*-|OIs)iGiA?7O0AX@rpPb_MOwBmD0S4HVSQTO{ zWq8h2j(Q|Xg$-H_FOjH(d28}ARN+L0O5vj#!$%+}bipuhew|TudLePe)E}o~N!*e@7VCr42CiNcF0UtQh_;jGjAT-(#c87welYv=nM#%@> z0tU1tGO#fmXhQOFHbGTLd40c4=ddNQE|}qm&7k00Fb6^s>XI?)9K@rh$JRY&H@{8` z*9zCb(qtCuM8=0UB|g;e0okRHsZZV@wn$K{Pvv zryw92L`Md|ZZaEME7A=1qX`1!JgdS4zN454fwV5Z1;qN; z77z%sV>HMszR3HL77n|1#8?@W&IbW+&T(kKk63e&>QzeYVWt2~jNA9>ixZ|A0V5fTz+ZU|}p9nS#?1H3E)$U%edBqM`n;C9C$-?SbsO3Lvfo=)k{bxM z$!=@*6#nzgj#Py=P;((ot>6ue9y^A~K5A5sMYGK|pRQ*IFJLdR;eSmHtN8it8@Zzt zU&oeBU;AsSxgm*PZJl>)>P>)_aj!1S9sZ48_t(_8+F&mzi<`7#n^J5$hW)`f7hd;# z8++}{c{5dl6O<*a2VKkP-a5+<8Vo<$<-1$hxjv}aG!T2YoMAb$gBA7?yZO!3z;v*~ zR;QO=e=}7Z-`Xnmx6~Bu#Wdq@sil?qU+A0PPBmI~$H#w5SyttZYtS^U2Wgtm`s+b& zr+UWgn*4TZu(d^>{C29P!2766|MKnBh{|BouCS`)-&1*8&5irJ^yr&^Pc5y@e>H-r zo7C9hzaKi+{EyVTc5G9;*q&P4UNQRFvDZ7PZ(2hUL?gnkf8hxsss2Dilik6r!jC8ZwD(B>YQm(Q`jY?Z-N<`5@I+wP6P~qie<{3J4S|h7FPM@#Necslg>p zDD3T~(?j&_J5rPFi*9FQQ=2ckJ=RWNw9^Oen8J8Fx87meS$$`B?cmAFAEbszJAK(s zN9l*D1-5;stnr+`@>nC@n4yp@5`ZPg`y{h9Ned97`_<$E4k{#Xkon?d3J%YYW50e zaDgv=e}%KC>zn=bsaHDX*mUmvE1kUu=k^bb=mn(H*O&b?{R!s!YyIt;obi<(v(Y*z zZ|wUA0kQEWrzPI%9~5Y)lT#1T-`9sv27lPxoZfFPjI_uegA6bJiwv+ z7N@`d$*oQW`a17sr)hWK`|-`rBJ)`uPX*n2_-bdAUUiF8QyIW6HVjt}zr`sjFqX<& zoy7&-H{BYQ1fa0VDm)BqytzjM)PKL#IW39Uyl%VMsn%!Q=A_2L>B9l;Ri+}Ggd`O; zB{n@Yh4w^9D-XwL<$lo0UAH->nZXX|4UACQ#<$4U!KhEY-I+TehlexE zC-KFyHA3e$zutL=9`b=YSU0?bb(@x+_KwOU?(^PJgRR^3P4B1ySfu~hJE{>cy@A47 z8v+6`Gw`;>jT`>6TM9{g$?dtS$ zDy)s-Uja2E-&g(0Vro@CwO#u7kL~JMG&}P>RgcRz-c#SSKGA=APfe`+ip=E_feIt?|om5#5lL%SDfn7|CWZv|63i?hx>w=G1qeNsM!qu z&VQ?=Xt!yHY8)7%5FERfU3fl`Zi@+ied-R?P*w2Btvl2=>OZ_A4{Pt-k;B@Xf;CE` zYd%nU?DVS-(8o1;`v=Nv(9pasiIo-%9&8p@gl=LM=qAM2Uv>(%Dn16bIz8I&V>NgJsMteO3>hG}%(^*9 z+aHyVx5>eyzIdBAf2__zn^pg-_Nyv{DM3$3gdVN`SAD&5;L zO2r3x)~AY!Q-7-V#~@$(RQ2f-$^JH4sp0pC7VhHvBR*57hiWtlYZx^1yU$ef-iTEs z>0@x$%|e0|oY-lMYg0wsw%E!h^|w|ygTqmFC*vPmA@)Ga_nfBquyXdm0Da5%oIZPD zmtZ$JkALRYAu8hkreh<>)vv}}7Z^H(A;=N|Y1dwYS-^O0iCcWnl8j1Upx;E@yVI+~ zFLjR47hUf30Ue<)1N047IC*ephY)vmF!vgo(BVvL=HTE&CAlU8tAAZgz_iMy;unsd zz)rR}1lF}Lz$Va0GUJF_w`ATu7o=YU3!{@Ny~M;;VW5i1%G4As(Jp>S9K2cX{~gCd zCllrgl`^0&BKViWm*No>_Mn7uro^F2LkA;qOYSpdw`qe&M8k~XecErs2JLtc^n+UZRQault)Do ze|eMlr;Jaw<+^Q8;ak~!HYF;ck6GaX<|1!#^1W#lQ^OhJcQ(;E;g9 zve;AzDKn030QV{3KF|Vibhbbz4eq*jGpr&Qgc+}obSUyW^x+kKc!p_S4H!aiTF&9P>}@-jVSnjg*-nFXrM4a}s?}RwRz>>W z4aF&)PCEDCoyU^SgLt^O$hp|Q($W{!IW@h(#s~30Fp!g^JBo2c>!4y(vQ8gR>|AXP z(SIy<*4l5~r7uc3OL#4EoW1aLvg1s**6WKM=T_^Tj-krA#6tV)OPrgn`}Mq1^!9#z zQK@q(UVXpRISEE7ghHu=BoqFFV(yfm3iE1VnbVF}Uo3N)aQVEhO2JQEBjz)_kdpT!W_KVNx+j~2WmG6P`AjY6V zEFUA^+S{3o5BpX*GcfWKs+@0H6ZO_A=NS9WXY|-=XC5A2TJ3m%$KBOVhec?e@UxOb zI;uY_J~0U#elvBWwrY`fnb@&Ut@9fTTCofpkiq5|UWai9$1VM+&Y25P{-e%09wx}F z{?55pqT`AF&h-rP9Y4T%j^B+0r<5jvH7w&x;Ec%fEvm0x>^j5iUwl50fkqK+34g*W z-2A+L#1(gJ%TpzNbn95Vtg-VU3N}-t6!r2y2>$6aJP9PM@|?YMClze%}Gj!~@>eYwJnp zJpI|9l%tnE>5NzZv`{BzWa_zpb;k9)j=!KbZD?WR0BrxWv#-6v)>k!@a5uPd&*SI! zY`yU*XS#i{-SNp^oU~)axXkp&zk5ZlWB$s&ho!>dc<;6cf|8X0BO_S;>MMhiZO;TH%Wq|gK4D}@ zqxFcs?>XnExe?v}qBBfSe$gq54GYl}@oVNblyoyJS6}nIGniw0?0GY`4vekYvM;su zCoed2IGBT8bQ((kza7l~j}fJBeAk&#_AinNlR%L5H^1i$(pB4?BdmYvQ@1;dQcwL- z(AslYaaG4h+nq;~MG%0NKI6x>r(fFPRF>ZMrlExNu#We3ICofs*PGwZthdU_adb_2 zwg^WDSWBTpa8*mEG7GRhsSml)-cK)EP_(c9V5qa@=nb$5kT~WPl_E1Ulosd)iD<|X zeAQxiLb00Cigq0OWc&Rh>l8oi_Esw~$wK0u7KE7{n%tlV4tGX?VQxODr1w6Iz=$(p zQXf(s%dncxLK-zRbzQ49Q9Q|7Ck8T2U>j!Wwfe^4SS_?cZyWAZ_X)bjDI4*w>GBq5 zK#$H{nAqY>Yzc-4o3y|XIejLto|_8Q^9<@45!Aykx`GNuUS2)6e&!>mzDtLWAK?sc z-psRtwi*zNoebd8T;6K?k8ItDEm_TDc#BIvbNZaT6)E)1bU8NzU_3`;a}vNz!{SBS zdm+OLay*^KsLycbtvoqPcv6J3b!y6YU_J)y>;z6|+Nw8>boykUffIFH`LUo=jDdd= zXJMLmng6%jH`3*A!bwjj6Lvu(eWHOGLUsE_17iUORvRA}54n&wF|ZAwSCF!WtX*|D zI7}!?^4M_cf6zwM0_hr{3wa`Hh~;R=ln0Z}0a+J-+<|H9SY|C}8yR{4_9gB+)GPI` zykjHA#L>XgM3b2soKzMxpKFy|)SkgPIKo))uOrOi3H%^a4j~kjv)!F&7c;M=-OWTG zpj>eTUVQ+VtLB>tk(Br)*hK#gm@s~R&z-SWMBO9!HM`NWVO%JWHYH6~a^q?g3ezyN5)38?&!^rl#YkRC(KN&liG z=}r!H6nvBJs6$A1&+-bodpe-wotQ3y)gehYB^~@VZoAP=tMa6=3o#OQob*dzkSB%F z(rKJPj^p_r{Cp$D%K(U%6Jj_niC|#>@0Nu%Nz(v*`5xfd2}!ma6m!l}$lcMPqK0-O zUh;5kb&F%7m=G(3;w%p;3Of+Bo5L~qau+y;co7^Qiz@yIf#R?RgJTgd2FFqoiWXWH zf?{5a$7K^w2ZSm(<~>p!SpD@1o;iHJOWF`mDV+!y69~+;DhMV+Oc|S%hILoj{zEUpil~X#uNN&y_7+QGCr0R5 z_LQL2c*eqnLc!kSpm4+IxRP+xS*$%3ky`k7bnB&Q9Hk zm?xG)WG5hzd1Uczf=sd(mUG~q9l>8v9(VN-vw&OjHUnDrGghWvwi`mC%}q_Os4B0H zv0r(d{YF#yh6i687=r&QcgcVH#J!x}Swr*af>8)jr3BEIQ0N>}i0RD{#~EerL$Aja zI&W8JAtR$XUm?*LsVW@^smBN;p~yYsxcyN(IW8tu3vpalq$)d2smd#*YA}e1d@xbwI@IDRtnm`vyZDUOji83NhzaM7T371oVTI#g1hG=s|U*2eE1L z?7i~1Kn9%_*12DfI=Y&BS?2i*k_V-(X+9d4kwS2ELwTIZkvyM$5rc0QDuKb5H7Cf6 zNZud>V$6m(r1r?*GZqgFzR=LajqzcE?&B!L0@mGEffr=L%%k1fcV!`ND9Sd#7)s^Y zcd5X>Ly~Wg?Yk2S*mrP`Y2V@0S=j%9eK(EAXF>NsC9RjZXMwH zF)9wh7a^UrD}u;Kq#RA_6DK>p;n?Q97FzRLZFJQCmuM73$vk8rIV<3>@_9(e8hu$0 zO~naGO^N$HlX)+pzFhO!6slrqljg)tpXuLDrsl(}(kj0%>apRO1F-A{e9urz4hqYR z6(FB;!vuNHz)FbA3?tJ;WsbqCc-EcDoYBQ3Gdk17CQU?hP^}%;mbSl@7@*G))g0GS zDBnpNH4;Kb27#>#%OGKkn1)KydT^1np^i!#9W{psN8+6G;{(>|M*i2$)b9@}QkGp3JBkB#<^99O=Y*${H5o?111rLKQA(4tujL$haE3tUvT99@5JdSKali+Ads7y zQGw|U*okabMs9() z$?j6#1hU8Ey+Ih*o{p9jLkiej&j_EmeQqRA0se(TLcZ zT%}=oFBrX<-(b_S;wFE{<Sc#YC8%X6^~ifCi!2+exeO|P@c_hn(@(S*4`*LB^-^c&*!G+_mnq<$e~iVRB) zDQ}WW3J#Ft+qH_Yr`S`v86)IFVKvd!k%5kaWThh`L`d0zc`$}RjS3a(l;vT-B#XO9 z#q)tt{Sig;gMcd{djg`yrJv-wYo=FN<-G&I?Y6B#O=V-;liwEPP@v5y#a*<4HkXfdyNm;7z4p7xG!C2=E*+kS&x@$- zI}$J(ZJrrJTg>4ZL{Ki;Nrp{xJ_d$@9&mAKWx5u>5s$&_DgLI;AMBPx<>SODz=6!> zmg$=ha=hVCD}~$kU!jRfqXb=xH6Mhob|Y%3=7=<0cco4^pAc$}C#nEAkf0v=1A?)< zM$Ww~@frym%+JGLsAjj(b>~2P5O7m4nbCjN7*vSyno)X~|53|5rMnwcC%YMXI__e? znkxn53TtnO@ZDO>(4+xM!zd?0<$Dn2%ytQL!ZZn4r~5Exj&*E*Kxftg&&oOvECgqi zh|4lCtrjE>`Hkt5T-Zps3*jMLTpF`5x3bsqsAwQ4N<$sTu62?Vm=K&s7zz_*VOx?q z0LaL?<&sTdRcJR!7}3~^=~DQsIc3^a!9htG^&5Ecs4M^usSB;FnSq&laQqpRNX@LM z=l$872#9|rRA(;LS)-`4dbe>+#wPpYHO`2IF`cC@vjH10ja@F`KK7_^XaBpt+H>Fm z$Lx1f`}iY)9xh!rzKi_m6cv&(SQUbTM53JA(gVLvh3pg8MSq4`PTze9q~BYio`jl& z!x3mbcez(z)}tfLVJ1&PXn3?b1atZZV2 zzm6FhcAo6;J4HXZy-a7pu`?E#Fj0@K@Tw5?7z{^1LSN}}7?MfskBUD)XZlLp|Bt*v zO9!NbrHZmvt%eUI70h3Lw_880#|I!*E*3&N$LjeXwBLLsF+YixzZaeZl zxa&SwDuRO276+H7oA?_<(K-ADy4tN)3i{w;yUTuau!uEP=0E+PjfD2_5ZcvX6aN}h z$nb=qfSDWLI$pk;S%H;u^2V_xf6@4!}%JW zM+#KZgTuxlq&&a^d-ibj;1B%W0HDQFQ8+fpbhekMbWBLfWu`Ka!3hW+$L%l1K4{>Q;o@9T@jYz48NfzoA!8QWpP?zRM5TnH?%%k*& z&>$Y%4sso(1fIa!*2fVv2c2$kyJ#61Wr*R4;#N`$>2^u0E6@{<0mQj%R4EBdS9 z;aCZ#MT>up$;@I;p!=&4Qv6Lo1L;dGp)8S8WG{38=MN<@cN%}tf%HR`Q3dR%i?SxV z7nsuo6$rb@-ajh~WtdQjR(OXAm0*p#%}2j53wvOk`4eCtBEU(jlE6f7I2BYh(6*@O zHrG@Mp#)}Zg6NZ8(dG^P+Np`G$6giWYvc%2e7HgEa_Aq3xIBB8Ka2N}t^j^|8JjTK(5191-MaDC% zg)#dd2p0i|m|HX=FUIFr8VJOcG;RqxgCvRv4$2F+oIvIxo*C zul9Ny!@O6XQH}|f|2MNfc4?HCVvHNWd0nS@OfJTw-CO0|8|CMpm~WJ$ItUQL6k;S; zdYLz`s&`jBqD|7(7`C zA_jMAW~LbTK8E^C6$Nb1KKrwB zv5^M)%Bz6@a8Y+*XuQdcH`1(r37*G-Y+uQb@pbY$sJRPS!YhpyMNK1!hn28rU;;GR ztE^1ldyw$%k6=D*Q~mX?I$rkg7jB|l?-|NFD{>{Wr9dgDKG241n-*Q-uW=`2qP@G6%=k@!lxy#VYSzGMX$ z_5khGE~i~dgiu1M6tWTLF-K>N8p!ctx0<#d=J?`Y@0oR(>U*XZU7Q&yA)o&4$TgXs z4EglutL(pC@ioWI)^oG5V%Oz-quyY3%n>ey%*61qBP%NEOM?+@f<#}D zBPB7O`O4_2Tn-#2rTHnI8|}p5V5>;W8-sey%$VI86?iksRF~+9*CwaYniz{}0|w3a zvG95UYvPMLSi1laQimd~WLbNOvBv0-1`rw*KxnM7B>yDX6aLFIDmBQWM z*+kAZ^G86h5^5?ee^$P@$RgMJ%Go<0gTw66EsAukD@gE#7N4K=rv}&BqH=@iPy~b;GN4TS8kZpdp>C|?d zi8lfvM&QJFB=!`@Lrkw&=-*_`hFd2>%>)uCb0Fbhe=(Ghfgqj1{81I6(jdjA_6!#! z;W2{_DBi`pScA@&B{97Fw|APi!>Vn6HT?7Lo2W?mn=iwpm={}Bie)S& zG2MAE7C+^1xR;|;RqPHV#O5I60tr0|;gf_rLL$PH_oiC9_78lQv`sx@yn727S$xOP z!{-SsS8`jUCh7ShfL2v9oEy1c86$8r$P*(^j%5dajZ@&#R z4Cd7Pod&xhqP`rR8tO!rE==thg6sSO_WRoP3n04q3%0*8pu${D75eqloPJ>^;>=>{XC(<;da=#FL8_8e2+%e;muxgmnF$D|($cw!gAQ&s3@FfsMZ@+3* zg$*4&5x0;Cb$-^{3%A*JZ<62U?Ty+D4)(#;V*5hOOoq?=4rk4r5Z|nS454^QvIT#QT{k|0vpdUBYTY(x#9fAP^;E1Ytb8*?ewB0)tta=y@ z519wB9F8%}pPI~in3>`=V$??fBuDy7yrVG4qXCf$K%*Q`DFKAa{H5M8{@LDF{I7Y( z`fIb^ahSO89q*TTClFRA0!}9ZPG1F_z6Lmb9WXlCFZI5GwickxQ}Dmt?d>f@6E?F* zIWsWp!oY$t2=0kHvbhL|+Y{N){LOv113=-I_i*A0C%gFgmp&(fsfn?+;M+(>pIi=> zC!Z&}Ve^FBNAI&p7>Jx7X1}U|Sjm7D12q^YdBG-${NMQ5o8g?2r%c8eV6}0=OSD3g z>q||8kd0;{Cv`Pa2aI1v*1lmf(c+>H=r&Nc8cxE(!p-qjYT*hdR`E23l3T%q16`;V z3%J@64nU^-aflVJr}#Oq==M&mQhSp3{iK6GvmqT3;@LAp1fkemC&QI$b{0`@;f=y} z34{wBJei>=Z^ULP3b4|VUDA(o&)6jc3}5vta|f*PJktQ^VStz-4pcOCAqdDTPEMZ^ zfEH4zAA;{-+2~9&19J$j*k0PE46=@fb~qlavbuY*Q;XcasSJNN0CAEz;VxNN+6#Fu zvKWnK!0rvM$Ao)7ES^eugUWFTr;G+|XG)_E<*El2A_GsSgj5ilEI$3};^rBQ1vLTja1HXW`%VG)`^v_G#1)z`U$!y>Hj zm0)mkH7h24qT<2sknp(_q2hR3hKlprVi78iwZ#r2l3iB#YpiNGE0HdU3-RyE!5?g_NQ%YyVyh^}ho#6I+l0B7Dp2S$jkX5L*K_UCn?B*Qvy+N+TI(|%&AN0yIBagJeN%5h382|2q=aI3KeUne zJ{oO9IX)AdXVDTI9{i4)weeB#gY@l(Kd|ziHX&GvQ}{~VX&f&4c7ltM6}$WMJ&Y?i z7}!9y?mk|X@K+UJHXZ#BYPQ`O9E`sptlf4GU_sQh?at)ys9&~wAb&@rx7}I%Jvsco zmh1r^4WpSz2LxC!Luc=7_aJ@7GN(G*6L>=u3r{YJZ zigM?81HpOdT}p080<6c$9YPHwO{gK^9_m)X0fxvL;m)TwgNP&{KWZMlMjliUd^^`G z#m|xR1QwNanMb(U!`tCcjsh`_#E#z_b}5JsdD1d;_ZUV4Oyx2NDq{u%AdrirMvj(R zV~y0Zk)u7zJZYrZozJj9*hVSo7;RvmN<7F4T#6S8Xb_pODW4IUIMp376MI~qN`_JZ z5q>YsoaW9ySIh$U5E*d@IO&!leysGPtBFfKk(ZO{i(OnIktN=6w!~0BE~f{CXeuge z&zyk|a5*!tJk_3AgmPTY3d;lW0eMa+WEP{GC$R9_vw076xTyae-jBpRI&m)VM*&UX zHn?zv6}tRQl#*Xtjq`Q7A;~k1Lw6P_lj1Go)gjI+3p!ZRg2w4!Cge7 ztV0na#1EEBfpI~XrQ(H-pwm6VTj-wRB5czG$2GdAxhKp56A31Y-MNNTz4L&k^ZEEx zAW&W|;Y`HfQ%rE=ucpA(hgeJx0m4VPr^*$`guj?sIJ2Sx2M(gj00{b3!{KZfOjZg(OR0YNEVFy&ykg?oTs0ECe6M(p$)MA;}aUQPk&g^+I9soZJVclmay( z_i<0r-lwqKuhk7%Co_+B2grzI3|is0IoS?UqihFdg(|{OF)F5P$7dlskkm>jLHKd4 z{!!K$0Gk*f=Un2`+#~Wu_=zHGI*IU7_dE)Gh=N)Gj%W1-)!FVzl)#u!XsWl}ukts} zunm8IjlZMjZTIW^J+UnJ!qF@cdBy&f!g4x|BD{(+q!f=}b#jD8gr6)TysQcc;GAlR zaDC-6r*Ag2UD$L?U}KN-&@zdb0TjHD>4)6B z1g5`b2nJy@LuYOByUP6vr_0m+Ys%V1nPNoLKxAmq$HK!R5L%mi6zL4qh6O|!I2>+m zI|8auiF_%^m#W-jSqT_Y9>FxlSHK7a3l|*~cdmtlMn!mmFG5;_xZ7}GHmUb4p2mhB zrg3REa|T;p?BbGOR~EQuN#D<8#~01y{lLAa}4^3(5vW%g{BjN`YRX{|BLSz1XXs@=>cORU35{OIJkD&%;lnP^mBF zt}GLEs7f#Xu5)6xs!rr9#4NvtPXpVr4uk8-Zb3oKLSKr|7d&SW0}Yk2Mba>Ja50U? zQdgb1Q2KecyVyNl61iu%izuJY#6QfBJj*?NvD-!omcAcAHUew@tcudPpz4YgYilq!6r$pM zy=l4AoLy+dIgdht$J*Phd~y2*t4@%C6b}dGpMu?dWN(ne-pN}^GVwms|EB35MSXGK zO*{zPhfKu5x8e6gKm0)ZaRB0DCk8d=tV=&i)#F)%gfA5m-xg7mYWd| zLO*G?x>o8ziEDQ2l}YkAXEA+_K5&JTnf|10 z&M$JKEw{rRp%Z`|a|(IwvSv;g3s&PNd4JPqQ}n%e6&5u+jkh`*J(}MGqz<1XEND? z^!z)EYD2h(-47OYN%w#8nf~MV1@6a3^w<_xf}!uF(>IkRHtb$no3 zrEDWDa0B~UY3wh1mvbuil>N_L&Ogc#2nFzD$-=uGH+|?_YgOvyn|K&S(qAjb8({On z7VI;(c&GD{{kPlo!5?Fz-I*PyeC*s{*;n47)hEuTX+Hq+9lt+J5Zp9i@O^~}K3VQ_ zt&1Uw=ET33`(|$hgPebaKY^Urm;1WnQ|xhT>GxXI;J!U5UjS504`BZw1PGJ#D*eQ# z&TMSEoBqrhjLZ1XoQajUT#WuQ{FK+o{#ijFJ7SsRb*Q~(+xXwPc$1!0tiIjy#c=)aVjQQ@bzIk_(Eb{|DTRYl z*6V=|E(`TiM;&Gr>EAi(`}Nyi36{7UXl)ID0$N*M(ce;1D=BDfjDjrxd*6M6kQs;- zD5DS$1A*h0i(exn>RN`GI;-^T5;dVVpIQR6LR2|=avxP6hu1Gk01_N`RiYY`&jHYt zrD{m!!>=Iw&HeFWfIgvARrJUgF^*o;hOZy#xS>=%XC?2sXp>%4u09#H;*wpi(+z`p zkSF1-zOh2>JwE(}2P?J*RrEKU?e862WAB8w9X%`654magnjY$#Ul5D4(rS_Qk$yC- zp8R5DeRt20tQ&Q@MU_Cl+}=yg!w%g4+e;nSy8r^TH8okKv%OVa9RB3gR^bC|Xb*+b zoNV*zU}caWq0@L-Yx$i7#CyF}L+46>#C@vN)B{7P#GnfS8OpO|ujaAt&XD>HF>Vik zf*9X=MgOWw-HCm%7gwtTEs*+SHF8SK+cj#Rf)rAa6(7-;^-*tH>pK?r#eALIp4$xM z>X-Vd^>}nyo!U}7fd1zY_eim5j&z66|Ab{-S>_&zWvERZ-}2N%?t}ecqk0UN#e>z0 zxEweHr|8_T7Y$M4hlrtcoI4?ID9I1^*vL>qO*E7aXhdtqEb?(CG$-Yd=EvC-fh)xL z!67G)>V2Ek325b}CN*d`jJvH#oefT(->fE;(=OO7(~8_mePJ(E*B`3_Wl^nJ>n^!6 znZk=kX6oNJtKWrW%i}UAQv*fAjfVI$P&5|rsc4=bs?G)39ym<>zbyc+)_*$BMqNLVBj6AA0wy1N$PVJ%gJ86Wv0A%u~5pv8?s#P7b8<;I_RZH*z zgDI+d*_bE=@>a-sJ}fLZ$7SnJX#%CORa;`hmj4z=D`U@`*2|zOMf;RXBMs3 zHDg2zjUNLXtk)-xQEfT4xN(eX8XhpIu?TT|nBmIMqzaf+Oe!$x`(qT(C4)(oiT9}N z4xF4Y|3^hVibajzHq$y2JYV;ua3aQp8)-q&|4fSuI8{ezll|4&lC`&HFXpRvBE zM}@I*#j;CJ>{#_%r7Y{m`i5uKG<@a%Pf7n`9NLjib|kl`>x(*^t*YGWbv-sZhbx}0 z?NJ7l!kT+mH@>9i+Sl9qzB`iD`tp}ln{~Z@>?QQ!dj02@)M>cPd08Ez&w5qW;mC?j zHy2g&Jd3oRFu&*^{rRh^7<%i{`9%Zupx4w_taTk1zNRj+A#$8Q!(>>ekHMw#KDdsw z#<4WH2nR(x@@MrZ9)0UCYK(P*zV9#mPM5!~czni5ud7z;CVlnmc(zXe@^!TzE@f{> z;iNaz?{N-B`mbt`d)eKvI0x{kG@MA16qy@dVGQCJ$$5WOL-kEB;I_ENAHKfqNZDV$4{_ddVv0^cRN|!KXJFS7?(|7N!97O z_u#+}!JVgHzQ?&cEN}BusgAYxIuBTS;X_W{nAMkT5{b->AGt6l{Q!JX^N-<{LuYHoP*24pE{T2$nx`_I{inyf|Cm1-jvDV3_Z+23~ye_ zmVz?O=`I3x*M5)h=^c+d`&qxy6E->v`dxe@nt`Blab(dl%S|jy|JL&894yl}Jm&P( z$8B_~^fQk+z4gZ%oqnUbf8By(<>Gh;G_%YS;F}x$<|EGXeh=5AR&L; zEQHnM)0OMxQ|xI0pic#Uv60|C7k?MCy>Jl6x(lCzd+cv>#JbpMe*K!WXUhC7=GQV? zer*eW!Slzn?dI2b{up9eSrH(5(FWiTXQp1U!CB)7P*>czX77g`yAdbM;`|?;)y%_Y zd5hUqI853fXnx^vX5ZB({@lT)>O1uJf9~v?+R0O4pV80$+^H=OzTsO*z2oPOXK(wr z?(>K#LK=pa#kNQS+(Gh82H^)`s&H* zHr$V&qSjQdx=S456b+Lr?&|pG6xCssO>`C56YJlvzpLZksqlyFH}29e?5Ae#{l5>; z$l}Cpm^t@?zi|gK3RR!*u;~c@k*CucxNSI@7Yij~tbOz})ek&<&NOwrb*Fw|npy@q zKYxEnoE(eaHeHRb-acIoX<@k2mXiwEILti>;ep{+LZJA! zVb&n8Z{V6tKdYzBP;TY-S;9)7|Dnjwnt=l-7wGqAsF$t#^luJOCk~_5Pxzl-0|`-y zkaZI8anmh)!#fm2Ki2D`W~vF0nODzLGjVxkrm8=jeJYxooC|9K;-m<@^;crL$aWmu zD7{4y4>&a^L-F8-6{z^F;Hmj!oV^VZ2QyTETXB1Ofu3`q8ip3WeV`g>Uu@~?4pc*| zGX3O%>fnK_R!*n}txJFi&7lDERHa(oHcQnGF>Rx%pgUoMK_jM9&`4*_QuX8bGOQ*t ziGVO6Q+0q)F?zWlL;3}P5$6Ti={o{=rvK3K#4KpuB6#CP`q|m4S$}kpnhLXMui0uW zE@#eG$KdkJY}MLp=TD%sssLOAAuIiyt~glr9fnh%NG;2Y7$KA$YRn6X^mAyY$zE23 ztvgcG+r9K52djtKn4^0f0tGjIj`C6c`E#VP`{qEEuGi&As<_&*&c=Jqn^I&-MMsR~~RsrXr zU-AgpdKGKiaw(M(=@k1HVZPK@Jx8#zh0`%s;XHR}$@z8Xupe9_|l#e#)_J7ZmNpEdk0CYPMdgfBRKclQIbE`1@B? zl{Mr6+epDALwaxFG$ctiCH;Sfx0ISN0?fiXCsmAihO(x9P)AR`)s&@m2gN z{f2tq`6+)~f16G&P&4f7Z|gW{f%>Xtb?9}cK;})<|9c94uG7c0LwK+2xV>F{=HTb8 zXF)DLpkFyl4YwZbC|L~4x&|G9^CXZ+_=DtX0S0HDqmHy5)W13hmiB}CpXVU*@}Tz5 z1sh+dzj>}2h>JcKg!h1c`drqgQQJ{^*?DTXzGAVe(i?gA+r{chmi_9>v~u#dq?L=m z1wZ2fJ^KPRtW5ffgr=3gURQh@vi3Ut+6AznuhXAi0Eg%S-MXakTN{_iTdyrqeRS;w z(rs3VZXdHmHCJCJ2gRoVh^hbp*Coqz<+tHy7iwXTKFc+^x4rf{-G3<#p1nekTdIci z4j79>PBpy^`ca>`6#mNsefd&&usar{euhDB)E&uUZ{q|D!Ar5%EJsVvXZRtXKpsh zN$fJO$fczKAFEaG_Z`?q34O|UAb}G4w(qD0)V29LYH%g;;@~r+ZptYV^rzoZe}SR# zr|+sqDu1;mukUv*S1pRh13D?5YDs!Q|WqknrTcqgI1eyJK-c?Dl3F3hV3UxC!nhD%j>44&cp?_8?({c5iF z@qs{F0@FEdc{VHjK9%K}ARFpRl1-p1af=_&2S$|&8Rb;v%@61+zpwiAe3`Z~H5{po zN~xpc`*5dAKYw~7oEJ=-S+9#OS4&HO4VyOjec9!RTHpxBD=@B=YXdw*;~Ewp(s!=_ zwm0cDSEw8D#q=xHf2{ZP{wu-s6ZN8%AczI}o|WnbJezfu+8YXL#Z_wbh{x|nrNjK+ zp-If*We@$J=;BqdJey5X2qOLVRcb-$+jxQv%-G*!u2vVK##gU~w)*i8_2*ZsYWuxa zy5u%_?;i4}Lsml^R_^Bzag^==Fqkps!n{2H5}kf&Td_ zb)tRYy?Ve8)yNYe2Ic`+D+K6=7@+r$V2-UVaKD8hZ^8|dYZ1Wlb9o-_x>Q4CLSwG` zq3RoGO#Ry*s(;&0uhLImBhjx`4Oy7b=ik7zSI0S8{n3UYH}}Wt5c`tf=v#k`$kBHF z>W@|1=nyu*Ee?d1g$}{h-x;1nc*!#WZ^oTQ4lYl>tfyS3{uk9vx?X)3(0lxPD6OCC z)D3Dj*cC0;==K|6FNDqOYj04^c=E&zDwD#TP$*ix^aemSp^I+Br|b2s8`VodbK_0w zLHpD7`j0oMDLkT+;!R)(s5h?$ig2B^T3m(Yt0l_vi`Afycl3L!)tnLc0j=IN&LG%3 z*nw?o^Kx&DPeSmfmAPZqc>8e%|445?|BAcy={KwKfWaL%tG28epMNKZ*%(tBVC+5p>rVFXYNP{rtV^gnFtbnE6GVE;fw|toL*G=hBk- z?ldT=L+(RF^*x=vPc5@Qe_C7X)KL{bp}53sS;mhnUAZ@~wPc;DinHQ%>%d?My>*?s zKIceYa6k0=zx8kKSHlZffN-xM^RD3ewEOA9*Q*9uWx|U1oC}YU5g$)_Ar##ME%CY%EKk~ zGxY#0x}W__{nVmJS^5MFhJ7V&&~eiv>TrDD@xfziq}>nw7>@d{m3}}bupd>@4LxO( zst!%#V>Y4QculVYgQ#giNA;7cj@6C)g~~+Lt=>&_D}JepEbA$K`DScvd$X;7u^Bu) zv18`1)CZPGIZ;J0d?f}fN6V&$)4$BiugA<0nj!K(utfB#r`5z98NKi{T-v371tBLo z{=o|f?a05WOK{otH}y11?|w@?X${?SWh^R*&@>~E@2`qQC863_wsocc(cjfiPJZyJ z*!$sewAaMm4~~=Fes%1<;3(S7*T%|%_x^NK*KcpTUXG&8TA1>{qi7AU|Iu?YIFYj+ zCvz(Nuj1T{mC1#fqCp8;`~nbOHD+?bcqzvGx|EOelKoMh;xQB@K2GPu(z-IN&@0FK zy9&5w9$huBhhGN$vMvh+(-%jorM=$1!m8Q{UbVm1#)MacD45p=i~0Kc&#uN~c7Ivc z>*u>zOOo)AA@=I=pKD3DMGh_=FP7)&MR%6AWL+27J$p)WiaQg(FjMqEPN4MY=Qg<> z=S?@@(i4j;JkM=%518jR;8~{0oiPtTXK>8{=Jl4j2o9p0F77_&+ey4MyAydC>`r%Q z@EHy)#3G3Uc)OQ7n3uiXW?uGnn|PUqZ82OwsA!to8_N))A64z{SgeG@!4JjP%sGZTdv~l))c1L1r=u+&E!-pfog0{x|t#K+(t~>MyCLeMoa|cT{Gd* zjLC*W>)fF(7E8H9>-d4&gO9WP2+vu_Zz}V@8CEB4c|^o;zSF`1W!M@j8te|MW0R(# z!KkGPC7Gsqc+!LxM1noLS6i_>2=%wJqpYF$EKFVv8xDJnrv*ki(zMyY z9*<%TqoWU{$0PH5oJE&M#=1O)pJ#U2<$^sPYkE932HLQnC@TQjM$=F>!;X$~@zQu{ zbx;V}Ms##g9%vh5{hYuBJmb+*=-P3(jIDDU>)Z)-Aezx`89ir7^mqDBe*n+gsa$74m#IUn17I0nTZ$&E_(&SsR&{VOS?Q? z_KwQ1KxZG6WpUj%C=7%w>Vu(%^2vCPGk=W~HKnLx3QBA8OVOB*(mqkC5uQa9+il|^ z81b;Y-J6O_4_c+3+qd1DhD!++aO{t3X?tcm+VN)a3m2>D6W&Z82+N2DXuzyvuGQcc zOJxR#oB>Dt~5OHe}#S);{m_KWYASTnoNmdy{?<3F&(0em}%K`{$iA4hGGdnj5@U zcG^UP-C@Kep(vP?){z1l;5DM*#;j?%F~BYX8(}wqa=X`vG7($Da?Q$4E@%!_HDcF8 z8+Ew@2vG?Bg_(N1=wVk_0E$^svI?YP3&uzhXoQFq!2V!K#vQ~~#d3NVDq;XCrlz1= zk9W+B#MCeVU&@QP;KiZ93H#1IHB6@x$YAT(VGG0Ixs52yxF9RQ3S+}t++a8hGZKRf zK_q5FLogVu<26lX1pa_6wL?Gri1&kpX}HZDig5t%s25c>3Kyd)kePX(-&1;f=o%Ul zSZ6cTJ_RH>UM8WD_JzwPP)rPV$MG`69nH&JF>$>^-8n|yw$YXq>vfDfm$vA5cL*=D zjAh&A9?D;%Aeh{P@xA=WLUy^c!(Wgq?m^KH*t9NQGMwpBh#vxQp6<55yycENW>gR> zGO9L67Id0=&5URe2AKmCV2>IWa%sJV2jtI&S#@5v5yj5Af-VeLL;)WWcuQ!}Bb&b_kU1Oo{T@9>SJ+_8E4ARThcOt}zR2XCehW11pdxPB4P1`$febxdZ65ny~ zBm#DPFdd2A8>E_=6y2%~m#)bqcpNFQ>M1nh48-@7>L8Q@a6b|@Tj-?v8l<*?R0IAI zT~41MUZ>0q2$uzrf1}-Qco#~C1zbrw>eUz0XMuMnSOxj#M}kPTyGWnc;FuK}pq3QT zEbfEh1G}1^rOw9zt6E~nnVFIHEHZ^^^i#FeqWL&=TN^+OKYXjl(73^Ud}K#@Kcvs) zH0ZcA8VLhF2$3q~N9HoX$gn$NW0?$Va4L?|+d~pjgM(ve@R<;SnqH__66d%`=gdHR zPpiQgx|TD?wgVEmNhuR6R&&3-Bi{=yXBL;-DIgHe>(ig~jDuwX)rBlsG$(3C(+fzA~UpL;GaTH63v$4>GDTti)hokkfji=c*AJ{&9$7pm};aDKLi_gw5h z;ynxnQ5vYvLBx5?rjmjptg+;$B&@Yyo#lu{KLlfGIJgosX)I#kd>W4Q)X)wl?^rCh z;I{W7U7O|A8(OW1OmZSwg#5wGVrcGSENyV1Ee21gA@~>%*2?hmJ5Fj#rlGPW-0-66 z0S)*Vi9wBPYh+5_9g$9|!AlbC9OG;)cBR^)Fk>Mw>!3NV8zK*@cu! z_cCAy7WbnnnJP5kx|4-9_?9l2TzY%rEfWz1rv){ajoJ$Yv8n=MHN*=XcU0k^@xfT! zH872T_?Ku;6YPPKDWzRHydtIGk;~o|zyUjPa<>$;_yvo^n^HRY?jo+IV0!Tw+Di^9 zEkX~Yz)=QH;Ef#si6?sN%J5-t z2jXf=X6xdb0{eLTI+51CeajKkzI{6&hD*D-eLEuZnD*_2NZ!8fnzsV6=H^8~jrMoJ z%O^niFcuoOtx=$b>RtARJd)osd?*&960eaA|32<-s|g^~hV5X7f)&(a4A~C8WT@gU zFzPnchMYFHOp0B0T0>N7Qlz%K=PD%4{UsmA@fYV-+Hu0cAtmT$>RK|$j7T>wBm z)?qCgii@r4w;ll>0g*P>7WvD*1CTYMzs52F+3rZ6$R6NXHN5h4yEX9Wg8sT}hY@91p zoh~SqO|MNGQ##Tqd@R&t#_{iH)JBtV88reOdEgMGpv}wyJ%x)h_{mdx8e&P(#Vr+8 zIDBMP$zb_Dy&+HDCsjO@=aR>?y#y$rEj2D143NeGIU?<6cNECmt6#@Cb)HawO+$85 zs1hL-FO(19MRa|U{8!!S#@xm7J@CI>ET7wj1fZMC1)^w9@_>|8&tsu1kHVgvU9x=T zV7(kzf8?o{TXV^=0F@)U;AukyMZG*kbr)M+A`j*7Oi6k$6+-(MSObs2a^Zp>j&!I* zz8*zPDe}|OL+J)pUM|6X+$KwK*^{O6WW0|oEt9*!8BitSBNg+kx90@(AfQHpwAZz?tWedz5n#z-*3-fIe|!H#_8h^)w|Lgk%0~Q?ecgP`fD^ zVYW@l3<&U3vj3ggobn6RXrP8u(93krcXJKq4MYtJAN$rRU*`nK$O#xakhp;UApWLu zxj!+hTpq@m#U)`utu7A4y9@_T=)ha#nGW)3_E0DJA83a471TOxLM0b1S7*78^c*{- zv-}hy_d`P%DZQSUIdDxw z>K5AwbV{U{!~_N2LVisJ?K_8&#Ag;<31I_#M(-5r0e7V z!!S6kKwGLPa^FKHK)kxAxFc`q+w3_(18)2JW8uDg-V|rNtKRv5Db9G`z4c=gJt`pO zzv?4Xr11iK$0sIaBjY2Nnc@t%pUj0Z;`Tpoq9=~}@J$28@gIZU*7P%$bdP}i*Srop z?$;Moz_YM z2!C)mi0ool4VQ=D6y7VtI8nKc>W8=Bh_e`#L?oUVha|cLP+7l%K)f0Pl^I zt8oPO=aKU1IP5-qlziQQwU>;bRc9*aB%c@I8n6FPbda)5i(vgctFxP0Aj?`}* zE%&yU)kxT3)0y6g6w={$_UdT)Wy);ZNzgBw*jXpbow}`B-HzUW1$of>_L33onv>-v zp!dfaa&Pl~pWqld3`RANk;lUM!x-6*Gm&49kq5x38Y?Hz`z{)b8a~AC8w*YN5c}s? z**^gHr{k0h?oY>|ER4M}UOn8UpUJPNp#=||e8|To2K{k%ef2Z!#8c#+;N#p=>z)tKswU5&90MN?D$#u>@foua^Q+m+&h{t~Z zO%ry;IJu*_9_NpP!C_(B#>st;i}S@exjY9>pYigLuE*x1Um6O=GshUYOJ6Diw*TN` z&5%_-4ag(spta#`Dk6PoL@%PmCXACS*xTdfQgde2v%!QrS>>tnt$ENy?2o6)E5Ods z1bIZ^+QZbTSZabipigE`o@q;GE-!myf_yS4R8Qp1Gj<|xo^vOn1s`JfPK3-pl>T(0 ze3w*m^lMmMMObxO%5In}KcDxf)z750De{Gqw2u8eG_Q-Z?P&3_OqN-{X|nT}iu{Q+ zPLpr_Et%^-U7jaxW!FxZTN~C%4W0E1MGDac=t7YJmjAmRF?L2y3H}NaEj`6L%#?dT z$ig$_UJ&!MX3D+0Kt<8Pau>dHb`W!DY9SnZc$1c=Zkj3gBw2iRro6zqPGSRR$!C+h zWtQACWoiPM$G18`^&TCjS!ME zPM4QVBk2uV=j!6Ev&jB~ghKJJ<0*7J-)<|Q?^NEH4!SDu4?g4I#jwZEhX zN9D!V(oOF_t$(-sD(qX7*kf_If3dzXAK!5QGA>uz*#pICaue*i?6j_4V+0TlxX2eH)^Y;r>G zlzv;24_iw=`!|3)9ShuDr>LGoi@hZ->i`RQJ-}jV8ExyTG<-gn7dbv6_$wSS$;fyA^4qEuq zCV778ZB#0JzR0M;PfhYbGw3TVTwzadmTR2tYl{hD3ERI~Zg(}vea#&F)n@sKQM7Va zd69e?>wgX}AG_up`M=qD3bqw?gka!ZHBN!G>lJz#(qFg8HwiWvRDW#Msm@(0_p;sh zgK^Oj1m!Mv%~E;3^dtLesr)IGEfEwh98bT zZK=U$a&T46WaeHdzuCs-y(@G!_dQR3NRoW)o%7`<_?B1{8#CHGy6f0}c^(_MQ1;^> zjeI*{Ub>Pu8=H2a{6Fh@iA_n#_eq~^Sp{MHfpuIZe{E*fuz0q$Zyu9MH|8o?;UllW0W&P0Uwz@+(vExAIzGxd5NwXwbo zZbjQP9N-c9+AEJZ#3Sm&UF{S{H?3m75S#LoP1Rsnf5zr=|r} zU5L~Mnj6trh;oL{fFH?n{#~7H)%Us*! z+RV1!>MP|QgLAiYDUm>-3vqV=hv{7c0H_9E-S6(R(&qG_hdNtHg9{car zvdiASpl1`-6XHb*Sl#inv~ig#wTx; z2U>+-w?8_XPZA(BX% zpB8Y*GIR)+th?9)H*g)&d7FG{NB(gLI@;7G#@OhdK7X71mV}O!o_3S0NDc!?!meT3 zN(_L-H_Mk<3E=20m;%WLz$Xu}skh0itncxjcUASj?`YTQzP`h_ZwsC7<2%^JJLI@@ z8~b>N>?!?A?ham9MI}QWvy~_R#uM|bm4{1~^i8+J>iUh$4&EUzMP@VZl>J7Bfi&vO zYrtt)*kpIggRuSl)jQ=<>+y=Yv?NlGyYI<-Ss0dewt+TCze9M;?|hWS4s6zSUcH^IP%6 zp}38^`A~pWjXsvkcC(i~athSOd*xvg$nd*Vu*M8g+v$@hVz8B-En3e0_g--kyYShf zP%%y)V4Y#Gg-!mbDCoF>LJ%=)gYnXj9eKZKm~|~K2JC@i?P9^#5WL*V_UtV>$-2gx z{_h7xcFB5~mF<7M$j9mr75%$-9hRpXU;?w~hegBL%8!altXEjmmw!}rojh|rE(T~g zgp~o_t#{%!5c2TPsa*BBh<(#IsJ-K1Bj&14jhO8ljhKVtw9slCs>MuZt_P|k{V;mq zL+tB^<%%xi9w5B(sD=Gc=fG(iK=%i9-;I$SYdpI#34e$+@0MqkZu=m^!)rfaZ|s(v zz`Ok)Kn`{p%6=N*t)Z=uvcH3#&-W3#2XS zi_`K<$zZX6O>lqYu|Y+g0my!Tid_rGAGVXQc9{WHO_mCvD)65D=KK?U3Y zzx;v%h!3R8|2$e?;vV?~XN2BQ@D&*_9EUkRv9f;Ct^Ha3lHz=J+H`Bb^oM)oFR7d0 z_DmOg$TxfC4)wf5Mq&57U@DQpkq_Q8m8i2`sa3D*a1bglyXacng8BIK^0JPfU=HI# zp@$&(r2C~Qh2&=vy>++O* z5+b8dVMYAY^d(Qpk4ob+Dus(i2VFG&nQzTYdwT~!?IF$1Z7vMM=-~zWn?HTf-j1UMlk~})l?+$BG;L?N z>PK#%Vg_44&q&v4HefnqhX^dd*RG0j&r99_fH3)G*_HZ`K=FEnZ%xAT42%Gm#jYEL zF5^pXcn3-3_|iDe-J`eC78@+haARUF?RdDL7B>mZrByJO^#ZI#7vcM9^i~uf?a2b4 z)CN8Y;HhKae?o4Uk=S{`zz?3avAKaZJ?l)moZp(uE7?}u#dJ9>Pi~Ks*YGmPw9(uv z(GhVDTW3w}!K@JA1_#>g3ur)W4&Y|U0NoWp%KGvG32k43Um?9$-2(}*;zg`=#J8Vb z`u3Jr-hSAHhQbR{{^A@f^Aa&De*}$~IL)QEzA<;V;$xVhysc8hlXvdXj{_qe5`Yy? z4##gdB0i!I;93w!z*@}0#XkegJbN*nyCSQasLHHt^@58q%b8$QuCg5Q~oWm}GmLZiO@@dnX;3LOdE#%Gpw)~yol ziKl-QyIrbPX^x>b@NeQ^cLu&&M*P6ePASD`Are1Wf>q{1+xs|oHlI(;rPhVg*`ZEZ%`sYh=vtk zO4%;yw7@Lq2x){gg>POSVId!Oc;Vgvt_)CBAr)=pP=d8+g5^j-uS7<8Cr*^xBxZRi zZyplS2Pv`4$e&6A)On%2St-4Fa8$Z$Exr(Hq3`+j$(t3*tAx)0`XpaD+M}g7>L2gz(Xx2SP2V)4^Xf+1mccshgkJ^PwnMuXt}RWO8<`q2S0meU zH8QRa{Qb>*+*VHIYGx95qkZTjH91=vui&#=y3E|tdNZJ<36NSkcSEP>gZ0@hjica3 z|2MZ~R!etqRhmlda} z>aqmcH3UNkSpb?S7b!7|tCGYCy+Pj%R0)Q+30EZv7jaF8Lj}a9Fe+qCCv2rCJQ@4x z@JgXlAC0j#L^;(WnqNte-A{Ug5Ioux!j}N~%4I(ByO<70V>ciq7b~}rSZtG<#dq>! zYExl`Zz#sr77Oy_cwB9gV59tGmf)2~o01X|54v1{r~-N%YLr_~>7Og*fNhEjd`Fw) zxhkkl3SAYn6$<{=TJ!__v!P82O>Kf9@lF&TZDOI$?85iZsZ}bdRczEM*xyE1%+n0C zoW7oI)0so|OoPev#T(KJ>_Fko$?b8`R#Zcy9&J^n8X9qJRizrX)z@f0>Y_$mn;O)c z5t_}_DcBdI0z9~3b{o04Xn(7O*V>$G_D3m7GTsVXS^dw&l_|s6!;7Xqmb-Psudt!C zVIV46MjQFcTu88lEKr0Ey%)e(NAW03eW4qLF0|9rBp@%mI{pQHtemD%#ZgC5vy6G?dlw zOP8#)F!2~FM7Mj1`(?02U^7LbD_K>f?8jy0{8mHw0Sh6&ijon6ix7=?+rj@w_vH0F z1)dP9OgO$gf1l(*8~ zrIa<2)Wj~hNU4>Y(%UamMo7}u^oJKKCrQ$E?Eck?o6TOWIN)zwjiU1?a*pUB@1;Dl z^-|?8h-|t-sbpuYQ8wU()8}gxSH*Rh&(vAn_{J_R1LF_gkV^LJSj}ZhLt7$U&23Ix zfkY5{;xeVa+#oR8W>axI3hifaVr6TUdZbTUt4yuis%OxEUFh_scY_RN>c^E#c9DOW z)m)*Jvv=1jUtnXwi2>Uj%axPi_}204mafC)om<(B>y(jj-e0GLkkrGkEis-bW>y)}#ycXY7vl{PL@{33$ZD=pdb0eD%DJUiUzMr(6<4uUS1EnjLmQP*ITHq6l{29! zCvfkpa{~8ew<6)h$3(t*=^qq9z4UjBpkDf0L=dIF?kXyM?ku0bMj2Ioi2&Ade=^nl zyNzts4XEIhO-iSnW!}C?*yJZp`tcHOyZ$%=(*1_tQ}dHcc0u3sv1V!d zZ#O7)QvNHF@;Li>n{qak<=HnXZo04Lx*L@t2)=ovasq-|Zc_Fm^tYRo+pUisPOrFG z`CRJw+&b){dB?(E{j4TG)|lOF`7KJ!y6-SMaEsC?y^Uyz>7+1R+(2uV!oRRYvyTb`94| z;$s8XUegX^g9rlS(reiF_bQW0_E43vq>24BlXgNuZe{1}RPHJLL?><~eRS|@*5^KD z?1^uQIK79xCW3kodr1WKUh=F6g1{43r|-K@@fN2aeN_2Jo_?DmrXUssMWV+}wb{Aa-Ir34Zw&-CbV0OT4k19RFIiLs+i!rpwHV+#&>CCBe z0w<#K;TXj13VZNz==fdi`^Ry30)`Oks$8G0enNRpD%tuyn1EfKV8Yi=DzBNtFaJ?F zRDKtwV+DzC5YaDAPVaq6DU$|n+Dg`2F|xs4!JhgM-V^U4bsxV9$uh!9y8&^u>t9UT zgL)qM7v3w-g{oDkBQ8U3IPfSNx<`2#7GBBI%J;DFwmhqBRrUc4gEp@JyET2=v&yCU zxQZ8Cu{KmQ_dX?JUHd&-xKHVf+e|Orr(AEn%gSnAP)1a*z4;lk<;bS9;tks_D=y}F zi{cbGY}E^julm^?2zCHSM}Ty~J4)QZbLs7ftAvx@|AI0IuU&3s(n~mK_v{X~@MR@L z?#h>xyREm~p~r8(o5zpcj%&H~`6u36!>pFh!JrL;9Q%5?CE{p!z{*V%95OH>Zjva% zxPZFNlm6mmB`u*}-1aI4VJV${`!C9ER_Rfe`kQiA`6GA{OokO%UqubSSkAFO%8vX^ zIc&S*;(RMMldjrhQQm))efgR)m}!&MKC%~Mqr`f@t~8X4Y))unqD$sYOs1cCUBSMCeFv33*@d#d zudHORexP(>SAC!yO^s}BYHf+eTU~@awY9k=dbSpa*EJvCt!r-8Gid{w)G~ib>-;8- zfEOEn*D>Hr7bl{v+MFfvd0Jv=qqcZy>l}iKM;jaCEgF(sBXuY0N>6+f%MsaS-RBC%+2pAJ+g66J*aeN-@mKW*$1~V zYz}7_tA0=MW`j4qr%cSVSS;+x_mr0GM9?~)t^H70%pUkynaMW1uV~Emfij!@>wRS) zEBr)pXJMqLf1(siY~mqhOX1+?($;x{+1yI(PdZ$wc4eg>LxlQaBPiR@SzTE+C`-aF z?xOZMCK8+|XE%MUIC_kTHb$G`kd5)p@r6sMX|$&1rDxA`C0igYNr=J{wxyriyCE8n zLoixhjq}f0IzKVLb%m=%TLQ_6x6W^FTH;#VqMfTDdD;Bdd5M3{(fqZ{r5BF&FsbjGw-#s8^1y;-jb(w=r|I5iqCI!HGnneLZ*3$Ey`CP zXZEj^BgZtx@xXKESDB%J~5#(s_5#=ZLQh_=@9sEY= zWzAbQuQ`4Cx5_dleYjAKOSyOcMLweCEAo&9My%WQEOr| z@>CzY$gQ@rUis>nW5}Fbpw_Y}#cEG>e}P)fMi#0&kAZnoR$pXam8hLrqoTgbZdcU} z*({oDQ_H2SNOno7x`48-V8vDH%5?8CwYHeO*;idy!mF&;8~tbOF*(kwP>+^m1f8h^ z)Nj+$K+<+aimI{LAhmyXZubpRPwF*FThttfURvRr(M&QqNo$$koEY1bm``0`bkovB zQ?*v+>Z*1q9NUy^o|t4-w|XJla73BMO1h}0WfSe_Q6FP3`P8NC@h<8PR@qrq+3c?B zRJOCLx{lTR)j8=EJ=B-1>2bYPCZ#*oseiDhZ}h9@T92tyte@I5eW;&WEiwCGbw!aO z+-%rjbr9P(SiLQM=ZWfz5_3&ZJF;~{)l#-`ym~_VrJ-s~QTnS<>REDD;nE8xs68aM zexiC$>D1QfLR8l^q8Tbakq%D6QAFnW2#RC)AdDcdc+^GtvF7GRHrT6vq&DbXeQaW> z&&#%ZRTmrXQ%}w!&mgu{C5ymDbpL@ZOIUeG9c>@kyl64h{t#de8_~Rc2-_Y~JEdDf zYF{fGF_TpvqpqwTy?k-w{P_GM*t; zst#cbqv#4RMAg>xkeHfZmiqM3XDrIDm!yt(7u*wd_~{C}r2=lf)nbw1MiB3Zy9lli z?zQ;QkU)=JvRecz_TFH(0Hy7D9bw4`)u!wm2g?+eLc~?T?F+Y;#ggP81lSwD6Y#6U z4~wrHpb~CAe*N(4j~{lVS_a~`4+JiNJIZRO6<5o7_z_`xY76Zar|#u{{Ro#ZM_etB z+_k}OaouQdOSHo;$|&4n$3;(NqgUoYp9J)d$Uu-2Ri`|8NsP?1X}Lj*YDy2`PA$@F zW`{cxVX%rlze%;FG-NOu5%<6iz$HTTyoa!d`z)64y4WqnhQI$!I`563Wfa1qa1{3j zGEj}geGj*9!|_?L?-$uq7NOP-e%GGRv@GB+Kv?e-7R#p~Y|iwIEZ83bE9fSWW)`GY zQ@C>ql0;J3*>G#m)+I1swp-3b{42#e+ir$Sg3=7vZGv}SsIxgA@e>d~1#UImBE@d0 zf_pjWkd#lxkEHy=61`W5_|sBG!qrF!!!Hu9hMz=wKH^D&Mf^4Jd+}??irOoqkoYDTusaAUa3XX})C|p^c>6!?# zu5nd%P)7T9P^;+ATgK*%jI4MvQbr@5h;)V9m%YD9El)jzx}KH=8bMe?JPl{; za$TuEjWSai$oQiAO}|)IRma44uv==8z6>sP^oQ{y<$gQDG&qR(Kj`r(%R5LQW|eld zV~3!{vI0L+V`C5|T`1zoz@qrYh#v#@3k<>}S)zafZVBS3fO`Pf8SX*2RFJRmBj$>N z>+n$K0^z<2U6~6)4*{4m98{^d%BgUvwWonP)rg);5N8rei&?xkB26d_lAz}~yDa#u`7ehXgxSLI0 zsa9~!XKs)2D1|7#aNj;|&K&)>xbP9s&8?X!`0qmhHml(OL0IPX=IDvvV4Jmb`+656 z+=Zh%iEXXz(Ahl~s$JNTO=^D1tYWA)n!}`7YC&g2Ry+<$wS&vXqp;|ue}Xz0j&KNE zCV8VL0h&e=r!4zSEkTI~5jGou&jDCiIfEDI6U8RP4F&AIaJv!`o_8<-5pr|aq4qRd z@6EI}!F~c*eT0QNus_#6@q#R1^UP*7(nMj1&<+#q@UD7c>fq9BR?HWKE9MQt{RxHW zkNn$MH5-Vead+cKGAUTN9`Q6Xquma#Apg|6}MY+u_1!a}AAb~0dvdDVzC(K9J6 zwL1&=|HeAq4#G4n(eu1JL)dK9UIZAyF|!f6Rj&Xk>WsO21|o$3Dlh`gR#3(SaI*JtKb&}Aa`pIJ72v?z$NQxI9!sVf7jYA zW8v)#%WSxF;ZBG92;7Nq^MOe4)8KZ5EAZwcOmmo% zfj^o(O;*)MC@)!0Bf9BRm^&kH!>P$oks78Rh`avOO#OG?=5e1P~u=4?8L={0d;jSUNr{EzvHF zR(%b?V)$!pmuRu9&I-Q|SfRbvXQl1P3V#MzA%;7%()NllsZn~q>Y1@zzJs3ziEVJj z-1}Nnx-d-6L!9VPE%1{_(z6VHQk6cq!+8v5uk$lnPT72s<;ww7D~5PI}=ceV8stU98*2*+Yb|ZL^06F?2lF+ip1#*^uZF!&mib zZ%ZS}Qrb6TN4^DRBD6K79YvT1W5HibHvo&-VK#8FX(_M&g*qXz7Mbm?1)X{jo(s1Q z?f|$n#)&YzmVJmbS{`PCi8v*`m9@P08i0k0$R5!TX2E_4SkVWvmkEz#!5#)|si^HS5x|3gNkghbOl1~}4YHTX%K{{!t< z8Mjz=4ba=rj)ozXQE!CB{OBr#X&xlto`B9U!+irYOmx&+L6bz3p8QAKn-P9fnCJfh zfXj7Q%P1t81!V`qqT>+AGbX|>BaQTycn)QS{{mRibYEtr<)?XvYm-0AdjJ-tuhJ6* zT}vV>{1spwM(PDfGZ$iW7VOWa0`JU%-J4Ejx;@cT2I(v&|A8#v?+`ZIuRQ@P3Xu() z|5$t2PyHD#eg(fUnEy#@(1N|oy}D(y3IMZEfVbcZ_RWM}aHn8ZM#_(8ooS{_%)}CdsBf+WqUbKUSo#x)5NBoqkqn2s;C6>gk2wP|kGTc#Gmv&UTzc;mfIH0; zhS%~xaMdQ-mm&r=qg^u-!~CZ*i5=h@#v;d$Te(P3Dh0lc{zh2kJ>c70QZ=ej391beiYfXv+Bl z_(hKuT>J6NOy?nVJ!g(;&UyX&$1*&IoW$soLFL?9Z_0IBjzTwOp|)|0PkGcoWvaX* z2ljcu7Sc%>UxsjxjG)v#n?c_RbkY4pmG1$#=wXDO;TWH@m~($QNA3>;oknXx&O9|R z>oV%y=Ayg~TG`xx3baU#8MNBZSzbn>s0k4Zo9cDQM2zY{&jG+wd*mt@uOo-j)sC6g zcWspv#v1@X1u>2+!amkV>Herm(b=Vwu1}(#I`P=GCNc`oNBl^*y$Bo+6_-q? zfrvj9?t6pv`I7~BA8oium4e^Wb7qm9qRjtk2dw5nYdOFx=1J zb^+kENN<4K*MPeeF7fG+kliu|ZU=-r!Ci`QJ=`}bHY84AAvI}@vEan7j1Cr)Hp+#1E%G&YEz^)@H=(-V7r6;{@T&F- z`gV}&#`_po&}Jo)E9Z$oC;cPHnYr{VNQv%CxMn?QrbV2h=T*SBQ_yB&U(Cz2Ga>(0 z!47~JHJvEfX9&{*Dm~^VK7PRrE0JRiZC5gjxnQM8>%oC^sUKrvxG~#~G$7sFEk|U9 zX(7o2I!m(R2kURw%&0V36SKJ;Kp|B|RwUI^Ox%wb-){B?`1+B$3S5E~q&!4;1;YIi zz69yjq{3#d(e0isSh}Fm{0I_gHfSHEYZfsZM3iL~;=~wJwKpShl-AP}UI#c*Ye~30 z;fhLaN7#e#-|^Ech0aL~&Q3rStx~mVir-qKngv+#0!l2i3_~30V0xCqFFHGgFGko) z9@a6gmhmoJ|L06E%O%0Pfnpww^?u0Tm9$4~TZG9^m7Jt!dli;c%RR0R3 zQ?4h#r73?9ZaLhsMtBxn8iyL;5 zs5Bvq-jf78jYDE>qA$XH>_yy#CR*c7xRmiUgoSPP%gJb5(h+NcK&zzhz^#QVq@iSt zz9dNkK-{3`*_9bBKI{4RwVIn14g+6k{N;z*!_FhvO#LDM02UIm7>SVfwr6b?;gbPd zV5DXfzA6iL{I3)uwbcZCA-F*zSUpznLmvW>Mr;u;-tq{RKZ|r1(znAU4o!nQ9ytw~i^QAU)=Cg-wcN4NpiGeT=(>hOzx7fE`coZx9iWe$KXT}!Cg>v^ zy5p8C=*JUcp3CQqW{l#OGn^A0^j4q?Zc)*=#^4RewWu2?;<3YTZWM}t80Z-YQM1V; zS7ua~DQ7|MS)fvzijtV;i=rtAmeXR3ZdNO37~{_?S%ud5$&Da$uJu{DHl3=k#+b+G z1`wQR#Czao@5TutT}FHz+;QXWmb2jA4REI(ga&T-?BO@d<$U3Onp7lgs~3Ll;z7T;ClcpR_wpaN>g8L zpV1!xE1EMKwgX_z&2QeWm|1v(j(&Y&#+DSi;snHvL-AVRo(lI*aK*^yf?w2J5c+mP zW_RF&@Cz)*o^|jGBltb2ck1lp z5H}p|3*ZdB@^c~F4=z2Qpx`1O3V(|*&iJ=&`+j}DC@Pu|e!)G_v_Ar#%meXcmezRR zd(woy8GeB#T-&5fafyU!Cb7+gx-$oAB~S$?2$f2HoPzJpfnEi4v+QOH&UKEt;4kMu ze_&OnK`D1WWM<|uX0{#5fi9*&f)8TEB~sl{GIT}$kmC3f_~QA=L`%et1ia`;h%2;= zM}+=9ZaU$cm3ap!c9AE!f0?W=*7lg9@Bdzj@D#+G)yqhPPe*($+zPm(_(DhZA>=}{ z0W)Yl!cQQ+k3Nyu25_@I-7wke&dYHlw8sWQ_EVcpD<7=r|LF#2ys+>F@woA`$T-UK_lX`>421F z#k9;MeH2Al*u}e4C!4oR?Z7tgQth@BAcVx8%pQC|J+b-{M2WT|PKbwUXJLQcg>Aot zZ(DDI8^^xcg@b>U58|{DPrMe1LitQ!eI8W%RZkX#40jtqiVgo1b`C(;UBKs~<_;73 z4E6^?KP?OWUK7Y{e8>jq;fDvy$7!l{*zf0)yARrGk2-oZHG-Ho7sa8qeP!RY?SEVNE4M^!v2G_>T|QQ z``HAtj7{FHR*=%=+c?dT=a~cWn{C$fO=%aH{N!Dk6}~VlTw=0)dB)-x&MIEJ)I}!v z`v6NLcy|F~HYXxxkVm05+>< zQe@_50)U0g7yske2~Te$j6G0*1q0fiY`UidRyLaCH-QrbY>@gb!XKJuk*;4U@a3SH zBBEmQMG@w(c-OuN@njQS0GE`a2n$!tn}zP%4mc0sNX-Zi{MDd=C`)UmPaSq?!9lfm)GwQ7MT+Cb3hc!y+388Wy6{m#XB5mPj^&X*bwNK zL0Ir$8WPPNY#YMnLL30Bm{je^N_#RZ{1sq@b-Nd7!bqgbd`GaNLs7)>=I6O=@v1ZR zSxYuv3F5_yef=4kPB<2R5;h39w$`U&Q<=-r}|5&WgV zB?U^4*l`|3oOr{Wqd>DQ{Qw{g{aW}%$1>aYy-kG0>-!(U+B!Wi%c-b@m<3T3*9;j` z-7McdA)lf(g?k3j&E4Z{g!^T>hgqci=Rm&(;KU9=PUs~n$qh)WArBr>34T-e7-gcR zLs%?N0^T(1u$t}u3rx7)*R@$U%2quhPlqUUdI=n)xPDqj?dlln{(vc5$HmaiDemd zeJ3wa#IrL8dN-gGglGXV!Vu0tqzy2TspWT@Xzex8GC(Y+1D;fcK`YhPg9u&Szq9B_9Zx%^&!G29+f7eC}ib)XL24bXjMfg^PNsZGZ)Cc*gVCJU&3B-gV zCEPn=x?Q#gt_$H__|ZdY5&Sg7*TC%$H^QeQk@N;H7pkgV5Bd58~Z9;w^~pgZQUW>!ommbL^HDxOc&&g+zKj zM2SUB>p#dS7)qOka4~uGr^#|1*6;-IHuy^5BVa|-?axa4 zG%Nf_v(fBSf3em}CCX)xQvCM|GOYX&e#+=X5Sa`22Dn||(o+M!=w{qVLEPC*x`x{e zmzwJI8}v%Qf^ce@DdJHO9*!_QxeD?^qu!mmEz&1mbKsr|SV3?n!nBb0GhB};UeFbA zgOD-3FHjmW>!*pP>*YJidF*cVc}y zKXdHIeAYsk^nXUWi%Nm#G5AFfm?viJE<{d5Vl&*aaDRd{_ataM@53*YlrVAbM;wh4 z?sJZv6E8=c5JJLl+k(gUavu1XJ`ht%<2RZ9C;H(UV0WZM<7va@25&1c#IrgF_6@)` z=dGLC9Q9=r>iQh0X`l+eP!@aHMb8>r6gQhtcjQ1d4_FygUfrE0)F*SHo|91K8y2gDhoi+L5V#n_;q$Oac*2^aD`MoYGPC-L59oL&#NV zQ-PY_(%#}Vzr8g3DckQ%lJcFY22>P!I<=?Oez$8C63O(XC!5$$IfzXMJPlT&pyt8| zjVoy7n+nzeejNw8L?DaT+#+lyCX|#QR%IgAAAVuL3fx4C-upz@OiT1ePAdhLnOkmD z4q{CpW?pYH6I+Tj(dCI_X8>P3jqqnT<#m7;YJuP+)3kP*3HJi{Md5{e8*qgwK)9I+ zHJ_XAHlgS0Z)u>50slA9bM?6wfu5cPoUG(LOiBUXBOGbKo#{B zpkD&jT=3(tY^MoTkoX0t!qOsg8J6*mXD;+!pl6Fw@si_*wmH1%-W42B-ky&&!H`gk24kv1^d@ z?ozv@5$-7fal?HcVX`y_!=*Pao8i*<+6gXoN^?PJYWHp{raXKm?}))W9#OL0D{k+;hI6 zQjK`AE-q{U@k&*M#Vb`YheST9b{TEqKvev!!JFYP%%?_#UV^X{x0N6V3gX z>U2JUOG^DVxMUXG2Ny$p%JQ_4U|FMY1zL+l;_L#1X|^VIUN6hncV4eSJWUTpd=uo0 z2ENlS(=%EKmkifQYjxec4}O{tyCC0V;EMCS>k(FHh9~r#xKiaZ01?6L_^XU~IF@JD zWlV%@nLc>5ee?efuwppNhW#{U0{%AuiDmD@r74c<3SH6G!yS(Bbo^@Z+kh|$$K!CR zrq98pPWA;{s;Rj5^K+N~ukXkxuisPH?FTUEos3%Z7g!@Raes>-FXPZ{bpf zP6JVLMScT8zc=kbn+8uY63&22{WP247Y0GmfNKCpoLUT*3OEg=A>NDd7=-KCIg8Xd zv;S4y?%cCkzo5d-P+TC|uS-AkSM}rk)OIAefOrCav}Hkr>)>~p!hPX4r}smc-YW|D z{_wl-69p7CE=56z6P8=Aw&piQ7irRUS6d&;vvk0v;d9Q`*j;a`r6VPkLaoc1m(THd z!&V1{;*DCgWzG`)ru4iridv%Kr$^+MQbepVx={1Z@dkngEc%w(A-_pmR=BA_s_Ify z!4Yt`a|}drn|o`tsdYZCL@(ZS5kA=?Z@OOU*0aP(Kw82Z2zVlMa1H$Yz52 zhHtSqY|0mE1N-`4YKcP&1~f=a7?}m5iFjxLyYEXiTpkKX!Vym(;t3@a{%FWQ@XR6X zL5Hm)8~%+dvrb>B1A8a^fp|QKhKVJDzF;&qsC>?xmZeKt=g`H;@j2&dEzMfO&8B~) z4$AYi8W}r}sAI~Leox37b;rY6FqzOi9sRVYPG2DDP5MJocP!u!#)Hwo61Host%eOdtd4Mo z+3=2gg@jx)1bca9)Efiu`A6BP2BauMT zlki4^C@yfrVH4GIpC^zAh2zPv<_QMk;bi3O44aDB!jo+>JM}Zw<8X((5b==56ZIy; z0bgh^r|pPFBYr>r`{Ge86pO`9WHrUMfzEg|;SYGDk!Uy?hNvfoT(IRA6m{CSO2E)mq+voSjMoiJU{%%)WjWghNYvBag7Kla??qGDJTgSe6 zs!ef*!bz{!?~8{SMT;c;;ginGRA+)i3nfBYD5QBJ-dH#m31KH?z;?PL8V@F*Mv}pV&mRef zv@v>g#1{y7Jz=jF3ZQ8s-m%P4g@T8pv7jdqc0&-*E{XUlel9Lm!v+uLp9>f~c%Ikm z)gnPZ#8vZoWAX4f&M{}$6N@Lj&|`70$BVWYe?AJXvDABNkwc5b+?p>E2RlMOZ|Ky^ znB!A*VYiGT2U&kK;f3l8$DnaM-k>&txelr;obhnL<4$@L-f+|lIrC3k#cB?!3p&&1 zEr6xP!X6)_(ChI0+MTRsZq@k@dvfiC`j_44`hRc--#~ zpw)uzWN_N0l>b6@|A(sL^rJ0&K~FFqizbnGZ2D@R*fqLjPNSA=1$qEOfaY`iqTYDG z>kmg~5dEdjh|lYbBodK;*XQv-WzXEeYsE%Jd2{2u+q;U8gVz8E*eY3AaWSmqI1~B&(t2y zfDdXm8IOAXD6BW8&ApSQ%51&aFQ2I`PRJf49YU6LyM4)6B07pXP&anV=V~VmXQ+87 z5Qqk$@J9`oq4cc0s1&jb;;%s7iS-5C}!VHV@Qh7)m(VPStEg#^qjL2xQ#x zxX%w=7!93$YDTA=;Ecwg7BIY%x=ng~-gym7`UM008*W=?XEK7J+Z%|wF#yEF;pF^t z*;Bo3li8dCXxd%nwnDc3WLsf*6k0F>VM;>cwXom6;8?XhtkmXl_@U{O_(F^~9F9fN zT^F*8N^K*Y377y{EEXV*1$)TXh$4_;a{O1Vw#SmeurJ~c2NNEsX!jy^c&cr#(+gfh zPefuKZzAOL1)5G`-%Pc+*o-n;CkM{MhnIk zoA~eW#Jo{Rk1rVwLX#xV8N$w=ZtK=P*#gnVw|($^8;DsH=3&Gii(}LedNjYgh1E>A zo#cSJjbda71Y+SxBV;Va9g>W?gUi@0vu#t$At6v_=qU*| z3WFmPL(ok{X*c%vN`;-!{Ps&4B*miNyU; ze+1*(1*hoade`C5;t>zJs0QOF>W@P8#8wV(8}vIllb)zQ76gM5(Llr-id;C1{bQyL z-yxl8D{>^D=KNYX;P+tc@q64U_SQ_B->LcH=mS)r1hla)u}WgyX4#_UP<%n~50V{; zz-H4fl9uZx-Qxe@qc&8V4v8cN!gvJzDhPGv_g*YrEU{bO#s+?vt}6TSfB1e10A*JF zKebOe)FHK~*RQz~AsCmJNEfsboYo-_4*IlkEDM+Ab%2K6UPt_Gu(596ylk%qc)q(sYRe(l3_n|aL5yk`0+`pf*;ir zoS``82e56Efhb0spm&4BUjI%#uRN*wefUMfL5!D4Z}dv(G4{*P>c#AHyX}MyNpCQc z1RakTrcc73*eIDSCf$^U$q92R=8HsQ(Fp9H@Kx-|-Zrh==Z8rhfiCl-G$_f{(geMV zU&^)Fu1NRopHF)Y%|5odr9`xXNJP}4$2>YSVn8eC{P){$9cwtRKSYQ{xFo*=V3alG` zQ0vPvz+hq!_6OXsiMf^1#H6#I+chtL-4He$3j@7Ap^igXl#u zFNR@E0%Nh;!CgL4THn!jiZcq9dlNwzn6SJs2;3oE`)6CLBOY=mVQu?i2PR{fq20-D zskYTS++d448G|(%LS5W}yVwnqZAf_-#w7+`4CFDdhAHFSc%8uuSFhSSRnBkK7NI)^ z;!#+_P~|Wb{N6zP9yZ8o>)Qdg9`wB@8csw){-ED~ue2yrvtgC^?hp0lNHnN<{Gnvj z>-9nW13TG2t*AE!Xs_mtU=9{ZK+kCR8O21K27JDFFobDeFdVp_t;)0YcfeqZ`U6pn zk5L~+?$84)T5TIt4ii2KB}Vf+*nnYe7g~iTbk$3nU^{9p=kk#(1|uXGj%vxU8(J^% zAiF5v<|}uj6L|cXg+?J}0l)VlX*ioxZ>wg9@@-BBWGfW(MuIR%;sNy3hgp4rE$m2o zKnf-bnMR(VKd~F1BC=hJ(KbYagn=vJiJ=2M!Uh%EmN~;v4?ZYwH|B6jn8A-qTSnRj zJ3`@rSJPlx1!JT?l4l8u>ANc*GCR<9d9+U@g^nFb}5c*?As9Hh}n(gR`0tJkOfNv9Qx!6*yG zlb9oh1DFKw(aVX+VH^`FtcE}}g(BM1IyBT?EaCIO%)&|qY~E*Bp@IhWCfpi2Fecie zxCSlstklS^S8P3O6Z*TRVm5#eK8@2>u=-M47q(coIm_L!K_CyX8Uk3(2_^PQxKEZk z7v#4abT1j1Smc1ZOD4UsKkJ!C<8BS5_j<8B0d*gIj_pxxeI1?T+tS%KDDM?%5Su(33m~msY+a;R*~TumP~KmRaSPV}e5|K6&R;^p z4D%ia5!9kLj#-{JvfpUPPzX~xNKe4yNnpnHS9V^xZMY-p!vq_%x`-EpXfzT28>{JL zTjanv7Yk`vhr;>`hNkFi?B-6kbL=qff+#757a!pLuQOML&08MzX_&ugFWBHcCz$OouODHOJZ8=4fwHE5s5_J zW&=CJ-i?MK#X%3+8v}gM?>WGp>uftE?;YtPi58VPBk72?WOuR?k*TZfeYLlH94AA#94;bS1gnhn)rZg;b z_+X$w?qKN05}x;Yw=aj@g|>^qy4MmuOt(LP*@b1IL|0xm6e$)AB!fN-60tap)2Q~L zw2}i{F6e11DTgwIDH@JKo5o>C#y*mU@ha89 z&OTTF5aJx;%Yu{}M)WWWl88hD?r6~Wu{4xJvv<1LI+Vv^SgrDsCZYi&;rRrH24Bg4v0*i8fmJ%z~_(ti+P;3xWk7b0v!kghZ_ns68=_Kg%~ffZtTI@PRNtMveb8a--XJ6BE>3Q zAQ9Kx@&8lTnMYey)p2~?b6Tj#&Uf!c3Xw?=1R2ge@E*tmAp{E?(vabCMr7p!0v@T$ zRXNWHqWqlaDF+6pM$>F%W>(s2u+o&u%u2ICR2=BD?|BHd@*jC;+V`A&_Wu69!*-qG z%?gCM!&G-1LO=I|wAexSZX2!!$d-{%`V)qz0d07yIhBhGL6{(WtGW=o7IW8UX1Ng} z-Flmmz2`#R{mm@nF>IjMwg5H9d53=9bIR5eTU;{2QpDSXs?)p9&f2Hxb*2;Y@whQe%-_m%~rfx?$C@#sBxCXF8|-NQ8Du%ZN86AwKEgR=7d+M4R< z_F({)1xf@Nr~xv$wikUM_HY2p@^V0ionev(iS6!^EyGpbbb>I(Wlw-|reN-V#WK!XnA z1tQKUf9MM&ynVKDls@XTMn2Nd1q^-PVp#cv3g;N|(pYsw1GFeZYCwW%gdJm@YlwZg zDw~uP8@^6`0Ow$#=NX^TcQQamj#q~@9K6kp5*T5@q($JKZ^#>mE589PvH}RI4-bKn z1{Zw9{tG{1|3!v;X&mzdzMP{+!zh92B+kW#JT(p~gQ=gpITAQVKm%BpNOQc3n~v|| z^W$avSqQyKFEz62Ue6h!CO3gPxW2=H^dLY*w9e?PjA}fH78n>l>vYQAU~4NdY!6O-K3qy&4_VU^3!mq><~Rgn*3=hW4GO zHar|qNR;bxHAM1qBiC=}6S8(Z_Zee}N1!DBlZ8+XHyYEcxBKdN)z*YDGL&4$@;EIh zvn!0r)zOI)RNwx@I<5_)h53+Fl);t8-h{ospVE_V3L3!Ji_F_(EbjH?C(cq)(=B-l zthTbiUiW=ZjQgc4ptjo+)jAjV4CZ$Py?#wn(Dh>79EHyQHC zC}txrO$x`RrsLXUG~djO+D*jj(!IMtd)SOsw_R^MkdTDyu!x_ zNT=H5-)wBHRo>&5Ewzt~vDBGNRF7K33xI8C9=t_%S!!{ev<#wOVu0fvqawD-a$C(F zxXs{ezx>i3dRVo5zdUQJ=Eoi|mh6d(_LDx2vOft~M@f{>>lj<1a2_Wz}((1Ey_2;R!6n z`V-PQN%?igx)0C8ek^h*X7U3$e-g%I8b#DsGP}@%!P@qdMu)6y$9rtm4-CN~^eh}! z><_2(f5-sl=-A2t#1V&<;}_sTBQ(9IWO+N#L3ctc16P+2*K*1q0ZUUl81=0twb+i_ zAP5t}IaK1)#x#BOaNXp-Z6%!DW-@B?l)&r9($S&fIk>+8XFoG0$Qjer;Ks>Xt7iZty0k3I5P8vR9$6n37K9|lm*7@^E>CvilY_+>Nj30C zM9)3_qH3N2>JjIZ0U*Q#h<^ED^PZI!n3n-+%eO-}|CO9RO^t67y?V@gns%em^P=aB zsnT|&8hy~}(^gkDhDCT6!&oft+QQ`dwXBbEj=rW$kb?vHqL2I?RV$yzOFKUnEJ-)ch6I8ybkQw_AA1`R1t zJ3;nBb?h;YHKF>xjh+GeHNkX$N14+1JUHL|v1l3(>@39ADt!Q!5H5L9H{e3Bxe~zQ z)kdhK=p|!T>snbi1AvF_VYE%NN5w_Ut!y7s6`X$+JV$uqLphBU#7R%mzh+g(4qlt@pl^2czaSw3ilrEah*&(k_RcYP#poxH7MomYe zxNpgevjI}<5~Mq)Cb4ZXGT)YAbNC77Ckt6fk1R3=-1~R&9ev^$mRl5nVNoW;8#?N7(sRw_`sh#z zkL4&17*C9fDm4Kuqw~zQ)wOpXt7ee^kl8TFuqt6rQF^}Vwfbz(DMh}tmBnjQ2;^m^ zdhp{UzQB~)acV4JgRRLkVajD$nFbe{?X4?E^sLNT>P6JPy8&EcovPy+LbD?KB6Ehk zJ4cOd$^Hg6S8Cx0j9{m`@x`X>oTJ*C%xfZi3$Yt(Jr!MI&ed1BE#2QpKrrq87H~C6 zadfFES0AksV(k*!$ARZ30844Fll7ldS(^utL$T4IrMAj!xokc)bSVG9UM!plF`u%w z0%_;1H#@7qaL7W{Z&1buv;g7oC$5mWC#iY0E9It>)bULQ6ta-jO$2BR ztzwfopCw`AU<40NY9k6NU}i9M13(JkgPyIHPK72GG~5x`^|ynD%SjI zyal=tDOlYRu5RF8EwzPeGAy4Q0<&JPG9&24c$Yf5cAp%uM0w_BCc+nB%`$(98a{c8*{8ecW(nlh)*so*)3%xWu%~;) z+T#9dSNF;X%>BB$dh%s!*DP}%H23Z5>h3v(KOd5JmT(&{EK!4M59_}>YhRQ0L@oOd DCrp*& delta 294859 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�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 diff --git a/srml/assets/Cargo.toml b/srml/assets/Cargo.toml index 7dfc8fd04d..621d4a1ac4 100644 --- a/srml/assets/Cargo.toml +++ b/srml/assets/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false } # Needed for various traits. In our case, `OnFinalise`. primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } @@ -23,7 +23,7 @@ runtime_io = { package = "sr-io", path = "../../core/sr-io" } [features] default = ["std"] std = [ - "serde/std", + "serde", "parity-codec/std", "primitives/std", "srml-support/std", diff --git a/srml/aura/Cargo.toml b/srml/aura/Cargo.toml index 49c371cd45..bb8af29e8d 100644 --- a/srml/aura/Cargo.toml +++ b/srml/aura/Cargo.toml @@ -7,7 +7,8 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" parity-codec = { version = "3.1", default-features = false, features = ["derive"] } -serde = { version = "1.0", default-features = false } +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 } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } @@ -27,7 +28,7 @@ consensus = { package = "srml-consensus", path = "../consensus" } [features] default = ["std"] std = [ - "serde/std", + "serde", "parity-codec/std", "rstd/std", "srml-support/std", diff --git a/srml/balances/Cargo.toml b/srml/balances/Cargo.toml index 1cb75c94ed..c8d5d152a3 100644 --- a/srml/balances/Cargo.toml +++ b/srml/balances/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} parity-codec = { version = "3.1", default-features = false, features = ["derive"] } substrate-keyring = { path = "../../core/keyring", optional = true } @@ -22,7 +22,7 @@ substrate-primitives = { path = "../../core/primitives" } [features] default = ["std"] std = [ - "serde/std", + "serde", "safe-mix/std", "substrate-keyring", "parity-codec/std", diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index f5168240a7..2fe797de2d 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -29,7 +29,8 @@ use rstd::{cmp, result}; use parity_codec::{Codec, Encode, Decode}; use srml_support::{StorageValue, StorageMap, Parameter, decl_event, decl_storage, decl_module, ensure}; use srml_support::traits::{ - UpdateBalanceOutcome, Currency, EnsureAccountLiquid, OnFreeBalanceZero, TransferAsset, WithdrawReason, ArithmeticType + UpdateBalanceOutcome, Currency, OnFreeBalanceZero, TransferAsset, + WithdrawReason, WithdrawReasons, ArithmeticType, LockIdentifier, LockableCurrency }; use srml_support::dispatch::Result; use primitives::traits::{ @@ -53,9 +54,6 @@ pub trait Trait: system::Trait { /// Handler for when a new account is created. type OnNewAccount: OnNewAccount; - /// A function that returns true iff a given account can transfer its funds to another account. - type EnsureAccountLiquid: EnsureAccountLiquid; - /// The overarching event type. type Event: From> + Into<::Event>; } @@ -99,6 +97,15 @@ impl> VestingSchedule { } } +#[derive(Encode, Decode, Clone, PartialEq, Eq)] +#[cfg_attr(feature = "std", derive(Debug))] +pub struct BalanceLock { + pub id: LockIdentifier, + pub amount: Balance, + pub until: BlockNumber, + pub reasons: WithdrawReasons, +} + decl_storage! { trait Store for Module as Balances { /// The total amount of stake on the system. @@ -160,6 +167,9 @@ decl_storage! { /// `system::AccountNonce` is also deleted if `FreeBalance` is also zero (it also gets /// collapsed to zero if it ever becomes less than `ExistentialDeposit`. pub ReservedBalance get(reserved_balance): map T::AccountId => T::Balance; + + /// Any liquidity locks on some account balances. + pub Locks get(locks): map T::AccountId => Vec>; } add_extra_genesis { config(balances): Vec<(T::AccountId, T::Balance)>; @@ -285,16 +295,14 @@ impl Module { None => return Err("got overflow after adding a fee to value"), }; - let vesting_balance = Self::vesting_balance(transactor); let new_from_balance = match from_balance.checked_sub(&liability) { None => return Err("balance too low to send value"), - Some(b) if b < vesting_balance => return Err("vesting balance too high to send value"), Some(b) => b, }; if would_create && value < Self::existential_deposit() { return Err("value too low to create account"); } - T::EnsureAccountLiquid::ensure_account_can_withdraw(transactor, value, WithdrawReason::Transfer)?; + Self::ensure_account_can_withdraw(transactor, value, WithdrawReason::Transfer, new_from_balance)?; // NOTE: total stake being stored in the same type means that this could never overflow // but better to be safe than sorry. @@ -313,7 +321,6 @@ impl Module { Ok(()) } - /// Register a new account (with existential balance). fn new_account(who: &T::AccountId, balance: T::Balance) { T::OnNewAccount::on_new_account(&who); @@ -329,6 +336,7 @@ impl Module { fn on_free_too_low(who: &T::AccountId) { Self::decrease_total_stake_by(Self::free_balance(who)); >::remove(who); + >::remove(who); T::OnFreeBalanceZero::on_free_balance_zero(who); @@ -359,6 +367,35 @@ impl Module { >::put(v); } } + + /// Returns `Ok` iff the account is able to make a withdrawal of the given amount + /// for the given reason. + /// + /// `Err(...)` with the reason why not otherwise. + pub fn ensure_account_can_withdraw( + who: &T::AccountId, + _amount: T::Balance, + reason: WithdrawReason, + new_balance: T::Balance, + ) -> Result { + match reason { + WithdrawReason::Reserve | WithdrawReason::Transfer if Self::vesting_balance(who) > new_balance => + return Err("vesting balance too high to send value"), + _ => {} + } + let locks = Self::locks(who); + if locks.is_empty() { + return Ok(()) + } + let now = >::block_number(); + if Self::locks(who).into_iter() + .all(|l| now >= l.until || new_balance >= l.amount || !l.reasons.contains(reason)) + { + Ok(()) + } else { + Err("account liquidity restrictions prevent withdrawal") + } + } } impl Currency for Module @@ -376,11 +413,11 @@ where } fn can_reserve(who: &T::AccountId, value: Self::Balance) -> bool { - if T::EnsureAccountLiquid::ensure_account_can_withdraw(who, value, WithdrawReason::Reserve).is_ok() { - Self::free_balance(who) >= value - } else { - false - } + Self::free_balance(who) + .checked_sub(&value) + .map_or(false, |new_balance| + Self::ensure_account_can_withdraw(who, value, WithdrawReason::Reserve, new_balance).is_ok() + ) } fn total_issuance() -> Self::Balance { @@ -429,9 +466,10 @@ where if b < value { return Err("not enough free funds") } - T::EnsureAccountLiquid::ensure_account_can_withdraw(who, value, WithdrawReason::Reserve)?; + let new_balance = b - value; + Self::ensure_account_can_withdraw(who, value, WithdrawReason::Reserve, new_balance)?; Self::set_reserved_balance(who, Self::reserved_balance(who) + value); - Self::set_free_balance(who, b - value); + Self::set_free_balance(who, new_balance); Ok(()) } @@ -479,6 +517,80 @@ where } } +impl LockableCurrency for Module +where + T::Balance: MaybeSerializeDebug +{ + type Moment = T::BlockNumber; + + fn set_lock( + id: LockIdentifier, + who: &T::AccountId, + amount: T::Balance, + until: T::BlockNumber, + reasons: WithdrawReasons, + ) { + let now = >::block_number(); + let mut new_lock = Some(BalanceLock { id, amount, until, reasons }); + let mut locks = Self::locks(who).into_iter().filter_map(|l| + if l.id == id { + new_lock.take() + } else if l.until > now { + Some(l) + } else { + None + }).collect::>(); + if let Some(lock) = new_lock { + locks.push(lock) + } + >::insert(who, locks); + } + + fn extend_lock( + id: LockIdentifier, + who: &T::AccountId, + amount: T::Balance, + until: T::BlockNumber, + reasons: WithdrawReasons, + ) { + let now = >::block_number(); + let mut new_lock = Some(BalanceLock { id, amount, until, reasons }); + let mut locks = Self::locks(who).into_iter().filter_map(|l| + if l.id == id { + new_lock.take().map(|nl| { + BalanceLock { + id: l.id, + amount: l.amount.max(nl.amount), + until: l.until.max(nl.until), + reasons: l.reasons | nl.reasons, + } + }) + } else if l.until > now { + Some(l) + } else { + None + }).collect::>(); + if let Some(lock) = new_lock { + locks.push(lock) + } + >::insert(who, locks); + } + + fn remove_lock( + id: LockIdentifier, + who: &T::AccountId, + ) { + let now = >::block_number(); + let locks = Self::locks(who).into_iter().filter_map(|l| + if l.until > now && l.id != id { + Some(l) + } else { + None + }).collect::>(); + >::insert(who, locks); + } +} + impl TransferAsset for Module { type Amount = T::Balance; @@ -487,10 +599,11 @@ impl TransferAsset for Module { } fn withdraw(who: &T::AccountId, value: T::Balance, reason: WithdrawReason) -> Result { - T::EnsureAccountLiquid::ensure_account_can_withdraw(who, value, reason)?; let b = Self::free_balance(who); ensure!(b >= value, "account has too few funds"); - Self::set_free_balance(who, b - value); + let new_balance = b - value; + Self::ensure_account_can_withdraw(who, value, reason, new_balance)?; + Self::set_free_balance(who, new_balance); Self::decrease_total_stake_by(value); Ok(()) } diff --git a/srml/balances/src/mock.rs b/srml/balances/src/mock.rs index 6dcff18c6e..85ae7a131e 100644 --- a/srml/balances/src/mock.rs +++ b/srml/balances/src/mock.rs @@ -49,7 +49,6 @@ impl Trait for Runtime { type Balance = u64; type OnFreeBalanceZero = (); type OnNewAccount = (); - type EnsureAccountLiquid = (); type Event = (); } diff --git a/srml/balances/src/tests.rs b/srml/balances/src/tests.rs index 272e4f5f10..1aa76a62c7 100644 --- a/srml/balances/src/tests.rs +++ b/srml/balances/src/tests.rs @@ -21,7 +21,136 @@ use super::*; use mock::{Balances, ExtBuilder, Runtime, System}; use runtime_io::with_externalities; -use srml_support::{assert_noop, assert_ok, assert_err}; +use srml_support::{ + assert_noop, assert_ok, assert_err, + traits::{LockableCurrency, LockIdentifier, WithdrawReason, WithdrawReasons, Currency, TransferAsset} +}; + +const ID_1: LockIdentifier = *b"1 "; +const ID_2: LockIdentifier = *b"2 "; +const ID_3: LockIdentifier = *b"3 "; + +#[test] +fn basic_locking_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + assert_eq!(Balances::free_balance(&1), 10); + Balances::set_lock(ID_1, &1, 9, u64::max_value(), WithdrawReasons::all()); + assert_noop!(>::transfer(&1, &2, 5), "account liquidity restrictions prevent withdrawal"); + }); +} + +#[test] +fn partial_locking_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, 5, u64::max_value(), WithdrawReasons::all()); + assert_ok!(>::transfer(&1, &2, 1)); + }); +} + +#[test] +fn lock_removal_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, u64::max_value(), u64::max_value(), WithdrawReasons::all()); + Balances::remove_lock(ID_1, &1); + assert_ok!(>::transfer(&1, &2, 1)); + }); +} + +#[test] +fn lock_replacement_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, u64::max_value(), u64::max_value(), WithdrawReasons::all()); + Balances::set_lock(ID_1, &1, 5, u64::max_value(), WithdrawReasons::all()); + assert_ok!(>::transfer(&1, &2, 1)); + }); +} + +#[test] +fn double_locking_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, 5, u64::max_value(), WithdrawReasons::all()); + Balances::set_lock(ID_2, &1, 5, u64::max_value(), WithdrawReasons::all()); + assert_ok!(>::transfer(&1, &2, 1)); + }); +} + +#[test] +fn combination_locking_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, u64::max_value(), 0, WithdrawReasons::none()); + Balances::set_lock(ID_2, &1, 0, u64::max_value(), WithdrawReasons::none()); + Balances::set_lock(ID_3, &1, 0, 0, WithdrawReasons::all()); + assert_ok!(>::transfer(&1, &2, 1)); + }); +} + +#[test] +fn lock_value_extension_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, 5, u64::max_value(), WithdrawReasons::all()); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + Balances::extend_lock(ID_1, &1, 2, u64::max_value(), WithdrawReasons::all()); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + Balances::extend_lock(ID_1, &1, 8, u64::max_value(), WithdrawReasons::all()); + assert_noop!(>::transfer(&1, &2, 3), "account liquidity restrictions prevent withdrawal"); + }); +} + +#[test] +fn lock_reasons_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::Transfer.into()); + assert_noop!(>::transfer(&1, &2, 1), "account liquidity restrictions prevent withdrawal"); + assert_ok!(>::reserve(&1, 1)); + assert_ok!(>::withdraw(&1, 1, WithdrawReason::TransactionPayment)); + + Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::Reserve.into()); + assert_ok!(>::transfer(&1, &2, 1)); + assert_noop!(>::reserve(&1, 1), "account liquidity restrictions prevent withdrawal"); + assert_ok!(>::withdraw(&1, 1, WithdrawReason::TransactionPayment)); + + Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::TransactionPayment.into()); + assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::reserve(&1, 1)); + assert_noop!(>::withdraw(&1, 1, WithdrawReason::TransactionPayment), "account liquidity restrictions prevent withdrawal"); + }); +} + +#[test] +fn lock_block_number_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, 10, 2, WithdrawReasons::all()); + assert_noop!(>::transfer(&1, &2, 1), "account liquidity restrictions prevent withdrawal"); + + System::set_block_number(2); + assert_ok!(>::transfer(&1, &2, 1)); + }); +} + +#[test] +fn lock_block_number_extension_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, 10, 2, WithdrawReasons::all()); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + Balances::extend_lock(ID_1, &1, 10, 1, WithdrawReasons::all()); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + System::set_block_number(2); + Balances::extend_lock(ID_1, &1, 10, 8, WithdrawReasons::all()); + assert_noop!(>::transfer(&1, &2, 3), "account liquidity restrictions prevent withdrawal"); + }); +} + +#[test] +fn lock_reasons_extension_should_work() { + with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + Balances::set_lock(ID_1, &1, 10, 10, WithdrawReason::Transfer.into()); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + Balances::extend_lock(ID_1, &1, 10, 10, WithdrawReasons::none()); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + Balances::extend_lock(ID_1, &1, 10, 10, WithdrawReason::Reserve.into()); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + }); +} #[test] fn default_indexing_on_new_accounts_should_not_work2() { @@ -464,4 +593,4 @@ fn extra_balance_should_transfer() { assert_ok!(Balances::transfer(Some(1).into(), 2, 256 * 5)); // Account 1 can send extra units gained } ); -} \ No newline at end of file +} diff --git a/srml/consensus/Cargo.toml b/srml/consensus/Cargo.toml index 075980fc5f..105f978c63 100644 --- a/srml/consensus/Cargo.toml +++ b/srml/consensus/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false, features = ["derive"] } substrate-primitives = { path = "../../core/primitives", default-features = false } @@ -22,7 +22,7 @@ runtime_io = { package = "sr-io", path = "../../core/sr-io" } [features] default = ["std"] std = [ - "serde/std", + "serde", "serde_derive", "parity-codec/std", "substrate-primitives/std", diff --git a/srml/contract/Cargo.toml b/srml/contract/Cargo.toml index 05d9a8e616..d0c851e26e 100644 --- a/srml/contract/Cargo.toml +++ b/srml/contract/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -serde = { version = "1.0", default-features = false } +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"] } @@ -30,7 +30,7 @@ consensus = { package = "srml-consensus", path = "../consensus" } [features] default = ["std"] std = [ - "serde/std", + "serde", "serde_derive", "parity-codec/std", "substrate-primitives/std", diff --git a/srml/contract/src/exec.rs b/srml/contract/src/exec.rs index 046d107533..615fdc51e2 100644 --- a/srml/contract/src/exec.rs +++ b/srml/contract/src/exec.rs @@ -20,8 +20,8 @@ use crate::gas::{GasMeter, Token, approx_gas_for_balance}; use rstd::prelude::*; use runtime_primitives::traits::{CheckedAdd, CheckedSub, Zero}; +use srml_support::traits::WithdrawReason; use timestamp; -use srml_support::traits::EnsureAccountLiquid; pub type BalanceOf = ::Balance; pub type AccountIdOf = ::AccountId; @@ -520,7 +520,7 @@ fn transfer<'a, T: Trait, V: Vm, L: Loader>( if would_create && value < ctx.config.existential_deposit { return Err("value too low to create account"); } - ::EnsureAccountLiquid::ensure_account_liquid(transactor)?; + >::ensure_account_can_withdraw(transactor, value, WithdrawReason::Transfer, new_from_balance)?; let new_to_balance = match to_balance.checked_add(&value) { Some(b) => b, diff --git a/srml/contract/src/tests.rs b/srml/contract/src/tests.rs index 1d1141c2f4..7a7137c675 100644 --- a/srml/contract/src/tests.rs +++ b/srml/contract/src/tests.rs @@ -77,7 +77,6 @@ impl balances::Trait for Test { type Balance = u64; type OnFreeBalanceZero = Contract; type OnNewAccount = (); - type EnsureAccountLiquid = (); type Event = MetaEvent; } impl timestamp::Trait for Test { diff --git a/srml/council/Cargo.toml b/srml/council/Cargo.toml index 3e6f41d2a9..868ec3bcff 100644 --- a/srml/council/Cargo.toml +++ b/srml/council/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} parity-codec = { version = "3.1", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } @@ -29,6 +29,7 @@ std = [ "parity-codec-derive/std", "substrate-primitives/std", "rstd/std", + "serde", "runtime_io/std", "srml-support/std", "primitives/std", diff --git a/srml/council/src/lib.rs b/srml/council/src/lib.rs index 20c95b2bd9..5f5709656d 100644 --- a/srml/council/src/lib.rs +++ b/srml/council/src/lib.rs @@ -76,7 +76,6 @@ mod tests { type Balance = u64; type OnFreeBalanceZero = (); type OnNewAccount = (); - type EnsureAccountLiquid = (); type Event = Event; } impl democracy::Trait for Test { diff --git a/srml/democracy/Cargo.toml b/srml/democracy/Cargo.toml index 23ca4221cf..29b70938f2 100644 --- a/srml/democracy/Cargo.toml +++ b/srml/democracy/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +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"] } @@ -23,7 +23,7 @@ balances = { package = "srml-balances", path = "../balances" } [features] default = ["std"] std = [ - "serde/std", + "serde", "serde_derive", "safe-mix/std", "parity-codec/std", diff --git a/srml/democracy/src/lib.rs b/srml/democracy/src/lib.rs index e421fdeb0a..1c06a43ff9 100644 --- a/srml/democracy/src/lib.rs +++ b/srml/democracy/src/lib.rs @@ -20,17 +20,19 @@ use rstd::prelude::*; use rstd::result; -use primitives::traits::{Zero, As}; +use primitives::traits::{Zero, As, Bounded}; use parity_codec::{Encode, Decode}; use srml_support::{StorageValue, StorageMap, Parameter, Dispatchable, IsSubType}; use srml_support::{decl_module, decl_storage, decl_event, ensure}; -use srml_support::traits::{Currency, OnFreeBalanceZero, EnsureAccountLiquid, WithdrawReason, ArithmeticType}; +use srml_support::traits::{Currency, LockableCurrency, WithdrawReason, ArithmeticType, LockIdentifier}; use srml_support::dispatch::Result; use system::ensure_signed; mod vote_threshold; pub use vote_threshold::{Approved, VoteThreshold}; +const DEMOCRACY_ID: LockIdentifier = *b"democrac"; + /// A proposal index. pub type PropIndex = u32; /// A referendum index. @@ -68,7 +70,7 @@ impl Vote { type BalanceOf = <::Currency as ArithmeticType>::Type; pub trait Trait: system::Trait + Sized { - type Currency: ArithmeticType + Currency<::AccountId, Balance=BalanceOf>; + type Currency: ArithmeticType + LockableCurrency<::AccountId, Moment=Self::BlockNumber, Balance=BalanceOf>; type Proposal: Parameter + Dispatchable + IsSubType>; @@ -208,9 +210,6 @@ decl_storage! { /// Queue of successful referenda to be dispatched. pub DispatchQueue get(dispatch_queue): map T::BlockNumber => Vec>; - /// The block at which the `who`'s funds become liquid. - pub Bondage get(bondage): map T::AccountId => T::BlockNumber; - /// Get the voters for the current proposal. pub VotersFor get(voters_for): map ReferendumIndex => Vec; @@ -371,7 +370,7 @@ impl Module { // lock should they win... let locked_until = now + lock_period * T::BlockNumber::sa((vote.multiplier()) as u64); // ...extend their bondage until at least then. - >::mutate(a, |b| if *b < locked_until { *b = locked_until }); + T::Currency::extend_lock(DEMOCRACY_ID, &a, Bounded::max_value(), locked_until, WithdrawReason::Transfer.into()); } Self::clear_referendum(index); @@ -409,35 +408,6 @@ impl Module { } } -impl OnFreeBalanceZero for Module { - fn on_free_balance_zero(who: &T::AccountId) { - >::remove(who); - } -} - -impl EnsureAccountLiquid> for Module { - fn ensure_account_liquid(who: &T::AccountId) -> Result { - if Self::bondage(who) > >::block_number() { - Err("stash accounts are not liquid") - } else { - Ok(()) - } - } - fn ensure_account_can_withdraw( - who: &T::AccountId, - _value: BalanceOf, - reason: WithdrawReason, - ) -> Result { - if reason == WithdrawReason::TransactionPayment - || Self::bondage(who) <= >::block_number() - { - Ok(()) - } else { - Err("cannot transfer voting funds") - } - } -} - #[cfg(test)] mod tests { use super::*; @@ -447,6 +417,7 @@ mod tests { use primitives::BuildStorage; use primitives::traits::{BlakeTwo256, IdentityLookup}; use primitives::testing::{Digest, DigestItem, Header}; + use balances::BalanceLock; const AYE: Vote = Vote(-1); const NAY: Vote = Vote(0); @@ -482,7 +453,6 @@ mod tests { type Balance = u64; type OnFreeBalanceZero = (); type OnNewAccount = (); - type EnsureAccountLiquid = (); type Event = (); } impl Trait for Test { @@ -790,12 +760,12 @@ mod tests { assert_eq!(Democracy::end_block(System::block_number()), Ok(())); - assert_eq!(Democracy::bondage(1), 0); - assert_eq!(Democracy::bondage(2), 6); - assert_eq!(Democracy::bondage(3), 5); - assert_eq!(Democracy::bondage(4), 4); - assert_eq!(Democracy::bondage(5), 3); - assert_eq!(Democracy::bondage(6), 0); + assert_eq!(Balances::locks(1), vec![]); + assert_eq!(Balances::locks(2), vec![BalanceLock { id: DEMOCRACY_ID, amount: u64::max_value(), until: 6, reasons: WithdrawReason::Transfer.into() }]); + assert_eq!(Balances::locks(3), vec![BalanceLock { id: DEMOCRACY_ID, amount: u64::max_value(), until: 5, reasons: WithdrawReason::Transfer.into() }]); + assert_eq!(Balances::locks(4), vec![BalanceLock { id: DEMOCRACY_ID, amount: u64::max_value(), until: 4, reasons: WithdrawReason::Transfer.into() }]); + assert_eq!(Balances::locks(5), vec![BalanceLock { id: DEMOCRACY_ID, amount: u64::max_value(), until: 3, reasons: WithdrawReason::Transfer.into() }]); + assert_eq!(Balances::locks(6), vec![]); System::set_block_number(2); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); diff --git a/srml/example/Cargo.toml b/srml/example/Cargo.toml index beaafbeb21..c1cf286346 100644 --- a/srml/example/Cargo.toml +++ b/srml/example/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false } srml-support = { path = "../support", default-features = false } system = { package = "srml-system", path = "../system", default-features = false } @@ -20,7 +20,7 @@ sr-primitives = { path = "../../core/sr-primitives" } [features] default = ["std"] std = [ - "serde/std", + "serde", "parity-codec/std", "sr-primitives/std", "srml-support/std", diff --git a/srml/example/src/lib.rs b/srml/example/src/lib.rs index 4f4e0b96a0..8ab4513296 100644 --- a/srml/example/src/lib.rs +++ b/srml/example/src/lib.rs @@ -280,7 +280,6 @@ mod tests { type Balance = u64; type OnFreeBalanceZero = (); type OnNewAccount = (); - type EnsureAccountLiquid = (); type Event = (); } impl Trait for Test { diff --git a/srml/executive/Cargo.toml b/srml/executive/Cargo.toml index fe195acc21..04f6526666 100644 --- a/srml/executive/Cargo.toml +++ b/srml/executive/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } parity-codec = { version = "3.1", 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 } @@ -26,7 +26,7 @@ default = ["std"] std = [ "rstd/std", "srml-support/std", - "serde/std", + "serde", "parity-codec/std", "primitives/std", "runtime_io/std", diff --git a/srml/executive/src/lib.rs b/srml/executive/src/lib.rs index c6817c2554..567c157f1e 100644 --- a/srml/executive/src/lib.rs +++ b/srml/executive/src/lib.rs @@ -319,7 +319,6 @@ mod tests { type Balance = u64; type OnFreeBalanceZero = (); type OnNewAccount = (); - type EnsureAccountLiquid = (); type Event = MetaEvent; } impl fees::Trait for Runtime { diff --git a/srml/fees/Cargo.toml b/srml/fees/Cargo.toml index 7f49956167..d29d77c748 100644 --- a/srml/fees/Cargo.toml +++ b/srml/fees/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } primitives = { package = "substrate-primitives", path = "../../core/primitives", default-features = false } @@ -19,7 +19,7 @@ system = { package = "srml-system", path = "../system", default-features = false [features] default = ["std"] std = [ - "serde/std", + "serde", "parity-codec/std", "parity-codec-derive/std", "primitives/std", diff --git a/srml/grandpa/Cargo.toml b/srml/grandpa/Cargo.toml index e7a1b70105..ac4ea857de 100644 --- a/srml/grandpa/Cargo.toml +++ b/srml/grandpa/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] #hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false, features = ["derive"] } substrate-primitives = { path = "../../core/primitives", default-features = false } @@ -24,7 +24,7 @@ runtime_io = { package = "sr-io", path = "../../core/sr-io" } [features] default = ["std"] std = [ - "serde/std", + "serde", "serde_derive", "parity-codec/std", "substrate-primitives/std", diff --git a/srml/indices/Cargo.toml b/srml/indices/Cargo.toml index 7182514b07..399c7b1bd0 100644 --- a/srml/indices/Cargo.toml +++ b/srml/indices/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} parity-codec = { version = "3.1", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } @@ -24,7 +24,7 @@ ref_thread_local = "0.0" [features] default = ["std"] std = [ - "serde/std", + "serde", "safe-mix/std", "substrate-keyring", "parity-codec/std", diff --git a/srml/indices/src/lib.rs b/srml/indices/src/lib.rs index c63f819d35..fc9f6a66dd 100644 --- a/srml/indices/src/lib.rs +++ b/srml/indices/src/lib.rs @@ -198,4 +198,7 @@ impl StaticLookup for Module { fn lookup(a: Self::Source) -> result::Result { Self::lookup_address(a).ok_or("invalid account index") } + fn unlookup(a: Self::Target) -> Self::Source { + address::Address::Id(a) + } } diff --git a/srml/session/Cargo.toml b/srml/session/Cargo.toml index 8fdd08f1ae..8412505d32 100644 --- a/srml/session/Cargo.toml +++ b/srml/session/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} parity-codec = { version = "3.1", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } @@ -24,7 +24,7 @@ runtime_io = { package = "sr-io", path = "../../core/sr-io" } [features] default = ["std"] std = [ - "serde/std", + "serde", "safe-mix/std", "parity-codec/std", "parity-codec-derive/std", diff --git a/srml/session/src/lib.rs b/srml/session/src/lib.rs index 13f2a4cd0a..63188d5bf6 100644 --- a/srml/session/src/lib.rs +++ b/srml/session/src/lib.rs @@ -50,7 +50,7 @@ macro_rules! impl_session_change { for_each_tuple!(impl_session_change); -pub trait Trait: timestamp::Trait { +pub trait Trait: timestamp::Trait + consensus::Trait { type ConvertAccountIdToSessionKey: Convert; type OnSessionChange: OnSessionChange; type Event: From> + Into<::Event>; diff --git a/srml/staking/Cargo.toml b/srml/staking/Cargo.toml index 5fc70e27ea..c548b3a2ef 100644 --- a/srml/staking/Cargo.toml +++ b/srml/staking/Cargo.toml @@ -6,11 +6,12 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } safe-mix = { version = "1.0", default-features = false} parity-codec = { version = "3.1", 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 } primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } srml-support = { path = "../support", default-features = false } consensus = { package = "srml-consensus", path = "../consensus", default-features = false } @@ -19,18 +20,18 @@ session = { package = "srml-session", path = "../session", default-features = fa [dev-dependencies] substrate-primitives = { path = "../../core/primitives" } -runtime_io = { package = "sr-io", path = "../../core/sr-io" } timestamp = { package = "srml-timestamp", path = "../timestamp" } balances = { package = "srml-balances", path = "../balances" } [features] default = ["std"] std = [ - "serde/std", + "serde", "safe-mix/std", "substrate-keyring", "parity-codec/std", "rstd/std", + "runtime_io/std", "srml-support/std", "primitives/std", "session/std", diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index 71a7f27ce1..fb2076af81 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -20,18 +20,20 @@ #![cfg_attr(not(feature = "std"), no_std)] +#[cfg(feature = "std")] +use runtime_io::with_storage; use rstd::{prelude::*, result}; use parity_codec::{HasCompact, Encode, Decode}; use srml_support::{StorageValue, StorageMap, EnumerableStorageMap, dispatch::Result}; use srml_support::{decl_module, decl_event, decl_storage, ensure}; use srml_support::traits::{ - Currency, OnDilution, EnsureAccountLiquid, OnFreeBalanceZero, WithdrawReason, ArithmeticType + Currency, OnDilution, OnFreeBalanceZero, ArithmeticType, + LockIdentifier, LockableCurrency, WithdrawReasons }; use session::OnSessionChange; use primitives::Perbill; -use primitives::traits::{Zero, One, As, StaticLookup, Saturating}; +use primitives::traits::{Zero, One, As, StaticLookup, Saturating, Bounded}; use system::ensure_signed; - mod mock; mod tests; @@ -111,7 +113,11 @@ pub struct StakingLedger>, } -impl StakingLedger { +impl< + AccountId, + Balance: HasCompact + Copy + Saturating, + BlockNumber: HasCompact + PartialOrd +> StakingLedger { /// Remove entries from `unlocking` that are sufficiently old and reduce the /// total by the sum of their balances. fn consolidate_unlocked(self, current_era: BlockNumber) -> Self { @@ -157,7 +163,10 @@ type BalanceOf = <::Currency as ArithmeticType>::Type; pub trait Trait: system::Trait + session::Trait { /// The staking balance. - type Currency: ArithmeticType + Currency>; + type Currency: + ArithmeticType + + Currency> + + LockableCurrency; /// Some tokens minted. type OnRewardMinted: OnDilution>; @@ -166,6 +175,8 @@ pub trait Trait: system::Trait + session::Trait { type Event: From> + Into<::Event>; } +const STAKING_ID: LockIdentifier = *b"staking "; + decl_storage! { trait Store for Module as Staking { @@ -192,21 +203,9 @@ decl_storage! { pub Invulnerables get(invulnerables) config(): Vec; /// Map from all locked "stash" accounts to the controller account. - pub Bonded get(bonded) build(|config: &GenesisConfig| { - config.stakers.iter().map(|(stash, controller, _)| (stash.clone(), controller.clone())).collect::>() - }): map T::AccountId => Option; + pub Bonded get(bonded): map T::AccountId => Option; /// Map from all (unlocked) "controller" accounts to the info regarding the staking. - pub Ledger get(ledger) build(|config: &GenesisConfig| { - config.stakers.iter().map(|(stash, controller, value)| ( - controller.clone(), - StakingLedger { - stash: stash.clone(), - total: *value, - active: *value, - unlocking: Vec::, T::BlockNumber>>::new(), - }, - )).collect::>() - }): map T::AccountId => Option, T::BlockNumber>>; + pub Ledger get(ledger): map T::AccountId => Option, T::BlockNumber>>; /// Where the reward payment should be made. pub Payee get(payee): map T::AccountId => RewardDestination; @@ -214,12 +213,7 @@ decl_storage! { /// The set of keys are all controllers that want to validate. /// /// The values are the preferences that a validator has. - pub Validators get(validators) build(|config: &GenesisConfig| { - config.stakers.iter().map(|(_stash, controller, _value)| ( - controller.clone(), - ValidatorPrefs::>::default(), - )).collect::>() - }): linked_map T::AccountId => ValidatorPrefs>; + pub Validators get(validators): linked_map T::AccountId => ValidatorPrefs>; /// The set of keys are all controllers that want to nominate. /// @@ -228,16 +222,7 @@ decl_storage! { /// Nominators for a particular account that is in action right now. You can't iterate through validators here, /// but you can find them in the `sessions` module. - pub Stakers get(stakers) build(|config: &GenesisConfig| { - config.stakers.iter().map(|(_stash, controller, value)| ( - controller.clone(), - Exposure { - total: *value, - own: *value, - others: Vec::>::new(), - }, - )).collect::>() - }): map T::AccountId => Exposure>; + pub Stakers get(stakers): map T::AccountId => Exposure>; // The historical validators and their nominations for a given era. Stored as a trie root of the mapping // `T::AccountId` => `Exposure>`, which is just the contents of `Stakers`, @@ -282,7 +267,16 @@ decl_storage! { } add_extra_genesis { config(stakers): Vec<(T::AccountId, T::AccountId, BalanceOf)>; - } + build(|storage: &mut primitives::StorageOverlay, _: &mut primitives::ChildrenStorageOverlay, config: &GenesisConfig| { + with_storage(storage, || { + for &(ref stash, ref controller, balance) in &config.stakers { + let _ = >::bond(T::Origin::from(Some(stash.clone()).into()), T::Lookup::unlookup(controller.clone()), balance, RewardDestination::Staked); + let _ = >::validate(T::Origin::from(Some(controller.clone()).into()), Default::default()); + } + >::select_validators(); + }); + }); + } } decl_module! { @@ -307,7 +301,7 @@ decl_module! { let stash_balance = T::Currency::free_balance(&stash); let value = value.min(stash_balance); - >::insert(&controller, StakingLedger { stash, total: value, active: value, unlocking: vec![] }); + Self::update_ledger(&controller, StakingLedger { stash, total: value, active: value, unlocking: vec![] }); >::insert(&controller, payee); } @@ -326,7 +320,7 @@ decl_module! { let extra = (stash_balance - ledger.total).min(max_additional); ledger.total += extra; ledger.active += extra; - >::insert(&controller, ledger); + Self::update_ledger(&controller, ledger); } } @@ -358,7 +352,7 @@ decl_module! { let era = Self::current_era() + Self::bonding_duration(); ledger.unlocking.push(UnlockChunk { value, era }); - >::insert(&controller, ledger); + Self::update_ledger(&controller, ledger); } } @@ -373,7 +367,8 @@ decl_module! { fn withdraw_unbonded(origin) { let controller = ensure_signed(origin)?; let ledger = Self::ledger(&controller).ok_or("not a controller")?; - >::insert(&controller, ledger.consolidate_unlocked(Self::current_era())); + let ledger = ledger.consolidate_unlocked(Self::current_era()); + Self::update_ledger(&controller, ledger); } /// Declare the desire to validate for the origin controller. @@ -503,8 +498,14 @@ impl Module { Self::stakers(who).total } - // PUBLIC MUTABLES (DANGEROUS) - + // MUTABLES (DANGEROUS) + + /// Update the ledger for a controller. This will also update the stash lock. + fn update_ledger(controller: &T::AccountId, ledger: StakingLedger, T::BlockNumber>) { + T::Currency::set_lock(STAKING_ID, &ledger.stash, ledger.total, T::BlockNumber::max_value(), WithdrawReasons::all()); + >::insert(controller, ledger); + } + /// Slash a given validator by a specific amount. Removes the slash from their balance by preference, /// and reduces the nominators' balance if needed. fn slash_validator(v: &T::AccountId, slash: BalanceOf) { @@ -540,13 +541,13 @@ impl Module { RewardDestination::Stash => { let _ = Self::ledger(who).map(|l| T::Currency::reward(&l.stash, amount)); } - RewardDestination::Staked => >::mutate(who, |ml| { - if let Some(l) = ml.as_mut() { + RewardDestination::Staked => + if let Some(mut l) = Self::ledger(who) { l.active += amount; l.total += amount; let _ = T::Currency::reward(&l.stash, amount); - } - }), + Self::update_ledger(who, l); + }, } } @@ -626,7 +627,17 @@ impl Module { } // Reassign all Stakers. + let slot_stake = Self::select_validators(); + + // Update the balances for slashing/rewarding according to the stakes. + >::put(Self::offline_slash() * slot_stake); + >::put(Self::session_reward() * slot_stake); + } + /// Select a new validator set from the assembled stakers and their role preferences. + /// + /// @returns the new SlotStake value. + fn select_validators() -> BalanceOf { // Map of (would-be) validator account to amount of stake backing it. // First, we pull all validators, together with their stash balance into a Vec (cpu=O(V), mem=O(V)) @@ -658,6 +669,7 @@ impl Module { // cpu=O(V.log(s)) average, O(V.s) worst. let count = Self::validator_count() as usize; let candidates = if candidates.len() <= count { + candidates.sort_unstable_by(|a, b| b.1.total.cmp(&a.1.total)); candidates } else { candidates.into_iter().fold(vec![], |mut winners: Vec<(T::AccountId, Exposure>)>, entry| { @@ -700,9 +712,7 @@ impl Module { &candidates.into_iter().map(|i| i.0).collect::>() ); - // Update the balances for slashing/rewarding according to the stakes. - >::put(Self::offline_slash() * slot_stake); - >::put(Self::session_reward() * slot_stake); + slot_stake } /// Call when a validator is determined to be offline. `count` is the @@ -769,29 +779,6 @@ impl OnSessionChange for Module { } } -impl EnsureAccountLiquid> for Module { - fn ensure_account_liquid(who: &T::AccountId) -> Result { - if >::exists(who) { - Err("stash accounts are not liquid") - } else { - Ok(()) - } - } - fn ensure_account_can_withdraw( - who: &T::AccountId, - amount: BalanceOf, - _reason: WithdrawReason, - ) -> Result { - if let Some(controller) = Self::bonded(who) { - let ledger = Self::ledger(&controller).ok_or("stash without controller")?; - let free_balance = T::Currency::free_balance(&who); - ensure!(free_balance.saturating_sub(ledger.total) > amount, - "stash with too much under management"); - } - Ok(()) - } -} - impl OnFreeBalanceZero for Module { fn on_free_balance_zero(who: &T::AccountId) { if let Some(controller) = >::take(who) { diff --git a/srml/staking/src/mock.rs b/srml/staking/src/mock.rs index 244c3c18c2..3ac827ecf8 100644 --- a/srml/staking/src/mock.rs +++ b/srml/staking/src/mock.rs @@ -54,7 +54,6 @@ impl balances::Trait for Test { type Balance = u64; type OnFreeBalanceZero = Staking; type OnNewAccount = (); - type EnsureAccountLiquid = Staking; type Event = (); } impl session::Trait for Test { @@ -120,22 +119,22 @@ impl ExtBuilder { self } pub fn build(self) -> runtime_io::TestExternalities { - let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; + let (mut t, mut c) = system::GenesisConfig::::default().build_storage().unwrap(); let balance_factor = if self.existential_deposit > 0 { 256 } else { 1 }; - t.extend(consensus::GenesisConfig::{ + let _ = consensus::GenesisConfig::{ code: vec![], authorities: vec![], - }.build_storage().unwrap().0); - t.extend(session::GenesisConfig::{ + }.assimilate_storage(&mut t, &mut c); + let _ = session::GenesisConfig::{ session_length: self.session_length, validators: vec![10, 20], keys: vec![], - }.build_storage().unwrap().0); - t.extend(balances::GenesisConfig::{ + }.assimilate_storage(&mut t, &mut c); + let _ = balances::GenesisConfig::{ balances: if self.monied { if self.reward > 0 { vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 300 * balance_factor), (4, 400 * balance_factor), (10, balance_factor), (11, balance_factor * 1000), (20, balance_factor), (21, balance_factor * 2000)] @@ -149,8 +148,8 @@ impl ExtBuilder { transfer_fee: 0, creation_fee: 0, vesting: vec![], - }.build_storage().unwrap().0); - t.extend(GenesisConfig::{ + }.assimilate_storage(&mut t, &mut c); + let _ = GenesisConfig::{ sessions_per_era: self.sessions_per_era, current_era: self.current_era, stakers: vec![(11, 10, balance_factor * 1000), (21, 20, balance_factor * 2000)], @@ -163,10 +162,10 @@ impl ExtBuilder { current_offline_slash: 20, offline_slash_grace: 0, invulnerables: vec![], - }.build_storage().unwrap().0); - t.extend(timestamp::GenesisConfig::{ + }.assimilate_storage(&mut t, &mut c); + let _ = timestamp::GenesisConfig::{ period: 5, - }.build_storage().unwrap().0); + }.assimilate_storage(&mut t, &mut c); t.into() } } diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index 5ca7a46801..4deaee08d5 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -332,7 +332,7 @@ fn staking_should_work() { assert_eq!(Staking::era_length(), 3); assert_eq!(Staking::validator_count(), 2); // remember + compare this along with the test. - assert_eq!(Session::validators(), vec![10, 20]); + assert_eq!(Session::validators(), vec![20, 10]); assert_ok!(Staking::set_bonding_duration(2)); assert_eq!(Staking::bonding_duration(), 2); @@ -347,7 +347,7 @@ fn staking_should_work() { Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); // No effects will be seen so far.s - assert_eq!(Session::validators(), vec![10, 20]); + assert_eq!(Session::validators(), vec![20, 10]); // --- Block 2: @@ -359,7 +359,7 @@ fn staking_should_work() { Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); // No effects will be seen so far. Era has not been yet triggered. - assert_eq!(Session::validators(), vec![10, 20]); + assert_eq!(Session::validators(), vec![20, 10]); // --- Block 3: the validators will now change. @@ -413,7 +413,7 @@ fn nominating_and_rewards_should_work() { assert_eq!(Staking::era_length(), 1); assert_eq!(Staking::validator_count(), 2); assert_eq!(Staking::bonding_duration(), 3); - assert_eq!(Session::validators(), vec![10, 20]); + assert_eq!(Session::validators(), vec![20, 10]); // Set payee to controller assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); @@ -447,7 +447,7 @@ fn nominating_and_rewards_should_work() { Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 1); // validators will not change, since selection currently is actually not dependent on nomination and votes, only stake. - assert_eq!(Session::validators(), vec![10, 20]); + assert_eq!(Session::validators(), vec![20, 10]); // avalidators must have already received some rewards. assert_eq!(Balances::total_balance(&10), initial_balance + session_reward); assert_eq!(Balances::total_balance(&20), initial_balance + session_reward); @@ -487,7 +487,7 @@ fn nominators_also_get_slashed() { // Account 10 has not been reported offline assert_eq!(Staking::slash_count(&10), 0); // initial validators - assert_eq!(Session::validators(), vec![10, 20]); + assert_eq!(Session::validators(), vec![20, 10]); // Set payee to controller assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); @@ -500,7 +500,7 @@ fn nominators_also_get_slashed() { // 2 will nominate for 10 let nominator_stake = 500; assert_ok!(Staking::bond(Origin::signed(1), 2, nominator_stake, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); + assert_ok!(Staking::nominate(Origin::signed(2), vec![20, 10])); // new era, pay rewards, System::set_block_number(2); @@ -628,7 +628,7 @@ fn cannot_transfer_staked_balance() { // Confirm account 11 (via controller 10) is totally staked assert_eq!(Staking::stakers(&10).total, 1000); // Confirm account 11 cannot transfer as a result - assert_noop!(Balances::transfer(Origin::signed(11), 20, 1), "stash with too much under management"); + assert_noop!(Balances::transfer(Origin::signed(11), 20, 1), "account liquidity restrictions prevent withdrawal"); // Give account 11 extra free balance Balances::set_free_balance(&11, 10000); @@ -637,8 +637,6 @@ fn cannot_transfer_staked_balance() { }); } - - #[test] fn cannot_reserve_staked_balance() { // Checks that a bonded account cannot reserve balance from free balance @@ -650,7 +648,7 @@ fn cannot_reserve_staked_balance() { // Confirm account 11 (via controller 10) is totally staked assert_eq!(Staking::stakers(&10).total, 1000); // Confirm account 11 cannot transfer as a result - assert_noop!(Balances::reserve(&11, 1), "stash with too much under management"); + assert_noop!(Balances::reserve(&11, 1), "account liquidity restrictions prevent withdrawal"); // Give account 11 extra free balance Balances::set_free_balance(&11, 10000); diff --git a/srml/sudo/Cargo.toml b/srml/sudo/Cargo.toml index f607385131..8473d2fb44 100644 --- a/srml/sudo/Cargo.toml +++ b/srml/sudo/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false } parity-codec-derive = { version = "3.1", default-features = false } sr-std = { path = "../../core/sr-std", default-features = false } @@ -22,7 +22,7 @@ substrate-primitives = { path = "../../core/primitives" } [features] default = ["std"] std = [ - "serde/std", + "serde", "parity-codec/std", "parity-codec-derive/std", "sr-std/std", diff --git a/srml/support/Cargo.toml b/srml/support/Cargo.toml index cda9aaa904..2cc4cfa0c8 100644 --- a/srml/support/Cargo.toml +++ b/srml/support/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = { version = "0.1.0", optional = true } -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false, features = ["derive"] } srml-metadata = { path = "../metadata", 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 } +bitmask = { git = "https://github.com/paritytech/bitmask", default-features = false } [dev-dependencies] pretty_assertions = "0.5.1" @@ -26,7 +27,8 @@ default = ["std"] std = [ "hex-literal", "once_cell", - "serde/std", + "bitmask/std", + "serde", "serde_derive", "runtime_io/std", "parity-codec/std", diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index 017a217f1c..6bc15ea2f6 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -232,9 +232,9 @@ fn decl_store_extra_genesis( use #scrate::rstd::{cell::RefCell, marker::PhantomData}; use #scrate::codec::{Encode, Decode}; - let storage = (RefCell::new(&mut r), PhantomData::::default()); let v = (#builder)(&self); <#name<#traitinstance> as #scrate::storage::generator::StorageValue<#typ>>::put(&v, &storage); + }} }, DeclStorageTypeInfosKind::Map { key_type, .. } => { @@ -242,7 +242,6 @@ fn decl_store_extra_genesis( use #scrate::rstd::{cell::RefCell, marker::PhantomData}; use #scrate::codec::{Encode, Decode}; - let storage = (RefCell::new(&mut r), PhantomData::::default()); 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); @@ -382,12 +381,28 @@ fn decl_store_extra_genesis( let mut r: #scrate::runtime_primitives::StorageOverlay = Default::default(); let mut c: #scrate::runtime_primitives::ChildrenStorageOverlay = Default::default(); - #builders + { + use #scrate::rstd::{cell::RefCell, marker::PhantomData}; + let storage = (RefCell::new(&mut r), PhantomData::::default()); + #builders + } #scall(&mut r, &mut c, &self); Ok((r, c)) } + 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()); + + #builders + + let r = storage.0.into_inner(); + + #scall(r, c, &self); + + Ok(()) + } } } } else { diff --git a/srml/support/src/lib.rs b/srml/support/src/lib.rs index a7bbf32938..ccfa2603a0 100644 --- a/srml/support/src/lib.rs +++ b/srml/support/src/lib.rs @@ -19,6 +19,9 @@ #![cfg_attr(not(feature = "std"), no_std)] #![cfg_attr(not(feature = "std"), feature(alloc))] +#[macro_use] +extern crate bitmask; + #[cfg(feature = "std")] pub use serde; #[doc(hidden)] diff --git a/srml/support/src/traits.rs b/srml/support/src/traits.rs index 81d0239e5c..37290d4ef1 100644 --- a/srml/support/src/traits.rs +++ b/srml/support/src/traits.rs @@ -17,7 +17,7 @@ //! Traits for SRML use crate::rstd::result; -use crate::codec::Codec; +use crate::codec::{Codec, Encode, Decode}; use crate::runtime_primitives::traits::{ MaybeSerializeDebug, SimpleArithmetic, As }; @@ -53,61 +53,6 @@ impl OnDilution for () { fn on_dilution(_minted: Balance, _portion: Balance) {} } -/// Determinator for whether a given account is able to use its **free** balance. -/// -/// By convention, `ensure_account_liquid` overrules `ensure_account_can_withdraw`. If a -/// caller gets `Ok` from the former, then they do not need to call the latter. -/// -/// This implies that if you define the latter away from its default of replicating the -/// former, then ensure you also redefine the former to return an `Err` in corresponding -/// situations, otherwise you'll end up giving inconsistent information. -// TODO: Remove in favour of explicit functionality in balances module: #1896 -pub trait EnsureAccountLiquid { - /// Ensures that the account is completely unencumbered. If this is `Ok` then there's no need to - /// check any other items. If it's an `Err`, then you must use one pair of the other items. - fn ensure_account_liquid(who: &AccountId) -> result::Result<(), &'static str>; - - /// Returns `Ok` iff the account is able to make a withdrawal of the given amount - /// for the given reason. - /// - /// `Err(...)` with the reason why not otherwise. - /// - /// By default this just reflects the results of `ensure_account_liquid`. - /// - /// @warning If you redefine this away from the default, ensure that you define - /// `ensure_account_liquid` in accordance. - fn ensure_account_can_withdraw( - who: &AccountId, - _amount: Balance, - _reason: WithdrawReason - ) -> result::Result<(), &'static str> { - Self::ensure_account_liquid(who) - } -} -impl< - AccountId, - Balance: Copy, - X: EnsureAccountLiquid, - Y: EnsureAccountLiquid, -> EnsureAccountLiquid for (X, Y) { - fn ensure_account_liquid(who: &AccountId) -> result::Result<(), &'static str> { - X::ensure_account_liquid(who)?; - Y::ensure_account_liquid(who) - } - - fn ensure_account_can_withdraw( - who: &AccountId, - amount: Balance, - reason: WithdrawReason - ) -> result::Result<(), &'static str> { - X::ensure_account_can_withdraw(who, amount, reason)?; - Y::ensure_account_can_withdraw(who, amount, reason) - } -} -impl EnsureAccountLiquid for () { - fn ensure_account_liquid(_who: &AccountId) -> result::Result<(), &'static str> { Ok(()) } -} - /// Outcome of a balance update. pub enum UpdateBalanceOutcome { /// Account balance was simply updated. @@ -227,6 +172,41 @@ pub trait Currency { ) -> result::Result, &'static str>; } +/// An identifier for a lock. Used for disambiguating different locks so that +/// they can be individually replaced or removed. +pub type LockIdentifier = [u8; 8]; + +/// A currency whose accounts can have liquidity restructions. +pub trait LockableCurrency: Currency { + /// The quantity used to denote time; usually just a `BlockNumber`. + type Moment; + + /// Introduce a new lock or change an existing one. + fn set_lock( + id: LockIdentifier, + who: &AccountId, + amount: Self::Balance, + until: Self::Moment, + reasons: WithdrawReasons, + ); + + /// Change any existing lock so that it becomes strictly less liquid in all + /// respects to the given parameters. + fn extend_lock( + id: LockIdentifier, + who: &AccountId, + amount: Self::Balance, + until: Self::Moment, + reasons: WithdrawReasons, + ); + + /// Remove an existing lock. + fn remove_lock( + id: LockIdentifier, + who: &AccountId, + ); +} + /// Charge bytes fee trait pub trait ChargeBytesFee { /// Charge fees from `transactor` for an extrinsic (transaction) of encoded length @@ -246,16 +226,21 @@ pub trait ChargeFee: ChargeBytesFee { fn refund_fee(transactor: &AccountId, amount: Self::Amount) -> Result<(), &'static str>; } -/// Reason for moving funds out of an account. -#[derive(Copy, Clone, Eq, PartialEq)] -#[cfg_attr(feature = "std", derive(Debug))] -pub enum WithdrawReason { - /// In order to pay for (system) transaction costs. - TransactionPayment, - /// In order to transfer ownership. - Transfer, - /// In order to reserve some funds for a later return or repatriation - Reserve, +bitmask! { + /// Reasons for moving funds out of an account. + #[derive(Encode, Decode)] + pub mask WithdrawReasons: i8 where + + /// Reason for moving funds out of an account. + #[derive(Encode, Decode)] + flags WithdrawReason { + /// In order to pay for (system) transaction costs. + TransactionPayment = 0b00000001, + /// In order to transfer ownership. + Transfer = 0b00000010, + /// In order to reserve some funds for a later return or repatriation + Reserve = 0b00000100, + } } /// Transfer fungible asset trait diff --git a/srml/system/Cargo.toml b/srml/system/Cargo.toml index f1f3692aa3..ea2628a3a2 100644 --- a/srml/system/Cargo.toml +++ b/srml/system/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +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"] } @@ -19,7 +19,7 @@ srml-support = { path = "../support", default-features = false } [features] default = ["std"] std = [ - "serde/std", + "serde", "serde_derive", "safe-mix/std", "parity-codec/std", diff --git a/srml/timestamp/Cargo.toml b/srml/timestamp/Cargo.toml index d2133daebb..0c089b60e6 100644 --- a/srml/timestamp/Cargo.toml +++ b/srml/timestamp/Cargo.toml @@ -6,14 +6,13 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } parity-codec = { version = "3.1", 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 } srml-support = { path = "../support", default-features = false } system = { package = "srml-system", path = "../system", default-features = false } -consensus = { package = "srml-consensus", path = "../consensus", default-features = false } [dev-dependencies] runtime_io = { package = "sr-io", path = "../../core/sr-io" } @@ -25,8 +24,7 @@ std = [ "rstd/std", "srml-support/std", "runtime_primitives/std", - "consensus/std", - "serde/std", + "serde", "parity-codec/std", "system/std", "inherents/std", diff --git a/srml/timestamp/src/lib.rs b/srml/timestamp/src/lib.rs index a7fa9e9663..a1414f94de 100644 --- a/srml/timestamp/src/lib.rs +++ b/srml/timestamp/src/lib.rs @@ -32,17 +32,17 @@ #![cfg_attr(not(feature = "std"), no_std)] +use parity_codec::Encode; #[cfg(feature = "std")] use parity_codec::Decode; -use parity_codec::Encode; +#[cfg(feature = "std")] +use inherents::ProvideInherentData; use srml_support::{StorageValue, Parameter, decl_storage, decl_module}; use srml_support::for_each_tuple; use runtime_primitives::traits::{As, SimpleArithmetic, Zero}; use system::ensure_inherent; use rstd::{result, ops::{Mul, Div}, cmp}; use inherents::{RuntimeString, InherentIdentifier, ProvideInherent, IsFatalError, InherentData}; -#[cfg(feature = "std")] -use inherents::ProvideInherentData; /// The identifier for the `timestamp` inherent. pub const INHERENT_IDENTIFIER: InherentIdentifier = *b"timstap0"; @@ -144,7 +144,7 @@ macro_rules! impl_timestamp_set { for_each_tuple!(impl_timestamp_set); -pub trait Trait: consensus::Trait + system::Trait { +pub trait Trait: system::Trait { /// Type used for expressing timestamp. type Moment: Parameter + Default + SimpleArithmetic + Mul @@ -259,7 +259,7 @@ mod tests { use substrate_primitives::H256; use runtime_primitives::BuildStorage; use runtime_primitives::traits::{BlakeTwo256, IdentityLookup}; - use runtime_primitives::testing::{Digest, DigestItem, Header, UintAuthorityId}; + use runtime_primitives::testing::{Digest, DigestItem, Header}; impl_outer_origin! { pub enum Origin for Test {} @@ -280,11 +280,6 @@ mod tests { type Event = (); type Log = DigestItem; } - impl consensus::Trait for Test { - type Log = DigestItem; - type SessionKey = UintAuthorityId; - type InherentOfflineReport = (); - } impl Trait for Test { type Moment = u64; type OnTimestampSet = (); diff --git a/srml/treasury/Cargo.toml b/srml/treasury/Cargo.toml index d417a0e7e2..9bfb4b1725 100644 --- a/srml/treasury/Cargo.toml +++ b/srml/treasury/Cargo.toml @@ -6,7 +6,7 @@ edition = "2018" [dependencies] hex-literal = "0.1.0" -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false, features = ["derive"] } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } @@ -22,7 +22,7 @@ substrate-primitives = { path = "../../core/primitives" } [features] default = ["std"] std = [ - "serde/std", + "serde", "serde_derive", "parity-codec/std", "rstd/std", diff --git a/srml/treasury/src/lib.rs b/srml/treasury/src/lib.rs index 2087846233..429bd24ecb 100644 --- a/srml/treasury/src/lib.rs +++ b/srml/treasury/src/lib.rs @@ -287,7 +287,6 @@ mod tests { type Balance = u64; type OnNewAccount = (); type OnFreeBalanceZero = (); - type EnsureAccountLiquid = (); type Event = (); } impl Trait for Test { diff --git a/srml/upgrade-key/Cargo.toml b/srml/upgrade-key/Cargo.toml index 14f4bc4de5..c548798dec 100644 --- a/srml/upgrade-key/Cargo.toml +++ b/srml/upgrade-key/Cargo.toml @@ -5,7 +5,7 @@ authors = ["Parity Technologies "] edition = "2018" [dependencies] -serde = { version = "1.0", default-features = false } +serde = { version = "1.0", optional = true } parity-codec = { version = "3.1", default-features = false } sr-std = { path = "../../core/sr-std", default-features = false } sr-primitives = { path = "../../core/sr-primitives", default-features = false } @@ -16,7 +16,7 @@ consensus = { package = "srml-consensus", path = "../consensus", default-feature [features] default = ["std"] std = [ - "serde/std", + "serde", "parity-codec/std", "sr-std/std", "sr-primitives/std", -- GitLab From 66795b0773f1b9240dae87dce39fbb61385f6350 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E5=85=89=E5=8D=8E?= Date: Wed, 6 Mar 2019 20:16:13 +0800 Subject: [PATCH 002/120] Delete unused import in finaly-tracker module (#1931) * Delete unused import in finaly-tracker module * Fix test build error * Revert spec_version * Rebuild wasm --- Cargo.lock | 2 -- node/runtime/wasm/Cargo.lock | 2 -- .../release/node_runtime.compact.wasm | Bin 889279 -> 905224 bytes srml/finality-tracker/Cargo.toml | 17 +++++++---------- srml/finality-tracker/src/lib.rs | 14 +++++++------- 5 files changed, 14 insertions(+), 21 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1ad583f7fa..c0dfa6fe08 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3226,14 +3226,12 @@ 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-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)", "serde_derive 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", - "srml-session 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "substrate-inherents 0.1.0", diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 0d6c80edea..c7d1ef53cf 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -1436,12 +1436,10 @@ version = "0.1.0" dependencies = [ "hex-literal 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-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", - "srml-session 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "substrate-inherents 0.1.0", diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index da9604c4eba33a1705709d8d679edef9e30230ba..8340ec07c8f3a6b7936937fec3e661dac0f352e0 100644 GIT binary patch literal 905224 zcmeEv37i$hwf^nyI~%tf#vPZ$J0po0HR1+tQJbX2iAj7f$xHH*ybz+O46cC2B!*o; zQ9yAQQ9%Vo+>N`UxZsK#?h7D_;)bG#g7W{qQ{8=Uch^AQo^dko|8RcNx4!Ok>eQ)I zr>d)}Pv!azKE}x9a>g0v_x@}R8#c@sCYRiwtB@ErEcfTUx|njy0Dxb?T|6we)paO| ztA&ieYSk}AH#GNWgJ3QP_Cvt{c>%*SLx-vi>Tn5uSK-%C+{U9rK?KU7e>N2rVcZsK zlPvOlR>br#$Z)7gFC6eBL>AFlgrUAz$VqZnGAb@WswLxLIrEA97FPdbPqO=;Jf!cC zzaDpT-(7dxD`ybuOz1C1_Z!%Mx4ygW*;9d=5Gi%1thuZko)n2K;HMnAxG?`z>WEE|HF6NbI)D(?t4=IK?9EX zTdtN**O#~)KdAo^15Pe~{^S9JhYSw6=fmd%5eFT2+>l%q;jSX0FZp3d^*i>+{)79< z?K38(e#~qe)2-FfdVo?A7 zDCt$!6_#OC<(%ryrqQLkI$zEIs*KJC{;jH#RCTpcRb5}T(Z*JF^(F>D!!SXEdw9sG zHmjZLO+jK+Z3Wt9bb8z0a zI?u=De+!uui^Xb#|AQlc<4^wM117LMij2n;ef(b|XBeF$qEv5D-O$(>8Rn}U$l~YZ z7+_)GKPaxc%0W%!I_Il$`TS=1KMx0(+hmjNw(FL!F^)IRz#j^p+qim5Ynb5{Pq*}EFGq+`5wD-dY4C;RvD*VJ_4;wPzxMTYc>GzkT`y07J-@Zrn z?{|FPzw{g2-!eM&?R$8?A^l)lhg+uo*8k-Ghn+a2KaBIZ!v^MVG&d7;z_EC$-_ZjG2RCjpH~M-1A^jwWWBebvTg`2H zldSiN1CBnt|DeA8jz9kBzx9P}!pRICa9HjxbL+_cBL*B>&hu`w7`Z***rWOn>JRr6 zau}SuCzi!wNA*8!AXK8B9Gtt)>>A-Q2o3bOW8f6~AD+A4-0|1_jy$se;lBntxS#0m zKTqs`A`}BLP!zP%(w*D`W3cX5tl8YdX5B>7$hk&gys_Pb#{I@z;}UbK z`H1nbF~_*vyxzLOy4HN%c-eT-c*B@)JZ(H>JYzg>JZC&>ylK2-EHqv-UN9CIuNtoy z7a8YSH(E2T_sw2C_x!}zWA`u2-6mTf7>}7(niH*0jpfG2#z)47##iP_V~TmJahvgi z`J(xf`Lg+nd5>|gakufR`I`B<`G$F?ahGw2@uoS$oM~QVE;K(kSDK%hi_CfEqvj*# zVsn}CzVV*%mid|Sxv|1nVxDE4ZB4S?HZL&FH!m>HGv6^UGA}kSG?$t^cHQM&bGmtj zIn8{}Jky$BEi=D1*O;r#FU?ivZ~o`k?r3X*F&S-SqH(o#jWx@<)|zc~dg${WS6C0` zO$UAKb~$%WZeXL;Emt(Uo4Lk3FSU(TZhlB(b#p@vllg{P^T5(yvC4CDMa%8c>>7g_ z>fBsICzUdr8w&VUB;IJdHO&osJndK3+S zjh)?Vje{H$#CEf5HaB)D7Q$z(U5p<48a8P1%{!R6hI*Bm-3-KThRi+9T(Pc*$LxK< zybkomE+KX2eR4gJVSO)i4-rj>i)MXSfc6f#TrUg!iVlC}wkTRV=ZX+!t3FN@Tw5o% zzPYheA17z$3n)dSQLO3X7`9nJ&bWi*L5@+dL^Y}$o!q*Epqox84xhC6WG!WM*Wy3x z1S*c@08+nYi4C$S6wCvQwY;C_ot(QBG-Vt3RkU`n>U-r3{6b-JxK-N>EVo6kTn;p> zDfjs1Vkc&7xLunYj6fpyWQb4o7L-_pGO^+^ol-7SgCS*SaUobJ7IZf!*W4}Fg|#fd z3QvDvS~V~uYZwfvUhJr3C>wrl(7*-_Y|y|44Q$ZB1`SlA0U1rW!iG^)&fe{$l_hWvJdVRh=W#otfqeX8-d@9*%B@kVXu?z?QV<+;ZB#&#DP zml#(Wf0}M|onrLc_J20M)VR!Om~8y@Bzq(8;2k%=!1&H#yPad4g>mvuTlKog_|XrJ z{Q2*WI{X*IjUNx&^-N=&@xzJ6c}B6x?J>z1w149W<1dH&bBwX`9=q>-;PHKr8*Pj- z_8M#a=PySZClBa9^yokD_nQNn4?XCZ|2X#d1CRLWfB)(af6Nt%rWyv~Dnr)Bd>?1N zQOsi)+*no2H#y(bFo7X=u?m0HO!yBlQY^cM@(CUJ?E9Uwq7;u zHLc5Um0!eIeuO>e)p&ldnfA)o<@bd?Kf<2#T0FnkO?!ppCofGDtMNSC=e(m))l$=5kb-aE7-F`s9K%u#-*-*>*%W+N>Z_Kp=e(=o`<`jf z4^+)58RfZsrP~SnM9&@gB57UA{QOECk@VbzJ?A~MSWq1iyKUI#GShw{$gGl9@SeUE z5GGUAsfMlKebat4g{m&pS1n=Bd0(Td4@~>v6nsC`R{>$q`9Q<>L(`s{f-l;<&gT&J zoDVg8KQiq(Dflke^Cj##A8Gi0Y})sv;CrrKzl1&KV-4TsrhTXI^@kJ66xZ(~-_lzL zVb56}w~kLt`?esL)V^i0ucJB{Z-t!*VbA#_?pr=J?OReP=xn`$2z$<_8U?K|?HdEp zD``Fp^$H^FIV<7{`pmSiOCf#G@?#!MwfxUC(tmE+vr_P#sMiW%&-q-#ccp31Ou_eE zy_pmCoRu2BUzqllDfphLmzS{Te4*jH%Cx7Y;QNkVUc#QUO2hX{)4ntX-&gc}346|$ z8opnd_7ve;$tZu8{~CrdX_ND^pJlA`C+s@EvK{r>EdMTF;lT=Zw_w9c9^LQ}7+7=S$dgMrrttw(QX<_>R=` zCG0t)HGEIC>=7yWj?nWZ>^Y}u_>QscZ>qI(A(8g7&UQaW!*{G@uTH^tZC-0-iG)oYORXPq*w(Q}A7*=S$dgPS@}qZ`mKG z;JaGSm$2uI*YG{VvOf^Mnf>*nzUzqjYr>v$h83H`I@7Y>Yh8Zx^!X9?oHOJ3O|a~D zQs`}!UT=gwXM#p=6D|9#6nwwX^Cj##6E%D%S@yydd{^rE684-)8op;)_Uo=#q$ZG~QMggs}nMsMd>_VX$DeyZn7*mKU& z@IBYEpGm>@6FpzTo^!5-?|GK}R0_V!^?V6?&UqTX=UevUDfoV@=S$dg&e!n0z_RD1 z;QNuDFJaHQK*RS!%YG;Y-$#5Si@lc+_M8hfd@r)>2U76;Krb(0&$&p$_hQSwPxxl` z!w>1(3t`W>INn~SSoYm1%CSse4#J)@MN^JTEc=eu^1VdEcdBLoD+S*N^z}*DbEaze zUTWDlr{KF(uLr^{t~uS1g6}(ezJ$4Mm7H9?+_Go4mha^nzSAuGniPDO=;bBsIny+J zr(5<6;S0N7*91y1`jmOXdqPu=%)%4)oat7uVCB!kUt!r-q!4|vUUb5qbA?9qD=qu- z6nq!y`4aY=D>Zztvh1lT_%77*CG0s@Y52~t?2B8=cZP=VOv}C?1>ZOH@)Gu(nHs)V zTlTpr_`a^^OW1R+*6_W?vd?ZU-)l5{XIb_{;p@BTb<8-znoFxP*XSqI2z$;f-!X^t z(brn`8Rfa8T0IF`k4&Ik9k!mxqB3F6xi;Pr%(m>)QfTXCeJv37oY@*}U1!;2z?XYE zTU@0M#KzldlXH_VcC0HV>^awIa=6~IN2ZYcMZM&NJ?DB2-y1A@ZPof;k=M!h1`XdE zEqhH0zAxzICG0sjYWUt{*dLjdLZmM|I+Zi&9axJ;5%Q>m$2vD zrr~?LWiL&^ccxwsggxhW4c|K~dr1nuPwM3*>^XO6_}*#Ri&F4?LeH15=iI5`dzWRu zk%I5zdcK4`=PnK3yDj_G6nr1k^Cj##cWe0GW7#jYmhU|pzV}-8f)sq`>E$KtIrnP# z-e=j*rr`UCo-bj~xlhA)j%CkJ!S`W3U&5Xd=Pc?o;YTn*m`EqiWj`97%O`;cYNNx}C4y}X1y=OGQ>hb{Y_6ny9C z`4aY=hc$d3vFtlj@V!sZm$2tNqTxHwvTsYl_e{P2CG0u#G<+Ym>|0Xsy+byB#PpGCbF3U)t6ryCeyF&g11J z;zmhq_vcl*)vmA#vS^~AnZ9$mW%H1Rej2`uS~)B zc0FIhp7WH3?|jRimV)nXdcK4`XTFB-)0TZ{3cizk<;Dj0ggxhJ4c})hdrAtv6ZL!v zd(JZ&zRz0rg(>(>(DNniInQeNK4;nIrQo~HM*p0K@AH;DIR)RF^z}yAbDr1mU4V7r z6nt;g^Cj##3p9LRz`Ae>zBlOk62@L@4c`~BE}Vkz^?JU9v7uVS_a&?gr{H^?o-bi+ zq1Nzy8SBC+_|DezC5&Cv8osY!T{s2bYxR5yW2>}=@2glB&aeNacb1+nVQh)k@O=&I z!YTNU*0(pp*!ryD`#RQzQ}Df7FE3&2e%A1P1M9*m_|DYxC5$c38oqC0T{s2b8G62i zvCCP*cOlk=g>UB0`*TdWYQ8}r>^TeLo%bTF7q>3Iwfg)BV>fg>zr|QDPNBDNe5SGf zg)nwLYxMRO)`e5>ovyDB!r1(*;kyLu!YTMp)AJ?lIZHHr-^RLdpmz*u{GGSj4ei0$ z31x3`R{M&H?L{Pvea`Vw%{y2nP9gnedg%#cpR-2#rC1G4!S_-<6LVBa^U%vDGG%^JQRVKq1f-%s`O z62|6c4d0Kk8k~af`FeQ?V{@~H?{cgLr{KF>FE3&2W!CWh1gpL&_@1kmmoPRkYxsVO zRbSy-;nK)kc-7K;utFG{n*CM+YgZoxtiT#@3h6)8YlSd2Fl(g$3~RtC_y$cn*7{VF z{!GL7bIZP=Tq~7(k@x+g#9pikV|#Pli>$=jaEfv))9Z&Y_BLzE@deg~Q}BIH&zCUv zHf#8pN(InSki8;tQTfewOuR+3OAKNYXHI|-JXb}EFw|ki|c6Vzu z_zjkxTUU-3_2nRp-QDqWti_Uad46e^j$hFGN5a_d?dO83QvPvx-kz93TMP8sB8 z{DMZrD~8`skI36+WRd=Pz4U~!`8yx`5Nl-KJ}rgx&*`NnjGf;a=||=5F~0P$<%TMI z5f+X4VRb{D{VIO)>*t1Q`z2XQRuxlaFDO0pZ0Y9{rJs*R9)GxWV{YWe9HjgV?up#E zGoYxoZ;RZxCAd*%--w?+@pX}BW<^pnBdIHq;&*fnwe~dpl!DgUmqwnM5=mVcNu3u- zO^&1{A>}hX6F+^~PLDh@w)D*C$c+(^)HgDT5vY50B(*A%`aF{QG?L<$Iln4Dirjb~ zDgVa1ksEJEQi~(0HzTRnBB_@nsTU%t=OU@6BdI4NsmCIzME~UM zXKs(AZjGdFDiK{@`gv{SnX4nIt0JlCkXz`K353a$`ayH9nFW z7fGEONsWx8)<)X(8l-%a{4#Q5WhAvCl3E@~eHckCi=>uDQcIAMlGWOaf}eHv8!or@>g6xEr(W5DlzPz$QtI_6NU4{aAf;YKf|PoJ2vTa;AEbi8y2@P* zs)KuKC>*4M0jzpb4KIUxYET%Yf}xyxG8ky7lo|#FPX>b*buSoDsFdpNgC~PdTHOn} zP?b_$UGQYkL8*JHBMI)&{rgrpDpDoGk@79(Ys8=PJ3e#~Uqw=1L{gtcQlCUpA4O8{ zM^f)bQg266izBHwBdOOSsh1F2$XXYPum zZjYpHMaoy|O_3YdM^e{DQdcA8XL?oS#`H+)vPkNZNa~_U>ikIRoJi`dNNNI7eoG!7 zxiK!1IyHE#&K?=Lu@*57OO~?+DZe0JmVT~`JhK8Rj;k^1SYCSO!^ktsN;j4UKWptJ zk!Kc_ZoCn>@hVc)^@#r9aKRXF*!9~Wu1+nGI%hVJ+A^ftVK)#Uii#_cQL4+!o>6@0 z_5&(~aQ!Pl6rZybeCYS1&u~>I$g2(#Ry$*W)cF!BKJ@y*GgWw|*5O(O-dm(x>Y1;A z1kWgW==OuW6lc!BM>&5~My2@B=?8oi!g=Cyq}EwnhA4UH_@nZ0zO$UF%6TDyJexr1 z`lD2jl_4sxhk*onsdCZrN6U3@g6hsPDpfAJ{b*h{C6Mb92%UbE>Z$}XErFElS=G)I zJQLK8l83H8;H;iGC-KarvS$<(9e+TjkZ}oQbONF0k5a8cqmCl05(r&?^qJ)ewm3TeDAlS2@>v3*|Bq6AkU-u|AnXPLD&-Rv0ttMA(%5T2q8fXtj7n+jxdbvl zfjpi-9!Vf`6UcoDTZ1hzq>%6YR4Q5OCxkf?>fSjNY< zp9C^Lfjpi-9!Vf`6UcoD{|jte$#agVz%Z|JgHkyc%jt8;&fNh^m z&U{8Jk@%OG6E20@BkVbd8BaR1DBt-xrj54%d9|u$Sb4E>&q2u%IFlkm1yUBiSm8c{ zZz>6q6N@^0*dYA7Hg^L4tvRXD+*)MDvWbbH^(c3#y;Q6^i9i2xHr3e~Rrk1Fb%fhj zbtrdCb-u;GcBEqb$dnBja`Pvm69#ryN4wiSQ~>Y8c5K>Ane|9iIGPY6!6Fmuy*Be?TT=yf_%}z;z(VY_0-XN9JE$MRE726H_gUYvN9VA8kG^o zPV1=_>#3&o>r})?4NL0f|C6QlilU^FS3@~ zKeM6zQ<^gSuaXi}NeQaT?H}y~_K&e46ybZWpxdvw9lXXPD{PJ`g|sp|*eA0cJfpV* z!l4#BwjDrJogEMkOVBQM@O+DQV5n{YjoR;2R96C@EREV=k0c!emLr>8Ieo)o3V8t!(4QY8#W@~vnXKs0O^evBYXty1^ zNePt33Rnf646Qb%WlW&TK+Bp-eX-BOF#h$2K8|sxu+NVF}vBgdT1a6M9wb;Qqi4 zDzUzWLduCevA)V)2pdBa;uiJvFN8Ph)lXQX{%`Sx5ao`&)l{Op)uKC2c~;zVUlGzf zvXFivq?}f*IML35TZLv3(;%)%ixkVF}vBH(u8!zHz14!PS8sRMNiB5}W73L&erNUP!MD zNc|a-_-j=#SAuzt@U;qaC37h<-=fr?sbB0H&THf-JO4S@Yq0U<*@<`EW`R zFIw;nT#Tt$OXEaKmuDgULaLPuJ{9Nsw2)pBkXGgydS&(u7wbI(;jmqGY|j8ub)JE6 zSb}!(3{zY543$;p4>MQh1bt-^4pq^yD-)vXDwA+nf_ACQDJ@oJCBFJJaV1>bt=J!2 zDWvCSA-zyYxqw`8u8)fsIx7q5G|82V)D`DCT}aQ&LON4Oxe#7)uICErX<0}|3n>@d zE6#O{ke-@_^jab1f_}xhULd3+vXDM1Cc#Yu73Vr%NWacPI!{QsF`?pIpAgb7vyfgb zYU1XHigSHWa{W9D=`tbZ1`ElxvSHZ)+EJN5CJWcBFwSanK9-{{c;a8M;weWU5vFsM z0a^IrO>97>R)Zm8uo_&cf{L{e)czzWWT{JRVJH_&h-2h=KlM|zAhlV)EzkbO9R5Kp zP0Q2VJgwZV>*Fjp?0tN-mU2w9GPq0TPI$4e<=Dy~;jjzq*qty$)pf#z!xFShC%oKf zig!J_+q&EpEw~AGq>or39au(7NLdxxE73cbmSkr!VpnuajK4J+R`kUM8duWg&fC1m+gRigSHSNbk== zdY=f)ZH^V^dasb)lZEtlA>~%eigUeNNbkr(I$TJ(U9;j`AE1UY?7$(%^~G@5aci1k z$G?!D|3!SbR1ZQwbWZuId&N@SAO*T9C{SginjJEaYOd6eY6yp8f{s0^fvCDs4dJi^ z?J}ytPT>~zJ5{#MwOv@5m92A4(<_3oMiJlQI@b+UMCJ`&_eevyHfRWy4C`hH=`~qM zuM*OkSxEmSq*rAjy;(@F$U-_wNT+2XT`OJ8WdUhr@1=7{Z2F4@*t0}O#~FXMSP*?N zo#H!}*o!G)T4Z~?m`)8!S&1E;FS?zQh4d~Vy(kOm1R=d33+YEvqvvHIeOO4($wGRI z2z+)H(hnuqNdakPz1{wygJkbt$$IGoeQ!rNbdepqw}Ys<-i~lsf_CZc&T6r@tE8o! zDkgMBU-Zl(#b+PG7IS%QPc1&q}NNXL;WFk zWo`6FncL_o+U;IIL;LR7E%X#^0|gq&-!AQQSWAP^%Ia~i%=P$pZ9M`F_0X~F@$cGt z1RBcUF7^1&mg=z*UwMhN3tV{w@RMb3*wWpRzK~)g!a#YSMZxpkd4J*q*CN>$!l2^0$lU`fXcy zt|!F;ewoPvx@WckPip}{Lk)Ip3-GiS05p`pT`b^NZD9djP>c32GB}Ty#dLm_f$|)2 z%sKkfKk+FmTdC+4Hj&C!Dtc-S45-GyzQuKlpTNK}FH?Lf zdOOh9TV-?T7W9^K3Vm1QOJXzVK&h&4cLKfloDrkOta)?oH>V(&j5Wk94xZh6l`(4E z4EKN&+&Q^HY+3tfvYUpCcGE*^H$dChZuW1D-Fzu_6Kr0qWElQ}Q0|qXjlU_BJu^@~ zB9wb%pj8{3C# z@L^7^1TU#8*6?#2M};(CCJbH@l@Wm%7`&t`^hXf9q)LL9D1jlpS{wAEwUh~q$C{i* zB`ktF;E%@y$hK9WWy1PL7@9U@5NWIUOYK^P*uk#Vn)1(yDri(ihRU&jn8Cgmh<)#r zfpUpZ{vZS82SVB1r>v~c$)lht`q85uY_z(mwpRh# zzP(Cg%e~6_x7xoidi!oB&tazb99^`Y18B$a9NYNiub_i)9}>-N$Fk9Qi@^jj%GJaY1RCm~REI&&TOLY~W8QyfD8VXi z9RdyIFV!L9hbBf2n7e6N1$KDzD3b zcUVXs+m>vPKtuUUbs5;=w-6MvzNPk9NuSI>nKl^7Ci{{B_$;C?*QKbNc!h0tAEYx+ zz6aqQTtx#N=+>%e7qt>pw8^Onf?e>9It+FJlzNkwA@FU>SQoXWSQnjop`3Mza;Evt zaleG2r!n&Oa#-t`K0w9V%@xKzg;#2FLWji}g*wbA)N%SF>982eF>qKC%8`+O5v`=$ zVacF6`KkkE2v-@8-5Nyx#iy)@d|JCMhgFH8SJBWh%~A2!BwP+CAV?&m2p5BoX7Ni+ z$b{dn5Rns&7;I8SnJm;GxMV$!$SL4jH1LfKPEHVPnpJRe?v)okkaHXBtH8fg&K?C1j zI-&A9smjB&lpnUaw%ExJyc<-Wc-T&;JOtiFR*Q4Yds0%uIL#`81=* zoVzk4Y^}ktwY3s>x3y@S4ghx~M+2lRt6hU!S*(nqkn*oZJZwmeNr}zT_^U8))oA1oy`W zR44>36FOqNRaAM6WYkbg)nIOL7^~NE*BU1{CbX*lq>x3Ky2NMPs1a5_js$IT5O0Xe z%Hzu{tK?{bQdtu17=vF_zopu)L{+xfI2cn1!m!gVN+hA$qQ%OVsY`fIVJy{;eEjNX zv#9b*DYKaHHdQbHgfTv`u?{v|N7-<-s4`#l_;e=DJtY^hUmSaigU?w2WQV_SIuj@h zz$$>;nZMXy0tqg=A zSh-&Y8rCg>NwE_xtJ|1g_S-bV^oDiIiC{7=b(j{Lwz#}RS)=7!N3E7brx~JFMf7Sh z%d%P((Sur5(G_5Xky^EaTD9V}+QO=%n5{oq9)vaz3kX3_#gSSyI}J02ZkKa=3~V&J zXiIJlx=t5|lHz|%s5f8*prO{SZKzYVO$X+7MKh>xq$lg@8VAuli`EXgTrUeV zW5qmw<+{jYXx2ODat-)YvS{v*>(VQ?t^BfTds$s!GjL^W1DJhp#++P@v;n-bz~#by z*Us*pAJb^}E{>Z4E!s003-sp}$vn0$R9->cxj{V@loLmt;s&{OVo?hafH`lAkq{CF z6INFys$7$OO*KLz!~akM_@7R+NVgg?!OgJ~$fF75XfQeWDYdX6k(2#FV~-%Lvblq~ zO)q&`Vp7Y~R1>InFd1Ok45U_3rHeIC3jT zT(&8iy^UVxez6}t8n`qS8C{z5u{4bjI zFpe?MJv5>HF=RN`0j0I^6l^)ufUfTUvXcHcl^uTIKI0H)Lw#W^(bj*(n$B~KQTb8% z+-RfQsQfiX@Hf-A(wJdfj-~C50w}m%Wmv(_jk{i8{O49G)$q%z-K#G(#u&$KH_@1C zTw&~1>x?scU2IG<^2T272~EfUdc0xQ{bbXVPCj6Sabn~5|2o#FvA?%d{pM#I=NQ|b zXIx}VH~w&$vDt;jpSJ#emnp_2#&;$eLk4x~+}rEE$+^asf8OORV}fy-vBMU7;4{+g z4?pC;`v2vp|2*&?KRn$y)!6Y2W3sW$LHqA~rg7}P-#w-8!G9ZR{9xA}J%4n}ACDex z4BK;*@ry%;4nCsa-v|89-oM)K$e;bV`R4fle)Au{`)_s3>|X4-zgIMO&h6zI zeVpqI^mFLE_DgnNdzCt`k}r0RqBRg5Ql7o1;g1sPFea#Sw>`wU3GZ1&quDhNa-M}x z!g25z7Zi;qXE=j2;l?oWPkGFQi04;F-+=UlA;r2u4R!Ea@bof@R_}qsG4@AST;&#< zobxcUIMO|;S-NP16g|&$od&~x76VNN(LA>`3fsL>t&s3qm27j{752pxdFLY?FfeN`z zN@fgd{K=rW3iD85jjK~(P05utIgG-D*Rwv(r5s`ZZyA@jq%}A-(VDom!0^PkwXNaN zeRM$uehkBVjWu~LfZcILFaq~+0+aFM0scUY0rzeGz*pySv9Ite`$=Eyufobkds$to z?6ztzPeFuwi1Hr9euFaM{KdFT)Bg=JZ30o2LZ+uE)0vRzOa8#8_3m^0fiodt$oPRT z=CP>(KTgAsPPpPb_;okSyDv7y-5N{3AN)!Kqktk#REvEvHvyVT^dIF^jp zV+!si#E&kxr}H|n;I1a#TyT5hGN9mo!sJowQS_*iqHhsJFY*<=xD6DIFsPCDlf_EW zx1dZfQ@A4v?q!s{f5F`im%|J0D})a#xL@)5mx4QkxBC^`QM~?HUTgX|hZX-9jR-zw zN&ZxD-{F#HlQ31M|U9IAT7}D)XUiQ>dl?D)h!Y zItL2Yfqc)zc>I7va7MOL737gImq;Y4!it!PRZ^9#`N&|uu`rwDC(IsG>@*thxLA|p zfS>DCdAI8jw=34L++jcCt9Knb3#|00+&HrHFj_5k>di$yG61>zLx^`RboT*k{Z|Ed zCguHQ!M%dl|17xI@cJJGcNVXQ7To!K?iU63QC@#uaL*wAvx0jOuZI-eCyD>G;ErUv zso=iJ^uY!9e5U&p+>e+(sNi13v{!JKG5wQ*`ysDCF1Y6r?_F@G^6D1cD|tPz;9kh< z0R{JRUiUA!(|P?-!9A1L{R-}QUiU4y-;mEf>#>F3g|={}*uq`DE!^D(ws2d_7H(6v zz(E=6AOF|E2Al@QlEe$&1ilobxuDMz8-N6*x0QQJ%_ZgAimHD(k_Gjj59=Q}K`zuk z{)Kfg?-Pb#(#G8x+Byr%j>xo+!-a$YH7_tPu%dew+;ds+dluXUOz%-}_rhiOg1ZMU zyA|AhaoM%t?uko}f;*be?ox0s;Pr@9yY(1t@6c%f#_744zRh0U1~!W@ zkrDqjP1!6)llwuihV=;MetUvl9uw^HP_VbCvTY0QXS`x>I}BJ3E5h_>o6RET%H|1W za=)NN+Z5cddEL6;F6MQs_2_WlP=`ZUxzqj1y`l{& z_u`liFIGClK=*k{*0ta+;&qDxmI86zyx^|lb+ZEY%i+3d!F`?AO$zSAylz}@m-4z% znLks$YeM%BF2Z3g`*YKx_45o z`)Jj=rP&0-dTBeQv1(gPOyi}o28wwNt=qvBmzX#^wzoL75aSidQQc5euwTU1vz%Kf z-w5Gi-&GB_t%N-R#$RdlN>`;Zb8Ag7)^XX>_0To{Se{S+`}QYIi%5c%@Z4IX7@J7 zGzLV3ZUloyOqdBKR47mQzd!DyBjjB$DCr7nA^%iijO7arcj z`wuU89pVLVN4(%=i5I*(@q$+=UR!(qcfm(El09q(2LFX0@m@(N9cg{(ix4NoO5bvW{qH`ihg?i|c=3 z_`lE)JBWfdhyh~@cgb`RZLq_rS3~;^uCRRH?m9O(b?h#8L-&!`h5f&{HaB#+@eTB$ z5B+wWS1Y#m$0Wn1O4$ktUteQO_^>t|^moK|j-nQ9b+qmO_hnV)*Ad(2x6?4%VsmhZ z8uoPDs_VFtbwsDr(Hmk%tj!M65L+dNyOVrlS+GCE`u>jo?+@@B)B5-y^NG$y<*F98dt(4ln2k*z-7y&83CQb|X)h%c#3;#hUE9mFw=dK7kZHYo+FQv4 zF-kIFFF)7C+EP!5&?BhE~X+K}42FS#-t=Fli{gg})qa@Q!Z7{(~|Yc^dlt`#3;#hbKA>=NXcSP zn?fcYT7*Z6MR)^~rRAk_lpzWWw3EnPhT{3=9I#rT--5 zKqZ&GXnivAs}}f7h*6U1Um0auhdi#Yr!AnTh3k{aRWd=0l1$igl}S(Qkg2yXQ#Z)O zBih$#Pra2)5Thj1?QJj9kA0bTfJ|?!Po^I$nIJ||`RyRn zi|do=ASDyTD9MDcA=+A|KE6!fflM!~Po_RfCWujz>7KTi>0n=`??I*o>yznVB@@Ib z$#ieq%hcq{^j*mG{Q6{SQZhk|l1%rty-YY|L`D@`LMD93$xJnG7`~1FRLKM}N;1u9 zdzlXLW%@p3;@92ll<5#96T~RVbbs5+gmYX(PuoH!eyu4XN%+2m(Zgesca!rtvsDo| z5HU>ctAU$41p8_>kMFCII6S3YJ`9-EO*wAy*d4o1KXahE&-N(Mc zHa6JC2HQyU#m9!0vZ1AHXek?7O3n|7C_C&@d?~iUZPQ}~IuwqsH_Slz? z7`*k}b4(kO#@kvOrTOiO$^t)HR9yNHociGP7#iad|Gq&(yI#{CqgfC`cCU${FjP0wHh1jxy9Tji62A@O~9ezbs zrQ$C0^CyuRyA((r1SWRznI*R`posX4vVl{02=C6XsIY1m`~}+=jH0cA*YX&gMg-2s zcV#dXY*?^3yN1x%45JNJxLveljou34u1OqnNWr*kHG>co!{5tbY4jJ8lm9pw}deM2Rbl~yqFlng|kbWcgF*A zdV&Py_rp}<^QcY?N-3ZE_#gcsYCXO)BnIQ*2Zk)6Ff9zsNyXw+}z-N$>5{@%^JXGiZ9hVzhzQn+zeXoD4)gSwJ) z9$({GurXSbh41ScBnmmqMNWReUKPf}mJ=fIRV2Q?>4WYITXYb2}oDXP$&${M*wCn?MR&< ziWy&Z{y{)S#iAnW5&0Uy_HA77g&KpRle(wLqW}>U9Cc*iAAVXa;X?tTVuG)Y2^Hl# zWQmb(q9E=}oRcB6^;cP}qGFBzU9zfDkfZb}hJYUue1-)Bxd3D?{_2m-73z1)6-MNZ zJZm6~3!c=zCQ3MBw$p2rMG5~|(PWhHJ#a&PZGbbB@q1ep8yvsp9|zx6V>t*9Z_o_psPORc%UnEx zr=~7p;-H0En8Y zPFSgxxS3!B|6M%@ariCnMT2`U`EM)O;{i10ztIqVx!K$yH^U?G+h_JP4&-whJ5v&e z1;qdPKx72^r>xlX=8KH8naV`A(Kkb6xHjCzi7)Vt4TzPR6gfXgdMUlgQE}_o7Z-}1 zS^ID@LlBD}7oHJ?(?)REfhC_Lcacw$I~TjmXsqR72c4;Qeove$a%lzKZ!LOW8(wZB z9F2x=m2JjmWgGQ1Syvo=k!zqYvN$|&aH-}Htxo!3*tY*F8KkS2mf>Kn8X7@nf58q; zU+Sd1V}?THB#B(H-mOK{vq3Djs&47{{Xz!CEgWx1yA96kP+vxyMc?!9gvi@UIopK4 z0N{j%-exa$M($-_@JI*MALUV{Qq4WhqSSE_0MFgTRQ?TkuKocd*Xj(1r_69tkl_H+ z7-kJsg9HO-lH@SdZ9oZkkk7+$Q4Swnq7)iSusBHst$*Cq2LROLlor@A+!!F9RDq?= zqSedlj*HpLDhgg~mZClVfoatQ2W8X`Y_z)N*xEMyZP3654Q$ZB1`TY`zy=Let^svg z$mA0ujW*IYaw9FMoH)qqUjr?X?Uu^vPyWjh->Yg>zjMI$4 z+n;S*j?-rLtm|^RvCmYTJX2-v`;!xYHsrSx469S0E&hH=?^BJxeSe34j5lgKci&}` zEzdR1H@3SF2gF=u{As$;b&An%+yB}4QsXkCVY2bplkAPWgLmBg0^>V}?RJiFmT`u$ z(^kDMGJf=fBY*z8qYnSYaO20rc0JP=XZ&!Yah_3Za(hfN2JPQC!uZP}{~TlNyvOc) zA9#G<<3<~!jJ?Jh|M|<2#>oTv4?X(N`~BvC=0guU=0A@8{lFuB`rp6$!yjd)NJjP; z7|Ox8JUwhacfR4}1#jgz4}qt_$hn0)oG(1#jnI0A zZE{BY<%nsEu;;uI*Ve11y{2{ft@4W)%a5?obj&gRtkk zsVT=o(_R*o16HWcnIU(tj;=k0h!zhl}jrBKyWeMJ-YoOd*;T58%0Qt%BNL(KM-V_2%;`>ts} zn}Y93ebo~7oOd;R-!tv`fvUL%qAJu^I_G;@^hMITmihUWIwGvJ9PAMGocGKk7v%g_ z0Q+2qkcL5Km9&EQ^sRs}nZ{bd`=uL8oJ^MQu% zho(I@1z)%VozEfcIUj2Heq`EnQt(}_=S$dgKGN|0*tG9S!S`IfehGWd#~QxNP5Vya z>klW=`pCER)HSx~>Ytz0^Uygt& zRNLgBdF$LEVUMTnCF=7V(>||t<#v?r%1$0B_>2+QH8iE<3L z>`5v3qIK)^L)haPjtRaaEc?t9d{5QeJ7Lcmq2W8yvQJOJceI`_Vb2+<;XBH*$EM&r zO3#;XBT<@%*W`F&t?>b`sny}}bVa5F1 znU?)t>++kY&yTR@oEgt=f@QyxLT{_|dL!)dyrYEwn`qf@rQrL8o-bj~nW*7A$+8!w z;JZ@Km$2td((paYvR`kV-skJ}PS|tKitGJs%YLPG`8}o2kFe*Q9nWvFWxtq0Z!7eA zBkVboHF`V8vY$`E_ftJz!k%-EhVQwS{Y(nJpXm7#_MCGye9yD&r&91;uIEeGbI#N7 zJ>Rk)Pr>(NJzv6}bH0Y}1(rQ81>cYKdul=bk{diD%tN`ZrQV2 z%lC2(-)WY8O$xqC^zst+oM{@q(=B_3@P%EkYXT)0eabxHJ)tQ_CQu0Dm@(|gRr7@Y zEc_LgeMJh<7wbhQ>^WCxM8DFqFHgaDk)AJM&$&{=_bSVtnu6~_Jzv6}bCrhg49mW_ zwR~r2_|CNK3sUfXLoY939Q>!@d$nbsn}YA_dcK4`=V}e#Yb^Wh*7ChZ!*`ZtPZYks zi(bc!Bdoc!Dszo~LXEKJ%<>&`xGHn4WuH-=ORCkAp!LWE%GF`(i7YA;_MB_u9l>nN zJ}rf|Ue?zFVb7VZ(bjdAJqCQ&xk?>~jknb%=O$n5SXWHgbFS0maJ^-ZOdxYU(m}-*mG{w@V&{hzf8e*fu1j6&$&s%_h!pp znS$^0dcK4`=VlGxTP%A;3clCs?SZi8+@j%ot7R`w!FQIPFJaHQRm1mRmi=K0zEA7* zK-hEsrQv&g6TuId^FI z-f7v3Qt*93&zG?0+^OMvmu0_^g74#czJxvJE)CziE&J6Jd>_;ECG0tOYxv${*)O%0 z?>!p6_geOX6ny9D!k#ln!}os6 zej)|mhxB|2d(QnDz7JUTqpjupfQIi}%YHZo-?@5u346|54c`YXdv0s_KB(dQkY&$F z!S?~Zyo5dHAr0S$E&HAneCO!-684;jHGChj>^oENy-&}VFrwLM_|CKJ+fwj7Q}2HX z<2*)7ciA@0$_MFG!BhJSy`#R(o>>knX z`-_YW&-K}twl&EvNy47gp-oljc!%oLSz zhrTihXsJzJxvJSqe#7_C^?6pEZ16$GUI|zE|tzC5+wA8oqB}T{s2b znR>p2vBg=#_f4z|r{Ft7&zCTEIcxYX#JaHX&D?o^jwx5oHwc71XJNeaUWE1H*5$WW zpC4iDhK}dA80*C;^!AOb3UzJxtz ziH7gnSQifTjv`l&UUoo-0h=j4vIXq`yorJz?x~)=0k; ztHCMwUaIFy*mIU@_`Zu(-xPeO>iH7JK4%Tz_ps_4XuI@fPf73V9J9(K><6LVBa^U% zvDGG%^JQRVKq1f-%s`O62|6c4d0Kk8k~af`FeQ?V{@~H?{cgLr{KF> zFE3&2W!CWh1gpL&_@1kmmoPRkYxsVORbSy-;nK)kc-3OxQ+l(L4^{|cQ?uVnVD0LI zl@(Y6P9gn=daV$~24;=)pJ5F+1>c}a$6B9i(w}Mges0+}lxwB(rJVQuqQqXT31fS6 z+>5Nl+Hi_;EYs_UF!nZU%JBu(hEwo;PtTVy_BLzyuEN@I>-6)wpJhxxgt6^8uAeWl zP~5uwUeo7C7~7%a`F({2

^)$7dR|E5e@hl}2x?v49+uqYh&M`Aim3WVqIbmGOqs z+=_z@1kq1&5SS0+0|t|9#HGo31-Ytk(+tEa;m5QFKgl8NIjgN=9T?(UGDCgvwgyYg zLC)Fw#U*+T62|WCxCXz*(sK$8!e8iiFB8V@ZjA=N!P0Z<%JHJU9E7pEJ6?{pSduQ! zFYVIt3wr-Z7~8%5Tu@cYKMv2^6H{nwfnHmLvDcel8H#wt@N>iwdHakk(m$`4o-j6l z=VKpYjm+DprI7wPz4U~!^IIeRsJuPKm!6HI%3g#;V{X20sIy8hQNT(v7*18*`BIGq@*meEPyTju<#{3vqceWd&w??!IC9Z4;Yq~46AUW=q&j-+0Q zq@IhUo{prRjHDimq#lW+9*m^!N6Ih2y``UbMV`4mlDajLx~W8Ted*`5k!P-sq^^pj zrbkkjMN*eUQWr&1=SNcKAmx|htjLWCk<|D|YFs3BY9uu>l3E*S*K3gSP4dggjg^tq zib!gCB=un=wJefa8c8idN=jC1FA9Fv*>6Oic{P$!FRFpX2d|gPC8?Lc;GTMA3sUMu zD@du=qadYTYJ!w{6$w)61tLhPVSkVc2J0$!HK-2msiAO?3I?$1Nj1C-?x{gxkP3!! z>d9cBrBZ4b6g(LWUevu{K%r8qyAPfWI%#z;=t5OWb#=j$K?kMosg5MLNB8er;iyQJ z3`fehn6D+cU_kLzB=tok^;snKNhI}AB=vqI^=>5fb|kepl6o_edM%QAIg)xIl6o$Z zdODJNGLm{Ml6oYPdJrjJTlbfK-Wz%5u1MvjQoOt1;?WUV7%k$TQ1IHcF|$ z83Uxwmr(Jc*AJel!ZWoF*DCPdBBfBzd<7(UM#)3BALOMta|S-j`J*x_#fMHm;G+=E z6PF{k&f+pe$wS8xnW%@tIe~M^-l0a@qAoTlDs+kGoiZVn=NXH+Q za7x)TO2P{g2;F`(uSp5yj08fzAEg>yhNu=d97wdq(eX#ARwa7@@@iQ zHxN)MpRf=};1iU_UIP-<*h^(pN@LF@kogJZ@dWZn0-2jY?n@wdC6L<^$ju4l`UEm7 zfy_uC(-X+03FP7ga()7toIoZfknss*YyugTK-Nl_|MLE8bprV!fviX%A19Fa6Ufps zMA^n$Kmyw!QswYK_5e{9{wk2Dh4c95!0LSaNg(qR2oHpfQsD&H7&143+?PP^N+7o- zked_8^$BEF0-2FOrYDd~6UfC00+hS^ zamm{$ISwd2p@4l$fGSI`cv*HYJ)uZ;DFKRP#}bJGwl4vSWV;fHA!FBVIrm-~T-P~U z$4Ry*ktn8{l%7z9!*M5pD_6N7)_%}})Ds8{5q$!^k^clk!Am%JPWw%D)3QwgR2JSZhzydS`_LFVvm2{-4{B9>RP>!@QR za3TVCBw!J+U><0Nks44Iggo43~6+Vb@+3zc7=mC4i-36 zLB8lOP$X+3$do;-q<=6M#t%-~O3R14>9~%Iv>NN>C*w zz?oGg`$s#0{bOthMfjd8==Lja2e0u!c$=e2A+5{~_Q`Aq&*<%daHz$OZ3hrlX9tAC z610mQJl~=n$e|+AmH3^CT6Km`rtxzzIW)JbX16md6DQ8#Kp02Pk-;%8_1|T~E?PL< z#@$Nw186SXO2u6xWz9v7-QrO=W!(kLw8?qUS5s-bhY8(cH2495+kLDt? zY*lRV>}#>2jpl*~$ZYU9x{ViR!{%bJ0{qT!z1;;{S! zj;`T3F-833=}gE&PLZ+T8~k*M6cr5G5=}4=thnX9AuaF8Y%Oo+%q?$@zU2`P?Y3jL zJcz1md4$6fv`fo-s>PO9nH$|Lb7kJEuS~+BDmr#$LR4L45)MnyE|vL2iE;70|Iw2%_pth;Uefb}^xc+r)%k6+5^;u!Bmh zZ=sNKB2TQZvKPX}(1a>`A-qwqe!?2{e~T}KD0l3wrV`z)7Ts~mv*MQfijdxsh4d34 z<+N(WxxOT%w`L(dgXiGcoVu+z*B2$%8?%spE~K0ut~l3sg>-g6TA6R$H8gDIjDc(F zx7Ew^zL9Wf+8x_BLR6h^BpjBYU3}wpZQ>hOiXB`X*g+-j`z*0}E<99hedC4n%7E0L zA;DaUpTEDEmz?ohg?WzfwF+}3b15?4qST+{&i5qDo$-<%=;jZVDU!TDMRGZg1?Ch9 zjz7g;9#bT8UM*o(87Ir|LX_tl6Aml3F&`rHXI1=_=PMJBGlmGV&@N?_BPHcMu!Si_ z9`nd8!!mUU&%ni)inTOOv~+nE(l4Z1x!_ZAu1^c;B>`z=o}pJ}&v3EcGY}5jRmb)W z5LM?H2!|zT7tb)YMbA)KW&SX8WlqpnCgD&O9lJ6is;)8#hb3s2%AC?-Wme*=PZL+d z#odbi!IeUKZWhuDg_H}(73cc6c%iehkWQ0axkz1cuG59|%q*lcg_H~773X@cke-%> zbhMCivAyD4#|Y`ESxB!HQZDFMoa+TbIwA|{qhb==G*EG_^M&;5ETr>0>VhZ!1uLF% z1QKC7R~e9nAKt_UWNI}SA_l9$l`5!M3qkEqffFT1z>mSsC0Vb0@sm*K%xSkZ{XCb{!NV&zT;#_YP(nVQF zXA3E}aaEk_9YXqg7Sfx9lv~9r&h;80eK`y12qEQmw2E{6MyzQ;7ScN<*XOd3&JxmR zvXG7xQf{lOxU4IrtWRbkJx_9dJPYX}$@S4Jq}NHV+#XnQSuYdPhq92qE&_84V#T?> zC8YOfA-zuo<~GNQbG=tc@5w@XyO44#WyQJPEu?p3AssHH+^$)1t`AVd7SXKM>T}QF+s;3)j(9; zsD^M@f_53zV5e{k`<*IV=h`l;%*xiers)+ySfhwZ1DkAfSuY05+TpKimN``ea zg!Gy$q*n>)%q*n;64I-(klrk$S7ad_C8X1`kgk<3=CXjaviH(CBsTrU0`ov|znt+` ziv`ga(<#1liM^N-rbV{Li|N#$l$F@g`J&q?SxD~^(u=Z?P7u-yvXFixHF{na(ualg zoGhfbh`?uOA^lKtofME(*4ynLI!N~Zm8_Re(D!zPLl@bxdpn4#>+J}KC1{u4?yMGj zyGmNxsbWHB1a?pf>0@F-r)MFZD7lWyLONAQ$7CVBQAkH;A)PFwBeRgM5j73ZLVCUA zI@BLxSJp;!I-9k^%Hc+6U{O!^{hqW{qt*jpR%3P0s*VZG@P!Aou z9{;YbN1&nn?NX2bY^feA@s*cIOFlWn%kmXMc~S<-uf*{T$>cqD%xrZ>YOM}vSZf{I z>WTe7;!yvH7y>#@JK9)X5>=-BnxUt5nrL;2gK9tXEnkCk|ji^T^V zo52T65z3=8P<|%fqd5cRSjqFK43v|E@`wzS&x^E&XP`V?^88B%%8P{Z&lxCJiL`&p zK>4vy{xJjP*FyRG43tj^|0!?_z4Uw z^D@P!qPGKmy;U}cZb5G;r_gs*z9cq-4wS0;b|=t#&lxdl%$hgXescH^Jt$N`~Pt2<2WG+W4D7 z*)s#>BSN`H2Fm3^xmzatC}y;eZd&^Q+P?O&Tg&$04??3K8ARGD{!+VEA$G89wWj=Yq6!*Sk)d+zA7-%c1!CVjWuROl zlt0Ko`GHV&_bDsubMh!?%06dHZJz^__44oUbH4AFzp@v)o?)vZc_oX6ew&Kz`}Nxt z@>EnplEBLmiarFz9*9LkV)s`|k`TSf#B)prQPw zIz;@?#K-}2H_Iji!z{C9_i z-ZzFe20ZsHZT*?o}CJoz4k zXcsCP=s>qtMZ2hNW>C>4rzQw?!8htK*acAPO5n>2e zkF{=hGz4*oI5={LT&`D+t*_XOT)H+(nvZp5y1taIXBvSl`8>YMadSP*?nSG&(aS0p zO-?^m;bR^AsBM&Zp%xw~HrMa08gbF;ZgxZK#ie^=&A_6;){A2#n;T8cf1&CnR1IGE z@K+0ikl>y`*?K`!#Kab3d%_D!a8E)F@{7eZ8Qas3pNY~*#2UA|x=KK7i<4yCC|*yn zs+CaI#TrD$#^IJXTU&{wC|YAx?_4hnW#gp?6`*`9151m$b;T-1@#F)H?^(nzRXDd^ z&C2EAdL-~C^ivCpVjZ8S&gGM%Vl#BwnD_GlV`#UrlS)Q&hEAXwl{v~!GHiVgG6z|) zlb_JY)jquyaB}*DFbW29){4J zakWEhF=#z`vQ*YVLqa;V7Ahdu`-b88uez6+FT$WXd1=9JC1NUaQMFd|uRYZDk{ZJr zR_X@Q{wn5RkBz2#z#%Ay-*m)y3FrF2rgE6cZM2HHCTAo5W|SmUYN_J@3O6GmVj(O$ z4$E_@ZA5T4-QmMwy+*(nT>R$Rm>cMtheA&|*F-&&c|D2<=HP(89PBzrM+ek%Y87+H zpqSU$o8qH2wj;}yml!GwA)Q*t2zS5{UO{ElS(_2ict%d0jR3WNJ{$8hIdLpu84#tK zho*{l;Hho?PG|?H=ivBRNQ?F=+HpGBomJc@%h{+DH_Fcl4%`0)cb^FpX1{7dKw8{j3WWht>(PBDkD!mc^QH3#*~G3G8qR-v@;1m#R5WR+h( z66==@xfCB8MQwJu%qJGpU(;$*Jst$`C-OTL;kNCihihmV58X$M#0_z7Ve^WG!pznh1E8@=yA|R)SGBFmOJbq z)EOZB-_&SrEw@lTAZ0}qEqWn5-2m^%V9|7yWQr=pdWp~3w_jn7ZY;tX?$||dB5ypx zmoBH~=cplb2dlQBww!H*W23CxWZ~JVoM%+j%sdO_JljZ4yPRhm$?25yY$G{4t3cj0 zC6hw!WALGBpRgDe>m5E;EGiF+!v9T()X%X)4%WhUmS?rons{!uI9DTW#{46U>V z3=KR;6UE~sfguSy)o3l65eHsqN#IH_=kDj9dysSY^3UDKxjmYTojGX8vCnkWuVQo2 zR=?0s7Su2H>hh~t3p4L+;D|s&Y92nLSj{^oI@oTx!Y1T}MneC8&fO2Nr7H|V5F0yw zP6;b0?Cv@0xrYtIDC~;A0k(hb z>RkW~H&q1Jes7*Oz z(_NAiM;l1u)5tKBdeUZeJ<6ZVXWcYoqcnRf**KC^^#NyxVY%6RGY%kgy(h7FW=T?% z${#b`UTfutS#ZK|zdgkLnsA=#uPE;nL)l_1jD-TY{93d+=W~_;8!BSlB3+>vwZVVU zdX!=o)-k8h9{0#0DEVi$kQ^QU;~cd_<~^N@nHs2JNm&PM>L@CpO+)dZPo%dgrKNb?LK57pYThN6+t)z*M8Z~2 zvN%v$4oY)nj{ubwN{TUVpfRdZs#w%G&sQUDg=K)pMFms$b%6#tK?6)s14h9$8u0a+ z@`&QD#0l0Y=T-$TxrRYs%ZrSBDeIUe-j&qLV9wpBB$6=SQikICW>PpKfEF_h;2f+GDa(4PD* z!f!dN<~@+B-vI|g?TChrmk=3f$F8^huBv)i_0YmFb7-F4V^Vc&5~18rB!7p_CEucR zNfM<;iuu4Xx!oJ`?)6jWaEig)8P$S+a)X?GlUR9kiMOMFlRU#H%+*a916)QNE;2cPd+?pP-wP(44H^u=XV;-#ht4PjexDyL05d zf1%l2|3kjL&oO!%zjS_p8KWyyZ!(*F7?xEzH`uFhIX5qctrMQioVos&2RWbI(C!SCBC z>MBF(!YpEO+2^rQIE}JNvEIivD{dU-KvAL4O+#P}RI+)P69x*)@wP(cOseVy1*zY+ z=X;r-!3jNw`hla{6Bc7MbbI z5l_;q?F`I`jfj2-40FO55n*hX!-xojy^i$nz3Ws`Ywr|z3KCO

BS!R!LqX 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⋙l~+hTfLz8qO| z_;o32k!K3W)z!(y{Hr(`@z5%S=GRL>a$}WQIzr`!&vJ<;NK4-=H7I|lP7Ps{i<5kz zv6DVH54Y=@D79%Vl>oi3Q)f-~3PD#%J;CAa9zwT3OxuuM0&8HwFrD&p_iIH+{;t=V ze~mQuTdgJ4!{21^$=xy<@PUZ59Ub}J|Ys;-xr%)fAua8b@(Ka%!@_q!YT}T3Y z1nnYcy~Cg0xN7#e1BR><9Kb=waB}FtHH*S zXKqw@u8sPCX{3U-jS8hrNzOQ-D+LSY<-%l84$vkVTpyv702-^bTJd1wXOUh z|9z|>-P$8}UAOS^1{(twgq#GTgrGzcqB+o~Be=)fJ+%!Bh%bhG$>3|jm-wU)xABgz z0uJ%iV!>|t_Jse4Jlv5U^Ao!pvVc5e8p?N5HXRzp%h`7jlx2SDg4$O2Iht+AXUXU%<6^rQpzBhNI&I1F zf3K1W6u*LM<#T4~yEU?>#VC;dRQ_Ln69&>KoE7l1*9G zH0Jh-%%(L-c%?-$?h9gn6Mif=e38pIt7t#TS0|B(pA0YOd&}(F^&du~t}&}qkbd-= zCEgv>s-sHtRkEW0C?D@Ve#i;J$cd!CU^5t9Tl$d(k$s&PNPNvlrSj^y8A?C;(;Le1 z^;ovBnM(7^r9Fb5YOfNcuZHOACKx{9gwVlrkJb|2-iQwN*CCY z@9d)_r~bw3b+K6W=W$Eg5M^x$Qwr(s9-+#)_C)R56XWsE?(8h>In&tCB$T6$Y*RR;R#_jhgwu@y}6v1yWQlm>=|=)M&YV5*LM^XbMf)YZ@(vVHPpBRbXBuh0~^vFJ%X0S z(Pg02&k_0$)?ul^oI7+Pz<||RDu7QA6KaNcmgs6JcTx~xZYvkBL*wShBzk(tK+b38 zK87xZB*6f7ZRroOyK=_&RV&viSGp5u)-p`52(wHxVf^Cj%E&3Kn96SY*cWs+OUGt1 z*j3I3e_N09$Y6)n-&=;SM2+M`5n~;OF`WovUi>OhS7ZZ*J*SuYaw7yLU$rVr_M#kd z)Z5_3J-QO8KYDDwZrH?E4cIhkpNVAEqxJLBa)krUTIm+SZ=-@b$UnYb9p&ZxB ztbbrU@*IxS9d0UI0Mvdei0Y<77x99d3T>uACs>7Pa2Zua#$KbCm$6sB=QL;|V{IDz zr0q2LiFl@n6ARV&g%*j3UaY@JXc4qUg0HmIG~g=5{5<}nN&|}4({7QlMb0l0n#aYg zll>xL-^#MaV2rKpaCjX7q($#+BGs#g9Tsr6NN5sBE@%Q6Z*L1e{O~?{nLls8qd{#!Pk*RGM zsdF1f`f3d${Xu0M&S|l>zW=+njP!TZvl$PLN*(n+e0yfE%6$f*mf53>SK7+_FK05p zcx~zTD|N)-3Wdn=N_0KOBF`(bpg}5V1=F1TE13MA8=S)*y*6E=849G)ZU5 zjNLR|s*Om|s-1x1ih^jyv8S}-jA@N!gRW~Zv60ZVY|E`(Ly|S7ZP{gNPs2_$W2BWQ zw5`~z>m+o;Sp9r|zjN-p@9o*vMR&j%3 zYgrYyl*Tn5=AO(g+Ek(n)wxQC>HY$$$n_cTyt#w)q~$IxYZ98}+xm;Me@(5wwGmHjF>Jdx zHddRMuR?2Ke4IvosXxp38ncguafv6rRVPe+7Of@CqP5kat&}XluMP~ij_Un4a8#?A z4+C}~ACvJmu(jVZ_)UU8stKLb)Z?tNYOx(>`HIxM&O7;6K8=T z3p>_AWFWs14xoI{a*kxp8`T_@!#mM4%C+z7#C1;?zZe99K?VO5^aPAx~50@VL9+x zGXKz{`G1aN)Efnt0R6!9sMcqN6b|4I(Ap%tDoTwe;a&qcqTQjclZ()o$~DjbJ%na& zup||v$4_Z3-MUtLcgSI|-Mt3rD|aCid09?a^p)LGbI)~`)PCLR5Y(%o)1mvA_T(9L zIshtDd2vtFW$PUR51*r#r)xBINOf(;f| zG>T@6eRZQ~PcajWBBn^+GCgwzjVdW=AOEVPq^^!ANQ=G29?MADOS;T%8AUT2eFY*Y zTp8>=+g;?Yzh{Q`IGf!j#*Hx@EW5lhSpH_>FWUMIuv)I3vGOTw!hI+kvXy+emOC?F zEGcGyp{U+)A(M(~tV@^I4}93snXHTHOIV2{PPGhjoB&1~jQ0<`AB&8vP7*jB0E@eiKJJC}0KHemL>oVC}gL6G95jbe|O zhXT;WF294=ck8Za-hO<>APAPCNC;@$p`0-RMM0$HathiCNGL`Ap6(R%zerBFNbxRS zG$uu$NG^fEuqtvC{mp5-AjRB3z=4thEC1KhR`kO7zdFJCERa3rheX`N?9>UC1V&** z6oH_K2QF~JX_R$8;Ux278NgJ1_zfGpJV{00nT z3IuH_s9Qi()a%oW+k&6+UTD9c^LU2j4c%2{A960oA$;>#g3Q5Qrd&ETdklAF95S=r zV!qq49JB59O6(Uur8}Dx5UZpMyv|@Vs?5s%=^4WtYM06=$2_I!DU!?$f+RnVL|HT& z?j%zM7Qzr9+kDejvZ_Hnc%@?XlfMAw%ObvIWrsA1J^eI4qj>;nu0PK~hu#kw@|zfC z;xO5F78>7!be`|Flo|gdsc%PtJ62V1l`HNfrMIzJ%Hk{wGIV*6t)*aBB6IP94dfYa z8S72hDNkFO;R;exxlJh@eoLKYoCG5TeXDnvchHP^2hEscW6g%V13ZkytS4)*x%;<~ zbhMAfFqZWvx`mOH8{B}#b<8O`sw%*2ys@{&j)%3B_DeI>(iCsotUm25F>P~AFi+IdZ;4xxvmrVEF zsyGLipYX$2+$1HMZ{2lJis8YNqV`7sY}0_I!?8y!ewWnN}QN=7qyX_y1w-)cSLh8jtB5vm(i z#B`TY5l>Du&G-6pGjeW;6x_MLD1yy1F=U$qXL#$`?wY}$MSo)Dtce5sVHz4`iz4%N z&W9odRXDvuAXu(u#a4Du!U-U?8R^-K%-f7`qQH%uk*%!2XGQKJ%?kt5yh!N&g-|%g z<^{S~wRvF?rshTJVui~$!WC5BDoz@BCi`<*B7+>kr;@`(Qa0si5Hf$lKc6e5}H!L0Jks|e=A|F{eW)8|kTbo5c#rmVtS=pxZ zB3rCjKAFWRokvIzJ7jSl-VrhJSquUk+I??)94cUipbf$qbNMtsjSH8=wf?D>+B;h>5r(lxQVw_6E zF=~#`fH;;pndA?)Ze{9L(ZIV!P-I?)2#N?krP&9xmcHEJw-@^_@D3XO7xXJs6(MY5lZh?x`yE_C3g}^eznTv zTo9_SZOE;~M98sF_#J)&Y+<+O`YV1%{`R53Rd<0Hd!d89g9Q{?^D!BFrpSVjS}%f2 zLQ7ike&NpHM#jgv?lNJqrW^qSU#!dPL?L6tC^0X zyp2-qo?*w7ySXRTgQ*z&Ta(lfqfJi%~^mI<;w zmoJ>kU?3(t=i=nBLa^xF!@zr*oCEr$$srTsApPiRa%g=iF5VqFR_7kG^b4D%seTWf z9iOEU=PJwC>84GKln#Cz0ex1v9;PdY2YsQ=VSWmAdWo2#*#3ZJ0Ji2SC6+2x=t=?nwGdD{_bv#u1>$j)LbJ;vm9eEr-36y z{~j|o$}IlU3Tvhr2E)U9r5zuUKxpWqycHlI9J{=pM^DtPGT(6*-Pb*4z&;|fUgiB9 z!UFeJQMZqJ;>qgS?#;ruBQw0v=LI*BWGOT=Mp=?V!*>c5Uio}(GeBc(O8wkbE)V_QLKTLG z-&+Ii?~+erffqE)11B>yo#L?A4S4MCo>ifc`E_h*w$>gM1C{NS+TdtKKqUx~y)fHi z-ZgSd@QR5IS%IS!%V?MB;WOyreOZf~8`1qbHVpxDD%InwYM5JKUlA^~d^_8e&~h}- zT&ue-<7}su2qCU1J|;r|=X*gML^H8hfTrc4=doHGqzwSfY(c6n$%Rn4Bb8EuyX>vH zBdIqm4r;njSX~OPPx%fwNrOqBanECA2#DRM@?e}bL*Q(fsIQ7MXDvsS9K=8{#xM$` zD5N%JM4XP}#oNc+-8RdXGD09xP4`wdlKBsTL)Q2$p0G1B3vqo-@i-M8i(|z!Co$=v z=iYPr*wjE#5`@Ls?qThZ(>2^*Ws4m!bI$$nz1m8{WzeDAjd0l9yyA8^-*&M={8Jn9 z5pBRjMY3sb_>e8j!rU8hcZ8D$i2z;Zf}-9cT>x}-OTlF`I{3_EjLLDx@TDbl!bux8 zdQati*}`0qDvJM`r)B35iwqj7^o*exescr`CYVOWb&|2l1wkQ zNz#Q~l5}B{Bwg4eNf)+A(uEz8bYX)eUDzK<7vir6-l8|O4kCdk6L_SSJF3WB0Z-WS zMYh_U-aw-QfQHXQ+uDZ&s(?{18lzskZmTm|jKXeI zHy|SvN5ko3e^^q7V$#wM3F2XZv5BB$Jg<=R;U0pK?rCFmr6%E%R z&}J>~)-~&tB{G#}-I8XF?%ki4=HmZ~R!y%~;wTFSb9n+Yg68&1P7BmnkcXc{%QeR+ zTiAV4@|CoVW-gj8+7+b9G=BhBQctkx6>TY= zF<{RS2t$W427?UUo52mVpNGLn;3ue2-XDK`RlCLMc(Ji#X{9w8eK{y>Vo?PS(*Z>MJuOa583+-I9d z@XChqM!X_{SB`SpdI-95OWA}fts4}ueE=F_LSY|(8=>Rnn(I`xyBvwtyMl*9OcsS^ znW+5kVlVuWlpW7r1O)`2m#!XC;y98#tTkGRt1 zE3jv_gVv4Glmis2lk+Sp%32{KoIakgZlhvMzP`cP zTrnrcr0s>Y{maUL5Y=on8QBHt(qLJB21OE$BMM8FVN1%A!Wp&f)?!oKNO?FDbD&Tm z$d{6x2sa9LBFd8SrMB1*3wI=3kPg7f*m878y^Osh#L&`fGmE*vSIqpmS^a{Qm`2?>421BduU zuh=UITK`u$l&8w8iLkdx&YjVSBu5L{Xq%L0-4t69X=M)%9LapL)3`y&#sQ>F+I;yZ z)=jlq!*VgLr!2|xRiIPgWH0zVDPtw8-1tz~&_DeE4NNggsgqnFa8^&~cBVK4^%Wp^ zzu%J>zj5;brXgKi+dw55wEBkv{0HrRK|`jpxl^^*?@OE}lfYlk99`j+DZqCChkeO5 z7`6*uO;MusNjXH_;VsYXmE=){OYjRn8C{|OF8$`N6u_xskLJdbL)*G2NQS}zkAa=t z*L6QJHhWU6;EdA_O)D@JM2@y)S~=TY;!d9O6}+&t@Z<;OXS2D{-g#8lhQYBj8-6BX z7p}soVg;b=F_$5zW7xouEJwO>Hwz_j`I4*?)j+E(=z>$y1>t!^A9&rJ+@y)+hzqH3 zf!x|U9<)FWF@SyIHUsAVFmr#zJm;=LlwcTLL>9>Y@ufGonVm##9Cj23PozozZN*K} zY;PW7gMJ>3bh@e=(4@Z>*cSP`!r8Y$(KkcRN9p$}{a@=FVi+SK&v-%Uu{W@*BS?J9 z5Q%Rcc3T=~uYasef+AM30uLzC6%^uI0Q0SM^H?3s%l<+SOLE9MWY=nQ7j|ka3BvFU zT!2TWH*h!tWt}dM_p2e@)*lFrbCrz9#w7D#<2KTt7e;nZ52JlYI6eq;Z zZ|4Fx$M<=)R27r&#K?#$Vr>Jh5+ZNmc6IEZi5g3cTqMP7~VAR3&AOg3i zx(VvDy8_?=bdS)Fy5}b6RcuggbJccP4VRvwx&q?dVAe6E~CRrNXn|6GNPp2g;Xh zp|9@=eP)yz1Jk<1h)lopK1AoqQ14g9wCVk36A+{(i+0|Wf4o7e0jG4Oz|_r^p{nAE zP?`wy>o446h-hI2`SnG1u82*UJ+Rjlv25HPkhyt1YS>rcQy1(la)V0>$2g9eR2mVY zzjCOL4ZoH|Txso+9%T5RC4j9gTU=Pu+VdJa88ViyW6UD8n%v;O!6L!NqAVyY9cd5ILWBxX6d9dY73UkDZ`fCU`a+YXV*3hah5(j z=x8|~xd)w)gnpCp3euUxF6YaoVL%e=DFh^0xE&VaEc1eR<}{fO1+3G#WXM0a5bO*= zGQ8l+LInvdoMgjbWXu!9B-!fQ5YKljMxAl>NNf@(LRzH8$2?bX3O)u)a0RaC%gS>S zIU7|h0jgcPafzJbX~8AQo{QJuX^dXJ4xr=K&0lzM=IYGjC{p<_N$ZzCq&^>Q}Bzt(s1WX+RhXwrN)<1upsF@it;` zauQSEiRg&GRU@1xy2g?_+-_Xg=*D>8#9qb9I&>4B;^s1orMA&)oy#GS9dMGOveih+yp%Gw$dCoU)j08xevW5(oT| zFycrF7e=gzo0e=9Lk>A`zBPp9z{Q21P;4z($@~l?yVSXGo32LQN+)cA4+gb#(D~Xj zH3c|{onT=j!+n8O4lB%tIw%@r&_T)S^k=~@XIZRu-!Ni z?{x;nPCy}wr7cm0p636=V_hr$vMp~u;%lT$UDYZV(?#9!RHcQXnpzmCE2k2hC`mwd zMJ413fx+n5G$(BoEz}ejJgBCP(syM?p^-xTTmP|TE z4@ZH|d6_!z?MizYX;PXq^C2J+p>_DE$qOIaH_G_sI9xl~Y${0lm6OT|GzV@E21mQ3~Iy; z)odfM>bh+XCufizEEy`amAwcYc#ZrbCTkhVheB5Ci zXcrGw@Fnl&;a>8ta8Q|sdxQF>bsW>yp%yW<8(Q_mVYk>~>IS!hTT0SMc4h9HpUnCS zO>>4sP-;%PWIb$t$D^@E69 zYJtNqfBDPpM+rJ9lg~Yzu-MCTBRpMn{0O<`Q`~Go-7ym z#p?3ln@4U9Ws@S_Ws1kvl=741E?)h{83d`Y(E?~E%SFn*LBA_`da~R@+15%bKF7VcJh~ zPAc1IpDo`%DWyP3XMu4eznu?rfv;XyW@g2*VbTVvDPl<|4_L+n21zpOq7JM~x!j?U z3$cJI2%zD+M_uM;G1px|Wm)7rOVaO2I9n+X@QVa>DPXvyxS;4tb*(ZfSR{t8>sWb^ z7m2Ct54PE{@(=~Ln`h}*S#VGMMS;}W_lH=)e)w0Rm2G&}gSn>sx<%zOht#i-OYwKu zZGdTZo#8wA;mH=~D=p(Y2&Cw#t)0Lpd=BU~sp(dRA)FSg1jfIDl!NICnO?F)pNg#Z zfvtTk)ymVAe!Y{ z?8T?CsC;LcQ~*scvW=aT!G3v!M~D3pNC1`l>QP%m#adFN`iTSt6y$U^PSNqrztF$} z-(Y!%X>Z0iY%jOO2y-nf{8bJC%F6!{5Mt&F*a@l{B}QXgHutuZhN4|K%&hg0nRfL- zUOcy-Yl#@uJpMe(ew*XxqcyK=D6VQ(K2b=J(@OL zJ=0up^@umJvQ8IPRqI0jr2H`?PVVPIYT7<7>;`q0VjfoE61dKo_zAnuw}Rj^Li2r+Z5d6y)}19B zd00`9jx`bX$B#{n%GSC+yxy4Y?Xs;nwZ_<{c$lT4H(b%jm1_P7GxDe9D3@m ze=ygCS8V31JQ(3;g%A-L+t&raosrRq%SHOwY}u3T+Z87%7#S2K6lcKuO#uD zia;#$qve^DHf>-x;yAdw$RZAeN<^RQo{mzOr2) zhMjeh?^zYqATY+J&3w{PfkZYw(M)G;RyI?c7Wx2-_Je40gaO(I;8uPcoC!tJkMbC* z3bvxzH}IB1#V!`91B(x5nOb|EAg1EJ_hZvc6XwG*Okg2^FhQ9X9A61Wr2U+02VBrG zj(FPru;fRW;LaoLA3?PQ{`rd*s@)qKyq zt`WYNene{pbl^6hv-_$78MOYms^VXl>M^hHQ>o&k>>|#tsLBnt{UQiNX!R~W?yhIN zumXdv!lk`(l%)aG+iiihtV$?49O!tz$xwW5qR*rZ`Wb4NWedxEi)AQep^TX^CS3=! zaPPkb3|aX}Kwq;Oeo=+Oz#q4#z8~vF-SaMAfPJ3|zqs=2MSJgA?sRu8wAu7%S!itJbqGesQQ(=3dQ$4|G>r~4#b&3|SeXQL4$Ws@-<5BC6Hh0uP z4ycy)5pBeea8?T!>%Eo&YTehCitA91ca4Y!+lSDSZA*b>*eYM6Cknv*DKxEd7&yu& z{}TC~rn{8S;(pH2eaC8nG;6h7r4}8f{I94*E1s%av@M2|(~Hz%CyzGE*AhPp=XND= zp~LzMzntE$w3l+;AF|>dq6+mS|8W^fF$lEh&kL@vf&8+%;g?@)5Zv9j*mCWY< zUivd7*vV(Gd6klgN;Dt3y#1gUv)QdSk(yETZ)XnBy{*i2HZdRSzf!ATFC!5zV4LFI z5knC<&RlJCvhh&nP9~3Gsf6g1pG!AeJC{zP?e02jIZ|X|EXOE!wz6tWMWU^+yMjA} zoQt+qXC!YITXE5rLcTDHymuFTK*uHu=(A~Ad@wvtT@70yoF z0cw#(Ao@aD%!1jrE=+6^d7-o|rROL$4iO?vfw{w0gL6NE(Pdj;NbA5~BjbwwFM+%z z(euy}!f{ZXCF6_BIdZPl6lvGi8e+vvJl8Ee!z&zYp!g19Ie1EWD*nAI;EM6`Vqkg+rq-sAua2<9-Qfo z;|$*kVVHkHWXNo%02eM&O;AGY{IIZJxw-Y+Qx-HICKSlh^%22JhdX-BOemYcdcVVV zXo%7q&~IynbXy0|56Vubeil`^r zwq$`0d<5ioTI51Yf20{A?$w(|P#ZW=GcPw;kjx)cG{hyU9EVl2<&mjyEbBODiKXBT zz7~P(XY&0}i?pZ+2%MNxkC;#YvV3XNxTSA=BEcjAN3-^Y{~w%w{T~*+E0u>N9{6-ejA8BVF~YQ?Tv=r;@ZI zzQV`uJD3^&QYg`qoP!et3au~vEaJ-|R(kpbIzcg+()X&(ji{6hUh??i7P9;A% z1u1UPRvCa;ow2m?pKv~*@23Z-F%z^fKEf6NU^WQmFq5IP#PWSzG7sM!H?u&?xG>ht zF4J+RUB``I&78_oKP$EeULOJ6Mb`UIi(E++v?KJ$ev%TSV$ z^F?*UY`Ns7h`&@OtI7ZK{2AGls-;ZUl0SL=jJ6HTb^izPeyO}eW{ul8sX=0iSB_y3 zBDw=)^74p&_lCa-^NZQ|^L6!BqMwpM%9PX5Oc%DQEAOx;JxL8_DV12!V+oiZcTSUf zr+nr|J_At8q?gIe4^@DcUK4M48{}>EG7>X*hm@#tUi;`v%@EK~f2kIUmP+}OJ;rn* z7-|sAFuY}hlwbOLpH9km^zJ2fgkv0RiN+m%{fBwlh&ojBNX0fXRQU;;>a}2{aA&K) zvOJ9BVLLEB@|ZBoNf^Z)>8H=5otA3s&YjSG}tE~|rV3oKyj(ytib$?Og; z2+7;20f;t<#PdIGY1trpvQ{~z~AdKxU)0t_N-Cck))r81a* zu(-D5hpdWqz|`7Ieeb`|XFlJ_r{IdI=JjG$@i#SHh*POIP*9E%ZCwLo8m|x^tH93L zW@z#wDoX**09nb@Y_c4w&6i?YVnKSyJ~J$|44f_&!o~2F@hrZ{59f8cymv1rG){dl zCGX!TU(GhSF(tzc5(UyDz}##QJmWZDz+XcIt`)gpsRHEa)JOqTJsk_g&~7J7ScB2a z7BHs=u~Cgf<*#}lG9YH`4MCh))Tt^Ew)ES=ZQFQZ;EtJhqz#l1xDjg}XoHa|i;#5> z`ayWSl7*2xL|qdCY2b~}f6j$n%L{ZmC-eGW ze|M__XZ4;g>~ec}iHq2->2T)akwis@!%+jHE7JGz!f88p9&~=66rKlH;P?jk-jDMZ zjz$<!>}4+=?>O$9U3Z=ht8jRLx2MfTf`yFnLT(4c~8^~BecYE#VC{G@|{0c zwmvjy_wI_bjeF@`k4l_E<%*s#EWW2yET`4`fSE4TW$1ljJ$Vr2O`S76j@NlvkpOjv z(NnF8PNQVKOZKs5-gYFHzT%@oIhDZYt=sD#hNuuqAiaQZ=y@Mop4Tz3ZM2B}PBo>l zJO_a`CXe$P3z^5+YI0TRXaP1_1`(czf-PGW8!-QXdq(gNTwZTJJ!o1E6iV|9SM>R&^y6h`V}OwzQAzWc z)?3L!(|R+YDBloNB2D=RJSd3xYnR_cm=7Ib+GHga?4bE71xgb06*O0B!mA%!DZj+{ z73-CB<(0L3d0_cMCK=IkzSZDooW;FLOr}=^5Wz=DVpab>N@IL65!+LHu^^>^$;vOu zqS8L!7}qkv|qX#v|pS^)0OtC z-UZc{?P-JR>#=B8F610zR%@zn$5r2stG=DKjWfUJrTnJCoF3+{9vx=%hpSx1(boWHvvXTg2s8kb>AcCzCvR0 ziilp&BXln$UZw5R_C;R9VkBU|<5Ri(E3V!CKsK)33UQeoQ*eu@;0A226w|2S3YlEL zMV)c=){eWY)Z0!_Z=cO3tG6Q+j3~EZdp@;1RBq!hRKJcZw=X%JO;m30+flc@&#^BI zO%4D9bA+dnYXD@OXjf}Qd-_cgEjn$7NR(le>9if!X$|W&Fw6lT^R*<);s#32}p@-%9 zDv^VsS-$XnpHAeY|HVRXE8S~``9zu?$Xe7-IIl3-f5~%EN_(ii%P{V-C}R4Qj72pEA=X;RAoEbtE!fPSo(_d4ZMb`QT{YJ zP~-%ycQ=REs2hODTGRS98@3hu7c+m7yKD4iQo67tG~ja4)o^*pb|D0hCqMO(Gm?a^ zm7hrd(MQfG_c&_hKlTxGLz`Cq@p!+8C)Tub%mHM8v~nF>V8`TCqOnmP7VEEMXQN!v z@0wO_deR`PY2~N}QK%sXV+?lyX#?Gh6<`L#A$1&p^zQ&hL&jUcAwP&-COvWfMCbJ*NOo}TeMdyXq;J6{a zRp4V4nUa^H>Zla(Ajr+fhRBsK-*8Fw=_P+Ad&+(Rwh)6bd+OP=eC|iCB;{Uz3>H`y z)teZMARxb%KZ`1N5vJWwz3*`dtjB-(&7Dv6rm(*SiZwhB*4W$Z99U z-+$i7P%2%SoJjuV^G1eJ>SPfA?(;^5u$r~xpT&D8Luz3yF3mU@wnc`uXi!^ZSc?X= zMTX+QLFuigq2m-2rh$IFLqH**U7G_lDImq#97G6?1wnwG>e~WgBE)XbPJOeICYZ@= zJv}eE3b$MAcN{RF7#;&ozg1lBp%oM^vc9zS|HxZ_Ppf*~Ec}X&u`!>8HxEDIxD8Xt zy#<{o!*K#GM>q=TVA@m<%gIHZksZAhM>OA8AIFN$f0btyKW_QsKL*8YgW?d0KMwWR zG2Eo<#hm4c=A6OwB?HFrZ#DVEMToffO2NwTIWqyX0( zL4HyU?o+93c0Qs3Lj5w@!52`$iU`mX>7SEbZKsm4BIhK{&=pKizL@LtrnZ_A%{Z5e zjA(9@0y^cgCS#NW<^sc?Kmn?izV~uigB`?Wo3nSo>l77WMiZzRHGTmqJ40?rVqEob zfX#fEC&2znRSII6gG6S1Y~MPKB$~z8chgFA8HYk%tVkRwV$|w}I?UA=X3<E3&o%RDN?1Sbcf}=G(2Rip*EZzX~y^Mg0Y5s}5hWYLSPrg~6}|J+p56Gj6N8 zOFe^vRI9f;7yG-O7P(9QjDO$wwb`ELZhD zW?+qvs8N30V6EzXa#OYTV^yK!fffEED}1GCIG_@RKEDsLkvj1#S5?ly)9<%?Qx0q{ zd*38F(jgICKo|eQX_+9voyqg^6-jNlQ-u7cnGdyyg5^6jV*%4NV3SZ_c7znS)d@ys z!gT_5$~(9nOVsE!05m_RmpV@bE=Ya0YLEc~d!Kl8NS`jXF5%+|5Qj(#0SkIEPue-{p@{lvfU5TGbP}h<(zLMMM z)m(MW)x4Udby;r4m{yCd9?^2?n>;QI6%P<|hOeM^wo*{xOI0U%2hF*G9_*3Ua5wYQ zd(o3~;?}uGTQ*5nBPqeq2l4!YLB5`eNy=gY!p~I9W}TS06!T0jMGOcYu2v2VD}$rT z05d;^D$sk7y(wjxabz#EilNz1h6<8R;lJXGD^PD*elam64eVe|vXy+HR-zuQ>b2h) zE3__seyq^?^ebb9)~UOPji^fN)E!ls^rB;@@@GD3Bg1Q!&u(=zr z;M!F!!JFq)5@^Lf*s2qS>b*XtC|T<@oivs0btNOn0vpL)PENhs!cPh%G#(<2u|PF@ zqL_N>2{OvP3Nj0y=F9R8K!a=|7v(efg{y8O3A6IIvkIshOjmrv+efy~1Z|vgok*`_ zccpJoolNWB&=`r+CZEk%LCp16Gc6e}uhLRil3QB88dAYHfWW4!)U%p>tGolplZX3i z@(oxYS?(-mKc0Mx_wp5rm;)t}JF*55gy&X#QX6LblS=>aC-j{Cne3aQq5-X7{_BhY zLp?kTn#e1GkpWrASv<^$t3}wVcNfgI!vi|2O*a*{QjjSte@*bjUqhjVt>|Yp=6}jF zL%;}x|J@2I7lg1+k3O9tKoKwGNZgrR$-J47m2@bv>a4IKeN4cj8Iwz)5XgcTujK9* z*K5#D)D76Cpn{hkL4XU#n0GSe0oSLPmVO63j9lpVa>i8xwFuIpWrrk&x%+&0^%Xf5 z)k8Nw$Se{ftuinVUZ?$zoy7IOee%=fdWa@|k(V9E0=iZGxM_$WE%;=n*5!C)L4k&u;}4QKpW`S-yNo3liS^&G#lQjK

8j+Xi5MPJg` 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 a%g5$UqC_1xQ#Uf__)2(+VV+_+C;uNF5@~n< literal 889279 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 z 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�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 InherentDataProvider { } #[cfg(feature = "std")] -impl substrate_inherents::ProvideInherentData for InherentDataProvider +impl inherents::ProvideInherentData for InherentDataProvider where F: Fn() -> Result { fn inherent_identifier(&self) -> &'static InherentIdentifier { @@ -261,9 +261,9 @@ mod tests { use sr_io::{with_externalities, TestExternalities}; use substrate_primitives::H256; - use sr_primitives::BuildStorage; - use sr_primitives::traits::{BlakeTwo256, IdentityLookup, OnFinalise, Header as HeaderT}; - use sr_primitives::testing::{Digest, DigestItem, Header}; + use primitives::BuildStorage; + use primitives::traits::{BlakeTwo256, IdentityLookup, OnFinalise, Header as HeaderT}; + use primitives::testing::{Digest, DigestItem, Header}; use srml_support::impl_outer_origin; use srml_system as system; use lazy_static::lazy_static; -- GitLab From 82744fbb6f4d677f2edfe9d88737c237622c97a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Wed, 6 Mar 2019 15:04:28 +0100 Subject: [PATCH 003/120] Update copyrights to 2019 (#1932) --- build.rs | 2 +- core/basic-authorship/src/basic_authorship.rs | 2 +- core/basic-authorship/src/lib.rs | 2 +- core/cli/src/error.rs | 2 +- core/cli/src/informant.rs | 2 +- core/cli/src/lib.rs | 2 +- core/cli/src/params.rs | 2 +- core/client/db/src/cache/list_cache.rs | 2 +- core/client/db/src/cache/list_entry.rs | 2 +- core/client/db/src/cache/list_storage.rs | 2 +- core/client/db/src/cache/mod.rs | 2 +- core/client/db/src/lib.rs | 2 +- core/client/db/src/light.rs | 2 +- core/client/db/src/utils.rs | 2 +- core/client/src/backend.rs | 2 +- core/client/src/block_builder/api.rs | 2 +- core/client/src/block_builder/block_builder.rs | 2 +- core/client/src/block_builder/mod.rs | 2 +- core/client/src/blockchain.rs | 2 +- core/client/src/call_executor.rs | 2 +- core/client/src/cht.rs | 2 +- core/client/src/client.rs | 2 +- core/client/src/error.rs | 2 +- core/client/src/genesis.rs | 2 +- core/client/src/in_mem.rs | 2 +- core/client/src/leaves.rs | 2 +- core/client/src/lib.rs | 2 +- core/client/src/light/backend.rs | 2 +- core/client/src/light/blockchain.rs | 2 +- core/client/src/light/call_executor.rs | 2 +- core/client/src/light/fetcher.rs | 2 +- core/client/src/light/mod.rs | 2 +- core/client/src/notifications.rs | 2 +- core/client/src/runtime_api.rs | 2 +- core/consensus/aura/primitives/src/lib.rs | 2 +- core/consensus/aura/src/lib.rs | 2 +- core/consensus/common/src/block_import.rs | 2 +- core/consensus/common/src/error.rs | 2 +- core/consensus/common/src/evaluation.rs | 2 +- core/consensus/common/src/import_queue.rs | 2 +- core/consensus/common/src/lib.rs | 2 +- core/consensus/common/src/offline_tracker.rs | 2 +- core/consensus/rhd/src/error.rs | 2 +- core/consensus/rhd/src/lib.rs | 2 +- core/consensus/rhd/src/misbehaviour_check.rs | 2 +- core/consensus/rhd/src/service.rs | 2 +- core/executor/src/error.rs | 2 +- core/executor/src/lib.rs | 2 +- core/executor/src/native_executor.rs | 2 +- core/executor/src/sandbox.rs | 2 +- core/executor/src/wasm_executor.rs | 2 +- core/executor/src/wasm_utils.rs | 2 +- core/finality-grandpa/primitives/src/lib.rs | 2 +- core/finality-grandpa/src/authorities.rs | 2 +- core/finality-grandpa/src/communication.rs | 2 +- core/finality-grandpa/src/finality_proof.rs | 2 +- core/finality-grandpa/src/lib.rs | 2 +- core/finality-grandpa/src/service_integration.rs | 2 +- core/finality-grandpa/src/tests.rs | 2 +- core/finality-grandpa/src/until_imported.rs | 2 +- core/keyring/src/ed25519.rs | 2 +- core/keyring/src/lib.rs | 2 +- core/keyring/src/sr25519.rs | 2 +- core/keystore/src/lib.rs | 2 +- core/network-libp2p/src/custom_proto/topology.rs | 2 +- core/network-libp2p/src/custom_proto/upgrade.rs | 2 +- core/network-libp2p/src/error.rs | 2 +- core/network-libp2p/src/lib.rs | 2 +- core/network-libp2p/src/secret.rs | 2 +- core/network-libp2p/src/service_task.rs | 2 +- core/network-libp2p/src/traits.rs | 2 +- core/network-libp2p/src/transport.rs | 2 +- core/network/src/blocks.rs | 2 +- core/network/src/chain.rs | 2 +- core/network/src/config.rs | 2 +- core/network/src/consensus_gossip.rs | 2 +- core/network/src/error.rs | 2 +- core/network/src/lib.rs | 2 +- core/network/src/message.rs | 2 +- core/network/src/on_demand.rs | 2 +- core/network/src/protocol.rs | 2 +- core/network/src/service.rs | 2 +- core/network/src/specialization.rs | 2 +- core/network/src/sync.rs | 2 +- core/network/src/test/block_import.rs | 2 +- core/network/src/test/mod.rs | 2 +- core/network/src/test/sync.rs | 2 +- core/panic-handler/src/lib.rs | 2 +- core/primitives/src/authority_id.rs | 2 +- core/primitives/src/changes_trie.rs | 2 +- core/primitives/src/ed25519.rs | 2 +- core/primitives/src/hash.rs | 2 +- core/primitives/src/hasher.rs | 2 +- core/primitives/src/hashing.rs | 2 +- core/primitives/src/hexdisplay.rs | 2 +- core/primitives/src/lib.rs | 2 +- core/primitives/src/sandbox.rs | 2 +- core/primitives/src/sr25519.rs | 2 +- core/primitives/src/storage.rs | 2 +- core/primitives/src/tests.rs | 2 +- core/primitives/src/u32_trait.rs | 2 +- core/primitives/src/uint.rs | 2 +- core/rpc-servers/src/lib.rs | 2 +- core/rpc/src/author/error.rs | 2 +- core/rpc/src/author/mod.rs | 2 +- core/rpc/src/author/tests.rs | 2 +- core/rpc/src/chain/error.rs | 2 +- core/rpc/src/chain/mod.rs | 2 +- core/rpc/src/chain/tests.rs | 2 +- core/rpc/src/errors.rs | 2 +- core/rpc/src/helpers.rs | 2 +- core/rpc/src/lib.rs | 2 +- core/rpc/src/metadata.rs | 2 +- core/rpc/src/state/error.rs | 2 +- core/rpc/src/state/mod.rs | 2 +- core/rpc/src/state/tests.rs | 2 +- core/rpc/src/subscriptions.rs | 2 +- core/rpc/src/system/error.rs | 2 +- core/rpc/src/system/helpers.rs | 2 +- core/rpc/src/system/mod.rs | 2 +- core/rpc/src/system/tests.rs | 2 +- core/serializer/src/lib.rs | 2 +- core/service/src/chain_ops.rs | 2 +- core/service/src/chain_spec.rs | 2 +- core/service/src/components.rs | 2 +- core/service/src/config.rs | 2 +- core/service/src/error.rs | 2 +- core/service/src/lib.rs | 2 +- core/service/test/src/lib.rs | 2 +- core/sr-api-macros/src/compile_fail_tests.rs | 2 +- core/sr-api-macros/src/decl_runtime_apis.rs | 2 +- core/sr-api-macros/src/impl_runtime_apis.rs | 2 +- core/sr-api-macros/src/lib.rs | 2 +- core/sr-api-macros/src/utils.rs | 2 +- core/sr-io/src/lib.rs | 2 +- core/sr-io/with_std.rs | 2 +- core/sr-io/without_std.rs | 2 +- core/sr-primitives/src/generic/block.rs | 2 +- core/sr-primitives/src/generic/checked_extrinsic.rs | 2 +- core/sr-primitives/src/generic/digest.rs | 2 +- core/sr-primitives/src/generic/era.rs | 2 +- core/sr-primitives/src/generic/header.rs | 2 +- core/sr-primitives/src/generic/mod.rs | 2 +- core/sr-primitives/src/generic/tests.rs | 2 +- core/sr-primitives/src/generic/unchecked_extrinsic.rs | 2 +- .../src/generic/unchecked_mortal_compact_extrinsic.rs | 2 +- core/sr-primitives/src/generic/unchecked_mortal_extrinsic.rs | 2 +- core/sr-primitives/src/lib.rs | 2 +- core/sr-primitives/src/testing.rs | 2 +- core/sr-primitives/src/traits.rs | 2 +- core/sr-primitives/src/transaction_validity.rs | 2 +- core/sr-sandbox/src/lib.rs | 2 +- core/sr-sandbox/with_std.rs | 2 +- core/sr-sandbox/without_std.rs | 2 +- core/sr-std/src/lib.rs | 2 +- core/sr-std/with_std.rs | 2 +- core/sr-std/without_std.rs | 2 +- core/sr-version/src/lib.rs | 2 +- core/state-db/src/lib.rs | 2 +- core/state-db/src/noncanonical.rs | 2 +- core/state-db/src/pruning.rs | 2 +- core/state-db/src/test.rs | 2 +- core/state-machine/src/backend.rs | 2 +- core/state-machine/src/basic.rs | 2 +- core/state-machine/src/changes_trie/build.rs | 2 +- core/state-machine/src/changes_trie/build_iterator.rs | 2 +- core/state-machine/src/changes_trie/changes_iterator.rs | 2 +- core/state-machine/src/changes_trie/input.rs | 2 +- core/state-machine/src/changes_trie/mod.rs | 2 +- core/state-machine/src/changes_trie/prune.rs | 2 +- core/state-machine/src/changes_trie/storage.rs | 2 +- core/state-machine/src/ext.rs | 2 +- core/state-machine/src/lib.rs | 2 +- core/state-machine/src/overlayed_changes.rs | 2 +- core/state-machine/src/proving_backend.rs | 2 +- core/state-machine/src/testing.rs | 2 +- core/state-machine/src/trie_backend.rs | 2 +- core/state-machine/src/trie_backend_essence.rs | 2 +- core/telemetry/src/lib.rs | 2 +- core/test-client/src/block_builder_ext.rs | 2 +- core/test-client/src/client_ext.rs | 2 +- core/test-client/src/lib.rs | 2 +- core/test-client/src/trait_tests.rs | 2 +- core/test-runtime/src/genesismap.rs | 2 +- core/test-runtime/src/lib.rs | 2 +- core/test-runtime/src/system.rs | 2 +- core/test-runtime/wasm/src/lib.rs | 2 +- core/transaction-pool/graph/src/base_pool.rs | 2 +- core/transaction-pool/graph/src/error.rs | 2 +- core/transaction-pool/graph/src/future.rs | 2 +- core/transaction-pool/graph/src/lib.rs | 2 +- core/transaction-pool/graph/src/listener.rs | 2 +- core/transaction-pool/graph/src/pool.rs | 2 +- core/transaction-pool/graph/src/ready.rs | 2 +- core/transaction-pool/graph/src/rotator.rs | 2 +- core/transaction-pool/graph/src/watcher.rs | 2 +- core/transaction-pool/src/api.rs | 2 +- core/transaction-pool/src/error.rs | 2 +- core/transaction-pool/src/lib.rs | 2 +- core/transaction-pool/src/tests.rs | 2 +- core/trie/benches/bench.rs | 2 +- core/trie/src/lib.rs | 2 +- core/trie/src/node_codec.rs | 2 +- core/trie/src/node_header.rs | 2 +- core/trie/src/trie_stream.rs | 2 +- license_header.txt | 2 +- node/cli/build.rs | 2 +- node/cli/src/chain_spec.rs | 2 +- node/cli/src/error.rs | 2 +- node/cli/src/lib.rs | 2 +- node/cli/src/service.rs | 2 +- node/executor/src/lib.rs | 2 +- node/primitives/src/lib.rs | 2 +- node/runtime/src/lib.rs | 2 +- node/runtime/wasm/src/lib.rs | 2 +- node/src/main.rs | 2 +- srml/assets/src/lib.rs | 2 +- srml/aura/src/lib.rs | 2 +- srml/aura/src/mock.rs | 2 +- srml/aura/src/tests.rs | 2 +- srml/balances/src/lib.rs | 2 +- srml/balances/src/mock.rs | 2 +- srml/balances/src/tests.rs | 2 +- srml/consensus/src/lib.rs | 2 +- srml/consensus/src/mock.rs | 2 +- srml/consensus/src/tests.rs | 2 +- srml/contract/src/account_db.rs | 2 +- srml/contract/src/exec.rs | 2 +- srml/contract/src/gas.rs | 2 +- srml/contract/src/lib.rs | 2 +- srml/contract/src/tests.rs | 2 +- srml/contract/src/wasm/code_cache.rs | 2 +- srml/contract/src/wasm/env_def/macros.rs | 2 +- srml/contract/src/wasm/env_def/mod.rs | 2 +- srml/contract/src/wasm/mod.rs | 2 +- srml/contract/src/wasm/prepare.rs | 2 +- srml/contract/src/wasm/runtime.rs | 2 +- srml/council/src/lib.rs | 2 +- srml/council/src/motions.rs | 2 +- srml/council/src/seats.rs | 2 +- srml/council/src/voting.rs | 2 +- srml/democracy/src/lib.rs | 2 +- srml/democracy/src/vote_threshold.rs | 2 +- srml/example/src/lib.rs | 2 +- srml/executive/src/lib.rs | 2 +- srml/grandpa/src/lib.rs | 2 +- srml/grandpa/src/mock.rs | 2 +- srml/grandpa/src/tests.rs | 2 +- srml/indices/src/address.rs | 2 +- srml/indices/src/lib.rs | 2 +- srml/indices/src/mock.rs | 2 +- srml/indices/src/tests.rs | 2 +- srml/metadata/src/lib.rs | 2 +- srml/session/src/lib.rs | 2 +- srml/staking/src/lib.rs | 2 +- srml/staking/src/mock.rs | 2 +- srml/staking/src/tests.rs | 2 +- srml/sudo/src/lib.rs | 2 +- srml/support/procedural/src/lib.rs | 2 +- srml/support/procedural/src/storage/mod.rs | 2 +- srml/support/procedural/src/storage/transformation.rs | 2 +- srml/support/procedural/tools/derive/src/lib.rs | 2 +- srml/support/procedural/tools/src/lib.rs | 2 +- srml/support/procedural/tools/src/syn_ext.rs | 2 +- srml/support/src/dispatch.rs | 2 +- srml/support/src/double_map.rs | 2 +- srml/support/src/event.rs | 2 +- srml/support/src/hashable.rs | 2 +- srml/support/src/inherent.rs | 2 +- srml/support/src/lib.rs | 2 +- srml/support/src/metadata.rs | 2 +- srml/support/src/origin.rs | 2 +- srml/support/src/runtime.rs | 2 +- srml/support/src/storage/generator.rs | 2 +- srml/support/src/storage/mod.rs | 2 +- srml/system/src/lib.rs | 2 +- srml/timestamp/src/lib.rs | 2 +- srml/treasury/src/lib.rs | 2 +- srml/upgrade-key/src/lib.rs | 2 +- subkey/src/main.rs | 2 +- subkey/src/vanity.rs | 2 +- 281 files changed, 281 insertions(+), 281 deletions(-) diff --git a/build.rs b/build.rs index 7dd666310f..9981ae31d7 100644 --- a/build.rs +++ b/build.rs @@ -1,4 +1,4 @@ -// Copyright 2015-2018 Parity Technologies (UK) Ltd. +// Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/basic-authorship/src/basic_authorship.rs b/core/basic-authorship/src/basic_authorship.rs index 728ef3c067..f074b739ff 100644 --- a/core/basic-authorship/src/basic_authorship.rs +++ b/core/basic-authorship/src/basic_authorship.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/basic-authorship/src/lib.rs b/core/basic-authorship/src/lib.rs index a4f6afb8f8..88a55c3bac 100644 --- a/core/basic-authorship/src/lib.rs +++ b/core/basic-authorship/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/cli/src/error.rs b/core/cli/src/error.rs index b9a036ce1c..e368cc6d96 100644 --- a/core/cli/src/error.rs +++ b/core/cli/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/cli/src/informant.rs b/core/cli/src/informant.rs index 6b65606bba..c0ab5c3dc7 100644 --- a/core/cli/src/informant.rs +++ b/core/cli/src/informant.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index 4fb0647cad..88d9b5728d 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index 26a9a00ebf..6f59434237 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/db/src/cache/list_cache.rs b/core/client/db/src/cache/list_cache.rs index f8e52e14c6..1e641534f9 100644 --- a/core/client/db/src/cache/list_cache.rs +++ b/core/client/db/src/cache/list_cache.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/db/src/cache/list_entry.rs b/core/client/db/src/cache/list_entry.rs index d2d88ab12f..237ae9a268 100644 --- a/core/client/db/src/cache/list_entry.rs +++ b/core/client/db/src/cache/list_entry.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/db/src/cache/list_storage.rs b/core/client/db/src/cache/list_storage.rs index b9bf99f67b..659a30507e 100644 --- a/core/client/db/src/cache/list_storage.rs +++ b/core/client/db/src/cache/list_storage.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/db/src/cache/mod.rs b/core/client/db/src/cache/mod.rs index 12f8c5e519..3d669e392d 100644 --- a/core/client/db/src/cache/mod.rs +++ b/core/client/db/src/cache/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/db/src/lib.rs b/core/client/db/src/lib.rs index 36ac3cc345..d276992f08 100644 --- a/core/client/db/src/lib.rs +++ b/core/client/db/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/db/src/light.rs b/core/client/db/src/light.rs index 8a3456df69..7162971b36 100644 --- a/core/client/db/src/light.rs +++ b/core/client/db/src/light.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/db/src/utils.rs b/core/client/db/src/utils.rs index 150c1fdd98..ce843a93a2 100644 --- a/core/client/db/src/utils.rs +++ b/core/client/db/src/utils.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/backend.rs b/core/client/src/backend.rs index 7b1136c929..a0975db888 100644 --- a/core/client/src/backend.rs +++ b/core/client/src/backend.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/block_builder/api.rs b/core/client/src/block_builder/api.rs index 9096b8f469..731f4c8632 100644 --- a/core/client/src/block_builder/api.rs +++ b/core/client/src/block_builder/api.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/block_builder/block_builder.rs b/core/client/src/block_builder/block_builder.rs index 1cc3e4c1a9..39969fc157 100644 --- a/core/client/src/block_builder/block_builder.rs +++ b/core/client/src/block_builder/block_builder.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/block_builder/mod.rs b/core/client/src/block_builder/mod.rs index f22f599ffd..7f617044a4 100644 --- a/core/client/src/block_builder/mod.rs +++ b/core/client/src/block_builder/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/blockchain.rs b/core/client/src/blockchain.rs index eb9ce1342e..a18c6e5d57 100644 --- a/core/client/src/blockchain.rs +++ b/core/client/src/blockchain.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/call_executor.rs b/core/client/src/call_executor.rs index 13ff478f3b..c787271874 100644 --- a/core/client/src/call_executor.rs +++ b/core/client/src/call_executor.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/cht.rs b/core/client/src/cht.rs index 59377b5325..d8e7ffbff3 100644 --- a/core/client/src/cht.rs +++ b/core/client/src/cht.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/client.rs b/core/client/src/client.rs index a170c7e202..23a6061e36 100644 --- a/core/client/src/client.rs +++ b/core/client/src/client.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/error.rs b/core/client/src/error.rs index bfc073f634..edc179ec6a 100644 --- a/core/client/src/error.rs +++ b/core/client/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/genesis.rs b/core/client/src/genesis.rs index a048433d39..77861a606d 100644 --- a/core/client/src/genesis.rs +++ b/core/client/src/genesis.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/in_mem.rs b/core/client/src/in_mem.rs index 6c90d9ae3e..fc95e9664b 100644 --- a/core/client/src/in_mem.rs +++ b/core/client/src/in_mem.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/leaves.rs b/core/client/src/leaves.rs index 28053cec44..cc906d59a4 100644 --- a/core/client/src/leaves.rs +++ b/core/client/src/leaves.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/lib.rs b/core/client/src/lib.rs index 25b863cda4..d2da243d14 100644 --- a/core/client/src/lib.rs +++ b/core/client/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/light/backend.rs b/core/client/src/light/backend.rs index 948db23d34..03d83c4e30 100644 --- a/core/client/src/light/backend.rs +++ b/core/client/src/light/backend.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/light/blockchain.rs b/core/client/src/light/blockchain.rs index 73d530ce45..973096ad0c 100644 --- a/core/client/src/light/blockchain.rs +++ b/core/client/src/light/blockchain.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/light/call_executor.rs b/core/client/src/light/call_executor.rs index c2857e07a0..5bc77112f8 100644 --- a/core/client/src/light/call_executor.rs +++ b/core/client/src/light/call_executor.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/light/fetcher.rs b/core/client/src/light/fetcher.rs index 1c1697eb34..f9b28da054 100644 --- a/core/client/src/light/fetcher.rs +++ b/core/client/src/light/fetcher.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/light/mod.rs b/core/client/src/light/mod.rs index f847d22a0e..2cdcaf4990 100644 --- a/core/client/src/light/mod.rs +++ b/core/client/src/light/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/notifications.rs b/core/client/src/notifications.rs index dae0ad2599..139238f343 100644 --- a/core/client/src/notifications.rs +++ b/core/client/src/notifications.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/client/src/runtime_api.rs b/core/client/src/runtime_api.rs index 024816246d..435a7d70e6 100644 --- a/core/client/src/runtime_api.rs +++ b/core/client/src/runtime_api.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/aura/primitives/src/lib.rs b/core/consensus/aura/primitives/src/lib.rs index 27f9a123bc..9401b164ce 100644 --- a/core/consensus/aura/primitives/src/lib.rs +++ b/core/consensus/aura/primitives/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/aura/src/lib.rs b/core/consensus/aura/src/lib.rs index 166066d53d..a2e1c3f871 100644 --- a/core/consensus/aura/src/lib.rs +++ b/core/consensus/aura/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/common/src/block_import.rs b/core/consensus/common/src/block_import.rs index 0c2b5330b4..01b3d24452 100644 --- a/core/consensus/common/src/block_import.rs +++ b/core/consensus/common/src/block_import.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/common/src/error.rs b/core/consensus/common/src/error.rs index 337bbeeea5..b4276a08b4 100644 --- a/core/consensus/common/src/error.rs +++ b/core/consensus/common/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/common/src/evaluation.rs b/core/consensus/common/src/evaluation.rs index c0fdcc45f1..48016b1e94 100644 --- a/core/consensus/common/src/evaluation.rs +++ b/core/consensus/common/src/evaluation.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/common/src/import_queue.rs b/core/consensus/common/src/import_queue.rs index dfacb2292f..08a25e566b 100644 --- a/core/consensus/common/src/import_queue.rs +++ b/core/consensus/common/src/import_queue.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/common/src/lib.rs b/core/consensus/common/src/lib.rs index fb777b837a..73315ed7aa 100644 --- a/core/consensus/common/src/lib.rs +++ b/core/consensus/common/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate Consensus Common. // Substrate Demo is free software: you can redistribute it and/or modify diff --git a/core/consensus/common/src/offline_tracker.rs b/core/consensus/common/src/offline_tracker.rs index 1ed923da2c..d9afb68416 100644 --- a/core/consensus/common/src/offline_tracker.rs +++ b/core/consensus/common/src/offline_tracker.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/rhd/src/error.rs b/core/consensus/rhd/src/error.rs index 7a97bbcace..3808110975 100644 --- a/core/consensus/rhd/src/error.rs +++ b/core/consensus/rhd/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/rhd/src/lib.rs b/core/consensus/rhd/src/lib.rs index a2a06fec90..65401c92a9 100644 --- a/core/consensus/rhd/src/lib.rs +++ b/core/consensus/rhd/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/rhd/src/misbehaviour_check.rs b/core/consensus/rhd/src/misbehaviour_check.rs index be8e25ccc9..a0c61bb4a6 100644 --- a/core/consensus/rhd/src/misbehaviour_check.rs +++ b/core/consensus/rhd/src/misbehaviour_check.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/consensus/rhd/src/service.rs b/core/consensus/rhd/src/service.rs index 34efc942d4..e2858f767a 100644 --- a/core/consensus/rhd/src/service.rs +++ b/core/consensus/rhd/src/service.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/executor/src/error.rs b/core/executor/src/error.rs index 98993519f4..b27ccf01bf 100644 --- a/core/executor/src/error.rs +++ b/core/executor/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/executor/src/lib.rs b/core/executor/src/lib.rs index 774850d5d1..fa7cc71eea 100644 --- a/core/executor/src/lib.rs +++ b/core/executor/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/executor/src/native_executor.rs b/core/executor/src/native_executor.rs index 4ee58e4493..0944cbdbbd 100644 --- a/core/executor/src/native_executor.rs +++ b/core/executor/src/native_executor.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/executor/src/sandbox.rs b/core/executor/src/sandbox.rs index aa7ecac712..cc21d762be 100644 --- a/core/executor/src/sandbox.rs +++ b/core/executor/src/sandbox.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/executor/src/wasm_executor.rs b/core/executor/src/wasm_executor.rs index 200403873f..044397ae3a 100644 --- a/core/executor/src/wasm_executor.rs +++ b/core/executor/src/wasm_executor.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/executor/src/wasm_utils.rs b/core/executor/src/wasm_utils.rs index 3102406514..4ad9541dbd 100644 --- a/core/executor/src/wasm_utils.rs +++ b/core/executor/src/wasm_utils.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/finality-grandpa/primitives/src/lib.rs b/core/finality-grandpa/primitives/src/lib.rs index 1069647f69..9c20483305 100644 --- a/core/finality-grandpa/primitives/src/lib.rs +++ b/core/finality-grandpa/primitives/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/finality-grandpa/src/authorities.rs b/core/finality-grandpa/src/authorities.rs index bb4992ef1d..cc35cca822 100644 --- a/core/finality-grandpa/src/authorities.rs +++ b/core/finality-grandpa/src/authorities.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/finality-grandpa/src/communication.rs b/core/finality-grandpa/src/communication.rs index 4f6024fb95..f392d3278b 100644 --- a/core/finality-grandpa/src/communication.rs +++ b/core/finality-grandpa/src/communication.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/finality-grandpa/src/finality_proof.rs b/core/finality-grandpa/src/finality_proof.rs index 14f011a10c..eef705c4ff 100644 --- a/core/finality-grandpa/src/finality_proof.rs +++ b/core/finality-grandpa/src/finality_proof.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/finality-grandpa/src/lib.rs b/core/finality-grandpa/src/lib.rs index a6b3df13fc..07f35ebc63 100644 --- a/core/finality-grandpa/src/lib.rs +++ b/core/finality-grandpa/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/finality-grandpa/src/service_integration.rs b/core/finality-grandpa/src/service_integration.rs index 1986c5c0a4..3eee1dd940 100644 --- a/core/finality-grandpa/src/service_integration.rs +++ b/core/finality-grandpa/src/service_integration.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/finality-grandpa/src/tests.rs b/core/finality-grandpa/src/tests.rs index 7fba9b654c..3eb7d55655 100644 --- a/core/finality-grandpa/src/tests.rs +++ b/core/finality-grandpa/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/finality-grandpa/src/until_imported.rs b/core/finality-grandpa/src/until_imported.rs index 3d68e8cd84..ceeb819ed0 100644 --- a/core/finality-grandpa/src/until_imported.rs +++ b/core/finality-grandpa/src/until_imported.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/keyring/src/ed25519.rs b/core/keyring/src/ed25519.rs index 267da3995c..49a073c086 100644 --- a/core/keyring/src/ed25519.rs +++ b/core/keyring/src/ed25519.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/keyring/src/lib.rs b/core/keyring/src/lib.rs index aa271d8189..faed637e03 100644 --- a/core/keyring/src/lib.rs +++ b/core/keyring/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/keyring/src/sr25519.rs b/core/keyring/src/sr25519.rs index 0142ab56f2..e638305593 100644 --- a/core/keyring/src/sr25519.rs +++ b/core/keyring/src/sr25519.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/keystore/src/lib.rs b/core/keystore/src/lib.rs index 98bddb7074..2b2380c7e2 100644 --- a/core/keystore/src/lib.rs +++ b/core/keystore/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network-libp2p/src/custom_proto/topology.rs b/core/network-libp2p/src/custom_proto/topology.rs index 14792e2f57..4e498c560c 100644 --- a/core/network-libp2p/src/custom_proto/topology.rs +++ b/core/network-libp2p/src/custom_proto/topology.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network-libp2p/src/custom_proto/upgrade.rs b/core/network-libp2p/src/custom_proto/upgrade.rs index 292993957d..b411096aa4 100644 --- a/core/network-libp2p/src/custom_proto/upgrade.rs +++ b/core/network-libp2p/src/custom_proto/upgrade.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network-libp2p/src/error.rs b/core/network-libp2p/src/error.rs index 5466ce2a26..b99c84d9ee 100644 --- a/core/network-libp2p/src/error.rs +++ b/core/network-libp2p/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2015-2018 Parity Technologies (UK) Ltd. +// Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network-libp2p/src/lib.rs b/core/network-libp2p/src/lib.rs index 695de93627..5d1f248451 100644 --- a/core/network-libp2p/src/lib.rs +++ b/core/network-libp2p/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network-libp2p/src/secret.rs b/core/network-libp2p/src/secret.rs index 17bd053955..f7a25d000c 100644 --- a/core/network-libp2p/src/secret.rs +++ b/core/network-libp2p/src/secret.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index 78d5879343..a9df000809 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network-libp2p/src/traits.rs b/core/network-libp2p/src/traits.rs index fc57a9aef3..63ccda54d1 100644 --- a/core/network-libp2p/src/traits.rs +++ b/core/network-libp2p/src/traits.rs @@ -1,4 +1,4 @@ -// Copyright 2015-2018 Parity Technologies (UK) Ltd. +// Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network-libp2p/src/transport.rs b/core/network-libp2p/src/transport.rs index c095602a11..de0639a7b5 100644 --- a/core/network-libp2p/src/transport.rs +++ b/core/network-libp2p/src/transport.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/blocks.rs b/core/network/src/blocks.rs index b0fadca7da..d1e71ca68e 100644 --- a/core/network/src/blocks.rs +++ b/core/network/src/blocks.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/chain.rs b/core/network/src/chain.rs index 51057df4dc..87c0dca9c1 100644 --- a/core/network/src/chain.rs +++ b/core/network/src/chain.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/config.rs b/core/network/src/config.rs index b7a8ede0ec..7dd4b52b31 100644 --- a/core/network/src/config.rs +++ b/core/network/src/config.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/consensus_gossip.rs b/core/network/src/consensus_gossip.rs index 8ed6f8ba58..d32003050a 100644 --- a/core/network/src/consensus_gossip.rs +++ b/core/network/src/consensus_gossip.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/error.rs b/core/network/src/error.rs index 36b2b90a5d..b71209f470 100644 --- a/core/network/src/error.rs +++ b/core/network/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/lib.rs b/core/network/src/lib.rs index 8e00a66e63..de4597d597 100644 --- a/core/network/src/lib.rs +++ b/core/network/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/message.rs b/core/network/src/message.rs index 98860cae88..355935b10e 100644 --- a/core/network/src/message.rs +++ b/core/network/src/message.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/on_demand.rs b/core/network/src/on_demand.rs index 6286869359..d012a1ef4d 100644 --- a/core/network/src/on_demand.rs +++ b/core/network/src/on_demand.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/protocol.rs b/core/network/src/protocol.rs index 7c6e973c69..c191c2d32f 100644 --- a/core/network/src/protocol.rs +++ b/core/network/src/protocol.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/service.rs b/core/network/src/service.rs index ac982f936e..c0085655e3 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/specialization.rs b/core/network/src/specialization.rs index 662dfdad75..3a772f1f3a 100644 --- a/core/network/src/specialization.rs +++ b/core/network/src/specialization.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/sync.rs b/core/network/src/sync.rs index abc215a597..2666c49823 100644 --- a/core/network/src/sync.rs +++ b/core/network/src/sync.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/test/block_import.rs b/core/network/src/test/block_import.rs index c8999419aa..bc25078caa 100644 --- a/core/network/src/test/block_import.rs +++ b/core/network/src/test/block_import.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/test/mod.rs b/core/network/src/test/mod.rs index c7d9484e2b..e2cfe04e66 100644 --- a/core/network/src/test/mod.rs +++ b/core/network/src/test/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/network/src/test/sync.rs b/core/network/src/test/sync.rs index d23b98496b..74cc30ed64 100644 --- a/core/network/src/test/sync.rs +++ b/core/network/src/test/sync.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/panic-handler/src/lib.rs b/core/panic-handler/src/lib.rs index 91f7c0af97..b2fd7238e0 100644 --- a/core/panic-handler/src/lib.rs +++ b/core/panic-handler/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/authority_id.rs b/core/primitives/src/authority_id.rs index 5f2c84fd06..e1b97fbc5b 100644 --- a/core/primitives/src/authority_id.rs +++ b/core/primitives/src/authority_id.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/changes_trie.rs b/core/primitives/src/changes_trie.rs index f06bf49a8e..c8776a6f08 100644 --- a/core/primitives/src/changes_trie.rs +++ b/core/primitives/src/changes_trie.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/ed25519.rs b/core/primitives/src/ed25519.rs index dcf95b21e6..9b85600962 100644 --- a/core/primitives/src/ed25519.rs +++ b/core/primitives/src/ed25519.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/hash.rs b/core/primitives/src/hash.rs index e4ebbe4b1e..f3e3583be5 100644 --- a/core/primitives/src/hash.rs +++ b/core/primitives/src/hash.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/hasher.rs b/core/primitives/src/hasher.rs index 7c540039ec..4562180a1a 100644 --- a/core/primitives/src/hasher.rs +++ b/core/primitives/src/hasher.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/hashing.rs b/core/primitives/src/hashing.rs index 1a14952978..814048fea8 100644 --- a/core/primitives/src/hashing.rs +++ b/core/primitives/src/hashing.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/hexdisplay.rs b/core/primitives/src/hexdisplay.rs index b202fdf2e3..d748208d0e 100644 --- a/core/primitives/src/hexdisplay.rs +++ b/core/primitives/src/hexdisplay.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/lib.rs b/core/primitives/src/lib.rs index 3eff7059f4..fc3867a788 100644 --- a/core/primitives/src/lib.rs +++ b/core/primitives/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/sandbox.rs b/core/primitives/src/sandbox.rs index 01bfd4143d..c8404c9eed 100644 --- a/core/primitives/src/sandbox.rs +++ b/core/primitives/src/sandbox.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/sr25519.rs b/core/primitives/src/sr25519.rs index 729b8790f9..a0b00de3b5 100644 --- a/core/primitives/src/sr25519.rs +++ b/core/primitives/src/sr25519.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/storage.rs b/core/primitives/src/storage.rs index 36639fd882..79652a8d4c 100644 --- a/core/primitives/src/storage.rs +++ b/core/primitives/src/storage.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/tests.rs b/core/primitives/src/tests.rs index 2205e4ac7a..2dbaed2b0f 100644 --- a/core/primitives/src/tests.rs +++ b/core/primitives/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/u32_trait.rs b/core/primitives/src/u32_trait.rs index 88ee6bf29b..3fcdceac4c 100644 --- a/core/primitives/src/u32_trait.rs +++ b/core/primitives/src/u32_trait.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/primitives/src/uint.rs b/core/primitives/src/uint.rs index 866d21c8a3..dfea51921d 100644 --- a/core/primitives/src/uint.rs +++ b/core/primitives/src/uint.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc-servers/src/lib.rs b/core/rpc-servers/src/lib.rs index 7497fa3906..939b2b93aa 100644 --- a/core/rpc-servers/src/lib.rs +++ b/core/rpc-servers/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/author/error.rs b/core/rpc/src/author/error.rs index 5024aba5ff..e1a6f4a22d 100644 --- a/core/rpc/src/author/error.rs +++ b/core/rpc/src/author/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/author/mod.rs b/core/rpc/src/author/mod.rs index e9e527f9cb..acd500ba0b 100644 --- a/core/rpc/src/author/mod.rs +++ b/core/rpc/src/author/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/author/tests.rs b/core/rpc/src/author/tests.rs index b71a20f38d..dfdae48311 100644 --- a/core/rpc/src/author/tests.rs +++ b/core/rpc/src/author/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/chain/error.rs b/core/rpc/src/chain/error.rs index 4fd098ca72..c52d44eddc 100644 --- a/core/rpc/src/chain/error.rs +++ b/core/rpc/src/chain/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/chain/mod.rs b/core/rpc/src/chain/mod.rs index 885159231b..9b7f5a909e 100644 --- a/core/rpc/src/chain/mod.rs +++ b/core/rpc/src/chain/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/chain/tests.rs b/core/rpc/src/chain/tests.rs index becc57f2a9..bad3c5aeb8 100644 --- a/core/rpc/src/chain/tests.rs +++ b/core/rpc/src/chain/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/errors.rs b/core/rpc/src/errors.rs index 9a4928440d..a709013ad2 100644 --- a/core/rpc/src/errors.rs +++ b/core/rpc/src/errors.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/helpers.rs b/core/rpc/src/helpers.rs index b9c665191d..e579c743ac 100644 --- a/core/rpc/src/helpers.rs +++ b/core/rpc/src/helpers.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/lib.rs b/core/rpc/src/lib.rs index d9e9b18146..6488ea5f49 100644 --- a/core/rpc/src/lib.rs +++ b/core/rpc/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/metadata.rs b/core/rpc/src/metadata.rs index 728abe1de7..e6af4ef94b 100644 --- a/core/rpc/src/metadata.rs +++ b/core/rpc/src/metadata.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/state/error.rs b/core/rpc/src/state/error.rs index 6cbe7eba96..bd85664099 100644 --- a/core/rpc/src/state/error.rs +++ b/core/rpc/src/state/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/state/mod.rs b/core/rpc/src/state/mod.rs index 4e51151e50..c2e5f885c9 100644 --- a/core/rpc/src/state/mod.rs +++ b/core/rpc/src/state/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/state/tests.rs b/core/rpc/src/state/tests.rs index 354ef0ed28..510f4235a7 100644 --- a/core/rpc/src/state/tests.rs +++ b/core/rpc/src/state/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/subscriptions.rs b/core/rpc/src/subscriptions.rs index 5e9f6c5cac..500f3dac45 100644 --- a/core/rpc/src/subscriptions.rs +++ b/core/rpc/src/subscriptions.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/system/error.rs b/core/rpc/src/system/error.rs index 04890b0587..d3c7e8b333 100644 --- a/core/rpc/src/system/error.rs +++ b/core/rpc/src/system/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/system/helpers.rs b/core/rpc/src/system/helpers.rs index ba4d9c8f16..ea35b8803c 100644 --- a/core/rpc/src/system/helpers.rs +++ b/core/rpc/src/system/helpers.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/system/mod.rs b/core/rpc/src/system/mod.rs index 6819d23593..b0fc4e5679 100644 --- a/core/rpc/src/system/mod.rs +++ b/core/rpc/src/system/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/rpc/src/system/tests.rs b/core/rpc/src/system/tests.rs index 319b5bb85a..6aee5c3fa2 100644 --- a/core/rpc/src/system/tests.rs +++ b/core/rpc/src/system/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/serializer/src/lib.rs b/core/serializer/src/lib.rs index a357d5ad2b..2586d49f00 100644 --- a/core/serializer/src/lib.rs +++ b/core/serializer/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/service/src/chain_ops.rs b/core/service/src/chain_ops.rs index 487c7ac0a6..36cbee9039 100644 --- a/core/service/src/chain_ops.rs +++ b/core/service/src/chain_ops.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/service/src/chain_spec.rs b/core/service/src/chain_spec.rs index 8e231f4029..ffd66b19a8 100644 --- a/core/service/src/chain_spec.rs +++ b/core/service/src/chain_spec.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/service/src/components.rs b/core/service/src/components.rs index 44793c69f2..8786306fa2 100644 --- a/core/service/src/components.rs +++ b/core/service/src/components.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/service/src/config.rs b/core/service/src/config.rs index 9883996eac..d61f5a2384 100644 --- a/core/service/src/config.rs +++ b/core/service/src/config.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/service/src/error.rs b/core/service/src/error.rs index af5ddf2973..4832efb2ab 100644 --- a/core/service/src/error.rs +++ b/core/service/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/service/src/lib.rs b/core/service/src/lib.rs index fae4b1b2de..45127cd436 100644 --- a/core/service/src/lib.rs +++ b/core/service/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/service/test/src/lib.rs b/core/service/test/src/lib.rs index 26ba01697c..3a3c4515f7 100644 --- a/core/service/test/src/lib.rs +++ b/core/service/test/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-api-macros/src/compile_fail_tests.rs b/core/sr-api-macros/src/compile_fail_tests.rs index 4f92e54128..e562f8b2fe 100644 --- a/core/sr-api-macros/src/compile_fail_tests.rs +++ b/core/sr-api-macros/src/compile_fail_tests.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-api-macros/src/decl_runtime_apis.rs b/core/sr-api-macros/src/decl_runtime_apis.rs index b320f4e06d..f684a9e1ed 100644 --- a/core/sr-api-macros/src/decl_runtime_apis.rs +++ b/core/sr-api-macros/src/decl_runtime_apis.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-api-macros/src/impl_runtime_apis.rs b/core/sr-api-macros/src/impl_runtime_apis.rs index c6fb28b802..41a443da59 100644 --- a/core/sr-api-macros/src/impl_runtime_apis.rs +++ b/core/sr-api-macros/src/impl_runtime_apis.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-api-macros/src/lib.rs b/core/sr-api-macros/src/lib.rs index 7c042eef25..9df0b0b8af 100644 --- a/core/sr-api-macros/src/lib.rs +++ b/core/sr-api-macros/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-api-macros/src/utils.rs b/core/sr-api-macros/src/utils.rs index fd9964b59f..4ad8b99840 100644 --- a/core/sr-api-macros/src/utils.rs +++ b/core/sr-api-macros/src/utils.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-io/src/lib.rs b/core/sr-io/src/lib.rs index aa446f74a5..6a00e6ca27 100644 --- a/core/sr-io/src/lib.rs +++ b/core/sr-io/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-io/with_std.rs b/core/sr-io/with_std.rs index f7db1825d3..3667866398 100644 --- a/core/sr-io/with_std.rs +++ b/core/sr-io/with_std.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-io/without_std.rs b/core/sr-io/without_std.rs index 5687812830..7763ddf04a 100644 --- a/core/sr-io/without_std.rs +++ b/core/sr-io/without_std.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/block.rs b/core/sr-primitives/src/generic/block.rs index 1e6255c681..5fb83a2a4f 100644 --- a/core/sr-primitives/src/generic/block.rs +++ b/core/sr-primitives/src/generic/block.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/checked_extrinsic.rs b/core/sr-primitives/src/generic/checked_extrinsic.rs index 4cf61e37e4..c0548c26e5 100644 --- a/core/sr-primitives/src/generic/checked_extrinsic.rs +++ b/core/sr-primitives/src/generic/checked_extrinsic.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/digest.rs b/core/sr-primitives/src/generic/digest.rs index 243cf05164..95d243b97d 100644 --- a/core/sr-primitives/src/generic/digest.rs +++ b/core/sr-primitives/src/generic/digest.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/era.rs b/core/sr-primitives/src/generic/era.rs index 9d2fe13793..037013b4fe 100644 --- a/core/sr-primitives/src/generic/era.rs +++ b/core/sr-primitives/src/generic/era.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/header.rs b/core/sr-primitives/src/generic/header.rs index 91646e32a4..60ccd93b3d 100644 --- a/core/sr-primitives/src/generic/header.rs +++ b/core/sr-primitives/src/generic/header.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/mod.rs b/core/sr-primitives/src/generic/mod.rs index 3c21a8232c..47ce3cb251 100644 --- a/core/sr-primitives/src/generic/mod.rs +++ b/core/sr-primitives/src/generic/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/tests.rs b/core/sr-primitives/src/generic/tests.rs index 781f3f6329..5d58bd6c33 100644 --- a/core/sr-primitives/src/generic/tests.rs +++ b/core/sr-primitives/src/generic/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/unchecked_extrinsic.rs b/core/sr-primitives/src/generic/unchecked_extrinsic.rs index a0800fe502..d6e0d60e2c 100644 --- a/core/sr-primitives/src/generic/unchecked_extrinsic.rs +++ b/core/sr-primitives/src/generic/unchecked_extrinsic.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/unchecked_mortal_compact_extrinsic.rs b/core/sr-primitives/src/generic/unchecked_mortal_compact_extrinsic.rs index 9c74995d0a..243747092c 100644 --- a/core/sr-primitives/src/generic/unchecked_mortal_compact_extrinsic.rs +++ b/core/sr-primitives/src/generic/unchecked_mortal_compact_extrinsic.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/generic/unchecked_mortal_extrinsic.rs b/core/sr-primitives/src/generic/unchecked_mortal_extrinsic.rs index e7d104a1da..93eeb55884 100644 --- a/core/sr-primitives/src/generic/unchecked_mortal_extrinsic.rs +++ b/core/sr-primitives/src/generic/unchecked_mortal_extrinsic.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index b2491c57a1..618a4b969f 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/testing.rs b/core/sr-primitives/src/testing.rs index a1c05aa7d7..96a10363aa 100644 --- a/core/sr-primitives/src/testing.rs +++ b/core/sr-primitives/src/testing.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/traits.rs b/core/sr-primitives/src/traits.rs index 4ff1ad3115..b05f1a38da 100644 --- a/core/sr-primitives/src/traits.rs +++ b/core/sr-primitives/src/traits.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-primitives/src/transaction_validity.rs b/core/sr-primitives/src/transaction_validity.rs index 8cdd419278..7cf3aa1d6d 100644 --- a/core/sr-primitives/src/transaction_validity.rs +++ b/core/sr-primitives/src/transaction_validity.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-sandbox/src/lib.rs b/core/sr-sandbox/src/lib.rs index 8054e44ba9..9130b0544d 100755 --- a/core/sr-sandbox/src/lib.rs +++ b/core/sr-sandbox/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-sandbox/with_std.rs b/core/sr-sandbox/with_std.rs index 038ecc023c..ea7ce81835 100755 --- a/core/sr-sandbox/with_std.rs +++ b/core/sr-sandbox/with_std.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-sandbox/without_std.rs b/core/sr-sandbox/without_std.rs index d75168f1b0..070ca1ddf1 100755 --- a/core/sr-sandbox/without_std.rs +++ b/core/sr-sandbox/without_std.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-std/src/lib.rs b/core/sr-std/src/lib.rs index c00f267038..45857b33ed 100644 --- a/core/sr-std/src/lib.rs +++ b/core/sr-std/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-std/with_std.rs b/core/sr-std/with_std.rs index 7a718dfd27..27df71c409 100644 --- a/core/sr-std/with_std.rs +++ b/core/sr-std/with_std.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-std/without_std.rs b/core/sr-std/without_std.rs index d5065648e9..c517885484 100644 --- a/core/sr-std/without_std.rs +++ b/core/sr-std/without_std.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/sr-version/src/lib.rs b/core/sr-version/src/lib.rs index 67c151cbeb..71a4c5149d 100644 --- a/core/sr-version/src/lib.rs +++ b/core/sr-version/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-db/src/lib.rs b/core/state-db/src/lib.rs index a9df4e80ca..4cb10e768d 100644 --- a/core/state-db/src/lib.rs +++ b/core/state-db/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-db/src/noncanonical.rs b/core/state-db/src/noncanonical.rs index c11fcd74c3..da957335ba 100644 --- a/core/state-db/src/noncanonical.rs +++ b/core/state-db/src/noncanonical.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-db/src/pruning.rs b/core/state-db/src/pruning.rs index 95af8c553f..c2e40abe41 100644 --- a/core/state-db/src/pruning.rs +++ b/core/state-db/src/pruning.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-db/src/test.rs b/core/state-db/src/test.rs index 871750d0c8..cec5935142 100644 --- a/core/state-db/src/test.rs +++ b/core/state-db/src/test.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/backend.rs b/core/state-machine/src/backend.rs index 29562f1d26..0acbf27857 100644 --- a/core/state-machine/src/backend.rs +++ b/core/state-machine/src/backend.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/basic.rs b/core/state-machine/src/basic.rs index cb9f5d33d0..ead191a3c0 100644 --- a/core/state-machine/src/basic.rs +++ b/core/state-machine/src/basic.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/changes_trie/build.rs b/core/state-machine/src/changes_trie/build.rs index 548ffa4299..9cb766874d 100644 --- a/core/state-machine/src/changes_trie/build.rs +++ b/core/state-machine/src/changes_trie/build.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/changes_trie/build_iterator.rs b/core/state-machine/src/changes_trie/build_iterator.rs index 4097da3a54..f9c6ba6e7b 100644 --- a/core/state-machine/src/changes_trie/build_iterator.rs +++ b/core/state-machine/src/changes_trie/build_iterator.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/changes_trie/changes_iterator.rs b/core/state-machine/src/changes_trie/changes_iterator.rs index 5805427870..f524b0799c 100644 --- a/core/state-machine/src/changes_trie/changes_iterator.rs +++ b/core/state-machine/src/changes_trie/changes_iterator.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/changes_trie/input.rs b/core/state-machine/src/changes_trie/input.rs index c106774021..3154aff715 100644 --- a/core/state-machine/src/changes_trie/input.rs +++ b/core/state-machine/src/changes_trie/input.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/changes_trie/mod.rs b/core/state-machine/src/changes_trie/mod.rs index 2bde6a2592..0119c3ca31 100644 --- a/core/state-machine/src/changes_trie/mod.rs +++ b/core/state-machine/src/changes_trie/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/changes_trie/prune.rs b/core/state-machine/src/changes_trie/prune.rs index 74bf0c97bf..de872a3255 100644 --- a/core/state-machine/src/changes_trie/prune.rs +++ b/core/state-machine/src/changes_trie/prune.rs @@ -1,4 +1,4 @@ -// Copyright 2017 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/changes_trie/storage.rs b/core/state-machine/src/changes_trie/storage.rs index 2ac00a8535..4eb8db0de9 100644 --- a/core/state-machine/src/changes_trie/storage.rs +++ b/core/state-machine/src/changes_trie/storage.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/ext.rs b/core/state-machine/src/ext.rs index e0f164b42b..2eb63f9f35 100644 --- a/core/state-machine/src/ext.rs +++ b/core/state-machine/src/ext.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/lib.rs b/core/state-machine/src/lib.rs index 6ba376d046..ede2bf40b0 100644 --- a/core/state-machine/src/lib.rs +++ b/core/state-machine/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/overlayed_changes.rs b/core/state-machine/src/overlayed_changes.rs index 2f7522c48e..865ee86105 100644 --- a/core/state-machine/src/overlayed_changes.rs +++ b/core/state-machine/src/overlayed_changes.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/proving_backend.rs b/core/state-machine/src/proving_backend.rs index 1aeb83fe3a..81d68352c8 100644 --- a/core/state-machine/src/proving_backend.rs +++ b/core/state-machine/src/proving_backend.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/testing.rs b/core/state-machine/src/testing.rs index a0448dad7c..216b3ebdc2 100644 --- a/core/state-machine/src/testing.rs +++ b/core/state-machine/src/testing.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/trie_backend.rs b/core/state-machine/src/trie_backend.rs index 989b990d93..5de6c8837b 100644 --- a/core/state-machine/src/trie_backend.rs +++ b/core/state-machine/src/trie_backend.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/state-machine/src/trie_backend_essence.rs b/core/state-machine/src/trie_backend_essence.rs index 5a2fc8d76d..b429e7aa04 100644 --- a/core/state-machine/src/trie_backend_essence.rs +++ b/core/state-machine/src/trie_backend_essence.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/telemetry/src/lib.rs b/core/telemetry/src/lib.rs index 37bb8c1a8e..21289459c6 100644 --- a/core/telemetry/src/lib.rs +++ b/core/telemetry/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/test-client/src/block_builder_ext.rs b/core/test-client/src/block_builder_ext.rs index 68f4371d3e..17a96cfa27 100644 --- a/core/test-client/src/block_builder_ext.rs +++ b/core/test-client/src/block_builder_ext.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/test-client/src/client_ext.rs b/core/test-client/src/client_ext.rs index f766f427cd..511b55ff62 100644 --- a/core/test-client/src/client_ext.rs +++ b/core/test-client/src/client_ext.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/test-client/src/lib.rs b/core/test-client/src/lib.rs index bd2d3a298a..34a17d3301 100644 --- a/core/test-client/src/lib.rs +++ b/core/test-client/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/test-client/src/trait_tests.rs b/core/test-client/src/trait_tests.rs index 8242f30d2e..b678d83fdb 100644 --- a/core/test-client/src/trait_tests.rs +++ b/core/test-client/src/trait_tests.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/test-runtime/src/genesismap.rs b/core/test-runtime/src/genesismap.rs index e49f1a22b6..ae55a0c08c 100644 --- a/core/test-runtime/src/genesismap.rs +++ b/core/test-runtime/src/genesismap.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/test-runtime/src/lib.rs b/core/test-runtime/src/lib.rs index 1aa172fd60..59b56e3e0f 100644 --- a/core/test-runtime/src/lib.rs +++ b/core/test-runtime/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/test-runtime/src/system.rs b/core/test-runtime/src/system.rs index 110666a6e0..bfa5de70d0 100644 --- a/core/test-runtime/src/system.rs +++ b/core/test-runtime/src/system.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/test-runtime/wasm/src/lib.rs b/core/test-runtime/wasm/src/lib.rs index fd89232f15..6620f276d0 100644 --- a/core/test-runtime/wasm/src/lib.rs +++ b/core/test-runtime/wasm/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/base_pool.rs b/core/transaction-pool/graph/src/base_pool.rs index e2d21de214..5a1bee00f3 100644 --- a/core/transaction-pool/graph/src/base_pool.rs +++ b/core/transaction-pool/graph/src/base_pool.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/error.rs b/core/transaction-pool/graph/src/error.rs index ca2ecb662e..435ca922cd 100644 --- a/core/transaction-pool/graph/src/error.rs +++ b/core/transaction-pool/graph/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/future.rs b/core/transaction-pool/graph/src/future.rs index 8e7e819f0d..bf25ed90df 100644 --- a/core/transaction-pool/graph/src/future.rs +++ b/core/transaction-pool/graph/src/future.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/lib.rs b/core/transaction-pool/graph/src/lib.rs index d30032830c..ea890a5cd0 100644 --- a/core/transaction-pool/graph/src/lib.rs +++ b/core/transaction-pool/graph/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/listener.rs b/core/transaction-pool/graph/src/listener.rs index e2dfaef915..ac59b4c57e 100644 --- a/core/transaction-pool/graph/src/listener.rs +++ b/core/transaction-pool/graph/src/listener.rs @@ -1,5 +1,5 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/pool.rs b/core/transaction-pool/graph/src/pool.rs index f705385f94..202e9c752a 100644 --- a/core/transaction-pool/graph/src/pool.rs +++ b/core/transaction-pool/graph/src/pool.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/ready.rs b/core/transaction-pool/graph/src/ready.rs index faca722d12..5a9ea11e50 100644 --- a/core/transaction-pool/graph/src/ready.rs +++ b/core/transaction-pool/graph/src/ready.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/rotator.rs b/core/transaction-pool/graph/src/rotator.rs index eed7e62893..2ca51ef74e 100644 --- a/core/transaction-pool/graph/src/rotator.rs +++ b/core/transaction-pool/graph/src/rotator.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/graph/src/watcher.rs b/core/transaction-pool/graph/src/watcher.rs index bb73a4b0e9..419a98ca79 100644 --- a/core/transaction-pool/graph/src/watcher.rs +++ b/core/transaction-pool/graph/src/watcher.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/src/api.rs b/core/transaction-pool/src/api.rs index dd8cb95c7d..84475376fe 100644 --- a/core/transaction-pool/src/api.rs +++ b/core/transaction-pool/src/api.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/src/error.rs b/core/transaction-pool/src/error.rs index 9f191b8545..e1223c537d 100644 --- a/core/transaction-pool/src/error.rs +++ b/core/transaction-pool/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/src/lib.rs b/core/transaction-pool/src/lib.rs index ee9d8d8cbb..1899c601b2 100644 --- a/core/transaction-pool/src/lib.rs +++ b/core/transaction-pool/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/transaction-pool/src/tests.rs b/core/transaction-pool/src/tests.rs index 770f00fa64..e7a0f03339 100644 --- a/core/transaction-pool/src/tests.rs +++ b/core/transaction-pool/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/core/trie/benches/bench.rs b/core/trie/benches/bench.rs index f4100bff15..179dc6aaf8 100644 --- a/core/trie/benches/bench.rs +++ b/core/trie/benches/bench.rs @@ -1,4 +1,4 @@ -// Copyright 2015-2018 Parity Technologies (UK) Ltd. +// Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Parity is free software: you can redistribute it and/or modify diff --git a/core/trie/src/lib.rs b/core/trie/src/lib.rs index cb76600370..071f49d875 100644 --- a/core/trie/src/lib.rs +++ b/core/trie/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2015-2018 Parity Technologies (UK) Ltd. +// Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Parity is free software: you can redistribute it and/or modify diff --git a/core/trie/src/node_codec.rs b/core/trie/src/node_codec.rs index 438b406009..b73519e87f 100644 --- a/core/trie/src/node_codec.rs +++ b/core/trie/src/node_codec.rs @@ -1,4 +1,4 @@ -// Copyright 2015-2018 Parity Technologies (UK) Ltd. +// Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Parity is free software: you can redistribute it and/or modify diff --git a/core/trie/src/node_header.rs b/core/trie/src/node_header.rs index 6324a6e353..4f7617c068 100644 --- a/core/trie/src/node_header.rs +++ b/core/trie/src/node_header.rs @@ -1,4 +1,4 @@ -// Copyright 2015-2018 Parity Technologies (UK) Ltd. +// Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Parity is free software: you can redistribute it and/or modify diff --git a/core/trie/src/trie_stream.rs b/core/trie/src/trie_stream.rs index 5f1bf1c9d9..e97516103d 100644 --- a/core/trie/src/trie_stream.rs +++ b/core/trie/src/trie_stream.rs @@ -1,4 +1,4 @@ -// Copyright 2015-2018 Parity Technologies (UK) Ltd. +// Copyright 2015-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Parity is free software: you can redistribute it and/or modify diff --git a/license_header.txt b/license_header.txt index c357cc10ed..15b7786607 100644 --- a/license_header.txt +++ b/license_header.txt @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/cli/build.rs b/node/cli/build.rs index 6eab113bab..e7a7b271f1 100644 --- a/node/cli/build.rs +++ b/node/cli/build.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index 85d26702b8..b97ac10290 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/cli/src/error.rs b/node/cli/src/error.rs index eba18eacdf..dd5448ac8a 100644 --- a/node/cli/src/error.rs +++ b/node/cli/src/error.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/cli/src/lib.rs b/node/cli/src/lib.rs index 5586a9b191..1b103b7bfc 100644 --- a/node/cli/src/lib.rs +++ b/node/cli/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index 9b1139f838..1c865956f9 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/executor/src/lib.rs b/node/executor/src/lib.rs index 8b67e98834..5300ad565e 100644 --- a/node/executor/src/lib.rs +++ b/node/executor/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/primitives/src/lib.rs b/node/primitives/src/lib.rs index 4c72239e6d..a73209a9ab 100644 --- a/node/primitives/src/lib.rs +++ b/node/primitives/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 16ace6f280..51969c48d0 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/runtime/wasm/src/lib.rs b/node/runtime/wasm/src/lib.rs index 7364f0a4db..a87b3f7c79 100644 --- a/node/runtime/wasm/src/lib.rs +++ b/node/runtime/wasm/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/node/src/main.rs b/node/src/main.rs index 2df55bb852..5ff0d7ff3b 100644 --- a/node/src/main.rs +++ b/node/src/main.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/assets/src/lib.rs b/srml/assets/src/lib.rs index ad78dd5085..14dba1d198 100644 --- a/srml/assets/src/lib.rs +++ b/srml/assets/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/aura/src/lib.rs b/srml/aura/src/lib.rs index 26cfaf4299..553bebec75 100644 --- a/srml/aura/src/lib.rs +++ b/srml/aura/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/aura/src/mock.rs b/srml/aura/src/mock.rs index 04b5d35efe..6a0afb6469 100644 --- a/srml/aura/src/mock.rs +++ b/srml/aura/src/mock.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/aura/src/tests.rs b/srml/aura/src/tests.rs index 91f0225925..98b57a1251 100644 --- a/srml/aura/src/tests.rs +++ b/srml/aura/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index 2fe797de2d..c9b62998fc 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/balances/src/mock.rs b/srml/balances/src/mock.rs index 85ae7a131e..55403a12aa 100644 --- a/srml/balances/src/mock.rs +++ b/srml/balances/src/mock.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/balances/src/tests.rs b/srml/balances/src/tests.rs index 1aa76a62c7..7fded7068a 100644 --- a/srml/balances/src/tests.rs +++ b/srml/balances/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/consensus/src/lib.rs b/srml/consensus/src/lib.rs index a99a370642..32d2a7b141 100644 --- a/srml/consensus/src/lib.rs +++ b/srml/consensus/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/consensus/src/mock.rs b/srml/consensus/src/mock.rs index 0cdf4ef2c6..490c1ca078 100644 --- a/srml/consensus/src/mock.rs +++ b/srml/consensus/src/mock.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/consensus/src/tests.rs b/srml/consensus/src/tests.rs index d883a897f1..23babba1d2 100644 --- a/srml/consensus/src/tests.rs +++ b/srml/consensus/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/account_db.rs b/srml/contract/src/account_db.rs index 17249f7db3..52fd80a8a2 100644 --- a/srml/contract/src/account_db.rs +++ b/srml/contract/src/account_db.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/exec.rs b/srml/contract/src/exec.rs index 615fdc51e2..0dbe8b3260 100644 --- a/srml/contract/src/exec.rs +++ b/srml/contract/src/exec.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/gas.rs b/srml/contract/src/gas.rs index 0c9b422a67..fb96ff66e5 100644 --- a/srml/contract/src/gas.rs +++ b/srml/contract/src/gas.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/lib.rs b/srml/contract/src/lib.rs index 0fa88400e6..8de372ffe8 100644 --- a/srml/contract/src/lib.rs +++ b/srml/contract/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/tests.rs b/srml/contract/src/tests.rs index 7a7137c675..cf280c0f00 100644 --- a/srml/contract/src/tests.rs +++ b/srml/contract/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/wasm/code_cache.rs b/srml/contract/src/wasm/code_cache.rs index 195da15745..dab8c4bfa4 100644 --- a/srml/contract/src/wasm/code_cache.rs +++ b/srml/contract/src/wasm/code_cache.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/wasm/env_def/macros.rs b/srml/contract/src/wasm/env_def/macros.rs index 27485d55ce..0b112a8258 100644 --- a/srml/contract/src/wasm/env_def/macros.rs +++ b/srml/contract/src/wasm/env_def/macros.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/wasm/env_def/mod.rs b/srml/contract/src/wasm/env_def/mod.rs index 65e9e14e67..d51a157910 100644 --- a/srml/contract/src/wasm/env_def/mod.rs +++ b/srml/contract/src/wasm/env_def/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/wasm/mod.rs b/srml/contract/src/wasm/mod.rs index 4b4df900ac..c617725c51 100644 --- a/srml/contract/src/wasm/mod.rs +++ b/srml/contract/src/wasm/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/wasm/prepare.rs b/srml/contract/src/wasm/prepare.rs index 12f4c7d283..52f1580aa9 100644 --- a/srml/contract/src/wasm/prepare.rs +++ b/srml/contract/src/wasm/prepare.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/contract/src/wasm/runtime.rs b/srml/contract/src/wasm/runtime.rs index 9f515ee84e..83f14cdfd7 100644 --- a/srml/contract/src/wasm/runtime.rs +++ b/srml/contract/src/wasm/runtime.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/council/src/lib.rs b/srml/council/src/lib.rs index 5f5709656d..de64b8c55c 100644 --- a/srml/council/src/lib.rs +++ b/srml/council/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/council/src/motions.rs b/srml/council/src/motions.rs index a2636c728a..7d9783fd33 100644 --- a/srml/council/src/motions.rs +++ b/srml/council/src/motions.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/council/src/seats.rs b/srml/council/src/seats.rs index 27a22bbf47..c3ce3ad1b1 100644 --- a/srml/council/src/seats.rs +++ b/srml/council/src/seats.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/council/src/voting.rs b/srml/council/src/voting.rs index 29168c1617..c365ea8021 100644 --- a/srml/council/src/voting.rs +++ b/srml/council/src/voting.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/democracy/src/lib.rs b/srml/democracy/src/lib.rs index 1c06a43ff9..fb2ee27668 100644 --- a/srml/democracy/src/lib.rs +++ b/srml/democracy/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/democracy/src/vote_threshold.rs b/srml/democracy/src/vote_threshold.rs index 2166b8dd06..d436757539 100644 --- a/srml/democracy/src/vote_threshold.rs +++ b/srml/democracy/src/vote_threshold.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/example/src/lib.rs b/srml/example/src/lib.rs index 8ab4513296..e6f3cf9264 100644 --- a/srml/example/src/lib.rs +++ b/srml/example/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/executive/src/lib.rs b/srml/executive/src/lib.rs index 567c157f1e..d00c2693ff 100644 --- a/srml/executive/src/lib.rs +++ b/srml/executive/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/grandpa/src/lib.rs b/srml/grandpa/src/lib.rs index f06c84e235..37d2da66c0 100644 --- a/srml/grandpa/src/lib.rs +++ b/srml/grandpa/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/grandpa/src/mock.rs b/srml/grandpa/src/mock.rs index ca5744b19b..7c35141e17 100644 --- a/srml/grandpa/src/mock.rs +++ b/srml/grandpa/src/mock.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/grandpa/src/tests.rs b/srml/grandpa/src/tests.rs index f7e08a20b3..433602342f 100644 --- a/srml/grandpa/src/tests.rs +++ b/srml/grandpa/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/indices/src/address.rs b/srml/indices/src/address.rs index 5e313883e0..fd8f0249de 100644 --- a/srml/indices/src/address.rs +++ b/srml/indices/src/address.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/indices/src/lib.rs b/srml/indices/src/lib.rs index fc9f6a66dd..76261796c8 100644 --- a/srml/indices/src/lib.rs +++ b/srml/indices/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/indices/src/mock.rs b/srml/indices/src/mock.rs index 0123bc7fc8..80d3fa2c4f 100644 --- a/srml/indices/src/mock.rs +++ b/srml/indices/src/mock.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/indices/src/tests.rs b/srml/indices/src/tests.rs index 965f155f29..7b60e30527 100644 --- a/srml/indices/src/tests.rs +++ b/srml/indices/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/metadata/src/lib.rs b/srml/metadata/src/lib.rs index f47843c871..ec47b6ccc6 100644 --- a/srml/metadata/src/lib.rs +++ b/srml/metadata/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/session/src/lib.rs b/srml/session/src/lib.rs index 63188d5bf6..8530e5bed6 100644 --- a/srml/session/src/lib.rs +++ b/srml/session/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index fb2076af81..b96cb8bbf6 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/staking/src/mock.rs b/srml/staking/src/mock.rs index 3ac827ecf8..529c8b625f 100644 --- a/srml/staking/src/mock.rs +++ b/srml/staking/src/mock.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index 4deaee08d5..c3be7609b0 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/sudo/src/lib.rs b/srml/sudo/src/lib.rs index 5ff7fee52d..e4dfa480e9 100644 --- a/srml/sudo/src/lib.rs +++ b/srml/sudo/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/procedural/src/lib.rs b/srml/support/procedural/src/lib.rs index dbf7c21633..47aef0fe9f 100644 --- a/srml/support/procedural/src/lib.rs +++ b/srml/support/procedural/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/procedural/src/storage/mod.rs b/srml/support/procedural/src/storage/mod.rs index 37f2a2f3f1..4cf8ea216f 100644 --- a/srml/support/procedural/src/storage/mod.rs +++ b/srml/support/procedural/src/storage/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index 6bc15ea2f6..c152ceff25 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/procedural/tools/derive/src/lib.rs b/srml/support/procedural/tools/derive/src/lib.rs index fdaee5dcee..0e3fcb2247 100644 --- a/srml/support/procedural/tools/derive/src/lib.rs +++ b/srml/support/procedural/tools/derive/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/procedural/tools/src/lib.rs b/srml/support/procedural/tools/src/lib.rs index 8d0e1ae600..f8fe1081e1 100644 --- a/srml/support/procedural/tools/src/lib.rs +++ b/srml/support/procedural/tools/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/procedural/tools/src/syn_ext.rs b/srml/support/procedural/tools/src/syn_ext.rs index 74233b2d0b..c2136b2cd8 100644 --- a/srml/support/procedural/tools/src/syn_ext.rs +++ b/srml/support/procedural/tools/src/syn_ext.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index 8e5cc44092..26ac2cdc23 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/double_map.rs b/srml/support/src/double_map.rs index bd3fd973c2..609006aa33 100644 --- a/srml/support/src/double_map.rs +++ b/srml/support/src/double_map.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/event.rs b/srml/support/src/event.rs index 6d00e6b10b..50c2947814 100644 --- a/srml/support/src/event.rs +++ b/srml/support/src/event.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/hashable.rs b/srml/support/src/hashable.rs index 3d8b706b89..9bb383b2a6 100644 --- a/srml/support/src/hashable.rs +++ b/srml/support/src/hashable.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/inherent.rs b/srml/support/src/inherent.rs index 671059ebe1..8a4fb669d1 100644 --- a/srml/support/src/inherent.rs +++ b/srml/support/src/inherent.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/lib.rs b/srml/support/src/lib.rs index ccfa2603a0..7914e7d677 100644 --- a/srml/support/src/lib.rs +++ b/srml/support/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/metadata.rs b/srml/support/src/metadata.rs index 229f132ac9..1a919e36f8 100644 --- a/srml/support/src/metadata.rs +++ b/srml/support/src/metadata.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/origin.rs b/srml/support/src/origin.rs index 5832a4f7b8..9b76c3ac2b 100644 --- a/srml/support/src/origin.rs +++ b/srml/support/src/origin.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/runtime.rs b/srml/support/src/runtime.rs index a1093dae5b..6fc3a96069 100644 --- a/srml/support/src/runtime.rs +++ b/srml/support/src/runtime.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/storage/generator.rs b/srml/support/src/storage/generator.rs index e9c38e872c..d76e5f62df 100644 --- a/srml/support/src/storage/generator.rs +++ b/srml/support/src/storage/generator.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/support/src/storage/mod.rs b/srml/support/src/storage/mod.rs index 6b6e68be19..dec8b2fec8 100644 --- a/srml/support/src/storage/mod.rs +++ b/srml/support/src/storage/mod.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/system/src/lib.rs b/srml/system/src/lib.rs index 0a0cf624e7..384c4fb462 100644 --- a/srml/system/src/lib.rs +++ b/srml/system/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/timestamp/src/lib.rs b/srml/timestamp/src/lib.rs index a1414f94de..fb7e310992 100644 --- a/srml/timestamp/src/lib.rs +++ b/srml/timestamp/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/treasury/src/lib.rs b/srml/treasury/src/lib.rs index 429bd24ecb..aa0eec6479 100644 --- a/srml/treasury/src/lib.rs +++ b/srml/treasury/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/srml/upgrade-key/src/lib.rs b/srml/upgrade-key/src/lib.rs index a55251186b..46e757bcc9 100644 --- a/srml/upgrade-key/src/lib.rs +++ b/srml/upgrade-key/src/lib.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2018 Parity Technologies (UK) Ltd. +// Copyright 2017-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/subkey/src/main.rs b/subkey/src/main.rs index 48fb7ad122..cf5d2269e4 100644 --- a/subkey/src/main.rs +++ b/subkey/src/main.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify diff --git a/subkey/src/vanity.rs b/subkey/src/vanity.rs index a621ccd0ef..1623bf7ae6 100644 --- a/subkey/src/vanity.rs +++ b/subkey/src/vanity.rs @@ -1,4 +1,4 @@ -// Copyright 2018 Parity Technologies (UK) Ltd. +// Copyright 2018-2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify -- GitLab From 5fa39c4c59df3c8b5cafd885da53912d6fcd97ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Drwi=C4=99ga?= Date: Thu, 7 Mar 2019 10:53:53 +0100 Subject: [PATCH 004/120] Extract specific transaction pool errors. (#1930) * Extract specific transaction pool errors. * Convert error codes to constants. --- core/rpc/src/author/error.rs | 61 ++++++++++++++++++++++++++++++++++-- 1 file changed, 58 insertions(+), 3 deletions(-) diff --git a/core/rpc/src/author/error.rs b/core/rpc/src/author/error.rs index e1a6f4a22d..9c1ec23225 100644 --- a/core/rpc/src/author/error.rs +++ b/core/rpc/src/author/error.rs @@ -47,22 +47,77 @@ error_chain! { } } -const ERROR: i64 = 1000; +/// Base code for all authorship errors. +const BASE_ERROR: i64 = 1000; +/// Extrinsic has an invalid format. +const BAD_FORMAT: i64 = BASE_ERROR + 1; +/// Error during transaction verification in runtime. +const VERIFICATION_ERROR: i64 = BASE_ERROR + 2; + +/// Pool rejected the transaction as invalid +const POOL_INVALID_TX: i64 = BASE_ERROR + 10; +/// Cannot determine transaction validity. +const POOL_UNKNOWN_VALIDITY: i64 = POOL_INVALID_TX + 1; +/// The transaction is temporarily banned. +const POOL_TEMPORARILY_BANNED: i64 = POOL_INVALID_TX + 2; +/// The transaction is already in the pool +const POOL_ALREADY_IMPORTED: i64 = POOL_INVALID_TX + 3; +/// Transaction has too low priority to replace existing one in the pool. +const POOL_TOO_LOW_PRIORITY: i64 = POOL_INVALID_TX + 4; +/// Including this transaction would cause a dependency cycle. +const POOL_CYCLE_DETECTED: i64 = POOL_INVALID_TX + 5; +/// The transaction was not included to the pool because of the limits. +const POOL_IMMEDIATELY_DROPPED: i64 = POOL_INVALID_TX + 6; impl From for rpc::Error { fn from(e: Error) -> Self { match e { Error(ErrorKind::Unimplemented, _) => errors::unimplemented(), Error(ErrorKind::BadFormat, _) => rpc::Error { - code: rpc::ErrorCode::ServerError(ERROR + 1), + code: rpc::ErrorCode::ServerError(BAD_FORMAT), message: "Extrinsic has invalid format.".into(), data: None, }, Error(ErrorKind::Verification(e), _) => rpc::Error { - code: rpc::ErrorCode::ServerError(ERROR + 2), + code: rpc::ErrorCode::ServerError(VERIFICATION_ERROR), message: e.description().into(), data: Some(format!("{:?}", e).into()), }, + Error(ErrorKind::Pool(txpool::error::ErrorKind::InvalidTransaction(code)), _) => rpc::Error { + code: rpc::ErrorCode::ServerError(POOL_INVALID_TX), + message: "Invalid Transaction".into(), + data: Some(code.into()), + }, + Error(ErrorKind::Pool(txpool::error::ErrorKind::UnknownTransactionValidity(code)), _) => rpc::Error { + code: rpc::ErrorCode::ServerError(POOL_UNKNOWN_VALIDITY), + message: "Unknown Transaction Validity".into(), + data: Some(code.into()), + }, + Error(ErrorKind::Pool(txpool::error::ErrorKind::TemporarilyBanned), _) => rpc::Error { + code: rpc::ErrorCode::ServerError(POOL_TEMPORARILY_BANNED), + message: "Transaction is temporarily banned".into(), + data: None, + }, + Error(ErrorKind::Pool(txpool::error::ErrorKind::AlreadyImported(hash)), _) => rpc::Error { + code: rpc::ErrorCode::ServerError(POOL_ALREADY_IMPORTED), + message: "Transaction Already Imported".into(), + data: Some(format!("{:?}", hash).into()), + }, + Error(ErrorKind::Pool(txpool::error::ErrorKind::TooLowPriority(old, new)), _) => rpc::Error { + code: rpc::ErrorCode::ServerError(POOL_TOO_LOW_PRIORITY), + message: format!("Priority is too low: ({} vs {})", old, new), + data: Some("The transaction has too low priority to replace another transaction already in the pool.".into()), + }, + Error(ErrorKind::Pool(txpool::error::ErrorKind::CycleDetected), _) => rpc::Error { + code: rpc::ErrorCode::ServerError(POOL_CYCLE_DETECTED), + message: "Cycle Detected".into(), + data: None, + }, + Error(ErrorKind::Pool(txpool::error::ErrorKind::ImmediatelyDropped), _) => rpc::Error { + code: rpc::ErrorCode::ServerError(POOL_IMMEDIATELY_DROPPED), + message: "Immediately Dropped" .into(), + data: Some("The transaction couldn't enter the pool because of the limit".into()), + }, e => errors::internal(e), } } -- GitLab From 8d96c655f22c908dd550af313cc1223439a257a7 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Thu, 7 Mar 2019 17:10:17 +0100 Subject: [PATCH 005/120] Make subkey support Sr25519 crypto (#1933) * Make subkey support Sr25519 crypto. * Rebuild runtime. * Build and rejig locks. * Fix grumbles * Derivations * Introduce tests --- Cargo.lock | 64 +- core/primitives/Cargo.toml | 6 +- core/primitives/src/sr25519.rs | 218 +++- core/test-runtime/wasm/Cargo.lock | 951 +++++++++------ .../substrate_test_runtime.compact.wasm | Bin 55903 -> 55903 bytes node-template/runtime/wasm/Cargo.lock | 771 ++++++++----- node/runtime/src/lib.rs | 2 +- node/runtime/wasm/Cargo.lock | 1015 ++++++++++------- .../release/node_runtime.compact.wasm | Bin 905224 -> 888467 bytes subkey/Cargo.toml | 4 + subkey/src/cli.yml | 30 +- subkey/src/main.rs | 188 ++- subkey/src/vanity.rs | 17 +- 13 files changed, 2160 insertions(+), 1106 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c0dfa6fe08..8d0caed2dd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -914,6 +914,15 @@ dependencies = [ "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hashbrown" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "heapsize" version = "0.4.2" @@ -2073,6 +2082,9 @@ dependencies = [ name = "once_cell" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "opaque-debug" @@ -2295,6 +2307,16 @@ dependencies = [ "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "pbkdf2" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "peeking_take_while" version = "0.1.2" @@ -2748,7 +2770,7 @@ dependencies = [ [[package]] name = "schnorrkel" version = "0.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/w3f/schnorrkel#0876f3f2194426150efea99304a8d23a336744bc" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2757,6 +2779,7 @@ dependencies = [ "merlin 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3559,7 +3582,11 @@ version = "0.1.0" dependencies = [ "clap 2.32.0 (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)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", + "substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)", "substrate-primitives 0.1.0", + "tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3589,6 +3616,17 @@ dependencies = [ "substrate-transaction-pool 0.1.0", ] +[[package]] +name = "substrate-bip39" +version = "0.2.0" +source = "git+https://github.com/paritytech/substrate-bip39#a28806512c977992af8d6740d45352f5a1c832a0" +dependencies = [ + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "substrate-cli" version = "0.3.0" @@ -3952,12 +3990,14 @@ dependencies = [ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", "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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", + "substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)", "substrate-serializer 0.1.0", + "tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4318,6 +4358,20 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tiny-bip39" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tiny-keccak" version = "1.4.2" @@ -5040,6 +5094,7 @@ dependencies = [ "checksum h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ddb2b25a33e231484694267af28fec74ac63b5ccf51ee2065a5e313b834d836e" "checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" +"checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" @@ -5153,6 +5208,7 @@ dependencies = [ "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f50392d1265092fbee9273414cc40eb6d47d307bd66222c477bb8450c8504f9d" "checksum paste-impl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a3cd512fe3a55e8933b2dcad913e365639db86d512e4004c3084b86864d9467a" +"checksum pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9" "checksum peeking_take_while 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" @@ -5207,7 +5263,7 @@ dependencies = [ "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" "checksum same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8f20c4be53a8a1ff4c1f1b2bd14570d2f634628709752f0702ecdd2b3f9a5267" "checksum schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56" -"checksum schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fe554f318830b48e5da8ab1ccb1ffd02b79228364dac7766b7cd1ec461ca5116" +"checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum secp256k1 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfaccd3a23619349e0878d9a241f34b1982343cdf67367058cd7d078d326b63e" "checksum security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfab8dda0e7a327c696d893df9ffa19cadc4bd195797997f5223cf5831beaf05" @@ -5242,6 +5298,7 @@ dependencies = [ "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550" "checksum structopt 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "670ad348dc73012fcf78c71f06f9d942232cdd4c859d4b6975e27836c3efc0c3" "checksum structopt-derive 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "ef98172b1a00b0bec738508d3726540edcbd186d50dfd326f2b1febbb3559f04" +"checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" "checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" @@ -5256,6 +5313,7 @@ dependencies = [ "checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" +"checksum tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a1415431cb2398d84da64173f8473c792808314427d4a6f2f3ea85ae67239fe3" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" "checksum tinytemplate 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7655088894274afb52b807bd3c87072daa1fedd155068b8705cabfd628956115" "checksum tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5462b0f968c0457efe38fcd2df7e487096b992419e4f5337b06775a614bbda4b" diff --git a/core/primitives/Cargo.toml b/core/primitives/Cargo.toml index 579264cc9a..7aeeaf1029 100644 --- a/core/primitives/Cargo.toml +++ b/core/primitives/Cargo.toml @@ -22,9 +22,11 @@ untrusted = { version = "0.6", optional = true } hex-literal = { version = "0.1", optional = true } base58 = { version = "0.1", optional = true } blake2-rfc = { version = "0.2.18", optional = true } -schnorrkel = { version = "0.0", optional = true } +schnorrkel = { git = "https://github.com/w3f/schnorrkel", optional = true } rand = { version = "0.6", optional = true } sha2 = { version = "0.8", optional = true } +substrate-bip39 = { git = "https://github.com/paritytech/substrate-bip39", optional = true } +tiny-bip39 = { version = "0.6.0", optional = true } [dev-dependencies] substrate-serializer = { path = "../serializer" } @@ -54,6 +56,8 @@ std = [ "untrusted", "hex-literal", "base58", + "substrate-bip39", + "tiny-bip39", "serde_derive", "byteorder/std", "rand", diff --git a/core/primitives/src/sr25519.rs b/core/primitives/src/sr25519.rs index a0b00de3b5..a6e7db8078 100644 --- a/core/primitives/src/sr25519.rs +++ b/core/primitives/src/sr25519.rs @@ -21,10 +21,14 @@ use base58::{FromBase58, ToBase58}; use blake2_rfc; use rand::rngs::OsRng; -use schnorrkel::{signing_context, Keypair, MiniSecretKey, PublicKey}; -use sha2::Sha512; +use schnorrkel::{signing_context, Keypair, SecretKey, MiniSecretKey, PublicKey, + derive::{Derivation, ChainCode, CHAIN_CODE_LENGTH} +}; +use substrate_bip39::mini_secret_from_entropy; +//use sha2::Sha512; use parity_codec::{Encode, Decode}; use crate::hash::H512; +use bip39::{Mnemonic, Language}; #[cfg(feature = "std")] use serde::{de, Deserialize, Deserializer, Serializer}; @@ -32,6 +36,8 @@ use serde::{de, Deserialize, Deserializer, Serializer}; // signing context const SIGNING_CTX: &'static [u8] = b"substrate transaction"; +/// An Schnorrkel/Ristretto x25519 ("sr25519") signature. +/// /// Instead of importing it for the local module, alias it to be available as a public type pub type Signature = H512; @@ -45,11 +51,11 @@ pub struct LocalizedSignature { pub signature: Signature, } -/// A public key. +/// An Schnorrkel/Ristretto x25519 ("sr25519") public key. #[derive(PartialEq, Eq, Clone, Encode, Decode)] pub struct Public(pub [u8; 32]); -/// A schnorrkel key pair. +/// An Schnorrkel/Ristretto x25519 ("sr25519") key pair. pub struct Pair(Keypair); impl ::std::hash::Hash for Public { @@ -127,6 +133,20 @@ impl Public { v.extend(&r.as_bytes()[0..2]); v.to_base58() } + + /// Derive a child key from a series of given junctions. + /// + /// `None` if there are any hard junctions in there. + pub fn derive>(&self, mut path: Iter) -> Option { + let mut acc = PublicKey::from_bytes(self.as_ref()).ok()?; + for j in path { + match j { + DeriveJunction::Soft(cc) => acc = acc.derived_key_simple(ChainCode(cc), &[]).0, + DeriveJunction::Hard(cc) => return None, + } + } + Some(Self(acc.to_bytes())) + } } impl AsRef<[u8; 32]> for Public { @@ -159,6 +179,36 @@ impl AsRef for Pair { } } +impl From for Pair { + fn from(sec: MiniSecretKey) -> Pair { + Pair(sec.expand_to_keypair()) + } +} + +impl From for Pair { + fn from(sec: SecretKey) -> Pair { + Pair(Keypair::from(sec)) + } +} + +impl From for Pair { + fn from(p: schnorrkel::Keypair) -> Pair { + Pair(p) + } +} + +impl From for schnorrkel::Keypair { + fn from(p: Pair) -> schnorrkel::Keypair { + p.0 + } +} + +impl AsRef for Pair { + fn as_ref(&self) -> &schnorrkel::Keypair { + &self.0 + } +} + impl ::std::fmt::Display for Public { fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { write!(f, "{}", self.to_ss58check()) @@ -172,12 +222,95 @@ impl ::std::fmt::Debug for Public { } } +/// A since derivation junction description. It is the single parameter used when creating +/// a new secret key from an existing secret key and, in the case of `SoftRaw` and `SoftIndex` +/// a new public key from an existing public key. +#[derive(Copy, Clone, Eq, PartialEq, Hash, Debug, Encode, Decode)] +pub enum DeriveJunction { + /// Soft (vanilla) derivation. Public keys have a correspondent derivation. + Soft([u8; CHAIN_CODE_LENGTH]), + /// Hard ("hardened") derivation. Public keys do not have a correspondent derivation. + Hard([u8; CHAIN_CODE_LENGTH]), +} + +impl DeriveJunction { + /// Consume self to return a soft derive junction with the same chain code. + pub fn soften(self) -> Self { DeriveJunction::Soft(self.unwrap_inner()) } + + /// Consume self to return a hard derive junction with the same chain code. + pub fn harden(self) -> Self { DeriveJunction::Hard(self.unwrap_inner()) } + + /// Create a new soft (vanilla) DeriveJunction from a given, encodable, value. + /// + /// If you need a hard junction, use `hard()`. + pub fn soft(index: T) -> Self { + let mut cc: [u8; CHAIN_CODE_LENGTH] = Default::default(); + index.using_encoded(|data| if data.len() > CHAIN_CODE_LENGTH { + let hash_result = blake2_rfc::blake2b::blake2b(CHAIN_CODE_LENGTH, &[], data); + let hash = hash_result.as_bytes(); + cc.copy_from_slice(hash); + } else { + cc[0..data.len()].copy_from_slice(data); + }); + DeriveJunction::Soft(cc) + } + + /// Create a new hard (hardened) DeriveJunction from a given, encodable, value. + /// + /// If you need a soft junction, use `soft()`. + pub fn hard(index: T) -> Self { + Self::soft(index).harden() + } + + /// Consume self to return the chain code. + pub fn unwrap_inner(self) -> [u8; CHAIN_CODE_LENGTH] { + match self { + DeriveJunction::Hard(c) | DeriveJunction::Soft(c) => c, + } + } + + /// Consume self to return the chain code. + pub fn unwrap_chain_code(self) -> ChainCode { + ChainCode(self.unwrap_inner()) + } + + /// Return a reference to the chain code. + pub fn chain_code(&self) -> ChainCode { + self.clone().unwrap_chain_code() + } + + /// Return `true` if the junction is soft. + pub fn is_soft(&self) -> bool { + match *self { + DeriveJunction::Soft(_) => true, + _ => false, + } + } + + /// Return `true` if the junction is hard. + pub fn is_hard(&self) -> bool { + match *self { + DeriveJunction::Hard(_) => true, + _ => false, + } + } +} + +/// Derive a single hard junction. +fn derive_hard_junction(secret: &SecretKey, cc: &[u8; CHAIN_CODE_LENGTH]) -> SecretKey { + ("SchnorrRistrettoHDKD", &secret.to_bytes()[..], cc).using_encoded(|data| + MiniSecretKey::from_bytes(blake2_rfc::blake2b::blake2b(32, &[], data).as_bytes()) + .expect("all 32-byte crypto-hash results are valid MiniSecretKeys; qed") + .expand() + ) +} + impl Pair { /// Generate new secure (random) key pair. pub fn generate() -> Pair { let mut csprng: OsRng = OsRng::new().expect("os random generator works; qed"); - let keypair: Keypair = Keypair::generate(&mut csprng); - Pair(keypair) + let key_pair: Keypair = Keypair::generate(&mut csprng); + Pair(key_pair) } /// Make a new key pair from a seed phrase. @@ -186,10 +319,37 @@ impl Pair { pub fn from_seed(seed: &[u8; 32]) -> Pair { let mini_key: MiniSecretKey = MiniSecretKey::from_bytes(seed) .expect("32 bytes can always build a key; qed"); - let kp = mini_key.expand_to_keypair::(); + let kp = mini_key.expand_to_keypair(); + Pair(kp) + } + + /// Make a new key pair from a seed phrase. + /// This is generated using schnorrkel's Mini-Secret-Keys. + /// A MiniSecretKey is literally what Ed25519 calls a SecretKey, which is just 32 random bytes. + pub fn from_entropy(entropy: &[u8], password: Option<&str>) -> Pair { + let mini_key: MiniSecretKey = mini_secret_from_entropy(entropy, password.unwrap_or("")) + .expect("32 bytes can always build a key; qed"); + let kp = mini_key.expand_to_keypair(); Pair(kp) } + /// Returns the KeyPair from the English BIP39 seed `phrase`, or `None` if it's invalid. + pub fn from_phrase(phrase: &str, password: Option<&str>) -> Option { + Mnemonic::from_phrase(phrase, Language::English) + .ok() + .map(|m| Self::from_entropy(m.entropy(), password)) + } + + /// Derive a child key from a series of given junctions. + pub fn derive>(&self, mut path: Iter) -> Pair { + let init = self.0.secret.clone(); + let result = path.fold(init, |acc, j| match j { + DeriveJunction::Soft(cc) => acc.derived_key_simple(ChainCode(cc), &[]).0, + DeriveJunction::Hard(cc) => derive_hard_junction(&acc, &cc), + }); + Self(result.into()) + } + /// Sign a message. pub fn sign(&self, message: &[u8]) -> Signature { let context = signing_context(SIGNING_CTX); @@ -274,6 +434,50 @@ mod test { use super::*; use hex_literal::{hex, hex_impl}; + #[test] + fn derive_soft_should_work() { + let pair: Pair = Pair::from_seed(&hex!( + "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" + )); + let derive_1 = pair.derive(Some(DeriveJunction::soft(1)).into_iter()); + let derive_1b = pair.derive(Some(DeriveJunction::soft(1)).into_iter()); + let derive_2 = pair.derive(Some(DeriveJunction::soft(2)).into_iter()); + assert_eq!(derive_1.public(), derive_1b.public()); + assert_ne!(derive_1.public(), derive_2.public()); + } + + #[test] + fn derive_hard_should_work() { + let pair: Pair = Pair::from_seed(&hex!( + "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" + )); + let derive_1 = pair.derive(Some(DeriveJunction::hard(1)).into_iter()); + let derive_1b = pair.derive(Some(DeriveJunction::hard(1)).into_iter()); + let derive_2 = pair.derive(Some(DeriveJunction::hard(2)).into_iter()); + assert_eq!(derive_1.public(), derive_1b.public()); + assert_ne!(derive_1.public(), derive_2.public()); + } + + #[test] + fn derive_soft_public_should_work() { + let pair: Pair = Pair::from_seed(&hex!( + "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" + )); + let path = Some(DeriveJunction::soft(1)); + let pair_1 = pair.derive(path.clone().into_iter()); + let public_1 = pair.public().derive(path.into_iter()).unwrap(); + assert_eq!(pair_1.public(), public_1); + } + + #[test] + fn derive_hard_public_should_fail() { + let pair: Pair = Pair::from_seed(&hex!( + "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" + )); + let path = Some(DeriveJunction::hard(1)); + assert!(pair.public().derive(path.into_iter()).is_none()); + } + #[test] fn sr_test_vector_should_work() { let pair: Pair = Pair::from_seed(&hex!( diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index ff712a4aef..fdba699543 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -7,31 +7,37 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "arrayvec" -version = "0.4.8" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "autocfg" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "backtrace" -version = "0.3.9" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "backtrace-sys" -version = "0.1.24" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -54,7 +60,7 @@ name = "blake2-rfc" version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -74,7 +80,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -98,26 +104,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "byteorder" -version = "1.2.7" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "bytes" -version = "0.4.11" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "cc" -version = "1.0.29" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "cfg-if" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -127,7 +133,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -135,7 +141,7 @@ name = "clear_on_drop" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -153,46 +159,105 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "crossbeam" -version = "0.2.12" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "crossbeam-channel" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "crossbeam-deque" -version = "0.6.2" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-deque" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-deque" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "crossbeam-epoch" -version = "0.6.1" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "crossbeam-epoch" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-queue" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "crossbeam-utils" -version = "0.6.2" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-utils" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -214,15 +279,24 @@ dependencies = [ "generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "crypto-mac" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "curve25519-dalek" -version = "1.0.3" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -248,15 +322,20 @@ version = "1.0.0-pre.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "either" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "elastic-array" -version = "0.10.0" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -272,13 +351,28 @@ name = "error-chain" version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "failure" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", + "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "failure_derive" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "fake-simd" @@ -290,10 +384,10 @@ name = "fixed-hash" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -316,6 +410,11 @@ name = "foreign-types-shared" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "fuchsia-cprng" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "fuchsia-zircon" version = "0.3.3" @@ -365,6 +464,15 @@ dependencies = [ "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hashbrown" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "heapsize" version = "0.4.2" @@ -375,7 +483,7 @@ dependencies = [ [[package]] name = "hex-literal" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -400,6 +508,15 @@ dependencies = [ "generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hmac" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "hmac-drbg" version = "0.1.2" @@ -422,7 +539,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -439,7 +556,7 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -452,7 +569,7 @@ name = "iovec" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -480,18 +597,13 @@ name = "kvdb" version = "0.1.0" source = "git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d#b0317f649ab2c665b7987b8475878fc4d2e1f81d" dependencies = [ - "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-bytes 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", ] [[package]] name = "lazy_static" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lazy_static" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -501,7 +613,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libc" -version = "0.2.48" +version = "0.2.50" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -512,7 +624,7 @@ dependencies = [ "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "digest 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "hmac-drbg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -531,7 +643,7 @@ name = "log" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -560,14 +672,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "merlin" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "keccak 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -580,11 +691,11 @@ dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -596,7 +707,7 @@ dependencies = [ "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -605,7 +716,7 @@ version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -625,8 +736,8 @@ name = "net2" version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -650,16 +761,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "num_cpus" -version = "1.8.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "once_cell" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "opaque-debug" @@ -668,25 +782,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "openssl" -version = "0.10.16" +version = "0.10.19" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "openssl-sys" -version = "0.9.40" +version = "0.9.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -708,9 +823,9 @@ name = "parity-codec" version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.10 (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.81 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -719,9 +834,9 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -729,16 +844,7 @@ name = "parity-wasm" version = "0.31.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "parking_lot" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -750,27 +856,15 @@ dependencies = [ "parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "parking_lot_core" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "parking_lot_core" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -789,9 +883,19 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "pbkdf2" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -836,9 +940,9 @@ name = "proc-macro-hack" version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -848,7 +952,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "proc-macro2" -version = "0.4.24" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -856,72 +960,74 @@ dependencies = [ [[package]] name = "quote" -version = "0.6.10" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.4.3" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.5.5" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.6.1" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_chacha" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_core" -version = "0.2.2" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_core" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -929,7 +1035,7 @@ name = "rand_hc" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -937,46 +1043,99 @@ name = "rand_isaac" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rand_jitter" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rand_os" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_pcg" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_xorshift" -version = "0.1.0" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rayon" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rayon-core" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rdrand" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "redox_syscall" -version = "0.1.43" +version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "ring" -version = "0.14.5" +version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rustc-demangle" -version = "0.1.9" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1003,12 +1162,12 @@ version = "0.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "merlin 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1033,27 +1192,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.81" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde_derive" -version = "1.0.81" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "serde_json" -version = "1.0.33" +version = "1.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1098,7 +1257,7 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1122,28 +1281,25 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "slog-scope" -version = "4.0.1" +version = "4.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "smallvec" -version = "0.6.7" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", -] [[package]] name = "spin" @@ -1156,9 +1312,9 @@ version = "0.1.0" dependencies = [ "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1185,8 +1341,8 @@ dependencies = [ "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)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -1205,8 +1361,8 @@ 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)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", ] @@ -1216,8 +1372,8 @@ name = "srml-metadata" version = "0.1.0" dependencies = [ "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "substrate-primitives 0.1.0", ] @@ -1227,12 +1383,12 @@ name = "srml-support" version = "0.1.0" dependencies = [ "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "once_cell 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1245,11 +1401,11 @@ dependencies = [ name = "srml-support-procedural" version = "0.1.0" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "sr-api-macros 0.1.0", "srml-support-procedural-tools 0.1.0", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1257,19 +1413,19 @@ name = "srml-support-procedural-tools" version = "0.1.0" dependencies = [ "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "srml-support-procedural-tools-derive 0.1.0", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "srml-support-procedural-tools-derive" version = "0.1.0" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1282,6 +1438,17 @@ name = "static_assertions" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "substrate-bip39" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "substrate-client" version = "0.1.0" @@ -1291,7 +1458,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", @@ -1321,7 +1488,7 @@ dependencies = [ name = "substrate-consensus-common" version = "0.1.0" dependencies = [ - "crossbeam-channel 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -1331,22 +1498,22 @@ dependencies = [ "sr-version 0.1.0", "substrate-inherents 0.1.0", "substrate-primitives 0.1.0", - "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "substrate-executor" version = "0.1.0" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-version 0.1.0", "substrate-panic-handler 0.1.0", @@ -1372,8 +1539,8 @@ dependencies = [ name = "substrate-keyring" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 0.1.0", ] @@ -1381,7 +1548,7 @@ dependencies = [ name = "substrate-panic-handler" version = "0.1.0" dependencies = [ - "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1391,21 +1558,23 @@ version = "0.1.0" dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (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)", - "hex-literal 0.1.1 (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)", "primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "ring 0.14.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", + "substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1415,8 +1584,8 @@ dependencies = [ name = "substrate-serializer" version = "0.1.0" dependencies = [ - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1425,7 +1594,7 @@ version = "0.1.0" dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "hex-literal 0.1.1 (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)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1440,16 +1609,16 @@ dependencies = [ name = "substrate-telemetry" version = "0.3.1" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (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.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (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)", "slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "slog-async 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slog-scope 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slog-scope 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1457,12 +1626,12 @@ dependencies = [ name = "substrate-test-runtime" version = "0.1.0" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1493,6 +1662,11 @@ dependencies = [ "trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "subtle" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "subtle" version = "2.0.0" @@ -1500,11 +1674,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "syn" -version = "0.15.26" +version = "0.15.27" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "synstructure" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1518,19 +1703,33 @@ name = "thread_local" version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "time" -version = "0.1.40" +version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tiny-bip39" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tiny-keccak" version = "1.4.2" @@ -1541,24 +1740,25 @@ dependencies = [ [[package]] name = "tokio" -version = "0.1.13" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-uds 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1566,101 +1766,114 @@ name = "tokio-codec" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-current-thread" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-executor" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-fs" -version = "0.1.4" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-io" -version = "0.1.10" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (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)", ] [[package]] name = "tokio-reactor" -version = "0.1.7" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "tokio-sync" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-tcp" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-threadpool" -version = "0.1.9" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-deque 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (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)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-timer" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1668,30 +1881,30 @@ name = "tokio-udp" version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (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)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-uds" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1699,7 +1912,7 @@ name = "toml" version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1707,10 +1920,10 @@ name = "trie-db" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1726,7 +1939,7 @@ name = "twox-hash" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1739,7 +1952,7 @@ name = "uint" version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1755,22 +1968,17 @@ dependencies = [ [[package]] name = "unicode-normalization" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "unreachable" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "untrusted" version = "0.6.2" @@ -1791,17 +1999,12 @@ name = "vcpkg" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "void" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - [[package]] name = "wasmi" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1840,16 +2043,16 @@ name = "ws" version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1864,9 +2067,10 @@ dependencies = [ [metadata] "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" -"checksum arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f405cc4c21cd8b784f6c8fc2adf9bc00f59558f0049b5ec21517f875963040cc" -"checksum backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a" -"checksum backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "c66d56ac8dabd07f6aacdaf633f4b8262f5b3601a810a0dcddffd5c22c69daa0" +"checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" +"checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" +"checksum backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "cd5a90e2b463010cd0e0ce9a11d4a9d5d58d9f41d4a6ba3dcaf9e68b466e88b4" +"checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" "checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" @@ -1876,35 +2080,44 @@ dependencies = [ "checksum block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591" "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" "checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" -"checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d" -"checksum bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa" -"checksum cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)" = "4390a3b5f4f6bce9c1d0c00128379df433e53777fdd30e92f16a529332baec4e" -"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4" +"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" +"checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" +"checksum cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)" = "d01c69d08ff207f231f07196e30f84c70f1c815b04f980f8b7b01ff01f05eb92" +"checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "97276801e127ffb46b66ce23f35cc96bd454fa311294bced4bbace7baa8b1d17" "checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" "checksum constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8ff012e225ce166d4422e0e78419d901719760f62ae2b7969ca6b564d1b54a9e" -"checksum crossbeam 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "bd66663db5a988098a89599d4857919b3acf7f61402e61365acfd3919857b9be" -"checksum crossbeam-channel 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "8d4f5844607ce8da3fff431e7dba56cda8bfcc570aa50bee36adba8a32b8cad7" -"checksum crossbeam-deque 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4fe1b6f945f824c7a25afe44f62e25d714c0cc523f8e99d8db5cd1026e1269d3" -"checksum crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2449aaa4ec7ef96e5fb24db16024b935df718e9ae1cec0a1e68feeca2efca7b8" -"checksum crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e07fc155212827475223f0bcfae57e945e694fc90950ddf3f6695bbfd5555c72" +"checksum crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ad4c7ea749d9fb09e23c5cb17e3b70650860553a0e2744e38446b1803bf7db94" +"checksum crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "0f0ed1a4de2235cabda8558ff5840bffb97fcb64c97827f354a451307df5f72b" +"checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" +"checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13" +"checksum crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71" +"checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" +"checksum crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4" +"checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b" +"checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" +"checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c" "checksum crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "a2f4a431c5c9f662e1200b7c7f02c34e91361150e382089a8f2dec3ba680cbda" "checksum crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c240f247c278fa08a6d4820a6a222bfc6e0d999e51ba67be94f44c905b2161f2" "checksum crypto-mac 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "779015233ac67d65098614aec748ac1c756ab6677fa2e14cf8b37c08dfed1198" -"checksum curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "dae47cc3529cdab597dbc8b606e565707209b506e55848f3c15679214a56c956" +"checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" +"checksum curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1f8a6fc0376eb52dc18af94915cc04dfdf8353746c0e8c550ae683a0815e5c1" "checksum digest 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e5b29bf156f3f4b3c4f610a25ff69370616ae6e0657d416de22645483e72af0a" "checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c" "checksum ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81956bcf7ef761fb4e1d88de3fa181358a0d26cbcb9755b587a08f9119824b86" -"checksum elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "88d4851b005ef16de812ea9acdb7bece2f0a40dd86c07b85631d7dafa54537bb" +"checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" +"checksum elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" "checksum environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db746025e3ea695bfa0ae744dbacd5fcfc8db51b9760cf8bd0ab69708bb93c49" "checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" +"checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" "checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" "checksum fixed-hash 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a557e80084b05c32b455963ff565a9de6f2866da023d6671705c6aff6f65e01c" "checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" "checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" "checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" +"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b" @@ -1912,10 +2125,12 @@ dependencies = [ "checksum generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fceb69994e330afed50c93524be68c42fa898c2d9fd4ee8da03bd7363acd26f2" "checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" +"checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" -"checksum hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4da5f0e01bd8a71a224a4eedecaacfcabda388dbb7a80faf04d3514287572d95" +"checksum hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "27455ce8b4a6666c87220e4b59c9a83995476bdadc10197905e61dbe906e36fa" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" "checksum hmac 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7a13f4163aa0c5ca1be584aace0e2212b2e41be5478218d4f657f5f778b2ae2a" +"checksum hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f127a908633569f208325f86f71255d3363c79721d7f9fe31cd5569908819771" "checksum hmac-drbg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4fe727d41d2eec0a6574d887914347e5ff96a3b87177817e2a9820c5c87fecc2" "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" @@ -1927,10 +2142,9 @@ dependencies = [ "checksum keccak 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" -"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" -"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" +"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)" = "e962c7641008ac010fa60a7dfdc1712449f29c44ef2d4702394aea943ee75047" +"checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" "checksum libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "688e8d65e495567c2c35ea0001b26b9debf0b4ea11f8cccc954233b75fc3428a" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" @@ -1938,7 +2152,7 @@ dependencies = [ "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" -"checksum merlin 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a9e97b439f6d38cbe2a4a4aa93f6770c5305f62761b78b1851406c09c87ee2a" +"checksum merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "83c2dda19c01176e8e7148f7bdb88bbdf215a8db0641f89fc40e4b81736aeda5" "checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" @@ -1947,22 +2161,21 @@ dependencies = [ "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" -"checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30" -"checksum once_cell 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "d7ce3535d54560c937c1652ba4a0da66bfc63e0f8e07bed127483afb6e5ee925" +"checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" +"checksum once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "532c29a261168a45ce28948f9537ddd7a5dd272cc513b3017b1e82a88f962c37" "checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409" -"checksum openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ec7bd7ca4cce6dbdc77e7c1230682740d307d1218a87fb0349a571272be749f9" -"checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" +"checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d" +"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-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.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" -"checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f50392d1265092fbee9273414cc40eb6d47d307bd66222c477bb8450c8504f9d" "checksum paste-impl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a3cd512fe3a55e8933b2dcad913e365639db86d512e4004c3084b86864d9467a" +"checksum pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" "checksum primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "edb92f1ebfc177432c03287b15d48c202e6e2c95993a7af3ba039abb43b1492e" @@ -1970,21 +2183,26 @@ dependencies = [ "checksum proc-macro-hack 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2c725b36c99df7af7bf9324e9c999b9e37d92c8f8caf106d82e1d7953218d2d8" "checksum proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3e90aa19cd73dedc2d0e1e8407473f073d735fef0ab521438de6da8ee449ab66" "checksum proc-macro-hack-impl 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2b753ad9ed99dd8efeaa7d2fb8453c8f6bc3e54b97966d35f1bc77ca6865254a" -"checksum proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "77619697826f31a02ae974457af0b29b723e5619e113e9397b8b82c6bd253f09" -"checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c" -"checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd" -"checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c" -"checksum rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ae9d223d52ae411a33cf7e54ec6034ec165df296ccd23533d671a28252b6f66a" -"checksum rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "771b009e3a508cb67e8823dda454aaa5368c7bc1c16829fb77d3e980440dd34a" -"checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372" -"checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db" +"checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" +"checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" +"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" +"checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9" +"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" +"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" +"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" +"checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -"checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05" -"checksum rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "effa3fcaa47e18db002bdde6060944b6d2f9cfd8db471c30e873448ad9187be3" -"checksum redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "679da7508e9a6390aeaf7fbd02a800fdc64b73fe2204dd2c8ae66d22d9d5ad5d" -"checksum ring 0.14.5 (registry+https://github.com/rust-lang/crates.io-index)" = "148fc853f6d85f53f5f315d46701eaacc565cdfb3cb1959730c96e81e7e49999" -"checksum rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "bcfe5b13211b4d78e5c2cadfebd7769197d95c639c35a50057eb4c05de811395" +"checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832" +"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" +"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" +"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" +"checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" +"checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" +"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" +"checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" +"checksum ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)" = "426bc186e3e95cac1e4a4be125a4aca7e84c2d616ffc02244eef36e2a60a093c" +"checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" @@ -1992,40 +2210,45 @@ dependencies = [ "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)" = "c91eb5b0190ae87b4e2e39cbba6e3bed3ac6186935fe265f0426156c4c49961b" -"checksum serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)" = "477b13b646f5b5b56fc95bedfc3b550d12141ce84f466f6c44b9a17589923885" -"checksum serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)" = "c37ccd6be3ed1fdf419ee848f7c758eb31b054d7cd3ae3600e3bae0adf569811" +"checksum serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560" +"checksum serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6eabf4b5914e88e24eea240bb7c9f9a2cbc1bbbe8d961d381975ec3c6b806c" +"checksum serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)" = "5a23aa71d4a4d43fdbfaac00eff68ba8a06a51759a89ac3304323e800c4dd40d" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" "checksum sha2 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d963c78ce367df26d7ea8b8cc655c651b42e8a1e584e869c1e17dae3ccb116a" "checksum sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d" "checksum sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "34a5e54083ce2b934bf059fdf38e7330a154177e029ab6c4e18638f2f624053a" -"checksum slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d" +"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" "checksum slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1e1a2eec401952cd7b12a84ea120e2d57281329940c3f93c2bf04f462539508e" "checksum slog-async 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e544d16c6b230d84c866662fe55e31aacfca6ae71e6fc49ae9a311cb379bfc2f" "checksum slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddc0d2aff1f8f325ef660d9a0eb6e6dcd20b30b3f581a5897f58bf42d061c37a" -"checksum slog-scope 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "053344c94c0e2b22da6305efddb698d7c485809427cf40555dc936085f67a9df" -"checksum smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b73ea3738b47563803ef814925e69be00799a8c07420be8b996f8e98fb2336db" +"checksum slog-scope 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "60c04b4726fa04595ccf2c2dad7bcd15474242c4c5e109a8a376e8a2c9b1539a" +"checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ec6183ce9e04bec5f113ff19c8ef5355dad20a4196134b5402732bf5d3c1a351" +"checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" -"checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" +"checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec" +"checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum take_mut 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" -"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" +"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" +"checksum tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a1415431cb2398d84da64173f8473c792808314427d4a6f2f3ea85ae67239fe3" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" -"checksum tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "a7817d4c98cc5be21360b3b37d6036fe9b7aefa5b7a201b7b16ff33423822f7d" +"checksum tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fcaabb3cec70485d0df6e9454fe514393ad1c4070dee8915f11041e95630b230" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" -"checksum tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "331c8acc267855ec06eb0c94618dcbbfea45bed2d20b77252940095273fb58f6" -"checksum tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c117b6cf86bb730aab4834f10df96e4dd586eff2c3c27d3781348da49e255bde" -"checksum tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "60ae25f6b17d25116d2cba342083abe5255d3c2c79cb21ea11aa049c53bf7c75" -"checksum tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "7392fe0a70d5ce0c882c4778116c519bd5dbaa8a7c3ae3d04578b3afafdcda21" -"checksum tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "502b625acb4ee13cbb3b90b8ca80e0addd263ddacf6931666ef751e610b07fb5" -"checksum tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7ad235e9dadd126b2d47f6736f65aa1fdcd6420e66ca63f44177bc78df89f912" -"checksum tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "56c5556262383032878afad66943926a1d1f0967f17e94bd7764ceceb3b70e7f" -"checksum tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4f37f0111d76cc5da132fe9bc0590b9b9cfd079bc7e75ac3846278430a299ff8" +"checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" +"checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" +"checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" +"checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" +"checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce" +"checksum tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1bf2b9dac2a0509b5cfd1df5aa25eafacb616a42a491a13604d6bbeab4486363" +"checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" +"checksum tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "742e511f6ce2298aeb86fc9ea0d8df81c2388c6ebae3dc8a7316e8c9df0df801" +"checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" -"checksum tokio-uds 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "99ce87382f6c1a24b513a72c048b2c8efe66cb5161c9061d00bee510f08dc168" +"checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" "checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" @@ -2033,13 +2256,11 @@ dependencies = [ "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum uint 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7780bb27fd8a22295e0d9d53ae3be253f715a0dccb1808527f478f1c2603708" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" -"checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25" +"checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" -"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" -"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 15ed8aabd2faf73ab308f4e7de30c0f9eac3f67d..416fd30a5c971c184c502c7a6bdf316dfd633f8c 100644 GIT binary patch delta 5179 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 xg`{!v{2zF!P{`}CWHh2?GDRKGb+_zygn{?Y&d delta 5174 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" -"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" +"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)" = "e962c7641008ac010fa60a7dfdc1712449f29c44ef2d4702394aea943ee75047" +"checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" "checksum libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "688e8d65e495567c2c35ea0001b26b9debf0b4ea11f8cccc954233b75fc3428a" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" @@ -2154,7 +2341,7 @@ dependencies = [ "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" -"checksum merlin 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a9e97b439f6d38cbe2a4a4aa93f6770c5305f62761b78b1851406c09c87ee2a" +"checksum merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "83c2dda19c01176e8e7148f7bdb88bbdf215a8db0641f89fc40e4b81736aeda5" "checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" @@ -2163,11 +2350,11 @@ dependencies = [ "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" -"checksum num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5a69d464bdc213aaaff628444e99578ede64e9c854025aa43b9796530afa9238" -"checksum once_cell 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "53075ac5dbd2798cfbcf9f710f2737de031d8076c192d8fe66fb23f639ccbdf4" +"checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" +"checksum once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "532c29a261168a45ce28948f9537ddd7a5dd272cc513b3017b1e82a88f962c37" "checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409" -"checksum openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ec7bd7ca4cce6dbdc77e7c1230682740d307d1218a87fb0349a571272be749f9" -"checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" +"checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d" +"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" @@ -2177,6 +2364,7 @@ dependencies = [ "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f50392d1265092fbee9273414cc40eb6d47d307bd66222c477bb8450c8504f9d" "checksum paste-impl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a3cd512fe3a55e8933b2dcad913e365639db86d512e4004c3084b86864d9467a" +"checksum pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" "checksum primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "edb92f1ebfc177432c03287b15d48c202e6e2c95993a7af3ba039abb43b1492e" @@ -2184,23 +2372,25 @@ dependencies = [ "checksum proc-macro-hack 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2c725b36c99df7af7bf9324e9c999b9e37d92c8f8caf106d82e1d7953218d2d8" "checksum proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3e90aa19cd73dedc2d0e1e8407473f073d735fef0ab521438de6da8ee449ab66" "checksum proc-macro-hack-impl 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2b753ad9ed99dd8efeaa7d2fb8453c8f6bc3e54b97966d35f1bc77ca6865254a" -"checksum proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)" = "38fddd23d98b2144d197c0eca5705632d4fe2667d14a6be5df8934f8d74f1978" +"checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" -"checksum rand 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "dee497e66d8d76bf08ce20c8d36e16f93749ab0bf89975b4f8ae5cee660c2da2" -"checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c" -"checksum rand 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3906503e80ac6cbcacb2c2973fa8e473f24d7e2747c8c92bb230c2441cad96b5" +"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" +"checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9" +"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" "checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" -"checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372" "checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" "checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -"checksum rand_os 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f46fbd5550acf75b0c2730f5dd1873751daf9beb8f11b44027778fae50d7feca" -"checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05" +"checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832" +"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" +"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" "checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" +"checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" +"checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" "checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" -"checksum ring 0.14.5 (registry+https://github.com/rust-lang/crates.io-index)" = "148fc853f6d85f53f5f315d46701eaacc565cdfb3cb1959730c96e81e7e49999" +"checksum ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)" = "426bc186e3e95cac1e4a4be125a4aca7e84c2d616ffc02244eef36e2a60a093c" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" @@ -2210,9 +2400,9 @@ dependencies = [ "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "534b8b91a95e0f71bca3ed5824752d558da048d4248c91af873b63bd60519752" -"checksum serde_derive 1.0.85 (registry+https://github.com/rust-lang/crates.io-index)" = "a915306b0f1ac5607797697148c223bedeaa36bcc2e28a01441cd638cc6567b4" -"checksum serde_json 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)" = "4b90a9fbe1211e57d3e1c15670f1cb00802988fb23a1a4aad7a2b63544f1920e" +"checksum serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560" +"checksum serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6eabf4b5914e88e24eea240bb7c9f9a2cbc1bbbe8d961d381975ec3c6b806c" +"checksum serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)" = "5a23aa71d4a4d43fdbfaac00eff68ba8a06a51759a89ac3304323e800c4dd40d" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" "checksum sha2 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d963c78ce367df26d7ea8b8cc655c651b42e8a1e584e869c1e17dae3ccb116a" "checksum sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d" @@ -2222,26 +2412,31 @@ dependencies = [ "checksum slog-async 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e544d16c6b230d84c866662fe55e31aacfca6ae71e6fc49ae9a311cb379bfc2f" "checksum slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddc0d2aff1f8f325ef660d9a0eb6e6dcd20b30b3f581a5897f58bf42d061c37a" "checksum slog-scope 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "60c04b4726fa04595ccf2c2dad7bcd15474242c4c5e109a8a376e8a2c9b1539a" -"checksum smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "88aea073965ab29f6edb5493faf96ad662fb18aa9eeb186a3b7057951605ed15" +"checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ec6183ce9e04bec5f113ff19c8ef5355dad20a4196134b5402732bf5d3c1a351" +"checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" -"checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" +"checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec" +"checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum take_mut 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" +"checksum tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a1415431cb2398d84da64173f8473c792808314427d4a6f2f3ea85ae67239fe3" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" -"checksum tokio 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4790d0be6f4ba6ae4f48190efa2ed7780c9e3567796abdb285003cf39840d9c5" +"checksum tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fcaabb3cec70485d0df6e9454fe514393ad1c4070dee8915f11041e95630b230" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" -"checksum tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "331c8acc267855ec06eb0c94618dcbbfea45bed2d20b77252940095273fb58f6" +"checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" "checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" -"checksum tokio-fs 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0e9cbbc8a3698b7ab652340f46633364f9eaa928ddaaee79d8b8f356dd79a09d" -"checksum tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b53aeb9d3f5ccf2ebb29e19788f96987fa1355f8fe45ea193928eaaaf3ae820f" -"checksum tokio-reactor 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "afbcdb0f0d2a1e4c440af82d7bbf0bf91a8a8c0575bcd20c05d15be7e9d3a02f" +"checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" +"checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" +"checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce" +"checksum tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1bf2b9dac2a0509b5cfd1df5aa25eafacb616a42a491a13604d6bbeab4486363" "checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" -"checksum tokio-threadpool 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "17465013014410310f9f61fa10bf4724803c149ea1d51efece131c38efca93aa" -"checksum tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4f37f0111d76cc5da132fe9bc0590b9b9cfd079bc7e75ac3846278430a299ff8" +"checksum tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "742e511f6ce2298aeb86fc9ea0d8df81c2388c6ebae3dc8a7316e8c9df0df801" +"checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" @@ -2253,11 +2448,9 @@ dependencies = [ "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" -"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" -"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 51969c48d0..45b252b04c 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -61,7 +61,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 34, - impl_version: 34, + impl_version: 35, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index c7d1ef53cf..f6cfef7c80 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -7,31 +7,37 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "arrayvec" -version = "0.4.8" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "autocfg" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "backtrace" -version = "0.3.9" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "backtrace-sys" -version = "0.1.24" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -54,7 +60,7 @@ name = "blake2-rfc" version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -74,7 +80,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -98,7 +104,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "byteorder" -version = "1.2.7" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -106,18 +112,18 @@ name = "bytes" version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "cc" -version = "1.0.29" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "cfg-if" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -127,7 +133,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", + "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -135,7 +141,7 @@ name = "clear_on_drop" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -153,46 +159,105 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "crossbeam" -version = "0.2.12" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "crossbeam-channel" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "crossbeam-deque" -version = "0.6.2" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-deque" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-deque" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "crossbeam-epoch" -version = "0.6.1" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "crossbeam-queue" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "crossbeam-utils" -version = "0.6.2" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "crossbeam-utils" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -214,15 +279,24 @@ dependencies = [ "generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "crypto-mac" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "curve25519-dalek" -version = "1.0.3" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -248,15 +322,20 @@ version = "1.0.0-pre.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "either" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "elastic-array" -version = "0.10.0" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -272,13 +351,28 @@ name = "error-chain" version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "failure" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", + "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "failure_derive" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "fake-simd" @@ -290,10 +384,10 @@ name = "fixed-hash" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -316,6 +410,11 @@ name = "foreign-types-shared" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "fuchsia-cprng" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "fuchsia-zircon" version = "0.3.3" @@ -365,6 +464,15 @@ dependencies = [ "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hashbrown" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "heapsize" version = "0.4.2" @@ -375,7 +483,7 @@ dependencies = [ [[package]] name = "hex-literal" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -400,6 +508,15 @@ dependencies = [ "generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hmac" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "hmac-drbg" version = "0.1.2" @@ -422,7 +539,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -439,7 +556,7 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -452,7 +569,7 @@ name = "iovec" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -480,18 +597,13 @@ name = "kvdb" version = "0.1.0" source = "git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d#b0317f649ab2c665b7987b8475878fc4d2e1f81d" dependencies = [ - "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", "parity-bytes 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", ] [[package]] name = "lazy_static" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lazy_static" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -501,7 +613,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "libc" -version = "0.2.48" +version = "0.2.50" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -512,7 +624,7 @@ dependencies = [ "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "digest 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "hmac-drbg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -531,7 +643,7 @@ name = "log" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -560,14 +672,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "merlin" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "keccak 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -580,11 +691,11 @@ dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -596,7 +707,7 @@ dependencies = [ "lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -605,7 +716,7 @@ version = "0.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -625,8 +736,8 @@ name = "net2" version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -636,8 +747,8 @@ version = "0.1.0" dependencies = [ "parity-codec 3.1.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.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -647,13 +758,13 @@ dependencies = [ name = "node-runtime" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "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.81 (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", "sr-version 0.1.0", @@ -709,16 +820,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "num_cpus" -version = "1.8.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "once_cell" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "opaque-debug" @@ -727,25 +841,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "openssl" -version = "0.10.16" +version = "0.10.19" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "openssl-sys" -version = "0.9.40" +version = "0.9.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -767,9 +882,9 @@ name = "parity-codec" version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", + "arrayvec 0.4.10 (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.81 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -778,9 +893,9 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -788,16 +903,7 @@ name = "parity-wasm" version = "0.31.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "parking_lot" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -809,27 +915,15 @@ dependencies = [ "parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "parking_lot_core" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "parking_lot_core" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -848,9 +942,19 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "pbkdf2" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -895,9 +999,9 @@ name = "proc-macro-hack" version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -907,7 +1011,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "proc-macro2" -version = "0.4.24" +version = "0.4.27" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -915,82 +1019,84 @@ dependencies = [ [[package]] name = "pwasm-utils" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "quote" -version = "0.6.10" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.4.3" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.5.5" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand" -version = "0.6.1" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_chacha" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_core" -version = "0.2.2" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_core" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -998,7 +1104,7 @@ name = "rand_hc" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1006,46 +1112,99 @@ name = "rand_isaac" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rand_jitter" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rand_os" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_pcg" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rand_xorshift" -version = "0.1.0" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rayon" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rayon-core" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "rdrand" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "redox_syscall" -version = "0.1.43" +version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "ring" -version = "0.14.5" +version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "rustc-demangle" -version = "0.1.9" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1080,12 +1239,12 @@ version = "0.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "merlin 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1110,27 +1269,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde" -version = "1.0.81" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "serde_derive" -version = "1.0.81" +version = "1.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "serde_json" -version = "1.0.33" +version = "1.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1175,7 +1334,7 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1199,28 +1358,25 @@ version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", "slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "slog-scope" -version = "4.0.1" +version = "4.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "smallvec" -version = "0.6.7" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", -] [[package]] name = "spin" @@ -1233,9 +1389,9 @@ version = "0.1.0" dependencies = [ "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1262,8 +1418,8 @@ dependencies = [ "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)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", "substrate-primitives 0.1.0", @@ -1293,8 +1449,8 @@ 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)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", ] @@ -1303,7 +1459,7 @@ dependencies = [ name = "srml-aura" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", @@ -1320,10 +1476,10 @@ dependencies = [ name = "srml-balances" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (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", "srml-support 0.1.0", @@ -1335,10 +1491,10 @@ dependencies = [ name = "srml-consensus" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", "srml-support 0.1.0", @@ -1353,9 +1509,9 @@ version = "0.1.0" dependencies = [ "parity-codec 3.1.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.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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)", + "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-sandbox 0.1.0", @@ -1375,7 +1531,7 @@ dependencies = [ "parity-codec 3.1.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.81 (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", "sr-std 0.1.0", @@ -1389,11 +1545,11 @@ dependencies = [ name = "srml-democracy" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1406,7 +1562,7 @@ name = "srml-executive" version = "0.1.0" dependencies = [ "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (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", "sr-std 0.1.0", @@ -1418,10 +1574,10 @@ dependencies = [ name = "srml-fees" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (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", "sr-std 0.1.0", @@ -1434,10 +1590,10 @@ dependencies = [ name = "srml-finality-tracker" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", "srml-support 0.1.0", @@ -1450,8 +1606,8 @@ name = "srml-grandpa" version = "0.1.0" dependencies = [ "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", "srml-finality-tracker 0.1.0", @@ -1466,11 +1622,11 @@ dependencies = [ name = "srml-indices" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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-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.81 (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", "sr-std 0.1.0", @@ -1485,8 +1641,8 @@ name = "srml-metadata" version = "0.1.0" dependencies = [ "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "substrate-primitives 0.1.0", ] @@ -1495,11 +1651,11 @@ dependencies = [ name = "srml-session" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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-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.81 (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", "srml-consensus 0.1.0", @@ -1512,10 +1668,10 @@ dependencies = [ name = "srml-staking" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (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", "sr-std 0.1.0", @@ -1530,10 +1686,10 @@ dependencies = [ name = "srml-sudo" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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-derive 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (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", "srml-support 0.1.0", @@ -1546,12 +1702,12 @@ name = "srml-support" version = "0.1.0" dependencies = [ "bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)", - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "once_cell 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1564,11 +1720,11 @@ dependencies = [ name = "srml-support-procedural" version = "0.1.0" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "sr-api-macros 0.1.0", "srml-support-procedural-tools 0.1.0", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1576,30 +1732,30 @@ name = "srml-support-procedural-tools" version = "0.1.0" dependencies = [ "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "srml-support-procedural-tools-derive 0.1.0", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "srml-support-procedural-tools-derive" version = "0.1.0" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "srml-system" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-primitives 0.1.0", "sr-std 0.1.0", @@ -1611,9 +1767,9 @@ dependencies = [ name = "srml-timestamp" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", - "serde 1.0.81 (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", "srml-support 0.1.0", @@ -1625,10 +1781,10 @@ dependencies = [ name = "srml-treasury" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-std 0.1.0", "srml-balances 0.1.0", @@ -1641,7 +1797,7 @@ name = "srml-upgrade-key" version = "0.1.0" dependencies = [ "parity-codec 3.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (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", "srml-consensus 0.1.0", @@ -1659,6 +1815,17 @@ name = "static_assertions" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "substrate-bip39" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "substrate-client" version = "0.1.0" @@ -1668,7 +1835,7 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", @@ -1698,7 +1865,7 @@ dependencies = [ name = "substrate-consensus-common" version = "0.1.0" dependencies = [ - "crossbeam-channel 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -1708,22 +1875,22 @@ dependencies = [ "sr-version 0.1.0", "substrate-inherents 0.1.0", "substrate-primitives 0.1.0", - "tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "substrate-executor" version = "0.1.0" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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", "sr-version 0.1.0", "substrate-panic-handler 0.1.0", @@ -1760,8 +1927,8 @@ dependencies = [ name = "substrate-keyring" version = "0.1.0" dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 0.1.0", ] @@ -1769,7 +1936,7 @@ dependencies = [ name = "substrate-panic-handler" version = "0.1.0" dependencies = [ - "backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", + "backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1779,21 +1946,23 @@ version = "0.1.0" dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (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)", - "hex-literal 0.1.1 (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)", "primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "ring 0.14.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", + "substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1803,8 +1972,8 @@ dependencies = [ name = "substrate-serializer" version = "0.1.0" dependencies = [ - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1813,7 +1982,7 @@ version = "0.1.0" dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - "hex-literal 0.1.1 (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)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1828,16 +1997,16 @@ dependencies = [ name = "substrate-telemetry" version = "0.3.1" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (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.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (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)", "slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "slog-async 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slog-scope 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slog-scope 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1852,6 +2021,11 @@ dependencies = [ "trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "subtle" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "subtle" version = "2.0.0" @@ -1859,11 +2033,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "syn" -version = "0.15.26" +version = "0.15.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "synstructure" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1877,19 +2062,33 @@ name = "thread_local" version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "time" -version = "0.1.40" +version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tiny-bip39" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tiny-keccak" version = "1.4.2" @@ -1900,24 +2099,25 @@ dependencies = [ [[package]] name = "tokio" -version = "0.1.13" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-uds 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1927,39 +2127,40 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-current-thread" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-executor" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-fs" -version = "0.1.4" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-io" -version = "0.1.10" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1969,57 +2170,69 @@ dependencies = [ [[package]] name = "tokio-reactor" -version = "0.1.7" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "tokio-sync" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-tcp" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-threadpool" -version = "0.1.9" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-deque 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (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)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-timer" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2032,25 +2245,25 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "tokio-uds" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2058,7 +2271,7 @@ name = "toml" version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2066,10 +2279,10 @@ name = "trie-db" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", + "elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2085,7 +2298,7 @@ name = "twox-hash" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2098,7 +2311,7 @@ name = "uint" version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2114,22 +2327,17 @@ dependencies = [ [[package]] name = "unicode-normalization" -version = "0.1.7" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "unreachable" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "untrusted" version = "0.6.2" @@ -2150,17 +2358,12 @@ name = "vcpkg" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "void" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - [[package]] name = "wasmi" version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2199,16 +2402,16 @@ name = "ws" version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", + "openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2223,9 +2426,10 @@ dependencies = [ [metadata] "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" -"checksum arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f405cc4c21cd8b784f6c8fc2adf9bc00f59558f0049b5ec21517f875963040cc" -"checksum backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a" -"checksum backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "c66d56ac8dabd07f6aacdaf633f4b8262f5b3601a810a0dcddffd5c22c69daa0" +"checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" +"checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" +"checksum backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "cd5a90e2b463010cd0e0ce9a11d4a9d5d58d9f41d4a6ba3dcaf9e68b466e88b4" +"checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" "checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" @@ -2235,35 +2439,44 @@ dependencies = [ "checksum block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591" "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" "checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" -"checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d" +"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" "checksum bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa" -"checksum cc 1.0.29 (registry+https://github.com/rust-lang/crates.io-index)" = "4390a3b5f4f6bce9c1d0c00128379df433e53777fdd30e92f16a529332baec4e" -"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4" +"checksum cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)" = "d01c69d08ff207f231f07196e30f84c70f1c815b04f980f8b7b01ff01f05eb92" +"checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "97276801e127ffb46b66ce23f35cc96bd454fa311294bced4bbace7baa8b1d17" "checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" "checksum constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8ff012e225ce166d4422e0e78419d901719760f62ae2b7969ca6b564d1b54a9e" -"checksum crossbeam 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "bd66663db5a988098a89599d4857919b3acf7f61402e61365acfd3919857b9be" -"checksum crossbeam-channel 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "8d4f5844607ce8da3fff431e7dba56cda8bfcc570aa50bee36adba8a32b8cad7" -"checksum crossbeam-deque 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4fe1b6f945f824c7a25afe44f62e25d714c0cc523f8e99d8db5cd1026e1269d3" -"checksum crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2449aaa4ec7ef96e5fb24db16024b935df718e9ae1cec0a1e68feeca2efca7b8" -"checksum crossbeam-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e07fc155212827475223f0bcfae57e945e694fc90950ddf3f6695bbfd5555c72" +"checksum crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ad4c7ea749d9fb09e23c5cb17e3b70650860553a0e2744e38446b1803bf7db94" +"checksum crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "0f0ed1a4de2235cabda8558ff5840bffb97fcb64c97827f354a451307df5f72b" +"checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3" +"checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13" +"checksum crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71" +"checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" +"checksum crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4" +"checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b" +"checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" +"checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c" "checksum crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "a2f4a431c5c9f662e1200b7c7f02c34e91361150e382089a8f2dec3ba680cbda" "checksum crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c240f247c278fa08a6d4820a6a222bfc6e0d999e51ba67be94f44c905b2161f2" "checksum crypto-mac 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "779015233ac67d65098614aec748ac1c756ab6677fa2e14cf8b37c08dfed1198" -"checksum curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "dae47cc3529cdab597dbc8b606e565707209b506e55848f3c15679214a56c956" +"checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" +"checksum curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1f8a6fc0376eb52dc18af94915cc04dfdf8353746c0e8c550ae683a0815e5c1" "checksum digest 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e5b29bf156f3f4b3c4f610a25ff69370616ae6e0657d416de22645483e72af0a" "checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c" "checksum ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81956bcf7ef761fb4e1d88de3fa181358a0d26cbcb9755b587a08f9119824b86" -"checksum elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "88d4851b005ef16de812ea9acdb7bece2f0a40dd86c07b85631d7dafa54537bb" +"checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" +"checksum elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" "checksum environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db746025e3ea695bfa0ae744dbacd5fcfc8db51b9760cf8bd0ab69708bb93c49" "checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" +"checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" "checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" "checksum fixed-hash 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a557e80084b05c32b455963ff565a9de6f2866da023d6671705c6aff6f65e01c" "checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3" "checksum foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" "checksum foreign-types-shared 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" +"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b" @@ -2271,10 +2484,12 @@ dependencies = [ "checksum generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fceb69994e330afed50c93524be68c42fa898c2d9fd4ee8da03bd7363acd26f2" "checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" +"checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" -"checksum hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4da5f0e01bd8a71a224a4eedecaacfcabda388dbb7a80faf04d3514287572d95" +"checksum hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "27455ce8b4a6666c87220e4b59c9a83995476bdadc10197905e61dbe906e36fa" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" "checksum hmac 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7a13f4163aa0c5ca1be584aace0e2212b2e41be5478218d4f657f5f778b2ae2a" +"checksum hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f127a908633569f208325f86f71255d3363c79721d7f9fe31cd5569908819771" "checksum hmac-drbg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4fe727d41d2eec0a6574d887914347e5ff96a3b87177817e2a9820c5c87fecc2" "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" @@ -2286,10 +2501,9 @@ dependencies = [ "checksum keccak 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" -"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" -"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" +"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" -"checksum libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)" = "e962c7641008ac010fa60a7dfdc1712449f29c44ef2d4702394aea943ee75047" +"checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" "checksum libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "688e8d65e495567c2c35ea0001b26b9debf0b4ea11f8cccc954233b75fc3428a" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" @@ -2297,7 +2511,7 @@ dependencies = [ "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" -"checksum merlin 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a9e97b439f6d38cbe2a4a4aa93f6770c5305f62761b78b1851406c09c87ee2a" +"checksum merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "83c2dda19c01176e8e7148f7bdb88bbdf215a8db0641f89fc40e4b81736aeda5" "checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" @@ -2306,22 +2520,21 @@ dependencies = [ "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" -"checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30" -"checksum once_cell 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "d7ce3535d54560c937c1652ba4a0da66bfc63e0f8e07bed127483afb6e5ee925" +"checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" +"checksum once_cell 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "532c29a261168a45ce28948f9537ddd7a5dd272cc513b3017b1e82a88f962c37" "checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409" -"checksum openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ec7bd7ca4cce6dbdc77e7c1230682740d307d1218a87fb0349a571272be749f9" -"checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6" +"checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d" +"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-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.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" -"checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f50392d1265092fbee9273414cc40eb6d47d307bd66222c477bb8450c8504f9d" "checksum paste-impl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a3cd512fe3a55e8933b2dcad913e365639db86d512e4004c3084b86864d9467a" +"checksum pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9" "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" "checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" "checksum primitive-types 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "edb92f1ebfc177432c03287b15d48c202e6e2c95993a7af3ba039abb43b1492e" @@ -2329,22 +2542,27 @@ dependencies = [ "checksum proc-macro-hack 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2c725b36c99df7af7bf9324e9c999b9e37d92c8f8caf106d82e1d7953218d2d8" "checksum proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3e90aa19cd73dedc2d0e1e8407473f073d735fef0ab521438de6da8ee449ab66" "checksum proc-macro-hack-impl 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2b753ad9ed99dd8efeaa7d2fb8453c8f6bc3e54b97966d35f1bc77ca6865254a" -"checksum proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "77619697826f31a02ae974457af0b29b723e5619e113e9397b8b82c6bd253f09" -"checksum pwasm-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e9135bed7b452e20dbb395a2d519abaf0c46d60e7ecc02daeeab447d29bada1" -"checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c" -"checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd" -"checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c" -"checksum rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ae9d223d52ae411a33cf7e54ec6034ec165df296ccd23533d671a28252b6f66a" -"checksum rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "771b009e3a508cb67e8823dda454aaa5368c7bc1c16829fb77d3e980440dd34a" -"checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372" -"checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db" +"checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" +"checksum pwasm-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "efb0dcbddbb600f47a7098d33762a00552c671992171637f5bb310b37fe1f0e4" +"checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" +"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" +"checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9" +"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" +"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" +"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" +"checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" "checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" "checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -"checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05" -"checksum rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "effa3fcaa47e18db002bdde6060944b6d2f9cfd8db471c30e873448ad9187be3" -"checksum redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "679da7508e9a6390aeaf7fbd02a800fdc64b73fe2204dd2c8ae66d22d9d5ad5d" -"checksum ring 0.14.5 (registry+https://github.com/rust-lang/crates.io-index)" = "148fc853f6d85f53f5f315d46701eaacc565cdfb3cb1959730c96e81e7e49999" -"checksum rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "bcfe5b13211b4d78e5c2cadfebd7769197d95c639c35a50057eb4c05de811395" +"checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832" +"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" +"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" +"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" +"checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473" +"checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" +"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" +"checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" +"checksum ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)" = "426bc186e3e95cac1e4a4be125a4aca7e84c2d616ffc02244eef36e2a60a093c" +"checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" @@ -2353,40 +2571,45 @@ dependencies = [ "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)" = "c91eb5b0190ae87b4e2e39cbba6e3bed3ac6186935fe265f0426156c4c49961b" -"checksum serde_derive 1.0.81 (registry+https://github.com/rust-lang/crates.io-index)" = "477b13b646f5b5b56fc95bedfc3b550d12141ce84f466f6c44b9a17589923885" -"checksum serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)" = "c37ccd6be3ed1fdf419ee848f7c758eb31b054d7cd3ae3600e3bae0adf569811" +"checksum serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560" +"checksum serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "bb6eabf4b5914e88e24eea240bb7c9f9a2cbc1bbbe8d961d381975ec3c6b806c" +"checksum serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)" = "5a23aa71d4a4d43fdbfaac00eff68ba8a06a51759a89ac3304323e800c4dd40d" "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" "checksum sha2 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d963c78ce367df26d7ea8b8cc655c651b42e8a1e584e869c1e17dae3ccb116a" "checksum sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d" "checksum sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "34a5e54083ce2b934bf059fdf38e7330a154177e029ab6c4e18638f2f624053a" -"checksum slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d" +"checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" "checksum slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1e1a2eec401952cd7b12a84ea120e2d57281329940c3f93c2bf04f462539508e" "checksum slog-async 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e544d16c6b230d84c866662fe55e31aacfca6ae71e6fc49ae9a311cb379bfc2f" "checksum slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddc0d2aff1f8f325ef660d9a0eb6e6dcd20b30b3f581a5897f58bf42d061c37a" -"checksum slog-scope 4.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "053344c94c0e2b22da6305efddb698d7c485809427cf40555dc936085f67a9df" -"checksum smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b73ea3738b47563803ef814925e69be00799a8c07420be8b996f8e98fb2336db" +"checksum slog-scope 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "60c04b4726fa04595ccf2c2dad7bcd15474242c4c5e109a8a376e8a2c9b1539a" +"checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ec6183ce9e04bec5f113ff19c8ef5355dad20a4196134b5402732bf5d3c1a351" +"checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" -"checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9" +"checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec" +"checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum take_mut 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" -"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" +"checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" +"checksum tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a1415431cb2398d84da64173f8473c792808314427d4a6f2f3ea85ae67239fe3" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" -"checksum tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "a7817d4c98cc5be21360b3b37d6036fe9b7aefa5b7a201b7b16ff33423822f7d" +"checksum tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fcaabb3cec70485d0df6e9454fe514393ad1c4070dee8915f11041e95630b230" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" -"checksum tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "331c8acc267855ec06eb0c94618dcbbfea45bed2d20b77252940095273fb58f6" -"checksum tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c117b6cf86bb730aab4834f10df96e4dd586eff2c3c27d3781348da49e255bde" -"checksum tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "60ae25f6b17d25116d2cba342083abe5255d3c2c79cb21ea11aa049c53bf7c75" -"checksum tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "7392fe0a70d5ce0c882c4778116c519bd5dbaa8a7c3ae3d04578b3afafdcda21" -"checksum tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "502b625acb4ee13cbb3b90b8ca80e0addd263ddacf6931666ef751e610b07fb5" -"checksum tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7ad235e9dadd126b2d47f6736f65aa1fdcd6420e66ca63f44177bc78df89f912" -"checksum tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "56c5556262383032878afad66943926a1d1f0967f17e94bd7764ceceb3b70e7f" -"checksum tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4f37f0111d76cc5da132fe9bc0590b9b9cfd079bc7e75ac3846278430a299ff8" +"checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" +"checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" +"checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" +"checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" +"checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce" +"checksum tokio-sync 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1bf2b9dac2a0509b5cfd1df5aa25eafacb616a42a491a13604d6bbeab4486363" +"checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119" +"checksum tokio-threadpool 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "742e511f6ce2298aeb86fc9ea0d8df81c2388c6ebae3dc8a7316e8c9df0df801" +"checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" -"checksum tokio-uds 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "99ce87382f6c1a24b513a72c048b2c8efe66cb5161c9061d00bee510f08dc168" +"checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" "checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" @@ -2394,13 +2617,11 @@ dependencies = [ "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum uint 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7780bb27fd8a22295e0d9d53ae3be253f715a0dccb1808527f478f1c2603708" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" -"checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25" +"checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" -"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" -"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 8340ec07c8f3a6b7936937fec3e661dac0f352e0..2192c80bc519e67ecc8f06313cc54c1734ceb15d 100644 GIT binary patch literal 888467 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

4&2c*fDTNB4uL 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 &> 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%0A2G5M)&RXo6RbY%T@Cl3JPfunj5X$qqjA4 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 literal 905224 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

BS!R!LqX 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⋙l~+hTfLz8qO| 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 z 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

8j+Xi5MPJg` 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 a%g5$UqC_1xQ#Uf__)2(+VV+_+C;uNF5@~n< diff --git a/subkey/Cargo.toml b/subkey/Cargo.toml index 868ab3f744..c5006c8916 100644 --- a/subkey/Cargo.toml +++ b/subkey/Cargo.toml @@ -8,6 +8,10 @@ edition = "2018" substrate-primitives = { version = "*", path = "../core/primitives" } rand = "0.6" clap = { version = "~2.32", features = ["yaml"] } +tiny-bip39 = "0.6.0" +rustc-hex = "2.0" +substrate-bip39 = { git = "https://github.com/paritytech/substrate-bip39" } +schnorrkel = { git = "https://github.com/w3f/schnorrkel" } [features] bench = [] diff --git a/subkey/src/cli.yml b/subkey/src/cli.yml index 57cf98bdf2..a918288616 100644 --- a/subkey/src/cli.yml +++ b/subkey/src/cli.yml @@ -1,6 +1,28 @@ name: subkey author: "Parity Team " about: A substrate key utility +args: + - ed25519-legacy: + short: o + long: legacy + help: Use legacy, outdated Ed25519 cryptography + takes_value: false + - ed25519: + short: e + long: ed25519 + help: Use Ed25519/BIP39 cryptography + takes_value: false + - sr25519: + short: s + long: sr25519 + help: Use Schnorr/Ristretto x25519/BIP39 cryptography + takes_value: false + - password: + short: p + long: password + takes_value: true + required: false + help: The password for the key subcommands: - generate: about: Generate a random account @@ -14,7 +36,7 @@ subcommands: it will be right-padded with 0x20 bytes (ASCII space). If the provided seed is longer than 32 bytes then seed will be truncated. - vanity: - about: Generate vanity address + about: Generate a seed that provides a vanity address args: - pattern: index: 1 @@ -25,3 +47,9 @@ subcommands: help: Number of keys to generate takes_value: true default_value: "1" + - query: + about: Query an account by its seed + args: + - seed: + index: 1 + help: The 0x prefixed seed diff --git a/subkey/src/main.rs b/subkey/src/main.rs index cf5d2269e4..7cc28d857c 100644 --- a/subkey/src/main.rs +++ b/subkey/src/main.rs @@ -18,61 +18,181 @@ #[cfg(feature = "bench")] extern crate test; +extern crate substrate_bip39; +extern crate rustc_hex; + use clap::load_yaml; use rand::{RngCore, rngs::OsRng}; -use substrate_primitives::{ed25519::Pair, hexdisplay::HexDisplay}; +use substrate_bip39::{mini_secret_from_entropy}; +use bip39::{Mnemonic, Language, MnemonicType}; +use substrate_primitives::{ed25519, sr25519, hexdisplay::HexDisplay}; +use schnorrkel::keys::MiniSecretKey; +use rustc_hex::FromHex; mod vanity; -fn print_account(seed: &[u8; 32]) { - let pair = Pair::from_seed(seed); - println!("Seed 0x{} is account:\n Public key (hex): 0x{}\n Address (SS58): {}", - HexDisplay::from(seed), - HexDisplay::from(&pair.public().0), - pair.public().to_ss58check() - ); +trait Crypto { + type Seed: AsRef<[u8]> + AsMut<[u8]> + Sized + Default; + type Pair; + fn generate_phrase() -> String { + Mnemonic::new(MnemonicType::Words12, Language::English).phrase().to_owned() + } + fn generate_seed() -> Self::Seed; + fn seed_from_phrase(phrase: &str, password: Option<&str>) -> Self::Seed; + fn pair_from_seed(seed: &Self::Seed) -> Self::Pair; + fn pair_from_phrase(phrase: &str, password: Option<&str>) -> Self::Pair { + Self::pair_from_seed(&Self::seed_from_phrase(phrase, password)) + } + fn ss58_from_pair(pair: &Self::Pair) -> String; + fn public_from_pair(pair: &Self::Pair) -> Vec; + fn print_from_seed(seed: &Self::Seed) { + let pair = Self::pair_from_seed(seed); + println!("Seed 0x{} is account:\n Public key (hex): 0x{}\n Address (SS58): {}", + HexDisplay::from(&seed.as_ref()), + HexDisplay::from(&Self::public_from_pair(&pair)), + Self::ss58_from_pair(&pair) + ); + } + fn print_from_phrase(phrase: &str, password: Option<&str>) { + let seed = Self::seed_from_phrase(phrase, password); + let pair = Self::pair_from_seed(&seed); + println!("Phrase `{}` is account:\n Seed: 0x{}\n Public key (hex): 0x{}\n Address (SS58): {}", + phrase, + HexDisplay::from(&seed.as_ref()), + HexDisplay::from(&Self::public_from_pair(&pair)), + Self::ss58_from_pair(&pair) + ); + } } -fn main() { - let yaml = load_yaml!("cli.yml"); - let matches = clap::App::from_yaml(yaml).get_matches(); +struct OriginalEd25519; + +impl Crypto for OriginalEd25519 { + type Seed = [u8; 32]; + type Pair = ed25519::Pair; + fn generate_seed() -> Self::Seed { + let mut seed = [0u8; 32]; + OsRng::new().unwrap().fill_bytes(&mut seed[..]); + seed + } + + fn seed_from_phrase(phrase: &str, password: Option<&str>) -> Self::Seed { + if password.is_some() { + panic!("Ed25519 original doesn't support passwords") + } + + let mut raw_seed = phrase.as_bytes(); + + if raw_seed.len() > 32 { + raw_seed = &raw_seed[..32]; + println!("seed is too long and will be truncated to: {}", HexDisplay::from(&raw_seed)); + } + + // Copy the raw_seed into a buffer that already contains ' ' 0x20. + // This will effectively get us padding for seeds shorter than 32. + let mut seed = [' ' as u8; 32]; + let len = raw_seed.len().min(32); + seed[..len].copy_from_slice(&raw_seed[..len]); + seed + } + + fn pair_from_seed(seed: &Self::Seed) -> Self::Pair { ed25519::Pair::from_seed(seed) } + fn ss58_from_pair(pair: &Self::Pair) -> String { pair.public().to_ss58check() } + fn public_from_pair(pair: &Self::Pair) -> Vec { (&pair.public().0[..]).to_owned() } +} + +struct Sr25519; + +impl Crypto for Sr25519 { + type Seed = [u8; 32]; + type Pair = sr25519::Pair; + + fn generate_seed() -> Self::Seed { + let mut seed = [0u8; 32]; + OsRng::new().unwrap().fill_bytes(&mut seed[..]); + seed + } + + fn seed_from_phrase(phrase: &str, password: Option<&str>) -> Self::Seed { + mini_secret_from_entropy( + Mnemonic::from_phrase(phrase, Language::English) + .unwrap_or_else(|_| + panic!("Phrase is not a valid BIP-39 phrase: \n {}", phrase) + ) + .entropy(), + password.unwrap_or("") + ) + .expect("32 bytes can always build a key; qed") + .to_bytes() + } + + fn pair_from_phrase(phrase: &str, password: Option<&str>) -> Self::Pair { + sr25519::Pair::from_phrase(phrase, password) + .unwrap_or_else(|| + panic!("Phrase is not a valid BIP-39 phrase: \n {}", phrase) + ) + } + + fn pair_from_seed(seed: &Self::Seed) -> Self::Pair { + MiniSecretKey::from_bytes(seed) + .expect("32 bytes can always build a key; qed") + .into() + } + fn ss58_from_pair(pair: &Self::Pair) -> String { pair.public().to_ss58check() } + fn public_from_pair(pair: &Self::Pair) -> Vec { (&pair.public().0[..]).to_owned() } +} + +fn execute>(matches: clap::ArgMatches) { + let password = matches.value_of("password"); match matches.subcommand() { ("generate", Some(_matches)) => { - let mut seed = [0u8; 32]; - OsRng::new().unwrap().fill_bytes(&mut seed[..]); - print_account(&seed); - } + // create a new randomly generated mnemonic phrase + let mnemonic = Mnemonic::new(MnemonicType::Words12, Language::English); + C::print_from_phrase(mnemonic.phrase(), password); + }, ("vanity", Some(matches)) => { let desired: String = matches.value_of("pattern").map(str::to_string).unwrap_or_default(); - let key = vanity::generate_key(&desired).expect("Key generation failed"); - println!("Found account with score {}%", key.score); - print_account(&key.seed); + let key = vanity::generate_key::(&desired).expect("Key generation failed"); + C::print_from_seed(&key.seed); } ("restore", Some(matches)) => { - // This subcommand is probably obsolete, see - // https://github.com/paritytech/substrate/issues/1063 - - let mut raw_seed = matches.value_of("seed") - .map(str::as_bytes) + let phrase = matches.value_of("seed") .expect("seed parameter is required; thus it can't be None; qed"); - - if raw_seed.len() > 32 { - raw_seed = &raw_seed[..32]; - println!("seed is too long and will be truncated to: {}", HexDisplay::from(&raw_seed)); + C::print_from_phrase(phrase, password); + }, + ("query", Some(matches)) => { + let seed_data = matches.value_of("seed") + .expect("seed parameter is required; thus it can't be None; qed"); + let seed_data = if seed_data.starts_with("0x") { + &seed_data[2..] + } else { + seed_data + }; + let seed_data: Vec = seed_data.from_hex().expect("seed is not valid hex"); + let correct_size = ::std::mem::size_of::(); + if seed_data.len() != correct_size { + panic!("Seed is incorrect size. It must be {} bytes for this cryptography", correct_size); } - - // Copy the raw_seed into a buffer that already contains ' ' 0x20. - // This will effectively get us padding for seeds shorter than 32. - let mut seed = [' ' as u8; 32]; - let len = raw_seed.len().min(32); - seed[..len].copy_from_slice(&raw_seed[..len]); - print_account(&seed); + let mut seed = C::Seed::default(); + seed.as_mut().copy_from_slice(&seed_data); + C::print_from_seed(&seed); }, _ => print_usage(&matches), } } +fn main() { + let yaml = load_yaml!("cli.yml"); + let matches = clap::App::from_yaml(yaml).get_matches(); + + if matches.is_present("ed25519original") { + execute::(matches) + } else { + execute::(matches) + } +} + fn print_usage(matches: &clap::ArgMatches) { println!("{}", matches.usage()); } diff --git a/subkey/src/vanity.rs b/subkey/src/vanity.rs index 1623bf7ae6..07486cff4b 100644 --- a/subkey/src/vanity.rs +++ b/subkey/src/vanity.rs @@ -15,7 +15,7 @@ // along with Substrate. If not, see . use rand::{rngs::OsRng, RngCore}; -use substrate_primitives::ed25519::Pair; +use super::Crypto; fn good_waypoint(done: u64) -> u64 { match done { @@ -38,9 +38,9 @@ fn next_seed(mut seed: [u8; 32]) -> [u8; 32] { /// A structure used to carry both Pair and seed. /// This should usually NOT been used. If unsure, use Pair. -pub struct KeyPair { - pub pair: Pair, - pub seed: [u8; 32], +pub(super) struct KeyPair { + pub pair: C::Pair, + pub seed: C::Seed, pub score: usize, } @@ -57,7 +57,7 @@ fn calculate_score(_desired: &str, key: &str) -> usize { 0 } -pub fn generate_key(desired: &str) -> Result { +pub(super) fn generate_key>(desired: &str) -> Result, &str> { if desired.is_empty() { return Err("Pattern must not be empty"); } @@ -77,8 +77,8 @@ pub fn generate_key(desired: &str) -> Result { OsRng::new().unwrap().fill_bytes(&mut seed[..]); } - let p = Pair::from_seed(&seed); - let ss58 = p.public().to_ss58check(); + let p = C::pair_from_seed(&seed); + let ss58 = C::ss58_from_pair(&p); let score = calculate_score(&desired, &ss58); if score > best || desired.len() < 2 { best = score; @@ -104,12 +104,13 @@ pub fn generate_key(desired: &str) -> Result { #[cfg(test)] mod tests { use super::*; + use super::super::OriginalEd25519; #[cfg(feature = "bench")] use test::Bencher; #[test] fn test_generation_with_single_char() { - assert!(generate_key("j").unwrap().pair.public().to_ss58check().contains("j")); + assert!(generate_key::("j").unwrap().pair.public().to_ss58check().contains("j")); } #[test] -- GitLab From 0dc0d1d1a9d6a5287642e73ec52e806657443ae5 Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Thu, 7 Mar 2019 22:12:57 +0100 Subject: [PATCH 006/120] Don't mark peers sending expired messages as useless (#1944) --- core/network/src/consensus_gossip.rs | 7 ------- core/network/src/protocol.rs | 1 - 2 files changed, 8 deletions(-) diff --git a/core/network/src/consensus_gossip.rs b/core/network/src/consensus_gossip.rs index d32003050a..dbd8836b21 100644 --- a/core/network/src/consensus_gossip.rs +++ b/core/network/src/consensus_gossip.rs @@ -303,7 +303,6 @@ impl ConsensusGossip { protocol: &mut Context, who: NodeIndex, message: ConsensusMessage, - is_syncing: bool, ) -> Option<(B::Hash, ConsensusMessage)> { let message_hash = HashFor::::hash(&message.data[..]); @@ -332,12 +331,6 @@ impl ConsensusGossip { }, Some(ValidationResult::Expired) => { trace!(target:"gossip", "Ignored expired message from {}", who); - if !is_syncing { - protocol.report_peer( - who, - Severity::Useless(format!("Sent expired consensus message")), - ); - } return None; } None => { diff --git a/core/network/src/protocol.rs b/core/network/src/protocol.rs index c191c2d32f..9636d1bb14 100644 --- a/core/network/src/protocol.rs +++ b/core/network/src/protocol.rs @@ -484,7 +484,6 @@ impl, H: ExHashT> Protocol { &mut ProtocolContext::new(&mut self.context_data, &self.network_chan), who, msg, - self.sync.status().is_major_syncing(), ); } other => self.specialization.on_message( -- GitLab From cbc07d3f4e285a4d0ab322447ab58bdfe1b501ba Mon Sep 17 00:00:00 2001 From: Luke Schoen Date: Thu, 7 Mar 2019 22:13:49 +0100 Subject: [PATCH 007/120] docs: Update Readme with example of how to run tests only for a single package (#1946) --- README.adoc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.adoc b/README.adoc index 4c3fdaf6cc..0d4825347a 100644 --- a/README.adoc +++ b/README.adoc @@ -237,11 +237,13 @@ Then build the code: cargo build # Builds all native code ---- -You can run the tests if you like: +You can run all the tests if you like: [source, shell] cargo test --all +Or just run the tests of a specific package (i.e. `cargo test -p srml-assets`) + You can start a development chain with: [source, shell] -- GitLab From c4ca27f7121f37172ae0d2d92280a947ca77edd8 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Thu, 7 Mar 2019 22:15:40 +0100 Subject: [PATCH 008/120] Fix old connections not being reused (#1934) * Fix old connections not being reused * Address issues --- .../src/custom_proto/behaviour.rs | 35 ++++++++++++++++--- 1 file changed, 31 insertions(+), 4 deletions(-) diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index 70787d89e1..2aa3a5de98 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -346,6 +346,9 @@ impl CustomProtos { /// Also updates `next_connect_to_nodes` with the earliest known moment when we need to /// update connections again. fn connect_to_nodes(&mut self, params: &mut PollParameters) { + // Value of `Instant::now()` grabbed once at the beginning. + let now = Instant::now(); + // Make sure we are connected or connecting to all the reserved nodes. for reserved in self.reserved_peers.iter() { // TODO: don't generate an event if we're already in a pending connection (https://github.com/libp2p/rust-libp2p/issues/697) @@ -359,7 +362,7 @@ impl CustomProtos { // We set a timeout to 60 seconds for trying to connect again, however in practice // a round will happen as soon as we fail to dial, disconnect from a node, allow // unreserved nodes, and so on. - self.next_connect_to_nodes.reset(Instant::now() + Duration::from_secs(60)); + self.next_connect_to_nodes.reset(now + Duration::from_secs(60)); return } @@ -372,10 +375,34 @@ impl CustomProtos { .count(); self.max_outgoing_connections - num_outgoing_connections }; - trace!(target: "sub-libp2p", "Connect-to-nodes round; attempting to fill {:?} slots", num_to_open); + // We first try to enable existing connections. + for peer_id in &self.connected_peers { + if num_to_open == 0 { + break + } + + if self.enabled_peers.contains_key(peer_id) { + continue; + } + + if let Some((_, expire)) = self.banned_peers.iter().find(|(p, _)| p == peer_id) { + if *expire >= now { + continue; + } + } + + trace!(target: "sub-libp2p", "Enabling custom protocols with {:?} (active)", peer_id); + num_to_open -= 1; + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: peer_id.clone(), + event: CustomProtosHandlerIn::Enable(Endpoint::Dialer), + }); + } + + // Then, try to open new connections. let local_peer_id = params.local_peer_id().clone(); let (to_try, will_change) = self.topology.addrs_to_attempt(); for (peer_id, _) in to_try { @@ -392,7 +419,7 @@ impl CustomProtos { } if let Some((_, ban_end)) = self.banned_peers.iter().find(|(p, _)| p == peer_id) { - if *ban_end > Instant::now() { + if *ban_end > now { continue } } @@ -402,7 +429,7 @@ impl CustomProtos { } // Next round is when we expect the topology will change. - self.next_connect_to_nodes.reset(cmp::min(will_change, Instant::now() + Duration::from_secs(60))); + self.next_connect_to_nodes.reset(cmp::min(will_change, now + Duration::from_secs(60))); } } -- GitLab From 6ac1f183e0852a387953592d31f01957ff3c76f8 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Sun, 10 Mar 2019 19:36:11 +0100 Subject: [PATCH 009/120] Update rw-stream-sink (#1954) --- Cargo.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8d0caed2dd..473798f103 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1337,7 +1337,7 @@ dependencies = [ "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rw-stream-sink 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1548,7 +1548,7 @@ dependencies = [ "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rw-stream-sink 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "secp256k1 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "stdweb 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1592,7 +1592,7 @@ dependencies = [ "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rw-stream-sink 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "stdweb 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "websocket 0.22.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2724,7 +2724,7 @@ dependencies = [ [[package]] name = "rw-stream-sink" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5257,7 +5257,7 @@ dependencies = [ "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -"checksum rw-stream-sink 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "108ad7c3d65ba866ec50a224b7b3b0cb6c682c3d805015cea859d491232346a5" +"checksum rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d548a40fe17c3a77d54b82457b79fcc9b8a288d509ca20fbf5aa1dac386d22d6" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" -- GitLab From 701ac2a44618a86e14625fc2b601f1737e5e1360 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Mon, 11 Mar 2019 11:40:22 +0100 Subject: [PATCH 010/120] Remove the error from network-libp2p (#1950) --- core/network-libp2p/src/error.rs | 163 ------------------------ core/network-libp2p/src/lib.rs | 55 ++++++-- core/network-libp2p/src/service_task.rs | 4 +- core/network/src/error.rs | 2 - core/network/src/service.rs | 8 +- 5 files changed, 50 insertions(+), 182 deletions(-) delete mode 100644 core/network-libp2p/src/error.rs diff --git a/core/network-libp2p/src/error.rs b/core/network-libp2p/src/error.rs deleted file mode 100644 index b99c84d9ee..0000000000 --- a/core/network-libp2p/src/error.rs +++ /dev/null @@ -1,163 +0,0 @@ -// Copyright 2015-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 . - -use error_chain::*; -use std::{io, net, fmt}; - -#[derive(Debug, Copy, Clone, PartialEq, Eq)] -pub enum DisconnectReason { - DisconnectRequested, - TCPError, - BadProtocol, - UselessPeer, - TooManyPeers, - DuplicatePeer, - IncompatibleProtocol, - NullIdentity, - ClientQuit, - UnexpectedIdentity, - LocalIdentity, - PingTimeout, - Unknown, -} - -impl DisconnectReason { - pub fn from_u8(n: u8) -> DisconnectReason { - match n { - 0 => DisconnectReason::DisconnectRequested, - 1 => DisconnectReason::TCPError, - 2 => DisconnectReason::BadProtocol, - 3 => DisconnectReason::UselessPeer, - 4 => DisconnectReason::TooManyPeers, - 5 => DisconnectReason::DuplicatePeer, - 6 => DisconnectReason::IncompatibleProtocol, - 7 => DisconnectReason::NullIdentity, - 8 => DisconnectReason::ClientQuit, - 9 => DisconnectReason::UnexpectedIdentity, - 10 => DisconnectReason::LocalIdentity, - 11 => DisconnectReason::PingTimeout, - _ => DisconnectReason::Unknown, - } - } -} - -impl fmt::Display for DisconnectReason { - fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { - use self::DisconnectReason::*; - - let msg = match *self { - DisconnectRequested => "disconnect requested", - TCPError => "TCP error", - BadProtocol => "bad protocol", - UselessPeer => "useless peer", - TooManyPeers => "too many peers", - DuplicatePeer => "duplicate peer", - IncompatibleProtocol => "incompatible protocol", - NullIdentity => "null identity", - ClientQuit => "client quit", - UnexpectedIdentity => "unexpected identity", - LocalIdentity => "local identity", - PingTimeout => "ping timeout", - Unknown => "unknown", - }; - - f.write_str(msg) - } -} - -error_chain! { - errors { - #[doc = "Error concerning the network address parsing subsystem."] - AddressParse { - description("Failed to parse network address"), - display("Failed to parse network address"), - } - - #[doc = "Error concerning the network address resolution subsystem."] - AddressResolve(err: Option) { - description("Failed to resolve network address"), - display("Failed to resolve network address {}", err.as_ref().map_or("".to_string(), |e| e.to_string())), - } - - #[doc = "Authentication failure"] - Auth { - description("Authentication failure"), - display("Authentication failure"), - } - - #[doc = "Unrecognised protocol"] - BadProtocol { - description("Bad protocol"), - display("Bad protocol"), - } - - #[doc = "Expired message"] - Expired { - description("Expired message"), - display("Expired message"), - } - - #[doc = "Peer not found"] - PeerNotFound { - description("Peer not found"), - display("Peer not found"), - } - - #[doc = "Peer is disconnected"] - Disconnect(reason: DisconnectReason) { - description("Peer disconnected"), - display("Peer disconnected: {}", reason), - } - - #[doc = "Invalid node id"] - InvalidNodeId { - description("Invalid node id"), - display("Invalid node id"), - } - - #[doc = "Packet size is over the protocol limit"] - OversizedPacket { - description("Packet is too large"), - display("Packet is too large"), - } - - #[doc = "An unknown IO error occurred."] - Io(err: io::Error) { - description("IO Error"), - display("Unexpected IO error: {}", err), - } - } -} - -impl From for Error { - fn from(err: io::Error) -> Self { - Error::from_kind(ErrorKind::Io(err)) - } -} - -impl From for Error { - fn from(_err: net::AddrParseError) -> Self { ErrorKind::AddressParse.into() } -} - -#[test] -fn test_errors() { - assert_eq!(DisconnectReason::ClientQuit, DisconnectReason::from_u8(8)); - let mut r = DisconnectReason::DisconnectRequested; - for i in 0 .. 20 { - r = DisconnectReason::from_u8(i); - } - assert_eq!(DisconnectReason::Unknown, r); -} diff --git a/core/network-libp2p/src/lib.rs b/core/network-libp2p/src/lib.rs index 5d1f248451..a6336e4163 100644 --- a/core/network-libp2p/src/lib.rs +++ b/core/network-libp2p/src/lib.rs @@ -18,35 +18,72 @@ mod behaviour; mod custom_proto; -mod error; mod secret; mod service_task; mod traits; mod transport; pub use crate::custom_proto::{CustomMessage, CustomMessageId, RegisteredProtocol}; -pub use crate::error::{Error, ErrorKind, DisconnectReason}; pub use crate::secret::obtain_private_key; pub use crate::service_task::{start_service, Service, ServiceEvent}; pub use crate::traits::{NetworkConfiguration, NodeIndex, NodeId, NonReservedPeerMode}; pub use crate::traits::{ProtocolId, Secret, Severity}; -pub use libp2p::{Multiaddr, multiaddr::Protocol, build_multiaddr, PeerId, core::PublicKey}; +pub use libp2p::{Multiaddr, multiaddr::Error as MultiaddrError, multiaddr::Protocol, build_multiaddr, PeerId, core::PublicKey}; use libp2p::core::nodes::ConnectedPoint; use serde_derive::Serialize; -use std::{collections::{HashMap, HashSet}, time::Duration}; +use std::{collections::{HashMap, HashSet}, error, fmt, time::Duration}; /// Parses a string address and returns the component, if valid. -pub fn parse_str_addr(addr_str: &str) -> Result<(PeerId, Multiaddr), Error> { - let mut addr: Multiaddr = addr_str.parse().map_err(|_| ErrorKind::AddressParse)?; +pub fn parse_str_addr(addr_str: &str) -> Result<(PeerId, Multiaddr), ParseErr> { + let mut addr: Multiaddr = addr_str.parse()?; + let who = match addr.pop() { - Some(Protocol::P2p(key)) => - PeerId::from_multihash(key).map_err(|_| ErrorKind::AddressParse)?, - _ => return Err(ErrorKind::AddressParse.into()), + Some(Protocol::P2p(key)) => PeerId::from_multihash(key) + .map_err(|_| ParseErr::InvalidPeerId)?, + _ => return Err(ParseErr::PeerIdMissing), }; + Ok((who, addr)) } +/// Error that can be generated by `parse_str_addr`. +#[derive(Debug)] +pub enum ParseErr { + /// Error while parsing the multiaddress. + MultiaddrParse(MultiaddrError), + /// Multihash of the peer ID is invalid. + InvalidPeerId, + /// The peer ID is missing from the address. + PeerIdMissing, +} + +impl fmt::Display for ParseErr { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + ParseErr::MultiaddrParse(err) => write!(f, "{}", err), + ParseErr::InvalidPeerId => write!(f, "Peer id at the end of the address is invalid"), + ParseErr::PeerIdMissing => write!(f, "Peer id is missing from the address"), + } + } +} + +impl error::Error for ParseErr { + fn source(&self) -> Option<&(dyn error::Error + 'static)> { + match self { + ParseErr::MultiaddrParse(err) => Some(err), + ParseErr::InvalidPeerId => None, + ParseErr::PeerIdMissing => None, + } + } +} + +impl From for ParseErr { + fn from(err: MultiaddrError) -> ParseErr { + ParseErr::MultiaddrParse(err) + } +} + /// Returns general information about the networking. /// /// Meant for general diagnostic purposes. diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index a9df000809..69181b90ee 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -19,7 +19,7 @@ use crate::{ transport, NetworkState, NetworkStatePeer, NetworkStateNotConnectedPeer }; use crate::custom_proto::{CustomMessage, RegisteredProtocol, RegisteredProtocols}; -use crate::{Error, NetworkConfiguration, NodeIndex, ProtocolId, parse_str_addr}; +use crate::{NetworkConfiguration, NodeIndex, ProtocolId, parse_str_addr}; use fnv::FnvHashMap; use futures::{prelude::*, Stream}; use libp2p::{multiaddr::Protocol, Multiaddr, PeerId, build_multiaddr}; @@ -41,7 +41,7 @@ use tokio_timer::Interval; pub fn start_service( config: NetworkConfiguration, registered_custom: TProtos, -) -> Result, Error> +) -> Result, IoError> where TProtos: IntoIterator>, TMessage: CustomMessage + Send + 'static { diff --git a/core/network/src/error.rs b/core/network/src/error.rs index b71209f470..bf687f9969 100644 --- a/core/network/src/error.rs +++ b/core/network/src/error.rs @@ -22,12 +22,10 @@ use error_chain::*; use std::io::Error as IoError; -use network_libp2p::Error as NetworkError; use client; error_chain! { foreign_links { - Network(NetworkError) #[doc = "Devp2p error."]; Io(IoError) #[doc = "IO error."]; } diff --git a/core/network/src/service.rs b/core/network/src/service.rs index c0085655e3..34f82d2ddc 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -21,7 +21,7 @@ use std::{io, thread}; use log::{warn, debug, error, trace, info}; use futures::{Async, Future, Stream, stream, sync::oneshot, sync::mpsc}; use parking_lot::{Mutex, RwLock}; -use network_libp2p::{ProtocolId, NetworkConfiguration, NodeIndex, ErrorKind, Severity}; +use network_libp2p::{ProtocolId, NetworkConfiguration, NodeIndex, Severity}; use network_libp2p::{start_service, parse_str_addr, Service as NetworkService, ServiceEvent as NetworkServiceEvent}; use network_libp2p::{Protocol as Libp2pProtocol, RegisteredProtocol, NetworkState}; use consensus::import_queue::{ImportQueue, Link}; @@ -469,11 +469,7 @@ fn start_thread( let service = match start_service(config, Some(registered)) { Ok(service) => Arc::new(Mutex::new(service)), Err(err) => { - match err.kind() { - ErrorKind::Io(ref e) if e.kind() == io::ErrorKind::AddrInUse => - warn!("Network port is already in use, make sure that another instance of Substrate client is not running or change the port using the --port option."), - _ => warn!("Error starting network: {}", err), - }; + warn!("Error starting network: {}", err); return Err(err.into()) }, }; -- GitLab From efa9d7821f79b6a19afa978aa0ebe4b0632e4d05 Mon Sep 17 00:00:00 2001 From: thiolliere Date: Mon, 11 Mar 2019 12:02:06 +0100 Subject: [PATCH 011/120] remove unecessary 2015 imports (#1961) --- core/sr-api-macros/src/decl_runtime_apis.rs | 1 - core/sr-api-macros/src/impl_runtime_apis.rs | 1 - 2 files changed, 2 deletions(-) diff --git a/core/sr-api-macros/src/decl_runtime_apis.rs b/core/sr-api-macros/src/decl_runtime_apis.rs index f684a9e1ed..d98b566545 100644 --- a/core/sr-api-macros/src/decl_runtime_apis.rs +++ b/core/sr-api-macros/src/decl_runtime_apis.rs @@ -21,7 +21,6 @@ use crate::utils::{ generate_method_runtime_api_impl_name }; -use proc_macro; use proc_macro2::{TokenStream, Span}; use quote::quote; diff --git a/core/sr-api-macros/src/impl_runtime_apis.rs b/core/sr-api-macros/src/impl_runtime_apis.rs index 41a443da59..4ea3e8331a 100644 --- a/core/sr-api-macros/src/impl_runtime_apis.rs +++ b/core/sr-api-macros/src/impl_runtime_apis.rs @@ -21,7 +21,6 @@ use crate::utils::{ return_type_extract_type }; -use proc_macro; use proc_macro2::{Span, TokenStream}; use quote::quote; -- GitLab From 79718328ce9479cb80af325fb115e224ff911ff4 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Mon, 11 Mar 2019 12:09:03 +0100 Subject: [PATCH 012/120] Add timeouts for initialization and opening (#1948) * Add timeouts for initialization and opening * Don't keep alive opening and init * Reset deadline when timer error --- .../src/custom_proto/behaviour.rs | 65 ++++++------- .../src/custom_proto/handler.rs | 96 ++++++++++++++----- 2 files changed, 106 insertions(+), 55 deletions(-) diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index 2aa3a5de98..db8fb27ad8 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -45,13 +45,13 @@ pub struct CustomProtos { /// List of custom protocols that we have open with remotes. open_protocols: Vec<(PeerId, ProtocolId)>, - /// List of peer handlers that were enabled, and whether we're dialing or listening. + /// List of peer handlers that were enabled. /// /// Note that it is possible for a peer to be in the shutdown process, in which case it will /// not be in this list but will be present in `open_protocols`. /// It is also possible that we have *just* enabled a peer, in which case it will be in this /// list but not in `open_protocols`. - enabled_peers: FnvHashMap, + enabled_peers: FnvHashSet, /// Maximum number of incoming non-reserved connections, taken from the config. Never modified. max_incoming_connections: usize, @@ -62,8 +62,8 @@ pub struct CustomProtos { /// If true, only reserved peers can connect. reserved_only: bool, - /// List of the IDs of the peers we are connected to. - connected_peers: FnvHashSet, + /// List of the IDs of the peers we are connected to, and whether we're dialing or listening. + connected_peers: FnvHashMap, /// List of the IDs of the reserved peers. We always try to maintain a connection these peers. reserved_peers: FnvHashSet, @@ -170,7 +170,7 @@ impl CustomProtos { reserved_peers: Default::default(), banned_peers: Vec::new(), open_protocols: Vec::with_capacity(open_protos_cap), - enabled_peers: FnvHashMap::with_capacity_and_hasher(connec_cap, Default::default()), + enabled_peers: FnvHashSet::with_capacity_and_hasher(connec_cap, Default::default()), next_connect_to_nodes: Delay::new(Instant::now()), events: SmallVec::new(), marker: PhantomData, @@ -226,7 +226,7 @@ impl CustomProtos { // Disconnecting nodes that are connected to us and that aren't reserved let reserved_peers = &mut self.reserved_peers; let events = &mut self.events; - self.enabled_peers.retain(move |peer_id, _| { + self.enabled_peers.retain(move |peer_id| { if reserved_peers.contains(peer_id) { return true } @@ -240,7 +240,7 @@ impl CustomProtos { /// Disconnects the given peer if we are connected to it. pub fn disconnect_peer(&mut self, peer: &PeerId) { - if self.enabled_peers.remove(peer).is_some() { + if self.enabled_peers.remove(peer) { self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer.clone(), event: CustomProtosHandlerIn::Disable, @@ -260,7 +260,7 @@ impl CustomProtos { } self.banned_peers.push((peer_id.clone(), Instant::now() + PEER_DISABLE_DURATION)); - if self.enabled_peers.remove(&peer_id).is_some() { + if self.enabled_peers.remove(&peer_id) { self.events.push(NetworkBehaviourAction::SendEvent { peer_id, event: CustomProtosHandlerIn::Disable, @@ -275,7 +275,7 @@ impl CustomProtos { /// Returns true if we try to open protocols with the given peer. pub fn is_enabled(&self, peer_id: &PeerId) -> bool { - self.enabled_peers.contains_key(peer_id) + self.enabled_peers.contains(peer_id) } /// Returns the list of protocols we have open with the given peer. @@ -352,7 +352,7 @@ impl CustomProtos { // Make sure we are connected or connecting to all the reserved nodes. for reserved in self.reserved_peers.iter() { // TODO: don't generate an event if we're already in a pending connection (https://github.com/libp2p/rust-libp2p/issues/697) - if !self.enabled_peers.contains_key(&reserved) { + if !self.enabled_peers.contains(&reserved) { self.events.push(NetworkBehaviourAction::DialPeer { peer_id: reserved.clone() }); } } @@ -370,8 +370,8 @@ impl CustomProtos { let mut num_to_open = { let num_outgoing_connections = self.enabled_peers .iter() - .filter(|(_, endpoint)| endpoint.is_dialer()) - .filter(|(p, _)| !self.reserved_peers.contains(p)) + .filter(|p| self.connected_peers.get(p).map(|c| c.is_dialer()).unwrap_or(false)) + .filter(|p| !self.reserved_peers.contains(p)) .count(); self.max_outgoing_connections - num_outgoing_connections }; @@ -379,12 +379,12 @@ impl CustomProtos { num_to_open); // We first try to enable existing connections. - for peer_id in &self.connected_peers { + for peer_id in self.connected_peers.keys() { if num_to_open == 0 { break } - if self.enabled_peers.contains_key(peer_id) { + if self.enabled_peers.contains(peer_id) { continue; } @@ -414,7 +414,7 @@ impl CustomProtos { continue } - if self.connected_peers.contains(&peer_id) { + if self.connected_peers.contains_key(&peer_id) { continue } @@ -453,7 +453,7 @@ where // When a peer connects, its handler is initially in the disabled state. We make sure that // the peer is allowed, and if so we put it in the enabled state. - self.connected_peers.insert(peer_id.clone()); + self.connected_peers.insert(peer_id.clone(), endpoint.clone()); let is_reserved = self.reserved_peers.contains(&peer_id); if self.reserved_only && !is_reserved { @@ -483,8 +483,8 @@ where match endpoint { ConnectedPoint::Dialer { .. } => { let num_outgoing = self.enabled_peers.iter() - .filter(|(_, e)| e.is_dialer()) - .filter(|(p, _)| !self.reserved_peers.contains(p)) + .filter(|p| self.connected_peers.get(p).map(|c| c.is_dialer()).unwrap_or(false)) + .filter(|p| !self.reserved_peers.contains(p)) .count(); debug_assert!(num_outgoing <= self.max_outgoing_connections); @@ -498,8 +498,8 @@ where } ConnectedPoint::Listener { .. } => { let num_ingoing = self.enabled_peers.iter() - .filter(|(_, e)| e.is_listener()) - .filter(|(p, _)| !self.reserved_peers.contains(p)) + .filter(|p| self.connected_peers.get(p).map(|c| c.is_listener()).unwrap_or(false)) + .filter(|p| !self.reserved_peers.contains(p)) .count(); debug_assert!(num_ingoing <= self.max_incoming_connections); @@ -516,7 +516,7 @@ where } // If everything is fine, enable the node. - debug_assert!(!self.enabled_peers.contains_key(&peer_id)); + debug_assert!(!self.enabled_peers.contains(&peer_id)); // We ask the handler to actively open substreams only if we are the dialer; otherwise // the two nodes will race to be the first to open the unique allowed substream. if endpoint.is_dialer() { @@ -534,12 +534,12 @@ where } self.topology.set_connected(&peer_id, &endpoint); - self.enabled_peers.insert(peer_id, endpoint); + self.enabled_peers.insert(peer_id); } fn inject_disconnected(&mut self, peer_id: &PeerId, endpoint: ConnectedPoint) { let was_connected = self.connected_peers.remove(&peer_id); - debug_assert!(was_connected); + debug_assert!(was_connected.is_some()); self.topology.set_disconnected(peer_id, &endpoint); @@ -611,16 +611,16 @@ where )); self.open_protocols.push((source.clone(), protocol_id)); - if let Some(address) = self.enabled_peers.get(&source) { - let event = CustomProtosOut::CustomProtocolOpen { - protocol_id, - version, - peer_id: source, - endpoint: address.clone() - }; + let endpoint = self.connected_peers.get(&source) + .expect("We only receive events from connected nodes; QED").clone(); + let event = CustomProtosOut::CustomProtocolOpen { + protocol_id, + version, + peer_id: source, + endpoint, + }; - self.events.push(NetworkBehaviourAction::GenerateEvent(event)); - } + self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } CustomProtosHandlerOut::CustomMessage { protocol_id, message } => { debug_assert!(self.open_protocols.iter().any(|(s, p)| @@ -654,6 +654,7 @@ where } else { debug!(target: "sub-libp2p", "Network misbehaviour from {:?} with protocol \ {:?}: {:?}", source, protocol_id, error); + self.disconnect_peer(&source); } } } diff --git a/core/network-libp2p/src/custom_proto/handler.rs b/core/network-libp2p/src/custom_proto/handler.rs index d7b8da5f74..bb326923e1 100644 --- a/core/network-libp2p/src/custom_proto/handler.rs +++ b/core/network-libp2p/src/custom_proto/handler.rs @@ -28,6 +28,7 @@ use log::{debug, error, warn}; use smallvec::{smallvec, SmallVec}; use std::{error, fmt, io, mem, time::Duration, time::Instant}; use tokio_io::{AsyncRead, AsyncWrite}; +use tokio_timer::Delay; use void::Void; /// Implements the `ProtocolsHandler` trait of libp2p. @@ -89,12 +90,19 @@ struct PerProtocol { /// State of the handler for a specific protocol. enum PerProtocolState { /// Waiting for the behaviour to tell the handler whether it is enabled or disabled. - /// Contains a list of substreams opened by the remote but that haven't been processed yet. - Init(SmallVec<[RegisteredProtocolSubstream; 6]>), + Init { + /// List of substreams opened by the remote but that haven't been processed yet. + substreams: SmallVec<[RegisteredProtocolSubstream; 6]>, + /// Deadline after which the initialization is abnormally long. + init_deadline: Delay, + }, /// Handler is opening a substream in order to activate itself. /// If we are in this state, we haven't sent any `CustomProtocolOpen` yet. - Opening, + Opening { + /// Deadline after which the opening is abnormally long. + deadline: Delay, + }, /// Backwards-compatible mode. Contains the unique substream that is open. /// If we are in this state, we have sent a `CustomProtocolOpen` message to the outside. @@ -174,7 +182,7 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { PerProtocolState::Poisoned } - PerProtocolState::Init(incoming) => { + PerProtocolState::Init { substreams: incoming, .. } => { if incoming.is_empty() { if let Endpoint::Dialer = endpoint { return_value = Some(ProtocolsHandlerEvent::OutboundSubstreamRequest { @@ -184,7 +192,9 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { } else { return_value = None; } - PerProtocolState::Opening + PerProtocolState::Opening { + deadline: Delay::new(Instant::now() + Duration::from_secs(60)) + } } else if incoming.iter().any(|s| s.is_multiplex()) { let event = CustomProtosHandlerOut::CustomProtocolOpen { @@ -215,7 +225,7 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { } } - st @ PerProtocolState::Opening => { return_value = None; st } + st @ PerProtocolState::Opening { .. } => { return_value = None; st } st @ PerProtocolState::BackCompat { .. } => { return_value = None; st } st @ PerProtocolState::Normal { .. } => { return_value = None; st } PerProtocolState::Disabled { shutdown, .. } => { @@ -242,14 +252,14 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { PerProtocolState::Poisoned } - PerProtocolState::Init(mut shutdown) => { + PerProtocolState::Init { substreams: mut shutdown, .. } => { for s in &mut shutdown { s.shutdown(); } PerProtocolState::Disabled { shutdown, reenable: false } } - PerProtocolState::Opening => { + PerProtocolState::Opening { .. } => { PerProtocolState::Disabled { shutdown: SmallVec::new(), reenable: false } } @@ -296,12 +306,12 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { PerProtocolState::Poisoned } - PerProtocolState::Init(mut list) => { + PerProtocolState::Init { substreams: mut list, .. } => { for s in &mut list { s.shutdown(); } PerProtocolState::ShuttingDown(list) } - PerProtocolState::Opening => { + PerProtocolState::Opening { .. } => { PerProtocolState::ShuttingDown(SmallVec::new()) } @@ -347,14 +357,41 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { PerProtocolState::Poisoned } - st @ PerProtocolState::Init(_) => { + PerProtocolState::Init { substreams, mut init_deadline } => { + match init_deadline.poll() { + Ok(Async::Ready(())) => + error!(target: "sub-libp2p", "Handler initialization process is too long"), + Ok(Async::NotReady) => {} + Err(_) => error!(target: "sub-libp2p", "Tokio timer has errored") + } + return_value = None; - st + PerProtocolState::Init { substreams, init_deadline } } - st @ PerProtocolState::Opening { .. } => { - return_value = None; - st + PerProtocolState::Opening { mut deadline } => { + match deadline.poll() { + Ok(Async::Ready(())) => { + deadline.reset(Instant::now() + Duration::from_secs(60)); + let event = CustomProtosHandlerOut::ProtocolError { + protocol_id: self.protocol.id(), + is_severe: false, + error: "Timeout when opening protocol".to_string().into(), + }; + return_value = Some(ProtocolsHandlerEvent::Custom(event)); + PerProtocolState::Opening { deadline } + }, + Ok(Async::NotReady) => { + return_value = None; + PerProtocolState::Opening { deadline } + }, + Err(_) => { + error!(target: "sub-libp2p", "Tokio timer has errored"); + deadline.reset(Instant::now() + Duration::from_secs(60)); + return_value = None; + PerProtocolState::Opening { deadline } + }, + } } PerProtocolState::BackCompat { mut substream, shutdown } => { @@ -423,7 +460,9 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { upgrade: self.protocol.clone(), info: self.protocol.id(), }); - PerProtocolState::Opening + PerProtocolState::Opening { + deadline: Delay::new(Instant::now() + Duration::from_secs(60)) + } } else { return_value = None; PerProtocolState::Disabled { shutdown, reenable } @@ -622,7 +661,10 @@ where protocols: protocols.0.into_iter().map(|protocol| { PerProtocol { protocol, - state: PerProtocolState::Init(SmallVec::new()), + state: PerProtocolState::Init { + substreams: SmallVec::new(), + init_deadline: Delay::new(Instant::now() + Duration::from_secs(5)) + }, } }).collect(), events_queue: SmallVec::new(), @@ -672,15 +714,15 @@ where PerProtocolState::Poisoned } - PerProtocolState::Init(mut incoming) => { + PerProtocolState::Init { mut substreams, init_deadline } => { if substream.endpoint() == Endpoint::Dialer { error!(target: "sub-libp2p", "Opened dialing substream before initialization"); } - incoming.push(substream); - PerProtocolState::Init(incoming) + substreams.push(substream); + PerProtocolState::Init { substreams, init_deadline } } - PerProtocolState::Opening => { + PerProtocolState::Opening { .. } => { let event = CustomProtosHandlerOut::CustomProtocolOpen { protocol_id: substream.protocol_id(), version: substream.protocol_version() @@ -893,15 +935,23 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { return KeepAlive::Until(self.warm_up_end) } + let mut keep_forever = false; + for protocol in self.protocols.iter() { match protocol.state { + PerProtocolState::Init { .. } | PerProtocolState::Opening { .. } => {} + PerProtocolState::BackCompat { .. } | PerProtocolState::Normal { .. } => + keep_forever = true, PerProtocolState::Disabled { .. } | PerProtocolState::ShuttingDown(_) | PerProtocolState::Poisoned => return KeepAlive::Now, - _ => {} } } - KeepAlive::Forever + if keep_forever { + KeepAlive::Forever + } else { + KeepAlive::Now + } } fn shutdown(&mut self) { -- GitLab From 83edb41dea03ad3ffae0204c710058aab5ccce04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Mon, 11 Mar 2019 21:49:37 +0100 Subject: [PATCH 013/120] Cleanup rustdoc (#1965) * Hide `__GetByteStruct*` types in the docs * Forward documentation to `GenesisConfig` * Hide `PhantomItem` in docs for `Call` * Hide public calls in `Module` * Forward documenation for storage functions * Hide auxiliary functions in documentation --- srml/staking/src/lib.rs | 46 +++++++++---------- .../procedural/src/storage/transformation.rs | 40 ++++++++++++---- srml/support/src/dispatch.rs | 15 ++++-- 3 files changed, 65 insertions(+), 36 deletions(-) diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index b96cb8bbf6..373bfd6563 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -211,12 +211,12 @@ decl_storage! { pub Payee get(payee): map T::AccountId => RewardDestination; /// The set of keys are all controllers that want to validate. - /// + /// /// The values are the preferences that a validator has. pub Validators get(validators): linked_map T::AccountId => ValidatorPrefs>; /// The set of keys are all controllers that want to nominate. - /// + /// /// The value are the nominations. pub Nominators get(nominators): linked_map T::AccountId => Vec; @@ -227,7 +227,7 @@ decl_storage! { // The historical validators and their nominations for a given era. Stored as a trie root of the mapping // `T::AccountId` => `Exposure>`, which is just the contents of `Stakers`, // under a key that is the `era`. - // + // // Every era change, this will be appended with the trie root of the contents of `Stakers`, and the oldest // entry removed down to a specific number of entries (probably around 90 for a 3 month history). // pub HistoricalStakers get(historical_stakers): map T::BlockNumber => Option; @@ -276,7 +276,7 @@ decl_storage! { >::select_validators(); }); }); - } + } } decl_module! { @@ -307,9 +307,9 @@ decl_module! { /// Add some extra amount that have appeared in the stash `free_balance` into the balance up for /// staking. - /// + /// /// Use this if there are additional funds in your stash account that you wish to bond. - /// + /// /// NOTE: This call must be made by the controller, not the stash. fn bond_extra(origin, max_additional: BalanceOf) { let controller = ensure_signed(origin)?; @@ -325,15 +325,15 @@ decl_module! { } /// Schedule a portion of the stash to be unlocked ready for transfer out after the bond - /// period ends. If this leaves an amount actively bonded less than + /// period ends. If this leaves an amount actively bonded less than /// T::Currency::existential_deposit(), then it is increased to the full amount. - /// + /// /// Once the unlock period is done, you can call `withdraw_unbonded` to actually move - /// the funds out of management ready for transfer. - /// + /// the funds out of management ready for transfer. + /// /// NOTE: This call must be made by the controller, not the stash. - /// - /// See also `withdraw_unbonded`. + /// + /// See also [`Call::withdraw_unbonded`]. fn unbond(origin, #[compact] value: BalanceOf) { let controller = ensure_signed(origin)?; let mut ledger = Self::ledger(&controller).ok_or("not a controller")?; @@ -357,13 +357,13 @@ decl_module! { } /// Remove any unlocked chunks from the `unlocking` queue from our management. - /// + /// /// This essentially frees up that balance to be used by the stash account to do /// whatever it wants. - /// + /// /// NOTE: This call must be made by the controller, not the stash. - /// - /// See also `unbond`. + /// + /// See also [`Call::unbond`]. fn withdraw_unbonded(origin) { let controller = ensure_signed(origin)?; let ledger = Self::ledger(&controller).ok_or("not a controller")?; @@ -374,7 +374,7 @@ decl_module! { /// Declare the desire to validate for the origin controller. /// /// Effects will be felt at the beginning of the next era. - /// + /// /// NOTE: This call must be made by the controller, not the stash. fn validate(origin, prefs: ValidatorPrefs>) { let controller = ensure_signed(origin)?; @@ -387,7 +387,7 @@ decl_module! { /// Declare the desire to nominate `targets` for the origin controller. /// /// Effects will be felt at the beginning of the next era. - /// + /// /// NOTE: This call must be made by the controller, not the stash. fn nominate(origin, targets: Vec<::Source>) { let controller = ensure_signed(origin)?; @@ -405,7 +405,7 @@ decl_module! { /// Declare no desire to either validate or nominate. /// /// Effects will be felt at the beginning of the next era. - /// + /// /// NOTE: This call must be made by the controller, not the stash. fn chill(origin) { let controller = ensure_signed(origin)?; @@ -417,7 +417,7 @@ decl_module! { /// (Re-)set the payment target for a controller. /// /// Effects will be felt at the beginning of the next era. - /// + /// /// NOTE: This call must be made by the controller, not the stash. fn set_payee(origin, payee: RewardDestination) { let controller = ensure_signed(origin)?; @@ -548,7 +548,7 @@ impl Module { let _ = T::Currency::reward(&l.stash, amount); Self::update_ledger(who, l); }, - } + } } /// Reward a given validator by a specific amount. Add the reward to their, and their nominators' @@ -639,7 +639,7 @@ impl Module { /// @returns the new SlotStake value. fn select_validators() -> BalanceOf { // Map of (would-be) validator account to amount of stake backing it. - + // First, we pull all validators, together with their stash balance into a Vec (cpu=O(V), mem=O(V)) let mut candidates = >::enumerate() .map(|(who, _)| { @@ -763,7 +763,7 @@ impl Module { let _ = Self::slash_validator(&v, slash); >::remove(&v); let _ = Self::apply_force_new_era(false); - + RawEvent::OfflineSlash(v.clone(), slash) } else { RawEvent::OfflineWarning(v.clone(), slash_count) diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index c152ceff25..2a8e181385 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -130,18 +130,20 @@ pub fn decl_storage_impl(input: TokenStream) -> TokenStream { } impl<#traitinstance: 'static + #traittype> #module_ident<#traitinstance> { #impl_store_fns + #[doc(hidden)] pub fn store_metadata() -> #scrate::storage::generator::StorageMetadata { #scrate::storage::generator::StorageMetadata { functions: #scrate::storage::generator::DecodeDifferent::Encode(#store_functions_to_metadata) , } } + #[doc(hidden)] pub fn store_metadata_functions() -> &'static [#scrate::storage::generator::StorageFunctionMetadata] { #store_functions_to_metadata } + #[doc(hidden)] pub fn store_metadata_name() -> &'static str { #cratename_string } - } #extra_genesis @@ -168,6 +170,7 @@ fn decl_store_extra_genesis( for sline in storage_lines.inner.iter() { let DeclStorageLine { + attrs, name, getter, config, @@ -188,7 +191,13 @@ fn decl_store_extra_genesis( let ident = &getter.getfn.content; quote!( #ident ) } else { - return Err(syn::Error::new_spanned(name, format!("Invalid storage definiton, couldn't find config identifier: storage must either have a get identifier `get(ident)` or a defined config identifier `config(ident)`"))); + return Err( + Error::new_spanned( + name, + "Invalid storage definiton, couldn't find config identifier: storage must either have a get identifier \ + `get(ident)` or a defined config identifier `config(ident)`" + ) + ); }; if type_infos.kind.is_simple() && ext::has_parametric_type(type_infos.value_type, traitinstance) { is_trait_needed = true; @@ -199,13 +208,17 @@ fn decl_store_extra_genesis( if let DeclStorageTypeInfosKind::Map { key_type, .. } = type_infos.kind { serde_complete_bound.insert(key_type); } + + // Propagate doc attributes. + let attrs = attrs.inner.iter().filter_map(|a| a.parse_meta().ok()).filter(|m| m.name() == "doc"); + let storage_type = type_infos.typ.clone(); config_field.extend(match type_infos.kind { DeclStorageTypeInfosKind::Simple => { - quote!( pub #ident: #storage_type, ) + quote!( #( #[ #attrs ] )* pub #ident: #storage_type, ) }, DeclStorageTypeInfosKind::Map {key_type, .. } => { - quote!( pub #ident: Vec<(#key_type, #storage_type)>, ) + quote!( #( #[ #attrs ] )* pub #ident: Vec<(#key_type, #storage_type)>, ) }, }); opt_build = Some(build.as_ref().map(|b| &b.expr.content).map(|b|quote!( #b )) @@ -234,7 +247,7 @@ fn decl_store_extra_genesis( let v = (#builder)(&self); <#name<#traitinstance> as #scrate::storage::generator::StorageValue<#typ>>::put(&v, &storage); - + }} }, DeclStorageTypeInfosKind::Map { key_type, .. } => { @@ -475,8 +488,12 @@ fn impl_store_items( ) -> TokenStream2 { storage_lines.inner.iter().map(|sline| &sline.name) .fold(TokenStream2::new(), |mut items, name| { - items.extend(quote!(type #name = #name<#traitinstance>;)); - items + items.extend( + quote!( + type #name = #name<#traitinstance>; + ) + ); + items }) } @@ -488,6 +505,7 @@ fn impl_store_fns( let mut items = TokenStream2::new(); for sline in storage_lines.inner.iter() { let DeclStorageLine { + attrs, name, getter, storage_type, @@ -500,10 +518,14 @@ fn impl_store_fns( let type_infos = get_type_infos(storage_type); let value_type = type_infos.value_type; + // Propagate doc attributes. + let attrs = attrs.inner.iter().filter_map(|a| a.parse_meta().ok()).filter(|m| m.name() == "doc"); + let typ = type_infos.typ; let item = match type_infos.kind { DeclStorageTypeInfosKind::Simple => { quote!{ + #( #[ #attrs ] )* pub fn #get_fn() -> #value_type { <#name<#traitinstance> as #scrate::storage::generator::StorageValue<#typ>> :: get(&#scrate::storage::RuntimeStorage) } @@ -511,6 +533,7 @@ fn impl_store_fns( }, DeclStorageTypeInfosKind::Map { key_type, .. } => { 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) } @@ -579,7 +602,7 @@ fn store_functions_to_metadata ( }) .unwrap_or_else(|| quote!( Default::default() )); let mut docs = TokenStream2::new(); - for attr in attrs.inner.iter().filter_map(|v| v.interpret_meta()) { + for attr in attrs.inner.iter().filter_map(|v| v.parse_meta().ok()) { if let syn::Meta::NameValue(syn::MetaNameValue{ ref ident, ref lit, @@ -608,6 +631,7 @@ 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>); #[cfg(feature = "std")] #[allow(non_upper_case_globals)] diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index 26ac2cdc23..892ccaccf3 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -487,6 +487,7 @@ macro_rules! decl_module { $vis:vis fn $name:ident ( root $(, $param:ident : $param_ty:ty )* ) { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { + #[doc(hidden)] $vis fn $name($( $param: $param_ty ),* ) -> $crate::dispatch::Result { { $( $impl )* } Ok(()) @@ -503,6 +504,7 @@ macro_rules! decl_module { ) -> $result:ty { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { + #[doc(hidden)] $vis fn $name($( $param: $param_ty ),* ) -> $result { $( $impl )* } @@ -518,6 +520,7 @@ macro_rules! decl_module { ) { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { + #[doc(hidden)] $vis fn $name( $origin: $origin_ty $(, $param: $param_ty )* ) -> $crate::dispatch::Result { @@ -608,10 +611,11 @@ macro_rules! decl_module { #[cfg(feature = "std")] $(#[$attr])* pub enum $call_type<$trait_instance: $trait_name> { + #[doc(hidden)] __PhantomItem(::std::marker::PhantomData<$trait_instance>), - __OtherPhantomItem(::std::marker::PhantomData<$trait_instance>), $( #[allow(non_camel_case_types)] + $(#[doc = $doc_attr])* $fn_name ( $( $param ),* ), )* } @@ -619,10 +623,11 @@ macro_rules! decl_module { #[cfg(not(feature = "std"))] $(#[$attr])* pub enum $call_type<$trait_instance: $trait_name> { + #[doc(hidden)] __PhantomItem(::core::marker::PhantomData<$trait_instance>), - __OtherPhantomItem(::core::marker::PhantomData<$trait_instance>), $( #[allow(non_camel_case_types)] + $(#[doc = $doc_attr])* $fn_name ( $( $param ),* ), )* } @@ -655,7 +660,6 @@ macro_rules! decl_module { } else { match *_other { $call_type::__PhantomItem(_) => unreachable!(), - $call_type::__OtherPhantomItem(_) => unreachable!(), _ => false, } } @@ -698,7 +702,6 @@ macro_rules! decl_module { 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 ),* ); )*); if let $call_type::__PhantomItem(_) = *self { unreachable!() } - if let $call_type::__OtherPhantomItem(_) = *self { unreachable!() } } } impl<$trait_instance: $trait_name> $crate::dispatch::Dispatchable @@ -717,7 +720,7 @@ macro_rules! decl_module { ) }, )* - _ => { panic!("__PhantomItem should never be used.") }, + $call_type::__PhantomItem(_) => { panic!("__PhantomItem should never be used.") }, } } } @@ -728,6 +731,7 @@ macro_rules! decl_module { } impl<$trait_instance: $trait_name> $mod_type<$trait_instance> { + #[doc(hidden)] pub fn dispatch>(d: D, origin: D::Origin) -> $crate::dispatch::Result { d.dispatch(origin) } @@ -944,6 +948,7 @@ macro_rules! __dispatch_impl_metadata { $($rest:tt)* ) => { impl<$trait_instance: $trait_name> $mod_type<$trait_instance> { + #[doc(hidden)] pub fn call_functions() -> &'static [$crate::dispatch::FunctionMetadata] { $crate::__call_to_functions!($($rest)*) } -- GitLab From 6db78dad182054674462f154800ec183d54252e5 Mon Sep 17 00:00:00 2001 From: Gregory Terzian <2792687+gterzian@users.noreply.github.com> Date: Tue, 12 Mar 2019 17:17:29 +0800 Subject: [PATCH 014/120] Add network state to system.interval telemetry (#1959) * add network state to system.interval telemetry * use serde_json * use unwrap_or_default --- Cargo.lock | 1 + core/cli/Cargo.toml | 1 + core/cli/src/informant.rs | 3 +++ 3 files changed, 5 insertions(+) diff --git a/Cargo.lock b/Cargo.lock index 473798f103..65595210a7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3644,6 +3644,7 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "names 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde_json 1.0.38 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "structopt 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-client 0.1.0", diff --git a/core/cli/Cargo.toml b/core/cli/Cargo.toml index fa11796902..9ed26692c7 100644 --- a/core/cli/Cargo.toml +++ b/core/cli/Cargo.toml @@ -20,6 +20,7 @@ tokio = "0.1.7" futures = "0.1.17" fdlimit = "0.1" exit-future = "0.1" +serde_json = "1.0" sysinfo = "0.8.0" panic-handler = { package = "substrate-panic-handler", path = "../../core/panic-handler" } client = { package = "substrate-client", path = "../../core/client" } diff --git a/core/cli/src/informant.rs b/core/cli/src/informant.rs index c0ab5c3dc7..260615b2c1 100644 --- a/core/cli/src/informant.rs +++ b/core/cli/src/informant.rs @@ -82,9 +82,12 @@ pub fn start(service: &Service, exit: ::exit_future::Exit, handle: TaskExe (proc.cpu_usage(), proc.memory()) } else { (0.0, 0) }; + let network_state = serde_json::to_string(&network.network_state()).unwrap_or_default(); + telemetry!( SUBSTRATE_INFO; "system.interval"; + "network_state" => network_state, "status" => format!("{}{}", status, target), "peers" => num_peers, "height" => best_number, -- GitLab From c2f6c87838a8eb924e05cd2069c3bf872f496891 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Tue, 12 Mar 2019 11:47:08 +0100 Subject: [PATCH 015/120] Remove dialing without a PeerId --- core/network-libp2p/src/service_task.rs | 26 +++---------------------- 1 file changed, 3 insertions(+), 23 deletions(-) diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index 69181b90ee..4cab435c8b 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -22,14 +22,13 @@ use crate::custom_proto::{CustomMessage, RegisteredProtocol, RegisteredProtocols use crate::{NetworkConfiguration, NodeIndex, ProtocolId, parse_str_addr}; use fnv::FnvHashMap; use futures::{prelude::*, Stream}; -use libp2p::{multiaddr::Protocol, Multiaddr, PeerId, build_multiaddr}; +use libp2p::{multiaddr::Protocol, Multiaddr, PeerId}; use libp2p::core::{Swarm, nodes::Substream, transport::boxed::Boxed, muxing::StreamMuxerBox}; use libp2p::core::nodes::ConnectedPoint; use log::{debug, error, info, warn}; use std::collections::hash_map::Entry; use std::fs; use std::io::{Error as IoError, ErrorKind as IoErrorKind}; -use std::net::SocketAddr; use std::path::Path; use std::sync::Arc; use std::time::{Duration, Instant}; @@ -81,27 +80,8 @@ where TProtos: IntoIterator>, // Connect to the bootnodes. for bootnode in config.boot_nodes.iter() { match parse_str_addr(bootnode) { - Ok((peer_id, _)) => { - Swarm::dial(&mut swarm, peer_id); - }, - Err(_) => { - // If the format of the bootstrap node is not a multiaddr, try to parse it as - // a `SocketAddr`. This corresponds to the format `IP:PORT`. - let addr = match bootnode.parse::() { - Ok(SocketAddr::V4(socket)) => build_multiaddr![Ip4(*socket.ip()), Tcp(socket.port())], - Ok(SocketAddr::V6(socket)) => build_multiaddr![Ip6(*socket.ip()), Tcp(socket.port())], - _ => { - warn!(target: "sub-libp2p", "Not a valid bootnode address: {}", bootnode); - continue - } - }; - - info!(target: "sub-libp2p", "Dialing {} with no peer id. Keep in mind that doing \ - so is vulnerable to man-in-the-middle attacks.", addr); - if let Err(addr) = Swarm::dial_addr(&mut swarm, addr) { - warn!(target: "sub-libp2p", "Bootstrap address not supported: {}", addr) - } - }, + Ok((peer_id, _)) => Swarm::dial(&mut swarm, peer_id), + Err(_) => warn!(target: "sub-libp2p", "Not a valid bootnode address: {}", bootnode), } } -- GitLab From c8212c43724258d270ea578ba62882705fabde56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E5=85=89=E5=8D=8E?= Date: Tue, 12 Mar 2019 20:19:42 +0800 Subject: [PATCH 016/120] Fix telemetry panic error in node-template (#1958) --- Cargo.lock | 2 -- node-template/Cargo.toml | 1 - node-template/runtime/wasm/Cargo.lock | 15 ++++++++------- node-template/src/cli.rs | 5 +++++ node/cli/Cargo.toml | 1 - 5 files changed, 13 insertions(+), 11 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 65595210a7..58af885709 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1867,7 +1867,6 @@ 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)", - "slog 2.4.1 (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)", @@ -1985,7 +1984,6 @@ dependencies = [ "node-template-runtime 0.9.0", "parity-codec 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)", - "slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)", "sr-io 0.1.0", "substrate-basic-authorship 0.1.0", "substrate-cli 0.3.0", diff --git a/node-template/Cargo.toml b/node-template/Cargo.toml index 063ccfbedf..0c5d15da08 100644 --- a/node-template/Cargo.toml +++ b/node-template/Cargo.toml @@ -18,7 +18,6 @@ tokio = "0.1" exit-future = "0.1" parking_lot = "0.7.1" hex-literal = "0.1" -slog = "^2" parity-codec = "3.1" trie-root = "0.11.0" sr-io = { path = "../core/sr-io" } diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index 622198affb..bfcafe4e79 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -1201,7 +1201,7 @@ dependencies = [ [[package]] name = "schnorrkel" version = "0.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/w3f/schnorrkel#0a0de4294b475ef6abdeebb50067f213ca79b3c7" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1210,6 +1210,7 @@ dependencies = [ "merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1659,11 +1660,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "substrate-bip39" version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/paritytech/substrate-bip39#a28806512c977992af8d6740d45352f5a1c832a0" dependencies = [ "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1786,12 +1787,12 @@ dependencies = [ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", "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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", - "substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)", "tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2396,7 +2397,7 @@ dependencies = [ "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" -"checksum schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fe554f318830b48e5da8ab1ccb1ffd02b79228364dac7766b7cd1ec461ca5116" +"checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" @@ -2416,7 +2417,7 @@ dependencies = [ "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" -"checksum substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ec6183ce9e04bec5f113ff19c8ef5355dad20a4196134b5402732bf5d3c1a351" +"checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" "checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec" diff --git a/node-template/src/cli.rs b/node-template/src/cli.rs index 698f0ce763..258d2194a6 100644 --- a/node-template/src/cli.rs +++ b/node-template/src/cli.rs @@ -66,6 +66,11 @@ fn run_until_exit( let _ = runtime.block_on(e.into_exit()); exit_send.fire(); + + // we eagerly drop the service so that the internal exit future is fired, + // but we need to keep holding a reference to the global telemetry guard + let _telemetry = service.telemetry(); + drop(service); Ok(()) } diff --git a/node/cli/Cargo.toml b/node/cli/Cargo.toml index 7b6549ba50..8df7e76a54 100644 --- a/node/cli/Cargo.toml +++ b/node/cli/Cargo.toml @@ -13,7 +13,6 @@ futures = "0.1" exit-future = "0.1" cli = { package = "substrate-cli", path = "../../core/cli" } parity-codec = { version = "3.1" } -slog = "^2" sr-io = { path = "../../core/sr-io" } client = { package = "substrate-client", path = "../../core/client" } primitives = { package = "substrate-primitives", path = "../../core/primitives" } -- GitLab From 4cbda5d31a52555f3f241a7ba8065e8b5cb887f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Tue, 12 Mar 2019 13:58:15 +0100 Subject: [PATCH 017/120] More documentation improvements (#1972) * Bring back public calls in `Module` documentation * Forward storage item documentation to storage structs --- srml/support/procedural/src/storage/impls.rs | 14 +++++++++----- .../procedural/src/storage/transformation.rs | 5 +++++ srml/support/procedural/tools/src/lib.rs | 4 ++-- srml/support/src/dispatch.rs | 12 +++++++++--- 4 files changed, 25 insertions(+), 10 deletions(-) diff --git a/srml/support/procedural/src/storage/impls.rs b/srml/support/procedural/src/storage/impls.rs index 0f953967d8..661f6b7a59 100644 --- a/srml/support/procedural/src/storage/impls.rs +++ b/srml/support/procedural/src/storage/impls.rs @@ -29,7 +29,7 @@ pub fn option_unwrap(is_option: bool) -> TokenStream2 { } } -pub(crate) struct Impls<'a> { +pub(crate) struct Impls<'a, I: Iterator> { pub scrate: &'a TokenStream2, pub visibility: &'a syn::Visibility, pub traitinstance: &'a syn::Ident, @@ -38,9 +38,10 @@ pub(crate) struct Impls<'a> { pub fielddefault: TokenStream2, pub prefix: String, pub name: &'a syn::Ident, + pub attrs: I, } -impl<'a> Impls<'a> { +impl<'a, I: Iterator> Impls<'a, I> { pub fn simple_value(self) -> TokenStream2 { let Self { scrate, @@ -51,6 +52,7 @@ impl<'a> Impls<'a> { fielddefault, prefix, name, + attrs, } = self; let DeclStorageTypeInfos { typ, value_type, is_option, .. } = type_infos; let option_simple_1 = option_unwrap(is_option); @@ -70,7 +72,7 @@ impl<'a> Impls<'a> { // generator for value quote!{ - + #( #[ #attrs ] )* #visibility struct #name<#traitinstance: #traittype>(#scrate::storage::generator::PhantomData<#traitinstance>); impl<#traitinstance: #traittype> #scrate::storage::generator::StorageValue<#typ> for #name<#traitinstance> { @@ -102,7 +104,6 @@ impl<'a> Impls<'a> { ret } } - } } @@ -116,6 +117,7 @@ impl<'a> Impls<'a> { fielddefault, prefix, name, + attrs, } = self; let DeclStorageTypeInfos { typ, value_type, is_option, .. } = type_infos; let option_simple_1 = option_unwrap(is_option); @@ -134,6 +136,7 @@ impl<'a> Impls<'a> { }; // generator for map quote!{ + #( #[ #attrs ] )* #visibility struct #name<#traitinstance: #traittype>(#scrate::storage::generator::PhantomData<#traitinstance>); impl<#traitinstance: #traittype> #scrate::storage::generator::StorageMap<#kty, #typ> for #name<#traitinstance> { @@ -186,12 +189,12 @@ impl<'a> Impls<'a> { fielddefault, prefix, name, + attrs, } = self; 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 prefix = format!("{}", 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()); @@ -300,6 +303,7 @@ impl<'a> Impls<'a> { }; let structure = quote! { + #( #[ #attrs ] )* #visibility struct #name<#traitinstance: #traittype>(#phantom_data<#traitinstance>); impl<#traitinstance: #traittype> self::#inner_module::Utils<#traitinstance> for #name<#traitinstance> { diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index 2a8e181385..111b42fb4c 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -434,6 +434,7 @@ fn decl_storage_items( let mut impls = TokenStream2::new(); for sline in storage_lines.inner.iter() { let DeclStorageLine { + attrs, name, storage_type, default_value, @@ -443,6 +444,9 @@ fn decl_storage_items( let type_infos = get_type_infos(storage_type); let kind = type_infos.kind.clone(); + // Propagate doc attributes. + let attrs = attrs.inner.iter().filter_map(|a| a.parse_meta().ok()).filter(|m| m.name() == "doc"); + let i = impls::Impls { scrate, visibility, @@ -453,6 +457,7 @@ fn decl_storage_items( .unwrap_or_else(|| quote!{ Default::default() }), prefix: format!("{} {}", cratename, name), name, + attrs, }; let implementation = match kind { diff --git a/srml/support/procedural/tools/src/lib.rs b/srml/support/procedural/tools/src/lib.rs index f8fe1081e1..34b96df810 100644 --- a/srml/support/procedural/tools/src/lib.rs +++ b/srml/support/procedural/tools/src/lib.rs @@ -66,7 +66,7 @@ pub fn generate_crate_access(unique_id: &str, def_crate: &str) -> TokenStream { } else { let mod_name = generate_hidden_includes_mod_name(unique_id); quote::quote!( self::#mod_name::hidden_include ) - }.into() + } } /// Generates the hidden includes that are required to make the macro independent from its scope. @@ -92,7 +92,7 @@ pub fn generate_hidden_includes(unique_id: &str, def_crate: &str) -> TokenStream } } - }.into() + } } // fn to remove white spaces arount string types diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index 892ccaccf3..301d346df4 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -484,10 +484,11 @@ macro_rules! decl_module { $module:ident<$trait_instance:ident: $trait_name:ident>; $origin_ty:ty; root; + $(#[doc = $doc_attr:tt])* $vis:vis fn $name:ident ( root $(, $param:ident : $param_ty:ty )* ) { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { - #[doc(hidden)] + $(#[doc = $doc_attr])* $vis fn $name($( $param: $param_ty ),* ) -> $crate::dispatch::Result { { $( $impl )* } Ok(()) @@ -499,12 +500,13 @@ macro_rules! decl_module { $module:ident<$trait_instance:ident: $trait_name:ident>; $origin_ty:ty; root; + $(#[doc = $doc_attr:tt])* $vis:vis fn $name:ident ( root $(, $param:ident : $param_ty:ty )* ) -> $result:ty { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { - #[doc(hidden)] + $(#[doc = $doc_attr])* $vis fn $name($( $param: $param_ty ),* ) -> $result { $( $impl )* } @@ -515,12 +517,13 @@ macro_rules! decl_module { $module:ident<$trait_instance:ident: $trait_name:ident>; $origin_ty:ty; $ignore:ident; + $(#[doc = $doc_attr:tt])* $vis:vis fn $name:ident ( $origin:ident $(, $param:ident : $param_ty:ty )* ) { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { - #[doc(hidden)] + $(#[doc = $doc_attr])* $vis fn $name( $origin: $origin_ty $(, $param: $param_ty )* ) -> $crate::dispatch::Result { @@ -534,11 +537,13 @@ macro_rules! decl_module { $module:ident<$trait_instance:ident: $trait_name:ident>; $origin_ty:ty; $ignore:ident; + $(#[doc = $doc_attr:tt])* $vis:vis fn $name:ident ( $origin:ident $(, $param:ident : $param_ty:ty )* ) -> $result:ty { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name> $module<$trait_instance> { + $(#[doc = $doc_attr])* $vis fn $name($origin: $origin_ty $(, $param: $param_ty )* ) -> $result { $( $impl )* } @@ -602,6 +607,7 @@ macro_rules! decl_module { $mod_type<$trait_instance: $trait_name>; $origin_type; $from; + $(#[doc = $doc_attr])* $fn_vis fn $fn_name ( $from $(, $param_name : $param )* ) $( -> $result )* { $( $impl )* } -- GitLab From 7af4c9c9cd6b689db5bcba5b76edc18bca80c781 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Tue, 12 Mar 2019 15:43:22 +0100 Subject: [PATCH 018/120] Add a warning when banning or dropping reserved peers (#1976) --- core/network-libp2p/src/custom_proto/behaviour.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index db8fb27ad8..1332dfd0df 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -240,6 +240,11 @@ impl CustomProtos { /// Disconnects the given peer if we are connected to it. pub fn disconnect_peer(&mut self, peer: &PeerId) { + if self.reserved_peers.contains(peer) { + warn!(target: "sub-libp2p", "Ignored attempt to disconnect reserved peer {:?}", peer); + return; + } + if self.enabled_peers.remove(peer) { self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer.clone(), @@ -250,6 +255,11 @@ impl CustomProtos { /// Disconnects the given peer if we are connected to it and disables it for a little while. pub fn ban_peer(&mut self, peer_id: PeerId) { + if self.reserved_peers.contains(&peer_id) { + warn!(target: "sub-libp2p", "Ignored attempt to ban reserved peer {:?}", peer_id); + return; + } + // Peer is already banned if let Some(pos) = self.banned_peers.iter().position(|(p, _)| p == &peer_id) { if self.banned_peers[pos].1 > Instant::now() { -- GitLab From b36dedee182c869249e575e84cfbfa395dcd5de2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Wed, 13 Mar 2019 12:59:07 +0100 Subject: [PATCH 019/120] Make use of `assimilate_storage` for `GenesisConfig` (#1982) * Make use of `assimilate_storage` for `GenesisConfig` Fixes incorrect initialization of the staking gensis storage. * Add some documentation --- core/service/src/chain_spec.rs | 3 +++ core/sr-primitives/src/lib.rs | 23 +------------------ node/cli/src/chain_spec.rs | 7 ++++-- node/executor/src/lib.rs | 20 ++++++++-------- srml/staking/src/lib.rs | 1 + srml/staking/src/mock.rs | 11 ++++++++- .../procedural/src/storage/transformation.rs | 15 ------------ srml/support/src/runtime.rs | 5 ++++ 8 files changed, 35 insertions(+), 50 deletions(-) diff --git a/core/service/src/chain_spec.rs b/core/service/src/chain_spec.rs index ffd66b19a8..45b61f0eeb 100644 --- a/core/service/src/chain_spec.rs +++ b/core/service/src/chain_spec.rs @@ -72,6 +72,9 @@ impl<'a, G: RuntimeGenesis> BuildStorage for &'a ChainSpec { Genesis::Raw(map) => Ok((map.into_iter().map(|(k, v)| (k.0, v.0)).collect(), Default::default())), } } + fn assimilate_storage(self, _: &mut StorageOverlay, _: &mut ChildrenStorageOverlay) -> Result<(), String> { + Err("`assimilate_storage` not implemented for `ChainSpec`.".into()) + } } #[derive(Serialize, Deserialize)] diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index 618a4b969f..a06f3fc1b0 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -106,14 +106,7 @@ pub trait BuildStorage: Sized { Ok((storage, child_storage)) } /// Assimilate the storage for this module into pre-existing overlays. - fn assimilate_storage(self, storage: &mut StorageOverlay, child_storage: &mut ChildrenStorageOverlay) -> Result<(), String> { - let (s, cs) = self.build_storage()?; - storage.extend(s); - for (other_child_key, other_child_map) in cs { - child_storage.entry(other_child_key).or_default().extend(other_child_map); - } - Ok(()) - } + fn assimilate_storage(self, storage: &mut StorageOverlay, child_storage: &mut ChildrenStorageOverlay) -> Result<(), String>; } #[cfg(feature = "std")] @@ -429,20 +422,6 @@ macro_rules! impl_outer_config { )* Ok(()) } - fn build_storage(self) -> ::std::result::Result<($crate::StorageOverlay, $crate::ChildrenStorageOverlay), String> { - let mut top = $crate::StorageOverlay::new(); - let mut children = $crate::ChildrenStorageOverlay::new(); - $( - if let Some(extra) = self.$snake { - let (other_top, other_children) = extra.build_storage()?; - top.extend(other_top); - for (other_child_key, other_child_map) in other_children { - children.entry(other_child_key).or_default().extend(other_child_map); - } - } - )* - Ok((top, children)) - } } } } diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index b97ac10290..27441a9ecc 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -320,7 +320,7 @@ fn development_config_genesis() -> GenesisConfig { get_authority_keys_from_seed("Alice"), ], get_account_id_from_seed("Alice").into(), - None, + Some(vec![get_authority_keys_from_seed("Alice").0]), ) } @@ -336,7 +336,10 @@ fn local_testnet_genesis() -> GenesisConfig { get_authority_keys_from_seed("Bob"), ], get_account_id_from_seed("Alice").into(), - None, + Some(vec![ + get_authority_keys_from_seed("Alice").0, + get_authority_keys_from_seed("Bob").0, + ]), ) } diff --git a/node/executor/src/lib.rs b/node/executor/src/lib.rs index 5300ad565e..7db47236a8 100644 --- a/node/executor/src/lib.rs +++ b/node/executor/src/lib.rs @@ -41,7 +41,7 @@ mod tests { use node_primitives::{Hash, BlockNumber, AccountId}; use runtime_primitives::traits::{Header as HeaderT, Digest as DigestT, Hash as HashT}; use runtime_primitives::{generic, generic::Era, ApplyOutcome, ApplyError, ApplyResult, Perbill}; - use {balances, indices, staking, session, system, consensus, timestamp, treasury, contract}; + use {balances, indices, session, system, consensus, timestamp, treasury, contract}; use contract::ContractAddressFor; use system::{EventRecord, Phase}; use node_runtime::{Header, Block, UncheckedExtrinsic, CheckedExtrinsic, Call, Runtime, Balances, @@ -277,8 +277,8 @@ mod tests { (alice(), 111), (bob(), 100), (charlie(), 100_000_000), - (dave(), 100), - (eve(), 100), + (dave(), 111), + (eve(), 101), (ferdie(), 100), ], existential_deposit: 0, @@ -298,7 +298,7 @@ mod tests { staking: Some(StakingConfig { sessions_per_era: 2, current_era: 0, - stakers: vec![(dave(), alice(), 111), (eve(), bob(), 100), (ferdie(), charlie(), 100)], + stakers: vec![(dave(), alice(), 111), (eve(), bob(), 101), (ferdie(), charlie(), 100)], validator_count: 3, minimum_validator_count: 0, bonding_duration: 0, @@ -449,9 +449,9 @@ mod tests { let mut digest = generic::Digest::::default(); digest.push(Log::from(::grandpa::RawLog::AuthoritiesChangeSignal(0, vec![ - (Keyring::Charlie.to_raw_public().into(), 1), (Keyring::Alice.to_raw_public().into(), 1), (Keyring::Bob.to_raw_public().into(), 1), + (Keyring::Charlie.to_raw_public().into(), 1), ]))); assert_eq!(Header::decode(&mut &block2.0[..]).unwrap().digest, digest); @@ -531,7 +531,7 @@ mod tests { } ]); }); - + executor().call::<_, NeverNativeValue, fn() -> _>( &mut t, "Core_execute_block", @@ -543,7 +543,7 @@ mod tests { runtime_io::with_externalities(&mut t, || { // bob sends 5, alice sends 15 | bob += 10, alice -= 10 // 111 - 69 - 1 - 10 - 1 = 30 - assert_eq!(Balances::total_balance(&alice()), 111 - 69 - 1 - 10 - 1); + assert_eq!(Balances::total_balance(&alice()), 111 - 69 - 1 - 10 - 1); // 100 + 69 + 10 - 1 = 178 assert_eq!(Balances::total_balance(&bob()), 100 + 69 + 10 - 1); assert_eq!(System::events(), vec![ @@ -592,9 +592,9 @@ mod tests { EventRecord { phase: Phase::Finalization, event: Event::grandpa(::grandpa::RawEvent::NewAuthorities(vec![ - (Keyring::Charlie.to_raw_public().into(), 1), (Keyring::Alice.to_raw_public().into(), 1), (Keyring::Bob.to_raw_public().into(), 1), + (Keyring::Charlie.to_raw_public().into(), 1), ])), }, EventRecord { @@ -641,7 +641,7 @@ mod tests { runtime_io::with_externalities(&mut t, || { // bob sends 5, alice sends 15 | bob += 10, alice -= 10 // 111 - 69 - 1 - 10 - 1 = 30 - assert_eq!(Balances::total_balance(&alice()), 111 - 69 - 1 - 10 - 1); + assert_eq!(Balances::total_balance(&alice()), 111 - 69 - 1 - 10 - 1); // 100 + 69 + 10 - 1 = 178 assert_eq!(Balances::total_balance(&bob()), 100 + 69 + 10 - 1); }); @@ -896,7 +896,7 @@ mod tests { #[test] fn full_wasm_block_import_works_with_changes_trie() { let block1 = changes_trie_block(); - + let mut t = new_test_ext(COMPACT_CODE, true); WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "Core_execute_block", &block1.0).unwrap(); diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index 373bfd6563..221ba8966c 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -270,6 +270,7 @@ decl_storage! { build(|storage: &mut primitives::StorageOverlay, _: &mut primitives::ChildrenStorageOverlay, config: &GenesisConfig| { with_storage(storage, || { for &(ref stash, ref controller, balance) in &config.stakers { + assert!(T::Currency::free_balance(&stash) >= balance); let _ = >::bond(T::Origin::from(Some(stash.clone()).into()), T::Lookup::unlookup(controller.clone()), balance, RewardDestination::Staked); let _ = >::validate(T::Origin::from(Some(controller.clone()).into()), Default::default()); } diff --git a/srml/staking/src/mock.rs b/srml/staking/src/mock.rs index 529c8b625f..2934022a07 100644 --- a/srml/staking/src/mock.rs +++ b/srml/staking/src/mock.rs @@ -137,7 +137,16 @@ impl ExtBuilder { let _ = balances::GenesisConfig::{ balances: if self.monied { if self.reward > 0 { - vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 300 * balance_factor), (4, 400 * balance_factor), (10, balance_factor), (11, balance_factor * 1000), (20, balance_factor), (21, balance_factor * 2000)] + vec![ + (1, 10 * balance_factor), + (2, 20 * balance_factor), + (3, 300 * balance_factor), + (4, 400 * balance_factor), + (10, balance_factor), + (11, balance_factor * 1000), + (20, balance_factor), + (21, balance_factor * 2000) + ] } else { vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 300 * balance_factor), (4, 400 * balance_factor)] } diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index 111b42fb4c..fc5ba7b721 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -389,21 +389,6 @@ fn decl_store_extra_genesis( #[cfg(feature = "std")] impl#fparam #scrate::runtime_primitives::BuildStorage for GenesisConfig#sparam { - - fn build_storage(self) -> ::std::result::Result<(#scrate::runtime_primitives::StorageOverlay, #scrate::runtime_primitives::ChildrenStorageOverlay), String> { - let mut r: #scrate::runtime_primitives::StorageOverlay = Default::default(); - let mut c: #scrate::runtime_primitives::ChildrenStorageOverlay = Default::default(); - - { - use #scrate::rstd::{cell::RefCell, marker::PhantomData}; - let storage = (RefCell::new(&mut r), PhantomData::::default()); - #builders - } - - #scall(&mut r, &mut c, &self); - - Ok((r, c)) - } 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()); diff --git a/srml/support/src/runtime.rs b/srml/support/src/runtime.rs index 6fc3a96069..dd48509451 100644 --- a/srml/support/src/runtime.rs +++ b/srml/support/src/runtime.rs @@ -62,6 +62,11 @@ /// - `Inherent $( (CALL) )*` - If the module provides/can check inherents. The optional parameter /// is for modules that use a `Call` from a different module as /// inherent. +/// +/// # Note +/// +/// The population of the genesis storage depends on the order of modules. So, if one of your +/// modules depends on another module. The dependent module need to come before the module depending on it. #[macro_export] macro_rules! construct_runtime { -- GitLab From 8930f297737db67257f3be1a8b286f8c50189066 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Wed, 13 Mar 2019 14:08:31 +0100 Subject: [PATCH 020/120] Overhaul crypto (Schnorr/Ristretto, HDKD, BIP39) (#1795) * Rijig to Ristretto * Rebuild wasm * adds compatibility test with the wasm module * Add Ed25519-BIP39 support * Bump subkey version * Update CLI output * New keys. * Standard phrase/password/path keys. * Subkey uses S-URI for secrets * Move everything to use new HDKD crypto. * Test fixes * Ignore old test vector. * fix the ^^ old test vector. * Fix tests * Test fixes * Cleanups * Fix broken key conversion logic in grandpa CC @rphmeier * Remove legacy Keyring usage * Traitify `Pair` * Replace Ed25519AuthorityId with ed25519::Public * Expunge Ed25519AuthorityId type! * Replace Sr25519AuthorityId with sr25519::Public * Remove dodgy crypto type-punning conversions * Fix some tests * Avoid trait * Deduplicate DeriveJunction string decode * Remove cruft code * Fix test * Minor removals * Build fix * Subkey supports sign and verify * Inspect works for public key URIs * Remove more crypto type-punning * Fix typo * Fix tests --- Cargo.lock | 9 +- build.rs | 2 +- core/basic-authorship/src/basic_authorship.rs | 7 +- core/cli/src/lib.rs | 5 +- core/client/db/src/light.rs | 87 +-- core/client/src/client.rs | 75 +- core/client/src/genesis.rs | 42 +- core/client/src/light/backend.rs | 2 +- core/client/src/light/fetcher.rs | 11 +- core/consensus/aura/src/lib.rs | 46 +- core/consensus/common/src/error.rs | 5 +- core/consensus/common/src/offline_tracker.rs | 20 +- core/consensus/rhd/src/lib.rs | 60 +- core/consensus/rhd/src/misbehaviour_check.rs | 27 +- core/executor/src/wasm_executor.rs | 12 +- core/finality-grandpa/primitives/src/lib.rs | 8 +- core/finality-grandpa/src/authorities.rs | 28 +- core/finality-grandpa/src/aux_schema.rs | 12 +- core/finality-grandpa/src/communication.rs | 27 +- core/finality-grandpa/src/environment.rs | 8 +- core/finality-grandpa/src/finality_proof.rs | 25 +- core/finality-grandpa/src/import.rs | 12 +- core/finality-grandpa/src/justification.rs | 8 +- core/finality-grandpa/src/lib.rs | 28 +- core/finality-grandpa/src/tests.rs | 72 +- core/finality-grandpa/src/until_imported.rs | 4 +- core/keyring/src/ed25519.rs | 52 +- core/keyring/src/lib.rs | 16 +- core/keyring/src/sr25519.rs | 52 +- core/keystore/src/lib.rs | 179 +---- core/network/src/test/mod.rs | 13 +- core/primitives/Cargo.toml | 4 + core/primitives/src/authority_id.rs | 96 --- core/primitives/src/crypto.rs | 486 +++++++++++++ core/primitives/src/ed25519.rs | 601 +++++++++++----- core/primitives/src/lib.rs | 14 +- core/primitives/src/sr25519.rs | 652 ++++++++++-------- core/rpc/Cargo.toml | 2 + core/rpc/src/author/tests.rs | 38 +- core/rpc/src/state/tests.rs | 31 +- core/service/src/components.rs | 11 +- core/service/src/lib.rs | 3 +- core/sr-io/with_std.rs | 8 +- core/sr-primitives/src/generic/digest.rs | 30 +- core/sr-primitives/src/generic/tests.rs | 10 +- core/sr-primitives/src/lib.rs | 79 ++- core/sr-primitives/src/testing.rs | 18 +- core/sr-primitives/src/traits.rs | 33 +- core/state-machine/src/ext.rs | 2 +- core/test-client/src/block_builder_ext.rs | 7 +- core/test-client/src/lib.rs | 17 +- core/test-client/src/trait_tests.rs | 39 +- core/test-runtime/Cargo.toml | 1 + core/test-runtime/src/genesismap.rs | 19 +- core/test-runtime/src/lib.rs | 22 +- core/test-runtime/src/system.rs | 149 ++-- core/test-runtime/wasm/Cargo.lock | 72 +- .../substrate_test_runtime.compact.wasm | Bin 55903 -> 56845 bytes core/transaction-pool/graph/src/pool.rs | 90 +-- core/transaction-pool/src/tests.rs | 7 +- node-template/build.rs | 2 +- node-template/runtime/src/lib.rs | 31 +- node-template/runtime/wasm/Cargo.lock | 95 ++- node-template/src/chain_spec.rs | 45 +- node-template/src/service.rs | 2 +- node/cli/src/chain_spec.rs | 98 +-- node/cli/src/service.rs | 2 +- node/executor/src/lib.rs | 65 +- node/primitives/src/lib.rs | 14 +- node/runtime/src/lib.rs | 26 +- node/runtime/wasm/Cargo.lock | 73 +- .../release/node_runtime.compact.wasm | Bin 888467 -> 879134 bytes srml/consensus/src/lib.rs | 4 +- srml/contract/src/lib.rs | 5 +- srml/contract/src/wasm/mod.rs | 4 +- srml/grandpa/Cargo.toml | 2 + srml/grandpa/src/lib.rs | 31 +- srml/grandpa/src/tests.rs | 1 + srml/session/src/lib.rs | 9 +- subkey/Cargo.toml | 3 +- subkey/src/cli.yml | 51 +- subkey/src/main.rs | 156 +++-- subkey/src/vanity.rs | 5 +- 83 files changed, 2584 insertions(+), 1635 deletions(-) delete mode 100644 core/primitives/src/authority_id.rs create mode 100644 core/primitives/src/crypto.rs diff --git a/Cargo.lock b/Cargo.lock index 58af885709..0da61066df 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3269,6 +3269,7 @@ dependencies = [ "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-std 0.1.0", + "srml-consensus 0.1.0", "srml-finality-tracker 0.1.0", "srml-session 0.1.0", "srml-support 0.1.0", @@ -3576,9 +3577,10 @@ dependencies = [ [[package]] name = "subkey" -version = "0.1.0" +version = "0.2.0" dependencies = [ "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hex 0.3.2 (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)", "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", @@ -3981,12 +3983,14 @@ dependencies = [ "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)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", "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)", + "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", @@ -4020,6 +4024,7 @@ dependencies = [ "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)", + "sr-io 0.1.0", "sr-primitives 0.1.0", "sr-version 0.1.0", "substrate-client 0.1.0", @@ -4029,6 +4034,7 @@ dependencies = [ "substrate-primitives 0.1.0", "substrate-state-machine 0.1.0", "substrate-test-client 0.1.0", + "substrate-test-runtime 0.1.0", "substrate-transaction-pool 0.1.0", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -4187,6 +4193,7 @@ dependencies = [ "substrate-inherents 0.1.0", "substrate-keyring 0.1.0", "substrate-primitives 0.1.0", + "substrate-test-client 0.1.0", ] [[package]] diff --git a/build.rs b/build.rs index 9981ae31d7..273700c525 100644 --- a/build.rs +++ b/build.rs @@ -16,7 +16,7 @@ use vergen::{ConstantsFlags, generate_cargo_keys}; -const ERROR_MSG: &'static str = "Failed to generate metadata files"; +const ERROR_MSG: &str = "Failed to generate metadata files"; fn main() { generate_cargo_keys(ConstantsFlags::all()).expect(ERROR_MSG); diff --git a/core/basic-authorship/src/basic_authorship.rs b/core/basic-authorship/src/basic_authorship.rs index f074b739ff..71114ad2da 100644 --- a/core/basic-authorship/src/basic_authorship.rs +++ b/core/basic-authorship/src/basic_authorship.rs @@ -273,17 +273,16 @@ mod tests { use codec::Encode; use std::cell::RefCell; use consensus_common::{Environment, Proposer}; - use test_client::keyring::Keyring; - use test_client::{self, runtime::{Extrinsic, Transfer}}; + use test_client::{self, runtime::{Extrinsic, Transfer}, AccountKeyring}; fn extrinsic(nonce: u64) -> Extrinsic { let tx = Transfer { amount: Default::default(), nonce, - from: Keyring::Alice.to_raw_public().into(), + from: AccountKeyring::Alice.into(), to: Default::default(), }; - let signature = Keyring::from_raw_public(tx.from.to_fixed_bytes()).unwrap().sign(&tx.encode()).into(); + let signature = AccountKeyring::from_public(&tx.from).unwrap().sign(&tx.encode()).into(); Extrinsic::Transfer(tx, signature) } diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index 88d9b5728d..864fda3805 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -63,6 +63,9 @@ use substrate_telemetry::TelemetryEndpoints; const MAX_NODE_NAME_LENGTH: usize = 32; +/// The root phrase for our development network keys. +pub const DEV_PHRASE: &str = "bottom drive obey lake curtain smoke basket hold race lonely fit walk"; + /// Executable version. Used to pass version information from the root crate. pub struct VersionInfo { /// Implemtation name. @@ -387,7 +390,7 @@ where } if cli.shared_params.dev { - config.keys.push("Alice".into()); + config.keys.push(format!("{}//Alice", DEV_PHRASE)); } let rpc_interface: &str = if cli.rpc_external { "0.0.0.0" } else { "127.0.0.1" }; diff --git a/core/client/db/src/light.rs b/core/client/db/src/light.rs index 7162971b36..d99ef503b2 100644 --- a/core/client/db/src/light.rs +++ b/core/client/db/src/light.rs @@ -541,6 +541,7 @@ pub(crate) mod tests { use super::*; type Block = RawBlock>; + type AuthorityId = AuthorityIdFor; pub fn default_header(parent: &Hash, number: u64) -> Header { Header { @@ -831,10 +832,10 @@ pub(crate) mod tests { let checks = vec![ (0, None), (1, None), - (2, Some(vec![[1u8; 32].into()])), - (3, Some(vec![[1u8; 32].into()])), - (4, Some(vec![[1u8; 32].into(), [2u8; 32].into()])), - (5, Some(vec![[1u8; 32].into(), [2u8; 32].into()])), + (2, Some(vec![AuthorityId::from_raw([1u8; 32])])), + (3, Some(vec![AuthorityId::from_raw([1u8; 32])])), + (4, Some(vec![AuthorityId::from_raw([1u8; 32]), AuthorityId::from_raw([2u8; 32])])), + (5, Some(vec![AuthorityId::from_raw([1u8; 32]), AuthorityId::from_raw([2u8; 32])])), (6, None), (7, None), // block will work for 'future' block too ]; @@ -843,13 +844,13 @@ pub(crate) mod tests { run_checks(&db, 0, &checks); let hash1 = insert_final_block(&db, None, || default_header(&hash0, 1)); run_checks(&db, 1, &checks); - let hash2 = insert_final_block(&db, Some(vec![[1u8; 32].into()]), || default_header(&hash1, 2)); + let hash2 = insert_final_block(&db, Some(vec![AuthorityId::from_raw([1u8; 32])]), || default_header(&hash1, 2)); run_checks(&db, 2, &checks); - let hash3 = insert_final_block(&db, Some(vec![[1u8; 32].into()]), || default_header(&hash2, 3)); + let hash3 = insert_final_block(&db, Some(vec![AuthorityId::from_raw([1u8; 32])]), || default_header(&hash2, 3)); run_checks(&db, 3, &checks); - let hash4 = insert_final_block(&db, Some(vec![[1u8; 32].into(), [2u8; 32].into()]), || default_header(&hash3, 4)); + let hash4 = insert_final_block(&db, Some(vec![AuthorityId::from_raw([1u8; 32]), AuthorityId::from_raw([2u8; 32])]), || default_header(&hash3, 4)); run_checks(&db, 4, &checks); - let hash5 = insert_final_block(&db, Some(vec![[1u8; 32].into(), [2u8; 32].into()]), || default_header(&hash4, 5)); + let hash5 = insert_final_block(&db, Some(vec![AuthorityId::from_raw([1u8; 32]), AuthorityId::from_raw([2u8; 32])]), || default_header(&hash4, 5)); run_checks(&db, 5, &checks); let hash6 = insert_final_block(&db, None, || default_header(&hash5, 6)); run_checks(&db, 7, &checks); @@ -861,9 +862,9 @@ pub(crate) mod tests { // some older non-best blocks are inserted // ... -> B2(1) -> B2_1(1) -> B2_2(2) // => the cache ignores all writes before best finalized block - let hash2_1 = insert_non_best_block(&db, Some(vec![[1u8; 32].into()]), || default_header(&hash2, 3)); + let hash2_1 = insert_non_best_block(&db, Some(vec![AuthorityId::from_raw([1u8; 32])]), || default_header(&hash2, 3)); assert_eq!(None, db.cache().authorities_at(BlockId::Hash(hash2_1))); - let hash2_2 = insert_non_best_block(&db, Some(vec![[1u8; 32].into(), [2u8; 32].into()]), || default_header(&hash2_1, 4)); + let hash2_2 = insert_non_best_block(&db, Some(vec![AuthorityId::from_raw([1u8; 32]), AuthorityId::from_raw([2u8; 32])]), || default_header(&hash2_1, 4)); assert_eq!(None, db.cache().authorities_at(BlockId::Hash(hash2_2))); } @@ -874,39 +875,39 @@ pub(crate) mod tests { // \> B6_1_1(5) // \> B6_1_2(6) -> B6_1_3(7) - let hash7 = insert_block(&db, Some(vec![[3u8; 32].into()]), || default_header(&hash6, 7)); + let hash7 = insert_block(&db, Some(vec![AuthorityId::from_raw([3u8; 32])]), || default_header(&hash6, 7)); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![[3u8; 32].into()])); - let hash8 = insert_block(&db, Some(vec![[3u8; 32].into()]), || default_header(&hash7, 8)); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + let hash8 = insert_block(&db, Some(vec![AuthorityId::from_raw([3u8; 32])]), || default_header(&hash7, 8)); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![[3u8; 32].into()])); - let hash6_1 = insert_block(&db, Some(vec![[4u8; 32].into()]), || default_header(&hash6, 7)); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + let hash6_1 = insert_block(&db, Some(vec![AuthorityId::from_raw([4u8; 32])]), || default_header(&hash6, 7)); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![[4u8; 32].into()])); - let hash6_1_1 = insert_non_best_block(&db, Some(vec![[5u8; 32].into()]), || default_header(&hash6_1, 8)); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![AuthorityId::from_raw([4u8; 32])])); + let hash6_1_1 = insert_non_best_block(&db, Some(vec![AuthorityId::from_raw([5u8; 32])]), || default_header(&hash6_1, 8)); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![[4u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), Some(vec![[5u8; 32].into()])); - let hash6_1_2 = insert_non_best_block(&db, Some(vec![[6u8; 32].into()]), || default_header(&hash6_1, 8)); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![AuthorityId::from_raw([4u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), Some(vec![AuthorityId::from_raw([5u8; 32])])); + let hash6_1_2 = insert_non_best_block(&db, Some(vec![AuthorityId::from_raw([6u8; 32])]), || default_header(&hash6_1, 8)); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![[4u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), Some(vec![[5u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_2)), Some(vec![[6u8; 32].into()])); - let hash6_2 = insert_block(&db, Some(vec![[4u8; 32].into()]), || default_header(&hash6_1, 8)); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![AuthorityId::from_raw([4u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), Some(vec![AuthorityId::from_raw([5u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_2)), Some(vec![AuthorityId::from_raw([6u8; 32])])); + let hash6_2 = insert_block(&db, Some(vec![AuthorityId::from_raw([4u8; 32])]), || default_header(&hash6_1, 8)); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![[3u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![[4u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), Some(vec![[5u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_2)), Some(vec![[6u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_2)), Some(vec![[4u8; 32].into()])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), Some(vec![AuthorityId::from_raw([3u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![AuthorityId::from_raw([4u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), Some(vec![AuthorityId::from_raw([5u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_2)), Some(vec![AuthorityId::from_raw([6u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_2)), Some(vec![AuthorityId::from_raw([4u8; 32])])); (hash7, hash8, hash6_1, hash6_2, hash6_1_1, hash6_1_2) }; @@ -917,19 +918,19 @@ pub(crate) mod tests { assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6)), None); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), None); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![[4u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), Some(vec![[5u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_2)), Some(vec![[6u8; 32].into()])); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_2)), Some(vec![[4u8; 32].into()])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![AuthorityId::from_raw([4u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), Some(vec![AuthorityId::from_raw([5u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_2)), Some(vec![AuthorityId::from_raw([6u8; 32])])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_2)), Some(vec![AuthorityId::from_raw([4u8; 32])])); // finalize block hash6_2 db.finalize_header(BlockId::Hash(hash6_2)).unwrap(); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6)), None); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash7)), None); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash8)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![[4u8; 32].into()])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1)), Some(vec![AuthorityId::from_raw([4u8; 32])])); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_1)), None); assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_1_2)), None); - assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_2)), Some(vec![[4u8; 32].into()])); + assert_eq!(db.cache().authorities_at(BlockId::Hash(hash6_2)), Some(vec![AuthorityId::from_raw([4u8; 32])])); } } diff --git a/core/client/src/client.rs b/core/client/src/client.rs index 23a6061e36..34723deb8c 100644 --- a/core/client/src/client.rs +++ b/core/client/src/client.rs @@ -1520,11 +1520,10 @@ impl backend::AuxStore for Client pub(crate) mod tests { use std::collections::HashMap; use super::*; - use keyring::Keyring; use primitives::twox_128; use runtime_primitives::traits::DigestItem as DigestItemT; use runtime_primitives::generic::DigestItem; - use test_client::{self, TestClient}; + use test_client::{self, TestClient, AccountKeyring, AuthorityKeyring}; use consensus::BlockOrigin; use test_client::client::backend::Backend as TestBackend; use test_client::BlockBuilderExt; @@ -1541,10 +1540,10 @@ pub(crate) mod tests { ) { // prepare block structure let blocks_transfers = vec![ - vec![(Keyring::Alice, Keyring::Dave), (Keyring::Bob, Keyring::Dave)], - vec![(Keyring::Charlie, Keyring::Eve)], + vec![(AccountKeyring::Alice, AccountKeyring::Dave), (AccountKeyring::Bob, AccountKeyring::Dave)], + vec![(AccountKeyring::Charlie, AccountKeyring::Eve)], vec![], - vec![(Keyring::Alice, Keyring::Dave)], + vec![(AccountKeyring::Alice, AccountKeyring::Dave)], ]; // prepare client ang import blocks @@ -1555,8 +1554,8 @@ pub(crate) mod tests { let mut builder = remote_client.new_block().unwrap(); for (from, to) in block_transfers { builder.push_transfer(Transfer { - from: from.to_raw_public().into(), - to: to.to_raw_public().into(), + from: from.into(), + to: to.into(), amount: 1, nonce: *nonces.entry(from).and_modify(|n| { *n = *n + 1 }).or_default(), }).unwrap(); @@ -1571,12 +1570,12 @@ pub(crate) mod tests { } // prepare test cases - let alice = twox_128(&runtime::system::balance_of_key(Keyring::Alice.to_raw_public().into())).to_vec(); - let bob = twox_128(&runtime::system::balance_of_key(Keyring::Bob.to_raw_public().into())).to_vec(); - let charlie = twox_128(&runtime::system::balance_of_key(Keyring::Charlie.to_raw_public().into())).to_vec(); - let dave = twox_128(&runtime::system::balance_of_key(Keyring::Dave.to_raw_public().into())).to_vec(); - let eve = twox_128(&runtime::system::balance_of_key(Keyring::Eve.to_raw_public().into())).to_vec(); - let ferdie = twox_128(&runtime::system::balance_of_key(Keyring::Ferdie.to_raw_public().into())).to_vec(); + let alice = twox_128(&runtime::system::balance_of_key(AccountKeyring::Alice.into())).to_vec(); + let bob = twox_128(&runtime::system::balance_of_key(AccountKeyring::Bob.into())).to_vec(); + let charlie = twox_128(&runtime::system::balance_of_key(AccountKeyring::Charlie.into())).to_vec(); + let dave = twox_128(&runtime::system::balance_of_key(AccountKeyring::Dave.into())).to_vec(); + let eve = twox_128(&runtime::system::balance_of_key(AccountKeyring::Eve.into())).to_vec(); + let ferdie = twox_128(&runtime::system::balance_of_key(AccountKeyring::Ferdie.into())).to_vec(); let test_cases = vec![ (1, 4, alice.clone(), vec![(4, 0), (1, 0)]), (1, 3, alice.clone(), vec![(1, 0)]), @@ -1610,14 +1609,14 @@ pub(crate) mod tests { assert_eq!( client.runtime_api().balance_of( &BlockId::Number(client.info().unwrap().chain.best_number), - Keyring::Alice.to_raw_public().into() + AccountKeyring::Alice.into() ).unwrap(), 1000 ); assert_eq!( client.runtime_api().balance_of( &BlockId::Number(client.info().unwrap().chain.best_number), - Keyring::Ferdie.to_raw_public().into() + AccountKeyring::Ferdie.into() ).unwrap(), 0 ); @@ -1629,9 +1628,9 @@ pub(crate) mod tests { assert_eq!(client.info().unwrap().chain.best_number, 0); assert_eq!(client.authorities_at(&BlockId::Number(0)).unwrap(), vec![ - Keyring::Alice.to_raw_public().into(), - Keyring::Bob.to_raw_public().into(), - Keyring::Charlie.to_raw_public().into() + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Bob.into(), + AuthorityKeyring::Charlie.into() ]); } @@ -1653,8 +1652,8 @@ pub(crate) mod tests { let mut builder = client.new_block().unwrap(); builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 42, nonce: 0, }).unwrap(); @@ -1666,14 +1665,14 @@ pub(crate) mod tests { assert_eq!( client.runtime_api().balance_of( &BlockId::Number(client.info().unwrap().chain.best_number), - Keyring::Alice.to_raw_public().into() + AccountKeyring::Alice.into() ).unwrap(), 958 ); assert_eq!( client.runtime_api().balance_of( &BlockId::Number(client.info().unwrap().chain.best_number), - Keyring::Ferdie.to_raw_public().into() + AccountKeyring::Ferdie.into() ).unwrap(), 42 ); @@ -1695,15 +1694,15 @@ pub(crate) mod tests { let mut builder = client.new_block().unwrap(); builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 42, nonce: 0, }).unwrap(); assert!(builder.push_transfer(Transfer { - from: Keyring::Eve.to_raw_public().into(), - to: Keyring::Alice.to_raw_public().into(), + from: AccountKeyring::Eve.into(), + to: AccountKeyring::Alice.into(), amount: 42, nonce: 0, }).is_err()); @@ -1789,8 +1788,8 @@ pub(crate) mod tests { let mut builder = client.new_block_at(&BlockId::Hash(a1.hash())).unwrap(); // this push is required as otherwise B2 has the same hash as A2 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 41, nonce: 0, }).unwrap(); @@ -1809,8 +1808,8 @@ pub(crate) mod tests { let mut builder = client.new_block_at(&BlockId::Hash(b2.hash())).unwrap(); // this push is required as otherwise C3 has the same hash as B3 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 1, nonce: 1, }).unwrap(); @@ -1821,8 +1820,8 @@ pub(crate) mod tests { let mut builder = client.new_block_at(&BlockId::Hash(a1.hash())).unwrap(); // this push is required as otherwise D2 has the same hash as B2 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 1, nonce: 0, }).unwrap(); @@ -1910,8 +1909,8 @@ pub(crate) mod tests { let mut builder = client.new_block_at(&BlockId::Hash(a1.hash())).unwrap(); // this push is required as otherwise B2 has the same hash as A2 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 41, nonce: 0, }).unwrap(); @@ -1930,8 +1929,8 @@ pub(crate) mod tests { let mut builder = client.new_block_at(&BlockId::Hash(b2.hash())).unwrap(); // this push is required as otherwise C3 has the same hash as B3 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 1, nonce: 1, }).unwrap(); @@ -1942,8 +1941,8 @@ pub(crate) mod tests { let mut builder = client.new_block_at(&BlockId::Hash(a1.hash())).unwrap(); // this push is required as otherwise D2 has the same hash as B2 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 1, nonce: 0, }).unwrap(); diff --git a/core/client/src/genesis.rs b/core/client/src/genesis.rs index 77861a606d..9ee0033685 100644 --- a/core/client/src/genesis.rs +++ b/core/client/src/genesis.rs @@ -41,14 +41,16 @@ pub fn construct_genesis_block< mod tests { use super::*; use parity_codec::{Encode, Decode, Joiner}; - use keyring::Keyring; use executor::{NativeExecutionDispatch, native_executor_instance}; use state_machine::{self, OverlayedChanges, ExecutionStrategy, InMemoryChangesTrieStorage}; use state_machine::backend::InMemory; - use test_client::runtime::genesismap::{GenesisConfig, additional_storage_with_genesis}; - use test_client::runtime::{Hash, Transfer, Block, BlockNumber, Header, Digest, Extrinsic}; + use test_client::{ + runtime::genesismap::{GenesisConfig, additional_storage_with_genesis}, + runtime::{Hash, Transfer, Block, BlockNumber, Header, Digest, Extrinsic}, + AccountKeyring, AuthorityKeyring + }; use runtime_primitives::traits::BlakeTwo256; - use primitives::{Blake2Hasher, ed25519::{Public, Pair}}; + use primitives::Blake2Hasher; use hex::*; native_executor_instance!(Executor, test_client::runtime::api::dispatch, test_client::runtime::native_version, include_bytes!("../../test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm")); @@ -67,7 +69,7 @@ mod tests { use trie::ordered_trie_root; let transactions = txs.into_iter().map(|tx| { - let signature = Pair::from(Keyring::from_public(Public::from_raw(tx.from.to_fixed_bytes())).unwrap()) + let signature = AccountKeyring::from_public(&tx.from).unwrap() .sign(&tx.encode()).into(); Extrinsic::Transfer(tx, signature) @@ -75,7 +77,6 @@ mod tests { let extrinsics_root = ordered_trie_root::(transactions.iter().map(Encode::encode)).into(); - println!("root before: {:?}", extrinsics_root); let mut header = Header { parent_hash, number, @@ -121,7 +122,6 @@ mod tests { ExecutionStrategy::NativeElseWasm, ).unwrap(); header = Header::decode(&mut &ret_data[..]).unwrap(); - println!("root after: {:?}", header.extrinsics_root); (vec![].and(&Block { header, extrinsics: transactions }), hash) } @@ -133,8 +133,8 @@ mod tests { genesis_hash, hex!("25e5b37074063ab75c889326246640729b40d0c86932edc527bc80db0e04fe5c").into(), vec![Transfer { - from: Keyring::One.to_raw_public().into(), - to: Keyring::Two.to_raw_public().into(), + from: AccountKeyring::One.into(), + to: AccountKeyring::Two.into(), amount: 69, nonce: 0, }] @@ -143,8 +143,10 @@ mod tests { #[test] fn construct_genesis_should_work_with_native() { - let mut storage = GenesisConfig::new_simple( - vec![Keyring::One.to_raw_public().into(), Keyring::Two.to_raw_public().into()], 1000 + let mut storage = GenesisConfig::new(false, + vec![AuthorityKeyring::One.into(), AuthorityKeyring::Two.into()], + vec![AccountKeyring::One.into(), AccountKeyring::Two.into()], + 1000 ).genesis_map(); let state_root = BlakeTwo256::trie_root(storage.clone().into_iter()); let block = construct_genesis_block::(state_root); @@ -169,8 +171,10 @@ mod tests { #[test] fn construct_genesis_should_work_with_wasm() { - let mut storage = GenesisConfig::new_simple( - vec![Keyring::One.to_raw_public().into(), Keyring::Two.to_raw_public().into()], 1000 + let mut storage = GenesisConfig::new(false, + vec![AuthorityKeyring::One.into(), AuthorityKeyring::Two.into()], + vec![AccountKeyring::One.into(), AccountKeyring::Two.into()], + 1000 ).genesis_map(); let state_root = BlakeTwo256::trie_root(storage.clone().into_iter()); let block = construct_genesis_block::(state_root); @@ -194,10 +198,11 @@ mod tests { } #[test] - #[should_panic] fn construct_genesis_with_bad_transaction_should_panic() { - let mut storage = GenesisConfig::new_simple( - vec![Keyring::One.to_raw_public().into(), Keyring::Two.to_raw_public().into()], 68 + let mut storage = GenesisConfig::new(false, + vec![AuthorityKeyring::One.into(), AuthorityKeyring::Two.into()], + vec![AccountKeyring::One.into(), AccountKeyring::Two.into()], + 68 ).genesis_map(); let state_root = BlakeTwo256::trie_root(storage.clone().into_iter()); let block = construct_genesis_block::(state_root); @@ -208,7 +213,7 @@ mod tests { let (b1data, _b1hash) = block1(genesis_hash, &backend); let mut overlay = OverlayedChanges::default(); - let _ = state_machine::new( + let r = state_machine::new( &backend, Some(&InMemoryChangesTrieStorage::new()), &mut overlay, @@ -217,6 +222,7 @@ mod tests { &b1data, ).execute( ExecutionStrategy::NativeElseWasm, - ).unwrap(); + ); + assert!(r.is_err()); } } diff --git a/core/client/src/light/backend.rs b/core/client/src/light/backend.rs index 03d83c4e30..a00d42e673 100644 --- a/core/client/src/light/backend.rs +++ b/core/client/src/light/backend.rs @@ -35,7 +35,7 @@ use hash_db::Hasher; use trie::MemoryDB; use heapsize::HeapSizeOf; -const IN_MEMORY_EXPECT_PROOF: &'static str = "InMemory state backend has Void error type and always suceeds; qed"; +const IN_MEMORY_EXPECT_PROOF: &str = "InMemory state backend has Void error type and always suceeds; qed"; /// Light client backend. pub struct Backend { diff --git a/core/client/src/light/fetcher.rs b/core/client/src/light/fetcher.rs index f9b28da054..bb6624f91f 100644 --- a/core/client/src/light/fetcher.rs +++ b/core/client/src/light/fetcher.rs @@ -390,12 +390,13 @@ impl<'a, H, Number, Hash> ChangesTrieRootsStorage for RootsStorage<'a, Number pub mod tests { use futures::future::{ok, err, FutureResult}; use parking_lot::Mutex; - use keyring::Keyring; use crate::client::tests::prepare_client_with_key_changes; use executor::{self, NativeExecutionDispatch}; use crate::error::Error as ClientError; - use test_client::{self, TestClient, blockchain::HeaderBackend}; - use test_client::runtime::{self, Hash, Block, Header}; + use test_client::{ + self, TestClient, blockchain::HeaderBackend, AccountKeyring, + runtime::{self, Hash, Block, Header} + }; use consensus::BlockOrigin; use crate::in_mem::{Blockchain as InMemoryBlockchain}; @@ -583,7 +584,7 @@ pub mod tests { // we're testing this test case here: // (1, 4, dave.clone(), vec![(4, 0), (1, 1), (1, 0)]), let (remote_client, remote_roots, _) = prepare_client_with_key_changes(); - let dave = twox_128(&runtime::system::balance_of_key(Keyring::Dave.to_raw_public().into())).to_vec(); + let dave = twox_128(&runtime::system::balance_of_key(AccountKeyring::Dave.into())).to_vec(); let dave = StorageKey(dave); // 'fetch' changes proof from remote node: @@ -695,7 +696,7 @@ pub mod tests { let (remote_client, remote_roots, _) = prepare_client_with_key_changes(); let local_cht_root = cht::compute_root::( 4, 0, remote_roots.iter().cloned().map(|ct| Ok(Some(ct)))).unwrap(); - let dave = twox_128(&runtime::system::balance_of_key(Keyring::Dave.to_raw_public().into())).to_vec(); + let dave = twox_128(&runtime::system::balance_of_key(AccountKeyring::Dave.into())).to_vec(); let dave = StorageKey(dave); // 'fetch' changes proof from remote node: diff --git a/core/consensus/aura/src/lib.rs b/core/consensus/aura/src/lib.rs index a2e1c3f871..3990535401 100644 --- a/core/consensus/aura/src/lib.rs +++ b/core/consensus/aura/src/lib.rs @@ -41,7 +41,7 @@ use runtime_primitives::{generic, generic::BlockId, Justification}; use runtime_primitives::traits::{ Block, Header, Digest, DigestItemFor, DigestItem, ProvideRuntimeApi }; -use primitives::{Ed25519AuthorityId, ed25519}; +use primitives::{ed25519, Pair}; use inherents::{InherentDataProviders, InherentData, RuntimeString}; use futures::{Stream, Future, IntoFuture, future}; @@ -60,6 +60,9 @@ pub use aura_slots::SlotDuration; pub use aura_primitives::*; pub use consensus_common::SyncOracle; +type AuthorityId = ed25519::Public; +type Signature = ed25519::Signature; + /// A handle to the network. This is generally implemented by providing some /// handle to a gossip service or similar. /// @@ -73,16 +76,17 @@ pub trait Network: Clone { } /// Get slot author for given block along with authorities. -fn slot_author(slot_num: u64, authorities: &[Ed25519AuthorityId]) -> Option { +fn slot_author(slot_num: u64, authorities: &[AuthorityId]) -> Option { if authorities.is_empty() { return None } let idx = slot_num % (authorities.len() as u64); assert!(idx <= usize::max_value() as u64, "It is impossible to have a vector with length beyond the address space; qed"); - let current_author = *authorities.get(idx as usize) + let current_author = authorities.get(idx as usize) .expect("authorities not empty; index constrained to list length;\ - this is a valid index; qed"); + this is a valid index; qed") + .clone(); Some(current_author) } @@ -109,22 +113,22 @@ fn inherent_to_common_error(err: RuntimeString) -> consensus_common::Error { pub trait CompatibleDigestItem: Sized { /// Construct a digest item which is a slot number and a signature on the /// hash. - fn aura_seal(slot_number: u64, signature: ed25519::Signature) -> Self; + fn aura_seal(slot_number: u64, signature: Signature) -> Self; /// If this item is an Aura seal, return the slot number and signature. - fn as_aura_seal(&self) -> Option<(u64, &ed25519::Signature)>; + fn as_aura_seal(&self) -> Option<(u64, Signature)>; } -impl CompatibleDigestItem for generic::DigestItem { +impl CompatibleDigestItem for generic::DigestItem { /// Construct a digest item which is a slot number and a signature on the /// hash. - fn aura_seal(slot_number: u64, signature: ed25519::Signature) -> Self { + fn aura_seal(slot_number: u64, signature: Signature) -> Self { generic::DigestItem::Seal(slot_number, signature) } /// If this item is an Aura seal, return the slot number and signature. - fn as_aura_seal(&self) -> Option<(u64, &ed25519::Signature)> { + fn as_aura_seal(&self) -> Option<(u64, Signature)> { match self { - generic::DigestItem::Seal(slot, ref sign) => Some((*slot, sign)), + generic::DigestItem::Seal(slot, ref sig) => Some((*slot, sig.clone().into())), _ => None } } @@ -162,7 +166,7 @@ pub fn start_aura_thread( Error: From + From + 'static, SO: SyncOracle + Send + Sync + Clone + 'static, OnExit: Future + Send + 'static, - DigestItemFor: CompatibleDigestItem + DigestItem + 'static, + DigestItemFor: CompatibleDigestItem + DigestItem + 'static, Error: ::std::error::Error + Send + From<::consensus_common::Error> + 'static, { let worker = AuraWorker { @@ -198,7 +202,7 @@ pub fn start_aura( I: BlockImport + Send + Sync + 'static, Error: From + From, SO: SyncOracle + Send + Sync + Clone, - DigestItemFor: CompatibleDigestItem + DigestItem, + DigestItemFor: CompatibleDigestItem + DigestItem, Error: ::std::error::Error + Send + 'static + From<::consensus_common::Error>, OnExit: Future, { @@ -232,7 +236,7 @@ impl SlotWorker for AuraWorker whe I: BlockImport + Send + Sync + 'static, Error: From + From, SO: SyncOracle + Send + Clone, - DigestItemFor: CompatibleDigestItem + DigestItem, + DigestItemFor: CompatibleDigestItem + DigestItem, Error: ::std::error::Error + Send + 'static + From<::consensus_common::Error>, { type OnSlot = Box + Send>; @@ -387,7 +391,7 @@ impl SlotWorker for AuraWorker whe /// if it's successful, returns the pre-header, the slot number, and the signat. // // FIXME #1018 needs misbehavior types -fn check_header(slot_now: u64, mut header: B::Header, hash: B::Hash, authorities: &[Ed25519AuthorityId]) +fn check_header(slot_now: u64, mut header: B::Header, hash: B::Hash, authorities: &[AuthorityId]) -> Result, String> where DigestItemFor: CompatibleDigestItem { @@ -395,7 +399,7 @@ fn check_header(slot_now: u64, mut header: B::Header, hash: B::Hash, a Some(x) => x, None => return Err(format!("Header {:?} is unsealed", hash)), }; - let (slot_num, &sig) = match digest_item.as_aura_seal() { + let (slot_num, sig) = match digest_item.as_aura_seal() { Some(x) => x, None => return Err(format!("Header {:?} is unsealed", hash)), }; @@ -416,7 +420,7 @@ fn check_header(slot_now: u64, mut header: B::Header, hash: B::Hash, a let to_sign = (slot_num, pre_hash).encode(); let public = ed25519::Public(expected_author.0); - if ed25519::verify_strong(&sig, &to_sign[..], public) { + if ed25519::Pair::verify(&sig, &to_sign[..], public) { Ok(CheckedHeader::Checked(header, slot_num, sig)) } else { Err(format!("Bad signature on {:?}", hash)) @@ -555,7 +559,7 @@ impl ExtraVerification for NothingExtra { impl Verifier for AuraVerifier where C: Authorities + ProvideRuntimeApi + Send + Sync, C::Api: BlockBuilderApi, - DigestItemFor: CompatibleDigestItem + DigestItem, + DigestItemFor: CompatibleDigestItem + DigestItem, E: ExtraVerification, { fn verify( @@ -564,7 +568,7 @@ impl Verifier for AuraVerifier where header: B::Header, justification: Option, mut body: Option>, - ) -> Result<(ImportBlock, Option>), String> { + ) -> Result<(ImportBlock, Option>), String> { let mut inherent_data = self.inherent_data_providers.create_inherent_data().map_err(String::from)?; let (timestamp_now, slot_now) = AuraSlotCompatible::extract_timestamp_and_slot(&inherent_data) .map_err(|e| format!("Could not extract timestamp and slot: {:?}", e))?; @@ -675,7 +679,7 @@ pub fn import_queue( B: Block, C: 'static + Authorities + ProvideRuntimeApi + Send + Sync, C::Api: BlockBuilderApi, - DigestItemFor: CompatibleDigestItem + DigestItem, + DigestItemFor: CompatibleDigestItem + DigestItem, E: 'static + ExtraVerification, { register_aura_inherent_data_provider(&inherent_data_providers, slot_duration.get())?; @@ -696,7 +700,7 @@ mod tests { use network::config::ProtocolConfig; use parking_lot::Mutex; use tokio::runtime::current_thread; - use keyring::Keyring; + use keyring::ed25519::Keyring; use client::BlockchainEvents; use test_client; @@ -711,7 +715,7 @@ mod tests { type Proposer = DummyProposer; type Error = Error; - fn init(&self, parent_header: &::Header, _authorities: &[Ed25519AuthorityId]) + fn init(&self, parent_header: &::Header, _authorities: &[AuthorityId]) -> Result { Ok(DummyProposer(parent_header.number + 1, self.0.clone())) diff --git a/core/consensus/common/src/error.rs b/core/consensus/common/src/error.rs index b4276a08b4..58362b8e80 100644 --- a/core/consensus/common/src/error.rs +++ b/core/consensus/common/src/error.rs @@ -18,6 +18,7 @@ use runtime_version::RuntimeVersion; use error_chain::{error_chain, error_chain_processing, impl_error_chain_processed, impl_extract_backtrace, impl_error_chain_kind}; +use primitives::ed25519::{Public, Signature}; error_chain! { errors { @@ -52,13 +53,13 @@ error_chain! { } /// Error checking signature - InvalidSignature(s: ::primitives::ed25519::Signature, a: ::primitives::Ed25519AuthorityId) { + InvalidSignature(s: Signature, a: Public) { description("Message signature is invalid"), display("Message signature {:?} by {:?} is invalid.", s, a), } /// Account is not an authority. - InvalidAuthority(a: ::primitives::Ed25519AuthorityId) { + InvalidAuthority(a: Public) { description("Message sender is not a valid authority"), display("Message sender {:?} is not a valid authority.", a), } diff --git a/core/consensus/common/src/offline_tracker.rs b/core/consensus/common/src/offline_tracker.rs index d9afb68416..3c6755d941 100644 --- a/core/consensus/common/src/offline_tracker.rs +++ b/core/consensus/common/src/offline_tracker.rs @@ -112,25 +112,25 @@ impl OfflineTracker { #[cfg(test)] mod tests { use super::*; - use primitives::Ed25519AuthorityId; + use primitives::ed25519::Public as AuthorityId; #[test] fn validator_offline() { - let mut tracker = OfflineTracker::::new(); - let v = [0; 32].into(); - let v2 = [1; 32].into(); - let v3 = [2; 32].into(); - tracker.note_round_end(v, true); - tracker.note_round_end(v2, true); - tracker.note_round_end(v3, true); + let mut tracker = OfflineTracker::::new(); + let v = AuthorityId::from_raw([0; 32]); + let v2 = AuthorityId::from_raw([1; 32]); + let v3 = AuthorityId::from_raw([2; 32]); + tracker.note_round_end(v.clone(), true); + tracker.note_round_end(v2.clone(), true); + tracker.note_round_end(v3.clone(), true); let slash_time = REPORT_TIME + Duration::from_secs(5); tracker.observed.get_mut(&v).unwrap().offline_since -= slash_time; tracker.observed.get_mut(&v2).unwrap().offline_since -= slash_time; - assert_eq!(tracker.reports(&[v, v2, v3]), vec![0, 1]); + assert_eq!(tracker.reports(&[v.clone(), v2.clone(), v3.clone()]), vec![0, 1]); - tracker.note_new_block(&[v, v3]); + tracker.note_new_block(&[v.clone(), v3.clone()]); assert_eq!(tracker.reports(&[v, v2, v3]), vec![0]); } } diff --git a/core/consensus/rhd/src/lib.rs b/core/consensus/rhd/src/lib.rs index 65401c92a9..e42083a40b 100644 --- a/core/consensus/rhd/src/lib.rs +++ b/core/consensus/rhd/src/lib.rs @@ -762,7 +762,7 @@ fn check_justification_signed_message( let auth_id = sig.signer.clone().into(); if !authorities.contains(&auth_id) { return None } - if ed25519::verify_strong(&sig.signature, message, &sig.signer) { + if ed25519::Pair::verify(&sig.signature, message, &sig.signer) { Some(sig.signer.0) } else { None @@ -838,7 +838,7 @@ pub fn check_vote( fn check_action(action: Action, parent_hash: &B::Hash, sig: &LocalizedSignature) -> Result<(), Error> { let message = localized_encode(*parent_hash, action); - if ed25519::verify_strong(&sig.signature, &message, &sig.signer) { + if ed25519::Pair::verify(&sig.signature, &message, &sig.signer) { Ok(()) } else { Err(CommonErrorKind::InvalidSignature(sig.signature.into(), sig.signer.clone().into()).into()) @@ -1315,7 +1315,7 @@ mod tests { use runtime_primitives::testing::{Block as GenericTestBlock, Header as TestHeader}; use primitives::H256; - use self::keyring::Keyring; + use keyring::AuthorityKeyring; type TestBlock = GenericTestBlock<()>; @@ -1420,7 +1420,7 @@ mod tests { start_round: 0, })), round_timeout_multiplier: 10, - key: Arc::new(Keyring::One.into()), + key: Arc::new(AuthorityKeyring::One.into()), factory: DummyFactory } } @@ -1446,10 +1446,10 @@ mod tests { fn future_gets_preempted() { let client = FakeClient { authorities: vec![ - Keyring::One.to_raw_public().into(), - Keyring::Two.to_raw_public().into(), - Keyring::Alice.to_raw_public().into(), - Keyring::Eve.to_raw_public().into(), + AuthorityKeyring::One.into(), + AuthorityKeyring::Two.into(), + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Eve.into(), ], imported_heights: Mutex::new(HashSet::new()), }; @@ -1493,17 +1493,17 @@ mod tests { let hash = [0xff; 32].into(); let authorities = vec![ - Keyring::One.to_raw_public().into(), - Keyring::Two.to_raw_public().into(), - Keyring::Alice.to_raw_public().into(), - Keyring::Eve.to_raw_public().into(), + AuthorityKeyring::One.into(), + AuthorityKeyring::Two.into(), + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Eve.into(), ]; let authorities_keys = vec![ - Keyring::One.into(), - Keyring::Two.into(), - Keyring::Alice.into(), - Keyring::Eve.into(), + AuthorityKeyring::One.into(), + AuthorityKeyring::Two.into(), + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Eve.into(), ]; let unchecked = UncheckedJustification(rhododendron::UncheckedJustification { @@ -1554,8 +1554,8 @@ mod tests { let parent_hash = Default::default(); let authorities = vec![ - Keyring::Alice.to_raw_public().into(), - Keyring::Eve.to_raw_public().into(), + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Eve.into(), ]; let block = TestBlock { @@ -1563,7 +1563,7 @@ mod tests { extrinsics: Default::default() }; - let proposal = sign_message(rhododendron::Message::Propose(1, block.clone()), &Keyring::Alice.pair(), parent_hash);; + let proposal = sign_message(rhododendron::Message::Propose(1, block.clone()), &AuthorityKeyring::Alice.pair(), parent_hash);; if let rhododendron::LocalizedMessage::Propose(proposal) = proposal { assert!(check_proposal(&authorities, &parent_hash, &proposal).is_ok()); let mut invalid_round = proposal.clone(); @@ -1577,7 +1577,7 @@ mod tests { } // Not an authority - let proposal = sign_message::(rhododendron::Message::Propose(1, block), &Keyring::Bob.pair(), parent_hash);; + let proposal = sign_message::(rhododendron::Message::Propose(1, block), &AuthorityKeyring::Bob.pair(), parent_hash);; if let rhododendron::LocalizedMessage::Propose(proposal) = proposal { assert!(check_proposal(&authorities, &parent_hash, &proposal).is_err()); } else { @@ -1591,8 +1591,8 @@ mod tests { let hash: H256 = [0xff; 32].into(); let authorities = vec![ - Keyring::Alice.to_raw_public().into(), - Keyring::Eve.to_raw_public().into(), + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Eve.into(), ]; let vote = sign_message::(rhododendron::Message::Vote(rhododendron::Vote::Prepare(1, hash)), &Keyring::Alice.pair(), parent_hash);; @@ -1618,10 +1618,10 @@ mod tests { fn drop_bft_future_does_not_deadlock() { let client = FakeClient { authorities: vec![ - Keyring::One.to_raw_public().into(), - Keyring::Two.to_raw_public().into(), - Keyring::Alice.to_raw_public().into(), - Keyring::Eve.to_raw_public().into(), + AuthorityKeyring::One.into(), + AuthorityKeyring::Two.into(), + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Eve.into(), ], imported_heights: Mutex::new(HashSet::new()), }; @@ -1643,10 +1643,10 @@ mod tests { fn bft_can_build_though_skipped() { let client = FakeClient { authorities: vec![ - Keyring::One.to_raw_public().into(), - Keyring::Two.to_raw_public().into(), - Keyring::Alice.to_raw_public().into(), - Keyring::Eve.to_raw_public().into(), + AuthorityKeyring::One.into(), + AuthorityKeyring::Two.into(), + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Eve.into(), ], imported_heights: Mutex::new(HashSet::new()), }; diff --git a/core/consensus/rhd/src/misbehaviour_check.rs b/core/consensus/rhd/src/misbehaviour_check.rs index a0c61bb4a6..58b36542f6 100644 --- a/core/consensus/rhd/src/misbehaviour_check.rs +++ b/core/consensus/rhd/src/misbehaviour_check.rs @@ -74,8 +74,7 @@ pub fn evaluate_misbehavior( mod tests { use super::*; - use keyring::ed25519; - use keyring::Keyring; + use keyring::AuthorityKeyring; use rhododendron; use runtime_primitives::testing::{H256, Block as RawBlock}; @@ -110,7 +109,7 @@ mod tests { #[test] fn evaluates_double_prepare() { - let key: ed25519::Pair = Keyring::One.into(); + let key = AuthorityKeyring::One.pair(); let parent_hash = [0xff; 32].into(); let hash_1 = [0; 32].into(); let hash_2 = [1; 32].into(); @@ -127,7 +126,7 @@ mod tests { // same signature twice is not misbehavior. let signed = sign_prepare(&key, 1, hash_1, parent_hash); - assert!(evaluate_misbehavior::( + assert!(!evaluate_misbehavior::( &key.public().into(), parent_hash, &MisbehaviorKind::BftDoublePrepare( @@ -135,23 +134,23 @@ mod tests { signed, signed, ) - ) == false); + )); // misbehavior has wrong target. - assert!(evaluate_misbehavior::( - &Keyring::Two.to_raw_public().into(), + assert!(!evaluate_misbehavior::( + &AuthorityKeyring::Two.into(), parent_hash, &MisbehaviorKind::BftDoublePrepare( 1, sign_prepare(&key, 1, hash_1, parent_hash), sign_prepare(&key, 1, hash_2, parent_hash), ) - ) == false); + )); } #[test] fn evaluates_double_commit() { - let key: ed25519::Pair = Keyring::One.into(); + let key = AuthorityKeyring::One.pair(); let parent_hash = [0xff; 32].into(); let hash_1 = [0; 32].into(); let hash_2 = [1; 32].into(); @@ -168,7 +167,7 @@ mod tests { // same signature twice is not misbehavior. let signed = sign_commit(&key, 1, hash_1, parent_hash); - assert!(evaluate_misbehavior::( + assert!(!evaluate_misbehavior::( &key.public().into(), parent_hash, &MisbehaviorKind::BftDoubleCommit( @@ -176,17 +175,17 @@ mod tests { signed, signed, ) - ) == false); + )); // misbehavior has wrong target. - assert!(evaluate_misbehavior::( - &Keyring::Two.to_raw_public().into(), + assert!(!evaluate_misbehavior::( + &AuthorityKeyring::Two.into(), parent_hash, &MisbehaviorKind::BftDoubleCommit( 1, sign_commit(&key, 1, hash_1, parent_hash), sign_commit(&key, 1, hash_2, parent_hash), ) - ) == false); + )); } } diff --git a/core/executor/src/wasm_executor.rs b/core/executor/src/wasm_executor.rs index 044397ae3a..7e45982698 100644 --- a/core/executor/src/wasm_executor.rs +++ b/core/executor/src/wasm_executor.rs @@ -28,7 +28,7 @@ use wasmi::memory_units::{Pages}; use state_machine::Externalities; use crate::error::{Error, ErrorKind, Result}; use crate::wasm_utils::UserError; -use primitives::{blake2_256, twox_128, twox_256, ed25519, sr25519}; +use primitives::{blake2_256, twox_128, twox_256, ed25519, sr25519, Pair}; use primitives::hexdisplay::HexDisplay; use primitives::sandbox as sandbox_primitives; use primitives::{H256, Blake2Hasher}; @@ -474,7 +474,7 @@ impl_function_executor!(this: FunctionExecutor<'e, E>, this.memory.get_into(pubkey_data, &mut pubkey[..]).map_err(|_| UserError("Invalid attempt to get pubkey in ext_ed25519_verify"))?; let msg = this.memory.get(msg_data, msg_len as usize).map_err(|_| UserError("Invalid attempt to get message in ext_ed25519_verify"))?; - Ok(if ed25519::verify(&sig, &msg, &pubkey) { + Ok(if ed25519::Pair::verify_weak(&sig, &msg, &pubkey) { 0 } else { 5 @@ -487,7 +487,7 @@ impl_function_executor!(this: FunctionExecutor<'e, E>, this.memory.get_into(pubkey_data, &mut pubkey[..]).map_err(|_| UserError("Invalid attempt to get pubkey in ext_sr25519_verify"))?; let msg = this.memory.get(msg_data, msg_len as usize).map_err(|_| UserError("Invalid attempt to get message in ext_sr25519_verify"))?; - Ok(if sr25519::verify(&sig, &msg, &pubkey) { + Ok(if sr25519::Pair::verify_weak(&sig, &msg, &pubkey) { 0 } else { 5 @@ -759,7 +759,9 @@ impl WasmExecutor { #[cfg(test)] mod tests { use super::*; + use parity_codec::Encode; + use state_machine::TestExternalities; use hex_literal::{hex, hex_impl}; use primitives::map; @@ -875,7 +877,7 @@ mod tests { fn ed25519_verify_should_work() { let mut ext = TestExternalities::::default(); let test_code = include_bytes!("../wasm/target/wasm32-unknown-unknown/release/runtime_test.compact.wasm"); - let key = ed25519::Pair::from_seed(&blake2_256(b"test")); + let key = ed25519::Pair::from_seed(blake2_256(b"test")); let sig = key.sign(b"all ok!"); let mut calldata = vec![]; calldata.extend_from_slice(key.public().as_ref()); @@ -901,7 +903,7 @@ mod tests { fn sr25519_verify_should_work() { let mut ext = TestExternalities::::default(); let test_code = include_bytes!("../wasm/target/wasm32-unknown-unknown/release/runtime_test.compact.wasm"); - let key = sr25519::Pair::from_seed(&blake2_256(b"test")); + let key = sr25519::Pair::from_seed(blake2_256(b"test")); let sig = key.sign(b"all ok!"); let mut calldata = vec![]; calldata.extend_from_slice(key.public().as_ref()); diff --git a/core/finality-grandpa/primitives/src/lib.rs b/core/finality-grandpa/primitives/src/lib.rs index 9c20483305..92bd0e4584 100644 --- a/core/finality-grandpa/primitives/src/lib.rs +++ b/core/finality-grandpa/primitives/src/lib.rs @@ -23,17 +23,19 @@ extern crate alloc; use parity_codec::{Encode, Decode}; -use substrate_primitives::Ed25519AuthorityId; +use substrate_primitives::ed25519; use sr_primitives::traits::{DigestFor, NumberFor}; use client::decl_runtime_apis; use rstd::vec::Vec; +use ed25519::Public as AuthorityId; + /// A scheduled change of authority set. #[cfg_attr(feature = "std", derive(Debug, PartialEq))] #[derive(Clone, Encode, Decode)] pub struct ScheduledChange { /// The new authorities after the change, along with their respective weights. - pub next_authorities: Vec<(Ed25519AuthorityId, u64)>, + pub next_authorities: Vec<(AuthorityId, u64)>, /// The number of blocks to delay. pub delay: N, } @@ -106,6 +108,6 @@ decl_runtime_apis! { /// When called at block B, it will return the set of authorities that should be /// used to finalize descendants of this block (B+1, B+2, ...). The block B itself /// is finalized by the authorities from block B-1. - fn grandpa_authorities() -> Vec<(Ed25519AuthorityId, u64)>; + fn grandpa_authorities() -> Vec<(AuthorityId, u64)>; } } diff --git a/core/finality-grandpa/src/authorities.rs b/core/finality-grandpa/src/authorities.rs index cc35cca822..98b3973855 100644 --- a/core/finality-grandpa/src/authorities.rs +++ b/core/finality-grandpa/src/authorities.rs @@ -18,7 +18,7 @@ use fork_tree::ForkTree; use parking_lot::RwLock; -use substrate_primitives::Ed25519AuthorityId; +use substrate_primitives::ed25519; use grandpa::VoterSet; use parity_codec::{Encode, Decode}; use log::{debug, info}; @@ -28,6 +28,8 @@ use std::fmt::Debug; use std::ops::Add; use std::sync::Arc; +use ed25519::Public as AuthorityId; + /// A shared authority set. pub(crate) struct SharedAuthoritySet { inner: Arc>>, @@ -61,7 +63,7 @@ where N: Add + Ord + Clone + Debug, } /// Get the current authorities and their weights (for the current set ID). - pub(crate) fn current_authorities(&self) -> VoterSet { + pub(crate) fn current_authorities(&self) -> VoterSet { self.inner.read().current_authorities.iter().cloned().collect() } } @@ -85,7 +87,7 @@ pub(crate) struct Status { /// A set of authorities. #[derive(Debug, Clone, Encode, Decode, PartialEq)] pub(crate) struct AuthoritySet { - pub(crate) current_authorities: Vec<(Ed25519AuthorityId, u64)>, + pub(crate) current_authorities: Vec<(AuthorityId, u64)>, pub(crate) set_id: u64, // Tree of pending standard changes across forks. Standard changes are // enacted on finality and must be enacted (i.e. finalized) in-order across @@ -102,7 +104,7 @@ where H: PartialEq, N: Ord, { /// Get a genesis set with given authorities. - pub(crate) fn genesis(initial: Vec<(Ed25519AuthorityId, u64)>) -> Self { + pub(crate) fn genesis(initial: Vec<(AuthorityId, u64)>) -> Self { AuthoritySet { current_authorities: initial, set_id: 0, @@ -112,7 +114,7 @@ where H: PartialEq, } /// Get the current set id and a reference to the current authority set. - pub(crate) fn current(&self) -> (u64, &[(Ed25519AuthorityId, u64)]) { + pub(crate) fn current(&self) -> (u64, &[(AuthorityId, u64)]) { (self.set_id, &self.current_authorities[..]) } } @@ -379,7 +381,7 @@ pub(crate) enum DelayKind { #[derive(Debug, Clone, Encode, PartialEq)] pub(crate) struct PendingChange { /// The new authorities and weights to apply. - pub(crate) next_authorities: Vec<(Ed25519AuthorityId, u64)>, + pub(crate) next_authorities: Vec<(AuthorityId, u64)>, /// How deep in the chain the announcing block must be /// before the change is applied. pub(crate) delay: N, @@ -509,8 +511,8 @@ mod tests { pending_forced_changes: Vec::new(), }; - let set_a = vec![([1; 32].into(), 5)]; - let set_b = vec![([2; 32].into(), 5)]; + let set_a = vec![(AuthorityId([1; 32]), 5)]; + let set_b = vec![(AuthorityId([2; 32]), 5)]; // two competing changes at the same height on different forks let change_a = PendingChange { @@ -574,8 +576,8 @@ mod tests { pending_forced_changes: Vec::new(), }; - let set_a = vec![([1; 32].into(), 5)]; - let set_c = vec![([2; 32].into(), 5)]; + let set_a = vec![(AuthorityId([1; 32]), 5)]; + let set_c = vec![(AuthorityId([2; 32]), 5)]; // two competing changes at the same height on different forks let change_a = PendingChange { @@ -640,7 +642,7 @@ mod tests { pending_forced_changes: Vec::new(), }; - let set_a = vec![([1; 32].into(), 5)]; + let set_a = vec![(AuthorityId([1; 32]), 5)]; let change_a = PendingChange { next_authorities: set_a.clone(), @@ -676,8 +678,8 @@ mod tests { pending_forced_changes: Vec::new(), }; - let set_a = vec![([1; 32].into(), 5)]; - let set_b = vec![([2; 32].into(), 5)]; + let set_a = vec![(AuthorityId([1; 32]), 5)]; + let set_b = vec![(AuthorityId([2; 32]), 5)]; let change_a = PendingChange { next_authorities: set_a.clone(), diff --git a/core/finality-grandpa/src/aux_schema.rs b/core/finality-grandpa/src/aux_schema.rs index 930329344b..eb187d877b 100644 --- a/core/finality-grandpa/src/aux_schema.rs +++ b/core/finality-grandpa/src/aux_schema.rs @@ -16,20 +16,20 @@ //! Schema for stuff in the aux-db. +use std::fmt::Debug; +use std::sync::Arc; use parity_codec::{Encode, Decode}; use client::backend::AuxStore; use client::error::{Result as ClientResult, Error as ClientError, ErrorKind as ClientErrorKind}; use fork_tree::ForkTree; use grandpa::round::State as RoundState; -use substrate_primitives::Ed25519AuthorityId; use log::{info, warn}; use crate::authorities::{AuthoritySet, SharedAuthoritySet, PendingChange, DelayKind}; use crate::consensus_changes::{SharedConsensusChanges, ConsensusChanges}; use crate::NewAuthoritySet; -use std::fmt::Debug; -use std::sync::Arc; +use substrate_primitives::ed25519::Public as AuthorityId; const VERSION_KEY: &[u8] = b"grandpa_schema_version"; const SET_STATE_KEY: &[u8] = b"grandpa_completed_round"; @@ -61,7 +61,7 @@ type V0VoterSetState = (u64, RoundState); #[derive(Debug, Clone, Encode, Decode, PartialEq)] struct V0PendingChange { - next_authorities: Vec<(Ed25519AuthorityId, u64)>, + next_authorities: Vec<(AuthorityId, u64)>, delay: N, canon_height: N, canon_hash: H, @@ -69,7 +69,7 @@ struct V0PendingChange { #[derive(Debug, Clone, Encode, Decode, PartialEq)] struct V0AuthoritySet { - current_authorities: Vec<(Ed25519AuthorityId, u64)>, + current_authorities: Vec<(AuthorityId, u64)>, set_id: u64, pending_changes: Vec>, } @@ -141,7 +141,7 @@ pub(crate) fn load_persistent( B: AuxStore, H: Debug + Decode + Encode + Clone + PartialEq, N: Debug + Decode + Encode + Clone + Ord, - G: FnOnce() -> ClientResult> + G: FnOnce() -> ClientResult> { let version: Option = load_decode(backend, VERSION_KEY)?; let consensus_changes = load_decode(backend, CONSENSUS_CHANGES_KEY)? diff --git a/core/finality-grandpa/src/communication.rs b/core/finality-grandpa/src/communication.rs index f392d3278b..54de53e7bb 100644 --- a/core/finality-grandpa/src/communication.rs +++ b/core/finality-grandpa/src/communication.rs @@ -25,11 +25,12 @@ use futures::prelude::*; use futures::sync::mpsc; use log::{debug, trace}; use parity_codec::{Encode, Decode}; -use substrate_primitives::{ed25519, Ed25519AuthorityId}; +use substrate_primitives::{ed25519, Pair}; use runtime_primitives::traits::Block as BlockT; use tokio::timer::Interval; use crate::{Error, Network, Message, SignedMessage, Commit, CompactCommit, GossipMessage, FullCommitMessage, VoteOrPrecommitMessage}; +use ed25519::{Public as AuthorityId, Signature as AuthoritySignature}; fn localized_payload(round: u64, set_id: u64, message: &E) -> Vec { (message, round, set_id).encode() @@ -242,14 +243,14 @@ impl> Network for BroadcastHandle { // check a message. pub(crate) fn check_message_sig( message: &Message, - id: &Ed25519AuthorityId, - signature: &ed25519::Signature, + id: &AuthorityId, + signature: &AuthoritySignature, round: u64, set_id: u64, ) -> Result<(), ()> { - let as_public = ed25519::Public::from_raw(id.0); + let as_public = AuthorityId::from_raw(id.0); let encoded_raw = localized_payload(round, set_id, message); - if ed25519::verify_strong(signature, &encoded_raw, as_public) { + if ed25519::Pair::verify(signature, &encoded_raw, as_public) { Ok(()) } else { debug!(target: "afg", "Bad signature on message from {:?}", id); @@ -261,7 +262,7 @@ pub(crate) fn check_message_sig( /// the output stream checks signatures also. pub(crate) fn checked_message_stream( inner: S, - voters: Arc>, + voters: Arc>, ) -> impl Stream,Error=Error> where S: Stream,Error=()> @@ -297,7 +298,7 @@ pub(crate) fn checked_message_stream( pub(crate) struct OutgoingMessages> { round: u64, set_id: u64, - locals: Option<(Arc, Ed25519AuthorityId)>, + locals: Option<(Arc, AuthorityId)>, sender: mpsc::UnboundedSender>, network: N, } @@ -309,7 +310,7 @@ impl> Sink for OutgoingMessages fn start_send(&mut self, msg: Message) -> StartSend, Error> { // when locals exist, sign messages on import - if let Some((ref pair, local_id)) = self.locals { + if let Some((ref pair, ref local_id)) = self.locals { let encoded = localized_payload(self.round, self.set_id, &msg); let signature = pair.sign(&encoded[..]); @@ -317,7 +318,7 @@ impl> Sink for OutgoingMessages let signed = SignedMessage:: { message: msg, signature, - id: local_id, + id: local_id.clone(), }; let message = GossipMessage::VoteOrPrecommit(VoteOrPrecommitMessage:: { @@ -361,7 +362,7 @@ pub(crate) fn outgoing_messages>( round: u64, set_id: u64, local_key: Option>, - voters: Arc>, + voters: Arc>, network: N, ) -> ( impl Stream,Error=Error>, @@ -369,7 +370,7 @@ pub(crate) fn outgoing_messages>( ) { let locals = local_key.and_then(|pair| { let public = pair.public(); - let id = Ed25519AuthorityId(public.0); + let id = AuthorityId(public.0); if voters.contains_key(&id) { Some((pair, id)) } else { @@ -395,7 +396,7 @@ pub(crate) fn outgoing_messages>( fn check_compact_commit( msg: CompactCommit, - voters: &VoterSet, + voters: &VoterSet, ) -> Option> { if msg.precommits.len() != msg.auth_data.len() || msg.precommits.is_empty() { debug!(target: "afg", "Skipping malformed compact commit"); @@ -417,7 +418,7 @@ fn check_compact_commit( /// messages. pub(crate) fn checked_commit_stream( inner: S, - voters: Arc>, + voters: Arc>, ) -> impl Stream),Error=Error> where S: Stream,Error=()> diff --git a/core/finality-grandpa/src/environment.rs b/core/finality-grandpa/src/environment.rs index 857d6eafd7..a9b5a43d01 100644 --- a/core/finality-grandpa/src/environment.rs +++ b/core/finality-grandpa/src/environment.rs @@ -33,7 +33,7 @@ use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{ As, Block as BlockT, Header as HeaderT, NumberFor, One, Zero, }; -use substrate_primitives::{Blake2Hasher, ed25519,Ed25519AuthorityId, H256}; +use substrate_primitives::{Blake2Hasher, ed25519, H256, Pair}; use crate::{ Commit, Config, Error, Network, Precommit, Prevote, @@ -45,6 +45,8 @@ use crate::consensus_changes::SharedConsensusChanges; use crate::justification::GrandpaJustification; use crate::until_imported::UntilVoteTargetImported; +use ed25519::Public as AuthorityId; + /// Data about a completed round. pub(crate) type CompletedRound = (u64, RoundState); @@ -75,7 +77,7 @@ impl LastCompletedRound { /// The environment we run GRANDPA in. pub(crate) struct Environment, RA> { pub(crate) inner: Arc>, - pub(crate) voters: Arc>, + pub(crate) voters: Arc>, pub(crate) config: Config, pub(crate) authority_set: SharedAuthoritySet>, pub(crate) consensus_changes: SharedConsensusChanges>, @@ -205,7 +207,7 @@ impl, N, RA> voter::Environment: BlockNumberOps, { type Timer = Box + Send>; - type Id = Ed25519AuthorityId; + type Id = AuthorityId; type Signature = ed25519::Signature; // regular round message streams diff --git a/core/finality-grandpa/src/finality_proof.rs b/core/finality-grandpa/src/finality_proof.rs index eef705c4ff..daebe3b72a 100644 --- a/core/finality-grandpa/src/finality_proof.rs +++ b/core/finality-grandpa/src/finality_proof.rs @@ -42,7 +42,8 @@ use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{ NumberFor, Block as BlockT, Header as HeaderT, One, }; -use substrate_primitives::{Ed25519AuthorityId, H256}; +use substrate_primitives::{ed25519, H256}; +use ed25519::Public as AuthorityId; use crate::justification::GrandpaJustification; @@ -189,7 +190,7 @@ fn do_check_finality_proof, C, J>( call_data: vec![], retry_count: None, })?; - let grandpa_authorities: Vec<(Ed25519AuthorityId, u64)> = Decode::decode(&mut &grandpa_authorities[..]) + let grandpa_authorities: Vec<(AuthorityId, u64)> = Decode::decode(&mut &grandpa_authorities[..]) .ok_or_else(|| ClientErrorKind::BadJustification("failed to decode GRANDPA authorities set proof".into()))?; // and now check justification @@ -222,7 +223,7 @@ trait ProvableJustification: Encode + Decode { fn target_block(&self) -> (Header::Number, Header::Hash); /// Verify justification with respect to authorities set and authorities set id. - fn verify(&self, set_id: u64, authorities: &VoterSet) -> ClientResult<()>; + fn verify(&self, set_id: u64, authorities: &VoterSet) -> ClientResult<()>; } impl> ProvableJustification for GrandpaJustification @@ -233,7 +234,7 @@ impl> ProvableJustification for GrandpaJ (self.commit.target_number, self.commit.target_hash) } - fn verify(&self, set_id: u64, authorities: &VoterSet) -> ClientResult<()> { + fn verify(&self, set_id: u64, authorities: &VoterSet) -> ClientResult<()> { GrandpaJustification::verify(self, set_id, authorities) } } @@ -253,12 +254,12 @@ mod tests { impl ProvableJustification

for ValidFinalityProof { fn target_block(&self) -> (u64, H256) { (3, header(3).hash()) } - fn verify(&self, set_id: u64, authorities: &VoterSet) -> ClientResult<()> { + fn verify(&self, set_id: u64, authorities: &VoterSet) -> ClientResult<()> { assert_eq!(set_id, 1); assert_eq!(authorities, &vec![ - (Ed25519AuthorityId([1u8; 32]), 1), - (Ed25519AuthorityId([2u8; 32]), 2), - (Ed25519AuthorityId([3u8; 32]), 3), + (AuthorityId([1u8; 32]), 1), + (AuthorityId([2u8; 32]), 2), + (AuthorityId([3u8; 32]), 3), ].into_iter().collect()); Ok(()) } @@ -387,7 +388,7 @@ mod tests { impl ProvableJustification
for InvalidFinalityProof { fn target_block(&self) -> (u64, H256) { (3, header(3).hash()) } - fn verify(&self, _set_id: u64, _authorities: &VoterSet) -> ClientResult<()> { + fn verify(&self, _set_id: u64, _authorities: &VoterSet) -> ClientResult<()> { Err(ClientErrorKind::Backend("test error".into()).into()) } } @@ -415,9 +416,9 @@ mod tests { .unwrap().unwrap(); assert_eq!(do_check_finality_proof::( |_| Ok(vec![ - (Ed25519AuthorityId([1u8; 32]), 1u64), - (Ed25519AuthorityId([2u8; 32]), 2u64), - (Ed25519AuthorityId([3u8; 32]), 3u64), + (AuthorityId([1u8; 32]), 1u64), + (AuthorityId([2u8; 32]), 2u64), + (AuthorityId([3u8; 32]), 3u64), ].encode()), header(1), (2, header(2).hash()), diff --git a/core/finality-grandpa/src/import.rs b/core/finality-grandpa/src/import.rs index 3f4dbb3650..7e1582645f 100644 --- a/core/finality-grandpa/src/import.rs +++ b/core/finality-grandpa/src/import.rs @@ -36,7 +36,7 @@ use runtime_primitives::traits::{ Block as BlockT, DigestFor, DigestItemFor, DigestItem, Header as HeaderT, NumberFor, ProvideRuntimeApi, }; -use substrate_primitives::{H256, Ed25519AuthorityId, Blake2Hasher}; +use substrate_primitives::{H256, ed25519, Blake2Hasher}; use crate::{Error, CommandOrError, NewAuthoritySet, VoterCommand}; use crate::authorities::{AuthoritySet, SharedAuthoritySet, DelayKind, PendingChange}; @@ -44,6 +44,8 @@ use crate::consensus_changes::SharedConsensusChanges; use crate::environment::{finalize_block, is_descendent_of}; use crate::justification::GrandpaJustification; +use ed25519::Public as AuthorityId; + /// A block-import handler for GRANDPA. /// /// This scans each imported block for signals of changing authority set. @@ -67,7 +69,7 @@ impl, RA, PRA> JustificationImport B: Backend + 'static, E: CallExecutor + 'static + Clone + Send + Sync, DigestFor: Encode, - DigestItemFor: DigestItem, + DigestItemFor: DigestItem, RA: Send + Sync, PRA: ProvideRuntimeApi, PRA::Api: GrandpaApi, @@ -161,7 +163,7 @@ impl, RA, PRA> GrandpaBlockImport + 'static, E: CallExecutor + 'static + Clone + Send + Sync, DigestFor: Encode, - DigestItemFor: DigestItem, + DigestItemFor: DigestItem, RA: Send + Sync, PRA: ProvideRuntimeApi, PRA::Api: GrandpaApi, @@ -379,14 +381,14 @@ impl, RA, PRA> BlockImport B: Backend + 'static, E: CallExecutor + 'static + Clone + Send + Sync, DigestFor: Encode, - DigestItemFor: DigestItem, + DigestItemFor: DigestItem, RA: Send + Sync, PRA: ProvideRuntimeApi, PRA::Api: GrandpaApi, { type Error = ConsensusError; - fn import_block(&self, mut block: ImportBlock, new_authorities: Option>) + fn import_block(&self, mut block: ImportBlock, new_authorities: Option>) -> Result { let hash = block.post_header().hash(); diff --git a/core/finality-grandpa/src/justification.rs b/core/finality-grandpa/src/justification.rs index 52ce9006e1..d837e6a308 100644 --- a/core/finality-grandpa/src/justification.rs +++ b/core/finality-grandpa/src/justification.rs @@ -25,11 +25,13 @@ use grandpa::VoterSet; use grandpa::{Error as GrandpaError}; use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{NumberFor, Block as BlockT, Header as HeaderT}; -use substrate_primitives::{H256, Ed25519AuthorityId, Blake2Hasher}; +use substrate_primitives::{H256, ed25519, Blake2Hasher}; use crate::{Commit, Error}; use crate::communication; +use ed25519::Public as AuthorityId; + /// A GRANDPA justification for block finality, it includes a commit message and /// an ancestry proof including all headers routing all precommit target blocks /// to the commit target block. Due to the current voting strategy the precommit @@ -95,7 +97,7 @@ impl> GrandpaJustification { pub(crate) fn decode_and_verify( encoded: Vec, set_id: u64, - voters: &VoterSet, + voters: &VoterSet, ) -> Result, ClientError> where NumberFor: grandpa::BlockNumberOps, { @@ -106,7 +108,7 @@ impl> GrandpaJustification { } /// Validate the commit and the votes' ancestry proofs. - pub(crate) fn verify(&self, set_id: u64, voters: &VoterSet) -> Result<(), ClientError> + pub(crate) fn verify(&self, set_id: u64, voters: &VoterSet) -> Result<(), ClientError> where NumberFor: grandpa::BlockNumberOps, { diff --git a/core/finality-grandpa/src/lib.rs b/core/finality-grandpa/src/lib.rs index 07f35ebc63..67953489e8 100644 --- a/core/finality-grandpa/src/lib.rs +++ b/core/finality-grandpa/src/lib.rs @@ -68,7 +68,7 @@ use runtime_primitives::traits::{ use fg_primitives::GrandpaApi; use inherents::InherentDataProviders; use runtime_primitives::generic::BlockId; -use substrate_primitives::{ed25519, H256, Ed25519AuthorityId, Blake2Hasher}; +use substrate_primitives::{ed25519, H256, Blake2Hasher, Pair}; use substrate_telemetry::{telemetry, CONSENSUS_TRACE, CONSENSUS_DEBUG, CONSENSUS_WARN}; use srml_finality_tracker; @@ -106,6 +106,8 @@ pub use finality_proof::{prove_finality, check_finality_proof}; use import::GrandpaBlockImport; use until_imported::UntilCommitBlocksImported; +use ed25519::{Public as AuthorityId, Signature as AuthoritySignature}; + #[cfg(test)] mod tests; @@ -118,8 +120,8 @@ pub type Message = grandpa::Message<::Hash, NumberFor = grandpa::SignedMessage< ::Hash, NumberFor, - ed25519::Signature, - Ed25519AuthorityId, + AuthoritySignature, + AuthorityId, >; /// Grandpa gossip message type. @@ -148,15 +150,15 @@ pub type Precommit = grandpa::Precommit<::Hash, NumberFo pub type Commit = grandpa::Commit< ::Hash, NumberFor, - ed25519::Signature, - Ed25519AuthorityId + AuthoritySignature, + AuthorityId >; /// A compact commit message for this chain's block type. pub type CompactCommit = grandpa::CompactCommit< ::Hash, NumberFor, - ed25519::Signature, - Ed25519AuthorityId + AuthoritySignature, + AuthorityId >; /// Network level commit message with topic information. @@ -560,7 +562,7 @@ pub(crate) struct NewAuthoritySet { pub(crate) canon_number: N, pub(crate) canon_hash: H, pub(crate) set_id: u64, - pub(crate) authorities: Vec<(Ed25519AuthorityId, u64)>, + pub(crate) authorities: Vec<(AuthorityId, u64)>, } /// Commands issued to the voter. @@ -684,16 +686,16 @@ pub fn block_import, RA, PRA>( fn committer_communication, B, E, N, RA>( local_key: Option>, set_id: u64, - voters: &Arc>, + voters: &Arc>, client: &Arc>, network: &N, ) -> ( impl Stream< - Item = (u64, ::grandpa::CompactCommit, ed25519::Signature, Ed25519AuthorityId>), + Item = (u64, ::grandpa::CompactCommit, AuthoritySignature, AuthorityId>), Error = CommandOrError>, >, impl Sink< - SinkItem = (u64, ::grandpa::Commit, ed25519::Signature, Ed25519AuthorityId>), + SinkItem = (u64, ::grandpa::Commit, AuthoritySignature, AuthorityId>), SinkError = CommandOrError>, >, ) where @@ -702,7 +704,7 @@ fn committer_communication, B, E, N, RA>( N: Network, RA: Send + Sync, NumberFor: BlockNumberOps, - DigestItemFor: DigestItem, + DigestItemFor: DigestItem, { // verification stream let commit_in = crate::communication::checked_commit_stream::( @@ -773,7 +775,7 @@ pub fn run_grandpa, N, RA>( N::In: Send + 'static, NumberFor: BlockNumberOps, DigestFor: Encode, - DigestItemFor: DigestItem, + DigestItemFor: DigestItem, RA: Send + Sync + 'static, { use futures::future::{self, Loop as FutureLoop}; diff --git a/core/finality-grandpa/src/tests.rs b/core/finality-grandpa/src/tests.rs index 3eb7d55655..9aed819b25 100644 --- a/core/finality-grandpa/src/tests.rs +++ b/core/finality-grandpa/src/tests.rs @@ -22,7 +22,7 @@ use network::test::{PassThroughVerifier}; use network::config::{ProtocolConfig, Roles}; use parking_lot::Mutex; use tokio::runtime::current_thread; -use keyring::Keyring; +use keyring::AuthorityKeyring; use client::{ BlockchainEvents, error::Result, blockchain::Backend as BlockchainBackend, @@ -238,13 +238,13 @@ impl Network for MessageRouting { #[derive(Default, Clone)] struct TestApi { - genesis_authorities: Vec<(Ed25519AuthorityId, u64)>, + genesis_authorities: Vec<(AuthorityId, u64)>, scheduled_changes: Arc>>>, forced_changes: Arc)>>>, } impl TestApi { - fn new(genesis_authorities: Vec<(Ed25519AuthorityId, u64)>) -> Self { + fn new(genesis_authorities: Vec<(AuthorityId, u64)>) -> Self { TestApi { genesis_authorities, scheduled_changes: Arc::new(Mutex::new(HashMap::new())), @@ -282,7 +282,7 @@ impl Core for RuntimeApi { _: ExecutionContext, _: Option<()>, _: Vec, - ) -> Result>> { + ) -> Result>> { unimplemented!("Not required for testing!") } @@ -327,7 +327,7 @@ impl GrandpaApi for RuntimeApi { _: ExecutionContext, _: Option<()>, _: Vec, - ) -> Result>> { + ) -> Result>> { if at == &BlockId::Number(0) { Ok(self.inner.genesis_authorities.clone()).map(NativeOrEncoded::Native) } else { @@ -374,9 +374,9 @@ impl GrandpaApi for RuntimeApi { const TEST_GOSSIP_DURATION: Duration = Duration::from_millis(500); const TEST_ROUTING_INTERVAL: Duration = Duration::from_millis(50); -fn make_ids(keys: &[Keyring]) -> Vec<(Ed25519AuthorityId, u64)> { +fn make_ids(keys: &[AuthorityKeyring]) -> Vec<(AuthorityId, u64)> { keys.iter() - .map(|key| Ed25519AuthorityId(key.to_raw_public())) + .map(|key| AuthorityId(key.to_raw_public())) .map(|id| (id, 1)) .collect() } @@ -386,7 +386,7 @@ fn make_ids(keys: &[Keyring]) -> Vec<(Ed25519AuthorityId, u64)> { fn run_to_completion_with( blocks: u64, net: Arc>, - peers: &[Keyring], + peers: &[AuthorityKeyring], before_waiting: F, ) -> u64 { use parking_lot::RwLock; @@ -462,14 +462,14 @@ fn run_to_completion_with( highest_finalized } -fn run_to_completion(blocks: u64, net: Arc>, peers: &[Keyring]) -> u64 { +fn run_to_completion(blocks: u64, net: Arc>, peers: &[AuthorityKeyring]) -> u64 { run_to_completion_with(blocks, net, peers, || {}) } #[test] fn finalize_3_voters_no_observers() { let _ = env_logger::try_init(); - let peers = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; + let peers = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; let voters = make_ids(peers); let mut net = GrandpaTestNet::new(TestApi::new(voters), 3); @@ -491,7 +491,7 @@ fn finalize_3_voters_no_observers() { #[test] fn finalize_3_voters_1_observer() { - let peers = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; + let peers = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; let voters = make_ids(peers); let mut net = GrandpaTestNet::new(TestApi::new(voters), 4); @@ -554,24 +554,24 @@ fn finalize_3_voters_1_observer() { fn transition_3_voters_twice_1_observer() { let _ = env_logger::try_init(); let peers_a = &[ - Keyring::Alice, - Keyring::Bob, - Keyring::Charlie, + AuthorityKeyring::Alice, + AuthorityKeyring::Bob, + AuthorityKeyring::Charlie, ]; let peers_b = &[ - Keyring::Dave, - Keyring::Eve, - Keyring::Ferdie, + AuthorityKeyring::Dave, + AuthorityKeyring::Eve, + AuthorityKeyring::Ferdie, ]; let peers_c = &[ - Keyring::Alice, - Keyring::Eve, - Keyring::Two, + AuthorityKeyring::Alice, + AuthorityKeyring::Eve, + AuthorityKeyring::Two, ]; - let observer = &[Keyring::One]; + let observer = &[AuthorityKeyring::One]; let genesis_voters = make_ids(peers_a); @@ -719,11 +719,11 @@ fn transition_3_voters_twice_1_observer() { #[test] fn justification_is_emitted_when_consensus_data_changes() { - let peers = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; + let peers = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; let mut net = GrandpaTestNet::new(TestApi::new(make_ids(peers)), 3); // import block#1 WITH consensus data change - let new_authorities = vec![Ed25519AuthorityId::from([42; 32])]; + let new_authorities = vec![AuthorityId::from_raw([42; 32])]; net.peer(0).push_authorities_change_block(new_authorities); net.sync(); let net = Arc::new(Mutex::new(net)); @@ -736,7 +736,7 @@ fn justification_is_emitted_when_consensus_data_changes() { #[test] fn justification_is_generated_periodically() { - let peers = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; + let peers = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; let voters = make_ids(peers); let mut net = GrandpaTestNet::new(TestApi::new(voters), 3); @@ -775,8 +775,8 @@ fn consensus_changes_works() { #[test] fn sync_justifications_on_change_blocks() { - let peers_a = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; - let peers_b = &[Keyring::Alice, Keyring::Bob]; + let peers_a = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; + let peers_b = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob]; let voters = make_ids(peers_b); // 4 peers, 3 of them are authorities and participate in grandpa @@ -825,13 +825,13 @@ fn sync_justifications_on_change_blocks() { fn finalizes_multiple_pending_changes_in_order() { let _ = env_logger::try_init(); - let peers_a = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; - let peers_b = &[Keyring::Dave, Keyring::Eve, Keyring::Ferdie]; - let peers_c = &[Keyring::Dave, Keyring::Alice, Keyring::Bob]; + let peers_a = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; + let peers_b = &[AuthorityKeyring::Dave, AuthorityKeyring::Eve, AuthorityKeyring::Ferdie]; + let peers_c = &[AuthorityKeyring::Dave, AuthorityKeyring::Alice, AuthorityKeyring::Bob]; let all_peers = &[ - Keyring::Alice, Keyring::Bob, Keyring::Charlie, - Keyring::Dave, Keyring::Eve, Keyring::Ferdie, + AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie, + AuthorityKeyring::Dave, AuthorityKeyring::Eve, AuthorityKeyring::Ferdie, ]; let genesis_voters = make_ids(peers_a); @@ -883,7 +883,7 @@ fn finalizes_multiple_pending_changes_in_order() { #[test] fn doesnt_vote_on_the_tip_of_the_chain() { - let peers_a = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; + let peers_a = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; let voters = make_ids(peers_a); let api = TestApi::new(voters); let mut net = GrandpaTestNet::new(api, 3); @@ -907,8 +907,8 @@ fn doesnt_vote_on_the_tip_of_the_chain() { #[test] fn force_change_to_new_set() { // two of these guys are offline. - let genesis_authorities = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie, Keyring::One, Keyring::Two]; - let peers_a = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; + let genesis_authorities = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie, AuthorityKeyring::One, AuthorityKeyring::Two]; + let peers_a = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; let api = TestApi::new(make_ids(genesis_authorities)); let voters = make_ids(peers_a); @@ -960,8 +960,8 @@ fn force_change_to_new_set() { #[test] fn allows_reimporting_change_blocks() { - let peers_a = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; - let peers_b = &[Keyring::Alice, Keyring::Bob]; + let peers_a = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; + let peers_b = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob]; let voters = make_ids(peers_a); let api = TestApi::new(voters); let net = GrandpaTestNet::new(api.clone(), 3); diff --git a/core/finality-grandpa/src/until_imported.rs b/core/finality-grandpa/src/until_imported.rs index ceeb819ed0..4b867c18c8 100644 --- a/core/finality-grandpa/src/until_imported.rs +++ b/core/finality-grandpa/src/until_imported.rs @@ -28,7 +28,7 @@ use futures::prelude::*; use futures::stream::Fuse; use parking_lot::Mutex; use runtime_primitives::traits::{Block as BlockT, Header as HeaderT, NumberFor}; -use substrate_primitives::Ed25519AuthorityId; +use substrate_primitives::ed25519::Public as AuthorityId; use tokio::timer::Interval; use std::collections::{HashMap, VecDeque}; @@ -199,7 +199,7 @@ impl Stream for UntilImported } } -fn warn_authority_wrong_target(hash: H, id: Ed25519AuthorityId) { +fn warn_authority_wrong_target(hash: H, id: AuthorityId) { warn!( target: "afg", "Authority {:?} signed GRANDPA message with \ diff --git a/core/keyring/src/ed25519.rs b/core/keyring/src/ed25519.rs index 49a073c086..188bf5352c 100644 --- a/core/keyring/src/ed25519.rs +++ b/core/keyring/src/ed25519.rs @@ -19,10 +19,14 @@ use std::collections::HashMap; use std::ops::Deref; use lazy_static::lazy_static; -use hex_literal::{hex, hex_impl}; -use substrate_primitives::ed25519::{Pair, Public, Signature}; +use substrate_primitives::{ed25519::{Pair, Public, Signature}, Pair as _Pair, H256}; pub use substrate_primitives::ed25519; +/// The root phrase for our test keys. +/// +/// This is the same phrase that's in node::cli, but shouldn't need to be. +pub const DEV_PHRASE: &str = "bottom drive obey lake curtain smoke basket hold race lonely fit walk"; + /// Set of test accounts. #[derive(Clone, Copy, PartialEq, Eq, Hash)] pub enum Keyring { @@ -37,7 +41,7 @@ pub enum Keyring { } impl Keyring { - pub fn from_public(who: Public) -> Option { + pub fn from_public(who: &Public) -> Option { [ Keyring::Alice, Keyring::Bob, @@ -49,17 +53,25 @@ impl Keyring { Keyring::Two, ].iter() .map(|i| *i) - .find(|&k| Public::from(k) == who) + .find(|&k| &Public::from(k) == who) } pub fn from_raw_public(who: [u8; 32]) -> Option { - Self::from_public(Public::from_raw(who)) + Self::from_public(&Public::from_raw(who)) } pub fn to_raw_public(self) -> [u8; 32] { *Public::from(self).as_array_ref() } + pub fn from_h256_public(who: H256) -> Option { + Self::from_public(&Public::from_raw(who.into())) + } + + pub fn to_h256_public(self) -> H256 { + Public::from(self).as_array_ref().into() + } + pub fn to_raw_public_vec(self) -> Vec { Public::from(self).to_raw_vec() } @@ -69,16 +81,8 @@ impl Keyring { } pub fn pair(self) -> Pair { - match self { - Keyring::Alice => Pair::from_seed(b"Alice "), - Keyring::Bob => Pair::from_seed(b"Bob "), - Keyring::Charlie => Pair::from_seed(b"Charlie "), - Keyring::Dave => Pair::from_seed(b"Dave "), - Keyring::Eve => Pair::from_seed(b"Eve "), - Keyring::Ferdie => Pair::from_seed(b"Ferdie "), - Keyring::One => Pair::from_seed(b"12345678901234567890123456789012"), - Keyring::Two => Pair::from_seed(&hex!("9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60")), - } + Pair::from_string(&format!("{}//{}", DEV_PHRASE, <&'static str>::from(self)), None) + .expect("static values are known good; qed") } } @@ -91,8 +95,8 @@ impl From for &'static str { Keyring::Dave => "Dave", Keyring::Eve => "Eve", Keyring::Ferdie => "Ferdie", - Keyring::One => "one", - Keyring::Two => "two", + Keyring::One => "One", + Keyring::Two => "Two", } } } @@ -134,6 +138,12 @@ impl From for [u8; 32] { } } +impl From for H256 { + fn from(k: Keyring) -> Self { + (*PUBLIC_KEYS).get(&k).unwrap().as_array_ref().into() + } +} + impl From for &'static [u8; 32] { fn from(k: Keyring) -> Self { (*PUBLIC_KEYS).get(&k).unwrap().as_array_ref() @@ -162,12 +172,12 @@ impl Deref for Keyring { #[cfg(test)] mod tests { use super::*; - use ed25519::Verifiable; + use substrate_primitives::{ed25519::Pair, Pair as _Pair}; #[test] fn should_work() { - assert!(Keyring::Alice.sign(b"I am Alice!").verify(b"I am Alice!", Keyring::Alice)); - assert!(!Keyring::Alice.sign(b"I am Alice!").verify(b"I am Bob!", Keyring::Alice)); - assert!(!Keyring::Alice.sign(b"I am Alice!").verify(b"I am Alice!", Keyring::Bob)); + assert!(Pair::verify(&Keyring::Alice.sign(b"I am Alice!"), b"I am Alice!", Keyring::Alice)); + assert!(!Pair::verify(&Keyring::Alice.sign(b"I am Alice!"), b"I am Bob!", Keyring::Alice)); + assert!(!Pair::verify(&Keyring::Alice.sign(b"I am Alice!"), b"I am Alice!", Keyring::Bob)); } } diff --git a/core/keyring/src/lib.rs b/core/keyring/src/lib.rs index faed637e03..5cf38401d0 100644 --- a/core/keyring/src/lib.rs +++ b/core/keyring/src/lib.rs @@ -22,7 +22,15 @@ pub mod sr25519; /// Test account crypto for ed25519. pub mod ed25519; -/// The Ed25519 keyring. -/// -/// This is deprecated: use `ed25519::Keyring` instead. -pub use ed25519::Keyring; +/// Convenience export: Sr25519's Keyring is exposed as `AccountKeyring`, +/// since it tends to be used for accounts. +pub use sr25519::Keyring as AccountKeyring; + +/// Convenience export: Ed25519's Keyring is exposed as `AuthorityKeyring`, +/// since it tends to be used for authorities (session keys &c.). +pub use ed25519::Keyring as AuthorityKeyring; + +pub mod test { + /// The keyring for use with accounts when using the test runtime. + pub use super::ed25519::Keyring as AccountKeyring; +} diff --git a/core/keyring/src/sr25519.rs b/core/keyring/src/sr25519.rs index e638305593..de2146020c 100644 --- a/core/keyring/src/sr25519.rs +++ b/core/keyring/src/sr25519.rs @@ -19,10 +19,14 @@ use std::collections::HashMap; use std::ops::Deref; use lazy_static::lazy_static; -use hex_literal::{hex, hex_impl}; -use substrate_primitives::sr25519::{Pair, Public, Signature}; +use substrate_primitives::{sr25519::{Pair, Public, Signature}, Pair as _Pair, H256}; pub use substrate_primitives::sr25519; +/// The root phrase for our test keys. +/// +/// This is the same phrase that's in node::cli, but shouldn't need to be. +pub const DEV_PHRASE: &str = "bottom drive obey lake curtain smoke basket hold race lonely fit walk"; + /// Set of test accounts. #[derive(Clone, Copy, PartialEq, Eq, Hash)] pub enum Keyring { @@ -37,7 +41,7 @@ pub enum Keyring { } impl Keyring { - pub fn from_public(who: Public) -> Option { + pub fn from_public(who: &Public) -> Option { [ Keyring::Alice, Keyring::Bob, @@ -49,17 +53,25 @@ impl Keyring { Keyring::Two, ].iter() .map(|i| *i) - .find(|&k| Public::from(k) == who) + .find(|&k| &Public::from(k) == who) } pub fn from_raw_public(who: [u8; 32]) -> Option { - Self::from_public(Public::from_raw(who)) + Self::from_public(&Public::from_raw(who)) } pub fn to_raw_public(self) -> [u8; 32] { *Public::from(self).as_array_ref() } + pub fn from_h256_public(who: H256) -> Option { + Self::from_public(&Public::from_raw(who.into())) + } + + pub fn to_h256_public(self) -> H256 { + Public::from(self).as_array_ref().into() + } + pub fn to_raw_public_vec(self) -> Vec { Public::from(self).to_raw_vec() } @@ -69,16 +81,8 @@ impl Keyring { } pub fn pair(self) -> Pair { - match self { - Keyring::Alice => Pair::from_seed(b"Alice "), - Keyring::Bob => Pair::from_seed(b"Bob "), - Keyring::Charlie => Pair::from_seed(b"Charlie "), - Keyring::Dave => Pair::from_seed(b"Dave "), - Keyring::Eve => Pair::from_seed(b"Eve "), - Keyring::Ferdie => Pair::from_seed(b"Ferdie "), - Keyring::One => Pair::from_seed(b"12345678901234567890123456789012"), - Keyring::Two => Pair::from_seed(&hex!("9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60")), - } + Pair::from_string(&format!("{}//{}", DEV_PHRASE, <&'static str>::from(self)), None) + .expect("static values are known good; qed") } } @@ -91,8 +95,8 @@ impl From for &'static str { Keyring::Dave => "Dave", Keyring::Eve => "Eve", Keyring::Ferdie => "Ferdie", - Keyring::One => "one", - Keyring::Two => "two", + Keyring::One => "One", + Keyring::Two => "Two", } } } @@ -134,6 +138,12 @@ impl From for [u8; 32] { } } +impl From for H256 { + fn from(k: Keyring) -> Self { + (*PUBLIC_KEYS).get(&k).unwrap().as_array_ref().into() + } +} + impl From for &'static [u8; 32] { fn from(k: Keyring) -> Self { (*PUBLIC_KEYS).get(&k).unwrap().as_array_ref() @@ -162,12 +172,12 @@ impl Deref for Keyring { #[cfg(test)] mod tests { use super::*; - use sr25519::Verifiable; + use substrate_primitives::{sr25519::Pair, Pair as _Pair}; #[test] fn should_work() { - assert!(Keyring::Alice.sign(b"I am Alice!").verify(b"I am Alice!", Keyring::Alice)); - assert!(!Keyring::Alice.sign(b"I am Alice!").verify(b"I am Bob!", Keyring::Alice)); - assert!(!Keyring::Alice.sign(b"I am Alice!").verify(b"I am Alice!", Keyring::Bob)); + assert!(Pair::verify(&Keyring::Alice.sign(b"I am Alice!"), b"I am Alice!", Keyring::Alice)); + assert!(!Pair::verify(&Keyring::Alice.sign(b"I am Alice!"), b"I am Bob!", Keyring::Alice)); + assert!(!Pair::verify(&Keyring::Alice.sign(b"I am Alice!"), b"I am Alice!", Keyring::Bob)); } } diff --git a/core/keystore/src/lib.rs b/core/keystore/src/lib.rs index 2b2380c7e2..f0ab573cd6 100644 --- a/core/keystore/src/lib.rs +++ b/core/keystore/src/lib.rs @@ -24,13 +24,11 @@ use std::collections::HashMap; use std::path::PathBuf; use std::fs::{self, File}; use std::io::{self, Write}; -use std::num::NonZeroU32; -use serde_derive::{Serialize, Deserialize}; -use error_chain::{error_chain, error_chain_processing, impl_error_chain_processed, +use error_chain::{bail, error_chain, error_chain_processing, impl_error_chain_processed, impl_extract_backtrace, impl_error_chain_kind}; -use substrate_primitives::{hashing::blake2_256, ed25519::{Pair, Public, PKCS_LEN}}; +use substrate_primitives::{ed25519::{Pair, Public}, Pair as _Pair}; pub use crypto::KEY_ITERATIONS; @@ -45,99 +43,21 @@ error_chain! { description("Invalid password"), display("Invalid password"), } - InvalidPKCS8 { - description("Invalid PKCS#8 data"), - display("Invalid PKCS#8 data"), + InvalidPhrase { + description("Invalid recovery phrase (BIP39) data"), + display("Invalid recovery phrase (BIP39) data"), } - } -} - -#[derive(Debug, Clone, Copy, PartialEq, Eq)] -pub struct InvalidPassword; - -#[derive(Serialize, Deserialize)] -struct EncryptedKey { - mac: [u8; 32], - salt: [u8; 32], - ciphertext: Vec, // FIXME: switch to fixed-size when serde supports - iv: [u8; 16], - iterations: NonZeroU32, -} - -impl EncryptedKey { - fn encrypt(plain: &[u8; PKCS_LEN], password: &str, iterations: NonZeroU32) -> Self { - use rand::{Rng, rngs::OsRng}; - - let mut rng = OsRng::new().expect("OS Randomness available on all supported platforms; qed"); - - let salt: [u8; 32] = rng.gen(); - let iv: [u8; 16] = rng.gen(); - - // two parts of derived key - // DK = [ DK[0..15] DK[16..31] ] = [derived_left_bits, derived_right_bits] - let (derived_left_bits, derived_right_bits) = crypto::derive_key_iterations(password.as_bytes(), &salt, iterations); - - // preallocated (on-stack in case of `Secret`) buffer to hold cipher - // length = length(plain) as we are using CTR-approach - let mut ciphertext = vec![0; PKCS_LEN]; - - // aes-128-ctr with initial vector of iv - crypto::aes::encrypt_128_ctr(&derived_left_bits, &iv, plain, &mut *ciphertext) - .expect("input lengths of key and iv are both 16; qed"); - - // Blake2_256(DK[16..31] ++ ), where DK[16..31] - derived_right_bits - let mac = blake2_256(&crypto::derive_mac(&derived_right_bits, &*ciphertext)); - - EncryptedKey { - salt, - iv, - mac, - iterations, - ciphertext, - } - } - - fn decrypt(&self, password: &str) -> Result<[u8; PKCS_LEN]> { - let (derived_left_bits, derived_right_bits) = - crypto::derive_key_iterations(password.as_bytes(), &self.salt, self.iterations); - - let mac = blake2_256(&crypto::derive_mac(&derived_right_bits, &self.ciphertext)); - - if subtle::ConstantTimeEq::ct_eq(&mac[..], &self.mac[..]).unwrap_u8() != 1 { - return Err(ErrorKind::InvalidPassword.into()); + InvalidSeed { + description("Invalid seed"), + display("Invalid seed"), } - - let mut plain = [0; PKCS_LEN]; - crypto::aes::decrypt_128_ctr(&derived_left_bits, &self.iv, &self.ciphertext, &mut plain[..]) - .expect("input lengths of key and iv are both 16; qed"); - Ok(plain) } } -type Seed = [u8; 32]; - /// Key store. pub struct Store { path: PathBuf, - additional: HashMap, -} - -pub fn pad_seed(seed: &str) -> Seed { - let mut s: [u8; 32] = [' ' as u8; 32]; - - let was_hex = if seed.len() == 66 && &seed[0..2] == "0x" { - if let Ok(d) = hex::decode(&seed[2..]) { - s.copy_from_slice(&d); - true - } else { false } - } else { false }; - - if !was_hex { - let len = ::std::cmp::min(32, seed.len()); - &mut s[..len].copy_from_slice(&seed.as_bytes()[..len]); - } - - s + additional: HashMap, } impl Store { @@ -149,44 +69,36 @@ impl Store { /// Generate a new key, placing it into the store. pub fn generate(&self, password: &str) -> Result { - let (pair, pkcs_bytes) = Pair::generate_with_pkcs8(); - let key_file = EncryptedKey::encrypt( - &pkcs_bytes, - password, - NonZeroU32::new(KEY_ITERATIONS as u32).expect("KEY_ITERATIONS is not zero; QED") - ); - + let (pair, phrase) = Pair::generate_with_phrase(Some(password)); let mut file = File::create(self.key_file_path(&pair.public()))?; - ::serde_json::to_writer(&file, &key_file)?; - + ::serde_json::to_writer(&file, &phrase)?; file.flush()?; - Ok(pair) } /// Create a new key from seed. Do not place it into the store. - /// Only the first 32 bytes of the sead are used. This is meant to be used for testing only. - // FIXME: remove this - https://github.com/paritytech/substrate/issues/1063 pub fn generate_from_seed(&mut self, seed: &str) -> Result { - let padded_seed = pad_seed(seed); - let pair = Pair::from_seed(&padded_seed); - self.additional.insert(pair.public(), padded_seed); + let pair = Pair::from_string(seed, None) + .map_err(|_| Error::from(ErrorKind::InvalidSeed))?; + self.additional.insert(pair.public(), pair.clone()); Ok(pair) } /// Load a key file with given public key. pub fn load(&self, public: &Public, password: &str) -> Result { - if let Some(ref seed) = self.additional.get(public) { - let pair = Pair::from_seed(seed); - return Ok(pair); + if let Some(pair) = self.additional.get(public) { + return Ok(pair.clone()); } let path = self.key_file_path(public); let file = File::open(path)?; - let encrypted_key: EncryptedKey = ::serde_json::from_reader(&file)?; - let pkcs_bytes = encrypted_key.decrypt(password)?; - - Pair::from_pkcs8(&pkcs_bytes[..]).map_err(|_| ErrorKind::InvalidPKCS8.into()) + let phrase: String = ::serde_json::from_reader(&file)?; + let pair = Pair::from_phrase(&phrase, Some(password)) + .map_err(|_| Error::from(ErrorKind::InvalidPhrase))?; + if &pair.public() != public { + bail!(ErrorKind::InvalidPassword); + } + Ok(pair) } /// Get public keys of all stored keys. @@ -227,42 +139,6 @@ mod tests { use super::*; use tempdir::TempDir; - #[test] - fn encrypt_and_decrypt() { - let plain = [1; PKCS_LEN]; - let encrypted_key = EncryptedKey::encrypt(&plain, "thepassword", NonZeroU32::new(KEY_ITERATIONS as u32).expect("KEY_ITERATIONS is not zero; QED")); - - let decrypted_key = encrypted_key.decrypt("thepassword").unwrap(); - - assert_eq!(&plain[..], &decrypted_key[..]); - } - - #[test] - fn decrypt_wrong_password_fails() { - let plain = [1; PKCS_LEN]; - let encrypted_key = EncryptedKey::encrypt( - &plain, - "thepassword", - NonZeroU32::new(KEY_ITERATIONS as u32).expect("KEY_ITERATIONS is not zero; QED") - ); - - assert!(encrypted_key.decrypt("thepassword2").is_err()); - } - - #[test] - fn decrypt_wrong_iterations_fails() { - let plain = [1; PKCS_LEN]; - let mut encrypted_key = EncryptedKey::encrypt( - &plain, - "thepassword", - NonZeroU32::new(KEY_ITERATIONS as u32).expect("KEY_ITERATIONS is not zero; QED") - ); - - encrypted_key.iterations = NonZeroU32::new(encrypted_key.iterations.get() - 64).unwrap(); - - assert!(encrypted_key.decrypt("thepassword").is_err()); - } - #[test] fn basic_store() { let temp_dir = TempDir::new("keystore").unwrap(); @@ -285,16 +161,7 @@ mod tests { let temp_dir = TempDir::new("keystore").unwrap(); let mut store = Store::open(temp_dir.path().to_owned()).unwrap(); - let pair = store.generate_from_seed("0x1").unwrap(); - assert_eq!("5GqhgbUd2S9uc5Tm7hWhw29Tw2jBnuHshmTV1fDF4V1w3G2z", pair.public().to_ss58check()); - let pair = store.generate_from_seed("0x3d97c819d68f9bafa7d6e79cb991eebcd77d966c5334c0b94d9e1fa7ad0869dc").unwrap(); assert_eq!("5DKUrgFqCPV8iAXx9sjy1nyBygQCeiUYRFWurZGhnrn3HBL8", pair.public().to_ss58check()); - - let pair = store.generate_from_seed("12345678901234567890123456789022").unwrap(); - assert_eq!("5DscZvfjnM5im7oKRXXP9xtCG1SEwfMb8J5eGLmw5EHhoHR3", pair.public().to_ss58check()); - - let pair = store.generate_from_seed("1").unwrap(); - assert_eq!("5DYnksEZFc7kgtfyNM1xK2eBtW142gZ3Ho3NQubrF2S6B2fq", pair.public().to_ss58check()); } } diff --git a/core/network/src/test/mod.rs b/core/network/src/test/mod.rs index e2cfe04e66..24e05daec0 100644 --- a/core/network/src/test/mod.rs +++ b/core/network/src/test/mod.rs @@ -39,19 +39,18 @@ use crate::consensus_gossip::ConsensusGossip; use crossbeam_channel::{self as channel, Sender, select}; use futures::Future; use futures::sync::{mpsc, oneshot}; -use keyring::Keyring; use crate::message::{Message, ConsensusEngineId}; use network_libp2p::{NodeIndex, ProtocolId, PeerId}; use parity_codec::Encode; use parking_lot::{Mutex, RwLock}; -use primitives::{H256, Ed25519AuthorityId}; +use primitives::{H256, ed25519::Public as AuthorityId}; use crate::protocol::{ConnectedPeer, Context, FromNetworkMsg, Protocol, ProtocolMsg}; use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{AuthorityIdFor, Block as BlockT, Digest, DigestItem, Header, NumberFor}; use runtime_primitives::Justification; use crate::service::{network_channel, NetworkChan, NetworkLink, NetworkMsg, NetworkPort, TransactionPool}; use crate::specialization::NetworkSpecialization; -use test_client; +use test_client::{self, AccountKeyring}; pub use test_client::runtime::{Block, Extrinsic, Hash, Transfer}; pub use test_client::TestClient; @@ -458,12 +457,12 @@ impl + Clone> Peer { if with_tx { self.generate_blocks_at(at, count, BlockOrigin::File, |mut builder| { let transfer = Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Alice.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Alice.into(), amount: 1, nonce, }; - let signature = Keyring::from_raw_public(transfer.from.to_fixed_bytes()).unwrap().sign(&transfer.encode()).into(); + let signature = AccountKeyring::from_public(&transfer.from).unwrap().sign(&transfer.encode()).into(); builder.push(Extrinsic::Transfer(transfer, signature)).unwrap(); nonce = nonce + 1; builder.bake().unwrap() @@ -473,7 +472,7 @@ impl + Clone> Peer { } } - pub fn push_authorities_change_block(&self, new_authorities: Vec) -> H256 { + pub fn push_authorities_change_block(&self, new_authorities: Vec) -> H256 { self.generate_blocks(1, BlockOrigin::File, |mut builder| { builder.push(Extrinsic::AuthoritiesChange(new_authorities.clone())).unwrap(); builder.bake().unwrap() diff --git a/core/primitives/Cargo.toml b/core/primitives/Cargo.toml index 7aeeaf1029..04094ff01e 100644 --- a/core/primitives/Cargo.toml +++ b/core/primitives/Cargo.toml @@ -27,6 +27,8 @@ rand = { version = "0.6", optional = true } sha2 = { version = "0.8", optional = true } substrate-bip39 = { git = "https://github.com/paritytech/substrate-bip39", optional = true } tiny-bip39 = { version = "0.6.0", optional = true } +hex = { version = "0.3", optional = true } +regex = {version = "1.1", optional = true } [dev-dependencies] substrate-serializer = { path = "../serializer" } @@ -55,6 +57,7 @@ std = [ "ring", "untrusted", "hex-literal", + "hex", "base58", "substrate-bip39", "tiny-bip39", @@ -63,4 +66,5 @@ std = [ "rand", "sha2", "schnorrkel", + "regex", ] diff --git a/core/primitives/src/authority_id.rs b/core/primitives/src/authority_id.rs deleted file mode 100644 index e1b97fbc5b..0000000000 --- a/core/primitives/src/authority_id.rs +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright 2017-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 . - -#[cfg(feature = "std")] -use serde::{Serialize, Serializer, Deserialize, Deserializer}; -use parity_codec::{Encode, Decode}; -use crate::H256; - -/// An identifier for an authority in the consensus algorithm. The same size as ed25519::Public. -#[derive(Clone, Copy, PartialEq, Eq, Default, Encode, Decode)] -pub struct Ed25519AuthorityId(pub [u8; 32]); - -#[cfg(feature = "std")] -impl ::std::fmt::Display for Ed25519AuthorityId { - fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { - write!(f, "{}", crate::ed25519::Public(self.0).to_ss58check()) - } -} - -#[cfg(feature = "std")] -impl ::std::fmt::Debug for Ed25519AuthorityId { - fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { - let h = format!("{}", crate::hexdisplay::HexDisplay::from(&self.0)); - write!(f, "{} ({}…{})", crate::ed25519::Public(self.0).to_ss58check(), &h[0..8], &h[60..]) - } -} - -#[cfg(feature = "std")] -impl ::std::hash::Hash for Ed25519AuthorityId { - fn hash(&self, state: &mut H) { - self.0.hash(state); - } -} - -impl AsRef<[u8; 32]> for Ed25519AuthorityId { - fn as_ref(&self) -> &[u8; 32] { - &self.0 - } -} - -impl AsRef<[u8]> for Ed25519AuthorityId { - fn as_ref(&self) -> &[u8] { - &self.0[..] - } -} - -impl Into<[u8; 32]> for Ed25519AuthorityId { - fn into(self) -> [u8; 32] { - self.0 - } -} - -impl From<[u8; 32]> for Ed25519AuthorityId { - fn from(a: [u8; 32]) -> Self { - Ed25519AuthorityId(a) - } -} - -impl AsRef for Ed25519AuthorityId { - fn as_ref(&self) -> &Ed25519AuthorityId { - &self - } -} - -impl Into for Ed25519AuthorityId { - fn into(self) -> H256 { - self.0.into() - } -} - -#[cfg(feature = "std")] -impl Serialize for Ed25519AuthorityId { - fn serialize(&self, serializer: S) -> Result where S: Serializer { - crate::ed25519::serialize(&self, serializer) - } -} - -#[cfg(feature = "std")] -impl<'de> Deserialize<'de> for Ed25519AuthorityId { - fn deserialize(deserializer: D) -> Result where D: Deserializer<'de> { - crate::ed25519::deserialize(deserializer) - } -} diff --git a/core/primitives/src/crypto.rs b/core/primitives/src/crypto.rs new file mode 100644 index 0000000000..bf2ef3df46 --- /dev/null +++ b/core/primitives/src/crypto.rs @@ -0,0 +1,486 @@ +// Copyright 2017-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 . + +// tag::description[] +//! Cryptographic utilities. +// end::description[] + +#[cfg(feature = "std")] +use parity_codec::{Encode, Decode}; +#[cfg(feature = "std")] +use regex::Regex; +#[cfg(feature = "std")] +use base58::{FromBase58, ToBase58}; + +/// The infallible type. +#[derive(Debug)] +pub enum Infallible {} + +/// The length of the junction identifier. Note that this is also referred to as the +/// `CHAIN_CODE_LENGTH` in the context of Schnorrkel. +#[cfg(feature = "std")] +pub const JUNCTION_ID_LEN: usize = 32; + +/// Similar to `From`, except that the onus is on the part of the caller to ensure +/// that data passed in makes sense. Basically, you're not guaranteed to get anything +/// sensible out. +pub trait UncheckedFrom { + /// Convert from an instance of `T` to Self. This is not guaranteed to be + /// whatever counts as a valid instance of `T` and it's up to the caller to + /// ensure that it makes sense. + fn unchecked_from(t: T) -> Self; +} + +/// The counterpart to `UncheckedFrom`. +pub trait UncheckedInto { + /// The counterpart to `unchecked_from`. + fn unchecked_into(self) -> T; +} + +impl> UncheckedInto for S { + fn unchecked_into(self) -> T { + T::unchecked_from(self) + } +} + +/// An error with the interpretation of a secret. +#[derive(Debug, Clone, PartialEq, Eq)] +#[cfg(feature = "std")] +pub enum SecretStringError { + /// The overall format was invalid (e.g. the seed phrase contained symbols). + InvalidFormat, + /// The seed phrase provided is not a valid BIP39 phrase. + InvalidPhrase, + /// The supplied password was invalid. + InvalidPassword, + /// The seed is invalid (bad content). + InvalidSeed, + /// The seed has an invalid length. + InvalidSeedLength, + /// The derivation path was invalid (e.g. contains soft junctions when they are not supported). + InvalidPath, +} + +/// A since derivation junction description. It is the single parameter used when creating +/// a new secret key from an existing secret key and, in the case of `SoftRaw` and `SoftIndex` +/// a new public key from an existing public key. +#[derive(Copy, Clone, Eq, PartialEq, Hash, Debug, Encode, Decode)] +#[cfg(feature = "std")] +pub enum DeriveJunction { + /// Soft (vanilla) derivation. Public keys have a correspondent derivation. + Soft([u8; JUNCTION_ID_LEN]), + /// Hard ("hardened") derivation. Public keys do not have a correspondent derivation. + Hard([u8; JUNCTION_ID_LEN]), +} + +#[cfg(feature = "std")] +impl DeriveJunction { + /// Consume self to return a soft derive junction with the same chain code. + pub fn soften(self) -> Self { DeriveJunction::Soft(self.unwrap_inner()) } + + /// Consume self to return a hard derive junction with the same chain code. + pub fn harden(self) -> Self { DeriveJunction::Hard(self.unwrap_inner()) } + + /// Create a new soft (vanilla) DeriveJunction from a given, encodable, value. + /// + /// If you need a hard junction, use `hard()`. + pub fn soft(index: T) -> Self { + let mut cc: [u8; JUNCTION_ID_LEN] = Default::default(); + index.using_encoded(|data| if data.len() > JUNCTION_ID_LEN { + let hash_result = blake2_rfc::blake2b::blake2b(JUNCTION_ID_LEN, &[], data); + let hash = hash_result.as_bytes(); + cc.copy_from_slice(hash); + } else { + cc[0..data.len()].copy_from_slice(data); + }); + DeriveJunction::Soft(cc) + } + + /// Create a new hard (hardened) DeriveJunction from a given, encodable, value. + /// + /// If you need a soft junction, use `soft()`. + pub fn hard(index: T) -> Self { + Self::soft(index).harden() + } + + /// Consume self to return the chain code. + pub fn unwrap_inner(self) -> [u8; JUNCTION_ID_LEN] { + match self { + DeriveJunction::Hard(c) | DeriveJunction::Soft(c) => c, + } + } + + /// Get a reference to the inner junction id. + pub fn inner(&self) -> &[u8; JUNCTION_ID_LEN] { + match self { + DeriveJunction::Hard(ref c) | DeriveJunction::Soft(ref c) => c, + } + } + + /// Return `true` if the junction is soft. + pub fn is_soft(&self) -> bool { + match *self { + DeriveJunction::Soft(_) => true, + _ => false, + } + } + + /// Return `true` if the junction is hard. + pub fn is_hard(&self) -> bool { + match *self { + DeriveJunction::Hard(_) => true, + _ => false, + } + } +} + +#[cfg(feature = "std")] +impl> From for DeriveJunction { + fn from(j: T) -> DeriveJunction { + let j = j.as_ref(); + let (code, hard) = if j.starts_with("/") { + (&j[1..], true) + } else { + (j, false) + }; + + let res = if let Ok(n) = str::parse::(code) { + // number + DeriveJunction::soft(n) + } else { + // something else + DeriveJunction::soft(code) + }; + + if hard { + res.harden() + } else { + res + } + } +} + +/// An error type for SS58 decoding. +#[cfg(feature = "std")] +#[derive(Clone, Copy, Eq, PartialEq, Debug)] +pub enum PublicError { + /// Bad alphabet. + BadBase58, + /// Bad length. + BadLength, + /// Unknown version. + UnknownVersion, + /// Invalid checksum. + InvalidChecksum, + /// Invalid format. + InvalidFormat, + /// Invalid derivation path. + InvalidPath, +} + +/// Key that can be encoded to/from SS58. +#[cfg(feature = "std")] +pub trait Ss58Codec: Sized { + /// Some if the string is a properly encoded SS58Check address. + fn from_ss58check(s: &str) -> Result; + /// Some if the string is a properly encoded SS58Check address, optionally with + /// a derivation path following. + fn from_string(s: &str) -> Result { Self::from_ss58check(s) } + /// Return the ss58-check string for this key. + fn to_ss58check(&self) -> String; +} + +#[cfg(feature = "std")] +/// Derivable key trait. +pub trait Derive: Sized { + /// Derive a child key from a series of given junctions. + /// + /// Will be `None` for public keys if there are any hard junctions in there. + fn derive>(&self, _path: Iter) -> Option { None } +} + +#[cfg(feature = "std")] +impl + AsRef<[u8]> + Default + Derive> Ss58Codec for T { + fn from_ss58check(s: &str) -> Result { + let mut res = T::default(); + let len = res.as_mut().len(); + let d = s.from_base58().map_err(|_| PublicError::BadBase58)?; // failure here would be invalid encoding. + if d.len() != len + 3 { + // Invalid length. + return Err(PublicError::BadLength); + } + if d[0] != 42 { + // Invalid version. + return Err(PublicError::UnknownVersion); + } + if d[len+1..len+3] != blake2_rfc::blake2b::blake2b(64, &[], &d[0..len+1]).as_bytes()[0..2] { + // Invalid checksum. + return Err(PublicError::InvalidChecksum); + } + res.as_mut().copy_from_slice(&d[1..len+1]); + Ok(res) + } + + fn to_ss58check(&self) -> String { + let mut v = vec![42u8]; + v.extend(self.as_ref()); + let r = blake2_rfc::blake2b::blake2b(64, &[], &v); + v.extend(&r.as_bytes()[0..2]); + v.to_base58() + } + + fn from_string(s: &str) -> Result { + let re = Regex::new(r"^(?P[\w\d]+)(?P(//?[^/]+)*)$") + .expect("constructed from known-good static value; qed"); + let cap = re.captures(s).ok_or(PublicError::InvalidFormat)?; + let re_junction = Regex::new(r"/(/?[^/]+)") + .expect("constructed from known-good static value; qed"); + let path = re_junction.captures_iter(&cap["path"]) + .map(|f| DeriveJunction::from(&f[1])); + Self::from_ss58check(&cap["ss58"])?.derive(path).ok_or(PublicError::InvalidPath) + } +} + +/// Trait suitable for typical cryptographic PKI key pair type. +/// +/// For now it just specifies how to create a key from a phrase and derivation path. +#[cfg(feature = "std")] +pub trait Pair: Sized { + /// TThe type which is used to encode a public key. + type Public; + + /// The type used to (minimally) encode the data required to securely create + /// a new key pair. + type Seed; + + /// The type used to represent a signature. Can be created from a key pair and a message + /// and verified with the message and a public key. + type Signature; + + /// Error returned from the `derive` function. + type DeriveError; + + /// Generate new secure (random) key pair. + /// + /// This is only for ephemeral keys really, since you won't have access to the secret key + /// for storage. If you want a persistent key pair, use `generate_with_phrase` instead. + fn generate() -> Self; + + /// Generate new secure (random) key pair and provide the recovery phrase. + /// + /// You can recover the same key later with `from_phrase`. + /// + /// This is generally slower than `generate()`, so prefer that unless you need to persist + /// the key from the current session. + fn generate_with_phrase(password: Option<&str>) -> (Self, String); + + /// Returns the KeyPair from the English BIP39 seed `phrase`, or `None` if it's invalid. + fn from_phrase(phrase: &str, password: Option<&str>) -> Result; + + /// Derive a child key from a series of given junctions. + fn derive>(&self, path: Iter) -> Result; + + /// Generate new key pair from the provided `seed`. + /// + /// @WARNING: THIS WILL ONLY BE SECURE IF THE `seed` IS SECURE. If it can be guessed + /// by an attacker then they can also derive your key. + fn from_seed(seed: Self::Seed) -> Self; + + /// Make a new key pair from secret seed material. The slice must be the correct size or + /// it will return `None`. + /// + /// @WARNING: THIS WILL ONLY BE SECURE IF THE `seed` IS SECURE. If it can be guessed + /// by an attacker then they can also derive your key. + fn from_seed_slice(seed: &[u8]) -> Result; + + /// Construct a key from a phrase, password and path. + fn from_standard_components< + I: Iterator + >(phrase: &str, password: Option<&str>, path: I) -> Result; + + /// Sign a message. + fn sign(&self, message: &[u8]) -> Self::Signature; + + /// Verify a signature on a message. Returns true if the signature is good. + fn verify, M: AsRef<[u8]>>(sig: &Self::Signature, message: M, pubkey: P) -> bool; + + /// Verify a signature on a message. Returns true if the signature is good. + fn verify_weak, M: AsRef<[u8]>>(sig: &[u8], message: M, pubkey: P) -> bool; + + /// Get the public key. + fn public(&self) -> Self::Public; + + /// Interprets the string `s` in order to generate a key Pair. + /// + /// This takes a helper function to do the key generation from a phrase, password and + /// junction iterator. + /// + /// - If `s` is a possibly `0x` prefixed 64-digit hex string, then it will be interpreted + /// directly as a `MiniSecretKey` (aka "seed" in `subkey`). + /// - If `s` is a valid BIP-39 key phrase of 12, 15, 18, 21 or 24 words, then the key will + /// be derived from it. In this case: + /// - the phrase may be followed by one or more items delimited by `/` characters. + /// - the path may be followed by `///`, in which case everything after the `///` is treated + /// as a password. + /// In this case they are interpreted as HDKD junctions; purely numeric items are interpreted as + /// integers, non-numeric items as strings. Junctions prefixed with `/` are interpreted as soft + /// junctions, and with `//` as hard junctions. + /// + /// There is no correspondence mapping between SURI strings and the keys they represent. + /// Two different non-identical strings can actually lead to the same secret being derived. + /// Notably, integer junction indices may be legally prefixed with arbitrary number of zeros. + /// Similarly an empty password (ending the SURI with `///`) is perfectly valid and will generally + /// be equivalent to no password at all. + /// + /// `None` is returned if no matches are found. + fn from_string(s: &str, password_override: Option<&str>) -> Result { + let hex_seed = if s.starts_with("0x") { + &s[2..] + } else { + s + }; + + if let Ok(d) = hex::decode(hex_seed) { + if let Ok(r) = Self::from_seed_slice(&d) { + return Ok(r) + } + } + + let re = Regex::new(r"^(?P\w+( \w+)*)(?P(//?[^/]+)*)(///(?P.*))?$") + .expect("constructed from known-good static value; qed"); + let cap = re.captures(s).ok_or(SecretStringError::InvalidFormat)?; + let re_junction = Regex::new(r"/(/?[^/]+)") + .expect("constructed from known-good static value; qed"); + let path = re_junction.captures_iter(&cap["path"]) + .map(|f| DeriveJunction::from(&f[1])); + Self::from_standard_components( + &cap["phrase"], + password_override.or_else(|| cap.name("password").map(|m| m.as_str())), + path, + ) + } +} + +#[cfg(test)] +mod tests { + use crate::DeriveJunction; + use hex_literal::{hex, hex_impl}; + use super::*; + + #[derive(Eq, PartialEq, Debug)] + enum TestPair { + Generated, + GeneratedWithPhrase, + GeneratedFromPhrase{phrase: String, password: Option}, + Standard{phrase: String, password: Option, path: Vec}, + Seed(Vec), + } + + impl Pair for TestPair { + type Public = (); + type Seed = (); + type Signature = (); + type DeriveError = (); + + fn generate() -> Self { TestPair::Generated } + fn generate_with_phrase(_password: Option<&str>) -> (Self, String) { (TestPair::GeneratedWithPhrase, "".into()) } + fn from_phrase(phrase: &str, password: Option<&str>) -> Result { + Ok(TestPair::GeneratedFromPhrase{ phrase: phrase.to_owned(), password: password.map(Into::into) }) + } + fn derive>(&self, _path: Iter) -> Result { + Err(()) + } + fn from_seed(_seed: Self::Seed) -> Self { TestPair::Seed(vec![]) } + fn sign(&self, _message: &[u8]) -> Self::Signature { () } + fn verify, M: AsRef<[u8]>>(_sig: &Self::Signature, _message: M, _pubkey: P) -> bool { true } + fn verify_weak, M: AsRef<[u8]>>(_sig: &[u8], _message: M, _pubkey: P) -> bool { true } + fn public(&self) -> Self::Public { () } + fn from_standard_components>(phrase: &str, password: Option<&str>, path: I) -> Result { + Ok(TestPair::Standard { phrase: phrase.to_owned(), password: password.map(ToOwned::to_owned), path: path.collect() }) + } + fn from_seed_slice(seed: &[u8]) -> Result { + Ok(TestPair::Seed(seed.to_owned())) + } + } + + #[test] + fn interpret_std_seed_should_work() { + assert_eq!( + TestPair::from_string("0x0123456789abcdef", None), + Ok(TestPair::Seed(hex!["0123456789abcdef"][..].to_owned())) + ); + assert_eq!( + TestPair::from_string("0123456789abcdef", None), + Ok(TestPair::Seed(hex!["0123456789abcdef"][..].to_owned())) + ); + } + + #[test] + fn password_override_should_work() { + assert_eq!( + TestPair::from_string("hello world///password", None), + TestPair::from_string("hello world", Some("password")), + ); + assert_eq!( + TestPair::from_string("hello world///password", None), + TestPair::from_string("hello world///other password", Some("password")), + ); + } + + #[test] + fn interpret_std_secret_string_should_work() { + assert_eq!( + TestPair::from_string("hello world", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: None, path: vec![]}) + ); + assert_eq!( + TestPair::from_string("hello world/1", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: None, path: vec![DeriveJunction::soft(1)]}) + ); + assert_eq!( + TestPair::from_string("hello world/DOT", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: None, path: vec![DeriveJunction::soft("DOT")]}) + ); + assert_eq!( + TestPair::from_string("hello world//1", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: None, path: vec![DeriveJunction::hard(1)]}) + ); + assert_eq!( + TestPair::from_string("hello world//DOT", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: None, path: vec![DeriveJunction::hard("DOT")]}) + ); + assert_eq!( + TestPair::from_string("hello world//1/DOT", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: None, path: vec![DeriveJunction::hard(1), DeriveJunction::soft("DOT")]}) + ); + assert_eq!( + TestPair::from_string("hello world//DOT/1", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: None, path: vec![DeriveJunction::hard("DOT"), DeriveJunction::soft(1)]}) + ); + assert_eq!( + TestPair::from_string("hello world///password", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: Some("password".to_owned()), path: vec![]}) + ); + assert_eq!( + TestPair::from_string("hello world//1/DOT///password", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: Some("password".to_owned()), path: vec![DeriveJunction::hard(1), DeriveJunction::soft("DOT")]}) + ); + assert_eq!( + TestPair::from_string("hello world/1//DOT///password", None), + Ok(TestPair::Standard{phrase: "hello world".to_owned(), password: Some("password".to_owned()), path: vec![DeriveJunction::soft(1), DeriveJunction::hard("DOT")]}) + ); + } +} diff --git a/core/primitives/src/ed25519.rs b/core/primitives/src/ed25519.rs index 9b85600962..1d1a1bff4a 100644 --- a/core/primitives/src/ed25519.rs +++ b/core/primitives/src/ed25519.rs @@ -18,58 +18,251 @@ //! Simple Ed25519 API. // end::description[] + +use crate::{hash::H256, hash::H512}; +use parity_codec::{Encode, Decode}; + +#[cfg(feature = "std")] use untrusted; +#[cfg(feature = "std")] use blake2_rfc; -use ring::{rand, signature, signature::KeyPair}; -use crate::{hash::H512, Ed25519AuthorityId}; +#[cfg(feature = "std")] +use ring::{signature, signature::KeyPair, rand::{SecureRandom, SystemRandom}}; +#[cfg(feature = "std")] use base58::{ToBase58, FromBase58}; -use parity_codec::{Encode, Decode}; +#[cfg(feature = "std")] +use substrate_bip39::seed_from_entropy; +#[cfg(feature = "std")] +use bip39::{Mnemonic, Language, MnemonicType}; +#[cfg(feature = "std")] +use crate::crypto::{Pair as TraitPair, DeriveJunction, SecretStringError, Derive}; +#[cfg(feature = "std")] +use serde::{de, Serializer, Serialize, Deserializer, Deserialize}; +use crate::crypto::UncheckedFrom; +/// A secret seed. It's not called a "secret key" because ring doesn't expose the secret keys +/// of the key pair (yeah, dumb); as such we're forced to remember the seed manually if we +/// will need it later (such as for HDKD). #[cfg(feature = "std")] -use serde::{de, Serializer, Deserializer, Deserialize}; +type Seed = [u8; 32]; -/// Alias to 512-bit hash when used in the context of a signature on the relay chain. -pub type Signature = H512; +/// A public key. +#[derive(PartialEq, Eq, PartialOrd, Ord, Clone, Encode, Decode, Default)] +pub struct Public(pub [u8; 32]); -/// Length of the PKCS#8 encoding of the key. -pub const PKCS_LEN: usize = 85; +/// A key pair. +#[cfg(feature = "std")] +pub struct Pair(signature::Ed25519KeyPair, Seed); -/// A localized signature also contains sender information. -#[derive(PartialEq, Eq, Clone, Debug, Encode, Decode)] -pub struct LocalizedSignature { - /// The signer of the signature. - pub signer: Public, - /// The signature itself. - pub signature: Signature, +#[cfg(feature = "std")] +impl Clone for Pair { + fn clone(&self) -> Self { + Pair::from_seed(self.1.clone()) + } } -/// Verify a message without type checking the parameters' types for the right size. -/// Returns true if the signature is good. -pub fn verify>(sig: &[u8], message: &[u8], public: P) -> bool { - let public_key = untrusted::Input::from(public.as_ref()); - let msg = untrusted::Input::from(message); - let sig = untrusted::Input::from(sig); +impl AsRef<[u8; 32]> for Public { + fn as_ref(&self) -> &[u8; 32] { + &self.0 + } +} - match signature::verify(&signature::ED25519, public_key, msg, sig) { - Ok(_) => true, - _ => false, +impl AsRef<[u8]> for Public { + fn as_ref(&self) -> &[u8] { + &self.0[..] } } -/// A public key. -#[derive(PartialEq, Eq, Clone, Encode, Decode)] -pub struct Public(pub [u8; 32]); +impl AsMut<[u8]> for Public { + fn as_mut(&mut self) -> &mut [u8] { + &mut self.0[..] + } +} -/// A key pair. -pub struct Pair(signature::Ed25519KeyPair); +impl From for [u8; 32] { + fn from(x: Public) -> Self { + x.0 + } +} + +#[cfg(feature = "std")] +impl From for Public { + fn from(x: Pair) -> Self { + x.public() + } +} + +impl AsRef for Public { + fn as_ref(&self) -> &Public { + &self + } +} + +impl From for H256 { + fn from(x: Public) -> Self { + x.0.into() + } +} + +impl UncheckedFrom<[u8; 32]> for Public { + fn unchecked_from(x: [u8; 32]) -> Self { + Public::from_raw(x) + } +} +impl UncheckedFrom for Public { + fn unchecked_from(x: H256) -> Self { + Public::from_h256(x) + } +} + +#[cfg(feature = "std")] +impl ::std::fmt::Display for Public { + fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { + write!(f, "{}", self.to_ss58check()) + } +} + +#[cfg(feature = "std")] +impl ::std::fmt::Debug for Public { + fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { + let s = self.to_ss58check(); + write!(f, "{} ({}...)", crate::hexdisplay::HexDisplay::from(&self.0), &s[0..8]) + } +} + +#[cfg(feature = "std")] +impl Serialize for Public { + fn serialize(&self, serializer: S) -> Result where S: Serializer { + serializer.serialize_str(&self.to_ss58check()) + } +} + +#[cfg(feature = "std")] +impl<'de> Deserialize<'de> for Public { + fn deserialize(deserializer: D) -> Result where D: Deserializer<'de> { + Public::from_ss58check(&String::deserialize(deserializer)?) + .map_err(|e| de::Error::custom(format!("{:?}", e))) + } +} + +#[cfg(feature = "std")] impl ::std::hash::Hash for Public { fn hash(&self, state: &mut H) { self.0.hash(state); } } +/// A signature (a 512-bit value). +#[derive(Encode, Decode)] +pub struct Signature(pub [u8; 64]); + +impl Clone for Signature { + fn clone(&self) -> Self { + let mut r = [0u8; 64]; + r.copy_from_slice(&self.0[..]); + Signature(r) + } +} + +impl Default for Signature { + fn default() -> Self { + Signature([0u8; 64]) + } +} + +impl PartialEq for Signature { + fn eq(&self, b: &Self) -> bool { + &self.0[..] == &b.0[..] + } +} + +impl Eq for Signature {} + +impl From for H512 { + fn from(v: Signature) -> H512 { + H512::from(v.0) + } +} + +impl From for [u8; 64] { + fn from(v: Signature) -> [u8; 64] { + v.0 + } +} + +impl AsRef<[u8; 64]> for Signature { + fn as_ref(&self) -> &[u8; 64] { + &self.0 + } +} + +impl AsRef<[u8]> for Signature { + fn as_ref(&self) -> &[u8] { + &self.0[..] + } +} + +impl AsMut<[u8]> for Signature { + fn as_mut(&mut self) -> &mut [u8] { + &mut self.0[..] + } +} + +#[cfg(feature = "std")] +impl ::std::fmt::Debug for Signature { + fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { + write!(f, "{}", crate::hexdisplay::HexDisplay::from(&self.0)) + } +} + +#[cfg(feature = "std")] +impl ::std::hash::Hash for Signature { + fn hash(&self, state: &mut H) { + ::std::hash::Hash::hash(&self.0[..], state); + } +} + +impl Signature { + /// A new instance from the given 64-byte `data`. + /// + /// NOTE: No checking goes on to ensure this is a real signature. Only use it if + /// you are certain that the array actually is a signature. GIGO! + pub fn from_raw(data: [u8; 64]) -> Signature { + Signature(data) + } + + /// A new instance from the given slice that should be 64 bytes long. + /// + /// NOTE: No checking goes on to ensure this is a real signature. Only use it if + /// you are certain that the array actually is a signature. GIGO! + pub fn from_slice(data: &[u8]) -> Self { + let mut r = [0u8; 64]; + r.copy_from_slice(data); + Signature(r) + } + + /// A new instance from an H512. + /// + /// NOTE: No checking goes on to ensure this is a real signature. Only use it if + /// you are certain that the array actually is a signature. GIGO! + pub fn from_h512(v: H512) -> Signature { + Signature(v.into()) + } +} + +/// A localized signature also contains sender information. +#[cfg(feature = "std")] +#[derive(PartialEq, Eq, Clone, Debug, Encode, Decode)] +pub struct LocalizedSignature { + /// The signer of the signature. + pub signer: Public, + /// The signature itself. + pub signature: Signature, +} + /// An error type for SS58 decoding. +#[cfg(feature = "std")] #[derive(Clone, Copy, Eq, PartialEq, Debug)] pub enum PublicError { /// Bad alphabet. @@ -84,36 +277,33 @@ pub enum PublicError { impl Public { /// A new instance from the given 32-byte `data`. + /// + /// NOTE: No checking goes on to ensure this is a real public key. Only use it if + /// you are certain that the array actually is a pubkey. GIGO! pub fn from_raw(data: [u8; 32]) -> Self { Public(data) } /// A new instance from the given slice that should be 32 bytes long. + /// + /// NOTE: No checking goes on to ensure this is a real public key. Only use it if + /// you are certain that the array actually is a pubkey. GIGO! pub fn from_slice(data: &[u8]) -> Self { let mut r = [0u8; 32]; r.copy_from_slice(data); Public(r) } - /// Some if the string is a properly encoded SS58Check address. - pub fn from_ss58check(s: &str) -> Result { - let d = s.from_base58().map_err(|_| PublicError::BadBase58)?; // failure here would be invalid encoding. - if d.len() != 35 { - // Invalid length. - return Err(PublicError::BadLength); - } - if d[0] != 42 { - // Invalid version. - return Err(PublicError::UnknownVersion); - } - if d[33..35] != blake2_rfc::blake2b::blake2b(64, &[], &d[0..33]).as_bytes()[0..2] { - // Invalid checksum. - return Err(PublicError::InvalidChecksum); - } - Ok(Self::from_slice(&d[1..33])) + /// A new instance from an H256. + /// + /// NOTE: No checking goes on to ensure this is a real public key. Only use it if + /// you are certain that the array actually is a pubkey. GIGO! + pub fn from_h256(x: H256) -> Self { + Public(x.into()) } /// Return a `Vec` filled with raw data. + #[cfg(feature = "std")] pub fn to_raw_vec(self) -> Vec { let r: &[u8; 32] = self.as_ref(); r.to_vec() @@ -129,6 +319,30 @@ impl Public { pub fn as_array_ref(&self) -> &[u8; 32] { self.as_ref() } +} + +#[cfg(feature = "std")] +impl Derive for Public {} + +#[cfg(feature = "std")] +impl Public { + /// Some if the string is a properly encoded SS58Check address. + pub fn from_ss58check(s: &str) -> Result { + let d = s.from_base58().map_err(|_| PublicError::BadBase58)?; // failure here would be invalid encoding. + if d.len() != 35 { + // Invalid length. + return Err(PublicError::BadLength); + } + if d[0] != 42 { + // Invalid version. + return Err(PublicError::UnknownVersion); + } + if d[33..35] != blake2_rfc::blake2b::blake2b(64, &[], &d[0..33]).as_bytes()[0..2] { + // Invalid checksum. + return Err(PublicError::InvalidChecksum); + } + Ok(Self::from_slice(&d[1..33])) + } /// Return the ss58-check string for this key. pub fn to_ss58check(&self) -> String { @@ -140,178 +354,197 @@ impl Public { } } -impl AsRef<[u8; 32]> for Public { - fn as_ref(&self) -> &[u8; 32] { - &self.0 - } -} - -impl AsRef<[u8]> for Public { - fn as_ref(&self) -> &[u8] { - &self.0[..] - } -} - -impl Into<[u8; 32]> for Public { - fn into(self) -> [u8; 32] { - self.0 - } -} - -impl AsRef for Public { - fn as_ref(&self) -> &Public { - &self - } -} - +#[cfg(feature = "std")] impl AsRef for Pair { fn as_ref(&self) -> &Pair { &self } } -impl Into for Public { - fn into(self) -> Ed25519AuthorityId { - Ed25519AuthorityId(self.0) - } -} - -impl From for Public { - fn from(id: Ed25519AuthorityId) -> Self { - Public(id.0) - } -} - -impl ::std::fmt::Display for Public { - fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { - write!(f, "{}", self.to_ss58check()) - } +/// Derive a single hard junction. +#[cfg(feature = "std")] +fn derive_hard_junction(secret_seed: &Seed, cc: &[u8; 32]) -> Seed { + ("Ed25519HDKD", secret_seed, cc).using_encoded(|data| { + let mut res = [0u8; 32]; + res.copy_from_slice(blake2_rfc::blake2b::blake2b(32, &[], data).as_bytes()); + res + }) } -impl ::std::fmt::Debug for Public { - fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { - let s = self.to_ss58check(); - write!(f, "{} ({}...)", crate::hexdisplay::HexDisplay::from(&self.0), &s[0..8]) - } +/// An error when deriving a key. +#[cfg(feature = "std")] +pub enum DeriveError { + /// A soft key was found in the path (and is unsupported). + SoftKeyInPath, } -impl Pair { - /// Generate new secure (random) key pair, yielding it and the corresponding pkcs#8 bytes. - pub fn generate_with_pkcs8() -> (Self, [u8; PKCS_LEN]) { - let rng = rand::SystemRandom::new(); - let pkcs8_bytes = signature::Ed25519KeyPair::generate_pkcs8(&rng).expect("system randomness is available; qed"); - let pair = Self::from_pkcs8(&pkcs8_bytes.as_ref()).expect("just-generated pkcs#8 data is valid; qed"); - - let mut out = [0; PKCS_LEN]; - out.copy_from_slice(pkcs8_bytes.as_ref()); - (pair, out) - } +#[cfg(feature = "std")] +impl TraitPair for Pair { + type Public = Public; + type Seed = Seed; + type Signature = Signature; + type DeriveError = DeriveError; /// Generate new secure (random) key pair. - pub fn generate() -> Pair { - let (pair, _) = Self::generate_with_pkcs8(); - pair - } - - /// Generate from pkcs#8 bytes. - pub fn from_pkcs8(pkcs8_bytes: &[u8]) -> Result { - signature::Ed25519KeyPair::from_pkcs8(untrusted::Input::from(&pkcs8_bytes)).map(Pair) - } - - /// Make a new key pair from a seed phrase. - /// NOTE: prefer pkcs#8 unless security doesn't matter -- this is used primarily for tests. - pub fn from_seed(seed: &[u8; 32]) -> Pair { + /// + /// This is only for ephemeral keys really, since you won't have access to the secret key + /// for storage. If you want a persistent key pair, use `generate_with_phrase` instead. + fn generate() -> Pair { + let mut seed: Seed = Default::default(); + SystemRandom::new().fill(seed.as_mut()).expect("system random source should always work! qed"); + Self::from_seed(seed) + } + + /// Generate new secure (random) key pair and provide the recovery phrase. + /// + /// You can recover the same key later with `from_phrase`. + fn generate_with_phrase(password: Option<&str>) -> (Pair, String) { + let mnemonic = Mnemonic::new(MnemonicType::Words12, Language::English); + let phrase = mnemonic.phrase(); + ( + Self::from_phrase(phrase, password).expect("All phrases generated by Mnemonic are valid; qed"), + phrase.to_owned(), + ) + } + + /// Generate key pair from given recovery phrase and password. + fn from_phrase(phrase: &str, password: Option<&str>) -> Result { + let big_seed = seed_from_entropy( + Mnemonic::from_phrase(phrase, Language::English) + .map_err(|_| SecretStringError::InvalidPhrase)?.entropy(), + password.unwrap_or(""), + ).map_err(|_| SecretStringError::InvalidSeed)?; + Self::from_seed_slice(&big_seed[0..32]) + } + + /// Make a new key pair from secret seed material. + /// + /// You should never need to use this; generate(), generate_with_phrasee + fn from_seed(seed: Seed) -> Pair { let key = signature::Ed25519KeyPair::from_seed_unchecked(untrusted::Input::from(&seed[..])) .expect("seed has valid length; qed"); + Pair(key, seed) + } + + /// Make a new key pair from secret seed material. The slice must be 32 bytes long or it + /// will return `None`. + /// + /// You should never need to use this; generate(), generate_with_phrase + fn from_seed_slice(seed_slice: &[u8]) -> Result { + if seed_slice.len() != 32 { + Err(SecretStringError::InvalidSeedLength) + } else { + let mut seed = [0u8; 32]; + seed.copy_from_slice(&seed_slice); + Ok(Self::from_seed(seed)) + } + } - Pair(key) + /// Derive a child key from a series of given junctions. + fn derive>(&self, path: Iter) -> Result { + let mut acc = self.1.clone(); + for j in path { + match j { + DeriveJunction::Soft(_cc) => return Err(DeriveError::SoftKeyInPath), + DeriveJunction::Hard(cc) => acc = derive_hard_junction(&acc, &cc), + } + } + Ok(Self::from_seed(acc)) } - /// Sign a message. - pub fn sign(&self, message: &[u8]) -> Signature { - let mut r = [0u8; 64]; - r.copy_from_slice(self.0.sign(message).as_ref()); - Signature::from(r) + /// Generate a key from the phrase, password and derivation path. + fn from_standard_components>(phrase: &str, password: Option<&str>, path: I) -> Result { + Self::from_phrase(phrase, password)?.derive(path).map_err(|_| SecretStringError::InvalidPath) } /// Get the public key. - pub fn public(&self) -> Public { + fn public(&self) -> Public { let mut r = [0u8; 32]; let pk = self.0.public_key().as_ref(); r.copy_from_slice(pk); Public(r) } -} - -/// Verify a signature on a message. Returns true if the signature is good. -pub fn verify_strong>(sig: &Signature, message: &[u8], pubkey: P) -> bool { - let public_key = untrusted::Input::from(&pubkey.as_ref().0[..]); - let msg = untrusted::Input::from(message); - let sig = untrusted::Input::from(&sig.as_bytes()); - match signature::verify(&signature::ED25519, public_key, msg, sig) { - Ok(_) => true, - _ => false, + /// Sign a message. + fn sign(&self, message: &[u8]) -> Signature { + let mut r = [0u8; 64]; + r.copy_from_slice(self.0.sign(message).as_ref()); + Signature::from_raw(r) } -} -/// Something that acts as a signature allowing a message to be verified. -pub trait Verifiable { - /// Verify something that acts like a signature. - fn verify>(&self, message: &[u8], pubkey: P) -> bool; -} + /// Verify a signature on a message. Returns true if the signature is good. + fn verify, M: AsRef<[u8]>>(sig: &Self::Signature, message: M, pubkey: P) -> bool { + let public_key = untrusted::Input::from(&pubkey.as_ref().0[..]); + let msg = untrusted::Input::from(message.as_ref()); + let sig = untrusted::Input::from(&sig.0[..]); -impl Verifiable for Signature { - /// Verify something that acts like a signature. - fn verify>(&self, message: &[u8], pubkey: P) -> bool { - verify_strong(&self, message, pubkey) + match signature::verify(&signature::ED25519, public_key, msg, sig) { + Ok(_) => true, + _ => false, + } } -} -impl Verifiable for LocalizedSignature { - fn verify>(&self, message: &[u8], pubkey: P) -> bool { - pubkey.as_ref() == &self.signer && self.signature.verify(message, pubkey) + /// Verify a signature on a message. Returns true if the signature is good. + /// + /// This doesn't use the type system to ensure that `sig` and `pubkey` are the correct + /// size. Use it only if you're coming from byte buffers and need the speed. + fn verify_weak, M: AsRef<[u8]>>(sig: &[u8], message: M, pubkey: P) -> bool { + let public_key = untrusted::Input::from(pubkey.as_ref()); + let msg = untrusted::Input::from(message.as_ref()); + let sig = untrusted::Input::from(sig); + + match signature::verify(&signature::ED25519, public_key, msg, sig) { + Ok(_) => true, + _ => false, + } } } -/// Deserialize from `ss58` into something that can be constructed from `[u8; 32]`. #[cfg(feature = "std")] -pub fn deserialize<'de, D, T: From<[u8; 32]>>(deserializer: D) -> Result where - D: Deserializer<'de>, -{ - let ss58 = String::deserialize(deserializer)?; - Public::from_ss58check(&ss58) - .map_err(|e| de::Error::custom(format!("{:?}", e))) - .map(|v| v.0.into()) -} +impl Pair { + /// Get the seed for this key. + pub fn seed(&self) -> &Seed { + &self.1 + } -/// Serializes something that implements `AsRef<[u8; 32]>` into `ss58`. -#[cfg(feature = "std")] -pub fn serialize>(data: &T, serializer: S) -> Result where - S: Serializer, -{ - serializer.serialize_str(&Public(*data.as_ref()).to_ss58check()) + /// Exactly as `from_string` except that if no matches are found then, the the first 32 + /// characters are taken (padded with spaces as necessary) and used as the MiniSecretKey. + pub fn from_legacy_string(s: &str, password_override: Option<&str>) -> Pair { + Self::from_string(s, password_override).unwrap_or_else(|_| { + let mut padded_seed: Seed = [' ' as u8; 32]; + let len = s.len().min(32); + padded_seed[..len].copy_from_slice(&s.as_bytes()[..len]); + Self::from_seed(padded_seed) + }) + } } #[cfg(test)] mod test { use super::*; use hex_literal::{hex, hex_impl}; + use crate::Pair as _Pair; - fn _test_primitives_signature_and_local_the_same() { - fn takes_two(_: T, _: T) { } - takes_two(Signature::default(), crate::Signature::default()) + #[test] + fn test_vector_should_work() { + let pair: Pair = Pair::from_seed(hex!("9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60")); + let public = pair.public(); + assert_eq!(public, Public::from_raw(hex!("d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a"))); + let message = b""; + let signature = Signature::from_raw(hex!("e5564300c360ac729086e2cc806e828a84877f1eb8e5d974d873e065224901555fb8821590a33bacc61e39701cf9b46bd25bf5f0595bbe24655141438e7a100b")); + assert!(&pair.sign(&message[..]) == &signature); + assert!(Pair::verify(&signature, &message[..], &public)); } #[test] - fn test_vector_should_work() { - let pair: Pair = Pair::from_seed(&hex!("9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60")); + fn test_vector_by_string_should_work() { + let pair: Pair = Pair::from_string("0x9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60", None).unwrap(); let public = pair.public(); assert_eq!(public, Public::from_raw(hex!("d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a"))); let message = b""; - let signature: Signature = hex!("e5564300c360ac729086e2cc806e828a84877f1eb8e5d974d873e065224901555fb8821590a33bacc61e39701cf9b46bd25bf5f0595bbe24655141438e7a100b").into(); + let signature = Signature::from_raw(hex!("e5564300c360ac729086e2cc806e828a84877f1eb8e5d974d873e065224901555fb8821590a33bacc61e39701cf9b46bd25bf5f0595bbe24655141438e7a100b")); assert!(&pair.sign(&message[..]) == &signature); - assert!(verify_strong(&signature, &message[..], &public)); + assert!(Pair::verify(&signature, &message[..], &public)); } #[test] @@ -320,33 +553,47 @@ mod test { let public = pair.public(); let message = b"Something important"; let signature = pair.sign(&message[..]); - assert!(verify_strong(&signature, &message[..], &public)); + assert!(Pair::verify(&signature, &message[..], &public)); } #[test] fn seeded_pair_should_work() { - use crate::hexdisplay::HexDisplay; - - let pair = Pair::from_seed(b"12345678901234567890123456789012"); + let pair = Pair::from_seed(*b"12345678901234567890123456789012"); let public = pair.public(); assert_eq!(public, Public::from_raw(hex!("2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee"))); let message = hex!("2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee00000000000000000200d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a4500000000000000"); let signature = pair.sign(&message[..]); - println!("Correct signature: {}", HexDisplay::from(&signature.as_bytes())); - assert!(verify_strong(&signature, &message[..], &public)); + println!("Correct signature: {:?}", signature); + assert!(Pair::verify(&signature, &message[..], &public)); + } + + #[test] + fn generate_with_phrase_recovery_possible() { + let (pair1, phrase) = Pair::generate_with_phrase(None); + let pair2 = Pair::from_phrase(&phrase, None).unwrap(); + + assert_eq!(pair1.public(), pair2.public()); } #[test] - fn generate_with_pkcs8_recovery_possible() { - let (pair1, pkcs8) = Pair::generate_with_pkcs8(); - let pair2 = Pair::from_pkcs8(&pkcs8).unwrap(); + fn generate_with_password_phrase_recovery_possible() { + let (pair1, phrase) = Pair::generate_with_phrase(Some("password")); + let pair2 = Pair::from_phrase(&phrase, Some("password")).unwrap(); assert_eq!(pair1.public(), pair2.public()); } + #[test] + fn password_does_something() { + let (pair1, phrase) = Pair::generate_with_phrase(Some("password")); + let pair2 = Pair::from_phrase(&phrase, None).unwrap(); + + assert_ne!(pair1.public(), pair2.public()); + } + #[test] fn ss58check_roundtrip_works() { - let pair = Pair::from_seed(b"12345678901234567890123456789012"); + let pair = Pair::from_seed(*b"12345678901234567890123456789012"); let public = pair.public(); let s = public.to_ss58check(); println!("Correct: {}", s); diff --git a/core/primitives/src/lib.rs b/core/primitives/src/lib.rs index fc3867a788..67b99f7ebc 100644 --- a/core/primitives/src/lib.rs +++ b/core/primitives/src/lib.rs @@ -49,19 +49,17 @@ pub mod hashing; pub use hashing::{blake2_256, twox_128, twox_256}; #[cfg(feature = "std")] pub mod hexdisplay; -#[cfg(feature = "std")] -pub mod ed25519; -#[cfg(feature = "std")] -pub mod sr25519; +pub mod crypto; pub mod u32_trait; +pub mod ed25519; +pub mod sr25519; pub mod hash; mod hasher; pub mod sandbox; pub mod storage; pub mod uint; -mod authority_id; mod changes_trie; #[cfg(test)] @@ -69,17 +67,15 @@ mod tests; pub use self::hash::{H160, H256, H512, convert_hash}; pub use self::uint::U256; -pub use authority_id::Ed25519AuthorityId; pub use changes_trie::ChangesTrieConfiguration; +#[cfg(feature = "std")] +pub use crypto::{DeriveJunction, Pair}; pub use hash_db::Hasher; // Switch back to Blake after PoC-3 is out // pub use self::hasher::blake::BlakeHasher; pub use self::hasher::blake2::Blake2Hasher; -/// A 512-bit value interpreted as a signature. -pub type Signature = hash::H512; - /// Hex-serialised shim for `Vec`. #[derive(PartialEq, Eq, Clone)] #[cfg_attr(feature = "std", derive(Serialize, Deserialize, Debug, Hash, PartialOrd, Ord))] diff --git a/core/primitives/src/sr25519.rs b/core/primitives/src/sr25519.rs index a6e7db8078..4c2b97c5f6 100644 --- a/core/primitives/src/sr25519.rs +++ b/core/primitives/src/sr25519.rs @@ -16,33 +16,212 @@ // tag::description[] //! Simple sr25519 (Schnorr-Ristretto) API. +//! +//! Note: `CHAIN_CODE_LENGTH` must be equal to `crate::crypto::JUNCTION_ID_LEN` +//! for this to work. // end::description[] -use base58::{FromBase58, ToBase58}; +#[cfg(feature = "std")] use blake2_rfc; +#[cfg(feature = "std")] use rand::rngs::OsRng; +#[cfg(feature = "std")] use schnorrkel::{signing_context, Keypair, SecretKey, MiniSecretKey, PublicKey, derive::{Derivation, ChainCode, CHAIN_CODE_LENGTH} }; +#[cfg(feature = "std")] use substrate_bip39::mini_secret_from_entropy; -//use sha2::Sha512; +#[cfg(feature = "std")] +use bip39::{Mnemonic, Language, MnemonicType}; +#[cfg(feature = "std")] +use crate::crypto::{Pair as TraitPair, DeriveJunction, Infallible, SecretStringError, Derive, Ss58Codec}; +use crate::{hash::{H256, H512}, crypto::UncheckedFrom}; use parity_codec::{Encode, Decode}; -use crate::hash::H512; -use bip39::{Mnemonic, Language}; #[cfg(feature = "std")] -use serde::{de, Deserialize, Deserializer, Serializer}; +use serde::{de, Deserialize, Deserializer, Serialize, Serializer}; +#[cfg(feature = "std")] +use schnorrkel::keys::MINI_SECRET_KEY_LENGTH; // signing context -const SIGNING_CTX: &'static [u8] = b"substrate transaction"; +#[cfg(feature = "std")] +const SIGNING_CTX: &[u8] = b"substrate"; + +/// An Schnorrkel/Ristretto x25519 ("sr25519") public key. +#[derive(PartialEq, Eq, PartialOrd, Ord, Clone, Encode, Decode, Default)] +pub struct Public(pub [u8; 32]); + +/// An Schnorrkel/Ristretto x25519 ("sr25519") key pair. +#[cfg(feature = "std")] +pub struct Pair(Keypair); + +impl AsRef for Public { + fn as_ref(&self) -> &Public { + &self + } +} + +impl AsRef<[u8; 32]> for Public { + fn as_ref(&self) -> &[u8; 32] { + &self.0 + } +} + +impl AsRef<[u8]> for Public { + fn as_ref(&self) -> &[u8] { + &self.0[..] + } +} + +impl AsMut<[u8]> for Public { + fn as_mut(&mut self) -> &mut [u8] { + &mut self.0[..] + } +} + +impl From for [u8; 32] { + fn from(x: Public) -> [u8; 32] { + x.0 + } +} + +impl From for H256 { + fn from(x: Public) -> H256 { + x.0.into() + } +} + +impl UncheckedFrom<[u8; 32]> for Public { + fn unchecked_from(x: [u8; 32]) -> Self { + Public::from_raw(x) + } +} + +impl UncheckedFrom for Public { + fn unchecked_from(x: H256) -> Self { + Public::from_h256(x) + } +} + +#[cfg(feature = "std")] +impl ::std::fmt::Display for Public { + fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { + write!(f, "{}", self.to_ss58check()) + } +} + +#[cfg(feature = "std")] +impl ::std::fmt::Debug for Public { + fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { + let s = self.to_ss58check(); + write!(f, "{} ({}...)", crate::hexdisplay::HexDisplay::from(&self.0), &s[0..8]) + } +} + +#[cfg(feature = "std")] +impl Serialize for Public { + fn serialize(&self, serializer: S) -> Result where S: Serializer { + serializer.serialize_str(&self.to_ss58check()) + } +} + +#[cfg(feature = "std")] +impl<'de> Deserialize<'de> for Public { + fn deserialize(deserializer: D) -> Result where D: Deserializer<'de> { + Public::from_ss58check(&String::deserialize(deserializer)?) + .map_err(|e| de::Error::custom(format!("{:?}", e))) + } +} + +#[cfg(feature = "std")] +impl ::std::hash::Hash for Public { + fn hash(&self, state: &mut H) { + self.0.hash(state); + } +} /// An Schnorrkel/Ristretto x25519 ("sr25519") signature. /// /// Instead of importing it for the local module, alias it to be available as a public type -pub type Signature = H512; +#[derive(Encode, Decode)] +pub struct Signature(pub [u8; 64]); + +impl Clone for Signature { + fn clone(&self) -> Self { + let mut r = [0u8; 64]; + r.copy_from_slice(&self.0[..]); + Signature(r) + } +} + +impl Default for Signature { + fn default() -> Self { + Signature([0u8; 64]) + } +} + +impl PartialEq for Signature { + fn eq(&self, b: &Self) -> bool { + &self.0[..] == &b.0[..] + } +} + +impl Eq for Signature {} + +impl From for [u8; 64] { + fn from(v: Signature) -> [u8; 64] { + v.0 + } +} + +impl From for H512 { + fn from(v: Signature) -> H512 { + H512::from(v.0) + } +} + +impl AsRef<[u8; 64]> for Signature { + fn as_ref(&self) -> &[u8; 64] { + &self.0 + } +} + +impl AsRef<[u8]> for Signature { + fn as_ref(&self) -> &[u8] { + &self.0[..] + } +} + +impl AsMut<[u8]> for Signature { + fn as_mut(&mut self) -> &mut [u8] { + &mut self.0[..] + } +} + +#[cfg(feature = "std")] +impl From for Signature { + fn from(s: schnorrkel::Signature) -> Signature { + Signature(s.to_bytes()) + } +} + +#[cfg(feature = "std")] +impl ::std::fmt::Debug for Signature { + fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { + write!(f, "{}", crate::hexdisplay::HexDisplay::from(&self.0)) + } +} + +#[cfg(feature = "std")] +impl ::std::hash::Hash for Signature { + fn hash(&self, state: &mut H) { + ::std::hash::Hash::hash(&self.0[..], state); + } +} /// A localized signature also contains sender information. /// NOTE: Encode and Decode traits are supported in ed25519 but not possible for now here. +#[cfg(feature = "std")] #[derive(PartialEq, Eq, Clone, Debug)] pub struct LocalizedSignature { /// The signer of the signature. @@ -51,64 +230,80 @@ pub struct LocalizedSignature { pub signature: Signature, } -/// An Schnorrkel/Ristretto x25519 ("sr25519") public key. -#[derive(PartialEq, Eq, Clone, Encode, Decode)] -pub struct Public(pub [u8; 32]); +impl Signature { + /// A new instance from the given 64-byte `data`. + /// + /// NOTE: No checking goes on to ensure this is a real signature. Only use it if + /// you are certain that the array actually is a signature. GIGO! + pub fn from_raw(data: [u8; 64]) -> Signature { + Signature(data) + } -/// An Schnorrkel/Ristretto x25519 ("sr25519") key pair. -pub struct Pair(Keypair); + /// A new instance from the given slice that should be 64 bytes long. + /// + /// NOTE: No checking goes on to ensure this is a real signature. Only use it if + /// you are certain that the array actually is a signature. GIGO! + pub fn from_slice(data: &[u8]) -> Self { + let mut r = [0u8; 64]; + r.copy_from_slice(data); + Signature(r) + } -impl ::std::hash::Hash for Public { - fn hash(&self, state: &mut H) { - self.0.hash(state); + /// A new instance from an H512. + /// + /// NOTE: No checking goes on to ensure this is a real signature. Only use it if + /// you are certain that the array actually is a signature. GIGO! + pub fn from_h512(v: H512) -> Signature { + Signature(v.into()) } } -/// An error type for SS58 decoding. -#[derive(Clone, Copy, Eq, PartialEq, Debug)] -pub enum PublicError { - /// Bad alphabet. - BadBase58, - /// Bad length. - BadLength, - /// Unknown version. - UnknownVersion, - /// Invalid checksum. - InvalidChecksum, +#[cfg(feature = "std")] +impl Derive for Public { + /// Derive a child key from a series of given junctions. + /// + /// `None` if there are any hard junctions in there. + fn derive>(&self, path: Iter) -> Option { + let mut acc = PublicKey::from_bytes(self.as_ref()).ok()?; + for j in path { + match j { + DeriveJunction::Soft(cc) => acc = acc.derived_key_simple(ChainCode(cc), &[]).0, + DeriveJunction::Hard(_cc) => return None, + } + } + Some(Self(acc.to_bytes())) + } } impl Public { /// A new instance from the given 32-byte `data`. + /// + /// NOTE: No checking goes on to ensure this is a real public key. Only use it if + /// you are certain that the array actually is a pubkey. GIGO! pub fn from_raw(data: [u8; 32]) -> Self { Public(data) } /// A new instance from the given slice that should be 32 bytes long. + /// + /// NOTE: No checking goes on to ensure this is a real public key. Only use it if + /// you are certain that the array actually is a pubkey. GIGO! pub fn from_slice(data: &[u8]) -> Self { let mut r = [0u8; 32]; r.copy_from_slice(data); Public(r) } - /// Some if the string is a properly encoded SS58Check address. - pub fn from_ss58check(s: &str) -> Result { - let d = s.from_base58().map_err(|_| PublicError::BadBase58)?; // failure here would be invalid encoding. - if d.len() != 35 { - // Invalid length. - return Err(PublicError::BadLength); - } - if d[0] != 42 { - // Invalid version. - return Err(PublicError::UnknownVersion); - } - if d[33..35] != blake2_rfc::blake2b::blake2b(64, &[], &d[0..33]).as_bytes()[0..2] { - // Invalid checksum. - return Err(PublicError::InvalidChecksum); - } - Ok(Self::from_slice(&d[1..33])) + /// A new instance from an H256. + /// + /// NOTE: No checking goes on to ensure this is a real public key. Only use it if + /// you are certain that the array actually is a pubkey. GIGO! + pub fn from_h256(x: H256) -> Self { + Public(x.into()) } /// Return a `Vec` filled with raw data. + #[cfg(feature = "std")] pub fn to_raw_vec(self) -> Vec { let r: &[u8; 32] = self.as_ref(); r.to_vec() @@ -124,179 +319,52 @@ impl Public { pub fn as_array_ref(&self) -> &[u8; 32] { self.as_ref() } - - /// Return the ss58-check string for this key. - pub fn to_ss58check(&self) -> String { - let mut v = vec![42u8]; - v.extend(self.as_slice()); - let r = blake2_rfc::blake2b::blake2b(64, &[], &v); - v.extend(&r.as_bytes()[0..2]); - v.to_base58() - } - - /// Derive a child key from a series of given junctions. - /// - /// `None` if there are any hard junctions in there. - pub fn derive>(&self, mut path: Iter) -> Option { - let mut acc = PublicKey::from_bytes(self.as_ref()).ok()?; - for j in path { - match j { - DeriveJunction::Soft(cc) => acc = acc.derived_key_simple(ChainCode(cc), &[]).0, - DeriveJunction::Hard(cc) => return None, - } - } - Some(Self(acc.to_bytes())) - } -} - -impl AsRef<[u8; 32]> for Public { - fn as_ref(&self) -> &[u8; 32] { - &self.0 - } -} - -impl AsRef<[u8]> for Public { - fn as_ref(&self) -> &[u8] { - &self.0[..] - } -} - -impl Into<[u8; 32]> for Public { - fn into(self) -> [u8; 32] { - self.0 - } -} - -impl AsRef for Public { - fn as_ref(&self) -> &Public { - &self - } } +#[cfg(feature = "std")] impl AsRef for Pair { fn as_ref(&self) -> &Pair { &self } } +#[cfg(feature = "std")] impl From for Pair { fn from(sec: MiniSecretKey) -> Pair { Pair(sec.expand_to_keypair()) } } +#[cfg(feature = "std")] impl From for Pair { fn from(sec: SecretKey) -> Pair { Pair(Keypair::from(sec)) } } +#[cfg(feature = "std")] impl From for Pair { fn from(p: schnorrkel::Keypair) -> Pair { Pair(p) } } +#[cfg(feature = "std")] impl From for schnorrkel::Keypair { fn from(p: Pair) -> schnorrkel::Keypair { p.0 } } +#[cfg(feature = "std")] impl AsRef for Pair { fn as_ref(&self) -> &schnorrkel::Keypair { &self.0 } } -impl ::std::fmt::Display for Public { - fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { - write!(f, "{}", self.to_ss58check()) - } -} - -impl ::std::fmt::Debug for Public { - fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { - let s = self.to_ss58check(); - write!(f, "{} ({}...)", crate::hexdisplay::HexDisplay::from(&self.0), &s[0..8]) - } -} - -/// A since derivation junction description. It is the single parameter used when creating -/// a new secret key from an existing secret key and, in the case of `SoftRaw` and `SoftIndex` -/// a new public key from an existing public key. -#[derive(Copy, Clone, Eq, PartialEq, Hash, Debug, Encode, Decode)] -pub enum DeriveJunction { - /// Soft (vanilla) derivation. Public keys have a correspondent derivation. - Soft([u8; CHAIN_CODE_LENGTH]), - /// Hard ("hardened") derivation. Public keys do not have a correspondent derivation. - Hard([u8; CHAIN_CODE_LENGTH]), -} - -impl DeriveJunction { - /// Consume self to return a soft derive junction with the same chain code. - pub fn soften(self) -> Self { DeriveJunction::Soft(self.unwrap_inner()) } - - /// Consume self to return a hard derive junction with the same chain code. - pub fn harden(self) -> Self { DeriveJunction::Hard(self.unwrap_inner()) } - - /// Create a new soft (vanilla) DeriveJunction from a given, encodable, value. - /// - /// If you need a hard junction, use `hard()`. - pub fn soft(index: T) -> Self { - let mut cc: [u8; CHAIN_CODE_LENGTH] = Default::default(); - index.using_encoded(|data| if data.len() > CHAIN_CODE_LENGTH { - let hash_result = blake2_rfc::blake2b::blake2b(CHAIN_CODE_LENGTH, &[], data); - let hash = hash_result.as_bytes(); - cc.copy_from_slice(hash); - } else { - cc[0..data.len()].copy_from_slice(data); - }); - DeriveJunction::Soft(cc) - } - - /// Create a new hard (hardened) DeriveJunction from a given, encodable, value. - /// - /// If you need a soft junction, use `soft()`. - pub fn hard(index: T) -> Self { - Self::soft(index).harden() - } - - /// Consume self to return the chain code. - pub fn unwrap_inner(self) -> [u8; CHAIN_CODE_LENGTH] { - match self { - DeriveJunction::Hard(c) | DeriveJunction::Soft(c) => c, - } - } - - /// Consume self to return the chain code. - pub fn unwrap_chain_code(self) -> ChainCode { - ChainCode(self.unwrap_inner()) - } - - /// Return a reference to the chain code. - pub fn chain_code(&self) -> ChainCode { - self.clone().unwrap_chain_code() - } - - /// Return `true` if the junction is soft. - pub fn is_soft(&self) -> bool { - match *self { - DeriveJunction::Soft(_) => true, - _ => false, - } - } - - /// Return `true` if the junction is hard. - pub fn is_hard(&self) -> bool { - match *self { - DeriveJunction::Hard(_) => true, - _ => false, - } - } -} - /// Derive a single hard junction. +#[cfg(feature = "std")] fn derive_hard_junction(secret: &SecretKey, cc: &[u8; CHAIN_CODE_LENGTH]) -> SecretKey { ("SchnorrRistrettoHDKD", &secret.to_bytes()[..], cc).using_encoded(|data| MiniSecretKey::from_bytes(blake2_rfc::blake2b::blake2b(32, &[], data).as_bytes()) @@ -305,173 +373,181 @@ fn derive_hard_junction(secret: &SecretKey, cc: &[u8; CHAIN_CODE_LENGTH]) -> Sec ) } -impl Pair { +#[cfg(feature = "std")] +type Seed = [u8; MINI_SECRET_KEY_LENGTH]; + +#[cfg(feature = "std")] +impl TraitPair for Pair { + type Public = Public; + type Seed = Seed; + type Signature = Signature; + type DeriveError = Infallible; + /// Generate new secure (random) key pair. - pub fn generate() -> Pair { + fn generate() -> Pair { let mut csprng: OsRng = OsRng::new().expect("os random generator works; qed"); let key_pair: Keypair = Keypair::generate(&mut csprng); Pair(key_pair) } - /// Make a new key pair from a seed phrase. + /// Make a new key pair from raw secret seed material. + /// /// This is generated using schnorrkel's Mini-Secret-Keys. + /// /// A MiniSecretKey is literally what Ed25519 calls a SecretKey, which is just 32 random bytes. - pub fn from_seed(seed: &[u8; 32]) -> Pair { - let mini_key: MiniSecretKey = MiniSecretKey::from_bytes(seed) + fn from_seed(seed: Seed) -> Pair { + let mini_key: MiniSecretKey = MiniSecretKey::from_bytes(&seed[..]) .expect("32 bytes can always build a key; qed"); let kp = mini_key.expand_to_keypair(); Pair(kp) } - /// Make a new key pair from a seed phrase. - /// This is generated using schnorrkel's Mini-Secret-Keys. - /// A MiniSecretKey is literally what Ed25519 calls a SecretKey, which is just 32 random bytes. - pub fn from_entropy(entropy: &[u8], password: Option<&str>) -> Pair { - let mini_key: MiniSecretKey = mini_secret_from_entropy(entropy, password.unwrap_or("")) - .expect("32 bytes can always build a key; qed"); - let kp = mini_key.expand_to_keypair(); - Pair(kp) + /// Get the public key. + fn public(&self) -> Public { + let mut pk = [0u8; 32]; + pk.copy_from_slice(&self.0.public.to_bytes()); + Public(pk) + } + + /// Make a new key pair from secret seed material. The slice must be 32 bytes long or it + /// will return `None`. + /// + /// You should never need to use this; generate(), generate_with_phrase(), from_phrase() + fn from_seed_slice(seed: &[u8]) -> Result { + if seed.len() != MINI_SECRET_KEY_LENGTH { + Err(SecretStringError::InvalidSeedLength) + } else { + Ok(Pair( + MiniSecretKey::from_bytes(seed) + .map_err(|_| SecretStringError::InvalidSeed)? + .expand_to_keypair() + )) + } + } + + /// Generate a key from the phrase, password and derivation path. + fn from_standard_components>(phrase: &str, password: Option<&str>, path: I) -> Result { + Self::from_phrase(phrase, password)? + .derive(path) + .map_err(|_| SecretStringError::InvalidPath) + } + + fn generate_with_phrase(password: Option<&str>) -> (Pair, String) { + let mnemonic = Mnemonic::new(MnemonicType::Words12, Language::English); + let phrase = mnemonic.phrase(); + ( + Self::from_phrase(phrase, password).expect("All phrases generated by Mnemonic are valid; qed"), + phrase.to_owned(), + ) } - /// Returns the KeyPair from the English BIP39 seed `phrase`, or `None` if it's invalid. - pub fn from_phrase(phrase: &str, password: Option<&str>) -> Option { + fn from_phrase(phrase: &str, password: Option<&str>) -> Result { Mnemonic::from_phrase(phrase, Language::English) - .ok() + .map_err(|_| SecretStringError::InvalidPhrase) .map(|m| Self::from_entropy(m.entropy(), password)) } - /// Derive a child key from a series of given junctions. - pub fn derive>(&self, mut path: Iter) -> Pair { + fn derive>(&self, path: Iter) -> Result { let init = self.0.secret.clone(); let result = path.fold(init, |acc, j| match j { DeriveJunction::Soft(cc) => acc.derived_key_simple(ChainCode(cc), &[]).0, DeriveJunction::Hard(cc) => derive_hard_junction(&acc, &cc), }); - Self(result.into()) + Ok(Self(result.into())) } - /// Sign a message. - pub fn sign(&self, message: &[u8]) -> Signature { + fn sign(&self, message: &[u8]) -> Signature { let context = signing_context(SIGNING_CTX); - Signature::from(self.0.sign(context.bytes(message)).to_bytes()) - } - - /// Get the public key. - pub fn public(&self) -> Public { - let mut pk = [0u8; 32]; - pk.copy_from_slice(&self.0.public.to_bytes()); - Public(pk) - } -} - -/// Verify a signature on a message. Returns true if the signature is good. -pub fn verify_strong>(sig: &Signature, message: &[u8], pubkey: P) -> bool { - let signature: schnorrkel::Signature = match schnorrkel::Signature::from_bytes(&sig[..]) { - Ok(some_signature) => some_signature, - Err(_) => return false - }; - match PublicKey::from_bytes(pubkey.as_ref().as_slice()) { - Ok(pk) => pk.verify(signing_context(SIGNING_CTX).bytes(message), &signature), - Err(_) => false, - } -} - -/// Verify a message without type checking the parameters' types for the right size. -/// Returns true if both the pubkey and the signature is good. -pub fn verify>(sig: &[u8], message: &[u8], pubkey: P) -> bool { - let signature = match schnorrkel::Signature::from_bytes(&sig[..]) { - Ok(sig) => sig, - Err(_) => return false, - }; - match PublicKey::from_bytes(pubkey.as_ref()) { - Ok(pk) => pk.verify_simple(SIGNING_CTX, message, &signature), - Err(_) => false, - } -} - -/// Something that acts as a signature allowing a message to be verified. -pub trait Verifiable { - /// Verify something that acts like a signature. - fn verify>(&self, message: &[u8], pubkey: P) -> bool; -} - -impl Verifiable for Signature { - /// Verify something that acts like a signature. - fn verify>(&self, message: &[u8], pubkey: P) -> bool { - verify_strong(&self, message, pubkey) + self.0.sign(context.bytes(message)).into() + } + + /// Verify a signature on a message. Returns true if the signature is good. + fn verify, M: AsRef<[u8]>>(sig: &Self::Signature, message: M, pubkey: P) -> bool { + let signature: schnorrkel::Signature = match schnorrkel::Signature::from_bytes(&sig.as_ref()) { + Ok(some_signature) => some_signature, + Err(_) => return false + }; + match PublicKey::from_bytes(pubkey.as_ref().as_slice()) { + Ok(pk) => pk.verify( + signing_context(SIGNING_CTX).bytes(message.as_ref()), &signature + ), + Err(_) => false, + } } -} -impl Verifiable for LocalizedSignature { - fn verify>(&self, message: &[u8], pubkey: P) -> bool { - pubkey.as_ref() == &self.signer && self.signature.verify(message, pubkey) + /// Verify a signature on a message. Returns true if the signature is good. + fn verify_weak, M: AsRef<[u8]>>(sig: &[u8], message: M, pubkey: P) -> bool { + let signature: schnorrkel::Signature = match schnorrkel::Signature::from_bytes(sig) { + Ok(some_signature) => some_signature, + Err(_) => return false + }; + match PublicKey::from_bytes(pubkey.as_ref()) { + Ok(pk) => pk.verify( + signing_context(SIGNING_CTX).bytes(message.as_ref()), &signature + ), + Err(_) => false, + } } } -/// Deserialize from `ss58` into something that can be constructed from `[u8; 32]`. #[cfg(feature = "std")] -pub fn deserialize<'de, D, T: From<[u8; 32]>>(deserializer: D) -> Result -where - D: Deserializer<'de>, -{ - let ss58 = String::deserialize(deserializer)?; - Public::from_ss58check(&ss58) - .map_err(|e| de::Error::custom(format!("{:?}", e))) - .map(|v| v.0.into()) -} - -/// Serializes something that implements `AsRef<[u8; 32]>` into `ss58`. -#[cfg(feature = "std")] -pub fn serialize>(data: &T, serializer: S) -> Result -where - S: Serializer, -{ - serializer.serialize_str(&Public(*data.as_ref()).to_ss58check()) +impl Pair { + /// Make a new key pair from binary data derived from a valid seed phrase. + /// + /// This uses a key derivation function to convert the entropy into a seed, then returns + /// the pair generated from it. + pub fn from_entropy(entropy: &[u8], password: Option<&str>) -> Pair { + let mini_key: MiniSecretKey = mini_secret_from_entropy(entropy, password.unwrap_or("")) + .expect("32 bytes can always build a key; qed"); + let kp = mini_key.expand_to_keypair(); + Pair(kp) + } } #[cfg(test)] mod test { use super::*; + use crate::Pair as _Pair; use hex_literal::{hex, hex_impl}; - + #[test] fn derive_soft_should_work() { - let pair: Pair = Pair::from_seed(&hex!( + let pair: Pair = Pair::from_seed(hex!( "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" )); - let derive_1 = pair.derive(Some(DeriveJunction::soft(1)).into_iter()); - let derive_1b = pair.derive(Some(DeriveJunction::soft(1)).into_iter()); - let derive_2 = pair.derive(Some(DeriveJunction::soft(2)).into_iter()); + let derive_1 = pair.derive(Some(DeriveJunction::soft(1)).into_iter()).unwrap(); + let derive_1b = pair.derive(Some(DeriveJunction::soft(1)).into_iter()).unwrap(); + let derive_2 = pair.derive(Some(DeriveJunction::soft(2)).into_iter()).unwrap(); assert_eq!(derive_1.public(), derive_1b.public()); assert_ne!(derive_1.public(), derive_2.public()); } #[test] fn derive_hard_should_work() { - let pair: Pair = Pair::from_seed(&hex!( + let pair: Pair = Pair::from_seed(hex!( "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" )); - let derive_1 = pair.derive(Some(DeriveJunction::hard(1)).into_iter()); - let derive_1b = pair.derive(Some(DeriveJunction::hard(1)).into_iter()); - let derive_2 = pair.derive(Some(DeriveJunction::hard(2)).into_iter()); + let derive_1 = pair.derive(Some(DeriveJunction::hard(1)).into_iter()).unwrap(); + let derive_1b = pair.derive(Some(DeriveJunction::hard(1)).into_iter()).unwrap(); + let derive_2 = pair.derive(Some(DeriveJunction::hard(2)).into_iter()).unwrap(); assert_eq!(derive_1.public(), derive_1b.public()); assert_ne!(derive_1.public(), derive_2.public()); } #[test] fn derive_soft_public_should_work() { - let pair: Pair = Pair::from_seed(&hex!( + let pair: Pair = Pair::from_seed(hex!( "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" )); let path = Some(DeriveJunction::soft(1)); - let pair_1 = pair.derive(path.clone().into_iter()); + let pair_1 = pair.derive(path.clone().into_iter()).unwrap(); let public_1 = pair.public().derive(path.into_iter()).unwrap(); assert_eq!(pair_1.public(), public_1); } #[test] fn derive_hard_public_should_fail() { - let pair: Pair = Pair::from_seed(&hex!( + let pair: Pair = Pair::from_seed(hex!( "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" )); let path = Some(DeriveJunction::hard(1)); @@ -480,7 +556,7 @@ mod test { #[test] fn sr_test_vector_should_work() { - let pair: Pair = Pair::from_seed(&hex!( + let pair: Pair = Pair::from_seed(hex!( "9d61b19deffd5a60ba844af492ec2cc44449c5697b326919703bac031cae7f60" )); let public = pair.public(); @@ -492,8 +568,7 @@ mod test { ); let message = b""; let signature = pair.sign(message); - assert!(verify(&signature[..], message, &public.0)); - assert!(verify_strong(&signature, &message[..], &public)); + assert!(Pair::verify(&signature, &message[..], &public)); } #[test] @@ -502,13 +577,13 @@ mod test { let public = pair.public(); let message = b"Something important"; let signature = pair.sign(&message[..]); - assert!(verify_strong(&signature, &message[..], &public)); + assert!(Pair::verify(&signature, &message[..], &public)); } #[test] fn seeded_pair_should_work() { - let pair = Pair::from_seed(b"12345678901234567890123456789012"); + let pair = Pair::from_seed(*b"12345678901234567890123456789012"); let public = pair.public(); assert_eq!( public, @@ -518,7 +593,7 @@ mod test { ); let message = hex!("2f8c6129d816cf51c374bc7f08c3e63ed156cf78aefb4a6550d97b87997977ee00000000000000000200d75a980182b10ab7d54bfed3c964073a0ee172f3daa62325af021a68f707511a4500000000000000"); let signature = pair.sign(&message[..]); - assert!(verify_strong(&signature, &message[..], &public)); + assert!(Pair::verify(&signature, &message[..], &public)); } #[test] @@ -537,4 +612,15 @@ mod test { let enc = hex!["090fa15cb5b1666222fff584b4cc2b1761fe1e238346b340491b37e25ea183ff"]; assert_eq!(Public::from_ss58check(k).unwrap(), Public::from_raw(enc)); } + + #[test] + fn verify_from_wasm_works() { + // The values in this test case are compared to the output of `node-test.js` in schnorrkel-js. + // + // This is to make sure that the wasm library is compatible. + let pk = Pair::from_seed(hex!("0000000000000000000000000000000000000000000000000000000000000000")); + let public = pk.public(); + let js_signature = Signature::from_raw(hex!("28a854d54903e056f89581c691c1f7d2ff39f8f896c9e9c22475e60902cc2b3547199e0e91fa32902028f2ca2355e8cdd16cfe19ba5e8b658c94aa80f3b81a00")); + assert!(Pair::verify(&js_signature, b"SUBSTRATE", public)); + } } diff --git a/core/rpc/Cargo.toml b/core/rpc/Cargo.toml index 47edca65dc..762453f2b7 100644 --- a/core/rpc/Cargo.toml +++ b/core/rpc/Cargo.toml @@ -28,7 +28,9 @@ tokio = "0.1.7" [dev-dependencies] assert_matches = "1.1" futures = "0.1.17" +sr-io = { path = "../sr-io" } test_client = { package = "substrate-test-client", path = "../test-client" } +test_runtime = { package = "substrate-test-runtime", path = "../test-runtime" } consensus = { package = "substrate-consensus-common", path = "../consensus/common" } rustc-hex = "2.0" hex-literal = "0.1" diff --git a/core/rpc/src/author/tests.rs b/core/rpc/src/author/tests.rs index dfdae48311..53166e76f8 100644 --- a/core/rpc/src/author/tests.rs +++ b/core/rpc/src/author/tests.rs @@ -17,27 +17,24 @@ use super::*; use std::sync::Arc; -use hex_literal::{hex, hex_impl}; use assert_matches::assert_matches; use parity_codec::Encode; use transaction_pool::{ txpool::Pool, ChainApi, }; -use primitives::H256; -use test_client::keyring::Keyring; -use test_client::runtime::{Extrinsic, Transfer}; -use test_client; +use primitives::{H256, blake2_256, hexdisplay::HexDisplay}; +use test_client::{self, AccountKeyring, runtime::{Extrinsic, Transfer}}; use tokio::runtime; -fn uxt(sender: Keyring, nonce: u64) -> Extrinsic { +fn uxt(sender: AccountKeyring, nonce: u64) -> Extrinsic { let tx = Transfer { amount: Default::default(), nonce, - from: sender.to_raw_public().into(), + from: sender.into(), to: Default::default(), }; - let signature = Keyring::from_raw_public(tx.from.to_fixed_bytes()).unwrap().sign(&tx.encode()).into(); + let signature = AccountKeyring::from_public(&tx.from).unwrap().sign(&tx.encode()).into(); Extrinsic::Transfer(tx, signature) } @@ -50,14 +47,15 @@ fn submit_transaction_should_not_cause_error() { pool: Arc::new(Pool::new(Default::default(), ChainApi::new(client))), subscriptions: Subscriptions::new(runtime.executor()), }; - let h: H256 = hex!("81897a4890fb7554e7f77c533a865846a11583a56a8ad5e307543188d55e64f1").into(); + let xt = uxt(AccountKeyring::Alice, 1).encode(); + let h: H256 = blake2_256(&xt).into(); assert_matches!( - AuthorApi::submit_extrinsic(&p, uxt(Keyring::Alice, 1).encode().into()), + AuthorApi::submit_extrinsic(&p, xt.clone().into()), Ok(h2) if h == h2 ); assert!( - AuthorApi::submit_extrinsic(&p, uxt(Keyring::Alice, 1).encode().into()).is_err() + AuthorApi::submit_extrinsic(&p, xt.into()).is_err() ); } @@ -70,14 +68,15 @@ fn submit_rich_transaction_should_not_cause_error() { pool: Arc::new(Pool::new(Default::default(), ChainApi::new(client.clone()))), subscriptions: Subscriptions::new(runtime.executor()), }; - let h: H256 = hex!("9ec8469b5dcfe29cc274ac1d07ad73d80be57566ace0fcdbe51ebcf4b51e925b").into(); + let xt = uxt(AccountKeyring::Alice, 0).encode(); + let h: H256 = blake2_256(&xt).into(); assert_matches!( - AuthorApi::submit_extrinsic(&p, uxt(Keyring::Alice, 0).encode().into()), + AuthorApi::submit_extrinsic(&p, xt.clone().into()), Ok(h2) if h == h2 ); assert!( - AuthorApi::submit_extrinsic(&p, uxt(Keyring::Alice, 0).encode().into()).is_err() + AuthorApi::submit_extrinsic(&p, xt.into()).is_err() ); } @@ -95,7 +94,7 @@ fn should_watch_extrinsic() { let (subscriber, id_rx, data) = ::jsonrpc_pubsub::typed::Subscriber::new_test("test"); // when - p.watch_extrinsic(Default::default(), subscriber, uxt(Keyring::Alice, 0).encode().into()); + p.watch_extrinsic(Default::default(), subscriber, uxt(AccountKeyring::Alice, 0).encode().into()); // then assert_eq!(runtime.block_on(id_rx), Ok(Ok(1.into()))); @@ -104,10 +103,10 @@ fn should_watch_extrinsic() { let tx = Transfer { amount: 5, nonce: 0, - from: Keyring::Alice.to_raw_public().into(), + from: AccountKeyring::Alice.into(), to: Default::default(), }; - let signature = Keyring::from_raw_public(tx.from.to_fixed_bytes()).unwrap().sign(&tx.encode()).into(); + let signature = AccountKeyring::from_public(&tx.from).unwrap().sign(&tx.encode()).into(); Extrinsic::Transfer(tx, signature) }; AuthorApi::submit_extrinsic(&p, replacement.encode().into()).unwrap(); @@ -116,9 +115,10 @@ fn should_watch_extrinsic() { res, Some(r#"{"jsonrpc":"2.0","method":"test","params":{"result":"ready","subscription":1}}"#.into()) ); + let h = blake2_256(&replacement.encode()); assert_eq!( runtime.block_on(data.into_future()).unwrap().0, - Some(r#"{"jsonrpc":"2.0","method":"test","params":{"result":{"usurped":"0x53daed816610aa6b22dedbcee43aba44a7ca7155cc71f2919c5e79ebbc7de58c"},"subscription":1}}"#.into()) + Some(format!(r#"{{"jsonrpc":"2.0","method":"test","params":{{"result":{{"usurped":"0x{}"}},"subscription":1}}}}"#, HexDisplay::from(&h))) ); } @@ -132,7 +132,7 @@ fn should_return_pending_extrinsics() { pool: pool.clone(), subscriptions: Subscriptions::new(runtime.executor()), }; - let ex = uxt(Keyring::Alice, 0); + let ex = uxt(AccountKeyring::Alice, 0); AuthorApi::submit_extrinsic(&p, ex.encode().into()).unwrap(); assert_matches!( p.pending_extrinsics(), diff --git a/core/rpc/src/state/tests.rs b/core/rpc/src/state/tests.rs index 510f4235a7..436d413b1a 100644 --- a/core/rpc/src/state/tests.rs +++ b/core/rpc/src/state/tests.rs @@ -17,10 +17,10 @@ use super::*; use self::error::{Error, ErrorKind}; +use sr_io::twox_128; use assert_matches::assert_matches; use consensus::BlockOrigin; -use rustc_hex::FromHex; -use test_client::{self, runtime, keyring::Keyring, TestClient, BlockBuilderExt}; +use test_client::{self, runtime, AccountKeyring, TestClient, BlockBuilderExt}; #[test] fn should_return_storage() { @@ -64,8 +64,8 @@ fn should_notify_about_storage_changes() { let mut builder = api.client.new_block().unwrap(); builder.push_transfer(runtime::Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 42, nonce: 0, }).unwrap(); @@ -88,8 +88,10 @@ fn should_send_initial_storage_changes_and_notifications() { { let api = State::new(Arc::new(test_client::new()), Subscriptions::new(remote)); + let alice_balance_key = twox_128(&test_runtime::system::balance_of_key(AccountKeyring::Alice.into())); + api.subscribe_storage(Default::default(), subscriber, Some(vec![ - StorageKey("a52da2b7c269da1366b3ed1cdb7299ce".from_hex().unwrap()), + StorageKey(alice_balance_key.to_vec()), ]).into()); // assert id assigned @@ -97,8 +99,8 @@ fn should_send_initial_storage_changes_and_notifications() { let mut builder = api.client.new_block().unwrap(); builder.push_transfer(runtime::Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 42, nonce: 0, }).unwrap(); @@ -131,8 +133,8 @@ fn should_query_storage() { let add_block = |nonce| { let mut builder = client.new_block().unwrap(); builder.push_transfer(runtime::Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 42, nonce, }).unwrap(); @@ -145,13 +147,14 @@ fn should_query_storage() { let block2_hash = add_block(1); let genesis_hash = client.genesis_hash(); + let alice_balance_key = twox_128(&test_runtime::system::balance_of_key(AccountKeyring::Alice.into())); let mut expected = vec![ StorageChangeSet { block: genesis_hash, changes: vec![ ( - StorageKey("a52da2b7c269da1366b3ed1cdb7299ce".from_hex().unwrap()), + StorageKey(alice_balance_key.to_vec()), Some(StorageData(vec![232, 3, 0, 0, 0, 0, 0, 0])) ), ], @@ -160,7 +163,7 @@ fn should_query_storage() { block: block1_hash, changes: vec![ ( - StorageKey("a52da2b7c269da1366b3ed1cdb7299ce".from_hex().unwrap()), + StorageKey(alice_balance_key.to_vec()), Some(StorageData(vec![190, 3, 0, 0, 0, 0, 0, 0])) ), ], @@ -169,7 +172,7 @@ fn should_query_storage() { // Query changes only up to block1 let result = api.query_storage( - vec![StorageKey("a52da2b7c269da1366b3ed1cdb7299ce".from_hex().unwrap())], + vec![StorageKey(alice_balance_key.to_vec())], genesis_hash, Some(block1_hash).into(), ); @@ -178,7 +181,7 @@ fn should_query_storage() { // Query all changes let result = api.query_storage( - vec![StorageKey("a52da2b7c269da1366b3ed1cdb7299ce".from_hex().unwrap())], + vec![StorageKey(alice_balance_key.to_vec())], genesis_hash, None.into(), ); @@ -187,7 +190,7 @@ fn should_query_storage() { block: block2_hash, changes: vec![ ( - StorageKey("a52da2b7c269da1366b3ed1cdb7299ce".from_hex().unwrap()), + StorageKey(alice_balance_key.to_vec()), Some(StorageData(vec![148, 3, 0, 0, 0, 0, 0, 0])) ), ], diff --git a/core/service/src/components.rs b/core/service/src/components.rs index 8786306fa2..94f5e69c8f 100644 --- a/core/service/src/components.rs +++ b/core/service/src/components.rs @@ -536,12 +536,7 @@ mod tests { use super::*; use parity_codec::Encode; use consensus_common::BlockOrigin; - use substrate_test_client::{ - self, - TestClient, - keyring::Keyring, - runtime::{Extrinsic, Transfer}, - }; + use substrate_test_client::{self, TestClient, AccountKeyring, runtime::{Extrinsic, Transfer}}; #[test] fn should_remove_transactions_from_the_pool() { @@ -551,10 +546,10 @@ mod tests { let transfer = Transfer { amount: 5, nonce: 0, - from: Keyring::Alice.to_raw_public().into(), + from: AccountKeyring::Alice.into(), to: Default::default(), }; - let signature = Keyring::from_raw_public(transfer.from.to_fixed_bytes()).unwrap().sign(&transfer.encode()).into(); + let signature = AccountKeyring::from_public(&transfer.from).unwrap().sign(&transfer.encode()).into(); Extrinsic::Transfer(transfer, signature) }; // store the transaction in the pool diff --git a/core/service/src/lib.rs b/core/service/src/lib.rs index 45127cd436..6ec7195d5d 100644 --- a/core/service/src/lib.rs +++ b/core/service/src/lib.rs @@ -34,6 +34,7 @@ use log::{info, warn, debug}; use futures::prelude::*; use keystore::Store as Keystore; use client::BlockchainEvents; +use primitives::Pair; use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{Header, As}; use exit_future::Signal; @@ -62,7 +63,7 @@ use components::{StartRPC, MaintainTransactionPool}; #[doc(hidden)] pub use network::OnDemand; -const DEFAULT_PROTOCOL_ID: &'static str = "sup"; +const DEFAULT_PROTOCOL_ID: &str = "sup"; /// Substrate service. pub struct Service { diff --git a/core/sr-io/with_std.rs b/core/sr-io/with_std.rs index 3667866398..d67d4ec53c 100644 --- a/core/sr-io/with_std.rs +++ b/core/sr-io/with_std.rs @@ -18,7 +18,8 @@ pub use parity_codec as codec; // re-export hashing functions. pub use primitives::{ - blake2_256, twox_128, twox_256, ed25519, Blake2Hasher, sr25519 + blake2_256, twox_128, twox_256, ed25519, Blake2Hasher, sr25519, + Pair }; pub use tiny_keccak::keccak256 as keccak_256; // Switch to this after PoC-3 @@ -163,6 +164,7 @@ pub fn storage_changes_root(parent_hash: [u8; 32], parent_num: u64) -> Option

(input: &[&[u8]]) -> H::Out where H: Hasher, @@ -196,12 +198,12 @@ where /// Verify a ed25519 signature. pub fn ed25519_verify>(sig: &[u8; 64], msg: &[u8], pubkey: P) -> bool { - ed25519::verify(sig, msg, pubkey) + ed25519::Pair::verify_weak(sig, msg, pubkey) } /// Verify an sr25519 signature. pub fn sr25519_verify>(sig: &[u8; 64], msg: &[u8], pubkey: P) -> bool { - sr25519::verify(sig, msg, pubkey) + sr25519::Pair::verify_weak(sig, msg, pubkey) } /// Verify and recover a SECP256k1 ECDSA signature. diff --git a/core/sr-primitives/src/generic/digest.rs b/core/sr-primitives/src/generic/digest.rs index 95d243b97d..710bcc7745 100644 --- a/core/sr-primitives/src/generic/digest.rs +++ b/core/sr-primitives/src/generic/digest.rs @@ -24,8 +24,6 @@ use rstd::prelude::*; use crate::codec::{Decode, Encode, Codec, Input}; use crate::traits::{self, Member, DigestItem as DigestItemT, MaybeHash}; -use substrate_primitives::hash::H512 as Signature; - /// Generic header digest. #[derive(PartialEq, Eq, Clone, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug, Serialize))] @@ -63,7 +61,7 @@ impl traits::Digest for Digest where /// provide opaque access to other items. #[derive(PartialEq, Eq, Clone)] #[cfg_attr(feature = "std", derive(Debug))] -pub enum DigestItem { +pub enum DigestItem { /// System digest item announcing that authorities set has been changed /// in the block. Contains the new set of authorities. AuthoritiesChange(Vec), @@ -72,13 +70,13 @@ pub enum DigestItem { /// trie creation. ChangesTrieRoot(Hash), /// Put a Seal on it - Seal(u64, Signature), + Seal(u64, SealSignature), /// Any 'non-system' digest item, opaque to the native code. Other(Vec), } #[cfg(feature = "std")] -impl ::serde::Serialize for DigestItem { +impl ::serde::Serialize for DigestItem { fn serialize(&self, seq: S) -> Result where S: ::serde::Serializer { self.using_encoded(|bytes| { ::substrate_primitives::bytes::serialize(bytes, seq) @@ -91,13 +89,13 @@ impl ::serde::Serialize for DigestItem { +pub enum DigestItemRef<'a, Hash: 'a, AuthorityId: 'a, SealSignature: 'a> { /// Reference to `DigestItem::AuthoritiesChange`. AuthoritiesChange(&'a [AuthorityId]), /// Reference to `DigestItem::ChangesTrieRoot`. ChangesTrieRoot(&'a Hash), /// A sealed signature for testing - Seal(&'a u64, &'a Signature), + Seal(&'a u64, &'a SealSignature), /// Any 'non-system' digest item, opaque to the native code. /// Reference to `DigestItem::Other`. Other(&'a Vec), @@ -116,7 +114,7 @@ enum DigestItemType { Seal, } -impl DigestItem { +impl DigestItem { /// Returns Some if `self` is a `DigestItem::Other`. pub fn as_other(&self) -> Option<&Vec> { match *self { @@ -126,7 +124,7 @@ impl DigestItem { } /// Returns a 'referencing view' for this digest item. - fn dref<'a>(&'a self) -> DigestItemRef<'a, Hash, AuthorityId> { + fn dref<'a>(&'a self) -> DigestItemRef<'a, Hash, AuthorityId, SealSignature> { match *self { DigestItem::AuthoritiesChange(ref v) => DigestItemRef::AuthoritiesChange(v), DigestItem::ChangesTrieRoot(ref v) => DigestItemRef::ChangesTrieRoot(v), @@ -139,7 +137,8 @@ impl DigestItem { impl< Hash: Codec + Member, AuthorityId: Codec + Member + MaybeHash, -> traits::DigestItem for DigestItem { + SealSignature: Codec + Member, +> traits::DigestItem for DigestItem { type Hash = Hash; type AuthorityId = AuthorityId; @@ -152,13 +151,13 @@ impl< } } -impl Encode for DigestItem { +impl Encode for DigestItem { fn encode(&self) -> Vec { self.dref().encode() } } -impl Decode for DigestItem { +impl Decode for DigestItem { fn decode(input: &mut I) -> Option { let item_type: DigestItemType = Decode::decode(input)?; match item_type { @@ -169,7 +168,7 @@ impl Decode for DigestItem Decode::decode(input)?, )), DigestItemType::Seal => { - let vals: (u64, Signature) = Decode::decode(input)?; + let vals: (u64, SealSignature) = Decode::decode(input)?; Some(DigestItem::Seal(vals.0, vals.1)) }, DigestItemType::Other => Some(DigestItem::Other( @@ -179,7 +178,7 @@ impl Decode for DigestItem } } -impl<'a, Hash: Codec + Member, AuthorityId: Codec + Member> DigestItemRef<'a, Hash, AuthorityId> { +impl<'a, Hash: Codec + Member, AuthorityId: Codec + Member, SealSignature: Codec + Member> DigestItemRef<'a, Hash, AuthorityId, SealSignature> { /// Cast this digest item into `AuthoritiesChange`. pub fn as_authorities_change(&self) -> Option<&'a [AuthorityId]> { match *self { @@ -197,7 +196,7 @@ impl<'a, Hash: Codec + Member, AuthorityId: Codec + Member> DigestItemRef<'a, Ha } } -impl<'a, Hash: Encode, AuthorityId: Encode> Encode for DigestItemRef<'a, Hash, AuthorityId> { +impl<'a, Hash: Encode, AuthorityId: Encode, SealSignature: Encode> Encode for DigestItemRef<'a, Hash, AuthorityId, SealSignature> { fn encode(&self) -> Vec { let mut v = Vec::new(); @@ -227,6 +226,7 @@ impl<'a, Hash: Encode, AuthorityId: Encode> Encode for DigestItemRef<'a, Hash, A #[cfg(test)] mod tests { use super::*; + use substrate_primitives::hash::H512 as Signature; #[test] fn should_serialize_digest() { diff --git a/core/sr-primitives/src/generic/tests.rs b/core/sr-primitives/src/generic/tests.rs index 5d58bd6c33..91fc8f3faf 100644 --- a/core/sr-primitives/src/generic/tests.rs +++ b/core/sr-primitives/src/generic/tests.rs @@ -17,12 +17,12 @@ //! Tests for the generic implementations of Extrinsic/Header/Block. use crate::codec::{Decode, Encode}; -use substrate_primitives::H256; +use substrate_primitives::{H256, H512}; use super::DigestItem; #[test] fn system_digest_item_encoding() { - let item = DigestItem::AuthoritiesChange::(vec![10, 20, 30]); + let item = DigestItem::AuthoritiesChange::(vec![10, 20, 30]); let encoded = item.encode(); assert_eq!(encoded, vec![ // type = DigestItemType::AuthoritiesChange @@ -35,13 +35,13 @@ fn system_digest_item_encoding() { 30, 0, 0, 0, ]); - let decoded: DigestItem = Decode::decode(&mut &encoded[..]).unwrap(); + let decoded: DigestItem = Decode::decode(&mut &encoded[..]).unwrap(); assert_eq!(item, decoded); } #[test] fn non_system_digest_item_encoding() { - let item = DigestItem::Other::(vec![10, 20, 30]); + let item = DigestItem::Other::(vec![10, 20, 30]); let encoded = item.encode(); assert_eq!(encoded, vec![ // type = DigestItemType::Other @@ -52,6 +52,6 @@ fn non_system_digest_item_encoding() { 10, 20, 30, ]); - let decoded: DigestItem = Decode::decode(&mut &encoded[..]).unwrap(); + let decoded: DigestItem = Decode::decode(&mut &encoded[..]).unwrap(); assert_eq!(item, decoded); } diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index a06f3fc1b0..953568e57b 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -30,7 +30,7 @@ pub use serde_derive; pub use runtime_io::{StorageOverlay, ChildrenStorageOverlay}; use rstd::prelude::*; -use substrate_primitives::hash::{H256, H512}; +use substrate_primitives::{ed25519, sr25519, hash::{H256, H512}}; use codec::{Encode, Decode}; #[cfg(feature = "std")] @@ -251,39 +251,64 @@ impl From> for Perbill { } } -/// Ed25519 signature verify. -#[derive(Eq, PartialEq, Clone, Default, Encode, Decode)] +/// Signature verify that can work with any known signature types.. +#[derive(Eq, PartialEq, Clone, Encode, Decode)] +#[cfg_attr(feature = "std", derive(Debug))] +pub enum MultiSignature { + /// An Ed25519 signature. + Ed25519(ed25519::Signature), + /// An Sr25519 signature. + Sr25519(sr25519::Signature), +} + +impl Default for MultiSignature { + fn default() -> Self { + MultiSignature::Ed25519(Default::default()) + } +} + +/// Public key for any known crypto algorithm. +#[derive(Eq, PartialEq, Ord, PartialOrd, Clone, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug, Serialize, Deserialize))] -pub struct Ed25519Signature(pub H512); +pub enum MultiSigner { + /// An Ed25519 identity. + Ed25519(ed25519::Public), + /// An Sr25519 identity. + Sr25519(sr25519::Public), +} -impl Verify for Ed25519Signature { - type Signer = H256; - fn verify>(&self, mut msg: L, signer: &Self::Signer) -> bool { - runtime_io::ed25519_verify((self.0).as_fixed_bytes(), msg.get(), &signer.as_bytes()) +impl Default for MultiSigner { + fn default() -> Self { + MultiSigner::Ed25519(Default::default()) } } -impl From for Ed25519Signature { - fn from(h: H512) -> Ed25519Signature { - Ed25519Signature(h) +impl Verify for MultiSignature { + type Signer = MultiSigner; + fn verify>(&self, msg: L, signer: &Self::Signer) -> bool { + match (self, signer) { + (MultiSignature::Ed25519(ref sig), &MultiSigner::Ed25519(ref who)) => sig.verify(msg, who), + (MultiSignature::Sr25519(ref sig), &MultiSigner::Sr25519(ref who)) => sig.verify(msg, who), + _ => false, + } } } -/// Sr25519 signature verify. +/// Signature verify that can work with any known signature types.. #[derive(Eq, PartialEq, Clone, Default, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug, Serialize, Deserialize))] -pub struct Sr25519Signature(pub H512); +pub struct AnySignature(H512); -impl Verify for Sr25519Signature { - type Signer = H256; - fn verify>(&self, mut msg: L, signer: &Self::Signer) -> bool { - runtime_io::sr25519_verify((self.0).as_fixed_bytes(), msg.get(), &signer.as_bytes()) - } -} +/// Public key for any known crypto algorithm. +#[derive(Eq, PartialEq, Ord, PartialOrd, Clone, Default, Encode, Decode)] +#[cfg_attr(feature = "std", derive(Debug, Serialize, Deserialize))] +pub struct AnySigner(H256); -impl From for Sr25519Signature { - fn from(h: H512) -> Sr25519Signature { - Sr25519Signature(h) +impl Verify for AnySignature { + type Signer = AnySigner; + fn verify>(&self, mut msg: L, signer: &AnySigner) -> bool { + runtime_io::sr25519_verify(self.0.as_fixed_bytes(), msg.get(), &signer.0.as_bytes()) || + runtime_io::ed25519_verify(self.0.as_fixed_bytes(), msg.get(), &signer.0.as_bytes()) } } @@ -581,7 +606,7 @@ impl traits::Extrinsic for OpaqueExtrinsic { #[cfg(test)] mod tests { - use substrate_primitives::hash::H256; + use substrate_primitives::hash::{H256, H512}; use crate::codec::{Encode, Decode}; use crate::traits::DigestItem; @@ -616,7 +641,7 @@ mod tests { } impl_outer_log! { - pub enum Log(InternalLog: DigestItem) for Runtime { + pub enum Log(InternalLog: DigestItem) for Runtime { a(AuthoritiesChange), b() } } @@ -636,16 +661,16 @@ mod tests { assert_eq!(auth_change, decoded_auth_change); // interpret regular item using `generic::DigestItem` - let generic_b1: super::generic::DigestItem = Decode::decode(&mut &encoded_b1[..]).unwrap(); + let generic_b1: super::generic::DigestItem = Decode::decode(&mut &encoded_b1[..]).unwrap(); match generic_b1 { super::generic::DigestItem::Other(_) => (), _ => panic!("unexpected generic_b1: {:?}", generic_b1), } // interpret system item using `generic::DigestItem` - let generic_auth_change: super::generic::DigestItem = Decode::decode(&mut &encoded_auth_change[..]).unwrap(); + let generic_auth_change: super::generic::DigestItem = Decode::decode(&mut &encoded_auth_change[..]).unwrap(); match generic_auth_change { - super::generic::DigestItem::AuthoritiesChange::(authorities) => assert_eq!(authorities, vec![100, 200, 300]), + super::generic::DigestItem::AuthoritiesChange::(authorities) => assert_eq!(authorities, vec![100, 200, 300]), _ => panic!("unexpected generic_auth_change: {:?}", generic_auth_change), } diff --git a/core/sr-primitives/src/testing.rs b/core/sr-primitives/src/testing.rs index 96a10363aa..2711c0e623 100644 --- a/core/sr-primitives/src/testing.rs +++ b/core/sr-primitives/src/testing.rs @@ -24,30 +24,30 @@ use std::{fmt::Debug, ops::Deref, fmt}; use crate::codec::{Codec, Encode, Decode}; use crate::traits::{self, Checkable, Applyable, BlakeTwo256, Convert}; use crate::generic::DigestItem as GenDigestItem; - -pub use substrate_primitives::{H256, Ed25519AuthorityId}; +pub use substrate_primitives::H256; use substrate_primitives::U256; +use substrate_primitives::ed25519::{Public as AuthorityId, Signature as AuthoritySignature}; /// Authority Id #[derive(Default, PartialEq, Eq, Clone, Encode, Decode, Debug)] #[cfg_attr(feature = "std", derive(Serialize, Deserialize))] pub struct UintAuthorityId(pub u64); -impl Into for UintAuthorityId { - fn into(self) -> Ed25519AuthorityId { +impl Into for UintAuthorityId { + fn into(self) -> AuthorityId { let bytes: [u8; 32] = U256::from(self.0).into(); - Ed25519AuthorityId(bytes) + AuthorityId(bytes) } } /// Converter between u64 and the AuthorityId wrapper type. pub struct ConvertUintAuthorityId; -impl Convert for ConvertUintAuthorityId { - fn convert(a: u64) -> UintAuthorityId { - UintAuthorityId(a) +impl Convert> for ConvertUintAuthorityId { + fn convert(a: u64) -> Option { + Some(UintAuthorityId(a)) } } /// Digest item -pub type DigestItem = GenDigestItem; +pub type DigestItem = GenDigestItem; /// Header Digest #[derive(Default, PartialEq, Eq, Clone, Serialize, Debug, Encode, Decode)] diff --git a/core/sr-primitives/src/traits.rs b/core/sr-primitives/src/traits.rs index b05f1a38da..e5a58850e7 100644 --- a/core/sr-primitives/src/traits.rs +++ b/core/sr-primitives/src/traits.rs @@ -55,6 +55,20 @@ pub trait Verify { fn verify>(&self, msg: L, signer: &Self::Signer) -> bool; } +impl Verify for substrate_primitives::ed25519::Signature { + type Signer = substrate_primitives::ed25519::Public; + fn verify>(&self, mut msg: L, signer: &Self::Signer) -> bool { + runtime_io::ed25519_verify(self.as_ref(), msg.get(), signer) + } +} + +impl Verify for substrate_primitives::sr25519::Signature { + type Signer = substrate_primitives::sr25519::Public; + fn verify>(&self, mut msg: L, signer: &Self::Signer) -> bool { + runtime_io::sr25519_verify(self.as_ref(), msg.get(), signer) + } +} + /// Some sort of check on the origin is performed by this object. pub trait EnsureOrigin { /// A return type. @@ -134,6 +148,16 @@ pub trait Convert { fn convert(a: A) -> B; } +impl Convert for () { + fn convert(_: A) -> B { Default::default() } +} + +/// A structure that performs identity conversion. +pub struct Identity; +impl Convert for Identity { + fn convert(a: T) -> T { a } +} + /// Simple trait similar to `Into`, except that it can be used to convert numerics between each /// other. pub trait As { @@ -161,15 +185,6 @@ macro_rules! impl_numerics { impl_numerics!(u8, u16, u32, u64, u128, usize, i8, i16, i32, i64, i128, isize); -/// A structure that performs identity conversion. -pub struct Identity; -impl Convert for Identity { - fn convert(a: T) -> T { a } -} -impl Convert for () { - fn convert(_: T) -> () { () } -} - /// A meta trait for arithmetic. pub trait SimpleArithmetic: Zero + One + IntegerSquareRoot + As + diff --git a/core/state-machine/src/ext.rs b/core/state-machine/src/ext.rs index 2eb63f9f35..abfde7ee7b 100644 --- a/core/state-machine/src/ext.rs +++ b/core/state-machine/src/ext.rs @@ -26,7 +26,7 @@ use primitives::storage::well_known_keys::is_child_storage_key; use trie::{MemoryDB, TrieDBMut, TrieMut, default_child_trie_root, is_child_trie_key_valid}; use heapsize::HeapSizeOf; -const EXT_NOT_ALLOWED_TO_FAIL: &'static str = "Externalities not allowed to fail within runtime"; +const EXT_NOT_ALLOWED_TO_FAIL: &str = "Externalities not allowed to fail within runtime"; /// Errors that can occur when interacting with the externalities. #[derive(Debug, Copy, Clone)] diff --git a/core/test-client/src/block_builder_ext.rs b/core/test-client/src/block_builder_ext.rs index 17a96cfa27..e427b57892 100644 --- a/core/test-client/src/block_builder_ext.rs +++ b/core/test-client/src/block_builder_ext.rs @@ -17,7 +17,7 @@ //! Block Builder extensions for tests. use client; -use keyring; +use super::AccountKeyring; use runtime; use runtime_primitives::traits::ProvideRuntimeApi; use client::block_builder::api::BlockBuilder; @@ -38,9 +38,8 @@ impl<'a, A> BlockBuilderExt for client::block_builder::BlockBuilder<'a, runtime: } fn sign_tx(transfer: runtime::Transfer) -> runtime::Extrinsic { - let signature = keyring::Keyring::from_raw_public(transfer.from.to_fixed_bytes()) + let signature = AccountKeyring::from_public(&transfer.from) .unwrap() - .sign(&parity_codec::Encode::encode(&transfer)) - .into(); + .sign(&parity_codec::Encode::encode(&transfer)); runtime::Extrinsic::Transfer(transfer, signature) } diff --git a/core/test-client/src/lib.rs b/core/test-client/src/lib.rs index 34a17d3301..6eb6db4d4b 100644 --- a/core/test-client/src/lib.rs +++ b/core/test-client/src/lib.rs @@ -29,9 +29,9 @@ pub use client::ExecutionStrategies; pub use client::blockchain; pub use client::backend; pub use executor::NativeExecutor; -pub use keyring; pub use runtime; pub use consensus; +pub use keyring::{AuthorityKeyring, AccountKeyring}; use std::sync::Arc; use futures::future::FutureResult; @@ -39,7 +39,6 @@ use primitives::Blake2Hasher; use runtime_primitives::StorageOverlay; use runtime_primitives::traits::{Block as BlockT, Header as HeaderT, Hash as HashT, NumberFor}; use runtime::genesismap::{GenesisConfig, additional_storage_with_genesis}; -use keyring::Keyring; use state_machine::ExecutionStrategy; use client::LocalCallExecutor; @@ -165,10 +164,16 @@ pub fn new_with_backend( fn genesis_config(support_changes_trie: bool) -> GenesisConfig { GenesisConfig::new(support_changes_trie, vec![ - Keyring::Alice.to_raw_public().into(), - Keyring::Bob.to_raw_public().into(), - Keyring::Charlie.to_raw_public().into(), - ], 1000) + AuthorityKeyring::Alice.into(), + AuthorityKeyring::Bob.into(), + AuthorityKeyring::Charlie.into(), + ], vec![ + AccountKeyring::Alice.into(), + AccountKeyring::Bob.into(), + AccountKeyring::Charlie.into(), + ], + 1000 + ) } fn genesis_storage(support_changes_trie: bool) -> StorageOverlay { diff --git a/core/test-client/src/trait_tests.rs b/core/test-client/src/trait_tests.rs index b678d83fdb..aa51f7d8bf 100644 --- a/core/test-client/src/trait_tests.rs +++ b/core/test-client/src/trait_tests.rs @@ -20,10 +20,9 @@ #![allow(missing_docs)] use std::sync::Arc; -use keyring::Keyring; use consensus::BlockOrigin; use primitives::Blake2Hasher; -use crate::TestClient; +use crate::{TestClient, AccountKeyring}; use runtime_primitives::traits::Block as BlockT; use crate::backend; use crate::blockchain::{Backend as BlockChainBackendT, HeaderBackend}; @@ -88,8 +87,8 @@ pub fn test_leaves_for_backend(backend: Arc) where let mut builder = client.new_block_at(&BlockId::Hash(a1.hash())).unwrap(); // this push is required as otherwise B2 has the same hash as A2 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 41, nonce: 0, }).unwrap(); @@ -117,8 +116,8 @@ pub fn test_leaves_for_backend(backend: Arc) where let mut builder = client.new_block_at(&BlockId::Hash(b2.hash())).unwrap(); // this push is required as otherwise C3 has the same hash as B3 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 1, nonce: 1, }).unwrap(); @@ -132,8 +131,8 @@ pub fn test_leaves_for_backend(backend: Arc) where let mut builder = client.new_block_at(&BlockId::Hash(a1.hash())).unwrap(); // this push is required as otherwise D2 has the same hash as B2 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 1, nonce: 0, }).unwrap(); @@ -180,8 +179,8 @@ pub fn test_children_for_backend(backend: Arc) where let mut builder = client.new_block_at(&BlockId::Hash(a1.hash())).unwrap(); // this push is required as otherwise B2 has the same hash as A2 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 41, nonce: 0, }).unwrap(); @@ -200,8 +199,8 @@ pub fn test_children_for_backend(backend: Arc) where let mut builder = client.new_block_at(&BlockId::Hash(b2.hash())).unwrap(); // this push is required as otherwise C3 has the same hash as B3 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 1, nonce: 1, }).unwrap(); @@ -212,8 +211,8 @@ pub fn test_children_for_backend(backend: Arc) where let mut builder = client.new_block_at(&BlockId::Hash(a1.hash())).unwrap(); // this push is required as otherwise D2 has the same hash as B2 and won't get imported builder.push_transfer(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Ferdie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Ferdie.into(), amount: 1, nonce: 0, }).unwrap(); @@ -269,8 +268,8 @@ pub fn test_blockchain_query_by_number_gets_canonical(backend: Arc(backend: Arc(backend: Arc, - pub authorities: Vec, - pub balances: Vec<(Ed25519AuthorityId, u64)>, + pub authorities: Vec, + pub balances: Vec<(AccountId, u64)>, } impl GenesisConfig { - pub fn new_simple(authorities: Vec, balance: u64) -> Self { - Self::new(false, authorities, balance) - } - - pub fn new(support_changes_trie: bool, authorities: Vec, balance: u64) -> Self { + pub fn new(support_changes_trie: bool, authorities: Vec, endowed_accounts: Vec, balance: u64) -> Self { GenesisConfig { changes_trie_config: match support_changes_trie { true => Some(super::changes_trie_config()), false => None, }, authorities: authorities.clone(), - balances: authorities.into_iter().map(|a| (a, balance)).collect(), + balances: endowed_accounts.into_iter().map(|a| (a, balance)).collect(), } } pub fn genesis_map(&self) -> HashMap, Vec> { let wasm_runtime = include_bytes!("../wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm").to_vec(); let mut map: HashMap, Vec> = self.balances.iter() - .map(|&(account, balance)| (account.to_keyed_vec(b"balance:"), vec![].and(&balance))) + .map(|&(ref account, balance)| (account.to_keyed_vec(b"balance:"), vec![].and(&balance))) .map(|(k, v)| (twox_128(&k[..])[..].to_vec(), v.to_vec())) .chain(vec![ (well_known_keys::CODE.into(), wasm_runtime), diff --git a/core/test-runtime/src/lib.rs b/core/test-runtime/src/lib.rs index 59b56e3e0f..b345c06e6c 100644 --- a/core/test-runtime/src/lib.rs +++ b/core/test-runtime/src/lib.rs @@ -29,7 +29,7 @@ use substrate_client::{ impl_runtime_apis, }; use runtime_primitives::{ - ApplyResult, Ed25519Signature, transaction_validity::TransactionValidity, + ApplyResult, transaction_validity::TransactionValidity, create_runtime_str, traits::{ BlindCheckable, BlakeTwo256, Block as BlockT, Extrinsic as ExtrinsicT, @@ -38,7 +38,7 @@ use runtime_primitives::{ }; use runtime_version::RuntimeVersion; pub use primitives::hash::H256; -use primitives::{Ed25519AuthorityId, OpaqueMetadata}; +use primitives::{ed25519, sr25519, OpaqueMetadata}; #[cfg(any(feature = "std", test))] use runtime_version::NativeVersion; use inherents::{CheckInherentsResult, InherentData}; @@ -81,8 +81,8 @@ pub struct Transfer { #[derive(Clone, PartialEq, Eq, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug))] pub enum Extrinsic { - AuthoritiesChange(Vec), - Transfer(Transfer, Ed25519Signature), + AuthoritiesChange(Vec), + Transfer(Transfer, AccountSignature), } #[cfg(feature = "std")] @@ -125,8 +125,14 @@ impl Extrinsic { } } +// The identity type used by authorities. +pub type AuthorityId = ed25519::Public; +// The signature type used by authorities. +pub type AuthoritySignature = ed25519::Signature; /// An identifier for an account on this system. -pub type AccountId = H256; +pub type AccountId = sr25519::Public; +// The signature type used by accounts/transactions. +pub type AccountSignature = sr25519::Signature; /// A simple hash type for all our hashing. pub type Hash = H256; /// The block number type used in this runtime. @@ -134,7 +140,7 @@ pub type BlockNumber = u64; /// Index of a transaction. pub type Index = u64; /// The item of a block digest. -pub type DigestItem = runtime_primitives::generic::DigestItem; +pub type DigestItem = runtime_primitives::generic::DigestItem; /// The digest of a block. pub type Digest = runtime_primitives::generic::Digest; /// A test block. @@ -256,7 +262,7 @@ cfg_if! { version() } - fn authorities() -> Vec { + fn authorities() -> Vec { system::authorities() } @@ -347,7 +353,7 @@ cfg_if! { version() } - fn authorities() -> Vec { + fn authorities() -> Vec { system::authorities() } diff --git a/core/test-runtime/src/system.rs b/core/test-runtime/src/system.rs index bfa5de70d0..f1e04473ec 100644 --- a/core/test-runtime/src/system.rs +++ b/core/test-runtime/src/system.rs @@ -26,8 +26,8 @@ use runtime_primitives::generic; use runtime_primitives::{ApplyError, ApplyOutcome, ApplyResult, transaction_validity::TransactionValidity}; use parity_codec::{KeyedVec, Encode}; use super::{AccountId, BlockNumber, Extrinsic, Transfer, H256 as Hash, Block, Header, Digest}; -use primitives::{Ed25519AuthorityId, Blake2Hasher}; -use primitives::storage::well_known_keys; +use primitives::{Blake2Hasher, storage::well_known_keys}; +use primitives::ed25519::Public as AuthorityId; const NONCE_OF: &[u8] = b"nonce:"; const BALANCE_OF: &[u8] = b"balance:"; @@ -37,7 +37,7 @@ storage_items! { // The current block number being processed. Set by `execute_block`. Number: b"sys:num" => required BlockNumber; ParentHash: b"sys:pha" => required Hash; - NewAuthorities: b"sys:new_auth" => Vec; + NewAuthorities: b"sys:new_auth" => Vec; } pub fn balance_of_key(who: AccountId) -> Vec { @@ -53,7 +53,7 @@ pub fn nonce_of(who: AccountId) -> u64 { } /// Get authorities ar given block. -pub fn authorities() -> Vec { +pub fn authorities() -> Vec { let len: u32 = storage::unhashed::get(well_known_keys::AUTHORITY_COUNT) .expect("There are always authorities in test-runtime"); (0..len) @@ -71,6 +71,36 @@ pub fn initialise_block(header: &Header) { } /// Actually execute all transitioning for `block`. +pub fn polish_block(block: &mut Block) { + let header = &mut block.header; + + // check transaction trie root represents the transactions. + let txs = block.extrinsics.iter().map(Encode::encode).collect::>(); + let txs = txs.iter().map(Vec::as_slice).collect::>(); + let txs_root = enumerated_trie_root::(&txs).into(); + info_expect_equal_hash(&txs_root, &header.extrinsics_root); + header.extrinsics_root = txs_root; + + // execute transactions + block.extrinsics.iter().enumerate().for_each(|(i, e)| { + storage::unhashed::put(well_known_keys::EXTRINSIC_INDEX, &(i as u32)); + execute_transaction_backend(e).unwrap_or_else(|_| panic!("Invalid transaction")); + storage::unhashed::kill(well_known_keys::EXTRINSIC_INDEX); + }); + + header.state_root = storage_root().into(); + + // check digest + let mut digest = Digest::default(); + if let Some(storage_changes_root) = storage_changes_root(header.parent_hash.into(), header.number - 1) { + digest.push(generic::DigestItem::ChangesTrieRoot(storage_changes_root.into())); + } + if let Some(new_authorities) = ::take() { + digest.push(generic::DigestItem::AuthoritiesChange(new_authorities)); + } + header.digest = digest; +} + pub fn execute_block(block: Block) { let ref header = block.header; @@ -83,9 +113,9 @@ pub fn execute_block(block: Block) { // execute transactions block.extrinsics.iter().enumerate().for_each(|(i, e)| { - storage::unhashed::put(well_known_keys::EXTRINSIC_INDEX, &(i as u32)); - execute_transaction_backend(e).map_err(|_| ()).expect("Extrinsic error"); - storage::unhashed::kill(well_known_keys::EXTRINSIC_INDEX); + storage::unhashed::put(well_known_keys::EXTRINSIC_INDEX, &(i as u32)); + execute_transaction_backend(e).unwrap_or_else(|_| panic!("Invalid transaction")); + storage::unhashed::kill(well_known_keys::EXTRINSIC_INDEX); }); // check storage root. @@ -122,7 +152,7 @@ pub fn validate_transaction(utx: Extrinsic) -> TransactionValidity { } let hash = |from: &AccountId, nonce: u64| { - twox_128(&nonce.to_keyed_vec(from.as_bytes())).to_vec() + twox_128(&nonce.to_keyed_vec(&from.encode())).to_vec() }; let requires = if tx.nonce != expected_nonce && tx.nonce > 0 { let mut deps = Vec::new(); @@ -144,7 +174,6 @@ pub fn validate_transaction(utx: Extrinsic) -> TransactionValidity { } } - /// Execute a transaction outside of the block execution function. /// This doesn't attempt to validate anything regarding the block. pub fn execute_transaction(utx: Extrinsic) -> ApplyResult { @@ -225,8 +254,8 @@ fn execute_transfer_backend(tx: &Transfer) -> ApplyResult { Ok(ApplyOutcome::Success) } -fn execute_new_authorities_backend(new_authorities: &[Ed25519AuthorityId]) -> ApplyResult { - let new_authorities: Vec = new_authorities.iter().cloned().collect(); +fn execute_new_authorities_backend(new_authorities: &[AuthorityId]) -> ApplyResult { + let new_authorities: Vec = new_authorities.iter().cloned().collect(); ::put(new_authorities); Ok(ApplyOutcome::Success) } @@ -258,12 +287,11 @@ mod tests { use runtime_io::{with_externalities, twox_128, TestExternalities}; use parity_codec::{Joiner, KeyedVec}; - use keyring::Keyring; - use crate::{Header, Digest, Extrinsic, Transfer}; + use substrate_test_client::{AuthorityKeyring, AccountKeyring}; + use crate::{Header, Extrinsic, Transfer}; use primitives::{Blake2Hasher, map}; use primitives::storage::well_known_keys; use substrate_executor::WasmExecutor; - use hex_literal::{hex, hex_impl}; const WASM_CODE: &'static [u8] = include_bytes!("../wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm"); @@ -272,36 +300,34 @@ mod tests { TestExternalities::new(map![ twox_128(b"latest").to_vec() => vec![69u8; 32], twox_128(well_known_keys::AUTHORITY_COUNT).to_vec() => vec![].and(&3u32), - twox_128(&0u32.to_keyed_vec(well_known_keys::AUTHORITY_PREFIX)).to_vec() => Keyring::Alice.to_raw_public().to_vec(), - twox_128(&1u32.to_keyed_vec(well_known_keys::AUTHORITY_PREFIX)).to_vec() => Keyring::Bob.to_raw_public().to_vec(), - twox_128(&2u32.to_keyed_vec(well_known_keys::AUTHORITY_PREFIX)).to_vec() => Keyring::Charlie.to_raw_public().to_vec(), - twox_128(&Keyring::Alice.to_raw_public().to_keyed_vec(b"balance:")).to_vec() => vec![111u8, 0, 0, 0, 0, 0, 0, 0] + twox_128(&0u32.to_keyed_vec(well_known_keys::AUTHORITY_PREFIX)).to_vec() => AuthorityKeyring::Alice.to_raw_public().to_vec(), + twox_128(&1u32.to_keyed_vec(well_known_keys::AUTHORITY_PREFIX)).to_vec() => AuthorityKeyring::Bob.to_raw_public().to_vec(), + twox_128(&2u32.to_keyed_vec(well_known_keys::AUTHORITY_PREFIX)).to_vec() => AuthorityKeyring::Charlie.to_raw_public().to_vec(), + twox_128(&AccountKeyring::Alice.to_raw_public().to_keyed_vec(b"balance:")).to_vec() => vec![111u8, 0, 0, 0, 0, 0, 0, 0] ]) } fn construct_signed_tx(tx: Transfer) -> Extrinsic { - let signature = Keyring::from_raw_public(tx.from.to_fixed_bytes()).unwrap().sign(&tx.encode()).into(); + let signature = AccountKeyring::from_public(&tx.from).unwrap().sign(&tx.encode()).into(); Extrinsic::Transfer(tx, signature) } fn block_import_works(block_executor: F) where F: Fn(Block, &mut TestExternalities) { - let mut t = new_test_ext(); - let h = Header { parent_hash: [69u8; 32].into(), number: 1, - state_root: hex!("e51369d0b37e4aa1383f1e7a34c2eec75f18ee6b4b199a440f4f2456906e0eb7").into(), - extrinsics_root: hex!("03170a2e7597b7b7e3d84c05391d139a62b157e78786d8c082f29dcf4c111314").into(), - digest: Digest { logs: vec![], }, + state_root: Default::default(), + extrinsics_root: Default::default(), + digest: Default::default(), }; - - let b = Block { + let mut b = Block { header: h, extrinsics: vec![], }; - block_executor(b, &mut t); + with_externalities(&mut new_test_ext(), || polish_block(&mut b)); + block_executor(b, &mut new_test_ext()); } #[test] @@ -321,69 +347,74 @@ mod tests { } fn block_import_with_transaction_works(block_executor: F) where F: Fn(Block, &mut TestExternalities) { - let mut t = new_test_ext(); - - with_externalities(&mut t, || { - assert_eq!(balance_of(Keyring::Alice.to_raw_public().into()), 111); - assert_eq!(balance_of(Keyring::Bob.to_raw_public().into()), 0); - }); - - let b = Block { + let mut b1 = Block { header: Header { parent_hash: [69u8; 32].into(), number: 1, - state_root: hex!("f61a14ce70846cd6a1714bbe1b63b2ca1172df1c8c01adfd798bb08bd30dc486").into(), - extrinsics_root: hex!("198205cb7729fec8ccdc2e58571a4858586a4f305898078e0e8bee1dddea7e4b").into(), - digest: Digest { logs: vec![], }, + state_root: Default::default(), + extrinsics_root: Default::default(), + digest: Default::default(), }, extrinsics: vec![ construct_signed_tx(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Bob.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Bob.into(), amount: 69, nonce: 0, }) ], }; - with_externalities(&mut t, || { - execute_block(b.clone()); + let mut dummy_ext = new_test_ext(); + with_externalities(&mut dummy_ext, || polish_block(&mut b1)); - assert_eq!(balance_of(Keyring::Alice.to_raw_public().into()), 42); - assert_eq!(balance_of(Keyring::Bob.to_raw_public().into()), 69); - }); - - let b = Block { + let mut b2 = Block { header: Header { - parent_hash: b.header.hash(), + parent_hash: b1.header.hash(), number: 2, - state_root: hex!("a47383d9a5d6c8c7531386abccdf512c76729a1a19c59b6c2e4f95dde419923a").into(), - extrinsics_root: hex!("041fa8971dda28745967179a9f39e3ca1a595c510682105df1cff74ae6f05e0d").into(), - digest: Digest { logs: vec![], }, + state_root: Default::default(), + extrinsics_root: Default::default(), + digest: Default::default(), }, extrinsics: vec![ construct_signed_tx(Transfer { - from: Keyring::Bob.to_raw_public().into(), - to: Keyring::Alice.to_raw_public().into(), + from: AccountKeyring::Bob.into(), + to: AccountKeyring::Alice.into(), amount: 27, nonce: 0, }), construct_signed_tx(Transfer { - from: Keyring::Alice.to_raw_public().into(), - to: Keyring::Charlie.to_raw_public().into(), + from: AccountKeyring::Alice.into(), + to: AccountKeyring::Charlie.into(), amount: 69, nonce: 1, }), ], }; - block_executor(b, &mut t); + with_externalities(&mut dummy_ext, || polish_block(&mut b2)); + drop(dummy_ext); + + let mut t = new_test_ext(); with_externalities(&mut t, || { + assert_eq!(balance_of(AccountKeyring::Alice.into()), 111); + assert_eq!(balance_of(AccountKeyring::Bob.into()), 0); + }); + + block_executor(b1, &mut t); - assert_eq!(balance_of(Keyring::Alice.to_raw_public().into()), 0); - assert_eq!(balance_of(Keyring::Bob.to_raw_public().into()), 42); - assert_eq!(balance_of(Keyring::Charlie.to_raw_public().into()), 69); + with_externalities(&mut t, || { + assert_eq!(balance_of(AccountKeyring::Alice.into()), 42); + assert_eq!(balance_of(AccountKeyring::Bob.into()), 69); + }); + + block_executor(b2, &mut t); + + with_externalities(&mut t, || { + assert_eq!(balance_of(AccountKeyring::Alice.into()), 0); + assert_eq!(balance_of(AccountKeyring::Bob.into()), 42); + assert_eq!(balance_of(AccountKeyring::Charlie.into()), 69); }); } diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index fdba699543..a5b87b4436 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -1,5 +1,13 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +[[package]] +name = "aho-corasick" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "arrayref" version = "0.3.5" @@ -481,6 +489,11 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hex" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "hex-literal" version = "0.1.3" @@ -651,6 +664,11 @@ name = "matches" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "memchr" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "memoffset" version = "0.2.1" @@ -1120,6 +1138,26 @@ name = "redox_syscall" version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "regex" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex-syntax" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ring" version = "0.14.6" @@ -1159,7 +1197,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "schnorrkel" version = "0.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/w3f/schnorrkel#3179838da9dd4896c12bb910e7c42477a3250641" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1168,6 +1206,7 @@ dependencies = [ "merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1441,11 +1480,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "substrate-bip39" version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/paritytech/substrate-bip39#a28806512c977992af8d6740d45352f5a1c832a0" dependencies = [ "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1561,19 +1600,21 @@ dependencies = [ "byteorder 1.3.1 (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)", + "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)", "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)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", "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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", - "substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)", "tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1947,6 +1988,11 @@ name = "typenum" version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "ucd-util" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "uint" version = "0.6.1" @@ -1994,6 +2040,11 @@ dependencies = [ "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "utf8-ranges" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "vcpkg" version = "0.2.6" @@ -2066,6 +2117,7 @@ dependencies = [ ] [metadata] +"checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" @@ -2127,6 +2179,7 @@ dependencies = [ "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" +"checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" "checksum hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "27455ce8b4a6666c87220e4b59c9a83995476bdadc10197905e61dbe906e36fa" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" "checksum hmac 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7a13f4163aa0c5ca1be584aace0e2212b2e41be5478218d4f657f5f778b2ae2a" @@ -2149,6 +2202,7 @@ dependencies = [ "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" +"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" @@ -2201,12 +2255,14 @@ dependencies = [ "checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" "checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" +"checksum regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53ee8cfdddb2e0291adfb9f13d31d3bbe0a03c9a402c01b1e24188d86c35b24f" +"checksum regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861" "checksum ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)" = "426bc186e3e95cac1e4a4be125a4aca7e84c2d616ffc02244eef36e2a60a093c" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" -"checksum schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fe554f318830b48e5da8ab1ccb1ffd02b79228364dac7766b7cd1ec461ca5116" +"checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" @@ -2226,7 +2282,7 @@ dependencies = [ "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" -"checksum substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ec6183ce9e04bec5f113ff19c8ef5355dad20a4196134b5402732bf5d3c1a351" +"checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" "checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec" @@ -2254,12 +2310,14 @@ dependencies = [ "checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" +"checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" "checksum uint 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7780bb27fd8a22295e0d9d53ae3be253f715a0dccb1808527f478f1c2603708" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" +"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 416fd30a5c971c184c502c7a6bdf316dfd633f8c..ff8a7a70c368b615d3f6f7a602c91497024ce30b 100644 GIT binary patch delta 13250 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 delta 12126 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 -> Result>, Self::Error> { Ok(match at { - BlockId::Number(num) => Some(H256::from_low_u64_be(*num)), + BlockId::Number(num) => Some(H256::from_low_u64_be(*num)).into(), BlockId::Hash(_) => None, }) } @@ -502,7 +502,7 @@ mod tests { fn hash_and_length(&self, uxt: &ExtrinsicFor) -> (Self::Hash, usize) { let len = uxt.encode().len(); ( - (uxt.transfer().from.to_low_u64_be() << 5) + uxt.transfer().nonce, + (H256::from(uxt.transfer().from.clone()).to_low_u64_be() << 5) + uxt.transfer().nonce, len ) } @@ -524,8 +524,8 @@ mod tests { // when let hash = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, })).unwrap(); @@ -539,8 +539,8 @@ mod tests { // given let pool = pool(); let uxt = uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, }); @@ -564,21 +564,21 @@ mod tests { // when let _hash = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, })).unwrap(); let _hash = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 1, })).unwrap(); // future doesn't count let _hash = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 3, })).unwrap(); @@ -600,20 +600,20 @@ mod tests { // given let pool = pool(); let hash1 = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, })).unwrap(); let hash2 = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 1, })).unwrap(); let hash3 = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 3, })).unwrap(); @@ -636,8 +636,8 @@ mod tests { // given let pool = pool(); let hash1 = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, })).unwrap(); @@ -662,8 +662,8 @@ mod tests { }, TestApi::default()); let hash1 = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 1, })).unwrap(); @@ -671,8 +671,8 @@ mod tests { // when let hash2 = pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(2), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(2)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 10, })).unwrap(); @@ -697,8 +697,8 @@ mod tests { // when pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 1, })).unwrap_err(); @@ -717,8 +717,8 @@ mod tests { // given let pool = pool(); let watcher = pool.submit_and_watch(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, })).unwrap(); @@ -733,7 +733,7 @@ mod tests { // then let mut stream = watcher.into_stream().wait(); assert_eq!(stream.next(), Some(Ok(watcher::Status::Ready))); - assert_eq!(stream.next(), Some(Ok(watcher::Status::Finalised(H256::from_low_u64_be(2))))); + assert_eq!(stream.next(), Some(Ok(watcher::Status::Finalised(H256::from_low_u64_be(2).into())))); assert_eq!(stream.next(), None); } @@ -742,8 +742,8 @@ mod tests { // given let pool = pool(); let watcher = pool.submit_and_watch(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, })).unwrap(); @@ -758,7 +758,7 @@ mod tests { // then let mut stream = watcher.into_stream().wait(); assert_eq!(stream.next(), Some(Ok(watcher::Status::Ready))); - assert_eq!(stream.next(), Some(Ok(watcher::Status::Finalised(H256::from_low_u64_be(2))))); + assert_eq!(stream.next(), Some(Ok(watcher::Status::Finalised(H256::from_low_u64_be(2).into())))); assert_eq!(stream.next(), None); } @@ -767,8 +767,8 @@ mod tests { // given let pool = pool(); let watcher = pool.submit_and_watch(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 1, })).unwrap(); @@ -777,8 +777,8 @@ mod tests { // when pool.submit_one(&BlockId::Number(0), uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, })).unwrap(); @@ -795,8 +795,8 @@ mod tests { // given let pool = pool(); let uxt = uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, }); @@ -819,8 +819,8 @@ mod tests { // given let pool = pool(); let uxt = uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, }); @@ -853,8 +853,8 @@ mod tests { }, TestApi::default()); let xt = uxt(Transfer { - from: H256::from_low_u64_be(1), - to: H256::from_low_u64_be(2), + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), amount: 5, nonce: 0, }); @@ -863,8 +863,8 @@ mod tests { // when let xt = uxt(Transfer { - from: H256::from_low_u64_be(2), - to: H256::from_low_u64_be(1), + from: AccountId::from_h256(H256::from_low_u64_be(2)), + to: AccountId::from_h256(H256::from_low_u64_be(1)), amount: 4, nonce: 1, }); diff --git a/core/transaction-pool/src/tests.rs b/core/transaction-pool/src/tests.rs index e7a0f03339..cab44f49cc 100644 --- a/core/transaction-pool/src/tests.rs +++ b/core/transaction-pool/src/tests.rs @@ -17,10 +17,9 @@ use super::*; -use keyring::Keyring::{self, *}; use parity_codec::Encode; use txpool::{self, Pool}; -use test_client::runtime::{AccountId, Block, Hash, Index, Extrinsic, Transfer}; +use test_client::{runtime::{AccountId, Block, Hash, Index, Extrinsic, Transfer}, AccountKeyring::{self, *}}; use sr_primitives::{ generic::{self, BlockId}, traits::{Hash as HashT, BlakeTwo256}, @@ -86,9 +85,9 @@ fn number_of(at: &BlockId) -> u64 { } } -fn uxt(who: Keyring, nonce: Index) -> Extrinsic { +fn uxt(who: AccountKeyring, nonce: Index) -> Extrinsic { let transfer = Transfer { - from: who.to_raw_public().into(), + from: who.into(), to: AccountId::default(), nonce, amount: 1, diff --git a/node-template/build.rs b/node-template/build.rs index d30f13c0c9..afc39d3b63 100644 --- a/node-template/build.rs +++ b/node-template/build.rs @@ -1,6 +1,6 @@ use vergen::{ConstantsFlags, generate_cargo_keys}; -const ERROR_MSG: &'static str = "Failed to generate metadata files"; +const ERROR_MSG: &str = "Failed to generate metadata files"; fn main() { generate_cargo_keys(ConstantsFlags::all()).expect(ERROR_MSG); diff --git a/node-template/runtime/src/lib.rs b/node-template/runtime/src/lib.rs index fd696e9500..f46f8df249 100644 --- a/node-template/runtime/src/lib.rs +++ b/node-template/runtime/src/lib.rs @@ -11,10 +11,10 @@ use parity_codec::{Encode, Decode}; use rstd::prelude::*; #[cfg(feature = "std")] use primitives::bytes; -use primitives::{Ed25519AuthorityId, OpaqueMetadata}; +use primitives::{ed25519, OpaqueMetadata}; use runtime_primitives::{ - ApplyResult, transaction_validity::TransactionValidity, Ed25519Signature, generic, - traits::{self, BlakeTwo256, Block as BlockT, StaticLookup}, create_runtime_str + ApplyResult, transaction_validity::TransactionValidity, generic, create_runtime_str, + traits::{self, BlakeTwo256, Block as BlockT, StaticLookup, Verify} }; use client::{ block_builder::api::{CheckInherentsResult, InherentData, self as block_builder_api}, @@ -34,8 +34,17 @@ pub use runtime_primitives::{Permill, Perbill}; pub use timestamp::BlockPeriod; pub use support::{StorageValue, construct_runtime}; -/// Alias to Ed25519 pubkey that identifies an account on the chain. -pub type AccountId = primitives::H256; +/// The type that is used for identifying authorities. +pub type AuthorityId = ::Signer; + +/// The type used by authorities to prove their ID. +pub type AuthoritySignature = ed25519::Signature; + +/// Alias to pubkey that identifies an account on the chain. +pub type AccountId = ::Signer; + +/// The type used by authorities to prove their ID. +pub type AccountSignature = ed25519::Signature; /// A hash of some data used by the chain. pub type Hash = primitives::H256; @@ -66,13 +75,13 @@ pub mod opaque { } } /// Opaque block header type. - pub type Header = generic::Header>; + pub type Header = generic::Header>; /// Opaque block type. pub type Block = generic::Block; /// Opaque block identifier type. pub type BlockId = generic::BlockId; /// Opaque session key type. - pub type SessionKey = Ed25519AuthorityId; + pub type SessionKey = AuthorityId; } /// This runtime version. @@ -125,7 +134,7 @@ impl aura::Trait for Runtime { impl consensus::Trait for Runtime { /// The identifier we use to refer to authorities. - type SessionKey = Ed25519AuthorityId; + type SessionKey = AuthorityId; // The aura module handles offline-reports internally // rather than using an explicit report system. type InherentOfflineReport = (); @@ -179,7 +188,7 @@ impl template::Trait for Runtime { } construct_runtime!( - pub enum Runtime with Log(InternalLog: DigestItem) where + pub enum Runtime with Log(InternalLog: DigestItem) where Block = Block, NodeBlock = opaque::Block, UncheckedExtrinsic = UncheckedExtrinsic @@ -208,7 +217,7 @@ pub type Block = generic::Block; /// BlockId type as expected by this runtime. pub type BlockId = generic::BlockId; /// Unchecked extrinsic type as expected by this runtime. -pub type UncheckedExtrinsic = generic::UncheckedMortalCompactExtrinsic; +pub type UncheckedExtrinsic = generic::UncheckedMortalCompactExtrinsic; /// Extrinsic type that has already been checked. pub type CheckedExtrinsic = generic::CheckedExtrinsic; /// Executive: handles dispatch to the various modules. @@ -221,7 +230,7 @@ impl_runtime_apis! { VERSION } - fn authorities() -> Vec { + fn authorities() -> Vec { Consensus::authorities() } diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index bfcafe4e79..98c611de64 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -1,5 +1,13 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +[[package]] +name = "aho-corasick" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "arrayref" version = "0.3.5" @@ -36,7 +44,7 @@ name = "backtrace-sys" version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -53,7 +61,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "bitmask" version = "0.5.0" -source = "git+https://github.com/paritytech/bitmask#c2d8d196e30b018d1385be8357fdca61b978facf" +source = "git+https://github.com/paritytech/bitmask#a84e147be602631617badd18b6b9af83391db4a9" [[package]] name = "blake2-rfc" @@ -118,7 +126,7 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.30" +version = "1.0.31" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -141,7 +149,7 @@ name = "clear_on_drop" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -370,7 +378,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -481,6 +489,11 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hex" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "hex-literal" version = "0.1.3" @@ -651,6 +664,11 @@ name = "matches" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "memchr" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "memoffset" version = "0.2.1" @@ -832,7 +850,7 @@ name = "openssl-sys" version = "0.9.42" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -870,7 +888,7 @@ dependencies = [ "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -919,7 +937,7 @@ dependencies = [ "proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -976,7 +994,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1154,12 +1172,32 @@ name = "redox_syscall" version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "regex" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex-syntax" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ring" version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", "spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1245,7 +1283,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1357,7 +1395,7 @@ dependencies = [ "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1594,7 +1632,7 @@ dependencies = [ "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "sr-api-macros 0.1.0", "srml-support-procedural-tools 0.1.0", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1605,7 +1643,7 @@ dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "srml-support-procedural-tools-derive 0.1.0", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1614,7 +1652,7 @@ version = "0.1.0" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1780,11 +1818,13 @@ dependencies = [ "byteorder 1.3.1 (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)", + "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)", "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)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", @@ -1864,7 +1904,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "syn" -version = "0.15.27" +version = "0.15.29" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1879,7 +1919,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2137,6 +2177,11 @@ name = "typenum" version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "ucd-util" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "uint" version = "0.6.1" @@ -2184,6 +2229,11 @@ dependencies = [ "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "utf8-ranges" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "vcpkg" version = "0.2.6" @@ -2256,6 +2306,7 @@ dependencies = [ ] [metadata] +"checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" @@ -2272,7 +2323,7 @@ dependencies = [ "checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" "checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" "checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" -"checksum cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)" = "d01c69d08ff207f231f07196e30f84c70f1c815b04f980f8b7b01ff01f05eb92" +"checksum cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)" = "c9ce8bb087aacff865633f0bd5aeaed910fe2fe55b55f4739527f2e023a2e53d" "checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "97276801e127ffb46b66ce23f35cc96bd454fa311294bced4bbace7baa8b1d17" @@ -2317,6 +2368,7 @@ dependencies = [ "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" +"checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" "checksum hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "27455ce8b4a6666c87220e4b59c9a83995476bdadc10197905e61dbe906e36fa" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" "checksum hmac 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7a13f4163aa0c5ca1be584aace0e2212b2e41be5478218d4f657f5f778b2ae2a" @@ -2339,6 +2391,7 @@ dependencies = [ "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" +"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" @@ -2391,6 +2444,8 @@ dependencies = [ "checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" "checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" +"checksum regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53ee8cfdddb2e0291adfb9f13d31d3bbe0a03c9a402c01b1e24188d86c35b24f" +"checksum regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861" "checksum ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)" = "426bc186e3e95cac1e4a4be125a4aca7e84c2d616ffc02244eef36e2a60a093c" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" @@ -2420,7 +2475,7 @@ dependencies = [ "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" -"checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec" +"checksum syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1825685f977249735d510a242a6727b46efe914bb67e38d30c071b1b72b1d5c2" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum take_mut 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" @@ -2445,12 +2500,14 @@ dependencies = [ "checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" +"checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" "checksum uint 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7780bb27fd8a22295e0d9d53ae3be253f715a0dccb1808527f478f1c2603708" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" +"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" diff --git a/node-template/src/chain_spec.rs b/node-template/src/chain_spec.rs index b9f61e45f5..fa5b44c65a 100644 --- a/node-template/src/chain_spec.rs +++ b/node-template/src/chain_spec.rs @@ -1,10 +1,13 @@ -use primitives::{Ed25519AuthorityId, ed25519}; +use primitives::{ed25519, Pair}; use node_template_runtime::{ AccountId, GenesisConfig, ConsensusConfig, TimestampConfig, BalancesConfig, SudoConfig, IndicesConfig, FeesConfig, }; +use substrate_cli::DEV_PHRASE; use substrate_service; +use ed25519::Public as AuthorityId; + // Note this is the URL for the telemetry server //const STAGING_TELEMETRY_URL: &str = "wss://telemetry.polkadot.io/submit/"; @@ -22,6 +25,18 @@ pub enum Alternative { LocalTestnet, } +fn authority_key(s: &str) -> AuthorityId { + ed25519::Pair::from_string(&format!("{}//{}", DEV_PHRASE, s), None) + .expect("static values are valid; qed") + .public() +} + +fn account_key(s: &str) -> AccountId { + ed25519::Pair::from_string(&format!("{}//{}", DEV_PHRASE, s), None) + .expect("static values are valid; qed") + .public() +} + impl Alternative { /// Get an actual chain config from one of the alternatives. pub(crate) fn load(self) -> Result { @@ -30,11 +45,11 @@ impl Alternative { "Development", "dev", || testnet_genesis(vec![ - ed25519::Pair::from_seed(b"Alice ").public().into(), + authority_key("Alice") ], vec![ - ed25519::Pair::from_seed(b"Alice ").public().0.into(), + account_key("Alice") ], - ed25519::Pair::from_seed(b"Alice ").public().0.into() + account_key("Alice") ), vec![], None, @@ -46,17 +61,17 @@ impl Alternative { "Local Testnet", "local_testnet", || testnet_genesis(vec![ - ed25519::Pair::from_seed(b"Alice ").public().into(), - ed25519::Pair::from_seed(b"Bob ").public().into(), + authority_key("Alice"), + authority_key("Bob"), ], vec![ - ed25519::Pair::from_seed(b"Alice ").public().0.into(), - ed25519::Pair::from_seed(b"Bob ").public().0.into(), - ed25519::Pair::from_seed(b"Charlie ").public().0.into(), - ed25519::Pair::from_seed(b"Dave ").public().0.into(), - ed25519::Pair::from_seed(b"Eve ").public().0.into(), - ed25519::Pair::from_seed(b"Ferdie ").public().0.into(), + account_key("Alice"), + account_key("Bob"), + account_key("Charlie"), + account_key("Dave"), + account_key("Eve"), + account_key("Ferdie"), ], - ed25519::Pair::from_seed(b"Alice ").public().0.into() + account_key("Alice"), ), vec![], None, @@ -76,7 +91,7 @@ impl Alternative { } } -fn testnet_genesis(initial_authorities: Vec, endowed_accounts: Vec, root_key: AccountId) -> GenesisConfig { +fn testnet_genesis(initial_authorities: Vec, endowed_accounts: Vec, root_key: AccountId) -> GenesisConfig { GenesisConfig { consensus: Some(ConsensusConfig { code: include_bytes!("../runtime/wasm/target/wasm32-unknown-unknown/release/node_template_runtime_wasm.compact.wasm").to_vec(), @@ -93,7 +108,7 @@ fn testnet_genesis(initial_authorities: Vec, endowed_account existential_deposit: 500, transfer_fee: 0, creation_fee: 0, - balances: endowed_accounts.iter().map(|&k|(k, (1 << 60))).collect(), + balances: endowed_accounts.iter().cloned().map(|k|(k, 1 << 60)).collect(), vesting: vec![], }), sudo: Some(SudoConfig { diff --git a/node-template/src/service.rs b/node-template/src/service.rs index cc51fba51c..1bb97256ae 100644 --- a/node-template/src/service.rs +++ b/node-template/src/service.rs @@ -15,7 +15,7 @@ use basic_authorship::ProposerFactory; use node_executor; use consensus::{import_queue, start_aura, AuraImportQueue, SlotDuration, NothingExtra}; use substrate_client as client; -use primitives::ed25519::Pair; +use primitives::{ed25519::Pair, Pair as _Pair}; use inherents::InherentDataProviders; use network::construct_simple_protocol; use substrate_executor::native_executor_instance; diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index 27441a9ecc..784dcf5a75 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -16,7 +16,7 @@ //! Substrate chain configurations. -use primitives::{Ed25519AuthorityId as AuthorityId, ed25519}; +use primitives::{ed25519::Public as AuthorityId, ed25519, sr25519, Pair, crypto::UncheckedInto}; use node_primitives::AccountId; use node_runtime::{ConsensusConfig, CouncilSeatsConfig, CouncilVotingConfig, DemocracyConfig, SessionConfig, StakingConfig, TimestampConfig, BalancesConfig, TreasuryConfig, @@ -24,9 +24,8 @@ use node_runtime::{ConsensusConfig, CouncilSeatsConfig, CouncilVotingConfig, Dem pub use node_runtime::GenesisConfig; use substrate_service; use hex_literal::{hex, hex_impl}; - -use substrate_keystore::pad_seed; use substrate_telemetry::TelemetryEndpoints; +use cli::DEV_PHRASE; const STAGING_TELEMETRY_URL: &str = "wss://telemetry.polkadot.io/submit/"; @@ -40,25 +39,30 @@ pub fn dried_danta_config() -> Result { fn staging_testnet_config_genesis() -> GenesisConfig { // stash, controller, session-key + // generated with secret: + // for i in 1 2 3 4 ; do for j in stash controller; do subkey -p danta-$i-$j restore $secret; done; done + // and + // for i in 1 2 3 4 ; do for j in session; do subkey --ed25519 -p danta-$i-$j restore $secret; done; done let initial_authorities: Vec<(AccountId, AccountId, AuthorityId)> = vec![( - hex!["fbecf7767fc63a6f9fa8094bbc5751d7269cd8e619cfdd9edfbe1fbc716b173e"].into(), // 5Hm2GcbuUct7sWX8d56zRktxr9D9Lw5hTFjSUhUoVHwFNmYW TODO: change once we switch to sr25519 - hex!["6ed35e632190b9c795f019030e6c5cff1508655db28c83577e0a4366c9bd5773"].into(), // 5Ea1uyGz6H5WHZhWvPDxxLXWyiUkzWDwx54Hcn8LJ5dbFawH TODO: change once we switch to sr25519 - hex!["82c39b31a2b79a90f8e66e7a77fdb85a4ed5517f2ae39f6a80565e8ecae85cf5"].into(), + hex!["d807f8bd6b4b02b3db716dd5372960b094ed0e62b5704a07bc990130a642992b"].unchecked_into(), // 5GwxZv7LxSUQn89TLUaLi3oEWhFcabqW3nHcEg2J88gZNhrb + hex!["1a934af462454e512e22b5d9455c0c3c2df479b1c61406b3d990f6bc2eb25e09"].unchecked_into(), // 5CfYrg5cW8UebBdfJpJbKFhZLyk7yHWXUgdxZnSGb2dWKgpt + hex!["831fcce3a9565baf093b52568a8cb9875cb54974d80da8fc4f0cc767128a23e9"].unchecked_into(), // 5F2daQPHK7yv4Yuwyz3cggvvn1R5u1ofGMQ5LK5XvnfebMcX ),( - hex!["30b76ef977b84a575992ef52f561db315221123c68074269d3d51ce211c4a3dc"].into(), // 5DAaeTwVuyUmTyLBR5vKEDWeDJ75nhLutDuCJH58it7EHDM2 TODO: change once we switch to sr25519 - hex!["a270edf24cb2a472b0e913fc43bfd4da0ef337cc715eaf94073d5198f7659f0c"].into(), // 5FjhAKgzpuzt1dYWE7H7Jb1sEHSuG5hcyZdPtfX829gmFVXh TODO: change once we switch to sr25519 - hex!["4de37a07567ebcbf8c64568428a835269a566723687058e017b6d69db00a77e7"].into(), + hex!["12652f26e427c56268095bb0ec5824471e37722b073a9fa5de61c61c1de94656"].unchecked_into(), // 5CUpn2JmpsWkHQjZgWjN3rqPEUnjjUQZYcMk14nbUgR2Gpab + hex!["5279e73e22971d729276ebad4eb6804d1b9c0c35bd32e8aba4513c674760a461"].unchecked_into(), // 5Dvqzke7Mdp3fP6Ysut7UXPSepPr3Qguys6LNkZGPSwXwAkR + hex!["dbe61640d854bb7bf83cbfaf638a8a4c76c49a919ec3bbdd86799061fc1903e4"].unchecked_into(), // 5H32hCtKf6nXSckviVhUvWb7N14wDCRunRkCM29mxEXwjcUZ ),( - hex!["7b9e79c1bfc71ad0c4389565c01e79269dc512cb9bd856489671662481355417"].into(), // 5ErnpkRUbmM3WdbQwnVwfZeYs3iKmggEQceyB9db9ft18dSn TODO: change once we switch to sr25519 - hex!["9ffec660c4d328306cf5e38faf4b132fb5c9f38287af95d9b25629fc29de3945"].into(), // 5FgV9vxNpdCXMUmHCLQcsN4mUUUG6ZpFuvAMrm5X4BUnFhie TODO: change once we switch to sr25519 - hex!["063d7787ebca768b7445dfebe7d62cbb1625ff4dba288ea34488da266dd6dca5"].into(), + hex!["a81d738fdeeaed440cfce5635e0820d0d23e89207cf66a62b8c0d2a968e37d32"].unchecked_into(), // 5Fs8ehAjDEnenDwULCPnEr3HVXgepAVfyk9ABW84NfxCYtWD + hex!["443a2c779a5f5dada8ee6921efec9673f67e5ce1bd6012899ff6c1adc437696c"].unchecked_into(), // 5DcAPqR269myKXhZmwbU1x2xLbuTojr85jHNRuDhrFdZ3vwi + hex!["5bc01f56225e8602372fb343dba65a73e20c55bdbb3b8343a8f34df298a616fb"].unchecked_into(), // 5E91HbY2xo2qDJzi3KY8nRXjDNAQE9WtmMaji6YRwT8DAuK1 ),( - hex!["7e58b096b95c4b3b271f27fedd9f2c51edd48b9d37046240e601180c9dcc8c27"].into(), // 5EvNEhYYd4b9giczuCo2o8bfLZoKW9jnTeUukfL1NWsAAeEx TODO: change once we switch to sr25519 - hex!["36dfc933bb0848d8addf16a961369b2e122633a5819a19e43c8142381a1280e3"].into(), // 5DJevPKpz4EEvmSpK7W6KemS3i5JYPq5FEuEewgRY2cZCxNg TODO: change once we switch to sr25519 - hex!["8101764f45778d4980dadaceee6e8af2517d3ab91ac9bec9cd1714fa5994081c"].into(), + hex!["e269e835e0bc07c497d55bc17c7bb29c85c5615f9e61582ffdeca7e5f5c66578"].unchecked_into(), // 5HBa95U5HDFCV1N5Xyrjti65F71tHRQcPbZBmkxRJ39SpqzM + hex!["3e9829e6fd4fc7501b504fc16f12177c6c7f38aeb3b8344efb9b15ee85118b2c"].unchecked_into(), // 5DUn2afs2QevZ6PrGu8snrt76157oacH6JXUD8JNM18VKMwK + hex!["0fd673ee5e95ed124bcd71463ff924c810573dad91527ab9d2b5af36f66ff84b"].unchecked_into(), // 5CRUHGLA1JYe2v4p479VCHybqjB9uBXjGkJ2npdduVdrTuUM )]; + // generated with secret: subkey -p danta-root restore $secret let endowed_accounts: Vec = vec![ - hex!["f295940fa750df68a686fcf4abd4111c8a9c5a5a5a83c4c8639c451a94a7adfd"].into(), // 5HYmsxGRAmZMjyZYmf7uGPL2YDQGHEt6NjGrfUuxNEgeGBRN TODO: change once we switch to sr25519 + hex!["343df6f04ffae0840f214f6cb0da00b612c7e9347f980e7afafc520582f79136"].unchecked_into(), // 5DFCkiP9vky31C1ZP3LpuQYinLAFwQqq6vda7NXa8ALCpq5D ]; const MILLICENTS: u128 = 1_000_000_000; const CENTS: u128 = 1_000 * MILLICENTS; // assume this is worth about a cent. @@ -79,8 +83,8 @@ fn staging_testnet_config_genesis() -> GenesisConfig { }), system: None, balances: Some(BalancesConfig { - balances: endowed_accounts.iter() - .map(|&k| (k, ENDOWMENT)) + balances: endowed_accounts.iter().cloned() + .map(|k| (k, ENDOWMENT)) .chain(initial_authorities.iter().map(|x| (x.0.clone(), STASH))) .collect(), existential_deposit: 1 * DOLLARS, @@ -94,7 +98,7 @@ fn staging_testnet_config_genesis() -> GenesisConfig { .collect::>(), }), session: Some(SessionConfig { - validators: initial_authorities.iter().map(|x| x.1.into()).collect(), + validators: initial_authorities.iter().map(|x| x.1.clone()).collect(), session_length: 5 * MINUTES, keys: initial_authorities.iter().map(|x| (x.1.clone(), x.2.clone())).collect::>(), }), @@ -109,8 +113,8 @@ fn staging_testnet_config_genesis() -> GenesisConfig { bonding_duration: 60 * MINUTES, offline_slash_grace: 4, minimum_validator_count: 4, - stakers: initial_authorities.iter().map(|x| (x.0.into(), x.1.into(), STASH)).collect(), - invulnerables: initial_authorities.iter().map(|x| x.1.into()).collect(), + stakers: initial_authorities.iter().map(|x| (x.0.clone(), x.1.clone(), STASH)).collect(), + invulnerables: initial_authorities.iter().map(|x| x.1.clone()).collect(), }), democracy: Some(DemocracyConfig { launch_period: 10 * MINUTES, // 1 day per public referendum @@ -182,23 +186,26 @@ pub fn staging_testnet_config() -> ChainSpec { ) } -/// Helper function to generate AuthorityID from seed +/// Helper function to generate AccountId from seed pub fn get_account_id_from_seed(seed: &str) -> AccountId { - let padded_seed = pad_seed(seed); - // NOTE from ed25519 impl: - // prefer pkcs#8 unless security doesn't matter -- this is used primarily for tests. - ed25519::Pair::from_seed(&padded_seed).public().0.into() + sr25519::Pair::from_string(&format!("{}//{}", DEV_PHRASE, seed), None) + .expect("static values are valid; qed") + .public() +} + +/// Helper function to generate AuthorityId from seed +pub fn get_session_key_from_seed(seed: &str) -> AuthorityId { + ed25519::Pair::from_string(&format!("{}//{}", DEV_PHRASE, seed), None) + .expect("static values are valid; qed") + .public() } /// Helper function to generate stash, controller and session key from seed pub fn get_authority_keys_from_seed(seed: &str) -> (AccountId, AccountId, AuthorityId) { - let padded_seed = pad_seed(seed); - // NOTE from ed25519 impl: - // prefer pkcs#8 unless security doesn't matter -- this is used primarily for tests. ( - get_account_id_from_seed(&format!("{}-stash", seed)), + get_account_id_from_seed(&format!("{}//stash", seed)), get_account_id_from_seed(seed), - ed25519::Pair::from_seed(&padded_seed).public().0.into() + get_session_key_from_seed(seed) ) } @@ -216,6 +223,12 @@ pub fn testnet_genesis( get_account_id_from_seed("Dave"), get_account_id_from_seed("Eve"), get_account_id_from_seed("Ferdie"), + get_account_id_from_seed("Alice//stash"), + get_account_id_from_seed("Bob//stash"), + get_account_id_from_seed("Charlie//stash"), + get_account_id_from_seed("Dave//stash"), + get_account_id_from_seed("Eve//stash"), + get_account_id_from_seed("Ferdie//stash"), ] }); @@ -235,11 +248,11 @@ pub fn testnet_genesis( existential_deposit: 500, transfer_fee: 0, creation_fee: 0, - balances: endowed_accounts.iter().map(|&k| (k.into(), ENDOWMENT)).collect(), + balances: endowed_accounts.iter().map(|k| (k.clone(), ENDOWMENT)).collect(), vesting: vec![], }), session: Some(SessionConfig { - validators: initial_authorities.iter().map(|x| x.1.into()).collect(), + validators: initial_authorities.iter().map(|x| x.1.clone()).collect(), session_length: 10, keys: initial_authorities.iter().map(|x| (x.1.clone(), x.2.clone())).collect::>(), }), @@ -254,8 +267,8 @@ pub fn testnet_genesis( current_offline_slash: 0, current_session_reward: 0, offline_slash_grace: 0, - stakers: initial_authorities.iter().map(|x| (x.0.into(), x.1.into(), STASH)).collect(), - invulnerables: initial_authorities.iter().map(|x| x.1.into()).collect(), + stakers: initial_authorities.iter().map(|x| (x.0.clone(), x.1.clone(), STASH)).collect(), + invulnerables: initial_authorities.iter().map(|x| x.1.clone()).collect(), }), democracy: Some(DemocracyConfig { launch_period: 9, @@ -267,7 +280,7 @@ pub fn testnet_genesis( council_seats: Some(CouncilSeatsConfig { active_council: endowed_accounts.iter() .filter(|&endowed| initial_authorities.iter().find(|&(_, controller, _)| controller == endowed).is_none()) - .map(|a| (a.clone().into(), 1000000)).collect(), + .map(|a| (a.clone(), 1000000)).collect(), candidacy_bond: 10, voter_bond: 2, present_slash_per_voter: 1, @@ -275,7 +288,7 @@ pub fn testnet_genesis( presentation_duration: 10, approval_voting_period: 20, term_duration: 1000000, - desired_seats: (endowed_accounts.len() - initial_authorities.len()) as u32, + desired_seats: (endowed_accounts.len() / 2 - initial_authorities.len()) as u32, inactive_grace_period: 1, }), council_voting: Some(CouncilVotingConfig { @@ -319,8 +332,8 @@ fn development_config_genesis() -> GenesisConfig { vec![ get_authority_keys_from_seed("Alice"), ], - get_account_id_from_seed("Alice").into(), - Some(vec![get_authority_keys_from_seed("Alice").0]), + get_account_id_from_seed("Alice"), + None, ) } @@ -335,11 +348,8 @@ fn local_testnet_genesis() -> GenesisConfig { get_authority_keys_from_seed("Alice"), get_authority_keys_from_seed("Bob"), ], - get_account_id_from_seed("Alice").into(), - Some(vec![ - get_authority_keys_from_seed("Alice").0, - get_authority_keys_from_seed("Bob").0, - ]), + get_account_id_from_seed("Alice"), + None, ) } diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index 1c865956f9..dd03b25bb9 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -25,7 +25,7 @@ use client; use consensus::{import_queue, start_aura, AuraImportQueue, SlotDuration, NothingExtra}; use grandpa; use node_executor; -use primitives::ed25519::Pair; +use primitives::{Pair as _Pair, ed25519::Pair}; use node_primitives::Block; use node_runtime::{GenesisConfig, RuntimeApi}; use substrate_service::{ diff --git a/node/executor/src/lib.rs b/node/executor/src/lib.rs index 7db47236a8..8e1a2162da 100644 --- a/node/executor/src/lib.rs +++ b/node/executor/src/lib.rs @@ -31,15 +31,13 @@ mod tests { use super::Executor; use substrate_executor::{WasmExecutor, NativeExecutionDispatch}; use parity_codec::{Encode, Decode, Joiner}; - use keyring::ed25519::Keyring; + use keyring::{AccountKeyring, AuthorityKeyring}; use runtime_support::{Hashable, StorageValue, StorageMap, traits::Currency}; use state_machine::{CodeExecutor, Externalities, TestExternalities}; - use primitives::{ - twox_128, Blake2Hasher, ChangesTrieConfiguration, ed25519::{Public, Pair}, NeverNativeValue, - NativeOrEncoded - }; + use primitives::{twox_128, Blake2Hasher, ChangesTrieConfiguration, NeverNativeValue, + NativeOrEncoded}; use node_primitives::{Hash, BlockNumber, AccountId}; - use runtime_primitives::traits::{Header as HeaderT, Digest as DigestT, Hash as HashT}; + use runtime_primitives::traits::{Header as HeaderT, Hash as HashT}; use runtime_primitives::{generic, generic::Era, ApplyOutcome, ApplyError, ApplyResult, Perbill}; use {balances, indices, session, system, consensus, timestamp, treasury, contract}; use contract::ContractAddressFor; @@ -55,27 +53,27 @@ mod tests { const GENESIS_HASH: [u8; 32] = [69u8; 32]; fn alice() -> AccountId { - AccountId::from(Keyring::Alice.to_raw_public()) + AccountKeyring::Alice.into() } fn bob() -> AccountId { - AccountId::from(Keyring::Bob.to_raw_public()) + AccountKeyring::Bob.into() } fn charlie() -> AccountId { - AccountId::from(Keyring::Charlie.to_raw_public()) + AccountKeyring::Charlie.into() } fn dave() -> AccountId { - AccountId::from(Keyring::Dave.to_raw_public()) + AccountKeyring::Dave.into() } fn eve() -> AccountId { - AccountId::from(Keyring::Eve.to_raw_public()) + AccountKeyring::Eve.into() } fn ferdie() -> AccountId { - AccountId::from(Keyring::Ferdie.to_raw_public()) + AccountKeyring::Ferdie.into() } fn sign(xt: CheckedExtrinsic) -> UncheckedExtrinsic { @@ -83,12 +81,12 @@ mod tests { Some((signed, index)) => { let era = Era::mortal(256, 0); let payload = (index.into(), xt.function, era, GENESIS_HASH); - let pair = Pair::from(Keyring::from_public(Public::from_raw(signed.clone().into())).unwrap()); + let key = AccountKeyring::from_public(&signed).unwrap(); let signature = payload.using_encoded(|b| { if b.len() > 256 { - pair.sign(&runtime_io::blake2_256(b)) + key.sign(&runtime_io::blake2_256(b)) } else { - pair.sign(b) + key.sign(b) } }).into(); UncheckedExtrinsic { @@ -259,7 +257,7 @@ mod tests { } fn new_test_ext(code: &[u8], support_changes_trie: bool) -> TestExternalities { - let three = [3u8; 32].into(); + let three = AccountId::from_raw([3u8; 32]); TestExternalities::new_with_code(code, GenesisConfig { consensus: Some(Default::default()), system: Some(SystemConfig { @@ -288,11 +286,11 @@ mod tests { }), session: Some(SessionConfig { session_length: 2, - validators: vec![Keyring::One.to_raw_public().into(), Keyring::Two.to_raw_public().into(), three], + validators: vec![AccountKeyring::One.into(), AccountKeyring::Two.into(), three], keys: vec![ - (alice(), keyring::ed25519::Keyring::Alice.to_raw_public().into()), - (bob(), keyring::ed25519::Keyring::Bob.to_raw_public().into()), - (charlie(), keyring::ed25519::Keyring::Charlie.to_raw_public().into()) + (alice(), AuthorityKeyring::Alice.into()), + (bob(), AuthorityKeyring::Bob.into()), + (charlie(), AuthorityKeyring::Charlie.into()) ] }), staking: Some(StakingConfig { @@ -317,11 +315,7 @@ mod tests { contract: Some(Default::default()), sudo: Some(Default::default()), grandpa: Some(GrandpaConfig { - authorities: vec![ // set these so no GRANDPA events fire when session changes - (keyring::ed25519::Keyring::Charlie.to_raw_public().into(), 1), - (keyring::ed25519::Keyring::Bob.to_raw_public().into(), 1), - (keyring::ed25519::Keyring::Alice.to_raw_public().into(), 1), - ], + authorities: vec![], }), fees: Some(FeesConfig { transaction_base_fee: 1, @@ -447,12 +441,7 @@ mod tests { ] ); - let mut digest = generic::Digest::::default(); - digest.push(Log::from(::grandpa::RawLog::AuthoritiesChangeSignal(0, vec![ - (Keyring::Alice.to_raw_public().into(), 1), - (Keyring::Bob.to_raw_public().into(), 1), - (Keyring::Charlie.to_raw_public().into(), 1), - ]))); + let digest = generic::Digest::::default(); assert_eq!(Header::decode(&mut &block2.0[..]).unwrap().digest, digest); (block1, block2) @@ -585,18 +574,6 @@ mod tests { phase: Phase::Finalization, event: Event::session(session::RawEvent::NewSession(1)) }, - // EventRecord { - // phase: Phase::Finalization, - // event: Event::staking(staking::RawEvent::Reward(0)) - // }, - EventRecord { - phase: Phase::Finalization, - event: Event::grandpa(::grandpa::RawEvent::NewAuthorities(vec![ - (Keyring::Alice.to_raw_public().into(), 1), - (Keyring::Bob.to_raw_public().into(), 1), - (Keyring::Charlie.to_raw_public().into(), 1), - ])), - }, EventRecord { phase: Phase::Finalization, event: Event::treasury(treasury::RawEvent::Spending(0)) @@ -767,7 +744,7 @@ mod tests { CheckedExtrinsic { signed: Some((charlie(), 2)), function: Call::Contract( - contract::Call::call::(indices::address::Address::Id(addr), 10, 10_000, vec![0x00, 0x01, 0x02, 0x03]) + contract::Call::call::(indices::address::Address::Id(addr.clone()), 10, 10_000, vec![0x00, 0x01, 0x02, 0x03]) ), }, ] diff --git a/node/primitives/src/lib.rs b/node/primitives/src/lib.rs index a73209a9ab..8c23e5d32b 100644 --- a/node/primitives/src/lib.rs +++ b/node/primitives/src/lib.rs @@ -22,14 +22,14 @@ #![cfg_attr(not(feature = "std"), feature(alloc))] use runtime_primitives::{ - generic, traits::{Verify, BlakeTwo256}, Ed25519Signature, OpaqueExtrinsic + generic, traits::{Verify, BlakeTwo256}, OpaqueExtrinsic }; /// An index to a block. pub type BlockNumber = u64; -/// Alias to 512-bit hash when used in the context of a signature on the chain. -pub type Signature = Ed25519Signature; +/// Alias to 512-bit hash when used in the context of a transaction signature on the chain. +pub type Signature = primitives::sr25519::Signature; /// Some way of identifying an account on the chain. We intentionally make it equivalent /// to the public key of our transaction signing scheme. @@ -44,7 +44,10 @@ pub type Balance = u128; /// The Ed25519 pub key of an session that belongs to an authority of the chain. This is /// exactly equivalent to what the substrate calls an "authority". -pub type SessionKey = primitives::Ed25519AuthorityId; +pub type AuthorityId = ::Signer; + +/// Alias to 512-bit hash when used in the context of a session signature on the chain. +pub type AuthoritySignature = primitives::ed25519::Signature; /// Index of a transaction in the chain. pub type Index = u64; @@ -56,7 +59,8 @@ pub type Hash = primitives::H256; pub type Timestamp = u64; /// Header type. -pub type Header = generic::Header>; +/// +pub type Header = generic::Header>; /// Block type. pub type Block = generic::Block; /// Block ID. diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 45b252b04c..eab07326a0 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -27,7 +27,7 @@ use support::{Serialize, Deserialize}; use support::construct_runtime; use substrate_primitives::u32_trait::{_2, _4}; use node_primitives::{ - AccountId, AccountIndex, Balance, BlockNumber, Hash, Index, SessionKey, Signature + AccountId, AccountIndex, Balance, BlockNumber, Hash, Index, AuthorityId, Signature, AuthoritySignature }; use grandpa::fg_primitives::{self, ScheduledChange}; use client::{ @@ -37,7 +37,7 @@ use client::{ use runtime_primitives::{ApplyResult, generic, create_runtime_str}; use runtime_primitives::transaction_validity::TransactionValidity; use runtime_primitives::traits::{ - Convert, BlakeTwo256, Block as BlockT, DigestFor, NumberFor, StaticLookup, + BlakeTwo256, Block as BlockT, DigestFor, NumberFor, StaticLookup, }; use version::RuntimeVersion; use council::{motions as council_motions, voting as council_voting}; @@ -60,7 +60,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 34, + spec_version: 35, impl_version: 35, apis: RUNTIME_API_VERSIONS, }; @@ -113,7 +113,7 @@ impl fees::Trait for Runtime { impl consensus::Trait for Runtime { type Log = Log; - type SessionKey = SessionKey; + type SessionKey = AuthorityId; // The Aura module handles offline-reports internally // rather than using an explicit report system. @@ -125,16 +125,8 @@ impl timestamp::Trait for Runtime { type OnTimestampSet = Aura; } -/// Session key conversion. -pub struct SessionKeyConversion; -impl Convert for SessionKeyConversion { - fn convert(a: AccountId) -> SessionKey { - a.to_fixed_bytes().into() - } -} - impl session::Trait for Runtime { - type ConvertAccountIdToSessionKey = SessionKeyConversion; + type ConvertAccountIdToSessionKey = (); type OnSessionChange = (Staking, grandpa::SyncedAuthorities); type Event = Event; } @@ -186,7 +178,7 @@ impl sudo::Trait for Runtime { } impl grandpa::Trait for Runtime { - type SessionKey = SessionKey; + type SessionKey = AuthorityId; type Log = Log; type Event = Event; } @@ -196,7 +188,7 @@ impl finality_tracker::Trait for Runtime { } construct_runtime!( - pub enum Runtime with Log(InternalLog: DigestItem) where + pub enum Runtime with Log(InternalLog: DigestItem) where Block = Block, NodeBlock = node_primitives::Block, UncheckedExtrinsic = UncheckedExtrinsic @@ -246,7 +238,7 @@ impl_runtime_apis! { VERSION } - fn authorities() -> Vec { + fn authorities() -> Vec { Consensus::authorities() } @@ -322,7 +314,7 @@ impl_runtime_apis! { None } - fn grandpa_authorities() -> Vec<(SessionKey, u64)> { + fn grandpa_authorities() -> Vec<(AuthorityId, u64)> { Grandpa::grandpa_authorities() } } diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index f6cfef7c80..543020eed7 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -1,5 +1,13 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +[[package]] +name = "aho-corasick" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "arrayref" version = "0.3.5" @@ -481,6 +489,11 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "hex" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "hex-literal" version = "0.1.3" @@ -651,6 +664,11 @@ name = "matches" version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "memchr" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "memoffset" version = "0.2.1" @@ -1189,6 +1207,26 @@ name = "redox_syscall" version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "regex" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)", + "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", + "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "regex-syntax" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ring" version = "0.14.6" @@ -1236,7 +1274,7 @@ dependencies = [ [[package]] name = "schnorrkel" version = "0.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/w3f/schnorrkel#3179838da9dd4896c12bb910e7c42477a3250641" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1245,6 +1283,7 @@ dependencies = [ "merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1610,6 +1649,7 @@ dependencies = [ "serde_derive 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", "sr-primitives 0.1.0", "sr-std 0.1.0", + "srml-consensus 0.1.0", "srml-finality-tracker 0.1.0", "srml-session 0.1.0", "srml-support 0.1.0", @@ -1818,11 +1858,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "substrate-bip39" version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/paritytech/substrate-bip39#a28806512c977992af8d6740d45352f5a1c832a0" dependencies = [ "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1949,19 +1989,21 @@ dependencies = [ "byteorder 1.3.1 (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)", + "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)", "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)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", "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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "sr-std 0.1.0", - "substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)", "tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2306,6 +2348,11 @@ name = "typenum" version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "ucd-util" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "uint" version = "0.6.1" @@ -2353,6 +2400,11 @@ dependencies = [ "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "utf8-ranges" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "vcpkg" version = "0.2.6" @@ -2425,6 +2477,7 @@ dependencies = [ ] [metadata] +"checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" @@ -2486,6 +2539,7 @@ dependencies = [ "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" +"checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" "checksum hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "27455ce8b4a6666c87220e4b59c9a83995476bdadc10197905e61dbe906e36fa" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" "checksum hmac 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7a13f4163aa0c5ca1be584aace0e2212b2e41be5478218d4f657f5f778b2ae2a" @@ -2508,6 +2562,7 @@ dependencies = [ "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" +"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" "checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" @@ -2561,13 +2616,15 @@ dependencies = [ "checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356" "checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" "checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85" +"checksum regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53ee8cfdddb2e0291adfb9f13d31d3bbe0a03c9a402c01b1e24188d86c35b24f" +"checksum regex-syntax 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "8c2f35eedad5295fdf00a63d7d4b238135723f92b434ec06774dad15c7ab0861" "checksum ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)" = "426bc186e3e95cac1e4a4be125a4aca7e84c2d616ffc02244eef36e2a60a093c" "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" -"checksum schnorrkel 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fe554f318830b48e5da8ab1ccb1ffd02b79228364dac7766b7cd1ec461ca5116" +"checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" @@ -2587,7 +2644,7 @@ dependencies = [ "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" -"checksum substrate-bip39 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ec6183ce9e04bec5f113ff19c8ef5355dad20a4196134b5402732bf5d3c1a351" +"checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" "checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec" @@ -2615,12 +2672,14 @@ dependencies = [ "checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" +"checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" "checksum uint 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7780bb27fd8a22295e0d9d53ae3be253f715a0dccb1808527f478f1c2603708" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" +"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 2192c80bc519e67ecc8f06313cc54c1734ceb15d..29139d149965fbe608d20e0278d20b79e625a03f 100644 GIT binary patch literal 879134 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

Q=%Kjb6V@?ITucG>{kd`At(-VA#AWL1GAA% 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 literal 888467 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

4&2c*fDTNB4uL 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 &> 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%0A2G5M)&RXo6RbY%T@Cl3JPfunj5X$qqjA4 z@Ru7;`j;TtnhcZk-{1K*hW`wmVO|~lT14W(Pkh)8VyliE_%IG2#K};=4yXG4FEt?> zUYZVhBMEu*u+4{Q@Uz3)8CnV*dZTHaPmefU5`X89aZP|a>1UCaAy!QmOxyUB+^P|FAPgcL=m;s_2Io^mCH`Seu1Di_>Yk>pu(qXMz88{Ab#K z*uSotlm5d|ak?W+Lq8l-q@OYWVQE-*tf}ayE5!LVwzz7-pK3O)DjS!B{HT-s z)0^b?Dm&;TvT(^XZ2OPBfN8cM-s(rLc8d6vWH_6W^~WlPFv>O4mxW=Wo!_vq3S8-= zU_HR0l5uMXL{H1+z?P83g7bD^{}f)8uyWI_W5ulwA6yg`pcHKBMTXiMw$r02$PFZ| zHHn~OVF+d4v12tyY;9{KjO^)gEY_u+5ml9@XQ7I7kF@vH(j6>t?1EMv*a5qo-l93n zv`m(T`k>ul+jQ$2#&uD=nXH(lPa;%U1p?!skuYe|e4{n9&{lq^SOg|&{}e?fCVr>AV?aw4RwNomhZIe z07P1;*Q!KIdX@*^iK)h=Iy;=t+lva{9sw~TI!oX{L!(LpLGu!rA}Irk#&l1|Q1xwo z*s!Q>TIXm*E(4qo*@YR0^PP7{8tL5oRkFcyIfJInA^D7~b;ADV<6muYlnrzJLL*^O#IKD*a z;rnr#tcw`QNR+WiLlPqzGQLR1)l|Cb)>rL#rTSnQQPLN|!DE`?(9^T2Bkk5G@?;{( zll*k(M?P`Z2W(Q)^h|85ewQ6vHYMe$&1kT=;TT3-0K(3>jQ5SCn}E|t6D9etar3YV zs+^%~^(IZNE5!A*&fhg#yC0@>rr4{wP3%fUoWAhGO($dR02J0_&TjzwM=$n{|n!-U7Ln|VA>i|1Cp&VFxpB|b7T?|H{#RA+TO=B zPQh`t^V?zSvl(;hnj~sNNOr&%vkZJVCJNSKEdJ$iwk#&TVxHQAPuld8MytdmcxrOY zF~E;H>+7fv7@!Ske}4)F2?v@7j;$~cBp1Ydcq#!WOrnAXc+Wf%4%1y9`a;mYd|ojb z3jk4PAY#>rg{!ld^TU$TzObM)n6th{Iv>DJq=D>3UQw&@`<}R}jSXsGJTt{@Y(4Qj z77hdktD(ZQmOx~hpg;M%90(B-B5Bc(e%7P4YT6i&Q<{TgzyXY&V%N6hapK+_oil)I z$^~;+Q=YVhLkV0`F&zola9znYO(?w+oDz;S;F3LBi9QpCFcd`|f@Y#8E2mF-UQSP& z1rbVA?1(C;q$9Fs!P)v>r|t5Pbog{2m~SWJCmogWODFRQ6eafoaa-^kp(1ZXCz3C- zY*)xSnwsjT>?pZd6bN%k6$X2l8fUJ08Fon0Sx^ zWV5k`*1Lz?-eUTQ9ut!lpS{MiQ&pYy*+s80Q2xT70?Msk_p^eMVg{Z`#X=K9jP2TB z^kq&K&u%~xux%37v`)n)up)7$T9R z8FSWtU`gvC91k@m! zvf{Nl#2MjbOdAG^wKN8=e^fs>gfaGG9e6#b#*K@fOvOS;%T;{!kKHq+z*a~UM13%{ z-lKO@@^?HNe_E%&=VPsmgpGWKBRQ)FHL@+Yo=DkG?C(wKAI{jy0Y=cr5QzW=1A4vr ziXpWnoX&&*b(8Bd04$o%%l@@$h<=QM$XnM59`p%_p{i--vQMY^tQ8UQ3UKu+g{h9!r%X0uz!QUZZP$= zSUQEq*?FGwkOakOhSCuY&u`12RLI37G97vD!h6bjy|U7qL{qk8SbT&CO~L#fkC$5{ z%co0}@GcF5Uhv_R4^b-Y82#(qu?GE@c>T{Q*4V}>u_oOz3hrTK=eZ9xr^keG=v3m6 zht`8(7{Y_PV(FKG2c@*muqgD^wN}iBD@a(v=~0mo*KbSGU6aL8%bK&hR8B5ax!hXv z@Z58rT;;uB#F~XT;>Z*8IJtPYTy76p>op+`TYP}A5=Y@ed_4>v8(cYmXTo55Q3>@~ zc6xA7wVl77_V%nVuYTldD24O8qMSHWJ8QFmH6SddHIm5LNH6xrm=z^sO7M#M&N`&M zPKSp(&H^;H_i_}8epchZup0lGwLpuLXmk#PbSjV@w<>|KwtY4xu%B%ro4nDqwD~`W|%7e zW4(#|b7`tIMxALQ5z6VAMkk>d(bY+N~>bZnr&fMv!px>CsQdMEJWjV zW9132Yakq~jrfrBT}v2o)~-o9y1XJ;&8|y!q5ABiOkd7%n+5acCX_C8{8j9<8nb5? zm(MC+d$-u5XP+on3%CXzY)SeMv*7o+&`o6@3$F4g+1vzJewQSUKViIweCT z2(yE~o!mkh(g4IUi&dZ19bR+o4EHy2PE8Kh!_YT$cjqYEJb|1tCKa(G4K;p5q}WkS zZ8;60!V?X3)o1vm4&vQ)J$Vmy1@LpP{{()FAf?;wau4#Z6*Rql+@Ti0BlR2|AYK9f z(hlDxhjiH;u%Vn^MzOn^h315gPNt@7nl(WV<;b@Isne*&d-#=#yaYnB44vPUI>0^^=_>Il5Yp8NsWZ(97mkHJxKW3fm^a^0*3eVaUL$ax zge6J|FD|j;{nnW5ODecjvz&(Q6&&L9ZV$`lBSB+)dY8i`EkOW6ZzJ(cen_x$A;VGk1uTeJ2muOd~!0mJ8Z`( zzY8%mGsmUjiz4gtopV7`nzyWfsJR+N9vpS@oX@w>c5zQcleD;tX*iR(&Al5g_2NU#UD6!j@5ARW{1|5Av9+bw^aG6 z4SS46B}eVUt1t< zD5a;CipLe)sF{3&gokuogvXSRX-s%jT@s)mi=hZB@`*B&lfgo)W_NtYWre3cqb59R z{hdSpB35oUG_a{~kdF$F-Pd!X{B9E-COY!xh2515p*cx@$q+7U8L~u~h71{ArnVB+ zH}cDQ(~u;?c*qE5_FmpJ{_^@np zRT0Qe@3$=OUk&@YM(A}zel56`e{=DvB!3|`Uw$3yMEQ$W_U12M3HeLFsFz~g@9S+@ z$EOmuPb>tk<6CLCWR{Ay1ud1ojaMgGA{q~9s$UyPZ<}u?X>03N4t>48KVz$D2(B$~ z1331EE0Ul2@IEcpr(vT48-l2wPwf&29CUeceXwQ9 znTXsw|FtU4*ZoH0yxbc!`D)XE_&mSah(;skQN9F8g?+FVLl1Zh>*B6vW;*8pp&F*b zmRp9Y9Oc}H>07lP73_ZIRvyfdUV*#tAXfQ|?)5HzkitQS9C0*}%pcJ~xOjj+NbR#$ zj&DW?Nv&I6iwb_hYeM^=Dw2~r0IZ9uKF(`>E$?Rg!i5qR041SFn|e2+52fKE_9&tm z4;iFAb0)z4!d~^a%ra;kF> zZTJOagQkEZ9It5+brqg302`9EAAmgY*yv0e&JHQniz_Nk;<8ZC-WboOiWjku)WJee zIL3>~P)9Y!7XoXprB$Ti8jUaA&jwYl?-#`RcL`d>C69*}qf~^Kpj5DX^|4_QUV5X7 zNl(&wH+-<~?ohx+IxJdmMjG>wJZ0$41N8p$SasT*_e2+S=!Twz;?6Z z?l=cFjTxtZAYGt#<7X1~Vae%z1jHv=px6qK^&*#t=M{;qdb%%0n)ZZ=*xU?4kd$20 z`HB!@MPW<3iVvacyiBs_<;4>Z<=2NDQrS?uo*?h|4d5%UUqO4HCqnH;THlX>b`!$# z0HXAj0ECFI}A?!edb-68&Nc$8Mjj#Z_?C)G9D+x@95h9@3ZeB{?yQSL zSo&)N|Iw+J71Q_@XBvm-w7xN#9){NYsj>P>XIpCYJeOo^+kbAk=%}p%2on@%<5M|k}!2sM3u;Lu=>F5Tb1QrGtn z57DVkI0Th<9uK#^n*n_*RDNYhMCJQ$R54k?ucP$Kox~53j{tHu*;sWDMo~6hc5vHd z2fJ%_5bnSP9P$YkmpnwAj)?ZQk|!iw9;o&3+jOLAsj1!;ZmLhTITV%^J#+}9a&zO5 z?2o-XxH(!Uhh%&N>f5epqeHSk2&D?I1)zlDGXDU>#Cs>~xS2C~K>~rFYsDQ%_A;sE z&K2+(VESz*zSbS6u#Jkgg)RZ35E3?)cCs!bZCP;;OFVRapQM4E{PncPNx}K+=IBdA z7iy(h=It0Dx0G3zm>e+_&WASg{0$Bp_V9G7!FHe^x3`37ZjE((ydA;s4Psm!0dMG6 zK+cegEkFJMd(8~84wE4WsrYM-3aCg^Ad&CjNDUokeM5Mei1}sV+qBDPN}L{Jt4PA7 zgU@8JkVAUHJ7}uK4wT{nqj(7nrsri)zvkKEBE{!a(GB8mL(0#w3>Ms06%xEY-wAwn z&8;N4ta_O{(-YkK92XO*XC2#3p^;~^ka)Y)ZC^-Kj18RicDn8VP+Bp+wVY_qhTElb zl<%^AWQ#=iwBZ+1wu|e7pSDe1sdjX|zr0>3u5hh91ue|0kt|>kV)e*3GCXX0Iv^~z z>xt>s37Wf}pqa}jGF*;jDxh&BpNTI0oKnasd0Yk1#zGyaUYU==Ft>I~cqtnMzOaox z0@Xlx7`xPd_;-up9cF0Iu7>f0JZO7wxO)$Gv2QG)`miJod|29&e96&Jk7y`Ww;arc zU|+o1*66;ZNpYq3%eoI`(ssoaDvi*?mcS?@-Zi3OGf8Nm5#RGG6l+Ro-jTo}%kKaYt&H`;ORV;&mndqNAJfJYh4iRjyj!Tqv=n_&vuy3KZ z`HC3IS6tyCeZ|K3du4gwoS9Hf39LYv0kP|cufG0C$QZ>#C|O9B33SqYI69pXiz2AW z`C(8Q9kG*t%krh&4*f&+Z{kmD5j&Is4uOVr)l;5ugP7E7xQ~J!?>;J>qP!lOs_-V> zEV(}6wvMfJy{TLlR74N@&+T#Ip_?~1@a$Apth1y&{EqPEQt_!N1r6*DYBKH;$4RV@ zRJpg%e`#??WS<}6u%`Sjk}$lrn98A;{8({Ces{4ae;aDtoyGS2?Hnxfohxa6PZ9FN zsB`x+$oq;ke+O#a{l&pto8Gp;V<#{m!#cajq6vBzdWZqX0wp}eYk^j$FoWLtdf}Js zzbP--gF~o-6<{AujdY=KH$?ecJbLnzhP1x#sf-gTstr$iuc?{Xb5#|s&^4m%&-@8r z5R#3T*+2S_J&1SVtrb>thEzDVoRl0>*CodcZ{;j3_IOIr7U7Wbj0LXVb`)seS^6o8 z@OItbQQv>3?r$&eUBurm^~yG#XW^cRD2Kvf(7vQ;pWDHc5IdjWyXG6IF=zr5Sjsq@ zdE(=JV6esPcEY`P=i6%`A%64eRIFHPa_3k$EM>4m2juSF&k?=b!aHQ3Ez77vbz2U{ zZq!pDzgZI$SOyr|u*MWJWd?@Og{K$ELbb?rr241Ty=|gqZIe+8lJwg`M|#ce(se4x zbpRUohf7Fxc*Q+w8l6?kkgLFoXqXr-uu6dx5ZSIXz_y!@<4}0Z(H!NPfx`7{+*%{B z4yWPG;XV^s`Z<*`ne5|@9A-`GbIJ>M&``%R3Yjr(YDNM7JrwTZ;L^EpB)sKq`5oCl z;14w>;f}_}qD5^iLKNTFUxYhh`vNT42&p!brTHb$$Q@xvAGQp!gq^59_|2Ci9*?nS z7>{pOgjS8NI=l9o=Jb)G1jM!`m_W1cEb+$rlC=Sh}3# zeM;8(B`ijC?sxs($VNfLA|E3oFy0J(vQ$WeETogxngtIe8vjhdtFV&mI|M=2nq+KC zSD4go|Fb+1+Dhf3)rAXilvBv5qterC1YTf`2<>NeMWA25fH8PX2w5h4jg!el0u!v@ z@nRB=7Cij}U-_ZWeJatkZ&^A1p+Emz>$t9il2SO!TxUE_D@1IKK+PR%jfi27$gw?NHEVf}aAAqChRcf_Dont$KxMiCmBF(@1jXgrO$+E}I71zd76yqb(EYm$aqZZU0qb%a*h9J+KG$#{R5rkv+`z zAeeH#8(Ky~=xUc3>~|WyNWSC7n^#DIW@&2uuvcw$Y^pZcNw(ur-9i572gO^NPM5=B zagVq#EuIM-><}MKSW>8YF5GR0_$W^s92@M|AwJ4eTkFiqNP(ShmHRzh*p}!aB6|<* zZ_dk0N4bMzNThSmcAOkhgHRIZIq^+A;X=)l0;X%brRU zS3p~Dl+%`N(%NK8 zbvC<)!)}lUhv!b4)ZI3zwu-(p?7A86mH`IeKP=xMgj-X9lHiPB<7bD-Gy^lM&qyfz z93=YD{NO1u5pXz)0MKOxvqZ~1Xd;qQ?rL6b+3qCRz5$qr<{3)DVHW`Qe(sm1ZOi$< zwut&pBmgRoKe#DFX&L_~b!lwN`2}&y`PA8OIrpvsMRsQSmh%NBxUuEjVF^D*N^uGz zCM|u+75}|g#K8_jyJ8diEFX&Cd;H;lvfbw-wqvuo)Vzf-tsiX>LOwo|1vV~eYaTnu zdGrjmx5Hp$t9hHfFY^?ON zezxR{8+WtO##7%RJNUDaoqqP#9a4Y!oHD_h9_dwx8{jn>?~`wV*B7kniCFCW#iZi+J_&E2>m-zWv%hBWvQEWd?Z$BqbK z{FkC-!K^qA4AJ{IVJmi|YE^IGI)azFSP`Co10XiVHx>DrH{)T*?|2plN~R^qYBwx= zL-Vy)t!vU^H!~_#xL$!q6MKB-$Hle&p0?DH3$&MK)fZeQ1o66YHjsnfY zMzYfIjst$fqWWTYU*^s-64>46xhs~ufcfSCg*W~k!2aX8ri$(8}LOS zg&<)W09tk$@KW-Dj}{uQc3#R$_qCrj$74&^e_LK}Ds}@)K1)LjD=ra6gbBTrMG&&L z>y3He#GIN_8K5S0fzg2wllyCwU_cCDU`YZ*bxR@BPvD_|q?fcBH{-!-9=ZXqDUbQv zf6>($tM&>2m!7>Ob4BV8$|p0R?^MCjxa%Xx*(xl~cEZ}=$y!@v&PDIqHJU9-MM+q9 z;T9c!z{XcC3u?DMDL86BNUT2Wm$F5(c3Q$yJ)826G8VT(a;#{}C!n3fLx!V` z*j$RHpN8HpQ);EQvg`^>-KFL(M>#>^=(?rPJKhN$%Rq& zjeYL1Z&aro+@wLWhSbC9Fm-e|1$Kj-knOU2CZ<3J9zfOA19)>wL|;DO4#JLiEh9hz zAdCRp(H>Psw&v8tZlYz7@`0(A1Vbolj>X%Wp=E=>!o7p6%MaaCV2TMG=OxY)HF4&( zU^*C!s|3EE*+@NcykkDhD*aNYt;{s(Lv4}0@8|XjDYgJN?KWo!^akqwYfq_3rUJYD zPvtGIzEECoDXs-S_zYc-P49x;7Akk-PQbkoO z5ueXP1SsC6;(22L-8lx(tz!Vyu6D<%ae$JE{9g{BGY-&c_n||k02XpqoQ77A)7OIJ znf-?#tv1a1f#ECxTH1xfUG@Ok9Htdf#A!Zo-;h42@(=2Y(5(SxP772TXSp#W)$h-l zM%)#nzH-0^dkeH|9H(ojXXk@)8W%i8|8XXfZ#=6DervcMt$z4SYOT@pk|C(w?hwcF* z%dVmWpj_WZxukgiV;`p_=+Vyz5TzBr?&8E$h103SEV4py*gUuuaALNnX8}&*4Cfj= zu|GCCmTH(NV5S*GAbGbXOPM%Sd@?_#W%A0D5}v&B` zM+NY*GpJ@sZc%npfSEToZUj4*j?MJ@0|>>L{uXehXX>-&duz-GquRn&pVd3jwPD9(|8)e=~zie=aDlq9aSQF@{BEr zeqGvF^c*mQGN|!N4|EQnDA%#{h;#UabjDJ8?lGLd=!`YqB0a*5LwpCg38p zi%8B_5xa%^7$ZV1^QcoNtGL+Jsi43KsSCOH#$X_WTT$?l6AI98j-kK4ACVyfK z{hAhyd7vUPpyN%bC=lMbNkg3=0e>=PtWCuQ4%5n-L3S3?r8P5U`^2<{V#WaF^`#vl zk4J!~s_kQD?5nQyzS82x5W2y(m}w%cNcjfG)(exsGc2j}K7J`ty%RlI4>8tL(_ZW#%5)p_qVFXQo{2ZpHEm`Et`W>TqJsM{^M(9C+X`b<}0+z39Jv~jBjswMd$Rva|M z72^)2tYYZ2X+xJg$%js#qnr^>+u`|fe~xQI@j@tDnoRPImCs)C-fl_+gac>g27UrVM`G@4&V}z2O1)d>3ip%@8~u?R9~XWU~!} zaEz(Z2bE~rjBiU*=`7gfEmRhShLB%oH85Vw8}VHH{YPuh#b1`!-%!s5leq?wD?AJVTGD!mH2R}PIp%3VRWo11HB7Ym6Cy_0 zG$tr98RBKc!!YJnXdu`xl@^{kcHGYp0VHcCvPSX3$|NayVKhmM7sm4xTE*fBFEk5p z5&Xd*u?1qc@LB~1iJbHH-jP#$D&DX7N|PHTqegD4xJpo~JVFyjuJ?T%$Re2JJuzF6 zTCApM;fZg+VmhVA$1Oa#i!40o2@6jaub8}BcbJ&vGc3EJG~*hiyXdmEhz15waFG%X z(9%%Lh_Kf2bY1gfTb4pKtARTGU~A%E2p*Q_#aL)l33B&60;CISpWkv4T?|%Mo)r_8bxxHG|6f8LNmS zz#|n6_!P%(qasjLMwU&PG;!7}R4W-X)~N1W`Xz@px(^)!t*eot6IWW!LOB}6lBL*F zTIskf*_(^?&n=OhKe<#>yp-&fRJN;2uTI!vD8Md}QZ?HbNMxyPH7pD8uZKY}Z?nJI zX1^OYKQ=s176Kj!52c^tD3|j<@+k{7;?mFoJm3Xd7Zev3rB}0g&v(acltOPSt6~XU z;pN=qS8#AT_k6i((<0YRwpTY@J12VZ0JziB+6759@#k?I&H~!yLLjsZ;RIF@q%L>w z{No&!D={|3+`7XjgP6_Z5Xjoe3!IbvWol!CCj(F-#H4&^0U_)V&K;`gSedq)^Ae|sq;H)!5^T*G+ zKOWt05N73!pK?1H%*BT+Pp8XlnWdr;%s>6q*;_H4j}-%1sxu6Qm4cb7gSg{_|6?6& zHF}4SPhaKcijUngSNue`7_3G=cTHlMrNqCdf-wZ!vag;OsvMpKtKS^ zQ;{bOu%6aRJ9OKV}h-SVq%qH)-@weLvS|_ZVeM8V6}b`#r_)w&1X8P<+7HHPj^-@ zFP(w(>bW`taaS=F02ybX!XQOy5g?{E?WG9?Z0wcdDLzR7`Kk>jsf0NqJop<86Q zE2Gp4#Nx_mv@c5EWVA0bxe}s%k+J@#l~F!JE~z`4*6ohYwLXXLgcKb6S-L9U4f>66 zp(D)IKj&DqDp1;a%pE(kUYwtEZ*9E;E)XREnA`$s#24&|aV2T9p>Al#w@)&AOrj%x;OC71rO7ibT*sJi77!pQHPO4<$ z&Ofe{$A-i*5s;&@lI2}Y&w-JZ>9vx^&OCUbC8c?>2Nu%QJI!?L-JHmqlM;A2BMT0t z*+^B-YfGon9pkaJ{>CO+bq*Qz)|u6)2XaO!8(1V?uSGAMT6H??X_ z8#fbuE+SJdcxJY~L)!f#dRf-=A*EFclTeqQBYrEB}#vNqcyA zF~6HdjH?hMdL~G}3RDoHrWA88*07ouU;d3%Kf;^WrVpL~jZg@29+> z%9ekgYkH~XCmlxC+k@q6e%Zq^mcXBG9+aM2CX7c|yhk~mH+cXClS}qUd$LiH&LuQ_ zNdz~ULF4#uo;5Ve&Wx>WZQwb?Io{Xi{#Zb|lpT~}tR%_!gvGbZ4#ntXSk7)G(J$Q+tBi0O>(+U4YskQFHQR_~g)c$-1uj;((&R^bij40*{E6?#h{F(pU8W4T;ePjD9r22qRW2b+%_+uFve&;jDaA$8y}BLFsH| zfFm|>9`48Ah`b*I-e;>biXzF`@al*g8gi05NQFN5bts~oM$FeZQwhaL8_+*dyKW@}K%w_GK60*bK07{w#EyJ~0aQF>O!Axq zuLXg7Mhojq|Fdyi(~A%0J;A8KYsWgY9$ikr=(*9Q+5W33EVdM)!59eY8Yf?w<6;ht z8~GbruVI?ga(@En@?0b8PkCIrOrUT=+iErE*tbf!_j5%{+9MAAh*!fZDOX3df zAV?DQHNtz1bK4DWaa)PB8#IB^AAy#GpAi4|kOSE>dBX3;FPBdjM3EP4S>tcPwCAet za3CXCs+U)5IODFA_>^{JgAE5GPo;WDO(El6)IT!2Isw>B7*Wqg+#;pJM)HYDX4o0h zd_)ZcW$hcOV>NY%EDO-HFB1}Ct+#qd~ zVzTn)Dc!k0Y(O2=IbE`kbEz3TG3bKy8E_(=XkI(RMG8`(0BBdB-Wa_-T{>Plco1gw z!HON`AFYt>(OOE`1oxhn3v}9Dpa7ba964zr$%&3*O(HBD8+KpSpT*;x(|ow>?cqRW_~mDH+&aRrK1YJ$u%Bp^1P=>yULVW!6LQ4DV5OBC9JXw&A> z;{^MahmZ3=f(>p(MZW`yGIWi%dl}9MZWKuE%qTOS|#jEk+$FJ;A zHj~QWrT1vCPe>OQ#IYCTki@Pj`zpusu#4v43J1F561vw+n9sA8KEfw`wAii{fG!vT zse`IHh772>Q8sAU2&!TP-q_Er5pAnp9&SYa2S1tb%|Hj5-DvV4Y!=T!zx~?RzV_04ht~H^MVm-T@fMg5 z+|kw*ra74p4uDk_Hu6s#>8R{VU4Roz6WKl)C$j}Qg^ivH0PuX24#0sBgv1P+m4~Jp zx6#6pC>v*2l?*$Y)){vAiWg!1nsrlB5VH%htWu$%#($ZFi0_&DY_kyQ(l&#bQ{`Ze zx+)A%&$@^V@jma7q)=ny4jnt@%W)NOo$x~Ne}m!w2JqiFGf%~NSSB~NJc!Fr z8jqz_6lWgT^3#SKkE2*Gc!+l%JYeilFa&P|!1!m#*USo5h0m6NG1UT{@EJR06rasp z&}a;wS<+fh@9P0 zZ&mutOz9@J8i(_B9g)KI{f$CwwG1inXUHjtE{VbU94ra1d}T*(;GxWtpu*+I8)+x; zjRpDC-$+A=Z>sH|B}&KVhQ0Ph30E{k>+XgEjD_!q9$fJ#`x-+3n4!EWfd}~g#!+(gd;X6ljK zNS$&#K28Fg658i$6GxqW=dM)qMnU$PBWsGttqV=L(o08*Au7O+=Jvxg~H7R;Tf)rl7cF@R6HSCC@2Y$wwtb?D##cHEbS^6;?y4SebJ%ZI(<0@R zavB@}b^Y*X?YjzZp#FnWhJovn&51aPme(BQE-~%lm#T*@TJpK)AOFls#x4QWE7KU?ij9XQ;_XPpci%*#pGjFQ_peD{lj}cA<9rqYE zVnYk3SuRam`#fs~Q)QbPGtHv*TY)FdSrqcpC56{CrczJQ*NAy-&Syk)Et@tbHLE8T zwbLkBQ)PabGMR;WXli#2Fg6X$CXXgv(5T9i>aq|eGQ(r6^TK7ccr`j}v#N<> zF8TOcwY`c|aMx6qvSn>c%GRwGR9m1nSikgM$q?&RriJyYzJpeuEC@T@qpA?DTGpsT zP3tQ6Q6)RiA(P@b8(U+QqyVa_e3w=Ej8*xFJ$LSLx~@{^h}2ac4!Pn^at20~<~%zg zmkKRCU~U$2@kpc$U5nfyWKeVy(K(gz@%-}(PEj-b+N7hOOtRQ|28O~ ztj<+OJ#(pVB0!>?X1DR5vRuqX2cPh^$kiW61qiG}&$M*|N2Jn39GS#2Co9BBw5LqC z#4=|mG@sIp#BxpPVXM7oe4G}Ztr<@knpC+GDrMix5toqh=abO!=M4zCOv1$T=_m~V`dYS8RUNzR&l^?8 z&inJxs&R>|rcm5;*ed<*q2eLt6}GwbHdb$ThR!h@pz;vS;DJ~00k~1#Y;2@r+@@5F z1Sq_+zfJh+r|O7L6VZbYDBtbgDlOOU*2;}*9l)|DwpnuLIFO#WXH#diazMWnbFtiR zO-Hcy%uCo2x*!vTUp~jeKAUEn?Zz~hTOu@@#vy3&3^VNlp7UxLnz5w@+DB>|#?OW1 zkqOaFPwH3#o+&iw54W5Di}!{paeC}w)f>z1=yyOUaxKOy71=^|93NPUFp^;k`@Qp6 z^bicxyGSt_=p@D1IRLd3R9V0)z|~UFC`3A!3p#>F)&}LdP)vj)S;JGD^t<|->GIkO zZ;hu6)Hf2;YjAYcgE7}wo~uhW>L|iQ9gVl}Jdc$GzkP`z{+2P}b)A|*E0Pi52h|5T ze_;Uw{vgnNy0s7B3kiUGTvXAe<%~0Ia|B_2{ zudIQzZqcJz;ptR_&qU^maMq^jMP4F!ocr%_N?96Z)Q)y5X`V1kHf>_oK^bDDrknZb z@^TM172{kIUeuz>L%dcAxiX5g>QbsB-pAd|#vG^<&uv+!bA?T1tZ9#pCVM*5o~5MiNq1?lS%NN!3J zx~uM5^sTJ**}!db5qCy{J42wyx|7Ako+If?$YOzRngB(`|DY=EGRL*fK4UyH#Ucy9 zaEfIWCwP~+(zk{RQ}H4iyA3xEeO|^UdRxazt{+&T7G$n_6fWs zf2j+!mr&rPb2PCp>_$z>3w}OE2Un>4Wks7~xj2=JA>6Ri%3rY(IE1T}@29&r6%TR< z*Ajje?vB(B`F$hs`YOzdXV2-iyj0R%PqS(E_%o&omljET8kd0;P#k& z@Z~Kv3p^rETH+41)wKAxzlEP}jU~P#Zy1=}YGudL0q) zkHBS*qQD%9(kIQ2s`@BQx?CPNS4%n2s7l(JpWalAs}dwy^V6FK7mKcxa-HrjU#GiE zRF$F59zlK`k*ql=tL_M#wF;0rBE6;zkUB!0zKCwc^d*QUp(I1WsyikSCHXOXcb8H2 zSk2|wG$5;n2K<>1#h#hoCm8r3cy>(8*!}SltKi=SH+Uxm@ZIqd5d-gnIs7X~<9i^x@0F(&DFiXiG?kRK zDIr{^16H#Zmdi}I6lr+L(cz{0E%hw-gd>H^wH~@VWZ`+7^p=GyWSoH3yThgSgp)Ak zY(Qmfzn+5D@vv7qL`OfR2=(XRq`?19;HS*UK^qK%h?J@n$r zQn0a4fr=td;fSNPctcEqUu7ut;rZ%+CtRhsL45=?op70HJktz_^A<}d9@%oZVL-8> zjMEmI6=&gE-B+z<;hS||b*U4UwUXVv8Daol5)m0EP+G&cnoVumhSu@XBg_imXKzF6 zpzd1HpkmM2+X6K&qoes{;Zj1u=I6rU{0{I&Ec4EA2gj8u>|}FuhMAvD;gxqE^&CoWHKSCoQ~S_01Ull{ad)dP zySUSwvtg;BBt>nH?RuggVRG@F9N_@O^WS^OQH`hr=7g?Kku<;2foJ2NPj;=W%!voRl3eFm%om0?J3i zcOD%|OxdXHSjP*(_uPP1^gZE%V>amv;fOHDKIk?+5Xfv9Ckx+WJeG*ZSbbtXF?}IW zwf!RlTN3W$?w*ngzl)o9lsE6<=AGq@dibyW20j6G`;n7|2=`(>hWjGieXj2paemjx zqwf~FysLa9`61$z*gsu`M|}xVDrv;gJ}h6Ms*i@l|m!cc<)oKHME7urer@y<5+miRyx?EzDHXeJA z>o#~|9WJdKtBpT zhDW~e3Dt1S!d@8^`|D8-N=HN48$D(yQQfK#Opi^FGZ$mphyh9Z{@v1n7EJdS2WB*; zYQ=cKBMj>ps{!oPNy1w-ygZ|euWqR*x`&WKDoEgT28t9)i-H$Z?(}(L8kUpK{MtS# z88W?ed$PRc`l<5zyy9w1TXTLweONo!BE{N2svcWi}jHmF4Y z-nF$l3T}`lKR-f;_jv_qqjhg_ZA`Nsfh5+jL9b)Q*An=?v036vJG?d>xdNyFCcp_` z0vu~k1~>t1v;$2<5S@ZshOT1(qYF}@XZF1lerdSIxdncwLkljhUzlHKtKXC9 za3c0B)!BD4_3m<0kFYDD7lxlUw3(?kVd~kzR+s|`2@DjV7T$Jsb^;z{nmP@RnR~x1 zbMHKV4dE~~C97#l85;$K#9nk<8G=vl%GJ^cIW%d#hl%h0E>Xd^RC$pDWIbR^-+G ziM?M8L%5w{YUNJtsLsM+(ar5@_&adSd`Gxx zKjvhL(zqxGU|U{fYvj$*Z^A4{_0%lT^c~@_6m>q5jc7V2RigvT0_VwLStayUiaJl4 zRwLT8v<7}EB|(TU4V#utRWE7Co}-211T|H?eC|fStVRG8AIfTcaVgPdH6AQ)2r!|w zSd5&le#Ic}4ExppZaAd3rPbICZ&KV6Y*NvioJ5_4+sdz15%;gF?+@z!_4WOWb^mSk zeTLd@K#@%93f$drr(2G()zV}{z1NhLd_&rd7LfR%%~G?{uquU11FlWS!&=LFlZ=Ho zg~J$jcZP4@-&f9sj43S<6+HM3z{x~@hoi%i=X!VpZd0MhAf9QDd8h0T>|T-~eS26e z(B0a6y{I$lGnLhQS$oq*IRzMsP$7~SuvpCj+f<9GVy~bjRlZ-=vS+~Eq8Qx(QZsGr;c%0XpHOC`>O6q;d0O+h0PdwFbdxU&&Z@YY=nx5urg~ zKK0Soz3*l~zTs-8?mqjxb%6W)MRZg&f?6@q z1B?!KgoHVb1rr|?2PVu&!D7&Z-dQ(ACt#kod1<@VEAKgGGqek%dXEKHFNNF1-}FDg zwliG+4t6krCw2_IGrSuP^s#LZv+r7X2l{d;Mc=uq1lEhRUG^oU*%A$5V?6ptpGc@{ z(YMyw9SbyWad7Uk2`iA#hOeXbuDH$7B6dg~%l z8B{FuL>*l!?Lo1mbHD7#cIQbnL7It^q%+G%Gohv3kgj#^nuyZYr}^zE-3zHb&pF!* zI)P=WYGixSR>+A{*DS@$6umL?4CJ*dyq#697rr84blx`xY%$U@QBl0AoGMCx=ikB0 zxhDF1KFnL(KHE*WQX)^iI6AbGs^%3-4!tVtCOG9PcsxGMny2#7bJNynDq#9G+X=K2 z%65cl^Tl?x(vxzfh{k~}v2sRSNe_B5(6-j*&Jhi4V}rS?lYV#@`$V<0ISX;m2W2

eXWFd}C~LXOLW#4i#3+|CzM6A7iK-P6TX{px5!8h|phHf}mXWK)Mtxw=*w2Qy z@|YilpcFIsijwNEC$@U>PnmFLweF17i`PvRi9ss=r7|kAb4?!#pOx;(5-TdvB>U`S zHHBGEqou@(Vb%|OvaFIb0fR={+p?%him4s*W2dH>tD$l^s!i>zn+*y78i_8gCq%wf z-C!H3z9L2&E*aY=dUVb90d2xsfJRHtLkmDf2LZckb?=MT2|bV_rA58vdu}RkLJPDQ zk`_v)pb$dgCQVpJfM8}w^tbe*Xr5|boEnYJ@#hCc9@YsVYgtnwBX8++<8&#@=#kMm zu^(rN(V&?1-)G)3)gkXr%AbDy=$+{b!Csg=YWo8d>maQ^ivK0m4QX`MU%O<)tkaNC zszq`$PH`!x>;M1#MnE9QBc?oCk4_Isk$u3DOSR?~lDVmwc5i-m&|PSC`bzAVDFawF zVV(fAnzOb~m}sKp@PW66?%8*nTt7!j>V8qP)P z|2VA`PfQ<;yrB44eJN_J?(|-huNkgHv@{CMwL>$o^`dz)NuczIm`)|8)nLf3NPcYk zy7UC(VbudFA(M zn6NFpr)>Di+ss3&_Y=tk)a zD->&`u`9E{goHGIj zq1<+ySJT`=JMvr3@32kYBt2y9*FeFm8`xsp)`Q}>LEt7ynd4q&DSMxC&rVRC2Dld0 zaTvo5R@J&x_aIcq=ASjF&ZZf6$=Q-eYT~bCOJ=7`aG;3?XIuGtJP+$RqL9I@1zReC zV;Es`Yn&I1u);pkHt{{mMzjzBBeDoXeDZ~64P-IokaS-~uW`&=%J#u+iOX|@fIf^) z$oKacs-%^a>H)@rY|E`1IZKLl;paN&JF7uYAL!qiiEd_+YhQ5nRo{HwH7_#SahhO< zDyXB;U*G2&>%WHdbY|8P31);#OWD%|SlyuuvNM9OVz%Tc)X#jdWHe-V$=H1M;^)wH z$8sKaJU#uuy z?gJ%NwF=X4gv3sJI=&}bPbm+z>zUusVhsy)hoc&L^57Ny*YzHKF08B?*PG(FdPV<0 z|4kAIjH@?4pWL|r1L^gzeDzH?zv7mc-|(u&^!yv9ClWo#Y2P=H(^6R0>?Xbrz~lyXaO8wTsq){v#>SZsUMHZ*g-2#P4EM zQZ;j6A7inKnVuYbOvtcyh<>(ytZL#N{68yxrJk6ET!HFjSU~OK61sER z=L_~Wns8l4#;>HW=^vwj6da6?+G5rNP`^qkZ6%~$m7P{Ss{~p+4RDdc$DTVNU(}?= z7ez{Z-tr}TE^9#Xi6~c1@~kCh+7dHVr4IAoapex0{cZ@dEiogUiDR!)xw4>Bq3DSW z6upiTPh=$|5&u~}#faOz%bxp)eV+O_4+obpV3bBH%>d97o$VR}PZcjuLbf&3o3qyZU4ay*A`s10sZyFb zF9~?SIx_xDoV5$A0n`4wr8sL#`={5X@-OvW-K&&;2EC^8Pr0V@|HbZgsd2f7Yjk-S zbfM~{?1OFT$u26^*Lj=bf(=JL9C;7rX6TvlHNT##OFgMeOsaKOi(6PAt5bBMi+a$) zMJycBGdhNeWY<4worKO>h1@f1fL>obiVgG;hF8}3VSHgl2iLu04dXM5Gbv{L!7fte z_|;C9Bm9c<5T+HpLc(HqXK@9__LSW@DM+!S1M;{6$J&0i1XK4bvBN9q!F5)G&=u}J zYuN}uII4n?4F?go~5A7}W z!9PX)8y$|)pEvj=v8c0twU?DYzj_|?Qvs6Gg;i;&K(FH|{28({P6E>rr-x-RlHKkXG|s6i>Q*%yrTcw-gisRABTF%-XHJM`|su9BVFq{@0VK- zcQu6KbffF1)pg1(x1RBFoi+dUj!#$;CGTx{*C*MpURc+S{h|c=Pj39%diM+RA8SDLV}j`S2%=AP%pg8dBf|;Wx^z+s=2IMk%(wayrYjjv6{hzw z>qGh{=;{q~=WlFohdBN8M%J0ld*dDqL3!~3(%R~js=-}q!$nm|lup7jJSHp(H-r>U zmiqxhjT^KX^@yHJ&Lt4w@s;p_(BXVP!vb{}phs*eEk}EWcr4SRj3CIwFxMMoV+iJk zUPD%%=9IKjkw2|m;CCCFZADQ@c5{?CGdftGI|r9{K_aEdD8|`D$$Zy#d)ItIiZ924 zmz);@bX`&uAvwC9;tLHo72gw4@f8doj zvCZ|^Pj(JaafpmC&S4LZNgYB_UkaF%Mjjbpr-+z5+WKrzIfFa`I)cO)ROaKl0KY=? zrqig=zclpm6v4pV z39cyzyh`INJ}hOQGGAV0>7m*R{YGt4H3d(MjzP%S3$gfRmR`p+3s`tu-XJS3F&oxb znmaqUl9bbR-Ab=MlUwNwtEtv&t)haYM34A_YTauk#w4CZxsr{Mpxofh+^}Mfz2-a+ ze!Lb~2;FLGHq|_+MOU^o52k*{d1z}hw6YPE({Szea;Pn3FH%zYE$?0PoT@KT)$fDV(mCWx6WnHr^4`D=rysXOr2t1agtW$b$&5}^?lE5Y>3NK zE}>!Sn6ahoE7{{YF>$#zQVooY7EjgycoG0CtJtqpu${^Wa}L}wX!w$HF|E*A4X**? zapR;~G;0h#;z<)sCGaFfE3{=?Q3*cTnB0?^+})bo&#pDOvveA|Oo}O|EcsWWR|SR= zJtJ3D-Vzki=s|f_PYb6Eh*TvG{R$Kr_!Znu`uS5xd1sTeLI$5{7;+>kHrRqROBsvsxl_HHXH z#C`Zh?dVN=y!JNiQSSh^O{HaApy6bN8eFV-+gh@a-?CC(I04iQ`)<*Xvbi{AjwIs| zr*QP3j4oxLSDqaNyS;Kw^OSr{yi`6=j1D2~a_eLYYn8M9rRo|94NByH6y(2HHGL$D z9Hp42m@UH|w_>7wf&(bGwU`qT;}pqQV$<=Kl2a!znw#=!9lb&M-kX6X+Fhe_-Wz%Y z=~6FJ@60@^x{makHt*PV>N-2y=(>;e361nZ9$Wc+w?jy_^$_<>o zn%y2%T{+i#iLc#Uu3b83f&W*5{~S1HiJi`(_&2HehTg`rtR19m^%r_1_9gPfH_hmH z2$<@WQ3)JdB$O{gY>J8o#X$Q_`R3L>#tW~BiuB&7OkCxu%FfUBW&6rhWh+YAyd5`H zwe+zlU6TWIf@}(K6Fb6mTE)Y6@e<+FDs?Fyu+Li^lYN`obfk9_HN1#ga5aBk9<>n;A1?&E6X17Z4o94?G_ z)rm9%jwyq=6B$h~G|V3??lY(TKso~pgk_313jt_NK%5GjAAcX_#1!Vli_ZqFfDbFV z!1^j<+E>ky97GyTX$qoN60)m(pB&Q}CBN%ZtVKLV1o9qh8SXC$G9fieL6ku*N8a=y1;a<-&5=n= zH8Xymg3D@;{Q0`o)(iIfXo@)}hkuH>UNn|u1A`NwHg3@rZ&XpCA!#Ry!$-rGILm}$ zZSh$qgot;FOtvFNTg97@#i1`iah#Vgy|juuSj*DVON*VgF0@<4{ZSog6?ezwmR9lR zs4TS9m^q&sSTG|jAPT$KY3UgNQYUP#v0$;nf)p%R1Pi7kmjoGFy};HJ8%ZVTW#~U@ z0p(+{sYZA@YQ%YhZ$*!&o~JD_izum8p&6W(s0u+PWxyU{QgEp{bnH5sV2jkt!tP9}nDfYm*krxEZ#uRuH7s5~bcKkP1E>>gjS%%dwiFKqj zHfS#1Xw7t0_8hw7#M&I1V6^PuCsDJ+#)~E$+F@LMiwmqH3T9la+X)AD6%xlzR77D( zeJPXehDX$`Le_l2;fCJ$xJ=;>gefr`4xNVYhgS1hmuGPLPQ}+u`EQv@R6N6ylDltN zfNY&c^%l#~TJulpdgC>%bDn8SDG z@gbD_fv^Ea`sFT+i%gpL-)Dm&Qk1T?WPl~boa^X-Dy{{zj}}>_QrAO~&$k+OIZ^AZ zfKQ#{3iw(xHtqddjy!-pCd`gMW1iwv*VAu;g)Z7!c;fun}f8Da3$+5mKmEwI=`z zT}7&cC?blCf)kyJ;jz+W;D<_Wr?K5wWU6{;cUp2Umj$$0F0%Xyta7FdE{hfnf(A7- z6wU7#qqb7w5k@hQdH{qCK9YSs_~`O^R$Pi0#NgwQ8GHni51yH|F*zo{3>}5?y zunDCJrHF-1#ZV!us|GL~w${#2<0v5JKIa<|7ye6cL|iD=*obHw|B!(2GVMiV2ckT| zDCui&M4Xa|$W|!-u}^U7&c|E*jPFvMk>Im}L?ub)c3ARXFb#d7U^gLwNyCM5pQ0(7 z3l@3e`vy0JsgjcD8~IS(P7_-BTx(x2x*gxz6gN7{pH#At9y*g2uECeM8B-6 zM;lB5q}m)j8|EaWs6kVRNj3L4;~KI~!XVqB{}^>)QdvrapyJ%x8A+vX_q^ z?SWIX;3|ue+EL!N9pzx!MMEf`o>s>UFEZN{VYhkcxQ6Iw3{woV-Od>1q@RrR*MW1R zdE}+>H8_fZ9qNZ2w(4fOJOj!CJ!{W}m~-k&PYbGxs2?+V(yDk8)89Mh+rN7-He#!K z+WtMI?cd5@iO~cF<3rR&^eJH%wG8-b9*XVzMs$71!1aRs3j~_XGfcMUqu`M#TN}}# zdJS=2-YE=ev2|=Q)OU$mEoCe#vs@zcO!rt8B{s~%?BGLfMj|qX1IRoA( zP)s=}m@!OxCwgU>u|5MPF>kn|lz72asATg1Pn9(YD$SJhP`Xg9Pdrr!nV64vsG}`- zvHiZcuLgxSnu@Z0!xq3rw_?-86DVse)tJ=4dpq`#Iy+N+fpwunhcuQ|XX|iz>DlYC zb<>c*I#)?cz8)E%5;9DgdQc~$u*4>&C{+B{#LWDtr>Bv1Y@N$#{{TMhE+X*RTtyt_ z-u(SUtJ^|uDcgYlkY1(w;RCb9IS^BRF{ylre9JU|qmq~f1UuRmR}$=cF`8|F7l?TD zBqKEt*I;GqaMh|nbhTO4iV2&nw~7gC)+U!uI{3xZlp(pv)rxV>Oe=w|yp?`DDo?ql zcUt{oF_6=qY#~feIa>$B^GdD@kU}g9cQ6k~%ZqueDlIa7{ZZ@r&uZ zNu3z~w}yJVEvmQKxvIA~6ItmZWf7d7zlM5i>EaA0a3)Nuw-GB*;H1-91Ou?>!HpsU zC_JJENZ|a9l`QUwd4(4Al?O^G!&t54lCg;Ms@7I=GqUDIC6}yu#^^?rTxWH5Xh>vN za9gxr1p$Bzm69u;z&BXQ?YmR^lUbSx(N3pkqWH`e8{wVU7h08o-6dBfe|5a@MGDXk zf&1sj3khdvXF2(k@_J*j6H&rvc=Y8vR!A5-H$nYf9a)+URVy*cpFoTKM5sYIFd#dY&sMGSl!xRF{YMBv(l z0WNR28{nK#_g|d>{u5b8)|*Q~5Pa{kVap6SEN3A#SQ(S_wuF_e05dIm15P6R(CDIs zN33`jsyJ7anP96{#Zs`Jpj!9~xXi?OWxXq5IY}PGHtdBOmjIV$(H90m+#oLR^#S2M){BI>- zPzhvIEb`z*M~j%<_IX+X0ejQp{HwF8Fqtqybo}h_~44tXsfOEO=b;g95M zFIP+aB5qDnbnvTbGWYQ;wJcl5n`{TfM&U??0OMYvws2mv74C(lv>z|1Z1C^XTtf1= zXfhyXV=4H3(t=q8c*)ny{#m$}diLJO=fBT=s~~5UbcjURgJmYS-zl8sd(}nU&iAEC zh)D!=@i#w#%!EW$7w-x_IyP7xYxhhIa+1S0yghn+JhkM0<;4bO!bY$Ev)>Sw5e;{l#z6#?dR1 zM6#qqnr0;2M;^L6u)AaIWm|csF>F`9_VM4p;Le0Ajx`;+9A7@FeL!|I+p z?+En{6*8fgzxK7(z1DoEY{;IBwuZvPpgP6OO(yX)80Gqp8H}q?LOo{jG!a{DJd>3jvxONfD`hgzTP`bFM=oF>l242 z5AMClR9Vpqea3Bf882hmHl!g{C@a!D)kDCnME`cS#SEizDK4E?%k%ivQfb1g>Aj#6 zM`Gw~ZR$*M*)if-vs+RASsx>-d81AuWyD^jqPGS=*Md@L3nvC%x1`uAGZ!^zLjplI zN7uZjoUQv4^fE020>fNn&E2t_K7{15WH0Y#iWU|K|7Faiu`CqR!T50C5>KN2t92i^ zS*H))aT%d|X?CxB1FOEzHX3DOfX7(7EpHdy81SoI5-}$N71}0XpttXgfYTL;oF5YG zB_U_|VL=BCAD}2@3LqDNhYVEgWg0+*S^Y;A5GwkHHm10zM~x0D*1>Hm>v1yKR64X} zloH@(^*G4!!st~FXQNlLhT!{oOOvgZXOzYiq*51g#Oi%)blQ%T)v%`57#69h$A=}G zfnjAMg90I_(g!6kb~PwVaBWetV0%S${CoH(Q42iNSD8Oab=kFQjw-;rw*B z#M>i%llq}0vu99z=_9KEhdboIQlK*+!V5_CDQ&>)ePpFsv_*7@woDs{>Vmw9X6~9w zU`m5kr5aCTIj}C^UW2NZUqzadR9&^;Z&~l_v4%wCO zC&_K%SD~4k`6GhRBHjoy)A1s?>bi)(t^Daw^KJZX=P&S=^Ec#g2Y);H+r{5*{`Nql zhLkIbVMs_0;%6Sb(>fXU4AY`@kB-Ga@xg=U=!?%aGoP!xdhr>4*YX)EaYXa#8N<&` z_k^G(MfT9JZ1T+c9uHe@N1i=+H;SYDngS3qjW++E#Mtg`5PQ2_E!`V-ho$?tf2r>8 zy)WO&^?$63Z5u20l345_iv8bpv5Uuwy*L)r;sOUZQ1wuaZXGN3qF4;{FaEE(*hOQ- zu8YMGe8nHu#V#Bx_QF_SCM6ioGBfBgb9w>AKkBSh1^Ou?-aay}H<@v0~4U z#pERY-MZMuv0_)oVha@eKkH%}#)^GYEH+Ou*0V~0491F?WCxM@6#GBwVhdx%u86g< z7*hOBU2J}=*yXX9{KWrzU93M=?6O!)D=oiW7we4`dtNN2)u7+1i_MJ{yEGPqw-&!y z7n>a`c1bM8B2w`ib+MVTV#~3Z)+mWND&aOgR%|I2+eWcpuZvBM726YwZKv4(Ru}7z z726$)1&aMzU92-!Y*#FnQ|wc9vG!Q8ow3-EVxO#wwZ@9=h{bkL41=Q_X*O1D7>n(s z*vIQ)=~%Hm7TZO!)vA~(t+`f+Wp*QUj}uW^GCS1Vjztj;t zL%;kJE_e9lA9K0WFaLe0aU3#7?s;0)sK{cr|nFOyi zp-G+Z<3COvhYA>fad#q zyL^Qb+s86ulLv`tU8eN}Vd1ivq+r$S_v-<=w9@u=dboXI3f}*!Ix^h#1GdL_ zovF@^O?8f`YR%TB8jxJER;w*8fQx9_t^hw9+=(;IZ>z0uW$W9)@NEno;qi4wcrF_o zA`Q!^&^Sn=!|G)=#EtM_(2h95WtqosX|=(evw}X6fG19EBJ0wgdjMXH+&oRv?-7MP_`*O zu#CR~wrRdvo?WZqLe7azT@w?5CDT-wl|acRkM6xI2dmD?0hUIPrpIAo!@1Ev@UmB=Ve3y^?>Xil>Xkn})cDhAO(ZXOa zFE44fFvv^FBh3~Dccj$m!bWludjj{JJ}3lK=Q)#V z>m=g<2Hv=Sz|tlnLU=AV!w?0#Qq<>qQH8#k&p=k!B5<)!#D` z^M*`%J;DfGpdU^E<{$x0f#(m^h;i`?s}(29J>^~{!Vb%Q{IPXgRYTHIM})~9L}ihn zMc}yHqviLRayMr?`GGnp$YoDyA~}s8M8D<_py31|AIx%f2$v!Nav77OG&%-$%UY!| zI=3%cDi?+EWhirFSnfttQmJnrg$9ZE#a!CGEO(3d$g3Cfb8}k@D;*`9j-caBTilK5? zO)(;pL@^?tDHOxHgu=}VEIJZbdL2bGdoagH8!frU91|gkI}o!L$;Aqk#63hKc<6zS z*Ktx4CMdZ@+H+v{>5;U3vV9{dhjgq>-!Y{**sDr5(_vk*4=hiNm+SNAhn+5#w5`KF z!8$Oh3kBoUpRE#&Iy&WmShhvnN$C&=c=qVdE6zPWknuZ*Q&y-)e(Nxl#XZ( zCGi>^^*Gtn`ewae_AYPXilkU2^>>vW%M=Yo-r!4qYCt3V59ARzTtl{)7t(=53IU27 z_y8m3$jY_Uofh6fGw5PT2y2CDAL~1ZcG1Lf@4T2xw>(of>H9 z-9cm28Ro$tyg&nMWDLXRVW<)rOdYN~LFEY$3elRQZI#QNzE?m3LthrzkD!E`nV`1D z6+;lLr9si7a++=7MEvD{acaue8qMG8dCW2lwFGz5Kyf+4dS0@4!qgz#8`avFTCT+v z_)a#DFw~QOC%Rl;uZ$Aa%JKbQgx(tu4Kl4vd8k(VhS+vcJ5Q+*Hfm=z2(7rmdyY$CZP5{9qpRg=R9 zUtT1_2aaYiOehHy+W@}t1;vV=RFjMI#NV5mdRZ|Jyvf&J%7xj*gMzh?yl}hT~<5PPaER zJ2$_u*dHvR&rvJDssTJV|04VvhpQMc;aU{C0(hysl?ss9dn|=0r#~>qdEUyAVS{%r zD^&VFlVfIR`BP7PEvmB}3uN+>Mf>Z9&5g(nsx%@$kB||b#(dI<^nw10@g)di*!(gV zzvu>N$JiqV4rNeU_Nx!Mq!!4u(-g!q?2$3kK@mN@@i72o#$v(xu9mIk$5|_`hGMWs zoBUTSQ{fIaI!5}orNP?CVrKuNq@~u4Q>{TpZS+v&H9dw4jAv*`x*~ZqX)%&Kf)bd3 zJt_=6XMVnmz>H-=Up930&GNVn99CIjAl0wPCG%(_1J}lYchgMmjp8AFhT!9Sb?b-o zGcU+88@Hm5aI{4q7s}$r+3(mXL2CI0LW!T^K@IsKhWwac({^pf?rNI}dls0zE-8-i zNVs9wwb`#0P{(sv%z3Gi(B-WAe5+lVB3DKa0^J%8r%DJ15M|cJShL59>x~An>x$}Q zw)E!I2rzluBaA_`$uR_s^jE{TRox7|d}y3fi%qf0+JyNn&MH)<0K4vFXmJJNwovP$29sB3|lR6^R7jpZPMygyi2vuzs#+V?}CqcQ0 z1i}JX9FPoY+%HsNRKGQ#?91TS$)x%!rQ8$@c$mki*~`DjvoBD9hsumhoJkO}{uAUy z|3%VIn-M{4!?kAkwU`-3a`@mswD`d|zs(OstLad?hUXv+Q-+qFZ?(zkW)-Ts#;6MN zgSA;G>6}^3GABd>9>f#!`*%*NRnv*5I%OQFi4!@n`9mYJuH=bLr4bS!S}-8%+$#7< zl9(UF(L%3MC1Wvx#Y1in1ZZRVAOmlx7iv)Kz@ zboGl*eH#G-6UNF^l!S39*PfhPH5K&1v})4Fo3kx5Hmz{{ri2|Y6CHP$z=A_80uIMF z@RVNX^WPk>tj}eZ)v1W~eYb0^O%ffz=uI<#N#L66f7|(kiqq9yt+QPA-y5j9*}+54 z0#1gmxJ+VS)=_vGlG6yI+kzaiJ#((|OpY+|ZO9P;hv1rkBbE3U`I#4Ig7;sUMj>c^ z@2P`t28P*}^U=bo)%#Q`Y=I^r>^NehI(Vlnmlx$<%*)~h*`Ma8hHt)C;GQCBy8YAV z5A{V>Tp%++p5Vw0Y<}(OlteMe&O#g_Hp$(skmM%09pbjL)T*>=Gtky0cLU;Dcf4Q_ z$F-rR*0atZ;{PzxIcKE(L!uXCh?2O7^ zyKR^UqYm0}awgN)bY;?yUn7X5LS_uKQ=NUo?OJJ{Ld8(K>C0~aA8Z@8GWRf#pPF(Vf7pxix1-eocrR|G)pR!WSD2tXDixwDXrq5-o z$?_M`HP%d+G{)UyMc-m2>kc6pR%_d$0FH?f8m`S2QMoy1Z6~uu{I%TIm3I2Nb7|pS z4i(d;JtKc+*R=Hz8dFS`%~WU>u7iymA!W9n-z^yj&f}i`IUOI5Ja^up z21D`(Lv_96Q?BbjMvzT0^S7X!HerI*gwZw#>ZpTCZM#9h%F7gIZhF)~9$AnNk``hb ztvWKViKs(dPBw~p(xVPmd=rs?#f#3uCSnPR0;Zc+&Cbe+dZ#$CdC~_ZS8`$-K?_`1 zCJ>`7x@k zw^9@cc32^Bf?{!H(%oxGB3n)MGogb-(u_<*(N8>N>Je+85=%IAO5ZJ%WTL@v@>rpp zO_uX1uT_U)rE?VteuQ%sDG?K>9F5@R7FC2b=LyTLh1Fo-Ixe!GMHo#9wUJeq2GX!E zqrm9@ah%a@CdM6UiVh+Zxy=ch0cT(}DKNq2o2Mmo$0j(b_6%cCWZao48D8Kd(GDYC zu0wbp88H^)2it9E6JrL7;)$OEBSp0<0I=!Rh$5*UBxE8RMb|z71|?acl*nJjXQXa> z*fTP9d>~u*GR}v!RuUk%XfT$;fVK&?niMC=dBZO=-_6wXTD}|89JhKEM*ItLcFQYV z83L5uz(++?_VhS9I8vJ1K!DQiS5X?j@)! zK$N(h{uQp=cGw5qm{G1s0N`Rv^l|aL{%3EIGS&^5xw)QCXe2Y&g}Pip)#oR$V53d} z49O1b&;=|Y0n(rg<(stVqNR<3CU&|IeTXhPa7MR(l}F8Ze9ZGo0j?n5ur6Amz_>in zm=~t!4Pj*1RXz0`463)e$WyVE(~^SjY?!UZPn=G}beYkJnp!WXV5}mDDyPbQI%ulb zf4=0K$v8gc&S{CW`V0#Y6rivp21tNYUG3r%yh+If?4%Y2_jyd4bI=u-W39)w`wBb2J1hnzCsoZze2R_%s@fcj zc6uv51F#sB&`9cqz@Pd&&+ZiT?`k@AkLFEKIx~1f%~9rwP$NP$m=N2o$0(>4)vpHA z`$5-0z$f~D$Fkqz`YYC6aps&^=maeA0Dhy;K)`19Agd;vRm>$`qvfLO@+(}PwFi%7 zU*nGN2ecUFH$I(A$y_%rtAs+p6N&oYh@e^?^gA>;Qi2|^NxBF9?l563g9NC>Wst8G zFeXeFf;fSRwj#K9Kt5ds1l+#a3Mc{$0z}pi9WGk17N%9O7F@?*Ei)er)}jc;6uv@- zz5ay6z~1fqN<{LU1(aH+|Jb z!nW?w$|c|dnqG>_4=hs2;k8+fWM#`(R!oES9JNlhnL8nJtdD8S{>;{&F2`2ROTaPd zgfal$nXy*=3noo@y)S{TW(OodUYuR75Ztlsu-HMStoMGImd>@RUFanHFYDR4Z*_C` z^QOF==vswyu+XTn9uBIeiC{VJ7V%itB7pbYR=*PRd$qZVmq*+(Sk}HiAUy28`455p0kQ z{;HhRd<4+@ebJd!5AB;$%ddHhRCD5p#blmn0~HuM?kNqdbPh09W|V!|qFS9N;#_$? zb3iVJIUK{tVVMlgv9+gTEiW);7hM@!QfmUX9R!i9m)7cJLP7`Sc z1xUjWK>?g~tDazmAR$Ki`lPt`d_9}Yuvx#tunR}GoKp&{QM&HEj?@b+*Ud@x`{TAS z-i!-gi5twKU2VbHTXg0`JrNH)T6(SUlG5=r)g|!zQX)PDE@E3s!p~I0kNZ-Vea0oD zVrcW>h`}&CVwv&i!En;xTDeG)hVj)waQN67UnZ8EHj$uFn~^c9=aQ`s{6Cl1ZckU+ zIdLBU*ZQf@0y7H^O^u8`7}Lm1bX+5^;eu201QVVW0X}#4pC`e#mbeY*Z3ek`n04e zJ=JrA{HGCWup^b#I`@Z5#ntb#YZKn##vdlv3mg18;j28;py2b)6PP6DmRE#pT%+qe zLMD>fTM3zXkXm`e(ZUi=pg&b+RTg^4%S+v&{N3O7EWXg5mPG_+59{X2)V+q^L%Q6@ z>ZLVHmxCT2LklZS4!?C4kM$ugtIstu<~|OE&|mf`D))-d{y-UXwKLi#m{xgMBN(Oi zu`|L}Oeqb^RVoh~PNbH_#Sk0Ls8;@KB20a%IrT}2CF_%dZ(P-Vnq=bq%+zP?kt*%c zx=lT*#d>U)FpkcsRv2n$G>lQ8T0~4?V~j9`%<}j$R*!5|HH;Z42U)H~Ni#)N3wcXlyjp62&@d{5I2TI!$@rY`n6*EB7 zlDla$OzX9GqivN_zs$|A>(dq&K4wuE$cKrDV`lFd%_v4-qoL-A%cr~15>UA0O~U{TDj>x#LU_XoheH0X zuvE-YYeX?H00Z3`drGwhOGBgxdQn72wAn{_0xhDpP2EOEXK+&~yQ zr({prZ(8=zhLkhUsRFXhApnWO{_dThF^8rH`fM!dOC>mZk)G5_SKT;G40uC3&7|_( z3N*?DXR)>_UOAvUc{M!ju8w7qN_gVl2=Q`l%zKqwpVujWftpsZ&6R4}ka}B_vkUZC^wmQ4<>vTYwIjIwIP?>UEzGJn@a@e&mjTs?C_)%V&JQ}&;a$C$} zDbH-q<^bFTJCZUnb`=zkFp~UoQz}vQAzd{Xm#%AA90T@8hmbe^~%N(p3x(^KGAon-q;KlQ^qByoUxOs|L zQvWWNREGr5Tyl!2F>4`2-vx~2Qm0hyPVKF_+Z`Ni$dEXQbxc&zNlORMSq(yfnzBqAWwRq`|@(M_xPp!@DL!7 zn;wpylo!9-Z%|-h=$AwV@Va&Q>che7#u*QB25pz--MHZ)$S}an^T$;7cs$%d@L*tV zg3nwd^?tFPc*K%U*uk-KMzHy$eQRXkPX*X`-hng*|7(x!dAJ9xiHRRJti&}OEAoMojY-*QlWcHVNp6FKuyt(j#ZwUa*S~(*o1~RR zAF|hRh4}Y)_OZx+3l^|KEgz$=k%zC`6)GffnR|#H_OJuyiM$22Ti{d6gyy-evrO1x zH{YYX-ZG(Q3n47c^^>eJp+nd@3LWx(;z}X6nJ%jpH&t<6A_w`p){ZMJ=GIP+cs*M1 z+g^b~P`o%vQiPiDCdf}nJl=(<1LCX2S5WbSJR;6ujmYB!A01AJ(vjS% ztXN!>x)F0hjz3|Y}Mm9V>9OpUIEr>lhGG|0#r(?=&3(F1BDdAwU zhOKOdmt-LP!Le`B!ZRG;*QU>KcrfWzK_NkYHGu{4Q;a*McZMe**qYK-HxarfVM}R_ zL4%v(g8a=CO@SdDVG-IIVQVMbMtnNOwi|6Jw!Iq5&opA&jZn5Uvc2@W`aYOyGQ7Pu z?VhI?)y5Mg9|CjNj6Qv{%hhhVznd1OHkYX@bOE%%SI~!q{<;fBn_H`^cg|RP4!*=> zdS4LYYo_-}YX!d`r1x1)jsZap03l_O%J{eRK5})X0!4VN{o*hQfZXgQQB3zfQMe=f z88n{m+^kLz;6r7Pl$e1dF{u_%?aIn>}SpXJ)S)P->M#4 zwxS&t=N~Cm9jq}^NM=Edkg~k(CQzrEd%avQMMHVS!=MroaINjmMtNvOO4Bi6MRrg6}2S0q7$ z)(FNfED;vT5JS6?o~td{Adtwv9k|`C1YH+RXuBYqCN?Q2o^QyDC!!o^tc4{R(hxpL z)-;5a2_*9l(DhYZ^Mat?i~o;A;X7qv>8N*s10#L?HtBID70vc z;t29UA%Jz(D_rlj+}P1BsV;NGydtxZCH!WQ*|S`Q z?)n}ORbv?m;>C|{?+kxLt;K2B=OPy4?%8X0kHVU$c4laTWd)_QRJVezMFTPu?+Qcz3 zzZ*eA0~oDS#$ssz3w78MmPKi!gG-UYuz1C@aq-Gi$9@>X(zqmwI{gC-;8^hv2v!z? z1XUnhMS1)I0S(p*q)Y0SWk*E1eRqRyd6noEXN{l>5VZ`LVm|10zDWCPK&O?h`DS|DwzZ^g4%wjll-lB)9Hy^RN< z85aR)DVS-?QdkgCi6lpN6AM#$TBL1Y!gh#&X-l`sqaO$Cuga6DV8Yj{CkUbB-7N6g z4BYCtV5m*$@%n_oJZ1%wR1L}ER2+RvT&f&~iH``Vi(GSgPYxgLa$> zTWE`NxfRnLlgi*BgcnP$QbgCoi^yaKvkjRnCqgy?HX8z?LKw*Qo6O|I+ke0qM*{i! zeBDgWT6)v5iK`$9mFRl6RV_4gie6-oNQb@E`u4?Rj{|#r&ve|LP)H+))gT9L9j+lB z?=z)oLKBI&M~gf7tjgP3h;rM-WT{oZAih_#w=o86p-z8ER1qm-<1mWW=Ni;N7)3<1 z#cXS4K201ctJr6$_;3o;im>4ipJ?O{<{GpTI+HjpM5jtE9=v#uCWr0X?@JyjY) zs#X=pY*nP|6k#+Twv$4VNopf(t?Iilayc_5h*;-DZ5`wbJ@S{cwff@q2u!fab7 zMrR5^E8zhHaV0#Enk3W&1^_vkeMlUO%|X*wWgiW$0xmwO2cTdp%j$i#^Mm)7cQF}6s6Qm{pgJ!*2o z#h4q~Zil+qNht!7JieXV(KBh#nZ?Gtg2fgHms-|x#slyZ7!J~6a6iy8G-Jkx!N5g1 zaW9UdCK{fmAep0@rsDUPRF_McT3 zo=$hro6%-;M64Ws=d46^FPg5h)wf6*t(1n5Ol*hETJ&K_4I^_tj6QVx_UHq&gy4kW zr?e0!hJ^HAZy?<~571_w2cZ$U*H+JI19jC{(XZ!55o`n*dtPkU3*hq=eU91MZ**^v zmK0Mt4p{gAP^qcN#2=!=IV!R6{?@W)WZ@-aC+}84RKVpd-0pLFcR8xw2g^g!x}#aIq+mrCX2Xh`OE?i0f-pL5 zLe^W6!%;&vmp0{7{k-m1!i{};!cFJ`e>=KM=B$fPWDK&Hf>|I>2E*P>gW!@dA9e`` zJD%B~L5;PgK_$+Av5@z9JbNT8y)0of^t1;+L!Mk^oCu3!A5dJx&uJgqzdyYPwN6{7 zJVF>oDZ5toN4(6*e<4b{)Xw6a^Z3ctDIUYRLkI>F*9}paXLCl8M_h>8*g-&?FhjIo z$;fG)$lgM*IILtSHsdjz6q^x<9%)iJ){`JHXJWRT^e60`h$Y$- zs5bxD5D?ainTMdDP+C~p5@rHDaW0o8>v6G+)2P*ff?j&W@RKl@kdrVtj+}c^-9v&N zifhsrGQsLV>Mas9pLEo4VBuP*VaJK>8sT9qwt&`Dp+Nn7k|`nZvnr51a0s9yTp2=> ztcCDV`7qx?qNf_;Oj`ArE8 zn$8!EpwDG7wJ76kWNwiCz=B6%dpI*4l;~}%bsL8O($;7Yd)b4qLVS>u+h}Vv2whs| zjyE7Nkd_$r(zG!O+Gc>o_y2C*;gDpnOFwLtr7uo?A|zcx;xyzxsjb{9a>#hjj-9}YrRVr>iCZ#q)dU|kVth-B9Txo;uzI$qS zw4NSZI@aA~{Zkuuw+=ck8|$v@zih+qzH{p6XgxhB$GThTzjSJMb}B+3mUU2Z`B-;H z`+sl4?$$xY(XsBX=wGv8ci%B}vb3HaTrt+&vsLMI3TB&=ebvk%(N5V7 zx_iac?r1$dc+OaNtNr5}c6Yp^enxkKdj{QozYW(V0x}w-aXuCXJ5w;C&N8;HQFRstFn6<+$*oRH_OXIK$HZ!$P zzj)4g121UbaoKpo;qeAW+lSO6K04MSnm#Yq^@Qm|tB#rs zd38dgQKyBAIEj@HxcjA?hb&`09L zp{>!~3#WER>uCx!w!2&G@0r@2^Q+5=7fkJrRxK;FyIW#sgf*coG)^%~*IwaQ^{>n6 zSIEjwC*sE_^}Ip9v_v|qU+sp8JI+ILwoiVFFa`up070~LBwCPRH(?bZ{U%N|qBV&Y zfar#5Ek3&vq!XtaHQC6{w+e`jLLLOTtf5C%y(DWWcPQ5&2^?JWmcUUDJeC9wOXETG z$br(avxtGMsTNh4tC@CV09`&6K(y{WfP|4Ihy)l15#gaIb0v-y*{Ht*BI4HRJBKnT zdwR{tM*n?KM(*Dv!mA)pxHJuL;S$cU7IrF z2Hkh1fI5ox8r`o};V>LYQ!ETz`-rS*-)sdAoxA5dmgOLnP8Fv&>sJVsK#4SK;s&6dgt|#A^_fPo7 z(~LVCs*@6ZIsw6}TQ^(4?5a7`<|6xS(@aUD2s5qKd6;RCgJUzj5OP6CX(;rtW$?;x z#zCL3K~I;!laL0nqN!;X1+9suE|TF?$7(jiI%_DJHCacyxF=bM)-=t(E3BiO^Jz1^ z00=c9u_LVW^bdL)tdj=aGG1s+Gn6>RV>9ZX>F)w#W4YhspW|dg0ni-fjO&5Er$+jwcJf=xhu7-m}qyPi=f)P0bLgx znjr-XmyW6Bq?8$7hyqVFfH!{Dx1($~l%f4YwK=fy6%#b0X@pYe2=n436DjO0^9n?1 ze}tJ{e5Pemgj@<2KHsrN*<=3F+2FJ)6*t&KA@tZ^Bfh6XJu&)td}?>Jo*t0v3z5}p znzPOLUW{Zm`?_*!U$ma)Oz3uBa~9m2oN1>qwC7Fjj@D_R$9{?ds?Lj;quUPv;i_)a zf{BsdM7VDvAULtMvV|avx#5kal&wY#E~0*4BVs_3-gXSfn*JjpuN^VCh?9hrCOxbx zF1ClYhWWE*Soq?qs!0Gr0~gl?4JAN)y{{ovr_fUEdYD0cX|$hOTAkK!Y^@$br(uE9 z7BBt$7mR~?@zR+}b3x};y*t^vA}z79&{(@%kW1$7`luUx&@M#JQ5aoCsBG<$y=eSV zz7O8E_1WgyrPgP)b{QRMTf5ZqEH~9FeG4AxH~WKD^ibd|)=gbxz-!6jREV7KDNe2s zIp0&99Nm4);^fAlEZ@#nx3D-l$PmvN8?nvGF|gR)YaK9GgGB&QEi?e)b>mjtLRy(^ zz(oa`5OJA4T5w?^H<1}*4o0_J;4i_2)#3;%4UF#l~-g zT?YF6kcB@x07~;w4TTR1S zCql60G_2=NH4bRqUK-Z1sol}Ky)>-Vsol{!Ef%tI8rE~Bc1P=f+i6&br)mvacV26N zfNubQd#h_x{2LNp$5vI@!Ktc@)+7aY%(`B~c-($0-m@sTWT0Hc>F%Ti+G<>R|5U8f z`b~h<^IBm^6K{nnFUZ8f@6LxQr#r_}?H8+YF|mS4Yr^q`vR_n03;1ezT!OY%gHby* z7CdY#uU6813(9gN%ocuVO@rPsaRYvQZ!bNDy}jFxS?CPfdYW6kik89lqQ~p3E^j${ zd~~Wxr*(VL;OHHbbhn>@LVEu}&01yLFeH1E*bW5}L6FBt5esyJ!= zCV@dP8Md+cdRLrzD~W{G3o`RYpyT{wiswuCgE;jT;nR9SroQupuPTv~(s8OaYnulr ztXW#qR4=qOdvNP35tiaOQ4fRGH0T|(X3cqS5NE198Dkx8jBhEYBMrYrUKeEeTXvSH z1)WOpsU`>-KWuK5IbW%uW=&b=cLkSP;LgqS-Yd1)rT(MZ&Wx(<HX0N4XvOgu1@LTRbXRITin|Bl{&y00sm1p{69S!H_Agb^+2ROQyxnj^YuYDcu{fRC_UCUmr`f9Y69+Ws2TWW$!Au@Tvppxt8~ z?NK$N)`*%Nh0Q=?9oc4}J!2j1RVku1I|@62#yYZ{K$BRji~CSBEo9nWlCBP=D?ku_ zt)Eb;i)CDEKam%2<0zO|yv-Z-jyLGmkU71^9Ryw5cd${d-9T1vY-ny&+km@T%6hiJ z3xZ_Bxvy9M7Q_T8cB(A(R9|ApbHqfP4M`Zzu3FE!8XNXlS&TI7mKeMs!`_;T-2hAB zL@+n0Hjkwg0&QVw$0NQ|urx+UNszL6FA0f*E^XMQ!CxxIKx204y}%g1|@~%tFeyS%U5Yc z8!lh@zF&4tWI-ga(E$C$JDLJ_e0Oh~{w$zsJ3|`v$u@Xo?cKl|JZQwa9V*u{D3hCX z;l{*ktrbw(H&KguTFHPN5BZK!`P$Cg2D}`c^{viw&(vAcn&j4wxB@#h%TSPhtFzQL zw#o7jw0>jG(s(3N?B+G(Qk-Q=F4KBJXBq66)wFtT=VrDle2p<$ZO2gb^CqnEfE*Qm zP3G5*4_h1l*{#`H{c6QSkrB2zG*r1Yzj|^}-f zY^CPa@hqP#c!jBT6ZHnnHDtFbf2lTu#adFqEA3YlwEAd9#CR&rVI5%I3kPEz&^nfA zLI-tajVx8x$W&QF`w}x%)@YVD&1ApDhTO{!E8`{BS`HhK@uozCwGw4iUR$F!Vqz?Q z+{&~Gz#mg4Kx-l*k2W!Z+RDsS$kd0ug;DBFR+LL)EW4B0(?MNta*}m^N1PxFtDX#W zYonqUpt*_aWyUH@Md6cJ?~m3rOUC4QF8bO!El$XErR{exkP(Uqc6fx~M-v~@s(LX~ zUvSV&y<}@6_0+1hHcF8SgNT5%#Tskrm~XL8+|o3lHj`Oi!$xEf;WJJE7OyeVnFu%1 znm}_w!;O<<+VHB!mW;G@-E?jXi?pVp?uccPII6K|6mp1RwFV+3_!&~#E3aktCL*bz z9uOI;oo7DXh>*rqYf~{0?6j%U;k2nng6&3v?M@PG?EtPpu#GrE!(v?AD?=BbQ6OZrRtA=>Kxjxy8kCXkX8H*dmPYZwaa;=ta6V1^*iXN zX?dNu6x%T826|v95sv%&H0smZwBr_;|l+~y1=dJtf z$03!=!G&;OXSwU9GCS5Ob*8fYqK`hW9L{lZ!s;MbzxbEuvg$>{S7tubMW5-}-~E8i z^s9S&oqO^(^z46T{8)bLC_l=Osz(?*qbYneHmFDP>UVyE-U#98XU3CPU&-t?s@xNu z*0|Y@f2{KeCokO=ejN@u*R5IK;Bu))K5^|*#S82+RUY)+LVCHpwM ztv#mq|6FTk)4Hu$IZ?T$KS>jL^`ZPs=-vRC4gznzGXluxQk5c^Q6aM8tR>j5fC8q)lmZRH+@IM)T4Ito}i^69FqXRg##t^;*$^UmI*3KjL@^?l0=&A zp+qFvI2vE(BKp+EA<{aWw+3Vji`B0gf%(r3o|po(DqAT;I^4Sk;hY*?Tf7xO`5o63 zpvYd!zsz~~0luylkK`i`J???V;=MViou2=|{B@OBb>UQb--9chviRW2yvr#COd<_+ z+Ef1{O?{vL+?;wsa3rDc7HaUv%!H$cf8|Nq~&@fU3>UpKcB1KzOcP43s-l_QO@D97Jjs$P$sBFn+0L zz<2ni9yQ-pzNY!CWbcXX@Cy!sG1eOVVnc~6V&iChY4M94_@miMSjC%c_8_DA9U#wy z@A?QDV<`MQW{=l1vxb(a&>hS@!9sAm?b^=G0fD?*G%(aCB6uR!^#XoKk|Lp8*yo2f z1coNN!bHOO$A>MFDa-CD40J-%r|!9nj+pUqV0;?nmAsfVlt7D14dJIIK(cFMP9i)` z%X9@hS1yICnQ~X`E)vac6jO@t=%=m+6FokXa|9~IbGl`rcs$zfCQ~|CpL4tmCm$bT zo@2Y;FfxI_j|&fuIx5lR60A_=Clot}*O+60K+098N$$j~d_8PMxf2chqj4!GqwzI# z#5g?Pv{N0z#*t9a{4$&jorRfK=Nb(hwU}3r)(wIHq@Mw*ilY+q)$A>HVqm8_sylxy zovWw`ui)=ssvPSKug#XZ>YBx+hMTX=t}c~g$1{m`7(wRUB&x9{4rpx9i#2hEpA)as zkhSTcKW}u3vqqf=7|A@$(oY=BvD^a9+KoDM(ApXg>&!uGtKXu*pSU)A4I_n33ak92 zlZNK)N(U}em0c$Y9}SjZ?v~&OKkAm?CBS2~I9NUME7-T<94l|NTJ(2k+2R}XJeNUy zF1vNq#XQ7_lF5qAtZs2it|^G}>a7YJzVu9W#MWB?V`U@hRvasRHT+RrTc}dZxj+9c zo@61)yo+m!>+DK7yeI7H1Xrv4cJNH~7`G1JpJ$6dySq4mnaU_iJLXVEHRpMU`c_r0 zvy*%Zqk8ni-QCO=`Q`6v;GHv8n(N>h)99C+p~QZ7g`<#H7WjX$IN3Q_&U2>syr?9T z)*AmS=dYv!)j+I}m4oW*`RywM#I4^}X61}|1vvlJ%Whv;q9YFGonO(dm)*`8w)O;% zKat-A#}sxLc{#($-V?vSS`m_^a#uBT=N;)4u&up7;~Qlw!*br=R4&<6|*uj z+^_fjDW8jS{RSMiNqB0}z+Dc8KV1ae0@SaoR0nsQ{oBs%I(K___0-RNAY0kPX!r7e z7M|h8+4hb5tM|Nv8xL^PL8wSK(#@CObRA>n;4shyNwl3j%G|=*z&HEfrbLoAy8+E6e5H zat}egQFdl!=n#tksy!PmmAiF1%dp&g6Gc#mobCK-?7zL$hu;1H9$D&~RG>%ajNJp# zmPA09oj``iq|hNEray zWjw-F7^@xSIa=nR;_Bc(8||y^`TH8FhEXoxI^uZi8?AGZltJ2^W>Ei9VV0^Ip8q~1`7|$Dw_dARa0^pv#_FR9W1V1Nyn(!O77>ttCO04-3_u=K`5pgLRlL5M z{ihF~I?I2LW%sTesyaGQZU6`4kfA5g5+01lqLA_^Ns?MT4$L|ZbmUDb{bvDTBB?#v;0gH|h zFDnc54P80}35L&HZ>7Y*Yth+(F~ypgcz z7a#=Vay`^FNjkbd%NmW44ML~{3e@|zmh)#;w5l-w3SS;DoGb)fNI5ei2!n{(QBXh{ zlp-H}wEsc7l0~qrD;X9F77u@h@Lco$v6o0JKs~urPtJIaew+@Re!g8g5IaD>4Bt+7 zNR0&mZ9WJC=Rzp_4LtdpHC7`la}l>pzOu2dnD{=UY)w z1p*XKKgbg&WEbM_czC_Xkr{l)aE#weeaC3D@29B7fss|3*D>pk7%mK9M|#2};}@KI z#eaDug?6ynJm#2Gl-)5I1+%WO;=D({$zO+ALZoZfBVDuAE=9V!Ixbs#%&dEhJutp` z{-4uQ%%L)u$HM>o`&xYHj{WnUBmAw|!=r_})x`f?FW${P3$J@f4%vR^WEzA|*;ef`&R-T%(R5C+^O2Zbyt9mIZKQwr13#}L3OO15yfdNsG9qY==; z2;3tA*sl>}UxQ!!u#I6duH10sDl91T`mXcOf4^%sH<}mS=YB}}TL>|Cj%G|BCPbJR z_4SqT(JXx2_AiTh%F!bm&XhHk} zayJ^(`i5wbH|hibV`Vn7r>qgiJX5zxj)aWM1_2bg??iNjGrW6YH~~AbdH}ZZy8YIKbPVLykPcWF3U(|oh$V3YUk8yE z_79Z07=cCo@XbPjJCiKave!1}3Tl)Q7RYIPGZZ4?EGPJVeL6B(rdrX)?U9Zka3d$@ zc49`V!z{q1fsWCAkV_NTm`?ZG9IMg1FvM8Jf==_qO*GcR$7&{4QO?{=I0$iz9F<&{ zkz^vQ{#veclT6A6nL=UPo>rU^pOR0Jo~R8Q^k`;W%!S=nwOYJSG^)w_YmQ&X z`!cunx&8b&q3fJbQy07`>dLXT3@}hsaqrFeZ-W6|DW;`^D>IL7f&9oSXpn|vUE^|0 z<&3MKYPoWibhUq$vkI$p6q40BvEun^Z*76?!sJ@bzVwqVEd9Sf84NP8^!xF8FRQA_ z0&}Ug7c4!`u{4@bGWl}H(`X^J9Cl2N7NeYo2S-hrB?94qWJ8gYVKTpr%rH~VD$uFl z0;x$ADRrnrGH(!~`a;~aehX36IEYR~kTj05Q(2~HXLx4~m}+l;+l&13%>-;3s(eP_ zz(-oDoH;c4K1*8MrtyF&`nCpV8V_Kj`ya2?JsWFqyNkOwrNNic;DHH~22XA4YVb|) zY8?8;pD^-l@c^!r2tQz!=pZ-Ts~$_?ZZ)O?;b3YxCY_eRJ?b-oFZ zK)6YK)#`l96AkKoJChSK;siI;;%!>mvKF5p`KZ8~@NX&aMDp7l;*Kltabjw-@aEHB^c|LX~Vw#pd^ZEd&gn(lDbi7W(#Rv^5 zVmrh2F}3v7ZM;}}{`jd$`7O!A+N=wE?ps696S;_PTFjUcG8?|3R9fWOvW_B1y0ZSS zR6hwcA~{O?FI49)AVzPCd!ecJhmtMDx?8z#Ke7{?kDjw`eFxJ{UD zZM<#|5}1fEAx;&>Flb}}U?s_|C3@rpDEv4^-~JmlMt?kBCyed_qq4BB%>qU>d;2a^ z0s_>m({~6^vkl*)cfCD~wkJrUl?AhgytQYH^V5G^kNf_3J*bX5$ZBXw(t%6;=hIL)14~`qs z6W>{Hve?h_!{SD#lbjF--BtMWOLyCrg1Lb$2i|AZpeo)*5GjGQ=j|&fBW(G{K$X))t7`gZ?)=l zL?kK*W_gSRYg-N; zxo#t~{d_Ik9264sajya4uZWpGrg-IjEvmM?@_9Mx4RH|s!fGzC?P~ZWW5C#YjGf2* z^5};@@{Auo-473d8TZ3Kwv=}*6{lmF+LN-c*TH^+%B#6=lbn0dEM`1!(Z$?%Wss)7gh$QkB=@*5{{4W2_+ZnM;rzsrdkcv5~3xg z@v8We0G4$Dl)WjCpJ5x7&WMh(1E>+d&`c zc`&$^3Ih7fxbmd~LtjTmVf-Gg693K^Ze~u!Nyd}e;&)C$fDMQ>+j-hr^du48pr@=s zPdsF15|1sEEMkQLWum9XUK5s8TYF71(NlBNP^70Zd}Y(<$xLApT}@BG_?+-H77_q! zqNPuOPru`u;<12RzCTtpXo)D<4Fjc)3c={!KmcY&>s{84+Vpleuj3e=AY605-T-xm z8xAEZK_I^*BO}v$u+&Fxi!_v1e`e48S*HBRG8Qjjy9vz=jONuJT0=r_oB?#eFO1-LMu=8vGHbAR^(P14i z6h}TrODwl-l9n1$X=f?PXmFB(Nc&{Wk~|IiA-$HyC+&nVlhD<n^p8Z&{p-zn=St>L*ifxVh15t~jINunrcSxg( zUC>xfje1TAGt#L1X8gu6D--N+4(W5FiE@&v`F&gniUSaW?{y)_9oH0(NC?s=|2{&` zZ$mn*7Uzl)S+qS}ey}jL#VSg;;|F-)I62p~%6-Cq;||oFYdXn=FozIkG|rotgPwt< zW8jo`AHyQJmTeJqpdZ^>x2G}iwu)3isrICGN#~c=y^)_aZPU6$C0y&u{P+S|w^wW3 zf3k+w{n4$USX#H&)VeHi*IE`OrwBt+>uN19%H-qOjhoTBVL(yq2AVUi8)$A!>&}D$ znbswTA->SG?o2%()4DT_0ST@s`xg#>4A>vfzL-mNiE|wDg8F08p!&~-@IOXR$#+Fn zXgw;gK1p)}26^=#tRVp*uYTJaYA95{u7(H`(^I_N^i-e#y5-fwA2D-jl`T`spMosk zl8dihcd^9}-DNp8D9e`aasq2H(p&QCH=Yc-i=T~`G`n%t@)oSqCo~HEs4!QpyW$HS zIy|}I3!E9+x=SyBBb-wp^q{-w{PckAHhXai&$lol6LJbh-Ul2_#3y9D*IJ%%pN3G9No zrpRxK^l@=N{=Ipx(s%q_LFSv_L+;Pqq1W&(!AvMG|vmUS3}!l zphv4+ghy=iK&P5DBlnR9EWClaek^-uye4~|7>;c!N7G%C?E*)8?QC#my|VX$?{jB{ zUr>1NkeO3mRiO-Y>$(X()S7ffVzar>m-^?g%rr9xAM-sJHngy^sTi-6(H0k3h(v)| z+52IUrIk8p+h!7z_Q+)f`;kXkpHpVwIa4+i>ovv@q9?yVT*rC+UbT>Zytlh zL(qgRQDaFvUF{-kgg3k5sye*M?6rgiP|+P>i=nx@AP%O|FYuI{K*2Wde6+=;6M?7v z*GYb|Ziq0-(^0)px=<#c@K-4rcgE9IXJP`|bw+Cz5I(Uo=a^yd;|gWbx(aH5==?5r zmt*bR1?J~o^YC3m_$3ZLn5h1`$Sz~!j~?5OjGwJ93iM<#sm;d^HL@#ir5DDpbx%f( z+|NVYg+fQhw&qiV88WhT+m85d^91~VM!|0c zT&IjX@x~?gr%n1B8McIf8H9f;tvarFw$iGR7u!s%UN>z#BvyOMxN-Lk8O*}4a+vw& zI}f9As}H{G9IRIDTghb#xTLC(jb)+CYi_%{?2+m?H+&pHQFd30InU7Ns&CK4wFA~N zOh#-mXnorUutH^efGX{`NkQ)&gFR|41T7SS7GhL{z)z%w zNaldS?wX_u>+i-gbn7>Tmp0NUCCykM#MO+(Ca*PW@h8{nV2A->iD``vd_FQ*(X;A< z8tNe-8Yf8w)lrJI$I^k!8@82!IV41Pf^EfPNR#BTbbOP31I%rYr8D8NG{9_eCt`RJ z%vU=wYA~ZRMBcJL6QHL9H(wt%GOiY6oXnLA0xr;qz{Lp_VEPg_c$ggH1|$#(#HZU53_eYEDDd)u=5z`({8TplWt=rhN~}M*WBwiC#&!6e z2fD>cJ@8$+>$~7~?0GKk(8WQ&aBYFbNE7ox;@)-FXb#1oXsmQDO(pxFW~HWQ?4R#E zJjxH3b9WL!eN2LvJ$d>>rgKYx58F-tHg%IE!wx*$z|bIZn0Y>&HUD^ zvT}d&fm|jU&#@7dU8TruF5-K;51%^t1~SaqjLRxqPt`~mGkDfOSm->>R$WyenbF|! z!)#wTD_HPR$&|Fvn$s&KF+f|!6>s#bV1=j(oT4vVdPZgEw)%|T$}?SsPzLOAM?`9? z`xig{0pIH0p@JKwQxH5j%HK<&3f)o8NCg8oD~#!rhh;&#*Nyf176QNmDzc|(V2dqa zhjlb{;c;03r_sE?#*>cD6?7*uV_q6}o`?H9%%0_(y@~M9B5gb@BrJzgBGUg}R78l; z=56VEU@3HQ)s0u$-mL~IZJ^$@8D0EGPG(Wg`rh)Wohz%;Y^Z^I0%{zv!{-5qPM{TP zUI;EO4%Po+D5bCd;YLn;(=4 z`}>21$;axJ()Z~)l^M-hk%AmdcGye+p0t|4hG&);&2UT%(G6(iXDc>R0#%{Y6_5#Z z<6#m}wMUwxmx_^GZ>pn1|3e51!HEJ*bH| z1v|fOrZV{-K2^TCTzvRm>P?uk00{!}Q0E8pxjfqS@TvYAfVa4p@0#OSG*0VhFfWNaJ1(N{gdqsqDBglE~#?-5m3Zeq05Kq%(}PVBLHLkqW4 zq{LYe)-8Kx_8R4oJSSU~s!&r?T8Qs7fKJ%(!4VXCWsxU}0`ApTzs9j?y>rw+po5hnK?}kn{#3 z^H{RcK2cfk7-|4jL`|$L8|^nAiHU-CtO|R*N;>fM=!#|Rd_HHoAc8_ZxMTc#eLkZP zpR;s>ndG0z4ef<~U>@awNvQG&jNpY(2D)4*2Uq1YfVXp}NdU0HV2!qAYlF$T;d?sr zsBpik?-OznX5uA&(c|nE|8}tx!kK~zq7f1@m4?YzSwCbLQETS&6tP0ys|b&3o9q`d zmdiaFvX3?jWdCN9@EWf+@RxHJ(*P)NHRYI!a-Rw=+0Fb*aPhM_K>WSC}ovNRVevQUWl@J2}N>;T7nL^c>2aPgj)SMZRNiYmoJm~6& zw*iW+@CA>;8Ss+&)jOz;MD(Gk9?)VA#)Bwl=|QjTJX9rt#z1&@PQ;Xnu9%%wQ&3}r zA=U33bdK#gG^N#gV+1oq8Hkr|3>#+6%7ZgALwv1f(1ef{{L%=m+%l5R)_XpW`qYJK zy>QFo7k2lg?q={*7qv3=L{N5=q8N^dozgd?WZfStmSF)^t3X!rF$bOTp|u)5x+{9G z$1~-}n<3$&rIMuL!b~m`9p}~JtAVPb;vGcLoSFaJ4-^RT-b&-}mym_5wMaSWHql95 zeKC^}C(2NQ*bMhymGkSZ{A>@{Ql#lOz1CcT6DCkf-N-Di=XO$$uE`GY!MSG=0Z%w8 zT?xYiu&vjJah65st26NtH!DZQSQf7FZ#HUeRTS&^Y_nswoES$@Hj_1P?GkpGJ&3IH&RD3+*1ZdxJ_8^RFB?+ z$ydFb;y40G93&3}taqySa>p7k$F#JuM&wr>R93YY;4Yfmo$xmQ5~B;_p-u^fEPkuX z!jy}rPTcp>Y`hkuRNr0M3r3(iMl!+^ zP{;UV>dRRMLEG$3{6YmTtB!@n728l~2Yak~t9%^Kr*{&?2oT-_4n(3qWbQ}@0n0i? zCIU>vx{JmpvCdZyQRGnUc{7g8yiw!4pu7(ZLyDjZSIOvcKd%ry&Ko^qPa8cRpcTbI z>)Ar=`M;i_C|6+*9Hj7;kt);$slxtCNK+JIRvt7fO2UQZ5`HAX!0iE?6Ean)*(H7* zg(^|I%Uw;_7;z*0n{6kVfI;112HhB)%cLA-$XGgC63HP>obTQWZ5#5y6LvfzoymW;{bw2_-(+Bql|Xf^GF zKH7J4I%jcb2k@G`#)ktt34iA-NY;$$5l-pn z@h?y*Ob34mEy%zXX6dL0%SzNwJRlBsD+g>KzOAdKLLHYIkoqyh~rCV>Mz3eKrz0i{wV={5-B(MJ|EXU7@x`D;`+Dy~IRd z({ZW~G#^PI&^)4loCKU(%h^{0bOmj#1e$D7F~A!1UGz&?U_O)?&=eNiBfa zwEW`ZIoUTZoofl5yQIjMX1m?ITXZ`rqsY8MI7;@PSvNV|9Q@vuqH~g;6^H;~`cbYK zcAPcZX*Jg9kITLbA&R2M5FMUtUjEtSa{0k)u zXv*JEJh-%MRQGJC#-}hbzKqt@AdOy$ulXH8^v!Fr4}O-@fxG8bUWxl%$v5Jgt9=!Yw$DU&-0R;G3>)&5u?b-cl4x%VR{+9^z1XIa#^Q-np*~J!|PO^ja#M9DD70 zujmO?oe83ePJx9QTzWQU=u@*u8E?e>t5}S@Rq$!RQ09SPsM%P`pe!_e@d60;@H6RK zqQk@mO<4*s2ueJn`TP2*zC-1FCnlY7FEr+GQ2hut(BcYrbTlF#Z)6T6K@d!;*ScGta8Cyv?`*9!)c5)gX^ti44xt< z4|*0S5gipzY0H#CKX}ix*JcV=&Y|)e@0`EYk2#u$HMohGTY9HLo9n%k;>3Ci?ycWR zY%{!bo+%KCMxBwu;ES^JjF9hT{T)Hs*j?ibmf>b)1tC<(B47%NX?p^LJXb4MDfdB? ztDh320dW90gp4S|h!)zhbplRC3rKb(fyIQ0k70fpHswMxn1$wYq=^iE6#$3eNl=G_ zj3$|cVjmV+2=Xe*t^e4w(D|atj+7|jp>tl555GNvzy8#q>&Ph~#S<}(3j{(Om#9{Z z7@V&2j}uaGt~Ra2s69C}mz(w1K{;RrmT(^c*rOQ!*B_RNA746xdP8_w+j ztPz|hL~NdrQw2jIT%3qDWOkMW^IYL+H4YI2SrT(?(2&tJ0a($?C%VNPw7f$SaBUgS8aEJ?G+34=O+< z@jE98rIj~$3{1qJgA5|bPf09@M*(22gkrS;w<(q^H?{+%1j!V_Mu>42Yd9j|%48d) zy--BWKql9%)tnTvA`>G%(nN@V@i(tkkH$n;gG{qP!0M?LVKfdO0Xud0CIf&CGE6>= ze6LmHXLO9Clmy38M5d1{R@;=43g@|5)y$9?0`9hyY-PtJDGBUMN`emnIUyy(!Xhfe z7Z?lQ1K?U$@T&HMAd572s--hkb}ak9e>Wct^wyfM$j~*t?Xy+ z&sP+tk+wp)phk_}j;ggt{sp|nX*V-glw)*_0mKqkB)OY1LDP0D>z=VqisB>?q5zxy z-#DrarEV+A!xe~j;-;>rkl9T}W+GqX(YSuDBrB=C%%nbs8`ez$sgEc1?GHxuHU9aV zoqYCuj2zc}Bof@&wr`A{hHmC;gN0EjGG~m1dr9gSCk)WdcdV4m?_P?bpQBfX?EaRxAhTSJ)+54tc;r46P|ur>oa!Ou zNbd-s+0_ko(W#1pdt zQ?Eccghe#m44fQ7ML`_Wfu-f zC)WEB8fN{~uvr|NJMR^`(p<6JTXSb>jk$+IudcKKF=0=@8=JTMvkOQLd7Qk@8amLF zB{(cRX)rKs*rHE8^Yg=c4;~s*R`b)6-C^;L3`;MLju!)x<%%Jp|}QOxjS+ zO2jJ$$EwFOq%KmJ`f4^3m~r@5>^Vnb?U%H+V7%SR7efFYkhS;RcsHzTLR`|jJJ2Gv z2W&egLAzo?%miLZB8&Q|AME+diPF6gfgjj$_}6-QhfT}z1+4);7n1RN1#9H;avT;a zVP6v_e<_&Ex@eYMPKgvB~(JCKq#t zF$mWBN*ZPjBntcVbE^2R!7&D$EGQ0ci~WQRAZ_I9If1}bF(>34LpOIgA?L`U!w0g( zgx0GJt+sG8{I8DIBTDmgWIJxUkV7SOIhq81N7XT=@Kr#UX@xDP0;+K_)--;X5EnJ+!36vsUL5HWv+!905f zLB^=_by6~v2^ol^v6HxxI;coHk$UJkml4Qc$@_LNkL2`U^v< z)?`7A;wFW3_(cb66z74>eQ_r+NCm*mzwi1qRPM~Ln0v5I78v$waoaVyz{I=RZ>}qm zZBQ8$x7F0Xk`a11Lmq?HrWFy3I8Aa4$Qe+Q94jIa;;qa*uyd35+v0#X3&oLc3|xs0 z=0zVgEgC%xITbNj)*=HpMtr1^?JS`0N?#KYrWrb)Vbp#%;IQT-Zq2DiVcv!SB-YJ) z(0dNcC5Ir$arXhzi)ez%0-BtnZgYyVvFPpIy-}Hg&qtIf$l#~8#-Jm5gXF|+AD5g* zU04E8;DVhWS!VUjiw#s)DpAf7)+9Iw0f4&_0435ONO2DUgc@aoYEokmQELr8q@F=F zP>I;m<)xe~mzTtpk-R_~HVG;t$%wBu=5TvhSDIk*?=gClp+@ zpMh!ZI0Z%p`hk$-53xBbiKZF9GPlUkl&Hr%Bb#KLTjIVX8>$&Fg8vz0^$0io_3({a zO=u$w0&i(Po7C3Elh@}&FL-#WwstYy!En&lP$w*=ZBAEkp#4#OS+#zGv0l>dc_Thl zzOEW-7OXQO*!A3c^bWPPAE?xdS|~6o_{rqP4$SSCu@B-^y2tdC847WtfkcqEsGvEg z2;tPJgsBH9TT6J!h$L^1AzS=bYAzP5d63TLFD^vMxPb^xs*3Qn*dvw70p3BvjAY&EHGTnQh>h(^=jfn33MH4+R^^!JKS$H$&I>5dZ7k-LxThvJ^Xr(>HI_g z!hOo>6Zh86W%bto5?jNjvFang5LzDn{0D3sS@oeG3@!Kl`_S@JZx1bxWBw}yieWx> z@vD~xceT)}+SzYxchz`)n!9T8ZlgL0Oi%@a!eS6e5AJGw`o28e1LIA&tMT@~Gwy23 ztw5lurqm^dKB z9B69r$y6k6)m^Qzd2!rTKfAr*t|9mo-7ajPEG%Y#|4btG^>ri>U%1PHHpwsjV^Mh~A?5TVp75HQnYmKsDUJ2+pImTT72Q z_Fu#OH;eK5TxE%pgX`i|Hlus}7=WZl;wq5G#OGf#q9XNCO$U}WuL0UgM97lAi!@(G z;l{}=jK(xoV&^Lxh5ci_h8Yu;3mr-4h}C*Mc4ScDTcay zA~)lq@8B8ZR|EdO3r0{DA}{V72a?4RFNjnnd1o%NV?L3q`N(Q>PO?Z$^fi*#9O<|A zEI06)9o-Gr(#X6mB1~$uL_~0#oved~X?CnhszOVp`ckZ7-Ow z?lvoUZ&d^8$!*{^@9gBZ;y2&5dA~Ub{c*oJs0j0$nMWcGlVnZ7Y0Jhz#HPEwYvgo@Z>{M#w;>#X-cVuzl241{{LDJ)_L99agVvljnAy}KC{ky+cWFD&#d#JYb71VLilT~ zVQeP*3ECYmg4)?JOUm*lQKv(CH5I`5|n+cBc_VowyFT06E`E7p@Z*gUjp>Dylr;cf`0moi znxiFk(O1ai(~6WKwXteq-eP0NPD-1-(s+zbI|?;w+0nCN;}#V$M}W2`$6lEttRbLI zD3ADH$TmA6o^QlGi1>vtvI_@GioLS2(2{oVgcT_ZuUkaYgCO?(r~;B@j7R3|03<%K zA^{>{BZ<^f04TnXSVt9Gg1h>_|epLI!K zdp^2e;fNH^qu)y^SC4We)m^G&FuRg>PMWaoD0~9Dva=GMlHke@2GZoUn*t%s6{}19D*GgsvalsdrwPj;wBI2J z&;BhJuFr*ZK9n{`(i6L2RY$r*;8!c&rIDwII@W;h2>v!OUMIttHw~Xd9GvtA7;s#8SBJ^}NQDw8E|mkQNZclVP2QVfxNl z6MTycS@rn8adiEMU&F^$h=a@0okUDeXl53TJC~j%I7i;|u*useO%z z5R@|6!mk`$w4s!}srw^sNz#>z@^O9f9)X~plB!=aZ?w3;RnIej%K|+PA@TvEK|YUi z`Uq8-M3APjL@Bgd2`TDx6xF`CWb3U1Rl_Ja16s02_wuFirISbLk8cBi;8Dx~c4@*x zMSpL-a!A#Amo*gekd%>LWPhhhD~g92I|(}Vxy^_b-;C#NtP(bIGob#fvflOiBYM3p zcj?~ybFLjSd$=-XKnXi-5v6ePnvmJ&kWo2+02wNtPJs-oa8n?oZS|Xi%>L5@wjl!< zgq$Hu@LvO2m~~^wQq6@)WC`Ds$WoT&riKKvC`!YSw53Y)qw+Ru42c1Z4M{Jb9Fkr> zIV8<>vqS3JkkIF%TYKvrDq~}~H68pRD(zN}JGmC8Ks+R=kH?GZeZPB-eWm_0^%y!8 z2P+5Z<@Zq!fcviPd`OI-A638MLmh6iW3PMtTSd1gj7D`t?v-|R*ukTY6VawM;Rey7 z$R~()rDhw5c0Lhp*tQ#pRBrA$>&PlL(f=q!gdrVBV{k4k4<;z60Vo_wV*m<|0tFicPV2Pu6fl}yz=_|z0ya#_CvxoKp*@Ax_A#r-lra1 z&GOA9PJ7hv1xOF@F!c+w2ld&zCi^*ksynJLyi3>nZHWJ>!(j)zI39C}o&xKOMx9OS zSujLqp;IjHx667Kd^O;yy*-R66uTVpv{$c##`YwNJy-C>DOTiMQ!JLi&QdH@bVadd zTZm%cN7&&t{qJrNWzCwRLF~?0zbn#6xwr|UoQac_N%R2NX1;M^HDrxGX!keOaHV}6 zqI@8r)AUbgU80og^0%j#ibg@F=`DMIdaZtOqNKe|ln+q!HW4K!xWX63;1)XnJsblo zRAfZ?1m8N<_jhX10YQr*r6xs@|4E-v4nheL8+k=uE?}NK*LKr|=s{)bOio z6d(%kcRN;f3!Y>EcCa zQnw0ZAT%rkT~23GA@Dqz^fXBNJrOX32yyl2EY7WaWqo zF(t|vj8jIeV(AnPWz21YGWt!*5DQIJ&)XB&VOmYb&8Rg zSXQj@C|H?k8i_N(NaS3D3uz?cEXzow{-?V&G7?|j|2C-5Tsjj)>v*dVwM~_X$VrQ3 z&EUan8w4MLohU>C5S{oKkgF?7L=XUZg>4uV1#!e4* zS8sHr9RjpR9vm#;vp}BIwpnXdV+OMi+zkII^D2_5A=^2tKJ}$@vYnrAFFQT>mi|le z>D$K4hd&I|6n=H6P1OUkUF)vLw1LpPkrl&owL|JOsyfv)tn_Z;PpB+#xX0D;lp*^vq*9Kth}u>(x4D%#jl!H|(_1 z3Ko)5Ug_W^{p-`$k8}p7#JAt?GhOzHUemue-N6Hzcl9yzdHUZj+91qT&T#IVK!<^K z#bWhuorL!DJWa2{nx2X9eDy$43jDW#{_~R*($Rt2kV2d@DAlV#ha&YR zftvn-i=X7){{QT~4YXa?Ro}b!KKI;@bMLu2`m*(9Ywcspx{7T{wq?m!PNIEn%aUa$ zvQgxZ#EJ6(I9G~eJHj>8*f$`8C>f(>kVj1t26`pMrbVeKp(Aa1MG2ubkb-C_aofD2 zj09?UKtxG`d8E(p_n&j^efBx`Tv>{f(7y4;wRQGhd+)X8nrnWox#pV7M3Rdi%F4L` z=1-tIKAH>X2j92|N~cyqH{qfk@IJo;SeO<8g^~#J;&t8+mz~92|D`XVkGbBY(wBya zD@2P%5X9+bzFlHG{Sz&2FIGhKZi@?Y@ z8jKNEs4n(}UvbkSFmkRINm(`+jAQa2z zWd3dGSc>hsKGNl^2mU7au07G+Ks-iwhedX54?CXewv^a;yP?;HPigp@N9?!?u$4|N z^HVC)Hj5ACc`r}L%#KCvMDW_>Kt}8OTPtD$!fo-l_EqijMUr+%M|FNyIX}+ro8ISO zLiv3k`k}Dls0cW9)R^358*4Q3EL*>#KdO61T#~c8XQXAo#d{1`_Z!6OJCAosY4%x- z0S6~&{$7Zj7fj#(gys?5N#M|vVg*T9RuJ@(fmjYmu5LjzqW#>(HpX-`9`Pnd@_Q9x z8xkg?=yB_VDdMw>Zm|u>SztYyq%jEtGBj;x3CSEh%hhE+6KRRr$G_KaAOE}3CdNMg z_40aoaSiq{NAQhsyk68yoY!1jE{5%Crs?7m6}(WnvZjl*B}Wz= z`wN&n1!$e0gov@6_(*IRsEtT-qk^e)8aTGegI4T4d@qVxQFsTOmhQzh!*z|*{B&VT zE#bXPF$huT3%5LLI${#*tR+>TqlP)elgv>Koggln(iuv8F{zjittrw9PjsY3hLse} zrb(a^tK&NxRch1Gc%p=XFW{+=l_dcmTazRjDvH4?Nk*eVS{l3yr(Hegoy3WyLZ^R# zr9%X!JF7t;UMkK?(7h~{%j}ru%e1a)nMVWWm8IG#1;Fxne~tf2lKh+@dl#c# z{Ei!q_)#4hIoab^Pia(!4?;08F*w^eVDGlTb_D$!m>(cEoB}6H$FdfT`i^rbr?02{ z2#0LAV;O6#WY5JN%RTlS;!#FUSaNYf#N-JlKQ{Uw9SD*ps1Q9kOf_1Jhjd_nmQ!N}oBO_1_pL4bhkOcmP z3!VYnfEmLxwhW{i{REr(|+Qtu=MNaQ2 z>bhYtXfwo+(DK}X;wjEis7wMzD{A;~G$%LgtA#Vx*Lhr(H54Q#Rc5md(G5q6n|}XU zliT5Vt%lKKC)Ehoi+xjv7OYm`|`kdz2IWs6?EE%&K(;D_O_b#irmY@1KHef&Y`R zeUH5W%O*8(Nnh^SPx4tUSmGtOER3nlfT$YMlL10<)**0VU`hWaIYlrfP%+FgM$vrc zh3hCZ#=ZHGHf_#avM-MoTX~y^D{sh{1uJjvwf)VSSu`+^1CAmYmvIVFBF5m2LfZX9 zFMRo={6m)kejW7dG%y$=ogXBzi@l-&y-vXyl6_mvO0mZ-vdVw;)>h$z-)$E4s?ow( zH2~`Qsg_sgdSZxsuBSElQRu*MsD2brN3qr)zk){RC8Lu8RR} z=Zv=;wi1;hUkwVjUL;>$2SNQjnSWEwaG0>Qp<|zKkJF?772tw*KA$E^y zS4W1zVq;;Q&6g(l9;)0ehVx7JQxVGZG4oOt9k8)B*h!;fVXb{+P3t3@oR|uAS1b}j zMj=P`>HtW&&sR^anXG~1g{!6{N9BIxU%7UEh#F_IlL$5aeiE~}-%gB&U`3OlkenX2 zGFy2U>)c6ahf~&hAeF<)Bno9}2Squh`S_%UEKWRMe)(l0bdV1GHTSXQ0e+Pjr(xWN zZV&P+M;2x#C*Y08V|$sxE7(lzjUz=?&y@ePYYL@Q5&?9gpM^5St0SB~7!hQhKSnF% z%%emEG2%;81NkyJaU>%!Jx(TolcOd5u+M3F5ofPDCQPWp!`id>D-~I)Owo#(_-!?^dx`I2S9RY}yU0c>Npj1{);LpbH zRC*m%ywE=<9K!3oG)On+P9#me%4V4XBH2(9iTOEJpi<1e2jV zU`7t^mKthl*d!VwZ(kgTZM~-PNq#XHLnApKu9vS{+;}i-2s`YbJ8)mE?OybF_lj_F z*g-LOJ01^Lg!KnbJl^?TV=+V?-~52S`2k%WIPn7=37*K#b!w*2Il7PR8-+8q3ae$` zM)7CjbRQGCTzu6Szm94O|3_6=F%cGT7T42~QrWQ9HYg&*mOT;S>USwV-#VQ|SB7VU@V7gm*sJSF{Ry&eG?4s5M%ti*vw*ioLMXzGP7u* z)fLmn=g2Lw$l1;Hp)(6jxk{zC*e?wXlX;?~S6V=ZcB2(PSUDnNsXI!B13xe=auCpS zLuN;dz(?EuBpR}utSRGG3~%O+;J1G9Ym;YRc0)SpU}OANT#fJTHo4xOokYU5MK5KK zPlEEn8gTWoaEG_aYQO=-)re}q;VQ?g*D%DOzK|U}FsN+5^~HF8LBFaR7}h`fO)OJZ z<_ERaxno9H7-s4}`OA}1SxZZml~3Ww{y)6%%Ca!v#H6pQwT3~L-PT=YvruEoat9dg|4No4 zSmm0?S3t1K`JWXh*lJb2vaxGWhBGWHf&{S!wG)oaT;TPoxb|1zlu@&{g|jlazhWQs3G_OQ3Dg&qVimLWB)lI09EP*}igM1@o|VzCBv zdS#$8S=%Q#FeI!z!Rl1FAYUyFw0M~5dCnMVd=Z8pN;X3XdZjjWJ3(LMlbMx*@G5E^ z&hEeeRfxL2<4XVxXZKgF&&>`Occaf0mK60lz}c8zEq$KmS8EJNe;BR~SD9zGd(CXp z`Q=7woasv*yS1X8ZEDP?`8KNcz=>Bhn|QMd---sVjP1&3B3SUe?WJpb2=1TH(%2At zX^4UQsz%FJ$Pbq|J!?puLwf%F)TFq{M;VUO4Mm!42 z7CU>r8<2@l{TAe-jV(~uEBJuQHhK9QBl7h@>yRmFdH z&@X|hb+UWt9AJly*|puP!xHsziTa2#%0bK`Jn`4RPN&XoscMnV0O>1m>@Sv`*?hA? zkW2+#Es^{;F0QYl2Sjx>B!I^A&6DApXYws!bGX_%ytU8)?@PmGJjD!EiCSbb0Yrz2 zpGj|TrwC1(o5_U61o0blEp!p)w`k#U1ydaebY`x*qW*5Y8T#%iPK7?_mpP`S{&H3v zH-S&XL!pT)pmagA|IH!xQkurR5>~u;S5kFeo#8A*o#n1Gtk(-&Z)AZUC2=+0t0ZhT zKfhFt*DB}AFChd$2b#|PD{0U7^K!z5!my<%-9R*t6Nm-hxUQ&`TB1^HrB*spej!(9 z`R1@Phh1{SSALy!LT5c?IEh{JF>LzqvC54X!azeb=DV1?0fbX zpvC$NR2hl0*OZeHU1k!Be-0R>WT1x%usT~gGX*_wL4nZUHKFsv;kvNohmX!CcS6!$ zvxy^9$<-9ngi$qjWF(~#8z{A9VTr7kWx-Ml^F4}>pr>nX5!LQkd%3!IhvvRYcgw;y z9ksAbFMENUMfTz{d2PG`y#xg6dOeQgU2JPDSg4sTLVhD@oo^~$O!AwH{rT?VvHX_ep?pvAK)$!QKfkrOJKtAa zm)}MMnLCG-@w`zm4-VVHRh|Es7I^K8|L#l(buIG+q0@tJE#a+WUppx#Th+EzqwTZ# zF;-l+J`sbWnhJ_C3z>!Dd{lDL7o4<^c{_V@!|nMSWEYL+xAXrSCRwJ<-w4ptplbhI zzMt-bZ5&8n*yZC|p9=doh_-KQR zDR43YekO}2@;4Vp^0yT4%I_zcBT7u=EbF^iHt!F0k}nVCcJx zR{lLS^#D!2oB!v+^864@WLh$;*`*kH7^m=AeWKrUK82-mI?yXpMwj6)pJRZQg1QR+ zJgBQzF$`f-53GH2F-syOiwK0I6bPJ(s?$kvXR@MhE8z&ThU7-M`ni&kwiVDOgGJZH z8kuOux5y&!`gW0*id<$J#P4i!metSanV^crJh%W%*H=Hacih{nnsJ+$4fI~K`^l^! zvt&$@XwGAHqsq0R`T6?Z(Q(%V~j%KA0L4`EBRL{$7LGDdp~|CN3LT6+tB zP1kD-zJHk^S#gP-n=ONdmd$p{L%8$+wAQbmM{v`COpVnIc;!a_}75!J5^ zmz6~tW&DJVvh@-zqFtgw$P*5@ zgmx+*E|C^0o4f>=tA1SqGO8YlD2luBd&>HgA(zh}Q#V2rdNSAD#KZhGh~UeMkdGl| zFGI|(W!Tou&g54hk}qb|uH^Zp{NLp|^V$2QQ)61yvr^7Gtjoa}mtNVf2Abkr{>UQO zNYV^>F(cchB;7D3TO#A9LaYexG7VV9PhaWUxh~;LVQqiuI+@B@AO%Vs-=WmY;_ELp zK+h&#-54$1RahEEr-EXpwhaR*CJ>fZ==Qg0f3um2QC9L6jc*Ans+I?6QT1*OGv#Ab z+|)Z0mi84g7BIU(K!w(&ptM5hQbw^t*u;V z!*Xmb;8`Aa9)dbvCyQU(H*SE!C7Zd~X*co_bg#OXN3VxqbVK-?t~E~GCHE?c#T{$; z8p5MQgNgesUh#2L*dm{8k5(cf@ZkUo9LC(=2pu2tQ>GA zTHIExW_%NGMA=1oL!u2Cm@uD$OIzV4br#U>5A>@UZq|GBs@E56s@37O`3mE#6<};P z;K!P?aEtmq-jG_ zc^(KU%|nJ4JR_N0vv@`hhs}G*XL(qhH4dF|f2jMOaPU#HFv5Q8Z;7^^xe>_Arui;E zmE@BZ5vIiaP5o4o%gQI54fuI5lBBcK#J>ym=_9B0Q`3-6n}24u_JC7c~h`LL8tHOJ>XDsuCLt2)YQ^Vh% z&xP*~cki`%`}b+W%#xQDfvl15o6eGy5dwi4GZ47k7~_x_gO8+T`lQGq6Dd8F197$> z2U9s*oBHXAY3QPq%E*97HkHcJnNm=6EOs7&sKrx|Zuxq}J5o8&d8xU)oHnI$_^jkj zQT{|(siZZzT%8G8+z{bfnoXt3QH1?_!d?9;=k0oLQ0273V^UCv#MPjB8t`LfS$K!~ zQdORXcj~@sIScR7eFat)zDxI2-?MP9?oAqtC0m$y?~%$`A!*j)5yrYY?keZI2Y_>x zvqEAQmKjtzE!P4-SMjw#tEn8$*e9B$=%RdSpKEy~qNJ8xJAR(9Gc6d^6b(?l@)Ek(@qS+n{2luEi{K?9? zj;ihnjFoPR_p2Fyn(TJLs$(fF-DVg7oHu`Q&4gn9bTrM zF13%gn4ytTXVbc8`tJa@ZlK7B@T;niD{!tyn8bKMQ1#KMyVdKX7?0;wAH{gwSA7)Y zabNXOyHS{Ku2^dt4aFw7C{PhYu~Z$#AlOGQN9ZNb<$R(Glj@5YP$o}PRy(}+&>_RX zk?_9opamJcH#{uq{1AV%`$%}x`vUQDcOB{cv&Nd>;`-peHY9wgJ*tYgLRwtPQSUlI z4zM?BkL&I130OK=JpF}FC)BgmeQtJ_#XCqfGYts|n^Kg*KpX03TuSl#T=CgYoCxa~ z+7SIGZKxmDhEv$J0OcyTbCH(7!*btn7gog$Z7hdlvos3Izm6y=wCuM%dr6n>SiwQi z`6Erys>K1W7jXsxo|ZneMqn;M^91g;r7rnj68T>Q#HA64ZUo|z2*gV6<;~DC-2zwC zi)rYpj!Vpk({v-zyofO?r5-9-tJ*;HNUvh&Xyh6sOD3oMEm@yv*dxvWJ#L zdIT2(Id>?%hNP73aHmlK>ONT@Y*tRK#Eum(K;lUrH#m;u78CfODubZQN9n{CFSn z&>d0O4*=;0>((|Zc6_N=c#EvgaK=;Z`L2VLQX!UDL>}cLl%8*17FkOUJBC9+LWDlp z34`o|or(Jp*jY>KgMAyw@4=od4m5|Vr zMJBN%5a0)AQRA+x#A|N_Vi1X+&C*OrtRGild>}M}fj&McQ5g3y8w%qdW`v#XVeUhr zA|2p^J`}Gp+PV$Jr;&ftC=V9qtO+u*kXIR5DZH?$jik%`PaID^ zfz1s`T%VBRT$W%{|Cp>o?s45|VttI-WgvgST#@eUwoKdF3OotHWu9bLCQI^35H=nr z3~dTmI&BfQ=?EjCj_n1dpmv&5ZXF|D3JRo)@16ILlZP{vr`uue*G7Z zjV*t2^oiGy$$zzF^JfUoWCPl$Hv-@Il_jVwv-6K&`h4S64f~QD{LQ49HOK^EG$55J zlJ_L(Ql6e<-?F2pAf2HEsqhD81w(x4A6!0wDs?S<{cuxYW{p^-ddX(TO{_U@7C)R%%H1DIDNzNt}xbBo}OBm=^m za(P9(F?*<|GIzX5UM#?yVrGV=mLJ3$xf~!)@P;F#hd1_k$28Zh(ZJ!hrn?95?WmY; z*7;uP@~J%<{#=17xl-z!Ne7Vdq7~GzKpLh+(C`8y_A2opYi0o+WG0*=9>xq0NRUSH z86(rMgr50|G;|@rJEd`8bYxTXsB&#-nAE_Z5nW>SY~9g-u0U*P*ON2Ovs9O9VcA=# z>bH@k*xRXEF&>D;PU?v$hh^x`(AK=Do3=!lTaj93`oD${Kg-TIrjFQgEu2%)D7@vW z!Dj&kK2VNBYrASv4`g|&xVH|gCg<7rdquBzXr{K}BR|3*TT(}Xrcf~c{pHNayae`& zo#`>*h2`$Quivrl$&W=mJK@K7RO-14`3sX736nf5mtWiE8(`dI`oGFsOvEpi*XxQKP!3dgDS8fUVTP}xKF(b;GojknVdkV2dA9*R zZmcoh6@sjXK1AJmJm|9`-W#ZoXC^)zyVc@SHA>HFYGoMiEYTzbZB2}`28ubQ+V1=a zZ?MO>OE3sw(2x(y?l*KVu;q1LU6$=qlo?S=dWf3k=20RTkf|JK5LS{igqaCdfkRso zFVa10sihgl4slRRiYh?yakj_6Yf2M!A(gFvl&T;kG7O!Q;QWU#Avm=lUiSQXXOwdi zoJEb*T0P428hUxGsTw)opU3+7p{zFk?PWD*Gt%SYMJQQKN^Ur-DZu$vu-a?+{ELW= z@rn>%G(jS2>K6@g+bQTq-1a&B!fpRSzmgPi+kerurw#x2Tt<;Is1aZIFas;;@X7-_ zo8%Wlmae20nzlAalk}V{3k)aHygFrfBB@1DlXSO>$ltid8H( z0LNnTe|b+#I#I5OQ!10m!-=v_{u37T&6EE&%7gNM7*R_8d&@m8JAe6qYN7n!OvOI| z8TRDAXrI6n5!ON_U!8jP2eZFe>w1YSvBia^m%jSz zeR}E7%j`U^m;R`{MKAr=@_KEt)AiDN*GpS>By4Odt`U^h;mGLbqKTcYikO{Rk$1&Z z)z0E;iB}j@A^C7wJvQ>(NwxohJ}JFgq}QzYEi0hcZop*4uUSFmB&e8ifuj2_!u^0) zC>_|9rjwoN9KVniH8V6#SV{!Ru(XIG0WTc-9_#YT$>MW=byBm+%iRRs?O8!zR;=h4 z`xxRrK;;%CdUKV+KPM1I+N(5NkW@PW2B7a7Y&Y}ID$tm#|ALXOdbmBazL)~1BQa`j zt1=3(t85b)K$sb>3Ku?}Ur4@&)uzeE3kCX*g$dK)sBaJMZ}`Avti6tumoYe+`(j4n z0LIB$e2Fn?KSWkQ}zIv97$<9si0R&p$5_~mQo)N!my2{Kui8<=#TQu?< z)~XD5nfI$=r;36WP=DRb6aCV)b0>ZrD01}tUX6Gp#Nl`TK|;rzAX}9ZBsYPRZR@Uy zACLlxm)D4Zm=msfhMYqzk!zD11f-CUi4f@uyU?oh9Tz4H7z9s0p`2AlO17OsZV+nF zGPAGbTzJs$vRgv)Va39Q)#lJw_Bgo$JnkBg+V+ec{z~1q6;FKze%&oz>sj$Hh}1b)h#N2tmc$uHZM1g>MYGEi;=9@)TB6d0Jg@^lz|I&`~?<+ zt0J>2b~NVI33C)#20TJU<2S6E#j7#TDPMjh8Nanmu^@k1$0i%6f4gt8@j`ivP(M{( zS1A_OR6@PVuwZDYXl_PBZm6h=LM%E5DpYobQiw$ct59JY)i_Hpi7V@qjkNf`fAG`d z?e);l)r3vDG=);O9;4FdvU$+aWo!wavd-aa&gA^;% z=dsjv0}ZTxh8dWx_honxR)TEXC}8vhn8$`&K`O3^UEVgStKxpCd(4i>c z7mx;zAX7ZA%qCfje~qq>FsU5lZ(3>aE>If0wURzOT>DHHXYU@prUj*yyiJ1IG3*Z} zt_^YwgDGhm#Ka58AIXVR>WnX=o%67LepSnW4MDL$scxT6VG>(aOSaLR=N16#a>fC}} zYb(LfUP~hCLH}S{uaTEXbIc13A9`Rf78KXYe5yW^W0=^b*_kK0W_|E*^)p>YXpdgg z@ZmqlAR&3^8c}CMajl*rkV#qQo#o-$?s%K%C78)}r9XG}gu}hXhI(Z7x`?_P;_uq{ zyEFcNEr}Nc*;DFuy!d55Ah#H-Y-p2k7i%g#E}M+K6{0Sb>VQ1WT_;B@61WtjmQ=A6 zSyBO&-f#|txeVP}6oBel+H94ejW=t5;-AY zv~Mz6gLb___OH)(Dhyyezn=feyni>bsN;&We;r`GUS`5vj#4a+u@|g>FlURA{6=8B ziFR+smfk%Z@-@JB3mw|SPN==Wegm*C1NIf{fV!0(Q2W>cbzAY=lWe(~$lpLG-bg3* z(}_Fi#GUMU^6ga#+pCiNU})L4s*D{%wj#p%n5c-+Ae*{(^|6=O=2~I@hM_bC)vsTJH_;$~G2c?oaJvjXZ_+^^GmD6AV z|0Ya>C8>PKze&?zP%QlZPcjXTw2{X2+gM<6tK2kcY>GwY;DC%PUAJgoWEHwfQ%8=4 zS1=NLXQBaF5#^ZVmZ=<9qR{D>n+0YbM4m$BL{?kOL|Vk8ljB)+AVq5vf9#dDl1cib zaamJ?#uD$#20M#C4z($-;93+=zqK~taUKf6t7_Tj4f$%bR@UXyr5sVxkl7c<1|KMS zh>|BF%<4+2r;94_Gygk%KBAY(IfMI%&Xl)ICtkE`#~?T)sL<9h)=4y&yVTY&)-7Da zSf@yk{xytso*b-y4Wl-DLk?R&PD(SY!`jDfkz@9la`_Tc&=XXU8vBJ1TICvs(N(7$ zXVX8joS@5mNg;7;B*xNkw|Piwn3@fC^s|j@ifo~8h&oLF5Unx4c4%64IU z4u4CrUCh#K*`S(q?C_aP%?=CxxNBvXb+lp`#&XtD*dC*bvgp_{u8;<(?qLb(^XeXz zp=gbGKV95E2e<+UyDrlY+d(MoF42aCMsXcBf&u|da|u5rLfWcO3_a3HIHsL<(z{He z8ti$VK5LeE-%R(}l$@S*k3yWwm3BwPRVC7KpwmA~^6se6jAxxCdAAYJo_$pQMev|b zW{gb^u+Vu-c+Sef=QQ29$Z{&k4Te<-CN8#d^tlH{(qWw@P*F>sVJnO^b^$ungM_GM%KF@cZXs*n1>Q514+SHhO5oUkgOm>qlDq9K3k{l$r%rRagiK?td7AD_}pqRz@ zC;SUbna2$F)K*4_uH1C0G<%W7F#WeOAR%0=oKzR#)+AKaePPhMDzlE3QZzc%Y{k}k z+V=pLhh|IG-@XS-YGEzsxblGub(A*`L{>CMP(b-Ky77RZcjBP=3bc@D#+D(%>5*2e zm2Xw+emm;be1v*CRj7JtKJ+!^)0w`ed?HhCO7&u0F^#jGr$J;BRHzwF5`w6q1R`h< z%S~%RgJ1S5NV~-zNxVQ{+Iu>tG_2YfoaY$8DHUu#Z>V#LZEj6#UrEUccnm)3_ zt0Z@U9+sHUt#z- z)(h(Jvr8GKSdADXbbLQ6rgB&bnZpOS+<)QPpmTE_H zMXv({u4-pOUUp6du4>5@+gD^UMb$oPdy8sod#7sz-mEsUj#U+t|eFQ+(^OvK~)}IJ#nTv-DY&R=&@jP7WyID6#76#s5c^C>@ z(+wWdmZRZd2rNdSGe?@(D|W7?&0R@CO!q6CPH8Ml9WtdsEIpl53|xglftYUy-D)!{ zQTK4^6?0uY2#P!A{t&8klQ!EhJr1vdWkfTYLfefbYj-v7HpU)u+pO_vhAW}E3g;AW zvHi<>TB6S0-a6O4j<4DR`*rgS=g@o3b09t zXiU3+E(<%9KpJ#;hr{Xv7IkqMn9b#H539vsxSt)Nk&cDnD|;L2)pA9CYBpTw{iFkc zonIa%d~@kt3G-}UVm7)Vd(DWvO6^wZr8n!UJ<4+bHK^Q zaI;ntHd0T%5qnUh(7jN5NVD)-Swa`Gyw;5IlXtTfmyX)UO@qN>Qs|-Fsz|IeTocqnw|60n;U)%9qb|-%L3_Zz;cg>SFe^lg=B zd22cB;lA+ZSciGxrGxQ}u<;ojM7)j(i9+mT*r?r98}qxuo3tI+c5>bm-k_bFhS8Cr zv4$k_cQA18)K1R3p&xtMc5=o~<4#W2V{Bi_#&Ea&G8oz#!KN;pxm2jlDj|=KLFvZ7 zot>P3U)#y~Cg=|qf0K4{ay_tbw z?h=jjQAOaTyuC|L9jQ1AZ&X8N4P5TmeN}xH z?$CYJb{6i`eFfMU7Q;P~w^Ncc0)~VJ>ToGF#S$TjWQSqDA@Y@1Ei6A);-fG2f5!mE6ptmmQJ^H4=wK4&@&O_Z?!i?$yr9d$qIjdU!-{#hsNqwX<>(p?I_JthArk zG4*3u50)Vk;JoOO9#i$HGoD*G?8wJVb&%z+|>rupfN-sqK=S)HIi0W*^O17uYaL zTY}kC!-4J;o{iYBQKF!)?g3oTSN8xu)&pE@zrgZ4V@>t#1#c-$7L69!OIwCTi<@Am8bG zAnix0rk4?*!QGHOkaxM#@;#8nh30*?MPGNovp{OrYv-SqGi4^1WQp>(j55$FN9X*b3{tqr=gqx?90XD209K?2z^TlEPSg@p zX)kktDQn1IaT)|@rPf>qSlwn&d05BiQ-~jb)@dEY%BVd@nDVBZOZ$4ZLUYkQEOb5#FXbe|zD8 zY{h3|{!UF-6%%Q%-g21>Y=Y|+vO=H*86#h(^PtEPE0Sp32RQH&OhJ0 z&`X&ibO-&Jnm@S=y{v65^w7)N-a-$(tZgoYH=VEI?m}BDc@|zThJ{|1`!t6!mUDSr zbINv!b3X_bf#VqhPQ+-VwxN1VYfytr?jd@x29}@}U8|ygoSccAoOpV|28$32>wUE| zAZ+FTLHsI2Cd%JZJQ|z`V5(TJDuPu}F+Q9zgzqV>3F4CNDeV!WC`tZ=Qru>{%GDf+ z!9I2@R7SX7 z<91gQWIl2UJG4zAM~sxAg3>aEk-B<`3fK^Sc8v5XDN8e8*}!R}zU6O0MbC>W7hlFK zg}uG8SS+xXr=Ud^LDpat`JYE}YGabfWahB#^Fwl=U_0i|z;ZVk0=GIR*lsNbtr}D- zN6u?epgy<}mli=)A7ril5fVd@=moj!oC*B-ax;zfiP{??*e++6RdZb~UToHIt+t^iyUbC2ZHi8EcyDG^p&2{7k)+W(}Ebl289#x!= zsA4MsW3$Q(e&%xUcTvc3t%;VTkrX122PMcF&H`0gN`xt{pg9IKj6k5h%m~;V zGGuKu`o>}~dhjpPM#|WvVw97K?a7Br{G3;b&AJlW8h`=(GCxu5yRnf?>dmHg10C_U zE0f~j=|ap{tgwOy^xWs6HtVFuTV-wK)05DloqinATf$0uW>KK64AsF zDN}>eLU6?dMQE5!bGCImO8Dkv;&~2w1o_#~#t1oaYUxQp6}xlbUHO^#N0^5WQ(cdf zw*j$XmsE$1O5TQsWyl#FL#DuOOTlHmE#sw zlG#ycXAB2puer0fgE;IP73brDQK83HwJIIA`WgEMSR$cEM=?OcSl+V! z2YWt^wCwyeFU~0$it%=aDq#m5C~{+{K$aEQNr@TeQ>9#im36ELeJWH5mKrE>2z0M0 zfBhb^7?1b*5g3b*ioOoGGn-xL(PZ%m_x#VfVi^8{qz8Fq&k#2tE@vs)PdCPD-wD4T2dYN?=X@Gs-e~(_Y!^8 z$K1;oRNm{$UFe`9HTy%~W`)&JzM;>psG3=dP`t<|CuJ`Jy=H_lTSS;bZNF6UK?b8x zr!#&(iTW^uQb;sgIK*J;)eJF-Y=!~kLkz4@-3G2S#3Plc(EzJ$jV6ObzMcv-Dzd>@ zFu)|>E8iM2z*v#xQyX*YK-l&bF~IO}S+rn)doVCqj8LyW?rR3BkyjjG0t0Kk7#!xR zFN1@v2S6kDlGR;@i6Ix=M$SVDgQ4=dmC`fBClL0PQXTs(A!rr%P@LjllkX=9rXzwo7be zl2`nVWk2~FuM#CMoEu7Bctw=F@XbXD)%Bx<#k%20LF|DT1TYJns3Noid+WOq&Cjx> z1gUmqB0Hsl@Ea@qFpeRp{G-uyLJHF}<3WX(fwF2)5FHzYydk{!@gmB6C1J-)a?jq=R_uws=Qr>F|Y8~FbmZs>UP2fI;IftD?{t>OY||vpi%!b zgBFXRc|@KD9*IDd!c3~2tc(g)t=^@-hl*g-j_`15XG58&ovpe2O+f7}(Ke+9AVw++ zZY=$a_>;!;x}o3rA#T>mf(kwb{UCYy8+JOfelfO-GK9>2}Mj z#SmzrGnyWZXn@F|D@2hqU48?)y~Br z2>Udt9S_D+;l)G86s2QUdRaeZ)}i-E*N1%nfwPB!ISv;AoI{t_>DRj7?Q_D{z~RI zYO(zjKBkyWvJRcbMb5BH<*5|8b6?TC*n#_sC&n2J<1murl#~u4sl@mQPofjiC>$o; zNRXTj&EI!~P*GRLa7EWX&^ExzYi;AKE&eEX$tr$2@Tdz8JOwtsea2`tzWAbg;~R4c z*2b5eh8oYm9w(D1s@CU~WNic@qpeZ|4gU=Z(%6q9#D}2iL&G8w>Dq zmIbNnb9LR7Qq^_p@lm!-e{`aO*9@CR)bmPTiIjY^pnt~-W70!miD>CT`hh^J2`;`A zO=oV(FllmA#)Z4PIn{T-apWmUbJ=6fdacKFkoJvp>!6w@UD!c6imXNnduUc>U}OZ* zJog@yjW#r8AOo^|9ug%ROo-AuXX+8vk?K?fOineJ#PyLd`)A;z z#fhfG?cxL@B|x_&^J@e{sWhG8twu1o?jo~r(1iuUq)DmN;=?Ju#$aGcpEI(N8 z-4wlu6VUP?6y!XB{X3V#eo;g7=2lIx<;&9*hqP+u$Q7w{CybDCEUH}JPw_vQ*z##C z?&#i$CIs1zDowN1J~xVCJ+LK#)hw9rYkuGD*gU6&D(cu-BdLxaFmXc4KTY`Aap&9J zuyC37W0jVZRY2oEs;mqXm7oci`sB3qhmi2H168o0Pjo;>`BUP7X-l>+Vv{?l{+aGF z(E%$xzSDV>kh^7&!Km-$Tjq!bqdZW0N@lhl&1~BuUfcg;H&AZ5LfF=j+GZf0kPkb<=^)BgX*smw#g<2$=;S^0fq@@BZW0D!3(0sp45UVGMbM7mdZnOR}$1Kk|FRp-@ zmP{$1hNrJ)3Z5i38&a?gBc)Ro-Q_1QK)Lyslpf@K!})Xr0q z*(GC>s;^7}mWX9F!UT{y-7XR%0ER0P7Gq@^b16 zT{W-tw6RFOElJp!5*sp;T%wuOreupaep9kT?0!}9dU&0?jX1r*0H1Zu3zT7bDovo@ zXvJY&cXVf}P;7oeXo;H;FfHYPl8kA$NESi+J(Mp*j|NQW>F)%n!9EpgWTuvDY(Ea@ zT4Q4{DAszdkncdnUJmq;-CGf;F@P#?uxbr%2t*z-iyYOwPY~fJLd`m2o4oDRTk*XM*Ld&qM7j_$Ql#s|(2O9`D=&4{Ckq@V!W00!=Ey-!fNC?pQz5Ink04>J?^pc-BGfF<| zplAe~CUs@6*2XQJ5-}l3Oc1HT33noDLgZJ-Snqs!R@NR%X7~NYg&+Wl%=j6p5w2wk<Zp}y&T1cR`WeG9g2bTnxnu%?#!y!^~x zwlnooH8Ejt3~z$(^vZazK3y)TPw$K^TFuBDP3o1=v%F$0Nmj?|B@9Fe3n53v%JFMU zpDf3^elxe4jHG_(Q0qfbw@tO$iathAuK~L@i;>`kUU95ibXj$L@>Fv~(G^QP!s3-J zzCn9W36k7SfjQ6D-s4#E5bZtXZLZmSp6BKpvG>f!`VCopUCgMZmCd)*R3aRL)yH1f zrLup>odDx4X6-FoVC^kmXzjT$j&>)g*+8zfVz~pcCFm>Q4lyGUmJ6&< z8;^cNlV&x6{loEeRI`^e)$9cYzuzZ{Obz8Y#5^rhm7HU6hBWGa{0Cnq6*%@IN3vl0 zAqmV}q#>KV)TJYO>*y2mI5ZHA{vb3sJ8>k{c_UHinkFK|0@y&9M!|uUsU--}nYHi$ zVnL{tS$`GcAV4T0_3J2*skSZYeuGi6tsl7lHn(SswaH|o)+T`J!&;jQD|T2{&Ba-j zLEh=R8!zwl%6{1k-eFA9I4W^c>{Ve=_JI(1yIN5fKcwYy>t+n{E0a5Y6l{J4=Kg@d zSsa~W0&yy2nHB%7zYMzdrq)ZKyUj1$DN{cN&Zgup`5-YrzcUBDW-Tu4ci$ks3WOs0 z*;Q7&{Bpw@L%_^r`*pj|ltBM5O8 zsFYhIL6m4^Jt8Brq2FexU><2g#5S3f#%x-?YJ&~0_tvFFx1hYY_N)TQiSiTGew$n6 z7<~v55rm!kxqxKPp+L1wnGqFi?$+<=kXgBZ2NYu_R#r@xxUwJ=CjrNky;G5eFGX9K z*^}M}6sf2$bAF%vhmEW`s5FsM+j!ylU+Xk7WIW14Dy;Ld)MWtTjnT!#F)fOCc={us zP73}=&-tXR^{gQ7yW}LSu=4V{@=66;sa7(A@eBHtIUgT0*@I2^iNk4xU_)FDxDCIp z(oL-fbY5kTaD+Yv2u>Jib-V~wK2h4^EoM3vNoRzR2;mSxZ%JKdu%OTry>HHm zL;*oTm|()B6O1{J$@rE@W$do%EXzunB3sJK^d$}uHm~(!^MY@L5@BM&E*B(3_sN<% z`oq7b@$<4JUiL>{w`1eH3|E=nI~Cu1KErp18kzUFBzLt%Sel^WCp2R)iL9?gVU0)=&);{B=i@1ll^ul+RCgTPW%Npc$g*>Kr1(vEbZ$$M>|{_H#S^5oEI#_=VUF4yeAt|Q`BR_Uau7vKaQK}# zDMt3=qDZJ0(8d7VR?=9N)Jfs&F@AEHMoOgT{Q=25mya19RzqVE87A387n#^O8ubiw0vp z!5-v+s+AG8P6Fc*18q+rhv8RQb!n96B~29@7h-hscd{~^{ahrANTMfMigc)8 zv6lu13YtD=YGDS~M;|n^K)lqtQpvP)X>$l=I5B)5zDV`9#Z1@c0b5|ru@vBeX>fvQ*G5L>?esV|>Ex-%N#!>u=@D|G+n*R93+zhU`>Rr4eQV=W-Yyh(zB9Pt}kR|?dy&+*o?$J*-!z~In_h05CW(Y>)4NG z(L6W!c9Apz_q{grTPH*B11hu+w7N54eWS$t7QcOix|T^n%QUapdcAbL{O}MIG<3}>a!i^behFPMhT%gYB@#-Nv-;XXEA;&tAcs_=#fXL(?2}J zhbbRsRE4tCM`Q7A`kacwCyHf|@BEqM;YUIyI-j5aOtPCK2E0Hxl2<1=DLAK8w{VOZ zcB!xsdq`FD24hAM*B!x2Si7$0nQ=NT5MeUIx8M~|$Q6A0r${w+!^$rDQtuL@nZT>! zVt?>^+_8aH?_lRrZYx$c%6C%+Mc;-#YAR3XNb%fPWEO6v5yi!9&mOQVE%V)PSC?|N z->wu%u*a@wZae6)>R;gd&c9BgYB!4RC(0HCoRPHd6B0${`ecyRy#M}YuvP^KzSG#(3)ajZl}@wBcs zC6gbY@Lqf&W3`9=a^6h9XC7Du8l5kq>yItwPmDE>ay1G$Ki53sK001P9T z5`){U$fyUKZm#(A|N7(qWK=7KOeKc{UV^M($L{E%Vp?Kjl!+%G+X9|}j8(>;;)X0q zYd^@!(aMC#K-QNf$Rh$-SzDR&REZOTmFO#hY~wlR5&D45Hdq^Nj$a2aqs$F9C7=ID zp&1xx+LZjhT|>lLN-{4MazHD8T4FM<(h(xiIBhn_H))tPk*Y5wRM8KHTp%@Pm~d%; zEx@G!vxGWS?;thjiWXR;D$U>+;4xuqQ817~{OJVSR}Y2_DP69^(luC0!gH7y62U}3 zUXSP?0TCU`bRs%TP9wU86P*P(7}4=5Bgnmtpi!Ha8!073({xTnZIGFUP9qhmZ5)1g zG(jJ8#U)N`P-Txxf^;^@q@F;|j)oHNX#9RS|3_EtS#fp|J5+ z<6RU0>Af6{EgM=Uygsz(9KCPr{o-kZ$g&k1tFn?J0BSrMMk4@5x()>kY!gD;7*YlP z`h|~vD#6GQesy4RT#jp;I2waMQLPsB6zTRKH`&{lJ~5`5zn_}ThY|lDen#E`X?z?e zAIHbT6^mC-OIxU~?qlq;FMdyne3X+) zYZ#MACm_@s2D{oI?Pfm3VH`}}RiVy+QoXUawxFSqnd%-VR+}zV_jE~tGx5H~yaCw7 zvjAqBn&}v*HfW70vM}YV^pi27B1MF+_Bo`7KO3#kccIZXKabdY@nl7yAY24m_i@Ge z&i{Rlg=*QEx9AV1ihWU|+#mkQKO0H4F!C-vf(%zFYru(0`* zuoM~^%M(B~ccO>0(R2+i_Am%0gfr&6S})h3!<0mvNJwZ#s&+mm`yG-`*bC7+>Pf)S z55ox0;}VA6((F*7TUC$AY?r7`UbFB%9j?K({AHpFKNc-1zWkH8Ag77@ZcwzWdT1x% z_TEHoX2l0>Ol8i9l-NvU8bTp5KHBsqE1o8Rr+jX7hxXTqx(h9J0x=?qbjmoYDuo0Y zU?2yi`j8h-5m}MqueX|XVJciqie>yVTxC1$wi7*5Kp{?;dE7G^Vim8V9 zy8JGFLLM-6Oz6*w(@oLVloX)m%no5 zFdS))&OxNXFA-@Xj0$POu;VdexWtY+UA^U>3`ebUcvK)8fzx@j4n&Nde`}2Tbk_Mv zK|n>F-{68vXb7P#`O$*q>EKLuJd<|u*WxoI;Ze9Q;DRtK>ZMUv;sFK~M@E|pWzi(9 zMK=Mf%!AGH<2vCQkg{F+6EkX}JX#PNl8Tqc*}D{3_ZIUI;g_EBW22NtlxMaH@=iS? z^ojc*(zJWuLWFXQn~A&vi`cMQ{fd3_Ec;m6f3}Fo;BUVXHk(isr{t%=GZo$FDL;uP5)~vOAMNp9Fg&-276orfKKj&eU;r2X00wBH!~h=1bH#ud$nE0Lg5bGx zouRGZaj8-g62a4rOPu~(G!>ugXI_el_d1&FNdaL>_BL&+0DDxcL+(3K0oF^k)Go7S zoJPAPK%$OEpS8sr~% zH7eCSGLAH%gcY&eEhEA=@wn7grEw_S+K5zTFS@mn6<;5f@Ybtjp@B;PttZm0+zYH_ zCrY6Fc0%|uGi3x}Rvfo$7X+uqnPSco%vgNsUw+#BUy>ClYul=l6%ENiyk26yPsBHh zU-=jQYH_qI`O~uGqg5@%hoB!+mRiK6_aTkfOCONCP&PR3G$ay5^FN{@5fV38Sv-zJ zRUG4yxe1Hki`Cmp^P{{ZyMqso>e}oWQ7hg{>QaNE67JUc-A6@GeknVM2jSFaCuzYNuImushAKBC)ZurqyX4Qc!|BHOp4``Of2@s;#AzHg=09 zcN3%!oCcOL$!}rN7I;J)Hs$r<2LDK4qjo%?a>^xg-eEH-#ZAIv5>7j|s}H^o1e`2F z_&2PS7(gv&o;Ze84~t_$A*0d3?(G;=xo zW!U*ps@bJ9l;9#&D>7xkceDsQ%EH%iDNRP9QuI!^!c=ShFS?XA^QY-jFLoqu_OTeu z-)f|ja-p$zx^XG$0#Ix%E-Ny&%`$jR$QyT{c{cE0_H3aP1U8s_ViCxs)(u`x=@vM$ zspN8UxWGd~qP8kiJg%pt4lf?V4%YaMa>W9r7JoIiMVhyucC9kXF{Zh0&S@t8hk?%y zmeNcy$0;?+pvF&0&Ukk;v9I3fw5^FerDD$(pSF!AZD%fEu`^AJVC{-J+j8u*cmNHI z`+OF7r8K)t;bDR3MH6^pNZ!^iRjtR1pc;%vX+mgsYMGd*;g7Zdg-!aMdpZh8yn3AHcz!dp8ahapzlg8Y=^Ow$Rw|_XoM&i@VF}1 zcv%)rTEbJ7MdQR0XjJvmN39;y8r7!`O~K8U*b}_RtBT1e!9u^OVa#GB})%0z5n_4;`t0R zx?BIVke6Mn;v!c=)w_iNZX+%Ef?+`?KHt-5=A^m{%fPvW73zvaLaMj5)8B z2PQLI>rjyq{*<-C{MVF+ir=9btP|H|jgVL0l?@|Nqir!D0=kB?;wJ+_2LKG9L z2%tuu!kakB8kewOVFnY5P@O`4Djd_~#fFS6#;Q@wA18!^4|)A)d1-I`d{#%y@M}Ig z7C&+_X%rtUD`^x@m6x$T-u{q^Y(iNOoM6*nuvvYyv}xpM|Hys=*q_()`e({#+JmNs z@!mn+wwQN;rY1)aXXPr|m_!(*6~=LcgYnTC!fh#EYmJ(6g2;M`2OCx`yD)wXt1wGD z*oq2TY!n}>^$Z_^En50OmB0=KmG#QKZ6(ScG4(S`|J zWi!G?(!@(iDMSn`i?WSPl+Xt%?Klyb>kPd9W8t+9w0vXmdyj&9_%tB3g>fN}l!7V) z2|{xq8#=Wx0;$>l&^m35mJA&uO0^M4HBhIIQM0OZR0d(}xE5i~x8wgr9sfjaw3w9G zk$gVvRDM3gUayF`e?^&#_t~b*3+R&4+F+M-ss2ei*Xi;+0VE!y3oEt&PD`9I$4m8# z4^660=~ndn%CyS34Iu+cYv7l(T7qAvRRjM#Y1MMT_d4Q^hA8d~(Y_vR*<}{4$w^6+ zxmlvHw~r9UAa@mu-JzjnV+arvz3B2X|OqSPJlF zMXpUnZ$|W+$yg3WMZqS=7pVrnb@ZT{*}!tBZ?2sD@v(ta3*``={TFrrdIgO|`_D`> zsV#HlW>QlZdespg~ghT0QT%IV?l$U8(8f}^ThKItBIL|F^5L#dK_TfGrG z?6_v%y)=2Fy|mKgWkaw;Y*GwkFPSSXs(BUIln(<^T1P zvPZB@=#n*UfeiIZY^gT(O#y+r6vm=@Q#FOQ`LwS{n32g3duMPwDr0r#-RE&u{5)mj6fcfgEI7ZQh z#+b2Q8|GMZWK1^MDKvn}SIO2?HWq~$RM}W4js6>xm0tP8)N<2N%rK``dNYwRhc;x4 zNwi~Z=z^gQQ99TVjH$#G^ow@jpdr{%EPQEguNaCQO2wFU?7)~9R0@+AX|oD~YBLgw z4M|sdlQ5>@m`2)m9<#q>1)!UkJQ7GiIl;t1E2GkYri=k=Fh8#tQ#OsY&3aRREeee) zhrX;uV-q6<<0lmbBBy0Uqa!4vB<`fE$7> zN(Zsko34p6L6Vb+@aFw=(e#RarDYAd^%W5>BVzJzmednoM(7nJ;d8CHu7sIUEpGAQ zvzc$4N!TxW*tT78m0*xvnM7Df z$S3)P$4L$(mao_WE(GGGrNJ4NCBjAVAH{Ti8R0TtvZUchEs z=Q%hw$zG(jSg~eb0CGiadt24E=8LT;bQb%~a5dCE-l~tu>$P+gDJAzKWKMVbtzx0*Zo%CQs#091Q-(>gmLDw*LKOc1c|Lney{r^_j z9h=~6>~2%O-Xg?Tveb@Y@(mG_JTZv(g>e{paP^@@_8{LhVVJ=SflL%7zE`f6hj+oc};sAWVG z$gW|9f2p_sB?ju-+{1Gm+b=ZO6Uy4`Y4WkfB#erkmJ3VK1@(||j36vy-+gk1*@xzH zoxfYRh!q@h+G1xlPs4a%wVgTH=`yJGjD-VWGL$8HLDuFOly`B;>f{5$Wl`lXH1gCd z@VBauiWd}kp%-MP;ydG@*~X5>DW>?v>9P*&HELA2tdSJ2pJwjC^3&}64<38^%z9Pu zr3UNCCrAT`UD8>b6HkWyp_!{aN^YsjSrL@wYwj9P3(32Myl|BH%2aU_w@@!6M{8uq zZB-Q$!op>3O_aG!!`F{9{miGu3m-n26l4w6GSN+@C{aKGm^XBOcBB90(eK^SQM6+|$6h zk_vcia2~hU`T>0oK#!;W(D8|0T>x64-7=X4)ey!{NShq!{wlw8hSkYxgN}Jj#=8W? zreXZV>{OZeY>D!oH8ic`L`mjateH)PQCrSu%1KnI`7Py^fen(Gv%d5?%) zdZABL1u?RO;4IxfC6ac%5QtPfaoGHo;wuwJkcAP*Ge=ywaW>6|nb1Cs5$9F}eB+4LLwUExa&VCD9fT zZL-$qK{FZ%r?D$c(03x%<+d^yxfM)}z&;|;3Sln|P3E-!NPsditG0kJa6sMiEg)@; z(>M_Yf=k!71w`BL8x7HfTA*?pP2rnxA3#>^69rK?7I?&KMAek*E>JD8CQgnP#BS6m zVm9e7Dy^j!qSzerD(=rLWCA4)4rJY`ku|LThZ0FcSiMyzZD)1rIIc$drM1veqz7v1 zH#G8K?UVc>jvG{}L(CyuUYI>@3nx3WPw-U34xONoHf8Ia7Y*i1Eu1A0zO8Fl^zID< z+sb>jM`MyoZ_mIg2!ohEkuoYRklLL*ysFisz`LN1h^9m26PA1tz92~LNH%d!O%8do7XOA%Q0`x=voaT(g zv~mk+NfKC?jct&`wZ~tzgPZK&J^DiKfUR+i89DX&5@F}$WoL+JryX)iwvl$+8s1p0 zhA>C9g%Z!35J!SuB~6-?pO(Jy{ZTU|EtZVvag$GUtgRr!HlcZa2x!sKD2A>iW>FDo zJZHQ-X2^ObfTNHivb>=xCHbhX1?Y%zjS?6z3Ffm17h?4neWg6cS=mPVtoUTA&w8B( zo%Vv&YTjz>0VAAgRhShgEtA)TtvHXLI6C?KQqDeYJYm}}&$y9gV`B&~TYAy$mopGV z=L;qIg0&feZ=?e+iDqU@*K4LLG@Hdcqu@EkG>Ho3xvZWL>>7;#d)|4D_oam8WsC&K zH(iAUg1mA|f?H+9U;GSPUwX!05~?i+rS&i~o0MjsLpIEYFiSE%=EvlHX*`YF?q;1~ zC=)L}tO6Ue2+02@OAZ zvlL*$wI(2Ym%#cVG*531aDZ6Hy`OOo z;x)sc2(7o=mPx9T=dI*at>l!IyihA4qMNTyS0zyNs_wY+>$+~sqIuIs z?U22YPG?Dqz?V^%W58`mN6qwNn4k1`UxcbASH%ba^~of#{KG~$MM{q_%#Y3G+A)Sj zHKix2V7efO5y+o}I-uJ&PY_XDO)B$`yjW8#VG`aSB?&g1y~vSz`h2|Be$tCK7WI~J z{K?Pt!J$>Cv%oQ>W?80XT96_Fxxr*awANrCmIfG4zNy2kcS*P)O2+A-Bnq%a zo&&)m6nMTM07PksEo#ROk%nBIWBn!iR7N6~4EqZoIeBgjE5xYV)CBPiV_Ie)@Qyv- zp20gk`tAG@fJm6B8;Z#wN?v`i(xWI#{1wG`p3uhB|;1^p1DDB40YSjfuq`;Ls`Xvqs7x!(Br_-;<%OcIB>Lh)=GLDI9fbsB|Q!tEk0=_ z6$chsu3%)?Q2*$7hAedcka3Wey){VQH4tFI&7LKo=`c)E4&@AqAoR%<9;3EZ186ve zR|u-F_*2+YnxTFoF!#`Wn%hLy#%PTA{?LXJx|U-n4dmE?j+LQ>7(NB9Y0#^)11S~P z0Kg1#vOGJ`)|AxnhRV6sIS}7wAG&yoqAN5l{S#c)9TKj=%IBtEbpaHp>5#{O`$4^{YeS z8yU!R{lyAl09}2>VcEGcPLrLaM@5#udtw77b4`FT3(TROaO>r5w(r(uK-C z%aioLlIrQs^er|P*#Yi8`NN;$|6<|~UvegWd=LR4+Os`ztgJYQW*hA@uxqzHP4IBr+JrWM9t&yY|ix=JnFoQ;a*9B;<$2M7Z>L@75@rm&2L1U z)jJlpOpj6>hmc^sZw_tg*f4!3dkZ#SiLu;G+qZ|!mbr$)eY$))&9AQ7?p`B_0&nT( zAvOdq@kdNZCc-s!xG=O=sbQYOQp>|KPBU2AX@(WHZOuQAk7CF47*SX-9b&4Dsh)3R zxR`Zpn+z+%wy^E-?zQ3Cu z_ulqy9^6in84A;o;2pW;M0n!|y4%8jc9rf9+n(XIJNC491MF@Ijy=48=aGVW0S)dgt=p;kKLGIUnB|ZbJIYoVtnY?>sUW4$S5Ixa6f<0qhNP z`EB8ruzPoVa%##XCm-?22%z009iq?KU|FDkq%`zhy5I%sXCd;Ykn~#6&7Cy&CX;42 z!G5>u>)q}3;dUh=Rc$nYbhycCWt0<)^~rEocx$*X9CU=;=LoxNZ~G=59IPYk?i1l{ zLfHKv>?TLp+xN6@0{pv#uzPs_9geVj+DnBcO&jk4cUTbqa4x(>2&3M){4Tz`kMH<- zbGR|0>_)ENd3Y|oYc78am%R37Kzr+4eqXpd+_k$sO~|zn!$*7~l-($l>GL|u_%2=W zf}`xlkn~#6%{xHZcNxlV1Z8gqH3xUMFA4`sl+gevyHVv}2$Wq6%I?YU4Z9V4yJZUB z+xG~Dhr)NuMtTTPx;w+WUG?8vO=H4)XzRN*m%9Gu_A+XFP%z#b-aAKCJkht;hdG-| z-5ciS@|~060ipE)-8=wi?+k|kl_WpkQ#6sRxGT57-yizblkm3`;!WGLcky$hl5%FV zU;gY*eevf${!^bs`N-`d^)AWEzoy$T7&>1{#WmyIn{3MP|FZWk&~jbpeczcgGxs@z zJ9rWg0@!Ep;JqM00DJ%>K~XpW2m+=kQZh}_v}MDxL%SEQOVKD>cTplNF)IB^*x2$T zb!x1bF4bC0nbx(LRc8gX>6&ib6-H8HDYg^XrdMc3?qXB5l@rD4@Be*!pL1sJ00bXa zv$~=y;>_9Soc;LT`}@AVx1?lxiyuucHtDjZ=^n+3aEE8Smgj$qmF8?^S^fmG#&QT{ zQgzQwtQNhUmBgKJX?tO3(nXTGbo=Xw3GCi`{c?w2-s6|s{c_kZxB2B(zue-NLyAhY z+D9ac-uhoPXFe!A-zsIDgar;!`nYd=(@!q3)KB^>^f-DY*>{3d?Df2C=h_$XF_S5iN zQArcpYK5rHE~$=UTSw47?+tsNc!=CY^l|A3EkzEuHpn3ngH>14!$N4iDLveZt`0}V z`$t6)M?(qzogyH>qLcvaZJrN1LZS8Yj`p=!1ZIpH5o}%#x9aXjp2GF^Ae0Bqf54$Y zkD{mjY@o0c`G5K_yFp9MOH`MVX(dpN8 z-pPq@`71ahrQ8Yg{pVI1sM=M7Zv$V!ueX{L-^8 zWyO1pa^YDPCctWUfZ8Kr{}aRg5BHBcQLk}lhk=EfF-ZYqCH=I3z%q$*!hxu)R7@p-HWj8n|< z1I4lO?=WFkndva8GBg^!JNgHI`ddHp%YW^6f91XcVeuJ-E9{wh{76naGem3BG%aMCdkCmpZDNyqDO(&&rW zr&NqXiIAK53^l*So2ZE`y_k_-M?DG0@$MX_)Em*}k;i1*^0CF@1JdkC&cmbf=`qohtsQCH$bKhQ|t7rN995RgH2V(4=ZC8Nl*>V$GQkigNRY>fZR> zKmJdL`}FZXxm`|}Rqud7gCo!iB`(6dcY(B%{CA4qCqiZ?XBeKwZF=lazDfjOZ8GM| znD+9;f)K0*dT%bD*WGC$+ddP{loQcPhH5=Dxydw?@=1(T-5@Ma*ogU~>AC?4@FWeNq`KCnZyu-(bdwDs7xq5iAW7Pr^P^&q76(DRYBT20bI^rXL_apQj*D-D&b}Qw zI}KpJ13LRKF1han_QiLJ(EbWEYy(UOC@b*cayhLWm=lP}A(vCwg|-&&o{;f(4}_U12WGvojp?5U_$*Uf z9tp;AMoKW`TpL=6>dCkZ6FkmaZ;5jsPLfX|5NgFWMh~R{*-K# zFoZ+PObSMzuL$%D)(_UOK4!2!rL3z{l(QB)tzL}pRUkfQAm+{K^ro%aHilp*t|Jp< zk5!Q6gN{A`vXbQZGYk=pdV~uYMH~tHsSm|H=*|qHlxu)c^x$-~hTAT~MLK**w z*8I_|)X}k1{X)N+-X%j6rPA`J#Csr#t#Gu){&-rCOf6?h&aY9_g!RW+Ae0rnqDKtl zk0gv!Dlt=6)Kf*rP})pVRi8nWo~TBS!s&`_VvXA-*0>E+V3^RaEkoco5aR3Vt)Hr% zd@mbow=veMCyw=MBg&B~fqYfvoqg-D?d%`hRNc6(d54(VaZn_=01ynQXTtG&0T-Hz zZZzJBJgCUc9YJ>IP z?5k6J`-tJo;_8n$hyc(d-j!o?SLwX!1ZzvZ6P7_0M+W~@gNkxS?}B507Z0Mm*t$es zO4mom?o&B-6?`fJ>3Q!N34bCGblk~4TbpU^Yeu^aHTGRl@xIfchb0Rh_I^Exm8z{e zRBM4#RYKsNhHmeK6E^Kd25H)hv{1VyiZGI7u_VHbi>NCxBn1dw^%+9O1P_p~#-QLi zJu?~AujNb-^Gd!%xl+lQBzN-oJjx$HXJU0(V@WlOjNB}LNKp7@|9zK!pY-3z68bJ2 zAV-v42tnvSGLu_^U@P2N!iazl6Fk?=GW~ZrA!;pyOrK*gjXq<RDM1=v4CP=*1;`rSSjxzF z>vfDy{pn{`2GoCmdDlX;Hl$(_vNeUDD zltJg6^8aoX63xH!>`VBw`tet}UfZerhGXR`o;JhoxQyXx82o0o5lUpwfbRW7H}k^G)WGf0bNLe(bY$jD zKWxXlXr;j{|H-)~)3?_?V#JBW$9Z0vcD5s=HV%)bo^4&)5>dJ7CvQEiLsaQL5aCDS zQO_LpbPq9_1l6F*C6K$uZ|=Q^!VsS%RL~;L%9cEg3e>s!0Y_vMvHsCqEhiq zm3~l$s8WHD+w!2qbZ{?TSG+LRy`1@qO&z(gZ&q&IWVlKyW>~K&C*^f)Bi1^|+{UjM zz4ko3C~&arL@s*|zT{e4PEkr3?IuRfiQu3%fd#L*IU0WcYv4yG?HXU+i2vJe1k1fXda_KN+s zfd~bFZ&~XZZI2vNNDX|9eim^!%eNwBv$gP`7N1)CqjppPV zDprMF(QY3xm}&_|(5eo@@?~lOO6=l}T+)jk2J+^IQwjsI#=>WO+GDe_hbfi+%W*Li zBwV%J0!!b4UdHj@ZhW!!=v$P(^h3X>OOiNkY@Gp+BQ52(ypyWUyMo?KI(Jj z?4};>7>UR*N&HH4kyU9x$(EJMt$Izb)NAKa-gY)eX7I%X9;LMIb;YBNUhBLPnvtNT z*O8#(?nR^0Vj^`y&kgE4`lP5+LZranlbj-f-K>!|12DQ2Rid$a@<&jnsVuLX>A+R9 z2OXGz)sksJUgk41-@RE2yZB_G{zM4ZCkq@h#yszBu%UpDupa5L$}UW6s^a@Cl8`$8 z!@cPoYqM*4j>>z)>huHijG~Z2;z}s`k_*bs$Yr7415SkXzXH@il3db(1y<|W4x9b) zhdPHxDX5+2NN8*iTSZoXBllT-CoViw{#=WBtU$Uq%cPh@9K?HcK^16^B5AFzrStH> z-qOUOrSM?96FQl(fwfk79?^>g3))~^^>vvvwJnqP1R__h*lUaNEo&0i%s7UuYRw4E z8nAxsub`cNfs;{dJnKxX0QO=8q}PhXT9MRK*F?LBxi`0 zQIe#MKYw)bV}fAGkws!uI}A^2K+y^<{<38m!uqn9Qhi~*$QYQwq?`vSVw;R0F3qB( zjI??^TA+;}J2Iqzso6)XltO0~XWxHeYmyRASy=D_!-Fh=2r|Yrr6}A~+!7tzR#XT5 z5EhjcG>}!{yG01k&H%*zWbORmInp=}*|xtdRU1%KjPG0GwsN+qij>zQb`kOiqHhRP z=M7F#+pLI9YE2Zjn(?=4a&lq{L?Udk7$Jy6&RCOhsTbI-5v(bV!i7%Qc?A;qMguJ0 zB!a6|f+qHLfB|A37f2q~_>RR${XtlxbB|dED)lCD4=S0yz7;zj#JEKtk&>2fF-me6 z`47Q7ZR~pvG4+r?_tmo|iz)mKpC$Zs`<&y!db_6B2-a0U%?y>3AG7yNOuv`*w-O^QrL^a-bhr!oyjm}l%ydf z+)jD}@iP<|^FDm#(yj`5N3HTs&*rH@-gMj#t3A3E| zyD8l?rMo#n=QcU{OREGwXQqTY+-=tTq|Mc zxD4pVz;3nbgX-6~UI_407_nC@7Ov;nY{4`{VSk7;?=7|7|B zx`WPOOIa+^q!g1}or_{aSgV}(u$CdL))1x*2@FGGjFHC^F*a#a5SZ%PNOt{qYi#S2g5o1X<8DM1|5h>L-U2rLkOZR^~Dv* z2yNM9NqvZfVKeP6>F+)@9ux!hS#yAaG;~v0tc}WIb-Yec7O%W*WkK(nv+0#eL;V$s zSCi{ziWOLx{bK7E=P$1ugcryan0=j;19m5yvky=Z&vtD;B6CgGlLS$V{szC?it=4D z$&Gz5$gVoJnKK7_IQ4Lc;m?uZZInWo9{i+E5y$$>`6s&Z?FeV3&sFygS335m7P0Yu z<>SXQQN4*tit{N<%fm7ah_G|CvQ*P`*`YEtu|u&6wAF>Ig6pWty$qTOi{{%V19($3 zYV&t<#c)EfcRP(3x9W5h3)2z{v?`v$-FbGX%^28@0dlrIK`4zTC0scc)LL=JrCXZ zOW>B-U*%QNrFJwax%tTo$N z@nTlRic*)a{2H{Ne5gYyfzW#&kjN5+=m4t^hR%J%?iLs$TA!wB>~-Z!Wa2Yit~y+S z-)HHtwpo`x#CAEUQhDCB+)!!~IgZ^s#oCb2#=vjgU&75>#2T@7>XIt6`p=Yh!~zx^ zGfFiP4{Z^T>OOj~?9di;gqoly-h|x8R>VF}Bps_ULTqo+obBhX?PcvC3pi3g`NVg72eh!qbISd(j2`ImVg^AH?v`XnFUjWC z`8Bb&Sg#>d@>jKKh>TS4Fe}xPV5R_A0 z;|<|sfzN1!ZVG((Mfj^?43rv?IT^}wlv$=u32Am9jojqGSZ+g2>ulz$iy9FytYYgq z?FbU;bo=Pc)1dg4Pd-K0JKQi|)skp-0_PKSjH?>FChV~jI#1oFl(`CUHgQen!ZSb0 z$(}4w;;Z~%j&3Yp{Nzh$tmFJ*&40-Woi-uQk(j!P=Xl<3ux?%8%%v&XfG&b@ZN2@WgnE2YC7%m}U;;U9}}^I_1<44DcjNZS?fRu*RR@sqBSrLqW%Q{?isZB}(GIq4+jM$Ta*x)p4iDD-xDq=; zjz)>SEX}I%S`Tu)S=m?qfPRQJt;(taeL-(DW*$@)mnpY!sC~L(NSi;|l83r?bgdpL z{i+5TM+8s=>F@E&X_pYFjR zmqRN8$cX#|_cuj(4Oc^pyaqldeR%|wkAb!tNYXwL=QfrWgVnx{Oe*;$nA%tb(Uu?@ zMV1J`{KY+os3OCnk4RA~$w@Yq=f6mVb5qk#8grz$u?N5>Qe5?U1xtk?8FSs5I>Xpc zOKvT-gBZo!**)Rd9Iw%R4LQzQ8O{OZG46Fte`77Zx1ULL1fn**ub3)RS3@FdJ19b5 z0b_lI)2E{GOz!@Q$TPvF!e|y}9S9@WnOUO2w_7m3R_&uII_d_}7<73V=bEVOvrkKX z#4@}hD*M8Z`FlUr@|~e8^B5c^+jvAGg7PL?WciU&IaJ2&pjQCP=ts2^BaOKBoB~4* z8JaTR$ z@|9Z5Ebh6IYcH>88%9k*Hc=}o3QPq5$$Uv!A9oKW;7m#6M{?3HY-(>m^S#*&hF|+5 zLy|GHD$i0gTA_nf>6ZE9&lgii*|*d-JubmAlhx3*rp2Tam|fj?tYl7#=%N#m-4z#W zpBlEB3@^EbUTZX>sJ2%B)s2`YjApF3T6HTcifjaGl$eN8Q)U^Cm%GhwA|py!n)$v~ zv-UQ@PX@11(Qyt{XR!5r0DFqIH9$8XlRQ>2?Xtz$$bb~&>ezr}wt1@>(9Jn60E1Wu zVXwKR*e_N(8C)1_BURhW6JW)jG_h(zwG03`Ue1v7PcyO`NYPc)k@>M4A031f$ar@UbihmiiY)<>8y;PPnC+aU3N z!Fnd@$W=1sV;kSRI@MLcSJqJ@;OqSgTmq7iK41-qhDA+x4ZF%#5Tg8#$tfp&N7w8w#BgmPV9u{3N+oZL2kQG&0IJ^SaoaG1@+Hx5|%Y_ ziMnT;X8CY$wyhkTeJr*iE}Ui#VI$QLfK(6iwXsDyrc`oGkMRHLf+jla`)FKWD>{_M*4UU_=u zdq4YfqbzF1&;MehESdlp{;*MBG!;Jm2aU3*EkFHQ0fEo zm&_4!o{x_AwLkK2|9LSze6sVgtw^64{#&Oo<1_6u!_H2V8E{XlTn~cE77{Zjm7!fs zmp2f-dQ}9pNWR2Fd&!?@_s7&CaQlxV|b7;Jj58jnK3-f7`{cl{#JVZA@<7pHavshPOnd^ z*WaODf0$l>XZiG##dl#k7Jr4B9^pTA)Vme7v++{Dh2wN<*!Gbk$c1_|d_$Nej8!O~ zhBX!6zy?agZ&0khfJutQP-xqR9b5=64T~ZyhLiV)9XuN@hP&?P_O1`$@#_stgQQv8 zd;HtOx-5lTb=e(Qgz6?W+kc$YuiL_IU2YFcy4(@i^H2*+)+~pTFZ_nBAdXZw>z2cN zs~g(7VD9-A-A0oXr*O4pbX3F10s}aMJpp;(HpQPh3$<(w-H#w|csTeSR0%_6Gf3W? zdVE-f>F+IueBC`;>;V2ddA(&S5&?tf!0R3EVyi-WFx(w>At;B}+#hza5JM%4{F<|0 zOM=Q0>EL^|ggs$*xF+n`q7TA?J?0x8t4yD)8vW$jE!I>aEL^8|_G&moHAX$V!?jz~ zqPMe~S{5l8F5b_RMH;*w7hKrkU%Zu$?pwBQ?o&5aLHDuY{;FLKQXS^$gfSlQCU>aA zH|U)ks}HTi2Uc|WK%>Jq>FeQJ@9@pu;hQJGm9hzN-Q^7p)y;!}cMe&jI}==Y(aoJB zaNX7D<}J&`PIj~zLT2G0mz%eQU0cE}TOgPl!+y4-*}=%efi2;tEwIX7QPFa^jtdk3 zMz7z3e4zS@h(tOLX(4w{MM;j=MW|+slIXtZh(75v2Uz+{xKU?UezlWD*pc&v)k3fB zv2ov=#=UdP!|W5%q^F%!^{~?utg=s>wJ)HiTVdaw1qlZ8G+$5~0NA;u*yE*=FtAJa z@!`;BMEquCh>W5LS+N7j(kUI zZ!iz6qsC6^sD@m3ROei;S!NfQLYLd3OzMQS+9jsY<@Ty<-SY4~lySKumPN@*b)+s+ z{$3uhSJx!+yp$S_P`Y8Xl(tGruc}I2WOgL0S+{fnnFrgm151IdVX0c7eV2}N0ibts zVTN#mW{SJ?L13qctTa^yJ zXAJvZubVQ4Ze-GuDA*-x-7jDjz+x|Sx+KtK4t;7fE_Xl{FgQ%HH|&yW zsE{#VvM5imzJUv{-owQ>0J7Ot>@d|@AS`yUVsEd!jzgz(?N$h-FL7^bMS^x1^~rAC z&@4Sfwep?PA9jW7NpqHVzm`^a@t;hQ9sIXXg$KZzD~$V!Jq%_T_MAbp&3<38Rb#II z7|Eu)hu1Oqt$|%}Fb5b7%)aB)aOY#gn~_)HW*N{2co8nw!Zv{uVSi@0l@|+Ej{+v+*?bw;@7v1|CHP!;Gzx}co1P)Hs>f7#bLcV& z1YUv=uY`gDH{PQHiUfw8<26?WL+f$lBX7GPWCj|fiH17?=hkpD zvtLb4-o}^qA{SoV147hwb!o>53I1WYI$V3k3f1*p6b=I<CL;MF;Tsd*DVqcyTd_UuJL`}K44DB;)CH{7qa`cYn>UYH-!&KP#=H6(YTR3slX*v&Rip4A(?}o(OWbMfy(eFoOsGBnMA<*ve8N zSa>U64ZXA|xZf4_+zTa1azPJR)c3OB3zF5MtDpUEe?6m;*5K!f?v3sLhU!YpTH|p)c$ab;IC_je`rWz4kQm`AS zRT`_=3}(NHd7S7({bq8ev6%e(R&m5qK<_Zyu$t~qut5+)Zj@@AI{;9?aE>?MwjB0V zH{ZS-FfHQ~CU=3iA6j+>+QHaViBH;g0HSbh_3n2phXd8khnK^4znNzd{zAZp>fvsq&?tHycDCXaFAi_C)JkNM|u zPAoWulOi6s2bl3nTQTi5D7qwxl}J_@m7_dF?2U^UfkIu}W1!Xb|4qAPDROajeNxbH znVhp+T9221@wKmgZTcfaZJ0jn$S7-5-e+&x@5k%E`ti`!wR=|ADK^Q%U%&j_j}Q3* zCo-%|lFX?sXOt_WNqr7)bZ{*I9C=AZStM0b*!4nPObW~Lv*)Zk)2BM9fJUb#G#W0^ zmZBkTuXfh!DztiHQd_YvTI1GwERFIK4PL4_jUoKxA957g$&02Q40jPJ2Z zsLiw&ZBi0iCkirqNPIQ&YLqZ#(^If-=_VNXLMKT$9#92B^VXe25u1%5tc$~*4)=0k z&IEyraH`+RAR;A4WU62~JKgoYmQ@H_#hAlz;o-2#-M>R+K$|0YIQwvz3$rG1l>#s% zRNn~DDxkQUl140-5Yd_h3&|hr1BGiTyv3zuEacmD6k>QrQDU#s#(GNYvoIKYdQSO% zf0-`RSsNO$i(sed&6h8H%uvHX=F1oDHzTP>P?D5-rr=ORnVybJLbO)tFjdBJE#Qj! z@Fvl0AxIG6>2U$^U~Vof+#h;8Qq^q7>A*qca=2LR=PCtA2h|N8<<-><9_}^iMr*Bt z!Q5TWs}!lGk|4OPQlxrqdR0&g>#94T6W05kB^eTe0t!&fnc={ZObP-R1rBc*cmdSSJZx)5k} zOO`-C14-C}#vCS&`sM zzBk8v#4SW1yl)u6`&BjG6{wT32KD7a^iE_0QEU^0$PG91Oj06I?CzgC>uAx=bP7dWbS)D9UjTJaI#G zi5o{68QezXt5}fjzu?lHNupx-mA}G)eDx*p$2s-XZlW0}g z5Pz)ziPbi%+H|n3e{3Mp@KjR*i5piOmzrv-K_aWc2Guu^XfT`URNu!^fnBx{Y`1{qFO62Fgb6;xnUgAnMN|wTimTfa|4;DcYXwxIZ7Zjwm>Fk>FH! zWpHW=(w#OD0^G|PFwrgF$dx09WVwOx6r|iIth0)+&O#Z8PKmzfA@7rr_Ys0qFX~Jb zfjER_t+bPd}^15&hf2#ZDv>K3ZMRUN#I z4j!h1w=;nE(6Kw{*n8EnBlNbU*GHkMW4wKw|E{JNUU|4W1)VmBEgvbi@*v1d)yMu} z8#*kY>$ro0_ey#iTnLJU-BCn&!NPL5CKk+x#q>y-L2nQO;=nC=APA+fstHZElN(|! zeuL9SPF}z1hHduiQ3^LK4+9fgZ-9T1iv#wH39~1wa2BPg^S<~gpbW3Wr!w58FjL@r z4IrZwpHK=jk(D!>9|@cf)(A6oE>~OnQ zOX>H__i8OP+d^ndY-#1IElGu}k23J<%cSw}Q%7e30R4od4(1m~tI#icoM{F_13jra zy>Owemkr8{OA9~-zssjK$}Wk*%{%r&*Rw?`90qbb$nq%gCTTr0K+{q>WJu2bhVV|7wWor{y| ze4}ML!5jAK4b!VRwjeOJnIQ;OCe0M!5u`wePyi;tiXZ?mw--A^y4&zKZO0u5#YLzv zhv%J*Og1(ArF!@~nLanjaH%=ir8wB#K+VV4`0$$MhYIgBpyVIEoe_zY$meEYBRExf zm{DP<4C#vx;w|!$27yNH|{>4otn;Ln%xB@JD)JFY6__ zM7K*?Z8yK6yltxqOzkL13NS$4>8|3f6o+jDs47YDdsTqSmX7U^zMcc-Z0M4t(@t(G zknQ580kU>QF!I2>4OmBBZIC~LE(u&b(>DCf0KxDj;OgOT)^8XLz}ag-@Yti<<>FeT z{&i&*T0}&E3%e#Xf=D*XD4IguNIitUV9l8wV~vGn{Da<>#YhSoA(V+MqY1p68OYw& zcAt3zd<}}*MV$@sC9%JohNzrx+)H(h-vf2OU-Wyv^n3b_rGttwNFnPQ@I!nc{hcQE zNj12y8sqGGItq%Ql^w-)({bB?=yrnY`#ky+h-Dc_QuWI!c}(;rVx$D2sFf6xQ+<>d-k?|Dn&4 z!cjrPrN(r`n8<+=XqJx|@lx2LsWfdITrM_KFP9tU)o9~W zABR_f&FC+3;l%>VP}kL^?L^iJKAjB*H~^JGbzL#I5MVMhv-OsyZ5Xueq|#)NNm0e2 zpa#7qiFSz25C$o6X-%(b8wLns7*kT zd^Da>e~RFO1BtmU+{F04FYKdp3W0eIb+@C@of79^K z`unotFUBw!a6?fYR&Yt_bhnvZcDT|i_Vjic>f6HYqowar$Yfi1PgPn?m#7o{Po1Li zJF4eaN?iiudq+#D3vLQWs#0zaVIP=sL!BNEw=Ne4a--HtuO8I|tdv>q4Q>m!nZY4z z%zh#GZseQep`LzJ!6B4(Rur*Tfp5<^uDrn3fWrbHD8iCBE0Rj^^ zsIAw>-Vfo?Uul)p=|d8J!TK7RDik*=L-zlz-j3*-<$u%nSPlTJ#R=eqzWlsb(bL8N?e&0S`OnT-o)vPv`@oXyQa zvOF2=PE$%2Jx)S$S7TJBG2R*aQw{YJqr}~auh@LpjW0F4>Pro41$+X`Ibj6-w=e=Z z@Gu)EwJ%IHyC6JG>P3tPSuK81_9B$74etbCn7N}@9r+ITOH722R#KbYR+yH|;CbnO072VVng zZv|@79Jv!8J2H?BStweHP1cUVMxH)nCzVrhg7y3) zmC;cXAH)#wg;I5hl@bf0x&*R2OGAk8C|dxdqZmDlzvRhemJcI@EQNy9TiH9>(KrUG zhd8X7(bW_spNBw*m_Q(G>_*=h6hg$pq)r=Nio9W0?s|k?iojV#X~mh^B}`vEN?p{$ z{*Ba4w02;aupOf!#Ad0Ake&97s!A-*stuS@36aM}AE>hyREk*p7~8}d6rYjqh8l>P zX)7jV7}KO;#wNsuJkk6@)W%)_&QiR~3&47cd9fnV-n|dEeFGRHFc=v+-LTF+>ZHQI z0;Y91leV^Kdg?R*JR@Pkc*5c!D(peQ#u>~c3|dx?28E1OL=Q3#@W>fL-=o-C73Ld6 zU7<_i)0(U+d?`#?6E;zwrR=^6VTzbmL~STyx5_aT5u$0Li0{o0ZVil~DA5}m4)GBT z6j8>`IECo0Us_-^p=Y>`sOXDCMZLy^B*IO-@`bTtXk`P%pRS7uYiH+i(BDUND`9b= zie0Y>a|!nmvl9>{6&QoB10$Rs_%Xdibbd7a+85i=U&AQ2Q3Gy@Cs$OhIC4eMz`@3L zqC!D6}wk`dBU{6LdgUQ|d?P{!EPdx>-`%nD*ml9pO0Y!Ox@hnxKte?r{Y z-RD}q{OmWdE_QZ>!W{S1gjP_ZPaM?EvDr!m`Q zt1H?^v@1gd;pKgnct>c^f1Gv5aEwdmbJoDoY^G*9v6?n7qcB+3$KdNooM+cic^uRq zwp+Goq_Sw*9xyXSNQjobK_0U$&REjLV!os~=n?{ehFw#Vj$~BOshJ}YCw-}K?PUlN z_ED;cm@G7r^L}Fo(n28 zCo5-+tpM1{o=b71_eka#>3IY~+S;ovWlhi1)?Ri`&$S6!RfTQsWlx&D#uJEQQrD!U zSTgNM)?}iQ3N}^9(~e;&Nor|R7F1=7PPi6SW#D%Ar)7JA%|Tl-gWkw1JSU^zFZ&u= zdo!j0WgCV7m+Z!=GX;E$A;_K8$g-aa$Cb0oiy5g2{9+qyezD|xZ`LA&&Lu0vVHXM3 zGTqDhh$4B~DAV3unkM9B<+AlsCSr4xZZ??fU2gK_eJz$0UzD>UFZ+&;i!Cj-Xd!xY zBnEvdR6X*g#g4S7a-G+Pyg)>4MlWgq2B4UJB#A=a(O zp;?Dl4o=WnIXG?RaYchuj+qUP@FxslKpfWatU!r^(HKYtFum25#sNm?2dLcu*xm=| z4!2$v_^<*lGQ1ZJZir#lvilB)VrQXAh;QPEw!MX_e&LS#Q$x*WUZt6h-pY%#a>LxokU>sIM%?>HXd%>UJvYa z$nnOv%g-THEK|+MjcJ9XRlEE%H-QsaZa>^Q!nacgv%9!VAIy$lhR!H2bP{cEHx>iW7Efa^u=pXr^(e4N$F@hkB=V}$w}(!_D|9+zyBcp-c;VowqVr4 zrm(Sl*(N?=F=V^^3ic1UwK|qY@oi;ADnlmwdkn>rK}MmcY4oicX09CvoqfdUBXG$N zwZ#+0TZ6#@!YbF6&+MC5{_Btbn&@>qK7j`Ng}I7UBi9k&8s)lvlN~O>b+b*bi_$T1 zc-4SQNP73yxX)x{jj+qGUoF4tHl6=OZr*$~It=ei@t+1c#(>vRff&$;6};KhlYieD z_sv+pn%svxbpl)fy?v*+PmEC9m(nd1_gebBzP#BfPP?xGn~jIE^;ED|w6s6bQC_l6 z)P$gm7bCZ=v1lc=O*MH{)OIr;k5OCNF3hFw2(^vvaETD%b7cI%{6&d)cCP(ZT@f`1 z0t8a1*d+3On!F{xWQI!7nzum}bKul32)!>92|6XH}z?3w*hvCImurlP#rJ zceL4;dCADTx~HmYL5-WO21yQniheETr-y8qLR)$O(@X6_J&XBwVdGm@`L}-iVoRGL zuJ$MKbrOJ0ZXyj}zMf8KVWx|H-#u#yzD14>nQoJn81gga*Rp%aAToIz*sq5aK%rFP z*$hbSg?SfKOW(vXFN3yxv&a5!yqWkebzJ$&47d4mUY=tBvPwR3p|1K`b zv;=0lH28k*{whiwkj~ucTKxZN=@rk-HFKc+w^s6MC26VUw#>-v&+JJpaEx_3w`H$^ z>!<~?KNdYggM+io&V;k_$DXoLtxeru>@Cfg=e>|UxaGar)!S)G$0c>rd#2~|@&$%p zUaeY3g>|LZOiLL1KngSY5nh!!v~rtR7$q`{J@<|}voPN*JNIzN7NEI^c79j7BP;wJ zbOwe}XEYTyBMD2EZYjmhup!NWRd8j{!kU@@uhh8&i2+PBBDl)m7Vt6IBJd~H0@PcV zAL>!g6M-DPxr4a~6cW+D5T#3si!E(thExEX*h#}R{sr>tbXcR~R$!ks&lN5C;0=%8 z<0jT=Y+$(BKx48`h7@mzN|^&D^-FUosNr0EQk#hO4PXTGW2!V#v`j6AeOF&Q7U8Vr zw|2ng_gSqH;cuGFVL4u+`^lkol!t4cW0P5Yyu2n)rOkfMhG}hgijCOY0%L@k6IhFt zAZv?I5Db!9)Obm$C5xFA7c`IT(jf>Oho*&3>vc58w04B+v&}9JG;QLhcXcY?>;HRP zJ4i~amERh#q;=c<&3<)9;v5!WS?_`Trazg(_Dvd-cxlpjO2knAF*Noca@j255JzcX z@mrU-Y}$-$#;P^vuErN7xz3GnW0y}SzDxO)zkG4@B=|+3QlTd0x?JMK-VK=4l!$LD_FT* zqB(_#`G}?sNTk)F58;3`s5uXPo$bZ%v#br0Uurefyt+ZnZBcVBY9_YA*S31c!GL(T zeWW!4erp3{dY?yPilCwi+GbLj$?#{2VrGxsFk?$|Fii<;p^jct&j{SDXBS`^M2Rb7 zL9BxR%oP7nu9{+vJT^1MT3rS#Q(zH+=ny4OE6D>ybyH#8p-gAqtUZ+389cPXj(z19 zU<+7n)*LEfJ#AD#XO?CFTq!{kXjcM#ef(wu&^csamgFNwU?At9Am&d3xh&2+u+!&o z&;WU>0=dgoJ5R|)g@Ig~&}rTwkk9Ez`aJUS3$9f+z(s@pTDHKposFZAS%C=KOEV!t zi=-SyAi`F(@I?K^V1pw;N|;i9ov;cTjN>PxL0h_ADH$ zDp8^1gxc&w;o)EqhFHqB>v%|fm1^3(jZ zGo{+)FYt4|@`nuA^iG;`f?odf-?+fpxc;~~<(#0E5e9h@pL}o$TjsJl_3t7;WIIUT z@Y6MFrA5;`KNoW?+^bEpOPDkC**;Lp>h3LJK>@P1PDM?F{t7?sP!ar-{EXxO5fekvJmN)saOr;yfqqOCwF=dyeEuJ;Vh;vvI8PWCHG%ll~M1}!hyhBHc zSqlc7%1^St28Ovwn#0J;B63Zmr;%t^Oj{>7Nv?d_3id^%nyNY-$LXtsU-P~fc(j+v z1u}c#gw5PQiX%vim8Z+!N%NZ6!MJ5~+vf&=Z$bx6rzE9!ab#XS09K$Im!3^&B<5+b zZUw&A1Y5Lg6YS(u_dyu~Fx!oEz;_`%<)6wZj4%+xn9^TUFNAzL!lCaLiV+OPSGBh4ZXp~dN=SdT5NHQI<`}U;zPeGa{)pan9 zcq+}5Ovuceob|Yd`=FUGt@6o}j)ln4E3^Ekqq(QrW}pW@>Bto}6D*cQvgLvq^Kz+R z65q@DGZx8XULsS)w5?)sGSXR0X=xJo!nrV3bZy#!I1Tg54#Y{pH#Dvth$DM1zAwvI zz7btG35(8PByku=#-6Uk(NpJAf8?W)eW!WSNPoEXnwnK~s6uulRt!;iEe-eT!;BhW zgI<6kJ9@-vk9n^0Rr-fDpybe?FEHY5vs+qs--@QjHPTi&L)#i>Zg2l?6@2sBX2Y>uOS_=$Uzd=Cw4H_=77o&5?yULTp&S z;47KihKb~4H8jjcE6;GiqEj>ZTn1wHuqNxKS9ipz+{HY#zG*CimW%{XJKR$ z6q(uN2{NOKEVK~0@^vv6$cPCOv@yjd(+1C>m}CSQ;$jt4SV%sS3E*dnZDAZKZ45y1 zhOmaIm(GUO?F9n_AY&fZu-2K5L4Pc(HDtvn4PlK&Wg4cbAQZ61erb9}jXEL43`mT$ z*QJCpC{3`j|8O)QA-YargBJQkFv(S&u6@UP z#Cglz`zmt~(W6#rhNNRW@rsyEh{m8apJc)}h9p?1k>DZF3P?7>sKHfOH3C5ZVrxj{ z6{NgeF$asT2|)IyMI~y!smj^4vx#9V_o+}#2UbY*)>u2*3Wlx56bGQIDNS)~-)C!e za8?fKO%gyjs>^XLAL8_L%r-CqR*5f96R^dEmN0;)AZ82a{6OeDdFKfSz$4;rPirm?_U=EB?W@Spl;bGC+F+kfy=iSx~o=Y zGu^3tc7B>wgRS-)8l~m&EZhSv-y@@#)-do!f$|H`Ay{vf({&!kIm+NuJ25$rkxZ2l z-xqg84UQ%vyJKHQ4#ovBt{sZ0*Uz>1ZJ7_~-;^IR$FH7+f{sdLK6l^LQ}Qp5o_IytPjW$H#l z%v1AEeGM-F^A9yl&66uscVmTIHTc$mggD>?u9S7dd5TZ=K5h(Ta>Vdyf?W7ShA7TP zB8h-&BmYYPu5ubXIGx9VOVA+JH0Z0W zb;2>JO^lG(rZv`bd30xAiWO0y^r0R$gt(k;%db1e!S7PX(BIU*c?A!->^7)emUqAS zIy|)D?eLIz_ao!&-q}Y+e?l2xdAW!hu)`rF=1%lE5T{(YtN*yn+{Y6f{ik)40QuvZ zph=GBSU`KTzm1ty?qoY~dbnxNeUp=Dc#G`X8e5AIFwWVSsk|(`MN|?+ND#ROje2N?o>j_MhvTAIv@xhd?rV_9Oc3 zSx_J6r-rQoFemw{pqI1X2`&dnXEA@dU9iniId@NgOZm6|cmn@PyPSa93m{3T{Y_m#?XT+!bqclrP`@3uzsApqT579N ziv(l#SDtsO6uo{P=93{Pj#M!rcn#|J#)_GIEB^jkUCiBY$2;h=U4Ev$d^1Lk(v@Cm zn|&km?Mwbslp;9Ud|!>-2J#ees+<=mA0!|4!nTX4K^ANVo#)O~%W;zZ+eZq)GknNMQ^ zZt=%W17xHnH!W4+N3E&nKgukdHa}Xd&5!VH)7n(7m#s`-3Js_~4aRgm&(+`KYEr4w?#(>QOb`s{8+0W9Cv%E zVg9&uglZhKp?jks^?@GEiiI~D*NX9wFHjxwOm-bq+Ac6;#=t#h?@er;UQPmNaS1?9 zYFM%J&RzXs@4FL7zOL#>OsxjrsX8(NaOLXAn|){M=mPnnE7Z}04CRkT)R7qUQew-L zC}Qh(q4ve7h9j@XB1o1R*Nk(lClw_*ph6UAhx;`PY_#@LYEO+wNz?I zE{VD*&+yZkOiHo}8FjN{Rgz)Tyt-%uPdh~0J(8--zXef*fchvBYT^FpKS~Y@KR(Jz%;^UZTT}KAVywfu zA>LdF{Fo+p((0EtnWTt0A_4QPTC>Hq?1G3nDgy*tY~IrnzwXB6|KGUzeyDhqn-x%T zj`P(zSv19EU%o?b#t1QQJN9L#?7JuX21urBUgE#?C#CtE8h+}dYDIlaHGI7RlZOaw9CB*F+EHQ$@w8pM+6Ms@GJwiF#JwMa(dtS zmX*X6%~*Puo3Ti|y$u!NGpSK5Y2qTQOt2cAxcH<+^B0W}$;7#C|%X#K4i{7ZFEs#m4{{dQ&d0U6FzF=eg{n2U5B92KgJIS;auFbUVS?_)= zFIPFu>;>ObMl=8XPiva_V*0(RyxwW%dZ(ES`Js$WrOVwSY&ucV44WR|TSY%tF8{pT zkji}IqW)wpjyepf@OppNG!-k^F9bwWF`6(eQ(;{hP6XIsRrxP)b}_G7S9E(Hc*`XB z@2ANt?UMI{jL~WGxy#rk?{KD!N|gSOc8M$vG0ROWW>j zPOv$aGXb5draJZ(f?y8u)^PjEd=bBzG{ERvM}S?70gzwv6!J8nX{qKfr?h)jHrp0N3}(JM0y5MAv?l zEdkcabm5JUsz4^qDw#3-gBg=E%Y0%uaBxV6uEF?0>M-Ygg4eNtp0H=sw)Tl3gR;(J zA3dQK?CBTObx;}G_I2~zK*#=I@E7^p@x9Exa}6a}ybTRC`wo0+Vi0e((oK=w6dxbc zO?q+(-89jsCL)lqsB;D0zE91y)1`cBWJ)6`%-gX+uF@Ws$6UD+t9rS(N^20({04PQ znrGRrBYZwan6l3v#e$^!Y7jIyO0}21uZ}hYt-mir2b<<+9b?aY4E>VBt~#L){5a!+ ztQ@k-7s<-rs7uF0!FivYD#+(fQlGKZf`NN{qa%2fvOga=PTGD^TSDB`SHK7{f(1YI z_~1X$kYCYa`uBchnBzy}p@Q|IAzY2vT$T`%Q&2UnW%+qoZ4lZn|2HeZbCevjxy3P0 zO9(7w^M~3eIfgx(W;|RFZMcT%7N7>I_w?R}n8Yn@;mm`%TrZMBW&!r13w`}T6Dj2v z|M5#i#Ke#_`*|u2s+y^fC-}@!fA9YzWi9#qHu!IaPg|l}f^gI{yrfUto2@Vu`7f!i zhHZEm{+sATKqya~c1&=5nw)(59t4}bI{!)cAyEeAY|sy!5g_;h8D+f(=F7j~uI>RQ z*$F3}IKuP5EE$3M=w$sDMO@;txh=3>O;gd``{@lJer#0{TGuXs%*u z*k~@Yw5XtFX+ZRDvNZ8Ev9wsuSo&F#8sFQyLxVr(h@)r7d~-Wd!jEL7Sh?u}mAhr{ zf|FZ||ERpCU9p44ZL)L9wnx!P<|knkOpAxgH9qGUGCr-8-Cs8Z*y`oEU}@lHSOMA&Ifi3m@KZ>|z1fTH;hZ$cZki((ihutx-sq%~Zc)K+ zH3||LzSJoDY83x+)m8K=0y3QZS>sLCnp5Au@)FZ-MF0MtX&N!&KW+P-B2R#!cKOHg zL$pHqMXOoSg!1 z!iGEhCwq6XkrKGaGf;$%%uu#d!3u2;xUAMu_f)3Uew=@bL(E)d%ko|+vduCn9gQAX zb(bG`Q%@PYM_h@gteZS#{2-^7hNFv&lv8D+60^f!Mn_1}Wi8OD{s;A2C!MgJcbI1- z)BN*CH-2omPOD9Lxb8Wfm3FfKLB6%6W7rD#`+&*jVTWZ*JNVE6KoxPE{)#3K1_I9Z z5nN^*E@^R?mSkom#*1B}h^Q?L4lQz&8<8YR)mcWeG;Eh1$2rko{Lj+%P%&qupX}YH zJllCC!e6Cx$~<4%)IPt-pT4vI9%RJP*Qe!?44o7GJLz{Z*W)recQ5~?(uiuYJ&|Qp zCj*!ievn`!;2%|iWF)d7-4Um0=m-R3tb?mw3>NFLu+Y`mN89gV^=b+Z4B^M|IJt@K z36XM5I_X1Y98HXtV-6`iPSTTw$F<1mS6z8vg;rcBePUC+N^qEpF)P#dj7kWRcj;G~ zCPb}*%*>Px$rb<+shv@~@mIm-1*D0|LzaFJ%a?40i#YLiRJLm4Cb`pwvTu1tE#WoXI>?Vj(rT zAh2Wj_wPYiznRwKP=`M#Uy4OBGxS8(H;K!NHTK!PO9`y4wK+R+Qm_U+(M4cBe>vQ zYv9>-|3L2sWwn?@X2C%+=rsZci~+IA=T)x&|G0?oWqwBI1>q*%+;0k7?g(iw{=KCx zAjCug!puz&y%cZ*yuio>wez}m?0g!QHhB!#1zP^w5jcEKS2VdV8xoU3L4)sT1L+{rM3{m3)WQy z&Q{o8AFoh|-S3UpMg^R=W{+<0DWFPx&kD!3=Z^&CbfinMlGAa z@>G9^exDT(_}jz)<|HmC^#L$Q7ZrJr-JT_y=pfqdaoMoJtP$yL?C>hfU*+2>=b#gPFoD;fd8TOoD z&me5r=8&~fGFrs(Y{9Mfg-f>Iu@-k#1J=oeN0GhMP+UF{4jukd*mU?7`Ej>kb2wDvlRJjRl7K~pU#8Cu&FGX}2F%*a}i=)=e1&ZZ1%CFn?OQ@#(h4r6-lSfMI9m zLZ_Byqrb#{IPr&F@Mk%<%*h6>7J+kI4kuG7|#Z&Z)h_Qks=DM7c0lgUN-Y z!>SszxX^2bf3;;%WE}*B=2UZi{Ycs*@lq-1*MxM;wyIr?@~ z0vqg;#C6(#YNZnBhYe9Wm=Z8XHF#}x=^&H3YckZ}MX9929Fifz$|OS{pBYlYhlW(R z~cOmPzjUgo50Wk%#q?dd(YgZYH%@5;a0ktK3qZp@TjLLMZY zVouL*2|rns5`Jb;QtHD41WE9rBJ6A6P<l(GU&-O;&n=6jvoY zu@Fa52*Ndqk17IqM-|ZpTfSxy<9RO9RmbVzN-CL11oT)$(2XjhD-;=&wu+sac6VPY zg3?+=&@~_>-Dnnx(YaX!O7OsqpiJVVB0#&1QuZ*a)CHImD*#P&0p^qCs~Ncb00ndt zIJwqld1MJ`mIs%}CqCKGO#aN^oM2P2+n15oTJ&d3Na*aoa3v=hPY63lEO5@nlF&Cwlx}cD!<6|Fc@-NnCEI@nzKzZ=VQL$+=P6= zt^p?H3ku)K)n3PJBaBi6an#pKRtYdk(jujlD23=sQc79@L(U@2S(Q>E0%k-;9t<%r z8+j$1PLVQ{8kr?SbCDQ0BK<(0;>t;|C5B0k+8n++njD4>s*=N4+G)vQyo)GEOpRU|PY&yjCx>;}+?hd4 zN)AJnp4TxB22Ul2DJN{*eEDXR#TJ}Ax(skNpSgHWOm7UYEgsM#g@!k4GQdyqbh|I+ zWXY;(@TZF}bQNghNlnit*l^RSzZ1oP%qT$yIq<4&SS7koi^w5WG4a!F3ulCl2Q$3N zO2i_TlfWs*FH*^4+@fvdX$qRlB}}4*P03VmxJo`(k%xpv)L+-s&i*7@Pzd->_^dKi zV?5gr;1XK|;@P|EcsA$RgO$FA;2|bQxps@+{0tVQ|v0H zu=jPv)w(Pe3RkT!y-O|fQC+pqW66*G~fv7hdEL%bQ)E$gD-xutuqJP z<#Swja{YO(yEt@fOBpy`JXa{8(5l|9aH~HeI6K4D2SLHEut^ubb{oQ|9r+2`x5kcd zmhjyk#r|dyP|@rf?ADV03EKN4bTwDmf=gwVlM|Vf*j95>7NA)lrk)!jE>8B@@;Ge7 zj)|%@g|us<1;lU)qSA zf3LyH$1doV|1e8Lx|_y+uR4s#+XVQF6#qeEgZ5teTbZvqKM&#a@bmE-*tjQb0;}PY zB8qI@sAD7+v#i*|&)@c+HFplL4cAl@Vf@Jv*t;t_Fb?I&?8PRCS7fLdk1nO%@*6xV z?kskL?rRu+@>XC9hu!x8h;5NocN?p2s#!I_))ku$xv6|q?Xan0(M^#>H#v)PaTdKs z!8+p^nMyV@6sKGR2O+z*g=^z@Lv{H3kP%1Em)pZ5aj~$cxLR`w%l6qC5(8}yiCv0t zdFI%{$cimtBNjNxG)Pk0Sy1)OV4BwAG-J;kTwcBMOOnI#KtP^snu>K9%Mz>CERJk8 zS1BB&<&*4Zz~E8Y=n@T@g#=i@lFi1V>;h!m#xhWCBGdsA1(RJL+MMJ)>j9_$!y3;f z74TbIAkr0lM0ADjVd$nL59uLe4N8QgBt2Aa?4k0ecZ6GG5tY|!R?J?d2;jebMKrBR zx31(PUZ_-S5*R4im^UDu>3IWxV>EBzhf}Tq7R|@gZ;x#;B2H;itE5{J+nVvvlzQ!h z$TG@?#`DzxtZY*10HTt&Zy5Y|qn8Tv{9bFA8$^Lvv_kWdNLTp}t~|K~1fY3rijlTj zur*+;Xah*^Fj$&vVVok~1WTu5Z!s@0QvNc6rSiXOEwQ$edC?}KxJ&E!wTuRYB8E~; zP81;one{ihRKZgDt%OI*x8iq8w^=7m43#u=sUhAI zy$L^`X-mq_Nz9RsjNY{LGns7FRrzZvf~hK88mA&fB@t0|kTC`w#eUNC z4PT+jRw9aBO+`J^us~LY?ipkR&6?ljDlK42+#1ZEX5Ml0La8*-4biHxvd7j`xvW=E-0&MgYu*hR z-RWLwkkMgw+6-fjSwfuc;>y#U1V$Eyc3De?E!i@@_`(ctRHw;6wnLTy{P`o>>hzu#~%+PErxOXhXsQVl~l9Z9lY#OnalUzd{ zPd~aCoq`&fHX!vB$*&el0sQ=RlXIEUnpoUnDw4D>ovo#{9u+(DCL9ls{Pf zVE$lAHAJj9^9S4Ta0K^ie=rk+dT1;9CgqOb&!X*lAT%`R7?-Yd1&q|0b3#>Fo*RD;V}Phb>BRP+$wW5atyrFz2puJ}z$`Y2th{!foA-X2v9Yxg{Q> z1ohW*k{cWSYv9OVFUbu`73tR3a+d-pix6}X7{WY(Zfu~QQG$LXO0a^7F4PLQ9vLWb z-^tMr=Qkq*NF8&yR&Pg2(B>U{0-?lD#@xcdArgSQWi>E7nF5PUwZ3JOnLwm85kMT6 z`GI?k2s*Guev^H`u}kX7OIg+XBnCwWQ4W|G6bV%Kh$x{y-Q#;Qi6KEZ*`13z@@LHy z-AaFpYR24YkYXJgl%bj*37bVMSIKCd#kE^CmA`G9i8{u_4JDPd9nrfkAWas!!BE*A zl988i11sSwh7IxmC~64Hx-0lMP_SKh1pKf3!~j6FDuvUhw{4qCTD3OiipsuS{*Sz2 z+N9#ccKP>HS!J8H%l}zr764SeO07XZRFg={9u?G2Yo=;>oBZq2zG~{9*+)LSh-tX* zw#+j4`F8P8_6ukOKD?kX`g#4rC{VVNGLhs+M#i>eV)#2ylq4H8f1x%z&|(AZ0H2Y_ zB}1Z+x+Luu-#;S-wMbrUVM-pw)syLf#3L=kgrxC^#Y+~PN5-N`Y@nd`ML+Pi#fIj6 zvZqK8a~W8^qwP$Q1aiaIY8^^%D13{H*$QjdkQPR77z}eLeLAb|)RsVBmO!6*6Qjc8 zDdoTb1CqhAev!PdB48Zj9i@f|B!68Hs$d{JKBBSpG;-S92>ENG;m?|!X1-xp-V->j zYn+BEM-+*>W(J#p77e~^8<`pwodd}Y%ffnoL&nG=!bhU##@1_dI%*>Y)$}6kP_y)M zN^XEND%p)0AJE8K_ae~K+C`F(a+%k;TMB5hZRw5B5P7kT(Y?~_O?J<$cx z7=jY*XaMH-%o2E}2?QQ->~|%JNeHhF3#{URqlB8Teq8ud5RuDF|#BEMMl1 zTnkaFXQ@Shwv~9A+C|Jb=Db!S2fpLf`Ba5U+qFbBwgNZ45_5>DnB<<<73%nsuJ9Xi z6L;35LZ}E6os2a@fNdHDIw0T{Rv(d6wueIa+x}1_uE;+h_u2BFX@97;AA->HEGlP^ z>cxz2;)~jSlAdYzNwkIre7>XIC%@cj`{t8uJQ>am^PN%emurDGD+cuD0_t!v`{aLJ zx`>hh5+4C8PS4g0+x=8Y5U_$_!FoVvbV+Zho zw;};EWr8epb&5rP^qF(~kF|(wv>Mt6b3R?n2ZfyLaRnh4LhLd^D9-DA zKQ!Ld_Z(iin6HDsr*)2a_0e3&&XhKH0SH)9Av?t++2$@f<_Xfn1~KxaRD)B#k0^5% zOB5>CSA-z36Gfv;4x!PWBD1prwG0TO@YTucz_U`jnHy!5TF#J{Jg?ODd?D~tH{leC zpc#oE3mHUX584%gAhm%4pn8OSM##ot`k?iI87?z!+d2nWNZ^oz&rX2`z9}whS%hwk z#8ldrVe*tQ%-3OA)HXzE(xt`Rmc~RP(<;sBsLpk@Lph@LRj!Tp_wIOQr##u`&u{H? z*zz>zj92LHnRL*7Ldaj<)woM1e6%NQY8u*XDtc{qw%?nY>CCm~Te*QdXgAQA<-x@k zh?bGZ#b%Wu+1J3#PzTt80gxdXEDR|A_0#$qAPY=>RPJU9`l>FkUXScb?{Ftequ{Mu z(&=Z$i#Nh0k+%o`hNGB^mT&%NEN-vzcwicuQ=8w{-;>@hP~KL0ei_iU%2ggL5IF&n7Gx%=LkA5K zj8&WB(jB8XZsz1jIG8^gMXJ3VC^u=)n>-hpK&u|$GoBYP+OSaWiZd~ zLUoE(1as|c3}t4D4H&QU3rjmIEoBIB!D#zhk1G0|AxMI4Pnl^S1Di^l#4~HzMW*B< zT00YkS`u?6XDEAht87|K%ZMV4)>t*}^Y7S6JZFFNs81`w37|$K&K#Xh5{J!?c#75v zNI{)YE;PdqWfv^SWFcH9T3SCbrb2$-+|a)#zgj@7-Jh<+1!^mSAm zz%XOtpg{+-k|aEzH+mSHeN6URA_HuG>{9P(Vmq@s%p9`;B)Qt?qQ(V$V-K5l1`6|0 z1R#!E+ClF*ELS-MN9ZV`2`YZIO3O8L9c`x@e=X;SyS>1O{Q z_5R~}5d(>PF8ELO{hlzYNC#1#EXXV#JnlpxpNb0{Dhp(Ah*PL6uw{dO-m>iT!HhLW zVb05dX%s^usfs-#A+fp*2+vfaY07_HErK;PRTQ-|7MXAvC7x&kFsYdWBg_DztR7;} zKTa}@N{MmgC|({JZ>b+wsI84B54SYgt)#mM(Ad_9&c$>a!@*C_gX2X?#`(#vw@-Dm zX!XQVs2(#vVpq8}^QxG$%9wiBW9vG#jebz76t(a!k8LUGBgyua1C1ntyhR1gI7LW? zJ9Zg*l(JwviVn$$O5Sn`N+bkUl;?}BD4pkp;kjA~nG6Ax6Gd>Ps;<{p*kSuxoDv`+ zG@aHE&5R%#qY3mT1cL;gM5-o_`Mbixb2PP5067RHfUG$+cAff+(1^sHYg?hbJZGzd zjI^V4-6>i*mA9W*7&eOlhRw_YW7>X1HY2nI45Vu0LvbIH9&ToTgvZp%xSF>Q z63`nOB+BT)*IJm)Kl(#)h1%zz@*jh1DgB9mkxD;D%#+NK^0)uHSn}d)vE-E>i6u|} zRxJ71pNl15p#PRqrf{c~*GV*GOukN?^a8BV;H@}kvjaB&#vimk#g`Af(oPGZ2{*Mjk zEH@3W-gCp2=IIy*aw@d|GmccwC{utFshc?rGNl6tW0Y7x$I>sRUL02!3pTfz!CHG}GwZ;6i ztCg&x-pHCDU2je8p^A3qkkFaLmng-GXlz{=q@qL@n&~uAoPjr4WUv;y97HseA&3pY zDhZARjurI6+W2b_)-@}|n0clJ7q$Z1_mf41=b4S6a1t&Ug0C_JPlcFg%5OS& z0-X0tGSd2C6;==%i?0TEt68KY4kojv5WQOqHYNoV>Lt78{#)ZTwN@2kW8(|9O;eEf^H# zNQFB#wmx?KrP@Ai}^QcYIeF8DbZ$S2r3@@NpE=4hLOEylGVwcng_06gxs3fQcp|YTLX?-m2ve@8t;yCOT!ymZYVB*^o^)NJ%3XSZAwF9e+rVU+o- zwU;da^sD~f4QQ172#U>4j|7=VpO&sAq$@Hqe_@XOlSyc@@<9;%KijPt3CRmtQbQY; zqlv`mhS7?Wk0F&VLf#UkRG4fjGyd}bm%4KSw5urZ{a$PDea_jhlbxKr$aB^vkaLop zB!rMRkaZv=A-o@ok5+tC@dOLRfIK1zf`AVM6$Qmd6m75=rS(}KH6m78wbIrHR=wr+ zdT+h0z1phP*0$c?|C?EB?|mL5l-S$LVP|H|nlIxoiXqAf}w22i+nPNg9HHR(ib; zl?kgInKLs9Wl)r1pqd_CP$Hq6cqEkhgWfLETYkA7K)2`(yCr-PTr~A#QscU(o#9wM1B3X{y>sfkuBSIo~h!=~`K+RT@m$DogoofG9mz zikTRxHtrJ~(#zU|y*?mE`g=h>PX?NMjml_4+V&u6t|^*UQt4`x}<6bBg$ z%j#uXR^yZJh?mtGeeSU9jijF`@+MceW4PwPN(Nz(QQNM~DuH<`ZzB6J~;p zc3QbTiM?Y76et%twuD{e zK#O0(ikn(Z;-FG>8U*&hENY@Tg$8bnPb?R9l~=lLv^Qf zGEiGehv{>MEDQ<@HqW5CtapXFw*JiL8PA|tVsY^+i%BaZv+|GZoDu{PNngW>mHiQ> z?ZtB?c7j1n!KIYsoUV+-k?>e`e^X`rI3U)XJxJ*G*XTK|zpMuPmpxmZH2ncuQLS2G z8fHv)DMCrKr-gWQsWS!X9wZR&1zz<1_?YbH<=M}hC_6U8ZMeXbub)<0?J7{n!@nGY zvIi}L_DYRzd)@sFSG-Y7-quGD2&UHV4$dg-3Ki2Fvg$scDb9GXOHm*EVpd4SRf<99@2%!Bd07#VwD z^|U|IF(RGs9lSifL<%vF4Y4>YuqI(QB%)*M0hGW|xRgKxkNe^RxWXc0J5C-n0J90v z@bAxM+ zMCYSHjA^HvLQYq{q_gb)jSyCxlEb{bH}U?MtHyku>0 zHZhx!2E1F`0XiZtdO*{a^@5!S>Va~S=}dU)RUNLTV^QB4nbWaoxRaUuX3??JySi7m zO|&~$9XU}4Hzw*}97Oz@x>%Gh5_qy+)+{%sm#1|0vZz4g)TYCy*2`Ls_<{c9 znW&nX%4$sYNvUSw^`Mo%1o2w8$m$TRTH~=wCcRi^$Qf z$j;v;bo@ivgihWr(FGK1!Oh?}jNC#dlUAs$*HnW2>QZ?(A4V5Sk%OY~him0d6uaj1CvobZy4dTtcY{@mDp^p?>(?moS zooK4Ct!lfSyip0$(!FPDE0Aqh1R>iJj9g6*Acj4|c=u?!uR>=ECT*TfNq-P?ITcHL zCR}QvSpZ}qw8OyUnyd=YDK=f!k$q5%&>($tuRkh)+Iwomwj)|A|ADZC(AKAIb38ri z$i-ghkQIXGYE0^6SuHD6$v-pW&1r#+sF+)%25xE1I&ZG-hT=$pP}|h%Lak-9IH`>2 zh&1f`mXX2*@NYC76)9G_UYy^slje0ptecx7w(jP4AT~oP>t~m=k?LB8RCkQFka=TB zbqhRF-2zktH8)Sv{yaU*1F3blaQCPK`#N@2(UdY4r$BEwRVzGB@g)#&I#Y8FMtIE*$vLk&HjbI8o5 z={tXFZJ19RdNm2pQrBykt=2GWfuGH;{0tg|77AQ}3oahxAKg_}NI&JjUT9ylkmTqE z$eY=G92wsASpgz;Vx_Et>8`v7F=qNj=sX4-SCmx_?xECyizs!#m-=mA>acyHp~O-E z10C%!m28Nj`KGBwtLlZsN=(T!nlA)nP^-E%(|XgnJ`KKK6m_5<$kV`Xc52Ad4*B)H z)aH3UrSYv)=Ur*kA@zBdh9*QMUkVD$6GxjLfl1SW)7swDRN#{3jGu8xNE=VYcVo)Y zmGY+&8zZGRnsuwd`(8@=T7cOUH&1p5YBZVzQc;kB_VJ>V+ z6iPZ|35_3=_RUM+V1mU>^$Zn*O_ZkUbAuEQzkp&DjJBF0txMMyBI|~x-;lG!&1(w@ z`T7P6>(>@Z8uggphb8n8J=vWQ6BZv~+-C?*9)3pp6ctUDNqwoO7BstzWf zY<}P)78@nK=aeWz9py+ur$hj18PyvIGzd^WMh~$ALYj8426;s~Jj!p9L^2hSIWU22 zojG%LK7s9Ve54sIS2Ol^Zv+TN*5~ObU;X)l8B(ZGC0R-QFdUjve@mN$U8YoD28RX< zk^!c@-w*m7r3;AyPT*sk!A`#wla{3RrIcP-{AF`(7P{UrKda0Hz5#YH0k+)A1IpM8 z!-Eeq*WQ%%ytC6945IQ5`7A4=m}fk&>!tbG*emT2Su+>+h>wN+IUZ>SGLxoeoJSez zRgYX@(65-U7)^K(*y*pGi%=@4s7qVPE$oho>5<*Moz34ztH#8ted!`R8TD8-Eiyy# zQX$#2pVI1G5g~r=B*}k~nt^ApQ#z%}+ST;JB0Avf)wdLfC>s};Ong6}hb|#rSRW9G z0@x(&>;thzjzA0-3JL4J!FZc@(0e+HXuUB5aG`#f6Vut`&Q@9zs~t$G!ajtQYL1i%@gadnSiU~PvS9S6 zX8tT*H3r{;QKd=&;Za?i6xCSXAR=|)8}t;!EjhY}uA`bvP0@W}XvX5PFPWa+9dUos zqXkqTj}($wX+Qq>rX)C2Oy;E5;h*m-g=8Lg=FU%x%+|L@OxHgwFkN4tB+T6{ftwtQ z5S1)SFHerc>0EL=D6%st$zs=(?x_B97q491y7)P&Luv^6qlLpUk zI!s9`E*WhtcP)Fd!Yy@k)b$K9>w33bQ@fTED@+Y!d)Scw#t6a2?=SbbDU36>oYJe* zY0Gk>nZ<67Xa>VStx*@-Tez`Xtj7T5;+?JKMlwCljG~*s%3A?ySrziUT!3r1ahs{o z!%9iqW+^aGrx9zD7SZg*w4}8ZC5l?s%Yz!%!#$4QD8fa{K8FhiWo>8Zm(5OT-YzyXR#24MRiPQQYcWG3YZv3$qi3-&-=}sR zZ?*{D_&^v@AC2$5#V+eOn;T_NP;i4VlA)yEErFBBAeLp5%<~g6w>%lUsb}LNH-d#C zbtsFn>JvV#F{U7HN)k^q#zkPb%o*3+k>^6aeimZMdpVpK^99(kk`S4hr0E2GufDKX zHk5l%=4j+sCF4O2AWN*w$U{upqrF#*p3mV|#`isb;9DANsFYMHY)+rId2rLS{KfW_ z=m?4x>LAvtkxwNMD;4s>;83o>iNu*gwg8P0YZC?qB7g+^OZWjYzFwThuzLo&3L>hS zjN`#rnKa_8DC<}T(YeUGm=Q@}=(SI^T9X1k8=9d8jZdT89#{|K6AmcK?cp%rJ79Y@ zBma;icNWQ0)RmHn0y1iMZjC-{W}w=S!?gh~Ziz+_HVk2G`Ixorq3}$LvRB_9^9n&M z=pQ88Wzlu{_eB*wn7?q{FS7mmcm#C}Tlxx~YXLHyo@COa0G(w95nHvEB=N~hY%J%P z=Kl;t-%^no-%!|oqhv(88tqn7lKi@9}|8D(~QBeP1CS*5|OGMzQ9uYLMx zGN0)85oZ>Jr1~hc%seKU5|fP9lf|T!Udc2QGt2B|mboN3p4nzGKo9a8;7{s_Y~`fO5+Nj!Ta{ip+FB)hCY1pLQl6XHYt)eNR1}Ig z*9}?mgO@*f@m8l%n$_t`^3}2rqiWG<=hb?e%xkvR*iuhP+UxKzTe>L~eY&mKDAdwz z$?nrvhWvcW%E%Bzl%*1JH9$hpEfK90UO1ieYH*R<%GuoHHdYYH?a1;*aIcA=xYsIU z^128zSXCdUE^1rFiTtQo?qv?ZAP6q4IoZ`vb49M6t&3$qJtcb>;9+X^FoTEuYUx=3 zL7V*g4W05(0gbLdDS%|#I?>J6B88!C=T!=da+=Zh$n*f}yj{P&nKtT=AJ`iNo*7}0 z*@rOYX62QfxS?=J4O;C^M2c#igxu0v)7W$*#OzM$uN9)WSSt7Q_EoAZI~EGVYe6u4 z1km)fPL%XWl&p6vxhXE*>^7)lHn?PWveB)~XwoIhtT$t5a-%zTw6#$*$xz+M=bMyi zrO0P(vcauOHo5i5%KABnse6U5`(%B5G8+!my<*b3sU@&R185wPy4NXLNnMHFV`Rw^UaIZr{=v zK?>bYSB@rUx~0huy6CL>j>B}t627I~7pUS3+&p!~l1aOQ(J@avVxz>6j111@^9%L) z5|8o=K>3BBe2Gxb?-YJ#^E;2<`EJdY#%c8tvF;NB{1?&2fqE;zd2v@8xr*Az^_gx+ zXQ?hx8;9H_&apM|ETp?5Q=m$*uD8S5?k7HT)D7xnivj;RmUL~KTMYm<{n znpHo(=C&nE-PYtBcSf?Eq-k}eQ}APWTAN%zQnS9W=AM}hxo0HLaTh0-kkl^+8NZnf zy5C4%;GUa2kEFUT|NAXg$}dV@>Ry<JUXqcdOhj z5tELeZ(v>SHZ#MI9J?vxaIcB3Quc^!dR8|^?pCIJefnCYM4JvM&L>(WA#YxdeFQV+ z%U4tSG=V~I7-v_eY~n&+E1+H<*?UAWp0cTHx~8tzKk3YfJfbNIe%_vo4z?}sPGp$LNyz)7@^s7;m}MYEH)MUGT9 zZ9vi6g_HY)9mMix@=jswUBb@0g|__}irym>y;t8Q_eTtkfTH^&cV7U^P|Oy3z$_udS3D*bH%Jw$m=+k_q--enISMLb6C z?bOipC}P17GTtjHLiL)wPsrgMxDfSz#aU$Jh?`%i=i9@_bN_?>_(qQ7h9_)Ix1ksi4N)Qn0ncJB+h&8{dQ?ENA3w`X(k=sse>0D9OIX?F8 z$em7X*<2xTi;o?Q+z7GZx!~EI=3}pk+-73S=OQk;)W>d)kTVbp<}%dXsXq3B$Za6D za&E%?!kc^y*|Xvh-f72sB4!Jsz`s9Y(jf}iABx-(MS=EB5z{SEfQ0QWQxw?li_ohO z1tbRHaz%mU!3b3eQ2>DMRw_!p!ff-tA{}H)*_K9#kRL;QA~X@I-`zKN7bt+ea)7tq zBacy}Tjf*bG2~X$=Xxhn?+I~6H%#2;fyiP0J`M+P`$HTi$w=|(@Cx_V5QmYv4}~~Z zVD2KHh08142|fx3cXx*zFk<)S5QophvV0!od-vWDXGU=E4slF%Ul*e5M%{-)boHn^ z7@{jjVIaN?EPg*2qJyK%SU#1FiF-oSjWV72RMd+%hbRh}2SXH%%v~XhWd4B=<<#i? zA&TPTEk4TRCRI<&SW$`U5vCSduEH$CmW)=d=6LgH1X{t&soCT*SFXWU)#u4+*eYZI zo7tE8!0r`}>O=l%&Vu{abo`Vo{T>!{a(z6RKc`6EM`NDYVJH%C z=$)w)J)XHD=|P>&Q@NJ*5|pF>iP%54Aof9I!G9rDK)m_C#vdw)s;vp9G^b8my;`V0 z8+LP!xXe?uL>$~&$?gjd8P~S<6mN<=AJ;8V9X>l@If2qD(?OtlPLI8sVZ3)~6 z-V=SK3he_veo6hsHFwIE#wioyL@V7V!wIk=GGt;%P!$Sp=^+r1PSi?w0$iOEa5a_T z+l|GOJs^h3DGcZCx16KXD#zY77~b7)H+H zXW*Vy|LvMPcS~b^$UBxWSYtjJ5-82qm?vtDIYDFBhsO57Y}|QU8kt7pWgQ^Bj6$?T z{B8HLLF3+~yT}L+c$@T8K z8mjVTYWlLhd5c%My?iQl%D%|$O>V-^7gbyx@}1O$8wRV$`lO8C3286{)tzJrgQ00C z*ZojFu8X>}VZX|qWbpLXr}=ueG|-cD0$V>p{Am^N9bhAN-~de!~aP^}%y|@N6GE%LkYE;F&&nh7T_89295u z*KHc>>8sZJo6}6YutR!|wZbtmpm%FE=d3MmreoxG+tp>#gb}^)?^;2{VZGry!nEvb zHUF%&`DcgCNPNAc-DfJ=awj_|>ddVTZCyn5XKFTlwpT@Z7@qBy|4$PJmFfXjyPoag zQ2o!Atzl%ZbM-q_hUNaVf$dp>O+wT&1l#l5O?bXC^ zxOtIayF4c6hF3*VS@^+7?Xirp^1HeuI7{k~5IVdjSXBvVyKwZ&^uq%!h!mel| z?20zRuE-E}MH^vM84z{_@c#DJ2HNZno}@d6US{x4L5Kj}UG1js%8756FV7Pn$w!0u zc4fr3t4(~nI*D%=@LsjGv1|;yRd=PqTZfAR@7107z4~b3_v$u&uWsY_>I}bExA9Ar z0l!xR@9wP)6#iZK?Q<_Tcq_~bzhlxO&MFiUSA% zY_G!`S`{+~s6t6PIDxAgH0lvHVdi?2gDnwOFb(V{=OxV)mkjCrWE#dY11U#QQis9I zFb0&Hl38p>Vd}CDQmZh9*AlTk8X_KyYtT0daMx~K#$F-h@eCKcF%{v=!; z?k_*&)90!(6)q(SgAqe2JjAt9dG2Ie;Mf59A}T))$d9M4`Rb`ACT+e^Qc(=?Y6+w_ zpPu#gy7~RZs1V2EQ+>k)Zeo;_%Si@I{6nmODJYPexiS|o$*d5KHdZ@arAy#Yarf)I zi<6MNkbhVsnHgcPt7DtU^#m=4Era>HZY|W~0+qbbRdng7{gVEZ}m(tmKIbZcv= z9e3$-OAoZ>>$nTqFj7(pj5%16o6k`fOax*r*Ody2iOt8@w8F-so9~Sp=@88L@YT!d zHBy;O{8P-Z=BdaNFSj%}*(PmV;6OEh{SJLHU;1uwDFQJAd#Z>*>+no?LKm*5$OlrW zf)v}npxxdWH5?5|aC%6q#Zo~LhNu0Y3*QZx*6NOfIsq>1Xsf?uiqjju7)~GHppRC9 zHrr{*`Lqs=s0|t9wGS>T4l_3_4Tn`^u4(Mm>>fG80jR<5QEW}``n=)eGH<8L5egiE z7lt<$P~MpTOcHw502>Fa))W925DOee#QG}6*L#y(MVYA&kEZ#pti7_w6-Yy|S%vnd zC@bxNe)h~(lI9z4$3~ODHFV&ySW2)FHk~i%3VK1^bYRB1J^*}puM`zgP=o0S zqUy)|%-@l_>~d_7Aracat7VtFenBiLnuZu}=IE<;9t zYF_klpCe@SbKx1t=*N~AWRNQ$gIsFa3JnmQ3F#k$iT*K|=-2tqE=*W6XuY}l&@Bog z?kQ^hY^K5G0ubP$yO4#jdioQA!Jq9{o5@Y{QFS6hFTM*%(`P^}R$Prf%v?!S=lE$5hNJGfr(a-^XVWZCPu;_>bf#D$oBlIq$ z*aZ=X!-m~_lVf9s$HvTGD>iUQOy}yDUX+^2XMzExTm#N-lZfGEU5=NdNhHS{36aA#o}-1$Zw;e4!pkOv&nTHU1~@6hj6Q;K-*Nv>=)>+!>vzX_`Z(6p$D*S}ALDSL!_VTcOo$lEMmn=2VmMy- zxQyc#Q8GA&nFPDOp`*-9mK+H)vAeeV-H=Dl@g6yg|1*$-GBVOlC^k}roZZQQ5lgV% z!&>?<6Y?OIUttX(`Giv}+Zq!wlR?j8jhV;=mND1CiJ7Y%DeQMkJwA|9B()9vXW#?n zVWg8%!Us0x90NyL;weR3WG8RE9Wa7dYdBr@vQ~7it*4OG&>P4XfC+C{!t=MBwbAl} zBg<}Vtq86FRvc(?jz?ap&7D^eR#s;74-*dulSfUT#7Ti5=&tlwGOyIjI|Mn9GAu(Y zI?Qb0`%z1_sX9GWrT~O#7I8W$*N3OueGh;2?`HZlU~rWBsO|*ewHQiRwqW9Ahw|{m zA-C6Y_(X@Y$b|u(-CvH8cq~hLSqYzjfV$LdgjZqKc_O;F)fjc2geqqZ3YxWO$JT{| zDC@E3+~5Y-?=K{qv=Td1_ATRCbit^Mv?OC=?kSrmVZ2k+{y#If?)w~Q9%H3piGk66 zEQ@%IbTKkt?1s!(_Y~ke6*xBoV+!0Ozkzp1)T>*mOrfalhSP1QB}%oNCOEj>+#Z(v=mO;sz^ zGON=zx;*DbcLF)>^-22LUgvu6ja0E}YeT#)@_RH}-Kkl&t-dn8-Rd^C0VY{{2o-l~ z7r>`^fKOLOw2|ZSyU?z@4S9?RDM-7tqY@ zTXmhuv3jwHW&$5xa0&zx$Xt?Qu#Xxsvw4{4B%9gmS7fhm^>$}gBDY1g}`h{IMdWOf*GYv#!PxOC3D)Wtl5tbLbkI=MK|}Z({y87Q#M(2$x+0bqsq5Vs-?wLLgCrWwEUU zJ;5Ipz!nvFwy3RykClOP{2yE#rMZq57t-I2cBm=;)&5+e|H0_YLg#;x{wo$srEyXXNvn14vBxf2bl!2t9e@1d#e;)GLra#NzjW!cWy8bEm#07p(amLoI+qTJ& z>`XSK=)^vLO@7+snCw^PUFWZd=U#rOC6D;04XKHKb{7rris7f{vA^g^-g6cq{g3>n z@ST4BAGtF~Z3A)e%Ei;i04@*Dzk@p_t@c!d9xhRBjaDX`>n{cKEw(C9Q$tv2(v$+i5 z5?8Mi)Jav&#N&E6#MDkZfKdBfu^5Aa7!25*SVfR97+;Ns%ASmA70^ zK*Z4=e2+-X+|ICGJdhS~GY!Y^2!IThV@gQ+rN~<=s-)Pdy2a=+FSr%4XY%*rmnqMJ_HG)RP+VN_6XV8vhXXza! zBg;xZuTsTFT~=zzmx=;h?(y)P5RO!V2PNPe!nZ~`Z}_lW+@%pN6~v0$2$Q@W5SC-2 zYzXjzRH4%`5>2!ga%dVPY7%5;71-1aDv_4nFhvFO+AVL()=c}(%-zJ+Yws!-%SOWN z;%1jznCOhpCoR|M_gK9x4RH4CqM>-Ye>2slBrWV69SH59@( zcxcGS3!_4QJcX+=Q&AWzPzpOCay?-%*toEK*;p}n61rY6(6{~+j^G@#8=|IXYK+XE zw8w@}7{*QkW=(9JpohMxnRQA^cS=((PX0T+<)A69dEj(Zu3OE-?!{G(9wa~KLTddbn zSkP)qGR9#|4@uUzfUcI>2CZn|4Hs;c$7om+Uj&FcW2C#rwUcC?!VcaU&8k44&&E}{ zc+DXB~ikwtETn<|+w4%%=OUh;kg&~%Dq18k}9!+*C zYXCwTqU&B(*)n~wJxIB_W}m+O$7lsA7)yH5D7h-K`>zr#8*SB)-Kwg|yyL*BaZa|s zxG_3ZW(U!4Y%;G~9c5T1MKE@7Nw%G(Bk|q%aM9jo6$+}_L{qnkhK(fnq9}-L=GaTr z!y9~nI7Sm;973>gKRCu|v_nBOQVNEo;VsA&p()nYw#|3f8pf7v^? zFOS?rvzu#C-_Si$-;if0K2+8gB)24pHh#a9ZM&6W2_!sP&J?|6xCRM_${o7Tvi9D5 znlUGE$pqHVoX1|aZQ!bZ+2{kup@-#qpRNrvx9^a0yF=iR$}H$14{h)2J6Z!lGSqDE zmI@hbHQCwVf$Vh6yXrS1Qk=_VMmiu}8*HygRlj2tcfyN(nYOc(7u=a#J)B`F&V~ANF%_*sIRN+G!cqPP+J1J($eG z8PDwWBJ7<8v3IJmTJYQjk|L2y_k_+ zLQ_!o2fpdHG**Dj@uj+j=JJKrmXJIZ;Q-uC2l*H=&A7Z(g`8&TDUm4*OjKehZR`y+ zB%i;GWUO&KS&b{A;K%@GB+C=hc^qu^dhg2Frv5m8AhklOqj zdMfVMkUXd2Wl!WLA7oY4%0<3DZ%wsUAR`sx=31>4U#sgqTRd0Q_2QfZ?%qfB#wK6^(LSLdzm{Dk%e_tp%>RwV_Ln${1C;M3pVs%2}91 z26m8~#Y(L!`Fg1iM3HlsOc!O6!E4&a_(%(bg)iJbvWAbv%+kV8;nTN|thGmGd>%iN zJ#ytAj}K;#XlHr6KYJv8pT+A~zuyuipO41(?UARrkIO;BRq(hyI`LD+Ljseawe_@` z`$YEg4n%M2;r$-aOn1CC!hUuqt`g2h#Jq`F8FfsBhG8>1g<(^7YmTt! zfg>oIlZk&2sZZu`a@&29UYb)sHA`EPr47Nk%1Q^;*ODhy1fLm68Nfm_r_#5t$$E!K z%kt9MIGquL2%i=d!GA~RrvsCHTBA1lID=-G z8BYPEyhVx#1q6~nMTl6+@MP_6zeVFbQ7TjZ1bH!ABNb;OoyDR9&l4q;wI5hwv>))E z&V!ts5M&@B!sLl)3)>Iy!2oq0?kq{Fz!De;WNy4NYOpaN`kwi8Vlue zsf>33RjNtt6Uvh1MtoK!tt|H(`B<8$c)luhe%1bfGX$N*XC+%rV~d|vU#zk7st6Ya zXEcUj;D~&$ikfdS_C46TnN_@bn79pa$;BApe>nOw_!vfdpM;qmXU-5m$6Z|RugUc} z&vKGab0cQ@L}4`f3=wW(Pd*!CVhB||%n?Ygly#59Fhriq?lHv(AH}!+V%`U~@1v#G zpX;*RKa1h~e-WouSU)q8GL@2VWpz9r>iBjn3;(=?<9xo>U#f&Js)X<0q0UOkCJ*G~ zFnQe5J$c-j%?Ez+xGj71lgF=a3sZ}qJbs=%GI{*S;t``dlW{}eLG?vh%eI|<_gD_Vm&bec0<05u-jwAa+ zrmJEfo@noAvKTTOBrX{rqt79vt|draOF;-$eaSGY@8!IHA6Zur?k8NC4zT4|Oz$GT zD*aZ0gQUgu79Lg;?jt-Y9ZuE||7p)C{@l1~jBs5#4KHrR^!vm&5I#Y;k?=9XO=%DN zg1|uh6u>`~_(Q}ur?>PaDG&R37)jUSoUEAMP5gAiy9l=s-a>c=;XcBxgg-5hvZqC* zgxgb>oJm}bL-O5`ezU;NRx>#}q#=QxgY@e_Yppu@RNkkA^a%ea|s_M{0+iK2!E6Cal+>j zex2}A!XFSmpYRuiFCe@fT)vR-Ucwg<-c9&hgbxtDc%(0R$w(==Y{VrmWuh5n*J-B? z8C;&Wl9!D{$#183{pbsY{x)rT%iaEL;$t3&}#Vlo4wz;B-lmp}>)hk`Ky0 z=iv}+svUDi3QC>ug&$Nn{0z(;xgJOYR(Ckpal_a2kKFU}=&HxN~Yjj1*!zTXq z5gNax;ZkdHBj&vkOS?0r$tb(M z+bpZr$)8m@Dw;*zoYrSJh)(}xh%6HsgYZA_2nXtHT5)9%-o|xfcKsyg9~j?f_?D^h zGf_e%{QHOY@8{@7W(Z&Ds7;F6dSKXUlGxMw0%hsyjON|UK$grz*?Ppf{ENJ^HN_!| z94fc|h}P@Q$3wjDqh)W4&T4GoiDLxb6520V_1YFzfW`J4e+q)*lLla(_Hx%wrh#ArA6{3m6o0El*AS8;F#4Dfo$fDsRm(`cmNgm)`+lt3 z#}5(Z0dpiSic$<#$-i_?bCHxuA1$@^MN-absW%uuR7ybGzUV;mMQfMuFYkL!*0w@` zwVN`$*;DhaMG*68nqGh;{BH9r_3%oma`w0zP3kQ-FJs1BriIKN)Qzn@+7%E&aT6~! zqCU8hk6nRolieSxBel|Yf4HQV-Ip&$2XB$a7yaCN=_c0Olv%Rd1JF5|VlLAz+|A~d zDdcpgj9A(xDm$8gZdZQ;E+FTpwYvP>a1i54on(Bu#`Eqijk9^AxmQCD*VNNmAOP0k zU(&7+OLPV(=5>2JPbMI>!3mJH82=z@FSL)_iKv# z-GzsI!acWlMadsC9(0jo@+TJA7bRa7v8zcHJl>rP^q$m>W5LF1zBchMlP;wgF7H&_ z_Wi0fD2xxS4^gP$unXwOWD!y*55IbLe}lf{b#OAip8-`DMO54$b7ur5i|$VdG2?V! z)*TXHMwdQ-O!*!EBT&(*Z?m2VWtSa}>eL=C`y+caJbv`27KKq`JJ{H}~;Cc0VjWb-`eKfk+A_tns)XxYkg8tRr9ec$a2-Nh-Sk92B zFT_1*VCyS}(Dy{yhM0dN-;H0jH@G6S4X=WG#GdcZpT$>(;-BJ1_)wXs?qmB?Zt4;~ z@vE1i)h?xYzwm2)!X*jP_R>IQz*`?k6vjzMQ%*++mC&5v_q;?vel2oev73*J;!EN% z0`RfOeYHDP#Pw$pkZPw!d4)XG*~N!S#$L-*umeu;7*e;&E79Zp_rl#Cjt$pTE}pDAY8NXxGAH6DQQ8d6y(|iiebca*D&I_a~SdXp)jf# zNfl++03uLFE`-IjsyNvcA*lZuD%S#qh7egagpB%>ejVxf6ID7MGwDweRU`Y#K`efN zL2nE&rbnH~VFoEXC$mUn%Pm-`Zf}6$d+s6m7$q{bNNSWqw+2152W00koMi9`DLDy& zkeqPfDdWlI5QYW7=KBQ(?Z+%_5=rP%GT^XA>E0kcgOwH=*kxz9x>hRc>pF(YpV|z- z_r_LfiH#V2s0g23H)fQ0`ZUH2Z3e=$M<56kX^);Fi7s^48g|6JsE9sbEVDbN{0p^J zvJgO_GLYM7kK%>yFAX&KohCLu%m(M66rx-u&iIy6gt~wZ6#d+LZM`4DP>pU&#i!5)(Kq|&Sa@15bY}=^ulZ+p% z;KL?21}o8qFNr>@2s;kQ)L(zf*T2UPqEv5I3_IMS(#B3BV25^!XV-vr)cwAQvDl{6 zfc0_Y3QP8s3cJat4wy_nVZd6(PZM{=(B0$4Tx{1$9Km=?IiYh}How7T5S(|_*J3EE z1mhEBL?YbPY2U*?!#Bj#jd2iYB$@toU>r z{BR>p#5By`=VCzoQH0ZT8Vg1=AOned(yK|b@*UjJD+bw4KdS|qs%tDtwluQSH#QbI zkDZUj|0ux$7qm{*Vpkml5|Z`<5+TsTrUA*U*Cx42AUS6Cb5Y1sQdNSjXS{xBPC|Ts zXjV*AmXImxlagNRV(kDNYwO}2{Hs~wDJUY)t8cGm%GNU>A6P`LY;`TIw$Ie-wz3t9 zT4a5gd@`~nZ3ctvse(K@Azy?VWTL! zML4Q?)P0}l&%|gNci|$B@cCZRC%{|1ffYA8jZU+>avn zV~hL)AdC6@ByvBsgr9}1KabomEa9J#oRs62k^5Im`1i>D$|5(#G*hMB9J^bvlPS1c zV|QDul-sfV(nqh2L$R-mJp^~ep;*6;0PNPa{>`0nfbEU3dy^G%HyU;o^4$!!qH;>N zU}YS#R`$^s-_a1n*1)|rMk940OP{yM+Moi~&f?Ko&$ZgiZ*>)O5b_&c(Xb8f7LraZ z%}pPIo{siNA*mnZ8J-WPV!-;|Z6N?{Z#>H$cEh}oirqppG*Y$FiwTNnNiVh#1Z`_P z%dag|r#SjwqZwO>W~`Tfh5;<}V93lzmM*Xst%dF}3>a~E^jF=d5QU2-UjLP8m4xT2 z$Ss&6@mLcoYym}bt7>8yJ}C+!8`#)A@wvW{1qcp<6raLCQGH^0)$NUoL%XyJgHh40 z%E8WdU95K1tX&t6Z&xj}i_NxLK(A&!+SRG}xd)XOb%F?08WsU`i25mHB-W~Bt2A5D zeK%_IUB$f(G-Pk`kDKAMH^x5G+q*Jp5s}y80l70|yssF>SH{sReAW1jH-(J*yE5(@pYh)V4&T$2@!y1XzY@!q z&%X>A-`kb(U&d$rdB}KwSH^!DpYbOlfx8C9o#vU)*q!|lCga;;(0dBair8M z)Zyt}x^ghtyj`-B2&4;(&a!d?r~B`GGM&a2hYN?wp|$@_vSij=gsev}&6UpkyX<9T z81d6EJhdb1-I8~F);DTjJrw7&(&~<^KJE7`&3|#{xG!L_9be#1F_eABxSa6Vj-0P+ zgYnvNS>duBS#NJ=y>(nx_-sekkF~SjJT5Dowj=Au+gWcKmla;yk@XYptp7d^yKvi% zte|ptUqgK{mHnj@Z659|Ip6*qj6c`x*b{npbhH} z$7O}@c4YnAP^w1ngN#*z|1JS|G$CMj?g_RQ2e`D!{W)dU8z))VOun93TYMu}TYNLF zuVU?}iV-s&jXOl{KVrA5lI>Wu1@14Cr|iBGyFZTIm*Y&}{+1WGzZC>-8E$`-j1suN zWQF#U*#z!yOW;nu!2N9m?#(s#Z51|}5WqAY^^Uqf;ra0x`-WY*8|^QF&(;mAEZS^+ zSJoiPn0zm08B+FA`PUfpW%s8fYmITTbT(XmT*rb$K02_j$f6`Xf z$(jkYV`TvzDYZXioA9C=(WF3p#6OUZS0%t%d*yM+RAtSbGvt=T(^5S%DUh~ zxWV0r0<0|+;1g1oZa9(DmOMTo72p$60X`uW;CxbnxuPt~C#0V638{c;6&OfnGoU9k zKrovD!D4gUk?+;B!yb;JU*mQoF=t`~tP|(81$T`b_WDHeMvO|~?cHR(VVTN-_?3P4+No~?NyTLm5Q2BA40ojl0T;I(mO5`+OHpN-JnlofW#J+mF8M* z;m+3XHS8sGs2Jt2>!oK}Rd+t)Tf_*jKyG93^Q!7Dzsg-;!hk#17}$kg9H0Y%7H%s+ zuLw*PPN%EQ#MKUI;6n|!@J!L$n{k)hv01IZ>kdQZ$KC)AB%OC%0dPAn-gf=jNV9u zJIoAGb=Qx&-9$~5$r9H{nDxBuNaP%q@d3$DiE8p_w~7tz=xQK_!ykwa4!j4cIs)PE`-bdMUWl#Bxqf) z)DR@Uub6;;8FGTf5bTP|=`FK^h7lDzz%`k)5D<`05s0A0l-2NUlfC z!VM^8b?icSJ%3WWT;I{L>%7v1jwPEqR*NA%0O!)UXh_hpwnCB(nCV`~2Lc!iYTIsi zy>+aHJ2hHIv0b7^b#a4#L+?TdFeq9^Z&Dx*8Z?$wG>us}nqd9pKZ3+LWI@NGYw8ck zTrTcVaieX1T3JzGYnvW0&d|`<(x%6-HrHAARIufsX#9n-K_tFiCBd&cfH7$18kBtZy3|`NWAb*dY)~JZ1E11Ztrw)?}g)k*a*MizYZ~cLo=8f-qwV7?-#~ z-~TVOb;>!uF+Sk$GR7s&x3E!@*64LfzPYMUz-Ml|Sw!Qy01ktY)OcL!7N*^Or za|q6QLy&26x%dqof~zb&1JybvGjmB*gS4U7%<+)XKYY+;*h)UbYKjv5`#E1i8&5Xp z`x%?kMEW;qnrbP%iyp1&T+Uq7q;I=HFyz@=FKoYFoxfg{zkX5s^>5{` zSLUx@+_)-@(wwOFK7ZP6v#1n#`4iW9IbXPHD0fjFT zNIJ*3R=l65YJx9NbxgJ1E)xBz@jR^OiC_Rogl76l1u*>QNnuj5#(*^#RDOKk<=nQ~X%91a*;_e95HIXdv2$PYEPL0fEVnOU+w^GS=- zzT|t^`@YfEf6LzI?i3Kbhl<+>x+nRYh*kU#aATYNZ`G)?8h;z5PejSzWxzav7Uzc% z=QjR6N*{}o|C6OZM*5E;o#FVgl5~jUAENY7l>B3s;}AK15~ah*PnDt*9Y2fGhoa=4 zvJ4m?B|nci-SG>he4h;e9HslCHQd*hTX_xs7uEzabRlJ}E8N`6NbegfzC2Xv!r@<5#KyD|Ad zJi_@O{@a}VZiw>k!FXga`CxdiCkM5&{Gm7;V)?Mj`ATs#c_>a7CBLU9B!7ISBxt^i z>1TL@uDh6ikO;bMe}d&>isEuQ9w_r+;98yU-d*j_rXd310(&tGXj6cbNH`YBEfsZC%h~agQ z#Q3ZGqO@~=B>wXy{FEe*;)5so<5;8OPhv*Jmt#i7S7JuRS7S!SpT>-euL&8CsR#ee z_?8w9w7O)X`9A2;tk#j)OrE{h5-wHhi}cTB*r&UKiGE(FHH&g@@S6+1#_y1JdnE1l zwC&1)$WFW{sMSV3NVgp-C!8=u9+s*4IJsH-3UcsZOf=a8O0y&7=G?64y&LRFib%;t zOyWrx#l4TXD61n)AHkainAEj9`1mpV_QY|&L85CEm?Sc;g~Sy~H+HQf7F68gqC$dT z6pW80i*1uoSZKYH!(>R8dlWZz4v6t)fazrBd*qp*g5^1N?!|&%OQKX)7^v!Xqi%2T zD?VYfds`Tb4Yod!+uS3=jfnUPH`<=8wofkUgWiFC-ciq}F|m?nVN*(EZsSDAYl19wE}*9yrS=G+`baT3 z5Wz_jZk7K^A>ms2M+yn|%Kz$D#e|#Xs|h#D-&;%$M(Ix@t|d<&DkdL}((4oMmA^ds zJxYy}-`8CBk;u5)mB~k=5uL!Bl6*|_oE?m^)2*M>BgRYx&bjc+#6ISxraalFa!*e=F&nyDIIS`yOuB z8X$T6?|i-!e689^wpt6pn@e7ei_-!s0&0UOw1e>7^~HYN3q`ue;!t6yyb1YxiAs{Z zaETW9Y>(JTuLjcppMUThlre1P%kdCvTk#u|^csoSs_4cTy441vZ>jU`_n&cD$N0~x z*=M$ZbQ64rK5+bJ$mPB^?M{okVI5Zq+-yR? z%_u3OJo)IF6Eb4(>L&q}f)prz0=L8jj%3KM$ePcF${}-B);r98KKG%(?NY?_DzVPH zMW|NSlSC_xhACcWY|+?5IiB@XY@HcIwQw#&s?T|jD@;5zqB0=WK{Ozg1G25Hy6BfH znDjZP<5ol~Hx}eEX$pE&&@auES5>9v!H1#R7o*q#6Y|JKtI>LEDD_e=RraO`Re~D$ zOS`aRAU{9cmGBjqnT;x-?`&J>!p{v2h34A~yDR0Pj<;DhaM7A2Jwyxfh4Y~I^2v772czi=dV6~p3{0!fK4!+${zh%q%qh)M*MH^gzv`SG z{_88`|8+$3G$O@fG3x$r!W0s-e2Vg4_$b`PJU(E_XVapgF>b!yqp`8XW02iRDWI{g zSqdd!Iyjp)lZ2&*FhKgkx|_I!#bZktoTP*W^@W`!L{A-t`D{scw4z-CK-<=C-il?D zz%Wmyp=~_0OW=d<5{4%!VXmyC+a=_f+`@rZ_LwUI0jWxF>F}mbDCn+4A zTWJhn!U=~j>5E1^9cug%)6NmxA74#!j}LI3ri&(~u&MOi&i1r1f(w9djI5jlBeU54wPKSgy70V>0nYbNh=Cc> z&$hGSE?~lJw%wIuIzyRvB-hCXFIsV-jCz?8r~x5-WW_lu-ywQ_9g%Rg`7 z(5jxI+#&-g(QK;-N60mDrJeO$k*RY+u87BEUz70J2J{3EC>}HNnkEDkkIMm3T{v>F zoqFeHB29D0jlq%{)$SS`Y^ZBMOx88VeKx5f6L6oZte5k??idm9yYAsm!4o#woEuJ1 z0&C#O5a(qw2f>gWa zTN?O8;X||DL>DJDMQRs?ZDI3Qf@E44Ed0|O%z2w!Bc^!3`OzCj)*@LViVhY2#>b_O z8F@47uZPSwlb3#F6$IO?ro-^d<)d%v1J`u2V?d!)Ue^>J(O0d?7vwHNX;a^SF{lvz+<0Y>B+ zp554}^U~Co#>MrEq?kibztZRPA1b?aR}gMT_Qr+ePVGKK{J7Al9#2|#wMpxj9dNz@ zIG>o1v`mz1Tu{I8Db#&_{erx15zy1C`@H)3PoeH}>*wWlYe+r4y3eVf`xNRvyM9hy z_u8jj_gVF`pF-U`>SyJ3uX);apIP5Q-A728jqP==LkI)tBm7 zv&c~4CmG}LX!v3F$gA&njL&<-M<$#_JQ_}~Z^;{`!k-@1pQba7N8I}(GQB?H+$l#> zk39Egtf#XMTbZ}(;~m8EPzSLbj*FdI-~1Fh>=b#(JYv#1xqix1$h}F1*+*RVMl7a} zJog5?(q=eYn&a%I4xBv|&cD9C;VIO;uD+h!N6I(W;+rQM5<^FONUY(Qe1--U{`7{# zN%b{Hv9#6lI(Ed}f1(aM2hK5gw9&LmzPFATloND<;)rvv)KP^a&b>k^g(J?rT>66} z&OIzIf`RcL`?QH+89q^uUTI6~%Z_4cOYp#Y^k5s3U(i5$!rM`uv<6v;A3abPW5s#& zN;@7;vqw%|$Km`ZtGo5I$!k&lxTjF}vGqlH7bQo#i&}EgJb)H~ExdHfnD8#V@Ug>E z_GXvIg|}H4?ukej`*gb)1qb_9Qh&&MxG;R1X8C3v=DW$>PnMpQn}vtV7v2Z$fOI3a zh_4-^^(^~Gei5dVOa$1-xaVE8dyD+csMPVYc>8W$7iYmpp06^vcJ3 zh|3(Umk{$a-U~R4he!iNl$Q9Rr8Tl-;^?%i&6Q4VXDimmV}p!#4zPi>CFWGv$^;b? z+xu)8$!#W@*7RO1px4Bxtcg36Y}x{o2kkX6`hRRPydJ^(&b&xFK7;Xj&<*Y*IC*x4 z!LGX+JZ)HWr0D~pY6-`)$i-eW+Cv%3uy@)E;6*7Dv5v|zS)yIJ7GsCuQ)LRLyk;RD z>mDa75g(jNmbJL26i}+$(2^)4oNgRP>Sl0^e~=u z(%nLggVg@eG;G^t>6bOh9z#=XBc8YZrm7abvj|0H%!L-Fw6)renDZB=i&Z1SefI57 zN_K4>Zy=HGZ;EnA{PEX5Tu8s?jo^R!8sZOIoF12sHLn`lmw`9NXYB2JQ;tj>YNjDY z9U3q*tz!CJ=!!&SE+erJCBOsq2>!N2Vh@ZVF`Q46x(E_G&tl-kQyV8oq_pzHw#*aT zV1oG@W+5F~Qt1F(zdzA#kktBNs2$w&XIv0zb|nl9NTmQtz;Cg+g9U3RB?9LfG-?|I zsK_rW!rqiUzdKKP%OIfS)o4&(DYd(H+5XoKW)hL$dqBG|MeKE~1abE9*XW_RwoCC` z@nC{FI4P-48iqQ#H@im9ZXM$mHo5)NAtY}ElmVt<%><#O%2A(pT%*@ZnUyL}U6d*+g|opLFmMu)fD|RDsj`ByB-HhJt1;2Cv>vcS)of9uv^>9EFJP5T zEW@grg~bI3q1*h0gM4Rj_sG024yZrOb$hTk+Mv($b%xO*agxD{rqV)7b%`g^B+9OR zxmqmJ?Yb}V*Y~G=M21Rw<7lgxF5e*&kNy=s3tEN3^o6qv^Q$oF`n=Y%^(?9`p{&BxXE5D9AA0>nf?-+K#@J!x6{YG$iHY#_F_u* z0)AjNpx(=BAzhih7>loDvKMnEdvVN|7dccb#=J01y&8D@m>2mMxZR$(7iUcN;@I$_ zqqCOzq+oK}DjjT^U%MsabEG0dfw(K%h-Ij@P(c?|4wN3~-J?tn;HXx8l zi_bxcwBjAqrrRHV-`gE_wyP8ju>G5gRU~`UcNOCvzanWOQ7$Ts<)~H+m2!6`GhSb- zv{O78^A*pUdv>O!Yg)aU#<05^Wme;!QBC`p`;=S{eA4tca3z&L z*Owo+%b!JogN4_>$@aiys;}~2{id$!{;i|BpLJAsAJsi%4q6MLI%GpuGFH4tpQw5_ zeWUGA5j!JdW?1{r4dH%iAK-bWefXz1D$2AN0>-k~gfo+7)gPHn2bIYrP4a7LS1Zm3 zZ|KH+R0-!c1BX%OpR+;XiOOtZ837Cj`cGCZ+;>LVUU*iwtBjZd+<`@H^aB;m9Jy2b zIqbJeRbYa29QOXdj*v z8`$!SC-AA>n7+ndSXQ~l=^0xu-PH3{0nweh?TtC^mdSwbOblRUb#=bT~y!`9>*wp{kzaQ(xQauYzL{EWiR?cz2)JH218qhd zv;j9=Rrg5UTaYF%BEbEVXAoiZ+t`$-pAV#xjoxe^nc6VtsGfyn@4O_P)s4SM!-=0h zr8>+;og@mm`pLeN6RP&Rf^pyMof&7^1PoBMAM_%OjUTH=lEP>?Rf-lZYN(sgaMWUI zmo$y)3CU|aQ?0Eo(9`i(W_7{g%xy|Ft-3x$A;wCAZCvnntd!tD!S-MaHe?MZ)gE3&&+5(+;~3#giX`%32m>x32Y zhEHjluSoOc_=-p!TT!DTQ}s{}o?s@xj;*%>cIp#ihg3}l)_{PWMpY*0y8W!wz)qjz zHRkLuRK$WS#L$mRt5A|RBM@(yECKYA$*(m9l;d<_-f4-czLBogVx`k|DQ`Gt8t+ac zirfu1p>tV+YFohfEi-dyuaNT8+S_g^=!d1)qBX-}hVtzB2+Ef4qfT5#yX1i>;L-+Z zXCV_|unT|IA)qjn02-LEopjzsWJOVXm>n_q{{TxD24su(ta=#f--uY5Dp$$N_x6F7 zS^6pnJE(Ub;5%EOAncgNLSmMRPp`C5UO+NXO_8r*k5BAK(PRSDm!XIatK~3>3zSg2 zsyrIS)2zjm#au{%UY?f-Gkug@hvsxu;$wwEt%rQg89ta<8?-~QplL>nktPw&1BE6`qF9^fGxDhyR#>7^&O`FG6V={XiK?B4WQ(jyw5V76S4-jGCu~#i6h-_x zf`Y>?D3zNIpzfm9&E)pJ7`OtdPmr*|oZ10Otx#w42?3tXWtXoLQv`$UK_oE>B@Ez; z{Eg}1H;uY|mx?b|c9`F~h&F1wRsWd2r9QPF=~LUXsP47JlZbJzHlJ;rlECqE6x1m? zOyacFDe6Pl;#vI~@U91|ic_6H-LZ7!g)Q1xA4*RXZ>B$j=%}@BdS~k} z2vF-hMcF}O&lG|PjecMZPI1)1nnN}U9#>hfXJ>Bs}$wo~omLBveMnH^y2pOKmin5m8{xdoglJSNv z_tLfINUVEwNE8X9LOnlzR78GM=(LdY{0wN=UQBvmg#y&KMv(KM)}WX4*E0!k((xLZ zwOd1@^45q1vvx=onYF+x7cusbnS*LpzCLguB36MaRZ@wKjO;7xheO)>O(R5)VCRw+ zYOjEIg(Lh0j_?=K6E$E9>CN{(3`glBwwgg^!-^99esLk4B|C(I>=4925B;O;5F}+6 z;16Ozim6)%EhdWuM+(ZR$H?0JLx#{i7(FMy(yx5{;X;by*^hG%ZVfw|Peo&7P8*gs zN;}lnNP31O31FQ{YH>6vsmJT2>GU~b=WT_wmyr>Nie3|K;!w~;oA{&o(vNgC3JfRG zWfN8R7{`H*;pxm2T$Kt=KUIoKL3xSx-2hL**vWWu7SeDDvX-gOHw+^joxaaRW0Q_> z0ZL_FG`2R8Y7?;fTZb+~n^@q)nhEMEUu8E{wzPMrUPVQ_HgIrWPd(S93$IEKDS>l{ ziM&`?etc+{wBGSSfA&Fl3H58zDOaUW_!5d%LRURg>}lFH>5nbT*g|}%6q1+963Bpn z&`XGW1mI(*GvuK44I;KC#PK3Fsq%LahD?y#kPrwcFms@J4phIU@$ z$D^~28?dGir8bZGhCFmkGxL{YNl>9}pK{iyXgw`8I3j|0X!-!7&Ax2jPZtq$RDw)W zFO2;AyZ68D(9b{fix<@{Ht8iJn0=2ho5Cd68lmdhP&K+Q5k2CFSQw1N>!$S*Zr*+^ z2CI=#LbqS2?dywbCP_AvVn*zpp-N}x$xkCi@0Ssh?iC$U0Z=lwkT@i$QG2@grtJzo5`usRlL?!s6=z5XYP@k*@?8U5nZsgD&SHqW{R3)|)JW#+$U4S`lH%r+IXfx(-Yikrd%G*?v}*yI|NhaT5C~5lewuiE5dQ3^+G1I%JGKEzxe)^_(GG5l-w6~ zG&MxDjOq|GwAtjx&iEGP#JRurX30NcbSh;ea12+CI zd+!2YS5>BspWM?lZBr;vpulcHnm~G*^xjZH(;JPHwzQ!Ixg;m&>@=atIpJKIhCxVM z?iU4N6crIi6mW1vMP-!1swj-|366Lfb%b$rbY@WM9Y>`9=Xuw9_g-h`GzIaS|L^;L z-+^@Pb$i!Z?|RpJTWhafLGr;HzC<%G2$4H7M1?R*6N?54t88?M!htbxtq_ph4I1=w z4r?1p3s7~4%mzYHl<8nEx;tvxt7UswNsxH-Q(|7*!ujA5eu|HCu(FoSMcg)chG#HJUp-5@_^`GLH~vUZxzb z#c;U2^>Uu*=&ON)a!{7&8gsP`%gbPDxVDJl4k!%dz}3((0w&#YBIIGmZ@}1?KJ}zY zvGVeY@zt6vGuAW3N_R-ch>?tncM}z6kC|xld8`cWV^8L?*$q64i?dgAAS0$* zv>_gw12-m}71O=iP8bc-scqxhBzz}rb_`2M=Aj(lZUi^N>IT|9c&(|sS9;UP=NjM; z0|*XpI@VSQDxR9z;|Of<1#1Wi+TCq=D? zgMKjRr+0j;yrB^fM+FJ@lrf=0t;6tv3k$230aOE^9ix^2vjCzfwaWR~5*9-~RV2Py zfY~F*BcVj8o>V}&`h(c)SUHHuctpxOAc~>7@Wc(5BxNA9ymO|An<7CCEtFJWI?d`)e-Rr~q$OZwWxPbFOPAUpKfkO$7soOcZ-H2)&wyA=B z0BalqmZzIy4Ua;1#d)aN7>~Fq7EuyRDSFJUxks8P-ydA~)@5J*o*TR<0jLPv#HIRjz%yM;8g(px07}|fR_JCm;zGBr``!G%H zq%iSfT;dfc0bWbt+wf_Er{#_2Y9vJ(lyib?5P8r=**Z?Jn6-kSVfG{dpN!R5x2o(q zZ_=u>Zn$Pny;r~L>TA79+%n6=a!H(oB;-_F>D70A^vYFdU5`lRzPDn`NZdDPO4mo< z3ds2C&07f)l~A*cHA&P!8sa3w`c-B7=G4!opBoIR25UUTz$96$UY!|!008w#2~s~o ztr!+H>1mU(D>C`Iy_GNwaG!8&@;5$Rp3h{wp+tJr8%XE!*+McukV)sdvIBm~%V)e? ze|8|flTQh6Fp=HiXT4-%IFTI4k0u7Qej+vM^=7i!%!r@T_)sCA=p78xhy0;Tc63)_ za3GZ+aL-5itiRh&#)q?hU!u2rD3dA-`tgDEKz<-Ghz8Pg^Ios-?LY&0w3zQtpw{>b zLy6r3LxrI;>L$rA-(Sdi=SpjBZE1hR8!F`TUOJQa`Vs?!TIzB?HUIpapUutRk=QkV zHF`2XSLnsi(bW80c4%;ZGLuFunMW)+e_E~F z5>^dnk~>js!@$r$SZsAB<*!fV`Zx7;0@sN&Mw|CjOx>DCKT=zh{XQ{q{xC4*r`8PQ zh7)63Z{>7 zkKOl12J-zGusunkuAVq?j~p+X0i_7Z3=!+-3i^ZM$-*FKBYqgFA$dzDgiSk{(nJ_F#KS|n8 zC;heK%5h2fyOTb#PeSzuNv5S?Vi^u+GsAusE1Klwr%IQTwsU?ug@IuCqaPWdf0W%B z$a;OgpX*Je3_<1#Ss&ac9DvL&795!a#^g=~nitLy-<%K<6soer4e|n_(xrsyOp+`? zr?UL9EU?ThNMZn;HnfE40S)(M1_v`Exi)W})JuV& z2GWL+>bgOVWM&9m=dwtVc>zH%`Sd4ne?$jh3Vw`F>D0`y3LFXfyeDg z7FfB( zbP@MN25=@xxOV;wYl?dpW(pLGBBQO`KtV&$Im|ZDEG*ctS%DE3Kt`103^geG?gRT9 z@_}-8A^>CLh7!EtKC-G4fgs)mu_=p`0-2Ly+tW&Meb{Q7QuOKK({P>duf{T21!Bdc z!Lcj=-zEX)B2mvx>|Wy!=lhEUDl(1yHF8NC)2Z3i=Pq%kS{6@P-qyBRl#cCqK3DV( z2-hJ<72=}T&yP@AVRRXYL98=qBb*OmI|(c!qa=}1Kt+Tn`OTm#szO98(PCvmCLMQx zi?l8c+46*ZXN% z?eGTuUH%|Jn6)$Ca0w7pBDvGF2Hp&Ii4vK#4_rWZF%6nrNE9#GPmMGsLjf4WlMP6_ zHV#=9#D@{ef>k7hWwZX}g#l_n$hS}dJ^S8tdm6JQtc*3lfbon}a#7-i6fBE;tC>7+V`hkwHIvP0$~I%PFeNgaHQ@a= z%_w;`vIR^cGqe?|l}#|ZU9@^`3zW@{LN?)T03me^KtSaaL&L!X%$U?bA|1vJ9}nXo zGYnuoNI2*kOn@LF?2=;2Hr!!k??&o_(rj)JI$#PN5Ty&Eg?bY3eTARR9FA%esOC`Y zCQ2W!QKL%^LFwbf74rSGX@n23wRjse1Ea8Z4}e4LUMK9eA44#*29>N)VFVicYPgUE zeHaD2kMLlZ&ZF_R)6Y6xl%@u*KyRRp?&!zL?ae?{HXTlj_8rsT{4A`-qU54weoG>;z)!aHwzg_3Niie`!LqEisPGbbtb<{w zRT*gay9OXkz|DzfTi`IGiXc0$qypUzhDF+rA(ioSG@6a&B9n`}oSzsx+s{MIf#ibj zid7DMQqXP&9j*lGGBAo^ehZqwR|Bg8^8yQiJ-2!j^mD9bbVN*Q3><1z9yH+87u6_K z)6uSlP18WC!3>A>ziS{<$jwiS&PXy!g1;otbAPw!=sP^nG&phY3~vOY1)cV3rhA1P zITx#)!4la~Qvt;QHe4i~#-YFwg^8Q8Fj4%JES)fQJ4iA!vK2)WgCmJiu|*A&CuL)R zXvWK7iK6?(jcoCUGuiwGbSs@49R_CDwbVc|Pot4@JtCmHbASz#dH|Ls6;IPjE&&}_ z3POu*709+NPFcouHNc8!TnX3`G$_qr?fN#>5f{9ye9ulV*J2ui7LwR3?ZXgTPPm+s zGz?e+-sK+9)jGL)0|qXPJ<8Do{u2}8o)GQ_1-Y)(Q^-;KM8l&c9fO_fffC=wy#iGHK^jHI{TT1uDWleMoDwz2iL zUbs8@2B6@9%B@9V_$8LlJXt523MCa>2HG1`g+5rkxmCvG%o%ePiaR8Dkftt`qO?pt zG1!^Q6=av>%Lp^Im7;?aU>nS;A+lU0*Dgx$k`=ZCGX%LdH_u(psBzyh-g zLHY)`A#%H{ZrB@`${DX8{F=OzrYv0n1z(3dH~=jz1%{913HKdV97YJA54Z{!EA63F zHZhVI+~|*33f|%;hT*_4!cY+qI+w&R=9AAgQdw_CyUnJ}X7OM&L7flWY~o3S#sh%V z@~NL`&*-KzdgEceMs}z&mhkMO~HDE_XnoS4$NC_5bWMh zHG92YtnVCM$O(zKl*_`*dBz{Q&r{Y#{fS%Nfq zsKMmnV8K$8YVgb1PR-4Xz?}oA;`IwwLw{xv64!Lo$Umu4ptYHzJ`ndBrIYAqYJjdG zE?>&O5mbdzP)KL}K@pN5BqFhARR%S8z#C+`%AV3RmrPO^xxU?0X!5ojH@1U?J|KpE zY53Koim(+TtYQgk{l(IUpgz6CjIK zR*E5=xYsGPo){G4-u6F5pA>8`MX0S-a+m5B@r*{oxGikbH;(xKZ z_Px2PP}o&{=&3HAthl$XkOhXa*!1#21)I{&RK5ih*dxBeUYIB(9_y@ZrnW$;g`WZQ zWZcBc2rMa6xO+(`rRl=3Cz?Xk^TUZzBC_3nT|^h9SYa2W%o2pxnT8Vqb53_)*58rH zrr3S39zdv_8kLA}U`L(2#M(s+==)4RYchq57<_Hn~?x zRPOZsVS4(MZG%qXuj|4H@{~wg1H%xZMK;gjnKc}TJoCFVeSL!<*Q`I3$nKOL7-`jy^hq(9ZEDHFf*sHjdEi74NJl4{UOnM%u4NJ=mAl_|4I6`1!u_d+8jA9E& z;FR3OrT=(<8Z}E{dnYqY8;CwSuzu|OV8bW_;gK-);ucMmtew{NvdLi17*F(|mCR@l zE5OTS)SeO=ClLqOTY+_uBT(4B1Ktc+_}Mjf;Aoo4qmP8R07RVf;a4 zg6iPc1_o{K((o~7Q>F!0=&?w{oDjD?aB@PW*SRjT7-qwd!=VK{@$ed?Fi}w;>BEN0 zL+p7Ne3)_YSZLKiWE&L-Z(xY+yWRk}q~Tvd&v$@!z~D(KveV3sJ>mP}6Ubrrg($bX z^RP&)hMs~w!+jqbV&=IU^g6o--isszoK+tn(`8GP&?Q4R@Qa&5HYlw$@Kdn=n;6RV zXiZAy!1NwUK#`G66F58ISb+1)%a0D50fc&r(^>YUXk>~Tg)avX0vI9K&=CU1GRO$j z$5K!vfjun09_=W#9*eF)KfMEc>SUs}d!{(`B3oRyePP=R+~RJi!Wh{9Jy19N02gqS zX!#!cr$)Oog*o+Z=)X~IWXvL@psT%%~C*Z>a(faGT1cTfzt<41~EU#@;X44 zyI|o+Ru`4G)s(={II#vKzQq@%GzBrz;q5Y@zz&ERaIWA;0tX3ybyyfh!L~P08_)OC zF5|)<^>fYGm2QR)5^@EzpG3>~9Bs(g0UBsV7fl~o&yR1zKUrhou1cijA-mNW1Tu)N zc^rm-BaHnv9th4(hi3-TD4idsqYng1fOa7pq{5S!Z_G6{$$-uNPNS?HPAa7VlpT>& zIP8O?3^`iLe+FbAgnf($mWgBgkEGrDqWE>I*_5KHY_cf9R!ol4a5}q?Enxc> zJYM<>UJRiQ9tx5&ixn%EoDvAPvdPXQ)K#4zb#5d4ORZl8d02n>8}QF(hI8{1SvZD3 z3nkjasLf#?5ouJ0xKWX{QbOGKIWn?7QHbrV7+Uf+i_QbXtaNg~Zfx;wem>);v{G@M zwP{#5Yrud;4TVyLgq9*pGe_db{s~HeX?5@7q6a^wO=KcC%Z9T&-Iz?03O&+7n%(e1 zLs2Ct_+Cip-CWZEHv~PY+b&z=+VVmg-MT@o3w|KCh1nW*tX@DnyW&%S> z)^FgGm2QE?z<8R0VcC!6!3~`3vJ@!;g4s;9nX>n_w*}6eI819vt~Ce?4j+Y~DdYz@ z`8*jx78Wuv>6>Bl5Y|`$X>N8j!p^4KO;tTGazJtT05`tCUYaQF`#3xffjFmqFK7p& z9fCC{rnwoRof_K(qbRZw9M+&^LVFSZA-G6n_Mv`o8G|1Tj>h3D2@q8b#t4`**eq=y zdz?~~nc!dmaAEx%LKS8{*fOQ~um{J4=x)K0KyJ7UgNkIPjin2KL;=keQl$Zb>Xv1& zc?t^*Ac8g!HV%5`AOTm?!ULXwqaL%JE1HPN7<23=pBcs|2m9LEl4O`TiG-dvHhHHj zl?lx>HpN@X&MdQxdz<8dOa?X@yTPINh^xNaI^f&SjMi_#`9Ww}JuAj#pe=WrgC)_} z)YB7o+p2tKkKS6dL65|~RF^6kf-gHNF!^Nd5=}Xb(VWoGbqsnmZfoaYj@{8$gEuSZ z?!@y?trA`!+G6Gm9?pZNQ*qfC3}{}M2jGG>`Dn-uoupzx=8y3cRZG28sC+3UvYG!Jmuz}83!nVJ+?wPEkI6I2L; z{-F0Fdq<4{PJ0=SGdXz@)HI&Ae%jp}t(nab4RLlgM@yL}gWIjdS*_$n#bBFgMSR+9 z_?W1VkU_}sv!RA!bBnZ{PAielh9vTh*kUaqY*%A)wX7n=n>}lU5pSuy6MpSt=X+B- z0kYqDMNDo}-7P!Xrk(ETG`YmgUHzdQ-xB35stGU4^xBNX=Z^M zv6rxLohsy2Vol3Jm!5MV!Q$|GumW*P9FW2#K{jHHVk;G}#%acYRal(`ay~3hjX>If z{>P?yG&k#EJF?%fNE#;G0uW1+t-sOn88@UAQ9+|JIFT!X;fZdr;~Q$ zXmK**qP<`gBob6ai|GDPpsm7I-57XOgY_W&3mrGu^p<(Go_WV~6;>LR$-G8uNyvFiS#2QmxkqED=~ZCj(mzlVj~-qtjqq zf$$J|7{VDd)3)@GEx~3m6iY=aTph^L1q=iYLHmFcKO!&5H8AJFP~bD9K`{^Np{wi| z1cx1g7M!D-%giX}O;`szt8m(O z8@-yHlimf))jqHq?fGQn}#1h05Py95s<6*Oft07_0(q@~I983&3IxUpJ!TD?P7} zPGC<42fv^f3IgWQtQy!MTfC0@OmUSv+<`<3MtnUYyI|g@p%kkA#4R;!$#BJ!*A+`q zvC;<8_86NG1?UEHDBQRY777?x28&K!A_&1_ngKlI6&xdX%t`==Rsv*-8~ZX&i3&P} z;zd+d#!jne2!{%rrZ}3B1x*$)!N65b4US+MsgUKE3>sW{SOVq_Dty+~h4+rEi_*e+ zD7Yb{Tb82Ka}|md=Ly}QalyBap@b^Q!WOs`4f-LD4`Y?uS;YiLaycCwj`~SN(uksA zIg0h4gz4DZl7o~f$SrK=0}}vgj7bnP{4280r2NRqgWes+=o^;FwFh%}B1;rCwWSRA zSH^1`G$N#kq!f=Kf!bVka6F0Gp(+fx@a2347F|gqr*`G4H;$?)vm^UeT+4WWOJRzd zX(!F5L5mAdpy%*5500l%+{^is&6B>hdU! zF$7kCRMKtWFzM8A!kmUgg6^gRy&QeIFgPf_D@YFNM@k4_WTGx`r%ipm4F9M6%RF@$ z9*Xo3wWmqR6QLc*R*JkE3pq82H)i7^&CW&9qf&Py0Fn{ zj?iGyn3L@w_@YC>_GNTzjF>~hoTSli><5`w7<2xopA0`EYWB_@H&+U4VHDoZ!u)O%lOiM z4x5Ye<{NZ>n1cCHo`3{P#7oXQ;o!j1&lT*dfmNPEO;ZoYpLcr0gHTE0A;x6w<;>xb zq8(cpeq^+2io$3z2LaSl)jGnBsJj{ujWJ-Y;c0v>W%-L$t zdi25p_TM4Vt(H7GMzHsXqtfs;=C|-IV4msIOc@AvN?CZVGsVy{+`>Kp^;w^l89`Ou#K5Pqcp1qhj%ghbI?Yy0AqK z|AdV@PfGS1;Bz#~#1OZp+f}udTilw)C1RgVm16l6xIbiCv1c^lex&Wo8`+O__eX<8 zD->r`pCB!;GlCRSDQ#XXPb}^X);42C{0L*~PWvO+a}?ECxEgUR+eJ1J#0IHYltlTD zQ!pU24Bu|rIlx1c>8LM3ff{b=HDdcnJzu6iJUjqx7Kaul8v*I}bXz{1$>Kl@{P!FH z_8euiP2Z}bchzpY9ir_xYQenT8k|70Pc|@<>+)5X8pg5sC<%p}bR5A5=QL~DqE=DX zrLGo^6f*$Kn)AHDfa9L9D0+&m`Hm`z9|OkvFhwoEYUi5O0$?`g^%|L72vy=2|A1dR z?_*)M4D2MF)uN`!%_P|NGzail4Zb_DE%W9yh$LtsR9d)y1W7O4=PwRBmWY+j|(i#=s;24TNudiMLQ`Lyn4Blhxz#C;B8V8gUKZx7?An^B) zZ}OxpFXn-D>*euAp24s}2=-u=_liZy(G3Zfpi2j^aB zvdP}9s2!mmVW}7neBhTF)F_#}9Y;``yaQ|~tj5!su3vuG4(|{JyX3@ni8&UQWC%-` zU^tP$0$=LnxonUJZd!uvXaMkN2c$nvZm>^G7iGx2$xH-VcUK%{6OVXcHJNK8tfP}o zc4-Iha*KD>$pS(Y&>@2pl~qpn!t-Hw+R3wVq@4PRIkks5Mpx_7+HJ-YI zcaD#pcIaz|ENLY@^F{Xu1Vfg77Or`HafI(e;>3%tkbu~@MC`nj%o~?T|4klevI8`M zEMx*jLYNl<_?|X7Fr>)PFy)oJA88kb?GfA@qW;heh-ppX@KF-((^2b@v4Pz-(AW@m z2LR3-io!8nx;*g;oi!R2$!Jl0p+pA`xZ{+8z0zzR?cnDx`&$3IYkJ;W1|4zfzrE{~ zD{uepkNLdv)wbu#UjFO%l;ioI9=q#Zzj*fTM=|~9@BZ>bpSbkrzh(NrTz>1tUtZAr z9Mk!GBl=}d-jBx_x_n8m&kzK|iZiM7nWp|i?P2+&IrA=YCoiQS8#e4uQ!Z-mhM z#8qRD!-x99nt_zLfWer4@+!C75@c97wt)Q<)bxO*KU<>82hsRP!`eI=|kSZ(kKtPow*^shbSxR^#d2q1xF zYH+Iaf6BktMKyw_czI%ZGhLXejS#2uuv!mMxu}6R1sgVg7fynM@ej)3Pv8`(kg9>` zJ)FPKaujDip_FTFLIcaD5^XoKDVCAOgAeGL+}~!68}pVllnPQLyjt$1e_+Pq1||s` z0HUfW1Zq18RHM?~qiv^p;`+!Yb$6twAK^^Pd+O$vp}qp&8xffDP7Dsh(E1K-2rz(kF<%#(d32%+~oaHa^76%1qY(2$c5y)#>m@EePNO*Cr5C@M7ATR=fk9M zdPPKp8G3c&c?G}Vhsm6Ow;jf_xpf&Fu9AJgfix`uh-vt;=|$ul2O?vRdVT%~J3r3!I4UMd#7>%+uzI%#6>iu?_Hc<9wtO)a zR;9W7!{*1$K@&0A;AmE4L5slQ#qkMX5(OwkW?4E~kY_WfY6V-?I7;iMjnNt$l?EkW}bvA-L~ILQ-=CNaJ$vzrRGQBo3v?Piyp(@%Nh&bOSX?b(H#_&}~Z zG3w)7sj=#qMtOt9Cw&$5NL7+E%o}DSJjjm|n6wqlE)q)1i;kiz!D7ap4VM=(^0tT$ zfW5L^HyxyjN&N+HfkBluu4^`n9U;0x((!Cs*Gjeh4|&sHK`=M28STFHP-ouu<3m2?7T-A|)dD3Qh_df*|=A$4)i? zOp69KLwKg0MR5+P3kox&4-^zq2oIkFA-o1w)NPnOLU`F+Hx>krUZ<0T1)L=pLK6sd z)nK0!Dicf+sk7B%);Aq3AWb5k@Z;fSOfB9@$QmhATt%h z-V`EO{eZ~oh-t_}mfRf-J$=Fuqt$SxdM7%Cf!K`+kU&^QP7hO2vA6q~Q%@N<&eM34 z!QLX3lXn$Dv{H@Wv|DDZxBrFk`ARK~6KG%DtFvaYvL3TRjT2E6S-8LjrV5?8Xc7P5 zuo^+bKsMSks09fYUnW)^X6MwjiTn7X^1+=v%0YhQ1rTykh*X@RG{_pqiOYC7cx0 zx0&spToI;vq{G&4*@GJeMpPn0KAwxcxpcn0OLbq`YMQ!=k}t*W3mDpN?TIsaPFX#8kLUe z66g`?C$rMrxKXYD#w?Fgo}IAz=0LF*aZVW_BF&yhcI}y9waHQCiNO}D5@c9d&eXtg zl$NuO1+8pNGL0N2Z&LFoWWjMY@{uccv2k`<4>cL2T-F|(5X8OY#`(9wPvJiHEwah6 z$y}STJt3mS#Zdc>7jTrZgbhz=B)(u zd_xb&WZ;zq#|n2<9JjIA3W|=)y5HjTi}FtnZGcttnf>84VcjO`rz~8&TZILJg`LD{ zxIx*ffie!qD6aFcUOcYcZrp9dG=hS#58ei2TF^uDni|L=>B}yttz$9OE#vGKT(BBQ zr!a`4)$}jq0zMu9<9->GpWwz$-CR(wbv!Id71UL=!%IbM)8@pUnTEiry^j4PD=|hn z4wF$#Z!X8smP~A~s znws$YxL-v8eJKR|~ z@J12O?Pf0vGiR88VpJ3qdt8;gz}_8` z1Wh;)QBykZ==_Z5j9l9aN;lA89J)?x99(}pu_p@M%nb&`z zp%>CtM@#k>c)MfpZH*q2gT>ur+yy3!XJ+t92eywm-F9JsF&J+o+?>?X`I!u00kdma z5b=vS7gf|wnoLmOu0uXHKt@nSZt#LBPoqdE6zh;?5Bfto=6lg}JL7X9ATXY^qie*H zje%*~(t$x>=@sQTh9+Orz(FSZAU&zy&KWgkUL{tH0?J!2R9)$O~*1 zynBU_bD(LDw!KjnlB3r2GAO}&=kj_?W0N)JjGIEdy&{;++6K2UV>m?Sj^_>w>eMYqN37P@Uc5;PP^f1=+Ybl<8Ro`o*%)D_CUa?Iagb0n6bk9OuM?QL-&!Or%J4Dn1b* z9yzCT?VBlIgTdsAZ;}T>*X{=I!!E}JFxxF*VC43xXvihVCahqvLMLW13O8WqjHD!v z7keBrphsE&G8aW;*Vq)HZOUoB71m+i6dwO#wt3aM-8+|;J#tq9PQ0EiYgez`*wwvh z-MS5(8`pNP-gN%PF0!*6uFt?5{sCDzTTWM zW(K(-3#uv>TJgzMyq4 zz6wwnItC#>%*{WHt&6NI_(q1Z?m%XuB+vj(itZW+VMqA>aB36C!MudrZY~900Cz@Pjrjf#y4pQs>lmoBwm11s`hd&-yRl*2PXK`4vw4R zQbxIL9(Q-imotJ{;*E;D+>=L|R0BZ=#s5Mtu8g%u@rQfu%=hhtE{GK%mps{sYDm9O zx>>iLI>J@2HlsB&LpmoeZ636~VAfv;WIGmU^dwe+Z2CjcRGhi}$g4Pnu(2=2;7AuSqn08EQBXkS-juqyyAI->DtJT8sK|5@})L&hZ_2Wx1gx1 z6}bVL1RS<*Gl#^m^)*(k_bb-iik2)!vT4?7u|-}hGK#|Ro1Rq zR3ZN2o+wTB&Fz4l3Rbbe$mKX3V+zXti?~pU7<1Wzxz*BGDz*o_dPTnLX!%P7IIRb; z6F`S2&%C=s28FeavuxDoidjU67y9aq-b1c~RjLa#Jf-KD|F)>vLmPlEnF_2y2`oOm z=ZddAaN(LA5VLl8RVLW9SyNH(gf{L%Je<$e)^R+hTW!Cr?B8lQy^;TsytUaxar%Z5 z+JFUT;pB|wH6D&G_>UKkm%tNwUq~QT%S>aT9X)F_T&)6Do!@i(_$|Rois_N z0c(QdMYJii*n*2VDD3!>C0GX;6F_P~Q3ITEYEuNDVOc74d0_}^S1y+-ZE1+{qjjyT z$MIH*fyCFjjbEt5_nvrDrksy*JbOv=(yQK!Mz*>OToZf+L$-#Gy-0?(5Sa7`-gM*U zrtAW6hv+b`V2P-JG9XKhF9PDk;5s^Ru$7h087;wn*=k(!Xr3RjlVrOrok~cC;*F_F zd3dD0CC`oY3SdeGlIAdpd|;y6D2+|Hx~N0c$IY@A?ek_Pe73^850Jts1NaX3YCvkO z+{psa_=KGt6E*jp*wiy{%NZ_}kUP}G*NT}8&X?1fK@W&rNgQ7fCNE!%EdnHjXq(cV zg7D^UohKd=c3RiIy`~C{MiGZj(eG?da4&_gY!QUrRxrj#GjvzHb}Aaay|)zCshUk{ zp=&rYSvjZGpf@jEKs%WmZ^mWS6dY4?&{n!1W~&HYX^eKH32qDA&P%;tsnvquwNr63 zZ}^l7b<)F9p1ja4glEtCg7)BwqIVD8DI*HuJj>(e4(s+e9~a^DI3IO`5QP>7FAJ0p zBiZHq!aPu_)Qz=bd|c*8L}>uBPsL4pR8-r=ZpBfbhlkUCh()wU!;4_4AKM%hv&xdS+YFAm`Qo!qhG;l)k-3;}&IKmwVQR>Nn9MfI0!k3{|s@%;ykp?1(cOr!Oc#I zxtIWQ7{^?&tIAhPOBWG-ibY~RrAAg2mg9OBoRd-wwOUGq9OLN&(5U!6u-fr)>|hE? z=9;oV7?!G7P9LHo*{5n`@Ae+#4FfiI9=@iS9xK`f?v~>`b zj?lA`vIFjryj+Fn<{5EWQc{XB+7mQyM5A|RJ6Vc)9lFsG>@VSytzd_63*((wVj0{7 zJH*C>EI*_`oD&~mzZG_Po(QdYs6-H>pT4jj)bLIpIcq@othqarD6D)bq z&~O6BFKFllZ|peG&CBbsQsxoex>;k)gx3XvY);=Hq?|JXDlrK6+B*!nNNi;)Vo*Ol_R6DA-9=x8ATl!PmxDL(P|5yP+oVy&B%Vu8&!{ zhh0+5h2^qO6r8Y<*;J5NJ&?Z8pG3K|ZYMK=jm$$2GJSku4BSNYi~vjy+r}c`Ee?Yb zZ0d9Gp|SV7fRWOZFK?unVL%Qu4a$&Jf)4>s&~u19y+lg8V5WrVhyqvCIak5xWk|xx zL0@673BZF0gqtAM-Mtx}i+pBCUa(Q#Zofh#&dc~;!2UAt4}ph5Ljsq;NsQp*DvZKQ ztKV8-lpIzMF3PgeWYye!kO)dle@;K2Ctwk=*NU^*j%K2AvD*{Uym6m7-a=>f)z zku#CkdSr&s9TSBgk*Rt%H0X%jJ0c%~WVVSVGsB~d*lFeod#psgjRFd^(u*(dy%x6>SYw0VX= z9Ci71-)}-?Z(adcN9N|W#FxYuh*E73XN0!>HfzugtI%+1iA#w~jSg#Akw(?gvC44^ zGg48sWJ(57yE)Qu^E(0;XDbQV%uO2hLL@)9tEh*Dwf!^)zKO9_^-2#fu)Aj~S>NMD znp76-Y^_to( zWqi98%!=Pl1(z07c|CA-@~Rj*uDhX6gcH!g?Fxaz%X4WE2x9fj4LXk*!a@N>8%=_} z2_{$CByHG<67>nMj|K%SQ6b4)Pl!?@)8!S+tDQ~bDTUjTV8#`aRi}H+JRV5rh?PYXMiDaGZt1s-WMg96hruVaeoo52BRQQd({@jw-)7V)7s z;vaP76Ll$k9BjuLd^zfT?5xoN0gp|l4?EHHh%&u%{w8lNzbVBV&#d_;1_bSrn;@Bp&IOvXCB?SE!Hw$IwqX$xeQj@PKbB__40`5{WTtbL2 zG`xbB>`0BXJ5T|gKo^_72XBPl;6LI&)*Q)DmtJxt8;_Kx0IDVrQ64iLu?2U5V_i+*_8Resm zMVpL9Lph{BSM`^W-VZSWP$BRM4!AbVS6#7H0BbNgAEpQVMNQ-I{0|Pr+lyS2AOv$F)-fL-TX>D21van@Q%i@+L zElXRLwJdLKX>Dy?(7Ld7QS0K?C9O+am$fcm(6XR)!GZ+~7c5$^c)^kdOBXC#uzX?5 z!q$Zg7A{=4XyIah_I}~Ah07PUENWe}V9~-wixw?jv}DoJMavc~U)-{|b@7753l}e1 zym;}F#Y-12TfBTp%aYb53zjTgvS`WTB}1o-0Q9K^Mq^PNU))Jps>9#e?e6Sw_&pnPi zLa^XV+;ZXyS@7*(pATx9@uT4WA-u#?G>tL0iIBeI@mN_!RaJF$MNM^W?WE~-vnC%~ zKV!-fQ;(ij*-&xB5l2osy6l*$ndQe;99J`|{DiWTj`k`}uWl}%H#uI`Qqfwzp!~t| zk5v9`?SGg5vFcBiuT~tK^wHg;H{bd!PJ?XPnvj=1Z=58!{jH?B~An)vrJE zwNR2DgT<=-}}CQ{Q5IfrZ=ta+@A7pz5PKH{_;OQ|Kpz=sGKr= zZD-0K+jGq)9((-r-}=shU+%m1x*Ko4<*s}0`|tw~KJ?kgKmX+?zy8ekzQ6vifB0Wt z`T8@R8#isg@Y3!Z-}d&8fBG|@|H4UGj&dfTY z`>j{~-N!!n*nb~=%!wzhJA31%3*K_^rB_}3sV_hGtsfltDANf+bU0Z)0FBB-caRbZyI~5YVX4p$5rqBQ^kcfM@>Fv(v12U^_NxG zRUcP*|^->nqDDS|>MG9#=iNV(cMgoz$_Ra$ZHgc16XsiWN1>YEP@)dvN;9 z+WFJxRd@}vr;XiGx%XYiPCn{}JFDhbol#Rhb>^h8kG1CO$G&}Bebv~(s?7@s`R9Cyni!IjipIN$cvy zZmRy<`|6LWZ2dsxp6{JnQ(sjz_Mz!}h8lJ^o>sk~a_rX1vBxWpub4I^R$W$xQI>;n z%j>Epmp7D6uRNma$mui6k19W={J8R2RVUP*Qg&Iz&hp2~zft~N{kJB4yZk%l-z$5e z>SyJ@@D5b|p|XDN8SNW4z5Skh-d|laX~~)G+kXA*H!5e$T(WfA_J3IX^=Do<;`$rk zc27Wtq{5AxQvO>m{`6;#pLNZ(la}6g`vWy~XSDYXy!{=S?q9t0mfrWgcW&eP@4NQ{ zAH47W2R{1Q$DXL3Tz}LFZD*}L@5A>${lD(5Irg|YZ~F3AD!r56bZXzo-*mg zs?)31R8Bo@>?75uRGw1VSi5L)+1PD+mQFglu6FFM?M=1wY1KC9!j>NBe9s?Vz~t7@pI8oRlB_WIhou@7H5XYJ&=>M2JqtF2qoT-h+T ze?@9*ec7Ja`r550EZuCjdJ z^fi0VSy5e9d4ARLi^}&*ZLUn!Z>yV9adG9D%TJinTsa8@T0QojeczfqrJ}AnUw`4; z`bvzVy0P}eE%lW6v=%J6wK=gKeVoa%&PkmjPdtjQxLnsa<&N)M8Hi z^1(kIJb19iB+hts_N%daJo644{5GHHjWNEm+Qb{KTh5%5V~@{{G5r-=?%5N){Zh|L zWVl3swJe&1`31=bTA4khS{vJMS<*U;?d0Zy{ z#(EgoR<19r1n$NrnVgkZ|Ky~X-*27|UOi17o;^m!|MIjL$F<@NTk?Z;ln0(c!tW3M zX?8;e`pVxQV-2QEEXJt4EojV^M`O%oj+A;u{h|d$709KJodQbWmZnGl}V{J>lc-mi+KERaN_57!Y|KP`@{g%eqR`{qhS#$HBYyHYMF!&2FQlGckIyx7vKsq}{rO$lqG=8A{WR|l~# z-yilJ1sgxl(l0z_7Bv@7^{eby?B&t1*j0vqzH+r~n(0@g!Yc<4zB0rJepfvr5ajuT z@~`=4rhV3aUJcj+nCU$>Gj{KnYF_>++g@Qf6w}EA4j#PvWeKn*8qgW2W3j6b9{j`i z1q5K>cOU?#b)<&G za-NaiNIE4O`G7+mJlaI_frhZ0n<=utM7v*=fx~7*yf)_X+yc(nix0>6a$+6d{qz@O zlkfdn*-;qWDHzI&H#fwNLAVmMLY_N<^eYkm8sSoeSKv=s${%JlfLP2gb$5f3g(O^w zxI4XtvW9@+ANY6!_*eM5CQ^0}%GTNJ)US)-+!85!Gs-H(G<>4C?46Oa?{VPXjXbvx z4>|E)?QW2A-3%0qaK8b;Z?0uv#2gD@(w7CtxXUvHgk0xZZ(v zK?zv*L}1-9QoNQ3pFfVV$AL9m0@jCL#~61zux=;;>ywdwO@y!899Z|3fb}`R()Gl# z=z8R{`{NiNa9}-J0@hani}a*4^52(*a>u1}!g|($wcmlIZ9WHB^$skzzOHqajlz1W z1gsYTi*&F3a$)@!@}P&yFAD302rN;?Egb6Pb(787bkoVZe^_UDzMI~N^iPyXZ$kQ= zNT;^vmZz-gMLK1Kn|?atry?DiQc*f(Of}NINIKX4zfNk9vY$anxR)ZNoO9ulca$NW zGWPl#jV!wa<74}O%{=_A+iQ4eH2s%T8epuzq?u}X&?oUsnbUzd$F1pqZ_`JS-iqgs zAZ$Z8ia+x4A0tj4t?ATvnBFk0A+{dje}T!8zO;W@E{8PsuLtFhML33#p< zPc@J7??n7%%^_fE^|gQ%wh)WG5m@H~7Uh}t^WB$){e0qTBWKwz$8_Z(`lWR*1uXJ* zjl2DduH&x5z}g8|oPYhfebF?AuccoFz;fl4JH{w1cOLWTqmD(xzxoUI>sr8aY2uBH z@s8*i5m!AWI>uWLgZsaUzau5g19@@U!tt)oOdEm z`6%K1AX4`A=<6$?yTYR*zbBhQxUQZ*+tL4By?hzcwf~y_3i_!uwFmh+KWtzk9rB5f zhFo_Io^|XR-UV1km~P6yuNBsY60kl3Sc=Qn)32@)us-!?!n(Kwto?vR8(qij%ETv; zr)z|~VdcXizETb>MbVFJze>S!aYtA#?gs%&aievA4p`J}HSYFnB3RD>7IjblwC*c_ zRprE8SY^kUwZ!u5*P_1*$G8U13WMR)6B=So2){QA!e#Ayd!iSR85zm4#Ggr^_h5Zi?C3WS>xeih+S2({kxh|>=IhhrOJYY{4qvoF-a zE<)d_^F4}?x@%AmaoUk>GaF)XEymu7@Xb#C3y8DcnSeXbNxuwn_On!bZZ9M$N5Kqi|DiU7`yy={DeXO|bU?jd8WmUH4BYC$(;+-g~^7hV1-b0c2c9d1V z@kk`^=}5dAWtASEi{!l+i6>7Cb*jtoOxbb-LiJ-zcJftcIso{(u6~AR(k6dD$1{2C zg9s`2`1@9G$RD--yO6KAzt*XL6Q0TYE<>pBA4dB}3MBK-mk`&wPO{LByS|l{w2Vu8 zqyg2-qq0ZSqq0Y3(l<|Ph@FA@q)X1n*qmbf07}0EpYX)F4YB2Te)v=~e+}pedC5u}S9|X^#A(-QxzC}pTke-o>~uVT1DK>= z{+b^t9^1u{_{UII>3R@(E{!~mxUMO}`l18(H^`IzGXuZ+PZh_XL0O%*8IinZ#9bZe zd6d<@uZiT{5{dsDWv81aWA{biJ{Bqas?*=+B4uBUl%3pY@JrB@pDrHDEW};{--I;!5ER}6 zh_A8bFT=Cq!qr!ENLRe9+F{ljtGMlJ|8F|Y_;CIW;Q-2PugR`3hhVFBhO5^@;}&o`jG;7rxp=A3*tS$h#3CH~khP>~i9GjQt5X z)ixPFsXv@k#`Q;>H9w|QfL%d6>w43$E*{!jtTz#?H4dz<60l|f)(ma@Ft9FmU=5al z)fnlQ@<<1~JaUYA2i7$uU@eIBYa$=T%rAuax}^lHb%3S3jvcrVaiu}GZ|v8dPQUKM zv#x)|{eNyNp10T9uScFAKaaiWhpub(VwZdvH0qbSJQh7vJua&;oPyK1Xs^=He{Sk;${zQMQy9RyH zUzgJ_O>0BlutY5OX2exSYZ-=7d|m9o(tcfpx~iYDP9Ng4`4IULR?6vD-hsuUZ?feH zcLARlH^e#+xaqBkKfY+Zf3FGYe}(kbk@D1~<48Xj;qwcP-Rr`mZka@SKfD;@iK-h-x+pWgVZCzmG-K{qK4}`}d|F4nHexGK`U5k*o{!~jttQ+AB#JPV| zKzt>_OAu22bs(ID&~2Y~y&GSO_#c4Z^$0(Yko}3~UypR2L*Vb@(1GY@;qQU36t5eX z#+d&o$|@ha;PK-18ZFy_xzVyWpe*N1f6=mQQC4-Sdk<4~JIX2@9* zoN-~f{P?x>>j!|vdDnjZ2jcX1^XJmXYw1^P$)Wo-6?rP}32WHFeRPcOn&nz`Lapi$~(*6>3M{hx+7&)Z>W<^_LtfJ!*HaTw!=?4in5aH9m?s`?nAI zCm=lgI-@hb69y~wmjg(r9o}%J;aO^jBPn(P(o{CCiTLg|IPsfMj{LF@;VB4pO!p#A zdGKxgxnqi^Bl~sv4KHX9d8Ycl+L1=y&R+q~%10RAi@3-uMw}n#y#Gt#N{!M0i#~$7 zuC6iBTAm12ln(07GJSjr@adC#93gS_Yy1&c#~`0Qn~RWsnI#C1MA&KL7a*i897IUm z??p%-F@J@Xp{>~XM95Q^*Aj_efwDTjs6T3@Q&!jEew3#yRR7U6h_4`E{J!hJ$~$$L zcO~MgUtZW@c+HPcp8oEoh|fW&bdy4yYlUl7dBWWzp)48ua`BjMh{WH4`YLzs{ZVn* z+ahJ(gR&}r??N7yMeut#QuYHVTV->ja3777{qO{R*zc6>8Z~q*-yz(9P;qxH@<~VZr4o04LYz9v!=MlHmRpg?G3-Y={d<~zr%jKR zf5fJ1Ir0bAziqYg^F51@x{mt!@EH60xuNcHIGyI4H6i}@A4dOi^$Gv{P{z8xaM$;; z4Y1w$bnPnkQ-56dr#xAj4`8@OJiNtLa{K)#>av{vo<&?~ooN@MAG*fIep+1ig-G2b z%Bp_#RHW?BB4yXD4ae7sXY#zCp#B92&qSR3{U*dOLYPNLKEdCccZU68+?Cgi>yLQ3 z=9v&Lo4*?NUB`QgZCC3|#2+s}ef{;9fOQ#Q(caYGM6h-{u!c*(+7*HIkxPp8C~bpd zbYb040@hx@(m7#0<%J4EL&AF4>DO&|cIklS?f|S13lr?bib(V0|<)#))w6_G^Cx*2c4qPtlck)Su?t^yvtxzqyl~Bh^rq%%P=G?SB~B3z+yi>c8=NCsMuiML%9U;El78H4Rx|JkUj_D@6pbhNIrG0 zCy-7X&aFq?>%B;)|I1A$@46D{+<$S?X*0GXy&a+IbZzJt?HAgM?62B}Q9W7HqdK6b zN8tcetmE9!w?ds!f2z|nuIoqh7*cn1e`f=Z(k}bXU$oxg;;eHH;3%&pFVNpgeXwDN z6OY1WR+j^3l~Z=L^UO!iqy9?4xdd>OU#``H2-i8!d^|f6r%vqtQh=j2NvD(XX6KoY z`?21ReYyjDLVX&gP%U9><;IdkNuJOKqUS+;3yql=H%^k zp7}T!i4R5MUvc21oxF_m%*WwK{PIZLwH32YUe0;uV?GiuMB@L1{wV+1<>ZYx&!zCX z+sVIoqp@ZAUhT<9*Z9Y6d=&ZAU*7RH;{*9I1T1x>7Nm1cUylapW7GKi@JzX(@%#9U zzdJS=z21tG_L2LEleR>FS zrDOH^oU_H~zR#lG9MnEv#tu}zi#(Y|PUw7l14d^<{4>f3pC ztD!UZY*r7-y87=<#FcNN>EOpcKkOV52bqzA>z6{t(v(zpxD^-&O3{R<(iA4Fii z3vj4c?LnwM4|kvK#eXhd53{}(_Jtk(H0tSo(XjykpZUxG^JZ3Nwe++Q7*HmgpqIA9iG_Ulm z;Re8R*UWarPY)o34^cYrDgkRR>Jm>1+wIrQ$eV4!5!S`d`Wtj$X^Rh`ylZ1Cel=f1 z!n)6am3LriKOO}v)x%hCBKz}72i7emV0{I!TzpN~uYc7QhIcSa!1_j{U(ZKiyJLLL zfpvEYSg&W#*u~c)C1Cvy{c!0^<%#x3!zg_{RsvSl_Hga6-fM;RTnSiH0gD*bd39l( zh`f2WW9-)tP+xy9I_X@v?%MUV-Ooq*Y=pBAE|26> zM|kEfhCjXs;bO#3K}cQJg|iIt-(6_-#~wgPyU)#Eg7_|^(_i4G#}V&DI_JwxCm%i* z=`AJF4_sjU79R&bsBfQ&ICb>95MF?gzi(nJii3U!x6B(uyp|94cO!i8TJ{z^Q-*vS z^(mu?TmD`|{CtER7n^;HyAjfk`vXGuRm(M^egbj+?swoaK9R5gK4(oof@jVfe;R%g zuv}g<5v<1?SWlOL^*CUu3}YLr8}ixxMd|9t5m@egHKXF2E*ko}SP=TKH< zP4wN$7aX{%kAJeqoS9OcSkLJli*(XU8sS=mny>YqL_6oObNKxi%Bbw${F9ItnRgfB zZhv1wS>3aH0C`FuEW00Z)ejl}1IlXrK%{K#zlU&G_8`itUZ=Fobp9?tS$DlOB*OSz z$aDMfFyd9Fn*2M{Df`_>*#nWX9?ELnXdh<&G|VI5H=(T3@Ji&leYhY}Hjc8Yheh`} z?~2r2H9^^XBW1Ut?2&e?4@C0zN8$r0OBusobpP}Ply&EL7s?)EipHXF4@BVJin2Oy zFGunkepZZ^5A}z0u6r_Urj(A&^q(X{oc|}D+0N;J(Sz`2gvTM|Z#tfJeW^aReTU(X zk09hco%3GPmw!OK%ZYy&aMhn$svm#vn{_m`&)Afk5T5JQzZ>x_i2nj1d5pHBa5a7s z+C35Ze@vNmr|IhepYZNL$hp+?X#Ee{d=!a&4=|KYpT{$OFZUv(PetiAgK<%|M&ThT zb~(zbuVOczsmsqpxCY_j>i-dNDMJre4n<1NUkB=w_r8|;?)e3^Nh(qQRMh`&Z}=Xn zTTX41Pa)q!IsP8Nv(moGng*n8LS8q*PJ}Olj!$7>{Jw!_<#DPr-GemB2Jf=*wthd- zl>S&>c`%>dAIDtz%TO1*^QCZoDF4_6SVuXPCW3W0>g(^J60mNL^vl&NwH`zE>o*Rp zM@qoDAFvdMtn&!sN<)n6kFXwdU_D&|mMh~}Zz5RFIk0|Q3KsgI{D-h6!k3Ht7fZl; z8n9ej3acLdQogRRegjyp zPVb(LaG%+aSx&!ZIb+oRRqs4Bta{{8m*+1E>y#3()}lOln)cJ}i}HSj)r|W3Tj9Xc zx_XXB<1Q@amkMi*1FH+qs)uXcF7%7MK;tefcOIhiI9LMKrGVx7@myFw@|6D&)-_JQ z?!r<{ht+;;? zu%fj3GGHBwR$acxd31T<46JkQkA~%g#XM&k;!1;x2Zn^@;;Y$#rRAohuFF?F#MOVO zWfYdn3)eWX*srZQbEnsvY$c|R;;#bfn-P95JN`Vu6-a*v($^z&>-`nt?MSCCc;NE! z{sQ_FzKC?{D!&*u@11T(d?(_6hxkf_mmoY3p$nJg7a_eVl71!PPh`xy{Hl{3M4a~N zWs&p`Ax=Mw3-_&ve?5(}9|+r!--7Tnh*M8L4dGi5UW1T2N;N|A61P6>k!gtHjfAT}jTRxJ`@jiic>f&yB`XtsPo#R&f`mLBJws#yRj&rxN zVE5_r#rt#*BTm_Iz^3ayi|Ssw52*PqaefQhS&Q%+2#I^;0o5qaeEvR; zXVvw4ep^hVTHcf_-ru?nWp$k~KU&t^%Tl|I<=nlm^0Dx47B}5}ugbkMK+jAP&Y|9? z)3bIg!`~vb;p*xp)%3Ua_u-t+#Iw$ah7-Lz_GZAP50^iVz0rZ?Ij~HLSgZ%-UESOr zV;}Np-}4uRwX6iJ=-EVf7-WB_}x%7wgmOqkDmZI;V|Dr_$Wfs1^db$Y3^qH zedKLsEj)~n{nWEXLqI0${}a+VuRlXb+gS5+Hvh=CoB22n?X%o(QI4?xWb1to42|>h z@_UT$rW)lqhB|~?@zL@>M0vLRD9WFX@ZS(}JQo5eLv8Oww0kPzYY1R{3`fQWqDOK!~dgyHLtVxw}J0@V0UxzcP#!iPMP32aoVJAK4lf{ zA1&XEXAgfWcT|o|g?yoWi#>UJd1V?OhAw;j_VT~4h#f5-VmF`9?H=;+f#K2av_DdI ze2MhDpU9>%BkA&E+)R8AGM`B22k^c5iX)0Mc4c<@l_wOZv2fDwR#;UtnC*PU9^Z)1 zXR7O&njgvR?rvSMtY$i6$w4%)-@31zCQyBRL_VL%CU*FfrZS;-FtO8L(7j;sk~-;% zpIWeZaqDt?^EErrH#%9$;8V5u_H`lOx2(QFfEWPX*-R!sWu}{g&tKwun>opuDrHR{ zhO_u+{O)O{h1~=AI=%Lyp%gkXxapXJmVWntfvC4OttUpRB;VOqi`tP9Ef z0KZW5x*JO^Zf*5jdi~bE)}?(dsl~@m?e5Ovi@)6|Uj}@f#__>ueue$`dYdn?S+!C& zlNmZ;ktDRW*$)7>wdr?)yY*Ax7+PPdchSP-%lj5AXzg3Jti?a^szVJe{M>O{8$K(I z?^dTafDX0;<9>EUXS3JU{%4F9UysGdWEU*%TZ&KAwx(K7%Dk5LwHPm!+<6B# zmR)Cl0eE-qE&Z|DEmv*TZf())RhTs;y&NcNq;7WiOiR<#qwb!OWm$r6dIU5iKoLau zw321zoO8}OXD2zzIp>^%oO4e5yDtC_AOM2oG;O)22@>z7ckc<``Odk%ca#pLP90ZE z83~;vfxmKy4x``*9j02PMx;rcg=rXj@~gJy&2ZUmdd7@4CmU6dKk+`L3Sv)j$#3F_ zKt%5UnLE9*w`I2Kq7I|jm_Q~bl|jmd!@*adnVep?zqXd&n`M{IUd^?(#`U;sYiEoc zZZiD*L&r5*`-01hIbW_!^#8qIxq0(H7uQxZyTr+4tfUS^?261!?l*UK_EK{W{b>%! z-T77a^AF;p*(I?^(m-;pv6n=C8sGo=WX3p_gUwA4Ob?s*k3t@cjPv$!2Bz{0t ztX_WYG4hG)%M6M`n|s>*U2S&T8P}rQ6D`s-ic~6`C`f!idSEd3IWAJJp5jJmHwi?L zu~(zecW=6>cxp#*H|O2lleV^&|7c%=NR6MEI5Al)-OT@gH&Pn9X)5jI)O*} zJZgPftX&eio}#w;gW;}u+S3@h<3@qb{4mk6W0a>> zpRhjI-QH@eevj+W6}z&~9FIYN+_k;_08t6Gsc)Hkj9Odc8&_qTXFU zYkThU8#ei-;6EK>be4r#=0=W;qtrb3d5sh4-Kt;IdSwpSW$+`#DdwK?P`G|7A98{t zsaaKaO^{uSH!s0?zxLFvvB6NH=diKeVW6NX+-Hw;J zu8e&xjhCiD9L6X3Ql!|j&KaX{eHFiVPG`0WYUqlgO6_En`CEcu8V{hyOba zrCb%0q%xEyilZn(|HhBltXv0s*FE-Q`Oijwdk5R|lF4#|bLe|@KYH@JXM6UuwK?-2 z+Iu)xoiOmNmE(GWP;Q)rr@R4}Q2}q|HX=S^wTJgQ!`|II;~OUmrH(kx*7eFx|MxnG z(0;Pn?Hj%EzQ$lEaS*LFUH5NBjknKVxZ}3=nX?-g&zxT`hf=6=rK|>()H2 zpq9yboH6$E3Vz+n0X>WxWY#Pjk1_nr7yK`FV+50z2FaN-Gfn7`oxRs@7gjouOdB0M z+_GvXh>VEiDE3jrk&*K3-Lu8o5#51F-y?}UDI)7y>6B9&oVzyNnNZ5YDs3(Cj=Q@? z?VT!qb4Jc^66)U`eXnpxtPMO?Yl(x~qjfC8AWdZG-cl*o@+;UQ7y5d*WlC2yU&+C6 zXQ#i*BJuLOdwgYMh*s*U>+9=RMuQn#AM6=`wk!5Kyq!<$Whk=Sc5m2zQvL1iu01edF6^WET(@X%@yN${Zhc z7YC^bZ@;ye=#1^lL)H_mZ@sp%K2VNdbmB~cM;lK7p z<{vtqpJ-P&Vd`_#LdV>35=#WyW5E2JP=lWFb{>5LCgy64b1B0_;jqL~T-v)~`_0O) zQqU*D<=keT421S$;aq-L3EfZXlR_`9tqljfX(9;ruhxWi+|<{xo5dpbeU*4up30yn zRN1EK0raDdJ4S%3tgYRe|GR$sa9f())sp%m-MJ{u611!?JZm+iU)f}F(nAl<3b3xg_|5DdrXrpQ$v(L(} z>zs?km$t<9vFe$Nmerpce?5oJCN-4_Q|s!Wt^k!?slK)pftA7@_O9)Uov{e?9Cika zi@#%5+unz=|ubP>%oR@Zle5MWfqQQ`$4`GNcOBd~RDo2RcJ>rs`3e6Kea zMkX_u;(*YA=Q4f#0dG@hCQN`r`~dOn2iX(sS)Bl9>l^7_S!U-g%4X&p)(Jm3F&~#;CzSKljioEhlxsqj2&hV?1XNZ9_qZwCIHydm_*{| zYtPY}bGsa^>;|#x{`S$=H%dd6S7m4h&&iD2amvWl9@^T*z}wdJBHGj5*}{6}Ai99O z8WY{|JVQ8Cbf4Ln6Y#G)wG-~@-1W$P);z?-rrU#7L1651{%^hu$DDx#rKH2qGlpo0 z2-OqkhAKxZb?_Q3iWizF0F`3n%MfEpId`9(GwJF6E|r!K6c`rI5v~fuP)m^!`iz3D zr_S9}N8HYfCXt{6e3M{_2u`oj+YcySHcM??N+3x~VqusWC|oS1$I60BCSmWn$9~7P zaV>nydLrO1LZP&UCp|X~0l@mhLV}fe!&Nrq**rkly=vAk=N|LwN*QlgeNf|NwvdIbmIfLpjmhfq^;<-K z)<)Q(6FVwn5|(fPgzH>Srbbfe2J2!H5?~N(Yg>I`y-hbGN)rbtWZ%sK-+3}NwYG)<;1A*4b94t*lo(en(h?P8}aeC47)=>r7G*3stYxrvNm zS@>b>V~{(~ZA=VixqyRw#zSim|6$Xyu9LDC>&`uWY=rw9CnZD5#|E_Exu-J0#$_8U@we z!iMhewtM~UE*?dHchJ^-K9RIA;3S?ca{~Ii`3Ahax^m=jQXKkye$*T{s7?6Ux zXzm-h7(oDpEMcc-0#niv>$))$(fE?1-`2iotjvJ=Lqe*p;6Eq_V3VP&-z_9)K%^~ zh|mb-JSyKoT6qD^4D1lBmmqj!BPn-!8Mm+7nw8JE)d$e(*l>9U!3o382xj)CN=fe@ z!to9X0>Rp(&|@TlONr*wguk;lH!iI|(7ycgJ>x|UU{1o`SX;Z;yIlOZk*6vZs*TrM zexY4tFwv-mg#yneLj1ER`#bYx`qoD2gllrh;2|kc-C1kehs50x zItD*S>4pyJ5;}NWJ;HBh*Wy^6 zAj4;fQk)NxB7Dz%N8?nnqvk9?xA#QLSwP<#$Rm0PSENI9gcmI&0Sg6eBi`9~_`){E z4+HULmhTjW9waXeBo8JDFzdS-WoE>5u0mVFr_lp;1OOBdnmAI9Ak!fZvRKE-yBp^$ zOXKhdl;E<`DM8oB30$Sp_cY#FYPi}$+|`H5FgSnEiB8s*A=&@($dRgXiRxQrp`Q~GXTyi(S#U(Ne`bJAqeVhRuA~?Gr`a;J>tuj7X05h(jlzI_`kd7$i<55!`kZ zNf>^*QKE61mi@jXYMY6ZF(~2Yv3&u`>%{>Wnh0VgV&^lJCoy{7iX@}&K=lzPEX@_n z+tPk{l(|0Nt=j)W+>}HShvZdIz}R!V&o<7^aYtrbg*my@3Njf$dqn~Ij`jdkKX=@9 z6hzr$+#Dh?5<|}Yd}U`s0~F-mO<6@drP#4D-eVXE+3Ep)zbka~&4=6**xHV13_+5#P2 zv(6Twx(N=#B+gO@gnU~}wv|81`yRR2;NzL=bHY&xna-RqHl9BDMA3T`~!>HnHowx)R9WxPi(f2hp0+@^Mj3W{&;FY z0|+e$Ly%;I=+R&C4^{ma-=S6ojv1kO*bVhXu^{F|2yY%KC&EFGzoHb=r_t$Gt z(OJWoYNb9S>@b1D4_rX`3rvsS;OJLj%c`jj^w}~I)-a%aM&O8u7^_gB{!JTU9iiX1sDy+=Kf(~XYTJG*I-BU2@8b> zF4>>#xi1}ZKq(nP0W=GbtPyfe^dD5`**eKH;iUX1;>Qz@gYa%PD=^xZg3O*M^B`{F zfu?_W$dO12Vz`NgTHui4j{nj4I4>H>lzAvIDMWq>4XI!z_~Y?$p5MyUnJz^go?H-- zLhUEMm%3X0$v6B}qHv zVi=dKugpV@5s3b?F*Rv&7E`@i(0;>a;U1w+!PX|0D#8e7A3ExvH%2LP3;VoccDK(A z$$zw%Z7o)?;=utmKH!ozD7G}56(~I#D9lmFO~oDZPmpE zyeiW1g-fP5R%7b@{l2xW=D7dlVmKaoACr1*3j&2gM3%X2{$bxl$^gT%rVLTyG;z^R z2>8SaoqyzIO+qKOrLppz!#VS*&;Sl%h=8E+RQgZ%PBZ^}?=FU=oC1hUbUjPf{}RBg#R-ZdKpZEW_y2@}qu?3%9+^?$7I3C4@oPt}g5%C<%`D z%;ve-BdxcQKio$8?cuIj*>BxVd(sGE6V3gP1|)a)uLP{1FzUhh%ab9p~~=@M4ZbUp!FeJ?J$8VjD70Xx{e^QhO_Iwu=&X%nPYUY z_rc%o_HFP1DQQf&;Pw#(@J#>q{@$Gy@?Q=YFE+rKW4NfzbsK%ds2`!`mUtb56Wd`! zD^V|MKCyBQM+A(*I4d2-{I{1W%0ZG85k6agvi_G*;R~p@^fTa#7MkXp)@u_&!3@NU zLDmq~eDRI!j6xKFAq+t&1<#k-eM$3h%p(fqkeOwmk)@8pTY2drpQrdDUI|5pLLz)J z(l2X%X6AmV1tgBKA8L_`qwI%z93!Jx2vw0GjmsF^HGX+Boym^8INZY}hhIGeG`9I* zR;+@7Qw=Mmyq||9;J@OyBGDGe3n}UA5)kolrC!F#J0;Cy0=oHd38>mCQ(s@+gN z5U!iJuWBBMlT7EKz52MTh$%)%P@;x74-n4N*ECNejYz@kPaV87$02vxNnYDL5}{Kv zdgwHiJ~kl%t>ksh^+GF-2nTgFrI1DwF(fzfwMqO8#~v&vkgu;a{mjQ_+xx5?K@1mj zi+p{cv^P{{$1-iy?R>aA1saruj+ct~jm-n&O1PMTEjwUYGPo_#o0fP4lvDYEPYqTZ zaf#o2@FNEBo!XC-In)pu()2COhZP5ENFii01Z-+Re=9FdZ^Lf=tt-1-e!11}-#sKQ zPIfx-l48mfd=(K4k+(LV(I^_obC|1;RH4zzKiE>vPd3xMCTopJO#)(=S>g^Q&I0weW=T`Xhfq|G&H==#`g6?2fX*Od zuqbRH_4ej{Hf&fH31UgN?`Zzl{9|?6$&7es^S|Z4D$<-ugSE81cQrqbWS=c*@-M8d z?Nj|Z&1!iKzp(MVt@WaU&+5u3d3i$50dAno-Bv~wG)c;Wfq zESa!Q?Z1%LrZCA}JJS5+A-Hy+~NJWUx3~ z)&Sra`X6cjuYBL19(K2E8F+lNdeMN7Hvi|upDS`gu~$CUENT%{4_6_U8jIrN%_51* zRxHPYx8xt}SX(X~47>=)v_Zw8%aNRE2=m48UOea@k@>{b&~hU7=&8XcoBv~CXtkoV zpK5;16|uQ#^c8+Nu+D0~my>GSWl~I8EVuZ}r<-4Oi+y-UoZ9KOOI6g~DR_4!Ved1| zl^Ne5=SaaBDRKrr+x*`%zETrIlJo+?vB@_#Uso8d_NJ&$VG3fzWjq2}OzkVwFzA32Vf0Gzh01ChWwb0@ zsT7}$3wvH)S~8H6n}5C%zYlWG_?ir_j?d}j~FcR;6WrXwJGpPb&1UTV)LLH35#lU z?GJB5O!G6?76Ca95W(g5-P_O(4hR+cz~urM{-Ni5fAbNOn0A>BhMh;P8C#vBC_=(z zQDx3q$43KW4hb)V&+3QS4>Z%l=E;rR>h0jR_AcgCUUE04EclX;G88D#VoHXAR_Y&Y zo?5c|5fV%i5D_{;oZKdYClrbwYMx%QjWO4w1NREjF(F^>g|YMa;iU&MI&mFlzz|}p zwh5oobK#FH-$n&-bpn@gg@tD_utREr{b+Mz$;s3Jd(bGGtwH(F5J~K4^*}YL-Z5h_(!ud3d>1-!?wo*(sGnZC zk#R16C-F34M@kE+5KfeGf2Mi!k}Fea#SS`-3KKF5k)d&5yq{gV0V)jG^<)*%M!JopKF$M^6FNiyl6DFtB1QeRhy`^0P}MxXcMC9qn~e1-A0suUy>+rcbh8v#5VHR zMmbZ0$&m24{U?R^`3udGK|0Y5V4Nj|V^Bg}vv0gT$eZh6UIv5E1iPQOousGTlb zd)h@;q;imdPAFD!;aezw<#02^?}Ei-Q)X$#jh$aTXololTWyKrrf_;D%&#>cI%C8X z!7Z0$3Q&M91s6oXjg*#y{Oe6q*hwP+FgkL_3dq>XeFQoYMz)Sb?EFUa>q~pA5_!jJ z9stQ;amomT3?jAq&F0Zl3dxHm;Fxg=kbB0_zty}~;=8{+bwCQ7=y6vbkN0gQfnc-S zbI3)6RK$i>2@*i=^zSq)K6yXQW5=`(G zZH>l&8_u}<&yD}2TErScuy7G|1UMi_iNgN#k@SCBE#jO8W-lUzD>%cLPjF9&OgVp6 zE#h*m)E5!;?q=}kDCCSpHs;R{8R5d7<0ei;a+x;jYsr-y++)B^ zbO{BeP#b^KELm`)hNiaTZO{?U?uy$?Z*#9Rs_9SwuHX_&Zc56alO@7^E2QIE`SiCy zGSl(DiBe>j3z>KXhaMDHz>q}xhA8mF{9UuWH)P%n?;6!{IYMvT;s_HGcC`Qqz;pTg z>VVJd&63M7q>sTUgkA@|L{rklvQ$F(50zUyugi;BMm-;s^XiT;#fi=LEkcZGbj5X7#JxuPXec0@9O-^2x*(8?YB|(7}MALHYVNS zhMa)1;8+TTcf2_K*XBc~7PsEza3?1?k9x+6hGR)JN)8rj3(>zdo%~ddosyy|7kF@f za~U1Ngo$vmsdB>21d-CuXdM{lO(RTFOP8Zm8+8feZ)zQ<@H}~TJ}weh$)zbN&fzm# zRp_IrzbOl#oC`{Fgrck~Tz%+};svDXFb4wo)GB#a>&^q7FBY(b(AUpdkQAb6f9onB zHTNOe`X{Ul`G=WfV#nG|4$<3Zw?5FAC`q<&T=f_s3tkK7FMh5V&t*lHNPmmcU4YzG zN%rZw*43m1U#3(S^8?!9pYz;bT(Ag;E%P7DH@IQc~sMLA<78+1nu}QVC&SU%`vsLZcTTy!`Uj!+icnT?fE(7+A*p( zQgFy#z>Jyn!d8iD7v6KR$jB?EK3fY@#+XY&tsds^1X{hQRT9z;Y@nKiwbES|GZoe; zb5Pvl;J&z3+Jr?bQ~I|SVL5tLM{d&z!39YHHwdUOcuA|w*WK?R)>mPlgMlfhG)E-F zqLW#Wy|h*4o-J-?_G+TWGF$4+rfgC2GNIw6$mH-Lx2Y6MnwKHmf5RY z4_`2WN^sg$&!s2bQff-OE-X!Q!aQ1eP3!goyU4@j7ef=YL`wN$Xp&=0DOiRdzM*w)!K+dPWPULj`2pabZ)`p4a1HHnqeH&ytUMDWTqib4NF@tA_ux&fb8}`}izLjtoJ&yl z*cuoCbS&r`sg$?)yWh^)OUH{*_N(ygfU=lgGIl^pT9r*dq@0!SNj z3(^R&F7lB5x3=!P%S9S(X*Rj(f}4;)OWxM{FWlO=+0Nhb+gta^KWJ{mfQ$2v@*~Kq z{rJw-eaBxduXlV`>#J+W=o*DS?HP{*;u7*wMmb0TSm)iX14^7wkjV&pAsn|cMXbns zP5(riAs6gvIA2P=QqRfJ9yUM92=Lbva0t*zgGd$_mqnDNocCBS3s ztT^}i?6{)brc5G>DCbH6r#Pg#y(8Y=dgw9_!x6}zMlVBMODJJSu6vYzV7adI(R8S0 zph>;WD81tV6+|CwxkUx4V!=d@S~;hBwt7o$I9g6+2OEqGQ6fYTmaq)m54ARG%R9He zN-<+f{#KV0p|D8yPuNe~qvC$JwK}&IIz?kpX-WB%Or}OlVm^W%F228?i*{ZYHx|{} z%S+gd#BFM81K_?=tw%?`qdtn-u&X)st|lMiLh1-h0I&|29PRP3Rv9_SSF++w-Q{9R zb^6yR6I)!0i}lD`p=K2U8?dqT4@6~Efv`E=_m z+U=q4Uft{ZpJ{zLu}ku7yZ&cep!(Z8U2YCWwbV7C`_bCJSS&?od^NcZ}@J;!!vSn7M-;6FU}E6BXi zLj|1M{Bmxt-W diff --git a/srml/consensus/src/lib.rs b/srml/consensus/src/lib.rs index 32d2a7b141..3da15255ae 100644 --- a/srml/consensus/src/lib.rs +++ b/srml/consensus/src/lib.rs @@ -34,7 +34,7 @@ use inherents::{ }; #[cfg(any(feature = "std", test))] -use substrate_primitives::Ed25519AuthorityId; +use substrate_primitives::ed25519::Public as AuthorityId; mod mock; mod tests; @@ -135,7 +135,7 @@ impl RawLog { // Implementation for tests outside of this crate. #[cfg(any(feature = "std", test))] -impl From> for primitives::testing::DigestItem where N: Into { +impl From> for primitives::testing::DigestItem where N: Into { fn from(log: RawLog) -> primitives::testing::DigestItem { match log { RawLog::AuthoritiesChange(authorities) => diff --git a/srml/contract/src/lib.rs b/srml/contract/src/lib.rs index 8de372ffe8..3f6cbde88f 100644 --- a/srml/contract/src/lib.rs +++ b/srml/contract/src/lib.rs @@ -67,6 +67,7 @@ use crate::account_db::AccountDb; #[cfg(feature = "std")] use serde_derive::{Serialize, Deserialize}; +use substrate_primitives::crypto::UncheckedFrom; use rstd::prelude::*; use rstd::marker::PhantomData; use parity_codec::{Codec, Encode, Decode}; @@ -120,7 +121,7 @@ pub trait Trait: fees::Trait + balances::Trait + timestamp::Trait { pub struct SimpleAddressDeterminator(PhantomData); impl ContractAddressFor, T::AccountId> for SimpleAddressDeterminator where - T::AccountId: From + AsRef<[u8]> + T::AccountId: UncheckedFrom + AsRef<[u8]> { fn contract_address_for(code_hash: &CodeHash, data: &[u8], origin: &T::AccountId) -> T::AccountId { let data_hash = T::Hashing::hash(data); @@ -130,7 +131,7 @@ where buf.extend_from_slice(data_hash.as_ref()); buf.extend_from_slice(origin.as_ref()); - T::Hashing::hash(&buf[..]).into() + UncheckedFrom::unchecked_from(T::Hashing::hash(&buf[..])) } } diff --git a/srml/contract/src/wasm/mod.rs b/srml/contract/src/wasm/mod.rs index c617725c51..04428280d0 100644 --- a/srml/contract/src/wasm/mod.rs +++ b/srml/contract/src/wasm/mod.rs @@ -580,7 +580,7 @@ mod tests { /// calls `ext_caller`, loads the address from the scratch buffer and /// compares it with the constant 42. - const CODE_CALLER: &'static str = r#" + const CODE_CALLER: &str = r#" (module (import "env" "ext_caller" (func $ext_caller)) (import "env" "ext_scratch_size" (func $ext_scratch_size (result i32))) @@ -645,7 +645,7 @@ mod tests { /// calls `ext_address`, loads the address from the scratch buffer and /// compares it with the constant 69. - const CODE_ADDRESS: &'static str = r#" + const CODE_ADDRESS: &str = r#" (module (import "env" "ext_address" (func $ext_address)) (import "env" "ext_scratch_size" (func $ext_scratch_size (result i32))) diff --git a/srml/grandpa/Cargo.toml b/srml/grandpa/Cargo.toml index ac4ea857de..de260b622e 100644 --- a/srml/grandpa/Cargo.toml +++ b/srml/grandpa/Cargo.toml @@ -16,6 +16,7 @@ primitives = { package = "sr-primitives", path = "../../core/sr-primitives", def srml-support = { path = "../support", default-features = false } system = { package = "srml-system", path = "../system", default-features = false } session = { package = "srml-session", path = "../session", default-features = false } +consensus = { package = "srml-consensus", path = "../consensus", default-features = false } finality-tracker = { package = "srml-finality-tracker", path = "../finality-tracker", default-features = false } [dev-dependencies] @@ -33,6 +34,7 @@ std = [ "srml-support/std", "primitives/std", "system/std", + "consensus/std", "session/std", "finality-tracker/std", ] diff --git a/srml/grandpa/src/lib.rs b/srml/grandpa/src/lib.rs index 37d2da66c0..0715ce034a 100644 --- a/srml/grandpa/src/lib.rs +++ b/srml/grandpa/src/lib.rs @@ -40,10 +40,11 @@ use srml_support::{Parameter, decl_event, decl_storage, decl_module}; use srml_support::dispatch::Result; use srml_support::storage::StorageValue; use srml_support::storage::unhashed::StorageVec; -use primitives::traits::{CurrentHeight, Convert}; -use substrate_primitives::Ed25519AuthorityId; +use primitives::traits::CurrentHeight; +use substrate_primitives::ed25519; use system::ensure_signed; use primitives::traits::MaybeSerializeDebug; +use ed25519::Public as AuthorityId; mod mock; mod tests; @@ -100,7 +101,7 @@ impl RawLog { } impl GrandpaChangeSignal for RawLog - where N: Clone, SessionKey: Clone + Into, + where N: Clone, SessionKey: Clone + Into, { fn as_signal(&self) -> Option> { RawLog::as_signal(self).map(|(delay, next_authorities)| ScheduledChange { @@ -309,7 +310,7 @@ impl Module { } } -impl Module where Ed25519AuthorityId: core::convert::From<::SessionKey> { +impl Module where AuthorityId: core::convert::From<::SessionKey> { /// See if the digest contains any standard scheduled change. pub fn scrape_digest_change(log: &Log) -> Option> @@ -340,19 +341,14 @@ impl Default for SyncedAuthorities { } impl session::OnSessionChange for SyncedAuthorities where - T: Trait, - T: session::Trait, - ::ConvertAccountIdToSessionKey: Convert< - ::AccountId, - ::SessionKey, - >, + T: Trait + consensus::Trait::SessionKey>, + ::Log: From::SessionKey>> { fn on_session_change(_: X, _: bool) { use primitives::traits::Zero; - let next_authorities = >::validators() + let next_authorities = >::authorities() .into_iter() - .map(T::ConvertAccountIdToSessionKey::convert) .map(|key| (key, 1)) // evenly-weighted. .collect::::SessionKey, u64)>>(); @@ -365,22 +361,17 @@ impl session::OnSessionChange for SyncedAuthorities where } impl finality_tracker::OnFinalizationStalled for SyncedAuthorities where - T: Trait, - T: session::Trait, + T: Trait + consensus::Trait::SessionKey>, + ::Log: From::SessionKey>>, T: finality_tracker::Trait, - ::ConvertAccountIdToSessionKey: Convert< - ::AccountId, - ::SessionKey, - >, { fn on_stalled(further_wait: T::BlockNumber) { // when we record old authority sets, we can use `finality_tracker::median` // to figure out _who_ failed. until then, we can't meaningfully guard // against `next == last` the way that normal session changes do. - let next_authorities = >::validators() + let next_authorities = >::authorities() .into_iter() - .map(T::ConvertAccountIdToSessionKey::convert) .map(|key| (key, 1)) // evenly-weighted. .collect::::SessionKey, u64)>>(); diff --git a/srml/grandpa/src/tests.rs b/srml/grandpa/src/tests.rs index 433602342f..37902cfb17 100644 --- a/srml/grandpa/src/tests.rs +++ b/srml/grandpa/src/tests.rs @@ -193,5 +193,6 @@ fn dispatch_forced_change() { Grandpa::on_finalise(11); header = System::finalise(); } + let _ = header; }); } diff --git a/srml/session/src/lib.rs b/srml/session/src/lib.rs index 8530e5bed6..47fb0fca41 100644 --- a/srml/session/src/lib.rs +++ b/srml/session/src/lib.rs @@ -51,7 +51,7 @@ macro_rules! impl_session_change { for_each_tuple!(impl_session_change); pub trait Trait: timestamp::Trait + consensus::Trait { - type ConvertAccountIdToSessionKey: Convert; + type ConvertAccountIdToSessionKey: Convert>; type OnSessionChange: OnSessionChange; type Event: From> + Into<::Event>; } @@ -184,16 +184,17 @@ impl Module { >::put(block_number); } - T::OnSessionChange::on_session_change(time_elapsed, apply_rewards); - // Update any changes in session keys. for (i, v) in Self::validators().into_iter().enumerate() { >::set_authority( i as u32, &>::get(&v) - .unwrap_or_else(|| T::ConvertAccountIdToSessionKey::convert(v)) + .or_else(|| T::ConvertAccountIdToSessionKey::convert(v)) + .unwrap_or_default() ); }; + + T::OnSessionChange::on_session_change(time_elapsed, apply_rewards); } /// Get the time that should have elapsed over a session if everything was working perfectly. diff --git a/subkey/Cargo.toml b/subkey/Cargo.toml index c5006c8916..d6f8cdd88c 100644 --- a/subkey/Cargo.toml +++ b/subkey/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "subkey" -version = "0.1.0" +version = "0.2.0" authors = ["Parity Technologies "] edition = "2018" @@ -12,6 +12,7 @@ tiny-bip39 = "0.6.0" rustc-hex = "2.0" substrate-bip39 = { git = "https://github.com/paritytech/substrate-bip39" } schnorrkel = { git = "https://github.com/w3f/schnorrkel" } +hex = "0.3" [features] bench = [] diff --git a/subkey/src/cli.yml b/subkey/src/cli.yml index a918288616..cc131703eb 100644 --- a/subkey/src/cli.yml +++ b/subkey/src/cli.yml @@ -1,12 +1,7 @@ name: subkey author: "Parity Team " -about: A substrate key utility +about: Utility for generating and restoring with Substrate keys args: - - ed25519-legacy: - short: o - long: legacy - help: Use legacy, outdated Ed25519 cryptography - takes_value: false - ed25519: short: e long: ed25519 @@ -26,15 +21,41 @@ args: subcommands: - generate: about: Generate a random account - - restore: - about: Gets a public key and a SS58 address from the provided seed phrase + - inspect: + about: Gets a public key and a SS58 address from the provided Secret URI + args: + - uri: + index: 1 + required: true + help: A Key URI to be inspected. May be a secret seed, secret URI (with derivation paths and password), SS58 or public URI. + - sign: + about: Sign a message, provided on STDIN, with a given (secret) key + args: + - suri: + index: 1 + required: true + help: The secret key URI. + - hex: + short: h + long: hex + help: The message on STDIN is hex-encoded data + takes_value: false + - verify: + about: Verify a signature for a message, provided on STDIN, with a given (public or secret) key args: - - seed: + - sig: index: 1 required: true - help: 32 bytes long seed phrase used to restore the public key. If the provided seed is shorter than that, then - it will be right-padded with 0x20 bytes (ASCII space). If the provided seed is longer than - 32 bytes then seed will be truncated. + help: Signature, hex-encoded. + - uri: + index: 2 + required: true + help: The public or secret key URI. + - hex: + short: h + long: hex + help: The message on STDIN is hex-encoded data + takes_value: false - vanity: about: Generate a seed that provides a vanity address args: @@ -47,9 +68,3 @@ subcommands: help: Number of keys to generate takes_value: true default_value: "1" - - query: - about: Query an account by its seed - args: - - seed: - index: 1 - help: The 0x prefixed seed diff --git a/subkey/src/main.rs b/subkey/src/main.rs index 7cc28d857c..5caf58d45b 100644 --- a/subkey/src/main.rs +++ b/subkey/src/main.rs @@ -21,30 +21,35 @@ extern crate test; extern crate substrate_bip39; extern crate rustc_hex; +use std::io::{stdin, Read}; use clap::load_yaml; use rand::{RngCore, rngs::OsRng}; -use substrate_bip39::{mini_secret_from_entropy}; +use substrate_bip39::mini_secret_from_entropy; use bip39::{Mnemonic, Language, MnemonicType}; -use substrate_primitives::{ed25519, sr25519, hexdisplay::HexDisplay}; +use substrate_primitives::{ed25519, sr25519, hexdisplay::HexDisplay, Pair, crypto::Ss58Codec}; use schnorrkel::keys::MiniSecretKey; -use rustc_hex::FromHex; mod vanity; trait Crypto { type Seed: AsRef<[u8]> + AsMut<[u8]> + Sized + Default; - type Pair; + type Pair: Pair; fn generate_phrase() -> String { Mnemonic::new(MnemonicType::Words12, Language::English).phrase().to_owned() } - fn generate_seed() -> Self::Seed; + fn generate_seed() -> Self::Seed { + let mut seed: Self::Seed = Default::default(); + OsRng::new().unwrap().fill_bytes(seed.as_mut()); + seed + } fn seed_from_phrase(phrase: &str, password: Option<&str>) -> Self::Seed; fn pair_from_seed(seed: &Self::Seed) -> Self::Pair; - fn pair_from_phrase(phrase: &str, password: Option<&str>) -> Self::Pair { + fn pair_from_suri(phrase: &str, password: Option<&str>) -> Self::Pair { Self::pair_from_seed(&Self::seed_from_phrase(phrase, password)) } fn ss58_from_pair(pair: &Self::Pair) -> String; fn public_from_pair(pair: &Self::Pair) -> Vec; + fn seed_from_pair(_pair: &Self::Pair) -> Option<&Self::Seed> { None } fn print_from_seed(seed: &Self::Seed) { let pair = Self::pair_from_seed(seed); println!("Seed 0x{} is account:\n Public key (hex): 0x{}\n Address (SS58): {}", @@ -63,43 +68,43 @@ trait Crypto { Self::ss58_from_pair(&pair) ); } + fn print_from_uri(uri: &str, password: Option<&str>) where ::Public: Sized + Ss58Codec + AsRef<[u8]> { + if let Ok(pair) = Self::Pair::from_string(uri, password) { + let seed_text = Self::seed_from_pair(&pair) + .map_or_else(Default::default, |s| format!("\n Seed: 0x{}", HexDisplay::from(&s.as_ref()))); + println!("Secret Key URI `{}` is account:{}\n Public key (hex): 0x{}\n Address (SS58): {}", + uri, + seed_text, + HexDisplay::from(&Self::public_from_pair(&pair)), + Self::ss58_from_pair(&pair) + ); + } + if let Ok(public) = ::Public::from_string(uri) { + println!("Public Key URI `{}` is account:\n Public key (hex): 0x{}\n Address (SS58): {}", + uri, + HexDisplay::from(&public.as_ref()), + public.to_ss58check() + ); + } + } } -struct OriginalEd25519; +struct Ed25519; -impl Crypto for OriginalEd25519 { +impl Crypto for Ed25519 { type Seed = [u8; 32]; type Pair = ed25519::Pair; - fn generate_seed() -> Self::Seed { - let mut seed = [0u8; 32]; - OsRng::new().unwrap().fill_bytes(&mut seed[..]); - seed - } - fn seed_from_phrase(phrase: &str, password: Option<&str>) -> Self::Seed { - if password.is_some() { - panic!("Ed25519 original doesn't support passwords") - } - - let mut raw_seed = phrase.as_bytes(); - - if raw_seed.len() > 32 { - raw_seed = &raw_seed[..32]; - println!("seed is too long and will be truncated to: {}", HexDisplay::from(&raw_seed)); - } - - // Copy the raw_seed into a buffer that already contains ' ' 0x20. - // This will effectively get us padding for seeds shorter than 32. - let mut seed = [' ' as u8; 32]; - let len = raw_seed.len().min(32); - seed[..len].copy_from_slice(&raw_seed[..len]); - seed + Sr25519::seed_from_phrase(phrase, password) } - - fn pair_from_seed(seed: &Self::Seed) -> Self::Pair { ed25519::Pair::from_seed(seed) } + fn pair_from_suri(suri: &str, password_override: Option<&str>) -> Self::Pair { + ed25519::Pair::from_legacy_string(suri, password_override) + } + fn pair_from_seed(seed: &Self::Seed) -> Self::Pair { ed25519::Pair::from_seed(seed.clone()) } fn ss58_from_pair(pair: &Self::Pair) -> String { pair.public().to_ss58check() } fn public_from_pair(pair: &Self::Pair) -> Vec { (&pair.public().0[..]).to_owned() } + fn seed_from_pair(pair: &Self::Pair) -> Option<&Self::Seed> { Some(pair.seed()) } } struct Sr25519; @@ -108,12 +113,6 @@ impl Crypto for Sr25519 { type Seed = [u8; 32]; type Pair = sr25519::Pair; - fn generate_seed() -> Self::Seed { - let mut seed = [0u8; 32]; - OsRng::new().unwrap().fill_bytes(&mut seed[..]); - seed - } - fn seed_from_phrase(phrase: &str, password: Option<&str>) -> Self::Seed { mini_secret_from_entropy( Mnemonic::from_phrase(phrase, Language::English) @@ -127,11 +126,8 @@ impl Crypto for Sr25519 { .to_bytes() } - fn pair_from_phrase(phrase: &str, password: Option<&str>) -> Self::Pair { - sr25519::Pair::from_phrase(phrase, password) - .unwrap_or_else(|| - panic!("Phrase is not a valid BIP-39 phrase: \n {}", phrase) - ) + fn pair_from_suri(suri: &str, password: Option<&str>) -> Self::Pair { + sr25519::Pair::from_string(suri, password).expect("Invalid phrase") } fn pair_from_seed(seed: &Self::Seed) -> Self::Pair { @@ -143,7 +139,10 @@ impl Crypto for Sr25519 { fn public_from_pair(pair: &Self::Pair) -> Vec { (&pair.public().0[..]).to_owned() } } -fn execute>(matches: clap::ArgMatches) { +fn execute>(matches: clap::ArgMatches) where + <::Pair as Pair>::Signature: AsRef<[u8]> + AsMut<[u8]> + Default, + <::Pair as Pair>::Public: Sized + AsRef<[u8]> + Ss58Codec + AsRef<<::Pair as Pair>::Public>, +{ let password = matches.value_of("password"); match matches.subcommand() { ("generate", Some(_matches)) => { @@ -156,38 +155,61 @@ fn execute>(matches: clap::ArgMatches) { let key = vanity::generate_key::(&desired).expect("Key generation failed"); C::print_from_seed(&key.seed); } - ("restore", Some(matches)) => { - let phrase = matches.value_of("seed") - .expect("seed parameter is required; thus it can't be None; qed"); - C::print_from_phrase(phrase, password); + ("inspect", Some(matches)) => { + // TODO: Accept public key with derivation path. + let uri = matches.value_of("uri") + .expect("URI parameter is required; thus it can't be None; qed"); + C::print_from_uri(uri, password); }, - ("query", Some(matches)) => { - let seed_data = matches.value_of("seed") - .expect("seed parameter is required; thus it can't be None; qed"); - let seed_data = if seed_data.starts_with("0x") { - &seed_data[2..] + ("sign", Some(matches)) => { + let suri = matches.value_of("suri") + .expect("secret URI parameter is required; thus it can't be None; qed"); + let pair = C::pair_from_suri(suri, password); + let mut message = vec![]; + stdin().lock().read_to_end(&mut message).expect("Error reading from stdin"); + if matches.is_present("hex") { + message = hex::decode(&message).expect("Invalid hex in message"); + } + let sig = pair.sign(&message); + println!("{}", hex::encode(&sig)); + } + ("verify", Some(matches)) => { + let sig_data = matches.value_of("sig") + .expect("signature parameter is required; thus it can't be None; qed"); + let mut sig = <::Pair as Pair>::Signature::default(); + let sig_data = hex::decode(sig_data).expect("signature is invalid hex"); + if sig_data.len() != sig.as_ref().len() { + panic!("signature is an invalid length. {} bytes is not the expected value of {} bytes", sig_data.len(), sig.as_ref().len()); + } + sig.as_mut().copy_from_slice(&sig_data); + let uri = matches.value_of("uri") + .expect("public uri parameter is required; thus it can't be None; qed"); + let pubkey = <::Pair as Pair>::Public::from_string(uri).ok().or_else(|| + ::Pair::from_string(uri, password).ok().map(|p| p.public()) + ).expect("Invalid URI; expecting either a secret URI or a public URI."); + let mut message = vec![]; + stdin().lock().read_to_end(&mut message).expect("Error reading from stdin"); + if matches.is_present("hex") { + message = hex::decode(&message).expect("Invalid hex in message"); + } + if <::Pair as Pair>::verify(&sig, &message, &pubkey) { + println!("Signature verifies correctly.") } else { - seed_data - }; - let seed_data: Vec = seed_data.from_hex().expect("seed is not valid hex"); - let correct_size = ::std::mem::size_of::(); - if seed_data.len() != correct_size { - panic!("Seed is incorrect size. It must be {} bytes for this cryptography", correct_size); + println!("Signature invalid.") } - let mut seed = C::Seed::default(); - seed.as_mut().copy_from_slice(&seed_data); - C::print_from_seed(&seed); - }, + } _ => print_usage(&matches), } } fn main() { let yaml = load_yaml!("cli.yml"); - let matches = clap::App::from_yaml(yaml).get_matches(); + let matches = clap::App::from_yaml(yaml) + .version(env!("CARGO_PKG_VERSION")) + .get_matches(); - if matches.is_present("ed25519original") { - execute::(matches) + if matches.is_present("ed25519") { + execute::(matches) } else { execute::(matches) } diff --git a/subkey/src/vanity.rs b/subkey/src/vanity.rs index 07486cff4b..785eb95aa5 100644 --- a/subkey/src/vanity.rs +++ b/subkey/src/vanity.rs @@ -104,13 +104,14 @@ pub(super) fn generate_key>(desired: &str) -> Result("j").unwrap().pair.public().to_ss58check().contains("j")); + assert!(generate_key::("j").unwrap().pair.public().to_ss58check().contains("j")); } #[test] -- GitLab From 375994b0d520204b0cceccd6d7f005aaa77fe2ea Mon Sep 17 00:00:00 2001 From: Kian Peymani Date: Thu, 14 Mar 2019 12:23:55 +0100 Subject: [PATCH 021/120] =?UTF-8?q?Phragm=C3=A9n=20Validator=20Election=20?= =?UTF-8?q?(#1915)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * adds first draft phragmen with tuned tests and sr-primitives * fix a few docs and code styles * clean, organize and finish remaining test cases * more and more tests * update edge cases behavior and relavent tests * fix global test issues * updated wasm files * all tests fixed * cleanup * fix some global issues * fix global tests * bump versions * fix typo * first step toward extracting phragmen * Fix most of the grumbles. * fix rest of the grumbles * spaces to tabs * update wasm * Removed nightly feature. * More tests * Fix broken tests. * Bump and update wasm. --- core/sr-primitives/src/lib.rs | 82 +- .../substrate_test_runtime.compact.wasm | Bin 56845 -> 56878 bytes node/cli/src/chain_spec.rs | 6 +- node/executor/src/lib.rs | 24 +- node/runtime/src/lib.rs | 3 +- .../release/node_runtime.compact.wasm | Bin 879134 -> 875322 bytes srml/staking/Staking.md | 62 -- srml/staking/src/lib.rs | 129 ++- srml/staking/src/mock.rs | 78 +- srml/staking/src/phragmen.rs | 223 +++++ srml/staking/src/tests.rs | 923 +++++++++++++----- 11 files changed, 1147 insertions(+), 383 deletions(-) delete mode 100644 srml/staking/Staking.md create mode 100644 srml/staking/src/phragmen.rs diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index 953568e57b..d0e9dbc8c0 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -85,7 +85,7 @@ macro_rules! create_runtime_str { #[cfg(feature = "std")] pub use serde::{Serialize, de::DeserializeOwned}; #[cfg(feature = "std")] -use serde_derive::{Serialize, Deserialize}; +pub use serde_derive::{Serialize, Deserialize}; /// Complex storage builder stuff. #[cfg(feature = "std")] @@ -251,6 +251,86 @@ impl From> for Perbill { } } +/// Perquintill is parts-per-quintillion. It stores a value between 0 and 1 in fixed point and +/// provides a means to multiply some other value by that. +#[cfg_attr(feature = "std", derive(Serialize, Deserialize, Debug))] +#[derive(Encode, Decode, Default, Copy, Clone, PartialEq, Eq)] +pub struct Perquintill(u64); + +const QUINTILLION: u64 = 1_000_000_000_000_000_000; + +impl Perquintill { + /// Nothing. + pub fn zero() -> Self { Self(0) } + + /// Everything. + pub fn one() -> Self { Self(QUINTILLION) } + + /// Construct new instance where `x` is in quintillionths. Value equivalent to `x / 1,000,000,000,000,000,000`. + pub fn from_quintillionths(x: u64) -> Self { Self(x.min(QUINTILLION)) } + + /// Construct new instance where `x` is in billionths. Value equivalent to `x / 1,000,000,000`. + pub fn from_billionths(x: u64) -> Self { Self(x.min(1_000_000_000) * 1_000_000_000 ) } + + /// Construct new instance where `x` is in millionths. Value equivalent to `x / 1,000,000`. + pub fn from_millionths(x: u64) -> Self { Self(x.min(1_000_000) * 1000_000_000_000) } + + /// Construct new instance where `x` is denominator and the nominator is 1. + pub fn from_xth(x: u64) -> Self { Self(QUINTILLION / x.min(QUINTILLION)) } + + #[cfg(feature = "std")] + /// Construct new instance whose value is equal to `x` (between 0 and 1). + pub fn from_fraction(x: f64) -> Self { Self((x.max(0.0).min(1.0) * QUINTILLION as f64) as u64) } +} + +impl ::rstd::ops::Deref for Perquintill { + type Target = u64; + + fn deref(&self) -> &u64 { + &self.0 + } +} + +impl ::rstd::ops::Mul for Perquintill +where + N: traits::As +{ + type Output = N; + fn mul(self, b: N) -> Self::Output { + >::sa(b.as_().saturating_mul(self.0) / QUINTILLION) + } +} + +#[cfg(feature = "std")] +impl From for Perquintill { + fn from(x: f64) -> Perquintill { + Perquintill::from_fraction(x) + } +} + +#[cfg(feature = "std")] +impl From for Perquintill { + fn from(x: f32) -> Perquintill { + Perquintill::from_fraction(x as f64) + } +} + +impl codec::CompactAs for Perquintill { + type As = u64; + fn encode_as(&self) -> &u64 { + &self.0 + } + fn decode_from(x: u64) -> Perquintill { + Perquintill(x) + } +} + +impl From> for Perquintill { + fn from(x: codec::Compact) -> Perquintill { + x.0 + } +} + /// Signature verify that can work with any known signature types.. #[derive(Eq, PartialEq, Clone, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug))] diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index ff8a7a70c368b615d3f6f7a602c91497024ce30b..e844c0124e12a5d874d3edf7f94c0c946c56a7fb 100644 GIT binary patch delta 8013 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 iN+2GLz*{0AjUBx_zdWkO GenesisConfig { bonding_duration: 60 * MINUTES, offline_slash_grace: 4, minimum_validator_count: 4, - stakers: initial_authorities.iter().map(|x| (x.0.clone(), x.1.clone(), STASH)).collect(), + stakers: initial_authorities.iter().map(|x| (x.0.clone(), x.1.clone(), STASH, StakerStatus::Validator)).collect(), invulnerables: initial_authorities.iter().map(|x| x.1.clone()).collect(), }), democracy: Some(DemocracyConfig { @@ -267,7 +267,7 @@ pub fn testnet_genesis( current_offline_slash: 0, current_session_reward: 0, offline_slash_grace: 0, - stakers: initial_authorities.iter().map(|x| (x.0.clone(), x.1.clone(), STASH)).collect(), + stakers: initial_authorities.iter().map(|x| (x.0.clone(), x.1.clone(), STASH, StakerStatus::Validator)).collect(), invulnerables: initial_authorities.iter().map(|x| x.1.clone()).collect(), }), democracy: Some(DemocracyConfig { diff --git a/node/executor/src/lib.rs b/node/executor/src/lib.rs index 8e1a2162da..84b2de336e 100644 --- a/node/executor/src/lib.rs +++ b/node/executor/src/lib.rs @@ -39,7 +39,7 @@ mod tests { use node_primitives::{Hash, BlockNumber, AccountId}; use runtime_primitives::traits::{Header as HeaderT, Hash as HashT}; use runtime_primitives::{generic, generic::Era, ApplyOutcome, ApplyError, ApplyResult, Perbill}; - use {balances, indices, session, system, consensus, timestamp, treasury, contract}; + use {balances, indices, session, system, staking, consensus, timestamp, treasury, contract}; use contract::ContractAddressFor; use system::{EventRecord, Phase}; use node_runtime::{Header, Block, UncheckedExtrinsic, CheckedExtrinsic, Call, Runtime, Balances, @@ -296,7 +296,11 @@ mod tests { staking: Some(StakingConfig { sessions_per_era: 2, current_era: 0, - stakers: vec![(dave(), alice(), 111), (eve(), bob(), 101), (ferdie(), charlie(), 100)], + stakers: vec![ + (dave(), alice(), 111, staking::StakerStatus::Validator), + (eve(), bob(), 100, staking::StakerStatus::Validator), + (ferdie(), charlie(), 100, staking::StakerStatus::Validator) + ], validator_count: 3, minimum_validator_count: 0, bonding_duration: 0, @@ -441,7 +445,13 @@ mod tests { ] ); - let digest = generic::Digest::::default(); + // let mut digest = generic::Digest::::default(); + // digest.push(Log::from(::grandpa::RawLog::AuthoritiesChangeSignal(0, vec![ + // (Keyring::Charlie.to_raw_public().into(), 1), + // (Keyring::Bob.to_raw_public().into(), 1), + // (Keyring::Alice.to_raw_public().into(), 1), + // ]))); + let digest = generic::Digest::::default(); // TODO test this assert_eq!(Header::decode(&mut &block2.0[..]).unwrap().digest, digest); (block1, block2) @@ -574,6 +584,14 @@ mod tests { phase: Phase::Finalization, event: Event::session(session::RawEvent::NewSession(1)) }, + // EventRecord { // TODO: this might be wrong. + // phase: Phase::Finalization, + // event: Event::grandpa(::grandpa::RawEvent::NewAuthorities(vec![ + // (Keyring::Charlie.to_raw_public().into(), 1), + // (Keyring::Bob.to_raw_public().into(), 1), + // (Keyring::Alice.to_raw_public().into(), 1), + // ])), + // }, EventRecord { phase: Phase::Finalization, event: Event::treasury(treasury::RawEvent::Spending(0)) diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index eab07326a0..55293d3e46 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -54,6 +54,7 @@ pub use timestamp::Call as TimestampCall; pub use balances::Call as BalancesCall; pub use runtime_primitives::{Permill, Perbill}; pub use support::StorageValue; +pub use staking::StakerStatus; /// Runtime version. pub const VERSION: RuntimeVersion = RuntimeVersion { @@ -61,7 +62,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 35, - impl_version: 35, + impl_version: 36, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 29139d149965fbe608d20e0278d20b79e625a03f..f18a1fd01dd5bc82ffa1bdbc2403197d53de8bdd 100644 GIT binary patch delta 251599 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 delta 260711 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%0ABQ%;wpQ$ZI?qBZJpvY)#Q%bomj?mRWK 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 { Idle, Validator, Nominator(Vec), } + /// A destination account for payment. #[derive(PartialEq, Eq, Copy, Clone, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug))] @@ -159,7 +166,7 @@ pub struct Exposure { pub others: Vec>, } -type BalanceOf = <::Currency as ArithmeticType>::Type; +type BalanceOf = <::Currency as ArithmeticType>::Type; pub trait Trait: system::Trait + session::Trait { /// The staking balance. @@ -230,7 +237,7 @@ decl_storage! { // // Every era change, this will be appended with the trie root of the contents of `Stakers`, and the oldest // entry removed down to a specific number of entries (probably around 90 for a 3 month history). -// pub HistoricalStakers get(historical_stakers): map T::BlockNumber => Option; + // pub HistoricalStakers get(historical_stakers): map T::BlockNumber => Option; /// The current era index. pub CurrentEra get(current_era) config(): T::BlockNumber; @@ -253,7 +260,7 @@ decl_storage! { /// /// This is used to derive rewards and punishments. pub SlotStake get(slot_stake) build(|config: &GenesisConfig| { - config.stakers.iter().map(|&(_, _, value)| value).min().unwrap_or_default() + config.stakers.iter().map(|&(_, _, value, _)| value).min().unwrap_or_default() }): BalanceOf; /// The number of times a given validator has been reported offline. This gets decremented by one each era that passes. @@ -266,14 +273,31 @@ decl_storage! { pub RecentlyOffline get(recently_offline): Vec<(T::AccountId, T::BlockNumber, u32)>; } add_extra_genesis { - config(stakers): Vec<(T::AccountId, T::AccountId, BalanceOf)>; + config(stakers): Vec<(T::AccountId, T::AccountId, BalanceOf, StakerStatus)>; build(|storage: &mut primitives::StorageOverlay, _: &mut primitives::ChildrenStorageOverlay, config: &GenesisConfig| { with_storage(storage, || { - for &(ref stash, ref controller, balance) in &config.stakers { - assert!(T::Currency::free_balance(&stash) >= balance); - let _ = >::bond(T::Origin::from(Some(stash.clone()).into()), T::Lookup::unlookup(controller.clone()), balance, RewardDestination::Staked); - let _ = >::validate(T::Origin::from(Some(controller.clone()).into()), Default::default()); + for &(ref stash, ref controller, balance, ref status) in &config.stakers { + let _ = >::bond( + T::Origin::from(Some(stash.clone()).into()), + T::Lookup::unlookup(controller.clone()), + balance, + RewardDestination::Staked + ); + let _ = match status { + StakerStatus::Validator => { + >::validate( + T::Origin::from(Some(controller.clone()).into()), + Default::default() + ) + }, StakerStatus::Nominator(votes) => { + >::nominate( + T::Origin::from(Some(controller.clone()).into()), + votes.iter().map(|l| {T::Lookup::unlookup(l.clone())}).collect() + ) + }, _ => Ok(()) + }; } + >::select_validators(); }); }); @@ -512,14 +536,13 @@ impl Module { fn slash_validator(v: &T::AccountId, slash: BalanceOf) { // The exposure (backing stake) information of the validator to be slashed. let exposure = Self::stakers(v); - // The amount we are actually going to slash (can't be bigger than thair total exposure) + // The amount we are actually going to slash (can't be bigger than their total exposure) let slash = slash.min(exposure.total); // The amount we'll slash from the validator's stash directly. let own_slash = exposure.own.min(slash); let own_slash = own_slash - T::Currency::slash(v, own_slash).unwrap_or_default(); // The amount remaining that we can't slash from the validator, that must be taken from the nominators. let rest_slash = slash - own_slash; - if !rest_slash.is_zero() { // The total to be slashed from the nominators. let total = exposure.total - exposure.own; @@ -640,56 +663,27 @@ impl Module { /// @returns the new SlotStake value. fn select_validators() -> BalanceOf { // Map of (would-be) validator account to amount of stake backing it. + + let rounds = || >::get() as usize; + let validators = || >::enumerate(); + let nominators = || >::enumerate(); + let stash_of = |w| Self::stash_balance(&w); + let min_validator_count = Self::minimum_validator_count() as usize; + let elected_candidates = phragmen::elect::( + rounds, + validators, + nominators, + stash_of, + min_validator_count + ); - // First, we pull all validators, together with their stash balance into a Vec (cpu=O(V), mem=O(V)) - let mut candidates = >::enumerate() - .map(|(who, _)| { - let stash_balance = Self::stash_balance(&who); - (who, Exposure { total: stash_balance, own: stash_balance, others: vec![] }) - }) - .collect::>)>>(); - // Second, we sort by accountid (cpu=O(V.log(V))) - candidates.sort_unstable_by_key(|i| i.0.clone()); - // Third, iterate through nominators and add their balance to the first validator in their approval - // list. cpu=O(N.log(V)) - for (who, nominees) in >::enumerate() { - // For this trivial nominator mapping, we just assume that nominators always - // have themselves assigned to the first validator in their list. - if nominees.is_empty() { - // Not possible, but we protect against it anyway. - continue; - } - if let Ok(index) = candidates.binary_search_by(|i| i.0.cmp(&nominees[0])) { - let stash_balance = Self::stash_balance(&who); - candidates[index].1.total += stash_balance; - candidates[index].1.others.push(IndividualExposure { who, value: stash_balance }); - } - } - - // Get the new staker set by sorting by total backing stake and truncating. - // cpu=O(V.log(s)) average, O(V.s) worst. - let count = Self::validator_count() as usize; - let candidates = if candidates.len() <= count { - candidates.sort_unstable_by(|a, b| b.1.total.cmp(&a.1.total)); - candidates - } else { - candidates.into_iter().fold(vec![], |mut winners: Vec<(T::AccountId, Exposure>)>, entry| { - if let Err(insert_point) = winners.binary_search_by_key(&entry.1.total, |i| i.1.total) { - if winners.len() < count { - winners.insert(insert_point, entry) - } else { - if insert_point > 0 { - // Big enough to be considered: insert at beginning and swap up to relevant point. - winners[0] = entry; - for i in 0..(insert_point - 1) { - winners.swap(i, i + 1) - } - } - } - } - winners - }) - }; + // Figure out the minimum stake behind a slot. + let slot_stake = elected_candidates + .iter() + .min_by_key(|c| c.exposure.total) + .map(|c| c.exposure.total) + .unwrap_or_default(); + >::put(&slot_stake); // Clear Stakers and reduce their slash_count. for v in >::validators().iter() { @@ -700,19 +694,16 @@ impl Module { } } - // Figure out the minimum stake behind a slot. - let slot_stake = candidates.last().map(|i| i.1.total).unwrap_or_default(); - >::put(&slot_stake); - // Populate Stakers. - for (who, exposure) in &candidates { - >::insert(who, exposure); + for candidate in &elected_candidates { + >::insert(candidate.who.clone(), candidate.exposure.clone()); } + // Set the new validator set. >::set_validators( - &candidates.into_iter().map(|i| i.0).collect::>() + &elected_candidates.into_iter().map(|i| i.who).collect::>() ); - + slot_stake } diff --git a/srml/staking/src/mock.rs b/srml/staking/src/mock.rs index 2934022a07..6a76f350ef 100644 --- a/srml/staking/src/mock.rs +++ b/srml/staking/src/mock.rs @@ -23,7 +23,10 @@ use primitives::testing::{Digest, DigestItem, Header, UintAuthorityId, ConvertUi use substrate_primitives::{H256, Blake2Hasher}; use runtime_io; use srml_support::impl_outer_origin; -use crate::{GenesisConfig, Module, Trait}; +use crate::{GenesisConfig, Module, Trait, StakerStatus}; + +// The AccountId alias in this test module. +pub type AccountIdType = u64; impl_outer_origin!{ pub enum Origin for Test {} @@ -44,7 +47,7 @@ impl system::Trait for Test { type Hash = H256; type Hashing = ::primitives::traits::BlakeTwo256; type Digest = Digest; - type AccountId = u64; + type AccountId = AccountIdType; type Lookup = IdentityLookup; type Header = Header; type Event = (); @@ -78,17 +81,25 @@ pub struct ExtBuilder { current_era: u64, monied: bool, reward: u64, + validator_pool: bool, + nominate: bool, + validator_count: u32, + minimum_validator_count: u32, } impl Default for ExtBuilder { fn default() -> Self { Self { existential_deposit: 0, - session_length: 3, - sessions_per_era: 3, + session_length: 1, + sessions_per_era: 1, current_era: 0, monied: true, reward: 10, + validator_pool: false, + nominate: true, + validator_count: 2, + minimum_validator_count: 0, } } } @@ -118,6 +129,24 @@ impl ExtBuilder { self.reward = reward; self } + pub fn validator_pool(mut self, validator_pool: bool) -> Self { + // NOTE: this should only be set to true with monied = false. + self.validator_pool = validator_pool; + self + } + pub fn nominate(mut self, nominate: bool) -> Self { + // NOTE: this only sets a dummy nominator for tests that want 10 and 20 (default validators) to be chosen by default. + self.nominate = nominate; + self + } + pub fn validator_count(mut self, count: u32) -> Self { + self.validator_count = count; + self + } + pub fn minimum_validator_count(mut self, count: u32) -> Self { + self.minimum_validator_count = count; + self + } pub fn build(self) -> runtime_io::TestExternalities { let (mut t, mut c) = system::GenesisConfig::::default().build_storage().unwrap(); let balance_factor = if self.existential_deposit > 0 { @@ -131,7 +160,8 @@ impl ExtBuilder { }.assimilate_storage(&mut t, &mut c); let _ = session::GenesisConfig::{ session_length: self.session_length, - validators: vec![10, 20], + // NOTE: if config.nominate == false then 100 is also selected in the initial round. + validators: if self.validator_pool { vec![10, 20, 30, 40] } else { vec![10, 20] }, keys: vec![], }.assimilate_storage(&mut t, &mut c); let _ = balances::GenesisConfig::{ @@ -145,13 +175,23 @@ impl ExtBuilder { (10, balance_factor), (11, balance_factor * 1000), (20, balance_factor), - (21, balance_factor * 2000) + (21, balance_factor * 2000), + (100, 2000 * balance_factor), + (101, 2000 * balance_factor), ] } else { - vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 300 * balance_factor), (4, 400 * balance_factor)] + vec![ + (1, 10 * balance_factor), (2, 20 * balance_factor), + (3, 300 * balance_factor), (4, 400 * balance_factor) + ] } } else { - vec![(10, balance_factor), (11, balance_factor * 1000), (20, balance_factor), (21, balance_factor * 2000)] + vec![ + (10, balance_factor), (11, balance_factor * 10), + (20, balance_factor), (21, balance_factor * 20), + (30, balance_factor), (31, balance_factor * 30), + (40, balance_factor), (41, balance_factor * 40) + ] }, existential_deposit: self.existential_deposit, transfer_fee: 0, @@ -161,9 +201,25 @@ impl ExtBuilder { let _ = GenesisConfig::{ sessions_per_era: self.sessions_per_era, current_era: self.current_era, - stakers: vec![(11, 10, balance_factor * 1000), (21, 20, balance_factor * 2000)], - validator_count: 2, - minimum_validator_count: 0, + stakers: if self.validator_pool { + vec![ + (11, 10, balance_factor * 1000, StakerStatus::::Validator), + (21, 20, balance_factor * 2000, StakerStatus::::Validator), + (31, 30, balance_factor * 3000, if self.validator_pool { StakerStatus::::Validator } else { StakerStatus::::Idle }), + (41, 40, balance_factor * 4000, if self.validator_pool { StakerStatus::::Validator } else { StakerStatus::::Idle }), + // nominator + (101, 100, balance_factor * 500, if self.nominate { StakerStatus::::Nominator(vec![10, 20]) } else { StakerStatus::::Nominator(vec![]) }) + ] + } else { + vec![ + (11, 10, balance_factor * 1000, StakerStatus::::Validator), + (21, 20, balance_factor * 2000, StakerStatus::::Validator), + // nominator + (101, 100, balance_factor * 500, if self.nominate { StakerStatus::::Nominator(vec![10, 20]) } else { StakerStatus::::Nominator(vec![]) }) + ] + }, + validator_count: self.validator_count, + minimum_validator_count: self.minimum_validator_count, bonding_duration: self.sessions_per_era * self.session_length * 3, session_reward: Perbill::from_millionths((1000000 * self.reward / balance_factor) as u32), offline_slash: if self.monied { Perbill::from_percent(40) } else { Perbill::zero() }, diff --git a/srml/staking/src/phragmen.rs b/srml/staking/src/phragmen.rs new file mode 100644 index 0000000000..bdaed1fee9 --- /dev/null +++ b/srml/staking/src/phragmen.rs @@ -0,0 +1,223 @@ +// Copyright 2017-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 . + +//! Rust implementation of the Phragmén election algorithm. + +use rstd::{prelude::*}; +use primitives::Perquintill; +use primitives::traits::{Zero, As}; +use parity_codec::{HasCompact, Encode, Decode}; +use crate::{Exposure, BalanceOf, Trait, ValidatorPrefs, IndividualExposure}; + +// Wrapper around validation candidates some metadata. +#[derive(Clone, Encode, Decode)] +#[cfg_attr(feature = "std", derive(Debug))] +pub struct Candidate { + // The validator's account + pub who: AccountId, + // Exposure struct, holding info about the value that the validator has in stake. + pub exposure: Exposure, + // Accumulator of the stake of this candidate based on received votes. + approval_stake: Balance, + // Intermediary value used to sort candidates. + // See Phragmén reference implementation. + pub score: Perquintill, +} + +// Wrapper around the nomination info of a single nominator for a group of validators. +#[derive(Clone, Encode, Decode)] +#[cfg_attr(feature = "std", derive(Debug))] +pub struct Nominations { + // The nominator's account. + who: AccountId, + // List of validators proposed by this nominator. + nominees: Vec>, + // the stake amount proposed by the nominator as a part of the vote. + // Same as `nom.budget` in Phragmén reference. + stake: Balance, + // Incremented each time a nominee that this nominator voted for has been elected. + load: Perquintill, +} + +// Wrapper around a nominator vote and the load of that vote. +// Referred to as 'edge' in the Phragmén reference implementation. +#[derive(Clone, Encode, Decode)] +#[cfg_attr(feature = "std", derive(Debug))] +pub struct Vote { + // Account being voted for + who: AccountId, + // Load of this vote. + load: Perquintill, + // Final backing stake of this vote. + backing_stake: Balance +} + +/// Perform election based on Phragmén algorithm. +/// +/// Reference implementation: https://github.com/w3f/consensus +/// +/// @returns a vector of elected candidates +pub fn elect( + get_rounds: FR, + get_validators: FV, + get_nominators: FN, + stash_of: FS, + minimum_validator_count: usize, + ) -> Vec>> where + FR: Fn() -> usize, + FV: Fn() -> Box>) + >>, + FN: Fn() -> Box) + >>, + FS: Fn(T::AccountId) -> BalanceOf, +{ + let rounds = get_rounds(); + let mut elected_candidates = vec![]; + + // 1- Pre-process candidates and place them in a container + let mut candidates = get_validators().map(|(who, _)| { + let stash_balance = stash_of(who.clone()); + Candidate { + who, + approval_stake: BalanceOf::::zero(), + score: Perquintill::zero(), + exposure: Exposure { total: stash_balance, own: stash_balance, others: vec![] }, + } + }).collect::>>>(); + + // Just to be used when we are below minimum validator count + let original_candidates = candidates.clone(); + + // 2- Collect the nominators with the associated votes. + // Also collect approval stake along the way. + let mut nominations = get_nominators().map(|(who, nominees)| { + let nominator_stake = stash_of(who.clone()); + for n in &nominees { + candidates.iter_mut().filter(|i| i.who == *n).for_each(|c| { + c.approval_stake += nominator_stake; + }); + } + + Nominations { + who, + nominees: nominees.into_iter() + .map(|n| Vote {who: n, load: Perquintill::zero(), backing_stake: BalanceOf::::zero()}) + .collect::>>>(), + stake: nominator_stake, + load : Perquintill::zero(), + } + }).collect::>>>(); + + // 3- optimization: + // Candidates who have 0 stake => have no votes or all null-votes. Kick them out not. + let mut candidates = candidates.into_iter().filter(|c| c.approval_stake > BalanceOf::::zero()) + .collect::>>>(); + + // 4- If we have more candidates then needed, run Phragmén. + if candidates.len() > rounds { + // Main election loop + for _round in 0..rounds { + // Loop 1: initialize score + for nominaotion in &nominations { + for vote in &nominaotion.nominees { + let candidate = &vote.who; + if let Some(c) = candidates.iter_mut().find(|i| i.who == *candidate) { + let approval_stake = c.approval_stake; + c.score = Perquintill::from_xth(approval_stake.as_()); + } + } + } + // Loop 2: increment score. + for nominaotion in &nominations { + for vote in &nominaotion.nominees { + let candidate = &vote.who; + if let Some(c) = candidates.iter_mut().find(|i| i.who == *candidate) { + let approval_stake = c.approval_stake; + let temp = + nominaotion.stake.as_() + * *nominaotion.load + / approval_stake.as_(); + c.score = Perquintill::from_quintillionths(*c.score + temp); + } + } + } + + // Find the best + let (winner_index, _) = candidates.iter().enumerate().min_by_key(|&(_i, c)| *c.score) + .expect("candidates length is checked to be >0; qed"); + + // loop 3: update nominator and vote load + let winner = candidates.remove(winner_index); + for n in &mut nominations { + for v in &mut n.nominees { + if v.who == winner.who { + v.load = + Perquintill::from_quintillionths( + *winner.score + - *n.load + ); + n.load = winner.score; + } + } + } + + elected_candidates.push(winner); + + } // end of all rounds + + // 4.1- Update backing stake of candidates and nominators + for n in &mut nominations { + for v in &mut n.nominees { + // if the target of this vote is among the winners, otherwise let go. + if let Some(c) = elected_candidates.iter_mut().find(|c| c.who == v.who) { + v.backing_stake = as As>::sa( + n.stake.as_() + * *v.load + / *n.load + ); + c.exposure.total += v.backing_stake; + // Update IndividualExposure of those who nominated and their vote won + c.exposure.others.push( + IndividualExposure {who: n.who.clone(), value: v.backing_stake } + ); + } + } + } + } else { + if candidates.len() > minimum_validator_count { + // if we don't have enough candidates, just choose all that have some vote. + elected_candidates = candidates; + // `Exposure.others` still needs an update + for n in &mut nominations { + for v in &mut n.nominees { + if let Some(c) = elected_candidates.iter_mut().find(|c| c.who == v.who) { + c.exposure.total += n.stake; + c.exposure.others.push( + IndividualExposure {who: n.who.clone(), value: n.stake } + ); + } + } + } + } else { + // if we have less than minimum, use the previous validator set. + elected_candidates = original_candidates; + } + } + + elected_candidates +} \ No newline at end of file diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index c3be7609b0..7921d7f313 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -20,6 +20,8 @@ use super::*; use runtime_io::with_externalities; +use phragmen; +use primitives::Perquintill; use srml_support::{assert_ok, assert_noop, EnumerableStorageMap}; use mock::{Balances, Session, Staking, System, Timestamp, Test, ExtBuilder, Origin}; use srml_support::traits::Currency; @@ -27,9 +29,8 @@ use srml_support::traits::Currency; #[test] fn basic_setup_works() { // Verifies initial conditions of mock - // TODO: Verify this check is comprehensive - // - Session Per Era, Session Reward - with_externalities(&mut ExtBuilder::default().build(), + with_externalities(&mut ExtBuilder::default() + .build(), || { assert_eq!(Staking::bonded(&11), Some(10)); // Account 11 is stashed and locked, and account 10 is the controller assert_eq!(Staking::bonded(&21), Some(20)); // Account 21 is stashed and locked, and account 20 is the controller @@ -48,13 +49,33 @@ fn basic_setup_works() { (10, ValidatorPrefs { unstake_threshold: 3, validator_payment: 0 }) ]); + // Account 100 is the default nominator + assert_eq!(Staking::ledger(100), Some(StakingLedger { stash: 101, total: 500, active: 500, unlocking: vec![] })); + assert_eq!(Staking::nominators(100), vec![10, 20]); + // Account 10 is exposed by 100 * balance_factor from their own stash in account 11 - assert_eq!(Staking::stakers(10), Exposure { total: 1000, own: 1000, others: vec![] }); - assert_eq!(Staking::stakers(20), Exposure { total: 2000, own: 2000, others: vec![] }); + assert_eq!(Staking::stakers(10), Exposure { total: 1500, own: 1000, others: vec![ IndividualExposure { who: 100, value: 500 }] }); + assert_eq!(Staking::stakers(20), Exposure { total: 2500, own: 2000, others: vec![ IndividualExposure { who: 100, value: 500 }] }); + + // The number of validators required. + assert_eq!(Staking::validator_count(), 2); + + // Initial Era and session + assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 0); + + // initial rewards + assert_eq!(Staking::current_session_reward(), 10); + + // initial slot_stake + assert_eq!(Staking::slot_stake(), 1500); + + // initial slash_count of validators + assert_eq!(Staking::slash_count(&10), 0); + assert_eq!(Staking::slash_count(&20), 0); }); } - #[test] fn no_offline_should_work() { // Test the staking module works when no validators are offline @@ -83,7 +104,7 @@ fn invulnerability_should_work() { assert_ok!(Staking::set_invulnerables(vec![10])); // Give account 10 some funds Balances::set_free_balance(&10, 70); - // There is no slash grade period + // There is no slash grace -- slash immediately. assert_eq!(Staking::offline_slash_grace(), 0); // Account 10 has not been slashed assert_eq!(Staking::slash_count(&10), 0); @@ -101,6 +122,7 @@ fn invulnerability_should_work() { assert_eq!(Balances::free_balance(&10), 70); assert!(>::exists(&10)); // New era not being forced + // NOTE: new era is always forced once slashing happens -> new validators need to be chosen. assert!(Staking::forcing_new_era().is_none()); }); } @@ -176,16 +198,98 @@ fn offline_grace_should_delay_slashing() { } +#[test] +fn max_unstake_threshold_works() { + // Tests that max_unstake_threshold gets used when prefs.unstake_threshold is large + with_externalities(&mut ExtBuilder::default().build(), || { + const MAX_UNSTAKE_THRESHOLD: u32 = 10; + // Two users with maximum possible balance + Balances::set_free_balance(&10, u64::max_value()); + Balances::set_free_balance(&20, u64::max_value()); + + // Give them full exposer as a staker + >::insert(&10, Exposure { total: u64::max_value(), own: u64::max_value(), others: vec![]}); + >::insert(&20, Exposure { total: u64::max_value(), own: u64::max_value(), others: vec![]}); + + // Check things are initialized correctly + assert_eq!(Balances::free_balance(&10), u64::max_value()); + assert_eq!(Balances::free_balance(&20), u64::max_value()); + assert_eq!(Balances::free_balance(&10), Balances::free_balance(&20)); + assert_eq!(Staking::offline_slash_grace(), 0); + assert_eq!(Staking::current_offline_slash(), 20); + // Account 10 will have max unstake_threshold + assert_ok!(Staking::validate(Origin::signed(10), ValidatorPrefs { + unstake_threshold: MAX_UNSTAKE_THRESHOLD, + validator_payment: 0, + })); + // Account 20 could not set their unstake_threshold past 10 + assert_noop!(Staking::validate(Origin::signed(20), ValidatorPrefs { + unstake_threshold: 11, + validator_payment: 0}), + "unstake threshold too large" + ); + // Give Account 20 unstake_threshold 11 anyway, should still be limited to 10 + >::insert(20, ValidatorPrefs { + unstake_threshold: 11, + validator_payment: 0, + }); + + // Make slot_stake really large, as to not affect punishment curve + >::put(u64::max_value()); + // Confirm `slot_stake` is greater than exponential punishment, else math below will be different + assert!(Staking::slot_stake() > 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); + + // Report each user 1 more than the max_unstake_threshold + Staking::on_offline_validator(10, MAX_UNSTAKE_THRESHOLD as usize + 1); + Staking::on_offline_validator(20, MAX_UNSTAKE_THRESHOLD as usize + 1); + + // Show that each balance only gets reduced by 2^max_unstake_threshold + assert_eq!(Balances::free_balance(&10), u64::max_value() - 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); + assert_eq!(Balances::free_balance(&20), u64::max_value() - 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); + }); +} + +#[test] +fn slashing_does_not_cause_underflow() { + // Tests that slashing more than a user has does not underflow + with_externalities(&mut ExtBuilder::default().build(), || { + // One user with less than `max_value` will test underflow does not occur + Balances::set_free_balance(&10, 1); + + // Verify initial conditions + assert_eq!(Balances::free_balance(&10), 1); + assert_eq!(Staking::offline_slash_grace(), 0); + + // Set validator preference so that 2^unstake_threshold would cause overflow (greater than 64) + >::insert(10, ValidatorPrefs { + unstake_threshold: 10, + validator_payment: 0, + }); + + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + + // Should not panic + Staking::on_offline_validator(10, 100); + // Confirm that underflow has not occurred, and account balance is set to zero + assert_eq!(Balances::free_balance(&10), 0); + }); +} + + #[test] fn rewards_should_work() { - // should check that: - // 1) rewards get recorded per session - // 2) rewards get paid per Era - // 3) (bonus) Check that nominators are also rewarded - with_externalities(&mut ExtBuilder::default().build(), + // should check that: + // * rewards get recorded per session + // * rewards get paid per Era + // * Check that nominators are also rewarded + with_externalities(&mut ExtBuilder::default() + .session_length(3) + .sessions_per_era(3) + .build(), || { let delay = 2; - // this test is only in the scope of one era. Since this variable changes + // this test is only in the scope of one era. Since this variable changes // at the last block/new era, we'll save it. let session_reward = 10; @@ -202,17 +306,17 @@ fn rewards_should_work() { assert_eq!(Staking::current_session_reward(), 10); // check the balance of a validator accounts. - assert_eq!(Balances::total_balance(&10), 1); + assert_eq!(Balances::total_balance(&10), 1); // and the nominator (to-be) - assert_eq!(Balances::total_balance(&2), 20); + assert_eq!(Balances::total_balance(&2), 20); // add a dummy nominator. // NOTE: this nominator is being added 'manually'. a Further test (nomination_and_reward..) will add it via '.nominate()' >::insert(&10, Exposure { own: 500, // equal division indicates that the reward will be equally divided among validator and nominator. total: 1000, - others: vec![IndividualExposure {who: 2, value: 500 }] - }); + others: vec![IndividualExposure {who: 2, value: 500 }] + }); >::insert(&2, RewardDestination::Controller); @@ -220,7 +324,7 @@ fn rewards_should_work() { // Block 3 => Session 1 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5); // on time. - Session::check_rotate_session(System::block_number()); // QUESTIONS: why this matters ? + Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); assert_eq!(Session::current_index(), 1); @@ -228,7 +332,7 @@ fn rewards_should_work() { assert_eq!(Staking::current_session_reward(), session_reward); assert_eq!(Staking::current_era_reward(), session_reward); - block = 6; // Block 6 => Session 2 => Era 0 + block = 6; // Block 6 => Session 2 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5 + delay); // a little late. Session::check_rotate_session(System::block_number()); @@ -255,9 +359,13 @@ fn rewards_should_work() { #[test] fn multi_era_reward_should_work() { // should check that: - // The value of current_session_reward is set at the end of each era, based on - // slot_stake and session_reward. Check and verify this. - with_externalities(&mut ExtBuilder::default().build(), + // The value of current_session_reward is set at the end of each era, based on + // slot_stake and session_reward. Check and verify this. + with_externalities(&mut ExtBuilder::default() + .session_length(3) + .sessions_per_era(3) + .nominate(false) + .build(), || { let delay = 0; let session_reward = 10; @@ -275,7 +383,7 @@ fn multi_era_reward_should_work() { // Block 3 => Session 1 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5); // on time. - Session::check_rotate_session(System::block_number()); // QUESTIONS: why this matters ? + Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); assert_eq!(Session::current_index(), 1); @@ -283,7 +391,7 @@ fn multi_era_reward_should_work() { assert_eq!(Staking::current_session_reward(), session_reward); assert_eq!(Staking::current_era_reward(), session_reward); - block = 6; // Block 6 => Session 2 => Era 0 + block = 6; // Block 6 => Session 2 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5 + delay); // a little late. Session::check_rotate_session(System::block_number()); @@ -315,6 +423,7 @@ fn multi_era_reward_should_work() { // intermediate test. assert_eq!(Staking::current_era_reward(), 2*new_session_reward); + // new era is triggered here. block=18;System::set_block_number(block);Timestamp::set_timestamp(block*5);Session::check_rotate_session(System::block_number()); // pay time @@ -324,24 +433,33 @@ fn multi_era_reward_should_work() { #[test] fn staking_should_work() { - // should test: + // should test: // * new validators can be added to the default set - // * new ones will be chosen per era (+ based on phragmen) - // * either one can unlock the stash and back-down from being a validator. - with_externalities(&mut ExtBuilder::default().session_length(1).build(), || { + // * new ones will be chosen per era + // * either one can unlock the stash and back-down from being a validator via `chill`ing. + with_externalities(&mut ExtBuilder::default() + .sessions_per_era(3) + .nominate(false) + .build(), + || { assert_eq!(Staking::era_length(), 3); - assert_eq!(Staking::validator_count(), 2); // remember + compare this along with the test. assert_eq!(Session::validators(), vec![20, 10]); assert_ok!(Staking::set_bonding_duration(2)); assert_eq!(Staking::bonding_duration(), 2); - // --- Block 1: + // put some money in account that we'll use. + for i in 1..5 { Balances::set_free_balance(&i, 1000); } + + // bond one account pair and state interest in nomination. + // this is needed to keep 10 and 20 in the validator list with phragmen + assert_ok!(Staking::bond(Origin::signed(1), 2, 500, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(2), vec![20, 4])); + + // --- Block 1: System::set_block_number(1); - // give the man some coins - Balances::set_free_balance(&3, 3000); - // initial stakers: vec![(11, 10, balance_factor * 100), (21, 20, balance_factor * 200)], - // account 3 controlled by 4. + + // add a new candidate for being a validator. account 3 controlled by 4. assert_ok!(Staking::bond(Origin::signed(3), 4, 1500, RewardDestination::Controller)); // balance of 3 = 3000, stashed = 1500 Session::check_rotate_session(System::block_number()); @@ -350,11 +468,11 @@ fn staking_should_work() { assert_eq!(Session::validators(), vec![20, 10]); - // --- Block 2: + // --- Block 2: System::set_block_number(2); - // Explicitly state the desire to validate for all of them. + // Explicitly state the desire to validate // note that the controller account will state interest as representative of the stash-controller pair. - assert_ok!(Staking::validate(Origin::signed(4), ValidatorPrefs { unstake_threshold: 3, validator_payment: 0 })); + assert_ok!(Staking::validate(Origin::signed(4), ValidatorPrefs::default())); Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); @@ -362,12 +480,11 @@ fn staking_should_work() { assert_eq!(Session::validators(), vec![20, 10]); - // --- Block 3: the validators will now change. + // --- Block 3: the validators will now change. System::set_block_number(3); Session::check_rotate_session(System::block_number()); - // TODO: the assertion in the section should be changed to something in sync with how phragmen works. - // for now just check that some arbitrary "two validators" have been chosen. + // 2 only voted for 4 and 20 assert_eq!(Session::validators().len(), 2); assert_eq!(Session::validators(), vec![4, 20]); assert_eq!(Staking::current_era(), 1); @@ -377,7 +494,13 @@ fn staking_should_work() { System::set_block_number(4); // unlock the entire stashed value. + // Note that this will ne be enough to remove 4 as a validator candidate! Staking::unbond(Origin::signed(4), Staking::ledger(&4).unwrap().active).unwrap(); + // explicit chill indicated that 4 no longer wants to be a validator. + Staking::chill(Origin::signed(4)).unwrap(); + + // nominator votes for 10 + assert_ok!(Staking::nominate(Origin::signed(2), vec![20, 10])); Session::check_rotate_session(System::block_number()); // nothing should be changed so far. @@ -385,101 +508,189 @@ fn staking_should_work() { assert_eq!(Staking::current_era(), 1); - // --- Block 5: nothing. 4 is still there. + // --- Block 5: nothing. 4 is still there. System::set_block_number(5); Session::check_rotate_session(System::block_number()); - assert_eq!(Session::validators(), vec![4, 20]); + assert_eq!(Session::validators(), vec![4, 20]); assert_eq!(Staking::current_era(), 1); - // --- Block 6: 4 will be not be a validator as it has nothing in stash. + // --- Block 6: 4 will not be a validator. System::set_block_number(6); Session::check_rotate_session(System::block_number()); - assert_eq!(Session::validators().contains(&4), false); + assert_eq!(Staking::current_era(), 2); + assert_eq!(Session::validators().contains(&4), false); + assert_eq!(Session::validators(), vec![20, 10]); }); } +#[test] +fn less_than_needed_candidates_works() { + // Test the situation where the number of validators are less than `ValidatorCount` but more than + // The expected behavior is to choose all the candidates that have some vote. + with_externalities(&mut ExtBuilder::default() + .minimum_validator_count(1) + .validator_count(3) + .nominate(false) + .validator_pool(true) + .build(), + || { + assert_eq!(Staking::era_length(), 1); + assert_eq!(Staking::validator_count(), 3); + + assert_eq!(Staking::minimum_validator_count(), 1); + assert_eq!(Staking::validator_count(), 3); + + // initial validators + assert_eq!(Session::validators(), vec![40, 30, 20, 10]); + + // only one nominator will exist and it will + assert_ok!(Staking::bond(Origin::signed(1), 2, 500, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); + + // 10 and 20 are now valid candidates. + // trigger era + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + assert_eq!(Staking::current_era(), 1); + + // both validators will be chosen again. NO election algorithm is even executed. + assert_eq!(Session::validators(), vec![20, 10]); + + // But the exposure is updated in a simple way. Each nominators vote is applied + assert_eq!(Staking::stakers(10).others.iter().map(|e| e.who).collect::>>(), vec![2]); + assert_eq!(Staking::stakers(20).others.iter().map(|e| e.who).collect::>>(), vec![2]); + }); +} + +#[test] +fn no_candidate_emergency_condition() { + // Test the situation where the number of validators are less than `ValidatorCount` and less than + // The expected behavior is to choose all candidates from the previous era. + with_externalities(&mut ExtBuilder::default() + .minimum_validator_count(1) + .validator_count(3) + .nominate(false) + .validator_pool(true) + .build(), + || { + assert_eq!(Staking::era_length(), 1); + assert_eq!(Staking::validator_count(), 3); + + assert_eq!(Staking::minimum_validator_count(), 1); + assert_eq!(Staking::validator_count(), 3); + + // initial validators + assert_eq!(Session::validators(), vec![40, 30, 20, 10]); + + // trigger era + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + assert_eq!(Staking::current_era(), 1); + + // No one nominates => no one has a proper vote => no change + assert_eq!(Session::validators(), vec![40, 30, 20, 10]); + }); +} #[test] fn nominating_and_rewards_should_work() { - // TODO: This should be rewritten and tested with the Phragmen algorithm // For now it tests a functionality which somehow overlaps with other tests: // the fact that the nominator is rewarded properly. + // + // PHRAGMEN OUTPUT: running this test with the reference impl gives: + // + // Votes [('2', 500, ['10', '20', '30']), ('4', 500, ['10', '20', '40'])] + // Sequential Phragmén gives + // 10 is elected with stake 500.0 and score 0.001 + // 20 is elected with stake 500.0 and score 0.002 + // + // 2 has load 0.002 and supported + // 10 with stake 250.0 20 with stake 250.0 30 with stake 0.0 + // 4 has load 0.002 and supported + // 10 with stake 250.0 20 with stake 250.0 40 with stake 0.0 + with_externalities(&mut ExtBuilder::default() - .session_length(1).sessions_per_era(1).build(), + .nominate(false) + .validator_pool(true) + .build(), || { - let session_reward = 10; - let initial_balance = 1000; - assert_eq!(Staking::era_length(), 1); - assert_eq!(Staking::validator_count(), 2); - assert_eq!(Staking::bonding_duration(), 3); - assert_eq!(Session::validators(), vec![20, 10]); + // initial validators + assert_eq!(Session::validators(), vec![40, 30, 20, 10]); // Set payee to controller assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); assert_ok!(Staking::set_payee(Origin::signed(20), RewardDestination::Controller)); // default reward for the first session. + let session_reward = 10; assert_eq!(Staking::current_session_reward(), session_reward); // give the man some money + let initial_balance = 1000; for i in 1..5 { Balances::set_free_balance(&i, initial_balance); } Balances::set_free_balance(&10, initial_balance); Balances::set_free_balance(&20, initial_balance); - - System::set_block_number(1); // record their balances. for i in 1..5 { assert_eq!(Balances::total_balance(&i), initial_balance); } - // bond two account pairs and state interest in nomination. - // NOTE: in the current naive version only the first vote matters and will be chosen anyhow. - - // 2 will nominate for 10, 10 has 1000 in stash, 500 will be 1/3 of the total 1500 + // 2 will nominate for 10, 20, 30 assert_ok!(Staking::bond(Origin::signed(1), 2, 500, RewardDestination::Controller)); - assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); - // 4 will nominate for 20, 20 has 2000 in stash, 500 will be 1/5 of the total 2500 + assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20, 30])); + // 4 will nominate for 10, 20, 40 assert_ok!(Staking::bond(Origin::signed(3), 4, 500, RewardDestination::Stash)); - assert_ok!(Staking::nominate(Origin::signed(4), vec![20, 10])); + assert_ok!(Staking::nominate(Origin::signed(4), vec![10, 20, 40])); - + System::set_block_number(1); Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 1); - // validators will not change, since selection currently is actually not dependent on nomination and votes, only stake. + // 10 and 20 have more votes, they will be chosen by phragmen. assert_eq!(Session::validators(), vec![20, 10]); - // avalidators must have already received some rewards. + // validators must have already received some rewards. assert_eq!(Balances::total_balance(&10), initial_balance + session_reward); assert_eq!(Balances::total_balance(&20), initial_balance + session_reward); + + // ------ check the staked value of all parties. + // total expo of 10, with 500 coming from nominators (externals), according to phragmen. + assert_eq!(Staking::stakers(10).own, 1000); + assert_eq!(Staking::stakers(10).total, 1000 + 500); + // 2 and 4 supported 10, each with stake 250, according to phragmen. + assert_eq!(Staking::stakers(10).others.iter().map(|e| e.value).collect::>>(), vec![250, 250]); + assert_eq!(Staking::stakers(10).others.iter().map(|e| e.who).collect::>>(), vec![4, 2]); + // total expo of 20, with 500 coming from nominators (externals), according to phragmen. + assert_eq!(Staking::stakers(20).own, 2000); + assert_eq!(Staking::stakers(20).total, 2000 + 500); + // 2 and 4 supported 20, each with stake 250, according to phragmen. + assert_eq!(Staking::stakers(20).others.iter().map(|e| e.value).collect::>>(), vec![250, 250]); + assert_eq!(Staking::stakers(20).others.iter().map(|e| e.who).collect::>>(), vec![4, 2]); System::set_block_number(2); // next session reward. let new_session_reward = Staking::session_reward() * Staking::slot_stake(); // nothing else will happen, era ends and rewards are paid again, - // it is expected that nominators will also be paid. + // it is expected that nominators will also be paid. See below Session::check_rotate_session(System::block_number()); + // Nominator 2: has [250/1500 ~ 1/6 from 10] + [250/2500 ~ 1/10 from 20]'s reward. ==> 1/6 + 1/10 + assert_eq!(Balances::total_balance(&2), initial_balance + (new_session_reward/6 + new_session_reward/10)); + // The Associated validator will get the other 4/6 --> 1500(total) minus 1/6(250) by each nominator -> 6/6 - 1/6 - 1/6 + assert_eq!(Balances::total_balance(&10), initial_balance + session_reward + 4*new_session_reward/6) ; - // Nominator 2: staked 1/3 of the total, gets 1/3 of the reward, chose controller as destination - assert_eq!(Balances::total_balance(&2), initial_balance + new_session_reward/3); - // The Associated validator will get the other 2/3 - assert_eq!(Balances::total_balance(&10), initial_balance + session_reward + 2*new_session_reward/3); - - // Nominator 4: staked 1/5 of the total, gets 1/5 of the reward, chose stash as destination - // This means that the reward will go to 3, which is bonded as the stash of 4. - assert_eq!(Balances::total_balance(&3), initial_balance + new_session_reward/5); - // The Associated validator will get the other 4/5 - assert_eq!(Balances::total_balance(&20), initial_balance + session_reward + 4*new_session_reward/5); + // Nominator 4: has [250/1500 ~ 1/6 from 10] + [250/2500 ~ 1/10 from 20]'s reward. ==> 1/6 + 1/10 + // This nominator chose stash as the reward destination. This means that the reward will go to 3, which is bonded as the stash of 4. + assert_eq!(Balances::total_balance(&3), initial_balance + (new_session_reward/6 + new_session_reward/10)); + // The Associated validator will get the other 8/10 --> 2500(total) minus 1/10(250) by each nominator -> 10/10 - 1/10 - 1/10 + assert_eq!(Balances::total_balance(&20), initial_balance + session_reward + 8*new_session_reward/10); }); } #[test] fn nominators_also_get_slashed() { // A nominator should be slashed if the validator they nominated is slashed - with_externalities(&mut ExtBuilder::default() - .session_length(1).sessions_per_era(1).build(), - || { + with_externalities(&mut ExtBuilder::default().nominate(false).build(), || { assert_eq!(Staking::era_length(), 1); assert_eq!(Staking::validator_count(), 2); // slash happens immediately. @@ -508,13 +719,14 @@ fn nominators_also_get_slashed() { // 10 goes offline Staking::on_offline_validator(10, 4); - let slash_value = Staking::current_offline_slash()*8; + let slash_value = 2_u64.pow(3) * Staking::current_offline_slash(); let expo = Staking::stakers(10); let actual_slash = expo.own.min(slash_value); let nominator_actual_slash = nominator_stake.min(expo.total - actual_slash); // initial + first era reward + slash assert_eq!(Balances::total_balance(&10), initial_balance + 10 - actual_slash); assert_eq!(Balances::total_balance(&2), initial_balance - nominator_actual_slash); + // Because slashing happened. assert!(Staking::forcing_new_era().is_some()); }); } @@ -527,7 +739,8 @@ fn double_staking_should_fail() { // * an account already bonded as stash cannot nominate. // * an account already bonded as controller can nominate. with_externalities(&mut ExtBuilder::default() - .session_length(1).sessions_per_era(2).build(), + .sessions_per_era(2) + .build(), || { let arbitrary_value = 5; System::set_block_number(1); @@ -547,10 +760,9 @@ fn double_staking_should_fail() { #[test] fn session_and_eras_work() { with_externalities(&mut ExtBuilder::default() - .session_length(1) .sessions_per_era(2) .reward(10) - .build(), + .build(), || { assert_eq!(Staking::era_length(), 2); assert_eq!(Staking::sessions_per_era(), 2); @@ -626,7 +838,7 @@ fn cannot_transfer_staked_balance() { // Confirm account 11 has some free balance assert_eq!(Balances::free_balance(&11), 1000); // Confirm account 11 (via controller 10) is totally staked - assert_eq!(Staking::stakers(&10).total, 1000); + assert_eq!(Staking::stakers(&10).total, 1000 + 500); // Confirm account 11 cannot transfer as a result assert_noop!(Balances::transfer(Origin::signed(11), 20, 1), "account liquidity restrictions prevent withdrawal"); @@ -646,7 +858,7 @@ fn cannot_reserve_staked_balance() { // Confirm account 11 has some free balance assert_eq!(Balances::free_balance(&11), 1000); // Confirm account 11 (via controller 10) is totally staked - assert_eq!(Staking::stakers(&10).total, 1000); + assert_eq!(Staking::stakers(&10).total, 1000 + 500); // Confirm account 11 cannot transfer as a result assert_noop!(Balances::reserve(&11, 1), "account liquidity restrictions prevent withdrawal"); @@ -657,96 +869,16 @@ fn cannot_reserve_staked_balance() { }); } -#[test] -fn max_unstake_threshold_works() { - // Tests that max_unstake_threshold gets used when prefs.unstake_threshold is large - with_externalities(&mut ExtBuilder::default().build(), || { - const MAX_UNSTAKE_THRESHOLD: u32 = 10; - // Two users with maximum possible balance - Balances::set_free_balance(&10, u64::max_value()); - Balances::set_free_balance(&20, u64::max_value()); - - // Give them full exposer as a staker - >::insert(&10, Exposure { total: u64::max_value(), own: u64::max_value(), others: vec![]}); - >::insert(&20, Exposure { total: u64::max_value(), own: u64::max_value(), others: vec![]}); - - // Check things are initialized correctly - assert_eq!(Balances::free_balance(&10), u64::max_value()); - assert_eq!(Balances::free_balance(&20), u64::max_value()); - assert_eq!(Balances::free_balance(&10), Balances::free_balance(&20)); - assert_eq!(Staking::offline_slash_grace(), 0); - assert_eq!(Staking::current_offline_slash(), 20); - // Account 10 will have max unstake_threshold - assert_ok!(Staking::validate(Origin::signed(10), ValidatorPrefs { - unstake_threshold: MAX_UNSTAKE_THRESHOLD, - validator_payment: 0, - })); - // Account 20 could not set their unstake_threshold past 10 - assert_noop!(Staking::validate(Origin::signed(20), ValidatorPrefs { - unstake_threshold: 11, - validator_payment: 0}), - "unstake threshold too large" - ); - // Give Account 20 unstake_threshold 11 anyway, should still be limited to 10 - >::insert(20, ValidatorPrefs { - unstake_threshold: 11, - validator_payment: 0, - }); - - // Make slot_stake really large, as to not affect punishment curve - >::put(u64::max_value()); - // Confirm `slot_stake` is greater than exponential punishment, else math below will be different - assert!(Staking::slot_stake() > 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); - - // Report each user 1 more than the max_unstake_threshold - Staking::on_offline_validator(10, MAX_UNSTAKE_THRESHOLD as usize + 1); - Staking::on_offline_validator(20, MAX_UNSTAKE_THRESHOLD as usize + 1); - - // Show that each balance only gets reduced by 2^max_unstake_threshold - assert_eq!(Balances::free_balance(&10), u64::max_value() - 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); - assert_eq!(Balances::free_balance(&20), u64::max_value() - 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); - }); -} - -#[test] -fn slashing_does_not_cause_underflow() { - // Tests that slashing more than a user has does not underflow - with_externalities(&mut ExtBuilder::default().build(), || { - // One user with less than `max_value` will test underflow does not occur - Balances::set_free_balance(&10, 1); - - // Verify initial conditions - assert_eq!(Balances::free_balance(&10), 1); - assert_eq!(Staking::offline_slash_grace(), 0); - - // Set validator preference so that 2^unstake_threshold would cause overflow (greater than 64) - >::insert(10, ValidatorPrefs { - unstake_threshold: 10, - validator_payment: 0, - }); - - // Should not panic - Staking::on_offline_validator(10, 100); - // Confirm that underflow has not occurred, and account balance is set to zero - assert_eq!(Balances::free_balance(&10), 0); - }); -} - - #[test] fn reward_destination_works() { // Rewards go to the correct destination as determined in Payee - with_externalities(&mut ExtBuilder::default() - .sessions_per_era(1) - .session_length(1) - .build(), - || { + with_externalities(&mut ExtBuilder::default().build(), || { // Check that account 10 is a validator assert!(>::exists(10)); // Check the balance of the validator account - assert_eq!(Balances::free_balance(&10), 1); + assert_eq!(Balances::free_balance(&10), 1); // Check the balance of the stash account - assert_eq!(Balances::free_balance(&11), 1000); + assert_eq!(Balances::free_balance(&11), 1000); // Check these two accounts are bonded assert_eq!(Staking::bonded(&11), Some(10)); // Check how much is at stake @@ -763,10 +895,12 @@ fn reward_destination_works() { assert_eq!(Staking::payee(&10), RewardDestination::Staked); // Check current session reward is 10 assert_eq!(current_session_reward, 10); - // Check that reward went to the stash account - assert_eq!(Balances::free_balance(&11), 1000 + 10); + // Check that reward went to the stash account of validator + // 1/3 of the reward is for the nominator. + let validator_reward = (10. * (2./3.)) as u64; // = 6 + assert_eq!(Balances::free_balance(&11), 1000 + validator_reward); // Check that amount at stake increased accordingly - assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 10, active: 1000 + 10, unlocking: vec![] })); + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 6, active: 1000 + 6, unlocking: vec![] })); // Update current session reward current_session_reward = Staking::current_session_reward(); @@ -781,15 +915,18 @@ fn reward_destination_works() { // Check that RewardDestination is Stash assert_eq!(Staking::payee(&10), RewardDestination::Stash); // Check that reward went to the stash account - assert_eq!(Balances::free_balance(&11), 1010 + current_session_reward); + let new_validator_reward = ((1000 + 6) as f64 / ( (1000 + 6) + (500 + 4) ) as f64) * current_session_reward as f64; + assert_eq!(Balances::free_balance(&11), 1000 + validator_reward + new_validator_reward as u64); // Check that amount at stake is not increased - assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1010, active: 1010, unlocking: vec![] })); - // Update current session reward - current_session_reward = Staking::current_session_reward(); + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1006, active: 1006, unlocking: vec![] })); //Change RewardDestination to Controller >::insert(&10, RewardDestination::Controller); + // Check controller balance + assert_eq!(Balances::free_balance(&10), 1); + + // Move forward the system for payment System::set_block_number(3); Timestamp::set_timestamp(15); @@ -798,20 +935,22 @@ fn reward_destination_works() { // Check that RewardDestination is Controller assert_eq!(Staking::payee(&10), RewardDestination::Controller); // Check that reward went to the controller account - assert_eq!(Balances::free_balance(&10), 1 + current_session_reward); + let reward_of = |w| Staking::stakers(w).own * Staking::current_session_reward() / Staking::stakers(w).total; + assert_eq!(Balances::free_balance(&10), 1 + reward_of(&10)); // Check that amount at stake is not increased - assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1010, active: 1010, unlocking: vec![] })); - + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1006, active: 1006, unlocking: vec![] })); }); - } #[test] fn validator_payment_prefs_work() { // Test that validator preferences are correctly honored - // Note: unstake threshold is being directly tested in slashing tests. + // Note: unstake threshold is being directly tested in slashing tests. // This test will focus on validator payment. - with_externalities(&mut ExtBuilder::default().build(), + with_externalities(&mut ExtBuilder::default() + .session_length(3) + .sessions_per_era(3) + .build(), || { let session_reward = 10; let validator_cut = 5; @@ -826,31 +965,31 @@ fn validator_payment_prefs_work() { assert_eq!(Staking::current_session_reward(), session_reward); // check the balance of a validator accounts. - assert_eq!(Balances::total_balance(&10), 1); + assert_eq!(Balances::total_balance(&10), 1); // check the balance of a validator's stash accounts. - assert_eq!(Balances::total_balance(&11), validator_initial_balance); + assert_eq!(Balances::total_balance(&11), validator_initial_balance); // and the nominator (to-be) - assert_eq!(Balances::total_balance(&2), 20); + assert_eq!(Balances::total_balance(&2), 20); // add a dummy nominator. // NOTE: this nominator is being added 'manually', use '.nominate()' to do it realistically. >::insert(&10, Exposure { own: 500, // equal division indicates that the reward will be equally divided among validator and nominator. total: 1000, - others: vec![IndividualExposure {who: 2, value: 500 }] + others: vec![IndividualExposure {who: 2, value: 500 }] }); >::insert(&2, RewardDestination::Controller); - >::insert(&10, ValidatorPrefs { - unstake_threshold: 3, - validator_payment: validator_cut + >::insert(&10, ValidatorPrefs { + unstake_threshold: 3, + validator_payment: validator_cut }); - // ------------ Fast forward + // ------------ Fast forward let mut block = 3; // Block 3 => Session 1 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5); // on time. - Session::check_rotate_session(System::block_number()); + Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); assert_eq!(Session::current_index(), 1); @@ -858,7 +997,7 @@ fn validator_payment_prefs_work() { assert_eq!(Staking::current_session_reward(), session_reward); assert_eq!(Staking::current_era_reward(), session_reward); - block = 6; // Block 6 => Session 2 => Era 0 + block = 6; // Block 6 => Session 2 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5); // a little late. Session::check_rotate_session(System::block_number()); @@ -870,7 +1009,7 @@ fn validator_payment_prefs_work() { block = 9; // Block 9 => Session 3 => Era 1 System::set_block_number(block); - Timestamp::set_timestamp(block*5); + Timestamp::set_timestamp(block*5); Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 1); assert_eq!(Session::current_index(), 3); @@ -884,22 +1023,14 @@ fn validator_payment_prefs_work() { // Rest of the reward will be shared and paid to the nominator in stake. assert_eq!(Balances::total_balance(&2), 20 + shared_cut/2); }); -} -#[test] -fn staking_ledger_grows_and_shrinks() { - // TODO: Show that staking ledger grows with new events - // TODO: Show that staking ledger shrinks when user is removed -} - -#[test] -fn consolidate_unlocked_works() { - // TODO: Figure out what it does and then test it } #[test] fn bond_extra_works() { // Tests that extra `free_balance` in the stash can be added to stake + // NOTE: this tests only verifies `StakingLedger` for correct updates. + // See `bond_extra_and_withdraw_unbonded_works` for more details and updates on `Exposure`. with_externalities(&mut ExtBuilder::default().build(), || { // Check that account 10 is a validator @@ -928,34 +1059,112 @@ fn bond_extra_works() { } #[test] -fn withdraw_unbonded_works() { - // TODO: Learn what it is and test it -} +fn bond_extra_and_withdraw_unbonded_works() { + // * Should test + // * Given an account being bonded [and chosen as a validator](not mandatory) + // * It can add extra funds to the bonded account. + // * it can unbond a portion of its funds from the stash account. + // * Once the unbonding period is done, it can actually take the funds out of the stash. + with_externalities(&mut ExtBuilder::default() + .reward(10) // it is the default, just for verbosity + .nominate(false) + .build(), + || { + // Set payee to controller. avoids confusion + assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); -#[test] -fn reporting_misbehaviors_work() { - // TODO: Does this code exist? -} + // Set unbonding era (bonding_duration) to 2 + assert_ok!(Staking::set_bonding_duration(2)); -#[test] -fn correct_number_of_validators_are_chosen() { - // TODO: Check that number is at least minimum, and at most what is set - // TODO: Test emergency conditions? -} + // Give account 11 some large free balance greater than total + Balances::set_free_balance(&11, 1000000); + // Check the balance of the stash account + assert_eq!(Balances::free_balance(&11), 1000000); + // Initial config should be correct + assert_eq!(Staking::sessions_per_era(), 1); + assert_eq!(Staking::current_era(), 0); + assert_eq!(Session::current_index(), 0); + + assert_eq!(Staking::current_session_reward(), 10); + + // check the balance of a validator accounts. + assert_eq!(Balances::total_balance(&10), 1); + + // confirm that 10 is a normal validator and gets paid at the end of the era. + System::set_block_number(1); + Timestamp::set_timestamp(5); + Session::check_rotate_session(System::block_number()); + assert_eq!(Staking::current_era(), 1); + assert_eq!(Session::current_index(), 1); + + // NOTE: despite having .nominate() in extBuilder, 20 doesn't have a share since + // rewards are paid before election in new_era() + assert_eq!(Balances::total_balance(&10), 1 + 10); + + // Initial state of 10 + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000, active: 1000, unlocking: vec![] })); + assert_eq!(Staking::stakers(&10), Exposure { total: 1000, own: 1000, others: vec![] }); + + + // deposit the extra 100 units + Staking::bond_extra(Origin::signed(10), 100).unwrap(); + + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 1000 + 100, unlocking: vec![] })); + // Exposure is a snapshot! only updated after the next era update. + assert_ne!(Staking::stakers(&10), Exposure { total: 1000 + 100, own: 1000 + 100, others: vec![] }); + + // trigger next era. + System::set_block_number(2);Timestamp::set_timestamp(10);Session::check_rotate_session(System::block_number()); + assert_eq!(Staking::current_era(), 2); + assert_eq!(Session::current_index(), 2); + + // ledger should be the same. + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 1000 + 100, unlocking: vec![] })); + // Exposure is now updated. + assert_eq!(Staking::stakers(&10), Exposure { total: 1000 + 100, own: 1000 + 100, others: vec![] }); + // Note that by this point 10 also have received more rewards, but we don't care now. + // assert_eq!(Balances::total_balance(&10), 1 + 10 + MORE_REWARD); + + // Unbond almost all of the funds in stash. + Staking::unbond(Origin::signed(10), 1000).unwrap(); + assert_eq!(Staking::ledger(&10), Some(StakingLedger { + stash: 11, total: 1000 + 100, active: 100, unlocking: vec![UnlockChunk{ value: 1000, era: 2 + 2}] })); + + // Attempting to free the balances now will fail. 2 eras need to pass. + Staking::withdraw_unbonded(Origin::signed(10)).unwrap(); + assert_eq!(Staking::ledger(&10), Some(StakingLedger { + stash: 11, total: 1000 + 100, active: 100, unlocking: vec![UnlockChunk{ value: 1000, era: 2 + 2}] })); + + // trigger next era. + System::set_block_number(3);Timestamp::set_timestamp(15);Session::check_rotate_session(System::block_number()); + assert_eq!(Staking::current_era(), 3); + assert_eq!(Session::current_index(), 3); + + // nothing yet + Staking::withdraw_unbonded(Origin::signed(10)).unwrap(); + assert_eq!(Staking::ledger(&10), Some(StakingLedger { + stash: 11, total: 1000 + 100, active: 100, unlocking: vec![UnlockChunk{ value: 1000, era: 2 + 2}] })); + + // trigger next era. + System::set_block_number(4);Timestamp::set_timestamp(20);Session::check_rotate_session(System::block_number()); + assert_eq!(Staking::current_era(), 4); + assert_eq!(Session::current_index(), 4); + + Staking::withdraw_unbonded(Origin::signed(10)).unwrap(); + // Now the value is free and the staking ledger is updated. + assert_eq!(Staking::ledger(&10), Some(StakingLedger { + stash: 11, total: 100, active: 100, unlocking: vec![] })); + }) +} #[test] fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { - // TODO: Complete this test! // Test that slot_stake is determined by the least staked validator // Test that slot_stake is the maximum punishment that can happen to a validator // Note that rewardDestination is the stash account by default // Note that unlike reward slash will affect free_balance, not the stash account. - with_externalities(&mut ExtBuilder::default() - .session_length(1) - .sessions_per_era(1) - .build(), - || { + with_externalities(&mut ExtBuilder::default().nominate(false).build(), || { // Confirm validator count is 2 assert_eq!(Staking::validator_count(), 2); // Confirm account 10 and 20 are validators @@ -981,7 +1190,7 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { assert_eq!(Staking::stakers(&20).total, 69); >::insert(&20, StakingLedger { stash: 22, total: 69, active: 69, unlocking: vec![] }); - // New era --> rewards are paid --> stakes are changed + // New era --> rewards are paid --> stakes are changed System::set_block_number(1); Timestamp::set_timestamp(5); Session::check_rotate_session(System::block_number()); @@ -991,7 +1200,7 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { assert_eq!(Staking::stakers(&10).total, 1000 + 10); assert_eq!(Staking::stakers(&20).total, 69 + 10); - // -- Note that rewards are going drectly to stash, not as free balance. + // -- Note that rewards are going directly to stash, not as free balance. assert_eq!(Balances::free_balance(&10), 1000); assert_eq!(Balances::free_balance(&20), 1000); @@ -1008,7 +1217,6 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { }); } - #[test] fn on_free_balance_zero_stash_removes_validator() { // Tests that validator storage items are cleaned up when stash is empty @@ -1020,9 +1228,9 @@ fn on_free_balance_zero_stash_removes_validator() { // Check that account 10 is a validator assert!(>::exists(10)); // Check the balance of the validator account - assert_eq!(Balances::free_balance(&10), 256); + assert_eq!(Balances::free_balance(&10), 256); // Check the balance of the stash account - assert_eq!(Balances::free_balance(&11), 256000); + assert_eq!(Balances::free_balance(&11), 256000); // Check these two accounts are bonded assert_eq!(Staking::bonded(&11), Some(10)); @@ -1041,10 +1249,10 @@ fn on_free_balance_zero_stash_removes_validator() { // Reduce free_balance of controller to 0 Balances::set_free_balance(&10, 0); // Check total balance of account 10 - assert_eq!(Balances::total_balance(&10), 0); + assert_eq!(Balances::total_balance(&10), 0); // Check the balance of the stash account has not been touched - assert_eq!(Balances::free_balance(&11), 256000); + assert_eq!(Balances::free_balance(&11), 256000); // Check these two accounts are still bonded assert_eq!(Staking::bonded(&11), Some(10)); @@ -1057,7 +1265,7 @@ fn on_free_balance_zero_stash_removes_validator() { // Reduce free_balance of stash to 0 Balances::set_free_balance(&11, 0); // Check total balance of stash - assert_eq!(Balances::total_balance(&11), 0); + assert_eq!(Balances::total_balance(&11), 0); // Check storage items do not exist assert!(!>::exists(&10)); @@ -1082,9 +1290,9 @@ fn on_free_balance_zero_stash_removes_nominator() { // Check that account 10 is a nominator assert!(>::exists(10)); // Check the balance of the nominator account - assert_eq!(Balances::free_balance(&10), 256); + assert_eq!(Balances::free_balance(&10), 256); // Check the balance of the stash account - assert_eq!(Balances::free_balance(&11), 256000); + assert_eq!(Balances::free_balance(&11), 256000); // Check these two accounts are bonded assert_eq!(Staking::bonded(&11), Some(10)); @@ -1100,10 +1308,10 @@ fn on_free_balance_zero_stash_removes_nominator() { // Reduce free_balance of controller to 0 Balances::set_free_balance(&10, 0); // Check total balance of account 10 - assert_eq!(Balances::total_balance(&10), 0); + assert_eq!(Balances::total_balance(&10), 0); // Check the balance of the stash account has not been touched - assert_eq!(Balances::free_balance(&11), 256000); + assert_eq!(Balances::free_balance(&11), 256000); // Check these two accounts are still bonded assert_eq!(Staking::bonded(&11), Some(10)); @@ -1115,7 +1323,7 @@ fn on_free_balance_zero_stash_removes_nominator() { // Reduce free_balance of stash to 0 Balances::set_free_balance(&11, 0); // Check total balance of stash - assert_eq!(Balances::total_balance(&11), 0); + assert_eq!(Balances::total_balance(&11), 0); // Check storage items do not exist assert!(!>::exists(&10)); @@ -1125,4 +1333,253 @@ fn on_free_balance_zero_stash_removes_nominator() { assert!(!>::exists(&10)); assert!(!>::exists(&11)); }); -} \ No newline at end of file +} + +#[test] +fn phragmen_poc_works() { + // Tests the POC test of the phragmen, mentioned in the paper and reference implementation. + // Initial votes: + // vote_list = [ + // ("A", 10.0, ["X", "Y"]), + // ("B", 20.0, ["X", "Z"]), + // ("C", 30.0, ["Y", "Z"]) + // ] + // + // Sequential Phragmén gives + // Z is elected with stake 35.0 and score 0.02 + // Y is elected with stake 25.0 and score 0.04 + // + // A has load 0.04 and supported + // X with stake 0.0 Y with stake 10.0 + // B has load 0.02 and supported + // X with stake 0.0 Z with stake 20.0 + // C has load 0.04 and supported + // Y with stake 15.0 Z with stake 15.0 + // + // NOTE: doesn't X/Y/Z's stash value make a difference here in phragmen? + with_externalities(&mut ExtBuilder::default() + .nominate(false) + .build(), + || { + // initial setup of 10 and 20, both validators. + assert_eq!(Session::validators(), vec![20, 10]); + + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000, active: 1000, unlocking: vec![] })); + assert_eq!(Staking::ledger(&20), Some(StakingLedger { stash: 21, total: 2000, active: 2000, unlocking: vec![] })); + + assert_eq!(Staking::validators(10), ValidatorPrefs::default()); + assert_eq!(Staking::validators(20), ValidatorPrefs::default()); + + assert_eq!(Balances::free_balance(10), 1); + assert_eq!(Balances::free_balance(20), 1); + + // no one is a nominator + assert_eq!(>::enumerate().count(), 0 as usize); + + // Bond [30, 31] as the third validator + assert_ok!(Staking::bond(Origin::signed(31), 30, 1000, RewardDestination::default())); + assert_ok!(Staking::validate(Origin::signed(30), ValidatorPrefs::default())); + + // bond [2,1](A), [4,3](B), [6,5](C) as the 3 nominators + // Give all of them some balance to be able to bond properly. + for i in &[1, 3, 5] { Balances::set_free_balance(i, 50); } + // Linking names to the above test: + // 10 => X + // 20 => Y + // 30 => Z + assert_ok!(Staking::bond(Origin::signed(1), 2, 10, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); + + assert_ok!(Staking::bond(Origin::signed(3), 4, 20, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(4), vec![10, 30])); + + assert_ok!(Staking::bond(Origin::signed(5), 6, 30, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(6), vec![20, 30])); + + // New era => election algorithm will trigger + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + + // Z and Y are chosen + assert_eq!(Session::validators(), vec![30, 20]); + + // with stake 35 and 25 respectively + + // This is only because 30 has been bonded on the fly, exposures are stored at the very end of the era. + // 35 is the point, not 'own' Exposure. + assert_eq!(Staking::stakers(30).own, 0); + assert_eq!(Staking::stakers(30).total, 0 + 35); + // same as above. +25 is the point + assert_eq!(Staking::stakers(20).own, 2010); + assert_eq!(Staking::stakers(20).total, 2010 + 25); + + // 30(Z) was supported by B-4 and C-6 with stake 20 and 15 respectively. + assert_eq!(Staking::stakers(30).others.iter().map(|e| e.value).collect::>>(), vec![15, 20]); + assert_eq!(Staking::stakers(30).others.iter().map(|e| e.who).collect::>>(), vec![6, 4]); + + // 20(Y) was supported by A-2 and C-6 with stake 10 and 15 respectively. + assert_eq!(Staking::stakers(20).others.iter().map(|e| e.value).collect::>>(), vec![15, 10]); + assert_eq!(Staking::stakers(20).others.iter().map(|e| e.who).collect::>>(), vec![6, 2]); + }); +} + +#[test] +fn phragmen_election_works() { + // tests the encapsulated phragmen::elect function. + with_externalities(&mut ExtBuilder::default().nominate(false).build(), || { + // initial setup of 10 and 20, both validators + assert_eq!(Session::validators(), vec![20, 10]); + + // no one is a nominator + assert_eq!(>::enumerate().count(), 0 as usize); + + // Bond [30, 31] as the third validator + assert_ok!(Staking::bond(Origin::signed(31), 30, 1000, RewardDestination::default())); + assert_ok!(Staking::validate(Origin::signed(30), ValidatorPrefs::default())); + + // bond [2,1](A), [4,3](B), as 2 nominators + // Give all of them some balance to be able to bond properly. + for i in &[1, 3] { Balances::set_free_balance(i, 50); } + assert_ok!(Staking::bond(Origin::signed(1), 2, 5, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); + + assert_ok!(Staking::bond(Origin::signed(3), 4, 45, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(4), vec![10, 30])); + + let rounds = || 2 as usize; + let validators = || >::enumerate(); + let nominators = || >::enumerate(); + let stash_of = |w| Staking::stash_balance(&w); + let min_validator_count = Staking::minimum_validator_count() as usize; + + let winners = phragmen::elect::( + rounds, + validators, + nominators, + stash_of, + min_validator_count + ); + + // 10 and 30 must be the winners + assert_eq!(winners.iter().map(|w| w.who).collect::>>(), vec![10, 30]); + + let winner_10 = winners.iter().filter(|w| w.who == 10).nth(0).unwrap(); + let winner_30 = winners.iter().filter(|w| w.who == 30).nth(0).unwrap(); + + // python implementation output: + /* + 10 is elected with stake 26.31578947368421 and score 0.02 + 30 is elected with stake 23.684210526315788 and score 0.042222222222222223 + + 2 has load 0.02 and supported + 10 with stake 5.0 20 with stake 0.0 + 4 has load 0.042222222222222223 and supported + 10 with stake 21.31578947368421 30 with stake 23.684210526315788 + */ + + assert_eq!(winner_10.exposure.total, 1000 + 26); + assert_eq!(winner_10.score, Perquintill::from_fraction(0.02)); + assert_eq!(winner_10.exposure.others[0].value, 21); + assert_eq!(winner_10.exposure.others[1].value, 5); + + assert_eq!(winner_30.exposure.total, 23); + assert_eq!(winner_30.score, Perquintill::from_quintillionths(42222222222222222)); + assert_eq!(winner_30.exposure.others[0].value, 23); + }) +} + +#[test] +fn switching_roles() { + // Show: It should be possible to switch between roles (nominator, validator, idle) with minimal overhead. + with_externalities(&mut ExtBuilder::default() + .nominate(false) + .sessions_per_era(3) + .build(), + || { + assert_eq!(Session::validators(), vec![20, 10]); + + // put some money in account that we'll use. + for i in 1..7 { Balances::set_free_balance(&i, 5000); } + + // add 2 nominators + assert_ok!(Staking::bond(Origin::signed(1), 2, 2000, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 6])); + + assert_ok!(Staking::bond(Origin::signed(3), 4, 500, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(4), vec![20, 2])); + + // add a new validator candidate + assert_ok!(Staking::bond(Origin::signed(5), 6, 1500, RewardDestination::Controller)); + assert_ok!(Staking::validate(Origin::signed(6), ValidatorPrefs::default())); + + // new block + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + + // no change + assert_eq!(Session::validators(), vec![20, 10]); + + // new block + System::set_block_number(2); + Session::check_rotate_session(System::block_number()); + + // no change + assert_eq!(Session::validators(), vec![20, 10]); + + // new block --> ne era --> new validators + System::set_block_number(3); + Session::check_rotate_session(System::block_number()); + + // with current nominators 10 and 4 have the most stake + assert_eq!(Session::validators(), vec![6, 10]); + + // 2 decides to be a validator. Consequences: + // 6 will not be chosen in the next round (no votes) + // 2 itself will be chosen + 20 who now has the higher votes + // 10 wil have no votes. + assert_ok!(Staking::validate(Origin::signed(2), ValidatorPrefs::default())); + + System::set_block_number(4); + Session::check_rotate_session(System::block_number()); + assert_eq!(Session::validators(), vec![6, 10]); + + System::set_block_number(5); + Session::check_rotate_session(System::block_number()); + assert_eq!(Session::validators(), vec![6, 10]); + + // ne era + System::set_block_number(6); + Session::check_rotate_session(System::block_number()); + assert_eq!(Session::validators(), vec![2, 20]); + }); +} + +#[test] +fn wrong_vote_is_null() { + with_externalities(&mut ExtBuilder::default() + .session_length(1) + .sessions_per_era(1) + .nominate(false) + .validator_pool(true) + .build(), + || { + // from the first era onward, only two will be chosen + assert_eq!(Session::validators(), vec![40, 30, 20, 10]); + + // put some money in account that we'll use. + for i in 1..3 { Balances::set_free_balance(&i, 5000); } + + // add 1 nominators + assert_ok!(Staking::bond(Origin::signed(1), 2, 2000, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(2), vec![ + 10, 20, // good votes + 1, 2, 15, 1000, 25 // crap votes. No effect. + ])); + + // new block + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators(), vec![20, 10]); + }); +} -- GitLab From fde1762b54897be24125a02254067fc18b5763ed Mon Sep 17 00:00:00 2001 From: Marcio Diaz Date: Thu, 14 Mar 2019 12:24:29 +0100 Subject: [PATCH 022/120] Import blocks with bad justification (#1977) * init version * chore: improve code * fix test * fix: log error resulting of bad justification * fix: add test to check for disconnected peer --- core/consensus/common/src/block_import.rs | 3 ++ core/consensus/common/src/import_queue.rs | 34 ++++++++++++----- core/finality-grandpa/src/import.rs | 8 +++- core/finality-grandpa/src/tests.rs | 45 ++++++++++++++++++++++- core/network/src/test/block_import.rs | 2 +- 5 files changed, 78 insertions(+), 14 deletions(-) diff --git a/core/consensus/common/src/block_import.rs b/core/consensus/common/src/block_import.rs index 01b3d24452..06c78d74af 100644 --- a/core/consensus/common/src/block_import.rs +++ b/core/consensus/common/src/block_import.rs @@ -40,6 +40,8 @@ pub struct ImportedAux { pub clear_justification_requests: bool, /// Request a justification for the given block. pub needs_justification: bool, + /// Received a bad justification. + pub bad_justification: bool, } impl Default for ImportedAux { @@ -47,6 +49,7 @@ impl Default for ImportedAux { ImportedAux { clear_justification_requests: false, needs_justification: false, + bad_justification: false, } } } diff --git a/core/consensus/common/src/import_queue.rs b/core/consensus/common/src/import_queue.rs index 08a25e566b..997b30ed6f 100644 --- a/core/consensus/common/src/import_queue.rs +++ b/core/consensus/common/src/import_queue.rs @@ -309,7 +309,7 @@ impl BlockImporter { match result { Ok(BlockImportResult::ImportedKnown(number)) => link.block_imported(&hash, number), - Ok(BlockImportResult::ImportedUnknown(number, aux)) => { + Ok(BlockImportResult::ImportedUnknown(number, aux, who)) => { link.block_imported(&hash, number); if aux.clear_justification_requests { @@ -321,6 +321,12 @@ impl BlockImporter { trace!(target: "sync", "Block imported but requires justification {}: {:?}", number, hash); link.request_justification(&hash, number); } + + if aux.bad_justification { + if let Some(peer) = who { + link.useless_peer(peer, "Sent block with bad justification to import"); + } + } }, Err(BlockImportError::IncompleteHeader(who)) => { if let Some(peer) = who { @@ -428,12 +434,12 @@ impl> BlockImportWorker { let import_result = if has_error { Err(BlockImportError::Error) } else { - import_single_block( - &*self.block_import, - origin.clone(), - block.clone(), - self.verifier.clone(), - ) + import_single_block( + &*self.block_import, + origin.clone(), + block.clone(), + self.verifier.clone(), + ) }; let was_ok = import_result.is_ok(); results.push((import_result, block.hash)); @@ -479,7 +485,7 @@ pub enum BlockImportResult { /// Imported known block. ImportedKnown(N), /// Imported unknown block. - ImportedUnknown(N, ImportedAux), + ImportedUnknown(N, ImportedAux, Option), } /// Block import error. @@ -528,7 +534,7 @@ pub fn import_single_block>( trace!(target: "sync", "Block already in chain {}: {:?}", number, hash); Ok(BlockImportResult::ImportedKnown(number)) }, - Ok(ImportResult::Imported(aux)) => Ok(BlockImportResult::ImportedUnknown(number, aux)), + Ok(ImportResult::Imported(aux)) => Ok(BlockImportResult::ImportedUnknown(number, aux, peer)), Ok(ImportResult::UnknownParent) => { debug!(target: "sync", "Block with unknown parent {}: {:?}, parent: {:?}", number, hash, parent); Err(BlockImportError::UnknownParent) @@ -627,10 +633,18 @@ mod tests { assert_eq!(link_port.recv(), Ok(LinkMsg::BlockImported)); // Send an unknown - let results = vec![(Ok(BlockImportResult::ImportedUnknown(Default::default(), Default::default())), Default::default())]; + let results = vec![(Ok(BlockImportResult::ImportedUnknown(Default::default(), Default::default(), None)), Default::default())]; let _ = result_sender.send(BlockImportWorkerMsg::Imported(results)).ok().unwrap(); assert_eq!(link_port.recv(), Ok(LinkMsg::BlockImported)); + // Send an unknown with peer and bad justification + let results = vec![(Ok(BlockImportResult::ImportedUnknown(Default::default(), + ImportedAux { needs_justification: true, clear_justification_requests: false, bad_justification: true }, + Some(0))), Default::default())]; + let _ = result_sender.send(BlockImportWorkerMsg::Imported(results)).ok().unwrap(); + assert_eq!(link_port.recv(), Ok(LinkMsg::BlockImported)); + assert_eq!(link_port.recv(), Ok(LinkMsg::Disconnected)); + // Send an incomplete header let results = vec![(Err(BlockImportError::IncompleteHeader(Some(Default::default()))), Default::default())]; let _ = result_sender.send(BlockImportWorkerMsg::Imported(results)).ok().unwrap(); diff --git a/core/finality-grandpa/src/import.rs b/core/finality-grandpa/src/import.rs index 7e1582645f..9ff3486b86 100644 --- a/core/finality-grandpa/src/import.rs +++ b/core/finality-grandpa/src/import.rs @@ -460,7 +460,12 @@ impl, RA, PRA> BlockImport match justification { Some(justification) => { - self.import_justification(hash, number, justification, needs_justification)?; + self.import_justification(hash, number, justification, needs_justification).unwrap_or_else(|err| { + debug!(target: "finality", "Imported block #{} that enacts authority set change with \ + invalid justification: {:?}, requesting justification from peers.", number, err); + imported_aux.bad_justification = true; + imported_aux.needs_justification = true; + }); }, None => { if needs_justification { @@ -476,7 +481,6 @@ impl, RA, PRA> BlockImport if enacts_consensus_change { self.consensus_changes.lock().note_change((number, hash)); } - imported_aux.needs_justification = true; } } diff --git a/core/finality-grandpa/src/tests.rs b/core/finality-grandpa/src/tests.rs index 9aed819b25..c6efee1f39 100644 --- a/core/finality-grandpa/src/tests.rs +++ b/core/finality-grandpa/src/tests.rs @@ -992,7 +992,50 @@ fn allows_reimporting_change_blocks() { assert_eq!( block_import.import_block(block(), None).unwrap(), - ImportResult::Imported(ImportedAux { needs_justification: true, clear_justification_requests: false }), + ImportResult::Imported(ImportedAux { needs_justification: true, clear_justification_requests: false, bad_justification: false }), + ); + + assert_eq!( + block_import.import_block(block(), None).unwrap(), + ImportResult::AlreadyInChain + ); +} + +#[test] +fn test_bad_justification() { + let peers_a = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; + let peers_b = &[Keyring::Alice, Keyring::Bob]; + let voters = make_ids(peers_a); + let api = TestApi::new(voters); + let net = GrandpaTestNet::new(api.clone(), 3); + + let client = net.peer(0).client().clone(); + let (block_import, ..) = net.make_block_import(client.clone()); + + let builder = client.new_block_at(&BlockId::Number(0)).unwrap(); + let block = builder.bake().unwrap(); + api.scheduled_changes.lock().insert(*block.header.parent_hash(), ScheduledChange { + next_authorities: make_ids(peers_b), + delay: 0, + }); + + let block = || { + let block = block.clone(); + ImportBlock { + origin: BlockOrigin::File, + header: block.header, + justification: Some(Vec::new()), + post_digests: Vec::new(), + body: Some(block.extrinsics), + finalized: false, + auxiliary: Vec::new(), + fork_choice: ForkChoiceStrategy::LongestChain, + } + }; + + assert_eq!( + block_import.import_block(block(), None).unwrap(), + ImportResult::Imported(ImportedAux { needs_justification: true, clear_justification_requests: false, bad_justification: true }), ); assert_eq!( diff --git a/core/network/src/test/block_import.rs b/core/network/src/test/block_import.rs index bc25078caa..0916d698c3 100644 --- a/core/network/src/test/block_import.rs +++ b/core/network/src/test/block_import.rs @@ -48,7 +48,7 @@ fn import_single_good_block_works() { let (_, _hash, number, block) = prepare_good_block(); assert_eq!( import_single_block(&test_client::new(), BlockOrigin::File, block, Arc::new(PassThroughVerifier(true))), - Ok(BlockImportResult::ImportedUnknown(number, Default::default())) + Ok(BlockImportResult::ImportedUnknown(number, Default::default(), Some(0))) ); } -- GitLab From 48d989044fe71b45a35eb4beb3df6b2afb1256b5 Mon Sep 17 00:00:00 2001 From: thiolliere Date: Thu, 14 Mar 2019 13:50:38 +0100 Subject: [PATCH 023/120] fix grandpa test (#1996) --- core/finality-grandpa/src/tests.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/finality-grandpa/src/tests.rs b/core/finality-grandpa/src/tests.rs index c6efee1f39..a6a9f32a9d 100644 --- a/core/finality-grandpa/src/tests.rs +++ b/core/finality-grandpa/src/tests.rs @@ -1003,8 +1003,8 @@ fn allows_reimporting_change_blocks() { #[test] fn test_bad_justification() { - let peers_a = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie]; - let peers_b = &[Keyring::Alice, Keyring::Bob]; + let peers_a = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob, AuthorityKeyring::Charlie]; + let peers_b = &[AuthorityKeyring::Alice, AuthorityKeyring::Bob]; let voters = make_ids(peers_a); let api = TestApi::new(voters); let net = GrandpaTestNet::new(api.clone(), 3); -- GitLab From 8162aa355d84bea6893d6b39bb68c6104e45de8a Mon Sep 17 00:00:00 2001 From: thiolliere Date: Thu, 14 Mar 2019 16:35:52 +0100 Subject: [PATCH 024/120] improve modules doc generation by support macros (#1975) --- srml/support/src/dispatch.rs | 69 +++++++++++++++++------------------- srml/support/src/event.rs | 4 +++ 2 files changed, 37 insertions(+), 36 deletions(-) diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index 301d346df4..9f30f6195b 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -487,12 +487,10 @@ macro_rules! decl_module { $(#[doc = $doc_attr:tt])* $vis:vis fn $name:ident ( root $(, $param:ident : $param_ty:ty )* ) { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> $module<$trait_instance> { - $(#[doc = $doc_attr])* - $vis fn $name($( $param: $param_ty ),* ) -> $crate::dispatch::Result { - { $( $impl )* } - Ok(()) - } + $(#[doc = $doc_attr])* + $vis fn $name($( $param: $param_ty ),* ) -> $crate::dispatch::Result { + { $( $impl )* } + Ok(()) } }; @@ -505,11 +503,9 @@ macro_rules! decl_module { root $(, $param:ident : $param_ty:ty )* ) -> $result:ty { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> $module<$trait_instance> { - $(#[doc = $doc_attr])* - $vis fn $name($( $param: $param_ty ),* ) -> $result { - $( $impl )* - } + $(#[doc = $doc_attr])* + $vis fn $name($( $param: $param_ty ),* ) -> $result { + $( $impl )* } }; @@ -522,14 +518,12 @@ macro_rules! decl_module { $origin:ident $(, $param:ident : $param_ty:ty )* ) { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> $module<$trait_instance> { - $(#[doc = $doc_attr])* - $vis fn $name( - $origin: $origin_ty $(, $param: $param_ty )* - ) -> $crate::dispatch::Result { - { $( $impl )* } - Ok(()) - } + $(#[doc = $doc_attr])* + $vis fn $name( + $origin: $origin_ty $(, $param: $param_ty )* + ) -> $crate::dispatch::Result { + { $( $impl )* } + Ok(()) } }; @@ -542,11 +536,9 @@ macro_rules! decl_module { $origin:ident $(, $param:ident : $param_ty:ty )* ) -> $result:ty { $( $impl:tt )* } ) => { - impl<$trait_instance: $trait_name> $module<$trait_instance> { - $(#[doc = $doc_attr])* - $vis fn $name($origin: $origin_ty $(, $param: $param_ty )* ) -> $result { - $( $impl )* - } + $(#[doc = $doc_attr])* + $vis fn $name($origin: $origin_ty $(, $param: $param_ty )* ) -> $result { + $( $impl )* } }; @@ -601,18 +593,23 @@ macro_rules! decl_module { $( $deposit_event )* } - $( - decl_module! { - @impl_function - $mod_type<$trait_instance: $trait_name>; - $origin_type; - $from; - $(#[doc = $doc_attr])* - $fn_vis fn $fn_name ( - $from $(, $param_name : $param )* - ) $( -> $result )* { $( $impl )* } - } - )* + /// Can also be called using [`Call`]. + /// + /// [`Call`]: enum.Call.html + impl<$trait_instance: $trait_name> $mod_type<$trait_instance> { + $( + decl_module! { + @impl_function + $mod_type<$trait_instance: $trait_name>; + $origin_type; + $from; + $(#[doc = $doc_attr])* + $fn_vis fn $fn_name ( + $from $(, $param_name : $param )* + ) $( -> $result )* { $( $impl )* } + } + )* + } #[cfg(feature = "std")] $(#[$attr])* diff --git a/srml/support/src/event.rs b/srml/support/src/event.rs index 50c2947814..c945360f9c 100644 --- a/srml/support/src/event.rs +++ b/srml/support/src/event.rs @@ -227,6 +227,10 @@ macro_rules! __decl_generic_event { { $( $events:tt )* }; { ,$( $generic_param:ident = $generic_type:ty ),* }; ) => { + /// [`RawEvent`] specialized for the configuration [`Trait`] + /// + /// [`RawEvent`]: enum.RawEvent.html + /// [`Trait`]: trait.Trait.html pub type Event<$event_generic_param> = RawEvent<$( $generic_type ),*>; // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, PartialEq, Eq, $crate::codec::Encode, $crate::codec::Decode)] -- GitLab From 6945bdf4f0631889e16672400e56c32628c118af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Thu, 14 Mar 2019 21:29:12 +0100 Subject: [PATCH 025/120] Prerequisites for `validate_block` in Cumulus (#1926) * Adds benchmark for direct/indirect wasm function calls * Store the benchmark function pointer in a `Cell` * Add some documentation * Make function implementations exchangeable * Add parachain stub * Add macro for registering the `validate_block` function * Make all functions replace-able by unimplemented * Some more refactoring * Adds tests for executing empty parachain block * Work on a new test with empty witness data * Don't exchange `ext_print_*` stuff * Some cleanup and one more function for `validate_block` * More tests and more functions * Fixes after merging master * Use `parity-codec` `derive` feature * CHange implementation of `wasm-nice-panic-message` * Move `parachain` stuff to cumulus * Updated wasm files * Integrate feedback * Switch to `ExchangeableFunction` struct * More fixes * Switch to Cell and panic on multiple replaces * Increase `impl_version` * Fix shifting * Make the API more verbose of `ExchangeableFunction` * Increase `impl_version` --- Cargo.lock | 35 +- core/executor/src/wasm_executor.rs | 100 ++++-- core/sr-api-macros/benches/bench.rs | 15 +- core/sr-io/Cargo.toml | 1 + core/sr-io/without_std.rs | 300 +++++++++++++++--- core/state-machine/src/lib.rs | 2 +- core/test-runtime/Cargo.toml | 2 + core/test-runtime/src/lib.rs | 44 ++- core/test-runtime/src/system.rs | 48 +-- core/test-runtime/wasm/Cargo.lock | 65 +++- .../substrate_test_runtime.compact.wasm | Bin 56878 -> 56647 bytes node/runtime/src/lib.rs | 2 +- node/runtime/wasm/Cargo.lock | 44 +-- .../release/node_runtime.compact.wasm | Bin 875322 -> 874401 bytes srml/executive/src/lib.rs | 83 +++-- srml/support/src/storage/mod.rs | 2 +- srml/system/src/lib.rs | 3 +- 17 files changed, 577 insertions(+), 169 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0da61066df..9eb942aae8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -136,7 +136,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -194,7 +194,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "cexpr 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "clang-sys 0.26.4 (registry+https://github.com/rust-lang/crates.io-index)", "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -330,7 +330,7 @@ dependencies = [ [[package]] name = "cfg-if" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -453,7 +453,7 @@ name = "crossbeam" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -496,7 +496,7 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -510,7 +510,7 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -522,7 +522,7 @@ name = "crossbeam-utils" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -530,7 +530,7 @@ name = "crossbeam-utils" version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1675,7 +1675,7 @@ name = "log" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1701,7 +1701,7 @@ name = "memchr" version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1838,7 +1838,7 @@ name = "net2" version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1850,7 +1850,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2095,7 +2095,7 @@ version = "0.10.16" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4176,7 +4176,7 @@ dependencies = [ name = "substrate-test-runtime" version = "0.1.0" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "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)", @@ -4186,6 +4186,7 @@ dependencies = [ "sr-primitives 0.1.0", "sr-std 0.1.0", "sr-version 0.1.0", + "srml-executive 0.1.0", "srml-support 0.1.0", "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", @@ -4282,7 +4283,7 @@ name = "sysinfo" version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4312,7 +4313,7 @@ name = "tempfile" version = "3.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5034,7 +5035,7 @@ dependencies = [ "checksum cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427" "checksum cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)" = "389803e36973d242e7fecb092b2de44a3d35ac62524b3b9339e51d577d668e02" "checksum cexpr 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "644d693ecfa91955ed32dcc7eda4914e1be97a641fb6f0645a37348e20b230da" -"checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4" +"checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4" "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878" "checksum clang-sys 0.26.4 (registry+https://github.com/rust-lang/crates.io-index)" = "6ef0c1bcf2e99c649104bd7a7012d8f8802684400e03db0ec0af48583c6fa0e4" "checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e" diff --git a/core/executor/src/wasm_executor.rs b/core/executor/src/wasm_executor.rs index 7e45982698..7e6833bb78 100644 --- a/core/executor/src/wasm_executor.rs +++ b/core/executor/src/wasm_executor.rs @@ -23,7 +23,7 @@ use secp256k1; use wasmi::{ Module, ModuleInstance, MemoryInstance, MemoryRef, TableRef, ImportsBuilder, ModuleRef, }; -use wasmi::RuntimeValue::{I32, I64}; +use wasmi::RuntimeValue::{I32, I64, self}; use wasmi::memory_units::{Pages}; use state_machine::Externalities; use crate::error::{Error, ErrorKind, Result}; @@ -393,10 +393,12 @@ impl_function_executor!(this: FunctionExecutor<'e, E>, .map_err(|_| UserError("Invalid attempt to get parent_hash in ext_storage_changes_root"))?; parent_hash.as_mut().copy_from_slice(&raw_parent_hash[..]); let r = this.ext.storage_changes_root(parent_hash, parent_number); - if let Some(ref r) = r { + if let Some(r) = r { this.memory.set(result, &r[..]).map_err(|_| UserError("Invalid attempt to set memory in ext_storage_changes_root"))?; + Ok(1) + } else { + Ok(0) } - Ok(if r.is_some() { 1u32 } else { 0u32 }) }, ext_blake2_256_enumerated_trie_root(values_data: *const u8, lens_data: *const u32, lens_len: u32, result: *mut u8) => { let values = (0..lens_len) @@ -637,17 +639,19 @@ impl_function_executor!(this: FunctionExecutor<'e, E>, /// /// Executes the provided code in a sandboxed wasm runtime. #[derive(Debug, Clone)] -pub struct WasmExecutor { -} +pub struct WasmExecutor; impl WasmExecutor { /// Create a new instance. pub fn new() -> Self { - WasmExecutor{} + WasmExecutor } /// Call a given method in the given code. + /// + /// Signature of this method needs to be `(I32, I32) -> I64`. + /// /// This should be used for tests only. pub fn call>( &self, @@ -656,12 +660,34 @@ impl WasmExecutor { code: &[u8], method: &str, data: &[u8], - ) -> Result> { + ) -> Result> { let module = ::wasmi::Module::from_buffer(code)?; let module = self.prepare_module(ext, heap_pages, &module)?; self.call_in_wasm_module(ext, &module, method, data) } + /// Call a given method with a custom signature in the given code. + /// + /// This should be used for tests only. + pub fn call_with_custom_signature< + E: Externalities, + F: FnOnce(&mut FnMut(&[u8]) -> Result) -> Result>, + FR: FnOnce(Option, &MemoryRef) -> Result>, + R, + >( + &self, + ext: &mut E, + heap_pages: usize, + code: &[u8], + method: &str, + create_parameters: F, + filter_result: FR, + ) -> Result { + let module = wasmi::Module::from_buffer(code)?; + let module = self.prepare_module(ext, heap_pages, &module)?; + self.call_in_wasm_module_with_custom_signature(ext, &module, method, create_parameters, filter_result) + } + fn get_mem_instance(module: &ModuleRef) -> Result { Ok(module .export_by_name("memory") @@ -679,6 +705,40 @@ impl WasmExecutor { method: &str, data: &[u8], ) -> Result> { + self.call_in_wasm_module_with_custom_signature( + ext, + module_instance, + method, + |alloc| { + let offset = alloc(data)?; + Ok(vec![I32(offset as i32), I32(data.len() as i32)]) + }, + |res, memory| { + if let Some(I64(r)) = res { + let offset = r as u32; + let length = (r as u64 >> 32) as usize; + memory.get(offset, length).map_err(|_| ErrorKind::Runtime.into()).map(Some) + } else { + Ok(None) + } + } + ) + } + + /// Call a given method in the given wasm-module runtime. + fn call_in_wasm_module_with_custom_signature< + E: Externalities, + F: FnOnce(&mut FnMut(&[u8]) -> Result) -> Result>, + FR: FnOnce(Option, &MemoryRef) -> Result>, + R, + >( + &self, + ext: &mut E, + module_instance: &ModuleRef, + method: &str, + create_parameters: F, + filter_result: FR, + ) -> Result { // extract a reference to a linear memory, optional reference to a table // and then initialize FunctionExecutor. let memory = Self::get_mem_instance(module_instance)?; @@ -689,26 +749,22 @@ impl WasmExecutor { let low = memory.lowest_used(); let used_mem = memory.used_size(); let mut fec = FunctionExecutor::new(memory.clone(), table, ext)?; - let size = data.len() as u32; - let offset = fec.heap.allocate(size).map_err(|_| ErrorKind::Runtime)?; - memory.set(offset, &data)?; + let parameters = create_parameters(&mut |data: &[u8]| { + let offset = fec.heap.allocate(data.len() as u32).map_err(|_| ErrorKind::Runtime)?; + memory.set(offset, &data)?; + Ok(offset) + })?; let result = module_instance.invoke_export( method, - &[ - I32(offset as i32), - I32(size as i32) - ], + ¶meters, &mut fec ); let result = match result { - Ok(Some(I64(r))) => { - let offset = r as u32; - let length = (r >> 32) as u32 as usize; - memory.get(offset, length) - .map_err(|_| ErrorKind::Runtime.into()) + Ok(val) => match filter_result(val, &memory)? { + Some(val) => Ok(val), + None => Err(ErrorKind::InvalidReturn.into()), }, - Ok(_) => Err(ErrorKind::InvalidReturn.into()), Err(e) => { trace!(target: "wasm-executor", "Failed to execute code with {} pages", memory.current_size().0); Err(e.into()) @@ -738,7 +794,7 @@ impl WasmExecutor { module, &ImportsBuilder::new() .with_resolver("env", FunctionExecutor::::resolver()) - )?; + )?; // extract a reference to a linear memory, optional reference to a table // and then initialize FunctionExecutor. @@ -759,7 +815,7 @@ impl WasmExecutor { #[cfg(test)] mod tests { use super::*; - + use parity_codec::Encode; use state_machine::TestExternalities; diff --git a/core/sr-api-macros/benches/bench.rs b/core/sr-api-macros/benches/bench.rs index 85ea3d6f88..f467721789 100644 --- a/core/sr-api-macros/benches/bench.rs +++ b/core/sr-api-macros/benches/bench.rs @@ -14,9 +14,10 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use criterion::Criterion; +use criterion::{Criterion, criterion_group, criterion_main}; use test_client::runtime::TestAPI; use runtime_primitives::{generic::BlockId, traits::ProvideRuntimeApi}; +use state_machine::ExecutionStrategy; fn sr_api_benchmark(c: &mut Criterion) { c.bench_function("add one with same runtime api", |b| { @@ -50,6 +51,18 @@ fn sr_api_benchmark(c: &mut Criterion) { b.iter_with_large_drop(|| client.runtime_api().benchmark_vector_add_one(&block_id, &data)) }); + + c.bench_function("calling function by function pointer in wasm", |b| { + let client = test_client::new_with_execution_strategy(ExecutionStrategy::AlwaysWasm); + let block_id = BlockId::Number(client.info().unwrap().chain.best_number); + b.iter(|| client.runtime_api().benchmark_indirect_call(&block_id).unwrap()) + }); + + c.bench_function("calling function in wasm", |b| { + let client = test_client::new_with_execution_strategy(ExecutionStrategy::AlwaysWasm); + let block_id = BlockId::Number(client.info().unwrap().chain.best_number); + b.iter(|| client.runtime_api().benchmark_direct_call(&block_id).unwrap()) + }); } criterion_group!(benches, sr_api_benchmark); diff --git a/core/sr-io/Cargo.toml b/core/sr-io/Cargo.toml index 01907832f8..fa04c17e3f 100644 --- a/core/sr-io/Cargo.toml +++ b/core/sr-io/Cargo.toml @@ -35,3 +35,4 @@ std = [ ] nightly = [] strict = [] +wasm-nice-panic-message = [] \ No newline at end of file diff --git a/core/sr-io/without_std.rs b/core/sr-io/without_std.rs index 7763ddf04a..41dc530d56 100644 --- a/core/sr-io/without_std.rs +++ b/core/sr-io/without_std.rs @@ -20,19 +20,27 @@ pub use parity_codec as codec; pub use rstd; pub use rstd::{mem, slice}; -use core::intrinsics; -use rstd::vec::Vec; +use core::{intrinsics, panic::PanicInfo}; +use rstd::{vec::Vec, cell::Cell}; use hash_db::Hasher; use primitives::Blake2Hasher; #[panic_handler] #[no_mangle] -pub fn panic(info: &::core::panic::PanicInfo) -> ! { +pub fn panic(info: &PanicInfo) -> ! { unsafe { - if let Some(loc) = info.location() { - ext_print_utf8(loc.file().as_ptr() as *const u8, loc.file().len() as u32); - ext_print_num(loc.line() as u64); - ext_print_num(loc.column() as u64); + #[cfg(feature = "wasm-nice-panic-message")] + { + let message = rstd::alloc::format!("{}", info); + extern_functions_host_impl::ext_print_utf8(message.as_ptr() as *const u8, message.len() as u32); + } + #[cfg(not(feature = "wasm-nice-panic-message"))] + { + if let Some(loc) = info.location() { + extern_functions_host_impl::ext_print_utf8(loc.file().as_ptr() as *const u8, loc.file().len() as u32); + extern_functions_host_impl::ext_print_num(loc.line() as u64); + extern_functions_host_impl::ext_print_num(loc.column() as u64); + } } intrinsics::abort() } @@ -43,41 +51,223 @@ pub extern fn oom(_: ::core::alloc::Layout) -> ! { static OOM_MSG: &str = "Runtime memory exhausted. Aborting"; unsafe { - ext_print_utf8(OOM_MSG.as_ptr(), OOM_MSG.len() as u32); + extern_functions_host_impl::ext_print_utf8(OOM_MSG.as_ptr(), OOM_MSG.len() as u32); intrinsics::abort(); } } +/// The state of an exchangeable function. +#[derive(Clone, Copy)] +enum ExchangeableFunctionState { + Original, + Replaced, +} + +/// A function which implementation can be exchanged. +/// +/// Internally this works by swapping function pointers. +pub struct ExchangeableFunction(Cell<(T, ExchangeableFunctionState)>); + +impl ExchangeableFunction { + /// Create a new instance of `ExchangeableFunction`. + pub const fn new(impl_: T) -> Self { + Self(Cell::new((impl_, ExchangeableFunctionState::Original))) + } +} + +impl ExchangeableFunction { + /// Replace the implementation with `new_impl`. + /// + /// # Panics + /// + /// Panics when trying to replace an already replaced implementation. + /// + /// # Returns + /// + /// Returns the original implementation wrapped in [`RestoreImplementation`]. + pub fn replace_implementation(&'static self, new_impl: T) -> RestoreImplementation { + if let ExchangeableFunctionState::Replaced = self.0.get().1 { + panic!("Trying to replace an already replaced implementation!") + } + + let old = self.0.replace((new_impl, ExchangeableFunctionState::Replaced)); + + RestoreImplementation(self, Some(old.0)) + } + + /// Restore the original implementation. + fn restore_orig_implementation(&self, orig: T) { + self.0.set((orig, ExchangeableFunctionState::Original)); + } + + /// Returns the internal function pointer. + pub fn get(&self) -> T { + self.0.get().0 + } +} + +// WASM does not support threads, so this is safe; qed. +unsafe impl Sync for ExchangeableFunction {} + +/// Restores a function implementation on drop. +/// +/// Stores a static reference to the function object and the original implementation. +pub struct RestoreImplementation(&'static ExchangeableFunction, Option); + +impl Drop for RestoreImplementation { + fn drop(&mut self) { + self.0.restore_orig_implementation(self.1.take().expect("Value is only taken on drop; qed")); + } +} + +/// Declare extern functions +macro_rules! extern_functions { + ( + $( + $( #[$attr:meta] )* + fn $name:ident ( $( $arg:ident : $arg_ty:ty ),* ) $( -> $ret:ty )?; + )* + ) => { + $( + $( #[$attr] )* + #[allow(non_upper_case_globals)] + pub static $name: ExchangeableFunction $ret )?> = + ExchangeableFunction::new(extern_functions_host_impl::$name); + )* + + /// The exchangeable extern functions host implementations. + mod extern_functions_host_impl { + $( + pub unsafe fn $name ( $( $arg : $arg_ty ),* ) $( -> $ret )? { + implementation::$name ( $( $arg ),* ) + } + )* + + mod implementation { + extern "C" { + $( + pub fn $name ( $( $arg : $arg_ty ),* ) $( -> $ret )?; + )* + } + } + } + }; +} + /// Host functions, provided by the executor. /// A WebAssembly runtime module would "import" these to access the execution environment /// (most importantly, storage) or perform heavy hash calculations. /// See also "ext_" functions in sr-sandbox and sr-std -extern "C" { - /// Printing, useful for debugging +extern_functions! { + /// Host functions for printing, useful for debugging. fn ext_print_utf8(utf8_data: *const u8, utf8_len: u32); fn ext_print_hex(data: *const u8, len: u32); fn ext_print_num(value: u64); - /// Host storage access and verification + /// Set value for key in storage. fn ext_set_storage(key_data: *const u8, key_len: u32, value_data: *const u8, value_len: u32); - fn ext_set_child_storage(storage_key_data: *const u8, storage_key_len: u32, key_data: *const u8, key_len: u32, value_data: *const u8, value_len: u32); + /// Remove key and value from storage. fn ext_clear_storage(key_data: *const u8, key_len: u32); - fn ext_clear_child_storage(storage_key_data: *const u8, storage_key_len: u32, key_data: *const u8, key_len: u32); + /// Checks if the given key exists in the storage. + /// + /// # Returns + /// + /// - `1` if the value exists. + /// - `0` if the value does not exists. fn ext_exists_storage(key_data: *const u8, key_len: u32) -> u32; - fn ext_exists_child_storage(storage_key_data: *const u8, storage_key_len: u32, key_data: *const u8, key_len: u32) -> u32; + /// Remove storage entries which key starts with given prefix. fn ext_clear_prefix(prefix_data: *const u8, prefix_len: u32); - fn ext_kill_child_storage(storage_key_data: *const u8, storage_key_len: u32); - /// Host-side result allocation + /// Gets the value of the given key from storage. + /// + /// The host allocates the memory for storing the value. + /// + /// # Returns + /// + /// - `0` if no value exists to the given key. `written_out` is set to `u32::max_value()`. + /// + /// - Otherwise, pointer to the value in memory. `written_out` contains the length of the value. fn ext_get_allocated_storage(key_data: *const u8, key_len: u32, written_out: *mut u32) -> *mut u8; - /// Host-side result allocation - fn ext_get_allocated_child_storage(storage_key_data: *const u8, storage_key_len: u32, key_data: *const u8, key_len: u32, written_out: *mut u32) -> *mut u8; + /// Gets the value of the given key from storage. + /// + /// The value is written into `value` starting at `value_offset`. + /// + /// If the value length is greater than `value_len - value_offset`, the value is written partially. + /// + /// # Returns + /// + /// - `u32::max_value()` if the value does not exists. + /// + /// - Otherwise, the number of bytes written for value. fn ext_get_storage_into(key_data: *const u8, key_len: u32, value_data: *mut u8, value_len: u32, value_offset: u32) -> u32; - fn ext_get_child_storage_into(storage_key_data: *const u8, storage_key_len: u32, key_data: *const u8, key_len: u32, value_data: *mut u8, value_len: u32, value_offset: u32) -> u32; + /// Gets the trie root of the storage. fn ext_storage_root(result: *mut u8); - /// Host-side result allocation - fn ext_child_storage_root(storage_key_data: *const u8, storage_key_len: u32, written_out: *mut u32) -> *mut u8; + /// Get the change trie root of the current storage overlay at a block with given parent. + /// + /// # Returns + /// + /// - `1` if the change trie root was found. + /// - `0` if the change trie root was not found. fn ext_storage_changes_root(parent_hash_data: *const u8, parent_hash_len: u32, parent_num: u64, result: *mut u8) -> u32; + /// A child storage function. + /// + /// See [`ext_set_storage`] for details. + /// + /// A child storage is used e.g. by a contract. + fn ext_set_child_storage(storage_key_data: *const u8, storage_key_len: u32, key_data: *const u8, key_len: u32, value_data: *const u8, value_len: u32); + /// A child storage function. + /// + /// See [`ext_clear_storage`] for details. + /// + /// A child storage is used e.g. by a contract. + fn ext_clear_child_storage(storage_key_data: *const u8, storage_key_len: u32, key_data: *const u8, key_len: u32); + /// A child storage function. + /// + /// See [`ext_exists_storage`] for details. + /// + /// A child storage is used e.g. by a contract. + fn ext_exists_child_storage(storage_key_data: *const u8, storage_key_len: u32, key_data: *const u8, key_len: u32) -> u32; + /// A child storage function. + /// + /// See [`ext_kill_storage`] for details. + /// + /// A child storage is used e.g. by a contract. + fn ext_kill_child_storage(storage_key_data: *const u8, storage_key_len: u32); + /// A child storage function. + /// + /// See [`ext_get_allocated_storage`] for details. + /// + /// A child storage is used e.g. by a contract. + fn ext_get_allocated_child_storage( + storage_key_data: *const u8, + storage_key_len: u32, + key_data: *const u8, + key_len: u32, + written_out: *mut u32 + ) -> *mut u8; + /// A child storage function. + /// + /// See [`ext_get_storage_into`] for details. + /// + /// A child storage is used e.g. by a contract. + fn ext_get_child_storage_into( + storage_key_data: *const u8, + storage_key_len: u32, + key_data: *const u8, + key_len: u32, + value_data: *mut u8, + value_len: u32, + value_offset: u32 + ) -> u32; + /// Commits all changes and calculates the child-storage root. + /// + /// A child storage is used e.g. by a contract. + /// + /// # Returns + /// + /// - The pointer to the result vector and `written_out` contains its length. + fn ext_child_storage_root(storage_key_data: *const u8, storage_key_len: u32, written_out: *mut u32) -> *mut u8; + /// The current relay chain identifier. fn ext_chain_id() -> u64; @@ -107,7 +297,7 @@ impl ExternTrieCrypto for Blake2Hasher { let values = values.iter().fold(Vec::new(), |mut acc, sl| { acc.extend_from_slice(sl); acc }); let mut result: [u8; 32] = Default::default(); unsafe { - ext_blake2_256_enumerated_trie_root( + ext_blake2_256_enumerated_trie_root.get()( values.as_ptr(), lengths.as_ptr(), lengths.len() as u32, @@ -122,7 +312,7 @@ impl ExternTrieCrypto for Blake2Hasher { pub fn storage(key: &[u8]) -> Option> { let mut length: u32 = 0; unsafe { - let ptr = ext_get_allocated_storage(key.as_ptr(), key.len() as u32, &mut length); + let ptr = ext_get_allocated_storage.get()(key.as_ptr(), key.len() as u32, &mut length); if length == u32::max_value() { None } else { @@ -138,7 +328,13 @@ pub fn storage(key: &[u8]) -> Option> { pub fn child_storage(storage_key: &[u8], key: &[u8]) -> Option> { let mut length: u32 = 0; unsafe { - let ptr = ext_get_allocated_child_storage(storage_key.as_ptr(), storage_key.len() as u32, key.as_ptr(), key.len() as u32, &mut length); + let ptr = ext_get_allocated_child_storage.get()( + storage_key.as_ptr(), + storage_key.len() as u32, + key.as_ptr(), + key.len() as u32, + &mut length + ); if length == u32::max_value() { None } else { @@ -153,7 +349,7 @@ pub fn child_storage(storage_key: &[u8], key: &[u8]) -> Option> { /// Set the storage of some particular key to Some value. pub fn set_storage(key: &[u8], value: &[u8]) { unsafe { - ext_set_storage( + ext_set_storage.get()( key.as_ptr(), key.len() as u32, value.as_ptr(), value.len() as u32 ); @@ -163,7 +359,7 @@ pub fn set_storage(key: &[u8], value: &[u8]) { /// Set the child storage of some particular key to Some value. pub fn set_child_storage(storage_key: &[u8], key: &[u8], value: &[u8]) { unsafe { - ext_set_child_storage( + ext_set_child_storage.get()( storage_key.as_ptr(), key.len() as u32, key.as_ptr(), key.len() as u32, value.as_ptr(), value.len() as u32 @@ -174,7 +370,7 @@ pub fn set_child_storage(storage_key: &[u8], key: &[u8], value: &[u8]) { /// Clear the storage of some particular key. pub fn clear_storage(key: &[u8]) { unsafe { - ext_clear_storage( + ext_clear_storage.get()( key.as_ptr(), key.len() as u32 ); } @@ -183,7 +379,7 @@ pub fn clear_storage(key: &[u8]) { /// Clear the storage of some particular key. pub fn clear_child_storage(storage_key: &[u8], key: &[u8]) { unsafe { - ext_clear_child_storage( + ext_clear_child_storage.get()( storage_key.as_ptr(), storage_key.len() as u32, key.as_ptr(), key.len() as u32 ); @@ -193,7 +389,7 @@ pub fn clear_child_storage(storage_key: &[u8], key: &[u8]) { /// Determine whether a particular key exists in storage. pub fn exists_storage(key: &[u8]) -> bool { unsafe { - ext_exists_storage( + ext_exists_storage.get()( key.as_ptr(), key.len() as u32 ) != 0 } @@ -202,7 +398,7 @@ pub fn exists_storage(key: &[u8]) -> bool { /// Determine whether a particular key exists in storage. pub fn exists_child_storage(storage_key: &[u8], key: &[u8]) -> bool { unsafe { - ext_exists_child_storage( + ext_exists_child_storage.get()( storage_key.as_ptr(), storage_key.len() as u32, key.as_ptr(), key.len() as u32 ) != 0 @@ -212,7 +408,7 @@ pub fn exists_child_storage(storage_key: &[u8], key: &[u8]) -> bool { /// Clear the storage entries key of which starts with the given prefix. pub fn clear_prefix(prefix: &[u8]) { unsafe { - ext_clear_prefix( + ext_clear_prefix.get()( prefix.as_ptr(), prefix.len() as u32 ); @@ -222,7 +418,7 @@ pub fn clear_prefix(prefix: &[u8]) { /// Clear an entire child storage. pub fn kill_child_storage(storage_key: &[u8]) { unsafe { - ext_kill_child_storage( + ext_kill_child_storage.get()( storage_key.as_ptr(), storage_key.len() as u32 ); @@ -233,10 +429,12 @@ pub fn kill_child_storage(storage_key: &[u8]) { /// the number of bytes that the key in storage was beyond the offset. pub fn read_storage(key: &[u8], value_out: &mut [u8], value_offset: usize) -> Option { unsafe { - match ext_get_storage_into( - key.as_ptr(), key.len() as u32, - value_out.as_mut_ptr(), value_out.len() as u32, - value_offset as u32 + match ext_get_storage_into.get()( + key.as_ptr(), + key.len() as u32, + value_out.as_mut_ptr(), + value_out.len() as u32, + value_offset as u32, ) { none if none == u32::max_value() => None, length => Some(length as usize), @@ -248,7 +446,7 @@ pub fn read_storage(key: &[u8], value_out: &mut [u8], value_offset: usize) -> Op /// the number of bytes that the key in storage was beyond the offset. pub fn read_child_storage(storage_key: &[u8], key: &[u8], value_out: &mut [u8], value_offset: usize) -> Option { unsafe { - match ext_get_child_storage_into( + match ext_get_child_storage_into.get()( storage_key.as_ptr(), storage_key.len() as u32, key.as_ptr(), key.len() as u32, value_out.as_mut_ptr(), value_out.len() as u32, @@ -264,7 +462,7 @@ pub fn read_child_storage(storage_key: &[u8], key: &[u8], value_out: &mut [u8], pub fn storage_root() -> [u8; 32] { let mut result: [u8; 32] = Default::default(); unsafe { - ext_storage_root(result.as_mut_ptr()); + ext_storage_root.get()(result.as_mut_ptr()); } result } @@ -273,7 +471,7 @@ pub fn storage_root() -> [u8; 32] { pub fn child_storage_root(storage_key: &[u8]) -> Option> { let mut length: u32 = 0; unsafe { - let ptr = ext_child_storage_root(storage_key.as_ptr(), storage_key.len() as u32, &mut length); + let ptr = ext_child_storage_root.get()(storage_key.as_ptr(), storage_key.len() as u32, &mut length); if length == u32::max_value() { None } else { @@ -289,7 +487,7 @@ pub fn child_storage_root(storage_key: &[u8]) -> Option> { pub fn storage_changes_root(parent_hash: [u8; 32], parent_num: u64) -> Option<[u8; 32]> { let mut result: [u8; 32] = Default::default(); let is_set = unsafe { - ext_storage_changes_root(parent_hash.as_ptr(), parent_hash.len() as u32, parent_num, result.as_mut_ptr()) + ext_storage_changes_root.get()(parent_hash.as_ptr(), parent_hash.len() as u32, parent_num, result.as_mut_ptr()) }; if is_set != 0 { @@ -326,7 +524,7 @@ pub fn ordered_trie_root< /// The current relay chain identifier. pub fn chain_id() -> u64 { unsafe { - ext_chain_id() + ext_chain_id.get()() } } @@ -334,7 +532,7 @@ pub fn chain_id() -> u64 { pub fn blake2_256(data: &[u8]) -> [u8; 32] { let mut result: [u8; 32] = Default::default(); unsafe { - ext_blake2_256(data.as_ptr(), data.len() as u32, result.as_mut_ptr()); + ext_blake2_256.get()(data.as_ptr(), data.len() as u32, result.as_mut_ptr()); } result } @@ -343,7 +541,7 @@ pub fn blake2_256(data: &[u8]) -> [u8; 32] { pub fn keccak_256(data: &[u8]) -> [u8; 32] { let mut result: [u8; 32] = Default::default(); unsafe { - ext_keccak_256(data.as_ptr(), data.len() as u32, result.as_mut_ptr()); + ext_keccak_256.get()(data.as_ptr(), data.len() as u32, result.as_mut_ptr()); } result } @@ -352,7 +550,7 @@ pub fn keccak_256(data: &[u8]) -> [u8; 32] { pub fn twox_256(data: &[u8]) -> [u8; 32] { let mut result: [u8; 32] = Default::default(); unsafe { - ext_twox_256(data.as_ptr(), data.len() as u32, result.as_mut_ptr()); + ext_twox_256.get()(data.as_ptr(), data.len() as u32, result.as_mut_ptr()); } result } @@ -361,7 +559,7 @@ pub fn twox_256(data: &[u8]) -> [u8; 32] { pub fn twox_128(data: &[u8]) -> [u8; 16] { let mut result: [u8; 16] = Default::default(); unsafe { - ext_twox_128(data.as_ptr(), data.len() as u32, result.as_mut_ptr()); + ext_twox_128.get()(data.as_ptr(), data.len() as u32, result.as_mut_ptr()); } result } @@ -369,14 +567,14 @@ pub fn twox_128(data: &[u8]) -> [u8; 16] { /// Verify a ed25519 signature. pub fn ed25519_verify>(sig: &[u8; 64], msg: &[u8], pubkey: P) -> bool { unsafe { - ext_ed25519_verify(msg.as_ptr(), msg.len() as u32, sig.as_ptr(), pubkey.as_ref().as_ptr()) == 0 + ext_ed25519_verify.get()(msg.as_ptr(), msg.len() as u32, sig.as_ptr(), pubkey.as_ref().as_ptr()) == 0 } } /// Verify a sr25519 signature. pub fn sr25519_verify>(sig: &[u8; 64], msg: &[u8], pubkey: P) -> bool { unsafe { - ext_sr25519_verify(msg.as_ptr(), msg.len() as u32, sig.as_ptr(), pubkey.as_ref().as_ptr()) == 0 + ext_sr25519_verify.get()(msg.as_ptr(), msg.len() as u32, sig.as_ptr(), pubkey.as_ref().as_ptr()) == 0 } } @@ -386,7 +584,7 @@ pub fn sr25519_verify>(sig: &[u8; 64], msg: &[u8], pubkey: P) -> pub fn secp256k1_ecdsa_recover(sig: &[u8; 65], msg: &[u8; 32]) -> Result<[u8; 64], EcdsaVerifyError> { let mut pubkey = [0u8; 64]; match unsafe { - ext_secp256k1_ecdsa_recover(msg.as_ptr(), sig.as_ptr(), pubkey.as_mut_ptr()) + ext_secp256k1_ecdsa_recover.get()(msg.as_ptr(), sig.as_ptr(), pubkey.as_mut_ptr()) } { 0 => Ok(pubkey), 1 => Err(EcdsaVerifyError::BadRS), @@ -404,7 +602,7 @@ pub trait Printable { impl<'a> Printable for &'a [u8] { fn print(self) { unsafe { - ext_print_hex(self.as_ptr(), self.len() as u32); + ext_print_hex.get()(self.as_ptr(), self.len() as u32); } } } @@ -412,14 +610,14 @@ impl<'a> Printable for &'a [u8] { impl<'a> Printable for &'a str { fn print(self) { unsafe { - ext_print_utf8(self.as_ptr() as *const u8, self.len() as u32); + ext_print_utf8.get()(self.as_ptr() as *const u8, self.len() as u32); } } } impl Printable for u64 { fn print(self) { - unsafe { ext_print_num(self); } + unsafe { ext_print_num.get()(self); } } } diff --git a/core/state-machine/src/lib.rs b/core/state-machine/src/lib.rs index ede2bf40b0..135c1dfc6b 100644 --- a/core/state-machine/src/lib.rs +++ b/core/state-machine/src/lib.rs @@ -151,7 +151,7 @@ pub trait Externalities { /// Returns None if key provided is not a storage key. This can due to not being started with CHILD_STORAGE_KEY_PREFIX, or the trie implementation regards the key as invalid. fn child_storage_root(&mut self, storage_key: &[u8]) -> Option>; - /// Get the change trie root of the current storage overlay at a block wth given parent. + /// Get the change trie root of the current storage overlay at a block with given parent. fn storage_changes_root(&mut self, parent: H::Out, parent_num: u64) -> Option where H::Out: Ord; } diff --git a/core/test-runtime/Cargo.toml b/core/test-runtime/Cargo.toml index e4dda6a397..bddabbe928 100644 --- a/core/test-runtime/Cargo.toml +++ b/core/test-runtime/Cargo.toml @@ -20,6 +20,7 @@ runtime_io = { package = "sr-io", path = "../sr-io", 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 } runtime_support = { package = "srml-support", path = "../../srml/support", default-features = false } +executive = { package = "srml-executive", path = "../../srml/executive", default-features = false } cfg-if = "0.1.6" [dev-dependencies] @@ -44,4 +45,5 @@ std = [ "runtime_primitives/std", "runtime_version/std", "consensus_aura/std", + "executive/std", ] diff --git a/core/test-runtime/src/lib.rs b/core/test-runtime/src/lib.rs index b345c06e6c..9c6f26e4a0 100644 --- a/core/test-runtime/src/lib.rs +++ b/core/test-runtime/src/lib.rs @@ -18,7 +18,8 @@ #![cfg_attr(not(feature = "std"), no_std)] -#[cfg(feature = "std")] pub mod genesismap; +#[cfg(feature = "std")] +pub mod genesismap; pub mod system; use rstd::{prelude::*, marker::PhantomData}; @@ -77,6 +78,16 @@ pub struct Transfer { pub nonce: u64, } +impl Transfer { + /// Convert into a signed extrinsic. + #[cfg(feature = "std")] + pub fn into_signed_tx(self) -> Extrinsic { + let signature = keyring::AccountKeyring::from_public(&self.from) + .expect("Creates keyring from public key.").sign(&self.encode()).into(); + Extrinsic::Transfer(self, signature) + } +} + /// Extrinsic for test-runtime. #[derive(Clone, PartialEq, Eq, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug))] @@ -219,6 +230,8 @@ cfg_if! { fn function_signature_changed() -> u64; fn fail_on_native() -> u64; fn fail_on_wasm() -> u64; + fn benchmark_indirect_call() -> u64; + fn benchmark_direct_call() -> u64; } } } else { @@ -239,6 +252,8 @@ cfg_if! { fn function_signature_changed() -> Vec; fn fail_on_native() -> u64; fn fail_on_wasm() -> u64; + fn benchmark_indirect_call() -> u64; + fn benchmark_direct_call() -> u64; } } } @@ -254,6 +269,16 @@ impl GetRuntimeBlockType for Runtime { type RuntimeBlock = Block; } +/// Adds one to the given input and returns the final result. +#[inline(never)] +fn benchmark_add_one(i: u64) -> u64 { + i + 1 +} + +/// The `benchmark_add_one` function as function pointer. +#[cfg(not(feature = "std"))] +static BENCHMARK_ADD_ONE: runtime_io::ExchangeableFunction u64> = runtime_io::ExchangeableFunction::new(benchmark_add_one); + cfg_if! { if #[cfg(feature = "std")] { impl_runtime_apis! { @@ -340,6 +365,13 @@ cfg_if! { fn fail_on_wasm() -> u64 { 1 } + fn benchmark_indirect_call() -> u64 { + let function = benchmark_add_one; + (0..1000).fold(0, |p, i| p + function(i)) + } + fn benchmark_direct_call() -> u64 { + (0..1000).fold(0, |p, i| p + benchmark_add_one(i)) + } } impl consensus_aura::AuraApi for Runtime { @@ -435,6 +467,14 @@ cfg_if! { fn fail_on_wasm() -> u64 { panic!("Failing because we are on wasm") } + + fn benchmark_indirect_call() -> u64 { + (0..10000).fold(0, |p, i| p + BENCHMARK_ADD_ONE.get()(i)) + } + + fn benchmark_direct_call() -> u64 { + (0..10000).fold(0, |p, i| p + benchmark_add_one(i)) + } } impl consensus_aura::AuraApi for Runtime { @@ -442,4 +482,4 @@ cfg_if! { } } } -} +} \ No newline at end of file diff --git a/core/test-runtime/src/system.rs b/core/test-runtime/src/system.rs index f1e04473ec..a66eb58c1f 100644 --- a/core/test-runtime/src/system.rs +++ b/core/test-runtime/src/system.rs @@ -21,7 +21,7 @@ use rstd::prelude::*; use runtime_io::{storage_root, enumerated_trie_root, storage_changes_root, twox_128}; use runtime_support::storage::{self, StorageValue, StorageMap}; use runtime_support::storage_items; -use runtime_primitives::traits::{Hash as HashT, BlakeTwo256, Digest as DigestT}; +use runtime_primitives::traits::{Hash as HashT, BlakeTwo256, Digest as DigestT, NumberFor, Block as BlockT}; use runtime_primitives::generic; use runtime_primitives::{ApplyError, ApplyOutcome, ApplyResult, transaction_validity::TransactionValidity}; use parity_codec::{KeyedVec, Encode}; @@ -70,6 +70,15 @@ pub fn initialise_block(header: &Header) { storage::unhashed::put(well_known_keys::EXTRINSIC_INDEX, &0u32); } +fn execute_extrinsics_without_checks(extrinsics: Vec<::Extrinsic>) { + // execute transactions + extrinsics.into_iter().enumerate().for_each(|(i, e)| { + storage::unhashed::put(well_known_keys::EXTRINSIC_INDEX, &(i as u32)); + execute_transaction_backend(&e).unwrap_or_else(|_| panic!("Invalid transaction")); + storage::unhashed::kill(well_known_keys::EXTRINSIC_INDEX); + }); +} + /// Actually execute all transitioning for `block`. pub fn polish_block(block: &mut Block) { let header = &mut block.header; @@ -111,12 +120,7 @@ pub fn execute_block(block: Block) { info_expect_equal_hash(&txs_root, &header.extrinsics_root); assert!(txs_root == header.extrinsics_root, "Transaction trie root must be valid."); - // execute transactions - block.extrinsics.iter().enumerate().for_each(|(i, e)| { - storage::unhashed::put(well_known_keys::EXTRINSIC_INDEX, &(i as u32)); - execute_transaction_backend(e).unwrap_or_else(|_| panic!("Invalid transaction")); - storage::unhashed::kill(well_known_keys::EXTRINSIC_INDEX); - }); + execute_extrinsics_without_checks(block.extrinsics); // check storage root. let storage_root = storage_root().into(); @@ -134,6 +138,19 @@ pub fn execute_block(block: Block) { assert!(digest == header.digest, "Header digest items must match that calculated."); } +/// The block executor. +pub struct BlockExecutor; + +impl executive::ExecuteBlock for BlockExecutor { + fn execute_block(block: Block) { + execute_block(block); + } + + fn execute_extrinsics_without_checks(_: NumberFor, extrinsics: Vec<::Extrinsic>) { + execute_extrinsics_without_checks(extrinsics); + } +} + /// Execute a transaction outside of the block execution function. /// This doesn't attempt to validate anything regarding the block. pub fn validate_transaction(utx: Extrinsic) -> TransactionValidity { @@ -307,11 +324,6 @@ mod tests { ]) } - fn construct_signed_tx(tx: Transfer) -> Extrinsic { - let signature = AccountKeyring::from_public(&tx.from).unwrap().sign(&tx.encode()).into(); - Extrinsic::Transfer(tx, signature) - } - fn block_import_works(block_executor: F) where F: Fn(Block, &mut TestExternalities) { let h = Header { parent_hash: [69u8; 32].into(), @@ -356,12 +368,12 @@ mod tests { digest: Default::default(), }, extrinsics: vec![ - construct_signed_tx(Transfer { + Transfer { from: AccountKeyring::Alice.into(), to: AccountKeyring::Bob.into(), amount: 69, nonce: 0, - }) + }.into_signed_tx() ], }; @@ -377,18 +389,18 @@ mod tests { digest: Default::default(), }, extrinsics: vec![ - construct_signed_tx(Transfer { + Transfer { from: AccountKeyring::Bob.into(), to: AccountKeyring::Alice.into(), amount: 27, nonce: 0, - }), - construct_signed_tx(Transfer { + }.into_signed_tx(), + Transfer { from: AccountKeyring::Alice.into(), to: AccountKeyring::Charlie.into(), amount: 69, nonce: 1, - }), + }.into_signed_tx(), ], }; diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index a5b87b4436..0746e5aa81 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -61,7 +61,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "bitmask" version = "0.5.0" -source = "git+https://github.com/paritytech/bitmask#c2d8d196e30b018d1385be8357fdca61b978facf" +source = "git+https://github.com/paritytech/bitmask#a84e147be602631617badd18b6b9af83391db4a9" [[package]] name = "blake2-rfc" @@ -378,7 +378,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -854,7 +854,7 @@ dependencies = [ "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -903,7 +903,7 @@ dependencies = [ "proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -960,7 +960,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1194,6 +1194,14 @@ name = "ryu" version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "safe-mix" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "schnorrkel" version = "0.0.0" @@ -1241,7 +1249,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1353,7 +1361,7 @@ dependencies = [ "proc-macro-crate 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1406,6 +1414,19 @@ dependencies = [ "sr-std 0.1.0", ] +[[package]] +name = "srml-executive" +version = "0.1.0" +dependencies = [ + "parity-codec 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", + "sr-primitives 0.1.0", + "sr-std 0.1.0", + "srml-support 0.1.0", + "srml-system 0.1.0", +] + [[package]] name = "srml-metadata" version = "0.1.0" @@ -1444,7 +1465,7 @@ dependencies = [ "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "sr-api-macros 0.1.0", "srml-support-procedural-tools 0.1.0", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1455,7 +1476,7 @@ dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "srml-support-procedural-tools-derive 0.1.0", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -1464,7 +1485,23 @@ version = "0.1.0" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +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)", + "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)", + "sr-io 0.1.0", + "sr-primitives 0.1.0", + "sr-std 0.1.0", + "srml-support 0.1.0", + "substrate-primitives 0.1.0", ] [[package]] @@ -1677,6 +1714,7 @@ dependencies = [ "sr-primitives 0.1.0", "sr-std 0.1.0", "sr-version 0.1.0", + "srml-executive 0.1.0", "srml-support 0.1.0", "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", @@ -1715,7 +1753,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "syn" -version = "0.15.27" +version = "0.15.29" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1730,7 +1768,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2262,6 +2300,7 @@ dependencies = [ "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" +"checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" @@ -2285,7 +2324,7 @@ dependencies = [ "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" -"checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec" +"checksum syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1825685f977249735d510a242a6727b46efe914bb67e38d30c071b1b72b1d5c2" "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015" "checksum take_mut 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index e844c0124e12a5d874d3edf7f94c0c946c56a7fb..bff5d3c6fc95aab2ddefa81474a9c6111817dc45 100644 GIT binary patch delta 11749 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 S!|9+QgeBVip*DZG^?w24Z01e? delta 11790 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≺W4i6ttIc^^HKsze74QzLxl2T$+Fc>~ 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≷I(f8tc09$w*<5Y&vxE{fNz}% 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

H1NUHd}%AZqV{Ur8Y;FcPaQ{frLNZ@t&MJ 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 bW*sHfc0o+ur4uowAGr{tWNnn94Ez58px`Qu diff --git a/srml/executive/src/lib.rs b/srml/executive/src/lib.rs index d00c2693ff..b6cc498f79 100644 --- a/srml/executive/src/lib.rs +++ b/srml/executive/src/lib.rs @@ -18,12 +18,13 @@ #![cfg_attr(not(feature = "std"), no_std)] - use rstd::prelude::*; use rstd::marker::PhantomData; use rstd::result; -use primitives::traits::{self, Header, Zero, One, Checkable, Applyable, CheckEqual, OnFinalise, - OnInitialise, Hash, As, Digest}; +use primitives::traits::{ + self, Header, Zero, One, Checkable, Applyable, CheckEqual, OnFinalise, + OnInitialise, Hash, As, Digest, NumberFor, Block as BlockT +}; use srml_support::{Dispatchable, traits::ChargeBytesFee}; use parity_codec::{Codec, Encode}; use system::extrinsics_root; @@ -47,18 +48,43 @@ mod internal { } } -pub struct Executive< - System, - Block, - Context, - Payment, - AllModules, ->(PhantomData<(System, Block, Context, Payment, AllModules)>); +/// Something that can be used to execute a block. +pub trait ExecuteBlock { + /// Actually execute all transitioning for `block`. + fn execute_block(block: Block); + /// Execute all extrinsics like when executing a `block`, but with dropping intial and final checks. + fn execute_extrinsics_without_checks(block_number: NumberFor, extrinsics: Vec); +} + +pub struct Executive( + PhantomData<(System, Block, Context, Payment, AllModules)> +); impl< + System: system::Trait, + Block: traits::Block, Context: Default, + Payment: ChargeBytesFee, + AllModules: OnInitialise + OnFinalise, +> ExecuteBlock for Executive where + Block::Extrinsic: Checkable + Codec, + >::Checked: Applyable, + <>::Checked as Applyable>::Call: Dispatchable, + <<>::Checked as Applyable>::Call as Dispatchable>::Origin: From> +{ + fn execute_block(block: Block) { + Self::execute_block(block); + } + + fn execute_extrinsics_without_checks(block_number: NumberFor, extrinsics: Vec) { + Self::execute_extrinsics_without_checks(block_number, extrinsics); + } +} + +impl< System: system::Trait, Block: traits::Block, + Context: Default, Payment: ChargeBytesFee, AllModules: OnInitialise + OnFinalise, > Executive where @@ -69,8 +95,12 @@ impl< { /// Start the execution of a particular block. pub fn initialise_block(header: &System::Header) { - >::initialise(header.number(), header.parent_hash(), header.extrinsics_root()); - >::on_initialise(*header.number()); + Self::initialise_block_impl(header.number(), header.parent_hash(), header.extrinsics_root()); + } + + fn initialise_block_impl(block_number: &System::BlockNumber, parent_hash: &System::Hash, extrinsics_root: &System::Hash) { + >::initialise(block_number, parent_hash, extrinsics_root); + >::on_initialise(*block_number); } fn initial_checks(block: &Block) { @@ -96,18 +126,35 @@ impl< // any initial checks Self::initial_checks(&block); - // execute transactions + // execute extrinsics let (header, extrinsics) = block.deconstruct(); - extrinsics.into_iter().for_each(Self::apply_extrinsic_no_note); - - // post-transactional book-keeping. - >::note_finished_extrinsics(); - >::on_finalise(*header.number()); + Self::execute_extrinsics_with_book_keeping(extrinsics, *header.number()); // any final checks Self::final_checks(&header); } + /// Execute all extrinsics like when executing a `block`, but with dropping intial and final checks. + pub fn execute_extrinsics_without_checks(block_number: NumberFor, extrinsics: Vec) { + // Make the api happy, but maybe we should not set them at all. + let parent_hash = ::Hashing::hash(b"parent_hash"); + let extrinsics_root = ::Hashing::hash(b"extrinsics_root"); + + Self::initialise_block_impl(&block_number, &parent_hash, &extrinsics_root); + + // execute extrinsics + Self::execute_extrinsics_with_book_keeping(extrinsics, block_number); + } + + /// Execute given extrinsics and take care of post-extrinsics book-keeping + fn execute_extrinsics_with_book_keeping(extrinsics: Vec, block_number: NumberFor) { + extrinsics.into_iter().for_each(Self::apply_extrinsic_no_note); + + // post-extrinsics book-keeping. + >::note_finished_extrinsics(); + >::on_finalise(block_number); + } + /// Finalise the block - it is up the caller to ensure that all header fields are valid /// except state-root. pub fn finalise_block() -> System::Header { diff --git a/srml/support/src/storage/mod.rs b/srml/support/src/storage/mod.rs index dec8b2fec8..fde0762877 100644 --- a/srml/support/src/storage/mod.rs +++ b/srml/support/src/storage/mod.rs @@ -38,7 +38,7 @@ impl<'a> Input for IncrementalInput<'a> { } } - /// Return the value of the item in storage under `key`, or `None` if there is no explicit entry. +/// Return the value of the item in storage under `key`, or `None` if there is no explicit entry. pub fn get(key: &[u8]) -> Option { let key = twox_128(key); runtime_io::read_storage(&key[..], &mut [0; 0][..], 0).map(|_| { diff --git a/srml/system/src/lib.rs b/srml/system/src/lib.rs index 384c4fb462..c5397345a1 100644 --- a/srml/system/src/lib.rs +++ b/srml/system/src/lib.rs @@ -324,8 +324,7 @@ impl Module { // > stays to be inspected by the client. - ::new(number, extrinsics_root, storage_root, - parent_hash, digest) + ::new(number, extrinsics_root, storage_root, parent_hash, digest) } /// Deposits a log and ensures it matches the blocks log data. -- GitLab From b32b0719b79c3fa0a006bd85c31c3b70078ee5de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Thu, 14 Mar 2019 21:53:05 +0100 Subject: [PATCH 026/120] Remove warning and make `__PhantomItem` unconstructable (#2000) * Remove warning and make `__PhantomItem` unconstructable * Switch to unreachable --- srml/support/src/dispatch.rs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index 9f30f6195b..166b545171 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -27,6 +27,9 @@ pub use srml_metadata::{ FunctionArgumentMetadata, OuterDispatchMetadata, OuterDispatchCall }; +/// A type that can not be instantiated. +pub enum Never {} + /// Result of a module function call; either nothing (functions are only called for "side efeects") /// or an error message. pub type Result = result::Result<(), &'static str>; @@ -615,7 +618,7 @@ macro_rules! decl_module { $(#[$attr])* pub enum $call_type<$trait_instance: $trait_name> { #[doc(hidden)] - __PhantomItem(::std::marker::PhantomData<$trait_instance>), + __PhantomItem(::std::marker::PhantomData<$trait_instance>, $crate::dispatch::Never), $( #[allow(non_camel_case_types)] $(#[doc = $doc_attr])* @@ -627,7 +630,7 @@ macro_rules! decl_module { $(#[$attr])* pub enum $call_type<$trait_instance: $trait_name> { #[doc(hidden)] - __PhantomItem(::core::marker::PhantomData<$trait_instance>), + __PhantomItem(::core::marker::PhantomData<$trait_instance>, $crate::dispatch::Never), $( #[allow(non_camel_case_types)] $(#[doc = $doc_attr])* @@ -662,7 +665,7 @@ macro_rules! decl_module { self_params == ( $( $param_name, )* ) } else { match *_other { - $call_type::__PhantomItem(_) => unreachable!(), + $call_type::__PhantomItem(_, _) => unreachable!(), _ => false, } } @@ -704,7 +707,6 @@ macro_rules! decl_module { impl<$trait_instance: $trait_name> $crate::dispatch::Encode for $call_type<$trait_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 ),* ); )*); - if let $call_type::__PhantomItem(_) = *self { unreachable!() } } } impl<$trait_instance: $trait_name> $crate::dispatch::Dispatchable @@ -723,7 +725,7 @@ macro_rules! decl_module { ) }, )* - $call_type::__PhantomItem(_) => { panic!("__PhantomItem should never be used.") }, + $call_type::__PhantomItem(_, _) => { unreachable!("__PhantomItem should never be used.") }, } } } -- GitLab From 2821d009527bb332945e05f70b480a07c87ebd70 Mon Sep 17 00:00:00 2001 From: Marcio Diaz Date: Fri, 15 Mar 2019 11:15:08 +0100 Subject: [PATCH 027/120] Add exponential search for ancestor search (#1875) * feat: add exponential search * add tests * chore: improve code --- core/network/src/sync.rs | 137 ++++++++++++++++++++++------------ core/network/src/test/sync.rs | 78 +++++++++++++++++++ 2 files changed, 169 insertions(+), 46 deletions(-) diff --git a/core/network/src/sync.rs b/core/network/src/sync.rs index 2666c49823..a4dc1855ef 100644 --- a/core/network/src/sync.rs +++ b/core/network/src/sync.rs @@ -27,7 +27,7 @@ use consensus::import_queue::{ImportQueue, IncomingBlock}; use client::error::Error as ClientError; use crate::blocks::BlockCollection; use runtime_primitives::Justification; -use runtime_primitives::traits::{Block as BlockT, Header as HeaderT, As, NumberFor, Zero}; +use runtime_primitives::traits::{Block as BlockT, Header as HeaderT, As, NumberFor, Zero, CheckedSub}; use runtime_primitives::generic::BlockId; use crate::message::{self, generic::Message as GenericMessage}; use crate::config::Roles; @@ -58,9 +58,19 @@ struct PeerSync { pub recently_announced: VecDeque, } +#[derive(Copy, Clone, Eq, PartialEq, Debug)] +enum AncestorSearchState { + /// Use exponential backoff to find an ancestor, then switch to binary search. + /// We keep track of the exponent. + ExponentialBackoff(NumberFor), + /// Using binary search to find the best ancestor. + /// We keep track of left and right bounds. + BinarySearch(NumberFor, NumberFor), +} + #[derive(Copy, Clone, Eq, PartialEq, Debug)] enum PeerSyncState { - AncestorSearch(NumberFor), + AncestorSearch(NumberFor, AncestorSearchState), Available, DownloadingNew(NumberFor), DownloadingStale(B::Hash), @@ -138,9 +148,9 @@ impl PendingJustifications { peer_best_number >= request.1 && !self.previous_requests - .get(&request) - .map(|requests| requests.iter().any(|i| i.0 == peer)) - .unwrap_or(false) + .get(&request) + .map(|requests| requests.iter().any(|i| i.0 == peer)) + .unwrap_or(false) }; if !peer_eligible { @@ -228,9 +238,9 @@ impl PendingJustifications { if success { if self.justifications.finalize_root(&request.0).is_none() { warn!(target: "sync", "Imported justification for {:?} {:?} which isn't a root in the tree: {:?}", - request.0, - request.1, - self.justifications.roots().collect::>(), + request.0, + request.1, + self.justifications.roots().collect::>(), ); return; }; @@ -419,7 +429,8 @@ impl ChainSync { let previous_state = self.state(&previous_best_seen); if let Some(info) = protocol.peer_info(who) { - match (block_status(&*protocol.client(), &self.queue_blocks, info.best_hash), info.best_number) { + let status = block_status(&*protocol.client(), &self.queue_blocks, info.best_hash); + match (status, info.best_number) { (Err(e), _) => { debug!(target:"sync", "Error reading blockchain: {:?}", e); let reason = format!("Error legimimately reading blockchain status: {:?}", e); @@ -453,7 +464,7 @@ impl ChainSync { common_number: As::sa(0), best_hash: info.best_hash, best_number: info.best_number, - state: PeerSyncState::AncestorSearch(common_best), + state: PeerSyncState::AncestorSearch(common_best, AncestorSearchState::ExponentialBackoff(As::sa(1))), recently_announced: Default::default(), }); Self::request_ancestry(protocol, who, common_best) @@ -500,6 +511,44 @@ impl ChainSync { } } + fn handle_ancestor_search_state( + state: AncestorSearchState, + curr_block_num: NumberFor, + block_hash_match: bool, + ) -> Option<(AncestorSearchState, NumberFor)> { + match state { + AncestorSearchState::ExponentialBackoff(next_distance_to_tip) => { + if block_hash_match && next_distance_to_tip == As::sa(1) { + // We found the ancestor in the first step so there is no need to execute binary search. + return None; + } + if block_hash_match { + let left = curr_block_num; + let right = left + next_distance_to_tip / As::sa(2); + let middle = left + (right - left) / As::sa(2); + Some((AncestorSearchState::BinarySearch(left, right), middle)) + } else { + let next_block_num = curr_block_num.checked_sub(&next_distance_to_tip).unwrap_or(As::sa(0)); + let next_distance_to_tip = next_distance_to_tip * As::sa(2); + Some((AncestorSearchState::ExponentialBackoff(next_distance_to_tip), next_block_num)) + } + }, + AncestorSearchState::BinarySearch(mut left, mut right) => { + if left >= curr_block_num { + return None; + } + if block_hash_match { + left = curr_block_num; + } else { + right = curr_block_num; + } + assert!(right >= left); + let middle = left + (right - left) / As::sa(2); + Some((AncestorSearchState::BinarySearch(left, right), middle)) + }, + } + } + /// Handle new block data. pub(crate) fn on_block_data( &mut self, @@ -514,7 +563,8 @@ impl ChainSync { trace!(target: "sync", "Reversing incoming block list"); blocks.reverse(); } - match peer.state { + let peer_state = peer.state.clone(); + match peer_state { PeerSyncState::DownloadingNew(start_block) => { self.blocks.clear_peer_download(who); peer.state = PeerSyncState::Available; @@ -544,43 +594,38 @@ impl ChainSync { } }).collect() }, - PeerSyncState::AncestorSearch(n) => { - match blocks.get(0) { - Some(ref block) => { - trace!(target: "sync", "Got ancestry block #{} ({}) from peer {}", n, block.hash, who); - match protocol.client().block_hash(n) { - Ok(Some(block_hash)) if block_hash == block.hash => { - if peer.common_number < n { - peer.common_number = n; - } - peer.state = PeerSyncState::Available; - trace!(target:"sync", "Found common ancestor for peer {}: {} ({})", who, block.hash, n); - vec![] - }, - Ok(our_best) if n > As::sa(0) => { - trace!(target:"sync", "Ancestry block mismatch for peer {}: theirs: {} ({}), ours: {:?}", who, block.hash, n, our_best); - let n = n - As::sa(1); - peer.state = PeerSyncState::AncestorSearch(n); - Self::request_ancestry(protocol, who, n); - return; - }, - Ok(_) => { // genesis mismatch - trace!(target:"sync", "Ancestry search: genesis mismatch for peer {}", who); - protocol.report_peer(who, Severity::Bad("Ancestry search: genesis mismatch for peer".to_string())); - return; - }, - Err(e) => { - let reason = format!("Error answering legitimate blockchain query: {:?}", e); - protocol.report_peer(who, Severity::Useless(reason)); - return; - } - } + PeerSyncState::AncestorSearch(num, state) => { + let block_hash_match = match (blocks.get(0), protocol.client().block_hash(num)) { + (Some(ref block), Ok(maybe_our_block_hash)) => { + trace!(target: "sync", "Got ancestry block #{} ({}) from peer {}", num, block.hash, who); + maybe_our_block_hash.map_or(false, |x| x == block.hash) }, - None => { + (None, _) => { trace!(target:"sync", "Invalid response when searching for ancestor from {}", who); protocol.report_peer(who, Severity::Bad("Invalid response when searching for ancestor".to_string())); return; - } + }, + (_, Err(e)) => { + let reason = format!("Error answering legitimate blockchain query: {:?}", e); + protocol.report_peer(who, Severity::Useless(reason)); + return; + }, + }; + if block_hash_match && peer.common_number < num { + peer.common_number = num; + } + if !block_hash_match && num == As::sa(0) { + trace!(target:"sync", "Ancestry search: genesis mismatch for peer {}", who); + protocol.report_peer(who, Severity::Bad("Ancestry search: genesis mismatch for peer".to_string())); + return; + } + if let Some((next_state, next_block_num)) = Self::handle_ancestor_search_state(state, num, block_hash_match) { + peer.state = PeerSyncState::AncestorSearch(next_block_num, next_state); + Self::request_ancestry(protocol, who, next_block_num); + return; + } else { + peer.state = PeerSyncState::Available; + vec![] } }, PeerSyncState::Available | PeerSyncState::DownloadingJustification(..) => Vec::new(), @@ -745,7 +790,7 @@ impl ChainSync { } // Update common blocks for (n, peer) in self.peers.iter_mut() { - if let PeerSyncState::AncestorSearch(_) = peer.state { + if let PeerSyncState::AncestorSearch(_, _) = peer.state { // Abort search. peer.state = PeerSyncState::Available; } @@ -782,7 +827,7 @@ impl ChainSync { peer.best_number = number; peer.best_hash = hash; } - if let PeerSyncState::AncestorSearch(_) = peer.state { + if let PeerSyncState::AncestorSearch(_, _) = peer.state { return; } if header.parent_hash() == &self.best_queued_hash || known_parent { diff --git a/core/network/src/test/sync.rs b/core/network/src/test/sync.rs index 74cc30ed64..4a2f3339fb 100644 --- a/core/network/src/test/sync.rs +++ b/core/network/src/test/sync.rs @@ -24,6 +24,24 @@ use std::thread; use std::time::Duration; use super::*; +fn test_ancestor_search_when_common_is(n: usize) { + let _ = ::env_logger::try_init(); + let mut net = TestNet::new(3); + + net.peer(0).push_blocks(n, false); + net.peer(1).push_blocks(n, false); + net.peer(2).push_blocks(n, false); + + net.peer(0).push_blocks(10, true); + net.peer(1).push_blocks(100, false); + net.peer(2).push_blocks(100, false); + + net.restart_peer(0); + net.sync(); + assert!(net.peer(0).client.backend().as_in_memory().blockchain() + .canon_equals_to(net.peer(1).client.backend().as_in_memory().blockchain())); +} + #[test] fn sync_peers_works() { let _ = ::env_logger::try_init(); @@ -140,6 +158,66 @@ fn sync_from_two_peers_with_ancestry_search_works() { .canon_equals_to(net.peer(1).client.backend().as_in_memory().blockchain())); } +#[test] +fn ancestry_search_works_when_common_is_hundred() { + let _ = ::env_logger::try_init(); + let mut net = TestNet::new(3); + + net.peer(0).push_blocks(100, false); + net.peer(1).push_blocks(100, false); + net.peer(2).push_blocks(100, false); + + net.peer(0).push_blocks(10, true); + net.peer(1).push_blocks(100, false); + net.peer(2).push_blocks(100, false); + + net.restart_peer(0); + net.sync(); + + assert!(net.peer(0).client.backend().as_in_memory().blockchain() + .canon_equals_to(net.peer(1).client.backend().as_in_memory().blockchain())); +} + +#[test] +fn ancestry_search_works_when_backoff_is_one() { + let _ = ::env_logger::try_init(); + let mut net = TestNet::new(3); + + net.peer(0).push_blocks(1, false); + net.peer(1).push_blocks(2, false); + net.peer(2).push_blocks(2, false); + + net.restart_peer(0); + net.sync(); + assert!(net.peer(0).client.backend().as_in_memory().blockchain() + .canon_equals_to(net.peer(1).client.backend().as_in_memory().blockchain())); +} + +#[test] +fn ancestry_search_works_when_ancestor_is_genesis() { + let _ = ::env_logger::try_init(); + let mut net = TestNet::new(3); + + net.peer(0).push_blocks(13, true); + net.peer(1).push_blocks(100, false); + net.peer(2).push_blocks(100, false); + + net.restart_peer(0); + net.sync(); + assert!(net.peer(0).client.backend().as_in_memory().blockchain() + .canon_equals_to(net.peer(1).client.backend().as_in_memory().blockchain())); +} + +#[test] +fn ancestry_search_works_when_common_is_one() { + test_ancestor_search_when_common_is(1); +} + +#[test] +fn ancestry_search_works_when_common_is_two() { + test_ancestor_search_when_common_is(2); +} + #[test] fn sync_long_chain_works() { let mut net = TestNet::new(2); -- GitLab From 5cb53963d2ecb4e29e84d61f6aee9432db7fa082 Mon Sep 17 00:00:00 2001 From: Gautam Dhameja Date: Fri, 15 Mar 2019 11:48:38 +0100 Subject: [PATCH 028/120] Documentation for the timestamp module (#1927) * docs for timestamp module * addressed review comments in timestamp module docs * fixed typos * uppercase readme file name * merge with master * fixed build failure * removed md file * updated as per the latest template * updated docs * updated docs * addressed review comments * addressed review comments --- srml/timestamp/src/lib.rs | 85 +++++++++++++++++++++++++++++++-------- 1 file changed, 68 insertions(+), 17 deletions(-) diff --git a/srml/timestamp/src/lib.rs b/srml/timestamp/src/lib.rs index fb7e310992..f3e0d8153e 100644 --- a/srml/timestamp/src/lib.rs +++ b/srml/timestamp/src/lib.rs @@ -14,21 +14,70 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -//! Timestamp manager: provides means to find out the current time. +//! # Timestamp Module +//! +//! The timestamp module provides functionality to get and set the on-chain time. +//! To use it in your module, you need to implement the timestamp [`Trait`]. +//! The supported dispatchable functions are documented as part of the [`Call`] enum. +//! +//! ## Overview +//! +//! The timestamp module allows the validators to set and validate a timestamp with each block. //! -//! It is expected that the timestamp is set by the validator in the -//! beginning of each block, typically one of the first extrinsics. The timestamp -//! can be set only once per block and must be set each block. +//! It uses inherents for timestamp data, which is provided by the block author and validated/verified by other validators. +//! The timestamp can be set only once per block and must be set each block. There could be a constraint on how much time must pass before setting the new timestamp. +//! +//! **NOTE:** The timestamp module is the recommended way to query the on-chain time instead of using an approach based on block numbers. +//! The block numbers based time measurement can cause issues because of cummulative calculation errors and hence it should be avoided. +//! +//! ## Interface +//! +//! ### Dispatchable functions ([`Call`]) +//! +//! * `set` - Sets the current time. +//! +//! ### Public functions ([`Module`]) +//! +//! * `get` - Gets the current time for the current block. If this function is called prior the setting to timestamp, it will return the timestamp of the previous block. +//! +//! * `block_period` - Gets the minimum (and advised) period between blocks for the chain. +//! +//! ## Usage +//! +//! The following example shows how to use the timestamp module in your custom module to query the current timestamp. +//! +//! ### Prerequisites +//! +//! Import the `timestamp` module in your custom module and derive the module configuration trait from the `timestamp` trait. +//! +//! ### Get current timestamp +//! +//! ```ignore +//! use support::{decl_module, dispatch::Result}; +//! use system::ensure_signed; +//! +//! pub trait Trait: timestamp::Trait {} +//! +//! decl_module! { +//! pub struct Module for enum Call where origin: T::Origin { +//! pub fn get_time(origin) -> Result { +//! let _sender = ensure_signed(origin)?; +//! let _now = >::get(); +//! Ok(()) +//! } +//! } +//! } +//! ``` +//! +//! ### Example from SRML +//! +//! The [`Session` module](https://github.com/paritytech/substrate/blob/master/srml/session/src/lib.rs) uses the `timestamp` module for session management. +//! +//! ## Related Modules +//! +//! * [`System`](https://crates.parity.io/srml_system/index.html) +//! * [`Session`](https://crates.parity.io/srml_session/index.html) //! -//! Note, that there might be a constraint on how much time must pass -//! before setting the new timestamp, specified by the `tim:block_period` -//! storage entry. -//! -//! # Interaction with the system -//! -//! ## Finalization -//! -//! This module should be hooked up to the finalization routine. #![cfg_attr(not(feature = "std"), no_std)] @@ -144,11 +193,13 @@ macro_rules! impl_timestamp_set { for_each_tuple!(impl_timestamp_set); +/// The module configuration trait pub trait Trait: system::Trait { /// Type used for expressing timestamp. type Moment: Parameter + Default + SimpleArithmetic + Mul + Div; + /// Something which can be notified when the timestamp is set. Set this to `()` if not needed. type OnTimestampSet: OnTimestampSet; } @@ -157,12 +208,12 @@ decl_module! { pub struct Module for enum Call where origin: T::Origin { /// Set the current time. /// - /// Extrinsic with this call should be placed at the specific position in the each block - /// (specified by the Trait::TIMESTAMP_SET_POSITION) typically at the start of the each block. /// This call should be invoked exactly once per block. It will panic at the finalization phase, /// if this call hasn't been invoked by that time. /// /// The timestamp should be greater than the previous one by the amount specified by `block_period`. + /// + /// The dispatch origin for this call must be `Inherent`. fn set(origin, #[compact] now: T::Moment) { ensure_inherent(origin)?; assert!(!::DidUpdate::exists(), "Timestamp must be updated only once in the block"); @@ -186,6 +237,7 @@ decl_storage! { trait Store for Module as Timestamp { /// Current time for the current block. pub Now get(now) build(|_| T::Moment::sa(0)): T::Moment; + /// The minimum (and advised) period between blocks. pub BlockPeriod get(block_period) config(period): T::Moment = T::Moment::sa(5); @@ -195,10 +247,9 @@ decl_storage! { } impl Module { - /// Get the current time for the current block. /// - /// NOTE: if this function is called prior the setting the timestamp, + /// NOTE: if this function is called prior to setting the timestamp, /// it will return the timestamp of the previous block. pub fn get() -> T::Moment { Self::now() -- GitLab From 9c3ba7f6c6e8070445dcc7a431294b00a9cbf7c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Fri, 15 Mar 2019 12:34:53 +0100 Subject: [PATCH 029/120] Build docs with nightly (#2006) --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 12c019b3e2..b6f5116f7b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -165,7 +165,7 @@ build:rust:doc:release: &build - linux-docker script: - rm -f ./crate-docs/index.html # use it as an indicator if the job succeeds - - time cargo doc --release --verbose + - time cargo +nightly doc --release --verbose - cp -R ./target/doc ./crate-docs - echo "" > ./crate-docs/index.html -- GitLab From cb546348bbf55b35aba1b9e142d62d653d99f803 Mon Sep 17 00:00:00 2001 From: Marcio Diaz Date: Fri, 15 Mar 2019 13:12:36 +0100 Subject: [PATCH 030/120] chore: refactor test (#2007) --- core/network/src/test/sync.rs | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/core/network/src/test/sync.rs b/core/network/src/test/sync.rs index 4a2f3339fb..cb54c05526 100644 --- a/core/network/src/test/sync.rs +++ b/core/network/src/test/sync.rs @@ -158,26 +158,6 @@ fn sync_from_two_peers_with_ancestry_search_works() { .canon_equals_to(net.peer(1).client.backend().as_in_memory().blockchain())); } -#[test] -fn ancestry_search_works_when_common_is_hundred() { - let _ = ::env_logger::try_init(); - let mut net = TestNet::new(3); - - net.peer(0).push_blocks(100, false); - net.peer(1).push_blocks(100, false); - net.peer(2).push_blocks(100, false); - - net.peer(0).push_blocks(10, true); - net.peer(1).push_blocks(100, false); - net.peer(2).push_blocks(100, false); - - net.restart_peer(0); - net.sync(); - - assert!(net.peer(0).client.backend().as_in_memory().blockchain() - .canon_equals_to(net.peer(1).client.backend().as_in_memory().blockchain())); -} - #[test] fn ancestry_search_works_when_backoff_is_one() { let _ = ::env_logger::try_init(); @@ -218,6 +198,11 @@ fn ancestry_search_works_when_common_is_two() { test_ancestor_search_when_common_is(2); } +#[test] +fn ancestry_search_works_when_common_is_hundred() { + test_ancestor_search_when_common_is(100); +} + #[test] fn sync_long_chain_works() { let mut net = TestNet::new(2); -- GitLab From 06ff2397911f24ad57b3d307f441278a31e6e34b Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Fri, 15 Mar 2019 13:53:09 +0100 Subject: [PATCH 031/120] Crypto fixes/improvements (#2008) * Crypto fixes: - Use schnorrkel's HDKD derive - Assume all key URIs beginning with `/` are prefixed with public root phrase. * Remove commented code. * Update README * Update core/primitives/src/ed25519.rs Co-Authored-By: gavofyork --- Cargo.lock | 4 ++-- README.adoc | 4 ++-- core/cli/src/lib.rs | 5 +--- core/keyring/src/ed25519.rs | 7 +----- core/keyring/src/sr25519.rs | 7 +----- core/primitives/src/crypto.rs | 19 +++++++++++---- core/primitives/src/ed25519.rs | 10 +++++++- core/primitives/src/sr25519.rs | 42 +++++++++++++++++++++++++++------ node-template/src/chain_spec.rs | 5 ++-- node/cli/src/chain_spec.rs | 5 ++-- 10 files changed, 70 insertions(+), 38 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 9eb942aae8..568a71a265 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2768,7 +2768,7 @@ dependencies = [ [[package]] name = "schnorrkel" version = "0.0.0" -source = "git+https://github.com/w3f/schnorrkel#0876f3f2194426150efea99304a8d23a336744bc" +source = "git+https://github.com/w3f/schnorrkel#0a0de4294b475ef6abdeebb50067f213ca79b3c7" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4673,7 +4673,7 @@ name = "twox-hash" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] diff --git a/README.adoc b/README.adoc index 0d4825347a..492df92996 100644 --- a/README.adoc +++ b/README.adoc @@ -259,7 +259,7 @@ We'll start Alice's substrate node first on default TCP port 30333 with her chai cargo run --release \-- \ --base-path /tmp/alice \ --chain=local \ - --key Alice \ + --key //Alice \ --name "ALICE" \ --node-key 0000000000000000000000000000000000000000000000000000000000000001 \ --telemetry-url ws://telemetry.polkadot.io:1024 \ @@ -272,7 +272,7 @@ cargo run --release \-- \ --base-path /tmp/bob \ --bootnodes /ip4/127.0.0.1/tcp/30333/p2p/QmQZ8TjTqeDj3ciwr93EJ95hxfDsb9pEYDizUAbWpigtQN \ --chain=local \ - --key Bob \ + --key //Bob \ --name "BOB" \ --port 30334 \ --telemetry-url ws://telemetry.polkadot.io:1024 \ diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index 864fda3805..3a2798fd2d 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -63,9 +63,6 @@ use substrate_telemetry::TelemetryEndpoints; const MAX_NODE_NAME_LENGTH: usize = 32; -/// The root phrase for our development network keys. -pub const DEV_PHRASE: &str = "bottom drive obey lake curtain smoke basket hold race lonely fit walk"; - /// Executable version. Used to pass version information from the root crate. pub struct VersionInfo { /// Implemtation name. @@ -390,7 +387,7 @@ where } if cli.shared_params.dev { - config.keys.push(format!("{}//Alice", DEV_PHRASE)); + config.keys.push("//Alice".into()); } let rpc_interface: &str = if cli.rpc_external { "0.0.0.0" } else { "127.0.0.1" }; diff --git a/core/keyring/src/ed25519.rs b/core/keyring/src/ed25519.rs index 188bf5352c..1ac7de17c3 100644 --- a/core/keyring/src/ed25519.rs +++ b/core/keyring/src/ed25519.rs @@ -22,11 +22,6 @@ use lazy_static::lazy_static; use substrate_primitives::{ed25519::{Pair, Public, Signature}, Pair as _Pair, H256}; pub use substrate_primitives::ed25519; -/// The root phrase for our test keys. -/// -/// This is the same phrase that's in node::cli, but shouldn't need to be. -pub const DEV_PHRASE: &str = "bottom drive obey lake curtain smoke basket hold race lonely fit walk"; - /// Set of test accounts. #[derive(Clone, Copy, PartialEq, Eq, Hash)] pub enum Keyring { @@ -81,7 +76,7 @@ impl Keyring { } pub fn pair(self) -> Pair { - Pair::from_string(&format!("{}//{}", DEV_PHRASE, <&'static str>::from(self)), None) + Pair::from_string(&format!("//{}", <&'static str>::from(self)), None) .expect("static values are known good; qed") } } diff --git a/core/keyring/src/sr25519.rs b/core/keyring/src/sr25519.rs index de2146020c..17404ad1c6 100644 --- a/core/keyring/src/sr25519.rs +++ b/core/keyring/src/sr25519.rs @@ -22,11 +22,6 @@ use lazy_static::lazy_static; use substrate_primitives::{sr25519::{Pair, Public, Signature}, Pair as _Pair, H256}; pub use substrate_primitives::sr25519; -/// The root phrase for our test keys. -/// -/// This is the same phrase that's in node::cli, but shouldn't need to be. -pub const DEV_PHRASE: &str = "bottom drive obey lake curtain smoke basket hold race lonely fit walk"; - /// Set of test accounts. #[derive(Clone, Copy, PartialEq, Eq, Hash)] pub enum Keyring { @@ -81,7 +76,7 @@ impl Keyring { } pub fn pair(self) -> Pair { - Pair::from_string(&format!("{}//{}", DEV_PHRASE, <&'static str>::from(self)), None) + Pair::from_string(&format!("//{}", <&'static str>::from(self)), None) .expect("static values are known good; qed") } } diff --git a/core/primitives/src/crypto.rs b/core/primitives/src/crypto.rs index bf2ef3df46..fe7c1fabb8 100644 --- a/core/primitives/src/crypto.rs +++ b/core/primitives/src/crypto.rs @@ -25,6 +25,12 @@ use regex::Regex; #[cfg(feature = "std")] use base58::{FromBase58, ToBase58}; +/// The root phrase for our publically known keys. +pub const DEV_PHRASE: &str = "bottom drive obey lake curtain smoke basket hold race lonely fit walk"; + +/// The address of the associated root phrase for our publically known keys. +pub const DEV_ADDRESS: &str = "5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqAS7"; + /// The infallible type. #[derive(Debug)] pub enum Infallible {} @@ -243,14 +249,16 @@ impl + AsRef<[u8]> + Default + Derive> Ss58Codec for T { } fn from_string(s: &str) -> Result { - let re = Regex::new(r"^(?P[\w\d]+)(?P(//?[^/]+)*)$") + let re = Regex::new(r"^(?P[\w\d]+)?(?P(//?[^/]+)*)$") .expect("constructed from known-good static value; qed"); let cap = re.captures(s).ok_or(PublicError::InvalidFormat)?; let re_junction = Regex::new(r"/(/?[^/]+)") .expect("constructed from known-good static value; qed"); let path = re_junction.captures_iter(&cap["path"]) .map(|f| DeriveJunction::from(&f[1])); - Self::from_ss58check(&cap["ss58"])?.derive(path).ok_or(PublicError::InvalidPath) + Self::from_ss58check(cap.name("ss58").map(|r| r.as_str()).unwrap_or(DEV_ADDRESS))? + .derive(path) + .ok_or(PublicError::InvalidPath) } } @@ -335,6 +343,9 @@ pub trait Pair: Sized { /// - the phrase may be followed by one or more items delimited by `/` characters. /// - the path may be followed by `///`, in which case everything after the `///` is treated /// as a password. + /// - If `s` begins with a `/` character it is prefixed with the Substrate public `DEV_PHRASE` and + /// interpreted as above. + /// /// In this case they are interpreted as HDKD junctions; purely numeric items are interpreted as /// integers, non-numeric items as strings. Junctions prefixed with `/` are interpreted as soft /// junctions, and with `//` as hard junctions. @@ -359,7 +370,7 @@ pub trait Pair: Sized { } } - let re = Regex::new(r"^(?P\w+( \w+)*)(?P(//?[^/]+)*)(///(?P.*))?$") + let re = Regex::new(r"^(?P\w+( \w+)*)?(?P(//?[^/]+)*)(///(?P.*))?$") .expect("constructed from known-good static value; qed"); let cap = re.captures(s).ok_or(SecretStringError::InvalidFormat)?; let re_junction = Regex::new(r"/(/?[^/]+)") @@ -367,7 +378,7 @@ pub trait Pair: Sized { let path = re_junction.captures_iter(&cap["path"]) .map(|f| DeriveJunction::from(&f[1])); Self::from_standard_components( - &cap["phrase"], + cap.name("phrase").map(|r| r.as_str()).unwrap_or(DEV_PHRASE), password_override.or_else(|| cap.name("password").map(|m| m.as_str())), path, ) diff --git a/core/primitives/src/ed25519.rs b/core/primitives/src/ed25519.rs index 1d1a1bff4a..586a6fe13c 100644 --- a/core/primitives/src/ed25519.rs +++ b/core/primitives/src/ed25519.rs @@ -523,7 +523,15 @@ impl Pair { mod test { use super::*; use hex_literal::{hex, hex_impl}; - use crate::Pair as _Pair; + use crate::{Pair as _Pair, crypto::DEV_PHRASE}; + + #[test] + fn default_phrase_should_be_used() { + assert_eq!( + Pair::from_string("//Alice///password", None).unwrap().public(), + Pair::from_string(&format!("{}//Alice", DEV_PHRASE), Some("password")).unwrap().public(), + ); + } #[test] fn test_vector_should_work() { diff --git a/core/primitives/src/sr25519.rs b/core/primitives/src/sr25519.rs index 4c2b97c5f6..c9c9ee9ecc 100644 --- a/core/primitives/src/sr25519.rs +++ b/core/primitives/src/sr25519.rs @@ -366,11 +366,7 @@ impl AsRef for Pair { /// Derive a single hard junction. #[cfg(feature = "std")] fn derive_hard_junction(secret: &SecretKey, cc: &[u8; CHAIN_CODE_LENGTH]) -> SecretKey { - ("SchnorrRistrettoHDKD", &secret.to_bytes()[..], cc).using_encoded(|data| - MiniSecretKey::from_bytes(blake2_rfc::blake2b::blake2b(32, &[], data).as_bytes()) - .expect("all 32-byte crypto-hash results are valid MiniSecretKeys; qed") - .expand() - ) + secret.hard_derive_mini_secret_key(signing_context(b"SchnorrRistrettoHDKD").bytes(&cc[..])).expand() } #[cfg(feature = "std")] @@ -507,9 +503,41 @@ impl Pair { #[cfg(test)] mod test { use super::*; - use crate::Pair as _Pair; + use crate::{Pair as _Pair, crypto::{Ss58Codec, DEV_PHRASE, DEV_ADDRESS}}; use hex_literal::{hex, hex_impl}; - + + #[test] + fn default_phrase_should_be_used() { + assert_eq!( + Pair::from_string("//Alice///password", None).unwrap().public(), + Pair::from_string(&format!("{}//Alice", DEV_PHRASE), Some("password")).unwrap().public(), + ); + assert_eq!( + Pair::from_string(&format!("{}/Alice", DEV_PHRASE), None).as_ref().map(Pair::public), + Pair::from_string("/Alice", None).as_ref().map(Pair::public) + ); + } + + #[test] + fn default_address_should_be_used() { + assert_eq!( + Public::from_string(&format!("{}/Alice", DEV_ADDRESS)), + Public::from_string("/Alice") + ); + } + + #[test] + fn default_phrase_should_correspond_to_default_address() { + assert_eq!( + Pair::from_string(&format!("{}/Alice", DEV_PHRASE), None).unwrap().public(), + Public::from_string(&format!("{}/Alice", DEV_ADDRESS)).unwrap(), + ); + assert_eq!( + Pair::from_string("/Alice", None).unwrap().public(), + Public::from_string("/Alice").unwrap() + ); + } + #[test] fn derive_soft_should_work() { let pair: Pair = Pair::from_seed(hex!( diff --git a/node-template/src/chain_spec.rs b/node-template/src/chain_spec.rs index fa5b44c65a..780d33be65 100644 --- a/node-template/src/chain_spec.rs +++ b/node-template/src/chain_spec.rs @@ -3,7 +3,6 @@ use node_template_runtime::{ AccountId, GenesisConfig, ConsensusConfig, TimestampConfig, BalancesConfig, SudoConfig, IndicesConfig, FeesConfig, }; -use substrate_cli::DEV_PHRASE; use substrate_service; use ed25519::Public as AuthorityId; @@ -26,13 +25,13 @@ pub enum Alternative { } fn authority_key(s: &str) -> AuthorityId { - ed25519::Pair::from_string(&format!("{}//{}", DEV_PHRASE, s), None) + ed25519::Pair::from_string(&format!("//{}", s), None) .expect("static values are valid; qed") .public() } fn account_key(s: &str) -> AccountId { - ed25519::Pair::from_string(&format!("{}//{}", DEV_PHRASE, s), None) + ed25519::Pair::from_string(&format!("//{}", s), None) .expect("static values are valid; qed") .public() } diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index db36ac9223..53980de033 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -25,7 +25,6 @@ pub use node_runtime::GenesisConfig; use substrate_service; use hex_literal::{hex, hex_impl}; use substrate_telemetry::TelemetryEndpoints; -use cli::DEV_PHRASE; const STAGING_TELEMETRY_URL: &str = "wss://telemetry.polkadot.io/submit/"; @@ -188,14 +187,14 @@ pub fn staging_testnet_config() -> ChainSpec { /// Helper function to generate AccountId from seed pub fn get_account_id_from_seed(seed: &str) -> AccountId { - sr25519::Pair::from_string(&format!("{}//{}", DEV_PHRASE, seed), None) + sr25519::Pair::from_string(&format!("//{}", seed), None) .expect("static values are valid; qed") .public() } /// Helper function to generate AuthorityId from seed pub fn get_session_key_from_seed(seed: &str) -> AuthorityId { - ed25519::Pair::from_string(&format!("{}//{}", DEV_PHRASE, seed), None) + ed25519::Pair::from_string(&format!("//{}", seed), None) .expect("static values are valid; qed") .public() } -- GitLab From 7f2ab7b89e988035748dc1464780c1d36ffc631a Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Fri, 15 Mar 2019 14:52:22 +0100 Subject: [PATCH 032/120] Add a 16MiB hard limit to Substrate packets (#2009) --- core/network-libp2p/src/custom_proto/upgrade.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/network-libp2p/src/custom_proto/upgrade.rs b/core/network-libp2p/src/custom_proto/upgrade.rs index b411096aa4..caab8ec9d0 100644 --- a/core/network-libp2p/src/custom_proto/upgrade.rs +++ b/core/network-libp2p/src/custom_proto/upgrade.rs @@ -388,7 +388,11 @@ where TSubstream: AsyncRead + AsyncWrite, socket: TSubstream, info: Self::Info, ) -> Self::Future { - let framed = Framed::new(socket, UviBytes::default()); + let framed = { + let mut codec = UviBytes::default(); + codec.set_max_len(16 * 1024 * 1024); // 16 MiB hard limit for packets. + Framed::new(socket, codec) + }; future::ok(RegisteredProtocolSubstream { is_closing: false, -- GitLab From a29f214132a81f82e8b833f4d941b6d57680989f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20M=C3=BCller?= Date: Fri, 15 Mar 2019 15:04:01 +0100 Subject: [PATCH 033/120] Add grandpa telemetry (+ other minor improvements) (#1997) * Support skipping the interactive purge prompt Skip it via `cargo run -- purge-chain -y`. * Fix typos * Add Grandpa telemetry * Address comments * Revert unnecessary version bump * Version bump to make CI run * Remove unnecessary cast * Do not bump version --- CONTRIBUTING.adoc | 2 +- Cargo.lock | 1 + core/basic-authorship/Cargo.toml | 1 + core/basic-authorship/src/basic_authorship.rs | 5 +++ core/cli/src/lib.rs | 33 ++++++++++-------- core/cli/src/params.rs | 4 +++ core/client/db/src/storage_cache.rs | 2 +- core/finality-grandpa/src/authorities.rs | 7 ++++ core/finality-grandpa/src/communication.rs | 32 +++++++++++++++++ core/finality-grandpa/src/environment.rs | 9 +++++ core/finality-grandpa/src/finality_proof.rs | 7 ++-- core/finality-grandpa/src/lib.rs | 31 ++++++++++++++-- core/inherents/src/lib.rs | 2 +- core/network/src/consensus_gossip.rs | 2 +- core/primitives/src/sandbox.rs | 2 +- core/sr-api-macros/src/decl_runtime_apis.rs | 10 +++--- core/sr-api-macros/src/impl_runtime_apis.rs | 4 +-- core/sr-api-macros/src/lib.rs | 2 +- core/sr-api-macros/src/utils.rs | 2 +- core/sr-io/without_std.rs | 2 +- core/sr-primitives/src/lib.rs | 6 ++-- core/sr-sandbox/src/lib.rs | 2 +- core/test-runtime/src/lib.rs | 4 +-- core/test-runtime/src/system.rs | 2 +- .../substrate_test_runtime.compact.wasm | Bin 56647 -> 56631 bytes .../release/node_runtime.compact.wasm | Bin 874401 -> 873354 bytes srml/metadata/src/lib.rs | 2 +- srml/support/src/dispatch.rs | 2 +- srml/support/src/double_map.rs | 2 +- srml/support/src/event.rs | 2 +- srml/support/src/traits.rs | 6 ++-- 31 files changed, 141 insertions(+), 47 deletions(-) diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc index 30bf3a1bb2..7098869dcc 100644 --- a/CONTRIBUTING.adoc +++ b/CONTRIBUTING.adoc @@ -47,7 +47,7 @@ When reviewing a pull request, the end-goal is to suggest useful changes to the == Helping out -We use https://github.com/paritytech/substrate/labels[labels] to manage PRs and issues and communicate state of a PR. Please familiarize yourself with them. Further more we are organising issues in https://github.com/paritytech/substrate/milestones[milestones]. Best way to get started is to a pick a ticket from the current milestone tagged https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AQ2-easy[`easy`] or https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AQ3-medium[`medium`] and get going or https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AX1-mentor[`mentor`] and get in contact with the mentor offering their support on that larger task. +We use https://github.com/paritytech/substrate/labels[labels] to manage PRs and issues and communicate state of a PR. Please familiarize yourself with them. Furthermore we are organising issues in https://github.com/paritytech/substrate/milestones[milestones]. Best way to get started is to a pick a ticket from the current milestone tagged https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AQ2-easy[`easy`] or https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AQ3-medium[`medium`] and get going or https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AX1-mentor[`mentor`] and get in contact with the mentor offering their support on that larger task. == Releases diff --git a/Cargo.lock b/Cargo.lock index 568a71a265..536354b919 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3612,6 +3612,7 @@ dependencies = [ "substrate-consensus-common 0.1.0", "substrate-inherents 0.1.0", "substrate-primitives 0.1.0", + "substrate-telemetry 0.3.1", "substrate-test-client 0.1.0", "substrate-transaction-pool 0.1.0", ] diff --git a/core/basic-authorship/Cargo.toml b/core/basic-authorship/Cargo.toml index 82187db803..cb801b9a13 100644 --- a/core/basic-authorship/Cargo.toml +++ b/core/basic-authorship/Cargo.toml @@ -14,6 +14,7 @@ consensus_common = { package = "substrate-consensus-common", path = "../../core/ primitives = { package = "substrate-primitives", path = "../../core/primitives" } inherents = { package = "substrate-inherents", path = "../inherents" } transaction_pool = { package = "substrate-transaction-pool", path = "../../core/transaction-pool" } +substrate-telemetry = { path = "../telemetry" } [dev-dependencies] test-client = { package = "substrate-test-client", path = "../../core/test-client" } diff --git a/core/basic-authorship/src/basic_authorship.rs b/core/basic-authorship/src/basic_authorship.rs index 71114ad2da..579ac17fb1 100644 --- a/core/basic-authorship/src/basic_authorship.rs +++ b/core/basic-authorship/src/basic_authorship.rs @@ -37,6 +37,7 @@ use runtime_primitives::generic::BlockId; use runtime_primitives::ApplyError; use transaction_pool::txpool::{self, Pool as TransactionPool}; use inherents::InherentData; +use substrate_telemetry::{telemetry, CONSENSUS_INFO}; /// Build new blocks. pub trait BlockBuilder { @@ -252,6 +253,10 @@ impl Proposer where .collect::>() .join(", ") ); + telemetry!(CONSENSUS_INFO; "prepared_block_for_proposing"; + "number" => ?block.header().number(), + "hash" => ?<::Block as BlockT>::Hash::from(block.header().hash()), + ); let substrate_block = Decode::decode(&mut block.encode().as_slice()) .expect("blocks are defined to serialize to substrate blocks correctly; qed"); diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index 3a2798fd2d..189681338c 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -574,23 +574,28 @@ where S: FnOnce(&str) -> Result>>, String>, { let config = create_config_with_db_path::(spec_factory, &cli.shared_params, version)?; - let db_path = config.database_path; - print!("Are you sure to remove {:?}? (y/n)", &db_path); - stdout().flush().expect("failed to flush stdout"); - - let mut input = String::new(); - stdin().read_line(&mut input)?; - let input = input.trim(); - - match input.chars().nth(0) { - Some('y') | Some('Y') => { - fs::remove_dir_all(&db_path)?; - println!("{:?} removed.", &db_path); - }, - _ => println!("Aborted"), + + if cli.yes == false { + print!("Are you sure to remove {:?}? (y/n)", &db_path); + stdout().flush().expect("failed to flush stdout"); + + let mut input = String::new(); + stdin().read_line(&mut input)?; + let input = input.trim(); + + match input.chars().nth(0) { + Some('y') | Some('Y') => {}, + _ => { + println!("Aborted"); + return Ok(()); + }, + } } + fs::remove_dir_all(&db_path)?; + println!("{:?} removed.", &db_path); + Ok(()) } diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index 6f59434237..bffd71b8c7 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -338,6 +338,10 @@ impl_get_log_filter!(RevertCmd); /// The `purge-chain` command used to remove the whole chain. #[derive(Debug, StructOpt, Clone)] pub struct PurgeChainCmd { + /// Skip interactive prompt by answering yes automatically. + #[structopt(short = "y")] + pub yes: bool, + #[allow(missing_docs)] #[structopt(flatten)] pub shared_params: SharedParams, diff --git a/core/client/db/src/storage_cache.rs b/core/client/db/src/storage_cache.rs index da07aa4d5a..6cfdbdd09b 100644 --- a/core/client/db/src/storage_cache.rs +++ b/core/client/db/src/storage_cache.rs @@ -109,7 +109,7 @@ impl, B: Block> CachingState { } } - /// Propagate local cache into the shared cache and synchonize + /// Propagate local cache into the shared cache and synchronize /// the shared cache with the best block state. /// This function updates the shared cache by removing entries /// that are invalidated by chain reorganization. `sync_cache` diff --git a/core/finality-grandpa/src/authorities.rs b/core/finality-grandpa/src/authorities.rs index 98b3973855..38bcec2347 100644 --- a/core/finality-grandpa/src/authorities.rs +++ b/core/finality-grandpa/src/authorities.rs @@ -22,6 +22,7 @@ use substrate_primitives::ed25519; use grandpa::VoterSet; use parity_codec::{Encode, Decode}; use log::{debug, info}; +use substrate_telemetry::{telemetry, CONSENSUS_INFO}; use std::cmp::Ord; use std::fmt::Debug; @@ -261,6 +262,9 @@ where // apply this change: make the set canonical info!(target: "finality", "Applying authority set change forced at block #{:?}", change.canon_height); + telemetry!(CONSENSUS_INFO; "afg.applying_forced_authority_set_change"; + "block" => ?change.canon_height + ); let median_last_finalized = match change.delay_kind { DelayKind::Best { ref median_last_finalized } => median_last_finalized.clone(), @@ -324,6 +328,9 @@ where if let Some(change) = change { info!(target: "finality", "Applying authority set change scheduled at block #{:?}", change.canon_height); + telemetry!(CONSENSUS_INFO; "afg.applying_scheduled_authority_set_change"; + "block" => ?change.canon_height + ); self.current_authorities = change.next_authorities; self.set_id += 1; diff --git a/core/finality-grandpa/src/communication.rs b/core/finality-grandpa/src/communication.rs index 54de53e7bb..1a8ff9ebab 100644 --- a/core/finality-grandpa/src/communication.rs +++ b/core/finality-grandpa/src/communication.rs @@ -21,11 +21,13 @@ use std::collections::HashMap; use std::sync::Arc; use grandpa::VoterSet; +use grandpa::Message::{Prevote, Precommit}; use futures::prelude::*; use futures::sync::mpsc; use log::{debug, trace}; use parity_codec::{Encode, Decode}; use substrate_primitives::{ed25519, Pair}; +use substrate_telemetry::{telemetry, CONSENSUS_INFO}; use runtime_primitives::traits::Block as BlockT; use tokio::timer::Interval; use crate::{Error, Network, Message, SignedMessage, Commit, @@ -283,6 +285,24 @@ pub(crate) fn checked_message_stream( debug!(target: "afg", "Skipping message from unknown voter {}", msg.message.id); return Ok(None); } + + match &msg.message.message { + Prevote(prevote) => { + telemetry!(CONSENSUS_INFO; "afg.received_prevote"; + "voter" => ?format!("{}", msg.message.id), + "target_number" => ?prevote.target_number, + "target_hash" => ?prevote.target_hash, + ); + }, + Precommit(precommit) => { + telemetry!(CONSENSUS_INFO; "afg.received_precommit"; + "voter" => ?format!("{}", msg.message.id), + "target_number" => ?precommit.target_number, + "target_hash" => ?precommit.target_hash, + ); + }, + }; + Ok(Some(msg.message)) } _ => { @@ -436,6 +456,15 @@ pub(crate) fn checked_commit_stream( match msg { GossipMessage::Commit(msg) => { let round = msg.round; + let precommits_signed_by: Vec = + msg.message.auth_data.iter().map(move |(_, a)| { + format!("{}", a) + }).collect(); + telemetry!(CONSENSUS_INFO; "afg.received_commit"; + "contains_precommits_signed_by" => ?precommits_signed_by, + "target_number" => ?msg.message.target_number, + "target_hash" => ?msg.message.target_hash, + ); check_compact_commit::(msg.message, &*voters).map(move |c| (round, c)) }, _ => { @@ -477,6 +506,9 @@ impl> Sink for CommitsOut { } let (round, commit) = input; + telemetry!(CONSENSUS_INFO; "afg.commit_issued"; + "target_number" => ?commit.target_number, "target_hash" => ?commit.target_hash, + ); let (precommits, auth_data) = commit.precommits.into_iter() .map(|signed| (signed.precommit, (signed.signature, signed.id))) .unzip(); diff --git a/core/finality-grandpa/src/environment.rs b/core/finality-grandpa/src/environment.rs index a9b5a43d01..685337a311 100644 --- a/core/finality-grandpa/src/environment.rs +++ b/core/finality-grandpa/src/environment.rs @@ -34,6 +34,7 @@ use runtime_primitives::traits::{ As, Block as BlockT, Header as HeaderT, NumberFor, One, Zero, }; use substrate_primitives::{Blake2Hasher, ed25519, H256, Pair}; +use substrate_telemetry::{telemetry, CONSENSUS_INFO}; use crate::{ Commit, Config, Error, Network, Precommit, Prevote, @@ -469,6 +470,9 @@ pub(crate) fn finalize_block, E, RA>( warn!(target: "finality", "Error applying finality to block {:?}: {:?}", (hash, number), e); e })?; + telemetry!(CONSENSUS_INFO; "afg.finalized_blocks_up_to"; + "number" => ?number, "hash" => ?hash, + ); let new_authorities = if let Some((canon_hash, canon_number)) = status.new_set_block { // the authority set has changed. @@ -480,6 +484,11 @@ pub(crate) fn finalize_block, E, RA>( info!("Applying GRANDPA set change to new set {:?}", set_ref); } + telemetry!(CONSENSUS_INFO; "afg.generating_new_authority_set"; + "number" => ?canon_number, "hash" => ?canon_hash, + "authorities" => ?set_ref.to_vec(), + "set_id" => ?new_id, + ); Some(NewAuthoritySet { canon_hash, canon_number, diff --git a/core/finality-grandpa/src/finality_proof.rs b/core/finality-grandpa/src/finality_proof.rs index daebe3b72a..2b34a094a0 100644 --- a/core/finality-grandpa/src/finality_proof.rs +++ b/core/finality-grandpa/src/finality_proof.rs @@ -44,6 +44,7 @@ use runtime_primitives::traits::{ }; use substrate_primitives::{ed25519, H256}; use ed25519::Public as AuthorityId; +use substrate_telemetry::{telemetry, CONSENSUS_INFO}; use crate::justification::GrandpaJustification; @@ -170,14 +171,14 @@ fn do_check_finality_proof, C, J>( } } - // check that the last header in finalization path is the jsutification target block + // check that the last header in finalization path is the justification target block let just_block = proof.justification.target_block(); { let finalized_header = proof.finalization_path.last() .expect("checked above that proof.finalization_path is not empty; qed"); if *finalized_header.number() != just_block.0 || finalized_header.hash() != just_block.1 { return Err(ClientErrorKind::BadJustification( - "finality proof: target jsutification block is not a part of finalized path".into() + "finality proof: target justification block is not a part of finalized path".into() ).into()); } } @@ -196,6 +197,8 @@ fn do_check_finality_proof, C, J>( // and now check justification proof.justification.verify(set_id, &grandpa_authorities.into_iter().collect())?; + telemetry!(CONSENSUS_INFO; "afg.finality_proof_ok"; + "set_id" => ?set_id, "finalized_header_hash" => ?block.1); Ok(proof.finalization_path) } diff --git a/core/finality-grandpa/src/lib.rs b/core/finality-grandpa/src/lib.rs index 67953489e8..a62cceb655 100644 --- a/core/finality-grandpa/src/lib.rs +++ b/core/finality-grandpa/src/lib.rs @@ -69,7 +69,7 @@ use fg_primitives::GrandpaApi; use inherents::InherentDataProviders; use runtime_primitives::generic::BlockId; use substrate_primitives::{ed25519, H256, Blake2Hasher, Pair}; -use substrate_telemetry::{telemetry, CONSENSUS_TRACE, CONSENSUS_DEBUG, CONSENSUS_WARN}; +use substrate_telemetry::{telemetry, CONSENSUS_TRACE, CONSENSUS_DEBUG, CONSENSUS_WARN, CONSENSUS_INFO}; use srml_finality_tracker; @@ -388,6 +388,17 @@ impl GossipValidator { } let topic = commit_topic::(full.set_id); + + let precommits_signed_by: Vec = full.message.auth_data.iter().map(move |(_, a)| { + format!("{}", a) + }).collect(); + telemetry!(CONSENSUS_INFO; "afg.received_commit_msg"; + "contains_precommits_signed_by" => ?precommits_signed_by, + "round" => ?full.round, + "set_id" => ?full.set_id, + "topic" => ?topic, + "block_hash" => ?full.message, + ); network_gossip::ValidationResult::Valid(topic) } } @@ -750,7 +761,13 @@ fn register_finality_tracker_inherent_data_provider Err(std::borrow::Cow::Owned(e.to_string())), - Ok(info) => Ok(info.finalized_number), + Ok(info) => { + telemetry!(CONSENSUS_INFO; "afg.finalized"; + "finalized_number" => ?info.finalized_number, + "finalized_hash" => ?info.finalized_hash, + ); + Ok(info.finalized_number) + }, } })) .map_err(|err| consensus_common::ErrorKind::InherentData(err.into()).into()) @@ -862,6 +879,16 @@ pub fn run_grandpa, N, RA>( let handle_voter_command = move |command: VoterCommand<_, _>, voter_commands_rx| { match command { VoterCommand::ChangeAuthorities(new) => { + let voters: Vec = new.authorities.iter().map(move |(a, _)| { + format!("{}", a) + }).collect(); + telemetry!(CONSENSUS_INFO; "afg.voter_command_change_authorities"; + "number" => ?new.canon_number, + "hash" => ?new.canon_hash, + "voters" => ?voters, + "set_id" => ?new.set_id, + ); + // start the new authority set using the block where the // set changed (not where the signal happened!) as the base. let genesis_state = RoundState::genesis((new.canon_hash, new.canon_number)); diff --git a/core/inherents/src/lib.rs b/core/inherents/src/lib.rs index 4f9c8b8006..eadd45ba9e 100644 --- a/core/inherents/src/lib.rs +++ b/core/inherents/src/lib.rs @@ -399,7 +399,7 @@ pub trait ProvideInherent { fn create_inherent(data: &InherentData) -> Option; /// Check the given inherent if it is valid. - /// Checking the inherent is optional and can be ommitted. + /// Checking the inherent is optional and can be omitted. fn check_inherent(_: &Self::Call, _: &InherentData) -> Result<(), Self::Error> { Ok(()) } diff --git a/core/network/src/consensus_gossip.rs b/core/network/src/consensus_gossip.rs index dbd8836b21..72a384e97a 100644 --- a/core/network/src/consensus_gossip.rs +++ b/core/network/src/consensus_gossip.rs @@ -315,7 +315,7 @@ impl ConsensusGossip { use std::collections::hash_map::Entry; let engine_id = message.engine_id; - //validate the message + // validate the message let (topic, status) = match self.validators.get(&engine_id) .map(|v| v.validate(&message.data)) { diff --git a/core/primitives/src/sandbox.rs b/core/primitives/src/sandbox.rs index c8404c9eed..773a6b4893 100644 --- a/core/primitives/src/sandbox.rs +++ b/core/primitives/src/sandbox.rs @@ -164,7 +164,7 @@ pub const MEM_UNLIMITED: u32 = -1i32 as u32; /// For FFI purposes. pub const ERR_OK: u32 = 0; -/// Validation or instantiation error occured when creating new +/// Validation or instantiation error occurred when creating new /// sandboxed module instance. /// /// For FFI purposes. diff --git a/core/sr-api-macros/src/decl_runtime_apis.rs b/core/sr-api-macros/src/decl_runtime_apis.rs index d98b566545..9e4c38f087 100644 --- a/core/sr-api-macros/src/decl_runtime_apis.rs +++ b/core/sr-api-macros/src/decl_runtime_apis.rs @@ -51,7 +51,7 @@ const API_VERSION_ATTRIBUTE: &str = "api_version"; /// Is used when the function signature changed between different versions of a trait. /// This attribute should be placed on the old signature of the function. const CHANGED_IN_ATTRIBUTE: &str = "changed_in"; -/// All attributes that we support in the declaratio of a runtime api trait. +/// All attributes that we support in the declaration of a runtime api trait. const SUPPORTED_ATTRIBUTE_NAMES: &[&str] = &[ CORE_TRAIT_ATTRIBUTE, API_VERSION_ATTRIBUTE, CHANGED_IN_ATTRIBUTE ]; @@ -127,7 +127,7 @@ fn return_type_is_using_block(ty: &ReturnType) -> bool { visitor.result } -/// Replace all occurences of `Block` with `NodeBlock` +/// Replace all occurrences of `Block` with `NodeBlock` struct ReplaceBlockWithNodeBlock {} impl Fold for ReplaceBlockWithNodeBlock { @@ -140,13 +140,13 @@ impl Fold for ReplaceBlockWithNodeBlock { } } -/// Replace all occurences of `Block` with `NodeBlock` +/// Replace all occurrences of `Block` with `NodeBlock` fn fn_arg_replace_block_with_node_block(fn_arg: FnArg) -> FnArg { let mut replace = ReplaceBlockWithNodeBlock {}; fold::fold_fn_arg(&mut replace, fn_arg) } -/// Replace all occurences of `Block` with `NodeBlock` +/// Replace all occurrences of `Block` with `NodeBlock` fn return_type_replace_block_with_node_block(return_type: ReturnType) -> ReturnType { let mut replace = ReplaceBlockWithNodeBlock {}; fold::fold_return_type(&mut replace, return_type) @@ -162,7 +162,7 @@ fn generate_native_call_generators(decl: &ItemTrait) -> Result { let trait_ = &decl.ident; let crate_ = generate_crate_access(HIDDEN_INCLUDES_ID); - // Auxilariy function that is used to convert between types that use different block types. + // Auxiliary function that is used to convert between types that use different block types. // The function expects that both a convertable by encoding the one and decoding the other. result.push(quote!( #[cfg(any(feature = "std", test))] diff --git a/core/sr-api-macros/src/impl_runtime_apis.rs b/core/sr-api-macros/src/impl_runtime_apis.rs index 4ea3e8331a..5cfb5fcc93 100644 --- a/core/sr-api-macros/src/impl_runtime_apis.rs +++ b/core/sr-api-macros/src/impl_runtime_apis.rs @@ -407,7 +407,7 @@ fn generate_api_impl_for_runtime(impls: &[ItemImpl]) -> Result { } -/// Auxilariy data structure that is used to convert `impl Api for Runtime` to +/// Auxiliary data structure that is used to convert `impl Api for Runtime` to /// `impl Api for RuntimeApi`. /// This requires us to replace the runtime `Block` with the node `Block`, /// `impl Api for Runtime` with `impl Api for RuntimeApi` and replace the method implementations @@ -483,7 +483,7 @@ impl<'a> Fold for ApiRuntimeImplToApiRuntimeApiImpl<'a> { -> #crate_::error::Result<#crate_::runtime_api::NativeOrEncoded<#ret_type>> ); - // Generate the new method implementation that calls into the runime. + // Generate the new method implementation that calls into the runtime. parse_quote!( { // Get the error to the user (if we have one). diff --git a/core/sr-api-macros/src/lib.rs b/core/sr-api-macros/src/lib.rs index 9df0b0b8af..72e143eb1a 100644 --- a/core/sr-api-macros/src/lib.rs +++ b/core/sr-api-macros/src/lib.rs @@ -155,7 +155,7 @@ pub fn impl_runtime_apis(input: TokenStream) -> TokenStream { /// /// To support versioning of the traits, the macro supports the attribute `#[api_version(1)]`. /// The attribute supports any `u32` as version. By default, each trait is at version `1`, if no -/// version is provided. We also support chaning the signature of a method. This signature +/// version is provided. We also support changing the signature of a method. This signature /// change is highlighted with the `#[changed_in(2)]` attribute above a method. A method that is /// tagged with this attribute is callable by the name `METHOD_before_version_VERSION`. This /// method will only support calling into wasm, trying to call into native will fail (change the diff --git a/core/sr-api-macros/src/utils.rs b/core/sr-api-macros/src/utils.rs index 4ad8b99840..e593e41ebe 100644 --- a/core/sr-api-macros/src/utils.rs +++ b/core/sr-api-macros/src/utils.rs @@ -54,7 +54,7 @@ pub fn generate_hidden_includes(unique_id: &'static str) -> TokenStream { }.into() } -/// Generates the access to the `subtrate_client` crate. +/// Generates the access to the `substrate_client` crate. pub fn generate_crate_access(unique_id: &'static str) -> TokenStream { if env::var("CARGO_PKG_NAME").unwrap() == "substrate-client" { quote!( crate ) diff --git a/core/sr-io/without_std.rs b/core/sr-io/without_std.rs index 41dc530d56..e3cf8318a6 100644 --- a/core/sr-io/without_std.rs +++ b/core/sr-io/without_std.rs @@ -580,7 +580,7 @@ pub fn sr25519_verify>(sig: &[u8; 64], msg: &[u8], pubkey: P) -> /// Verify and recover a SECP256k1 ECDSA signature. /// - `sig` is passed in RSV format. V should be either 0/1 or 27/28. -/// - returns `None` if the signatue is bad, the 64-byte pubkey (doesn't include the 0x04 prefix). +/// - returns `None` if the signature is bad, the 64-byte pubkey (doesn't include the 0x04 prefix). pub fn secp256k1_ecdsa_recover(sig: &[u8; 65], msg: &[u8; 32]) -> Result<[u8; 64], EcdsaVerifyError> { let mut pubkey = [0u8; 64]; match unsafe { diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index d0e9dbc8c0..0c77b1a468 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -625,7 +625,7 @@ macro_rules! impl_outer_log { } impl $crate::codec::Decode for $name { - /// `generic::DigestItem` binray compatible decode. + /// `generic::DigestItem` binary compatible decode. fn decode(input: &mut I) -> Option { let gen: $crate::generic::DigestItem<$($genarg),*> = $crate::codec::Decode::decode(input)?; @@ -634,7 +634,7 @@ macro_rules! impl_outer_log { } impl $crate::codec::Encode for $name { - /// `generic::DigestItem` binray compatible encode. + /// `generic::DigestItem` binary compatible encode. fn encode(&self) -> Vec { match self.dref() { Some(dref) => dref.encode(), @@ -665,7 +665,7 @@ macro_rules! impl_outer_log { }; } -/// Simple blob to hold an extrinsic without commiting to its format and ensure it is serialized +/// Simple blob to hold an extrinsic without committing to its format and ensure it is serialized /// correctly. #[derive(PartialEq, Eq, Clone, Default, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug))] diff --git a/core/sr-sandbox/src/lib.rs b/core/sr-sandbox/src/lib.rs index 9130b0544d..e8bdd5727e 100755 --- a/core/sr-sandbox/src/lib.rs +++ b/core/sr-sandbox/src/lib.rs @@ -140,7 +140,7 @@ impl EnvironmentDefinitionBuilder { } } - /// Register a host function in this environment defintion. + /// Register a host function in this environment definition. /// /// NOTE that there is no constraints on type of this function. An instance /// can import function passed here with any signature it wants. It can even import diff --git a/core/test-runtime/src/lib.rs b/core/test-runtime/src/lib.rs index 9c6f26e4a0..36950bfb1b 100644 --- a/core/test-runtime/src/lib.rs +++ b/core/test-runtime/src/lib.rs @@ -214,7 +214,7 @@ cfg_if! { pub trait TestAPI { /// Return the balance of the given account id. fn balance_of(id: AccountId) -> u64; - /// A benchmkark function that adds one to the given value and returns the result. + /// A benchmark function that adds one to the given value and returns the result. fn benchmark_add_one(val: &u64) -> u64; /// A benchmark function that adds one to each value in the given vector and returns the /// result. @@ -239,7 +239,7 @@ cfg_if! { pub trait TestAPI { /// Return the balance of the given account id. fn balance_of(id: AccountId) -> u64; - /// A benchmkark function that adds one to the given value and returns the result. + /// A benchmark function that adds one to the given value and returns the result. fn benchmark_add_one(val: &u64) -> u64; /// A benchmark function that adds one to each value in the given vector and returns the /// result. diff --git a/core/test-runtime/src/system.rs b/core/test-runtime/src/system.rs index a66eb58c1f..7c76fdd72b 100644 --- a/core/test-runtime/src/system.rs +++ b/core/test-runtime/src/system.rs @@ -52,7 +52,7 @@ pub fn nonce_of(who: AccountId) -> u64 { storage::get_or(&who.to_keyed_vec(NONCE_OF), 0) } -/// Get authorities ar given block. +/// Get authorities at given block. pub fn authorities() -> Vec { let len: u32 = storage::unhashed::get(well_known_keys::AUTHORITY_COUNT) .expect("There are always authorities in test-runtime"); diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index bff5d3c6fc95aab2ddefa81474a9c6111817dc45..7d348a504e4c4bbbaa5bf7c20fe4879d4bd81fbe 100644 GIT binary patch delta 2758 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%0An``r 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 diff --git a/srml/metadata/src/lib.rs b/srml/metadata/src/lib.rs index ec47b6ccc6..3f40753006 100644 --- a/srml/metadata/src/lib.rs +++ b/srml/metadata/src/lib.rs @@ -213,7 +213,7 @@ pub trait DefaultByte { fn default_byte(&self) -> Vec; } -/// Wrapper over dyn pointer for accessing a cached once byet value. +/// Wrapper over dyn pointer for accessing a cached once byte value. #[derive(Clone)] pub struct DefaultByteGetter(pub &'static dyn DefaultByte); diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index 166b545171..0e842a9802 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -30,7 +30,7 @@ pub use srml_metadata::{ /// A type that can not be instantiated. pub enum Never {} -/// Result of a module function call; either nothing (functions are only called for "side efeects") +/// Result of a module function call; either nothing (functions are only called for "side effects") /// or an error message. pub type Result = result::Result<(), &'static str>; diff --git a/srml/support/src/double_map.rs b/srml/support/src/double_map.rs index 609006aa33..a6dad9eabe 100644 --- a/srml/support/src/double_map.rs +++ b/srml/support/src/double_map.rs @@ -121,7 +121,7 @@ pub trait StorageDoubleMap { fn derive_key2(key2_data: Vec) -> Vec; /// Returns a compound key that consist of the two parts: (prefix, `k1`) and `k2`. - /// The first part is hased and then concatenated with a hash of `k2`. + /// The first part is hashed and then concatenated with a hash of `k2`. fn full_key(k1: &Q, k2: &R) -> Vec where Self::Key1: Borrow, diff --git a/srml/support/src/event.rs b/srml/support/src/event.rs index c945360f9c..dc51b66a94 100644 --- a/srml/support/src/event.rs +++ b/srml/support/src/event.rs @@ -67,7 +67,7 @@ pub use srml_metadata::{EventMetadata, DecodeDifferent, OuterEventMetadata, FnEn /// /// mod event2 { /// // Event that uses the generic parameter `Balance`. -/// // If no name for the generic parameter is speciefied explicitly, +/// // If no name for the generic parameter is specified explicitly, /// // the name will be taken from the type name of the trait. /// decl_event!( /// pub enum Event where ::Balance { diff --git a/srml/support/src/traits.rs b/srml/support/src/traits.rs index 37290d4ef1..fbce46eac0 100644 --- a/srml/support/src/traits.rs +++ b/srml/support/src/traits.rs @@ -176,7 +176,7 @@ pub trait Currency { /// they can be individually replaced or removed. pub type LockIdentifier = [u8; 8]; -/// A currency whose accounts can have liquidity restructions. +/// A currency whose accounts can have liquidity restrictions. pub trait LockableCurrency: Currency { /// The quantity used to denote time; usually just a `BlockNumber`. type Moment; @@ -210,7 +210,7 @@ pub trait LockableCurrency: Currency { /// Charge bytes fee trait pub trait ChargeBytesFee { /// Charge fees from `transactor` for an extrinsic (transaction) of encoded length - /// `encoded_len` bytes. Return Ok iff the payment was successful. + /// `encoded_len` bytes. Return Ok if the payment was successful. fn charge_base_bytes_fee(transactor: &AccountId, encoded_len: usize) -> Result<(), &'static str>; } @@ -222,7 +222,7 @@ pub trait ChargeFee: ChargeBytesFee { /// Charge `amount` of fees from `transactor`. Return Ok iff the payment was successful. fn charge_fee(transactor: &AccountId, amount: Self::Amount) -> Result<(), &'static str>; - /// Refund `amount` of previous charged fees from `transactor`. Return Ok iff the refund was successful. + /// Refund `amount` of previous charged fees from `transactor`. Return Ok if the refund was successful. fn refund_fee(transactor: &AccountId, amount: Self::Amount) -> Result<(), &'static str>; } -- GitLab From 7c95fb0bfd0b204e1200bf7e270538ba5e61e063 Mon Sep 17 00:00:00 2001 From: thiolliere Date: Fri, 15 Mar 2019 19:25:18 +0100 Subject: [PATCH 034/120] 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 --- Cargo.lock | 136 +-- Cargo.toml | 1 + core/basic-authorship/Cargo.toml | 2 +- core/client/Cargo.toml | 2 +- core/client/db/Cargo.toml | 2 +- core/consensus/aura/Cargo.toml | 2 +- core/consensus/aura/slots/Cargo.toml | 2 +- core/consensus/common/Cargo.toml | 2 +- core/consensus/rhd/Cargo.toml | 2 +- core/executor/Cargo.toml | 2 +- core/executor/wasm/Cargo.lock | 12 +- core/finality-grandpa/Cargo.toml | 2 +- core/finality-grandpa/primitives/Cargo.toml | 2 +- core/inherents/Cargo.toml | 2 +- core/network/Cargo.toml | 2 +- core/primitives/Cargo.toml | 2 +- core/rpc/Cargo.toml | 2 +- core/service/Cargo.toml | 2 +- core/sr-io/Cargo.toml | 2 +- core/sr-primitives/Cargo.toml | 2 +- core/sr-primitives/src/lib.rs | 27 +- core/sr-sandbox/Cargo.toml | 2 +- core/sr-version/Cargo.toml | 2 +- core/state-db/Cargo.toml | 2 +- core/state-machine/Cargo.toml | 2 +- core/test-client/Cargo.toml | 2 +- core/test-runtime/Cargo.toml | 2 +- core/test-runtime/wasm/Cargo.lock | 37 +- .../substrate_test_runtime.compact.wasm | Bin 56631 -> 56646 bytes core/transaction-pool/Cargo.toml | 2 +- core/transaction-pool/graph/Cargo.toml | 2 +- core/trie/Cargo.toml | 2 +- core/util/fork-tree/Cargo.toml | 2 +- node-template/Cargo.toml | 2 +- node-template/runtime/Cargo.toml | 2 +- node-template/runtime/wasm/Cargo.lock | 55 +- node/cli/Cargo.toml | 2 +- node/executor/Cargo.toml | 2 +- node/primitives/Cargo.toml | 2 +- node/runtime/Cargo.toml | 2 +- node/runtime/src/lib.rs | 5 +- node/runtime/wasm/Cargo.lock | 75 +- .../release/node_runtime.compact.wasm | Bin 873354 -> 871507 bytes srml/assets/Cargo.toml | 2 +- srml/aura/Cargo.toml | 2 +- srml/balances/Cargo.toml | 2 +- srml/balances/src/lib.rs | 69 +- srml/consensus/Cargo.toml | 2 +- srml/contract/Cargo.toml | 2 +- srml/council/Cargo.toml | 2 +- srml/democracy/Cargo.toml | 2 +- srml/example/Cargo.toml | 2 +- srml/executive/Cargo.toml | 2 +- srml/fees/Cargo.toml | 2 +- srml/finality-tracker/Cargo.toml | 2 +- srml/grandpa/Cargo.toml | 2 +- srml/indices/Cargo.toml | 2 +- srml/metadata/Cargo.toml | 2 +- srml/session/Cargo.toml | 2 +- srml/staking/Cargo.toml | 2 +- srml/sudo/Cargo.toml | 2 +- srml/support/Cargo.toml | 3 +- srml/support/procedural/src/lib.rs | 12 + srml/support/procedural/src/storage/impls.rs | 148 ++-- srml/support/procedural/src/storage/mod.rs | 15 +- .../procedural/src/storage/transformation.rs | 223 ++++- srml/support/src/dispatch.rs | 209 +++-- srml/support/src/event.rs | 101 ++- srml/support/src/lib.rs | 15 + srml/support/src/metadata.rs | 52 +- srml/support/src/origin.rs | 86 +- srml/support/src/runtime.rs | 773 +++++++----------- srml/support/test/Cargo.toml | 25 + srml/support/test/src/lib.rs | 0 srml/support/test/tests/instance.rs | 457 +++++++++++ srml/system/Cargo.toml | 2 +- srml/timestamp/Cargo.toml | 2 +- srml/treasury/Cargo.toml | 2 +- srml/treasury/src/lib.rs | 2 +- srml/upgrade-key/Cargo.toml | 2 +- 80 files changed, 1631 insertions(+), 1015 deletions(-) create mode 100644 srml/support/test/Cargo.toml create mode 100644 srml/support/test/src/lib.rs create mode 100644 srml/support/test/tests/instance.rs diff --git a/Cargo.lock b/Cargo.lock index 536354b919..08829f4ae2 100644 --- a/Cargo.lock +++ b/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/Cargo.toml b/Cargo.toml index 699f9a1589..286e93ecae 100644 --- a/Cargo.toml +++ b/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/core/basic-authorship/Cargo.toml b/core/basic-authorship/Cargo.toml index cb801b9a13..d173ac66ee 100644 --- a/core/basic-authorship/Cargo.toml +++ b/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/core/client/Cargo.toml b/core/client/Cargo.toml index 495b11b61d..f797d93f1f 100644 --- a/core/client/Cargo.toml +++ b/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/core/client/db/Cargo.toml b/core/client/db/Cargo.toml index 8828eefa4f..97de2cd7cd 100644 --- a/core/client/db/Cargo.toml +++ b/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/core/consensus/aura/Cargo.toml b/core/consensus/aura/Cargo.toml index 10c4122c0e..ca4f139ee4 100644 --- a/core/consensus/aura/Cargo.toml +++ b/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/core/consensus/aura/slots/Cargo.toml b/core/consensus/aura/slots/Cargo.toml index fce628161e..3ad763cc18 100644 --- a/core/consensus/aura/slots/Cargo.toml +++ b/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/core/consensus/common/Cargo.toml b/core/consensus/common/Cargo.toml index 37184e3c0b..2eaf177874 100644 --- a/core/consensus/common/Cargo.toml +++ b/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/core/consensus/rhd/Cargo.toml b/core/consensus/rhd/Cargo.toml index 22d847e80e..71b45cf41b 100644 --- a/core/consensus/rhd/Cargo.toml +++ b/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/core/executor/Cargo.toml b/core/executor/Cargo.toml index 836386d77d..f34bfbbe91 100644 --- a/core/executor/Cargo.toml +++ b/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/core/executor/wasm/Cargo.lock b/core/executor/wasm/Cargo.lock index dc1159e8d0..8fa99afc3b 100644 --- a/core/executor/wasm/Cargo.lock +++ b/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/core/finality-grandpa/Cargo.toml b/core/finality-grandpa/Cargo.toml index c84e798fe7..070b073b99 100644 --- a/core/finality-grandpa/Cargo.toml +++ b/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/core/finality-grandpa/primitives/Cargo.toml b/core/finality-grandpa/primitives/Cargo.toml index 3891db8f01..a0bd36eb9a 100644 --- a/core/finality-grandpa/primitives/Cargo.toml +++ b/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/core/inherents/Cargo.toml b/core/inherents/Cargo.toml index 2ea3c69a76..d3292095cc 100644 --- a/core/inherents/Cargo.toml +++ b/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/core/network/Cargo.toml b/core/network/Cargo.toml index 4d78eeb602..6e7e8599db 100644 --- a/core/network/Cargo.toml +++ b/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/core/primitives/Cargo.toml b/core/primitives/Cargo.toml index 04094ff01e..4c176ef404 100644 --- a/core/primitives/Cargo.toml +++ b/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/core/rpc/Cargo.toml b/core/rpc/Cargo.toml index 762453f2b7..8998ebe81f 100644 --- a/core/rpc/Cargo.toml +++ b/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/core/service/Cargo.toml b/core/service/Cargo.toml index 59fd77a219..353a3a9973 100644 --- a/core/service/Cargo.toml +++ b/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/core/sr-io/Cargo.toml b/core/sr-io/Cargo.toml index fa04c17e3f..811c17e0b1 100644 --- a/core/sr-io/Cargo.toml +++ b/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/core/sr-primitives/Cargo.toml b/core/sr-primitives/Cargo.toml index 4ef85b4989..565b9fb1e4 100644 --- a/core/sr-primitives/Cargo.toml +++ b/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/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index 0c77b1a468..6df4bdeb78 100644 --- a/core/sr-primitives/src/lib.rs +++ b/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/core/sr-sandbox/Cargo.toml b/core/sr-sandbox/Cargo.toml index b48744240e..599e66d663 100755 --- a/core/sr-sandbox/Cargo.toml +++ b/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/core/sr-version/Cargo.toml b/core/sr-version/Cargo.toml index 5a1e6162f1..cf3062faac 100644 --- a/core/sr-version/Cargo.toml +++ b/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/core/state-db/Cargo.toml b/core/state-db/Cargo.toml index 17cd633518..28d5696928 100644 --- a/core/state-db/Cargo.toml +++ b/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/core/state-machine/Cargo.toml b/core/state-machine/Cargo.toml index 9a5c42abf2..61a99f8e94 100644 --- a/core/state-machine/Cargo.toml +++ b/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/core/test-client/Cargo.toml b/core/test-client/Cargo.toml index 821e87da40..5049b2ff9f 100644 --- a/core/test-client/Cargo.toml +++ b/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/core/test-runtime/Cargo.toml b/core/test-runtime/Cargo.toml index bddabbe928..812dd4bc28 100644 --- a/core/test-runtime/Cargo.toml +++ b/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/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index 0746e5aa81..f933220f0b 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/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/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/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/node-template/Cargo.toml b/node-template/Cargo.toml index 0c5d15da08..b66fe0e7de 100644 --- a/node-template/Cargo.toml +++ b/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/node-template/runtime/Cargo.toml b/node-template/runtime/Cargo.toml index 066e9da79d..d6cb7ea7f2 100644 --- a/node-template/runtime/Cargo.toml +++ b/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/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index 98c611de64..dfd1c90fee 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/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/node/cli/Cargo.toml b/node/cli/Cargo.toml index 8df7e76a54..28fb297e57 100644 --- a/node/cli/Cargo.toml +++ b/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/node/executor/Cargo.toml b/node/executor/Cargo.toml index d0e329b264..3e0f618bc7 100644 --- a/node/executor/Cargo.toml +++ b/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/node/primitives/Cargo.toml b/node/primitives/Cargo.toml index 724eb7d0ab..b7da80c9a8 100644 --- a/node/primitives/Cargo.toml +++ b/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/node/runtime/Cargo.toml b/node/runtime/Cargo.toml index 0c695f5ef1..6a5d334687 100644 --- a/node/runtime/Cargo.toml +++ b/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/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index ae24c263f7..7ca5c697f6 100644 --- a/node/runtime/src/lib.rs +++ b/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/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 7c87f49874..6d704abe36 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/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/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/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 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 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 zcQ}J1))%3NL05XizA(8JP~zc1{!9}co^d-_PJ+JEq=#qR#uKB<-tH@rpm&Sp@ZnTG zY--z@eOjk?NXhld4Yf)bslc723><>B0(Yef5`>!7>@;@*{a| z^}v0tR+VMr5iP1Ff)eV$yf24I2_IWFtD}OZ;%Y~5-M;ps#&(~deaue}(&|V*Fmgm* z=2OBS#lFK70(uVm#E+sD?8g>dw&jnraIBR-&bN=Y`)ij4{IG9`E;@49FG8|;xBTjx z{IdSrGyIZ1KKq5MvD~{fDIVY#LoodUIH&I1NFYHX6Mi+^@6~_=5f`uLr5!08I6A&UUsgK4kY-Ri zs5sv7_4H(N$K-AK#GW15-cTiiE0aG@*o)Ik={t2$2~K0Rsg z=-swww1ox&$_ALd9tV$QC^hv>oH{W>1Vr$Dowzwj_JVA(?7oQ~)Fe9FY;5Fq;_gFoQ7vM9mjhl*# zUw24z;Em=pWo`b@2P_E~n<*2hEeNcowl8y34k_r4dz0pE9LG04Ef|6 zf*07n*kF!eUcZv1Uf5nfrVT}&^N%X#qoAF?o*`C(R^hbuWOK_=KBMMBrIdM%Qe&iY zXcj;hC78%YG6|$I3rY8+bjybVC7uI7E={FD5%JTToHyg$VTSCrPX>^q(=H?+0z93| zDN+F7=r(a@L_=&+x|5fAat)14s?nC}wjcD$Uns3NP-QE<;Bk@m*9j4g8 zp8!)E`e2>Uu?FvRyunv%B4&;dX7F|hSS=;?r-Ca52H0nn8q6?Y!K)F#t}CA9OE^ye z*dbs8iz%r9^$EyT<}0MiNm)?Y!ti_BRkr=O6IEn=yw3re$Db?%ss&@y9=QTwG-Ln@ zqZDl=y@c5;QKp=nr~n7Fsq_{V)Tg=rBE$0v7-GGgA$mE(td}!PFW+94=baMmgr3?$ z+0fHw75s!Vtiyo=uE3M>d7LexpD-`~^Lsz8%gjdh!QxGy zG@pFzKWkRvmhgb_-7czpYee7@`nC8)Z2P5GsS zZuj#I^>^s(Am3asp_7~Q)9NL3?zH^$SfX&9Fytohlt;1W^Hap}K<;zWo3#Cg)+6UX z5||!fR8*Z}MA`2A3{_=6U{iVd0|f7vKfvli`2$q8F4{NXul0@}>`vwKDM#Lrvei}E zgup?)Hm$vP0yxs>M74o!GPr5jXkd;T_))S8v=P1xyknjp&M#FXwwqWA404^kKFxd$ z);WyXr}+#4XmhCY)Dpm)u&g2Q{l;oy1Pa0I4H=93^0o3K%pqXb=W{U2wKe4dXY)a1 zAkGEltFMuQK>`7ii1SJCVUP;1owm^?5N15s4gLZR$P=ssLeBi>Nd?ReJ?+Vw-MQhh z{lMXCcy2$Ca)x32n3JNwIXs{%>l@ai6tK|9yiYls_LvvKH~%;Po=N&rf049ib33_U zv*I0~0MH*Hvq)0_H?k#BfDIs0+t3q`R`SqkZRm-yzOi%`-d{mwq5Q-&MrcP1E!8t* zZVhA7I>rb|N{kWujKP?wlqQd-FjGT->v8l0_)=w9!5BR}=DWI>TC^=X$-IiOJP4bF z+e8{924$%|FN)&`udK|Pw9~UL!XPF%W7FLh)@MsH~ zd4u899=F6$ELLbLed`<4i%6>HeNJ;M!ZYo4a7`ifMwt3gn= z*W&2Dymh5C35|gT+N^M{tu$Nb&i^9p{HyVq4P+bqO8RxEOYq@#CWskEdQNh~rRl5b zs0)7@)Is&HzBIi--Q*L5AY7^bMamZ!qv06v&i4xAi?xc=i!V*j2keIKuwwVdRwdk6w{24EZ~%XjF}UXQmhGu+NSkn$;-s`%a4BN_7%ZJJEVaWXIwM%RK49qu0XwNI z?lwLtF?FDiL+3%}(Z(%L?ZQ(C+eJWK^eNyazO0wSIVl?WQA&uD7d240T;7HiZe<7jkPpc|BXFm z%P`ajy^qB;U4M>x8^cic97Q;6=;iNE659yx>#|~An1F$8TGNC)0r8R&r!1wEJd80j zBe#nBvdp;QO;t2V1=~Zg!mKD2p!bjwZAOfL0%)g)3V>-D$FfQRX54nkKLLsszA!@y z@a@%h$pRk_EPO`_hv6Nu3JebmyxDdt@+Yl8MeHJZAbo@Z3w@v-gG;eOL$<67YrM#y zVee`f>~M7`TdK)j^~$ESCA;7=_W_^fkQVyjuT6Gjd2h$ut+%n?Rr6YYvbI|u>b;q~ z_q{zkntR!3sI!;t*-~CiU%2^=00Tt_M|p&J%PNGyzHJxy)Du{V9QJxr1E-$AbmYR_8Zw8qbvb|Yf#144;0V@g7bL7Yd8fn2MZDXMU zJ_Mlp%Q?;vxo=>XTN~F|KuJS$pp-a~Xm}A&0fQ0^(aTCaNHk0@E5(x4oL`ikg*;a{ z*nz1^OvDouwj#$eD^h6K%Di4HLvQmk$1E$e;IFE4oU$^7hb`b^YorIMABuXMlU{8-np)8nwZOXM0D>xLd;Auto#an6 zr|&mx8B8O{qxUnF_v144AMDbFJB__p60AW*#9byX5Qm%g*a*TjAuLo>Z z1Wa#<6DtB1niv(2Z9kP#3bu@1PwEKq5$PI6Ab*}j->UGJ(!Z<~7-`TFx@=HmkqPG{ zS6`Z*WptkWq_Quvh2)qoi)j zFM;7J*iU(l-}64~e!|N)*1Mgab!qxsXHU=%Cco(qyx1}Dq-B#DFub$kwkm+bM4Q?H z3G^o7C&IPo+Cm%gr0wKDF_*R_zzVF0(vt~bfz72!nnPi3Vn}B%jR@+w+Sv_@ld@tq zjwB?ldLK*vU{mScEX!;*RaUOm4pT65_iJ12H?`i_COgEILoH6#7=w~lEsgeg2_lhb ze;BVP$G3hMd;X8#r;>Z$Lk3SVyUU^)&DptRW@4(@nVs&n=NkAvoF`vG+Ht^*l?gj< zO;=?@S9Jd*l{I(|_QZVWPw_Me?z*6U~wD%ujzbXiOB1%uZW%y3WoO>TlJ6#%^CFIeL?=a%Y z*V}2G&CZieY(4ft{M!;lbDe(+h)xWVLU}eN>yK%VvW>!)%~y1ZYZ_$8hQ6}9S?<~^ zyQkvJQoK_DsxlhcgF3N{#@6+`R*4zCg&rU=Q?-XF7i1WZOomxvBehC8d~}jPHH=v; zOW|7}hh6aBntX1uZ#fQMv~Ream-)_ND1}_&VqM2wSq+7Q0*z z;=oQ>C-5UD1DXmf?f?-`bVponYl$q)UA7r?bGDT{^~q0RMeH0HFbA_f9J3hxb`R z!24KO2&{aDeKU1s<@r&|=C)&;XAtPTnD}Ay~MhvjoS@-A$I6SW_ z_{oZb69Mm6>7M#EHsNrH!K@u(FvBQdFZv|gqzhaDCB!*>whe(Q>@aKq{pH3DxVMm9 zeg#ZP3IDyDZUl8^j0y<+9F%uMZ@S9Um!BM+ackqMeutx`d3Jn0dfZ`tszPVd20xW% zm;kd=$t4$EeBq_f_|az?fpDlQoitQ=1jn*IS;)SZ4Y~>q+^n7AUd{p(mNi|`z1L4( z6j&{tZ33OBm3RAd4b}u<+8R%;ch?jS9g2+mr)`QYnSeXH??}yM)($ME$2tPdK8X4X zaWt(Ob6&%eF;rqRBXLLZpLThkQ>^|S8jE@2afPz`A}etT*8c`-|~zZgidtk02GD+a=6Y2v=|(%kWHI+ zcJG!qn7aT>`z{7!*!J{Aov)sR?D*3k&+vM)v&mIE zkEB;T_a}b*n&&+K*;hW#hB=Ov+PBaV+|cM~4u}WhF}^99F(xS<>I8OC<6-g6$agDN zD%M);m;DT1*HSZ)%l;JJ{!)JsNC^+o*2V#nlZ_FW^VT@v7z`!)7cmq?XlM81!cgu; zFqFxm31hjKue+>0DG!L$toY_c=>(TVc!_9>tzQ;hw6VK4owCs;1FN{E<24Eeohmdk1e*ha+T|(>MvZkQdL$$Gc~mGo zMegIhlV7}685@{GP0C$#oSZW>tf(W_Gojo?)w7ka#VbeZX;2UU%6d-Fsd{Db;E~E6 zTc_aGBlSGCPAy0gVA2g@;N?iARp)v}#ex_+SJ-YKA~x(_gM0}wtB(zytv;mvNPS%( z$3Gx9Vf7j0dgNzKTt6r&cp_BV9hwG1z9HP012_0rR@Nh7ih9b<#d_w3&_aYfjALEu z;a^#gI%Qpo5`MzCeK%I)qq{IOYNyu^iR$4wBJ)y%Vn>w+^qah>qf#52ov)k}TRV;p z@XSETO>yjJLN-mf_1RB5YwI~RF81a$0AKzJw=TJZf?NW->du^ zn^u+>h*4A~2|w;J@$35OJsCXg85ADLOg}XSb~q!Cg&0WZoJYqmBD70ASrjPNMXp2V z%a0Ox6;UIQBJ*LB&l>YV`Tl}4pH{M^Kgh=cksgdyHgOeS$=5t}5LXa#D8hH|G@+y3uMfsT{O)2cbOt@Rx8D_W@3BFkaj zL}fJ-o{e7}khvnLz&D%r-L%F({<})(8h+tnlk9P&)RQ#@R2YmLlF>+!&rrp|zZT^# z#WWfuGOA3JFt+UQUMur`kh1p6HY%s7IN?q|*o3+`&7j5x!T>S}zfX6&2l+Jzya7|aG{J-f5} zc4Ch3#o5qn*5Dg6V*}_kcguE8mMtw2h!@=gCo5bkdg~r+@sBYst9F8~+c}c@l7zM6IlD(RnH<{;fu-Y@Bv0nomY@QA z>VrEVNqDH%%bTFEgoi52%1GP-DW3YE);`w0G*M&f1YLa!u&vOxLO;`v%zQQ=oQ&;M z8ce~4lG%Bzw4GQS2pv$F%A%DdqIiQXvmpn{6hW1|$X=|hEIS1Vop0W)EH)97*^f;} zn5jR{d?=`qr$kquchm`%cBXJNJ(#V=Rd{us}X

!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/srml/assets/Cargo.toml b/srml/assets/Cargo.toml index 621d4a1ac4..f274661e6c 100644 --- a/srml/assets/Cargo.toml +++ b/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/srml/aura/Cargo.toml b/srml/aura/Cargo.toml index bb8af29e8d..9d1eda38c0 100644 --- a/srml/aura/Cargo.toml +++ b/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/srml/balances/Cargo.toml b/srml/balances/Cargo.toml index c8d5d152a3..43759643dd 100644 --- a/srml/balances/Cargo.toml +++ b/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/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index c9b62998fc..ff0493f35f 100644 --- a/srml/balances/src/lib.rs +++ b/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/srml/consensus/Cargo.toml b/srml/consensus/Cargo.toml index 105f978c63..6adeb90d02 100644 --- a/srml/consensus/Cargo.toml +++ b/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/srml/contract/Cargo.toml b/srml/contract/Cargo.toml index d0c851e26e..0d373978b0 100644 --- a/srml/contract/Cargo.toml +++ b/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/srml/council/Cargo.toml b/srml/council/Cargo.toml index 868ec3bcff..e26003a73e 100644 --- a/srml/council/Cargo.toml +++ b/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/srml/democracy/Cargo.toml b/srml/democracy/Cargo.toml index 29b70938f2..890882c485 100644 --- a/srml/democracy/Cargo.toml +++ b/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/srml/example/Cargo.toml b/srml/example/Cargo.toml index c1cf286346..57abe374c9 100644 --- a/srml/example/Cargo.toml +++ b/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/srml/executive/Cargo.toml b/srml/executive/Cargo.toml index 04f6526666..0165a37bb2 100644 --- a/srml/executive/Cargo.toml +++ b/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/srml/fees/Cargo.toml b/srml/fees/Cargo.toml index d29d77c748..2bb4474ce6 100644 --- a/srml/fees/Cargo.toml +++ b/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/srml/finality-tracker/Cargo.toml b/srml/finality-tracker/Cargo.toml index ac30f1e13d..22691e1aa7 100644 --- a/srml/finality-tracker/Cargo.toml +++ b/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/srml/grandpa/Cargo.toml b/srml/grandpa/Cargo.toml index de260b622e..b7cc5dc231 100644 --- a/srml/grandpa/Cargo.toml +++ b/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/srml/indices/Cargo.toml b/srml/indices/Cargo.toml index 399c7b1bd0..2331f325d1 100644 --- a/srml/indices/Cargo.toml +++ b/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/srml/metadata/Cargo.toml b/srml/metadata/Cargo.toml index 1bbb8a77df..eed5e6b4e3 100644 --- a/srml/metadata/Cargo.toml +++ b/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/srml/session/Cargo.toml b/srml/session/Cargo.toml index 8412505d32..84b49b7788 100644 --- a/srml/session/Cargo.toml +++ b/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/srml/staking/Cargo.toml b/srml/staking/Cargo.toml index c548b3a2ef..967cee3391 100644 --- a/srml/staking/Cargo.toml +++ b/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/srml/sudo/Cargo.toml b/srml/sudo/Cargo.toml index 8473d2fb44..ef0bb59b53 100644 --- a/srml/sudo/Cargo.toml +++ b/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/srml/support/Cargo.toml b/srml/support/Cargo.toml index 2cc4cfa0c8..357aa0c757 100644 --- a/srml/support/Cargo.toml +++ b/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/srml/support/procedural/src/lib.rs b/srml/support/procedural/src/lib.rs index 47aef0fe9f..5464302e29 100644 --- a/srml/support/procedural/src/lib.rs +++ b/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/srml/support/procedural/src/storage/impls.rs b/srml/support/procedural/src/storage/impls.rs index 661f6b7a59..efbb9a8d7a 100644 --- a/srml/support/procedural/src/storage/impls.rs +++ b/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/srml/support/procedural/src/storage/mod.rs b/srml/support/procedural/src/storage/mod.rs index 4cf8ea216f..7bb547c4f7 100644 --- a/srml/support/procedural/src/storage/mod.rs +++ b/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/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index fc5ba7b721..c2c7438673 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/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/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index 0e842a9802..c6151d2390 100644 --- a/srml/support/src/dispatch.rs +++ b/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>; - $system:ident; - $vis:vis fn deposit_event() = default; - ) => { - impl<$trait_instance: $trait_name> $module<$trait_instance> { - $vis fn deposit_event(event: Event) { - <$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>; + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; $system:ident; - $vis:vis fn deposit_event<$ignore:ident>() = 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<$trait_instance>) { + 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() + <$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/srml/support/src/event.rs b/srml/support/src/event.rs index dc51b66a94..3dc132a490 100644 --- a/srml/support/src/event.rs +++ b/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/srml/support/src/lib.rs b/srml/support/src/lib.rs index 7914e7d677..89b14fe2fc 100644 --- a/srml/support/src/lib.rs +++ b/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/srml/support/src/metadata.rs b/srml/support/src/metadata.rs index 1a919e36f8..d61dbe4352 100644 --- a/srml/support/src/metadata.rs +++ b/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/srml/support/src/origin.rs b/srml/support/src/origin.rs index 9b76c3ac2b..2d97f218e0 100644 --- a/srml/support/src/origin.rs +++ b/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>; - ); - }; - ( - $(#[$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; + 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<$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/srml/support/src/runtime.rs b/srml/support/src/runtime.rs index dd48509451..c575383b26 100644 --- a/srml/support/src/runtime.rs +++ b/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:tt )* + ) => { + construct_runtime!( + { $( $preset )* }; + { + $( $expanded )* + $name: $module::{ $( - $rest_modules:ident - $( <$rest_modules_generic:ident> )* - $( ( $( $rest_modules_args:ident ),* ) )* + $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 >::{ + $( + $modules:ident + $( <$modules_generic:ident $(, $modules_instance:ident )?> )* + $( ( $( $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_instance>::{ $( - $expanded_modules - $( <$expanded_modules_generic> )* - $( ( $( $expanded_modules_args ),* ) )* + $modules $( <$modules_generic $(, $modules_instance=$module::$module_instance)?> )* + $( ( $( $modules_args ),* ) )* ),* }, - )* - $name: $module::{ - $( - $modules $( <$modules_generic> )* $( ( $( $modules_args ),* ) )* - ),* }; - $( - $rest_name: $rest_module $( - ::{ - $( - $rest_modules - $( <$rest_modules_generic> )* - $( ( $( $rest_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> )* ),* - })*; - ) => { - $crate::__decl_outer_config!( - $runtime; - $( $parsed_modules :: $parsed_name $( < $parsed_generic > )*, )* $module::$name; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - ),*; - ); - }; - ( - $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::{ - $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 >:: )? { + $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 > )*),*; - $name: $module::{ $( $modules $( <$modules_generic> )* ),* } - $( - , $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::{} - $(, $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 > )*),*; - $( - $rest_name: $rest_module::{ - $( $rest_modules $( <$rest_modules_generic> )* ),* - } - ),*; + { $( $parsed )* }; + $( $rest )* ); }; ( $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/srml/support/test/Cargo.toml b/srml/support/test/Cargo.toml new file mode 100644 index 0000000000..e1113eb468 --- /dev/null +++ b/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/srml/support/test/src/lib.rs b/srml/support/test/src/lib.rs new file mode 100644 index 0000000000..e69de29bb2 diff --git a/srml/support/test/tests/instance.rs b/srml/support/test/tests/instance.rs new file mode 100644 index 0000000000..373e3e23d0 --- /dev/null +++ b/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/srml/system/Cargo.toml b/srml/system/Cargo.toml index ea2628a3a2..bd199b97f9 100644 --- a/srml/system/Cargo.toml +++ b/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/srml/timestamp/Cargo.toml b/srml/timestamp/Cargo.toml index 0c089b60e6..413c487214 100644 --- a/srml/timestamp/Cargo.toml +++ b/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/srml/treasury/Cargo.toml b/srml/treasury/Cargo.toml index 9bfb4b1725..825fc73532 100644 --- a/srml/treasury/Cargo.toml +++ b/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/srml/treasury/src/lib.rs b/srml/treasury/src/lib.rs index aa0eec6479..f571420593 100644 --- a/srml/treasury/src/lib.rs +++ b/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/srml/upgrade-key/Cargo.toml b/srml/upgrade-key/Cargo.toml index c548798dec..4bdbd6404c 100644 --- a/srml/upgrade-key/Cargo.toml +++ b/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 } -- GitLab From 45824913c980bb1ba3963f9bba67775a507d8624 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Sat, 16 Mar 2019 14:46:47 +0100 Subject: [PATCH 035/120] Fixes for new Schnorrkel API (#2015) * Fixes for new Schnorrkel API * Include specific commit hash for schnorrkel --- Cargo.lock | 2 +- core/primitives/Cargo.toml | 2 +- core/primitives/src/sr25519.rs | 4 +--- subkey/Cargo.toml | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 08829f4ae2..f521384442 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2768,7 +2768,7 @@ dependencies = [ [[package]] name = "schnorrkel" version = "0.0.0" -source = "git+https://github.com/w3f/schnorrkel#0a0de4294b475ef6abdeebb50067f213ca79b3c7" +source = "git+https://github.com/w3f/schnorrkel#d3289df76b8ae6dfb68e733204c5c009df5343a9" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/core/primitives/Cargo.toml b/core/primitives/Cargo.toml index 4c176ef404..31a0790b58 100644 --- a/core/primitives/Cargo.toml +++ b/core/primitives/Cargo.toml @@ -22,7 +22,7 @@ untrusted = { version = "0.6", optional = true } hex-literal = { version = "0.1", optional = true } base58 = { version = "0.1", optional = true } blake2-rfc = { version = "0.2.18", optional = true } -schnorrkel = { git = "https://github.com/w3f/schnorrkel", optional = true } +schnorrkel = { git = "https://github.com/w3f/schnorrkel", optional = true, commit = "d3289df76b8ae6dfb68e733204c5c009df5343a9" } rand = { version = "0.6", optional = true } sha2 = { version = "0.8", optional = true } substrate-bip39 = { git = "https://github.com/paritytech/substrate-bip39", optional = true } diff --git a/core/primitives/src/sr25519.rs b/core/primitives/src/sr25519.rs index c9c9ee9ecc..f6e135ebef 100644 --- a/core/primitives/src/sr25519.rs +++ b/core/primitives/src/sr25519.rs @@ -21,8 +21,6 @@ //! for this to work. // end::description[] -#[cfg(feature = "std")] -use blake2_rfc; #[cfg(feature = "std")] use rand::rngs::OsRng; #[cfg(feature = "std")] @@ -366,7 +364,7 @@ impl AsRef for Pair { /// Derive a single hard junction. #[cfg(feature = "std")] fn derive_hard_junction(secret: &SecretKey, cc: &[u8; CHAIN_CODE_LENGTH]) -> SecretKey { - secret.hard_derive_mini_secret_key(signing_context(b"SchnorrRistrettoHDKD").bytes(&cc[..])).expand() + secret.hard_derive_mini_secret_key(Some(ChainCode(cc.clone())), b"").0.expand() } #[cfg(feature = "std")] diff --git a/subkey/Cargo.toml b/subkey/Cargo.toml index d6f8cdd88c..3a581e504a 100644 --- a/subkey/Cargo.toml +++ b/subkey/Cargo.toml @@ -11,7 +11,7 @@ clap = { version = "~2.32", features = ["yaml"] } tiny-bip39 = "0.6.0" rustc-hex = "2.0" substrate-bip39 = { git = "https://github.com/paritytech/substrate-bip39" } -schnorrkel = { git = "https://github.com/w3f/schnorrkel" } +schnorrkel = { git = "https://github.com/w3f/schnorrkel", commit = "d3289df76b8ae6dfb68e733204c5c009df5343a9" } hex = "0.3" [features] -- GitLab From 760aa7ce0ca223a4745b857ca4f576f59309af4f Mon Sep 17 00:00:00 2001 From: Stanislav Tkach Date: Mon, 18 Mar 2019 10:31:51 +0200 Subject: [PATCH 036/120] Update environmental version (#2027) --- Cargo.lock | 8 ++++---- core/sr-io/Cargo.toml | 4 ++-- core/sr-io/with_std.rs | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f521384442..3bd5878940 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -697,7 +697,7 @@ dependencies = [ [[package]] name = "environmental" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -2996,7 +2996,7 @@ dependencies = [ name = "sr-io" version = "0.1.0" dependencies = [ - "environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "environmental 1.0.1 (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.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4688,7 +4688,7 @@ name = "twox-hash" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -5090,7 +5090,7 @@ dependencies = [ "checksum either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0" "checksum elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "88d4851b005ef16de812ea9acdb7bece2f0a40dd86c07b85631d7dafa54537bb" "checksum env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "afb070faf94c85d17d50ca44f6ad076bce18ae92f0037d350947240a36e9d42e" -"checksum environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db746025e3ea695bfa0ae744dbacd5fcfc8db51b9760cf8bd0ab69708bb93c49" +"checksum environmental 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c7464757b80de8930c91c9afe77ddce501826bf9d134a87db2c67d9dc177e2c" "checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum exit-future 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "87559b08e99a81a92bbb867d237543e43495857749f688e0773390a20d56c61c" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" diff --git a/core/sr-io/Cargo.toml b/core/sr-io/Cargo.toml index 811c17e0b1..0c4c8b7ada 100644 --- a/core/sr-io/Cargo.toml +++ b/core/sr-io/Cargo.toml @@ -15,7 +15,7 @@ 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 } -environmental = { version = "~1.0", optional = true } +environmental = { version = "1.0.1", optional = true } substrate-state-machine = { path = "../state-machine", optional = true } trie = { package = "substrate-trie", path = "../trie", optional = true } @@ -35,4 +35,4 @@ std = [ ] nightly = [] strict = [] -wasm-nice-panic-message = [] \ No newline at end of file +wasm-nice-panic-message = [] diff --git a/core/sr-io/with_std.rs b/core/sr-io/with_std.rs index d67d4ec53c..8f9a67c167 100644 --- a/core/sr-io/with_std.rs +++ b/core/sr-io/with_std.rs @@ -26,7 +26,7 @@ pub use tiny_keccak::keccak256 as keccak_256; // pub use primitives::BlakeHasher; pub use substrate_state_machine::{Externalities, BasicExternalities, TestExternalities}; -use environmental::{environmental, thread_local_impl}; +use environmental::environmental; use primitives::{hexdisplay::HexDisplay, H256}; use hash_db::Hasher; -- GitLab From 19396b28e44c8cf4608a9d761ce75a61fe071c65 Mon Sep 17 00:00:00 2001 From: Gautam Dhameja Date: Mon, 18 Mar 2019 10:01:48 +0100 Subject: [PATCH 037/120] updated link for example module in template (#2020) --- node-template/runtime/src/template.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/node-template/runtime/src/template.rs b/node-template/runtime/src/template.rs index 300b48af11..10f8b1eb13 100644 --- a/node-template/runtime/src/template.rs +++ b/node-template/runtime/src/template.rs @@ -6,7 +6,7 @@ /// For more guidance on Substrate modules, see the example module -/// https://github.com/paritytech/substrate/blob/gav-template/srml/example/src/lib.rs +/// https://github.com/paritytech/substrate/blob/master/srml/example/src/lib.rs use support::{decl_module, decl_storage, decl_event, StorageValue, dispatch::Result}; use system::ensure_signed; -- GitLab From 91fa6594fe734ae41a2019cbc277cd175e7e91b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E5=85=89=E5=8D=8E?= Date: Mon, 18 Mar 2019 17:06:31 +0800 Subject: [PATCH 038/120] Remove unnecessary restrictions in executive module (#2024) --- .../release/node_runtime.compact.wasm | Bin 871507 -> 871556 bytes srml/executive/src/lib.rs | 12 ++++-------- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index f6ba616469aea564d52c8ce6382e4235bec26b1f..8f53f62b40a82a484157b4184ef8e280048a4018 100644 GIT binary patch delta 237967 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 delta 238001 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.&dcf6n~ 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

LQ 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 impl< System: system::Trait, - Block: traits::Block, + Block: BlockT, Context: Default, Payment: ChargeBytesFee, AllModules: OnInitialise + OnFinalise, -> ExecuteBlock for Executive where - Block::Extrinsic: Checkable + Codec, - >::Checked: Applyable, - <>::Checked as Applyable>::Call: Dispatchable, - <<>::Checked as Applyable>::Call as Dispatchable>::Origin: From> +> ExecuteBlock for Executive { fn execute_block(block: Block) { Self::execute_block(block); @@ -83,7 +79,7 @@ impl< impl< System: system::Trait, - Block: traits::Block, + Block: BlockT, Context: Default, Payment: ChargeBytesFee, AllModules: OnInitialise + OnFinalise, -- GitLab From df733337de8435e47bdeaf450a4d9ac7506dbd00 Mon Sep 17 00:00:00 2001 From: thiolliere Date: Mon, 18 Mar 2019 14:18:24 +0100 Subject: [PATCH 039/120] fix indexing event breakage (#2030) * fix instance event indexing breakage * fix infinite loop * update runtime impl version, and builds * Revert "Remove unnecessary restrictions in executive module (#2024)" This reverts commit 91fa6594fe734ae41a2019cbc277cd175e7e91b9. --- core/test-runtime/wasm/Cargo.lock | 6 +++--- node-template/runtime/wasm/Cargo.lock | 6 +++--- node/runtime/src/lib.rs | 2 +- node/runtime/wasm/Cargo.lock | 6 +++--- .../release/node_runtime.compact.wasm | Bin 871556 -> 871507 bytes srml/executive/src/lib.rs | 12 ++++++++---- srml/support/src/event.rs | 6 ++++-- 7 files changed, 22 insertions(+), 16 deletions(-) diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index f933220f0b..2099e14a7a 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -351,7 +351,7 @@ dependencies = [ [[package]] name = "environmental" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1368,7 +1368,7 @@ dependencies = [ name = "sr-io" version = "0.1.0" dependencies = [ - "environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "environmental 1.0.1 (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.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2199,7 +2199,7 @@ dependencies = [ "checksum ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81956bcf7ef761fb4e1d88de3fa181358a0d26cbcb9755b587a08f9119824b86" "checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" "checksum elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" -"checksum environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db746025e3ea695bfa0ae744dbacd5fcfc8db51b9760cf8bd0ab69708bb93c49" +"checksum environmental 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c7464757b80de8930c91c9afe77ddce501826bf9d134a87db2c67d9dc177e2c" "checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index dfd1c90fee..de85eaeeda 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -351,7 +351,7 @@ dependencies = [ [[package]] name = "environmental" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1402,7 +1402,7 @@ dependencies = [ name = "sr-io" version = "0.1.0" dependencies = [ - "environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "environmental 1.0.1 (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.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2350,7 +2350,7 @@ dependencies = [ "checksum ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81956bcf7ef761fb4e1d88de3fa181358a0d26cbcb9755b587a08f9119824b86" "checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" "checksum elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" -"checksum environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db746025e3ea695bfa0ae744dbacd5fcfc8db51b9760cf8bd0ab69708bb93c49" +"checksum environmental 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c7464757b80de8930c91c9afe77ddce501826bf9d134a87db2c67d9dc177e2c" "checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 7ca5c697f6..b03d74ea0b 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -59,7 +59,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 35, - impl_version: 38, + impl_version: 39, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 6d704abe36..81ae7c45cc 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -351,7 +351,7 @@ dependencies = [ [[package]] name = "environmental" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1437,7 +1437,7 @@ dependencies = [ name = "sr-io" version = "0.1.0" dependencies = [ - "environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", + "environmental 1.0.1 (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.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2521,7 +2521,7 @@ dependencies = [ "checksum ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81956bcf7ef761fb4e1d88de3fa181358a0d26cbcb9755b587a08f9119824b86" "checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" "checksum elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" -"checksum environmental 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "db746025e3ea695bfa0ae744dbacd5fcfc8db51b9760cf8bd0ab69708bb93c49" +"checksum environmental 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c7464757b80de8930c91c9afe77ddce501826bf9d134a87db2c67d9dc177e2c" "checksum error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07e791d3be96241c77c43846b665ef1384606da2cd2a48730abe606a12906e02" "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 8f53f62b40a82a484157b4184ef8e280048a4018..9da882e139ef7a241aa3da8f18614476e91182c4 100644 GIT binary patch delta 238369 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 W*$c9#Qbg@;uW&;e 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 z zd63(L6BLi!|BkhhiZ_`Jt;qob1??o4osgh6; z|2s^z{Heaj6;3sbX{5Fc6EYFr)X(&DF7*KK&G-{}7Ii&SKQG_tRi2nrcWu@wvR26q z6`Y5^;6==+X|B#*H1gKgR4kP6K5R-FVL1j>1;4a5pMBoKk^MZc)ii^J0T6@}RP8^8SB3Zzx zxL^kJ*{B8SZ>;{})h`}Dn6-FOW1C>3rr_d+ZTm63Skgij^TJIPv9b*L>BsdRDc(?n zg~Ja5kN6#qpGHsU2c+0GkEwUqrwlpufbIRHwYhJX?htIsJr%JKPN|Xz|4QMJ>@W3H zAxi51uT`G5WMSMFn#ooN%$Pu22~=c+4pnU0=(ko8heLKykpRFLdcv>9@2pL_8B&$<`uQ{?(e$xAlUeFKLLO8ebZYph}SgHr+pLJfp`NVt1YT z!A>+-CL`(%qi3x*mp^p6fe%fYC-_d_(_;zR!@pT$<<-%(Vgr0Q#`Z+C&M0@BJo&q| zzr6bRTAVO?3Sf!21yUf1?B}dzdG*R(F;L6nm^2lBjTw%mmz~hJ^oqT8bg5xS42eSC zc=1WAQH)B*er9rHEI!maXjUUC63AeVhfw?B*r%-Ca`0MxqFMvGLPH&@aMY08>L2>1 zJ`uMO4#P~?IUWaH0vY^sYTV!~Z~^Kl#SOOF_?I;!URyjfUW*_KE;uMJma+_#WJ6{1N8d^Z__7oRz!&+uBt=Pv5X!)b;c0M7>6EsvzEt(0r%6ANc># z^ZUieYphSI6{Es7MfuAY^!@$fGKv|<80rl zb=Fg&j3CV^v#~kD^OCjW?CUQ@zvh@6W*f4Ta~$Nq`p9|~q-uaKVHZd}>b{I$W+fCR zoj~_Iy<`B*PMKy6(-Lg9ANK4OioiVsl&a#$M;5xM$G{xoA;5H#ck06f)IRe*KsOFp zfny>vxK=M46bYOdZ6PxlSPX&)<9Agq*Vk?k7wZ=XrwkBFmatBSIGu=NEpGg7{q!Ji z0}@Z8VE7`armfuTD%+=jvcx?#PA6dW!3IEljs>Le(bsGcNe#^ohsO#7i%=?!_v%v{ z;70+7ETd&o)_A%fzOQnXv62_+QxCo-sxwARq5^eOb!oBhuP`p=>W+sv;Y5otd4VJ_ zglEg(`bt??_*@`1ZVA#4AP+ZGrjQ4tIY+;Jqd`T8ZgO^15xokyaU&yeCP6O-e0IkU zMeT$LY0_`h=7%cl%iEsX1Vd)5&;hB!18|DU&u*%0 z(y|SON&e8H>ipD*EIyv9k(A^AvE1-HH{-BRywWgjI4>;vmW7nlniO|EIyQ z7&V}t6Fj-3ypiw4>Ft#wo3Em4oPf-jP6>F36McGEIBgsslL=lIF3zU(k~_;~bpZet zjzbcJnaLbqH#du(DuD{5ggeNblVG{hhk2Cl;ZVAH10*rfQ~NGGwplE{usFg;nhDH6 z#Ip`KW8-If#TIdC9RP<#rhM@TzC6CWvQZDL;Rs^ytHs>KS05OipavHQEtvs^8YKb> z$!)@g+|ze#5$nz;iDb$VI`o@HqMzL&R#e&ICTa*Mi5~h?>7`rEqj)1wV&>u_$rn?- zd#h+xJxC848Pdy!$EfN@w_;iW*LYUcvukKU=cDvoE>whPa)2ILd delta 238371 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°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 S?;m^L;8IG1wl`=;{r?7(PZ4?m diff --git a/srml/executive/src/lib.rs b/srml/executive/src/lib.rs index db28113efa..b6cc498f79 100644 --- a/srml/executive/src/lib.rs +++ b/srml/executive/src/lib.rs @@ -22,7 +22,7 @@ use rstd::prelude::*; use rstd::marker::PhantomData; use rstd::result; use primitives::traits::{ - Header, Zero, One, Checkable, Applyable, CheckEqual, OnFinalise, + self, Header, Zero, One, Checkable, Applyable, CheckEqual, OnFinalise, OnInitialise, Hash, As, Digest, NumberFor, Block as BlockT }; use srml_support::{Dispatchable, traits::ChargeBytesFee}; @@ -62,11 +62,15 @@ pub struct Executive( impl< System: system::Trait, - Block: BlockT, + Block: traits::Block, Context: Default, Payment: ChargeBytesFee, AllModules: OnInitialise + OnFinalise, -> ExecuteBlock for Executive +> ExecuteBlock for Executive where + Block::Extrinsic: Checkable + Codec, + >::Checked: Applyable, + <>::Checked as Applyable>::Call: Dispatchable, + <<>::Checked as Applyable>::Call as Dispatchable>::Origin: From> { fn execute_block(block: Block) { Self::execute_block(block); @@ -79,7 +83,7 @@ impl< impl< System: system::Trait, - Block: BlockT, + Block: traits::Block, Context: Default, Payment: ChargeBytesFee, AllModules: OnInitialise + OnFinalise, diff --git a/srml/support/src/event.rs b/srml/support/src/event.rs index 3dc132a490..4ffa552168 100644 --- a/srml/support/src/event.rs +++ b/srml/support/src/event.rs @@ -282,11 +282,13 @@ macro_rules! __decl_generic_event { #[cfg_attr(feature = "std", derive(Debug))] $(#[$attr])* pub enum RawEvent<$( $generic_param ),* $(, $instance)? > { - #[doc(hidden)] - $(PhantomData($crate::rstd::marker::PhantomData<$instance>),)? $( $events )* + $( + #[doc(hidden)] + PhantomData($crate::rstd::marker::PhantomData<$instance>), + )? } impl<$( $generic_param ),* $(, $instance)? > From> for () { fn from(_: RawEvent<$( $generic_param ),* $(, $instance)?>) -> () { () } -- GitLab From 31a398f74195d630e41ae5b108012e822e66cc8e Mon Sep 17 00:00:00 2001 From: Shawn Tabrizi Date: Mon, 18 Mar 2019 15:00:30 +0100 Subject: [PATCH 040/120] Remove upgrade-key module from SRML (#2018) * Remove upgrade-key from SRML. Update chain spec builder text * bump spec_version, rebuild wasm * Remove upgrade-key from SRML. Update chain spec builder text * bump spec_version, rebuild wasm * Rebase, Rebuild * Rebuild wasm --- Cargo.lock | 14 ---- Cargo.toml | 1 - .../substrate_test_runtime.compact.wasm | Bin 56646 -> 56663 bytes node/runtime/Cargo.toml | 2 - node/runtime/src/lib.rs | 2 +- node/runtime/wasm/Cargo.lock | 14 ---- .../release/node_runtime.compact.wasm | Bin 871507 -> 871836 bytes srml/upgrade-key/Cargo.toml | 26 ------- srml/upgrade-key/src/lib.rs | 71 ------------------ test-utils/chain-spec-builder/Cargo.lock | 19 ----- test-utils/chain-spec-builder/src/cli.yml | 6 +- test-utils/chain-spec-builder/src/main.rs | 6 +- 12 files changed, 7 insertions(+), 154 deletions(-) delete mode 100644 srml/upgrade-key/Cargo.toml delete mode 100644 srml/upgrade-key/src/lib.rs diff --git a/Cargo.lock b/Cargo.lock index 3bd5878940..1aea23158e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1963,7 +1963,6 @@ dependencies = [ "srml-system 0.1.0", "srml-timestamp 0.1.0", "srml-treasury 0.1.0", - "srml-upgrade-key 0.1.0", "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", "substrate-keyring 0.1.0", @@ -3479,19 +3478,6 @@ dependencies = [ "substrate-primitives 0.1.0", ] -[[package]] -name = "srml-upgrade-key" -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)", - "sr-primitives 0.1.0", - "sr-std 0.1.0", - "srml-consensus 0.1.0", - "srml-support 0.1.0", - "srml-system 0.1.0", -] - [[package]] name = "stable_deref_trait" version = "1.1.1" diff --git a/Cargo.toml b/Cargo.toml index 286e93ecae..826dc3f1fb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -78,7 +78,6 @@ members = [ "srml/system", "srml/timestamp", "srml/treasury", - "srml/upgrade-key", "node/cli", "node/executor", "node/primitives", diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 82ede8590330a37e4885336de3322530ee251f8a..0059c300216579fe71a647c516ae913cae408a2e 100644 GIT binary patch delta 2871 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%0DnF58Sctw5H!OtsmS|Ra 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 H^x*#i;~Ljd delta 249732 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 z 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"] -edition = "2018" - -[dependencies] -serde = { version = "1.0", optional = true } -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 } -system = { package = "srml-system", path = "../system", default-features = false } -consensus = { package = "srml-consensus", path = "../consensus", default-features = false } - -[features] -default = ["std"] -std = [ - "serde", - "parity-codec/std", - "sr-std/std", - "sr-primitives/std", - "srml-support/std", - "system/std", - "consensus/std", -] diff --git a/srml/upgrade-key/src/lib.rs b/srml/upgrade-key/src/lib.rs deleted file mode 100644 index 46e757bcc9..0000000000 --- a/srml/upgrade-key/src/lib.rs +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2017-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 . - -//! The Example: A simple example of a runtime module demonstrating -//! concepts, APIs and structures common to most runtime modules. - -#![cfg_attr(not(feature = "std"), no_std)] - -use sr_std::prelude::*; -use sr_primitives::traits::StaticLookup; -use srml_support::{StorageValue, decl_module, decl_event, decl_storage, ensure}; -use system::ensure_signed; - -pub trait Trait: consensus::Trait + system::Trait { - /// The overarching event type. - type Event: From> + Into<::Event>; -} - -decl_module! { - // Simple declaration of the `Module` type. Lets the macro know what its working on. - pub struct Module for enum Call where origin: T::Origin { - fn deposit_event() = default; - fn upgrade(origin, new: Vec) { - // This is a public call, so we ensure that the origin is some signed account. - let _sender = ensure_signed(origin)?; - ensure!(_sender == Self::key(), "only the current upgrade key can use the upgrade_key module"); - - >::set_code(new)?; - Self::deposit_event(RawEvent::Upgraded); - } - - fn set_key(origin, new: ::Source) { - // This is a public call, so we ensure that the origin is some signed account. - let _sender = ensure_signed(origin)?; - ensure!(_sender == Self::key(), "only the current upgrade key can use the upgrade_key module"); - let new = T::Lookup::lookup(new)?; - - Self::deposit_event(RawEvent::KeyChanged(Self::key())); - >::put(new); - } - } -} - -/// An event in this module. -decl_event!( - pub enum Event where AccountId = ::AccountId { - /// An upgrade just happened. - Upgraded, - /// An upgrade just happened; old key is supplied as an argument. - KeyChanged(AccountId), - } -); - -decl_storage! { - trait Store for Module as UpgradeKey { - Key get(key) config(): T::AccountId; - } -} diff --git a/test-utils/chain-spec-builder/Cargo.lock b/test-utils/chain-spec-builder/Cargo.lock index feccfa14ef..2d5311d502 100644 --- a/test-utils/chain-spec-builder/Cargo.lock +++ b/test-utils/chain-spec-builder/Cargo.lock @@ -1781,7 +1781,6 @@ dependencies = [ "srml-system 0.1.0", "srml-timestamp 0.1.0", "srml-treasury 0.1.0", - "srml-upgrade-key 0.1.0", "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", "substrate-keyring 0.1.0", @@ -3006,24 +3005,6 @@ dependencies = [ "substrate-primitives 0.1.0", ] -[[package]] -name = "srml-upgrade-key" -version = "0.1.0" -dependencies = [ - "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec 3.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-codec-derive 3.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", - "sr-io 0.1.0", - "sr-primitives 0.1.0", - "sr-std 0.1.0", - "srml-consensus 0.1.0", - "srml-support 0.1.0", - "srml-support-procedural 0.1.0", - "srml-system 0.1.0", - "substrate-primitives 0.1.0", -] - [[package]] name = "stable_deref_trait" version = "1.1.1" diff --git a/test-utils/chain-spec-builder/src/cli.yml b/test-utils/chain-spec-builder/src/cli.yml index 08c0233c31..f4b1cb7e2e 100644 --- a/test-utils/chain-spec-builder/src/cli.yml +++ b/test-utils/chain-spec-builder/src/cli.yml @@ -16,9 +16,9 @@ args: takes_value: true multiple: true required: true -- upgrade_key_seed: +- sudo_key_seed: short: u - value_name: UPGRADE_KEY_SEED - help: Upgrade key seed + value_name: SUDO_KEY_SEED + help: Sudo key seed takes_value: true required: true diff --git a/test-utils/chain-spec-builder/src/main.rs b/test-utils/chain-spec-builder/src/main.rs index b899f9c1fc..c7b4dd99d8 100644 --- a/test-utils/chain-spec-builder/src/main.rs +++ b/test-utils/chain-spec-builder/src/main.rs @@ -16,11 +16,11 @@ fn genesis_constructor() -> chain_spec::GenesisConfig { .map(chain_spec::get_authority_id_from_seed) .collect(); - let upgrade_key_seed = matches.value_of("upgrade_key_seed").unwrap(); - let upgrade_key = chain_spec::get_authority_id_from_seed(upgrade_key_seed); + let sudo_key_seed = matches.value_of("sudo_key_seed").unwrap(); + let sudo_key = chain_spec::get_authority_id_from_seed(sudo_key_seed); chain_spec::testnet_genesis( authorities, - upgrade_key.into(), + sudo_key.into(), Some(endowed_accounts), ) } -- GitLab From 533cc9ed67ce4ec458eb3ecbb91cf678e9dc7660 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Mon, 18 Mar 2019 18:15:18 +0100 Subject: [PATCH 041/120] Expose keyring accounts in CLI (#2032) * Expose keyring accounts in CLI So, `--alice` will give you a node with `--key //Alice --name Alice`. * Update readme --- Cargo.lock | 83 +++++++++++++++++++++++-------------- README.adoc | 6 +-- core/cli/Cargo.toml | 3 +- core/cli/src/lib.rs | 6 ++- core/cli/src/params.rs | 77 +++++++++++++++++++++++++++++++++- core/keyring/Cargo.toml | 2 + core/keyring/src/ed25519.rs | 21 ++++------ 7 files changed, 146 insertions(+), 52 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1aea23158e..7e654e6729 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -198,7 +198,7 @@ dependencies = [ "clang-sys 0.26.4 (registry+https://github.com/rust-lang/crates.io-index)", "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)", "env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "peeking_take_while 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "proc-macro2 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -425,7 +425,7 @@ dependencies = [ "criterion-plot 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "csv 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)", "itertools 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "rand_os 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -458,7 +458,7 @@ dependencies = [ "crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -498,7 +498,7 @@ dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -512,7 +512,7 @@ dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -531,7 +531,7 @@ version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -806,7 +806,7 @@ name = "fs-swap" version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1175,7 +1175,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "jsonrpc-core 10.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1262,7 +1262,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "lazy_static" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] @@ -1291,7 +1291,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core-derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-dns 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1328,7 +1328,7 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "multistream-select 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1480,7 +1480,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1542,7 +1542,7 @@ dependencies = [ "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1821,7 +1821,7 @@ name = "native-tls" version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2096,7 +2096,7 @@ dependencies = [ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2591,7 +2591,7 @@ version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2668,7 +2668,7 @@ version = "0.14.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "cc 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)", "spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2760,7 +2760,7 @@ name = "schannel" version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2940,7 +2940,7 @@ version = "4.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "slog 2.4.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3075,7 +3075,7 @@ name = "srml-aura" 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)", + "lazy_static 1.3.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)", @@ -3244,7 +3244,7 @@ name = "srml-finality-tracker" 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)", + "lazy_static 1.3.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)", @@ -3575,6 +3575,22 @@ dependencies = [ "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "strum" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "strum_macros" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "subkey" version = "0.2.0" @@ -3641,7 +3657,7 @@ dependencies = [ "exit-future 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "fdlimit 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "names 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3649,6 +3665,7 @@ dependencies = [ "sr-primitives 0.1.0", "structopt 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-client 0.1.0", + "substrate-keyring 0.1.0", "substrate-network 0.1.0", "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", @@ -3821,7 +3838,7 @@ dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "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.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3893,7 +3910,9 @@ name = "substrate-keyring" 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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 0.1.0", ] @@ -3950,7 +3969,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4068,7 +4087,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.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.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)", @@ -4143,7 +4162,7 @@ dependencies = [ name = "substrate-telemetry" version = "0.3.1" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (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)", @@ -4353,7 +4372,7 @@ name = "thread_local" version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -4457,7 +4476,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -4497,7 +4516,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5138,7 +5157,7 @@ dependencies = [ "checksum kvdb-memorydb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" "checksum kvdb-rocksdb 0.1.4 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" -"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1" +"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)" = "e962c7641008ac010fa60a7dfdc1712449f29c44ef2d4702394aea943ee75047" "checksum libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3ad660d7cb8c5822cd83d10897b0f1f1526792737a179e73896152f85b88c2" @@ -5306,6 +5325,8 @@ dependencies = [ "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550" "checksum structopt 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "670ad348dc73012fcf78c71f06f9d942232cdd4c859d4b6975e27836c3efc0c3" "checksum structopt-derive 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "ef98172b1a00b0bec738508d3726540edcbd186d50dfd326f2b1febbb3559f04" +"checksum strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1810e25f576e7ffce1ff5243b37066da5ded0310b3274c20baaeccb1145b2806" +"checksum strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "572a2f4e53dd4c3483fd79e5cc10ddd773a3acb1169bbfe8762365e107110579" "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" diff --git a/README.adoc b/README.adoc index 492df92996..90961cbb0f 100644 --- a/README.adoc +++ b/README.adoc @@ -259,8 +259,7 @@ We'll start Alice's substrate node first on default TCP port 30333 with her chai cargo run --release \-- \ --base-path /tmp/alice \ --chain=local \ - --key //Alice \ - --name "ALICE" \ + --alice \ --node-key 0000000000000000000000000000000000000000000000000000000000000001 \ --telemetry-url ws://telemetry.polkadot.io:1024 \ --validator @@ -272,8 +271,7 @@ cargo run --release \-- \ --base-path /tmp/bob \ --bootnodes /ip4/127.0.0.1/tcp/30333/p2p/QmQZ8TjTqeDj3ciwr93EJ95hxfDsb9pEYDizUAbWpigtQN \ --chain=local \ - --key //Bob \ - --name "BOB" \ + --bob \ --port 30334 \ --telemetry-url ws://telemetry.polkadot.io:1024 \ --validator diff --git a/core/cli/Cargo.toml b/core/cli/Cargo.toml index 9ed26692c7..2790cd5180 100644 --- a/core/cli/Cargo.toml +++ b/core/cli/Cargo.toml @@ -14,7 +14,7 @@ atty = "0.2" regex = "1" time = "0.1" ansi_term = "0.11" -lazy_static = "1.0" +lazy_static = "1.3" app_dirs = "1.2" tokio = "0.1.7" futures = "0.1.17" @@ -30,5 +30,6 @@ primitives = { package = "substrate-primitives", path = "../../core/primitives" service = { package = "substrate-service", path = "../../core/service" } state-machine = { package = "substrate-state-machine", path = "../../core/state-machine" } substrate-telemetry = { path = "../../core/telemetry" } +keyring = { package = "substrate-keyring", path = "../keyring" } names = "0.11.0" structopt = "0.2" diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index 189681338c..0344ae5178 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -317,7 +317,7 @@ where config.impl_commit = version.commit; config.impl_version = version.version; - config.name = match cli.name { + config.name = match cli.name.or(cli.keyring.account.map(|a| a.to_string())) { None => generate_node_name(), Some(name) => name, }; @@ -390,6 +390,10 @@ where config.keys.push("//Alice".into()); } + if let Some(account) = cli.keyring.account { + config.keys.push(format!("//{}", account)); + } + let rpc_interface: &str = if cli.rpc_external { "0.0.0.0" } else { "127.0.0.1" }; let ws_interface: &str = if cli.ws_external { "0.0.0.0" } else { "127.0.0.1" }; diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index bffd71b8c7..ace9959678 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -17,7 +17,7 @@ use crate::traits::{AugmentClap, GetLogFilter}; use std::path::PathBuf; -use structopt::{StructOpt, clap::{arg_enum, _clap_count_exprs, App, AppSettings, SubCommand}}; +use structopt::{StructOpt, clap::{arg_enum, _clap_count_exprs, App, AppSettings, SubCommand, Arg}}; use client; /// Auxialary macro to implement `GetLogFilter` for all types that have the `shared_params` field. @@ -227,7 +227,6 @@ pub struct RunCmd { )] pub other_execution: ExecutionStrategy, - #[allow(missing_docs)] #[structopt(flatten)] pub shared_params: SharedParams, @@ -239,6 +238,80 @@ pub struct RunCmd { #[allow(missing_docs)] #[structopt(flatten)] pub pool_config: TransactionPoolParams, + + #[allow(missing_docs)] + #[structopt(flatten)] + pub keyring: Keyring, +} + +/// Stores all required Cli values for a keyring test account. +struct KeyringTestAccountCliValues { + help: String, + conflicts_with: Vec, + name: String, + variant: keyring::AuthorityKeyring, +} + +lazy_static::lazy_static! { + /// The Cli values for all test accounts. + static ref TEST_ACCOUNTS_CLI_VALUES: Vec = { + keyring::AuthorityKeyring::iter().map(|a| { + let help = format!("Shortcut for `--key //{} --name {}`.", a, a); + let conflicts_with = keyring::AuthorityKeyring::iter() + .filter(|b| a != *b) + .map(|b| b.to_string().to_lowercase()) + .chain(["name", "key"].iter().map(|s| s.to_string())) + .collect::>(); + let name = a.to_string().to_lowercase(); + + KeyringTestAccountCliValues { + help, + conflicts_with, + name, + variant: a, + } + }).collect() + }; +} + +/// Wrapper for exposing the keyring test accounts into the Cli. +#[derive(Debug, Clone)] +pub struct Keyring { + pub account: Option, +} + +impl StructOpt for Keyring { + fn clap<'a, 'b>() -> App<'a, 'b> { + unimplemented!("Should not be called for `TestAccounts`.") + } + + fn from_clap(m: &::structopt::clap::ArgMatches) -> Self { + Keyring { + account: TEST_ACCOUNTS_CLI_VALUES.iter().find(|a| m.is_present(&a.name)).map(|a| a.variant), + } + } +} + +impl AugmentClap for Keyring { + fn augment_clap<'a, 'b>(app: App<'a, 'b>) -> App<'a, 'b> { + TEST_ACCOUNTS_CLI_VALUES.iter().fold(app, |app, a| { + let conflicts_with_strs = a.conflicts_with.iter().map(|s| s.as_str()).collect::>(); + + app.arg( + Arg::with_name(&a.name) + .long(&a.name) + .help(&a.help) + .conflicts_with_all(&conflicts_with_strs) + .takes_value(false) + ) + }) + } +} + +impl Keyring { + fn is_subcommand() -> bool { + false + } } /// Default to verbosity level 0, if none is provided. diff --git a/core/keyring/Cargo.toml b/core/keyring/Cargo.toml index e320374247..db480744b7 100644 --- a/core/keyring/Cargo.toml +++ b/core/keyring/Cargo.toml @@ -8,3 +8,5 @@ edition = "2018" substrate-primitives = { path = "../primitives" } hex-literal = { version = "0.1.0" } lazy_static = { version = "1.0" } +strum = "0.14.0" +strum_macros = "0.14.0" diff --git a/core/keyring/src/ed25519.rs b/core/keyring/src/ed25519.rs index 1ac7de17c3..c414e4bf43 100644 --- a/core/keyring/src/ed25519.rs +++ b/core/keyring/src/ed25519.rs @@ -16,14 +16,13 @@ //! Support code for the runtime. A set of test accounts. -use std::collections::HashMap; -use std::ops::Deref; +use std::{collections::HashMap, ops::Deref}; use lazy_static::lazy_static; use substrate_primitives::{ed25519::{Pair, Public, Signature}, Pair as _Pair, H256}; pub use substrate_primitives::ed25519; /// Set of test accounts. -#[derive(Clone, Copy, PartialEq, Eq, Hash)] +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, strum_macros::Display, strum_macros::EnumIter)] pub enum Keyring { Alice, Bob, @@ -79,6 +78,11 @@ impl Keyring { Pair::from_string(&format!("//{}", <&'static str>::from(self)), None) .expect("static values are known good; qed") } + + /// Returns an interator over all test accounts. + pub fn iter() -> impl Iterator { + ::iter() + } } impl From for &'static str { @@ -98,16 +102,7 @@ impl From for &'static str { lazy_static! { static ref PRIVATE_KEYS: HashMap = { - [ - Keyring::Alice, - Keyring::Bob, - Keyring::Charlie, - Keyring::Dave, - Keyring::Eve, - Keyring::Ferdie, - Keyring::One, - Keyring::Two, - ].iter().map(|&i| (i, i.pair())).collect() + Keyring::iter().map(|i| (i, i.pair())).collect() }; static ref PUBLIC_KEYS: HashMap = { -- GitLab From b69789a9bb8666b71166aa3bd1ece5ab5509894d Mon Sep 17 00:00:00 2001 From: Marcio Diaz Date: Mon, 18 Mar 2019 18:33:36 +0100 Subject: [PATCH 042/120] Delegation voting (#1827) * feat: add on-chain delegation voting * fix: add recursion limit to delegated_votes * fix: tests * fix: count votes before limit exceeded --- .../substrate_test_runtime.compact.wasm | Bin 56663 -> 56631 bytes node/runtime/src/lib.rs | 4 +- .../release/node_runtime.compact.wasm | Bin 871836 -> 891960 bytes srml/democracy/src/lib.rs | 242 +++++++++++++++++- 4 files changed, 239 insertions(+), 7 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 0059c300216579fe71a647c516ae913cae408a2e..4e37d4101a2d12f63345fc1ba4b5e05e99dbd912 100644 GIT binary patch delta 2671 zcmah}eQ*_572ndJY=vZqRl|lW(I4i;gJH$e12?(JQ%16fLFNb!fBhso=q~qC_0BOe= z-^}jsoOAE_ozJ)L^rjB?rg|nDCEYLdX{Fn>Tz6b$Tr!Mn&&M~?d&&*yjCWM^8v3h{ ztDdL##2cy)l<7YLvvv!<^R*rN9w@21AKx`~oAAB2E|=NU)u(M-plORVtu(9WhCAcG z*3F(<_QsArEtk$3=Iq?5xUzYbpw%+>-B)!456lHxX|8)W3Iv6N1p)HUO@oHc zadGK4-%RO!@t^(MB?(#OlN`ovIz1vb#Kz`KDv4G3To9Q!a086h;*a<2UB+MfA~q_D|bvV5`3tmSx@lA&VLv5 zJ-bM;adQ`(*z;KZaA(q);n5*nK+JWI|z@TViwyF zoBOkc?AXtir7Er!+zw(6iQisC+>PA_?$eLJFAv;5|I^2xo!3Eq%)H|32X;)tKgzcc zElqMdcIa;j^!$Ej&GkYIZ6t(!H#JNsYY3wW4FvN7@9_M@WB1{8H8%?$xCu#8$u^A? zgA^!NVNe_|dQ=>d=n*#`nQheNadU-HJL2-$J*XYC2JqwF!!;d++y6JfcaEOYkHky< z@KqiESt*{hhL+3c@ze3oGVqVJmagBjDO|A0+p0Ef zf&OD(kE{DG>X|Xd1zW=>wrqon*MA57uRs1jPFjxd1pP!KynB2WEIv`EYjJpDu@0}i zv8LkYE{wA;eOog%{4Qv#5ZAz@lhbCdL2a+DX+?;S>ZUdk(L$_7>`j@Pgrz4}Zl8(L z9JK53fLMr#xC5UO zd_F`w-rs)r05H|!dk1&zzZta`r$0?}Vbs1F?e*x_j#!4+jhI3_gqT4*i8u}MeXJ^J z#W3nwM6JlwreOR+&_qW*Z5%!~@L($9_~MbCT|vDH^=+7TLLksSAJIdsMEnLiCYVJ% z@oPzIg}`_8WvC~eOadprJARYUUKCG#Yq4%p>Pya3u72FkQ4?Wvl+X%y_Dq%stGnq4L1(Aw4^O(a4wDoT`xflA< zqD~NS!HMg_hyBaSsia&I9uk*1O4_`tM~B?yDu_;Zn92@qrUK4|kiw!AJ~`cG2GkLe zM}&_Nnd@-acV?E!1LvT1D}W6XFgZHaN+tu1Oauq?NMf1(p9kcPt8-66-p6A zp=DFzGcU?6ZEO=Za(Wl+P?I-h?FH9P8EYiXKm9W+_43re#AsT0t>dEZ8B}8 zZ0eCPvWTM8rEu;nFZZePMC2>X)>DBLbME!F+=)El5)o3$T&Z|4cio-7&xM|Il_vA3 zqZr5bP&Xo!!Qi}40<_a*zaeOioP6=0~J-h!cp=3Pr=_!pSerFEwpfxH9wu z&la}ezJy!nXPCsrak9X}IVwe!f(PHOHkrVEp+tsO5a2q=c-7nIbW`G(P?fgl;YBY3 z`$FqvU%DRU%w{}taQEP)3kx%WhiR$6x0oF&Uj`2R-Ixyg;OdO!*}fBmZh&urB=obX{r4aN+m@#}_y<3UR^@Lq0tf-o5g$Nm$^9T={}Vb|i=k?$uzj5ROX& z*YbqzMU23&uQr(>Dn8|*;2~8GvEkO$Stbjy6dblq6mC)!K>g5cQxeCrJmz}bbtz*u ztQ+D}BJ7A0;Rbuk4OtYdvSH?6IrI)?Ci#xUYlKHWV^##0hc;A3j0MUg9?ddBWj(R# H39tJvJCgoO delta 2719 zcma)6eQ*`k72nftLhAQb@Ra_wL@kn0E3|5ywi(N22`$Wj`h95GzSW zX=`~nk%>VNI1H0%M}={Q(*EO{+2OkmsbDdDgrHE+q)z;&qmFH9tF63mYCy z=SHNN4gV^AXV-vaD*bX&Ss`ty*$XxnmcVP;R13a^RsAhYGZ z=;#+))<>rv?mR6wew>w(R>q|iMoO}tyOQWirImJ5sX*hd_SB@d97)xsf_y1;1Xgrs zuh!K)BOVbxxAl5l+{%UzPY{+)5vp0j;fOGaPW29Wv?3}4sNP<0Hh$Q2M#ml2@VHpTw63Y;( zhmu)!^z~J-(%x*?5!4XH?MKAf*nRkJ`6m4O@I6cZcl(?DIwDW&S9t62j#>DjJacqq zr0LAjzebQbwzFnWHitBxf=x+7K}p3_n$ST|7ud&_L=n4>Z>;IhM&KkwqM~UUzYJ2K zU4coly%GTuaC&&A?}Nt}4w&T#6Xg>}xz&f!K+% zBZ5}+FG1XnScdpR42-a8B5r+L$|jy%uflay$tZF3n~a-<{+#fi=f5kfgfhkq*VGJ6 z=Z0s&eS%tBAAWPGQf0Os zn667~)6kg3Oc=SexXiPeu2GXRNB4G?g8y7rRpz+5@M)mA zfkSo6fVo3V^=)c;JfNN?h!)r$JTcUyazU6GxDMeqA&#!Y8$(73!Q%Ry3l{jcgS}XI zr?w>&E3WH?&@_h!uFn^3oUHpI*mI>!^{8#)k7BjChvMMql_pjA2C*&M;MA}U;@Xfi z+@xxFG0JQ~bkjDNp+U=VqlyJLE!W~6_po(Lz@g#xV#6|hmtrs{o^J`gel>h_u>y>% zixa-(u)qt5z?=D|*3gmNdEx3x)im%9rp{f<(gSP|j9guyGH&ReM~TBUN-d#5{=0Kk zOo%mdJ;$ZY;(~_8yH{jYC!QI2hR!tRTTE~$z1CVJxNv<+ESu}TCIoD~wmf0l4z;n# zF2{0P9-jQ0G7mnw_GkhHxSmCH&2TJXaBDd<#44fv`uYS`n)|M9nmE?XqJAT+iOmZ? zyM9$x1HoL+WmI#SqdBPN@{JB9L28U;|776(e2|eqzFMZPzv|59WAghTMtVM$6fQBU-GO|SbeCwvRQ diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index ea9f60afd9..b1199d2891 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 36, - impl_version: 39, + spec_version: 37, + impl_version: 40, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index f3ccde68d4398f18d7df982f890753e6e9b720d2..d3cd9bbcfb4e7b91cfce9282a20269b74c7ffe75 100644 GIT binary patch delta 272934 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 ~j@wx!k1jJ(|b= z+VNm0d$AtV`6q*>v$gvh;vxA)KJSImq!;j8(jDY2ldm-AE#fZ}@Hw2t<3|?pAY-S* z$28~rsEa-=6bkQX!KXs1_*?R>Eg^-#@zAvuxwdDOW z@2%ZoSk3Tt7iNP`KGTwSOTQfwkIW6P{AWvE%Dl3DE8ae9M@mUk*0tpM`H&H6B0)kf zIiT96R(u58F880UV=f-D^yV|!x;^G*C%Ljc@4<$xd$v7i z{0b(YE9HCnl}z5-fsaW4;&!k~16W1=(1CaLspC#}%ibM%ccpUPdr_3hTRXz&*d{mU zr8k#<>&Qnt>61Do^B?F0ac7r7xOaZkXgfU+RM8I^@0}{9<54mQ`4cCJzH;MeQI@uA$y0=*>PSPb{AsjEORq;pc&-t6ORm3` zzrv1|bC>dKj>sizRM_Sta2U-4DjQ(QBblG_4RFEqR^N~ma=>+bZTGxH5lmqMJt?>2G1+%k;VXtLNonmJMY%?1v;T!psMGg8qP+Yc{jX<|m*OW|6!8D%6*r z<^1f4zXk|yJ*NOY5SHg)7O0Onb*4~fhSTK>%X#~PTrxKdGu!mgBVWG>dH)T(zzh6` z$IIvq{K7*NGuZ_B$_;!J%a=vfd`Jawg+4$A-DCJDJT?AE@PVwQyq-sLfj!kRxUO8R z0(b<#ZUS?+yset|C@CP5$}AXF94(+Ay^twjSW#^h7G{C`vYNM`#wjBTIgi%Ee%X8l zZ*zPB8C=*cqm@xX8IE1z2|a*{1reBGUK7h7m_RV|nu8d5lz|0WI30o z0&>|Tu>mt~;AC;00);qjA6R}L^g;ab$s$Vg@q;O1!vSCAZKsLOdABI>GuWyk!6Rsq z4#~6UG|?5ZCUm;6Ttef7(?wg%&C5?0z1V8G`E=1NPYbWXT5LJByPWKe$e&IZ0rZ?c zRh%A75fpQ$iZjvnz-gjb{xnte3T<2iF_MeEv20fPom_p+o+etM&t=oZC2Y0~oFUq< zk+S<4qKK`MN1Y*7WLB-R=rAaZ^A5)MQht7h=!u0{$#gts%VVZPsLYm2r;ECzbeuLr z%xlzX!wk`hrOOs)ic+V+klo-hXNm!6@cJ{wEOye3m10iDNwhCVB678yR|!;1kPlXh zV+tpbQuaqV5ez&4%iV)$V1-75P^PmPww5W$dgdg9czYWqY)&A0@s`8*jht zK1vjk-Tn8Y#EEk9xnd*GlsQv$aG_)HOql#$dBsd|PjM2fR<3Om_R`PmShecZAiHWQ6nt<*&d4?!|J*I)-CT{t>Ef84njCBxU(mxzNRc!J@9hd?x zyd?OIgn``gHfU`xIh1D(nEmN(e}C6pv)=Ky!(5y3j(=dghhdtM7BIaP@C{cOVU=N4 zRv36k9^S30m*k7@_)m70Jg!zta#6dUEG`#2OS}E+-t|xDevqjNyp-`-&dk*2g`SyN zyZw>Q4Yd||%YYLlLH5-uq0j7zTJO99&%0{n$-Di7fZLmQ``c!w;FifF_aI2qD;swE zJLlZ+(hfL3E8t&&RTVC>?tMvieb3+3GtzqcZaMiqzt!^vNO|SA!5lEm45;+g$gyAz z%)w)k(wwub2H2u_B`tobeC<7dZ{2sX9RIFA^FS<5+2cPUugSVE?NM+C-uHJNiUW1c zAx4d1AuxA@fxX})ga64!1fA_CPO=dJcc6N;5dmIQh`989|40A>Y8T7*-}h$^NQcsa z6@ppAh;djdd`R`+=U*Uqx<^j_ zQ<_)Kf1MY>Yj^YOJiL*4gq+h zyBR1CnewtXcu~h?IAN&Nr0zf!4$m@0DPO@O=(ZG!4*wkn*K0b`zisU?vaCYN6%AeXO7&y(HXoh`^w8v+Ve ze7)>V-jYh){3b7sjRbfNK3Y5=p}Vuqd;s1-)WXbfpvBfEFRe?Epk^_4y%^H@7`x8L z_}%%cO)BqCz*?2JZ1jn7ro8*xQ$rI|q=AvOdI^qdNF(Sm5sAmctoZ4@Y}q|7A) zRDsMgLtPP(Rc2J90JTgiOJ^l0-mNFvgB;+z`@Q5#`qV-g<>i+O$uE#Ew6cl zXLM4+V>@luE9s<#$Hzc?DSwn{>9L(D>5)m&Bd^pJWi^`BaXcNvOM>ditQs!cyvr{k z8Bp`CmIaT$%e$2gM?cGyEKtPNtt7|+uB`#DE%VW-z4K^3hCoQGL9t=~Wj-}e!_GWy zL2U_I9r!K`&sK6y;FupE$JH(#oMDghv7xpow2#XrUjT@DE|>4-17a(%z`Y3-6^wgYF;Vjbx+Mxv@K1|gAh|#aRgO@&|0YZl$5NJWA^bD75_e2l@f?4 zI<9X-$Ey_`H`sK<*?rOiIAR(JDdmLCp5SFTORrT{7p1abzIHK;&|G>jg=szlZ=|(A zrihXbHvQbfBhP2;T4Aq)A?ua&sFG9m@cdW<$ficA&=AfFjYyR{KI@-1q9%MBq$N<( zr(G*jxk>@t!WP;&%^8og>?^Mp33mC;!~HZ+Ll^)fM@O52(!nj-oR00EQ14Lppj zY(5y3RTqswu;u3=Ko}dcGz5`s7%y(L`K)Us#-4w$u{T0qqn0UZ)s$tIfEZG~=eZ85e0^@KPEKL{0Wyp4W_& zCd7MY>fBo<2khm=Sv6=7AM9Z)lV|MZB_x~{@72QT?!7#EvWoz8c#fHA{rt0-eO?qBBjChogh$&rQj}Go0VIt;H#nQL)#!7^ z(nXKOrH!i6v^H9jme5AMQ7Ba#wUy2O%$rSH0Ebg$@XV%#F;;6XVLT@(j7csLzO*jp zZpp%}H8;T2qVV(3Xk`dJ-Ut z)G;#nYu4J^u*kOwQSr>=?sV%TH+y+ zY#F`djh1-6##8%WTH-|j%|VxV+Y@U)5Gc7vznQ ztk!oxvO+di;ffR>iCU`@No)fEV|KX1%&^yYKnqDCM+YTrHNr0~pu1|}g!P@`8>LvV z)>iAg?Bx1xnO@&T<%gf~(&pspO|L99j7ShEuSyXSH+kih6TP`HTd_K>hXl_O6vUD6 zIVer2IZ|6Mv^=(vlVE8F>IPc5V@*U?#85xB=EPDdFIR+X~coj7c*wWm6YEjYf!BcyRcXp0r+st5 zQ>ccXh)8HGxogmZqlUX{{GMv)f=Fn*cR0pg-Vu2;QiF6r(Xk*w$zRZApVP+Sffi)* zCM`%mEXc9)FJJP~Sd#C^6{`6z2)Ld_B&uREVqfbOyk$A|BiXVvH31QPR(L|r)_|Cs zRhkw@<;LTbPV2^u{>C;W9kxyNP=Re>KtStji;p_8-73V9nseR6R)P-!8V=u51x=%9 zhHIYMeCzg&!KidMq{)cdRRi@*X;hskP=#^X-i6f4RhSbb7C|~$|0XYRTrZkE6ZWv4 zyfkUtJrlozfpXx^#zy!s;&0{3{<~B@eP@H@uTuH+Ir*+XcG5Xk&v0|9Hr(WxD2|Ml zdm4Cg0Fx>o*%G_Jci;=|FeH(^lqCbRjj=*wQGZ?5!VM1yYj(=3;LH%i_)B{m@ zYBJc2YFo;VT**i=6EU2gs1C}7V}zl4HGxvm*N7nzuN6*5`{fGFOPq9$)kdRv z5by~#3GHAHBk|JZUo@QP3o=rsR2Wg)DKBD%>8;z)2p04Z+f%4-9yNeeylUDLdecrCi? z3C$vCkML#afj#=L?TY{txCYjErs|<-pkZFqnGMYj!pufoEy0$fbP!L$y;VcalhaN& z-)I8Y^O(K9BSGs}?O`QD@{9M((9u{bZ}?zn)uvrDn+) zbvVr?#tzIk#oK4tyv;|2&iF;vj{Ua0t%L~$I}>jMi4JSiELSLQ#E^M0&5;XS99fm* z$SQDTjgnSXX%*}ktQx^fOVThql+4B7Yq3_^?QCoTd$e|T3!8&YKS$2XTf3#FL%R@s zs7)bbN@dznrt!3aL1N(XN;wk6=R@ypjR$(8qkXmpWkQ0QM%x_*L zyMND%SqnMldmfFon$c>8F{71k3%j!|gJ?nXLnD>p@QgNX0&a6i8Bm(QR98{j&1PC( z1QBRNh~?xoM!6c4%eGak5)x{quO-jB6hsUuHJNP3)eLsqLxY2s%n+h4;%tTpaT$UG zYlY|(JH?=XHVHz7W?`rxSV*tneC*kZ(9ywhM3i5~@GvR{3mbpQcCh&#py5tU2wN!H zBJe9>^Mti3&Dn+Bp?D!lh;c%y)K0JTOSc~wx8KqPR4WEM_gDcOK4%3TA zE2tNb)JXUwii-^P4j}rARud+;21nNtGd?3Y_F$jVgJTjjUXT{*7wk`fA!>x?LWSDk z%f@At>em|Z>j2=hQ6WnfrHdBrEzIpGLPbYn9|0T+|1OviF&thPJy7BzSV~Q4|8pzb zSo2x_3$eX}8*Kcvj>B!vL>gVjw99y@Oh&L1Sf0#*P+KIRA6po*Lxz~xYzUp&DWaKR zvnIgq9qc3D$r6iW9o)ICf+d0QqZ~Z#im&*kB*0k#7E?cwA*^O)dv!UFd`^R|QVd%25yG1gNd0d$X1BHPQ3#I1YzwS<5XkJtHvNWx?LQDO z8vn0EnGM*I$Mh(z=Nvit+)ET92IAE_iKa=HV+YK%!BdXO69Wdi$~nh+l3AEW8D(x$ zRnYV;MJNd_bVFL!6pEG+vVSeIs1GoI^)$t(Hfo53nu|~P2g;VzRIy>OLk0?W{GgLjFQigZ`f{D5o%gPff_V#blYyiC06Kb zAgL36C+k*v8w4v|SXYqSkEk^POin4juIMpsvr;T zm{Jp0i*ko8qF%N6#H!@7Vw^Uql8+UOu2XH)x)+d5#>glpOSQ9Y`D!x(s6`8AsAZtS z6A0pFHfNT|aV^9ML}SVp;;7ia#N&0E$1^bCrgOGi zX$I{5GEXv&sE&Nh;59SL4j;-&?vO1}CNyMncq9P8o1SDee>&iVB~CiP%r;2D(t>s* zW|p6(hx;FuoEwD!kAo?4Z%h0_nxfFxchj*V%;jY|u%9S)X_UelBhY?Iil9}SMs6bp z>jzSh>YG}`+Gdoq%D_l;AQqM*P0rF7Iai5&m10(AhEotvLUK46vqYLWYb=f(Dd7f= zjQX=~B?;n$o zmx!LR<%^ymSsV_S#TCXeN(|v7o1&UNjRC6J$1(mBR3lMGG;J(gLD<8k8u@`hHPD${ zw`T6~3Gzj=&79-08JRPo7>1Qqf|!{5^>7ohrh^+FGjt}ivO*9>i^j+r=VqCi7k+_} zHYnw@$WjAUOZgnxEh4(b{-m1?l14*u`U{Dx4Q`svlt&F9WLHqguEOsk6|)Qcs-RuP zjg4moxJkuK*>d4v%=8P+K0QOxb5oeMne%YwM-tPd{Aqsl(MXpkM@1h!)emD(kUn{~ zYpGbdmXg!uU;`v$@|UK5%0Hu_s?fuUOjmO|5}B^%03)e7Yac$g zP}0MyM-nS+YJ3-x@W@fJ4#`}d#PBl1Cy`UuVPMIIh`h=FK{cdwzx*mH^1RBDP>cUg zjr@Wjt#(~CvG|vJi+SGkCf!#}F(oyW@FXUM_JK@^6{!kD$b;~v355T11BY~qrW!`t zC7PHts^3QLHNw8qXn4BeQl|tc9>SvpQXlBNNWKOmA1qm}P7!9~@It;m%m6^^Sp<E)0w9L!=p-h7R!jQ{ znq#F5fsR0FEfkHKF4jmEPRtwwuO>d8go0z z-<#rYKPX*c7-bOT2czsSVh+N;lrWcpF~F(Aut>z~uZF{c08g6zLQRGwG0oYYf;@OYq5p>e7{HJ)uux`M21D<_goLd8q5Rt~nYY;<7> zaQ#dN*l1_V0m~*noKfy!5@7Y52nW|!C?WL@VJav9)pw_J4PXEh#IeJq)mh|^Y=rUy zfoc*KwCc2O6HwmPS&S&vT$REMXz_XSHm3|z1(=_p$MuWjN$%RA&jZ{R_{k_GilWWP zQ-=VA1@fXUqI((ahlmL{@5D1=W1+M%5=C-5vRd0&ohu`4fZ4V}Nkbvu>ms5Y?g`da zC`kh2S7%A5gEo|Efb4MA5a}+mV$E8=596g+OR$K0U$29i?j|d(S{ri=pp+Vo=35$#ZQ^1yO%8%+Nd1uhZ(_2tM%Ep<;b9I24onZ%2l7pR^4%)8l>;h1Dgh^NI;>U33?tB1Bb@KFX~iKP3hE* za9zj`yNfY4FnuUW_t(PXPyjwp)F;kxB&D4*AygL5wt39Rj2)MXmWP%ZcY>QV(aI2kfD|ryz~36QI-2-w26kELd3Ln> z#)|IqqH51BluJ7w>S7lh%+(jW6h{kjw^(yET8Kl8mYZFO95J=PA@Q%s)>V_p@?%%j zF~y=8lvGxzn}Ar;!2rW2;!Idh31z1;U^XQ-(QPS~ia2e%SurD$1t!Q2a{BeMLTsgh zu-(<7U+sO8Cz||L6Z$;^;80p!*#y z_O##eXhy-8*d;Qva5h|feNEU}xQwQcC^?NhOnP|HUddC3_5h>3&7gx2dx+7X+0)4) z4%1Ok+QkA~CHoqdPZrNBSKPZDk0(s;(pg|G#HD|dQD`?t`WtSovnB5%E z)Zi62pV1af5(_bHw{KI+AGBL;$y&tf?5xrr((;SS~L^)c#v`} zG7%+764mDIL^z*K`c%TlXhD!dcY9%yW%@>kJi(SU?GCG@gEf@B&deHtg(r^N;>tie zb&JhTj1k+N#T%nBKh1qQzOfEJcbQ9bA4F`Urc#zBBcTtfLsJrBfNM&^fKXV*krhAL zxP@rB``IKMl;?xfAxsB!n_8|_lCyfl-J!{4QewXd;)+CUxlkNi#!J!F&-gFvN(DZV zd4Zbui5?D^VX0_72y!eV7V#12zJCGq!-L$RAJ`WBMmIhPx_gN1bHZN^*p%A_5#|7m zNA5U6bn?Lh0$a+jj}W8sP&fmZk2c4}kvy1=7GWjGas5O=I{7H+lA$VjZa?va>-C8K zVqiAnTSkT2n>fZb2ZA_g2Ib=ZqRdt5nf_wH*{UaMGL0@a$kd+xMtZf8Qp!Bgj->%< z4o4UdSGO9$zD(R|l)X+dlRS5TC}{CUN`T?#ZzSV5KYByf3=qw1yQi~BEdtLy!yk~p z!xpC*1R{hOSVVdU!av>!*gd2{u_5Btpp6wMeQm;4MK2`ZmtZjTRD)9GoWUudmbz&d z0gB|(E;2JIf{DbhwhEw)P*}?|mvuuKP;5!thB7es4=`+&2}mT4R>;1=|G2uV(fIyK z<0HqAZ6U-Cqz0W6f$&dXO|m$7!b)w&buw2ROz%2=04W3*kSIM#npbMWxl2 z)L^Qls0diF!1$Cbkve6G;8oMGVGy?Ds$}0IMW5EsDerv;aU%S0;K}ib62ewh&gIcE z(|=i%bZVVkcBB}K@_UXH&5pK>2k?mMlwvRF0un)}1wqIXQJ2L6AncvyhPTtVQsOCc z&UAo)p`yBS_&GUnuxO!TmDTMKv`ErmKZBo&CY;%*!xHc6PeFv_60b>1lPbHIOgTAl zybxT~sIiozjo2tSWNT=ZCIWdm{!KpP6d2H&9Q_!VYP37N@$v-RXnP{mkYSi@%#I|o zOodLx)LKU4ld0vl=4+srikoE2IY8NY!oqdXj&um0BpZJO&6DFRL}^c&AGzeYBDOe0qqTdV#FaH>R`^zVZ-r>x-PQFfCo-eT zNw_{bN%>O+c2C{zdwWuA=SV`Gf#-CTGv>A(DN(1~Pue_If`G6^WT2vC0;pYNh$GrX zrc*K2?U01YUF2$V<|z!1qDt6BUQDV0yU5Pf2(*iQ4dr1Mna~f-Nhg$OV_wZi+;E|{ zx=6(4!;5^Ad~b+&lueA^G*sj;?2&IAhC9(F%KBjg9)1 zdAEaIp2bMrEn&_TJo$PYV8T|YsGECA6(Hy!{&5Y*KqfInVH*PTuRh@uj zqoX;v*^yW}2a6jB+5-9g8QeUM?&GroH1lyiMvj?-!|uh=9Ls~0XH>D754QzsS%SQ0 zXdQd)%|OfoTm?h}!(X#9{3yfoC6Ja^Mswwb(|K!_CvTe0`?jLXXL78};n*G~NU)v2 z@GI@AU`sPsHcaP{Oe&+Wp{tk7;H`6z2RV*lOS)Do3v|kt$Iaju+Q8%7a zOW9^VtVdkY2&)mrM`85&^4Ln=$)8Ue-GjG9mArFqJ{mnc3Zbgei2G8v$)_uMI}q>l zO5QdE%Fu0b=oUW$ESG=fDUiL-;?X0>HdRI)=0et}P>|Adq6IK`GLqLYB9|OP3hlr` z0ZgF`dHq?uDAuUDZRIwqj@)4(+;mM;bE=1YI6OoQU=uSVsD2JT`3hTzZghkZ1B;6h z0&xczBM&+n36lwuWwKZoV?Wvmm|-;rLNbN{bYlw>4LU8P9lV7@G@z+SJr$5PR~j8- zxRwD`1VA+FtQh@FJrUMZ8Er=RQ%jRM(JZqW{$=4B%Pg|zkxOfNjQ{{h_=72ly&IK< zkVGhgEInG-8$ePMqt%1-sCl3VS!SFKhM_COF$2Pn5o;4?dBN#Ra2`HKT}7$+0p_oR zGa3OrH@au4jQJ1!63x&GR^4W{pINEm0SL~J%g^C0qgl$f#Pm(rmiX;6x>?|uC_Yh+8WLZACkT6SrcMdOQIkMzjJ_?UB&*g3Lxc*#T+CtroiJ>@8@F1y; z+q{g&c;iaill{j~ydL9v*Lw6yJJQdU1bNc&N8| z{Piw8i{rw#kGk>h$jk4}Tj%1oJPLNkv?0@iLu9m(-sK2Xj>{{Sid+$g$nx+C(ORRZ_6%llS|k+{hEn^j^uW0T`2--MMoE~JzaRDB!)`}852CcvyNP7>})Y zit`UdQTbhnYkx@2x=UP**8Xu9ZW-Ms``#_i!Q<|`#a(!eStm{qz^(l2-J+FzYMnUl zz-CI>ja*#p43MdBE^B{XXPAB!}K7_Tgif4dS>wj5LUO zeJzOMx9agX8zWq~L7a|q-)|6o@aVQt9E-=58%1yZX2y4I#1}M?`G7dF6PhT8c+>=|Z?${s3+>eMla;3HP@?Bv0OqLCxEwfO>e7xCmK2 zHe-UQFXQmouvySmn-@KZ$3wDW3+|m&@R)MR7I7rf&utO6^NsW6nOhH-S5Ivfm$P`h zVw;$WyWM5SUVH#<{F~kjmrr};AA9qT^7CH!r4u_nxOXzWB9T7U`8=Rc^7AsC{zD%= z0iT0qxLsg@++4MDjf(5VA{as&aRuon{mz1*JMMxAXs6q(NI?j?p_^`uQtlQw zuu$8BSM{3`ktS<<<pD9L{dPVq_P64l`|!|md#nf=&CQMYrW$toOScnRA9p8?T0blFF3m_r4a{&BEC zHFRJ+zk)$+5~yDi5>}v}L2VHD;ghggCjWLMzkHlcMciVl@I#L#sR*1BV>`H_!D*7B zMMX@=`T@8`_wm8J=lC{c^!McgI@vO-j&{hvp;LlZ_af^@*9hHi_)xRR#9SCo8~UF zvXk$na_~24g$%!4TEU03qG5o#Yhk<{Qq2r-wn7H{@Ty;eY?rhpkcB$ytu+Q~i7 z5x@;Z)+^7FndC^y0FH8KH(ntKvGiXg)CCAwN$6>S zRU!GCFj+yFE`|})ozj#9YH2%0_kX~wv%fe_b3MH6__+p}F?!mosl-EFQS=(Hm)dn8 z5bb+PsgG2+t62ZZY(Le9)8J=%BG~^Qc6*pp#+5X``~b6`@dL6It(DcK7+B@g4gTa# z1Ne3+Qkn_J!%R9#=L8+Rihc2VnTxpx?@8(2ksB1|JtELEED~dC2!AW{EKh!qZ z&PBE+1VZdzl?cBP*`E8Gu1ON?3L==T8F|y1F{5b%2lbjVZNNWd+T22OR+YeyW)R?- zDKP!rrVR-k!a`roce@&yHr=(wL)?xMjz&hL1l1v9N4E=$F`C?%rEg^G*xyhr$HAURK3G0LtAi z$Ylk1F)TG7iC8XSYr~`n*(QbtQJ~P31M4;pluv>)m2qQFBTOfaj>Yw zDd0PmVTie{8B6gekq{T%I&SfF?8*_G7+DoPv5NSScoH`bkP;(i37?O5l`7*~k#f=y zWY$Z7@f&rl)xiWbt{o%_?${?_+SuE(3QuOG&DmC!y8M7dolD6rNn|E@U+V8-Bq@&V=YNfBkWAWT2)bf)i%q!P44goK4Xd!kX_T z$1@th({Ca|Q6O3aT3nI*I5Gne*;;A6r7yGaTHfJk0Y6}*4I~)n07lhM7E;5(@o@Zp znn9Bux8@o+TS4Ot15I+|(Y*6uAX1@PVYsRm=JGzx;)=hiU+5duKvWdz8-PmZ&`IB5 zz@_{ax#4JDa{6|CsS7o|Nhj&%g!MW}yKvy&KBx|Bg~+!Z+pDH;qdq;5UIFxii|LOa zr?-kPk7k(Z$D0}B&x-<2-0BQ7amgClV;pZ4TfjmsbjSzj3k;Ht1j>dlNP)|N7W4s# z6wAc0*^1xgf*%^cvlXOM4369)5^YT`yHqwrk+T-EZ=I((0bxeLC`!^{Jns9sZm}0? zG|5QeJL@6!j@I&=xkBI31P)Fp8AA`Os`NPUElhh)WVORw!FsTZag%-2ha?W_#YkG- zhrS_5l*FQZEH4VNv~tOoRXATdS)tmv1CWuJDK&0Zcc+#bx2wBU$&?@&R*s2dEnKprsV7uhF3A`|d<%CfJcXxqpw$O;O z?Y_KLd&<=dCX!z;io8~5CogG*TfJ==23h9FFd_te>A$C25BOlbfy=;|GQEus+e1GFM447&!jDJ86rWW%w%==UV40G(d#oTpV1SjTf7#WPrI@HGdKV(`;I zf@vyXLQt5J>zoR)IHm=ym0jwgUiO&Giz_B0S49_SfrtTct4*c)c}RH0@q4+nM+oB> z*zu_46P&&AJ}B_{eWEam|&$!`rb;U^3P`N$r? zbklgc?|9z2&(DB`Zt(mEJ?*9b4=SzK?!XNBtz204g(u3o(|D^vHMXA=D|#;`V=?Ik zH4ksW9%jJAc>^*FpVG<@vJE%*i^O#VwQ|x4d_s({+X6K1#=!5WY%TNRY>`f0OHNXi z1b}=MQ2<|-;7O9R3QuB#9|@VrPmu5!ylV}t0f2_kKYNbw?)*?5$^Sg~YqKfXQg%C$ zXPmkLayfbJhiXt?`$28ewIBGgI_KIC?MfrADC6rXn?y?kc~)^#him6OnUwR&;UpIq zq-D!jPsE<=Q-s~@G7f&oqaYz1?p4Z6u`uYR=4nD{&`>dd;jBYn_@>TFXqHQQ|MVo+ zfb8|9W|iXXgs`M9;6j=d z^d%{~Xnh6MKw^dT& z=Ye{ASazMrn;qe}A~7!=8;I2BNnk{Mnh1;^qF7hHaX|%bIfsj}dlCp=DCbS&$LWZa zEcl?%9q~2ws7B<%LPB8>_qZ%u%2x`5@>4OeiY|4vQ9uTwc6CuF_EMHmg8pJ|Y!m-O zwG$n5m(k>`r*8*!LBKzi>Vm)wRDs352y8)!t32#rD`W0CMPFr4Dtj@ev_A}8XZfc* z3q)CBXX-R{Tv+;!)PyBPzY8NIP^l=;?D!-6WFL9}17^9l5J603ez_o_5f-W&&0NbH z_v(h&>L9C|^)zd+x~ZWjECRJ0hBRAcGn#vKGlsw=AoW70(ds6qN$M3!L8vI%O5*f5`H$0h zi{`sk7Q))e1cD4Ci-jyD7_~i4=S78wG`XhIWc&}BTr|74%Vtyg)1C$|0(f3R1d;P2 zun;EdS7rH3-WNeX!5;o%3P5ph=E^A#rnO?%%c=*{2FTi(Je>TY*!cS08Vj%_9Q8y(!zw=7Zc#T{4^Jr2e*{ zA*Y;=5KFIobT%*RtYW6&D&#OH>>qK2AEi?Lh-2ct7J`xCXUJQf$NTVCSIXbv$u5!C zoX3wgom*4jaZ3H6L&QLTex7 z)zjzT*V9$?*7B@5JRMg&UNDCb?vRXJOd6z3nyGRRS_s)Y@D$mAnA7=h`I^bW7w{G? zEKj?DN7+=lFIYIgzBEJnd3$@v9fgyDsI&^7|LYf4Gzva(24RoyXf0?OI6ARRiHj zbvo7zsR5PNvTx=1dHBghL~+cT$M+z{V_XaqCLX^b#@DJij6(xlQ0%PP~S{#Ey~euLWQe<*aLYIluBknX!`3X1nEO zEBR{u7%oq~kxyoy#UHzok4a;n$&B0h>DcK%_cp$aU%}+hxA7;7q zFe3e|51-ilp)b-OE1CiLpV5Z->SuQtRvF^-y z7?-c(qX?>J*YQ^E;h8sCaTF5IqJ&inH_%y@h@5TxZRrz6SoP57M&x4abIQNO%7|QQeMia5EFQVss-lYX ztgGn}vjUMSX5CNe`OI2N&npnA6}ggGE9qqcv%aP0LS|ig6`qR_1WQdV?$4~O2qNj< zptq}-^)i*Znpw-K)HR6iid@UAHT1HSSs&5I>k!Eixt>`MFOl`@`5gtfJp-h(;0TIJ zXl-rQZ^Px@RZuXM=2?i3wO)BvK6(#tAB>9-LVzpHGb#=|^YU0vG-DMo2|{k?n=|M6Mba4-C|aoPDketb8& z+%^N>uVTaDJGqJ>xrC{DxqL8Qu13CrzjnUdd>`*uq$;V;OV#J4^!Zv;lb#LyQZ!w) zf%jFV(p9PXs?>ZcRYj$CZs120QzQEGBK3I@eV&7^L#<@m1|E^aH}YdUs8aZF+3--7 zc^MLyD&VqIyYmRPc{)=*u@PZ{aryH`{Ay!dK6*dB#lOFwUnOYF3m)X%M(=uV2V{xI zdfte%4o*yQ6<1{&)(6k))_bDykpc4- ztXxWY-?0GEu+}^;kK2Mvmmsn(+`>B+d_lh|8w{&Qnto)3zmN}Y!Ib_|Hs8vpwEZiO z+{$q9NB!nPjtRL7H&qwo+oct>rsnih!hc&TYqs)&%>6nK$Berf-z|+lwUs}{avj)) zx`1Bs5P!t}QTYb72-$?ajE4B+IKPhjo!K7$?qPlsXJ5(jkMeuiSMeVnmXuP`JJ%If;GMR5N?qBp5|w>zscV{!w0i(<&Dokq}=~P{EyG@JeKPK2KD45 z<9~jZx8Ur%IDdiPkKW^(U*zpMpun?*{Ps`0Bj5RgjJ(XJA#d@^d^jF2zYN*=x%9rm z<9Iyw3c6VGjQsN}{AB3oiaOrICG0P&Q_A+{I@}xnu#DFshSVqb*6}tO>2Qo;`C-87 z%G$}hk(q^EhcZ4Ck45XqY8b4qrt?x5CVo%))Sb!zShzFAI^4EX85{5J-j=gZ+!Apx^6;s)SmN5d^5Sc36oBnvh_X;_AwCGdt5dzgIn3b#8MbgbY zyhg~3F`@_mVUZj-M*NQ7u~@DcBU)#iZl+sU>yx_PF-BApt9BVH7DKCU8!NtJi{l%P z7R8Kz_kw(WoVd_YtLat^SjZ>Gju%}*5aAa7;b;$jmr{10APT+eo(6g6c+t^OuTG8K zknaAJ+;zW7#3HY(*3yu+UQnTU{jurbkl<-l<3sS=Kjz@s= z4RXuz;`Wq+WlgH&k4_K+bM-ZiVSP&@h2w%!y-&pPDxaKwqG;`6g`H=6$td4;qBt_S zF!=FAaS{xf<4+RT7O(g_P6N>8!5i!Z{ro&oj%e5TsUNY^`M|hfemYkjtc+mQgkWDd z%;@JtX(^5?XmvO-`3Rg83c*E3OLbFJ_ubKb6m%*qAu|JeF6r>H;fOTlz+%ENkqn3k zoVY-gF;0~bjXh?%@+?saXb!}T*@pmd4}A56MY%D5F^LdAHXHnOMji)0JaCWUfvXub z2nqnaM+sgXy6iv8^wQB5Yy#62w*FBFdlqyw2;0Z_=f}|&5PKx$lJ=)zq5sG1vnLrx^~wz2uiB1)yPaZa&Q9x$q_!-RL4zl zr4|X{<_JW7{4Z=O+Z}K7G3&))EQLR1?c}^q*m9jdt!I0T8SB?@DQFhM{SfqyMV|dm z``#*x5<2%q`KOD-PMrR@eXckKWdCU{BHp*j3oaJryo$+<7lRpg%d|_xIy@e@L_AzX zO(LFxn#9wq+Vj%8oPViU#cqu^zf3&F<*->e{;*9(o)w*C%`6})X& zkB4WAvFRFKz!}dvPdw&j@5){C1f4P%9>Y9c$mHgjI2W&Gm560+#ik3lHWBE+?>2dV zl~}}al%UUioI4Rfn0)(1f$;7t#e@vn!NLX&4k<~i6EBkC*}^L`7vSi_Hn}-3y@i~* zKpf+wUt5549Cp6BP|#_N(-(@%iWAT&tSW4-Eb#Ieo0lU`X@TY3@>l$(?7j#xWSeZi zSRBLWGkM8k(Si+?axsqWY?BWm*9Lq$0Ebf#fHzwre!#b!tHihizRkKye85)5kG)!4 zEZB|lKP?r_1fhu-2nP_qSSFf<@cMWb3#eFdgJQvpr92OJ z)FZ$j6sIZR4G)z!Y!`G=;ZZ#Jdo}Xo?V?jlFD~FW5m12{pw1p;xX<3kyFDzzj0NT3 zKZr|OW2K+ixbF*PNn0`ifm{;s(vXMKC*S*na5*Jzd_+WJ3Mj-MfXhpHFbXyw1M?|B z*Kq~HL!-fAID-IR7s52~JJU4HeI_mfQuYe{89;j%ba4uOR>v;s=cogti=%W`6nQ%X zBXH+FrX_w6Foy6@bXOu+a2|NkGz z++M1yPMtbiojP^u&FL6c?8Z>kDYXKkp-}n#hV+Q9g*SAu#Ov{;RQ)VG=$rsnS|kOM z_Vl^0A-vnuxnB=IHT?`~(qg?~w_Sn(03rdvUJU316nCa$?+9gaTzp43O(Z%&BpRi+ z+!5{%)os6n?Kkh*^0GT2Q*JNZ8r~>I+wU&6{M?ql^e%0V+H&Jv;fI2;&>72{krx@r zivzYC`^|9wVmCH3Nt&<3qXR$gz|=trWBo*LG=E#V{@di)zHQ6bza1W+7Jl;`0z6F; z{3ky!-<0&1-wjv#>#6CYyTdCoE|4=^?OCa*TXxB)7kN=3X7$h}p>39NN+RcWqqH?NcUPQ=}(IJxe6KUU%!%4t@^pC@y zk@a=3rjxZfrfqwWe&9#pl=?E?`EhvWSTD(Llo#KN`gG2(!>;tCpM>M5RJP#qE}-6g zHNtUE;j<*hPA~dNczS(Rba7emNLt}4it0>_WA zmQ0`2a8UB2c%yWsb<@A7jpEvS!YTWKkXpAt8DNOn!m>8?P#OgJ0e}BJ9L-*nxQ5p$ z=}+$o7Y#jpcMaL?>C&Hu9RR%Mr{P+_|M*YClSY<1;ma8k37TkH-TvhOijO*)3yTk3 zxM0cQi z52c%b7ETFXn|}XiVNdx(YQR{EAt>2OrpL;9^~a$LNb-?9>=y1;#gSGemaDI zWEmhnmHy=C;q)=WCjyJjkAnBp>EC}Ic1LHl{dgovy*usyML6T|6Fj+;OO^K3?I+ND zsiUK?`q(>ymB+7JbJ8&<9KC9-f#JuV*{~5Q0C2R}3F#+)5uQ?dguL0Z;#hPJNTG6O z+WgD#h&h6TQzlon-x82|imS6FC)t+Finy+T_{^-bhDvcYpS|suZ2Nop9+>*oFT**( z_tMt?VprU4>6zQZa>NGr@1-yPFOy4?x3lZyd+81Sj@SEf_tda=i?&p&7yrt>JLp&8{$)YVUTN2OcDdcdjGe;ru&&2wbN%kW;eP5oQi>ofT{o;~uVmeCuQaZ1uT)@F(BIzCR5-ZzpuRb? zz8=&e-V2(lDmOvHw|fyZ;PnP;NUhlJ`yr0wYq;3x{}HC%I{u9TTgJoNeV`!1gREZo zW$pMVa)4~K$i1j-xj3hge)LD-gpo|w@x6>F6#4YMJ;{vmbLj>5hGVCEQ|!{v5f^48 zWjCyI8}22ii8_ZD>8SQ^QsLfv_n+#WMT+dvJ5+7d_HEpBQo{OWrLpZU*s)mIjOfYv zXftecH*NG3Z;ha2Sm~{BQfvDHVb~&cHveEl#FKBP_ua=H<9DSk_lH+y>Z>Nt(_8Kj zXC=8HCl{i0ki@JBawPD~!ktY?Q~LM&!~JA3?)yL{nn>=ps{MoM*$;$wv^FVb1HV3D z0qOh)!;@(1T@RYX{OkqOPq)~rXIy(48^1xJG%W9ZJTT?N!CX*9;)>XK!u1YRyH(P zN*~aMAZjpp2Cbk6b}%o<859jzWW~zXrh)YGhnQ8f#quHOZwaGU>?_>Vv?TbGblV7p z+BjkyS~Nc2Z8FJMxVecWLi(Ifmjv7N`R)uEB1Yk1Hwd}TsP5UAlm}qsRoXrFN_54M zWl&S4_YF4XG`V592-s?@#C=MVpsmQrB}w*n4L8m-;i{t^R~?2c${*c+R@-L{SDeIL zBgxw}UYm_Nx5hFQ?3l2eE0WCssJF01He~;%Av@BBjCUVSgWqHdM)Pp(Q-CYdzTbr1 z;fl7Kwygb4I5`kqzV;EUJ$~0e5>AESKKn>`z;r(dyTk)vLvj5H2(0YP*fM?ck#M=b znfF^H>myrE|1Fa}myMi0!iwOlDk%MVg6N5P>ef^{1f<+--_NeU!!{9F5bU9P+3IXMM17&wO3>19voZ@nQdjF&0 ze$^p64ZUaMW}1L_(zDAQk{A+UWDPK_z=0BLIPmTN1};bu?SV?s-e%EWqf0M-ENrTB zEi!ie?iL2vxO1b%T;it0VLgST%k2hRhihMj1Z>HU3~T|hUUTuHrnK8VX{~7Ixq-n_2rXmt&G+hj zSVM*Q#lG4n{m&=Du1182NHx8an<@o_iHwl(SfTFQK43`Mnpw#ejx!fVwicCTl8bM# zzfH4Hq%5o6?#jRaE^_|IW!ftu;7J4-_xIF`}!mIb1Q%sywAiDMN9j&-MjWgCH# zSkTLF6aV!RLncwiVxy{KlPF#d@~)^MXV+eMzExX!vqe4ur&aYg(5 zjH5a{M`a4cvm^dXnPBWjX?wqo3rV?*S}U<17u@k4`#%Tit%^MNQ)?vFnL))yMtQvu zTVplYJ9Y48v9dj@MWeNyVdGs-@jeZkrP#%}BT_K)313D|-ZkSOlyPubz{%rb|3a^a zH%l^JhEUM5hL6chkV@KVl2{EUMK7U1Pw_@(MtuE}C&LAk-)p_Ps_yMoyk!OSrYFO$ zHeY@NPf!ipc+&1w!Zx*rpK(fs0KB{I<=wozSS|f9ER&h+s9As8C>dYD zN3BeZ&0K_SSMV|}oz6deON@VOYuj7XuRfi56A&G%+RsSWJsnO;FaAT=weAwF+cJ6U zDek~Uah@(74h$c6<9E!hth+U_U?GZVM7w+F{%I>i1O{Nu`hdA?$2FPmc!e z5vJzYr^AWCereCs=yqZqo(}ij?_5!e1?l<9kjJfPk+AIz`clqX+D=o72Cp9h{wW^( zKhme_>s4A=cqGB|p6sM21M11+L3!M!{u#L(pDj6V?#S7iezIuB+)@N0!mi1JJ z6CWZiqEH~6Mi$&vPN28FO2xGbDe|Z^R|w1M;k1@cGcgH3=QtKlsny)(l_C`uH|L60 z&Vf|gr{gX3&-CcEdeqg%k-k<;kKUw5oo&<7#eWQYdprxwUeVsEHs(Xe^kl!{vf?ra zb>sKMCdJ)QN#Fm+uzS4Z=NNB!GNJFsCT&l*{VtriJY=^-+cdSp@nO}3lUZsGmzM%oy$oBNv9g5VXU|GReuTP488d;;lagnoZkDFusqc?6+>W} zN-T%4Zz*Kpc$H&$z1F;%-}zwwLgimm>Nol`CT3Mn;i0p)B;1K=^o zMY?wXWsq+9E6&+t)2II$?%Q_^sN4rsLSUYxJCd-qZ8e)JK>SK0ZAT)$qj?WLk4jhk zEgY;K&H>F}k&ZYJPGKX84ulrx9P>hQ5LW;nF-KZ#QgCt2t8B@0uy-;K^Z()ZB&@do zV+FP(hf~KI&$6&VYmKD?(yN}urFuZR^;uGG$_XBMS>WHYw6?wAbA4(`r_YBTFp;zR zm?C7IvI4-E{bn^asGa%`^Cq$vwI*M>N68wsVZv$sIx@On-oTdzRU21%(*cZWT+*WX?Dv&d)V0DYQ@>Rey#? z4@|%NkMOCZ*ow^~?JD2SRL|PAi3->3U)ZTZdnb%krboL$YF_t&rJ|2JI5g-_#s zdD5Id`ds+Spz$MHqe-ot{F8w-CQUvNk8f?RIa(S%^s>KC*)k=FI*RF2?a_>md#_n0 zCPGBaEd1=6bl;9hk+!ctBkbBE()P-ZNDF7*?TD_dt)*{y(U|CpaMIx2eidEtgC@x} zEU`P%XU0WK#<51Xpm?e)YG)J^n#xsor3~VSM`8Y0;6q z+%?VW?l>+wDSg@0XdEK!;K|Xlq0cU8j1c1rZ3QEIZK+^-!4 zKI^|ZD}CVhhQ@S$XEcxJbJjQPlWxDeVO_fR3oOL`rZYNxSm_MlffJ&(^oD8C>QR~j z;Ma9UN2Ui(jK-#0-_#J3KlSdeXeU3nbkny9X?1$EPkLWBow_aUnocG4Z%*dnFQ!Ll z2OS>w9jSHr=A)v9^iCHYl2-SP-k!cbi4F_Ke6)x9#-#W3MCb1FpHKm8F&jFN^NO|q zp!9IMf(gusnm}FKfuol8HL%7xtcnBojZRLFTM_l94^EAaOCNk&L&HaBFpjP1Q-=rp z@N>)l(OKyiXGF8P*65{|oEE((UAtd&`LHr4rL#|o+S6nAkJ^Lxrl;>u_v@?pk70LK zxRieN01&xhC1c&t6OAEWI{8+^OVinRKrRn_p`j`LkDlnD^xApA_WsvJCw5w=NADVE zAr)PE^PFf_FxAjDHT}xWXihN2Zl1g&c+g7LYlH(5;V3dJ%Uk1Xt=9jiv9|MP9{QTqPg=V@WArIiyr$aU)&3*Y7vXI{uoQiI%9x_s7RyXT(NcnkGfdx$fC95PgD9JjbkH_;Xw{QK&Y2Oi% z^Brevvq~MouVsl;ZFv(dI+sP?VRjSUkX;e%m0e+dH+Z|gIlW{?)R~ScN2Psg=vG)* z_P%lCd*yYIBP)9!54}eppS&z8H^_;_8bRsh=v6ZNz5-#~l8!wqnmB0)0In2}8Y}i9 zOn*HuO49cofXch*<O*q8g=4?c4h}`tQ1} z%a)78ETy0%g*`-T-Lv;z!&xvxa&yDP^no>S*S!Pimkz!IK#ohwGiB>F_&=Qa}r5`vNpYknn0jB zuD$sjG$L}WBfV^Sv_Mj$H|_gc!^!EABcpY2KLn@4LllwI0{6Fg?*HVG(Pz~{Z~FEX z(Q73+A6XHtP3uKKu6b7vdph>$Xw$F<6gzinrgjz%=X+`7G+BjGysRslHS()hq*GQQ zwf1Q8{#8-iSSpnDE82z%p_Fv`nrLde;T(kav~#12+JzH}coCc4d`xtNYz{-%R5a}Q ztD^(baW0yiesOg)F(f~PxG4SNyl7nd+^ZNdOs_HNk;g_$i93znmj3P7XiOv0OO2-K ze$nB2e0KWW@lk2Zch^L}52^D@>!NQ5@7;3Y3DIRi@V+md6y3?wEn8niXeE(3kDeBN zC}?|FaA%r0oi&;2QQ&V&k9cu3Q5x*g+7q;7M>_2#(b$rGVqO8G%93Gh%MXu=-V$v2 z-bFs9uD(Rt~wUK4dD8Tv;UF9Jo;KahL6&ueQH)a0Hj_^5}N z9oQuI4i-g(>IM9ZNu4@|-$s6Q zujgU4E&ai{QP-Fz9!}>$EB|_`#q_yzqbV;gk`}j(2QmMe6==7k`RsBq1NoXCuvYZ( zYnDQMeM2QXJJep6SpL&OH3KBisl~YkF0k{Z!_5)mc|tWSQNLSHp~Y$dMYR(NZ8enm z-HFeDr`fRrb|yeCC2VzvB~)4|zYs9wLK+TCHG^hQvQckKB{KJ!Q)_s?wrt#5sB}?? zmR_J=NQDgOJ@Uy0O1gF{Xz?W$6sx%At!H{b%^WR>CfM1egVa$lGmDQmA$<0R>^*?m zqkp4y5BDy6*wyZppROvLJ%^$4;}6^=#0!x1U|ONV88~+S!mcKSnYNy5b;5^$+c;Sb z?DO}ZR_we9bfyk_=2;K*p-kF*O(oM#jF5D zM0q)gh;&Vgp%BZST{P4Ouv!$ZY4_R$?NgYD=CfyPlFpw&e!iSVlxZeQcV-rpP>6lw z#R^GTSXPwS9Vp8#A>>*v8wEdZOqvBKz!Qut0Lv{D;MNXWLgQ;2PXSjE;JGLX0Z|DL zbizH6m|4}_D=eHk2g(Fv7I)h?Ad_i?cS=9aMo zY*6|jPH|$Q`DusrX5X>A||TYSwJ~xzW1XGEr;=Qk!!rvLfiI=rWcf5jV>_RrA;HmDHq7$4nRw2)pO5d1!wpzP7sUC7Z7kf?hZLVcq*tFClBcBv7=Z zyO51elo=hh+1AW@%%!K~2Vy&~D52h1 zK124G)ya+19FZErC@YJ@sci(Hb=*0GtqfPWE^gv9EMg&TfJW5zg1E0DZ$_)GvVp;P zTq8H7q-a!+AX0Zm8+|4ylP@=tGsdW5bfOy}X+~q`<8y(tClFeVY+NhZy0<~SU%QAi zn$K*3`a$(_G_QD1h53Rsjl$1mXf|9UM{9&&&qj-!@(c*ydgjU@;8&&-!?pJ=Wv7Mb z%rY9vMpiqbW7rebk=9LaSO}7O`m94d%m2xtzGBxSyFI1Cm11gzbsV0tvumlTd zYauCDx{`e>GM17VX5%FL^~cHn{Vq9x*pZ(8QZlnLJvoqu4kF9Z!Tk1;{=8mJjw%QD zC=kvo9h-jU-=jOz=^GmxUmY?HB7L5gJf;A6vF${TdUS+Nw3R*_ur^$5J3#~D4dik? z2W^fj@BIcerv3lCHX6H;0Q`|EX)}CqV|w1aa7sG+(Ws?bQK9FPWcHp)4coaXjn>Zf zCRrxewX-87nI%1UskEr_s{03MQG3F=epAv{2f3SNlEzi}1@un{bSe551f2v)$!yQ$ zIjirr3qyu8ofxuN)eNLXFl)f11=ZiTq8-*Wx|+>P3@MS+oJu1Hv9f+w)N$BzDh0bY z3#!i*b*`)-#r5?RPc3~kaD5fhrue*a7<*K=8{1d5DjcE^Kk=vkgh4?eb3NExRYp>u zg4BxnSF+#XohX^>YkJm9;85WVSlF10Sd@YbB+r%T$e*$>Eb`c`G=NsU-&6Q3_sx(~ zuj@-%%_3$n;T1LuRp}|fo6J=1tQ_LOQ6Y}%fTctREQSe3Iz-7l*GvtvQGwKxz&xPC ziehQdadz=3y0Aa%*c#ADFXvX>Jjc~sY~@~EG&q#9E?QkL<{=;xLxBx!UB*4amL0k{ z$2F{B$og=4Hd?NEk~=D8IyLsWITa4I>a`cLd$dc7oUSy%PYEDpwb$}uRk3PI3E@X> z-l6ypxND+F(ap6(ZT0zF?(DFXqEb~i%q&`snCE(_omV|}wScSHc6F$=uu#`p9xEz| zwSBgb7l-;sJ=vo}kLB3{|BRf~R%`)}4)Ko|pmHlX1udaAX5~#Xk=NxSo-*~<lFt}6jTPQnvwO{oU%xCkrAe)P38?dR+*tuezr|d`^2i_ znTw*Ah-o9vpi<~5eCHd>ESvzo(X!~B->@apqOP~(*W)Yu<5=c1lo>O-0%s(elL1df zy|Ir0U*!0CduOtKy-f(9@$8hCz?c%etf&8GX^#~0l<;q|juVM1T*%ZAu4*QS2{3BU zZ8*YQ*aN6-zB+m_muF>6bqy2pnsPP{oacofY*vrnn%{zXF^QT*<_Is7 z!X~`T@ACYe_Igl^Jv6oR|yMT)=S=9AyOl# z?63kW8Ho7^utqmuvdg5{JOo&8CnuaE`F4aCmJdOU#f~QnT-CnwwO!~AadS`FbfHf0 zRD$KX7g1^fb3r}5sB{faE9OZED`#dTM6>J3^#K73?^kjOQF~oMgo=f2R*>iZY#fhf z{1+|$g}edP%pKsZBe?+dHE!`-`;d&=^eiBbv><-9^`EsMgr3nXha&y2QO@2>2j&1~ ztTwXt0L#qDS?q<_%Mq*v2cldQe2W{zEArE&3G?at&Z_aR#0#4aai;c5E9|Yq-~Z?B z4gej!%b-_1-k?_Kan%?F`BAC&ahQ(W5c|m%FCl>fiA&6?!fYzB@d47`K;)bjxwtg3 zWVOf`DYdrEtT+5}^T}IJ52_au6tbQq|7>W$L+-Mna`rUI@{{?bEwg*=it;KMrPL2z zy?f5wddy&P7uT>_FPWH@SNvml3IkRRh*gdDv%nM&=rcX>e+f zFuBT0rDix(#wK8@xQvucFswV1fTgNW`%8y&HNZi9=^(Mi1OP29(=`eIN(7i%OD)28 zG=$te@ZI8lp1rx=_jop~q4o`Kl!>8O<2UGaNwe#%$JS0xb{I6-0B&1{n)6zv+*doV z-Pot5Rz{+hPAzjw)gL-ccKlYiY*qVfbaQ^W85;|?D=TuXoBDSbE+!|xJl3zlOI#*a zd1d=+%<^6)33vpbkmj6Jwo}VTVBWK;*X+lP0|Q!sBki zY;spf8MN*(j7w!tFReqmmVR5^($eXgRV-tIb_BnKBff=Z zVhP#%D}l{J$To6%{#n(-=)bdh-*P{qB8wx9M2tdKaCuL|KynoG>7%p9(HoPMm9}J6 z_5qnuj$sPFx-ua-mf=a(5F&hBe=#|}e`&I|@{dBYjw$g82>25#7bhnH{K=K)n9-lo ze?;=4{vbKEvQKhaMIt^q-B0q*V3Pl0qK98n36qy%^(HUNTEcEk&O~7(FXzEi0Qw4C z0k5RTXH~{0|5lNJOc9uU^ydlGj!yB?FaN$=SF8&Z%sul8S6HsmNSXeSQDK z-@ol|U;5#Fn;$A9Z>Y2<=T+qWN#002^qcw@Cg=B8NmAC6T#$9TXCQe?e^2t(%Bkch zn?Z82Gn2RT>Pm2PAto~E$qptr*)$T9%})jccSOQK;%y)(;0Q!c|55D+aL&?@W1(7i zJ?!#_JHO#G()@Ft2^U!DU8gLFc z3C=w$?}KgQ4(4obEw7j{BL<(ye21qKhd(7De=AS@QjE&FgY7G%+7xe3v)hD^+=RZu zpVP{c0%C;H?f3B=lo(N zQVE=Z1YfnJl#tR|e^1jbbxnJ5MRRiVsQhGANU|NOY$pc!z%}hvc^P+5gsPirQr$l? zlw03y6jaLa-BK?WCFph#ww>EoR8%_x!0REfpKA;MfX>%ywUwD2*czKTkF(B9Q#Dyf zrOT+J?v4uloqjeew8SOZRIQxpP$_|f=o;d;^zoXTx2HJRgw8hQYJI_@gMJx_>a89h zIVx>M5M(svFz7v)i0Yu&3JRcnzk2A=+~CpNAT$fh(ggIXhCO>wrDu8WbV3vAG0W!*#qE5V6r8^Q_xU#2$2x#47V@kazYiw z)CjeXP6y+RPK^XdAkWP_wD>tp5bEJI(>$3YUL|9?WXsPQ1s}Oowax{iAM2n7(mrP( zYoG2%75cb-$=C)`-VT^;I^H&BnHi_J3HB+bng7i77#k6&-?K(}3fWG@!GVU7o?=zF zMJUwPi*?tq$?bmy+3gQN`7()Px!6ru$(5FinST1^;(T5xV(`nw8eLBS$gW&gFg*Sl zk}H1(QvEaZZ|xz%M(f2AP?NLeVmAplrzGqla9 zLz_n$JE(1^fHDMmMybbd)y8HRg3aJJPGLpa?61)gOvKqJ2sW2H2rgy__V|@El8zmu zOoqm+ISkd>Ad6cy$R7`^RT<#|A_?7OFUciGWymymBpI?L8%84A%ZnOb4cU5zlJEl{ zz(F#LOT|)^d57l|xIsW31k#g(&?z_x4|e0pQG}&XRHnzJZnec86|tg=3YySt0GFd@ ztflVQ0k_8XFD`YJ0hvzjxTD(5=>nJfLjL`c{(KNK{AGV1!&`BPf9pB4x3mEkvdD%O zahox)da-<n% zFMDDxgspIYT{`u7gA+amwdVC!tx?t>tf)4y=TC;qi%83X&i2ahq8qV!)qO$(kg^31}Yw=O%h${>cid6FBuUhQ6w1w=t&P?_)*aM+Rk z^&Bqg=i>BgCQT>YIjB^?q6(%kvn;D0o9ei^fuU8?qu}ASp)8@HEbm#5@Nj~ zgv8;{NRC2|Y@12{1=9*9MVYlZgfOatwsHn&VmysE(ktxH7AbOy`(BK>mjVrB9l=&ViIjV2K9K&uDg@XS(CB zbhE^Rtj&mZ=ef04Twb2<=Dq`W=J8jSXSsRrxO^>AX}+7KU&+nPfufCmdX`9kq&lEquL0_MD#EhnJfOoaGRY ze9Q9UrewZx(bnwClWF;+0R|EfNJhsonWq>$$VN)ccc)%az9ev`US2+&&YpS&PhNE8 z<@AkP2_fDcF6?YGU9`1$3XSVS54Bv@YRKPR8l1xCmj>%PI}s2?^f)tU8wGH|5kG>h zDyt`hGjmC0NN)tEkbrPJ*EPO_OK=QTc^s>T;W*w*y9n4(a16L)D6&f6wi>Bn5d@nH7l2pkWgcs&K?)}we{RXCn&IGzV) z=hfqQz2SJ!aI7yqR`H@&)X)%)=Vmx&?M>3!$WPKb6td?DDIVE#^H*97%>b`v54BFX zM0(>8sftE-h*061Yd*@w<8mDd z0-(x3Y4#3r3!$CcWsPd9a-%y`g?NBTcUcwAg98Gzk7zk4FFq+N=lds$QZ@c=!AW#s z!Mbv>lSTigqegBV^1iFLd+Di>eUbI##bB%)FOWCyEWI5~Aa&N8zFjV=UL{ z{RTsoh(Sea=$V_LCj^LjLeE@7k4b9EA;}B?L(d=&svbX!YWNup%5yJ*&x9Wp@F)NV zt-+KRfS$n6v%dB&N6-3t^w13GnFV_0fvN=%htRVK^vuoB1OI}as$>F^^0GjJz!tor zz*9tq>pFSrNw}s$FSo@5Y-p_^phHi0rwMh#G-&x9fx8?GdFP4Y(zIy326ZQ!f_(8& zRWry@$Y!K@{pxMi<+%!7zDDC?-qv}N!LmDY!v;_K72wvE;ocdz6|zi;kC^Cq+J|vk zZXQUk4BTabJL^p(x#w}Vnx?5E*37%1e=}>sT>YA#0(<5?dckkQuoqYn1jL(#)0)4? z6!swIACJJgJ^|UXSw%}WeW$G!TrQc8w?|aokvSx8q9_2n_mVz~<_Z6-bsP7|C zLEjg=)mwf)^QziCpRzz{Alds^#WLfU(e-N<-ptL6T()bkBv*bFTSCrYxEu&Do?G&P zvjNvO1b^=T0`gEW)A94+#eu;dx_ip!{Ls$v=ZI zXXmetE*lQ5YP}+>GozV-?jzdXz=9kiPB6(4cO#LlP|iqZd!su~=rv}83isqO?-(gES<`=%6_sPJ z*0^mLv)N1hU&c`N+-7jVS#xu4g9_g4tyKGYi#x$D(~1*cKj45~1f)C0fY_pWjx;DX zm(omXeNZ=*x|oGTiuVUFNWfO;s%L!BjGunrVC;NrLz3DBk@Z()?z5~{Hi5B7rO;h) zPMNjpw-GO76I9F^L!z1~QL7n9ZF@TI)(SV4E@e zL8Gay4UM+^<=1=|9YK$PLu$qDR3fpJ3S4A{o}PP((t!h<0x+6^j&+r{!DA+8uaVMD zNq16kR|QzWoQ@3Jz@qe{(Ve=EwF~Wcv>I{t^&Zo6XLl565ZZ}MQ2!Vq;P1oHTAKT6>O z->Rshp46B-;f+J>sr!O4=mDe!g@+=$2G|9~9Z~wH4N0DpOp6}uWWxwvAT>8#A8qn6G4_Tn_wg~1ssNTC_GIl z>=Oo0GakDpM0M_v(`HFVfZ6e@sff*iQk&allZM6Pr|o`J97x- zn%M>(%puFbqW3mm!>?^BThGO2Sr1b9hON@40`&Kl9KSOS1}BBD%(-egH??vzE_YAm z*4s#T3zBxoK5GJIZ>d4j*%cMr6;z%(74-`FsIo)mo|$R#>Okz6XpQ>CG&6&2B@uoF z`6WiN$F#nVJ(ihcb82=N`@nJw?1Q9_&IaB{w9fWwHrtC(Q~#b-bysIsjb=_^OvR3% zV%a|BqA0Wr1y#4$+LJAoa)6ItHSNoO>x`_u*;ewZhyrT1RhzV5h#%Wh1r^(l)10H% zo~*&Km@Uw{?6(ezy34uQ+i}lZ>SNzy!_NvGWnx#lsH-rCs|FZy7!u^ z`>DV^5xBnv1nd``zj+T{0DBNZdAxikI9^*Cjfcq|MWjyY)0r%Be-8*W=iLS@vcClG zAO8HHUG{oITy8wcJ;}Ab=3rDQU_>~N;_A9i>CN{PX@NjtYlO%}rKiF`kUjhyff8D5 z(r<{``-316JkRpM6B4Fv6VW&I9TMv`MWh#BhlbRP9GJ)de^CO8b$L<3-=f^j<3PxI5JHUz&C7~a z$uVY-#cU;AXYCDJp;Xhkfp5bp3tonsS>Km%6sK1AxYf`DIAbf5&2Hb}Z{=jsrszKh zKE6}eo(d8|&f%rC=8I4OGDTMM2b*mk{~dCQ{0a64gRa==Exl!O(#j3P1M>*hs*^8C zo+U+iQVA7YqzW$5RTknIRAvvjKdF^JS#PSd<++o$)!ulpSV!R#ixoY7s=I=0Wx~=s zv(R%t6%bzjX4b%!LM){E$ACH|L>VEjRe&~BW9^v+mS;j!_KXQSSkglw%Rl6(H*!H> zds|CHi0*}&L`FK>qjLMlzF81?JrnrIkh^s+Uh=oOM46F^frx+=Vu9?302Rrt!~M@; zt?qG|$F_+9?{fa1dnDKhx$Lx4;Fz2Qh_@nKCcfMmTmat|HS3Mt{me$)Lr4)S!MfJ_ zUXs94XtlYRtwhmEpu-RYRVE$*)#K7S7222I__rXg=pIE^(CUE7mcGO`{09Q}Kfz@x z`kUYi_gHY@?o+v1T<%_ zERnJLdD2#8`?_I|J+`OZ7-+M5y6cf3sV`4io2&TqaDxL?T>=5yi;C0lS)6ee@| z6>2i`!m1Gh%vWJ|42d^_x%*_`KEWyLLWX{s-Stu>W91za*CVk%DHf?gt;kthAd^_# z5V%hVz{meAkZput_|%B&a?N#3wEB6k`4dctmOjG^%NY>5&3w_K#;9vk;BN7HbQnyG z|DHfSKTODIFOYr3S*`DKU zoBXB7Ku$JjYZxXCk+%l!i~1%X-cd1`%R&97*FF}LV#BoPhCPN`bn^nT1Qu+6_9uCWXFhJOHR;it0TF7291DA=}$G>Lx!Q3w-7nS(0H=n4{ zFFh0g)r@Cxd(C(T6k`#2dOkPgf#p)jWXho5OfB(H6_H-UZK&2i^(-H%>8$7v#li?l zMQz;xk$jvf@lUodTL6EVKr;@$d%N*;QBBx`t@#7v@BHS6f%}nIn(DOr2D~hfR}18c zbwB1q3nI39f5M$jUhPh+H8&fh+U<`5cTZM}qEkNS6}3)S_$dW#$=b^OjJu|+7e)7T z?pm_D>+1yrOaRXp-7iEsFn&psHhCP?m+P%r6CqrAd&yH!R%j&IV8aqSixOp@Y0+&7 z&U4>Ih1oKiB+24}%?VXKUm6cr-JO|?xswL(4Avm-Scb<<)=TrlB-lteVSzmXM4}iA z&_HI;^=5D&!I%#t1n&&a8(`O{#OlW2xHtKG^hqdfBLBGiCDdU79q$cX^Vul>cR}Dr z#ZalJl>=xih5QB8eo!t#u-KR0a%(hRu{vL(-%^Y+CP8H{VFgvcIEhm)_w8CE;_02rcqch#^GJUS(RyxCDiM!u(|~t?_Bs=+=$hXs zS#C|;&NoVIFIKwAY(W28S3WF#&X$}!Rn!_0Q5c=npr}2$u37^$Cmp%i2jl;*`m65V z3G{h)tM&b5Q>|+rP(0aI@iI2wI7V9i5HIg|#CRD&U=L;%wtEF^;=*`&TmC@2e0P4c zHE?%{3#o2A)n&spjmvLnt<-!Z3`^*~M!oqUh3=a*%oGZE?qX!Lywh|bTc-=D))O#{ z2>m~=hK9fiRG}V@6ViMu*9lBTa+Uvsz}V7qpoHo*BNCTLQy7{++;m`vn0lE(15CTPLD{9Mo!FW^`E1+s?8H zD*-vih7k6>z}@{%!1270Fcr!{d45Rp9cyz@klJciTgdU|O@=DpWn$T~on6RO$X#Up z#!fO0;}b=kARO=XB8OPj4>xFs`Doq438#gd=Qk4eg5;yyOE@T?N)uj{A3cOSW(;`> zne4EUY@gOjXErTM@Az^w_K4A4IREt1wBsvLXDxAWI_E3VK2`6CS}d>ZJI&{Lg~{Ds zM3h%c`Ck^2HDmDOze?M$Y+}2@y>u~L8Mv1W6NzVHUzKAm*n7NtLVdNxXnN$wtcI22 zYH5>-$Pn=b^CB|#R=Ah@4@g1ZfRW-qWVz9fjKgs!e+Ujv5OMD0&BXD%JkDY!ulZ(X z6SCMq)Z~ZqTdv=eUk|vmy*W66&u}~w1MJSp=B@c2KS?{oW9jou*s!aheTzho+{?^Z zk^6#Y@(U`C7`v36SAyL;8(#+j%3(nfI~diDF8)6fg;M3%jK;@RslP=aHuThr#8Rw+YX_-rFwO?zSD_OYcI+UAzJM@)EzOuVYjsqhj zk59k74#Tf9$&bE{6VR6YnT34xX+pR8=<7Nk{mP`uEI<010N`s=1USs74t;!tRZy%< z*URcq_>N%5AQ>@xztI9QDT+WEHT%l*r!K(=gh}xVv3FsA5Sgd^%c1gnu)$tttYlzi zP+`@N4i$!} zwj0;$5fvCCGhSzp%C528CaTUTM5et5!+!+#ejMi#1SFVvo3}&XGO4Ka7Im$8srUv# z*8tUtG6DbNfk{TrSTxBvw8@@5==f0OwFFUM$T-~N15CC;%qY4ISOIpJaZ7e%pj&Z! zP{)~IFO=`Ih9Gg8A?QB8C)p!N2o>srs#vj-y{mOLTban7BWHv)i?~*C6GnnHg9g^| z^2?&%3#HAhT7gcCSc{U*NNt2!%%;d2g38s^N46G{PjSI-C1V%NZOf`jBH6;!|DH&&C+1QnOa?O{*Iv4AVVUsHS& zIW?2d=MNyon{{pu9sGGAxh1GfPQE~9kmQR&7(1K9p&9B&8$mL*ni-;jQ-%@fw*niM$b`Vfns)N1%E=(- zQ881lG3J=xgI8^izO<(rAj~c@T%Vun9C!ps{H&_P0Xr#hz{cIC>uN6G9aztf_uylD!;Q@+jo%Yp^K>8@P9h3V8hVV){ zH<6QN?hSfWO-#wBH26>S2?7#xuJY7Mn3~P zlaT@t!F0c1dSLG`F$80Lazah7v>ztOHTlh8 zV{$&VEF!dx!OEzw8wip2egKt9pE^Ow*%@}Y`)^x1iZ{BdEVeSW`zfr(mLXl$j>mZf zJh8x;XW%Sx^D=NKMr%2>7%*Z}WqtseK43*a=^;SnRF$>g*dJ6`(x!18Do2ACsPW@D z6b|Ua4D*%%mv`sMQWL3Kkpt?BurS^qT&ZYCkme5|azJ{;b9r3&-<<9=@uqH>>K>Kpx84fkg?;4+m8o4FTp zx~Bq2*M1ux$zCP?+`Qut65;}ihHKkeCQ&a4dB3L`L6(ZUyumYy)>Vxs?4fq+h0u5} zf_%QB(bdGSKY<*SaW|?&-b>>_ox-eF`J=Txw~q8Or&}Y!3i@Ej8XHGXVHB;4B`v3E zKBTz?84bw~+TwXtj|ta>C^aEb0%e zKU7{DeZst@6}i%2azz}-;tc-aka@4JlwFV?LPL~WoXmpNd_}5A2_LPdqpO_7t0}Qy zL7=#Se&gF>h4dfz<#>RF)vGjMz1s3b=7zJmsl*p3YYW*AYs(r>NY0^5fyYZP_Vq+x5YnGj+Vyb8vG_U3C;z0lQ>v?|DtEktGoP;=0L_NliJ(nZo) z$RQ(zmP*e#IyNw)+2$ddMd^E*ReAyutxtgo-HHeht|Cbz!;B`3oY^xYVl_IpE2Cpw z`2=+t^=6qml?s!7HdIcvMLD=vWZElBYABB#+f&JDmt}8MUM%y8TF%n?EOuF@J5sS$ zY_`oDrOp$qT=w(XS*u`|i2YU>N91TRw%7|UU=MXTW8nY4aKT&}IjLlRSuBGx^$qpW zctpaCG-9sT?41Rd+iKH@Zr6GZ0$S>X7@H<^1Omij^DVg8i#$l?3H0?r8VCMyIE(`6 z$>r3P(U5;QgfNX*1K=QXMx&m8op`i8XE^m>Ey*dAQBSL=r`002hMjI8Wr1X)+vXOm zNtFtxaOF~^bQ&FpeF`iYYxqe?rjFAST(4kPbyUd$LG05|2G~qVDzMW?J)?g)ZtDD< zUdhss_{0-XP~jYV&2}nVIRm3^vXeQLl=s5VXZ;B`$U-JRRUF!!^ApIP?`OjFldo{;V^C1X|L@arO(y$f;%0 z?IArGXHH(_lHk5gU2p{hEW{d^)3r6nM5e&*=TLb%lc?5$DpPIQ;53x_4+pF`6 z_Jc3Stl`HfT{7iK1coin?@}NK0Pm7lOP&kJ`ag&PlU!27&w44yNG>blRJ|Mpki0`&x`F-7gj)xd ztGIZlEWuxC59jPBHQMd|wP!zDwsOm*OG1c6^!7r7?z?9?_NaPNu9ulJ zTyThF5yutaco${%7u<>c1)sG*Rvbr)h&W{fJ(=G0-_dmPr0fb#!436fu(q?jytAC` z+m;E$)`1fpk1Pm2r)VCMrQk$uH)yo&24qdK?FN1hcv_81>bL?X@fm8oxL~oM#v{yA zfJc~S!#$Pytk)`TFGfe`D1yOeQllW0%ImRJ@<(ZS(OO>aexLEOiJZZ>^5sEh(_@99 z%!!@>aPIKIlG9+l1gT!@;4y0Q{mmYtxnFZOvS2Mt}uw@m@<_@Ut!l)+f1^Y34|6@cW$+sC&JDNEhZ_KdWPgAo%n)&{> zbWr;13E_n53&ze&%D$VG{l3r#n6u`AtGrK6m;Eg@=d*vzwiRsnQI^;Xbup`lBMk!=Y?d($}&MpMT0 zYHkuBTK!LY+Jn)WV6|<8n0-Z9N`LTRv@SR(?b;E&J&3nly(3y1RKFVpVO7#m|7ndh zD&t%{7Saq7j0%UH3?XRZj(r4)vPB_u3KI?$1|;Vu-dfEELsni5e@F4JQ9w zxvgU8l5cHedaQbM-f3K^+QC+(g9@#sE*v-1W*wr*1;r+Z1+t(R@x%58{@_-^>B&B; z!jgjQdiLRrm@Z;NwG|JPAcH*uyl>ZX&iU-Qb$SmPOV+BGn(nkmdV5h1)w8ag?}+S^C9hi4^dGgI63`nuwTGwmO8vr$6U5@ z-N5xkew*z+sH#q}h9i~Kff40pw6r_&yd7LR|AKf|tA zArBuqn6QW_9o!X7OskJZQ#)!nvJ))R*F6(Wip`~#e)G|2&iL$Ds!=~~ke_|SXx4Il zH7|NBI;P|Le_#hpqqxD4-uzfJvu<>L{aDlk=30Ii9o#)M#G`HUOi%hV&V4*OtmEr~K_Gh=E_^)d-SdNcACF!G8O_7vtdj0RCX&t{%hX@H8>d^G`vEN6fy6UplXFM4tV|JJ{f)3-fLALl!_H{F;zTX(Vw1&Bs^w@w+93> z`uC<#%S~Q!GDDXw-Y<7&dghXNaz}RFSKeQUXnK0hu3`Os!<=~k>VKFp+8!u433)oR zcwdk-!-a@r@|`wok*am0eDP-M<6<31+A1z-$5ijYQXhl4T*AyBTbY}Ts~nh&$5NkA zDJT1IVAn(#dJ-UsjK~-0Q?f>j zm0g5(llfipbvsy*b2EMWA0U&{JXJmLC<7(eYmHgDM13uF8J~9FTLRDX!@e*9;GH5KM8iUAr#avD?1lnq=tyPFkh3Kev#uDb}bc5 zFWsL0`01##_~p<58=o1U8DM;eB)Q~qB)SN*eYi9{@|oz!qheMfk?&)1$uiMYmv-0| zrDVFA-|mGYaO)V)>A)`ibYVF>lvmtL*9jG9%G5m(O&T|%aok?%8z#h)(=mUHTE}aT zA4_8M2-DQDWkK8N8HZl+9JrLfyN1i@>9vm!W4Vk+Zu(<%*p%VL`D}a9ynbEjh9{y4 zLo#4r3yjG0ntry1m8;a0h{2k2*(W3TJ8SIye~S7#hBKsu;@)6$e~y+-8D9K<2itH# zM&Ry({ngs9kw-F+&!okM54X{9lqm@fZIG_H=yUp~)1ss1H8s9m23x%NqVSYzCk{`@b)c>mnS_-Gn9 zMrUz%<+IVj3%Whfkbil< zY*H$j!GInb?hc)TMEq2>!Nu9tey%%x?AfSu{2L_`if28;pE1ep!i>nu z&Ey8hvIq9yg6rX)eBuWUtA;)v%yWM7V_*oTm}K5qA6-Sf;M1N; zBzv|dP|+rP)@YBa6q9CgT^)^uAdH(^J2+u=+KTqF>%d$_+Ow$a#*ntTukg$-Y-Sj^ zvE0rqJpK!t83ww3IKS?2A2GWNb(B1V+YEjr6hkjW}w`ydz6DoMM8K>+N|R}l8vs=UqBd6T2~G_ z%LQ}^|4wot5AD9`Bpx&oCQ{|rU4(frs~_J&XF1VHPY!8b&NYCVpH_N|Nd^tFX&FVP zCaHGPDM;VRC%9-WsOn^gG>@pG24wqyW-txKWp0WY{F>BY)uLIZI{X1{>N#mKiYHa+ zII2zB!<3zp8q&lD^<6us{A)h6^pzS7-mceMm9)2|_cKFrQ=w)T`>C(mag*1P`np&d zq?oXk;gW%lZI9Hinc*AgXD8i}(~p%3uSub>Y2d=4iRfWs zI!GB70Bf3S2drco@U^8u9G^6k0>K@6_>bl($7LFRQBx1K;(iK9_H6g^6JJj=h6OWfNd*crn zkU7ysl5p-Tx~1mbf+5|;w$%*wq~xo z1Ka^jrZPeMrN&r-c5YLAAOheeP4T+o4}X?!Zi@E}u1|m76kpdYNe97|?oBUjj;Bs% zvdaVH8RVUd&aL5)=)A2tKAU-1(h{Fah5z0XZwT&9J6q8Kx21=*V%T*{$o3%Hx>t3= zGH&In_EYI~H~)1pXFhUM|J|H$6Ioo*sTzxJ&7x1$IJlJ>g%$L^8=lrAdK$-EFeocl zw0E|;70FSpB(j2D3}Vg+v>iGg+6K4Z*a-B-5_pKZ)>ztObz9uU&uiP_gTdNI+u~K+ z?P!Y!`FVMJTplMP^;X{9K5Df){YZO!1BDlN#1}Pn;ZkLcyV5&5;&1THrDNhVCv`L0 z1mqg4&EU$}Rad&HE1u7Xvr6$aiaysBubft^-q?%TjelQ2qQ^v*9+aJp$^=oGq{_t3O z>A3j(nGefraw-d;QeP-8Ph}+@ze+L-QQ*#!%<4*~kB|3h_1$%^I49{&j~E|ME_I#l zPSH_aUBFqMfl7S!`1tgtx>L)s>ym1JNd~smfQlN}^eewVUGM34cAq{sK6age5I8y{ zu09WvwMDiD0o9c*o&e)Cr2jS{?g_g}&FT6H@zsp+f&0XF*U^sDKMK1$jVAKCEB*My z_%KS{J2Cz`cUMn>b-U9CCdJS2^RvnEB7WMZ#2bU|Ew@dH=M}kqv@`zVgz0XLJI+-( zx(TvcP;{KjF+JTpEq(7o4ls0mFaY?sxT6Twr@+lYTaP$429agFRVp`MJ>8;&j#*c4 z$DPXwP+tyI0hd(p6?NpR3bX&3U?dVB@Ce0s3dIM=tt|Z%le-K`qVa)}aD1R793Lo& z$8Smq#xE%tKOh*te>Rc$;D<b|Yy34q6Cyv()B$>pB} zkm6U>qiq3?wB0zlCupN+FZ&AI!63lxuk?1uwI9@WumUt}Y}j%j+^DlN+xl8bLX*{d zfL%^5|4#M(QuRI_@QCCr1I6Tt^bQwywPI_UFOuJM{nHKmlxq%w?#w96AJojdv@3~c zP3%%wQ9xIkTCtMtCxm5Qp2Vj&GY$mYM9IzRx03k9=6H3-A@+*Pkbi6%5TR@2w6SCj zyJRF;EDl3DTI2+MJm!kTtg-Hd1fq``o~rXd4>G@;N&Mf%EpEO^s^ zUR%qbmN>A%@Hww&mCI}l>^P^o~QCrXX)`@DR5bWn{kFyoT(?ga8{jVI8o5(SFEg6I& z)>hDr3#A#Afs*)3zWf|4W2q|nk`cjFnMy)hx`D4w+8zp{OL8xb*ZmoW0KS6ZTMo{4 zcd-3LGmb67nd>?V<;;(}Gca6hGP5-xh}mB8$s|RrN(EK>s7MzBM{SozYhCz7 z)`efug%&>iX%3Atl6MiaZCy~6_vUYW53)Dv!F~A~--GOp@4*9k4=jVl4%+u!utHfE z9u%+=NxwE3P>#rs-rCl#MoDtA$E%jMHodxEuaG-7rPRa|t-!y4^G}T-D~JvyAk)v- z)=GNm{_%_|oCY6IB^M;$U@KSMaK44n#Kbs%4NHn$Fc<>{^RTyq);!w?C2z`}3k~^m zG2N#P3w$6f2UnTO3+Iw=8<%r52&7+B$)Bm%;Zb<1R;|ooxUI$b+L;E*+?)w)dEzqO|YLSM=_q>j`MsQFJn`sjL3rRxjeLXJ-1&^u6NdXRqML^U4*h+r4=KkI3 zyJtdg52c@-8BeXsZSX`OhR41w+ftU7yL_h?;xJxh^Bt9b$iLu6FL0(Y>S}DdChtv& z%Oo~MkwkfgtVRluZkJcY18OL@%y3pi(LIqKcOaf7X<-bF@_v}obPmKl%pGjBs=d!{ z&S#z|4(mbS_iQ44p5*-_lJ|X*_cO_xw^Btl@ehP2D&oUOk@z!__%VB6puYS~5{p@8 zBK~9I0$N@A#DQ^hm9Mn8DjB-dDoDD#bfXqwQ=S!aOqQs3x>o(VoHI12bS+V?WTAIx z_;SrnLPvUJ{Gfks4_bt=Tu zNTxz`bEh@&6{8UmC#KM8bsS+ibk@T-3G@8)wGef*&A zZkE%BjsEu-{gCW7jQ&g)YV?1==u^~>J{a($|D(Fmhp&}8#pd7jqmTUD&-M6G=XEuw zfFBN{0BXu90G1L3K;ohR!$p^)bR7jykGZrw1%SLd3ZP_80d&$R09#=j!xc!CRr7%l z^MNno1C>xi9`aZAQUQC^Vy=U{jN)D?^?57BUn|A@fo;bsqqQ>4cet@@{YdB_KBUL_ z`5D#5(t%@{4S_`rB29L%XV#?K`r`fOcU7*!GU>|Vd{2~3wMKEi7(>Tloe?#Iv9LyF zF5lYR3G@EkS@8jlU6tGQW%{vMac9+Q-i}sHvwm7P&0j@^cuXWeV_tov-9b-&HC9)nVN>#uI{)y| znr;0?v#m!0F!Eb%#AbitZ1xv|t;e(_+e64mz&Enf__-bA*etRzde1)FhjrJL{hT#$*kh(TJZUK6;~(IGovR5^%q+Z%JMa0gjH}G`z{r8^fl;XI zfv|VFYi_)lh7Ot+*M}WsOI(-EGhfiAdGYk1DgDvBcxGo8&OgSYM?125{63p}tt1^g zKR%^n&-#<}qx13MHl$yjAJ1w7?WD-?)uex%AAb=v-gHQOGmf z=^+wi)yfY{_m2|la z{KvzBO#^+mHB4-;2$%PngFxPUwW|2J($$DxR)LGje#J)gDpcN`zVGn3bCnivw12XE zf$KhA5=F$v%oky0c*4LIx|p-Ex@)A#51uDj$QJ04e zEQMX`f)hWpG*)opvrFSQu@L@-BjN=!KV#tUCfktoNzqQ+D^_+RtGD|lj%LYZ@>8Ym zZSl0UZB=7)`pgmWSiWyq7GE$((=x4EED&Il9gM&u`Ip6KRy&0)i$ST-@3K_%5vm+*O)5WH{8m=%=a(>pGVr^QXKfYbb}qvGXLc5c*8>yj{ETvplk zu5YQQL@B;K-Fg(#{kHVUqvBVCnBa`?b$tH%Gs6AqTE6xS1~*RcJR_V}YcgHCGVUM$ zF{{^A232FoNKxabR>pIwf1t|2(T? zYh5KBr?F^sTe{@5_?1IV_8kL48`7JOiF*k-JpS~!t0kgUWLlxLGX2LfargKuvbuI% zIRsGO>R|v)7!{UNM*Z~qGvW#9(qm2a(4pSxN^M%%7 zrYEyzukLJpg35YrY zR1}b~NyI2YTo6!#B7(B~f4_5YRaehULg2mk|Go#`q^oXK-R0b~-*eA}&QPIh4s+VG zdKF*lcMMz{L=IgLwNKE zXEp8)|D<#B(0?k4RS27TU6uOzC#AN0(mB(7S7n+3!gQ%6M>>;+{_Pqe#qiTtuMtv| zA-;5t`r(nzQhaJ=?zj`2gAsyu^QW8xXFQknYy^`s5S4!t6uc36GVGBgguxm^`Xi6g zM>$hb<%`E+s{Z3Brx3%&n~y4^jJiS1x*AQrzNTA4WjiB~L)AZycE+QD{4pVwj81l0 zyQGc=^@C%;Xica7eN0)vqv_O)W1XFn$iDhhLmj*5G%%c04dgyO15G9pWkm6V)a)ax z8r8((oh+)``*>$W9X84`87qQ0C`)Xi@})_hzcaXNAw87ec)^gCSyYJ3~^Y5JzvR0S17!Dd}Za#X24b&@lx^|sCJq-shK zvW1&B3(asdE^n_3Z*l$2&F$)YCpn)IC=U#yTM)m7Vz8 zsbX8Sp5}~oq4UtL<9%g>$NWi?SSPT6Qjx7PIu;5c=cg7aaPgLD$ z{SWQoNPYA@95aEzA8`){jQ&KTYO}4j-|Ottee7qQcA^**o2E((H3!7@pd9_+bIt+7 z?s%w78@uJ9k~VhJLvd|va1B3=X~*j1JH260##Y|x&CQM0U5sF?{@LM-tKoU?LMy=0 z*L&Jk+hP%0E85&9^^3($W@P#H0_eFwDrQ-eKcJ56&Uk;Zv)9njxJ^{uJRp@Wrm)k& z`x5psY_}H|9CcVGIjE=)_i%zOIwry;MnO>)#Il2X9s*Ap3RvPXxS11dl-D9Z8{EM- za2S5%ji4J@FE>C^g*dl?? zShnQG7VgpkqocX1UxCT0J-oUcDxNNv0C*Xbybtp=Y>@9WbAb$EJ-o`>VJGAKd2G4I z#zm}aftHX25>c8mf%H#;G4lB5=?Nf%?@UarPtHn=!t*R^g=5*+>0W>UMzGLW!B7^w z9V>u0#R+aHhWmtYgW&+h{sflXn%FMhmlX0T<*}Jo!vN=Z>bC-G8SEQf+5^uP@Kctu zj%q&hAu>c%w07M;r>c%ED(&#DcDAbEKS7<0J2N!D;wXV<%uA&VtO{hqf(Ct6FU3>W$@rrO~-WiVkVgQ(x_wmx&=q0I%S^>tR4W+plkF8m4JxM zHJ!pfQ29!9fMWo5!O>cgy9pM(KiIEXju6r6<%Md02pU}OSNp@37i#=!wk{t52T|d2 zzlOc-L^82zzXlKUxTkKTJM7ouZRj?IA%1Rop;qd`^CB7zM^wufR^t1dU(4^YI^UZp zvF3+^(tFbq)&WDZ3LnAUkB>=tjbTyv3MfyLCs$Q=xrAb$qnE(V@v0jjjHT@+({B=mGqF01yaBJQX@>?X-2Ntb+B-P-~yaIy45uoitd~M+?tVYvaTOlI5HuFhDb#P(; z?mMHpWCXEF&Gi7{D$NWDY|d9mbVUH-qZ1vp%{a{=syjw<0wY6iiC*L;YAQgu+!tcY zEuX(jV#E5F7;*_xM$S)ALM5P~l5*sVqKfiyyRB*_CmYpC&30NH)oj=1N~%vFyB(Bu zls#||(f~4X$?A3D+zQ0!!zBqgp{5*V(+PF@QFh#g_T(Ax5jyIgqwIZ4ZiShj$10Qd z$F!+Qd9R^LoH9vlF+oLZJ`c0t9(CX6ou8q;i_Ub$w)E22lFYY(otqG;6eEj_JEawn?H%1+|#KDHx?(>#7vtvfl_m?^?BXoz1 z$Bte*{l9h?K?`Ny++|`;PhRGH+8W=jmN_GA^l|BZ@cn^bLA~Af1?Pfc=Df(zGBT${ z+T;*8EK+^(T(OMqJ=Yl*vyA?HF1+1qRrPt!FpR$SJlI|LsCnl(6GoP%VufXK8*NWw zalwMu!wUA8mSjejyKYifo(D7JZuQgioN?~M?;tYceD%-suyV6dElp#W*uEQ`BP*++ zV`jl@u_OPh=Q}3>Ca;|jC#2JT#D6%S<3QlV^x@}wVYxH5@`jEy_wmBjqN-QGf#Rs; zcYDL{Qk6$os`Wj~Q+Iv|){3KET;=%H2qsImCc0o@)n#t8l;7zzs9#(JPq2QjGOL{I z1ROQP46H#HbV!S*t-)gJs(`N^-fhNUOA!cTIm>%D=#= zX$;m0_kuvBe@(=Ld{s2;h%89DAH)Q=SXDQxT;hdyjd2}8rDVBsmK zn&IfKNvg&Rv83v$y)G2b_XU?Y1@***G9#~F2qe5kRbJ!_8AFrNq2bG&Zx|B(1u$e_ zvB7^?9ek0~lqNi^yq&368*g%k%fK$X$T= z7Ah8IJ5|%<>>gvQHhko5!c=!>EK6&t`4m{`+(yB(}2;eCKT)qXs;lIHuZ3PAgEYZ2nJoUHL z&YX-!p)Lz3^l8<8v9k}FFJ9~np84r$pvi?<+ysw!8oMy(KuTz%9%l;`TQ9q_tgZ@} zsx=2>PtBZBLI+Z#YFy*gHeYR_S7aWIzmbuz0Jp^V>9(V;o>mbN^ zRAEFuJ~s9ECC-o*lC&HmfWYsa(KJS}T-AQnX*@8b=_{=&1j^eP{vxkx=5lDj7z|jQ z!R)p82HFj9{AQEPV+oOUuMoMl{@%=_j7&q-A?E0!%KY@2P6I6zT`APqBQQH|HS3a zgj_j)01Nv1ND1fZ z5r@1y*d(tnBz|l{MBs6}cmRtX%=&U7o%+YXuRFI;JuiEfn*R-9f{VZ5BS;2-^ z@`w!6+DaF#U4Zd38xj?E$_jgpOE!TV9(+-EVh20H7m+B|$=9mmuXgrSw|yJy1;egz zJb-HS6;8gmukb7|!&%lJIj~;x7Mv3Dwu0heYy$WKaA>0V|*EdUBZjkoI-|!J%QfrLGLjefb0Xa(w1LIf(VKL9FK>z)~=X zjSjIjSX%<+T2#SjAUdZ2bN8U^@ji+UfU+kN1;O~_i*)!yA0uz1b|O5|hmQ*va3WhM zq!Zcl2f{i*K6xbT!V^Z$L8rlf()pS5)pg$la(U{}Z$fAFRQ;9C`S`i?N=T=L>Tdn> z>nou*yrkZ`(it;MPr!DPtH_3zNv&8i(ELKpy2_a{RAVljaO?6;05=p=KfKbZN2k7a zl{03HrjZ_211JYuB7KJ7cmx501UXRu`Kz4&go5}ehUA1AQ(+V_l)Qyvq165}i7F>-Qw%ATr&k$9f(sGuy_9GxjM!nwU z%${~O2elnOj}R-jvr9k;WDV@qr4+JJWR~bY0ax2|oCbUiK_2)pgB`WuYG=d@ND(c) zKSqCss=_r`u837^`B?~2nx!H;Eh9TUnSQNaIesM|=6mz9duXwP6(m7=%K07_I**NR zqoY1Yxsd4S6AAGBv?OO2>Nd=2{*uOx z?18`y-RgmC6`7W~fQ=*>w%$^&Cj%YbJw2frd7^isHA7l{YNu*~y5lBi*c>5U9&m^G zao`c)B?wvTHV&wo1PW@$7H`pavDtPZZz6Ems`Yy4;U0i-==DziC_E!D3?0A$4D}*& zGU2jGtHD7sAiGO$N)FcC>w#oQmT>QLegb3|<{LfGlTlqu@?pFo-BqpEIhEttQ%iH2 zQcuhKDa3APrm5qub|#Y@XOAePOI^spfIB1yy{ZPU{S-q1P@E&Sj}*;DVFR6H z0uSVH0-^dy5~q+8XpRQ!BOzEH1JHP=Bi_;BP=5g630Q`|gFC?3!a77!SmqWDc*1%M zfR0Bk$!GArui2-bMN!G>Szo!*?*W;i^-oq`{Fc*pIK`6@>fmD{)Tx!M73QQ_?OHOY z$+{5gLL^<++uC}RR~NDmU7(N2>b-9{L8aWUA-$;iHy{Q_?mKZmNu7oJqEQK0bsLm* zBt--B2Jgc$^xDAEL#g4;5QzFx8!J%+RAa97k4l>y1fn6Vv zaP;nL-p|D?pR@LRB$2`+1mWY6#;-@Hy5b>&4~bmFL#}mHKps1pfHifMz~2S%Bkxg5 z^138Ag5XM!#e4hmJtUJtwZyHK$AneN&^yk_yV9PTz(Puag^YJNLAx;z`Fh5s?2Ow zkM+V3A}<3X1KH2ltU|+vIU_@HGb$1{qc~qpM%-}0MKZYP5uldKM8^Z`hS+EZ|D#(X zbYoNm)#&2%D)1ft;F}%NvWCnKG~I{^6)o&-45%tIh3|Bhpxg=I!4ZR_RRLuU(bg~)|A>}*4(QA(jH{pWX_Jw}8NF*SC!mb?8@;Bm?JWV>I7=#4ql zv;OrRr=_@%Ew#;KYO9vyl!8a475;s^=jq6vxrLf}*}R_t(HWh!p3IaP|Cm>6}&n_^vZz1hz3+U}XI?AoW9O&Z$}JoR)Ee!7B=lOsX*$ zLzLhpdiNW#rkO%VhgIQHV&sOZOV>G*n!OFQ{#W}It7ve#awb!5Ie_=eb~tZ0AVm#lp5$+QGBxyHRH$RuI|I|$o=Hm2 zw5TtvcP4@#eFxLr2(W|MHstH=_6YxAQ9r-lxd6KLao+>y^3?g?bB>u_>Yblvq7S;| zMs_f~2o*Sf!vd_Q=>sL|Isejk8mj4Akao&bhuz|QeXw*py?++VSOT1C@Sn_ZLf26z z-sB8wmKQSnXNOkNa2kN=7>MbGk9fkZPK)C)#zHOmwKs&pSiJ6e*REHcw>q8!-)vB! zuDumjeWkkZRtcef<5tANd1~lw&O){0QfEjijm6FwGs zXC}tN`UZ}8Du20C*HE&j* zxjEM6wpmCcn75T&^1!)ONNNnO7;@}y@fyn@D&Ku8aHu zmFD=NRrxCQ>)V{uUELQoe}i-U2%NT%*1i-;=nSCf@xi%a#+Q-tS#I~X4bCiUxQ9p? zd;r-}p&by=&5bJp9)v12?RMu#yK;I$y?DDbbaL4!Egk~}a+4P5Z!j=}zrlDO;L`Eb zj@uCn{O{X=bfpD=6R|RK!$xNXNNngG&V}&%ue}5Dq+wiF618!O;zNSVg1cm%|Kl#F zFcqdcqE_obU*K?nsGJ|$k}%;tT%BQsCcG!fYlio1Db;}JP@b7;`H9?GHT7<1WuNGs zhwny*T{Y((n9&vLw0oRY!_4ut;qr<(p4MjdUq$uaz0$#b?{)IA9lzR$$!|Jug(kWr>@MQ#>ASC3Oj^oRJUz|sazVGa_FFl0%vt;mltY?}NSTkfD z;3k|_{iS&jzKaQx6_3Zi4}%gR2d1|tBBwk~wEd27x2jEaRM!o%j zb58XmFZSqj2oSlDb5-tVh>yL0vr~D+wUq~{zx=?7C3n2)hk%Tu@;`JAt=`t>vr+Nm zB-DTDcc1v7(^k#1LM89EZX)|5XJTwl7QT$m+^Wv_5g_w|y7ouTsnyXzUgm?I_|7Eu z;!v@AaI^u|(ivL;_6lZ=L)EAzMUh~!NLO4w^4^2U8d_c!E~=?Jdz^XItA5uP6fZpK z#Im3o2pqN9nZ7f?#lqbAHgYpDHUbGZbWf243P&v9Tm$Kis(;Wqus3{i&%=BFwFjM= zzCe2PL8rYB==u6y4>{S`>xVuhGqvO)?6v6yOqt;RM%DenL(aV9f)FJA1FEdlucas` zD+;z_Tnu{3U9T?v3Ff|wFhy3fpci_nKm8ycF0TRGJ>jPaHLu>$2e-z7AZPu|nN)o@ ztE(TKSwg7>Ic~j zf}={k9xd*UwED_p=*9DV%>8q*L4ELaS@^b|f$pJ?JFUsa*YN(dd$J?< zwmRtvaOR^`=M&&+FQ~hoaAx#w_?;)5mf;9F)lpU01B&oED4rpFSdFXNw>W#m=Kj1b z@XmojZE+67&%d`|XUb)2;*-wQ5?u9n%bvtWFi7qv9e)6O7$9$l9uZ_9IKgITSgcwh z(|6S1r<~U6^0&z|MkSH^_l*agLA}upBN(n8eyZ7F)J;z#jCvCbnA?BnQ_}bh#_M$N`wReM zb*W39g~l>pt$)^OZ{k7^-9#&(j}%t$3aJTm*K~jIEE2!r-NnyAC!McWKj-Yd(|4bL z4xYV!Xt^)1>ptsw=O(ZJq?9q{g@7YLS--Lu%9c}{zpJMZ2RhMFSeLnn^4Z<_J7>Dn zNaoxJH~*!6^CxF?^#|p6Ui-2$sW(Pk*1hayry-e+C{4ZCm2B!>_lh&xvHsoti`Sh; ztjaa-gDE8aGr<(rzJaBpZq@!br*Y`UtrC&QxGK>Q!dq$xTh-ZrbIyd-F2sU2pw689 z6cC_7rT^~yAcd`Jw%YqmXPA2V?+B9UzUob9FVs8pO{^+)tMlJ0wSskgsWy7)jJL`{+6~9O|1D>B zb+0!8He|*FN>}3Jo+M7%K#0iXe>!`N9aA=wu)R*rp~yegui+7(pI(q{voGk2uke!c78lhr{!m7(* zH#mNpVG#FD&ks|QRWL$Jb~huOPRH`6nBk0PS>k95Sibzeo(3e3p^|!`g#z0)%yCxZ z#3LRo3oFT-Vhck(Ytt@I zGI%iUPW`YP`wf-u$-uw!D&0@v=ZQ*p4=9fBSGtT#no{L1!Vi}t)OV}gb9!U2+9yL4 zR-GBX*ZpF~otf;7`HXqWs}pK~|E{{a#*N3Y{kX>E`r)5y+_`u-A?FSOD_W3q$3=#O z`eM!@dE+bj3RgBB;Ilvu(aUVIr9a9;5_2L0;JX^pI1_1dS^&9@&t==2pc3EHTzN*e0 zSW)>{X%zPj?q`%g!D++>3Lgx1hqUkziq33rl8DL0U?UE5LH_^!hPabr7Fx6V-Vk>i zI5iw@4f zNa4@r&X670keCEROmb6+@vebQ(H;cr0_OsyF^=vERryT`qqAER3HA3$?ikfr<<^BE zU5#qNo^Gv`P{;1+j>-R3Z!HtQBl(37MVPfm1u9qN4wP>hW;P8=C#W^c(4+O>L=qj$ zx1k_uEQ6&eVcX`8Kb;nr_UeiSW&*{#d_k5(ce+v}4suy3$}%E0k%uiWpQSq{Clc^g zB?IKcn}kaVA6RSUA%>8s!r~eLJkD@Hv7en5Rum-tD1p=j)=$=JK*u8N9|6$5H`yJH zlg8jF2#_8dM_JCvtzK0~?+q~Ya->vgmkQ3*%IGUO0uH(+LWH&71xy^SCw|D)a$SZD z+UYsDHM3dFg^n%OtOOgwT1hfMh8X~K<{|568OT=*Enl0N-wP@gAzrGJs@#I0D|q(kg~S{HTF(gPM$VxC zC|WQH(_|7P-g65u((Y(UB=m%dk7Ro<$|#?Pafl4oQ-EbG@WBA7ry6~mXR&j@;keOZ zTRr(TXP{FW@TVmSxyIsO319(Mqy+>z_kx0sCnBO^JtA7p+itM^NrUa%47P89HsIF+ zQkkYWbf&vwCJ7 zpvoTOR<;G4UuZXgz8PCM#8P;QA@7_J6{mJIz8Z_;p{g*Onldv)T~-8q$U`6@)k1r` zvtTg`=Y)_2a?dfyJ$MMudeZoey#o<`_hCB);EDKRW9Xgj#dZX}i)hBMl!6^H6;ePI z0uK#mnMzKAW+#!85aY>VFmAzouD))>`}D73ZnOg!&fXpiYFfsxm{YMDp5BeT!}wQ+ zdBs?!bh?wwRE7fESofpf-CLF^&?ll9faZWQ2?1<2|)wf43fL zM>%^LF;+iCEm9em_eD-en9mYj+4g(A{Hf-3Vwc7oTxh(JY2w_&I}XIb1#&(EXKj;** zqtb=;*4T@U!pi1xb~srZ=!rkX`A`CM6l%1dg*cx{NRa?st@Nw;LnK5RVfKL-Vg`yx zq)@4#U?f)phY)N|`D~K`Ye53rgJ9Z*>`)^`4MfyFC%J=FXFHVTNq$yNa!+e*B4o6y zR)KYs8~e4Zz&-|mdO_zcLejZ8ZEO4{zgaNjgAYFNE)ofx_On6rxgh>JyqvG|bI{%( zS2g&u{(yB*Z*uGMjX;+gWRGC?kRKvavKc531%^BT=~FUudgIgR7(R_Q_~hpcBY;m7 z#~iYVN7lD00B7;%W=8dDcfo{MyAw>iV_L?J+YLO9 zkVWK@)*AbWB(SG}MG4xM^9?7I;dG&qLY7<}8f2jc+$YlAB^C|%45TpAuF(Jve~pzP zrt(t~;n$rpiAJ1{3P>2>nln3!srf zi>k^k-2ZMtQS4>_B6lmK5+;-B6lVbJN$%Q81X#jP;761X_+q+dWzrza4t78i)nQzB)8z21mE2m>wH>h^<>W*ReJtYnt1T+=$dRuz%9gOSFMT$SdQZDU@p|@tP@-N*_^GDWYFI)e&?n+O&p+ zsN-7H$_x`C!gX{R-FbMOr7`6hpx+|7s*}NBYRhW*m0cvP)T$)mL@ ztF@gv&22>pwOfx>-*L$wVK&SlbR^BWgZ~U9rmvt%Lj`0RBK)h=iuvw7*d7k{ zmSFk@o-xV!#bO`60Q=H6aHeoGl=h>LDzMW5TB+Q zZ6J{6hCJ^>X&9BTll@ZgL<`NfCV=X)36_CPNNZrW4IYn0VuFs`HsR6H*_vn)pGm@o z=&#UzFvh{!CO$}D@!vKpDGB--9>CH6O&5sqfC#T1OxTtiek>^&ewv#?GbUsnLYl2P zEo<;XKQ`c;W-vt&R~s#a+`+W}aFdYMKA^4lZgNWiO?-$xF$*PRd~8ZK(#!!`gLNV@ z2(uXTB5K+jOS)C>AM6e<8g|(h(QiI-8iVf}`bA0(<2Uvp?{poAw#!DoWaGKSDjnH| zm}rS$e4N6?e;HSLaMlzCykCTS2{|EGIBQtJR(U1DVkDiCg6MQjoo6hmUOdEYIMUky zk@_K=vr}W?ZmtGE#gxrH1N-5gO=T(xIEXMyp@UA5q{1}8M9Y+rUGNOyqoL>x<213s zS6BpCtMCl4PSGOZ;3|@tP}~-3=Ts1NB0`2!dIqorp{#fS=B9nrS-M=Sff6v#U=2

6BoHS58d$8$e=2N5QwG>LUcXFpd*GC zrL%bY3~WTWOZ+N~HxQ0-LB8+8udwe$xC0{^NInDB)wX(-JVpUf3h}@8MMSI+$Yz0nTfU&o76wC!!ZYaA zTJ?KfuNBZuIY69VvgHUEJ47=(j{Q^OJjGWyRY?25aD)(GB}OH_6o!`*O#!HkYSzF~ z9EcyXy&=N>aAI)_lx+At2GQX$cpb7f4N>ifyY;hn=#{Bxu1f2GoidXKCuAnejS*Q2 z?2quPi(^ooSzSV?HNg!yhq{uGJ1A4|AVhNd$T(O`dq@>jZTrR2!3I{@Wm35AAl{L zOc`y@*AnpJPX=r`u!$BqPHW;RI02vt*nX2X@}UQ|pi=mkHT1EW^%L&kfv}LtBX;El zDjF{k?FZxjjt@f0qS3|%+Y2g0It~IlMuXmP6mDU`NjUSeqwqW_=}3Gjhf0ER(CRH> z>%vI=6a@P}(FG%q>#^e5K)(bjgnTus9Y|6zixRnxqGagg$c2>@bWA>>20<>}5n3*2 zo?!SovLnUrv8vH%WQ06NV>M>ggQ&QKjfH~3*gjMl$bhim>q9Q9?;qg~MW~aM0FBH# zacO}VGf=OFf6^U;L$qScz<26pVEJqmuulv=xogGp492My{;8$(c!^+du)pXDGlM1( zCBy>Yv6kuKYDWTb;)r#No^8S1qHJ_4DucNLq;^W&edJh-_v=Oe{wcd&lQYSc{6X6T zAyWr2hr}(CtCE9XtCyxo+%f3|{#B^k1-I9zzzG#<3@w6UNUoZEE9nciH_Z9K0@JOP zr@Y9j1Y5 z|3?JW#+?F+PfB8ucfiULpn5d>(yKcJ)B`L4pkONP3Q)a4q#;Lk*AJlVd`(pbn}kBq zUNToY(Vvo)Ie@q2z}mUliiAd36BLKj$w)A*gsnF{@1 z5_AINl?OIxB@R@CY^b8TVRZsr%c8+cV+(-V0zf0v4cAXjcLx)a%w0^+tYMzSbKHm; z1|y1+j4o+Gexs(K7^;o@m$(QMPf`(KKoqW}ueuuh2r=_qAt9&OiVpLaeIZ+pv?rCj z0y{$3CvAz-^;-m&m))h5CBiZAD|2hSDRIqQ2TG95hk7Hv&5@4ACS;kfC5g?h93;KZ zjFF(iE@xcQdmZ-{hJv;jI;A5sG`8LaD?La>>s_)r$`0&jNnl^E>JALB7=VfZD8dsUjB|##bx}@3eMx8+Di_jeuvQR9jF3dvU29QE2^n*l z*2M|oT$MBCGQ=;}z|7{j$a`yyEo<5tT8q-!IfEjEjW9`@0X=;5VuiclegW{Ky_ z+CP<4G0d^+9+Qeo%zS(XpgcH?K?}ohh+z8=*|kQX&3>{900WDK#18~nfw}in6_TO! zTOILar`55dDx^#V?UkGcm2s!RCC9;OU|fA|k%ItE1LH`5-e7czGN(Z*avGRmGiY;0 z`}pWigQE0bs}EEWK917>TP^`bT?ZtMUXtA%9|D%7$Cd;`A628=WZu0MNQ2%Kr*LjX z26JfzQmAUJh1D@I3K*7HEDNQBpga>b$XGstmFvg~Br^eyDCWpTWmN(+HbAfIRf%c= zwrLid8JQ|8cSg0K#Vcm5@VPWTGx#nf8u7OP5Yp%xS<+a7kWmOXhqna#NV!VQ_3AA6 zonvzJfONq=cBZV9i{D-F4#_R67xl?=v{DD2VE`BL4(Sp(F_k*({cZ zY-JT;hK7jzdCS>YDDYfUBc<3aPD0x zKmGdHLq=Y{ghxqA>;~{dUr|84My99`t-pm#z2Bv}E$BLQB{FH5t0LVIxHWnbqU3+jI|nhszl=X6=op+W>9;ktyfY*H3YW72(RF zl?Q{+?D!rVF@AWEjWDPL1Lol#ScJw(k!}xAhu4c`;`NP~^%V3YS~u$BRYubMY9tZ| zuM#?1R@5$PZFNTTmk1!R5Hv%(sb!7$jdAV?WEhJYVRDh{eYiWhEQGm#Ns#8ulQ(zn zToj1I)GL~xszNmbQ0U2I07@fl$vhow``3Z(vCt?rXn!}W zUJu+#_ylE<5g-?p%W!aVhR7ExolN`EJ#6HbZowTGGSztKf2g_QbA*v1y$QFq(T^;# zF0f5NSxBVmhEXr`irm3O71-T%tR2HtJfwqQY?lWHhrjXw8fZrcvo5XchMbZs;HB`7 zC;*1VDG7bS5>6QV!tGbAG#2|JRhC6(!OyuP=hF#1zQaI(e))BiA&N*O3EWM42vOR5I-O=wSSF`Fxep9D1}l(tPGcBC|nH4 zRPJ^dH)}VYj$xANDWWEfJva)lF)9e+?9gnbEH+}FSvb#BbUDxQNKV8%44ws@nc@{; z+g2vc95TE!@oeTB6nuymb0~9aNFV823BTV-oB0OtZ+SUD+7eN+0g;T_e6-uJlX>HW z?FI-A#A_rKi`luNiu)Ji{d1_@VNkN%OsyadYnbebsw(gQF9o4PluDofe*~c$&y{Em zl#oyWilmhIx|LBW(5px;iAM_zt8e(ZtR*)=>f-fiEqNnmAd0Wy$~?46%*<5A2t$dQ znxwih*}{3u2*@q|(h|O-7ga=pQwIeVZ?ps4;L>z1$6N?=pCQiB*xBhExb0U{!@U>eg-IfPhZ>@r z5_6$YRkl)N`~=uTA?{oF(qwT3?v-t*7jtJ8Ym1`q)e^LHQR;u7{asyA|S4jf$bZ$h~DrztzFTCHj37aNC|6$@ZILlCU!ch+Ry;F(}8q!ukr=aZIP^5%94D9j&tH+C-CQS&ZT^ z@k?~$y@HKEhozXa3ayH^QTYrPQsCe)0ccp^FzyfNxyCu-bQHrmVT728mEfcqVE-7G z#sxA7kkxa6nKF9vXe^=V8NfP=(TM@+8r>0bdqgwPCumI~CyJ$EemJOcMwd~E8L?ti zVrbJaomTtRag|u&?XUnbgQ^SXm;WXDsLOt`K>}PYU@Q(Aq#}>dFod1lx7hXPG;74A zYTu+U*=2*n9Gr0?5njfqAd(w=$28>B;4=_Y3p_RO#%wfd7^2q(+8|?@REcUeuommZ z>~e(E2j;|f)PZ`mmi8f@psL?JZP{)y*?s*P?j>+pKvHX!A%&}geE_%9a0fgRhAqe* z>DyQwP1UJm&vXYM0oIvkx?ki`6R#|Fv3s_A`7(EYjh*-HE3CFUE8qR=3*7N3Yp}Zf zlvD$LYEMlat&U%u8i4Z;+|Q!mjn&xxKKBOqlgeL(y}t2++!`sE)T!S%N`0%-U2xS; z-BfqOSKPl(L7NkQ?hdS?TR1$zZ)r=a@v7$Ze6{kbq^DlE)6H6*S~}IL8;|`X6$vMa zo_Z;S-pd&K8{R%EXAyV0OpyZwE3(;7-4t zX1*=rqQCha4D}at1V8lH=xTIyH6psg@``y65HeRoqAM_RQ--u3=Bkco_aI|Mb~rAA zqRt1SOVFsKgPV5^iD;GE_10z@8{3e+v1NVQaBaX(HzU)}5u ztsv+?>M6Bxv)gFn+;nyM&)vEia;Ul`gF${SThl|5-c2(;TuDZbEEFH$2s1SKFp;nN zk~^?gmTqLb1wN%vP}?`TdEFG~K@GoGno6iQ&X=aJg~v1n;zLuoFEy25qiiZs-c*83 z2|LJ1QwilOcWA$CV!u?~8R0lNTzhfg9|{p{2R?JZgUt=0DSr-3NZ91K=YA_>q(o`d zvyTddlL!Pq0s<<8q^FMv@g>j^5dHzN0>2>SD3yrt9#TF$t&Gp1`N@-Hd-%WLI{XhQ zwd2cfqcudc+971Miv$|FO-KE6rF%$!(3td4uUT)#TQcW}H~ZMbo!Mv36N#|P$@X#r z<+#CAkg|J076*oi=oqB7FEj(t+#Puq9(IwhM!0@1hPJ?{AgMYxyUo3Dw>iXJTzu?t z^n<%=Z$Wm4jgwOKgUZ+p-A@<=2D2bLQZ4<3+c0G$nT)522B~W_CRb#T@uBQXrmG3R z9HGA)!7t&kp}dH`bR-`pi$W2?Z5iR01^IGOq5n3)4unt>*i{r>A-kq2gI4YcMe)KA zuPIRfdfc5ps045H2RWXg17)g7;P6PC?+%R3hdj5`Uw+|^jWHJ~70rp-tZd$4VpB@+ z(WSb{9Rg~ny)dPO-i;c)8~dVnt}8vaGf4`mJi*Q7%R^yK%zfa)tQbJAuj%xdl7DWz{?t@eS8ieOjOUPd)1@vm=c$n_^8`_P=9g)tww|Yh;m{W$dgilUP@Oz z@Tfal?RSn_TT7F}IR_q8dgt;PyIt+`1-E&$h^++0R;8aUG5~m|84cHr`*8{b@HP= zxx7%{w4@KOtreK`NNhZar}Rqt2^?pUPns8yO)&MeJ3jlm>S6LCzK;Avv!8ay7Sg!u zlQFA~BdwCGTEQlD@zd^8btdnS#nnk9&O*w~ggWfUI0bLzGj27KDvC20HVb{i8?C^! zWL{UnvoIjqwz}!QZ?5V>pP+o|ic4?q#e`=%MN;kxXd*mhNi*Xx%%s$sN$nJ?Bc56B zi_g04NKf>@v+kFwd%bzVbM6r7msQby<}a}uuKK^OMt8DNckn_>EPd0R&mp_k{pwfG zxvl-YsjEs>RH^o7+=105RaDq3R5eVk-0H>>peoa~Uv5R$`o11@ZOyOTq+N)T0>*Q) zGPzll&8hpgZEmOKzWdCBz>w~%e&@d7*vN~k)-J0Urq;iV)KgvRv6tOB!>{2naoAZt z1wX6TF}+-yK6o;v&x>sRv&(}gPx`YvHa7Zi{Mj7|Kz9GxJ+iL9ul!fs+4`$N>bzIn z8l>2|_!W2WQcADKUUBCRc{ZRIf^M52F*fnqvjLT^B(Hz}teWtudnT$F`Y#+Te&?%h zEd8r`;#IW1UcLFM`z+qL;|FRlJxUIdO=y9m6Zy@_tpVnvoO8(t1Cw zKK(bhgRSoScX#CQ7>eBR3VQH#B6m;>KU97S@_{b;x0|c$@9BMicbD~o<@2%Wc}k|| z5Ow97uJ4is^dwZxTW({s2y?kdAX|)GsXxDo{$HkY|3I?07uBBsaG%2%E8mitoAj1D zulLOLYV8~U>@#!b4VgLg2Q&BSVZX<8v?d;~0%RnDIwZ@xLUh;wglW0yZFi}4g{ptY z?TTP8OibPPjyo2!^3pr8SbZZrbA4n=6*@d3qQgZY9l~dY!%=6w>(a}z zeCAD#~uD`rq4*QE}B9~trHt2OVtdG^;P-#7w4WewZhY=!>*?0vTl z4gc%?GAbJPf%JFL2ksH&{S80c^nvsjpA8y?s@oV4X){M7jxdMTY;#VjutuEj%4yy# z>(MKhd86^~)ks$G_WGU#1mb9kUW5MZgEVtDU-^VLF-+fxgUFflQDrP|RCW33w`%i~ z$p$Penw*%(FAaTvtldsexqQaD)Y+EzoyKo{kL~ysSn5lbx})|;dW#0#cPlyRBCXm6 z8^7`}`I?4H&;H2AjqKw4<80XR$~x9wq>8pT9H6?v_F8*)XGqE$ZZm=8J}IwR)u+6% zm~C87Db3t}rl5w*SJ$Szws3&DEva!hS4jkXadND3JSHEU=y;>^_i^n5hHm8?*~*lY zdjJgqU+}Uga`&lo9dFYoN=Pj_0a9!t(`N9%a}+R%Dk;OU0xY}lzc_ePhIJ{H{r>sb zdpb*Juu)y$dUXx|ygl|ha{Kf3PW3(4yTp1%9k{aM(+xL12tO~DKY#=)!D6A3EY3Zv zZu7ijr}X>C$`jmpbtGPed6&YqZ~`;oF?3TZ`Nx_TAS2kHQq4mCiQBK z*8*WvpY!gszO8c94H99BFQ&YzmVIvcx}5&@n(SnG{Wx1bPtU2cjzF zW6SzjQ_X0q2~GV$3gb;(bPJoBYi-zBODi|1(RJP!X{nhlbst&heKu*`r+(Dn9RlU4 zy3sp$uOU$0kf}Df^?uAUGmsDIfMJMe<=RA|Dtx$>56O3957jY^-i4r~-!yuMIp<7)%&il6Y+wSq>y^Ae$?5+vkjmUER$yNaFUbVVafc5uQ z?-XblFl{PDd?tdsA?mCka|Q(H8GCpgc=fqGfSvbVHPJf|Hw!27^X}yny@3{*x~k1P zl;1bPy}2FBDrxy1CwB7tciX%{c&BNSw-H}HGRZ68=haD=zkAg_dwS>K=dL}yR{XrU zr*|-ZCQkNx@WBrL+^g=G;*G-3b5p!y@U!Ps?|k)#eZ4W+C~vzMGXvYPYaApS;D0dA z{o1_=n4u-@aJM?@&UW1xC)56l<=ff;N!|)P)On&9yzWZ-dYjk@MywTl9g1s$JQ=BVHMmSrg!_v z6O7ahOv`>QT1G?i@eMpo7(NvN88xp=O|pdoUN6R3IbtUxQU|ZL;sdG>0oGkPOsWx3 zEu!^TUEP^@LaW}PPjENNyUkGkQj^1(9;dS~tquxH=9;*E5-ZG>{zGAv}n1wQ&mfndUX3OZtLFtQ_F8TRcV3Z}K zt(@)U2QK8HfjCVPBgScxdHkTEwhkP?J9oCXprim?IosP4^&#=?NcGxm?-X1gy0^zn z&g=H}&cn~}eZ1rGvtl1eBs9N|6du2?HwirWvVFZH)h$y!o}cvmR4<;H*_{TpAqn1nqIo+eKpXRlcdN48Y3d!|7>JtGJsz1Uqg6*FK5CgKJz}pue{3P%W z01K*~<2{}H_m9*|bG#!^I%7XD#ou-xv!B;(kzW;0sa#ZdiDxtCuLp`OAj<=puiEi$ z#o*%GmaerPggKVZL%8>VEIUkb#uR(H_+=?h5_h+QboG`^P_RVJLd!_{&UE{H{NPNz zCHV1(X%ZiE5_&$8IcX&rX*-a+i8*PC2<$jto2V=UIaQ*z#8Mpqz#`BQgVYkAlOkT7 z%t#Kc1}57PaS?oAEe$LrFUP2wSua?KUR;oSs$mBEO`C6nOxB|eC_ggih8xQBmx5l=KRgFVR;z#D<8@=1Bv#Yxj`q@R+W>Bsqw z04jmDoUz@>LfiT|Xgcf#!s5fiy}~6QW}`PRPAZlP$)#9(Fg7aVY+sNRK4YK@=0pv# z99)uMS;I4d=V&p6IDK)P4HlcQm^{87YtPWkYb=6pN}F8~*HPLNyBER|BF2XS`57QD zYeE!@4}m60t))P2f`&j=1cRyO_uZS|A$U$a1fs|rE&R=wV@i8^T0vCvJAM{Z*OBLt z>iT1U)h~9d%bs>;)+gHopNp%Eqmk%xa9Z_O_!x^wL>VBIbRzl`Lv{qN$(Yc@D|ITbPAICvS&@7XJE4#2F-02s3bO zI6t;FB+xCG@NiOs#3e2>_ZLeY`HDBWiRVc5_i)=Q-rhJK4k3`}qphxg#cNTs_Nkav zCz0M(kPp!(5qRoJRn@Gnd&R3zBVYAe-0km(9(wYvPJQyap=#+5VFWy{@;~zS&YkH? zQJZv6FYNtM=b`3#=XLlHYjmT5oipyxFU_DqbUA!TeH> z{>D2^ovG55$-i0Me|^FGVS4u8c}B%!H)@?f2W2-{`k>Jlix*BeDm+&0J z?lmQctT9-8dxvWmlQ=2BhUQ>>3EKR2N9~xM+)w42)9o(!gaZOa_|X@TP(KVmsz_mx zu{~Ws7cP`ioOWx10i-(k89?f>JFqyC3EGG7BZ8F zcq{9TNTkY+vFgAeU3!_ zjE^JTN{vZnAAKxR=P9~Qy=MPTI;bztP6G%%$meqHuAQmSTW4#NO81V61UoU*lR6`+rjH_ zc4zQ5G!eFFnl{4U4%lmHS9ic@lDeEp^5PA5rDj=gi;XcBjZU}M!|KC`tg7H44efDx zi6z3x$7l-#VVW(5@(-?AoWTT@jL~7b<)}eE!4&B7NQaXFzirL3uq~bgMw?KVp_gY* z$E&X*g0jMBHFmHS(1NmL2Y*Ql2%+4_=Ua>Xo&dv!uNU~6oR;{t1|aIf7CK(11tibo zGU#!nlS!B;#18)SIKkt;goeR`i}6^D`z`Vs)i3=XyVnDQVGD9p<&(*FyvkQ{L9zD% zOJXepf6WW{B``qo`j{o_;4C5oTN5~v96KUY*ijZVeW6?W{k)>H&~(M8t0NXD2;@_iW=8K@Wy%~N7RQjvAg7m zlYZhw;NHvAxBc` z?vvwIw%eN=KaDD$(d{6#EouN+=7S0dRv3{XnK1J_xf&Z~``L101+8Msh|oG{)82&Z zpi3(Dov2!J7;vrd-~xO>atmT2Y!9Aj@yPxvqdu9@m^ zmUUmXEea0h1V~+E2Y=uu71%%&Mw+h_(nMp!ezx#H@TvNl@Se9d03x8W^)28%ZxdX6 z822s~NukiN^`mLYO~iy8ve*c-vpY;ff&!s?F+_-1Cxp1!L8%|VM46p<8q?xw?7_4{ zRWFwKot84t!^>+4U4(@+oP^>cggv!@T0R@WzxdAh_14=su@3G7J|i{@$KMFW+DsGV=dcIeowDh}DAz+^P9>kHR!QkiS38a%9{LH4z zgNn%MEVAic&!-kSB_avuvxiPmKFsARs4IR{UR6nwfEzcIh5a%sr1UH?tG>L7)BQ1c zRb`0Kn19erf4W0@r@8|Hr`wHa-tekQJlTC-C8`6q)CxZ_xq0N8;m&D;0bgKT0<6E12&X?RNUHawX_&IH2=qN>!Ycq#hvJ- z{~K!Q@c?6QwG{N!iYGkfJ{@nZ|^wqKUe0W|xZ0N^6%|iAFSqwr< z0x`$KN#)HRg5MKX5~Tc$pIreY!^0IwcDAD6<$i8~{#%mm^Rf+9 z!ChKS9R#~IJuiE_SeD0^>_IX+bSBha3vO|vxl zwH@x>oE*U}=c-^cJqO0oZ%gEgaOzeCP1<+YO6m|$dEmjwsQXkJD%>;mgLq{K8>!*K0&Ls&#du6f z|Ak_#Ra!k>c7@}20xTA3AVjOJ4ws5_S)>mOlHqMxD}oLDPKxRt!dmd6R+7qA+yu_;Bcvl8D49(qebkla2cOv zVt7@@TcBq4fWZZtk!z{HZj&1Qnuz9lq`sKN#R52p$}Fx2k~o9JRJ9hyTTfE(st7)| zCje81Si83nIhm%yL{v(P3(4haaba6JEiOEOzXk3aA61LBr8{l9oYKY?yJ<4E0Si+a zH6JfIh&X{L4$L;?`sAs?At1?bJ%tJY20{yYCR6l8Y zwI&|1kzz;q2>yks5H37wq(Q4l3>ncd@d(YO^pEMonfye`x)L(*JI zFKCkfw*wBSxW=!IDrONXj<>}kSV^*M7*^YbYH8E7CVplke2mL>klj;}WCm^0eFhOl z#uhF-rpbw<6?uZ{VE^fg*|ZdzB|g+M4IfJ+McU7CSuc&nKgQw>Vk6UaBQ&cEcrr8O z7J4$ICM1UH#Z}V5xUkG{6|73zG|z$r(lc4e*Hg_MyJ3 z5n2xy6-s#eR?I4L0QueuybT?Fg`b87RYeU7$^fD~5LO(z<3Cju4AT0{cxWkDf=^6L z+_t%02g_sm4LZ!tdW9eA4dg%WuM6*S{mt-tP%uU7Hxr=WfV!}oFJ!ajoSg}BLJ@h1DJ4>{ zP`m;c#tJuK9z@Hz-sx>2;FJG~y$NFxC3m4jBL&IO`WML%-N%z_9f=<;S|oeif7g6V zatdy8I$Eqmz7m(;(wEdNu8}rnVJNsvYs(`sup?xb5qoBM5|O1ZPhw?!QqGf@iUG_* zKhiW2XCq`+nm!A;h&gmgEnp7%8TiD2vS;W?kU#d4+i0C5nOkdKG2zC?Nga>Kq+YUeA+!(gY!dqEb)E>hSQbIB2)u_jC z5l%~rcLR=EEG$vXR8RtdCE*qMpGy5j>EN8TSU6dUND?vL z5WfQBtpd861e>6#8Eh(eJEdvfho7Yf?=$oy_JJL|6T&6;4-mNk2-H;pGZe=^fKS65 z2SK&a!mdRA68dlR7gbE{=^z=c7Ea#IVR2&4a<*sFix9inpT++aVNr_)rtC~cU z5Ro)72V?1ZQB}z;mulWcBC#4x_reXM&TANH5bZ*p zFN0FKHV+c;b7_H0A`g-wbh7g@PE~NBh=yWN01G{&N(KR46v1qQRD!rzUK0coo?-@( zGDwB8Xb{v_3Didr2a4iz?eaQKQP4yZCVT@DiFufQAm*h2am7}t(2mtBS zVP|{wDZZf|JKGyN85EP#`oI)OYRyCb*<+j-;32Pv*EzHz4vnd*w#u%bFb$ZY(Jq0* zG#KL-Hd_$kj_FJC^g3zkFnodN1(IJuhJvS&zED1o_=;LI;1kyub}@<27Z6YZF;S7- zSN8$7Nu7OycM45|Q+NMakWUjv|lN7QEa=DcW3fF{HC zG^fOl(?X``d&>(v=N=Ov9Et?k;Af85usnB7_$qX}oNSFUxRVqf5#j$^bQQyg)EjjD zFEf)jlx*5!7}9Q*WXV%80`mfXId}1`za#Y+^V~KCDq`XWdEa!cTm=kv(lvnA=z+%2 z>4n&)*&L}tF81z@!~hVD|CMMq_-LxCZCk91i?jzn_vUL*@_z+bz@ z>6_bxfirLyLd6(yxwkC6=NMQ^po3CxdJxd&jA=xTMxqr7JrK|%^|k&S2ap(Z(Cy!g z;t^~qGQ3@sJ6e^ZIpwYtl*Fo)h!}CiQ&tGyg{-J#JWNDGyXGSw%0{5*W1Wcn!!W`2 zDqO%`hPQQDHpsNIsWt<*GURQ8-#4pq7yIdUio5XaYTVT{iRk9|RN14+4*1BJ$DBny zV}@RZbJVCUXL|!ls|aE`07)~5cyRBg7i5R?`kVq%G2wq4`&-BfeR@Kl!+mcZ!g4{M zcx@gI;$_SWXp_dGldZ~3gK!j^j$y39Lomx?kgYDGG6=aMC2=`>Lc3*_Z!bJX4pl8> zgh>;ZAxlPmTv}7NTKcOfCEc3n!u%vnfUbmZ zheoAvEw~;v(rq*ku`_2YckCFA6iwB$sh}&_S0jymV7Titya{sCN-6110&cn3BWfNP zl~MBq>G9MrRF;#34lpQDgbLnD))gh5iE!r{H2RYkbrifzBFE{Fpsdn5K_F-2>N{xV z2(9J(U}1{vn3q_4=UgH%L$Kp6nU!BghdRNL$r1_HkoO<95zww(?;3fe6b>^K{x}vf zL5#y^vh%_qM9kqWZE3V9xyPmO&r(w-YSI>x&Fq#U05PE4(LnPPl9{<+EBRc;twQ)X zc`FhL%Mda2zfh)k$)ra1wVvOI-+>d-zV4qB<|0m5Nlw@X=_i~JnhMfclM^E76aQC& z6IO1RHRl$U%(W=|}y(U!{YA#q_k%@+z_ zKa9up;lrYH4%x4vf&|u~Ac89mNMv_IxQ&2uWs#px&of?Sr}g}D`Vd!wsWyVw_OnJH z!`^zB^yP?PCSDW7Z($G!Ps_~4?o;U`PKHEWtaMVaAuvePg!HET=z%vM0#$-eNR?uk z1rJLRXARE*XD#^!CEsRn{rL!JFKwpm=dvZ9^#CvT-ue*TtHYY@<`bH9|AIZtZ~t`< zGEb-I-?Gdb{j_oYg;3pYuyO~f7wheM_4x~uY4wj;>83$_dK0B;;G09#qGo$w(Kn5S zzojl=GBq?ch7@qxw4OIH6e)D4C6B^OZ^EpXS;pj90ndXL|BKx5xM*<<@y?)0@;HDy zNo)ma7iqVH`^$WQ^=lonVVdYgqGI*YijX=sFo#M4_z5s z53S_O6|{iC!GLGb?8s6W>0E@?7jhbmCjp!yVIt%~@?PPxjI2W^DqfQX)dRB31d+`$ zKbGy|bWafqG7LlNMEj({asrYBBW4rD2JBm-v}#UZ2*)U`EQ`c|QCe9R3d5idcrP@p zm!(@0cRbWi;Tc+Sw}ea4u;OkCuj_)*+KS_z_sS!tCFqL-jff(O8R?~i-k?3PaC;jN z5;jZDijAR#%h zM$!mKiDav^|LtnVdSL z*`6XXqj0E{FANzLW4iZJ=xq5HeL|vwh>ikhGTtbuAW{govnkZ*AcgQyn?gMkEaV8^ zNl`uQ>k)%e02P64Y2zt$N{GBSFb$m-D2os;baF&fPVpD1AA;{tKfpsH^@D462;@XB z-rkul8 zkNK%(z;`??QL*HzLqpV8cCDeD6<1Mogg~?w+DA*_ByNg`8f;Ql_3&?8Nh#w&f@x4G z%D8zQ(nJKQ1DGY#tn z1>TuVDg49b&Jd@ckZC>?;PS?XHApMjZjkf*}GThSEMYf%dWg=vwRlc1i9%d_0FP- z@fF~4Ogn=_Q%87*rmDMs*OLf_01I9wdaFB@c|%pt=e$}g-M!*yBs8er_99+Dyn3$} zYU~ssm^s#a&04D7Io7)-d2N@v@;L9w?C`!61HtI(yIC<; z(4v74RZA9omF2m3GHUH-kb-CJVlRy`-Llx5lkUbI$J*cq0Pr7+y|#hn^Mv}=2RIzpQZaMGwR?=-1f&*%@{zdOSlW&d;aW>xul?~nW6 zw0biZzk+(KKvZQXXQt3#7l+ehc6LT)ud3knukeM;0SqjouLudcd`}n;PQBSbJEAK1 zCAvKAOz)Eo-F9{ajwKB)zC=FRPp;J3Grb1;UbMIAOfUao;QZ&A-WOxw%&42s^2R5> znp97oq2{M=u58T&>nF^#(RwV`XL`Z&4lzud&iZ?hR!qH(za8inAv-epmf#DUu!hT#Z}i zjX?#6FZ0IMMDE)O{xG<})aH}^A8qdeXH{{&kKc1{Ip^%&yIf!wwgGeQQZ8j_QWa#+ zE^S2wu~4Keh*1}eib!nXE*8Xsh=>DN05yUI#k$x5jU_g0iBZ(eH^vw>mc$qnjsBiz z=A65Cm&KI-=O41(bLLEW=WX-OJMYX`C2g?9fR-E)B1gE!n#SZ=)=!M0ma`W|%3$^) zuUKl84BxSf=)g zU@UXaw>HLU!Dx9F`SR%HR#`L;hxRy)FQ1QNYucpIaX+^z600y^F<>@%BX(xXPcN_z zl~4ZM8r+F$unoFc%dJ6eC}K6V=#k^>|5jY=F$FH!u{=2HKS)p`+s)`ykrzIR=VIe=t{3F%a;li@MWyXtZIuheOx#fTRplxuN&?bG~6C>LRkp~u@9m| z6yL|Byx2gX|2L(UQv1cDr+>36})y8PG_1aKVJoUPn5~aaK_UHdB|l}W$LQi zc5~oL1qdsQ7g0s$#0ALvG2KfMfRN^O#{%dH0|&eYWH7%$94at^-R ze$+Dr6URdsF0MC%+=Q>7+_YrDVEDc8N-Ou2Q=i&zUWozYeHmR1+1yK8f%`r*689(uOvTv?E^fBxSQ|24eRBr)es+u@Kx5A ztw$eFQOGrGtab;I^5r$w#Dc%B1|K(@qe=q*oqk<$wKbBb{e?XQy5PSY8YaqLU2Ro` zpTBaCOsutf6@1G6Qc1Ve+Xs^mva#_Gxpgg+)ZbCZuhv@C1+Tx=TK5Zi=rt{DfTONK zxjW_A*H{(d4Jdd0H87zY4fvHVYYUbpIvX277woWx_ujJksgO8R4Ax+)H`9L;II&69Y_c-BcZW66=q2;-wt9CW%MLSF zHJdz;&Ez-oh`X)RI| zzk_oYs_Nbk?LzteeNdKBIsJa?6F2AR#2?PFI%Z zOKW|9SFzIthfrSo7tp;)d0SFu&JtFW z;XQB_R2-w9@L4&Owj1*Bp-!ic+v)IRV+^}y^)NcS{MDL%5{{EXv-DG`&nk$%4Or-V z$c074(et`CoVgK%ewygX03&pm!N%}OuQZ0!qCmd-SF4nh_&?)!1RUHrPh$dCWAvdE z92{^s9Nu$IqPfaBAM#xPkUPb1B43iJ>&saLFT zl>@%DI-Q{Fr8`qo-d{u3wddA-E9zbaGl+HX#D0UcM+Yt}pgtHp)tMA3jH@W&`DiR*f{tcm8IT^jn1m@9tS(o8UKBn*r8=8o}{dYQ+!b|18DVR`1zO zSOU0${VP!Xdm%Xu>lev2aOzuLx%Td-fN=(Cr$Zao_?`zHqC3yqfM2j2D@6>kONai z2zMgxfJk#lsuRO4xIow*CN54P{JYg@6pmLzBvS#GK6D2W%+nb5jEM*p#BgRU!r3{- zB<@{9Hnl?1oJ~IUcdOzcBKzdkzI7e+#24928zQUYSA0Iq%c={X4TDqgG+%-Z!M0>d~cJN7Q%C=AVNC%(s zOSrl17%O8u-UD+ah`8HXwjb)0c08Ca&LM287GM++)PLVXF&5*|d<%t?qmQz2;YvY) z5ejn|p|UMbXr+)Ew5mfB|ARtm@ReN)g`|~HOE#cFYLLs1c1qf{#Q~WHXt!3ni2KT} zhb7*uizxUAz$Y91xj7<&Q5M~O-G~bx*Wfd6cD#bWAQG8m9iO$%x}2p^kN(mf`Pg?>x1)AJ^?;6SYZdhJ zM6XQi!7fk@os}MZ}^c85*6G7)g-5XZ*`R;dH^G>aC1rzr&CorQ2E{eN0tAN z@2z7G+Sgo_Pa$nfk;VO1-dAh(gj~z(8~9%ig>TinVa=ZPNxN_`94$73kk|-~ zI8A`fC4`o5vo_xaB&6T*vK$)8S!89U!C>B2Z z(+DMMEigmtYCEG?ess80JgN8>`Bb;4Q5N_kCM+MO~5aBpMvu(oUm zOiP5@m#J{xKB8<}%3?TgANHN*Wt8E(yt)2CyYhTlyONE-(fZlzc3_V<$R0LaxqFYFHTX1IgB zbKFC`Gu$EGDeh3O&c#}rJDjss+`y->&dNk4dxmye1M*;W_0KU*$?jDixmb#O?h3=8w&Wtp$J!w#nZm?9oP%>{eiRg4c9d zfju!8gU$bF*n`f=8V*YA)W8RgUq*IUEdQfJAXG^fCg>5&7&F-^BM8YUBNyyi!qUnu z&?X4~OVg@l?8oJ$O{!@`^TK#7$H4|ZhZ-=uxT&($hXfA5#W$kFrR#)Ba6G7wM3^w5xWv^>Y)V$Ul@Q zAqwifZcv>Vg>eACC8D+1VuRy#mtqq*$M5zS{?u@trx35iEy?2w0C5sGTwzYmF))d^ zK|Hx|GGQA}RDM3p8I>vU>gv%lYo-^9KPCdb>o9J^WdsNZB1)6?1p>y0aTsD4c^ZmS zePSdbhD2KKaNNPDcX1M4Cs-i(>dQ+@3l1pCohhx#Kop>h4zS-erYQA*HL7+t=x$Mq zlqX9_6Vd`BH&r+fnep3e#jb4_V5&u5aO4p~ojg6K>6)eX!G-3>jWT~;(}fomE1Y!2 zNJ3wNn&MysV|sBap>G_+7ASu6LQFFf^7{^U7o&?T?`R*Dp?Xlk``|0Mu$5WFG^ljy z^%iNs9fQS!H0T4CP?JZkhUp801qWsT7o`wM1V12#nr?s!#@j$`<)nc^A-ZzsR+nU^ zB(646Fl-X+MpA-HMYBJFA7Iz9WBAalfmNU-EFs^8n`6}J2uy6^@)}+09?RxroMLQ&6eO_1gNE`gEB z7qB}R-bE3g0lUKma}QjBHoK{H+G-Ak^(iq?z!>#ayn}os94hBb}8oC+=Nhi>@ zJHGY6UpG9P+#Tb;$|s8K@)qlThi6>QO2bvEUV;8Y1>h%(l{8EWY8bsr$qPqhWebR|@1W zS`3~kO$lfroGa;OG!tVjh8T5SKM(t&u@J(!fzUgFGa^o62Fe=yQtPv*j01~V91=#i zhrrs(goG9ElrQpx1JUY-z3H_H&foC92yE3mQwzATWGeb_1_7jSI-y?JVyZJH+nP1| zlSENb>0f7~uzpW5ydLcUVY@&Jg9v-^%p8Zuf}7?gDJ+b1oHFxvsCdc7nTrfiK<#Gnky;~AvG5%VBxDU zIo$PP?Y(MI%M6h>DPe(rcwdy7DaI|MN0t3hT|xtg6Zk0F)oNvwR(1GkX0cs3w_9|e zc$@qQq*)ih1y>`Gj-OdR_vrMF^{Eq(j-S~Z0#_=eMg-{%ws02!<0ta-3~&u{k54!> zDg3fH_knMY$Wt*Oy~GUl3wkihWIAqMC$aL9yyMdK!)7>;<#8Z0u_+(5%iXtG^%+z> z0jr}-1*;wh{(#sWSDWa>=cQ^aLr0((%^hO=N+`w>D8^1yj8RcNG0{m`%g2%W$D+i9 zr7$#0Q^!IzVnz{#W;_B1}(9G8j_L=OpQk6etA<&VM{?3c$~`jZ2hJ`=^h1Id8i!}biZfZAmNbYL%Z z^B7FJsE|Nef1;470z)hWib2qYnlCUP((E)sy~o8QHMs*8aj#N}r{sc_ju#_5b22Q) zW5ozjOKt*B@jLZde*NTxfw6>{!psyGN3ss|M18{9IVc63*>`X}HLm{-(@XR$11M<)AgVT}0P_~fZ;8Wz;=@EfxE#38M<*a^3jR#X4xpz; zq60QN&{LI4t4^4xG^(Ih8vNK)9J6)5WyOvJKl={It!Bs-Q(DcCQyB1FLyp74P;nG8 zAmU|eNL8BqcqSZ=B;c(l`vFY^=KMGta zciPfb&RIX)6g1|cACtHHwmfHK+W(m|YvuG2CazA;nfox^4$=>F-K)7}x*ppD)X`pY zX?MGOW_L@MQp;5~e*v!88-Za4-V5?PhF#1jab~LN4P;wvH0w^{dZwSI;R?~st9Hd` z;K(&d3v(*}5&9@c4|D8{E`=FWay8P@SSJQ^;P)f=)A-wDxWorCsM&1`_a5rcUGAgD z5;(|CzX`8iUPA@ior $~~hN$*@~DU+ve$XW)I7`pIHlZs`rvQM)pHhG(`P!*Uvn zyJ{CUmwC{5L$j}2ul?pAOA)aF5a%FE5s+z`fI!x?aB!rNTA_y1dX=d>jCvO{fXxX8 z;~5L|2m8TbJY|8eelVE9X9k1a(9@olQAkqM7=`WLz%aLmHWAYx7XC|uz#;B$XolRi z;=}_Mkmz6`vYL61>(@wZ?hiCT5QEP}alhv(wJDpmnb(OywLYw8xj<%kA}YX1tH6Qp zBZtC2xQ|>hpvFPVK#;28^3z`SZ41#!z?;1nnY;xQm^j51?GOVDxAnQoKblIz(u%9J zBya;b))GzF;uvcO4!CS>G#G;4tWCDkYVsdm5{XbR{FWQU3$6lzK=N&>GRpcW{=`*USqN zpw5!6T+z?&G?RSoVnZHu)ObrWzT!UN6OT&z6~=oLvhvcEm1pn2H@o84x~mHq9m85Io8P40Tj zHG>%xZ3xbcCDQbu>)-ioku3{1qTiWCg#)7(VBK>P^NSEtlK2Pvx! zs<3xhfE_WGM|^ri-}>yM&cc(u2LKWCa};G>6>?)4C%7!=NpoEE$|Dj>%^X z6Sgp`!~6rhw+Lsq(4tmjp9s+#5f&joWC+iwE@kU<{N$uFR7icmK^ZN-FhfNWs&zv_u{~$nJ=hpvz8* zmdOS_uaVadvPU+z_U0h_uh`)6{9yYCZ189-9Ackon13_mr97Q8t**R{@6s0>qgrm>Yz)O^xDO`$hSt@#iegW!X~yJ6sWBSA%Ein zfER|m`W3q~Hn@e8@`d*!N5%?Z@+JGqE=`ec@~-i=kY|mxM*)zXW9>;s;}@gtL%Hvy z?-=_S{ABP`@Bl1RlSUFQ7*9SZo5t9W$Y|NI_OJ=$l%3H-GFxz7ggTV~JR8O;Cis|td8*533))Go{+r%M z7*)Y_SPn(#9oZd!h#hkCz~kyGtcq0z91S~pilFUG8@rBi+S>0gD;eITEQ=&rvN<#w{C%Ayt z#$E&$>_n{ylQthXz&MYI8T46*ryND_gUgjekVY_5KA%j`L7^FGu#!Vrn7ry$>@+Z# z4?7jxtP~2O-j?NXyRb^+R3{t7Xk%onQS*$1rp&9dU}v;ku6+fYZNRdna{A8b;d$*r z9G`7B?~E$8tpi^rCfMhKaW9=DdFL=PZ2|r~IT4&*> z=^?9J-uWPoDZq}8xv`G2VM?q(9`cZN7fyJ=$1h_2@47MPJQV+4_q*4T;-P$X9*PRt z3VGkCd~)E?_P>n%vi~%Djl-RO4(4!aSvU#fM6|JClHJ)rQyY%7FT-nUvfZAqbwgur z<8epX8x7-P`QCSSgPieC`hqSq@f&C6oO9`gP72 zBf9=|=L#Ttp5dHKL_cdfSNoK1ToiVen3>H7o}2S!ZufmO?b?=urm#j+)ApP+|ID2i zZp%R(Vn>P28}7)-=O423!96-Hm3yMj=TQ&V!tb=`xq1&z$MV;i;{23yDaO3p>2LLT&j6w#r8*x zr{KN@Ll4sWLC*U^Retjq_Ng6O)Szqb@})h$t@NwEw2Sg69wAkayfEhUF|Ynk-W_v# z7H|I^hI(Zvgu@=64^0AN!)d$J+pPHRZqiA_L?m13frJxf93D<-L797O#OA2|B8*IIE%u2PQMPvw$hs{rVElF-(b%-&l*`?YntKQ!z-N=Ta;}44x(L>EKx~2%d}K+f3s3F6b4W>~gmQ zs}(0r6*qn`%|62@c>Qsu#bVTAFFoG4;8@!+j2?3FarUNETAxk?D+B8!9+o}LWVKLt z48*+skMF^L3+eqKR@gY|cpEF-w>}{!O}7s>?r*$&x_!P;u%|rCd+r^M`#Wtp_Z7Q* ziZ9*N2ow|3+ZSW47ej4&O))ju!6VL!jZtmjh=~{tIb13mqtDlCf}|dgxE@mnhYLtJ+>_vcq(6;-U@Q4B9(#w+NJXb& zX+d{6TAjHdc?Gi&0hlo|*n=No{c^?^@*>Lk<*7({1mF8YeSicu8H@49btuD&FUG|@ z>V^tLw;MPU7FqRWf6N9e*FY#c;@f~k+cmtk0r<8)Q;c*VilnJWO zHzRe~lBD{7wDDpZkLJ{K>{IWnRDFKd@Fz`6r30@W@)p*&#V{)e6 zv9Aptq7+<8nod}X#B&HV13b(@s*(28F$kwJ0I(AK6h}4n#48wiGBmg!K63D$d||FV z23I>#{s}02PB>McPAE*FK_N_jrobA34?`O}(2m!SXgiGVvh8ep>M&E?0@{PjYM>HaV&y8OCF1mw z!D&Y&2Yjocz<_HFeS3c%oTn}NW*pEr3{OGdxc-7h{)4{3`?iaYo*5 z!o}t~2?$T+r_D?#*#UIHrw?)^iA);GErYCW5N@towKAq`71)U>^ z1t6g#GCAMwW7zVr`F4-F%9TM(!YRXLUjyY7;w(N8-567eZn{uie#H+)2k1q0`U%Nv z0s8@YvpAkWUXf4Cx4SH08`*jZ4JuUctck-88jp~SjOS8hB){g85%XzUcsy|)3Pt9Bj^i(`Vad;PI3qm{8a!6Z;GmDGgzL|?{Fx<%R%+7-$CLG zjv!PC{86R>NSma=M|Fcm%t7ZOdVd52ZAEIFug7O7I9`bYMTj@0u05TC2Kw8;le zCd(GurFQPvFe`JhNkXus={2ZlJxuJhVO>`nI7Ri1C-!1O0DTYs$54bZ#{iL)V;c&9 z@_wtI!@KKooz?p)c-S92Tp8qf+E39Vi@K3Qz6IFS#hM8aZqu2)=*d9ZpzOjcQU!jre@Nn}}j=cN7;h6W)Ox-jZ9A-A4 z2)0#`{mThZ*MeX5%OI z@L`)*8glK&(aw!ki|srk`X&)2oBGB|WY<5&EP48A_UXpz#`jNy`x={rZam$-Blg|j z)J$yh8TL2ELyhClw5#x`@zN#sG&;fGKFfYc-jcCr6mJWIIZVh2C&c;hn}*5xMuVy5 z8zl$KH)!BQbyzDw-CSkLig`xEl{mG%U4`xA{FF11fIjOXRDRrU^`w)#@?iMb24oAA)oD)~>hv;Ty`&l&4%{m&uxI>>iENud{a$g!=cjQKU zDyqA2qun?D3;@JPEsW&mu$*@Td|F%Nw;Qp|WQ#1>WDiERBR3r++Z~%!w&yls)koJx zC~mNOcia+YlurybD}9a1(T5xCbenbm2Zh*D$rcy{@aiKxJQ_?@lHlF^|C5j1VD~6f z42x)WH9=NNSWS8D`s6D4-3@lHTJ5C6Y*3LqYgFS6X<7rQ+iCEw=XPL?x55~>RD#Z? zO3B4H0x`$REjQZd7VcKuj`O9+>|ZhSmd9n~O?GiibGMvylYMG$*oe@Ruu(8V+rX_@Pm9V$TkQ&zShE#8W6OuO+MgSHkZ>kdB$z_EfBZD zZE!BZ?K5b*U1Yo~Cv3N88ZXJM+wFb@-(Lqq4STMl_4KKa>Q_SGnm*+JDMpV?t|H9nMo z*kS*~*e#E|+r9~jpWKacXqHUhV;|Cg?`G85*Sq}*{G=6>o}cvPdQ9|t>!bij^0IsE zS$R!zFV@=>w12+GUV$1<--)qc?FO8hXBU|tNx6Ne-QB+aur5(7cE#kro!H%0Oa)^4 zgLAPj)!5PFHDQ*`Eyx&&OjtGgA2E1JN^uf|RXYx#)zju;?feSL1P-k_t}H_L_cj-* z6|voL1E@;hHCSr5nW5p#v5^9cG!HrWNEerwSN_oYwxq&4B6l9T|LU} zQ_Xv-&T#uy_i+1(7&gy`-2U1Xpu(jXec;xJusb#kgo?48bI?bCXPD(2UdIAl^p7Li zSUr2gSqNh}H5e;u7%ozSON$T>KUPnAiQKUnJprU$*fJ-LY!$i?);1&VuE`Odr-}G| zN_KYRk;1bODcXjpQ#J&MG0dbx5zNr+S766;D;h$a>xzK$HtPu;P>-B@zx~V@)(esb zw|xSP-r=g@;X1g*yaBjJdy1F}H(0&5B{M!%Q-;0%mqQ}Gy<~K}*2ohdu!m-JC8>cq z>b?%!RC!_}J|WJ<76Wt5|2kY~2-5Ymd-IO#3 z6S1F4YPD$Y1H%4bup`OTSoTzr-maJXBTlhVCsPmEmpfz8AqJ3-l@C5-_sQTjlENFi z%ukrz0T#@K(50E|QtJ#T3(g#iKF$O1b@kZ9!k4*tnNRLV2YC7dO5>1f#QGbHRBdSB z0|RovTCqttgyXC8u_-{#ZM0W9H9kx=^3RQSANl@67_3f_|JsAC-QuT<>&5By?oUJw zS~(4^oS|B&K`SSrwo}IA43<-ZR%%o$HB8s7l%SP`Zdy$9#!O1|i+5=;Xkvz?fBfGml;i)g~?ybH+R`h7&sn!*gic??gDE98hDTRS6ikWkJwAeEdc|> zpa#Wba`Gd#=)s&+e#w`7u1%YDT3ZYp3S=EdYAuxO9O^mBKKyaM$7jvi{~gz3 zPbsFGgjyG?gEop&R!!~xBN^9M{Z0=Lew+;D=zQ)IxJ zstdyf@G}Y%3t08Y=4P1o&(ERzl+ z^}u*hb?=MaK^{#QcWk~Gw9T!-S8tG8wNPV)b#b^&w19fwQcf!&pXWYlcbOO% zR4t6oAnW$s$T~<{UKp+^_Z~c2>bF_k)3_Mx*Ydq5?PVEo0tN*BX9O4(GVuSS5zvMW zkWuD>4xMT?1FUUo(Z+XNaSg5pMk9l-V3dflaKVp-Wu)y5E~3>?Sp#<3DS|5|=y6$U zEHAx+tW<^;ljJyr$1}l`M~{Pl{b(kic4#OK*@UV})wp9(9*+z4>L%VrC|9G)v-j9N zI-io7#wMm=+o3z0V+Kq|j2-gcJ$5?LVhE9=p0>-Tv`Et0UymwS#Zy)vc7j28O}zL^ zmK;{7a_PSJj6mW0!-|}`*FG)DX1S#e-?@outbA#&UHU(@uEw<1tz%F-Nb7T-vL~0< zfffOtAT=6E{(vN(eaaTqA1RwVwSbsfpfSafkC>{VFuEf=!)4Sfx_TnkI~U?Fjpqd% zz9z$VY%hPe*Pa-oQPmWZVy`_(?tR)GoP+{^wE=6K0*P{R$6mV&hDQvU$^v8EKViKF z>dFp>?dAJ>?IRpr8#2g2Pr=o4k{q$ut}w*{`N}WtQ5C}#$3TB_v)eSFgdD@)R1L0f zg)AbXwEr{q8JXeWp)x93=p&WEGnO!%N#|A3ieRK^9*yh>j0nIv9OJJl64dRPOBfQ6 zQzYQmFt{{~roAZH3k=KcrD!a|#)gHkfiHk53hasDi@>JC-9lxq9Y?E#5{#1do`wBe zq7W)3g&%JGM-P{#ril>#O+x@?h)c-W=g<5k)Cd#{u`%sz=h8B`oQMp@YT?s3S} zt&pB<9qm5WJBK33M%+S>_5ui^eDqm+SUZ3O%EJ@^oea0;y651ks*#n?*}d^I{W-hq zXvk)yxvw?ZzG4Sh7#nLBps%o-fPZ(Is8Mp5R;C;KxIoTd7ptT#2W84uU}$sIjO+#9 zJ$`BvuBeeeJZBeWK)xs{1dE_^$6?1AqJ74KItC>O#TN0PV~j0LQ`_sR2iNv1`4U@QyYxP$^v9pvLTz=~Xz2VSqSK8vHv3TKPN z*eO6xT=j|d_<4L*Wj1ujKsM}Y*x@jr4DNn_} znZV&xa$6_GZEBt1IO0|jL>($IRigk1n96F=3qVK_VY|_wU7H4h-x)Aw0AtxwPm3Tk zbE!lDi35y6n0yUyi5QQl`UCz# zD)nPl3aR8kFqVUejlgzJHmOX+)a2F?gZiu51LC4$IF+O5fHFBaJ-9La9(Gz+EQ`fZmrsn!;!NRvU zV6!nu0HdlJCt%lLKu89Lu-**<{;hn;9ykCq(s9f+#2xS1I2JFAWAQR>t!KJNc$h~` z^61^dX?W-0Fg(LOO0IqhbK4i`QRI33m~O=6+!44Q?_V$3MLGVgvX|kdipm);+cz}t zOZe_(IJ&=-lV7nb4_we_Vq^dU;@7RstCnxRVwVok9%78jXb8&_O@7z~yF;sUUj$F8 zl(!FeO6-8B2-!K(G``!^=HQcfBhS%*|cx`0WZ|ra3I34wtz0xo)m$RDefd_ie z)f5~K+m!~diMXIq{Lbzf>DZ*2PV1%%Rm*bCCw5Wb>|Xi@`wQc7dD4gWz|sR8^4Tio z8BU}~KGbB_H&*`9o)YQ!(Z8woj!*1wGPgv{JU9rkMkRtR6Np+TO?1>c<{5AtcrPP_ z9dx~#D8zD-{zryOrjR#n7UQ7%Re;UIKln}%OU{DItH-l|ae0JF2ks)+5yTRx2bSg_ zJ{D4>bVLlcbZjKLQ4-5pAVoN-Gsj2;4pegIDr~%idI_@>c5kRnK8$+;n7%U+RA#ks z1tM-Q>_dwpj)*Ms1ocS76FhJU>*X;nRP##lDE{$Eaq!GUrc#ZdmLy8$Lz?p-pU@F3 z=tgDqGrLC&dIja!(WB>?z%Nfyav5#2c;Q9<9!o(uR(UQJZ;!$-r>0&a(9RQJdRQCVe?i6pH-rz=> zy3g$@<@r?pc&y8*{X?DQ{t3~79C?4|bGsDs{`Kd%`;dlz0cS&QB>U5U&xtPvr6SOr zBtEQ49r2C{Dbx1dnv>6uId1s%f%#T#Juu(XZ|0;q!!oMEFFwdA3@ovcUEk)U`O(;0 z{+W~JM^r!Xd`^WvfM4MB)-2FLUlh873j77N%>WWNYBGv+TV&{Td$bUP)u*azwK>Mbxp(*viCzeR?Ddz_RAR^ zBf~p9$J!bB74k=|sJ!;3-JCl*n?Qqbb@mMT9=i?0Q0{8;Ib2cj$uk`IkFTrHU^R;1_5XrbJiq$>>NrlE+FZ+x9_4i z!gesvMA*&vS#w`yzAbOm!_QF1-GHJy34EyyR32XaLTF7k?j=~xa&A7 ziz=KxZRG4C>nogGRp4j8xx%Sxo&AdnXJ9uhJ!;pWT6t|Uy}fL`7`jTgKBl|VKd1GH zgPrcU@$>rb&ME`=?cUQFSEvKU>qMAC?gxw(!@ZwB@9C7p9($e4jlKO&W$$J^ma~A_ z)}#DOPv->GeN-<+(DQmJf^O@j2)e%)n6R<2B<*ZB^6ocOkO&`>1o^{y#Y=I*yE%D;F6fU0*R$CXLuYqHxM@=jG4s2BFr0H z`g~yk2r@%{F~F%uw@(;|4KOq1Qv;pur{*BMNb44FsQ;@FhX^>m69N~ED}UHX|F^l| ze<-t42RXbdb>AQ-U7gr^>)Yt!c1Eo;KKN0NFnq?BIgA#^r}NJB)&6W>kyR zJBB+wqd1Nbdu106b=)Dlp!hMa=J`81_{N=P+~2{7NY$&L&q1#mA0Fy_*jCMbu!G^P z;gItO<@X^n2V98R5!lXGx!Xx zcfp~~nP9HZ4t3rI`CdHCS!B#=95Kqd!AyJ%apc9ZTVPekCp0VPhaijy!pc^IGChExtTi<@8h6ai3k~j4F6%1?)bav#(pi zM_hc{_*s?XgcEO~9IwXCe(G0_YrNy<(wzZ=r7{E?t1=W?GA>b;?_Iy4@yM~zZB)G8 zB&VbN^cZKR+&|8lkBu>hk9W$$7hbqm&Kd9gfjQnh#yLYiFabJze`Co+r_?aclS68q z%7T?Ypiy2QrW-vSX*o=D)MTXwpQ(i!Yy~-Tc9CL*lY9MY|07iPDMvV8_+ae=FddF` zzH8kM`rSp2ob1F8Xsq${$qsgW>Rv6D=T9NbvT2Ibv*2Gp_@f8N`OOcqaH?~Pc~Mv{ zpX&UP`ACP`$DmKG;36Q-p z!}%VUhrd44xv%IWuC7COs3Q0;yv4ZTZ__O2vuuC9KEatkd_S@v%08@5iooL=VVB3O zF#j_w&WC5Q5oKIrE|pSzZoc=I6?^4Xvzku>$-+5cSY{nQ z$GIF}?VSTTe^&0yI5XrObDbXkHp9Ry_*8E*RM^5c!%ya_0eIm&C-;KV>*hgYZkLbG z1DYSZsPVQs=X0ZgyqX0<$e+%0y5*4ag$3B36>UtO=#&II8)@m2D1MXJ8QwdDCdVyw z)*7+vPH}qV?&y`)Nvh5MCpja1QtX3kKp{r&WIX>Q7#R=BjVA%(4;nlC#3?jjrSv-4 zc~OZ`7BtjMCDHd3=Z@p_5K8)R41EBbmHpjTkZ!&J>saLB6DaPz_?5O9+ZsJ{Rzc*u z$3zd2b53=VZQjr94vBUwyzxQ^{bqw3^Ru-zZadXEAq>{kf^?db0GRzxbIxlE{>G-$ zoZ}62bolAc&mx+id*Ivv>{fRWPwDhg7i?Nfo$HJPB;c;Io!3wzv&`w!2@@|2acYS!p7}8$WlZ8F_v!_>luM7~q~EuU^}V zP5s@vicPUwx30lC(fB|<-QWyvi7W}V(jz#SBbZwoa^C_6yH^{}SplB<@tPmG&^a45 z54^}3;~nZ=1>OB*f*cdl~2BIAF*#@Qjqz84!dSYH>b zrtAQU+Y>ZwLHcg&+GzPf-t`_LA7cutbxTb!$mzVez|ob@oG)3?HE`hDZNTQR|@ z2@Hf#zVhC6(7Ve2y5AVC&!aGw^K1(K9gh8nN&GV1#4|lFVf-1g$$Kz;Z`UmgerpiQDd}Br%#xf>isK-R%(H_G9Hcwl3c_)e3;Z_^mk=$klf` z=VTaQ3H-+Edz)A`hn*l0frqFA9#)cvKbVScr*IYgp18*#E{eb>@O-J^5?d5I^A#Hh z$~g;F+nDIQn+{(X4)=gJ0xmb9E}?~+2{s-b7ZLA=(3!06%%!5!5)*eEO?klSRN7BO zPWDczS67%~!LFZbKH(O}R$ zW2t+~}c!7qhn}VuR_)xh4RP98!)=;GasN|C`ZcuK3Mo{GoaUVtoxKlpRqbU?;-qDKxHPv9HL*t<3{ zTl4}MC$^?zdWoA3=-4}#j&0K}p_&WFZKNb1*&q&^2l5?X6!@7bDk zIPDs_yza?(Je}ltYus9oXD}X78VTenjNgRZPq#pQ#vs|b{t~r5oD}fj;d%<$R z4tJG-W=4PXKrPFI|XN@Z|Q$o+E@&MmJ5nA41B5;rnAXQyr{D9TW*y z;lGq{2tNB!F<#xKSTPx0h=~d%?9m+E5?KN%Hz@3esPJ&?cdEZz0r$Eu@&?6xpor#* z`9R2$74OagO7rvpJT(uEnx|RZ&3#U{^xy;7wr@+7(-*K9@y%q}sTsuz&DBS9s-FXzC~>K%#nh;Wul4%pXua?f zm)ka#)~i6X{R0$WM?X}QsL=Wb=;$l@=c0oW5&;-J%s{^!qC{uX5PTp_Qq7`s2pNwX z-~z3OP)0Q}l(i6@xrmZCCGN;v#ASyIrDk&Jg>`pA z+EJz+boyjqQ1O5}5{&>v0|0P|N{*g`<5C0Azcw*HOSp<0!bO)r7JS0>S6r-l7dk;f zfPEB9Z6;Z5q6-8nBl?e50VpcQc zga{$cKn8VYFNfOF_*PY-D@%;R-{|;_DuLv$h;LHQ>|{7DgY;T_xK_W!*B(%P1l40^ zOXqdSjm1~1jGDxktLKjSxEc&NlZjgz6Nd#=Q7-%}w%lMY-bdPI*opeY91y&Bd$_%X1J7lrBYS!ehkO$*G?^ zUE9h(O6PCK{G*Y-EAl7eS09kSG^ODaIrUc{zY$+8_dE)(DY|0k^(*(YrGjo4tT>E} zk@)2Yt+ej}m0lWD3hTai7ve)1mXF~lkw$p&|{eK?3V-}MF6nOgewW~;2;Ce-q-jzoJGdO&&$c)L!S4T zGr|I&UWw5}KKz(76!m=mm@}vkYzXXRR5e)O_a17s7OWg!M&7WyT&(Wk1&98cP$PK zb+5tZV|N{P#=F-VK-YQ%4!PGE)ut;AbZP@(A^OVj*9AEhpe_N8xErZ~HWAS43F8ff zNMvYmyEhWVn^b}d?%YfOx3H%V1J!6oc*0ZeZ&9!ga7%b<~K{@4gn%G1l8Qwb@dat zJ&lYO{`%vOg(`^zjPT5fdmWTiB$o?wKnRnc%1|#axs-;e3v&q8E6sEs)>IjSeLy88 zxOm%M03r2m1r(hjD!I4I5*7Go!K$v@Q5|2d)mq{>sL)h7&Ftftl{yhODB)7Q(o_`j zqF#PSJgYM%s}K@G6PjxE=%*Z!Q5OxPe>m8Q=AMPPGR%ehQ(XEBT7?y~%R=!4;-XW$ zK_hF)xtQk=3+OvfKdHmtZ2a+Zp+nI3>G-=E0Xpg;co=sG-2pbj><>@!fC22m=F4F6 zQ7r^!82v&av^IyQP=(NK^raJfzZ9f_S71qsWIzVh5Y9HcTnQKJpev4BPUB>;<@_q5Z= zD3{Bg2BLV&u_=`TeaKZ$dnihEnba(kL zvBahfs&vMTBSst9Z8e%l;+@r<4|aCTt}}ttYfXsWdfd$GUT0EWNE7n6 z!KAX^XhQxrflu7)@yT#+Kq``NG$G?RnWzm*9e`{zPAPM@`0rr7tr-&{ezOVk-GV&s zt^A~U?H4BW$!%Pl+U6$~*1OwHsD;~2(Ebjyy4bxFtKjZkCT{HAf%Y=)-8jx{xqA;{ zUEH0DB?11u?8AMmJQY6@6VY)AhJ>IEOttM~hEr`r2{kuha#r;4H<X|CX;xj#4tgT)v;xs`~1WptNnR)<5nN{FKX z8FxD1kTy=7_4l->NH!S0rs0)KHpCunm5Vf1(N31P=jElf?bb^^^sF;2Q$$e)8Yp-M z%oY5k{G>>H0bk4f*DgSu5ud~)3~joU5ue9*e;A6-;R}X`;NuBu*h3np4F5FZGlTaE zyrW+xE@XJg=_MQXIg#O}sMt|0R*K3U7rXgjhDdyNke$U3iPx}p&{x+E8k>NpM(%$J zo_EFGeP$}f>7rs~>SI`hWI`_i0rR==6Q9pEeP=XN=c!cHhp5jN3N&&A?uUvW&iuG^ zVY}S=t<#y)gop)G8;Qzpt*nF5s+F~?Y|tch9n4-FET_?)N3=sKE927{!wiQnJf*@- z^`DX$1={K(s=?F|ZmmFv_SNYH!M+f7sGR^}@Mg?)6N}v_0 zy;Q&#s9+YUrbn%e>J@VHwBf)Q?#gC$cuFD@q%>q4xNT^ z02%@o0elKt6)A5Txd=jvK2egeI8(U;!VuYkg_Ohb-X4`@XI2a-g`i=3bHT;PiPh<) z;7|<4@Is)HNW4_vYz|K-x-2)mc!686gb10xpqMLho zZ&AdHEUkCxcUFp_ zNVN_okH0JBOHMzkjo2|=)VDJAEf3%Jv-@J0c8TacHoi;56!)1b^S!3ZosZn_AUDPr z#^9Gh%o`#YfS#9EzUp+-Dy2sTefyQ)H;g3gTRVY!gTt64yuiM7@yc=V;foyUUShXi zCUIY3SNE~2uLiw*jlF!Gy?n#;^1&Co+GzUC?ARCV#+Ns~>J(^LlshD!0R374#33Kh z2VRlR*e(E|enX%-E1=#YP`@QmZxg6@2-JQ8^=<&vdj#rz0@cL4DSv@2zy|{kf7c2m zdHt(S5&&WP-(x;t`M)eISPRs!6avxM{{y}DdjbPZT?`a`Kp6f&7(QfMetYhukRVFfl@Ajd4ouwpCXPB&c(n;ktW8=6=vIBwWxYaF zk53$>Q^%^Mk(v5syn0dVLEYUG05b=<*)T@1KV(wEZ2>u~>oF%Fpl=(hZ$*0Q zRwSk^R`7E6Mo%oEM2HhtX(MhC=Wx@Jh4TU-#xF}n4htCqz2q6lMn;^#5O#cGJh35; zMOVZz%k;}}m_Dd^f;b+Rzv-v3^}PF%S;yClS$x8M!?lUKjrbF2uT-3*mPN(V@rh;d z4S{Yy!y;;_KVj382po-|CT_q&1e+*SUkq{LM6iR!wHa~tnIwZDmSG|%e#X6kre=RS zi*l#M;uK7a@s$%{<%1OBBpya-h;zSA=E-5nVwW7=%k+^7>Ddf_>I>i|nb_#quMHsMj9!~)fm~CP75cpesrdYUi3A(iy z0qZDv>DG@36d||+Qs2L(76fLj{m}L+u*wP6JILr(H#2AnZ z)WkXdF&?|5W{V5q8t4L~(-apK6){GRy+h(5v7oS*%s` zX+A)(yOf%XphTdiFEgm8FERo}ZHUWJ0TuNXYPBC7G{kD?BBiRYg#Nh-B~~DzDyyv( zySi*dp!xBMD)bLrh{Li|gv_ne?<={i7-7PE=I!n)OCK4@p3N0_LS<76U)|j~W)=Ub zRabSY4&D)*Pxj9@Q zMJ;TF^fu5T-D&<(&u;*zVa^L@qLF0^sSyE{sCIGl%4YZqC<;sirRKm$0)%B^HaWBm z`KfmKt9exE-W?gS2G_^ssPcbt2_+IEG5}1|*sb zR^AG6>1kH2TbI{CUNG9sSEI4E8B$<`h`1RUAYNQ>OaVo#yg^mY_ENKJ6Dtf+hrzcJ zM#2mX!?TI08R8a*0t-WUxG0O~TNVGz29M1Uzfb~15WpG{u}ulljFZJ}JTZPdif%;8 zarvUr5WCQz#hdDL(Y74eVrA<5oEZ`bgmCJ^%psnd-uA>;iz_ zrh%t3F`|Ia1el>Wg$tE40N?e-Qt<#gv;=C9;5~${8wz(-ls@PgMjVU%|!1JRp2%@aG-@qt18V?W9pD7+h(A?qwAsRdn)=7W{ z?8T#F(+ACrkKq_KgYeBBpTLwog`QBxX9GaEHa9Es*22aCVP|Wmp$+fz9bJlwf#5g= ze!`@nnm7VY6B1)kHMUhN!eQ7}Pe32QM-n+E$FR8_BLA=G%n0Q*|VeN$Qwhbb@ zfOirY;x0UGp^TrPGOEpeBW30+-OT6w66pw%quY(XmXyq%!vyg*;2#llf&CCr7{pvHYNF1T& zw8Fw4@X2hU@04D95xwoDKfJ7O2Egoqsv!ubgFDjM| zi&s$98V<_n`PGK56L~q7DqV`oKmXRinP zuMT3Z2?C6mSCKp3&jQhD=xwshzyVcO{9?#0AbLH*oq`c4MbNT7w6;xaqj;LgyCia zRD@arQJbhGC&Q#ytf|@Dq+M`V19+7BfaX37cf7j`AT@6r;vFc&5FcJtBBvf&Xu#iS z4fqx{;A=_)W+0j`K=5AE8t`pj1ET2vW9~h`q$sxc;pv{))ZGgM3(JywhAd&pprSAc zC@Nl5l%OappswL5D8N%8)CE)uq6(t}f93>#IqHyuF9;vw; z1wf^dqnMWbYhc3_DO$`wa(Qy6?}+I{g!+u?#}OOC!H=;Qs_4^1R~_=SpxLH`1Q-j`r?O z*|podpMlpe;ib%w<_bVx4zf5ZT3JoeQUjsH2Uv%6-?g4b%ICS5T z`wg(-p|+3w-A@5v7dkGJwwE(VI5+@R6-kUpd)qx^L|pfGBNBE0!0^iyCJ<4? z#mC>HE+>q=e#lXykW%D>=wk_7k> z!wofppgWYTKNR&U$M{9J6w|RmZj@6}_d}{VdlZWg<>)dDNun6uhhccc%i?l~61RI626m@az5bZ*y;UsSuh%+?evc{N>qkb;_qEd*U zqJ|sStbx&lGi9=dtgiy8Yb}QjOf|_I2G|MGd{7yrxFMMWBhUAGn$_+n1 zHlz!Nt&6UX}m|%)|0l45As$`06pJ3lQo7?*!28}B4*qY2Dc?m@LKX3~BVZHdb zMzIlyTx+`D@yUtERMW>747d&fl4&B-_TH%`y6$yEdYTFJ zug94wvdpd0uG z9cntMdjqk%F`c+Y9&tg+VO+I$Ba=-x8ku5Z(t8au4vJ^WsE`ae%psOSD~QIUX!QRF zcHRlT31I7sTa!cCzEX0c^C9LR^=w=`XM@${LJ<00iWoPUkrXv%m`9T1W;1f5NuCLz z&F;K)J=K@Sk*I1Ga1*9LN|Zvc2X?Z{9ER|kZ%8@HE*+Fznj7WNzk{k@a}vOQ9ZdFX zhM)t239vB_uE?ZNj0ZY)W0)o*FbNmKiclMVvuSQJ**18P9gTA{h<>vvX?%;xFA{ks z=AZ5@lG$dG*-*7XF6tb0L4{$O(a?s{N(1}uFWyLuoV!q%UV|u4 zEH7{-4A{jsYo z2je}c=i_Fy#J$}t<-vo1?2k5;yYmTWkQNx`JfGn+%>$-QE$xVm5O^8qo3>Ud~;YR2^$aWh-`cP<64d77+cb=JC zyro52S`T6v(xKaT`=^D2_ZJHA8FFtmPm&Q_%{&kBT**8S zt5G-+jM4{{ViW+caW(V2-uX9?c_PDXq#Wd}+pCigjlfJUxGm0!_fY8dr{EA19`a`G zNGe&=0J-fxlg$@!7obVhm<{y`>z1y&!d+-ibBC>%3grvw4g3uX_5eIKS7RWI>2?#0 z7i=!*?(oa@f+7Ol{X8|*jsuScc#49ML;kk&#vRpmL9|Hdh_>U7k-zEAVABmFJ>}^k zc!oeoJV91E2Y8)>4KDH)_lSrq_lUrML>4y^u+ii`ARm9h9?$}e5%Ls%I~2=2>^Q8( z0O;#d}0p*U7X22tv54?x@zsGz_&3^f3WBrgv!8lIdFS!;g zn`@XE!FAs#oA2qq|y3m9qQPXLK z6sOZ@jUiNdo-hGssR_9ShJC`s0LEK+XOU5#z%J)Q@B|}6Y^EE?beuR~OrgM%Yi#GR zM<^ck8kKdz$ruC5POjWfW2*-7H(1R79D5A6gK|C5vT}Y6a-xUMHc3|~0#vI^c#8vp zV+|xw9do{90BY>)ruQn}x$a`JgE~&)7K9#nJPm8fHXPN@KxxD1qU7%4Q&Vxn*?c#4|jU;++G3S$WBOVK>cHSiyg z%ne@QE=kc^No_;Q1Sz#Cq}=mCGAvufv7MLN9>eN1x5p4iI(X|nsIT7T0`Dt28xVuo zUu1{GS`|JAdgQ`-F?_()Jr=|pCK(jshhzfBNQBW(T&ktA{{$gA#4%q&DZ{e8``W*k3|_=lp52k-yV$4oF`E4C==^-SlyN-WG`Pwg9+ADY8*dj|A&; zjrnysc@OOu6xuIpwAcI4-sqwIl7}|dG)-3q%2HgFmYB(M6lO?bxElcd0mFHdH$d7d z$~SMVD2^L9F|?SZxkH-EOE@1W@WP#4>M%U2i6#Sw+iRb8-e3m{)Y)lUNXlFSLFQQ>=JxN0uOIFfBYVHM+2 zc*x$i->c(iGPV1;uA_pgdfTU79ly|ZWU(JJP?dyu6wJyZe4q3v)`iz__o9S*QI$OR zBUHsEi}4N{MRaefnv{BPNm&$iHv0HmN|vf|d0Z(MDq~h8ifrdO8)e0Dkug`*4PUB9 z9!PJ!gI>+PQ8oKk*X%$FLHBE~X5S@imZic_u`HJHaA3QFZwv$%?A)m%1)&&yDhRbQL$CWWuW?mh`x?$lL+pAnuc3JIHyr)nDPH?6uj$1tf>;Xn zMi)w~M?G2RlUP{W>h7M0BfKS2=pm6lJX{iK+d(y~%+Hjr$8>Zq0BJP}s>kdYI zN&XsaKl>W5rZ{*gFRwn0P~ZSu6r4B6!H6y8DLYesSLYbNNF9BF9R4a1sWL|w3@ok* z1X?Mp4swOtyR?jz9d6jjQ5WHnmh^M&JBX#_{1t}tuteQY|Bk=rHL2^T9&jAyz?MbK z!lBe9M^Li36YdWvpy0^nTwwQxiu1U$IJkFyLtNQ#&j%R?=hx@$4U8R5Q-38JR8mRa zY)Vh6I&XC!dWwWgGf7cmtaa6UH?Xaz-a8lNgs7tyHz$$C&M9fv%sZfxBKD#}xjxMNpQ7PE&7 zeufH+)3`w4Jh9-9ydH6{yb?AQ4*KzUh~#*D1G{>WRXoCZt~^h=n&&nXm~uv*tmeH@EGT_JjVGP!=uh*fW%n2N{QrEKH}8i6)J@*8C>17?=A@e zeF3wAD!8Epyl)7)Q-XRdxB>RUywM2Z*T`@s8!<~#GCXl&d!~{B$Itziu zi59UzE!0jmDEf+5V~TH_Ap~c#MUO=$t^y)IHKjUu!U&(78V+-?9D?ttGgG=47vzzh z!Kxk4VLNt@BcTOK$vNve#0xi$WCMQB1{^3G@CP>Fk8Hr7*nmH?0e@iw{>p~>O*h~n zHsJ4Uz&}j%)u{6yoBF{D)qX1^5{5HX4wr*sc_i(*P1PB8NmrgFiq(u9kDj$I0NpR7 z+7j)4zQmR0ZBYfx_=qPkwlJ~5U~Q?&Lxec6wGMOKAcgFEAYc%Nic^Yaqc}HE)VUHa zg)2FMX@3#K1@O!EWyD;@oAnfw0TCr>q>RVyjv!}4vU8V3y6Xu)ErbyVxf8%IbPL%# z@zyxIhv_a2VnQwsY{FIZBGam=wBM-cZ(2?Pu0yK{4met!qU$ckn^rC3d~v;L9UD*9 zoU+Xw!hToc^*d659@L;Ha+vK_B9Bf_4uXbLf@rd9f@rO4gJ{O7K{VNQz&|n#MhxWr zf$M{4x9Pa85xIfMqRz#()P<(0hMNYkahzO;`7cyde9a>BipHRfTNm2jNWZY}XX z1*VP}cO>*R5rcOo;^-@~P|#i{Oh-vyK1mM^Rd}UChqjm3G1@E0sAW(i#t*N&5bj1b z!^r^`H?cG@nGNd-+OM;*Y^?aG>n##*p#3L^q1MU{C>Dk#OspGwxzE)w`Qf@|xVhLJ zvTDXPR9On3m&kl23K#ICga=n$J@JT@^hcBBwb$_Z;Z;@NKLN458YZ!k{&U@6=0%#J z8I_fO-IypgSKffpfCJzz*b+A3;9a?(aze_1KFvT3kaT#x7EZ2mI2_cVA`v}>t_^QZ zUR;Vgg-XQLvU&Xl_Y$Sxf#nMFF~ms#ss|hc4gyU$ND_pDd_nO|mbL8sO2>5e*bC%4 zkuY_IyDpfJHsXHEFxmO#xnwu53$;OB-f9WygeB+z8U)e_UD(r>L?qX8MXMYuH-1zM zYcxm6#SrfN*OgNZoNDBGV46hZ5%T1`0;mt-mQx45#x;v_4nmEA_``jzD5Xo~y61zwQp0e7&R&q*<%Bi3D9^J_aNbjJasekKHs)EaAvs~_gN9@4Th)7 zb894_%A|QcIlxrC7CR;=jKZKC(71#MV?tbmPL|;rwd=Tom7V5xLK)S>tg2R|arGof z8B?tSkYVw3z7;8KA|ZoOb3IJ6i7BD9%vR`#^;NCr;*ly=PK~IS#+9{E>?;;jwdx#^ zG{2>nv{8lNiZrAkqtQ`U z2V+|TrC`TkIgE&pt84W@%17#2t>Emei|)T#SoNf@OFe5dvK#fSWALzjq!q5D)Gu|z zE?&0JaT_pq|N2%DQjD%|U5;!Y)wi0$$!lQsfz!W%RSM^+239jTA2+ai!D-&mT8#`J zHnbjrZ>B3Vtah!FjnxU*lRl%Wac^QkTWg7dhgkk-XH_jQ?h;jcTj!eB7>SE}TMuRN zqxvb<84jR~9B7S2`t1X)J-OMp!$3>8g;+a`s3-Ofv+giRm-q$N^TvThui;ip(|9B? zVWc%INEok=vhFgBUWqZKR>Xw;?OVoJlTLp9#-5!6*cjlPF3=*d`9^8B8JFgycfIzi zX9Lz~uQDP0nD!#$k{c8K##)C%#vIYF%=#|=U^?7+I;ny?M|&0Ao3&TLy-s@p_xBr! zkaLtBYoN~VBON))*GfF#A}yZ z7l5Gcudo)udG8ANmW$)Av@SC46c1jBM*1?b<$-3nFbB?AZ1OI-_x%*h`&{l}V*#I531dpPIEt+U~*j*~eP`{UL*XlBuCiggJ= zT#ofmf_O)P$nrqEI>n+*ntzwrrJS6brLV1W1}o84LnO41?vCLmZ4!m^tj@tc%YWDya4&Vsl{x>%ZUCSy0co0A1H~1ALr5f_WBIqI z`8HH;Os7fQI^QZlNr{IRSaZ$1B$&jB4_N0L#@C5O4_bRo`81WL*t)FJ@Ii6UVu+kO zMV}?soyM19_Y!LjWQ4eDDHs(NdY4+q(Q7S}-fqjR!4BUnrwOJYo~TVMSY};nxGk0S z;O`PLV=?;>fl6>w!#}@qZE6OuG`7&Ag83* zILwJ0!uS-xAx0YG_=8IohxyNB)9nzMVv4dg)(P346Y>}0DL}TcTNsS(g!$#K#O^g# zecJNLiNKT(U>uY%zG3!n`OkNT+cxsOXt35A5?>Vk6tkgntf91#+Az&k&>kjrxP6F; zU=!w3BLbC`{{``fMVx)|{17aJV^S2&!5ET_U1+4nb&+~VfM+oSI6)*6Vqbs1p(gwL zxFx$E3LR8H#+G6fi%*W1!J!pf%w{f)=HQ|@o|1}TVMu|;T3QbJR1P$66w7lppW=Ke zv`4t5QA~*Y;;CvPS`I|G^Flj6m;s!WUxx@I%0mX3`F0e`mrD<}L?%vTF!Pb~FM^RD zHma_1EJi`>nt+9Or~+;=M|QMoDX{vKwcw#D{a+e=By~^=K91 zCYgv}3YToKEF5OrZybq9F)=C5L#C%Z|T)@(RHEC&f&x-F#D1T8`Eid}+>Xy8 zH>2#9dp;RomDS`nG1q(<8D{5Jh zw}{HyMCu)^n?ztl&7^gl92!ppsbDY-r24>+*80LUnHG$ENNaPujo9zM9KI~F$B1>0 zd?am|eQdZ*B712AA9}(by3LDok^UFSc06iSWx-$5PaV4?$ziaXpdWz_K?| zm_JV`zAhjwguOsBc`tfmJ@OI@+r;|9BwbGAWm(HtWG%NCZllOn+8UMkH=;c{PPMW2 zkS%V0!Ri}_89mjCFr^ouB|QW8#dIrrVjVjOtG#waD#`w;9cg$^zN@R+5gBDtv}3|+ z$JJ~{PSwF~G8)T!Ab%PDrDP9@Su2f@>;-)#Xjt@1HY*#I_&mv4t&z1_D{J)>QGJ@t z3LAc*$g_qUiNJ(k6;;XAiAP?v?hTIEWx9B?&~OWBX#-X|*kg8^ZXurVg;|v79;~*P z!i)w$eavpPmtE}>b`{vk$fcc(oXCFJw?317>vIz{{{oO`B_jZfG64LwcsE&> znytx}>Q18cb>M;UEpJ#Sz|wqpJM{S1M4#wp(XA z++3hxT{w24;STGtaa)hgTSSAmtekK#q>Pi)tKXnuqsA>-h)!==ZBN-xMPNiZo}A#& zPc7s^5`)2Hijj!D5LFzBowt@8P%flEybyI6**m`l1K{I2;YioM%@|uCHoj#ws8SQ4 zN_Ys(?wkLyDGt14)hztjbT8x*<4E^HNi^gybZUq?Z(H?H)zkXe&5Zrx{I{*bR=R8~ zL4~N@kG1v?^y**$cAPM7D4FiESN~1CxVYCMfJ*+|}0T>Q( z7~t?P@ub2=vvr?};Ja26qgec_kKGinp-7^klCr@vh}N_MqBTwtty-~sKh!PuNVZ#% z>}2$RkSs^i2UvJaZpjPOie$KwWJJ0;L+Bh25dh0ZIHzyGq%O9}3|jFdAHHXb5${>2 zRCx~vD%3_|?|g*Kf8VN^g{8fBO))EG7l{M!S$145&tiPhyO`>9eyp+bze@-%zp)1u zjO`AnMZ=?e=Swp}2N^9%&aKv-7^PsgDg={N2$qD8eg^`{sloT$Tf|mlm|Kl`+-k(! z!i+WJ8e)+9jT5-v7=e&n4o2(VJ0B*ClE}X;kuPcv6GsFLF2Uj#4#Y+%Qu^e(u%;2! znBbI;DR#ea6;*-Vq$GqlRrTX|M;$7OgKbTno|yN*mNxb`L)_ognBz1GEGJ>KJWNz4 zbDwQW5a?gSEw*d*?ix1SCUCF##kvoyqWEiRlsgVYn}(fkueqb6%PA92uAgONT zZsbjxUNcCqn}e}Npw}YM>zLm8Qh~gMFp`{fJlX>fFTtp23iND(t~X{tY2;Qyyp0WV zJ4>0vQtr?N2o^9m7;B6I7NdY;d*^TcQ$p5Yd(_Oa8lpY0fs;Y6t%_bbM)*t9*ROS0p zP$tmhF)`wDYp$D5hs99H%hx^e1{da+a`Gu2#h4)OdCh8Kz7NTP(Xr9{p0G_H9;;Er zdc$K?v2V9kd`hu|0~RTjlK^jms3)5cv5+D_Jko{pvOTZnNWacv(J1rCLCynKNoF6dD7>`q5xKl0rcMVF#sMo*AxqUcRK(>INRL5jIh`72l#{i<8Uxm9+@19 zH37HJLiN2q)I0wPDFbW3@^EAdii=zmLc(i-NMvd#)&QxeAT^F}oZ}XvO6Q2LKel3b zOwFw-+U~Wo<8_W}k)4&>pof*`Egj%&}+y4B~7hjBn z64V>1_qZo3yH_XorObe*Jc?@KKlx;}+Y1NZ(FsAflSvO|Ln1C~gs`Y_IdmX&0rZp0 zc=lpjKs>$IIe2n2PXN72@BEsg`6t$~H9m!JuzOl*WQaQ$C%U7UjnovEePRth zVLN)7dp1{7xK6;;lpJ>;j39U&P?m``8LtDDdC1ESn4>!21aaU~tCtw~Db{Mcim9Jk z%};ovVxSCWug(C<`(&huA7~kYUR)b8)+Tls0@#azU5MC01joO&YSyAv44KuYn#F4* zV4PWon77YrSzj&UG$rNo$UZ}0?q`VGhvt=>TH=#^*5#p>45x`0w%;nO{fg;c=8jJ% z|0O5ozha7+`>onGQ1oa$Q9QBV8bK;&gUX))fjZc86pcT#PBA|>#DveR8b%Fq-DlQt z^Ho!P__BprMZQaL*#{*}xsv%f^V-pIet1oyCKnTV4MOz=R3_j3a=P ztHVzIbGUOz%kkibkaLeI{_}-ZyC*C|3IleB(knU}7ye#Sj3%Vqkqv}|n$<2zR)2zc z_Y3RNI4o4zsQ#CzKI}JQGnD4!>qhS8#P%LqdY?z@@AqPSi`)lIC^DaR;1|&P`9jWe z?>Bn7G$3z89@O*QhluDRBX%$lSk|WI%1{epQkS&x)5DP8%WEXFA!^99WxuMp9 zBCG)22fe5Op|EWNbt%#mpYx1T+z^U1$LD;bv;{ufoQdxRfQE1O*M-XVMjk%zQJ)xl zaMUS+dyh~9B@W==WZ^*=_v{jM5s9h4jI}Un{-v88t#dV}oH#S>-jBI?Pb@s5Q=RUMZ_f?f}VNDEcZdwBLKmX4FSwxWsx?} z!JZGLEym<5;QpYVi*WRXkMk@pg>jyh4I?soSjOE>N+Q%qa&i@EeKQ3(50GUiNT28ct_1621R5R z&RF97F^)_rd4^R@`IRS)GBGU6$xHTHjL_c9koFeyLUgf}nrC?H3 zemZkP6-c!Q2Fi+=lM%^=*36lgDqfPFV-~Qakp+x)q=^`I0Ml+i5{rlgbrEl=J)Jqy zkiqy=F>^2?W2mFdzcktSkog`i7+bPUH%FX%z^a{w2kt@}*e!wWCG3{CkHWB9NbU=8 z83XsJa8EPY#`mK>f47Yn{|N&%)}rSeT*AaHK*$W(xP)PQui40`6*OCOw<#oFc^L%g za$_Q-*9xHgFp$SmF6>2><8KmTPA2+EvR2&2a#pZ8Mb?y7!am0cMb@~KKw2+(5O{fg z&Lb>l1|$lotQgG)rvuywI6%%1Jgc|oGiscY(lV?Ept$=YN@|sCO(jd8 zro?FE0q(fGjXH8`rf>d6Q~CXya7g(MsJ)R)`G#c5%zc_`LEPj<%{A~q zwXoD~4wm`ZJ!B!Uo*B~MZE0UA7i4%3m}j|p5gV+7*Ah@j$lEOnNyKFDexAf)u z2t7}P(6!~h5%YlVa@z>~B8klfHt~>D{~#{OzEhI@{Uq6QBnG*FuP~9N`kKL$=-k#T<^LBMr3G+iSixQ zkHpanKEVbP|HWdw?7i4SmxGX;+J9@nQWpvSExO`56At`-lG`w@bP{4@YkixVcOjvk zcVVr-n|4C}C92wO2xH3l??;+##LH7h!ugT?jbp|2pn;^n94ink2aD?vnvLwDPB%Lu zKJ8|AivtXHqMEvSvL?VDns*ckW!*@%-d#Qkc(UKYz#jW`)6x~7=0 zo>oTZcQhiLLq|3uLgiEwfZ2v9U4o2G#=TIqVNJB*K@bAR)vMsyk;pYnjw6OfS>#$i z1T>Y~4A*g+VH%hDuV*yord)8FZuT@_fe91#8+j1nCT^k5kXxuXo1AsuVnUM64Qb_O#qDNnxgp;`n!rbp@KBwH1WvikA=90X3Xs@ASZeBG_JZ*VNYxu*#w5DPgb^k@wy_w9O7eC_ufcG* zgjHUOe`0|?`Je&?+AXGN*T=4ByrFgnpHmxMScH*6Cu5@vy;*MN`F96Lr8c?>-tcw@ zVLy|KQs4Ziyxqa4WEX0gvDMYaX_ed^#8;RmRIt*8Q4FgtFr!q125_9nN;c9eHq2_a zbb_t(q;8!x+)7%@7VhV~4&n~sGNByQhTuXOnJSX)ju=7{4gAhwf^Z}k1Q`OmCX(rt zJb`@%9=X9W4yAiRF2G6zl@siC%7pG3bul`Gq|7MSc4>A31GVk070)!cYt?=n-XVYv zJsvCja{Z2LcXt@#m=^X3bFC@2yy_fTSxM( z*W}wk@@-^LKj%#e!K2?&Fc>BRFa@JX2oLOGC=yObuU9lg=rd_VeC|jhuJ?$jvcuSf zydM~X5sefP*Lg&QxeDyx!@vkA2ufhg4vSZt+1YX0!nN8xK0(5sg>E#_J>g)zq$C1zMxq#oI7?)Z4mwRJLZ9jMnVtbR{}bR=JTl^(1?U zxzZ~Pt}Lvig2Hf>lAPkfjw{%WGhjD!nj|>|U+tq9p*Ut#mp9fsK@QRA4XnWQ$%niu z;+s4*A}^9vULwLFNMY34>wlY$WSz|(>%1(1z)*+BI-7i~g92p#+hShe@eYfHp%hdMz$L%n zhLcyv6JbT)nTHyGU`BD60I5D;D$eO4v9?MJNVaDlB+?Y!dYi5bl7u4aDVhmmt!DA8 zD!G9yGiYSzgrHpQ!x1|?wT5$cuY-l@HSPDG%L~irt`(dd zKO8846~KuT5Tm&Im6?f=Ce=HnT)ZApqQS zBUtH!WCxZxk>VpTgoKg^rcOxx1$uD@MjVs)0at}zNa7cQ@f$8e5j|U?r_kYMA<@DV zo^%0Pc>l}gfa7A?X+=Z*^blWfUTr6hHZTv5qB zf=JM3`f{(2qOMr(-zG6&S`LJN%8&6(hD`Efv21WvIu<+>7D-AKqm7H%;92Z3C@OiB zT9SwDMYN9K!{^v`=(+kdHLh-Z{p3hKM8~a+4>kWu;e|8l9{@Ly`Mf1$u)+3AP@Y;}s#kpHOx!f>Ye2Z+h4d!aUe zrosM01(us*obX8n_6bBr;UZYwWYQx|qfVWTtx2mEHrH%r^7 zLM*i#;qDWQ^X>C1vFe6ZxV)F*gutdVZKx?ETbg%8wR3E_*C{$RXOfKSuEEI zLwJH6xxYsd^HI;_eT_Nten5>lGULL?Z$31YaaE%EdpereO0$C@*ajqr!DgU`CJd>n zDx)0OFO*nb2djg6`5W+679s~vD*Yek(e5Fy3W!Js9c`vCSZ(5Ic>B>K0d z(7zrWm8;IH^OJ|!ZJ0((qwtL$>NhFWXK2)w1w~0Gm_byi->gxGVMP@P8sSr=WgTQO zGE?mcFOI;*qO#qaL~nKqJzW2|MV6{ioDCGwe}UqxbQJIKP`pi{C^U+*q+g*p$3t+awEgN z8;>h2G7vygWJ?!UdVwWFJaff3$V>XTS$LZw)l=qqM7mcI={`-QdwfK?(<9P+O(d4g zKzYI?wTdpQb0Us1#VqvXxsa#m<#yzLY%~@J@*)oe-CW)>jXx-_nL3e&g0x4#^VN$$ zG!P`Rm^4^I8Z0FZmXQX_NrM%d1`m@4kMPEiqQT;zyF}4oDQFOI7fWu)maZZJLy{y| z1`=20g0%0}k1dSK5(B z+LPlzgOC`SgKL97idVDjTA)Q2w4c0p@=&ld_M~ux2g1;Ir5(NnL71^q#DqgyW?}dU z%R9SmDF2-ZSJAxtj{%HYxY;Oovg8(*j7n{0`L91V_1%BO7y&*6iy*z)Z6d~42Q7=t zG3@%)?PCLmi!D!%)PWexzSwix+J*6Kg*EPrAAvQ3>?G!odTj6*_nj5)k9&;p1c}&` zMB=Rm@WaYrYO{A08+$dc@Fd6yPm(d#@b1f6a>r9~%^6RVGoE2=Kj%@<-@n_tS~ewm z#t`>O^_jNWn~-6=cETOqHL9EVd&yHCi>S=*)0#!r1WOAbAeAgx>+#4lLGf&JyRhvl z_$%1%#o1VpVkHV8YgA>KQZPRzhUC~i;*X~o;t7u-vMV7if=Trp{N>7P8?w7S>(TkS z6rI<3bY4$7-yjck+-N9DZwPuj!`xTj7>vbhM4l(DUm&etBsE_mtv8X@n>DFlCaGTu zqMP@VIu|#6y`A;xkV2Z+_-dYH_n>~W7{O-$|;4jIXir$+% zdcP7B&or}ZwciMTh5NwJhd`7K9>rm4IN;VJi04T07Gi6bUDR$}itOt>vXicv{SZOy zo>@*cd5Nw$PBT!Qf;=zfd9OF5ofY)q7!q{>vA0WN?~r%iTAEIgyrov4uJPbjrN{8F z?km=Bw`$l9A2CxG*TnLs_VKvSw)rR=4CUh-Dp>V@DGSh7%P>>cok z$A2y8zA9-<s{$rXzlXQ+N04@@OLUB&_oBN zr82pDagF58;>tNOX2dbiTsVn-Zu}rM^m1@5?ll;_kN| zP6rfD-)ZuF=|kxo52f!lO27mKs4T<;o>Y2xzVN7r&w~<lb50^^3X$%ikR+THO;uo3ADITv!i^>wh{ zf|!c^4%~i|V>?9~M+Vd;+x^u?EgWnMj?t`-wp2%ppjs#EBF`4UxT!~&$#|nks_+2x z2NK~<5o?_7Z?F_&V6=nd}{KLi-#?8Nv^y$iLE?slTGxz`P?Xs2qEWd z(9ApD(K~;m!J`$^Brs&h_x0*KTc)Y>bVr*iXN+|A4A#Z9l zUHVmjMF|qq8A(i0>~#pN_;kl8XCpAC`s5RzGzFcmNNKSt&F3dmdtws=qzbELZSq)= z!Od$N2&(8@5fgdmil~yOpDU_^c0g?qF2$;B1AVaQtHV~i>Uo)3SDs(%qSYgG2y7KP z`%t-Czy$6rP~a9yQe5)!vF^>1a;l@_(MEDZk`pxR-YV0OjXY*RCQ0Jkk|fS{XCqOP zbyW_w$1NduCK_#&^9HHhI&fy>b{M%X4xApD16N*4;}Qs{_oGxt2Efb=)QdYp+R_b9 zu5uZH^8taCJkAH^^1||+ys&&%DAo+x23|yP=b}=@t^j6pS<4Dp|4vm|kM-{i&6#Nz z^|~Xoc1R^_cUQ7@DOR5wl1mpCv1xESI>6h}wtGNyu4;ELxKQ3jM!ir)JZw`I`9WFC zX+tYHG|!x2F~@<@N0UX;G~0Ilkt4#tTMfm*4xwDj7kKax0uLXu!g0tlnFGrs6}tO0 zr2oxFyk3B7bzb3r=ObAQt*k&lm6$j8TpUx*Ac9Vr%$h1Et`jGNAmAl9O_*fF|Kvk# zxIMR~sD(C)qnq`^IXp~E`|*`7o+v$rrlk8h$I^(kbaLQyqxqkH&ha#1-p}by)8+k~ z9yDFv&xs`+8i0b2#;)MdW*405aC+Kua(@DBOUTlxqnx_R zsiz#;N<)$g9bWT4$&NKtjti%+9ixR6JjhOaC8yXin&CLrj?q{~KRZS%0;k!rrpjp+ zS1!~Q=ikcA_mw0<$hkt<)4p6emnr8`mG^>NU0_@mMv)4u==c15_pLCP7ZoU@gK2g#UZfO5`M4xZ#3%+S-7x4&}!r5w#votVSRBj}Ewz4tSFeIF(Kp<#bj~ zC*^chP6y?*S57 z=4LNsgN()*^lMCR$UKC%XL~8H|45PT&cvE_FL{*eA)Il?QFY{HI(@^yO5QNQ?c&)8 zSLfMrKctsCoh!mPtdXt;A$Uq%9C5z|%i3^m#;P`)8Ccbp*GxHDNF6DH z(AfkMMTrtxbSV}@tD}F1cr_HK;}_xpmw|sHI5JI6#{$eU6ZZK_BUp)FhQs!OsCT3u z3u`Fn>|2q6*X*a_EzqgvB%Hv)v3fbgdKY|TfnI5zc0(G;!|*2}<27mLL9-==P87?E z?N&#l{#eN8d4Alu)Ah%lPgI}z}bhSLMLGM6%98 zJepwR1yelTi6~gsz$relr>k~Wt_yeav7DkmKv zseD0|8;f&*4sUg|EyX*&rMPW6mrtc~5sV8hM((jjTjaP^@9tpTq!f>;bGP>TBDs#w zhPxIJijB5>VHBT2e9_K6Dt;8zr2f$rSWGqhPz7Tf;BE&n&G9e|(GRNf&Z)c{{UFu; zY+%G*mW&0#JWi99irRSWl&hgOus=~5iw%){;CQ@F>Z#Ik;HQ}-dTW|^z(Nyun*Gn$3cS`yFLd!56( z*qYWk#H}6d_VHdI5_=x`mDtf7iw}P05;ieI1X1`&D+IBj!Ms?$y5Wt2(uDZjks3>KvpNdv$ zl?xy&&sLONv7IkFUmENjr(N>eKy};%xGn^BW*TqTT~D(^(?igaZorcTksG1jtBX`O zg|MPHL-gxppHekrWD<)y*{usf-f5;bir=to3ON?@g|=z7>>eUk%@0U6C~4 zC+_QR=ZW4u?ZObYQ3}O|?sj9?%Y?zZnpq3+Hd;;bWKX-{Xzotb09J2jU{x>j4zYSS zg%ww;q@BC>iN;Q%_5o4bMbtjji@&>x)Se(NxAk+vKBNjHQjPI^M0K#BH{;b-v1GL& z#eGKaYF1?Qt~!C#81QER{*UJFswty~uVFzpOrwX$VVy4abZmwyW2~8eL{MDN*eCdMB7iIeHMg0p?;7bV%zb#g<{$JmNg0z z!9nAEenjJZ!N&PARRkBqWaE5Izz5hk2U*xREbLod&UY;5`ykfx`@s%msv5Rx9LNDa z0#|9{BrV{fagMZrXGtJ9-TWnG+-_w7Qi40e0vhBm+WNmUfR?NAOk4Ld#B(RuRl40A z(y>u2JSgJNq==bC!7`h2=2os7+!m6P7+C*KE~sUTyk2$#Ba1zyMk}c(S5q2pSUFXd zQ$;x#dUR#QiCygrV1`y&rmfDqSM$XB*Q~l?QeQhP?rUnFf(82>N8637Vf4`xTQzx4 zG&#v$Mw_y)_qE%@GIi)=`?%UKZCTH2ns$NQP~%fMf!LEJ2p(opYkJ|YvK6P{z z6@A+_Ulu6C%(8r&*mknrRjhB5+b)0mJL>|mny9T?8qOAn+rYfSeR#nD|An(ei{jh{ z#xikIaqh|O6JT^`KD@)0>*CUO%G@*wkDgTAyNXhhv;-PZ8(#v%4636Sw!XPYR*RADoW2rt-iqQU?!GfSWN_ z{O43#Aa?vY!CInqKRXX^J$314H|Z>i;?;WA+dfL*01IpV?tUL7YOAnqd&DpOb6bju zXV{n3+>0kq`3gE8#_U##f7+IY_a+XXVHX)N+FCTgegw#E8USyV-w($)bl}B+7J;7+ zi?7eJ#{s3GXWMOj#Jl}$Fj1CRh0xZUdBOakp=_W^L#aVG5Z;N<=BA5fX2enl;J~|949`@{jWU-8G=ZbGj84ykM{@wiaLw>$v27s6?qnnU zJkTCr<%2uH0em5JF5qU1HYIj_aqA$vhOa7*46^H@Dz6N(M;H$z+77lK$Vvg(d7gcn z{UE@Di6r`0o^RL7e^XK@n-u!-O>zJE_GS=q>@d4Foa=|#r&R^HvmsBta%YIW!|c8w zB8oo>O***5KH1nH9w@Pw8;Qi}7ue?-V4;VH+l!4S#lR7EOY^{WV(JKci#dCmIAf&U z&3t&8m^IQaG+q{qM%u@9-8yYUAd(kr9jV4gF!2fX8}~P{5sqe4T$=?2F6h>VJ;?D? z<=i5y*^N&$xDb|&jiHG?7opDC2j|PDc`h1duQSd_G#`y26P>bOsXZUB{Cr(%Po(#P zF?J6;wsHR$`%Gh{_-TxN9RjZ&YhMQEhp~1X4}MJ=XWv`YEP#u-n6cs+z;Jzj$K>+V z&P2=c_B4a1j6Il=B}822QK%IrRdF;AR75lY8Au|PTSwG{>Bb~OYw!Fmat ziSd_oJ>s3qAQ9&!e!9%gHt+_|A27s-$c9(o z#1?SDDi53`SAdZBh}W;MPk>YNN_6gdqTiMF05}V;wBLqv<-hHC{pqvi%SAc7j1O*^ zGF!e}1S9h;0>8`>g;&|fRk_U`_Vx{x@Wz=p{=J&-y3ww0J^kax07Pt7cwQpwCcA|Z+F{twi1st=izxK& znqkYgie^BH!<%=r-8>gMh-=r4>)S z($X}3Z@{-$G7Bo#4<U#~M2lSI)K<8QxoJbrZ+mX2-LPmWgNQ+BpVZb9(Vkdl;N% zci9u`AHGfYF)H#>@@Oyk>zms|;x7AyR`=d61r-%TCK0!%<(R3xh`RoE(e!S+zqN(+ zhEf3mJNa%q0x`JoZhL8!&lGTzP(Hd%47tbdd+d8UOm(w2wO5t3ReKe7FK90SJab!O z*FARoT=DB-$lDi0bcx-f;6)P}&sB0!B*2vsBmAN`Z;2g6{1n7TD~M-~qS6Qzj8Uc0 zV8VXT-W7CY!ram*K%6MHECFp-iQ=V@_A3+pm)ctm>&xFzMW{lkVzcG;4!=KZh5bp5 zLyU*ss9wjK0bjU9;*S+}Rm1%GZc+6SjP@(VF>o3^{|n+S57_lkR&%o`_Vik`X%>`< zdaMVIk5mgJ>N$C#khtLydku!)6CSmHFtTts#xX^eNA0>|(Bt+Mjqd>%C>6P-;YGm+ zv=S(`jR6rG={;Y0Y{9pa@0|L}OX7#e?dA1$0-4Tc5wK(O&SrDyNX%MdE>`^mf#h$z$VKyA`TS0XybVv(b}w!T__szXn4rUdAhU%D&$;o)U>??DGoN;!HQy zEb3=?#xrn9_$kr+S^Gf#^*4rs0qj1m3)t(|ipI~`4~r{av70B}c+PHURvR^b?8xG= zC1t}$k1sA8Ibr-n(Yl9IKliediDQe$jvpaT>*2IIGErh)52u|WK8ra$65Te~CuSd+ zM8ZjI++?3xQ6Yo3+6~3&Ktn8e#V)QO_jj+@XI2nAdW(Hdo8q!b6U&DeU)a9=h~Xt| zOWIv9^1_boI<_0xrBjFYorjl{3?JTM_=rwNU)W(prwc}Q72j>KPdE}(0x0w}#PL0y zI*GeqwR;4`$2;v7J^m)pk;N0sh8K?+eZlbYWh0BnPncL-QZ~ALRGTvK-s|?@3Q9Zs z4g1Z!Bg4gMJM9}qzYpwUQFE&usUX3U59~$avuZHd(re_Hkr$Pej~+j6qBvN`sgd1x z+=b)+b)k5@y3?e(7ddjoS>r~ibmIH!uzo(Tj?*cx7aMkTInr*b<6O|>?D6Fz%O>_2 zUp8uF$q0A+g>J8rW5*9KD;a(TzH}Kv)N@WN4*Ww}7u0t~$NpOyP82N)oQ|h>^%yxx z*Jz}htlUWVQdFXi#@F+fj~_FB_{HZ>7+E%Y{D_IC;=8~46hjM~e~bME&U2uJS68v9 zhOk6B|B!{G@T^eMhu%eK16 zE3t)JKHj}-)ac=(+>&wQk+dwCcJxHotIz0h7kS8Qc!|b^&T(d9W|8x-QN8%c9$8+` zX`FEDI`xg{h)HG4Kl1XC!zYmwDoD-#E1G?87m9(q?7|jkZ00xt7!MykhE4yk3q6k; z8(u#8(vhA|-1)t|R{VRHJ+sQ$BZqfO65)99=q|gH=>DPIsv_h{4%qb)xBXyWX(lfI z(9SZdo;ay&k~?A!!-Roi#leVhGFt`aBgvCk2)pHcrFKig*} z?%iXr%XSnM6gMQ!+iz!QiIGLlQHfz+*&i5*(|)msS48;)DmNmOi2MdqZU0p2TzklF zU+tKS%D^KNN{%U+R6gpMF(b!`)4#V*62JcnwLkx7%)b}@Y%f0}MVo&{mvkXCam?u9 z5ar`Xv?-e?dSyGU#HvGf2k~mmsVlZ;JC{`;TgK)%Q=9>1BTFVuD!an%KfYXio#RBS zB?HRFLvECenJB8}I#-G8-|gXI*G{|5-)@SJbDc#;7Mr;Fce}tiGF+_4a~f3;{9T?C zt%&nB{$V!~SH59eqM_x?s5W}sr6prVk4W`6vB+{x7dP9^pdctLhVHRr;?qAsk_L`5 zu))NU<>y~K@`|40FYksf-`}h1@n=pNG5(a1SBOcDQD-YXSLx~@&I^P*$ zO2~Pu0u-;za$a`)eNmi#iqlT4%yt@zZq=PRqE8)Xp!fyWXv8!1oo^%+|9df+c({SH zrXoVhKKYRAbkAvrn*TGVN)$AATG)TLi4((NRIH+L4Z~JF@kTf2JJIOy-|xJM4#zuh zS5zYiwZ@4-J)Oefkz`J+>Fv}r3cOx)L@Oj}pXd~rM`jaO^mXp(q;vf`n)6nbIJ9ef@vBD7KseACwcT@bI8Y024>J(R^J-tOW;l@ReRsPz9AJOZzX9+Y z+5`7Zz;QhPsAt0gfJy$&%}BckY2%g`eejcXKqE2|e}TkRy|mK-*k9k`9aC1;d$P5RD!rf|w16bh=+y}P}-0^VR()H3e7#9wN;141E zG`MHLtq=Dy|f>;OrJ?# zAn*$OC&;fr;I-@&fOqh%YkL>cXrvbPRXo%eVW)ffzN?jr?_3@ZH1fiqFN=o*S)S*9 zB+_E4vVwj?p_v68M%c+7j2C?f{vCMx;=T+A@ojs6Dk|s)koHW(Ys#FI6%Isv{?YLF zhkp%R_LhBc&w<+$a0kM@6D}#sUmH-HW#vmB{&9-XXGKYgQzHz*AACR&U&e~pOPqr0 zM|(MRhF-biyb`AtQ|CUIN?oKDmb46pH?=E#cpn7Y=k2vllo8tzW{Yn~{XPy%6Edb~#*vY6y3*n0>WV z5Z{0ra8SAHCM7}}*x>*bj63kh8fW@1%?}5n2%ig=irN$SqX^v$KP#fc*LdMZ6;+#t za62IEOaNv2GvG)5c;H%maH@3${wPG&!B0t~!#PSZ{2;|#Kiw!N60>H%EYD;db}JdV=W~ z#-GmL0`Z#swS4*O;hTJNsAj`d0X=9KAg^` zUE$a4OvvMrR@1Eq;xyWfo1T%D8g^W>X1a=UtMK4c1NZ=ed8bAa`@*))Y(6 z9b(zym$6R6njQWkQSWh1!}#$?#F?UDQwKAqM;n^9t1Aepr$^ zDw!NaJ^H9V+gwZ;55?(X~@^*X59s=Y$* z@l?f_c}9aUc3lI3L2x_5?EsgG-{B)7~Tw3>sMeuVT^()*Va0k>2 z2hM`K1n$4!{tUN2+>?;MCS09wDEyp99gBRu;j%dXhz|9#cY!|@%+9rCd8ef^BH$cE zJPG$)xHami8KVY#9{kMs6kLuoI($F;L{t_iW{*Z&EJGP>5Tu8qRj4+*(klEBkIbPd zGk!8833bW&aF2#N7k}(dnc>eMjQq!6QAx7P#RG?)NEaF!SCupnc-T!zd}n2NIYL3AGgvd{hqm(o!CwX0XoCPWnVI0)$wPRI!dxch~H_6WcphtcuBQ7)TT4?fG);C64KOYQ8^P~O$ z0AM}FjX-n@|&3^dkg@9r&p&zgxp#wlv1J*3XEZ?FKigW(-+-w)Z zYN((I>xwLx%a{I}UUUsgp?4k;CpO#U!Y_DY5^L@G93Uc>6CcWb6W&7*h zYV(nppNq1|6Z$9RVzO+1^LMSF?2D0GcLzd9<)#kq&)vU*+~vs4M%7f*GMSL3B98Kx zKQ{j$9~DOVV5t;=z+*^Hsik4XbuVOsXA#-bOG#i8e849Afa%PiA-$h3{fPA%o9aA- zHQfhmZVFaBiOIJB#sNSB{~7*<9x_@6(Mw?SeZU^Yx0dNTZ>^?^&$Qp)<8dR%rwz9Z z2R8YDy_3RBBGT(9HKl6|*A=s|2pJ9HGXgwbZlOlPOs($f7UGr#PT_GUA)cDn8_mOk zOX2#{ak+0Q!cWTxr(${r!rM!QG^+_dTT4AI_(QX>m^s?1nYE=E^jH~P^Jdg!5^|Ub zDuY`NcaV4t%boG#5Y-<+TJ4(xq^a7Tfj<%@)34L*1wD>OJhe_e(2Q!88fY$mCMAB6 zBrq3#EmrBj9BI)_l-iY6evcN<9bak)BOm5dLVu+T*~n4;gV|FkIz69x{H=3 z=?W9dzx>%$CuZW-NUSAerp7cmBkgfWt7T;7-sP-}w0)6Q3&gpIlhjc4$Lf+Vv0hiv zuH8lrYli@Ul0{SCIrzDXpfxk?4n#O-AG)br`q5RwUK~d_BbZk?5F_ zc9##~Q!~MztyT@{ zg7&9^Hw*~|!F>|0CSMnPYi`wQ5|ONIRi(GD5P$m95U!O-7Rc|qT~&D#yFyW<0C^1o z?7NiM{QU%f5BY_idLPCb@HPNC#f#s9Z_PhCz7%2H$I$Sm!{5tGe=@!`H9D7Lm$s1? zaV8=(X|!t0C_e(a2Bn>``GdHPa7V*!EZ=;zs9F5RYtVJ<>5b4=9hr*Rp0`~uk zNV*e1NSUt4*dOk6xDDa*=Py8Owo{P)Y{ZR*OWnLC+yOp6J_8@1DP*Da;75(jNU3BG zY|?FyDGk0gk8AgHWY@C|ojsNNXY zfmHTn(eEL*zel8UlQsNQSzbZzy~wSlJIk(=HM9g}B37tUR;Nw_DzkNB zVcd64*Q~j&`c4n=>{U)-)|?*L?-sA$1bz4h&d`+YPj|&A(P|= zA#Fm@XpJ>2RoZB))l#LcS8Y|jR%<4xM^W_ESXI$iN~^s8I{U7ieUE6j-?8>u>-*OD zt#4epoAO;r-<(-o6#L~~g{O85dCAyU_oq*g%J9Nj)HB4n9Xs>`ouw{Q!E1u6n zzFL~K@>MoxLF0X-S<&wz2QcSyW9@!{|1_|7XiRRP8d&E(MYvjaG+?7YeqeJYZ1Wija(QIsf$dJ6 zQX1u~HkH=9IZL5`NgH01Mrip^asn~92OR|VN@=Q(6B|CGZ6%Ifq-kQq8f~l1Hxcdx zLUJvsD9XvS=iBYM6Xq4Sbyl)1vO|?$O@0dbZ%{vm^ytqQn#`4$K}tA3N?pGoSle;U z!!2R~zT=yveCGiL`*|LOiL#RCKL+;;u;%|afUi9KDmr~0Ws>*F=jR7BTIWv|+)t&o zSuR}iNQ>ULL`m-hT^5I})7Z@peFVF?L(TPH+jZbTqj$_fg==dbsoaHE_(^Uy^5Eiz zuquD1zx+VT59VE!KigkU(s3nqgX9a({I=^DM-_Q#02I$x09I3I_d6^sAuC$`1MpG+ zC^y0N5-)OknTjPdY(4v&!#q52UxY_ z?d`tX1{(sqc1V9y?Z6$6wFdR8xS-9UhZUz~BZxD=Q{^gVrncf1>c>-mA*o!U*`$(2 z)as3(9fv&IQ@Ax%#lig*dr~QvRh6%!T)GIQ8%HhoZImfT^BM-LwhoYv3&<-GtOm9B z{6cxX8$7v{#W7<2U#4I-1-k(t392-@W@lZ87ycqeP|95dXveRQZ*}yabcn}kM{VOA zrEf@GNIva{x-7rT@uKoAm-4NSztDJ@E}E+OX2tLZx>Jw5W4cHiIYzFreBK392`!oL z`~>UT#FRIXmp|LWoG%W)3>C2sfSiZgh$e!>5_dZ7j3eEVRBCqe zDX-CsC3so)K6y5|bz%<%QJv=9H?ws2^EBkM<=*_b0!P3ZY;=O!O zCG@3Ww?U39;pFM?JwV+RNB6;EGS%klSq#z|9R3ANZ+GtgY*f~iN!6OJ9t&T(UU<} z+WB2i4P3)b+75dQuw^3HQc%8m&VTT!7Hd+>ZV+V$F}(Sthmc-NI*e34AAGVkbLGN(l(MNs zb;rfLt5v*)cQwG9cvo#Gye6OdZz|NGDjPo!QLdIsHMEj4X^6^aA@7Q(K8C?18N?*Y z_9p!{D>&+*q%!J3oQPtupntuxLvX5?Htof)C4>ovL zSSo!TY&BTf`9RJQl(6S*0s9@W)l#UTZ+YbNw}AZ*u*_4kf0T-B9N7h$Sn$bW+JGAEIGZAke}q;J#moVI$YivE)FcAHBoS%bbzMG*)c zbOx{Eiu-Ooyw0RrJ^@{;U3jrHJX!ZXd8H%DeBUuG*wc8I&Wk<4mn5!~n8V4-Yj-!3 zPA`@Jo_r+XukG5kNrp3Nz@tDuUn(^$^B*sQ41}55G?iWfcA1C=Vh1JhH*X8r8^Bg< zQ1;ytVA6b=U&1~?VvE^}wBcgIb=p>Awm!BXl=5y#|JVP}qFM0q@9-))P`l00uI#oe zxrZHBP`5)mN{)(DZs=?LmDOHRQZ_+oI2jK#3>T)uFJKF`aYDa6`L(8S5WR;p>;JInRHO8 zQj)5A_ERtY>0Ghoa&4Tx0B|L+_7|64p-mR|UZL^laCnZPPLbb1;&;@IIkc^nq=bH$ zm~bWNM_t*Eep0FK2(gH|F`sNhKLrpqlTV3TCHkuh{frX&G2%UmE`@gaISY_}4?;(; zm@Pm*UG(>UF?C8{CgOZq_pGY>Ds_sdG#7T17;+V^5V;Hb&82=9iXE?_-;>Lo@_rj2 zYGD?O2oP}<_{~N8d8ux>_>M$h*@j*=T>8XY5`FhCYnt?vbleBJ+Vj&(c&nS+wf2ls z(URWc06z<9NmJ%R2y+mrLAi|0tMbeH%iH09)L*XPWQbkj%V)(2EwVW0#m!Q$(El%| z0NCcEE(Cl71nH_=O}Yo^Eu>O`+DMA2xjBB%Yx(MJ$0aYd<}2%NA+Oq&`SDT9roR29 zwXKY-d;wr3k7a%rfYrXV|I_bx+ZvtZ^Gta~osf=>(Yz}xm7e&q*i!zNu_tZ;do|dS9jeyU zgg1{vzVJw?R&J|@w$$;ExNA-<1b0X(=O#r#lSpNyT%e2SNV2}iN##N*F*yVTSudY* zFycpaP~KeyUqB8FM!X2D65X=CAGSCovY>pyRE6VZdD+46E(2*wn6~n=*SCBPK&iB{ zomatC%vLH#pZKpX1#z5B*M>Yw$Ofdf7Y*rCc} zG@nXE0Em_=oI z5J!<8)Q=~Vvr4e*+F-A0gFPQuh1))eyGpQ4W^fU}O3it-t>F$FVyYoI2mvgbWAkZu ztj%h3p56FwVCNOEEoSr!fR&*-zpbH#ZTZK5RmOU|$8J5aWx{+OSXfT;X>a$cO-StW zlD`A6+Pe*Ho!;J-pVHUbcjbYQy=>WK!R`5Ft(8o8m;L-;?aIQ(Q>QT%@41RHb0;7Zz^r|QmqU0_4UVQGX<{xV zHA>~GVFmY9>UX8SZ+UV2RQWH+%l0(dmD{Px+wsRyk6bDC{|Jy2ksZam^p)&LDw(fp z;MJvtC{=mYARrxoV%AE~yv4g@eBUCS^B?i)zYjp`KLP^4v!y-!DFd5Eof_D`8)(@@ z-*g(u`G1B6e$Kls z_ytY)VgGDvzvWqyp@nNo2*(x(!%uC^SavdzeBn%z2x$qSuRthEppPP~DIr`?OkpxD zs>3f4227zm<;#l>dVp6ZoP_`QDcn>b90Y=ri4vi8F)3gQ&z2Td(UOEx{OMC*t1Tah zEf=7S{UdS84++MkAV{I58YsKJ%kQ$YyGxzl&C)0w*^zus{Woo`p-%cWXX z2e;7JZ6L_wt~x0XMsY@oD;xW5X`fzfF5_AiO4$;+;vNe9&n5Ktc~|mQixTs}?WYQBj) z(zcfbv$)j6!MrO}m3E%i64es3 zBK;)W1padgTQ0+|K3lj#cIj_QmPy)PN%?%z14$>5mh0D%uTnm*t^6$VH-Dy3MNS|+ zl)PI;lw!uBLJG>`*AzFy?;(}0tFffBNFO?rKOR>2MZd{wd*5dR;!wUPsa#n3EF&+? z=BLjXSU!yMag>*b@Hz4`fm=-aT~dQ|H&Uq_UcI`weEv65hB~<8R9=X+aVu%RnY>Eh zM7b@K{4Y;0ZZ4>?YzLfdvkWIKwnKsIYffvB!|TYx$9_BeB<(Wg0eOQ}mC!cZAa`QJ zy23#3UUHk{klk(2JsXyp>FBrn@~?7ZSszep+x^LkQw zR=!Uv4ToPf%O#x+(-kV>gK z|NO3wC8YQAlVaTXLa}n{pX^*iUV7A;D=zz2f7V9MR5qx#LX}_AU+#Ue&Bf!K-pb#d*sqa&eVDHtx~Cuu?cF5-7FKekob(qY}%>3zK? z@@Iut_AOfxotX75TH3d4uqI3UPFr?*uW1EaZzpr{;^^ee>a|>NNKNLG#aXmMVQsU$ zEaI;d|M<1LwWv}zv()rcKaEWziu}|Yak6;f0d0gBcORjOuldZGAm1iz>gDi>}LzSS@#lLIp!Yiz`7HANou5q?WAUEWy!c@n<47r z5BF$p-AY{7F}*M_k~lRTdwdIG|GMLbW{{eR8+c9@8_9&ln+LYFxcy#juX+&VxtkbX zVh6EhSjJBM=nQ@Tt}yW}C!#n?y(msSaq4}V*Jaybo>F2Pj+-W)C+@gU+p#N+<1}#{ z7Ay?nWS63uuD;dFvz0Su>?8jI`vTs@ga`Oj*T#d|=(?R7x$8xd5m-^++u^ROH&3lO z`E5n_{o0J0VZ}~v`i5cIX&492Zld>oZMV7^nr>*g8Q6XjI_~a{IN^S6$I<-#?%q6F zw0Ophg+>sEsgp+xG4ukDw834GZ^uS%MHVesxo?YaJ*3U8`0S6 z7@rqk+o+u+7Cx+PS9cB9wPGvt9nZ4-*ffjEu_el80qop1(Lh^%kbilwr_m>wfO z+7M=e;aHBicB8hc9vHrxMsf;vV!CGLeXbbkMUQGj>t2wjffM_2=r~^N`2M-g%F!oA zD|?r(;IE<6tZTcFXKDqe0N`oa5yE&`+p(T{W^B5?WrmKQTd8q)so|Ojj_)T?7D#58=bvc9 zu0@&W1YY9Ap_eFtj6a-E(|eV(5ojtt$`wz=#4jq$4kIJ|$M{uCJ@R zp=YJ0=a{T^W`yxkM~gQ{=)=WxFKAW`2@;v9>w0XD6}S#{AHc8ge2!gZs?fg&$sx4h zsGk-S{-8}@TUd0-6(ZZ={CLNR>;6xhUgK*oMqo!A!XS+d zpS102p&fg9lt+$}_>t#k$B7r%fjTSdnue2Rh7}~a?;QUT>@U79xu9c1hK3gyhHpk0 zG(NBszZNBFoH?H18;mZG%@f4o+v@w)j4(2?*o&+n_B_iCB5_Ng_tcUgv;5rma@TY$ zKZxRDG|gilA_qB_CZw0F8Q9Gew+uM)n?V55ZMvQqmE2N*eqUBG}!ZdZDu|9kpX57 zwS)$oBw5m5c_Wpz%s}usC?~K-_*=46{NwjpSo09XVQjL*P`+oy%fy7LKDULE0B^V8fgW-NP9Lri!=Km2 z)hrGrVw0m{dK~U-rP%*@pq(VMZ02pGs1Q*U^@+95BbTEP)dp3D<#KH!@>k6+M0)QF z+L$iKmK2?umTjP(1gDA%UeG4h;K^ZX(m3BT%HlLUP5fj(edjt`Wz0Go<^+Ms`N=~wUURxspyoFf&W0UiX^tpN%*@W% zr_b=kwm&?;&8MbrdFQJz2^7<9#LK*mS;-f8_%26No-q{D4HDRdk+ALYXT|dmXiFLn z`d#cH$y}sMnj~xC_ygKIVx|e#Gm=PhQ{Ru`XkBGD`Q@b@8bFNL!m|>dPS(T5l`$m{$h;}#tqxYl0JG(Ns=88J`o!Omvh$cIBLQZ;~IQBV}HT`@udrdo{JI_+2g5!Hp5W@-FbIXJ9 zYXJuZ&BAoufc5a5^F-IX+N_2bq*>yde!zAFksE)$5)>qJ!5dmba{iDliL)rP9m6x$ zi(B5%Zmhvft;mb)6t3g@R&>6&c$l7dAwNCS58-qWXKZ{yTqk=7@+?c>80;r$1;rULa||!wr`Ci zk>#9$B+fZgPJEI0+a_&QEpsIk$gCK}*5Y$r7dK}+%CJz-!`MaP!-UAvODYHU9J4Ce zbA0b{BHEVRBVcBj zq0!~YEI-J;#NsulHtnz4cHJ=j%)p9({#YeHyR5Q=SdK*g#kTs)5q%hB^Z+BZ6BZ8I zU=^~EueJPDn^Qy4Vnfjfv9R(a^sXqjD>FGB0qhngfts0LS(za|W9wt2NE6{2E~ieMy0(Xo5a!-h;)VayoLYh@g*F{o$Y~6V=*zNrf>as0 zcAzauv3_iWY(rRCay3NT)G5CBH*I*sj$Fh69A7GYnGt=ZGP@YeV}H}S8!#a=GvGCz z&jcdln#$fq?GA5i^+o`HfDO9POJE^|udR4Z2D4jl%vYn*mA%QrEIFAWgr3LFr^sH< ziE_*MYGrQEDw}_u$97F<-!59sJS*{RPMPGFUlY;02yes96XaN!=BDMvezrmU;BD=S z28yN2=i6K(;-tf3uY)q>VvdpD`RZ*hX3p@P06RCeA*s;$djBMLRUZmVdnGU?;X==K zV>`C<*z!%!P1A2w*7q~L_utWKoIl%)5)&&ii)<^;zA483U7J)lIkEwiWyWcc8isv+ zMa=T`8JtTa&3x=@lyyue`&*FKxC#2`G0W8llIRl42X!|>?FrooO8d5W{_ooOS^&)? zh9B9e!q^kR4U%?dcOjqy=+R}zOw5q)6l;^D9KD<)0hu|8ZGN|TYHKL1vcd|D5QNCN zv7kRV1&f)Z8iZyNhR#iuS;eNt@4+r&Bla!qP}H0#p`-7K^WM{*sUcB0c<2+E0Vnl? zn~R=vhHjcBMlY6#VHn?UcF~=tDB!k_5RTl;cB5M=7gj{2Ti-!E+zqGP<)7N|Xk!q$ z>G@HP=!KAOEn1Ws9eOTD5*I|~#Xl$pjj&HFH;mw(DEguE!^)oG@WJ|+3GxeB%lL-g zqUHuNgxJRgV8@(1WZI7^dx>>B=%d8C_Yqp~Rg@^l&oC9SE%MvMH{NF?nG-}tY=lmd z$f=qC)$Fpygwaa_tUnGM2K$ej1MH4b%=ug(oCkfz@Vwgxu!NEQECCsgl(WzwJjX|7 z|3q=j=^tp@b=jVsa$q>x7VOaZY0)7P%EZ78P4>EpK22U;?>0x>kt7>fXujHu;&<<6z_%S8n7Q zPVPj$75}2LU$gd#^Yu}UBx0^shSuyl9_R0_{z@UWJhYfBFk{x%&rm>u;J>fHS|;+-8HL^F>P$-zz11jI)#$lfZLf^rmJ0N?cdb{b5;VcqRi)Sf|8^ z+`B6mD>zEfr2I0g_lj1My#!5Q3B0F2xW05QO3a?`{>jnMb*71OrTPeJ>$6F(0v7S~Rr z$huG5vX#EFVZnpo+Sqlpisg5I<&c7z9yv%K+i>lK`Nb9{0B$!kc>reGWVP21((8?g z>J+Y#n{jUCmh)g`W|M@)vf+BIfwhE>V?QB|8=|8%yFPYV zg3g4CD>lRbX>!0F!YFW33oRIr3;MSEWX0&&b%D6}K5Y!fYLo;FBZ*R}NhD8+D~9MZ zY6!C&DS--S;+hNM--#E7=%`JGO9PlUVHTm(#7~P0wqeBhPb}%qFcX{A^NnXJCyC`l z^H8%@YT19zSi^S9OKbfbOx_>oKqJ+i_ed%m)`rAf@`M(eUd2Wu?}LKHCfg#pzy z6E!!=v4(uh%F*)wAi6dE`fd!>g!6|+37k@=UF&5& zaW_{#VrMhPyAoi@;n+mZiVatUJo~lJmXc4OH)m19v9C^Oq?k6Vj;>B>otxGwZ(C% z+a_hH%~A$wfaUO~idbXo;YvPXic~4xOH$fqDf^rwzrY~nYMR?`0`A;49q~=Wa zmthv!oE=9xKHn=OA5KCW{S`|Z2P9nhA5G{6v~D4%-~>`8<>^29#LOv0HJtnO1K4`2 zm03LqM+e79g!N!RRR%=$VP$0jGQOd2FP`brXEtIZLOi3=r$K`9k*}+sQUW==ruQ_E zfo2X%H3O7ww1cy%eI<}z*YsKSh%x$xjbnkGi{rDaXOiXOUhP92SfrCd70*Udt z>WUJ`PwV<#4YnVZIL=Hwf#^)>In_0rK|a~wVB)8@ag*TQ&a&*>>Z;AP+l!l_xJE8b z?I?5|{K5D-ob#%4gdu%$&y3WyLSkV(Mw~#@^gQs;Sw3GqpajxXH&6v zyuNy938d*fa{T}SgJz9UY~xQnzbdAW&`+#EbQ$I<(F^P#-}ypS9Nw)jXkg&j?6iwR z%0cOLzF6g7PxUL7qZ*hF=nF)Ta->ljxfhgbH8FOWzCF<^A6j)#;}O%Y7hhNvwRg3> z8#caW*9_4PgVcx8FRG@+Q2R!*o_UJ(Lu>-~rH6woxVXCS=824M;JM3l)W^uPeG}ey zNp-KywVIeZN*~%_G`VdPiODgtEYG>LdXg~bv7Y0`=_AFNqx4A)SQ4B(L0rotWu#yF z2na_s!xLj!97Z@}7GGACp3P}>w1CWF0zrVb?FGT*&GPBBz-F1G&PE+xrYnlMcEc8k z>Ljt$a0v}LS60uhiVYuVJBYq9`tx->1$f#Cy1?~uzXhT|t0xhLkM!N5GvGc8uIgVp z%v_(nASCGG`H1~5S3j|NZj~K@TZ_=BG;{?u+ z!tF!YN%Ym~+@e;JS_6+1^cdn0b0hZI`WlC?8570-w7ocYCw;FPo>m!HM1Ej3VGV8& z$Bfgz(2egI+Q@K2pgpINd0iDIc=%*}cd>R4{mvR^9#L*(q@J_l{9_L-x5C=uOA`h4YoY7I47_nN$=Y~K6J9aYo(FqAyKr<$??YG zHg|8RE-O@lYo_Q2Hc)ik$iqoSxRe!)zEkZHFFc34v(QZ~R4Pa*b};}@!oSO+H){*# zDSdF#97dv~D84tc=*?QmH)}>5Bn0-Ldk0F);+w>;rs~rgxMl*!N4vzufX0-5k0$3$ z)Ax|-?vO5wBa8+9v#qFIE#SD~#nR zac&XEP0*bNp(u{CnCK@#hJ8Zw>!7)*8db z0?xxU`JuRYnr@(d<92Z4grIO9LHIus8>i`BJ;m!n>@-J#l5x@7s`JF9)9~Xo&80Lj zLW9#7GAhD3`G1KCd+0lL;jnj!97=zLgXL$6@q6ey*BlH7VwX5v1Drx>e7lIIGc()6 z@-q=gK2f#YjD8}no35{vUUNu+;H0#OAjzMKT?~DEEwLFP_ofQ~AU@9|*s*+SSaK%&>F# zBjOp?5eT5)CGOl=x4RMc+$69A2Qveovj5*zwA<-#;oBWOQJ+&owUD|1uHq24R^hIjcvQ zmbjgdBqAVoUr}BQ5d81}g5m@fU@iBHrMu~4D-VbZchkpI9=vSS;GHTDiHCR7CwI9y z5oh=<=2(Es`r*s=9z3@4$Ys5QM^-jocIM!zosU*0T=wYT#$~@4yj|t7%N`lLQ|IH= zv9d(;PSUp>_1o&O*{fDWvzIUGUAcH!UoT&7Z+;K`iRvuzeG88Bh^Y^0HxaJ~L0F*f}XI8gCd^F<9*1 zi%T6W-At-o*jmIUabEe!b0`~!Ir=oAx%##>2lq458^;xKL>xKK7pxF=3WJNC>x{r_$HsVbF7t#Z3RVIXd@*C4db<&%V+hM(H0|4KCz$L>Wq_Ddd8 z4HksLgYJTX&Evf)Uhwoo>j*2fL-@Iu5)!wg*Q(-A6@8ZmQRWDjE<_O-cu%4~Ro$lP zE8g_cWGs&>Cpc7arg|2>gVzxxO({wcq)Rw~?$;4h8Bz#k3@;lYhd(z()=pgs`~mfW zTQbC{d@Q8z2aFDX2S%BU7NLDUZ6%Z}{SafTQsp@``7A7`jdCkVV?IDn`4Y2ndm;Wy4%1xDKFL#W0n`JjPR_^nc}*c@V&0R z^}%&q5t58)6z+#bcXnr?0JFFWp=|sGkXT>^pDW56(1|TWa=7sPB(R-xI(rIIZt68K zPyDCo0vtQ!b#`v&?4lNBa(Eqm9YVHnMI-rr@4U{rMP*Z$M3s^kqX;KR`NL(W&OY(y zSy16+v-G)j8K$5|gd#={cGCJz@%k+N=!V=Xt_~5gBwiAP*7=<$7g(!iV`MZkzn*u3h}Fk{9_GcAi?``upnhh!dpT4nbOFCLXjXxJX>GuRf(qs%t48q?9Wg z2%3wv?V1n7$R!(v^ABGe(#cJrcFw$M%CZF752U zm%+6b0wU-@DR-Z&>`P+#96ce{;pSXPaIi*^nsIQMST4`chjaAN4LrXHYxoEf1!sdtY7kJVV;|ke^U&9>C2(aK=h^3L~T`6wgPoF5g z6L>jLfVfJ795jS@V?W)j`CQS$eZ>U=crHQUtHkuVcwbPFpkFuRGKdMV^JTGaE~Y5a zHaKOL;_H&Z5$o#CqYFm(;au91cLOo4IIa+hm*rm(v-ih#Cq%{M#Jh=JhWoW3xXG1CSjd$ z(0gAKKcA-`Ih=RPF&J6M9XO&=8#?#tIc7nj7wsa+2*03-PYExPV_(-v_(tPuM7VG-CN5|GOn({nPCg)mcchVhjNGO#Nr0mH#@avhMCF>UDx+#k*YHL ztx((0`Sc{2&WOak@LlU%3UFNx9eh@=k^Vq(+a2+;?=+Nw@?v&gn_Y= z2#RslC;X1+K2SFrSd|!0+%`i9k&hJfP{ej2_=$soeI0m^=U<8i!z0N(w7Y@`Xjz|_p($|Zl*YMHmxLoDS zTeCMyv|Wc67b#47CybiJ2r42)+4se)gY=!be#s3!qWCa0_QG;*>D*V2ZlbvQAbtC8 zLS9_#K^;agXZWFS?L4qYJU1PY{lr1~gyHhi42m)rFSr&(RPP6!Ru5wlw+_+A;^)T9 z!YILijaM!+ekghl)^|Mw&j$UV9>o^^O*i~e=invT60QW_)_h5pul}#jttpYAkslXD zOP1f>xlM2Hs&vt*eT(d$bPnn5U9xI1uRj%U(d6hwL^^s`E|m8{aH(*qfsjoc!4aJJ tXA;7!ajPyuk@L7Q%-ts=y+hcC=nIDB+`)oJN9K6$xrI{=d#d41`hN_B&!+$Y delta 256398 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

}D=)b1qXk3@24QP=x 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 Result { + let who = ensure_signed(origin)?; + >::insert(who.clone(), (to.clone(), lock_periods.clone())); + Self::deposit_event(RawEvent::Delegated(who, to)); + Ok(()) + } + + /// Undelegate vote. + fn undelegate(origin) -> Result { + let who = ensure_signed(origin)?; + >::remove(who.clone()); + Self::deposit_event(RawEvent::Undelegated(who)); + Ok(()) + } } } @@ -217,6 +235,9 @@ decl_storage! { /// voter when called with the referendum (you'll get the default `Vote` value otherwise). If you don't want to check /// `voters_for`, then you can also check for simple existence with `VoteOf::exists` first. pub VoteOf get(vote_of): map (ReferendumIndex, T::AccountId) => Vote; + + /// Get the account (and lock periods) to which another account is delegating vote. + pub Delegations get(delegations): linked_map T::AccountId => (T::AccountId, LockPeriods); } } @@ -230,6 +251,8 @@ decl_event!( NotPassed(ReferendumIndex), Cancelled(ReferendumIndex), Executed(ReferendumIndex, bool), + Delegated(AccountId, AccountId), + Undelegated(AccountId), } ); @@ -268,10 +291,9 @@ impl Module { /// Get the voters for the current proposal. pub fn tally(ref_index: ReferendumIndex) -> (BalanceOf, BalanceOf, BalanceOf) { - Self::voters_for(ref_index).iter() + let (approve, against, capital): (BalanceOf, BalanceOf, BalanceOf) = Self::voters_for(ref_index).iter() .map(|voter| ( - T::Currency::total_balance(voter), - Self::vote_of((ref_index, voter.clone())), + T::Currency::total_balance(voter), Self::vote_of((ref_index, voter.clone())) )) .map(|(bal, vote)| if vote.is_aye() { @@ -279,7 +301,42 @@ impl Module { } else { (Zero::zero(), bal * BalanceOf::::sa(vote.multiplier() as u64), bal) } - ).fold((Zero::zero(), Zero::zero(), Zero::zero()), |(a, b, c), (d, e, f)| (a + d, b + e, c + f)) + ).fold((Zero::zero(), Zero::zero(), Zero::zero()), |(a, b, c), (d, e, f)| (a + d, b + e, c + f)); + let (del_approve, del_against, del_capital) = Self::tally_delegation(ref_index); + (approve + del_approve, against + del_against, capital + del_capital) + } + + /// Get the delegated voters for the current proposal. + /// I think this goes into a worker once https://github.com/paritytech/substrate/issues/1458 is done. + fn tally_delegation(ref_index: ReferendumIndex) -> (BalanceOf, BalanceOf, BalanceOf) { + Self::voters_for(ref_index).iter() + .fold((Zero::zero(), Zero::zero(), Zero::zero()), |(approve_acc, against_acc, capital_acc), voter| { + let vote = Self::vote_of((ref_index, voter.clone())); + let (votes, balance) = Self::delegated_votes(ref_index, voter.clone(), vote.multiplier(), MAX_RECURSION_LIMIT); + if vote.is_aye() { + (approve_acc + votes, against_acc, capital_acc + balance) + } else { + (approve_acc, against_acc + votes, capital_acc + balance) + } + }) + } + + fn delegated_votes( + ref_index: ReferendumIndex, + to: T::AccountId, + min_lock_periods: LockPeriods, + recursion_limit: u32, + ) -> (BalanceOf, BalanceOf) { + if recursion_limit == 0 { return (Zero::zero(), Zero::zero()); } + >::enumerate() + .filter(|(delegator, (delegate, _))| *delegate == to && !>::exists(&(ref_index, delegator.clone()))) + .fold((Zero::zero(), Zero::zero()), |(votes_acc, balance_acc), (delegator, (_delegate, periods))| { + let lock_periods = if min_lock_periods <= periods { min_lock_periods } else { periods }; + let balance = T::Currency::total_balance(&delegator); + let votes = T::Currency::total_balance(&delegator) * BalanceOf::::sa(lock_periods as u64); + let (del_votes, del_balance) = Self::delegated_votes(ref_index, delegator, lock_periods, recursion_limit - 1); + (votes_acc + votes + del_votes, balance_acc + balance + del_balance) + }) } // Exposed mutables. @@ -564,6 +621,158 @@ mod tests { assert_eq!(Democracy::voters_for(r), vec![1]); assert_eq!(Democracy::vote_of((r, 1)), AYE); assert_eq!(Democracy::tally(r), (10, 0, 10)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + assert_eq!(Balances::free_balance(&42), 2); + }); + } + + #[test] + fn single_proposal_should_work_with_delegation() { + with_externalities(&mut new_test_ext(), || { + System::set_block_number(1); + + assert_ok!(propose_set_balance(1, 2, 1)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + System::set_block_number(2); + let r = 0; + + // Delegate vote. + assert_ok!(Democracy::delegate(Origin::signed(2), 1, 100)); + + assert_ok!(Democracy::vote(Origin::signed(1), r, AYE)); + + assert_eq!(Democracy::referendum_count(), 1); + assert_eq!(Democracy::voters_for(r), vec![1]); + assert_eq!(Democracy::vote_of((r, 1)), AYE); + + // Delegated vote is counted. + assert_eq!(Democracy::tally(r), (30, 0, 30)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + + assert_eq!(Balances::free_balance(&42), 2); + }); + } + + #[test] + fn single_proposal_should_work_with_cyclic_delegation() { + with_externalities(&mut new_test_ext(), || { + System::set_block_number(1); + + assert_ok!(propose_set_balance(1, 2, 1)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + System::set_block_number(2); + let r = 0; + + // Check behaviour with cycle. + assert_ok!(Democracy::delegate(Origin::signed(2), 1, 100)); + assert_ok!(Democracy::delegate(Origin::signed(3), 2, 100)); + assert_ok!(Democracy::delegate(Origin::signed(1), 3, 100)); + + assert_ok!(Democracy::vote(Origin::signed(1), r, AYE)); + + assert_eq!(Democracy::referendum_count(), 1); + assert_eq!(Democracy::voters_for(r), vec![1]); + + // Delegated vote is counted. + assert_eq!(Democracy::tally(r), (60, 0, 60)); + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + + assert_eq!(Balances::free_balance(&42), 2); + }); + } + + #[test] + /// If transactor already voted, delegated vote is overwriten. + fn single_proposal_should_work_with_vote_and_delegation() { + with_externalities(&mut new_test_ext(), || { + System::set_block_number(1); + + assert_ok!(propose_set_balance(1, 2, 1)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + System::set_block_number(2); + let r = 0; + + assert_ok!(Democracy::vote(Origin::signed(1), r, AYE)); + + // Vote. + assert_ok!(Democracy::vote(Origin::signed(2), r, AYE)); + + // Delegate vote. + assert_ok!(Democracy::delegate(Origin::signed(2), 1, 100)); + + assert_eq!(Democracy::referendum_count(), 1); + assert_eq!(Democracy::voters_for(r), vec![1, 2]); + assert_eq!(Democracy::vote_of((r, 1)), AYE); + + // Delegated vote is not counted. + assert_eq!(Democracy::tally(r), (30, 0, 30)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + + assert_eq!(Balances::free_balance(&42), 2); + }); + } + + #[test] + fn single_proposal_should_work_with_undelegation() { + with_externalities(&mut new_test_ext(), || { + System::set_block_number(1); + + assert_ok!(propose_set_balance(1, 2, 1)); + + // Delegate and undelegate vote. + assert_ok!(Democracy::delegate(Origin::signed(2), 1, 100)); + assert_ok!(Democracy::undelegate(Origin::signed(2))); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + System::set_block_number(2); + let r = 0; + assert_ok!(Democracy::vote(Origin::signed(1), r, AYE)); + + assert_eq!(Democracy::referendum_count(), 1); + assert_eq!(Democracy::voters_for(r), vec![1]); + assert_eq!(Democracy::vote_of((r, 1)), AYE); + + // Delegated vote is not counted. + assert_eq!(Democracy::tally(r), (10, 0, 10)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + + assert_eq!(Balances::free_balance(&42), 2); + }); + } + + #[test] + /// If transactor voted, delegated vote is overwriten. + fn single_proposal_should_work_with_delegation_and_vote() { + with_externalities(&mut new_test_ext(), || { + System::set_block_number(1); + + assert_ok!(propose_set_balance(1, 2, 1)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + System::set_block_number(2); + let r = 0; + + assert_ok!(Democracy::vote(Origin::signed(1), r, AYE)); + + // Delegate vote. + assert_ok!(Democracy::delegate(Origin::signed(2), 1, 100)); + + // Vote. + assert_ok!(Democracy::vote(Origin::signed(2), r, AYE)); + + assert_eq!(Democracy::referendum_count(), 1); + assert_eq!(Democracy::voters_for(r), vec![1, 2]); + assert_eq!(Democracy::vote_of((r, 1)), AYE); + + // Delegated vote is not counted. + assert_eq!(Democracy::tally(r), (30, 0, 30)); assert_eq!(Democracy::end_block(System::block_number()), Ok(())); @@ -774,6 +983,29 @@ mod tests { }); } + #[test] + fn lock_voting_should_work_with_delegation() { + with_externalities(&mut new_test_ext_with_public_delay(1), || { + System::set_block_number(1); + let r = Democracy::inject_referendum(1, set_balance_proposal(2), VoteThreshold::SuperMajorityApprove, 0).unwrap(); + assert_ok!(Democracy::vote(Origin::signed(1), r, Vote::new(false, 6))); + assert_ok!(Democracy::vote(Origin::signed(2), r, Vote::new(true, 5))); + assert_ok!(Democracy::vote(Origin::signed(3), r, Vote::new(true, 4))); + assert_ok!(Democracy::vote(Origin::signed(4), r, Vote::new(true, 3))); + assert_ok!(Democracy::delegate(Origin::signed(5), 2, 2)); + assert_ok!(Democracy::vote(Origin::signed(6), r, Vote::new(false, 1))); + + assert_eq!(Democracy::tally(r), (440, 120, 210)); + + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + + System::set_block_number(2); + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); + + assert_eq!(Balances::free_balance(&42), 2); + }); + } + #[test] fn controversial_low_turnout_voting_should_work() { with_externalities(&mut new_test_ext(), || { -- GitLab From ec6d07bfa4821cab015df4b264eeec44faa823d4 Mon Sep 17 00:00:00 2001 From: Roman Borschel Date: Tue, 19 Mar 2019 11:16:25 +0100 Subject: [PATCH 043/120] libp2p-0.5.0 (#1971) * Update libp2p. Add support for ed25519 node (network) keys. * Update networking to the changes from https://github.com/libp2p/rust-libp2p/pull/972. * Add support for using ed25519 keys for libp2p networking. * Add support for reading libp2p secret keys from (external) files. * Adapt to changes from https://github.com/libp2p/rust-libp2p/pull/992 * More tests. * Cosmetics * Deduplicate tests. * Remove quickcheck from tests that don't use extra random inputs. * Remove quickcheck. * Swap new/default impls for NetworkConfiguration. * Use libp2p-0.5.0 from crates.io. * Post-rebase update. * Remove unnecessary wildcard pattern. * Combine two overlapping tests. --- Cargo.lock | 179 ++++++----- core/cli/Cargo.toml | 3 + core/cli/src/lib.rs | 223 ++++++++++++-- core/cli/src/params.rs | 101 ++++++- core/network-libp2p/Cargo.toml | 6 +- core/network-libp2p/src/behaviour.rs | 25 +- core/network-libp2p/src/config.rs | 286 ++++++++++++++++++ .../src/custom_proto/behaviour.rs | 2 +- .../src/custom_proto/handler.rs | 100 +----- core/network-libp2p/src/lib.rs | 29 +- core/network-libp2p/src/secret.rs | 138 --------- core/network-libp2p/src/service_task.rs | 12 +- core/network-libp2p/src/traits.rs | 139 --------- core/network-libp2p/src/transport.rs | 6 +- core/network-libp2p/tests/test.rs | 2 +- core/network/src/config.rs | 2 +- core/network/src/lib.rs | 6 +- core/network/src/service.rs | 4 +- core/service/test/src/lib.rs | 22 +- 19 files changed, 757 insertions(+), 528 deletions(-) create mode 100644 core/network-libp2p/src/config.rs delete mode 100644 core/network-libp2p/src/secret.rs delete mode 100644 core/network-libp2p/src/traits.rs diff --git a/Cargo.lock b/Cargo.lock index 7e654e6729..ec9c313c71 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1286,29 +1286,29 @@ dependencies = [ [[package]] name = "libp2p" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core-derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-dns 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-floodsub 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-identify 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-kad 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-mdns 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-mplex 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-noise 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-ping 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-plaintext 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-ratelimit 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-secio 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-tcp 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-uds 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-websocket 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-yamux 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core-derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-dns 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-floodsub 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-identify 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-kad 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-mdns 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-mplex 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-noise 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-ping 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-plaintext 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-ratelimit 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-secio 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-tcp 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-uds 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-websocket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-yamux 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multihash 0.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)", @@ -1321,11 +1321,14 @@ dependencies = [ [[package]] name = "libp2p-core" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ + "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", + "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1337,18 +1340,23 @@ dependencies = [ "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "secp256k1 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "libp2p-core-derive" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1357,11 +1365,11 @@ dependencies = [ [[package]] name = "libp2p-dns" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-dns-unofficial 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1370,7 +1378,7 @@ dependencies = [ [[package]] name = "libp2p-floodsub" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1378,7 +1386,7 @@ dependencies = [ "cuckoofilter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1389,13 +1397,13 @@ dependencies = [ [[package]] name = "libp2p-identify" -version = "0.4.1" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.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)", @@ -1410,7 +1418,7 @@ dependencies = [ [[package]] name = "libp2p-kad" -version = "0.4.0" +version = "0.5.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)", @@ -1419,9 +1427,9 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-identify 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-ping 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-identify 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-ping 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multihash 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1438,13 +1446,13 @@ dependencies = [ [[package]] name = "libp2p-mdns" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1459,13 +1467,13 @@ dependencies = [ [[package]] name = "libp2p-mplex" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1475,28 +1483,31 @@ dependencies = [ [[package]] name = "libp2p-noise" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "snow 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", + "x25519-dalek 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "libp2p-ping" -version = "0.4.1" +version = "0.5.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)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.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)", @@ -1509,22 +1520,22 @@ dependencies = [ [[package]] name = "libp2p-plaintext" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "libp2p-ratelimit" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1532,18 +1543,17 @@ dependencies = [ [[package]] name = "libp2p-secio" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1559,11 +1569,11 @@ dependencies = [ [[package]] name = "libp2p-tcp" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1573,11 +1583,11 @@ dependencies = [ [[package]] name = "libp2p-uds" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1585,11 +1595,11 @@ dependencies = [ [[package]] name = "libp2p-websocket" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", "rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1600,14 +1610,14 @@ dependencies = [ [[package]] name = "libp2p-yamux" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "yamux 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3673,6 +3683,7 @@ dependencies = [ "substrate-state-machine 0.1.0", "substrate-telemetry 0.3.1", "sysinfo 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", "time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3970,7 +3981,7 @@ dependencies = [ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (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)", @@ -3978,6 +3989,7 @@ dependencies = [ "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)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", @@ -4988,6 +5000,16 @@ dependencies = [ "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "x25519-dalek" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "xdg" version = "2.2.0" @@ -5000,7 +5022,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "yamux" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5014,6 +5036,11 @@ dependencies = [ "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "zeroize" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [metadata] "checksum MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eaf9f0d0b1cc33a4d2aee14fb4b2eac03462ef4db29c8ac4057327d8a71ad86f" "checksum aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2e5b0458ea3beae0d1d8c0f3946564f8e10f90646cf78c06b4351052058d1ee" @@ -5161,24 +5188,24 @@ dependencies = [ "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)" = "e962c7641008ac010fa60a7dfdc1712449f29c44ef2d4702394aea943ee75047" "checksum libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3ad660d7cb8c5822cd83d10897b0f1f1526792737a179e73896152f85b88c2" -"checksum libp2p 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b6395d54c4c96fa175eabf4505e8a7bd616d916fa49fa27c60ceaa6d5d9b51bc" -"checksum libp2p-core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c8dc95c7fda9de223bc195b637290918e8decb18e63fd3d03005f84b8ce380b" -"checksum libp2p-core-derive 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5e9ff3bb639d0be41e1aff9d0d28715e54474e4d15e43aa4865bdec44867d8d3" -"checksum libp2p-dns 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "63d310aa56671539a2bce6124cf4326482278b0d0b841c3ba1514e44d8597096" -"checksum libp2p-floodsub 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8256d778f0dc087be409d8cbd081a11bc41ea27ddcd4862814e50e8cfa9c6df0" -"checksum libp2p-identify 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d128febfc8fe57b597e627f545bafea43ae009bf85cc9480b583996f244ab685" -"checksum libp2p-kad 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0691fcca7648369798c6466c61139d31dbb7e2afad311e44fcc4e220ce1e4d78" -"checksum libp2p-mdns 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "63289f296e39752180d8a45e024cc38d1028a6db41deab3943ff2ccb9d1224cd" -"checksum libp2p-mplex 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "791e375a6a230568f0d8f56f6236403de8e4bf4bd870c3c5f605fd1778da70b2" -"checksum libp2p-noise 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "70d28b0ca9eb9818d45e037b4a8a0915553c5c1f8d878d8d6170f60451ad37d2" -"checksum libp2p-ping 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "53db5fafd4ca0a32f339371198196795b8e14d8ecb360d8d03ada03299c12a10" -"checksum libp2p-plaintext 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4383404cba7e4483e0b7d78b3ac5e66f8b024233a5095df9da65d5a1e975d692" -"checksum libp2p-ratelimit 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bad4fe925d50cc886608ab3b3a7a962b5064ecc49db8b66fd063a950d469c757" -"checksum libp2p-secio 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "50f9a7641a314d54ad7797f0445685818edb4d3c2f21690cea900f12ea73501b" -"checksum libp2p-tcp 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4625bedbb083d676903a8ede4c5c42f9bf7bd5dee788f3cba29d8e01b785d253" -"checksum libp2p-uds 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac5f5d900e381b02ebea2f0621555a2f25a7735772355291aeb70fd9e0da3692" -"checksum libp2p-websocket 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96b6dfdd776a248d7494aeaf22f149b4d5f6784146546bc34f7b094c7162e141" -"checksum libp2p-yamux 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d5a6197ae647c963f5a711c6fb00ba07b9a2812df26f6284870221f654fe9313" +"checksum libp2p 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96bec5a2470cf03c5f0a74c55fc7b26fe969a1530d09d40e02ed76b287e3f9d9" +"checksum libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d53c885b93897902e5fdfd02340459bd940e970b73dd2cf506d4009e527489bf" +"checksum libp2p-core-derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e00ab475ca93c07ce539691003b682a0ff025f7dfb51e4ab29f5474457ded59b" +"checksum libp2p-dns 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "983bc7e80b6b5c89f5c6b674880bc058d37f481812692431914732ee2aeaf87a" +"checksum libp2p-floodsub 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aca5042008a7f7ddc53f5d40e6411ffebd66af22989a364303f2996fc5f39c79" +"checksum libp2p-identify 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9036ddde527bba0ae8a9037af7637c6c7a10ccdcdff6d2b00e7fe01f7620d400" +"checksum libp2p-kad 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b9f42265a4ad1c3a153465babcf64ea32d33b3872f4e2a27fb1dc3d1ed9301fd" +"checksum libp2p-mdns 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "260cb7644da51ee2680c6413d350cee35441e78699b38e63600397867e32e3ab" +"checksum libp2p-mplex 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "938678badaa29182f826308d86a89db53b99dd401121c551a979fd1b0a87af48" +"checksum libp2p-noise 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8820b79d0967de619e5dc991f84ffd5b888d06969bc62cf041412b2e9fc1e5c" +"checksum libp2p-ping 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2ad1b0983dbc2bf126583555c7a855ceaa28abfe764b9ede087d308b80ff7b2a" +"checksum libp2p-plaintext 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7cb42f7def0cb74781f6793f0fecbcfa0db79baee80adf18215abc30b1b6912c" +"checksum libp2p-ratelimit 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1f6971c2fc1cd938cd702b2320d3b5e3b5a353b1a3310de974769c3fa670d26e" +"checksum libp2p-secio 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "48a881b9c1b6ff0d35d985437d9f59d2d3ee2c529375aa188a978a1bd1d6f261" +"checksum libp2p-tcp 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "79583caf603d93dc43ee314409c57e070e9a70c760631eea91822a25e898d1af" +"checksum libp2p-uds 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d72965117a6b0ead9b78af8682b0ab6d8c3d71dbb9aadbcb947ef2ef78c2c8a" +"checksum libp2p-websocket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b69b73fcef9d58ae90c6742389a1d29e14dcf3a4ab30bba2f0ca7e984fa59f9f" +"checksum libp2p-yamux 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "563222e2c303516fa097686573f003ee74761eb8d6b6df4204ae1aa07f5dc16c" "checksum librocksdb-sys 5.14.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b9024327233e7fac7982440f73301c00046d438c5b1011e8f4e394226ce19007" "checksum libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "688e8d65e495567c2c35ea0001b26b9debf0b4ea11f8cccc954233b75fc3428a" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" @@ -5407,6 +5434,8 @@ dependencies = [ "checksum wincolor 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "561ed901ae465d6185fa7864d63fbd5720d0ef718366c9a4dc83cf6170d7e9ba" "checksum ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "329d3e6dd450a9c5c73024e1047f0be7e24121a68484eb0b5368977bee3cf8c3" "checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" +"checksum x25519-dalek 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4aca1ba6bec2719576bd20dfe5b24d9359552e616d10bff257e50cd85f745d17" "checksum xdg 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d089681aa106a86fade1b0128fb5daf07d5867a509ab036d99988dec80429a57" "checksum yaml-rust 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e66366e18dc58b46801afbf2ca7661a9f59cc8c5962c29892b6039b4f86fa992" -"checksum yamux 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "2269402a82beb59192319ad64a199850b6dcf3a14ef941206cdad3d7b9cfb598" +"checksum yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "302defd1bed8a9a6d43b82f0e5a50510dfdfbbd02c270c93ff9d6f3f5e2dea89" +"checksum zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8ddfeb6eee2fb3b262ef6e0898a52b7563bb8e0d5955a313b3cf2f808246ea14" diff --git a/core/cli/Cargo.toml b/core/cli/Cargo.toml index 2790cd5180..c5bf34063d 100644 --- a/core/cli/Cargo.toml +++ b/core/cli/Cargo.toml @@ -33,3 +33,6 @@ substrate-telemetry = { path = "../../core/telemetry" } keyring = { package = "substrate-keyring", path = "../keyring" } names = "0.11.0" structopt = "0.2" + +[dev-dependencies] +tempdir = "0.3" diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index 0344ae5178..1868d79d74 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -32,7 +32,8 @@ use service::{ FactoryGenesis, PruningMode, ChainSpec, }; use network::{ - Protocol, config::{NetworkConfiguration, NonReservedPeerMode, Secret}, + self, multiaddr::Protocol, + config::{NetworkConfiguration, NonReservedPeerMode, NodeKeyConfig}, build_multiaddr, }; use primitives::H256; @@ -50,6 +51,7 @@ pub use structopt::clap::App; use params::{ RunCmd, PurgeChainCmd, RevertCmd, ImportBlocksCmd, ExportBlocksCmd, BuildSpecCmd, NetworkConfigurationParams, SharedParams, MergeParameters, TransactionPoolParams, + NodeKeyParams, NodeKeyType }; pub use params::{NoCustom, CoreParams}; pub use traits::{GetLogFilter, AugmentClap}; @@ -61,7 +63,18 @@ use lazy_static::lazy_static; use futures::Future; use substrate_telemetry::TelemetryEndpoints; -const MAX_NODE_NAME_LENGTH: usize = 32; +/// The maximum number of characters for a node name. +const NODE_NAME_MAX_LENGTH: usize = 32; + +/// The file name of the node's Secp256k1 secret key inside the chain-specific +/// network config directory, if neither `--node-key` nor `--node-key-file` +/// is specified in combination with `--node-key-type=secp256k1`. +const NODE_KEY_SECP256K1_FILE: &str = "secret"; + +/// The file name of the node's Ed25519 secret key inside the chain-specific +/// network config directory, if neither `--node-key` nor `--node-key-file` +/// is specified in combination with `--node-key-type=ed25519`. +const NODE_KEY_ED25519_FILE: &str = "secret_ed25519"; /// Executable version. Used to pass version information from the root crate. pub struct VersionInfo { @@ -101,7 +114,7 @@ fn generate_node_name() -> String { let node_name = Generator::with_naming(Name::Numbered).next().unwrap(); let count = node_name.chars().count(); - if count < MAX_NODE_NAME_LENGTH { + if count < NODE_NAME_MAX_LENGTH { break node_name } }; @@ -133,14 +146,14 @@ fn base_path(cli: &SharedParams, version: &VersionInfo) -> PathBuf { ) } -fn create_input_err>(msg: T) -> error::Error { +fn input_err>(msg: T) -> error::Error { error::ErrorKind::Input(msg.into()).into() } /// Check whether a node name is considered as valid fn is_node_name_valid(_name: &str) -> Result<(), &str> { let name = _name.to_string(); - if name.chars().count() >= MAX_NODE_NAME_LENGTH { + if name.chars().count() >= NODE_NAME_MAX_LENGTH { return Err("Node name too long"); } @@ -231,14 +244,60 @@ where } } -fn parse_node_key(key: Option) -> error::Result> { - match key.map(|k| H256::from_str(&k)) { - Some(Ok(secret)) => Ok(Some(secret.into())), - Some(Err(err)) => Err(create_input_err(format!("Error parsing node key: {}", err))), - None => Ok(None), +/// Create a `NodeKeyConfig` from the given `NodeKeyParams` in the context +/// of an optional network config storage directory. +fn node_key_config

(params: NodeKeyParams, net_config_dir: &Option

) + -> error::Result +where + P: AsRef +{ + match params.node_key_type { + NodeKeyType::Secp256k1 => + params.node_key.as_ref().map(parse_secp256k1_secret).unwrap_or_else(|| + Ok(params.node_key_file + .or_else(|| net_config_file(net_config_dir, NODE_KEY_SECP256K1_FILE)) + .map(network::Secret::File) + .unwrap_or(network::Secret::New))) + .map(NodeKeyConfig::Secp256k1), + + NodeKeyType::Ed25519 => + params.node_key.as_ref().map(parse_ed25519_secret).unwrap_or_else(|| + Ok(params.node_key_file + .or_else(|| net_config_file(net_config_dir, NODE_KEY_ED25519_FILE)) + .map(network::Secret::File) + .unwrap_or(network::Secret::New))) + .map(NodeKeyConfig::Ed25519) } } +fn net_config_file

(net_config_dir: &Option

, name: &str) -> Option +where + P: AsRef +{ + net_config_dir.as_ref().map(|d| d.as_ref().join(name)) +} + +/// Create an error caused by an invalid node key argument. +fn invalid_node_key(e: impl std::fmt::Display) -> error::Error { + input_err(format!("Invalid node key: {}", e)) +} + +/// Parse a Secp256k1 secret key from a hex string into a `network::Secret`. +fn parse_secp256k1_secret(hex: &String) -> error::Result { + H256::from_str(hex).map_err(invalid_node_key).and_then(|bytes| + network::identity::secp256k1::SecretKey::from_bytes(bytes) + .map(network::Secret::Input) + .map_err(invalid_node_key)) +} + +/// Parse a Ed25519 secret key from a hex string into a `network::Secret`. +fn parse_ed25519_secret(hex: &String) -> error::Result { + H256::from_str(&hex).map_err(invalid_node_key).and_then(|bytes| + network::identity::ed25519::SecretKey::from_bytes(bytes) + .map(network::Secret::Input) + .map_err(invalid_node_key)) +} + /// Fill the given `PoolConfiguration` by looking at the cli parameters. fn fill_transaction_pool_configuration( options: &mut FactoryFullConfiguration, @@ -295,7 +354,7 @@ fn fill_network_configuration( config.public_addresses = Vec::new(); config.client_version = client_id; - config.use_secret = parse_node_key(cli.node_key)?; + config.node_key = node_key_config(cli.node_key_params, &config.net_config_path)?; config.in_peers = cli.in_peers; config.out_peers = cli.out_peers; @@ -324,7 +383,7 @@ where match is_node_name_valid(&config.name) { Ok(_) => (), Err(msg) => bail!( - create_input_err( + input_err( format!("Invalid node name '{}'. Reason: {}. If unsure, use none.", config.name, msg @@ -347,7 +406,7 @@ where Some(ref s) if s == "archive" => PruningMode::ArchiveAll, None => PruningMode::default(), Some(s) => PruningMode::keep_blocks( - s.parse().map_err(|_| create_input_err("Invalid pruning mode specified"))? + s.parse().map_err(|_| input_err("Invalid pruning mode specified"))? ), }; @@ -443,23 +502,19 @@ where // 9926-9949 Unassigned fn with_default_boot_node( - mut spec: ChainSpec>, - cli: &BuildSpecCmd, + spec: &mut ChainSpec>, + cli: BuildSpecCmd, version: &VersionInfo, -) -> error::Result>> +) -> error::Result<()> where F: ServiceFactory { if spec.boot_nodes().is_empty() { - let network_path = - Some(network_path(&base_path(&cli.shared_params, version), spec.id()).to_string_lossy().into()); - let network_key = parse_node_key(cli.node_key.clone())?; - - let network_keys = - network::obtain_private_key(&network_key, &network_path) - .map_err(|err| format!("Error obtaining network key: {}", err))?; - - let peer_id = network_keys.to_peer_id(); + let base_path = base_path(&cli.shared_params, version); + let storage_path = network_path(&base_path, spec.id()); + let node_key = node_key_config(cli.node_key_params, &Some(storage_path))?; + let keys = node_key.into_keypair()?; + let peer_id = keys.public().into_peer_id(); let addr = build_multiaddr![ Ip4([127, 0, 0, 1]), Tcp(30333u16), @@ -467,7 +522,7 @@ where ]; spec.add_boot_node(addr) } - Ok(spec) + Ok(()) } fn build_spec( @@ -480,9 +535,10 @@ where S: FnOnce(&str) -> Result>>, String>, { info!("Building chain spec"); - let spec = load_spec(&cli.shared_params, spec_factory)?; - let spec = with_default_boot_node::(spec, &cli, version)?; - let json = service::chain_ops::build_spec::>(spec, cli.raw)?; + let raw_output = cli.raw; + let mut spec = load_spec(&cli.shared_params, spec_factory)?; + with_default_boot_node::(&mut spec, cli, version)?; + let json = service::chain_ops::build_spec::>(spec, raw_output)?; print!("{}", json); @@ -707,6 +763,8 @@ fn kill_color(s: &str) -> String { #[cfg(test)] mod tests { use super::*; + use tempdir::TempDir; + use network::identity::{secp256k1, ed25519}; #[test] fn tests_node_name_good() { @@ -722,4 +780,111 @@ mod tests { assert!(is_node_name_valid("www.visit.me").is_err()); assert!(is_node_name_valid("email@domain").is_err()); } + + #[test] + fn test_node_key_config_input() { + fn secret_input(net_config_dir: Option) -> error::Result<()> { + NodeKeyType::variants().into_iter().try_for_each(|t| { + let node_key_type = NodeKeyType::from_str(t).unwrap(); + let sk = match node_key_type { + NodeKeyType::Secp256k1 => secp256k1::SecretKey::generate().as_ref().to_vec(), + NodeKeyType::Ed25519 => ed25519::SecretKey::generate().as_ref().to_vec() + }; + let params = NodeKeyParams { + node_key_type, + node_key: Some(format!("{:x}", H256::from_slice(sk.as_ref()))), + node_key_file: None + }; + node_key_config(params, &net_config_dir).and_then(|c| match c { + NodeKeyConfig::Secp256k1(network::Secret::Input(ref ski)) + if node_key_type == NodeKeyType::Secp256k1 && + &sk[..] == ski.as_ref() => Ok(()), + NodeKeyConfig::Ed25519(network::Secret::Input(ref ski)) + if node_key_type == NodeKeyType::Ed25519 && + &sk[..] == ski.as_ref() => Ok(()), + _ => Err(input_err("Unexpected node key config")) + }) + }) + } + + assert!(secret_input(None).is_ok()); + assert!(secret_input(Some("x".to_string())).is_ok()); + } + + #[test] + fn test_node_key_config_file() { + fn secret_file(net_config_dir: Option) -> error::Result<()> { + NodeKeyType::variants().into_iter().try_for_each(|t| { + let node_key_type = NodeKeyType::from_str(t).unwrap(); + let tmp = TempDir::new("alice")?; + let file = tmp.path().join(format!("{}_mysecret", t)).to_path_buf(); + let params = NodeKeyParams { + node_key_type, + node_key: None, + node_key_file: Some(file.clone()) + }; + node_key_config(params, &net_config_dir).and_then(|c| match c { + NodeKeyConfig::Secp256k1(network::Secret::File(ref f)) + if node_key_type == NodeKeyType::Secp256k1 && f == &file => Ok(()), + NodeKeyConfig::Ed25519(network::Secret::File(ref f)) + if node_key_type == NodeKeyType::Ed25519 && f == &file => Ok(()), + _ => Err(input_err("Unexpected node key config")) + }) + }) + } + + assert!(secret_file(None).is_ok()); + assert!(secret_file(Some("x".to_string())).is_ok()); + } + + #[test] + fn test_node_key_config_default() { + fn with_def_params(f: F) -> error::Result<()> + where + F: Fn(NodeKeyParams) -> error::Result<()> + { + NodeKeyType::variants().into_iter().try_for_each(|t| { + let node_key_type = NodeKeyType::from_str(t).unwrap(); + f(NodeKeyParams { + node_key_type, + node_key: None, + node_key_file: None + }) + }) + } + + fn no_config_dir() -> error::Result<()> { + with_def_params(|params| { + let typ = params.node_key_type; + node_key_config::(params, &None) + .and_then(|c| match c { + NodeKeyConfig::Secp256k1(network::Secret::New) + if typ == NodeKeyType::Secp256k1 => Ok(()), + NodeKeyConfig::Ed25519(network::Secret::New) + if typ == NodeKeyType::Ed25519 => Ok(()), + _ => Err(input_err("Unexpected node key config")) + }) + }) + } + + fn some_config_dir(net_config_dir: String) -> error::Result<()> { + with_def_params(|params| { + let dir = PathBuf::from(net_config_dir.clone()); + let typ = params.node_key_type; + node_key_config(params, &Some(net_config_dir.clone())) + .and_then(move |c| match c { + NodeKeyConfig::Secp256k1(network::Secret::File(ref f)) + if typ == NodeKeyType::Secp256k1 && + f == &dir.join(NODE_KEY_SECP256K1_FILE) => Ok(()), + NodeKeyConfig::Ed25519(network::Secret::File(ref f)) + if typ == NodeKeyType::Ed25519 && + f == &dir.join(NODE_KEY_ED25519_FILE) => Ok(()), + _ => Err(input_err("Unexpected node key config")) + }) + }) + } + + assert!(no_config_dir().is_ok()); + assert!(some_config_dir("x".to_string()).is_ok()); + } } diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index ace9959678..d84f202501 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -68,7 +68,7 @@ pub struct SharedParams { #[structopt(long = "base-path", short = "d", value_name = "PATH", parse(from_os_str))] pub base_path: Option, - ///Sets a custom logging filter + /// Sets a custom logging filter #[structopt(short = "l", long = "log", value_name = "LOG_PATTERN")] pub log: Option, } @@ -98,10 +98,6 @@ pub struct NetworkConfigurationParams { #[structopt(long = "port", value_name = "PORT")] pub port: Option, - /// Specify node secret key (64-character hex string) - #[structopt(long = "node-key", value_name = "KEY")] - pub node_key: Option, - /// Specify the number of outgoing connections we're trying to maintain #[structopt(long = "out-peers", value_name = "OUT_PEERS", default_value = "25")] pub out_peers: u32, @@ -109,6 +105,93 @@ pub struct NetworkConfigurationParams { /// Specify the maximum number of incoming connections we're accepting #[structopt(long = "in-peers", value_name = "IN_PEERS", default_value = "25")] pub in_peers: u32, + + #[allow(missing_docs)] + #[structopt(flatten)] + pub node_key_params: NodeKeyParams +} + +arg_enum! { + #[derive(Debug, Copy, Clone, PartialEq, Eq)] + pub enum NodeKeyType { + Secp256k1, + Ed25519 + } +} + +/// Parameters used to create the `NodeKeyConfig`, which determines the keypair +/// used for libp2p networking. +#[derive(Debug, StructOpt, Clone)] +pub struct NodeKeyParams { + /// The secret key to use for libp2p networking. + /// + /// The value is a string that is parsed according to the choice of + /// `--node-key-type` as follows: + /// + /// `secp256k1`: + /// The value is parsed as a hex-encoded Secp256k1 32 bytes secret key, + /// i.e. 64 hex characters. + /// + /// `ed25519`: + /// The value is parsed as a hex-encoded Ed25519 32 bytes secret key, + /// i.e. 64 hex characters. + /// + /// The value of this option takes precedence over `--node-key-file`. + /// + /// WARNING: Secrets provided as command-line arguments are easily exposed. + /// Use of this option should be limited to development and testing. To use + /// an externally managed secret key, use `--node-key-file` instead. + #[structopt(long = "node-key", value_name = "KEY")] + pub node_key: Option, + + /// The type of secret key to use for libp2p networking. + /// + /// The secret key of the node is obtained as follows: + /// + /// * If the `--node-key` option is given, the value is parsed as a secret key + /// according to the type. See the documentation for `--node-key`. + /// + /// * If the `--node-key-file` option is given, the secret key is read from the + /// specified file. See the documentation for `--node-key-file`. + /// + /// * Otherwise, the secret key is read from a file with a predetermined, + /// type-specific name from the chain-specific network config directory + /// inside the base directory specified by `--base-dir`. If this file does + /// not exist, it is created with a newly generated secret key of the + /// chosen type. + /// + /// The node's secret key determines the corresponding public key and hence the + /// node's peer ID in the context of libp2p. + /// + /// NOTE: The current default key type is `secp256k1` for a transition period only + /// but will eventually change to `ed25519` in a future release. To continue using + /// `secp256k1` keys, use `--node-key-type=secp256k1`. + #[structopt( + long = "node-key-type", + value_name = "TYPE", + raw( + possible_values = "&NodeKeyType::variants()", + case_insensitive = "true", + default_value = r#""Secp256k1""# + ) + )] + pub node_key_type: NodeKeyType, + + /// The file from which to read the node's secret key to use for libp2p networking. + /// + /// The contents of the file are parsed according to the choice of `--node-key-type` + /// as follows: + /// + /// `secp256k1`: + /// The file must contain an unencoded 32 bytes Secp256k1 secret key. + /// + /// `ed25519`: + /// The file must contain an unencoded 32 bytes Ed25519 secret key. + /// + /// If the file does not exist, it is created with a newly generated secret key of + /// the chosen type. + #[structopt(long = "node-key-file", value_name = "FILE")] + pub node_key_file: Option } /// Parameters used to create the pool configuration. @@ -169,7 +252,7 @@ pub struct RunCmd { #[structopt(long = "name", value_name = "NAME")] pub name: Option, - /// Should not connect to the Substrate telemetry server (telemetry is on by default on global chains) + /// Disable connecting to the Substrate telemetry server (telemetry is on by default on global chains). #[structopt(long = "no-telemetry")] pub no_telemetry: bool, @@ -343,9 +426,9 @@ pub struct BuildSpecCmd { #[structopt(flatten)] pub shared_params: SharedParams, - /// Specify node secret key (64-character hex string) - #[structopt(long = "node-key", value_name = "KEY")] - pub node_key: Option, + #[allow(missing_docs)] + #[structopt(flatten)] + pub node_key_params: NodeKeyParams, } impl_get_log_filter!(BuildSpecCmd); diff --git a/core/network-libp2p/Cargo.toml b/core/network-libp2p/Cargo.toml index ab784ac978..35761c8c57 100644 --- a/core/network-libp2p/Cargo.toml +++ b/core/network-libp2p/Cargo.toml @@ -13,7 +13,7 @@ bytes = "0.4" error-chain = { version = "0.12", default-features = false } fnv = "1.0" futures = "0.1" -libp2p = { version = "0.4.0", default-features = false, features = ["secio-secp256k1", "libp2p-websocket"] } +libp2p = { version = "0.5.0", default-features = false, features = ["secio-secp256k1", "libp2p-websocket"] } parking_lot = "0.7.1" lazy_static = "1.2" log = "0.4" @@ -27,3 +27,7 @@ tokio-io = "0.1" tokio-timer = "0.2" unsigned-varint = { version = "0.2.1", features = ["codec"] } void = "1.0" + +[dev-dependencies] +tempdir = "0.3" + diff --git a/core/network-libp2p/src/behaviour.rs b/core/network-libp2p/src/behaviour.rs index ba79e0ef32..38ec22b0ac 100644 --- a/core/network-libp2p/src/behaviour.rs +++ b/core/network-libp2p/src/behaviour.rs @@ -25,7 +25,7 @@ use libp2p::identify::{Identify, IdentifyEvent, protocol::IdentifyInfo}; use libp2p::kad::{Kademlia, KademliaOut, KadConnectionType}; use libp2p::ping::{Ping, PingEvent}; use log::{debug, trace, warn}; -use std::{cmp, io, time::Duration, time::Instant}; +use std::{cmp, io, fmt, time::Duration, time::Instant}; use tokio_io::{AsyncRead, AsyncWrite}; use tokio_timer::Delay; use void; @@ -445,3 +445,26 @@ where } } +/// The severity of misbehaviour of a peer that is reported. +#[derive(Debug, PartialEq, Eq, Clone)] +pub enum Severity { + /// Peer is timing out. Could be bad connectivity of overload of work on either of our sides. + Timeout, + /// Peer has been notably useless. E.g. unable to answer a request that we might reasonably consider + /// it could answer. + Useless(String), + /// Peer has behaved in an invalid manner. This doesn't necessarily need to be Byzantine, but peer + /// must have taken concrete action in order to behave in such a way which is wantanly invalid. + Bad(String), +} + +impl fmt::Display for Severity { + fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { + match self { + Severity::Timeout => write!(fmt, "Timeout"), + Severity::Useless(r) => write!(fmt, "Useless ({})", r), + Severity::Bad(r) => write!(fmt, "Bad ({})", r), + } + } +} + diff --git a/core/network-libp2p/src/config.rs b/core/network-libp2p/src/config.rs new file mode 100644 index 0000000000..61fae1a398 --- /dev/null +++ b/core/network-libp2p/src/config.rs @@ -0,0 +1,286 @@ +// Copyright 2015-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 . + +//! Libp2p network configuration. + +use libp2p::identity::{Keypair, secp256k1, ed25519}; +use libp2p::{Multiaddr, multiaddr::Protocol}; +use std::error::Error; +use std::{io::{self, Write}, iter, fs, net::Ipv4Addr, path::{Path, PathBuf}}; + +/// Network service configuration. +#[derive(Clone)] +pub struct NetworkConfiguration { + /// Directory path to store general network configuration. None means nothing will be saved. + pub config_path: Option, + /// Directory path to store network-specific configuration. None means nothing will be saved. + pub net_config_path: Option, + /// Multiaddresses to listen for incoming connections. + pub listen_addresses: Vec, + /// Multiaddresses to advertise. Detected automatically if empty. + pub public_addresses: Vec, + /// List of initial node addresses + pub boot_nodes: Vec, + /// The node key configuration, which determines the node's network identity keypair. + pub node_key: NodeKeyConfig, + /// Maximum allowed number of incoming connections. + pub in_peers: u32, + /// Number of outgoing connections we're trying to maintain. + pub out_peers: u32, + /// List of reserved node addresses. + pub reserved_nodes: Vec, + /// The non-reserved peer mode. + pub non_reserved_mode: NonReservedPeerMode, + /// Client identifier. Sent over the wire for debugging purposes. + pub client_version: String, + /// Name of the node. Sent over the wire for debugging purposes. + pub node_name: String, +} + +impl Default for NetworkConfiguration { + fn default() -> Self { + NetworkConfiguration { + config_path: None, + net_config_path: None, + listen_addresses: Vec::new(), + public_addresses: Vec::new(), + boot_nodes: Vec::new(), + node_key: NodeKeyConfig::Secp256k1(Secret::New), + in_peers: 25, + out_peers: 75, + reserved_nodes: Vec::new(), + non_reserved_mode: NonReservedPeerMode::Accept, + client_version: "unknown".into(), + node_name: "unknown".into(), + } + } +} + +impl NetworkConfiguration { + /// Create a new instance of default settings. + pub fn new() -> Self { + Self::default() + } + + /// Create new default configuration for localhost-only connection with random port (useful for testing) + pub fn new_local() -> NetworkConfiguration { + let mut config = NetworkConfiguration::new(); + config.listen_addresses = vec![ + iter::once(Protocol::Ip4(Ipv4Addr::new(127, 0, 0, 1))) + .chain(iter::once(Protocol::Tcp(0))) + .collect() + ]; + config + } +} + +/// The policy for connections to non-reserved peers. +#[derive(Clone, Debug, PartialEq, Eq)] +pub enum NonReservedPeerMode { + /// Accept them. This is the default. + Accept, + /// Deny them. + Deny, +} + +impl NonReservedPeerMode { + /// Attempt to parse the peer mode from a string. + pub fn parse(s: &str) -> Option { + match s { + "accept" => Some(NonReservedPeerMode::Accept), + "deny" => Some(NonReservedPeerMode::Deny), + _ => None, + } + } +} + +/// The configuration of a node's secret key, describing the type of key +/// and how it is obtained. A node's identity keypair is the result of +/// the evaluation of the node key configuration. +#[derive(Clone)] +pub enum NodeKeyConfig { + /// A Secp256k1 secret key configuration. + Secp256k1(Secret), + /// A Ed25519 secret key configuration. + Ed25519(Secret) +} + +/// The options for obtaining a Secp256k1 secret key. +pub type Secp256k1Secret = Secret; + +/// The options for obtaining a Ed25519 secret key. +pub type Ed25519Secret = Secret; + +/// The configuration options for obtaining a secret key `K`. +#[derive(Clone)] +pub enum Secret { + /// Use the given secret key `K`. + Input(K), + /// Read the secret key from a file. If the file does not exist, + /// it is created with a newly generated secret key `K`. The format + /// of the file is determined by `K`: + /// + /// * `secp256k1::SecretKey`: An unencoded 32 bytes Secp256k1 secret key. + /// * `ed25519::SecretKey`: An unencoded 32 bytes Ed25519 secret key. + File(PathBuf), + /// Always generate a new secret key `K`. + New +} + +impl NodeKeyConfig { + /// Evaluate a `NodeKeyConfig` to obtain an identity `Keypair`: + /// + /// * If the secret is configured as input, the corresponding keypair is returned. + /// + /// * If the secret is configured as a file, it is read from that file, if it exists. + /// Otherwise a new secret is generated and stored. In either case, the + /// keypair obtained from the secret is returned. + /// + /// * If the secret is configured to be new, it is generated and the corresponding + /// keypair is returned. + pub fn into_keypair(self) -> io::Result { + use NodeKeyConfig::*; + match self { + Secp256k1(Secret::New) => + Ok(Keypair::generate_secp256k1()), + + Secp256k1(Secret::Input(k)) => + Ok(Keypair::Secp256k1(k.into())), + + Secp256k1(Secret::File(f)) => + get_secret(f, + |mut b| secp256k1::SecretKey::from_bytes(&mut b), + secp256k1::SecretKey::generate) + .map(secp256k1::Keypair::from) + .map(Keypair::Secp256k1), + + Ed25519(Secret::New) => + Ok(Keypair::generate_ed25519()), + + Ed25519(Secret::Input(k)) => + Ok(Keypair::Ed25519(k.into())), + + Ed25519(Secret::File(f)) => + get_secret(f, + |mut b| ed25519::SecretKey::from_bytes(&mut b), + ed25519::SecretKey::generate) + .map(ed25519::Keypair::from) + .map(Keypair::Ed25519), + } + } +} + +/// Load a secret key from a file, if it exists, or generate a +/// new secret key and write it to that file. In either case, +/// the secret key is returned. +fn get_secret(file: P, parse: F, generate: G) -> io::Result +where + P: AsRef, + F: for<'r> FnOnce(&'r mut [u8]) -> Result, + G: FnOnce() -> K, + E: Error + Send + Sync + 'static, + K: AsRef<[u8]> +{ + std::fs::read(&file) + .and_then(|mut sk_bytes| + parse(&mut sk_bytes) + .map_err(|e| io::Error::new(io::ErrorKind::InvalidData, e))) + .or_else(|e| { + if e.kind() == io::ErrorKind::NotFound { + file.as_ref().parent().map_or(Ok(()), fs::create_dir_all)?; + let sk = generate(); + write_secret_file(file, sk.as_ref())?; + Ok(sk) + } else { + Err(e) + } + }) +} + +/// Write secret bytes to a file. +fn write_secret_file

(path: P, sk_bytes: &[u8]) -> io::Result<()> +where + P: AsRef +{ + let mut file = open_secret_file(&path)?; + file.write_all(sk_bytes) +} + +/// Opens a file containing a secret key in write mode. +#[cfg(unix)] +fn open_secret_file

(path: P) -> io::Result +where + P: AsRef +{ + use std::os::unix::fs::OpenOptionsExt; + fs::OpenOptions::new() + .write(true) + .create_new(true) + .mode(0o600) + .open(path) +} + +/// Opens a file containing a secret key in write mode. +#[cfg(not(unix))] +fn open_secret_file

(path: P) -> Result +where + P: AsRef +{ + fs::OpenOptions::new() + .write(true) + .create_new(true) + .open(path) +} + +#[cfg(test)] +mod tests { + use super::*; + use tempdir::TempDir; + + fn secret_bytes(kp: &Keypair) -> Vec { + match kp { + Keypair::Ed25519(p) => p.secret().as_ref().iter().cloned().collect(), + Keypair::Secp256k1(p) => p.secret().as_ref().iter().cloned().collect(), + _ => panic!("Unexpected keypair.") + } + } + + #[test] + fn test_secret_file() { + let tmp = TempDir::new("x").unwrap(); + std::fs::remove_dir(tmp.path()).unwrap(); // should be recreated + let file = tmp.path().join("x").to_path_buf(); + let kp1 = NodeKeyConfig::Ed25519(Secret::File(file.clone())).into_keypair().unwrap(); + let kp2 = NodeKeyConfig::Ed25519(Secret::File(file.clone())).into_keypair().unwrap(); + assert!(file.is_file() && secret_bytes(&kp1) == secret_bytes(&kp2)) + } + + #[test] + fn test_secret_input() { + let sk = secp256k1::SecretKey::generate(); + let kp1 = NodeKeyConfig::Secp256k1(Secret::Input(sk.clone())).into_keypair().unwrap(); + let kp2 = NodeKeyConfig::Secp256k1(Secret::Input(sk)).into_keypair().unwrap(); + assert!(secret_bytes(&kp1) == secret_bytes(&kp2)); + } + + #[test] + fn test_secret_new() { + let kp1 = NodeKeyConfig::Ed25519(Secret::New).into_keypair().unwrap(); + let kp2 = NodeKeyConfig::Ed25519(Secret::New).into_keypair().unwrap(); + assert!(secret_bytes(&kp1) != secret_bytes(&kp2)); + } +} + diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index 1332dfd0df..ab64b42daf 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -71,7 +71,7 @@ pub struct CustomProtos { /// List of the IDs of peers that are forbidden, and the moment their ban expires. banned_peers: Vec<(PeerId, Instant)>, - /// When this delay expires, we need to synchronize our active connectons with the + /// When this delay expires, we need to synchronize our active connections with the /// network topology. next_connect_to_nodes: Delay, diff --git a/core/network-libp2p/src/custom_proto/handler.rs b/core/network-libp2p/src/custom_proto/handler.rs index bb326923e1..947dc2ddd4 100644 --- a/core/network-libp2p/src/custom_proto/handler.rs +++ b/core/network-libp2p/src/custom_proto/handler.rs @@ -132,11 +132,6 @@ enum PerProtocolState { reenable: bool, }, - /// We are trying to shut down the connection and thus should refuse any incoming connection. - /// Contains substreams that are being closed. Once all the substreams are closed, we close - /// the connection. - ShuttingDown(SmallVec<[RegisteredProtocolSubstream; 6]>), - /// We sometimes temporarily switch to this state during processing. If we are in this state /// at the beginning of a method, that means something bad happend in the source code. Poisoned, @@ -232,10 +227,6 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { return_value = None; PerProtocolState::Disabled { shutdown, reenable: true } } - PerProtocolState::ShuttingDown(list) => { - return_value = None; - PerProtocolState::ShuttingDown(list) - } }; return_value @@ -289,61 +280,11 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { PerProtocolState::Disabled { shutdown, .. } => PerProtocolState::Disabled { shutdown, reenable: false }, - PerProtocolState::ShuttingDown(list) => - PerProtocolState::ShuttingDown(list), }; return_value } - /// Shuts down all the substream. Returns `true` if the protocol was closed, `false` if it was - /// already closed or not open yet. - fn shutdown(&mut self) -> bool { - let mut return_value = false; - self.state = match mem::replace(&mut self.state, PerProtocolState::Poisoned) { - PerProtocolState::Poisoned => { - error!(target: "sub-libp2p", "Handler is in poisoned state"); - PerProtocolState::Poisoned - } - - PerProtocolState::Init { substreams: mut list, .. } => { - for s in &mut list { s.shutdown(); } - PerProtocolState::ShuttingDown(list) - } - - PerProtocolState::Opening { .. } => { - PerProtocolState::ShuttingDown(SmallVec::new()) - } - - PerProtocolState::BackCompat { mut substream, mut shutdown } => { - substream.shutdown(); - shutdown.push(substream); - return_value = true; - PerProtocolState::ShuttingDown(shutdown.into_iter().collect()) - } - - PerProtocolState::Normal(state) => { - let mut out: SmallVec<[_; 6]> = SmallVec::new(); - out.extend(state.outgoing_substream.into_iter()); - out.extend(state.incoming_substreams.into_iter()); - out.extend(state.pending_response.into_iter().map(|(_, s)| s)); - out.extend(state.pending_send_back.into_iter().map(|(_, s)| s)); - for s in &mut out { - s.shutdown(); - } - out.extend(state.shutdown.into_iter()); - return_value = true; - PerProtocolState::ShuttingDown(out) - } - - PerProtocolState::Disabled { shutdown, .. } => - PerProtocolState::ShuttingDown(shutdown), - PerProtocolState::ShuttingDown(list) => - PerProtocolState::ShuttingDown(list), - }; - return_value - } - /// Polls the state for events. Optionally returns an event to produce. #[must_use] fn poll(&mut self) @@ -353,7 +294,7 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { self.state = match mem::replace(&mut self.state, PerProtocolState::Poisoned) { PerProtocolState::Poisoned => { error!(target: "sub-libp2p", "Handler is in poisoned state; shutting down"); - return_value = Some(ProtocolsHandlerEvent::Shutdown); + return_value = None; PerProtocolState::Poisoned } @@ -468,12 +409,6 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { PerProtocolState::Disabled { shutdown, reenable } } } - - PerProtocolState::ShuttingDown(mut list) => { - shutdown_list(&mut list); - return_value = None; - PerProtocolState::ShuttingDown(list) - } }; return_value @@ -793,12 +728,6 @@ where shutdown.push(substream); PerProtocolState::Disabled { shutdown, reenable: false } } - - PerProtocolState::ShuttingDown(mut list) => { - substream.shutdown(); - list.push(substream); - PerProtocolState::ShuttingDown(list) - } }; } @@ -909,9 +838,6 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { } } - #[inline] - fn inject_inbound_closed(&mut self) {} - #[inline] fn inject_dial_upgrade_error(&mut self, protocol_id: Self::OutboundOpenInfo, err: ProtocolsHandlerUpgrErr) { let is_severe = match err { @@ -942,7 +868,7 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { PerProtocolState::Init { .. } | PerProtocolState::Opening { .. } => {} PerProtocolState::BackCompat { .. } | PerProtocolState::Normal { .. } => keep_forever = true, - PerProtocolState::Disabled { .. } | PerProtocolState::ShuttingDown(_) | + PerProtocolState::Disabled { .. } | PerProtocolState::Poisoned => return KeepAlive::Now, } } @@ -954,18 +880,6 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { } } - fn shutdown(&mut self) { - for protocol in &mut self.protocols { - if protocol.shutdown() { - let event = CustomProtosHandlerOut::CustomProtocolClosed { - protocol_id: protocol.protocol.id(), - result: Ok(()) - }; - self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); - } - } - } - fn poll( &mut self, ) -> Poll< @@ -985,16 +899,6 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { } } - // Shut down the node if everything is closed. - let can_shut_down = self.protocols.iter().all(|p| - match p.state { - PerProtocolState::ShuttingDown(ref list) if list.is_empty() => true, - _ => false - }); - if can_shut_down { - return Ok(Async::Ready(ProtocolsHandlerEvent::Shutdown)) - } - Ok(Async::NotReady) } } diff --git a/core/network-libp2p/src/lib.rs b/core/network-libp2p/src/lib.rs index a6336e4163..362a47c19d 100644 --- a/core/network-libp2p/src/lib.rs +++ b/core/network-libp2p/src/lib.rs @@ -17,29 +17,38 @@ //! Networking layer of Substrate. mod behaviour; +mod config; mod custom_proto; -mod secret; mod service_task; -mod traits; mod transport; +pub use crate::behaviour::Severity; +pub use crate::config::*; pub use crate::custom_proto::{CustomMessage, CustomMessageId, RegisteredProtocol}; -pub use crate::secret::obtain_private_key; +pub use crate::config::{NetworkConfiguration, NodeKeyConfig, Secret, NonReservedPeerMode}; pub use crate::service_task::{start_service, Service, ServiceEvent}; -pub use crate::traits::{NetworkConfiguration, NodeIndex, NodeId, NonReservedPeerMode}; -pub use crate::traits::{ProtocolId, Secret, Severity}; -pub use libp2p::{Multiaddr, multiaddr::Error as MultiaddrError, multiaddr::Protocol, build_multiaddr, PeerId, core::PublicKey}; +pub use libp2p::{Multiaddr, multiaddr, build_multiaddr}; +pub use libp2p::{identity, PeerId, core::PublicKey}; use libp2p::core::nodes::ConnectedPoint; use serde_derive::Serialize; use std::{collections::{HashMap, HashSet}, error, fmt, time::Duration}; +/// Protocol / handler id +pub type ProtocolId = [u8; 3]; + +/// Node public key +pub type NodeId = PeerId; + +/// Local (temporary) peer session ID. +pub type NodeIndex = usize; + /// Parses a string address and returns the component, if valid. pub fn parse_str_addr(addr_str: &str) -> Result<(PeerId, Multiaddr), ParseErr> { let mut addr: Multiaddr = addr_str.parse()?; let who = match addr.pop() { - Some(Protocol::P2p(key)) => PeerId::from_multihash(key) + Some(multiaddr::Protocol::P2p(key)) => PeerId::from_multihash(key) .map_err(|_| ParseErr::InvalidPeerId)?, _ => return Err(ParseErr::PeerIdMissing), }; @@ -51,7 +60,7 @@ pub fn parse_str_addr(addr_str: &str) -> Result<(PeerId, Multiaddr), ParseErr> { #[derive(Debug)] pub enum ParseErr { /// Error while parsing the multiaddress. - MultiaddrParse(MultiaddrError), + MultiaddrParse(multiaddr::Error), /// Multihash of the peer ID is invalid. InvalidPeerId, /// The peer ID is missing from the address. @@ -78,8 +87,8 @@ impl error::Error for ParseErr { } } -impl From for ParseErr { - fn from(err: MultiaddrError) -> ParseErr { +impl From for ParseErr { + fn from(err: multiaddr::Error) -> ParseErr { ParseErr::MultiaddrParse(err) } } diff --git a/core/network-libp2p/src/secret.rs b/core/network-libp2p/src/secret.rs deleted file mode 100644 index f7a25d000c..0000000000 --- a/core/network-libp2p/src/secret.rs +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright 2018-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 . - -use crate::NetworkConfiguration; -use libp2p::secio; -use log::{trace, warn}; -use rand::Rng; -use std::io::{Error as IoError, ErrorKind as IoErrorKind, Read, Write}; -use std::{fs, path::Path}; - -// File where the private key is stored. -const SECRET_FILE: &str = "secret"; - -/// Obtains or generates the local private key using the configuration. -pub fn obtain_private_key_from_config( - config: &NetworkConfiguration -) -> Result { - obtain_private_key(&config.use_secret, &config.net_config_path) -} - -/// Obtains or generates the local private key using the configuration. -pub fn obtain_private_key( - secret: &Option<[u8; 32]>, - net_config_path: &Option, -) -> Result { - if let Some(ref secret) = secret { - // Key was specified in the configuration. - secio::SecioKeyPair::secp256k1_raw_key(&secret[..]) - .map_err(|err| IoError::new(IoErrorKind::InvalidData, err)) - } else { - if let Some(ref path) = net_config_path { - fs::create_dir_all(Path::new(path))?; - // Try fetch the key from a the file containing the secret. - let secret_path = Path::new(path).join(SECRET_FILE); - match load_private_key_from_file(&secret_path) { - Ok(s) => Ok(s), - Err(err) => { - // Failed to fetch existing file ; generate a new key - trace!(target: "sub-libp2p", - "Failed to load existing secret key file {:?}, generating new key ; err = {:?}", - secret_path, - err - ); - Ok(gen_key_and_try_write_to_file(&secret_path)) - } - } - - } else { - // No path in the configuration, nothing we can do except generate - // a new key. - let mut key: [u8; 32] = [0; 32]; - rand::rngs::EntropyRng::new().fill(&mut key); - Ok(secio::SecioKeyPair::secp256k1_raw_key(&key) - .expect("randomly-generated key with correct len should always be valid")) - } - } -} - -/// Tries to load a private key from a file located at the given path. -fn load_private_key_from_file

(path: P) - -> Result - where P: AsRef { - fs::File::open(path) - .and_then(|mut file| { - // We are in 2018 and there is still no method on `std::io::Read` - // that directly returns a `Vec`. - let mut buf = Vec::new(); - file.read_to_end(&mut buf).map(|_| buf) - }) - .and_then(|content| - secio::SecioKeyPair::secp256k1_raw_key(&content) - .map_err(|err| IoError::new(IoErrorKind::InvalidData, err)) - ) -} - -/// Generates a new secret key and tries to write it to the given file. -/// Doesn't error if we couldn't open or write to the file. -fn gen_key_and_try_write_to_file

(path: P) -> secio::SecioKeyPair - where P: AsRef { - let raw_key: [u8; 32] = rand::rngs::EntropyRng::new().gen(); - let secio_key = secio::SecioKeyPair::secp256k1_raw_key(&raw_key) - .expect("randomly-generated key with correct len should always be valid"); - - // And store the newly-generated key in the file if possible. - // Errors that happen while doing so are ignored. - match open_priv_key_file(&path) { - Ok(mut file) => - match file.write_all(&raw_key) { - Ok(()) => (), - Err(err) => warn!(target: "sub-libp2p", - "Failed to write secret key in file {:?} ; err = {:?}", - path.as_ref(), - err - ), - }, - Err(err) => warn!(target: "sub-libp2p", - "Failed to store secret key in file {:?} ; err = {:?}", - path.as_ref(), - err - ), - } - - secio_key -} - -/// Opens a file containing a private key in write mode. -#[cfg(unix)] -fn open_priv_key_file

(path: P) -> Result - where P: AsRef { - use std::os::unix::fs::OpenOptionsExt; - fs::OpenOptions::new() - .write(true) - .create_new(true) - .mode(256 | 128) // 0o600 in decimal - .open(path) -} -/// Opens a file containing a private key in write mode. -#[cfg(not(unix))] -fn open_priv_key_file

(path: P) -> Result - where P: AsRef { - fs::OpenOptions::new() - .write(true) - .create_new(true) - .open(path) -} diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index 4cab435c8b..0c23fc4120 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -15,7 +15,7 @@ // along with Substrate. If not, see . use crate::{ - behaviour::Behaviour, behaviour::BehaviourOut, secret::obtain_private_key_from_config, + behaviour::Behaviour, behaviour::BehaviourOut, transport, NetworkState, NetworkStatePeer, NetworkStateNotConnectedPeer }; use crate::custom_proto::{CustomMessage, RegisteredProtocol, RegisteredProtocols}; @@ -49,15 +49,15 @@ where TProtos: IntoIterator>, } // Private and public keys configuration. - let local_private_key = obtain_private_key_from_config(&config)?; - let local_public_key = local_private_key.to_public_key(); - let local_peer_id = local_public_key.clone().into_peer_id(); + let local_identity = config.node_key.clone().into_keypair()?; + let local_public = local_identity.public(); + let local_peer_id = local_public.clone().into_peer_id(); // Build the swarm. let (mut swarm, bandwidth) = { let registered_custom = RegisteredProtocols(registered_custom.into_iter().collect()); - let behaviour = Behaviour::new(&config, local_public_key.clone(), registered_custom); - let (transport, bandwidth) = transport::build_transport(local_private_key); + let behaviour = Behaviour::new(&config, local_public, registered_custom); + let (transport, bandwidth) = transport::build_transport(local_identity); (Swarm::new(transport, behaviour, local_peer_id.clone()), bandwidth) }; diff --git a/core/network-libp2p/src/traits.rs b/core/network-libp2p/src/traits.rs deleted file mode 100644 index 63ccda54d1..0000000000 --- a/core/network-libp2p/src/traits.rs +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2015-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 . - -use std::{fmt, iter, net::Ipv4Addr, str}; -use libp2p::{multiaddr::Protocol, Multiaddr, PeerId}; - -/// Protocol / handler id -pub type ProtocolId = [u8; 3]; - -/// Node public key -pub type NodeId = PeerId; - -/// Local (temporary) peer session ID. -pub type NodeIndex = usize; - -/// secio secret key; -pub type Secret = [u8; 32]; - -/// Network service configuration -#[derive(Debug, PartialEq, Clone)] -pub struct NetworkConfiguration { - /// Directory path to store general network configuration. None means nothing will be saved - pub config_path: Option, - /// Directory path to store network-specific configuration. None means nothing will be saved - pub net_config_path: Option, - /// Multiaddresses to listen for incoming connections. - pub listen_addresses: Vec, - /// Multiaddresses to advertise. Detected automatically if empty. - pub public_addresses: Vec, - /// List of initial node addresses - pub boot_nodes: Vec, - /// Use provided node key instead of default - pub use_secret: Option, - /// Maximum allowed number of incoming connections - pub in_peers: u32, - /// Number of outgoing connections we're trying to maintain - pub out_peers: u32, - /// List of reserved node addresses. - pub reserved_nodes: Vec, - /// The non-reserved peer mode. - pub non_reserved_mode: NonReservedPeerMode, - /// Client identifier. Sent over the wire for debugging purposes. - pub client_version: String, - /// Name of the node. Sent over the wire for debugging purposes. - pub node_name: String, -} - -impl Default for NetworkConfiguration { - fn default() -> Self { - NetworkConfiguration::new() - } -} - -impl NetworkConfiguration { - /// Create a new instance of default settings. - pub fn new() -> Self { - NetworkConfiguration { - config_path: None, - net_config_path: None, - listen_addresses: Vec::new(), - public_addresses: Vec::new(), - boot_nodes: Vec::new(), - use_secret: None, - in_peers: 25, - out_peers: 75, - reserved_nodes: Vec::new(), - non_reserved_mode: NonReservedPeerMode::Accept, - client_version: "unknown".into(), - node_name: "unknown".into(), - } - } - - /// Create new default configuration for localhost-only connection with random port (useful for testing) - pub fn new_local() -> NetworkConfiguration { - let mut config = NetworkConfiguration::new(); - config.listen_addresses = vec![ - iter::once(Protocol::Ip4(Ipv4Addr::new(127, 0, 0, 1))) - .chain(iter::once(Protocol::Tcp(0))) - .collect() - ]; - config - } -} - -/// The severity of misbehaviour of a peer that is reported. -#[derive(Debug, PartialEq, Eq, Clone)] -pub enum Severity { - /// Peer is timing out. Could be bad connectivity of overload of work on either of our sides. - Timeout, - /// Peer has been notably useless. E.g. unable to answer a request that we might reasonably consider - /// it could answer. - Useless(String), - /// Peer has behaved in an invalid manner. This doesn't necessarily need to be Byzantine, but peer - /// must have taken concrete action in order to behave in such a way which is wantanly invalid. - Bad(String), -} - -impl fmt::Display for Severity { - fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { - match self { - Severity::Timeout => write!(fmt, "Timeout"), - Severity::Useless(r) => write!(fmt, "Useless ({})", r), - Severity::Bad(r) => write!(fmt, "Bad ({})", r), - } - } -} - -/// Non-reserved peer modes. -#[derive(Clone, Debug, PartialEq, Eq)] -pub enum NonReservedPeerMode { - /// Accept them. This is the default. - Accept, - /// Deny them. - Deny, -} - -impl NonReservedPeerMode { - /// Attempt to parse the peer mode from a string. - pub fn parse(s: &str) -> Option { - match s { - "accept" => Some(NonReservedPeerMode::Accept), - "deny" => Some(NonReservedPeerMode::Deny), - _ => None, - } - } -} diff --git a/core/network-libp2p/src/transport.rs b/core/network-libp2p/src/transport.rs index de0639a7b5..404fdb6bda 100644 --- a/core/network-libp2p/src/transport.rs +++ b/core/network-libp2p/src/transport.rs @@ -17,7 +17,7 @@ use futures::prelude::*; use libp2p::{ InboundUpgradeExt, OutboundUpgradeExt, PeerId, Transport, - mplex, secio, yamux, tcp, dns, websocket, bandwidth + mplex, identity, secio, yamux, tcp, dns, websocket, bandwidth }; use libp2p::core::{self, transport::boxed::Boxed, muxing::StreamMuxerBox}; use std::{io, sync::Arc, time::Duration, usize}; @@ -29,7 +29,7 @@ pub use self::bandwidth::BandwidthSinks; /// Returns a `BandwidthSinks` object that allows querying the average bandwidth produced by all /// the connections spawned with this transport. pub fn build_transport( - local_private_key: secio::SecioKeyPair + keypair: identity::Keypair ) -> (Boxed<(PeerId, StreamMuxerBox), io::Error>, Arc) { let mut mplex_config = mplex::MplexConfig::new(); mplex_config.max_buffer_len_behaviour(mplex::MaxBufferBehaviour::Block); @@ -42,7 +42,7 @@ pub fn build_transport( // TODO: rework the transport creation (https://github.com/libp2p/rust-libp2p/issues/783) let transport = transport - .with_upgrade(secio::SecioConfig::new(local_private_key)) + .with_upgrade(secio::SecioConfig::new(keypair)) .and_then(move |out, endpoint| { let peer_id = out.remote_key.into_peer_id(); let peer_id2 = peer_id.clone(); diff --git a/core/network-libp2p/tests/test.rs b/core/network-libp2p/tests/test.rs index 979cf9b044..a514b0b9bb 100644 --- a/core/network-libp2p/tests/test.rs +++ b/core/network-libp2p/tests/test.rs @@ -17,7 +17,7 @@ use futures::{future, stream, prelude::*, try_ready}; use rand::seq::SliceRandom; use std::{io, iter}; -use substrate_network_libp2p::{CustomMessage, Protocol, ServiceEvent, build_multiaddr}; +use substrate_network_libp2p::{CustomMessage, ServiceEvent, multiaddr::Protocol, build_multiaddr}; /// Builds two services. The second one and further have the first one as its bootstrap node. /// This is to be used only for testing, and a panic will happen if something goes wrong. diff --git a/core/network/src/config.rs b/core/network/src/config.rs index 7dd4b52b31..2491fc21c4 100644 --- a/core/network/src/config.rs +++ b/core/network/src/config.rs @@ -16,7 +16,7 @@ //! Configuration for the networking layer of Substrate. -pub use network_libp2p::{NonReservedPeerMode, NetworkConfiguration, Secret}; +pub use network_libp2p::{NonReservedPeerMode, NetworkConfiguration, NodeKeyConfig, Secret}; use bitflags::bitflags; use crate::chain::Client; diff --git a/core/network/src/lib.rs b/core/network/src/lib.rs index de4597d597..296eaeb00c 100644 --- a/core/network/src/lib.rs +++ b/core/network/src/lib.rs @@ -42,9 +42,11 @@ pub use service::{Service, FetchFuture, TransactionPool, ManageNetwork, NetworkM pub use protocol::{ProtocolStatus, PeerInfo, Context}; pub use sync::{Status as SyncStatus, SyncState}; pub use network_libp2p::{ - NodeIndex, ProtocolId, Severity, Protocol, Multiaddr, + identity, multiaddr, + NodeIndex, ProtocolId, Severity, Multiaddr, NetworkState, NetworkStatePeer, NetworkStateNotConnectedPeer, NetworkStatePeerEndpoint, - obtain_private_key, build_multiaddr, PeerId, PublicKey + NodeKeyConfig, Secret, Secp256k1Secret, Ed25519Secret, + build_multiaddr, PeerId, PublicKey }; pub use message::{generic as generic_message, RequestId, Status as StatusMessage, ConsensusEngineId}; pub use error::Error; diff --git a/core/network/src/service.rs b/core/network/src/service.rs index 34f82d2ddc..9485203a0d 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -23,7 +23,7 @@ use futures::{Async, Future, Stream, stream, sync::oneshot, sync::mpsc}; use parking_lot::{Mutex, RwLock}; use network_libp2p::{ProtocolId, NetworkConfiguration, NodeIndex, Severity}; use network_libp2p::{start_service, parse_str_addr, Service as NetworkService, ServiceEvent as NetworkServiceEvent}; -use network_libp2p::{Protocol as Libp2pProtocol, RegisteredProtocol, NetworkState}; +use network_libp2p::{multiaddr, RegisteredProtocol, NetworkState}; use consensus::import_queue::{ImportQueue, Link}; use crate::consensus_gossip::ConsensusGossip; use crate::message::{Message, ConsensusEngineId}; @@ -361,7 +361,7 @@ impl> ManageNetwork for Service .next() .map(|addr| { let mut addr = addr.clone(); - addr.append(Libp2pProtocol::P2p(network.peer_id().clone().into())); + addr.append(multiaddr::Protocol::P2p(network.peer_id().clone().into())); addr.to_string() }); ret diff --git a/core/service/test/src/lib.rs b/core/service/test/src/lib.rs index 3a3c4515f7..72372f9292 100644 --- a/core/service/test/src/lib.rs +++ b/core/service/test/src/lib.rs @@ -25,7 +25,6 @@ use futures::{Future, Stream}; use tempdir::TempDir; use tokio::runtime::Runtime; use tokio::timer::Interval; -use primitives::blake2_256; use service::{ ServiceFactory, Configuration, @@ -34,8 +33,8 @@ use service::{ Roles, FactoryExtrinsic, }; -use network::{Protocol, SyncProvider, ManageNetwork}; -use network::config::{NetworkConfiguration, NonReservedPeerMode}; +use network::{multiaddr, SyncProvider, ManageNetwork}; +use network::config::{NetworkConfiguration, NodeKeyConfig, Secret, NonReservedPeerMode}; use sr_primitives::traits::As; use sr_primitives::generic::BlockId; use consensus::{ImportBlock, BlockImport}; @@ -64,10 +63,6 @@ impl TestNet { } } -fn node_private_key_string(index: u32) -> String { - format!("N{}", index) -} - fn node_config ( index: u32, spec: &FactoryChainSpec, @@ -83,17 +78,20 @@ fn node_config ( keys.push(seed); } + let config_path = Some(String::from(root.join("network").to_str().unwrap())); + let net_config_path = config_path.clone(); + let network_config = NetworkConfiguration { - config_path: Some(root.join("network").to_str().unwrap().into()), - net_config_path: Some(root.join("network").to_str().unwrap().into()), + config_path, + net_config_path, listen_addresses: vec! [ - iter::once(Protocol::Ip4(Ipv4Addr::new(127, 0, 0, 1))) - .chain(iter::once(Protocol::Tcp(base_port + index as u16))) + iter::once(multiaddr::Protocol::Ip4(Ipv4Addr::new(127, 0, 0, 1))) + .chain(iter::once(multiaddr::Protocol::Tcp(base_port + index as u16))) .collect() ], public_addresses: vec![], boot_nodes: vec![], - use_secret: Some(blake2_256(node_private_key_string(index).as_bytes())), + node_key: NodeKeyConfig::Ed25519(Secret::New), in_peers: 50, out_peers: 450, reserved_nodes: vec![], -- GitLab From 48b185db658908e9933beb2072395c01a55511f7 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Tue, 19 Mar 2019 11:56:56 +0100 Subject: [PATCH 044/120] Remove support for multiple network protocols (#2005) * Remove support multiple network protocols * Address concerns * Add back debug_asserts --- core/network-libp2p/src/behaviour.rs | 54 +- .../src/custom_proto/behaviour.rs | 156 ++-- .../src/custom_proto/handler.rs | 699 ++++++++---------- core/network-libp2p/src/custom_proto/mod.rs | 4 +- .../src/custom_proto/upgrade.rs | 96 --- core/network-libp2p/src/lib.rs | 5 +- core/network-libp2p/src/service_task.rs | 49 +- core/network-libp2p/tests/test.rs | 20 +- core/network/src/on_demand.rs | 28 +- core/network/src/service.rs | 32 +- core/network/src/test/mod.rs | 4 +- 11 files changed, 433 insertions(+), 714 deletions(-) diff --git a/core/network-libp2p/src/behaviour.rs b/core/network-libp2p/src/behaviour.rs index 38ec22b0ac..c71df6f7c5 100644 --- a/core/network-libp2p/src/behaviour.rs +++ b/core/network-libp2p/src/behaviour.rs @@ -14,8 +14,8 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use crate::custom_proto::{CustomProtos, CustomProtosOut, RegisteredProtocols}; -use crate::{NetworkConfiguration, ProtocolId}; +use crate::custom_proto::{CustomProto, CustomProtoOut, RegisteredProtocol}; +use crate::NetworkConfiguration; use futures::prelude::*; use libp2p::NetworkBehaviour; use libp2p::core::{Multiaddr, PeerId, ProtocolsHandler, PublicKey}; @@ -37,7 +37,7 @@ pub struct Behaviour { /// Periodically ping nodes, and close the connection if it's unresponsive. ping: Ping, /// Custom protocols (dot, bbq, sub, etc.). - custom_protocols: CustomProtos, + custom_protocols: CustomProto, /// Discovers nodes of the network. Defined below. discovery: DiscoveryBehaviour, /// Periodically identifies the remote and responds to incoming requests. @@ -51,7 +51,7 @@ pub struct Behaviour { impl Behaviour { /// Builds a new `Behaviour`. // TODO: redundancy between config and local_public_key (https://github.com/libp2p/rust-libp2p/issues/745) - pub fn new(config: &NetworkConfiguration, local_public_key: PublicKey, protocols: RegisteredProtocols) -> Self { + pub fn new(config: &NetworkConfiguration, local_public_key: PublicKey, protocols: RegisteredProtocol) -> Self { let identify = { let proto_version = "/substrate/1.0".to_string(); let user_agent = format!("{} ({})", config.client_version, config.node_name); @@ -59,7 +59,7 @@ impl Behaviour { }; let local_peer_id = local_public_key.into_peer_id(); - let custom_protocols = CustomProtos::new(config, &local_peer_id, protocols); + let custom_protocols = CustomProto::new(config, &local_peer_id, protocols); Behaviour { ping: Ping::new(), @@ -70,15 +70,15 @@ impl Behaviour { } } - /// Sends a message to a peer using the given custom protocol. + /// Sends a message to a peer. /// /// Has no effect if the custom protocol is not open with the given peer. /// /// Also note that even we have a valid open substream, it may in fact be already closed /// without us knowing, in which case the packet will not be received. #[inline] - pub fn send_custom_message(&mut self, target: &PeerId, protocol_id: ProtocolId, data: TMessage) { - self.custom_protocols.send_packet(target, protocol_id, data) + pub fn send_custom_message(&mut self, target: &PeerId, data: TMessage) { + self.custom_protocols.send_packet(target, data) } /// Returns the number of peers in the topology. @@ -149,9 +149,9 @@ impl Behaviour { self.custom_protocols.is_enabled(peer_id) } - /// Returns the list of protocols we have open with the given peer. - pub fn open_protocols<'a>(&'a self, peer_id: &'a PeerId) -> impl Iterator + 'a { - self.custom_protocols.open_protocols(peer_id) + /// Returns true if we have an open protocol with the given peer. + pub fn is_open(&self, peer_id: &PeerId) -> bool { + self.custom_protocols.is_open(peer_id) } /// Disconnects the custom protocols from a peer. @@ -184,8 +184,6 @@ impl Behaviour { pub enum BehaviourOut { /// Opened a custom protocol with the remote. CustomProtocolOpen { - /// Identifier of the protocol. - protocol_id: ProtocolId, /// Version of the protocol that has been opened. version: u8, /// Id of the node we have opened a connection with. @@ -198,8 +196,6 @@ pub enum BehaviourOut { CustomProtocolClosed { /// Id of the peer we were connected to. peer_id: PeerId, - /// Identifier of the protocol. - protocol_id: ProtocolId, /// Reason why the substream closed. If `Ok`, then it's a graceful exit (EOF). result: io::Result<()>, }, @@ -208,8 +204,6 @@ pub enum BehaviourOut { CustomMessage { /// Id of the peer the message came from. peer_id: PeerId, - /// Protocol which generated the message. - protocol_id: ProtocolId, /// Message that has been received. message: TMessage, }, @@ -218,8 +212,6 @@ pub enum BehaviourOut { Clogged { /// Id of the peer the message came from. peer_id: PeerId, - /// Protocol which generated the message. - protocol_id: ProtocolId, /// Copy of the messages that are within the buffer, for further diagnostic. messages: Vec, }, @@ -241,20 +233,20 @@ pub enum BehaviourOut { }, } -impl From> for BehaviourOut { - fn from(other: CustomProtosOut) -> BehaviourOut { +impl From> for BehaviourOut { + fn from(other: CustomProtoOut) -> BehaviourOut { match other { - CustomProtosOut::CustomProtocolOpen { protocol_id, version, peer_id, endpoint } => { - BehaviourOut::CustomProtocolOpen { protocol_id, version, peer_id, endpoint } + CustomProtoOut::CustomProtocolOpen { version, peer_id, endpoint } => { + BehaviourOut::CustomProtocolOpen { version, peer_id, endpoint } } - CustomProtosOut::CustomProtocolClosed { protocol_id, peer_id, result } => { - BehaviourOut::CustomProtocolClosed { protocol_id, peer_id, result } + CustomProtoOut::CustomProtocolClosed { peer_id, result } => { + BehaviourOut::CustomProtocolClosed { peer_id, result } } - CustomProtosOut::CustomMessage { protocol_id, peer_id, message } => { - BehaviourOut::CustomMessage { protocol_id, peer_id, message } + CustomProtoOut::CustomMessage { peer_id, message } => { + BehaviourOut::CustomMessage { peer_id, message } } - CustomProtosOut::Clogged { protocol_id, peer_id, messages } => { - BehaviourOut::Clogged { protocol_id, peer_id, messages } + CustomProtoOut::Clogged { peer_id, messages } => { + BehaviourOut::Clogged { peer_id, messages } } } } @@ -266,8 +258,8 @@ impl NetworkBehaviourEventProcess for Behaviou } } -impl NetworkBehaviourEventProcess> for Behaviour { - fn inject_event(&mut self, event: CustomProtosOut) { +impl NetworkBehaviourEventProcess> for Behaviour { + fn inject_event(&mut self, event: CustomProtoOut) { self.events.push(event.into()); } } diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index ab64b42daf..473d2200ff 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -14,10 +14,10 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use crate::custom_proto::handler::{CustomProtosHandler, CustomProtosHandlerOut, CustomProtosHandlerIn}; +use crate::custom_proto::handler::{CustomProtoHandler, CustomProtoHandlerOut, CustomProtoHandlerIn}; use crate::custom_proto::topology::NetTopology; -use crate::custom_proto::upgrade::{CustomMessage, RegisteredProtocols}; -use crate::{NetworkConfiguration, NonReservedPeerMode, ProtocolId}; +use crate::custom_proto::upgrade::{CustomMessage, RegisteredProtocol}; +use crate::{NetworkConfiguration, NonReservedPeerMode}; use crate::parse_str_addr; use fnv::{FnvHashMap, FnvHashSet}; use futures::prelude::*; @@ -35,22 +35,22 @@ const NODES_FILE: &str = "nodes.json"; const PEER_DISABLE_DURATION: Duration = Duration::from_secs(5 * 60); /// Network behaviour that handles opening substreams for custom protocols with other nodes. -pub struct CustomProtos { +pub struct CustomProto { /// List of protocols to open with peers. Never modified. - registered_protocols: RegisteredProtocols, + protocol: RegisteredProtocol, /// Topology of the network. topology: NetTopology, - /// List of custom protocols that we have open with remotes. - open_protocols: Vec<(PeerId, ProtocolId)>, + /// List of peers for which the custom protocol is open. + opened_peers: FnvHashSet, /// List of peer handlers that were enabled. /// /// Note that it is possible for a peer to be in the shutdown process, in which case it will - /// not be in this list but will be present in `open_protocols`. + /// not be in this list but will be present in `opened_peers`. /// It is also possible that we have *just* enabled a peer, in which case it will be in this - /// list but not in `open_protocols`. + /// list but not in `opened_peers`. enabled_peers: FnvHashSet, /// Maximum number of incoming non-reserved connections, taken from the config. Never modified. @@ -76,19 +76,17 @@ pub struct CustomProtos { next_connect_to_nodes: Delay, /// Events to produce from `poll()`. - events: SmallVec<[NetworkBehaviourAction, CustomProtosOut>; 4]>, + events: SmallVec<[NetworkBehaviourAction, CustomProtoOut>; 4]>, /// Marker to pin the generics. marker: PhantomData, } -/// Event that can be emitted by the `CustomProtos`. +/// Event that can be emitted by the `CustomProto`. #[derive(Debug)] -pub enum CustomProtosOut { +pub enum CustomProtoOut { /// Opened a custom protocol with the remote. CustomProtocolOpen { - /// Identifier of the protocol. - protocol_id: ProtocolId, /// Version of the protocol that has been opened. version: u8, /// Id of the node we have opened a connection with. @@ -101,8 +99,6 @@ pub enum CustomProtosOut { CustomProtocolClosed { /// Id of the peer we were connected to. peer_id: PeerId, - /// Identifier of the protocol. - protocol_id: ProtocolId, /// Reason why the substream closed. If `Ok`, then it's a graceful exit (EOF). result: io::Result<()>, }, @@ -111,8 +107,6 @@ pub enum CustomProtosOut { CustomMessage { /// Id of the peer the message came from. peer_id: PeerId, - /// Protocol which generated the message. - protocol_id: ProtocolId, /// Message that has been received. message: TMessage, }, @@ -122,16 +116,14 @@ pub enum CustomProtosOut { Clogged { /// Id of the peer which is clogged. peer_id: PeerId, - /// Protocol which has a problem. - protocol_id: ProtocolId, /// Copy of the messages that are within the buffer, for further diagnostic. messages: Vec, }, } -impl CustomProtos { - /// Creates a `CustomProtos`. - pub fn new(config: &NetworkConfiguration, local_peer_id: &PeerId, registered_protocols: RegisteredProtocols) -> Self { +impl CustomProto { + /// Creates a `CustomProto`. + pub fn new(config: &NetworkConfiguration, local_peer_id: &PeerId, protocol: RegisteredProtocol) -> Self { // Initialize the topology of the network. let mut topology = if let Some(ref path) = config.net_config_path { let path = Path::new(path).join(NODES_FILE); @@ -157,11 +149,8 @@ impl CustomProtos { .saturating_add(max_outgoing_connections) .saturating_add(4); // We add an arbitrary number for reserved peers slots - // Expected maximum number of substreams. - let open_protos_cap = connec_cap.saturating_mul(registered_protocols.len()); - - CustomProtos { - registered_protocols, + CustomProto { + protocol, topology, max_incoming_connections, max_outgoing_connections, @@ -169,7 +158,7 @@ impl CustomProtos { connected_peers: Default::default(), reserved_peers: Default::default(), banned_peers: Vec::new(), - open_protocols: Vec::with_capacity(open_protos_cap), + opened_peers: FnvHashSet::with_capacity_and_hasher(connec_cap, Default::default()), enabled_peers: FnvHashSet::with_capacity_and_hasher(connec_cap, Default::default()), next_connect_to_nodes: Delay::new(Instant::now()), events: SmallVec::new(), @@ -232,7 +221,7 @@ impl CustomProtos { } events.push(NetworkBehaviourAction::SendEvent { peer_id: peer_id.clone(), - event: CustomProtosHandlerIn::Disable, + event: CustomProtoHandlerIn::Disable, }); false }) @@ -248,7 +237,7 @@ impl CustomProtos { if self.enabled_peers.remove(peer) { self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer.clone(), - event: CustomProtosHandlerIn::Disable, + event: CustomProtoHandlerIn::Disable, }); } } @@ -273,7 +262,7 @@ impl CustomProtos { if self.enabled_peers.remove(&peer_id) { self.events.push(NetworkBehaviourAction::SendEvent { peer_id, - event: CustomProtosHandlerIn::Disable, + event: CustomProtoHandlerIn::Disable, }); } } @@ -288,25 +277,21 @@ impl CustomProtos { self.enabled_peers.contains(peer_id) } - /// Returns the list of protocols we have open with the given peer. - pub fn open_protocols<'a>(&'a self, peer_id: &'a PeerId) -> impl Iterator + 'a { - self.open_protocols - .iter() - .filter(move |(p, _)| p == peer_id) - .map(|(_, proto)| *proto) + /// Returns true if we have opened a protocol with the given peer. + pub fn is_open(&self, peer_id: &PeerId) -> bool { + self.opened_peers.contains(peer_id) } - /// Sends a message to a peer using the given custom protocol. + /// Sends a message to a peer. /// /// Has no effect if the custom protocol is not open with the given peer. /// /// Also note that even we have a valid open substream, it may in fact be already closed /// without us knowing, in which case the packet will not be received. - pub fn send_packet(&mut self, target: &PeerId, protocol_id: ProtocolId, message: TMessage) { + pub fn send_packet(&mut self, target: &PeerId, message: TMessage) { self.events.push(NetworkBehaviourAction::SendEvent { peer_id: target.clone(), - event: CustomProtosHandlerIn::SendCustomMessage { - protocol: protocol_id, + event: CustomProtoHandlerIn::SendCustomMessage { message, } }); @@ -408,7 +393,7 @@ impl CustomProtos { num_to_open -= 1; self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer_id.clone(), - event: CustomProtosHandlerIn::Enable(Endpoint::Dialer), + event: CustomProtoHandlerIn::Enable(Endpoint::Dialer), }); } @@ -443,16 +428,16 @@ impl CustomProtos { } } -impl NetworkBehaviour for CustomProtos +impl NetworkBehaviour for CustomProto where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage, { - type ProtocolsHandler = CustomProtosHandler; - type OutEvent = CustomProtosOut; + type ProtocolsHandler = CustomProtoHandler; + type OutEvent = CustomProtoOut; fn new_handler(&mut self) -> Self::ProtocolsHandler { - CustomProtosHandler::new(self.registered_protocols.clone()) + CustomProtoHandler::new(self.protocol.clone()) } fn addresses_of_peer(&mut self, peer_id: &PeerId) -> Vec { @@ -470,7 +455,7 @@ where debug!(target: "sub-libp2p", "Ignoring {:?} because we're in reserved mode", peer_id); self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer_id.clone(), - event: CustomProtosHandlerIn::Disable, + event: CustomProtoHandlerIn::Disable, }); return } @@ -482,7 +467,7 @@ where debug!(target: "sub-libp2p", "Ignoring banned peer {:?}", peer_id); self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer_id.clone(), - event: CustomProtosHandlerIn::Disable, + event: CustomProtoHandlerIn::Disable, }); return } @@ -501,7 +486,7 @@ where if num_outgoing == self.max_outgoing_connections { self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer_id.clone(), - event: CustomProtosHandlerIn::Disable, + event: CustomProtoHandlerIn::Disable, }); return } @@ -518,7 +503,7 @@ where we're full", peer_id); self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer_id.clone(), - event: CustomProtosHandlerIn::Disable, + event: CustomProtoHandlerIn::Disable, }); return } @@ -533,13 +518,13 @@ where trace!(target: "sub-libp2p", "Enabling custom protocols with {:?} (active)", peer_id); self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer_id.clone(), - event: CustomProtosHandlerIn::Enable(Endpoint::Dialer), + event: CustomProtoHandlerIn::Enable(Endpoint::Dialer), }); } else { trace!(target: "sub-libp2p", "Enabling custom protocols with {:?} (passive)", peer_id); self.events.push(NetworkBehaviourAction::SendEvent { peer_id: peer_id.clone(), - event: CustomProtosHandlerIn::Enable(Endpoint::Listener), + event: CustomProtoHandlerIn::Enable(Endpoint::Listener), }); } @@ -553,11 +538,8 @@ where self.topology.set_disconnected(peer_id, &endpoint); - while let Some(pos) = self.open_protocols.iter().position(|(p, _)| p == peer_id) { - let (_, protocol_id) = self.open_protocols.remove(pos); - - let event = CustomProtosOut::CustomProtocolClosed { - protocol_id, + if self.opened_peers.remove(&peer_id) { + let event = CustomProtoOut::CustomProtocolClosed { peer_id: peer_id.clone(), result: Ok(()), }; @@ -596,35 +578,23 @@ where event: ::OutEvent, ) { match event { - CustomProtosHandlerOut::CustomProtocolClosed { protocol_id, result } => { - let pos = self.open_protocols.iter().position(|(s, p)| - s == &source && p == &protocol_id - ); - - if let Some(pos) = pos { - self.open_protocols.remove(pos); - } else { - debug_assert!(false, "Couldn't find protocol in open_protocols"); - } + CustomProtoHandlerOut::CustomProtocolClosed { result } => { + self.opened_peers.remove(&source); - let event = CustomProtosOut::CustomProtocolClosed { - protocol_id, + let event = CustomProtoOut::CustomProtocolClosed { result, peer_id: source, }; self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } - CustomProtosHandlerOut::CustomProtocolOpen { protocol_id, version } => { - debug_assert!(!self.open_protocols.iter().any(|(s, p)| - s == &source && p == &protocol_id - )); - self.open_protocols.push((source.clone(), protocol_id)); + CustomProtoHandlerOut::CustomProtocolOpen { version } => { + debug_assert!(!self.is_open(&source)); + self.opened_peers.insert(source.clone()); let endpoint = self.connected_peers.get(&source) .expect("We only receive events from connected nodes; QED").clone(); - let event = CustomProtosOut::CustomProtocolOpen { - protocol_id, + let event = CustomProtoOut::CustomProtocolOpen { version, peer_id: source, endpoint, @@ -632,38 +602,32 @@ where self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } - CustomProtosHandlerOut::CustomMessage { protocol_id, message } => { - debug_assert!(self.open_protocols.iter().any(|(s, p)| - s == &source && p == &protocol_id - )); - let event = CustomProtosOut::CustomMessage { + CustomProtoHandlerOut::CustomMessage { message } => { + debug_assert!(self.is_open(&source)); + let event = CustomProtoOut::CustomMessage { peer_id: source, - protocol_id, message, }; self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } - CustomProtosHandlerOut::Clogged { protocol_id, messages } => { - debug_assert!(self.open_protocols.iter().any(|(s, p)| - s == &source && p == &protocol_id - )); - warn!(target: "sub-libp2p", "Queue of packets to send to {:?} (protocol: {:?}) is \ - pretty large", source, protocol_id); - self.events.push(NetworkBehaviourAction::GenerateEvent(CustomProtosOut::Clogged { + CustomProtoHandlerOut::Clogged { messages } => { + debug_assert!(self.is_open(&source)); + warn!(target: "sub-libp2p", "Queue of packets to send to {:?} is \ + pretty large", source); + self.events.push(NetworkBehaviourAction::GenerateEvent(CustomProtoOut::Clogged { peer_id: source, - protocol_id, messages, })); } - CustomProtosHandlerOut::ProtocolError { protocol_id, error, is_severe } => { + CustomProtoHandlerOut::ProtocolError { error, is_severe } => { if is_severe { - warn!(target: "sub-libp2p", "Network misbehaviour from {:?} with protocol \ - {:?}: {:?}", source, protocol_id, error); + warn!(target: "sub-libp2p", "Network misbehaviour from {:?}: {:?}", + source, error); self.ban_peer(source); } else { - debug!(target: "sub-libp2p", "Network misbehaviour from {:?} with protocol \ - {:?}: {:?}", source, protocol_id, error); + debug!(target: "sub-libp2p", "Network misbehaviour from {:?}: {:?}", + source, error); self.disconnect_peer(&source); } } diff --git a/core/network-libp2p/src/custom_proto/handler.rs b/core/network-libp2p/src/custom_proto/handler.rs index 947dc2ddd4..a9db9fcb99 100644 --- a/core/network-libp2p/src/custom_proto/handler.rs +++ b/core/network-libp2p/src/custom_proto/handler.rs @@ -14,8 +14,7 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use crate::ProtocolId; -use crate::custom_proto::upgrade::{CustomMessage, CustomMessageId, RegisteredProtocol, RegisteredProtocols}; +use crate::custom_proto::upgrade::{CustomMessage, CustomMessageId, RegisteredProtocol}; use crate::custom_proto::upgrade::{RegisteredProtocolEvent, RegisteredProtocolSubstream}; use futures::prelude::*; use libp2p::core::{ @@ -63,32 +62,26 @@ use void::Void; /// happens on one substream, we consider that we are disconnected. Re-enabling is performed by /// opening an outbound substream. /// -pub struct CustomProtosHandler { - /// Fields individual to each protocol that we support. - protocols: SmallVec<[PerProtocol; 1]>, +pub struct CustomProtoHandler { + /// Configuration for the protocol upgrade to negotiate. + protocol: RegisteredProtocol, + + /// State of the communications with the remote. + state: ProtocolState, /// Queue of events to send to the outside. /// /// This queue must only ever be modified to insert elements at the back, or remove the first /// element. - events_queue: SmallVec<[ProtocolsHandlerEvent, ProtocolId, CustomProtosHandlerOut>; 16]>, + events_queue: SmallVec<[ProtocolsHandlerEvent, (), CustomProtoHandlerOut>; 16]>, /// We have a warm-up period after creating the handler during which we don't shut down the /// connection. warm_up_end: Instant, } -/// Fields individual to each protocol that we support. -struct PerProtocol { - /// Configuration for the protocol upgrade to negotiate. - protocol: RegisteredProtocol, - - /// State of the communications with the remote. - state: PerProtocolState, -} - -/// State of the handler for a specific protocol. -enum PerProtocolState { +/// State of the handler. +enum ProtocolState { /// Waiting for the behaviour to tell the handler whether it is enabled or disabled. Init { /// List of substreams opened by the remote but that haven't been processed yet. @@ -160,44 +153,203 @@ struct PerProtocolNormalState { shutdown: SmallVec<[RegisteredProtocolSubstream; 4]>, } -impl PerProtocol +impl PerProtocolNormalState where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { - /// Enables the protocol. Returns an optional event to emit. - /// Must be passed the endpoint of the connection. - #[must_use] - fn enable(&mut self, endpoint: Endpoint) - -> Option, ProtocolId, CustomProtosHandlerOut>> { + /// Polls for things that are new. Same API constraints as `Future::poll()`. + /// Optionally returns the event to produce. + /// You must pass the `protocol_id` as we need have to inject it in the returned event. + /// API note: Ideally we wouldn't need to be passed a `ProtocolId`, and we would return a + /// different enum that doesn't contain any `protocol_id`, and the caller would inject + /// the ID itself, but that's a ton of code for not much gain. + fn poll(&mut self) -> Option> { + for n in (0..self.pending_response.len()).rev() { + let (request_id, mut substream) = self.pending_response.swap_remove(n); + match substream.poll() { + Ok(Async::Ready(Some(RegisteredProtocolEvent::Message(message)))) => { + if message.request_id() == CustomMessageId::Response(request_id) { + let event = CustomProtoHandlerOut::CustomMessage { + message + }; + self.shutdown.push(substream); + return Some(event); + } else { + self.shutdown.push(substream); + let event = CustomProtoHandlerOut::ProtocolError { + is_severe: true, + error: format!("Request ID doesn't match substream: expected {:?}, \ + got {:?}", request_id, message.request_id()).into(), + }; + return Some(event); + } + }, + Ok(Async::Ready(Some(RegisteredProtocolEvent::Clogged { .. }))) => + unreachable!("Cannot receive Clogged message with new protocol version; QED"), + Ok(Async::NotReady) => + self.pending_response.push((request_id, substream)), + Ok(Async::Ready(None)) => { + self.shutdown.push(substream); + let event = CustomProtoHandlerOut::ProtocolError { + is_severe: false, + error: format!("Request ID {:?} didn't receive an answer", request_id).into(), + }; + return Some(event); + } + Err(err) => { + self.shutdown.push(substream); + let event = CustomProtoHandlerOut::ProtocolError { + is_severe: false, + error: format!("Error while waiting for an answer for {:?}: {}", + request_id, err).into(), + }; + return Some(event); + } + } + } - let return_value; + for n in (0..self.incoming_substreams.len()).rev() { + let mut substream = self.incoming_substreams.swap_remove(n); + match substream.poll() { + Ok(Async::Ready(Some(RegisteredProtocolEvent::Message(message)))) => { + return match message.request_id() { + CustomMessageId::Request(id) => { + self.pending_send_back.push((id, substream)); + Some(CustomProtoHandlerOut::CustomMessage { + message + }) + } + CustomMessageId::OneWay => { + self.shutdown.push(substream); + Some(CustomProtoHandlerOut::CustomMessage { + message + }) + } + _ => { + self.shutdown.push(substream); + Some(CustomProtoHandlerOut::ProtocolError { + is_severe: true, + error: format!("Received response in new substream").into(), + }) + } + } + }, + Ok(Async::Ready(Some(RegisteredProtocolEvent::Clogged { .. }))) => + unreachable!("Cannot receive Clogged message with new protocol version; QED"), + Ok(Async::NotReady) => + self.incoming_substreams.push(substream), + Ok(Async::Ready(None)) => {} + Err(err) => { + self.shutdown.push(substream); + return Some(CustomProtoHandlerOut::ProtocolError { + is_severe: false, + error: format!("Error in incoming substream: {}", err).into(), + }); + } + } + } + + shutdown_list(&mut self.shutdown); + None + } +} - self.state = match mem::replace(&mut self.state, PerProtocolState::Poisoned) { - PerProtocolState::Poisoned => { +/// Event that can be received by a `CustomProtoHandler`. +#[derive(Debug)] +pub enum CustomProtoHandlerIn { + /// The node should start using custom protocols. Contains whether we are the dialer or the + /// listener of the connection. + Enable(Endpoint), + + /// The node should stop using custom protocols. + Disable, + + /// Sends a message through a custom protocol substream. + SendCustomMessage { + /// The message to send. + message: TMessage, + }, +} + +/// Event that can be emitted by a `CustomProtoHandler`. +#[derive(Debug)] +pub enum CustomProtoHandlerOut { + /// Opened a custom protocol with the remote. + CustomProtocolOpen { + /// Version of the protocol that has been opened. + version: u8, + }, + + /// Closed a custom protocol with the remote. + CustomProtocolClosed { + /// Reason why the substream closed. If `Ok`, then it's a graceful exit (EOF). + result: io::Result<()>, + }, + + /// Receives a message on a custom protocol substream. + CustomMessage { + /// Message that has been received. + message: TMessage, + }, + + /// A substream to the remote is clogged. The send buffer is very large, and we should print + /// a diagnostic message and/or avoid sending more data. + Clogged { + /// Copy of the messages that are within the buffer, for further diagnostic. + messages: Vec, + }, + + /// An error has happened on the protocol level with this node. + ProtocolError { + /// If true the error is severe, such as a protocol violation. + is_severe: bool, + /// The error that happened. + error: Box, + }, +} + +impl CustomProtoHandler +where + TSubstream: AsyncRead + AsyncWrite, + TMessage: CustomMessage, +{ + /// Builds a new `CustomProtoHandler`. + pub fn new(protocol: RegisteredProtocol) -> Self { + CustomProtoHandler { + protocol, + state: ProtocolState::Init { + substreams: SmallVec::new(), + init_deadline: Delay::new(Instant::now() + Duration::from_secs(5)) + }, + events_queue: SmallVec::new(), + warm_up_end: Instant::now() + Duration::from_secs(5), + } + } + + /// Enables the handler. + fn enable(&mut self, endpoint: Endpoint) { + self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { + ProtocolState::Poisoned => { error!(target: "sub-libp2p", "Handler is in poisoned state"); - return_value = None; - PerProtocolState::Poisoned + ProtocolState::Poisoned } - PerProtocolState::Init { substreams: incoming, .. } => { + ProtocolState::Init { substreams: incoming, .. } => { if incoming.is_empty() { if let Endpoint::Dialer = endpoint { - return_value = Some(ProtocolsHandlerEvent::OutboundSubstreamRequest { + self.events_queue.push(ProtocolsHandlerEvent::OutboundSubstreamRequest { upgrade: self.protocol.clone(), - info: self.protocol.id(), + info: (), }); - } else { - return_value = None; } - PerProtocolState::Opening { + ProtocolState::Opening { deadline: Delay::new(Instant::now() + Duration::from_secs(60)) } } else if incoming.iter().any(|s| s.is_multiplex()) { - let event = CustomProtosHandlerOut::CustomProtocolOpen { - protocol_id: self.protocol.id(), + let event = CustomProtoHandlerOut::CustomProtocolOpen { version: incoming[0].protocol_version() }; - return_value = Some(ProtocolsHandlerEvent::Custom(event)); - PerProtocolState::Normal(PerProtocolNormalState { + self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); + ProtocolState::Normal(PerProtocolNormalState { outgoing_substream: None, incoming_substreams: incoming.into_iter().collect(), pending_response: SmallVec::new(), @@ -207,12 +359,11 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { }) } else { - let event = CustomProtosHandlerOut::CustomProtocolOpen { - protocol_id: self.protocol.id(), + let event = CustomProtoHandlerOut::CustomProtocolOpen { version: incoming[0].protocol_version() }; - return_value = Some(ProtocolsHandlerEvent::Custom(event)); - PerProtocolState::BackCompat { + self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); + ProtocolState::BackCompat { substream: incoming.into_iter().next() .expect("We have a check above that incoming isn't empty; QED"), shutdown: SmallVec::new() @@ -220,51 +371,48 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { } } - st @ PerProtocolState::Opening { .. } => { return_value = None; st } - st @ PerProtocolState::BackCompat { .. } => { return_value = None; st } - st @ PerProtocolState::Normal { .. } => { return_value = None; st } - PerProtocolState::Disabled { shutdown, .. } => { - return_value = None; - PerProtocolState::Disabled { shutdown, reenable: true } + st @ ProtocolState::Opening { .. } => st, + st @ ProtocolState::BackCompat { .. } => st, + st @ ProtocolState::Normal { .. } => st, + ProtocolState::Disabled { shutdown, .. } => { + ProtocolState::Disabled { shutdown, reenable: true } } - }; - - return_value + } } - /// Disables the protocol. Returns `true` if the protocol was closed, `false` if it was already - /// closed or not open yet. - fn disable(&mut self) -> bool { - let mut return_value = false; - - self.state = match mem::replace(&mut self.state, PerProtocolState::Poisoned) { - PerProtocolState::Poisoned => { + /// Disables the handler. + fn disable(&mut self) { + self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { + ProtocolState::Poisoned => { error!(target: "sub-libp2p", "Handler is in poisoned state"); - PerProtocolState::Poisoned + ProtocolState::Poisoned } - PerProtocolState::Init { substreams: mut shutdown, .. } => { + ProtocolState::Init { substreams: mut shutdown, .. } => { for s in &mut shutdown { s.shutdown(); } - PerProtocolState::Disabled { shutdown, reenable: false } + ProtocolState::Disabled { shutdown, reenable: false } } - PerProtocolState::Opening { .. } => { - PerProtocolState::Disabled { shutdown: SmallVec::new(), reenable: false } + ProtocolState::Opening { .. } => { + ProtocolState::Disabled { shutdown: SmallVec::new(), reenable: false } } - PerProtocolState::BackCompat { mut substream, mut shutdown } => { + ProtocolState::BackCompat { mut substream, mut shutdown } => { substream.shutdown(); shutdown.push(substream); - return_value = true; - PerProtocolState::Disabled { + let event = CustomProtoHandlerOut::CustomProtocolClosed { + result: Ok(()) + }; + self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); + ProtocolState::Disabled { shutdown: shutdown.into_iter().collect(), reenable: false } } - PerProtocolState::Normal(state) => { + ProtocolState::Normal(state) => { let mut out: SmallVec<[_; 6]> = SmallVec::new(); out.extend(state.outgoing_substream.into_iter()); out.extend(state.incoming_substreams.into_iter()); @@ -274,31 +422,31 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { s.shutdown(); } out.extend(state.shutdown.into_iter()); - return_value = true; - PerProtocolState::Disabled { shutdown: out, reenable: false } + let event = CustomProtoHandlerOut::CustomProtocolClosed { + result: Ok(()) + }; + self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); + ProtocolState::Disabled { shutdown: out, reenable: false } } - PerProtocolState::Disabled { shutdown, .. } => - PerProtocolState::Disabled { shutdown, reenable: false }, + ProtocolState::Disabled { shutdown, .. } => + ProtocolState::Disabled { shutdown, reenable: false }, }; - - return_value } /// Polls the state for events. Optionally returns an event to produce. #[must_use] - fn poll(&mut self) - -> Option, ProtocolId, CustomProtosHandlerOut>> { - + fn poll_state(&mut self) + -> Option, (), CustomProtoHandlerOut>> { let return_value; - self.state = match mem::replace(&mut self.state, PerProtocolState::Poisoned) { - PerProtocolState::Poisoned => { + self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { + ProtocolState::Poisoned => { error!(target: "sub-libp2p", "Handler is in poisoned state; shutting down"); return_value = None; - PerProtocolState::Poisoned + ProtocolState::Poisoned } - PerProtocolState::Init { substreams, mut init_deadline } => { + ProtocolState::Init { substreams, mut init_deadline } => { match init_deadline.poll() { Ok(Async::Ready(())) => error!(target: "sub-libp2p", "Handler initialization process is too long"), @@ -307,74 +455,69 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { } return_value = None; - PerProtocolState::Init { substreams, init_deadline } + ProtocolState::Init { substreams, init_deadline } } - PerProtocolState::Opening { mut deadline } => { + ProtocolState::Opening { mut deadline } => { match deadline.poll() { Ok(Async::Ready(())) => { deadline.reset(Instant::now() + Duration::from_secs(60)); - let event = CustomProtosHandlerOut::ProtocolError { - protocol_id: self.protocol.id(), + let event = CustomProtoHandlerOut::ProtocolError { is_severe: false, error: "Timeout when opening protocol".to_string().into(), }; return_value = Some(ProtocolsHandlerEvent::Custom(event)); - PerProtocolState::Opening { deadline } + ProtocolState::Opening { deadline } }, Ok(Async::NotReady) => { return_value = None; - PerProtocolState::Opening { deadline } + ProtocolState::Opening { deadline } }, Err(_) => { error!(target: "sub-libp2p", "Tokio timer has errored"); deadline.reset(Instant::now() + Duration::from_secs(60)); return_value = None; - PerProtocolState::Opening { deadline } + ProtocolState::Opening { deadline } }, } } - PerProtocolState::BackCompat { mut substream, shutdown } => { + ProtocolState::BackCompat { mut substream, shutdown } => { match substream.poll() { Ok(Async::Ready(Some(RegisteredProtocolEvent::Message(message)))) => { - let event = CustomProtosHandlerOut::CustomMessage { - protocol_id: substream.protocol_id(), + let event = CustomProtoHandlerOut::CustomMessage { message }; return_value = Some(ProtocolsHandlerEvent::Custom(event)); - PerProtocolState::BackCompat { substream, shutdown } + ProtocolState::BackCompat { substream, shutdown } }, Ok(Async::Ready(Some(RegisteredProtocolEvent::Clogged { messages }))) => { - let event = CustomProtosHandlerOut::Clogged { - protocol_id: substream.protocol_id(), + let event = CustomProtoHandlerOut::Clogged { messages, }; return_value = Some(ProtocolsHandlerEvent::Custom(event)); - PerProtocolState::BackCompat { substream, shutdown } + ProtocolState::BackCompat { substream, shutdown } } Ok(Async::NotReady) => { return_value = None; - PerProtocolState::BackCompat { substream, shutdown } + ProtocolState::BackCompat { substream, shutdown } } Ok(Async::Ready(None)) => { - let event = CustomProtosHandlerOut::CustomProtocolClosed { - protocol_id: substream.protocol_id(), + let event = CustomProtoHandlerOut::CustomProtocolClosed { result: Ok(()) }; return_value = Some(ProtocolsHandlerEvent::Custom(event)); - PerProtocolState::Disabled { + ProtocolState::Disabled { shutdown: shutdown.into_iter().collect(), reenable: false } } Err(err) => { - let event = CustomProtosHandlerOut::CustomProtocolClosed { - protocol_id: substream.protocol_id(), + let event = CustomProtoHandlerOut::CustomProtocolClosed { result: Err(err), }; return_value = Some(ProtocolsHandlerEvent::Custom(event)); - PerProtocolState::Disabled { + ProtocolState::Disabled { shutdown: shutdown.into_iter().collect(), reenable: false } @@ -382,291 +525,66 @@ where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { } } - PerProtocolState::Normal(mut norm_state) => { - if let Some(event) = norm_state.poll(self.protocol.id()) { + ProtocolState::Normal(mut norm_state) => { + if let Some(event) = norm_state.poll() { return_value = Some(ProtocolsHandlerEvent::Custom(event)); } else { return_value = None; } - PerProtocolState::Normal(norm_state) + ProtocolState::Normal(norm_state) } - PerProtocolState::Disabled { mut shutdown, reenable } => { + ProtocolState::Disabled { mut shutdown, reenable } => { shutdown_list(&mut shutdown); // If `reenable` is `true`, that means we should open the substreams system again // after all the substreams are closed. if reenable && shutdown.is_empty() { return_value = Some(ProtocolsHandlerEvent::OutboundSubstreamRequest { upgrade: self.protocol.clone(), - info: self.protocol.id(), + info: (), }); - PerProtocolState::Opening { + ProtocolState::Opening { deadline: Delay::new(Instant::now() + Duration::from_secs(60)) } } else { return_value = None; - PerProtocolState::Disabled { shutdown, reenable } + ProtocolState::Disabled { shutdown, reenable } } } }; return_value } -} - -impl PerProtocolNormalState -where TMessage: CustomMessage, TSubstream: AsyncRead + AsyncWrite { - /// Polls for things that are new. Same API constraints as `Future::poll()`. - /// Optionally returns the event to produce. - /// You must pass the `protocol_id` as we need have to inject it in the returned event. - /// API note: Ideally we wouldn't need to be passed a `ProtocolId`, and we would return a - /// different enum that doesn't contain any `protocol_id`, and the caller would inject - /// the ID itself, but that's a ton of code for not much gain. - fn poll(&mut self, protocol_id: ProtocolId) -> Option> { - for n in (0..self.pending_response.len()).rev() { - let (request_id, mut substream) = self.pending_response.swap_remove(n); - match substream.poll() { - Ok(Async::Ready(Some(RegisteredProtocolEvent::Message(message)))) => { - if message.request_id() == CustomMessageId::Response(request_id) { - let event = CustomProtosHandlerOut::CustomMessage { - protocol_id: substream.protocol_id(), - message - }; - self.shutdown.push(substream); - return Some(event); - } else { - self.shutdown.push(substream); - let event = CustomProtosHandlerOut::ProtocolError { - protocol_id, - is_severe: true, - error: format!("Request ID doesn't match substream: expected {:?}, \ - got {:?}", request_id, message.request_id()).into(), - }; - return Some(event); - } - }, - Ok(Async::Ready(Some(RegisteredProtocolEvent::Clogged { .. }))) => - unreachable!("Cannot receive Clogged message with new protocol version; QED"), - Ok(Async::NotReady) => - self.pending_response.push((request_id, substream)), - Ok(Async::Ready(None)) => { - self.shutdown.push(substream); - let event = CustomProtosHandlerOut::ProtocolError { - protocol_id, - is_severe: false, - error: format!("Request ID {:?} didn't receive an answer", request_id).into(), - }; - return Some(event); - } - Err(err) => { - self.shutdown.push(substream); - let event = CustomProtosHandlerOut::ProtocolError { - protocol_id, - is_severe: false, - error: format!("Error while waiting for an answer for {:?}: {}", - request_id, err).into(), - }; - return Some(event); - } - } - } - - for n in (0..self.incoming_substreams.len()).rev() { - let mut substream = self.incoming_substreams.swap_remove(n); - match substream.poll() { - Ok(Async::Ready(Some(RegisteredProtocolEvent::Message(message)))) => { - let protocol_id = substream.protocol_id(); - if let CustomMessageId::Request(id) = message.request_id() { - self.pending_send_back.push((id, substream)); - return Some(CustomProtosHandlerOut::CustomMessage { - protocol_id, - message - }); - } else if let CustomMessageId::OneWay = message.request_id() { - self.shutdown.push(substream); - return Some(CustomProtosHandlerOut::CustomMessage { - protocol_id, - message - }); - } else { - self.shutdown.push(substream); - return Some(CustomProtosHandlerOut::ProtocolError { - protocol_id, - is_severe: true, - error: format!("Received response in new substream").into(), - }); - } - }, - Ok(Async::Ready(Some(RegisteredProtocolEvent::Clogged { .. }))) => - unreachable!("Cannot receive Clogged message with new protocol version; QED"), - Ok(Async::NotReady) => - self.incoming_substreams.push(substream), - Ok(Async::Ready(None)) => {} - Err(err) => { - self.shutdown.push(substream); - return Some(CustomProtosHandlerOut::ProtocolError { - protocol_id, - is_severe: false, - error: format!("Error in incoming substream: {}", err).into(), - }); - } - } - } - - shutdown_list(&mut self.shutdown); - None - } -} - -/// Event that can be received by a `CustomProtosHandler`. -#[derive(Debug)] -pub enum CustomProtosHandlerIn { - /// The node should start using custom protocols. Contains whether we are the dialer or the - /// listener of the connection. - Enable(Endpoint), - - /// The node should stop using custom protocols. - Disable, - - /// Sends a message through a custom protocol substream. - SendCustomMessage { - /// The protocol to use. - protocol: ProtocolId, - /// The message to send. - message: TMessage, - }, -} - -/// Event that can be emitted by a `CustomProtosHandler`. -#[derive(Debug)] -pub enum CustomProtosHandlerOut { - /// Opened a custom protocol with the remote. - CustomProtocolOpen { - /// Identifier of the protocol. - protocol_id: ProtocolId, - /// Version of the protocol that has been opened. - version: u8, - }, - - /// Closed a custom protocol with the remote. - CustomProtocolClosed { - /// Identifier of the protocol. - protocol_id: ProtocolId, - /// Reason why the substream closed. If `Ok`, then it's a graceful exit (EOF). - result: io::Result<()>, - }, - - /// Receives a message on a custom protocol substream. - CustomMessage { - /// Protocol which generated the message. - protocol_id: ProtocolId, - /// Message that has been received. - message: TMessage, - }, - - /// A substream to the remote is clogged. The send buffer is very large, and we should print - /// a diagnostic message and/or avoid sending more data. - Clogged { - /// Protocol which is clogged. - protocol_id: ProtocolId, - /// Copy of the messages that are within the buffer, for further diagnostic. - messages: Vec, - }, - - /// An error has happened on the protocol level with this node. - ProtocolError { - /// Protocol for which the error happened. - protocol_id: ProtocolId, - /// If true the error is severe, such as a protocol violation. - is_severe: bool, - /// The error that happened. - error: Box, - }, -} - -impl CustomProtosHandler -where - TSubstream: AsyncRead + AsyncWrite, - TMessage: CustomMessage, -{ - /// Builds a new `CustomProtosHandler`. - pub fn new(protocols: RegisteredProtocols) -> Self { - CustomProtosHandler { - protocols: protocols.0.into_iter().map(|protocol| { - PerProtocol { - protocol, - state: PerProtocolState::Init { - substreams: SmallVec::new(), - init_deadline: Delay::new(Instant::now() + Duration::from_secs(5)) - }, - } - }).collect(), - events_queue: SmallVec::new(), - warm_up_end: Instant::now() + Duration::from_secs(5), - } - } - - /// Enables the handler for all protocols. - fn enable(&mut self, endpoint: Endpoint) { - for protocol in &mut self.protocols { - if let Some(message) = protocol.enable(endpoint) { - self.events_queue.push(message); - } - } - } - - /// Disables the handler for all protocols. - fn disable(&mut self) { - for protocol in &mut self.protocols { - if protocol.disable() { - let event = CustomProtosHandlerOut::CustomProtocolClosed { - protocol_id: protocol.protocol.id(), - result: Ok(()) - }; - self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); - } - } - } /// Called by `inject_fully_negotiated_inbound` and `inject_fully_negotiated_outbound`. fn inject_fully_negotiated( &mut self, mut substream: RegisteredProtocolSubstream ) { - let state = match self.protocols.iter_mut().find(|p| p.protocol.id() == substream.protocol_id()) { - Some(p) => &mut p.state, - None => { - error!(target: "sub-libp2p", "Found unknown protocol ID {:?}", - substream.protocol_id()); - return - }, - }; - - *state = match mem::replace(state, PerProtocolState::Poisoned) { - PerProtocolState::Poisoned => { + self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { + ProtocolState::Poisoned => { error!(target: "sub-libp2p", "Handler is in poisoned state"); - PerProtocolState::Poisoned + ProtocolState::Poisoned } - PerProtocolState::Init { mut substreams, init_deadline } => { + ProtocolState::Init { mut substreams, init_deadline } => { if substream.endpoint() == Endpoint::Dialer { error!(target: "sub-libp2p", "Opened dialing substream before initialization"); } substreams.push(substream); - PerProtocolState::Init { substreams, init_deadline } + ProtocolState::Init { substreams, init_deadline } } - PerProtocolState::Opening { .. } => { - let event = CustomProtosHandlerOut::CustomProtocolOpen { - protocol_id: substream.protocol_id(), + ProtocolState::Opening { .. } => { + let event = CustomProtoHandlerOut::CustomProtocolOpen { version: substream.protocol_version() }; self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); match (substream.endpoint(), substream.is_multiplex()) { (Endpoint::Dialer, true) => { - PerProtocolState::Normal(PerProtocolNormalState { + ProtocolState::Normal(PerProtocolNormalState { outgoing_substream: Some(substream), incoming_substreams: SmallVec::new(), pending_response: SmallVec::new(), @@ -676,7 +594,7 @@ where }) }, (Endpoint::Listener, true) => { - PerProtocolState::Normal(PerProtocolNormalState { + ProtocolState::Normal(PerProtocolNormalState { outgoing_substream: None, incoming_substreams: smallvec![substream], pending_response: SmallVec::new(), @@ -686,7 +604,7 @@ where }) }, (_, false) => { - PerProtocolState::BackCompat { + ProtocolState::BackCompat { substream, shutdown: SmallVec::new() } @@ -694,15 +612,15 @@ where } } - PerProtocolState::BackCompat { substream: existing, mut shutdown } => { + ProtocolState::BackCompat { substream: existing, mut shutdown } => { warn!(target: "sub-libp2p", "Received extra substream after having already one \ open in backwards-compatibility mode"); substream.shutdown(); shutdown.push(substream); - PerProtocolState::BackCompat { substream: existing, shutdown } + ProtocolState::BackCompat { substream: existing, shutdown } } - PerProtocolState::Normal(mut state) => { + ProtocolState::Normal(mut state) => { if substream.endpoint() == Endpoint::Listener { state.incoming_substreams.push(substream); } else if !state.pending_messages.is_empty() { @@ -720,49 +638,39 @@ where state.shutdown.push(substream); } - PerProtocolState::Normal(state) + ProtocolState::Normal(state) } - PerProtocolState::Disabled { mut shutdown, .. } => { + ProtocolState::Disabled { mut shutdown, .. } => { substream.shutdown(); shutdown.push(substream); - PerProtocolState::Disabled { shutdown, reenable: false } + ProtocolState::Disabled { shutdown, reenable: false } } }; } /// Sends a message to the remote. - fn send_message(&mut self, protocol: ProtocolId, message: TMessage) { - let (protocol, state) = match self.protocols.iter_mut().find(|p| p.protocol.id() == protocol) { - Some(p) => (&mut p.protocol, &mut p.state), - None => { - error!(target: "sub-libp2p", "Tried to send message over unknown protocol ID {:?}", - protocol); - return - }, - }; - - match *state { - PerProtocolState::BackCompat { ref mut substream, .. } => + fn send_message(&mut self, message: TMessage) { + match self.state { + ProtocolState::BackCompat { ref mut substream, .. } => substream.send_message(message), - PerProtocolState::Normal(ref mut state) => { + ProtocolState::Normal(ref mut state) => { if let CustomMessageId::Request(request_id) = message.request_id() { if let Some(mut outgoing_substream) = state.outgoing_substream.take() { outgoing_substream.send_message(message); state.pending_response.push((request_id, outgoing_substream)); } else { if state.pending_messages.len() >= 2048 { - let event = CustomProtosHandlerOut::Clogged { + let event = CustomProtoHandlerOut::Clogged { messages: Vec::new(), - protocol_id: protocol.id() }; self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); } state.pending_messages.push(message); self.events_queue.push(ProtocolsHandlerEvent::OutboundSubstreamRequest { - upgrade: protocol.clone(), - info: protocol.id() + upgrade: self.protocol.clone(), + info: () }); } } else if let CustomMessageId::Response(request_id) = message.request_id() { @@ -779,16 +687,15 @@ where state.shutdown.push(outgoing_substream); } else { if state.pending_messages.len() >= 2048 { - let event = CustomProtosHandlerOut::Clogged { + let event = CustomProtoHandlerOut::Clogged { messages: Vec::new(), - protocol_id: protocol.id() }; self.events_queue.push(ProtocolsHandlerEvent::Custom(event)); } state.pending_messages.push(message); self.events_queue.push(ProtocolsHandlerEvent::OutboundSubstreamRequest { - upgrade: protocol.clone(), - info: protocol.id() + upgrade: self.protocol.clone(), + info: () }); } } @@ -798,19 +705,18 @@ where } } -impl ProtocolsHandler for CustomProtosHandler +impl ProtocolsHandler for CustomProtoHandler where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { - type InEvent = CustomProtosHandlerIn; - type OutEvent = CustomProtosHandlerOut; + type InEvent = CustomProtoHandlerIn; + type OutEvent = CustomProtoHandlerOut; type Substream = TSubstream; type Error = Void; - type InboundProtocol = RegisteredProtocols; + type InboundProtocol = RegisteredProtocol; type OutboundProtocol = RegisteredProtocol; - type OutboundOpenInfo = ProtocolId; + type OutboundOpenInfo = (); - #[inline] fn listen_protocol(&self) -> Self::InboundProtocol { - RegisteredProtocols(self.protocols.iter().map(|p| p.protocol.clone()).collect()) + self.protocol.clone() } fn inject_fully_negotiated_inbound( @@ -820,7 +726,6 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { self.inject_fully_negotiated(proto); } - #[inline] fn inject_fully_negotiated_outbound( &mut self, proto: >::Output, @@ -829,24 +734,23 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { self.inject_fully_negotiated(proto); } - fn inject_event(&mut self, message: CustomProtosHandlerIn) { + fn inject_event(&mut self, message: CustomProtoHandlerIn) { match message { - CustomProtosHandlerIn::Disable => self.disable(), - CustomProtosHandlerIn::Enable(endpoint) => self.enable(endpoint), - CustomProtosHandlerIn::SendCustomMessage { protocol, message } => - self.send_message(protocol, message), + CustomProtoHandlerIn::Disable => self.disable(), + CustomProtoHandlerIn::Enable(endpoint) => self.enable(endpoint), + CustomProtoHandlerIn::SendCustomMessage { message } => + self.send_message(message), } } #[inline] - fn inject_dial_upgrade_error(&mut self, protocol_id: Self::OutboundOpenInfo, err: ProtocolsHandlerUpgrErr) { + fn inject_dial_upgrade_error(&mut self, _: (), err: ProtocolsHandlerUpgrErr) { let is_severe = match err { ProtocolsHandlerUpgrErr::Upgrade(_) => true, _ => false, }; - self.events_queue.push(ProtocolsHandlerEvent::Custom(CustomProtosHandlerOut::ProtocolError { - protocol_id, + self.events_queue.push(ProtocolsHandlerEvent::Custom(CustomProtoHandlerOut::ProtocolError { is_severe, error: Box::new(err), })); @@ -863,14 +767,11 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { let mut keep_forever = false; - for protocol in self.protocols.iter() { - match protocol.state { - PerProtocolState::Init { .. } | PerProtocolState::Opening { .. } => {} - PerProtocolState::BackCompat { .. } | PerProtocolState::Normal { .. } => - keep_forever = true, - PerProtocolState::Disabled { .. } | - PerProtocolState::Poisoned => return KeepAlive::Now, - } + match self.state { + ProtocolState::Init { .. } | ProtocolState::Opening { .. } => {} + ProtocolState::BackCompat { .. } | ProtocolState::Normal { .. } => + keep_forever = true, + ProtocolState::Disabled { .. } | ProtocolState::Poisoned => return KeepAlive::Now, } if keep_forever { @@ -893,22 +794,20 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { } // Process all the substreams. - for protocol in self.protocols.iter_mut() { - if let Some(event) = protocol.poll() { - return Ok(Async::Ready(event)) - } + if let Some(event) = self.poll_state() { + return Ok(Async::Ready(event)) } Ok(Async::NotReady) } } -impl fmt::Debug for CustomProtosHandler +impl fmt::Debug for CustomProtoHandler where TSubstream: AsyncRead + AsyncWrite, { fn fmt(&self, f: &mut fmt::Formatter) -> Result<(), fmt::Error> { - f.debug_struct("CustomProtosHandler") + f.debug_struct("CustomProtoHandler") .finish() } } diff --git a/core/network-libp2p/src/custom_proto/mod.rs b/core/network-libp2p/src/custom_proto/mod.rs index 073ce8360a..279f9a2334 100644 --- a/core/network-libp2p/src/custom_proto/mod.rs +++ b/core/network-libp2p/src/custom_proto/mod.rs @@ -14,8 +14,8 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -pub use self::behaviour::{CustomProtos, CustomProtosOut}; -pub use self::upgrade::{CustomMessage, CustomMessageId, RegisteredProtocol, RegisteredProtocols}; +pub use self::behaviour::{CustomProto, CustomProtoOut}; +pub use self::upgrade::{CustomMessage, CustomMessageId, RegisteredProtocol}; mod behaviour; mod handler; diff --git a/core/network-libp2p/src/custom_proto/upgrade.rs b/core/network-libp2p/src/custom_proto/upgrade.rs index caab8ec9d0..8f54aa18d0 100644 --- a/core/network-libp2p/src/custom_proto/upgrade.rs +++ b/core/network-libp2p/src/custom_proto/upgrade.rs @@ -437,99 +437,3 @@ where TSubstream: AsyncRead + AsyncWrite, }) } } - -// Connection upgrade for all the protocols contained in it. -pub struct RegisteredProtocols(pub Vec>); - -impl RegisteredProtocols { - /// Returns the number of protocols. - #[inline] - pub fn len(&self) -> usize { - self.0.len() - } -} - -impl Default for RegisteredProtocols { - fn default() -> Self { - RegisteredProtocols(Vec::new()) - } -} - -impl UpgradeInfo for RegisteredProtocols { - type Info = RegisteredProtocolsName; - type InfoIter = VecIntoIter; - - #[inline] - fn protocol_info(&self) -> Self::InfoIter { - // We concat the lists of `RegisteredProtocol::protocol_names` for - // each protocol. - self.0.iter().enumerate().flat_map(|(n, proto)| - UpgradeInfo::protocol_info(proto) - .map(move |inner| { - RegisteredProtocolsName { - inner, - index: n, - } - }) - ).collect::>().into_iter() - } -} - -impl Clone for RegisteredProtocols { - fn clone(&self) -> Self { - RegisteredProtocols(self.0.clone()) - } -} - -/// Implementation of `ProtocolName` for several custom protocols. -#[derive(Debug, Clone)] -pub struct RegisteredProtocolsName { - /// Inner registered protocol. - inner: RegisteredProtocolName, - /// Index of the protocol in the list of registered custom protocols. - index: usize, -} - -impl ProtocolName for RegisteredProtocolsName { - fn protocol_name(&self) -> &[u8] { - self.inner.protocol_name() - } -} - -impl InboundUpgrade for RegisteredProtocols -where TSubstream: AsyncRead + AsyncWrite, -{ - type Output = as InboundUpgrade>::Output; - type Future = as InboundUpgrade>::Future; - type Error = io::Error; - - #[inline] - fn upgrade_inbound( - self, - socket: TSubstream, - info: Self::Info, - ) -> Self::Future { - self.0.into_iter() - .nth(info.index) - .expect("invalid protocol index ; programmer logic error") - .upgrade_inbound(socket, info.inner) - } -} - -impl OutboundUpgrade for RegisteredProtocols -where TSubstream: AsyncRead + AsyncWrite, -{ - type Output = >::Output; - type Future = >::Future; - type Error = >::Error; - - #[inline] - fn upgrade_outbound( - self, - socket: TSubstream, - info: Self::Info, - ) -> Self::Future { - // Upgrades are symmetrical. - self.upgrade_inbound(socket, info) - } -} diff --git a/core/network-libp2p/src/lib.rs b/core/network-libp2p/src/lib.rs index 362a47c19d..aa5afb821b 100644 --- a/core/network-libp2p/src/lib.rs +++ b/core/network-libp2p/src/lib.rs @@ -134,8 +134,9 @@ pub struct NetworkStatePeer { /// If true, the peer is "enabled", which means that we try to open Substrate-related protocols /// with this peer. If false, we stick to Kademlia and/or other network-only protocols. pub enabled: bool, - /// List of protocols that we have open with the given peer. - pub open_protocols: HashSet, + /// If true, the peer is "open", which means that we have a Substrate-related protocol + /// with this peer. + pub open: bool, /// List of addresses known for this node, with its reputation score. pub known_addresses: HashMap, } diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index 0c23fc4120..1ac8a6ed75 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -18,8 +18,8 @@ use crate::{ behaviour::Behaviour, behaviour::BehaviourOut, transport, NetworkState, NetworkStatePeer, NetworkStateNotConnectedPeer }; -use crate::custom_proto::{CustomMessage, RegisteredProtocol, RegisteredProtocols}; -use crate::{NetworkConfiguration, NodeIndex, ProtocolId, parse_str_addr}; +use crate::custom_proto::{CustomMessage, RegisteredProtocol}; +use crate::{NetworkConfiguration, NodeIndex, parse_str_addr}; use fnv::FnvHashMap; use futures::{prelude::*, Stream}; use libp2p::{multiaddr::Protocol, Multiaddr, PeerId}; @@ -37,12 +37,11 @@ use tokio_timer::Interval; /// Starts the substrate libp2p service. /// /// Returns a stream that must be polled regularly in order for the networking to function. -pub fn start_service( +pub fn start_service( config: NetworkConfiguration, - registered_custom: TProtos, + registered_custom: RegisteredProtocol, ) -> Result, IoError> -where TProtos: IntoIterator>, - TMessage: CustomMessage + Send + 'static { +where TMessage: CustomMessage + Send + 'static { if let Some(ref path) = config.net_config_path { fs::create_dir_all(Path::new(path))?; @@ -55,7 +54,6 @@ where TProtos: IntoIterator>, // Build the swarm. let (mut swarm, bandwidth) = { - let registered_custom = RegisteredProtocols(registered_custom.into_iter().collect()); let behaviour = Behaviour::new(&config, local_public, registered_custom); let (transport, bandwidth) = transport::build_transport(local_identity); (Swarm::new(transport, behaviour, local_peer_id.clone()), bandwidth) @@ -118,8 +116,6 @@ pub enum ServiceEvent { peer_id: PeerId, /// Index of the node. node_index: NodeIndex, - /// Protocol that has been opened. - protocol: ProtocolId, /// Version of the protocol that was opened. version: u8, /// Node debug info @@ -130,20 +126,6 @@ pub enum ServiceEvent { ClosedCustomProtocol { /// Index of the node. node_index: NodeIndex, - /// Protocol that has been closed. - protocol: ProtocolId, - /// Node debug info - debug_info: String, - }, - - /// Sustom protocol substreams has been closed. - /// - /// Same as `ClosedCustomProtocol` but with multiple protocols. - ClosedCustomProtocols { - /// Index of the node. - node_index: NodeIndex, - /// Protocols that have been closed. - protocols: Vec, /// Node debug info debug_info: String, }, @@ -152,8 +134,6 @@ pub enum ServiceEvent { CustomMessage { /// Index of the node. node_index: NodeIndex, - /// Protocol which generated the message. - protocol_id: ProtocolId, /// Message that has been received. message: TMessage, }, @@ -162,8 +142,6 @@ pub enum ServiceEvent { Clogged { /// Index of the node. node_index: NodeIndex, - /// Protocol which generated the message. - protocol_id: ProtocolId, /// Copy of the messages that are within the buffer, for further diagnostic. messages: Vec, }, @@ -224,7 +202,7 @@ where TMessage: CustomMessage + Send + 'static { version_string: info.client_version.clone(), latest_ping_time: info.latest_ping, enabled: swarm.is_enabled(&info.peer_id), - open_protocols: swarm.open_protocols(&info.peer_id).collect(), + open: swarm.is_open(&info.peer_id), known_addresses, }) }).collect() @@ -340,11 +318,10 @@ where TMessage: CustomMessage + Send + 'static { pub fn send_custom_message( &mut self, node_index: NodeIndex, - protocol: ProtocolId, message: TMessage ) { if let Some(peer_id) = self.nodes_info.get(&node_index).map(|info| &info.peer_id) { - self.swarm.send_custom_message(peer_id, protocol, message); + self.swarm.send_custom_message(peer_id, message); } else { warn!(target: "sub-libp2p", "Tried to send message to unknown node: {:}", node_index); } @@ -416,39 +393,35 @@ where TMessage: CustomMessage + Send + 'static { fn poll_swarm(&mut self) -> Poll>, IoError> { loop { match self.swarm.poll() { - Ok(Async::Ready(Some(BehaviourOut::CustomProtocolOpen { protocol_id, peer_id, version, endpoint }))) => { + Ok(Async::Ready(Some(BehaviourOut::CustomProtocolOpen { peer_id, version, endpoint }))) => { debug!(target: "sub-libp2p", "Opened custom protocol with {:?}", peer_id); let node_index = self.index_of_peer_or_assign(peer_id.clone(), endpoint); break Ok(Async::Ready(Some(ServiceEvent::OpenedCustomProtocol { peer_id, node_index, - protocol: protocol_id, version, debug_info: self.peer_debug_info(node_index), }))) } - Ok(Async::Ready(Some(BehaviourOut::CustomProtocolClosed { protocol_id, peer_id, result }))) => { + Ok(Async::Ready(Some(BehaviourOut::CustomProtocolClosed { peer_id, result }))) => { debug!(target: "sub-libp2p", "Custom protocol with {:?} closed: {:?}", peer_id, result); let node_index = *self.index_by_id.get(&peer_id).expect("index_by_id is always kept in sync with the state of the behaviour"); break Ok(Async::Ready(Some(ServiceEvent::ClosedCustomProtocol { node_index, - protocol: protocol_id, debug_info: self.peer_debug_info(node_index), }))) } - Ok(Async::Ready(Some(BehaviourOut::CustomMessage { protocol_id, peer_id, message }))) => { + Ok(Async::Ready(Some(BehaviourOut::CustomMessage { peer_id, message }))) => { let node_index = *self.index_by_id.get(&peer_id).expect("index_by_id is always kept in sync with the state of the behaviour"); break Ok(Async::Ready(Some(ServiceEvent::CustomMessage { node_index, - protocol_id, message, }))) } - Ok(Async::Ready(Some(BehaviourOut::Clogged { protocol_id, peer_id, messages }))) => { + Ok(Async::Ready(Some(BehaviourOut::Clogged { peer_id, messages }))) => { let node_index = *self.index_by_id.get(&peer_id).expect("index_by_id is always kept in sync with the state of the behaviour"); break Ok(Async::Ready(Some(ServiceEvent::Clogged { node_index, - protocol_id, messages, }))) } diff --git a/core/network-libp2p/tests/test.rs b/core/network-libp2p/tests/test.rs index a514b0b9bb..f8f204c5b8 100644 --- a/core/network-libp2p/tests/test.rs +++ b/core/network-libp2p/tests/test.rs @@ -16,8 +16,8 @@ use futures::{future, stream, prelude::*, try_ready}; use rand::seq::SliceRandom; -use std::{io, iter}; -use substrate_network_libp2p::{CustomMessage, ServiceEvent, multiaddr::Protocol, build_multiaddr}; +use std::io; +use substrate_network_libp2p::{CustomMessage, multiaddr::Protocol, ServiceEvent, build_multiaddr}; /// Builds two services. The second one and further have the first one as its bootstrap node. /// This is to be used only for testing, and a panic will happen if something goes wrong. @@ -41,7 +41,7 @@ fn build_nodes(num: usize) -> Vec> }; let proto = substrate_network_libp2p::RegisteredProtocol::new(*b"tst", &[1]); - result.push(substrate_network_libp2p::start_service(config, iter::once(proto)).unwrap()); + result.push(substrate_network_libp2p::start_service(config, proto).unwrap()); } result @@ -58,8 +58,7 @@ fn basic_two_nodes_connectivity() { let fut1 = future::poll_fn(move || -> io::Result<_> { match try_ready!(service1.poll()) { - Some(ServiceEvent::OpenedCustomProtocol { protocol, version, .. }) => { - assert_eq!(protocol, *b"tst"); + Some(ServiceEvent::OpenedCustomProtocol { version, .. }) => { assert_eq!(version, 1); Ok(Async::Ready(())) }, @@ -69,8 +68,7 @@ fn basic_two_nodes_connectivity() { let fut2 = future::poll_fn(move || -> io::Result<_> { match try_ready!(service2.poll()) { - Some(ServiceEvent::OpenedCustomProtocol { protocol, version, .. }) => { - assert_eq!(protocol, *b"tst"); + Some(ServiceEvent::OpenedCustomProtocol { version, .. }) => { assert_eq!(version, 1); Ok(Async::Ready(())) }, @@ -101,9 +99,9 @@ fn two_nodes_transfer_lots_of_packets() { let fut1 = future::poll_fn(move || -> io::Result<_> { loop { match try_ready!(service1.poll()) { - Some(ServiceEvent::OpenedCustomProtocol { node_index, protocol, .. }) => { + Some(ServiceEvent::OpenedCustomProtocol { node_index, .. }) => { for n in 0 .. NUM_PACKETS { - service1.send_custom_message(node_index, protocol, vec![(n % 256) as u8]); + service1.send_custom_message(node_index, vec![(n % 256) as u8]); } }, _ => panic!(), @@ -231,9 +229,9 @@ fn basic_two_nodes_requests_in_parallel() { let fut1 = future::poll_fn(move || -> io::Result<_> { loop { match try_ready!(service1.poll()) { - Some(ServiceEvent::OpenedCustomProtocol { node_index, protocol, .. }) => { + Some(ServiceEvent::OpenedCustomProtocol { node_index, .. }) => { for msg in to_send.drain(..) { - service1.send_custom_message(node_index, protocol, msg); + service1.send_custom_message(node_index, msg); } }, _ => panic!(), diff --git a/core/network/src/on_demand.rs b/core/network/src/on_demand.rs index d012a1ef4d..f5505cd3aa 100644 --- a/core/network/src/on_demand.rs +++ b/core/network/src/on_demand.rs @@ -532,7 +532,7 @@ pub mod tests { RemoteCallRequest, RemoteReadRequest, RemoteChangesRequest, ChangesProof}; use crate::config::Roles; use crate::message; - use network_libp2p::{NodeIndex, ProtocolId, Severity}; + use network_libp2p::{NodeIndex, Severity}; use crate::service::{network_channel, NetworkPort, NetworkMsg}; use super::{REQUEST_TIMEOUT, OnDemand, OnDemandService}; use test_client::runtime::{changes_trie_config, Block, Header}; @@ -644,7 +644,7 @@ pub mod tests { #[test] fn disconnects_from_timeouted_peer() { let (_x, on_demand) = dummy(true); - let (network_sender, network_port) = network_channel(ProtocolId::default()); + let (network_sender, network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(0, Roles::FULL, 1000); on_demand.on_connect(1, Roles::FULL, 1000); @@ -671,7 +671,7 @@ pub mod tests { #[test] fn disconnects_from_peer_on_response_with_wrong_id() { let (_x, on_demand) = dummy(true); - let (network_sender, network_port) = network_channel(ProtocolId::default()); + let (network_sender, network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(0, Roles::FULL, 1000); @@ -690,7 +690,7 @@ pub mod tests { #[test] fn disconnects_from_peer_on_incorrect_response() { let (_x, on_demand) = dummy(false); - let (network_sender, network_port) = network_channel(ProtocolId::default()); + let (network_sender, network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.remote_call(RemoteCallRequest { block: Default::default(), @@ -709,7 +709,7 @@ pub mod tests { #[test] fn disconnects_from_peer_on_unexpected_response() { let (_x, on_demand) = dummy(true); - let (network_sender, network_port) = network_channel(ProtocolId::default()); + let (network_sender, network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(0, Roles::FULL, 1000); @@ -720,7 +720,7 @@ pub mod tests { #[test] fn disconnects_from_peer_on_wrong_response_type() { let (_x, on_demand) = dummy(false); - let (network_sender, network_port) = network_channel(ProtocolId::default()); + let (network_sender, network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(0, Roles::FULL, 1000); @@ -746,7 +746,7 @@ pub mod tests { let retry_count = 2; let (_x, on_demand) = dummy(false); - let (network_sender, _network_port) = network_channel(ProtocolId::default()); + let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); for i in 0..retry_count+1 { on_demand.on_connect(i, Roles::FULL, 1000); @@ -786,7 +786,7 @@ pub mod tests { #[test] fn receives_remote_call_response() { let (_x, on_demand) = dummy(true); - let (network_sender, _network_port) = network_channel(ProtocolId::default()); + let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(0, Roles::FULL, 1000); @@ -809,7 +809,7 @@ pub mod tests { #[test] fn receives_remote_read_response() { let (_x, on_demand) = dummy(true); - let (network_sender, _network_port) = network_channel(ProtocolId::default()); + let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(0, Roles::FULL, 1000); @@ -834,7 +834,7 @@ pub mod tests { #[test] fn receives_remote_header_response() { let (_x, on_demand) = dummy(true); - let (network_sender, _network_port) = network_channel(ProtocolId::default()); + let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(0, Roles::FULL, 1000); @@ -869,7 +869,7 @@ pub mod tests { #[test] fn receives_remote_changes_response() { let (_x, on_demand) = dummy(true); - let (network_sender, _network_port) = network_channel(ProtocolId::default()); + let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(0, Roles::FULL, 1000); @@ -900,7 +900,7 @@ pub mod tests { #[test] fn does_not_sends_request_to_peer_who_has_no_required_block() { let (_x, on_demand) = dummy(true); - let (network_sender, _network_port) = network_channel(ProtocolId::default()); + let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.on_connect(1, Roles::FULL, 100); @@ -952,7 +952,7 @@ pub mod tests { // loop forever after dispatching a request to the last peer, since the // last peer was not updated let (_x, on_demand) = dummy(true); - let (network_sender, _network_port) = network_channel(ProtocolId::default()); + let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.remote_header(RemoteHeaderRequest { @@ -977,7 +977,7 @@ pub mod tests { #[test] fn tries_to_send_all_pending_requests() { let (_x, on_demand) = dummy(true); - let (network_sender, _network_port) = network_channel(ProtocolId::default()); + let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); on_demand.remote_header(RemoteHeaderRequest { diff --git a/core/network/src/service.rs b/core/network/src/service.rs index 9485203a0d..6a6291af3f 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -153,7 +153,7 @@ impl> Service { protocol_id: ProtocolId, import_queue: Box>, ) -> Result<(Arc>, NetworkChan), Error> { - let (network_chan, network_port) = network_channel(protocol_id); + let (network_chan, network_port) = network_channel(); let status_sinks = Arc::new(Mutex::new(Vec::new())); // Start in off-line mode, since we're not connected to any nodes yet. let is_offline = Arc::new(AtomicBool::new(true)); @@ -370,10 +370,10 @@ impl> ManageNetwork for Service /// Create a NetworkPort/Chan pair. -pub fn network_channel(protocol_id: ProtocolId) -> (NetworkChan, NetworkPort) { +pub fn network_channel() -> (NetworkChan, NetworkPort) { let (network_sender, network_receiver) = channel::unbounded(); let task_notify = Arc::new(AtomicTask::new()); - let network_port = NetworkPort::new(network_receiver, protocol_id, task_notify.clone()); + let network_port = NetworkPort::new(network_receiver, task_notify.clone()); let network_chan = NetworkChan::new(network_sender, task_notify); (network_chan, network_port) } @@ -413,26 +413,24 @@ impl Drop for NetworkChan { /// A receiver of NetworkMsg that makes the protocol-id available with each message. pub struct NetworkPort { receiver: Receiver>, - protocol_id: ProtocolId, task_notify: Arc, } impl NetworkPort { /// Create a new network port for a given protocol-id. - pub fn new(receiver: Receiver>, protocol_id: ProtocolId, task_notify: Arc) -> Self { + pub fn new(receiver: Receiver>, task_notify: Arc) -> Self { Self { receiver, - protocol_id, task_notify, } } /// Receive a message, if any is currently-enqueued. /// Register the current tokio task for notification when a new message is available. - pub fn take_one_message(&self) -> Result)>, ()> { + pub fn take_one_message(&self) -> Result>, ()> { self.task_notify.register(); match self.receiver.try_recv() { - Ok(msg) => Ok(Some((self.protocol_id.clone(), msg))), + Ok(msg) => Ok(Some(msg)), Err(TryRecvError::Empty) => Ok(None), Err(TryRecvError::Disconnected) => Err(()), } @@ -463,10 +461,8 @@ fn start_thread( config: NetworkConfiguration, registered: RegisteredProtocol>, ) -> Result<((oneshot::Sender<()>, thread::JoinHandle<()>), Arc>>>), Error> { - let protocol_id = registered.id(); - // Start the main service. - let service = match start_service(config, Some(registered)) { + let service = match start_service(config, registered) { Ok(service) => Arc::new(Mutex::new(service)), Err(err) => { warn!("Error starting network: {}", err); @@ -478,7 +474,7 @@ fn start_thread( let service_clone = service.clone(); let mut runtime = RuntimeBuilder::new().name_prefix("libp2p-").build()?; let thread = thread::Builder::new().name("network".to_string()).spawn(move || { - let fut = run_thread(protocol_sender, service_clone, network_port, protocol_id) + let fut = run_thread(protocol_sender, service_clone, network_port) .select(close_rx.then(|_| Ok(()))) .map(|(val, _)| val) .map_err(|(err,_ )| err); @@ -499,7 +495,6 @@ fn run_thread( protocol_sender: Sender>, network_service: Arc>>>, network_port: NetworkPort, - protocol_id: ProtocolId, ) -> impl Future { let network_service_2 = network_service.clone(); @@ -511,7 +506,7 @@ fn run_thread( Ok(None) => Ok(Async::NotReady), Err(_) => Err(()) } - }).for_each(move |(protocol_id, msg)| { + }).for_each(move |msg| { // Handle message from Protocol. match msg { NetworkMsg::PeerIds(node_idxs, sender) => { @@ -523,7 +518,7 @@ fn run_thread( NetworkMsg::Outgoing(who, outgoing_message) => { network_service_2 .lock() - .send_custom_message(who, protocol_id, outgoing_message); + .send_custom_message(who, outgoing_message); }, NetworkMsg::ReportPeer(who, severity) => { match severity { @@ -555,13 +550,6 @@ fn run_thread( // The network service produces events about what happens on the network. Let's process them. let network = stream::poll_fn(move || network_service.lock().poll()).for_each(move |event| { match event { - NetworkServiceEvent::ClosedCustomProtocols { node_index, protocols, debug_info } => { - if !protocols.is_empty() { - debug_assert_eq!(protocols, &[protocol_id]); - let _ = protocol_sender.send( - FromNetworkMsg::PeerDisconnected(node_index, debug_info)); - } - } NetworkServiceEvent::OpenedCustomProtocol { peer_id, node_index, version, debug_info, .. } => { debug_assert_eq!(version, protocol::CURRENT_VERSION as u8); let _ = protocol_sender.send(FromNetworkMsg::PeerConnected(peer_id, node_index, debug_info)); diff --git a/core/network/src/test/mod.rs b/core/network/src/test/mod.rs index 24e05daec0..5fa13b58a8 100644 --- a/core/network/src/test/mod.rs +++ b/core/network/src/test/mod.rs @@ -40,7 +40,7 @@ use crossbeam_channel::{self as channel, Sender, select}; use futures::Future; use futures::sync::{mpsc, oneshot}; use crate::message::{Message, ConsensusEngineId}; -use network_libp2p::{NodeIndex, ProtocolId, PeerId}; +use network_libp2p::{NodeIndex, PeerId}; use parity_codec::Encode; use parking_lot::{Mutex, RwLock}; use primitives::{H256, ed25519::Public as AuthorityId}; @@ -554,7 +554,7 @@ pub trait TestNetFactory: Sized { let tx_pool = Arc::new(EmptyTransactionPool); let verifier = self.make_verifier(client.clone(), config); let (block_import, justification_import, data) = self.make_block_import(client.clone()); - let (network_sender, network_port) = network_channel(ProtocolId::default()); + let (network_sender, network_port) = network_channel(); let import_queue = Box::new(BasicQueue::new(verifier, block_import, justification_import)); let status_sinks = Arc::new(Mutex::new(Vec::new())); -- GitLab From 733a1f07dd1b46914834593e05f09e61c253c156 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Tue, 19 Mar 2019 12:13:05 +0100 Subject: [PATCH 045/120] Minor gossip changes (#2038) * core: gossip: don't expire messages based on time * core: gossip: allow forcing resend of gossip messages * core: grandpa: fix tests --- core/finality-grandpa/src/communication.rs | 17 +++--- core/finality-grandpa/src/lib.rs | 15 +++--- core/finality-grandpa/src/tests.rs | 12 +++-- core/network/src/consensus_gossip.rs | 61 +++++++--------------- core/network/src/protocol.rs | 15 ++++-- core/network/src/service.rs | 10 +++- core/network/src/test/mod.rs | 10 +++- 7 files changed, 70 insertions(+), 70 deletions(-) diff --git a/core/finality-grandpa/src/communication.rs b/core/finality-grandpa/src/communication.rs index 1a8ff9ebab..f498b51460 100644 --- a/core/finality-grandpa/src/communication.rs +++ b/core/finality-grandpa/src/communication.rs @@ -130,12 +130,12 @@ impl> Future for BroadcastWorker { if rebroadcast { let SetId(set_id) = self.set_id; if let Some((Round(c_round), ref c_commit)) = self.last_commit { - self.network.send_commit(c_round, set_id, c_commit.clone()); + self.network.send_commit(c_round, set_id, c_commit.clone(), true); } let Round(round) = self.round_messages.0; for message in self.round_messages.1.iter().cloned() { - self.network.send_message(round, set_id, message); + self.network.send_message(round, set_id, message, true); } for (&announce_hash, &Round(round)) in &self.announcements { @@ -143,6 +143,7 @@ impl> Future for BroadcastWorker { } } } + loop { match self.incoming_broadcast.poll().expect("UnboundedReceiver does not yield errors; qed") { Async::NotReady => return Ok(Async::NotReady), @@ -168,7 +169,7 @@ impl> Future for BroadcastWorker { } // always send out to network. - self.network.send_commit(round.0, self.set_id.0, commit); + self.network.send_commit(round.0, self.set_id.0, commit, false); } Broadcast::Message(round, set_id, message) => { if self.set_id == set_id { @@ -182,7 +183,7 @@ impl> Future for BroadcastWorker { } // always send out to network. - self.network.send_message(round.0, set_id.0, message); + self.network.send_message(round.0, set_id.0, message, false); } Broadcast::Announcement(round, set_id, hash) => { if self.set_id == set_id { @@ -215,7 +216,7 @@ impl> Network for BroadcastHandle { self.network.messages_for(round, set_id) } - fn send_message(&self, round: u64, set_id: u64, message: Vec) { + fn send_message(&self, round: u64, set_id: u64, message: Vec, _force: bool) { let _ = self.relay.unbounded_send(Broadcast::Message(Round(round), SetId(set_id), message)); } @@ -231,7 +232,7 @@ impl> Network for BroadcastHandle { self.network.commit_messages(set_id) } - fn send_commit(&self, round: u64, set_id: u64, message: Vec) { + fn send_commit(&self, round: u64, set_id: u64, message: Vec, _force: bool) { let _ = self.relay.unbounded_send(Broadcast::Commit(Round(round), SetId(set_id), message)); } @@ -350,7 +351,7 @@ impl> Sink for OutgoingMessages // announce our block hash to peers and propagate the // message. self.network.announce(self.round, self.set_id, target_hash); - self.network.send_message(self.round, self.set_id, message.encode()); + self.network.send_message(self.round, self.set_id, message.encode(), false); // forward the message to the inner sender. let _ = self.sender.unbounded_send(signed); @@ -526,7 +527,7 @@ impl> Sink for CommitsOut { message: compact_commit, }); - self.network.send_commit(round, self.set_id, Encode::encode(&message)); + self.network.send_commit(round, self.set_id, Encode::encode(&message), false); Ok(AsyncSink::Ready) } diff --git a/core/finality-grandpa/src/lib.rs b/core/finality-grandpa/src/lib.rs index a62cceb655..d6eda5a091 100644 --- a/core/finality-grandpa/src/lib.rs +++ b/core/finality-grandpa/src/lib.rs @@ -283,6 +283,7 @@ impl TopicTracker { ); return true; } + false } } @@ -358,6 +359,7 @@ impl GossipValidator { -> network_gossip::ValidationResult { use grandpa::Message as GrandpaMessage; + if self.is_expired(full.round, full.set_id) { return network_gossip::ValidationResult::Expired; } @@ -392,6 +394,7 @@ impl GossipValidator { let precommits_signed_by: Vec = full.message.auth_data.iter().map(move |(_, a)| { format!("{}", a) }).collect(); + telemetry!(CONSENSUS_INFO; "afg.received_commit_msg"; "contains_precommits_signed_by" => ?precommits_signed_by, "round" => ?full.round, @@ -442,7 +445,7 @@ pub trait Network: Clone { fn messages_for(&self, round: u64, set_id: u64) -> Self::In; /// Send a message at a specific round out. - fn send_message(&self, round: u64, set_id: u64, message: Vec); + fn send_message(&self, round: u64, set_id: u64, message: Vec, force: bool); /// Clean up messages for a round. fn drop_round_messages(&self, round: u64, set_id: u64); @@ -455,7 +458,7 @@ pub trait Network: Clone { fn commit_messages(&self, set_id: u64) -> Self::In; /// Send message over the commit channel. - fn send_commit(&self, round: u64, set_id: u64, message: Vec); + fn send_commit(&self, round: u64, set_id: u64, message: Vec, force: bool); /// Inform peers that a block with given hash should be downloaded. fn announce(&self, round: u64, set_id: u64, block: Block::Hash); @@ -508,9 +511,9 @@ impl,> Network) { + fn send_message(&self, round: u64, set_id: u64, message: Vec, force: bool) { let topic = message_topic::(round, set_id); - self.service.gossip_consensus_message(topic, GRANDPA_ENGINE_ID, message); + self.service.gossip_consensus_message(topic, GRANDPA_ENGINE_ID, message, force); } fn drop_round_messages(&self, round: u64, set_id: u64) { @@ -533,9 +536,9 @@ impl,> Network) { + fn send_commit(&self, _round: u64, set_id: u64, message: Vec, force: bool) { let topic = commit_topic::(set_id); - self.service.gossip_consensus_message(topic, GRANDPA_ENGINE_ID, message); + self.service.gossip_consensus_message(topic, GRANDPA_ENGINE_ID, message, force); } fn announce(&self, round: u64, _set_id: u64, block: B::Hash) { diff --git a/core/finality-grandpa/src/tests.rs b/core/finality-grandpa/src/tests.rs index a6a9f32a9d..6daddea562 100644 --- a/core/finality-grandpa/src/tests.rs +++ b/core/finality-grandpa/src/tests.rs @@ -193,9 +193,10 @@ impl Network for MessageRouting { Box::new(messages) } - fn send_message(&self, round: u64, set_id: u64, message: Vec) { + fn send_message(&self, round: u64, set_id: u64, message: Vec, force: bool) { let inner = self.inner.lock(); - inner.peer(self.peer_id).gossip_message(make_topic(round, set_id), GRANDPA_ENGINE_ID, message); + inner.peer(self.peer_id) + .gossip_message(make_topic(round, set_id), GRANDPA_ENGINE_ID, message, force); } fn drop_round_messages(&self, round: u64, set_id: u64) { @@ -214,7 +215,7 @@ impl Network for MessageRouting { self.validator.note_set(set_id); let inner = self.inner.lock(); let peer = inner.peer(self.peer_id); - let messages = peer.consensus_gossip_messages_for( + let messages = peer.consensus_gossip_messages_for( GRANDPA_ENGINE_ID, make_commit_topic(set_id), ); @@ -226,9 +227,10 @@ impl Network for MessageRouting { Box::new(messages) } - fn send_commit(&self, _round: u64, set_id: u64, message: Vec) { + fn send_commit(&self, _round: u64, set_id: u64, message: Vec, force: bool) { let inner = self.inner.lock(); - inner.peer(self.peer_id).gossip_message(make_commit_topic(set_id), GRANDPA_ENGINE_ID, message); + inner.peer(self.peer_id) + .gossip_message(make_commit_topic(set_id), GRANDPA_ENGINE_ID, message, force); } fn announce(&self, _round: u64, _set_id: u64, _block: H256) { diff --git a/core/network/src/consensus_gossip.rs b/core/network/src/consensus_gossip.rs index 72a384e97a..4d45f26143 100644 --- a/core/network/src/consensus_gossip.rs +++ b/core/network/src/consensus_gossip.rs @@ -19,7 +19,6 @@ use std::collections::{HashMap, HashSet}; use std::sync::Arc; -use std::time::{Instant, Duration}; use log::{trace, debug}; use futures::sync::mpsc; use rand::{self, seq::SliceRandom}; @@ -32,7 +31,6 @@ use crate::config::Roles; use crate::ConsensusEngineId; // FIXME: Add additional spam/DoS attack protection: https://github.com/paritytech/substrate/issues/1115 -const MESSAGE_LIFETIME: Duration = Duration::from_secs(120); const KNOWN_MESSAGES_CACHE_SIZE: usize = 4096; struct PeerConsensus { @@ -50,7 +48,6 @@ struct MessageEntry { message_hash: B::Hash, topic: B::Hash, message: ConsensusMessage, - timestamp: Instant, status: Status, } @@ -115,11 +112,9 @@ impl ConsensusGossip { pub fn new_peer(&mut self, protocol: &mut Context, who: NodeIndex, roles: Roles) { if roles.intersects(Roles::AUTHORITY) { trace!(target:"gossip", "Registering {:?} {}", roles, who); - let now = Instant::now(); // Send out all known messages to authorities. let mut known_messages = HashSet::new(); for entry in self.messages.iter() { - if entry.timestamp + MESSAGE_LIFETIME < now { continue } if let Status::Future = entry.status { continue } known_messages.insert(entry.message_hash); @@ -143,12 +138,13 @@ impl ConsensusGossip { protocol: &mut Context, message_hash: B::Hash, get_message: F, + force: bool, ) where F: Fn() -> ConsensusMessage, { let mut non_authorities: Vec<_> = self.peers.iter() .filter_map(|(id, ref peer)| - if !peer.is_authority && !peer.known_messages.contains(&message_hash) { + if !peer.is_authority && (!peer.known_messages.contains(&message_hash) || force) { Some(*id) } else { None @@ -165,17 +161,15 @@ impl ConsensusGossip { for (id, ref mut peer) in self.peers.iter_mut() { if peer.is_authority { - if peer.known_messages.insert(message_hash.clone()) { + if peer.known_messages.insert(message_hash.clone()) || force { let message = get_message(); trace!(target:"gossip", "Propagating to authority {}: {:?}", id, message); protocol.send_message(*id, Message::Consensus(message)); } } else if non_authorities.contains(&id) { - if peer.known_messages.insert(message_hash.clone()) { - let message = get_message(); - trace!(target:"gossip", "Propagating to {}: {:?}", id, message); - protocol.send_message(*id, Message::Consensus(message)); - } + let message = get_message(); + trace!(target:"gossip", "Propagating to {}: {:?}", id, message); + protocol.send_message(*id, Message::Consensus(message)); } } } @@ -194,7 +188,6 @@ impl ConsensusGossip { topic, message_hash, message: get_message(), - timestamp: Instant::now(), status, }); } @@ -218,7 +211,6 @@ impl ConsensusGossip { let known_messages = &mut self.known_messages; let before = self.messages.len(); let validators = &self.validators; - let now = Instant::now(); let mut check_fns = HashMap::new(); let mut message_expired = move |entry: &MessageEntry| { @@ -234,9 +226,7 @@ impl ConsensusGossip { (check_fn)(entry.topic, &entry.message.data) }; - self.messages.retain(|entry| - entry.timestamp + MESSAGE_LIFETIME >= now && !message_expired(entry) - ); + self.messages.retain(|entry| !message_expired(entry)); trace!(target: "gossip", "Cleaned up {} stale messages, {} left ({} known)", before - self.messages.len(), @@ -332,7 +322,7 @@ impl ConsensusGossip { Some(ValidationResult::Expired) => { trace!(target:"gossip", "Ignored expired message from {}", who); return None; - } + }, None => { protocol.report_peer( who, @@ -341,7 +331,7 @@ impl ConsensusGossip { trace!(target:"gossip", "Unknown message engine id {:?} from {}", engine_id, who); return None; - } + }, }; peer.known_messages.insert(message_hash); @@ -357,7 +347,7 @@ impl ConsensusGossip { entry.remove_entry(); } } - self.multicast_inner(protocol, message_hash, topic, status, || message.clone()); + self.multicast_inner(protocol, message_hash, topic, status, || message.clone(), false); Some((topic, message)) } else { trace!(target:"gossip", "Ignored statement from unregistered peer {}", who); @@ -371,9 +361,10 @@ impl ConsensusGossip { protocol: &mut Context, topic: B::Hash, message: ConsensusMessage, + force: bool, ) { let message_hash = HashFor::::hash(&message.data); - self.multicast_inner(protocol, message_hash, topic, Status::Live, || message.clone()); + self.multicast_inner(protocol, message_hash, topic, Status::Live, || message.clone(), force); } fn multicast_inner( @@ -383,25 +374,20 @@ impl ConsensusGossip { topic: B::Hash, status: Status, get_message: F, + force: bool, ) where F: Fn() -> ConsensusMessage { self.register_message(message_hash, topic, status, &get_message); if let Status::Live = status { - self.propagate(protocol, message_hash, get_message); + self.propagate(protocol, message_hash, get_message, force); } } - - /// Note new consensus session. - pub fn new_session(&mut self, _parent_hash: B::Hash) { - self.collect_garbage(); - } } #[cfg(test)] mod tests { use runtime_primitives::testing::{H256, Block as RawBlock, ExtrinsicWrapper}; - use std::time::Instant; use futures::Stream; use super::*; @@ -409,13 +395,12 @@ mod tests { type Block = RawBlock>; macro_rules! push_msg { - ($consensus:expr, $topic:expr, $hash: expr, $now: expr, $m:expr) => { + ($consensus:expr, $topic:expr, $hash: expr, $m:expr) => { if $consensus.known_messages.insert($hash, ()).is_none() { $consensus.messages.push(MessageEntry { topic: $topic, message_hash: $hash, - message: ConsensusMessage { data: $m, engine_id: [0, 0, 0, 0]}, - timestamp: $now, + message: ConsensusMessage { data: $m, engine_id: [0, 0, 0, 0] }, status: Status::Live, }); } @@ -450,9 +435,8 @@ mod tests { let m1 = vec![1, 2, 3]; let m2 = vec![4, 5, 6]; - let now = Instant::now(); - push_msg!(consensus, prev_hash, m1_hash, now, m1); - push_msg!(consensus, best_hash, m2_hash, now, m2.clone()); + push_msg!(consensus, prev_hash, m1_hash, m1); + push_msg!(consensus, best_hash, m2_hash, m2.clone()); consensus.known_messages.insert(m1_hash, ()); consensus.known_messages.insert(m2_hash, ()); @@ -470,15 +454,6 @@ mod tests { // known messages are only pruned based on size. assert_eq!(consensus.known_messages.len(), 2); assert!(consensus.known_messages.contains_key(&m2_hash)); - - // make timestamp expired, but the message is still kept as known - consensus.messages.clear(); - consensus.known_messages.clear(); - consensus.register_validator(test_engine_id, Arc::new(AllowAll)); - push_msg!(consensus, best_hash, m2_hash, now - MESSAGE_LIFETIME, m2.clone()); - consensus.collect_garbage(); - assert!(consensus.messages.is_empty()); - assert_eq!(consensus.known_messages.len(), 1); } #[test] diff --git a/core/network/src/protocol.rs b/core/network/src/protocol.rs index 9636d1bb14..bcfd1d07e5 100644 --- a/core/network/src/protocol.rs +++ b/core/network/src/protocol.rs @@ -240,7 +240,7 @@ pub enum ProtocolMsg> { /// Execute a closure with the consensus gossip. ExecuteWithGossip(Box + Send + 'static>), /// Incoming gossip consensus message. - GossipConsensusMessage(B::Hash, ConsensusEngineId, Vec), + GossipConsensusMessage(B::Hash, ConsensusEngineId, Vec, bool), /// Tell protocol to abort sync (does not stop protocol). /// Only used in tests. #[cfg(any(test, feature = "test-helpers"))] @@ -380,8 +380,8 @@ impl, H: ExHashT> Protocol { ProtocolContext::new(&mut self.context_data, &self.network_chan); task.call_box(&mut self.consensus_gossip, &mut context); } - ProtocolMsg::GossipConsensusMessage(topic, engine_id, message) => { - self.gossip_consensus_message(topic, engine_id, message) + ProtocolMsg::GossipConsensusMessage(topic, engine_id, message, force) => { + self.gossip_consensus_message(topic, engine_id, message, force) } ProtocolMsg::BlocksProcessed(hashes, has_error) => { self.sync.blocks_processed(hashes, has_error); @@ -503,11 +503,18 @@ impl, H: ExHashT> Protocol { ); } - fn gossip_consensus_message(&mut self, topic: B::Hash, engine_id: ConsensusEngineId, message: Vec) { + fn gossip_consensus_message( + &mut self, + topic: B::Hash, + engine_id: ConsensusEngineId, + message: Vec, + force: bool, + ) { self.consensus_gossip.multicast( &mut ProtocolContext::new(&mut self.context_data, &self.network_chan), topic, ConsensusMessage{ data: message, engine_id }, + force, ); } diff --git a/core/network/src/service.rs b/core/network/src/service.rs index 6a6291af3f..714192b7f0 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -247,11 +247,17 @@ impl> Service { } /// Send a consensus message through the gossip - pub fn gossip_consensus_message(&self, topic: B::Hash, engine_id: ConsensusEngineId, message: Vec) { + pub fn gossip_consensus_message( + &self, + topic: B::Hash, + engine_id: ConsensusEngineId, + message: Vec, + force: bool, + ) { let _ = self .protocol_sender .send(ProtocolMsg::GossipConsensusMessage( - topic, engine_id, message, + topic, engine_id, message, force, )); } diff --git a/core/network/src/test/mod.rs b/core/network/src/test/mod.rs index 5fa13b58a8..afdac863ab 100644 --- a/core/network/src/test/mod.rs +++ b/core/network/src/test/mod.rs @@ -355,10 +355,16 @@ impl + Clone> Peer { /// Push a message into the gossip network and relay to peers. /// `TestNet::sync_step` needs to be called to ensure it's propagated. - pub fn gossip_message(&self, topic: ::Hash, engine_id: ConsensusEngineId, data: Vec) { + pub fn gossip_message( + &self, + topic: ::Hash, + engine_id: ConsensusEngineId, + data: Vec, + force: bool, + ) { let _ = self .protocol_sender - .send(ProtocolMsg::GossipConsensusMessage(topic, engine_id, data)); + .send(ProtocolMsg::GossipConsensusMessage(topic, engine_id, data, force)); } pub fn consensus_gossip_collect_garbage_for_topic(&self, _topic: ::Hash) { -- GitLab From adce60eab52e6398d8d34c334d1bbc896f263eed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Tue, 19 Mar 2019 12:13:49 +0100 Subject: [PATCH 046/120] Fix grandpa aux schema migration (#2040) * core: grandpa: fix aux schema migration * core: grandpa: test aux schema migration --- core/finality-grandpa/src/aux_schema.rs | 89 ++++++++++++++++++++++++- 1 file changed, 87 insertions(+), 2 deletions(-) diff --git a/core/finality-grandpa/src/aux_schema.rs b/core/finality-grandpa/src/aux_schema.rs index eb187d877b..cb41d481e3 100644 --- a/core/finality-grandpa/src/aux_schema.rs +++ b/core/finality-grandpa/src/aux_schema.rs @@ -39,7 +39,8 @@ const CONSENSUS_CHANGES_KEY: &[u8] = b"grandpa_consensus_changes"; const CURRENT_VERSION: u32 = 1; /// The voter set state. -#[derive(Clone, Encode, Decode)] +#[derive(Debug, Clone, Encode, Decode)] +#[cfg_attr(test, derive(PartialEq))] pub enum VoterSetState { /// The voter set state, currently paused. Paused(u64, RoundState), @@ -160,7 +161,11 @@ pub(crate) fn load_persistent( backend.insert_aux(&[(AUTHORITY_SET_KEY, new_set.encode().as_slice())], &[])?; let set_state = match load_decode::<_, V0VoterSetState>(backend, SET_STATE_KEY)? { - Some((number, state)) => VoterSetState::Live(number, state), + Some((number, state)) => { + let set_state = VoterSetState::Live(number, state); + backend.insert_aux(&[(SET_STATE_KEY, set_state.encode().as_slice())], &[])?; + set_state + }, None => VoterSetState::Live(0, make_genesis_round()), }; @@ -273,3 +278,83 @@ pub(crate) fn load_authorities(backend: &B) load_decode::<_, AuthoritySet>(backend, AUTHORITY_SET_KEY) .expect("backend error") } + +#[cfg(test)] +mod test { + use substrate_primitives::H256; + use test_client; + use super::*; + + #[test] + fn load_decode_migrates_data_format() { + let client = test_client::new(); + + let authorities = vec![(AuthorityId::default(), 100)]; + let set_id = 3; + let round_number = 42; + let round_state = RoundState:: { + prevote_ghost: None, + finalized: None, + estimate: None, + completable: false, + }; + + { + let authority_set = V0AuthoritySet:: { + current_authorities: authorities.clone(), + pending_changes: Vec::new(), + set_id, + }; + + let voter_set_state = (round_number, round_state.clone()); + + client.insert_aux( + &[ + (AUTHORITY_SET_KEY, authority_set.encode().as_slice()), + (SET_STATE_KEY, voter_set_state.encode().as_slice()), + ], + &[], + ).unwrap(); + } + + assert_eq!( + load_decode::<_, u32>(&client, VERSION_KEY).unwrap(), + None, + ); + + // should perform the migration + load_persistent( + &client, + H256::random(), + 0, + || unreachable!(), + ).unwrap(); + + assert_eq!( + load_decode::<_, u32>(&client, VERSION_KEY).unwrap(), + Some(1), + ); + + let PersistentData { authority_set, set_state, .. } = load_persistent( + &client, + H256::random(), + 0, + || unreachable!(), + ).unwrap(); + + assert_eq!( + *authority_set.inner().read(), + AuthoritySet { + current_authorities: authorities, + pending_standard_changes: ForkTree::new(), + pending_forced_changes: Vec::new(), + set_id, + }, + ); + + assert_eq!( + set_state, + VoterSetState::Live(round_number, round_state), + ); + } +} -- GitLab From f99694028b3717800b2285d1e61d891326e83506 Mon Sep 17 00:00:00 2001 From: thiolliere Date: Tue, 19 Mar 2019 18:05:07 +0100 Subject: [PATCH 047/120] Fix lazy initialisation bug for parametizability (#2046) remove lazy and compute prefix at compile time --- Cargo.lock | 1 - core/test-runtime/wasm/Cargo.lock | 36 +++++++- .../substrate_test_runtime.compact.wasm | Bin 56631 -> 56646 bytes node-template/runtime/wasm/Cargo.lock | 36 +++++++- node/runtime/src/lib.rs | 2 +- node/runtime/wasm/Cargo.lock | 36 +++++++- .../release/node_runtime.compact.wasm | Bin 891960 -> 892427 bytes srml/support/Cargo.toml | 1 - srml/support/procedural/src/storage/impls.rs | 20 +++-- .../procedural/src/storage/transformation.rs | 77 +++++++++--------- srml/support/src/lib.rs | 15 ---- 11 files changed, 156 insertions(+), 68 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ec9c313c71..c45cdd8606 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3386,7 +3386,6 @@ dependencies = [ "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", diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index 2099e14a7a..970620522b 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -489,6 +489,14 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "heck" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "hex" version = "0.3.2" @@ -1449,7 +1457,6 @@ dependencies = [ "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", @@ -1515,6 +1522,22 @@ name = "static_assertions" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "strum" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "strum_macros" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "substrate-bip39" version = "0.2.0" @@ -1618,6 +1641,8 @@ version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 0.1.0", ] @@ -2059,6 +2084,11 @@ dependencies = [ "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "unicode-segmentation" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "unicode-xid" version = "0.1.0" @@ -2218,6 +2248,7 @@ dependencies = [ "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" +"checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" "checksum hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "27455ce8b4a6666c87220e4b59c9a83995476bdadc10197905e61dbe906e36fa" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" @@ -2322,6 +2353,8 @@ dependencies = [ "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1810e25f576e7ffce1ff5243b37066da5ded0310b3274c20baaeccb1145b2806" +"checksum strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "572a2f4e53dd4c3483fd79e5cc10ddd773a3acb1169bbfe8762365e107110579" "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" @@ -2354,6 +2387,7 @@ dependencies = [ "checksum uint 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7780bb27fd8a22295e0d9d53ae3be253f715a0dccb1808527f478f1c2603708" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" +"checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 4e37d4101a2d12f63345fc1ba4b5e05e99dbd912..6c7778e9ff926d4bcfd99ff14bf3c78ec0d1963c 100644 GIT binary patch delta 2810 zcma)7X>1kO6`q-A8?P|l;3W<)Hpa0_Y-aAv+_~5IhaXKSfdYYGk~Rf1%N?+53^8^C z>Vks^G6V?p&vLsEx};8)ah;=fYlqmU?hSni9ON)G4BuYp>* z5$~OqUGfpgs(J|T6;&JXey}Q`9@*U|HP4l#d6JZ)$w>F-s`A;n13Qr}O;glaiR)4E zvIa#SiN3k~OS0SpKU}d~9)%k#K76FFs~)4Y^n_F?o$9KmDLW&Ps}`4~KbDuFrE8O@ zgpkNa+RvVBQsmRHdewK8t^+W>{nHwps`RGBDMvI=EA}@NY2_xfN_jFhbR{~KW~#)|$ZSsB%@bQ>rdo6e=656u-Q1Cx zmO8&E+Q0R58Xrj!^p8^(-J?`fl>JFc4V~(JN;MCw?tCeF@q6o%m3;R68l+vZJx3|L zk>VPe$OW5rOv}ETOrjqS>{x{{H+DQB_XB_7Ul_@D<|yL{J>6A@GDSbwbq77sfjvfs z(zO?U_x&~1W2%gd_hS$-(LI)U(oCaDJ4zCBl$E#|fn`uD_e8tlW){lZ@snY^ulVW5 zlSffxElW#NpTGk8qa{C^mTZdX-d=S(#l?^VyIqbPW3po5Xfu>RN7PV)NPR_1=4QP5 zc&unN71e_oB*P9O;*jh+{Gfaeet!6&Isg6mi_PkhCp0U%eR$_&d|{qDwg5Bw?XlZq zg20(yZ>i|S`AQ8$@(}A@ZkUm#P^BInIwl5g?;H%;+v`?zr2=pck^#w)8Y>1z3hg+a zimk zr%Lj&GzpWi6-mvKB)D@5@D+UNjd{7b()`oC$3K1f)`uULMDM<_P0sygz9J<$JMpWt zGY`BspUG}t-?Xu%rAf32IP>N+QCZ)h9KY|I`>6PqXxX@Flh`0y+o9%6Da<hzXa`MK0U}Y z12J_X;!eC!Iw>bDwSU{a2Y{(&+<$P-|N6Lp1_n$d8XWg;M1M8L{TMM9u?I1Rco{Jt z@dLzZh&QpSq!gpL))3?As#G9t8#@%&67ort@XF3mrKyM-Vp6kDabp~DGp3y+Sb+XH zh|eMxBYq77lcg|ql<$D{UM0MG{?S58!bi6-?I&qz^V%yRL3$b$MlHdn>Ml;aP7jvLPmrc zGTm`ZVjIk+@uM=7z88lD7rRu9w?o|sOqV$UXFhyzakt6{A3?#wg+1-m8pdJ zzA)_22yJ0Gt_w#lm8uT$Ts)6chcM3(4h&s-xY+irWX6WWs2x&YOeb{}E8&6bGYf?8 z32G28w74m_%V#_Sf4uZSVQuYtYU_qcJxT*=87|YI{qnM@26K}?&-IOf+NQ28sOz8> zlwK)=JC{|}@lZ^Y`CR9w@A?6hT(MMYIH4&VLLA0PsC&?OrCtpgrM5+U!fm8;OnCi@ zU1-{_j|T+4?i$qdg7W*~7W#~#x?#X<)3J1&&R%<0_}Q@kYO#v>aNp;S9fpP%Z~@1z z)~jBi^S}#Dmk{b(fd%RP=tSKF4Y)}{JK#ElhWrfkB>2EHuxg$c` z#mxZ^0zar;3LjmJgFR4DAecpT;hP4bPGAzNrZx5Gg@FaCX;?TPfzT=UIOi0G24<>) zhC&cigud`X&od$Wof1{Ieb?ot+;AfMovX4+JjZc~M@;IQ*wp}v1{+jF%kWVz ztd3YdfvtnJ`IeyzVPn6UXM4;w9r#3<4j&CZmCtnHdA>t+o#?txL@m_BN}>7s%KX4} zg~fbgA!4hnI#?c?9{uh5fUG(;3hz+IK^3jg=h5YNTb2CK#+-%8iDy_A3;nOa+O!$a z{C-V-Xz2n+)bj}{DIESdbf!&}7s0jn?OCB`d7f@FVspVwsxQuO>)71h=!tbrt&JV6 z&o#9M5FheYj|Y}TI18!8JUwLa;!wTHt(sG4$Iysw@M@h@6IS&f4P+`f delta 2787 zcmZuydu-L#8Ml3tkSCnHAe2X)5JCbCoMZbO+aZ7CB1T&fP$-Xe1%iESLl^`Whzi<+ z(4{OeV1bWzZ0pvdO^EHEv3U$iX&XU-@+c%M-6%v_H0^KFFyVi}$LUb$H)jlO+3gb}4J7Dav$3$^Tev{&hnoxk{M6x&2K3T1lS;Mni;f17wzHD?q_iUQ zD+O74ranw42+3TOz5RTXrv3_+FZs51rxW^?JgK(9f0j_SKdxQ6EejR*?ka)P%l}$( zcz2f~v;(TH%}{NvJ)vvKBk=Z$C(4fF12Rp?OLp!-gQ9UbZ9v=ZQ80DKusE;rTte-N z|KN|zQgh;4tN)%r^`5n=it0UUr^Q-xAu?!+c=k8OtLimqYMEZz*_k>Ib4~VR4TYv) z*0bTQmO9+}dCOvyn7#3&TK_>htTt^hto&3|X(n4oD%qy35n34<*=v&bC^p;Zrhe0c<_ADIC7$%$j|uVaO!|6g+R+vhR& z87FtpNs6viYx%l@gHx?3L`AD)4M!^%t+GK2U-oR=r>jJTdnWCH6_{BhTorm=Y#j&i&^Wu7TL5O&c63zJg)1Snm@Rn))H=5 zzcDU2r9aLO9xtBR6| zI8P-?0iuaG2Ju9KC@%1`&u=Y9s}h+#8d2&Ix8SAWbr;vwkMM0n`~~Fk3-@6E&LRGr z$QM7t&qX^G&+Di^9x;6);&!}p@VbpW?%(?00bre?7!!Wjrp_JH#(Vz83x3 z5%Uo{5fg|<5epH|B9215g;}La(T{5#QOP7qkpkP#6?vbbITD%dtidW>$8{O5H)5bE z7lHf~L=UkP@dZ3Og*vWNev2}c^ilWM&)_;$yVOysp9go(oyI?=$`QGb|1-fSA1oTd ze3x^>m4@xQ1~p*e`Klu3`=O+v5eAN9`;v|L7EJrN8h(3zW^oiyDVX4nKtA*=vb-Ly zoG*p(7i_`}W(JXrxZxQ#rw)V{))DT7zH2f&2)IDbfxldMrkJ^myOf92F>L8tyzGby z^y4xZxH=4$UEEeIt}L3rT$ zoO)b_4z(Q_!CRNgi+F&X&jcpOICspk92WFd7Or-<&8Qqz+Shx12DGjv4|g{H-*Z+MYDtG-oOKrdH7 z?qxz8%Xd94B54YnGiku&%N8*yw=F@L9~mN`feFo*8;B*P#XK5DCY6ji4BoxWi+v_N z5&04W^Zwlp{vhdB{t2E2czfk@Z0 zDT{p13`1MuDJ9(v#I-Q9$a7LkX5d;7bk~ze$k5{!HkkQ=OMN)fy{0G#sqI@~aHAK&gxRK`Djrg4N-^DFm$Al zmdop5L1J8d@1q`-7!eJq6_}CmTni^C?)y`-R>-k{G6<#caFm&EJPj)|#>1BDQwzDU zeSr-OY&QzA$In7r#>kS{g)OZcH#Pd?Q7Tmf~L5vU+#38V##0iT67~402xYRaH z&u~2MILt6CnBT`qgmtnboNP}zp@BR1_f-+!c5wsck#87g#9g@1_q7T>mDV;lty;Zl Y?H0W{GK@fa)ML6qnOjTETFPtw2bO3aF#rGn diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index de85eaeeda..07c52b00a7 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -489,6 +489,14 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "heck" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "hex" version = "0.3.2" @@ -1616,7 +1624,6 @@ dependencies = [ "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", @@ -1696,6 +1703,22 @@ name = "static_assertions" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "strum" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "strum_macros" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "substrate-bip39" version = "0.2.0" @@ -1799,6 +1822,8 @@ version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 0.1.0", ] @@ -2210,6 +2235,11 @@ dependencies = [ "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "unicode-segmentation" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "unicode-xid" version = "0.1.0" @@ -2369,6 +2399,7 @@ dependencies = [ "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" +"checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" "checksum hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "27455ce8b4a6666c87220e4b59c9a83995476bdadc10197905e61dbe906e36fa" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" @@ -2473,6 +2504,8 @@ dependencies = [ "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1810e25f576e7ffce1ff5243b37066da5ded0310b3274c20baaeccb1145b2806" +"checksum strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "572a2f4e53dd4c3483fd79e5cc10ddd773a3acb1169bbfe8762365e107110579" "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" @@ -2505,6 +2538,7 @@ dependencies = [ "checksum uint 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7780bb27fd8a22295e0d9d53ae3be253f715a0dccb1808527f478f1c2603708" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" +"checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index b1199d2891..a54d14dea8 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -59,7 +59,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 37, - impl_version: 40, + impl_version: 41, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 50a8459160..16b34a083b 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -489,6 +489,14 @@ dependencies = [ "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "heck" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "hex" version = "0.3.2" @@ -1747,7 +1755,6 @@ dependencies = [ "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", @@ -1842,6 +1849,22 @@ name = "static_assertions" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "strum" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "strum_macros" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "substrate-bip39" version = "0.2.0" @@ -1956,6 +1979,8 @@ version = "0.1.0" dependencies = [ "hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-primitives 0.1.0", ] @@ -2367,6 +2392,11 @@ dependencies = [ "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "unicode-segmentation" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "unicode-xid" version = "0.1.0" @@ -2526,6 +2556,7 @@ dependencies = [ "checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" +"checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" "checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" "checksum hex-literal 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "27455ce8b4a6666c87220e4b59c9a83995476bdadc10197905e61dbe906e36fa" "checksum hex-literal-impl 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1d340b6514f232f6db1bd16db65302a5278a04fef9ce867cb932e7e5fa21130a" @@ -2631,6 +2662,8 @@ dependencies = [ "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1810e25f576e7ffce1ff5243b37066da5ded0310b3274c20baaeccb1145b2806" +"checksum strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "572a2f4e53dd4c3483fd79e5cc10ddd773a3acb1169bbfe8762365e107110579" "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" "checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" "checksum subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "702662512f3ddeb74a64ce2fbbf3707ee1b6bb663d28bb054e0779bbc720d926" @@ -2663,6 +2696,7 @@ dependencies = [ "checksum uint 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7780bb27fd8a22295e0d9d53ae3be253f715a0dccb1808527f478f1c2603708" "checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" +"checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index d3cd9bbcfb4e7b91cfce9282a20269b74c7ffe75..e41cd76b9c322855f2f771b84357998f867410ad 100644 GIT binary patch delta 295000 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�-o1(j^ZX=#G| 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

cUu>EsSIGr(_)Weaic-RT@GU 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̿EXL?JR`pUDs3z+5QXL+lf@?O9+ zM#GQKhgv>)kQ>+U|HLaxu;73&oU@jC>5ZWHbkDcldq|$x?ae%i#AD79VKHLSnIc_( zTI#*?%~e#OFMR$J?}r%_``o;XZ|T37_tock$2&{)=yM^?34QRnSc6OTvU9y!)b<U@m+&B&v=OScvM?=Xu8ff|cjvd)Quoc)oWy-|cmQ*HrcTO->?~jh<4HEj^{y zY#bJsjl(Xq8;1>B=KX%RZcLR}O`J?=@BXit8AaMLa%9woY8rDV3r3twb53@YVBR8ze0Cp*K%H)h`}W`o8P;-L?Ygnp)D^#>alCG$dZdxA^H`k&Zd#& zED$T8Xq5c3%P3inGq5FZF>r}a;FCovl|_fr3j%604jO}4Bhv9q`3|YGo#awS?|dod z_0<<4I(?fi54qSIwHJ*t)r;60EpFY-e<^C6Z345ATQg$9Ol`0Gv=8E)JY8RLvDdoy zH6mwAy?XJuev9%sn>2Zv>F)6MJ7b+9k!BhSCiR;p`jkt&mSF>YbgOaw3%6`L?T>b)6E(eQz=P8jXKS2&S z^NaSlYh;hR%e!R*fOf2GaoGS)pQOFP^G@NRWHx&`0lr&v(kt4^DIl(~soC4O*v*hx zPLY^!+9Sjv))BcjCK8j`Q&vbr464_=aBQjm_bP7)J)Gt&L*fE0BR8`Xxuvrjh#_V#Qde0uEP-*lM8oflwCi^d)E!XJe$mw#0rpZp! z=g7Tp8h9GFLV);%GFQ@7!ZW&KVllFZILN}URA#onL#ior?HLcqyf+3c+?qvWlFa47 z|4+=N*-9%aQ~G~wE)QVHp8)}S=dv5I*{sd#v$42LXE%T?)AKFLI_%QDrsdXss2EPMheW0{q) z&Pf=tWT63pxMI%|&FHW8R)$mX&03P#v14R3`->QsEx>H8Mc3%^m~5-Vxmq!f$FS(b zFyxm$7(5nZTpm#cu|Z%zmk`1=$0%{|MXCJlhLNbm{BU5H-^hAQo)tGGXUxsYwsVFi zz##o%2Kmg2Zo3O%A8J`tRmdPI@nlois*{7ka&vM}g>G(1K~7TWHKiD@{f$goR;pai zO_2bAhqAIHZBB}r4q4+Ap6RB|OdCiW+fB&^qBk<`EFP_vr)tx)0L!%qpp5~dFR9!N z=B7$+%;5tRG=I6>f;bkuA~*Io-`S2j)Pi zWE5yfACY0e`g23o$2^s`g?y`;WmEL{)~UAS(Pg7;um6{sk07(KxBn^g0r9^R^Re~* z&zMg)hhg_;KKs#`H;b5$;NgY{mT(dwSTD#Gg7u7CL;hp-0<;9{X`vvN|4>>l!Gix7 z(O57Yf+b{a0D_euc>sbX^yeE0Rxdp&pjkrXLQ2MJAVZ9DL@En)nj}=pkT0lLDS6vX z*Eu6TB%wS*qw-6Rz0Nb$Ics7%=7Nm`s=Y+AKUUAw?aWh0k*}o)rpCZ4Ny`gm#Wod69Bbbdm}+_{t;|8O$s*jc zdJD5>bw%b~j1p)qob#L9^Sc1r|Fw!|0gN#&VnzC2S3LKiqGH7pZE=IV|9_}^LVAS5 z=9CrT=7J*|_tRJW@Xhq%H>fN*WqU1Kz(y^H4)e0ni6j`!CDc(uvIMe<@{-e7l18h^ zibf)}TLlKz-Ja7|AZ>EssSy>B3=EMKfkfb(Cb$I(iv|5c;o9U9xg1IsiV#wihzLl0 zc_nCYxcRXV1;R`QZ5|agk*9V%#^Nj{!XEa4V=?!FJr;}zpHE=_5u-Zg6BrcbO0AM2 zp+G%C%Boo8B3EejM{>nU3V}iPWb>*kX_7P#43B=vOFQ$@j4_>+N64ExPH^G!B}Q&>pe_kemT2l9!}I=_-&cIE?M&bTuczmYN(VOM*xpa|G!{JULjcz?NbAAqWeI~j~=wjYph~PJlwIWw-e7r zF5Q`}xfjxhDDeVQV%ree5hCxf_s*1`=zUpKDi|d|!Y@F?mMc+0$t3;^OQ3`Z`jnqc?m4CqgZ>i&{r7BEsOo=# zKmF{x5ZwPuRP3D?*nxC|0StnMxc&F~HS-TL=6P0Drn5_CS8ncfWLEbRAw9WYS>_^Z z_GMR#00(cf7jmej zSh+-Wb;9t%<82J01NVL&F);^_*e+P(hlnXcN6%%qZ5S`h3h+|zc$-&)DRfq9c5;?9 zoA$`S(|#IetSZt%BX;!h7D#%px4_Ctf|8OR&Ws_nvU+Z~?ywF-PVP7w|_#{{O@-=Eu>RnP_GHHY@WZutdaeFiIM5XI}M- zX3~-%T`3Ux8**v3m63?3NFn_6lld`G^Z_26f_eLj2ph#xe;?zZk8zN_D2+(N(8LKp z??b(A5VY@z+!;&zLfMB?UpMqLmU#**YmO^yA_)%{Bv|Sm%iLd(_9a0Ph7e(k%CiB9 zlrUbV4+?UAU@G{#O)>qaBayod3lMVqa;$TlgVXyYW+|3=JNy!`$-HEW7DIXF6-?_9 zqJy}7-QEsKZpOCpvr_X6%FZKBY*uOyqgwC5y6-cM{!?qHe_YkfO3h8~L@+1w@1lYS z1Tt0VKd)vD$Pit%#!GMB#}dSrQ3G0nL{=Ll;u$}PXNkt3gq#)n2Wz~M*}Y($gr(9d z{*_6<=c<`?r=+VT20pcys$M~`ArYW^!9dKO$MD!pomc}J(s4pS+xU?7(L9QfxCfBU zW)Z=9kZi2y+8}mz0+F+PsjZWJR9U@6B!AM+5~c|<+Ii_^&1}1B=fuonPVknq3WP=H zx9brZWjQubL090c9jr-aguj)^0a~@J$m3q94!FUnMq~-VtkhQE@yz#1@nHa1tSH`r zmU9{|mtxq?JR~mJUfTFwpjzkspSm4U#2~m-dcXj_Sp86UKbu-cDrtQ@vsZaUhzPjpV#ct(NG?I%pbZ zh#tZXqijSrboJG7QQ~q`4ucnX(D1`a$h}<8`II|m#x++{rG%{gJMx624<-km%Fb*4Q zDKVGGzA=fpG+pU2#YtCYnoiQjEUP93CV^yIdF2~?Awq6IvdGTTt9D{H(-1!bDwV%A z+5^I>z_LFlwX@tW1}@`5WFS_={A?qsvXFoesTe&S(gdk0OAZz6Hx>LMmf9pawM<`g z7pz=x5w>j>-55`(D9!@nYZ?4dRmX)v!gymKHSb^;By7@~fZKuu$dhIKl1a{3y_NZt zVOlO%B9*)4%JAJNS3{z*(Z{$8r;N6UCOfBq2wGIjgQ+>7JSv^u;*v*MM@+v0+(B@DAD8_}pRML_%7;2Hdq!=Bj zS`nIsNm*!ea&&&8)<#oPlA91TD>Lt83#NX~fKyLuxXoMP)F+Y+45-n`Qpu*?TbAC$ z8HiL$Zfvk$m@uR_A(mMKfDqRmQTxSYL9j?B;o%Je{1U(|npe0L%W^ZZGM$sbN|FV< z9wYkIED!39n=D)dnM>8%-|e;ahG8DT)4+?AA$T@4abkGA2T4Ekb4PZADlAxqoid& z@UMmpzGN6F8DuAMfX$MOm>d&YV<3d^k{W&Gyu^c}f}bm~6BZ`bOH_j&0~nk%izwQ#sdR6vxWTPZ3=q>{CZtYx*pYnHW2dyuqf zPkwT9)d+ows+z!__h=>wO^9Ky(f8ix&E7u5SN~h^E@O!l^NJ9uKFCUwiK3m`?X{-= z?;#vuT3(v(hD;R@%$|tuIns+CNS0piZcIlaXCgli_5!CYBTSolxqfh?!hOCInhutNOy2LK)b z3h@R|gs>)(a?Wi>_fQqs(2O-X=AR@UXAS^FD=uJ-*mQ|zGTCa8snS?wuirWE@w7lLL z5BV8sd47gmAyN|TPVc;9Y=}N*t#?bm*3bE!7Ys!R@$-0RusKHu^IdvKpZ`09&8vUs zP0JdNlNuOl#er*(mYzvWIRgVFHl4Cao3emq2T9l=(OXsuS#E#^SP>Oc)SE!aMnc94 z@fM~j;w|<+edO=GvTTj)C>S#GSJ3J$@l0T91PEYCy(0z?SQoL;xI)rUtni?~4ItL$ z1^xj@Ljo}j+VJJ?iEWid?17&dg7O8m3SFvP1?dW~(@rDlR>#Zhc9L#z(<*s6;xA*c zFz-#>MkFhd>ZAfunXr`8F_FVCn&%PB$}L9!vDFpq%rEZ>Y~|^E_?py&^K}Uz69Nr# zQj|4ZVu33Q63REH9#flG{)}|P*xOOYjg$rYGaIu1m4)#&{s8ec3DfLce2u_xF3MZ{ zT{4Fj!XY_gxaytM9J$6V%&3g&MeUqhSONwHatrInAM$E9E%E{jAkv9kuZlduX~P`o zYcykh!Mf#PR>T^t%E6utGvDW&+oH_TR!PmHr)YFxS{{w_GG$pYj~dXEoZr9S0Akj} z{8OOSobwW;iCB=Gb9hCs#OuX_#RC%<6mw1V;zP7e*6|?#NXTK|SVZwwS#zF9`es~2 z#+N82WyT|G9z{{eJMCl#;BJ7&MEX$xdVtXfa`JypF8~q6LDx?Y$i;o&6Zp?@9|r=L zaRt!*{}=dS77j6IVcbV@hz@QntJizXPYlvqJ?bfo;>Gq9!FpsCgYm*`L)TRwq_;qe z+}IE85a<(U&A$vHm0}0a#V_d8;)tWzL;cFIMZs4ylCbAwBy0 zkJA+KCkc@kDrwsOoJq(_&+rGcCTAgC!CGegO9}BWVNVkO66?DlXz+9KFBvg2N2l|h z%M(*er*nNY^g1gIw$o+PzgYn_X1Ii^qjpmzc0*Q9=9Cq2NvQ-oAQ}cD(8Yp%taSrG zRx`B;WQl{cCEvghxUi{&JSDC2TqOjrAm83}x({b51TaVWxF$1qW;=s6zPLHo8Ho9B z1=pcmuj4w5U5Fa98O1I{QM03n9D10@!DVcQ8mgKm1B}B|y_57 zni@d@oO~uM3>}6i<4PV$Nm7g1Zp1bOSYaiWNh_q)xwHaW&G9uh)y=GzeHf!NrmHsP zh8P9@G8-cxqo|0<%%f(*RnaVmQyZHV=0Q|?52m;48Bcok)_t2~iK5N0oV`|L_86M< zNU?ZDc?QbGem;s@HszDsUffHMRwMEdV6cxig=e59`7s=aVT3%t3k(-2#}LBWx^ zJq-&`P>?Pdj-)XnlnKeo43dLMLyT3!cVIqRRJ$5(&MK^D5W?mt&^V8oX&wr&vOb5E zSydmRWxYj9E*33Elu1n%Gb5^9kYfZ0!`3M+YIMGe+<8Z7`fO!BsANB5xEd8;{)lIc zZ@gLMP^ML>Z9)tQ)HmZpBmD{*RUHB(a>;(W+1=OJ`w z6gV?NmX;sU94{+!EZvE-BIn2uXT>(gR{_6d>nw&-9I^iqy0T=oo>>11Cr!xs1z8kb8FHvs70Yt;{}{DN!3IK{wX zKM^axF)}1XVUmr+5{rW}{p#~x85YC9hf@6Qc`vhBx0vWfYfd6HhBgIc9kHK@(#&!K zu{q?mWx`wdBBw3uBVX{2&RSUuudCH}4TzIwxY!59X@=x{T9B5v87;}vYw3m+6J#(6 zCXj@$oxFcH^OYl{JxGvzYP7SR=qSU7&g7n3K(-wlae&&`jzx!_S{cRYvX@1BXGjDW zL((p^iI$#aejGk66mukYSwcBdWjXnlb^SStBWpMQcP2*PHgnDXNC2hM%j%=B``KxVMn@)K|`PZk~eOM%#pDg$=u7nK)meMe|X6o zzh%zYjivgVtk^ke(2{dOVIk*6&+pcozRcFPYxMyydk1^Qh$8RwlP`OXn-|et-vWW8 z<<(B#j#?2NXO1kH*H1;G^)h4D?bWEa|C9GyYahy2|B$X(m$Po=69q|-cN+C}>%5b# zwJLnqsGnQs?KtpycEM08gP4BH2x+FD)xB^I<9lZ=L^x;=gG8+e1|E|W9xE0qJk~&q z+HXMR|1_k~w>*LsQ7}OXW0aLZ5=(vaB7oq<1`I#qFAj~e=zn696(_y{ir+za64rt7 zIJXc}VY>u?Sh?E}Gh3`77a`${Wixk>#pr8!2#ICx$))8veJt~PNi*hHDHv-3zhCEt zTN8XDP_$4)XcP6puSM}(U71(SN49?E^zRPEfBh!5*Kc0DKhyF7qTSesWdRS z`K*5NHSf1smVk)#L}uBQ&xGLM0DaOZ^CGUt#Yrs1|3gFyA(EzkA%#UWPueoDvjG{% zzAFTHV?TlX&8AoV$qsZxARcN6$rC7dbLW?>HQS?`A+eZ%mpGz^==ra+)5H+{4Jmq!pR+L#pUO74Lvg^}H|1TGw2 z3x8%ph?X(NBVwZrxX7F{UJ~xTT&_&iU**aOVgR(pr0%FEB{6lC=V|pO`=liGt#7h) zY`K2uO>bJgJ)tR{!P;D+jFQC#3UY^TddsV0Z zEr0cDM!{3_8PYxqbRYtq{kSZ7PhtLj|LV0hyOITIG|Uo9{-!XCDU#hUdy7mJ7g?U{ z>X#oP(3`(c`SIkM@0kC#!u$g_`B#NmuKr-4UftX`OSVtLV#yl|ve1S0C`^0n6rFF6 z4oz2N+~We7hTPz%5eW;&c2M&AZ~7icDE_`B-KPOn$!iM=&{u!x{V*$ga#CS3w|WG@ zb7XWV=nJ2aT`3*@hG3O(#Oah&)rK1KjVs@ztwU-y(MN*30j_URdv=8q#O9=SlYZf7 zHo_l1P{mGm;GnbvocQU?`00{G-0Xnol>Jr zb5cQVGO0iO6tJz+&PP~58faQvnwG+B!&x28d`$~>lP7U-H_l1zuIiN$K+`c(HQA}U zVG%-oTxyQ1Mrub(w6#YwYcYr`6SxDSOG{#XTjFF=L7i+btUvmcy)K*d%l~B8Pza?N zuIAium8+)QaNS9nGGHx|fGxFnz;?F-wucNDIrBr-(tpUB7X{MC0Yra{CC{3==)Beu> zVr}~9zk9XS;S|kN!|W7|oRgZbfA)88BMRs<(zbwD@)!DpPrW7`|A#ko+`vtnZ=1Gf z|E3-L4{uDi-_Ycmc1?&7nMh{I5~q^$-WZ)>{0YNjo7o6$WRKhiF7eJFjQ~{=W{7d^ zUeKs45B*fL`KAjMbcMY8dT{cc$x9VovHHHCENlVOJ5sJmv5q z-but%(IFcU#G(&HSJg;$A1P#f{ z96je#Z^~w48Bc@Ftb-D4ZerNM=K1m@*gSC#t3W3VfX!nU1!MI+pLz{7Ba2~ZBnaRn zuM+qd%Xn{G^(a?gCs-qCaM(Q>H^tQ{k z^z$A|7HkgzS@+i*~_ob3;i-I;9JOIiQfkSgP z&QnS0Z3S>SDX9%yZ)_O)rCVOgL*{LBl6%V6XQ zV>kf4C>q-?B^3_Vlhz}()aixmy_Q)ab}s;6O<^5#Qv2k`xU_%(Cl&=FFB$^eK|Q76 zpab>si`BE$SqW?qDD9XXI3(5yG7b}Q79n_d|-T-~c;{C7VUtB1d5Ezn$zNDd15+Ry~zU;wd2z{v& z@*Te|3h$I2>@F9xEiqwk{22f|!JKV?@ShwKd za_EHlc9fAtS74Civq~DnNA-Lpv*#q2^{FYBd%DeCF1a@&cPqJ*$@BW=uD4AJZ0@+^ zE+w~<{E0s53pOmZa(J5rCqNuRQplt2fXN>-`On@!$)gKeZA(6*uw+xQjD?Xb@8-r7 zPF+D@$~{%z{-w83I1(+kwX$3;Hxeb}64n=I+cMq#rD-w)J}T@On zpmWGcg5t+)xi@=z)5QaL{E*DhIj>yn}_XbsFr>YH!l{4@_!?9bZ zwib73DgPS4*|Do;CQq?YhCuGFNH+@-?<#p^Kod~==1_^>f-$m6{N|#>cj(1&f7o~t zM5qAD0nZozDvqoMcq6^)P{J8-Yp^{%JBF93HY~6D;kZB98FX2~ul6^Gzd?nzP=Rhq z_#OLJWMCG8n)^m)CO@_59F#;|L~f_>!!4va{)lre4LQ#9EuyYlVJp5qdK&?qrW zG$Pb8W>_AYp^lpp{!Z-F@~?zHVaBfNfE7?i+gEx!UwS)FEr9+tq~~F>m<7?IxAR!X zQl{nw%cA_?YfGpFvUz%i?kw>q#M^dCwdkLh_%+qA=3qXvWEi@&9u3kDlgA>`2%RqV zYn+sxTIxSDxGlMzaD!6*gr+nkEA-zs^IM@_aeeRCUTOJy+4`EI5UHY>6*^nyw{;X@ zVxA628N&CBu@XW^=PBZqLY5^oN3o~J$30SvZImrd`{E&d;!%lK9d3d?^<@~Z-QKWzFK=H$8Y2H{N;QHE~{SngysId3Q zfemWxsxtzX4?;)w%;lD?MK?;$kiu_cdv(*^+oR01lboTi@%_VU`eyS&UDHJI;--N@IRFE2yM^JmDd%$EQmyy-%HitpmAsG0kAXBq9t$8W%p8 zlW1eo*afDs3(Ata>(|TtA>JThGT0aSCRQP3XWyoCg z)fN7x_Tw`B@gJf!T_08WCph~1gZznQH3qz@1-$glgZxc~w3vh@18+VBuVZpc_4+}6 zo8#-I!TzQetcL0n2m56;Z0#dMUaneX&-JE&onR8GMPE4>vel-akxQ?HQKrXN`KdZT z$JGcQC(wtlUXZV9^zK#Wt8=UTjV(4#@UenfUS6fYtnz2a+LFJ~uiqPO(MzuOYdhM? z2SuVzqNLRI{6ST94NYq34lt*h^gK1Q(;_dh9>iww>**EM{toeAQ4r|$)&Ad|+x1_D z`19GgdaD}$L@wPm{*;PpHBVw%s@2TJ5Uy%nQtOY}q1qDnYPHJ|hT@5l7OB^eJgl@= za~lt;1%2j`MJQgNW*?W1Pm4I9!hUkhjHC9Jjrw_`PpWPHN)FH*IQ-XR<((~(`M*Y(|ztySNzp3+g8E?vU z)4WA+h$hq7;AC;2Q8h&$af~`>@gnLw0&I2E$q0XXdc8lK89%VzpI9q!Y(!TE2l*nQ zPLQQijd~?st!%w8zPS1U?h!mCkc5-yK10?Z0`mzpHaJ1%TtuvT)fSwnoZuvyF04YC z#v@RNk4G6o)wp$PC2A4ab05{7WKsKlZd=j|)M+4k3$rgY&%gn0UA;qtKhFZfjSc>D zoKSa4qkjmIbPHtaoA^fNUap*$C^{FMKekF;;GB{^KrM4vg8H0e7@}I@Y{R{wj7=6s zn$(3(FOXbGD}*mH4k$%18vCc<|Ez8?xV-#sqKcmx*YSY^_Gp}v>;AVd&mm8b? zt>dEi>VGu*J0chT+!1T^0W#V{N!_^x6mQeVw)j8f@?ncVzki-RTKy@*+tf9tf(2?h z_Jp6ItuREXD;>2Eb}vrpcqU1Ct6Tl0BT*-FBOsby940A4z*6;_?HKGS2W<*k9HdP3 zOO-!usN!vBpd=f8Njpf8Mg4Dly{Kb?`8 zkoKpP1@JfN>OzM32WgXjYuc|P-TLJhkiP#===8tS{!aZ<&usH2r_=Q5kBs1nwAoRQ z(b0Y8q)t-(itvW|I}{etMZvc?ey=8?8;1M4rrH2;kqH2EDnDVkKRqeLPEAzn7|b>f zC-iqH57bv+iu&3K<_qiGVzj@DK5B%YN(BL1^8g9xIO#V1;}P)1K;J#W@7%mi?IR_m z=d1au4OD1TuL1V2Td?0phHxP{+K>bnLKjyuJ#B#e!dZYVxB8%VUyW*mB(pCAyP2fvqw^Vg<-)$X5J5~x#AH1yPw{B>g;H+kasciEnqsDNBR5H z-ld3px%Qqj${){1KbDW~AH}I)L9irB1r~>RJ(1 z%m}6b4cJ_#*N^sZY;IHMNR_5K^m8F*Vk4o!3&FU1#`r7Uw#k^`W3=X&4!_A6tIzN7 zM+`%TpN*nYsxHHibvW8Usk(#!C8YKv)F#U8V-MiI+~GIYlrqm(M8!4_Tmt4%f!RQp zjfDo^u1AmcTM$CF!r9Kp;EAB6|7R%M$b|USDnFG&*XLZn-Bas>eA?TsiD-mKuFR8Ga%=HecZ~3 z#E>q})hCbhpV%azRBN9Ll#b%X;8T1F3l=fgj=CJ(L_X_3R9&Z!_qTND&L1ZD=d=gZ z&}o1PC|wopRM$~|gb$^*c`Dc`SR*<~pih|SzsE-hZsdP3=3kDHDgVU;?_-=I$e{DB z3>s5kaB9F}qX+&=lskRl4t}Fvu(Zt8Ki}A|7+tyu5dNGuAKF4bG^QyB5|dizBtJG! zt!hDPT5@`!dfqNDD+UE)m?|nnn&fZfmy4`x%q04*N&XsQ zzrR1({~d4FZS4p8k!gM%jD;-5Sfl2pGRc`@ARDaqXP=%ujD*~z)fB%f_sPps{5ro% zKG{MH3i`__es^O^Jrcz?7HSAd1xtJ1cJ6)s!Y2MLjlO!mAcLoni#V!Lbcny|Yo_|Q z40Y8TWbma(0S0v&kvGH*NRAiHh_odi%ysPCjNg_t;vKdrzG&0WZR%e_*E*;9o9Ego zU1PCZu50?Q)BGOZJw6@XbiHog%v|o-%x|kGD9K6Q;pi);8xsOKTR2-7g;502;hX!L z6?Xf`&HegeakW3jvHfW7olfd*Cv>*v{I>IWw>NNe^XC5a7@DU3u+DF+POhdq9s~t& zPyX6;ZLqH2!WVmsnUlT)eAyO$nxixB+QQ$(w!fL(j772%KQA7=pj2-%!=Gc@ILyy! zVFat)Hp3sHYSq3%hW4D5YDJq@`?3G!o~dS0?3v}{@D0o`yLK~joQ2UpPyf;XZN{HM z^}t)J9z4?@Mdvtf^@qn`IFP%Oj)73LiJll|F@gw>ZF--Xej`>JvGQUgYXMPr~{_N zl;Gb`@DCg*6^US>OoC%nE5)KIaml&*x7+(WZ_aKVkg(=H7%QED0PJgs0PCYSnw1)& zmJuC9yTvLqpFh@ax9M$n@SBs?B4tcbf&Re`e$Wt$&46#m?DkY5M-fEC0T&1a`r}5g zWvY_HRF&}>cEJ_!O;R)}Tczp_$#4ZVI8tx9dB-_}lBHTFc0?!eb;piky)~gKK)x}N z2d@6fj{dAlX^kP&!m;D(bA9?;f6J1W9b*S*-^nQ8U(fYNaWL7^o%}5u`s9C^_6#zW z4bpG#gjC_{^11oSMu(NpO{@Lul5W!Tde0||A{&pK1lNSar zv0wGtwIX(#26F-^%WCCg0&HzD%F&g(`t{XeSjpzAB-H0DwS^R+H`~>(t*pv_Vcxj< zsa@gPgZ2Kq`PJ27G|R@TWMI!yllZJsFW=PR4>l-02VEd%3x?EX}VT-!G$2n8vW@)Uk)4JX@7rW&1yOR zqRhtUvmQy6W@3vuU`_Au&miZE`}=7ZM`@wau>bdCC+ze|O4W!K5a`8RRid)J5` z`W02q<$B6F{sQONu1nAHZ%A<6>_UH+BxNkS%0H6aUti_F;exZT-+*MdrfcvDUptJ@ zy)TtD>h}FgC+W{`gk^rvb<|D%=xE2MmpMZ`0`~Ue5b!wH@fKBupQt%*B`&{S2dJC ztcknCTFuU0s65bK^33W)WLtWRziCpA;T?nHpN~uQ6Sw$B7pH7{tG`n%&g-bEKx;-c zK;cpq7*WOAdh4yIHl_NLTYVLe;z%)8TiUmcs}kig96V8d&TW2u7T-=g>>@M9+L-V_ z$r`grd*rKgXG-jG!uZ8UMm{~)Y``r`@-vZf@_LRxDbC0fh`%3PSoX?s2nJbY5 zyAud&r3juFv!coIWtlOV;l}=-(?CN#w6#1T9;kSnhC#qNv{yfVo8MH%C`M-(ORTFu zxy|1u>oREc#||1dszLT?V+jg7v>4KkSM=~S`?YPCa>&Zo59P{N^_@5kN^IT|HH5tQ z@T3rh9gx}aRE>y^%H1Kw446CBbOcE*6G3n?Q9=0kD=&(%`7&z-5>&~xJD~=%v`9a3 zyWdQZLWIpKC(=VZth6m0)~AYx_2Jw|*!;3Y>r;oyhD<`n!%_;7+*2L5Rhj z=~tMbK#q#1cwS5K!zjMJlc%uw_VlY1KgAVD-Y!v|KtLz9y9b@{`p`LR< zNS0;=I140TEqDquSEeV@89dERd-R~-nP{@23^3~<1cBuf*iOJ+o)hXrx#Ri{`%$*> zJ|qP8HlF@SaO`hUXu-!(tPt5nvY(jbiU*(OD*0zv$!F0d$AssL2yDLedMV;fDdJzz zOd0f~sVviC$(?K@SYtSWJ}+b&mY`jjd$a`Y$GOMNp=hU?hnZKyD0*T!Mv)pPjv&^l zBuw0U$UahIg}|0(#$bn540hM(-}qlS+0Pz~1V=Hpt>T&@M$7n7@vfU|gk zBrqMAOR2q-*b9x5cX4}xZ_5*rS^}1MfdLIl1o~e$#0B{KDIf#__Be`Po(plClvf3C zpCBYN3jRu#{+J5CHLYYU1v-h>AglR`XCYxgVc%Lz$r~z8nwS6!3OTp__aCAzBF4Tr zy~|4s2d@NhE}_C{)RkZZJidBRu=f&2y=ai_C4&hsOZ(NIgs7>DonW10xwyA0A-S2A z+Qf8XN*OzwtivHwg0Q*HF<2v1iKVDX^^~KY%z~u}#VVs^44mA|NzJy8i_<gkwT7Gf0XfqbLN#M;mNNKkZ<7VqRr#=nfo_aqBZ^ zq{Ab#xk({nBPxtiy2=j|YbMIf(`&>(hyf!k4qBvzamgJC!qWMvU-Z&=YSlj zkR6UrMqTtDD+@u0PD;N4mCUdJuJY2Dx;86JB6!mfPQ)Wz2;}Kbq~DSm5fR~eGPn%( zbu$a=^s5%U^!HO)b0$Y5BM7_24l{p%wJeH8QWvX+97<0hPt0L zIeK}G++Rc!m&r}*rjhgHTB3h;pFjM-xA6|p2xBT)9K7QQeYsvdtZ&nCi6Vc;QEvl) z)0`4>m5%bwHQ29ge{ZmXlQHpQET-JIsp#l385+PXc+yF_ded%W$ms0$M`RB();M2= z;MTZ|#bGNL8cWqgl(aH|**2>^dbDJt(9C-Fg}{=dV-WMFXjp_vFm@evu6a7w$&5Jy zar8X!3SN|`d>?9zvLNDbX17rM<=fa{vK0kINfGBs5lY5a9K?Bb8ruS^%g`g=#C9VJ zG&;o$Q6vbpms664Mldud!f=yBNKP-o=w#?>G-w5e6Uiw?ngsnP&Qy!alc2wesVGaP z$}uV(t%h}`e;`=8cvfm#9%<^a4EAwJV%zNSB9y=FjB`rTt?EkcJ>WNGWjqBVffL47 z`SN**dc)bS5%K*Ec5#)sdG<}jbKA*S_<}Mg&=LdiBV(7#A<443&k5cIs#uQi1n-%f zB~I|?|Bt!%0F$FQ`u}%k_tMU;bV3t)AK4)7=5~>)-SIIkY{~-P2uNU0q#W zU0p5GQ4?Ci3$fnSn+V64j(Aa{t57`1#ECqxH%!xW>$PmAF4(xhkGrO2y|x`v^GJ-+=;{UKmDrdF%J;qSpE8bcM=BL72tV+`cRR<5 zJU;ZodGUew<@;6~52Q@(JW|{D5l>qRa7qg)8MSpLqqdZa;GvF+V5m!wPopEBiu$cF zp`XTtei|M9h-0x#4sQYAqN8KI3Q-JL3CB#UC{Onc+iDbzL~0b>%rSbSWMNDXWNxVu zGG7=WR~Q5hHA-$sAZbV-X>gEmhi4~J&X&*4I;1c1!uMT1=RUdxrg^Q|LELO#R;)Va}9IN6!^}>(hh4NUZmPOQQx%-?GcUZ+F}Wi|mU^#^A4U!Dokk7s^`nN@o036vyZViH zjTZv3q9U|Z${QhwtyN6>ceuuth76fBWQ_6z%#lif<0|21g1iw_b2`%4tVl)_#KnkW z3d4a-hMA%vEJZEZb&MaE;Gk=I__uX7&@IOJTcipKj~f9G^_%OcezWkty>i`(98?xAm ztmnokptN+xk()=VIIIly-`!7>wz_+SnK`wg#BT!)QYQLBb!N}!JJ8YMWnVTnr<$xsYP zo4OK_snd9r{HVs*H%Y5((yEiMx>6dBs5Iz$CN&^~(5YL*RzDN5I*k1op6@bOev3J=!K=t<0`Bj#iqu%s%{St=KV1r zOAn!*=-Ix;(_ubR5um@3r!l9IPxF6aE?GZj!m~y6blph{#567@f7UwwD z$IL=0bCRsb`{7)RIKh`XA%h7a_JGO}`fux$V@u5&r~8%g42wDwOHzG> znWHQB?4(>Q6J5EExdMCX$s}oB3f*~rINwUSAc5{HW^jwhsvUPRimZ^^8?1%RbkLWu zfv5b-N|i!*k&pIjDhsR&{X?a}I>_IU*C%}I#HX1#(!bE=4(WKF0c*X(r(I`jFAl|M zbMy>2r(>mB%}d}i+mZ$h_Fx_Ss=MK$Phn>I8}~Y+)K;N$VX~;xS}qd+XwxncJin1P ztqpvwU;K@6lBcLL6H)~Q9movQhDPlfbwAFx+7gfu9a^HNSg?}~F@-gkA)!TNhP|8YOS+nw^QB6-?!f zi(`?)`^B`hfrlx@P1BZY`d|)PvY{1nnBGt=-L%`5N_S{2MHgB{eqBqc4}`Qw&q?pj zQZ{;C2kfZbsl=?z=S{!g5?%^mZQ*4yOm)2)-xvi0P`a#93EO&&8$C1}GiIq_1I7$# z9y2D$FFkx+>cwRA@>;{4; zNvU+j+|ne`k==YWm=yL~YANM$#Bh+Z7Q>^1b_6L1aJ3W|VT)v*T8#2mth4%)gn3uz zBuiPAlz~cd*jX`sl_EBOS*b8_8Ak0+VPT?}2;6?d;!a2d4ZbmZ1RRDa>|>dL2vo9} zS{1PMvOgoLATUOG=7zkj(8LS#&;_HgMFBjbyg#(d5H#@Ya%1Tn3$viH7NFs(ni|;U zzQk}Gsushe!^bkDpv7J?r9v?SNaAF3Evejxm_D6i0%915DIQoIyVsQN;e##g@YEH; zqpNuoDYy%$6< z#e~mS5+H|=)Yv&GNf}BCiv5(N$MVVsa;=Q=m^8+b2yURsz<(i}DgV=qr?5ryA0Yw) z+QzIs8+YaoEUkv%!(yo95DO-F-kwSXGhx8P9M^(~j1SjMEShKJo5<#w878eecH7)( zUfI0HZIxGYh?`T^)ufWJT3>zsl#iDz=8`&=OVqP&c1d_HOx{iH4c4H`@dy#02MZxp~Lw_>xR+4t106#>T2`l9eFBENYb_0u^kPqaBP|T(KI5;#W2? zm*KsD$rq8Xt&F(Hw}L{^nvA8DmKM>$kktN!zfz`XdT5&wJ3-b>cBk3ul*<~)fNrMm zm{6m}@P&#WUg_@{z2Jv0`WOixTp}pUk~;Sq|Ik_CwLT-3QSMM8$WydPZI%GmwQ@0% zG0@I+CQYDJZw~+F?=_5rQ=i?N-6NqV9b;Wo1;R_~i-GImU%FX*XWGCj)>}W)3_Vke zSL=#uCqVT&c!$XK9jobnG&MUWgRth>x>)P>w6TczcVVRD&Yls zbD7T5#Ge%8BuLx{*YX01l;1a6ocm&4-50mj6&pTTEA^bZJh#{9Ih&VCQuSGNneM31 zbY`uf)9dmqsLyj}EzhZSdG4yub9XJzDRp@&_ta;)x0Wfc%XD9Tp8IQgPOQuG_xe01 z)bbo(m*;`{Jaa5h#d_!1x=at&XF8@<&{1`H9;(mta4pXfb$K4C&vST^N2Ba&#uUMK zp7>`aB4n@iTXwPg6>x^Ih@6Gu1PfauBSP7Le4LnPeBxt56@I4TSQxxzE39PY_68Gk zb>&uDxBY`W4Iw**Z~Ngts>`-d-Lmb|O0sT~itk-=YTfpxmD)ybTep2K!F{4zw|x#1 zE(hV~Dy=;t(7KI^+rxKw|I9DTa$=qK6mW7u0mm5>P@n=1 zMJS*a1+6aV?E>sl6p395^My?%iHS!1?F;!SE20B4BS#Da;d|g1k76)A9Br`Q%VoA^ zVx$W>a+r_q^Fu}hT zU7tyzZScWTKHLQQb8FMEE&lwa{3gSZJ5{r0NHp&l9?B9{2uGl7QT@cmyS|LID1@mc zAiNjudw`~%{lYyUCv6va;mDGF_`*#~Gd<2-?o&F@!(tFoaqn&e-0s>WACxW5gv z$;CdBG_~PC6B?#P2YH4XV2KV!kz?h|qEIYC0rwCO`=EH`H}czX26)aJY!dCF$p^fT z(?0t+?Xwrg1>wg(IEejqerOnfXzLMFdJ^D6bU*Gw% z*18niEvRiq>wFJC7B3#jh<-3**FY{NrIkA+%Fi87BqNhYPZ(uf<`mN1qW7fNiS^<| zFXZXXhF*Tg^Q^m_*ctvsop&gn&+Ly2$0^4^=aXh^`YKBy?{57)T z&tDeqEX~F)ERn`b0BsC^zP_?a{5;gAchLdfkmP;W*KLc3dKER-?7AA=+6l>%s!hy* zr9$T-*!`^97QPlz|JoiNz@urL&8meFgYt|Tu$IxW;C+-`Ri$)ySQUWwXtswpfsn2h zJ3Zw0<^{OX@x4^+PQ&mJPd3)sTqA3R5h0YikqjKfG&0dFlpsznn&q{gg5rNn20@6C z*BXkpZKDav|6nivpI5;1L1vIb3WJbeM#8jqjfWA!FeU$)5PK}wX{=-PPVZQ9b*Q0_ zvR-86HA1bZ14oDT960d!dT@#%EzWYwAe%bC!^_60e7vzaAtn-xZ!8u7k!Ij!;x2~) zZ$Y_%mtQaly!<8rCGg4mI4kl3;%~oiSY}xx$9)zsrn{e3zj5R7o9`WuHXOgxaAZl= z41@iS;RwNe=Y}Ier{VZ5$_By4YP2>UD{jVQN6rSM$B5ITW=jpl@M|P*vpB08NScwD zM2tf*fULoUkdLQPDK?7HqJrcNqeZ>d4L07iYC&CyU2Ht=H7EjZiJW_OwgjE3vqj#e zHZ3lQJ}(=w8#p7?CMP44bylWIoHk5L8l^|LJuiKCExy?lUYRSkFl9_*`7~y4JR`uy zZBz3|?nIr!<)_%KFnEjFH?%13#jP8@qcwbqXZ(^?o zn(Bj&DY?hm$?ex<;Za}!B}!)C3-^F+97o&h4U|Iu|hn5M+9 zzMk*9P4k-MDs>qHZKC-$%G3O45*`nE_6==<1f<6GFm|NLM{>ec0#%YVY!nTFl}5mC zj9+*wUv48xN}a=v4a|^*S*NMe=H87V-(>Dh`V!pJ;Yo)!I?miCIL*q-u+%2n5s*Tv ztXLeA6mB~ndpqCDuYBQSfZQ%iwM<9u<>IVmQB{{g?o2 zH+BD0*u+8a^59Yr z@~ZN(ku9Ic7i`PG$ay%zN5OZb-j3t#D8Kx4COTTLvzj=Gz#a|DY!Z(3%VQ$s(`@;Z zMm8Mvu!x7_xqBv>tG73JJ3$Yx@NlB6&`;9aLf&HTiil3u+wHuaqK7MaIMpxDYK~6R z>)E`X?w41O&d}Qlys?Rst(1@BiESK!;el-&VBvv%9BN0ro9CCq=v=)aD{`AP#9VZtKXGVukzei|UF=T`qf7kq0nw#g0vTPVoE<1eFZatw zdC?VqdFBDpmHxz;70lmf&Rhq7Y!mH?#H;;@qoQk)_X1uhAm;1*vQ9i^qra)32ea)_ zhhH8QU9UIno;Z;Z-QbspM>nPs!`ma2B-|N9Rf`{AC{&4#Z z4Zd9uC-ZQJ9xmizfgaA|;Z8kV&x7tPDPPOO-Fmo>hkNvJ7Z3O9;Taz8)58-y+^>gs zc=)>>zTg2*U(`iMKd6V3d3eZ|5Pkwr4=d_I9v<YPL!;LvLA@dR zeiN7K(OV+&w~ff(@geemh{*pbB7avz{+@{Zef0|U^@~2V0WT&AwsXe0cX51Rlfa*G93mW59 z7v;x}Z;@Mo)CLmAEM^V4zMG1V^1@|z1r8H`kM=kOjaM`8U-`b+x<1pW(BhYF#DVZmU!$*|H}7^Prfu? z*sfZ5J}G>Bweaz-@Kw7Oj`?rTh0pOMI%Lb&&^2UF_lP;S!Sl=u)pd%a1Pe%8R||a*uI+g;(A$x{?C?=qj&# zS2nuZV`xX$cr2TuYrRVOu1s{DS6(an8$iM)a4eaRaH4v0HoCzphtZ8*`4ca?$tz!( zjc)eJe~xbP%DYClQh^`c=0VxFd&YnEi0<&*>EdXC2iolP28ImBdePm9)d#WnD(Sw& z{)5NAZ*MssuwM=-n7sk<98%F4Gk%y8SM8j0%j||6M&4wq*Vo%H?*DcEihMJxgT^99lA1dn{u*Z&c)R#=aelSs zmlaErJq728wRodPnh~8*4QN9On^uJDhKSX7bG*ej`L!z(LaySjou>*Xh;*9xDM_>w z`LXB`g^h5e*utu(=C|)s9QL~Y@aJg;^2)NWt3*iaQ&_$I* zy@_)h&B|*=pSte8_r4Fs(}4-Ul$8y zLgwc7_{Ch%Dwt*qro$afjSeO(hPVqm(_T8V9;nS7P*b_&U|czeFnpANI@*9b#(+9j z@EoTf#ME(!sP#ZC<$&sw00n*o6#MiwpiZ0_jQ+`(3re$mkc|Kxjd2`iDB-X~ufWR?UQDrYm>{#Bb=9Sp{9+W<{Q zp#i|T_P0?WL%~4%-u4TK2Iy&e7{BWWgW`5S81OqhiEF%4_gJZ6dZ@M3rPfjpwX#WH z#X5r#tiS39rOH^w88v9QMW)~m8zrT)e8;Q3k_*6C|V=Fa}SvA zA{S9UG^F95^oIJS)*F@Y=@(pi*of9DE?hzASWz8AiClXbE+39E`lo+JrQKsl8Vfk; z8np~i$4=oY9VtkFy4p1&O}sFpj{s2%_5MIX}qoLFR6j z%w3SoU6IV)7%kEO`Ipa7`A8x-I%_}rL<99x8>nnW!970LO5zK@e0wJPl4uXrH1gKh z6dWz~%flF{kZ3}&oCTI&WVU5m;|FuWPbwqB<;n$k(x;MMBt?FvhtDMee&L17IgA)S zKJz%bA%w^_+2O>Yg3OGe!JvW(I)j0)%z8hU=IINaR->bM8N!PVQ%lARw$W)WzOxVv z+|A09-FJ!>%36-Hz{QsmL%$L@UrX#Zsky^L6x(1Kb z>RqnE*$q&0+#VY5{lvh>S3J05I6Q2$&VMCs{i}L-P1U{5sgAnVzv^-B$F-h3MiH*{ zWTy24)7JBuWu^76C#`=?t(R(sZm?vvKEAaO46RsE5g*hwToWvfctb+-n}Xym!SuG; z{Em?E4>kOs*6??^lB0s9yven#(fb~R@PS0^554j?Uw-$eXpvX`dGs$&q``5V;nBys zrNroAc=U-^?oYL{Nm7HW_*u%~r%CuJfgddwOu!X&q(ZKTklP7A3q4k`4nO3n!w(WM z`01bGhtDi4_~G=iQOBdgkIv|VA4{&{XE!T~O1t2vUsb-=L0-`Hl(6!&VdWXa%Co{+ zYC~Mo0qkC`<)!FF;WDS)E`X~wywx>4tA>X(Tq+`49H`-Uskpn<9rsilo=jJ)9n4z? z1A|<3O(#1|m+^!R3_i51H2t2W>36H?_qe88a(fuxTnLug#tM>obxIg!$4c$2OPW}h zi0tpTc5(tc6Fnfpcu>uH$O}U)N{X(rg4lZ2qrq&dYL@Qh+G&QU%h1kIbnw|KMeRIC z5A)Q{bF1yN;m?9^UedwjscR*fX=R_Zm3(GdY2~>|E9a?|=ekx}a^ z^8J>Q;TV-1q?NGbD|U}o>=g{1G)n*-VgMa#039Y+X6uJ-f~8TAO9V*8yJjl&#Fd?R zhu&3vlvf`O8%jfVMZn`&MIy&i#vh?GR6m*cs)rldLf5?myNU1a7C+xBSbpg4;ecq5 zus;rQIQq-Ky|~ssyB>Q{UbK50^$tc&Zc|~}3}gni&A>g>fy8R^-JN-Q5BhF*WNlR7 zxo8i~9(z#9?p%wl2;SttZ}<4P-oXk3_XvY&VgHTsLd2CRa%djtdZ0bxb3SkG+n)!W zX5Jkgvo7+X1oraduX+bR!?Aj65cDVbUEg3pyhCfSO@)nA{78Dh|E(VmgdNcTY!eL# zxp#t%pqbh79_`VASx|6Lmew4c1yi%K^ynd3I_1zTI6O=j??tn-B7?)T(8>|)+o*G* zBeUVa=qP=Bbe0;9$uc)=C>IwQFii9WKVH30@bk*2bdI(MrE@NvjewjuRcqZRs$4JEmw3Ru!Sb&wGX_O8sdiwLE(2QFxsY` z#q@E)#s9({eh2OR9$>Zys2#*9c7*J9f|mXuQrcORv`g5Rd*vD&cjy~U<0~2%gtWoU zn(=J|gW(NjN}8zEU~Aww!!Mu!F@|;HU=Wl2Bnn+mg-%wX>r>wp{{1rS6>U(@5In~a zG6_SlO^=*b*(@Z|^`0{g6l2gzS7|)5nMg0&Y8PpnO*EiL7aJgO4aSqQGw_=gus#a3 z)yR-d*5Rz`#Tat74zI3@o8y-T1v|BAP0W37U`p#^)V6Ffrt4xaT0P!waIhRcVGkc1 ztmeHG-!?dy;vE;i|NCHQyxh`3|6VVPDNo>Ek$;wZq_MTlAf8gHk zuK2)Zf|34#*?9b?`TlDhm_V86J&Kgk2%uy6Onu!bSc|~QEXnDHgeIEMZ@dr&n=W;i zS$^aYG_+;`7vIEdbDToF6&ZvpSSbUz1sU%HWl?0s26{@yX*g|~hGo`Pox0G5_UFQB za- zuhJqoKl@5j1Y&y80L5Bn97XV6E#i~3h);G@19Xo6m1-Hu%8s*U-F4@|U`74OB8d(? z80^)0bcDbg*|kSMbCkN+ca#dsZ9ExG!88&|U7;IF9o>~uKT9a}vy@W5u#Uu)<*%b) z*$u1fa_~)eX`w7PJF~1arO~0iY|TQQwxOe587;7v?+W(V_^S1S5&nM#?AEc4`nXrn zsLugCf$e&z&%9mN4X^$>)savik{W!ku)P9!p?KcM@flGtrFAvD<@;!7jhFKrhdTuW zauX&M-;Y~M!SK+uQi)z!Ewqc)5sMuiz3<1ZhX(yCYv6TWx`Si06lFA5qH`v*7CbJ? zgf>UfMmMG78GWXPoSQ|2#_3IKbYhmBzLO+H#U_ogyK*wpR&+|X95EZ+3d>o0Qt{n7 zDDBzGGZXh$;&D3#P0OQ;#ROLsF|zOyOP8U=Eknu6g}LI$6f$z1v_jCoPx!M*MT~W; zP5*~Ay|VhG;yY@}shyfK3Gx3lHRbeLQ_fIRw0U)=U_VRkIa}>HN9~!HHsxG3<-BaU zL{o02DLdtE3XSlT;l)}L!BBH@telJ2KHOhnjMiQUy;ecNDNZk2N&iBNQDw!ADTx&ajZWK!`p zb-`twy5JXd!R6|LD{4h^@qO;M)(2Oq#H-Z@*Ql0jRm*j01%Fco9oh15D!7pfembf6 z>i6QUU(yAJw|)+9yLQ3btJeNsdH9MdyyA-qj8|u_Bqoqb-BegW4Zl+p?ne@sHf??}n_6_CEK&a9#fi6D9JZAl(q9sJg3Jf`-8K&37^bCVj z3@+1YoHkGpkVX&UUA0OEjBnkx6pd=TMMTa3FvfleGxf;NMU9_f!6@ zS$Go=X&R!dmATP2wIUItlLCK6Ru#Cd%Hw8*9*ZO2T7}m-7r6@JM-@!dYb2$vos@dF zfyvSGTDcM+2L*+fJC{@$TPsK^R+R%(sj5ExJ`+s{QFOoMp>Ah%ds6eh<4Mn3c+*Q; zEA*O-rz)a-Bt^2)**)AdDU`KpCfuDOO|XmpB-v#fDjQ6^0`aj70g{i;(sJK$I(@7q z>j;L#e(5?j`ZL7;7sk&142Qp#XG90EWUG`z2>&cBdG+0{e4_7`i~EcYe!AQUR-uX> zFe&`w^x|@og_GC4rWc0?AuF!JvT@~)!RnO>HEgUIPDtQpux7$Fg$iya7J~WLrRNI^ ztB6&;eaItcWq;xfC~ZqND^phJ1RxE70>jYMKbpo$D?_VHK#o=F(PSVPg&Uv9-zk?g z&NZocmmgnsL=cuY03WC2svPQcE}l1jbVd$joyi;?okc`+HnL`PPOiKh$T|af6OJ~i zxPbX$(8zhZLhD@RIZwIg=gP~F@fb34S?k8(0PwUi!f|}ypMthtw9pp9&5qK|FR-r1 zt8Cb7l$Xg4Su?j>Q)5fp+IhKiYwbN@jlN6uUv|^YHvjeTEw*eJy~3Drzu9W*t>Gf# z8(N=)Q^GRs3#UwhbLnM92{PhOy8%J?3od_xp@GXOLX18mleUp^tW{-ytbGeuN9ACi zjW=-{pWDHMg-#&*x?&)|48nE8Us9FEPcHmrd$>Wk{&apO@5#@4+@CkZmUT`B%|#nj z%TfnTu|i6}oLn^h*M@};sjL?a2F|?^vcRv({VLJMpnEE7(M_}#-BfGQ%^WX`His&H z4ORRG0{m^*%3TdU2wp@PTgbF{%Ww;X#u8`i1`zQpTYEP1w6Q&H#nV)?4H~0-EcF#| z4q5c${siml_@SGM^hAzubHVI3gTr4ZjFIUr7yepXblL^e7F|>LoArxt#CQBO7{FPB zmBt2rr~E-1F-<}dP7sAVm82!x=K9!hXG`E9+-y3ddDA`l*(AZ8t?xvqd^;w-YD}=) zy4-F!fz7endSxBQkpF%7rWt&z?ed?%7mu$5gDXM|^yI3Z7P56_^Gt#rrujhFVT+AF zTcZm*iq@=TWG6ny@{UN02}7;ckAhLt@iNuMi5QTJc6a9jf-u=ZKU7XCfr`j zbS`y!#n(%xZNPAc%K8?s#z@(t0kj=0IRc=!Wf~;VI6~>et>?}_9-=r3Ap-nU`N$j!_jiFX=Qo}3I=Wzda9QQ;0HnoKN$5W>V{VMy3m=q&*6V2aW+6b=bgo;cg zZ{&J!<+Xn@kz>cplcSJb!?^;@B(!&%?M+u1HCd`$V=+1wA_exx@2j?$LM(X6JhTO`A=wgYjT z?Lc7W=hWcGOAR+yTM;K{E9FFOketNY2ZO*+27$=z8x}sH;FERMKvsck@~BS2zNepJ zk8)o3n)H0Mdp=dpf$-~-Fn{H5#fUIGIqtPmFz}}&luj2$!sGRuGW@wj+Zy^Mas0XT zLv46A;sa^@;!E+iD+L2~U^G}4+S!HVuDA^4s^>OdrGoWe^lpzr&bD<-RcZE(w)q4PJrjSLOk_EXY$l(V)#F_q_R^tEunS) zy_T@*z!dp34?|75I9Het7rViO;PEUR;rTAijmZou-ROn$k!2qhqRyuaGdkCwlT$A} z-lXUY-7`~6c#(5Te6yl)bG9N`Zqf54uJf@Y4Dq}ug1?n$&h=t#sW2DaZeb?6Lqvx^ zu?iuV2eLmX%;*?hmfxSe1 z1J|^j#x3o|?KEx?SgKC2TtVkI;QVpVu+k7-M(;Np^UTS;BTzNrL{4hhz}{KB!AhH9 zEL1{;sCpNeqADOvW|L=prCbTYHc>Eg2(UF6XwLweeV0H-Hd)CTbccBX=l7Vqv=MqJ zBdmdK))dM+q$0=!y-jSYXaEU^f#EPP6gJeM5JMKa zv%yei&2OO;zMB?qCD|nbax2(1?VnP7u8KXTX8z3l$FOH9n)s<0XvJ^AoL|sPKTm65 zLQVcD0;}*rZ(9j@)I~KEJI!vWywwnSn;}w+AZn(s6z1Yh)^8qJVHjMgB^^D+M5U``Vbm~QPF*iPDU@2* zH`!w@tZ;MhYvS+fdSK^IICdjN2}#e>RVgP>AJbXsVn*QB`o@Ih8f^`xHz=;M1j(^FV^7s)AH<%N3dEi@zaabeOPVQNPsaspEc2l48ZtBGvZ5{gl!TDLO{C1ozW0sN;SJYu5wKRo>)I z9MJYZCl{}?39C|NooZtpBCir69r}zD30+3HP7~NYK`?oDA&BRC=98=?YxScoNqA6K zM%gnD!hXrte@UaRltT&`*l}%rq?@uNkvfQpbOw5sD$afvBwRs`tBo^`{ye}WCkc*J zvGyg+^?s{+p&&h(>-{Eh$%r}JqNSDj{h&J+-iLVUWFy^iC64Z@>}1LJuopfAGprEa z31`Ph4LgRylYS7s;Bi4qJNAh@>2@RBeC%{|YbuC}?u!YZqtWuHNvayXq-|ne-k_T$8(?(F)LT_5wB%zQLj>W?31=CYLb*Md^|hmvaN=t`ez?>J1*JJwtEnE2s7LUynA5&f0)5$-lkXjdQU zhMaWO>&St=f&WFo&KSZ10sB~f%>v;nPqHoEyx#zASQLDWQ?FtPhe?hUKNgj-2*EWr zq&UWsG2H>BuX*9C)}~iIE+vt0_bO<`HLShYi+ALF+e6d$qzF%UL}kL)^)W@zy{~&L zNYtggIm78gco}m6*2^v%qfQ*kRfA-blploe0I}3?{~**+ISF@MBChVHFei5kGHFhW z73i*}jx&%P#fj@0K>8?!2P9X)0m*=C3#0c8$L|`B|5+UeO$LE9a}JW6@FBe%2$v0! z%?k12wK2@0O@Zx}>uw4x9DubUfmJuWXdUbpO|^A!0;+LW9sLzB`X&Vx<#-iTG!6-< z?cpMZBliK!2tNeeH@v;}!S{Y;Pdx5V7d9Qt@(ideWt^-Ac>tXR`Z3}A-sXtjbObIm zlUH6o*6J#qHRTF(0rfR;Sq>vqadRAz73FK^OHh!`@vlRW+;nb5v{NNXX$!%J z1Hu%{)~%2^#DtIyfDs~c3eLF5}mInHL=BBlz`9I6GsY2A4|>hBr8>+J;y znyP4i1hI3>6|zZ;ecW(8$a$y4j^`kD>ZFVR3TlFPkg(WI5Y3jvwhS2M3W(3Fmnxrm z@)Jq_e8yPC-JiYJ^B=N)174r-`Aj!}bUom4AV617c+BMG3zaTS`PXg*=IVg{tA&3{ zLwLcl$yYofXp$uNDWJ%mG07QJi2lYvbSoPBL5RZ%G{!h=m{OO%0j+k}C!i&YDtsQkjFWT09*jCYXJxHlg-D6Ksy z@@#5N*ZT>aHnVn*H8lHx%_OXIF~6@Ot=V90HdvbtR;OPFRv>I}C^VRJusY-32m2g* z!H|pl2qqV=@!S{%v?byL(lPWZETo63D)9ud8FAv&GGTS;>$xhbt<)zcs-y{SxDm^;isJ85*cKfsJ-`@=-F|EIjKW zDpTTcI3lH-?uREB37ifIJmS0e&LnUWB=CqMfzwkG-~!Pa3G7`Z0n`iGa>(lL#7-nI zJdBM5w67og_?TCnZdc?CGM*_1^wSlb3I!0H(v<>;rDQ8u1VHUpWa$h?0GyC5d`)v! z#u-+*f(~5S>2_~AK2O*mIY+K6=IMagxw36KPsy_F$9iGDKhcZM_a}19M2G1v)Db&; zoUlKBv9Aqsyqsj@<)qnpIdLZfsoa~CD|_JIgw2&}6CnI{ zIXGDw=O*QSBOIITk7E;^J;9|(1(zlqNx8`f8aXmq6(=U;fiz|@jk(1S&*9r!eV)|l z+rWN7vGdG9s(hO8a;|&1!{sXA*Q7%9Xx0p40Q^ol<4+DGhv(xgcHQtcpE>*j+}fA! z^1};t(&=shHS|tkm?Lc6qbA?Wk4_R^00fe{xn{|6XfO<;UAh4JsscA70C@Hl!27*~{!`~*gxS|h|>cK(r3 z*>HSRW9cysqsKKWp3q2mQbX%04Tq=G;qZ))+26AoQX3YYgPOOLY+^F&mR!tXn?{Y{ zj$7hq*q)n|p*3m-AzOxzTbwgV%Hir)t9nj}*$kW;lgV(|gU!mx$GAr}-^*|4con3=|zu%HOJTPRT0(3o`i&ic(XE@m;O&rl=!d6AvRO4)N{}by$y1hH= zK}Bo+XmH~owI1AymJ!p*dJr{P&(?$Yn)P7iUhBA(TyZp)`GSsIja%AXd4ZmWvWcr3 zYH*3TUJ>>)6d&ev-t+3b7u0z#s`Fk_=e?}XdnN6>SJip1$%W8{g_o^}r1!3aJA1f6 zx2SeW6nqzSOk~UrD;qeU5Ljqzm!7S?xmnj#(GJ#uQ~5A3Dz+ zKZ&RA8ss*kp6AGNik42bP9=60;?OBx;W{Rql}cF1XzuG*_&Y6G6@D6o@YIvBP`*ra z!y7`$o5I0cU?XnpmmjhQ(awO%Tv-dVm-_k$pS|j=oSyMbtmj6aweu+v_SX2oy;#`2 z-Lro!hoM#L=AW;OT;*C zS5v0J&w7nb89U2Ab}}9_$KroZOpX)rFY46$zYrH|Tlbv!{|I40DLRiKqs{8M_}0RF zuul%kX$r?yY6ZQ}V?j#Mg*crGYAQ(i>k4YF2MD8%9sp8`w!iAisrc-F)e35c$jVfoiXInOdjQ&3Cig7S3*73&K^TiHWFN|8{|3813wk~s|Z zsxOCSN?H#4;m#T==`$tC6IZ8#des%wyS^aQCuu=Tl%o_0;hoCqos@&{dKfZ{cv3|f z+VSGa^468i0w*nV5!9?Z^*$!VXDx1g@h^cSpJ%YOm`P!Zj3JzUxlrIaCAkAf zc9Q~2Ba(3nSnOPzsyy5ZpOSk5<5v0<6gFu^w^jIQ>}`t+o3B!K^dW4+1ify+H|jyu zug9(}a=T*JvyJ;I_|n%p__q@LuFD<%a)N7V0JAo+H=9D9i)38_e4BH^MI9{mFMJYcjTy{$|QI62+4KM^GTl(xCl85~ONzJpErsf~G&|4oN?j z0xPDn_-~LP09HvbrNAD+t5V?B4BG!b3I6*O$P#=k^w)_3O&!!7az%7i3Y1FuzfFOU z^+4pNedsl@>_PIa=5B&JQNr6<|4Fx{dJrn%#Jn+9qfdJTr0(%7S|92GlcsCUI zcu&X`(N+6f`xyUi3S?>B0}oV6Hx#Jd-YP^VRVnbJZYfZ+ubjP!^)+QNS!mW3Zq!&m z^^VoVMs0|6{K*_H;lc}h!pe_idSi{}x!QFOt72fd89<^!1Q*c$Rf8l0z!KFWW_$4At4FDh_pK5kEk|4#C_( zS7X8KaV7}<^oIzz0uTNk1ml;w3xezfZw{)dj%@R#yc70Ddb=E_r%j z!Jv1syh=_kUgj0<1i#h!PJ6y?1~&g@ZlN(Y&3&m?SWur^yTJ9iO<@72PYPc$`!P#o zxAj*w_eEaeHZtIic$T&oa&{K|7;aAT*P&B&KZdk4C0we8M`y!>@nuecs|+qB&Z2J7 zzRj8sYU9Qt@L-f?%ZEp0!$ZhVz{H$Qj$xQaabFaf>{bvPSAG{P`zwk?SA&u90#t`o z()pa-LD}^!A=%=RNxsaC<$q*<+b~+k`5%$dC#tAF$BTX!4Bl8}+F3mIPum65;o0d5 zW@q}x5hg!OyLpP$;H)} z+;NP83k+OutAwMnMU9&V?P`51Ur3XS_j`r=h~g+{Mn^$GlzDK%e-hq#!#~-EpSFXz z_1o@!%IaRHeqnavEWFa+o>|>$-)(}g4;BXC%mDOT&5O;*N(0cqBs=g78>-u`eUiI0!=(vM;YXSvb#+`^*joR`8v0Y8{Mc z03%NEfbsOsFwRS0Jj=m&ZVKb+wVJ|n9E{<4DTqKu`R)_phL>7?UQWwSaPaetZ~p{- z!C=bwTts{>Jd>&~sE2)C0{i)7Y<9TSqg0zgIKMO87bS3C?BKp6g?oM-+!rQrb8$d| zT0A9KBn{xvt&nN{K7yRwScD>}n>T>{_L4!*yo z@Lf>{-?a&R9VvW(MfvU%fyGNLKQEVOS95sf`5G(8<*MS9cnqwmT8h{zO`K_N6gIgY zZw=m_cqI#Oa8J!Mrib!R=IuG%s146X+?OUam^=TQvd*(VqyFZs#uv0)Zk`eDJ6$ik zwGNhlr>LUy=8cS;mt^Qz;2)doQ3L;)LfsdMpO9V~6leN{?*PfRsZCeEUa`ZIXR=$e zI4ip~%U0@bS@tPzms^QD7@E<7)VIW)@-1;!misq0wBv<*ervW}J4CnP`0i>>J-v={ zK8Hq3A=ik2MLjjAdrP;gXFBgK-I4Up0@pitroD4}UGLnI^v+#r?@(%}NIM@;Rn=D% zt-S}%=jjm1#pvs8U)r6rzZ=dcsO~X`Z-wYy!ZDd3y3fLVbiaiy(cif>2fhqO9-t55 zV$p-b%tOM=!@|rX!puTp=Ft>0j|nrC$K{j5q2|GC_>e=*!=NS;K4{e0XrV)lVycLF zq$^?;CWv{|A?C3ZF^|+C=79t;j~ilW492k8P_YkY!F?4oiWOq8o*>$J?uc)h5wunQ zjuTEV%wXLhi8I3%eRy|vf;}>6+><;)clRcbOe6Q1HnpCe*R%C}yq?SJm4E^ynQt_z+`y5N7RJ@7=W2cE3; zz*Dszc)HdD&m=w24|4?uIQ@!!7dgDDI{C)Mt2kMOv)81I5-uPFRVYs0QdfKc^_M<86 zpJ{*a{NDCyk96A5e794Vyx+A;K1{mgJ8yzla4per(Jb9}ngWW)(~W z#Jgd{?XrJ-)ea>xlGY)=3`1Ts{J$>z6JuURRZT@tFHe&M+IgFgmq{IK7Y z)m0Mz@LmZJg_%_Vg#S;o;V0IA>W5FE(nQQ7{&PnV>TE*sA1l&9Kspt>dcu$F#XgM4#=Z$P%qYBJjC5u${H6}9nYmGw zM6~;^GhBxxt~U-c*H_`8xkUW@u2y8(YSJgrP=WhI(C|{r&&#(7$UGiw z<&vpFuBr$^LM}Xzs%I45F?bKRqriqjJ!Y)F**MOsL*Y>gs7E_ck4ZtDZSM|)M<$>i zn}Ql1o(nCq0?<6W%mUi#ap)sH7an2Yyl>#l#T3#?bpqU6Kyrfd@tr|BIRWWJ2hu4i zNXOTK6g!YA;i)N1KtcuX8$rTL?E_xs=nI$WBrC{es$!2Ux$p!7_X8N|={c5jXY$SI z`lz!vh1067Xw-;4Eoc4|rk-6bHgTvxK12CADU2-F&#Go>4BZF97JhrqplZ}GiEpw= z#m_x?`02m$w?5W|^C;6iby~n#;GgT@!2m{Uo^#{z`vimkIKNs^0u8wg zn)9mAn6XEr>Q7dB` zrIGv)I@sB0lH2b(_&X_aoT?tcn%`=#+hE(tZ`{%+TkkWOziQ%ERX$E=_w65?^ zxQ@_@@8-YdW|3AnnriN58DpNMQs3a5#Y|#Sck)bbNz7~ML*gqKo9`qA$w(g9mitq% zbfrsT^|NZxKjz_3KPmg)eAwha`|NwZiZ}UFFfyL~r(jUU`QJi9NV0cnD=R@mXPUtY z5jv;wJryKLY2GwkkbZ;pvn!PYCQIb4Mz|i($)y?$V8$ti(dOZ3aYY~(f!aLB)5fnaGD3~|9wf(o&^ zf~2QF9^5tx%55%?m%LvEWjP()I4H|u=hUDqr<9unWx0;rG$_kA+-5;}gbT!ectd6= zu-6YxaymI?A)Borr;?NNHPDkQ;CK!EPRo=RxF%JD19u73Izwa;IA&&Us%i) z{^Ei^yI?;T>?@S!3V(9JJ}%hX1v8wF^}Q%mPS&Rj!#Ugo*xMe?<@)X}*v$ohbiuAJ znC60Z7wqDKon7z;7wqJM9bK@43ve(iZ|=W$!S8~Kz5cIz-OdHux?md@Z0&;oaluwD z*wO`CxZt-g_>BvG?Sjo+0QOZOJ)?krQb4aMpbskw=~4ysvjRv#!3HjXhV%wSDS*Bd zKy3<)1al%?y{+p4=vi-&w}P?@7zlb}SSVQA1wSL0!s}Y@bxjxi)CE6r!5S`D-31d| zu$l{2b-^k|PtG^F*-gf0?;jKibguzf*@O={qR3G7ZkJj>T%kUKfndY<;D-aE$$_611Q+79JYyX)!C#l72Exm|OsVtz@LsD+sX3n8 zLrxo9g7F%`#aOQqTvR*e!S1^1%IOZ)%T-8;8m+X_z0CSc*{H@bDkl|g!$i&FH@Z)@ z<#sOuyG)m1q`;M|_i^wcQ%a6E;Lw|jt{{J3Ksd*r!N0xHJaWRJzUx%qN|~g#L>Ls3 z?6|?N`0}hyMy`#9py;J=58Z6)6n-stZ|hu;J$ zZZ_LN#h8PF@O~kYU(hjd{XP(8WWTdU@KjB;)>ch&4RaZu$7aENr*7_YS0>sz_q(n-8)n+S95Y{c=MXxc)qy8 zPqxIQb`8&i3~`7x#GV5|6V{(3sV zpdR7S4RALlaI>PZL8ZIHxvc?zQCbmk>9{*Io2G)kgzl_~jI}FigVtwPgE+enDJNu# zlU$WrWYPfMTPw(-_0^dB{W}sgN>DXg!e&weY-E?(t^*F;5W2D2H{p^Tnvo7rv7S~ziR zh=@(N&l#H6QpHUOfYSkNB4beL`WRPZX&(ndTGGEkc)jaidN8Fb>ttt%V z+^_Jtc%?d89S=ojS@i1mYZj#^Q%j%=Llcjm%|g97{B)={Ze5Rhu&9B+2lB~sOL~i; zslD?mzf;jog;jo9Jw34$65#ncgu)Bt%J;$?yyBu9I@gQk)b|qZVzFa!m*!BsUY3)X z7f+uROlY$^k95Wj*-JC_5|eU#@2p_O0!>{-ty~ol;?_fgA(e&f2Y6v7{CjO*-~qq7 zFYsXUNGl#n9@!UoILXVnengK5i`sm0+D{(vzRXsXej4lcqdc*&T(91lLXdB0D)w5+ zYt1(MjedODAwkqTl*e%hKqmTj|v*rTKV!RDubYkF!B68J}1R47$$C}xQs4oOMjP?5r6Ia@09jvHnNEA+Q%KWTTQgHu)i`$3)m z{kVNLm-*5w^@vN+WuKwfF}MBS?`yx+n$_?UI^*8)Rl|c)gOJb~&p9+$+UsSBTNZQ- zqP`wlI$Qp$UEfG&X#T5@Q2UNl`;JnZk4_tTj2d}tuB?R+vQo863J#^PBrU^^t9is0 z3OJcHN8{)CT1C?K8A?x3@h1wUC#lL+vYRXG%1srFo@=3TAEUn9NJ zwK=Wt;_Q*ZL|Z=$a7?1V3;MaBuM4=vuR0Fv83wUodT*Dx{~sQi`~R@!{(nWmyQKGj zG3Ey3gk(aDZ`&Z~weCQGQ0wjjAhw&sd`+-p3h8v1504Jj!+ay+wT=mfE_olo zfcTD$xDRbWe8y41)a`%J&%5?XY`=n#wF~b3bwgCD21#@-priAC84h0EK|tn*c;lmk zrN{jH7bC2@RJXVwwi{ecRPFa7w#cj$WOps)6(v3$r8T>tQ$xae}FA)b0%5Vf4MfXS+yX>E*;I=*=sFOE++F8Jl(>$ncy zn55)g&Sv{e?wNAfdR@HuxL}ZXUEF^T9Ot@t!kl0%!H#o+@y*wsbVsJVO6x}P8FPXW z-r4b8bArbSPCh=k-g~WMlexkAIja$qb?q7K;ugLhzkG5qum5X)$P78bUyD=XYqj$;zPwuF&I}og3pnoQdRA#oe)I21EM1*Qdd&WDm&mFIQPMQ$9Ps>C9kENojB9FBU2eXLvJ;W_!?ZDBla;hZ*sL^KH9FfG^-<6qErn&Cw+SmEv$X3y zx&U4qwn)m3A3Zx5)PIYxclEoOp8Ig$lgKy!aq>K)G{7zx9Kd37z-1Fh9Z#^U1I_NX5{CrVZYeOAvlQ}R**1ZZt&4GN2F zS%s|@r>^RiKrf)8LfBtxtgNmTFP584m9I+>xza6N#s{tCQ7$Fz{&=(Vf^n4rz-a#D zB(MdMW(76m6w zFsc%ef-Q-w0x8&%xGGO@cm)GtVS+z=rpLp83I6^BeJA+);!DXe(0ZE^JY&jnpYwwu zy^eaOtT~`jbHJg`#6LYh*rY{YPxPRs_{8&rjVGuO6m9zw_!In{DGAa{%Cp&q`0xgZ!&sE>@x7of|jk6~t_=xPgF5Az@(VZq1%MS<(KL?}c_WxTbQa&~eKZ zFhge3*RBlC_O9tT_^Mzpy?%amu#R_Tyv8-bX5Q8DQP%{A5V_Q~!Ji0@xHg!{4SvCO z!L{DA9k*W>9O`*{$Ln_lC2#MJT|0t_o_A`;71syrdERO9pKlDt$0KeG`tZEQjmTgY zrQl}w_N@!nxhZ&r$kv;K`QEAV-)`ncq|?~79_5cOmT4}!zbsvapmJLL{>@g*xLXhd zPKzhqVsD4t60FlV`GR$wT(7XUZrwY6o&>TDy_J@n8t-u{s6Vaa*js}}&pRR< zC&cgH8w`&Z-WBZA>)yJAJ5Gr2SQsoHA8>cDZnp_v^^~yBJw1H!QBMiG-5adC<_Brz zt_g3audWF%r?0LFPp7Xm;Sp=XZruVo_r74=VK=0i-M3e#uY7y)3Gvv6Xyr2Z2Lrk- zVAuPDvwJPB`{J_%FYEq2SlsOw`#um%|1njr^k5HFR(eW!=)oUqOb3k_;dKkvQ4jY} z-E%!9jC!PpFZLnf$F%VAo(hN-_E7Tf3%ezq-F{4M`#c&f)AGfgjBRXm=69U&XfWDq zc)$z3Zj2vzEZ7N_x60$eO5Qo~j*kax@pkUx!Kh{g`Y;$072_8l4^Hr!#`_T@%+ zfj}LMUMJ1KVpMu!B?=kcT`x%%0Q4|p1Ed>&u;bgd4WCmq8RLv${woJ2Riyc!vyEu9^d+GFx8tAZ~by`Y<%cfL9b=m8Nm7| zR{(e^v$FyTU6CZU)?u`lK zm~uI3LXa)Q5P&af zA{iOUbnlW*hG&BNTC&-ScYs%!drtm;E1_Ag+A#>f%#}vj^4JZ`32e64xJ=u!A@FD=z))ab?``Igq@299Xx*AzA9vV&GwzHe_@OgXIJ*eCTh z$*IlgyL$(P6{<-qki@mosj?NP7T#(;SDuuYCjl>CX+kxAIpRlm6F-djQQgFkBz|N! z@uP_!(IvjpP!360u1i7#0*zl7-YMQSuFxgkHJ~5y?50&4fL0M}^7@G0M1(|Wb=goJ z&)YI)$!KazDgRwTkrL{@OXHU&epom0gNYwn7hfJn#E`m(w15%BFI^XpwMoSkAEPQ7RVXo)K~ zH|z!UvyBZ!P`vZtC2f*FBjQ}1+j=!Npn=X<5q(Ru3xmm)_lH2?GJ>oiYeFpM!iHHO zvjtGNK)ebtwnBcv_7avr?lQ!4DRP>zMt=iHK$V*&G~&+FFZ8L8Koz0eypzUflQ*Yy z=6q2z5vUuh1*EtfMLc_wUE&83kI7G3UQVywWE)7lY4De5NQroCAG#DfoOt%zs`2He zh(Iu}Mx<~JA-?es-6RYp0d|*==~&+2G}X_`V=SU|1u?jCPK=QLpsU=*ShCjz&uP%A zjqA->LZX)Z@|9q%VRxQnlACrTBtYJhzVdwCN%5wy2ESPGwUbO{m3gnSJfCK9Up$_^ zlJvky@g1+SNYgYZ#y3A6@>&of760tD;No7FxtzWVIsc^i)7OG2Yo3|LIjQTE^wm{0 zCw+BQ9iF~Yz=0=q?Du-Ga&yN)?*-3h1I$CjRZCECJpbKbjCW`J_`AXAz823Fa+;y^ zzT~T5 zNc`#IV87w-eWh|~f9w2g!~&UR`*6Mu3Ym!uIe@Hy{o8S`v(r@B*z6}O@ z^W&|)4Nh(7fD8EX%W#mm^}As7(DN3sN5MSS%zV*OzS58K!xHhIsSl!nS>}Nw&o}twWsoF0*Ir z4e{O0g%67lACW_3&}rS^j+^5uV1ZDivLk4tlDFij?u-!EloWptAt@4z55q7`JP&K9axwg@18G=imw^? zJypdY4=ilab4|Y;RM>3XxaoWEHDmj6tE@JD!s@I3e)W~s82`IfSK5A!9akH_#tuJO zW%~)g`~4a_t~`E~-%t3-4y)|2)9Uf7g9?*-E)u}nIyM_zI4c`B4J$m*lyU#X3x^d( zkNVMdM9UQR>A8+`mnl5cf4ALdggfrG``&-pIoxUbjyr}s?Y-L$dv*M!t>Cxx{N>@J z3OB^x4JwT8Im;ch3qw1O8(rAcUqzt*yV&WoVqxbW-Oi44RxDiDGbMEVdey>jy`DjZ zP*&;iCKTT8IZwwYs~3Kq?X~HSf7oTO89Pp&vfEC(Z@g1nUbAq)Q5e-2ZpRi@?s(x31w1+b*s<4f zM|_^uxy$*7b)v7UzDK%n~m%x3KWv9&6DFh4tgD zPb`dDX36rFm~H-YLgBCRtP=}Q#s1*Jh@J`Kgp&$u$KMVrEZ=jMTwM6}KkL_%3s3f{ z+`J$YeDRRiKhv5S4k}(erZqE=a2*C$OM;-C`?qGAljpV0YRzPmX9b({?$y0tMmdG# zedpU+GZa((Z|f!U-ay_;K1p8mR_B6tSRykLL8f<-cQyt8f1RBNfL&F!uf8q2wc23daHu#$IK=DE~|mHLNy--(|| z)K99^Kf=4sPpz%~dsOjvSZmMIp+L?5QQi;Y=L-Wg2%&EH3-8kLC#c`CQvWaBWu|rN zs~vB^K4^J(g3k38xt|}rMF&yVc(AFx0ItXs^RLx18moJ>wvG7QqFiRdy`DB1h<-k3 z!+jOTvefbn|H5G0jItJLY5(U&?7x=m4M%jdi?!Ni8+F%61J%}CA*EXF0m^$d-fFdn zHf%9?f_FXJi^0)@I%;+)LlJd{HtFVV(Q4m!MR#r6X8rTa2D)n-Gz-H)>ivk0-lo&` zj($(w>?Yl}Dg*rA@OxpPLhu^zA8Rris-rhp+QVtrD-&+eU7JuTA47RA<*x$ew7dX3 z7HGrwDBwjvSy_3;vf9$u`t4Yx4*7Q17A}jv?n~vuH}JmP5+i-$CpSqO?fl18V{a`f zM}V!LEry_+2Bo1922qZ$P?|$f?gyn76k$+~)?>6`g>wHPDCe|MPF|#5y`yWiOmuFA z^u!@ZkNVKz&aY6OJ_Kdf)@iv!A$_i{P+l_-= z{{-ZsdG%hMxw2&rs^TTQ9;TRKo0R8Z`vyhHQ*`C!>KC_ljovb)S#)i+c{1gF z)TX!7+)J})+-mdAlwVML&^-Cxjk{~(+nVLjTt&T*%m<1E7^%(%ec(>UE|%)ePnCLk z(~ou6W>UU}ADL@=d8yG|n@Igy;O@Y?_z}JQEM?K_y8heEdTZ0}+F0J_0QUqQ4pYIu zjIt%_`ypNqpyCXEL^F*TS*kZ(FQ!lGP3rdtzRigj30X~fOW;jF8OXc*NJo#=OLeR1 z@1#y^JfmljMAXh)c~DEdwxm%XQQ5^YUvDV`DeFg8MV<-ZZ(6=K{@Xm5a;87{S_{2O zsYaDmqV(VoMH)9>sI>OUohMNVo1s%wT_bi8|A~4w<~DWn|kA zNY_U&I|631FZy|Iz8ZOF*JxRej~YiGq}t>P`IalyLq94>tDCS3BhW+DF#rGWwI5Qw za?)#az@k_`YQSf;4fs5@$6Z}phHp;6gZ`DwbJ+fo-29c}2pLcDgesovY zcBHxf`>w8FK%df)mz4fuz&eOD$nzeo^ak8gSt@CJm~z!Yn%moQ1MccCJ@)sZmxJWd zwl#3>sPcd<0m{L9po7yYnq>VTaO-DLzLy`pABR$>2XXp4gF8L{*4F+(Qacu05kGlO ze0Ff#C2hE62+?r%&@nXXBQ3;tSCH?5sf_-5;Ao)sv^CTox`s=@6J;yUcC)){J>_fd z#is`kXq}Xs{Wnl{+PtMY9{a{%>6i z+ODl_dRzH0aJ6@~cU#+WZRI0Jw=~J|yo+3HFdAo9JEZ@Fna=TPP4R2$Wa;I3nfDFK z*V=2mi^{(qC?-Ij!w@>DlSk8EOuJtG(<}66@h)<5{N`J?I`|@^($20h`Ig$_-mWb~ zgLdE9QmsQN-zT8dYc}Hc!6F(`)}kz2p8;2|*$mqBkfm)+8?N~116nKxJL#>p&_4Az zkUinTv!CB$T&1g3oPJFw_@k-U6VUZ9Gf=F1>4lsKf<9P6&~lAeSJr0TH(PVnb6yFh z-hvOOe18bai=fmi)uP;h{aAgc`t1E(TWuz_Ylp;=U8|041f$d=((pzoMc{O~>KJ~R zHZ6Fv<5dY5U*RPqkmr%+C^WBuDzim2Y7HjLssoz@Gd)R7{1o`&@appame&>V67Q7f zl=Z|f!%U9NP|RMVO=~I{*g6=jf9@K*V(*Ua<~FNV`!>)8t_6zoci>p{^!;6%AF~-{ zz8I_hk`pDKr#>em#+07vvA~a0e-H2o;3nI2*X96^0nP<}6(}33>Ap)@BDCw(9uIVl zK4#jMrBkVZRrcSdd@N{NZq;2o4!8n1yTaxn%Ewb4!?48CX!ZwCmca3PbsOvlx?nSv zqBcaEk1KuFd#IC@8;MS@8m9L4b>NHZ*gd|xwh!=He&j&4*MEmPt>m^y)*rfo+6Q+J zRvUVp;5VL~CbaZ@*FCM%EsgECCb+tj?ZB;?>2}?dG0}E}isSVqHTChX(Oa#c*=!>hO?%KJ)%SSU<^#r#-L(~z&jl_8{t0+=8@>$V zJ4|^lQ2TQoJD2|3VbsZx+shhn$u6b)D6XV7Gryy*sZ$1Or+>GleZi?+OId4GDgO;* zeQw%uZ>iv(gU2IUT<6EyVK#+BM*DQ2Xz-1Jj$BRY3hHV%Q>m3oyDN11L#;zCxVMAb zoW;MTMpn1sJ_N4Tk%KNa#SmZ7hWta2wNkv6w(4r!Qo+^f5)CiKr4pNVHc(bfufR;o zk{r-3mxeFV&wxY_dau3!;$DH9$BbC zcvatQqTBL$ZhnMpMRj)1KQef>yMn9}2(Qzotu%er_I|Ww_N6?l!gwKVG6DUZ-&URj zZn<@=|0QjWH&fQiKp6CatheLAwzlEl8;rXMTgtQYbjS(@#e}P+Hr4g!yTB9MbqBXBHp!)c?oYz*S{Y$-8~q$sj*0Ve$s}x)1ON)*p-aXwYd5-Qfda*G)dA~) zEP?*OX8S_kwfyMzO~Qfl=0h`_1k&D3g5NP~J<@8*=a1CumC=r|kW>etC$I^)$IzAn z7XY6E$_0o#D?Rw={nsO!O`b^zz6g|~`46BD5r$gQRWOm2c@a1lI0^i5KzSM+l&>}I z*G>TMNa{8Qif6vVJqXLZN`>H`#s2C}rCjmKZvKJZcv8B&YXR5rVn}u9(MI}Uh4iT* zNY_HDefBoe=PRVI4?%iMTd$RCo_8vw9}GcyXIrn8dyQ*<+?wm~Aw0UrA=TPR2K>^r zhWjplWEbfA8N<6io_d)+#E%rxYOh22k?+x~HYL(UWx#Hw*S&`r@ZZ`)jR7 zgN7j8aJRuC(Mx&ThWF~r*?Fe2RP!L$2Tjk{2VI{f8FX{0B&k^KdHE1M?+NLL`C(Os z)jo_>@M>T7+3*rou7@=!sdzMvde?;6Yn3@&Qeh_JmuEisvJskD)j@oTmDclZ=XHH+ zlG=x?)t19drzwQ_yv6FF56VEOy0$mBXj}b4T0L?fLVD{Eq~}AbO`G)kAp#*Y(2t(& zRn6J!`Wq-uY6-++^roNZD?RJF$3bsl)M`K7tubE_#p--tsgUZP--J~AXu|HlDNkth z+_;{5z0&iao>a#^$G_{je`c9{toqOvq^DCq3s|k6OxdGe9HDA`K>4j1rLTS+a86r$ zNO>FT=L0VQiYoj4o{c2vz#v8u4L_h^2jJzvX~1NUGU@sqps4dLsTa5cxD{{$^)rFr z+P%c9QV1>4-SgX9GTY1)iU(wP7-1@hqu{|g7Q3JaMW|d?`?TeJl>|3o? z-Qy1*nDz%5+5Lk@HfUf^(6()3{N)i@S6T2iSExBJbnVgcwz}+v$`=AB>{Y5Car9*2 z+RN?nSoZ;?T3W_R%jwnSGbl^S;BeZv0baVMbWE-xjL}x;9NL!(=7o2zjkw_ zd>4qKN-hU(CyhKGdFfuFHU2wyc5Acrt+7v?s4;mK&F*cTCaE}+M!RJ>u6U*;!9z*M zt)N%UT~o&E2-aXyS@Nw0rqaX1kcj5f@#>EbEOS)v14aG6$&VHsEf`k~R>b z)|05*u+<)ZZZPjB+RA@`euUP#`@b_7`I$E4zk;l9*j}U!$zA`fYs0P0X)Sp>-}l>a z2Q~nCM3YrJa_uLrL47YRrShlX%Q?9oC{|L}ufNAySnA1Dw2!C#7@(|>0Xzt(SMPPo zGvwPj*&kUx-LT!<(nRmpR-aKnlREJ;^m2cRI-UDk#bEW;fl|AKvbLmJK6X8{bV=`q zPPTH*73{w}KW#D}4T1<%b9CzmS39iC^k{+Vrl%YDi>$2Y+M$|$-jlZ^nkVHU^4bl~t<`p(*ILi1yo;H95(Y;DCsG#E z(NFnU;4#4F=xa}|Yz>H}YOGRSh*dAP#-R~Qc|A4+ug|v4ptHH=?c;c*jduExrQBA-1i5$E zrdj{5Bg$0P3&2U#ZwWjBxDt3G@VE490>2LwKcdP8$C=UA9(5BuSl2CwBh z%GF~(A6%_tM*OTLW5Q>ATe%-x?Ey`qO)E@L2Wo5DkWU9$YuhW@+HPqpUkI+=+;-eM zz^w|yP&et)f9(rLw=|SibpLZynX;Tg+rbR;QlKRD<#~@bJ#(FTe1tl!sRwx1t9S|T zdVtsSu6bxW>A&_(8uXc}1~A{DUN4nqlu|dQF$@yGyld6^3!HP&3|msSCs466M*-gh z?%c$`he_yur0NmMs(xqJW)cro74di!sa`rQ{7-;fO|w<9kw;hbuF1P5(ePzR^*E*9 zin<9ar27v+`Wr~~5|l$;|EY9!z;lNn{T-xLfo%?0qOj_K=MO>pg$1o0lwKR&$Iv!w z^$_Gbh|}}e&Wo^mmr=<%lt=W&8tC5u2z-Nn_HJvJ+{~TFs9k^4wRz`7$22Y~J5L5u z9@qu^J!qF_(y^_Te!VgdY5Rb(cKoEA9oND=iFe5?>uh`X5n_ zDerbe_qGion+gM;3VF`0FqZO%SQir`rT0a{3m~n^XN5GZ*tGqJAiV-ot=Xj4reP9i zXl{k{#8=e|Z+4B{>Mx+n?pJp~5>byIr$)ZTs$NICsF8N3zujAH_fii$p%hpXDA~+) z$2SvDyvr<)re5T1K2UV)N}wF(i<{-^fMm)>*S^7vY{mD0T33aA>Vdbq_8Z>EQB-5! z=^Cdt`)${F_1d*v!#ij7sRMu8wO>b{y1E1}mtfo9H7ZXj!CfWzdkOY>yV3Tk68xkD zTfft&OiS?f68y0QyS>|JJMZ1Dy#`J!cl<@hcOv7wl-X?nG^v*;N!PD!)-P(qzq?tl z@g!sudU=+{ExmsJ8!ZheZEGom+ECZ)Z*;#1fh3;J0PY0511P5S8KA@))p)QPvR(0; z!Ak88%EDYf8Yxp)D&jNo6bh4!y|9i$9+uF)FZmy6@zakOx$h(-% z-A^uWI5q)F*ida3_x}-wbwFFaOZj%{#Wc@7rBr45+mQ_#hw9!>{;_MLj)74mVRYiX zJ*hLdEz`6WxRTJ3=V;ohQa8V?JPBOwr?&sgs5Rg=7nsliMDfITSybMcXceQ+*X6Vy zLHp}KITpHI)49|iNWDB6JoH(6|GmMYKI8Xo0|s}K^5n5ZH0muEM)N7_Rgv;ikahXm zHrzWX>!gC_tmsj$9HWT z?sed5+V(ylZo|C+T)#BUK0c1KfBkB7qAj|ceJnb2i8EsjS2mS-@{%yEVgR3Kv zxsA4#4yw&>L;e-WIv8tD#jF9hDu=%ZS6@n$jLX5xf3I!hyW!&2PTe%n)_7lAdHRah zHtPsem<}D1)@qBFv{rH%?;;Y9E-yWviSW`%{9CA#L)Do7w9#zI0Kwlfd>OMzg_4@B8sz@kzO||4Vtk=ybZ)1Xg~kd z^0evtrzs1=F))_>)b;K3yV9<0MhcCVvH849C_MSpfl{|>2JiQmW>S|mLvU+b^ytI0_p7!|2Zk&mIa-ER8(Xj)vO9CmEP%-H+->cvaJ{Iw^1|^s`!hxQkNqW*K>c1`@*ylb7LGpwVj6Z3J?X@kvy zki2zT_sI3CT`DS{{oMMumie9j*OngA`smN_6URtD71F&y*U!8mNI$l+Wl#jKl2o|9 zLVDZ~q&q^YS42qNmFtrVS%q}@5TsSp)JD3hLVC#%q`T3p*6l)CnQL{K)($~>5Tp{e z>E}b{dg~CR$3m)YsgPGbOL?WTIa(qGMQ_eYZOhao6=AQE-c7Gsi)zy4kc!RI)npX3A9(w(}-s07| zOVk?r$>ao}WNwS6_^9_l5_ zQmsFS@^{ZJ{hTGhLxfcoL5$ce8pH}OKCAp1_yyo8l&1n`0Dr!!{B2TII>Eo2`u2gG zOa0!|?*^1LmS=#n1mC~=gw!(?-LO3k<7lWdK9BMtAT9*n4>W-RQ2fxZomqZ;Je;x& z{F9XB=vL{)4LF2)`DCnGFVX&UXK)!VOQ{Di7DVZwiYU?E2_Pa(M5j& zO1(+DB$?OnBT@cMl*OCWU+t_MUVgRnAocRCxUOH!5#+EA)GoiM?CA4Av9MQM++8~r z_yj*<=a+n{oTL8SyyN!kIv*HT+dMygdEc^l@zs+$MyfY9HBR2NOKO&{>_5HF zvcnD4oRP+6yKFSFftG{1ynktYQa)l+sYn*ar{s2@?fDzmrJOFz*sMpxNC$f{oP75=2y_`{I6B|7CQvd2T z#&lEb7O5S_o*hJ97^$5{8Gd)}`L=0inIF5k=j5(Bb(ArhUJ@&c(!h)22#f8IJ9!#&Z5Fr7jJItQFoK1@GUC|Y{$>yXqOXIeJf*g z_500@uqW|tKk~J*o6VjM(ep0-Q(JPYQh%AzCBLtWpUxX+k;lgBP=NhGvI8heSGq)C$cIlmKJ zb!=&z+2gx*oCcZeczIZ4QDU!d&~BN=3l~BZC%NSnxoPHU7-vc3oZD#LI$fH_%UQAc zX5rCpJ4lr2n7QYc2WW^8%BS=dn$p5JKPhQ;bz zm>0{TXF)8p$g{xpku^7p${y4W+ZdZLKHGCRP>E@=O@2P@(vtahV~tTgS(wCuUoiS0 zq3dF|a#hDKjTdMAi~5%3c_#CZqdbhZ4jvk3ba%VCUxc2OgjvQ}i$eA4IOB|ZY|*7}<*{$3g&!n)s@KLDr;bkhmz*Kp z1-=<&MV4n_76f*v{xIJ7M2}Mx{C@W$b!{)oI5jiZl-(RZ!5E>|O)xgJ#yYZL0*G)s^+_bx~vD$T_VT}y(gtJoE7Kbm-Q`JAw*uLA$Bi1&z(;&49 z$1&B-6OG$@(!gZqQ689fYTCB9@80V3TN`85dD|MB*L~MdBQs5dA`2`Ax1ajWB%|m- z^bmZ`x*cb}=M?*YUp+g=*h;;&n=xO#Hra5I{~*g9E6cnhj*=ulV46BqFlOvzbk~zG zO3gI!*heP|Eo-)lcQRJ@ph8T}xaXyomnXJ;;4$j56O7SnlbsD4EmEZXFNxeBNbJHt zsL62t&M>qs7T?ZoKMVY{@S=m&kG40))e}2pEBP(?cHw34K13~CW=yC%rYPjtj_4_l zJa>*dbfK|pcN#lB>Na8%PVg@jSJGi3Z6F&thbS znP*Yx2iXy)s&3mDulo5rc6D@$9XW-cxE^~D`$wurOyk6!gpIIL#+2nn?wZ+ACkxFu zb(m%BR!0lU0tPmVi}opw7Mk(uyOuGdo`tr}8I3%f)58KBqej}s33Zfv;HH*sTV7D4 zPV{l9o}g~Djos@g>^zNvAYv5@J9Up$@7hLGFU&Yhe3v5`vt@B|oVwI84(Tbv)D4R$ z3>bKvd)e{6GEXzMJ}6(jLXKJE6mt|D%VQgJWIyyzn7VA~qJ@2F|KjCK;}ndBdQ4WF z(O2q8^oQfbZs>ft;mmgkr;TDGu)6X#98W;AEuCC?Z?e!=2p%j3n% z7nEu(iA>uq#A>9OXBJt!RGm7>K(3~s*1RM}6?qw!C5>!1O=hZ@Tf^sl*Vv{TdxZgJ zt&m42&r-F$XH2f=UL06~TlkS3AZ>o8-dk%-R8uDzRu6LuSPt6{@(dk;(5P>oY4oaT zYmJe!GS4mw%SGG@+d<6~Q-(HGeZ?YKDAqei8|OuuCqgu@#@4~j7@r-n5D>b2TkuLZWu58WQTfarZGnC>Kg~D zOSUsciV3oDraT{g8<I=bvC_Z^ zEI(q6iY(2-GY4ej#;60P82hN>b}=@s`&r>Je>76&_+B1;LLGXoF|G$?>T~jo*kr%G zJXlpFG^QAv_8`g$I)eq_FOPtC)|u;BAJW4JEfhgyV-|5qin9+>zh8^)cyfv{p(jlo z6Q_&g7sQxsZ{R>_+*R!|6@!l-;f7v{FUO__X0n>~VL-iZ8rvotgM#Pehv7LLtJe3o zk9v8k@v&YnbMqv&GmLe@$q>dWxBi`;a{LP zktf$Qk?8Z)>gnuxURYv{SX5CJzJEc-A*JCNxjV`xr@J)7k_NG7#=$2$f`%mKJnb zmc6#^7)=vir1spySW!ofhpC)%R6u~byI3tb$e6J;TM=1tE?$Uhk;y*>6nTcEvJIL|?u*?Z>xZU}1q*9kX>2;m&jUL^#PJI3Aj!?kIu=bYiC;U=*r#sUS?a{Np|0(k2<+wR zh#AJ-qlzGjY{H==ORX#n^D8>mbf_z5Vf*(#z&K%)lZ3JDiK-0Tz|Mm!J1*@|b8-&H z+?4YpIHMypT#VmVIH8F;vaagbclrv)Zp=`9abKfehqk~)5U(T(0Q?`vur(i7QSfcI(Xk+ zX8Kl)Nw+@J9Jd$Yr-=t2nr2Eo_t{2Q^~AxHBNM1_3~gXtulAp9OzF*0bAA|lxD&`t z8hox}cU51)fxme+OJm}a#Dpa1owy)~xIsNW8#|x5nb@8p^YBpO%)POkO=ja2( z>m-ry--HA_xzZRje#z4QCH>3dh2p$hfrO7iZf3+sk?VZEIc@ z6j;c(O*59*%=|(*!%?A`v#FeHCTM4Y_r*c7)Dva=X(O9Rj^Kx_D{d|oLOnvux_I1i zj3dfH_>y{dmNBU}0pGPFcG(RRVy`djL%Cq_0!;tH1{i zfg~YNOOPC^_`2#o#ISplG)_%wL5+RS&TsA5r#w*ohZtM;2B=!sVKTAkt`ASod>o)0FPzZZr3cc*%Kj&bg&B9G9D zI28PSDFQ|Fu8s>Uo2zJk83+HscAThA;siI;k5h%ZJw^)2y}5X~$VW_Q>Ry}l15zCOBt|Sh@xR?MFnB~GMukC2kZRkRg$+*3 z{QeFs&-zhsvov2BFO|{eK636SH~^@j)bt?sA~*2RjZHe&f_P z4l~B~rXF?~JuMEH6*=*DPzH_Ge;j7?b`!_o$CCvh>_nY?SIyi957UcqHghL;oDhqX zx(~_ZZ1s(O46;vtB%&2Lp@-jBcn_=bha09G5({)(Wbz4i?mwd9!ws)Db8(A^Gl?=% z+}7yPj{Vi_*(j>jhZ`f+z!IaY*TSJfiH8~Mg|>FShc0UjaP4VE9btx9k+@`t{M1SF z#}L2;FoMgCX#KPte)S*Wj)9UCD zR5|C0!|Jm4PpaSu1Om4k0YU5M4qi}d{ZO5E1aV$qP){u%Cz&ITr6#eK{#duF^kWgJ(JGYk!) zOcWpbndv>FK6jL{Lmf90wVMaXtXM|-S@rx;#+=@mzz?Uz!D0li6(!GgR9vM|_$rx= zPmNn*qhjNqbS!My**(9l^dGX)*)T4|%gX<+Z*%opi@k{EsW7)d`=QSc>7x@_O$p2Y~_~?h%Z8yhVa2wj# zH-qBk(k?~5B@%D=&5t+uw+C+=&Jyi=~tyRkXgcdxkVC&W}4;suhm!gGhXgtWVn{Zo`h>= z;w7&)jUjHohyEfbfh@X~{YJ-o9qQTRi4`9`71u00&bYf5yJkzsgcp>OQ1gG&u}8T8 zH}1;Oj9okeGcrx_zDdr$*|AsIiX|D@IG?@bhcJ+&6;clin)z>W{2P8s!`N^F2-6FM zQM9OQ{#HGGym4aPbVz1|q;700wk^m0otkk1X>5X`1XfYvMmF$mb;${aUw3fv$tE(6 zFu`##-)U5Lw^yrAoxt&GuYFI&ePktErpGinS(xM`vwlA`>vig{ePkXSiwKcrk8Q%Q z*s=eh_BxSj#*mX~vr;0&92e!k)uksIbL$o<%Q&}?la%Nr3IC|xJJGnMjs^`S8xX~T zWCij+wKOd5TNa=}I0ZKOyS(_Hj#JBIwUHPH^f(TBAd?8qB0G@ye@2N(<|xTH4Jq!r zBsFsHFAeePA?u44MC^jlawd>f+4Uqt_zx!m-7m@Ruh! zv;Sggr1hE{t?w1&b!{s_dMwvTv(@V0+$eerjA-t8oT3<|AGzmrexl^~c5dw3YZ6q1 z9_cK^CriEL+|H$C>w?1Ay*I;*pjtTsoDp(h=XI_sTYpg)`}ML!=t?ve$B284?EKCZ zW$W=L88b=V5a|agsb*q%tGGbjc9IeFn3j#Nf_F}SBes%Hb{?SaI0+YI$z^0Zy#N(S zOid)4ktX*qR5RxrGkQrIAet#xC|+)dMZAW7AR4W{KHoT`Hwzt-G(;#Q29wmWFX~KX z6q~Cv`ncBk=b460NCJZ6%93G(QjxBM2BBKKz}P{(xPUZ@8Dqt= zkl2}JBYL}}vk~R@T7^&E-1NLC}ZQ~-~1pAm?tf?QX*A^Ool|()F3(c!(Pvq%S)%N->Y09`OANP93I(}Bl)c=&UX5I0IK2*+fH7`c;d>^`tj~4s zE8*BqrHh3f;|w4Go+-N%-q5+ca{cw_5_Dh^AzLUE+#nKzade~VJ=M6lj$fH$g>tgj zcpzSIle+Cx{LQ7vfzIm!K zNljU9{Jj^&6^7)KeA`1;h31z#`^!6sxhss>lJY=S*qcsT`$4b|$ec37~w^nC4g2)YFWRXfMSV%<*xtn#}KOu>63`a>+7g z`~;oc{uKCFN&aLUIn?)p|)ox}(? z@`L5(cqR6|>i#o~T}hR?9tjds?UEI7{rlA4&M=nM(NyFVOw5XB;yb(FR%f4SjIWbV zf;!-;gD{C8^?voMGmS%Li}z3J1<{IP5}@$|on3ozE8BNkzI54w{>2Y=b~lRgiskeB zmlCb#%f8du)2PZ%&(jslb1vM;tbLblJaICY;#Ymb*m4wUFq?QYm&`fIfaIZ0Tx2eq zMysEG!q}Tc3Gs~`Cs<7v+vhy2c3x#nn=DBO6e7wE6+tlbNatpaj#^oQvad(4es+W2 z;os{#vFh)VlOEGZ(QU!?4l38nNGWoc6&H_n?j=dLM#gPwJtt*ov4d%tg*oYs@2hW~ zWgJl_!pDaS5^l|k3~%f4vYL|E~I-XSbpKVO+_@Vmw*~ZQzF-dF#_b+6Uh`+Dif5UNOe$=_eELpW#D;6xw@}+&1 z%grBOeZhuPI-XXm2aIhyp1Jy^4JURyd-Xpy9N+QW)#ElA-SLxaR%4~|7>Bt?oP;kK z%*czMS9`5Cc1Gi&PeRl)juhG2_`lRQ&ow4*vtV(yAk8H+gv#OGP&^!uYx~stDJSKe z)o7h}RvRDV{s^^0;>t`&Ly`l2p+Ua&GOmP?1jwU+I}tH<=&B|%j5F)em?G@ z&CM)sK8Z+fH(pX#oP*xt?hUTu!SFSJS^TU)rv7yfHqFJ1bH9&5=lcY|uwL%mzZ?;* z8>!jn3W`naLgp}aak01ncm+qGF=#;<)3>O9IiqXjz0j5z3=*xlaj9?rT>5cv&ABbb z*hZlhaDAWrLQi_^c_gSgElxs4)U|wzTdMrkX6u;NE!TX$MQ|lK5atM0kOr@*htD%6 zZ?SAe*3YVt#;`(eG6);cXL0yTX*KJpU0|OH zEuVnS_7J<@bRMVv-bXsO;oh*f2{$h$-$;<}v$HqVpDr+V=*6Iuzh~>X+9w{3-|F<# zjYk<DJTMFiH6U)4kY(r<)lcQ-(p4@U%_yXvLETnkW^a47ak@nS(v|5rz|tJ ztNXZU=-e1*fspI%&dQ}iFIP61V};zha6s%Ze+M(M?m}*|PrHz0HokC1#Kj#ENj&1I zcRP=0HXnZxf!7Z%L>*&Xa=zt>0{MgLO!YnW?uEwnbsU{IN%=IxjnS>1_j~o3HO7?g z*g+SW+~P=7lzQvb3u{O^cq}35Ad{RkNdT+(gA9BkX>UH(AlFXTvhdKo|J`|5tNU&1 z;sv5e7=FPWj#vCqU3n26M~+uPT*;jIcfzLyn9yWicjU_xJT|k8mriYjg@=1 zh`^t#oZR|nr!p?Z%?%RJ5K`PpGF4grFBW9eON~ieEM6|RGiVu-D@2E6>4;hF)x#Rs z1>9IhB!)v73R#gfJEyGg_4!7E3ruV(nf5pi&K)+rA-$z{fN#nrB~+w^_$I|ZZ`jPT zRpN+V?$|NRm)HA)hgjEQ%8pz!k%q zfwS0`EdBfZr%Of@IQoz+_DsMINNgBl)a4w9e71i* zbOcYM)jii3<3{sU1XdXh&DBjtHsy1}W=%hKUg`I64UR@adeQuRa#ln)3{wZ4#mq=G zI%Jf%CSy=(5#Fe7R)#-79yv+)f`(6 z`j(#5$7f~z=@*7|H40p#OYw`%A|I?t@#bOm7HZ#_`O^M8`_iy&%e88JL$MO)QfBUO z_QUjJoD;r|OPKJN)!b`wUvd9Qe%pLzfnSVE`4x4}wT3x^?{@eug#2(Gpn9F;mSMY8 znC{!ZbWyy#5mPRS<)(lTjBn1!ypzbW`1t0l4e>=72zC(%3lEe8LhvboDSW=N!)`iv46~=F z^JBH>NMo#gGvuJId~73UCeOdAUi^%)!@+3vP(lft%m=BT^v+=$F3K128P8pfmvqS) zcMsc$nnnGm<@c0Ti-=Y-@dA(0v`dMR#F$?%Qq;J`L z`5uw4tO(&r5@cL^lRfyhU|4mo!1;g!JH+)BiCy=8_4H?r{U*9o%_)l)oHT#=!ZXHC WB9q{gO%JT`WDKJzrai?DC;wkJKJWVg delta 294762 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�Qj7h(r{0?LYr*!6o*9v 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 diff --git a/srml/support/Cargo.toml b/srml/support/Cargo.toml index 357aa0c757..318eba343b 100644 --- a/srml/support/Cargo.toml +++ b/srml/support/Cargo.toml @@ -17,7 +17,6 @@ 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/srml/support/procedural/src/storage/impls.rs b/srml/support/procedural/src/storage/impls.rs index efbb9a8d7a..d833ead47d 100644 --- a/srml/support/procedural/src/storage/impls.rs +++ b/srml/support/procedural/src/storage/impls.rs @@ -29,6 +29,10 @@ pub fn option_unwrap(is_option: bool) -> TokenStream2 { } } +// prefix for consts in trait Instance +pub(crate) const PREFIX_FOR: &str = "PREFIX_FOR_"; +pub(crate) const HEAD_KEY_FOR: &str = "HEAD_KEY_FOR_"; + pub(crate) struct Impls<'a, I: Iterator> { pub scrate: &'a TokenStream2, pub visibility: &'a syn::Visibility, @@ -83,8 +87,8 @@ impl<'a, I: Iterator> Impls<'a, I> { } = 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()) } + let const_name = syn::Ident::new(&format!("{}{}", PREFIX_FOR, name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#const_name.as_bytes() } } else { quote!{ #prefix.as_bytes() } }; @@ -165,8 +169,8 @@ impl<'a, I: Iterator> Impls<'a, I> { } = 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()) } + let const_name = syn::Ident::new(&format!("{}{}", PREFIX_FOR, name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#const_name.as_bytes() } } else { quote!{ #prefix.as_bytes() } }; @@ -240,16 +244,16 @@ impl<'a, I: Iterator> Impls<'a, I> { } = 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()) } + let const_name = syn::Ident::new(&format!("{}{}", PREFIX_FOR, name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#const_name.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()) } + let const_name = syn::Ident::new(&format!("{}{}", HEAD_KEY_FOR, name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#const_name.as_bytes() } } else { let final_head_key = format!("head of {}", prefix); quote!{ #final_head_key.as_bytes() } diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index c2c7438673..af9c794270 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -462,10 +462,12 @@ fn decl_storage_items( .. } = instance_opts; + let build_prefix = |cratename, name| format!("{} {}", cratename, name); + // Build Instantiable trait if instance.is_some() { - let mut method_defs = TokenStream2::new(); - let mut method_impls = TokenStream2::new(); + let mut const_names = vec![]; + for sline in storage_lines.inner.iter() { let DeclStorageLine { storage_type, @@ -473,48 +475,36 @@ fn decl_storage_items( .. } = sline; + let prefix = build_prefix(cratename, name); + 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 - }) - } - }); + let const_name = syn::Ident::new(&format!("{}{}", impls::PREFIX_FOR, name.to_string()), proc_macro2::Span::call_site()); + let partial_const_value = prefix.clone(); + const_names.push((const_name, partial_const_value)); 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 - }) - } - }); + let const_name = syn::Ident::new(&format!("{}{}", impls::HEAD_KEY_FOR, name.to_string()), proc_macro2::Span::call_site()); + let partial_const_value = format!("head of {}", prefix); + const_names.push((const_name, partial_const_value)); } } - impls.extend(quote! { - pub trait #instantiable: 'static { - const INSTANCE_PREFIX: &'static str; - #method_defs + // Declare Instance trait + { + let mut const_impls = TokenStream2::new(); + for (const_name, _) in &const_names { + const_impls.extend(quote! { + const #const_name: &'static str; + }); } - }); + + impls.extend(quote! { + pub trait #instantiable: 'static { + #const_impls + } + }); + } let instances = (0..NUMBER_OF_INSTANCE) .map(|i| { @@ -524,15 +514,24 @@ fn decl_storage_items( }) .chain(default_instance.clone().map(|ident| (String::new(), ident))); + // Impl Instance trait for instances for (prefix, ident) in instances { + let mut const_impls = TokenStream2::new(); + + for (const_name, partial_const_value) in &const_names { + let const_value = format!("{}{}", partial_const_value, prefix); + const_impls.extend(quote! { + const #const_name: &'static str = #const_value; + }); + } + 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 + #const_impls } }); } @@ -563,7 +562,7 @@ fn decl_storage_items( type_infos, fielddefault: default_value.inner.as_ref().map(|d| &d.expr).map(|d| quote!( #d )) .unwrap_or_else(|| quote!{ Default::default() }), - prefix: format!("{} {}", cratename, name), + prefix: build_prefix(cratename, name), name, attrs, }; diff --git a/srml/support/src/lib.rs b/srml/support/src/lib.rs index 89b14fe2fc..7914e7d677 100644 --- a/srml/support/src/lib.rs +++ b/srml/support/src/lib.rs @@ -64,21 +64,6 @@ 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 ) => {{ -- GitLab From b9f54f7ef3e1d10fdcd8ac835d32cd483a48bed6 Mon Sep 17 00:00:00 2001 From: Robert Habermeier Date: Tue, 19 Mar 2019 18:13:23 +0100 Subject: [PATCH 048/120] remove aura inherent-checking compatibility shim (#2044) --- core/client/src/block_builder/api.rs | 43 +-------------------- core/consensus/aura/src/lib.rs | 57 ++-------------------------- 2 files changed, 4 insertions(+), 96 deletions(-) diff --git a/core/client/src/block_builder/api.rs b/core/client/src/block_builder/api.rs index 731f4c8632..8aad262777 100644 --- a/core/client/src/block_builder/api.rs +++ b/core/client/src/block_builder/api.rs @@ -16,46 +16,10 @@ //! The runtime api for building blocks. -use runtime_primitives::{traits::Block as BlockT, ApplyResult, RuntimeString}; +use runtime_primitives::{traits::Block as BlockT, ApplyResult}; use rstd::vec::Vec; use sr_api_macros::decl_runtime_apis; pub use inherents::{InherentData, CheckInherentsResult}; -use parity_codec::{Encode, Decode}; - -/// The old representation of the inherent data. -#[doc(hide)] -#[derive(Encode, Decode)] -pub struct OldInherentData { - /// Current timestamp. - pub timestamp: u64, - /// Blank report. - pub consensus: (), - /// Aura expected slot. Can take any value during block construction. - pub aura_expected_slot: u64, -} - -impl OldInherentData { - /// Create a new `BasicInherentData` instance. - pub fn new(timestamp: u64, expected_slot: u64) -> Self { - Self { - timestamp, - consensus: (), - aura_expected_slot: expected_slot, - } - } -} - -/// Error type used while checking inherents. -#[doc(hide)] -#[derive(Encode, PartialEq)] -#[cfg_attr(feature = "std", derive(Decode))] -pub enum OldCheckInherentError { - /// The inherents are generally valid but a delay until the given timestamp - /// is required. - ValidAtTimestamp(u64), - /// Some other error has occurred. - Other(RuntimeString), -} decl_runtime_apis! { /// The `BlockBuilder` api trait that provides required functions for building a block for a runtime. @@ -69,11 +33,6 @@ decl_runtime_apis! { fn inherent_extrinsics(inherent: InherentData) -> Vec<::Extrinsic>; /// Check that the inherents are valid. The inherent data will vary from chain to chain. fn check_inherents(block: Block, data: InherentData) -> CheckInherentsResult; - /// Check that the inherents are valid. The inherent data will vary from chain to chain. - /// - /// Old version that is used by the CC network. - #[changed_in(2)] - fn check_inherents(block: Block, data: OldInherentData) -> ::std::result::Result<(), OldCheckInherentError>; /// Generate a random seed. fn random_seed() -> ::Hash; } diff --git a/core/consensus/aura/src/lib.rs b/core/consensus/aura/src/lib.rs index 3990535401..064738216f 100644 --- a/core/consensus/aura/src/lib.rs +++ b/core/consensus/aura/src/lib.rs @@ -34,7 +34,7 @@ use consensus_common::{ }; use consensus_common::import_queue::{Verifier, BasicQueue, SharedBlockImport, SharedJustificationImport}; use client::ChainHead; -use client::block_builder::api::{BlockBuilder as BlockBuilderApi, self as block_builder_api}; +use client::block_builder::api::BlockBuilder as BlockBuilderApi; use client::runtime_api::ApiExt; use consensus_common::{ImportBlock, BlockOrigin}; use runtime_primitives::{generic, generic::BlockId, Justification}; @@ -497,51 +497,6 @@ impl AuraVerifier Ok(()) } } - - #[allow(deprecated)] - fn old_check_inherents( - &self, - block: B, - block_id: BlockId, - inherent_data: InherentData, - timestamp_now: u64, - ) -> Result<(), String> - where C: ProvideRuntimeApi, C::Api: BlockBuilderApi - { - use block_builder_api::{OldInherentData, OldCheckInherentError}; - const MAX_TIMESTAMP_DRIFT_SECS: u64 = 60; - - let (timestamp, slot) = AuraSlotCompatible::extract_timestamp_and_slot(&inherent_data).map_err(|e| format!("{:?}", e))?; - let inherent_data = OldInherentData::new(timestamp, slot); - - let inherent_res = self.client.runtime_api().check_inherents_before_version_2( - &block_id, - block, - inherent_data, - ).map_err(|e| format!("{:?}", e))?; - - match inherent_res { - Ok(()) => Ok(()), - Err(OldCheckInherentError::ValidAtTimestamp(timestamp)) => { - // halt import until timestamp is valid. - // reject when too far ahead. - if timestamp > timestamp_now + MAX_TIMESTAMP_DRIFT_SECS { - return Err("Rejecting block too far in future".into()); - } - - let diff = timestamp.saturating_sub(timestamp_now); - info!( - target: "aura", - "halting for block {} seconds in the future", - diff - ); - telemetry!(CONSENSUS_INFO; "aura.halting_for_future_block"; "diff" => ?diff); - thread::sleep(Duration::from_secs(diff)); - Ok(()) - }, - Err(OldCheckInherentError::Other(e)) => Err(e.into()) - } - } } /// No-op extra verification. @@ -596,18 +551,12 @@ impl Verifier for AuraVerifier where inherent_data.aura_replace_inherent_data(slot_num); let block = B::new(pre_header.clone(), inner_body); + // skip the inherents verification if the runtime API is old. if self.client .runtime_api() - .has_api_with::, _>(&BlockId::Hash(parent_hash), |v| v < 2) + .has_api_with::, _>(&BlockId::Hash(parent_hash), |v| v >= 2) .map_err(|e| format!("{:?}", e))? { - self.old_check_inherents( - block.clone(), - BlockId::Hash(parent_hash), - inherent_data, - timestamp_now, - )?; - } else { self.check_inherents( block.clone(), BlockId::Hash(parent_hash), -- GitLab From 32f064e2b09d8bb4d9b56fb6c563a9b03f07730d Mon Sep 17 00:00:00 2001 From: Stanislav Tkach Date: Tue, 19 Mar 2019 22:04:54 +0200 Subject: [PATCH 049/120] Replace the incorrect 'commit' keyword with 'rev' (#2026) --- Cargo.lock | 14 +++++++------- core/primitives/Cargo.toml | 2 +- subkey/Cargo.toml | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c45cdd8606..959d50cbb7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2776,8 +2776,8 @@ dependencies = [ [[package]] name = "schnorrkel" -version = "0.0.0" -source = "git+https://github.com/w3f/schnorrkel#d3289df76b8ae6dfb68e733204c5c009df5343a9" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3608,7 +3608,7 @@ dependencies = [ "hex 0.3.2 (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)", - "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", + "schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)", "substrate-primitives 0.1.0", "tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3645,11 +3645,11 @@ dependencies = [ [[package]] name = "substrate-bip39" version = "0.2.0" -source = "git+https://github.com/paritytech/substrate-bip39#a28806512c977992af8d6740d45352f5a1c832a0" +source = "git+https://github.com/paritytech/substrate-bip39#080da45923885cfec2379cef3dee4e7f43e6c260" dependencies = [ "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", + "schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -4024,7 +4024,7 @@ dependencies = [ "regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", + "schnorrkel 0.1.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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -5316,7 +5316,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" "checksum same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8f20c4be53a8a1ff4c1f1b2bd14570d2f634628709752f0702ecdd2b3f9a5267" "checksum schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56" -"checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" +"checksum schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a700659388785588c75b197cecda0f23c7112a9281ef703e8ffc651061ce014c" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum secp256k1 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfaccd3a23619349e0878d9a241f34b1982343cdf67367058cd7d078d326b63e" "checksum security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfab8dda0e7a327c696d893df9ffa19cadc4bd195797997f5223cf5831beaf05" diff --git a/core/primitives/Cargo.toml b/core/primitives/Cargo.toml index 31a0790b58..7de8d9d33a 100644 --- a/core/primitives/Cargo.toml +++ b/core/primitives/Cargo.toml @@ -22,7 +22,7 @@ untrusted = { version = "0.6", optional = true } hex-literal = { version = "0.1", optional = true } base58 = { version = "0.1", optional = true } blake2-rfc = { version = "0.2.18", optional = true } -schnorrkel = { git = "https://github.com/w3f/schnorrkel", optional = true, commit = "d3289df76b8ae6dfb68e733204c5c009df5343a9" } +schnorrkel = { version = "0.1", optional = true } rand = { version = "0.6", optional = true } sha2 = { version = "0.8", optional = true } substrate-bip39 = { git = "https://github.com/paritytech/substrate-bip39", optional = true } diff --git a/subkey/Cargo.toml b/subkey/Cargo.toml index 3a581e504a..984820a123 100644 --- a/subkey/Cargo.toml +++ b/subkey/Cargo.toml @@ -11,7 +11,7 @@ clap = { version = "~2.32", features = ["yaml"] } tiny-bip39 = "0.6.0" rustc-hex = "2.0" substrate-bip39 = { git = "https://github.com/paritytech/substrate-bip39" } -schnorrkel = { git = "https://github.com/w3f/schnorrkel", commit = "d3289df76b8ae6dfb68e733204c5c009df5343a9" } +schnorrkel = "0.1" hex = "0.3" [features] -- GitLab From eaa3e6d8a491f0709bd3d80c1a19683e1145bef4 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Wed, 20 Mar 2019 09:29:58 +0100 Subject: [PATCH 050/120] Start the handler init timer later (#2041) --- .../src/custom_proto/behaviour.rs | 12 ++-- .../src/custom_proto/handler.rs | 70 ++++++++++++++----- 2 files changed, 57 insertions(+), 25 deletions(-) diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index 473d2200ff..c8b931e4fb 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use crate::custom_proto::handler::{CustomProtoHandler, CustomProtoHandlerOut, CustomProtoHandlerIn}; +use crate::custom_proto::handler::{CustomProtoHandlerProto, CustomProtoHandlerOut, CustomProtoHandlerIn}; use crate::custom_proto::topology::NetTopology; use crate::custom_proto::upgrade::{CustomMessage, RegisteredProtocol}; use crate::{NetworkConfiguration, NonReservedPeerMode}; @@ -22,7 +22,7 @@ use crate::parse_str_addr; use fnv::{FnvHashMap, FnvHashSet}; use futures::prelude::*; use libp2p::core::swarm::{ConnectedPoint, NetworkBehaviour, NetworkBehaviourAction, PollParameters}; -use libp2p::core::{protocols_handler::ProtocolsHandler, Endpoint, Multiaddr, PeerId}; +use libp2p::core::{Endpoint, Multiaddr, PeerId}; use log::{debug, trace, warn}; use smallvec::SmallVec; use std::{cmp, error, io, marker::PhantomData, path::Path, time::Duration, time::Instant}; @@ -433,11 +433,11 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage, { - type ProtocolsHandler = CustomProtoHandler; + type ProtocolsHandler = CustomProtoHandlerProto; type OutEvent = CustomProtoOut; fn new_handler(&mut self) -> Self::ProtocolsHandler { - CustomProtoHandler::new(self.protocol.clone()) + CustomProtoHandlerProto::new(self.protocol.clone()) } fn addresses_of_peer(&mut self, peer_id: &PeerId) -> Vec { @@ -575,7 +575,7 @@ where fn inject_node_event( &mut self, source: PeerId, - event: ::OutEvent, + event: CustomProtoHandlerOut, ) { match event { CustomProtoHandlerOut::CustomProtocolClosed { result } => { @@ -639,7 +639,7 @@ where params: &mut PollParameters, ) -> Async< NetworkBehaviourAction< - ::InEvent, + CustomProtoHandlerIn, Self::OutEvent, >, > { diff --git a/core/network-libp2p/src/custom_proto/handler.rs b/core/network-libp2p/src/custom_proto/handler.rs index a9db9fcb99..1b3c51baba 100644 --- a/core/network-libp2p/src/custom_proto/handler.rs +++ b/core/network-libp2p/src/custom_proto/handler.rs @@ -18,23 +18,25 @@ use crate::custom_proto::upgrade::{CustomMessage, CustomMessageId, RegisteredPro use crate::custom_proto::upgrade::{RegisteredProtocolEvent, RegisteredProtocolSubstream}; use futures::prelude::*; use libp2p::core::{ - Endpoint, ProtocolsHandler, ProtocolsHandlerEvent, + PeerId, Endpoint, ProtocolsHandler, ProtocolsHandlerEvent, + protocols_handler::IntoProtocolsHandler, protocols_handler::KeepAlive, protocols_handler::ProtocolsHandlerUpgrErr, upgrade::{InboundUpgrade, OutboundUpgrade} }; use log::{debug, error, warn}; use smallvec::{smallvec, SmallVec}; -use std::{error, fmt, io, mem, time::Duration, time::Instant}; +use std::{error, fmt, io, marker::PhantomData, mem, time::Duration, time::Instant}; use tokio_io::{AsyncRead, AsyncWrite}; use tokio_timer::Delay; use void::Void; -/// Implements the `ProtocolsHandler` trait of libp2p. +/// Implements the `IntoProtocolsHandler` trait of libp2p. /// -/// Every time a connection with a remote is established, an instance of this struct is created and -/// sent to a background task dedicated to this connection. It handles all communications that are -/// specific to Substrate. +/// Every time a connection with a remote starts, an instance of this struct is created and +/// sent to a background task dedicated to this connection. Once the connection is established, +/// it is turned into a `CustomProtoHandler`. It then handles all communications that are specific +/// to Substrate on that connection. /// /// Note that there can be multiple instance of this struct simultaneously for same peer. However /// if that happens, only one main instance can communicate with the outer layers of the code. @@ -62,6 +64,49 @@ use void::Void; /// happens on one substream, we consider that we are disconnected. Re-enabling is performed by /// opening an outbound substream. /// +pub struct CustomProtoHandlerProto { + /// Configuration for the protocol upgrade to negotiate. + protocol: RegisteredProtocol, + + /// Marker to pin the generic type. + marker: PhantomData, +} + +impl CustomProtoHandlerProto +where + TSubstream: AsyncRead + AsyncWrite, + TMessage: CustomMessage, +{ + /// Builds a new `CustomProtoHandlerProto`. + pub fn new(protocol: RegisteredProtocol) -> Self { + CustomProtoHandlerProto { + protocol, + marker: PhantomData, + } + } +} + +impl IntoProtocolsHandler for CustomProtoHandlerProto +where + TSubstream: AsyncRead + AsyncWrite, + TMessage: CustomMessage, +{ + type Handler = CustomProtoHandler; + + fn into_handler(self, _: &PeerId) -> Self::Handler { + CustomProtoHandler { + protocol: self.protocol, + state: ProtocolState::Init { + substreams: SmallVec::new(), + init_deadline: Delay::new(Instant::now() + Duration::from_secs(5)) + }, + events_queue: SmallVec::new(), + warm_up_end: Instant::now() + Duration::from_secs(5), + } + } +} + +/// The actual handler once the connection has been established. pub struct CustomProtoHandler { /// Configuration for the protocol upgrade to negotiate. protocol: RegisteredProtocol, @@ -311,19 +356,6 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage, { - /// Builds a new `CustomProtoHandler`. - pub fn new(protocol: RegisteredProtocol) -> Self { - CustomProtoHandler { - protocol, - state: ProtocolState::Init { - substreams: SmallVec::new(), - init_deadline: Delay::new(Instant::now() + Duration::from_secs(5)) - }, - events_queue: SmallVec::new(), - warm_up_end: Instant::now() + Duration::from_secs(5), - } - } - /// Enables the handler. fn enable(&mut self, endpoint: Endpoint) { self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { -- GitLab From edab30015688e749f215956c8c33409a44f13cb7 Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Wed, 20 Mar 2019 13:52:53 +0100 Subject: [PATCH 051/120] Account for pending insertions when pruning (#2047) * Account for pending insertions when pruning * Comments --- core/state-db/src/pruning.rs | 78 +++++++++++++++++++++++++----------- 1 file changed, 54 insertions(+), 24 deletions(-) diff --git a/core/state-db/src/pruning.rs b/core/state-db/src/pruning.rs index c2e40abe41..078745c7a2 100644 --- a/core/state-db/src/pruning.rs +++ b/core/state-db/src/pruning.rs @@ -23,7 +23,6 @@ //! The changes are journaled in the DB. use std::collections::{HashMap, HashSet, VecDeque}; -use std::mem; use crate::codec::{Encode, Decode}; use crate::{CommitSet, Error, MetaDb, to_meta_key, Hash}; use log::{trace, warn}; @@ -33,10 +32,17 @@ const PRUNING_JOURNAL: &[u8] = b"pruning_journal"; /// See module documentation. pub struct RefWindow { + /// A queue of keys that should be deleted for each block in the pruning window. death_rows: VecDeque>, + /// An index that maps each key from `death_rows` to block number. death_index: HashMap, + /// Block number that corresponts to the front of `death_rows` pending_number: u64, - pending_records: Vec<(u64, JournalRecord)>, + /// Number of call of `note_canonical` after + /// last call `apply_pending` or `revert_pending` + pending_canonicalizations: usize, + /// Number of calls of `prune_one` after + /// last call `apply_pending` or `revert_pending` pending_prunings: usize, } @@ -71,7 +77,7 @@ impl RefWindow { death_rows: Default::default(), death_index: Default::default(), pending_number: pending_number, - pending_records: Default::default(), + pending_canonicalizations: 0, pending_prunings: 0, }; // read the journal @@ -114,7 +120,7 @@ impl RefWindow { } pub fn window_size(&self) -> u64 { - (self.death_rows.len() + self.pending_records.len() - self.pending_prunings) as u64 + (self.death_rows.len() - self.pending_prunings) as u64 } pub fn next_hash(&self) -> Option { @@ -130,8 +136,7 @@ impl RefWindow { } pub fn have_block(&self, hash: &BlockHash) -> bool { - self.death_rows.iter().skip(self.pending_prunings).any(|r| r.hash == *hash) || - self.pending_records.iter().any(|(_, record)| record.hash == *hash) + self.death_rows.iter().skip(self.pending_prunings).any(|r| r.hash == *hash) } /// Prune next block. Expects at least one block in the window. Adds changes to `commit`. @@ -143,13 +148,6 @@ impl RefWindow { commit.meta.inserted.push((to_meta_key(LAST_PRUNED, &()), index.encode())); commit.meta.deleted.push(pruned.journal_key.clone()); self.pending_prunings += 1; - } else if let Some((block, pruned)) = self.pending_records.get(self.pending_prunings - self.death_rows.len()) { - trace!(target: "state-db", "Pruning pending{:?} ({} deleted)", pruned.hash, pruned.deleted.len()); - commit.data.deleted.extend(pruned.deleted.iter().cloned()); - commit.meta.inserted.push((to_meta_key(LAST_PRUNED, &()), block.encode())); - let journal_key = to_journal_key(*block); - commit.meta.deleted.push(journal_key); - self.pending_prunings += 1; } else { warn!(target: "state-db", "Trying to prune when there's nothing to prune"); } @@ -165,21 +163,16 @@ impl RefWindow { inserted, deleted, }; - // Calculate pending block number taking pending canonicalizations into account, but not pending prunings - // as these are always applied last. - let block = self.pending_number + (self.death_rows.len() + self.pending_records.len()) as u64; + let block = self.pending_number + self.death_rows.len() as u64; let journal_key = to_journal_key(block); commit.meta.inserted.push((journal_key.clone(), journal_record.encode())); - self.pending_records.push((block, journal_record)); + self.import(&journal_record.hash, journal_key, journal_record.inserted.into_iter(), journal_record.deleted); + self.pending_canonicalizations += 1; } /// Apply all pending changes pub fn apply_pending(&mut self) { - for (block, journal_record) in mem::replace(&mut self.pending_records, Default::default()).into_iter() { - trace!(target: "state-db", "Applying pruning window record: {}: {:?}", block, journal_record.hash); - let journal_key = to_journal_key(block); - self.import(&journal_record.hash, journal_key, journal_record.inserted.into_iter(), journal_record.deleted); - } + self.pending_canonicalizations = 0; for _ in 0 .. self.pending_prunings { let pruned = self.death_rows.pop_front().expect("pending_prunings is always < death_rows.len()"); trace!(target: "state-db", "Applying pruning {:?} ({} deleted)", pruned.hash, pruned.deleted.len()); @@ -193,7 +186,14 @@ impl RefWindow { /// Revert all pending changes pub fn revert_pending(&mut self) { - self.pending_records.clear(); + // Revert pending deletions. + // Note that pending insertions might cause some existing deletions to be removed from `death_index` + // We don't bother to track and revert that for now. This means that a few nodes might end up no being + // deleted in case transaction fails and `revert_pending` is called. + self.death_rows.truncate(self.death_rows.len() - self.pending_canonicalizations); + let new_max_block = self.death_rows.len() as u64 + self.pending_number; + self.death_index.retain(|_, block| *block < new_max_block); + self.pending_canonicalizations = 0; self.pending_prunings = 0; } } @@ -231,7 +231,7 @@ mod tests { assert!(pruning.death_rows.is_empty()); assert!(pruning.death_index.is_empty()); assert!(pruning.pending_prunings == 0); - assert!(pruning.pending_records.is_empty()); + assert!(pruning.pending_canonicalizations == 0); } #[test] @@ -346,4 +346,34 @@ mod tests { pruning.apply_pending(); assert_eq!(pruning.pending_number, 3); } + + #[test] + fn reinserted_survivew_pending() { + let mut db = make_db(&[1, 2, 3]); + let mut pruning: RefWindow = RefWindow::new(&db).unwrap(); + let mut commit = make_commit(&[], &[2]); + pruning.note_canonical(&H256::random(), &mut commit); + db.commit(&commit); + let mut commit = make_commit(&[2], &[]); + pruning.note_canonical(&H256::random(), &mut commit); + db.commit(&commit); + let mut commit = make_commit(&[], &[2]); + pruning.note_canonical(&H256::random(), &mut commit); + db.commit(&commit); + assert!(db.data_eq(&make_db(&[1, 2, 3]))); + + let mut commit = CommitSet::default(); + pruning.prune_one(&mut commit); + db.commit(&commit); + assert!(db.data_eq(&make_db(&[1, 2, 3]))); + let mut commit = CommitSet::default(); + pruning.prune_one(&mut commit); + db.commit(&commit); + assert!(db.data_eq(&make_db(&[1, 2, 3]))); + pruning.prune_one(&mut commit); + db.commit(&commit); + assert!(db.data_eq(&make_db(&[1, 3]))); + pruning.apply_pending(); + assert_eq!(pruning.pending_number, 3); + } } -- GitLab From cc8f93c029698cf0d91ee6a10a65b3990fa38734 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Wed, 20 Mar 2019 14:07:28 +0100 Subject: [PATCH 052/120] Introduce safe types for handling imbalances (#2048) * Be a little safer with total issuance. * PairT instead of _Pair * Remove rev causing upset * Remove fees stuff. * Fix build (including tests) * Update runtime, bump version * Fix * Handle gas refunds properly. * Rename identifier ala #2025 * Address grumbles * New not-quite-linear-typing API * Slimmer API * More linear-type test fixes * Fix tests * Tidy * Fix some grumbles * Keep unchecked functions private * Remove another less-than-safe currency function and ensure that contracts module can never create cash. * Address a few grumbles and fix tests --- Cargo.lock | 21 - Cargo.toml | 1 - core/keyring/src/ed25519.rs | 4 +- core/keyring/src/sr25519.rs | 4 +- core/keystore/src/lib.rs | 2 +- core/primitives/src/ed25519.rs | 2 +- core/primitives/src/sr25519.rs | 2 +- core/sr-primitives/src/lib.rs | 21 +- core/test-runtime/src/system.rs | 2 +- core/test-runtime/wasm/Cargo.lock | 20 +- .../substrate_test_runtime.compact.wasm | Bin 56646 -> 56614 bytes node-template/runtime/Cargo.toml | 2 - node-template/runtime/src/lib.rs | 10 +- node-template/runtime/wasm/Cargo.lock | 37 +- node-template/src/chain_spec.rs | 8 +- node-template/src/service.rs | 2 +- node/cli/src/chain_spec.rs | 14 +- node/cli/src/service.rs | 2 +- node/executor/Cargo.toml | 1 - node/executor/src/lib.rs | 46 +- node/primitives/src/lib.rs | 4 +- node/runtime/Cargo.toml | 2 - node/runtime/src/lib.rs | 22 +- node/runtime/wasm/Cargo.lock | 38 +- .../release/node_runtime.compact.wasm | Bin 892427 -> 900932 bytes srml/balances/src/lib.rs | 548 ++++++++++++------ srml/balances/src/mock.rs | 26 +- srml/balances/src/tests.rs | 195 +++---- srml/contract/Cargo.toml | 2 - srml/contract/src/account_db.rs | 21 +- srml/contract/src/exec.rs | 4 +- srml/contract/src/gas.rs | 43 +- srml/contract/src/lib.rs | 32 +- srml/contract/src/tests.rs | 45 +- srml/council/src/lib.rs | 7 + srml/council/src/seats.rs | 24 +- srml/democracy/src/lib.rs | 11 +- srml/example/src/lib.rs | 3 + srml/executive/Cargo.toml | 1 - srml/executive/src/lib.rs | 32 +- srml/fees/Cargo.toml | 31 - srml/fees/src/lib.rs | 117 ---- srml/fees/src/mock.rs | 115 ---- srml/fees/src/tests.rs | 174 ------ srml/staking/src/lib.rs | 52 +- srml/staking/src/mock.rs | 7 + srml/staking/src/tests.rs | 54 +- srml/support/src/traits.rs | 326 ++++++++--- srml/treasury/src/lib.rs | 29 +- 49 files changed, 1087 insertions(+), 1079 deletions(-) delete mode 100644 srml/fees/Cargo.toml delete mode 100644 srml/fees/src/lib.rs delete mode 100644 srml/fees/src/mock.rs delete mode 100644 srml/fees/src/tests.rs diff --git a/Cargo.lock b/Cargo.lock index 959d50cbb7..2301ef9100 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1908,7 +1908,6 @@ dependencies = [ "srml-balances 0.1.0", "srml-consensus 0.1.0", "srml-contract 0.1.0", - "srml-fees 0.1.0", "srml-grandpa 0.1.0", "srml-indices 0.1.0", "srml-session 0.1.0", @@ -1962,7 +1961,6 @@ dependencies = [ "srml-council 0.1.0", "srml-democracy 0.1.0", "srml-executive 0.1.0", - "srml-fees 0.1.0", "srml-finality-tracker 0.1.0", "srml-grandpa 0.1.0", "srml-indices 0.1.0", @@ -2025,7 +2023,6 @@ dependencies = [ "srml-balances 0.1.0", "srml-consensus 0.1.0", "srml-executive 0.1.0", - "srml-fees 0.1.0", "srml-indices 0.1.0", "srml-sudo 0.1.0", "srml-support 0.1.0", @@ -3154,7 +3151,6 @@ dependencies = [ "sr-std 0.1.0", "srml-balances 0.1.0", "srml-consensus 0.1.0", - "srml-fees 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "srml-timestamp 0.1.0", @@ -3226,29 +3222,12 @@ dependencies = [ "sr-primitives 0.1.0", "sr-std 0.1.0", "srml-balances 0.1.0", - "srml-fees 0.1.0", "srml-indices 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "substrate-primitives 0.1.0", ] -[[package]] -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.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", - "sr-primitives 0.1.0", - "sr-std 0.1.0", - "srml-support 0.1.0", - "srml-system 0.1.0", - "substrate-primitives 0.1.0", -] - [[package]] name = "srml-finality-tracker" version = "0.1.0" diff --git a/Cargo.toml b/Cargo.toml index 826dc3f1fb..4366458832 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -67,7 +67,6 @@ members = [ "srml/democracy", "srml/example", "srml/executive", - "srml/fees", "srml/finality-tracker", "srml/grandpa", "srml/indices", diff --git a/core/keyring/src/ed25519.rs b/core/keyring/src/ed25519.rs index c414e4bf43..f36d8fd485 100644 --- a/core/keyring/src/ed25519.rs +++ b/core/keyring/src/ed25519.rs @@ -18,7 +18,7 @@ use std::{collections::HashMap, ops::Deref}; use lazy_static::lazy_static; -use substrate_primitives::{ed25519::{Pair, Public, Signature}, Pair as _Pair, H256}; +use substrate_primitives::{ed25519::{Pair, Public, Signature}, Pair as PairT, H256}; pub use substrate_primitives::ed25519; /// Set of test accounts. @@ -162,7 +162,7 @@ impl Deref for Keyring { #[cfg(test)] mod tests { use super::*; - use substrate_primitives::{ed25519::Pair, Pair as _Pair}; + use substrate_primitives::{ed25519::Pair, Pair as PairT}; #[test] fn should_work() { diff --git a/core/keyring/src/sr25519.rs b/core/keyring/src/sr25519.rs index 17404ad1c6..1d3342d86d 100644 --- a/core/keyring/src/sr25519.rs +++ b/core/keyring/src/sr25519.rs @@ -19,7 +19,7 @@ use std::collections::HashMap; use std::ops::Deref; use lazy_static::lazy_static; -use substrate_primitives::{sr25519::{Pair, Public, Signature}, Pair as _Pair, H256}; +use substrate_primitives::{sr25519::{Pair, Public, Signature}, Pair as PairT, H256}; pub use substrate_primitives::sr25519; /// Set of test accounts. @@ -167,7 +167,7 @@ impl Deref for Keyring { #[cfg(test)] mod tests { use super::*; - use substrate_primitives::{sr25519::Pair, Pair as _Pair}; + use substrate_primitives::{sr25519::Pair, Pair as PairT}; #[test] fn should_work() { diff --git a/core/keystore/src/lib.rs b/core/keystore/src/lib.rs index f0ab573cd6..59c1a65cfb 100644 --- a/core/keystore/src/lib.rs +++ b/core/keystore/src/lib.rs @@ -28,7 +28,7 @@ use std::io::{self, Write}; use error_chain::{bail, error_chain, error_chain_processing, impl_error_chain_processed, impl_extract_backtrace, impl_error_chain_kind}; -use substrate_primitives::{ed25519::{Pair, Public}, Pair as _Pair}; +use substrate_primitives::{ed25519::{Pair, Public}, Pair as PairT}; pub use crypto::KEY_ITERATIONS; diff --git a/core/primitives/src/ed25519.rs b/core/primitives/src/ed25519.rs index 586a6fe13c..8b55300df4 100644 --- a/core/primitives/src/ed25519.rs +++ b/core/primitives/src/ed25519.rs @@ -523,7 +523,7 @@ impl Pair { mod test { use super::*; use hex_literal::{hex, hex_impl}; - use crate::{Pair as _Pair, crypto::DEV_PHRASE}; + use crate::{Pair as PairT, crypto::DEV_PHRASE}; #[test] fn default_phrase_should_be_used() { diff --git a/core/primitives/src/sr25519.rs b/core/primitives/src/sr25519.rs index f6e135ebef..ee1727b79a 100644 --- a/core/primitives/src/sr25519.rs +++ b/core/primitives/src/sr25519.rs @@ -501,7 +501,7 @@ impl Pair { #[cfg(test)] mod test { use super::*; - use crate::{Pair as _Pair, crypto::{Ss58Codec, DEV_PHRASE, DEV_ADDRESS}}; + use crate::{Pair as PairT, crypto::{Ss58Codec, DEV_PHRASE, DEV_ADDRESS}}; use hex_literal::{hex, hex_impl}; #[test] diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index 6df4bdeb78..efaf4146fc 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -30,7 +30,7 @@ pub use serde_derive; pub use runtime_io::{StorageOverlay, ChildrenStorageOverlay}; use rstd::prelude::*; -use substrate_primitives::{ed25519, sr25519, hash::{H256, H512}}; +use substrate_primitives::{ed25519, sr25519, hash::H512}; use codec::{Encode, Decode}; #[cfg(feature = "std")] @@ -379,16 +379,17 @@ impl Verify for MultiSignature { #[cfg_attr(feature = "std", derive(Debug, Serialize, Deserialize))] pub struct AnySignature(H512); -/// Public key for any known crypto algorithm. -#[derive(Eq, PartialEq, Ord, PartialOrd, Clone, Default, Encode, Decode)] -#[cfg_attr(feature = "std", derive(Debug, Serialize, Deserialize))] -pub struct AnySigner(H256); - impl Verify for AnySignature { - type Signer = AnySigner; - fn verify>(&self, mut msg: L, signer: &AnySigner) -> bool { - runtime_io::sr25519_verify(self.0.as_fixed_bytes(), msg.get(), &signer.0.as_bytes()) || - runtime_io::ed25519_verify(self.0.as_fixed_bytes(), msg.get(), &signer.0.as_bytes()) + type Signer = sr25519::Public; + fn verify>(&self, mut msg: L, signer: &sr25519::Public) -> bool { + runtime_io::sr25519_verify(self.0.as_fixed_bytes(), msg.get(), &signer.0) || + runtime_io::ed25519_verify(self.0.as_fixed_bytes(), msg.get(), &signer.0) + } +} + +impl From for AnySignature { + fn from(s: sr25519::Signature) -> AnySignature { + AnySignature(s.0.into()) } } diff --git a/core/test-runtime/src/system.rs b/core/test-runtime/src/system.rs index 7c76fdd72b..d48fd153da 100644 --- a/core/test-runtime/src/system.rs +++ b/core/test-runtime/src/system.rs @@ -305,7 +305,7 @@ mod tests { use runtime_io::{with_externalities, twox_128, TestExternalities}; use parity_codec::{Joiner, KeyedVec}; use substrate_test_client::{AuthorityKeyring, AccountKeyring}; - use crate::{Header, Extrinsic, Transfer}; + use crate::{Header, Transfer}; use primitives::{Blake2Hasher, map}; use primitives::storage::well_known_keys; use substrate_executor::WasmExecutor; diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index 970620522b..863fe747ab 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -1227,6 +1227,23 @@ dependencies = [ "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "schnorrkel" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", + "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "scopeguard" version = "0.3.3" @@ -1672,7 +1689,7 @@ dependencies = [ "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", + "schnorrkel 0.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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2334,6 +2351,7 @@ dependencies = [ "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" +"checksum schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a700659388785588c75b197cecda0f23c7112a9281ef703e8ffc651061ce014c" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 6c7778e9ff926d4bcfd99ff14bf3c78ec0d1963c..c4df3f06b5bb1e46508ff2c11a5c39a9738d6838 100644 GIT binary patch delta 4799 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 Yv~OWkP=_Q@5ml9i)%1E!g#Ri35BxVA$N&HU delta 4863 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 diff --git a/node-template/runtime/Cargo.toml b/node-template/runtime/Cargo.toml index d6cb7ea7f2..8155865730 100644 --- a/node-template/runtime/Cargo.toml +++ b/node-template/runtime/Cargo.toml @@ -15,7 +15,6 @@ version = { package = "sr-version", path = "../../core/sr-version", default_feat support = { package = "srml-support", path = "../../srml/support", default_features = false } primitives = { package = "substrate-primitives", path = "../../core/primitives", default_features = false } balances = { package = "srml-balances", path = "../../srml/balances", default_features = false } -fees = { package = "srml-fees", path = "../../srml/fees", default_features = false } consensus = { package = "srml-consensus", path = "../../srml/consensus", default_features = false } aura = { package = "srml-aura", path = "../../srml/aura", default_features = false } executive = { package = "srml-executive", path = "../../srml/executive", default_features = false } @@ -37,7 +36,6 @@ std = [ "runtime-io/std", "support/std", "balances/std", - "fees/std", "executive/std", "aura/std", "indices/std", diff --git a/node-template/runtime/src/lib.rs b/node-template/runtime/src/lib.rs index f46f8df249..888a9b0dc4 100644 --- a/node-template/runtime/src/lib.rs +++ b/node-template/runtime/src/lib.rs @@ -169,11 +169,10 @@ impl balances::Trait for Runtime { type OnNewAccount = Indices; /// The uniquitous event type. type Event = Event; -} -impl fees::Trait for Runtime { - type TransferAsset = Balances; - type Event = Event; + type TransactionPayment = (); + type DustRemoval = (); + type TransferPayment = (); } impl sudo::Trait for Runtime { @@ -200,7 +199,6 @@ construct_runtime!( Indices: indices, Balances: balances, Sudo: sudo, - Fees: fees::{Module, Storage, Config, Event}, // Used for the module template in `./template.rs` TemplateModule: template::{Module, Call, Storage, Event}, } @@ -221,7 +219,7 @@ pub type UncheckedExtrinsic = generic::UncheckedMortalCompactExtrinsic; /// Executive: handles dispatch to the various modules. -pub type Executive = executive::Executive; +pub type Executive = executive::Executive; // Implement our runtime API endpoints. This is just a bunch of proxying. impl_runtime_apis! { diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index 07c52b00a7..48c9801535 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -783,7 +783,6 @@ dependencies = [ "srml-balances 0.1.0", "srml-consensus 0.1.0", "srml-executive 0.1.0", - "srml-fees 0.1.0", "srml-indices 0.1.0", "srml-sudo 0.1.0", "srml-support 0.1.0", @@ -1261,6 +1260,23 @@ dependencies = [ "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "schnorrkel" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", + "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "scopeguard" version = "0.3.3" @@ -1518,22 +1534,6 @@ dependencies = [ "srml-system 0.1.0", ] -[[package]] -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.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", - "sr-primitives 0.1.0", - "sr-std 0.1.0", - "srml-support 0.1.0", - "srml-system 0.1.0", - "substrate-primitives 0.1.0", -] - [[package]] name = "srml-indices" version = "0.1.0" @@ -1853,7 +1853,7 @@ dependencies = [ "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", + "schnorrkel 0.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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2485,6 +2485,7 @@ dependencies = [ "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" +"checksum schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a700659388785588c75b197cecda0f23c7112a9281ef703e8ffc651061ce014c" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" diff --git a/node-template/src/chain_spec.rs b/node-template/src/chain_spec.rs index 780d33be65..a81ca5fd84 100644 --- a/node-template/src/chain_spec.rs +++ b/node-template/src/chain_spec.rs @@ -1,7 +1,7 @@ use primitives::{ed25519, Pair}; use node_template_runtime::{ AccountId, GenesisConfig, ConsensusConfig, TimestampConfig, BalancesConfig, - SudoConfig, IndicesConfig, FeesConfig, + SudoConfig, IndicesConfig, }; use substrate_service; @@ -104,6 +104,8 @@ fn testnet_genesis(initial_authorities: Vec, endowed_accounts: Vec< ids: endowed_accounts.clone(), }), balances: Some(BalancesConfig { + transaction_base_fee: 1, + transaction_byte_fee: 0, existential_deposit: 500, transfer_fee: 0, creation_fee: 0, @@ -113,9 +115,5 @@ fn testnet_genesis(initial_authorities: Vec, endowed_accounts: Vec< sudo: Some(SudoConfig { key: root_key, }), - fees: Some(FeesConfig { - transaction_base_fee: 1, - transaction_byte_fee: 0, - }) } } diff --git a/node-template/src/service.rs b/node-template/src/service.rs index 1bb97256ae..cffc30217b 100644 --- a/node-template/src/service.rs +++ b/node-template/src/service.rs @@ -15,7 +15,7 @@ use basic_authorship::ProposerFactory; use node_executor; use consensus::{import_queue, start_aura, AuraImportQueue, SlotDuration, NothingExtra}; use substrate_client as client; -use primitives::{ed25519::Pair, Pair as _Pair}; +use primitives::{ed25519::Pair, Pair as PairT}; use inherents::InherentDataProviders; use network::construct_simple_protocol; use substrate_executor::native_executor_instance; diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index 53980de033..927e5595d1 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -20,7 +20,7 @@ use primitives::{ed25519::Public as AuthorityId, ed25519, sr25519, Pair, crypto: use node_primitives::AccountId; use node_runtime::{ConsensusConfig, CouncilSeatsConfig, CouncilVotingConfig, DemocracyConfig, SessionConfig, StakingConfig, StakerStatus, TimestampConfig, BalancesConfig, TreasuryConfig, - SudoConfig, ContractConfig, GrandpaConfig, IndicesConfig, FeesConfig, Permill, Perbill}; + SudoConfig, ContractConfig, GrandpaConfig, IndicesConfig, Permill, Perbill}; pub use node_runtime::GenesisConfig; use substrate_service; use hex_literal::{hex, hex_impl}; @@ -82,6 +82,8 @@ fn staging_testnet_config_genesis() -> GenesisConfig { }), system: None, balances: Some(BalancesConfig { + transaction_base_fee: 1 * CENTS, + transaction_byte_fee: 10 * MILLICENTS, balances: endowed_accounts.iter().cloned() .map(|k| (k, ENDOWMENT)) .chain(initial_authorities.iter().map(|x| (x.0.clone(), STASH))) @@ -163,10 +165,6 @@ fn staging_testnet_config_genesis() -> GenesisConfig { grandpa: Some(GrandpaConfig { authorities: initial_authorities.iter().map(|x| (x.2.clone(), 1)).collect(), }), - fees: Some(FeesConfig { - transaction_base_fee: 1 * CENTS, - transaction_byte_fee: 10 * MILLICENTS, - }), } } @@ -244,6 +242,8 @@ pub fn testnet_genesis( ids: endowed_accounts.clone(), }), balances: Some(BalancesConfig { + transaction_base_fee: 1, + transaction_byte_fee: 0, existential_deposit: 500, transfer_fee: 0, creation_fee: 0, @@ -319,10 +319,6 @@ pub fn testnet_genesis( grandpa: Some(GrandpaConfig { authorities: initial_authorities.iter().map(|x| (x.2.clone(), 1)).collect(), }), - fees: Some(FeesConfig { - transaction_base_fee: 1, - transaction_byte_fee: 0, - }), } } diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index dd03b25bb9..e2c1c67236 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -25,7 +25,7 @@ use client; use consensus::{import_queue, start_aura, AuraImportQueue, SlotDuration, NothingExtra}; use grandpa; use node_executor; -use primitives::{Pair as _Pair, ed25519::Pair}; +use primitives::{Pair as PairT, ed25519::Pair}; use node_primitives::Block; use node_runtime::{GenesisConfig, RuntimeApi}; use substrate_service::{ diff --git a/node/executor/Cargo.toml b/node/executor/Cargo.toml index 3e0f618bc7..572aa9dbcf 100644 --- a/node/executor/Cargo.toml +++ b/node/executor/Cargo.toml @@ -30,7 +30,6 @@ treasury = { package = "srml-treasury", path = "../../srml/treasury" } contract = { package = "srml-contract", path = "../../srml/contract" } grandpa = { package = "srml-grandpa", path = "../../srml/grandpa" } indices = { package = "srml-indices", path = "../../srml/indices" } -fees = { package = "srml-fees", path = "../../srml/fees" } wabt = "~0.7.4" [features] diff --git a/node/executor/src/lib.rs b/node/executor/src/lib.rs index 84b2de336e..1a96b8067f 100644 --- a/node/executor/src/lib.rs +++ b/node/executor/src/lib.rs @@ -31,7 +31,7 @@ mod tests { use super::Executor; use substrate_executor::{WasmExecutor, NativeExecutionDispatch}; use parity_codec::{Encode, Decode, Joiner}; - use keyring::{AccountKeyring, AuthorityKeyring}; + use keyring::{AuthorityKeyring, AccountKeyring}; use runtime_support::{Hashable, StorageValue, StorageMap, traits::Currency}; use state_machine::{CodeExecutor, Externalities, TestExternalities}; use primitives::{twox_128, Blake2Hasher, ChangesTrieConfiguration, NeverNativeValue, @@ -44,7 +44,7 @@ mod tests { use system::{EventRecord, Phase}; use node_runtime::{Header, Block, UncheckedExtrinsic, CheckedExtrinsic, Call, Runtime, Balances, BuildStorage, GenesisConfig, BalancesConfig, SessionConfig, StakingConfig, System, - SystemConfig, GrandpaConfig, IndicesConfig, FeesConfig, Event, Log}; + SystemConfig, GrandpaConfig, IndicesConfig, Event, Log}; use wabt; use primitives::map; @@ -126,8 +126,8 @@ mod tests { twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(&>::key_for(0)).to_vec() => vec![0u8; 32], - twox_128(>::key()).to_vec() => vec![70u8; 16], - twox_128(>::key()).to_vec() => vec![0u8; 16] + twox_128(>::key()).to_vec() => vec![70u8; 16], + twox_128(>::key()).to_vec() => vec![0u8; 16] ]); let r = executor().call::<_, NeverNativeValue, fn() -> _>( @@ -159,8 +159,8 @@ mod tests { twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(&>::key_for(0)).to_vec() => vec![0u8; 32], - twox_128(>::key()).to_vec() => vec![70u8; 16], - twox_128(>::key()).to_vec() => vec![0u8; 16] + twox_128(>::key()).to_vec() => vec![70u8; 16], + twox_128(>::key()).to_vec() => vec![0u8; 16] ]); let r = executor().call::<_, NeverNativeValue, fn() -> _>( @@ -192,8 +192,8 @@ mod tests { twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(&>::key_for(0)).to_vec() => vec![0u8; 32], - twox_128(>::key()).to_vec() => vec![0u8; 16], - twox_128(>::key()).to_vec() => vec![0u8; 16] + twox_128(>::key()).to_vec() => vec![0u8; 16], + twox_128(>::key()).to_vec() => vec![0u8; 16] ]); let r = executor().call::<_, NeverNativeValue, fn() -> _>( @@ -229,8 +229,8 @@ mod tests { twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(&>::key_for(0)).to_vec() => vec![0u8; 32], - twox_128(>::key()).to_vec() => vec![0u8; 16], - twox_128(>::key()).to_vec() => vec![0u8; 16] + twox_128(>::key()).to_vec() => vec![0u8; 16], + twox_128(>::key()).to_vec() => vec![0u8; 16] ]); let r = executor().call::<_, NeverNativeValue, fn() -> _>( @@ -271,6 +271,8 @@ mod tests { ids: vec![alice(), bob(), charlie(), dave(), eve(), ferdie()], }), balances: Some(BalancesConfig { + transaction_base_fee: 1, + transaction_byte_fee: 0, balances: vec![ (alice(), 111), (bob(), 100), @@ -321,10 +323,6 @@ mod tests { grandpa: Some(GrandpaConfig { authorities: vec![], }), - fees: Some(FeesConfig { - transaction_base_fee: 1, - transaction_byte_fee: 0, - }), }.build_storage().unwrap().0) } @@ -524,10 +522,6 @@ mod tests { phase: Phase::Finalization, event: Event::treasury(treasury::RawEvent::Rollover(0)) }, - EventRecord { - phase: Phase::Finalization, - event: Event::fees(fees::RawEvent::Charged(1, 1)) - } ]); }); @@ -604,14 +598,6 @@ mod tests { phase: Phase::Finalization, event: Event::treasury(treasury::RawEvent::Rollover(0)) }, - EventRecord { - phase: Phase::Finalization, - event: Event::fees(fees::RawEvent::Charged(1, 1)) - }, - EventRecord { - phase: Phase::Finalization, - event: Event::fees(fees::RawEvent::Charged(2, 1)) - } ]); }); } @@ -832,8 +818,8 @@ mod tests { twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(&>::key_for(0)).to_vec() => vec![0u8; 32], - twox_128(>::key()).to_vec() => vec![70u8; 16], - twox_128(>::key()).to_vec() => vec![0u8; 16] + twox_128(>::key()).to_vec() => vec![70u8; 16], + twox_128(>::key()).to_vec() => vec![0u8; 16] ]); let r = WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "Core_initialise_block", &vec![].and(&from_block_number(1u64))); @@ -854,8 +840,8 @@ mod tests { twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(>::key()).to_vec() => vec![0u8; 16], twox_128(&>::key_for(0)).to_vec() => vec![0u8; 32], - twox_128(>::key()).to_vec() => vec![0u8; 16], - twox_128(>::key()).to_vec() => vec![0u8; 16] + twox_128(>::key()).to_vec() => vec![0u8; 16], + twox_128(>::key()).to_vec() => vec![0u8; 16] ]); let r = WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "Core_initialise_block", &vec![].and(&from_block_number(1u64))); diff --git a/node/primitives/src/lib.rs b/node/primitives/src/lib.rs index 8c23e5d32b..0d8906c47d 100644 --- a/node/primitives/src/lib.rs +++ b/node/primitives/src/lib.rs @@ -22,14 +22,14 @@ #![cfg_attr(not(feature = "std"), feature(alloc))] use runtime_primitives::{ - generic, traits::{Verify, BlakeTwo256}, OpaqueExtrinsic + generic, traits::{Verify, BlakeTwo256}, OpaqueExtrinsic, AnySignature }; /// An index to a block. pub type BlockNumber = u64; /// Alias to 512-bit hash when used in the context of a transaction signature on the chain. -pub type Signature = primitives::sr25519::Signature; +pub type Signature = AnySignature; /// Some way of identifying an account on the chain. We intentionally make it equivalent /// to the public key of our transaction signing scheme. diff --git a/node/runtime/Cargo.toml b/node/runtime/Cargo.toml index 6387fbe5b3..f72a525846 100644 --- a/node/runtime/Cargo.toml +++ b/node/runtime/Cargo.toml @@ -30,7 +30,6 @@ system = { package = "srml-system", path = "../../srml/system", default-features timestamp = { package = "srml-timestamp", path = "../../srml/timestamp", default-features = false } treasury = { package = "srml-treasury", path = "../../srml/treasury", default-features = false } sudo = { package = "srml-sudo", path = "../../srml/sudo", default-features = false } -fees = { package = "srml-fees", path = "../../srml/fees", default-features = false } node-primitives = { path = "../primitives", default-features = false } consensus_aura = { package = "substrate-consensus-aura-primitives", path = "../../core/consensus/aura/primitives", default-features = false } rustc-hex = { version = "2.0", optional = true } @@ -60,7 +59,6 @@ std = [ "timestamp/std", "treasury/std", "sudo/std", - "fees/std", "version/std", "node-primitives/std", "serde", diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index a54d14dea8..6ef50ef61f 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 37, - impl_version: 41, + spec_version: 38, + impl_version: 38, apis: RUNTIME_API_VERSIONS, }; @@ -102,11 +102,9 @@ impl balances::Trait for Runtime { type OnFreeBalanceZero = ((Staking, Contract), Session); type OnNewAccount = Indices; type Event = Event; -} - -impl fees::Trait for Runtime { - type Event = Event; - type TransferAsset = Balances; + type TransactionPayment = (); + type DustRemoval = (); + type TransferPayment = (); } impl consensus::Trait for Runtime { @@ -133,6 +131,8 @@ impl staking::Trait for Runtime { type Currency = balances::Module; type OnRewardMinted = Treasury; type Event = Event; + type Slash = (); + type Reward = (); } impl democracy::Trait for Runtime { @@ -143,6 +143,8 @@ impl democracy::Trait for Runtime { impl council::Trait for Runtime { type Event = Event; + type BadPresentation = (); + type BadReaper = (); } impl council::voting::Trait for Runtime { @@ -160,6 +162,8 @@ impl treasury::Trait for Runtime { type ApproveOrigin = council_motions::EnsureMembers<_4>; type RejectOrigin = council_motions::EnsureMembers<_2>; type Event = Event; + type MintedForSpending = (); + type ProposalRejection = (); } impl contract::Trait for Runtime { @@ -168,6 +172,7 @@ impl contract::Trait for Runtime { type Gas = u64; type DetermineContractAddress = contract::SimpleAddressDeterminator; type ComputeDispatchFee = contract::DefaultDispatchFeeComputor; + type GasPayment = (); } impl sudo::Trait for Runtime { @@ -209,7 +214,6 @@ construct_runtime!( Treasury: treasury, Contract: contract::{Module, Call, Storage, Config, Event}, Sudo: sudo, - Fees: fees::{Module, Storage, Config, Event}, } ); @@ -228,7 +232,7 @@ pub type UncheckedExtrinsic = generic::UncheckedMortalCompactExtrinsic; /// Executive: handles dispatch to the various modules. -pub type Executive = executive::Executive, Fees, AllModules>; +pub type Executive = executive::Executive, Balances, AllModules>; impl_runtime_apis! { impl client_api::Core for Runtime { diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 16b34a083b..570d1cb16c 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -801,7 +801,6 @@ dependencies = [ "srml-council 0.1.0", "srml-democracy 0.1.0", "srml-executive 0.1.0", - "srml-fees 0.1.0", "srml-finality-tracker 0.1.0", "srml-grandpa 0.1.0", "srml-indices 0.1.0", @@ -1295,6 +1294,23 @@ dependencies = [ "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "schnorrkel" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", + "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "scopeguard" version = "0.3.3" @@ -1563,7 +1579,6 @@ dependencies = [ "sr-sandbox 0.1.0", "sr-std 0.1.0", "srml-balances 0.1.0", - "srml-fees 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "srml-timestamp 0.1.0", @@ -1616,22 +1631,6 @@ dependencies = [ "srml-system 0.1.0", ] -[[package]] -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.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", - "sr-primitives 0.1.0", - "sr-std 0.1.0", - "srml-support 0.1.0", - "srml-system 0.1.0", - "substrate-primitives 0.1.0", -] - [[package]] name = "srml-finality-tracker" version = "0.1.0" @@ -2010,7 +2009,7 @@ dependencies = [ "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", "rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)", + "schnorrkel 0.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)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2643,6 +2642,7 @@ dependencies = [ "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" +"checksum schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a700659388785588c75b197cecda0f23c7112a9281ef703e8ffc651061ce014c" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index e41cd76b9c322855f2f771b84357998f867410ad..22b953faab7d9a741ca31373208ea792a66918f2 100644 GIT binary patch literal 900932 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 LhKc`+r{G57$@N;U|@8|r%x++}_s{LzfDD3C_ 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≀r?!DOsH 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 _!?0&Dn|7Z=Wj|!^jnn3mOw%PZ`DwH_JhxH6~ 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

7%-jxC4_hv^iYHpOjsvdw+oo8sK`SNns#W|U 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�|9hX~TK<-+;?3*N$;1gR{K5@)(0|xdz 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

DFETe4fr+ZibJ zWx;Grq8CHIZ6K_}08GE(|Njxh`gCDSQiuPLKNyQ*jGQB2avQ($PWh|Cjw$*Sb--x1 z)E=yp9d4s<$Uqp%WR)~D1&w(5!#0N!r5;+W;APbRx^mvwNDfI-P?L zX%{C3;uan@se{%nR&WM0pu4?ufr4O+8?#xbQ1t1Cs1fDCPT8<^Z3%lIkUzv!#0|JC zMNx2$32Xa}MJNik4+>a*q5wwb>W5wmxCriN%{mO@orkP z#6?KaBm~RLIE`x4;Fj3v227~i)lJ-{;{|MIFAD1UCqR`!nhdE*F;9kwLb3L;H)Em< zoAHSC!UDsy&yYhyNr)@^6qmUrO3?NZofWSju03yw*TKFbIHCXaEWZLlJN_bH7q699 zE4Pcj%6|!SDF2D1ciC|7LafxV*SHnbv0xEV55r)LHf?J^Yl=P_hY@)wcoe1wR3hC88bM?x3jG?X0Wbc29#MH)47Sm0uD@0(Xirx!4giF;{H)ZU4Hi{E}-8xrujL8>h2v1@wvuv`uMPa>Iat6{3mI zXta6>n9N7;01*r>0AVGlYeUYv%tnI(&Ibo53Ufz)442%gZ)Yx?7S zPH5&e{pB+=-yY2T1S*f=0DvfzhW1e?4TYivlUQt{X~?z>$(3^L;Sguk1|s;kw$e(A z`j^SS0YYi$Eg&r_zCXz}lOlK5byI5oDo67lwc08FgqeA+a_&Qxb8IqhIsrS1@QVC( z^Pk#HfFYKv*1t8%XTxTP%h|HmrNEVE+B)mKE<3Ao>#X-WB85#NCW^EFvy=cAL3%8KO)Xx7UHJm)M21*AawydG4^v%u_+MH}%-g0(5VfSGZfE^b5wj1LixQw-7E(AANsOSDjq0v*<{ zOE_FARPk&fl{w;~jK%YZ9M^?~DsvNnTde-2e{i%i`!8+)i68nUu1?DJzV3DKgcz$1 zo-k#aQXd{5aFj6dV_yS@^6PBm*OZDa3Dx4)CVnJ#+d5*2*)VD21rmzogcowSI^ptN zl=G(@ie_0dTP}968`=@SqWC$QN=709Jr)vhDwByHl+XyJ6GT>3lf%xKr*t5GKm{N* zLi{N1#l%lk-jI(>yCH*%pRThnM^*q@;6+90mkUeo4+Ji=Cd|aZML(8-3vOwdV8ZR~ zwQ@y9Eq)Mr(acwifjAS3SYuK{As6PBiJtCZw+K$25$0{_7#Jz3x+bXr40u^=m?e;W z+5*X^MH`5(R0j{@srkkCKM3yUGSGy}5!BMbnwWkw*6ftnFGH0zDa5nP^Hn54#4tSA z)*mJ__^hRUq)x4Sn7za7_&k`iZut<($rwV}9uY#>G{6)gl(N{0l?TNQXp&1gS1hUy z#H%{WtOJt)rzqlVLMv!fhPFwc27urd~Bf znPF-zVv6J%iZfJl#KIKi&60DLn%Cs8<~1^er_8860-sAe)B<_f+pFd!hi~TEiY;1* zD5rL4W%psaVH>!+7SO#oHeKNX?jx70z<^bH5)4T8Bu9gxpPpu0xKh9`3;kBqLG&jS z{)57=;1jackx&HQv4DD1fp_emi#SqyS_1Fna))qY;2oLa^2Jtdl=t~!>o$Qk3~#_( zsS~TTG;18hxW}-|S49{A$P`x}q4mLYP@MiljOL&U3F+m5W@(7gf ze}=$D^FZ$G7}LPnPW!11{Tg@l=ev6jLspym%O+7JKDv5u+K_(KyO8 z&MwQ)S?I%t_)SD-iTFNABar_15-R-@%I-z9$LSmeX+M;GjEJAb-$0;#2_SG9aXN(h zp-o6j{=l7c*-3oy(fVAb#gju^Pv-gouBYT_wlNRcI<86v#f)Z_^hNW_3fReE(^e$H zDPg@Xd~IThTc8RL1&xl69p50Xdt%gDHVA>TYS$pQM8Yg6NoQzk#cLyepNX(hMvmpS z9J2+kwPEZ~pPW>C*z}f$b?^}jG)5ui$@s)(Dw6QA1Mj^b;0YVzt*k0~in5B*-aj?I z*~%ZUlfjA}ofKL_^m`iSf;5Z#H){ogo=Rh1^dl>()H_4*pHxn==;Xg%^S%BDL3n=r zZ2ab+9zZZ))!(cYS+d3EMAc}q^K@=M1_8vwvDRwZsFX(Eh1mrV8RE z5kN+xo88hJqES(0b}G|-T2#qr0E4~3B%)h~Q!itFP6#vMR3p{(15yppc}b>y9x5cd zz9iB0kwn)!iE?ogJxvRqMl;epXCxv{gL>dyCxkQNctbcXjxlaBS@nJbK zKu=CyMpcbv1*s269Nug$U?@u4Q^_L1z_GWGB^opvHBhI)X^%Q1U9wRd@xw|S-2f69 zMz9a9Eq;&sPX(4*H>RXgCQ7=3)5*?$W%}le02;|5WR#U?eu^!7rH0I#1LYG6;?YP% z<-HGPHfZ$3X1dGVJ;v;`}Ke_Gu83L#^% zyo>H9Tg7BpH9L>zi^}4#CPs1z*4{dHY$tM=Sl*V%ZlHMYo9ql?rG&q=4oh zA6{n$kQgLDs8HZdxfosx$%k{W0-~q5+?;B;S@8laH;>1jqFkV&JQK^!a2{K3R%)LI zOh3SLJy`vh$^c75O&TB*MaUnV2UQx?a`OZ9QG%jeZua%-%IbBLz$G|M&>=B~!U!H< z@wr&J*5dP?0<#poajcldLW6`2T!b}k)}AM%_pRrGTw9|bq%5-ZJmE{v-s8xSCVc4` zcCEpKZWE4{s3^tIB@8JRu4#TgRu_+Ni_;P8jnuT@Z}Ms=49ilYEFd{;Ph0+}VhvbT zI1et0w5|(-8Z6VsWm^%S?6*6Iuj+ zjIP9WoYR}_Xxr6_XBo}|DZ>Ecn+@fRLoL>r#llHZ95WQctz}ubT1%{vZ*4KbO_?bO zUmY$pZb@cVRc-H;-thT>l1i1Xf7x3zLh}5dk}|4E$99NuHz|HYYNB28oRqLLltNfD zgtYo>Jd(iPT|qU+$UE8n5(S;DB^xvT5ieACc=s*wX`dXqNDV>}$uASLlaX;$80?D+ zW}i4yFPWwQN+n{XrA4ktxLCH-A|LiJEz1x~cA(~m8KNddM_kzAFeVB<7Sd`qS;UF> zXINQ@eF9PTvdoQnc>u1W)S}J8|4r!t0o|7?G`EA4Yz4_~<U-3h{iP7ar=jU|tORW%tNNXD)c3&HfYJ|&rHQIxDE9J5lt(nW3 zQVkXT&|KCwOnlXyfy)|mV=%-eeUsXNYtmvN2&STsBc{1M0v+0}G7QODkThb|U|7R< zAdm;4Y*YY>Rwdv$IzAxLEJ$64t8CD{{IUgCG4-BOEov~$g^u44OR0X{*4Oy-^)+zh zPnju=C)s{2IYEG3v=F35Hi-i#&VT7{RloLeoGH}VW8 znN}C!D%HgcIGXu{%eNyYDD4WLpdH0e7U2SLh-((^Io7~%wrXHf0=pLHX9J_OK!7+f zTeIjeBJkje2cVujSSx#9uvno%>`&8QJdao#9p(oTbr4PdZ$zle&K)!Wfor zsz|X;il=IyOmFc?$*x~T8Hh&*{AX@aR-~;Gtm}q2tQ_mxWQR$)sF>9ApW_Xad?lN& z=f6~xmExeD|C-8d#Z&d-4(0#XIaJd_U$^MyLWg6SAE;<_O%T$g6BLXA5bh4HnHUT1e}Osd?&ac!e#8Da|eXM2lZo zU9gab@)yHdwAM6GL57tRTMDcwFScB0+wonxx23Yc)Zoyl2?$7OEnR6XT~Bk%#%Nhs z3^2fHEWR5~{)jnBHRBBh0tzI5D+8m10hRf{P1geuf?r%KY7dzVo|!PS#*jf60jE5aBns;N{((w42oK$gjJVy+Y;Gv9WgKD zt3F_7vaDGq2lx!$w-nArG4p^Kj`>@8q2XttBWW;Kl*Kq5mKE(v=yX$|(gQ_1%x@k4(CLfLrnfT%Ob|Apt6W19+(#sv?+if zW@tnElt)DDy8KbMMT#*bRawsbm*uG^PwjZLTR>Ov9H)p=f#+aDIZl5&Ng8+Z8;LVX zJ6{htIYgg$BZ*Fn$3!s<=Erl;b3xVg1oWo-jCnbiO8EjZapVthu;Pb?d?={s#g~M` zlMr4&3HSABPd()=D{qs2*;sd&Xbibr9OzJ7yAr1Dep35~cP3C$c`9}a#+(f#;N zk>XR)@^W54EPe`|>`^LF4)c^X5dH_ud!J8K(RL1;(Q3=~XqkvFZm#dhYzl^74e`}; zL@ODl1u`b{tsJq+?_mE?y3Q(`NjLQ;?wdX5j(*$R%EZha>L>Y~FBHm3!AhL7k0}Px z!X|3YC~I2D3xR|9=3)WxEACq59b#7th&lkHh1{7yM8LnMX63kpQMKSpy)y{UoQjUX zv!ezI^ew8wLC+=>6ds!e4ooKxHUvt*1pij>F9{Rbl+fOrk7=^YN$YuWF=+->CW?$M zD`$|SE0L3c1DMaGH^xRnSlJuX3(OCvapgScVedw!h9kS=X;N<cZBVRgLgh3RUg zw+Jbr!X!+|YuAMZuQZEk$|m?Yo8Yl<+@by|ts9K#RT0o6JH1yyB{5~awk|L=FnNC9 zbXHFNg0ClGt@yf<{+0tyAmMVTqNj3@BBo-TH8N+-^Iz|F=DeHZOzwsi1fG*~Z6$NJ zl0Y3vb((}7;<%L1faCdz^0vNQ%TGr04paBtCDu=el|WsXXR=1xhYszzKY=U4NTzH| zlCA>-)^bs=a-4en50hKX8DeGxg3dJmL4+ zWnXl--_`db5^sM+=jWgBd$H;A`$g?HI-huo-~an3{Qk(}|M!??LzX<-TJMUlS`+{fr z7KtKhJ7HQHgOt6NzUh0E?Zs^KGj59BEl%`eY@+(!?p2ydHb+EGga}uwq$RH1s_Je% z5Z2s=d{?r3XjD4&t&)QXRoh4LT6Wu7sB7c$?&;Q>Zg!k}!)gAov;4|P7AQedr=*OD z`FM(fAO?&h61rdv0CTh|A+#lF1LH#lz7&7?x{zozD1aB!f1c!=+_<-Ub-Bs- zKd;mO4Y#pq(@_5#VIyOx7h_0s8kq~W(+)jfvTBKvg6srPow6BA<=6r zRGXdSi`iKbHWjnO8#X^DsDQQN;rY4R=jR&DkHAyR&ip@uFZS9*M-wYAlJ-o*-U|4 zo2$q*8lk+i_09*av&&G(=|_bB84><{B%%YGb9R0e?g zKZ^ynrvg{OTz{Rks2jssVclL5W(!|kqY_8${cL>$(M{`MWQCH#Jl6LIcoc@XJ~u>s zQxZ;*gNeHM(?&M9&z`P|rGbv|(K-x{F)YeCG|^B;6V>9VG7^mK?%u>*b_$6-`N4bO zEjO_OwS{)eTz?CC5BsDbqiH^(8}&TRxt(+UsPD)*(2v#(^rImm zbx8SmN|mW~DBI9^XN3f0^Dia=nc+?XsN~YZ&IR&9|Fa78C(oA9e-o1gZ@o@WLjPy& zCDq`$Bhde>+p@C?^ncb8^xr(pPdCGPlFoaNg!)Go4sxgivPHr{I94AFpjjEfOPE(1 z0Eh6sRJ3fuVM|3g)Nf<9qHq{z09zIb2Rj$fXnAwkQWXxH4Rqb?lq0fIW!_v~IGjfv z65S`!dlTJL;n_ld8P|hfVYnQz#1Wmtv5@O20Ldaz87@1DL&7fS+_*b`tfE z5D%L}V|Yy6Y>NJz-+5OBleUh)q%9>TZF5Z8&S%1;3yO)D3R@}@@vV9iCNUA$hwURU z>4Mv`3#t=QO6dsvfn=^<+7%|P(n%gsQ8EY9Vr-XM?bxowRbaaiMSW}*eZ=isVfNSS zNqyY1xBIdZS;i~K(!4E$`M4&r1!NhI$O412Ue<)*VSE76z1F*>UnVJ%@i6c0OQ$H@!qAHf0GftkVk{`M19F6ZXZ4D!7P$&+WX& z3WP@EoqNmsdgn*W`|-}({J!(UOKNXW`zfkSiq}}@t@fhh0LSj|G!1)%e zms1PT(m;&<7Hyrog4dXb7g=lJOwbzxQhfdRu%*h^3CGzV66foDOJK%clFV`-(t&;h z&5%9H5*uRcl!~kOkqp`))rYHJ!%T>)uM=0-;!uBgmvm;0jJ@jplB;{WTNvFsTYME{u7DIDQjn_DAD6kt`4ikM^B#fZBY+tkgr< zbJQwIb;dHzq3puEnH>j=CpvE*OtXX_-F#{tz&W8wm+J;MUu=A%8t(xSnqE)SLZCzl z{me9XkvF$O%{`aqPNca`=Lesu<}z=tq2@R~my!KI(bUu70jtj9NyRK$V|8on`-{e& z0@{q6wKFQS=Ht4nXzJ-0m!l(`*Ij%zH1IXcY*cTsri{7Sy67{4m&WWPUXIbMaeW<= z^Nh4c%4|`=O5w@*v^LfG-q_O92hP|J&cA)yn$r}?wQWA# z(nTRG+AIUqoZ99vciqI+>&0CVYi~hiHt%-n>8JqvGw`#e{$f19%!qr8soi|WL!9qn zd%=*H-=p8SCmExq27y8$C}`^B?Lww@zH2g&2UPamdH)Su(Lv|T1jqF=6IvUyKvzxLjW<&O(d{cHM zSpi?1*R!kgb=lRVmA;0Cq?1nbkK_p1Nu3u?iuJ1#ud?4-*^P8W2FiJJ*=x9cEmhpa zBO;VFqHmi`vN;1n#!_gK-8|dLzMaOtgI<4U{=L~P`S)bE=C^0J<=>rs7ri}@FVwPs zlh5Coy)M5c`?vWwzVVIm?7MB<;+E`t7~H?3ic0Pax!ZmBarrhdLhUHox%$kgcUz3Slm;xpa*33czFTKY+i=>68w52&Lb zw2ppA9sRI6ddNEZkz{rz`zdwwr&%P*KC0e+EXg-y_a*uI?BnX~|F7QOuMzxvb@^u! z0sUvG?au5I31I)ZB){v9>_4cBA&%ka_3(g3q*16a%s9k-rt$H3&yJu+Xen&0-uC@4kYVosb@pIPV?v`y&nbkM+ub(S(5Eht-om5$OIj0k!`uaoqlry7lMQ+FvBIjqJaw zwJ)oi|1HT6*RsD2dwnF1rv|(8PG13@0fDdB6i+ zR>I^Jz+oT%uIJx%{ChSqxt4$Tr2J2A9gI*S1AtOp1I0rkufg*uMuUHT$WWortkr1j zWlHv={xHV1T#^G&6aHnK=H@)U>yEkpRE}XM{q^PPj^Zy&t!UJew9e9dJ$t$8y@ahg zCrmQO@hR;buMIgbpVW^Wn5S?%h8oRe>*3yRPFLK0s;U3ug2tUI0yzmN5^7)$Gli7V-O!D#JIvYE+T^F9MN#2JU(+K;RNKv9j<=#M14z zhL;mOc3c0IUd)7_=XXpvhdJZG4<}ttg1&tM#=da9gw6HpGkBZ(?#Ng`b{2dm-&)H>ly3sYi{@ag*T!$G6RM*^i`5#M^{TZ>P=d9qf2#^2?kRHe;s}UqXf(b6bBnpIpAQ-~FD<~=|Dhe7Ag19f&t5MOb_o9LVBB0_G zTyaN46nVeDQ}sOEJ(&O( zTd3~5)M~t%b&T{REiYya}PD{=&r|(l-`> zLx@3*HCT{!vxS4|jvy{G#%1}*XaJ7ah^!eFE*iUI_V4S{#1dI}+9p+w1!j;?=jD3Y z+``ngvB$-ioST;`@*d)iv1tnCrHySdfF31=LMSOJs=P#a>6e5-=j{Um3he+CrhgnHYa;ZLlf^fw&d4r;H{F_ z3NGbN)Lo%&rYO1Z0rJ9ncs;y&L1j(@?BQ-jb@$5r&cOOByLZ;lqY;zP2!Yn_$xK)0 z5$YLhkMPViGhnY2L1i>_s^`wN+jerbmR%aM#uSdUhT%h|nla>CYZGl7Z4DUhW-1kD zZG%rCH^bh~aFgwQpdL5AUN9;;4{{MMaM>J6Z-D`1TROuP>CDnDf}PSCdBzTQ#|m&d zrT`N?1#Lbk`2cf0y)5`3?*k}ClV|c9%@M!Vfc#yI()IV^)qh|T;lF(H#~6wJPuzM0 zzflpHhT;XV1E}5vh=MVMJ&Yl=LBQOC+~Bu6VzBqSWUH~*c5d~w!H%%Qt$j4<%Q`bt zs28xU{fgT8RWwP@7#2yCmyd6z;`yl9}wU_5a16A@P`EW!vg$=Dd0a6 z;6E1Nk0@<#<#R27w}a`Q{13q1zAYv||91v78cVOg9qB&K;Vm4tBtI3@$S@q8NFEii zj|teH38glY_Snh66 z0~@wZi^5i^TgFn<9f+w=vOYdyvL&f}MquEVhSZm8LH_P68Ugm8_Wy0z7E}oYgeOFan%?DFKdR zb%kSV?25=hud#a77B=l#Bt318Q~*y&0KalQOT2=BXCa;eU+}=^n}C0rB-G;#x_ZtX zu5CQ^l3U4$*B7KTt^D)+Rs$yhtYw|L8gbDbP6dZ+M{QYkE_h+%Z;il1LAS!KSyp`y zV5-fl*vAVp;v%Ots>-)Ij&HTYSfg%vByz{Q{tc{h*YHnv9+6wP)Lx5Ay@Ib=B)@_k zI~n7dA;uaBgjz4ZVo~)*UYZJk8>jqe40Q_~9LHLHD2M1p7+_UoqQ$Qkq^sPTBwx|V z4&UH4>g-YOXf5JLd4LFXM66&?6}Gq|Hr7sXFJ(FZU}Wog!TBI7E@c$IW0l)0}|cMdj)wSXMC*smva&+a*11fW(}21cm(pbMWOcgAVzgUFqUuExDyr-))t_+owCO&T$G5*jhS zN(W}^Qs-X11jI+~tkY^^-AQLcv}4_?&cp|Tm2iq|0FyWRhgaDk*_Cq^FdgKljrg`Y zFL|SNvho*v{({f{MtAmwX(3#Te$k*(pj&yRREtQ(0$ef}%6H)>b|(tOC(ABfPXlJT z?$)Me>)E8#n2lIhS$o=Rf{M+MN)6ChpX6yWOZv~wLxoXEX#Gc7FW+=7wC zx$Yd%(>dtf-q0?9O1l3>QmN1%2ETyl`}fs zIj~fbk=F*Y;ZbyN5P5nFMt3TEZ09gNqGOJ(;CpT5{a7`4W;GKf=OhSGE$oCKcm+5itMW(NGO zK!%iCUml5FUl=v`^%dlY8M!OXHq|KjYPb?jKG9tTCwdb(&gaF#jB6Y5CaS|x`{L?C zng`#y2onMUmaO*Am+)*(x7R3XUtpR672OjX`RnFHJK>5eC0nJQ7Z_@**D<=cW08>O z?-{kDx43sis0H0M5gpILDJcfsrf8|+VreWl-!1;nb$Lu8D`?uPqyQtPi4>@=jA)K; zvO=+Y($?}aNjQc&&NPe`9K2C}`RE2|ZKc7rcXZP#i`x1m}H`HE*2fc;no)QG?~(KomsD zJkx`jH8DM18JKr(i2~cZPBV#b^V^6X?W1&*TkWItk!Oq(-1ueHTcd`-zNgskliho) zPZRe(3qxO8Upe<~dY^6TCZ3k2KQ5#fT@pDKRR)1!H3iWVBhRv*H%Iy!0u5cZMux0Rsh|* zqYdtpYR-BXqM-XU4UY_&3pEr$U7Ro2Mgj~*bYI{uqt=Q=h3cwnRWTyYTN)KN_AuPL z7^w@G9l^HyM8x#CACXULFT;I`orL{gAQI|zWR?^OI{6Gz0%S3JK73sv@K!Faa%WaA z4G}4=H291=fPBO*bo-u$v`h$OC`GH$6MH6LM;jepy9bh%R1ctJHae`=n9eN*@_?RK zqLwCc=N88Q=OXtJF)Gfle=ZWIQv2_XM4aUCEP$N1Ht_%%0RP;QlB6Hh(I}>HbY$}$k-rqw-N32Z@IA0<-JsNJJA(B`cb0C`zYt?Bt0qH z$A}uAa6mPXI905MMQqXXxn^AA=YaH$sFt{YBMHvXFy01NlFjorqQ1b0k_9m2AQ=Ch z@FYDdz0AQ+&dkAk-4|^beL=&>+mpI4QD{MB(sNtWS*hT@Vne9+ME7Mt{3^Nbj1HxH z!Q?l=hFG!SQC|QN|BDTOGuq<5X7k0@)eYYZeE9S9!uRL}m-sG7+@qu}DQ4qIc2ON&dsPjlpT&)4aBZm&W(}YbYf=e+!(L%|8nm zxl+2zh&AuNLrHJe%uKsEiEMR|Rx@mR3V4esYwH}SpI^pIvU z_0kGA?O-;!C|*1~vg%;3JPU%_s%6#7Kx<%oD=B}Kn!nQB1Lnz_cGn8`UEqZ+CK_Ph zOS#@^(%c8&jKLG#y>!_9WcyES4f7RSLA5|J!b3r21_kT2CMd3a(NM%m3Pn5^ir8;A zwLpPdFr5N~`g59rIQPY3BA>wkdRj3NwrW~n(A9j@Jt1J?tY#R_ez7n_84UDaGYreB z%S6Kx+Z|Nt2|Si;fE}u14>g$CPtkL70^{Yu$UOub%qeo0jWvt3@V)PQzW0Cz96rB2 z-}^5{+;=16dk+S_N6sHK@x5yqPl4}=1s2$Z65o5sQi<=u*TnY#N<1aVJ+Qx=n@T|g z$yB8k=|)&xkYc(G)1P`R3Og@zfE)JBPOg?U?d}m|aOIBOPY5*}5n}%vG=$a7PyNAM z_b6W-snFJVm75>NN-m>L|Ac2X$*U_U;LPN25&#|}f;GSpwtRS1NakoQGRHk^V||YM zC7pg6FfwA+3&uJQj2mM(jd6-#jwUQ*;a^!V%yGY_fL=zlcyGd}?oH-EGmpaqaMmGG z(nwP2uhXOItFb^hB|DF>!u`hh@8j8uzysAwDZiy`#A62b3imr3*u4A$AQsS16&%9M z@4?p3$p0e-wo=ZqH75ZZ4Z}zhC2aisJxUVyOvDWP52j_Mh=IfR0Fi&X3s_mKj5-sBnLtzDG-Lpv4V%g8asZ5rB?z{gc|!)ijY${$AH-TehDwz)ZGum?4n zUP&DSdZiSAq5l{nM?>bGkYJ-V*`E9-&DacXy||bcemGxZF}@|2#$o69 zSk7y*~1pfUn3Z*GS%spN{d zo-?u(iaD48iXkvY=4I-K%LVckt^F`M^aEI5t!<4Y*%U*9=f^CuFCgPKjIUsv5Udo8 z6XxmVbcm%PnI49~SW8u9Z?H;)U~D?t!9A-kQtzbrxiU@~2)ZiX7DHFZphy%~fa1RS z)-UJizCQS@bsx0IqRaE_4`^^0$E-aIW4tLc7AF~_n7GIv2ssD&c6mRfQ&z)u6z)_H?VGNQqlRZ(yRQ9 ztF*d+W!1hpZVk~QhKmxk!r|@%ErzJoi@;9__yJ59ks-*ANrwpnKcST$k85k(b@6~~ zj&jCK^2YYw79Wf*4corOm^Ze$x8t&Qtsa$D>iTtVZ`WosZ{pq&i|M^BP6gn|T~C3k ztj#6vopHAB@ov0u;2dsjT*ZXnlNd9hf$Rw4+7R5|yaINLvvpCdl0PqgloRJaP* zX6U>Rjpn=$sj2uqF}Q`)5*o(T!CA>=)$;`Fvg#(rjbxa;(fc7vao{H#X$Zn={Yf9V z^Z?6-70askM{YF@lx8*IpPlt_Z;6-M2kB6c=ercB$D;_-SrO!b0p<=UN=nq@7gag% zM6*|Sl5$1ZJMiay*vNMYltz!ZRjefr_U@z9HsQ(InG>PCFILy(-23SdF9;ylv6beM zE$##HC2qC+!N?+9jNeaD>Z?BBWo^G3vyA%6mIy1Yvk-2s669fFPr<3?v#H<0WaaxU zPj?iy?KiZa&Hc7q{kB^8G~+`aj)ggVLS%Ft-EF+exC+aY075Q&yQ%D~9GkI)y#s>vy# z8G`b*8}IE-BX_Jj8eu}_C2AJ*hs;5HLU(EO(VP`-3moMpaG!ID zA?#?E9G-kqMz4wcB#k~Is3ru;(dOdLLlMu4fM7lpCQ0-d@$I}7z(ll6EPAzz_$Tw* zW45?k8o2k|J2HAO?k#r3<|3#B>8}9i@)V-w8)|c%&*zh{5L8XHHr;h&Ab7k-@Iy8` zMQ13 zJhWVjw5(chjis$OLc2R?iNp*2r8%TmdyC3a_lcZ8Z_j4_Wo(9@QB&%NnHW{xil4R9M$m96Oc2@_d0kYHE5Uc0Xup$s<`y z9%^mL4?{~H^ey>O+LDKwTJmsc$&Z^_Lis+6faIZ(o`>&;mJq!!Yl%PzgM;^xdw`l{ zJ<{RsZ)!< zbHW40o_i}_CD{(mqWcYKS;FpkWvjJ&7k5l`PGt`pZDI5JUpL-|W;&JO z!pJ{j_oOw=)674zQSsMSy!XtkVuS-cMyC`_^o6d zRX&xDlpR!s?rLZPdE2u}!JC^ca3!Yk$2}(aBEOXyaIml*{J%3D0p*Bza7oD|Mc+5ERidp zV2GBDZ>*>w(Au;tURvF|vhNOIR{ztP*(#rh)a0ZS4UY7@aNwQYnCGZI5JF1cC({(s z=2xE0rRtWb;vG8fIC2M)!So56T`k9*^$w0y+|o*`JD9dIVgd}`PFS38xj95}$IHgy zm_^kd&W*ZPKw-yJ$Lk0w0#;=rnNkD67cZH=@GjKx?HyHXMx)!HU$fkb;5T*04Fxde zR~js0B=>(xQDLIvpz?XQOr9S89| z+%h|Eh51CUc{Jk0IjuOp;{74*xK>moie${i941i>Rjn}4 zUoFt;Wv%*krkk?;p(VdU^DASMDYPPHX{QCTEzev4bd5+Kt8TlTSIm_-%^H_{N@o2l z?J&ZpV=RY0BQyTb>M-o*VpK?m2Hi(!0UNKO0yU8enClxhE$^uD*UiJ}p!vHXz) z=bhYowBW8JphdjiGo=GGCi_@epmgcNlN1fUJnzoWr-I|>F_6UDc}9a{gd5K4P_8%n#JSP9?q0ow?Cn7Kiaze&+7Ik)$M;#w?CzB|Es$F zX?5@4(r*8|y8Rh-`#)khX0QC{umt(2@AZ!w^ic&DLe#gylj_PQB9)mbS7YuE6WE$# zX<6_TKvS8~|0xouK5&NqPVJ+m9q6Q>L(U2c+YnoY>q&52#*^_EIxNp_82$54^O9C} zZ?4QwP>sB&cg5gQ4UZ-OJEf-T8K6P!HDWz5o?r?bTXW;rA+N)x#s=3X2c$}2xztfh zY=2oXhB8fH;X+eEVvN!e-J+fA_9DPGvM|&r=VY1O)&~ZLJcQ*HzarnvBE<6?q%>+o z-oxV%5w-FFuy5K^)5YbXH{Y4B(8f$5V_Lc}rZM>O2DeFyP&>gGc zuqJRW^{gJi=jh~F(eN5OkhCceL7kt6d@smDxfkXk>5KA^@5NvktNQ^l=s3ju5yNU@oObd^mvV>=;umci9E#oD95e&3 zfo-J=Ae(2gwzA1*$lV3pfE3)+I-4I;ZEr!ge&dZ(jHjeQE1g~t@1;i!KlWHu-N{{} zX=o?i7UU0HVC5vXpE3XS%#)io{k;vNgyRKuyG;WIbOO*!)j4;JfHsEb=eN%S0{jqp z+rWlLq+&}$Y|4A-T-oy&fO~O@=wxlry84QNnzQD}WE+Ra0Ld|{ZnrgP7l#3Fq!x79 zH{63O3CGpuxLJN*YPO2r9ms%^GT4x@1HsrxT$FIDHL|@;ulc&4kI=fkAQu^2oYaQ@EXWJoRwH*@n%Yi{{7ex=Zwh!-gQ(T|#--&AJq^AD;hHoYI=jvd#xn$hr zTe+hg$u!(xCLL)n7eXK9S%@v-V6W(K#Eb5u&v@wbKrhj0P#+Bzm!5M6?zuZi6l22z zw{q(ka@+49C2R~<+_t5IRks$=ad{0^o#pbL9y6lN+i{DLhLDj%AtV}_X#H7#KU#aO zFX4ZkCO;ZF)R{v|k1qlp+5IUfZWG%Et!udTF5*OX;3#ko?;yy`WpEdSd^#(KT&cZs zyDzET``_ZTp_ammRg7W0v%wbHk>Ck zmpalzPN|l(yw$yDl0fxSz8fqo`way@1f@PFMt~XScSY_G7 zvm>jR7OH6bm$oNuNM5xt5b`eLvMr6V1CHCpSJT>XD17CyH1nPF!W#2pE90KW4QQ6k zVk2@30x|AK)67Z7HqNq|DZi_g7^|(sXeDolAexAAbXxb=(B57DrJYw+dv{6e+&8p$ zK6Q3z@U?hkX>Kd`zKK7HcWAVBw6@hs9kQ*dL$uC64U6_XPsU*{g5FIYVZ}!BKf3@mZJk66CsCN-)^V*h>zQAKBb%J7)x{<)Xa_)2+oIIq6~QO1ja|3r8cRvzC}}(;PY9*;P@1z9UW00s)|-{q7hv0s5++h2&RlW-T27{f z(xy_{w6Ie3L(sDNafX?srfQ7-BNt&v9^hVtZ-dbHLJ;w62(cVXrl;w+-N1L@Oe&oP z0J8yY_xgrp4x!F3Sl9WyVPqJVZDdrku45SK3K~ITG_R<nuk5>0#1Mjar@h7f0wsuFu_$3T)VoAOYRDMein;Mz;Vv-UB;930+SB*2=Q(bmKg*+(PWTb62;E2WnS7kw-nhtJ_&o%YXw9 z{CWtk4#Cyuk_HHUDZYAJK$zk|m}nqO4IuPpB|2M`#BN#xUwzIJtL{FW7=*g}T+M^l z=O*c$ea`U3sB^msF5CpnsO{lq;fWXkx$vf76OH0-y7KwXjotJXa^F+MaX2L{c~6g@ z=^j6GQvB@UW~V9k@QIafhWsxVID%pf5<~95d88hGuoojyG`HAjm=6Suj`i)U`1FHt2%LyU*`iHlEIVaA; zqgLVo`*;phWwh{KpMes7e#9X+e+B`GQOh5E;y#))Pn|ivr!{7+D=vW)$7NPlOwc&v zxi((7?f7?XU2!f#`=l~iFXd-NCFUMWEdcWiIX=Xp6TqmSS4W=}PMMTl@!+wJzg$hM zOPN_baiXQomBl&{O4{n@4J0MwC+b){k=jX3SE|Pw256i*F`+qV`8vS78s1I`c2))u zYHjt-!(qXKs#Yc!I}aTL)K}7D8}7-wKgn$|xCfKjIC}&-XVOv6a|WJ|3Q3l)le&!) zb0p`L&*4{r`03_7rOxMTOt1J095FOjUW(J&I47r+)(^VP-a%aI0|H5asC1kAfc?UJ zy-Vv;c92oqEoHJKI0)Bv`Z5edYC+SXTF(Y5x{WNI)WnCoa)2!ec{z+`lmrzxq&g## zQoSTgdP9bq2QtdmPzvUgXo^!t~ z_!f*Rby!v^>hA5JT4S+;PHDn7c*)heMcM@fhz^8@8zQqB9La<^s(xLB= zMY>anjkfNd%mC?jyK?Qc8#7RwMm><;*wDq(DQmnwjZ=S3upXYlJG2|!j{DxrF5$8v zSF;bZ+%z{vUC$u1u9y2bbKhwCG>W*1iyLKDkp=9kU(+t`*iJ_6Ui}CEcWRfu7u69kNbDBEN zdSTn%n`APT?UQy319qL_WEjbmq{~f(ljzp^ZgAj5r(kQ@!~bK`YzV!IO0&qOd9bu`m~?+g26L%CG*OtwS! zpF<5fI0Bt+Q>8VYOp6u`|za4?NEPSUDW*qpLAcyPC8`I9V{=m?4xj1X&w z^=UZ}D;4s=;7}@YB%Z~YLb3pj5o4*}u88ei!{yx{*!=VO^PovxttcURl2NdO&*f_cYwr6|5k0VW3BzvQ- zlzCr)-?zT^Pp?PZ~x_6e} zzD!nji@DYh-RXz^!aNSK;Y5F4%mGn?{8AsVv7slt$fXeF+1Su4WI8WmvCL)nhRqcC zSuut~!K1=r+?G0`V}Td3sj}X*Y32HPNk@HpqFqx|NYHj%zlP7qDP8s9OqBkSouF>+ zb{Wp963Y-vF?xW7Xp)Qyk8XeoWfF@}|8>#;vkI5);rD-6W}h)^ypCl;8OLYU&JuY% z(MJ(yCWKe46M9%?I_9e+EFx?v9+wZyLYp{ATc* z$!`|F+5B`Zr@U(rl=;2TEGEN7oJrhPiu3sV-~Y?X(WFNZb3r7n8O{kJI#zQh55YN} zR6cX?==Z$)d2^)qnd7H0m1di97n)iMdnTKAL-E<_Tl9s-=Q)dSP@1hVQjuSBvaNmQ zNbQqVn=TG=K+M|0T9YlsbbU7sOW#k{g9?qk)+~L$XXCvsSF}cn>kC2)h~8-eu<#=x z=py+$1RCjnE@n`0MH4j7)lBVnHIwOoF4x^eS14g}CHe^nXojEY=VyT_0L&@Y^Zf=e?xoAo*nwP&uJt|v8 zR&}GbNMUGC;q5%qw6mOcUATd>2Tyi!0d^bC#NoVV5qYvM|V8Zs8=d%E=%@<8FROgd@ffCJDkIv(U#=VmTZl7d!1&_hc zS@$eo_kPN}pD1=dGF_yR4E_h#t(Ofl+;$6bK5|6{)BdDBK*i4TFzp9S2LRJ7a5_JO zOJlNu6C11GWDoMzl~;l$ZvSc29^CjFC3RP-y2`B3sQ&F{K2Z5)*dL!6{a11znI}M= z9wP^BH}fLpD$_#d#Vwhagsxobrb*wmY!OGAr@3WxUO(=-Z2%;e2F0`85~abmnr*HkMiZ9{AHkgs!+~v ze}0GZJA&U!-P}c-edNerl&Kb!a~oLeVv zp;I{2AJIm$lOZnArY8$sUHZgR4Q39FI!l`VN+6<~X{ zV>w@PuTkEzdyUn5qAMpSvEH)0P`gpRsJ~R*wKAC-f09{7bn`HdE>(At-Tl&Jnp=__ z<`yT*cr`)_W$3R!K;kRb!c8#^k)1(nkmsdc!!o64~^@ zn{Rk!$5nn}L==O;q%$Mh`Z@TpP07!zmkhFu3z^D(j#T!IDGG%F-<9sFFgre+RzihH zf1wIpe|L36BKV2a^>2cgaE~AJ3itSp(mj3!-Q(A-d;H3}$ItIIaF^ey+~p_0xXdpO za}927@fd4G8?N60+6#uTx3uE=x`1nhHQ;b>OL6^{CS2nN*0R1m#Wl#Ie4j-P}N6n#MXlACnBou7`~P3DR+^vz8mD2NKY$9b%( zG}P&fw8eAe*R+{T-xpAKqetEQQ`F(#(w9Xe-xE;xffRMB^_>AdMERZp5M0=LQstZ6 zdoHPVds1b=5E5Q5DynaalADE`Cp@A)s5pxZL2ZJ{IBr_RYiyt;E?lf69~M$>5w<=e zyxl64;W@gj`xZSd-7Z97Q2xP4mo64kMBNeL#np;7gxrzQ(ygrs*%A!R0(T`-v5(q)}&wDv4T~gH*)s#YjBc2?e-Dwv{Cyk_;BE|Ym?R^`zlT@g zR@=v6r0(_*e}MRr{`I{?clS{^xVtW-fDya5hB$m4mgUnR-{W`L$C(jumF(jS2AETP zbngN8(GcBpz-WdLllk7 zH6e;*eoKgAZFN(KqWE~5k21NL@d;x^C8|f5T67~j%+hPenQ-TLTjU)PXazGyrp$A6 za7GMtoOWpD=)y}JVG)#?c#6abQfhOM=pu(eizt+fJdtrcKvtpHnV1=w0Ez}8v;w$=*RNmqcawOWKu zuAP8|gkEA~t=%bh81e*oqhu=8wO2&~_OVI?MOlyAwO3^VHqsTuK8P&%KcotX7yjS) zhf1Qu)`Y{lhmY8EPoe%$*v(<$GSkFfB#}xoMM9+`QgQuo;z3-mo@yO*shxV#3e%h0 ztjFAj73O>i#(qUPmvSYA2VqVt%01lNRF>OjRmZ$(E6P2zqTE9(O2$^UCR4FR=z#m$+B`N1A_!@3ET+YLuFEhmVwMC>iWt3xx02~oM@%{TsQ$%VI_zm+pcu? z&`Ng*TuUs^~&Y`*CWPcDg&2v|19L=1%46@e*lI>2&PB&kbo$ z&(h9tr-yPkxYLs}U`K~kPVH==5AmzB#nR>*&pJ!d{f%$EUeT07v!(EAV}fTQfu{e^ z`;2A7M2~I{?AxN)|F^g7+!%2!gCw*k>t6D-d}rcPdqw)=jjCvr2AL-^%cg$cem1@+ zqaV}0=n)xxs@MruEEfe^vCc~^wtD5GNA{Ub2s|?&@b&J@WArCL2*+A5vK#FsYk)?u=>?_Wq20E`Uxgn8cwL zRk;SU!D|c+9ZY0aa&lhQ;yI3ERYuyIA};7TKdN_91y|FUvSF_l+%Q;0)_bM=PDq0x zsO}_17z|BX)(YY_y}Vlsb*ICAj@!%NY11(P4=j3;W?*#zr(_Q%-W?T0l>rqNdDa(I zPV!GD`rtJ_c(o5+<%3uH-~=D6@xf}*c%&$seUWah)zdLP;Lch- z9qj{dtku&|&4c2Qu8K`#rS^_WSN90hE*va9huNMJ19~@4bI!c{LOMnYT37K(4l{9b zwV>j#-tZk^^UplZKl5zq4NC>{zcm_b?pmm;e7H z3@X)YYDGK8dN@@7v1}>ZD(zUfqtP&*vnATGz=n6gnI=TNT(GTaG+~Wzg1xl79$;Q; z(fv;XOhvLVQ{gEI=ZFS7BFH^i18l1Wn3resEF+dqFR>{)w)KHsAx}A>i}Ra01V>mT^vl7@G}BI9H35V zM%XDk3Sp--5OzufVW*@BJEegzstgD_1$bY#q>47Xi63GZtS-eG<+S>I^t`i%J2 z`|>>T@p?xP-};pJ);EZ6eKYatrn1wPRHqMux5J%k@K)fW;P;GX{GPF+@OwrBzh^Y? zdq#@iGaC4%%7EW9fOo@^DhmG={IUXA*uXDU2K;UW-Zw6(va8TS53xHp zqX&0>RNF^P=6rGCeSp@aHN~5oF;4lVY+TMeN6My+FIc!cqIPr7hJ`JGvX#jnG z;eg75eSEOD59aw`t`GL|fvs{Q z`IwU!F~4OrdMK^RTdTQuc^h9>mPGNd#=veeb?b3PJ!FkiM z=n3p9K*yp09g6~VEDAW!t^iew0#q#uP_-yP)uI4ZivmgjAzq$gb z#3Dt8DN#~}E9jqO%jf&&%E5-X-F3)PxR4}_MLSJd<7fslDZ2u_0rEZy-wntoQrCEO zRCh8de3FJ@3ZJGT)QzWOeZ6jcS3b(cvDj4mj9kT4CFHh)DyO0q%h`RDWwTZ;yMn9= zQD|ed<0dF@Xt=uu*hF-ak$d>V63MIx+gt_H#Clcneu8l4?6+C=S#* z`Nh;aWjnP_H8hl6O@)?qr5sKfIOOlEM|)(|r(@TJ;|fm3^|f{bq|T-bro+p)1qgfl z4IJb`<>$I^r{1-tzi>%yn*3GpaoXnEc-_B9GHjGo0wWEU!gRbd- zm+0t0yH20utixX}pv*PA@Y71rW*aRjo3`@|roc7U+1YtpUw#HN!!%iI&bGP1b62x^ z}2NxS{r*{IiLl?9PWH{DxO2@ z-K5IPNPWgYJ#*sUCTm=A^Kd4qRb=M3R+oA z_n9P6NC#f56NI3nW~XCGx}jEOc7mq5bg~L6s@A8k!vYx!p&fjhzRq<)G1wu;I$~2! zstUT)XgRy;3MR1A1KId2DlSDvSKaP~l%cK zu0fdS@(u)=Fk#I=-;H&uT5oCtY)onWXlB@4GJM-vkYuL*tBsIk2_iUyRL@mQ`Z;E3 zjV^+L+DJDt9b(frZmx~gz#@gmkuc^)rZ|GobIB;-Xr$pNA`)=Zl`vW|1l94fpyO;K zJX(f%v~(L<1|y>hnS%)cOtsR;HkeCs3|)*0ND_j~^fAGDP>%n07D;<2d4>!g4IR)I z7V7+-7aegRFpwh3Z$^styq*^u#TIPrCj zqlv_htUVu*lv>cTi$}}oe<@maZ9>adGnh!m2rmneJ)>mYAlw8)*zwOZf=0Lz%_9gG z~tA!MjA6wqR0==t!`?(va$eDrvHxE+NLcx`(+5j7aMCJ*DfwnVH6 z36tX^)1?#!7(&sA=f=fQ>~$zy1Sb1}_(?e(IEVw=OfEz4Q=14RA_RVFGfS9u154#q zHZyk-ZJw!9gtRveo=1G+dxepeNuSY2Fzu69o9D*Kzk)tGJWh7=^wI0-qi;viM*}zM zjMEq|HH{Z95lgV$!&drvh-ET%UttL#`Gf;0ORGZ-pvj)c+5noIGS|sNGgmuz*X5>p zd?2MrY8&~#fe%!Nk#8Zl-lC^yGR=@~ewHfv4udQ)6td>(qYN!o# zBeV%`*unE}CPMAZE&bCs)@Iq#DDP%%u5pTIsggBGaI@3-M^Y|DnKp@Y0zuHl4}{Ko znMcH#O@bUqnISVPI?OELyVxaZP<4H4kpd8=a}KFUE0kRSrmuYK*E`FllnL^cf&Omq zBMXM&O}9`x`6GF;RzrA_3R!d{3$}y#of&yxBF>?IT7U{^cLdaFW+6NWqs~3*?a7{) zbnb;FXD<4gdFaOW4(6QuV9mL&8_8~eE?J<3*w&(N8PB2%MrEWG8MaOTW8)-Dck}9v%~2Ow1>_DQ2p>Kkyv@oC|@m4&42~c_6SK6kuHhtc%^G zWC_JA2>K+qKv%yNI4uLl=es>jG&2Ox_sY1ko4X+?OYP;iRQJ}hIdUf8xqZTx>Re^B z{VX?+o~Fb1Wmz2#F3tCe)oJrxmU2Gc3T)SKzS~Q=?Q^E}o=+9r{;cJP49uu}i8~-o zw!~LvFBdid=CyVZ%I<&`fDiNlAEbnCQ2^M=@&MO8z>5RGRJ5N5Y>BI9HM)L9{f^xd zVA~(qI-9&()zl%(LL#1}uFvge#IuY}cnKYFFr9J;opUH1a~Pd+c<7KL=#ZDXzGOM% zu>h4VEn4ng(rD50v-Cql z;OONZM@JiuRsezbqNlU@!_U+(N*4%5p~=}YbGP!sANq0&?b6&Z$cUV6KzB;j)!hLv?@&!f0Q zAa?pXP*$l9^PR)dTTtZCu=~+GRCk#{1g@3RvT(S8LYJ~&m9xz!L|uH&^iB)3OCZ8! z&p;i+4uY5+febl$slbxhMuMK;j|yOm3OrksqUuvcpxpK!3OkhhI$WHqe}oIthfK6> zw*SpHF4uKy^pafjf06#n<2|TYES1{Y+S|+JgF8ApJ1doH^^ilmx`qww?jAmT#E6k2 zM~&KPr=54+WtY*TcinZ&n6YEWjT=9H!i1h4=MGDfTJ7-O-oCygcH3>@#7UDTPo6Sm z>eQD`n>Ky=j2Sa$&YCrQ_U^mSnX|_pd+xc{UUTQpo45Dg`|PvtzVqiVSg_xI`|rQ} zfCCmTtk?Vd4?OUogBC4Xym-lyrAuW-_7b+E*w<+1*Ue9R9NYU9`PTd^@!ZA_t>g>- zX*+7DUyk;HUPFTH6wl&Gc`3l~{3Nl8_=Z}ML#jBqMXV~B#5>eoH>)m--!Ob5A` zE7J#;h@o?atw;-ui#5&|0BW?BXLA@(q%|f~>6|JD*Ndz}d`#`M;|HBz%I9M+5Q718 z2b*6gSk@(o2pYCgI47E~=fqt3ijyyKS=xi=5s8@`7SbIck=DHt)!`Q>2F`*Gp0i%u zT<2B_aSRP=Yp1tF%sCR_b|`Dn6Q(TJWW!07oO8`a#gdL_>IiCkEdd>Adll zAeTUOT;Q)2D{df6@^(O2hKZsf02Zm%H@igwq1Hl9B7sEJ1rmWxXT(V>CB0#a3gF+) z9E<6l)&6Z=jP?$duX&Q#2VraGwEUMAZFkftuo=8pzT2`VhQk{>Kw zcIyXA(WQfhWHwm5LZ3YNXUN72qat{B#21u?h>aB}g^dvNtuGkZWS|-5mpAjgYuMFT zQF%Bh@+t7}(z+RNqADKq4!$)3V6%cN&9uE8!wR|sG+gVy56=VxBgC%XA4hIDc zc)${}2?d-Aq~Y*_(OPKfP7L4cC@g5Ty)wpOgb-d?;{v*HwQIXaP-!$HXRAC$!`%2t zK-38%Ic!bkjm|&6J=&=ZfgXEaexrEp?DOJ{j$a?o`x8dIE1p-_IGM1YQCILOyG zmDko+pH|EFF&2jYSML@EGKXXGS?rJm)~#C(Y1WNcP$Yf<}9rTPphHSn+^ zCski5hRqe)QDmFNUk9UW7QNVNLLrYPJ>d(QA!LUAI7(ql2)=8Zkce&CaBci!yaE-h zrG6xiFH!m6lA(iO`arD{>8(RGnOh@xHO|Ry%+HUu7TH2HM{I3@NhkqT=P=`%56`N|ipE(NqZ@5Kh={uCYtKRLO(` zcKNg!)BzL-vaww0b!se@Fc-pnyjL%RTy=?+eFWUTzI-Ya%q3%N19TEyQPuem> zF~3n#kwC`=sJZX)Rg3x1{deH2Tj(?ed9nX|n%zAQ1rFUK1rBMZ#9NEnge-d6_;}`- z8|R)PmTweORc}%IOL^1;P1?_*cHjIvbEm-oU>fVvJ`c(haU1n7TYVM_wlh+zsFO5z z`wl5KIs_i6#DX63(EhF{gVyL`PCxuqA)~DmI~zG>)5NQ8GaALWOlqS8&b9djDYge% z%`XHv+pQjwN=qq~>cT4Vmq3wzsM#_{e!IYnP1a~dXru6-M^ia%QO7p`XEH zq~ym)8?~1-MttpfjMbVi9q3lOoNA@DcThWp`PzwWzxLH(oNhBdvC1A?w>UUtNIl-^ zp!QJ3CFF`^*p^zQe*!iISf}^Lmu#l@&O4+bEP6&@YeQG;KFBtT-7vcniFGo5zi?os zUC&{fiTp+^(hnOt30_R-Jgl9jW9`(AcOUg&vJ1X=M%RzT-f1%SPMz#IjmF+7k4v96 zGl}WZMA%SS6}2`CP{%->Z{kc19<`%lu9zygQffzP09WFs{VQQ$ehFDZ_>wZdweW?WXFN8KTIEq-)Hgu+ZfSXiwVXB zlJ3N6FcX|!w;Oj_8|!+Se8bYG!(At$z8fVXb8e?~wGOCv7d<7iykRg%>;PgJBv!mUL&LKa~YfTApekWTQyVSwSh897j!;JTM!fGBdp1~c>_5HrZs zhxfGh;WyK6@qPH^^wIa>=h8>thaXEH>BCzrKBy0?d!m7Gi5fT+>tvUp9280|R;Zl{ z#M5--3+UEkYuVb#gP+`2<;LJN*ylA8-N}0cwvBSHkbFOK{}Ck*MD9PMZXJxv0 z)PMQnaui22Ev`+)@vP$h%NJ(_@jBtMbQ*7kmEBK#VP%YG-6K)*V`0ZW?dpiDp3yL$ zBBz&=b2h^BS5t1g~Z*PE@bPIsp-WM>*-h3o{sE2<8UDw?F&ds(~vn1y8W9lJr! zdZ*Ka*wRS=ZOu%`V;x48ha%3fS4XQ%-%gcDER>m}%ub-9wff5k{*wJoQSJK?ZbT5q zer&7AhY@7Yb#3^8nb@fg$YAnaq-oJ6HNN-+oj6F&04-JoN=u(y`w^w@=1V8dP^I$`Qu0+mm;6r^ z(+5@I?u!_S=f?xdeGDg9RdNq5x#i#_`7V*k@vD;W$*v9xdxS%PO#WQO&amZKmzDbg z{IhsTwU_UKE%<1m_Ir)4-^Fl-Kg4LE*XuZ~5*3m^r*%9T>iA16OTMgx#HXu0r4oLs z61ZQo(@LmM@Y5HPVtr?ug5Gg;n6Er@yEc9F%d^#h5*pATcw8Ixr3UbI$bwNgw+U>W({1tHO>k(YAqP66l^xT(T(EiBkY~D&oO3 zb}g_!OJ<;?oyq5$Nji)0M#9(>yUQ~!RB1CROoMLg_DxQTGD`ix{Q@h3_H z_#MmFe^0n~eFWad^7TiF?@Ray;e5io2^Z8$>|g-{@%;h+0OEHLUs%7WJ*o3>BM<%c zc{tI^*RLaf5aBh1iwG|wTuiu$a0%fP#Q}C-sFZM7-6by}uErsv9bCUZ#~w^~a%gym zsB{=&(&0P`Er?1-)Nj*4?lRjk-c`%X`1T8mI+E~F!lMYEB78aFWmI`I;q`ry_elAU2_~$CUM|8GEa;Ucf4vR}6ns$hLCFVgKIkAYuMI^VGf;MBc?DRn zE8rUff=W@qF#`o0Gf=?pfC6?06abq7wi6VvJD`A7kN6N;0+;~>!tQ=zQwbdBU9cn= z?jw=oFVD@aoHsubtNOMw!3BBVmN6sS8H{jqv7@{twM;x~zJliruEYx7UU91IUo9sO zmPhR_QIMaE+IQI{Xtv)E!xQ8@7;-e*bSV{1* zlcFiiTpXu21kLNjo%O?!#KAT~>rz#_xD6w z@bz*@t>SKsSo18_3crX~n5C8&{JZa|D3#7~XH4z85pL_D81*`>L9U`p2K5K;k+jm@ zeo!5Nw55jf2a0J>z>gyqP8^mAr7^3$!zN7rGBraSS;=IgF3S9g@>4uXm{a-7B+qLj ztWXshy_m6Wg>Rx4@JT?1Z7B~waC@@UVk-D9sZiB_H%e$cfA6)w_d$|OXdW2@pj-=h z<6oN7&aM47lc9X4b-yi-D;-UHKeg!*Vf=oJY%SIvRd-0ryx+7-MI754Qaykt&WR)? zk&RX%Ir}V2J3+$&LH>C4fZc`X3#eBp^X5nzE|Os&F*m+}N(_>@@%4(zwa+z*^z56v zS|M7qs}!O%yexzlDMW3tDYCk0$Emf)B7E#<66R?`@-uA%;tUHw9s?~X-FW35gEr+8 zS)tHCp7-PN$YbL}-VaY+pEgkbV*qk$r>DJv}R zk0n+a9iU&-k(VY}Nh;xLmEhEmGS5e$qlVh942nH=MSjXPfYQXGMO!G9!9rWu7W&x2 zqHM1&D~8G7IyRL|O%^9TjFe(!9+K0J`RCT#q5V=@ds%lgb#-;(YlDM@r;CwnSX6xp zk2LfQI{nNFw?g}F2E&hOo2J$ywtz9@dCf-!KoKm+ucL$`d~n?)s&^eKwB-If;vNPC zT*QDnSGq~uU4Y*XjdoiE+aj*h{Y>0}$)<-=enwY7hmhV)Br*y_jFV^!ZL0qgNHJpG z+e@^CK3w#OZq-)Ga6lupDf#Q|M4FtzCO?Ptr{wX+{|k$3ijrT7uGOwGuHFu(3BI|e z3>6bC`TEd8S;Vxp#kGptc3cN-3S$8$Z4^>+w+KG8fEM8m1#ae(E>&>kS70wW0?R$-oPJ?s*B`~lJY{?MfXXKKebTFi|$hbfej(G z69s|!zqJpa_USGQ=>%#~=_+I**(Q5WrmsX7GBaF!MD;*dabJ!uw8&;I9yu_u19}Zie0%mRE;1#40`Iy9%K!mw8I?F@g@mIq%!yr<;LX5O=5no}UQF z-$d?LQP>RfZw26QBlqjpw<56LMX>rbthT~*ua!|WIZ}!)HUKFGK#Bp7q6b80-=4l-U|PB;KJQzhihWFl^dx2DRRHhQq=WUr9Bb3KeWD8 zX@8E~AG5bA?Z!Obq+>crtm{d!AmX#4Lh=^|Rq|9+>FuO+_op-yKt7Si0qxIeoau@I z7#nD01-(q#Pa3Z&y3ZoR#qQ&pVd01Pln6sgp@vkcX-It{+<@?8en1Bu!rPz2hvM^BqX ztB#5dN8)AFMOQGeYc~J!l?{z5&_Z$GxVpz~fKe3 zIvO}?4>+Q+;^QU29dKU~Wj2v*iu`Se7dGw577monC-9wY7J=JrJ9k_YGeVv;eq##( zF$rTg#e~kiBC=Tz&VwMhUdt8##+XMDX$kjn+BfjeFcYN7z)citY!$cRCYn!7@MjHi z9h}O`#o$ZQyPx0LvDd2MR36RZfNe_2Nxs+UE6E<72^#K^Jpv!JM@bx>722b?h-Zg9 zf^a_z`N2{&R?^{n%YO*_r1V{hE+EjA0R{z9&_emv4udo$SWk!Co}w2Tr0lCo24i^I zj2A?%meDEc(?+NA*yv=-CmWnEmh=D&x~FOp9}F%Vpis9Tpa_W`I1Nzd^9J#i1MxBK zAC9v^it3Q)>p8L?s@o$&KUB*$R3(Lq4l4(kLWmXi4{hzsUvxD5MMuM5md{cs;eta; zapQ#7dM&Y*xNN*%Yg%I7p%umrw`inW+cl;P{(7tKxmaUyZ8SB?y3mx*(<`nMwX^b? z-oIs~&wI+a)7JRJziIJ7i+tXH%igD}e6|B7R+hHxo2byQr6Bp@yi%O_pyIp^oA*t{ z^;MQg>4qwOTl7f7){GwDl@eX(!GPfFh92HE&@;OBV+jnD2hx9RNT<$0s6u(d{~&W* z15;BZ*?Sy$y!ibqj~C)J#N&c^6Yvu&i_>hr9-qy(-)Hk}Zq3$LS%jto4Z7B5f1`7m zgEh9>-7~FgJMldAchOyhX20kzj@<<@alfwXareZm>lCoA!-yP}gu8@<8d=&3kOJc( z>GnI__hL8|*7@y}@;&SgQ3rfag$=MRAaYgBxCiF>yD<)1gm+$F7HcG3%C36tUNV*3 zy#PI$@)eGwsLNx2g#L=yU1{ghuZrE(7I_m3cJaP9$L<!%DVqauPcx6(i@cg4#fQPRwP+1&r+5C!@V`ICJi*-(qpLfDb=il_Kmptx z!sETMb>R1zLehWECJ||o9sp;<-1mJ)YXcqqa(nUs2&YrEFVP{HOy&e&`F=KEP+q8e z#h&humsMZxA2+Z}kd0Cgra|Q`svmG}6*w=K>aYi7Ev>%X7|8w9m~+%XIp;H#^q@X` zKwV#9Ngp6WekdpRv&JVGq6%v@LqS<2N)?8^$^b=AzP8ivg-1*otiR`jkjs%a<3v) zJC_gHPN_+)ooIbC%r~`@>OjXp@}M@XP)j8b#kxlVs7qP5J!Jc0Wp^8J^|&oD@<;k@ zM}`XF?}0?7T}> zITHe=QPOQE-ndH(K(SHG1T}{7ZlqbGr+zM^&j2>)Dg%4PIVnyn7lGR{z~BouE3(L@ zXBppHO>eRmPT&g~|3=#E%g%hk6HMa^ceKgNUL~ z>OmaKm(q}5#_@$6kd&Bb@`xE)Q=v1`H=aCVd&J?GgR61uI#Osy(g~3&&`ITUdYAF_ zl32A^F)ziu2_CXojbIb3dwk01JO^)@kTgFns~)*6qi%1RkdACHYNeIz(wK|_laAHj z_s2=Q^vq4nnpZ#Yvr^#J%nn{2C|YxFkEd`?88Z*l^c2ib=h0%XD`c~q=6*ERUJVUn z7%(2N$qm{4MCOx*M1D>#+9ZCs8to@-i8aj11{LyD1^G!2s9dsl)$H9EtZgxj+mci? zuj`Ik1W!vn#@=dfmtx%SnMkJ=D!(`0Jy$hdxXrLFfDMtHt^HWDvC3&~BSRcFMF?)P zwR|{scf_Y91V4=3$KnfX1eJ?W1G-Pdmt5pN88e1yi^r$nPLZOrL#f-=EzU9njDN~x z6PQN3`*dtJ+{Dd>Tb|&D05C18sr1jp04bjHIpiOO{}%h(X+0!20mlRO{R@)*l)!)Z z5Fb9wwp7mjJ55sP-;2Uc!eq0}?`1*VE!$L}y!(%u@I@Uh_(N(_+HQ$&&$2`xMMLv5 zuxJl0{kxO_X;WD#+=;2Wxa!mF8K&6yqG%;evsn*5&CL=cLOEU*{cNnwk~FD*_j!Bg zb9|sF$CsK*y{}Q~`M0=DJ3jw=|{sujVw@HqyMgDa~EYY2MUG zb5&ECZ#Ad+b|cLdO=-TrcT#>WLWZMfapiV|np2@@I>`N139T)&0g^W9j!x(i9yVpg)h@FSDiJpZ(JB z&td7OExlipP)onZtk513+tTkZlK=bt((f;@7D|<(Gn*1uxNMfX<2Y7Ve&U`D>6sx!{0DA(Yb1UNZS2nc*d389awz{2tAHsAZr)1 zCmc6;@Y=8B7?0hDvPwYeuszoFNJ0qNjI|>Qgl22p6sGU}5rzlfLRovMsCu?vduO_F zn?=~cWuigHVnIHA3N|6y+2vcYg0oa@Wt#2IdY#Uc%@6KFW$c49(RKoiCPEF6$FD~n}%Mv-HppE&ChfjSgECxKa397%Q<(Zo3TNPJhO<# zU>MFzZ_nTbMh^I*)BH2cj16nWL)lbrF~V0VZzc&^Jf`|ExEhxwdS(vvJXH^t3NXNj3I@vvMfajVngSkg1GP7}Nqz#;oPFp(?HqT8o{s=Q;Il`sYzoY~v*%(q5i)X` z>0DBrEwsOpJp^T$=pnb#+*$7IwY80NF}rZwZ5S^!pOdu?_fp2W*CZgEu(&Prsl%;1 z%`I1_mEGYs|Gdmk+;kw&%2a|On+K*c-W61S5wK`PnSkc2SX;}hMEfGWHf~j8nWTy2 zSq&&HQd$-38X39LKGX?%MR_JwNqV59SJSq45G*ZywvLBb^R zcQq|}MpBt(#ealZ@mU?*uHS}%CWC83_Xi_*`VX&!z2B8H{{DBq=&*LZiRVY^G&p-f zAv7s&97vP5qR{8zhw#5R7ez*Gp7%NVVXs}nHFfC4JT;xQ)}3#zf6gM5MZsCisDKg}MDMwEkK^z*jx4_7X$Bvz% z9@NWJ0oMVwX~3OrwU)`Onf8qXZX;3KO)>j3cn2z9Drm127qebDQ^{3RO7)j!^$+OY zzfIiOvbd@l9GtO0o3x$1B8bka7Gxj1SoQJ;*(X|5_s1t>I zYJCGC7L{}+;IhKjGfcofXFLEMtMxr9fr)Bh6R4XqP!TzrL9KErUISF(+k#4894_W2 zV|ouTR|INJNNT|4FSrF<{swpgcshlW4*>t;1&m~m^5+}R&-n5D%=3@uXEmPD9B4d0 z%Xo&ap7rCIpk+M&11+KeMP)L0K*Os{mWvp%ib{^tP9qZ_L*qbdiL{N3BQe zU|!#BmJ=JA?c*RdNhB$m`(a+wD8IsQ`zjyCj5zu=wq0iSUCUfL(K zn3rho*YHQ27tf(}?D6YSe4w4bfd#-OU;(rhMnsXg|ItjV!Zj@qBoq~LvCLp~0hOWG zkia2C&J=x@-9SU!DbLDbpv7>uiMw5+TANBUWafebp^Rms00$q=96@&Q!ut^e$Y2F! z$DJ|u>Y!jdO(#jJgCXSF=M$@KGpu?vjI_le$-!1IL^{}Jm;50tlon$E4Su-O-md_H z+`%Mo#)>7HL7LQ=m{kf*nAB007-Qq1NX6<4F9*>hnH*#lJ4#b^mm5#oAOWdGpxE&; zP9Qp{M7+>bUdhvDkC4=%ZnO@y3j~EBb-#?#{B+>SKvrFJqgZOE$}v5LNq#2ew6vN^ zQeDPjh-O|u^vR|*A?Nkf>~#|dXQ_^C;O?mG^Rn#o%Nw7UW}la2pO0>QUYvbilzm>& z_6fl&+!o?PMw!u?Yt>?5%ccmqxO)zfNgdN5e}TQ*W^lIFdTMA@t`s#iNl7y zM==ej7kt>gss7crv@+SdwRX-@4X)iEcUMi|$>b*HzV76&h#gvbVBb-DT5%39_=DZF zy564rE&a|q@$c#P%ukBhG%huJ+*GTn)yCs7hW@mVZhOX*QFmjjgsSEr;{F|`p<-#; zHjr!*?$5`cP;x~ zt#N&0a$8)VnQT$Y&#+B)yDmLWJ{s3IZA|Wn`#FQie+!e3g(%-X9`{d9J`tWP$tQJa z@>6j*Klf>sb60-g|FQQbaCa0{-hcP)e(tl}d!Ibn17WGY1W15{pb$V&=|~6>6i{>! z*BO0hoF|Ns7$Q0-K@d?WIVp{hg}r+xNNm z2|?oM|MP#jZ()coH}*t)TvY1r)&BA>}owR6tgKbyQY@U%dRaF=8b0<$dmj! zvSJZuM+P_7>*gNX^jY0#+uaSiIf>@3*Nryb-Kd)na&wbzwDs<0-DvOKExOU>yU*$7 zHf}zz8*RV4RX5sycbjgs0q=I*Jjl%#bfYbJU(}8E;N77cZNmGKZnO*U%ev7vysy+y z|L)Wu2@s^T-`(*I+nZq&AS3p8aA>PF-eh7g#(qVRrR@7E3A0IvcA##{=FK0FI=^;x zDjC8)5VmjLCtKzHH9|{1py|vH#o0e1q)_%_vG-4my&tT>-ai$4|4i)tbFud?#NNLY zNvLi{_G^G|dQ^Gf}B6}whkWRqN*z1t3xS7{z!&hJfv zF{^KBR!`U#)<|rd32@qGKV6tuWsb8zGB*$XMAdsqfGQIrJ(w7@RAd3sVi9D83%`O* z5j<)?ul=&YXdA^Mu^DSACTn}6>~)JNn2fbv)mp|Q(SaYTe2;Oap%(OH5Ax8=y$Z3# zVkq&$+{j#Q->L{h#pq%E_@oPOvX`fr2iqi7Do{^ZC1;;lm5a+N7yBxA?X8k6ER$Dx zTBs8Gvf-s)Q@iTr;yUVQJfbC=FmsU+93bBLysoeLea^Wvqo?EDx}asdR) zF6@Z+>>{GUaqNBG%HAJK7+(_SCnwnlVx-`uI#cz7G3@%G7c`RlTeQ$Q{IM4aD}WLLz#N9iLrEN|ap{=X+(J0>np??9(yb z=IS^g+oFATjmhx-a4KbZ&eQYA`$n3^=sdfNQ z$!=o*S!R1Fak4ulE}j2Ky;ZMn3!aJGe!(()(f+b$(0t)YW;3d`-zHz{khACqpiA(ozg$-Vk4<~4;seUjv-QV+3n2N*1DsX2^-d9L~WTvi|8p9yEE~z zdxo$dim4cIh5@sRjfS_5mG#ITzeHGXqLt+4|!wQf*=tvv{|b-Hd| z$IZa8go?X2TDhU%TE*=1ANT6Cyr~d{Y2GsLCzo>6@^F1H8EFoUVz^2hhE|Kmgun?0 zy=3(Qz1bjlhBxMa5?F?Q?ko@&y&P$)G_GDNLra?F(j3DY7+%pjO!sRrq$$Qz6F0D? z0$-83thLb9^kM3nOrjghT8lVrwydl}YXRUZ13dXjwEETA@^#i#=L>zET1u~T<`MC; zR41u2-G(|9Ef1f)EjbLetaFq*-@qwloy5`ZZD6R(8W<`gHW@#Kw?wpt%C;;jlbZw$ z+^TtSr?RPKWdv^z4V?a1mHm@%*@VhSrSJ)rZQXp1DzkHYvKid@h*zB46397=JKtK) zFUc*+TQ-L~i|Li=aHbx@R@=P+P_~``ifiuQY4_%3wR5d9@e@?paAnW$+ip^qwcLct zGC4CBZ4?{(Hf~u~2BJ1x*&%%^BXwCTn@|}CBK50`vpswj8PILGvgh@!jMQbV_Jqo| z(UNa(%d)aEKG<+&&+S_osmllw5;{iU)p@wO_o-}~va)&oDjQV=q30jmw=zRw#w8+b}lPhTvn#@(tG-7 zl?2b}ixpCrVan{r$`0~jD46R>Wo1t;E7M8xe{E$uOsH%}IV2P)OM41#EGL#1_GH;I z2|IRx?z>{5O2U%5thJ*rSPL!|0d%M4LPBZ^Uv)Mi_`8N&I4rHv%*#6*7(&`p%ey_w zJGMWEw>U-ge7mSj+p)ZxU*2t7-Z28&xAG;hD6I7s;UgZ0uiMKmpn~4cj*PR0w*CL^5wctG5?1F=0@a-$Ggc_n z$6ZAYuZILCd7Ax*hrF*?&=+(dpl*%c$^pr-9${cc^Jd)66e@vPr~f5f8D?eIRmqAf z&1IZ`$9O6fWA8S~>tn%71yHvi!d}b@om$4eN$k!88MCz^s-lOiJ9agHAB|S=cW`Zc zV6Lp&V!urJh-QTL$TNW>rR@+whr{@22JwFy-qqj3=9WmzC>mlVs4pYt3dEi1K-vpM zEIhy*76X$idzUx_9cUORTdX4jmhntW6Ii+ba@YuvbCQ~nv&6ePSja_EIUEo$^@4h^ z%v)0itSLnCT-#2qDY&S(ls15r(1k%;Kz}=3=|-LnHUpzlXbM(9C~#*Y=bE9(D@%ozGC50`h<`3}jk|EIDGh4=C=DVMT! zpT&N;qd0t9o@8f^oT)7|XJPS)WW8ET&#c~zNa`hyvR>De7fpXlK#SzHNZf05} zrc~ZSW59|x`G#RVNw8v`^Ju8TYLR;*EOtz5z8kS{RRxx~O#=2Hw~O03*WnT;3)puU zuJRq2ow40jft}`oof?1zxdIk<_6-2r2SoF(S$Jvtgc>}9@zE``Fd{{u za#%;k$QWZJE_OwaPSjIVb~sswHg2}QtjO2ohTHI8_Fb9plo3{YOIQu%VJ;809ICgH zA?nKw>i`7tU)vtE4p7hWgkxr)E)6r&tq0YmPvo1G0E3?tMQh88DfDxBA+{ex(2x^I zSO?v&HP_hwM5>F}KBbQv1`B;y3t0_=MJux~r!l@tv6}`BZ|EB!Ttq!$Xj)|sRf{wc z1zFhQ8oVM)mZ~EE>q3vf#|wdexixTUYSSpOw6)L}AbU(K^@xdjka%Fp`mL~pHbx0`-;!a$l)K5Q!i9B3)3PNZdDqVB}tE+HkGyN*_h+)g4Z1+D?1 zJ2;NYqE|xQ`2}$ee~W-de6NNfkr%CKZ3+IgU8+M^vHzk#SmmFb{c&}hbSN{z2K<#H z8u0AE3MjoD1L}|rs7)DAkCg$no;{?#`kNYU`Y$9azOI;TekZx|dy^~pl_CWHAgk~n zYx(*p`xD7A?m!s0{!GEyBei@>1PhE`pp0)*IY&ym;G6XLq>G*NxxL#qZ(^YPy-ZAU zPIy>1e~^vtkFndih$I$DsN@n`fvX z!(1Lrs@Utt!mCxFZRG`KDSTTB2c3VC~Z?(-gX_WH3L~K)P=gaNSL~~#FXLbLdC=IEJmIRp2!TIrWSbOGs_B|E)ICQNO-!~7M`pE zKq>J=;nsuaYXKzH`o}yie>g3FY@y|k&9(fonU+6hX!&DIs~>|}`~agYe$b&={fM>t z5oz(GrnQfUBCUNSTKYIvD<99$$_JhL(|i@P^5M49!bj7i-0nFXLwFW?%C5~;!42S@ zI@d`=9~bvgZM6drc;2Ly9%bGdEjrO!^cFSdB>j17 z>^8@NOBz)krV2xV9iyuT?He}>F$pVl8wU39E-)$jKj;@sYNUm$`06j$ob1&a?p~e$ z>ZYqc!twGG@;FX+W8MPw@Dt(2&CZT+v$7-IOd^M~hk}2v;Z?FPewlH01l38MZ}8eQ zL0=i_7ls?=vSK>Z!nW4E3^yoJ=2Uy6IFMB7U`LSuNSN;kCcW4I((Fhn3r7O#5zBPw zU`qK%>MWKcG)tdUHMCiJsSFaNNm{GTn7L+hDA!ab1vU7^gDJ{VYndTSE9dZ$xw>a}g{kIR zb-;2_OdD*rjETbRRD%d~2rLr`E6OyLn379s`*0atq7Ec?AkME-!9!v*=H7j#HeP9G z4$KD>rU}g~H^YW`e6eQ;#k1s$J)04Ou85;(c->x?aPVDr98JyMl+d>06L{`~gwFNm zgf4Jm0yn-TQI9++QIC9ULbrVzjw)jQ?Cl9CI9VURBcX>#C>Cy%9o~b!8RJfF zrlb?{nYsN;dvLRs)S5JRwoW$1Q-m;s%D|uX#Qpp|{X;Hq2epsRHy4U6nfEg5tFEibR7mqcps92&%7lSWFPWAfq z%NY><85aE)KzaqBy;5Vt|AD*z6_))saqO$au>a0Mwd3e_rt3}5R`Qi0gqD=Uf$VG> zG#usBv$PMMbl@{pKNH^4Sg=pOpD)AtKM(Bjk;Qb=`^G>vD1_*u4ts2F-c~D3h@;W8Mu? zO6nmA5vGM{FV1!+eGmTa$-k%YPeGse;@{Kw_jLX}gMWMD@{?-Rs8X`ojVH1-yQl~O zh<$A=?>B_$Ff_9pS_q=Bi3>?Q0|^Dv$G8yEOY&-Dg1oAYor;jarzkquMvIQP(XRI8 zVOTU#mYOJ|ZacVP2~cs?^hP!^&UQmZa0tQ$$=ZRb;L?OU zG(!Eq-~YqF{~s}chs)GR@!|(UK;~^1?6Au&+EO@2qMNB0{~B&pU)|NQ?-|*!qIEoK zfLl{lUe{`TQ?i8PQM_G?WIPJN$P!*kU}xmeT4^53T2v#75B7y1u|G@_np(Fe=naCD%^;CKd0K-7R$Pq&ELq(`qdQ{3 z)~UR&q1>8n81csCy|T*>9Az<{AqfwmV*p>;LCr9oj?i(p1!G#K=& zR@%@bT%e*xtRAtE{Gw3UwC+NW++Hr{yrF($6KhcKyIsRL0OZYAse8DnQIYpr&&>YRFX zCE0kpar}~vL-D%)C|2@628v(e)r6M>1hZePAA*&vXlSM=ln9=t?YjZN++7p93z%Cj z0<}!i=V)J2p6<)WSf0E`QmR|;VJ6)2U|Ne%e2unpfo77y4AxwsoDB2F+g2|0U~_GQ zID;HNEVs+vrvMbr7dh)7ApI! zlKU{!j)6YaK8ruV-?Gm>9Qy3TMW1CmOFx!Uvf})7vlOn1B};KvEU3U1aFv$LSjOP5 zNg1vXMvE=X;)?#dK=|FE7r%=(uD|}nqj!<-ueSLQfw)2BPMd(-nTqQb`YYinP)eJx z&;>ruYBO)Sirlv(nqd6G`9TQCAoiH3&;lYx;&i{m}(X&g1&Zp&J~s^Rrx zGnjC1{mSAEv1iDRZCJ9b^-GqgJNY7RLpI5Q;D*(4we@{nZC!>L_H4EFoK9QMRa@owex4e4z8ZXi8hoJ| zd{NQXi`CZmCwZH;UPoJ>v8?qIPpA@+C8;v?J`N#GrEr)65+tzr3_@9=Nq-}qCx!2x zY-rHO9E&O)KqL+P@)M6TD}aes!7qC+YyEhGV5A(oJ_#5=hNw_=NA^_r}6Dsfu@xmun$(5?) zs-pZ)sr*kT`8>+MmhzvntaaZ8i7;bwUVsQQJP{7>A;NwAi4f!8-@LabHd-tO+C{8W znEEsda0=V}+95i8ZGP<_9I{b>TV%jq!`t?fE~(!l3Ck^>1KLMYaosW(DB>yE$jUj% z{7PSPC2M4rX3I=K&g6q=!;GS)>kdjA*0JkYHMW=Di#b6)T4uws?J8))7(#+J+~2_4 zqYbMa0+9kc+VB!D`j-UP5Mok=aaEc?sS7K48GiW&Z>g$nrqGlIa6=38C>zZK^%9R4 zGu82tH>O}(n#88VfUYcjHSQPFgIPzW8ku$eK!4FPI}{?Nug#BoL^&@KGwNj__2(f9JxIw%|?x{j|WOmBF=Dp^f9V(NLNxdBi^;!aqfxtqov1v|_{5CRygD`wq z*H=x!tgBm_5Fy#U0HyuKpcw|&TgqXiYZ$83wm;N3J1qyBb66y^q2*i_L$dSGp|kTz z$SzSJznJkuBZds9ZiUN1q+79qK}`>9+As@0d1W=+GxxKx4w|hH1@sx2 z>GS{sl_-V&Gs+L5+AIvLfX$--m;bQ1De04vQZ>FL;AB(XP?8keIT?uhy{p)wE*#4 zEkNj?Pc7jc0`EN^9()1);-B1Db|?!Z2Q(j|h(i?z=Y@{g4XF;yn?=HN)YsVib*PUz z!Kt5zx`V?02gP{E_)1|Bhoxi%so}O#dFpV>8x4Z)N(oa$L3L(?hHp^;9s-POAQV8JX}KEb64@_ z;Eqc)B-N5>;uh{+)6(mRgf==)ScUZ19-FOI!lCwy+&?WR{^L-W;;@O@wz5y#Xm8LN zo zX#E}%F}!&ehts=hG1L*69M};==3(kPwhQxxoGbf6w`_UqW3il$$KA_iY=i02_OScs zeOq_Or2UIA;h^82gP~48_fq!~Citu~z5==LUb3QfZ%q$c>encxrT&I{<$ji|rf5l0 z{q$wD<86TaQX0WU-Ib-uleo3D$^TPXM57oh-j@0ssz`2xk_$Xkx1_vO6)D+QMB$;L zlT}0ZQei8sfvRdY4yZQ5@D00H>`R5#0_2 zHfykT`4@O&ERce3n@UwdNdx9PGSWb~w=XC#d%(hY0A*013<{J%f#Q{3Yq>`~Fr-+o z{kXO=8+R++iE1Nn?^jOT+|2du=OUu!$Q%T-P_wE?+j5JxPr^ld580Zx> z!o5y8^xmrxd?7W$z0uSN=ALz;vxOXWpIPe0vF`QDTVITuma4!-o$CJ-vKKCcakZG*0so3j2*{%UZeqUq-b-CI4lVJjdnDanCS9YFV<-L-kf>`>j|)8B6d(YW|kuH^*|$ zSn_uHQ=W{vkiCOZo^SzVIK^C>PBqsiHqHAXx3 zW{(Fne@DS*D#n)f*mEaxu^nfI5>NK$unp?|9sd4(%EJ*ZVX#sDvFvRBA;V73ctg(i zIYN+om;M$*&gmp;S)lcOjX9@76?zOm?J=lxpzwb7qLg*;J6(4G89~1>0uQM3hKPRu z(%^&{zbbEMIUVBb(zx?3)(t4$2ts`jj@|JZdQOEJI@!M9Zdrl52Os8zlMg=U>LA(W zgzcs2gYFCtbs+?SV;4gO0h_Yf|JtY7pkmWCn@KSNNY0K4q5!|7%}YS9UufTbvaLtZ9RA4`TenRUIvHH=U9)TooMrC*8F1=@f? zb`OvN+eIdT0FG?hA7{Y5h3=^xa`FH@QTOZupn$@*q~yMGk-iL1B~HJPixwIF4SEZPrx1SZ$fi$NJXzc%m7hQ2JNyIm<0Sm z=49$r0qNfQb%9wr?E(7s)wuBt_dsP;x; z!lO-68?@D$QXDRl?S!jzi2{8kc(B@GLLF663&pO?2BE=c4UIP#8YM5Fs$lVcRswXx zKTfWsdERT2+beXdv@2my)1s+}U9iOSVn9JLp`)>O67C1(fXID9`bDuad5+d32eYm{ zb-7F$^XP@Xp=EsS+n+W+sCEm}^kBZmaH^;3*W!-->;+zy{%dLWV6Q&$YwV^IzpmTY zdZCpet6LJ9uZJdn&Gcd7*D$y$*Bg8-{pUr09I@}E#ENF`S39JaQ3ZE{IeXDMLtKQYO3ZbNHLm)_6abat%^)}y({S_JF7_3`A*MLgmJQxTXT) zYf2DD48#!wal}Au1oPEMnJWuks`ZfT!ri(?;^Xzrx0pnAGBL$r7N(e z(^o}yAm=9pr^aV`5vUHCJZfuA(HBY;Qzlh=t|gTu|72IS!bw@JNikJq)lR}~)Z35S zE})hkZadEs%c?gKw=wxbfby$wn@s{PG&u)ncX8Vh6;i&sB;^z5wz_HgR+UB&&z4|M z+y;m}+_nJ_S64u!b65*>GOq@k$HQ%dpjzsq$S#6Zxb4a=vP&;5$zBiKR=0_so_e{B z86f^PHX@+~72GEJGHIUsoUmoN!#9#`2IRmw}Xu!6-;2#X$fCV+%1 zlaStW+MgL1&U={Q+mlO2=Bs7(m}der^z!TEqK9n|=pex(Mw2aheBTngTTwV0?#r68 z1XC}Geyfwcl{miz?nSBVbTE$R{364e)Hz;CoZBJ<-@yg8?}=DS<-VsEH2iB>u)hGg zQ+GSKPTg(jnjzeQyTin|ud!?E)0boSB}5>Xn^7&;l!FId^Dc(3@5b)yeDuATJ5*}S zHQzu9VZ)goQ$($(y7rUKul z$vT&jmum9FU2^DztdIj`<6BN9&7S9X|lI>aLyjk4}==EQLbX_pt3vTm2OZP zB5wwz+z6t(YgD1uK$LPniNSR@Z~>VQj!4yHQ;)Rmd(y0>W@!7KH0zWAX(fEj9D;WE zRcgFbLl))OX>UW=8@Ok(=xY@eU;V40kSVHw;_X!^(4wi-w|4=>opE2vcsxKE zqf`|Sk4+%7_>w>nD-ei78zB&fS3;nM6M?)H$g_e7Q_h$!Vt z_-ADg7&HK6^7DXLr84+s3?P;H67?`qhZ6x4nJJiQVnb7II_iUv#aCZwk;c=$D{lg9xCHyNBqQoI1aT)8esC0xbjt;;=WqA^-a*h za1BpNkO!9=kkG>YGCl;Q+nAm3;P%MFZ#C&E#yRV@BQ!&J2S{wa!nha%t>0#Zda91T zWm9~J%C3ggn(vC$X?;l=mNryUYWxMBz(}GtBUU^@(&p(vdcTBiQo+orBr4lDAA*2l zkbeN?Jf(c~<1V#Aa~Hv2Mr_YmpvY$7dg{aP*feY$7Y#%d1-m1eMSCd3sSCd41ln(0ynfTfPqwc|=Bx(grtbuMY^jK?!fds%N z!uh}hX{{+xXM<}oh6ONfaP5yX)(%RP{Y#0lA%k?tARRJDz3ldo4tV?-=29e{Sv`-h z5$FInSPrva-uh(hJ13A$NN?~SH`(T$kf&p3ClIyHflfK(c}451Ix(8(YS(PIx7GIJ zjrHnN@plMIv}7#o?5{<6L|{V=+#I|${H-;R?$@tuiT3U05P4dS0}5)6m^swx?d+$K zk>jpUfjnH^34OS{qt;_*C$%hDwrHxiGTW!&A%PA>w4LT3Y1z)p*sHoTEAHBoIqY_k zI>eW@ThexSnfF_O%pwG9%a^$)w>bcIU*h)3{Xxc03&y=z+bkK-wBgHt#ipU5-IK)> z>g?TNu2Frrcz1#ap|}{n3}h7`A0^)a3b$2UKLy5#M@){HhtZOUHJC?@)o+po?c&6*X`V}X9_$q#PKJ~UA+0Nm{|jG&0|~u zmUC+E-PRw@p+9`3=AXO!!x{94ulW9OPSGFcDPz$ejw<^D_7$-S=eJk8!#ww1>kjh! zc&|=vSCwi>%Kf-IPba#s*5!S42QFvzb_Y_6g26(Y%B{%uxxP0LD69ErTJt0h<6(Mn zzH-wA;?>y&H5Q;QR9Nqe6ddJZc`?3Uuh$b~AGeoFYD?qn1GS|@7*H&l4=O^ux`!M0&LlE~*)bh&|=N-q!Pu5txx-!5}8&{zB z&9hI{@}sj)E9Uss7U_o2?#B|^onQo?sR4`vy6;Lb_k1=@d4#51Uvn4o?PqJ;smV8h z`leDZvSUIO+?|Ju{lkquS5pDrudgj&^0W}JZ`RrNVSB0j0OzId<8G*-#9Ycb@$Fk` z?t?X!f<6bFhTA0!M(CcOSA%cmk0Ox~wM_cMSv4snTS^vgr4`KXO)D2-yVfw_f0J(v zx)Y_K&n5#UtGla}a73{&2+?XxQ{7|$d;Kjp8C)1P8DO^5>}*Agp!O!CqyQ-anXewN zWF3QP5Nk?g8-tcKcMTvnxC39A@YU|c*PR=QFM4A?d@1=K17CLrd@=X)`1)dhd?}ge z%oFgni;lH35;wR5U)u;@^Lp`h-$vq#0|)xyOUeHj__{CP>%IbCtYY@#FC~`&R!jcc zskuXmFYd-Nrf2xQFn3~|{i~92Uz2eAx@6TiB%kh*z`I*Q>YIg-x<}&aTM~2!G{23I z;Se1=kT9a8uX#~Y=k^=^c2MufvLR^mLicq`Gw%p`>0LG1oY-J*`eBOt;J&Hhg;)M# z4sN!yC6!g{rXp+V?na`?X!b3J95ZH7bh&YxO1{eb7m|iiGQ!n|Z_KmjOq&pKa6;t9 zlvt=4l)DLCwP91^p9!woN*4b}E1(I5t2WCAO3A9O+8BBN7hSb)ExD(3ypnWMGFwPJ zye0SS)+7+E0o>5t7C2Be98MG`FlAzB+Jb}M;h^t`gT5;c`kpxG`{JMkAYg*5bziqUO`G>AH++ST2}c8{-7}l-MaY8zAsqTlA)NXg5W;cIB|>y)v^o~&dHRl} zT7O95XElkn?qohn*23kiSv4=Cy^qw8+rJ>!Bg!T2z#Q{SFd(Y~2RRF7#y$Ye0P(N+ zq3h~|sX9kZ?Qf<2%9narQJAZb4n_mDB(4ue7EyE2at@7L#DP>AQwVAJJ^a#nsyf{e zI`hBKN%cnCN8h3xMP$RV<|UAV9F#LyE$6$FmZLYzi2m4B&S3L`vYer6IrwHx0*~Hk zg}JMop-MT!)p9V|Oj3^CC~8bsIm4B5MylmtYMG=Qz0s0&S2-hS#MW4Q$jh+vfhHGEa|5A z;~Y-O{LUAQ*|8|{A();s!8le|L7D5EZcAuTX3it@(P1;B4$wFaXamNIG!#po!Njea zjWWnZd}y{*Ge}aSK0_b05VNlmf&xGoC-qjQnLn6m=3z6<{GO?fch(s+7zC4G5s3{Z zUq6uJ!|CL-1CWE+B6Zg;01@s6Unf@9V?oCvR0$oBdg!n$0Uc&5pi7;g^XpL_8aZ1F zDy=ipL4gXd5L=aUhjF^xDnL9;p9+CMco+p7r5yztkYbx7(ER@{wCP<_XAB=?_7Z?FuCUE8-Hz8+Ivt*$DuW+VWF#BQbf1NXd zuZJ@yh3+4kGqFxBf-k!`(~PtI@GNF5Ia4b=e_PJ{+N7MRH+?u$3+p9(a?J-mWae)- zA!kx^AI|)mDI8LNgb~5;_mY{w*Tb2ULiZ2NnP2b2nO~m_&tk@s@>+KM+j1sGo=Ie; z-t^&2d1#dIol$b;fA!@|jp7QMC^0|C06CP^dj`lw8X&1mO5q}NXbnR9&dE@;kwS8j z`HK01yHFoNUxA4B11bWE>QKbph1P2V;!WU-p0*d7F6Kw zNrvrWxVFlOeIADE<}fzk61&=c&0y2! z03`R0#2wFx!(7&}cgdZQV4~5I;vHI2v}dCE7P&^;$%%V2*}0(LC1DemnIMnGg3C&p zQrkMAmRT1olKXTmBQdYkFv&(WGC`&lE!MX5)V=5TP04=tLKa%e*qbcHrr%?1opW#Y zFktEmn|@zUnu2L)$1agNHJ1i zFt45f%wvQd^)On%(P7pC6?0<=cF(kVwawOvY;;;8)1Y8_7dQ_Ac}Rb^rTZE52y4~l?cwb<$Vc&JH;OC z!;E+Ap`!+EDk($%u;5$9fC6*(`cP36MdYIQRbW0Bm^qw)iqGkW`Jw>x`5xwr3z*O8 zRP8PdFu%Wm*_ZD>5w57Llb?sPLwmU8xbM&&fnaMKX-0bL&ZFi_t8KYxvbKDHFNZwt zb*oO*aF=wq<3phxANK9|NYRcVxAE966K+|jG`@M?luP$`0B@<_c35>ls6eqWB%@^)YeF&p6D zU?sfTx?1y53Np_RTj^0P zSIBsMAmc3s8C9_oZO2h(1tTomu%}o%(msr6H&+h}b(MV%0W6?Ck4uBZ&#hb+Mvd$? zyN+bH+jThm0wI|hF~G+cAvV%8yF+;SlJN3n;pHpB%bmi@R|~v+O?dgb0$O>z+>y91 zdAxiXyhQE}W8%79JzA7fqU9^SXt^_><*OboUn|h^l?qzE7|`I>cX{B75o z_IE9l4SG6NL`L)XU<(`@ksg2;fnGo4R`mLj(WjC9 z*sdelPwdJnsOa@R^NT&(HlNzcs`o?qsc7~y(d_4<*)K$vUy5eG63u>H(Ci`6>^BKr z_yE&vwL%;m5h(0u1=YC!MM1W%MdY7%5$>10g!^?Mod4WCR1of$6~g^05big92}j*O zB}4y31_F~h0_oiU!!S@?I9}qoB zkyA;3h6J(}w}6#?e&6Zbn~VsYQ^ z>8L^dCjAe-SFqUT-+1-=cj_G-_4`kuXZ*Kic7HB!w0XQfUD1 z{L-K~9Vc}w)GNuSm$-XZH$-O!h~DENI;()_T@{Gl8z6dL0TF;uzW+pk@X*Q6!)f}! zXF9{m@tI28ktKESHfVpvFmg`H9Q{1LIY%FL$I&^v(ujsTJM9-q=Yq115K4!S4Eq-r z0As2-zsyv3{sUo-h;!!x2f=Sbz|>_eHY0@ia@Ck}9J#{+?nM;*KQcWDor*S(0uI$} z%|CS)dsu@r&c%Y2$$s#1gCjx!L3c?BN`RLS4c_;c@R|-#7ldIhzt#@xIf>p}dJ5eg z%TMQ0D~!*%|DeC$2v4C8i3_^*><lL`#b%S%A1^#dgK_Y_*& zyc_aIfKo=hw6jzo|)ZGVV2;z^iRhVWS z)1*_lw*^*pH7P)k~qc7 z=pya^YP_4I{a>S4gV!q7;Ahf&dz2Dwue^p>Q0{5~y+)1h%P!aYwg+~(c2aivblJ4f zem=DJf2M4Ihh45gW}?cQj!_zZyxj+=>_{=mrimw6)i}K>vZK}x=USX-Rh(w^`sSNq zysOfs?nDl z=wX`QRdAtwm1x@l0*buF^`?SI>=yB*mZcO~%7lV$7Zu+WIUYNq__Sbw@{0|Cx`|$) zJsr?|2FE0D*}Gv*&w0bGz70ge0nN@uM{@F{ zgG{;TAXqLsZntyMN$ATPW;xlfVTOVg4Li&ISq<|NJ)ptSl?ODrZ0;{}{bdV((Rs(b z>w8h`(`PsGt^Gv-Z=ci16*m6BMy`nJ2Q_j9>pr-VE2j2y8@U3lKCh8)=P#0JJfYDv z@ks$AsWu+lmBoKhlPdBkxJjFY9R)dQ^G#eC`kL%@wCg&qS|2#pU*701Z}696gu=A> zpZ@ZCe|eq194&;V&DZ+NT7NmpU)K18>|Wy!vRf_mrUa6)k@84?jM)+X@@jwi4}Uq_ zUsn3dxWD|nzr4y{{>@+h)nERPzr504IG{i$r2UJ({IkEj++SYiFE90%m-x$z{pCge za+tro&|ePqmw)n?7x>Hb{pApU0rjd6vgiVlbb(~LKtNp}r!LS~7uZ0T{rv^@(G$$1 z3#_FJjHZimUn;KE(?0$JE9(iy)+P5Bx`3YO5V}0wU!LYKd-=;#{pBhCvZuf7;V--U z%MyRt&0lu)mnR!5nU-8Q_HO)@(;n)ax0Kcg2OI8uECEs1LeM!%@lo=6BJw>KCA42a zKGMU2kb=1u@%VH+r$Ucbg8^JE~CYennX0c1=7{1j7lz(6Lw0+t$ znh!*MJuNZF_XnYp8H6+7=Oa;@OqKt+91sKKP{ul8q5w)oD)ATT8=eU~^JMJ&^3R?$ z8NN=S_mJ#MTs6Mb8AK-u***+!|xR%J$1epk_hIXcMo` z*8GLfrPX?5K3S;Sm3Gla?JGxaK#hP;+k#5eCf3Db7r8HV*2lhBTM}uh3@LL*xCLKd z3b(9}eL3WX*}tM&6mFVQS*jI)gZfjiEY`*XLq}dU8zTdQtO|8GrLR90T>R7J>edzz%=Zs?VRa67=82($Al@^z%q!6CuW%65`oKIo&NRC^M_? zYs_~u?S=Z79fZZP#5xG8$*?_zHwLiJWF+oi_>8`V)03yu@V`uG_!im!sNs)x8omx& zsGWaxoOu3C>I}!LGn}A)@aCcmoTx7F7Tju>iV-ihZ1}W(l^e}E*eFN&&8Tr z6kf&6hU&-e=nbM;ZwlQ;nxn)7`z0qk5NoVoJ?{IgJ590L$}U)Px{wr(!xAlfPs1v4 zING=DrgockF>RWiq@zkazslflN0q!y#Cp4kb+QQfj)G$E6va+SbIsBbT4im`qKGQS zG{(qeaBAl)6voSlowcV)CcdjvuT1C0F7H-t?-9G4Aqd_p2+k}jKTDOrkBn4~x?fg4 z(y#Ijk?XHKI%{~+dWOLV% zULibxQbyb>Q?q+;M0>d;fV}Nneh?4?yzUVY6s%c}U1s{r41byKFVmzjbfj-Ns#L}l zzdwCmW=Dy+&QW4JspmYdlf-7zVB+OW*qu(QX=Rj#LRD-|XCiHmmetMaMA+Iio726f zkKx>RBZ~E?lTJ3_G_hGSWp*76q8;j_mM{lh4CPv0ng(?BWROj?qPhnoZh5GZhTlC= z5`<6FHp;VsCU`Y)?10}Qk20lEv|R9qzIR$67_hzx0}xE>OJPz=Y;`C++K0kSDgW0g zJhd-{NiAV6DctN!VFc@@STozTYacs-T{^h~?JzY8=+H}h0>tDW6L75tshC`pyuKx1PmbPacA6wfy zA43N>#jCb7+MW5PT_|GdsrcxwBPiM=X{C{*(!P7AFU`_MecJh7tJE4G zx$J8`-!8sZg~zg5qov1D%~+=z25C*UsV%hU?MYHQHh$y4vD-xX;+5@q9vW^2l$lf< zQ;ypypyS^h>*DgezO_EerFgmVF)uk?x*+j6T)ZG5I8|gbAjEHe(uFsn2j|gPJwH~H z-gqgnpm8}uc1b57T$H5r*n3HtUvmPQy9ETOqVuEPE_FmJ8bIsOzT=t}rOh*)`Qys` z{P@|JF68{dWN!li@jDR!MOp&{nYK7lj!+>s-MCcKjBwiQV$Q5}gHYniGj5FXCyzZFQ&ZF! z7IWac9W{Pli(8_~ozcp6Le|8vHFg2(*T^Hy_5Cuxwu3mtu&fTxzsU877M8gI)Y;)&lXlI4~v+Il%XYBTX{3hwhmAxFcF zgu9k&R=*P4z;_r&A+J{7M}>t{Dr4CuiyRdWpo3qQ)Ew_1l^yF#+f{chqOZ^i=5c}V z9b}z9?xtw&%9KQBZ&?FXwI$&fZ%Je0WfGG&OByPYLM4qWhvT}C?N+vH;JPLd=FnT? z-IFm&rzmN+V@n~ux;GblzMt#-+6+1impPt4MV`riF5-BS++sd5VZ!_)sXyN4eubtj z8ZV(BKUokHjhCcqc2DtRFnEIPf;m|#t+1y68`OFVAe9d$6fn?4KT?@kO|cJzJG6uZ z$uZE^wea{N%@TJAKYpC#{gD1S1d=eA*s^@ zH)yg3>S}6VHi8)?k5QhDFNl!baGaPR$`^E=X?T?HQa8zZ%7nygmVG}Jo~v>bz^eNEq3;Y*ULMNcr>S0uzxzBhd( zF7jU|ruh^kh7hI#MFoBU&Jv8ryGh)RWVZ=)t9uf=NGcF=Sv|mWSe9Uif$ntA3Eu;A z_4^LpJ(p5_Chxq1PtZ@mH{tJ(C5x|&9+5F@??Us?%JQ`I_SWoxIR<|jIl zG#HvRk^>qP7HBZ>m}7~Pq(FMBvsf}dtLr=z<+`8K~%@)g+Mw%XKwLssi&UH3W4)4FTsK zU4>Q<8p7tLu7(sU0rIiZ5WpE5gc&y@uNu%%Lke}IxKSFg6O##=YRUMiW0P$ zPrLI0pYKUt3DObDK?yoZ%2r&}f)_YyTgg~$~uYym!)@vm9 zJ<|A@cIOZY1whoC@2Tl{0(x<-=>h7nOKLljuv18dxMm*)Y4gPy2CC^Tf|CCF^(Qonad$n?+!HvG|EkN=aj>yvM%wdC03 zjo|R1*mP9Sig^oIO;)A(07J!s=&Uy_^+PE4?=J3J`9j#uH?JkKQ3)Ol~5f{m0myxJ*ezEK2Pt21s&`u z5#@#VzD$IaW;9gH6vX@uFNhg0k^?m^A>1(gYdSDsQWqk{sQlNejE7>c(0bh$LCEn0 zDDqAUn$=)`?Ldble~|fz#He(6DZnqMZ^y^9kuopWnCEK8(2)lZx%?Q3sU*K=LiU5o z><9JB{s>!eOSr(3uOF4$YFB|m-aBk0^`I5da+o*p=ymruNzN%CoiaJ&oX%%?=hxP= zw}9NC{goL{9^Byag$xZ_FxZ4ljbBV1h~cdf{-x@r7rN%hCC_&RQSkE&mp_s0qX5a`oz`w!gcE0BH{{tu#aBXo|MN1o~!vGK;%o=%(R=O!rW(^3nmb0N);9nXZPe#r+kl#NMdHsP*y^P zNN&_h^W5m^V{OIdyQ$sgV0XNYNkTJh?$@+uxfZ`!%q3=BzI6T@(eAJ^@iMuz-I7k! zgxRbkO*fiZRO;!*h1?n^z&(MiK8wmXMre7q0N4cyl4K4?)R)X49`QWtVal3rrY3TU z=Hjh<$eW|B;I>x&nayB1n(to}T%wL(r~4>!s7uAlLz?3nICY9S6j<^@3#-$tYIY2J z({na$`p--{i3tHqstgmWQXCZANwG$9!>w^Ft=U+K;PIchS;BuEd_xQF*MKXk5-4mS&7<|#mD(ge>)(4xr!Wzy&>0}6AxSq=K7grKVRgwX8O+UXk{ zSV*ladt#YJ6Mg$j!KdC7(#mcnuF5dF*IaW6l9%hOC5*^5H+@O%XslvZ#Mljb5&Ka! zt9cojkHSQ@_oSX{CcPj!`JPd};ZmYz%Xs3!eY&}kq!I(NQig+9S$Zzo@=wQW~y0vI(-G`}yC!<)KTCfw_xH;;_O>$P1129XBa%GhQ=J=ydFZONv)qh8I)7lo_y*ISSR$JXE2l%}%|O=oDHbpp>Y6gwz1 z4NEw2@V&X!3~FA_j7^F&~4W_y&JID3*w0vMqHq7}1qn+=-zP8MxM^1%@u1Yi-vWq@{xdN%uBoqucW_IT> z2LZw2I++UPsmP*(a z;L#e#ve~u0S)}09aRl;=6WVhQn(JzF+f%*mWU93I8jXDjbNcYoDBH}jLChEUYnvxVw8Z(wAdv{b z%eKj1p3Q^xvTbE?9s)qm92kQqFo)+RqkNRj6~sds&dq~vu4fK_o$UtR(1yM=!PVcO z$3rfE1Ff6&0yX*Ixn{i0ulKFllGfO&&K&WAI^eD*&A`;&Zr}y9tXJvJ4Cv|h6BDX_gV3D}6+dycahGb2| zDU3B`8u*o`ZJD;-EBUgPcct;IEaqKl)Pa*&nZ~46CBGabq;^+IDsX959QmOlPC$wj zIb)5f*se_Wph%3;A*Q-f6p7Kxm);Y-u|3N)IaH2I+hg8LY+`GWcuAB&0ry0QbBe&` z?WwXBW915OJT0_VJ5_5R$QvnRrdg=_Xc_oFk!6BK3s9mp5tyd>JA*WXuK`UJjJKzX zxn90|6dNI?+Ik3YN!)w)DAV2iXwM~4j;tKUBiZn89ZLi7)O>1@W*qC&HY?J+K4$qA zD9z&^HuL#*Dbgz6?pdT&zGXb;5V4K>STVsLyS~@PQR8!QTv1QD)+Sjfz=EvtghU&rf_;d|dXh!- z7jn>{nL5xH&Co|0Rt5&7Vw3<7X8Eb!A*npNgF@KwxRZ7= zp9Iq9_*HC{p0$i8UoI|kKN=bzdnFgM(%n;!M~>~XdSmG|UrsbM)CdgWLv0R+?2M1P z(@0CVvUBn<0IgwZl?&^tO#Mb+(GfA^fZ>339H}+~ZUk1Wd$o4Nt7b^y5g87!)*^E` zglIK?AB|S=cW`Zc#KMhY$CWev2%UUHLo6M8r5idB`ObNXmS~z*e;&ldx_CW@-;grU;ji2#kS6QB6Sxm{@@^hz`O0iQH(8YMc2}p6WpvBe#5Su;BBo+SoX)IT9t?ssizN7{poyzP;(G!dPExR0#XwR-(kQh z21Y?aU;u<<_l>$F8ubA_Mf; zdcmB!`c)Klc=crC5J~CK!4s|{h#nh=j)NK0j|4nrC{4mu_{pu_)Q@8OlMDN+vWbIu&l@~`!X&dk^h5u~a|(3fon z%wncoQQ>keY{Pk)3ey!?z;CIOqLF(Hg?j6-R7&;{_+|gFc7jAifO`=cp&^D zTzUGqlEemNWP;NJ3Nn`<5 zJDH5l4;fR*PKWz*4r+VKkrYL%8aod1$2%ZzYS#TwQ{nYw@kgGTBfka|sn z5gN?4u^DNj5*HKbwnYt-LOz8ZIH6JoNuc&42U5xAQXm3rNE@*4 z&)`p2+kBe!2swYz3Bb%8#u3&f1nOe6BB3D~dmp1OtGk-zYEd|3T!F;=cB2qWX>)5adgZ;U~H?DD1QiS4O2t9+50 zdMU;+bV9PRJ4nskf)CO)ZW>C~6!zD?xZ0i$RTfRe2?rY)X^uQ5_6C zZ4wO3WQRf}+wPNOo6*DwR&rc{GISp>P!$6px?pU9u`9E-_CU#8dFL&oWx@8(@{NPz z5rCrB{*wSPy*Ww8*|l%EPoIdi{U$-$G@+`5y8{_pi<)?+bdWe1cE*}hCn=yMKGc%F z4M=G>;@ShxRu@;Nmi8u54_lB@qA(;gFqPP{ogj2CZ2)XB5NNiBNOrDxT*&}RG}!89sBImWZ$e8MIs3AHQ>N5jKzH$g?($fGHf&41 zFyDnE{4UiT?=v7E&nLEZB z7-_fqMuhVvI(ZHvqN|WJORkznffKoEu_qSNZNpqum*uU5r-Hg3LAhiS)S3J8G-f|6 zkL{8ug%A*C*Ri~R57MkdS=yHFrN#4@a(StwE zR+Pw**Ut}wUR#trrBm{t6?JQ+sP&biPNArWm;^qKqVBE~^_9m})V3a~J!#;U2GyU7 zqNLw0h#oE;HMw07{i=BM*!Xer$gA)Bd&9;hG~rHGHz#kx->cs3eS4omd$+b0UG(li zP~YCOi$~wy(~C#n-nSQzwD)*_Z|%KQB->DXJCp5}*No__a|Jp!jf%# z-TN!DRj7N(6R!JN1jyQG)@-e45=Sd^pxvn3cc5PtyyiR5Pl`w1fqqat`VREX;*k#Y z6@UL29mq50e#GwDcqA=Xh_8U8U7s+L_9ar-#@D?}0mWwfPVr>w)+n+dx~6EiN5d7x zBdo=(h2>pQe~(8!aLCYCi38pP6{kr=B=bwr|eggr#lQ z-2QQ}*S5{=%DUT6n7!sTw|yLSZ_}Jtk|^8MBx*OeA?hwx1Uz$L{Up!lNR8x}$F_0xv?N!LQn zwHZ^B#c!x-ozFrf_{GJY*!6&UiAA<3FV^{R1sn2a)j2FL%3zc!Y@!yeS9BUFp8{6iGFoR#sVpahk!5~enFUy_tKz*ssP8clYa3A)WWIK7 zO`IIPzIHk27402rv#k>62)V;&LzKapVJgWD?aKynZRvnCKuE=+84#&{bJE3>N>W45 ztZC+JG=Fd7OEnMERc(Kq5s0;CyPTRizAZ$la|3vF2ySiG(2A|G16zWsA3j@7M&_JT zWQYp$7G-N6+`ZnO#oZk^7Y0)l?^sz{$^-+8Y<|lh8xzVu)XJYn`3Kn@-g3UG z`QEbOYud@zG(V$-k-W|-CJ-nxDx*@_y!?@O-W28Eixl@GzgG7*+5ITpvCbFi%@mvhf%F4akkF-8tv z8r=K_EpiK`2M9Q&jxP$pRIIIE<8!355aMd-m6BO}*2Y1V>IML^D0RS>O5YuzkHBg9 znTdc0DN0aNXFaayly8Iy!FSPpQ+A zTHTA_G4qs~D2kZDn1LUMI*5dW3Lba1T<1%xuguf6?LpBVKLa@#u>)LP#5~-z{YD;c zY`CFGfCq5tO2&uk zV1lvZOr$R%wHhm~Gw@k|l?FM_zivuf-t^9Ms7<(G+2bUPpOtq$gFTaP&< zhpjo@do}^X;Ml5Q#PU_>TdexNXzHOl9Nz-tsYct1l2D(?V``HGhn*!v*@;g_CKH>t zZyQdM&=V(8W79qd-l6I3TK-0SCi6x6w_+NWjP4w5z0KmqGu>v3w`we2JlfiF`^}rP zwwTwRHg*1j`rMJ>v2AB>H!x!`8%mQoJMJ)j3bzSMn3m3n#&9!W0r53EB!UkT2#5w}_s4vq{o7CmknlejK;bIYyUhboH+xV@HKnIkxHosc5 z3RVs2`synRugI9C0b<|;FgXk)xEvG();SfUrse-Kp=j7vq_ceAlRk@d0xXv4`BV~E zrtc&)NFe-BXnGQ!3dH5aFw@#~nZKxzu~{q4J?V2uZM_zrgQr+29_wjJHuGB?2O*j-$E8f#k_*ui?B8^OIR)or6FRIP{*wtg# zJ2Y2>t!=LOaLq^7Vf4ibRG9LeM#DEStw$ZT;0|g2)1gdaihi`20C>bjXXYz znOAd*=MMfgB7%1tzUjLRKhne5flS#GzhOA$ukEfc@ z`2l}lKv0w(`!9;*TrxkpPc0kc{RtrY8*TF)zr^(!Z56_1{7rxlN$Zf`9ff#EoR zUshJk*u$Ls^s#s*tm%~+uXzeR+C;k(6PSd-pD6n{s!A8zxSvZkk`npByBkKMqfsqM z2kL`E!!t%2O#~Q%&B!IMF3C7*L^XpIbZEj%TC>mK-TP>ATD{~o#H)sb{DtuN7CX>$Q0`S?d&x&La`3jd&l`K{aR% zb7d68$TVEOwv(=lyxj;V#PVc#pd|cq)n1%-C$yK{L6ruX|B``(%YFwWwnLH$e`G>Q z!~OUh1CnX4fTVVnzz;avZrUQJ_Di$3mYhsmtjsCZoQa#FG8NTOWlqf#a{Bq6F;yyu z7rG169*r63-iRS&OsH%b&cXq;MISL&D7_|NM_}GI_)Oe1RWzMKgwGl19swkB&a}FG z=P`WFB(I^0P|^XP`r2k&6%Ml_^yGhFc{R^71tfG7IXbDJ00*{Q;zI)5JJ4hPUvBS z4;}vfDVh>l@LyE3)y1`$oGg}Dp()ADO#?8MVW<*d3aC-k>XGANgY(^}U>gw_V^zGd zp?uTfO?%Np{g{t+tNO8FkQPixNRe;gR z{+doOvjf`94rtTe3{_p%#8)vzf(!`)BJ_Uio6_XVj+9#OEjp4p+?5j5i;&`-Hv<%P z6A#01;)hQkaI$!Z^Ihd#h|*c2Q$ZSvGR>9F24H|{JUECl*4tM%CWYSe490z%vrvAa zn6(+&WfZ{FgXXn@p_Y4vPF46#JH1Jk5K?vUkIa`SlsdeLc~aeGT-pV8AVp{{#A`|k zDqlNUnR7Ocrbp}~VSDR}7Lf{6I3@5)u)8EGoK&`M`NDz07e1_6lIpYI^8kcom#!*VPR^)S?jR&?4xRGJEQnticDss@89c3LBvbm>5=w8d^c$LUF(upvwF=BYU$fjnTySn0f515m(+B6I zN_{un1ma>Zr`Z7kjLf0ELdxT7Z>Oc8ACY3qRs|Ldlo!t%QMNz*2PgwBRx{iDvgg z#IBmM`jOjAo{4&ab`I>s3&t@?Mmm>ulEgO75det5XF$TbU~VxAHC3I%CtMV=7DmxN z7cTQVy-E5M9+!X*t}~N2 zQACPJy^}W+TQ&e%v{vDd$9ZD1A_}}BgMxZM&$nUpH8xg@ZP_Fg1*^%GyNy8cgC;eC z;&$;BxaGBdr9rz!#WG)C_m`U~8N2%>ENT0yajy+j0}fdqsJy3j#&DCj&WI0ul1ysO z6KI|1qfOR2HYs;n$3m`J=Q+x@e|qTaLie*w3wG<0chLMxSCqNIWCM-%KqV z`5huA;??^neD@I_M`J?okWLbMg($CeWc}&%irDuGZSo-gk7@%N*7Yo$pa8Y{4RRjT z8f{&tHR>qV8k^pzZJ{+>%GQVli*{&frD%bV!NDTER(w^n@(qClF|i61d8D3L&nUiP zG)TNlLLSRb7w)6RT4Yy{P7&L#IT1k}Hp+i@?oCLPA?|jilUcW-M8AR?<+HUc9BElt z0`!DGYgt(8c7%M80MebvI^XWJKuzFiIfGV(N{w|x zal?kAF~6)?2(sd;9;(gZ7O^0Krs_RRLNx`^f~+L8q?Lp`2+=_eA%qB{R-6r~9OM;) zH5+gA;F6t~e2+*!)Vz!k-fZg~CbKxpLWLxhZ8_Pfq#63~!YIn0vC4!X3MauX_-^Y} zSO@HL%DR`Gje-n`fJ#PLJ?~)z1-)qI^);&}tq)PI`UGoxnAoC;uNYSWeWj`6L!lxn zA$&pCi?W91WHsP3VCAzDUjd(6p;;q-#mSvWBI3f)FtEem;85LTN4FS<4*A~u2{A;b zP=N>xtn`c^F#BAsccbA2mlZm&)EtU{h+%OBJn|vLWkZ$PvOZpwuZ#D!4OYI1ib>X1 z02gV1!z-Pv8Zb$l75lhSlx|(^aTQ1Ym4u&AR0|zAv6!g`1Ny$2cqG^-Y;FR=D0xT` z6=7oH;s68|Awl4~DxGuE7sF;98-_M)8jJDKSPPc9TT2)u0(3EQNvw=;LD8yPxeAv6 zHWIN9`{9IUP55kAw8?R_3?vhshQUsCd(lf9K%*7Z9#Q@RPK)X1A*Cq2%0MVtRjOv# zUKI%S5gmt2&_Zu3)#O?$=-*6Hoz50Du8k+mKJ`J==1*E#eGli6+MMtIviC0Vbya2F z@JVuVZQ7>XF9mih(gf0z^q!_AG`-P6X=57-$R#;B=Oj5aIVYS;(;(860u}`UKi&Zq zfl(B6aAX|3jG`28gN_P1C^|C2>%i#i1?%XHj3WL1|7Wdd?{#($p;c$z-#5Q+L%R05 zJ!`FJJ?puxwbya?+Nsj`x5<=jt(VzX=WI9|>S7p)dXIHyI3G+R5r*Vy95bg6ujJ37 zazKzlse`JBJ6XEX_h^OOo@@>gNXO?yNcxBV2i8ZE78FCCCdvm+Pw~=wEI3$Ev%}#JDtPUjL`_VZS;)+E2 z!Gl#|w>uSZbEBzH3ZZdl_spxn8zv{pU6FOmfP3U6kH`Qnna~eCpHx_THDC`^CxAE)?@c2}Za&x`iEQ^qCyW=TGDmWX)!mikW20el|@7u8b&l z`6APvlqW`N{oXz!}YMhz@kRzWZTF zrtVLF5NXp)&Q1=)VIu`Jb!;gB+IllWv zrk!Ad69Mlez&n}M0q-axl7gqI`F_dN$1xTR6m{o#)nuk3CyS^sc5-W#CE3iPUJRjUr24vUq_8I_R=w2!?R zUdf3|XK)H-F4VkPwgBRg4)Wv8yy}maLd~MGjhk+~X;9B01!W#8z3DV0AfSPE58i94 z?on?hRTa1jkW$0p&4Orcf+Ewz+pI<8mZlIBn5V1eM7n?c0Pt3cA>c<<*$S4lxy4mZ zHsN0A6AIlY6mf|Kj)I^)HttQ|0pf~mhK2}QnIY3*4u-NWKww}jb`&q6>#i$!Gtk|f z)Y(9eHM6@Sk6!_+l#1fRAqJUz)$|!WQE`lS9MOb}RYPb(oM<{4m4KgPc>&uj@AxhF zoswfcx@Q73;RaL(O(z>P9Yr+F6f_-e&~z-&gu7zB6VHVk5)(8F*Q^IA4x08p^e3Zf z@?&4Xq9SiQLNu{r2u;&@lR%v}OD?6F)%~$b-bw`|Xu>@eOz2kQFnHm@!m4Ee?H*{y zs3o9ESygtG^T)AS4Ebb`JP(f9BgZ45gsGmxqiXzYWKN`#^dx(Nu&AjQRP)#%mn79# z@c8qmi}H)@vzlmi6-H3K`XHWL`}g8N&>sMSTM+D|>_k9iMhdu+UrJcfe#?qN$sP|C z{hlyDa-}uenf33?!j!{;$^jood$<4@a=9eEXAMD#AIXgn_raRxKg9Hc-~ z5ZU<0!cz!hD2e&%ch8ovO_l5DTB{_>xImK}7dSm(Lx%#tl{eguDFTQ#KqW4O2lY}$ zLkY*!?U>eOL^ZV4YDiC5<099gW;T5W<|i+1M)$=_!3$5JTSPqhfeijM7fxsvD=M#L zqo7PUEGrn)Tnp@0UV9DTSK!|&JLPD;LSHMc#cx@8`%tdt+H2;ra!`(a&_vT7@^8ci z`Xud{d#{J`Gwq^^ifaYe^krN{@n(>XmmN?lKe~^D;LF_Tjn{*d;l%NcMoXm>Li&w! zDpzA<NQ6J)ody4|Ln;!~zP#|}Oq0i2y`K@RaH zw}_Z}Rj3Cl@v0^s=zg4QUAl)(VS7Z1R#X3wvjp~cg0QRSMbQ(QDPD9E(7+C*vpk;X zRWYTqv=aRYxG;P#=Nv`x!zB0>9_X7l(hXrOFeie#6>-Sm%IY z8oqkO0A?wgL3p4WW_w_qFf|6$zs+Df~Gn3 z06q*a@Y>C6tk#l4YuZYY)W67jKkB3+nRlg$)z@kGHpH=f@%mdX^|gq~bFk@6E( zk7N@&P;66rG#wN}nS3FgL9t{|l#y+PY%V@jnzkXHAKo&!5q*qj3h8(umDG}{Tdo z0iP)5a=?q1xBc_dd9P^t81vYDZ#-QXmZJHwR3be{qz_}D{Kp$e0ZbmKNF`a?B0HHH z8_7gt3-uy1FzmV-W9WZF<-x(h% zruscJJr>UuyzC(6ynhr8U@qnpkNq5MeA952F<5-6|i*k=|mojI9nVcW$jD}p(L`P zODx<>Hj_xLJER;jo7$B~k;u4ky%8?k@-Q)*W4Y{DDmOAAt0t8!UryT2r!q+lBt9^L zeq=#q6YNep=MAP(U^yUFuoF@edY*Fdk4A*dVm)zLPqIYpp!__uu=;eZjTH-h2`n)~ zt=<|TIS@4IM`ym(%Z{-`QqQ9h{Y0IIo20$pJEw%&X024lF<%_F}gXAH(RH2w75AnSC zU;zoNV(HqTArA@@95AP!=m*O%pdBX5Wn`Ei$Q1LJ&g{(Y5U|BDz@aR%Tn9}iQsB|T z?Xa%F>TI7tN!f9(>Y;ePPv~3NcOq1+z(PU8!}FMJpjmjo z;qL+?CV-3#%NuG?xiJX7JDLK@*$E$v5m-v_h9Af}i~AgQXDXMM1w~HFNwMu|rI@~K zvrQ@b*4VykxIUFygJrTB#EMsgV_5(xn*^MT%)cPMYi(+*FkB+?k!dspBM`MQotiC! zrK*6h0gx+qcJ_!gxd`tUh(Li{CS2rX4Ysed+EF}oDcG?V=071nQJ4|b1)cIH&mId))gtA~22|?Lh>Z)Rzsu%JtRDkzEb{Ek5IBL97o*vzr8h}(kLZPlrI5K^WZPl}rsI*SG<4>h%6;mx$t2z3>bXEBY z`oeYTw-_wYAWd*=*XXv1JXH-};;$i9*u?IU5kEb@DU}(BLnz6T>J$=5aQy(ipqRK3 z%_eusa@3r!i7uFC~u?CvN&nQ!Z1w|j! z79TM@Z~)q1c085T_-L^J4GooSdM6YFqe=Fq!6HKHe@=!;BOkxaN-M2C@W3UJ~ z5UaI8lLwnYN5oRIwg>3TsV|CIpwOdT3!A2bRD*RVvJ>)63_ozLB;<|w4~)cjbD-(u zKqjVaDw8b^4U6QXxTgk0)q&a&L6U)qy$|J9NXsYpV6ksB7A(gaByP#Um`Npt1q7)V zVU1+Rx1nf!WIR40#<>wbT$0phDY3z7Ffb3JvMEG))&La26&Gm^eJu`4ga%?>N(b$1 zO^s!9g-wuInZ(2xFw8L}(}@CYQoKh5-wF*goas7_1b8F1|n@8z$zm zDJXdxx!!%ADdHk5CwxZd7bB||9HPN1ZJ>8xq2F3&eNwtVCgj{F{Dl)|bRm+0;g8f<0ws#C znH@$KAE2df*as=zG!Bfiu2J928i^5hC!uu?z~M5OhNhQ;tH$tu!_?p&nV;GP;?-1W zt62X~L0&-u;yu(onh!W6R!e)=YO2=dCz4u_xp3H&oVmT!ya z;4_2sWT(|j2YfR<>kWf(labPlrput1QVfrzp&=&0`LP7y1j0H2QsL;zL3V)*Xp1Ft z@$vY`k+ItZfCxI3&7)(RQ{#3SZB50;;1DrWud^2T(HUQE_p*pE!gH@w8dn`LR2(doazB%jl^BwNhKE%N)`k{4$v{ZPOu<|+L z@-cjJ5OW_Q!tDmtD3t26Ky#_lcy0%TO5ZU0)HepB7wgWrTo_tISeBu9Q-p_cdD)zp zByg#ppPJatsp^u#Tu&SvS+iNilH$9-q$M51MX7;qG&@RlC6(Ek&Sf*S^q|$VS1~DD zT)NoU{L+nVWE=BXP?J(&mKp1f2P<#viE5ZNTzoV}1svwS(v~c*Z0-4C6 zzX%Eq4Ba8jTYdyaO)A;y4HOGZfP!UGunz-K#F-o!VINS_c1a|>H_w8d=O;_kc7oso z7o8hB5g=DA1kpMS)1-k+1+)Nn9GIh2gU8i&YF>66#vGuE*VgAg!`Tt&L8hBV&yXrb z`X-Xp-(p^~bQ1kcrs+r|!==76j;dI=#Y`?WBFYE|iAd~Uokh(d_zq21*;AiyS;O74 zdkZbzMP|3f!NMRA1DwF~KQ8b@5D;PghZ0>sxULUCF{fjjM}#I*Bk;T>JLzoU77ZPT z6RlojgB}p8x)|@?={11BE@CO6Tnb>Ot?-~ zi~`n12}mtkT=4orMIQkZ;ACaW4$zS4Jg(S)BFgXqLrEAgr$8K(N>xG!FcmvZWiO0IOTgh{& zpu#JKc`};{$_OkeQv>u8FcmVzF;5Jlu%D0%hLDhG>aH8jj0gW2Ry~;U5*B~cu6{?35 zYm=@FqH;$nHAcU%vTe|5#?&cLB54f_LxdLDJP~Zx@DX}oR3tcBU?(*YQ9wGW$_&A~ z19w7hkW9(!o?xfOkOT*c4hx$S3j>zKdT~_H(lBNPD9QTAgfytHi8=?Fk>viXuz}1F zc9TJMa6!Ylq3*h_b}{f&MgQ~q8!S7PfsYMi?*sZ5bl_e!z=e^J2@Jw2#HJ*-h^0HK z{Mc;}F>{kNRj>(;Ekf&?5-TY`2imL=Us4}tEQAu~75fYrrNw3jKL1?Ov@mBac8e3> zBop5DEOy_9df-pUCQDLNTLy#pTJYu}!^MKcttk;!$>Jzi!UT-yP_0*{^v>ZyDL6#kIgO#?#wn~8#8!VKLe#M7IKa|M=sUc|q$g?y6A>3m;&BGuet z6f_wOSsVDI^i5_=d%nVOhw(HuTBCTF3MvMKvBNV4v+k;5HpZs4!~Xi~^7v|OIGSDX zh;X#_K!R+1(74IOe7X--q^zJIny1at>_Zki!vK$uNTl1i1U4pHy8IQ~yxQ0mTL!UH z-RfBb&o9~4;!&iGn9_^X8!APr=T zvzdkkyUu+Ml6(tE#@Z#;NY%0+C%cTue1z(Jc#Ik9G}dy?r)#mioOYWhvc-AU zIApCP&RDUv{_TLKs7oyTRQ>SB% zv!B>T2u|!_ERH@3zL|gt%}L`~k?;hWsmMU$IRXU;2aN&SkU_yl15^?SA~@7~(MhR6 zGwG0OtzLWwI>j=+A4)r0gefFU9J6LN;te$2dJk$)-=jVaPU{jV7@(PdZl%GyM!5(N zW&vh0)H!pK5dJ2XiFp@b!qb=!F~9nqbr18CV=%0BAcdL3oGBBRdB9M;G0`FX@x^Ud zOLb_2e6hLVq=FbUo?`3(VG`;STwj1(Q^#?$#>xo zFlW?=9x8U)wCSdWq0QxEkbMx((8WxCfazvaw8iflml-BrcHHGy6We9edpDuW!*G8M@UYAlT;d9jJq{nFu3;I7*~Pwu^?36S5kEaIq1u8{&H>WW8jG z0&LVCQS~LhHDK)BTx9Gk*}{aN$UinqWVo7&U5}gSiYq{uho*oPH<8M>Vt*3+0w+!B zWlm5ifl`kMG^U-lgfYH3A)>J4%x=Q!ILry`0_3(CZ=ei9lq~E`vfsvXq|2q-4y0K+ zZ|6fgF6@JS1Nyk_TWHR=w8((XQJ`jF@-*8x%j6|o#5nMabEx^27=^wskl{4_BigYn zGv+%rWov_H47tN0orF)(BpxZn$gqT9%zT1WXkjy(GwE__k#4wcot=!Fe^OAG_=cIQFdD6ns@I z3Q7~n(DTcsO(7c`u{`k8aXdRdn(x<|)EWG(UEyrTfXNLNslsESPmGxX1pZm4v+RlN z%InA!Hws_QU;8ky*KffFaumm}Ak`o^SPBkwU=PIKuN|eg*P?4gq?+hZ7LF-SwapfH zsn?S?wa{X-}HaI>a-Twq6C%lGqG#YA7WSm0UUf#RTeT1AI9T$MfwQ@9_>0&FfG zZ|&zn;IX_--)fi*oqCoP^FRt0m+)mSEUprtxtVI{gfbw*oQ%z-X=_t?9#-3ib*DVc zqiU`zSIhOn%edB_5Yn_B5FqAMctbc3ZDDz8$!!@7V;D*FSnNpo>1*P-9KPMaz_jEh z81$*!Ko;&3P1>3oqP~|i=7FYycUouDAt_Ao0kR_{3ASQlf}Z_zi@73r2^OP_0*eMB z2E^{7*s8(SwPX1U^mSz$|2_VJ^5=2>O!mJH!STl(nLonLfuS&Kykh5|e6lYRZSn1? zLKaRetB;q~Sx3DQ_E&tu`Umi|wFDQ8=lfK^ z(hJs}G`OJ7VDu2_n^8p2MXZ2K0q~n)QPR_K9ol=RRTz+(Rna(LwP#5uQ+1npqi zG*hi|%xpU~D(OY1VIw$uP8}P_#Q!PSC^Gwy6I{k{K95YmPn7i$RSL!^K`YoSo%7c1 zCsM~h=L}p}GgPR;%m-VR^M4*(S|VhPjf|?;?%y>ADw3HtTQNwbGl_}{snUQzb;~l? zJXtjc5JDUDRD6(>hnBWx1P6hQsnBnZu8PPIJ;;2;P{@v9lp`>F6J(?KumU}AZt>1i zDifM%Ziy`*JG0C(=53Ml{#hKDU^h7QemN%4XKj|Qv%~e<@f{XKV*koRGSHSg&Hj>r ztE?YekaFS{JEzVkKbUekf#&x}HbB$?28NJQU!AO7qA8CtioxfvW6+~}gh{l1d$LY< zWODS6o1-HX|M0{?Bd{O&;52C_8IzNSKFtgB09?=}UyWNI4H`$fjGw5IVrmL<{`5PP zSg?F7sP&M?XqFRftXLe!K)dsy`{j$+DjGu8{OlO?bF^t#8aRND7xWq@=+F`Sf!R38 zFNLE)AX@HH8<|MqPes*_p(&n;x6^It$Ia%t<7waEqZu=#A^SZRtb5tgS00O1isg2J zIk#&iA+$&MIxsUFH1!m&+Awa=5hVb4W~tw%a>hN2)oEU^YXR*oDP(F=WYq?}*G|xA zQImna7uh>uPQ&o<3U+qoAiZDHYz+_7kT>ON5Cv$6$rRIa;1`x%R^qHtF+s&(yI5a* z>oGz@OdQA{WTbL|-ePl0bfAq^BAp9KlrmzAwS=$@T$9-A=v1yAR$?f!mm#NP=}D26 zE&}Hm3W}usmcgwhN>j7nK0XXtv=Hvwe8IG`Wsq6W)Rbg`Hv#GDg6xKKL`6WAa}I~K zJr2QjD0ewZo(#{;47pyrd^aB0hH8dnT;r(~6scyT)MY~682kw!&0dnaXqzMv5GanJ zQVN3uky^*HB}XoI0t?&_QU{Lp%i{1B_Qk{wCpc;eW=)A8G>0C{0VKO+D~>ynm8J)_ zXU>wOMN*o_wz2H|bXkDhediH*>6qg%l+!t;2G81=#cD)g+`@ILkZ+3#B#T}gPaM3z zP`rMuMtpe-NWtBTg73f0SgkrGGcKA8NQ^{+if9pZIO=Pz z@Y-+oUCjP^kp2bMHnyf@UM>0i7^VAF*s{<;nUMf>F|WLn7NR5Y`Kt~E8NkwVJ3v6- zAhry@4MvqAaccxt8b0nS7y`tc3du<|>yO5G@o^~(X-uW{^B8RiSn$P;P|qlihMTr! zJZy=ZaWXEdV8L2KmM(XIABEn6^C=-oE1S;FP~btNDKa1DY+NLCUU`t?3+)JVRlZWXrUiG57EYtP}p9^XyfEDZbM#r#z z{DXPO5X}l>HP)3`@<#x{R)hM0d9lb#OvHA=2&8G1fJDa5gYFU|1w+9~v zXne$eR4c1^yA)evsv7|tHXc=$mIyHjHGUh_(uJ2E3s*zHq--=xhY@TQ+VUYeRcgZ? zA}QH2Dh7_q7H4glG0Arl@@)igYxYipO_P$%DY|tt^NShm>fu|;JTyu{z}5H&}OMVwh6C!?sbt_~ja*28&X9dJ>K3c&A& z{Kf^}I)*YjDGOWRQq=EM@*286YKJcR}w-G z2UkH50BNjJ!%F1zxUwfF4+?(}<6et<*89-gn{y5O3$Tk_!nTA2CFhxhTlV;PP0tS0ndE9b< zuXU&^$VuzKnhj9FHpgLC4RfoOR<)|fK@n>^3iaSzB1qQaKB;;D1cX%sv>UDss?=o_ zCMBkxGA5A^TE{3RQNRMMo$s(}yV4A+He3og7?*FsIW|lfw2FjbZpy`|3sF?~UhVB> zo2-;$i$mPj9LeIOF!!@%^#u^oPs7Wl0OcFYk*e zGpU9KP!5AC*ZmT)rQX;-`n(xD3fV;4PF#MI%kyX;+<6!`FR0cg2jQAzx$4btT4;1%oY>gah21 z3m!G6J0>XGc~OHY2-lC?tiYD6$4$Nw6!9d!Hwq#W8!qPXzxUNX1Yb}8NgqxZ6tHvb zA!uxKc07oPre`>eB5;jy^lqfE(li@xk_|yk+)jMOK^M3V2sbtq@#SPswxGG3ethbL z=>Q~g)UAWb1^0YVSourPokI};OZt${$V279L*XK)D4^p_kE^eAhSr58Y3?4$W0w*o zdBc^_Dz_COV$n~ts*=VlQp7jcIqyoIn8;&$mh@2p|R>vfYLc0m$^a$Fbpw z?^)qYEo|kTP5h=tGi6-Z2!er!9c6S0L$IT;%B_qthk7^~z?#NP6cZ7i7dX4UZTw&k zYC^V%8?LA{0Vu3kVdVpC)fNfoi725-0VfGh>d^9~mkgp&AX_C>G%WFnW%x}2*MH~EPV$6Mx%C|D7>W~zzRKydj*nLHb7{g zW4g@8y?7B)E4`r4JxpZ)pd4E^5NIIjSB?GJcCtUFuk3~@&T+dlB47ee!t+)3VxGYw z50MB=`D_8_B;loi4@j?BC@6o0sz5mc&chEqHd;PM&S!a@GDF%?hItx3qv@8{ZsWOY zO=ETYZmN{$AHIuAmLM45l;`1nrYmd4FnmAFx8M8}t~2Pn@^NjOEEB8Q;WPuh9sa>K zvP9^*E8sZ>*<-VU7Zu>l1%)E3tw3r4azQGXTM_8P0Owqt-9`OD)zU8T;Vjs&#i4^j z$1A{Tw1^cxtu0cX0xUdWz3TXpqoJYv7@Ib_79@Wn)t5<)V`E#)Dp4EgjFLS`n}{V3 zjjkk#N+C{qVzJ9X-5qIuI+h8$ofN2X0eH<2O6pQI_2D`M=u$>YaRLU^-zRzqPz$KDgapjmHyaqraz(vMil}%2_+h4Sh%yx>WKI-- zqa5E#fCrP2w>VbZ`Ll#RiejXnIr}4zc_Kh4&CM|=S0WiO)=MtRFqkh{sI~({nJXq_ znjyN0X#7)3i78 zMsVYjIW6Ng=TekgG)`Nn($nK&FER9*eY+LJ5bz=KM=P=T&5=J)#Mnu)CJLy9 z5fsku#UKL6@>Q~r@I0;ol@BWVL~3!RjKQst%?zf8zzlOKejyXxKCYA>x4VyU zAOvEJ9}e;wTDU+wGE9SEh2Zb_t0)w=14mPG5r=WS19kSgI6dBMcb6anxV=iuY?U7R z9l&&0!Ol^?W__6hRM&3x;rMLx*3|qKf8>U8><7$#F>X}ro;;Z8D2{A&m1M&Fl5ZWQ z6Y82pSB0a3J@ZxUHXX-FaS|6 z28d{Zfm&y&7+XZZFO`l7a(g?D;EWb10Bk6z#zUL#&d-<~9+^y;g1zzqYneF~mShM^ zm|!rGzyfa`iVulKiu;kFjTittNQ9#WI48uWm@c}h>}W`Rt8T{NEZ`S4f!$+nL*~Ye zl!L6acz3?7HEjs!fWe6kBVY9UNBpI`_`;V`-d*v6f8$H>$vOm$3kRg~4%Xqmn) z8K4{|oDAE9aKlWCSJd2df=wYkn`|u`%%;7I8nEp_C3GEguV0zitF$c>l(`E!sRnny ze&X97gMp%~&DR6EdbOMI9*Af*^yPbBJiJL)gYnQQuMQ2&x3nn;Jx4SH%OIf~fyu{{ zJ8`NsiH|@^$yUmPR#om1x*b6v%gii^f=XoRe2Xnk4Fm38G0drAdQeuTE@^c(LQ)8Z zuax_2Ls^{9Ey&~S!YZ40Na7lJRtxxK+NX0;2NyS(R%+K_+j1Fvwys}WIHnjrKmZ^d zsWz7spb>M|8}!POyS5;#=o7&ln7g;Y8b>DjpwXGT1l7z5Qg}NiK2_C>yj3JpeU6XI z`c5JJ#DwoNnAKFHo7u!e#u>wry`gNIIYg10kRc7>a942vH}8(lUyw>9mM&brJUOsD zmFQTws0}<4z8UQF!A6_ED7G-xE>$EBC$G6EfcNeB^hw1{ZiBMY!G7lhZ?G5y+%o}x z^S>an{%af9Jy(s5!p9D9h9%$_J2!}MwT>NX!J5cuQFe|ngJcis8YQ@0+=^k2OD%MX40 zieLOY)BpLZTQ2+Z!hxrm?mqe9G(PcyE);B+45VRqK%c^;iJ$`Rih$pN>G6#WoqLGJ zQo}BW;X1M{1!;qe&*iFqTEi1^sv)?|WZ@NyO0O<(yAd%r#%<(kM?7Gc@WEL}6vU043q20I9tbwqAsL6Oy;b#)YznRv(TSqCc3Rec9ae>A^NAbe>9G0kNt|-rts?0XgehP>JFO&Tdx48N zl--O^z05HT(Rr~+&&qkNhTD}EEu_9nS;~|0BNH&m{Qj12-tcSmpgG)ri=Ye&O+cj< z1Wy*m%v9n2za!%B_D2w87fv{vWjWw&5O4To*!ZS6t>)5f-V`m@0LQ61%ASKUf6ci* z`4<{1{bu$PB8;V6Np5J3YO3nK#fhzFQ!(~B0Jvdqt}V4Qk&JO8Ds-2*-PVLWgR9EkmRr7v ztZ+C{%uTVB1wlDr!{D5%t*E#DtfocH1-66Ri}LIjkz0uQ^v2$S80s6jK<15g}iVVA`Nc8oh*Py=ha@2Ew8QPS7A|Xe{s<5QaI&e7iQL!l&-e&Tj16GyGFxhPl(5Jy zD=U0%O3(4iUY=RT)T9fzgHg-tLG=raI;P2T!-s9BOA|S_CJfvkyqK}F$)KmGgnfep1idBz z44HX>egT!aK46)x4ab|js@ecw~;EvsT%~5c*uWi~?HZ$S- z7uRzKjU2@6lu{Rwtuyq9lLh~=T#PBh32m!E7xO==H$JC6KfRUevBjI3!2COpB!vat-_}EqKfM(34<)!;4cGCP~|IjR8 z48`G<+GhI@0M+SJ`A7Y|tK7q^5o z6P)tM;}-*laV0Zo*{~OUeg(N`oSkcp-VgQxtAn2hb3W{scNVkUa#8jIg+ptwb3qkd zJNR)s+SPJ15vs9}vHV3z;;9W_z!o8~l3F+6cnwb8LkR$T#K*WM4qady4saxJJ$3me z{q9lUDc=yby$AE#m2JQWGMF#@I15`%=594yXH?ACuK*ImMP5EH77O9_n;b0mesfiu z$>Qk}e4zm?jMHrw3K#_wCWyMFs2RXNT$|&l zB6rQ=t4iJ=B@{{<0lLSf{c8Zfv(xae{>wqUJk>-a3Lbo;)p7TkeK)X;a_A2bJ}mtS zCTfSg`G{VD;4?`s6LsIh;fKaI5*!!-&2bD0>%sc0>5-w8E#G@$Oo0~(Gi$W##Du-B z%3ucHq01*S%`LKx2$K~KQkpva0U@FVy=B*Ng%`dR6%PzQE7;_9OKY zEm;};hp>3reMeWJWudDw<)#T94&vB>u3#>qfrk-91`$I4p^aQlPF(bFxGUM*^173} zrwT4_+7)p{pOA*^M}ga!kKl~Bv@_RFBGPNcd3%{fj#3k-i{y`Krp|(!nP3^nM8WNY z5n?@aW68Mz3zis$j5dHVsRyOPCq2?BF^LQP zRVyon*<~pJBe!oQLoP!fK?Q>q=eSPZpl}n;sF7ymfD_!__;@KGJfEyf=&QLUM8p)& zQ+|wXKCkZbF5qqCP}%9O>)*O=&AQFKeOuPA-?VY_y1q4AF5KKpzLm%I893XBJL##+ zid2IUEGJ}41Q3kZsTH3g+ixHJYGg9@ljf{3ILP*3O5mI(85|;9DW!TVlqdg_PT49# zwlQ14hpYuff0VeOwRJUUtURYGLw_t*7KUeJHaBj?a{~%P$G|hk_~8M@)=Qq{|Ky+Y zXkSF4B+vksiSF8OhW(E4n`L;C%z15G>tPf}%P>R_wDVnLrA(a|l8U1wYaP#Q^o}xB}mo?Su@2Y})qPl-){;i85R+ zH%A{>;t;i#-Qf@dsV_KzqYR&3_`mi{B?|n4M}f6hrZY~900GwkPe7|dF8zWg6x{4m zB1eEzYV_vlzS%s(Ho5=Hq403x7gFTxBivN-3sye4@aIi<`#cYssK$W~%5M26p>nMK zia&S<&F?S^T@WikE}5^9$q;ja7_$dX^s-P@r_E^1%#h9r-{x_X(qtbIWIGn?ITXmI zKLkyE83W`(HH2+Hq@bUJ2eaklaoY_;h`eS*tewEfGiPcpz(<3|=Z|qVtLoX}%?-vp zSLM5Lm!kbNE*k}LxwqbP!H8y40?=yebCH`LJ`_&ShBg5o8&rH}B4yo{{D_{K)flR< z6aKah&xD#&Q}V4mSR!^#tSTyA4rr|MGc>`byO6aY6CaoG3?YjT8yy!En&zRxW*)JX zO&uCua?c<7gAYllla+V_S_B+6X5^=nta6N4#y=wa`Ub9?slePBYn4P8@Kr>Vp&AZI zc8G3UF9Uh1tX<=;4)6zkm}10!f9-QI!73IQxg3XM3^Tc-R!+x|fXxL9<~NayVPbp0 zt5?h}i=nL$a9RssCx8xDp*i|M28FeabC`12&MrK&DgwOll1<}?BiF$y)dd=yn+gPl z7B$=>jblR8RPDX4I1@d@pMB%PHFp}CwZjc5uxZn9*g;Va;t_rrU_m&CLAKcuSyf=0 zVf;oN2<5HI#Y@x6DF+sug=4jdLjh^Zp&Ezgl-KVpcvo-J3T3-4YLz;6ZRqU3!^-== zcYnNg%jr+)c>o=mQ8x2rQP9SXO-YL?m2^vBiK*Hu+wYE0C{k+@3kwWDj!5v!2JF)g zrR=Sa_4VR?#+slI5N*mVHvjSs3Ojxj3D!Y*3y@k6>ldCSy`&>B9(>R+Ar-oOQG>NB z#(H^^LaZFEYdt)U(^Bq)^f#AfdlH91xY>-J@s1~aktd6o$9y`yzP=tX#6osd&Y4)@ z;$J;UohU{gyA%83U@{oLHFxYyGPHoevBzjZ8;YCp&eDZ}26-$d`0-0HIY>#EyD-%Z z=Y@la9}K0iS!j+C`Sf8vt|$*cw({t#K}FRqg&?3VqYXHo>~HUhR7a9rf6Oe?EtQ4v z+WG!J7mogjA60p(ngV9(@!Fq;q1UB+pJmYEltHKA`G70k|BX6EpO{&U0wALv&UVcZUf=;kS2=${}*-C$n}6&@3A1vSr=b3K7J zjJj)~7%E$D&yv7(2X`RWkadI&zz>G_gUSZUS!=G@mTa=X~ar9%^F>}ZQ&Oo4@j6V1|UaJM- zmSZTa{3e&?M<32%1QXCrqf_AU+A|)C62$6;2|6#|Dw4X*2@LkepIm8^v|%SoG}X<{ zLa;=IBzJ8gD&Nl9Tz_8eY#MzR$|u{=_2?Ip6{za6>8+s>sU}Onr#9cOXp;57Og9hB z3RA$ky|OquHeZFXj$2M@_VS`=l9xdKZ(qOgC7Y!T0>j6Iv@b9Vm~dkS39A;{6W5p( zY4@8!f+3kt^{r(`jh#~FJ zG|~`a`o^{`-a7u|7H^=i2kKr&=Q)IZzLsiYE>OtL&qIO@WOoUZjK$hWwir1?N0N&d z$D`>|g3pyFYlWQ%wFW2K^t`u_?VN5@Kws(Kz?$JFumP38iHTcmV8R*`k&{MBT@hRDl_+L|hwO=anEr z?ZZ-q%P`Rfqqi(K?{B8AAlAFI~KBamV82OWKz#Sh8@*q9u!$ELpO2$+9IKOO`KfU%FuF!ljFrE?&B1>C&ak zmUb*%zN~%Of@KSrEn2pC*^*^Tmn~b?v21xqd&h!~g&m7J7I!S^SlY3yqoZT_a&&Py znqLmk%TaAPl3dctgTtjPO_+hIIt)tz+in!jQidYd`j$-Glm-jruUbHh6MS*koRR+a zU6;mUvCB)ED&%ZKat_nBX1SmIP$|AvqYjSWua~VnWWjEPUkM5&tK^|Xq8I%o(-?7^ z25=+X|am-ss)t`D?eQMk?3F5{jT!&)qjY-T6M7gqq`>Fam)MLFS__0 zH{Uk z%esvhB~!QD{$UjU@>idG;l%^d>9f{tOr|FHT>tS$KmXWwo;mQVy*J!=(>rdy>%RLx z^x%gd`poAa`|{s^^T~hu!G^m&_l>W7^T~~yw_J3|6@53o^VYxl*Y5tr zm!JO5vj=|l@45V~h2me_`PGAMeP_hl9{AX&9{c+zpLy;*tM0t3{npbCe)HhwEpNWG zwr*zAytbEqnaM6Y`<&J5ZoB=}gWHCRPki;MZ+-9kKYsOK#Os@T-E-0F*4CXIt(mpw zp&65ZwdB-eC!eo6v92Q87F`^zt*WT4sh!o(GxMn03+pPQvm5HG>Z)q1DzS1Kqt#W@ zYAR+NTisbTtG1@Pscw61W$m%kd!lQq=2uljXVuJX?2MlB#_2ViywT{DZ=8Ih`nrd! zPO7=?4^@}c9y{&$`ePc8X}q$gq2{ETOKQ)mUf<9fZH!h_Etu9CJ*j3|)#O9SI<0$C zbbeK#Ze`WXs+F}Jb!XOGcW~ATb#1feS9wiyW=`H5z3$EvryaZRj_S7R6}6Q!PN<*! z*n&diAK0!oV_I4P}5PjzOJ#R zFzwW;H%Bk2pWJ)G?1tm&*EdYQz2>j(Z#+J_;4h%+O(_r%$iNn z$y=h6pRYQ(YUcDvO+^JpSqZ|eY^a`A*;FwrdQ|n%vyQ1ew(|JOlPYIdpHg>v#g$b% zDj%)Ls@!-dI zJ?4a^%eG(ixh3Cx^7*6QcGElW@yU=>xOq!5_2$by`KgmYS@`Z@FUbTdJ#o z{8Y4}EjD@GDOC$*&W@g5e`@tv)oY_O&Yb*6&FRt8qs?`Tr&Ubewr5%WaSe5ocP+0< z)YZ2iS3RfdTQq%9ZLF?g&l#sp z?rE+&bMix*qo>YXGvmbChMIHh=hYXdozs10&5G)Vnm5%{R5w*sPrjpX&W5^%$q!vI zcipsxn(0S()HN(^jW$j0Uzyz2Sg|Lvp>EqL%lFi-Z#bpu+>OhsX4Ey*EU#_Yv-HG0 zwR_()Se!QbrMEwNecP?yy6)V+{JZOx*Pa=z>_4MneM58g(bqkEX=>fHwx(IDDo?%h z-)3C*>km%fbK0Bs+io`r4-dr+@N48uE3SQ9_}+n#f)Zdg6@ z*c*DzdfRs^C;TN|T8RV~vSYO1EU_s_WDT`s@GMk=-AHl8ws zrzo8g9b^CRf7vBGc19_uefi+;4<0;NYZ8xnbV3BPS9d@6{J~c-jMG;6*?4*W4})3wL|`m^fR!nysaV%+)dV-oK?GDJniLs&HKUKGv(!}<7NCW&x~+f zD_7W(AF!i5@FWs`d+-l)nyS!OKEIDNnKF?GqxLJwNn0L`F_$?~>J|CdP6gg4e@kra zmsI(uDzdgNB7JU0{NTZ=Nha?{smX%|rkUp_j%K>YfB0NG7^yS;u)TTT<1*y-Rg&#t zuJNqmKkSL^4WsOEr3{v_G7s=kt;v4J(TTeHhRC$W=`(=0rddZtB1a!{>~WFE@h6;k z(#bL_r`SrTp61EhoXFhB8%}>C-_MYQ|Gt0bH6PMe%ONSRpK#`(Mb2uCMCKow?54!p zIFpAy3l2>Rr!0&t3MU2e#Y-X)>Y_o)pY-OjwxwRY?XS%oU`pg|{HLG);9=5!OXGG) z9o#KB5livAYDk}xzdX&PM(QkS?ca?h96Xc%xC)WUmr>ZRl#45{RQ8{y^&$r^v-D~z z{pSa#2enai<-_Q!gV>iJ2>OnK&5yD4^N*TE&BasmDmxZ=d15kht>K@q?6yraeK#t+ za`50Qqm1CW_7Q;~?;ntV%|9pDckSnHz!tzv@3)ze`@UHF@{if}O2eU;P9AXZ;O>_t zz?x`6XP}Nnb{{B zGhO0SGQOoq_Y;qPAu{ddZ&VzM!JUqw{PR1TBF7_K1zNE@H!^%|6Nth*EAMU6>6e6F z#NBE9DBvh#AAYO}d@6V@3zhvllx?ut2mZAbPBK*XizusHHg9w))97h;KcrHTHua=Kxn<8Mfk!R7~W`t)VpDc7s zWmDuDg#UnWJ;JN;M>hOWv`N_P@~WoDYQ(enBR%g!I&rV*<2Jnq>6D0?z8~*oXw66` zd(`yD@xBm$kx=>8>A%H0`|}p0&vVj2@iNX?NO#+< z#w4&jpC{0^&d=h%ES;ZCh-*2PeFkNfo|4FO=jV=4-RlMoj#=++z=9N??YW%4nZ1 zI?vG0a-_Y<*6TeX$X{P9I(Y`+r3e=S?nMZ1LZ}k=RNz|M zLRMrHV^c)E?_Brv(2f-*x|t1PzKhP5UiHb(zT>x;uw1zSp8*SU33Iv9Cl#sDg!GS>ep2G znsi{@RtDAxVCj0|cyvAL*fiuA?{Z*0SO(Tx0E_gbG;;NLAdg%+C#?MrtcM*~+TIO- zMOmh>-1@rKSvCyo(`8`Y4p^l7a>$Zz496P~Tz82#kfAi37L?V9*taAX1a##C#BG#k!^V`ElUb0>GWAW>ZaRXqHM=LD1 zU*YxG_&TsI1T4;*K5kz$jp5<+s}HbTx#Ny849lIzR`gNFqG9UK*sm;LDX!U%KV^(> z4UKUx;+)s;Lwv1$9o*j>g7q%MPYMGF7acK2a^QA8}W=?KwKo;r=#j?5vkjpZsD8@=iwBbBy65 zV+hG#K8v=E|^?jxw*2?>$-Cp97)zna2gP z{7WA#E&FUJz7%D3O}-GydnFWKiL$y*qJLcqcXlX#9?B|TK0TDTG8Es6va0K@4dq=H zif=zY;DwjtoitI6Q0<6U0ZY9M%Ip3GX~a99AK<;(yhfhKJ7wD42r1+EYz4hBjgQuU zJMtCxyPW!O#XD)_a)b*11L%v|D1`Az#I-Kt`f$xQeLRpJjEA2mP*-tS_pwrX?Lb`V zn)RMSS;gThDqry{{i}`e5D`x zy2jYRRQmsJdjX5I zt*~7^=tIa;8Vu8x=fL84_&jd=RSuSmJHm2t-wara8?F0wz@lBEakpPn!MY8w8l^Wu z-5&rJ*Jn9c&m&LyA^UXz_5J5>OL6~;Q=1|!$oxBmixJ*|kaTxG!i@-(2H6f};;~4l zzxjWkY_PZpgvTP(dY?y}HvQdzw+^A( z9`)zW6OI0UCqmjGem%r5Mf}8*nj&x$M~Vo~bMhZU{Bp!+11{yA*4v0UeGlc@qik*j zT#i%a<8h}Md*KsEBMxRl*0}OAoPPl2skb+IW;}P{oohRs{yC&6|2<(KSpTm)Qp&%y z-zYB6nR5a;)cA>j&oDDwwjE`)jnh%q)g8iRmpO13qpZ?ZIk;z|tm-STS9bjolj{+OI?f>^U)H#W>c>4Ww<)q5 z`R#8ox>pk>fV6lY(l;Rd6_BWU!efr@^7JQ5=PLTC()rj0c&dvuhVsH?zXG_bXPu6+ zE)DdC;@1MMa*8DKT-o?gsGWDB>@19d&m*C{uZQCIqO8iVr;+FOA^Pdku|0&cDhnHt z=ayX=D*Fh^s-Ei3Bm1;ARQ7AYgTnpV)?l2j-}L+Np^`V%ztPzGgyYux?dgH+JR9%2 z2G-+UH-%h${~GDU{W!u45Pk_Ec?=&HuG^pAqn`>_>5Juas9Vh!JZcYKfwW^xQlwme znvu`(@Hq|dN(X8yF#Qb<+zYct&iod5ZDuB(AL3o-z?E0eBVA?E&+*Rn^&~>Bi_are z+UNu>nWm4fDUEB$`CIilr9Rj?j|Oz1yl5j}={jb;Uc}E*08U6)`y5zLl!3Jyb%|$% z?e=RQ^5$50g!L5a>+`$=OVd7#@`?+l>HKKEhJ@AZ^y?=MEbYf9084oS>wU6N3fqNs z!0A^6a21AzUj!@{UsLs~&gs_)Wng_X)GwWL?T>~W<9!Y+uMDgob(W54s(!inYW>=w zV|*6nJNO!Q zU}@hMpgj4f!gBG|g*;sYgf-^Cnsi`k-89O(bno`7HxsN|!rJG+x~mMV9AHrnDePT{ zpJqF)ypK`Ba%tjWz*5erXfG`8;j2tB}a^~r^Z z??w6?gy$ioY4Yo{W;*U2chb<6=xYeb}Q0| z^Ke|tjkOxRnmV@1&z~YqIpVI*2XX~PB6lIK@`CZ-p{%aYaM=f)vU{NWQ9h{;HXJ7B zWBnq3B|^%kdW6Kg#_<}tA8E?(!aCuu#{%BLvL8cP9Ya_roD7wH3}uzShtCS!7ApG> zD69PYF66nmc+e@UzAO!Ifo@4zeJw)bOUK`hIDI#&dusT7v_m^f=jr_@w+3<2Hs^D4 zk<~pBZa`dh&;1KcT=yB8kWYK1-Ii1Tpq6uW)VYfTJ?{R;OUL$fDBgy$>fd<*d8&J$ zsmR(d1iB34s~xx_$YcNYxjq!%g0ebqH;3}>M_l;|>-V9o&c&mlyyzE8%Z{R~>MXO7 z=k{T7sO+^)e>a87CPQW4fwIIepKC&8??Bw8kNcfIgv;I^Dmx4rT5Z5aM)9t4>-)n& z`pe6#zKVSEgo_a>?w(m5;70X6f_p9B)r%;vZMfxMLc02sw7t)EnD&lF9{ENVA=fPB z0G~S%UnOsmh}&OgjV(Zad1=Bcz@23D8Ne6US@ht(aSFlkuta#{0jjQ~=uz?@H?$z8$dCu6jLK zk2%n^3f%QTeSPzE!r96^w-G_AXa|hNdWng_g)Gt@33d6eVn*qL} zUpo|EUjZ!Tb*%e+#FYlauo_WcpV@fV^{==;65ZJCS2^AICG z1;A3@5z}0qU&}BIkMVv7mfsJ+a{0vJ!g{C-tm^?wWi{JBT>4@^_0fL4%i>GZ??IgM zC;YJPm(Uk|o_6}BXZ*RqI{$|F9KM7e!g|5! z*KZtHEb7_}^u>Rs+xV#6blNhzkiI%pz6J3mNT;somS2YWPgWV*=iLamgz`HOKLzQ- z2yZ}0p8m^ojIZ2CZ$;RNaG=Zh>OY5&a_>Z>Gb|!J3E>>1cO(4d*{0kq z#EJ86#QPB5hwwOr6$n=${68y=9Q+2t*@(OC)8=yHwE1p8IqJaYBV>QV`9~w2dSzXoqkDGa zH_#b%pFn-r978i;t4`sTpNn+mA*!RW{A#B><5S5SS9ZC0)wOaYa_~Wif0l!_1^sf@ z@KpW!v;*r2yla0noS!b0H+_Jux*^A`5BuTDu5$fa4Orx#3fsl;TLD*j1?##p!iD9x zhw`qxabdZ9`EdI67l6fi*M5Bfah}8A0B^y@QI^y>-asoW>50}k%PV|3Rn?S3~N zUeol~{0y-3p>p)Exbu)W>1(eTtfCX{Vxd;)RyXB+ZQ zL3qnPqbvRe3{}-z_8?DX-`!6JG>77m`be8GjQ2Zj4)$xV>N5f88 zT`%uLdD?F3?};P667l^A=^uC=A;+cu7raKAHwSGz;=p9yqll}{`C*hJuULriLWFNa zI2WPP@*{}Ths3p}Yuep&-v8}VntLJ?{}t-jp)Q{dKQAr&RH*EKqO8i2?;#Il?mq`Y zWg}Yxe23w_94cFlvai*L$Ug>s`eMS+@OM$3YwB)<*}4kocL7 za1%ns-3y4XLY#9$+-dshJtlocC_RbvZlqD4Qe1x!Y3c*L27T3eLy^eMh^tCmYkgHR; z`M5UT z{#DRVmTmlQX?z39s%{-3RJjC!$zW+7UzZl_M#3`Gyh+m5E5`^0KuZ;)& zLDrP^ql=eoz8CaWak|>JOE`R{k`dRVzCL%9fwcv&Xd~-06)f+$0M^}QU|kx5HDvLj zur(wdxv=gp18WR*bxv4M<$=P`kg&e)jPW77yL7;EdjKow`PBGwVLj^fOWV60ut--r z7w$S#dSKabzrIuk)_X%^oC^1Dzn%@jTDje<6?bh@*E_|gAH2}$+Rq?tM*4{euRu7C zupi<7K|k6NeiN9^FX)058<6UuhGv2j-cjH}QXg$LF8>H(Rb?wH_AzksL za1uzPZO`XoyenV-A#7Fhq7#vJ4#GQu7oHz{3E^1?`FsLn&~_Mq9B~~7aj)Q%eYMpdAur`!|^{;@XI3ujX9b-=!SU&|U zm);L|jKgJMy+0k$1pB3W7vJ3{jQhzlu+-L8{JF4xfj)DM^C7H#sISjm4lGTZbxE); znRXK5>SNI|3<=AXTMs+1*pK(U+3dai3L$m8^AT=E=<*us^({!Bi||FXvo@4Z-`vNM z9=2oYySfSK^wGKS$h)pYI`s%Qo%U=i(z_7yX}&a=#}}M_Gw&6|RexqYd09|)2=Bzj zS*XvoMI7+yM*MPw_aJ0jn*I&Mf=Q;;2o&krzRZ42C5L+)Sp6YbF8*5q=eK}MI&{P*8%9W(GLDdZ>+LrFZiMvNeiR|+_=^aY zM|boE{yf@=`Y2s7u6$AR7?S_GPZ!`QPg-R&!u4J+&T6XxN9U^B!jW|6ov&-0co;6T z&UfH&4eGN_Uu?MEiI;=Z3pgr2&UMPtCUl>TZUpb=h2ob2j;_J;oxDxXJ6|b>-Dk5K z!F$5#&lV@I$9d=Ln?iB&DfhY3fwRrY=yl%tN}q!JY0v};*&6e{F`*% z`I-vF2Sf3D07s?MDw|i1&W4o;cfMvq z@oXsmIS0;|lXsQ#&evQho)5)c-$cR5D?0Cd-5H9HhvHvFf0Y01a`Gme_i}i>+Q}d7 zH?r(|;E(-CzXi;-8eu!q$s0BO4x1h>|Ae@~%4WeR1G;`XAUQk^o5IBo3k zLp`eXC(04eiM(16JkmG(M z0pMXCarYjyvku{N2#G`07mq=C=JRp)S04dWlCVr9p%Y86t+9YVdT*#&L<4(<}$FtHl0g928#KYudKF!pVX<`dbE)~hIHC1Jv$5^)HAB#HTf2lX~rLE_!|7Z z6@U6%t1tgU!(*_&!TIMC-dpJj?ctn+vZ^m#j68Qu4u|5+D68}xz8hd4$|}9-K1=JU zIa{IpS!w51z_}28djTPNhURO%#Yk5jISClbhhBcEln<=>WvIU>t30;{dDj=`GofvR)zKvK08I(4WY76qAYDt zK0Tql;ZXcXD6782@ZQBflyzzHmneI@0ecACyFzelGQqsv7s~r|D88~7%(?nU+01MC zQ!`@$9`kr7eSD!{^v1b>b&~DlgGkf$rM|V7^2WDvKJqwEI-k9W)Be(U8{n#)U9KPJ z<;*&|7vU<@dk!J(N3GwAc4+rqi?H2ESGZd4uaSQS@~^+jtUFDA5^=(t4Y-_3O%K;^ zL%zz^1nMY#4db1D+!lnCIa>eatkESjuJBMK@;i)K?d=NGBM<*1(x`7~`PZs{J<2US zjB+RvDK~##L%%3{UauY2clS8epM4AJ6OVC(tt^DcEvLH4Lgagri}P=ISK3#7^Cr+O zZTs&bqzp_UJl&Q*5AVvGbT9IFq)~?6x3g3xvdT}8ru4_S@?gHZ56Aq_?*biV<$nge zOL^FT02XygeWrr77WMV%Edy)Xcxk_;@`vB;z`Cpqta*T?IAoiP5my@0J}~4MlMbvx z8Cb52W1XpBUE{#IxeTlo=!eP;!kP+SF7EFr18WmtsXv0S4i{e!m4S6BV5uA@ETtp9 zyASd8tV0vJE?7osVhFHY+#fEiN6;_j>k6v?Sd_^cclRaTclP5;PQSk7j8Xf4;}o!N zM&5E;FbwPKWng_7<;l~^^-Fm_!4cNesISip4lJ#!d*~W>$EEyIVg1~J^$OnA2GY7u zqhI6&8h2s2^T2+&^LPw!7l!piz~Y)I2kS-TDgPm?RtNVh@gAPX`dtB!;#j7l)e#5Q zCcJC=8XgT;s-F;+%22+$5Bqh!1FPKHo(EW}ld$gL!Ya46I{_=0>BEQBTLxd}0Tyi< zeWt>fOZQ0!Ut0IF&={wJ<>LMt2bSVK3s|a068_=h>khyQ)7LJ*dM#RY`6B1>A=KCB z(K7wI4zOIFb1ULXgIbRvVY&Ev+JU9zZbx00uil3^b&l{uSneA7xdV&%`p4bIPxnS! zk!ic}w-@O>2;Ypb1)-ZiiTF`S-w;aQgZSsKHM-y!!p)(4%KFtvr>>HDtNBjt8HDup z#t^PT_|Mmv`@Y=vSpE^Dhx>6I($^w=1wxLK&u+x&$NA}7O4Hwn^wW^;!rhDbW|SL2 z_!)%l2$vzGp8k=m&3AE8#M$o~5hpKk>r+?SjP#CBI{il9o-k+fv|p#99O1k5=@+;H z3?_v^Gv^h`t<&Qd02(`B1|0TZvP(RZyiI(`B8ssJK~fbn%)G$ zn~(S@d(9cbUteeFAPjF6^4ZS0)Jd1ZojTa{098ph`+btZy)|nz+V)9H{tK? z_gzjz+omA4U49PI?BNX8Nr+nRfmXA$5t{-rf|s3gHv@qs}w-4udy6tNSeC z^bae(XWne+n&TwAaQbaF9YJKyEdj4pI$%1VpT82w48|9rtgh#9+21&2FGM-wYZXH3 zw37(wU%wCGdW6RVuPq28?=hz(#Jz z-+OL1I@Em#+0W|`l7>csWY+%z;+*gAAtVpg{JhPtdY74}2DHy|FQOb_|H9V$CnyP= zub;fn=Jh43E{ay*v+C_`;;2HK_Vv>0I>!j%ZA3x?bO znT4l#8bmpuIMRcV{q03(h<}Z5K)f08|BlD~p$6wCR$jB|mq{>FKKwYCcR z`nm@BNf-Q}%hC8ztK;O?TxOqwpKu9&)NfAk%D1`rO_wt&=T$c2z2(faDqH8{2Tv+1 z7a+Qj`Fs{tRxUPghyCx8%B7Xdv~)-1a((^(!~aPb=v=Xq!#TUMvg@2x-K*EEUAG?5 zbN?p|@xOa48=M9=%KM5+tZzJ3{3lvjUBmGI(@*UY_I?t4&jUl8hd;`AjZ-doPW()~ zyZMw?l$~0hda8#%l|3rUWG@RQsOfCa^yvRB?mWOFNv`|u>5*+p zA3uMlW!kbO%aCc3cNUK99ERYL8}F94dw1O3+Y?2Rqw1<^40yl{IAQmeNleF_bIv*E zq#UT6bIyTERHm}zUv(Jt3}yxcV0R_zyTt(0mAdMM|NFmJ9ewv#-p_p8nO9qPM_XJ* z%*Da^6?^$e{%h?S{(RrBFwbn|*UEgoRL95l< z=0B&p8$+(B?ym^0j-UO#b1WHmb3Z}f*lKaBeerXv)p3F}i+rW+RE3EhsIR(fkDj=+ zd?be(=H{n;ccz?3>L~Gjr4nCD=YRaCcDv6-%5A0d3IEUPbHDif)%Py{p8xf0?v;PH z*W3DEe*TMAtGrja)sp4)%kAnic&3&lN_bwzeYlPt=_LNzr_7t$&b`sC7Waj7U%5KX zKDd(=*Zs9qt1IVkJiu)2P{ksVj!a{Zn|j^<-CL&r3!;CjJM`QGbm$AE-9W@ylsG!p z(aJtL4E+Oi=y;Kc(!h1dtd=N~#c z2)PDYsZjVj@U;Jb?_X}-{LjU0;N~EDsgoo!3KEg~5gd468- z;ug(LhEk-C&Hd6cOi~>^;PT|`c4W+)<}|N+hd~T^sbbHruk- z<(7HLt}Haio#>AXTWb##l~9}dmcCodR*P?(HyxT!qapjclXC5N8e}q&p0=|%x#6xW z+WzEZ!YF2UaA&rk3IuoZpeN4mtdFSP*kX7mx);qUn3_weE4vrbFIlT~a@5Tg*Qu@T z&D;CEi(Dt(Uprx@xxsHZQR{;Lbl4|S*p3K8{@+jR2cM_&%BIS{oAuG*TYdCX@a%nc(Jfu&rNMRje_7B4kEu`w9g>?Kzdoq z6|=E#OIwBEGp^n1;KcUzz({~dx;pcedUd-C|r6 znCF1f-DT})S3r{P1Nd+lD0+8At$q3pCvf$r-tivuT(mBKek;v1iJ?Z&dv z-5#N7ak5zy;jlMCM~l#wSs0}cyXFItz3s~k#EwEcQJK;zR#D`}4}Z?JTakeT?cn8< zYvN^DP31wk-H}w7xmh?%Y&ibT3yMV z;?4SjD(G z_~5QkVc=yqf8HFIi3MKQT@W<(2&R2U%e#Q{09uE_cw6~y*=f1ex}*Benfxo|emYTg zy>_H9J62at8Go0dW0&V({j%b}9z^$2{Do zM_tKCw==(`AHnVF4Y^cAi&Mrt=72$I6t2M>WukKHrm{5 z-=&QbiDKLL02c$#wS!prk9P+tvHs{!h=D;m2Y9`@|>hZOkM1Ew)(gmZ~aW%MV z9OE;F(b*wEX^sOMBlp3Lhi;5}rF}pzFAbA8m9`_#9bNReiCeHfdMK0_infWg z&_)EpKhq#zDWPTvdV6%4i&S31>5Z+8 zVTt+er^6KS?MSu{1JS;%?tI)H9i9<)AJ^N%&H?%Y-!oz&auHqtNZB{+HMwKC4}KJR zW5m?{S5w8Vi^G}(E`AY5^-)`UOwI_ZgLelG9r@C6T_=b#=_TK|XLlw1cd*%k3~QN0 zQG(RUT6FV>h%zwAE=S~;`Ntf;;$tVXMVy8{uB1Sgi}afwv!JCZ88w#G z^M!a8OFzz%IAU`P9jM2IMe|_DxYBi%#h6SK&R}931_#sJa{|P_#z2n4$3AFEs^ySi zI=bA>f9QY_c%Ja%Fh+m`vDYs9*+E&+#M#C=OF~Bk7B_ps$YCE>F?9mZ7C@Vs6MeJ6 z6erMGW7UienqIe5=mk!@x^iK4<+N$B7M!KkG_hSjGhnz>ft@MQpKeu@ie05f1@=)! zrMf+yj-2_ zA=6eX*J{MldZ$bj?-o`uH>N5T&8{%omWAQJtZnh3!%m3Up>7yyg)fWJTYErmy%f(C z0UoyGrnt;QMTkcQZk9Pd3OaK=9P#XiQm;=%7}{k-D8#C9J)KFNW@+lJpP7Dd%k2iE z+srlyLeIy=$lOo>S&7b*Dp#fiz{kO2On$61?1Nz+rG8f9mKlR6m+S+xA?5^+7sYbY z4AdbCgdJ)}MVYORVZ_c1-pT6ehQEek?XCNTB>mO-|tsl$JkIVr;IBt?S$hke8RXs||;sHV}Y!7kWkz0%1kAqqnZ^ z3Y6pzmR_nvV=ohgLy6(ob{|u1)k%A{^pe&Vy4!`Dn(u?s@$@lueU4Px!Hmz>bwzNOesvtKIDnQ%<~g|wwHLh`NM ziImI)EeSVuMBrzSzX}r01?i87u(?V*lC|nzi&erl(I;=&Y_B-++uYuHH z0Ad}PdN#BYEcHkbKMTHP%<`Dq=F#)0YY>>iX010yY}Sth3Ht?A7uo4k8+*J?UkcYo z^nz^Ry2SC*8s@Z4cpmkwbVZiaY`{|f2Fll|a24UHl>Z~JJ#Fh3wx9Vr5gZVsR;zTG z@RQ;&Ai|aeUK)w)8I8~U+XJzscsIk{2@&iTQV9WD;128p-?p*(p4k`_t3LKe$HC?j z{#`2%@hJsVT_U0e58jWg(V1gFTO^lp3d8W8#;tQu(j})6YhIp=30*`YutoH&MpR5= z7KWS}I$FDfXlK(WIz;J0rAku#eFw73lHrv_(z?)H9EZ9#5&~8Y7MLBy7=Dp_PUDgL zne@yy2@7F*pI_w(iM|E_~d9F14cZ?umZDCCY!x8Ukd+(ztf` zi4pL@^LU-5Cv-4fgiuW!p-qg|cZpa(zwwB*M~~u%th66f^Zh3G_IQ1!k>xle5+CX$ z3;e)ABfp?g1bN23%2=Y0x@J=tIQm?HFvDm=KBD)Tq#uS}M))`~EW|W%Uf77|Z?Ot~ z-|Ruz>x4RTBg`%$Om38F`$dfs4BI_~vqhMo?0<}W?EYdN*(nVD^2@xIA-r_@b6h1o z0c*;4eH;7Z#f`IT*O`}JzGvg8!5;yFXti$Zo-2MlmUGSv429QQexY4Z(P=b`(!_;% zohs?5IMy#|R3T9Xd7tR1#8DsP*~@LH1;Lga%Pq{X-5btJW8nq{{)qg@)zM2EI}{5r zYs0`C;HcER)Lc4E8Gkc&_(2DhfNThO7MT~@cBFC zYB-*m&;AZyeb^a#nIA;bP7=ahnTWF2G#*|Y>{0Qza-8){@^1H5@Z0xKlW z6A1R>Ya2%vHnGut9G(>c%x)+*aq3{4TRzLcAUs$ zDMZ>8dduyYjvCRf*c58`BvK2A7eV}inF5Z^z8^%J%#et341hy>}_fOO9+bNs_ zHDGhXVqj%by7Juw5$ne(6!Uj2vNm(db!909D)k5q*gp8G;pDyhu-nY%-MBVJpbla< zWWjqHXQqtG)4lb*)lgxln!Ojp;#3-bfyn$g5$|n0agx5UD|mjQU>Hom{6nIv;K9ie4^(AsBr$5e<=~{}4{ zDdpfn1u~E^;bWM(pK6rkn}rS4V~W7iY{7GrcKEH0rPW$#0N7m0cI!h#J5+T$m}_B04@^Rz<{pp zeIl*!&3qEepz7m}en(~A%x%K}YDQ-T2^ITDD*jxkqd3YxSy!PG}6(JHiFs{Cwu)ZG0fQm z+d`Rw7aHf<@N|eM*^+$Ah`2^ZGQf|q&58%>3$XX>r4zz(!IB5?Cf#5DIPxIhX0=rRACE)To$HwL&YNkLYf|OERKHmDt8xxU7|&xR5%1p z<KH6I`1z~5NNy53vCMoA2QdWi{e{M3_h380$=VOR28D_!dFX14 zX#=$V;?uagr+it9Xl}|Il1D$+9*>+ z=0Mt2xT;6(fev9xJ0?Sts2;(i%^Jn$ugT2e|z$zN|gtdN~^I^RLTQ9+qW zMDx%ZF3II&-cg6g4u9jY>mfiDU?U_h@)PR2^P7#gm8O1eOc%gn`UB2<9r)NS19u1B zjK4;(XLV&d=D8r6R7K9oCF0x{l99-b9i|$Jw8~;f*}t{N!YS&Wtmh?~E;4jue`6kt7oXxB6Kc$F@{j|4!ozyBD=0!as7PM-y2K%P#DKHLQgQcdvbQ zQI(&_is$HoppPtR^?!ajPrW)z@Lc_cr3|p$lA}3;JR`4ZCzXt|`E{YZ$b|L?zV` z!r!mlx7xbbZKz$Yj_?UP*@L24_m3*;xiu9DAYWz*tb5K~E&^JiCPTz}puv+l;`;Iaeq99ZHAa^XVV6`uPSRZC-f*0L?} z(ljalq!D4!5Lf(5OuT%pW^bm#dfiWUszXHPcykCtyB5_s zh@oAN`2aG-CMzisk;zWde|-qhirR7!t~sW(OHl=#{Y~TXl_5QyI>H;IXc(g2c!T_C ztcVH1?(_ras#=I>CE&wxT}02rDOQGT?2xULhF{vJZeq+B0P_;qkE1A}My)q;z)I?O2 zh?1enk(2xnl@3|l(o`O9iYKNWV-|ameLeplD;=_^mD%cuBk09=C21xCXeaSMRdDY< znyTw0zz`R@ZU!3cLBR9=xv^)SHV%0RofIwV_?}cxwZ@qolly3@&-1#! zb$mn?jWHSbpJDrD<bBnRw2wwXGVQIz<=qsULVBtJov&6e=Yp98&4I&$Z;#+LjE@ngO(bqa{}K z;rT`+0gy}kdDfBHz0_Y|5tD5*?;P|^iI%xB2@?ri4RWiVzf2oq8^#yKx(4kWbFl@O zzKY4dKy1KQegUs-8cmom4rVcI(1K$C(aA!}!P!BO#8~V)c%h}HCRV++L#-d-fdsl~ zK(O5-H9dNfHIA_@*t#1~sR~uTnS*Rp^9vwHdxB-qz8}5V8W+k~(8@(kHJ*I++}JgV z7fDE{g$RLqiS@WSt5;vsb5uN`xDEV46N#$-Wt@pkmXa~H_@d$F@J-yn#EBUw%=8#O z4TUvcdNn(Pa|@gU4wht;=SrQIS^J{{lRO(@XBb+(B$+>b`97bAU1kV?Pud^-|(s1lXA3n=z zilbHV2|#en-<1vf5u2>`sIZ*+K5MM|>Bo+pCWT5>wRH|j>H=5TAyV&(;8j5GzG8Jd?NyK0Q{9dh%mA7!CAPeDbwalmJ4*33lGxZZB|L_+5PP79i8AmL#v>^8ixy3&f6=a zW6uWa+Zpqck|qQs$=ZP6m%PIg^(jnQvjk`l;FzE}Q^VB6dip!9k6UFY6^~%< z2EjNqcm|Q@E3-i+VKPc97OmrgWrMYe?NSY`iX2o~1ce5hRpsLdX&)U>?G0(lEOJEh ze-6C6Kz`zwWbn`p0B~aaT~==TaA}3- zl0cwI_5NrjYRz2)=qSS$TeyC3WT6^T2vTtQ2Dz&rt3>Ub24*i{LJgyo6d;eXVw6fq zKW>#A%H>+AuORqqm_by5oQF>oh)-C1viTwug|A$b&jI5(O+LBzBMC+#))IgRIXdvj zKehKGslduZ8xk4A3rXEiTMsQ9juBUPB0ueX_Brep|&z0LFe4MMn^z203T-a^O4 zz$3wuT5Tp<(homlJ+)CZkXMDOT!lKVt-OQeoVkPKlnEiM@zsLVRy>(A<4CtN-14*L zpS6Neh~z`4=)0$H<^aba>&^zE4r~~J{%5VSWLOwOKjVMqFiJIJx z&spD8sJF4qIuyEKSf%8!qNo!=!5Q(b*1eCJB9}ODCVBbWtpA*UtR)_PyY*l4Ulo;i zDI{f>$=_iendj$~aiF}YE=~>JnYmz#*Fh?~OICw6CDKR`OTW`H>4!7Dx1;7Zu=AIC zxPuFPJd^yvy3e{-i|$NT7-f7@A{9RI0q?swA;mk)sh>ys>qPot4z4}0U5m!&e=`h= zdWAQWb_W~-5`y~%UHH4L`{qlslZRHU%J*3JIa3u2tpd{DYkhNN(oX_ROI5j==>bvp z6a*?zl*XXAugJa+2|_CW5_$af7@ej{go6x{v5GYbg`cm`z-r{Cl&Bf<@r^9csU5Bz zrSQRgirUPvl4wP!JxZzJoGHTn-+xtl!L&&{V-TA3PRhFez*Xrbb&0;kj_Z2}7C&-+ z(E6I3FH>Iq(guL6*OmSu>#HaJTqS1}d*z3%qFi#HV)R=ZN*$E~kFFV@$!!c^@J zO!%bN&6!5+(t0khLMZ<76V}%eTQSMUN47WGrTg193fAO56on3c(ps7E9Y{D>hUHg& z%KF+FU#SV9pSJFMgz%B+WUvWWN0qUppRpc3naxhOr4vyLp;{aAW;aMUP`ZUVUh z7hp-}=dGhlwz0$grx6@BGRW_GBu7w2YV7TpIU05Dh|~ietGGUjH6KK*TGeJRTu#YS#U#b!wkYZP8RwaN5D42A8Aa3ekHRy1%yc z)XKxe;f_3n~5tRsBQ@94?jr6zqND&xRQo3h8r82iV)PGrHr=g zjyY4ko~^EKSjeuPsk%Jw5piHxQ$~cVnjz4WZ^4(us?d$Wstsu&TuAN_y4ZG&598V4edh z&=iIyrOeSJ{ds?A&Ap3pT-dQJ>S%1$Iq>ZwI9B;F3GN9u71|un%>E;5Z^nrq5|YMq z76g1C4gaxqn8I?@Jyf0(Q-KmI!j1KxSe40Ipvq}+w;e^5bCp_#AF2=BnMWN_$S6=| zAl8N9pIUe9@qDrJ)s=ZC4FU{pp|^Pv;{vqHRB_==fV60?rcELe;63)$7p?bBRu|qi zuDUBX8I_uNExVp8#&eGQA+z45D*U~PCw8vGtY%$2!obT|5kW;n0VkRa zSDRWwWJWpJU+leS$l9b1Dp`syUOtZXUlM$pnB<&gnRrdxBeKIQ^nj6@06m@ryCXSc4n_;eg{)ZSuPzDL<_Qiux^{DpX!5}YOKDpK}c##Mlz$K zOs4SSf2>w^_wc4xxuDh@ARZA@G%X5ZX+l=qLy-K_F2d4S$<`+^&DVe=%R!ce6g^FN z&j07V&ojWMDL$N#RYb)}?fi>%yl`ap$|zuWlLOoC5JF@(Mkzg_z9A8i|E%=CS~o7+ zOm}F?J>o`?=m-g#e0#X;?o*rlBUEtBDusJuvydd_N%ge-KF?KIlraaBq&}7q(bJn{ zKzM9^)E9o&mWJy<&2YLW6PB9}-DfmQzS7Lcr#4@i62UDXV5j8vQ|X7>uiR%g%Yg7Q zZPYh#N_H3ZP$;HJz&dBWdpVjOXCvjf4=L&P_0Oy4h8rW28f=ER@Bqx1#v%E`qURUF=8rkhR_>@Q8 zmYf)ut5OLbPX(GCE^hFgW+`gt^=4>`c!7uDs%ls>roNlQ`2^{ApWCb|Q&x88)GNF# z%SckvIb-txQ-sYYP@m@3L+;0p{O2{x9GZDkJXaK_JewEoI6#LayHLy6^O*7!vpJ0SU(>?gz|)r1Kw!W(yA(5xcl)ymcn`W6O#ds|%Yjf|87 zbB>86lC+FRPEp$zHp|L;<3ZP-9c|~d_i++BC1$yr7tqD0SUdEc7d7pYXUXG5fW)@Z~tSS zNn{)(>H)$F<;LB}mM?9dn6L?V4Bv5=WoKv0^6p)2ilo5x6qJx8(V5Ie&kJAHJhH$J z+!A+>Z9?jAlO2pDjJ*%AY6^K|RJ^5{&dV2!W!+%+Ak@I0=XCi2fYRJ;*r5y$SWDzN z(%iI>xvyw0af^$2N7PA6O|>!)i1(Gvhb@>u<*gXmox3b_OH?p4834S!fX$*_)x5P( zqen>S z&u~4ALaEbXW>C^5DV+iJ<_MG$--Yf7)9tm*pp3p$*W;D>qYucU2kk2T?4wPAqSH%)=Xq7 zi13xL4nRb>J3UL@)GUeIb**^l&Jd!f0<;qKuS^VZEMV{LmaFGmgw@OH@>YullAF1(aKE9)QpPjFkm!ZD1dB568y99H_hyf3?6a@^*PPtHC z;Jcc8l*@+|K{X+l+nI<@6QF!|^Tv9_aPQhI+$qQnSyXw^5IyPiJ6L`_X|*JWLd)D8%BB6T%w|SsgpFKd@ZaxrFOro=cmHmk`KY1m~*{ zHk~4`x)`$PQoHp?*YI_7{Aa_60$^8<8mE*b29B3ne5iS>Ho?i&B(zmk+9_r{jyfX- zyo?k8I2R`H?0vZTh_N6tuuMIae@Yc4_iNqcg@eWtIi`*!cWh-LH?sq~c^^TunB|#T z{K%oVgdk)nN3B2FEb+^HX{tE%1qZjR)4N0(dU1s`PH}A56)tHaPN3w+n*U)- zZ&5|@B6|B>IAVs@V_ezmpzspglr+atAcak$}qx_K{xU|a>c;eDq0Fr#L< zh_v4}C=Y=S=AQe1gU*Jz=RH4?8-V2PLC2IU;?htU&v4uoW$ADxtX ANB{r; diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index ff0493f35f..8eee7ad130 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -27,20 +27,36 @@ use rstd::prelude::*; use rstd::{cmp, result}; use parity_codec::{Codec, Encode, Decode}; -use srml_support::{StorageValue, StorageMap, Parameter, decl_event, decl_storage, decl_module, ensure}; +use srml_support::{StorageValue, StorageMap, Parameter, decl_event, decl_storage, decl_module}; use srml_support::traits::{ - UpdateBalanceOutcome, Currency, OnFreeBalanceZero, TransferAsset, - WithdrawReason, WithdrawReasons, ArithmeticType, LockIdentifier, LockableCurrency + UpdateBalanceOutcome, Currency, OnFreeBalanceZero, MakePayment, OnUnbalanced, + WithdrawReason, WithdrawReasons, LockIdentifier, LockableCurrency, ExistenceRequirement, + Imbalance, SignedImbalance }; use srml_support::dispatch::Result; use primitives::traits::{ - Zero, SimpleArithmetic, As, StaticLookup, Member, CheckedAdd, CheckedSub, MaybeSerializeDebug + Zero, SimpleArithmetic, As, StaticLookup, Member, CheckedAdd, CheckedSub, + MaybeSerializeDebug, Saturating }; use system::{IsDeadAccount, OnNewAccount, ensure_signed}; mod mock; mod tests; +pub trait Subtrait: system::Trait { + /// The balance of an account. + type Balance: Parameter + Member + SimpleArithmetic + Codec + Default + Copy + As + As + MaybeSerializeDebug; + + /// A function which is invoked when the free-balance has fallen below the existential deposit and + /// has been reduced to zero. + /// + /// Gives a chance to clean up resources associated with the given account. + type OnFreeBalanceZero: OnFreeBalanceZero; + + /// Handler for when a new account is created. + type OnNewAccount: OnNewAccount; +} + pub trait Trait: system::Trait { /// The balance of an account. type Balance: Parameter + Member + SimpleArithmetic + Codec + Default + Copy + As + As + MaybeSerializeDebug; @@ -54,12 +70,24 @@ pub trait Trait: system::Trait { /// Handler for when a new account is created. type OnNewAccount: OnNewAccount; + /// Handler for the unbalanced reduction when taking transaction fees. + type TransactionPayment: OnUnbalanced>; + + /// Handler for the unbalanced reduction when taking fees associated with balance + /// transfer (which may also include account creation). + type TransferPayment: OnUnbalanced>; + + /// Handler for the unbalanced reduction when removing a dust account. + type DustRemoval: OnUnbalanced>; + /// The overarching event type. type Event: From> + Into<::Event>; } -impl ArithmeticType for Module { - type Type = ::Balance; +impl, I: Instance> Subtrait for T { + type Balance = T::Balance; + type OnFreeBalanceZero = T::OnFreeBalanceZero; + type OnNewAccount = T::OnNewAccount; } decl_event!( @@ -118,6 +146,10 @@ decl_storage! { pub TransferFee get(transfer_fee) config(): T::Balance; /// The fee required to create an account. At least as big as ReclaimRebate. pub CreationFee get(creation_fee) config(): T::Balance; + /// The fee to be paid for making a transaction; the base. + pub TransactionBaseFee get(transaction_base_fee) config(): T::Balance; + /// The fee to be paid for making a transaction; the per-byte portion. + pub TransactionByteFee get(transaction_byte_fee) config(): T::Balance; /// Information regarding the vesting of a given account. pub Vesting get(vesting) build(|config: &GenesisConfig| { @@ -190,7 +222,7 @@ decl_module! { ) { let transactor = ensure_signed(origin)?; let dest = T::Lookup::lookup(dest)?; - Self::make_transfer(&transactor, &dest, value)?; + >::transfer(&transactor, &dest, value)?; } /// Set the balances of a given account. @@ -209,7 +241,9 @@ decl_module! { // For funding methods, see Currency trait impl, I: Instance> Module { - /// Get the amount that is currently being vested and cannot be transfered out of this account. + // PUBLIC IMMUTABLES + + /// Get the amount that is currently being vested and cannot be transferred out of this account. pub fn vesting_balance(who: &T::AccountId) -> T::Balance { if let Some(v) = Self::vesting(who) { Self::free_balance(who).min(v.locked_at(>::block_number())) @@ -218,11 +252,16 @@ impl, I: Instance> Module { } } + // PRIVATE MUTABLES + /// Set the free balance of an account to some new value. /// - /// Will enforce ExistentialDeposit law, anulling the account as needed. + /// Will enforce ExistentialDeposit law, annulling the account as needed. /// In that case it will return `AccountKilled`. - pub fn set_reserved_balance(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { + /// + /// NOTE: LOW-LEVEL: This will not attempt to maintain total issuance. It is expected that + /// the caller will do this. + fn set_reserved_balance(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { if balance < Self::existential_deposit() { >::insert(who, balance); Self::on_reserved_too_low(who); @@ -234,13 +273,16 @@ impl, I: Instance> Module { } /// Set the free balance of an account to some new value. Will enforce ExistentialDeposit - /// law anulling the account as needed. + /// law annulling the account as needed. /// /// Doesn't do any preparatory work for creating a new account, so should only be used when it /// is known that the account already exists. /// /// Returns if the account was successfully updated or update has led to killing of the account. - pub fn set_free_balance(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { + /// + /// NOTE: LOW-LEVEL: This will not attempt to maintain total issuance. It is expected that + /// the caller will do this. + fn set_free_balance(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { // Commented out for no - but consider it instructive. // assert!(!Self::total_balance(who).is_zero()); if balance < Self::existential_deposit() { @@ -253,92 +295,35 @@ impl, I: Instance> Module { } } - /// Set the free balance on an account to some new value. - /// - /// Same as [`set_free_balance`], but will create a new account. - /// - /// Returns if the account was successfully updated or update has led to killing of the account. - /// - /// [`set_free_balance`]: #method.set_free_balance - pub fn set_free_balance_creating(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { - 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 - // the term "balance" is used *here* it should be assumed to mean "free balance" - // in the rest of the module. - // Free balance can never be less than ED. If that happens, it gets reduced to zero - // and the account information relevant to this subsystem is deleted (i.e. the - // account is reaped). - // NOTE: This is orthogonal to the `Bondage` value that an account has, a high - // value of which makes even the `free_balance` unspendable. - if balance < ed { - Self::set_free_balance(who, balance); - UpdateBalanceOutcome::AccountKilled - } else { - if !>::exists(who) { - Self::new_account(&who, balance); - } - Self::set_free_balance(who, balance); - - UpdateBalanceOutcome::Updated - } - } - - /// Transfer some liquid free balance to another staker. - pub fn make_transfer(transactor: &T::AccountId, dest: &T::AccountId, value: T::Balance) -> Result { - let from_balance = Self::free_balance(transactor); - let to_balance = Self::free_balance(dest); - let would_create = to_balance.is_zero(); - let fee = if would_create { Self::creation_fee() } else { Self::transfer_fee() }; - let liability = match value.checked_add(&fee) { - Some(l) => l, - None => return Err("got overflow after adding a fee to value"), - }; - - let new_from_balance = match from_balance.checked_sub(&liability) { - None => return Err("balance too low to send value"), - Some(b) => b, - }; - if would_create && value < Self::existential_deposit() { - return Err("value too low to create account"); - } - Self::ensure_account_can_withdraw(transactor, value, WithdrawReason::Transfer, new_from_balance)?; - - // NOTE: total stake being stored in the same type means that this could never overflow - // but better to be safe than sorry. - let new_to_balance = match to_balance.checked_add(&value) { - Some(b) => b, - None => return Err("destination balance too high to receive value"), - }; - - if transactor != dest { - Self::set_free_balance(transactor, new_from_balance); - Self::decrease_total_stake_by(fee); - Self::set_free_balance_creating(dest, new_to_balance); - Self::deposit_event(RawEvent::Transfer(transactor.clone(), dest.clone(), value, fee)); - } - - Ok(()) - } - /// Register a new account (with existential balance). + /// + /// This just calls appropriate hooks. It doesn't (necessarily) make any state changes. fn new_account(who: &T::AccountId, balance: T::Balance) { T::OnNewAccount::on_new_account(&who); Self::deposit_event(RawEvent::NewAccount(who.clone(), balance.clone())); } + /// Unregister an account. + /// + /// This just removes the nonce and leaves an event. fn reap_account(who: &T::AccountId) { >::remove(who); Self::deposit_event(RawEvent::ReapedAccount(who.clone())); } - /// Kill an account's free portion. + /// Account's free balance has dropped below existential deposit. Kill its + /// free side and the account completely if its reserved size is already dead. + /// + /// Will maintain total issuance. fn on_free_too_low(who: &T::AccountId) { - Self::decrease_total_stake_by(Self::free_balance(who)); - >::remove(who); + let dust = >::take(who); >::remove(who); + // underflow should never happen, but if it does, there's not much we can do about it. + if !dust.is_zero() { + T::DustRemoval::on_unbalanced(NegativeImbalance(dust)); + } + T::OnFreeBalanceZero::on_free_balance_zero(who); if Self::reserved_balance(who).is_zero() { @@ -346,57 +331,161 @@ impl, I: Instance> Module { } } - /// Kill an account's reserved portion. + /// Account's reserved balance has dropped below existential deposit. Kill its + /// reserved side and the account completely if its free size is already dead. + /// + /// Will maintain total issuance. fn on_reserved_too_low(who: &T::AccountId) { - Self::decrease_total_stake_by(Self::reserved_balance(who)); - >::remove(who); + let dust = >::take(who); + + // underflow should never happen, but it if does, there's nothing to be done here. + if !dust.is_zero() { + T::DustRemoval::on_unbalanced(NegativeImbalance(dust)); + } if Self::free_balance(who).is_zero() { Self::reap_account(who); } } +} - /// Increase TotalIssuance by Value. - pub fn increase_total_stake_by(value: T::Balance) { - if let Some(v) = >::total_issuance().checked_add(&value) { - >::put(v); +/// Opaque, move-only struct with private fields that serves as a token denoting that +/// funds have been created without any equal and opposite accounting. +#[must_use] +pub struct PositiveImbalance, I: Instance=DefaultInstance>(T::Balance); + +/// Opaque, move-only struct with private fields that serves as a token denoting that +/// funds have been destroyed without any equal and opposite accounting. +#[must_use] +pub struct NegativeImbalance, I: Instance=DefaultInstance>(T::Balance); + +impl, I: Instance> Imbalance for PositiveImbalance { + type Opposite = NegativeImbalance; + + fn zero() -> Self { + Self(Zero::zero()) + } + fn drop_zero(self) -> result::Result<(), Self> { + if self.0.is_zero() { + Ok(()) + } else { + Err(self) } } - /// Decrease TotalIssuance by Value. - pub fn decrease_total_stake_by(value: T::Balance) { - if let Some(v) = >::total_issuance().checked_sub(&value) { - >::put(v); + fn split(self, amount: T::Balance) -> (Self, Self) { + let first = self.0.min(amount); + let second = self.0 - first; + (Self(first), Self(second)) + } + fn merge(self, other: Self) -> Self { + Self(self.0.saturating_add(other.0)) + } + fn subsume(&mut self, other: Self) { + self.0 = self.0.saturating_add(other.0) + } + fn offset(self, other: Self::Opposite) -> result::Result { + if self.0 >= other.0 { + Ok(Self(self.0 - other.0)) + } else { + Err(NegativeImbalance(other.0 - self.0)) } } + fn peek(&self) -> T::Balance { + self.0.clone() + } +} - /// Returns `Ok` iff the account is able to make a withdrawal of the given amount - /// for the given reason. - /// - /// `Err(...)` with the reason why not otherwise. - pub fn ensure_account_can_withdraw( - who: &T::AccountId, - _amount: T::Balance, - reason: WithdrawReason, - new_balance: T::Balance, - ) -> Result { - match reason { - WithdrawReason::Reserve | WithdrawReason::Transfer if Self::vesting_balance(who) > new_balance => - return Err("vesting balance too high to send value"), - _ => {} - } - let locks = Self::locks(who); - if locks.is_empty() { - return Ok(()) - } - let now = >::block_number(); - if Self::locks(who).into_iter() - .all(|l| now >= l.until || new_balance >= l.amount || !l.reasons.contains(reason)) - { +impl, I: Instance> Imbalance for NegativeImbalance { + type Opposite = PositiveImbalance; + + fn zero() -> Self { + Self(Zero::zero()) + } + fn drop_zero(self) -> result::Result<(), Self> { + if self.0.is_zero() { Ok(()) } else { - Err("account liquidity restrictions prevent withdrawal") + Err(self) + } + } + fn split(self, amount: T::Balance) -> (Self, Self) { + let first = self.0.min(amount); + let second = self.0 - first; + (Self(first), Self(second)) + } + fn merge(self, other: Self) -> Self { + Self(self.0.saturating_add(other.0)) + } + fn subsume(&mut self, other: Self) { + self.0 = self.0.saturating_add(other.0) + } + fn offset(self, other: Self::Opposite) -> result::Result { + if self.0 >= other.0 { + Ok(Self(self.0 - other.0)) + } else { + Err(PositiveImbalance(other.0 - self.0)) } } + fn peek(&self) -> T::Balance { + self.0.clone() + } +} + +// TODO: #2052 +// Somewhat ugly hack in order to gain access to module's `increase_total_issuance_by` +// using only the Subtrait (which defines only the types that are not dependent +// on Positive/NegativeImbalance). Subtrait must be used otherwise we end up with a +// circular dependency with Trait having some types be dependent on PositiveImbalance +// and PositiveImbalance itself depending back on Trait for its Drop impl (and thus +// its type declaration). +// This works as long as `increase_total_issuance_by` doesn't use the Imbalance +// types (basically for charging fees). +// This should eventually be refactored so that the three type items that do +// depend on the Imbalance type (TransactionPayment, TransferPayment, DustRemoval) +// are placed in their own SRML module. +struct ElevatedTrait, I: Instance>(T, I); +impl, I: Instance> Clone for ElevatedTrait { + fn clone(&self) -> Self { unimplemented!() } +} +impl, I: Instance> PartialEq for ElevatedTrait { + fn eq(&self, _: &Self) -> bool { unimplemented!() } +} +impl, I: Instance> Eq for ElevatedTrait {} +impl, I: Instance> system::Trait for ElevatedTrait { + type Origin = T::Origin; + type Index = T::Index; + type BlockNumber = T::BlockNumber; + type Hash = T::Hash; + type Hashing = T::Hashing; + type Digest = T::Digest; + type AccountId = T::AccountId; + type Lookup = T::Lookup; + type Header = T::Header; + type Event = (); + type Log = T::Log; +} +impl, I: Instance> Trait for ElevatedTrait { + type Balance = T::Balance; + type OnFreeBalanceZero = T::OnFreeBalanceZero; + type OnNewAccount = T::OnNewAccount; + type Event = (); + type TransactionPayment = (); + type TransferPayment = (); + type DustRemoval = (); +} + +impl, I: Instance> Drop for PositiveImbalance { + /// Basic drop handler will just square up the total issuance. + fn drop(&mut self) { + , I>>::mutate(|v| *v = v.saturating_add(self.0)); + } +} + +impl, I: Instance> Drop for NegativeImbalance { + /// Basic drop handler will just square up the total issuance. + fn drop(&mut self) { + , I>>::mutate(|v| *v = v.saturating_sub(self.0)); + } } impl, I: Instance> Currency for Module @@ -404,6 +493,8 @@ where T::Balance: MaybeSerializeDebug { type Balance = T::Balance; + type PositiveImbalance = PositiveImbalance; + type NegativeImbalance = NegativeImbalance; fn total_balance(who: &T::AccountId) -> Self::Balance { Self::free_balance(who) + Self::reserved_balance(who) @@ -417,7 +508,7 @@ where Self::free_balance(who) .checked_sub(&value) .map_or(false, |new_balance| - Self::ensure_account_can_withdraw(who, value, WithdrawReason::Reserve, new_balance).is_ok() + Self::ensure_can_withdraw(who, value, WithdrawReason::Reserve, new_balance).is_ok() ) } @@ -437,29 +528,161 @@ where >::get(who) } - fn slash(who: &T::AccountId, value: Self::Balance) -> Option { + fn ensure_can_withdraw( + who: &T::AccountId, + _amount: T::Balance, + reason: WithdrawReason, + new_balance: T::Balance, + ) -> Result { + match reason { + WithdrawReason::Reserve | WithdrawReason::Transfer if Self::vesting_balance(who) > new_balance => + return Err("vesting balance too high to send value"), + _ => {} + } + let locks = Self::locks(who); + if locks.is_empty() { + return Ok(()) + } + let now = >::block_number(); + if Self::locks(who).into_iter() + .all(|l| now >= l.until || new_balance >= l.amount || !l.reasons.contains(reason)) + { + Ok(()) + } else { + Err("account liquidity restrictions prevent withdrawal") + } + } + + fn transfer(transactor: &T::AccountId, dest: &T::AccountId, value: Self::Balance) -> Result { + let from_balance = Self::free_balance(transactor); + let to_balance = Self::free_balance(dest); + let would_create = to_balance.is_zero(); + let fee = if would_create { Self::creation_fee() } else { Self::transfer_fee() }; + let liability = match value.checked_add(&fee) { + Some(l) => l, + None => return Err("got overflow after adding a fee to value"), + }; + + let new_from_balance = match from_balance.checked_sub(&liability) { + None => return Err("balance too low to send value"), + Some(b) => b, + }; + if would_create && value < Self::existential_deposit() { + return Err("value too low to create account"); + } + Self::ensure_can_withdraw(transactor, value, WithdrawReason::Transfer, new_from_balance)?; + + // NOTE: total stake being stored in the same type means that this could never overflow + // but better to be safe than sorry. + let new_to_balance = match to_balance.checked_add(&value) { + Some(b) => b, + None => return Err("destination balance too high to receive value"), + }; + + if transactor != dest { + Self::set_free_balance(transactor, new_from_balance); + if !>::exists(dest) { + Self::new_account(dest, new_to_balance); + } + Self::set_free_balance(dest, new_to_balance); + T::TransferPayment::on_unbalanced(NegativeImbalance(fee)); + Self::deposit_event(RawEvent::Transfer(transactor.clone(), dest.clone(), value, fee)); + } + + Ok(()) + } + + fn withdraw( + who: &T::AccountId, + value: Self::Balance, + reason: WithdrawReason, + liveness: ExistenceRequirement, + ) -> result::Result { + if let Some(new_balance) = Self::free_balance(who).checked_sub(&value) { + if liveness == ExistenceRequirement::KeepAlive && new_balance < Self::existential_deposit() { + return Err("payment would kill account") + } + Self::ensure_can_withdraw(who, value, reason, new_balance)?; + Self::set_free_balance(who, new_balance); + Ok(NegativeImbalance(value)) + } else { + Err("too few free funds in account") + } + } + + fn slash( + who: &T::AccountId, + value: Self::Balance + ) -> (Self::NegativeImbalance, Self::Balance) { let free_balance = Self::free_balance(who); let free_slash = cmp::min(free_balance, value); Self::set_free_balance(who, free_balance - free_slash); - Self::decrease_total_stake_by(free_slash); - if free_slash < value { - Self::slash_reserved(who, value - free_slash) + let remaining_slash = value - free_slash; + if !remaining_slash.is_zero() { + let reserved_balance = Self::reserved_balance(who); + let reserved_slash = cmp::min(reserved_balance, remaining_slash); + Self::set_reserved_balance(who, reserved_balance - reserved_slash); + (NegativeImbalance(free_slash + reserved_slash), remaining_slash - reserved_slash) } else { - None + (NegativeImbalance(value), Zero::zero()) } } - fn reward(who: &T::AccountId, value: Self::Balance) -> result::Result<(), &'static str> { + fn deposit_into_existing( + who: &T::AccountId, + value: Self::Balance + ) -> result::Result { if Self::total_balance(who).is_zero() { return Err("beneficiary account must pre-exist"); } Self::set_free_balance(who, Self::free_balance(who) + value); - Self::increase_total_stake_by(value); - Ok(()) + Ok(PositiveImbalance(value)) } - fn increase_free_balance_creating(who: &T::AccountId, value: Self::Balance) -> UpdateBalanceOutcome { - Self::set_free_balance_creating(who, Self::free_balance(who) + value) + fn deposit_creating( + who: &T::AccountId, + value: Self::Balance, + ) -> Self::PositiveImbalance { + let (imbalance, _) = Self::ensure_free_balance_is(who, Self::free_balance(who) + value); + if let SignedImbalance::Positive(p) = imbalance { + p + } else { + // Impossible, but be defensive. + Self::PositiveImbalance::zero() + } + } + + fn ensure_free_balance_is(who: &T::AccountId, balance: T::Balance) -> ( + SignedImbalance, + UpdateBalanceOutcome + ) { + let original = Self::free_balance(who); + let imbalance = if original <= balance { + SignedImbalance::Positive(PositiveImbalance(balance - original)) + } else { + SignedImbalance::Negative(NegativeImbalance(original - balance)) + }; + // 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 + // the term "balance" is used *here* it should be assumed to mean "free balance" + // in the rest of the module. + // Free balance can never be less than ED. If that happens, it gets reduced to zero + // and the account information relevant to this subsystem is deleted (i.e. the + // account is reaped). + // NOTE: This is orthogonal to the `Bondage` value that an account has, a high + // value of which makes even the `free_balance` unspendable. + let outcome = if balance < >::existential_deposit() { + Self::set_free_balance(who, balance); + UpdateBalanceOutcome::AccountKilled + } else { + if !>::exists(who) { + Self::new_account(&who, balance); + } + Self::set_free_balance(who, balance); + UpdateBalanceOutcome::Updated + }; + (imbalance, outcome) } fn reserve(who: &T::AccountId, value: Self::Balance) -> result::Result<(), &'static str> { @@ -468,41 +691,36 @@ where return Err("not enough free funds") } let new_balance = b - value; - Self::ensure_account_can_withdraw(who, value, WithdrawReason::Reserve, new_balance)?; + Self::ensure_can_withdraw(who, value, WithdrawReason::Reserve, new_balance)?; Self::set_reserved_balance(who, Self::reserved_balance(who) + value); Self::set_free_balance(who, new_balance); Ok(()) } - fn unreserve(who: &T::AccountId, value: Self::Balance) -> Option { + fn unreserve(who: &T::AccountId, value: Self::Balance) -> Self::Balance { let b = Self::reserved_balance(who); let actual = cmp::min(b, value); Self::set_free_balance(who, Self::free_balance(who) + actual); Self::set_reserved_balance(who, b - actual); - if actual == value { - None - } else { - Some(value - actual) - } + value - actual } - fn slash_reserved(who: &T::AccountId, value: Self::Balance) -> Option { + fn slash_reserved( + who: &T::AccountId, + value: Self::Balance + ) -> (Self::NegativeImbalance, Self::Balance) { let b = Self::reserved_balance(who); let slash = cmp::min(b, value); + // underflow should never happen, but it if does, there's nothing to be done here. Self::set_reserved_balance(who, b - slash); - Self::decrease_total_stake_by(slash); - if value == slash { - None - } else { - Some(value - slash) - } + (NegativeImbalance(slash), value - slash) } fn repatriate_reserved( slashed: &T::AccountId, beneficiary: &T::AccountId, - value: Self::Balance - ) -> result::Result, &'static str> { + value: Self::Balance, + ) -> result::Result { if Self::total_balance(beneficiary).is_zero() { return Err("beneficiary account must pre-exist"); } @@ -510,11 +728,7 @@ where let slash = cmp::min(b, value); Self::set_free_balance(beneficiary, Self::free_balance(beneficiary) + slash); Self::set_reserved_balance(slashed, b - slash); - if value == slash { - Ok(None) - } else { - Ok(Some(value - slash)) - } + Ok(value - slash) } } @@ -592,26 +806,17 @@ where } } -impl, I: Instance> TransferAsset for Module { - type Amount = T::Balance; - - fn transfer(from: &T::AccountId, to: &T::AccountId, amount: T::Balance) -> Result { - Self::make_transfer(from, to, amount) - } - - fn withdraw(who: &T::AccountId, value: T::Balance, reason: WithdrawReason) -> Result { - let b = Self::free_balance(who); - ensure!(b >= value, "account has too few funds"); - let new_balance = b - value; - Self::ensure_account_can_withdraw(who, value, reason, new_balance)?; - Self::set_free_balance(who, new_balance); - Self::decrease_total_stake_by(value); - Ok(()) - } - - fn deposit(who: &T::AccountId, value: T::Balance) -> Result { - Self::set_free_balance_creating(who, Self::free_balance(who) + value); - Self::increase_total_stake_by(value); +impl MakePayment for Module { + fn make_payment(transactor: &T::AccountId, encoded_len: usize) -> Result { + let encoded_len = >::sa(encoded_len as u64); + let transaction_fee = Self::transaction_base_fee() + Self::transaction_byte_fee() * encoded_len; + let imbalance = Self::withdraw( + transactor, + transaction_fee, + WithdrawReason::TransactionPayment, + ExistenceRequirement::KeepAlive + )?; + T::TransactionPayment::on_unbalanced(imbalance); Ok(()) } } @@ -624,3 +829,4 @@ where Self::total_balance(who).is_zero() } } + diff --git a/srml/balances/src/mock.rs b/srml/balances/src/mock.rs index 55403a12aa..adec340bf4 100644 --- a/srml/balances/src/mock.rs +++ b/srml/balances/src/mock.rs @@ -50,9 +50,14 @@ impl Trait for Runtime { type OnFreeBalanceZero = (); type OnNewAccount = (); type Event = (); + type TransactionPayment = (); + type DustRemoval = (); + type TransferPayment = (); } pub struct ExtBuilder { + transaction_base_fee: u64, + transaction_byte_fee: u64, existential_deposit: u64, transfer_fee: u64, creation_fee: u64, @@ -62,6 +67,8 @@ pub struct ExtBuilder { impl Default for ExtBuilder { fn default() -> Self { Self { + transaction_base_fee: 0, + transaction_byte_fee: 0, existential_deposit: 0, transfer_fee: 0, creation_fee: 0, @@ -84,8 +91,16 @@ impl ExtBuilder { self.creation_fee = creation_fee; self } + pub fn transaction_fees(mut self, base_fee: u64, byte_fee: u64) -> Self { + self.transaction_base_fee = base_fee; + self.transaction_byte_fee = byte_fee; + self + } pub fn monied(mut self, monied: bool) -> Self { self.monied = monied; + if self.existential_deposit == 0 { + self.existential_deposit = 1; + } self } pub fn vesting(mut self, vesting: bool) -> Self { @@ -94,16 +109,13 @@ impl ExtBuilder { } pub fn build(self) -> runtime_io::TestExternalities { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; - let balance_factor = if self.existential_deposit > 0 { - 256 - } else { - 1 - }; t.extend(GenesisConfig:: { + transaction_base_fee: self.transaction_base_fee, + transaction_byte_fee: self.transaction_byte_fee, balances: if self.monied { - vec![(1, 10 * balance_factor), (2, 20 * balance_factor), (3, 30 * balance_factor), (4, 40 * balance_factor)] + vec![(1, 10 * self.existential_deposit), (2, 20 * self.existential_deposit), (3, 30 * self.existential_deposit), (4, 40 * self.existential_deposit)] } else { - vec![(10, balance_factor), (20, balance_factor)] + vec![] }, existential_deposit: self.existential_deposit, transfer_fee: self.transfer_fee, diff --git a/srml/balances/src/tests.rs b/srml/balances/src/tests.rs index 7fded7068a..802f184aca 100644 --- a/srml/balances/src/tests.rs +++ b/srml/balances/src/tests.rs @@ -23,7 +23,7 @@ use mock::{Balances, ExtBuilder, Runtime, System}; use runtime_io::with_externalities; use srml_support::{ assert_noop, assert_ok, assert_err, - traits::{LockableCurrency, LockIdentifier, WithdrawReason, WithdrawReasons, Currency, TransferAsset} + traits::{LockableCurrency, LockIdentifier, WithdrawReason, WithdrawReasons, Currency, MakePayment} }; const ID_1: LockIdentifier = *b"1 "; @@ -32,123 +32,123 @@ const ID_3: LockIdentifier = *b"3 "; #[test] fn basic_locking_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { assert_eq!(Balances::free_balance(&1), 10); Balances::set_lock(ID_1, &1, 9, u64::max_value(), WithdrawReasons::all()); - assert_noop!(>::transfer(&1, &2, 5), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 5), "account liquidity restrictions prevent withdrawal"); }); } #[test] fn partial_locking_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, 5, u64::max_value(), WithdrawReasons::all()); - assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::transfer(&1, &2, 1)); }); } #[test] fn lock_removal_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, u64::max_value(), u64::max_value(), WithdrawReasons::all()); Balances::remove_lock(ID_1, &1); - assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::transfer(&1, &2, 1)); }); } #[test] fn lock_replacement_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, u64::max_value(), u64::max_value(), WithdrawReasons::all()); Balances::set_lock(ID_1, &1, 5, u64::max_value(), WithdrawReasons::all()); - assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::transfer(&1, &2, 1)); }); } #[test] fn double_locking_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, 5, u64::max_value(), WithdrawReasons::all()); Balances::set_lock(ID_2, &1, 5, u64::max_value(), WithdrawReasons::all()); - assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::transfer(&1, &2, 1)); }); } #[test] fn combination_locking_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, u64::max_value(), 0, WithdrawReasons::none()); Balances::set_lock(ID_2, &1, 0, u64::max_value(), WithdrawReasons::none()); Balances::set_lock(ID_3, &1, 0, 0, WithdrawReasons::all()); - assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::transfer(&1, &2, 1)); }); } #[test] fn lock_value_extension_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, 5, u64::max_value(), WithdrawReasons::all()); - assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); Balances::extend_lock(ID_1, &1, 2, u64::max_value(), WithdrawReasons::all()); - assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); Balances::extend_lock(ID_1, &1, 8, u64::max_value(), WithdrawReasons::all()); - assert_noop!(>::transfer(&1, &2, 3), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 3), "account liquidity restrictions prevent withdrawal"); }); } #[test] fn lock_reasons_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).transaction_fees(0, 1).build(), || { Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::Transfer.into()); - assert_noop!(>::transfer(&1, &2, 1), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 1), "account liquidity restrictions prevent withdrawal"); assert_ok!(>::reserve(&1, 1)); - assert_ok!(>::withdraw(&1, 1, WithdrawReason::TransactionPayment)); + assert_ok!(>::make_payment(&1, 1)); Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::Reserve.into()); - assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::transfer(&1, &2, 1)); assert_noop!(>::reserve(&1, 1), "account liquidity restrictions prevent withdrawal"); - assert_ok!(>::withdraw(&1, 1, WithdrawReason::TransactionPayment)); + assert_ok!(>::make_payment(&1, 1)); Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::TransactionPayment.into()); - assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::transfer(&1, &2, 1)); assert_ok!(>::reserve(&1, 1)); - assert_noop!(>::withdraw(&1, 1, WithdrawReason::TransactionPayment), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::make_payment(&1, 1), "account liquidity restrictions prevent withdrawal"); }); } #[test] fn lock_block_number_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, 10, 2, WithdrawReasons::all()); - assert_noop!(>::transfer(&1, &2, 1), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 1), "account liquidity restrictions prevent withdrawal"); System::set_block_number(2); - assert_ok!(>::transfer(&1, &2, 1)); + assert_ok!(>::transfer(&1, &2, 1)); }); } #[test] fn lock_block_number_extension_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, 10, 2, WithdrawReasons::all()); - assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); Balances::extend_lock(ID_1, &1, 10, 1, WithdrawReasons::all()); - assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); System::set_block_number(2); Balances::extend_lock(ID_1, &1, 10, 8, WithdrawReasons::all()); - assert_noop!(>::transfer(&1, &2, 3), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 3), "account liquidity restrictions prevent withdrawal"); }); } #[test] fn lock_reasons_extension_should_work() { - with_externalities(&mut ExtBuilder::default().monied(true).build(), || { + with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).build(), || { Balances::set_lock(ID_1, &1, 10, 10, WithdrawReason::Transfer.into()); - assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); Balances::extend_lock(ID_1, &1, 10, 10, WithdrawReasons::none()); - assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); Balances::extend_lock(ID_1, &1, 10, 10, WithdrawReason::Reserve.into()); - assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::transfer(&1, &2, 6), "account liquidity restrictions prevent withdrawal"); }); } @@ -168,7 +168,7 @@ fn default_indexing_on_new_accounts_should_not_work2() { "value too low to create account" ); assert_eq!(Balances::is_dead_account(&5), true); // account 5 should not exist - assert_eq!(Balances::free_balance(&1), 256 * 10); + assert_eq!(Balances::free_balance(&1), 100); }, ); } @@ -196,7 +196,7 @@ fn reserved_balance_should_prevent_reclaim_count() { assert_eq!(Balances::total_balance(&5), 256 * 1 + 0x69); assert_eq!(Balances::is_dead_account(&5), false); - assert_eq!(Balances::slash(&2, 256 * 18 + 2), None); // account 2 gets slashed + assert!(Balances::slash(&2, 256 * 18 + 2).1.is_zero()); // account 2 gets slashed assert_eq!(Balances::total_balance(&2), 0); // "reserve" account reduced to 255 (below ED) so account deleted assert_eq!(System::account_nonce(&2), 0); // nonce zero assert_eq!(Balances::is_dead_account(&2), true); @@ -213,7 +213,7 @@ fn reserved_balance_should_prevent_reclaim_count() { fn reward_should_work() { with_externalities(&mut ExtBuilder::default().monied(true).build(), || { assert_eq!(Balances::total_balance(&1), 10); - assert_ok!(Balances::reward(&1, 10)); + assert_ok!(Balances::deposit_into_existing(&1, 10).map(drop)); assert_eq!(Balances::total_balance(&1), 20); assert_eq!(>::get(), 110); }); @@ -223,17 +223,17 @@ fn reward_should_work() { fn dust_account_removal_should_work() { with_externalities( &mut ExtBuilder::default() - .existential_deposit(256 * 10) + .existential_deposit(100) .monied(true) .build(), || { System::inc_account_nonce(&2); assert_eq!(System::account_nonce(&2), 1); - assert_eq!(Balances::total_balance(&2), 256 * 20); + assert_eq!(Balances::total_balance(&2), 2000); - assert_ok!(Balances::transfer(Some(2).into(), 5, 256 * 10 + 1)); // index 1 (account 2) becomes zombie + assert_ok!(Balances::transfer(Some(2).into(), 5, 1901)); // index 1 (account 2) becomes zombie assert_eq!(Balances::total_balance(&2), 0); - assert_eq!(Balances::total_balance(&5), 256 * 10 + 1); + assert_eq!(Balances::total_balance(&5), 1901); assert_eq!(System::account_nonce(&2), 0); }, ); @@ -243,17 +243,17 @@ fn dust_account_removal_should_work() { fn dust_account_removal_should_work2() { with_externalities( &mut ExtBuilder::default() - .existential_deposit(256 * 10) + .existential_deposit(100) .creation_fee(50) .monied(true) .build(), || { System::inc_account_nonce(&2); assert_eq!(System::account_nonce(&2), 1); - assert_eq!(Balances::total_balance(&2), 256 * 20); - assert_ok!(Balances::transfer(Some(2).into(), 5, 256 * 10)); // index 1 (account 2) becomes zombie for 256*10 + 50(fee) < 256 * 10 (ext_deposit) + assert_eq!(Balances::total_balance(&2), 2000); + assert_ok!(Balances::transfer(Some(2).into(), 5, 1851)); // index 1 (account 2) becomes zombie for 256*10 + 50(fee) < 256 * 10 (ext_deposit) assert_eq!(Balances::total_balance(&2), 0); - assert_eq!(Balances::total_balance(&5), 256 * 10); + assert_eq!(Balances::total_balance(&5), 1851); assert_eq!(System::account_nonce(&2), 0); }, ); @@ -262,7 +262,7 @@ fn dust_account_removal_should_work2() { #[test] fn balance_works() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 42); + let _ = Balances::deposit_creating(&1, 42); assert_eq!(Balances::free_balance(&1), 42); assert_eq!(Balances::reserved_balance(&1), 0); assert_eq!(Balances::total_balance(&1), 42); @@ -275,8 +275,7 @@ fn balance_works() { #[test] fn balance_transfer_works() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); - Balances::increase_total_stake_by(111); + let _ = Balances::deposit_creating(&1, 111); assert_ok!(Balances::transfer(Some(1).into(), 2, 69)); assert_eq!(Balances::total_balance(&1), 42); assert_eq!(Balances::total_balance(&2), 69); @@ -286,7 +285,7 @@ fn balance_transfer_works() { #[test] fn reserving_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); + let _ = Balances::deposit_creating(&1, 111); assert_eq!(Balances::total_balance(&1), 111); assert_eq!(Balances::free_balance(&1), 111); @@ -303,7 +302,7 @@ fn reserving_balance_should_work() { #[test] fn balance_transfer_when_reserved_should_not_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); + let _ = Balances::deposit_creating(&1, 111); assert_ok!(Balances::reserve(&1, 69)); assert_noop!(Balances::transfer(Some(1).into(), 2, 69), "balance too low to send value"); }); @@ -312,7 +311,7 @@ fn balance_transfer_when_reserved_should_not_work() { #[test] fn deducting_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); + let _ = Balances::deposit_creating(&1, 111); assert_ok!(Balances::reserve(&1, 69)); assert_eq!(Balances::free_balance(&1), 42); }); @@ -321,7 +320,7 @@ fn deducting_balance_should_work() { #[test] fn refunding_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 42); + let _ = Balances::deposit_creating(&1, 42); Balances::set_reserved_balance(&1, 69); Balances::unreserve(&1, 69); assert_eq!(Balances::free_balance(&1), 111); @@ -332,33 +331,31 @@ fn refunding_balance_should_work() { #[test] fn slashing_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); - Balances::increase_total_stake_by(111); + let _ = Balances::deposit_creating(&1, 111); assert_ok!(Balances::reserve(&1, 69)); - assert!(Balances::slash(&1, 69).is_none()); + assert!(Balances::slash(&1, 69).1.is_zero()); assert_eq!(Balances::free_balance(&1), 0); assert_eq!(Balances::reserved_balance(&1), 42); - assert_eq!(>::get(), 44); + assert_eq!(>::get(), 42); }); } #[test] fn slashing_incomplete_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 42); - Balances::increase_total_stake_by(42); + let _ = Balances::deposit_creating(&1, 42); assert_ok!(Balances::reserve(&1, 21)); - assert!(Balances::slash(&1, 69).is_some()); + assert_eq!(Balances::slash(&1, 69).1, 27); assert_eq!(Balances::free_balance(&1), 0); assert_eq!(Balances::reserved_balance(&1), 0); - assert_eq!(>::get(), 2); + assert_eq!(>::get(), 0); }); } #[test] fn unreserving_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); + let _ = Balances::deposit_creating(&1, 111); assert_ok!(Balances::reserve(&1, 111)); Balances::unreserve(&1, 42); assert_eq!(Balances::reserved_balance(&1), 69); @@ -369,36 +366,34 @@ fn unreserving_balance_should_work() { #[test] fn slashing_reserved_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); - Balances::increase_total_stake_by(111); + let _ = Balances::deposit_creating(&1, 111); assert_ok!(Balances::reserve(&1, 111)); - assert!(Balances::slash_reserved(&1, 42).is_none()); + assert_eq!(Balances::slash_reserved(&1, 42).1, 0); assert_eq!(Balances::reserved_balance(&1), 69); assert_eq!(Balances::free_balance(&1), 0); - assert_eq!(>::get(), 71); + assert_eq!(>::get(), 69); }); } #[test] fn slashing_incomplete_reserved_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); - Balances::increase_total_stake_by(111); + let _ = Balances::deposit_creating(&1, 111); assert_ok!(Balances::reserve(&1, 42)); - assert!(Balances::slash_reserved(&1, 69).is_some()); + assert_eq!(Balances::slash_reserved(&1, 69).1, 27); assert_eq!(Balances::free_balance(&1), 69); assert_eq!(Balances::reserved_balance(&1), 0); - assert_eq!(>::get(), 71); + assert_eq!(>::get(), 69); }); } #[test] fn transferring_reserved_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 110); - Balances::set_free_balance(&2, 1); + let _ = Balances::deposit_creating(&1, 110); + let _ = Balances::deposit_creating(&2, 1); assert_ok!(Balances::reserve(&1, 110)); - assert_ok!(Balances::repatriate_reserved(&1, &2, 41), None); + assert_ok!(Balances::repatriate_reserved(&1, &2, 41), 0); assert_eq!(Balances::reserved_balance(&1), 69); assert_eq!(Balances::free_balance(&1), 0); assert_eq!(Balances::reserved_balance(&2), 0); @@ -409,7 +404,7 @@ fn transferring_reserved_balance_should_work() { #[test] fn transferring_reserved_balance_to_nonexistent_should_fail() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 111); + let _ = Balances::deposit_creating(&1, 111); assert_ok!(Balances::reserve(&1, 111)); assert_noop!(Balances::repatriate_reserved(&1, &2, 42), "beneficiary account must pre-exist"); }); @@ -418,10 +413,10 @@ fn transferring_reserved_balance_to_nonexistent_should_fail() { #[test] fn transferring_incomplete_reserved_balance_should_work() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&1, 110); - Balances::set_free_balance(&2, 1); + let _ = Balances::deposit_creating(&1, 110); + let _ = Balances::deposit_creating(&2, 1); assert_ok!(Balances::reserve(&1, 41)); - assert!(Balances::repatriate_reserved(&1, &2, 69).unwrap().is_some()); + assert_ok!(Balances::repatriate_reserved(&1, &2, 69), 28); assert_eq!(Balances::reserved_balance(&1), 0); assert_eq!(Balances::free_balance(&1), 69); assert_eq!(Balances::reserved_balance(&2), 0); @@ -450,27 +445,27 @@ fn account_removal_on_free_too_low() { with_externalities( &mut ExtBuilder::default().existential_deposit(100).build(), || { - // Setup two accounts with free balance above the exsistential threshold. - { - Balances::set_free_balance(&1, 110); - Balances::increase_total_stake_by(110); + assert_eq!(>::get(), 0); - Balances::set_free_balance(&2, 110); - Balances::increase_total_stake_by(110); + // Setup two accounts with free balance above the existential threshold. + let _ = Balances::deposit_creating(&1, 110); + let _ = Balances::deposit_creating(&2, 110); - assert_eq!(>::get(), 732); - } + assert_eq!(Balances::free_balance(&1), 110); + assert_eq!(Balances::free_balance(&2), 110); + assert_eq!(>::get(), 220); // Transfer funds from account 1 of such amount that after this transfer - // the balance of account 1 will be below the exsistential threshold. + // the balance of account 1 will be below the existential threshold. // This should lead to the removal of all balance of this account. assert_ok!(Balances::transfer(Some(1).into(), 2, 20)); // Verify free balance removal of account 1. assert_eq!(Balances::free_balance(&1), 0); + assert_eq!(Balances::free_balance(&2), 130); // Verify that TotalIssuance tracks balance removal when free balance is too low. - assert_eq!(>::get(), 642); + assert_eq!(>::get(), 130); }, ); } @@ -495,7 +490,7 @@ fn transfer_overflow_isnt_exploitable() { fn check_vesting_status() { with_externalities( &mut ExtBuilder::default() - .existential_deposit(10) + .existential_deposit(256) .monied(true) .vesting(true) .build(), @@ -545,10 +540,10 @@ fn unvested_balance_should_not_transfer() { || { assert_eq!(System::block_number(), 1); let user1_free_balance = Balances::free_balance(&1); - assert_eq!(user1_free_balance, 256 * 10); // Account 1 has free balance - assert_eq!(Balances::vesting_balance(&1), user1_free_balance - 256); // Account 1 has only 256 units vested at block 1 + assert_eq!(user1_free_balance, 100); // Account 1 has free balance + assert_eq!(Balances::vesting_balance(&1), 90); // Account 1 has only 10 units vested at block 1 assert_noop!( - Balances::transfer(Some(1).into(), 2, 256 * 2), + Balances::transfer(Some(1).into(), 2, 11), "vesting balance too high to send value" ); // Account 1 cannot send more than vested amount } @@ -564,13 +559,11 @@ fn vested_balance_should_transfer() { .vesting(true) .build(), || { - System::set_block_number(5); - assert_eq!(System::block_number(), 5); + assert_eq!(System::block_number(), 1); let user1_free_balance = Balances::free_balance(&1); - assert_eq!(user1_free_balance, 256 * 10); // Account 1 has free balance - - assert_eq!(Balances::vesting_balance(&1), user1_free_balance - 256 * 5); // Account 1 has 256 * 5 units vested at block 5 - assert_ok!(Balances::transfer(Some(1).into(), 2, 256 * 2)); // Account 1 can now send vested value + assert_eq!(user1_free_balance, 100); // Account 1 has free balance + assert_eq!(Balances::vesting_balance(&1), 90); // Account 1 has only 10 units vested at block 1 + assert_ok!(Balances::transfer(Some(1).into(), 2, 10)); } ); } @@ -585,12 +578,12 @@ fn extra_balance_should_transfer() { .build(), || { assert_eq!(System::block_number(), 1); - assert_ok!(Balances::transfer(Some(3).into(), 1, 256 * 10)); + assert_ok!(Balances::transfer(Some(3).into(), 1, 100)); let user1_free_balance = Balances::free_balance(&1); - assert_eq!(user1_free_balance, 256 * 20); // Account 1 has 2560 more free balance than normal + assert_eq!(user1_free_balance, 200); // Account 1 has 100 more free balance than normal - assert_eq!(Balances::vesting_balance(&1), 256 * 10 - 256); // Account 1 has 256 units vested at block 1 - assert_ok!(Balances::transfer(Some(1).into(), 2, 256 * 5)); // Account 1 can send extra units gained + assert_eq!(Balances::vesting_balance(&1), 90); // Account 1 has 90 units vested at block 1 + assert_ok!(Balances::transfer(Some(1).into(), 2, 105)); // Account 1 can send extra units gained } ); } diff --git a/srml/contract/Cargo.toml b/srml/contract/Cargo.toml index 0d373978b0..cb4ad0ffc1 100644 --- a/srml/contract/Cargo.toml +++ b/srml/contract/Cargo.toml @@ -19,7 +19,6 @@ 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 } timestamp = { package = "srml-timestamp", path = "../timestamp", default-features = false } -fees = { package = "srml-fees", path = "../fees", default-features = false } [dev-dependencies] wabt = "~0.7.4" @@ -44,5 +43,4 @@ std = [ "timestamp/std", "parity-wasm/std", "pwasm-utils/std", - "fees/std", ] diff --git a/srml/contract/src/account_db.rs b/srml/contract/src/account_db.rs index 52fd80a8a2..2fcddd5d79 100644 --- a/srml/contract/src/account_db.rs +++ b/srml/contract/src/account_db.rs @@ -21,7 +21,9 @@ use {balances, system}; use rstd::cell::RefCell; use rstd::collections::btree_map::{BTreeMap, Entry}; use rstd::prelude::*; -use srml_support::{StorageMap, StorageDoubleMap, traits::UpdateBalanceOutcome}; +use runtime_primitives::traits::Zero; +use srml_support::{StorageMap, StorageDoubleMap, traits::{UpdateBalanceOutcome, + SignedImbalance, Currency, Imbalance}}; pub struct ChangeEntry { balance: Option, @@ -63,11 +65,12 @@ impl AccountDb for DirectAccountDb { balances::Module::::free_balance(account) } fn commit(&mut self, s: ChangeSet) { + let mut total_imbalance = SignedImbalance::zero(); for (address, changed) in s.into_iter() { if let Some(balance) = changed.balance { - if let UpdateBalanceOutcome::AccountKilled = - balances::Module::::set_free_balance_creating(&address, balance) - { + let (imbalance, outcome) = balances::Module::::ensure_free_balance_is(&address, balance); + total_imbalance = total_imbalance.merge(imbalance); + if let UpdateBalanceOutcome::AccountKilled = outcome { // Account killed. This will ultimately lead to calling `OnFreeBalanceZero` callback // which will make removal of CodeHashOf and StorageOf for this account. // In order to avoid writing over the deleted properties we `continue` here. @@ -89,6 +92,16 @@ impl AccountDb for DirectAccountDb { } } } + + match total_imbalance { + // If we've detected a positive imbalance as a result of our contract-level machinations + // then it's indicative of a buggy contracts system. + // Panicking is far from ideal as it opens up a DoS attack on block validators, however + // it's a less bad option than allowing arbitrary value to be created. + SignedImbalance::Positive(ref p) if !p.peek().is_zero() => + panic!("contract subsystem resulting in positive imbalance!"), + _ => {} + } } } diff --git a/srml/contract/src/exec.rs b/srml/contract/src/exec.rs index 0dbe8b3260..8650839bf1 100644 --- a/srml/contract/src/exec.rs +++ b/srml/contract/src/exec.rs @@ -20,7 +20,7 @@ use crate::gas::{GasMeter, Token, approx_gas_for_balance}; use rstd::prelude::*; use runtime_primitives::traits::{CheckedAdd, CheckedSub, Zero}; -use srml_support::traits::WithdrawReason; +use srml_support::traits::{WithdrawReason, Currency}; use timestamp; pub type BalanceOf = ::Balance; @@ -520,7 +520,7 @@ fn transfer<'a, T: Trait, V: Vm, L: Loader>( if would_create && value < ctx.config.existential_deposit { return Err("value too low to create account"); } - >::ensure_account_can_withdraw(transactor, value, WithdrawReason::Transfer, new_from_balance)?; + >::ensure_can_withdraw(transactor, value, WithdrawReason::Transfer, new_from_balance)?; let new_to_balance = match to_balance.checked_add(&value) { Some(b) => b, diff --git a/srml/contract/src/gas.rs b/srml/contract/src/gas.rs index fb96ff66e5..205a422871 100644 --- a/srml/contract/src/gas.rs +++ b/srml/contract/src/gas.rs @@ -18,7 +18,7 @@ use crate::{GasSpent, Module, Trait}; use balances; use runtime_primitives::BLOCK_FULL; use runtime_primitives::traits::{As, CheckedMul, CheckedSub, Zero}; -use srml_support::StorageValue; +use srml_support::{StorageValue, traits::{OnUnbalanced, ExistenceRequirement, WithdrawReason, Currency, Imbalance}}; #[cfg(test)] use std::{any::Any, fmt::Debug}; @@ -202,7 +202,7 @@ impl GasMeter { pub fn buy_gas( transactor: &T::AccountId, gas_limit: T::Gas, -) -> Result, &'static str> { +) -> Result<(GasMeter, balances::NegativeImbalance), &'static str> { // Check if the specified amount of gas is available in the current block. // This cannot underflow since `gas_spent` is never greater than `block_gas_limit`. let gas_available = >::block_gas_limit() - >::gas_spent(); @@ -213,40 +213,47 @@ pub fn buy_gas( // Buy the specified amount of gas. let gas_price = >::gas_price(); - let b = >::free_balance(transactor); let cost = >::as_(gas_limit.clone()) .checked_mul(&gas_price) .ok_or("overflow multiplying gas limit by price")?; - let new_balance = b.checked_sub(&cost); - if new_balance < Some(>::existential_deposit()) { - return Err("not enough funds for transaction fee"); - } + let imbalance = >::withdraw( + transactor, + cost, + WithdrawReason::Fee, + ExistenceRequirement::KeepAlive + )?; - >::set_free_balance(transactor, b - cost); - >::decrease_total_stake_by(cost); - Ok(GasMeter { + Ok((GasMeter { limit: gas_limit, gas_left: gas_limit, gas_price, + #[cfg(test)] tokens: Vec::new(), - }) + }, imbalance)) } /// Refund the unused gas. -pub fn refund_unused_gas(transactor: &T::AccountId, gas_meter: GasMeter) { +pub fn refund_unused_gas( + transactor: &T::AccountId, + gas_meter: GasMeter, + imbalance: balances::NegativeImbalance, +) { + let gas_spent = gas_meter.spent(); + let gas_left = gas_meter.gas_left(); + // Increase total spent gas. // This cannot overflow, since `gas_spent` is never greater than `block_gas_limit`, which // also has T::Gas type. - let gas_spent = >::gas_spent() + gas_meter.spent(); - >::put(gas_spent); + >::mutate(|block_gas_spent| *block_gas_spent += gas_spent); // Refund gas left by the price it was bought. - let b = >::free_balance(transactor); - let refund = >::as_(gas_meter.gas_left) * gas_meter.gas_price; - >::set_free_balance(transactor, b + refund); - >::increase_total_stake_by(refund); + let refund = >::as_(gas_left) * gas_meter.gas_price; + let refund_imbalance = >::deposit_creating(transactor, refund); + if let Ok(imbalance) = imbalance.offset(refund_imbalance) { + T::GasPayment::on_unbalanced(imbalance); + } } /// A little handy utility for converting a value in balance units into approximitate value in gas units diff --git a/srml/contract/src/lib.rs b/srml/contract/src/lib.rs index 3f6cbde88f..1a703a5321 100644 --- a/srml/contract/src/lib.rs +++ b/srml/contract/src/lib.rs @@ -74,11 +74,10 @@ use parity_codec::{Codec, Encode, Decode}; use runtime_primitives::traits::{Hash, As, SimpleArithmetic,Bounded, StaticLookup}; use srml_support::dispatch::{Result, Dispatchable}; use srml_support::{Parameter, StorageMap, StorageValue, StorageDoubleMap, decl_module, decl_event, decl_storage}; -use srml_support::traits::OnFreeBalanceZero; +use srml_support::traits::{OnFreeBalanceZero, OnUnbalanced}; use system::{ensure_signed, RawOrigin}; use runtime_io::{blake2_256, twox_128}; use timestamp; -use fees; pub type CodeHash = ::Hash; @@ -92,7 +91,7 @@ pub trait ComputeDispatchFee { fn compute_dispatch_fee(call: &Call) -> Balance; } -pub trait Trait: fees::Trait + balances::Trait + timestamp::Trait { +pub trait Trait: balances::Trait + timestamp::Trait { /// The outer call dispatch type. type Call: Parameter + Dispatchable::Origin>; @@ -110,6 +109,9 @@ pub trait Trait: fees::Trait + balances::Trait + timestamp::Trait { /// It is recommended (though not required) for this function to return a fee that would be taken /// by executive module for regular dispatch. type ComputeDispatchFee: ComputeDispatchFee::Balance>; + + /// Handler for the unbalanced reduction when making a gas payment. + type GasPayment: OnUnbalanced>; } /// Simple contract address determintator. @@ -136,14 +138,14 @@ where } /// The default dispatch fee computor computes the fee in the same way that -/// implementation of `ChargeBytesFee` for fees module does. +/// implementation of `MakePayment` for balances module does. pub struct DefaultDispatchFeeComputor(PhantomData); impl ComputeDispatchFee for DefaultDispatchFeeComputor { fn compute_dispatch_fee(call: &T::Call) -> T::Balance { let encoded_len = call.using_encoded(|encoded| encoded.len()); - let base_fee = >::transaction_base_fee(); - let byte_fee = >::transaction_byte_fee(); - >::sa(base_fee.as_() + byte_fee.as_() * encoded_len as u64) + let base_fee = >::transaction_base_fee(); + let byte_fee = >::transaction_byte_fee(); + base_fee + byte_fee * >::sa(encoded_len as u64) } } @@ -175,14 +177,14 @@ decl_module! { let origin = ensure_signed(origin)?; let schedule = >::current_schedule(); - let mut gas_meter = gas::buy_gas::(&origin, gas_limit)?; + let (mut gas_meter, imbalance) = gas::buy_gas::(&origin, gas_limit)?; let result = wasm::save_code::(code, &mut gas_meter, &schedule); if let Ok(code_hash) = result { Self::deposit_event(RawEvent::CodeStored(code_hash)); } - gas::refund_unused_gas::(&origin, gas_meter); + gas::refund_unused_gas::(&origin, gas_meter, imbalance); result.map(|_| ()) } @@ -202,7 +204,7 @@ decl_module! { // // NOTE: it is very important to avoid any state changes before // paying for the gas. - let mut gas_meter = gas::buy_gas::(&origin, gas_limit)?; + let (mut gas_meter, imbalance) = gas::buy_gas::(&origin, gas_limit)?; let cfg = Config::preload(); let vm = crate::wasm::WasmVm::new(&cfg.schedule); @@ -212,7 +214,7 @@ decl_module! { let result = ctx.call(dest, value, &mut gas_meter, &data, exec::EmptyOutputBuf::new()); if let Ok(_) = result { - // Commit all changes that made it thus far into the persistant storage. + // Commit all changes that made it thus far into the persistent storage. account_db::DirectAccountDb.commit(ctx.overlay.into_change_set()); // Then deposit all events produced. @@ -223,7 +225,7 @@ decl_module! { // // NOTE: this should go after the commit to the storage, since the storage changes // can alter the balance of the caller. - gas::refund_unused_gas::(&origin, gas_meter); + gas::refund_unused_gas::(&origin, gas_meter, imbalance); // Dispatch every recorded call with an appropriate origin. ctx.calls.into_iter().for_each(|(who, call)| { @@ -234,7 +236,7 @@ decl_module! { result.map(|_| ()) } - /// Create a new contract, optionally transfering some balance to the created account. + /// Create a new contract, optionally transferring some balance to the created account. /// /// Creation is executed as follows: /// @@ -256,7 +258,7 @@ decl_module! { // // NOTE: it is very important to avoid any state changes before // paying for the gas. - let mut gas_meter = gas::buy_gas::(&origin, gas_limit)?; + let (mut gas_meter, imbalance) = gas::buy_gas::(&origin, gas_limit)?; let cfg = Config::preload(); let vm = crate::wasm::WasmVm::new(&cfg.schedule); @@ -276,7 +278,7 @@ decl_module! { // // NOTE: this should go after the commit to the storage, since the storage changes // can alter the balance of the caller. - gas::refund_unused_gas::(&origin, gas_meter); + gas::refund_unused_gas::(&origin, gas_meter, imbalance); // Dispatch every recorded call with an appropriate origin. ctx.calls.into_iter().for_each(|(who, call)| { diff --git a/srml/contract/src/tests.rs b/srml/contract/src/tests.rs index cf280c0f00..a0cefa664e 100644 --- a/srml/contract/src/tests.rs +++ b/srml/contract/src/tests.rs @@ -24,10 +24,10 @@ use runtime_primitives::testing::{Digest, DigestItem, H256, Header, UintAuthorit use runtime_primitives::traits::{BlakeTwo256, IdentityLookup}; use runtime_primitives::BuildStorage; use runtime_io; -use srml_support::{StorageMap, StorageDoubleMap, assert_ok, impl_outer_event, impl_outer_dispatch, impl_outer_origin}; -use substrate_primitives::{Blake2Hasher}; +use srml_support::{StorageMap, StorageDoubleMap, assert_ok, impl_outer_event, impl_outer_dispatch, + impl_outer_origin, traits::Currency}; +use substrate_primitives::Blake2Hasher; use system::{self, Phase, EventRecord}; -use fees; use {wabt, balances, consensus}; use hex_literal::*; use assert_matches::assert_matches; @@ -45,7 +45,7 @@ mod contract { } impl_outer_event! { pub enum MetaEvent for Test { - balances, contract, fees, + balances, contract, } } impl_outer_origin! { @@ -78,6 +78,9 @@ impl balances::Trait for Test { type OnFreeBalanceZero = Contract; type OnNewAccount = (); type Event = MetaEvent; + type TransactionPayment = (); + type DustRemoval = (); + type TransferPayment = (); } impl timestamp::Trait for Test { type Moment = u64; @@ -88,16 +91,13 @@ impl consensus::Trait for Test { type SessionKey = UintAuthorityId; type InherentOfflineReport = (); } -impl fees::Trait for Test { - type Event = MetaEvent; - type TransferAsset = Balances; -} impl Trait for Test { type Call = Call; type Gas = u64; type DetermineContractAddress = DummyContractAddressFor; type Event = MetaEvent; type ComputeDispatchFee = DummyComputeDispatchFee; + type GasPayment = (); } type Balances = balances::Module; @@ -168,6 +168,8 @@ impl ExtBuilder { .0; t.extend( balances::GenesisConfig:: { + transaction_base_fee: 0, + transaction_byte_fee: 0, balances: vec![], existential_deposit: self.existential_deposit, transfer_fee: self.transfer_fee, @@ -199,8 +201,7 @@ impl ExtBuilder { #[test] fn refunds_unused_gas() { with_externalities(&mut ExtBuilder::default().build(), || { - Balances::set_free_balance(&0, 100_000_000); - Balances::increase_total_stake_by(100_000_000); + Balances::deposit_creating(&0, 100_000_000); assert_ok!(Contract::call( Origin::signed(0), @@ -221,13 +222,11 @@ fn account_removal_removes_storage() { || { // Setup two accounts with free balance above than exsistential threshold. { - Balances::set_free_balance(&1, 110); - Balances::increase_total_stake_by(110); + Balances::deposit_creating(&1, 110); >::insert(&1, &b"foo".to_vec(), b"1".to_vec()); >::insert(&1, &b"bar".to_vec(), b"2".to_vec()); - Balances::set_free_balance(&2, 110); - Balances::increase_total_stake_by(110); + Balances::deposit_creating(&2, 110); >::insert(&2, &b"hello".to_vec(), b"3".to_vec()); >::insert(&2, &b"world".to_vec(), b"4".to_vec()); } @@ -288,8 +287,7 @@ fn instantiate_and_call() { with_externalities( &mut ExtBuilder::default().existential_deposit(100).build(), || { - Balances::set_free_balance(&ALICE, 1_000_000); - Balances::increase_total_stake_by(1_000_000); + Balances::deposit_creating(&ALICE, 1_000_000); assert_ok!(Contract::put_code( Origin::signed(ALICE), @@ -306,6 +304,10 @@ fn instantiate_and_call() { )); assert_eq!(System::events(), vec![ + EventRecord { + phase: Phase::ApplyExtrinsic(0), + event: MetaEvent::balances(balances::RawEvent::NewAccount(1, 1_000_000)), + }, EventRecord { phase: Phase::ApplyExtrinsic(0), event: MetaEvent::contract(RawEvent::CodeStored(HASH_RETURN_FROM_START_FN.into())), @@ -359,8 +361,7 @@ fn dispatch_call() { with_externalities( &mut ExtBuilder::default().existential_deposit(50).build(), || { - Balances::set_free_balance(&ALICE, 1_000_000); - Balances::increase_total_stake_by(1_000_000); + Balances::deposit_creating(&ALICE, 1_000_000); assert_ok!(Contract::put_code( Origin::signed(ALICE), @@ -371,6 +372,10 @@ fn dispatch_call() { // Let's keep this assert even though it's redundant. If you ever need to update the // wasm source this test will fail and will show you the actual hash. assert_eq!(System::events(), vec![ + EventRecord { + phase: Phase::ApplyExtrinsic(0), + event: MetaEvent::balances(balances::RawEvent::NewAccount(1, 1_000_000)), + }, EventRecord { phase: Phase::ApplyExtrinsic(0), event: MetaEvent::contract(RawEvent::CodeStored(HASH_DISPATCH_CALL.into())), @@ -394,6 +399,10 @@ fn dispatch_call() { )); assert_eq!(System::events(), vec![ + EventRecord { + phase: Phase::ApplyExtrinsic(0), + event: MetaEvent::balances(balances::RawEvent::NewAccount(1, 1_000_000)), + }, EventRecord { phase: Phase::ApplyExtrinsic(0), event: MetaEvent::contract(RawEvent::CodeStored(HASH_DISPATCH_CALL.into())), diff --git a/srml/council/src/lib.rs b/srml/council/src/lib.rs index de64b8c55c..458e6ffd38 100644 --- a/srml/council/src/lib.rs +++ b/srml/council/src/lib.rs @@ -77,6 +77,9 @@ mod tests { type OnFreeBalanceZero = (); type OnNewAccount = (); type Event = Event; + type TransactionPayment = (); + type TransferPayment = (); + type DustRemoval = (); } impl democracy::Trait for Test { type Currency = balances::Module; @@ -85,6 +88,8 @@ mod tests { } impl seats::Trait for Test { type Event = Event; + type BadPresentation = (); + type BadReaper = (); } impl motions::Trait for Test { type Origin = Origin; @@ -98,6 +103,8 @@ mod tests { pub fn new_test_ext(with_council: bool) -> runtime_io::TestExternalities { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; t.extend(balances::GenesisConfig::{ + transaction_base_fee: 0, + transaction_byte_fee: 0, balances: vec![(1, 10), (2, 20), (3, 30), (4, 40), (5, 50), (6, 60)], existential_deposit: 0, transfer_fee: 0, diff --git a/srml/council/src/seats.rs b/srml/council/src/seats.rs index c3ce3ad1b1..365214f327 100644 --- a/srml/council/src/seats.rs +++ b/srml/council/src/seats.rs @@ -19,7 +19,10 @@ use rstd::prelude::*; use primitives::traits::{Zero, One, As, StaticLookup}; use runtime_io::print; -use srml_support::{StorageValue, StorageMap, dispatch::Result, traits::Currency, decl_storage, decl_event, ensure}; +use srml_support::{ + StorageValue, StorageMap, dispatch::Result, decl_storage, decl_event, ensure, + traits::{Currency, OnUnbalanced} +}; use democracy; use system::{self, ensure_signed}; @@ -77,14 +80,21 @@ use system::{self, ensure_signed}; // after each vote as all but K entries are cleared. newly registering candidates must use cleared // entries before they increase the capacity. -use srml_support::{decl_module, traits::ArithmeticType}; +use srml_support::decl_module; pub type VoteIndex = u32; -type BalanceOf = <::Currency as ArithmeticType>::Type; +type BalanceOf = <::Currency as Currency<::AccountId>>::Balance; +type NegativeImbalanceOf = <::Currency as Currency<::AccountId>>::NegativeImbalance; pub trait Trait: democracy::Trait { type Event: From> + Into<::Event>; + + /// Handler for the unbalanced reduction when slashing a validator. + type BadPresentation: OnUnbalanced>; + + /// Handler for the unbalanced reduction when slashing an invalid reaping attempt. + type BadReaper: OnUnbalanced>; } decl_module! { @@ -101,7 +111,7 @@ decl_module! { ensure!(index == Self::vote_index(), "incorrect vote index"); ensure!(!candidates.len().is_zero(), "amount of candidates to receive approval votes should be non-zero"); // Prevent a vote from voters that provide a list of votes that exceeds the candidates length - // since otherise an attacker may be able to submit a very long list of `votes` that far exceeds + // since otherwise an attacker may be able to submit a very long list of `votes` that far exceeds // the amount of candidates and waste more computation than a reasonable voting bond would cover. ensure!(candidates.len() >= votes.len(), "amount of candidate approval votes cannot exceed amount of candidates"); @@ -167,7 +177,8 @@ decl_module! { T::Currency::repatriate_reserved(&who, &reporter, Self::voting_bond())?; Self::deposit_event(RawEvent::VoterReaped(who, reporter)); } else { - T::Currency::slash_reserved(&reporter, Self::voting_bond()); + let imbalance = T::Currency::slash_reserved(&reporter, Self::voting_bond()).0; + T::BadReaper::on_unbalanced(imbalance); Self::deposit_event(RawEvent::BadReaperSlashed(reporter)); } } @@ -266,7 +277,8 @@ decl_module! { } else { // we can rest assured it will be Ok since we checked `can_slash` earlier; still // better safe than sorry. - let _ = T::Currency::slash(&who, bad_presentation_punishment); + let imbalance = T::Currency::slash(&who, bad_presentation_punishment).0; + T::BadPresentation::on_unbalanced(imbalance); Err(if dupe { "duplicate presentation" } else { "incorrect total" }) } } diff --git a/srml/democracy/src/lib.rs b/srml/democracy/src/lib.rs index befbb2082d..eb0502ccd9 100644 --- a/srml/democracy/src/lib.rs +++ b/srml/democracy/src/lib.rs @@ -24,7 +24,7 @@ use primitives::traits::{Zero, As, Bounded}; use parity_codec::{Encode, Decode}; use srml_support::{StorageValue, StorageMap, Parameter, Dispatchable, IsSubType, EnumerableStorageMap}; use srml_support::{decl_module, decl_storage, decl_event, ensure}; -use srml_support::traits::{Currency, LockableCurrency, WithdrawReason, ArithmeticType, LockIdentifier}; +use srml_support::traits::{Currency, LockableCurrency, WithdrawReason, LockIdentifier}; use srml_support::dispatch::Result; use system::ensure_signed; @@ -69,10 +69,10 @@ impl Vote { } } -type BalanceOf = <::Currency as ArithmeticType>::Type; +type BalanceOf = <::Currency as Currency<::AccountId>>::Balance; pub trait Trait: system::Trait + Sized { - type Currency: ArithmeticType + LockableCurrency<::AccountId, Moment=Self::BlockNumber, Balance=BalanceOf>; + type Currency: LockableCurrency<::AccountId, Moment=Self::BlockNumber>; type Proposal: Parameter + Dispatchable + IsSubType>; @@ -511,6 +511,9 @@ mod tests { type OnFreeBalanceZero = (); type OnNewAccount = (); type Event = (); + type TransactionPayment = (); + type TransferPayment = (); + type DustRemoval = (); } impl Trait for Test { type Currency = balances::Module; @@ -525,6 +528,8 @@ mod tests { fn new_test_ext_with_public_delay(public_delay: u64) -> runtime_io::TestExternalities { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; t.extend(balances::GenesisConfig::{ + transaction_base_fee: 0, + transaction_byte_fee: 0, balances: vec![(1, 10), (2, 20), (3, 30), (4, 40), (5, 50), (6, 60)], existential_deposit: 0, transfer_fee: 0, diff --git a/srml/example/src/lib.rs b/srml/example/src/lib.rs index e6f3cf9264..452e75ccc3 100644 --- a/srml/example/src/lib.rs +++ b/srml/example/src/lib.rs @@ -281,6 +281,9 @@ mod tests { type OnFreeBalanceZero = (); type OnNewAccount = (); type Event = (); + type TransactionPayment = (); + type TransferPayment = (); + type DustRemoval = (); } impl Trait for Test { type Event = (); diff --git a/srml/executive/Cargo.toml b/srml/executive/Cargo.toml index 0165a37bb2..31ca69fa55 100644 --- a/srml/executive/Cargo.toml +++ b/srml/executive/Cargo.toml @@ -18,7 +18,6 @@ hex-literal = "0.1.0" substrate-primitives = { path = "../../core/primitives" } srml-indices = { path = "../indices" } balances = { package = "srml-balances", path = "../balances" } -fees = { package = "srml-fees", path = "../fees" } parity-codec-derive = { version = "3.1" } [features] diff --git a/srml/executive/src/lib.rs b/srml/executive/src/lib.rs index b6cc498f79..f2073ff738 100644 --- a/srml/executive/src/lib.rs +++ b/srml/executive/src/lib.rs @@ -25,7 +25,7 @@ use primitives::traits::{ self, Header, Zero, One, Checkable, Applyable, CheckEqual, OnFinalise, OnInitialise, Hash, As, Digest, NumberFor, Block as BlockT }; -use srml_support::{Dispatchable, traits::ChargeBytesFee}; +use srml_support::{Dispatchable, traits::MakePayment}; use parity_codec::{Codec, Encode}; use system::extrinsics_root; use primitives::{ApplyOutcome, ApplyError}; @@ -64,7 +64,7 @@ impl< System: system::Trait, Block: traits::Block, Context: Default, - Payment: ChargeBytesFee, + Payment: MakePayment, AllModules: OnInitialise + OnFinalise, > ExecuteBlock for Executive where Block::Extrinsic: Checkable + Codec, @@ -85,7 +85,7 @@ impl< System: system::Trait, Block: traits::Block, Context: Default, - Payment: ChargeBytesFee, + Payment: MakePayment, AllModules: OnInitialise + OnFinalise, > Executive where Block::Extrinsic: Checkable + Codec, @@ -214,7 +214,7 @@ impl< ) } // pay any fees. - Payment::charge_base_bytes_fee(sender, encoded_len).map_err(|_| internal::ApplyError::CantPay)?; + Payment::make_payment(sender, encoded_len).map_err(|_| internal::ApplyError::CantPay)?; // AUDIT: Under no circumstances may this function panic from here onwards. @@ -286,7 +286,7 @@ impl< if let (Some(sender), Some(index)) = (xt.sender(), xt.index()) { // pay any fees. - if Payment::charge_base_bytes_fee(sender, encoded_len).is_err() { + if Payment::make_payment(sender, encoded_len).is_err() { return TransactionValidity::Invalid(ApplyError::CantPay as i8) } @@ -332,7 +332,6 @@ mod tests { use primitives::testing::{Digest, DigestItem, Header, Block}; use srml_support::{traits::Currency, impl_outer_origin, impl_outer_event}; use system; - use fees; use hex_literal::{hex, hex_impl}; impl_outer_origin! { @@ -342,7 +341,7 @@ mod tests { impl_outer_event!{ pub enum MetaEvent for Runtime { - balances, fees, + balances, } } @@ -367,29 +366,26 @@ mod tests { type OnFreeBalanceZero = (); type OnNewAccount = (); type Event = MetaEvent; - } - impl fees::Trait for Runtime { - type Event = MetaEvent; - type TransferAsset = balances::Module; + type TransactionPayment = (); + type DustRemoval = (); + type TransferPayment = (); } type TestXt = primitives::testing::TestXt>; - type Executive = super::Executive, system::ChainContext, fees::Module, ()>; + type Executive = super::Executive, system::ChainContext, balances::Module, ()>; #[test] fn balance_transfer_dispatch_works() { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; t.extend(balances::GenesisConfig:: { + transaction_base_fee: 10, + transaction_byte_fee: 0, balances: vec![(1, 111)], existential_deposit: 0, transfer_fee: 0, creation_fee: 0, vesting: vec![], }.build_storage().unwrap().0); - t.extend(fees::GenesisConfig:: { - transaction_base_fee: 10, - transaction_byte_fee: 0, - }.build_storage().unwrap().0); let xt = primitives::testing::TestXt(Some(1), 0, Call::transfer(2, 69)); let mut t = runtime_io::TestExternalities::::new(t); with_externalities(&mut t, || { @@ -414,7 +410,7 @@ mod tests { header: Header { parent_hash: [69u8; 32].into(), number: 1, - state_root: hex!("6651861f40a8f42c033b3e937cb3513e6dbaf4be6bafb1561a19f884be3f58dd").into(), + state_root: hex!("49cd58a254ccf6abc4a023d9a22dcfc421e385527a250faec69f8ad0d8ed3e48").into(), extrinsics_root: hex!("03170a2e7597b7b7e3d84c05391d139a62b157e78786d8c082f29dcf4c111314").into(), digest: Digest { logs: vec![], }, }, @@ -448,7 +444,7 @@ mod tests { header: Header { parent_hash: [69u8; 32].into(), number: 1, - state_root: hex!("6651861f40a8f42c033b3e937cb3513e6dbaf4be6bafb1561a19f884be3f58dd").into(), + state_root: hex!("49cd58a254ccf6abc4a023d9a22dcfc421e385527a250faec69f8ad0d8ed3e48").into(), extrinsics_root: [0u8; 32].into(), digest: Digest { logs: vec![], }, }, diff --git a/srml/fees/Cargo.toml b/srml/fees/Cargo.toml deleted file mode 100644 index 2bb4474ce6..0000000000 --- a/srml/fees/Cargo.toml +++ /dev/null @@ -1,31 +0,0 @@ -[package] -name = "srml-fees" -version = "0.1.0" -authors = ["Parity Technologies "] -edition = "2018" - -[dependencies] -hex-literal = "0.1.0" -serde = { version = "1.0", optional = true } -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 } -runtime_io = { package = "sr-io", path = "../../core/sr-io", default-features = false } -runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } -srml-support = { package = "srml-support", path = "../support", default-features = false } -system = { package = "srml-system", path = "../system", default-features = false } - -[features] -default = ["std"] -std = [ - "serde", - "parity-codec/std", - "parity-codec-derive/std", - "primitives/std", - "rstd/std", - "runtime_io/std", - "runtime_primitives/std", - "srml-support/std", - "system/std", -] diff --git a/srml/fees/src/lib.rs b/srml/fees/src/lib.rs deleted file mode 100644 index 09e32db9b0..0000000000 --- a/srml/fees/src/lib.rs +++ /dev/null @@ -1,117 +0,0 @@ -// 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 . - -//! Handles all transaction fee related operations - -// Ensure we're `no_std` when compiling for Wasm. -#![cfg_attr(not(feature = "std"), no_std)] - -use srml_support::{ - dispatch::Result, StorageMap, decl_event, decl_storage, decl_module, - traits::{ArithmeticType, ChargeBytesFee, ChargeFee, TransferAsset, WithdrawReason} -}; -use runtime_primitives::traits::{ - As, CheckedAdd, CheckedSub, CheckedMul, Zero -}; -use system; - -mod mock; -mod tests; - -type AssetOf = <::TransferAsset as ArithmeticType>::Type; - -pub trait Trait: system::Trait { - /// The overarching event type. - type Event: From> + Into<::Event>; - - /// A function does the asset transfer between accounts - type TransferAsset: ArithmeticType + TransferAsset>; -} - -decl_module! { - pub struct Module for enum Call where origin: T::Origin { - fn deposit_event() = default; - - fn on_finalise() { - let extrinsic_count = >::extrinsic_count(); - (0..extrinsic_count).for_each(|index| { - // Deposit `Charged` event if some amount of fee charged. - let fee = >::take(index); - if !fee.is_zero() { - Self::deposit_event(RawEvent::Charged(index, fee)); - } - }); - } - } -} - -decl_event!( - pub enum Event where Amount = AssetOf { - /// Fee charged (extrinsic_index, fee_amount) - Charged(u32, Amount), - } -); - -decl_storage! { - trait Store for Module as Fees { - /// The fee to be paid for making a transaction; the base. - pub TransactionBaseFee get(transaction_base_fee) config(): AssetOf; - /// The fee to be paid for making a transaction; the per-byte portion. - pub TransactionByteFee get(transaction_byte_fee) config(): AssetOf; - - /// The `extrinsic_index => accumulated_fees` map, containing records to - /// track the overall charged fees for each transaction. - /// - /// All records should be removed at finalise stage. - CurrentTransactionFee get(current_transaction_fee): map u32 => AssetOf; - } -} - -impl ChargeBytesFee for Module { - fn charge_base_bytes_fee(transactor: &T::AccountId, encoded_len: usize) -> Result { - let bytes_fee = Self::transaction_byte_fee().checked_mul( - & as As>::sa(encoded_len as u64) - ).ok_or_else(|| "bytes fee overflow")?; - let overall = Self::transaction_base_fee().checked_add(&bytes_fee).ok_or_else(|| "bytes fee overflow")?; - Self::charge_fee(transactor, overall) - } -} - -impl ChargeFee for Module { - type Amount = AssetOf; - - fn charge_fee(transactor: &T::AccountId, amount: AssetOf) -> Result { - let extrinsic_index = >::extrinsic_index().ok_or_else(|| "no extrinsic index found")?; - let current_fee = Self::current_transaction_fee(extrinsic_index); - let new_fee = current_fee.checked_add(&amount).ok_or_else(|| "fee got overflow after charge")?; - - T::TransferAsset::withdraw(transactor, amount, WithdrawReason::TransactionPayment)?; - - >::insert(extrinsic_index, new_fee); - Ok(()) - } - - fn refund_fee(transactor: &T::AccountId, amount: AssetOf) -> Result { - let extrinsic_index = >::extrinsic_index().ok_or_else(|| "no extrinsic index found")?; - let current_fee = Self::current_transaction_fee(extrinsic_index); - let new_fee = current_fee.checked_sub(&amount).ok_or_else(|| "fee got underflow after refund")?; - - T::TransferAsset::deposit(transactor, amount)?; - - >::insert(extrinsic_index, new_fee); - Ok(()) - } -} diff --git a/srml/fees/src/mock.rs b/srml/fees/src/mock.rs deleted file mode 100644 index 7f6c715f4b..0000000000 --- a/srml/fees/src/mock.rs +++ /dev/null @@ -1,115 +0,0 @@ -// 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 . - -//! Test utilities - -#![cfg(test)] - -use runtime_primitives::BuildStorage; -use runtime_primitives::{ - traits::{IdentityLookup, BlakeTwo256}, - testing::{Digest, DigestItem, Header}, -}; -use primitives::{H256, Blake2Hasher}; -use runtime_io; -use srml_support::{ - impl_outer_origin, impl_outer_event, - traits::{ArithmeticType, TransferAsset, WithdrawReason} -}; -use crate::{GenesisConfig, Module, Trait, system}; - -impl_outer_origin!{ - pub enum Origin for Test {} -} - -mod fees { - pub use crate::Event; -} - -impl_outer_event!{ - pub enum TestEvent for Test { - fees, - } -} - -pub struct TransferAssetMock; - -impl TransferAsset for TransferAssetMock { - type Amount = u64; - - fn transfer(_: &AccountId, _: &AccountId, _: Self::Amount) -> Result<(), &'static str> { Ok(()) } - fn withdraw(_: &AccountId, _: Self::Amount, _: WithdrawReason) -> Result<(), &'static str> { Ok(()) } - fn deposit(_: &AccountId, _: Self::Amount) -> Result<(), &'static str> { Ok(()) } -} - -impl ArithmeticType for TransferAssetMock { - type Type = u64; -} - -// Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. -#[derive(Clone, PartialEq, Eq, Debug)] -pub struct Test; -impl system::Trait for Test { - type Origin = Origin; - type Index = u64; - type BlockNumber = u64; - type Hash = H256; - type Hashing = BlakeTwo256; - type Digest = Digest; - type AccountId = u64; - type Lookup = IdentityLookup; - type Header = Header; - type Event = TestEvent; - type Log = DigestItem; -} -impl Trait for Test { - type Event = TestEvent; - type TransferAsset = TransferAssetMock; -} - -pub type System = system::Module; -pub type Fees = Module; - -pub struct ExtBuilder { - transaction_base_fee: u64, - transaction_byte_fee: u64, -} -impl Default for ExtBuilder { - fn default() -> Self { - Self { - transaction_base_fee: 0, - transaction_byte_fee: 0, - } - } -} -impl ExtBuilder { - pub fn transaction_base_fee(mut self, transaction_base_fee: u64) -> Self { - self.transaction_base_fee = transaction_base_fee; - self - } - pub fn transaction_byte_fee(mut self, transaction_byte_fee: u64) -> Self { - self.transaction_byte_fee = transaction_byte_fee; - self - } - pub fn build(self) -> runtime_io::TestExternalities { - let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; - t.extend(GenesisConfig:: { - transaction_base_fee: self.transaction_base_fee, - transaction_byte_fee: self.transaction_byte_fee, - }.build_storage().unwrap().0); - t.into() - } -} diff --git a/srml/fees/src/tests.rs b/srml/fees/src/tests.rs deleted file mode 100644 index a1c9657062..0000000000 --- a/srml/fees/src/tests.rs +++ /dev/null @@ -1,174 +0,0 @@ -// 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 . - -//! Tests for the module. - -#![cfg(test)] - -use super::*; -use runtime_io::with_externalities; -use runtime_primitives::traits::{OnFinalise}; -use system::{EventRecord, Phase}; - -use mock::{Fees, System, ExtBuilder}; -use srml_support::{assert_ok, assert_err}; - -#[test] -fn charge_base_bytes_fee_should_work() { - with_externalities( - &mut ExtBuilder::default() - .transaction_base_fee(3) - .transaction_byte_fee(5) - .build(), - || { - System::set_extrinsic_index(0); - assert_ok!(Fees::charge_base_bytes_fee(&0, 7)); - assert_eq!(Fees::current_transaction_fee(0), 3 + 5 * 7); - - System::set_extrinsic_index(1); - assert_ok!(Fees::charge_base_bytes_fee(&0, 11)); - assert_eq!(Fees::current_transaction_fee(1), 3 + 5 * 11); - - System::set_extrinsic_index(3); - assert_ok!(Fees::charge_base_bytes_fee(&0, 13)); - assert_eq!(Fees::current_transaction_fee(3), 3 + 5 * 13); - } - ); -} - -#[test] -fn charge_base_bytes_fee_should_not_work_if_bytes_fee_overflow() { - // bytes fee overflows. - with_externalities( - &mut ExtBuilder::default() - .transaction_base_fee(0) - .transaction_byte_fee(u64::max_value()) - .build(), - || { - System::set_extrinsic_index(0); - assert_err!( - Fees::charge_base_bytes_fee(&0, 2), - "bytes fee overflow" - ); - } - ); -} - -#[test] -fn charge_base_bytes_fee_should_not_work_if_overall_fee_overflow() { - // bytes fee doesn't overflow, but overall fee (bytes_fee + base_fee) does - with_externalities( - &mut ExtBuilder::default() - .transaction_base_fee(u64::max_value()) - .transaction_byte_fee(1) - .build(), - || { - System::set_extrinsic_index(0); - assert_err!( - Fees::charge_base_bytes_fee(&0, 1), - "bytes fee overflow" - ); - } - ); -} - -#[test] -fn charge_fee_should_work() { - with_externalities(&mut ExtBuilder::default().build(), || { - System::set_extrinsic_index(0); - assert_ok!(Fees::charge_fee(&0, 2)); - assert_ok!(Fees::charge_fee(&0, 3)); - assert_eq!(Fees::current_transaction_fee(0), 2 + 3); - - System::set_extrinsic_index(2); - assert_ok!(Fees::charge_fee(&0, 5)); - assert_ok!(Fees::charge_fee(&0, 7)); - assert_eq!(Fees::current_transaction_fee(2), 5 + 7); - }); -} - -#[test] -fn charge_fee_when_overflow_should_not_work() { - with_externalities(&mut ExtBuilder::default().build(), || { - System::set_extrinsic_index(0); - assert_ok!(Fees::charge_fee(&0, u64::max_value())); - assert_err!(Fees::charge_fee(&0, 1), "fee got overflow after charge"); - }); -} - -#[test] -fn refund_fee_should_work() { - with_externalities(&mut ExtBuilder::default().build(), || { - System::set_extrinsic_index(0); - assert_ok!(Fees::charge_fee(&0, 5)); - assert_ok!(Fees::refund_fee(&0, 3)); - assert_eq!(Fees::current_transaction_fee(0), 5 - 3); - }); -} - -#[test] -fn refund_fee_when_underflow_should_not_work() { - with_externalities(&mut ExtBuilder::default().build(), || { - System::set_extrinsic_index(0); - assert_err!(Fees::refund_fee(&0, 1), "fee got underflow after refund"); - }); -} - -#[test] -fn on_finalise_should_work() { - with_externalities(&mut ExtBuilder::default().build(), || { - // charge fees in extrinsic index 3 - System::set_extrinsic_index(3); - assert_ok!(Fees::charge_fee(&0, 1)); - System::note_applied_extrinsic(&Ok(()), 1); - // charge fees in extrinsic index 5 - System::set_extrinsic_index(5); - assert_ok!(Fees::charge_fee(&0, 1)); - System::note_applied_extrinsic(&Ok(()), 1); - System::note_finished_extrinsics(); - - // `current_transaction_fee`, `extrinsic_count` should be as expected. - assert_eq!(Fees::current_transaction_fee(3), 1); - assert_eq!(Fees::current_transaction_fee(5), 1); - assert_eq!(System::extrinsic_count(), 5 + 1); - - >::on_finalise(1); - - // When finalised, `CurrentTransactionFee` records should be cleared. - assert_eq!(Fees::current_transaction_fee(3), 0); - assert_eq!(Fees::current_transaction_fee(5), 0); - - // When finalised, if any fee charged in a extrinsic, a `Charged` event should be deposited - // for it. - let fee_charged_events: Vec> = System::events() - .into_iter() - .filter(|e| match e.event { - mock::TestEvent::fees(RawEvent::Charged(_, _)) => return true, - _ => return false, - }) - .collect(); - assert_eq!(fee_charged_events, vec![ - EventRecord { - phase: Phase::Finalization, - event: RawEvent::Charged(3, 1).into(), - }, - EventRecord { - phase: Phase::Finalization, - event: RawEvent::Charged(5, 1).into(), - }, - ]); - }); -} diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index 4650bff981..151668f691 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -6,8 +6,6 @@ // 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 @@ -27,11 +25,11 @@ use parity_codec::{HasCompact, Encode, Decode}; use srml_support::{StorageValue, StorageMap, EnumerableStorageMap, dispatch::Result}; use srml_support::{decl_module, decl_event, decl_storage, ensure}; use srml_support::traits::{ - Currency, OnDilution, OnFreeBalanceZero, ArithmeticType, - LockIdentifier, LockableCurrency, WithdrawReasons + Currency, OnFreeBalanceZero, OnDilution, LockIdentifier, LockableCurrency, WithdrawReasons, + OnUnbalanced, Imbalance }; use session::OnSessionChange; -use primitives::{Perbill}; +use primitives::Perbill; use primitives::traits::{Zero, One, As, StaticLookup, Saturating, Bounded}; #[cfg(feature = "std")] use primitives::{Serialize, Deserialize}; @@ -166,13 +164,14 @@ pub struct Exposure { pub others: Vec>, } -type BalanceOf = <::Currency as ArithmeticType>::Type; +type BalanceOf = <::Currency as Currency<::AccountId>>::Balance; +type PositiveImbalanceOf = <::Currency as Currency<::AccountId>>::PositiveImbalance; +type NegativeImbalanceOf = <::Currency as Currency<::AccountId>>::NegativeImbalance; pub trait Trait: system::Trait + session::Trait { /// The staking balance. type Currency: - ArithmeticType + - Currency> + + Currency + LockableCurrency; /// Some tokens minted. @@ -180,6 +179,12 @@ pub trait Trait: system::Trait + session::Trait { /// The overarching event type. type Event: From> + Into<::Event>; + + /// Handler for the unbalanced reduction when slashing a staker. + type Slash: OnUnbalanced>; + + /// Handler for the unbalanced increment when rewarding a staker. + type Reward: OnUnbalanced>; } const STAKING_ID: LockIdentifier = *b"staking "; @@ -540,7 +545,8 @@ impl Module { let slash = slash.min(exposure.total); // The amount we'll slash from the validator's stash directly. let own_slash = exposure.own.min(slash); - let own_slash = own_slash - T::Currency::slash(v, own_slash).unwrap_or_default(); + let (mut imbalance, missing) = T::Currency::slash(v, own_slash); + let own_slash = own_slash - missing; // The amount remaining that we can't slash from the validator, that must be taken from the nominators. let rest_slash = slash - own_slash; if !rest_slash.is_zero() { @@ -549,29 +555,29 @@ impl Module { if !total.is_zero() { let safe_mul_rational = |b| b * rest_slash / total;// FIXME #1572 avoid overflow for i in exposure.others.iter() { - let _ = T::Currency::slash(&i.who, safe_mul_rational(i.value)); // best effort - not much that can be done on fail. + // best effort - not much that can be done on fail. + imbalance.subsume(T::Currency::slash(&i.who, safe_mul_rational(i.value)).0) } } } + T::Slash::on_unbalanced(imbalance); } /// Actually make a payment to a staker. This uses the currency's reward function /// to pay the right payee for the given staker account. - fn make_payout(who: &T::AccountId, amount: BalanceOf) { + fn make_payout(who: &T::AccountId, amount: BalanceOf) -> Option> { match Self::payee(who) { - RewardDestination::Controller => { - let _ = T::Currency::reward(&who, amount); - } - RewardDestination::Stash => { - let _ = Self::ledger(who).map(|l| T::Currency::reward(&l.stash, amount)); - } + RewardDestination::Controller => T::Currency::deposit_into_existing(&who, amount).ok(), + RewardDestination::Stash => Self::ledger(who) + .and_then(|l| T::Currency::deposit_into_existing(&l.stash, amount).ok()), RewardDestination::Staked => - if let Some(mut l) = Self::ledger(who) { + Self::ledger(who).and_then(|mut l| { l.active += amount; l.total += amount; - let _ = T::Currency::reward(&l.stash, amount); + let r = T::Currency::deposit_into_existing(&l.stash, amount).ok(); Self::update_ledger(who, l); - }, + r + }), } } @@ -580,6 +586,7 @@ impl Module { fn reward_validator(who: &T::AccountId, reward: BalanceOf) { let off_the_table = reward.min(Self::validators(who).validator_payment); let reward = reward - off_the_table; + let mut imbalance = >::zero(); let validator_cut = if reward.is_zero() { Zero::zero() } else { @@ -587,11 +594,12 @@ impl Module { let total = exposure.total.max(One::one()); let safe_mul_rational = |b| b * reward / total;// FIXME #1572: avoid overflow for i in &exposure.others { - Self::make_payout(&i.who, safe_mul_rational(i.value)); + imbalance.maybe_subsume(Self::make_payout(&i.who, safe_mul_rational(i.value))); } safe_mul_rational(exposure.own) }; - Self::make_payout(who, validator_cut + off_the_table); + imbalance.maybe_subsume(Self::make_payout(who, validator_cut + off_the_table)); + T::Reward::on_unbalanced(imbalance); } /// Get the reward for the session, assuming it ends with this block. diff --git a/srml/staking/src/mock.rs b/srml/staking/src/mock.rs index 6a76f350ef..662396e2f1 100644 --- a/srml/staking/src/mock.rs +++ b/srml/staking/src/mock.rs @@ -58,6 +58,9 @@ impl balances::Trait for Test { type OnFreeBalanceZero = Staking; type OnNewAccount = (); type Event = (); + type TransactionPayment = (); + type TransferPayment = (); + type DustRemoval = (); } impl session::Trait for Test { type ConvertAccountIdToSessionKey = ConvertUintAuthorityId; @@ -72,6 +75,8 @@ impl Trait for Test { type Currency = balances::Module; type OnRewardMinted = (); type Event = (); + type Slash = (); + type Reward = (); } pub struct ExtBuilder { @@ -193,6 +198,8 @@ impl ExtBuilder { (40, balance_factor), (41, balance_factor * 40) ] }, + transaction_base_fee: 0, + transaction_byte_fee: 0, existential_deposit: self.existential_deposit, transfer_fee: 0, creation_fee: 0, diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index 7921d7f313..527e82cf97 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -103,7 +103,7 @@ fn invulnerability_should_work() { // Make account 10 invulnerable assert_ok!(Staking::set_invulnerables(vec![10])); // Give account 10 some funds - Balances::set_free_balance(&10, 70); + let _ = Balances::deposit_creating(&10, 69); // There is no slash grace -- slash immediately. assert_eq!(Staking::offline_slash_grace(), 0); // Account 10 has not been slashed @@ -132,7 +132,7 @@ fn offline_should_slash_and_kick() { // Test that an offline validator gets slashed and kicked with_externalities(&mut ExtBuilder::default().build(), || { // Give account 10 some balance - Balances::set_free_balance(&10, 1000); + let _ = Balances::deposit_creating(&10, 999); // Confirm account 10 is a validator assert!(>::exists(&10)); // Validators get slashed immediately @@ -163,7 +163,7 @@ fn offline_grace_should_delay_slashing() { // Tests that with grace, slashing is delayed with_externalities(&mut ExtBuilder::default().build(), || { // Initialize account 10 with balance - Balances::set_free_balance(&10, 70); + let _ = Balances::deposit_creating(&10, 69); // Verify account 10 has balance assert_eq!(Balances::free_balance(&10), 70); @@ -204,8 +204,8 @@ fn max_unstake_threshold_works() { with_externalities(&mut ExtBuilder::default().build(), || { const MAX_UNSTAKE_THRESHOLD: u32 = 10; // Two users with maximum possible balance - Balances::set_free_balance(&10, u64::max_value()); - Balances::set_free_balance(&20, u64::max_value()); + let _ = Balances::deposit_creating(&10, u64::max_value() - 1); + let _ = Balances::deposit_creating(&20, u64::max_value() - 1); // Give them full exposer as a staker >::insert(&10, Exposure { total: u64::max_value(), own: u64::max_value(), others: vec![]}); @@ -253,9 +253,6 @@ fn max_unstake_threshold_works() { fn slashing_does_not_cause_underflow() { // Tests that slashing more than a user has does not underflow with_externalities(&mut ExtBuilder::default().build(), || { - // One user with less than `max_value` will test underflow does not occur - Balances::set_free_balance(&10, 1); - // Verify initial conditions assert_eq!(Balances::free_balance(&10), 1); assert_eq!(Staking::offline_slash_grace(), 0); @@ -449,7 +446,7 @@ fn staking_should_work() { assert_eq!(Staking::bonding_duration(), 2); // put some money in account that we'll use. - for i in 1..5 { Balances::set_free_balance(&i, 1000); } + for i in 1..5 { let _ = Balances::deposit_creating(&i, 1000); } // bond one account pair and state interest in nomination. // this is needed to keep 10 and 20 in the validator list with phragmen @@ -628,9 +625,9 @@ fn nominating_and_rewards_should_work() { // give the man some money let initial_balance = 1000; - for i in 1..5 { Balances::set_free_balance(&i, initial_balance); } - Balances::set_free_balance(&10, initial_balance); - Balances::set_free_balance(&20, initial_balance); + for i in [1, 2, 3, 4, 5, 10, 20].iter() { + let _ = Balances::deposit_creating(i, initial_balance - Balances::total_balance(i)); + } // record their balances. for i in 1..5 { assert_eq!(Balances::total_balance(&i), initial_balance); } @@ -705,8 +702,9 @@ fn nominators_also_get_slashed() { // give the man some money. let initial_balance = 1000; - for i in 1..3 { Balances::set_free_balance(&i, initial_balance); } - Balances::set_free_balance(&10, initial_balance); + for i in [1, 2, 3, 10].iter() { + let _ = Balances::deposit_creating(i, initial_balance - Balances::total_balance(i)); + } // 2 will nominate for 10 let nominator_stake = 500; @@ -843,7 +841,7 @@ fn cannot_transfer_staked_balance() { assert_noop!(Balances::transfer(Origin::signed(11), 20, 1), "account liquidity restrictions prevent withdrawal"); // Give account 11 extra free balance - Balances::set_free_balance(&11, 10000); + let _ = Balances::deposit_creating(&11, 9999); // Confirm that account 11 can now transfer some balance assert_ok!(Balances::transfer(Origin::signed(11), 20, 1)); }); @@ -863,7 +861,7 @@ fn cannot_reserve_staked_balance() { assert_noop!(Balances::reserve(&11, 1), "account liquidity restrictions prevent withdrawal"); // Give account 11 extra free balance - Balances::set_free_balance(&11, 10000); + let _ = Balances::deposit_creating(&11, 9990); // Confirm account 11 can now reserve balance assert_ok!(Balances::reserve(&11, 1)); }); @@ -1041,7 +1039,7 @@ fn bond_extra_works() { assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000, active: 1000, unlocking: vec![] })); // Give account 11 some large free balance greater than total - Balances::set_free_balance(&11, 1000000); + let _ = Balances::deposit_creating(&11, 999000); // Check the balance of the stash account assert_eq!(Balances::free_balance(&11), 1000000); @@ -1077,7 +1075,7 @@ fn bond_extra_and_withdraw_unbonded_works() { assert_ok!(Staking::set_bonding_duration(2)); // Give account 11 some large free balance greater than total - Balances::set_free_balance(&11, 1000000); + let _ = Balances::deposit_creating(&11, 999000); // Check the balance of the stash account assert_eq!(Balances::free_balance(&11), 1000000); @@ -1175,8 +1173,8 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { assert_eq!(Staking::stakers(&20).total, 2000); // Give the man some money. - Balances::set_free_balance(&10, 1000); - Balances::set_free_balance(&20, 1000); + let _ = Balances::deposit_creating(&10, 999); + let _ = Balances::deposit_creating(&20, 999); // Confirm initial free balance. assert_eq!(Balances::free_balance(&10), 1000); @@ -1247,7 +1245,7 @@ fn on_free_balance_zero_stash_removes_validator() { assert!(>::exists(&10)); // Reduce free_balance of controller to 0 - Balances::set_free_balance(&10, 0); + Balances::slash(&10, u64::max_value()); // Check total balance of account 10 assert_eq!(Balances::total_balance(&10), 0); @@ -1263,7 +1261,7 @@ fn on_free_balance_zero_stash_removes_validator() { assert!(>::exists(&10)); // Reduce free_balance of stash to 0 - Balances::set_free_balance(&11, 0); + Balances::slash(&11, u64::max_value()); // Check total balance of stash assert_eq!(Balances::total_balance(&11), 0); @@ -1306,7 +1304,7 @@ fn on_free_balance_zero_stash_removes_nominator() { assert!(>::exists(&10)); // Reduce free_balance of controller to 0 - Balances::set_free_balance(&10, 0); + Balances::slash(&10, u64::max_value()); // Check total balance of account 10 assert_eq!(Balances::total_balance(&10), 0); @@ -1321,7 +1319,7 @@ fn on_free_balance_zero_stash_removes_nominator() { assert!(>::exists(&10)); // Reduce free_balance of stash to 0 - Balances::set_free_balance(&11, 0); + Balances::slash(&11, u64::max_value()); // Check total balance of stash assert_eq!(Balances::total_balance(&11), 0); @@ -1382,7 +1380,7 @@ fn phragmen_poc_works() { // bond [2,1](A), [4,3](B), [6,5](C) as the 3 nominators // Give all of them some balance to be able to bond properly. - for i in &[1, 3, 5] { Balances::set_free_balance(i, 50); } + for i in &[1, 3, 5] { let _ = Balances::deposit_creating(i, 50); } // Linking names to the above test: // 10 => X // 20 => Y @@ -1439,7 +1437,7 @@ fn phragmen_election_works() { // bond [2,1](A), [4,3](B), as 2 nominators // Give all of them some balance to be able to bond properly. - for i in &[1, 3] { Balances::set_free_balance(i, 50); } + for i in &[1, 3] { let _ = Balances::deposit_creating(i, 50); } assert_ok!(Staking::bond(Origin::signed(1), 2, 5, RewardDestination::default())); assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); @@ -1499,7 +1497,7 @@ fn switching_roles() { assert_eq!(Session::validators(), vec![20, 10]); // put some money in account that we'll use. - for i in 1..7 { Balances::set_free_balance(&i, 5000); } + for i in 1..7 { let _ = Balances::deposit_creating(&i, 5000); } // add 2 nominators assert_ok!(Staking::bond(Origin::signed(1), 2, 2000, RewardDestination::default())); @@ -1567,7 +1565,7 @@ fn wrong_vote_is_null() { assert_eq!(Session::validators(), vec![40, 30, 20, 10]); // put some money in account that we'll use. - for i in 1..3 { Balances::set_free_balance(&i, 5000); } + for i in 1..3 { let _ = Balances::deposit_creating(&i, 5000); } // add 1 nominators assert_ok!(Staking::bond(Origin::signed(1), 2, 2000, RewardDestination::default())); diff --git a/srml/support/src/traits.rs b/srml/support/src/traits.rs index fbce46eac0..30f441fd21 100644 --- a/srml/support/src/traits.rs +++ b/srml/support/src/traits.rs @@ -61,14 +61,184 @@ pub enum UpdateBalanceOutcome { AccountKilled, } -pub trait ArithmeticType { - type Type: SimpleArithmetic + As + As + Codec + Copy + MaybeSerializeDebug + Default; +/// Simple trait designed for hooking into a transaction payment. +/// +/// It operates over a single generic `AccountId` type. +pub trait MakePayment { + /// Make transaction payment from `who` for an extrinsic of encoded length + /// `encoded_len` bytes. Return `Ok` iff the payment was successful. + fn make_payment(who: &AccountId, encoded_len: usize) -> Result<(), &'static str>; +} + +impl MakePayment for () { + fn make_payment(_: &T, _: usize) -> Result<(), &'static str> { Ok(()) } +} + +/// Handler for when some currency "account" decreased in balance for +/// some reason. +/// +/// The only reason at present for an increase would be for validator rewards, but +/// there may be other reasons in the future or for other chains. +/// +/// Reasons for decreases include: +/// +/// - Someone got slashed. +/// - Someone paid for a transaction to be included. +pub trait OnUnbalanced { + /// Handler for some imbalance. Infallible. + fn on_unbalanced(amount: Imbalance); +} + +impl OnUnbalanced for () { + fn on_unbalanced(amount: Imbalance) { drop(amount); } +} + +/// Simple boolean for whether an account needs to be kept in existence. +#[derive(Copy, Clone, Eq, PartialEq)] +pub enum ExistenceRequirement { + /// Operation must not result in the account going out of existence. + KeepAlive, + /// Operation may result in account going out of existence. + AllowDeath, +} + +/// A trait for a not-quite Linear Type that tracks an imbalance. +/// +/// Functions that alter account balances return an object of this trait to +/// express how much account balances have been altered in aggregate. If +/// dropped, the currency system will take some default steps to deal with +/// the imbalance (`balances` module simply reduces or increases its +/// total issuance). Your module should generally handle it in some way, +/// good practice is to do so in a configurable manner using an +/// `OnUnbalanced` type for each situation in which your module needs to +/// handle an imbalance. +/// +/// Imbalances can either be Positive (funds were added somewhere without +/// being subtracted elsewhere - e.g. a reward) or Negative (funds deducted +/// somewhere without an equal and opposite addition - e.g. a slash or +/// system fee payment). +/// +/// Since they are unsigned, the actual type is always Positive or Negative. +/// The trait makes no distinction except to define the `Opposite` type. +/// +/// New instances of zero value can be created (`zero`) and destroyed +/// (`drop_zero`). +/// +/// Existing instances can be `split` and merged either consuming `self` with +/// `merge` or mutating `self` with `subsume`. If the target is an `Option`, +/// then `maybe_merge` and `maybe_subsume` might work better. Instances can +/// also be `offset` with an `Opposite` that is less than or equal to in value. +/// +/// You can always retrieve the raw balance value using `peek`. +#[must_use] +pub trait Imbalance: Sized { + /// The oppositely imbalanced type. They come in pairs. + type Opposite: Imbalance; + + /// The zero imbalance. Can be destroyed with `drop_zero`. + fn zero() -> Self; + + /// Drop an instance cleanly. Only works if its `value()` is zero. + fn drop_zero(self) -> Result<(), Self>; + + /// Consume `self` and return two independent instances; the first + /// is guaranteed to be at most `amount` and the second will be the remainder. + fn split(self, amount: Balance) -> (Self, Self); + + /// Consume `self` and an `other` to return a new instance that combines + /// both. + fn merge(self, other: Self) -> Self; + + /// Consume `self` and maybe an `other` to return a new instance that combines + /// both. + fn maybe_merge(self, other: Option) -> Self { + if let Some(o) = other { + self.merge(o) + } else { + self + } + } + + /// Consume an `other` to mutate `self` into a new instance that combines + /// both. + fn subsume(&mut self, other: Self); + + /// Maybe consume an `other` to mutate `self` into a new instance that combines + /// both. + fn maybe_subsume(&mut self, other: Option) { + if let Some(o) = other { + self.subsume(o) + } + } + + /// Consume self and along with an opposite counterpart to return + /// a combined result. + /// + /// Returns `Ok` along with a new instance of `Self` if this instance has a + /// greater value than the `other`. Otherwise returns `Err` with an instance of + /// the `Opposite`. In both cases the value represents the combination of `self` + /// and `other`. + fn offset(self, other: Self::Opposite) -> Result; + + /// The raw value of self. + fn peek(&self) -> Balance; +} + +/// Either a positive or a negative imbalance. +pub enum SignedImbalance>{ + /// A positive imbalance (funds have been created but none destroyed). + Positive(P), + /// A negative imbalance (funds have been destroyed but none created). + Negative(P::Opposite), +} + +impl< + P: Imbalance, + N: Imbalance, + B: SimpleArithmetic + As + As + Codec + Copy + MaybeSerializeDebug + Default, +> SignedImbalance { + pub fn zero() -> Self { + SignedImbalance::Positive(P::zero()) + } + + pub fn drop_zero(self) -> Result<(), Self> { + match self { + SignedImbalance::Positive(x) => x.drop_zero().map_err(SignedImbalance::Positive), + SignedImbalance::Negative(x) => x.drop_zero().map_err(SignedImbalance::Negative), + } + } + + /// Consume `self` and an `other` to return a new instance that combines + /// both. + pub fn merge(self, other: Self) -> Self { + match (self, other) { + (SignedImbalance::Positive(one), SignedImbalance::Positive(other)) => + SignedImbalance::Positive(one.merge(other)), + (SignedImbalance::Negative(one), SignedImbalance::Negative(other)) => + SignedImbalance::Negative(one.merge(other)), + (SignedImbalance::Positive(one), SignedImbalance::Negative(other)) => + if one.peek() > other.peek() { + SignedImbalance::Positive(one.offset(other).ok().unwrap_or_else(P::zero)) + } else { + SignedImbalance::Negative(other.offset(one).ok().unwrap_or_else(N::zero)) + }, + (one, other) => other.merge(one), + } + } } /// Abstraction over a fungible assets system. pub trait Currency { /// The balance of an account. - type Balance; + type Balance: SimpleArithmetic + As + As + Codec + Copy + MaybeSerializeDebug + Default; + + /// The opaque token type for an imbalance. This is returned by unbalanced operations + /// and must be dealt with. It may be dropped but cannot be cloned. + type PositiveImbalance: Imbalance; + + /// The opaque token type for an imbalance. This is returned by unbalanced operations + /// and must be dealt with. It may be dropped but cannot be cloned. + type NegativeImbalance: Imbalance; // PUBLIC IMMUTABLES @@ -117,30 +287,83 @@ pub trait Currency { /// collapsed to zero if it ever becomes less than `ExistentialDeposit`. fn reserved_balance(who: &AccountId) -> Self::Balance; - // PUBLIC MUTABLES (DANGEROUS) + /// Returns `Ok` iff the account is able to make a withdrawal of the given amount + /// for the given reason. Basically, it's just a dry-run of `withdraw`. + /// + /// `Err(...)` with the reason why not otherwise. + fn ensure_can_withdraw( + who: &AccountId, + _amount: Self::Balance, + reason: WithdrawReason, + new_balance: Self::Balance, + ) -> result::Result<(), &'static str>; + + // PUBLIC MUTABLES (DANGEROUS) - /// Deducts up to `value` from the combined balance of `who`, preferring to deduct from the + /// Transfer some liquid free balance to another staker. + /// + /// This is a very high-level function. It will ensure all appropriate fees are paid + /// and no imbalance in the system remains. + fn transfer( + source: &AccountId, + dest: &AccountId, + value: Self::Balance, + ) -> result::Result<(), &'static str>; + + /// Deducts up to `value` from the combined balance of `who`, preferring to deduct from the /// free balance. This function cannot fail. /// + /// The resulting imbalance is the first item of the tuple returned. + /// /// As much funds up to `value` will be deducted as possible. If this is less than `value`, - /// then `Some(remaining)` will be returned. Full completion is given by `None`. - fn slash(who: &AccountId, value: Self::Balance) -> Option; + /// then a non-zero second item will be returned. + fn slash( + who: &AccountId, + value: Self::Balance + ) -> (Self::NegativeImbalance, Self::Balance); - /// Adds up to `value` to the free balance of `who`. + /// Mints `value` to the free balance of `who`. /// /// If `who` doesn't exist, nothing is done and an Err returned. - fn reward(who: &AccountId, value: Self::Balance) -> result::Result<(), &'static str>; + fn deposit_into_existing( + who: &AccountId, + value: Self::Balance + ) -> result::Result; - /// Adds up to `value` to the free balance of `who`. + /// Removes some free balance from `who` account for `reason` if possible. If `liveness` is `KeepAlive`, + /// then no less than `ExistentialDeposit` must be left remaining. /// - /// If `who` doesn't exist, it is created + /// This checks any locks, vesting and liquidity requirements. If the removal is not possible, then it + /// returns `Err`. + fn withdraw( + who: &AccountId, + value: Self::Balance, + reason: WithdrawReason, + liveness: ExistenceRequirement, + ) -> result::Result; + + /// Adds up to `value` to the free balance of `who`. If `who` doesn't exist, it is created /// - /// Returns if the account was successfully updated or update has led to killing of the account. + /// Infallible. + fn deposit_creating( + who: &AccountId, + value: Self::Balance, + ) -> Self::PositiveImbalance; + + /// Ensure an account's free balance equals some value; this will create the account + /// if needed. /// - /// NOTE: This assumes that the total stake remains unchanged after this operation. - fn increase_free_balance_creating(who: &AccountId, value: Self::Balance) -> UpdateBalanceOutcome; + /// Returns a signed imbalance and status to indicate if the account was successfully updated or update + /// has led to killing of the account. + fn ensure_free_balance_is( + who: &AccountId, + balance: Self::Balance, + ) -> ( + SignedImbalance, + UpdateBalanceOutcome, + ); - /// Moves `value` from balance to reserved balance. + /// Moves `value` from balance to reserved balance. /// /// If the free balance is lower than `value`, then no funds will be moved and an `Err` will /// be returned to notify of this. This is different behaviour to `unreserve`. @@ -149,27 +372,31 @@ pub trait Currency { /// Moves up to `value` from reserved balance to balance. This function cannot fail. /// /// As much funds up to `value` will be deducted as possible. If this is less than `value`, - /// then `Some(remaining)` will be returned. Full completion is given by `None`. + /// then non-zero will be returned. + /// /// NOTE: This is different to `reserve`. - fn unreserve(who: &AccountId, value: Self::Balance) -> Option; + fn unreserve(who: &AccountId, value: Self::Balance) -> Self::Balance; /// Deducts up to `value` from reserved balance of `who`. This function cannot fail. /// /// As much funds up to `value` will be deducted as possible. If this is less than `value`, - /// then `Some(remaining)` will be returned. Full completion is given by `None`. - fn slash_reserved(who: &AccountId, value: Self::Balance) -> Option; + /// then non-zero second item will be returned. + fn slash_reserved( + who: &AccountId, + value: Self::Balance + ) -> (Self::NegativeImbalance, Self::Balance); /// Moves up to `value` from reserved balance of account `slashed` to free balance of account /// `beneficiary`. `beneficiary` must exist for this to succeed. If it does not, `Err` will be /// returned. /// - /// As much funds up to `value` will be moved as possible. If this is less than `value`, then - /// `Ok(Some(remaining))` will be returned. Full completion is given by `Ok(None)`. + /// As much funds up to `value` will be deducted as possible. If this is less than `value`, + /// then `Ok(non_zero)` will be returned. fn repatriate_reserved( slashed: &AccountId, beneficiary: &AccountId, value: Self::Balance - ) -> result::Result, &'static str>; + ) -> result::Result; } /// An identifier for a lock. Used for disambiguating different locks so that @@ -207,25 +434,6 @@ pub trait LockableCurrency: Currency { ); } -/// Charge bytes fee trait -pub trait ChargeBytesFee { - /// Charge fees from `transactor` for an extrinsic (transaction) of encoded length - /// `encoded_len` bytes. Return Ok if the payment was successful. - fn charge_base_bytes_fee(transactor: &AccountId, encoded_len: usize) -> Result<(), &'static str>; -} - -/// Charge fee trait -pub trait ChargeFee: ChargeBytesFee { - /// The type of fee amount. - type Amount; - - /// Charge `amount` of fees from `transactor`. Return Ok iff the payment was successful. - fn charge_fee(transactor: &AccountId, amount: Self::Amount) -> Result<(), &'static str>; - - /// Refund `amount` of previous charged fees from `transactor`. Return Ok if the refund was successful. - fn refund_fee(transactor: &AccountId, amount: Self::Amount) -> Result<(), &'static str>; -} - bitmask! { /// Reasons for moving funds out of an account. #[derive(Encode, Decode)] @@ -240,39 +448,7 @@ bitmask! { Transfer = 0b00000010, /// In order to reserve some funds for a later return or repatriation Reserve = 0b00000100, + /// In order to pay some other (higher-level) fees. + Fee = 0b00001000, } } - -/// Transfer fungible asset trait -pub trait TransferAsset { - /// The type of asset amount. - type Amount; - - /// Transfer asset from `from` account to `to` account with `amount` of asset. - fn transfer(from: &AccountId, to: &AccountId, amount: Self::Amount) -> Result<(), &'static str>; - - /// Remove asset from `who` account by deducting `amount` in the account balances. - fn withdraw(who: &AccountId, amount: Self::Amount, reason: WithdrawReason) -> Result<(), &'static str>; - - /// Add asset to `who` account by increasing `amount` in the account balances. - fn deposit(who: &AccountId, amount: Self::Amount) -> Result<(), &'static str>; -} - -impl ChargeBytesFee for () { - fn charge_base_bytes_fee(_: &T, _: usize) -> Result<(), &'static str> { Ok(()) } -} - -impl ChargeFee for () { - type Amount = (); - - fn charge_fee(_: &T, _: Self::Amount) -> Result<(), &'static str> { Ok(()) } - fn refund_fee(_: &T, _: Self::Amount) -> Result<(), &'static str> { Ok(()) } -} - -impl TransferAsset for () { - type Amount = (); - - fn transfer(_: &T, _: &T, _: Self::Amount) -> Result<(), &'static str> { Ok(()) } - fn withdraw(_: &T, _: Self::Amount, _: WithdrawReason) -> Result<(), &'static str> { Ok(()) } - fn deposit(_: &T, _: Self::Amount) -> Result<(), &'static str> { Ok(()) } -} diff --git a/srml/treasury/src/lib.rs b/srml/treasury/src/lib.rs index f571420593..8585950f7c 100644 --- a/srml/treasury/src/lib.rs +++ b/srml/treasury/src/lib.rs @@ -22,12 +22,14 @@ use serde_derive::{Serialize, Deserialize}; use rstd::prelude::*; use srml_support::{StorageValue, StorageMap, decl_module, decl_storage, decl_event, ensure}; -use srml_support::traits::{Currency, OnDilution, ArithmeticType}; +use srml_support::traits::{Currency, OnDilution, OnUnbalanced, Imbalance}; use runtime_primitives::{Permill, traits::{Zero, EnsureOrigin, StaticLookup}}; use parity_codec::{Encode, Decode}; use system::ensure_signed; -type BalanceOf = <::Currency as ArithmeticType>::Type; +type BalanceOf = <::Currency as Currency<::AccountId>>::Balance; +type PositiveImbalanceOf = <::Currency as Currency<::AccountId>>::PositiveImbalance; +type NegativeImbalanceOf = <::Currency as Currency<::AccountId>>::NegativeImbalance; /// Our module's configuration trait. All our types and consts go in here. If the /// module is dependent on specific other modules, then their configuration traits @@ -36,7 +38,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::Currency as ArithmeticType>::Type>; + type Currency: Currency; /// Origin from which approvals must come. type ApproveOrigin: EnsureOrigin; @@ -46,6 +48,12 @@ pub trait Trait: system::Trait { /// The overarching event type. type Event: From> + Into<::Event>; + + /// Handler for the unbalanced increase when minting cash from the "Pot". + type MintedForSpending: OnUnbalanced>; + + /// Handler for the unbalanced decrease when slashing for a rejected proposal. + type ProposalRejection: OnUnbalanced>; } type ProposalIndex = u32; @@ -103,7 +111,8 @@ decl_module! { let proposal = >::take(proposal_id).ok_or("No proposal at that index")?; let value = proposal.bond; - let _ = T::Currency::slash_reserved(&proposal.proposer, value); + let imbalance = T::Currency::slash_reserved(&proposal.proposer, value).0; + T::ProposalRejection::on_unbalanced(imbalance); } /// Approve a proposal. At a later time, the proposal will be allocated to the beneficiary @@ -202,6 +211,7 @@ impl Module { Self::deposit_event(RawEvent::Spending(budget_remaining)); let mut missed_any = false; + let mut imbalance = >::zero(); >::mutate(|v| { v.retain(|&index| { // Should always be true, but shouldn't panic if false or we're screwed. @@ -214,7 +224,7 @@ impl Module { let _ = T::Currency::unreserve(&p.proposer, p.bond); // provide the allocation. - T::Currency::increase_free_balance_creating(&p.beneficiary, p.value); + imbalance.subsume(T::Currency::deposit_creating(&p.beneficiary, p.value)); Self::deposit_event(RawEvent::Awarded(index, p.value, p.beneficiary)); false @@ -228,6 +238,8 @@ impl Module { }); }); + T::MintedForSpending::on_unbalanced(imbalance); + if !missed_any { // burn some proportion of the remaining budget if we run a surplus. let burn = (Self::burn() * budget_remaining).min(budget_remaining); @@ -288,12 +300,17 @@ mod tests { type OnNewAccount = (); type OnFreeBalanceZero = (); type Event = (); + type TransactionPayment = (); + type TransferPayment = (); + type DustRemoval = (); } impl Trait for Test { type Currency = balances::Module; type ApproveOrigin = system::EnsureRoot; type RejectOrigin = system::EnsureRoot; type Event = (); + type MintedForSpending = (); + type ProposalRejection = (); } type Balances = balances::Module; type Treasury = Module; @@ -302,6 +319,8 @@ mod tests { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; t.extend(balances::GenesisConfig::{ balances: vec![(0, 100), (1, 99), (2, 1)], + transaction_base_fee: 0, + transaction_byte_fee: 0, transfer_fee: 0, creation_fee: 0, existential_deposit: 0, -- GitLab From d270ae4f507b14a92ceca3bd54dc2d9c260607f6 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Wed, 20 Mar 2019 17:18:53 +0100 Subject: [PATCH 053/120] Show the remote PeerId in the handler's logs (#2057) --- .../src/custom_proto/handler.rs | 35 +++++++++++++------ 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/core/network-libp2p/src/custom_proto/handler.rs b/core/network-libp2p/src/custom_proto/handler.rs index 1b3c51baba..c2c2cf07b7 100644 --- a/core/network-libp2p/src/custom_proto/handler.rs +++ b/core/network-libp2p/src/custom_proto/handler.rs @@ -93,9 +93,10 @@ where { type Handler = CustomProtoHandler; - fn into_handler(self, _: &PeerId) -> Self::Handler { + fn into_handler(self, remote_peer_id: &PeerId) -> Self::Handler { CustomProtoHandler { protocol: self.protocol, + remote_peer_id: remote_peer_id.clone(), state: ProtocolState::Init { substreams: SmallVec::new(), init_deadline: Delay::new(Instant::now() + Duration::from_secs(5)) @@ -114,6 +115,10 @@ pub struct CustomProtoHandler { /// State of the communications with the remote. state: ProtocolState, + /// Identifier of the node we're talking to. Used only for logging purposes and shouldn't have + /// any influence on the behaviour. + remote_peer_id: PeerId, + /// Queue of events to send to the outside. /// /// This queue must only ever be modified to insert elements at the back, or remove the first @@ -360,7 +365,8 @@ where fn enable(&mut self, endpoint: Endpoint) { self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { ProtocolState::Poisoned => { - error!(target: "sub-libp2p", "Handler is in poisoned state"); + error!(target: "sub-libp2p", "Handler with {:?} is in poisoned state", + self.remote_peer_id); ProtocolState::Poisoned } @@ -416,7 +422,8 @@ where fn disable(&mut self) { self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { ProtocolState::Poisoned => { - error!(target: "sub-libp2p", "Handler is in poisoned state"); + error!(target: "sub-libp2p", "Handler with {:?} is in poisoned state", + self.remote_peer_id); ProtocolState::Poisoned } @@ -473,7 +480,8 @@ where let return_value; self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { ProtocolState::Poisoned => { - error!(target: "sub-libp2p", "Handler is in poisoned state; shutting down"); + error!(target: "sub-libp2p", "Handler with {:?} is in poisoned state", + self.remote_peer_id); return_value = None; ProtocolState::Poisoned } @@ -481,7 +489,8 @@ where ProtocolState::Init { substreams, mut init_deadline } => { match init_deadline.poll() { Ok(Async::Ready(())) => - error!(target: "sub-libp2p", "Handler initialization process is too long"), + error!(target: "sub-libp2p", "Handler initialization process is too long \ + with {:?}", self.remote_peer_id), Ok(Async::NotReady) => {} Err(_) => error!(target: "sub-libp2p", "Tokio timer has errored") } @@ -596,13 +605,15 @@ where ) { self.state = match mem::replace(&mut self.state, ProtocolState::Poisoned) { ProtocolState::Poisoned => { - error!(target: "sub-libp2p", "Handler is in poisoned state"); + error!(target: "sub-libp2p", "Handler with {:?} is in poisoned state", + self.remote_peer_id); ProtocolState::Poisoned } ProtocolState::Init { mut substreams, init_deadline } => { if substream.endpoint() == Endpoint::Dialer { - error!(target: "sub-libp2p", "Opened dialing substream before initialization"); + error!(target: "sub-libp2p", "Opened dialing substream with {:?} before \ + initialization", self.remote_peer_id); } substreams.push(substream); ProtocolState::Init { substreams, init_deadline } @@ -646,7 +657,7 @@ where ProtocolState::BackCompat { substream: existing, mut shutdown } => { warn!(target: "sub-libp2p", "Received extra substream after having already one \ - open in backwards-compatibility mode"); + open in backwards-compatibility mode with {:?}", self.remote_peer_id); substream.shutdown(); shutdown.push(substream); ProtocolState::BackCompat { substream: existing, shutdown } @@ -665,7 +676,8 @@ where state.shutdown.push(substream); } } else { - debug!(target: "sub-libp2p", "Opened spurious outbound substream"); + debug!(target: "sub-libp2p", "Opened spurious outbound substream with {:?}", + self.remote_peer_id); substream.shutdown(); state.shutdown.push(substream); } @@ -712,7 +724,7 @@ where state.shutdown.push(substream); } else { warn!(target: "sub-libp2p", "Libp2p layer received response to a \ - non-existing request ID {:?}", request_id); + non-existing request ID {:?} with {:?}", request_id, self.remote_peer_id); } } else if let Some(mut outgoing_substream) = state.outgoing_substream.take() { outgoing_substream.send_message(message); @@ -732,7 +744,8 @@ where } } - _ => debug!(target: "sub-libp2p", "Tried to send message over closed protocol") + _ => debug!(target: "sub-libp2p", "Tried to send message over closed protocol \ + with {:?}", self.remote_peer_id) } } } -- GitLab From c0556a24cdc51545e10d2e95e78c50a69430046a Mon Sep 17 00:00:00 2001 From: Logan Saether Date: Thu, 21 Mar 2019 10:44:39 +0100 Subject: [PATCH 054/120] update readme (#2066) --- subkey/README.adoc | 59 ++++++++++++++++++++++++++++++++++++---------- 1 file changed, 46 insertions(+), 13 deletions(-) diff --git a/subkey/README.adoc b/subkey/README.adoc index e895ab07ad..7fe194eb82 100644 --- a/subkey/README.adoc +++ b/subkey/README.adoc @@ -1,22 +1,55 @@ = Subkey -A key generation utility with vanity address support. +Subkey is a commandline utility included with Substrate that generates or restores Substrate keys. -Usage: +`subkey` will use the http://wiki.polkadot.network/en/latest/polkadot/learn/cryptography/#keypairs-and-signing[sr25519] cryptography by default. If you need to use the older ed25519 cryptography to generate or restore your key pass the `--ed25519` flag to any of the commands. - subkey +== Usage -Sample use: +=== Generate a random account - $ subkey -or - $ subkey polka -or - $ subkey polka 3 +```bash +subkey generate +``` +Will output a mnemonic phrase and give you the seed, public key, and address of a new account. DO NOT SHARE your mnemonic or seed with ANYONE it will give them access to your funds. If someone is making a transfer to you they will only need your **Address**. -Result: +=== Inspecting a key - 5CxS39ykKsmPetYQjTqW6aJXkSChnuvPdziA8uphuPaCyRZ1: 406ac59ccbb8358f7c95b726d3ccb039afe35e2dd62045189d1abae8d7805b8a (54%) - 5CujMhFmChyq3AMUwMasfbqSpZYpbFfZS5UQ7zUn2d63CGBo: 5b6ac59ccbb8358f7c95b726d3ccb039afe35e2dd62045189d1abae8d7805b8a (69%) - 5EfdN3zChABKsXT9bEg33zqPsBu4YCu1h7yoovvjtsUMqyFU: c46ac59ccbb8358f7c95b726d3ccb039afe35e2dd62045189d1abae8d7805b8a (69%) +You can inspect a given URI (mnemonic, seed, public key, or address) and recover the public key and the address. + +```bash +subkey inspect + +OUTPUT: + Public key (hex): 0x461edcf1ba99e43f50dec4bdeb3d1a2cf521ad7c3cd0eeee5cd3314e50fd424c + Address (SS58): 5DeeNqcAcaHDSed2HYnqMDK7JHcvxZ5QUE9EKmjc5snvU6wF +``` + +=== Signing + +`subkey` expects a message to come in on STDIN, one way to sign a message would look like this: + +```bash +echo | subkey sign + +OUTPUT: +a69da4a6ccbf81dbbbfad235fa12cf8528c18012b991ae89214de8d20d29c1280576ced6eb38b7406d1b7e03231df6dd4a5257546ddad13259356e1c3adfb509 +``` + +=== Verifying a signature + +```bash +echo | subkey verify

+ +OUTPUT: +Signature verifies correctly. +``` + +=== Using the vanity generator + +You can use the included vanity generator to find a seed that provides an address which includes the desired pattern. Be warned, depending on your hardware this may take a while. + +```bash +subkey vanity 1337 +``` -- GitLab From b5567cfc65267f7f5580c486e23aa6608ac40c4e Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Thu, 21 Mar 2019 12:55:30 +0100 Subject: [PATCH 055/120] Keep peer info up to date (#2067) * Keep peer info up to date * Docs Co-Authored-By: arkpar --- core/network/src/protocol.rs | 20 +++++++++++++++++++- core/network/src/sync.rs | 19 +++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/core/network/src/protocol.rs b/core/network/src/protocol.rs index bcfd1d07e5..d33e0d0af1 100644 --- a/core/network/src/protocol.rs +++ b/core/network/src/protocol.rs @@ -445,6 +445,20 @@ impl, H: ExHashT> Protocol { None } + fn update_peer_info(&mut self, who: NodeIndex) { + if let Some(info) = self.sync.peer_info(who) { + if let Some(ref mut peer) = self.context_data.peers.get_mut(&who) { + peer.info.best_hash = info.best_hash; + peer.info.best_number = info.best_number; + } + let mut peers = self.connected_peers.write(); + if let Some(ref mut peer) = peers.get_mut(&who) { + peer.peer_info.best_hash = info.best_hash; + peer.peer_info.best_number = info.best_number; + } + } + } + /// Propagates protocol statuses. fn on_status(&mut self) { let status = ProtocolStatus { @@ -467,9 +481,13 @@ impl, H: ExHashT> Protocol { GenericMessage::BlockResponse(r) => { if let Some(request) = self.handle_response(who, &r) { self.on_block_response(who, request, r); + self.update_peer_info(who); } }, - GenericMessage::BlockAnnounce(announce) => self.on_block_announce(who, announce), + GenericMessage::BlockAnnounce(announce) => { + self.on_block_announce(who, announce); + self.update_peer_info(who); + }, GenericMessage::Transactions(m) => self.on_extrinsics(who, m), GenericMessage::RemoteCallRequest(request) => self.on_remote_call_request(who, request), GenericMessage::RemoteCallResponse(response) => self.on_remote_call_response(who, response), diff --git a/core/network/src/sync.rs b/core/network/src/sync.rs index a4dc1855ef..76dbeabe79 100644 --- a/core/network/src/sync.rs +++ b/core/network/src/sync.rs @@ -58,6 +58,15 @@ struct PeerSync { pub recently_announced: VecDeque, } +#[derive(Debug)] +/// Peer sync status. +pub(crate) struct PeerInfo { + /// Their best block hash. + pub best_hash: B::Hash, + /// Their best block number. + pub best_number: NumberFor, +} + #[derive(Copy, Clone, Eq, PartialEq, Debug)] enum AncestorSearchState { /// Use exponential backoff to find an ancestor, then switch to binary search. @@ -408,6 +417,16 @@ impl ChainSync { } } + /// Returns peer sync status (if any). + pub(crate) fn peer_info(&self, who: NodeIndex) -> Option> { + self.peers.get(&who).map(|peer| { + PeerInfo { + best_hash: peer.best_hash, + best_number: peer.best_number, + } + }) + } + /// Returns sync status. pub(crate) fn status(&self) -> Status { let best_seen = self.best_seen_block(); -- GitLab From 0bd129273f6d121d21f8e7dd24ba75b9f437285a Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Thu, 21 Mar 2019 13:56:31 +0100 Subject: [PATCH 056/120] Rebuild, add a couple of tests and fix theoretical issue (#2056) * Rebuild, add a couple of tests and fix theoretical issue * Update lib.rs --- node/runtime/src/lib.rs | 2 +- .../release/node_runtime.compact.wasm | Bin 900932 -> 901302 bytes srml/balances/src/lib.rs | 16 +++++++++- srml/balances/src/tests.rs | 30 ++++++++++++++++++ 4 files changed, 46 insertions(+), 2 deletions(-) diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 6ef50ef61f..1f52620cd4 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -59,7 +59,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 38, - impl_version: 38, + impl_version: 39, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 22b953faab7d9a741ca31373208ea792a66918f2..446e9eaad9b7c42c8435e38f28f298bd48fa373d 100644 GIT binary patch delta 1698 zcma)6O=u)V6z;0m-PJwQJ(~dht!Un2@w~;it30|M_dU(WpJxU6!Up$fX>9PvDtXM| zqsU9Xn8rMc^Ch3`(|Mmc+lAq0C`J+SISpn07LLon%e$zM148MlDNre7w6d=m?D zY?DV;K{=q8lb>($h0sAe=y=w36b3)S$SapU?g@vbtD2WjS3~T?LIb-n*YJzjRrBrb zhTnxY{pqZ!iD=m+uag{$NJbYzRU?LlCK1imwwr!I8BITjltuyb$#lNt(y0pE;E8)q ze*7VSuE+zd`y7p@TrHhOz^)2$p|vx{D?B)`e-pq%Sm2?Yi=e+sdHV*%H7I-EL};L< zEP=e?TPSM2K~x1A6yL0=iKrSBR6~tUS!k5x)d+@}Eq{#Q87mcp=Ul*)d}IYiA4mXF z2|(&NK#BmmQBMF;a(4|pI)8T!`sJ4^aM`jIh(KGuv8kFVQ{v)MRhx1()JZPnGpM&K$hQ$@h#JuCD2=p4s(_u*x={?FwABUZ8!=9CU`%q-2d~z4cOvK)|@HUetuRu?{^BsJ(uYYojJucU` z^f_ULYymOk*h;i9PH@2u_vE>mH&Z<`S{^;7M}8pwuVQTW4Z&HASs z)C0pcA4v6Ks-$5m3pJ7IkW>OwKxI^$MJk+jicBr*21Xp0=!$}Mqn#+*V0GWsvK?Ur%ZwqI3{0d=?}7HdAUWbBl%HFzeYK{`iuVh!}nD~ zZ}cK!52D+7gN7O3&Wlllzmt#qilUo$Q1uRh<$;q`4e84H9&tf# zmPECbar86_Y8k3=CDAsb37mv_tmtp(vU53rk{>Buym=rRS-8G@2e= zdZIAJB#J5~DXd251g@)nGWZAoR#K@jyIgxCf> z)PuauYpHZM>7^GtR6$aEs2+kI#CH%ugO_@c*cypSEiKvvRO&?#1@W6rDtHhP_M7jU zdEfV&-+X`egOjyS|E#`uRPx)GPfg3#v}EbDqqJK$N9*UtZ1H^=ZaK3&-Wk5 zV-MbsysX6p=209eYqIyDpbZ(-+^Y;BT5_f$IW+)|Dj^KOxGL~b^W!{!AS_~UQ&$Ni z-^8LBy1-kqXkAd{%_kT5OcG)?>OK^P7KPtI>9Hh%$@w-W$ZN{24;=zISw;qrvf@Py5nxCM9ZM2Ft3Gst5tET}`7 z(4^=TAtp{4qHC_TV30}Ux8b17M#)$Rm^II|VQ-}iMMGy7C>paJZ@X;p-imHL!7lUC z98@TJbQU(7pW9%hv=9QNQFE}xT%3iM|8X>gk^nhMHjKD*_;a8J1L>=q!6dyE_~z^3$KgDf8|ZaNE3c6&{j+o~<4!no5)S!Z>-Zz zgUF&2qO;Z15snhbkPW~Ip@*%`>3y-T)@V}d-9-cPWS6yu$ zyzKhjCpoq_{?6!^%V66Kuey6!+dRMO-j|u>7Ra1mb$9oZJ%~VQTN9MSIc{NDN8bVb zkVwC=<{rCubCjO{*iol>wDS6*qgp&lRGZgZ{UwhillGUyUXL&Lq(}P1R_+HV20$t= z$ob~YvUtucZxi(-3|t=t^&xsl4TX?vGwX=Tvud{@ZqXXe8fD13k*1_*u)K(24PGSW z)nF36ODfAp(HjrxOZ1B~m3z%j5@BY`DjqQt79y=zjj z0PO6ABmuFaJ`6AuV~Ad?yD@BNpIR(LpH6}XhUP}UxcTTt?52%apPoT8;Mw5_(6e)! zAt;Apph>CZc5XduG^tzJ1bK#?#oUA9_?U<8_`_i)5FH}_0+v{?7&qBFIBr^>C68u_ zuo`wT-)XUhdFDo+*kh*Yap`f}N00r@weuen+F{Q$DMLiFNi@l5DykDb{C{4s%N(kR lstjr%(Lt|urXtca6}h;`?rt5vB}uX*T_k>b_*O9a&0mwnGBf}H diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index 8eee7ad130..775d83e33b 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -283,8 +283,9 @@ impl, I: Instance> Module { /// NOTE: LOW-LEVEL: This will not attempt to maintain total issuance. It is expected that /// the caller will do this. fn set_free_balance(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { - // Commented out for no - but consider it instructive. + // Commented out for now - but consider it instructive. // assert!(!Self::total_balance(who).is_zero()); + // assert!(Self::free_balance(who) > Self::existential_deposit()); if balance < Self::existential_deposit() { >::insert(who, balance); Self::on_free_too_low(who); @@ -657,6 +658,19 @@ where UpdateBalanceOutcome ) { let original = Self::free_balance(who); + if balance < Self::existential_deposit() && original.is_zero() { + // If we're attempting to set an existing account to less than ED, then + // bypass the entire operation. It's a no-op if you follow it through, but + // since this is an instance where we might account for a negative imbalance + // (in the dust cleaner of set_free_balance) before we account for its actual + // equal and opposite cause (returned as an Imbalance), then in the + // instance that there's no other accounts on the system at all, we might + // underflow the issuance and our arithmetic will be off. + return ( + SignedImbalance::Positive(Self::PositiveImbalance::zero()), + UpdateBalanceOutcome::AccountKilled, + ) + } let imbalance = if original <= balance { SignedImbalance::Positive(PositiveImbalance(balance - original)) } else { diff --git a/srml/balances/src/tests.rs b/srml/balances/src/tests.rs index 802f184aca..123a04524e 100644 --- a/srml/balances/src/tests.rs +++ b/srml/balances/src/tests.rs @@ -440,6 +440,36 @@ fn transferring_too_high_value_should_not_panic() { }); } +#[test] +fn account_create_on_free_too_low_with_other() { + with_externalities( + &mut ExtBuilder::default().existential_deposit(100).build(), + || { + let _ = Balances::deposit_creating(&1, 100); + assert_eq!(>::get(), 100); + + // No-op. + let _ = Balances::deposit_creating(&2, 50); + assert_eq!(Balances::free_balance(&2), 0); + assert_eq!(>::get(), 100); + } + ) +} + + +#[test] +fn account_create_on_free_too_low() { + with_externalities( + &mut ExtBuilder::default().existential_deposit(100).build(), + || { + // No-op. + let _ = Balances::deposit_creating(&2, 50); + assert_eq!(Balances::free_balance(&2), 0); + assert_eq!(>::get(), 0); + } + ) +} + #[test] fn account_removal_on_free_too_low() { with_externalities( -- GitLab From 89b1df0712fa0a6ea0d96f0a176f59f2fb8559e2 Mon Sep 17 00:00:00 2001 From: kaiyu <35792093+Kayryu@users.noreply.github.com> Date: Thu, 21 Mar 2019 20:57:20 +0800 Subject: [PATCH 057/120] Use local executor (#2054) --- Cargo.lock | 1 - node-template/Cargo.toml | 1 - node-template/src/service.rs | 3 +-- 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 2301ef9100..7cc24ee1e5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1987,7 +1987,6 @@ dependencies = [ "futures 0.1.25 (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)", - "node-executor 0.1.0", "node-template-runtime 0.9.0", "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)", diff --git a/node-template/Cargo.toml b/node-template/Cargo.toml index b66fe0e7de..53874bb181 100644 --- a/node-template/Cargo.toml +++ b/node-template/Cargo.toml @@ -32,7 +32,6 @@ consensus = { package = "substrate-consensus-aura", path = "../core/consensus/au substrate-client = { path = "../core/client" } basic-authorship = { package = "substrate-basic-authorship", path = "../core/basic-authorship" } node-template-runtime = { path = "runtime" } -node-executor = { path = "../node/executor" } [build-dependencies] vergen = "3" diff --git a/node-template/src/service.rs b/node-template/src/service.rs index cffc30217b..aa1d25963b 100644 --- a/node-template/src/service.rs +++ b/node-template/src/service.rs @@ -12,7 +12,6 @@ use substrate_service::{ TaskExecutor, }; use basic_authorship::ProposerFactory; -use node_executor; use consensus::{import_queue, start_aura, AuraImportQueue, SlotDuration, NothingExtra}; use substrate_client as client; use primitives::{ed25519::Pair, Pair as PairT}; @@ -45,7 +44,7 @@ construct_service_factory! { Block = Block, RuntimeApi = RuntimeApi, NetworkProtocol = NodeProtocol { |config| Ok(NodeProtocol::new()) }, - RuntimeDispatch = node_executor::Executor, + RuntimeDispatch = Executor, FullTransactionPoolApi = transaction_pool::ChainApi, FullExecutor, Block, RuntimeApi>, Block> { |config, client| Ok(TransactionPool::new(config, transaction_pool::ChainApi::new(client))) }, LightTransactionPoolApi = transaction_pool::ChainApi, LightExecutor, Block, RuntimeApi>, Block> -- GitLab From c1d342a30cebaffdf479e7e39d6bc1fdbfd8cd33 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Thu, 21 Mar 2019 14:02:28 +0100 Subject: [PATCH 058/120] Add a substrate-peerset crate (#2042) * Add a substrate-peerset crate * Some adjustements * More adjustements * Use a temporary libp2p branch * Add back-off mechanism * Fix RPC tests * Some adjustements * Another libp2p bugfix * Do a round-robin in the peerset * Use a real dependency instead of a patch for libp2p * Initialize reserved nodes correctly * Better diagnostic for no address * Don't allocate slots if in reserved only * Ban node on dial failure * Fix indentation --- Cargo.lock | 212 ++-- Cargo.toml | 1 + core/network-libp2p/Cargo.toml | 3 +- core/network-libp2p/src/behaviour.rs | 163 +-- .../src/custom_proto/behaviour.rs | 1077 ++++++++++------- .../src/custom_proto/handler.rs | 4 - core/network-libp2p/src/custom_proto/mod.rs | 1 - .../src/custom_proto/topology.rs | 725 ----------- .../src/custom_proto/upgrade.rs | 8 +- core/network-libp2p/src/lib.rs | 14 +- core/network-libp2p/src/service_task.rs | 184 +-- core/network-libp2p/tests/test.rs | 2 +- core/network/Cargo.toml | 1 + core/network/src/service.rs | 30 +- core/peerset/Cargo.toml | 20 + core/peerset/src/lib.rs | 297 +++++ core/rpc/src/system/tests.rs | 6 - 17 files changed, 1243 insertions(+), 1505 deletions(-) delete mode 100644 core/network-libp2p/src/custom_proto/topology.rs create mode 100644 core/peerset/Cargo.toml create mode 100644 core/peerset/src/lib.rs diff --git a/Cargo.lock b/Cargo.lock index 7cc24ee1e5..21fdf12ddb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1287,30 +1287,30 @@ dependencies = [ [[package]] name = "libp2p" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core-derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-dns 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-floodsub 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-identify 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-kad 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-mdns 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-mplex 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-noise 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-ping 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-plaintext 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-ratelimit 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-secio 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-tcp 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-uds 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-websocket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-yamux 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multihash 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-core-derive 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-dns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-floodsub 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-kad 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-mdns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-mplex 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-noise 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-plaintext 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ratelimit 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-secio 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-tcp 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-uds 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-websocket 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-yamux 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "stdweb 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1322,7 +1322,7 @@ dependencies = [ [[package]] name = "libp2p-core" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1333,15 +1333,15 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "multistream-select 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multihash 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "multistream-select 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "secp256k1 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1357,7 +1357,7 @@ dependencies = [ [[package]] name = "libp2p-core-derive" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1366,12 +1366,12 @@ dependencies = [ [[package]] name = "libp2p-dns" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "tokio-dns-unofficial 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1379,14 +1379,14 @@ dependencies = [ [[package]] name = "libp2p-floodsub" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "cuckoofilter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1398,14 +1398,14 @@ dependencies = [ [[package]] name = "libp2p-identify" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1419,7 +1419,7 @@ dependencies = [ [[package]] name = "libp2p-kad" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1427,12 +1427,12 @@ dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-identify 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-ping 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multihash 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1447,15 +1447,15 @@ dependencies = [ [[package]] name = "libp2p-mdns" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1468,12 +1468,12 @@ dependencies = [ [[package]] name = "libp2p-mplex" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1484,12 +1484,12 @@ dependencies = [ [[package]] name = "libp2p-noise" version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1502,14 +1502,14 @@ dependencies = [ [[package]] name = "libp2p-ping" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "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)", "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1521,21 +1521,21 @@ dependencies = [ [[package]] name = "libp2p-plaintext" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "libp2p-ratelimit" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1544,7 +1544,7 @@ dependencies = [ [[package]] name = "libp2p-secio" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1553,12 +1553,12 @@ dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "protobuf 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "secp256k1 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)", "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "stdweb 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1570,12 +1570,12 @@ dependencies = [ [[package]] name = "libp2p-tcp" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1584,25 +1584,25 @@ dependencies = [ [[package]] name = "libp2p-uds" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "libp2p-websocket" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multiaddr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "stdweb 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "websocket 0.22.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1611,10 +1611,10 @@ dependencies = [ [[package]] name = "libp2p-yamux" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", "yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1807,7 +1807,7 @@ dependencies = [ [[package]] name = "multistream-select" version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2179,13 +2179,13 @@ dependencies = [ [[package]] name = "parity-multiaddr" version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "parity-multihash 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "serde 1.0.87 (registry+https://github.com/rust-lang/crates.io-index)", "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2193,7 +2193,7 @@ dependencies = [ [[package]] name = "parity-multihash" version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2728,7 +2728,7 @@ dependencies = [ [[package]] name = "rw-stream-sink" version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3943,6 +3943,7 @@ dependencies = [ "substrate-consensus-common 0.1.0", "substrate-keyring 0.1.0", "substrate-network-libp2p 0.1.0", + "substrate-peerset 0.1.0", "substrate-primitives 0.1.0", "substrate-test-client 0.1.0", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3958,7 +3959,7 @@ dependencies = [ "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libp2p 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (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)", @@ -3966,6 +3967,7 @@ dependencies = [ "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)", "smallvec 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", + "substrate-peerset 0.1.0", "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3982,6 +3984,22 @@ dependencies = [ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "substrate-peerset" +version = "0.1.0" +dependencies = [ + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (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)", + "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)", + "tokio-io 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "substrate-primitives" version = "0.1.0" @@ -5165,24 +5183,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum libc 0.2.48 (registry+https://github.com/rust-lang/crates.io-index)" = "e962c7641008ac010fa60a7dfdc1712449f29c44ef2d4702394aea943ee75047" "checksum libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3ad660d7cb8c5822cd83d10897b0f1f1526792737a179e73896152f85b88c2" -"checksum libp2p 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "96bec5a2470cf03c5f0a74c55fc7b26fe969a1530d09d40e02ed76b287e3f9d9" -"checksum libp2p-core 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d53c885b93897902e5fdfd02340459bd940e970b73dd2cf506d4009e527489bf" -"checksum libp2p-core-derive 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e00ab475ca93c07ce539691003b682a0ff025f7dfb51e4ab29f5474457ded59b" -"checksum libp2p-dns 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "983bc7e80b6b5c89f5c6b674880bc058d37f481812692431914732ee2aeaf87a" -"checksum libp2p-floodsub 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aca5042008a7f7ddc53f5d40e6411ffebd66af22989a364303f2996fc5f39c79" -"checksum libp2p-identify 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9036ddde527bba0ae8a9037af7637c6c7a10ccdcdff6d2b00e7fe01f7620d400" -"checksum libp2p-kad 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b9f42265a4ad1c3a153465babcf64ea32d33b3872f4e2a27fb1dc3d1ed9301fd" -"checksum libp2p-mdns 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "260cb7644da51ee2680c6413d350cee35441e78699b38e63600397867e32e3ab" -"checksum libp2p-mplex 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "938678badaa29182f826308d86a89db53b99dd401121c551a979fd1b0a87af48" -"checksum libp2p-noise 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8820b79d0967de619e5dc991f84ffd5b888d06969bc62cf041412b2e9fc1e5c" -"checksum libp2p-ping 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2ad1b0983dbc2bf126583555c7a855ceaa28abfe764b9ede087d308b80ff7b2a" -"checksum libp2p-plaintext 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7cb42f7def0cb74781f6793f0fecbcfa0db79baee80adf18215abc30b1b6912c" -"checksum libp2p-ratelimit 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1f6971c2fc1cd938cd702b2320d3b5e3b5a353b1a3310de974769c3fa670d26e" -"checksum libp2p-secio 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "48a881b9c1b6ff0d35d985437d9f59d2d3ee2c529375aa188a978a1bd1d6f261" -"checksum libp2p-tcp 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "79583caf603d93dc43ee314409c57e070e9a70c760631eea91822a25e898d1af" -"checksum libp2p-uds 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d72965117a6b0ead9b78af8682b0ab6d8c3d71dbb9aadbcb947ef2ef78c2c8a" -"checksum libp2p-websocket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b69b73fcef9d58ae90c6742389a1d29e14dcf3a4ab30bba2f0ca7e984fa59f9f" -"checksum libp2p-yamux 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "563222e2c303516fa097686573f003ee74761eb8d6b6df4204ae1aa07f5dc16c" +"checksum libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-core-derive 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-dns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-floodsub 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-kad 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-mdns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-mplex 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-noise 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-plaintext 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-ratelimit 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-secio 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-tcp 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-uds 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-websocket 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-yamux 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum librocksdb-sys 5.14.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b9024327233e7fac7982440f73301c00046d438c5b1011e8f4e394226ce19007" "checksum libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "688e8d65e495567c2c35ea0001b26b9debf0b4ea11f8cccc954233b75fc3428a" "checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939" @@ -5204,7 +5222,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" -"checksum multistream-select 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b73ed84364f0e921a32204896952ee80c7befc14a7a39f2c56cd955d71e8dae6" +"checksum multistream-select 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum names 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ef320dab323286b50fb5cdda23f61c796a72a89998ab565ca32525c5c556f2da" "checksum native-tls 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ff8e08de0070bbf4c31f452ea2a70db092f36f6f2e4d897adf5674477d488fb2" "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" @@ -5227,8 +5245,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "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" -"checksum parity-multihash 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3e8eab0287ccde7821e337a124dc5a4f1d6e4c25d10cc91e3f9361615dd95076" +"checksum parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)" = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc" "checksum parity-ws 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2fec5048fba72a2e01baeb0d08089db79aead4b57e2443df172fb1840075a233" "checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" @@ -5288,7 +5306,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -"checksum rw-stream-sink 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d548a40fe17c3a77d54b82457b79fcc9b8a288d509ca20fbf5aa1dac386d22d6" +"checksum rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" diff --git a/Cargo.toml b/Cargo.toml index 4366458832..d1dbbe3305 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -100,3 +100,4 @@ is-it-maintained-open-issues = { repository = "paritytech/substrate" } [profile.release] # Substrate runtime requires unwinding. panic = "unwind" + diff --git a/core/network-libp2p/Cargo.toml b/core/network-libp2p/Cargo.toml index 35761c8c57..78bda5b193 100644 --- a/core/network-libp2p/Cargo.toml +++ b/core/network-libp2p/Cargo.toml @@ -13,7 +13,7 @@ bytes = "0.4" error-chain = { version = "0.12", default-features = false } fnv = "1.0" futures = "0.1" -libp2p = { version = "0.5.0", default-features = false, features = ["secio-secp256k1", "libp2p-websocket"] } +libp2p = { git = "https://github.com/tomaka/libp2p-rs", branch = "substrate-tmp-2019-03-20", default-features = false, features = ["secio-secp256k1", "libp2p-websocket"] } parking_lot = "0.7.1" lazy_static = "1.2" log = "0.4" @@ -22,6 +22,7 @@ serde = "1.0.70" serde_derive = "1.0.70" serde_json = "1.0.24" smallvec = "0.6" +substrate-peerset = { path = "../peerset" } tokio = "0.1" tokio-io = "0.1" tokio-timer = "0.2" diff --git a/core/network-libp2p/src/behaviour.rs b/core/network-libp2p/src/behaviour.rs index c71df6f7c5..e2e3762d53 100644 --- a/core/network-libp2p/src/behaviour.rs +++ b/core/network-libp2p/src/behaviour.rs @@ -15,14 +15,13 @@ // along with Substrate. If not, see . use crate::custom_proto::{CustomProto, CustomProtoOut, RegisteredProtocol}; -use crate::NetworkConfiguration; use futures::prelude::*; use libp2p::NetworkBehaviour; use libp2p::core::{Multiaddr, PeerId, ProtocolsHandler, PublicKey}; use libp2p::core::swarm::{ConnectedPoint, NetworkBehaviour, NetworkBehaviourAction}; use libp2p::core::swarm::{NetworkBehaviourEventProcess, PollParameters}; use libp2p::identify::{Identify, IdentifyEvent, protocol::IdentifyInfo}; -use libp2p::kad::{Kademlia, KademliaOut, KadConnectionType}; +use libp2p::kad::{Kademlia, KademliaOut}; use libp2p::ping::{Ping, PingEvent}; use log::{debug, trace, warn}; use std::{cmp, io, fmt, time::Duration, time::Instant}; @@ -50,21 +49,35 @@ pub struct Behaviour { impl Behaviour { /// Builds a new `Behaviour`. - // TODO: redundancy between config and local_public_key (https://github.com/libp2p/rust-libp2p/issues/745) - pub fn new(config: &NetworkConfiguration, local_public_key: PublicKey, protocols: RegisteredProtocol) -> Self { + pub fn new( + user_agent: String, + local_public_key: PublicKey, + protocol: RegisteredProtocol, + known_addresses: Vec<(PeerId, Multiaddr)>, + peerset: substrate_peerset::PeersetMut, + ) -> Self { let identify = { let proto_version = "/substrate/1.0".to_string(); - let user_agent = format!("{} ({})", config.client_version, config.node_name); Identify::new(proto_version, user_agent, local_public_key.clone()) }; - let local_peer_id = local_public_key.into_peer_id(); - let custom_protocols = CustomProto::new(config, &local_peer_id, protocols); + let custom_protocols = CustomProto::new(protocol, peerset); + + let mut kademlia = Kademlia::without_init(local_public_key.into_peer_id()); + for (peer_id, addr) in &known_addresses { + kademlia.add_connected_address(peer_id, addr.clone()); + } + kademlia.initialize(); Behaviour { ping: Ping::new(), custom_protocols, - discovery: DiscoveryBehaviour::new(local_peer_id), + discovery: DiscoveryBehaviour { + user_defined: known_addresses, + kademlia, + next_kad_random_query: Delay::new(Instant::now()), + duration_to_next_kad: Duration::from_secs(60), + }, identify, events: Vec::new(), } @@ -81,67 +94,9 @@ impl Behaviour { self.custom_protocols.send_packet(target, data) } - /// Returns the number of peers in the topology. - pub fn num_topology_peers(&self) -> usize { - self.custom_protocols.num_topology_peers() - } - - /// Flushes the topology to the disk. - pub fn flush_topology(&mut self) -> Result<(), io::Error> { - self.custom_protocols.flush_topology() - } - - /// Perform a cleanup pass, removing all obsolete addresses and peers. - /// - /// This should be done from time to time. - pub fn cleanup(&mut self) { - self.custom_protocols.cleanup(); - } - - /// Returns the list of reserved nodes. - pub fn reserved_peers(&self) -> impl Iterator { - self.custom_protocols.reserved_peers() - } - - /// Try to add a reserved peer. - pub fn add_reserved_peer(&mut self, peer_id: PeerId, addr: Multiaddr) { - self.custom_protocols.add_reserved_peer(peer_id, addr) - } - - /// Try to remove a reserved peer. - /// - /// If we are in reserved mode and we were connected to a node with this peer ID, then this - /// method will disconnect it and return its index. - pub fn remove_reserved_peer(&mut self, peer_id: PeerId) { - self.custom_protocols.remove_reserved_peer(peer_id) - } - - /// Returns true if we only accept reserved nodes. - pub fn is_reserved_only(&self) -> bool { - self.custom_protocols.is_reserved_only() - } - - /// Start accepting all peers again if we weren't. - pub fn accept_unreserved_peers(&mut self) { - self.custom_protocols.accept_unreserved_peers() - } - - /// Start refusing non-reserved nodes. Returns the list of nodes that have been disconnected. - pub fn deny_unreserved_peers(&mut self) { - self.custom_protocols.deny_unreserved_peers() - } - - /// Disconnects a peer and bans it for a little while. - /// - /// Same as `drop_node`, except that the same peer will not be able to reconnect later. - #[inline] - pub fn ban_node(&mut self, peer_id: PeerId) { - self.custom_protocols.ban_peer(peer_id) - } - - /// Returns a list of all the peers that are banned, and until when. - pub fn banned_nodes(&self) -> impl Iterator { - self.custom_protocols.banned_peers() + /// Returns the list of nodes that we know exist in the network. + pub fn known_peers(&self) -> impl Iterator { + self.discovery.kademlia.kbuckets_entries() } /// Returns true if we try to open protocols with the given peer. @@ -154,6 +109,13 @@ impl Behaviour { self.custom_protocols.is_open(peer_id) } + /// Adds a hard-coded address for the given peer, that never expires. + pub fn add_known_address(&mut self, peer_id: PeerId, addr: Multiaddr) { + if self.discovery.user_defined.iter().all(|(p, a)| *p != peer_id && *a != addr) { + self.discovery.user_defined.push((peer_id, addr)); + } + } + /// Disconnects the custom protocols from a peer. /// /// The peer will still be able to use Kademlia or other protocols, but will get disconnected @@ -167,16 +129,6 @@ impl Behaviour { pub fn drop_node(&mut self, peer_id: &PeerId) { self.custom_protocols.disconnect_peer(peer_id) } - - /// Returns the list of peers in the topology. - pub fn known_peers(&self) -> impl Iterator { - self.custom_protocols.known_peers() - } - - /// Returns a list of addresses known for this peer, and their reputation score. - pub fn known_addresses(&mut self, peer_id: &PeerId) -> impl Iterator { - self.custom_protocols.known_addresses(peer_id) - } } /// Event that can be emitted by the behaviour. @@ -283,10 +235,7 @@ impl NetworkBehaviourEventProcess for Behav for addr in &info.listen_addrs { self.discovery.kademlia.add_connected_address(&peer_id, addr.clone()); } - self.custom_protocols.add_discovered_addrs( - &peer_id, - info.listen_addrs.iter().map(|addr| (addr.clone(), true)) - ); + self.custom_protocols.add_discovered_node(&peer_id); self.events.push(BehaviourOut::Identified { peer_id, info }); } IdentifyEvent::Error { .. } => {} @@ -301,17 +250,16 @@ impl NetworkBehaviourEventProcess for Behav impl NetworkBehaviourEventProcess for Behaviour { fn inject_event(&mut self, out: KademliaOut) { match out { - KademliaOut::Discovered { peer_id, addresses, ty } => { - self.custom_protocols.add_discovered_addrs( - &peer_id, - addresses.into_iter().map(|addr| (addr, ty == KadConnectionType::Connected)) - ); + KademliaOut::Discovered { .. } => {} + KademliaOut::KBucketAdded { peer_id, .. } => { + self.custom_protocols.add_discovered_node(&peer_id); } KademliaOut::FindNodeResult { key, closer_peers } => { - trace!(target: "sub-libp2p", "Kademlia query for {:?} yielded {:?} results", + trace!(target: "sub-libp2p", "Libp2p => Query for {:?} yielded {:?} results", key, closer_peers.len()); if closer_peers.is_empty() { - warn!(target: "sub-libp2p", "Kademlia random query has yielded empty results"); + warn!(target: "sub-libp2p", "Libp2p => Random Kademlia query has yielded empty \ + results"); } } // We never start any GET_PROVIDERS query. @@ -343,6 +291,9 @@ impl Behaviour { /// Implementation of `NetworkBehaviour` that discovers the nodes on the network. pub struct DiscoveryBehaviour { + /// User-defined list of nodes and their addresses. Typically includes bootstrap nodes and + /// reserved nodes. + user_defined: Vec<(PeerId, Multiaddr)>, /// Kademlia requests and answers. kademlia: Kademlia, /// Stream that fires when we need to perform the next random Kademlia query. @@ -351,16 +302,6 @@ pub struct DiscoveryBehaviour { duration_to_next_kad: Duration, } -impl DiscoveryBehaviour { - fn new(local_peer_id: PeerId) -> Self { - DiscoveryBehaviour { - kademlia: Kademlia::without_init(local_peer_id), - next_kad_random_query: Delay::new(Instant::now()), - duration_to_next_kad: Duration::from_secs(1), - } - } -} - impl NetworkBehaviour for DiscoveryBehaviour where TSubstream: AsyncRead + AsyncWrite, @@ -373,7 +314,21 @@ where } fn addresses_of_peer(&mut self, peer_id: &PeerId) -> Vec { - self.kademlia.addresses_of_peer(peer_id) + let mut list = self.user_defined.iter() + .filter_map(|(p, a)| if p == peer_id { Some(a.clone()) } else { None }) + .collect::>(); + list.extend(self.kademlia.addresses_of_peer(peer_id)); + trace!(target: "sub-libp2p", "Addresses of {:?} are {:?}", peer_id, list); + if list.is_empty() { + if self.kademlia.kbuckets_entries().any(|p| p == peer_id) { + debug!(target: "sub-libp2p", "Requested dialing to {:?} (peer in k-buckets), \ + and no address was found", peer_id); + } else { + debug!(target: "sub-libp2p", "Requested dialing to {:?} (peer not in k-buckets), \ + and no address was found", peer_id); + } + } + list } fn inject_connected(&mut self, peer_id: PeerId, endpoint: ConnectedPoint) { @@ -417,8 +372,8 @@ where Ok(Async::NotReady) => break, Ok(Async::Ready(_)) => { let random_peer_id = PeerId::random(); - debug!(target: "sub-libp2p", "Starting random Kademlia request for {:?}", - random_peer_id); + debug!(target: "sub-libp2p", "Libp2p <= Starting random Kademlia request for \ + {:?}", random_peer_id); self.kademlia.find_node(random_peer_id); // Reset the `Delay` to the next random. @@ -427,7 +382,7 @@ where Duration::from_secs(60)); }, Err(err) => { - warn!(target: "sub-libp2p", "Kad query timer errored: {:?}", err); + warn!(target: "sub-libp2p", "Kademlia query timer errored: {:?}", err); break } } diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index c8b931e4fb..7893501df5 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -15,71 +15,121 @@ // along with Substrate. If not, see . use crate::custom_proto::handler::{CustomProtoHandlerProto, CustomProtoHandlerOut, CustomProtoHandlerIn}; -use crate::custom_proto::topology::NetTopology; use crate::custom_proto::upgrade::{CustomMessage, RegisteredProtocol}; -use crate::{NetworkConfiguration, NonReservedPeerMode}; -use crate::parse_str_addr; -use fnv::{FnvHashMap, FnvHashSet}; +use fnv::FnvHashMap; use futures::prelude::*; use libp2p::core::swarm::{ConnectedPoint, NetworkBehaviour, NetworkBehaviourAction, PollParameters}; -use libp2p::core::{Endpoint, Multiaddr, PeerId}; -use log::{debug, trace, warn}; +use libp2p::core::{Multiaddr, PeerId}; +use log::{debug, error, trace, warn}; use smallvec::SmallVec; -use std::{cmp, error, io, marker::PhantomData, path::Path, time::Duration, time::Instant}; +use std::{collections::hash_map::Entry, cmp, error, io, marker::PhantomData, mem, time::Duration, time::Instant}; use tokio_io::{AsyncRead, AsyncWrite}; -use tokio_timer::Delay; - -// File where the network topology is stored. -const NODES_FILE: &str = "nodes.json"; -// Duration during which a peer is disabled. -const PEER_DISABLE_DURATION: Duration = Duration::from_secs(5 * 60); /// Network behaviour that handles opening substreams for custom protocols with other nodes. pub struct CustomProto { /// List of protocols to open with peers. Never modified. protocol: RegisteredProtocol, - /// Topology of the network. - topology: NetTopology, + /// Receiver for instructions about who to connect to or disconnect from. + peerset: substrate_peerset::PeersetMut, - /// List of peers for which the custom protocol is open. - opened_peers: FnvHashSet, + /// List of peers in our state. + peers: FnvHashMap, - /// List of peer handlers that were enabled. - /// - /// Note that it is possible for a peer to be in the shutdown process, in which case it will - /// not be in this list but will be present in `opened_peers`. - /// It is also possible that we have *just* enabled a peer, in which case it will be in this - /// list but not in `opened_peers`. - enabled_peers: FnvHashSet, + /// List of incoming messages we have sent to the peer set manager and that are waiting for an + /// answer. + incoming: SmallVec<[IncomingPeer; 6]>, - /// Maximum number of incoming non-reserved connections, taken from the config. Never modified. - max_incoming_connections: usize, + /// We generate indices to identify incoming connections. This is the next value for the index + /// to use when a connection is incoming. + next_incoming_index: substrate_peerset::IncomingIndex, - /// Maximum number of outgoing non-reserved connections, taken from the config. Never modified. - max_outgoing_connections: usize, + /// Events to produce from `poll()`. + events: SmallVec<[NetworkBehaviourAction, CustomProtoOut>; 4]>, - /// If true, only reserved peers can connect. - reserved_only: bool, + /// Marker to pin the generics. + marker: PhantomData, +} - /// List of the IDs of the peers we are connected to, and whether we're dialing or listening. - connected_peers: FnvHashMap, +/// State of a peer we're connected to. +#[derive(Debug)] +enum PeerState { + /// State is poisoned. This is a temporary state for a peer and we should always switch back + /// to it later. If it is found in the wild, that means there was either a panic or a bug in + /// the state machine code. + Poisoned, + + /// The peer misbehaved. If the PSM wants us to connect to this node, we will add an artificial + /// delay to the connection. + Banned { + /// Until when the node is banned. + until: Instant, + }, - /// List of the IDs of the reserved peers. We always try to maintain a connection these peers. - reserved_peers: FnvHashSet, + /// The peerset requested that we connect to this peer. We are not connected to this node. + PendingRequest { + /// When to actually start dialing. + timer: tokio_timer::Delay, + }, - /// List of the IDs of peers that are forbidden, and the moment their ban expires. - banned_peers: Vec<(PeerId, Instant)>, + /// The peerset requested that we connect to this peer. We are currently dialing this peer. + Requested, + + /// We are connected to this peer but the peerset refused it. This peer can still perform + /// Kademlia queries and such, but should get disconnected in a few seconds. + Disabled { + /// How we are connected to this peer. + connected_point: ConnectedPoint, + /// If true, we still have a custom protocol open with it. It will likely get closed in + /// a short amount of time, but we need to keep the information in order to not have a + /// state mismatch. + open: bool, + /// If `Some`, the node is banned until the given `Instant`. + banned_until: Option, + }, - /// When this delay expires, we need to synchronize our active connections with the - /// network topology. - next_connect_to_nodes: Delay, + /// We are connected to this peer but we are not opening any Substrate substream. The handler + /// will be enabled when `timer` fires. This peer can still perform Kademlia queries and such, + /// but should get disconnected in a few seconds. + DisabledPendingEnable { + /// How we are connected to this peer. + connected_point: ConnectedPoint, + /// If true, we still have a custom protocol open with it. It will likely get closed in + /// a short amount of time, but we need to keep the information in order to not have a + /// state mismatch. + open: bool, + /// When to enable this remote. + timer: tokio_timer::Delay, + }, - /// Events to produce from `poll()`. - events: SmallVec<[NetworkBehaviourAction, CustomProtoOut>; 4]>, + /// We are connected to this peer and the peerset has accepted it. The handler is in the + /// enabled state. + Enabled { + /// How we are connected to this peer. + connected_point: ConnectedPoint, + /// If true, we have a custom protocol open with this peer. + open: bool, + }, - /// Marker to pin the generics. - marker: PhantomData, + /// We are connected to this peer, and we sent an incoming message to the peerset. The handler + /// is in initialization mode. We are waiting for the Accept or Reject from the peerset. There + /// is a corresponding entry in `incoming`. + Incoming { + /// How we are connected to this peer. + connected_point: ConnectedPoint, + }, +} + +/// State of an "incoming" message sent to the peer set manager. +#[derive(Debug)] +struct IncomingPeer { + /// Id of the node that is concerned. + peer_id: PeerId, + /// If true, this "incoming" still corresponds to an actual connection. If false, then the + /// connection corresponding to it has been closed or replaced already. + alive: bool, + /// Id that the we sent to the peerset. + incoming_id: substrate_peerset::IncomingIndex, } /// Event that can be emitted by the `CustomProto`. @@ -122,164 +172,123 @@ pub enum CustomProtoOut { } impl CustomProto { - /// Creates a `CustomProto`. - pub fn new(config: &NetworkConfiguration, local_peer_id: &PeerId, protocol: RegisteredProtocol) -> Self { - // Initialize the topology of the network. - let mut topology = if let Some(ref path) = config.net_config_path { - let path = Path::new(path).join(NODES_FILE); - debug!(target: "sub-libp2p", "Initializing peer store for JSON file {:?}", path); - NetTopology::from_file(local_peer_id.clone(), path) - } else { - debug!(target: "sub-libp2p", "No peers file configured ; peers won't be saved"); - NetTopology::memory(local_peer_id.clone()) - }; - - // Add the bootstrap nodes to the topology. - for bootnode in config.boot_nodes.iter() { - if let Ok((peer_id, addr)) = parse_str_addr(bootnode) { - topology.add_bootstrap_addr(&peer_id, addr.clone()); - } - } - - let max_incoming_connections = config.in_peers as usize; - let max_outgoing_connections = config.out_peers as usize; - - // Expected maximum number of connections. - let connec_cap = max_incoming_connections - .saturating_add(max_outgoing_connections) - .saturating_add(4); // We add an arbitrary number for reserved peers slots - + /// Creates a `CustomProtos`. + pub fn new( + protocol: RegisteredProtocol, + peerset: substrate_peerset::PeersetMut, + ) -> Self { CustomProto { protocol, - topology, - max_incoming_connections, - max_outgoing_connections, - reserved_only: config.non_reserved_mode == NonReservedPeerMode::Deny, - connected_peers: Default::default(), - reserved_peers: Default::default(), - banned_peers: Vec::new(), - opened_peers: FnvHashSet::with_capacity_and_hasher(connec_cap, Default::default()), - enabled_peers: FnvHashSet::with_capacity_and_hasher(connec_cap, Default::default()), - next_connect_to_nodes: Delay::new(Instant::now()), + peerset, + peers: FnvHashMap::default(), + incoming: SmallVec::new(), + next_incoming_index: substrate_peerset::IncomingIndex(0), events: SmallVec::new(), marker: PhantomData, } } - /// Returns the list of reserved nodes. - pub fn reserved_peers(&self) -> impl Iterator { - self.reserved_peers.iter() - } - - /// Adds a reserved peer. - pub fn add_reserved_peer(&mut self, peer_id: PeerId, addr: Multiaddr) { - self.topology.add_bootstrap_addr(&peer_id, addr); - self.reserved_peers.insert(peer_id); - - // Trigger a `connect_to_nodes` round. - self.next_connect_to_nodes = Delay::new(Instant::now()); - } - - /// Removes a reserved peer. - /// - /// If we are in reserved mode and we were connected to a node with this peer ID, then this - /// method will disconnect it and return its index. - pub fn remove_reserved_peer(&mut self, peer_id: PeerId) { - self.reserved_peers.remove(&peer_id); - } - - /// Returns true if we only accept reserved nodes. - pub fn is_reserved_only(&self) -> bool { - self.reserved_only - } - - /// Start accepting all peers again if we weren't. - pub fn accept_unreserved_peers(&mut self) { - if !self.reserved_only { - return - } - - self.reserved_only = false; - // Trigger a `connect_to_nodes` round. - self.next_connect_to_nodes = Delay::new(Instant::now()); - } - - /// Start refusing non-reserved nodes. - pub fn deny_unreserved_peers(&mut self) { - if self.reserved_only { - return - } - - self.reserved_only = true; - - // Disconnecting nodes that are connected to us and that aren't reserved - let reserved_peers = &mut self.reserved_peers; - let events = &mut self.events; - self.enabled_peers.retain(move |peer_id| { - if reserved_peers.contains(peer_id) { - return true - } - events.push(NetworkBehaviourAction::SendEvent { - peer_id: peer_id.clone(), - event: CustomProtoHandlerIn::Disable, - }); - false - }) - } - /// Disconnects the given peer if we are connected to it. - pub fn disconnect_peer(&mut self, peer: &PeerId) { - if self.reserved_peers.contains(peer) { - warn!(target: "sub-libp2p", "Ignored attempt to disconnect reserved peer {:?}", peer); - return; - } - - if self.enabled_peers.remove(peer) { - self.events.push(NetworkBehaviourAction::SendEvent { - peer_id: peer.clone(), - event: CustomProtoHandlerIn::Disable, - }); - } + pub fn disconnect_peer(&mut self, peer_id: &PeerId) { + debug!(target: "sub-libp2p", "Disconnecting {:?} by request from the external API", peer_id); + self.disconnect_peer_inner(peer_id, None); } - /// Disconnects the given peer if we are connected to it and disables it for a little while. - pub fn ban_peer(&mut self, peer_id: PeerId) { - if self.reserved_peers.contains(&peer_id) { - warn!(target: "sub-libp2p", "Ignored attempt to ban reserved peer {:?}", peer_id); - return; - } + /// Inner implementation of `disconnect_peer`. If `ban` is `Some`, we ban the node for the + /// specific duration. + fn disconnect_peer_inner(&mut self, peer_id: &PeerId, ban: Option) { + let mut entry = if let Entry::Occupied(entry) = self.peers.entry(peer_id.clone()) { + entry + } else { + return + }; - // Peer is already banned - if let Some(pos) = self.banned_peers.iter().position(|(p, _)| p == &peer_id) { - if self.banned_peers[pos].1 > Instant::now() { - return - } else { - self.banned_peers.remove(pos); - } - } + match mem::replace(entry.get_mut(), PeerState::Poisoned) { + // We're not connected anyway. + st @ PeerState::Disabled { .. } => *entry.into_mut() = st, + st @ PeerState::Requested => *entry.into_mut() = st, + st @ PeerState::PendingRequest { .. } => *entry.into_mut() = st, + st @ PeerState::Banned { .. } => *entry.into_mut() = st, + + // DisabledPendingEnable => Disabled. + PeerState::DisabledPendingEnable { open, connected_point, timer } => { + debug!(target: "sub-libp2p", "PSM <= Dropped({:?})", peer_id); + self.peerset.dropped(peer_id); + let banned_until = Some(if let Some(ban) = ban { + cmp::max(timer.deadline(), Instant::now() + ban) + } else { + timer.deadline() + }); + *entry.into_mut() = PeerState::Disabled { open, connected_point, banned_until } + }, + + // Enabled => Disabled. + PeerState::Enabled { open, connected_point } => { + debug!(target: "sub-libp2p", "PSM <= Dropped({:?})", peer_id); + self.peerset.dropped(peer_id); + debug!(target: "sub-libp2p", "Handler({:?}) <= Disable", peer_id); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: peer_id.clone(), + event: CustomProtoHandlerIn::Disable, + }); + let banned_until = ban.map(|dur| Instant::now() + dur); + *entry.into_mut() = PeerState::Disabled { open, connected_point, banned_until } + }, + + // Incoming => Disabled. + PeerState::Incoming { connected_point, .. } => { + let inc = if let Some(inc) = self.incoming.iter_mut() + .find(|i| i.peer_id == *entry.key() && i.alive) { + inc + } else { + error!(target: "sub-libp2p", "State mismatch in libp2p: no entry in \ + incoming for incoming peer"); + return + }; - self.banned_peers.push((peer_id.clone(), Instant::now() + PEER_DISABLE_DURATION)); - if self.enabled_peers.remove(&peer_id) { - self.events.push(NetworkBehaviourAction::SendEvent { - peer_id, - event: CustomProtoHandlerIn::Disable, - }); + inc.alive = false; + debug!(target: "sub-libp2p", "Handler({:?}) <= Disable", peer_id); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: peer_id.clone(), + event: CustomProtoHandlerIn::Disable, + }); + let banned_until = ban.map(|dur| Instant::now() + dur); + *entry.into_mut() = PeerState::Disabled { open: false, connected_point, banned_until } + }, + + PeerState::Poisoned => + error!(target: "sub-libp2p", "State of {:?} is poisoned", peer_id), } } - /// Returns a list of all the peers that are banned, and until when. - pub fn banned_peers(&self) -> impl Iterator { - self.banned_peers.iter().map(|&(ref id, until)| (id, until)) - } - /// Returns true if we try to open protocols with the given peer. pub fn is_enabled(&self, peer_id: &PeerId) -> bool { - self.enabled_peers.contains(peer_id) + match self.peers.get(peer_id) { + None => false, + Some(PeerState::Disabled { .. }) => false, + Some(PeerState::DisabledPendingEnable { .. }) => false, + Some(PeerState::Enabled { .. }) => true, + Some(PeerState::Incoming { .. }) => false, + Some(PeerState::Requested) => false, + Some(PeerState::PendingRequest { .. }) => false, + Some(PeerState::Banned { .. }) => false, + Some(PeerState::Poisoned) => false, + } } /// Returns true if we have opened a protocol with the given peer. pub fn is_open(&self, peer_id: &PeerId) -> bool { - self.opened_peers.contains(peer_id) + match self.peers.get(peer_id) { + None => false, + Some(PeerState::Disabled { open, .. }) => *open, + Some(PeerState::DisabledPendingEnable { open, .. }) => *open, + Some(PeerState::Enabled { open, .. }) => *open, + Some(PeerState::Incoming { .. }) => false, + Some(PeerState::Requested) => false, + Some(PeerState::PendingRequest { .. }) => false, + Some(PeerState::Banned { .. }) => false, + Some(PeerState::Poisoned) => false, + } } /// Sends a message to a peer. @@ -289,6 +298,11 @@ impl CustomProto { /// Also note that even we have a valid open substream, it may in fact be already closed /// without us knowing, in which case the packet will not be received. pub fn send_packet(&mut self, target: &PeerId, message: TMessage) { + if !self.is_open(target) { + return; + } + + trace!(target: "sub-libp2p", "Handler({:?}) <= Packet", target); self.events.push(NetworkBehaviourAction::SendEvent { peer_id: target.clone(), event: CustomProtoHandlerIn::SendCustomMessage { @@ -297,134 +311,235 @@ impl CustomProto { }); } - /// Indicates to the topology that we have discovered new addresses for a given node. - pub fn add_discovered_addrs( - &mut self, - peer_id: &PeerId, - addrs: I, - ) where I: Iterator { - if self.topology.add_discovered_addrs(peer_id, addrs) { - // Trigger a `connect_to_nodes` round. - self.next_connect_to_nodes = Delay::new(Instant::now()); - } + /// Indicates to the peerset that we have discovered new addresses for a given node. + pub fn add_discovered_node(&mut self, peer_id: &PeerId) { + debug!(target: "sub-libp2p", "PSM <= Discovered({:?})", peer_id); + self.peerset.discovered(peer_id.clone()) } - /// Returns the number of peers in the topology. - pub fn num_topology_peers(&self) -> usize { - self.topology.num_peers() - } + /// Function that is called when the peerset wants us to connect to a node. + fn peerset_report_connect(&mut self, peer_id: PeerId) { + let mut occ_entry = match self.peers.entry(peer_id) { + Entry::Occupied(entry) => entry, + Entry::Vacant(entry) => { + // If there's no entry in `self.peers`, start dialing. + debug!(target: "sub-libp2p", "PSM => Connect({:?}): Starting to connect", entry.key()); + debug!(target: "sub-libp2p", "Libp2p <= Dial {:?}", entry.key()); + self.events.push(NetworkBehaviourAction::DialPeer { peer_id: entry.key().clone() }); + entry.insert(PeerState::Requested); + return; + } + }; - /// Flushes the topology to the disk. - pub fn flush_topology(&mut self) -> Result<(), io::Error> { - self.topology.flush_to_disk() + match mem::replace(occ_entry.get_mut(), PeerState::Poisoned) { + PeerState::Banned { until } => { + debug!(target: "sub-libp2p", "PSM => Connect({:?}): Will start to connect at \ + until {:?}", occ_entry.key(), until); + *occ_entry.into_mut() = PeerState::PendingRequest { + timer: tokio_timer::Delay::new(until), + }; + }, + + PeerState::Disabled { open, connected_point, banned_until: None } => { + debug!(target: "sub-libp2p", "PSM => Connect({:?}): Enabling previously-idle \ + connection through {:?}", occ_entry.key(), connected_point); + debug!(target: "sub-libp2p", "Handler({:?}) <= Enable", occ_entry.key()); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: occ_entry.key().clone(), + event: CustomProtoHandlerIn::Enable(connected_point.clone().into()), + }); + *occ_entry.into_mut() = PeerState::Enabled { connected_point, open }; + }, + + PeerState::Disabled { open, connected_point, banned_until: Some(banned) } => { + debug!(target: "sub-libp2p", "PSM => Connect({:?}): Has idle connection through \ + {:?} but node is banned until {:?}", occ_entry.key(), connected_point, banned); + *occ_entry.into_mut() = PeerState::DisabledPendingEnable { + connected_point, + open, + timer: tokio_timer::Delay::new(banned), + }; + }, + + PeerState::Incoming { connected_point, .. } => { + debug!(target: "sub-libp2p", "PSM => Connect({:?}): Enabling incoming \ + connection through {:?}", occ_entry.key(), connected_point); + if let Some(inc) = self.incoming.iter_mut() + .find(|i| i.peer_id == *occ_entry.key() && i.alive) { + inc.alive = false; + } else { + error!(target: "sub-libp2p", "State mismatch in libp2p: no entry in \ + incoming for incoming peer") + } + debug!(target: "sub-libp2p", "Handler({:?}) <= Enable", occ_entry.key()); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: occ_entry.key().clone(), + event: CustomProtoHandlerIn::Enable(connected_point.clone().into()), + }); + *occ_entry.into_mut() = PeerState::Enabled { connected_point, open: false }; + }, + + st @ PeerState::Enabled { .. } => { + warn!(target: "sub-libp2p", "PSM => Connect({:?}): Already connected to this \ + peer", occ_entry.key()); + *occ_entry.into_mut() = st; + }, + st @ PeerState::DisabledPendingEnable { .. } => { + warn!(target: "sub-libp2p", "PSM => Connect({:?}): Already have an idle \ + connection to this peer and waiting to enable it", occ_entry.key()); + *occ_entry.into_mut() = st; + }, + st @ PeerState::Requested { .. } | st @ PeerState::PendingRequest { .. } => { + warn!(target: "sub-libp2p", "PSM => Connect({:?}): Received a previous \ + request for that peer", occ_entry.key()); + *occ_entry.into_mut() = st; + }, + + PeerState::Poisoned => + error!(target: "sub-libp2p", "State of {:?} is poisoned", occ_entry.key()), + } } - /// Perform a cleanup pass, removing all obsolete addresses and peers. - /// - /// This should be done from time to time. - pub fn cleanup(&mut self) { - self.topology.cleanup(); - } + /// Function that is called when the peerset wants us to disconnect from a node. + fn peerset_report_disconnect(&mut self, peer_id: PeerId) { + let mut entry = match self.peers.entry(peer_id) { + Entry::Occupied(entry) => entry, + Entry::Vacant(entry) => { + debug!(target: "sub-libp2p", "PSM => Drop({:?}): Node already disabled", entry.key()); + return + } + }; - /// Returns the list of peers in the topology. - pub fn known_peers(&self) -> impl Iterator { - self.topology.known_peers() + match mem::replace(entry.get_mut(), PeerState::Poisoned) { + st @ PeerState::Disabled { .. } | st @ PeerState::Banned { .. } => { + debug!(target: "sub-libp2p", "PSM => Drop({:?}): Node already disabled", entry.key()); + *entry.into_mut() = st; + }, + + PeerState::DisabledPendingEnable { open, connected_point, timer } => { + debug!(target: "sub-libp2p", "PSM => Drop({:?}): Interrupting pending \ + enable", entry.key()); + *entry.into_mut() = PeerState::Disabled { + open, + connected_point, + banned_until: Some(timer.deadline()), + }; + }, + + PeerState::Enabled { open, connected_point } => { + debug!(target: "sub-libp2p", "PSM => Drop({:?}): Disabling connection", entry.key()); + debug!(target: "sub-libp2p", "Handler({:?}) <= Disable", entry.key()); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: entry.key().clone(), + event: CustomProtoHandlerIn::Disable, + }); + *entry.into_mut() = PeerState::Disabled { open, connected_point, banned_until: None } + }, + st @ PeerState::Incoming { .. } => { + error!(target: "sub-libp2p", "PSM => Drop({:?}): Was in incoming mode", + entry.key()); + *entry.into_mut() = st; + }, + PeerState::Requested => { + // We don't cancel dialing. Libp2p doesn't expose that on purpose, as other + // sub-systems (such as the discovery mechanism) may require dialing this node as + // well at the same time. + debug!(target: "sub-libp2p", "PSM => Drop({:?}): Was not yet connected", entry.key()); + entry.remove(); + }, + PeerState::PendingRequest { timer } => { + debug!(target: "sub-libp2p", "PSM => Drop({:?}): Was not yet connected", entry.key()); + *entry.into_mut() = PeerState::Banned { until: timer.deadline() } + }, + + PeerState::Poisoned => + error!(target: "sub-libp2p", "State of {:?} is poisoned", entry.key()), + } } - /// Returns a list of addresses known for this peer, and their reputation score. - pub fn known_addresses(&mut self, peer_id: &PeerId) -> impl Iterator { - self.topology.addresses_of_peer(peer_id, true) - } + /// Function that is called when the peerset wants us to accept an incoming node. + fn peerset_report_accept(&mut self, index: substrate_peerset::IncomingIndex) { + let incoming = if let Some(pos) = self.incoming.iter().position(|i| i.incoming_id == index) { + self.incoming.remove(pos) + } else { + error!(target: "sub-libp2p", "PSM => Accept({:?}): Invalid index", index); + return + }; - /// Updates the attempted connections to nodes. - /// - /// Also updates `next_connect_to_nodes` with the earliest known moment when we need to - /// update connections again. - fn connect_to_nodes(&mut self, params: &mut PollParameters) { - // Value of `Instant::now()` grabbed once at the beginning. - let now = Instant::now(); - - // Make sure we are connected or connecting to all the reserved nodes. - for reserved in self.reserved_peers.iter() { - // TODO: don't generate an event if we're already in a pending connection (https://github.com/libp2p/rust-libp2p/issues/697) - if !self.enabled_peers.contains(&reserved) { - self.events.push(NetworkBehaviourAction::DialPeer { peer_id: reserved.clone() }); - } + if !incoming.alive { + debug!(target: "sub-libp2p", "PSM => Accept({:?}, {:?}): Obsolete incoming, + sending back dropped", index, incoming.peer_id); + debug!(target: "sub-libp2p", "PSM <= Dropped({:?})", incoming.peer_id); + self.peerset.dropped(&incoming.peer_id); + return } - // We're done with reserved node; return early if there's nothing more to do. - if self.reserved_only { - // We set a timeout to 60 seconds for trying to connect again, however in practice - // a round will happen as soon as we fail to dial, disconnect from a node, allow - // unreserved nodes, and so on. - self.next_connect_to_nodes.reset(now + Duration::from_secs(60)); + let state = if let Some(state) = self.peers.get_mut(&incoming.peer_id) { + state + } else { + error!(target: "sub-libp2p", "State mismatch in libp2p: no entry in peers \ + corresponding to an alive incoming"); return - } + }; - // Counter of number of connections to open, decreased when we open one. - let mut num_to_open = { - let num_outgoing_connections = self.enabled_peers - .iter() - .filter(|p| self.connected_peers.get(p).map(|c| c.is_dialer()).unwrap_or(false)) - .filter(|p| !self.reserved_peers.contains(p)) - .count(); - self.max_outgoing_connections - num_outgoing_connections + let connected_point = if let PeerState::Incoming { connected_point } = state { + connected_point.clone() + } else { + error!(target: "sub-libp2p", "State mismatch in libp2p: entry in peers corresponding \ + to an alive incoming is not in incoming state"); + return }; - trace!(target: "sub-libp2p", "Connect-to-nodes round; attempting to fill {:?} slots", - num_to_open); - // We first try to enable existing connections. - for peer_id in self.connected_peers.keys() { - if num_to_open == 0 { - break - } + debug!(target: "sub-libp2p", "PSM => Accept({:?}, {:?}): Enabling connection \ + through {:?}", index, incoming.peer_id, connected_point); + debug!(target: "sub-libp2p", "Handler({:?}) <= Enable", incoming.peer_id); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: incoming.peer_id, + event: CustomProtoHandlerIn::Enable(connected_point.clone().into()), + }); - if self.enabled_peers.contains(peer_id) { - continue; - } + *state = PeerState::Enabled { open: false, connected_point }; + } - if let Some((_, expire)) = self.banned_peers.iter().find(|(p, _)| p == peer_id) { - if *expire >= now { - continue; - } - } + /// Function that is called when the peerset wants us to reject an incoming node. + fn peerset_report_reject(&mut self, index: substrate_peerset::IncomingIndex) { + let incoming = if let Some(pos) = self.incoming.iter().position(|i| i.incoming_id == index) { + self.incoming.remove(pos) + } else { + error!(target: "sub-libp2p", "PSM => Reject({:?}): Invalid index", index); + return + }; - trace!(target: "sub-libp2p", "Enabling custom protocols with {:?} (active)", peer_id); - num_to_open -= 1; - self.events.push(NetworkBehaviourAction::SendEvent { - peer_id: peer_id.clone(), - event: CustomProtoHandlerIn::Enable(Endpoint::Dialer), - }); + if !incoming.alive { + error!(target: "sub-libp2p", "PSM => Reject({:?}, {:?}): Obsolete incoming, \ + ignoring", index, incoming.peer_id); + return } - // Then, try to open new connections. - let local_peer_id = params.local_peer_id().clone(); - let (to_try, will_change) = self.topology.addrs_to_attempt(); - for (peer_id, _) in to_try { - if num_to_open == 0 { - break - } - - if peer_id == &local_peer_id { - continue - } - - if self.connected_peers.contains_key(&peer_id) { - continue - } - - if let Some((_, ban_end)) = self.banned_peers.iter().find(|(p, _)| p == peer_id) { - if *ban_end > now { - continue - } - } + let state = if let Some(state) = self.peers.get_mut(&incoming.peer_id) { + state + } else { + error!(target: "sub-libp2p", "State mismatch in libp2p: no entry in peers \ + corresponding to an alive incoming"); + return + }; - num_to_open -= 1; - self.events.push(NetworkBehaviourAction::DialPeer { peer_id: peer_id.clone() }); - } + let connected_point = if let PeerState::Incoming { connected_point } = state { + connected_point.clone() + } else { + error!(target: "sub-libp2p", "State mismatch in libp2p: entry in peers corresponding \ + to an alive incoming is not in incoming state"); + return + }; - // Next round is when we expect the topology will change. - self.next_connect_to_nodes.reset(cmp::min(will_change, now + Duration::from_secs(60))); + debug!(target: "sub-libp2p", "PSM => Reject({:?}, {:?}): Rejecting connection through \ + {:?}", index, incoming.peer_id, connected_point); + debug!(target: "sub-libp2p", "Handler({:?}) <= Disable", incoming.peer_id); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: incoming.peer_id, + event: CustomProtoHandlerIn::Disable, + }); + *state = PeerState::Disabled { open: false, connected_point, banned_until: None }; } } @@ -440,135 +555,199 @@ where CustomProtoHandlerProto::new(self.protocol.clone()) } - fn addresses_of_peer(&mut self, peer_id: &PeerId) -> Vec { - self.topology.addresses_of_peer(peer_id, false).map(|(a, _)| a.clone()).collect() + fn addresses_of_peer(&mut self, _: &PeerId) -> Vec { + Vec::new() } - fn inject_connected(&mut self, peer_id: PeerId, endpoint: ConnectedPoint) { - // When a peer connects, its handler is initially in the disabled state. We make sure that - // the peer is allowed, and if so we put it in the enabled state. - - self.connected_peers.insert(peer_id.clone(), endpoint.clone()); + fn inject_connected(&mut self, peer_id: PeerId, connected_point: ConnectedPoint) { + match (self.peers.entry(peer_id), connected_point) { + (Entry::Occupied(mut entry), connected_point) => { + match mem::replace(entry.get_mut(), PeerState::Poisoned) { + PeerState::Requested => { + debug!(target: "sub-libp2p", "Libp2p => Connected({:?}): Connection \ + requested by PSM (through {:?})", entry.key(), connected_point); + debug!(target: "sub-libp2p", "Handler({:?}) <= Enable", entry.key()); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: entry.key().clone(), + event: CustomProtoHandlerIn::Enable(connected_point.clone().into()), + }); + *entry.into_mut() = PeerState::Enabled { open: false, connected_point }; + } + PeerState::PendingRequest { timer } => { + debug!(target: "sub-libp2p", "Libp2p => Connected({:?}): Connection \ + requested by PSM (through {:?}) but node is banned", entry.key(), + connected_point); + debug!(target: "sub-libp2p", "Handler({:?}) <= Disable", entry.key()); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: entry.key().clone(), + event: CustomProtoHandlerIn::Disable, + }); + *entry.into_mut() = PeerState::DisabledPendingEnable { + open: false, + connected_point, + timer, + }; + } + st @ _ => { + // This is a serious bug either in this state machine or in libp2p. + error!(target: "sub-libp2p", "Received inject_connected for \ + already-connected node"); + *entry.into_mut() = st; + return + } + } + } - let is_reserved = self.reserved_peers.contains(&peer_id); - if self.reserved_only && !is_reserved { - debug!(target: "sub-libp2p", "Ignoring {:?} because we're in reserved mode", peer_id); - self.events.push(NetworkBehaviourAction::SendEvent { - peer_id: peer_id.clone(), - event: CustomProtoHandlerIn::Disable, - }); - return - } + (Entry::Vacant(entry), connected_point @ ConnectedPoint::Listener { .. }) => { + let incoming_id = self.next_incoming_index.clone(); + self.next_incoming_index.0 = match self.next_incoming_index.0.checked_add(1) { + Some(v) => v, + None => { + error!(target: "sub-libp2p", "Overflow in next_incoming_index"); + return + } + }; + debug!(target: "sub-libp2p", "Libp2p => Connected({:?}): Incoming connection", + entry.key()); + debug!(target: "sub-libp2p", "PSM <= Incoming({:?}, {:?}): Through {:?}", + incoming_id, entry.key(), connected_point); + self.peerset.incoming(entry.key().clone(), incoming_id); + self.incoming.push(IncomingPeer { + peer_id: entry.key().clone(), + alive: true, + incoming_id, + }); + entry.insert(PeerState::Incoming { connected_point }); + } - // Check whether peer is banned. - if !is_reserved { - if let Some((_, expire)) = self.banned_peers.iter().find(|(p, _)| p == &peer_id) { - if *expire >= Instant::now() { - debug!(target: "sub-libp2p", "Ignoring banned peer {:?}", peer_id); - self.events.push(NetworkBehaviourAction::SendEvent { - peer_id: peer_id.clone(), - event: CustomProtoHandlerIn::Disable, - }); - return - } + (Entry::Vacant(entry), connected_point) => { + debug!(target: "sub-libp2p", "Libp2p => Connected({:?}): Requested by something \ + else than PSM, disabling", entry.key()); + debug!(target: "sub-libp2p", "Handler({:?}) <= Disable", entry.key()); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: entry.key().clone(), + event: CustomProtoHandlerIn::Disable, + }); + entry.insert(PeerState::Disabled { open: false, connected_point, banned_until: None }); } } + } - // Check the limits on the ingoing and outgoing connections. - match endpoint { - ConnectedPoint::Dialer { .. } => { - let num_outgoing = self.enabled_peers.iter() - .filter(|p| self.connected_peers.get(p).map(|c| c.is_dialer()).unwrap_or(false)) - .filter(|p| !self.reserved_peers.contains(p)) - .count(); - - debug_assert!(num_outgoing <= self.max_outgoing_connections); - if num_outgoing == self.max_outgoing_connections { - self.events.push(NetworkBehaviourAction::SendEvent { + fn inject_disconnected(&mut self, peer_id: &PeerId, endpoint: ConnectedPoint) { + match self.peers.remove(peer_id) { + None | Some(PeerState::Requested) | Some(PeerState::PendingRequest { .. }) | + Some(PeerState::Banned { .. }) => + // This is a serious bug either in this state machine or in libp2p. + error!(target: "sub-libp2p", "Received inject_disconnected for non-connected \ + node {:?}", peer_id), + + Some(PeerState::Disabled { open, banned_until, .. }) => { + debug!(target: "sub-libp2p", "Libp2p => Disconnected({:?}): Was disabled \ + (through {:?})", peer_id, endpoint); + if let Some(until) = banned_until { + self.peers.insert(peer_id.clone(), PeerState::Banned { until }); + } + if open { + debug!(target: "sub-libp2p", "External API <= Closed({:?})", peer_id); + let event = CustomProtoOut::CustomProtocolClosed { peer_id: peer_id.clone(), - event: CustomProtoHandlerIn::Disable, - }); - return + result: Ok(()), + }; + + self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } } - ConnectedPoint::Listener { .. } => { - let num_ingoing = self.enabled_peers.iter() - .filter(|p| self.connected_peers.get(p).map(|c| c.is_listener()).unwrap_or(false)) - .filter(|p| !self.reserved_peers.contains(p)) - .count(); - - debug_assert!(num_ingoing <= self.max_incoming_connections); - if num_ingoing == self.max_incoming_connections { - debug!(target: "sub-libp2p", "Ignoring incoming connection from {:?} because \ - we're full", peer_id); - self.events.push(NetworkBehaviourAction::SendEvent { + + Some(PeerState::DisabledPendingEnable { open, timer, .. }) => { + debug!(target: "sub-libp2p", "Libp2p => Disconnected({:?}): Was disabled \ + (through {:?}) but pending enable", peer_id, endpoint); + debug!(target: "sub-libp2p", "PSM <= Dropped({:?})", peer_id); + self.peerset.dropped(peer_id); + self.peers.insert(peer_id.clone(), PeerState::Banned { until: timer.deadline() }); + if open { + debug!(target: "sub-libp2p", "External API <= Closed({:?})", peer_id); + let event = CustomProtoOut::CustomProtocolClosed { peer_id: peer_id.clone(), - event: CustomProtoHandlerIn::Disable, - }); - return + result: Ok(()), + }; + + self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } } - } - - // If everything is fine, enable the node. - debug_assert!(!self.enabled_peers.contains(&peer_id)); - // We ask the handler to actively open substreams only if we are the dialer; otherwise - // the two nodes will race to be the first to open the unique allowed substream. - if endpoint.is_dialer() { - trace!(target: "sub-libp2p", "Enabling custom protocols with {:?} (active)", peer_id); - self.events.push(NetworkBehaviourAction::SendEvent { - peer_id: peer_id.clone(), - event: CustomProtoHandlerIn::Enable(Endpoint::Dialer), - }); - } else { - trace!(target: "sub-libp2p", "Enabling custom protocols with {:?} (passive)", peer_id); - self.events.push(NetworkBehaviourAction::SendEvent { - peer_id: peer_id.clone(), - event: CustomProtoHandlerIn::Enable(Endpoint::Listener), - }); - } - self.topology.set_connected(&peer_id, &endpoint); - self.enabled_peers.insert(peer_id); - } + Some(PeerState::Enabled { open, .. }) => { + debug!(target: "sub-libp2p", "Libp2p => Disconnected({:?}): Was enabled \ + (through {:?})", peer_id, endpoint); + debug!(target: "sub-libp2p", "PSM <= Dropped({:?})", peer_id); + self.peerset.dropped(peer_id); - fn inject_disconnected(&mut self, peer_id: &PeerId, endpoint: ConnectedPoint) { - let was_connected = self.connected_peers.remove(&peer_id); - debug_assert!(was_connected.is_some()); + if open { + debug!(target: "sub-libp2p", "External API <= Closed({:?})", peer_id); + let event = CustomProtoOut::CustomProtocolClosed { + peer_id: peer_id.clone(), + result: Ok(()), + }; - self.topology.set_disconnected(peer_id, &endpoint); + self.events.push(NetworkBehaviourAction::GenerateEvent(event)); + } + } - if self.opened_peers.remove(&peer_id) { - let event = CustomProtoOut::CustomProtocolClosed { - peer_id: peer_id.clone(), - result: Ok(()), - }; + // In the incoming state, we don't report "Dropped". Instead we will just ignore the + // corresponding Accept/Reject. + Some(PeerState::Incoming { .. }) => { + if let Some(state) = self.incoming.iter_mut().find(|i| i.peer_id == *peer_id) { + debug!(target: "sub-libp2p", "Libp2p => Disconnected({:?}): Was in incoming \ + mode (id {:?}, through {:?})", peer_id, state.incoming_id, endpoint); + state.alive = false; + } else { + error!(target: "sub-libp2p", "State mismatch in libp2p: no entry in incoming \ + corresponding to an incoming state in peers") + } + } - self.events.push(NetworkBehaviourAction::GenerateEvent(event)); + Some(PeerState::Poisoned) => + error!(target: "sub-libp2p", "State of {:?} is poisoned", peer_id), } - - // Trigger a `connect_to_nodes` round. - self.next_connect_to_nodes = Delay::new(Instant::now()); - - self.enabled_peers.remove(peer_id); } - fn inject_dial_failure(&mut self, peer_id: Option<&PeerId>, addr: &Multiaddr, error: &dyn error::Error) { - if let Some(peer_id) = peer_id.as_ref() { - debug!(target: "sub-libp2p", "Failed to reach peer {:?} through {} => {:?}", peer_id, addr, error); - self.topology.set_unreachable(addr); + fn inject_addr_reach_failure(&mut self, peer_id: Option<&PeerId>, addr: &Multiaddr, error: &dyn error::Error) { + trace!(target: "sub-libp2p", "Libp2p => Reach failure for {:?} through {:?}: {:?}", peer_id, addr, error); + } - // Trigger a `connect_to_nodes` round. - self.next_connect_to_nodes = Delay::new(Instant::now()); + fn inject_dial_failure(&mut self, peer_id: &PeerId) { + if let Entry::Occupied(mut entry) = self.peers.entry(peer_id.clone()) { + match mem::replace(entry.get_mut(), PeerState::Poisoned) { + // The node is not in our list. + st @ PeerState::Banned { .. } => { + trace!(target: "sub-libp2p", "Libp2p => Dial failure for {:?}", peer_id); + *entry.into_mut() = st; + }, + + // "Basic" situation: we failed to reach a node that the peerset requested. + PeerState::Requested | PeerState::PendingRequest { .. } => { + debug!(target: "sub-libp2p", "Libp2p => Dial failure for {:?}", peer_id); + *entry.into_mut() = PeerState::Banned { + until: Instant::now() + Duration::from_secs(5) + }; + debug!(target: "sub-libp2p", "PSM <= Dropped({:?})", peer_id); + self.peerset.dropped(peer_id) + }, + + // We can still get dial failures even if we are already connected to the node, + // as an extra diagnostic for an earlier attempt. + st @ PeerState::Disabled { .. } | st @ PeerState::Enabled { .. } | + st @ PeerState::DisabledPendingEnable { .. } | st @ PeerState::Incoming { .. } => { + debug!(target: "sub-libp2p", "Libp2p => Dial failure for {:?}", peer_id); + *entry.into_mut() = st; + }, + + PeerState::Poisoned => + error!(target: "sub-libp2p", "State of {:?} is poisoned", peer_id), + } } else { - // This code path is only reached if `peer_id` is None, which means that we dialed an - // address without knowing the `PeerId` to expect. We don't currently do that, except - // in one situation: for convenience, we accept bootstrap node addresses in the format - // `IP:PORT`. - // There is no reason this trigger a `connect_to_nodes` round in that situation. - debug!(target: "sub-libp2p", "Failed to reach {} => {:?}", addr, error); - self.topology.set_unreachable(addr); + // The node is not in our list. + trace!(target: "sub-libp2p", "Libp2p => Dial failure for {:?}", peer_id); } } @@ -579,8 +758,18 @@ where ) { match event { CustomProtoHandlerOut::CustomProtocolClosed { result } => { - self.opened_peers.remove(&source); + debug!(target: "sub-libp2p", "Handler({:?}) => Closed({:?})", source, result); + match self.peers.get_mut(&source) { + Some(PeerState::Enabled { ref mut open, .. }) if *open => + *open = false, + Some(PeerState::Disabled { ref mut open, .. }) if *open => + *open = false, + Some(PeerState::DisabledPendingEnable { ref mut open, .. }) if *open => + *open = false, + _ => error!(target: "sub-libp2p", "State mismatch in the custom protos handler"), + } + debug!(target: "sub-libp2p", "External API <= Closed({:?})", source); let event = CustomProtoOut::CustomProtocolClosed { result, peer_id: source, @@ -588,12 +777,23 @@ where self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } + CustomProtoHandlerOut::CustomProtocolOpen { version } => { - debug_assert!(!self.is_open(&source)); - self.opened_peers.insert(source.clone()); + debug!(target: "sub-libp2p", "Handler({:?}) => Open: version {:?}", source, version); + let endpoint = match self.peers.get_mut(&source) { + Some(PeerState::Enabled { ref mut open, ref connected_point }) | + Some(PeerState::DisabledPendingEnable { ref mut open, ref connected_point, .. }) | + Some(PeerState::Disabled { ref mut open, ref connected_point, .. }) if !*open => { + *open = true; + connected_point.clone() + } + _ => { + error!(target: "sub-libp2p", "State mismatch in the custom protos handler"); + return + } + }; - let endpoint = self.connected_peers.get(&source) - .expect("We only receive events from connected nodes; QED").clone(); + debug!(target: "sub-libp2p", "External API <= Open({:?})", source); let event = CustomProtoOut::CustomProtocolOpen { version, peer_id: source, @@ -602,8 +802,11 @@ where self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } + CustomProtoHandlerOut::CustomMessage { message } => { debug_assert!(self.is_open(&source)); + trace!(target: "sub-libp2p", "Handler({:?}) => Message", source); + trace!(target: "sub-libp2p", "External API <= Message({:?})", source); let event = CustomProtoOut::CustomMessage { peer_id: source, message, @@ -611,8 +814,11 @@ where self.events.push(NetworkBehaviourAction::GenerateEvent(event)); } + CustomProtoHandlerOut::Clogged { messages } => { debug_assert!(self.is_open(&source)); + trace!(target: "sub-libp2p", "Handler({:?}) => Clogged", source); + trace!(target: "sub-libp2p", "External API <= Clogged({:?})", source); warn!(target: "sub-libp2p", "Queue of packets to send to {:?} is \ pretty large", source); self.events.push(NetworkBehaviourAction::GenerateEvent(CustomProtoOut::Clogged { @@ -620,43 +826,88 @@ where messages, })); } - CustomProtoHandlerOut::ProtocolError { error, is_severe } => { - if is_severe { - warn!(target: "sub-libp2p", "Network misbehaviour from {:?}: {:?}", - source, error); - self.ban_peer(source); - } else { - debug!(target: "sub-libp2p", "Network misbehaviour from {:?}: {:?}", - source, error); - self.disconnect_peer(&source); - } + + // Don't do anything for non-severe errors except report them. + CustomProtoHandlerOut::ProtocolError { is_severe, ref error } if !is_severe => { + debug!(target: "sub-libp2p", "Handler({:?}) => Benign protocol error: {:?}", + source, error) + } + + CustomProtoHandlerOut::ProtocolError { error, .. } => { + debug!(target: "sub-libp2p", "Handler({:?}) => Severe protocol error: {:?}", + source, error); + self.disconnect_peer_inner(&source, Some(Duration::from_secs(5))); } } } fn poll( &mut self, - params: &mut PollParameters, + _params: &mut PollParameters, ) -> Async< NetworkBehaviourAction< CustomProtoHandlerIn, Self::OutEvent, >, > { + // Poll for instructions from the peerset. + // Note that the peerset is a *best effort* crate, and we have to use defensive programming. loop { - match self.next_connect_to_nodes.poll() { - Ok(Async::Ready(())) => self.connect_to_nodes(params), + match self.peerset.poll() { + Ok(Async::Ready(Some(substrate_peerset::Message::Accept(index)))) => { + self.peerset_report_accept(index); + } + Ok(Async::Ready(Some(substrate_peerset::Message::Reject(index)))) => { + self.peerset_report_reject(index); + } + Ok(Async::Ready(Some(substrate_peerset::Message::Connect(id)))) => { + self.peerset_report_connect(id); + } + Ok(Async::Ready(Some(substrate_peerset::Message::Drop(id)))) => { + self.peerset_report_disconnect(id); + } + Ok(Async::Ready(None)) => { + error!(target: "sub-libp2p", "Peerset receiver stream has returned None"); + break; + } Ok(Async::NotReady) => break, Err(err) => { - warn!(target: "sub-libp2p", "Connect-to-nodes timer errored: {:?}", err); + error!(target: "sub-libp2p", "Peerset receiver stream has errored: {:?}", err); break } } } - // Clean up `banned_peers` - self.banned_peers.retain(|(_, end)| *end > Instant::now()); - self.banned_peers.shrink_to_fit(); + for (peer_id, peer_state) in self.peers.iter_mut() { + match mem::replace(peer_state, PeerState::Poisoned) { + PeerState::PendingRequest { mut timer } => { + if let Ok(Async::NotReady) = timer.poll() { + *peer_state = PeerState::PendingRequest { timer }; + continue; + } + + debug!(target: "sub-libp2p", "Libp2p <= Dial {:?} now that ban has expired", peer_id); + self.events.push(NetworkBehaviourAction::DialPeer { peer_id: peer_id.clone() }); + *peer_state = PeerState::Requested; + } + + PeerState::DisabledPendingEnable { mut timer, connected_point, open } => { + if let Ok(Async::NotReady) = timer.poll() { + *peer_state = PeerState::DisabledPendingEnable { timer, connected_point, open }; + continue; + } + + debug!(target: "sub-libp2p", "Handler({:?}) <= Enable now that ban has expired", peer_id); + self.events.push(NetworkBehaviourAction::SendEvent { + peer_id: peer_id.clone(), + event: CustomProtoHandlerIn::Enable(connected_point.clone().into()), + }); + *peer_state = PeerState::Enabled { connected_point, open }; + } + + st @ _ => *peer_state = st, + } + } if !self.events.is_empty() { return Async::Ready(self.events.remove(0)) diff --git a/core/network-libp2p/src/custom_proto/handler.rs b/core/network-libp2p/src/custom_proto/handler.rs index c2c2cf07b7..6f083b8dbd 100644 --- a/core/network-libp2p/src/custom_proto/handler.rs +++ b/core/network-libp2p/src/custom_proto/handler.rs @@ -799,10 +799,6 @@ where TSubstream: AsyncRead + AsyncWrite, TMessage: CustomMessage { is_severe, error: Box::new(err), })); - - // If we failed to open a substream, there is little chance that we manage to open any - // other substream ever again on this connection, and thus we disable the handler. - self.disable(); } fn connection_keep_alive(&self) -> KeepAlive { diff --git a/core/network-libp2p/src/custom_proto/mod.rs b/core/network-libp2p/src/custom_proto/mod.rs index 279f9a2334..cf2bf57153 100644 --- a/core/network-libp2p/src/custom_proto/mod.rs +++ b/core/network-libp2p/src/custom_proto/mod.rs @@ -19,5 +19,4 @@ pub use self::upgrade::{CustomMessage, CustomMessageId, RegisteredProtocol}; mod behaviour; mod handler; -mod topology; mod upgrade; diff --git a/core/network-libp2p/src/custom_proto/topology.rs b/core/network-libp2p/src/custom_proto/topology.rs deleted file mode 100644 index 4e498c560c..0000000000 --- a/core/network-libp2p/src/custom_proto/topology.rs +++ /dev/null @@ -1,725 +0,0 @@ -// Copyright 2018-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 .? - -use fnv::FnvHashMap; -use libp2p::{core::swarm::ConnectedPoint, Multiaddr, PeerId}; -use log::{debug, info, trace, warn}; -use serde_derive::{Serialize, Deserialize}; -use std::{cmp, fs}; -use std::io::{Read, Cursor, Error as IoError, ErrorKind as IoErrorKind, Write, BufReader, BufWriter}; -use std::path::{Path, PathBuf}; -use std::time::{Duration, Instant, SystemTime}; - -/// For each address we're connected to, a period of this duration increases the score by 1. -const CONNEC_DURATION_PER_SCORE: Duration = Duration::from_secs(10); -/// Maximum number of addresses for a given peer. If there are more than this number of addresses, -/// the ones with a lower score will be removed. -const MAX_ADDRESSES_PER_PEER: usize = 10; -/// Maximum value for the score. -const MAX_SCORE: u32 = 100; -/// When we successfully connect to a node, raises its score to the given minimum value. -const CONNECTED_MINIMUM_SCORE: u32 = 20; -/// Initial score that a node discovered through Kademlia receives, where we have a hint that the -/// node is reachable. -const DISCOVERY_INITIAL_SCORE_CONNECTABLE: u32 = 15; -/// Initial score that a node discovered through Kademlia receives, without any hint. -const DISCOVERY_INITIAL_SCORE: u32 = 10; -/// Score adjustement when we fail to connect to an address. -const SCORE_DIFF_ON_FAILED_TO_CONNECT: i32 = -1; -/// Default time-to-live for addresses discovered through Kademlia. -/// After this time has elapsed and no connection has succeeded, the address will be removed. -const KADEMLIA_DISCOVERY_EXPIRATION: Duration = Duration::from_secs(2 * 3600); -/// After a successful connection, the TTL is set to a minimum at this amount. -const EXPIRATION_PUSH_BACK_CONNEC: Duration = Duration::from_secs(2 * 3600); -/// Initial score that a bootstrap node receives when registered. -const BOOTSTRAP_NODE_SCORE: u32 = 100; -/// Time to live of a boostrap node. This only applies if you start the node later *without* -/// that bootstrap node configured anymore. -const BOOTSTRAP_NODE_EXPIRATION: Duration = Duration::from_secs(24 * 3600); -/// The first time we fail to connect to an address, wait this duration before trying again. -const FIRST_CONNECT_FAIL_BACKOFF: Duration = Duration::from_secs(2); -/// Every time we fail to connect to an address, multiply the backoff by this constant. -const FAIL_BACKOFF_MULTIPLIER: u32 = 2; -/// We need a maximum value for the backoff, overwise we risk an overflow. -const MAX_BACKOFF: Duration = Duration::from_secs(30 * 60); - -/// Stores information about the topology of the network. -#[derive(Debug)] -pub struct NetTopology { - /// The actual storage. Never contains a key for `local_peer_id`. - store: FnvHashMap, - /// Optional path to the file that caches the serialized version of `store`. - cache_path: Option, - /// PeerId of the local node. - local_peer_id: PeerId, -} - -impl NetTopology { - /// Initializes a new `NetTopology` that isn't tied to any file. - /// - /// `flush_to_disk()` will be a no-op. - #[inline] - pub fn memory(local_peer_id: PeerId) -> NetTopology { - NetTopology { - store: Default::default(), - cache_path: None, - local_peer_id, - } - } - - /// Builds a `NetTopology` that will use `path` as a cache. - /// - /// This function tries to load a known topology from the file. If the file doesn't exist - /// or contains garbage data, the execution still continues. - /// - /// Calling `flush_to_disk()` in the future writes to the given path. - pub fn from_file>(local_peer_id: PeerId, path: P) -> NetTopology { - let path = path.as_ref(); - debug!(target: "sub-libp2p", "Initializing peer store for JSON file {:?}", path); - let store = try_load(path, &local_peer_id); - NetTopology { - store, - cache_path: Some(path.to_owned()), - local_peer_id, - } - } - - /// Writes the topology into the path passed to `from_file`. - /// - /// No-op if the object was created with `memory()`. - pub fn flush_to_disk(&mut self) -> Result<(), IoError> { - let path = match self.cache_path { - Some(ref p) => p, - None => return Ok(()) - }; - - let file = fs::File::create(path)?; - // TODO: the capacity of the BufWriter is kind of arbitrary ; decide better - serialize(BufWriter::with_capacity(1024 * 1024, file), &mut self.store) - } - - /// Returns the number of peers in the topology, excluding the local peer. - #[inline] - pub fn num_peers(&self) -> usize { - self.store.len() - } - - /// Perform a cleanup pass, removing all obsolete addresses and peers. - /// - /// This should be done from time to time. - pub fn cleanup(&mut self) { - let now_systime = SystemTime::now(); - self.store.retain(|_, peer| { - let new_addrs = peer.addrs - .drain(..) - .filter(|a| a.expires > now_systime || a.is_connected()) - .collect(); - peer.addrs = new_addrs; - !peer.addrs.is_empty() - }); - } - - /// Returns a list of all the known addresses of peers, ordered by the - /// order in which we should attempt to connect to them. - /// - /// Because of expiration and back-off mechanisms, this list can grow - /// by itself over time. The `Instant` that is returned corresponds to - /// the earlier known time when a new entry will be added automatically to - /// the list. - pub fn addrs_to_attempt(&mut self) -> (impl Iterator, Instant) { - // TODO: optimize - let now = Instant::now(); - let now_systime = SystemTime::now(); - let mut instant = now + Duration::from_secs(3600); - let mut addrs_out = Vec::new(); - - let mut peer_addrs = Vec::new(); - - 'peer_loop: for (peer, info) in &mut self.store { - peer_addrs.clear(); - - for addr in &mut info.addrs { - let (score, is_connected) = addr.score_and_is_connected(); - if is_connected { - continue 'peer_loop - } - if score == 0 || addr.expires < now_systime { - continue - } - if addr.back_off_until > now { - instant = cmp::min(instant, addr.back_off_until); - continue - } - - peer_addrs.push(((peer, &addr.addr), score)); - } - - for val in peer_addrs.drain(..) { - addrs_out.push(val); - } - } - - addrs_out.sort_by(|a, b| b.1.cmp(&a.1)); - (addrs_out.into_iter().map(|a| a.0), instant) - } - - /// Adds an address corresponding to a boostrap node. - /// - /// We assume that the address is valid, so its score starts very high. - pub fn add_bootstrap_addr(&mut self, peer: &PeerId, addr: Multiaddr) { - if *peer == self.local_peer_id { - return - } - - let now_systime = SystemTime::now(); - let now = Instant::now(); - - let peer = peer_access(&mut self.store, peer); - - let mut found = false; - let new_addrs = peer.addrs - .drain(..) - .filter_map(|a| { - if a.expires < now_systime && !a.is_connected() { - return None - } - if a.addr == addr { - found = true; - } - Some(a) - }) - .collect(); - peer.addrs = new_addrs; - - if !found { - peer.addrs.push(Addr { - addr, - expires: now_systime + BOOTSTRAP_NODE_EXPIRATION, - back_off_until: now, - next_back_off: FIRST_CONNECT_FAIL_BACKOFF, - score: AddrScore { - connected_since: None, - score: BOOTSTRAP_NODE_SCORE, - latest_score_update: now, - }, - }); - } - } - - /// Indicates the topology that we have discovered new addresses for a given node. - /// - /// Returns `true` if the topology has changed in some way. Returns `false` if calling this - /// method was a no-op. - pub fn add_discovered_addrs( - &mut self, - peer_id: &PeerId, - addrs: I, - ) -> bool - where I: Iterator { - if *peer_id == self.local_peer_id { - return false - } - - let mut addrs: Vec<_> = addrs.collect(); - - if addrs.len() > 40 { - warn!(target: "sub-libp2p", "Attempt to add more than 40 addresses for {:?}", peer_id); - addrs.truncate(40); - } - - let now_systime = SystemTime::now(); - let now = Instant::now(); - - let peer = peer_access(&mut self.store, peer_id); - - let new_addrs = peer.addrs - .drain(..) - .filter(|a| { - if a.expires < now_systime && !a.is_connected() { - return false - } - addrs.retain(|(addr, _)| *addr != a.addr); - true - }) - .collect(); - peer.addrs = new_addrs; - - let mut anything_changed = false; - - if !addrs.is_empty() { - anything_changed = true; - trace!( - target: "sub-libp2p", - "Peer store: adding addresses {:?} for {:?}", - addrs, - peer_id, - ); - } - - 'addrs_inserter: for (addr, connectable) in addrs { - let initial_score = if connectable { - DISCOVERY_INITIAL_SCORE_CONNECTABLE - } else { - DISCOVERY_INITIAL_SCORE - }; - - // Enforce `MAX_ADDRESSES_PER_PEER` before inserting, or skip this entry. - while peer.addrs.len() >= MAX_ADDRESSES_PER_PEER { - let pos = peer.addrs.iter_mut().position(|addr| addr.score() <= initial_score); - if let Some(pos) = pos { - let _ = peer.addrs.remove(pos); - } else { - continue 'addrs_inserter; - } - } - - // `addrs` can contain duplicates, therefore we would insert the same address twice. - if peer.addrs.iter().any(|a| a.addr == addr) { - continue; - } - - peer.addrs.push(Addr { - addr, - expires: now_systime + KADEMLIA_DISCOVERY_EXPIRATION, - back_off_until: now, - next_back_off: FIRST_CONNECT_FAIL_BACKOFF, - score: AddrScore { - connected_since: None, - score: initial_score, - latest_score_update: now, - }, - }); - } - - anything_changed - } - - /// Returns the list of peers that are stored in the topology. - #[inline] - pub fn known_peers(&self) -> impl Iterator { - self.store.keys() - } - - /// Returns the addresses stored for a specific peer, and their reputation score. - /// - /// If `include_expired` is true, includes expired addresses that shouldn't be taken into - /// account when dialing. - #[inline] - pub fn addresses_of_peer(&mut self, peer: &PeerId, include_expired: bool) - -> impl Iterator { - let now_st = SystemTime::now(); - let now_is = Instant::now(); - - let mut list = self.store.get_mut(peer).into_iter().flat_map(|p| p.addrs.iter_mut()).filter_map(move |addr| { - let (score, connected) = addr.score_and_is_connected(); - if include_expired || (addr.expires >= now_st && score > 0 && addr.back_off_until < now_is) || connected { - Some((score, &addr.addr)) - } else { - None - } - }).collect::>(); - list.sort_by(|a, b| a.0.cmp(&b.0)); - // TODO: meh, optimize - list.into_iter().map(|(score, addr)| (addr, score)) - } - - /// Marks the given peer as connected through the given endpoint. - pub fn set_connected(&mut self, peer: &PeerId, endpoint: &ConnectedPoint) { - if *peer == self.local_peer_id { - return - } - - let addr = match endpoint { - ConnectedPoint::Dialer { address } => address, - ConnectedPoint::Listener { .. } => return - }; - - let now = Instant::now(); - - // Just making sure that we have an entry for this peer in `store`, but don't use it. - let _ = peer_access(&mut self.store, peer); - - for (peer_in_store, info_in_store) in self.store.iter_mut() { - if peer == peer_in_store { - if let Some(addr) = info_in_store.addrs.iter_mut().find(|a| &a.addr == addr) { - addr.connected_now(CONNECTED_MINIMUM_SCORE); - addr.back_off_until = now; - addr.next_back_off = FIRST_CONNECT_FAIL_BACKOFF; - continue - } - - info_in_store.addrs.push(Addr { - addr: addr.clone(), - expires: SystemTime::now() + EXPIRATION_PUSH_BACK_CONNEC, - back_off_until: now, - next_back_off: FIRST_CONNECT_FAIL_BACKOFF, - score: AddrScore { - connected_since: Some(now), - latest_score_update: now, - score: CONNECTED_MINIMUM_SCORE, - }, - }); - - } else { - // Set the score to 0 for any address that matches the one we connected to. - for addr_in_store in &mut info_in_store.addrs { - if &addr_in_store.addr == addr { - addr_in_store.adjust_score(-(MAX_SCORE as i32)); - } - } - } - } - } - - /// Marks the given peer as disconnected. The endpoint is the one we were connected to. - pub fn set_disconnected(&mut self, _: &PeerId, endpoint: &ConnectedPoint) { - let addr = match endpoint { - ConnectedPoint::Dialer { address } => address, - ConnectedPoint::Listener { .. } => return - }; - - // Note that we used to have different score values here in the past, but there really - // isn't much point in doing so in practice. - let score_diff = -3; - - for info in self.store.values_mut() { - for a in info.addrs.iter_mut() { - if &a.addr == addr { - a.disconnected_now(score_diff); - a.back_off_until = Instant::now() + a.next_back_off; - a.next_back_off = cmp::min(a.next_back_off * FAIL_BACKOFF_MULTIPLIER, MAX_BACKOFF); - let expires_push_back = SystemTime::now() + EXPIRATION_PUSH_BACK_CONNEC; - if a.expires < expires_push_back { - a.expires = expires_push_back; - } - return - } - } - } - } - - /// Indicates to the topology that we failed to reach a node when dialing the given address. - pub fn set_unreachable(&mut self, addr: &Multiaddr) { - for info in self.store.values_mut() { - for a in info.addrs.iter_mut() { - if &a.addr != addr { - continue - } - - // It is possible that we are connected to this address, and that the dial failure - // concerns another peer. - if a.is_connected() { - continue - } - - a.adjust_score(SCORE_DIFF_ON_FAILED_TO_CONNECT); - trace!(target: "sub-libp2p", "Back off for {} = {:?}", addr, a.next_back_off); - a.back_off_until = Instant::now() + a.next_back_off; - a.next_back_off = cmp::min(a.next_back_off * FAIL_BACKOFF_MULTIPLIER, MAX_BACKOFF); - } - } - } -} - -fn peer_access<'a>(store: &'a mut FnvHashMap, peer: &PeerId) -> &'a mut PeerInfo { - // TODO: should be optimizable if HashMap gets a better API - store.entry(peer.clone()).or_insert_with(Default::default) -} - -#[derive(Debug, Clone, Default)] -struct PeerInfo { - /// Addresses of that peer. - addrs: Vec, -} - -#[derive(Debug)] -struct Addr { - /// The multiaddress. - addr: Multiaddr, - /// When the address expires. - expires: SystemTime, - next_back_off: Duration, - /// Don't try to connect to this node until `Instant`. - back_off_until: Instant, - score: AddrScore, -} - -impl Clone for Addr { - fn clone(&self) -> Addr { - Addr { - addr: self.addr.clone(), - expires: self.expires, - next_back_off: self.next_back_off, - back_off_until: self.back_off_until, - score: self.score.clone(), - } - } -} - -#[derive(Debug, Clone)] -struct AddrScore { - /// If connected, contains the moment when we connected. `None` if we're not connected. - connected_since: Option, - /// Score of this address. Potentially needs to be updated based on `latest_score_update`. - score: u32, - /// When we last updated the score. - latest_score_update: Instant, -} - -impl Addr { - /// Sets the addr to connected. If the score is lower than the given value, raises it to this - /// value. - fn connected_now(&mut self, raise_to_min: u32) { - let now = Instant::now(); - Addr::flush(&mut self.score, now); - self.score.connected_since = Some(now); - if self.score.score < raise_to_min { - self.score.score = raise_to_min; - } - } - - /// Applies a modification to the score. - fn adjust_score(&mut self, score_diff: i32) { - Addr::flush(&mut self.score, Instant::now()); - if score_diff >= 0 { - self.score.score = cmp::min(MAX_SCORE, self.score.score + score_diff as u32); - } else { - self.score.score = self.score.score.saturating_sub(-score_diff as u32); - } - } - - /// Sets the addr to disconnected and applies a modification to the score. - fn disconnected_now(&mut self, score_diff: i32) { - Addr::flush(&mut self.score, Instant::now()); - self.score.connected_since = None; - if score_diff >= 0 { - self.score.score = cmp::min(MAX_SCORE, self.score.score + score_diff as u32); - } else { - self.score.score = self.score.score.saturating_sub(-score_diff as u32); - } - } - - /// Returns true if we are connected to this addr. - fn is_connected(&self) -> bool { - self.score.connected_since.is_some() - } - - /// Returns the score, and true if we are connected to this addr. - fn score_and_is_connected(&mut self) -> (u32, bool) { - Addr::flush(&mut self.score, Instant::now()); - let is_connected = self.score.connected_since.is_some(); - (self.score.score, is_connected) - } - - /// Updates `score` and `latest_score_update`, and returns the score. - fn score(&mut self) -> u32 { - Addr::flush(&mut self.score, Instant::now()); - self.score.score - } - - fn flush(score: &mut AddrScore, now: Instant) { - if let Some(connected_since) = score.connected_since { - let potential_score: u32 = div_dur_with_dur(now - connected_since, CONNEC_DURATION_PER_SCORE); - // We flush when we connect to an address. - debug_assert!(score.latest_score_update >= connected_since); - let effective_score: u32 = - div_dur_with_dur(score.latest_score_update - connected_since, CONNEC_DURATION_PER_SCORE); - let to_add = potential_score.saturating_sub(effective_score); - score.score = cmp::min(MAX_SCORE, score.score + to_add); - } - - score.latest_score_update = now; - } -} - -/// Divides a `Duration` with a `Duration`. This exists in the stdlib but isn't stable yet. -// TODO: remove this function once stable -fn div_dur_with_dur(a: Duration, b: Duration) -> u32 { - let a_ms = a.as_secs() * 1_000_000 + u64::from(a.subsec_micros()); - let b_ms = b.as_secs() * 1_000_000 + u64::from(b.subsec_micros()); - (a_ms / b_ms) as u32 -} - -/// Serialized version of a `PeerInfo`. Suitable for storage in the cache file. -#[derive(Debug, Clone, Serialize, Deserialize)] -struct SerializedPeerInfo { - addrs: Vec, -} - -/// Serialized version of an `Addr`. Suitable for storage in the cache file. -#[derive(Debug, Clone, Serialize, Deserialize)] -struct SerializedAddr { - addr: String, - expires: SystemTime, - score: u32, -} - -impl<'a> From<&'a mut Addr> for SerializedAddr { - fn from(addr: &'a mut Addr) -> SerializedAddr { - SerializedAddr { - addr: addr.addr.to_string(), - expires: addr.expires, - score: addr.score(), - } - } -} - -/// Attempts to load storage from a file. -/// Ignores any entry equal to `local_peer_id`. -/// Deletes the file and returns an empty map if the file doesn't exist, cannot be opened -/// or is corrupted. -fn try_load(path: impl AsRef, local_peer_id: &PeerId) -> FnvHashMap { - let path = path.as_ref(); - if !path.exists() { - debug!(target: "sub-libp2p", "Peer storage file {:?} doesn't exist", path); - return Default::default() - } - - let mut file = match fs::File::open(path) { - // TODO: the capacity of the BufReader is kind of arbitrary ; decide better - Ok(f) => BufReader::with_capacity(1024 * 1024, f), - Err(err) => { - warn!(target: "sub-libp2p", "Failed to open peer storage file: {:?}", err); - info!(target: "sub-libp2p", "Deleting peer storage file {:?}", path); - let _ = fs::remove_file(path); - return Default::default() - } - }; - - // We want to support empty files (and treat them as an empty recordset). Unfortunately - // `serde_json` will always produce an error if we do this ("unexpected EOF at line 0 - // column 0"). Therefore we start by reading one byte from the file in order to check - // for EOF. - - let mut first_byte = [0]; - let num_read = match file.read(&mut first_byte) { - Ok(f) => f, - Err(err) => { - // TODO: DRY - warn!(target: "sub-libp2p", "Failed to read peer storage file: {:?}", err); - info!(target: "sub-libp2p", "Deleting peer storage file {:?}", path); - let _ = fs::remove_file(path); - return Default::default() - } - }; - - if num_read == 0 { - // File is empty. - debug!(target: "sub-libp2p", "Peer storage file {:?} is empty", path); - Default::default() - - } else { - let data = Cursor::new(first_byte).chain(file); - match serde_json::from_reader::<_, serde_json::Value>(data) { - Ok(serde_json::Value::Null) => Default::default(), - Ok(serde_json::Value::Object(map)) => - deserialize_tolerant(map.into_iter(), local_peer_id), - Ok(_) | Err(_) => { - // The `Ok(_)` case means that the file doesn't contain a map. - let _ = fs::remove_file(path); - Default::default() - }, - } - } -} - -/// Attempts to turn a deserialized version of the storage into the final version. -/// -/// Skips entries that are invalid or equal to `local_peer_id`. -fn deserialize_tolerant( - iter: impl Iterator, - local_peer_id: &PeerId -) -> FnvHashMap { - let now = Instant::now(); - let now_systime = SystemTime::now(); - - let mut out = FnvHashMap::default(); - for (peer, info) in iter { - let peer: PeerId = match peer.parse() { - Ok(p) => p, - Err(_) => continue, - }; - - if &peer == local_peer_id { - continue - } - - let info: SerializedPeerInfo = match serde_json::from_value(info) { - Ok(i) => i, - Err(_) => continue, - }; - - let mut addrs = Vec::with_capacity(info.addrs.len()); - for addr in info.addrs { - let multiaddr = match addr.addr.parse() { - Ok(a) => a, - Err(_) => continue, - }; - - if addr.expires < now_systime { - continue - } - - addrs.push(Addr { - addr: multiaddr, - expires: addr.expires, - next_back_off: FIRST_CONNECT_FAIL_BACKOFF, - back_off_until: now, - score: AddrScore { - connected_since: None, - score: addr.score, - latest_score_update: now, - }, - }); - } - - if addrs.is_empty() { - continue - } - - out.insert(peer, PeerInfo { addrs }); - } - - out -} - -/// Attempts to turn a deserialized version of the storage into the final version. -/// -/// Skips entries that are invalid or expired. -fn serialize(out: W, map: &mut FnvHashMap) -> Result<(), IoError> { - let now = SystemTime::now(); - let array: FnvHashMap<_, _> = map.iter_mut().filter_map(|(peer, info)| { - if info.addrs.is_empty() { - return None - } - - let peer = peer.to_base58(); - let info = SerializedPeerInfo { - addrs: info.addrs.iter_mut() - .filter_map(|a| if a.expires > now || a.is_connected() { - Some(a.into()) - } else { - None - }) - .collect(), - }; - - Some((peer, info)) - }).collect(); - - serde_json::to_writer_pretty(out, &array) - .map_err(|err| IoError::new(IoErrorKind::Other, err)) -} diff --git a/core/network-libp2p/src/custom_proto/upgrade.rs b/core/network-libp2p/src/custom_proto/upgrade.rs index 8f54aa18d0..fc9ed5bddb 100644 --- a/core/network-libp2p/src/custom_proto/upgrade.rs +++ b/core/network-libp2p/src/custom_proto/upgrade.rs @@ -16,7 +16,7 @@ use crate::ProtocolId; use bytes::Bytes; -use libp2p::core::{Endpoint, UpgradeInfo, InboundUpgrade, OutboundUpgrade, upgrade::ProtocolName}; +use libp2p::core::{Negotiated, Endpoint, UpgradeInfo, InboundUpgrade, OutboundUpgrade, upgrade::ProtocolName}; use libp2p::tokio_codec::Framed; use log::warn; use std::{collections::VecDeque, io, iter, marker::PhantomData, vec::IntoIter as VecIntoIter}; @@ -92,7 +92,7 @@ pub struct RegisteredProtocolSubstream { /// If true, we should call `poll_complete` on the inner sink. requires_poll_complete: bool, /// The underlying substream. - inner: stream::Fuse>>>, + inner: stream::Fuse, UviBytes>>>, /// Id of the protocol. protocol_id: ProtocolId, /// Version of the protocol that was negotiated. @@ -385,7 +385,7 @@ where TSubstream: AsyncRead + AsyncWrite, fn upgrade_inbound( self, - socket: TSubstream, + socket: Negotiated, info: Self::Info, ) -> Self::Future { let framed = { @@ -418,7 +418,7 @@ where TSubstream: AsyncRead + AsyncWrite, fn upgrade_outbound( self, - socket: TSubstream, + socket: Negotiated, info: Self::Info, ) -> Self::Future { let framed = Framed::new(socket, UviBytes::default()); diff --git a/core/network-libp2p/src/lib.rs b/core/network-libp2p/src/lib.rs index aa5afb821b..1736fd44d7 100644 --- a/core/network-libp2p/src/lib.rs +++ b/core/network-libp2p/src/lib.rs @@ -106,12 +106,6 @@ pub struct NetworkState { /// List of addresses the node is currently listening on. pub listened_addresses: HashSet, // TODO (https://github.com/libp2p/rust-libp2p/issues/978): external_addresses: Vec, - /// If true, we only accept reserved peers. - pub is_reserved_only: bool, - /// PeerIds of the nodes that are marked as reserved. - pub reserved_peers: HashSet, - /// PeerIds of the nodes that are banned, and how long in the seconds the ban remains. - pub banned_peers: HashMap, /// List of node we're connected to. pub connected_peers: HashMap, /// List of node that we know of but that we're not connected to. @@ -137,15 +131,15 @@ pub struct NetworkStatePeer { /// If true, the peer is "open", which means that we have a Substrate-related protocol /// with this peer. pub open: bool, - /// List of addresses known for this node, with its reputation score. - pub known_addresses: HashMap, + /// List of addresses known for this node. + pub known_addresses: HashSet, } #[derive(Debug, PartialEq, Serialize)] #[serde(rename_all = "camelCase")] pub struct NetworkStateNotConnectedPeer { - /// List of addresses known for this node, with its reputation score. - pub known_addresses: HashMap, + /// List of addresses known for this node. + pub known_addresses: HashSet, } #[derive(Debug, PartialEq, Serialize)] diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index 1ac8a6ed75..4e7e0a33a8 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -19,20 +19,19 @@ use crate::{ transport, NetworkState, NetworkStatePeer, NetworkStateNotConnectedPeer }; use crate::custom_proto::{CustomMessage, RegisteredProtocol}; -use crate::{NetworkConfiguration, NodeIndex, parse_str_addr}; +use crate::{NetworkConfiguration, NonReservedPeerMode, NodeIndex, parse_str_addr}; use fnv::FnvHashMap; use futures::{prelude::*, Stream}; -use libp2p::{multiaddr::Protocol, Multiaddr, PeerId}; +use libp2p::{multiaddr::Protocol, Multiaddr, core::swarm::NetworkBehaviour, PeerId}; use libp2p::core::{Swarm, nodes::Substream, transport::boxed::Boxed, muxing::StreamMuxerBox}; use libp2p::core::nodes::ConnectedPoint; use log::{debug, error, info, warn}; use std::collections::hash_map::Entry; use std::fs; -use std::io::{Error as IoError, ErrorKind as IoErrorKind}; +use std::io::Error as IoError; use std::path::Path; use std::sync::Arc; -use std::time::{Duration, Instant}; -use tokio_timer::Interval; +use std::time::Duration; /// Starts the substrate libp2p service. /// @@ -40,13 +39,48 @@ use tokio_timer::Interval; pub fn start_service( config: NetworkConfiguration, registered_custom: RegisteredProtocol, -) -> Result, IoError> +) -> Result<(Service, Arc), IoError> where TMessage: CustomMessage + Send + 'static { if let Some(ref path) = config.net_config_path { fs::create_dir_all(Path::new(path))?; } + // List of multiaddresses that we know in the network. + let mut known_addresses = Vec::new(); + let mut bootnodes = Vec::new(); + let mut reserved_nodes = Vec::new(); + + // Process the bootnodes. + for bootnode in config.boot_nodes.iter() { + match parse_str_addr(bootnode) { + Ok((peer_id, addr)) => { + bootnodes.push(peer_id.clone()); + known_addresses.push((peer_id, addr)); + }, + Err(_) => warn!(target: "sub-libp2p", "Not a valid bootnode address: {}", bootnode), + } + } + + // Initialize the reserved peers. + for reserved in config.reserved_nodes.iter() { + if let Ok((peer_id, addr)) = parse_str_addr(reserved) { + reserved_nodes.push(peer_id.clone()); + known_addresses.push((peer_id, addr)); + } else { + warn!(target: "sub-libp2p", "Not a valid reserved node address: {}", reserved); + } + } + + // Build the peerset. + let (peerset, peerset_receiver) = substrate_peerset::Peerset::from_config(substrate_peerset::PeersetConfig { + in_peers: 25, + out_peers: 25, + bootnodes, + reserved_only: config.non_reserved_mode == NonReservedPeerMode::Deny, + reserved_nodes, + }); + // Private and public keys configuration. let local_identity = config.node_key.clone().into_keypair()?; let local_public = local_identity.public(); @@ -54,7 +88,8 @@ where TMessage: CustomMessage + Send + 'static { // Build the swarm. let (mut swarm, bandwidth) = { - let behaviour = Behaviour::new(&config, local_public, registered_custom); + let user_agent = format!("{} ({})", config.client_version, config.node_name); + let behaviour = Behaviour::new(user_agent, local_public, registered_custom, known_addresses, peerset_receiver); let (transport, bandwidth) = transport::build_transport(local_identity); (Swarm::new(transport, behaviour, local_peer_id.clone()), bandwidth) }; @@ -75,36 +110,16 @@ where TMessage: CustomMessage + Send + 'static { Swarm::add_external_address(&mut swarm, addr.clone()); } - // Connect to the bootnodes. - for bootnode in config.boot_nodes.iter() { - match parse_str_addr(bootnode) { - Ok((peer_id, _)) => Swarm::dial(&mut swarm, peer_id), - Err(_) => warn!(target: "sub-libp2p", "Not a valid bootnode address: {}", bootnode), - } - } - - // Initialize the reserved peers. - for reserved in config.reserved_nodes.iter() { - if let Ok((peer_id, addr)) = parse_str_addr(reserved) { - swarm.add_reserved_peer(peer_id.clone(), addr); - Swarm::dial(&mut swarm, peer_id); - } else { - warn!(target: "sub-libp2p", "Not a valid reserved node address: {}", reserved); - } - } - - debug!(target: "sub-libp2p", "Topology started with {} entries", - swarm.num_topology_peers()); - - Ok(Service { + let service = Service { swarm, bandwidth, nodes_info: Default::default(), index_by_id: Default::default(), next_node_id: 1, - cleanup: Interval::new_interval(Duration::from_secs(60)), injected_events: Vec::new(), - }) + }; + + Ok((service, peerset)) } /// Event produced by the service. @@ -164,10 +179,6 @@ pub struct Service where TMessage: CustomMessage { /// Next index to assign to a node. next_node_id: NodeIndex, - /// Stream that fires when we need to cleanup and flush the topology, and cleanup the disabled - /// peers. - cleanup: Interval, - /// Events to produce on the Stream. injected_events: Vec>, } @@ -189,13 +200,11 @@ impl Service where TMessage: CustomMessage + Send + 'static { /// Returns a struct containing tons of useful information about the network. pub fn state(&mut self) -> NetworkState { - let now = Instant::now(); - let connected_peers = { let swarm = &mut self.swarm; self.nodes_info.values().map(move |info| { - let known_addresses = swarm.known_addresses(&info.peer_id) - .map(|(a, s)| (a.clone(), s)).collect(); + let known_addresses = NetworkBehaviour::addresses_of_peer(&mut **swarm, &info.peer_id) + .into_iter().collect(); (info.peer_id.to_base58(), NetworkStatePeer { endpoint: info.endpoint.clone().into(), @@ -214,10 +223,9 @@ where TMessage: CustomMessage + Send + 'static { let list = swarm.known_peers().filter(|p| !index_by_id.contains_key(p)) .cloned().collect::>(); list.into_iter().map(move |peer_id| { - let known_addresses = swarm.known_addresses(&peer_id) - .map(|(a, s)| (a.clone(), s)).collect(); (peer_id.to_base58(), NetworkStateNotConnectedPeer { - known_addresses, + known_addresses: NetworkBehaviour::addresses_of_peer(&mut **swarm, &peer_id) + .into_iter().collect(), }) }).collect() }; @@ -225,12 +233,6 @@ where TMessage: CustomMessage + Send + 'static { NetworkState { peer_id: Swarm::local_peer_id(&self.swarm).to_base58(), listened_addresses: Swarm::listeners(&self.swarm).cloned().collect(), - reserved_peers: self.swarm.reserved_peers().map(|p| p.to_base58()).collect(), - banned_peers: self.swarm.banned_nodes().map(|(p, until)| { - let dur = if until > now { until - now } else { Duration::new(0, 0) }; - (p.to_base58(), dur.as_secs()) - }).collect(), - is_reserved_only: self.swarm.is_reserved_only(), average_download_per_sec: self.bandwidth.average_download_per_sec(), average_upload_per_sec: self.bandwidth.average_upload_per_sec(), connected_peers, @@ -268,31 +270,6 @@ where TMessage: CustomMessage + Send + 'static { self.nodes_info.keys().cloned() } - /// Try to add a reserved peer. - pub fn add_reserved_peer(&mut self, peer_id: PeerId, addr: Multiaddr) { - self.swarm.add_reserved_peer(peer_id, addr); - } - - /// Try to remove a reserved peer. - /// - /// If we are in reserved mode and we were connected to a node with this peer ID, then this - /// method will disconnect it. - pub fn remove_reserved_peer(&mut self, peer_id: PeerId) { - self.swarm.remove_reserved_peer(peer_id); - } - - /// Start accepting all peers again if we weren't. - #[inline] - pub fn accept_unreserved_peers(&mut self) { - self.swarm.accept_unreserved_peers(); - } - - /// Start refusing non-reserved nodes. Disconnects the nodes that we are connected to that - /// aren't reserved. - pub fn deny_unreserved_peers(&mut self) { - self.swarm.deny_unreserved_peers(); - } - /// Returns the `PeerId` of a node. #[inline] pub fn peer_id_of_node(&self, node_index: NodeIndex) -> Option<&PeerId> { @@ -327,23 +304,10 @@ where TMessage: CustomMessage + Send + 'static { } } - /// Disconnects a peer and bans it for a little while. - /// - /// Same as `drop_node`, except that the same peer will not be able to reconnect later. - #[inline] - pub fn ban_node(&mut self, node_index: NodeIndex) { - if let Some(info) = self.nodes_info.get(&node_index) { - info!(target: "sub-libp2p", "Banned {:?} (#{:?}, {:?}, {:?})", info.peer_id, - node_index, info.endpoint, info.client_version); - self.swarm.ban_node(info.peer_id.clone()); - } - } - /// Disconnects a peer. /// /// This is asynchronous and will not immediately close the peer. /// Corresponding closing events will be generated once the closing actually happens. - #[inline] pub fn drop_node(&mut self, node_index: NodeIndex) { if let Some(info) = self.nodes_info.get(&node_index) { debug!(target: "sub-libp2p", "Dropping {:?} on purpose (#{:?}, {:?}, {:?})", @@ -352,6 +316,11 @@ where TMessage: CustomMessage + Send + 'static { } } + /// Adds a hard-coded address for the given peer, that never expires. + pub fn add_known_address(&mut self, peer_id: PeerId, addr: Multiaddr) { + self.swarm.add_known_address(peer_id, addr) + } + /// Get debug info for a given peer. pub fn peer_debug_info(&self, who: NodeIndex) -> String { if let Some(info) = self.nodes_info.get(&who) { @@ -394,7 +363,6 @@ where TMessage: CustomMessage + Send + 'static { loop { match self.swarm.poll() { Ok(Async::Ready(Some(BehaviourOut::CustomProtocolOpen { peer_id, version, endpoint }))) => { - debug!(target: "sub-libp2p", "Opened custom protocol with {:?}", peer_id); let node_index = self.index_of_peer_or_assign(peer_id.clone(), endpoint); break Ok(Async::Ready(Some(ServiceEvent::OpenedCustomProtocol { peer_id, @@ -403,8 +371,7 @@ where TMessage: CustomMessage + Send + 'static { debug_info: self.peer_debug_info(node_index), }))) } - Ok(Async::Ready(Some(BehaviourOut::CustomProtocolClosed { peer_id, result }))) => { - debug!(target: "sub-libp2p", "Custom protocol with {:?} closed: {:?}", peer_id, result); + Ok(Async::Ready(Some(BehaviourOut::CustomProtocolClosed { peer_id, .. }))) => { let node_index = *self.index_by_id.get(&peer_id).expect("index_by_id is always kept in sync with the state of the behaviour"); break Ok(Async::Ready(Some(ServiceEvent::ClosedCustomProtocol { node_index, @@ -457,40 +424,6 @@ where TMessage: CustomMessage + Send + 'static { } } } - - /// Polls the stream that fires when we need to cleanup and flush the topology. - fn poll_cleanup(&mut self) -> Poll>, IoError> { - loop { - match self.cleanup.poll() { - Ok(Async::NotReady) => return Ok(Async::NotReady), - Ok(Async::Ready(Some(_))) => { - debug!(target: "sub-libp2p", "Cleaning and flushing topology"); - self.swarm.cleanup(); - if let Err(err) = self.swarm.flush_topology() { - warn!(target: "sub-libp2p", "Failed to flush topology: {:?}", err); - } - debug!(target: "sub-libp2p", "Topology now contains {} nodes", - self.swarm.num_topology_peers()); - } - Ok(Async::Ready(None)) => { - warn!(target: "sub-libp2p", "Topology flush stream ended unexpectedly"); - return Ok(Async::Ready(None)) - } - Err(err) => { - warn!(target: "sub-libp2p", "Topology flush stream errored: {:?}", err); - return Err(IoError::new(IoErrorKind::Other, err)) - } - } - } - } -} - -impl Drop for Service where TMessage: CustomMessage { - fn drop(&mut self) { - if let Err(err) = self.swarm.flush_topology() { - warn!(target: "sub-libp2p", "Failed to flush topology: {:?}", err); - } - } } impl Stream for Service where TMessage: CustomMessage + Send + 'static { @@ -507,11 +440,6 @@ impl Stream for Service where TMessage: CustomMessage + Send Async::NotReady => (), } - match self.poll_cleanup()? { - Async::Ready(value) => return Ok(Async::Ready(value)), - Async::NotReady => (), - } - // The only way we reach this is if we went through all the `NotReady` paths above, // ensuring the current task is registered everywhere. Ok(Async::NotReady) diff --git a/core/network-libp2p/tests/test.rs b/core/network-libp2p/tests/test.rs index f8f204c5b8..d4043d1cb7 100644 --- a/core/network-libp2p/tests/test.rs +++ b/core/network-libp2p/tests/test.rs @@ -41,7 +41,7 @@ fn build_nodes(num: usize) -> Vec> }; let proto = substrate_network_libp2p::RegisteredProtocol::new(*b"tst", &[1]); - result.push(substrate_network_libp2p::start_service(config, proto).unwrap()); + result.push(substrate_network_libp2p::start_service(config, proto).unwrap().0); } result diff --git a/core/network/Cargo.toml b/core/network/Cargo.toml index 6e7e8599db..bed1946fa8 100644 --- a/core/network/Cargo.toml +++ b/core/network/Cargo.toml @@ -27,6 +27,7 @@ client = { package = "substrate-client", path = "../../core/client" } runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives" } parity-codec = { version = "3.2", features = ["derive"] } network_libp2p = { package = "substrate-network-libp2p", path = "../../core/network-libp2p" } +peerset = { package = "substrate-peerset", path = "../../core/peerset" } tokio = "0.1.11" keyring = { package = "substrate-keyring", path = "../../core/keyring", optional = true } test_client = { package = "substrate-test-client", path = "../../core/test-client", optional = true } diff --git a/core/network/src/service.rs b/core/network/src/service.rs index 714192b7f0..e55db474ee 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -24,6 +24,7 @@ use parking_lot::{Mutex, RwLock}; use network_libp2p::{ProtocolId, NetworkConfiguration, NodeIndex, Severity}; use network_libp2p::{start_service, parse_str_addr, Service as NetworkService, ServiceEvent as NetworkServiceEvent}; use network_libp2p::{multiaddr, RegisteredProtocol, NetworkState}; +use peerset::Peerset; use consensus::import_queue::{ImportQueue, Link}; use crate::consensus_gossip::ConsensusGossip; use crate::message::{Message, ConsensusEngineId}; @@ -138,6 +139,9 @@ pub struct Service> { peers: Arc>>>, /// Network service network: Arc>>>, + /// Peerset manager (PSM); manages the reputation of nodes and indicates the network which + /// nodes it should be connected to or not. + peerset: Arc, /// Protocol sender protocol_sender: Sender>, /// Sender for messages to the background service task, and handle for the background thread. @@ -174,7 +178,7 @@ impl> Service { )?; let versions = [(protocol::CURRENT_VERSION as u8)]; let registered = RegisteredProtocol::new(protocol_id, &versions[..]); - let (thread, network) = start_thread( + let (thread, network, peerset) = start_thread( network_to_protocol_sender, network_port, params.network_config, @@ -186,6 +190,7 @@ impl> Service { is_offline, is_major_syncing, peers, + peerset, network, protocol_sender: protocol_sender.clone(), bg_thread: Some(thread), @@ -343,20 +348,21 @@ pub trait ManageNetwork { impl> ManageNetwork for Service { fn accept_unreserved_peers(&self) { - self.network.lock().accept_unreserved_peers(); + self.peerset.set_reserved_only(false); } fn deny_unreserved_peers(&self) { - self.network.lock().deny_unreserved_peers(); + self.peerset.set_reserved_only(true); } fn remove_reserved_peer(&self, peer: PeerId) { - self.network.lock().remove_reserved_peer(peer); + self.peerset.remove_reserved_peer(&peer); } fn add_reserved_peer(&self, peer: String) -> Result<(), String> { - let (addr, peer_id) = parse_str_addr(&peer).map_err(|e| format!("{:?}", e))?; - self.network.lock().add_reserved_peer(addr, peer_id); + let (peer_id, addr) = parse_str_addr(&peer).map_err(|e| format!("{:?}", e))?; + self.peerset.add_reserved_peer(peer_id.clone()); + self.network.lock().add_known_address(peer_id, addr); Ok(()) } @@ -466,10 +472,10 @@ fn start_thread( network_port: NetworkPort, config: NetworkConfiguration, registered: RegisteredProtocol>, -) -> Result<((oneshot::Sender<()>, thread::JoinHandle<()>), Arc>>>), Error> { +) -> Result<((oneshot::Sender<()>, thread::JoinHandle<()>), Arc>>>, Arc), Error> { // Start the main service. - let service = match start_service(config, registered) { - Ok(service) => Arc::new(Mutex::new(service)), + let (service, peerset) = match start_service(config, registered) { + Ok((service, peerset)) => (Arc::new(Mutex::new(service)), peerset), Err(err) => { warn!("Error starting network: {}", err); return Err(err.into()) @@ -493,7 +499,7 @@ fn start_thread( }; })?; - Ok(((close_tx, thread), service)) + Ok(((close_tx, thread), service, peerset)) } /// Runs the background thread that handles the networking. @@ -530,7 +536,9 @@ fn run_thread( match severity { Severity::Bad(message) => { info!(target: "sync", "Banning {:?} because {:?}", who, message); - network_service_2.lock().ban_node(who) + warn!(target: "sync", "Banning a node is a deprecated mechanism that \ + should be removed"); + network_service_2.lock().drop_node(who) }, Severity::Useless(message) => { info!(target: "sync", "Dropping {:?} because {:?}", who, message); diff --git a/core/peerset/Cargo.toml b/core/peerset/Cargo.toml new file mode 100644 index 0000000000..3eaf1d9747 --- /dev/null +++ b/core/peerset/Cargo.toml @@ -0,0 +1,20 @@ +[package] +description = "Connectivity manager based on reputation" +homepage = "http://parity.io" +license = "GPL-3.0" +name = "substrate-peerset" +version = "0.1.0" +authors = ["Parity Technologies "] +edition = "2018" + +[dependencies] +fnv = "1.0" +futures = "0.1" +libp2p = { git = "https://github.com/tomaka/libp2p-rs", branch = "substrate-tmp-2019-03-20", default-features = false } +log = "0.4" +parking_lot = "0.7" +rand = "0.6" +serde = "1.0.70" +serde_derive = "1.0.70" +serde_json = "1.0.24" +tokio-io = "0.1" diff --git a/core/peerset/src/lib.rs b/core/peerset/src/lib.rs new file mode 100644 index 0000000000..2f39b96a94 --- /dev/null +++ b/core/peerset/src/lib.rs @@ -0,0 +1,297 @@ +// Copyright 2018-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 . + +//! Peer Set Manager (PSM). Contains the strategy for choosing which nodes the network should be +//! connected to. + +use std::collections::HashSet; +use futures::{prelude::*, sync::mpsc}; +use libp2p::PeerId; +use parking_lot::Mutex; +use std::sync::Arc; + +/// Shared part of the peer set manager (PSM). Distributed around the code. +pub struct Peerset { + tx: mpsc::UnboundedSender, + inner: Mutex, +} + +struct Inner { + /// List of nodes that we know exist but we are not connected to. + discovered: Vec, + /// List of reserved nodes. + reserved: HashSet, + /// If true, we only accept reserved nodes. + reserved_only: bool, + /// Node slots. Each slot contains either `None` if the node is free, or `Some` if it is + /// assigned to a peer. + slots: Vec>, +} + +/// Message that can be sent by the peer set manager (PSM). +#[derive(Debug)] +pub enum Message { + /// Request to open a connection to the given peer. From the point of view of the PSM, we are + /// immediately connected. + Connect(PeerId), + + /// Drop the connection to the given peer, or cancel the connection attempt after a `Connect`. + Drop(PeerId), + + /// Equivalent to `Connect` for the peer corresponding to this incoming index. + Accept(IncomingIndex), + + /// Equivalent to `Drop` for the peer corresponding to this incoming index. + Reject(IncomingIndex), +} + +/// Opaque identifier for an incoming connection. Allocated by the network. +#[derive(Debug, Copy, Clone, PartialEq, Eq)] +pub struct IncomingIndex(pub u64); + +impl From for IncomingIndex { + fn from(val: u64) -> IncomingIndex { + IncomingIndex(val) + } +} + +/// Configuration to pass when creating the peer set manager. +#[derive(Debug)] +pub struct PeersetConfig { + /// Maximum number of ingoing links to peers. + pub in_peers: u32, + + /// Maximum number of outgoing links to peers. + pub out_peers: u32, + + /// List of bootstrap nodes to initialize the peer with. + /// + /// > **Note**: Keep in mind that the networking has to know an address for these nodes, + /// > otherwise it will not be able to connect to them. + pub bootnodes: Vec, + + /// If true, we only accept reserved nodes. + pub reserved_only: bool, + + /// List of nodes that we should always be connected to. + /// + /// > **Note**: Keep in mind that the networking has to know an address for these nodes, + /// > otherwise it will not be able to connect to them. + pub reserved_nodes: Vec, +} + +/// Side of the peer set manager owned by the network. In other words, the "receiving" side. +/// +/// Implements the `Stream` trait and can be polled for messages. The `Stream` never ends and never +/// errors. +pub struct PeersetMut { + parent: Arc, + rx: mpsc::UnboundedReceiver, +} + +impl Peerset { + /// Builds a new peerset from the given configuration. + pub fn from_config(config: PeersetConfig) -> (Arc, PeersetMut) { + let (tx, rx) = mpsc::unbounded(); + + let mut inner = Inner { + discovered: config.bootnodes.into_iter().collect(), + reserved: Default::default(), + reserved_only: config.reserved_only, + slots: (0 .. (config.in_peers + config.out_peers)).map(|_| None).collect(), + }; + + alloc_slots(&mut inner, &tx); + + let peerset = Arc::new(Peerset { + tx, + inner: Mutex::new(inner), + }); + + let rx = PeersetMut { + parent: peerset.clone(), + rx, + }; + + for reserved in config.reserved_nodes { + peerset.add_reserved_peer(reserved); + } + + (peerset, rx) + } + + /// Adds a new reserved peer. The peerset will make an effort to always remain connected to + /// this peer. + /// + /// Has no effect if the node was already a reserved peer. + /// + /// > **Note**: Keep in mind that the networking has to know an address for this node, + /// > otherwise it will not be able to connect to it. + pub fn add_reserved_peer(&self, peer_id: PeerId) { + let mut inner = self.inner.lock(); + if !inner.reserved.insert(peer_id.clone()) { + // Immediately return if this peer was already in the list. + return; + } + + // Assign a slot for this reserved peer. + if let Some(pos) = inner.slots.iter().position(|s| s.as_ref().map(|n| !inner.reserved.contains(n)).unwrap_or(true)) { + let _ = self.tx.unbounded_send(Message::Connect(peer_id.clone())); + inner.slots[pos] = Some(peer_id); + + } else { + // All slots are filled with reserved peers. + if inner.discovered.iter().all(|p| *p != peer_id) { + inner.discovered.push(peer_id); + } + } + } + + /// Remove a previously-added reserved peer. + /// + /// Has no effect if the node was not a reserved peer. + pub fn remove_reserved_peer(&self, peer_id: &PeerId) { + let mut inner = self.inner.lock(); + inner.reserved.remove(peer_id); + } + + /// Sets whether or not the peerset only has connections . + pub fn set_reserved_only(&self, reserved_only: bool) { + let mut inner = self.inner.lock(); + let inner = &mut *inner; // Fixes a borrowing issue. + inner.reserved_only = reserved_only; + + // Disconnect non-reserved nodes. + if reserved_only { + for slot in &mut inner.slots { + if let Some(peer) = slot.as_ref() { + if inner.reserved.contains(peer) { + continue; + } + + let _ = self.tx.unbounded_send(Message::Drop(peer.clone())); + } + + *slot = None; + } + } + } + + /// Reports an adjustement to the reputation of the given peer. + pub fn report_peer(&self, _peer_id: &PeerId, _score_diff: i32) { + // This is not implemented in this dummy implementation. + } +} + +fn alloc_slots(inner: &mut Inner, tx: &mpsc::UnboundedSender) { + if inner.reserved_only { + return; + } + + for slot in inner.slots.iter_mut() { + if slot.is_some() { + continue; + } + + if !inner.discovered.is_empty() { + let elem = inner.discovered.remove(0); + *slot = Some(elem.clone()); + let _ = tx.unbounded_send(Message::Connect(elem)); + } + } +} + +impl PeersetMut { + /// Indicate that we received an incoming connection. Must be answered either with + /// a corresponding `Accept` or `Reject`, except if we were already connected to this peer. + /// + /// Note that this mechanism is orthogonal to `Connect`/`Drop`. Accepting an incoming + /// connection implicitely means `Accept`, but incoming connections aren't cancelled by + /// `dropped`. + /// + /// Because of concurrency issues, it is acceptable to call `incoming` with a `PeerId` the + /// peerset is already connected to, in which case it must not answer. + pub fn incoming(&self, peer_id: PeerId, index: IncomingIndex) { + let mut inner = self.parent.inner.lock(); + if inner.slots.iter().any(|s| s.as_ref() == Some(&peer_id)) { + return + } + + if let Some(pos) = inner.slots.iter().position(|s| s.is_none()) { + inner.slots[pos] = Some(peer_id); + let _ = self.parent.tx.unbounded_send(Message::Accept(index)); + } else { + if inner.discovered.iter().all(|p| *p != peer_id) { + inner.discovered.push(peer_id); + } + let _ = self.parent.tx.unbounded_send(Message::Reject(index)); + } + } + + /// Indicate that we dropped an active connection with a peer, or that we failed to connect. + /// + /// Must only be called after the PSM has either generated a `Connect` message with this + /// `PeerId`, or accepted an incoming connection with this `PeerId`. + pub fn dropped(&self, peer_id: &PeerId) { + let mut inner = self.parent.inner.lock(); + + // Automatically connect back if reserved. + if inner.reserved.contains(peer_id) { + let _ = self.parent.tx.unbounded_send(Message::Connect(peer_id.clone())); + return + } + + // Otherwise, free the slot. + for slot in inner.slots.iter_mut() { + if slot.as_ref() == Some(peer_id) { + *slot = None; + } + } + + // Note: in this dummy implementation we consider that peers never expire. As soon as we + // are disconnected from a peer, we try again. + if inner.discovered.iter().all(|p| p != peer_id) { + inner.discovered.push(peer_id.clone()); + } + alloc_slots(&mut inner, &self.parent.tx); + } + + /// Adds a discovered peer id to the PSM. + /// + /// > **Note**: There is no equivalent "expired" message, meaning that it is the responsibility + /// > of the PSM to remove `PeerId`s that fail to dial too often. + pub fn discovered(&self, peer_id: PeerId) { + let mut inner = self.parent.inner.lock(); + + if inner.slots.iter().any(|p| p.as_ref() == Some(&peer_id)) { + return; + } + + if inner.discovered.iter().all(|p| *p != peer_id) { + inner.discovered.push(peer_id); + } + alloc_slots(&mut inner, &self.parent.tx); + } +} + +impl Stream for PeersetMut { + type Item = Message; + type Error = (); + + fn poll(&mut self) -> Poll, Self::Error> { + self.rx.poll() + } +} diff --git a/core/rpc/src/system/tests.rs b/core/rpc/src/system/tests.rs index 6aee5c3fa2..66f10694fb 100644 --- a/core/rpc/src/system/tests.rs +++ b/core/rpc/src/system/tests.rs @@ -50,9 +50,6 @@ impl network::SyncProvider for Status { network::NetworkState { peer_id: String::new(), listened_addresses: Default::default(), - is_reserved_only: false, - reserved_peers: Default::default(), - banned_peers: Default::default(), connected_peers: Default::default(), not_connected_peers: Default::default(), average_download_per_sec: 0, @@ -207,9 +204,6 @@ fn system_network_state() { network::NetworkState { peer_id: String::new(), listened_addresses: Default::default(), - is_reserved_only: false, - reserved_peers: Default::default(), - banned_peers: Default::default(), connected_peers: Default::default(), not_connected_peers: Default::default(), average_download_per_sec: 0, -- GitLab From 964e909c13113b7c18f1aa3b6e8efec19184957b Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Thu, 21 Mar 2019 16:49:21 +0100 Subject: [PATCH 059/120] Fix #1777 (#2072) --- core/network-libp2p/tests/test.rs | 2 -- 1 file changed, 2 deletions(-) diff --git a/core/network-libp2p/tests/test.rs b/core/network-libp2p/tests/test.rs index d4043d1cb7..a7761a6fca 100644 --- a/core/network-libp2p/tests/test.rs +++ b/core/network-libp2p/tests/test.rs @@ -131,8 +131,6 @@ fn two_nodes_transfer_lots_of_packets() { } #[test] -#[ignore] -// TODO: remove ignore once this test it fixed. #1777 fn many_nodes_connectivity() { // Creates many nodes, then make sure that they are all connected to each other. // Note: if you increase this number, keep in mind that there's a limit to the number of -- GitLab From 1408efdb2e65bc481af67d3178ab1a398245b5bf Mon Sep 17 00:00:00 2001 From: DemiMarie-parity <48690212+DemiMarie-parity@users.noreply.github.com> Date: Thu, 21 Mar 2019 17:26:00 -0400 Subject: [PATCH 060/120] Make AuRa generic over cryptography (#2062) As is so often the case in Rust, most of the work was fixing compiler errors and removing spurious type annotations. --- .gitignore | 2 + core/consensus/aura/src/lib.rs | 116 +++++++++++------- core/primitives/src/sr25519.rs | 2 +- .../substrate_test_runtime.compact.wasm | Bin 56614 -> 56572 bytes node-template/src/service.rs | 4 +- node/cli/src/service.rs | 26 ++-- .../release/node_runtime.compact.wasm | Bin 901302 -> 898586 bytes 7 files changed, 88 insertions(+), 62 deletions(-) diff --git a/.gitignore b/.gitignore index 4caeb6cc53..21dee82d81 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,5 @@ node/runtime/wasm/target/ polkadot.* .DS_Store .idea/ +nohup.out +rls*.log diff --git a/core/consensus/aura/src/lib.rs b/core/consensus/aura/src/lib.rs index 064738216f..e2c1091f14 100644 --- a/core/consensus/aura/src/lib.rs +++ b/core/consensus/aura/src/lib.rs @@ -26,9 +26,9 @@ //! Blocks from future steps will be either deferred or rejected depending on how //! far in the future they are. -use std::{sync::Arc, time::Duration, thread}; +use std::{sync::Arc, time::Duration, thread, marker::PhantomData, hash::Hash, fmt::Debug}; -use parity_codec::Encode; +use parity_codec::{Encode, Decode}; use consensus_common::{ Authorities, BlockImport, Environment, Proposer, ForkChoiceStrategy }; @@ -41,7 +41,7 @@ use runtime_primitives::{generic, generic::BlockId, Justification}; use runtime_primitives::traits::{ Block, Header, Digest, DigestItemFor, DigestItem, ProvideRuntimeApi }; -use primitives::{ed25519, Pair}; +use primitives::Pair; use inherents::{InherentDataProviders, InherentData, RuntimeString}; use futures::{Stream, Future, IntoFuture, future}; @@ -60,8 +60,8 @@ pub use aura_slots::SlotDuration; pub use aura_primitives::*; pub use consensus_common::SyncOracle; -type AuthorityId = ed25519::Public; -type Signature = ed25519::Signature; +type AuthorityId

=

::Public; +type Signature

=

::Signature; /// A handle to the network. This is generally implemented by providing some /// handle to a gossip service or similar. @@ -76,7 +76,9 @@ pub trait Network: Clone { } /// Get slot author for given block along with authorities. -fn slot_author(slot_num: u64, authorities: &[AuthorityId]) -> Option { +fn slot_author(slot_num: u64, authorities: &[AuthorityId

]) -> Option> + where P::Public: Clone, +{ if authorities.is_empty() { return None } let idx = slot_num % (authorities.len() as u64); @@ -88,7 +90,7 @@ fn slot_author(slot_num: u64, authorities: &[AuthorityId]) -> Option Option { @@ -110,25 +112,27 @@ fn inherent_to_common_error(err: RuntimeString) -> consensus_common::Error { } /// A digest item which is usable with aura consensus. -pub trait CompatibleDigestItem: Sized { +pub trait CompatibleDigestItem: Sized { /// Construct a digest item which is a slot number and a signature on the /// hash. - fn aura_seal(slot_number: u64, signature: Signature) -> Self; + fn aura_seal(slot_number: u64, signature: Signature) -> Self; /// If this item is an Aura seal, return the slot number and signature. - fn as_aura_seal(&self) -> Option<(u64, Signature)>; + fn as_aura_seal(&self) -> Option<(u64, Signature)>; } -impl CompatibleDigestItem for generic::DigestItem { +impl CompatibleDigestItem for generic::DigestItem> + where T::Signature: Clone +{ /// Construct a digest item which is a slot number and a signature on the /// hash. - fn aura_seal(slot_number: u64, signature: Signature) -> Self { + fn aura_seal(slot_number: u64, signature: Signature) -> Self { generic::DigestItem::Seal(slot_number, signature) } /// If this item is an Aura seal, return the slot number and signature. - fn as_aura_seal(&self) -> Option<(u64, Signature)> { + fn as_aura_seal(&self) -> Option<(u64, Signature)> { match self { - generic::DigestItem::Seal(slot, ref sig) => Some((*slot, sig.clone().into())), + generic::DigestItem::Seal(slot, ref sig) => Some((*slot, (*sig).clone())), _ => None } } @@ -147,9 +151,9 @@ impl SlotCompatible for AuraSlotCompatible { } /// Start the aura worker in a separate thread. -pub fn start_aura_thread( +pub fn start_aura_thread( slot_duration: SlotDuration, - local_key: Arc, + local_key: Arc

, client: Arc, block_import: Arc, env: Arc, @@ -164,9 +168,11 @@ pub fn start_aura_thread( <>::Create as IntoFuture>::Future: Send + 'static, I: BlockImport + Send + Sync + 'static, Error: From + From + 'static, + P: Pair + Send + Sync + 'static, + P::Public: Encode + Decode + Eq + Clone + Debug + Hash + Send + Sync + 'static, SO: SyncOracle + Send + Sync + Clone + 'static, OnExit: Future + Send + 'static, - DigestItemFor: CompatibleDigestItem + DigestItem + 'static, + DigestItemFor: CompatibleDigestItem

+ DigestItem> + 'static, Error: ::std::error::Error + Send + From<::consensus_common::Error> + 'static, { let worker = AuraWorker { @@ -184,9 +190,9 @@ pub fn start_aura_thread( } /// Start the aura worker. The returned future should be run in a tokio runtime. -pub fn start_aura( +pub fn start_aura( slot_duration: SlotDuration, - local_key: Arc, + local_key: Arc

, client: Arc, block_import: Arc, env: Arc, @@ -201,8 +207,10 @@ pub fn start_aura( <>::Create as IntoFuture>::Future: Send + 'static, I: BlockImport + Send + Sync + 'static, Error: From + From, + P: Pair + Send + Sync + 'static, + P::Public: Hash + Eq + Send + Sync + Clone + Debug + Encode + Decode + 'static, SO: SyncOracle + Send + Sync + Clone, - DigestItemFor: CompatibleDigestItem + DigestItem, + DigestItemFor: CompatibleDigestItem

+ DigestItem>, Error: ::std::error::Error + Send + 'static + From<::consensus_common::Error>, OnExit: Future, { @@ -219,24 +227,26 @@ pub fn start_aura( ) } -struct AuraWorker { +struct AuraWorker { client: Arc, block_import: Arc, env: Arc, - local_key: Arc, + local_key: Arc

, sync_oracle: SO, inherent_data_providers: InherentDataProviders, } -impl SlotWorker for AuraWorker where +impl SlotWorker for AuraWorker where C: Authorities, E: Environment, E::Proposer: Proposer, <>::Create as IntoFuture>::Future: Send + 'static, I: BlockImport + Send + Sync + 'static, + P: Pair + Send + Sync + 'static, + P::Public: Hash + Eq + Send + Sync + Clone + Debug + Encode + Decode + 'static, Error: From + From, SO: SyncOracle + Send + Clone, - DigestItemFor: CompatibleDigestItem + DigestItem, + DigestItemFor: CompatibleDigestItem

+ DigestItem>, Error: ::std::error::Error + Send + 'static + From<::consensus_common::Error>, { type OnSlot = Box + Send>; @@ -284,10 +294,10 @@ impl SlotWorker for AuraWorker whe ); return Box::new(future::ok(())); } - - let proposal_work = match slot_author(slot_num, &authorities) { + let maybe_author = slot_author::

(slot_num, &authorities); + let proposal_work = match maybe_author { None => return Box::new(future::ok(())), - Some(author) => if author.0 == public_key.0 { + Some(author) => if author == public_key { debug!( target: "aura", "Starting authorship at slot {}; timestamp = {}", slot_num, @@ -347,7 +357,7 @@ impl SlotWorker for AuraWorker whe // add it to a digest item. let to_sign = (slot_num, pre_hash).encode(); let signature = pair.sign(&to_sign[..]); - let item = as CompatibleDigestItem>::aura_seal( + let item = as CompatibleDigestItem

>::aura_seal( slot_num, signature, ); @@ -391,9 +401,10 @@ impl SlotWorker for AuraWorker whe /// if it's successful, returns the pre-header, the slot number, and the signat. // // FIXME #1018 needs misbehavior types -fn check_header(slot_now: u64, mut header: B::Header, hash: B::Hash, authorities: &[AuthorityId]) - -> Result, String> - where DigestItemFor: CompatibleDigestItem +fn check_header(slot_now: u64, mut header: B::Header, hash: B::Hash, authorities: &[AuthorityId

]) + -> Result, String> + where DigestItemFor: CompatibleDigestItem

, + P::Public: Clone + AsRef, { let digest_item = match header.digest_mut().pop() { Some(x) => x, @@ -411,16 +422,16 @@ fn check_header(slot_now: u64, mut header: B::Header, hash: B::Hash, a // check the signature is valid under the expected authority and // chain state. - let expected_author = match slot_author(slot_num, &authorities) { + let expected_author = match slot_author::

(slot_num, &authorities) { None => return Err("Slot Author not found".to_string()), Some(author) => author }; let pre_hash = header.hash(); let to_sign = (slot_num, pre_hash).encode(); - let public = ed25519::Public(expected_author.0); + let public = expected_author; - if ed25519::Pair::verify(&sig, &to_sign[..], public) { + if P::verify(&sig, &to_sign[..], public) { Ok(CheckedHeader::Checked(header, slot_num, sig)) } else { Err(format!("Bad signature on {:?}", hash)) @@ -442,13 +453,15 @@ pub trait ExtraVerification: Send + Sync { } /// A verifier for Aura blocks. -pub struct AuraVerifier { +pub struct AuraVerifier { client: Arc, extra: E, + phantom: PhantomData

, inherent_data_providers: inherents::InherentDataProviders, } -impl AuraVerifier +impl AuraVerifier + where P: Send + Sync + 'static { fn check_inherents( &self, @@ -511,11 +524,13 @@ impl ExtraVerification for NothingExtra { } } -impl Verifier for AuraVerifier where +impl Verifier for AuraVerifier where C: Authorities + ProvideRuntimeApi + Send + Sync, C::Api: BlockBuilderApi, - DigestItemFor: CompatibleDigestItem + DigestItem, + DigestItemFor: CompatibleDigestItem

+ DigestItem>, E: ExtraVerification, + P: Pair + Send + Sync + 'static, + P::Public: Send + Sync + Hash + Eq + Clone + Decode + Encode + Debug + AsRef + 'static, { fn verify( &self, @@ -523,7 +538,7 @@ impl Verifier for AuraVerifier where header: B::Header, justification: Option, mut body: Option>, - ) -> Result<(ImportBlock, Option>), String> { + ) -> Result<(ImportBlock, Option>>), String> { let mut inherent_data = self.inherent_data_providers.create_inherent_data().map_err(String::from)?; let (timestamp_now, slot_now) = AuraSlotCompatible::extract_timestamp_and_slot(&inherent_data) .map_err(|e| format!("Could not extract timestamp and slot: {:?}", e))?; @@ -539,7 +554,7 @@ impl Verifier for AuraVerifier where // we add one to allow for some small drift. // FIXME #1019 in the future, alter this queue to allow deferring of headers - let checked_header = check_header::(slot_now + 1, header, hash, &authorities[..])?; + let checked_header = check_header::(slot_now + 1, header, hash, &authorities[..])?; match checked_header { CheckedHeader::Checked(pre_header, slot_num, sig) => { let item = >::aura_seal(slot_num, sig); @@ -617,7 +632,7 @@ fn register_aura_inherent_data_provider( } /// Start an import queue for the Aura consensus algorithm. -pub fn import_queue( +pub fn import_queue( slot_duration: SlotDuration, block_import: SharedBlockImport, justification_import: Option>, @@ -628,13 +643,20 @@ pub fn import_queue( B: Block, C: 'static + Authorities + ProvideRuntimeApi + Send + Sync, C::Api: BlockBuilderApi, - DigestItemFor: CompatibleDigestItem + DigestItem, + DigestItemFor: CompatibleDigestItem

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 delta 163171 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 Date: Fri, 22 Mar 2019 13:13:37 +0100 Subject: [PATCH 061/120] Ci update names and chart (#2076) * add option to specifiy substrate node name via environment variable file * gitlab-ci: change job names and adopt to polkadot pipeline * upgrade helm chart Signed-off-by: gabriel --- .gitlab-ci.yml | 126 +++++++++++------- scripts/kubernetes/Chart.yaml | 2 +- .../templates/poddisruptionbudget.yaml | 4 +- scripts/kubernetes/templates/secrets.yaml | 4 +- scripts/kubernetes/templates/service.yaml | 31 ++++- .../kubernetes/templates/serviceaccount.yaml | 2 +- scripts/kubernetes/templates/statefulset.yaml | 38 +++--- scripts/kubernetes/values.yaml | 14 +- 8 files changed, 142 insertions(+), 79 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b6f5116f7b..f4f42ef49a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,9 @@ # .gitlab-ci.yml - +# +# substrate +# +# pipelines can be triggered manually in the web +# setting DEPLOY_TAG will only deploy the tagged image stages: @@ -22,7 +26,7 @@ variables: cache: {} -.collect_artifacts: &collect_artifacts +.collect-artifacts: &collect-artifacts artifacts: name: "${CI_JOB_NAME}_${CI_COMMIT_REF_NAME}" when: on_success @@ -32,7 +36,7 @@ cache: {} -.kubernetes_build: &kubernetes_build +.kubernetes-build: &kubernetes-build tags: - kubernetes-parity-build environment: @@ -42,11 +46,11 @@ cache: {} #### stage: merge-test -check:merge:conflict: +check-merge-conflict: stage: merge-test image: parity/tools:latest cache: {} - <<: *kubernetes_build + <<: *kubernetes-build only: - /^[0-9]+$/ variables: @@ -61,11 +65,11 @@ check:merge:conflict: #### stage: test -check:runtime: +check-runtime: stage: test image: parity/tools:latest cache: {} - <<: *kubernetes_build + <<: *kubernetes-build only: - /^[0-9]+$/ variables: @@ -77,10 +81,10 @@ check:runtime: -test:rust:stable: &test +test-linux-stable: &test stage: test cache: - key: "${CI_JOB_NAME}-test" + key: "${CI_JOB_NAME}" paths: - ${CARGO_HOME} - ./target @@ -98,6 +102,9 @@ test:rust:stable: &test - schedules - web - /^[0-9]+$/ + except: + variables: + - $DEPLOY_TAG before_script: - test -d ${CARGO_HOME} -a -d ./target && echo "build cache size:" && @@ -110,7 +117,7 @@ test:rust:stable: &test -.build_only: &build_only +.build-only: &build-only only: - master - tags @@ -119,15 +126,18 @@ test:rust:stable: &test #### stage: build -build:rust:linux:release: &build +build-linux-release: &build stage: build cache: - key: "${CI_JOB_NAME}-build" + key: "${CI_JOB_NAME}" paths: - ${CARGO_HOME} - ./target - <<: *collect_artifacts - <<: *build_only + <<: *collect-artifacts + <<: *build-only + except: + variables: + - $DEPLOY_TAG tags: - linux-docker before_script: @@ -151,7 +161,7 @@ build:rust:linux:release: &build -build:rust:doc:release: &build +build-rust-doc-release: &build stage: build allow_failure: true artifacts: @@ -160,7 +170,7 @@ build:rust:doc:release: &build expire_in: 7 days paths: - ./crate-docs - <<: *build_only + <<: *build-only tags: - linux-docker script: @@ -174,35 +184,38 @@ build:rust:doc:release: &build #### stage: publish -.publish_build: &publish_build +.publish-build: &publish-build stage: publish dependencies: - - build:rust:linux:release + - build-linux-release cache: {} - <<: *build_only - <<: *kubernetes_build + <<: *build-only + <<: *kubernetes-build -publish:docker:release: - <<: *publish_build +publish-docker-release: + <<: *publish-build image: docker:stable services: - docker:dind # collect VERSION artifact here to pass it on to kubernetes - <<: *collect_artifacts + <<: *collect-artifacts variables: DOCKER_HOST: tcp://localhost:2375 DOCKER_DRIVER: overlay2 GIT_STRATEGY: none # DOCKERFILE: scripts/docker/Dockerfile CONTAINER_IMAGE: parity/substrate - script: - - VERSION="$(cat ./artifacts/VERSION)" + before_script: - test "$Docker_Hub_User_Parity" -a "$Docker_Hub_Pass_Parity" || ( echo "no docker credentials provided"; exit 1 ) - docker login -u "$Docker_Hub_User_Parity" -p "$Docker_Hub_Pass_Parity" - docker info + script: + - VERSION="$(cat ./artifacts/VERSION)" + - echo "Substrate version = ${VERSION}" + - test -z "${VERSION}" && exit 1 - cd ./artifacts - docker build --tag $CONTAINER_IMAGE:$VERSION --tag $CONTAINER_IMAGE:latest . - docker push $CONTAINER_IMAGE:$VERSION @@ -215,8 +228,8 @@ publish:docker:release: -publish:s3:release: - <<: *publish_build +publish-s3-release: + <<: *publish-build image: parity/awscli:latest variables: GIT_STRATEGY: none @@ -237,14 +250,14 @@ publish:s3:release: -publish:s3:doc: +publish-s3-doc: stage: publish allow_failure: true dependencies: - - build:rust:doc:release + - build-rust-doc-release cache: {} - <<: *build_only - <<: *kubernetes_build + <<: *build-only + <<: *kubernetes-build variables: GIT_STRATEGY: none BUCKET: "releases.parity.io" @@ -264,20 +277,15 @@ publish:s3:doc: - - -.deploy:template: &deploy +.deploy-template: &deploy stage: deploy when: manual cache: {} - dependencies: - - publish:docker:release retry: 1 image: parity/kubectl-helm:$HELM_VERSION - <<: *build_only - # variables: - # DEPLOY_TAG: "latest" + <<: *build-only tags: + # this is the runner that is used to deploy it - kubernetes-parity-build before_script: - test -z "${DEPLOY_TAG}" && @@ -292,28 +300,56 @@ publish:s3:doc: --set image.tag=${DEPLOY_TAG} --set validator.keys=${VALIDATOR_KEYS} ./scripts/kubernetes | kubectl apply -f - --dry-run=false - - echo "# substrate namespace" - - kubectl -n substrate get all + - echo "# substrate namespace ${KUBE_NAMESPACE}" + - kubectl -n ${KUBE_NAMESPACE} get all - echo "# substrate's nodes' external ip addresses:" - kubectl get nodes -l node=substrate -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{range @.status.addresses[?(@.type=="ExternalIP")]}{.address}{"\n"}{end}' - echo "# substrate' nodes" - - kubectl -n substrate get pods + - kubectl -n ${KUBE_NAMESPACE} get pods -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.spec.nodeName}{"\n"}{end}' + - echo "# wait for the rollout to complete" + - kubectl -n ${KUBE_NAMESPACE} rollout status statefulset/substrate # have environment:url eventually point to the logs -deploy:ew3: + +.deploy-cibuild: &deploy-cibuild + <<: *deploy + dependencies: + - publish-docker-release + +.deploy-tag: &deploy-tag <<: *deploy + only: + variables: + - $DEPLOY_TAG + + + +# have environment:url eventually point to the logs +deploy-ew3: + <<: *deploy-cibuild environment: name: parity-prod-ew3 -deploy:ue1: - <<: *deploy +deploy-ue1: + <<: *deploy-cibuild environment: name: parity-prod-ue1 +deploy-ew3-tag: + <<: *deploy-tag + environment: + name: parity-prod-ew3 + +deploy-ue1-tag: + <<: *deploy-tag + environment: + name: parity-prod-ue1 + + diff --git a/scripts/kubernetes/Chart.yaml b/scripts/kubernetes/Chart.yaml index 4dd133c860..8e000ae09f 100644 --- a/scripts/kubernetes/Chart.yaml +++ b/scripts/kubernetes/Chart.yaml @@ -1,5 +1,5 @@ name: substrate -version: 0.1 +version: 0.2 appVersion: 0.9.1 description: "Substrate: The platform for blockchain innovators" home: https://substrate.network/ diff --git a/scripts/kubernetes/templates/poddisruptionbudget.yaml b/scripts/kubernetes/templates/poddisruptionbudget.yaml index af40522842..56958b1fba 100644 --- a/scripts/kubernetes/templates/poddisruptionbudget.yaml +++ b/scripts/kubernetes/templates/poddisruptionbudget.yaml @@ -1,10 +1,10 @@ apiVersion: policy/v1beta1 kind: PodDisruptionBudget metadata: - name: substrate + name: {{ .Values.GitlabEnvSlug | default .Values.app }} spec: selector: matchLabels: - app: substrate + app: {{ .Values.GitlabEnvSlug | default .Values.app }} maxUnavailable: 1 diff --git a/scripts/kubernetes/templates/secrets.yaml b/scripts/kubernetes/templates/secrets.yaml index e007384482..97e73ae7ff 100644 --- a/scripts/kubernetes/templates/secrets.yaml +++ b/scripts/kubernetes/templates/secrets.yaml @@ -2,9 +2,9 @@ apiVersion: v1 kind: Secret metadata: - name: substrate-secrets + name: {{ .Values.app }}-secrets labels: - app: substrate + app: {{ .Values.GitlabEnvSlug | default .Values.app }} type: Opaque data: secrets: {{ .Values.validator.keys | default "" }} diff --git a/scripts/kubernetes/templates/service.yaml b/scripts/kubernetes/templates/service.yaml index 27baa59dc4..eb986adbca 100644 --- a/scripts/kubernetes/templates/service.yaml +++ b/scripts/kubernetes/templates/service.yaml @@ -5,9 +5,7 @@ apiVersion: v1 kind: Service metadata: - name: substrate-rpc - labels: - app: substrate + name: {{ .Values.app }}-rpc spec: ports: - port: 9933 @@ -15,15 +13,16 @@ spec: - port: 9944 name: websocket-rpc selector: - app: substrate + app: {{ .Values.GitlabEnvSlug | default .Values.app }} sessionAffinity: None type: ClusterIP clusterIP: None --- +{{- if .Values.listen_node_port }} apiVersion: v1 kind: Service metadata: - name: substrate + name: {{ .Values.app }} spec: ports: - port: 30333 @@ -31,9 +30,27 @@ spec: nodePort: 30333 protocol: TCP selector: - app: substrate + app: {{ .Values.GitlabEnvSlug | default .Values.app }} sessionAffinity: None type: NodePort # don't route exteral traffic to non-local pods externalTrafficPolicy: Local - +{{- else }} +{{- if .Values.validator.keys }} +{{- $root := . -}} +{{- range until (int .Values.nodes.replicas) }} +--- +kind: Service +apiVersion: v1 +metadata: + name: {{ $root.Values.app }}-{{ . }} +spec: + selector: + statefulset.kubernetes.io/pod-name: {{ $root.Values.app }}-{{ . }} + ports: + - port: 30333 + targetPort: 30333 + protocol: TCP +{{- end }} +{{- end }} +{{- end }} diff --git a/scripts/kubernetes/templates/serviceaccount.yaml b/scripts/kubernetes/templates/serviceaccount.yaml index 5a0018a121..53d016bffe 100644 --- a/scripts/kubernetes/templates/serviceaccount.yaml +++ b/scripts/kubernetes/templates/serviceaccount.yaml @@ -5,6 +5,6 @@ apiVersion: v1 kind: ServiceAccount metadata: labels: - app: substrate + app: {{ .Values.GitlabEnvSlug | default .Values.app }} name: {{ .Values.rbac.name }} {{- end }} diff --git a/scripts/kubernetes/templates/statefulset.yaml b/scripts/kubernetes/templates/statefulset.yaml index ec491f6349..27ea85e9b7 100644 --- a/scripts/kubernetes/templates/statefulset.yaml +++ b/scripts/kubernetes/templates/statefulset.yaml @@ -3,12 +3,12 @@ apiVersion: apps/v1 kind: StatefulSet metadata: - name: substrate + name: {{ .Values.app }} spec: selector: matchLabels: - app: substrate - serviceName: substrate + app: {{ .Values.GitlabEnvSlug | default .Values.app }} + serviceName: {{ .Values.app }} replicas: {{ .Values.nodes.replicas }} updateStrategy: type: RollingUpdate @@ -16,7 +16,7 @@ spec: template: metadata: labels: - app: substrate + app: {{ .Values.GitlabEnvSlug | default .Values.app }} spec: {{- if .Values.rbac.enable }} serviceAccountName: {{ .Values.rbac.name }} @@ -32,6 +32,7 @@ spec: operator: In values: - substrate + {{- if .Values.listen_node_port }} podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: @@ -39,14 +40,15 @@ spec: - key: "app" operator: In values: - - substrate + - {{ .Values.app }} topologyKey: "kubernetes.io/hostname" + {{- end }} terminationGracePeriodSeconds: 300 {{- if .Values.validator.keys }} volumes: - - name: substrate-validator-secrets + - name: {{ .Values.app }}-validator-secrets secret: - secretName: substrate-secrets + secretName: {{ .Values.app }}-secrets initContainers: - name: prepare-secrets image: busybox @@ -54,7 +56,9 @@ spec: args: - -c - sed -n -r "s/^${POD_NAME}-key ([^ ]+)$/\1/p" /etc/validator/secrets > {{ .Values.image.basepath }}/key; - sed -n -r "s/^${POD_NAME}-node-key ([^ ]+)$/\1/p" /etc/validator/secrets > {{ .Values.image.basepath }}/node-key + sed -n -r "s/^${POD_NAME}-node-key ([^ ]+)$/\1/p" /etc/validator/secrets > {{ .Values.image.basepath }}/node-key; + sed -n -r "s/^${POD_NAME}-name ([^ ]+)$/\1/p" /etc/validator/secrets > {{ .Values.image.basepath }}/name; + test -z {{ .Values.image.basepath }}/name && echo "${POD_NAME}" > {{ .Values.image.basepath }}/name env: # from (workaround for hostname) # https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/ @@ -63,14 +67,14 @@ spec: fieldRef: fieldPath: metadata.name volumeMounts: - - name: substrate-validator-secrets + - name: {{ .Values.app }}-validator-secrets readOnly: true mountPath: "/etc/validator" - - name: substratedir + - name: {{ .Values.app }}dir mountPath: {{ .Values.image.basepath }} {{- end }} containers: - - name: substrate + - name: {{ .Values.app }} imagePullPolicy: "{{ .Values.image.pullPolicy }}" image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" {{- if .Values.resources }} @@ -91,13 +95,13 @@ spec: - -c - exec /usr/local/bin/substrate --base-path {{ .Values.image.basepath }} - --name $(POD_NAME) - {{- if .Values.validator.enable }} - --validator - {{- end }} {{- if .Values.validator.keys }} + --validator + --name $(cat {{ .Values.image.basepath }}/name) --key $(cat {{ .Values.image.basepath }}/key) --node-key $(cat {{ .Values.image.basepath }}/node-key) + {{- else }} + --name $(POD_NAME) {{- end }} {{- range .Values.nodes.args }} {{ . }} {{- end }} env: @@ -106,7 +110,7 @@ spec: fieldRef: fieldPath: metadata.name volumeMounts: - - name: substratedir + - name: {{ .Values.app }}dir mountPath: {{ .Values.image.basepath }} readinessProbe: httpGet: @@ -125,7 +129,7 @@ spec: fsGroup: 1000 volumeClaimTemplates: - metadata: - name: substratedir + name: {{ .Values.app }}dir spec: accessModes: [ "ReadWriteOnce" ] storageClassName: ssd diff --git a/scripts/kubernetes/values.yaml b/scripts/kubernetes/values.yaml index 213ccaebe4..f56cea2993 100644 --- a/scripts/kubernetes/values.yaml +++ b/scripts/kubernetes/values.yaml @@ -12,6 +12,10 @@ rbac: name: substrate +# name of the statefulset +app: substrate +listen_node_port: true + nodes: replicas: 2 args: @@ -29,15 +33,17 @@ nodes: # - sub-libp2p=trace -validator: - enable: True - # adds --validator commandline option +validator: {} + # providing 'keys' string via --set commandline parameter will run the nodes + # in validator mode (--validator). # - # key and node-key can be given in a base64 encoded keyfile string (at + # name, key and node-key can be given in a base64 encoded keyfile string (at # validator.keys) which has the following format: # + # substrate-0-name # substrate-0-key # substrate-0-node-key + # substrate-1-name # substrate-1-key # substrate-1-node-key # -- GitLab From b6e5b68474d8b0859e75099da8f17c25260fe338 Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Fri, 22 Mar 2019 16:27:50 +0100 Subject: [PATCH 062/120] Don't sync on top of pruned blocks (#2079) * Don't sync to pruned blocks * Typo Co-Authored-By: arkpar --- core/client/db/src/lib.rs | 4 ++++ core/client/src/backend.rs | 4 ++++ core/client/src/client.rs | 36 ++++++++++++++++++++--------- core/client/src/light/blockchain.rs | 2 +- core/network/src/sync.rs | 34 +++++++++++++++++++-------- 5 files changed, 59 insertions(+), 21 deletions(-) diff --git a/core/client/db/src/lib.rs b/core/client/db/src/lib.rs index d276992f08..5d8d3cb606 100644 --- a/core/client/db/src/lib.rs +++ b/core/client/db/src/lib.rs @@ -1169,6 +1169,10 @@ impl client::backend::Backend for Backend whe } } + fn have_state_at(&self, hash: &Block::Hash, number: NumberFor) -> bool { + !self.storage.state_db.is_pruned(hash, number.as_()) + } + fn destroy_state(&self, mut state: Self::State) -> Result<(), client::error::Error> { if let Some(hash) = state.parent_hash.clone() { let is_best = || self.blockchain.meta.read().best_hash == hash; diff --git a/core/client/src/backend.rs b/core/client/src/backend.rs index a0975db888..9b063177ff 100644 --- a/core/client/src/backend.rs +++ b/core/client/src/backend.rs @@ -142,6 +142,10 @@ pub trait Backend: AuxStore + Send + Sync where fn blockchain(&self) -> &Self::Blockchain; /// Returns reference to changes trie storage. fn changes_trie_storage(&self) -> Option<&Self::ChangesTrieStorage>; + /// Returns true if state for given block is available. + fn have_state_at(&self, hash: &Block::Hash, _number: NumberFor) -> bool { + self.state_at(BlockId::Hash(hash.clone())).is_ok() + } /// Returns state backend with post-state of given block. fn state_at(&self, block: BlockId) -> error::Result; /// Destroy state and save any useful data, such as cache. diff --git a/core/client/src/client.rs b/core/client/src/client.rs index 34723deb8c..37ee1b5ce0 100644 --- a/core/client/src/client.rs +++ b/core/client/src/client.rs @@ -167,8 +167,10 @@ pub struct ClientInfo { pub enum BlockStatus { /// Added to the import queue. Queued, - /// Already in the blockchain. - InChain, + /// Already in the blockchain and the state is available. + InChainWithState, + /// In the blockchain, but the state is not available. + InChainPruned, /// Block or parent is known to be bad. KnownBad, /// Not in the queue or the blockchain. @@ -1073,9 +1075,19 @@ impl Client where return Ok(BlockStatus::Queued); } } - match self.backend.blockchain().header(*id).map_err(|e| error::Error::from_blockchain(Box::new(e)))?.is_some() { - true => Ok(BlockStatus::InChain), - false => Ok(BlockStatus::Unknown), + let hash_and_number = match id.clone() { + BlockId::Hash(hash) => self.backend.blockchain().number(hash)?.map(|n| (hash, n)), + BlockId::Number(n) => self.backend.blockchain().hash(n)?.map(|hash| (hash, n)), + }; + match hash_and_number { + Some((hash, number)) => { + if self.backend().have_state_at(&hash, number) { + Ok(BlockStatus::InChainWithState) + } else { + Ok(BlockStatus::InChainPruned) + } + } + None => Ok(BlockStatus::Unknown), } } @@ -1386,18 +1398,20 @@ impl consensus::BlockImport for Client hash: Block::Hash, parent_hash: Block::Hash, ) -> Result { - match self.backend.blockchain().status(BlockId::Hash(parent_hash)) + match self.block_status(&BlockId::Hash(parent_hash)) .map_err(|e| ConsensusError::from(ConsensusErrorKind::ClientImport(e.to_string())))? { - blockchain::BlockStatus::InChain => {}, - blockchain::BlockStatus::Unknown => return Ok(ImportResult::UnknownParent), + BlockStatus::InChainWithState | BlockStatus::Queued => {}, + BlockStatus::Unknown | BlockStatus::InChainPruned => return Ok(ImportResult::UnknownParent), + BlockStatus::KnownBad => return Ok(ImportResult::KnownBad), } - match self.backend.blockchain().status(BlockId::Hash(hash)) + match self.block_status(&BlockId::Hash(hash)) .map_err(|e| ConsensusError::from(ConsensusErrorKind::ClientImport(e.to_string())))? { - blockchain::BlockStatus::InChain => return Ok(ImportResult::AlreadyInChain), - blockchain::BlockStatus::Unknown => {}, + BlockStatus::InChainWithState | BlockStatus::Queued => return Ok(ImportResult::AlreadyInChain), + BlockStatus::Unknown | BlockStatus::InChainPruned => {}, + BlockStatus::KnownBad => return Ok(ImportResult::KnownBad), } Ok(ImportResult::imported()) diff --git a/core/client/src/light/blockchain.rs b/core/client/src/light/blockchain.rs index 973096ad0c..add183f67d 100644 --- a/core/client/src/light/blockchain.rs +++ b/core/client/src/light/blockchain.rs @@ -109,7 +109,7 @@ impl BlockchainHeaderBackend for Blockchain where Bloc }; // if the header is from future or genesis (we never prune genesis) => return - if number.is_zero() || self.storage.status(BlockId::Number(number))? != BlockStatus::InChain { + if number.is_zero() || self.storage.status(BlockId::Number(number))? == BlockStatus::Unknown { return Ok(None); } diff --git a/core/network/src/sync.rs b/core/network/src/sync.rs index 76dbeabe79..14222798ef 100644 --- a/core/network/src/sync.rs +++ b/core/network/src/sync.rs @@ -46,7 +46,6 @@ const JUSTIFICATION_RETRY_WAIT: Duration = Duration::from_secs(10); // Number of recently announced blocks to track for each peer. const ANNOUNCE_HISTORY_SIZE: usize = 64; // Max number of blocks to download for unknown forks. -// TODO: this should take finality into account. See https://github.com/paritytech/substrate/issues/1606 const MAX_UNKNOWN_FORK_DOWNLOAD_LEN: u32 = 32; #[derive(Debug)] @@ -500,7 +499,7 @@ impl ChainSync { self.download_new(protocol, who) } }, - (Ok(BlockStatus::Queued), _) | (Ok(BlockStatus::InChain), _) => { + (Ok(BlockStatus::Queued), _) | (Ok(BlockStatus::InChainWithState), _) | (Ok(BlockStatus::InChainPruned), _) => { debug!(target:"sync", "New peer with known best hash {} ({}).", info.best_hash, info.best_number); self.peers.insert(who, PeerSync { common_number: info.best_number, @@ -834,7 +833,11 @@ impl ChainSync { trace!(target: "sync", "Ignored invalid block announcement from {}: {}", who, hash); return; } - let known_parent = self.is_known(protocol, &header.parent_hash()); + let parent_status = block_status(&*protocol.client(), &self.queue_blocks, header.parent_hash().clone()).ok() + .unwrap_or(BlockStatus::Unknown); + let known_parent = parent_status != BlockStatus::Unknown; + let ancient_parent = parent_status == BlockStatus::InChainPruned; + let known = self.is_known(protocol, &hash); if let Some(ref mut peer) = self.peers.get_mut(&who) { while peer.recently_announced.len() >= ANNOUNCE_HISTORY_SIZE { @@ -862,15 +865,28 @@ impl ChainSync { let stale = number <= self.best_queued_number; if stale { if !(known_parent || self.is_already_downloading(header.parent_hash())) { - trace!(target: "sync", "Considering new unknown stale block announced from {}: {} {:?}", who, hash, header); - self.download_unknown_stale(protocol, who, &hash); + if protocol.client().block_status(&BlockId::Number(*header.number())) + .unwrap_or(BlockStatus::Unknown) == BlockStatus::InChainPruned + { + trace!(target: "sync", "Ignored unknown ancient block announced from {}: {} {:?}", who, hash, header); + } else { + trace!(target: "sync", "Considering new unknown stale block announced from {}: {} {:?}", who, hash, header); + self.download_unknown_stale(protocol, who, &hash); + } } else { - trace!(target: "sync", "Considering new stale block announced from {}: {} {:?}", who, hash, header); - self.download_stale(protocol, who, &hash); + if ancient_parent { + trace!(target: "sync", "Ignored ancient stale block announced from {}: {} {:?}", who, hash, header); + } else { + self.download_stale(protocol, who, &hash); + } } } else { - trace!(target: "sync", "Considering new block announced from {}: {} {:?}", who, hash, header); - self.download_new(protocol, who); + if ancient_parent { + trace!(target: "sync", "Ignored ancient block announced from {}: {} {:?}", who, hash, header); + } else { + trace!(target: "sync", "Considering new block announced from {}: {} {:?}", who, hash, header); + self.download_new(protocol, who); + } } } else { trace!(target: "sync", "Known block announce from {}: {}", who, hash); -- GitLab From 0c087c7d8755dc8424256c95d6e50226ef4f08d1 Mon Sep 17 00:00:00 2001 From: cheme Date: Fri, 22 Mar 2019 18:01:06 +0100 Subject: [PATCH 063/120] Switch contract storage to child trie (#2002) --- core/state-machine/src/testing.rs | 17 ++- .../substrate_test_runtime.compact.wasm | Bin 56572 -> 179788 bytes node-template/runtime/src/template.rs | 2 +- node/runtime/src/lib.rs | 3 +- .../release/node_runtime.compact.wasm | Bin 898586 -> 1050673 bytes srml/assets/src/lib.rs | 2 +- srml/aura/src/mock.rs | 2 +- srml/balances/src/mock.rs | 2 +- srml/consensus/src/mock.rs | 2 +- srml/contract/src/account_db.rs | 125 +++++++++++++++--- srml/contract/src/exec.rs | 24 ++-- srml/contract/src/lib.rs | 87 ++++++++---- srml/contract/src/tests.rs | 51 +++++-- srml/council/src/lib.rs | 2 +- srml/democracy/src/lib.rs | 2 +- srml/example/src/lib.rs | 2 +- srml/grandpa/src/mock.rs | 2 +- srml/session/src/lib.rs | 2 +- srml/staking/src/mock.rs | 2 +- srml/support/src/storage/mod.rs | 114 ++++++++++++++++ srml/system/src/lib.rs | 2 +- srml/timestamp/src/lib.rs | 2 +- srml/treasury/src/lib.rs | 2 +- 23 files changed, 363 insertions(+), 86 deletions(-) diff --git a/core/state-machine/src/testing.rs b/core/state-machine/src/testing.rs index 216b3ebdc2..a9ed13eb8e 100644 --- a/core/state-machine/src/testing.rs +++ b/core/state-machine/src/testing.rs @@ -107,6 +107,9 @@ impl From< HashMap, Vec> > for TestExternalities where } } +// TODO child test primitives are currently limited to `changes` (for non child the way +// things are defined seems utterly odd to (put changes in changes but never make them +// available for read through inner) impl Externalities for TestExternalities where H::Out: Ord + HeapSizeOf { fn storage(&self, key: &[u8]) -> Option> { match key { @@ -115,8 +118,8 @@ impl Externalities for TestExternalities where H::Out: Ord + He } } - fn child_storage(&self, _storage_key: &[u8], _key: &[u8]) -> Option> { - None + fn child_storage(&self, storage_key: &[u8], key: &[u8]) -> Option> { + self.changes.child_storage(storage_key, key)?.map(Vec::from) } fn place_storage(&mut self, key: Vec, maybe_value: Option>) { @@ -132,11 +135,15 @@ impl Externalities for TestExternalities where H::Out: Ord + He } } - fn place_child_storage(&mut self, _storage_key: Vec, _key: Vec, _value: Option>) -> bool { - false + fn place_child_storage(&mut self, storage_key: Vec, key: Vec, value: Option>) -> bool { + self.changes.set_child_storage(storage_key, key, value); + // TODO place_child_storage and set_child_storage should always be valid (create child on set)? + true } - fn kill_child_storage(&mut self, _storage_key: &[u8]) { } + fn kill_child_storage(&mut self, storage_key: &[u8]) { + self.changes.clear_child_storage(storage_key); + } fn clear_prefix(&mut self, prefix: &[u8]) { self.changes.clear_prefix(prefix); diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 4f75adc74d29efaf20706fd240ba8a67443f1d70..6e4e047e40f256bdba03d331c8e6f72332e63c24 100644 GIT binary patch literal 179788 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 delta 9987 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 ffkY^E`2t;22vG4Py@{Ad^0?gLMwhqI; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 1f52620cd4..c069bed172 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -59,7 +59,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 38, - impl_version: 39, + impl_version: 40, apis: RUNTIME_API_VERSIONS, }; @@ -172,6 +172,7 @@ impl contract::Trait for Runtime { type Gas = u64; type DetermineContractAddress = contract::SimpleAddressDeterminator; type ComputeDispatchFee = contract::DefaultDispatchFeeComputor; + type TrieIdGenerator = contract::TrieIdFromParentCounter; type GasPayment = (); } diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 5076de93a3bb3a32a54355621ba0312dd0b0880e..36103fef20f90dc4620feca9b19072b756d9eacc 100644 GIT binary patch literal 1050673 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

HmH;NhN9)RZ~a}(6|>GRu2@P zTvr`LK@vmig2pol@Kq9lzSpOpHb8x0g4JI@1x!nt^zuH!BYnU3mI}tb4ub6a)W=G* zjYcvxI(;#jm~PEB=f-9y8q=*4&58PWGTTU6XPXn#=X5oiOpZ3s)SJoJ=*;NY#O%d` zjp^Cu=-6yh8yjoPP0t?GpL#QWe9vg>_)J~TLpdHCZBC5U(+3A88)N5qdjG`KL{^M4 zt=Wlbij8MQLm!8yPdAR7P8(2>Jv%WvTOW@l>*L4A z&eq50ChM=B8P|)uCR#J2vwD`)nA+rIa$&TUjAu_zHycyQ?Ady9X5xH(IvMrJ4kssg zbgI#qOj;9Xrbj1R$%V6ZiZzpoS!<#-H#SypwNB4XCiO?_V{?LQ(r6~rjae!;C(Zy% zI;GaMH9t1jYyz#M6~>oLw30a=<8Y$kCl@AW&sx#eOnq$Pv{vXW6V;#ORGns8fTBLG z(gEV*^_j`WMarGJn2e5(HyKYdI=i5a@Ir$coo=0G24_cSSU9SUX!0Y;rv1stY-7X+ z;9wXzKRP*AA4%wXX0$n*G){vcBU5z1T5J*=M>N@yv1T18j|@-Mry9+RRGI+lf<(R9 zWUv5cc&1rDJ$mZoR70yWJTX1NicPW<)9YuMR&vH#Xfo(gYF%DoYV^^Gsky1!dVB2O z?Af_i@__ZWZ{KwNLNYbinibHK)1woUvD72=@y(5y+0ENdY~Ng;s)LoAoAs&9t+`Xs z00Z9KYEDgV9t&{fZfrAXF}0aN4mVo?<&tKDX081xp^%0+D;ye|n-ppdUqKfEHO{NY zvCWecr)d7Ji8FP^JTY6Jdal+VoSQnuVgdQ_tU~L#YSh5)`lGW@bZcU)1#LIxCWS-i z>xL3z4KNUTo^DK!)el`(PB5%LI#w4tiExuik?rDbvTifY#!S6AdC};jKE8N4>$_E- z9%mw>rzROk1AMxu;Y>7>)Ac%>2&9C|2xl01JqL6;F@zdEI%FH95mztb%iN$xi==D2K|A=j3f{RKs%GP8dDJc=;SB>(on?~yruDsF<6@# zE(Gk$3&fz4(~Zf=#)a0tWRuk!XN@POofsl*Qe&(!#TW(S(H4I-YdVP_nhqq-qFdk0 zWSI5>Q&NxVaGcE3=29y6-bcpZ6$XiswsB4bW(4MgDMBvw19SjI+H_=r2j)(TT{P>n zb4{^}BpE%81h6Uru^kL8P|RSU#zq8xxPv#H*xnbFosL(qc&6#TjU#J+uqn*HkGq%h?m7x(ge`-%Oq zq|xMo(Q|bW!9;+GyNt_*#;*)7h7+-ex>gdN9pEX>3}YNlzPm9e)@H&s$R-LpyKb@C zfZ5o*vvO-=*cx(i)pBfzBH}bGcB&4@g`8$%`FgWu6eXr=2xg)q z6+XkU_VLhF1mD3h*7$pOy?zinIRLV9=`c0|sE0>U=sz&}=w0=h*|TjjpO>y8xa^Ca z#icoNx?LAYg}r$3zI{hcaJ+`=2TXR<+Vqfc=Nd!q#soKv-k6CgE?{g86=-HgP&`$i zy&zc%Tp9>zC=^+wl{D@$3IV#FBpd_(G!lEi5u6+yzX+8t!2jV~@}{JrVI4YPsMuX#(BWAEl9TfCK+utnRdNzB9>W{d|2=O*qwU zcK(7EGdgz8dz+EEs1l9oI

i&+(tK`#mM|`fZ;4&XFg3ypb}{TThuP3o^)^ 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 literal 898586 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

X02?w13uN#uSx;QC+WzLxw&%#cjt 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�Dfr{an!hLvi8$7Tzg4+5P+~q^ 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%0A|t(OAo^?PlJU1Kfd( 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®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�$T*W-} zSS|Ziy|Dq;0$9wUe_00%_JN#Hc zOfdwkycUuSH97m=PY6?mJPuG6&Ya?u$Y%+*-X!-(FXRw|uAcPz738)Cz=3r^a*0Ft zZ+oEo>`9=@*q9q8!2N0j?q8IE`}Hnx|6IV;oU)SKRVLzvJVJv+hyoiNeA;%c2fa4H z#~9F@sR!ffMPRrnDI#&?d>xZHnVjK@xDolfDTv+<_;+8vjyX+y9W6tAT_pYVd>t!O zU%vho`1(tlHy56vyIS`{XmZD)`%C%zOZoc=7|FOt3WXCXs5lZvTX#3_>5>qG&od^H z6*J6-o)$}Rp9@hzNKbk}YVq)*oOBc;4JcW_G%_?~!9Fk@i7+(|c50Ynxj(Bgy|#Ic zK>~z^z&AwO*%d&rKxVciYMW)O-yW-FI)MrRt z{cCPCo6NSj(d=A|W(}LeM0m*7N@^_RyK2_aJu}MZxLk?32kvps=eDvDUmuNYpOmwO zfnYY2ZDqy_HC>G~_1Ma0t?n}WwLADqy(%7KQhcOb5Qz3)F>y9jo~?C8Bu!88(x;57 zy`2Rq8fGNnkmdY0Cr_61n2GVc{7f@L7 zA8oP8n)%~(4{mAE%d!u}FGZQN_qf}(B%Aj$F)A#saQTydIo!NlcjBa0gOiY=Ek&ap z@e2x~d7CpBrF;Th8!-Owj;QxW){epBHAcA$~Mws%(_b3 zX$H$@nN5JcgSA^53`aSFIV|QJXRbvRtE3!?#OM)b{*_2rGtUmDQ4)ev7 zs_Y^F*wl>%(*<36ulUxpOWyc`QdTV8Y z9+<3LSwYeBMKisXc^iGz?u7MQt*vOIG(3g~1?(@G#YB3x0?O014-+Z8u1?EDQfDF` zF)%t8$wg7Bhn#lVNKN>{mNuXJRAES8pSMy<^kTZo@2Ud)FaJ{h}nr3@1ktMyx_W!Uc`VsBepeKj4qk#0b&ODKI==p9elSWIq-qU)e z(^8aVesnBIQ)Gc$?c(7(DsABvz_}otWDe;pk$_7@5h71uXMOGmO*5XMm)QR1J2%Dy zB;Qi^Z8l}tVMo9~OV0ci-89prdyvA5$%KImW6a!#UkW+cn(`cCHr0+tNk}ta1N9ik zPW-E`IYQ@zQeY|vF{$4Cr9m>Vb8HfX^eQq=m{$s_@>SXst|)F>xrnDz^8WMV$hmHm zBlk%d^NpjnyOi0rj7gMph7p0RB!6kTmgO(a*S_*s?^@+aiEm-KojZHzd1%9P&H1C% zTvv?p=WDI&n%66;0B8dyh`kuv+}sy!$R*_FY_w^xPr>upMJbJKMtPVee4qG%w&r45-Jwb9B(4e>6BB zNnlBftgL+=ouUPG@o~Q>(1rb-B}OimM2e)s+Azsx2%6%9OzVp=l~KOj zEj5W6iY|3p!u5Ili8HCCxiGJ*iy+VGzR*=#_@L(uC5HnoqRKF-P}0;a&-dn@*7>^L z4-n?@vxp8LUtO(S??BT|oP^fdiF5WfLa@Gu3hrrb@vpJr^P}?~Tl$(@g+LJvZ8@c^ zDO$YFrySDhbopV4@`2%O3FO&ge4+AXKtTCyh5=+SSR*tU$G6FNC{m|}C&j2>bEv84 zdbZMW+CuscGcDFIPwva?Sm#L}=E*&+O@v?pNwVey^n#$rb=2 zmqs~#!Z?qT<0p|Na`_1&!9sD5LaHuXSOI$L@kNX>Dj)zP8#4L*MY8F4uE_StUuNhN zG~L=+vX@B5H3ObxvtDb7w$hju>sHXCRWW$60}C}JY6|$vOxv_;<(moaF}sMOsZ(ET zfbvTXkl&LM2T6?|WapY~};QI(^%mHLnP7*MC9Rqq4(N{`R zuk-|GGTF~1r=vBd*a->OfFV99WG8G%COeslG$)SeUF`6Zo`p&!e#jnvsid4!vr*Uk zQ6r>ojWA(Q*{)Wu4(77SiWaKl)xe;-;&#m`VME^%$nA2}q69mg*-5~NRL1-gk929a zBQ0IzjL9;f6EP#}G8ZIGqZ=b-=3;$fq9UvZq#!XDr!sTij{L-;;uy8E5Bd@sL`xAG zjsRVCtrT(*8iU&!C#aJKH^mn}+jZsYvTLDh`h#tx@5`5$gG67kCpEj_bB`XT|7LrB2!sm5&@8X{17Piu{)l_C%c zN{T>aItaO4ZUZU+Dds|n+thR60;5hp;R00vZqszq<;V&^bG(2$85M&1NJB!gufkVp zk1!K87jJ2)x!{&aRZB7!=O)UuDj6Mm@u$T(CXH;KGLAu}3haV_Oe<=P8H=Koq*qYK z*3w7EJ(ZLWaEvbj7tpdB?#Asu?$Gbn8WbC%QsdK4)9oBtGvi3Ll;Y*4Bdxh;kpS}^ zI+>jsR`vaVRrx64za(o4@A6cNQxr*zgz^9xTPl^+!PDrsBx8Be1cIqqK&~ng=VZ+K z){!S+Bt#J$^=M%l6C=H@ZWVmMrzs^pR?OFe%@`k0elOp82J@%%V?o_{f)rJOAo?RR z9;T0%7L|@#>7ZcFs0zNNC&tg7v5P!kSfVAj!oULaIa;gYs;>c&%jXEoTF_qK$6+2T z;EU}u;%}dwbW&l2Wq+r1WNT&4CXR*y9%Z|vhGGyezj>%uoS>3UNa z&asRic-+YwSCJri$XYyokC768%oEr@;uhw=*M5P?yi=BCF(jv*T=4nLeO zeNgL*^0bZ;yI7Q`wUn4wkc|SgobOteVf#8D7mzYI^vbXhIy8EwpBw^m?|WMlgv6iD z`(7u2JNYV{?;Sd}Th0-~Jn)~Xlrg9X&S!qw%TXR~%b^Kj!iN$EN?q6=_r-*I1EX_UHEmYgYR#DdVK{wK5EnMITFg_CnJ=w0*jMi1e24UN^xaY>DZN8_KsQ{I3u2qa@Uu5 zN_H3V{I5z|TPy#flx`hm7XEi#JMsMIYEB%4{%1liBl=@}@9rg_6$MQ+N{P}ihcqZ} z?o>W|R8lzZ%8Fzc54~E?d#9zdGa-F;3Wcdi-QFFgxPn$i+NZpNRz=#Uyu5=s?IWD2 zpe|??veAihd6D)huP86lKIP@*(YGikon6`&_mOCK-I)wNOM>doGv&d@L!@``pDFhx z!bW*>`|@25{;b7unx@6^Zz8h*F2p9xoKb#p@U`E~1B++@SCTMx6di7sPGh7}`LkG3 zkw1$qS-y(^6qs-I6fP>$3Mua$Ri@Qg-f4zR$or*DW)dvP@pu>}mKxM0QCa7v32tE? zJ7)_k+QX;|*{A;j5ww~uQEcR#4kZve#mKq7wVWtt$c-pb0M6LA5j}^YFu*~?6FaWU zq3bwZJdvEF&w;OFgFSJfK}(MYv{_FmO;tKLi+Uo<)q0}CwC4$WjCiS@1jEjvo+&LU z`V;d9FQ6;;m!o2H;5R$#YRHt*B{hHq%UQe%eQe&D_vRQ?Oh4XWNPbjVNkOy zK5Ugv!jz(FbMGhv8rm3#@o$(RhrWu-0y?!Gp(Qt9RNem^M}w;-Uo~vCp5e z2A6uE3~;&IeweoUjxU&r1fa6_q!19S6Lu%z!A|nDJ1tdN)9ntVHG76P5v9sR2?~yy z$Md5&r)D-V^6wNhsg`Yw0Ylk&Bi=3n%MqacP6SeQI~HYf|dp2pB}h$tGTX3#Utppv#GL`Q z^Hr3oB}$!*DfS>N!eUezq^*te9)!{wDQ%@1*@nWw04Na5u_^+l7rpwpU77bzBP^lWRxKV!oZ=MaexC@9@oW-yX4fY{ zXGMgHQ+1|++*!Q2omE9U<3tGY8R(RDZRKFNT*N?WkwBjcL7QN*FAx&H!#7{A?M>yh z^HtJwNdJO#byiK!%|g0_RGvu0rcW(2xCR>&`#E9R)=DL;4vUoVweQ&$0z3mWL96Al z=}QILm1?VAls!N6G*0It%a$^a2>qcUBm23wMt81^!gc}@aTM@f8VLi3-9U&$7g&hI zF32nfuemeIF-<|Lq}e0*5Cqlo%0f?`XM?Wx0@?GXJ$D%GlXDJeQ6~&@$U8lfw90&5 z!`k04HD!NX$+7i3Dr4O-M?&j6;GZJJbvO8Nl>%y7>CmdaA*LejhD2oQ17pBTUp1Wtr=InIt{e84M zXEjUH^BD0p!eXZH6p(PK$b7lOdDjDz6=5ozXH)mQ?$kZcr!I-6?s=NJYeLF>@S6vyE%7KhPCN38NzKZ z*7A@~ry)({sZTgcdeMF=_X*96PKMhhbe^Vq0l7wD{Z1z9lLx-ikH5 zRnrf($BwYlsO)?XERy+`F0Vb77CS0!*EPMkShgjG&#B{E6 z2kSs49m)GSBF2CLnzD%3U$IEkTrc99R^bgwO9AMx_K(;a?Gy>p%xV%Oi6GpV{ge9} ziwC;D@&Ef|kH7Ih=RU?5nf^Y%c5gCUJRXW%WRewTe8GmhNHLUkbdNagNHQdU<6)*` zKD3f``D#o1zZ5)NIJu$ntwg)mL^7PDGmEP|=CkZmPxg06?1>)Jy9zu@^AflEt{oCB zCYAJb91`VM=KM!KoO2u!;aUCSL`vDC897KyaG4V;k{K(9M0pET2o5Q#5gigCnFZBw zeU-|KB?ptfpc*Vol`GJ6I+;V_NKqWLLlnM%s3}lT`P{t;wzG+1O4f7MXpa^S>{un9 zGeY5XGK|X!<+5yDndA~Kw1i}y+!J}=wxAXG7|eA~oOJiZFBEe1r28h8tn?z|d@F?0 z2z{d_$~+=^$o>^#;oI(e;wftjh8$xhC-IlfFWFPMpP-6xi7L;M@1OW=;nEiusWs=s z7D~&}EL7VnG=?iJ`DsH(3PlNxeN0~-+2Y(1Kik7+YGC%GSKYu|zyd6G$okrXVC!pm zu<)Z*Nb_1Dx4gb4&y^-(c(I&p&LwhLVJ()(V&;)(tB3Bz(VDxihBJ%2IJAOhsL-9e zW&+XxN4&BnGzrf6ec{Yr*LfhUm9m&p6{*ErFrGdGRh5SDnB$q9#HO!JdUl6@&S5KZ z^qN^AI7hI^%>5)DE5uB&(o|@d>T0fMW*?{){`?u|0E((=KK>+r)?7-_;D|w8GPUf` z5gU!;7!-JP6e+=0seY;C<*H1RGCt954)6YKygOReIzKd>g*)6W;@J~;;TJNuX&EJI zDPWeVrS^NwqLyZX==2((PD%+2B48q1?^*%_(FXg>I}qi9H7>2};TIBd&M>j$q|X*= zonwTFdq1>PeThQrJ?_os`p(}-GYP7E}DuTJu=bXlKIHRjR?c8NYt3>=%|tNe2Q(EKtd z26EL^B)M)kF-qrbah_axwlK1}0A3g6D1SX7(!&t@(*6jP zNlW{Xud9`-H8XuZ8pU@>A`ScnInk=Y`Y^(d+y<+X>!WnUtI7amNJ!@4V8LR0hw~5= zxSpk~N{JTPSXK%T76@1G+i~!h`X{zJ-f#GULv&m*no8^UxKE+LB2Pep#X5#VT|VZq zW6^PCRK5zQ?|@qJWTj|*PDwTLB4QO$b>_WBzPM-5HS+mA<}Q0vv{Lc~!cZ>>5J&T8 zZ3#8fFd-eMoc}l*ND(qAQW7cGi-jypB%Mw|7b3yZkmg2$?+b!O|8kmtGT*qP#!m{x zsi5A<@7487zHvuor>?rK#oY}4ANYJc@%4XjY3gt-V+)#u5ecTxSb1ECGr9fO^8W*` zc%~bYE%QGYnGCF}%(d*lDAU~BR32-i{JkvKKx-Kr;7sDNbr{=t#&hR8MG+s+JCQ?0 zgkch2T#*a4KE^Ci`AfTo^u!S8h$qj2C=yqWlTKBGWF3kL>W3&I6Gy%mQT#zl*V%Zk zzsRn`t}&C$&8lSYchAH#vj0u?Dwr`E3LB3nvx#QTK{&mLf()B;&@dCtT&R5OGLsFz z3+R&EsB}CTa*EuZKvc*{UFXh0PMA(5@q+1655h$5NkwPMA zNg`>XTG3}h&PBHxIW@~Woh3=EuzIE;uiwXoK=On{J1!h%k|%m32Yc$%b)-jkk;bDh z&v-wj$f`|OBnn8Nrsz<61p`8btCgi8^hu0!y*Z6rZg$+Rd15*%!i+A;%dXJ;*<)qm-7{^9veLiT;6`%O3?YYJMbh`3$`Sp0V2_$7q z=w3V|kf@v(hG|Ygz3bU3-51ooo-NXSfsR#EPS>VVDS9>sRV2avI1u@Fofg*L_)eN8D4xO9wPww9;kHD;Pu zANRBsgVy%!e9#P33{+<#OiV#WCm@r61DH=~46KsC*^@j86KrK%#v9ycVb3y?R3~Ic zP-{*w-mI>f!s}>ZS**d~z@H<5Wl`Du(9W}Rytu~(ygS4d#!V4JFmX*#ybtpNy*-q2 z9Fqt02mA1ok43e^{Boi92q~GnNnp}qc;a~Y2@{ORZGacq01t#khjI5u930TAnn0uY z<4i_Ujv%O=iwq4!od@8&HhytbWLPNF*U4LAS=Ql1sF!zD^Qq{hCR5%|T$*PN@~?e> zF>htq^IBnyqrC7nnqcfE!Z631QyIM%WdN-h`Or|MY-CoYm25TARv16>h*l73u=d^w z^DNGlm=FF|5DSP1{+Hv{ClS={%9znlHaQ5VhA9G+s8&Y5mLxSD=oaQs8A`{!xKlww z2S62>xfmD#gYQvI_b%O*v!uM38L|78WMD|(RJ9KJk_c5bu)@CRZDCm12D-wiwi6PF zNbX~1M8rY>@|1cx6eJ!o0T9nWROr);25eM}u0~27R>OXEAq=Lx zBOKC9DmsBYW)myTCz8p&m2A3uZxic9#XV@UB;KI%&Hmx(MbbX zAZW~cb~|VmK(%dFFv$GqfbRiyja&gncniD+=$*Q%l_W!D>*oO7s3&wyDK zJk#D_(&fe#qu~c(eRuFR%e^6qLiN>1TnxVQfE_|jYSQwJCM|F7zPFk8#C?u2LcD~5 z7=avNrYd15adCRe!naIS*LOxOzN6*6Iq9gw(Fm*UI}lQdHW z-Y&kJHUmK#+ZV!8=7O|#`$~oeLMGqLu=YuL&>>`H$;UDt%OwRJIUTR=6i4Mz0fn|f zVN5-Pg-_QOOZ?>N|7UQMR4OY2QYkZ3vgl-WCsW8oOghDncnl&YaZc=bcDg$6aA&@z z7d{K39g;=sVLr2~<<^4v5el;7VPe&>R7iU@#eES!r*V_IYUXkyra;M!Px<|(lFwJDo*P|!NgV(&8ADKtGUF492nm9CJ2LmRh}!xs)-hMLvX?Ywaac4Th*p5 zcPGaNBR=zep#Q9v)Fo>?Qz_(E^GY^|*LuB@kpZSFF?>7QHY|KQ?@8`VOv01nKjGU; zT5(N#Q%YKKO}kQhwBpSs$(EJk&6Ki{=5KaMHq6zCH*W*J#?^R@=Y6zczGj$n>cUN~ zSoYTBpIc>Fu*fs$t@7bWL@6|1AzDHJE3O!SQ7+Fc4ZX;hXZDUdt<|WB%P^v#0oLGz zjNwRKl$}jP+G96M;wYLjz(dyoAhr~bg+LlgNiUhbabcdy8#miX_N_nsqC~_|%R|tB zD`!XSK*Y-E)AeLfLm!E>19a}-$Nfn*_;G*ISsQ#ecl7WfMNZM^^T;eBh9A8KksG(w zHmkL91ZFMw17eRtrqSCBJJ5TS#$RZ!ysTl%_jJ%&C897K6eozmKkYp(;y6q1hX!nWHOq8JDYYvF_AQ1hnTPHNyYH!qx65DaZ}YPVFuG`x)#(_4Hx#_ z^Qp1A6JBPq6nSChQCSq=ls3B^o1PuSIswfjGKN}tfq$dr26G~=%sj#;$CyCfZ?a>L zT*~SXA4Sb%%b9$1$#egt-t);{H|sS_*UKKR%5;6Ay024TT@fDK|2<|CN|>Jv(GR4;{{*5|uF_{SeAq zMoa@egD}_Qf`|(rdP!vG5RO5|6SX)0i7(FO&`kA)~+lxM4rZ{1cqq(NXX{Bs>ARnLyO zmc_oV{AJ66-r{@PlLg0OaVgJ=MINKbsp_$+{D#yl`p*1hJ4n9wBZnksmW@Ov=~)yv zUThliELfLh?HrYQUf(RX=FezbZ|U3jc5-Z>?up_%f}&E(B%l2Wp1kucNU<78K4r}3 z>MP_gDChJ2Lh`>s{-Sa|%ob1o?3?5-Dd*EIdUbtCts+Ys;aJD}bk zb)mCpb^gBLw^&jBnP-5lv%h`->wLa$(cLnH#+TQUeF=DjD(HnG?DL8fhZp$L1bK_X zLcPt^lCU^lEelJFF=GApn8w7r4^v32+ z=ji3tOf2j&aBf~*9nOiT!PwLaN$667V+nLXlK={!-9{?N=DeXb@fF~l3Yy_FNwc8K zI*o`R0ib2u<{6*I<5*h$a{=b&ZOVyn;#kwL6U*fvQ4P+Q;2c%HOnv( zV^Z5zTg=rw!E(MVKto}^#v!Lb^F^}^{^rd%j^LawK-JNB!YwqUi>OpX!;rQ!{9E{4 z%#beV8Cabp+#OmCVZWhm^&47P-wQIh5ygS;DTi1aC1(wByFA1WsXL7aJ*Oe&yqVJu z@q)0VJpMMs?5x#jfg#g1#+56Y6BZQjF^C5fkeD&G8Ne<*Vl`nVLr#Q`6Wb5}Mk!+O z27VOUaPg6usfW-pwd;rtiHAE&q?xhdLXIXv3=KCva4S3W4fDA)Bm!e2M))hp2Wr&= zYL&K+6l{2jcwvrHON3MTCfX%xe9rdOL=35mWa+HQPm-t7KscaG^>kzam2>oHHsud; ze1qc1VTNUD=~{Kora>(qS?lDVdmCa|cAG6&VwF|Tir2C2VmQUi-9EELg-DFBk{2{3 zqByd2Veg1!8Oq&<9$^?RzKx{)0Urr%cw!{RH4-)|ikdafkNj!NBLVw8+!@zMR5WvY z#$sG!f!ZPgT3$KxwUEy=5wxUXmaGkN_*7#)HkyiY))qa~j4WnyL?#j1m{(YIG#6uD z(L*0M$d^3B4EeBb9N>2T*6ITY7Y3>JCrr~Zi<$WgjQ2(Fqg{oWcM8QD|4yXd2x@qR0?psCzj0CDu(%hc~9;Xn)2ExJbo%e%~PP>!vnZO zp-~=WL1t*RfnP&l!!S5iZMx~Af)Dcl3kIl!YzEj)%Nb-p22u@3JxDV< ztyGHx!?jpeQReViwURKK#(1}*`OJDids8yN@Z(j8okS}D{sU>nElAQe{xR)8s43bp z0-U_}*dn3{G^r;lfenV&$jxJtjfMnMcdxOgZkmvf@vORkZ+39l7c7RgEZxqC|G?`{ zS0L^d=6E=YWVTxgN;#jJY}nHUvV09OE9seuYP4w3O&>ToO(dA-F*$%pd?S#h(x32( zBI2#VXq0wHV=zUVw>X1vs(LkjKz?eci{MlhJS?glF*yH`&f*)FDR|9<`-V(NpH-hv zROmFUdx<38M`qyhH8vIS;P|WuH?@3^hk-Y&D8SnaD@)+bLCc~@=yX9F&N0x2r3Tv2 zG0=up4%)B^p=LBJ*FqDD!rm0Mh832uA5ott5U61hve}TO^#)n>!WH9%TsdSHiE<6g z;@Q)=n_2`@9MUY60+_$8p0~fuiUOiOkQ*Z2D_~yir#ddWH7vaGzRvJ6_&NkcBbt5Y zJ5PdvStp&)h>r*&W{0a&Vnk+4IBeVLVzLGA&M|p8^m0YkNLOYLr>od28$h8n%|hDA z?nuv(oo~#_NU&H74&3K3}CSkKob%9$htMnfHrQWUt|C>lv_@<8A+$9i7Fg3ves3teyvModn}JP?MD9H7+sw@~VQFZDhD&A_|CKG9r9 z{A9anV>1)lZ`e}t&t-}@;wz(V<+G>1r^ChF~d6K~*l`HaqvBi;cOm|6x4F^$jsL&`2iI*9Z=B`1LHl>tU)LOW$@A0Dt9r(R(2+|^pA!XpZHjGU}zJv z^L9!MO%n<0Yx^G(D4H4*EQqo`3=<+Gv8gFoP1{t1{0%{`J6J!mk(hAT2g}^Kt&;NI z&{XB3t(6Rl$?}o|+a@6fQ1V!1$_GFk(ehYq$_J{*n^v9=K#}*NJkRjmzr85Wa~ZPQ1=A*#GVk35Z$b`vS6jcL<0RCbo|*}oF3b9g9b8Cq&=<0^_kE54;2SEV ze_C~yC@jm#YH7Sp!5s}8w+|fSjE{*=YMQuFA8oZJTfU6JiyTJo+__JHNpuh2}jG0|?cA~6Ns=h5O|>x**6s+#lK_SMQ}(;{u*EmF56>;Vk0V3j6c2moP) zM(-7}<(8se$WX4Bk_ZWYGx}@oWaFHrKW_@!Y4*(TJy|iIMFF=CUt~u#D6F+!@QwdRspl&VY16GqQ)Xg!w%vKPISG=3^i#os9`JNJe17)z~RWuEbqdPsT-RY0ZdgeJibMf2qbN zqtwI$Ee5J$WscL00ksMkQk}+t4h>u@R24APJ%9nN;YwEKaxblmBPF1)txX+*N8~{1 z3l9lmg7S~%P*xiq)Nu6Ly|du0HmX$O3MvKEqbCKmcIc1L))KsJ{jQNNhdP) z=HlE;&GEto0z?e~;?V>N;#(C& zh#yT;M2U`?o1TMMm#)t4O3x)|M0y?|vNNaBH7*ekW+T_O1|(<5X_}q(3P(RrV@sm3 z#e(5u8y09t29U=V8p5vSYLQ({bG6updx{CtCYlC+mhSDWV}OCjvN*)+DT}2a%)}b6 zl{Uf~$U}K*BkBS4bZ=*4=-7izVO?0Np=XlW(1(o@w`AztloM7J&O<~kU$Gnr<8txY zNa-WgY3ixr%$l%NID@mfyk>|G%u~2RSfkt6$~F5s8x3U!bRLUdUZJOIsJ*I``;BV2 zrW@fT1)c#p$<%4=uu3&#ZPO!KwuYW`)^V7LdN#<7IyVr`xmT^;r*5j4jdBIA@ba*x zcsuX`ks$_aJ0-u1vRZ2ibb-rIXzSHM^%CL|)<}Jq^U!);0(1j=?MmQQRYMwrVa@nK zClDLGV;d+)ecIrCJvU4Wln+Ilq8yFgp0&rSrD$r6Q@FhqQ1a=YxOQDF$?05 zV`U-4BP=io`d(vUk8COrXpImkj7ZqDUAK0sk)el(w1a(6gr3i#S4Q_8KF}@AH5T1f zDr8O-c4@G5SD})9B|HLS1v-#*#L$O>c??;hojkC1=&eYJM494iu{DOQZ3q;Ape4Xx z1}|D>wNxSZP;wQ-rD`&Yr{%kSf5c9;o<|6TzOY=CjG13{Jp7saK4E+vodC3mRXf8hso4oGSYBsX(zh}HdBSm?1#(TmYxT< zSwo|z_?_l=Ex+sdUC-|ZemC;FiQmoqzKGu~63*1eGyf#fCrO%&&XwXEp5ObwA#v#u z!2DRE#hOa`js$^4auGLj`4R%u_orLJJ7~IEu6sSSN2D^h3K7yIY{~A~+u0%y8I@t; zbcOHS`Ngp)7H=l8y!ffRPF=j!X_)5Cv68%6)*@6bw%wvy$4R|uHCt~?4N#W6XS~gp zZ(CtJ-#m6G)bdTw^?XxTy$5J$1|Uj7W#d{MkP!4pLR|)@z3DrFMf$D;oPReuO!_FY zydm6s5-{$^^kQNotKjc)%Ez0BDVP_9&_=@%(cIUFy+zelw4o ziTq{(H}mtGMKppwxgLp2=5&RXI^Ug!WZOAEES8eO)V4j66CbiEArvTIU$7^bSQizQoPTlUm^ySpIA1ZzE<|qWY;9d~CdeEv92>19)mptVFgP?k zg66YI5Z(rWp(8X+clfbQRlk&^7lqBcS|in+;bINU#Ub6F?g*Q6oD8X6))Q?sa^x_a z+=1<`vqLz^RNcYnm*}O)zybU#gEUWhsQZH=VR@YSE0y z8{`Dk+hhp41G%DT(`CGUxr*K7ZMu{;T~3?WlbP-)+NC+!g^A5oU~)d+X8KlwX4t3# z&QCXn1Y_I)5pXuePR*S3<16&t2K(b5Z{XuA_;@Ag=@7Z{q#y6nckAtsf4rWLck%IZ zPF3@duj=`DcO1&A!#W+rxo1~v1}St8L%BD-Cag=ZWr(h8UVECMSj)Hc`({;qb6BpS zSbNf;V0J7Qjo2YEBu9fA`1~dMe6550WRyg?cRS@=*W44og$Pem!X)3`5vI~t!?3#F{!q`iuZ`cnPIk6|@Opha9A0nr{%{yh??m6S zZ^3rMdSU-SYe{ozRLEvXw=KPttVKFB_Ud$9*qy#OT$S!2Yf`p*;A3#wmflQOySZvK zyeyp#x2CTMFHLVFYmA7(;Rn;H@B`^h*-zbgyAd!nnJhqh% z^OIseKP86qK{1@ib6)cy@tU93cj?b0;EeN{@H0vH2?LkI`e%T3-2nDey|8{f!kR7i zv?F{dhxJdDVEw@e>z~eH4R9#mKT*fH>Aug+`}KjpgePC@y_(SWap09Ce1MuKd>oF? z0nxLTlRhC3ohX55ar(1KAeUt%K=gBh$%h3U#PW9fQ9z!;(Q5KPV)+g_J!u-~KHLksk4MlQvX{dra?p99j;0@tp!@k8 zbSnL4BY3#vc?1tPAF~?=5w}VBIcjJ-h)@{fi%$rPFaf8(AmDu40riWzM#GmspHUi{xIY0n7<@+bXC2qR!bMs3PSX}PhN}(BfOELQuile{om_2P zhPW6qzj{Z4oPkiVjHwgA`ywi_QBybBZY5$=Fro$!8 z{*@%G)g`U{sRVY*C5?PyiAlIom$c+F38oS*X#jY)S(nr+$hMEv z7@%qf>FsES2>4ZyPlzT&tzy-Sabhq4yK#W0em0X~WZ2@lI9WiS{TifYy7)D-8zS!4 zAUVX}ub}|pP`rjnGE+PsS`mIaUPDO3uf%ISslqM(3c+W?i~JG_9v+WxK#0Q!<27_1 zlI8Cp--n-%*KmaJ@p#P^iucCL?R&%L;^hTojh9n<;aFZWF%^C$ zUWUD}Gtb4m_>OpqLFO~@5;NRm@e;}W)A17Tf=|Xv3?CozOPHHXJyqt4O4NwJTE2v} z4q_RXhNQJFkr;e75@|3?M~%5G8#MyD9M69;Eu>E3=jtZSwW=>^PJ1%t$r?}WfaRol zuHUWp)bTXe%N^E`~%?q53O31On3e(scX4>aqx{37wJM1I0_dAqL5D9j4v$^peuk7Sp@; z>5kIV(dNR@aQ&{<#j#_1i=kcz-AzpA+=pfHE++1E%{PsP8+NrWito-w40Oy>0fEv? z$2?y;W}nVp6gxZAoHrV7+||l08gDE$>5UX374c2sjp^MG5o^*-yIR;n%=&Rp@$UL? z5ARAPyf@sF-Up?*u6g%pxL{XnYkc?3#k(8An`62A!<*ClAxGCW?-}jE57Dc)ilpr@ zn)QG#FEhIJBf88nv`~fbFe3OC=2rg0ATMLVM7QDmu`wpE|JyFR4l}N20AqiO;pLm2 z=P)kyS17c?WD7c_N#;mqpK07r{uxj7q0ebAda}Sz6}!@ky)YIVTxv1x6}{Af{gx5{ z-x2}%BjGLS1N7Yh=&!xCcx_{NE3auxel)x_eH(=Sy5_xkX$OkeHiZMRv8WX$~+5nx=Bor}DWy*qu-NE#X3I&tP-X z>)F-9PEu}c^F^XhTWIfDOOobZ6_z;ZOPY83-4A>6dQV>G$!k6NAx~c8$*VoNLpYu^ zU**XUdh!FFywa0bcyhZZFZbj&PhRH9t)9HJJSnalYZ@CH7#eAgwI|KGaINed+XQ2- zXnoiwp5tc|DJr0QX%kdI@DH76;;_;1fiR2aHu0Zr#(%Cgj>NED+Z{6%ZEvU7GL+Zs zZfWTvX}(Nz=5{wldK+$c_5ZtUgG%)Vt6#T!J5>MeEGe7De>>EXHreAsMZ2B0y{OZb^Y5T{XhmjQP7*#g+zU4Y%)1=!s=!0zq>j4C6*?xwwO+TFsM zU7|@kF7A!i-f?Fp_jS8^Ux9r0d3la}WSyDvw+`?|AE3QIvb(i*R(l7+TdcjK&G~BY+q(GhwgMmC zR>lXi&jvocEystqb@AbCWqf!W?fuc+t?60qt%tW-dqB=|Pc-3VTR=E*o_JBW(HC_a{q`gr#2~mPHmeKlhpkyd%?TDIh>Qxa+`{#D zktEF>E?Zpe$wi)Q_hg$VTRpkZ6Vq~&=J_s0Z1Du4NutSSPd0h7(UT3HtoLM{CuVB7 z4*caiOSD+Toz{Iwq~;)jNwvTbBCP?lh!g^hBob>enMiEKfFiLJbBaVqj4MMlqHAN( zUDw82U}{lv3R8<5b4GuzS)C?W1lxMrMerumTV%)dhyzk*5yfzCj@oQm z=gQn6aF9+mC6l-VA*@Z{?!s5FVGtcVT%~=4EAe8M*P#uaVcaIz4g@A?D+j?(u&A>) zGStkuSKC6y@LU;Zg{Pen{3~0LPU0*xFPp-JGT`vC0SC%U(nTyt;p(y-SC`G{((KZ7 zS#~-8lS#Tl{*TrGtbVi^AMZM_#3jYuOokx~`l;DpzdqUDkZ(R33L|nAuBR!J5l1S5 zv39aLo=+?boD*BVn##|m<>yh?3XN17mp1Q|Occ{RT8mV-f|2$5!iuq4QmIx&r-n9E zIF*G0wY`G92JxzbD<~~DcV&W~%dHTLHeNenrILV&drUiUf`sH%{6R-DH$u*xz&A0g zU)2ftGK_2FI;(WMQYEj_VP=B_2f!ne$hxXO*yzS4;6=f>$5uE=I6DoQ?AMSw4XM+R zx;JE=-pLzc{xGp2VS!q8b{ev(`J08iHe| z;@3l;_A*gM7$NOB-xro&+tS<_hFqwX!kg87@Fw)dn-u|+5&8_n7r+~#j2(oQ<{Q7fdNuOaWqhGKcb7r=Cx((Md|puRt>V9yOM0#&K&$_2z+t-#rIn1#i#!kro!5Zw3(&BA^Y7L}AR zxAa;h6%gTgItI7~FRtKP8)_GW8_*JM@Er0G_v|0>VsJ$zSOvWVY_`%;&}nV`P#^M^ zkA8M_Z3DbvT`3%skyrD3WDf^Tjed_JYvv5;j*sizPnRtep}MKEVMj%~oD`~>jDfAR zjmQ{VD>RoTR@fnl_f?g+9fYpUYI0NGpo11cM*BkkxN4GutT1AO8OBOEtrhnyC5hj- z9~)f)*5H9dv7X{1Y&KuO745P(@6!!T(vcXm)+?0qm<+?hAcEBhsm5?W^YgOS--Qn{ zC_+DYwEnIz2Fl=xY!O)2nSba4@#VAn^y@lRA-4vevk5mGRRrhq{l906kt zUt)m4TM-z%rJildAu%=!5@WL?&(0jsesP|?#z{`~0FNVcd(uuk3kJroq z*x__FXmJ?c-KuAm)_{K5GH%n0M6u=P<#TNPLx(%_G_!caVbl_g=H)N~w=3yQ9GJDi(gQ%EGdD7#c%P5rGm>P z2%ky1d=_k?E9{EX%pjdu7`c>Yke`LnGlO&(f>9ac4l4y5?e7_EF@q-i&mcH}2+In` znWYXK4(WxkydX2EOJY`P2Duv-Vg|suIt@03qJLO=+Bwt@ApPc01dGj~)4^lN;gLE# zRyjPv*@6dLhn=y`mPF+Ca1Ck}2AXMzpJ2qYs! zdTKm2@2xWT#wGlxdmlL&aV-m)a@;$Ajv(^NbhY6}bnZL%-vmEK946;Few^d@ zvHEP`#~fI+yU2mFY@$6oLWc7Mk2}*f5R<7{#3cIlO`m0Avi3}f$*2Qo+JSSP182?m z0yr2W6GfM?nIhoqPv;r3MDIPkrBB0&4BA`zkq$iAriQLNs4}8j}2q=?| z<-G~R`*`YpzzANQ4cYoPb`l)|%Wh(An&4m?&Tp0Qh9^8f8_|t69+_GHP-m0rMzyf% zaEE<7ib+tG;5O&{2gakK%$~$ffhg#1b||$|mb5pP1UZ1RL5@~H+I->1FiUo^Iy<_y1-H)gvBh10Q|E=4a<*ci*@ks&d)$a}5&oPPhk2~`SJF$Q zi5+Wr&$t&}Fe?+OWGu`*XZIwWcWPSyhhgt(fh?SssM7Gnz-hlKk9eGPaWY>Mrp;OR zGTL`J?c7NlGuk~vJFlSaSH`yPqODhjHR*1Oxg;8t!X;z%N>XRP3=rQD&KH(AfOoh# zZa8cuqKoWaveQ+N7JShi!~B1AZ}jwH8&aRC`&2wj&g8?g%g9 zO?!NyzP87O-FpXBY}wtC`jPk=&F*k{{@QM@jBj^`o!thLtu=(7AEdi!+hw$EG@PeKuTgGC0|FNk@?0HOhjR^i z_Am(7FaXywDAzGK*E29LW>9X319Bq+a#L8H-VAzNg3*>9-5jpz_UPt(2(Itx(GA|C zYpq8&#vWZ?G%&o_dvsHG2yPDcvYLByDBip|TED9kcBkEVIMPM?(@)ZC!6`}56fTQ&>^hShe04)DUc!O%0T*(uuP^BEWEb> zqL%`qTLIh4BA9LiOfL`1*z8dQOgcL_u-ZQ4Xv$T^M*Sr{FuK)Y^fH6dZ4pK<>B8ux z4x^Xn?YccEMXJjMe1o-0b!bZ|`*hiPh&}kE zbyy98r8XXVS%locqDy-rl^(_;6P+`|(FKp=Z(6r*{rU|XHg4RsY4he6y=cpp^UuHF zf(tL)x^>&O?b|Q9=;Dia?6~BTOE10bvYRizeCN(Ao0+-diYu?&wd<;@cJIFWYB`c! z!-5nG8$gg>1vXFkt;Jv6&;C8tbM_)+&*yiX z@ANws)BJvRI>GZve%1eZ{LbfB?W>m3vC)HUw#3M(2=Mv=U45f3M$SE5WF?MDv^X9mpVJQ&5Q!NVQaPbF3MyNHs_Cfsnmegfla+9q6Q>TFE}{ZJ&Qb z3vsduYTGJX*BgkIex-ie287X%HEIom0E>Wm)P0k@h*2hOkIz&Bl`JprLo!{R?@tz6 zIIT$7)G`@o{e9Ps^}XJwq{XyekJ~?6^MFfbQb3o?LP;7#x=K=pr?pwv_5}A-?`HfPz^s%%=&I}ytO6oo_3c+ zWb=mQAYfY=9S4;bOHPlcC|lQsU6y5dXNVB9taA}u9gQlu!hAy@H6@{k$ReEYIH?(Nii zqg6W6Wo`9eys?qVq?qXxbC@hqw{)+V7#4zx7*(4p#~ND17|1qABPKwHVjMlyh?aSJ z(Lk)uu$5C7QjN0@x z8ZkQMhl8;WahOJdLA+*hp@co?K>LFZAVgJb$nik%;#$`FgVh~LGYrrC7_l*ej=Uh) zh^9V)p}a+7bk>3rC`yPTkk}+1+|z35S`85@t04{3L%ktv&^}B678=59f&oiJT1gn8 z6-Yr<9ql-(xjU>7TO+h*NQ;#taqj9|#9?I&M)i%rE1J|Es$D+876<(H#&d zq+V9*K@Y7C3Nz>p2+35lr9UcUu8qn~LxH`t{HJlV%?rdP$$dNkx|S}$#i59-wVkvM zI(#}bwZl-YVk*t&nhVKl1wl<3DhQ0HFz|Yp0?P;%hWCXq+^=>JXm;(uLz84sGB|~0 zUb~{2&#qlTney64sGY*Rb}mj{`yFwj&Y7Ti_0Fza1ROl19uHcl6*!Rzg|Zkw(rM1D zglFO13&tk^>?{WmhFyb) zv&?#&Wpq}vMlfAOESJUEEx5}};Vv`Eip65wWom?k88VNGRpNtPgGWP>eQY)ByU*F+ zQSQWZy$+2Sx-Un)l&)Yac9iUdU9C;#hA_L_u*xEaAgl|>69@;uZoWo6gavnXMnI=U zx=ZCr0TGo~4SgJpI7E;RA)I2_Vv)z$q|*V1TA)N&VdL2GU}+J9!&0ev9SX$T&oFop zl%O!jAud#s3Zyny!6t~_)gihSLE40F3Sl*(S~+{%-yK!0!=RB03Cpb3VXrj|UN4%f z>IRAJ05T6zy%7sClJ+NI18fj!P$TKFMwq+`7Y7ar!QTTCpunGacTbQrPiKd;cek20 zzB@)ks>;^xW-A3|=cc-6SM|<4e7#QlX?XKKdA?~ypU3o#`H@woDj$B&%vL@YG0Q5` zl@GpWW}Dr@@wt6(e%rR&cjUJi_jvl>AB`__{V#Ui#CiIWBz+R){rUfdf2aNZ_d??i zXv0W@4fZ-MTey71X!wo%;rluMhkAH^05CHgKc3)zxsRRpIxgt#aAmalVJ@_Fzaw&q zPls;VydQ5Tbo(KscD>KeSq&W*dRNmvzp1BB$3K4O%;LiHneTu=dUoI@a&%1a% zkxQ(Ka$gUDGHpy1s!m$#S${D-2i zhmIlReF0*2uEo;(y#x~XH@x+GPIA)U)`5J-D|^%5;bN-#+Vpp;c&LF@PqBjzxhs6B z3PI$)5uVW%>C*&@U&HfA_WiQn`E#AF{byAu|6f#bdcIFVZuC+;{c2vv*J2(2XH^d3 zMG5End!7GFCH%fh_<9w~xk|{H2Xb;`9{>1g5A*oDoF6#z_`ma8XC7b8Z=HGkANeiJ z5$1H$RO~lG=y*teO%3=z`4ABltbdNk}EFj(ZRjx8qjQtYsvWd3{E3;twriu z2S9KNOE+LS-N@r#;MGl}he$VP^H{N}Wsh;aCHrcHeTcQ}5pFIZJxF?Cwjtfh^|uH1 z5)Q1Eogm$wO%epGmVJ}!i%E}@?jU`J^b#D}FXj3e*O$@!%eg+v_0H^(p)}*>5H~Z~ zHey@Vvd6i;lJqgsU8IkYUPXG4bT{d@8+%z2p;FR4SxB$pTAf4ky*B%+3JW9c^!k{G z1o~p6&l|WESdc((%s#9A)x)fjc;vU2@a$QNx`p(cq%S4?4(Y9=k5c8!NS`3Rjr3Eb zFDLy4(%VVDK>7;O&y&8A^l8!`ApH{Q50ZY3^i`x^A-#k2S<+XNeuwlmq>lp2A0mB% z^tGgqlfI7hQ>3q-8A^Y6rk>t86Vf-pX!f#bu@Cb#TcSJZ8)uUAP1!e2e6f<=&G@d8 z0eyXDhd~zU%6MN%SMf>%vBnZMC)Ah$0&g&#-=}OohpoHxKN-PpXLpFWgVbfQFOIG=yC+3xMVUl~-=QZk?SkZ@lBqf0Q>DQLMpTCe>#Q}5z_3*|xf{sX zTT)fiE8-3nA`#NmCzG7yvzOd}x0O?3U>XwthDeRx(s3C(M#FC>;kO{YHU5SJQlNhe zyYMx3S2kn(c5);fOy1RL52zpHXoG)mpd&hM~~neoX1+2CRp zz<<*LPOEda5*h%!3+vY6=7sPd2;cAUEv)f(l9WpL`|s`V?=g&U2(NUnF-2LfnYLmQ z2RdJ*EFA*T{v|k&Wy2^tU$Pg>5u0QkLH}aaerxq3>Xe$awMxvYT6lPCl>k2k z`MtREex-P!yiX~XNP+=b3JRh@=~x|&zCOOE^JPUg6L;fofBLkRrU*PkJH9ON0LQ13 z@MW+-k$RQNJi<40I(DD%!io-4)1&>A|7FAoLIc>ir@v*pZG`PU4{R)u-zM3k#3x@7 zrB{iyj6nY4>De;^batrbrk0uNHgq&H{^Xx@w(&78xxt%dYxR(>AeH=OaN01A>FVd} zor8%C+fwzWsz>W7U^|!`PJiF}<>Td{%jCK$09d~%!@XwOpQ-_v-=^yoP{J20AJol* zGUXfy51G{4Xulkexn8330nCk^197>Z4w(sAA3UU$!wSP@@%X)$wsbZ5{an?S}AXkm_@e-tzv-uP58*4!Y6gzXYscKn=+&t3sFxx*!h$HpSm}Jv-_;;{m(L! zWVU9yL7|oW&QQoilF8E0B`s-B(zK0T5|Xs&-(}{^%$a18nK{#Q&LkbEP$*&*5O71> z02PZ$wR%;!Uet={y$VWIKvYoN?sY*$1(%D$eSf~+=lT79=gdqNn)|x1e+qMc%kz7d z@AKWi-{*M@pzkckfSAA0)_=ccZ`jGs0$zpWgLePJ>Am>MmeS|gh4!glE_K5AZx?|t z@MK%I2v$4O;9Y{R&B+JLwBDxyssNk40YpKZ=XlDQ2!RruQ~#ZpsFNQlCLh+pn~Kx< zQ+4p^V)9#^Pla5+Q>3S{tbm6*yZmI2vDaQ2xEoGzb`)A4`);$FL#Fke$h1BplN@Ej zDv&XL60vANKz1w|2v{@_uxP-sNZei4*OT;pli{%43S>salGOdlPZS^2F8vX$dqYo# zSO=$;Nx)t2U68jfMQ6T<9qG+F(i=L`8#>bK9ij7id^V16DDu0-DuqdYXlX<$9b`IjZc9t zGW-+9W_sD#jlKKXV-Sf8BNS6Ka^gqiG>{{wcZXg2KVi-&DGVbZDitLeK|w~`caRbH zc{1YmCj(VMNqs6V0^&y#xd|3C($5}^LIlk}r1B8G5D8I4BxKm9=gT~2J4!ug!$sy( zNHr9{N##BLnF(29koNPh^{c z#)XU%EATMk2C;HEB#N-=X2F1BK zcmsKsdSHB_7nO+J&J_3Xd-#T!x-kxZL`mjg3zF9vhvbH7{MZiP2}^RtS87okfbcDm ze;Esl+*$SlK~HHyK3U9>)C=cz26NPl!0zl;N`-SgyA{K5uE#Bq7KNM)2+(V6qhHYM z^XEqVa3cv~2Ij|sSSNnH$e!5@7Kn%-b^ZsRIqD5avvPtQ(kqDUluNasQ+3dybW1}! zePgu9a^92{zg&c)U*I}T(x|b) za}DHk((E%;SxTm`PfmK-#fktt-|XVM`70@L0ged#>IVlB+^BN4eii5gi%6ZV$%w4& zuhQ$x*$PHoYjaq6U(rn3*avNUZ5?zYy_E0FxsCL#=(g@8d0$cf61jYK%PWB|C3H{b zAE^i4y{u1kXjn0~=R3Mz5j$sY0J&9H8lx{5ytAV*d6d{fBWsL!*Z?4re;M1gGI+am zTJjTCY5OX*4gUpJ-hpeZ1LlW*p|&-DKYn3ZK%auQAoWCHL&=|XnonXm(l&aNzZ8E? z{%0}y^CH)7J*`jvTM6q)KUhz8uuos|zr?CQAUU|qj zDm#g@TZp5UPbPoC{rgLJ8k_8}#^b*>jQ%UhD;&4TYps0k)6X^3^EX9bQT>@>@^{5O zg+lTV#pJVg@sD&_%;%qr$>;3B=R?tdEhhhF5B?p^NhQ8eO#Z_je6g5($u3@9VwkG! z(NgkS@?;9h>q^Nt+v?}X$o$er-&zXQzP{u=cw;G4>vja)9(l;$yr~rW_Lfre?N-Tm z;$c@MpNxGgtE7AjR>xB|$_>oLABhCXHAud@gh%Qqrq6dN+n^7q-NS8SGdGf%-{(S^fhi2_V!c zGDk)L6QX%yh$_g{$UwBx?8zsK!+h75ybUnKH|fX2;j_1tywLY{6p|5DEPx21^;Db!G8_~f25<}KdmhI z524_@Itu>%%7UK>1%I@o;NRv7Mv52qJBDXO3`HLt`sx+PzNrJ*zgo!NXUI-b@%Ko; zeTL|YJ|d+y$=wy$37Fq2MS~&Sma$_!x3TLPN%1`ixz8!n5Z>r9}On zAQ%Y4E9$`NDgwc}prgd%fr3tq&M;)bXfLPDs1L9fz z$uE_XA1ggr;pdl2$&Z&F9pPv2wYVaZ_mp1u+T@ASYw>ms1Zb$+5hAKPbZceX;@#We zj6X>j7!HF=Kl!PW<*RaS`KsD9d6f>vs&chIS)!8?NZzt|Ouue_hK*XY$NIpI#rrQ3 zkJl)d{*?;D~iHvb4A~q75(B0=)!GtMc?ZSnEa;4W-OHH@0^KT0{3``3wf^~H!qrf`3VGQG)% zOUZAPk`HmDy1rbW{JtyPzaJECC2s!~1*LHRcdK+gg-zl911a29SGfNGh5NRF~X4WfdTPn9r3dR;632sGcD{5Fqe zW4uH@8_v!hB!fhq(Crm4h{2bj1%|}!&%N;j1?YTucY!qYG@09yyGi=>-z?bVK_`?} z#hT*#Y8rg{V2nbg7oYn!s(-Q7PGm|6u;HidcZ$BhM3SI)@D~4JLqo-9EC_FLdd2q% z&?~;rkK+6MD6nrkC-%x-Qz$?2&+XWT-a$LIp;zZa2sZ2%p&zm>^~08e%5-B7LWShn zQcyo^DX1T|6x0uU7wX4$GVIlsg1Tc%LH*FIeymHDGoU+5K(L$v^~Ge{`N!&su!oh* zr;|1sb5tW>o$P&DNKPl)+@C1kNKz@BoLSz+923tiDLzQfvis+H?`7LJWzUbbMJy8O zI+NB;H{Fr!lnTEq;S{|>vfI`C7bn;2?glS%V{()3_PBt!Ir&Q6-IBaSKYNo~^>bTN zmF2ZB*{{3X-RwHxwcO#g-08L4<#z|Y*}Ic_^no*Q;)Z9u{rmjOEpaVCA=#3QMX56u zQ~k@T@hKT%Zjf2faRk7O;>kQX)X&!QrzQCWE@;zb){ErF+w1~S3dOxL{g!lp7y#j) zU9U&xS1L=OKB;vrDoCok{EnLhc22o|g+5UN5+N$9Eg4BRof>IhPb`@=sW^v|^~}sj zfAUi3TgV8nKyQQidDWlHJ(wIZWgt0Z4D6_@156;jh1*KeE7PYw7B{Q@Ub@8~`uGXe z^0gE^B4m0a7V(NZF|5cf5#g{kyUL=Oy@LE(rNS{jv`9UoKGW2slhDB9Mx623Qn91L(`JxanG9}L!cI{HL91j1n( zD5I75q1X6+7}oaze)WEVlVgQtMxl+I zxinWMCa$3{_Pp{)w6`Yo0m{&bT5_;k!v=PIH6X(|0e;!J0M20+nmr4k8`L#I2`5A1 z)nKl84U@S?Q`&_lmuh>!IHRD?t%e85@es1pOdEEgT)v|WutQ9O(XE#og2z8nt^j`{ zO7XtPN_`61)AQs=TT=)YjVcvnNWV|^jP$`rP66g^OCy9ngy_UbUXGiE12lRyv73^Y z^Pk)xQm!NlTgx+DN|Ox&R_Ihpa( zzU>7<+suG*h9S|Gf*#uxT*vO|g9%bK+f5N565sCUfmWbkSXZ4u*K~#d%EupoW&%aXjObjnI-xaXA?h?B!Zzx$jZQX zCx9tAPP+L)LxIr|aNo89TdXkTK;bXS!RCwuhT85x1d*2eQ|9rLXTy zU%xDSeMkEGK>GTtv)8w$ulJ>|zb1Pfb~>SJx23PYHhcYb>DPPH*I%E#{)Y7RE$Qp= z?Da(Y`sVa?EqlEueSKs4dNO-`L;Cu~>FcTN_3rfbuJrYE_PUHX$pNrLPmCxykR&;#6Sbefs`IlIL1f}YT&-nb!JpZDi%wH@!sPw)kYn$;z8b)ue(C!26P%th}Y9RU_YCV)@K>#K)|k z`OXrHFTSg^@0!YYm!Rjjmi8r;?_mRt%G*lS(aQIh*!2JVO606pzQ4pa5tSb(vC~E6 z2TPp;-T zyGzwaURn9E(mvMz@b9+DkB3X%{X}WsXyrZOez5X{BFjHn3X52NO7(oWe6sRnsd{bY zr*((s&z>n2Jm2N&`+0+}yIg$_7x=b)1Oz9qwfQTLc?{s{PJS?lO*rq6zlJ($qbY5h4tetJ?c)z6h$%P9AR z-&FB6euuWZPTKCeEU%m%*@_qa3=Hgh57YKkZ-o_x=)+1?U!gZEuAmJbeB*?N0cl)P zZhK>ueRqS0D`m9gGAZ#qILUDr+JOV>Na7>xW&tF1YRf?4`R$d2?eQzxg&!dixfU8% zsNLALmRQj625w3nSmiVluSLhjnf2oGzAbqceGC{;+l?=p*x- zHeW>szf7X4cEDHDH=ayh74~tskwQTD7J!3?k5D~2d6gi~)d+`_X(KYIq56sM|A4)D zb@40>N_wOXdfdFsMq+7$JG{Z&D;peGv%%Md2I=3cRvo1peY6;dshw4n6a;{@lBdW@ z9v|E{3Gn;aa;9B<`j>yDPl57U5Iw}4!o$388MJ+PzXVW`am;}J< z?F^DPsLqF>fj1VbA1S1V%EPpZFdhz-->pOCZ_%OhFhWk1hX-+_{4ht#LoRPE?kiQa zT!WL?A)L1rt3wqIU59!&b^Q%x9lO3x$F2|P*!5l=yM9&W9lR-3-pQt(rOFQ#tN#I~ zD#Av7q*z_9yo+y3l^-ou2~R#=gp*V_l>Ebm3a65Puu$Px@-KaVNW&q>bN!YEta z`aa!~%v4~V3xEEbAoG6x`9=NtCH?tjgSghcfmPCb_z?kyABbdlyKhx>c_BgQy6yVO zztw7&!hk))E84@W?|t{(jQJqDr7IZXGJG_hp zH6BCcWf-R+@>8~z*!pcm+c)rjhmMQDLsRZJID%$%_C#@qZCpe@v;r1?I+){(nQ8~& z?`nlr6LL&mlW;zT_eNMoPqh||9%_5AJ4XhEtDLW+&(|xxXvfV3?Ps(RFDKxaU&$Rw zRoh<&LfTNm?E)mUUlyarCoQC2PrEd^zKY7DUeo`cCRqlQ=l^Ub!dF1%Dh%}v_nH|B zw>2;nhJV7KyQ4~09B*SWO7CVR-qnD^pk^6U_~wwQ;zo<6m$5*ZzXIzxajHTiCI2eb%(jiFfQ0`%JUtRW9AWg7=i%L zHw`AM*RZ*}2E2Kz*6=(IYtQwec;S8c3Ic|!)l%HyMv0pl9I`&}L1zuy z)~MlXwzoa#SL~ed+=}mxDtrY?mUo0+7$q3Dzk}v5U3U1_AS%KlddiU!Grk z((zFA%a!6faDR4E(jJXptLyg2Fu}!*$uO?(VcXj5Qri~rYm-aE$qE!ZKwySpUc(1$ zZKhKMHWKpry8L)Dh_FDv6Cyj-fXK56&RVsVjXKRbg8-}VSB1cp@}6eJSj@j_F$+ee zkd7epZQk;1KsyKo{-AE)Oz9cvO_8gby+vL|wErp}92g&F>+Ur=ak)GhY5mo7y4ffw zdz#g|w;O18tpT*l1gcePI54!4^Zm{PI>R_mSFd15c*u^4LEQ9oLT-fE^NZ9=Mb~`y zH1L8aDGbA7BvT45_Ea!j&}M~0NP@sC_OCIxOIV|yt1uw@%9-1hD->ofZSqFmIoh*3 zn6;M_xmem=r>Q-f7pPZR(o zlD4{Ffww4EzEkIlh|X1c8r$J|OM++C(VgB=_OnP^TD7BWryBs(0i&d3YtlJ(Mq=&- zT~N}XvZ-PF3r!7xiBn_T=N1iQ74Flo+~Rbua})u;>m+w7UUkT}_24QsV4)6f$<-av zZln)s4|wto)CyVTuJWKPp;s}dDrN zo$twDidEMdT69j<4xcR8+u0{;ownae`;!CR3Qoy3C98r?n@`vQHkk8wsV){}3>!iw z8>M^&jIUtR!P!j@!x|BSTe3Yzm@($^oe2kQ-8s_xptLcbsDfgujTNPhm8-kb7$Q`J zKoWLCB$Opa(@8BBCrQV}hH8;Xf&nW?aE}9v%~sA1EcpxyzQ+JdFEt0R=DNqLp%}SB17Dfvnf0ONwqm2uz>`(KNH|@It%@S3V4R8Ef&XRrKf!pIr z%bet;TTwx=jWuudTyxdD-m3c3TvdOVtLjZu^;ugiecn}lHdobOUr<#q@Lt_SufD>1 z^<8fc1N7~G-W+dz=bp#ntwZCHcndWCE!Xb57{b#%${$^82>-9z-R$Gt!+1B@c;6p~ z;N$(dcva^jB^fPo|DWP0VU|<18lngn$F{*QI>cG(b z9Gec<@S^YVa{i%;%d-UH=86v;rF7K}yJMFX2DQ#nE7#9I%JuWx=;xv# zy@0k~I(Q^)TL|>b+CDt^(hF$&(BR>;ZIRS7Yx};zLl@BYy@U6qZQt;W+rDS;-V12^ z?!kM~wy%H2ZGY9^-L!q4s5x|SkiG5$0lk>Eoq!&DO9#Vvb-Z-~`uB*5PC)+{Zy}(+ z&LQU71muW$mlhD7H&NWFWqyGuc0Xev-N8D(^KbhA+gMbe?Of(M+LjdAQuw_%ZU@7M z<1Mc~m;=LG#Ya|^A`XVz2M?qJQ{~SL>-THL;d#&gJ|#w$@W=0i`$lwQ<{Xaj{zmZ@YjA+pGO6&l|N~GPw5wO5dWi>GQ7pX7ZWOzw{oR;~tRw zMJdewG>2Ii!uf9++;ahK-#B;^rO%gd+`!H`ktDWUY?8R1MeGp_s{EOe#ES>7zlgQ% z)}CPJJ^j~dDRST(qZb=YyR%URO7hV|npvdm;P4 zoE3_G0-pa9Vt(IPi=8r2!(L#6dqD;-I7%TwhAo4u{$r z9wLN(;B z><;U@PEv5(u;Iwl2S7Cv7Ee)%STo*3rLqt^T~Ei$awd|y6bsqIl8((Va$eg|~U#tcZ z4lB<-=@AU|1{CT1rmXFPzx(wcC{#b?De52nR<1u_*L)!#YuYrpuk>qD!-(yBDo1pO zT53pHDgCxdXu0}H@QR1%T!v!dk{|Ym-p6iOLb1e1csX9rl05ZKg%nDFhG?8I0C;Vrw10SNJNR{xvBAAsT4}1m`g(;IwV>O7g zkEqq8a9y!S+pLzKcx?s8b)|Cr81fb}FhN>JTdxX0_9W@D5 z_G}%{p=m-CRYrbF5X(W8AeKQ@!y@AXfG};OBEnet&icJh$#FWqlTC}sc#QpS4ZHXr`B8iq4^uweFuX*8f2ClsN`ISqDH;?u_w{OG7YoGOk^5w|mQt{be zx#hA;;C^7Vr9yE*g+u}wN%ckH5m6x~z|t|zD_+$qS>lp*ZeYiY7p(Q-E7p3kIlRa< z8+)>%*)3~TlC1S&)5_YzSeP%d2^`sLeS1aMi}Z`(wO(wDFW?83p&5@y+!0@N1G2K# zi|4NO;yGO}(q3)vdSRY=4e*6sFVZh`0@3bC<8xhv%*J;#plU(yA_9>xIsw z7XWg@DX&#_L)VKGyrXNqxN2qXJ!_SH_F6AS)_QSm*Nb$tmvy~JJ9_n6FRqC%y3uwl zzUZbI9bHJcv8S?5Vv92}3$S9M&ZN9~;80k4Bo=p0Rv*vZDsy(Mi z)=P|$cXtx0#wnl@`=tByBS1HAb%JtC;d9s7Hcp17x8gb5p$}g^?mQ6T7}nh)q3#$-LYB^X8&-!^?CcgcczM2KxOgQxnDYhKghg{Dz^!UXUD8;WP_Wm??c_MEfFvMda(Po<;mITkR$&+y+oQABtlM7}Tcr2q0 zMgWfqjp>ZU0NOZNmRzUT6(M>`5ar}DHFPv>lK-90yK@IyE_rYool+W%Nk+|^O$X!*i*MSM~8qc%$4LsBi13jc~QiP0H4O=9x zEovxY4|8+MsL31^Kcu!m~dkovN&o261r6T z!x3)7k$D#qnhkJ+){;xrH{7Y0k6fwwzno5jsXZn+be-=o8rhda1RVYwyLM&Pwab$$ z)bu*Jdkga975QOvCT9?V`i(ZF>ZgR%W7Hc7$=rr1M|Bnw-?=6o+h#XMgNchzxeg=M zNu$t4Jn=hi5tY3w8263uEIHEzFr6CsSP^|yDnXAtLO@H3yp%67sK5eo`uquskSk4B z&6yn|=3AD4S`=LPZQE~g_|ufcys?M+6P^ggQ07kHo(Vd1Ang$q@#hDer6Tum>C(M zGq@^rcq$oZ0|?L=>Q`pHj$G>*V)+59h7@#+4Jq{CL&NPaXGxE?Py+B)$Q}S*3b_fb zP9+nl2mEY80AZ*BFrbGda^;J|Fnstzphagd zto`OaJPJzR%v)q3MO>fP)fFd+It*VWcH&os!oUW~!D$8u)^RcX9RGRlz^JW`WqHJN zM!-!GEfk*=`H$V3Y%hSqFsrM|1J`&#K6R}HTa|i#Ra@c|2Y#Th*q>i5TgE(*b+2jP zEzg5XZu9e$g)Ul)!oFI}Ee8^S4`mt9l=dwX*ra@edP1bRYAY#as$Rt>{ICJJ67;on zil5O8?W9lPjiLKO7-JJ`Z${hB#l=bb?!H>v%M}@;;;#B*j+enp3sOTBpT&o-SWiW) zZntf%#&QYvXD$Z6idK~*ig{|jaJo31UC#vQ#+qVzC%ral;=SXAS#KDMa@dq^V`72| zT)uUt!6hUC;p3nM)|84>)ry;iRYT|mB)8iJH0R`vNvUqcZ88ng*j@u3z6j6iuV zH2Dq?kHoKlEwAk>3GEW z%*@{M$VmFqasdqBP)o@r7LUn2Y6iFN3?0`q{qig-yvCwp)oj?LYU!gtF$97QfXLuC zrsY8OGn!0L#xq|2A*>Zp%KJ?BQF z!9nS#C<$(I_VOHOWI7rKm5xRz7{?)>WE_Ee8Oi!kzJpp;xedTTNURD~tK_&*M*Pa= z;VH#{t3`x$NO-9h22R7f!dm_UYxxV+>qM}H>aV@+18|fLTqn zdv6EGxA}!)my%{wX+)ZHU!xisjHI#Toz-G!a#pYOO*7}u6F1Ks)2=I{Ka|}gZTds- zNSnSO0po;T0KouoMLumVH9N*|Kx0@sf`S800qHOF6nlab6ED1Vyb?$!vgG*7z@_pz2rM!>U_eyjvfnq2?YI z(Ccp9>FTBjt54|x>k%v3Yr@L2(}k(GxeqRhA9U6*c)Ggr!Rn{IhO*Vr(auJ@yX5z~fY6z`^?)bW+K~l{zU;weLZon4tX1_Hx+Um0}KM z>4Q`Nra}UyG8*5_Pk9z^36t+rjyVS!>IGJ>#i@vpqqOe4x zDjIRTa7|IOCQmcCGwtMws;on{l1GGzS*&bOJ#bmkiFQ=xtMXRd&Hb{4hb8tWeH4~( zAdsrPjlFTLDU_4VcJ#UR!HT#c##Nb2x_-!_GU%UE*QZ(UE|ZvsF+Zql#d~ZiZMQjC zUDs}|*&f=M+B2H&V{6nhDiVmF4A@ul{(LqxL?i4=(eWZ}VQ{S$$Q!fzIX6Rb#38S} z(l4#0;GLq6v_&^BYhwd`w(wvx>2ET?M{K$yjNppeQgg#83?U$0Mp1;%#JE;0T`*{y zHc6h9kflJYT*|IQ1w6?-RByXWfMKpwA!u^7qT0OWg6B|cNMl3>OQoj@CebIpM3?!H z$%PGSEKe21yY8@6w?4#vh0OZR16fMgXgYc$NR}z)s?ue0VbxLoRKo6Heau2(TVV$* z8J(OxOZm$V-O^qda+#Vpgvh2yL~f0omZ6}N)6U8ledgfqlU~%vV5-H_K$)x4Y#haA zMxrM)gMNPSimbDGwT%wYC<~8S=_@d6qY&FG!!!sdO^614)dF6oZ!iYYiYl@lJkx%T z=xdj>RMpQ-1%Ogi&tWeyO6u)xPSW|_JDkJ4 zX3+AAp7knVPy(||*Vr7}2)qnSBX5d0cc3u9!8Wg+fk{`Nhdiu)4#uYEmu%`QluG55 z+ntn3>-BIwbNKg^m4{7vb{H^R4F3)cO_)<`9

8SJ$_mFjMa7!fV;k376nMiEn~V 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 Ytf`-1=-7tTP{w*BF^>{t{7wA-07!kCQ2+n{ literal 1050673 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

HmH;NhN9)RZ~a}(6|>GRu2@P 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

i&+(tK`#mM|`fZ;4&XFg3ypb}{TThuP3o^)^ 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 diff --git a/srml/consensus/src/lib.rs b/srml/consensus/src/lib.rs index 3da15255ae..ef90c61f42 100644 --- a/srml/consensus/src/lib.rs +++ b/srml/consensus/src/lib.rs @@ -244,6 +244,12 @@ impl Module { } } + /// Set a single authority by index. + pub fn set_authority_count(count: u32) { + Self::save_original_authorities(None); + AuthorityStorageVec::::set_count(count); + } + /// Set a single authority by index. pub fn set_authority(index: u32, key: &T::SessionKey) { let current_authority = AuthorityStorageVec::::item(index); diff --git a/srml/session/Cargo.toml b/srml/session/Cargo.toml index 84b49b7788..4f1fe086cf 100644 --- a/srml/session/Cargo.toml +++ b/srml/session/Cargo.toml @@ -20,6 +20,7 @@ timestamp = { package = "srml-timestamp", path = "../timestamp", default-feature [dev-dependencies] substrate-primitives = { path = "../../core/primitives" } runtime_io = { package = "sr-io", path = "../../core/sr-io" } +lazy_static = "1.0" [features] default = ["std"] diff --git a/srml/session/src/lib.rs b/srml/session/src/lib.rs index d7d48e27f2..956c8e03fe 100644 --- a/srml/session/src/lib.rs +++ b/srml/session/src/lib.rs @@ -184,8 +184,12 @@ impl Module { >::put(block_number); } + T::OnSessionChange::on_session_change(time_elapsed, apply_rewards); + // Update any changes in session keys. - for (i, v) in Self::validators().into_iter().enumerate() { + let v = Self::validators(); + >::set_authority_count(v.len() as u32); + for (i, v) in v.into_iter().enumerate() { >::set_authority( i as u32, &>::get(&v) @@ -193,8 +197,6 @@ impl Module { .unwrap_or_default() ); }; - - T::OnSessionChange::on_session_change(time_elapsed, apply_rewards); } /// Get the time that should have elapsed over a session if everything was working perfectly. @@ -224,6 +226,7 @@ impl OnFreeBalanceZero for Module { #[cfg(test)] mod tests { use super::*; + use std::cell::RefCell; use srml_support::{impl_outer_origin, assert_ok}; use runtime_io::with_externalities; use substrate_primitives::{H256, Blake2Hasher}; @@ -235,6 +238,17 @@ mod tests { pub enum Origin for Test {} } + thread_local!{ + static NEXT_VALIDATORS: RefCell> = RefCell::new(vec![1, 2, 3]); + } + + pub struct TestOnSessionChange; + impl OnSessionChange for TestOnSessionChange { + fn on_session_change(_elapsed: u64, _should_reward: bool) { + NEXT_VALIDATORS.with(|v| Session::set_validators(&*v.borrow())); + } + } + #[derive(Clone, Eq, PartialEq)] pub struct Test; impl consensus::Trait for Test { @@ -261,7 +275,7 @@ mod tests { } impl Trait for Test { type ConvertAccountIdToSessionKey = ConvertUintAuthorityId; - type OnSessionChange = (); + type OnSessionChange = TestOnSessionChange; type Event = (); } @@ -273,14 +287,14 @@ mod tests { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; t.extend(consensus::GenesisConfig::{ code: vec![], - authorities: vec![UintAuthorityId(1), UintAuthorityId(2), UintAuthorityId(3)], + authorities: NEXT_VALIDATORS.with(|l| l.borrow().iter().cloned().map(UintAuthorityId).collect()), }.build_storage().unwrap().0); t.extend(timestamp::GenesisConfig::{ period: 5, }.build_storage().unwrap().0); t.extend(GenesisConfig::{ session_length: 2, - validators: vec![1, 2, 3], + validators: NEXT_VALIDATORS.with(|l| l.borrow().clone()), keys: vec![], }.build_storage().unwrap().0); runtime_io::TestExternalities::new(t) @@ -289,12 +303,35 @@ mod tests { #[test] fn simple_setup_should_work() { with_externalities(&mut new_test_ext(), || { - assert_eq!(Consensus::authorities(), vec![UintAuthorityId(1).into(), UintAuthorityId(2).into(), UintAuthorityId(3).into()]); + assert_eq!(Consensus::authorities(), vec![UintAuthorityId(1), UintAuthorityId(2), UintAuthorityId(3)]); assert_eq!(Session::length(), 2); assert_eq!(Session::validators(), vec![1, 2, 3]); }); } + #[test] + fn authorities_should_track_validators() { + with_externalities(&mut new_test_ext(), || { + NEXT_VALIDATORS.with(|v| *v.borrow_mut() = vec![1, 2]); + assert_ok!(Session::force_new_session(false)); + Session::check_rotate_session(1); + assert_eq!(Session::validators(), vec![1, 2]); + assert_eq!(Consensus::authorities(), vec![UintAuthorityId(1), UintAuthorityId(2)]); + + NEXT_VALIDATORS.with(|v| *v.borrow_mut() = vec![1, 2, 4]); + assert_ok!(Session::force_new_session(false)); + Session::check_rotate_session(2); + assert_eq!(Session::validators(), vec![1, 2, 4]); + assert_eq!(Consensus::authorities(), vec![UintAuthorityId(1), UintAuthorityId(2), UintAuthorityId(4)]); + + NEXT_VALIDATORS.with(|v| *v.borrow_mut() = vec![1, 2, 3]); + assert_ok!(Session::force_new_session(false)); + Session::check_rotate_session(3); + assert_eq!(Session::validators(), vec![1, 2, 3]); + assert_eq!(Consensus::authorities(), vec![UintAuthorityId(1), UintAuthorityId(2), UintAuthorityId(3)]); + }); + } + #[test] fn should_work_with_early_exit() { with_externalities(&mut new_test_ext(), || { diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index 151668f691..aa3ef1d4b2 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -14,7 +14,205 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -//! Staking manager: Periodically determines the best set of validators. +//! # Staking Module +//! +//! +//! The staking module is the means by which a set of network maintainers (known as "authorities" in some contexts and "validators" in others) +//! are chosen based upon those who voluntarily place funds under deposit. Under deposit, those funds are rewarded under +//! normal operation but are held at pain of "slash" (expropriation) should the staked maintainer be found not to be +//! discharging their duties properly. +//! You can start using the Staking module by implementing the staking [`Trait`]. +//! +//! ## Overview +//! +//! ### Terminology +//! +//! +//! - Staking: The process of locking up funds for some time, placing them at risk of slashing (loss) in order to become a rewarded maintainer of the network. +//! - Validating: The process of running a node to actively maintain the network, either by producing blocks or guaranteeing finality of the chain. +//! - Nominating: The process of placing staked funds behind one or more validators in order to share in any reward, and punishment, they take. +//! - Stash account: The account holding an owner's funds used for staking. +//! - Controller account: The account which controls an owner's funds for staking. +//! - Era: A (whole) number of sessions, which is the period that the validator set (and each validator's active nominator set) is recalculated and where rewards are paid out. +//! - Slash: The punishment of a staker by reducing their funds ([reference](#references)). +//! +//! ### Goals +//! +//! +//! The staking system in Substrate NPoS is designed to achieve three goals: +//! - It should be possible to stake funds that are controlled by a cold wallet. +//! - It should be possible to withdraw some, or deposit more, funds without interrupting the role of an entity. +//! - It should be possible to switch between roles (nominator, validator, idle) with minimal overhead. +//! +//! ### Scenarios +//! +//! #### Staking +//! +//! Almost any interaction with the staking module requires at least one account to become **bonded**, also known as +//! being a **staker**. For this, all that it is needed is a secondary _**stash account**_ which will hold the staked funds. +//! Henceforth, the former account that initiated the interest is called the **controller** and the latter, holding the +//! funds, is named the **stash**. Also, note that this implies that entering the staking process requires an _account +//! pair_, one to take the role of the controller and one to be the frozen stash account (any value locked in +//! stash cannot be used, hence called _frozen_). This process in the public API is mostly referred to as _bonding_ via +//! the `bond()` function. +//! +//! Any account pair successfully placed at stake can accept three possible roles, namely: `validate`, `nominate` or +//! simply `chill`. Note that during the process of accepting these roles, the _controller_ account is always responsible +//! for declaring interest and the _stash_ account stays untouched, without directly interacting in any operation. +//! +//! #### Validating +//! +//! A **validator** takes the role of either validating blocks or ensuring their finality, maintaining the veracity of +//! the network. A validator should avoid both any sort of malicious misbehavior and going offline. +//! Bonded accounts that state interest in being a validator do NOT get immediately chosen as a validator. Instead, they +//! are declared as a _candidate_ and they _might_ get elected at the _next **era**_ as a validator. The result of the +//! election is determined by nominators and their votes. An account can become a validator via the `validate()` call. +//! +//! #### Nomination +//! +//! A **nominator** does not take any _direct_ role in maintaining the network, instead, it votes on a set of validators +//! to be elected. Once interest in nomination is stated by an account, it takes effect _immediately_, meaning that its +//! votes will be taken into account at the next election round. As mentioned above, a nominator must also place some +//! funds in a stash account, essentially indicating the _weight_ of its vote. In some sense, the nominator bets on the +//! honesty of a set of validators by voting for them, with the goal of having a share of the reward granted to them. +//! Any rewards given to a validator is shared among that validator and all of the nominators that voted for it. The +//! same logic applies to the slash of a validator; if a validator misbehaves all of its nominators also get slashed. +//! This rule incentivizes the nominators to NOT vote for the misbehaving/offline validators as much as possible, simply +//! because the nominators will also lose funds if they vote poorly. An account can become a nominator via the +//! `nominate()` call. +//! +//! #### Rewards and Slash +//! +//! The **reward and slashing** procedure are the core of the staking module, attempting to _embrace valid behavior_ +//! while _punishing any misbehavior or lack of availability_. Slashing can occur at any point in time, once +//! misbehavior is reported. One such misbehavior is a validator being detected as offline more than a certain number of +//! times. Once slashing is determined, a value is deducted from the balance of the validator and all the nominators who +//! voted for this validator. Same rules apply to the rewards in the sense of being shared among a validator and its +//! associated nominators. +//! +//! Finally, any of the roles above can choose to step back temporarily and just chill for a while. This means that if +//! they are a nominator, they will not be considered as voters anymore and if they are validators, they will no longer +//! be a candidate for the next election (again, both effects apply at the beginning of the next era). An account can +//! step back via the `chill()` call. +//! +//! ## Interface +//! +//! ### Types +//! +//! - `Currency`: Used as the measurement means of staking and funds management. +//! +//! ### Dispatchable +//! +//! The Dispatchable functions of the staking module enable the steps needed for entities to accept and change their +//! role, alongside some helper functions to get/set the metadata of the module. +//! +//! Please refer to the [`Call`] enum and its associated variants for a detailed list of dispatchable functions. +//! +//! ### Public +//! The staking module contains many public storage items and (im)mutable functions. Please refer to the [struct list](#structs) +//! below and the [`Module`](https://crates.parity.io/srml_staking/struct.Module.html) struct definition for more details. +//! +//! ## Usage +//! +//! +//! ### Snippet: Bonding and Accepting Roles +//! +//! An arbitrary account pair, given that the associated stash has the required funds, can become stakers via the following call: +//! +//! ```rust,ignore +//! // bond account 3 as stash +//! // account 4 as controller +//! // with stash value 1500 units +//! // while the rewards get transferred to the controller account. +//! Staking::bond(Origin::signed(3), 4, 1500, RewardDestination::Controller); +//! ``` +//! +//! To state desire to become a validator: +//! +//! ```rust,ignore +//! // controller account 4 states desire for validation with the given preferences. +//! Staking::validate(Origin::signed(4), ValidatorPrefs::default()); +//! ``` +//! +//! Note that, as mentioned, the stash account is transparent in such calls and only the controller initiates the function calls. +//! +//! Similarly, to state desire in nominating: +//! +//! ```rust,ignore +//! // controller account 4 nominates for account 10 and 20. +//! Staking::nominate(Origin::signed(4), vec![20, 10]); +//! ``` +//! +//! Finally, account 4 can withdraw from any of the above roles via +//! +//! ```rust,ignore +//! Staking::chill(Origin::signed(4)); +//! ``` +//! +//! ## Implementation Details +//! +//! ### Slot Stake +//! +//! The term `slot_stake` will be used throughout this section. It refers to a value calculated at the end of each era, +//! containing the _minimum value at stake among all validators._ +//! +//! ### Reward Calculation +//! +//! - Rewards are recorded **per-session** and paid **per-era**. The value of the reward for each session is calculated at +//! the end of the session based on the timeliness of the session, then accumulated to be paid later. The value of +//! the new _per-session-reward_ is calculated at the end of each era by multiplying `slot_stake` and a configuration +//! storage item named `SessionReward`. +//! - Once a new era is triggered, rewards are paid to the validators and the associated nominators. +//! - The validator can declare an amount, named `validator_payment`, that does not get shared with the nominators at +//! each reward payout through their `ValidatorPrefs`. This value gets deducted from the total reward that can be paid. +//! The remaining portion is split among the validator and all of the nominators who had a vote for this validator, +//! proportional to their staked value. +//! - All entities who receive a reward have the option to choose their reward destination, through the `Payee` storage item (see `set_payee()`), to be one of the following: +//! - Controller account. +//! - Stash account, not increasing the staked value. +//! - Stash account, also increasing the staked value. +//! +//! ### Slashing details +//! +//! - A validator can be _reported_ to be offline at any point via `on_offline_validator` public function. +//! - Each validator declares how many times it can be _reported_ before it actually gets slashed via the +//! `unstake_threshold` in `ValidatorPrefs`. On top of this, the module also introduces an `OfflineSlashGrace`, +//! which applies to all validators and prevents them from getting immediately slashed. +//! - Similar to the reward value, the slash value is updated at the end of each era by multiplying `slot_stake` and a +//! configuration storage item, `OfflineSlash`. +//! - Once a validator has been reported a sufficient number of times, the actual value that gets deducted from that +//! validator, and every single nominator that voted for it is calculated by multiplying the result of the above point +//! by `2.pow(unstake_threshold)`. +//! - If the previous overflows, then `slot_stake` is used. +//! - If the previous is more than what the validator/nominator has in stake, all of its stake is slashed (`.max(total_stake)`). +//! +//! ### Additional Fund Management Operations +//! +//! Any funds already placed into stash can be the target of the following operations: +//! +//! - The controller account can free a portion (or all) of the funds using the `unbond()` call. Note that the funds +//! are not immediately accessible, instead, a duration denoted by `BondingDuration` (in number of eras) must pass until the funds can actually be removed. +//! - To actually remove the funds, once the bonding duration is over, `withdraw_unbonded()` can be used. +//! - As opposed to the above, additional funds can be added to the stash account via the `bond_extra()` transaction call. +//! +//! ### Election algorithm details. +//! +//! The current election algorithm is implemented based on Phragmén. The reference implementation can be found [here](https://github.com/w3f/consensus/tree/master/NPoS). +//! +//! ## GenesisConfig +//! +//! See the [`GensisConfig`] for a list of attributes that can be provided. +//! +//! ## Related Modules +//! +//! - [**Balances**](https://crates.parity.io/srml_balances/index.html): Used to manage values at stake. +//! - [**Sessions**](https://crates.parity.io/srml_session/index.html): Used to manage sessions. Also, a list of new validators is also stored in the sessions module's `Validators` at the end of each era. +//! - [**System**](https://crates.parity.io/srml_system/index.html): Used to obtain block number and time, among other details. +//! +//! # References +//! +//! 1. This document is written as a more verbose version of the original [Staking.md](../Staking.md) file. Some sections, are taken directly from the aforementioned document. + #![cfg_attr(not(feature = "std"), no_std)] @@ -39,14 +237,23 @@ mod mock; mod tests; mod phragmen; +use phragmen::{elect, ElectionConfig}; + const RECENT_OFFLINE_COUNT: usize = 32; const DEFAULT_MINIMUM_VALIDATOR_COUNT: u32 = 4; const MAX_NOMINATIONS: usize = 16; const MAX_UNSTAKE_THRESHOLD: u32 = 10; -// Indicates the initial status of the staker +/// Indicates the initial status of the staker. #[cfg_attr(feature = "std", derive(Debug, Serialize, Deserialize))] -pub enum StakerStatus { Idle, Validator, Nominator(Vec), } +pub enum StakerStatus { + /// Chilling. + Idle, + /// Declared state in validating or already participating in it. + Validator, + /// Nominating for a group of other stakers. + Nominator(Vec), +} /// A destination account for payment. #[derive(PartialEq, Eq, Copy, Clone, Encode, Decode)] @@ -143,7 +350,7 @@ impl< #[derive(PartialEq, Eq, PartialOrd, Ord, Clone, Encode, Decode)] #[cfg_attr(feature = "std", derive(Debug))] pub struct IndividualExposure { - /// Which nominator. + /// The stash account of the nominator in question. who: AccountId, /// Amount of funds exposed. #[codec(compact)] @@ -207,9 +414,6 @@ decl_storage! { /// The length of the bonding duration in blocks. pub BondingDuration get(bonding_duration) config(): T::BlockNumber = T::BlockNumber::sa(1000); - // TODO: remove once Alex/CC updated #1785 - pub Invulerables get(invulerables): Vec; - /// Any validators that may never be slashed or forcibly kicked. It's a Vec since they're easy to initialise /// and the performance hit is minimal (we expect no more than four invulnerables) and restricted to testnets. pub Invulnerables get(invulnerables) config(): Vec; @@ -219,21 +423,19 @@ decl_storage! { /// Map from all (unlocked) "controller" accounts to the info regarding the staking. pub Ledger get(ledger): map T::AccountId => Option, T::BlockNumber>>; - /// Where the reward payment should be made. + /// Where the reward payment should be made. Keyed by stash. pub Payee get(payee): map T::AccountId => RewardDestination; - /// The set of keys are all controllers that want to validate. - /// - /// The values are the preferences that a validator has. + /// The map from (wannabe) validator stash key to the preferences of that validator. pub Validators get(validators): linked_map T::AccountId => ValidatorPrefs>; - /// The set of keys are all controllers that want to nominate. - /// - /// The value are the nominations. + /// The map from nominator stash key to the set of stash keys of all validators to nominate. pub Nominators get(nominators): linked_map T::AccountId => Vec; /// Nominators for a particular account that is in action right now. You can't iterate through validators here, /// but you can find them in the `sessions` module. + /// + /// This is keyed by the stash account. pub Stakers get(stakers): map T::AccountId => Exposure>; // The historical validators and their nominations for a given era. Stored as a trie root of the mapping @@ -244,13 +446,14 @@ decl_storage! { // entry removed down to a specific number of entries (probably around 90 for a 3 month history). // pub HistoricalStakers get(historical_stakers): map T::BlockNumber => Option; + /// The currently elected validator set keyed by stash account ID. + pub CurrentElected get(current_elected): Vec; + /// The current era index. pub CurrentEra get(current_era) config(): T::BlockNumber; /// Maximum reward, per validator, that is provided per acceptable session. pub CurrentSessionReward get(current_session_reward) config(): BalanceOf; - /// Slash, per validator that is taken for the first time they are found to be offline. - pub CurrentOfflineSlash get(current_offline_slash) config(): BalanceOf; /// The accumulated reward for the current era. Reset to zero at the beginning of the era and /// increased for every successfully finished session. @@ -282,6 +485,7 @@ decl_storage! { build(|storage: &mut primitives::StorageOverlay, _: &mut primitives::ChildrenStorageOverlay, config: &GenesisConfig| { with_storage(storage, || { for &(ref stash, ref controller, balance, ref status) in &config.stakers { + assert!(T::Currency::free_balance(&stash) >= balance); let _ = >::bond( T::Origin::from(Some(stash.clone()).into()), T::Lookup::unlookup(controller.clone()), @@ -315,6 +519,8 @@ decl_module! { /// Take the origin account as a stash and lock up `value` of its balance. `controller` will be the /// account that controls it. + /// + /// The dispatch origin for this call must be _Signed_. fn bond(origin, controller: ::Source, #[compact] value: BalanceOf, payee: RewardDestination) { let stash = ensure_signed(origin)?; @@ -324,15 +530,18 @@ decl_module! { let controller = T::Lookup::lookup(controller)?; + if >::exists(&controller) { + return Err("controller already paired") + } + // You're auto-bonded forever, here. We might improve this by only bonding when // you actually validate/nominate. >::insert(&stash, controller.clone()); + >::insert(&stash, payee); let stash_balance = T::Currency::free_balance(&stash); let value = value.min(stash_balance); - - Self::update_ledger(&controller, StakingLedger { stash, total: value, active: value, unlocking: vec![] }); - >::insert(&controller, payee); + Self::update_ledger(&controller, &StakingLedger { stash, total: value, active: value, unlocking: vec![] }); } /// Add some extra amount that have appeared in the stash `free_balance` into the balance up for @@ -340,7 +549,7 @@ decl_module! { /// /// Use this if there are additional funds in your stash account that you wish to bond. /// - /// NOTE: This call must be made by the controller, not the stash. + /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. fn bond_extra(origin, max_additional: BalanceOf) { let controller = ensure_signed(origin)?; let mut ledger = Self::ledger(&controller).ok_or("not a controller")?; @@ -350,7 +559,7 @@ decl_module! { let extra = (stash_balance - ledger.total).min(max_additional); ledger.total += extra; ledger.active += extra; - Self::update_ledger(&controller, ledger); + Self::update_ledger(&controller, &ledger); } } @@ -361,7 +570,7 @@ decl_module! { /// Once the unlock period is done, you can call `withdraw_unbonded` to actually move /// the funds out of management ready for transfer. /// - /// NOTE: This call must be made by the controller, not the stash. + /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. /// /// See also [`Call::withdraw_unbonded`]. fn unbond(origin, #[compact] value: BalanceOf) { @@ -382,7 +591,7 @@ decl_module! { let era = Self::current_era() + Self::bonding_duration(); ledger.unlocking.push(UnlockChunk { value, era }); - Self::update_ledger(&controller, ledger); + Self::update_ledger(&controller, &ledger); } } @@ -391,68 +600,90 @@ decl_module! { /// This essentially frees up that balance to be used by the stash account to do /// whatever it wants. /// - /// NOTE: This call must be made by the controller, not the stash. + /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. /// /// See also [`Call::unbond`]. fn withdraw_unbonded(origin) { let controller = ensure_signed(origin)?; let ledger = Self::ledger(&controller).ok_or("not a controller")?; let ledger = ledger.consolidate_unlocked(Self::current_era()); - Self::update_ledger(&controller, ledger); + Self::update_ledger(&controller, &ledger); } /// Declare the desire to validate for the origin controller. /// /// Effects will be felt at the beginning of the next era. /// - /// NOTE: This call must be made by the controller, not the stash. + /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. fn validate(origin, prefs: ValidatorPrefs>) { let controller = ensure_signed(origin)?; - let _ledger = Self::ledger(&controller).ok_or("not a controller")?; + let ledger = Self::ledger(&controller).ok_or("not a controller")?; + let stash = &ledger.stash; ensure!(prefs.unstake_threshold <= MAX_UNSTAKE_THRESHOLD, "unstake threshold too large"); - >::remove(&controller); - >::insert(controller, prefs); + >::remove(stash); + >::insert(stash, prefs); } /// Declare the desire to nominate `targets` for the origin controller. /// /// Effects will be felt at the beginning of the next era. /// - /// NOTE: This call must be made by the controller, not the stash. + /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. fn nominate(origin, targets: Vec<::Source>) { let controller = ensure_signed(origin)?; - let _ledger = Self::ledger(&controller).ok_or("not a controller")?; + let ledger = Self::ledger(&controller).ok_or("not a controller")?; + let stash = &ledger.stash; ensure!(!targets.is_empty(), "targets cannot be empty"); let targets = targets.into_iter() .take(MAX_NOMINATIONS) .map(T::Lookup::lookup) .collect::, &'static str>>()?; - >::remove(&controller); - >::insert(controller, targets); + >::remove(stash); + >::insert(stash, targets); } /// Declare no desire to either validate or nominate. /// /// Effects will be felt at the beginning of the next era. /// - /// NOTE: This call must be made by the controller, not the stash. + /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. fn chill(origin) { let controller = ensure_signed(origin)?; - let _ledger = Self::ledger(&controller).ok_or("not a controller")?; - >::remove(&controller); - >::remove(&controller); + let ledger = Self::ledger(&controller).ok_or("not a controller")?; + let stash = &ledger.stash; + >::remove(stash); + >::remove(stash); } /// (Re-)set the payment target for a controller. /// /// Effects will be felt at the beginning of the next era. /// - /// NOTE: This call must be made by the controller, not the stash. + /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. fn set_payee(origin, payee: RewardDestination) { let controller = ensure_signed(origin)?; - let _ledger = Self::ledger(&controller).ok_or("not a controller")?; - >::insert(&controller, payee); + let ledger = Self::ledger(&controller).ok_or("not a controller")?; + let stash = &ledger.stash; + >::insert(stash, payee); + } + + /// (Re-)set the payment target for a controller. + /// + /// Effects will be felt at the beginning of the next era. + /// + /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. + fn set_controller(origin, controller: ::Source) { + let stash = ensure_signed(origin)?; + let old_controller = Self::bonded(&stash).ok_or("not a stash")?; + let controller = T::Lookup::lookup(controller)?; + if >::exists(&controller) { + return Err("controller already paired") + } + if controller != old_controller { + >::insert(&stash, &controller); + if let Some(l) = >::take(&old_controller) { >::insert(&controller, l) }; + } } /// Set the number of sessions in an era. @@ -488,7 +719,7 @@ decl_module! { } } -/// An event in this module. +// An event in this module. decl_event!( pub enum Event where Balance = BalanceOf, ::AccountId { /// All validators have been rewarded by the given balance. @@ -515,13 +746,6 @@ impl Module { Self::sessions_per_era() * >::length() } - /// The stashed funds whose staking activities are controlled by `controller` and - /// which are actively in stake right now. - pub fn stash_balance(controller: &T::AccountId) -> BalanceOf { - Self::ledger(controller) - .map_or_else(Zero::zero, |l| l.active) - } - /// The total balance that can be slashed from a validator controller account as of /// right now. pub fn slashable_balance(who: &T::AccountId) -> BalanceOf { @@ -531,21 +755,21 @@ impl Module { // MUTABLES (DANGEROUS) /// Update the ledger for a controller. This will also update the stash lock. - fn update_ledger(controller: &T::AccountId, ledger: StakingLedger, T::BlockNumber>) { + fn update_ledger(controller: &T::AccountId, ledger: &StakingLedger, T::BlockNumber>) { T::Currency::set_lock(STAKING_ID, &ledger.stash, ledger.total, T::BlockNumber::max_value(), WithdrawReasons::all()); >::insert(controller, ledger); } /// Slash a given validator by a specific amount. Removes the slash from their balance by preference, /// and reduces the nominators' balance if needed. - fn slash_validator(v: &T::AccountId, slash: BalanceOf) { + fn slash_validator(stash: &T::AccountId, slash: BalanceOf) { // The exposure (backing stake) information of the validator to be slashed. - let exposure = Self::stakers(v); + let exposure = Self::stakers(stash); // The amount we are actually going to slash (can't be bigger than their total exposure) let slash = slash.min(exposure.total); // The amount we'll slash from the validator's stash directly. let own_slash = exposure.own.min(slash); - let (mut imbalance, missing) = T::Currency::slash(v, own_slash); + let (mut imbalance, missing) = T::Currency::slash(stash, own_slash); let own_slash = own_slash - missing; // The amount remaining that we can't slash from the validator, that must be taken from the nominators. let rest_slash = slash - own_slash; @@ -565,17 +789,22 @@ impl Module { /// Actually make a payment to a staker. This uses the currency's reward function /// to pay the right payee for the given staker account. - fn make_payout(who: &T::AccountId, amount: BalanceOf) -> Option> { - match Self::payee(who) { - RewardDestination::Controller => T::Currency::deposit_into_existing(&who, amount).ok(), - RewardDestination::Stash => Self::ledger(who) - .and_then(|l| T::Currency::deposit_into_existing(&l.stash, amount).ok()), - RewardDestination::Staked => - Self::ledger(who).and_then(|mut l| { + fn make_payout(stash: &T::AccountId, amount: BalanceOf) -> Option> { + let dest = Self::payee(stash); + match dest { + RewardDestination::Controller => Self::bonded(stash) + .and_then(|controller| + T::Currency::deposit_into_existing(&controller, amount).ok() + ), + RewardDestination::Stash => + T::Currency::deposit_into_existing(stash, amount).ok(), + RewardDestination::Staked => Self::bonded(stash) + .and_then(|c| Self::ledger(&c).map(|l| (c, l))) + .and_then(|(controller, mut l)| { l.active += amount; l.total += amount; - let r = T::Currency::deposit_into_existing(&l.stash, amount).ok(); - Self::update_ledger(who, l); + let r = T::Currency::deposit_into_existing(stash, amount).ok(); + Self::update_ledger(&controller, &l); r }), } @@ -583,22 +812,23 @@ impl Module { /// Reward a given validator by a specific amount. Add the reward to their, and their nominators' /// balance, pro-rata based on their exposure, after having removed the validator's pre-payout cut. - fn reward_validator(who: &T::AccountId, reward: BalanceOf) { - let off_the_table = reward.min(Self::validators(who).validator_payment); + fn reward_validator(stash: &T::AccountId, reward: BalanceOf) { + let off_the_table = reward.min(Self::validators(stash).validator_payment); let reward = reward - off_the_table; let mut imbalance = >::zero(); let validator_cut = if reward.is_zero() { Zero::zero() } else { - let exposure = Self::stakers(who); + let exposure = Self::stakers(stash); let total = exposure.total.max(One::one()); let safe_mul_rational = |b| b * reward / total;// FIXME #1572: avoid overflow for i in &exposure.others { - imbalance.maybe_subsume(Self::make_payout(&i.who, safe_mul_rational(i.value))); + let nom_payout = safe_mul_rational(i.value); + imbalance.maybe_subsume(Self::make_payout(&i.who, nom_payout)); } safe_mul_rational(exposure.own) }; - imbalance.maybe_subsume(Self::make_payout(who, validator_cut + off_the_table)); + imbalance.maybe_subsume(Self::make_payout(stash, validator_cut + off_the_table)); T::Reward::on_unbalanced(imbalance); } @@ -637,7 +867,7 @@ impl Module { // Payout let reward = >::take(); if !reward.is_zero() { - let validators = >::validators(); + let validators = Self::current_elected(); for v in validators.iter() { Self::reward_validator(v, reward); } @@ -661,58 +891,71 @@ impl Module { // Reassign all Stakers. let slot_stake = Self::select_validators(); - // Update the balances for slashing/rewarding according to the stakes. - >::put(Self::offline_slash() * slot_stake); + // Update the balances for rewarding according to the stakes. >::put(Self::session_reward() * slot_stake); } + fn slashable_balance_of(stash: &T::AccountId) -> BalanceOf { + Self::bonded(stash).and_then(Self::ledger).map(|l| l.total).unwrap_or_default() + } + /// Select a new validator set from the assembled stakers and their role preferences. /// - /// @returns the new SlotStake value. + /// Returns the new SlotStake value. fn select_validators() -> BalanceOf { - // Map of (would-be) validator account to amount of stake backing it. - let rounds = || >::get() as usize; let validators = || >::enumerate(); let nominators = || >::enumerate(); - let stash_of = |w| Self::stash_balance(&w); let min_validator_count = Self::minimum_validator_count() as usize; - let elected_candidates = phragmen::elect::( + let maybe_elected_candidates = elect::( rounds, validators, nominators, - stash_of, - min_validator_count + Self::slashable_balance_of, + min_validator_count, + ElectionConfig::> { + equalise: false, + tolerance: >::sa(10 as u64), + iterations: 10, + } ); - // Figure out the minimum stake behind a slot. - let slot_stake = elected_candidates - .iter() - .min_by_key(|c| c.exposure.total) - .map(|c| c.exposure.total) - .unwrap_or_default(); - >::put(&slot_stake); - - // Clear Stakers and reduce their slash_count. - for v in >::validators().iter() { - >::remove(v); - let slash_count = >::take(v); - if slash_count > 1 { - >::insert(v, slash_count - 1); + if let Some(elected_candidates) = maybe_elected_candidates { + // Clear Stakers and reduce their slash_count. + for v in Self::current_elected().iter() { + >::remove(v); + let slash_count = >::take(v); + if slash_count > 1 { + >::insert(v, slash_count - 1); + } } - } - // Populate Stakers. - for candidate in &elected_candidates { - >::insert(candidate.who.clone(), candidate.exposure.clone()); - } + // Populate Stakers and figure out the minimum stake behind a slot. + let mut slot_stake = elected_candidates[0].exposure.total; + for c in &elected_candidates { + if c.exposure.total < slot_stake { + slot_stake = c.exposure.total; + } + >::insert(c.who.clone(), c.exposure.clone()); + } + >::put(&slot_stake); - // Set the new validator set. - >::set_validators( - &elected_candidates.into_iter().map(|i| i.who).collect::>() - ); - - slot_stake + // Set the new validator set. + let elected_stashes = elected_candidates.into_iter().map(|i| i.who).collect::>(); + >::put(&elected_stashes); + >::set_validators( + &elected_stashes.into_iter().map(|s| Self::bonded(s).unwrap_or_default()).collect::>() + ); + + slot_stake + } else { + // There were not enough candidates for even our minimal level of functionality. + // This is bad. + // We should probably disable all functionality except for block production + // and let the chain keep producing blocks until we can decide on a sufficiently + // substantial set. + Self::slot_stake() + } } /// Call when a validator is determined to be offline. `count` is the @@ -724,10 +967,6 @@ impl Module { if Self::invulnerables().contains(&v) { return } - // TODO: remove once Alex/CC updated #1785 - if Self::invulerables().contains(&v) { - return - } let slash_count = Self::slash_count(&v); let new_slash_count = slash_count + count as u32; @@ -753,13 +992,14 @@ impl Module { let max_slashes = grace + unstake_threshold; let event = if new_slash_count > max_slashes { - let slot_stake = Self::slot_stake(); + let slash_exposure = Self::stakers(&v).total; + let offline_slash_base = Self::offline_slash() * slash_exposure; // They're bailing. - let slash = Self::current_offline_slash() - // Multiply current_offline_slash by 2^(unstake_threshold with upper bound) + let slash = offline_slash_base + // Multiply slash_mantissa by 2^(unstake_threshold with upper bound) .checked_shl(unstake_threshold) - .map(|x| x.min(slot_stake)) - .unwrap_or(slot_stake); + .map(|x| x.min(slash_exposure)) + .unwrap_or(slash_exposure); let _ = Self::slash_validator(&v, slash); >::remove(&v); let _ = Self::apply_force_new_era(false); @@ -780,14 +1020,14 @@ impl OnSessionChange for Module { } impl OnFreeBalanceZero for Module { - fn on_free_balance_zero(who: &T::AccountId) { - if let Some(controller) = >::take(who) { + fn on_free_balance_zero(stash: &T::AccountId) { + if let Some(controller) = >::take(stash) { >::remove(&controller); - >::remove(&controller); - >::remove(&controller); - >::remove(&controller); - >::remove(&controller); } + >::remove(stash); + >::remove(stash); + >::remove(stash); + >::remove(stash); } } diff --git a/srml/staking/src/mock.rs b/srml/staking/src/mock.rs index c52baa06db..30427f22f7 100644 --- a/srml/staking/src/mock.rs +++ b/srml/staking/src/mock.rs @@ -84,12 +84,12 @@ pub struct ExtBuilder { session_length: u64, sessions_per_era: u64, current_era: u64, - monied: bool, reward: u64, validator_pool: bool, nominate: bool, validator_count: u32, minimum_validator_count: u32, + fare: bool, } impl Default for ExtBuilder { @@ -99,12 +99,12 @@ impl Default for ExtBuilder { session_length: 1, sessions_per_era: 1, current_era: 0, - monied: true, reward: 10, validator_pool: false, nominate: true, validator_count: 2, minimum_validator_count: 0, + fare: true } } } @@ -126,16 +126,7 @@ impl ExtBuilder { self.current_era = current_era; self } - pub fn _monied(mut self, monied: bool) -> Self { - self.monied = monied; - self - } - pub fn reward(mut self, reward: u64) -> Self { - self.reward = reward; - self - } - pub fn validator_pool(mut self, validator_pool: bool) -> Self { - // NOTE: this should only be set to true with monied = false. + pub fn validator_pool(mut self, validator_pool: bool) -> Self { self.validator_pool = validator_pool; self } @@ -152,6 +143,10 @@ impl ExtBuilder { self.minimum_validator_count = count; self } + pub fn fare(mut self, is_fare: bool) -> Self { + self.fare = is_fare; + self + } pub fn build(self) -> runtime_io::TestExternalities { let (mut t, mut c) = system::GenesisConfig::::default().build_storage().unwrap(); let balance_factor = if self.existential_deposit > 0 { @@ -170,34 +165,22 @@ impl ExtBuilder { keys: vec![], }.assimilate_storage(&mut t, &mut c); let _ = balances::GenesisConfig::{ - balances: if self.monied { - if self.reward > 0 { - vec![ - (1, 10 * balance_factor), - (2, 20 * balance_factor), - (3, 300 * balance_factor), - (4, 400 * balance_factor), - (10, balance_factor), - (11, balance_factor * 1000), - (20, balance_factor), - (21, balance_factor * 2000), - (100, 2000 * balance_factor), - (101, 2000 * balance_factor), - ] - } else { - vec![ - (1, 10 * balance_factor), (2, 20 * balance_factor), - (3, 300 * balance_factor), (4, 400 * balance_factor) - ] - } - } else { - vec![ - (10, balance_factor), (11, balance_factor * 10), - (20, balance_factor), (21, balance_factor * 20), - (30, balance_factor), (31, balance_factor * 30), - (40, balance_factor), (41, balance_factor * 40) - ] - }, + balances: vec![ + (1, 10 * balance_factor), + (2, 20 * balance_factor), + (3, 300 * balance_factor), + (4, 400 * balance_factor), + (10, balance_factor), + (11, balance_factor * 1000), + (20, balance_factor), + (21, balance_factor * 2000), + (30, balance_factor), + (31, balance_factor * 2000), + (40, balance_factor), + (41, balance_factor * 2000), + (100, 2000 * balance_factor), + (101, 2000 * balance_factor), + ], transaction_base_fee: 0, transaction_byte_fee: 0, existential_deposit: self.existential_deposit, @@ -211,27 +194,26 @@ impl ExtBuilder { stakers: if self.validator_pool { vec![ (11, 10, balance_factor * 1000, StakerStatus::::Validator), - (21, 20, balance_factor * 2000, StakerStatus::::Validator), - (31, 30, balance_factor * 3000, if self.validator_pool { StakerStatus::::Validator } else { StakerStatus::::Idle }), - (41, 40, balance_factor * 4000, if self.validator_pool { StakerStatus::::Validator } else { StakerStatus::::Idle }), + (21, 20, balance_factor * if self.fare { 1000 } else { 2000 }, StakerStatus::::Validator), + (31, 30, balance_factor * 1000, if self.validator_pool { StakerStatus::::Validator } else { StakerStatus::::Idle }), + (41, 40, balance_factor * 1000, if self.validator_pool { StakerStatus::::Validator } else { StakerStatus::::Idle }), // nominator - (101, 100, balance_factor * 500, if self.nominate { StakerStatus::::Nominator(vec![10, 20]) } else { StakerStatus::::Nominator(vec![]) }) + (101, 100, balance_factor * 500, if self.nominate { StakerStatus::::Nominator(vec![11, 21]) } else { StakerStatus::::Nominator(vec![]) }) ] } else { vec![ (11, 10, balance_factor * 1000, StakerStatus::::Validator), - (21, 20, balance_factor * 2000, StakerStatus::::Validator), + (21, 20, balance_factor * if self.fare { 1000 } else { 2000 }, StakerStatus::::Validator), // nominator - (101, 100, balance_factor * 500, if self.nominate { StakerStatus::::Nominator(vec![10, 20]) } else { StakerStatus::::Nominator(vec![]) }) + (101, 100, balance_factor * 500, if self.nominate { StakerStatus::::Nominator(vec![11, 21]) } else { StakerStatus::::Nominator(vec![]) }) ] }, validator_count: self.validator_count, minimum_validator_count: self.minimum_validator_count, bonding_duration: self.sessions_per_era * self.session_length * 3, session_reward: Perbill::from_millionths((1000000 * self.reward / balance_factor) as u32), - offline_slash: if self.monied { Perbill::from_percent(40) } else { Perbill::zero() }, + offline_slash: Perbill::from_percent(5), current_session_reward: self.reward, - current_offline_slash: 20, offline_slash_grace: 0, invulnerables: vec![], }.assimilate_storage(&mut t, &mut c); diff --git a/srml/staking/src/phragmen.rs b/srml/staking/src/phragmen.rs index bdaed1fee9..5d6548bfd0 100644 --- a/srml/staking/src/phragmen.rs +++ b/srml/staking/src/phragmen.rs @@ -1,4 +1,4 @@ -// Copyright 2017-2019 Parity Technologies (UK) Ltd. +// Copyright 2019 Parity Technologies (UK) Ltd. // This file is part of Substrate. // Substrate is free software: you can redistribute it and/or modify @@ -16,208 +16,342 @@ //! Rust implementation of the Phragmén election algorithm. -use rstd::{prelude::*}; +use rstd::prelude::*; use primitives::Perquintill; -use primitives::traits::{Zero, As}; +use primitives::traits::{Zero, As, Bounded, CheckedMul, CheckedSub}; use parity_codec::{HasCompact, Encode, Decode}; use crate::{Exposure, BalanceOf, Trait, ValidatorPrefs, IndividualExposure}; + +// Configure the behavior of the Phragmen election. +// Might be deprecated. +pub struct ElectionConfig { + // Perform equalise?. + pub equalise: bool, + // Number of equalise iterations. + pub iterations: usize, + // Tolerance of max change per equalise iteration. + pub tolerance: Balance, +} + // Wrapper around validation candidates some metadata. -#[derive(Clone, Encode, Decode)] +#[derive(Clone, Encode, Decode, Default)] #[cfg_attr(feature = "std", derive(Debug))] pub struct Candidate { // The validator's account pub who: AccountId, // Exposure struct, holding info about the value that the validator has in stake. pub exposure: Exposure, - // Accumulator of the stake of this candidate based on received votes. - approval_stake: Balance, // Intermediary value used to sort candidates. - // See Phragmén reference implementation. pub score: Perquintill, + // Accumulator of the stake of this candidate based on received votes. + approval_stake: Balance, + // Flag for being elected. + elected: bool, + // This is most often equal to `Exposure.total` but not always. Needed for [`equalise`] + backing_stake: Balance } // Wrapper around the nomination info of a single nominator for a group of validators. -#[derive(Clone, Encode, Decode)] +#[derive(Clone, Encode, Decode, Default)] #[cfg_attr(feature = "std", derive(Debug))] -pub struct Nominations { +pub struct Nominator { // The nominator's account. who: AccountId, // List of validators proposed by this nominator. - nominees: Vec>, + edges: Vec>, // the stake amount proposed by the nominator as a part of the vote. - // Same as `nom.budget` in Phragmén reference. - stake: Balance, + budget: Balance, // Incremented each time a nominee that this nominator voted for has been elected. load: Perquintill, } // Wrapper around a nominator vote and the load of that vote. -// Referred to as 'edge' in the Phragmén reference implementation. -#[derive(Clone, Encode, Decode)] +#[derive(Clone, Encode, Decode, Default)] #[cfg_attr(feature = "std", derive(Debug))] -pub struct Vote { +pub struct Edge { // Account being voted for who: AccountId, // Load of this vote. load: Perquintill, // Final backing stake of this vote. - backing_stake: Balance + backing_stake: Balance, + // Index of the candidate stored in the 'candidates' vector + candidate_index: usize, + // Index of the candidate stored in the 'elected_candidates' vector. Used only with equalise. + elected_idx: usize, + // Indicates if this edge is a vote for an elected candidate. Used only with equalise. + elected: bool, } /// Perform election based on Phragmén algorithm. /// /// Reference implementation: https://github.com/w3f/consensus /// -/// @returns a vector of elected candidates +/// Returns a vector of elected candidates pub fn elect( get_rounds: FR, get_validators: FV, get_nominators: FN, stash_of: FS, minimum_validator_count: usize, - ) -> Vec>> where - FR: Fn() -> usize, - FV: Fn() -> Box>) - >>, - FN: Fn() -> Box) - >>, - FS: Fn(T::AccountId) -> BalanceOf, + config: ElectionConfig>, +) -> Option>>> where + FR: Fn() -> usize, + FV: Fn() -> Box>) + >>, + FN: Fn() -> Box) + >>, + for <'r> FS: Fn(&'r T::AccountId) -> BalanceOf, { let rounds = get_rounds(); - let mut elected_candidates = vec![]; - + let mut elected_candidates; + // 1- Pre-process candidates and place them in a container let mut candidates = get_validators().map(|(who, _)| { - let stash_balance = stash_of(who.clone()); + let stash_balance = stash_of(&who); Candidate { who, - approval_stake: BalanceOf::::zero(), - score: Perquintill::zero(), exposure: Exposure { total: stash_balance, own: stash_balance, others: vec![] }, + ..Default::default() } }).collect::>>>(); - // Just to be used when we are below minimum validator count - let original_candidates = candidates.clone(); - + // 1.1- Add phantom votes. + let mut nominators: Vec>> = Vec::with_capacity(candidates.len()); + candidates.iter_mut().enumerate().for_each(|(idx, c)| { + c.approval_stake += c.exposure.total; + nominators.push(Nominator { + who: c.who.clone(), + edges: vec![ Edge { who: c.who.clone(), candidate_index: idx, ..Default::default() }], + budget: c.exposure.total, + load: Perquintill::zero(), + }) + }); + // 2- Collect the nominators with the associated votes. // Also collect approval stake along the way. - let mut nominations = get_nominators().map(|(who, nominees)| { - let nominator_stake = stash_of(who.clone()); + nominators.extend(get_nominators().map(|(who, nominees)| { + let nominator_stake = stash_of(&who); + let mut edges: Vec>> = Vec::with_capacity(nominees.len()); for n in &nominees { - candidates.iter_mut().filter(|i| i.who == *n).for_each(|c| { - c.approval_stake += nominator_stake; - }); + if let Some(idx) = candidates.iter_mut().position(|i| i.who == *n) { + candidates[idx].approval_stake += nominator_stake; + edges.push(Edge { who: n.clone(), candidate_index: idx, ..Default::default() }); + } } - Nominations { + Nominator { who, - nominees: nominees.into_iter() - .map(|n| Vote {who: n, load: Perquintill::zero(), backing_stake: BalanceOf::::zero()}) - .collect::>>>(), - stake: nominator_stake, - load : Perquintill::zero(), + edges: edges, + budget: nominator_stake, + load: Perquintill::zero(), } - }).collect::>>>(); - + })); + + // 3- optimization: // Candidates who have 0 stake => have no votes or all null-votes. Kick them out not. let mut candidates = candidates.into_iter().filter(|c| c.approval_stake > BalanceOf::::zero()) .collect::>>>(); // 4- If we have more candidates then needed, run Phragmén. - if candidates.len() > rounds { + if candidates.len() >= rounds { + elected_candidates = Vec::with_capacity(rounds); // Main election loop for _round in 0..rounds { // Loop 1: initialize score - for nominaotion in &nominations { - for vote in &nominaotion.nominees { - let candidate = &vote.who; - if let Some(c) = candidates.iter_mut().find(|i| i.who == *candidate) { - let approval_stake = c.approval_stake; - c.score = Perquintill::from_xth(approval_stake.as_()); - } + for c in &mut candidates { + if !c.elected { + c.score = Perquintill::from_xth(c.approval_stake.as_()); } } // Loop 2: increment score. - for nominaotion in &nominations { - for vote in &nominaotion.nominees { - let candidate = &vote.who; - if let Some(c) = candidates.iter_mut().find(|i| i.who == *candidate) { - let approval_stake = c.approval_stake; - let temp = - nominaotion.stake.as_() - * *nominaotion.load - / approval_stake.as_(); + for n in &nominators { + for e in &n.edges { + let c = &mut candidates[e.candidate_index]; + if !c.elected { + let temp = n.budget.as_() * *n.load / c.approval_stake.as_(); c.score = Perquintill::from_quintillionths(*c.score + temp); } } } // Find the best - let (winner_index, _) = candidates.iter().enumerate().min_by_key(|&(_i, c)| *c.score) + let winner = candidates + .iter_mut() + .filter(|c| !c.elected) + .min_by_key(|c| *c.score) .expect("candidates length is checked to be >0; qed"); - // loop 3: update nominator and vote load - let winner = candidates.remove(winner_index); - for n in &mut nominations { - for v in &mut n.nominees { - if v.who == winner.who { - v.load = - Perquintill::from_quintillionths( - *winner.score - - *n.load - ); + // loop 3: update nominator and edge load + winner.elected = true; + for n in &mut nominators { + for e in &mut n.edges { + if e.who == winner.who { + e.load = Perquintill::from_quintillionths(*winner.score - *n.load); n.load = winner.score; } } } - elected_candidates.push(winner); - + elected_candidates.push(winner.clone()); } // end of all rounds // 4.1- Update backing stake of candidates and nominators - for n in &mut nominations { - for v in &mut n.nominees { + for n in &mut nominators { + for e in &mut n.edges { // if the target of this vote is among the winners, otherwise let go. - if let Some(c) = elected_candidates.iter_mut().find(|c| c.who == v.who) { - v.backing_stake = as As>::sa( - n.stake.as_() - * *v.load - / *n.load - ); - c.exposure.total += v.backing_stake; - // Update IndividualExposure of those who nominated and their vote won - c.exposure.others.push( - IndividualExposure {who: n.who.clone(), value: v.backing_stake } - ); + if let Some(c) = elected_candidates.iter_mut().find(|c| c.who == e.who) { + e.elected = true; + // NOTE: for now, always divide last to avoid collapse to zero. + e.backing_stake = >::sa((n.budget.as_() * *e.load) / *n.load); + c.backing_stake += e.backing_stake; + if c.who != n.who { + // Only update the exposure if this vote is from some other account. + c.exposure.total += e.backing_stake; + c.exposure.others.push( + IndividualExposure { who: n.who.clone(), value: e.backing_stake } + ); + } + } + } + } + + // Optionally perform equalise post-processing. + if config.equalise { + let tolerance = config.tolerance; + let equalise_iterations = config.iterations; + + // Fix indexes + nominators.iter_mut().for_each(|n| { + n.edges.iter_mut().for_each(|e| { + if let Some(idx) = elected_candidates.iter().position(|c| c.who == e.who) { + e.elected_idx = idx; + } + }); + }); + + for _i in 0..equalise_iterations { + let mut max_diff = >::zero(); + nominators.iter_mut().for_each(|mut n| { + let diff = equalise::(&mut n, &mut elected_candidates, tolerance); + if diff > max_diff { + max_diff = diff; + } + }); + if max_diff < tolerance { + break; } } } + } else { if candidates.len() > minimum_validator_count { // if we don't have enough candidates, just choose all that have some vote. elected_candidates = candidates; - // `Exposure.others` still needs an update - for n in &mut nominations { - for v in &mut n.nominees { - if let Some(c) = elected_candidates.iter_mut().find(|c| c.who == v.who) { - c.exposure.total += n.stake; + for n in &mut nominators { + let nominator = n.who.clone(); + for e in &mut n.edges { + if let Some(c) = elected_candidates.iter_mut().find(|c| c.who == e.who && c.who != nominator) { + c.exposure.total += n.budget; c.exposure.others.push( - IndividualExposure {who: n.who.clone(), value: n.stake } + IndividualExposure { who: n.who.clone(), value: n.budget } ); } } } } else { // if we have less than minimum, use the previous validator set. - elected_candidates = original_candidates; + return None + } + } + Some(elected_candidates) +} + +pub fn equalise( + nominator: &mut Nominator>, + elected_candidates: &mut Vec>>, + tolerance: BalanceOf +) -> BalanceOf { + + let mut elected_edges = nominator.edges + .iter_mut() + .filter(|e| e.elected) + .collect::>>>(); + if elected_edges.len() == 0 { return >::zero(); } + let stake_used = elected_edges + .iter() + .fold(>::zero(), |s, e| s + e.backing_stake); + let backed_stakes = elected_edges + .iter() + .map(|e| elected_candidates[e.elected_idx].backing_stake) + .collect::>>(); + let backing_backed_stake = elected_edges + .iter() + .filter(|e| e.backing_stake > >::zero()) + .map(|e| elected_candidates[e.elected_idx].backing_stake) + .collect::>>(); + + let mut difference; + if backing_backed_stake.len() > 0 { + let max_stake = *backing_backed_stake + .iter() + .max() + .expect("vector with positive length will have a max; qed"); + let min_stake = *backed_stakes + .iter() + .min() + .expect("vector with positive length will have a max; qed"); + difference = max_stake - min_stake; + difference += nominator.budget - stake_used; + if difference < tolerance { + return difference; } + } else { + difference = nominator.budget; } - elected_candidates -} \ No newline at end of file + // Undo updates to exposure + elected_edges.iter_mut().for_each(|e| { + // NOTE: no assertions in the runtime, but this should nonetheless be indicative. + //assert_eq!(elected_candidates[e.elected_idx].who, e.who); + elected_candidates[e.elected_idx].backing_stake -= e.backing_stake; + elected_candidates[e.elected_idx].exposure.total -= e.backing_stake; + e.backing_stake = >::zero(); + }); + + elected_edges.sort_unstable_by_key(|e| elected_candidates[e.elected_idx].backing_stake); + + let mut cumulative_stake = >::zero(); + let mut last_index = elected_edges.len() - 1; + let budget = nominator.budget; + elected_edges.iter_mut().enumerate().for_each(|(idx, e)| { + let stake = elected_candidates[e.elected_idx].backing_stake; + + let stake_mul = stake.checked_mul(&>::sa(idx as u64)).unwrap_or(>::max_value()); + let stake_sub = stake_mul.checked_sub(&cumulative_stake).unwrap_or_default(); + if stake_sub > budget { + last_index = idx.clone().checked_sub(1).unwrap_or(0); + return + } + cumulative_stake += stake; + }); + + let last_stake = elected_candidates[elected_edges[last_index].elected_idx].backing_stake; + let split_ways = last_index + 1; + let excess = nominator.budget + cumulative_stake - last_stake * >::sa(split_ways as u64); + let nominator_address = nominator.who.clone(); + elected_edges.iter_mut().take(split_ways).for_each(|e| { + let c = &mut elected_candidates[e.elected_idx]; + e.backing_stake = excess / >::sa(split_ways as u64) + last_stake - c.backing_stake; + c.exposure.total += e.backing_stake; + c.backing_stake += e.backing_stake; + if let Some(i_expo) = c.exposure.others.iter_mut().find(|i| i.who == nominator_address) { + i_expo.value = e.backing_stake; + } + }); + difference +} diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index 527e82cf97..50c5772985 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -39,23 +39,24 @@ fn basic_setup_works() { // Account 10 controls the stash from account 11, which is 100 * balance_factor units assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000, active: 1000, unlocking: vec![] })); // Account 20 controls the stash from account 21, which is 200 * balance_factor units - assert_eq!(Staking::ledger(&20), Some(StakingLedger { stash: 21, total: 2000, active: 2000, unlocking: vec![] })); + assert_eq!(Staking::ledger(&20), Some(StakingLedger { stash: 21, total: 1000, active: 1000, unlocking: vec![] })); // Account 1 does not control any stash assert_eq!(Staking::ledger(&1), None); // ValidatorPrefs are default, thus unstake_threshold is 3, other values are default for their type assert_eq!(>::enumerate().collect::>(), vec![ - (20, ValidatorPrefs { unstake_threshold: 3, validator_payment: 0 }), - (10, ValidatorPrefs { unstake_threshold: 3, validator_payment: 0 }) + (21, ValidatorPrefs { unstake_threshold: 3, validator_payment: 0 }), + (11, ValidatorPrefs { unstake_threshold: 3, validator_payment: 0 }) ]); // Account 100 is the default nominator assert_eq!(Staking::ledger(100), Some(StakingLedger { stash: 101, total: 500, active: 500, unlocking: vec![] })); - assert_eq!(Staking::nominators(100), vec![10, 20]); + assert_eq!(Staking::nominators(101), vec![11, 21]); - // Account 10 is exposed by 100 * balance_factor from their own stash in account 11 - assert_eq!(Staking::stakers(10), Exposure { total: 1500, own: 1000, others: vec![ IndividualExposure { who: 100, value: 500 }] }); - assert_eq!(Staking::stakers(20), Exposure { total: 2500, own: 2000, others: vec![ IndividualExposure { who: 100, value: 500 }] }); + // Account 10 is exposed by 1000 * balance_factor from their own stash in account 11 + the default nominator vote + assert_eq!(Staking::stakers(11), Exposure { total: 1125, own: 1000, others: vec![ IndividualExposure { who: 101, value: 125 }] }); + // Account 20 is exposed by 1000 * balance_factor from their own stash in account 21 + the default nominator vote + assert_eq!(Staking::stakers(21), Exposure { total: 1375, own: 1000, others: vec![ IndividualExposure { who: 101, value: 375 }] }); // The number of validators required. assert_eq!(Staking::validator_count(), 2); @@ -68,11 +69,12 @@ fn basic_setup_works() { assert_eq!(Staking::current_session_reward(), 10); // initial slot_stake - assert_eq!(Staking::slot_stake(), 1500); + assert_eq!(Staking::slot_stake(), 1125); // Naive + // assert_eq!(Staking::slot_stake(), 1250); // Post-process - // initial slash_count of validators - assert_eq!(Staking::slash_count(&10), 0); - assert_eq!(Staking::slash_count(&20), 0); + // initial slash_count of validators + assert_eq!(Staking::slash_count(&11), 0); + assert_eq!(Staking::slash_count(&21), 0); }); } @@ -100,27 +102,27 @@ fn invulnerability_should_work() { // Test that users can be invulnerable from slashing and being kicked with_externalities(&mut ExtBuilder::default().build(), || { - // Make account 10 invulnerable - assert_ok!(Staking::set_invulnerables(vec![10])); - // Give account 10 some funds - let _ = Balances::deposit_creating(&10, 69); + // Make account 11 invulnerable + assert_ok!(Staking::set_invulnerables(vec![11])); + // Give account 11 some funds + let _ = Balances::ensure_free_balance_is(&11, 70); // There is no slash grace -- slash immediately. assert_eq!(Staking::offline_slash_grace(), 0); - // Account 10 has not been slashed - assert_eq!(Staking::slash_count(&10), 0); - // Account 10 has the 70 funds we gave it above - assert_eq!(Balances::free_balance(&10), 70); - // Account 10 should be a validator - assert!(>::exists(&10)); - - // Set account 10 as an offline validator with a large number of reports + // Account 11 has not been slashed + assert_eq!(Staking::slash_count(&11), 0); + // Account 11 has the 70 funds we gave it above + assert_eq!(Balances::free_balance(&11), 70); + // Account 11 should be a validator + assert!(>::exists(&11)); + + // Set account 11 as an offline validator with a large number of reports // Should exit early if invulnerable - Staking::on_offline_validator(10, 100); + Staking::on_offline_validator(11, 100); - // Show that account 10 has not been touched - assert_eq!(Staking::slash_count(&10), 0); - assert_eq!(Balances::free_balance(&10), 70); - assert!(>::exists(&10)); + // Show that account 11 has not been touched + assert_eq!(Staking::slash_count(&11), 0); + assert_eq!(Balances::free_balance(&11), 70); + assert!(>::exists(&11)); // New era not being forced // NOTE: new era is always forced once slashing happens -> new validators need to be chosen. assert!(Staking::forcing_new_era().is_none()); @@ -132,27 +134,26 @@ fn offline_should_slash_and_kick() { // Test that an offline validator gets slashed and kicked with_externalities(&mut ExtBuilder::default().build(), || { // Give account 10 some balance - let _ = Balances::deposit_creating(&10, 999); + let _ = Balances::ensure_free_balance_is(&11, 1000); // Confirm account 10 is a validator - assert!(>::exists(&10)); + assert!(>::exists(&11)); // Validators get slashed immediately assert_eq!(Staking::offline_slash_grace(), 0); // Unstake threshold is 3 - assert_eq!(Staking::validators(&10).unstake_threshold, 3); + assert_eq!(Staking::validators(&11).unstake_threshold, 3); // Account 10 has not been slashed before - assert_eq!(Staking::slash_count(&10), 0); + assert_eq!(Staking::slash_count(&11), 0); // Account 10 has the funds we just gave it - assert_eq!(Balances::free_balance(&10), 1000); + assert_eq!(Balances::free_balance(&11), 1000); // Report account 10 as offline, one greater than unstake threshold - Staking::on_offline_validator(10, 4); + Staking::on_offline_validator(11, 4); // Confirm user has been reported - assert_eq!(Staking::slash_count(&10), 4); - // Confirm `slot_stake` is greater than exponential punishment, else math below will be different - assert!(Staking::slot_stake() > 2_u64.pow(3) * 20); - // Confirm balance has been reduced by 2^unstake_threshold * current_offline_slash() - assert_eq!(Balances::free_balance(&10), 1000 - 2_u64.pow(3) * 20); + assert_eq!(Staking::slash_count(&11), 4); + // Confirm balance has been reduced by 2^unstake_threshold * offline_slash() * amount_at_stake. + let slash_base = Staking::offline_slash() * Staking::stakers(11).total; + assert_eq!(Balances::free_balance(&11), 1000 - 2_u64.pow(3) * slash_base); // Confirm account 10 has been removed as a validator - assert!(!>::exists(&10)); + assert!(!>::exists(&11)); // A new era is forced due to slashing assert!(Staking::forcing_new_era().is_some()); }); @@ -163,9 +164,9 @@ fn offline_grace_should_delay_slashing() { // Tests that with grace, slashing is delayed with_externalities(&mut ExtBuilder::default().build(), || { // Initialize account 10 with balance - let _ = Balances::deposit_creating(&10, 69); - // Verify account 10 has balance - assert_eq!(Balances::free_balance(&10), 70); + let _ = Balances::ensure_free_balance_is(&11, 70); + // Verify account 11 has balance + assert_eq!(Balances::free_balance(&11), 70); // Set offline slash grace let offline_slash_grace = 1; @@ -174,24 +175,24 @@ fn offline_grace_should_delay_slashing() { // Check unstaked_threshold is 3 (default) let default_unstake_threshold = 3; - assert_eq!(Staking::validators(&10), ValidatorPrefs { unstake_threshold: default_unstake_threshold, validator_payment: 0 }); + assert_eq!(Staking::validators(&11), ValidatorPrefs { unstake_threshold: default_unstake_threshold, validator_payment: 0 }); // Check slash count is zero - assert_eq!(Staking::slash_count(&10), 0); + assert_eq!(Staking::slash_count(&11), 0); // Report account 10 up to the threshold - Staking::on_offline_validator(10, default_unstake_threshold as usize + offline_slash_grace as usize); + Staking::on_offline_validator(11, default_unstake_threshold as usize + offline_slash_grace as usize); // Confirm slash count - assert_eq!(Staking::slash_count(&10), 4); + assert_eq!(Staking::slash_count(&11), 4); // Nothing should happen - assert_eq!(Balances::free_balance(&10), 70); + assert_eq!(Balances::free_balance(&11), 70); // Report account 10 one more time - Staking::on_offline_validator(10, 1); - assert_eq!(Staking::slash_count(&10), 5); + Staking::on_offline_validator(11, 1); + assert_eq!(Staking::slash_count(&11), 5); // User gets slashed - assert_eq!(Balances::free_balance(&10), 0); + assert_eq!(Balances::free_balance(&11), 0); // New era is forced assert!(Staking::forcing_new_era().is_some()); }); @@ -204,19 +205,17 @@ fn max_unstake_threshold_works() { with_externalities(&mut ExtBuilder::default().build(), || { const MAX_UNSTAKE_THRESHOLD: u32 = 10; // Two users with maximum possible balance - let _ = Balances::deposit_creating(&10, u64::max_value() - 1); - let _ = Balances::deposit_creating(&20, u64::max_value() - 1); + let _ = Balances::ensure_free_balance_is(&11, u64::max_value()); + let _ = Balances::ensure_free_balance_is(&21, u64::max_value()); - // Give them full exposer as a staker - >::insert(&10, Exposure { total: u64::max_value(), own: u64::max_value(), others: vec![]}); - >::insert(&20, Exposure { total: u64::max_value(), own: u64::max_value(), others: vec![]}); + // Give them full exposure as a staker + >::insert(&11, Exposure { total: 1000000, own: 1000000, others: vec![]}); + >::insert(&21, Exposure { total: 2000000, own: 2000000, others: vec![]}); // Check things are initialized correctly - assert_eq!(Balances::free_balance(&10), u64::max_value()); - assert_eq!(Balances::free_balance(&20), u64::max_value()); - assert_eq!(Balances::free_balance(&10), Balances::free_balance(&20)); + assert_eq!(Balances::free_balance(&11), u64::max_value()); + assert_eq!(Balances::free_balance(&21), u64::max_value()); assert_eq!(Staking::offline_slash_grace(), 0); - assert_eq!(Staking::current_offline_slash(), 20); // Account 10 will have max unstake_threshold assert_ok!(Staking::validate(Origin::signed(10), ValidatorPrefs { unstake_threshold: MAX_UNSTAKE_THRESHOLD, @@ -224,28 +223,26 @@ fn max_unstake_threshold_works() { })); // Account 20 could not set their unstake_threshold past 10 assert_noop!(Staking::validate(Origin::signed(20), ValidatorPrefs { - unstake_threshold: 11, + unstake_threshold: MAX_UNSTAKE_THRESHOLD + 1, validator_payment: 0}), "unstake threshold too large" ); // Give Account 20 unstake_threshold 11 anyway, should still be limited to 10 - >::insert(20, ValidatorPrefs { - unstake_threshold: 11, + >::insert(21, ValidatorPrefs { + unstake_threshold: MAX_UNSTAKE_THRESHOLD + 1, validator_payment: 0, }); - // Make slot_stake really large, as to not affect punishment curve - >::put(u64::max_value()); - // Confirm `slot_stake` is greater than exponential punishment, else math below will be different - assert!(Staking::slot_stake() > 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); + >::put(Perbill::from_fraction(0.0001)); // Report each user 1 more than the max_unstake_threshold - Staking::on_offline_validator(10, MAX_UNSTAKE_THRESHOLD as usize + 1); - Staking::on_offline_validator(20, MAX_UNSTAKE_THRESHOLD as usize + 1); + Staking::on_offline_validator(11, MAX_UNSTAKE_THRESHOLD as usize + 1); + Staking::on_offline_validator(21, MAX_UNSTAKE_THRESHOLD as usize + 1); - // Show that each balance only gets reduced by 2^max_unstake_threshold - assert_eq!(Balances::free_balance(&10), u64::max_value() - 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); - assert_eq!(Balances::free_balance(&20), u64::max_value() - 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 20); + // Show that each balance only gets reduced by 2^max_unstake_threshold times 10% + // of their total stake. + assert_eq!(Balances::free_balance(&11), u64::max_value() - 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 100); + assert_eq!(Balances::free_balance(&21), u64::max_value() - 2_u64.pow(MAX_UNSTAKE_THRESHOLD) * 200); }); } @@ -254,11 +251,11 @@ fn slashing_does_not_cause_underflow() { // Tests that slashing more than a user has does not underflow with_externalities(&mut ExtBuilder::default().build(), || { // Verify initial conditions - assert_eq!(Balances::free_balance(&10), 1); + assert_eq!(Balances::free_balance(&11), 1000); assert_eq!(Staking::offline_slash_grace(), 0); // Set validator preference so that 2^unstake_threshold would cause overflow (greater than 64) - >::insert(10, ValidatorPrefs { + >::insert(11, ValidatorPrefs { unstake_threshold: 10, validator_payment: 0, }); @@ -267,9 +264,9 @@ fn slashing_does_not_cause_underflow() { Session::check_rotate_session(System::block_number()); // Should not panic - Staking::on_offline_validator(10, 100); + Staking::on_offline_validator(11, 100); // Confirm that underflow has not occurred, and account balance is set to zero - assert_eq!(Balances::free_balance(&10), 0); + assert_eq!(Balances::free_balance(&11), 0); }); } @@ -285,7 +282,7 @@ fn rewards_should_work() { .sessions_per_era(3) .build(), || { - let delay = 2; + let delay = 0; // this test is only in the scope of one era. Since this variable changes // at the last block/new era, we'll save it. let session_reward = 10; @@ -299,36 +296,38 @@ fn rewards_should_work() { assert_eq!(Staking::last_era_length_change(), 0); assert_eq!(Staking::current_era(), 0); assert_eq!(Session::current_index(), 0); - assert_eq!(Staking::current_session_reward(), 10); // check the balance of a validator accounts. - assert_eq!(Balances::total_balance(&10), 1); + assert_eq!(Balances::total_balance(&11), 1000); // and the nominator (to-be) - assert_eq!(Balances::total_balance(&2), 20); + let _ = Balances::ensure_free_balance_is(&2, 500); + assert_eq!(Balances::total_balance(&2), 500); // add a dummy nominator. // NOTE: this nominator is being added 'manually'. a Further test (nomination_and_reward..) will add it via '.nominate()' - >::insert(&10, Exposure { + >::insert(&11, Exposure { own: 500, // equal division indicates that the reward will be equally divided among validator and nominator. total: 1000, others: vec![IndividualExposure {who: 2, value: 500 }] }); - >::insert(&2, RewardDestination::Controller); + >::insert(&2, RewardDestination::Stash); + assert_eq!(Staking::payee(2), RewardDestination::Stash); + assert_eq!(Staking::payee(11), RewardDestination::Controller); let mut block = 3; // Block 3 => Session 1 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5); // on time. - Session::check_rotate_session(System::block_number()); + Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); assert_eq!(Session::current_index(), 1); // session triggered: the reward value stashed should be 10 -- defined in ExtBuilder genesis. assert_eq!(Staking::current_session_reward(), session_reward); assert_eq!(Staking::current_era_reward(), session_reward); - + block = 6; // Block 6 => Session 2 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5 + delay); // a little late. @@ -343,13 +342,13 @@ fn rewards_should_work() { block = 9; // Block 9 => Session 3 => Era 1 System::set_block_number(block); - Timestamp::set_timestamp(block*5); // back to being punktlisch. no delayss + Timestamp::set_timestamp(block*5); // back to being on time. no delays Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 1); assert_eq!(Session::current_index(), 3); assert_eq!(Balances::total_balance(&10), 1 + (3*session_reward - delay)/2); - assert_eq!(Balances::total_balance(&2), 20 + (3*session_reward - delay)/2); + assert_eq!(Balances::total_balance(&2), 500 + (3*session_reward - delay)/2); }); } @@ -387,7 +386,7 @@ fn multi_era_reward_should_work() { // session triggered: the reward value stashed should be 10 -- defined in ExtBuilder genesis. assert_eq!(Staking::current_session_reward(), session_reward); assert_eq!(Staking::current_era_reward(), session_reward); - + block = 6; // Block 6 => Session 2 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5 + delay); // a little late. @@ -408,7 +407,7 @@ fn multi_era_reward_should_work() { // 1 + sum of of the session rewards accumulated let recorded_balance = 1 + 3*session_reward - delay; assert_eq!(Balances::total_balance(&10), recorded_balance); - + // the reward for next era will be: session_reward * slot_stake let new_session_reward = Staking::session_reward() * Staking::slot_stake(); assert_eq!(Staking::current_session_reward(), new_session_reward); @@ -416,13 +415,13 @@ fn multi_era_reward_should_work() { // fast forward to next era: block=12;System::set_block_number(block);Timestamp::set_timestamp(block*5);Session::check_rotate_session(System::block_number()); block=15;System::set_block_number(block);Timestamp::set_timestamp(block*5);Session::check_rotate_session(System::block_number()); - + // intermediate test. assert_eq!(Staking::current_era_reward(), 2*new_session_reward); - + // new era is triggered here. block=18;System::set_block_number(block);Timestamp::set_timestamp(block*5);Session::check_rotate_session(System::block_number()); - + // pay time assert_eq!(Balances::total_balance(&10), 3*new_session_reward + recorded_balance); }); @@ -437,42 +436,35 @@ fn staking_should_work() { with_externalities(&mut ExtBuilder::default() .sessions_per_era(3) .nominate(false) + .fare(false) // to give 20 more staked value .build(), || { - assert_eq!(Staking::era_length(), 3); // remember + compare this along with the test. assert_eq!(Session::validators(), vec![20, 10]); + assert_ok!(Staking::set_bonding_duration(2)); assert_eq!(Staking::bonding_duration(), 2); // put some money in account that we'll use. - for i in 1..5 { let _ = Balances::deposit_creating(&i, 1000); } - - // bond one account pair and state interest in nomination. - // this is needed to keep 10 and 20 in the validator list with phragmen - assert_ok!(Staking::bond(Origin::signed(1), 2, 500, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(2), vec![20, 4])); + for i in 1..5 { let _ = Balances::ensure_free_balance_is(&i, 2000); } // --- Block 1: System::set_block_number(1); - - // add a new candidate for being a validator. account 3 controlled by 4. - assert_ok!(Staking::bond(Origin::signed(3), 4, 1500, RewardDestination::Controller)); // balance of 3 = 3000, stashed = 1500 - Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); - // No effects will be seen so far.s + + // add a new candidate for being a validator. account 3 controlled by 4. + assert_ok!(Staking::bond(Origin::signed(3), 4, 1500, RewardDestination::Controller)); + assert_ok!(Staking::validate(Origin::signed(4), ValidatorPrefs::default())); + + // No effects will be seen so far. assert_eq!(Session::validators(), vec![20, 10]); - // --- Block 2: System::set_block_number(2); - // Explicitly state the desire to validate - // note that the controller account will state interest as representative of the stash-controller pair. - assert_ok!(Staking::validate(Origin::signed(4), ValidatorPrefs::default())); - Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 0); + // No effects will be seen so far. Era has not been yet triggered. assert_eq!(Session::validators(), vec![20, 10]); @@ -483,32 +475,26 @@ fn staking_should_work() { // 2 only voted for 4 and 20 assert_eq!(Session::validators().len(), 2); - assert_eq!(Session::validators(), vec![4, 20]); + assert_eq!(Session::validators(), vec![20, 4]); assert_eq!(Staking::current_era(), 1); // --- Block 4: Unstake 4 as a validator, freeing up the balance stashed in 3 System::set_block_number(4); + Session::check_rotate_session(System::block_number()); - // unlock the entire stashed value. - // Note that this will ne be enough to remove 4 as a validator candidate! - Staking::unbond(Origin::signed(4), Staking::ledger(&4).unwrap().active).unwrap(); - // explicit chill indicated that 4 no longer wants to be a validator. + // 4 will chill Staking::chill(Origin::signed(4)).unwrap(); - - // nominator votes for 10 - assert_ok!(Staking::nominate(Origin::signed(2), vec![20, 10])); - - Session::check_rotate_session(System::block_number()); + // nothing should be changed so far. - assert_eq!(Session::validators(), vec![4, 20]); + assert_eq!(Session::validators(), vec![20, 4]); assert_eq!(Staking::current_era(), 1); - - + + // --- Block 5: nothing. 4 is still there. System::set_block_number(5); Session::check_rotate_session(System::block_number()); - assert_eq!(Session::validators(), vec![4, 20]); + assert_eq!(Session::validators(), vec![20, 4]); assert_eq!(Staking::current_era(), 1); @@ -518,6 +504,12 @@ fn staking_should_work() { assert_eq!(Staking::current_era(), 2); assert_eq!(Session::validators().contains(&4), false); assert_eq!(Session::validators(), vec![20, 10]); + + // Note: the stashed value of 4 is still lock + assert_eq!(Staking::ledger(&4), Some(StakingLedger { stash: 3, total: 1500, active: 1500, unlocking: vec![] })); + // e.g. it cannot spend more than 500 that it has free from the total 2000 + assert_noop!(Balances::reserve(&3, 501), "account liquidity restrictions prevent withdrawal"); + assert_ok!(Balances::reserve(&3, 409)); }); } @@ -529,21 +521,14 @@ fn less_than_needed_candidates_works() { .minimum_validator_count(1) .validator_count(3) .nominate(false) - .validator_pool(true) - .build(), + .build(), || { assert_eq!(Staking::era_length(), 1); assert_eq!(Staking::validator_count(), 3); - assert_eq!(Staking::minimum_validator_count(), 1); - assert_eq!(Staking::validator_count(), 3); - // initial validators - assert_eq!(Session::validators(), vec![40, 30, 20, 10]); - - // only one nominator will exist and it will - assert_ok!(Staking::bond(Origin::signed(1), 2, 500, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); + // initial validators + assert_eq!(Session::validators(), vec![20, 10]); // 10 and 20 are now valid candidates. // trigger era @@ -554,9 +539,9 @@ fn less_than_needed_candidates_works() { // both validators will be chosen again. NO election algorithm is even executed. assert_eq!(Session::validators(), vec![20, 10]); - // But the exposure is updated in a simple way. Each nominators vote is applied - assert_eq!(Staking::stakers(10).others.iter().map(|e| e.who).collect::>>(), vec![2]); - assert_eq!(Staking::stakers(20).others.iter().map(|e| e.who).collect::>>(), vec![2]); + // But the exposure is updated in a simple way. No external votes exists. This is purely self-vote. + assert_eq!(Staking::stakers(10).others.iter().map(|e| e.who).collect::>>(), vec![]); + assert_eq!(Staking::stakers(20).others.iter().map(|e| e.who).collect::>>(), vec![]); }); } @@ -565,20 +550,17 @@ fn no_candidate_emergency_condition() { // Test the situation where the number of validators are less than `ValidatorCount` and less than // The expected behavior is to choose all candidates from the previous era. with_externalities(&mut ExtBuilder::default() - .minimum_validator_count(1) - .validator_count(3) - .nominate(false) + .minimum_validator_count(10) + .validator_count(15) .validator_pool(true) - .build(), + .nominate(false) + .build(), || { assert_eq!(Staking::era_length(), 1); - assert_eq!(Staking::validator_count(), 3); - - assert_eq!(Staking::minimum_validator_count(), 1); - assert_eq!(Staking::validator_count(), 3); + assert_eq!(Staking::validator_count(), 15); - // initial validators - assert_eq!(Session::validators(), vec![40, 30, 20, 10]); + // initial validators + assert_eq!(Session::validators(), vec![10, 20, 30, 40]); // trigger era System::set_block_number(1); @@ -586,7 +568,7 @@ fn no_candidate_emergency_condition() { assert_eq!(Staking::current_era(), 1); // No one nominates => no one has a proper vote => no change - assert_eq!(Session::validators(), vec![40, 30, 20, 10]); + assert_eq!(Session::validators(), vec![10, 20, 30, 40]); }); } @@ -597,27 +579,54 @@ fn nominating_and_rewards_should_work() { // // PHRAGMEN OUTPUT: running this test with the reference impl gives: // - // Votes [('2', 500, ['10', '20', '30']), ('4', 500, ['10', '20', '40'])] + // Votes [('10', 1000, ['10']), ('20', 1000, ['20']), ('30', 1000, ['30']), ('40', 1000, ['40']), ('2', 1000, ['10', '20', '30']), ('4', 1000, ['10', '20', '40'])] // Sequential Phragmén gives - // 10 is elected with stake 500.0 and score 0.001 - // 20 is elected with stake 500.0 and score 0.002 - // - // 2 has load 0.002 and supported - // 10 with stake 250.0 20 with stake 250.0 30 with stake 0.0 - // 4 has load 0.002 and supported - // 10 with stake 250.0 20 with stake 250.0 40 with stake 0.0 + // 10 is elected with stake 2200.0 and score 0.0003333333333333333 + // 20 is elected with stake 1800.0 and score 0.0005555555555555556 + + // 10 has load 0.0003333333333333333 and supported + // 10 with stake 1000.0 + // 20 has load 0.0005555555555555556 and supported + // 20 with stake 1000.0 + // 30 has load 0 and supported + // 30 with stake 0 + // 40 has load 0 and supported + // 40 with stake 0 + // 2 has load 0.0005555555555555556 and supported + // 10 with stake 600.0 20 with stake 400.0 30 with stake 0.0 + // 4 has load 0.0005555555555555556 and supported + // 10 with stake 600.0 20 with stake 400.0 40 with stake 0.0 + + // Sequential Phragmén with post processing gives + // 10 is elected with stake 2000.0 and score 0.0003333333333333333 + // 20 is elected with stake 2000.0 and score 0.0005555555555555556 + + // 10 has load 0.0003333333333333333 and supported + // 10 with stake 1000.0 + // 20 has load 0.0005555555555555556 and supported + // 20 with stake 1000.0 + // 30 has load 0 and supported + // 30 with stake 0 + // 40 has load 0 and supported + // 40 with stake 0 + // 2 has load 0.0005555555555555556 and supported + // 10 with stake 400.0 20 with stake 600.0 30 with stake 0 + // 4 has load 0.0005555555555555556 and supported + // 10 with stake 600.0 20 with stake 400.0 40 with stake 0.0 with_externalities(&mut ExtBuilder::default() .nominate(false) .validator_pool(true) .build(), || { - // initial validators - assert_eq!(Session::validators(), vec![40, 30, 20, 10]); + // initial validators -- everyone is actually even. + assert_eq!(Session::validators(), vec![40, 30]); // Set payee to controller assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); assert_ok!(Staking::set_payee(Origin::signed(20), RewardDestination::Controller)); + assert_ok!(Staking::set_payee(Origin::signed(30), RewardDestination::Controller)); + assert_ok!(Staking::set_payee(Origin::signed(40), RewardDestination::Controller)); // default reward for the first session. let session_reward = 10; @@ -625,8 +634,8 @@ fn nominating_and_rewards_should_work() { // give the man some money let initial_balance = 1000; - for i in [1, 2, 3, 4, 5, 10, 20].iter() { - let _ = Balances::deposit_creating(i, initial_balance - Balances::total_balance(i)); + for i in [1, 2, 3, 4, 5, 10, 11, 20, 21].iter() { + let _ = Balances::ensure_free_balance_is(i, initial_balance); } // record their balances. @@ -634,53 +643,59 @@ fn nominating_and_rewards_should_work() { // bond two account pairs and state interest in nomination. // 2 will nominate for 10, 20, 30 - assert_ok!(Staking::bond(Origin::signed(1), 2, 500, RewardDestination::Controller)); - assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20, 30])); + assert_ok!(Staking::bond(Origin::signed(1), 2, 1000, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(2), vec![11, 21, 31])); // 4 will nominate for 10, 20, 40 - assert_ok!(Staking::bond(Origin::signed(3), 4, 500, RewardDestination::Stash)); - assert_ok!(Staking::nominate(Origin::signed(4), vec![10, 20, 40])); - + assert_ok!(Staking::bond(Origin::signed(3), 4, 1000, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(4), vec![11, 21, 41])); + System::set_block_number(1); Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 1); + // 10 and 20 have more votes, they will be chosen by phragmen. assert_eq!(Session::validators(), vec![20, 10]); - // validators must have already received some rewards. - assert_eq!(Balances::total_balance(&10), initial_balance + session_reward); - assert_eq!(Balances::total_balance(&20), initial_balance + session_reward); + + // OLD validators must have already received some rewards. + assert_eq!(Balances::total_balance(&40), 1 + session_reward); + assert_eq!(Balances::total_balance(&30), 1 + session_reward); // ------ check the staked value of all parties. - // total expo of 10, with 500 coming from nominators (externals), according to phragmen. - assert_eq!(Staking::stakers(10).own, 1000); - assert_eq!(Staking::stakers(10).total, 1000 + 500); - // 2 and 4 supported 10, each with stake 250, according to phragmen. - assert_eq!(Staking::stakers(10).others.iter().map(|e| e.value).collect::>>(), vec![250, 250]); - assert_eq!(Staking::stakers(10).others.iter().map(|e| e.who).collect::>>(), vec![4, 2]); + + // total expo of 10, with 1200 coming from nominators (externals), according to phragmen. + assert_eq!(Staking::stakers(11).own, 1000); + assert_eq!(Staking::stakers(11).total, 1000 + 800); + // 2 and 4 supported 10, each with stake 600, according to phragmen. + assert_eq!(Staking::stakers(11).others.iter().map(|e| e.value).collect::>>(), vec![400, 400]); + assert_eq!(Staking::stakers(11).others.iter().map(|e| e.who).collect::>>(), vec![3, 1]); // total expo of 20, with 500 coming from nominators (externals), according to phragmen. - assert_eq!(Staking::stakers(20).own, 2000); - assert_eq!(Staking::stakers(20).total, 2000 + 500); + assert_eq!(Staking::stakers(21).own, 1000); + assert_eq!(Staking::stakers(21).total, 1000 + 1200); // 2 and 4 supported 20, each with stake 250, according to phragmen. - assert_eq!(Staking::stakers(20).others.iter().map(|e| e.value).collect::>>(), vec![250, 250]); - assert_eq!(Staking::stakers(20).others.iter().map(|e| e.who).collect::>>(), vec![4, 2]); - + assert_eq!(Staking::stakers(21).others.iter().map(|e| e.value).collect::>>(), vec![600, 600]); + assert_eq!(Staking::stakers(21).others.iter().map(|e| e.who).collect::>>(), vec![3, 1]); + + // They are not chosen anymore + assert_eq!(Staking::stakers(31).total, 0); + assert_eq!(Staking::stakers(41).total, 0); + System::set_block_number(2); + Session::check_rotate_session(System::block_number()); // next session reward. let new_session_reward = Staking::session_reward() * Staking::slot_stake(); // nothing else will happen, era ends and rewards are paid again, // it is expected that nominators will also be paid. See below - Session::check_rotate_session(System::block_number()); - // Nominator 2: has [250/1500 ~ 1/6 from 10] + [250/2500 ~ 1/10 from 20]'s reward. ==> 1/6 + 1/10 - assert_eq!(Balances::total_balance(&2), initial_balance + (new_session_reward/6 + new_session_reward/10)); - // The Associated validator will get the other 4/6 --> 1500(total) minus 1/6(250) by each nominator -> 6/6 - 1/6 - 1/6 - assert_eq!(Balances::total_balance(&10), initial_balance + session_reward + 4*new_session_reward/6) ; + // Nominator 2: has [400/1800 ~ 2/9 from 10] + [600/2200 ~ 3/11 from 20]'s reward. ==> 2/9 + 3/11 + assert_eq!(Balances::total_balance(&2), initial_balance + (2*new_session_reward/9 + 3*new_session_reward/11)); + // Nominator 4: has [400/1800 ~ 2/9 from 10] + [600/2200 ~ 3/11 from 20]'s reward. ==> 2/9 + 3/11 + assert_eq!(Balances::total_balance(&4), initial_balance + (2*new_session_reward/9 + 3*new_session_reward/11)); - // Nominator 4: has [250/1500 ~ 1/6 from 10] + [250/2500 ~ 1/10 from 20]'s reward. ==> 1/6 + 1/10 - // This nominator chose stash as the reward destination. This means that the reward will go to 3, which is bonded as the stash of 4. - assert_eq!(Balances::total_balance(&3), initial_balance + (new_session_reward/6 + new_session_reward/10)); - // The Associated validator will get the other 8/10 --> 2500(total) minus 1/10(250) by each nominator -> 10/10 - 1/10 - 1/10 - assert_eq!(Balances::total_balance(&20), initial_balance + session_reward + 8*new_session_reward/10); + // 10 got 800 / 1800 external stake => 8/18 =? 4/9 => Validator's share = 5/9 + assert_eq!(Balances::total_balance(&10), initial_balance + 5*new_session_reward/9) ; + // 10 got 1200 / 2200 external stake => 12/22 =? 6/11 => Validator's share = 5/11 + assert_eq!(Balances::total_balance(&20), initial_balance + 5*new_session_reward/11); }); } @@ -696,6 +711,7 @@ fn nominators_also_get_slashed() { assert_eq!(Staking::slash_count(&10), 0); // initial validators assert_eq!(Session::validators(), vec![20, 10]); + >::put(Perbill::from_percent(12)); // Set payee to controller assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); @@ -703,7 +719,7 @@ fn nominators_also_get_slashed() { // give the man some money. let initial_balance = 1000; for i in [1, 2, 3, 10].iter() { - let _ = Balances::deposit_creating(i, initial_balance - Balances::total_balance(i)); + let _ = Balances::ensure_free_balance_is(i, initial_balance); } // 2 will nominate for 10 @@ -715,15 +731,20 @@ fn nominators_also_get_slashed() { System::set_block_number(2); Session::check_rotate_session(System::block_number()); + // Nominator stash didn't collect any. + assert_eq!(Balances::total_balance(&2), initial_balance); + // 10 goes offline Staking::on_offline_validator(10, 4); - let slash_value = 2_u64.pow(3) * Staking::current_offline_slash(); let expo = Staking::stakers(10); - let actual_slash = expo.own.min(slash_value); - let nominator_actual_slash = nominator_stake.min(expo.total - actual_slash); + let slash_value = Staking::offline_slash() * expo.total * 2_u64.pow(3); + let total_slash = expo.total.min(slash_value); + let validator_slash = expo.own.min(total_slash); + let nominator_slash = nominator_stake.min(total_slash - validator_slash); + // initial + first era reward + slash - assert_eq!(Balances::total_balance(&10), initial_balance + 10 - actual_slash); - assert_eq!(Balances::total_balance(&2), initial_balance - nominator_actual_slash); + assert_eq!(Balances::total_balance(&10), initial_balance + 10 - validator_slash); + assert_eq!(Balances::total_balance(&2), initial_balance - nominator_slash); // Because slashing happened. assert!(Staking::forcing_new_era().is_some()); }); @@ -739,27 +760,44 @@ fn double_staking_should_fail() { with_externalities(&mut ExtBuilder::default() .sessions_per_era(2) .build(), - || { - let arbitrary_value = 5; - System::set_block_number(1); - // 2 = controller, 1 stashed => ok - assert_ok!(Staking::bond(Origin::signed(1), 2, arbitrary_value, RewardDestination::default())); - // 2 = controller, 3 stashed (Note that 2 is reused.) => ok - assert_ok!(Staking::bond(Origin::signed(3), 2, arbitrary_value, RewardDestination::default())); - // 4 = not used so far, 1 stashed => not allowed. - assert_noop!(Staking::bond(Origin::signed(1), 4, arbitrary_value, RewardDestination::default()), "stash already bonded"); - // 1 = stashed => attempting to nominate should fail. - assert_noop!(Staking::nominate(Origin::signed(1), vec![1]), "not a controller"); - // 2 = controller => nominating should work. - assert_ok!(Staking::nominate(Origin::signed(2), vec![1])); - }); + || { + let arbitrary_value = 5; + System::set_block_number(1); + // 2 = controller, 1 stashed => ok + assert_ok!(Staking::bond(Origin::signed(1), 2, arbitrary_value, RewardDestination::default())); + // 4 = not used so far, 1 stashed => not allowed. + assert_noop!(Staking::bond(Origin::signed(1), 4, arbitrary_value, RewardDestination::default()), "stash already bonded"); + // 1 = stashed => attempting to nominate should fail. + assert_noop!(Staking::nominate(Origin::signed(1), vec![1]), "not a controller"); + // 2 = controller => nominating should work. + assert_ok!(Staking::nominate(Origin::signed(2), vec![1])); + }); +} + +#[test] +fn double_controlling_should_fail() { + // should test (in the same order): + // * an account already bonded as controller CAN be reused as the controller of another account. + // * an account already bonded as stash cannot be the controller of another account. + // * an account already bonded as stash cannot nominate. + // * an account already bonded as controller can nominate. + with_externalities(&mut ExtBuilder::default() + .sessions_per_era(2) + .build(), + || { + let arbitrary_value = 5; + System::set_block_number(1); + // 2 = controller, 1 stashed => ok + assert_ok!(Staking::bond(Origin::signed(1), 2, arbitrary_value, RewardDestination::default())); + // 2 = controller, 3 stashed (Note that 2 is reused.) => no-op + assert_noop!(Staking::bond(Origin::signed(3), 2, arbitrary_value, RewardDestination::default()), "controller already paired"); + }); } #[test] fn session_and_eras_work() { with_externalities(&mut ExtBuilder::default() .sessions_per_era(2) - .reward(10) .build(), || { assert_eq!(Staking::era_length(), 2); @@ -830,23 +868,45 @@ fn session_and_eras_work() { #[test] fn cannot_transfer_staked_balance() { // Tests that a stash account cannot transfer funds - with_externalities(&mut ExtBuilder::default().build(), || { + with_externalities(&mut ExtBuilder::default().nominate(false).build(), || { // Confirm account 11 is stashed assert_eq!(Staking::bonded(&11), Some(10)); // Confirm account 11 has some free balance assert_eq!(Balances::free_balance(&11), 1000); // Confirm account 11 (via controller 10) is totally staked - assert_eq!(Staking::stakers(&10).total, 1000 + 500); + assert_eq!(Staking::stakers(&11).total, 1000); // Confirm account 11 cannot transfer as a result assert_noop!(Balances::transfer(Origin::signed(11), 20, 1), "account liquidity restrictions prevent withdrawal"); // Give account 11 extra free balance - let _ = Balances::deposit_creating(&11, 9999); + let _ = Balances::ensure_free_balance_is(&11, 10000); // Confirm that account 11 can now transfer some balance assert_ok!(Balances::transfer(Origin::signed(11), 20, 1)); }); } +#[test] +fn cannot_transfer_staked_balance_2() { + // Tests that a stash account cannot transfer funds + // Same test as above but with 20 + // 21 has 2000 free balance but 1000 at stake + with_externalities(&mut ExtBuilder::default() + .nominate(false) + .fare(true) + .build(), + || { + // Confirm account 21 is stashed + assert_eq!(Staking::bonded(&21), Some(20)); + // Confirm account 21 has some free balance + assert_eq!(Balances::free_balance(&21), 2000); + // Confirm account 21 (via controller 20) is totally staked + assert_eq!(Staking::stakers(&21).total, 1000); + // Confirm account 21 can transfer at most 1000 + assert_noop!(Balances::transfer(Origin::signed(21), 20, 1001), "account liquidity restrictions prevent withdrawal"); + assert_ok!(Balances::transfer(Origin::signed(21), 20, 1000)); + }); +} + #[test] fn cannot_reserve_staked_balance() { // Checks that a bonded account cannot reserve balance from free balance @@ -856,12 +916,12 @@ fn cannot_reserve_staked_balance() { // Confirm account 11 has some free balance assert_eq!(Balances::free_balance(&11), 1000); // Confirm account 11 (via controller 10) is totally staked - assert_eq!(Staking::stakers(&10).total, 1000 + 500); + assert_eq!(Staking::stakers(&11).total, 1125); // Confirm account 11 cannot transfer as a result assert_noop!(Balances::reserve(&11, 1), "account liquidity restrictions prevent withdrawal"); // Give account 11 extra free balance - let _ = Balances::deposit_creating(&11, 9990); + let _ = Balances::ensure_free_balance_is(&11, 10000); // Confirm account 11 can now reserve balance assert_ok!(Balances::reserve(&11, 1)); }); @@ -870,9 +930,11 @@ fn cannot_reserve_staked_balance() { #[test] fn reward_destination_works() { // Rewards go to the correct destination as determined in Payee - with_externalities(&mut ExtBuilder::default().build(), || { - // Check that account 10 is a validator - assert!(>::exists(10)); + with_externalities(&mut ExtBuilder::default().nominate(false).build(), || { + // Check that account 11 is a validator + assert!(>::exists(11)); + // Check that account 11 is a validator + assert!(Staking::current_elected().contains(&11)); // Check the balance of the validator account assert_eq!(Balances::free_balance(&10), 1); // Check the balance of the stash account @@ -890,20 +952,18 @@ fn reward_destination_works() { Session::check_rotate_session(System::block_number()); // Check that RewardDestination is Staked (default) - assert_eq!(Staking::payee(&10), RewardDestination::Staked); + assert_eq!(Staking::payee(&11), RewardDestination::Staked); // Check current session reward is 10 assert_eq!(current_session_reward, 10); // Check that reward went to the stash account of validator - // 1/3 of the reward is for the nominator. - let validator_reward = (10. * (2./3.)) as u64; // = 6 - assert_eq!(Balances::free_balance(&11), 1000 + validator_reward); + assert_eq!(Balances::free_balance(&11), 1000 + current_session_reward); // Check that amount at stake increased accordingly - assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 6, active: 1000 + 6, unlocking: vec![] })); + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 10, active: 1000 + 10, unlocking: vec![] })); // Update current session reward - current_session_reward = Staking::current_session_reward(); + current_session_reward = Staking::current_session_reward(); // 1010 (1* slot_stake) //Change RewardDestination to Stash - >::insert(&10, RewardDestination::Stash); + >::insert(&11, RewardDestination::Stash); // Move forward the system for payment System::set_block_number(2); @@ -911,32 +971,34 @@ fn reward_destination_works() { Session::check_rotate_session(System::block_number()); // Check that RewardDestination is Stash - assert_eq!(Staking::payee(&10), RewardDestination::Stash); + assert_eq!(Staking::payee(&11), RewardDestination::Stash); // Check that reward went to the stash account - let new_validator_reward = ((1000 + 6) as f64 / ( (1000 + 6) + (500 + 4) ) as f64) * current_session_reward as f64; - assert_eq!(Balances::free_balance(&11), 1000 + validator_reward + new_validator_reward as u64); - // Check that amount at stake is not increased - assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1006, active: 1006, unlocking: vec![] })); + assert_eq!(Balances::free_balance(&11), 1000 + 10 + current_session_reward); + // Record this value + let recorded_stash_balance = 1000 + 10 + current_session_reward; - //Change RewardDestination to Controller - >::insert(&10, RewardDestination::Controller); + // Check that amount at stake is NOT increased + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 10, active: 1000 + 10, unlocking: vec![] })); + + // Change RewardDestination to Controller + >::insert(&11, RewardDestination::Controller); // Check controller balance assert_eq!(Balances::free_balance(&10), 1); - // Move forward the system for payment System::set_block_number(3); Timestamp::set_timestamp(15); Session::check_rotate_session(System::block_number()); // Check that RewardDestination is Controller - assert_eq!(Staking::payee(&10), RewardDestination::Controller); + assert_eq!(Staking::payee(&11), RewardDestination::Controller); // Check that reward went to the controller account - let reward_of = |w| Staking::stakers(w).own * Staking::current_session_reward() / Staking::stakers(w).total; - assert_eq!(Balances::free_balance(&10), 1 + reward_of(&10)); - // Check that amount at stake is not increased - assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1006, active: 1006, unlocking: vec![] })); + assert_eq!(Balances::free_balance(&10), 1 + 1010); + // Check that amount at stake is NOT increased + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 10, active: 1000 + 10, unlocking: vec![] })); + // Check that amount in staked account is NOT increased. + assert_eq!(Balances::free_balance(&11), recorded_stash_balance); }); } @@ -967,17 +1029,17 @@ fn validator_payment_prefs_work() { // check the balance of a validator's stash accounts. assert_eq!(Balances::total_balance(&11), validator_initial_balance); // and the nominator (to-be) - assert_eq!(Balances::total_balance(&2), 20); + let _ = Balances::ensure_free_balance_is(&2, 500); // add a dummy nominator. // NOTE: this nominator is being added 'manually', use '.nominate()' to do it realistically. - >::insert(&10, Exposure { + >::insert(&11, Exposure { own: 500, // equal division indicates that the reward will be equally divided among validator and nominator. total: 1000, others: vec![IndividualExposure {who: 2, value: 500 }] }); - >::insert(&2, RewardDestination::Controller); - >::insert(&10, ValidatorPrefs { + >::insert(&2, RewardDestination::Stash); + >::insert(&11, ValidatorPrefs { unstake_threshold: 3, validator_payment: validator_cut }); @@ -994,7 +1056,7 @@ fn validator_payment_prefs_work() { // session triggered: the reward value stashed should be 10 -- defined in ExtBuilder genesis. assert_eq!(Staking::current_session_reward(), session_reward); assert_eq!(Staking::current_era_reward(), session_reward); - + block = 6; // Block 6 => Session 2 => Era 0 System::set_block_number(block); Timestamp::set_timestamp(block*5); // a little late. @@ -1019,7 +1081,7 @@ fn validator_payment_prefs_work() { // Controller account will not get any reward. assert_eq!(Balances::total_balance(&10), 1); // Rest of the reward will be shared and paid to the nominator in stake. - assert_eq!(Balances::total_balance(&2), 20 + shared_cut/2); + assert_eq!(Balances::total_balance(&2), 500 + shared_cut/2); }); } @@ -1027,21 +1089,19 @@ fn validator_payment_prefs_work() { #[test] fn bond_extra_works() { // Tests that extra `free_balance` in the stash can be added to stake - // NOTE: this tests only verifies `StakingLedger` for correct updates. + // NOTE: this tests only verifies `StakingLedger` for correct updates // See `bond_extra_and_withdraw_unbonded_works` for more details and updates on `Exposure`. with_externalities(&mut ExtBuilder::default().build(), || { // Check that account 10 is a validator - assert!(>::exists(10)); + assert!(>::exists(11)); // Check that account 10 is bonded to account 11 assert_eq!(Staking::bonded(&11), Some(10)); // Check how much is at stake assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000, active: 1000, unlocking: vec![] })); // Give account 11 some large free balance greater than total - let _ = Balances::deposit_creating(&11, 999000); - // Check the balance of the stash account - assert_eq!(Balances::free_balance(&11), 1000000); + let _ = Balances::ensure_free_balance_is(&11, 1000000); // Call the bond_extra function from controller, add only 100 assert_ok!(Staking::bond_extra(Origin::signed(10), 100)); @@ -1064,9 +1124,8 @@ fn bond_extra_and_withdraw_unbonded_works() { // * it can unbond a portion of its funds from the stash account. // * Once the unbonding period is done, it can actually take the funds out of the stash. with_externalities(&mut ExtBuilder::default() - .reward(10) // it is the default, just for verbosity .nominate(false) - .build(), + .build(), || { // Set payee to controller. avoids confusion assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); @@ -1075,15 +1134,12 @@ fn bond_extra_and_withdraw_unbonded_works() { assert_ok!(Staking::set_bonding_duration(2)); // Give account 11 some large free balance greater than total - let _ = Balances::deposit_creating(&11, 999000); - // Check the balance of the stash account - assert_eq!(Balances::free_balance(&11), 1000000); + let _ = Balances::ensure_free_balance_is(&11, 1000000); // Initial config should be correct assert_eq!(Staking::sessions_per_era(), 1); assert_eq!(Staking::current_era(), 0); assert_eq!(Session::current_index(), 0); - assert_eq!(Staking::current_session_reward(), 10); // check the balance of a validator accounts. @@ -1092,7 +1148,7 @@ fn bond_extra_and_withdraw_unbonded_works() { // confirm that 10 is a normal validator and gets paid at the end of the era. System::set_block_number(1); Timestamp::set_timestamp(5); - Session::check_rotate_session(System::block_number()); + Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 1); assert_eq!(Session::current_index(), 1); @@ -1102,56 +1158,55 @@ fn bond_extra_and_withdraw_unbonded_works() { // Initial state of 10 assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000, active: 1000, unlocking: vec![] })); - assert_eq!(Staking::stakers(&10), Exposure { total: 1000, own: 1000, others: vec![] }); - + assert_eq!(Staking::stakers(&11), Exposure { total: 1000, own: 1000, others: vec![] }); - // deposit the extra 100 units + // deposit the extra 100 units Staking::bond_extra(Origin::signed(10), 100).unwrap(); assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 1000 + 100, unlocking: vec![] })); // Exposure is a snapshot! only updated after the next era update. - assert_ne!(Staking::stakers(&10), Exposure { total: 1000 + 100, own: 1000 + 100, others: vec![] }); + assert_ne!(Staking::stakers(&11), Exposure { total: 1000 + 100, own: 1000 + 100, others: vec![] }); // trigger next era. - System::set_block_number(2);Timestamp::set_timestamp(10);Session::check_rotate_session(System::block_number()); + System::set_block_number(2);Timestamp::set_timestamp(10);Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 2); assert_eq!(Session::current_index(), 2); // ledger should be the same. assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 1000 + 100, unlocking: vec![] })); // Exposure is now updated. - assert_eq!(Staking::stakers(&10), Exposure { total: 1000 + 100, own: 1000 + 100, others: vec![] }); + assert_eq!(Staking::stakers(&11), Exposure { total: 1000 + 100, own: 1000 + 100, others: vec![] }); // Note that by this point 10 also have received more rewards, but we don't care now. // assert_eq!(Balances::total_balance(&10), 1 + 10 + MORE_REWARD); // Unbond almost all of the funds in stash. Staking::unbond(Origin::signed(10), 1000).unwrap(); - assert_eq!(Staking::ledger(&10), Some(StakingLedger { + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 100, unlocking: vec![UnlockChunk{ value: 1000, era: 2 + 2}] })); // Attempting to free the balances now will fail. 2 eras need to pass. Staking::withdraw_unbonded(Origin::signed(10)).unwrap(); - assert_eq!(Staking::ledger(&10), Some(StakingLedger { + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 100, unlocking: vec![UnlockChunk{ value: 1000, era: 2 + 2}] })); // trigger next era. - System::set_block_number(3);Timestamp::set_timestamp(15);Session::check_rotate_session(System::block_number()); + System::set_block_number(3);Timestamp::set_timestamp(15);Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 3); assert_eq!(Session::current_index(), 3); // nothing yet Staking::withdraw_unbonded(Origin::signed(10)).unwrap(); - assert_eq!(Staking::ledger(&10), Some(StakingLedger { + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 100, unlocking: vec![UnlockChunk{ value: 1000, era: 2 + 2}] })); // trigger next era. - System::set_block_number(4);Timestamp::set_timestamp(20);Session::check_rotate_session(System::block_number()); + System::set_block_number(4);Timestamp::set_timestamp(20);Session::check_rotate_session(System::block_number()); assert_eq!(Staking::current_era(), 4); assert_eq!(Session::current_index(), 4); - + Staking::withdraw_unbonded(Origin::signed(10)).unwrap(); // Now the value is free and the staking ledger is updated. - assert_eq!(Staking::ledger(&10), Some(StakingLedger { + assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 100, active: 100, unlocking: vec![] })); }) } @@ -1162,30 +1217,30 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { // Test that slot_stake is the maximum punishment that can happen to a validator // Note that rewardDestination is the stash account by default // Note that unlike reward slash will affect free_balance, not the stash account. - with_externalities(&mut ExtBuilder::default().nominate(false).build(), || { + with_externalities(&mut ExtBuilder::default() + .nominate(false) + .fare(false) + .build(), + || { + // Give the man some money. // Confirm validator count is 2 assert_eq!(Staking::validator_count(), 2); // Confirm account 10 and 20 are validators - assert!(>::exists(&10) && >::exists(&20)); - // Confirm 10 has less stake than 20 - assert!(Staking::stakers(&10).total < Staking::stakers(&20).total); - assert_eq!(Staking::stakers(&10).total, 1000); - assert_eq!(Staking::stakers(&20).total, 2000); + assert!(>::exists(&11) && >::exists(&21)); - // Give the man some money. - let _ = Balances::deposit_creating(&10, 999); - let _ = Balances::deposit_creating(&20, 999); + assert_eq!(Staking::stakers(&11).total, 1000); + assert_eq!(Staking::stakers(&21).total, 2000); - // Confirm initial free balance. - assert_eq!(Balances::free_balance(&10), 1000); - assert_eq!(Balances::free_balance(&20), 1000); + // Give the man some money. + let _ = Balances::ensure_free_balance_is(&10, 1000); + let _ = Balances::ensure_free_balance_is(&20, 1000); // We confirm initialized slot_stake is this value - assert_eq!(Staking::slot_stake(), Staking::stakers(&10).total); - + assert_eq!(Staking::slot_stake(), Staking::stakers(&11).total); + // Now lets lower account 20 stake - >::insert(&20, Exposure { total: 69, own: 69, others: vec![] }); - assert_eq!(Staking::stakers(&20).total, 69); + >::insert(&21, Exposure { total: 69, own: 69, others: vec![] }); + assert_eq!(Staking::stakers(&21).total, 69); >::insert(&20, StakingLedger { stash: 22, total: 69, active: 69, unlocking: vec![] }); // New era --> rewards are paid --> stakes are changed @@ -1195,8 +1250,8 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { assert_eq!(Staking::current_era(), 1); // -- new balances + reward - assert_eq!(Staking::stakers(&10).total, 1000 + 10); - assert_eq!(Staking::stakers(&20).total, 69 + 10); + assert_eq!(Staking::stakers(&11).total, 1000 + 10); + assert_eq!(Staking::stakers(&21).total, 69 + 10); // -- Note that rewards are going directly to stash, not as free balance. assert_eq!(Balances::free_balance(&10), 1000); @@ -1206,12 +1261,11 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { assert_eq!(Staking::slot_stake(), 79); // // If 10 gets slashed now, despite having +1000 in stash, it will be slashed byt 79, which is the slot stake - Staking::on_offline_validator(10, 4); + Staking::on_offline_validator(11, 4); // // Confirm user has been reported - assert_eq!(Staking::slash_count(&10), 4); + assert_eq!(Staking::slash_count(&11), 4); // // check the balance of 10 (slash will be deducted from free balance.) - assert_eq!(Balances::free_balance(&10), 1000 - 79); - + assert_eq!(Balances::free_balance(&11), 1000 + 10 - 50 /*5% of 1000*/ * 8 /*2**3*/); }); } @@ -1224,7 +1278,7 @@ fn on_free_balance_zero_stash_removes_validator() { .build(), || { // Check that account 10 is a validator - assert!(>::exists(10)); + assert!(>::exists(11)); // Check the balance of the validator account assert_eq!(Balances::free_balance(&10), 256); // Check the balance of the stash account @@ -1234,20 +1288,19 @@ fn on_free_balance_zero_stash_removes_validator() { // Set some storage items which we expect to be cleaned up // Initiate slash count storage item - Staking::on_offline_validator(10, 1); + Staking::on_offline_validator(11, 1); // Set payee information assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Stash)); // Check storage items that should be cleaned up assert!(>::exists(&10)); - assert!(>::exists(&10)); - assert!(>::exists(&10)); - assert!(>::exists(&10)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); // Reduce free_balance of controller to 0 Balances::slash(&10, u64::max_value()); - // Check total balance of account 10 - assert_eq!(Balances::total_balance(&10), 0); // Check the balance of the stash account has not been touched assert_eq!(Balances::free_balance(&11), 256000); @@ -1256,9 +1309,10 @@ fn on_free_balance_zero_stash_removes_validator() { // Check storage items have not changed assert!(>::exists(&10)); - assert!(>::exists(&10)); - assert!(>::exists(&10)); - assert!(>::exists(&10)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); // Reduce free_balance of stash to 0 Balances::slash(&11, u64::max_value()); @@ -1267,11 +1321,11 @@ fn on_free_balance_zero_stash_removes_validator() { // Check storage items do not exist assert!(!>::exists(&10)); - assert!(!>::exists(&10)); - assert!(!>::exists(&10)); - assert!(!>::exists(&10)); - assert!(!>::exists(&10)); assert!(!>::exists(&11)); + assert!(!>::exists(&11)); + assert!(!>::exists(&11)); + assert!(!>::exists(&11)); + assert!(!>::exists(&11)); }); } @@ -1286,7 +1340,7 @@ fn on_free_balance_zero_stash_removes_nominator() { // Make 10 a nominator assert_ok!(Staking::nominate(Origin::signed(10), vec![20])); // Check that account 10 is a nominator - assert!(>::exists(10)); + assert!(>::exists(11)); // Check the balance of the nominator account assert_eq!(Balances::free_balance(&10), 256); // Check the balance of the stash account @@ -1300,8 +1354,9 @@ fn on_free_balance_zero_stash_removes_nominator() { // Check storage items that should be cleaned up assert!(>::exists(&10)); - assert!(>::exists(&10)); - assert!(>::exists(&10)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); // Reduce free_balance of controller to 0 Balances::slash(&10, u64::max_value()); @@ -1315,8 +1370,9 @@ fn on_free_balance_zero_stash_removes_nominator() { // Check storage items have not changed assert!(>::exists(&10)); - assert!(>::exists(&10)); - assert!(>::exists(&10)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); + assert!(>::exists(&11)); // Reduce free_balance of stash to 0 Balances::slash(&11, u64::max_value()); @@ -1325,11 +1381,11 @@ fn on_free_balance_zero_stash_removes_nominator() { // Check storage items do not exist assert!(!>::exists(&10)); - assert!(!>::exists(&10)); - assert!(!>::exists(&10)); - assert!(!>::exists(&10)); - assert!(!>::exists(&10)); assert!(!>::exists(&11)); + assert!(!>::exists(&11)); + assert!(!>::exists(&11)); + assert!(!>::exists(&11)); + assert!(!>::exists(&11)); }); } @@ -1337,92 +1393,105 @@ fn on_free_balance_zero_stash_removes_nominator() { fn phragmen_poc_works() { // Tests the POC test of the phragmen, mentioned in the paper and reference implementation. // Initial votes: - // vote_list = [ - // ("A", 10.0, ["X", "Y"]), - // ("B", 20.0, ["X", "Z"]), - // ("C", 30.0, ["Y", "Z"]) - // ] + // Votes [ + // ('2', 500, ['10', '20', '30']), + // ('4', 500, ['10', '20', '40']), + // ('10', 1000, ['10']), + // ('20', 1000, ['20']), + // ('30', 1000, ['30']), + // ('40', 1000, ['40'])] // // Sequential Phragmén gives - // Z is elected with stake 35.0 and score 0.02 - // Y is elected with stake 25.0 and score 0.04 + // 10 is elected with stake 1666.6666666666665 and score 0.0005 + // 20 is elected with stake 1333.3333333333333 and score 0.00075 + + // 2 has load 0.00075 and supported + // 10 with stake 333.3333333333333 20 with stake 166.66666666666666 30 with stake 0.0 + // 4 has load 0.00075 and supported + // 10 with stake 333.3333333333333 20 with stake 166.66666666666666 40 with stake 0.0 + // 10 has load 0.0005 and supported + // 10 with stake 1000.0 + // 20 has load 0.00075 and supported + // 20 with stake 1000.0 + // 30 has load 0 and supported + // 30 with stake 0 + // 40 has load 0 and supported + // 40 with stake 0 + + // Sequential Phragmén with post processing gives + // 10 is elected with stake 1500.0 and score 0.0005 + // 20 is elected with stake 1500.0 and score 0.00075 // - // A has load 0.04 and supported - // X with stake 0.0 Y with stake 10.0 - // B has load 0.02 and supported - // X with stake 0.0 Z with stake 20.0 - // C has load 0.04 and supported - // Y with stake 15.0 Z with stake 15.0 - // - // NOTE: doesn't X/Y/Z's stash value make a difference here in phragmen? + // 10 has load 0.0005 and supported + // 10 with stake 1000.0 + // 20 has load 0.00075 and supported + // 20 with stake 1000.0 + // 30 has load 0 and supported + // 30 with stake 0 + // 40 has load 0 and supported + // 40 with stake 0 + // 2 has load 0.00075 and supported + // 10 with stake 166.66666666666674 20 with stake 333.33333333333326 30 with stake 0 + // 4 has load 0.00075 and supported + // 10 with stake 333.3333333333333 20 with stake 166.66666666666666 40 with stake 0.0 + + with_externalities(&mut ExtBuilder::default() .nominate(false) + .validator_pool(true) .build(), || { - // initial setup of 10 and 20, both validators. - assert_eq!(Session::validators(), vec![20, 10]); + // We don't really care about this. At this point everything is even. + // assert_eq!(Session::validators(), vec![40, 30]); assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000, active: 1000, unlocking: vec![] })); - assert_eq!(Staking::ledger(&20), Some(StakingLedger { stash: 21, total: 2000, active: 2000, unlocking: vec![] })); + assert_eq!(Staking::ledger(&20), Some(StakingLedger { stash: 21, total: 1000, active: 1000, unlocking: vec![] })); + assert_eq!(Staking::ledger(&30), Some(StakingLedger { stash: 31, total: 1000, active: 1000, unlocking: vec![] })); + assert_eq!(Staking::ledger(&40), Some(StakingLedger { stash: 41, total: 1000, active: 1000, unlocking: vec![] })); - assert_eq!(Staking::validators(10), ValidatorPrefs::default()); - assert_eq!(Staking::validators(20), ValidatorPrefs::default()); + assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); + assert_ok!(Staking::set_payee(Origin::signed(20), RewardDestination::Controller)); + assert_ok!(Staking::set_payee(Origin::signed(30), RewardDestination::Controller)); + assert_ok!(Staking::set_payee(Origin::signed(40), RewardDestination::Controller)); - assert_eq!(Balances::free_balance(10), 1); - assert_eq!(Balances::free_balance(20), 1); - // no one is a nominator assert_eq!(>::enumerate().count(), 0 as usize); - // Bond [30, 31] as the third validator - assert_ok!(Staking::bond(Origin::signed(31), 30, 1000, RewardDestination::default())); - assert_ok!(Staking::validate(Origin::signed(30), ValidatorPrefs::default())); - - // bond [2,1](A), [4,3](B), [6,5](C) as the 3 nominators - // Give all of them some balance to be able to bond properly. - for i in &[1, 3, 5] { let _ = Balances::deposit_creating(i, 50); } - // Linking names to the above test: - // 10 => X - // 20 => Y - // 30 => Z - assert_ok!(Staking::bond(Origin::signed(1), 2, 10, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); + // bond [2,1] / [4,3] a nominator + let _ = Balances::deposit_creating(&1, 1000); + let _ = Balances::deposit_creating(&3, 1000); - assert_ok!(Staking::bond(Origin::signed(3), 4, 20, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(4), vec![10, 30])); + assert_ok!(Staking::bond(Origin::signed(1), 2, 500, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(2), vec![11, 21, 31])); - assert_ok!(Staking::bond(Origin::signed(5), 6, 30, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(6), vec![20, 30])); + assert_ok!(Staking::bond(Origin::signed(3), 4, 500, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(4), vec![11, 21, 41])); // New era => election algorithm will trigger System::set_block_number(1); Session::check_rotate_session(System::block_number()); - // Z and Y are chosen - assert_eq!(Session::validators(), vec![30, 20]); - - // with stake 35 and 25 respectively - - // This is only because 30 has been bonded on the fly, exposures are stored at the very end of the era. - // 35 is the point, not 'own' Exposure. - assert_eq!(Staking::stakers(30).own, 0); - assert_eq!(Staking::stakers(30).total, 0 + 35); - // same as above. +25 is the point - assert_eq!(Staking::stakers(20).own, 2010); - assert_eq!(Staking::stakers(20).total, 2010 + 25); - - // 30(Z) was supported by B-4 and C-6 with stake 20 and 15 respectively. - assert_eq!(Staking::stakers(30).others.iter().map(|e| e.value).collect::>>(), vec![15, 20]); - assert_eq!(Staking::stakers(30).others.iter().map(|e| e.who).collect::>>(), vec![6, 4]); - - // 20(Y) was supported by A-2 and C-6 with stake 10 and 15 respectively. - assert_eq!(Staking::stakers(20).others.iter().map(|e| e.value).collect::>>(), vec![15, 10]); - assert_eq!(Staking::stakers(20).others.iter().map(|e| e.who).collect::>>(), vec![6, 2]); + assert_eq!(Session::validators(), vec![20, 10]); + + // with stake 1666 and 1333 respectively + assert_eq!(Staking::stakers(11).own, 1000); + assert_eq!(Staking::stakers(11).total, 1000 + 332); + assert_eq!(Staking::stakers(21).own, 1000); + assert_eq!(Staking::stakers(21).total, 1000 + 666); + + // Nominator's stake distribution. + assert_eq!(Staking::stakers(11).others.iter().map(|e| e.value).collect::>>(), vec![166, 166]); + assert_eq!(Staking::stakers(11).others.iter().map(|e| e.value).sum::>(), 332); + assert_eq!(Staking::stakers(11).others.iter().map(|e| e.who).collect::>>(), vec![3, 1]); + + assert_eq!(Staking::stakers(21).others.iter().map(|e| e.value).collect::>>(), vec![333, 333]); + assert_eq!(Staking::stakers(21).others.iter().map(|e| e.value).sum::>(), 666); + assert_eq!(Staking::stakers(21).others.iter().map(|e| e.who).collect::>>(), vec![3, 1]); }); } #[test] -fn phragmen_election_works() { +fn phragmen_election_works_example_2() { // tests the encapsulated phragmen::elect function. with_externalities(&mut ExtBuilder::default().nominate(false).build(), || { // initial setup of 10 and 20, both validators @@ -1437,52 +1506,89 @@ fn phragmen_election_works() { // bond [2,1](A), [4,3](B), as 2 nominators // Give all of them some balance to be able to bond properly. - for i in &[1, 3] { let _ = Balances::deposit_creating(i, 50); } - assert_ok!(Staking::bond(Origin::signed(1), 2, 5, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 20])); + for i in &[1, 3] { let _ = Balances::deposit_creating(i, 2000); } + assert_ok!(Staking::bond(Origin::signed(1), 2, 50, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(2), vec![11, 21])); - assert_ok!(Staking::bond(Origin::signed(3), 4, 45, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(4), vec![10, 30])); + assert_ok!(Staking::bond(Origin::signed(3), 4, 1000, RewardDestination::default())); + assert_ok!(Staking::nominate(Origin::signed(4), vec![11, 31])); let rounds = || 2 as usize; let validators = || >::enumerate(); let nominators = || >::enumerate(); - let stash_of = |w| Staking::stash_balance(&w); let min_validator_count = Staking::minimum_validator_count() as usize; let winners = phragmen::elect::( rounds, validators, nominators, - stash_of, - min_validator_count + Staking::slashable_balance_of, + min_validator_count, + ElectionConfig::> { + equalise: true, + tolerance: >::sa(10 as u64), + iterations: 10, + } ); + let winners = winners.unwrap(); + // 10 and 30 must be the winners - assert_eq!(winners.iter().map(|w| w.who).collect::>>(), vec![10, 30]); + assert_eq!(winners.iter().map(|w| w.who).collect::>>(), vec![11, 31]); - let winner_10 = winners.iter().filter(|w| w.who == 10).nth(0).unwrap(); - let winner_30 = winners.iter().filter(|w| w.who == 30).nth(0).unwrap(); + let winner_10 = winners.iter().filter(|w| w.who == 11).nth(0).unwrap(); + let winner_30 = winners.iter().filter(|w| w.who == 31).nth(0).unwrap(); // python implementation output: /* - 10 is elected with stake 26.31578947368421 and score 0.02 - 30 is elected with stake 23.684210526315788 and score 0.042222222222222223 + Votes [ + ('10', 1000, ['10']), + ('20', 1000, ['20']), + ('30', 1000, ['30']), + ('2', 50, ['10', '20']), + ('4', 1000, ['10', '30']) + ] + Sequential Phragmén gives + 10 is elected with stake 1705.7377049180327 and score 0.0004878048780487805 + 30 is elected with stake 1344.2622950819673 and score 0.0007439024390243903 + + 10 has load 0.0004878048780487805 and supported + 10 with stake 1000.0 + 20 has load 0 and supported + 20 with stake 0 + 30 has load 0.0007439024390243903 and supported + 30 with stake 1000.0 + 2 has load 0.0004878048780487805 and supported + 10 with stake 50.0 20 with stake 0.0 + 4 has load 0.0007439024390243903 and supported + 10 with stake 655.7377049180328 30 with stake 344.26229508196724 + + Sequential Phragmén with post processing gives + 10 is elected with stake 1525.0 and score 0.0004878048780487805 + 30 is elected with stake 1525.0 and score 0.0007439024390243903 + + 10 has load 0.0004878048780487805 and supported + 10 with stake 1000.0 + 20 has load 0 and supported + 20 with stake 0 + 30 has load 0.0007439024390243903 and supported + 30 with stake 1000.0 + 2 has load 0.0004878048780487805 and supported + 10 with stake 50.0 20 with stake 0.0 + 4 has load 0.0007439024390243903 and supported + 10 with stake 475.0 30 with stake 525.0 + - 2 has load 0.02 and supported - 10 with stake 5.0 20 with stake 0.0 - 4 has load 0.042222222222222223 and supported - 10 with stake 21.31578947368421 30 with stake 23.684210526315788 */ - assert_eq!(winner_10.exposure.total, 1000 + 26); - assert_eq!(winner_10.score, Perquintill::from_fraction(0.02)); - assert_eq!(winner_10.exposure.others[0].value, 21); - assert_eq!(winner_10.exposure.others[1].value, 5); + assert_eq!(winner_10.exposure.total, 1000 + 525); + assert_eq!(winner_10.score, Perquintill::from_quintillionths(487804878048780)); + assert_eq!(winner_10.exposure.others[0].value, 475); + assert_eq!(winner_10.exposure.others[1].value, 50); - assert_eq!(winner_30.exposure.total, 23); - assert_eq!(winner_30.score, Perquintill::from_quintillionths(42222222222222222)); - assert_eq!(winner_30.exposure.others[0].value, 23); + assert_eq!(winner_30.exposure.total, 1000 + 525); + assert_eq!(winner_30.score, Perquintill::from_quintillionths(743902439024390)); + assert_eq!(winner_30.exposure.others[0].value, 525); }) } @@ -1494,47 +1600,52 @@ fn switching_roles() { .sessions_per_era(3) .build(), || { + // Reset reward destination + for i in &[10, 20] { assert_ok!(Staking::set_payee(Origin::signed(*i), RewardDestination::Controller)); } + assert_eq!(Session::validators(), vec![20, 10]); // put some money in account that we'll use. for i in 1..7 { let _ = Balances::deposit_creating(&i, 5000); } // add 2 nominators - assert_ok!(Staking::bond(Origin::signed(1), 2, 2000, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(2), vec![10, 6])); + assert_ok!(Staking::bond(Origin::signed(1), 2, 2000, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(2), vec![11, 5])); + + assert_ok!(Staking::bond(Origin::signed(3), 4, 500, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(4), vec![21, 1])); - assert_ok!(Staking::bond(Origin::signed(3), 4, 500, RewardDestination::default())); - assert_ok!(Staking::nominate(Origin::signed(4), vec![20, 2])); - // add a new validator candidate - assert_ok!(Staking::bond(Origin::signed(5), 6, 1500, RewardDestination::Controller)); + assert_ok!(Staking::bond(Origin::signed(5), 6, 1000, RewardDestination::Controller)); assert_ok!(Staking::validate(Origin::signed(6), ValidatorPrefs::default())); - // new block + // new block System::set_block_number(1); Session::check_rotate_session(System::block_number()); - // no change + // no change assert_eq!(Session::validators(), vec![20, 10]); - // new block + // new block System::set_block_number(2); Session::check_rotate_session(System::block_number()); - // no change + // no change assert_eq!(Session::validators(), vec![20, 10]); // new block --> ne era --> new validators System::set_block_number(3); Session::check_rotate_session(System::block_number()); - // with current nominators 10 and 4 have the most stake + // with current nominators 10 and 5 have the most stake assert_eq!(Session::validators(), vec![6, 10]); - // 2 decides to be a validator. Consequences: - // 6 will not be chosen in the next round (no votes) - // 2 itself will be chosen + 20 who now has the higher votes - // 10 wil have no votes. + // 2 decides to be a validator. Consequences: + // new stakes: + // 10: 1000 self vote + // 6: 1000 self vote + // 20: 1000 self vote + 500 vote + // 2: 2000 self vote + 500 vote. assert_ok!(Staking::validate(Origin::signed(2), ValidatorPrefs::default())); System::set_block_number(4); @@ -1545,7 +1656,7 @@ fn switching_roles() { Session::check_rotate_session(System::block_number()); assert_eq!(Session::validators(), vec![6, 10]); - // ne era + // ne era System::set_block_number(6); Session::check_rotate_session(System::block_number()); assert_eq!(Session::validators(), vec![2, 20]); @@ -1555,14 +1666,11 @@ fn switching_roles() { #[test] fn wrong_vote_is_null() { with_externalities(&mut ExtBuilder::default() - .session_length(1) - .sessions_per_era(1) .nominate(false) .validator_pool(true) .build(), || { - // from the first era onward, only two will be chosen - assert_eq!(Session::validators(), vec![40, 30, 20, 10]); + assert_eq!(Session::validators(), vec![40, 30]); // put some money in account that we'll use. for i in 1..3 { let _ = Balances::deposit_creating(&i, 5000); } @@ -1570,14 +1678,210 @@ fn wrong_vote_is_null() { // add 1 nominators assert_ok!(Staking::bond(Origin::signed(1), 2, 2000, RewardDestination::default())); assert_ok!(Staking::nominate(Origin::signed(2), vec![ - 10, 20, // good votes + 11, 21, // good votes 1, 2, 15, 1000, 25 // crap votes. No effect. ])); - // new block + // new block + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators(), vec![20, 10]); + }); +} + +#[test] +fn bond_with_no_staked_value() { + // Behavior when someone bonds with no staked value. + // Particularly when she votes and the candidate is elected. + with_externalities(&mut ExtBuilder::default() + .validator_count(3) + .nominate(false) + .minimum_validator_count(1) + .build(), || { + // setup + assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); + assert_ok!(Staking::set_payee(Origin::signed(20), RewardDestination::Controller)); + let _ = Balances::deposit_creating(&3, 1000); + let initial_balance_2 = Balances::free_balance(&2); + let initial_balance_4 = Balances::free_balance(&4); + + // initial validators + assert_eq!(Session::validators(), vec![20, 10]); + + // Stingy validator. + assert_ok!(Staking::bond(Origin::signed(1), 2, 0, RewardDestination::Controller)); + assert_ok!(Staking::validate(Origin::signed(2), ValidatorPrefs::default())); + System::set_block_number(1); Session::check_rotate_session(System::block_number()); + // Not elected even though we want 3. + assert_eq!(Session::validators(), vec![20, 10]); + + // min of 10 and 20. + assert_eq!(Staking::slot_stake(), 1000); + + // let's make the stingy one elected. + assert_ok!(Staking::bond(Origin::signed(3), 4, 500, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(4), vec![1])); + + assert_eq!(Staking::ledger(4), Some(StakingLedger { stash: 3, active: 500, total: 500, unlocking: vec![]})); + + assert_eq!(Balances::free_balance(&2), initial_balance_2); + assert_eq!(Balances::free_balance(&4), initial_balance_4); + + System::set_block_number(2); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators(), vec![20, 10, 2]); + assert_eq!(Staking::stakers(1), Exposure { own: 0, total: 500, others: vec![IndividualExposure { who: 3, value: 500}]}); + + assert_eq!(Staking::slot_stake(), 500); + + // no rewards paid to 2 and 4 yet + assert_eq!(Balances::free_balance(&2), initial_balance_2); + assert_eq!(Balances::free_balance(&4), initial_balance_4); + + System::set_block_number(3); + Session::check_rotate_session(System::block_number()); + + let reward = Staking::current_session_reward(); + // 2 will not get any reward + // 4 will get all the reward share + assert_eq!(Balances::free_balance(&2), initial_balance_2); + // assert_eq!(Balances::free_balance(&4), initial_balance_4 + reward); + assert_eq!(Balances::free_balance(&4), initial_balance_4 + reward); + }); +} + +#[test] +fn bond_with_little_staked_value() { + // Behavior when someone bonds with little staked value. + // Particularly when she votes and the candidate is elected. + with_externalities(&mut ExtBuilder::default() + .validator_count(3) + .nominate(false) + .minimum_validator_count(1) + .build(), + || { + // setup + assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Controller)); + assert_ok!(Staking::set_payee(Origin::signed(20), RewardDestination::Controller)); + let initial_balance_2 = Balances::free_balance(&2); + + // initial validators assert_eq!(Session::validators(), vec![20, 10]); + + // Stingy validator. + assert_ok!(Staking::bond(Origin::signed(1), 2, 1, RewardDestination::Controller)); + assert_ok!(Staking::validate(Origin::signed(2), ValidatorPrefs::default())); + + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + + // 2 is elected. + // and fucks up the slot stake. + assert_eq!(Session::validators(), vec![20, 10, 2]); + assert_eq!(Staking::slot_stake(), 1); + + // Old ones are rewarded. + assert_eq!(Balances::free_balance(&10), 1 + 10); + assert_eq!(Balances::free_balance(&20), 1 + 10); + // no rewards paid to 2. This was initial election. + assert_eq!(Balances::free_balance(&2), initial_balance_2); + + System::set_block_number(2); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators(), vec![20, 10, 2]); + assert_eq!(Staking::slot_stake(), 1); + + let reward = Staking::current_session_reward(); + // 2 will not get the full reward, practically 1 + assert_eq!(Balances::free_balance(&2), initial_balance_2 + reward.max(1)); }); } + + +#[test] +#[ignore] // Enable this once post-processing is on. +fn phragmen_linear_worse_case_equalise() { + with_externalities(&mut ExtBuilder::default() + .nominate(false) + .validator_pool(true) + .fare(true) + .build(), + || { + let bond_validator = |a, b| { + let _ = Balances::deposit_creating(&(a-1), b); + assert_ok!(Staking::bond(Origin::signed(a-1), a, b, RewardDestination::Controller)); + assert_ok!(Staking::validate(Origin::signed(a), ValidatorPrefs::default())); + }; + let bond_nominator = |a, b, v| { + let _ = Balances::deposit_creating(&(a-1), b); + assert_ok!(Staking::bond(Origin::signed(a-1), a, b, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(a), v)); + }; + + for i in &[10, 20, 30, 40] { assert_ok!(Staking::set_payee(Origin::signed(*i), RewardDestination::Controller)); } + + bond_validator(50, 1000); + bond_validator(60, 1000); + bond_validator(70, 1000); + + bond_nominator(2, 2000, vec![11]); + bond_nominator(4, 1000, vec![11, 21]); + bond_nominator(6, 1000, vec![21, 31]); + bond_nominator(8, 1000, vec![31, 41]); + bond_nominator(110, 1000, vec![41, 51]); + bond_nominator(112, 1000, vec![51, 61]); + bond_nominator(114, 1000, vec![61, 71]); + + assert_eq!(Session::validators(), vec![40, 30]); + assert_ok!(Staking::set_validator_count(7)); + + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators(), vec![10, 60, 40, 20, 50, 30, 70]); + + // Sequential Phragmén with post processing gives + // 10 is elected with stake 3000.0 and score 0.00025 + // 30 is elected with stake 2008.8712884829595 and score 0.0003333333333333333 + // 50 is elected with stake 2000.0001049958742 and score 0.0003333333333333333 + // 60 is elected with stake 1991.128921508789 and score 0.0004444444444444444 + // 20 is elected with stake 2017.7421569824219 and score 0.0005277777777777777 + // 40 is elected with stake 2000.0001049958742 and score 0.0005555555555555556 + // 70 is elected with stake 1982.2574230340813 and score 0.0007222222222222222 + + assert_eq!(Staking::stakers(11).total, 3000); + assert_eq!(Staking::stakers(31).total, 2035); + assert_eq!(Staking::stakers(51).total, 2000); + assert_eq!(Staking::stakers(61).total, 1968); + assert_eq!(Staking::stakers(21).total, 2035); + assert_eq!(Staking::stakers(41).total, 2024); + assert_eq!(Staking::stakers(71).total, 1936); + }) +} + +#[test] +fn phragmen_chooses_correct_validators() { + with_externalities(&mut ExtBuilder::default() + .nominate(true) + .validator_pool(true) + .fare(true) + .validator_count(1) + .build(), + || { + // 4 validator candidates + // self vote + default account 100 is nominator. + assert_eq!(Staking::validator_count(), 1); + assert_eq!(Session::validators().len(), 1); + + System::set_block_number(1); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators().len(), 1); + }) +} -- GitLab From 1eab23ff4ecb3f1b0e8d032fe6b7d6da7d7b353f Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Sat, 23 Mar 2019 08:16:22 +0100 Subject: [PATCH 067/120] Fix up the offline validator API to accept controller (#2090) --- node/runtime/src/lib.rs | 4 +- .../release/node_runtime.compact.wasm | Bin 923504 -> 923727 bytes srml/staking/src/lib.rs | 96 ++++++++++-------- srml/staking/src/tests.rs | 18 ++-- 4 files changed, 62 insertions(+), 56 deletions(-) diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 80260801ef..ddfa241e37 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 39, - impl_version: 39, + spec_version: 40, + impl_version: 40, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 3af4c1768d944ea6959626a002a34ef27a0bcfa2..bb36c2cbf77fa7b65c3e11bbe5b2ed5db61de609 100644 GIT binary patch delta 16925 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 delta 17164 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 N%j}^)#4?}q{ts$3?;ijF diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index aa3ef1d4b2..68e26a8e63 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -960,56 +960,62 @@ impl Module { /// Call when a validator is determined to be offline. `count` is the /// number of offences the validator has committed. - pub fn on_offline_validator(v: T::AccountId, count: usize) { + /// + /// NOTE: This is called with the controller (not the stash) account id. + pub fn on_offline_validator(controller: T::AccountId, count: usize) { use primitives::traits::CheckedShl; - // Early exit if validator is invulnerable. - if Self::invulnerables().contains(&v) { - return - } + if let Some(l) = Self::ledger(&controller) { + let stash = l.stash; - let slash_count = Self::slash_count(&v); - let new_slash_count = slash_count + count as u32; - >::insert(&v, new_slash_count); - let grace = Self::offline_slash_grace(); - - if RECENT_OFFLINE_COUNT > 0 { - let item = (v.clone(), >::block_number(), count as u32); - >::mutate(|v| if v.len() >= RECENT_OFFLINE_COUNT { - let index = v.iter() - .enumerate() - .min_by_key(|(_, (_, block, _))| block) - .expect("v is non-empty; qed") - .0; - v[index] = item; - } else { - v.push(item); - }); - } + // Early exit if validator is invulnerable. + if Self::invulnerables().contains(&stash) { + return + } - let prefs = Self::validators(&v); - let unstake_threshold = prefs.unstake_threshold.min(MAX_UNSTAKE_THRESHOLD); - let max_slashes = grace + unstake_threshold; - - let event = if new_slash_count > max_slashes { - let slash_exposure = Self::stakers(&v).total; - let offline_slash_base = Self::offline_slash() * slash_exposure; - // They're bailing. - let slash = offline_slash_base - // Multiply slash_mantissa by 2^(unstake_threshold with upper bound) - .checked_shl(unstake_threshold) - .map(|x| x.min(slash_exposure)) - .unwrap_or(slash_exposure); - let _ = Self::slash_validator(&v, slash); - >::remove(&v); - let _ = Self::apply_force_new_era(false); - - RawEvent::OfflineSlash(v.clone(), slash) - } else { - RawEvent::OfflineWarning(v.clone(), slash_count) - }; + let slash_count = Self::slash_count(&stash); + let new_slash_count = slash_count + count as u32; + >::insert(&stash, new_slash_count); + let grace = Self::offline_slash_grace(); + + if RECENT_OFFLINE_COUNT > 0 { + let item = (stash.clone(), >::block_number(), count as u32); + >::mutate(|v| if v.len() >= RECENT_OFFLINE_COUNT { + let index = v.iter() + .enumerate() + .min_by_key(|(_, (_, block, _))| block) + .expect("v is non-empty; qed") + .0; + v[index] = item; + } else { + v.push(item); + }); + } - Self::deposit_event(event); + let prefs = Self::validators(&stash); + let unstake_threshold = prefs.unstake_threshold.min(MAX_UNSTAKE_THRESHOLD); + let max_slashes = grace + unstake_threshold; + + let event = if new_slash_count > max_slashes { + let slash_exposure = Self::stakers(&stash).total; + let offline_slash_base = Self::offline_slash() * slash_exposure; + // They're bailing. + let slash = offline_slash_base + // Multiply slash_mantissa by 2^(unstake_threshold with upper bound) + .checked_shl(unstake_threshold) + .map(|x| x.min(slash_exposure)) + .unwrap_or(slash_exposure); + let _ = Self::slash_validator(&stash, slash); + >::remove(&stash); + let _ = Self::apply_force_new_era(false); + + RawEvent::OfflineSlash(stash.clone(), slash) + } else { + RawEvent::OfflineWarning(stash.clone(), slash_count) + }; + + Self::deposit_event(event); + } } } diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index 50c5772985..86b583fab8 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -117,7 +117,7 @@ fn invulnerability_should_work() { // Set account 11 as an offline validator with a large number of reports // Should exit early if invulnerable - Staking::on_offline_validator(11, 100); + Staking::on_offline_validator(10, 100); // Show that account 11 has not been touched assert_eq!(Staking::slash_count(&11), 0); @@ -146,7 +146,7 @@ fn offline_should_slash_and_kick() { // Account 10 has the funds we just gave it assert_eq!(Balances::free_balance(&11), 1000); // Report account 10 as offline, one greater than unstake threshold - Staking::on_offline_validator(11, 4); + Staking::on_offline_validator(10, 4); // Confirm user has been reported assert_eq!(Staking::slash_count(&11), 4); // Confirm balance has been reduced by 2^unstake_threshold * offline_slash() * amount_at_stake. @@ -181,7 +181,7 @@ fn offline_grace_should_delay_slashing() { assert_eq!(Staking::slash_count(&11), 0); // Report account 10 up to the threshold - Staking::on_offline_validator(11, default_unstake_threshold as usize + offline_slash_grace as usize); + Staking::on_offline_validator(10, default_unstake_threshold as usize + offline_slash_grace as usize); // Confirm slash count assert_eq!(Staking::slash_count(&11), 4); @@ -189,7 +189,7 @@ fn offline_grace_should_delay_slashing() { assert_eq!(Balances::free_balance(&11), 70); // Report account 10 one more time - Staking::on_offline_validator(11, 1); + Staking::on_offline_validator(10, 1); assert_eq!(Staking::slash_count(&11), 5); // User gets slashed assert_eq!(Balances::free_balance(&11), 0); @@ -236,8 +236,8 @@ fn max_unstake_threshold_works() { >::put(Perbill::from_fraction(0.0001)); // Report each user 1 more than the max_unstake_threshold - Staking::on_offline_validator(11, MAX_UNSTAKE_THRESHOLD as usize + 1); - Staking::on_offline_validator(21, MAX_UNSTAKE_THRESHOLD as usize + 1); + Staking::on_offline_validator(10, MAX_UNSTAKE_THRESHOLD as usize + 1); + Staking::on_offline_validator(20, MAX_UNSTAKE_THRESHOLD as usize + 1); // Show that each balance only gets reduced by 2^max_unstake_threshold times 10% // of their total stake. @@ -264,7 +264,7 @@ fn slashing_does_not_cause_underflow() { Session::check_rotate_session(System::block_number()); // Should not panic - Staking::on_offline_validator(11, 100); + Staking::on_offline_validator(10, 100); // Confirm that underflow has not occurred, and account balance is set to zero assert_eq!(Balances::free_balance(&11), 0); }); @@ -1261,7 +1261,7 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { assert_eq!(Staking::slot_stake(), 79); // // If 10 gets slashed now, despite having +1000 in stash, it will be slashed byt 79, which is the slot stake - Staking::on_offline_validator(11, 4); + Staking::on_offline_validator(10, 4); // // Confirm user has been reported assert_eq!(Staking::slash_count(&11), 4); // // check the balance of 10 (slash will be deducted from free balance.) @@ -1288,7 +1288,7 @@ fn on_free_balance_zero_stash_removes_validator() { // Set some storage items which we expect to be cleaned up // Initiate slash count storage item - Staking::on_offline_validator(11, 1); + Staking::on_offline_validator(10, 1); // Set payee information assert_ok!(Staking::set_payee(Origin::signed(10), RewardDestination::Stash)); -- GitLab From 044ae4ad0dcc94c858c29cbd24e654c56e28d103 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Sat, 23 Mar 2019 10:34:28 +0100 Subject: [PATCH 068/120] Replace NodeIndex with PeerId everywhere (#2077) * Replace NodeIndex with PeerId * Fix tests * More test fixing * Whitespace --- Cargo.lock | 45 +++--- core/consensus/common/Cargo.toml | 1 + core/consensus/common/src/import_queue.rs | 22 +-- core/network-libp2p/src/lib.rs | 6 - core/network-libp2p/src/service_task.rs | 152 ++++++------------ core/network-libp2p/tests/test.rs | 8 +- core/network/src/blocks.rs | 75 ++++----- core/network/src/consensus_gossip.rs | 20 +-- core/network/src/lib.rs | 2 +- core/network/src/on_demand.rs | 180 ++++++++++++---------- core/network/src/protocol.rs | 138 ++++++++--------- core/network/src/service.rs | 52 +++---- core/network/src/specialization.rs | 8 +- core/network/src/sync.rs | 68 ++++---- core/network/src/test/block_import.rs | 17 +- core/network/src/test/mod.rs | 73 +++++---- core/network/src/test/sync.rs | 19 ++- core/rpc/src/system/helpers.rs | 5 +- core/rpc/src/system/mod.rs | 5 +- core/rpc/src/system/tests.rs | 8 +- 20 files changed, 424 insertions(+), 480 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 52eec67507..c744835520 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1287,7 +1287,7 @@ dependencies = [ [[package]] name = "libp2p" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1322,7 +1322,7 @@ dependencies = [ [[package]] name = "libp2p-core" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1357,7 +1357,7 @@ dependencies = [ [[package]] name = "libp2p-core-derive" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1366,7 +1366,7 @@ dependencies = [ [[package]] name = "libp2p-dns" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1379,7 +1379,7 @@ dependencies = [ [[package]] name = "libp2p-floodsub" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1398,7 +1398,7 @@ dependencies = [ [[package]] name = "libp2p-identify" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1419,7 +1419,7 @@ dependencies = [ [[package]] name = "libp2p-kad" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1447,7 +1447,7 @@ dependencies = [ [[package]] name = "libp2p-mdns" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1468,7 +1468,7 @@ dependencies = [ [[package]] name = "libp2p-mplex" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1484,7 +1484,7 @@ dependencies = [ [[package]] name = "libp2p-noise" version = "0.3.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1502,7 +1502,7 @@ dependencies = [ [[package]] name = "libp2p-ping" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1521,7 +1521,7 @@ dependencies = [ [[package]] name = "libp2p-plaintext" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1531,7 +1531,7 @@ dependencies = [ [[package]] name = "libp2p-ratelimit" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1544,7 +1544,7 @@ dependencies = [ [[package]] name = "libp2p-secio" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1570,7 +1570,7 @@ dependencies = [ [[package]] name = "libp2p-tcp" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1584,7 +1584,7 @@ dependencies = [ [[package]] name = "libp2p-uds" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1596,7 +1596,7 @@ dependencies = [ [[package]] name = "libp2p-websocket" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1611,7 +1611,7 @@ dependencies = [ [[package]] name = "libp2p-yamux" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1807,7 +1807,7 @@ dependencies = [ [[package]] name = "multistream-select" version = "0.3.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2179,7 +2179,7 @@ dependencies = [ [[package]] name = "parity-multiaddr" version = "0.2.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2193,7 +2193,7 @@ dependencies = [ [[package]] name = "parity-multihash" version = "0.1.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2728,7 +2728,7 @@ dependencies = [ [[package]] name = "rw-stream-sink" version = "0.1.1" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#afd9623fccaac5ce1c41db1d82ad4def2652390f" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -3783,6 +3783,7 @@ dependencies = [ "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (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)", diff --git a/core/consensus/common/Cargo.toml b/core/consensus/common/Cargo.toml index 2eaf177874..814857fe69 100644 --- a/core/consensus/common/Cargo.toml +++ b/core/consensus/common/Cargo.toml @@ -7,6 +7,7 @@ edition = "2018" [dependencies] crossbeam-channel = "0.3.4" +libp2p = { git = "https://github.com/tomaka/libp2p-rs", branch = "substrate-tmp-2019-03-20", default-features = false } log = "0.4" primitives = { package = "substrate-primitives", path= "../../primitives" } inherents = { package = "substrate-inherents", path = "../../inherents" } diff --git a/core/consensus/common/src/import_queue.rs b/core/consensus/common/src/import_queue.rs index 1952869187..2e1c29d4d8 100644 --- a/core/consensus/common/src/import_queue.rs +++ b/core/consensus/common/src/import_queue.rs @@ -46,7 +46,7 @@ pub type SharedBlockImport = Arc + pub type SharedJustificationImport = Arc + Send + Sync>; /// Maps to the Origin used by the network. -pub type Origin = usize; +pub type Origin = libp2p::PeerId; /// Block data used by the queue. #[derive(Debug, PartialEq, Eq, Clone)] @@ -179,7 +179,7 @@ impl ImportQueue for BasicQueue { fn import_justification(&self, who: Origin, hash: B::Hash, number: NumberFor, justification: Justification) { let _ = self .sender - .send(BlockImportMsg::ImportJustification(who, hash, number, justification)) + .send(BlockImportMsg::ImportJustification(who.clone(), hash, number, justification)) .expect("1. self is holding a sender to the Importer, 2. Importer should handle messages while there are senders around; qed"); } } @@ -516,7 +516,7 @@ pub fn import_single_block>( let (header, justification) = match (block.header, block.justification) { (Some(header), justification) => (header, justification), (None, _) => { - if let Some(peer) = peer { + if let Some(ref peer) = peer { debug!(target: "sync", "Header {} was not provided by {} ", block.hash, peer); } else { debug!(target: "sync", "Header {} was not provided ", block.hash); @@ -535,14 +535,14 @@ pub fn import_single_block>( trace!(target: "sync", "Block already in chain {}: {:?}", number, hash); Ok(BlockImportResult::ImportedKnown(number)) }, - Ok(ImportResult::Imported(aux)) => Ok(BlockImportResult::ImportedUnknown(number, aux, peer)), + Ok(ImportResult::Imported(aux)) => Ok(BlockImportResult::ImportedUnknown(number, aux, peer.clone())), Ok(ImportResult::UnknownParent) => { debug!(target: "sync", "Block with unknown parent {}: {:?}, parent: {:?}", number, hash, parent); Err(BlockImportError::UnknownParent) }, Ok(ImportResult::KnownBad) => { debug!(target: "sync", "Peer gave us a bad block {}: {:?}", number, hash); - Err(BlockImportError::BadBlock(peer)) + Err(BlockImportError::BadBlock(peer.clone())) }, Err(e) => { debug!(target: "sync", "Error importing block {}: {:?}: {:?}", number, hash, e); @@ -558,12 +558,12 @@ pub fn import_single_block>( let (import_block, new_authorities) = verifier.verify(block_origin, header, justification, block.body) .map_err(|msg| { - if let Some(peer) = peer { + if let Some(ref peer) = peer { trace!(target: "sync", "Verifying {}({}) from {} failed: {}", number, hash, peer, msg); } else { trace!(target: "sync", "Verifying {}({}) failed: {}", number, hash, msg); } - BlockImportError::VerificationFailed(peer, msg) + BlockImportError::VerificationFailed(peer.clone(), msg) })?; import_error(import_handle.import_block(import_block, new_authorities)) @@ -572,6 +572,7 @@ pub fn import_single_block>( #[cfg(test)] mod tests { use super::*; + use libp2p::PeerId; use test_client::runtime::{Block, Hash}; #[derive(Debug, PartialEq)] @@ -639,15 +640,16 @@ mod tests { assert_eq!(link_port.recv(), Ok(LinkMsg::BlockImported)); // Send an unknown with peer and bad justification + let peer_id = PeerId::random(); let results = vec![(Ok(BlockImportResult::ImportedUnknown(Default::default(), ImportedAux { needs_justification: true, clear_justification_requests: false, bad_justification: true }, - Some(0))), Default::default())]; + Some(peer_id.clone()))), Default::default())]; let _ = result_sender.send(BlockImportWorkerMsg::Imported(results)).ok().unwrap(); assert_eq!(link_port.recv(), Ok(LinkMsg::BlockImported)); assert_eq!(link_port.recv(), Ok(LinkMsg::Disconnected)); // Send an incomplete header - let results = vec![(Err(BlockImportError::IncompleteHeader(Some(Default::default()))), Default::default())]; + let results = vec![(Err(BlockImportError::IncompleteHeader(Some(peer_id.clone()))), Default::default())]; let _ = result_sender.send(BlockImportWorkerMsg::Imported(results)).ok().unwrap(); assert_eq!(link_port.recv(), Ok(LinkMsg::Disconnected)); assert_eq!(link_port.recv(), Ok(LinkMsg::Restarted)); @@ -658,7 +660,7 @@ mod tests { assert_eq!(link_port.recv(), Ok(LinkMsg::Restarted)); // Send a verification failed - let results = vec![(Err(BlockImportError::VerificationFailed(Some(0), String::new())), Default::default())]; + let results = vec![(Err(BlockImportError::VerificationFailed(Some(peer_id.clone()), String::new())), Default::default())]; let _ = result_sender.send(BlockImportWorkerMsg::Imported(results)).ok().unwrap(); assert_eq!(link_port.recv(), Ok(LinkMsg::Disconnected)); assert_eq!(link_port.recv(), Ok(LinkMsg::Restarted)); diff --git a/core/network-libp2p/src/lib.rs b/core/network-libp2p/src/lib.rs index 1736fd44d7..34644da440 100644 --- a/core/network-libp2p/src/lib.rs +++ b/core/network-libp2p/src/lib.rs @@ -37,12 +37,6 @@ use std::{collections::{HashMap, HashSet}, error, fmt, time::Duration}; /// Protocol / handler id pub type ProtocolId = [u8; 3]; -/// Node public key -pub type NodeId = PeerId; - -/// Local (temporary) peer session ID. -pub type NodeIndex = usize; - /// Parses a string address and returns the component, if valid. pub fn parse_str_addr(addr_str: &str) -> Result<(PeerId, Multiaddr), ParseErr> { let mut addr: Multiaddr = addr_str.parse()?; diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index 4e7e0a33a8..b8cf445d64 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -19,14 +19,13 @@ use crate::{ transport, NetworkState, NetworkStatePeer, NetworkStateNotConnectedPeer }; use crate::custom_proto::{CustomMessage, RegisteredProtocol}; -use crate::{NetworkConfiguration, NonReservedPeerMode, NodeIndex, parse_str_addr}; +use crate::{NetworkConfiguration, NonReservedPeerMode, parse_str_addr}; use fnv::FnvHashMap; use futures::{prelude::*, Stream}; use libp2p::{multiaddr::Protocol, Multiaddr, core::swarm::NetworkBehaviour, PeerId}; use libp2p::core::{Swarm, nodes::Substream, transport::boxed::Boxed, muxing::StreamMuxerBox}; use libp2p::core::nodes::ConnectedPoint; -use log::{debug, error, info, warn}; -use std::collections::hash_map::Entry; +use log::{debug, info, warn}; use std::fs; use std::io::Error as IoError; use std::path::Path; @@ -114,8 +113,6 @@ where TMessage: CustomMessage + Send + 'static { swarm, bandwidth, nodes_info: Default::default(), - index_by_id: Default::default(), - next_node_id: 1, injected_events: Vec::new(), }; @@ -127,10 +124,8 @@ where TMessage: CustomMessage + Send + 'static { pub enum ServiceEvent { /// A custom protocol substream has been opened with a node. OpenedCustomProtocol { - /// The Id of the node. + /// Identity of the node. peer_id: PeerId, - /// Index of the node. - node_index: NodeIndex, /// Version of the protocol that was opened. version: u8, /// Node debug info @@ -139,16 +134,16 @@ pub enum ServiceEvent { /// A custom protocol substream has been closed. ClosedCustomProtocol { - /// Index of the node. - node_index: NodeIndex, + /// Identity of the node. + peer_id: PeerId, /// Node debug info debug_info: String, }, /// Receives a message on a custom protocol stream. CustomMessage { - /// Index of the node. - node_index: NodeIndex, + /// Identity of the node. + peer_id: PeerId, /// Message that has been received. message: TMessage, }, @@ -156,7 +151,7 @@ pub enum ServiceEvent { /// The substream with a node is clogged. We should avoid sending data to it if possible. Clogged { /// Index of the node. - node_index: NodeIndex, + peer_id: PeerId, /// Copy of the messages that are within the buffer, for further diagnostic. messages: Vec, }, @@ -171,13 +166,7 @@ pub struct Service where TMessage: CustomMessage { bandwidth: Arc, /// Information about all the nodes we're connected to. - nodes_info: FnvHashMap, - - /// Opposite of `nodes_info`. - index_by_id: FnvHashMap, - - /// Next index to assign to a node. - next_node_id: NodeIndex, + nodes_info: FnvHashMap, /// Events to produce on the Stream. injected_events: Vec>, @@ -186,8 +175,6 @@ pub struct Service where TMessage: CustomMessage { /// Information about a node we're connected to. #[derive(Debug)] struct NodeInfo { - /// Hash of the public key of the node. - peer_id: PeerId, /// How we're connected to the node. endpoint: ConnectedPoint, /// Version reported by the remote, or `None` if unknown. @@ -202,16 +189,16 @@ where TMessage: CustomMessage + Send + 'static { pub fn state(&mut self) -> NetworkState { let connected_peers = { let swarm = &mut self.swarm; - self.nodes_info.values().map(move |info| { - let known_addresses = NetworkBehaviour::addresses_of_peer(&mut **swarm, &info.peer_id) + self.nodes_info.iter().map(move |(peer_id, info)| { + let known_addresses = NetworkBehaviour::addresses_of_peer(&mut **swarm, peer_id) .into_iter().collect(); - (info.peer_id.to_base58(), NetworkStatePeer { + (peer_id.to_base58(), NetworkStatePeer { endpoint: info.endpoint.clone().into(), version_string: info.client_version.clone(), latest_ping_time: info.latest_ping, - enabled: swarm.is_enabled(&info.peer_id), - open: swarm.is_open(&info.peer_id), + enabled: swarm.is_enabled(&peer_id), + open: swarm.is_open(&peer_id), known_addresses, }) }).collect() @@ -219,8 +206,8 @@ where TMessage: CustomMessage + Send + 'static { let not_connected_peers = { let swarm = &mut self.swarm; - let index_by_id = &self.index_by_id; - let list = swarm.known_peers().filter(|p| !index_by_id.contains_key(p)) + let nodes_info = &self.nodes_info; + let list = swarm.known_peers().filter(|p| !nodes_info.contains_key(p)) .cloned().collect::>(); list.into_iter().map(move |peer_id| { (peer_id.to_base58(), NetworkStateNotConnectedPeer { @@ -266,25 +253,19 @@ where TMessage: CustomMessage + Send + 'static { /// Returns the list of all the peers we are connected to. #[inline] - pub fn connected_peers<'a>(&'a self) -> impl Iterator + 'a { - self.nodes_info.keys().cloned() - } - - /// Returns the `PeerId` of a node. - #[inline] - pub fn peer_id_of_node(&self, node_index: NodeIndex) -> Option<&PeerId> { - self.nodes_info.get(&node_index).map(|info| &info.peer_id) + pub fn connected_peers<'a>(&'a self) -> impl Iterator + 'a { + self.nodes_info.keys() } /// Returns the way we are connected to a node. #[inline] - pub fn node_endpoint(&self, node_index: NodeIndex) -> Option<&ConnectedPoint> { - self.nodes_info.get(&node_index).map(|info| &info.endpoint) + pub fn node_endpoint(&self, peer_id: &PeerId) -> Option<&ConnectedPoint> { + self.nodes_info.get(peer_id).map(|info| &info.endpoint) } /// Returns the client version reported by a node. - pub fn node_client_version(&self, node_index: NodeIndex) -> Option<&str> { - self.nodes_info.get(&node_index) + pub fn node_client_version(&self, peer_id: &PeerId) -> Option<&str> { + self.nodes_info.get(peer_id) .and_then(|info| info.client_version.as_ref().map(|s| &s[..])) } @@ -294,25 +275,21 @@ where TMessage: CustomMessage + Send + 'static { /// invalid. pub fn send_custom_message( &mut self, - node_index: NodeIndex, + peer_id: &PeerId, message: TMessage ) { - if let Some(peer_id) = self.nodes_info.get(&node_index).map(|info| &info.peer_id) { - self.swarm.send_custom_message(peer_id, message); - } else { - warn!(target: "sub-libp2p", "Tried to send message to unknown node: {:}", node_index); - } + self.swarm.send_custom_message(peer_id, message); } /// Disconnects a peer. /// /// This is asynchronous and will not immediately close the peer. /// Corresponding closing events will be generated once the closing actually happens. - pub fn drop_node(&mut self, node_index: NodeIndex) { - if let Some(info) = self.nodes_info.get(&node_index) { - debug!(target: "sub-libp2p", "Dropping {:?} on purpose (#{:?}, {:?}, {:?})", - info.peer_id, node_index, info.endpoint, info.client_version); - self.swarm.drop_node(&info.peer_id); + pub fn drop_node(&mut self, peer_id: &PeerId) { + if let Some(info) = self.nodes_info.get(peer_id) { + debug!(target: "sub-libp2p", "Dropping {:?} on purpose ({:?}, {:?})", + peer_id, info.endpoint, info.client_version); + self.swarm.drop_node(peer_id); } } @@ -322,73 +299,42 @@ where TMessage: CustomMessage + Send + 'static { } /// Get debug info for a given peer. - pub fn peer_debug_info(&self, who: NodeIndex) -> String { - if let Some(info) = self.nodes_info.get(&who) { - format!("{:?} (version: {:?}) through {:?}", info.peer_id, info.client_version, info.endpoint) + pub fn peer_debug_info(&self, who: &PeerId) -> String { + if let Some(info) = self.nodes_info.get(who) { + format!("{:?} (version: {:?}) through {:?}", who, info.client_version, info.endpoint) } else { "unknown".to_string() } } - /// Returns the `NodeIndex` of a peer, or assigns one if none exists. - fn index_of_peer_or_assign(&mut self, peer: PeerId, endpoint: ConnectedPoint) -> NodeIndex { - match self.index_by_id.entry(peer) { - Entry::Occupied(entry) => { - let id = *entry.get(); - self.nodes_info.insert(id, NodeInfo { - peer_id: entry.key().clone(), - endpoint, - client_version: None, - latest_ping: None, - }); - id - }, - Entry::Vacant(entry) => { - let id = self.next_node_id; - self.next_node_id += 1; - self.nodes_info.insert(id, NodeInfo { - peer_id: entry.key().clone(), - endpoint, - client_version: None, - latest_ping: None, - }); - entry.insert(id); - id - }, - } - } - /// Polls for what happened on the network. fn poll_swarm(&mut self) -> Poll>, IoError> { loop { match self.swarm.poll() { - Ok(Async::Ready(Some(BehaviourOut::CustomProtocolOpen { peer_id, version, endpoint }))) => { - let node_index = self.index_of_peer_or_assign(peer_id.clone(), endpoint); + Ok(Async::Ready(Some(BehaviourOut::CustomProtocolOpen { peer_id, version, .. }))) => { + let debug_info = self.peer_debug_info(&peer_id); break Ok(Async::Ready(Some(ServiceEvent::OpenedCustomProtocol { peer_id, - node_index, version, - debug_info: self.peer_debug_info(node_index), + debug_info, }))) } Ok(Async::Ready(Some(BehaviourOut::CustomProtocolClosed { peer_id, .. }))) => { - let node_index = *self.index_by_id.get(&peer_id).expect("index_by_id is always kept in sync with the state of the behaviour"); + let debug_info = self.peer_debug_info(&peer_id); break Ok(Async::Ready(Some(ServiceEvent::ClosedCustomProtocol { - node_index, - debug_info: self.peer_debug_info(node_index), + peer_id, + debug_info, }))) } Ok(Async::Ready(Some(BehaviourOut::CustomMessage { peer_id, message }))) => { - let node_index = *self.index_by_id.get(&peer_id).expect("index_by_id is always kept in sync with the state of the behaviour"); break Ok(Async::Ready(Some(ServiceEvent::CustomMessage { - node_index, + peer_id, message, }))) } Ok(Async::Ready(Some(BehaviourOut::Clogged { peer_id, messages }))) => { - let node_index = *self.index_by_id.get(&peer_id).expect("index_by_id is always kept in sync with the state of the behaviour"); break Ok(Async::Ready(Some(ServiceEvent::Clogged { - node_index, + peer_id, messages, }))) } @@ -396,26 +342,16 @@ where TMessage: CustomMessage + Send + 'static { // Contrary to the other events, this one can happen even on nodes which don't // have any open custom protocol slot. Therefore it is not necessarily in the // list. - if let Some(id) = self.index_by_id.get(&peer_id) { - if let Some(n) = self.nodes_info.get_mut(id) { - n.client_version = Some(info.agent_version); - } else { - error!(target: "sub-libp2p", - "State inconsistency between index_by_id and nodes_info"); - } + if let Some(n) = self.nodes_info.get_mut(&peer_id) { + n.client_version = Some(info.agent_version); } } Ok(Async::Ready(Some(BehaviourOut::PingSuccess { peer_id, ping_time }))) => { // Contrary to the other events, this one can happen even on nodes which don't // have any open custom protocol slot. Therefore it is not necessarily in the // list. - if let Some(id) = self.index_by_id.get(&peer_id) { - if let Some(n) = self.nodes_info.get_mut(id) { - n.latest_ping = Some(ping_time); - } else { - error!(target: "sub-libp2p", - "State inconsistency between index_by_id and nodes_info"); - } + if let Some(n) = self.nodes_info.get_mut(&peer_id) { + n.latest_ping = Some(ping_time); } } Ok(Async::NotReady) => break Ok(Async::NotReady), diff --git a/core/network-libp2p/tests/test.rs b/core/network-libp2p/tests/test.rs index a7761a6fca..437f651184 100644 --- a/core/network-libp2p/tests/test.rs +++ b/core/network-libp2p/tests/test.rs @@ -99,9 +99,9 @@ fn two_nodes_transfer_lots_of_packets() { let fut1 = future::poll_fn(move || -> io::Result<_> { loop { match try_ready!(service1.poll()) { - Some(ServiceEvent::OpenedCustomProtocol { node_index, .. }) => { + Some(ServiceEvent::OpenedCustomProtocol { peer_id, .. }) => { for n in 0 .. NUM_PACKETS { - service1.send_custom_message(node_index, vec![(n % 256) as u8]); + service1.send_custom_message(&peer_id, vec![(n % 256) as u8]); } }, _ => panic!(), @@ -227,9 +227,9 @@ fn basic_two_nodes_requests_in_parallel() { let fut1 = future::poll_fn(move || -> io::Result<_> { loop { match try_ready!(service1.poll()) { - Some(ServiceEvent::OpenedCustomProtocol { node_index, .. }) => { + Some(ServiceEvent::OpenedCustomProtocol { peer_id, .. }) => { for msg in to_send.drain(..) { - service1.send_custom_message(node_index, msg); + service1.send_custom_message(&peer_id, msg); } }, _ => panic!(), diff --git a/core/network/src/blocks.rs b/core/network/src/blocks.rs index d1e71ca68e..60c6886f09 100644 --- a/core/network/src/blocks.rs +++ b/core/network/src/blocks.rs @@ -20,7 +20,7 @@ use std::ops::Range; use std::collections::{HashMap, BTreeMap}; use std::collections::hash_map::Entry; use log::trace; -use network_libp2p::NodeIndex; +use network_libp2p::PeerId; use runtime_primitives::traits::{Block as BlockT, NumberFor, As}; use crate::message; @@ -32,7 +32,7 @@ pub struct BlockData { /// The Block Message from the wire pub block: message::BlockData, /// The peer, we received this from - pub origin: Option, + pub origin: Option, } #[derive(Debug)] @@ -58,7 +58,7 @@ impl BlockRangeState { pub struct BlockCollection { /// Downloaded blocks. blocks: BTreeMap, BlockRangeState>, - peer_requests: HashMap>, + peer_requests: HashMap>, } impl BlockCollection { @@ -77,7 +77,7 @@ impl BlockCollection { } /// Insert a set of blocks into collection. - pub fn insert(&mut self, start: NumberFor, blocks: Vec>, who: NodeIndex) { + pub fn insert(&mut self, start: NumberFor, blocks: Vec>, who: PeerId) { if blocks.is_empty() { return; } @@ -96,11 +96,11 @@ impl BlockCollection { } self.blocks.insert(start, BlockRangeState::Complete(blocks.into_iter() - .map(|b| BlockData { origin: Some(who), block: b }).collect())); + .map(|b| BlockData { origin: Some(who.clone()), block: b }).collect())); } /// Returns a set of block hashes that require a header download. The returned set is marked as being downloaded. - pub fn needed_blocks(&mut self, who: NodeIndex, count: usize, peer_best: NumberFor, common: NumberFor) -> Option>> { + pub fn needed_blocks(&mut self, who: PeerId, count: usize, peer_best: NumberFor, common: NumberFor) -> Option>> { // First block number that we need to download let first_different = common + As::sa(1); let count = As::sa(count as u64); @@ -166,8 +166,8 @@ impl BlockCollection { drained } - pub fn clear_peer_download(&mut self, who: NodeIndex) { - match self.peer_requests.entry(who) { + pub fn clear_peer_download(&mut self, who: &PeerId) { + match self.peer_requests.entry(who.clone()) { Entry::Occupied(entry) => { let start = entry.remove(); let remove = match self.blocks.get_mut(&start) { @@ -195,7 +195,7 @@ impl BlockCollection { #[cfg(test)] mod test { use super::{BlockCollection, BlockData, BlockRangeState}; - use crate::message; + use crate::{message, PeerId}; use runtime_primitives::testing::{Block as RawBlock, ExtrinsicWrapper}; use primitives::H256; @@ -221,7 +221,7 @@ mod test { fn create_clear() { let mut bc = BlockCollection::new(); assert!(is_empty(&bc)); - bc.insert(1, generate_blocks(100), 0); + bc.insert(1, generate_blocks(100), PeerId::random()); assert!(!is_empty(&bc)); bc.clear(); assert!(is_empty(&bc)); @@ -231,43 +231,43 @@ mod test { fn insert_blocks() { let mut bc = BlockCollection::new(); assert!(is_empty(&bc)); - let peer0 = 0; - let peer1 = 1; - let peer2 = 2; + let peer0 = PeerId::random(); + let peer1 = PeerId::random(); + let peer2 = PeerId::random(); let blocks = generate_blocks(150); - assert_eq!(bc.needed_blocks(peer0, 40, 150, 0), Some(1 .. 41)); - assert_eq!(bc.needed_blocks(peer1, 40, 150, 0), Some(41 .. 81)); - assert_eq!(bc.needed_blocks(peer2, 40, 150, 0), Some(81 .. 121)); + assert_eq!(bc.needed_blocks(peer0.clone(), 40, 150, 0), Some(1 .. 41)); + assert_eq!(bc.needed_blocks(peer1.clone(), 40, 150, 0), Some(41 .. 81)); + assert_eq!(bc.needed_blocks(peer2.clone(), 40, 150, 0), Some(81 .. 121)); - bc.clear_peer_download(peer1); - bc.insert(41, blocks[41..81].to_vec(), peer1); + bc.clear_peer_download(&peer1); + bc.insert(41, blocks[41..81].to_vec(), peer1.clone()); assert_eq!(bc.drain(1), vec![]); - assert_eq!(bc.needed_blocks(peer1, 40, 150, 0), Some(121 .. 151)); - bc.clear_peer_download(peer0); - bc.insert(1, blocks[1..11].to_vec(), peer0); + assert_eq!(bc.needed_blocks(peer1.clone(), 40, 150, 0), Some(121 .. 151)); + bc.clear_peer_download(&peer0); + bc.insert(1, blocks[1..11].to_vec(), peer0.clone()); - assert_eq!(bc.needed_blocks(peer0, 40, 150, 0), Some(11 .. 41)); - assert_eq!(bc.drain(1), blocks[1..11].iter().map(|b| BlockData { block: b.clone(), origin: Some(0) }).collect::>()); + assert_eq!(bc.needed_blocks(peer0.clone(), 40, 150, 0), Some(11 .. 41)); + assert_eq!(bc.drain(1), blocks[1..11].iter().map(|b| BlockData { block: b.clone(), origin: Some(peer0.clone()) }).collect::>()); - bc.clear_peer_download(peer0); - bc.insert(11, blocks[11..41].to_vec(), peer0); + bc.clear_peer_download(&peer0); + bc.insert(11, blocks[11..41].to_vec(), peer0.clone()); let drained = bc.drain(12); - assert_eq!(drained[..30], blocks[11..41].iter().map(|b| BlockData { block: b.clone(), origin: Some(0) }).collect::>()[..]); - assert_eq!(drained[30..], blocks[41..81].iter().map(|b| BlockData { block: b.clone(), origin: Some(1) }).collect::>()[..]); + assert_eq!(drained[..30], blocks[11..41].iter().map(|b| BlockData { block: b.clone(), origin: Some(peer0.clone()) }).collect::>()[..]); + assert_eq!(drained[30..], blocks[41..81].iter().map(|b| BlockData { block: b.clone(), origin: Some(peer1.clone()) }).collect::>()[..]); - bc.clear_peer_download(peer2); - assert_eq!(bc.needed_blocks(peer2, 40, 150, 80), Some(81 .. 121)); - bc.clear_peer_download(peer2); - bc.insert(81, blocks[81..121].to_vec(), peer2); - bc.clear_peer_download(peer1); - bc.insert(121, blocks[121..150].to_vec(), peer1); + bc.clear_peer_download(&peer2); + assert_eq!(bc.needed_blocks(peer2.clone(), 40, 150, 80), Some(81 .. 121)); + bc.clear_peer_download(&peer2); + bc.insert(81, blocks[81..121].to_vec(), peer2.clone()); + bc.clear_peer_download(&peer1); + bc.insert(121, blocks[121..150].to_vec(), peer1.clone()); assert_eq!(bc.drain(80), vec![]); let drained = bc.drain(81); - assert_eq!(drained[..40], blocks[81..121].iter().map(|b| BlockData { block: b.clone(), origin: Some(2) }).collect::>()[..]); - assert_eq!(drained[40..], blocks[121..150].iter().map(|b| BlockData { block: b.clone(), origin: Some(1) }).collect::>()[..]); + assert_eq!(drained[..40], blocks[81..121].iter().map(|b| BlockData { block: b.clone(), origin: Some(peer2.clone()) }).collect::>()[..]); + assert_eq!(drained[40..], blocks[121..150].iter().map(|b| BlockData { block: b.clone(), origin: Some(peer1.clone()) }).collect::>()[..]); } #[test] @@ -280,7 +280,8 @@ mod test { let blocks = generate_blocks(10).into_iter().map(|b| BlockData { block: b, origin: None }).collect(); bc.blocks.insert(114305, BlockRangeState::Complete(blocks)); - assert_eq!(bc.needed_blocks(0, 128, 10000, 000), Some(1 .. 100)); - assert_eq!(bc.needed_blocks(0, 128, 10000, 600), Some(100 + 128 .. 100 + 128 + 128)); + let peer0 = PeerId::random(); + assert_eq!(bc.needed_blocks(peer0.clone(), 128, 10000, 000), Some(1 .. 100)); + assert_eq!(bc.needed_blocks(peer0.clone(), 128, 10000, 600), Some(100 + 128 .. 100 + 128 + 128)); } } diff --git a/core/network/src/consensus_gossip.rs b/core/network/src/consensus_gossip.rs index 4d45f26143..3f6073f1d4 100644 --- a/core/network/src/consensus_gossip.rs +++ b/core/network/src/consensus_gossip.rs @@ -23,7 +23,7 @@ use log::{trace, debug}; use futures::sync::mpsc; use rand::{self, seq::SliceRandom}; use lru_cache::LruCache; -use network_libp2p::{Severity, NodeIndex}; +use network_libp2p::{Severity, PeerId}; use runtime_primitives::traits::{Block as BlockT, Hash, HashFor}; pub use crate::message::generic::{Message, ConsensusMessage}; use crate::protocol::Context; @@ -79,7 +79,7 @@ pub trait Validator { /// Consensus network protocol handler. Manages statements and candidate requests. pub struct ConsensusGossip { - peers: HashMap>, + peers: HashMap>, live_message_sinks: HashMap<(ConsensusEngineId, B::Hash), Vec>>>, messages: Vec>, known_messages: LruCache, @@ -109,7 +109,7 @@ impl ConsensusGossip { } /// Handle new connected peer. - pub fn new_peer(&mut self, protocol: &mut Context, who: NodeIndex, roles: Roles) { + pub fn new_peer(&mut self, protocol: &mut Context, who: PeerId, roles: Roles) { if roles.intersects(Roles::AUTHORITY) { trace!(target:"gossip", "Registering {:?} {}", roles, who); // Send out all known messages to authorities. @@ -118,7 +118,7 @@ impl ConsensusGossip { if let Status::Future = entry.status { continue } known_messages.insert(entry.message_hash); - protocol.send_message(who, Message::Consensus(entry.message.clone())); + protocol.send_message(who.clone(), Message::Consensus(entry.message.clone())); } self.peers.insert(who, PeerConsensus { known_messages, @@ -145,7 +145,7 @@ impl ConsensusGossip { let mut non_authorities: Vec<_> = self.peers.iter() .filter_map(|(id, ref peer)| if !peer.is_authority && (!peer.known_messages.contains(&message_hash) || force) { - Some(*id) + Some(id.clone()) } else { None } @@ -164,12 +164,12 @@ impl ConsensusGossip { if peer.known_messages.insert(message_hash.clone()) || force { let message = get_message(); trace!(target:"gossip", "Propagating to authority {}: {:?}", id, message); - protocol.send_message(*id, Message::Consensus(message)); + protocol.send_message(id.clone(), Message::Consensus(message)); } } else if non_authorities.contains(&id) { let message = get_message(); trace!(target:"gossip", "Propagating to {}: {:?}", id, message); - protocol.send_message(*id, Message::Consensus(message)); + protocol.send_message(id.clone(), Message::Consensus(message)); } } } @@ -194,7 +194,7 @@ impl ConsensusGossip { } /// Call when a peer has been disconnected to stop tracking gossip status. - pub fn peer_disconnected(&mut self, _protocol: &mut Context, who: NodeIndex) { + pub fn peer_disconnected(&mut self, _protocol: &mut Context, who: PeerId) { self.peers.remove(&who); } @@ -291,7 +291,7 @@ impl ConsensusGossip { pub fn on_incoming( &mut self, protocol: &mut Context, - who: NodeIndex, + who: PeerId, message: ConsensusMessage, ) -> Option<(B::Hash, ConsensusMessage)> { let message_hash = HashFor::::hash(&message.data[..]); @@ -325,7 +325,7 @@ impl ConsensusGossip { }, None => { protocol.report_peer( - who, + who.clone(), Severity::Useless(format!("Sent unknown consensus engine id")), ); trace!(target:"gossip", "Unknown message engine id {:?} from {}", diff --git a/core/network/src/lib.rs b/core/network/src/lib.rs index 296eaeb00c..0f184af773 100644 --- a/core/network/src/lib.rs +++ b/core/network/src/lib.rs @@ -43,7 +43,7 @@ pub use protocol::{ProtocolStatus, PeerInfo, Context}; pub use sync::{Status as SyncStatus, SyncState}; pub use network_libp2p::{ identity, multiaddr, - NodeIndex, ProtocolId, Severity, Multiaddr, + ProtocolId, Severity, Multiaddr, NetworkState, NetworkStatePeer, NetworkStateNotConnectedPeer, NetworkStatePeerEndpoint, NodeKeyConfig, Secret, Secp256k1Secret, Ed25519Secret, build_multiaddr, PeerId, PublicKey diff --git a/core/network/src/on_demand.rs b/core/network/src/on_demand.rs index f5505cd3aa..6a89014465 100644 --- a/core/network/src/on_demand.rs +++ b/core/network/src/on_demand.rs @@ -29,7 +29,7 @@ use client::{error::{Error as ClientError, ErrorKind as ClientErrorKind}}; use client::light::fetcher::{Fetcher, FetchChecker, RemoteHeaderRequest, RemoteCallRequest, RemoteReadRequest, RemoteChangesRequest, ChangesProof}; use crate::message; -use network_libp2p::{Severity, NodeIndex}; +use network_libp2p::{Severity, PeerId}; use crate::config::Roles; use crate::service::{NetworkChan, NetworkMsg}; use runtime_primitives::traits::{Block as BlockT, Header as HeaderT, NumberFor}; @@ -42,13 +42,13 @@ const RETRY_COUNT: usize = 1; /// On-demand service API. pub trait OnDemandService: Send + Sync { /// When new node is connected. - fn on_connect(&self, peer: NodeIndex, role: Roles, best_number: NumberFor); + fn on_connect(&self, peer: PeerId, role: Roles, best_number: NumberFor); /// When block is announced by the peer. - fn on_block_announce(&self, peer: NodeIndex, best_number: NumberFor); + fn on_block_announce(&self, peer: PeerId, best_number: NumberFor); /// When node is disconnected. - fn on_disconnect(&self, peer: NodeIndex); + fn on_disconnect(&self, peer: PeerId); /// Maintain peers requests. fn maintain_peers(&self); @@ -56,20 +56,20 @@ pub trait OnDemandService: Send + Sync { /// When header response is received from remote node. fn on_remote_header_response( &self, - peer: NodeIndex, + peer: PeerId, response: message::RemoteHeaderResponse ); /// When read response is received from remote node. - fn on_remote_read_response(&self, peer: NodeIndex, response: message::RemoteReadResponse); + fn on_remote_read_response(&self, peer: PeerId, response: message::RemoteReadResponse); /// When call response is received from remote node. - fn on_remote_call_response(&self, peer: NodeIndex, response: message::RemoteCallResponse); + fn on_remote_call_response(&self, peer: PeerId, response: message::RemoteCallResponse); /// When changes response is received from remote node. fn on_remote_changes_response( &self, - peer: NodeIndex, + peer: PeerId, response: message::RemoteChangesResponse, Block::Hash> ); } @@ -90,9 +90,9 @@ pub struct RemoteResponse { struct OnDemandCore { next_request_id: u64, pending_requests: VecDeque>, - active_peers: LinkedHashMap>, - idle_peers: VecDeque, - best_blocks: HashMap>, + active_peers: LinkedHashMap>, + idle_peers: VecDeque, + best_blocks: HashMap>, } struct Request { @@ -170,13 +170,13 @@ impl OnDemand where } /// Try to accept response from given peer. - fn accept_response) -> Accept>(&self, rtype: &str, peer: NodeIndex, request_id: u64, try_accept: F) { + fn accept_response) -> Accept>(&self, rtype: &str, peer: PeerId, request_id: u64, try_accept: F) { let mut core = self.core.lock(); - let request = match core.remove(peer, request_id) { + let request = match core.remove(peer.clone(), request_id) { Some(request) => request, None => { let reason = format!("Invalid remote {} response from peer", rtype); - self.send(NetworkMsg::ReportPeer(peer, Severity::Bad(reason))); + self.send(NetworkMsg::ReportPeer(peer.clone(), Severity::Bad(reason))); core.remove_peer(peer); return; }, @@ -187,7 +187,7 @@ impl OnDemand where Accept::Ok => (retry_count, None), Accept::CheckFailed(error, retry_request_data) => { let reason = format!("Failed to check remote {} response from peer: {}", rtype, error); - self.send(NetworkMsg::ReportPeer(peer, Severity::Bad(reason))); + self.send(NetworkMsg::ReportPeer(peer.clone(), Severity::Bad(reason))); core.remove_peer(peer); if retry_count > 0 { @@ -200,7 +200,7 @@ impl OnDemand where }, Accept::Unexpected(retry_request_data) => { let reason = format!("Unexpected response to remote {} from peer", rtype); - self.send(NetworkMsg::ReportPeer(peer, Severity::Bad(reason))); + self.send(NetworkMsg::ReportPeer(peer.clone(), Severity::Bad(reason))); core.remove_peer(peer); (retry_count, Some(retry_request_data)) @@ -219,7 +219,7 @@ impl OnDemandService for OnDemand where B: BlockT, B::Header: HeaderT, { - fn on_connect(&self, peer: NodeIndex, role: Roles, best_number: NumberFor) { + fn on_connect(&self, peer: PeerId, role: Roles, best_number: NumberFor) { if !role.intersects(Roles::FULL | Roles::AUTHORITY) { return; } @@ -229,13 +229,13 @@ impl OnDemandService for OnDemand where core.dispatch(self); } - fn on_block_announce(&self, peer: NodeIndex, best_number: NumberFor) { + fn on_block_announce(&self, peer: PeerId, best_number: NumberFor) { let mut core = self.core.lock(); core.update_peer(peer, best_number); core.dispatch(self); } - fn on_disconnect(&self, peer: NodeIndex) { + fn on_disconnect(&self, peer: PeerId) { let mut core = self.core.lock(); core.remove_peer(peer); core.dispatch(self); @@ -249,7 +249,7 @@ impl OnDemandService for OnDemand where core.dispatch(self); } - fn on_remote_header_response(&self, peer: NodeIndex, response: message::RemoteHeaderResponse) { + fn on_remote_header_response(&self, peer: PeerId, response: message::RemoteHeaderResponse) { self.accept_response("header", peer, response.id, |request| match request.data { RequestData::RemoteHeader(request, sender) => match self.checker.check_header_proof(&request, response.header, response.proof) { Ok(response) => { @@ -263,7 +263,7 @@ impl OnDemandService for OnDemand where }) } - fn on_remote_read_response(&self, peer: NodeIndex, response: message::RemoteReadResponse) { + fn on_remote_read_response(&self, peer: PeerId, response: message::RemoteReadResponse) { self.accept_response("read", peer, response.id, |request| match request.data { RequestData::RemoteRead(request, sender) => match self.checker.check_read_proof(&request, response.proof) { Ok(response) => { @@ -277,7 +277,7 @@ impl OnDemandService for OnDemand where }) } - fn on_remote_call_response(&self, peer: NodeIndex, response: message::RemoteCallResponse) { + fn on_remote_call_response(&self, peer: PeerId, response: message::RemoteCallResponse) { self.accept_response("call", peer, response.id, |request| match request.data { RequestData::RemoteCall(request, sender) => match self.checker.check_execution_proof(&request, response.proof) { Ok(response) => { @@ -291,7 +291,7 @@ impl OnDemandService for OnDemand where }) } - fn on_remote_changes_response(&self, peer: NodeIndex, response: message::RemoteChangesResponse, B::Hash>) { + fn on_remote_changes_response(&self, peer: PeerId, response: message::RemoteChangesResponse, B::Hash>) { self.accept_response("changes", peer, response.id, |request| match request.data { RequestData::RemoteChanges(request, sender) => match self.checker.check_changes_proof( &request, ChangesProof { @@ -350,16 +350,16 @@ impl OnDemandCore where B: BlockT, B::Header: HeaderT, { - pub fn add_peer(&mut self, peer: NodeIndex, best_number: NumberFor) { - self.idle_peers.push_back(peer); + pub fn add_peer(&mut self, peer: PeerId, best_number: NumberFor) { + self.idle_peers.push_back(peer.clone()); self.best_blocks.insert(peer, best_number); } - pub fn update_peer(&mut self, peer: NodeIndex, best_number: NumberFor) { + pub fn update_peer(&mut self, peer: PeerId, best_number: NumberFor) { self.best_blocks.insert(peer, best_number); } - pub fn remove_peer(&mut self, peer: NodeIndex) { + pub fn remove_peer(&mut self, peer: PeerId) { self.best_blocks.remove(&peer); if let Some(request) = self.active_peers.remove(&peer) { @@ -372,7 +372,7 @@ impl OnDemandCore where } } - pub fn maintain_peers(&mut self) -> Vec { + pub fn maintain_peers(&mut self) -> Vec { let now = Instant::now(); let mut bad_peers = Vec::new(); loop { @@ -399,8 +399,8 @@ impl OnDemandCore where }); } - pub fn remove(&mut self, peer: NodeIndex, id: u64) -> Option> { - match self.active_peers.entry(peer) { + pub fn remove(&mut self, peer: PeerId, id: u64) -> Option> { + match self.active_peers.entry(peer.clone()) { Entry::Occupied(entry) => match entry.get().id == id { true => { self.idle_peers.push_back(peer); @@ -441,7 +441,7 @@ impl OnDemandCore where if !can_be_processed_by_peer { // return peer to the back of the queue - self.idle_peers.push_back(peer); + self.idle_peers.push_back(peer.clone()); // we have enumerated all peers and noone can handle request if Some(peer) == last_peer { @@ -458,7 +458,7 @@ impl OnDemandCore where let mut request = self.pending_requests.pop_front().expect("checked in loop condition; qed"); request.timestamp = Instant::now(); trace!(target: "sync", "Dispatching remote request {} to peer {}", request.id, peer); - on_demand.send(NetworkMsg::Outgoing(peer, request.message())); + on_demand.send(NetworkMsg::Outgoing(peer.clone(), request.message())); self.active_peers.insert(peer, request); } @@ -532,7 +532,7 @@ pub mod tests { RemoteCallRequest, RemoteReadRequest, RemoteChangesRequest, ChangesProof}; use crate::config::Roles; use crate::message; - use network_libp2p::{NodeIndex, Severity}; + use network_libp2p::{PeerId, Severity}; use crate::service::{network_channel, NetworkPort, NetworkMsg}; use super::{REQUEST_TIMEOUT, OnDemand, OnDemandService}; use test_client::runtime::{changes_trie_config, Block, Header}; @@ -586,7 +586,7 @@ pub mod tests { core.idle_peers.len() + core.active_peers.len() } - fn receive_call_response(on_demand: &OnDemand, peer: NodeIndex, id: message::RequestId) { + fn receive_call_response(on_demand: &OnDemand, peer: PeerId, id: message::RequestId) { on_demand.on_remote_call_response(peer, message::RemoteCallResponse { id: id, proof: vec![vec![2]], @@ -621,22 +621,27 @@ pub mod tests { #[test] fn knows_about_peers_roles() { let (_, on_demand) = dummy(true); - on_demand.on_connect(0, Roles::LIGHT, 1000); - on_demand.on_connect(1, Roles::FULL, 2000); - on_demand.on_connect(2, Roles::AUTHORITY, 3000); - assert_eq!(vec![1, 2], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); - assert_eq!(on_demand.core.lock().best_blocks.get(&1), Some(&2000)); - assert_eq!(on_demand.core.lock().best_blocks.get(&2), Some(&3000)); + let peer0 = PeerId::random(); + let peer1 = PeerId::random(); + let peer2 = PeerId::random(); + on_demand.on_connect(peer0, Roles::LIGHT, 1000); + on_demand.on_connect(peer1.clone(), Roles::FULL, 2000); + on_demand.on_connect(peer2.clone(), Roles::AUTHORITY, 3000); + assert_eq!(vec![peer1.clone(), peer2.clone()], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); + assert_eq!(on_demand.core.lock().best_blocks.get(&peer1), Some(&2000)); + assert_eq!(on_demand.core.lock().best_blocks.get(&peer2), Some(&3000)); } #[test] fn disconnects_from_idle_peer() { + let peer0 = PeerId::random(); + let (_, on_demand) = dummy(true); - on_demand.on_connect(0, Roles::FULL, 100); + on_demand.on_connect(peer0.clone(), Roles::FULL, 100); assert_eq!(1, total_peers(&*on_demand)); assert!(!on_demand.core.lock().best_blocks.is_empty()); - on_demand.on_disconnect(0); + on_demand.on_disconnect(peer0); assert_eq!(0, total_peers(&*on_demand)); assert!(on_demand.core.lock().best_blocks.is_empty()); } @@ -645,10 +650,12 @@ pub mod tests { fn disconnects_from_timeouted_peer() { let (_x, on_demand) = dummy(true); let (network_sender, network_port) = network_channel(); + let peer0 = PeerId::random(); + let peer1 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(0, Roles::FULL, 1000); - on_demand.on_connect(1, Roles::FULL, 1000); - assert_eq!(vec![0, 1], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); + on_demand.on_connect(peer1.clone(), Roles::FULL, 1000); + assert_eq!(vec![peer0.clone(), peer1.clone()], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); assert!(on_demand.core.lock().active_peers.is_empty()); on_demand.remote_call(RemoteCallRequest { @@ -658,22 +665,23 @@ pub mod tests { call_data: vec![], retry_count: None, }); - assert_eq!(vec![1], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); - assert_eq!(vec![0], on_demand.core.lock().active_peers.keys().cloned().collect::>()); + assert_eq!(vec![peer1.clone()], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); + assert_eq!(vec![peer0.clone()], on_demand.core.lock().active_peers.keys().cloned().collect::>()); - on_demand.core.lock().active_peers[&0].timestamp = Instant::now() - REQUEST_TIMEOUT - REQUEST_TIMEOUT; + on_demand.core.lock().active_peers[&peer0].timestamp = Instant::now() - REQUEST_TIMEOUT - REQUEST_TIMEOUT; on_demand.maintain_peers(); assert!(on_demand.core.lock().idle_peers.is_empty()); - assert_eq!(vec![1], on_demand.core.lock().active_peers.keys().cloned().collect::>()); + assert_eq!(vec![peer1.clone()], on_demand.core.lock().active_peers.keys().cloned().collect::>()); assert_disconnected_peer(network_port, Severity::Timeout); } #[test] fn disconnects_from_peer_on_response_with_wrong_id() { let (_x, on_demand) = dummy(true); + let peer0 = PeerId::random(); let (network_sender, network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(0, Roles::FULL, 1000); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); on_demand.remote_call(RemoteCallRequest { block: Default::default(), @@ -682,7 +690,7 @@ pub mod tests { call_data: vec![], retry_count: None, }); - receive_call_response(&*on_demand, 0, 1); + receive_call_response(&*on_demand, peer0, 1); assert_disconnected_peer(network_port, Severity::Bad("Invalid remote call response from peer".to_string())); assert_eq!(on_demand.core.lock().pending_requests.len(), 1); } @@ -691,6 +699,7 @@ pub mod tests { fn disconnects_from_peer_on_incorrect_response() { let (_x, on_demand) = dummy(false); let (network_sender, network_port) = network_channel(); + let peer0 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); on_demand.remote_call(RemoteCallRequest { block: Default::default(), @@ -700,8 +709,8 @@ pub mod tests { retry_count: Some(1), }); - on_demand.on_connect(0, Roles::FULL, 1000); - receive_call_response(&*on_demand, 0, 0); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); + receive_call_response(&*on_demand, peer0.clone(), 0); assert_disconnected_peer(network_port, Severity::Bad("Failed to check remote call response from peer: Backend error: Test error".to_string())); assert_eq!(on_demand.core.lock().pending_requests.len(), 1); } @@ -710,19 +719,21 @@ pub mod tests { fn disconnects_from_peer_on_unexpected_response() { let (_x, on_demand) = dummy(true); let (network_sender, network_port) = network_channel(); + let peer0 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(0, Roles::FULL, 1000); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); - receive_call_response(&*on_demand, 0, 0); + receive_call_response(&*on_demand, peer0, 0); assert_disconnected_peer(network_port, Severity::Bad("Invalid remote call response from peer".to_string())); } #[test] fn disconnects_from_peer_on_wrong_response_type() { let (_x, on_demand) = dummy(false); + let peer0 = PeerId::random(); let (network_sender, network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(0, Roles::FULL, 1000); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); on_demand.remote_call(RemoteCallRequest { block: Default::default(), @@ -732,7 +743,7 @@ pub mod tests { retry_count: Some(1), }); - on_demand.on_remote_read_response(0, message::RemoteReadResponse { + on_demand.on_remote_read_response(peer0.clone(), message::RemoteReadResponse { id: 0, proof: vec![vec![2]], }); @@ -745,11 +756,12 @@ pub mod tests { use parking_lot::{Condvar, Mutex}; let retry_count = 2; + let peer_ids = (0 .. retry_count + 1).map(|_| PeerId::random()).collect::>(); let (_x, on_demand) = dummy(false); let (network_sender, _network_port) = network_channel(); on_demand.set_network_sender(network_sender.clone()); for i in 0..retry_count+1 { - on_demand.on_connect(i, Roles::FULL, 1000); + on_demand.on_connect(peer_ids[i].clone(), Roles::FULL, 1000); } let sync = Arc::new((Mutex::new(0), Mutex::new(0), Condvar::new())); @@ -773,7 +785,7 @@ pub mod tests { for i in 0..retry_count+1 { let mut current = current.lock(); *current = *current + 1; - receive_call_response(&*on_demand, i, i as u64); + receive_call_response(&*on_demand, peer_ids[i].clone(), i as u64); } let mut finished_at = finished_at.lock(); @@ -787,8 +799,9 @@ pub mod tests { fn receives_remote_call_response() { let (_x, on_demand) = dummy(true); let (network_sender, _network_port) = network_channel(); + let peer0 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(0, Roles::FULL, 1000); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); let response = on_demand.remote_call(RemoteCallRequest { block: Default::default(), @@ -802,7 +815,7 @@ pub mod tests { assert_eq!(result, vec![42]); }); - receive_call_response(&*on_demand, 0, 0); + receive_call_response(&*on_demand, peer0.clone(), 0); thread.join().unwrap(); } @@ -810,8 +823,9 @@ pub mod tests { fn receives_remote_read_response() { let (_x, on_demand) = dummy(true); let (network_sender, _network_port) = network_channel(); + let peer0 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(0, Roles::FULL, 1000); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); let response = on_demand.remote_read(RemoteReadRequest { header: dummy_header(), @@ -824,7 +838,7 @@ pub mod tests { assert_eq!(result, Some(vec![42])); }); - on_demand.on_remote_read_response(0, message::RemoteReadResponse { + on_demand.on_remote_read_response(peer0.clone(), message::RemoteReadResponse { id: 0, proof: vec![vec![2]], }); @@ -835,8 +849,9 @@ pub mod tests { fn receives_remote_header_response() { let (_x, on_demand) = dummy(true); let (network_sender, _network_port) = network_channel(); + let peer0 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(0, Roles::FULL, 1000); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); let response = on_demand.remote_header(RemoteHeaderRequest { cht_root: Default::default(), @@ -852,7 +867,7 @@ pub mod tests { ); }); - on_demand.on_remote_header_response(0, message::RemoteHeaderResponse { + on_demand.on_remote_header_response(peer0.clone(), message::RemoteHeaderResponse { id: 0, header: Some(Header { parent_hash: Default::default(), @@ -870,8 +885,9 @@ pub mod tests { fn receives_remote_changes_response() { let (_x, on_demand) = dummy(true); let (network_sender, _network_port) = network_channel(); + let peer0 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(0, Roles::FULL, 1000); + on_demand.on_connect(peer0.clone(), Roles::FULL, 1000); let response = on_demand.remote_changes(RemoteChangesRequest { changes_trie_config: changes_trie_config(), @@ -887,7 +903,7 @@ pub mod tests { assert_eq!(result, vec![(100, 2)]); }); - on_demand.on_remote_changes_response(0, message::RemoteChangesResponse { + on_demand.on_remote_changes_response(peer0.clone(), message::RemoteChangesResponse { id: 0, max: 1000, proof: vec![vec![2]], @@ -901,9 +917,11 @@ pub mod tests { fn does_not_sends_request_to_peer_who_has_no_required_block() { let (_x, on_demand) = dummy(true); let (network_sender, _network_port) = network_channel(); + let peer1 = PeerId::random(); + let peer2 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); - on_demand.on_connect(1, Roles::FULL, 100); + on_demand.on_connect(peer1.clone(), Roles::FULL, 100); on_demand.remote_header(RemoteHeaderRequest { cht_root: Default::default(), @@ -921,22 +939,22 @@ pub mod tests { retry_count: None, }); - on_demand.on_connect(2, Roles::FULL, 150); + on_demand.on_connect(peer2.clone(), Roles::FULL, 150); - assert_eq!(vec![1, 2], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); + assert_eq!(vec![peer1.clone(), peer2.clone()], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); assert_eq!(on_demand.core.lock().pending_requests.len(), 3); - on_demand.on_block_announce(1, 250); + on_demand.on_block_announce(peer1.clone(), 250); - assert_eq!(vec![2], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); + assert_eq!(vec![peer2.clone()], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); assert_eq!(on_demand.core.lock().pending_requests.len(), 2); - on_demand.on_block_announce(2, 250); + on_demand.on_block_announce(peer2.clone(), 250); assert!(!on_demand.core.lock().idle_peers.iter().any(|_| true)); assert_eq!(on_demand.core.lock().pending_requests.len(), 1); - on_demand.on_remote_header_response(1, message::RemoteHeaderResponse { + on_demand.on_remote_header_response(peer1.clone(), message::RemoteHeaderResponse { id: 0, header: Some(dummy_header()), proof: vec![], @@ -953,6 +971,9 @@ pub mod tests { // last peer was not updated let (_x, on_demand) = dummy(true); let (network_sender, _network_port) = network_channel(); + let peer1 = PeerId::random(); + let peer2 = PeerId::random(); + let peer3 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); on_demand.remote_header(RemoteHeaderRequest { @@ -966,11 +987,11 @@ pub mod tests { retry_count: None, }); - on_demand.on_connect(1, Roles::FULL, 200); - on_demand.on_connect(2, Roles::FULL, 200); - on_demand.on_connect(3, Roles::FULL, 250); + on_demand.on_connect(peer1.clone(), Roles::FULL, 200); + on_demand.on_connect(peer2.clone(), Roles::FULL, 200); + on_demand.on_connect(peer3.clone(), Roles::FULL, 250); - assert_eq!(vec![1, 2], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); + assert_eq!(vec![peer1.clone(), peer2.clone()], on_demand.core.lock().idle_peers.iter().cloned().collect::>()); assert_eq!(on_demand.core.lock().pending_requests.len(), 1); } @@ -978,6 +999,7 @@ pub mod tests { fn tries_to_send_all_pending_requests() { let (_x, on_demand) = dummy(true); let (network_sender, _network_port) = network_channel(); + let peer1 = PeerId::random(); on_demand.set_network_sender(network_sender.clone()); on_demand.remote_header(RemoteHeaderRequest { @@ -991,7 +1013,7 @@ pub mod tests { retry_count: None, }); - on_demand.on_connect(1, Roles::FULL, 250); + on_demand.on_connect(peer1.clone(), Roles::FULL, 250); assert!(on_demand.core.lock().idle_peers.iter().cloned().collect::>().is_empty()); assert_eq!(on_demand.core.lock().pending_requests.len(), 1); diff --git a/core/network/src/protocol.rs b/core/network/src/protocol.rs index d33e0d0af1..27e615e56f 100644 --- a/core/network/src/protocol.rs +++ b/core/network/src/protocol.rs @@ -17,7 +17,7 @@ use crossbeam_channel::{self as channel, Receiver, Sender, select}; use futures::sync::mpsc; use parking_lot::Mutex; -use network_libp2p::{NodeIndex, PeerId, Severity}; +use network_libp2p::{PeerId, Severity}; use primitives::storage::StorageKey; use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{As, Block as BlockT, Header as HeaderT, NumberFor, Zero}; @@ -75,10 +75,10 @@ pub struct Protocol, H: ExHashT> { consensus_gossip: ConsensusGossip, context_data: ContextData, // Connected peers pending Status message. - handshaking_peers: HashMap, + handshaking_peers: HashMap, // Connected peers from whom we received a Status message, // similar to context_data.peers but shared with the SyncProvider. - connected_peers: Arc>>>, + connected_peers: Arc>>>, transaction_pool: Arc>, } @@ -92,7 +92,6 @@ pub struct ConnectedPeer { /// and from whom we have not yet received a Status message. struct HandshakingPeer { timestamp: time::Instant, - peer_id: PeerId, } /// Syncing status and statistics @@ -125,8 +124,6 @@ struct Peer { /// Info about a peer's known state. #[derive(Clone, Debug)] pub struct PeerInfo { - /// Network id. - pub peer_id: PeerId, /// Roles pub roles: Roles, /// Protocol version @@ -143,13 +140,13 @@ pub trait Context { fn client(&self) -> &crate::chain::Client; /// Point out that a peer has been malign or irresponsible or appeared lazy. - fn report_peer(&mut self, who: NodeIndex, reason: Severity); + fn report_peer(&mut self, who: PeerId, reason: Severity); /// Get peer info. - fn peer_info(&self, peer: NodeIndex) -> Option>; + fn peer_info(&self, peer: &PeerId) -> Option>; /// Send a message to a peer. - fn send_message(&mut self, who: NodeIndex, data: crate::message::Message); + fn send_message(&mut self, who: PeerId, data: crate::message::Message); } /// Protocol context. @@ -165,16 +162,16 @@ impl<'a, B: BlockT + 'a, H: 'a + ExHashT> ProtocolContext<'a, B, H> { } impl<'a, B: BlockT + 'a, H: ExHashT + 'a> Context for ProtocolContext<'a, B, H> { - fn send_message(&mut self, who: NodeIndex, message: Message) { + fn send_message(&mut self, who: PeerId, message: Message) { send_message(&mut self.context_data.peers, &self.network_chan, who, message) } - fn report_peer(&mut self, who: NodeIndex, reason: Severity) { + fn report_peer(&mut self, who: PeerId, reason: Severity) { self.network_chan.send(NetworkMsg::ReportPeer(who, reason)) } - fn peer_info(&self, who: NodeIndex) -> Option> { - self.context_data.peers.get(&who).map(|p| p.info.clone()) + fn peer_info(&self, who: &PeerId) -> Option> { + self.context_data.peers.get(who).map(|p| p.info.clone()) } fn client(&self) -> &Client { @@ -185,7 +182,7 @@ impl<'a, B: BlockT + 'a, H: ExHashT + 'a> Context for ProtocolContext<'a, B, /// Data necessary to create a context. struct ContextData { // All connected peers - peers: HashMap>, + peers: HashMap>, pub chain: Arc>, } @@ -254,13 +251,13 @@ pub enum ProtocolMsg> { /// Messages sent to Protocol from Network-libp2p. pub enum FromNetworkMsg { /// A peer connected, with debug info. - PeerConnected(PeerId, NodeIndex, String), + PeerConnected(PeerId, String), /// A peer disconnected, with debug info. - PeerDisconnected(NodeIndex, String), + PeerDisconnected(PeerId, String), /// A custom message from another peer. - CustomMessage(NodeIndex, Message), + CustomMessage(PeerId, Message), /// Let protocol know a peer is currenlty clogged. - PeerClogged(NodeIndex, Option>), + PeerClogged(PeerId, Option>), } enum Incoming> { @@ -274,7 +271,7 @@ impl, H: ExHashT> Protocol { status_sinks: Arc>>>>, is_offline: Arc, is_major_syncing: Arc, - connected_peers: Arc>>>, + connected_peers: Arc>>>, network_chan: NetworkChan, config: ProtocolConfig, chain: Arc>, @@ -418,7 +415,7 @@ impl, H: ExHashT> Protocol { fn handle_network_msg(&mut self, msg: FromNetworkMsg) -> bool { match msg { FromNetworkMsg::PeerDisconnected(who, debug_info) => self.on_peer_disconnected(who, debug_info), - FromNetworkMsg::PeerConnected(peer_id, who, debug_info) => self.on_peer_connected(peer_id, who, debug_info), + FromNetworkMsg::PeerConnected(who, debug_info) => self.on_peer_connected(who, debug_info), FromNetworkMsg::PeerClogged(who, message) => self.on_clogged_peer(who, message), FromNetworkMsg::CustomMessage(who, message) => { self.on_custom_message(who, message) @@ -427,7 +424,7 @@ impl, H: ExHashT> Protocol { true } - fn handle_response(&mut self, who: NodeIndex, response: &message::BlockResponse) -> Option> { + fn handle_response(&mut self, who: PeerId, response: &message::BlockResponse) -> Option> { if let Some(ref mut peer) = self.context_data.peers.get_mut(&who) { if let Some(_) = peer.obsolete_requests.remove(&response.id) { trace!(target: "sync", "Ignoring obsolete block response packet from {} ({})", who, response.id,); @@ -445,14 +442,14 @@ impl, H: ExHashT> Protocol { None } - fn update_peer_info(&mut self, who: NodeIndex) { + fn update_peer_info(&mut self, who: &PeerId) { if let Some(info) = self.sync.peer_info(who) { - if let Some(ref mut peer) = self.context_data.peers.get_mut(&who) { + if let Some(ref mut peer) = self.context_data.peers.get_mut(who) { peer.info.best_hash = info.best_hash; peer.info.best_number = info.best_number; } let mut peers = self.connected_peers.write(); - if let Some(ref mut peer) = peers.get_mut(&who) { + if let Some(ref mut peer) = peers.get_mut(who) { peer.peer_info.best_hash = info.best_hash; peer.peer_info.best_number = info.best_number; } @@ -474,19 +471,19 @@ impl, H: ExHashT> Protocol { self.status_sinks.lock().retain(|sink| sink.unbounded_send(status.clone()).is_ok()); } - fn on_custom_message(&mut self, who: NodeIndex, message: Message) { + fn on_custom_message(&mut self, who: PeerId, message: Message) { match message { GenericMessage::Status(s) => self.on_status_message(who, s), GenericMessage::BlockRequest(r) => self.on_block_request(who, r), GenericMessage::BlockResponse(r) => { - if let Some(request) = self.handle_response(who, &r) { - self.on_block_response(who, request, r); - self.update_peer_info(who); + if let Some(request) = self.handle_response(who.clone(), &r) { + self.on_block_response(who.clone(), request, r); + self.update_peer_info(&who); } }, GenericMessage::BlockAnnounce(announce) => { - self.on_block_announce(who, announce); - self.update_peer_info(who); + self.on_block_announce(who.clone(), announce); + self.update_peer_info(&who); }, GenericMessage::Transactions(m) => self.on_extrinsics(who, m), GenericMessage::RemoteCallRequest(request) => self.on_remote_call_request(who, request), @@ -512,7 +509,7 @@ impl, H: ExHashT> Protocol { } } - fn send_message(&mut self, who: NodeIndex, message: Message) { + fn send_message(&mut self, who: PeerId, message: Message) { send_message::( &mut self.context_data.peers, &self.network_chan, @@ -537,14 +534,14 @@ impl, H: ExHashT> Protocol { } /// Called when a new peer is connected - fn on_peer_connected(&mut self, peer_id: PeerId, who: NodeIndex, debug_info: String) { + fn on_peer_connected(&mut self, who: PeerId, debug_info: String) { trace!(target: "sync", "Connecting {}: {}", who, debug_info); - self.handshaking_peers.insert(who, HandshakingPeer { timestamp: time::Instant::now(), peer_id }); + self.handshaking_peers.insert(who.clone(), HandshakingPeer { timestamp: time::Instant::now() }); self.send_status(who); } /// Called by peer when it is disconnecting - fn on_peer_disconnected(&mut self, peer: NodeIndex, debug_info: String) { + fn on_peer_disconnected(&mut self, peer: PeerId, debug_info: String) { trace!(target: "sync", "Disconnecting {}: {}", peer, debug_info); // lock all the the peer lists so that add/remove peer events are in order let removed = { @@ -554,16 +551,16 @@ impl, H: ExHashT> Protocol { }; if removed { let mut context = ProtocolContext::new(&mut self.context_data, &self.network_chan); - self.consensus_gossip.peer_disconnected(&mut context, peer); - self.sync.peer_disconnected(&mut context, peer); - self.specialization.on_disconnect(&mut context, peer); + self.consensus_gossip.peer_disconnected(&mut context, peer.clone()); + self.sync.peer_disconnected(&mut context, peer.clone()); + self.specialization.on_disconnect(&mut context, peer.clone()); self.on_demand.as_ref().map(|s| s.on_disconnect(peer)); } } /// Called as a back-pressure mechanism if the networking detects that the peer cannot process /// our messaging rate fast enough. - pub fn on_clogged_peer(&self, who: NodeIndex, _msg: Option>) { + pub fn on_clogged_peer(&self, who: PeerId, _msg: Option>) { // We don't do anything but print some diagnostics for now. if let Some(peer) = self.context_data.peers.get(&who) { debug!(target: "sync", "Clogged peer {} (protocol_version: {:?}; roles: {:?}; \ @@ -575,7 +572,7 @@ impl, H: ExHashT> Protocol { } } - fn on_block_request(&mut self, peer: NodeIndex, request: message::BlockRequest) { + fn on_block_request(&mut self, peer: PeerId, request: message::BlockRequest) { trace!(target: "sync", "BlockRequest {} from {}: from {:?} to {:?} max {:?}", request.id, peer, @@ -641,7 +638,7 @@ impl, H: ExHashT> Protocol { fn on_block_response( &mut self, - peer: NodeIndex, + peer: PeerId, request: message::BlockRequest, response: message::BlockResponse, ) { @@ -687,15 +684,15 @@ impl, H: ExHashT> Protocol { for (who, peer) in self.context_data.peers.iter() { if peer.block_request.as_ref().map_or(false, |(t, _)| (tick - *t).as_secs() > REQUEST_TIMEOUT_SEC) { trace!(target: "sync", "Reqeust timeout {}", who); - aborting.push(*who); + aborting.push(who.clone()); } else if peer.obsolete_requests.values().any(|t| (tick - *t).as_secs() > REQUEST_TIMEOUT_SEC) { trace!(target: "sync", "Obsolete timeout {}", who); - aborting.push(*who); + aborting.push(who.clone()); } } for (who, _) in self.handshaking_peers.iter().filter(|(_, handshaking)| (tick - handshaking.timestamp).as_secs() > REQUEST_TIMEOUT_SEC) { trace!(target: "sync", "Handshake timeout {}", who); - aborting.push(*who); + aborting.push(who.clone()); } } @@ -708,7 +705,7 @@ impl, H: ExHashT> Protocol { } /// Called by peer to report status - fn on_status_message(&mut self, who: NodeIndex, status: message::Status) { + fn on_status_message(&mut self, who: PeerId, status: message::Status) { trace!(target: "sync", "New peer {} {:?}", who, status); { if self.context_data.peers.contains_key(&who) { @@ -761,9 +758,8 @@ impl, H: ExHashT> Protocol { let cache_limit = NonZeroUsize::new(1_000_000).expect("1_000_000 > 0; qed"); let info = match self.handshaking_peers.remove(&who) { - Some(handshaking) => { + Some(_handshaking) => { let peer_info = PeerInfo { - peer_id: handshaking.peer_id, protocol_version: status.version, roles: status.roles, best_hash: status.best_hash, @@ -771,7 +767,7 @@ impl, H: ExHashT> Protocol { }; self.connected_peers .write() - .insert(who, ConnectedPeer { peer_info: peer_info.clone() }); + .insert(who.clone(), ConnectedPeer { peer_info: peer_info.clone() }); peer_info }, None => { @@ -796,15 +792,15 @@ impl, H: ExHashT> Protocol { let mut context = ProtocolContext::new(&mut self.context_data, &self.network_chan); self.on_demand .as_ref() - .map(|s| s.on_connect(who, status.roles, status.best_number)); - self.sync.new_peer(&mut context, who); + .map(|s| s.on_connect(who.clone(), status.roles, status.best_number)); + self.sync.new_peer(&mut context, who.clone()); self.consensus_gossip - .new_peer(&mut context, who, status.roles); + .new_peer(&mut context, who.clone(), status.roles); self.specialization.on_connect(&mut context, who, status); } /// Called when peer sends us new extrinsics - fn on_extrinsics(&mut self, who: NodeIndex, extrinsics: message::Transactions) { + fn on_extrinsics(&mut self, who: PeerId, extrinsics: message::Transactions) { // Accept extrinsics only when fully synced if self.sync.status().state != SyncState::Idle { trace!(target: "sync", "{} Ignoring extrinsics while syncing", who); @@ -845,10 +841,10 @@ impl, H: ExHashT> Protocol { propagated_to .entry(hash) .or_insert_with(Vec::new) - .push(peer.info.peer_id.to_base58()); + .push(who.to_base58()); } trace!(target: "sync", "Sending {} transactions to {}", to_send.len(), who); - self.network_chan.send(NetworkMsg::Outgoing(*who, GenericMessage::Transactions(to_send))) + self.network_chan.send(NetworkMsg::Outgoing(who.clone(), GenericMessage::Transactions(to_send))) } } self.transaction_pool.on_broadcasted(propagated_to); @@ -877,12 +873,12 @@ impl, H: ExHashT> Protocol { for (who, ref mut peer) in self.context_data.peers.iter_mut() { trace!(target: "sync", "Reannouncing block {:?} to {}", hash, who); peer.known_blocks.insert(hash); - self.network_chan.send(NetworkMsg::Outgoing(*who, message.clone())) + self.network_chan.send(NetworkMsg::Outgoing(who.clone(), message.clone())) } } /// Send Status message - fn send_status(&mut self, who: NodeIndex) { + fn send_status(&mut self, who: PeerId) { if let Ok(info) = self.context_data.chain.info() { let status = message::generic::Status { version: CURRENT_VERSION, @@ -913,7 +909,7 @@ impl, H: ExHashT> Protocol { self.abort(); } - fn on_block_announce(&mut self, who: NodeIndex, announce: message::BlockAnnounce) { + fn on_block_announce(&mut self, who: PeerId, announce: message::BlockAnnounce) { let header = announce.header; let hash = header.hash(); { @@ -923,7 +919,7 @@ impl, H: ExHashT> Protocol { } self.on_demand .as_ref() - .map(|s| s.on_block_announce(who, *header.number())); + .map(|s| s.on_block_announce(who.clone(), *header.number())); self.sync.on_block_announce( &mut ProtocolContext::new(&mut self.context_data, &self.network_chan), who, @@ -952,7 +948,7 @@ impl, H: ExHashT> Protocol { for (who, ref mut peer) in self.context_data.peers.iter_mut() { if peer.known_blocks.insert(hash.clone()) { trace!(target: "sync", "Announcing block {:?} to {}", hash, who); - self.network_chan.send(NetworkMsg::Outgoing(*who, message.clone())) + self.network_chan.send(NetworkMsg::Outgoing(who.clone(), message.clone())) } } } @@ -967,7 +963,7 @@ impl, H: ExHashT> Protocol { fn on_remote_call_request( &mut self, - who: NodeIndex, + who: PeerId, request: message::RemoteCallRequest, ) { trace!(target: "sync", "Remote call request {} from {} ({} at {})", request.id, who, request.method, request.block); @@ -993,7 +989,7 @@ impl, H: ExHashT> Protocol { ); } - fn on_remote_call_response(&mut self, who: NodeIndex, response: message::RemoteCallResponse) { + fn on_remote_call_response(&mut self, who: PeerId, response: message::RemoteCallResponse) { trace!(target: "sync", "Remote call response {} from {}", response.id, who); self.on_demand .as_ref() @@ -1002,7 +998,7 @@ impl, H: ExHashT> Protocol { fn on_remote_read_request( &mut self, - who: NodeIndex, + who: PeerId, request: message::RemoteReadRequest, ) { trace!(target: "sync", "Remote read request {} from {} ({} at {})", @@ -1023,7 +1019,7 @@ impl, H: ExHashT> Protocol { }), ); } - fn on_remote_read_response(&mut self, who: NodeIndex, response: message::RemoteReadResponse) { + fn on_remote_read_response(&mut self, who: PeerId, response: message::RemoteReadResponse) { trace!(target: "sync", "Remote read response {} from {}", response.id, who); self.on_demand .as_ref() @@ -1032,7 +1028,7 @@ impl, H: ExHashT> Protocol { fn on_remote_header_request( &mut self, - who: NodeIndex, + who: PeerId, request: message::RemoteHeaderRequest>, ) { trace!(target: "sync", "Remote header proof request {} from {} ({})", @@ -1057,7 +1053,7 @@ impl, H: ExHashT> Protocol { fn on_remote_header_response( &mut self, - who: NodeIndex, + who: PeerId, response: message::RemoteHeaderResponse, ) { trace!(target: "sync", "Remote header proof response {} from {}", response.id, who); @@ -1068,7 +1064,7 @@ impl, H: ExHashT> Protocol { fn on_remote_changes_request( &mut self, - who: NodeIndex, + who: PeerId, request: message::RemoteChangesRequest, ) { trace!(target: "sync", "Remote changes proof request {} from {} for key {} ({}..{})", @@ -1101,7 +1097,7 @@ impl, H: ExHashT> Protocol { fn on_remote_changes_response( &mut self, - who: NodeIndex, + who: PeerId, response: message::RemoteChangesResponse, B::Hash>, ) { trace!(target: "sync", "Remote changes proof response {} from {} (max={})", @@ -1113,9 +1109,9 @@ impl, H: ExHashT> Protocol { } fn send_message( - peers: &mut HashMap>, + peers: &mut HashMap>, network_chan: &NetworkChan, - who: NodeIndex, + who: PeerId, mut message: Message, ) { if let GenericMessage::BlockRequest(ref mut r) = message { @@ -1192,20 +1188,20 @@ macro_rules! construct_simple_protocol { fn on_connect( &mut self, _ctx: &mut $crate::Context<$block>, - _who: $crate::NodeIndex, + _who: $crate::PeerId, _status: $crate::StatusMessage<$block> ) { $( self.$sub_protocol_name.on_connect(_ctx, _who, _status); )* } - fn on_disconnect(&mut self, _ctx: &mut $crate::Context<$block>, _who: $crate::NodeIndex) { + fn on_disconnect(&mut self, _ctx: &mut $crate::Context<$block>, _who: $crate::PeerId) { $( self.$sub_protocol_name.on_disconnect(_ctx, _who); )* } fn on_message( &mut self, _ctx: &mut $crate::Context<$block>, - _who: $crate::NodeIndex, + _who: $crate::PeerId, _message: &mut Option<$crate::message::Message<$block>> ) { $( self.$sub_protocol_name.on_message(_ctx, _who, _message); )* diff --git a/core/network/src/service.rs b/core/network/src/service.rs index e55db474ee..643fd3bbe7 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -21,7 +21,7 @@ use std::{io, thread}; use log::{warn, debug, error, trace, info}; use futures::{Async, Future, Stream, stream, sync::oneshot, sync::mpsc}; use parking_lot::{Mutex, RwLock}; -use network_libp2p::{ProtocolId, NetworkConfiguration, NodeIndex, Severity}; +use network_libp2p::{ProtocolId, NetworkConfiguration, Severity}; use network_libp2p::{start_service, parse_str_addr, Service as NetworkService, ServiceEvent as NetworkServiceEvent}; use network_libp2p::{multiaddr, RegisteredProtocol, NetworkState}; use peerset::Peerset; @@ -51,7 +51,7 @@ pub trait SyncProvider: Send + Sync { /// Get network state. fn network_state(&self) -> NetworkState; /// Get currently connected peers - fn peers(&self) -> Vec<(NodeIndex, PeerInfo)>; + fn peers(&self) -> Vec<(PeerId, PeerInfo)>; /// Are we in the process of downloading the chain? fn is_major_syncing(&self) -> bool; } @@ -94,7 +94,7 @@ impl> Link for NetworkLink { let _ = self.protocol_sender.send(ProtocolMsg::BlocksProcessed(processed_blocks, has_error)); } - fn justification_imported(&self, who: NodeIndex, hash: &B::Hash, number: NumberFor, success: bool) { + fn justification_imported(&self, who: PeerId, hash: &B::Hash, number: NumberFor, success: bool) { let _ = self.protocol_sender.send(ProtocolMsg::JustificationImportResult(hash.clone(), number, success)); if !success { let reason = Severity::Bad(format!("Invalid justification provided for #{}", hash).to_string()); @@ -110,12 +110,12 @@ impl> Link for NetworkLink { let _ = self.protocol_sender.send(ProtocolMsg::RequestJustification(hash.clone(), number)); } - fn useless_peer(&self, who: NodeIndex, reason: &str) { + fn useless_peer(&self, who: PeerId, reason: &str) { trace!(target:"sync", "Useless peer {}, {}", who, reason); self.network_sender.send(NetworkMsg::ReportPeer(who, Severity::Useless(reason.to_string()))); } - fn note_useless_and_restart_sync(&self, who: NodeIndex, reason: &str) { + fn note_useless_and_restart_sync(&self, who: PeerId, reason: &str) { trace!(target:"sync", "Bad peer {}, {}", who, reason); // is this actually malign or just useless? self.network_sender.send(NetworkMsg::ReportPeer(who, Severity::Useless(reason.to_string()))); @@ -136,7 +136,7 @@ pub struct Service> { /// Are we actively catching up with the chain? is_major_syncing: Arc, /// Peers whom we are connected with. - peers: Arc>>>, + peers: Arc>>>, /// Network service network: Arc>>>, /// Peerset manager (PSM); manages the reputation of nodes and indicates the network which @@ -162,7 +162,7 @@ impl> Service { // Start in off-line mode, since we're not connected to any nodes yet. let is_offline = Arc::new(AtomicBool::new(true)); let is_major_syncing = Arc::new(AtomicBool::new(false)); - let peers: Arc>>> = Arc::new(Default::default()); + let peers: Arc>>> = Arc::new(Default::default()); let (protocol_sender, network_to_protocol_sender) = Protocol::new( status_sinks.clone(), is_offline.clone(), @@ -326,7 +326,7 @@ impl> SyncProvider for Servi self.network.lock().state() } - fn peers(&self) -> Vec<(NodeIndex, PeerInfo)> { + fn peers(&self) -> Vec<(PeerId, PeerInfo)> { let peers = (*self.peers.read()).clone(); peers.into_iter().map(|(idx, connected)| (idx, connected.peer_info)).collect() } @@ -458,12 +458,10 @@ impl NetworkPort { /// Messages to be handled by NetworkService. #[derive(Debug)] pub enum NetworkMsg { - /// Ask network to convert a list of nodes, to a list of peers. - PeerIds(Vec, Sender)>>), /// Send an outgoing custom message. - Outgoing(NodeIndex, Message), + Outgoing(PeerId, Message), /// Report a peer. - ReportPeer(NodeIndex, Severity), + ReportPeer(PeerId, Severity), } /// Starts the background thread that handles the networking. @@ -521,16 +519,10 @@ fn run_thread( }).for_each(move |msg| { // Handle message from Protocol. match msg { - NetworkMsg::PeerIds(node_idxs, sender) => { - let reply = node_idxs.into_iter().map(|idx| { - (idx, network_service_2.lock().peer_id_of_node(idx).map(|p| p.clone())) - }).collect::>(); - let _ = sender.send(reply); - } NetworkMsg::Outgoing(who, outgoing_message) => { network_service_2 .lock() - .send_custom_message(who, outgoing_message); + .send_custom_message(&who, outgoing_message); }, NetworkMsg::ReportPeer(who, severity) => { match severity { @@ -538,15 +530,15 @@ fn run_thread( info!(target: "sync", "Banning {:?} because {:?}", who, message); warn!(target: "sync", "Banning a node is a deprecated mechanism that \ should be removed"); - network_service_2.lock().drop_node(who) + network_service_2.lock().drop_node(&who) }, Severity::Useless(message) => { info!(target: "sync", "Dropping {:?} because {:?}", who, message); - network_service_2.lock().drop_node(who) + network_service_2.lock().drop_node(&who) }, Severity::Timeout => { info!(target: "sync", "Dropping {:?} because it timed out", who); - network_service_2.lock().drop_node(who) + network_service_2.lock().drop_node(&who) }, } }, @@ -564,22 +556,22 @@ fn run_thread( // The network service produces events about what happens on the network. Let's process them. let network = stream::poll_fn(move || network_service.lock().poll()).for_each(move |event| { match event { - NetworkServiceEvent::OpenedCustomProtocol { peer_id, node_index, version, debug_info, .. } => { + NetworkServiceEvent::OpenedCustomProtocol { peer_id, version, debug_info, .. } => { debug_assert_eq!(version, protocol::CURRENT_VERSION as u8); - let _ = protocol_sender.send(FromNetworkMsg::PeerConnected(peer_id, node_index, debug_info)); + let _ = protocol_sender.send(FromNetworkMsg::PeerConnected(peer_id, debug_info)); } - NetworkServiceEvent::ClosedCustomProtocol { node_index, debug_info, .. } => { - let _ = protocol_sender.send(FromNetworkMsg::PeerDisconnected(node_index, debug_info)); + NetworkServiceEvent::ClosedCustomProtocol { peer_id, debug_info, .. } => { + let _ = protocol_sender.send(FromNetworkMsg::PeerDisconnected(peer_id, debug_info)); } - NetworkServiceEvent::CustomMessage { node_index, message, .. } => { - let _ = protocol_sender.send(FromNetworkMsg::CustomMessage(node_index, message)); + NetworkServiceEvent::CustomMessage { peer_id, message, .. } => { + let _ = protocol_sender.send(FromNetworkMsg::CustomMessage(peer_id, message)); return Ok(()) } - NetworkServiceEvent::Clogged { node_index, messages, .. } => { + NetworkServiceEvent::Clogged { peer_id, messages, .. } => { debug!(target: "sync", "{} clogging messages:", messages.len()); for msg in messages.into_iter().take(5) { debug!(target: "sync", "{:?}", msg); - let _ = protocol_sender.send(FromNetworkMsg::PeerClogged(node_index, Some(msg))); + let _ = protocol_sender.send(FromNetworkMsg::PeerClogged(peer_id.clone(), Some(msg))); } } }; diff --git a/core/network/src/specialization.rs b/core/network/src/specialization.rs index 3a772f1f3a..e440097dd1 100644 --- a/core/network/src/specialization.rs +++ b/core/network/src/specialization.rs @@ -16,7 +16,7 @@ //! Specializations of the substrate network protocol to allow more complex forms of communication. -use crate::NodeIndex; +use crate::PeerId; use runtime_primitives::traits::Block as BlockT; use crate::protocol::Context; @@ -26,13 +26,13 @@ pub trait NetworkSpecialization: Send + Sync + 'static { fn status(&self) -> Vec; /// Called when a peer successfully handshakes. - fn on_connect(&mut self, ctx: &mut Context, who: NodeIndex, status: crate::message::Status); + fn on_connect(&mut self, ctx: &mut Context, who: PeerId, status: crate::message::Status); /// Called when a peer is disconnected. If the peer ID is unknown, it should be ignored. - fn on_disconnect(&mut self, ctx: &mut Context, who: NodeIndex); + fn on_disconnect(&mut self, ctx: &mut Context, who: PeerId); /// Called when a network-specific message arrives. - fn on_message(&mut self, ctx: &mut Context, who: NodeIndex, message: &mut Option>); + fn on_message(&mut self, ctx: &mut Context, who: PeerId, message: &mut Option>); /// Called on abort. fn on_abort(&mut self) { } diff --git a/core/network/src/sync.rs b/core/network/src/sync.rs index f1464cbed9..80ff8221a1 100644 --- a/core/network/src/sync.rs +++ b/core/network/src/sync.rs @@ -20,7 +20,7 @@ use std::time::{Duration, Instant}; use log::{debug, trace, warn}; use crate::protocol::Context; use fork_tree::ForkTree; -use network_libp2p::{Severity, NodeIndex}; +use network_libp2p::{Severity, PeerId}; use client::{BlockStatus, ClientInfo}; use consensus::BlockOrigin; use consensus::import_queue::{ImportQueue, IncomingBlock}; @@ -96,8 +96,8 @@ type PendingJustification = (::Hash, NumberFor); struct PendingJustifications { justifications: ForkTree, ()>, pending_requests: VecDeque>, - peer_requests: HashMap>, - previous_requests: HashMap, Vec<(NodeIndex, Instant)>>, + peer_requests: HashMap>, + previous_requests: HashMap, Vec<(PeerId, Instant)>>, importing_requests: HashSet>, } @@ -117,7 +117,7 @@ impl PendingJustifications { /// justification request for block #10 to a peer at block #2), and we also /// throttle requests to the same peer if a previous justification request /// yielded no results. - fn dispatch(&mut self, peers: &mut HashMap>, protocol: &mut Context) { + fn dispatch(&mut self, peers: &mut HashMap>, protocol: &mut Context) { if self.pending_requests.is_empty() { return; } @@ -134,11 +134,11 @@ impl PendingJustifications { if sync.state != PeerSyncState::Available || self.peer_requests.contains_key(&peer) { None } else { - Some((*peer, sync.best_number)) + Some((peer.clone(), sync.best_number)) } }).collect::>(); - let mut last_peer = available_peers.back().map(|p| p.0); + let mut last_peer = available_peers.back().map(|p| p.0.clone()); let mut unhandled_requests = VecDeque::new(); loop { @@ -164,11 +164,11 @@ impl PendingJustifications { }; if !peer_eligible { - available_peers.push_back((peer, peer_best_number)); + available_peers.push_back((peer.clone(), peer_best_number)); // we tried all peers and none can answer this request if Some(peer) == last_peer { - last_peer = available_peers.back().map(|p| p.0); + last_peer = available_peers.back().map(|p| p.0.clone()); let request = self.pending_requests.pop_front() .expect("verified to be Some in the beginning of the loop; qed"); @@ -179,12 +179,12 @@ impl PendingJustifications { continue; } - last_peer = available_peers.back().map(|p| p.0); + last_peer = available_peers.back().map(|p| p.0.clone()); let request = self.pending_requests.pop_front() .expect("verified to be Some in the beginning of the loop; qed"); - self.peer_requests.insert(peer, request); + self.peer_requests.insert(peer.clone(), request); peers.get_mut(&peer) .expect("peer was is taken from available_peers; available_peers is a subset of peers; qed") @@ -235,7 +235,7 @@ impl PendingJustifications { } /// Retry any pending request if a peer disconnected. - fn peer_disconnected(&mut self, who: NodeIndex) { + fn peer_disconnected(&mut self, who: PeerId) { if let Some(request) = self.peer_requests.remove(&who) { self.pending_requests.push_front(request); } @@ -281,7 +281,7 @@ impl PendingJustifications { /// was `None`. fn on_response( &mut self, - who: NodeIndex, + who: PeerId, justification: Option, import_queue: &ImportQueue, ) { @@ -343,7 +343,7 @@ impl PendingJustifications { /// Relay chain sync strategy. pub struct ChainSync { genesis_hash: B::Hash, - peers: HashMap>, + peers: HashMap>, blocks: BlockCollection, best_queued_number: NumberFor, best_queued_hash: B::Hash, @@ -436,8 +436,8 @@ impl ChainSync { } /// Returns peer sync status (if any). - pub(crate) fn peer_info(&self, who: NodeIndex) -> Option> { - self.peers.get(&who).map(|peer| { + pub(crate) fn peer_info(&self, who: &PeerId) -> Option> { + self.peers.get(who).map(|peer| { PeerInfo { best_hash: peer.best_hash, best_number: peer.best_number, @@ -457,7 +457,7 @@ impl ChainSync { } /// Handle new connected peer. - pub(crate) fn new_peer(&mut self, protocol: &mut Context, who: NodeIndex) { + pub(crate) fn new_peer(&mut self, protocol: &mut Context, who: PeerId) { // Initialize some variables to determine if // is_offline or is_major_syncing should be updated // after processing this new peer. @@ -465,7 +465,7 @@ impl ChainSync { let previous_best_seen = self.best_seen_block(); let previous_state = self.state(&previous_best_seen); - if let Some(info) = protocol.peer_info(who) { + if let Some(info) = protocol.peer_info(&who) { let status = block_status(&*protocol.client(), &self.queue_blocks, info.best_hash); match (status, info.best_number) { (Err(e), _) => { @@ -497,7 +497,7 @@ impl ChainSync { if our_best > As::sa(0) { let common_best = ::std::cmp::min(our_best, info.best_number); debug!(target:"sync", "New peer with unknown best hash {} ({}), searching for common ancestor.", info.best_hash, info.best_number); - self.peers.insert(who, PeerSync { + self.peers.insert(who.clone(), PeerSync { common_number: As::sa(0), best_hash: info.best_hash, best_number: info.best_number, @@ -508,7 +508,7 @@ impl ChainSync { } else { // We are at genesis, just start downloading debug!(target:"sync", "New peer with best hash {} ({}).", info.best_hash, info.best_number); - self.peers.insert(who, PeerSync { + self.peers.insert(who.clone(), PeerSync { common_number: As::sa(0), best_hash: info.best_hash, best_number: info.best_number, @@ -520,7 +520,7 @@ impl ChainSync { }, (Ok(BlockStatus::Queued), _) | (Ok(BlockStatus::InChainWithState), _) | (Ok(BlockStatus::InChainPruned), _) => { debug!(target:"sync", "New peer with known best hash {} ({}).", info.best_hash, info.best_number); - self.peers.insert(who, PeerSync { + self.peers.insert(who.clone(), PeerSync { common_number: info.best_number, best_hash: info.best_hash, best_number: info.best_number, @@ -590,7 +590,7 @@ impl ChainSync { pub(crate) fn on_block_data( &mut self, protocol: &mut Context, - who: NodeIndex, + who: PeerId, request: message::BlockRequest, response: message::BlockResponse ) { @@ -603,7 +603,7 @@ impl ChainSync { let peer_state = peer.state.clone(); match peer_state { PeerSyncState::DownloadingNew(start_block) => { - self.blocks.clear_peer_download(who); + self.blocks.clear_peer_download(&who); peer.state = PeerSyncState::Available; self.blocks.insert(start_block, blocks, who); self.blocks @@ -627,7 +627,7 @@ impl ChainSync { header: b.header, body: b.body, justification: b.justification, - origin: Some(who), + origin: Some(who.clone()), } }).collect() }, @@ -698,7 +698,7 @@ impl ChainSync { pub(crate) fn on_block_justification_data( &mut self, protocol: &mut Context, - who: NodeIndex, + who: PeerId, _request: message::BlockRequest, response: message::BlockResponse, ) { @@ -757,7 +757,7 @@ impl ChainSync { if self.is_stopping.load(Ordering::SeqCst) { return } - let peers: Vec = self.peers.keys().map(|p| *p).collect(); + let peers: Vec = self.peers.keys().map(|p| p.clone()).collect(); for peer in peers { self.download_new(protocol, peer); } @@ -846,7 +846,7 @@ impl ChainSync { } /// Handle new block announcement. - pub(crate) fn on_block_announce(&mut self, protocol: &mut Context, who: NodeIndex, hash: B::Hash, header: &B::Header) { + pub(crate) fn on_block_announce(&mut self, protocol: &mut Context, who: PeerId, hash: B::Hash, header: &B::Header) { let number = *header.number(); if number <= As::sa(0) { trace!(target: "sync", "Ignored invalid block announcement from {}: {}", who, hash); @@ -921,10 +921,10 @@ impl ChainSync { } /// Handle disconnected peer. - pub(crate) fn peer_disconnected(&mut self, protocol: &mut Context, who: NodeIndex) { + pub(crate) fn peer_disconnected(&mut self, protocol: &mut Context, who: PeerId) { let previous_best_seen = self.best_seen_block(); let previous_state = self.state(&previous_best_seen); - self.blocks.clear_peer_download(who); + self.blocks.clear_peer_download(&who); self.peers.remove(&who); if self.peers.len() == 0 { // We're not connected to any peer anymore. @@ -958,7 +958,7 @@ impl ChainSync { self.best_queued_number = As::sa(0); } } - let ids: Vec = self.peers.drain().map(|(id, _)| id).collect(); + let ids: Vec = self.peers.drain().map(|(id, _)| id).collect(); for id in ids { self.new_peer(protocol, id); } @@ -971,7 +971,7 @@ impl ChainSync { } // Download old block with known parent. - fn download_stale(&mut self, protocol: &mut Context, who: NodeIndex, hash: &B::Hash) { + fn download_stale(&mut self, protocol: &mut Context, who: PeerId, hash: &B::Hash) { if let Some(ref mut peer) = self.peers.get_mut(&who) { match peer.state { PeerSyncState::Available => { @@ -992,7 +992,7 @@ impl ChainSync { } // Download old block with unknown parent. - fn download_unknown_stale(&mut self, protocol: &mut Context, who: NodeIndex, hash: &B::Hash) { + fn download_unknown_stale(&mut self, protocol: &mut Context, who: PeerId, hash: &B::Hash) { if let Some(ref mut peer) = self.peers.get_mut(&who) { match peer.state { PeerSyncState::Available => { @@ -1013,7 +1013,7 @@ impl ChainSync { } // Issue a request for a peer to download new blocks, if any are available - fn download_new(&mut self, protocol: &mut Context, who: NodeIndex) { + fn download_new(&mut self, protocol: &mut Context, who: PeerId) { if let Some(ref mut peer) = self.peers.get_mut(&who) { // when there are too many blocks in the queue => do not try to download new blocks if self.queue_blocks.len() > MAX_IMPORTING_BLOCKS { @@ -1023,7 +1023,7 @@ impl ChainSync { match peer.state { PeerSyncState::Available => { trace!(target: "sync", "Considering new block download from {}, common block is {}, best is {:?}", who, peer.common_number, peer.best_number); - if let Some(range) = self.blocks.needed_blocks(who, MAX_BLOCKS_TO_REQUEST, peer.best_number, peer.common_number) { + if let Some(range) = self.blocks.needed_blocks(who.clone(), MAX_BLOCKS_TO_REQUEST, peer.best_number, peer.common_number) { trace!(target: "sync", "Requesting blocks from {}, ({} to {})", who, range.start, range.end); let request = message::generic::BlockRequest { id: 0, @@ -1044,7 +1044,7 @@ impl ChainSync { } } - fn request_ancestry(protocol: &mut Context, who: NodeIndex, block: NumberFor) { + fn request_ancestry(protocol: &mut Context, who: PeerId, block: NumberFor) { trace!(target: "sync", "Requesting ancestry block #{} from {}", block, who); let request = message::generic::BlockRequest { id: 0, diff --git a/core/network/src/test/block_import.rs b/core/network/src/test/block_import.rs index 0916d698c3..3b5e44cc47 100644 --- a/core/network/src/test/block_import.rs +++ b/core/network/src/test/block_import.rs @@ -26,7 +26,7 @@ struct TestLink {} impl Link for TestLink {} -fn prepare_good_block() -> (client::Client, Hash, u64, IncomingBlock) { +fn prepare_good_block() -> (client::Client, Hash, u64, PeerId, IncomingBlock) { let client = test_client::new(); let block = client.new_block().unwrap().bake().unwrap(); client.import(BlockOrigin::File, block).unwrap(); @@ -34,27 +34,28 @@ fn prepare_good_block() -> (client::Client for DummySpecialization { vec![] } - fn on_connect(&mut self, _ctx: &mut Context, _peer_id: NodeIndex, _status: crate::message::Status) { + fn on_connect(&mut self, _ctx: &mut Context, _peer_id: PeerId, _status: crate::message::Status) { } - fn on_disconnect(&mut self, _ctx: &mut Context, _peer_id: NodeIndex) { + fn on_disconnect(&mut self, _ctx: &mut Context, _peer_id: PeerId) { } fn on_message( &mut self, _ctx: &mut Context, - _peer_id: NodeIndex, + _peer_id: PeerId, _message: &mut Option>, ) { } @@ -166,7 +166,7 @@ impl + Clone> Link for TestLink { self.link.blocks_processed(processed_blocks, has_error); } - fn justification_imported(&self, who: NodeIndex, hash: &Hash, number:NumberFor, success: bool) { + fn justification_imported(&self, who: PeerId, hash: &Hash, number:NumberFor, success: bool) { self.link.justification_imported(who, hash, number, success); } @@ -174,11 +174,11 @@ impl + Clone> Link for TestLink { self.link.request_justification(hash, number); } - fn useless_peer(&self, who: NodeIndex, reason: &str) { + fn useless_peer(&self, who: PeerId, reason: &str) { self.link.useless_peer(who, reason); } - fn note_useless_and_restart_sync(&self, who: NodeIndex, reason: &str) { + fn note_useless_and_restart_sync(&self, who: PeerId, reason: &str) { self.link.note_useless_and_restart_sync(who, reason); } @@ -190,7 +190,8 @@ impl + Clone> Link for TestLink { pub struct Peer + Clone> { pub is_offline: Arc, pub is_major_syncing: Arc, - pub peers: Arc>>>, + pub peers: Arc>>>, + pub peer_id: PeerId, client: Arc, network_to_protocol_sender: Sender>, pub protocol_sender: Sender>, @@ -206,7 +207,7 @@ impl + Clone> Peer { fn new( is_offline: Arc, is_major_syncing: Arc, - peers: Arc>>>, + peers: Arc>>>, client: Arc, import_queue: Box>, network_to_protocol_sender: Sender>, @@ -222,6 +223,7 @@ impl + Clone> Peer { is_offline, is_major_syncing, peers, + peer_id: PeerId::random(), client, network_to_protocol_sender, protocol_sender, @@ -268,22 +270,22 @@ impl + Clone> Peer { } /// Called on connection to other indicated peer. - fn on_connect(&self, other: NodeIndex) { - let _ = self.network_to_protocol_sender.send(FromNetworkMsg::PeerConnected(PeerId::random(), other, String::new())); + fn on_connect(&self, other: &Self) { + let _ = self.network_to_protocol_sender.send(FromNetworkMsg::PeerConnected(other.peer_id.clone(), String::new())); } /// Called on disconnect from other indicated peer. - fn on_disconnect(&self, other: NodeIndex) { + fn on_disconnect(&self, other: &Self) { let _ = self .network_to_protocol_sender - .send(FromNetworkMsg::PeerDisconnected(other, String::new())); + .send(FromNetworkMsg::PeerDisconnected(other.peer_id.clone(), String::new())); } /// Receive a message from another peer. Return a set of peers to disconnect. - fn receive_message(&self, from: NodeIndex, msg: Message) { + fn receive_message(&self, from: &Self, msg: Message) { let _ = self .network_to_protocol_sender - .send(FromNetworkMsg::CustomMessage(from, msg)); + .send(FromNetworkMsg::CustomMessage(from.peer_id.clone(), msg)); } /// Produce the next pending message to send to another peer. @@ -567,7 +569,7 @@ pub trait TestNetFactory: Sized { let is_offline = Arc::new(AtomicBool::new(true)); let is_major_syncing = Arc::new(AtomicBool::new(false)); let specialization = self::SpecializationFactory::create(); - let peers: Arc>>> = Arc::new(Default::default()); + let peers: Arc>>> = Arc::new(Default::default()); let (protocol_sender, network_to_protocol_sender) = Protocol::new( status_sinks, @@ -606,39 +608,38 @@ pub trait TestNetFactory: Sized { if self.started() { return; } - self.mut_peers(|peers| { - for peer in 0..peers.len() { - peers[peer].start(); - for client in 0..peers.len() { - if peer != client { - peers[peer].on_connect(client as NodeIndex); - } + for peer in self.peers() { + peer.start(); + for client in self.peers() { + if peer.peer_id != client.peer_id { + peer.on_connect(client); } } - }); + } self.route(None); self.set_started(true); } /// Do one step of routing. - fn route(&mut self, disconnected: Option>) { + fn route(&mut self, disconnected: Option>) { self.mut_peers(move |peers| { let mut to_disconnect = HashSet::new(); - for peer in 0..peers.len() { - let packet = peers[peer].pending_message(); + for (peer_pos, peer) in peers.iter().enumerate() { + let packet = peer.pending_message(); match packet { None => continue, Some(NetworkMsg::Outgoing(recipient, packet)) => { + let recipient = peers.iter().position(|p| p.peer_id == recipient).unwrap(); if let Some(disconnected) = disconnected.as_ref() { let mut current = HashSet::new(); - current.insert(peer); + current.insert(peer_pos); current.insert(recipient); // Not routing message between "disconnected" nodes. if disconnected.is_subset(¤t) { continue; } } - peers[recipient].receive_message(peer as NodeIndex, packet) + peers[recipient].receive_message(peer, packet) } Some(NetworkMsg::ReportPeer(who, _)) => { to_disconnect.insert(who); @@ -647,8 +648,10 @@ pub trait TestNetFactory: Sized { } } for d in to_disconnect { - for peer in 0..peers.len() { - peers[peer].on_disconnect(d); + if let Some(d) = peers.iter().find(|p| p.peer_id == d) { + for peer in 0..peers.len() { + peers[peer].on_disconnect(d); + } } } }); @@ -659,7 +662,9 @@ pub trait TestNetFactory: Sized { self.mut_peers(move |peers| { for peer in 0..peers.len() { while let Some(NetworkMsg::Outgoing(recipient, packet)) = peers[peer].pending_message_fast() { - peers[recipient].receive_message(peer as NodeIndex, packet) + if let Some(p) = peers.iter().find(|p| p.peer_id == recipient) { + p.receive_message(&peers[peer], packet) + } } } }); @@ -701,7 +706,7 @@ pub trait TestNetFactory: Sized { /// Perform synchronization until complete, if provided the /// given nodes set are excluded from sync. - fn sync_with(&mut self, disconnected: Option>) -> u32 { + fn sync_with(&mut self, disconnected: Option>) -> u32 { self.start(); let mut total_steps = 0; let mut done = 0; @@ -730,7 +735,7 @@ pub trait TestNetFactory: Sized { /// Perform synchronization until complete, /// excluding sync between certain nodes. - fn sync_with_disconnected(&mut self, disconnected: HashSet) -> u32 { + fn sync_with_disconnected(&mut self, disconnected: HashSet) -> u32 { self.sync_with(Some(disconnected)) } diff --git a/core/network/src/test/sync.rs b/core/network/src/test/sync.rs index cb54c05526..9bbf0a32b7 100644 --- a/core/network/src/test/sync.rs +++ b/core/network/src/test/sync.rs @@ -18,7 +18,6 @@ use client::backend::Backend; use client::blockchain::HeaderBackend as BlockchainHeaderBackend; use crate::config::Roles; use consensus::BlockOrigin; -use network_libp2p::NodeIndex; use std::collections::HashSet; use std::thread; use std::time::Duration; @@ -54,7 +53,7 @@ fn sync_peers_works() { // And then disconnect. for other in 0..3 { if other != peer { - net.peer(peer).on_disconnect(other); + net.peer(peer).on_disconnect(net.peer(other)); } } } @@ -100,7 +99,7 @@ fn sync_cycle_from_offline_to_syncing_to_offline() { for peer in 0..3 { for other in 0..3 { if other != peer { - net.peer(peer).on_disconnect(other); + net.peer(peer).on_disconnect(net.peer(other)); } } thread::sleep(Duration::from_millis(100)); @@ -125,8 +124,8 @@ fn syncing_node_not_major_syncing_when_disconnected() { assert!(net.peer(1).is_major_syncing()); // Disconnect peer 1 form everyone else. - net.peer(1).on_disconnect(0); - net.peer(1).on_disconnect(2); + net.peer(1).on_disconnect(net.peer(0)); + net.peer(1).on_disconnect(net.peer(2)); thread::sleep(Duration::from_millis(100)); // Peer 1 is not major-syncing. @@ -162,7 +161,7 @@ fn sync_from_two_peers_with_ancestry_search_works() { fn ancestry_search_works_when_backoff_is_one() { let _ = ::env_logger::try_init(); let mut net = TestNet::new(3); - + net.peer(0).push_blocks(1, false); net.peer(1).push_blocks(2, false); net.peer(2).push_blocks(2, false); @@ -357,13 +356,13 @@ fn blocks_are_not_announced_by_light_nodes() { net.peer(0).start(); net.peer(1).start(); net.peer(2).start(); - net.peer(0).on_connect(1); - net.peer(1).on_connect(2); + net.peer(0).on_connect(net.peer(1)); + net.peer(1).on_connect(net.peer(2)); // Only sync between 0 -> 1, and 1 -> 2 let mut disconnected = HashSet::new(); - disconnected.insert(0 as NodeIndex); - disconnected.insert(2 as NodeIndex); + disconnected.insert(0); + disconnected.insert(2); net.sync_with_disconnected(disconnected); // peer 0 has the best chain diff --git a/core/rpc/src/system/helpers.rs b/core/rpc/src/system/helpers.rs index ea35b8803c..9f64318d5d 100644 --- a/core/rpc/src/system/helpers.rs +++ b/core/rpc/src/system/helpers.rs @@ -54,8 +54,6 @@ pub struct Health { #[derive(Debug, PartialEq, Serialize)] #[serde(rename_all = "camelCase")] pub struct PeerInfo { - /// Peer Node Index - pub index: usize, /// Peer ID pub peer_id: String, /// Roles @@ -96,14 +94,13 @@ mod tests { fn should_serialize_peer_info() { assert_eq!( ::serde_json::to_string(&PeerInfo { - index: 1, peer_id: "2".into(), roles: "a".into(), protocol_version: 2, best_hash: 5u32, best_number: 6u32, }).unwrap(), - r#"{"index":1,"peerId":"2","roles":"a","protocolVersion":2,"bestHash":5,"bestNumber":6}"#, + r#"{"peerId":"2","roles":"a","protocolVersion":2,"bestHash":5,"bestNumber":6}"#, ); } } diff --git a/core/rpc/src/system/mod.rs b/core/rpc/src/system/mod.rs index b0fc4e5679..331d9cd85b 100644 --- a/core/rpc/src/system/mod.rs +++ b/core/rpc/src/system/mod.rs @@ -117,9 +117,8 @@ impl SystemApi::Number> for Sy } fn system_peers(&self) -> Result::Number>>> { - Ok(self.sync.peers().into_iter().map(|(index, p)| PeerInfo { - index, - peer_id: p.peer_id.to_base58(), + Ok(self.sync.peers().into_iter().map(|(peer_id, p)| PeerInfo { + peer_id: peer_id.to_base58(), roles: format!("{:?}", p.roles), protocol_version: p.protocol_version, best_hash: p.best_hash, diff --git a/core/rpc/src/system/tests.rs b/core/rpc/src/system/tests.rs index 66f10694fb..8f85d9c2df 100644 --- a/core/rpc/src/system/tests.rs +++ b/core/rpc/src/system/tests.rs @@ -16,7 +16,7 @@ use super::*; -use network::{self, ProtocolStatus, NodeIndex, PeerId, PeerInfo as NetworkPeerInfo}; +use network::{self, ProtocolStatus, PeerId, PeerInfo as NetworkPeerInfo}; use network::config::Roles; use test_client::runtime::Block; use assert_matches::assert_matches; @@ -57,12 +57,11 @@ impl network::SyncProvider for Status { } } - fn peers(&self) -> Vec<(NodeIndex, NetworkPeerInfo)> { + fn peers(&self) -> Vec<(PeerId, NetworkPeerInfo)> { let mut peers = vec![]; for _peer in 0..self.peers { peers.push( - (1, NetworkPeerInfo { - peer_id: self.peer_id.clone(), + (self.peer_id.clone(), NetworkPeerInfo { roles: Roles::FULL, protocol_version: 1, best_hash: Default::default(), @@ -187,7 +186,6 @@ fn system_peers() { is_dev: true, }).system_peers().unwrap(), vec![PeerInfo { - index: 1, peer_id: peer_id.to_base58(), roles: "FULL".into(), protocol_version: 1, -- GitLab From 6160ea5ac3bd7e1d1154b45a027ec9732ad59237 Mon Sep 17 00:00:00 2001 From: Xiliang Chen Date: Sat, 23 Mar 2019 23:17:29 +1300 Subject: [PATCH 069/120] expose linked map info to metadata (#2037) * expose linked map info to metadata * Make it non breaking change * another way * change to option 1 * bump metadata version * fix test * bump version and update wasm --- core/test-runtime/wasm/Cargo.lock | 847 +++++++++++++++++- .../substrate_test_runtime.compact.wasm | Bin 56614 -> 56678 bytes node-template/runtime/wasm/Cargo.lock | 847 +++++++++++++++++- node/runtime/src/lib.rs | 4 +- node/runtime/wasm/Cargo.lock | 847 +++++++++++++++++- .../release/node_runtime.compact.wasm | Bin 923727 -> 924346 bytes srml/metadata/src/lib.rs | 13 +- .../procedural/src/storage/transformation.rs | 3 +- srml/support/src/metadata.rs | 10 +- srml/support/src/storage/generator.rs | 106 ++- 10 files changed, 2615 insertions(+), 62 deletions(-) diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index 863fe747ab..028bd07427 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -1,5 +1,36 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +[[package]] +name = "aes-ctr" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "aes-soft" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "aesni" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "aho-corasick" version = "0.6.10" @@ -8,6 +39,19 @@ dependencies = [ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "aio-limited" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +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)", + "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "arrayref" version = "0.3.5" @@ -21,6 +65,23 @@ dependencies = [ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "asn1_der" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "asn1_der_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "asn1_der_derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "autocfg" version = "0.1.2" @@ -48,11 +109,25 @@ dependencies = [ "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "base-x" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "base58" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "bigint" +version = "4.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "bitflags" version = "1.0.4" @@ -63,6 +138,17 @@ name = "bitmask" version = "0.5.0" source = "git+https://github.com/paritytech/bitmask#a84e147be602631617badd18b6b9af83391db4a9" +[[package]] +name = "blake2" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "blake2-rfc" version = "0.2.18" @@ -92,6 +178,14 @@ dependencies = [ "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "block-cipher-trait" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "block-padding" version = "0.1.3" @@ -100,6 +194,11 @@ dependencies = [ "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "bs58" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "byte-tools" version = "0.2.0" @@ -110,6 +209,11 @@ name = "byte-tools" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "byteorder" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "byteorder" version = "1.3.1" @@ -296,6 +400,24 @@ dependencies = [ "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ctr" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "cuckoofilter" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "curve25519-dalek" version = "1.1.3" @@ -308,6 +430,11 @@ dependencies = [ "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "data-encoding" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "digest" version = "0.6.2" @@ -324,6 +451,20 @@ dependencies = [ "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "discard" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "dns-parser" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ed25519-dalek" version = "1.0.0-pre.1" @@ -442,6 +583,15 @@ name = "futures" version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "futures-cpupool" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "generic-array" version = "0.8.3" @@ -623,19 +773,338 @@ dependencies = [ ] [[package]] -name = "lazy_static" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lazycell" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" +name = "lazy_static" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "lazycell" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "libc" +version = "0.2.50" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "libp2p" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-core-derive 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-dns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-floodsub 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-kad 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-mdns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-mplex 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-noise 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-plaintext 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ratelimit 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-secio 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-tcp 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-uds 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-yamux 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-core" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "multistream-select 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "secp256k1 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-core-derive" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-dns" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tokio-dns-unofficial 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-floodsub" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "cuckoofilter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-identify" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-kad" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-mdns" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-mplex" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-noise" +version = "0.3.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "snow 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "x25519-dalek 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-ping" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "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)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-plaintext" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-ratelimit" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-secio" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-tcp" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-uds" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] -name = "libc" -version = "0.2.50" -source = "registry+https://github.com/rust-lang/crates.io-index" +name = "libp2p-yamux" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "libsecp256k1" @@ -757,6 +1226,20 @@ dependencies = [ "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "multistream-select" +version = "0.3.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (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)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "net2" version = "0.2.33" @@ -772,6 +1255,11 @@ name = "nodrop" version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "nohash-hasher" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "num-integer" version = "0.1.39" @@ -831,6 +1319,14 @@ dependencies = [ "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "owning_ref" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "owning_ref" version = "0.4.0" @@ -865,6 +1361,33 @@ dependencies = [ "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parity-multiaddr" +version = "0.2.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parity-multihash" +version = "0.1.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parity-wasm" version = "0.31.3" @@ -873,6 +1396,24 @@ dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parking_lot" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot" version = "0.7.1" @@ -882,6 +1423,29 @@ dependencies = [ "parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot_core" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parking_lot_core" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot_core" version = "0.4.0" @@ -984,6 +1548,21 @@ dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "protobuf" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "quick-error" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "quick-error" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "quote" version = "0.6.11" @@ -992,6 +1571,15 @@ dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rand" +version = "0.3.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rand" version = "0.4.6" @@ -1197,6 +1785,16 @@ dependencies = [ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rw-stream-sink" +version = "0.1.1" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ryu" version = "0.2.7" @@ -1249,6 +1847,16 @@ name = "scopeguard" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "secp256k1" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "semver" version = "0.9.0" @@ -1373,6 +1981,23 @@ name = "smallvec" version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "snow" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "static_slice 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "spin" version = "0.5.0" @@ -1539,6 +2164,63 @@ name = "static_assertions" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "static_slice" +version = "0.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "stdweb" +version = "0.4.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-derive 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-internal-macros 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-internal-runtime 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-derive" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (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)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-internal-macros" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "base-x 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (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)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-internal-runtime" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "stream-cipher" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "strum" version = "0.14.0" @@ -1608,6 +2290,7 @@ dependencies = [ "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (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)", @@ -1860,6 +2543,17 @@ dependencies = [ "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tk-listen" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +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)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio" version = "0.1.16" @@ -1902,6 +2596,17 @@ dependencies = [ "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tokio-dns-unofficial" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio-executor" version = "0.1.6" @@ -2056,6 +2761,16 @@ dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "twofish" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "twox-hash" version = "1.1.2" @@ -2111,6 +2826,15 @@ name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "unsigned-varint" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "untrusted" version = "0.6.2" @@ -2136,6 +2860,11 @@ name = "vcpkg" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "void" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "wasmi" version = "0.4.3" @@ -2202,22 +2931,65 @@ dependencies = [ "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "x25519-dalek" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "yamux" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.4.12 (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)", + "nohash-hasher 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "zeroize" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [metadata] +"checksum aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2e5b0458ea3beae0d1d8c0f3946564f8e10f90646cf78c06b4351052058d1ee" +"checksum aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cfd7e7ae3f9a1fb5c03b389fc6bb9a51400d0c13053f0dca698c832bfd893a0d" +"checksum aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f70a6b5f971e473091ab7cfb5ffac6cde81666c4556751d8d5620ead8abf100" "checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5" +"checksum aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f10b352bc3fc08ae24dc5d2d3ddcac153678533986122dc283d747b12071000" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" +"checksum asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9893d63fc3b1c44231e667da6836a33f27d8b6b3bdc82f83da5dfd579d1b6528" +"checksum asn1_der_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9e7f92edafad155aff997fa5b727c6429b91e996b5a5d62a2b0adbae1306b5fe" "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" "checksum backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "cd5a90e2b463010cd0e0ce9a11d4a9d5d58d9f41d4a6ba3dcaf9e68b466e88b4" "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" +"checksum base-x 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d55aa264e822dbafa12db4d54767aff17c6ba55ea2d8559b3e17392c7d000e5d" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" +"checksum bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ebecac13b3c745150d7b6c3ea7572d372f09d627c2077e893bf26c5c7f70d282" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" "checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" +"checksum blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "91721a6330935673395a0607df4d49a9cb90ae12d259f1b3e0a3f6e1d486872e" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" "checksum block-buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1339a1042f5d9f295737ad4d9a6ab6bf81c84a933dba110b9200cd6d1448b814" "checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d" +"checksum block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774" "checksum block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591" +"checksum bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0de79cfb98e7aa9988188784d8664b4b5dad6eaaa0863b91d9a4ed871d4f7a42" "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" "checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" +"checksum byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0fc10e8cc6b2580fda3f36eb6dc5316657f812a3df879a44a66fc9f0fdbc4855" "checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" "checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" "checksum cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)" = "d01c69d08ff207f231f07196e30f84c70f1c815b04f980f8b7b01ff01f05eb92" @@ -2240,9 +3012,14 @@ dependencies = [ "checksum crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c240f247c278fa08a6d4820a6a222bfc6e0d999e51ba67be94f44c905b2161f2" "checksum crypto-mac 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "779015233ac67d65098614aec748ac1c756ab6677fa2e14cf8b37c08dfed1198" "checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" +"checksum ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "022cd691704491df67d25d006fe8eca083098253c4d43516c2206479c58c6736" +"checksum cuckoofilter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8dd43f7cfaffe0a386636a10baea2ee05cc50df3b77bea4a456c9572a939bf1f" "checksum curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1f8a6fc0376eb52dc18af94915cc04dfdf8353746c0e8c550ae683a0815e5c1" +"checksum data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4f47ca1860a761136924ddd2422ba77b2ea54fe8cc75b9040804a0d9d32ad97" "checksum digest 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e5b29bf156f3f4b3c4f610a25ff69370616ae6e0657d416de22645483e72af0a" "checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c" +"checksum discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" +"checksum dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c4d33be9473d06f75f58220f71f7a9317aca647dc061dbd3c361b0bef505fbea" "checksum ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81956bcf7ef761fb4e1d88de3fa181358a0d26cbcb9755b587a08f9119824b86" "checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" "checksum elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" @@ -2259,6 +3036,7 @@ dependencies = [ "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b" +"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" "checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592" "checksum generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fceb69994e330afed50c93524be68c42fa898c2d9fd4ee8da03bd7363acd26f2" "checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" @@ -2285,6 +3063,23 @@ dependencies = [ "checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" +"checksum libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-core-derive 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-dns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-floodsub 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-kad 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-mdns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-mplex 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-noise 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-plaintext 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-ratelimit 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-secio 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-tcp 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-uds 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-yamux 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "688e8d65e495567c2c35ea0001b26b9debf0b4ea11f8cccc954233b75fc3428a" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" @@ -2298,8 +3093,10 @@ dependencies = [ "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" +"checksum multistream-select 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" +"checksum nohash-hasher 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0d138afcce92d219ccb6eb53d9b1e8a96ac0d633cfd3c53cd9856d96d1741bb8" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" "checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" @@ -2307,12 +3104,19 @@ dependencies = [ "checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409" "checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d" "checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e" +"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.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-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)" = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc" +"checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" +"checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" +"checksum parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa" +"checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f50392d1265092fbee9273414cc40eb6d47d307bd66222c477bb8450c8504f9d" "checksum paste-impl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a3cd512fe3a55e8933b2dcad913e365639db86d512e4004c3084b86864d9467a" @@ -2325,7 +3129,11 @@ dependencies = [ "checksum proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3e90aa19cd73dedc2d0e1e8407473f073d735fef0ab521438de6da8ee449ab66" "checksum proc-macro-hack-impl 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2b753ad9ed99dd8efeaa7d2fb8453c8f6bc3e54b97966d35f1bc77ca6865254a" "checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" +"checksum protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "24d5d73d2b88fddb8b8141f2730d950d88772c940ac4f8f3e93230b9a99d92df" +"checksum quick-error 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5fb6ccf8db7bbcb9c2eae558db5ab4f3da1c2a87e4e597ed394726bc8ea6ca1d" +"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" +"checksum rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)" = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c" "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" "checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9" "checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" @@ -2348,11 +3156,13 @@ dependencies = [ "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +"checksum rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" "checksum schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a700659388785588c75b197cecda0f23c7112a9281ef703e8ffc651061ce014c" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" +"checksum secp256k1 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4070f3906e65249228094cf97b04a90799fba04468190bbbcfa812309cf86e32" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" "checksum serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560" @@ -2368,9 +3178,16 @@ dependencies = [ "checksum slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddc0d2aff1f8f325ef660d9a0eb6e6dcd20b30b3f581a5897f58bf42d061c37a" "checksum slog-scope 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "60c04b4726fa04595ccf2c2dad7bcd15474242c4c5e109a8a376e8a2c9b1539a" "checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" +"checksum snow 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "5a64f02fd208ef15bd2d1a65861df4707e416151e1272d02c8faafad1c138100" "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum static_slice 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "92a7e0c5e3dfb52e8fbe0e63a1b947bbb17b4036408b151353c4491374931362" +"checksum stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)" = "a3edad410e603184d656e2abded5fd4d3d6e93d5763d21130dbaf99795db74eb" +"checksum stdweb-derive 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0e21ebd9179de08f2300a65454268a17ea3de204627458588c84319c4def3930" +"checksum stdweb-internal-macros 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1635afd059cbfac7d5b1274f0c44cec110c1e013c48e8bbc22e07e52696cf887" +"checksum stdweb-internal-runtime 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a2a2f4a2eb556337b2d1a302630bbddf989ae383c70393e89b48152b9896cbda" +"checksum stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8861bc80f649f5b4c9bd38b696ae9af74499d479dbfb327f0607de6b326a36bc" "checksum strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1810e25f576e7ffce1ff5243b37066da5ded0310b3274c20baaeccb1145b2806" "checksum strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "572a2f4e53dd4c3483fd79e5cc10ddd773a3acb1169bbfe8762365e107110579" "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" @@ -2383,9 +3200,11 @@ dependencies = [ "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" "checksum tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a1415431cb2398d84da64173f8473c792808314427d4a6f2f3ea85ae67239fe3" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" +"checksum tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5462b0f968c0457efe38fcd2df7e487096b992419e4f5337b06775a614bbda4b" "checksum tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fcaabb3cec70485d0df6e9454fe514393ad1c4070dee8915f11041e95630b230" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" "checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" +"checksum tokio-dns-unofficial 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "82c65483db54eb91b4ef3a9389a3364558590faf30ce473141707c0e16fda975" "checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" "checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" "checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" @@ -2399,6 +3218,7 @@ dependencies = [ "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" "checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" +"checksum twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d261e83e727c8e2dbb75dacac67c36e35db36a958ee504f2164fc052434e1" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" @@ -2407,10 +3227,12 @@ dependencies = [ "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" +"checksum unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2c64cdf40b4a9645534a943668681bcb219faf51874d4b65d2e0abda1b10a2ab" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" +"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" @@ -2419,3 +3241,6 @@ dependencies = [ "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" "checksum ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "329d3e6dd450a9c5c73024e1047f0be7e24121a68484eb0b5368977bee3cf8c3" "checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" +"checksum x25519-dalek 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4aca1ba6bec2719576bd20dfe5b24d9359552e616d10bff257e50cd85f745d17" +"checksum yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "302defd1bed8a9a6d43b82f0e5a50510dfdfbbd02c270c93ff9d6f3f5e2dea89" +"checksum zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8ddfeb6eee2fb3b262ef6e0898a52b7563bb8e0d5955a313b3cf2f808246ea14" diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index c4df3f06b5bb1e46508ff2c11a5c39a9738d6838..1c6e8d555fc03c53ad023fe27d37cd96f1ba8697 100644 GIT binary patch delta 4898 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 QHDdzD>rI^4#A$W^2bwBJUH||9 delta 4788 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 P)^#2iFdGCJ|EK*Q#-tbb diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index 48c9801535..dc4429be3d 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -1,5 +1,36 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +[[package]] +name = "aes-ctr" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "aes-soft" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "aesni" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "aho-corasick" version = "0.6.10" @@ -8,6 +39,19 @@ dependencies = [ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "aio-limited" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +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)", + "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "arrayref" version = "0.3.5" @@ -21,6 +65,23 @@ dependencies = [ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "asn1_der" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "asn1_der_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "asn1_der_derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "autocfg" version = "0.1.2" @@ -48,11 +109,25 @@ dependencies = [ "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "base-x" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "base58" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "bigint" +version = "4.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "bitflags" version = "1.0.4" @@ -63,6 +138,17 @@ name = "bitmask" version = "0.5.0" source = "git+https://github.com/paritytech/bitmask#a84e147be602631617badd18b6b9af83391db4a9" +[[package]] +name = "blake2" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "blake2-rfc" version = "0.2.18" @@ -92,6 +178,14 @@ dependencies = [ "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "block-cipher-trait" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "block-padding" version = "0.1.3" @@ -100,6 +194,11 @@ dependencies = [ "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "bs58" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "byte-tools" version = "0.2.0" @@ -110,6 +209,11 @@ name = "byte-tools" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "byteorder" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "byteorder" version = "1.3.1" @@ -296,6 +400,24 @@ dependencies = [ "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ctr" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "cuckoofilter" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "curve25519-dalek" version = "1.1.3" @@ -308,6 +430,11 @@ dependencies = [ "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "data-encoding" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "digest" version = "0.6.2" @@ -324,6 +451,20 @@ dependencies = [ "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "discard" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "dns-parser" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ed25519-dalek" version = "1.0.0-pre.1" @@ -442,6 +583,15 @@ name = "futures" version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "futures-cpupool" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "generic-array" version = "0.8.3" @@ -623,19 +773,338 @@ dependencies = [ ] [[package]] -name = "lazy_static" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lazycell" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" +name = "lazy_static" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "lazycell" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "libc" +version = "0.2.50" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "libp2p" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-core-derive 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-dns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-floodsub 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-kad 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-mdns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-mplex 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-noise 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-plaintext 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ratelimit 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-secio 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-tcp 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-uds 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-yamux 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-core" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "multistream-select 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "secp256k1 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-core-derive" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-dns" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tokio-dns-unofficial 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-floodsub" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "cuckoofilter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-identify" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-kad" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-mdns" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-mplex" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-noise" +version = "0.3.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "snow 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "x25519-dalek 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-ping" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "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)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-plaintext" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-ratelimit" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-secio" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-tcp" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-uds" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] -name = "libc" -version = "0.2.50" -source = "registry+https://github.com/rust-lang/crates.io-index" +name = "libp2p-yamux" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "libsecp256k1" @@ -757,6 +1226,20 @@ dependencies = [ "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "multistream-select" +version = "0.3.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (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)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "net2" version = "0.2.33" @@ -805,6 +1288,11 @@ name = "nodrop" version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "nohash-hasher" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "num-integer" version = "0.1.39" @@ -864,6 +1352,14 @@ dependencies = [ "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "owning_ref" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "owning_ref" version = "0.4.0" @@ -898,6 +1394,33 @@ dependencies = [ "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parity-multiaddr" +version = "0.2.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parity-multihash" +version = "0.1.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parity-wasm" version = "0.31.3" @@ -906,6 +1429,24 @@ dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parking_lot" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot" version = "0.7.1" @@ -915,6 +1456,29 @@ dependencies = [ "parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot_core" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parking_lot_core" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot_core" version = "0.4.0" @@ -1017,6 +1581,21 @@ dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "protobuf" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "quick-error" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "quick-error" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "quote" version = "0.6.11" @@ -1025,6 +1604,15 @@ dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rand" +version = "0.3.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rand" version = "0.4.6" @@ -1230,6 +1818,16 @@ dependencies = [ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rw-stream-sink" +version = "0.1.1" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ryu" version = "0.2.7" @@ -1282,6 +1880,16 @@ name = "scopeguard" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "secp256k1" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "semver" version = "0.9.0" @@ -1406,6 +2014,23 @@ name = "smallvec" version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "snow" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "static_slice 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "spin" version = "0.5.0" @@ -1703,6 +2328,63 @@ name = "static_assertions" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "static_slice" +version = "0.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "stdweb" +version = "0.4.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-derive 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-internal-macros 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-internal-runtime 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-derive" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (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)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-internal-macros" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "base-x 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (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)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-internal-runtime" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "stream-cipher" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "strum" version = "0.14.0" @@ -1772,6 +2454,7 @@ dependencies = [ "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (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)", @@ -1994,6 +2677,17 @@ dependencies = [ "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tk-listen" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +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)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio" version = "0.1.16" @@ -2036,6 +2730,17 @@ dependencies = [ "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tokio-dns-unofficial" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio-executor" version = "0.1.6" @@ -2190,6 +2895,16 @@ dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "twofish" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "twox-hash" version = "1.1.2" @@ -2245,6 +2960,15 @@ name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "unsigned-varint" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "untrusted" version = "0.6.2" @@ -2270,6 +2994,11 @@ name = "vcpkg" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "void" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "wasmi" version = "0.4.3" @@ -2336,22 +3065,65 @@ dependencies = [ "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "x25519-dalek" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "yamux" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.4.12 (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)", + "nohash-hasher 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "zeroize" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [metadata] +"checksum aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2e5b0458ea3beae0d1d8c0f3946564f8e10f90646cf78c06b4351052058d1ee" +"checksum aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cfd7e7ae3f9a1fb5c03b389fc6bb9a51400d0c13053f0dca698c832bfd893a0d" +"checksum aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f70a6b5f971e473091ab7cfb5ffac6cde81666c4556751d8d5620ead8abf100" "checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5" +"checksum aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f10b352bc3fc08ae24dc5d2d3ddcac153678533986122dc283d747b12071000" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" +"checksum asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9893d63fc3b1c44231e667da6836a33f27d8b6b3bdc82f83da5dfd579d1b6528" +"checksum asn1_der_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9e7f92edafad155aff997fa5b727c6429b91e996b5a5d62a2b0adbae1306b5fe" "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" "checksum backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "cd5a90e2b463010cd0e0ce9a11d4a9d5d58d9f41d4a6ba3dcaf9e68b466e88b4" "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" +"checksum base-x 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d55aa264e822dbafa12db4d54767aff17c6ba55ea2d8559b3e17392c7d000e5d" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" +"checksum bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ebecac13b3c745150d7b6c3ea7572d372f09d627c2077e893bf26c5c7f70d282" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" "checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" +"checksum blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "91721a6330935673395a0607df4d49a9cb90ae12d259f1b3e0a3f6e1d486872e" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" "checksum block-buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1339a1042f5d9f295737ad4d9a6ab6bf81c84a933dba110b9200cd6d1448b814" "checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d" +"checksum block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774" "checksum block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591" +"checksum bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0de79cfb98e7aa9988188784d8664b4b5dad6eaaa0863b91d9a4ed871d4f7a42" "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" "checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" +"checksum byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0fc10e8cc6b2580fda3f36eb6dc5316657f812a3df879a44a66fc9f0fdbc4855" "checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" "checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" "checksum cc 1.0.31 (registry+https://github.com/rust-lang/crates.io-index)" = "c9ce8bb087aacff865633f0bd5aeaed910fe2fe55b55f4739527f2e023a2e53d" @@ -2374,9 +3146,14 @@ dependencies = [ "checksum crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c240f247c278fa08a6d4820a6a222bfc6e0d999e51ba67be94f44c905b2161f2" "checksum crypto-mac 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "779015233ac67d65098614aec748ac1c756ab6677fa2e14cf8b37c08dfed1198" "checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" +"checksum ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "022cd691704491df67d25d006fe8eca083098253c4d43516c2206479c58c6736" +"checksum cuckoofilter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8dd43f7cfaffe0a386636a10baea2ee05cc50df3b77bea4a456c9572a939bf1f" "checksum curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1f8a6fc0376eb52dc18af94915cc04dfdf8353746c0e8c550ae683a0815e5c1" +"checksum data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4f47ca1860a761136924ddd2422ba77b2ea54fe8cc75b9040804a0d9d32ad97" "checksum digest 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e5b29bf156f3f4b3c4f610a25ff69370616ae6e0657d416de22645483e72af0a" "checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c" +"checksum discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" +"checksum dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c4d33be9473d06f75f58220f71f7a9317aca647dc061dbd3c361b0bef505fbea" "checksum ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81956bcf7ef761fb4e1d88de3fa181358a0d26cbcb9755b587a08f9119824b86" "checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" "checksum elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" @@ -2393,6 +3170,7 @@ dependencies = [ "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b" +"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" "checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592" "checksum generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fceb69994e330afed50c93524be68c42fa898c2d9fd4ee8da03bd7363acd26f2" "checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" @@ -2419,6 +3197,23 @@ dependencies = [ "checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" +"checksum libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-core-derive 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-dns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-floodsub 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-kad 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-mdns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-mplex 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-noise 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-plaintext 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-ratelimit 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-secio 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-tcp 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-uds 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-yamux 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "688e8d65e495567c2c35ea0001b26b9debf0b4ea11f8cccc954233b75fc3428a" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" @@ -2432,8 +3227,10 @@ dependencies = [ "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" +"checksum multistream-select 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" +"checksum nohash-hasher 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0d138afcce92d219ccb6eb53d9b1e8a96ac0d633cfd3c53cd9856d96d1741bb8" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" "checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" @@ -2441,12 +3238,19 @@ dependencies = [ "checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409" "checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d" "checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e" +"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.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-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)" = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc" +"checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" +"checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" +"checksum parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa" +"checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f50392d1265092fbee9273414cc40eb6d47d307bd66222c477bb8450c8504f9d" "checksum paste-impl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a3cd512fe3a55e8933b2dcad913e365639db86d512e4004c3084b86864d9467a" @@ -2459,7 +3263,11 @@ dependencies = [ "checksum proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3e90aa19cd73dedc2d0e1e8407473f073d735fef0ab521438de6da8ee449ab66" "checksum proc-macro-hack-impl 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2b753ad9ed99dd8efeaa7d2fb8453c8f6bc3e54b97966d35f1bc77ca6865254a" "checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" +"checksum protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "24d5d73d2b88fddb8b8141f2730d950d88772c940ac4f8f3e93230b9a99d92df" +"checksum quick-error 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5fb6ccf8db7bbcb9c2eae558db5ab4f3da1c2a87e4e597ed394726bc8ea6ca1d" +"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" +"checksum rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)" = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c" "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" "checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9" "checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" @@ -2482,11 +3290,13 @@ dependencies = [ "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +"checksum rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" "checksum schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a700659388785588c75b197cecda0f23c7112a9281ef703e8ffc651061ce014c" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" +"checksum secp256k1 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4070f3906e65249228094cf97b04a90799fba04468190bbbcfa812309cf86e32" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" "checksum serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560" @@ -2502,9 +3312,16 @@ dependencies = [ "checksum slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddc0d2aff1f8f325ef660d9a0eb6e6dcd20b30b3f581a5897f58bf42d061c37a" "checksum slog-scope 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "60c04b4726fa04595ccf2c2dad7bcd15474242c4c5e109a8a376e8a2c9b1539a" "checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" +"checksum snow 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "5a64f02fd208ef15bd2d1a65861df4707e416151e1272d02c8faafad1c138100" "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum static_slice 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "92a7e0c5e3dfb52e8fbe0e63a1b947bbb17b4036408b151353c4491374931362" +"checksum stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)" = "a3edad410e603184d656e2abded5fd4d3d6e93d5763d21130dbaf99795db74eb" +"checksum stdweb-derive 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0e21ebd9179de08f2300a65454268a17ea3de204627458588c84319c4def3930" +"checksum stdweb-internal-macros 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1635afd059cbfac7d5b1274f0c44cec110c1e013c48e8bbc22e07e52696cf887" +"checksum stdweb-internal-runtime 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a2a2f4a2eb556337b2d1a302630bbddf989ae383c70393e89b48152b9896cbda" +"checksum stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8861bc80f649f5b4c9bd38b696ae9af74499d479dbfb327f0607de6b326a36bc" "checksum strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1810e25f576e7ffce1ff5243b37066da5ded0310b3274c20baaeccb1145b2806" "checksum strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "572a2f4e53dd4c3483fd79e5cc10ddd773a3acb1169bbfe8762365e107110579" "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" @@ -2517,9 +3334,11 @@ dependencies = [ "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" "checksum tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a1415431cb2398d84da64173f8473c792808314427d4a6f2f3ea85ae67239fe3" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" +"checksum tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5462b0f968c0457efe38fcd2df7e487096b992419e4f5337b06775a614bbda4b" "checksum tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fcaabb3cec70485d0df6e9454fe514393ad1c4070dee8915f11041e95630b230" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" "checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" +"checksum tokio-dns-unofficial 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "82c65483db54eb91b4ef3a9389a3364558590faf30ce473141707c0e16fda975" "checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" "checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" "checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" @@ -2533,6 +3352,7 @@ dependencies = [ "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" "checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" +"checksum twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d261e83e727c8e2dbb75dacac67c36e35db36a958ee504f2164fc052434e1" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" @@ -2541,10 +3361,12 @@ dependencies = [ "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" +"checksum unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2c64cdf40b4a9645534a943668681bcb219faf51874d4b65d2e0abda1b10a2ab" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" +"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" @@ -2553,3 +3375,6 @@ dependencies = [ "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" "checksum ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "329d3e6dd450a9c5c73024e1047f0be7e24121a68484eb0b5368977bee3cf8c3" "checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" +"checksum x25519-dalek 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4aca1ba6bec2719576bd20dfe5b24d9359552e616d10bff257e50cd85f745d17" +"checksum yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "302defd1bed8a9a6d43b82f0e5a50510dfdfbbd02c270c93ff9d6f3f5e2dea89" +"checksum zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8ddfeb6eee2fb3b262ef6e0898a52b7563bb8e0d5955a313b3cf2f808246ea14" diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index ddfa241e37..dc0f4eab78 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 40, - impl_version: 40, + spec_version: 41, + impl_version: 41, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 570d1cb16c..356ee5f62e 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -1,5 +1,36 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. +[[package]] +name = "aes-ctr" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "aes-soft" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "aesni" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "aho-corasick" version = "0.6.10" @@ -8,6 +39,19 @@ dependencies = [ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "aio-limited" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +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)", + "parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "arrayref" version = "0.3.5" @@ -21,6 +65,23 @@ dependencies = [ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "asn1_der" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "asn1_der_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "asn1_der_derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "autocfg" version = "0.1.2" @@ -48,11 +109,25 @@ dependencies = [ "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "base-x" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "base58" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "bigint" +version = "4.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "bitflags" version = "1.0.4" @@ -63,6 +138,17 @@ name = "bitmask" version = "0.5.0" source = "git+https://github.com/paritytech/bitmask#a84e147be602631617badd18b6b9af83391db4a9" +[[package]] +name = "blake2" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "blake2-rfc" version = "0.2.18" @@ -92,6 +178,14 @@ dependencies = [ "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "block-cipher-trait" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "block-padding" version = "0.1.3" @@ -100,6 +194,11 @@ dependencies = [ "byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "bs58" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "byte-tools" version = "0.2.0" @@ -110,6 +209,11 @@ name = "byte-tools" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "byteorder" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "byteorder" version = "1.3.1" @@ -296,6 +400,24 @@ dependencies = [ "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "ctr" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "cuckoofilter" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "curve25519-dalek" version = "1.1.3" @@ -308,6 +430,11 @@ dependencies = [ "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "data-encoding" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "digest" version = "0.6.2" @@ -324,6 +451,20 @@ dependencies = [ "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "discard" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "dns-parser" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ed25519-dalek" version = "1.0.0-pre.1" @@ -442,6 +583,15 @@ name = "futures" version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "futures-cpupool" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "generic-array" version = "0.8.3" @@ -623,19 +773,338 @@ dependencies = [ ] [[package]] -name = "lazy_static" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lazycell" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" +name = "lazy_static" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "lazycell" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "libc" +version = "0.2.50" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "libp2p" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-core-derive 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-dns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-floodsub 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-kad 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-mdns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-mplex 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-noise 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-plaintext 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ratelimit 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-secio 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-tcp 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-uds 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-yamux 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-core" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "multistream-select 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "secp256k1 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", + "zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-core-derive" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-dns" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tokio-dns-unofficial 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-floodsub" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "cuckoofilter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-identify" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-kad" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-mdns" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-mplex" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-noise" +version = "0.3.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "snow 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "x25519-dalek 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-ping" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "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)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-plaintext" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-ratelimit" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-secio" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-tcp" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "libp2p-uds" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] -name = "libc" -version = "0.2.50" -source = "registry+https://github.com/rust-lang/crates.io-index" +name = "libp2p-yamux" +version = "0.5.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", +] [[package]] name = "libsecp256k1" @@ -757,6 +1226,20 @@ dependencies = [ "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "multistream-select" +version = "0.3.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (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)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "net2" version = "0.2.33" @@ -829,6 +1312,11 @@ name = "nodrop" version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "nohash-hasher" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "num-integer" version = "0.1.39" @@ -888,6 +1376,14 @@ dependencies = [ "vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "owning_ref" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "owning_ref" version = "0.4.0" @@ -922,6 +1418,33 @@ dependencies = [ "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parity-multiaddr" +version = "0.2.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", + "serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parity-multihash" +version = "0.1.0" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", + "unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parity-wasm" version = "0.31.3" @@ -930,6 +1453,24 @@ dependencies = [ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parking_lot" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot" version = "0.7.1" @@ -939,6 +1480,29 @@ dependencies = [ "parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "parking_lot_core" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "parking_lot_core" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "parking_lot_core" version = "0.4.0" @@ -1041,6 +1605,11 @@ dependencies = [ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "protobuf" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "pwasm-utils" version = "0.6.2" @@ -1051,6 +1620,16 @@ dependencies = [ "parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "quick-error" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "quick-error" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "quote" version = "0.6.11" @@ -1059,6 +1638,15 @@ dependencies = [ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rand" +version = "0.3.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "rand" version = "0.4.6" @@ -1264,6 +1852,16 @@ dependencies = [ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "rw-stream-sink" +version = "0.1.1" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "ryu" version = "0.2.7" @@ -1316,6 +1914,16 @@ name = "scopeguard" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "secp256k1" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)", + "libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "semver" version = "0.9.0" @@ -1440,6 +2048,23 @@ name = "smallvec" version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "snow" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "ring 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", + "static_slice 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", + "subtle 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "spin" version = "0.5.0" @@ -1848,6 +2473,63 @@ name = "static_assertions" version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "static_slice" +version = "0.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "stdweb" +version = "0.4.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-derive 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-internal-macros 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", + "stdweb-internal-runtime 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-derive" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (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)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-internal-macros" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "base-x 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", + "quote 0.6.11 (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)", + "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", + "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", + "syn 0.15.29 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "stdweb-internal-runtime" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" + +[[package]] +name = "stream-cipher" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "strum" version = "0.14.0" @@ -1917,6 +2599,7 @@ dependencies = [ "crossbeam-channel 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", "log 0.4.6 (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)", @@ -2150,6 +2833,17 @@ dependencies = [ "crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tk-listen" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +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)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio" version = "0.1.16" @@ -2192,6 +2886,17 @@ dependencies = [ "tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "tokio-dns-unofficial" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", + "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "tokio-executor" version = "0.1.6" @@ -2346,6 +3051,16 @@ dependencies = [ "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "twofish" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)", + "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", + "opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "twox-hash" version = "1.1.2" @@ -2401,6 +3116,15 @@ name = "unicode-xid" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "unsigned-varint" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + [[package]] name = "untrusted" version = "0.6.2" @@ -2426,6 +3150,11 @@ name = "vcpkg" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" +[[package]] +name = "void" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [[package]] name = "wasmi" version = "0.4.3" @@ -2492,22 +3221,65 @@ dependencies = [ "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "x25519-dalek" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "clear_on_drop 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", + "curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)", + "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "yamux" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +dependencies = [ + "bytes 0.4.12 (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)", + "nohash-hasher 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", + "quick-error 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", + "tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "zeroize" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" + [metadata] +"checksum aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d2e5b0458ea3beae0d1d8c0f3946564f8e10f90646cf78c06b4351052058d1ee" +"checksum aes-soft 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cfd7e7ae3f9a1fb5c03b389fc6bb9a51400d0c13053f0dca698c832bfd893a0d" +"checksum aesni 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2f70a6b5f971e473091ab7cfb5ffac6cde81666c4556751d8d5620ead8abf100" "checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5" +"checksum aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f10b352bc3fc08ae24dc5d2d3ddcac153678533986122dc283d747b12071000" "checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee" "checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" +"checksum asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9893d63fc3b1c44231e667da6836a33f27d8b6b3bdc82f83da5dfd579d1b6528" +"checksum asn1_der_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9e7f92edafad155aff997fa5b727c6429b91e996b5a5d62a2b0adbae1306b5fe" "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799" "checksum backtrace 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "cd5a90e2b463010cd0e0ce9a11d4a9d5d58d9f41d4a6ba3dcaf9e68b466e88b4" "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" +"checksum base-x 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d55aa264e822dbafa12db4d54767aff17c6ba55ea2d8559b3e17392c7d000e5d" "checksum base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5024ee8015f02155eee35c711107ddd9a9bf3cb689cf2a9089c97e79b6e1ae83" +"checksum bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ebecac13b3c745150d7b6c3ea7572d372f09d627c2077e893bf26c5c7f70d282" "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" "checksum bitmask 0.5.0 (git+https://github.com/paritytech/bitmask)" = "" +"checksum blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "91721a6330935673395a0607df4d49a9cb90ae12d259f1b3e0a3f6e1d486872e" "checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400" "checksum block-buffer 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1339a1042f5d9f295737ad4d9a6ab6bf81c84a933dba110b9200cd6d1448b814" "checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d" +"checksum block-cipher-trait 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1c924d49bd09e7c06003acda26cd9742e796e34282ec6c1189404dee0c1f4774" "checksum block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591" +"checksum bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0de79cfb98e7aa9988188784d8664b4b5dad6eaaa0863b91d9a4ed871d4f7a42" "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40" "checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" +"checksum byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0fc10e8cc6b2580fda3f36eb6dc5316657f812a3df879a44a66fc9f0fdbc4855" "checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb" "checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" "checksum cc 1.0.30 (registry+https://github.com/rust-lang/crates.io-index)" = "d01c69d08ff207f231f07196e30f84c70f1c815b04f980f8b7b01ff01f05eb92" @@ -2530,9 +3302,14 @@ dependencies = [ "checksum crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c240f247c278fa08a6d4820a6a222bfc6e0d999e51ba67be94f44c905b2161f2" "checksum crypto-mac 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "779015233ac67d65098614aec748ac1c756ab6677fa2e14cf8b37c08dfed1198" "checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" +"checksum ctr 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "022cd691704491df67d25d006fe8eca083098253c4d43516c2206479c58c6736" +"checksum cuckoofilter 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8dd43f7cfaffe0a386636a10baea2ee05cc50df3b77bea4a456c9572a939bf1f" "checksum curve25519-dalek 1.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1f8a6fc0376eb52dc18af94915cc04dfdf8353746c0e8c550ae683a0815e5c1" +"checksum data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f4f47ca1860a761136924ddd2422ba77b2ea54fe8cc75b9040804a0d9d32ad97" "checksum digest 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e5b29bf156f3f4b3c4f610a25ff69370616ae6e0657d416de22645483e72af0a" "checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c" +"checksum discard 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" +"checksum dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c4d33be9473d06f75f58220f71f7a9317aca647dc061dbd3c361b0bef505fbea" "checksum ed25519-dalek 1.0.0-pre.1 (registry+https://github.com/rust-lang/crates.io-index)" = "81956bcf7ef761fb4e1d88de3fa181358a0d26cbcb9755b587a08f9119824b86" "checksum either 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c67353c641dc847124ea1902d69bd753dee9bb3beff9aa3662ecf86c971d1fac" "checksum elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "073be79b6538296faf81c631872676600616073817dd9a440c477ad09b408983" @@ -2549,6 +3326,7 @@ dependencies = [ "checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" "checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" "checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b" +"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" "checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592" "checksum generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fceb69994e330afed50c93524be68c42fa898c2d9fd4ee8da03bd7363acd26f2" "checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" @@ -2575,6 +3353,23 @@ dependencies = [ "checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" "checksum lazycell 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b294d6fa9ee409a054354afc4352b0b9ef7ca222c69b8812cbea9e7d2bf3783f" "checksum libc 0.2.50 (registry+https://github.com/rust-lang/crates.io-index)" = "aab692d7759f5cd8c859e169db98ae5b52c924add2af5fbbca11d12fefb567c1" +"checksum libp2p 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-core-derive 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-dns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-floodsub 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-identify 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-kad 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-mdns 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-mplex 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-noise 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-ping 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-plaintext 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-ratelimit 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-secio 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-tcp 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-uds 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum libp2p-yamux 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum libsecp256k1 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "688e8d65e495567c2c35ea0001b26b9debf0b4ea11f8cccc954233b75fc3428a" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6" @@ -2588,8 +3383,10 @@ dependencies = [ "checksum mio-extras 2.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "46e73a04c2fa6250b8d802134d56d554a9ec2922bf977777c805ea5def61ce40" "checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" "checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" +"checksum multistream-select 0.3.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" "checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945" +"checksum nohash-hasher 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0d138afcce92d219ccb6eb53d9b1e8a96ac0d633cfd3c53cd9856d96d1741bb8" "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" "checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba" @@ -2597,12 +3394,19 @@ dependencies = [ "checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409" "checksum openssl 0.10.19 (registry+https://github.com/rust-lang/crates.io-index)" = "84321fb9004c3bce5611188a644d6171f895fa2889d155927d528782edb21c5d" "checksum openssl-sys 0.9.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cb534d752bf98cf363b473950659ac2546517f9c6be9723771614ab3f03bbc9e" +"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.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-multiaddr 0.2.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" +"checksum parity-multihash 0.1.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum parity-wasm 0.31.3 (registry+https://github.com/rust-lang/crates.io-index)" = "511379a8194230c2395d2f5fa627a5a7e108a9f976656ce723ae68fca4097bfc" +"checksum parking_lot 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4d05f1349491390b1730afba60bb20d55761bef489a954546b58b4b34e1e2ac" +"checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" "checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337" +"checksum parking_lot_core 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "4db1a8ccf734a7bce794cc19b3df06ed87ab2f3907036b693c68f56b4d4537fa" +"checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" "checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9" "checksum paste 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f50392d1265092fbee9273414cc40eb6d47d307bd66222c477bb8450c8504f9d" "checksum paste-impl 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a3cd512fe3a55e8933b2dcad913e365639db86d512e4004c3084b86864d9467a" @@ -2615,8 +3419,12 @@ dependencies = [ "checksum proc-macro-hack 0.5.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3e90aa19cd73dedc2d0e1e8407473f073d735fef0ab521438de6da8ee449ab66" "checksum proc-macro-hack-impl 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2b753ad9ed99dd8efeaa7d2fb8453c8f6bc3e54b97966d35f1bc77ca6865254a" "checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" +"checksum protobuf 2.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "24d5d73d2b88fddb8b8141f2730d950d88772c940ac4f8f3e93230b9a99d92df" "checksum pwasm-utils 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "efb0dcbddbb600f47a7098d33762a00552c671992171637f5bb310b37fe1f0e4" +"checksum quick-error 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5fb6ccf8db7bbcb9c2eae558db5ab4f3da1c2a87e4e597ed394726bc8ea6ca1d" +"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1" +"checksum rand 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)" = "64ac302d8f83c0c1974bf758f6b041c6c8ada916fbb44a609158ca8b064cc76c" "checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293" "checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9" "checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" @@ -2639,11 +3447,13 @@ dependencies = [ "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619" "checksum rustc-hex 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "403bb3a286107a04825a5f82e1270acc1e14028d3d554d7a1e08914549575ab8" "checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +"checksum rw-stream-sink 0.1.1 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)" = "" "checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7" "checksum safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f7bf422d23a88c16d5090d455f182bc99c60af4df6a345c63428acf5129e347" "checksum schnorrkel 0.0.0 (git+https://github.com/w3f/schnorrkel)" = "" "checksum schnorrkel 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a700659388785588c75b197cecda0f23c7112a9281ef703e8ffc651061ce014c" "checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" +"checksum secp256k1 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4070f3906e65249228094cf97b04a90799fba04468190bbbcfa812309cf86e32" "checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" "checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" "checksum serde 1.0.89 (registry+https://github.com/rust-lang/crates.io-index)" = "92514fb95f900c9b5126e32d020f5c6d40564c27a5ea6d1d7d9f157a96623560" @@ -2659,9 +3469,16 @@ dependencies = [ "checksum slog-json 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddc0d2aff1f8f325ef660d9a0eb6e6dcd20b30b3f581a5897f58bf42d061c37a" "checksum slog-scope 4.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "60c04b4726fa04595ccf2c2dad7bcd15474242c4c5e109a8a376e8a2c9b1539a" "checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" +"checksum snow 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "5a64f02fd208ef15bd2d1a65861df4707e416151e1272d02c8faafad1c138100" "checksum spin 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44363f6f51401c34e7be73db0db371c04705d35efbe9f7d6082e03a921a32c55" "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" "checksum static_assertions 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c19be23126415861cb3a23e501d34a708f7f9b2183c5252d690941c2e69199d5" +"checksum static_slice 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "92a7e0c5e3dfb52e8fbe0e63a1b947bbb17b4036408b151353c4491374931362" +"checksum stdweb 0.4.15 (registry+https://github.com/rust-lang/crates.io-index)" = "a3edad410e603184d656e2abded5fd4d3d6e93d5763d21130dbaf99795db74eb" +"checksum stdweb-derive 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0e21ebd9179de08f2300a65454268a17ea3de204627458588c84319c4def3930" +"checksum stdweb-internal-macros 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "1635afd059cbfac7d5b1274f0c44cec110c1e013c48e8bbc22e07e52696cf887" +"checksum stdweb-internal-runtime 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a2a2f4a2eb556337b2d1a302630bbddf989ae383c70393e89b48152b9896cbda" +"checksum stream-cipher 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8861bc80f649f5b4c9bd38b696ae9af74499d479dbfb327f0607de6b326a36bc" "checksum strum 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1810e25f576e7ffce1ff5243b37066da5ded0310b3274c20baaeccb1145b2806" "checksum strum_macros 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "572a2f4e53dd4c3483fd79e5cc10ddd773a3acb1169bbfe8762365e107110579" "checksum substrate-bip39 0.2.0 (git+https://github.com/paritytech/substrate-bip39)" = "" @@ -2674,9 +3491,11 @@ dependencies = [ "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f" "checksum tiny-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a1415431cb2398d84da64173f8473c792808314427d4a6f2f3ea85ae67239fe3" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" +"checksum tk-listen 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5462b0f968c0457efe38fcd2df7e487096b992419e4f5337b06775a614bbda4b" "checksum tokio 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "fcaabb3cec70485d0df6e9454fe514393ad1c4070dee8915f11041e95630b230" "checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" "checksum tokio-current-thread 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c756b04680eea21902a46fca4e9f410a2332c04995af590e07ff262e2193a9a3" +"checksum tokio-dns-unofficial 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "82c65483db54eb91b4ef3a9389a3364558590faf30ce473141707c0e16fda975" "checksum tokio-executor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "30c6dbf2d1ad1de300b393910e8a3aa272b724a400b6531da03eed99e329fbf0" "checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af" "checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926" @@ -2690,6 +3509,7 @@ dependencies = [ "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" "checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" +"checksum twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d261e83e727c8e2dbb75dacac67c36e35db36a958ee504f2164fc052434e1" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" "checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86" @@ -2698,10 +3518,12 @@ dependencies = [ "checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" "checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1" "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" +"checksum unsigned-varint 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2c64cdf40b4a9645534a943668681bcb219faf51874d4b65d2e0abda1b10a2ab" "checksum untrusted 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "55cd1f4b4e96b46aeb8d4855db4a7a9bd96eeeb5c6a1ab54593328761642ce2f" "checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737" "checksum vcpkg 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "def296d3eb3b12371b2c7d0e83bfe1403e4db2d7a0bba324a12b21c4ee13143d" +"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" "checksum wasmi 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21ef487a11df1ed468cf613c78798c26282da5c30e9d49f824872d4c77b47d1d" "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" "checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" @@ -2710,3 +3532,6 @@ dependencies = [ "checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" "checksum ws 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "329d3e6dd450a9c5c73024e1047f0be7e24121a68484eb0b5368977bee3cf8c3" "checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" +"checksum x25519-dalek 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4aca1ba6bec2719576bd20dfe5b24d9359552e616d10bff257e50cd85f745d17" +"checksum yamux 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "302defd1bed8a9a6d43b82f0e5a50510dfdfbbd02c270c93ff9d6f3f5e2dea89" +"checksum zeroize 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8ddfeb6eee2fb3b262ef6e0898a52b7563bb8e0d5955a313b3cf2f808246ea14" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index bb36c2cbf77fa7b65c3e11bbe5b2ed5db61de609..99d7ba970e32b872994228170d5c74f714dcbc1c 100644 GIT binary patch delta 80358 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 diff --git a/srml/metadata/src/lib.rs b/srml/metadata/src/lib.rs index 3f40753006..fc8516f775 100644 --- a/srml/metadata/src/lib.rs +++ b/srml/metadata/src/lib.rs @@ -261,7 +261,8 @@ pub enum StorageFunctionType { Map { key: DecodeDifferentStr, value: DecodeDifferentStr, - } + is_linked: bool, + }, } /// A storage function modifier. @@ -301,8 +302,10 @@ pub struct RuntimeMetadataPrefixed(pub u32, pub RuntimeMetadata); pub enum RuntimeMetadata { /// Unused; enum filler. V0(RuntimeMetadataDeprecated), - /// Version 1 for runtime metadata. - V1(RuntimeMetadataV1), + /// Version 1 for runtime metadata. No longer used. + V1(RuntimeMetadataDeprecated), + /// Version 2 for runtime metadata. + V2(RuntimeMetadataV2), } /// Enum that should fail. @@ -322,10 +325,10 @@ impl Decode for RuntimeMetadataDeprecated { } } -/// The metadata of a runtime version 1. +/// The metadata of a runtime version 2. #[derive(Eq, Encode, PartialEq)] #[cfg_attr(feature = "std", derive(Decode, Debug, Serialize))] -pub struct RuntimeMetadataV1 { +pub struct RuntimeMetadataV2 { pub modules: DecodeDifferentArray, } diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index af9c794270..1ab10c4e3f 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -700,12 +700,13 @@ fn store_functions_to_metadata ( ) } }, - DeclStorageTypeInfosKind::Map { key_type, .. } => { + DeclStorageTypeInfosKind::Map { key_type, is_linked } => { let kty = clean_type_string("e!(#key_type).to_string()); quote!{ #scrate::storage::generator::StorageFunctionType::Map { key: #scrate::storage::generator::DecodeDifferent::Encode(#kty), value: #scrate::storage::generator::DecodeDifferent::Encode(#styp), + is_linked: #is_linked, } } }, diff --git a/srml/support/src/metadata.rs b/srml/support/src/metadata.rs index d61dbe4352..7f10b1136e 100644 --- a/srml/support/src/metadata.rs +++ b/srml/support/src/metadata.rs @@ -16,7 +16,7 @@ pub use srml_metadata::{ DecodeDifferent, FnEncode, RuntimeMetadata, - ModuleMetadata, RuntimeMetadataV1, + ModuleMetadata, RuntimeMetadataV2, DefaultByteGetter, RuntimeMetadataPrefixed, }; @@ -36,8 +36,8 @@ macro_rules! impl_runtime_metadata { ) => { impl $runtime { pub fn metadata() -> $crate::metadata::RuntimeMetadataPrefixed { - $crate::metadata::RuntimeMetadata::V1 ( - $crate::metadata::RuntimeMetadataV1 { + $crate::metadata::RuntimeMetadata::V2 ( + $crate::metadata::RuntimeMetadataV2 { modules: $crate::__runtime_modules_to_metadata!($runtime;; $( $rest )*), } ).into() @@ -377,8 +377,8 @@ mod tests { event_module2::Module with Event Storage Call, ); - const EXPECTED_METADATA: RuntimeMetadata = RuntimeMetadata::V1( - RuntimeMetadataV1 { + const EXPECTED_METADATA: RuntimeMetadata = RuntimeMetadata::V2( + RuntimeMetadataV2 { modules: DecodeDifferent::Encode(&[ ModuleMetadata { name: DecodeDifferent::Encode("system"), diff --git a/srml/support/src/storage/generator.rs b/srml/support/src/storage/generator.rs index d76e5f62df..a0586963b7 100644 --- a/srml/support/src/storage/generator.rs +++ b/srml/support/src/storage/generator.rs @@ -667,6 +667,12 @@ mod tests { GETMAPU32MYDEF get(map_u32_getter_mydef): map u32 => String = "map".into(); pub PUBGETMAPU32MYDEF get(pub_map_u32_getter_mydef): map u32 => String = "pubmap".into(); + // linked map + LINKEDMAPU32 : linked_map u32 => Option; + pub PUBLINKEDMAPU32MYDEF : linked_map u32 => Option = Some("hello".into()); + GETLINKEDMAPU32 get(linked_map_u32_getter): linked_map u32 => String; + pub PUBGETLINKEDMAPU32MYDEF get(pub_linked_map_u32_getter_mydef): linked_map u32 => String = "pubmap".into(); + COMPLEXTYPE1: ::std::vec::Vec<::Origin>; COMPLEXTYPE2: (Vec)>>, u32); COMPLEXTYPE3: ([u32;25]); @@ -806,8 +812,10 @@ mod tests { StorageFunctionMetadata { name: DecodeDifferent::Encode("MAPU32"), modifier: StorageFunctionModifier::Optional, - ty: StorageFunctionType::Map{ - key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("String") + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: false, }, default: DecodeDifferent::Encode( DefaultByteGetter(&__GetByteStructMAPU32(PhantomData::)) @@ -817,8 +825,10 @@ mod tests { StorageFunctionMetadata { name: DecodeDifferent::Encode("PUBMAPU32"), modifier: StorageFunctionModifier::Optional, - ty: StorageFunctionType::Map{ - key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("String") + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: false, }, default: DecodeDifferent::Encode( DefaultByteGetter(&__GetByteStructPUBMAPU32(PhantomData::)) @@ -828,8 +838,10 @@ mod tests { StorageFunctionMetadata { name: DecodeDifferent::Encode("MAPU32MYDEF"), modifier: StorageFunctionModifier::Optional, - ty: StorageFunctionType::Map{ - key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("String") + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: false, }, default: DecodeDifferent::Encode( DefaultByteGetter(&__GetByteStructMAPU32MYDEF(PhantomData::)) @@ -839,8 +851,10 @@ mod tests { StorageFunctionMetadata { name: DecodeDifferent::Encode("PUBMAPU32MYDEF"), modifier: StorageFunctionModifier::Optional, - ty: StorageFunctionType::Map{ - key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("String") + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: false, }, default: DecodeDifferent::Encode( DefaultByteGetter(&__GetByteStructPUBMAPU32MYDEF(PhantomData::)) @@ -850,8 +864,10 @@ mod tests { StorageFunctionMetadata { name: DecodeDifferent::Encode("GETMAPU32"), modifier: StorageFunctionModifier::Default, - ty: StorageFunctionType::Map{ - key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("String") + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: false, }, default: DecodeDifferent::Encode( DefaultByteGetter(&__GetByteStructGETMAPU32(PhantomData::)) @@ -861,8 +877,10 @@ mod tests { StorageFunctionMetadata { name: DecodeDifferent::Encode("PUBGETMAPU32"), modifier: StorageFunctionModifier::Default, - ty: StorageFunctionType::Map{ - key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("String") + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: false, }, default: DecodeDifferent::Encode( DefaultByteGetter(&__GetByteStructPUBGETMAPU32(PhantomData::)) @@ -872,8 +890,10 @@ mod tests { StorageFunctionMetadata { name: DecodeDifferent::Encode("GETMAPU32MYDEF"), modifier: StorageFunctionModifier::Default, - ty: StorageFunctionType::Map{ - key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("String") + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: false, }, default: DecodeDifferent::Encode( DefaultByteGetter(&__GetByteStructGETMAPU32MYDEF(PhantomData::)) @@ -883,14 +903,68 @@ mod tests { StorageFunctionMetadata { name: DecodeDifferent::Encode("PUBGETMAPU32MYDEF"), modifier: StorageFunctionModifier::Default, - ty: StorageFunctionType::Map{ - key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("String") + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: false, }, default: DecodeDifferent::Encode( DefaultByteGetter(&__GetByteStructPUBGETMAPU32MYDEF(PhantomData::)) ), documentation: DecodeDifferent::Encode(&[]), }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("LINKEDMAPU32"), + modifier: StorageFunctionModifier::Optional, + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: true, + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructLINKEDMAPU32(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("PUBLINKEDMAPU32MYDEF"), + modifier: StorageFunctionModifier::Optional, + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: true, + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructPUBLINKEDMAPU32MYDEF(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("GETLINKEDMAPU32"), + modifier: StorageFunctionModifier::Default, + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: true, + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructGETLINKEDMAPU32(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("PUBGETLINKEDMAPU32MYDEF"), + modifier: StorageFunctionModifier::Default, + ty: StorageFunctionType::Map { + key: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("String"), + is_linked: true, + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructPUBGETLINKEDMAPU32MYDEF(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, StorageFunctionMetadata { name: DecodeDifferent::Encode("COMPLEXTYPE1"), modifier: StorageFunctionModifier::Default, -- GitLab From 489f91fee629110378de5fb4e755cab642f863ca Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Sat, 23 Mar 2019 11:18:01 +0100 Subject: [PATCH 070/120] Version bump (#2095) --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c744835520..319b9c4cda 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3595,7 +3595,7 @@ dependencies = [ [[package]] name = "substrate" -version = "0.10.0" +version = "0.11.0" dependencies = [ "ctrlc 3.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/Cargo.toml b/Cargo.toml index d1dbbe3305..b6eac3e381 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,7 +4,7 @@ path = "node/src/main.rs" [package] name = "substrate" -version = "0.10.0" +version = "0.11.0" authors = ["Parity Technologies "] build = "build.rs" edition = "2018" -- GitLab From f7b9a62177ace98cf35711ed35f2180dbc7ed8f4 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Sat, 23 Mar 2019 11:18:14 +0100 Subject: [PATCH 071/120] Rename ensure_free_balance_is to make_free_balance_be (#2092) --- srml/balances/src/lib.rs | 4 ++-- srml/contract/src/account_db.rs | 2 +- srml/staking/src/tests.rs | 32 ++++++++++++++++---------------- srml/support/src/traits.rs | 2 +- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index 775d83e33b..68044a3898 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -644,7 +644,7 @@ where who: &T::AccountId, value: Self::Balance, ) -> Self::PositiveImbalance { - let (imbalance, _) = Self::ensure_free_balance_is(who, Self::free_balance(who) + value); + let (imbalance, _) = Self::make_free_balance_be(who, Self::free_balance(who) + value); if let SignedImbalance::Positive(p) = imbalance { p } else { @@ -653,7 +653,7 @@ where } } - fn ensure_free_balance_is(who: &T::AccountId, balance: T::Balance) -> ( + fn make_free_balance_be(who: &T::AccountId, balance: T::Balance) -> ( SignedImbalance, UpdateBalanceOutcome ) { diff --git a/srml/contract/src/account_db.rs b/srml/contract/src/account_db.rs index e7dc144161..1ea763800a 100644 --- a/srml/contract/src/account_db.rs +++ b/srml/contract/src/account_db.rs @@ -122,7 +122,7 @@ impl AccountDb for DirectAccountDb { for (address, changed) in s.into_iter() { let trieid = >::get_or_create_trieid(&self, &address); if let Some(balance) = changed.balance { - let (imbalance, outcome) = balances::Module::::ensure_free_balance_is(&address, balance); + let (imbalance, outcome) = balances::Module::::make_free_balance_be(&address, balance); total_imbalance = total_imbalance.merge(imbalance); if let UpdateBalanceOutcome::AccountKilled = outcome { // Account killed. This will ultimately lead to calling `OnFreeBalanceZero` callback diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index 86b583fab8..f1ca3cbc03 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -105,7 +105,7 @@ fn invulnerability_should_work() { // Make account 11 invulnerable assert_ok!(Staking::set_invulnerables(vec![11])); // Give account 11 some funds - let _ = Balances::ensure_free_balance_is(&11, 70); + let _ = Balances::make_free_balance_be(&11, 70); // There is no slash grace -- slash immediately. assert_eq!(Staking::offline_slash_grace(), 0); // Account 11 has not been slashed @@ -134,7 +134,7 @@ fn offline_should_slash_and_kick() { // Test that an offline validator gets slashed and kicked with_externalities(&mut ExtBuilder::default().build(), || { // Give account 10 some balance - let _ = Balances::ensure_free_balance_is(&11, 1000); + let _ = Balances::make_free_balance_be(&11, 1000); // Confirm account 10 is a validator assert!(>::exists(&11)); // Validators get slashed immediately @@ -164,7 +164,7 @@ fn offline_grace_should_delay_slashing() { // Tests that with grace, slashing is delayed with_externalities(&mut ExtBuilder::default().build(), || { // Initialize account 10 with balance - let _ = Balances::ensure_free_balance_is(&11, 70); + let _ = Balances::make_free_balance_be(&11, 70); // Verify account 11 has balance assert_eq!(Balances::free_balance(&11), 70); @@ -205,8 +205,8 @@ fn max_unstake_threshold_works() { with_externalities(&mut ExtBuilder::default().build(), || { const MAX_UNSTAKE_THRESHOLD: u32 = 10; // Two users with maximum possible balance - let _ = Balances::ensure_free_balance_is(&11, u64::max_value()); - let _ = Balances::ensure_free_balance_is(&21, u64::max_value()); + let _ = Balances::make_free_balance_be(&11, u64::max_value()); + let _ = Balances::make_free_balance_be(&21, u64::max_value()); // Give them full exposure as a staker >::insert(&11, Exposure { total: 1000000, own: 1000000, others: vec![]}); @@ -301,7 +301,7 @@ fn rewards_should_work() { // check the balance of a validator accounts. assert_eq!(Balances::total_balance(&11), 1000); // and the nominator (to-be) - let _ = Balances::ensure_free_balance_is(&2, 500); + let _ = Balances::make_free_balance_be(&2, 500); assert_eq!(Balances::total_balance(&2), 500); // add a dummy nominator. @@ -446,7 +446,7 @@ fn staking_should_work() { assert_eq!(Staking::bonding_duration(), 2); // put some money in account that we'll use. - for i in 1..5 { let _ = Balances::ensure_free_balance_is(&i, 2000); } + for i in 1..5 { let _ = Balances::make_free_balance_be(&i, 2000); } // --- Block 1: System::set_block_number(1); @@ -635,7 +635,7 @@ fn nominating_and_rewards_should_work() { // give the man some money let initial_balance = 1000; for i in [1, 2, 3, 4, 5, 10, 11, 20, 21].iter() { - let _ = Balances::ensure_free_balance_is(i, initial_balance); + let _ = Balances::make_free_balance_be(i, initial_balance); } // record their balances. @@ -719,7 +719,7 @@ fn nominators_also_get_slashed() { // give the man some money. let initial_balance = 1000; for i in [1, 2, 3, 10].iter() { - let _ = Balances::ensure_free_balance_is(i, initial_balance); + let _ = Balances::make_free_balance_be(i, initial_balance); } // 2 will nominate for 10 @@ -879,7 +879,7 @@ fn cannot_transfer_staked_balance() { assert_noop!(Balances::transfer(Origin::signed(11), 20, 1), "account liquidity restrictions prevent withdrawal"); // Give account 11 extra free balance - let _ = Balances::ensure_free_balance_is(&11, 10000); + let _ = Balances::make_free_balance_be(&11, 10000); // Confirm that account 11 can now transfer some balance assert_ok!(Balances::transfer(Origin::signed(11), 20, 1)); }); @@ -921,7 +921,7 @@ fn cannot_reserve_staked_balance() { assert_noop!(Balances::reserve(&11, 1), "account liquidity restrictions prevent withdrawal"); // Give account 11 extra free balance - let _ = Balances::ensure_free_balance_is(&11, 10000); + let _ = Balances::make_free_balance_be(&11, 10000); // Confirm account 11 can now reserve balance assert_ok!(Balances::reserve(&11, 1)); }); @@ -1029,7 +1029,7 @@ fn validator_payment_prefs_work() { // check the balance of a validator's stash accounts. assert_eq!(Balances::total_balance(&11), validator_initial_balance); // and the nominator (to-be) - let _ = Balances::ensure_free_balance_is(&2, 500); + let _ = Balances::make_free_balance_be(&2, 500); // add a dummy nominator. // NOTE: this nominator is being added 'manually', use '.nominate()' to do it realistically. @@ -1101,7 +1101,7 @@ fn bond_extra_works() { assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000, active: 1000, unlocking: vec![] })); // Give account 11 some large free balance greater than total - let _ = Balances::ensure_free_balance_is(&11, 1000000); + let _ = Balances::make_free_balance_be(&11, 1000000); // Call the bond_extra function from controller, add only 100 assert_ok!(Staking::bond_extra(Origin::signed(10), 100)); @@ -1134,7 +1134,7 @@ fn bond_extra_and_withdraw_unbonded_works() { assert_ok!(Staking::set_bonding_duration(2)); // Give account 11 some large free balance greater than total - let _ = Balances::ensure_free_balance_is(&11, 1000000); + let _ = Balances::make_free_balance_be(&11, 1000000); // Initial config should be correct assert_eq!(Staking::sessions_per_era(), 1); @@ -1232,8 +1232,8 @@ fn slot_stake_is_least_staked_validator_and_limits_maximum_punishment() { assert_eq!(Staking::stakers(&21).total, 2000); // Give the man some money. - let _ = Balances::ensure_free_balance_is(&10, 1000); - let _ = Balances::ensure_free_balance_is(&20, 1000); + let _ = Balances::make_free_balance_be(&10, 1000); + let _ = Balances::make_free_balance_be(&20, 1000); // We confirm initialized slot_stake is this value assert_eq!(Staking::slot_stake(), Staking::stakers(&11).total); diff --git a/srml/support/src/traits.rs b/srml/support/src/traits.rs index 30f441fd21..144e8af772 100644 --- a/srml/support/src/traits.rs +++ b/srml/support/src/traits.rs @@ -355,7 +355,7 @@ pub trait Currency { /// /// Returns a signed imbalance and status to indicate if the account was successfully updated or update /// has led to killing of the account. - fn ensure_free_balance_is( + fn make_free_balance_be( who: &AccountId, balance: Self::Balance, ) -> ( -- GitLab From 64f5e92ccee9bbeb75c3004323344eccf1a0f848 Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Sat, 23 Mar 2019 12:40:43 +0100 Subject: [PATCH 072/120] Reduce grandpa interval for substrate node (#2097) --- node/cli/src/service.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index 64f191dc4b..bd1b89f0e6 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -106,7 +106,7 @@ construct_service_factory! { grandpa::Config { local_key, // FIXME #1578 make this available through chainspec - gossip_duration: Duration::new(4, 0), + gossip_duration: Duration::from_millis(333), justification_period: 4096, name: Some(service.config.name.clone()) }, -- GitLab From 56332a83910f21cef4663c316dafe1317c213f3c Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Sat, 23 Mar 2019 12:44:35 +0100 Subject: [PATCH 073/120] Don't print dozens of the times the handler init warning (#2089) --- core/network-libp2p/src/custom_proto/handler.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/network-libp2p/src/custom_proto/handler.rs b/core/network-libp2p/src/custom_proto/handler.rs index 6f083b8dbd..516130602e 100644 --- a/core/network-libp2p/src/custom_proto/handler.rs +++ b/core/network-libp2p/src/custom_proto/handler.rs @@ -488,9 +488,11 @@ where ProtocolState::Init { substreams, mut init_deadline } => { match init_deadline.poll() { - Ok(Async::Ready(())) => + Ok(Async::Ready(())) => { + init_deadline.reset(Instant::now() + Duration::from_secs(60)); error!(target: "sub-libp2p", "Handler initialization process is too long \ - with {:?}", self.remote_peer_id), + with {:?}", self.remote_peer_id) + }, Ok(Async::NotReady) => {} Err(_) => error!(target: "sub-libp2p", "Tokio timer has errored") } -- GitLab From 6ade23c26e492bb2fd83b36d94ec963a97acc72c Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Sun, 24 Mar 2019 11:29:29 +0100 Subject: [PATCH 074/120] Properly distinguish in/out connections in the PSM (#2102) --- core/peerset/src/lib.rs | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/core/peerset/src/lib.rs b/core/peerset/src/lib.rs index 2f39b96a94..74444a2c38 100644 --- a/core/peerset/src/lib.rs +++ b/core/peerset/src/lib.rs @@ -31,14 +31,18 @@ pub struct Peerset { struct Inner { /// List of nodes that we know exist but we are not connected to. + /// Elements in this list must never be in `out_slots` or `in_slots`. discovered: Vec, /// List of reserved nodes. reserved: HashSet, /// If true, we only accept reserved nodes. reserved_only: bool, - /// Node slots. Each slot contains either `None` if the node is free, or `Some` if it is - /// assigned to a peer. - slots: Vec>, + /// Node slots for outgoing connections. Each slot contains either `None` if the node is free, + /// or `Some` if it is assigned to a peer. + out_slots: Vec>, + /// Node slots for incoming connections. Each slot contains either `None` if the node is free, + /// or `Some` if it is assigned to a peer. + in_slots: Vec>, } /// Message that can be sent by the peer set manager (PSM). @@ -111,7 +115,8 @@ impl Peerset { discovered: config.bootnodes.into_iter().collect(), reserved: Default::default(), reserved_only: config.reserved_only, - slots: (0 .. (config.in_peers + config.out_peers)).map(|_| None).collect(), + out_slots: (0 .. config.out_peers).map(|_| None).collect(), + in_slots: (0 .. config.in_peers).map(|_| None).collect(), }; alloc_slots(&mut inner, &tx); @@ -147,10 +152,15 @@ impl Peerset { return; } + // Nothing more to do if we're already connected. + if inner.out_slots.iter().chain(inner.in_slots.iter()).any(|s| s.as_ref() == Some(&peer_id)) { + return; + } + // Assign a slot for this reserved peer. - if let Some(pos) = inner.slots.iter().position(|s| s.as_ref().map(|n| !inner.reserved.contains(n)).unwrap_or(true)) { + if let Some(pos) = inner.out_slots.iter().position(|s| s.as_ref().map(|n| !inner.reserved.contains(n)).unwrap_or(true)) { let _ = self.tx.unbounded_send(Message::Connect(peer_id.clone())); - inner.slots[pos] = Some(peer_id); + inner.out_slots[pos] = Some(peer_id); } else { // All slots are filled with reserved peers. @@ -176,7 +186,7 @@ impl Peerset { // Disconnect non-reserved nodes. if reserved_only { - for slot in &mut inner.slots { + for slot in inner.out_slots.iter_mut().chain(inner.in_slots.iter_mut()) { if let Some(peer) = slot.as_ref() { if inner.reserved.contains(peer) { continue; @@ -201,7 +211,7 @@ fn alloc_slots(inner: &mut Inner, tx: &mpsc::UnboundedSender) { return; } - for slot in inner.slots.iter_mut() { + for slot in inner.out_slots.iter_mut() { if slot.is_some() { continue; } @@ -226,12 +236,12 @@ impl PeersetMut { /// peerset is already connected to, in which case it must not answer. pub fn incoming(&self, peer_id: PeerId, index: IncomingIndex) { let mut inner = self.parent.inner.lock(); - if inner.slots.iter().any(|s| s.as_ref() == Some(&peer_id)) { + if inner.out_slots.iter().chain(inner.in_slots.iter()).any(|s| s.as_ref() == Some(&peer_id)) { return } - if let Some(pos) = inner.slots.iter().position(|s| s.is_none()) { - inner.slots[pos] = Some(peer_id); + if let Some(pos) = inner.in_slots.iter().position(|s| s.is_none()) { + inner.in_slots[pos] = Some(peer_id); let _ = self.parent.tx.unbounded_send(Message::Accept(index)); } else { if inner.discovered.iter().all(|p| *p != peer_id) { @@ -247,6 +257,7 @@ impl PeersetMut { /// `PeerId`, or accepted an incoming connection with this `PeerId`. pub fn dropped(&self, peer_id: &PeerId) { let mut inner = self.parent.inner.lock(); + let inner = &mut *inner; // Fixes a borrowing issue. // Automatically connect back if reserved. if inner.reserved.contains(peer_id) { @@ -255,9 +266,10 @@ impl PeersetMut { } // Otherwise, free the slot. - for slot in inner.slots.iter_mut() { + for slot in inner.out_slots.iter_mut().chain(inner.in_slots.iter_mut()) { if slot.as_ref() == Some(peer_id) { *slot = None; + break; } } @@ -266,7 +278,7 @@ impl PeersetMut { if inner.discovered.iter().all(|p| p != peer_id) { inner.discovered.push(peer_id.clone()); } - alloc_slots(&mut inner, &self.parent.tx); + alloc_slots(inner, &self.parent.tx); } /// Adds a discovered peer id to the PSM. @@ -276,7 +288,7 @@ impl PeersetMut { pub fn discovered(&self, peer_id: PeerId) { let mut inner = self.parent.inner.lock(); - if inner.slots.iter().any(|p| p.as_ref() == Some(&peer_id)) { + if inner.out_slots.iter().chain(inner.in_slots.iter()).any(|p| p.as_ref() == Some(&peer_id)) { return; } -- GitLab From 9ac6770ca492f4991a62d7bc1f93cad4f828be57 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Sun, 24 Mar 2019 11:29:45 +0100 Subject: [PATCH 075/120] Fix hardcoded values in the PSM config (#2103) --- core/network-libp2p/src/service_task.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index b8cf445d64..bd4ff45440 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -73,8 +73,8 @@ where TMessage: CustomMessage + Send + 'static { // Build the peerset. let (peerset, peerset_receiver) = substrate_peerset::Peerset::from_config(substrate_peerset::PeersetConfig { - in_peers: 25, - out_peers: 25, + in_peers: config.in_peers, + out_peers: config.out_peers, bootnodes, reserved_only: config.non_reserved_mode == NonReservedPeerMode::Deny, reserved_nodes, -- GitLab From a9bc6ee3c1713ac9f4100cc95359cdcadeb74361 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Sun, 24 Mar 2019 11:48:54 +0100 Subject: [PATCH 076/120] Always accept incoming connections (#2101) --- .../src/custom_proto/behaviour.rs | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index 7893501df5..979273939d 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -563,7 +563,7 @@ where match (self.peers.entry(peer_id), connected_point) { (Entry::Occupied(mut entry), connected_point) => { match mem::replace(entry.get_mut(), PeerState::Poisoned) { - PeerState::Requested => { + PeerState::Requested | PeerState::PendingRequest { .. } => { debug!(target: "sub-libp2p", "Libp2p => Connected({:?}): Connection \ requested by PSM (through {:?})", entry.key(), connected_point); debug!(target: "sub-libp2p", "Handler({:?}) <= Enable", entry.key()); @@ -573,21 +573,6 @@ where }); *entry.into_mut() = PeerState::Enabled { open: false, connected_point }; } - PeerState::PendingRequest { timer } => { - debug!(target: "sub-libp2p", "Libp2p => Connected({:?}): Connection \ - requested by PSM (through {:?}) but node is banned", entry.key(), - connected_point); - debug!(target: "sub-libp2p", "Handler({:?}) <= Disable", entry.key()); - self.events.push(NetworkBehaviourAction::SendEvent { - peer_id: entry.key().clone(), - event: CustomProtoHandlerIn::Disable, - }); - *entry.into_mut() = PeerState::DisabledPendingEnable { - open: false, - connected_point, - timer, - }; - } st @ _ => { // This is a serious bug either in this state machine or in libp2p. error!(target: "sub-libp2p", "Received inject_connected for \ -- GitLab From 5a463bba8e8b59050f78d5606682e273fcb7c617 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Sun, 24 Mar 2019 11:49:38 +0100 Subject: [PATCH 077/120] Directly connect if notice that ban has expired (#2100) --- .../src/custom_proto/behaviour.rs | 34 ++++++++++++------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index 979273939d..796ff32af1 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -332,15 +332,33 @@ impl CustomProto { }; match mem::replace(occ_entry.get_mut(), PeerState::Poisoned) { - PeerState::Banned { until } => { + PeerState::Banned { ref until } if *until > Instant::now() => { debug!(target: "sub-libp2p", "PSM => Connect({:?}): Will start to connect at \ until {:?}", occ_entry.key(), until); *occ_entry.into_mut() = PeerState::PendingRequest { - timer: tokio_timer::Delay::new(until), + timer: tokio_timer::Delay::new(until.clone()), }; }, - PeerState::Disabled { open, connected_point, banned_until: None } => { + PeerState::Banned { .. } => { + debug!(target: "sub-libp2p", "PSM => Connect({:?}): Starting to connect", occ_entry.key()); + debug!(target: "sub-libp2p", "Libp2p <= Dial {:?}", occ_entry.key()); + self.events.push(NetworkBehaviourAction::DialPeer { peer_id: occ_entry.key().clone() }); + *occ_entry.into_mut() = PeerState::Requested; + }, + + PeerState::Disabled { open, ref connected_point, banned_until: Some(ref banned) } + if *banned > Instant::now() => { + debug!(target: "sub-libp2p", "PSM => Connect({:?}): Has idle connection through \ + {:?} but node is banned until {:?}", occ_entry.key(), connected_point, banned); + *occ_entry.into_mut() = PeerState::DisabledPendingEnable { + connected_point: connected_point.clone(), + open, + timer: tokio_timer::Delay::new(banned.clone()), + }; + }, + + PeerState::Disabled { open, connected_point, banned_until: _ } => { debug!(target: "sub-libp2p", "PSM => Connect({:?}): Enabling previously-idle \ connection through {:?}", occ_entry.key(), connected_point); debug!(target: "sub-libp2p", "Handler({:?}) <= Enable", occ_entry.key()); @@ -351,16 +369,6 @@ impl CustomProto { *occ_entry.into_mut() = PeerState::Enabled { connected_point, open }; }, - PeerState::Disabled { open, connected_point, banned_until: Some(banned) } => { - debug!(target: "sub-libp2p", "PSM => Connect({:?}): Has idle connection through \ - {:?} but node is banned until {:?}", occ_entry.key(), connected_point, banned); - *occ_entry.into_mut() = PeerState::DisabledPendingEnable { - connected_point, - open, - timer: tokio_timer::Delay::new(banned), - }; - }, - PeerState::Incoming { connected_point, .. } => { debug!(target: "sub-libp2p", "PSM => Connect({:?}): Enabling incoming \ connection through {:?}", occ_entry.key(), connected_point); -- GitLab From 2f13520554672afb05c26ffd6061eadbd3685a15 Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Mon, 25 Mar 2019 11:28:35 +0100 Subject: [PATCH 078/120] CLI option to enable authoring when offline (#2104) * CLI option to enable authoring when offline * Update core/service/src/config.rs Co-Authored-By: arkpar --- core/cli/src/lib.rs | 2 ++ core/cli/src/params.rs | 4 ++++ core/consensus/aura/src/lib.rs | 22 +++++++++++++++++++--- core/service/src/config.rs | 3 +++ core/service/test/src/lib.rs | 1 + node-template/src/service.rs | 1 + node/cli/src/service.rs | 1 + 7 files changed, 31 insertions(+), 3 deletions(-) diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index 1868d79d74..dd47fb73bd 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -470,6 +470,8 @@ where config.telemetry_endpoints = Some(TelemetryEndpoints::new(cli.telemetry_endpoints)); } + config.force_authoring = cli.force_authoring; + Ok(config) } diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index d84f202501..21ceafa20f 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -325,6 +325,10 @@ pub struct RunCmd { #[allow(missing_docs)] #[structopt(flatten)] pub keyring: Keyring, + + /// Enable authoring even when offline. + #[structopt(long = "force-authoring")] + pub force_authoring: bool, } /// Stores all required Cli values for a keyring test account. diff --git a/core/consensus/aura/src/lib.rs b/core/consensus/aura/src/lib.rs index e2c1091f14..3a9bfd971a 100644 --- a/core/consensus/aura/src/lib.rs +++ b/core/consensus/aura/src/lib.rs @@ -160,6 +160,7 @@ pub fn start_aura_thread( sync_oracle: SO, on_exit: OnExit, inherent_data_providers: InherentDataProviders, + force_authoring: bool, ) -> Result<(), consensus_common::Error> where B: Block + 'static, C: Authorities + ChainHead + Send + Sync + 'static, @@ -176,7 +177,13 @@ pub fn start_aura_thread( Error: ::std::error::Error + Send + From<::consensus_common::Error> + 'static, { let worker = AuraWorker { - client: client.clone(), block_import, env, local_key, inherent_data_providers: inherent_data_providers.clone(), sync_oracle: sync_oracle.clone(), + client: client.clone(), + block_import, + env, + local_key, + inherent_data_providers: inherent_data_providers.clone(), + sync_oracle: sync_oracle.clone(), + force_authoring, }; aura_slots::start_slot_worker_thread::<_, _, _, _, AuraSlotCompatible, _>( @@ -199,6 +206,7 @@ pub fn start_aura( sync_oracle: SO, on_exit: OnExit, inherent_data_providers: InherentDataProviders, + force_authoring: bool, ) -> Result, consensus_common::Error> where B: Block, C: Authorities + ChainHead, @@ -215,7 +223,13 @@ pub fn start_aura( OnExit: Future, { let worker = AuraWorker { - client: client.clone(), block_import, env, local_key, inherent_data_providers: inherent_data_providers.clone(), sync_oracle: sync_oracle.clone(), + client: client.clone(), + block_import, + env, + local_key, + inherent_data_providers: inherent_data_providers.clone(), + sync_oracle: sync_oracle.clone(), + force_authoring, }; aura_slots::start_slot_worker::<_, _, _, _, AuraSlotCompatible, _>( slot_duration, @@ -234,6 +248,7 @@ struct AuraWorker { local_key: Arc

, sync_oracle: SO, inherent_data_providers: InherentDataProviders, + force_authoring: bool, } impl SlotWorker for AuraWorker where @@ -287,7 +302,7 @@ impl SlotWorker for AuraWorker 1 { + if !self.force_authoring && self.sync_oracle.is_offline() && authorities.len() > 1 { debug!(target: "aura", "Skipping proposal slot. Waiting for the network."); telemetry!(CONSENSUS_DEBUG; "aura.skipping_proposal_slot"; "authorities_len" => authorities.len() @@ -808,6 +823,7 @@ mod tests { DummyOracle, futures::empty(), inherent_data_providers, + false, ).expect("Starts aura"); runtime.spawn(aura); diff --git a/core/service/src/config.rs b/core/service/src/config.rs index d61f5a2384..e7503d0ad2 100644 --- a/core/service/src/config.rs +++ b/core/service/src/config.rs @@ -68,6 +68,8 @@ pub struct Configuration { pub telemetry_endpoints: Option, /// The default number of 64KB pages to allocate for Wasm execution pub default_heap_pages: Option, + /// Enable authoring even when offline. + pub force_authoring: bool, } impl Configuration { @@ -93,6 +95,7 @@ impl Configuration ( rpc_ws: None, telemetry_endpoints: None, default_heap_pages: None, + force_authoring: false, } } diff --git a/node-template/src/service.rs b/node-template/src/service.rs index ae98d01de4..5f1a375181 100644 --- a/node-template/src/service.rs +++ b/node-template/src/service.rs @@ -73,6 +73,7 @@ construct_service_factory! { service.network(), service.on_exit(), service.config.custom.inherent_data_providers.clone(), + service.config.force_authoring, )?); } diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index bd1b89f0e6..b65dbc7444 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -97,6 +97,7 @@ construct_service_factory! { service.network(), service.on_exit(), service.config.custom.inherent_data_providers.clone(), + service.config.force_authoring, )?); info!("Running Grandpa session as Authority {}", key.public()); -- GitLab From 98f12f1971edc4aaac5ee3f07f4e1d6869793151 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Mon, 25 Mar 2019 14:48:43 +0100 Subject: [PATCH 079/120] Forgot to handle Banned in inject_connected (#2107) * Forgot to handle Banned in inject_connected * Also add debug for the state --- core/network-libp2p/src/custom_proto/behaviour.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index 796ff32af1..fa5b1a3b72 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -571,7 +571,8 @@ where match (self.peers.entry(peer_id), connected_point) { (Entry::Occupied(mut entry), connected_point) => { match mem::replace(entry.get_mut(), PeerState::Poisoned) { - PeerState::Requested | PeerState::PendingRequest { .. } => { + PeerState::Requested | PeerState::PendingRequest { .. } | + PeerState::Banned { .. } => { debug!(target: "sub-libp2p", "Libp2p => Connected({:?}): Connection \ requested by PSM (through {:?})", entry.key(), connected_point); debug!(target: "sub-libp2p", "Handler({:?}) <= Enable", entry.key()); @@ -584,7 +585,7 @@ where st @ _ => { // This is a serious bug either in this state machine or in libp2p. error!(target: "sub-libp2p", "Received inject_connected for \ - already-connected node"); + already-connected node; state is {:?}", st); *entry.into_mut() = st; return } -- GitLab From 9feab5c970b3e2acb99c6252db356638bfe5e28d Mon Sep 17 00:00:00 2001 From: thiolliere Date: Mon, 25 Mar 2019 15:19:15 +0100 Subject: [PATCH 080/120] impl MakePayment for balances instances (#2055) --- .../substrate_test_runtime.compact.wasm | Bin 56678 -> 56646 bytes node/runtime/src/lib.rs | 2 +- .../release/node_runtime.compact.wasm | Bin 924346 -> 923647 bytes srml/balances/src/lib.rs | 2 +- 4 files changed, 2 insertions(+), 2 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 1c6e8d555fc03c53ad023fe27d37cd96f1ba8697..6c7778e9ff926d4bcfd99ff14bf3c78ec0d1963c 100644 GIT binary patch delta 2682 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 k9BYk3>`Xv>}e5lclQY`MK&9*`KKWoMx(s z)t{*MIj@(5Y7$=^Rj;R;TE`F;gEa7&dV}Dff;J+cixy9Ps&;ms$co}bh0oLxPJzuO z^A7&pu2S~x@aO7;nC0h*R`wNW;_x?Wl34hani#z2IK~bIgCBjVKC4g-_kX3%3e^6?nVzcXbL-{Ppi@d>q^GMDU!d^(XB1*0ulO^?F^Kh}Siuvr$7|`KJHNQCvX&my612?()0)>3HTmlGikj>uN~Vc{Nm>(v zQQmAUzDXBqverKQW=OKujBcJu)^<~hy3$3UlGX_~!FMWY!(`2}lJ2RR9CBo>Cf-fe zMp1qMC&7_#P`HseS=p`;HyOf8)7}nM8?0VMOQCJ3ROq;qn!)Q#ZCG*d57p9+(JMJP zM>4e_-AKIPO_bQ4r7aA-Mt_S%5* z;Pl$%svsl$K)~z5xy3ksY_5pwP(GX;H5$!!WSIoOgIR{Q74CnfYa%<)a zUq`Kn<&2G_4`)+D654~5_rne2m2mE~;q*%MX1TV9ZqbET=86@lro8StBvsvMKFf75 zqPs-b#JsB_us z=XFN)=OV!PWvZ4-pZ%5%RLNZ6Fg?{<8Inioh>~Xyrqv;z?Gulr?+TX zoUQ&|@PXQkFxxf`)ZRie;dX7LvN!nE?OL2d+uVM=Lu-x78Vu5UVaLtXLD~U&+G8;E zCZuBrYqZU7$zUh<>N~Z)Jy(AZv*w&C)!lz{ZP;46wF(kb2G%$aeE%gCdDVIG`Vh#Z z{i4!ch#kJ5h>|8lw3<#YFS6%x=@UovkTz|VHaUK0h{B*CDi~d!+ zPg~Aboe%E5Pg};YCG55bAuN?If}=+Vu8U1GL%@i?+WlhE z-&#yCdzCg#kuNrUWWN|84o`@#6r8vkv;xI=!wWz-dOz?*Er{DnFKKs^_B``t?O^g= zfNr>~T`oZH0UVxuL-Fkm=C9Xk>Bxii`V28?zg8)@Z;SRfX>vV_w4~r?+n{lWZia5x zPI|z3@aB(rq+LGIW+$MXBPX?m3fs%X`$x4@QSh8rUu^hMn}=d;e$qZc#!9EOzhXHB z6l&s1P^&81yoVv&`MdU@ICKHAc6-H{3);uBXLH}t+R&Sk;_w#KONdKRWyB-`br>(k^Rh8HFnRpqe#bA;*MYvDZXpEH!oweY{!R zbXn^|^XH|@+A~#FzAA%|q8vHD?A5lU0!EPlTp;ecqAj7Em#=7(ubFeP;D=+vXBUVu z3QtzniCGG7lK#+E*+8_@z@J-W1JTsL*)8Iz!uJF2=NO+|U808eNdWj2(yJl^9;J++ z&R|(e5j|9%R4EqTUg?h{pG&x>9`T^cQv*8alIJPC;YdWZy1j2hfrHS_OAoN@5L&OW zbHESo3FV-L#Q93Dx=XrSXcrLLreEmR6n`nfSz#~gdBZJ)N?R)evH^J0?W!Zdq(T^w zIOk2+X@vEsEHsy^uAr?)cK@lr;noW5*5bo^Lm)HlR}2|^JgP->%Hx^hckHphMu(eGUnFlt*; zWMuteL@S~j=ioKsG0yvzr6f(~?HNe7tB!RL5acwScL9MN)Ol-q?2Y2RE3C(kwhr*Q zDHdH>X$aCE8^!OfS3YCE%2SaP&EKHe9L-@5t`bLM_zl!xuW7LrMT=P8M>!On7t3ce zIxQsC%N3f7X>t5pB{`zT4=*_C5?E`pkAKGEK{k1csbXy$>}TutC5e1K$o}y}-Yhh) zLScZ;3}p5U{5Fw4F59QWBOb2Evk}42;yBJ? zg;<-!>qNfk2`SVfnb*Y$8bgzL$Fv0s7$7)dbvVsRY{rG>^qpk>n{1ZOjCsEjZv+Xl zOz>0;ksU%99GJ?tDwHKTjemrPD}IYj6}$@X#=csH-X)9tDtrxaQz4z7CLFO0UPxT| z9fKE1jR>Lx^C}vVWQDZp=f8t$sZQi5IyT@wt z|0>T1$JXKZtIDe2PxW~RmF+tu8aLv1R-(XcTFb@WKx|aOY8%jpusE^45t!XRv9}SY zUH_*V@%qqm(i-zerIL=*Cwhqr&3FOKu%ckC9PX$7cFE=IDihu!-{O{8 zhZT&kc)c~Bp{y0wbzGik^4=nzAr@W7C*xU#HheG=cUxYYM)TP=d|1S7Zd<+-w};#E zS$0w{6Z1H`^!DvYjVUw@gl9CbABu66YcSyWPK>Kc#64e}d4S&{HjL&i!en}RG{4=U zuo`fN(`s6lYl|Hi8>(Yn=oYV5iKoW!#gWBR#Ks3fefNyz6z#fcEQqj3+%gUmr%22l z$43HN7sl~Hl^`Uej9BXgv~riV1=ImA_DGP&nDIOxSw9=kGm&T$z-Nj?j|o&hSTKR7 z61tb&!+TH#$&iy&L5!>byB1Kvl8L-BvZPJq8&UAUL<~@oI6aZ~Mv`|gpMWHIFRzE> z+k1I8B#rOmIG0D9qohb|y`R@W^4b0TRwOwO@TdO~g$v7cKhHs-@J!;ht2pT6jsSMh z#|g8mMDIylmj8YdMtHs$JsCZmDtd8D=4U5ke(e+=O$IvwWym9a#&qItQGW`*rBP^@ zp}Qe0J93=LZ3tr~?&uL+QM@;WAG|h5!2s{8JTBr2c)Nx;FF;0^Vx2*A+6f0OhuU#y zN_J?zc&LCcDg$nU_-hf56E{tTUf}euXLwFDmT+g#GM=pH=z6^B9(|&%qo-f9;Kzp8BoKcy^>x2e1)M&{* z9GcH>5R0bqc2v>rvv^f;VH&>?N7rvL| zgVBk%j70sNWvTDlRN+ux72)s94_zBvZx=~@cXr{8ynAd;BS~S0c&-b7vl(|K-c+d&TH(`~zpO#BJSqGv6<# zi{Jl%Ynmp>VtaS~LOMbY$rlQS^L_4-s_+a4Y@Vkrs0X$dRxQNy{Aw-gY_IYaqXc{X@Ca`Izuu+`<17 z%7+s&dL+g5^I)t@-AK@CB%*3oO^>7wvX7}nBt}I1aHab@k9B2>1W<95w3DFB3$Lf z+X6`JF3t|+T?im~++43=ytVRUaNaO*sDCI7OpXg>2_ey`Um_9p1BrvHo(7)kxpu(R zppzFADOMHI5Us<6uPY=|M{>cQep|$j;)5u?dlbJxIgP`Tcom4yqoeo;J5xo` z?`~eNLRoBxPoPls& zNGLb)l~h(L>cN}%;t(GS=`|&FqhWo~Rb*Fg=J%oH2X2l~=C|L>8`H6Qj4avcJQ!v6 zv3bx(VdCK)yDEJ9MO;6=wIpvn)DOyu!&}u`xE11X62u*%*DZFNIJmNYFy&VM1ZqSWz4fxjxF<`6uls# z=JOl~g6rnq_%Vt>mKLrP{WzW(egEwowf`3qlD8#3;1JDb_Ohj zP?gvqq)46TyM_OvB&9^_yXq5Y&o|6$oIuG=%v>6f(Q@nTONc;tRj zxgDw_)EuBR*+|({G*-7u!L@lc>iD)E{hN$A&9h;>1ZdRDx40(L+#GZflr#U|4gBEk?L0|UWuED>?)37%V)nv;U9`1Wb3O(8MtSZl~iiuy;Mm3V#n8NRS)LHN-12Rc}NS=QQP!);PbyS;} zvkt0dQShU6Ft3%uVCD7Pt3(w+5Jls7&5U)tmbhtyEVg0vIdbng0 zp9zcj&<;LS{IZEZjrtya1uu%kzE}83z_@8M?^6*ldW;GePc%j0^hLj-9;3->^+W< zC~@jNX||^y?}N?+8n^bmSiC_X#HX$`T( zVNQqQ-hY_m;9qh2Fy=s^h<~3aR{<_lpm`L;AW+X*j$h4sAm1NtF&ZlCeay~6vHX2V zV^GuwkpD%Z?+1K@Y?eeZ>2?yZ_dkGEQ6$_)`29#`9O2{3;wbt<-V86T5BXeFci=RyeSlK9^;gR8&g-y;T2JoW=TjD^A1e}F{9?bkoT z4}>B z8GKYsJ3&oD#@mYfw=ebXO`zv@UDmaU|R4D44<<*e%I15*flWW;o%+f-! z_beaoH2VU4|8Om!+19^Fyvy47Ie`DJsCSO9L-tS4VVa<)zsqVT{w}Ls_B%K2YAGn| z%6VQxv_21;_Fcr;N+%^AZN;0d7x*hkZn?ruG3TPBx+@pu4C(v_SpB;q>QC_4LUH4t ze4L#xOPu~w62$Jm(6R1+Ns!|%@htJ|U(gT=1)kr41dlq}cUdBEN%s7uOS}gj{dGxZ z==8VDF#m7as(zV|OQQ*?S@9jb7D)CYrW{;^2;z|kYA?LZt9dB{vtGcIRDAD>w=T=E zlD%tq1vrr%8I8F@wg{@(O-|%e^?Y-M5VSa2AFdQ`9jCWZ%Ak6eqHh6_+{5&H74|L@ zz8O);LeumF<=tSirq=-F1Y2?aMg{1Zuj`MX+4LyA1@8Jq=`>@$j?!O8@=Ub;G_qb7 zqd!bp_s8m+P{Sm*zB#f@PCjOFomc-U0uYXU|AnGioc~5~x3_3sLGKgMTB0QEqRMgJ3Mr!>flqsE~$DFNr2na^f|cwF-@<5+n}$ieyclW z=j5s!DmcTR7wWiZs+O=JXm zCOe@5MMzJoemcml%uvW0C<jcAjp4k8WJw}BV}PRg_44sSt{rmBPN z&^9Dm@pAHEEmUq@iiTRFWPyOh>AINy`$W5XdgD7!LG_he2jM{pUm8%hzoDKf4#5FW zz95Wt9s3c;c1KU}wp?Q0MQ6E@u*X}6*m1bKUNMyjJP%vGSX=ss43dh;C?J0>h9dL` zDUAy-U}H488#XIphJebkUo4U)`&lopMQcg2HSvD7o|s6jlvh9I$TjN6JE|YUfs-T@ z>!K5lk#{o6jJj%1oed$8JuQD)8?f}6!oqsUj4jdeGBj0odiQFeCw4{0iC7(U%Y8Af z(DW_?ggw1!uY_EcmzV=moXIUVHPEX@m|KyT%Xc^{tK}MIkvXRdU$&l-S?>5d=aEKY zMUH<`@%V=Z;@^!u=5G08f0QV#V)57~*kfP1_TJYV`B&NCMI7G^+t28PDS1WBb%eU;)8hzUonrB4NS!%O2_8E(k+S`U|`^br64qD7e#Ow3*nC2wrP!kwzv7Ey_i8x!-g4H1+IUdiz z^l5()sFLKAc)E$6VzWwO`P-?Me z@i34C3kB!12fQIgEdYWvbz%RQ0H0lL1kNr?ej8qf>%QG=+O|iukb|8rmd| zp7WZj)GBE01c6_)jnh^pB=4c8*x?D-kdW#SehO8L_SM@81)esCn^0!J*K?eGy6_@O zM`UJZiXxq2lwTM->|^?CtEj=S+YD6e|&uOGKBFYNbVe@kF4{ zC)k=9_0XwV4lMO8@;(|zHhLnOmWp9W!zM~FND=YJ)7OHc;4;kUh6JPt#S&G=8)2B_ zBh>B-ALd}^0@@P7F>s)YEOjYVt~MK&VfV zJ@Dm6-qGiM!gySY9j21Fq&jD7zLMjSHxOh^av|W`7-r=lEQR!5@)lyCX|_a{m@Ray zgDp)`LhVS|QVfGF$s%B&_CWfIz28-8{DisiAOs4?Oeh`%G6~2+iI1qG0OAeEvJ2Y- z5={dV4aX)1gx*lQP>w?fY1j|2h!cuFv>!k%4jon?hoV5u4UlY=5K86N;W;ups+APr zoJ2|cFcsSR4RCDBCBz}IBQj)IoS;kUf@4?!lQ1moNm+moPC9RCG7);Q4py#pfoh_` zAOMCUR<l{`^6 zmN=FqNf)^qrFlVpwxbW_Gaym1@I?w5B_d4uP}&zundsb7Pghhiw547*;PSn$V9k67 zVSr{3`iLFiVPfoL&3<>63rE7pw^GPC#;DJz5J~Z!!ul$jEJ1!9ypR+UyV^K2(c&g4 zW;F7AoS77`48#rD_eQ=+?a(XaOv&?^sm^V5K0f>tj}QNR=rXHVDP}s(D649{_{}bt znUQChhLvfWmTvlS46|9y@|e|8j)v2dZ`QD~&6-X%I0&ScRoBdPZgE0IR=|ofYg>w0 z2OqVmYqc`#SxwCPR&}!h*ciUh;e$L!=yN>p;$uA4TP}Qz=Q9^R#naEs%gZ#|S6gKNr}IL9@T^R(@Vg3$Q0k5p8eKXNk!>cuau4`e51T z&_huq0?URs9i*2T>8W55#L>@M^Ca4_ZMkcxhK_w_>z=m$8MY+D>_0X1Ww){xmE$mh z7K!y%IRmh#Cj`gTf`S5^PEE{`j=>!oQZo9{iO3mrRsCIB^nqeHF+0m({-5i@S!;BT zQdijXHvkjmLQ43$%5bLHJb}oftj$JY5K^;3#pP+RZ-ShpV%3#mM&T^_Mm2FhakSYD z&~(2VG&_j6h&hzRTUo3Tqqd@@{3rYLUqjQaJ^6hkG~KUipnO13l(Z$KUQ=f5Sli-% zMy$8F+daN1Y$9W(I4oLL(k_Gdw;Jz8=klKv@5~E zz9W3ql)IjG-~&x^o7~jh0X)1GKf-4Y5 zTB(dSu=YUF1PUdRf5C?**+?aa>yYd%)7xF7m`H!5)FvcTqi#X<2(gop(j1|~(xU)L zcW)VG3aYA+4oFd_iH_OPs~g^x(K?}^gf*dCSC;D;=Nd<(T#vJeP|Qy{i>;8P;Ibxq zNT5LJ(5SmoHO382CQEj{5rVrCY6dc1kI}^(hK}(+P%SX>L>#0>g^1$>T|tSUUuaRg zaVvR`Y6Q|cc&p(t%q1hms3HT%uMS0sN0!lZB7M~KVF+n5U<4xYf0A6-k$NmWh^|;x zkyVF@dgJvpf~*<3ph`V8(Sgy1PrbE=0!|@OO0Hgm>2f z8(AvM6JRN#>jAZskzrIt=BtlDXflENBNzFWZ3BcRbTGg=~~K77+E z->4kEX^umPWObW&`nz+Qu`)E-hNtpf<5bar%~L(_}U^D zAIOMA9Rz;?b2w^wBmhGbYO*|**kVStu}0&LAp;U8&`2X)u2rFaa3iA*8Rj~*&r00|Xr$QNUI@uH}my5{Mj*+c)Ab+D5H+9D1%s(*Q7%MPd-r&qM z6{X^cFuOn7pP&PKwBYOoS%p+qXhATS~{qqF52;XFruokZJv^~x}O4Zm$rliY}= zFQ!qO73o zD^Bkr?Y1^FV_K1;3VnINOu{%XCX}qdI$}ns{>ny0I=o7u1XLc%tNPwj$Q=<977_Es zwh_a#Mdk=YMr0A1G#I~HMnIl4_y4MEMxBVR6+=tZoFI>YtBXkn!?}i>coZuaIP|WZ zWueV5MYb#o1&!_u-C~vnool16Q4g~O)zm~a4*Kz78KZtNl2s$K82zfzAUrV8PxaD_ zQZ<|fUuh28iu5&wgz8I2Jva)T6tf7f3#OZE=ii7DGMubFs9`yOcb42hI&9XJ#k5(geXBiHL}Z*gpG`bMxh6Cf9B8l}SP}(IjV9%_6wy%GrfhZkY8{8RE<5ff)fwx7(pwAcpc&#jc6TLW z5e=wM!ee^b*r+4t6jpY9Zv(&ZxiF)Soa;DSmSKk)CXfSqKw`g)bL3wuE*-s1J=mb& zlMKUp#%*A|kb}5G|NE|i?%t0)q@ZKB6~I&YgJ~_h-$XJb zN#N;5H}Je0Cy)}*Ck>nnYAUJx{cyk}P(ZI4z4p^Wqd%%QBFp>YbpL)hT$1d9n<2p3F>J_ea2zM>^l_2hO1 z(S@94`Wk$!9o<8{j6U1O?AGzks19^J!LJ1*l5uG7%YL08aZ5-#7;Xm=Y6MXT~`K!OL)0FPto*-b}bUDA(QP`n1UH4(jLJ;3a`p(HFipv{b8ZNMlBl2p8F^s1 zsW>fvbaTpwT`Mpc%NRLtkdf0}mhWblx7Sm{T8s0g1SewVYA%-k;d7f6;tBnRl)FfY z&e~lxdh~`zpk&ph7AQ;Chzh|_iTwXZ7C)>8$)dmw!(C#LijTE@IhX?ZL;uP95z%ni znFe2406h+i2nZM_`p6LxAWsqzAut9+&>3;e0oXic^Z<2CG6qaC^u8EITb0<0TIEU> zeB#p1mg}0-dl_~^vmZ2wl`B=;HADAhwj;9`fi|7I?XZ+8H;QFL_fqrCfifSKwm29- zv{*3%QD6ha&KY_wB;U`_YpMhB*fXosP$m5ZuPc|!X63D7XGB69?m`(bgfxsexZJCIqR1c8pUMD3(N^Y2xNGQLe+=_L(S5dVMh}o9 zX1c}HIeIcE;<4F!WgNq~b~Y9t(HSFF4yJVxf_spCc@CFOSkxI@%EQO8z=O;FwjPdk zbNg#s*j5#x9aE50tZ~OA>b~YtC1}OamILCyfYA&{or9or0R1=6(W%xn(Mm!W299tg z2Ztoh8gC*^EjcEMj!kCIJ~_*pc(Vzk_=^ec#fr8EzO~PwnKHw%CGprCG zUkoM$s->fYK_30Be)<0X&XPD`JI3w=R4U9nKSo*JQ{Uu*W=sU?^T0Sj1TF(p9aMmG z;t6PDU~vc?tvVtK&UDtc$Q~hOjqG#KR#LJJ9@X-ng8J>mSjL!0ocPQlb%fG8(}KPnyTnwbH?j+^zx6 zVYmqXSHX>73r?g)z^==VZgf^n5oI13seu#vp;=1g{Tt|F!q7R98vR42iestJh}rTT zv{J*tcx33M^w<*Kot09Aw9I`p6sb`XH&9UJh|$t0x+GEZZz47R4W@0}f}mx^ChH0A z4t9cJAw}9I6s>He2Hw~fpr4fx-=#P`C{BD;Gb(YU^r4`Tlrp{;(laAzqTITi@0^CD zhOKCT2+Li9K;2T>mlSGOQve(r5#j?M9?OJag%mLKhbX3!wtU(T@)Y?1C&d?c*0{r# zrbzl(&POUs14xQ!mbf)rcb6Y{Hyv6zP+P8+;*${^^mz_%Z3@xvhC~JvIg{J5Y$b>Y z0i`fgJKPJDLGf}YX>t?)#dR^$2nFle%n7lw*SqLtY$Q*@Jv=S~q(*?vM?I9zR*aGZ z?0iR;`dl`QtkfK!Icqc)Y z!^VK`n?t0zvBp18E@4?eASA@R3-5P9vl@zY1=3*M9IR@+AW3k3P4lC^AQLX^Y2**}Wz+%rJi%xDg?~(m7Ct@k+ zUf}#bs$9!A??*a6fQtuk@d(lftypss7GNf$$teUm{`#Zo_MVoG!Die^jBqeasS#Ln zV)ANAzPwSve)<~&d*F0Y2|GRqikJ({_YPr&)+z?{hJhu)Glm8o_0J!7OC>M2Hl@*<;AvgoKm5?ai-TYkiX5*0G4 zzcCU54aTKMhj_olo<`>0a`>|bbU;| zkzf4DYG9JSrxE&OHC<12K3Q#yHpW5#1|Tu(0eKp}Sq<92P!MB8xsr?#ImX$qr1uPL zkg^nitV<4Z1d}wz(9Q<9c856_9798DOu&zC1z{D@FGINxyIp zuGWFla6zxR-)5^1z^bQur2h;QGJ<^1587JzUB*ynr6F(^QO{8PI1lb3;u?yd@cnqY zA0N6`j7cRJa%r*#MK^}Q3Z?>k#%761o`(25FtfpUI)q-`Nz&>hExQHsF?a7AVXLM1 z$gEUD?T^e#q$88v1>b)1It-DVNvdc>E2K%{HHBC@i)a#^c1X7Dx$h+^hUE)^L##mh z7?=_|K>!#c5z^0czD8bJPL?OgQHPY-r6dU<8@x%vE#Kq*1o(8MLRHI9nj(ko<%OCM zAUaV<#N(3-I0=CWjTR1}okO|7M8YJ&i@cwIdgzVQOXW&#bl$G%tqX|2d{70_{9WJ! zuu#0G{02(*$#5p>@Wau^P9*C9Sa=ZSuoWqHyW5ljQ!G$Q>LOB}x=}*tVz3BEskW2U zE`|{Bg=q}>exy9d0RUP#brn}-BQ{{qvCxQ>t72V6gDE>QfGiU4`0zH-8EJD8oyA&F z0k#qrz=e|l{L_2M?(DWp)=HbNBA1jE`eGZM{9>g!;a)AB^t{Wth=}QO`QF9Z!lt^H|8hF2B&lqF3}g}AL0p#pG)P1w8w@%- zq9etDxmgHyv1~Ec(IT2zacGYnCbA6|;B>4^wI3D-l2C_ae@?7&I(gMn5ls|d8d#8p zHx3&2eVM$p#A|0oz@CTGmqOY@1CaU*JQ<|cAc2c2l*sRkFgqus zgCr0JN{$6ez_uvS6r{m9%k)*Wow5E?`rFD(@!L~+SK4PRPnEgxX}yy2UU0}wK)L>>H!15E8a8=E5|Uf)DYbgiuXiB1jN@MiL}=)~v9yz3 z)kWL+-j4xfy=n{ieYQa~DoS~0`?HD1(#J?>`FRjxVw=4g2vY3 zOD7WlkJN|!ys{6~nOl#b$~w&VZE5X2m_hqAT)5%`z|LRR0JJfVjsOqtMx@M8_!w7x zsciC&kC)Ev=jdp*4J?j@^ILhI>Dt&iP>B1bnXgMGeWLUrVX3SXFl}qSTR=7OQq@eY z#RQ_~HA*zzbm)|9&QPYOkpulvG)|uEa#Z&x!GW;Paa5NI9Hs`Qz{WCp&gPE=VmgW1 zK++-Oz{v`cCd6r4fC|Kc$PxS9k3e$@g9r@CCayHhq-}J#C#cx@Ii!Q^jfEDEI4416 zAfYL&J&$)b1u!KItBaEZK3VELBgbmFF{iiuHO4IV#6p-r%zEWdg(_0leHLY5L$PGC z_a=9IvNY|IR7+ISZpXgcG2O0+^WBJxUGW-Maqb#DF*iYPINgJ&wE}(Rte6L33()hH`@@yp77|#n9rF5gNW?s$0>tx*&kKr09Fy-0WdDCwoby3&W z=Vf_=5kt)xJgJ>mS2E-5ypl(`_Fy*&Af|lG&@wuqNm1B1x%(_Vsu1Wp-U{8<^diAN zr(?_7dOemh-lq}jKo~#539Ery{-*=;L#tpknt+>lEDas`j*OQ0^Qn`jYt57*F0t$p$eFo8t_E3ERqA z;n&o?ru)xE|2st;S|+d4KR$7&aw1|I#{ii`kqKF#23$O2hXXg{T|BK`@x`-X1)N^9 z)T!P3vp{WkvAXpEdL`R~e4B*WIL38qH%8{(0Nps-$k%v3r-gFeGE>y@sZ#8+U$^!( z#k14?*oK2V)aj2u*EQcC>-Sh7S$~T3C-D7AmBV;2?JAC>4C-a`m^U`n)*AB~6X1JQ z4^409*ENJME5F*2D$_x{hez2Lso&<{)1^Stb~5Q<<+T!L>8XDZ1d5rqYnv*wK%{0H zi@^hxLGG}2gO2T7O>WSjE0-iOTeumC`)=0bqQc(b$ig5iH*+Y{p_Aown094~s2(lfr)V6EGjn&(I3;J_mVLQ+uB%HLp^d+p`S2UNe zKCJGsl+Wi<9?F`yr;$kgg^%h&S=A32@|R-WH&FdhxHYU`l+uSxhqB>>{vZTsU?{wm zl?^7%+{}wFrVtaREj}CN)0G%_PlW(SSw4BI1C+e7LO)Q? z{Xv@hQ*vv5eCc53X#IdMl}LpP>dBn_o+cBXvap^EpIxEu4Kavig)8aL(<(T`_;fj9 zHmtvd$OJ`oFpdWI5v&#WGhAyecwKyuFVE=WMLcQ(vzXtXu&}!XpX1W%DBf~aRHUMm z&Y-zP!Y(^JjHf(}RSqT<+~!lUl@1{l(50zvk)CQPMEkLmP_2 zcnCZN?%)(9neYSxhh#}PJ{o2yV;E>4O<;M`6a4%%q0TY$(uD3>R>aer!PD2aAGcJN z)jPDH-rI%l&|HruW{@Su9FL~Vu^Z;tt3%qF-P{v9rU(!FQa0f{+>BA4`C@5G#4#NF zzciWoPo<9^Z6k*df~wBEl{gev1ni|}=S?a(meChLEec0gilSp$h0T(tFO`lz|52mg zp!!E6XL>P~oE^L4N8+X2LN!Wcm@Wd~2TA71d!5CGAzNX2g1{ti-P~p2(+B`JXIc1^ zEGnIEklg*H($NHLC69fnG<^m`1HG{jpvUf!c-S3c;qZ%+_{*h}f~CntUoK6nDHGr? zaQ%cch#50_?$;Vz#Z%k9CKhebz-R{vST77K18yk;t>h#m#Iw{5DiIka0DC&D3>ru( zcGA;90uGC0bZKSbu%u}hXDKX7D!WRD9>13}?tQMrA%Glk^LbEJOWkn#G-yz^>OF)c z89kGM+eOKHc9mYzwXxAw?qlXg-V&1lsP2^*oWLr4E-P#%$N@|Orhc|d zxLZB^Zcmon4+cFW>)kjy1=Ihl$>lAsL%qc{e^p1Po9_;l#WlZfaY0j=#l>T-VR9Wr zp`6K8S)#ra*t;JeN>0x3stlz$eH^kpznU|@D&iy=VDqao!1lAh=6C-Qx*rO+HCL9e z>X?iCuHl0*DTK^Ff`csBz-JUsaOF`1k~aJ(!5FYQn>tlisYEetNv>r?437RcwmT3ROCL+q*6Tdt16`AISL6RHxcF+u)r9A1OyAb(1NLlkOGU0{ zq%kKn6V?V{m3x<^7Rr#C^fLLz*YRW@g+7YUa>wY$>S4@>jZ|Jn2@U_S#=PVqUJo6q zygbc0bZpK+Bb8UAIS18q)VX~$XtoD>p90jv)FfP?|1oiDh0!K=xONYjG@?Csgc{8( zCnS{48b5+RW7613cm&%Cvov>vJ$YdV_^mR{QC2W6DIps%8P>P>Y;_FUJBQtshOVP! z(96`(Tm?12Q3%Ww+u&*z1>>{Z+*xa~#HO2WWbxu(0o`*EjqtV+j015h8Twh_p4xw|qO)U~`^ zoxNNa@P-AH>DtTZ6=s`%=klS@sj)%wucz*JQE({itGqjaK3_-t*?R&+%B$Ns1?kQp z-We2uy5zotlqaz0AVLWGVU#$ug_EZ`*L5a{kzlmy;j91?G553=e_<}#381lAk#I{KiH_jGH8}v?PPpl zT!scYpo}}lWoV2`$*8%%AD5$U4(gNlH!}4459uq+!`lv<gc^Tx5KRr;* zA~D&sFRkwav$TADN>jrdO+Yo$1hv{Ft~91X!T8d~Y*UPaTg5oon1<)A8l^Fi_b_U{ z^%D%#bWX{rZB9AtHl;N$bQh&hfxEcg8a9yoSdHd3x!0zNgZ0rZbr+;*18!sbRC1T3 zPtESq^vOE%5F!TpvuDk90lPg*^hnla6T;N4*Id!t^-Zo;*s>PpMHY>Shd&4ZOW(Rr z(=UF|z(M;I;yi7>XHdK-hrS&tw1;!pQ<|{Cj^(V6X#NbN8A!|kp&VzLZ1M)Bp-(bW zr1{z$`jjU0U6Mne(u6)Dlk1HrP1w8B+r)CdG0*~e!e>Sjb zzXNlGB7w6R)-I?I`Mml-8<-rd<9TTvkpp#9mFlQ!MgV1R5#Q%f-a*Ly<%2tW_qPZ1!3?Xk#Ib*gAg7Tu8wJQ|AaN`zKlN> z1{2VWD|jGo6J5)&-B+OhIN%hNFM!DY^yCWnut{2!?T^_H!k;r|@ceJVI-Pp%enJnF zK5BrYhI|Fubp6x7?IMvMdbg!mndk23^=Ej3?EBNIXQ7**WF0<Xz8`%~q z`KhipIlYyPh01u_*o>E`rpjXFyuFd5S_>~V>AIa!3{?j1cJBzUg_@HPYF;5~?sxAD zPvMa-Y1LDZI@1mIwQav?+7B zq-g%IO*RkPTfAadZARUmp)LYtn1NdD+%Cl0`r{mxspfp1xIyPQO-Vw4Cxay(-5?u|@n?qdABvMNBhE@cCX4fz0IxqpjA_s^b zNcD>lND;|oDV}8BolEiL;`8CR{l*XQjB08?X~5mZxCYF#Rd6?lXF^&{ZdpT^eFq3qzAelUh@ok2{YafwevG<`w-ttA57L6vQ<=lb-|37zZ!-f`O61y z<`e_YJ|it9@NGOm;q;D09eLdH%X+MGJ$Iao25Fr)DPq#e7UCdM#j?3Kh1F9NY+K&@! zk3e9Boh#C%YP5_#us7TT zvu|j;;#`;BRi1fe7;@_TyKi@?Z~7v4YX~nD6{0Sbxd(ORhP%wYDf#X0(yE$P#DX@q z??4LP!zkG?=mV|XqGjP$-m4tcVEz+@bfxRkvhEBj-QbMPci{>~ut@v<{p7RS{CWVB zN8|~H$bKR61lJEcGv4KXJroM(#HMzq$msi29Ux_yl;jgT2HL>yst(uA!_qWB`-}gb z{OU)g!)9giYt`(5Q3iHWMt}M{oE-P#(ifAz{J7Mrov(YWb9(|Qcxm6C2krr$>;ctX z`K4)N;l1O4dhuV%Fi;^LzH7EX%#ycgi6Vjfl1;rb148AfxL==C`qR^|U@Nr7K7sa^ zJfSbLnkqPd9RJR&z^?+eCP$vynrFbPF>Pke=c|=vLDnvolCO~Upo-nU(91`xn?K^| z-vca)|KM5zjD)Fe)kkW7#MwJvk@Lcp;p^3%&4nN=Hlz4nCA;og-;C-Dat@qR<-lont5$cMYG^r2#3VP(2^X;d&|f(h-e~n}0XTG8;N|$NHVUk# zfa=FLG?Qvk*nMm@aVM&y>RI-LbIQ`>&4$S2y2e7Z6(7`yGzvBv)f`a}J)fD{K7o62 zYH|lUfX*y#+hFS`#34NCEKNXhX~Q{rh99EJnW~% z?gx{H_FyTBo%-!GxWK(N6XBL$>?oy-fH9JOzKs(8>mus=4W6iEq{;{9c{8g_MSY4I zD|QsK$_BH_-b{&Fqqe_!uG&;KUz_eMFlfM$eq_21vQZiPZbk1CcTGjp%4*g(*jt2m z3lb^Vt@3r0cdE#zP&PjYdoC60}BP@(JLvKXBD%&E2L(J>SvJ>qaX4 zeGdr-v@e8?mCeiy=wjpBBgzQNS&waa5FwL_t)ywHC8dYFyqq6g(4NRuKn555TaZKA z$JAqNn8LmacSgzKg1o9R`;j8QMrxSkYsMz4vZYGrA)77nYLCe5v?FRiE_nP1h?);+ zj)J$dqVxa6`2Fr}*0CC9@9FlonHf1^#tp;!!*{#4b2C}d-7a6i>6$$)bnn0yKv7x3 z#xm5zhwlvV#H9u?qASbsHt|Al6C)4?-LR}*%hnRB9urush6d>u_N^va#;`lfzr}7+ z;OH_x=?seEb?1!;Eww8UCH;V}?*FlRVPl3}&>+>;7{qqA&x3f~FDT$DHE#@H+FXQP zth7G&H6gdi{M+iN^q<;+p1~sNcVCp_qJLrG3a?D>Q$hO96q^ZwQ3)tOOt0mt`F^2e zF;!yG$eQAbzt_5^(W`Sa^%}cf*)vP~`KqJ@_>ja3KR<&SJM*(~v|rFZtBp&a?YjYb z_a8PIkW;Y7KKj*fgYrfIN;l;g?NmYW?iSxsTBlw4w)<@ub)N#-8dJhnqSOv!sK|46 zO|I{Bor4%s15pSaTagAafPRNtZ3GffqHVy-yn_0_3S81#D!ySx!PgB?s@0eL7A1#O z@|%qeUhQ~q$o-d$*=G9RhE|*0KZ{mvsiEI}Ct$5XU(%Skp-InFr{{uw=*(QA{capd zs?$y&ONE-jQ5GOGmX>F62z*z*j%RlW_{KZ||A0{kj=!{`(e-OWKnj0trff;{lqBC@ zUkI3!;;F}{fDsf`GgcKUi9BIwyn}#&KI8}LG-z<5vBi4+o`0_B8Bh0mkJ79=hZ!*Hk%SB`)x|5EKsqJ*<1w$tJ3}A zf0MophC#`4Thnohy+|Hu3$NtS1$Vpe;ZJX>z5siIG4F-EFQ=wxth2COs@IQ(oAA> zJ(n`Accdbs0~p!+Q-K{ONbJIzG&<6dfT>V^BA z&%$!a=OAX>e`PtcwEJn^Bu$8r3fzAijxkX*qCXlHOHx`Hrg_pIPmvmEK|gT6x5ud* zN*=gB*z*)6FJ*ZM@f>8`(`r$!CB0ma?}CD8I%XDa)p!2pD}vI6e%J1H-gM@>=D9W( zTbTa#r@zB#U_cW$cr?+OgO_3P+vM7RXsaYY{Z(n| z;GdZOtiT=mXX7s^h9;+=KZMYL5`pg1K{EZEY?ubJe#g6D zm0a@c($v}$`hv>pwuTZ)*cuYl``a3Sg=F}iAM6E1@@Ha}ekenIBqL>LNowj-20zL$ zgC-A*wh{=_Mjbt|PNGvyf*{iAa7F4ZJup}P);9c4Aq3q<>(a?Axzsqtn?QGUBD z2Q#H8HgPxNOlofDxY5*PA+>I@P)WwD(3NC`SuCAatB_{$AUWVMCRY^587cbGoFBlt zUy#pPDV{`)2^pgpH|<6d!ByS$o0LXV+B8o(tK)L0^TPr`_9HcGZjI*Z`jOSu<~J}S zG4)v`T4xdRA4TW=N(Ov6Yvi#3iFFL&1R^aLen~9JV~-J;C5M3NZ2L3~Lr|P0f%vkS z$(7THD#yfhDvc@^<*W40CDO*nbK*r}DD|4sNGz-O)!Fq=zM1k!nyH`dV5pxcS@a>I zH}gf=K`L3NpiS>}QoxE;=$&0iO!=BDE&2DyOS7iSe?uP#07MDgUBR(81A=n+gOY(K zN(0^Izp!bAZING;oc2Vi(tcmCDZT-376864`P(N-FRk5&GRDI+BI^`PR3)<*nw%?g zOrmehO(nM#%oA2Q>ErhTv2N+3$XICa4iK3%T5yZhub{}U4ZT#ITdvNXt0!W~B{irPMVftJNmR?x{bQ1-7E2~eQngy%RG6V# z@a~JH*zP#*6v~Lf2Xoun2_=FU9}ErKs@S5`nQ^v^y1<ZD`=$31P zaVU6oHc6anzuxQh)g$gK|Fi~1)0pA*z@3x|2YWd=l^eWxA!%WFix{rORtprzO7>Ki zcT8;qDjeFE{qGLZnC7@cxG4(n=1BY+d0JU0JP#LHfTqkC0*H%2GN7j{0XP*YIwloQ zEI1Uerqq!lbUQGC=_CWs=V`V*T|fg{5dfykHuV z_z$XtsAtuSN~jl`(hkHKlZ*qKnOJqtxY9VVhe;-ac1&q{zEH=R5Z;xgQ;PFY>+)gFZ8<&X=BZ~2$Bqn1NESVMsUh-JvimUdLYA~ z0vY`Hm)0X0ta*tI=*M@3Zb2jVEK?f1Shp0t@DrZIbc$X84NcA>PBaC-Ky-e-Uo?71`qG;HrjIm{t>PQ~I;95e0kSR77satx&$BTN4ckCFiv z$WV`a=H5onLm9k73%I51Msma*Jl4gfF0IGi4Au$KC`%f}6Fl)UP+UfRqoOzoYjJ`$zI@+z-{PDeYJybI1Vpv;xec;o zm-7Q(iB1&+!{l)`Kj&*MXc;hEamYUk7ONGb{NBKAkl6EP?*_(S=a3By9KKFHACTHe z1_WZ7->2^ur&^*|K#axjSCXPtQ}io9`tOy7=*w(Pq+@)C(vXswuwiFV`~jsYS~kTp zGB^I9()JZNax6pd1|RIgVAvMK;doaf72^-7ShhKc!~#5GCn6dv5$8iV_J?6HcL-W% z#Q5Lu^^%+8B@f|v$?o_X$|#A=A=eV>&Ti9qlrC5r z+orA)V6GR4ZV)`T1Q_@?2G!N^O@Qdy_>KI%Cf>^5tK*viPE&kKpdk4-q4$dMt)vv= zzvDTK-^_CuzveBx1o1Y5<84xo@mmGHw*@N~$8Q%%Zx=}4AxtCz%W>S8p)H~gdp=*{rPQRkKpvV@HOP?-X zQ~SI|D#KR5o}B`lMIeAZTfiQz#b01m+-T=sjh`z%t)+i5%J`DB`0FCS2gTv3c#OXx10w#WDDqnZ#JLi|Hj_$V0vS7D50W#IdxfD7lg-TQ?f-o39Q z{&7(KT#dEi>WcW`U?n$T{F}i2Q(?7Vlgo_6e$C2fMqQ7p{>N0|hvj?eO3jmyu3Jx?X*dQushS}=$V>2ov zgymvOv%8H}E)#`>?lQE4#BTAh@CW>++HZW!h8Fazb}Y^F9w|T_#%bfW{{YWq-!rAA zn%|+SGCp`fq`^0+%f=}!ZzS4)m=ZgtWh+#xUAjYIK~V$47Nr0vZ&te5yBHL?8R^#N zjxh21UW!D@Q)+3#?s7PV>eO^mzcP$`IetymH}-_Q!zgbQR=4uU zdTnTUBTRn#zNo)5i}b1%<`uU6IGGtl%WF&J3Mdq)Y^vM<+dTn6 z76W9)Nv4ayX*x*hTR+LrJ>{Ivq3gVv#>&vv6@H5f-`!p9uPi*$TGz2P^9o9(N?MwtS+zHX0AedN zUmz4s9Q-DpVadDVTZwjx{|+wo@k%4{n>k=GehUdyj#a2|tjqL!bBKsBR`G^td>izN z+TqS;Q6j?lZJ|W(+u^hzzCA?tydy;RBv_!e_??nF?~(+1x424Gu&In-M!%c*y&+-| zDEl0oJ?{%SvibcX1pfD7by0jrSe+YxAgm6=9}KHg;}3-^gZNJ9A^va(BYY&Ru8r@a zpM;lHOGq}HHl|uKolV#1(QSJH7V9B-3QJ-!8gDJ+b`VW4C zVA5GQ}j}E05wA2~F7B$^s6m z^hBt-%((gYZ+iFvss%SIN8kSF!^KfOmvuyHDosRx`;X^YPt?m+sKCN_(Uo>KJ?RbP zb$=CcWvqdKFd^^{A`Om41a@4cIjiX$W1wKnO5Ve%{{fw|;DyS_n^JiWd_kD_6_AHk~@ z%-4dVxjh{A1~vJM4Is_q6je$KOr^BMXJ1!ybRf&sqD=!?Wd>dGZNHgcQV|H0?I1~R zGOS6pNI8Z_%2Q2psNJAoaMp5U^`yYOfpGI8+qLmj;s&}e&>g*ks8hs(tB1YLFiO56BdWcjlS)unr)O_gA_I=8!IY-rkx zcQNqpQuT*lr#Wu0Q#N`GTQ0fm_)<@4H%9}HmfluvV|Ocwd}}9>t<(Jk!i=TxyH~Z! zL;$0@JqfjlaZsuhb$J4M11@2-*XwXT1-bhKPExXzK)w%o1GBzm%azQ0>Dy!Kn@$0% z_sxcoyy5s#XY4x&t;6w+|FfP!>i*8_$C{uo>n^mxvpTH57-4@V1KCkh6m^FlA1f*9 ztGcgbe$SGen_O_mS}v_b$ZWlvc>}kM#Q0>bvgV=irQJ`1SM&`>j$h85H+~Is;HOJ#Ak37HEc^i1f=RTEBp1EB}gF zs?ANAp_E2qo!>+4wV07rpC+NR8pK^#%-yh`?>GhtzR0jZ=hbP~&U2;3clebCN=Uq`4>&>V~4S=`=p$;!W@9TCP??s}NRK zd%aXOWKWZMT5L~KtO4^y9~QEbj>VCFHa*yFXauFIqzl1#O zm9(0?EPNQAGKqqdSC3u}=$MDUK>n^vbT5`S=RgaL62d59H`}*8Uo(D|I4UhtK9rAC zUen83wFmnFxzI_;E~XSig>4V6@P~o;8OF^Iu8=_xYPNA*_S{pQLl7IELE)}#SwZ(( z?`alGRa(4>ZxVWs6tix;BhQOx6M?xa{OlzAW(jLbWpX-yC|Cd-QUQoxgozMqfc%;P z$2a;l7zufKsqRl=Y+>BB6X4dW2&{X}44qEG6Z1fcn7t)72Y3VBWY*pi?3Mv{A1AzX z9;p|ya4sJpD!@zydkk z3z;??;SL?}jSb0ZsOlT3oQB%aayk5><=+0_gc`W!6&#;Ugwzy)R(&36c~#7ePpUXR zfO!buFdZTakDrISMcdp<1##OF1OR0S=u5jOmx~aQ=NX2@`@0L;{DGVoS9v5=!m&gA zn1(n;k(-gxB42xz}~7H4U;M=m1Ut^cC5f)J|Io#=K?WQLd0jiFF5=51%+BBa?{s(x8r7E_X+vx}zI%?{0EbKPFQY68P3 zZ%u*z2#&dMy zKnNl=R6=*4cBOfYhTVVlwg7$Ihxt8 zDin8N0HjZ#$>`8N(X>GvQ+>q9hL@*GD8BTDJPCLc;4I}BZHw!S`h0o2_qXUTWu#YT zg7C3*#fu^20Uh=&QWsD+5@E)awI{Md$|7~8E3?x3*vn-iRD-f_(l1bT$alhf6d=q% zMuESAYq-*n6lyXv!P2U|d`e70V{}~tE{e%O)g@4Qzzzto>KnGE$tD>)6)P=sSbeb4 zOr;7H3Jb8_Aadf#w(hmEoY^@P$Na1C9P-=J-qYr4W;bC&q(EmFIO|nu2Kow4dk+mf zDcdZI9okdp%-rtv=pA|vD>qcfc87+ zO#|3_b?=DT{cvxFnrgrj!Acfr-YHk{y8;IEZm6T6^D(+u-y%QeU&ZxvS43wUf%1Yv zny7NK9168c`%h^RWp*{_=)?y;=8&BF+$x{?$m93>yEZ1Ah2=};3Ovn60J-EN{CZL^ z&zx$Ie0QX!Ir-#CrSeRcI?mJVfqVS)6Yvu#YEQTNCGkDYy~(yy+E1;ubT$=&u!ytB z1`)bA9f6BibyV!Lg+lirI51f_63RhR{d)sK8!ANtbcrX^;*tfdZrK` zx$@ZfsFgu{bairkOjY7MJ{I5o3I7g0eDfdw{Mm0myyKTT zf~kWenC@gU%_&S#{F0T+ODmcvQ#@|8pJE2=Mz&t`>#TfM5gSVTJ) z!F!E1PqD?3X0t7}fB{uxnaWG!1$=cX;>)Zcx@I2lKY1Ipg;r#e{w{mv`O)lo zYV{z@Q$7ng2p(^}UAnA}tsbddIYzlN;sFgeQv^Z=&j3Z6o?pc# zXQY{?=Taf5?tIQ(cnRe8>xBs&Wy(}6u5`7ncVU0xe*Rl=W;wnJy6EEH-=dJPd#*y} z?kQYUX&I?p4P5|^CRpSeca^YzEvE&>M1YyJzN!jVe&AKiRhmArK-(RU2JYHw_X&Ij zwO_}k8(-fDE3p2%TD9qQT8Zt_N-VU`QY_5FT5N%(Sc;%1GQmo5N=ea=1;0 z6r86{w_VbvR3%>so4#3Rv7hqeJNSgxR6UeddELxFiNg+>&{PFWzr6xGp_^ zCVL)sXTTzqYo#1BI6M~a4DNrjG`TZO0UuWA<#9c;1#v{7z{@!!u04IJb-7oKxVh<@ z(Kb!e`NMse_+fU_jB_P-r%|~ z=Zm}DSvR?}-sldO@2U%CIY3A6{(4WAFztuR9WJ;3UD6qWHbHP}JyVz-kBohZ7Juv14LU>*vjFyb9J*R^nx5St|6$glx zeI*4j^N_g_Kw>H?RgxP>DT|BK9ds%`l2VeesZSxjiz;QFNuKWy+3F@s4B*xURsj3Z zo3^l1uJuOTyoYS9Om>rQv^!Ip++_V$iCAf|eL!>)RG2r|EhD7+vhHseX?VFwAtqg+ zuf-Sh7)vYD2}F~(xWmr?)S?LjDAIa-CG>ZnDNfSuLvF<~h|9RCajQe&jJx9|V`#Rq z*{4fr`3OzNa7mwx>&qQ!-GPKD(BzK3i7>*Ww^U{_)}wDC;i#=!7#gn9WUQr#s zI|N^)r|^~F#jP*nkw?JWYT(_LewhPrZ7h86phRm9zLNysR)g;(z&a@h-#ZMx+YG+? z%tN%5j;NUozI<%p#rH2xG_sSvC<@M#+yOOL^nh;7@@!LW+H0Stc)#gVSv^ux2e=+d zfho@PQ?C?L(e)~+$DO;7jY<$L69Ck3i#rjMoRLokqfMwa565*}90Qf&5-+-*nwtvM zd_#82s6l6nN|As?w^0N%8ld<1y|gk-_cyDMADbvimH4;bGwEyZI@VM$m8ZGBGhHtS zG_a0hP6o_T*GBXqHpUf#WNuzsOuW&xD^>O31IZbt*#FkPeqbV243n{3pK&`Oi)(wf4h zNc)onmsW#|NS4b0kV}So4;P%e1{UfCP6n0kO6xW7m7qedA2>O!0!lAH2@EJM%gSKl zaxkF*U@{q)OaeZ=P=jF72TWRPDNx{60R{etWjBiHZJ`W`dx^+y-Hdpnr`U0-;8=GI z9rLQ-Su_Cose0Z|{^Pu_=X$w6n3;ov3iAS__zH>D^qF--z7&s`zAD9=p!2yynF)_& zjuAf+U!)JP{LMHrHSD#yPsKFq23}@{TZ~$VhhAF7d4s&ZR%@-}eZF2=T_d5^)Tyq= z&P?n1QDR`Fy``Bf7OUM`*qLsW_X$gQqdW2PT6{5$r?#%_IUZjNUA`7h&K4%rO5+Sp z7(m9gHbF%7roBmCIp5p$Sv#8RV*z#6Pg-moiaFPvZy(!6TfodZ2A~F*7$LH=u|wR& zmz(ss$hGKROK)YSW|1a0^=V88FVJNMzH}BN`Je&iz*lk^u%awXt%gZ%vyZILDQsT5 zz{cMgc4M^v^FeBERUadrHE=VRVu&?n66Uv{w-0)Xxuo7ppJbrUFzJ&pi7wl}+YdIm z#`&XBeJe=2g^hW`=tWGYa676u58~$^Ey@0Bb>o=o#ZIEuGu8R~n^k+7!Ba{GZhxc7 zY^iLHB@EEp~Rfmt9l?kY|s?=UZ);n~UEw z=^3JV=CiV()uFPwqZhv`S94tm(C2ABVuDcxSq!k`z3kTmP9{TlH)EWoBQFARb(~u1 zc&+G;*7aJP$D;WxsIn*vPnRE+y?Uw8zow zEOv^ z;I`0c1K#V|m3f%~kNpGHfSpA_ycx;%`nbze0?(JQSn$7&;uOPpof;Ts4eWfwajl{S zCN_%-I4=Nqf0M)A{{!l-$WX_Fp{^#RKMU@%ww?`l9(9IOA>dIYZi*qe4np1RE@Ny2 zw4OLp;du?{<#}`E3UW5PD>!9h^W8P~iffrVoWkZ`48gm|Te7-iDj!?S`lWpEvWwgm zxRfr1Nr)J`!V?Oop{7XoMMn7WZ$vRyc*3~ClhGBPey;HJb45xmk7{oXB_$ndJjd2W z_y{>8Wa#A2lwRZ?uk)Mu3|>tY3UmW!&drn0TrVL+z}@8JM?5HEKvZj2uPQtK$_9UqjA%8fD~_T zqky2O`Xzg9l~+`68rbX)Nj9S^^;~kT?prf|j6{QSgvj_ZM1^(|AkN%of=q<;OVh|Q z87C$^yFU=1<}T7Y!1Ji>`g!quU>bZPvu6Um{VZzR>(+K3p|VNP8IjMct@|rXNb>)? zjmji0QwnMxQ4l_WVXmuMdV~7DwDk<{LESgVMpKo( zTvkGWnd^@C<%hyYn(>+W?`o)Wzj&{ z?tr^09U=pY+4W_Ti+r*2BG&;KbhDF)-POJ)^Du#guDNd61VfYmqm5Q=wfTavUe`5l zHFZ3PZB4GXtbI$%y1BbY3o=@YsYs>y^f}qc-I5~%!!N5lKFhD>be}F>ETivIG^`>T zNu8bRPMDz2|3AB2qtDh~$ArvFuecit02~J@MC`y#(C{))#xLIGRc(XYS!X&laDM2)x$nt53?yR-fFd?lkbocSN`$ytMk{ zPESL+Sa+|RSO&#zjJ- zJOj-kmMV919-Y+FyL1* zHPMXZE$6gM`=4C>Zo4f$^Tn_D_>cNSW8JhmlpfJ^Mf!V5dQ{W6rB>IG<`aP8FL_dc z0q5$B{n0wD`FL8|+m+X%H-(2#Qa>#|N~G-HINOO}5r5KCi!Nx_8~aA|L$ru~2rJPK zi`V)w54aCNVqKZjK)uiyOnLK4EmA-17pVueE}db@s36PX^d7_Gu)eB)02T)=4$0Rg zS(@WBZ*lys$o;C9m>~5Lc5P2xAGB!WLN^-|nrg*s=kYwd#>Rv@!famx&PI#J$}MuN zttO8V3fD_pCS{DVNYdkmg2u06E=u# zGOxHc8I7aixmlYsmqoe!tgU{0;x=n))0|IfQ~BUpCiL1*HNM?^%pJWS3fC&sx0@*| zid19Lh}j)st?OrP^<$4PV!4LvBev)^SDKyY80!m!Q(xN2hJVktQcvv>+M)(vf~wXN zb@6u(8>Q|~yTM)udC!OxmyqRgC_FQcL_h^ybMKpfA^_dwoLw>1$kR)`Xj)%s(h=mF z98n0Z2G6)i(WbkE`EoL2R@A#T9bG=Qajiw}RJ9dh+~^3&Z;0b;a1t5gF#C$}5Y7j> zVuXWP#e))?b2@vgID9C_!nwysZcbS}mv&w9_^fDIog~H}<@*zp#3bwK{=Gc=xq9j8 z&lRtZb^g@KW_wB@{(>1`dfIYk%#VlDg6Ho6C`1}_*X0|NlLn*Z6AyfUYBc`q%TVO? zTMkL0zfCWI{@QfoMVpN$w^h%h>GZuIl1u%|Y#U{y4>rNFewJwGV-v>Nvc zAgu~No042G6kP>xC%+hqwynui@r0p`jRNj~{bGWuPs0t^8N@Iq_s)x^PfQ8_DHdQ! zv%$GW32q!AdVxfIU+UeOYf-4SuL8lfa_cDnam*EtSx0E_ z+T>mHqsp8!F`PPGX;Yz5}M8Z8DfK`1$OK{Plqv~PGEXm_gH zWAt8~?=IvPI7Z+K=j6tsagAtyk|NU$Qc5;(sVXjF8rPH5z&~%6ToR z{7@)L_Q;(pIjI61BbOYuI6C%B0T3A=)vP|$x2JhH5SuN#!Frc@-7^TK>9z;Q8#5@w zQKH$`Cf{5fRgU-4rM^Ai%M+F|8%ruGVJ-=e#mab{jI>$21k|jBrK1Z3FE+~2MOub4 zQUxBeno0sQuX@6e68yl@w32oP*lC!s8Z;$B$XJcCJzQcVL+f5JmGUs3lfb~c?+C#V z=E$sqYxNeUSe8#D;lm>e)Ke`TQINoSD0$h^s8ZwG?kCLbIlD4NJ_u-RJ?ro?7BnHz zYIZv0v9f-DDl=0I>}Z#J9msWlmJLQcY2Kb2WgbwM1L{7~seuD^!B8Z!Yy6+~Xa6H2 z7=(J78gM^ScNm-YUlWvkCS^3 zj^@`!!&odvRs5Ch=w--gSed4~qKU-a62{Z9WqVPWGknSMDx2|-8-5+u80x%6pj22aMHFa~7fjM#}< z%KX5#Afvcacv&01(^h9P6{WvZH4&Hse^x*B1i4#GjSkb_74#om%`prag8_h25o; zRp-z2qf0uQH*G|!CmoV)cJgJxm_m_!kDv;_}Fch$vM5^*d429PaXn<{uT$kwKa z;tGt=XM)S{W%edrhetEnsunh&teviP2uHkZsE>k|_5Ni~fWZn1eebn}!G~ec5q77h zTFqVrojNY?IIiWxI`||e`$lRw>#}2Oyy#@K2jn!PiZRqljZlxY?IMD=!AH$pukH0h z;->za-OaifRH@kc~)xz#%f%gMz@fG6=nV}Pb+vtel4 ziSHZ(4D&JYoW+LC=o zMzc9_bMjHqK{Hs4iD%)-1Q?M#FY?38j!O_?+s<>3ijEE1*RoHH4Rl)lXiGkNbo7y+ zHCf9%iyAIGCaPV;$C3*c7b%8wVz|@>sP2NYL5btfm^6serIMh?x6WDaE*`W=sib!o zYoQg0^y{K8H2|ZoJ2vX=6K7MYSg;;DZn@VS8%^H`{VPg3X0N(_(j#b?!5UWRU|2_> z&_qSv!<8aUDpftgVY`+lAeUyiHgawBYBF8It5}HVfajhhSP{9JMo6WZfEY7M>h|gT zkKU(`HA&%EY4gxPkf}(k+c#3LJMFhXew0QqCd2GheK5B2T~xl7u1EOO@srl7HPHE! z717*aPExE!v(N6)?(?2_uIPr*@ek*+#dn}g3a-bGQcc(K+au_CxYj$thgn*^19Out z)#zZXCIgk-dzZ#yd19}lz)O=H3J@aAh666Pg%mi|VhpWGxL4{HXGU$3?q2u`la@-K zO3AX7QST4{_AEwH-Hgw=(TG>$jF*+sl*1*&gbtH}P$U5CZYNHqxj~clG0~B1R8ZPhbn$(5V9Wp;Mz;(P;{&Ms+3;UI>u7++Uib3n z^LT`QDk~{yQ`_8ZH}~i!$W87(E*h?NizS?PY|A&#KY$fS#T6-0fE)sa((zPmM~`8| z)33q}Qo!e86qRQRCBsrBi!P|^i?yPJO1WA)NrvGZsSQpv5kb3fQ+4R#3c(cIKF4WN zBb7OBj+@Ie)LiM6^kswsr8T(HTHIXz*DBSVCNwJ2DE)m(U@ zjbf3_Ju!{M4I;d{N)x@+m!V2R_@tzJRdis`ogB0(I`ph|2tY=NNtRA8ZaO9+@|8i{ zBojf)%Zx<}eeH;YI=|`sj5?!rq?;{SXft7H9|!0-lOJ|{BXw{Jj%oyA6OwGUizE|M z^i&EyN5~BV?#fad1l%=miAh?0(4gSP=9GyBn_PQB)UT*!FE};4`bo(?6=-Ul9J!KL zBY;&JozA7H>68G5RuXim^7KOTfB-Y~!k3(&7YD%DIk3Ui$&?eL7YB2bi%yLGt~|H; z(vf(Do0|lyqwgoXR!5Z!H5Z@b=i#z@nL9ZiZoIkDFn* zQ4JPkC8FXb<#p|wc0gElBi?!%QLQ>?6(?t|=9;)avnT5HjMIfyH$)_VRfxNDc;xS51tXy`GbE+=MVlxm}CB+mp$4pRAA4?I$QkoY)U+O#!c{Ojs8eX zc<|%&u>lC$!umF>Mh`8yP}nqn6nr)=h54U4GF@&tXkq z(z%`a@m7RU*x$p&JcYTTX95mdv^i8d>=cI3p-rZq4H#=_EyFi}NY4rPDWJXKDD+&u zKM-VjZNi3W)RJ}6V2)K_=BJU6uw9q(8TF*Y^4xH~K%T)D3m#C#8?A-T{IZ@X3!*wg zdzwR3O4-e4=0q&p{55uc9`Bn_pbN!BbD_OqLI6X8kj!>M_*G9~wgq>(MT$A&{OO$V zmEv}b6))1PpZc86(wFGCl4i$GUFWAT8r20C^_BI!eqao?&tmc z6u)pKX6&>h79M_lg_p+u#DyPbubjB>oyTiw-jwPxtTGf1QZ3a61sz09++0J@&uREO z!fJnN8JO%s#b@nZ#qsjK5qz-A0C{SovwIDZ* z+o;I1jdf9Ea?4DRoG9Y<4ta6%LI(^)q+U8U)!?;Jew|DdZA32n^Ij2;nP3i|v%6!3 zgKd_Q;Nf`Zu@upe=wywhhzu6?RTjvAPMlh%xi?99ZUXT5AqDut^8ubcOcMZJ=-40dLdQ73+gSE! z4{WLtQ!)aOIejQrd0|?>g~;hJK0;D!1`#2c6}^~;sg&Xhit01ZJag=2ux;o@*jKwz zw$%l3EyNDdUUF1D0v&5bLzmH_Lt!an{DcFvi2Xi>pEUEV!b2%PHS761p0}E-o}KuN zxhEK8egZc&i<@lDp?88st8>@`X!DLN0j81(Wglb!5#i=t>U_7%lMG7`UOZq6WyC>} zO{7L8pCl)=IAkZ$hnYF%WbZ^W2XL}%L`4yAx505lFuUgfj)La$|C7@sJ?5#De8o=_ z5E!4z?+$+FDvRHv_~pPxZ$R-I@s8&kbBoz4-?bn;(-XuaKcI~({oOg&0yA@-;!?E_<-_5OMAKt+YA-NWroIb~wkcV!Z(nRE_ zjAC*hGtX_QUae4H4IB#F#4$#8%d=iiU>S>J4ZYE+bwcyP(70eHnC&r`dDsbNbzs?; z$It>DfWC}m$AOGK$nd6pE;=Ev!hF^5b@6TEZKD_0s)XjmE!AuE1lL&4?P~}Ga^U~) za&XJnrSUvG-b7P zr3)OZjG7H{WrGqoq+P!g1Be<)^W`k~%EmV%34E{lr!F0tn z$23@IwajALpKpW-?8PQUspt8xdaD+QG*+!Rk6M6X z7#bMaFRy0eKOeOR6`(#Pk#)LAHNXo5IEX#jLlbpaK3Aux+?EFyp+y>^fREE5(Y^Cc z0t#r;k(UR$X&kwDVDk9OqUmQ(N#~l&_H$2RE3NMyW-hm$`5s1#loBOxtLO2<(KO7;)oV0qrvNNC?i0Mkuq}Qv*saYm!vMXS1+N;ZoU22udG-xi8x;;V zZmKvt-&oC_?asCS*=EW?<{Ny8vCT#ucic!E1IIykngBUT`z@O=nNPl`Ldc{7$4}TMPNga(i|#*0p_Y+rPwqT7dP^`VIpmem;5Wonq$!#`D}N<_}CjxQa|rO0HZV%|6g##(=S>FMDI9$==*x@`d%$bxn7$%DeN= zcSq}sJOAn8=o3+JUo!IgXyy#HUsMb+i>(%R9#(fn{?x4G1Fw%}1z+3w)z?R17(Bl7 z!M}-S2Fvd=?7dS#vsRS9??mG_y)HXxt68;ic=Pz$W?pHvt++Dk4}!;&S6&r;IQY=c z=D&?vRC(7m(Tl>gQ^D7g(HaZ6UrXLyi)MAGi(!=kxS;#-Z-1&>^q6J0z)OBMt#Lw~@qbEt7e^Yda zdit$5M)N8Ahc`xV{+e(ACs|!vzLHL2yg~N# z{pl-NzrR1Z>f_Pt4!rFfEAodT-|~${k?X&aw0t5uKO7B{OFt3SI=`6v{4@98^%qDe z`Inw(LHI8ZzM~i1akl%5d!rT8*tEdm>t(^8Cp!*9f4jeye6ly{4?p#d+XA^ zzjC+ACq5M&AAbK`$#3;b^72oEv9BlVKOLPM+?jmh(-B*L??_(unP~nyJ`)XxpL{f4@K4Ujn73Jrsmcx@{h^t&qu!r?%%om3(>d3|;R8=4w_Y60EB)XpqN!h$+&wc|89wq<^5o2DcxQ5d zG^-rkx%1v{M(-*%|C??QNiO|2+vPmca!bhdi* zo*zcv1$vwQHCh~eB6;t>!V7mMU;o!=RruX6B%QmXW3%s2)bk40CokU}T^`(%d}nub zI0ef;isq`8B|jo=@y_JNA4P|zualGS{RrHDHEH^B^v>YBJKy)?Xj(aVTe9;PRQ+H7 znEdq@(cq8#IfHOqYx9etS?V*P5>l*wav~m9J$-!?rNF?3d9)$(}DZ zwIx5hu&I=+ek8hWz85LP0M0ISwK-ylwfQMjM9KJsXqd5NlE-) z(Xq)V_eL*1Uf9OSPP^Ntl{H2+#Hg0ps2Hk;NYS5Dkd7o|_F>vR>*8_AEx(E`UDrzK z&j%w1Q(;)W*LrF#(@PK2$^qJ&p*5oFgLeJ9IzA5Se)E(WXN8v&X&UBB})%J^svK^NOt@>TH8(uIh5Eoz$h8{VDkN6VICiu zobf0M?g$%k->R&d;>jJWteU1m-?Zt4WJjgEIw&W%HIR@isef3*pzZ-uqtVtU7i7Z`tI0DPTY~Kdpw#_)3T(<7UM{L zJj%eYgcc@QN7vt=x(;EO8(YbPMVj*O;$CMIfKOmq$Za9?@UX&@vKmw#_RyoM&9Mi> zv#+M2d^sww2~ZHf>`+;*1w0gxsn5UhWGe!B$ZFu44#Cjg+D8r!6cH3wf9i{|hB~kC zO9Spu;b%q+;v_@HKBmGM|JY#mC2OCEW*@zSRxfoOz!1BU(;yA1?xro3PJ#TcSi7iO zfjE3XsXn8^PW$a~Eag5C?M|XT0Ns(i^Ec5z(3$+Ky*xSj*NqW@FzQTk z+Im>wdjbIA;}7e%>4?HZN!z|?Uvh9%?uo3=AoNvHxqqrri3SE7Y(PMO0VXFs8Lggt zY(}0gl7)>SK$Wq$6(o?usYlVryhzSwHqngPE=mIs`TmtK@w+(6_bHag4sNzJ>P=)TSTNK6>8e zts4!ZE7QxFWHuW{IXNNSCNk+1nQ*H~ffF!HOiN&5Lp39bY31o))C7CAnBud*xq5@NDk7f3m z*=5M#CjwHUEUXY)ux25OKM^HbrUiQf^}JPM6rCf*&gYX!AKQ! zWu$5(T1*yodW)x26CEHQjfFf_VEAw&5+iWMW!UHZ(qEHy%!*{~iHs#FIWjxI%r6T{ zb#kh-uUrlgJDG`;x6+e#ql+@9#fmol={!6eX;1<$`0HD4J z*x$NF7FKwDVw@=$`f5VK*#ZO zrtD(ugXy4T<>=_sTKT+zH?pQFtAc30X^Ul(0Qy!w^GxvuAu$s;Qw63%Oay=-{Xowe zJJi?Y=Ab<5jBbQSx9~laENqZzDcTQ2u3+tn9lk7HnISndQ*uUz;B<(>9e9_;eV5u7 z%g(5KB$CWfI3#&!YI!lY0|$NO-dUOW1)Uj9XEft!J12hI&u8M3N?>Ste+i74@jNK7 z`MNQKxdcp|rYMk$4=lN2a&l`qei^uK(mJgbrf)oHlEQFJtRk!>n8llm0&&s8!l%3d zWhGf^m%a=Y?hQB!kl&pFa+TjtWAY^Dwv=C7Ucf7|tSLFVwR}Pnw3es#4+8?T&SbR_ zjMyf-(M&fMn&&6WTFa;5@4B(IJPQN%qx7)`#iYFkn-y>Rq|89@Nba2}Vpl2!ET1Xl ze%xI{h7A5C8` zWICJN-&Q_zx*Ze`2n%*?pNP%?D*wnhdKfTzs9TISaxBD5Ekh?p7oGddx}2S8Q{%=o zPf|^mgGswg`lV7&sLsndFC()FssJLBO7^b294T=1A|a{F&Os3ay2f;jCz zGTKg2p&_9iZAfhhif5kbx`86?$z^|zCLayhhYDSlpjv)|qJ63}4pN=c^5i2GyaN&9o%BA1{5H{w(8NfYm~V_TmXZI6bc z{du@;B&WHSHT9&S%szKO`JQPNi7sEX;oE}V4azg8RLZHJKtJ0877tK3P05Z)<%5!o zzhCaGNj8G_x-Zs9!W3ZLo614Jv|%Kov207JMQVYGi-@bC->Rl8fOh^1zLhA19#BC; zvLovB@}i7j%qC-m`$^5V)Zz>zJ&7uvC#eZEO=_AnWQfoiF&C^i%Qj2C+Eac-zyA(! z(i2H#3{+@Q%ZgU!nBMX$51ycma$El|bMFElMRoQ8@62wpGiQ^qfrKQGz-+jfa1WON zUKtPs6#>O-RS<2pQ7g8-)z-^GrHYD*3LI3bSgk|_#p}j9;0^DnsAy5q(t1M$wUt_1 zzyJR^Gn?HI5c__=_xt1*cjnB@InQ~{b3e~H2bnRT=2p{AWlg(;URUOL<$>D))2=vc z+Lh>na%V!a)d6X>g__jfdtFC}+!Z_pDt_Ut<1rl~+H?fEkiAA)AaIpEei8cfRi(wJ5bxdGF z?^ofJBZPK%g#!y(Xg+ErSk>;z=l`!Hm`Lovxe+mz7CFWUCD2$R^oN*Ct%MTAf&xoY zxM86ug&U+r%%An2@8f6kp6r<=-jH@7;E6U0cpL*Ns;N^-iJXU%U}1iNIvuHEeCF%V zD;>WxEK(NInNavk;vsg{B2LHaEB_iFYE>GNPH?|*&|=?aWJK2j!8LbDq^HL?KwXJkjK^la;V>IXfiS}#gEmFY_M z*D!h%tN)8gyP-sch@@5(xww`7+z39~F7pm1DhzR2YBVn0I+~q`$>TSg9iUFNV(oD>#>o>t?G2&932vBpvLOgTW{m(mP0 zz_2ebsaCR%iz~6UMctfweA%a)()|#rL8im*ee$)iqL1y6MRYQN&?m8lwn9pF(iO6 zwG1`E?HC57D;Sif&hDu1{sfWR4c(pNVK)y)4x*LF9OXGnZG-l~x^E9BDY17PqWC(&pKDLlzq7seUgl8F}Si?K~tVvMu4sjVOROF?xk zf}JY0`>%L^eb@K#E@>EoM1NO+U_zv#y~2olhp^@xvlUh`bu;VEiL=AFgR~<_uN0#f z4ma+E1z=)RXyyR7Rp3HdasWlMftZC19)tyAjvA-hXIcTZkM8i-c#XbtGu8&7cFJks zTF##mjY(>Pbz=NUWkg$!)}u|s{~{M+AdS`|k%0+8vrupyjB;xY?mI@e(RR&hG@QN2 zNPij*`99h3`mk)^5~2QJR9}cdkx8zEcY zBOZY1R9?Y2mg$rT^I8L}L|i;Dc^A5<-WhiUy#=wDMS+4tFY-D-OK{>bD8|HuwF0p$ z=m5cjAY$i6wh&hp$7J#*sS0UwB;dfG2ApKHW8E?sk5;yg}+?)yxJLzWW*z{ zc1BgU<{)(mtW&_DSU$k71@GB z)bel9Ll-!`nKpIo0%vcgL0z}Nd8Y8?hwx^pp1s&<$Shvy*p_vX9-y82VtW)!V+Pk` zYmQeIIRmU07ip)zc|H+IR_AG09j2a1I=UF~lDjkKEp~=QyS4(IlQ<(0)+aJ_R( zw9kUgYXphXDVRa*)Phw8u~G&F$FfI0)RS*?<{%sGv87H*|KmpI8FM`(Eb4TVQ(>>% zsQcaIOh?(}H#vJFYxKFBoOB^>4{Ub!v2S=nU()RKVUpT}+noBICP^)lsE*LQs`R%$ zj2({X2~^V)sI!YoBN46d!XQ-Z=k9X4@xxE|uX(n?Cyg%(6xI zJ7f6u`}aD7%9ebK+`0ak9>;Pk9K3?w<4LdkoL|`Y-_Cmb>oxZ|<@NX9o>O@xDz8B0 zrZBhi*Y1$Y*WJ0Z%GceQx#WIlv2FcJ*R~)?`JFzq#hKXq*Oo=9UKJ6t1`ya=tO!3> zJi*a%a5c2auhI3l8N3jo9or)GUk~d!w>bw}f7P$t=FI5)z|FufWTyvengxjqLOwP5 zH$CBY=a`*6d+>JW?CzJ|v?kItFcP6~D)2Ahgz%E|X-Mn#t+V_~Z_<5yMFhSVV#aSXdKqwf5JG;~e zuW|kb790Nr5Q5)VpM;BLue?Kdc-lFizgIl%> ze94&#NHY(<&NRGw+B#U#PwUJ0GdpwpI%i`{AMmUrX}#9p>`wZwXE98( zb;Wbe$?WKq_fdAua}Y_N={3(GE;D;s(eqB!dR`a5rP+3zVUTu z3%-8#4d*A>uSdS=>aA9Ycu=2=QtJ~joajG#7~d+oexo4;sfVE zymQ0{&gV5aPQj)?=E?^POG$CUEs_FYhv4q%%n5(No7M+<`DW)E>(b0Ee{}}g9EdkQ zboN0-Wgj8kZf)kckDQxrYp%9Fb=LNn3nQe?US$lWt%d=9wJue-I=vvNV3Jt#7W14-E6N z5g*P?D-Ub?&g6wlZAdHsPgQ&xQ9i9p{N!M*0MgjdSAV%pvvM7zPb|AuK+^PSCVod7 zhp)&g0{x#Z$eVv!cj+3x3qQ|wjW^)uyRL}(Jgpn5<5Mu07gi(3Hsqj8mzwxMs|;zq zIJLVda5&JOm0Ycl>n2$GZMXR8vf4s|i)akXv%)0{Ma))bpcn3)JPsd(@1o~CM_l*r z9!~*;@!jJ;$Im_8<0r9AjvA~Y`QE(O$BQ4Y{S)H7tAh;t5L-cpy3|k~k#OM(rzH0K3;WD61&RZbO zVKpWPhGhVTqqO)?CTYo16YeqO zVQgQX!x;(JjN-IOaZ5Zse}>zo$0LT)ZG+)pr35zDGYiB);+~~noZ;g9PM$Ar`!IQ< z{s?h(0GG|lL21GGW>Qog6d9KaMbU5-n=JjrJ*OomL5K52jvuJpP%TDgGR4spb`f%@{_L z2z?>E#r2bG^vo}yZa&rhHTN-H+oV7Q&`6VU!S1uojxXunb4QRu!07%q#ugu!;)zX1jf z7^Y_SQSOufJ3vzUn2zpU|9?P9N`K|KkZYO$Nx9u)_R6K1MZMg2V)oWgGXK-Z?QYvI zJfau%bH!dN@9$DgAJ*TU3hm$A-+i9S`+o*N%HUTIaC^otwyAk z%0L&Z;-1K?ZvY6hPfiZza8dIw_kiuAKT~-E4=0Y zRdA@ab)efzKho%SAdg^eOeejm(H&K|U@e|@=F|Q(Q8PyjcRQlW%+E()>x__N!UgsL z$H)SEaLlbE-G^D*iF>*)TAySZ_HthhpgBYTY9IHP_Koinqla43V}PZk@0N$$Pa#b1 z4Y=RtHMoDY?+(M-V{@{s!OoIKaICK>qOn_ehNWw+FaqSwVNOO||1c`K~^9g4;W^X{cBT z^PF8Sm3wi5I|I6O(1C6R)Zh36-E%`dDIJEMeC0s*(atIbg$%i=iVuO%+yH~XP0q42 zw;TkB>~G%9^qlA(m+i$)M)8J2+|$C2awF9o(TI5i5siCH5=31#$%SalG*2RlEY=TC zb{C@GQ>M6;)|0wviaWmW-FHDvRr=F?Kx^+zF|;POymhF1kp1qv`jA82N6W5-+M<#P zbj{Y7zvUU-{V)tUXk_wX?f`hF>BHPb*+J<))qT(YSngua<*D>w{%eq$o^C#|}N5Am(6Yy&1LiOO> zRC^8SH29ML)<+-jE(O(nd%O%r#WXj8!N~NO4z$^izNHU4!CmqLi!6&~xWlXsdh`r8 zYr_Rpm1&vbzFDwq>pipl6pU2)*JsB&r3)|U152w)4)uYJwN!6yazCvY)a2VZr~)QL zEKEnI0ic)uS(VxNo%AXgt>!d0UNQ*ywvovUOAE$?9&(!7tKTT}cNXvtlS>jf0xFqh z`;Tk_b#d)59*b4dqVKLqblQ(Q*0j({X@RAm#IIN@NxNt~r_epvR{(InF%N(y;I6hz7oP?bFdvsZ1P>dFVAlfd!36pSW*{9p zAd=0Xr$H6$&T#iZQ-H{=?25=Yyy!q{&|cPh;FUJ%D59A4F_LASDO(AnnhmC2G*Bm3 z+4=*6F>ENb8%YNHerHvs*WYf{PPgZ{%;hF>-wXKFBX}Gp|boy6bT1FUEHH*JBT-xL<8HfvUyORYJDbMV7t~ z*BF~Eg^FPD`+;3=MDP6Y7NU1XV#D7X6^7ikK{t#q=(IPviz6jtolGjGOG4#f-h~4MYR zB>=3>9$#C|^Q|zJ0MkBL+h@8%u-3LooW{M+#KEM&O|%vja3h}XzxJ?cHNvl`4V)3o z^o%lav?Bzb`2a$ot9hIw1bXjO2#m_1f2H5sqy|iFhpt`38QZ1n|2p!zNt}mP=j3cj*u~Hp#2Eq@R!Evu z1yK|*c$;>2q5`miU#g+zjuNnwCo9_{D#}V}CR=-e$sZ>w;Z_<+2|;PH2#WioW~2<{ zNXiYs0wO4+)*Z#ANO#cHdlZcjmw)DOKv{p`wGo$Z2ckv9C9jDL=xC9lMzRGl7+~W} zN0svpZ4FFxPIKcU!$H~k;V5UXg2L>CbQH%%2CP7vlRzw{$}yK4a5>%YYQ%I6WMGAe z>8)!df*DHbk4>;3^giCl?U5pIA*SC7pLO;3GGe-$5z`RtT*WYi5SeZT>}dOa!?GMf z-NTgW(zD$fYm**$wmS-9O-zp+1ofZMk*uU{5lM}GyhTYPmpPB`I3p6W0>6R<09haK zrPQL|KilopFbf}=Fie4nLTpn75@=^UOh~NFaFnOBcnx)4PxL)U=lz!|uU8hAS(RrF z@t|%F6dsYge-0)^rPCM#~=s`7vcfBl027v*gu7#fDr<(m_0&% zSxCOMcA&q6oDty-8A|TqY6NSy14ZE?&~54^(iR&r2PGIv=7Ca%YRu|L!w`H8H5Ii6 zcgYd3Ghx~va2_x!LdUN(k_O49K_uX==kpA}W#KI(%Z=f6r9Z+*mM&RtKvpJpGR^id zD_M}^VS1gz4<5^g?j}Qwz`LM2AuD483PZGS16uyA7q21tb_X#JPWW%YN5h?mJ1jL5 zK=6N{1_mO@k|v^Trj4tELGi>;suH$B;MWm@xnnVlwnig}o$4!uszorJkLUI%p9V)- z;N}LIrBx)YT+Rez7{cF1nx8c9=__RTK z%LT62g+rXLJlhx6;EX^C>Z6h0hBFR?pO{9@HT@+<518IU!^1Wd)MZnv%o8vGY(#mI zqih2Vl?6{)b+f@W@kL~NB|Ouh09)(fjI#Y_xyRYBzOQed<<_1I0vrvUKZtHbXbQ?i zO~{HN8_Hk+2p}(D$h;>QCbIEjp_cGT*zsAm?l;>#JG~wlL*5A$qgkI5^-X+;bi?@2 z{&-@-Lm*#VgM_$epy9EvFWT+k&}vY~kmOKAkE(r(^Hl!c_|@L;-2SCGVWRbaXP8~z zw6L(#UOC0BmjD9W4~E0e4X<4uc>^n~f@2LyN$XuNN4+N?n83*;;#i@NK)dqGu>B?S z;OlUSo#l)Dx>P;tP;zWeA3vSy>wBqwer2k^pG*w^(GT>asX_ixsRsX?)L?&RYKVVI zYN$UwH4L=UsE1$ZeqKdgNY$3WkrE}ruD1q?QF9Q_a`YK<+-_-ceE&-$pfD@;vPOU* z^{m*FsV|o0h`l^BU}E41?Jav)3KC}-wSuvvWWj*bu`Q+)h*JufA>Ivk`mv^HTV@Jr zQV5Ll2o@<&+Huc_6B?#~Z5M{=Pl;Ao{ZJY2hsG$bcQj0ykb{x=?+w$6I4}py{CM-U zqmhC5R^%Ukv9r|0?$K#(G#EEhD{oBWZNoSbj0@@6j7v700q&O`k%ilr&Snb4JT}&n zhy+ga)<^e%1jna_ZD>G48FjTKvk&|dK+7}*YLip4B_R|!$^-&~+6?=a+kv$aXoqL= zV;0hE+g90P+tzBcCGE5(5RcL=bKPMFwn~SbC^bmJSl=%{pXbUv6B-qUU>*-|K`@!; z_3%sF?kR~cRqq&Isx~vsaP-f-#O+jp!3g*dUPYrF8fAL%C2qGPAvY; zQbhB#-%-rMh%yNlAJVp>*^tj91 zzB@6^cQgegN?nsR0lKwET+D77z8l)VhUaEW$GSms)7f7e(WUd;-lNDnI4Hx0){N7) z70VWeUk#C80Mv#WP#!?4$$32p50Uy&rhhfh?N!AOi6K0fOzKGRe3owb!0rUUMsNGT zsVo)AiTCg}sEB6ymU(VhG0UO3M?r0PUN@fDR)ei<6-NbX6EH}ufRN^Z!zWPh>DffqJJ&$8Q1~;}G=32m{DazYc~rPK}Fs9?K|HBc6wbvt~RGar46S z3p`4j@DwHwHF`-s>k4G40yCK_+`}Wi;* z_ZSc$6_2oO7M^F33IrmGRD%EIluIRqW8AoM!^D`{F5F#MM$+p~ zkP5thtp`q+avaz(9OZZ%!ehz@Hr0+mIUa}5MLlkBL@Gpi=&|u!4>WI%+d%WZag$vV zfCXEqIOr0DH(ED0uyE)X#Jxd;AGJ>Q2r3Msgx4okWRF4{MIdP;*oO_--ry$EM!zO~ z$JOrebOK0^Pr}gk_8M_4A)er95_ZAsGF9^MdV76Q&IescpjZoIkQC4{kp|NyL^uKU zh6kXs3*HEG1AqWVs*mRu<7Cu?cVy})2!bOsXI|sRtO*={*_c_*=4izr%R7=TZ2pAx z8saD;W^wjIQ|&Q9dnnhBEkJB)gWkBn-P;ot4S82>)j?#B(cN>0|E_ORx!!w!1?obPLZ@E@7B>G(EF2LR6*SWn4PzN&N zKEBTFfs*3uU0pq#9>QJ{w-VG9klNzjelt(Si>t18dt1-w53hHJR|fkPkI37v7DQCXVNl35ff1WW{r37OysXHk@M zdHf^v3W9*_bf6?l^6VHin;RQwk(To1M;jXtC%q@d*=sOKtT3u+Vha?>(1&Udxw{B1 z^7vX<41pypX?N6As1%wgXC_SM08x~KAh8`$)QX?cvuDkkg=n5=Ua?Rlc!``_PDZr` zFHZ#0Ws_eRNx_62=c;IM&o`5F7O#T|J1i=Y2|H91^Ndx<2|LReR2Tu&oIOt0GBy=@ zJo84kEX}9TY$BD>Xw(n=6*#FffEZviKy+9vU{hw}P_#HpA&?_GxWrVid?Qemtl7lR zv-rSQQ9o_s=UKc-A;af6=w(?*?4!&j#O-vvg6usg-XN9^F}MqtWhWlXA))({jitA` ze*a}Gy&_JvOqb>JrS2#wRzYxX1`6SiRUrUaP=T`sL3m2caTsHWrc_|14)Dyy0dz( zjc1CH%CVS8J^6$$189iKj3EiYob@4tNJSYMr1q#VbkEUgrGC(17_9tJv(cExSQQaiSLXv#?^Idq}z&SO}xE|pW*1|eDWk!NxV zpDdHd9VB`&Z-W>v$tEd6;75sfSSTXjftObC9ub>E`Yy8FjHJN_%xUJHhrPA3}DyYOMwKor*5 zqiT`m$G|U~vnrTZ=AW4rF`;2-x6{P6*(ArXBvS>jv*Lgqb~6wp+Jh35enDIE?+yeb#~vdi8OSP*X3cVOitBH@hkK$2c6->rI=~1iPV{!L~Rq)oH)?cl12U^Q?kJWhgv_5LJ zWRfmfErlOA@`Qe7jXORwsKqToJDL3+bPuvJ9iDL4*_lfpVvZx~dKf95PiHC~ zamQJ@axHRNH!slh*1El!BYNLjcbSD8^JAZL=f?Uh!HFweA}T8x5e;Qt_dDO^>=TRm=i$SPK8`+_3;Me!HMU!m+HZ(lH#%kh>*^|mJWuxqwH+f$!$qvPtC zuei_H>ugD+v)1WDUUj?Gd!N9C)epqUd1ra(Jikc20TZ9`>K0L z#X6(^urXY2F4;Og?X@4Q?Yh_8k>U4H%lY4b^26WvTJMeo+|$;(iFRn1k$U)$EZPqHFG7t(s3PR{9M|ub0O*&7--gYue*KK9Nfas zwtQ@v{HohY&wL%}nRE1_*WD>U4woa}aC>B-xPwq|iX$J2o;yN;=5cTlOo3R@PpRiW zis)5uxMh_sW*jQS&aAhCI7^GIx4hwY>2L~0l?JCgKw@_a+vDG8LRE6G3FQkIyr{Yc{|U^!tbmo3VBG| z#A43OZDGs$@i*Oyj?6N)v8ybb5aZ$LEa88KmCJam4%_X_Ac~|ln4H+@RF-)o2rJ0)%CjA1 z0Xo__+tD)gbgR9WC19Yd9EcWu)dsgyngju$!+P6dFRVRVcYs7wZdi$Ghq&B=7D!~Y z1Pn4UutDCUYw{Lx(pl8MMVhQ7fz0JWvUY1CEbxsn6HR1>FWWAki1Ehq*5DG`or}!H zTY`3*;mU0XhKr}6_B+rqNlOyNxKg^wdUC+l-Oh01>BSr#Y!h%Je`CmAm_eP_q z2pM(^$&gwZ1L`HSWY}V-P&XDUBFYw!A!&7sKJ#t2>&{59D3=8Fs<)98`v@p*O3~z9 z5*0UdFq8}!NK{UisM@0`Td3Kj$XJ}hgkOd4+9R;-X*>|8lQricX}f7?XA~x56;RlA ziVmSL$@YpNg%F2LWGRd`tZ6gH_kqOtS0FJspcevro+ShNtsNe8+Y@>r?_kbw zPBQ8g=TllKTA+ve6=Kiv zTBv>eMtp*2#y~KGmgmg3B``$2;1c>D35|JH@zKWE_{V2Z^PO|+5@Q2K5D|)jEVM`A z>0Dx;bA(*%vIkkg6ycWxle^_d4~n&BY{#51Eo^2BNJD9bR$54BTL5md_2;JYL1;1$ zjd|DRjYgYf#s=~K#pt_9MQgU0GE$E+B(`&64A9lt%c+tJy#k!VR#e^&H!-)2vzB}{JE&P(7)bpeF;LoY&`udhneON6T#ip55;-32Nko?K1_O=uqEm!}T1Dc2 z&p;|*AfbeG8%k(bB7)+w#MOQV(eBVg(b!^;VH0LYn;pk( zmzb=!Mc=l0=l0UbTze@n+2PjFWJg+-G1+NA`9%y+!W{|tCiKK!%U9tLQ@NrG&2#L< z6T`0)_&|r|3Y);f%$hDnn&V3|I9Z}#If#NQ_p?Svt`wqvTW14I|Dmf^>kt0w)}+6? z+;7B~gevIk%YA-nGkmcnye{*H=H+Xnnn)Q^pWwHcpgh6InNpCTB+HDTkosgjeJi*q z6Hz`{SI!8_Z#?jc6rq0pb{KaUrz@P4ld7YY*jZBm>g3 z+SL>wc+|8wt0}hIjK6uLqwj)gARI}C9E_N!CKh8uKxB#WNOL3)a)8DamtqoEE_(zi zz@`4n#z?CI4z1#nqDcu5QW2z)BV9D(u!6l*BC)eWMx+z#Q6$!Q`^zZi@3^i8kYozfg=BM(VqKUmSe3E&z6 z1;@MD#lwq6WN*K-i}x+sFX6vxkXj~v8&Whh`vTr)SN$7h0E@bXkKam z6SuSdw|V;LPu$uc$HmwWGPEPJn_=YIk;1-4$_EnL#_nGjQs+ixJ-FCl-vlP zoxl;8syl%JU1QrT16X$8!uDYR9bt$J3^0~G?1TV}Ab-N($@5alrB>0NQiz>b(Lv(P zWBCpG(=9kb?fYiCbH|;C%c?BqASm)h1@o}dyJJIPH>Rv=gR>1W3GM*jiD7NnUM8hU zTiF>VQ@*1IPLbbAgdIb5KtEg%)~v11-SVR;0(QSr)0lXxt##*D4IU@$H0v`ycV`~) z2&!*Qg(h(Zsn8@Gra~_#oF*5VU>Tqr?G_djwzW&!$%fYZedBh)9K+-<+OCIZ$xe^6 zUG{}LbqJ}(!}f=4n2aOHC}|X@$LHYg;PY(I1GZwR#cpVS*fW9lhw1abmm2^OL4N^o zot>sU`QOTp0I727JzUdHChvj4{tlRPtc%=qMV^Io-4(4Cj(znN`uJ^#e=)k($*VNW z&01w)rQd^cZ*JDfuH<6TTpEl-a0~Pb-@>|*@kYiajar%v_&-M6q;Q&r6XH+Q%CS#) zM;O7lT~k=;8olYjvC^j!t2RIi7$3;EFt|Orl>y07t$llrX%F^10TcuiWXAjfSqpv858^kzXtt+ zSLDdpkV#BcZAFBvD)|9<7Nbm!A%qT@N)8L;88k~hP?<`>c^&NE$)s@{Azfrg@8PX^wp+I^VlT{@E`6Hj0BZ0_ZYZfnnLA*z{^m^$tiTA{Ua1TBMCx`6T88x(qd%BBpAM+*N z(@L8N`56@H(SLUv#suT3^2QVOv=i|W$1Hy^rGxr`zq_fa>>y^5IXt^1q(gZs_U}$4 zDt2OWj{qK}W*Wyou4WZ{(Hfu#Fh%|o)62}bT0yoDlbc1~xCQ$8qudU< z>>Iax{vIR{#(f&+UHSww4J}EA%T|cNCvmburaom)Pv$ff;A+-4e&hB&NJKJh77@u< zcqBB_F%ZcNVeBZ9Y1xB#*xP`d@##LU;bw-J{#Cb*Wyt&hCuar8b`P;;h*Natb!0V_93znPs8rjs6GB z{bQ|ePezYj$o+@baqf-GJZG3P z&%>bs#d8-++%3LR?yBI5dhv0^PQw3-Jon*mb}g#d>BdW9QR)s=s)Omm8>mNi2FdC_ z=|W)ahlJ6VC=S~tssg3wA*RkOZnz;n1Tk(V6x#{^p9aqEn2{>Y1#_3NngX#Z^z8q{ zs>tzK3Z>`auNPs&!bT(~;Bm7=^Vy?pG+%bSHx^N$|D+(#$5|Q>vamDs%m2YT3~<#r z$XixG1`|&k^G(~#%SjM!!mF5wHwwIpaJ?Q?6%&Q{5lNLFLB}JJaV$3GD1hS>MMjwu=vk{PF05ag`HkL}8NVh>k`^Fb6l^BN(b>(4d-0om%q$HY! zac;|7D;{qH87=UBMJQwFmc@_MTjs#JJUHa~&Io5I@DSO$fcjxxa zTYZA9sv38&WkDknL%_)I+|`$FdFCno`aZ_g$oln+c95LJS!IV(u!XM_gT%olJQ|dd6@~zc32E&6Tl_N@25{-A23Skf{HZ6s^n_MVYiLjxCM@AVLWm)!7Qx ziqT4rCJlo40c0NnDIPc)N@920sOnRF-%VoShLPsw;VmM~x9E*gRViLrHq$d#SA@2I zu3Geh;mr1ffe$nru+k2yky)OU4+M8EXcIVWGt)UjCVyKQD0dbSU+rSd?ueRYjuFL+RMJK?)lm#<4;28M=2fYI#cMHTI{1&+1fP|&$H>*XOY zRlK}dwB-ec5L$Ub6rElcSKW;v zo`fM@`hQ@E)0b*NPjf==hS1=)z@riW1+qypC7l_6dVwU`8_7m>-C zBq4+WsUg`2`2WswBuWEAJlT#R?&cffs@2YtDT_iQfAzku>g%vWS!1<_2zMz8I+AO` zfl#P4mbt214LX_pTng^9YCChge~f>NmFkML@iHU*uYzCZbGkAsD8w`>H?2dyF_f8Y zzTtbTQ{@i&70KAFKu=d{zhvg>)ts9F%8Gg<{7bLacPX_;r4dmKg(3`5XRo($1_plD z>CctwTGq-uF!VZj%z0?mH3>DS6MA5V4`(|Y)@jhw6RL|l7^mSZE3WYd>kAWVxYeK^ zPAHGd&l0NV)IcESv$#YB^JmDU^7aBd=y!R0w#A4Y`VIgC-Mj$SX9}4S**IHhah0UWeeDg&`9JkZWBmkiQCLK(m575KZx77CT=6H9%_&c7glEVXv}Oj zzBpGz#mw{y%R?D!W$iB-tl7G?kXSLOG?$?Aw%I6gn?IvP4oPXkb(09uln;+Wu^e~i^Ak+DF}B$NPv;mOZ}jAMtnJFEp`i^qTIIUUtLHM@)<>32J-LnZ~{ zykEXVXxC!v*Iw|dE$=X*y=x_kJPIn&yE~~p8L~we9TZ#x@+yOsli@WcGHBOqw7 zq6_H4MmtTqsZ5oWK4U%+C{UB3Vd z&3yq?f@JfXD%QU$SKT@WKtSMR+34nSRo|LnOx-Py#NbLnuF9R5roa&NI@T5p@o)g% z@Th|yIrHA&7#`JNlYvc)Bih{1dIxu=ns=q%5T3PIO83hY0DE3TnLOiiXj22X!;BhQez`lz5o38M(!OCblOykOhf=}RbheMl_x4-D+>{y!0_o2 zJjsDeOnIiA$W|=axh9IuXrlFpqJ$l+Ap?iTT@8C5uEeOJ45$rSs6p*skKm>X+TA}2 zqFOeE1ly;20>QoX)isJIG+~F9vBP`v*eubf#6}?n9Pp5bLaztAZ{sK1jb=T)n<^JQ zP}Nl19}lr-d@vFLvE*YI3%q4dmfm=^SFk5bmF&p^jIi0Btv&}OA=?~~?XOUbS4)E- ztIhD%M6BIvsvRWyM2Nsxr;@u9^LhpVx!!=_3bsXX)!!SG1y^J(<>0m5RrN7Fz3%we zb3)hJ?kl|d3$Sdq51guUo}%8<>pQ*}J`nfn!GL((yk4hyJuy>X1G^RrnR+6=$#Fvj z1AR>O3|?VJIJmllr=GKh>bE`Bv$z42HV#jaqnR446Dc*QbTDIXV*7fdnrer64f^1e zsw&+|R>s0ES-J={uulIvrM_!mUL2M=d;5cg!fVq3Ghx&OH2>`T7a|%CH(gA1b6MCu&d5lA(hvG4QhUGlI zs;5M`Zttm>i~C$pHMF`xsDQd2Frv0g!YJDy^s7rRRbvg-Blt5^AJI$oz-PbhrG91g z%zWNUy>Fp(-5vp!1QfxNRi_5+m4l@M!4hF4M98j8w9+7Upx+U3r`4(Nvxqw*4{@hu z5qEkPalZ%J=E3>fbeI>7)}9^u?yd^H0b0P(oF7%Uvt`inlQvhz^yXD~1L z*!D&?)y}~IP*FTv(nno}#kO^Q)yG(D+p(Xrxc0WJzv>;w7WXsGN+|3 zRy+tRGgy5V>%0AyoJGn=sNy2!53XMglmrWxk^jZAS+_o+S6=Phpidv6ihj27)|{_` zGp=r4lJgbv0r*w(vYhuYKf$tf%{gVkaaS+il=E#+wtP8{z#6IRPfhue z>NVASziu?>WE+RFChh>r8y@x9XdmU-OnN&Q1ugiT``g(*UhjwU=y01Urdz(zkG_VT zH9xvn|NS*}ou0D4`dyc2A>1e{lGuuf8m-nDz4h+&=rqDFpY5-DbNHmCvN^{}_pu<-i#Z>ghk{oY$@Z=B^>{kFOw^T`x7&nj8E z+Nb^~Bw1g#Iy2`mb&F;7(e;O`u6Fb4%(%laT6?4ntbxXiC&>VIhr9+0Fo`o4 zaWfzKMCN(IlKLoO_Sm8rZWMnv<2RaIXNC2V4CY(4vB_zvkWI!$r_W2i%$Ip*89OZk z(-Yg})Y)_GRK$FY7v|fNeQ)`jtkdwvJ;*G-=(O5GXl3j!j>C&n4zlbSf%0RrZ!c~U z|K+L1_yh~NEpDnfy(xtaPjHH46ut8>Y_nhxneO|uVok|&@LIO34x1zw074vCUT6+M zEow@E08wcZD5ub0dI4-i7?cR675o~>JlKB=04Q_hx} zjxSbT1RX$1eM6Kzc1e)ZnmPb^H|3wtU7+PS(Q~Cm?&<-yUxg40C`4PoN{ydi#hmC~J!ta;HHI z>&fDUSR}3l8EGRCT053~&3pq+rybV@eTCTdEDN&`EBYrSNzzN=w58(YeQX|;B;UjZ zE*FdI1?+MU=UKo&oxRjfr76nfJs2E(2(dN??BgN!26CemOGQaQTs%Y8!X`R$i!JNn zMAafP#Pw(N^`IDPBe(`Ud;^~#LyzeWg+6wgv^*rYJFxr$9z-4wx=^V|c}U&0y&}Eu zG_`k{FBAzRMM!iw13!*W@l)h=0MTLz zel#-090q{KOtntfzyW9!>`E|V(jc22Y%bAu6rE+;+4c}OU_){*{9=G|bl>T!t4k-2 zG5jJuX}ao{-wkVrZrH8WTD#p1c;0WXK|HApBE(RZm3+zKAkCslZ8#2IL1CSpjwCx9 zlAnVq7toL4A5vo^_Zz(0-kTg!k7HR|h;d4o;cS0EDKtf>9)Ms46Fz~U!m%;n*45{q z0K+z}|8#=tb$lUE$&5`<3R0lBpIyWZW1JWK3QCM<#g3~+P2dNjn8Qf#p2HZ2UmOl& zmQD^JP3XEAs-_p)$kt0}P@&u#eIt##x@m^$s+g1{zNxFPoS`ZJ<+2&7S2`a`&};}L zt(x705+_f9H_%vtr=Yl)tVS`wh)9riVeSzJL9mzHogKM!VNk%ISrobWFv(-&C@v7% z2%SY!02d(w)R-#x2J~+j`~X*D19u3I`CwmE@B+@#1Fc9!VctnU*X$`ivrwvwTL!cwMiNHn~y2f#PWZYH38~)lC z&8z{Rw3S@a>Dy_crD6~qyQg5tRpiVxT`cC!xAb`c#rHnwPjmhf(>Tj*?=Ad zRv1260BeK(#60S@E#DCOxwym)8f>(eiZ?+miNtDi4Hbzlm}`tX%JF_$+TBFt@UY6c zF9*0T^yN_OWD0o4dBTiK|Fh7I!9L~z*-`wNYuL)O3Qw)I;S$*XT7;{tBw<{L?HBpcbjA*w9cv;8>EVp%OFYY)a1^os=%DAr=kgUxF*xBzX&b98{9LXZ{+ z%SkCO4si#;-(hqFq6jo!z{7LX2)jf0OElheORNHB<#17IG5%cqmB57R01*^+{BCw! zdPPjM8UW^oAsHwy+i!+YPK1V$V=Sr?$PZ*w0B>{^(yXQRdrZfe&w`J@JlGE!YS%0F zlK5AQ7+nX0i&DWwfmgb$wj+&Z+Cezd5u6MK)DaOn1u2Ll5<42?U;zytuy$@JC#Fbk ziN7_C2C>Z@W_;OiJOu-c_}7|VX~9YBD7UonSHMMNM{hGl|*%=Xcr zODtkUlCYPO0#*{>(eH3YFn17CP{0^sz?aYq5M(fIfc}D%8>N^^GySHPcw^P(&`RcJ z3h{xmjQxPEAOjO5iP&;&5>$qWr)%sg*6JDygw5r@2pxfnMNuO`R`i7-Nny8+zU5?& z`kCs&Xx6VzRuAZD2dGg9WxR5mGb8K8d*a?ht{4x0!tKs6JA3xv?M_Nxd5Y@A@XiCL zsKMo8gkn=l;2JAgZGR(Jb!P9k#g)<2y2 zE*6I$l@>tq;Gu{F0LGTuegF9=cs$>S&HBq1N8}$$C9)0I|h&H^gFZit*iXZoU#4lFrkAI8s z@Jj8TtA^mKea_`q8GJRy+SwQToiATZJ73Mj7wgVfeT&dZ8qN@lcSrTgwCar-2V8(S z@=AU11!^!}OJA^)*WNL&{p$jCU{D)in>tI?cUl?c+#pT7G7>u~U#aKMLYTb0x_9HF zprtowsl7>i<+GLFDR6)!B!YCJO>pe=&u0TaPwN|ItL0@|ga9E6Nq=8cq`vU5KK^&A z(q8|tKIeDp^lG>}5aJM6uze-V1cNUIl;z)|tqav5Y-`Ge>PTy~zU@Ng^LERH>UTB2 zyI(R%!vN^F_elnBl#!w@@6(sfQ77Wn%+@*TZx;3&eDfmph;_GKaIx~OH#2WstV*oz z?M}LaY%l`>?KwLWy+kdste5oCOV!OFmi;eNT`e|$!aP-OeWcHxhoIF){mMMm&weMP zzn`au1h7`>gD+QmMnB1{)(_2Bz4cv}tD@XT6?)6%YIy#ltbtdkZe?E!x@H=5A-XN- zI^hacH6&}Ke2Jw`ejOP^o*T?zc$1qfh-#{07E$`^6;~*3nrU6BCaNnQTt#{7;FN}= zu2es_Us!1l2*+Oa~@_Eg-hyn~U{$+%i4 zpTKN^?m$EX=L}#OUJMrq0TrQxsp8S)cB%xE{2hFd5)w2anM*kdecB?`&0eus&s(Hw zLECpNLNs)arC(U2Ql!K$7GV<8!QoAj)BtKRE>Oza$c+NUcS2}@f_%x1nT=k6GBAKO z+8{CbELr0icXL2jp{3nUEoWtG0sVR%rGKz+NyM}`!0%lbtLOIPH4vpj*M~TqJUlwH z2xinkzngc6Hwl5cCVy#qT6c72^qswknNxfx>D#GCkszCpH ziRvqESTNP))6ccm(I^Pf88<4)ymtsJLHIULp^o58@?-zy8{dfiHUBYEWY> zx(Q?!B{%8o{-8ENh@N|cIwMV*0x(!yvKtV&i9}aCBU1AJ2nz%VCe_;kCm8*A#!c#&QGB%%#E|hlc-N)LYvkP^0KYB*%NRBDbI3IhGsrU` zQzY@r_Ijdyt^TO$>mWHfl|-?**D^+5r{iOA8~cxq5eQl}lKosg?T@O_s?_?As=E_@ zq*whBi8$dMQ!Vg%WokH$;t_D^AU(Kj#2e8_3GEF>JMcY7T>{*25AEy?tB&TYX_kVu zt#Tqn?4H1tyxj6UZy)R|gnM+->!PRKtoo+kg?LSkA(BUmM>zAs(e-n1+8dkK!e;Yj}tGG>2pVz>_H**X_ zq+`6vbTcO#H*-v@n>nV{&CI@-mN$)`iTDRRT=^GFb5e9N~HRG7lVwJ9t}~2G zJ$acrRR8lfRa|idwFRaGsew{Qat6~%9a?1TlH1hyny^^jvGLAF#&R1&m7=e_UG>zH znw4KY6MYZi0{uorR|LXdFK<@fFho5lWk(Ri5e7tR7J@jL%$k~kb|Y*)k~$G{m?z}NGP=v?AF*1bIw~MP2jt0m=54Ax9s)J*HZ}3Y8I&*JaM{&Y z+VsLA_JV2-I@dx)7{{MVjkJnb|IZAjX0&RrQk2-F!93su-sAF$+J#pXW*)pi#7{}X zoR76at({e%jE+NrqSqtzeYdN~K&5=Ttp>*yP7?460WK>Z^^!y|M|&hpW?jFIQCuVe^#; zDyzeM3u;E=5YC*iW*WCUooY;=&?qn>EIt zHOnHUp_Ws9>mZB~_%|c02&HMJ9<NI>20+)S+BcORi*PP02gH| z7+Wmhk%qz+SW`;gLF{5oK(pwx;P6y$%p_n3ivZCm>j~ZoNRqFiI~HD>P^?HB@>-hj z31Ol$K~^-_DTnvA7rO43Hf# z0({IcuuKNLWDK@|TtNec0|}r%yh|n1>`TC2e1j850w=o;CC(qC>axEOe++nJ@5AR% zTA*K&L6LzO@Z%rJU@~DY%7u7x0CAewFd&0dhLcH#8w8GkVq&<6)uza!;EqF$Vv^3+ zd1a@1phR#a@K_5rV#AOvB;+wv10nsPl)^j9pOm5)PkxrFA7fY&Vq!n+U|@KYBsL5~UbGcV8>5!Q=H<#T%(*}w+@l5!S_K&|#>W1sv6$8v=SNcq zU=Dgb4s4!)?4s0xK7%=_gK!q}!M>H6sL#AdO|-7jkKY4p7SVxk?m@2UZ2i`~Y7TFw z-KWk9;&f1crzN zB-xmM$f&}!QEgn38ZdU0^`K79gfo4Cj3Aa6%`#ZmW|kVAVQ>`275L6BqCyMir&Dkg zu<@mt7*ebVA=ETQaDpu$NdaytX8yqh*s^TJ=(-EoJXVe2wg|+J!~~@6VwWs(2>ume z?M?*o4cLn`GF;C|6~RzLE8_EUdfF_QDaMsqEK?$r!$^!^ngmL{CfTh$%4T6v%fgu= ze8rVCEQ94Qxh9xfF$FL(k()v50WJegP6B|wCPZ^{uAfs_#kA@pDaaY5$BQF_L5wD; z(3!^*U>E&C4rb~JRi*va%JULbL=h5lnPmH5iY|iK73M_{x=MPEp1oRCry(^U9+@|A z77`qa@XrMYmlA6zB?qH|Btn*@kR99>4g#&`FL$1dD@&#A>Yr^oBK@x^Cf`BYTk;d}xf!=Kxc}e1%!&E2O=cZPxJ; zr}`clAOWDk00}aHV^|XX%wI6G(P9fCC2Q_`aF z2sV-w9>q>MSy_>wd;?s>9?FftXv3%?6$M)m7Z#xB%a)hWJ)c#5(ipfX%|ZM^q(Y+F zjD+V5AUA79`ay9~iHuA#)qw!f%kDtg74WVY1f>BV)19H&#XU`O;_CfSu%L}lz#gnd zDsa~9!)Mi?KBOD=2@6DuCG4>qm3G4Hg^BeMa6(n+n@& zIH+*>(>WCedG1TrF$E`o&BK%T?D*cQ7jnvij%@fi=i3pZ z&+nx+x)-j2ZTMy+IaJ@juj*qj{g-}!U)8&^<=>dphrCC!_p_0MU;|-g&{_W0J9YQ{ zFfq0G_j>RBR87UId)I_-H5!)?FRjYxnRsd3;)|c8X4n)r%Xym3?Q_A(*A{a-%QjEf z2DexXV?`4F26H^n9>3{C0n&YzSq2=aG^C(q?)Cbac%wLb`j+B0JG{VjI zeXGA2t@gDyeyfL%!K#TT|EYgBMh&$${!_P%QRD3`|J3&WYTu6Yz75jDmhhr~B=Nmo zF;dOaeI}^KYJT@r9wxud!Q_{M$qHS4p!z+T=H>&j_TfMJ)dSVYUS`^SshHzllfT*| zWZMw5;6W5ii5_&2+FYE)IeI!h*|f31FElX?ZMEPP)*VO^g&`UBO;>i4IMM^o;J*kCIc=e4phyv3u-FV>6y zqHdh1Qcy9-wLzRT=HGhp8knAbcN~ywC;UInmAf)b$i`?aq>3Q#pE9phq~N*55ZA;G z14U2<+%oXNxq8lK7*bE`+c&Fg>=)+h{r;-z3pe5mzgkaw)UGQjwwc7jmB42EroX8{ zdi`HjkDQl!>5sow#T=i8zhPQ@%8^6|*KUNL9vrE>^AFCN?qwo_M zgTbH37)<*_#$drGSRb=C^U5cx*;0$YctVVBko|>Q)LMJv+|0z!)IzK9_RXu{!4U)X zow9~N4jRG^RpG$UDPO2R*6f-(l3UfbA2-tdw+TJz=eB|3SL=Un!%E1fb>nLhd30sFmjdAi2lgnw>5~rn}qCqtsdpjJ@d8EQ(;f9143{8ySfs% zYy5{=Vey@#zg2^E#dg)Z{~U;IFOIb#0>lE|A?Ho*Xn;^j`@=$zGELjnXJG|*`Cw$f z%5WR9BVq3Nk^Ye%!xotd|57hn;SkUkBEJR09jq7CmoaMukSBR%(g$fH!~uh zIMnKVJDwn&m9)7It3`xDu~u=ZllTG*KHp8eVqKV-p%M>R_GjC4m!iZwD88U$qEaV| z6OZEAOT~$pUHJG?kXctY&`V!XmPiN>VV5FZlT0kJFZ)72oJ{PQExe&DQKOfZCLBGm zG|{oc8`}UK_Z8TL6lu%TuOt)YdiwB$gQKpOW@eTqiY?RVdh5bvhjmI=g_nJSFFNkn zTn07Y$Cm;4>3UV?#0={~-J>G$V9DoSh+4CW#E-wwpHw7Hu`bewRVF^d+k00fUM<;R z#I?Nf>XW*W4isU9dF z=?#?6l>Ui@ME^(q6aB3JWXcEN$Ig6}88a~PKepZSq<*LYZ35e$HvlnVWh$V+pfW|| zp|W2MNwl!C{zDT~V#f|mj4Y!P!#)F0Vo2JCUZob(w+&6yfZ3lJn)n6Q<24RTR9L{y zA&rR-3tOJV2zJr$k4_BG)%zq|{mbErTg#0cB{fozuBYr=|F!NvB2ne7g`Fgc%&meT zfB%e?Qxa7=Jt9#Gd2-c=M4$YODwI@}_=~?pt2bK7q12z5&qpM_jpjm<0VIc80QHyq zCI%D$)SJd62G}hRW?mVSINBb$$s9N?k+j;<+$jen zewDlkk^uz8o&inCEA*!aB}2>(q^ox%U9&9DSO zrw&SVZVSWMgMf;*FrRer|3lh$07y|}e^1ZuEW111%dop73EMs7JUJjBvjV~y07VZ2 zCliGw!-|*~R0Kpok`xFkC<+D;!?_qvF(*`1R1Am#70-m8fm77)_o}*fdWS{4|JSfn z>D8;MSMR-g6}sAaGZ#bL=*C)|>TH7(T!B-a?G^hS-_?ye%~@;D&+*m>=R{=zJ8>kO zD;S8}p*g>BTgB7|++|eY&w+))x&tGjj+)h{RUn0ndoI}glyE)^1>AS4y1ZYx#ZkYhkuh}~joZVsk6;5>4DR3X1J+ z+!yx@YdY0=BkMQQ`5nsZeUY;ZoU<-+?ydS7b{k%2-b8BzWwiL=qHrq%-;BXD_r!r@=q79hG^+Wahk`H&T)niQm=q2ysGZPE1csC5W8=#vm*qx@M>oSq5fAphxEvi zJEoa7K`-HcTINvjVQ0sDr@JLbj}z@!W~#qKhF}KFced_f)&t53y=lXC46;XPnF(+0<&K5n zaJf;y#$MyBY!%_J~k`GIkc>Mz8z}gG=OVkAUXi1Kr=PAb_I z3!GJ0S>3R}*($AKwcDT*cPKT|OqLD{hM#Ny!*w5(P}V$0c1y9XMor8`Dj`o(1>E)kW8 zOJM&4akFU7QK(B_el|(LDGtJN9>H}*#k7$E3KB7jX>X3N&b7pQE1KRCt8*=BBg9?6 zUs}Oy(wp3PwMOg`^2O;&z;~U9cU#-Lvz5Gk@K?Ffhv@dEv_sJxeMvA>Ksj9yrs);b z38-whg3;8&8dz9w#^casCU1#K8O3@FdXJ`nwm3EObsy}8&}uWiUW08~yn@-4CzN3A zP4EJ%zSh}i3@xMbg)=9ejlqqn7~pU{6R{+n%HlkL;)-%?BDo52yc4awg182P_R6)+ z)}2NR0^+4rB4AS@Ag^~VaTfm3Yd)_=YEI$QQwPUfIX$psOjMBd zGrNuW*Nm&L8u2d0u?>ry6{ATY>V=!?BldrA3CCE7S<8_9JUEqf`2{U>0@}4fA*sXb z?^w?ynQI!u`)#lcP4lQJ`7yLFzGE_YuI&2 zwr@YoURmaBcO1R`iPtlsv?y^EK1ql@j8=LJ*Qz?la%WdX`Jk@%3TIoz{=lPkr>u0= zD)w!6u_v#0(v=j4uXp~eJjZ@m<@Cbo%rFQ%%jPhruf?+kSl4x8+X2Pyw2=ZVsD(lM zJaY~NWXWon&(E>YYG*GvDG^$>+W7*qpS#A{w>Pr)M3vjsVDksB;WW|PBX@z(3vuWp zmtKXVdAdQjCbH#mpDx$_2R4V>m{G44Lc`mc2kf^+3s%*38$ z(RCQpo?~CE;~88xI{&6TS9k7>&eNMJ_tb5@+j$30KsQaB2T>GoP_8;yPY2u z+jsxS%J(`w$b8~n=UOb@?Ar_4_xfp-(!2z({++`IEM>MQYoD#-uOq?(;L@vsj%?xV zu5jJ#_z#_(R~&qys4o7Yb6|nuWWRpsY~7!}TT4t z1d0Ri_~E7tT8qc-dlROA>O2vfYN=0w8Sf-I3)qH&l7BRDloi+%yPf^|sk3z!TA?e{ zX{;w0SXK@U+|~BtqG~!z;eZ?w4?nqxuV6VKLKJ*h2I;2UZnpbmP)ySAltCoj!u{2E zltH-zZFze=v8G7RH>k_kPqLu&CtpEf97oK1QqQA3kHHf z#Vqxib7;00bizjy1)bo**;LF*OY~Oq)wgDP@dP(EX>gthpio_9kb%}UFb|3ZY?0m^ zu-M-wBzha(J0*Gx>Kz?N+(C5i)7wr&R556exe4Cj#HnT1Z3P(4yV{?2ph&no9D4Z> ztqB|OxwBms8!(1L^`T9Iko0B8uAog<+f5A#xk}PT5ORqO3PR44K|#phuQjO-LjJ`4 zd4$vgq|}XGUC@^9Cu!Yv1Bb7vBe}28JryMCfvx9hsNQsZErd-QUR;%ZO3~LU)7%by zDIH`3$U1&ZYKdaJt?17w#vVm~Q8C_8^j8$)T}6LYG2X+13)<&#B4FlShrF1r0|(tW zuoFuai12~v@ZQKzB+_w7%<2(d13?XvrqP9#iuH&bdUQu{Wocaffz85udsy)d}cuAnM0Uf*o9gb)$FDn4%Tp+n-Stz!5fu-bzPyDnE4yt3}aR2ITi z)^$`?7BqNTU}=G7a4gLsxeh8sPz#MB-%S{S_F;?6c$I`(G}$TY*r1z@ zQ%48{u6^5!&N65(9_W!w=sN*DHlAOW=)1Z<0Qyb>JzxlZK6WI6okS5}&JPs49NHE4 zWHl^9e^Y@#UV#%+Z$hd-cjGmBQS(C_d3qh5uJ)Aih8>3q!Db)g1Tuya{bTy-3c?Qk z8~*(jhyEFk^mIVFsRV?#(2bk%9QwC*=z;I-u@WOYonF`>s6yjMS;$XjAwT2g4Ux$8 zh#}zIxCYgse?ln!YmYghOWHbP?S-l|_Ld9|fHr%D2dZzv zu<&7l92T@bnDC&{&pXUh1bnd2dXsW(660 z2oi{eKl~zW6>h|QK%D!El0~jpImnTsis6;F6~rX=gs})vo(o~pVPM1jQaENRu`zU1 zMc5CpbnE}E`1*wlvbv+Jh!5N@@XSgSbv#OO(1(@n##1D?D;0eYm$P@c5WGt@*WV+3 zrms+p_X%W0t`VlD8LUNk^~1D}|2}R(#N8@zxxkP@!nqDre@)SMWg(yreHW=xx|U=Y z4rC4y!CH4I_?2!dY2$uP*`nX9%yX;ydIdKq4AIq10A8*P<-j11{swSy^g5lFeqF)w zMf5233Yvq#5ERQJ7veEIW@UH0O9a9gNlnEMx|AAw($~|pd%`rjrXP25?{4OGpo={ItH%4 zt{7-Oe(}07e%}PoKmiGI)PU-=J1k5f=%CBoA45UXLWFB`fqqMt#s}jQt}|g3y~RB{ z9Pa(pBV--C1%P4@`&Q)??F58+*;H|Oj!ZxsPlllK>cCW^`IQ^iRQn$16qLrG_HU2C-@nlkawMPPQP1J)v6Q{S*aFbqfBfF?Qh$GQ0B! zEQx>hBYXD;XP4}Fn%~3FM0wi^i5TNIfi^;;kqIg60i1m#h^f3?oTZuQ1SnN}}=3u5E3gOBbY42ubaPV^OP zgS->@$*od;xaAW?+%kcQ!$6uX;3g_q<%M)x2#|~S`y8esU0EO^z`s@abEskGikNd~ zwLZN}h3FSGDK05>s#+P2_e`amerJ$`)(+PGh9IhWAqYKF9pE%c3-Wxb;9U!MmA;P6 z`pMZg3(Q^iYu~kn|59;c@eb?wCM+ z*K^nxDn+AAR=X3>xKXP}zk_NBDDDAXVBCbX(mo1|^9dBovzF+0fjL#WAEZS89Bb^j z^+P`Z7Y9uBFW}PsCp;7CaXj+wSG2+OQC#3NaXa(}h`*_c1n$tY|0Du*18LAwOm?Wz zBIQ8=h#SN?AXU~ua4K>EYz~h{rYDuFpkA*Yp`D0xtWPLcanB~~-<@d68`O1cpk9u* zy)nDu@=6U5f|e!8;F4zGt~EZ@LL=S(CL-&1<9ld!zQ!q1V0pT~AzZM-0WT~-<11W*Na*fCi%im15oxypUAC0>4Avv4ZfGPy+zY3alO6HJ&`Fz6 zcd9e4P^MaL!__ua%dZvv-}34z5lc1vM$x})7>lO5zg6^G>SKw3I~=%Rzc5P!Dk!=M z@0UpZ<0jr|jFqZn^(ALWrmAYlR8^9vpiKo&LAB;FQ;}e%EcI@Y$xTHjHx&tPBGrX? zvi>hrUlUwSK_VN(mn>vjYpPSG=~X%YhFQw_o7N~fUlaYv1K^SzTO$W&>nRWkM~<%@ zW=$MsO&p>obbpVPu?u4B3q%(jRP?Xw$;xA?3%*nIZyLr@7ksbi-?Hz1aUPeY&ijv| zAI!nvHc^_4xPMUe?;6HZ&L0*1`}$bwy!BWEUus8pkhc4Y)DHZ3LEHElQe+%b)DBKy z*Z(6kp+Y}M|M!>x{3rt$%OG;N@qK-Pj=Ufy2D+cPesSpAVf)zi`)JUD5^Rmm5JE&Q z>5wAJXmvl0Rv0IKQuK#~u3JdlN#UFrL3j|}0;Oll6{H6dR_Q_T5i@xQ^%%k=H*iQL zY2YHTC$RumZ&c?&LRskfjV+RjAE8Bt= z^_&7a)bj^O@GaASbGFI~`a}N;VMMK|?;YS@5=PV;$Ms98eVqH0R^fixY1lG zj}HAS-a$aY^(Jb|Wr4DqvH)l<0QLNTus!DqG|@qvXtE&>q8j@5?6u#V6t+G;+$A&`XOE;=rEk(rHsh(5Gcuw3gY4tvz=8$Z0dKS zwu4if#Jq}DZ|t;mL9OLI$yKKtACKlS^*liXY7ys_VpHcxvXq!)LEE`{tC(j~qD&EVYC2f8v^i zTg4>(T#+~obkjnGk6+L!u)d~e$$A%2TrD^-x4=8@w4N!#P!q7>Og%xa=tW`p>9~zxMGi6)U`x0GIhmRjSuSRIBrXC_roDpaP(2GAE6dzIR}?;OF}3(PJS2? zrjFx5G9QGN<3Z97Len7#nv3B?NQr|hiBi#FB7uuK)DMlf7?_FH&=FLP{Yq9Fh$||H zg-JXm+X`mH9kdidl8T*DGN~Y#eC#qUs0MNgVGwdjdCXSvQOja(HRL~HzbtkZd7HRc zN}=Vp6NUw(pk~mOD4RIYDyPs|LQWwdqIM*w7@Kn(SYmP@hVbFq076wt#;nk`LSnO$ z8QpojC`48&NYIN!_5{9+fm!EXKDEa$78dY}g$4X#N=eHgUNJr8w#YKE(nYgAY>h4B zD_w}g%9a5KOp|rd0yAIHdbZ&Ln!}ChEN84r-i>?(ttTBzU87KD%aSe4YM-H!uo8#G zPy-WR_+Q}uyqPcJU*_@V)Hh4(nw{054VHjSe0=TA#0P()_{2&a%9K-SpzElfM5{em z5ImAVv@&ERP!=_&wLqc}HWZ)b6hd5%Lap5U$Rq$l(0w1LyQr9`lBfU{74RSQY@4H1 zH?r0Rl>}wPV!WUX{GiMlB}?Q$z*7Cr>JXVv6eRMA;zT}CXv1tB)xlT*z&fA}O!zB0 z7-KBWY>M^Ylv->zW(|i}?;-6+UGC85+G`N2Uv1Z~v?CzqYgPJdcFfnv!F;WXmQ+gg zd05IM0iz{Nn%B>zHA<)ch8-#kFMbpQ%Nsb8jTcbfAY?UI-Xs~PqHFZ45Psbrqt!Tk zbFfHXU?+K+kE;XRyR*nur0+(xTcH4Q+XB}$cD;=B!$P}$Exw*&(-+zG#oV(5OP7># zon2qbBbJ$<%kBCK94@otcKg~mnQ-MGe%*X|ZsyN!1JHjZVJS-W2_tn-Khf_xfM#4ESM!CP32 z4*DhJ`nmXtRrLjfO?qp)LZsp+F2r4>#oY8bD=P?vR1N% zDu9KxyQn^A(ZX64=rvS3i))g%P^3*q5kPbW#+528uI-`j$NNH6W|d%1lo)SeITT>9 zT`&dXL?|J)5#3gz<6s{|jV%7(XelVmUnwe~y3r?V*B8(m8>K`ZgA^iF`5i1&fNS2N zW?&7;4&MY|9xj?~Gv1*(#cU!DvmAu)L^cOJ!?e?7OKJGP7?j`8EFkz2BDM7NMq5hD zh`gm(7Of|~rKKnj1gSCJrPX)LfQ|R;xMm5ZTV5@FkFWBV=y#)HRr(e?3=+|+tou_1 z<=AoVm&LwmpKfjSUcJiOwdmERxK}TH6}Dr`l8V+wRnxLgoeNquDbn1P9qi2t+dC9n z^R8W7YB#4&h!u2q54=a(lY)2^9V!46d(R%kmZuu)judPgHImW^DI5jm$u`K;4oO`b z&C~@cT^dd4h7@cnHByj{6l@VSl2V0~jyxrstG8&8TA!3l5iP1jirb1VMsMsH4Pu%i z21C_*I6^{1@F3XU3V;-W%rH}Me{X&{#~}$F*+{ipBL%xIxs+HR#I&)-)ECehDX{7+ zus8%jHcu{wV6(il=u3CF{-|LRPw9Y^mXso>(^Cd%O}2E4Tdi&nsmqpeB$Zo}_*a*kHHdKn z27)N*fLXE#%HD$>ETPvE^YH^cK2N9OK95FHF!p3gkx8tDfaF1m6)B?jEs=sn-$rm? zl1oEjBPkt`f{`(o5-Udxj{f9g^!Ku60d0^})G*0RX^RxB@k^G*H+g9rIfopvGP z^sr@Mp>bvyKCsKj8F~|5s@viQe-G^1>BI+G6 zx|li_N?r`@4&I=x?3)s`DtnI|3lhhn0pNL9I!!RZ2`Dk{h{ZhYop? zWQbrC<%PopQepB?0P7s}aaw&G)`969%oanXaTq3DRSf1L2giCCqG>RuMQU1V6m>95 z-);BWG`=j&N5lp-YXlr$XSWju!eebD1iBb~hXK_n(%&C%*SFcH8SmTmy>|Ux`&Di@ z>RhbF>G#{`&D9^ULt@byK@zIDBnu%o(H>biDUx2`oquv`0&DEW`h#qmQ*AHFEwfm# z)Yg0+H#I)S{!~Rgn zzLBQ7bM0W<_3-70>$;hOa{$|bQZT6Iq6`;VR)1h7U5OSI^s?=6m`yrNlXm?<`!uq1 zV97sC*IWbU7i@INW42ay)KD z`=&rkST|T;c35H7=U{HmT7aIg0^O7YT4#ZI(hBob4(0|6%+pqwXL2xWEHKZSFj-Ep z=W;;I0`$BU(F-}4>n$)ZT47e^V3u28Ub4b0%fVb{@0G15{7x&-k{r+?3!;~;Ft6lb z7Fu9lwZdFu!jLfC2hoA^hr-n)9Bi)sPW#rC>L4r;15(vO+;th>%d;5&G0$TBV8?kW z{U<^P`~NdOkuoP}`!W93PtbDHvo8SS(En}MKey{&)X&a-6tlA*&DmKYS@2&1lBQ>$ za;#N==F_vE$v&?Z)3cwUYhzCRXTnxvz@h0G3a-%)ApDa(MyDh^PW=!n*osUAKli%a zztCY30yKWL^F2c!&EdX=h+<(B(OCi>K&M>rt>99eFrivd5Jzimv{_gsPASLkT!vRx z=kQmQ$fj`73x_!7ZFR9>DL!CeZdfABPl8zD1^k`Mfh)-0c48x4YMZXu(4@C(O{YMH z%;O8R(aGx`VmG_gmKAhNq!~?_rqgCVci0OqwNsW3Jm4@4ZH=~}vn39gZe&KmUgJkS zS_!A6a9Rkbxo|3l1B7%aq+B>Cg+eaj;2uW`;S>rvIE8|NfsYyHfebdOnL4Z|7Q6U) zMw|hJCIXpzAp-m2cDnDR7{@5+M3LJ;-=l28K5nLdmYt=~)Nug(;$gUuXNEqLH0gza z0rvr=r{ZbU137dKtVj~ck=C=>Kv zGu>AxI3Ng{@It+_>#hQEsjfr6j0@UHS~D^!X@dbxa7-|+R5)o+7vn0d*l;{^ffR>7 zQQfQQh7Go%l{!WlzpAxb*>gONJ|KG^+FI{JTkC2cr~aQtrI^K9tF5w)OYQeUYQMLv zsT@UUe;}d7*KLZ?dp|&EL7g9j(82*_azgtbJ0~BSXOYJ&=t%c53wbPrHqt+^$RjN8 zU+nI~Tu2Rw_F-y?@taguznjYH5BmB@>?@qg0%z5VSBCGr7BaUJ*CIe}AN^5W5)iWp zqC(WOLr@CIgT5u^HoF+2sj%~#spvXKncb!+yl=%6Sih8dYMw%DPJ8#@gIN>wEBGC0 zv*6Z%n`RBuJZO5?T3TSmzaq@zOSkCbXuV=QCO#fAD~t3Kh7uSVmGk&$PMxk7VgBv_ zx8WU!c?w-`g=)cyq)!V16h0KqtqN#RFg0=K#k|-O}#%7pHQhx!xk&;9CGD|B|cps)xt zfX+JD@>CKt(hxRdE|xZg88jE4m4S)V%Lcm#V&>9`k;OKq4Sx1wCFp!5KX8H+NF08_ z_7iG|`8yMZf%y`+IB*3HLT6!iLSgg{Pp+3MtTORl#C)nVwZc-JIrY_nO1D-=)6wDr zT;oOCsx}G?msam^`T7wkKAhy86d4p3sgn7quS(FUFMdHm)EB>Ih0OZl#TRI0QRCkm z6+&|;Ex^o|&H2e$c@%m4O~~VK$Ck%GNFFiKB6<7+@(70cL&zhX2J-kjmJq0Jm}BMy zGE1A~q{4(iDv&tx(%?vV{7%{jyf&lRb!v*^&B$lKzaUPKzGlcVq z6tV~#LNph_A|TGZvYT3fBcK{#)~+vbgHNfmiM`!bG-W{aM!xl1E7yok$;9l*CfQSn zshgy9q1fM|d=C_2ff?>LeBBM>!vsuHi!VCHEu)BL&=5xg?+^)e6n@WoA>KPlB~P$!I$0ubkqi)qQzeS|<% zkpNTyIgO0mx`U@wU)Y;YonumuHBo$gkT~;N+^0b5#DvxHJv{!&nIbf%h@IRu=HJ+N;{@9$u}QZGX1nQsEYw56Um1zfxdRK>>ZclNX* zShnBUZd5*kLL#+Jf^^`~U-Q!&3cKro(7E%v$49q}dw^ zaEuW>1uFc;rzE?uy9{&vcVc3EyAtyhSbwJovh&vD}UouN4&9kI+i;d+G?xaU+FRB7|L=0(^K3KJ43|GVoyE26cf48#gE&X5KCKm~Pxk zA=r#~pTO8?kG*9xZnMWKjoW2(WsR}PUR`KxwpX_`?y$$28h6^Ob>l93Y_@T?J=WXU zLXdS>3Ehe>-zvsEc=2zxvCUpRCyP_>bLI>*?uDNoB;IGQ?rPj`hE?MMI;a0nd+ZN9 z1;&GfXlFrYD6J!sTp z#@~npE3G!@)=SlKxgy$*pY=`G*@;m?!-i`-v!SgJ6o`&Z+^6Y`< zdGhRr=LPZ{fagW>9D?U1@+?3{?khd2ql zo1bIlod7^A&wz}4olZF=x?zkn#!+}I{iNt;9FF+vHf~st??*EPejaxm_t9unhzJr`nmORb zSNf?xl*^S>6QQ$;*exB^-uNWfYaP`#*+q)pfpiWxf)^|FVs{CRz8HP@nCQS6VM-=m z!Lq#G0aG>_7)T${Tgz1cNDU0zEs*%G_6UIB^ppAp%hq^1Q7>&nZw2J^8!rZX0DDUC zDR@e~PGLWO=&TxBkGs^w?aATx2;6}qapTx;Be+e}%M{Tb^u}_9(Yuw|`cg`GDMh3Z zSI}Vql*NEY* zKVuD@iMTO10g%S%Ijp$0%xSAmpSbilH~?leo7k zG0oVhkh;80i7hHHZdahDHYw0tn-#Fq9ST_KPTaO>+=XPjakmniYd5wivBQe7Re?O; zqr@&YwgG|NxL1iiU0~d&K%|ZP6-=d!2b65=X`As+CDzY)5S4^_s8hhy+m+br0^=bi zrW+3{u^$xU5hb>*z<5-NU1I!8iA^*fLjiWfGW`gwzX zcGJ(BY*`nzq6Lk)=qGY8#JcbmO1hwf=FaStj%rzJa4>Fn5Z`Ua3(Z*25Cdxoo6%A2 zd;W*g&Va7v@@S1S}MBJHM+t*hTG9plqpY)k7VkC|lY2 zJ#l@@R<=Pn2zgjVFSQw>I`!fy7YOH$Uh1oeytub|o3e#f^-*<%2KG^#!#S&u8f&?g zTgx6TfC_{0>2wIzqPDWFNCeEmKI%X?UXOYPoU6&%!rt+y?Uk){hdgSLqHJb=csW+x zr=A3uaXy~$PM_KZps)MX6XCS*t6`*_=2u6-xz(?}4d>E;nr*je1%G9i?x&!aa<5*& zUmnF8MK{}T%UR2y+P{oh;+C#pTY_p&wj`)FE4$s2a5GQnfBZ`_PQ0r6tPF~`yB?E4 zQQCtth|;#MU^j+<`5j>X|Hab(`0piVQH?KUP*md+85GrcPX%iB?P(D9GSaz*XyWKh)p9vKw1-z0;m z{mm<>_Kjmc+*cjc?ivX!@?I%}$otC*Hgy0RIRALHMWa=F^LTZA*-lH2XHAl9>8BoU zG{;B%)#=ABa$uu*4-7a;H9{x+wRSvl!cl7VGWoFAKzE23#jpo5X7Q>;+o4Bg_dLN})wEsC&$`v1f_0bxa}fq2yCF z%&mbDvkLwxYXhs&cAEFdoH*G|r}|+>nGkH(FtrU^agy5FKKDnq^&~Z@DD3lLYFGQp zA6c`%spogWQuxj#SWw(678DnfANN;baj^{M6b=`}6uhPXY2ECCN&(dp zx52WpQ`F{c$?2-$Lt~3De4(9mn+ab&z@iS;voLDWj!^7waW)Xy&@=;|UT5E)t{yjx z%ozR^L^oXn%MXsw3IbUV9E~ttFgGuZVN(`Mx~-_P+&n>A6r!ikEglb+SA_Y@sw%px*VsrXxq_U z-mGi4qBf-^u1+mGJ1UzP#f1f}dUUU7ihc(k#VEu8ZKsuMY7tf*nmX~4yG-hVB%B>G z+hJh&U7^Dcj#zgj;OLM{sE_Z2cpMx$BEB8sacby@_%4XYnV}=%yCEJYhVtUGj+l;w zPDdm-aAk^}jtf~bh{mZ$#ES-0BHnF*hs9^7gF^KPFwe8AIwI(pkORkr?AXw@q)SQ| zl+Z~0afruaNzq1AO zSyBqn65yFyk|CoI%B7GCJWXjJ3B=Km^%?*b(5avTFf!Gw{!ox(E{Iuzs$lb?zQR~R zu+y2K`Uu&w_K3&6gpAMeUkfB)cS9x=;W!XK8j_1}A_6-IuA)Of=ww=IOb_nn_Y5-+Oge=RoujqSG6vdK^P=guVRm!p`O_DzE#{rCF`Ed(z_&x zFkx<$K_snR#k!ADN0cu53Bw*K!JTaGDAj-geETT%&a&UG=VjRm%TL#{f1IffJN_FP zCrqs`WKfj#kqnBm-jP8dcYrR6MMKW;Pr9XtMe+?nhcTMg5WL zv3#1ky5rr*2(G}rd=C{E3Vb?!4MTCNw(2MAwtv6&n|)umVW&-3@3MdO3;T7t+FE&t zHJ_p0p!~wN%}`Hlw|(Q2bYTN-?ZFsQ65D1sN@ELdLmX~&y^XnQRe!tx+<_q7Ce|Dv zEpQE~(K7bWI}z6kPTkmAwGXaj-Ncq%sK)I7xr6;W6K8thYBSY4>~Gv9;&*Ko@o)nd z;nD$l4S5U{x#%MG5k>j5&VMobQ+c^=!X@ghc4a4Pdb#?KikG0Gz=0Thu|FRB!!`|s zo^!eSt+r%AA*=}8RAh55d$jJd+3FX??Z!=+l_&rDC8GIeTt zQhIVNd*T+gUEN*t(TRT!Shsfpj(Yt$3`fTLEK~!34p+Bmp}N4{%^&oH!huBC8}Y;g z-ee>l^h8ooe=-zLMAANwKM{(i{HaX14}09DwW>RFv3hUmF%b7zt-gM&N_M|N9sTEM zs2vsTu^aHS_XgEC1~Bkd)eTvzx{pzC-LiFRz~SjL{lXcw$v*#Ef~cowAXHRNYi1H zQ{$8A8T#PK7fw1OUCXY$SMBz{Rrgp`oIv!L^0t~_SL_2(-g!%1#h%`yp4G%Gx^BSx z>PSUBZOTQX`u05)N*LO9?Ot_N%lc-`xG*uJb~;+sYx0y-ni(IeL)mL@L+fPrsDG~< zH2wm#epqdKl0JD#t)8BCVSFO{W4C$=dv&+!scZI;8gl;Mv`O9dU#X*yCD$!}Qak*w z`r_`N)qTfeVH$8E=~?My@98sa|2MJg^o#n!v5FzFWB$Wx=r5@7y1K*akdn4i7m(YS zsQBuRFVfm8jf#=4Zfz5-+Fu{TS#V~kvNXF0Vql)unq_A`!cve#}< zdmTfVF48m)dqLCsu}zxhW{xtgw$K0AYjt;*X}im^t6{x454@x_x4CQ`LEz;j$H)b-N5{(oa$EuV<%KX~&iC&x;?l zfn8Fib+?aR%5JaHLjBvG=CU;b{GLLWZKR3oP_rDaK^d2=gBd@+#$|Ju{>^}?VE0yO zRSb6(t4dooSl6l?mgoh#*3m7|Uxj9kLe|ksT^zyN2pc@iUeUE`T=3k?&{~#L^0?as z2*J&|jrBFOzC3=8C4T8`Y@Uo?ZHeD}8++Z*+*WkkEXg}=W9{9VyD*H-Vpm+QRdU47 zTOjt_#&EJn6!@Vf{@`uwK^gD4Jy*d)w=sJMt#32lE=#3-Xlswjb7}i{hqD6)@ADon9qw{wiw)}@ker!AO3HN%jQLV_fnT_ z7~G5TM|?N~Vd5JZe~B6YHsUXX{|u+gHUuuk7vV3Uxoo6FpFn)I4X;X0L4X9qg@lf| z1lvVs{2tY1i&)}!z~3Ez+YnC`Hxb#MfZvC|1$psLA+9I>&OVj5y$-~ z-}b|%hN?o{+)y2y+B7Go9Wp|v{s;v9k=KW`HgM^A5xP|t@WW>fajXYU>Q?#e2CRkv z+kJ}WqDt5{=RsIC^){qY)8(_v0^1V`f@;tlE@^wI2&Ma5LMR^Teu0vyALyBgJjKKW z^my)QSmm(@TdQ0PV9CwnkVbtZpKW=te_68u!Bfp9xNJcaQ}4bx#8#EK5rs<%aNTFZ zKO$PdLoz;#xK3tzVY#5Q8MF!g7bMvqu_dQow%wg;t88-{WG$EZ;2tIG_C~VyLRLvC z!f=$VI~vIv`DqF$1 z&p`_=8FvlfiEbvYtj&t784{&<Mhl`!1`h3mIs)-`v zUaca#8${|25INqB1|ebyzllF0On$gi8<)+E_>7tUkl{t>w`?A2Fh z%_ORfcn-p+$q*%UT_2@B>Ios!inJU05!#?VvRz&|w zU7901Su^tC?aF1h_R0IGiR=sMw)y`ny%VxaDpC#p$IAQjDj!9-Bv<(#jzPNWyzD~} z#;3tRI&Qia-j`z+Og`FswcbjCo$A$&&wg=gZbVz~Mvg4hhV^;jjle3jpv~6y{)VuD zyzn+ljr!%Kjmm|EneiZiCGpP7B~l%1wRz#E0V`$gvb?mFdEuRal|#U~ytD^+Sd`BT z+67x)^8VZKlVZril{2$hmUPM5V-P0?voqnBGc=kPkQlUpONxY^SJF8%M&>W<2LNeM ze2>~n1V6)1g7r3BSwK4-(>{(${CHT*Z_e8q$~>#_Ywhc25&N!n*-k@_FgTs${s?V| zxCf1#Mp+H*Bh4x*Xgk7o@|e%FfTb~%o_yHnbFf)k>{5Y<)DsaS-}Sg%wt_K<}V8;?=p>w&iyuLU8_Tc*jU#7zKpve!<*fK2taCO>1= zPtFta!(qRW+dBY9EU_IfajgtXcd*F`azJj?K}^dGz!EXfMHoGwwJm{XC?eM3kBdSl zmn{naK)4j|0weZ zE)TX7V2cH)ZDStn?mXCDfRz?BHy_M=+<89__y8y&5xB<9z@}iO&{-!Id3aoER07B$tNNMk^dloPlekb;XWpu6|uEKt*^`>mP|=m zz61`bVx`^lHsUHdKF~j}M!Z5B06;CGXEpqi7v#L3;@4RayHPj|lT#7bl@js%9e&wm zR?G2h#LFQy?LmNstD$g7oWgJ=gWQi+ORY-?xhV1xo*PHcKPLME5)8j&cIiHe>~bWe z>@OqSgJ z=N)g&zNeAwlaQTSB#AFII-$B8X{3zlp^ooqVWJN$xCDgFb|>ITg_*drqVZ;G9TIz( zenNHt2;_6ff=pKAW58QE(ps_Ishr#pE-QE2&_MzRyCJHTX1@d;8VMxc?+~ss3znLP zf`rG~xvhXlDtDRJ)lIOLVn$d6y$#Z&AxF48f>CJJiQ%ojQlcXLdkOQi9eb_6)>1p% zQ%KlTaHD*7?wAShscc#`7z7`W;!9;O^>Eo{0@>woPh%U-(JD$#hS!Iv_H5(;t!3#q z-BB)r&va-17_GI)&O@CpMEF;@)8S4+`e?YF@JA0dgBB!0NFPBFc&wxBuGb|kMH;os z`dGDi#~nEZNHBo44tH3LMw_K(9R*-XR1?^W*ESolatxVx4A`ZBl}fZBEXvQXv2{GL z&V|dN(xtU1jTx%ZCLouivK4*<;-!6I9VVWz!1IwbPy1Nq-&!|GjH9a$J_`I`QJsxt ze+9)`yC|>pLW=-b!Y@me?%zQLt1kHf=-P8tbi^RiSm_gyolFgh&PuSuKqa*@<+bV( zD=x_fO?rz#z{Hgm^KCQr&*a~VOje{hkXaOy&5bZEo6}?M?W0%hBmqpn(S|i^P_dJc z*1-fNWc@4z=M`fwchp+4vDI2fM-5lYN;#`M5i8%lCf3V!uvKJ|4(RehSIbR>F+?ur>thK>4qPgcyrhhr-SPHYDGit-d`5B5lG`R`6l?Oz%UJ>96vL~z z))tE#TaZI4AgbdIge|MnE=vv_ekpE}K1a7&jwsNa^t_1zq~50j^Qt)1Qs8J_#mbNJ zax|pE9!rL?qD@~TgSF3pLAV1qX1FP3+m)ljIOLXsB-_;Pgq*N6BnfYmwZH|uz-(va zpkYyBu+9#wiinG*rSzqZP}B=tq>LNGbpq04-3iw=(RQJ*)?1KKwdom-3`Fe4knx`8 zP(o*z$au^S;F5Vv5Zk%HB@JJS%b8;AvmR<0r;U}g&x_88Bb!x%csAY{N95Qg`g;O$ z$l-_zs_*aS)MhLBIX&5!<8eajYGmq~>*E80GL+qRsFB8O0l1_j!Tby1X1VOvcDT@C zk`~f^1>n*SqU`S=Z1C)SQ>K-rkGt+-rKf4_9UBH?2UP68o)2#|a#<&1-4Jez_!INu z=`7BxgT(UK9Js^t(rF2`5b@*SPJ~;@Mq=hT>8%sR{;Rc!z5v;V_|9-=!lm%AYO&?J z5iaRo8{)}55AJbrixD4#dt*$%9fC`A>k9XLxbxw*;2YP?4-6Co*etFrP0^1{x}*?Cl+F($%C_Qfxq)VzrDrH@dtP`o zU`ulr=<}9jY5RWw5UQ-S7;iziAK}9D6a1174_oq5TH$Lsrs#SyXh3mrJHnOC8GtYu znV1%2>p94}>tTC6hXio8;=J&sKu}Bxc%J^OA*?G8_A0>2X>2Q`S?xQ|>)D2x7Xnxg z`}v3?d5Ew3lS&MSN(u(W{ExJDt5`B+yC ztgF!09Y3o<^%*K>CA~QkuupoZ&A4hf<&B)$!G7)5(=~Vef7z&Qep;^ba;x!I6iUKM zj}PhAvF`+geL2N8aJRMioL^+d=@EciwRLWE=CyB_oo`069cO5T*-I_O_IxvEClKEA z5Vq1}0bnJo)*_8MS3ZmK!q)*-8m=pmCdX=m{~-q}`gb*e<$CJjTq4I^`BuY%HUU;P zKOeR&V5Ol$nH$>!q4+09$WZ|0OD<@RNHWvM!aWu47PxYYp$vZ6a%paVG(5M|dNcg8 z^X`UUR`5~yB@UU7D)1WOxh+NQmsT+)>_vhkl|*zE;@VOoo>}nA@$2vvLVZOMcLLJt zKp8qPREBU50><+uDsDB}KC(1~(%Dx%)M9R2y}w6R+Gbk>zoet=<=`Oy=Y{PE|i_OBPSi!%0Jpj_EKcGa`K;4es?3; zcV3z6UMiidMqc_D(mU4DziK4AT%(h;;MoZe9t}04v4=AV2Sz_1 z@$Gkv)g zS~bE{AvuOjL3kj-$IBu3M?}!+x)3sqg}WHdqmghs;%Tgw@hi>veE0{~W0ZgC zSz>V71vh_i661|fQMQ%u=17Ztw!0CQt)Xxg1}CY24}IAX_R+k&-2f}sVg`QI5ccUj zSoM_AIo@pwKk1pffM7J-0)&Y*Mj(7H+`e$hqM>KNj2U)U@Y9zY{*{zBvPu^3O?B_L-yrW8 z!x0_}_X&hOaBqa$kxvh@bK%9wOq)d{dCQid0OG|NaA_CK4|gEkZ}3MgUyCpi@h-SD zxIYY+29TG{@cVFSiRB<%;@P5e#aKBNE)8F6;Z~Cs`8fhKCc4fO74g6&QI+f4QfJIU z{6NH0nk4;kW7y2G+7P=whCN1Z$1$uZ4!74Bb{e^%F>DpN{l~Bm$Q?WeHwM5xWel54 z?ipj)gXEq!hW$=%ats@iggb2vTLRZHXABz2o*0WAfrCBNLUuTbyKkVR!+uI>)m)+6g^beV8U0B^795ALGy|ppOR7otTx2A(M~1D4a;pfUG7$@|p@fSW zUhJD}I|sZt3wX@IBmu9~P&dIZN9D^b#ZwzrB3w)!^LZBvK*H{YpH^u%n7AY@>JT1- z_)4Vrfh*%rL^zJH^Cnkk-jEmq9F$y zKv<>`_`86WBYW|`a}}aA9bxO*+J3;w@Q7?4@Hm7eBFg-40LxKI@+!sCvmLNj{{I!Q zGJGfxuM6e|*)sAeNC{X@|45!KG9nMy31FEyzY??ZU|oQfmgxFCyxa3&Tc>cCK(4}k zcnsh!KrENr^NlB0o`H1ypTM?i0E_ky2e6#A=nWEWwn$z$0a!VS%eTr#1J=sKQvfTs zqx12OlXxXp&jWBXw&nutkV&;cUDY>}V+T12rTC-GT8#^GJ=Gb0Vx0>oh;jQ(xU`ZW zd+=L?1B49Ex$v7Ekrmr0h}=*kbmi}GsY_+XCIB8~3GYNDNvh~+tYW{76X~aq7lZF| zxTgYE;@gKX?TC9(j)ydYOpu6WI1T_>;0yyHNvVv#5@AC4DqQMG8K0m3W2BQALQf0$ zB~Q13pJvbRgJOM2A|!(A(Xy~5ED<8gwgtd)zW)IHT@g1P?jQ^N(ej4@=Q|1kGf7A(2Gl*V4Hcp{#&%|8FbObt(zZ2Kc2=$hFrJ z#0^K>1%pd9tB@?)buywX$^^@EUwBQ;FTrv-}jGkW_;%fL} zp$!vS+BKmkAK8dTkVOGcT0jSRlEXJa*|+5hzX;Ln!z&rJ+J- zim=#ljZtl_oj%TzozPrA)5Y%)=wxD|xLNocjQA07+cNJAt!1a(7m5kF73>lu&p|xd z5UbF>t>v|L+z;<@V%;)A3GPI!ml) z41_xr@p3)GhA=f;#=8LD3t=6~k>KPRwtRf8FA+B1sc@@l_O%+olKHILmpgyTsRn@9 zzCzf_H6H?jgA(xkfHdi+aND1A0!ZOc0W0Sv4eykJtrGyS74g>qmXqa%z&2aIJXq_y zRfF;h9c6))(?GeXUjK$$7WAokEqtxs?%8ctm&j~lu!HFuGz{<|2#C%xm>p0TzBRK2EY40mtnR=tznqWO9Y&~%%x1qjlbR`OB6MX zE063u@KWEen=7`{r^D@zFlQgQC*qG9zkZ&}Rs**K0;IPlB22pPt@$GV0k~xN-2s<| zm;2$;p!}Q}Z(AT{dchZmYNB0Y~L-)*#!Bld-tz7 zwjfw#ac+dmhkd{T+X-+)F&A8#L5zUgnidSF!ZQSJOOUo3++CCa_aNNU;L-%xjlTg) z#CqBUxI}@A;F653gG&^UH+lUV8k>}+>pC|1Qmu1$S*enng#7*tc&fms$V_mQuEU+R zls$GSUIM9ECYW?8Tq^f;xU{%C31lPq#1(9|XszVgjm)Cu8nO3fpPi5jtiydoFL4fX9TW6oG zeO8zqfdn0pUGPVJCc|Cf*DYZZDQh}4gJ>$@d%~~dPgY4bu?#h#rrQ>7vlmW|Pf9CS zY_q>oV5>~esy+XLG`rv`?R7SCE)GXISDavPS(lottyaptfp{nrkNbV`s5cW&d)rQ6 zbJl3B*l87Im8|bPt&b}m2nBpmf83Kwg#1Bol3hGc`$u^+nu`1VnQ$cR^@P*WhdaL=`3FYZzI1=^ZI@nMkk_!9N9j4SnsODmGy?3$*^_iAW}%!bP;vP}~!UB%_^89I_ED z*#|dhZC##7G!;tt6VXK4pG-tktm`#e$dwL;d>&sa6^aMaL4P{HCSQXW<=cr8Fs}& zt*a~IOZzhsPdM!N1-+4Ah&{AW>+DKKk_l8fmO zUnH3hfyTZ}FctMg*vX5vD_!w;$QKVKli_qS84dfxZ0};NPkADcNQFXya3-Bjh7#d) zxSH)-thHsY{;0KZ1;SBpC>4x)d|say^RWGEaweu_xE=Q?emE1ij; zq3KX2^!MI&C1FA@s-lm7l@mPJdof#s1vI+{#oGI0+WI2?@+ zm?ZH1wp1HX4ixBBNJQF;-;D1BGjZZFZ9vmRI2A}FLWw{m7>S3X?4e~Em^Tqj2cnUX zKadWEGbw*;4108$)`m^quldT8L0>rJ1HHW-Pb3+RSNCNfy^MX)>~hWJibeyeAXvi} z40*gkzmMI#9DL+UWHJG-Ckk>P&68$tFV}Qe#uM~KBDkE{A5TR?sQ_!T0z?X@F z{_#u#43=UitN=$u;sIY8Oc4fK_=Dh`7guOQT;7Z)l#Zh==?uCw8DjcMZB#RGK1dYw zr8B`yB%TNkW5!DDjPisBJnRWWDg(h_B$fHwbf&zA4!&uR*1t`1%A`r-Yy0*c=Slh@ z{z0!l6OG0rnefRm*6b#&Ih%34*0xy)ogL4FfY%#NM1#>&*s|xre95#g74`Z;8FaWO zn((s^uGh|XK|??{`OxrmDCz|hpR`Kr?h1yz;ds*HNurmd;Y5mEu}VAH<%#+dA+V4a zBIpZ;eeC^Jn!A}FO^O5)L?tkN+BcFtu~j>xStyY32E)OWKNJpyJ>kIVthl_aV>7=m z84W?QLY{;d3hsKb-`0H~{r9dySTKW&GYm+~-Mq!oiR?`LKr0;2D$FMb z(YVJ8zE63gL9nsMmzd9#^;!*k@kXtz+!soCGQngt7z)HQ;K!s$)GtWaojC2=nQrP@W7(oVY(q@$hq11w*xDUPMPeeSPnS+EX z+P6_FVP9?1T9gNqX@5K#APKFNFc7bO+K0kOqkcdOI_*r(d<}b&H zmkeNB_a#UPg##DQWM4h5jbytHYt5U1qM49Cn(_ov;h;Cws ze!5Ne9`MEn1iIFf5@+5Z#PE$FQ4$BB3Funb#kI_25ec zQ!pSyq11e~W2-i*BH)2O#fTEezy)OyUZBiiua%b>Y|>V;72;5xFpVO>mk#=T*9c@4 zAs^}j{R*=yla6>Y3oW?@l?9?<=<{#@dM@IRvOn(80u||WG!2~>^u*H%48*}j%6y{b zIQI4ZnyVrOP68bxFi7I*OxV9zIbGCZ`=gpsfziyLOvTg0+QDczxI~#J^1l3l*0dQ0 z>_j>Qr3S%ICw1Cc>Eri zd+~@bzD$|KrtQ|wYE>JbK%z+FdfMlUqocw}UpTXzy|_&~r2?Xfq0*BGqUT`C##bl{ zMNM|qX~pf6qyxuKz5w~d$en~C9EnF@X(YTWl_eao`y}8$KQld@KHpS6=O?(SE@yA-?~?8Q4vW;Q($5rz9!)hz;;}vWZ8!0m~{O9p!W9)pC2_!C&B^P zzYw?#Q--nlBHU@+?tZPLB9n%}6b@j}_GiFD-qj6KF-HiaN+Ym~*JLCdJz zP%s)wMD0gTy8x0e{*X06(TYm>dMwvei@C1>G{S1&D^p3~VH5h*TO{BH+DAxq|0xH$6Qg zJ$)wc7pM*B!%)Z{Cc=7eR<0Dtw{Fv%u4pic-a(Tv8fHK&_Q!VUvM{VgOdFzpf5I0{ zcs57^c=l^0mC>jNdczk?CDIt{ecoFXd?K+PAJNL$b>C}ET+uX)-vDL=VK3CUH^mM< zto3)Lp_wp?N~Oavi!kc2{*U~>uFgEnit0?`&%M_Xf}HBEE)WDkPzN`V+868~xZsi? zW=8YJIC8C3+H})xH)xFWB*tjmV$={kF;US>j7yMU65|pPP(U%LfEtY(;EsqOhDAh} z->KUQ&R=xbse9{e-}}Aq`yIN(xki#_g$1;-EDoI8zq|4+6$)eJ0-^Oc+#ogioPuN+ zQRv?Dwbm%it&mpV3~dWOe(%>?3(|ESu+N;_%fslteS@r-tOX{yNXOKN=zDVgV`6d( zFD>z-072))CPdMlTLM)>_!!90jHM4<2$T;uy`K<+w2YL`EP(!akkly4fK8?k;x0EW z5Vtp@f52lXuv?^TyiDHqxCjQp0yC!8b0AzH>p#CTsdXj{{yV$)gY5GcL+PZjzFS z<@`mWTlXM#h%4#uy4I_5rK0uyNUf zk`PTU_=_Y6qDAUE#_Ec}C?yO#a(H^WSe~~?OwiNB@pIpc3k$4vUFV7NOAPpsN>oKb z8V{`0e3AfS6vJfu)1=A-sbQfZoj8eXQp6HarfluEL=4b#WVdZbE;KraCEH8o$mL=T zDj>C~ZiVN_}4Nce!Yl7@>zqd6=*r zu< z!ua`0&``EluMon>$cY4Ws`eDh!Cu+hI=pRq+l;ojy{$)Kqm`%!MF3}!KtG&Sa_tJy zp@TSN=$LO%bDX)W<a=Hz(rDY3^t zCx#jkDi{u$*)AkMDV&!Ytw+i68$^HI%FvfC9E>4ik7fUme|k=w15D&u0^XzA2;9(q zx#Bgxa@_Oc0G$A~Lx2}@fD$*YSIWueLtgAC4VR@!l7;R+E92!ME7>x)e<*YVz$~md z4?_4=>e}9`l@nF#=n`&qoR|XM3e#t8%_w|L4qM4zu175fu^HPTGQo6h|8=?Q3I1~Z zr7Oje26P;yRG?gPvq+rc4U!goafn>GQWQF4&VV>%4XO&%db6?e#4iL3;|qe6K&{ru z@2?VpPBL|3c16ahZK(WOb@#}DRvsjHC+xo>VaKhjn60DEk`u2H!*q}m#g=EG0&mYW z-)ek6sS^5ZlVei?&*9l7C#@@CHkP;AS>BS|1H#YgID3;8esqOl>++&EYpD{@s$o1#ZK>K7Qc3!)DJ1Oy$>Fe@>(2X7vmGHqL={Dk_6EYhUNq=ksLcJSICL8L?PF_BAN_{4@L&2v}HPsGWo3X1NHSW zkMH%KAlJAQfuEb$0*Hd0YD~lB)LG)R!M%ONzrhL1@cP2cOl|M;2DszuIyl0xVPeNL ztzDII4fw{C>w92lq1bSkVv;~C6a(W8XkYXu5hZmLGeSp%h{@e@>=I#P`yihkOa@pC zV6vxtOp78DDGnbP>?kkqvZ}m(shF)J>G7TEmTiX6;2&3|xrB~iw@etwD40hAidl$@ z$iBRKLE72Pba!_3j2l<*qOBQiop=&$9bN5QXjT7?kk{@JL&vsG96zGy>>e?yW9Ezz zlg5u5m&Wbw^N{IEsx#ort8_5;oea}7am=4q$2aC}!WM;aVH%>#ia2!xOqA%V>WPik%eE+D zj*XT3sLL==`Xs!%dg@oLO(hr`gds7=>_+(0h`Vd5)8!*?;!RC^Q;gROKQn{GL5gauXke- z2Cy5)H&@S6LFF9IcIm-P+v_elzU5|?$-c?(pi@s)r^;*AqD7UdZ8#oe3ez}5{rG6( zUsWHJ^IyXE{qMKMO>_;DJVZQL9$PrdZjte)pgoL9Jw3NwAUey_Uston9H;MyZ|bo} z(ZK`mDXQdN;QvNG@Q&~d69XR)9K$)g`my7Na;atxP712qnpA0oZ(^N#wJN?PGjdo0zn&mDeOG}D!HR^IrUjc z+&1_z9$@6%*?XBj#n5?>K6U8iZ_CTg&^0tXrJdOK!I4bH?~928*xXr&6%K2UNhQVa zs#jL!@D(JkVIPP!I#7)MWP$)?q`Y&N)Zd4n=8C$Z=}F{H=x6@#8~gUBHO z+`G%m=mtPDr3P;@2$!W3q^(>1iVr&Lo_P@P46RO z%N_R0hs2JeEzP7s3Tdv|!yq5xXW@q|CF_c{gAL_FgtOeATb=yX2ZuI-8F(`x9(e#Y zXHe$-)gE=rzst)vi1E#N0P<%cxen1yZBee=Kz{-gosBmZ;P4c7n*6akqw$&ck06|Z zqo_MJ4eZ{@?0kOp(njmsABjl@v4)>*MQ~}vv+X`m?QXQj8xgMflw{J_!t{1=>ufo1 zqv*uKjwoO_rq7PEO*8p(b!Ou;XMZdv&}zajGKet671I1)s;O!{P!fL!lyRWL<_Zgr zi=_JltO-KMj&BT$ROI|9^*d+WW<`82jRWi@9vPjO_B(B2_qz(bF zMvzIziCuZ@W-;1`;V`iiK*kd<1iBtkV7nOyr35S&UQ0s9b+b`|mi4FtTh$6y4Q-|n znJa|=C{k-N1Nq5jWt?HMd58h5?trieAFH;?csYftlAuyx#bIRQDyJPFTu_~;S`U^h zw~B!Vr3eQrE5$xTDkk~k)k%$3ljk)hUO}P&T!Ij{%aS9vAleWa37gP`=Ri~gPsUpa zXe&cBrw9+9A@K8J0BZg+9z&LBB<>!pn||Tj$;}=C407tV+|gxPzFEWgivSU)6C3{t>Wkgb$3G?XQV8K7XmMG zmdkBhDZipqVSTE)7{ml<^o;DP@jv&;sxV^=cgqS934fO>xymN8=neH@-?v@J^NMQ! z6G{8^i}LOs^8K^b=JMBg=8S2b-RP&h=eb!E_aCs|^VRtjUG5Qshb8Tu>G#HstDiRc z%x~9EI{CyYC!JiMH03|)C#dUk#7=Q!d0%VqedXoWQ`sbW_vjHPe}6`I+w`8cbUb+g zWNr{VY)?Yb#^A-?0k2ld%I9!q5=;Q)Oc(*&(M7YV2|wP)i}6B$2Bv|*Y_F~kEc?7y z@72p^zfjdD=QFVVX2kW5-XC79o+sD7h>_oSm#}nIpr8z)l0h6Laq*HoeV6c1)#N0K zZ&af~3|aFZ^2S}_Y@L*b&I}R@kb~p-FE=ii#U=7hk|`>0rD!znHWLy&=CKWMx>P%? ze^w7Jr{aW}ZS71&J?`pizogD-ipG4rD%X7>hE-mZd%obsWv|OaccZnDz-$ywOjy(r zkhyQjb9eIw!Z+pr>=r{RYoy#Q##GkIrMtypm34CcZa(?etXunxsJuPv@jioU?^Gwq zxS|~)r|%Kp&|L!3LdruAT}*E4U3v8$ag5IEcX5N^4&)t#vGtz3Y#YIo!aRK|L0^J6 z%)MIRY8x8~{KTumrs%2ov#dO*Ei)kRPWV3(JEH2Ws)D7kSD z!h~N>s1NR?7?9U#%1J~HAIRjt4XJ+>$JkwN88-)n!V3fE`bDR88RdWrX8wZJxW0F8h zIDBHQ8|LGF+Zkkalh*>?xJ*+Wprs3}z_B=Ykw z9-6a5oK``RP-|DP?o!|<)OJ@p<(;#kdd)k<>4vHYQ>}$U!Tj-E_f$vA$5xAj1~PE9 z0~}u!ZU_~M3YXQSy`T17Jw$Ne0a7l)jpu;TkL4}*dWiY%{(kd1U9=X zPOffTH@G!3*%Azbs#cm@Q=6+;FjjLP?T5__f+HV1T@?tdur~<{ z9IoqXt!1wpN`;CD1yvhP#DGmZ{aI~dqqWTWBp)WprkoUmgh76NZBnCEg=z~stRN4% zkY#+#F#mZ?zHu|9D3g&mAXNnQ<{U+ILv5N|*H0TRNA=Uj>6~U!XAj_29D_>p{6=|U zKkZzdGXT^=m4>l=+<@XHxu&0%7#V)Ml8QJU5K!OzMXjUpUEK$0$Fm|PPAY~U{;tn) zi&?eljn=mg&?Xo}Fjqs0t5g}S!2f0KqDJd~_Sa6;F_$qv9oOYF5yqA^Th8sT9b?4! z?vz5ioMgP>rk>N&U6_Nh~};ErUD6=FOC?{=8~x+ZUE(hiY3g{B#t>Y$v(F)&0VN!tHS z?QGR*%gHqAR%ycVR5+hQVz^aasA;!xst*5&#OZQ`icjArhc{`Xjgr(s18@r5h@#}} zwXsUG7_zGg1oLoWtbl$pe>mX99C>|{c9Oxlse}Yb|ENMBPwrsbjBn9~$~{e*u7e|m zO=cjIpk2K9PC2q!3-p*XXo-b3;n-D_`u1;STeCJ^Mb^{eOW$!@&K*BIt|n{vph+GX+c%gPtt;7 zBUJqNa-mK~2y?8l06E5IIYV-{?4yq0gnS#SElD{Bgw%EJk*zJ7rE><1yue<>Ni=ge zyI20OMVrtP5j5;7b>hNPTj9Q1qe{$La|B7HCvXA}{SWd+L!0z1j}s8k&(I;v9jbwI zYhLS@R!YM|nbM{H#nDu(CvESXo@ZbNmNl+j&PGNskbCYY$i5t^aZu6Cp-b+vabt5z z{_t83GC0XRX%5i7X_ztI4FryAAbZpH|Hy|~+d)ze&<;6}3}RbYDi#@o{AJFsozQyD zS*kiSw#5rrII8m&r4K5B(F0)2E>35W$4c9TO{7eu@K3UPpmqa=Ok^jk#{n0J(T+{d7TK_@b-I-^P)DCORV$s3*uZtn0r56YsA#@KQT3w8zIDNDx z7q1eB=$s6tPKy9kr*iNp|0ZjLG?T*wDUur(7iPi2CyzBEl%)q0S$qppPudI?$dQA! zQ3vrpZsxo^Z-`?D&J`S;$R7s_?ir*VJ~*8gtM-s{g$0Ho6$w?$Hy5f8kJb?-DFR=K zSlE=CEs|3QYlpF=U2H7kno9s*ytsCv%3O!bhX-p-16W=M^-8G*SFf&7PxvNbQk>RL+w%yOmzZn^uY8I;T9-*-Me<($0r;A?>>4sahYdbaY;nKi#<0(Y3txje31%)^^d1Hs_gI-+H}c zW;;JhZHRWn!EG2$^`2?%jNOTfynyBf)Z$};euZorLMS2j5=ncX(9A`|qAPXEtSblMSSj1kPDn5?ZLC!wG^S(i9OZD2NhJir9e-NEHw?%3woK z6hx#*SwzJkMX^v63)n#MDq?Pnz*(DuV#;SYSWKCbKzfp2lzpJO4 zyS4NTUM&-C3DgSv)H%E7P6L5y2SKDcY^!=R+Q?I=$AwyU(3qpg8{F4^KyE zx=U6XRhuU2dLWkRRo$9~Y+PfSq2Zq)->4C)Sp7@PLcLmo`w3n*O~xY$|MUdTblvSv ztXZ>WNi!ax%2Ao~k8-HTtdfU#9nDoTpEr!(Ic>Ac6Li@-rcyF<)|~YY$72X+!Qt{H?==+;e;X+lCDvIMnq`$w+sy_HD^z zcMa{wl2_c-wF6@I315J@eiFZ(@KtB7pM~$FuNre56gek-4Vdc}(f6dUCUYGU51piZ zzm_~7V`+y=-i=8Q{+Gp#XPV2_JdbI07wK2udfUK3w-3JK&LKrZhuwAe@DU?N-81@Y zww?W|9n=nKN3@Old-`YWQ}(jHNqeJXO+V|S)Y#E!%X6ZB8 zDz=iXV9VKC>^=64_MP?{JHkF@pRkYEkJof&|lC`vWeO|Yy*3n{mDw%M)oc{ z#R^)sIL+Q<>)AT?7kff~T%WB!rq9&RXn$*eX=k<5+Ld$k@vKWRdxV|SCa|}3-`n~- z`Ud@7J^ry@8^5vYhu9a^)myE5JTB8^Y9{lq(LFJE_OH@C2`+ody!Tvoz`s&=xjgYM zd-thTOE*3p!w#P;$^UlJs*krlBKYxkxtjhm(JH@^6!&gjY ztGVj$1NGz7^OI4*(Ldyy6Kwp=Neh&eox3S2+s5CbV*cUrf>l;-AR30K%8&l>K*`U$ zv#90#Z!=5w9ru+?In|h6BNYTnMxD;95L2-SQP4#<5-A@Y8Pzf#*No66B&tqFRr3GK z<5MHFHlf~`+8~FpsNao6d_c=%Q#Xhf0qvI7N9TejJ*H-773DBj4)Z3tT#0zkVd?e( zO7mSf?W?(=?E$Ta<~eg}lgngwdXYaQ>ekZgCa%+69{Vt2ZT$C_ikoX`H(&%pZ`RVb z>v#~;a!xX^gmyeGBQ*JE?Hf&7D+d0ewPfq2iRXXOYOvC2V#6=maAX!M3whO0;UR4)l{oUN z){yNk6*UfPb=+q*zvpVfMDfRQbwi^LYd0I(7O}HT+m7IcquLw<+fT=4h@Qu^n(Tw^ zV)QZXP4?<)(dc(=lD1m>eOAj8-~X;95=3RcYqx3I$Ksklw9iypTB!XAZL6;B3h~q0 zNQUtKGukpu+a(a@iC$*`kgTLBm2YxRYo=E%+q4k?rJJnKRlxkfX4xk3AY-?%&1GT_ zV_7LG!;{?9ZDgEHAqvOqtPTUTjXA4@pf6`9v~8lho8`0Do(%=vtUIT^WUy=mhcj5m zP(3fRHN4!N$p#|Wi>h?m*Cs0CY0 z(Q{dmy>I(_F8?(c?o%5}U3OD{Gd$+lhTo(pai^c%t8EE==Vza4?AXfC8&%kFcCo$| ziu+PnjZ1e}pu<+^mlQUddVNbe^*Z!OI=hm(q`DbGH^*1(;dLT6i+PX}-GsP09s;O- zpieBg!Cf_Bs%EPgkoi;2kt?2-r zMtdr>#>VimzbA?fg=`$#{hDasi4`V%@FGM3{`*~au!~PLx{RfZS30pe+79taC-56^ zqjR0uI?g6A@n%=nRC`YRw=0|EjYeH)+?8yMPEGFX$$EvZ>cO5MfI@idq-j$^wR*EV znf9!hc@3sd*`npwFkPD}R`g}dwP|9&b?lYYY0#;1*iIHOd@hd%d~&W<HVNjLh7u$o^=xgu4jEo^x$QW$BE4sn{H?Qi7sjl zWyb$)tl4#}fSGJ2boV`A zrkDw4_UNKOLTBFt_N$Y`8$-a}%g%|tL)b$(n^0K`X4o~XfcGJfon==yEn6EI&@!!n zy$OKW-{X&|iTjIyMRa1n6LuTQGJKysj>hT%y88APkBgB*S+(GMGZ59pj#sFS=dL~MvRc@?D89gsw_4g?(_<@iv9o7%R|!#ruI_?5f&Z#-pN}CB`+gK^I>wsOSyMJpcQ8XFNB+8=l3rcd`CD zvWn1MtTpO5b{D%Qm$JkoLzgbTs%95Fbe5&6VybE8td2T^15;ZBw~nWa5tX^$-JkYz%}v`&=P32BXywqrQEUqTXxh*n*EiDoN2 zw3Lt}%BtE>_BJX~3?IQ-p|w{>us0D597%7X=SQ+By6j%vdoh(3Oc1^AWyviFHJ~o< zSdW?G&xWK5M~tZ)@o-dxcouaehO^%1LAlo+34MAmo5|Rr3F6iV6oYx>0hX64bW9axOn=A4kWVd#GTDRtCw(hS%GXQhKhKAv4;QIXW!qzSqUR{k`pFLjK z#^sWEQak%n%v2}OS1L~`<@w_A(B22xRxLRU*j>>euYQ=lle9&zW*T;xR)oJR^dkQ= zp$TKycTAsE{GJ#XWW97u-O$<~yI%)8YWN6yO?x)9_Yro|h(7~m2-Ead=(S%@Wpm8u zbki_}*4nj#9-h%4Lv=IN?Cn(iT>_&}!`-u4MQ8qxE8|pco-J#Wd9=WMy{GE?p z&d~e{q^T?dlGrnYZP(_B#WTSLPCgRaITMOULYSvO!6F#XJjU|f?3sz8;Zy8M_WZff z=BHS9C`X|xbJ=i%*uW#tu`W;wKYWf2(Vh{_o(Bca6w97xsRc7Nj~N4%q^K4Y{wT=@ zk@T7tPVs#GjuvMGwQ+Gl_c(?yEA-d%tg|L^x5s%z_ZQf!Iv^Lntz@@|>*lj`%VX*} z?4V{Dn5bS`vwZl);}?e?$ImTh&u3}I^O|>_cx^swpm{{&jh<9-1ch71K}*?b6xp#w z0XMjNd{M6ED$q$CqF6szBVwymj7={JctwW=EGHICbn$u3I5B(yd#khC)Ej9lI9RuC zui!;?jiSabmsQ2oo4Y>ZR#kxM3USLz;VNz=QX3cvwCu-YnR;a6t`}LB9%uT+3_NIY z;?);fUQcfe7wA|w6I-}SDAaTHGIxRNS$a+|-L`-9sDQhTHk;n@c3*4P6S~yxsVh+N z^)hC!U%b&}$I7Ne+tcyY#K%9e1k&n7&zD#SZJ(I+5*v~Ogfwuy!7X&gF4HA=KtZmq zuwuGfyN)3VT{ai894$d~UC0{t1bfI~hQ&?Rz~%B0@_qEE+1lk`V$6;!%5k|Y4>(3# zXYdQ|&-P%j5|OXMK;bdV1NGPOo7pX{td1zu6~3ae$hO-@L~C{aI< zfqI52ySD-@d{+VVJB%EDb^Fa%PL+>!8qhLK7CTdRli$o{JUqM2->Y zy(OB*{%duq3zXZyA_Yw%&E=Z~or92fP8(^n%js1Em0$?07?Jcj%Sia|s~Abp6VZ=f z6T3cPX`*xwGinuM{Ow|ln&0p7b*VrAJDI)vH5BuS%lEU|gsw6-^3m|Gc$Kvi$)B^- zc$I@H7W=V{>GfuM;iW+IIHX6;t*@_6gqUuuCM{|oim$JM*iqfn& za5Kz64+7Q&lxEoa<-S4_!!(Mp=flJzidB#~6O3j<`J^abf(~R**O;0VZ=Yc4ZV;#8 zogu2f&aOp^qhDu5vEdfQe_m&K9^wj&U<9#dF2gW;#O2FaL1LV2HihQUpWr}Z<}$EQ zE|xB1t+G)=WE!dYtIsC0_9ZZ7F5q^oD?WP>23FhUEY2MV>NCBf+j1CtZt>`HmYso_ znZy2cqmvy*23U7r6O=s&?yZQ9CSQpJW4wBL=iTmU3&c55dgFtB_u!1$P!hEJ8 z8upcx!bFWi1M!CHAfn4E5K$Sk_pL!rALSIoSFp^gWzctaGD#hvMnzC$C%PrlcZ!|g zgE*5{vMlqTT9);REoCfGB)-nv39)`gH=)a`8UQxW7Ro6Wj?ggvC@;ze1 zYL*x02FoW-n;?#^W|{R2aCdq&6n6(hsyKod=k7z-z?PNVJymR2!v=$%YOh6&u^o~*CVqA!IPA4iK6<|)+Sh#Bm;;!W^OPma`>gQ2?0Bx63y~Aq7{p(nJ z9pfn0tz(Vk!=ZI7zeR)*0Ae!+oslf+f{dVKRV7A%8IU4^Z?b}VWcG0>!AN?(&z_f18K~R zi^kPXOezU$u`Y@?uw?P>dgd2%+QcP@Z`ZRy*&CPIP)Y$-EcDe}*PF_P!{~YCQgO>$ ztO=;-@weEVY-gC_Di8|_67wh%jlP7B1RYJRYS^ZqnFcg*=FgVwZ@d`)Hp?6Q^dB2Z zK$Sv#L->IZI{Si>5oxy3)fcp@KzU}JeQi;vAHXzneKMy4Y+L3?_mYI|o$zxNyOzH? z6>A571PHx~XuN}^$D)o@z_m|o`xI~uUC9!Bevf4kNT$)*mnJrR$1>bsJ&Td5BK9w3 zwG#m;VR2`e^Su2ItCoT{cq~a2mNS4)#jo$MW;zH$1U9gS1{!tA>Z-g-!W10a-bcce zDw9Jbp8ZdJqIhWot5bC!vu9GKtVkv>_W#7!5Pxl8S(Lh&AWE*B+Vx#li&76!DsfEJ zfGnFGG~l$92$#qn=dmw<=&=r>Sy$iK|4WEgVA!#u)ehzdX6;nbYX@r})xZIzteUn{ zJY33JHX-9cLQK>dO+EWyVX0Aa(4{C0c}zze*^cUtO?qcN(e{M zm|}n+`+#w%+LTkY-6$Q$H*AE|oGTvO$ntv3)FgsnCWa?-XP?Jozp6NP4nza&!2k9r^rNSLGzhPMe{x& z2ENB0x+bc8q;@-qS#0xezG`SOVtU}2G*;4d$u#k^jwVZRX9cr@u3(mG*45dUiHeV| zW3>~=tq_(*-qGUOEv!z#2oE%R5>O^1FqDjy?LX!VKd8P>o`;WCu z-SiK&RBJ?ZM5{9&hY6}|yYh$Rlb-PLn z_9U@$;{4}v_Rqkx38|fZF(khT@!sa(79c*8ffS$z!;|N+kF6BlK4z^&)19oEc;REv z4;L#wW*HaJh%4(;8Kmg$gBXKHyd$VyF-K`XWq(qxV2${Mbp$U`N*+c@n*MMBgdGFY zw)T?AR$Whk#&_%!mYYQO1}8ElmI;2FAnI>tZEADKC`A5ET5PU98}>fEPKqf~+9ka~ z(w>XbWe}Nrw=-|OIH?+#G3{O8UZ$soD+Ynl!Ucyw*l$1@jkFw+cCd^loKz24 zx1%i>6|{wD$AOZN`^2tKVW>#Ofl0-|Q5rm6sOzW1<2zVt-v%@Wy~4J>AL9_QeDN$D zGYBKxF)~@Y`I>v1LDz^Lzhf&m5*NTQik=^{MzJLCNiK<=dstRI=BrEUU3=GSL?p|> zLt+ZescmJC$heZKmBf}uJiL>2%G$Z0BcV2|K7FvDBXysV`cx|R?qoNMW;<94Nyla+ z9c#n*b;g_;mSZlL!V*4XJ_yXL&sdJwu?uSKDY5GYo>3bGNf*j-U9zFBpR$4fInF=7*(abPYCI;FRx_X1sx6FrWmP~wJ$@9|BmqmJCY&T z3iL-#C95TJ!r*U-Un}z1R5e?U3A8q=_JNXG#cVakWUr42B%4+GU=g88?@Z#hkiz!o zt4e9+HKZajX6vzm0yCzsnPeu9rPn^Mj}63_NqzC0q{?KY%)!5DSW(7o!wX$k`?yl@ zju4oc<^34&xde0k=gc1Ju_v9Cg&I`goz230;~&^5=wr4t4QZw^6EON8(*Q9z$ZRbD z9TRgZhdl{9(VHV0e8F<-dF+L%!5n9TQWbDXC;?T6-Y`F@qFG}67cA}4#I^bhc1wNe zffv-OnxQhKBSJBfc^s`O6S8SCRNmODd*hWk7@mH*Q)e2LqoHaJBIIUutuO`aD0{Om_rE10Eo$pw+DwP#s zlZlnb<5R`p5#Gf3C`CMaet-Z|MYX+HZ3XS7>QK1FyT8TfTwqr1JHXOGvCH?e0(g*r z-pjgWzTgbcPK_w-cO}=WVSMVtP9}3;1F7bz(i}(vAEgzJC^*V%Osfj+ki$UXaTrNx zcp9t(QM#06Mpe;FwEl+8Z1V4I7>FGM&cZlx>Kit(32)=d2bTpa>V_b>z|{)@IB)?1 zaNwp098TT_JfaEN!OOp81(FNILd~ma{UoL`d!Gwd0_n-?2K?K$%g3 zGy0LFYBllvcdXXMy?SEzKA5*@-?L4)w zI)6$rjM=iVR3ySJ=a3(M&l=~DL-PD;CalFQhh!vwrL?>DNxLhXYTL&!lH|gIA4ZNR zO_}mq<9=q@!{A4k{HhAFa^h|fDm1Xl%&!DiXHL{m!CAL^4`3qO7NeqUTg7^E z&7A1|hkbZTsvvtr%)S02tB(n}_eVCsIEF4Zf7Kx7_i zAI*yQk7LgboX$}bQ}};kvB`Nv=E}ANg2mCIjH6<^DApg@wIlrqp|- zaFp}CD9~Ii_=RN$E7lzgtHKpXG!wB6B{PtS6*T<1W|~;3knJSeG2N-DTpde)F=!Gd z$_j2)ti-5LNxE&A_^C<~C9t+ml`v4cWf|0MRF-bWnN1x$bF-QADCyNE5(Dy8iB@G z^Y&1Jc=r(N6ig>T{ICmv{{%a~2$3QbT3J{AY{K(7CMYKRY0 zgOdxC5NkFH(+nYte9J31pfg@CG$)%)UT-l`0S^?LXb@P=9~Lm|{4PG-Y)s$)6uVau z{3tGqR*>S%#(=P~2>r@x1rto3i8m7Jq$#QFUStn=VZM{|u(pXM{@MUXQH1Fa1LM$x z8DAj+9{bpEgc@6^StXk8ZazcJg{X=;MLRV9T}?@g%*4xmSVVwtXf!5NqImu=%W0gb z#)>)*{-uVC)^yZxnI2OPFqS1_tRxz{M6vw8?0V7jzbw8FYAPaRPL#9k|FElsWi%jO z|1TS?c}4PXtR+vh`@v-G{Tr0D#-ivqRwI~Tn?(U`CUm7$aOwyK0{;_0kC?DmP;6(P zBg8<>3Fr|AFTr+S#b7z;3b8c;yt5C>cv$UdA)Om0m+U@)bTu!=6MK~WM4s^S!92Ey z(VhjfD7UUl8mBYMDPB{yJ&QT)f|`rEyPUdNwbFZkpxVeFxa4Y{HJLY z4K_TE5s>{bNv(t^a1+i0msW7r9ARcRf0*H-PVgVS8=8!>!7#9JOijY*9UX`R_oDaA zK%Bx9=u;!y!Sq#F!T=`-ESu%z00rUR+hdAMKUuGCyH63VOJgM)QzMaRJyDD(W9e5& zKFTVKzDlAZqQ)5K>jK3j0igKrEQ24mu{cu3QnHtBt>D&QxV7A^|J+t#9c4YV-^GZd ztWLvv=quE)LalcuoL{v3ACFElvwl%`;6YA6{9OT|IY9@;HXmjA*Hsd08%V5?LtW`D z7Zj~X4XY{9VhqGa99XWNNJ}D3+;)uJ33KA3V_4?;P#ix72j2vd{yS@SQw!{XYtct8 z-vz3|Hmw35YoMSHY~BI_J~PmgV89T9lyp}h1Lk(izEW-ks!%4%4lB2c8Kbhd3fIxv zk8L!+v+7;in61VJ+L8%PRULGZG(uG{kg;p370hBYW{la=Y}*G$b*qWJfS?pJV=UR* zW|gt@OqO#S;XTee@|I>R|2EP4I7{QL%{KlI#9hZRKJ&zkWUh$+gT31Ff1^?~iPFFR0jJbVQT+t7f+bpIQv8&Lw_Gj#H^VFK z5v;PErvutiEBKB|7tOb^tp9!)^N~^*Cw8A;m**6e^XmK}vjx3jdeQnF79>cBlSW(9 z%oCkXvR(=8ATGh8+F@>b%=TizN$g{+X{NysT+`#XAX=J8hE1OCaubXuIJq$+Ay}h) zZwjkI?o|H=H$_xk=Rc;%P4DHc`5TcRSuAMjsV0W}$#QNk`!?)z{Z2h#3aWNrBg9vg z<@fE~1Ri20`b)J6Zs>}RH{~7JNM0KBpFAJJ+yno+=M+nVmpuCv2v8GkPqA!Iw3ltr zDb}JHIVNcGfQpm-PfJBwnskue7uxkB*GR;UQ!KTX^sUEB2fH%sP{d77SRlb-3jOhl zxYKL`{GKyTvzs8FemRZJhCWgAF9dFJ^IvlLb<$t#nH0I>2pa+Eun8DtoSi-lZvOEf zumWtdxRacSBhRo=*sgQn432kUQ}5Dq>_qHT&D2bnf67x!^lI2K{M1(c4z^wwjWoS^ z%I4Fw0h-){v_Y2`GxNV89@O+EY}Z-wx~5;tPM^hTDu_7joo>kVj%@K!F@ot?wDY+;p>Z+# zPj1@se0zf4P9e6ogq3vJN*-O|V6bVg`oUELFp zaBO4!49=m19%`Y#iSrAgW-av-3D~_|?{a+-f|Zx+y%DQlp;w{Q)UJ8~mG03)e~U`R zU!%96c)O3DMzvjki{7FUip`#>Pe+jTm_8c8%AFp*o`aP8V>^l9!SlTn){~Ntt=!uQ`w{)r~H1Y$znW1eK zuY9aOj6#7=^aqjoxlikm=94Ox+uKhy4AHgSI=(k4a z^N3=f;S>9Ejd*eUmwFGU!7MRikKPtOG`($f?o=`QEB&tMnCc=K8GVOO5>>Q>iwATe zw4d~__lRk~>a!>s!%{b7AJ&h>0?Ez(&~E^CXZ@j%!)PR& z&=V8bBhQ9v7{<*s24mgEjY!_(Hts`muNb3>94u7PNR;@DtEs-ER0FJKuUE**zVW?WHWSPR6_WTRcEZ910rB1Ip}F#0(~Yl;&YMwm7v z*b+vWj2eranrnz*na1XDGohYYMmim{q()_-ZP712k$+a_p}Q?(U>IS!M5|nAImV|> zPD$?>Ld!K)Qw)$Q^UST7{7RnjQ#dAs2{J&=Cf3BjLE_CKrYTU4vmi|knk2lL5k%h5 z=|c${MKQbl81=ZEICGG^(hrC~ecW)z>%PS#?ym)V49 zZ@fa;J9ID(YK@)k)jrxS;%u*W!vui-3+)$bGR1%UR7Y|(K^xC;?GgQKUn`3g~uov5lOfgFSCb6sytFC;OKa=EV8ri3re#JPOVXlp|c_xK2zjBzr^R>d18QYG>n?3&H7A<+6|w zP9os-TokTOPZzDaT(~{2Dp%csGsiV+MtOTvW{C9{Dd)gxM&NuVs$9to(dKfar|r;! zqz{MGQqZ2SvoB!!Y@dYlwHcBYd=kC6u2;gZ=)$}i;v-aZq3${)Rm*8U*R@`ilW1Bs zLtJ&mh0DdL?$$v$$aJ80O9bp3*LyR>Cn$Fzu#*(nIRKm178|(s%#eo^!eH-;0(;vG zadX!TH&3=UCR!evhgpLz?u!C@?+o!>*YeSYT^gC7R1R2cfaX=X-=f+(I78fhWqEti z<@~B#Ba~Bn)y_thJ268XxpcY4k#djCbVdmOfkW?++3TZuz z@oqNtP-tQwqnK;ohxiRfF3zYP6#4y)C9nbePcqWPvHr$VJijo&7^ZCwd2clmG&&-d zb(_%+HQsQW(Ho~%mfmK3OtB9QgrbM=xq$|qS=%_!$-Qfkv8C6EgV55B>r$cqH_xWB z1MK6_73i#(?L_#0Atn4c#MbSQlG{Y#U}FUZ-|kY~8sYTlPgl4{ca1Q{ zgnML+4EHEY+%wX+1>O2|q|qsyoIi?^LywFyzWsmSx9{&YEb5zfzj36_#gKdGFzD)U zm!zx3{}rhZ7zMyXj|YtB*zuF0!w(qGFr2KK@-T$2_H*c&F~%=Wm1*MHagr2{jWeFg zrcGD|xzh4M4EaU2F$y8pzwO<$5o%%37{nf3AmWRm`@rt_sn}>DrgY?fF}c{N&t6_2 zRu>zMoRp~m`R?&XuJ(bLJKnew82)j*ROmWPFeY}sSU)Z}=;fAcv~7E4wTOKLq=+NU zj~Khr8m8*diy|nx!5M#wlZ@KvTPSTZlp?lry*NA77$`Z(*(1D#cxDY?{$E{M_$RqgD8M*`r3=sORKR=5zxGS<4QHS~H9(zNORDB*(oQ^LK>S z%`oQZZ1c2Guh~W~rfn4qo-mfM87D>e63pYRp(~$6=MheS$|#LZTla}7E3JuGEL6jb zPX}y^TF2KBQ|B4URh8-4&t$Y8>?)-0{6s9DXQZ;XPl+9^<6E$=J_((hXFP4lK0SBH zXfJBKVhk1gb{i?7>lZ@T)3$`Zf7v)qrs3Yjz#qEu=n^A@*TUC~yP0-ItbE&B~nowr8lo7G0LfykrljOiL85vB-pyOAio?-|9S<3giKsOekAzb2hRY~n7?qK1Sf$v{A~nK_J z=~FR|K>T8DM^Z&&NEmMykDoKxLeC#DNKJ^~oX+|yhEt67~5Zl07Pdxn2 z(t}BUGu30PrFq3{ou>qSNR$VaWTLbE9~f|1w26ZkYFER*iK^A1iSUApitv}8qEHdQ zug~%1VTlX--?RdKK5ZL=BT6<*f3ch$fv_~F7AI*WR1<;nCQ6Y;fI4Y-j8tw@8itLk zrE;`15Z&;6UZ9t9)f)W;A|h=Tt0u85gc3o86N*Fq?#QVS2x3*O*YreJT#AZ|sbb(- zRUfW6-b{2d0;SFqb_+%qE=FOXgIR8%miES&MlIPB97hTFKb&921Hlw8I&z+xrTQ68 zC-kab0=;fAit~mcN4u`e!VM(YjCk9mlVtR#!e4pDg;v z^FG>Fq1EwxDx=#!+WWXhv$w+v6i@NPk8zA`mmuQaUGVS3D^TKksj;{CAWM{g}o( zYpnQLk(YttQacYr6EpZ4jcRU_$v;PAQWhV~9)DImm?hCxkj;+}M(Wn!TZ!NQX7cx? zX2t9k&=q5`iw({>i|=QWbMCj}>x+sFg#E=|53&E)zeznumI<%BxR)q#~LoP0?fnP3<_dG9cRUZFAdnq)h9)D2R zUJm&i@h&=Bw@dVE!Ur{^P2RLJjkAB)Uxk%Gpi6DY!*P;uEbynI#i1s+&+L7X)RZ@b z+SIWrpD7i7x)VZt*qSeqot@c&*A&mR;oT*}gHKnk)*J-?3!QAk1Jsvl?fBAa#15lV z@e1LqVXQ>;<~$7-N3>|pugRFE(T>*G0Jb1|XiuaI2V?_o$nemM&G{DwnG~}9{q6Wf zZI2k-p393uUMS%;#KRrAS8Qp|MGecXM_xTD;iis!E?&pl zynzVV{08-0P(6z5FYqYte3Ivfw=5F#CaQM!!(vx5?T20cB!8M(?)em-q@5O@KgIL3 zBXj0(x`Bft8;SvVsVT7FL{4!WF)p&J!6{C2347`xVlhzhpsdHlsyVz#4J->lmP3sv zZb`XK>{0=pTW+;^7&~aIfpTjITz>Z+V@A*r=f30?`eS{i8kKWx@K?OEc;-6Z3kkno z#|vV^y%QzlIS!PG9pf?Rv&D(=+)N$+LMddBT?cJQs6a59|8Y@&0&fH+a?=Ffm^w3S z0w&VqV&??@a^fOc!i<&6KbUnBAK`7qTm5-6Tr*SFpSPj>a*t!j0en!?aNAh&!Lea! z);n8&2?J3$*Fgxs7kA zi6iy4vwrSI+sZbdpcZFkzB5}ypMi1&Lq`Te1ShPHN?f*8bhw>=s<=lrQGYORnY84n zT-lX{U#4f#dygkoOdre_Wn&8%xvavFVgnedE;1{&fAzeBKkvqBpUeNGICcj=-WsD$ zf=M3trgLIglHJLZHaOn{vT8}M+crKKeAc0Xq5aS(( zs<4`yIEAmNuzVwSPLcFa8_9(+mD}M_mu(&vS5H-K;$pIfp^Rz#J65Hf`lNB4iqlH9~jc`vV`+Axx5XrG6^8p*F`|4^>SXg(^OMKS|m z*4Zt9S)S{{Zh>z{^LYf_*n7c{KNm~y<>WJtzmI1l$hnV?)+USR@8gr$54djWem;=G zY4`K#R3`NSS*G&?oR$+7Jit>BgdX5UC=+;)*G@0ThW#@wcYdbK=<)?pzpr9EPAepf zB@gmJ+0Rtm>9C4r$X=z55^(@um^ALgCdKNJR5(!|WM{Kjy; zFlwAeBx=wIP?ILI#__APKgE!7JPVzhJPv|jp7?Vd4Lp|Ag8ViL{|NG{s{aWo)4=t% zM#tYF4()xAc^b)bdncLr{fqff6#b}}+fh^!#*5h1)}2C2#(wtmUeS3x?1}`+D$H(dII6=~LqV%lIM~ z!!_p+<99mq+Yp#taRxGZks}aOr3F_M_#$E}9W~+GZO5Pp8sVg}ySrhBKA=oM&zKYjIu;3~P*{$NtReat* zV(fa6*n_u@MnGX0cc1p)d12gzxm86*m)=uh{PmuEO6JpGuOvES5s=)3PH#HbsfgZB z0t8UXd7R&SnrzR1dTU5ed?MOIZ&(wlF;G{9r8 zmLhBS)x1+v>z~6f3Xi^2WG**YkyVopb~5riP4^ zlfyT_F1VD0rxpqU@i-^0zF2b;e^4bz+X-OQ7bQ3ICIz!_ zbqem8Dn}j(_kUI_#F?AdCXk?8lU1 zjM;I8FlO;isOySZfZ7)2Z6v78QsnT!%9&WF4hq`&`AW z!*$#TlpcASr}zMzUe0ckp5X-*m6Oo5&+s30%$8R3lr;nMpoW++kB>!M{0nkkAu!eE zZxFN%%!TuK#q%%l`;aktJ}>DOCB@4htCGQhoseW@eDImvdgGCCu_|uqLb5?zDh@7C z%D4D)acn+cL-y9I3xJ6&;=lq(uJ=RzUIf8`flqu%^6~FqA`4kOzmUI#z?XgF?T)%4-l1p4a$Y2p)V5_6%g)Yk+X8Xup&XN3d)u zSkKnb>81QKvfVo@<31|VeL2v&ReZFZUyq>n3ciW@cxZ*}W9^lEvi5#x=}HbwcdK~g z4a9C0|9yiW1fXB6;(d|kxk(g${;zEd;)G@EL3s zx2@y%BiOqRR-}xqCThINo8$S~H>D%eT#sO@_;tM$vPp08{&*Yt7Jrv|*W_*4ySv_| z-U;;X4sqi5BffC^9XxISpt5Rk2|+buskiW*Gb^cw`G` z8+h9axVDN_TlokCwcdwzh#tRBb%zeT595nmFWaEhA^Nfp31BhpLtcW^?2kC@vJ&|p zOTFWkkNHi0qBQAffHwC5X>%Wb%xN7W`4f&yZpEXY@a%LzrPR) zy!#2q?k$nDUFuZ_xAQJy>UM6)N^z%^eK1_uaTn|-5X`5rzoB1!%7;o&$asptdE!&v3W@ojL1JzdOFrZGoR6ReyLn3_ z4&KclMRiAaV^Fq;hM!|VQqj5mJCw}1~-b~ikM zIPx@rnKs@7?<+bl&K!Zn7JGQNctQm{&s}|P(YQ9WiTJ%3{Vn2(z5I5J`m(*eo|`RR zBfj3pb4XtB{rnSD^x1yMz%8QA5BxLaI{gEf4_@aTfbVOI82=NEcj%*^_|H1k4}p%m z%q|zp4)W9l^4H;bAROSdm>1gj3#1Lo#Qw_LgdxilBYp)3k&e0yaq3rC$MQK#+;W&t zbUbc5VKKl5jVj>U8z%jJCHuF{Ut0z|Bl|-~rERwV4;~QxPhf2@{ur;9Nu4$9#4flq zk=cKO?BD^zW)Zop*y|XtiGrh#L0yNEO$FaQhS|PF96H8_B+<$=vlqkd1AUNOZK8;~ zv&Hz|F?F2mdB@S0v*POGe5r~`7FGX{gE;;V=onkXvwz4Y-u(k^Az6k@!N%u!ZSnU} z?i0gLfN7i+J5ES1rHt=-l9NAo?@9iK%9irk2GYryS{Brdc5YM0CF(UDdgbMMw;-)iTD>AE0Y=Y;VXQW+X z{w+)2^|vg&=5INd0b{c0a8}N*d1qxG*PZ1xeS~Kqiwqb4S#j{J96@BJ_GKA#B1J4Z z2et)g?m3!MPsO=`{-+wahiF^Y2zLj~8RrPb#ZQ`hHOT52=DuG;N2?g_9PMnVjp441 z0T12E-Pcg`8n=4}DlLq0x5nGp7&lF+*jV>l2sX#M=OOFBI5*b*&Wa=P?vxRMl09ip9n%?kRw+YgK$^0zloF?EXLpjE&RXG#!Vh z%cc&eyE`E=Kf?`H78;)6PGLx#lS9jmw3BK}!)|>}%FEM@`w^3@r z_;IQ7U6XM>Ji8IEJ8>R_)$pExAH@go(;`2rN0kfb_u@SkKOH}Ju%^r27dted)q>tm zH=o<>uo}hGdZJuboXwrXx+)!K7-8$_900#Z!fznoT(uoS2uh@6a)-bfV} zIUPj{TTVVK-l`K+04x^+FE-T&H+Wy9HE=h*{WvO?CmuDsEb?eV^*&4_gbQgUDWQ3P z2u^nQB6(y&Uc(Y0p6KxgCI9>e{B!9j3hW)Md;a8hW36<+}t|I_J=agx&+qZP2oS3eRC}%Q@hZ?!72g^;g=q){~!T3}b(B)H&CbMo@>-WV$4r zv}nSqOf+|1auDM$N;Kz)N|XPIXezgM%_Uny-z16RO8Ll8RHD@ruT^N4W`OKt%Kt8z z;f^%qlRrOEVnYkSnQ&xXXn{s1j$5jL@YA z2wdCr;IM`N&3?dKm_<|?eCM8v=>A-cZ$Z|1E3;E6s!2+!5iJ*!^bRqgL^Zf6b{i9? zhNz)~TV5seZ~_-TQMyVBHv-UsbP~6awQ_t(^sJ|P|49yKkRVoK^g=>7cu^tjcZ4vH z2w|zk;PfAA!Sug;>Q@N`QEwl6ENE({3N4Tbm>z?`F$Q1j4eq?UmSMbjJIDZvXDw<{<& zRHRI*i&T?EGu|slI7+ASOny=eU>hf2jz`+o#Eb9ac2v+ zH=W+Gw+i?`K)Q-#TJsGtqlLTLmGh18Etz0h$UytoH(u(hRObwH6}t(JT;rMq+(1fG z3-y(?a5o4#3h2q6_PN$tUn3HU-v493G zK{BZv3MrwYp`ZqXxP&A|o&Qy)0){I*8p@8rk^69cN>K{c#c8B4 z2sBc$5tzzHK#EG>S0X$piCcjdxvxSZSlK|-_lekHq3|qO5|u}_gkrTH3hT-=4T(n< z6FPyU2#;J!CXmAKVrdNlCC+qSjQhjZrZ_wj_~nWvc_SCWM2CZIUQyRYsu}*iiGobtea70=PxLx33EH+9VU&`~;{Nm&3P zT#X(N$5?bNzY@lQDs~L6EKysd@PP~4CEq0>;u8i%QYaH4`f^x5|JxeQ@Zcnhx;K;H zz%BMLd4oh3;G;SQjI;kh`LKGmT1%*b3AE2NOw4hE~sk4d1WGm^YW;-SO1 z`Nib8R0SvYfmZs_&6+Z{i_+2ljKKvms`el*QPJ!(h@iVEN#w*zkwbtpY{VtC1Helr zLpN#!q{jk)T@c{JC}5Gp0T!Lg)r;vOBR^^Yf=D*2L5~jtJScE(Tp0l!vM)WzKe$Ok z&qO!rV_kT_>2FL7Jj7vpCd6naR0|xVF9O7j&7ILe={;!v-OOGlh+7>g|BZQ(W#Y9JHUje2NQRqfE?+99rD+hK1XRzX~D>GCRvN)H&ZeMs+Rv9k^u5n zOq%j`aS$pcCJMtuVYu5>5+KA2uKWOD>CR4994~a4KFr7lQbCX`hAz{J z=!Q_;p?A^9L7`S`D^`sec#YdXUjyPyx->|)2ROrq#%BX}iiqr~cy#CxY&h)n1FNL7 zWP}W2)DW~mIREICJcIZMU^oT4HQ^1UH(t@3a1oKal%(3f6S=4}ENn55_%1bh{h(4o zFNlm*x#$HwM7aeaH;#|NIIK%s)es0NRpPDx9Q?AP(2to zzR?j;X#KssY`7=l<5P2n=CC>&QYcB_A{~D3--~eoTHa-O${;wOrfay9psEU;#AG4+ zg?yiq&>K+ipm1n71fU~3GM=#kCpU~ zY>>R-KWJSkM-aS3f>FSee_Q!A!oU+y(YhlPA89w@=I#gxEJ~q<26Tu(pvhJVf(nk@ z2n5p9jHVc|@CLX4(m+7ZQN}BXME%FbK#Xn;lY|a|qbz*b))9Rn+y5>^J1GfR6@>x< zGJ<4AG3Vwyhw@0t2C9P)&Ihn)i^V<6dCVOdTOI`^C4djT$O%PLQu6I=hhNhyl%-UD zD-K9@n@}bRK0+*UAUqOoBWJNN=tTOYv?7V*QZxu^^syzSoOL4mVzewtt(>$K(2#Io z>(x8^vd!v>+Gyyj6Tp76I~HKb*E%o_e)=a=(kfiXod zE?jW+z*f7wqt_#VyZ`emw<_JZW$!-no;pBwVJPZdI65l!Fe-pDTLm9=yy{1M4}?%J z!Ndo5VZDG1s)K#hz{fR#M~VT$$XWzu1E4ZBW38IbyooKcYTOjHbz-> zZLgK%6z~>VxwhZRvy-iQpiry6ooF?%Q>}*fp5Xjam(>VOp5HvU)aHFU8v!!tSR^;D+x5Koz1QGwr+KRj%;;w8il%S z*^r6Y0jJqVF|j-0qpz2tH=XUO_!=uo6nu>}ScZ?W7NS_!Lesj^PP4k%4e=e;8u$q7 z{GiptPRCbRO{-Vofe+XGwf5t0R{ZF)dfPthYWX!X>l!=8>QmU#y0$QA^|f=X>zw}Q z6j}WWbFAy_e%1|kE$c>mfOQj+rUFej!)CBks5T9x>TpDvrSxU?ZtSZd4z^atF=&)P^lOc-TDuD=Yn~g%G=0QOrK8W|^2$y0*Ffu-(BOr-)Fg?}zu-HI?=S&r5!pth2G2?fKv2y+vS!#E+j zB7;#ENzR5 z!jHg^{G1YLbsx+&ICT+*-@Qn!LBLHzEDk?h1WH<={KAuKSOESH$Ye)zkXP?A5HZ>7 zY6vkaNsfet9L))GM8LIT`NOsqQ4CQU4LqY8k!WXC5c&e#-s%i(x!|BA+8ajykuIg7 zp}dx1HwNUFe7ZhrrdX~2=%DnXMcxwn) zpv%xX z;Vr>s_0>(ovzDrdf}GW`~v7QfCio2TU;RCDI3*iXdP&;1( zlU|^K>Aa|c<-VlZZLNix-OPGf18aUoBN4Gk15aO!g$-<vhfkoiMyivoo#bn%%})q1jEXm6~18dPB2oTB|hsgv(m3;oz6GMzcS1S=e;5 z$%V^-?5|zcIt|j`O$}mUy=J$x-Xe%@ql2euj-Jr)JbeKKa~lLfLeS^+dSDCWISf5J zm&Jm~WYc7ICO1;+6`A#=YM*Ud(vYO@eqRPuDMg>CSEbi*_gXZT%ulcZ+^`%lSni5Ac?|7H!QN6*n_ z&wHU&_6go+>i3wPi(WUcoorq^#Vqh|!?nQl(J?qT$3P`@XGo_+Jsm$ z{|dN3&9pI;l&kM!_;ie(8HhJi#{^Q%cq)~KItmbJX5bTM@(Bgg#{|+7kDmM ziFp&8hvXjx9#>=gm*aC!2bwbQOT{k@KM#IM;XGhl&b}pLz)_=6#bL9RaF0bHE8eUk zai43M1RInV3`NsN3DMzF_Relw_>z06xwB(7{He8LWN!8>dA zcb4(Mx^?qLX9-Wf3@9>d5r@JH$PNB(z!Yc7i*q#!Ajx&}R+T1QZxG1@R@m+X#f9Af zP$Hy>DrLEuhnw7`&&F&b8L*k(+9fp{svr*)g4day&3wNLbYphz?t`zs0dmMswm`!23d#eb#(<>2M}j-) z8K@|J3@A;KW(v`t%oHX~Q1`tKbyjnzv(%x^YG&0jxI?-cQ77#Lm(-a#CRk3M$@JMI zSuuT=3pd#_2vSg|yrI4#btZ#=G9!fKvf}X!_m!exP-hh=YlxzG=M2xl3T_g!k=anC z1*66%FvuKOS@5V;EaX)q(AdnE*ms5pV=bKz2<3DS4-;{*Jjw{6iL6A$4Z0&BswsDU z(n1G>w%c)}U_C=l`=(QI{R6lF7C7kE>v*%-WL*7kdL|)5)2V?JGk%i12s;U%w!($j zARxGLpaP(;7%y5DVP>5ov-wE>N6;v7GJ}+B&>K^gsBCJ)Qp}*NOf#u6vjAQax#Mbn zq#{)diq9tvo#JIlT%j*f4*rU=SgU*8N|GQHJ0w4OQ9pfCd|~sTuV)m_DL4xOZkI z*c055WM@mrfQN|+E}%IKqJwFNOT_@4L69Qh7vIR7gh${P#I5j4HB`iJnFhZva$OL= zWtyr4!UWkAa86xVWk6l!=%wRCs-EUSg%)sensAih;Fo%VktF=$5%~2;{FXXJFN)ut z$bj#Kh4Bk&0D3(Vz45?md=z?jqRC*cUaAp(shk3uoQu><1iv1IU+94(CnVXCoX{1B z=!imeBuVP34$vw)DZ152U{xg<6@!nZfeWOX5KqA|_)HoEliN(DxT@yO4O}#9T0m!I zP;1T3u*J~x6wL1=E6qVf~NZ&w7L0OCHYH}Yyo7@}s+G7)RhM7)Za7*fgJM77QF29SGjto@!HfpUH^<*Fm zHIE3GQ&>*X0!d@R#^jnzxSg>`OQL(~(?L%R@TtmVqrtIQPy?R=v1Tft#fOXGv(2p)SmQc(S0GDZ0P{o9sG9hj8Huq?z$(5BK!TeH4@| z+e2+=YXm9;wIMR75SSju7vgjE0fZjmN=_4hZ52Hy()_qFY+T1NWlAR=6oe zgu+dF1UDT6p0R;=i5g0l^^T?a=ONrA12>w)4OONR!>H*Mg&8yg%%lJ_@xW3t$bvAF z4$OEQ%wX0MX21x*8tEc5 z!Fd885SG&cx$8)-t;7>nNjij;CivQ|J4tfEARl7ZBApd`3Obp0!d`AaIslJKk$H#N z`5tSid8e~sZl5kyreT;IP?_|waHsuFq$}Npcm#13;-R42jd%pH;drGC1oeG7b}P9^ zEKw2QlC)kT6IyPg7U)A_VYQ5+P&q!YqSQ2cN2NHmqMXB6O@&)P)<6n0N)K11p(@p- zk|Sg*q&bmN9T*AE9#t;idaZ+5h1Y<|1K910bMJiy>m5))CogD3*3 zdHHrMiU?HNeML*2rNkYuXV40cqMni(3s}hwpy~`%2`d6JjqvHD;qe|Pjdpyf1_GnQ z*=hQy?OlK#E51Ow)MWgm$@t-R=qv>+5fK`^7fXcUl8Ug30{2DK#6jvirlb#3wb<4} z>l03eia?62`=wYQy%6>3=Dm^XCzA=j&B+I;li8 zW1^>%1OhWh;!-MGMP^^3z*;KkXSPrt7fS0@M4%JB&>OJyfEjO&QWRwd``l-ain7AS zVL1?)3$ghdZVOzgC*dIakTc)^IGQFk(|V9Xe1z(u^6p^7rQrknf=q_%h6NrrZ-CcI zR`!syK0{UYqA`Hs0o6Jv?H%mE0ALuDfSgBIX~NJsW28))$bcztAblAM%}JRv-z^un zB!8hXA;3{90C$^haNxp=4TEHPK*oCd`ruLmXymB%1GqpCf63cPymAa`e2`#&hk&heDVVVjqT3oH_dbF>ONzCUiT~1d zfoL5u*w`e69nSQq96=s{*afKa5BBzqB1Mh_C?1l-a6dp5{4d_#1i+4>+W)`Zcjoq; z%uI4gLI@<8R9`a5WP=1qf^6mvge2?;Dxz#kBuoMZh=>rl14Imh5Eg0NFd!Hd(6|wN z3IthX6T+gRq6Sw4d_*7b2~U0gKi^Z`cbQBe{@(BRCnUGKs=DgbsdG-9I(6z)WX0tA zqlVn2dOsQ8Ofxo+!P@QJ ztR>IXp7xnIwLmy$x)pon96vaZjOK?iD)FQ7=i``1yw8gKut)@iZ<3g^;VGqr&=;TY z&UNRB8KH*@5IyJdcLkh#epO;le|X7g;{OMdU<=TbL{&5qwnGe}in6xWItpT|Z5e9` zZx%G$I@SY+y2?;jZLE2EtFg}7`ac`%PFIycC~63`v1Dx4&1hAj1VtMaIcxAl4wAQw z=v}S+LI8FP+X{D{=A83b9hZ4t*m<0umzS$<1%ImSIO@sD zU1m|JYL?5QatcTo_X67}Wp7Md8Afp0%&0NA82cTaRoK(de+Z=#@>4=7CBO+@CV7la zXp~43Xf7=lcvDCdmR1N$dADL==X*d7SQ2I9A_A834On^)SgMi-n%-mlvce;3g%H)5 zA_~S<PCnAT5<61HF|+nALotzk)mw1y?K4K-t_iga@4c~^oJ{&=E0 zGu=MXByG4U-54wXCjBEkg-|R?mQ#`I&?#TTaG+LDZ&FquMmQrZ1g^qJ;jd@m=2Rpx&S& zm0~ocqRaH5Hdohv22pxYd0O2^Oh+k)k|hU0eQ(^iAy?Vm_K17@Hm<9tzn$5`hifCY zZTe4#rmQ^s4~MtgHpF3mzwXec*8ZLyu&X^ZfZ`v+(jG~CT-(S3POfY)CpRX=ovKe; zyx6A#_hjIH9xU%;Rpwu`vbTghgh1xA!QmEGOp`i0Fu1pr9x~m8{h?nF&DU%usK`GJ z+%FXc8HX0BTdackUDHx#1?3kM&jmL7GdHqjQ0;T+dp0X-G78-Dc#UnyyUl_NKUHg; zlOEQxC^&S#!tDUJHT%tzFBqSv?301UVmNZWu~YRvP`l~5z7N&rPS7FkV{E+>#}3ws zdLNF}ynUoCqO&e!kPd{f1caM|s{14Tpqoz{^f5oRe$c7;oslj`^hq&40s36~`QCX) zZJn=o)|80ug4+}zJusta@AUZ?lOZ&;I-47{{wvAHd*tevH^ZP(}D5^U@!=>VRJTA!zK@pq(-Cops2)7=TFr z$4vc4LeQ%Imr$k6RH_HlsfC;u)EjB#Jg7K5;)A`|Ud+2!IbV;?XxYAB(ro=I8l^JR z0{|R*(h7#0UT&8xdw*d})fys$zS1LF3$6VO4hCu)x+FX|gUAWZm+gpV&b`8D7~(SU z5DQW;{-ot=6<+*Nz=)+QTb}8FMo|6mt6kDWjim8YPg5j5()dZ!0{8D!YzPBSrCxFW zVB8_LXzk$0-)pPx$8#L6cs3|)(5)FO3A67cEd1;6bpLL`7W;UJ)Axhe`cKGW)nx1e z?d}N?qa7E(*qr@w4+m=*vPW%{IUkgz2qBXeG=)xE!%?p?XYR$H2PczDGb!=pGBsQmcI`Y5{6C1nz<0Vio;C zaEW_7Sg|s$lE(WFImpY;6M;T0^Yaim%A?)l^ZElYLv1n)_1R11+VnO8W|Q|@r}vi< zOi*)LXb!P(7;vosraqzdT~aX{!t!mMQh&Tz6HFJk?tmRfUwU1q^L;ebSGv z_|8ad73ta{AYY?iOUJ;7@g;QRXX(-ciY7f;+@)l<+~NL>7#ana1gM?ErFIS@{IcdlI))wzp63{_&e;>w*kt}IU>Sg1}I;E`&@P9AWbqp)0?se9b5ise!(J^scE16Bb zTq3Q`yG!7tCm)|H5#8csc2&X;vIM={o4s5cxbI42^YvH?Qzu?RxzVoL;y%xZW*M?- zgaFeR?TsPvS~hPN1@1zGl#roc7KAO-N$V=Mj%pmU;AO9o$E`>Ar5;CgJ z34g0OJf)*ensFugu(4t*d6W#JqrAJCPtr4i?#jSjT5TiTM5rwJf#Q zw75?QBbv@?5M?Bk8P~)VsWXUCjhIEw9Rg8|(U>QSIxEfNIm;6jRArQdw6;X#b%8S% zfHxi8OyY%esebTrR;RWuE~?V6N{?mZynJ3K+W>OIN_n@uM9f%D@y6svu<>|#Z_XII zo{4zQnPXMSEpKr670-DyOnp)kqUw5k6%NldcYyFlKNuX>7h9G<_dE)L(qe=>KTnaU zinKK@Y}XP!m*+E?#php36)hbnyBNB-gw^zm_s^Y879tFt#<=zczZDwEcZp`9ftrd3w%o_8SrZyOc@57K4TaGo zs#{0~G;-z|W=J_wxz7Y=xUVoj+1{C?$6h%Two*ZmDV}X_O2x`eGk4aQj<`9F4MM7JNhPQBVjAyec`|)rVJDr@_%ywRXG|)AL7DW__+^&-ImDsd z*=|4s(9&j2z@^^&dZ8)V&H1dHyF4RhKIT~iVMOj!a$R@^jW?^Qsp#3UPd`FxqcfIvV7@r1)}8xB)Lh=%);PPYEam`t}^}1hFdb@ zrvGQX1?HQ8xuLU~4ZJ$Zc~n=ji^snx{zZwy3Eg@j{(bdv<6q-_W8XjcdDbL^CHyK& z5c~cld--DEZcZ0Yj_TkD&B9}Oyu}7VRtIpIcVB22qP+VOZ|V3+0wSy%mRC?~o?3zY zO(iw?UOxL}m6iz(J8ak_`Kx|j|7zgw*!Btso7g2Bj26;4!P94d1E2Q8r_5KjZiz6) z0iRa*Iv$m+VQlH`8DVWU-8Xmq%YnP~EddSZ*7`mWRFQ2Xs3wgDhc%6YqXSY~&Xu&1v}f}Tpy?3G7WRa7dCfK+_ASnFGW^Y< z>{9-(knE#^L8KEjnY}IC+zQX1Cs$5cX!saA-@N+R@3j{{N4@8SMmxfprd~xy14p1aGq0n z)TGee7p#@h!@I=YANcQk|H*&D;s=N=7C#uMmiu|c==_kL*b(V<@ecyGL6Bk3UQEd_P}#@2k{euOc))zwbPl&vW?gcX!Pj*V2MD>fhVh1P0@y6 zEifQg*HRynR6O^;Z)qAfR&W|g{K2l;hxko@Sdf}^9d@mT-qc)9&u zeU7AdER5)W2Y1G7JvIMvMY^lv!NZxlpkh+jN+ZQ{((;Svcm7GBD*YDYt7} zDA10jcV zw1ALpJWY}uS}8I7FG~Eu^1cgi7m&b-uPIJ6=0aCP&Vw zFX)_yv1dFxP4hZu68b2Q-wWRmu&f1RGz-AiBsz+a!|ln$qY9JwIqayyM4V4rmk?v2 z(t0)wMso4n71L$z=XYcdz zd!Y{|v_?7{Rio}EB7Do4{wape+-eHF;gOnE6{kXLXNIzJxqno=BtljwmCkXxC5pFe z6vn=DIONzV`PMtiBQ?H}L|i2|Kh7sT?=0+C9nEl759u^l+WsQ`8Yb{U#vD1km*eP& z7j~UH_=5cCI+S5I9`F1 zyjzb2Hf_ErdM;f?;Lx&YcR|Ud`MZerTo2|q= zY}qDF7OQR@!p7oiKdJ2+6Z9x$UbNQ&Yi~WKXIVw*%98;)oSt8?kYY0D^A0A{pmjQ+ z+v-|U^lu|bZ5c!zXgu8fkRwz>L#S_QYaXqQVNhzwtpSw$>R6&I4}t@fbNk-L$M4ix zGZ=@OdgAg39{M8xH+jEp6G}Y}wR*S7vr1bMC*WT@mMPp@hVvw6aQ$Gw^k7qzs9}rs zYrm+@=BiSgv|UdN@AAYjc-;?Z>e=?Sl%U`Cg_Jn}Y8j;vev_D`HwF%+`Xa^fYXQJC zr8lq?JW%Txa2rhl59}9B@awQwg#jL*BPFlxRw%t$WM|FDgK9=tq46tdQ4pl59I_@9 z)l_PSSX0JM4RhY106-PYK;G@_71>@tE+l@=@E-2Ah=gBL|94wbGDj>m({N=-qkQ5! z?hn`iB?z!pDS-G_gw2Y}a~c|LX?d*x&0nHGbCo29S9!%I^$~fiH(8i`& zJ#a0)#eNU+DQ1sNtfJ&t1B@&R?AZP@^jC9!`B}aa-{|Q5k5pt+OJ9sv0-J6;{6tI8 z=VZc?-4gnYe@Z3s&$R6PxmKpnqhiLt;HzBx%YbkjzX~eD<4yRd#4qS9^RIPg`8PUA z{aaOu@I)HMztaNt_d(^SYc}NKKcok}U(_1+k1|-iWJPJ~Wj$QaL-iFsUCYy-g36Hi z-*rm+RROYD|2(aK&^P4Lu)DMXJdH@Qt_Hmv0HFUZ@lz`GOrZRyVIx5H)-?)09W3!v z?C>;xzeXutKFNm9!69kR&q$;`1HN*2RvG`Xi5+p{lbT~+6ZF_%n!=c!64ZycnJk_T zd9c85QftRGQ^!l94ry?nIy@C16kJnGsllkE9#5*#0MaN(r?_AiD?(56&>Eg;b9!Oi zEUF}Xv2=id7-~yKlHOeJpI*M`?pLoz0Fl(YVdcL4dLl^gJI0hR4BVV|VeY_|QXV&^ zy!ZKTPSwr9@a%ZwU?&b)BI-GKXnFoJU2Jc!xJUtOU@^jJ5Ne&`%{;{*2}~i_J`S`e zY%pd#lQAgB=4%@z@+&QaR93GmMP}0|rE+w@aBM|B4K^BpxNfn8C=ZeoC9Hx1+m~T%Tq!?nBZ2mdWFnw2j$w3-`u>fqAx4AoQS_3`uj$5+l6gAHO3mcP7C0P2Giw#z28R&TK!ZSD(F@o z9Kx@(L0(G@P2HRoZAg2|$Bkb~>qp7-;AOvCZD-Ir9h#vTZ@3E3ezW)Vw?cRXq)doM zqW$23rMFJ0CZ|d)R2NGuw6ICoxa1=D6y+LaxE>h?Z6Pwjz1;}a?bkGuRE+<0K+c3N z{~|Ws0`E~O$$%$Qjzg3s6LSz-T81 z>f$OnZnH$?PZ7uM;vH@wi$Zg6A1OOstNgZY703+N6SBn;y17ePr+2X-+|rSqbgR<4 ztZx$s>l-=~t(s{4K=T>;`R+jV!_E>7dLA$B7-CEe<|bkY+F4<;nX7pj!4TWm`1(A3_MZQ6)>42dO_1eOEPw1uf3 z=H{AjfK~#boB>hm732dOk_D4dwiM*Upgd{Yd}o&2Hk&{HuTle;U5H;KG1Fq0(C{3| z0dPPt6BdwOM&x{~lja|+R|~vg$IJ~C+n6J4%U5jQpu9i z(!vhGkJtAsEgT+jdEGgu6`l%yk{on;L6>>GczWS@|H1a_-}fOd6VqpQh3Iw53g@3% zmp;FHESMVDZCQD4$!WJAuDl{N0(qt#&h(Zp{iVh$uUpU){zP z@vFRu=MMhnb$eESl(>A`nD;x=S-6(YG@i1ls0@&FkB#}t3%8+kY>(_C8$(rCxyvg? zP_b#I5EIcL@Tj`WwjJw|EiGz6v~@{*b#wN$tbw@CH*LUJHJgJtuQfs|@$h_$n$HIS zlwLxztpL@)5RL`Mq&I~FOCpv7y0kgD|IEV9hh<1{D2gCOKOp71uYwdsFwT&&&QuSv zb~94e$&egYlwCu_C~hJ*>>41JMUlu5RGJA=)N77CPBz1gV$L>QOdu^Hn`Jwfu~$67nK7YPd6+Yb9KA1>_p z&J=c?sS&<&eu*kQoIRD$;bpp_%$RGaa4yfUpf@?96U@o$I{9W~*Fj8PSWy@`&qI`9 zl3&rhX@1s=K}b8j$EdNB$)=CBjvVK!5^1V~gLQJ~0AhOTqeDiH7XdNzHG}!|&oYKK zFsm8jGC&9HcR=)8kqq^U-cmA9hr|Za;V}0$SJ)-CN@dNf8e~Plt`D;He}`KCb6XBC zXyuC<8*N3du;(@a51-gfW24lV;o(gP$V;xRwcw=%;hbdRz?|@k*EY4y0t-Mc=eztx z%CqUFk#pZdo31f@6(#t&v|8YOm@ax+D_vdFBt^d)1C%tMFEcp-Ulp`OlkUTacwuR9 zDY2%8iF6>zZzwLFg{?1h3%b|C=~a*utq z@NiWT;iZNSxkK1Cfl^r&Vkll^*2Rgl-5QNyuETpC&0tWiLGJcPGMp@pIri8 z>s<{K$5WBv*+fm6E3uyK561cgAVD7J_w&et7@CD@v0s?pBU0bW1hDM9x-iWIlJf$| zr2(w^@L@B z*}^GqiEZOR)jd|scgp3)yA}&8(k#=`rFh26?~=T@OI2jBH;vHfrU4rLRs&S)WODHN zg&jMaX1nB!^9!R+7G(i;3%fuZr%Gpstzo?mYaQ#2+*Tv8dI#vp=H%t`3p*V#_(1+Z zWILQvb-CHZz_ls|pCI2{z7b|ZQ={&}GXt*8DW(V+L;Xt-l`RVPKo#jIAa9bc^1x~y z;Ge38y5QIMaL{VthP0jTCat9<4C!MycLGG0@aoney^QHb7LFoqB>{)=Sd*l+pkR+YhOv|7La#*#A7pm#JT;V;O9%_;gcd(n;O68PfDx5NYGUej&0o zS$c6{bXEA1?W5a>uXRqYRgb%(0_>gZX3t`x>#lUFdI8|8$x*tpeU|2%w6t+qTJ7en z?#d*k{l!iyc=dweaNVV6LrwJ5v+)qm9YKU#UGViHJ(HbjKJ%R zOfUM_<`C@oOF@*p+Wg(6oUl9zD-X1abQrF%^1b@wx9X3#*B?E_l+{m<(rm?@k__?> zX9i_$K{e(8;8B}>q-MR!%I+GN-JGhd(o0Nh<)J4uQu3^ar-@I;8zA)amTLL7V%Xr?{ z;--^P`C{G&<++XFV~BEVIJ|PJ*m9lG>c#nr+2hs~lG`pRoZ7jWN00!nau`nQSSyUlYBy3D*fiBmx2G-GHZ);TXI@nxzGQ@_SzBqPN`nlhSwrt@ zNQ79XHMTR&+S!tQ$AkFt?tTea8`RXy6~Mr|kgrAA?#W@778X=f9^1W6XBl$^Zf1=Z zz32o1yJbnDos^5F(iKs6jeW+a2{pc%k|r3#2zeX~uutTRlW~Lx7IgZo242ye0;2b5 z0LV{C090cSn|T;Y^H zhA_)m%+e1~uz8$(?XtoFi!6o|pS)r84p4TCGUeiDLpP%W{mx*;#gR8$Ao<;_YU!Iv|@UFY* zcC&X(3lHnE9447e2s3iy*^0oBkXZQ-bNq z4?kI$H5Tb8nF@|2Nx|`WXM&2)XCz%$6h@cUN%o`rq#QXtIq-_YyGBosTeIz#$rhU_ zbdzU?e-D#yT~RoEi2&1JwrXevkiBGsJOK&7Kuo8Pj0>~U?od(chB!?~+q$0i@Ph;O zwB*lc6-K<*D`}E#UbAX2Jp6AJwB-3KF+F&`r+RTxgF2#go5wtdsjD9IHhrb#y%wc( zqg_+RkfF2MD?NziUw2B9g;zXbqZMvoSXB zvp1GacDlN-(+-U(4R*`q;HwKC7cS1YMb&``kmxV^7Utw>c|0TLMIS3Fe56V^Txgc+h2HK$=hZLj$_K6~963t$ zjVoP*H0C4Dh!6=EQc51Z1|KbKCD#;YR@bOWat$v15>nsW3|Gr2sVKm}qEf@9KBDJ^SHgW zR0G7c8zjBzP{{#+DBF^dSv0i_WQ?_`T2AHZ<){i?A~DLAW{YzxumR>A(GamlVTdYK z8v#B>m7JIsuYs$c6oh6npl{!xw^3@hORA+n$4!YQhBD1@)zAKPO!HET34H>go*=*=R3TJDJ69_O^Oj?1m{<3A3ubc>OFJ}tB7aY4cgNo0 z4!8hXoyYN|d9GzGtbE`ho%7Ou&;X>0tUO5pWR7+7m)n9%hJ|8$QY`_~(B6)j<^5p) z18(p5WPTTQa7`Gm9h2JKIc}LdJL}VVRo*_DyY0m~Cho2T#>jH~HKI zK@<#9MwgR-asCkA)Yk_{pG6&Po8K73-wN{Jyt0vj-~czCVBZS#P#a-oaCn=Un~X2{ z_*H)Fm9v(d8Oq@y`-E3}+}Ns&TLbf&-c`?E_RrmF4@WzFJXPtRY5JI83BIn4d1c;a zZxA%kpZ4vGeT;M{iGD~1ht0F*ErV9kGRe4MK!*A_OBsZWY5GEa>`}(&24o0I>j?n^ zvY2|I3f`U;gj#vK!>k7}G^IDBkm;X~NfqV&tNuNFm_;?=G!7(0h%GJ*=j@~uYOt(^ z!34{lfyo(a!ravQ z8o*dVXx`1#F~1TPr)*?tsuhquqaD1co|0Z)zV_rEL${R%u6g-kmaG0Sr(+Mz?{P>m zv9JN(Zc_0rSiqglNpy+m9X0${*1_*eyQ`sCnpDT7q!ayaK%`RWbpsNWLZ2Hjs1$l! z$AP+~bx?nv_-T5P=C;lxtgQe{lxdM6)&6g3f6?p1*Yj@I_*B;&vuPeLak+S@xIctQ zx+NTTl~)YHCS^TsjHC#uk5bBgyQX@Yq1H~EeaTBLa|69lCUnF+;9qK)lH$q~ zC#t)RA1Y78GBeF1f)v8)3~NqqR{nkK?9d5QFtQo z6cnA!q)HWnz+RoEg&Fked_PMlJ#VOj4(%i9MU$u|H=#x`kW<4DSTV!UETnr{`^;MB zyK7x;t#`DL^-e3P?_?j%ApBVR{ZxWv`Nyi;tpR8oIKcA*gzf}iAPo(=jX)}0L(s{l z^NgkUV6vJWZj?pmG3 zx|X8f3>I|Grv`JgT+Bx|1ZmB&JG>6Wm|Q2Yr=B)FUs)D*t)#kDbOvNaHartn=qlLEE_?Pv@S_NTIePS zPM=$|EK1=Txm;)=&Ast})dsx;H_dX5@xaqnwd@?5mD%B9hg^N-rrz%dY zr_trhbw1}W0lLj6S<}1M`0NUN1bo?bq5D)QXu$J2kSRoa)%Y`nFzhDHeVY7KYc!oX zA!DX8K06?zN=;0Kw-kFTBjM{(;Gv2D{~Fbx^Y*Y zTT^RxGM>^ND|UI8y9t*HBBxlh!g!av(o*;rKzs^7QO1MjQ@{Z!{97w?W7t=P6k6R^ zu~6Zt1q`y173!7{+%diKtm=#iugA?w^?lLoRXKNa=*EkoZo$x{-%tcXXo=!JsSgce_*whHINa5xTrQgCh=3s@8 z-ttuL+M>{*8sT(&HG=VY@lrbMd~zrD!5+`&2m+h z>qbD%0PY3Ku+>Ztrcj1w21sdzXmBv5PQ;O!y=H(|ifM;NsJCqrOo(e3vx09$2xxU( zvTlJB##iJ3TY#x95dtYy(M*=)X-0IFrFeSrZ?NPR{Rc@#H6Urc`x~UH%wpxHN;>N<+n<2K(H+zG;ZDQ4#rDlq+b>cQ=ti;Us5^E;Oa|l zo)(!jdXvyEKq}Z#KG+R$B&Dni@LI>v672eUh@GFQ<^^5786ZsV*v({~4SE^72ke`_xwDe`7^43Qc+IzFyUILo@j`T0g&2Cv zQ!CMj%hT@YZDrQfi7)P7)WTG!_z$qvD3-fMhp*GQwGmNwx_p_e2Jn5l?#eYZb17J? z>p7>pDJEk$baQ*v)^jfh7@}_V&$9GOYsBHc+Q)@K{wM12YT0Qye)KW8ZwIu=`5AUcuLq!u!K|YMnxj?_)}{4`c4j0I zO;>)I2Sh?Z;B}FCS;23KT-b7S8R?-3N9^SJCK#hhg;wj8Nkbyx`vm?wN4k;Wo>=fP z=O#)24Nrdx(3dzknMVa0)n3`~H?|!i}LBn zCTi0)oD1G}2b1n_jdm+HF)&fm^^k!O(tArk$dj^QzDBnoKw90A+fe2mgO;f_S9H{% zh0-#u?r4pF!SBI<_Ext$916S!C6wWz6p0K5<$kj1XbT5ap6uQ~zq7MrYPFr+vM%>d z!aOmH%Kx&(ow!1KReMtFyVBI0J3(%Nvc_uS*^35J+hoq|$xF>9Ih&UTV`N|o=4P#Y zj&&c<%I8?Oj|lPDg`J1!d3lv)MH8*e>p_EQ@es*?R<~e5=OG#scdR6Z42TQ;k*t%T zE{vZjzy~Ox1~6L^u_Jq~c(q?mCpj2e-z{GS+ zKej~L+$!U}Td-G7)cx*Mu?yTWea@7}!0nf=E$no)qtJV7g^})bYTni^X9bA%>BGpG zB790a5pZ2U)XH9dPq?XyM+!v0iRt=$%`s5cg}R}^DACg`RCiIZknZy#foS1;9#--& zLk}P0p<54^@Gv#gtVF32-T^U}@x7oys1|9-EkB|W)N9Y2-nQLkjP1*MHnj2_)=D8@ zJJ{EzxYG67h)vvFn>aYDOhp?j%V(8!XO&$>iE6#JvTw6Y!{MklI7h98%ZT;f&{2F;)2f-co>AwD_%cA}m)VzZE86Csddv$6jw+6Xa< zsoJJn09ZXDaRb6i^Vsf|RUwkH?f+^;Df0wU zbQwQvnRpT>U#g_k1nr;rV;-ncX43qKqzjhukJJ}_vYehPm4xJTo0F+(hLX>(CA;c% zDM!OuVwDzaJkEJCflWC$*@Gs{yn^ZiIg91H+-mxaj=iw+Fnd8^0~M`qDm*{+4nomt z)p)gx9fxVvIFsPn3sh9D~fb{27k zSh<=}x-lk|ObCR`cvB~n<2Y0+q`-DTloGlQz=vt~@KQsyIdLu#Os@Grea3)aHP zXr(@=L)qa3D=$&NHYWtt{lQX%xROS@jT%?v_bFCIxr;k>DSkSw+=~z>cTLZoV;T}4 zQBW%(tOzV~j6xUzr1cS|A@DqdIyvUAsg)=Gy}-5fbMB{ZjF>|iwQp6WHEAy3I}*$M z{1HMNiUJaJl-s$e!OD&YqJOszbj_m4ZyZVi$M;@oSL9Jj^vCKd@`# zvi7>Hy_%)uWzzy|^Hl8sc3B8NzZqPP-q#HJR#Da36%M*=78}oW&#J}1M%6GP2d8Mw zG{B`YR4KL~5(Mv0)!u!j(92BCls+s`#XH2^Xz4&(prb$Y z9d&w!aMbBo&p-FiWj&*rDg9N$yjS>QLu#r#$Fj6bTxz&>t1ne8P2|wcsHM>Rf*P*s ztooKk#=ibIfRL*R^|xAjX*N~yF8I=fEuEoL(&OaZq!-B`0zhOk=oc7V{~Y*1KG^-4 zYe0GkWw=0vC51FoYsq{#Y-vW<0%|nsho#2_$!pnPnFzT2jAip|gTocD)}uB`@-VDY z9*wO7X9mo`y_!7tjlx(?E_lwwK;bBZSdx|d7#?Q=#C$2d0s+TgSu73z-V$mkcV#d6 zHNs}>G*ZX}->*nD+mn%b%^+{wkYXM4zA;N}?VXg_`Nl$N!a|OL z?b7Zp51BXq(}-p~hRD7ci=<%$VgFaSC+A+5DlZsC?M+5g<8gg^t23&Wm5*J zLB|ey{5ue9%Y?`;?tkogdnL~}uycDvat%CQ8(Y%LC(HymgUL-hE|nKI-!Ckk;v+r0 z&Rc0Zi@Wp?wwqb;krukr-yZ*qrM8Q|LC4fNTJtUPOF#S3Ml}n;^hefT-n6PIB<^eN zUCG>U7j_tO5uwrMV)wl`OiucCVMOs_fNFIs!(_#`3zMgPj5h`j4$>+s)!VNS4GZgr zqAtg~@RvMAebxU`I^}Dsgc1sTEy28{E^!Gw#`pZ7?l8dAY5s0Hzay6WNUcy9lddO%tg~75O*@Y_4dL0ed$sKxVp2u{2Uv%e+9eE~@TwmxW7H zO+@$a)N;^7@?s13NvvS41kIq3*&j)*X(d#WF(-5+*tJ#RCe zuuoH07&*dlkVFbH>9UMbrT1A*tMt|~(i*B%8n&%L+?6-#v{$Vr`Ceu9zQ2C(!+)M; z>SrVN;x1z4F&iRyGs_wwo&>B1N{G)PX4E~O=52SD1}sWT=6|QKvn=(1Fhy3g!X4Nr z$3R@pwP37Vi;0p5lrGus^Fv0K%%)*W2?8(%IHZ2_JB4yPb|=<()1^%$FMOwPjO;Z9 zOlORC7G_i(l#xYNR!uoFzsVd2LxmN>J$*}K_J!MJjvIjU7Xrj4O%l#R;IS&yJdWp2 z%x04$I=fN-fnqlVcR(+zcB;1X$ug~5mbo)*lr%NQrz;9Ym=@Ym7+(#m;y)F*_oX!I zlkl7Ba>q3#;V{+ej?a>W?|#^QHD*HhUct7vU}KSQ0%jrvL$%DM*#{NT5Y>)1x#0(R zb8^CW3)^#oLYf@)On1{fMM;26DP5d*)7*iYtJW2O5Q~JCBdP!Mw1r?{8m0*n1O5!O zOvE+IL>$hg?r8>@_U`y9wNA`HLm$t?BJ%_Wb{O2YAG8w?v&^Gm+v%I08Y@l^n+NVh z0Ux-NYBq}!Z=gf|))RQ_?Qdi=}A zOEHp*VoW*CG-sL#bn*ufMglWiRp`&>M|!LoiUOVQ*|&ermlfr zOacht|5wiD>1j(bCGcmvJ)CS3lL{#rc53)ly3ITuM@{J-AVXDCI*9W1xH`eB9`NPU zQ$9mnhywbnsAxJ%rWbi9y_mY-NIIKAAIiWxX@GN*I05Ac?bizo1PAj-ApazE;t%>K z+k=?spS`s!D`l2QFNcsf>=eUwUP9ERhJ?@_0O>?}OU}}hR;BKvi^-VVJyy~=m5fhru4Ed9|wd%aG0%vE$VTKbgLX>Ax&FAr0 z=QrgcB;;?WLFci~ddfpu$lp$RDSfamlon&sc5#~3Od^e5T5=EEnv+)M4k;%su08Tc zUj*{_8oL*~w}RnCq8z+by9Y=wlZ5hV^1YSVql+^e$XR-J^8%F4_wgli*#b@;0jK0iz!Y*|DStV_x zs#K2Zh{orX#x$3qn3*vCywWz2mL7a#(u{9Vnhr2}99MHpu<;j^C?Ebz>MnL&vPjT_ z9=eZ3f>|+Mqf+T%#*0bJWh~`6@5X=wAvXo7g3)K9;ftvG@y&{xdJ9@~{3V59U5jE6 z-wMaaUq&_ViN6wXe&jZyr{?0@#q;qU;_mpX0lMbbRCT;A=#Ap9bC*c`jR2}kdaXV|LF?6R8G!O~p zPD{;4i_Lt*x*#V6d`JjKZCu7W=iwaI!872==UV&XGxgij7oVkH?kQNVU(6gI=A6#i zpqJ~*Q<`;iTqua&p-tY)^H0{T!<0zlgZG#-rGAGDW&{Y|t z(_!yqV_euV`ND&R9dLC#0BWn{ZR;CJ56I z+1)|v4RVkAe=l!NZIw4LhukLu`@T`+{qmk*B;p6G{|{OZAA(E+?zd6Tx!mUUP`BHF zkw^J=Mf@1PBp~c@GV<{cNvg(ANR3r!-_h|#sjdp*TOxcfPeR z&WKuEjh_>`h*k{W6RvnePVtKORJ`Iy@rrvCu6TmN6~myLRN;RF__Dnq9{aTo#BTzw z+gbhHfBW$rn>&eKT)C@C+~Ueyf*|!;(BfQ7#A3`;vSegr_!l%WZ*{#K>aLHu`K!uTINhw=aLoR9y>b3X2uA`)L1g5!%q z&~R}GAS;=La`DFqr4wHg(*KW#^nVqD7+)IF$xnnJ;j&Om)DEl_4K%X}ni)te`6g-^ zXVhX5O~PM?j)<2OGiT*+^?VgX$?C7JCYZ>}#E zCBw&g@tlU>t}R(5{F_~x1{{L~k-c0`RtrQ`Wg1~MVkE)8Opx_RR9E7bgU6MHqLNlX zXdjkV@~)X`z8+u@*Q~974_BC1#I0F7tza&Fo<11aI={BZZy1 zaOGVc!qJTDl^VEN6%U}{`O2i{(Ly{lb9k)eB5k3%?)UF zK}8BnhU2@EjgJ<#A5wR7OJ04nFgAYUr5-j@Vx;CEd5D~3>If3^L|nlnaf&ZuoLN` z*l6P2Tx-^^IW#f=g!%>;<$c>Y{Q1!&5}m_Z<917CJzkhifX=0lgR_~*Esq!W`+%Kf z&gJOOPEruC$nk>BoSVMPG_(aW)$I(K8os)w!Dm|#EQL2G2mY|IbM>kaG|UozT&X)0 zaHx~9G`}{!Iz$9q1JigPyT15ZVhqQhB7wR=sGJ8+*Y9evdLkN4CEoQsp%sbaKZ62{ zR)btYk3l*F@#iH2ZU~V9U*Kq7ym*cH|3*oIo3bi6?D|DLD=5OvA>!%EEC-w3En#I? z{G|{oTpLz)jc*Mrlj1LjmGSXc!paWuZDDT^-!8FphosO~!^#oy*MKu#mmK*-VaFk> z{&as1;?0#dB+H*D?9L%l&%J2HEHA-UDa3& zZMK1~syLg6vqV@H=xQGyorJ+$O{XwB`iOHihQ0K)%btILY8CUm|Js+I&-d%Or1739tgR#MA3R%{6d2o`CoVcH3<)-n$d$ zdVGWAABc4hmE}7-U1hW1@9{yiJLK`9N;z_H`oxNR>1P=s>1g zL#vpx%TyvMeaH;C3(NSK?ag8JRl;4`>t%U19zD4-t(s!dd)g}`0~XPjxf)PgA(+SI zIAagk6R&%^Fs3@4q4%*GsnP)conOD1o;w-xHDKT_!T z6l`SxjKH>oW8-}X(lQNazJK46&l46nNWSoNpEf;YJo|LmnhS>5=^TnX{Kow zr+qT&p0@IVxtb@D#n#y0)2qwVwqMI$Y5SG?*WdHW=rKYMe80)SY9&hr^T<)lY4(!oXO9he_GswpNT&!9?7(L&d-YFVkW4QFRzJu!*Bg} z@~1V?)b%(2tT;WGNu$gO9e%55HG>qC{LnEo0g5!eyKJM1JU?{d^TpHNE?6<;+Mxb6 z1%#vyeIv#+1D!s}pij$!V5KBqeZCk2<;LfWr}DGcFN!CRq)JrS0p-5&i{kMI-Facq zrYP7YNWF!q*pqqQR}ru`ggE_95J|I2XSB+uh4C&KzpV0yKfw>WD2Loq!0(#mh4yGf z%Q8-UB$an}OupubcJ}f~2T%*|tn1@gWu__q%K>4onYETB--)8Bld?9Eo!D-W%xd#* zgSS~#n=+$kO*KZUW3NL~+rV}kW;VnGJDSTB{Jn(uZOtIVvhEeAw8yXfjvjCCbA6BL znY5V+>C{9$z%N*k;LJGT+ye*5DTdx5_Ow>QD9ph zN7^{Gu*)9de?_7zXNBEBs;6_fkAUX;1AkOui7WKQLkyrePuZ5Wk~YaZ+M?}`NO9ZN z)VtcEv|wY(LQ-zjZb z13qxjg_&t@4FO|j@sS_6G`Xlf+H>%ZZ%Kc~aicSe>loO$rl%#_Kykzzj_5O{Z&4f( z2t{$7p5j=cZv`7$Va8DzINX@Wrx{DyOnB5lOf+&KOC-239;%oSEn91JODZ)SY;Ewj zMcka#8NF~23@FnzH%9Q2QM}j^VQX=tYvy%hR*AzQl&zW818KL&#r`n4VQ6$Nyq)Yc zELz=osmtKhUr%-0X@+m+jaT3eLOK_`2axjx+;C|&!z{+h*6_4mOhS}sFD*>u7^2(& zS{D4*PsEPs zxL9#XdBp6Twx^ZDPYF{*D#X>RWXJ8IF*|uage=R2B{4)Q3PGwtpvhs|MfV&B&B`@F zGX$4@sGT9yrU|!3,OI@-rurROULmn&_CF{)dWd~A5sJveJVqi=`$!DyHaYpglw zWU$+tuqKD(1#Wpen+(K{nrdH9DkGx3&^%U*h<4&984(>7d@6Z)MAUm=hJTOHMocn4 zAF6SNUR##yt`xA93OMmQI2U3V31RiDk9$e67}+fIGij&`46sXv zeW`%2tgAoXT6keiy394>ATma95KsJg*{fQ(7(vlK3G}kGM#dStjb?~n zz=#p~LZpTNAk|a~d*w77o0F?XN99BKwDeaa>J{Zt^SJvK^63v^el-Cz`HfQ9!4%Cw zC}_=?X!~ZR4~tc!vbH9y)Yw_zB4p|aR+EN*F-84P+WwX%H=q_|sltYs65sZ2FWL}( zGHxpIye3(@W7IW$mCQmBPWQek>;fhttvDh12Ym9E9iu77t_fpt3Bd9%Bq2L2C|VPi zcT~*3U^0Wj6#&I}2-D*jUvi*QzGbfkcyi;IXyozMVLlUz&A#VGvsXbIj(%*y+R&uw zXv{0zR;l7!A}{5?6bRGprD`1WCi0Bq<@9D*c?bt))tTkihe5}CK-)s978ZNeXSP_F45A{4Uc6oc^0sf*OSYoBp0q5+YqxpHGeGk!q;o!_t8s3EZ-8lq0>W>T zcrq24X2#;>4M;mkE{}qlDz6Cn!%7{Mzv*FCNg<&(gk~S$@}IHNk20FuqVqq|CrxXV zHxZfYy3HE{K@*KwNNNnB2cjFYT0JyV5s@Bhp8k46V4DnqLy~unizc0nN+g5C5I3$e z1DDf6 z^r;MKF)ix}9FN!n8<(Yu!$pK!LHLV>&<$Hs?!}1ZlZh4x!Qa4+azpQl0+>-iJsV) zL@nF7;aO5Tu86getJZYMT@K?3X2#HUB=2!iPu1>UGb<;@zI1p<$1D68q8N~&vY=s8 zpfR(#v|Y8^3uqWxdjUZP3OU4h>5FyAHk$!D=f9mBhH}NxaW&n+NC5}Dj^LVVD+^8f z+el+?>kp~0gTLeDF62P*ptAF=mWZ*YyL5bNa{C=`BDXW6gfqFFEfJaOr2NHxiAazj zC_qZQ0|&Zcyff)2M-zh1WM(Fq#SN!Dcw6c_Cnw=8;8O zgBIrOi)G2--O;#RQl1yjBC!T=z0CV~L)BB0&vZvS^}#ExB*t)qeiT5LAMNyc@`r4* zPdxFbwk*qrZoFvG0Rt2Ra|>^U&m-4~(Pw)u+rnKt7Y}E++mmq<;asNjw@-{l1)Gx_ zc8_+@>xU*ru z>6B)YLwcf}CS{X05Y-fKLo{GFh_~d5o@mq(MzWyMFm=<#IS@FsV>_J=?e=Z<`^iP% zZ%Jqh)Byxpw^Wu^aSQ~}S*p>T85)L7X7WkV@vo3tiVH4c4OsQXoh1NlGQQo14l(c| zTZqi86K+V8m14rci*sF5w$Du-og7WA4i!q3bi7}~JRQT~@JGliU4%HdK zPU&4OZiLNLX+yeSs>V-~c&RZ`kj|&jDibS2YE=dCPzqH=yYf7xN&;=D0T4JS^)?Db zP09eyIF&LwwJ9#6USb`m(oPan)T{8vIp{&<5uGMT^KQgAlcmzR2J3tB*=bQ%)h}*q z?y1{ZM`_qk0K=@S9=k-(B=_!H7*f?TTB~VJ$Y?d)Zq}{J_UUR`GxQd#=`UzCja3f; z=~vTU9G4e0Ey`|q6~1gThj{t0sFCKE?WpMlvGYMccV=wEg5)iCATpy9UT{*=Q+x1Y zKiPj!GF?uOxp=WA{B5$Ggl_R2++wMtNh4iON0X}MMLL@_QqZ|Y>hdD=u2V5+E=naw z5TC00Q<<=JgG)9+)QH@FgAiDfcDjM$(-~-4SfyQBUR>esX8dUJT0vHy8ZXKNji2^% zfFzDJgN(gE+ooRF3naZn2)7qBy+sfO9@U||(5*TPOG49vfA?NE226=~JQKD;Lej)CHYBwVlIOd-QP& z$`t0sk?rn;_(ZyT0vI{To#+k#9>OPj)=C*{qT9|LytI!)Qq({nem*N&UmZr_;=!HU z(dQH0c1y}9xp`+RU|i14WpaSz(yvSnwqfRbZVfN!r>R{70|Ne zjych;^d|%O{h;FmD0yx>f_xw6jz6$-909i7iQvcHcIp_@PFxvx`WZOSEOJ8*w4V1>-Hu^ z1eIYWNQWPM7Tj5e5;2D;0%W$jvzwAYWaQ4tk|g+8>SCW-;WuxDlJh0#a=-nZd_y=g z|B z18hbR+A5c{H-XlNnK+E0KYRewOnM06XRu4pP!H=4jitI;?tw9NgUCj17-Ufn$KY!2 z2uSDJkf1|co0jD*9JgmH1UA1&XOwA4(&o%`rO%OxH08r-m*8|?1gvD52f&-{NAquh znoEg|VBZELtFH#Na%^0D&WCFhZQt1NWDW35N`L7rb_6xgu!^yI*J>oC2@O_;idvh| zafD(*FjVRQ(+<#qh*~A2P>GM0>qQMIeSOsi^jbG(Xpg~D7d1dGwHi`_Ypb_vG-y4l z0V_yd{$# z^G736EcX+_8}igcp&x3lOrAG*^=?!tYY;}Z#u|mnsLE_ugU=KcWRa9#SffxOPMDMo zd)EqKqTbPDl&|+Ly`#VQcf9*SEAQncjT#~4h>NByzvt-HLDNn|pDFRLkuC={o7vw^ zqAikz%DSeR=uoY84t0IZ$w;qL-BL5XfSY)U7gzk7YE4TkEtAVx2@IQlF9`X&{A?q<$OIM0u69d5N7Z{^uV7*2ak~g z8dQiO=E{D%4`|)a{*mBuj-xLbg&;aQ{F@x^e6*O1kQXV0o(krhcMGBAUPyPTUqf+H zNo%N6t9}v1lFGIuwG!H55oJLK(6@8$R9i&3i?K=ehpu@MwT@3K>0V<4*C243mr?2F zp7D(f7TRjIg}|`QwLPTTWSa0iI9Mg(AqrSUT7=0Xbbznak#nPw)n!ud(=Zu}K(Sj? z_Yf23ziGq1epU=`)`_eS!1F^B2rPiKG9yoAcKSQu-A!@D($r=b zmA_whe@;?+srjg&3!kVG4y{+qq7xQ&j?hc7G>y-4NaPkpoUtFt=h|DFrr(YZmYD00 zt3>Yzs;R!oz@QOJ{G)-MAVr(0NUAa^<=n9*jWkuG9y1x5vRs>rl#Y5ljC3i>P3fq? zm@`dT&eGGl6nTjnvwfPX6~jK+czPN_Z$1n)hMB{`>*am}+MwulF|h4i!gsM17pqBODKg zmjw$^=JYx8lMmcMnhvR4DHLG-p@0e=0jHX!#?9+1cPsW0RvX`peNY}L7@XrLr#jx} zx(&!lJre=(_=Sj{P^**z#+Lp2;us7cZx|lxCh5x&$#L_du@jG9!UAN(5-J#>7~1=q zT72-*a=}6q?t_;wxLmW_9dMT8*0Tl6OAp}-donmZ+08q+6U*EQ zoRtfM+iC2 z&ilyv`&hkqWbe}UBuDU(H^ojrs(ufIQ^_k3$d6o&8N7y;gDrC=z?%IcW_fFNZZAOO zd#j@oXwMii#wko_n>!86aosEKj{R$wRQ^yLhu>29SH+{lJ04BW`BiaGd24^;SH(y5 zd%>pS;$UU+hfT#RhCZ0L>$F+9Y35HZexbN{Xo@=YyUDrR?@!)%p?Gu9p4{;3;(PFd zdi~eM3H*%vO>tK6NOII~iu;8R2FW$QDSm`1+kacU5MSs|{pveYQs+4RI3gK-L$v3P^6$pzs$s}6B=iska+5r_KX5}dt?p4ibq!u# z-%Ac$6YUmW``^jAYof`8oBtbc*`wB9e{l5G2;cU($3t+rLO|i;j1^rsZk>mG?(I{A~Y$=+C4^ zCr4`p)vb%7DU^L?QFJwLAN(L?{;~eb4@U0{`2F1}(Qj1fkyE2d6#Db2(Wij?<9*R- z%KgtJ(HQ-1cUtuC4LupR%z83sSyax`lVs!jqOSGlE{iS*sp5?@quZ$Pmb0S!`SR4| z(etX|z_X+8s-5ths7j%W&WWy}olzf+u2AkR=SG(dowo8{I0lit`_kylOgLq7BNa|z zDx7|QDP(njkR1AnsG5Rn#q# zw9_f2tD~3U$-iG69T2YlY|?uTzvQjD2An;Wth**UIM|f@{hEkdr*2BVd~Gx(IpW%A zYPjn2N&Km3=VZ;bQIzJKP2zeI|0}PGcKmd-c&j%f;=s6L^7T(gKMo#Szv?s5<6+Cy z`JgR%b$R>f2Dhx==gZNj^TF@e|M>Rk;3)WgQvOzSW#>b8)`k5&$vxkS z-luBDemi;+Y`pUAXa)m1?oOy{Q?lUBXkPf;?O?%$VA&W^MfC_bvJ#Q-q&*od13Bil9)awqB6u=tjO8UBCpiIY|C;U$ikf z@f}fH@}uuZS5EN^$;wQpppZG8{$BP$5;*G~?VmjH!>E8>bNA1q-eleD(H<4F4km`U z2-~hkzPI)5p3BAZAK~(xnLHw;+2RdiRtuAJSK*{0{pE9960NvvtAn^RdEtquoP71C zkt5V6c{v0Dnlo#8H>9_8$;xuuzD&GKp7@(cc;YkK=i2>K8_Nj)gqw-7Mq)|Q`6Uyc z)|Xs`3!jK$sk9MP+FM$+k6v`G{YI{}S7Uhzou`B3e_o1)lzQ~SmAV;b)bHbh1CxI| z7+pS1-Ap@1N33J?)jDRt(=ik+>)6ob$^VH)CqH~B+O@6dI@Fc8n6&;NnjFka{`_<_ zJNeKvjKb+Zh~9ZXQ9$?}AoRKT-2mh^WdIj|bb*typf|mnT%BPFr6a0MaPFTR^l-H7 zNTHtqsEh;;gh*u^eDl28&PRDW-C3c%uF8u(YU&X6W>Y#$Po=~3d^$`UllDiVg=6Cgod+oDtvh0!Qhz?3<06DTiSLuFta?Qh$3-(KfKZ-oq z{B$(OIz9UBSxxzaJKt_Kwd6+cxKl1!*HRpt{QPgxG-&L`-$uJtDVfq$IiFFM=&T*B zJtePMA}6pvQ{<#k5t%ViHagk@Tu1qA*9Oe8!N_T9sZkxS*jv10B?ry**52zb$%u|* z^7dTSx{}k2uvagMvUwuY0|Vx>JDxFK_LU)PY~iT*wPw(ON# zmuz|>+Pss;L=6uHo7my5Ao=9)qplr{Fw|osczQ~^J-K_6@f)KB+wYQ*Wy`^xyBJxv z=5|R|Y>dv`Zx>qv#!`zvZJgC8<1$e|SOOzL5Nt9IQQ(O&*>Mw;bHgLZgVUdih7@T? zeA1fqKNXE+jq}vcqc|ue>z|5djMue9ePuR6#!isSh*LjC0U=uYN0k2#MONh$db}Je9;S3JL*kdC$x_8DZH_Gi`ql)D- zy4a*d8%xsBXEU}X3e)4!h|IOD;|%0ZH+(I--J{pW!x-G{x!g4Q%hS<5?Vh8tWp=#1 zKHQ^sZb0bHDMH6}jd#iFXQCrUk!#|fiX#4Y^0&}YZuoq1!{?LJ&nI+GoRm~IB2Jb) zi%Mu>qG$Zj8oDMo4ODrUghny>`Ll?Ww&V+8v1e!}jWUdqB93L|em{!F?AWRA3qm(- zT9#+&_TYh3dlH|wH2anyn4fC^~!I2y~E-1w6Jo}zd zVAulD=PGRt^Gi+>h|P=1A6|;$(iU^cs-Hv`RWr#e6v8fsmUfdaFpZzQQv%Nz00Cr# zuZcx6YrNmsDNBNQS@<$`KuL=I0Ku0*RJQv(eNmT{zpPTUrBXWEG!j?j{Qcg+CP}+r zlYvJ`n$fa%@VsOIiojDQ3qa&vxnJoK1wi5v`iJVwuxfMJ3`3CoNA#@f^PA*m{6PLStV>*EJuJ^jo{NXpjn8uX_?(NA@ih>N6P(1~jQ8 znoMqZGMdzu6%UegqvG_j+)$87ev|Yd40I##nK6XrE!^Os&&ms6{_UEpGA93 zX+xFJ_?dcDg!ugn3S5yKue*5#E9w4ubm552Them!ou5Znj4paj656tvTLM}$d0TSA z^U>t-MPCzCdxiU=l zoU)KE%`UImLVTHvG*wN{?Encg)#VXEMZ|fp#Nzm0MW29*YC0_){eP)VnKH%YHDU%4 zH_U+Lr)N|2_TBFffV^iFiG$4Gy`zzrCS%qGp!Yp4AaSLDFy}I#2QVAG zY;i-7yXq=b&t?V~Yf!2^)lX&!J#8V0SO%L|L0s~p-~_qKo;5;)@KfT8vxSE|+x|b| zz68FC>g@Z@+$4AA+$7wPKoY_-_p*gOVF@Ux3;_id#kIAyiq^I^?v+}#){9Ct-~w(O zs#sB}prS8Y_2LeKf)y3iR@=G+s}-#a?rZh?|DQ8+mn^95`+cAJ$=o?JbC%~k`+3fD zfPMZp#OamkBe#K>=8#a-_Gk2>ZLwcecY^lBN&V6jvC(>;S7L{YWprvK$Jwp?iXTFo%TmLAxYYl50TccL+G5tuX>hr%V7`EF&yM8?U6Hidwc8N%jiX?(~f|97v)JG<^?;w1ybA z2!oXwpb_aUj8W+=HDkgDJa z_gbvKq5_9{5?+yh@2glZ{ioMrWkoc+^z*MF^u0v)`ykd=zx8OWe7}g-3$RB-zA+qKlKK@AP(&y&X}z&uU)`s?UpqK9uh?0~4n~gxlQ`!K2syYQF6OWRC&+LDpqe=m?whJGHWHs?*=n#R$U$rG zjaVv;C$bNlp`w5?kisB*z-DPT8A6y8`8#n(1=9r};fs@nNnrd`fJ=?4RzYn{Oc{)y zXfnzo>5Pax4Q2q=8V%GpXb1I??tizESoaYKam!6rsjV-4CbmCeT{%6$}#ioPvQv+>zOWg$oME-orZV z#^Hp|Aq#p0)+49-|hojN(*qn*v14xfoKiq*vz@2aTC3D%GVaiqXJfZsOw=aEis8o1H%>X zQFw?+gye@baVn^b!p4b{=h?7ltjIsXYqen}A=?Af3kS?6x_K)HaAqZqtj{)?Q4X(EOS(;&iO zOB@lii1P#wjA)V1qo>p+x9IC`b$Z!b0?qNI(_@M6QDFrWAn^gYK!&)=6b6Q9$XUp0 zj0=$LCopySZGt#HBqHvSdb`wkX(Rg79kJW1*&*~HpAhK5())iLo31Z-FV<6^{Ccds z31`9a72rr7J^?g>F~F-%MMA03Z3;zzVRl)=u04x4l9*mPp$PDB;9&>mP1}!JA-p01 zTqDl~{w_*6(G4luim-VWn@{v_-jDsTuTd$9?idODC(xG>n!vSWyzlCd-;W(RrjvL0 zG>+&QfIX*Xs+^jsTR(_-JpvUH$|QsrIW?3?r62epHltJ3@y99S*ooZ=>y;C_qZ0$_ z!7pMn0$<4RoG%3N0O4%GX%+ZFPy@uZC}1#XcKIkay}d_d+rMHx#LfA`V(182cBcl#JB(uh}}5hb3C zRkjl?X>+WgXgvkYN%RRyWGcoW2oWtrT`JJT{?#2BZ-rqee3E4y@*Wtkk+VQG;~2)o z+>TnkEaRnv(E<(u7;zzEWt0cU6ZIh=FXWyDP)>o$Aj}rx+mJdJ9Z1vS|0$*G3~6FZ zqtqN`ctEUTybl+ih{}lAD+-u|eb(H=W7sn{6ap7RzHIE(kj4s~GNCdHFbFs(wa9q| zSg9=k4Y_Qm&X+9!5}Y?AE`i!)pN<>Sl5ld2BvqE@jVa4{V>)tKam?rwl~Y|V{7|$n zI%4SNs6#Sva#kQVw_b|^gKmqH1O4uj*`{G63$uj>1#BxNQxkI9ieQTHBqF{i)MQK^ z@mm9m6=q`M!fZKDG@7aDky&7(pp^^Lp!SPdD*_8HE+FiIpxd~i?9m`(V?bi{iClpY zll2)#Z~7d|A94N0=dp>v^?_f+hV{#?K$%sYXJD*EB4&N62bHdqzKG52)Jc+~@v-GX z*MT!SRj&8`GM2PT_3>ZECInnSKk;Qu4I#T&nO)%VmzkfmA+k17Ih8ec@xQSw71Kli z9UIu)_(B;51_;9?>&5ggPse(v%it7?c`@w!uS>;z__Pr6S?3i)5F%iTmOOYQf|`hD zJWo1sm4;p~_&d0Sk@cj~^HqfC8@MU)gmvNreuO&nT&hx|c&*c++ZyKT`CesK;j1Q7 za$zYIG9}mRA#(rsDM3;3K)2~;RVN(qgU*G;N`9+santqv5z@YUbr@@ zPkAi1zux#&>N6S@#gC&S(#S-mJw$m3K z$}U{#Pi?1nb^*q)VzX>Di&z2W>f0<^1$wG*5V$`A4_Kfo8Kd3bqQ87G)+>!?KvU8v zRTkmYaP{;Am7uw-tA{+fpZG4hxC9!4c?PyMj*c7{vg4rTc=j0US^V1=K{9eqDBd9= zkl^NpPBPfO&;~;98GNG*hGONRgVZd0h2NtknA$LIg|k6&QQA?Bs1f=niW)`;ylA3 zYN-_&08s4|D58QC;%r+1ce9d*B}pNTB2j}vB5Hw!l-pTeg{TS?3%))j@YQ zM_Rlx!&^7uXAm0j2!0|35t(!&PT4lk(cgYC^Ai#G-HhuGHZdeWUxX{KhhF45wbs-6 zX4lzsGQE|ekRhpxNXGNMa_}T7ML{u~=&(O0kmHDYkAEWO8Fe`Qg>rhs7f=&-PTMU| z1XXqj7+{aAObA8*L?}0%L5x7qe@Yzvc-$G*8BjBBsnh>w_Febuk*7L!{XfjCg;Z*n zeuiU%8`cAxv-}VB@u$LQ{!m|hsxunVN^4JbCL`j-n&b4ax4)!o<~UmslJe#pXBr+h z{L-0ZUv{TH@t4j>#IjuTOJ@)RVIE;I;#~Ti;q0#uJk2>Bg_+H#IpeL8hwnlM%Ji1g zoB?{o=}w%lNuJ!9r#p4lU-ZvUcShvBG*bWRbf;Iz+x)7B`KtU3N3!dp@{M^98Z&ig zI$zs$oyNzQG|8E9zj1yL9Xjuy57X%!ujIIq77iPv{EM)uJzEAQ#igPhS2#!ayzvjH6b#oxkUw?_V4WdyT;gqg#1ZNTT|Im9 z2$j@7ztTC>{u~o>rBlc2OIJF_^SbY1XY!!WuYWkwGAa@QRe-gj$D2@qs-x7Tk!*gj zSHwo{SnNDgv=%9vb=eZ9R$s53pIK|QT7t=6tEVhMy48?U{J5PNuPX))66<* z7dZ`8Z+(H#$q^VE#QmvI`651^e0GU*qWydP8=Du6Nd%*LKqbZ*Z!*UyQNiIB@)n+=1|RCN9?d+~AC!&?zBi_W~D&ujRk1 z@4CVH0%Uaia*Q0;i8neEEqlj$efkRLH@tqb!r2w%HF_n|H*eHuti;F`XZqaaTyE)S zZg(X8bp0L9nP6Hs+~NF;KrH`cbm$9x&OOec@&#D63>+f?OwAk`_4>%v7)@@bA zwR+Km80khGf5_Qvy{?~s$a%urn7MJS<5(#DpLNa)xLowG^Ezsqv)w~Lc?Wm5 zZE)&}7)7nmdBmyAv~57@YU>T%<5A}m>w-+#MyJ6hu=jY(*$r?1<}qhFDt`1a=LXxF zuUj@doBGd(R#9)SwPa%$LWGf(t`%4yzwocqlDI%0@&p9K8+zUo&e^7y`(*Ze5`ozE z>sDsb+o-e8Vp>UVros*vChR27;V?M4$Pta~?3_t9P9q*7P_2 zxGv&97hw(&;pE7xK(77eyB)dvpSI+2_ipCBXFoFUWpuwe&aV2(_nZwQ*UVj?lL9bj zSl_cRg$x)v;RhD&$eyN9hnss^R?N6OHqWzPfJ8#4$ zTmd=de|dx9Oo>srSrwe~>~DH82>D!&5tDKGJMJ>?`D<>}@7nGbw7)jmdHcQ#ot?&5 z;xhg3BKAY0A5FTU#C;ikNyMZt7sT9uvM(pPZjJL_^(Coau5kb7|1&_6`gG4loPXwX z&+S)aFS|ZdH_&~t$X@$a=JO$LKihu(E?qa=6()1laF=-h{BZYRAnu3}?&G9}&qu%_ z!L|2DcR;Mw!rr*V8=1XEx@BZgnL|gph@#(|Ijj-Tvv0aHvvst)$O3n7+ug0w*GzJM zsJD)Fe_?NH)5q`T4$&u$bGwnA)8pLP_GfK++c{*3H$Mv*`v{XXW4GI>`hdx9^BBa<#{FuuwPgf&K{x4D5UEYpz>Wox+BSb9QhVcM zcbxraEA!Q4cXtkKw<+%2ZyMO&n%y6RJ?uW!9n1|QKbtCJ$Xq=Y6A;3r3(hifPxlOb zx^hqVY|QiEz1;5sG17avbF5%sNMGvsJ6>Kq!yWY9qVo@&;T~NZPl7vgPdd~7!8HmS z!*4BWNnEL)nBo4qT|~Y)l9@grUcXJ0;z%l7UJ&Vc_l#(p&)C1fj>;-N5nFHJhs+K@Q^0l;Lx;G3Mqy_0p>Bf>X}IzG?(tUHLac`&P@4;9DXbqH9NXm$=O43+(WG#`G6e*TWoDr7uVv%hFve8 z+r3yn+2USiue9`0$GKHK>m@3gV!wy%CF6|y^}6CIw`Whg1p!JEt(9ODcwT0n*XuRM zxdVsSDPB1iYrM~V|w{j9)#H@PYMow!P0a+2F~_~ut+t0+Q#i~xQ`b`OQ3?*8x=Ecnh>^p=y{>K_5MdSjBu zvK!)rH7k4Y`b15*lDS6+M--FDaZA4gfY62rnQI$FjXw#m;h7LjtF7PralCRo2!^ni z`Aa0?T*-xeK@4rf<1aWx*-+YPB6Jlq5`10=A=>Z?z7$HXu=*;@JMlaZ_=y!rBE zx8F`k_k(|cbnEhZVn{dL73ogSLtB-d^8jrnrK+%#0BuXN^w%p z&(PK-+8UH4_U6!*YoCThvMmI&MBx9YXq)!jGEOSdR$S+KXv^viI}NG$+hDE}Vy<0) zJbsW8JBL4HOb&K2y4|YH%wZ+6+MbNg@QDa}DyRFChf7H?%y5IRGqVgx0CtkBCX_;8 z6t>z0n{S6J?Oc_`5adAoZ*I7T$rrn3iD43}EK95kaqCF3kZ-{gNfG3U{~1dZE&~V^ zu*A-Ai!9MJ)gHIL3rm~}9-q$=j{{2_fts(z2y!fuI1D|CNZXMw3KIukq{cYeM2%;Ey*{WO$tv zKA$bjad>QZ3+REbum@|v=713V*$N3W-LEr-2ak5E1~;ycY+s*c&Pi&)+l-STC!4ZgwICV1aO#+G}vSR!Nsl9do~hy)r2VT$Y|)}Cd%mQIZOTVBz7pW&wJgK4)5 zSsk-_BJFKa2Zh&>Nfy{9%8sCpa2TQHM{!rwLi1VbUcvJ_H-3b39Tj4n{`I7Ox?OCvTn zJ@c*6-$o0ZfLGfJwZL?jTA<}$HveHFb3dT==(vCGD{Fa&g9J(&DLkbwq?4;{;wbe* z$qa{IV}btQxAn;ys0M+p)_xjb%2BiE=2KFIor2kT&U>n|J36(}D!_d4cZsc#)hQ^D z^3Rs)Zg_mMR~%nTx=b)SBq{Q0km<+2-gLjabRVfpfktJvt4hd z$Q85z5(xy1NIk*tpg2$N37!YVIT=Za%q11+&(C&S(rZ9vBr37uxS_J#2m=ENP(e4; zVB~z37ziWKLS^tIugL&DUFOAH3171*_JN&vk$Gvq_MA03%+<)(g&pA2@o< z@NJ5`h>++>qB0K`|ngWuIpU}gu8-G?(IWey|_Y?Dr^UA_$ zW`6V!#RxXN$y!75tT=(VVzRO^~$) zT%y$gBTx!N;Mup-U&Gf7qq6iC>Hlo(<3UZG1xioh7< zt*nX$G8F{iGzKif&J(`@-*3nEjg$^#Fp@oqbT$2h2&uCto4>HHT(qW*`7;o3w)aG# zP~nA*3G|@|LPFto&9`$yNO-7G5BP;?l+A@zhm9q7(wNZ(^f9gOxXzDl1ZEfw`rXZ0 zYlDdKdZ+|A;u(55yv3vEE6Wr-t4OQhw;vcH856l7lgXv7#XggnV>40Po7%Oiev&=5a2G8+bp=459FyPpoq&=Qb23j``0XrtWt8f28B+OgR% zJ+jnG_A7WvltIM_b9$0|!6MX~Z3|7Y2=(Tgnw>?qytde3qpbM#P~LG?QIY3`j3DB9 zXeiqY9u<^rlV=2FjRqbLgvjj07rRZco}awfJp}7IAJ?jB44 zB!L$F7P>um#q6;!N!c=BDrFIRl4sz^@#0wR806)At!wm23*obe-4o6*>#6sW*}h}y zSWnU`Ehs`grQV=|q6$_Wp1G1g!Np#E@M0`mG4>z_W#!(WFs;9Q#L27I_bs2 zDIUck7V~M?2`O%9Nlid8o@NI|fHI<)uZIRDPaHto4dMI_!p*4g23s&tZ_pS-71}m8 zP~2$8#Jom!9@WnB*iYzrac@`>$29||N`c(iTM#y6dvHkEp1$-_7YDI>O$DvS0qofR zkcxx6@hzwWz%aw{dL1k=I)l97DCdJ-#E4?7@(Q>DiYEB55>YIk>N9Y@{-I;m6onc z1`TJ9-SX-)=V}*$PW3voL;^fMTH;=Ty9K{<2Nq*Wk!11C-?{x!^8D|xIk#S)e3i@8 zgBM=q4zeEAcUc!yv`%DG$9qCI0hF1G(*LcR>0(xg9Kk!f?Sz*6+Xu^4yvLw&CZ7bw%jc6wia{ z2>Xk&CSGx(wyyYXpN!VAg+ z8sXYt$SlA#7cOlMUuv5xVka0rg)&-TSss|sZ&Q}lkfT%1!O_;C?@p90@w6fuMD~T{ zds>mbyTov73y?C`{*!F&Nb%Ofcsd66TG@7(i_t%I#s>!Ca?yLG;c!3gozgeBg*EH-7yP zis?Y{X^Vt#%&8|Fqxjv7-hr8kPDdly%g~y&$-sv@`uV@nBnzB&b^gT3#x<8SZ2uF- ze|3x!o<`cbYu(9kObg2Ahrj@^NW@1HB3whX2JRr0u7N-&IB!VON&qtxeSrHQsv=qk zxJF0;NZ3ymw6qLI=lNE`LpaL>T=m>#?w)k8GOapQbr0-_ih6b6E-@S`LxoGR2j`dLz=%$$54CW6a=6Z5$cpCkf8&D)*ja%OLa)8f zt)gQ9+DdrnL;mtY7TvS_sH{CdDzHZcjdKcXI5(lyB*!I?{m`401<-*ci7aeL4mnZ? zpi=J#9%M{uK=?al<$Cq?ZuRjPYL;=Y&0A8bC*)<&hV0=e;*LOJ+(PB17#4OdUJS4@ zbe(hjf|dD7i!{U|2z>|###U|zmsK+yj2-uYp2drV93smug5_gT-HEnA-&8n zDQlr9nLo20WBkzYmLD%R83MqPF)xuUhQ<{0b}Ob<48|sq0ZXK9lbxafT;d4L&Xg2F zM8OBD4_od|<2dU>pARRh!#d(O@)zB<91%zL`qSm^X;TBhcfhy;c3=c;mnf(2_=EdH z*c|0Ix>K-m;D8&kb>*$s^!yuL2}hSrH1TIjDy_%$i#NJ^*K*MZSrLI9DaVWKiQl+z zu}4o{;npCi^{^F)9NnnTT!9d?jryh)ZUbun+X{Eo@W6vXROUDX4+fE$w}A%(ssKG0 zdfZC)5(f1>veLZ<6~JX$s~6tvZiCiz$}KMAofqBg?xF9$2?3;!=p$}+8#8~q#huKc z!@67D3o=Li(LL18Tz{*3e{tr{yWC${nHTSO%Nch3)&uT7Rwni^BNQLez1AaO^O4LI z>)k!A%&?5RD+_0H2niK292jmQ;6-`v4yO^&aSZH|X+v-NSKr+`X{d z9?|RWbw^pt^?Uc?*&}+;eQq-@E%!;`Rrk4{*;hQGue{%#o*Dm;yT$IFDJr%R42SH^ zXIsqSzN}dP>wb4kbP8O#Z~x61lU`OVxy3+zSj#Gl@+brTuNWYVpl#Uy4tX=Ww;h6k zXPwYD4_}s?1dLUNqyp;7Q;6H!!QcGV*llKB-w|doU0hnW#=R~j}G-7JOCqaH#=q~b=d=u>j0>wHRUH1+w0r;wMc%`}(V>%l9s*NL_??DH(8#lHR%$2a95VowQ+UPr2-vS46YI4Vnh-uy5#^gFuNSGP{xg zKtYUSSp~8PMvv^KRuX6LAy--i_z6*hBM~Vk0+^xXFI%kldjwIXh@w925qE`!EgpS0x~)Y+FS>|J z2El#;IMR#I_{Cr4#s62CvXz%-wmj}WWTkGp-zrmS`|MKuAI1MM`9FHLjqAb0l(m`L zpKzyJ)rPjQ-dGUT*QygwxqbU!O9;Gk0Fp#Ywwk-Z@^97qJO%oktIvE2Q#)7R|CGC5 zSR2wb<;MuN>g1MhtnKhE?k?f?(0B^JU-ix3zmD%Mw6xXj;c!r}`jwvjiB;2kr-S&# zR(H^dC3wYODS|a+=ZTV)wx4-tEeuyj(zbqI>rSs^gFL(vpRMR#95TELDEH~KcT8M7X^qi zErHS<%SD-PN31dgO*Kj(l5C^+fl%~q&$zw1%_R_-hFzW$Cb||U>-$&$!UpZ%GxDJY{KiZ zC<<}-6^;qvqV5I&-PY$k>sEKC*U?7uY&Ib}{9StXb8gSF4VWC*@Dc1jUTN!-*VsMN zOCflEPf%5Zczj16iydrsZRG}0b)VN>lP7`B+--Uft|5(TNhan_eu znByRX)iv>eI6f-s<8&j=ch$&j^SM@|GU;4lHFKA1H>$0n@!CQS}v9<^Af1nRMGxef^`>56Ue0d_>8?jewa#bO-j9->gI4WR@SS_J23 zfI`HxV3H}XWH}Nb%7UdMP6?8ME`Vg%27AJDuA44EFl;!B#JKgoJ`zQ46wW)Eya=ZI z0i{S@kZrCbPBB@AL0lpkaLUP_<1TQj*#A16i-O+K6;8?QqH%-1*@i%3Y^W=o+7V2d z;1rZ8gHsX%ScLde*WgrIkcvizX+8@)VmKHHSt=XKn?gPjHwDXcDlVDAj(jx3$@0K! zyX?V7BRU{5Nr=~7^>o~`?oMZ+_wPPHcuqOkIBV90~U>q`| zhvEHOz$ygk&5R1;kQr?^p_p2kP+mEqyn+eIgz`7e=>Z6?ipu$hAT&k_=FT^qh1$a~ z%JA$@+6Cd+pTPl#_->%_t&u??T_sOAgs&(nj7RD~!Uf@Mr~KXRna*Lf^xhCwD&L#3 zl2%z0KEX31mxUe*ohc-(d~AX@5@xKw{4(N`XO$67LEUz~K2ins`(2=E&;0sDAxWDm zL9HeBWIPpGYZs$TJc1f2+KxQOJ!cO`f|&DJOQWptUiO-#N!S;jmybDLDt2Wq) z9@$Qimxo=@TVKEe;D^FhSlDEf!?0!i3&aYd9hX=s1SJhY*)o$N6?i8(M|iGTF%AhT z?XgoD%Q@WHZO~XjR6dlIPNlQjDUto}(b#@D>D(!iDFcgqDMa{%j1;p}z({vOV^dHQ zX)KRx{>Lm}ibBIO&fA_QBWZelo4iuh7#Sa04^6BMwnwYG!s z3AHxGjtcuK(ApYzrnMPn3#~2G*6?GlezVQ(hYgKto7;O@N1ZIY<%OeY1q6%pbuyuD z=w!u#PUhgH4f?okZe3R@{V|KP-B2j=fus4% z6g?80#Z@337*Pl2v!OtF&1yd@4Yv=z$f>U^2Ty`Qk`r_J$Vc6JrH!8ZA78d^S85eo zB2X)4#r-O?1jJ1P^m^4t)-3dyeJ7M|s~7s5O`Fnf^;kn z-PHU{2XW{X{)Hl*{aS$4Dl0GDA5r$nQZP5wwXAHXR2qZ=Q-|3RvWt)vY~m7PfN{_- zvEJTx@j4)a-u$XtOIG_RC4WU0KAl#9-sDx&4p!er{?`yfkpGB_#s2EOxSTf);Q1bs zgY1v9ssC{ayW~Ft+{AY938lOI7qmb?>upoqD%fI%BL+m!oL4EW^a2~4`CAL@rEE0^ zwX0@#dO8EHP&U4FLiToPv~2g%J>vc)W-wJUmNBJcvoBm^%h3G4U#frgPuEL7Y$m=Z zC*CU-C5egK0?mwT3E@wuE_wPII1jyxv@gl81+P+G@KeyLtbb`L?tdV5MCp|9mryR? z?qd=XeM*bL6|TQT*S+qh(mN&ofDu&rW6jDT>``JDRa+jhD4ZZ)wKZ%YYmDWwfvn+% z!?_|!kWE0d>5jVYH}Ha;umY>JCuSPTJ>5HC*iH6QUa=|-FN1)~z$ywA(Kg)}(gp9h zf8n}_k0|`kc?a--9)(Td!Q3O5uYf=dal+UEUZr7qj~yUns2itn5H&dh@xt3(JMUW;{ldgazk>dC(Am4_7j_N932*vkpN6$3{AwlF@q8tC^o_y#kyq?=3Kzt8& z2oUp_3SueyX0`~hoBT2glWAqpWq-}}on(j5)`y4&`b=;AL2J( zIH>XKLNqd10q!d1H{s2lFfzM{TNYy&ii+u5Vy2Ligc6CdV-9t~T$pUq`tEn!$z$*> z5@v$QyJaTDg2-%_Y$%Q~VMUDgdv;c_AiG2ldDq=Fw4U(LR2N8l@#%F+`xxmM^bF7P z78&As{tNx^yYB3eZ{Tc2kb6Z1MP;EtR?wl9ux8HXUJuav@eD52WY>vko9jf!1Ne@uWoUFcO zAg6Ep09j3z=uIEEBMS55fME`8`tri{j5f6-U^4qDFi+MxFi%_ylM@4IVR89OknyMw z-9c$0DpeI>o7g%h2-`hin{<(NWSbTc2^fiGZ3$z-k$&9zD<1|kWf#m;C%!&oUBY(I zy*AjYvsK8{NAB?S`?s&-3Vshc6##v1#dn>$Fhb#F+Rv)ioFZ7OhGYu!IdIjf73_#W zB8eCe2FWW}X9DDh2MuO*_f67ovnC)-W?Kr~#mtS8zs@AqkN~R$IzTbjE|KQ?yE(Q> zuo{4FGG|H$=W&sAE$7(U3&Giiuy1F%K~o6(9FDxB!M1Ioe*R;3@OM+vQ8R1YfrW|! zlbtU2_9i>a+MDbw%abse$u#c&Q$3wbIrj&MbL!eF&4DB<%!~{fXQAy8%Jv zSt|Z;%=mw5tpqshwEWkWN;@@{^5~nK=U5FBL5wL)3}*naA*=SN)rrJmOhMqn?*iu3 z#=fb2St`e@z;2J0GM*l53KuK_D<~@MW$vCeceOBez1W^*PTap%N_^P1b*0sDKeuDF z;HPMoT7B+z4@G@Da=8p9tj`2H7;>Jbu&a@xAx3pEwodU$vN zfPr%Sh<1j_oB(aFWEv9M6hpzOi{~}R*%n8wc|CEr^l6b;QH}L>tCh_2!nIR}Ihz4YG* zXJTcp-;{VC#4p{$@-PToTVJ`&=>e4FyFii?8t^>BUz3&WFsDR6K#*QXo>Av z-36NK)m!ZvFMtq2wgo~%z^KqX64n7ysA-4(X;h7kEfjQ$>g%GaGW|Q=7>v!IYZMxc zEkKHBfU_*js(n%a0V1-|4vEE&bcX*=WDB#vLXeDwO?bf?Fi{&H!;#*e1n8j2k$^~2 z{qrK#&sY!%SP&IvBXujL;{TNe0hZL21;JsEs|QSiAo*qsq5?8C0pczVEeKgd5Uv11 zMHO9zpHu`EM4}T5!fj_kjO(Cqv{UmsU9VYOqK54rVqv~tnj`xrbr0x8Y4r0F)pt5s z*e6o394FXFhBMe_Rg}8Z7zbn2RjAO*Ui#w4wK9aD8x zIU0n9+70K?W4`svG1btNo%STcafJp)+mqoTNia|xSxNC%i9qqhty7B5PmPf{@jl)d zJ6oT^NDfL?f6Nmp9|-xqB2+|YQ(ZllmC+-^Eenx`E8p-sVjT#0&S z!NsLkZ;UtgV1icuIiL=jqJP&FLL4K(n|i>w2^NqB z5zMJ}n0X=Hs0?gf8L9yJDtWe%&MB3E>5Nh_Ce#RGOx!5e0m82;rj^lIYX}X$XtyH5VoC~cA_&KHX;{aZNp6P$106dCRaA>h9?lmf}Npc%Cc#V4BGUZi4 z0#oxHPD~B0Ej_nP)#RRx%6qb^Ox4cFev|hkni}Ot_G(EE_eL2PFq6~;&)Gl`y9vRJ z=XuqYm#f+VjbWdnlg%Tqh?(jNyR=Wa8a<{F21w{;rjxk9wh3vn(9Nt@mn*Y0^Ig5l zIc=KQ13$7@MmdDxQWDA|D~B+AESmf4aILX{vRVXXUWBD zq}4vc@X0BtoFMQT8CIUM>yl%<5$GSv@q2V&G%gjRQC_4=c#JpUEYQ;Uvr^-|(Ffmp zR&oLu3HD3^cq71V_3#Q+UU9xa({BPEkE6-isQ0N*$1yThkSd2tvdzx+u`4t5;&=W6 zHc0LK1)ypE3#bx!3;fM%s;nUb8sn%yI55AXlVQcv!o;Rmu$NB!7y2jN)sS2~E#-<3 zo2al!FjTn{O&Fk~z>h-cRCr~~pHShIn-~xRAC}sf+#P)MqjPsKHGA`}!W+x8{wnyg zDd1Mr(N*#cI}w8#_|_7gtW-a+uGD8$s)I*C?093n-ihCX!wiWwBt0=xCkQ2oUF;Ru zsQT+lH7NE4MfRnO_3$e75h_acP&4*jgo-M-fef2RBVHBBwo?lVWFlMg@}A1^D)}#G zy>Z%{w$CEemGb(BMTQ;V@D8#TLLBw>_XdQIr3m$g zO=UM;q2m0u_@$s;wk=i+)ik;ZZX5Uukz^~1)LAG5u3*G{&``D)eaK6~Hv6E{*@5*z ztp+jiO|4&Fb-e$52oA|L3tp2Ph?yOrm)EKT;7ehqru0BY&=^?{oG2l?Mbvx29DDuQ zc^jAPFgc5RrV2}ITT(dP#>24_QKK6N2wOP$*ojKtvo{C_k$MAwRYq4%1 zNXc#tG>f0%WU~(=v%@rRp#!75tmGwiquEr02s@clnJlw&Otg5`+vp7pdqyNkv*Ll? z$ow*nY@|1;pa>O@@*2XTJS-^k8iP_dTl4U2eIs(!gcH1kYq9;jzO)_tddSX@!p#h* zzkR*>Ip|71{0)RP+3!|w$l2JZKNP!;dw69l@MzfdGFXCMU$XH&cz?k0-atfR^nntO z?REnLw1Hm;AWaSoUg21PMhtL_cq0LVEMP}s?E2+8b*I&+ujs7?l#Pa9-4pK*i9o~9 zkMvdz6UP`ACg|0h+>#n+1YD7~H&71$WZ^L)*jQ=rij9k4!;q1!x}lHyvXPO-Jn42S z7*4pW(f0fnuR$V-y(ukTqxsd0H?VzC|ERCJ6=rk1pQ^`YY(F&-my^xi@A|2qi!KD> zp-PGiRU1RVM9NYQ7n`(!2L>moES{Vp##-^)s5a!Evbtv?`S4ag@r~OJPTdDZ=mWk zsL{vn*dpG0$589SOGwHBrUBKv1xYFWX!2~l`_({IyGNsUG}4sun7kq=m+d}bRbeg~jfNt(Ht+PzA*y98&2SF~;>qd>)FxqEl}+|$ za(vpuO}0dJ89@d{o>*otu2KVaVyJ31A#F%7BVYFkzV3m0N?pqG4g&aEeg0527zcsg zHdL)jaH){08uLuxERt=yWtbY+XXn9TtA?p-zrmh4cDT|?Vore57^yo#%?N9ir4KA7 z1R-ZIOol`da(2=PbrEw|G`@)gY_GTVg+uI#diF?_us+M2GE%)=G<5rod8q*qzQ@!6 zcU-fM{Wr%CBHEB;J67n{G3u6<%`5ZX4~`uCApd>DwDA2UH|4#D^(&UGy*aNeICAis z8}ix;%9h^7_v9GDQtU*Cbc-WBDj1NSu|W+g|I;doQM4(^W35m1EsrW5y1404H4c}r9#t=-+n>3J=GkG!`ep$U ze$M{Gjh!VxgU*FvpaooY!gn$eQl$vw|9K0yKPc~YFfWu z9}$z&@*j)rBU!zobNsf|dgdloXKz1Ww`@{_48JY5pp0->!4P9ZS2 z|9*J~1cRi{#ttZdY5I82MI`PVAEyYXC#ie0#}8A*L%-%)2J-vwrcUYV*}O3qnxFW>c2m!mXeR0@f3*d&wAxkYL|h`fFhle&id=ZY%J)w6ibON*`i)8 z%OfxUGyTaHwVU-}X53b_Td_Xy*m$zhBss6~B8*@r@t6Q+3>Lp@5HEowGybc0o4LEq zwOswhvf{c-k7?=ztNiNqLgXc6c~`E_EZS2oxB3n-Tb!_fjx?2iDY}%H={fY6m-x%q zXAYdM23q!8>-8Bk)b7?(nKd)iudVVw_Kq^yiOU2hs~!FJO{#8I$O3>OLYp{D0@|0I zIES97wi0o|iy(ZVBndpKx1TS8LPcTN@Nw+kdqL`Pl_P+P}o@mxe2wGs@gD z@=EX!H>UO#(C1m%mXeeRX?uwMYzb0Xn4$2y+!u49F-b_c?SF~-z!^|ABe74%rFeYw zWPF9#I{DUol}xkqZ=tM&=k?kinA~;*Kzc0R0B=n!@mKsD5}Rxn<~u%f8{mpr0oqMNo83D#AQLI5itx#um~9 zyNhGwTT(di0FEkt?vB!*p=)4m%b1C!+Z{UVw%REdfRZ zgRNwEr3k?O8z*0~#FxU&!;TSK*gK5G(OZ%wwfe%Dsz+MV0Wla9?;uMbE6B#HTz?Ig z1IrUgii;v{Og9g)Vu{ir7m^z;~*=tFNLRkLVVj>SbrkFQ$6(sg7VxZ7n z(i$L{eUZIyvw{Ruz^*N<178O(@WuXHP}y1hbS*ZJ?pYQy6>ca_2?Y4cT0MP#tQc~+ z01pE+M{+mxm4ILwr6}LW@3>xcq&ft-rr9HSzF7k~M?l@6>{m$!OV(59lOo72pCt({ zlcFv7i5nSnTR^t{N<5;-15iN=DbNHQ39R|~m`SKb!~nRHMNz;5U`ls2GiJ`(&kPxY znHg4;&B?`S1Oj2Qf@utAfPl@uWj-mKJ~#X#u9LG=Ra&s0Se|&%@=6kS1{^5Sh977G zhzT_t6PhXoP%umN_FOv&yq3X)&j7+#i@j10O9%jraA`~zU=Erl5xblW+#>BVR&!Dj z07@pti|qk%o{HcGWXe}KPn>Ns6?i->5BrRq6or4$*z{=g6KzK^Shk&Q5B-F$AuZqn3N@W7(`^T+I+qR}SzOdb z2dd$P!>~FG!#MS27%;$C?Y9_49HEDgz~Nm5W@S*xN<3$AlG>txs}upYsd&AejwE^l z{&@6iK8+ClBKhCo)z04JlzN=XR2m)X_gU zNDVw94p0Iec;b??KX<$0I~jkBKll{{CBbTO{`eFZ@O(}q!$>%dvAk)_;>ljb3H{?}4-{mm5@c}n;RmaM>B4RUhr@2O z{cqWAVxP;QyBHTQnqt|C{5d<7X~aHB0WTuj@nM4J){*PCHM*Q$$PcT zK@H>wUMUlBBEq>V9{qzsFNo&HcX^VFw47r^Mr8wM(z_n2dO7*r{RioJHYb8#+WuVm zZ5aJ(2ipA<3$||CmWSosd*V5S38aRFNeAsh1@++uMt+S&s3=2d@gSh77VSrV3P z2}+D?K!QUf%+UO+{4K(f^H$a3ixy>Ihr604=qykw2`lrH!W9pUiWykPI|4Z*qG=Nv z4U{!}f-Qjdl<0W-Ey~XOKcm#zei(k^4h=ThbMYyDL#j5}pW+vOL!`>a7yia1p`72c z-7OpsO}9_^V*~^m^fxA-lnjVaJ~Pk$Q1zl4>D|NC-TLXV>ieacC}z;wi#IZ2yHwOX9EkM@Oo4!`Fx`{S=r%@k*X#q$|^|i@0e*IG?iZW zpXL+#t6Eub6)L z-^9%cKUVL@w((}=2L01x)L!<=4VnKrM*Y~bUeT35g)q=s8B>pz{MX6kh(sgJGIy8KjFS}*IDPF7=a`T42vx!k5_ zoTB>S^7B*F7<_fjDf}vfubQo{zPR>O`Qo8d)yepxVU8MBia}DQdRF3pqB?P!8iX1z znWOsPvTBYRjn`i8>b2c|DX;zTmul~zHuUYz)6|g4+oE(bmY`H2zm=5^?XBzfyjsF`Qu>$z+L^sUQ0l-~(sWuhgolwSs`~w-f(91Reqb^@FFY z8hhn>{ru_bgx*kuz&xP%KrBY{Sm|8oc>1U_)P8L1_A}J?tbc3wOy%=--!s*@eIC3^ z;%Gx};oWyhRC1K2^KEzOf1Rm*%vY2Dv??<{{vi_#W|3=+!y{$j|jqINXp@^e(3#d_DBt9n@P>F3T>hgtvB zjpwQ1_OrL>BhOP~g8tU%Rp+T)quXv-r+ZzX2I+3|RB8UBYQ66~HNJ2s-okmRZ`CFN z87y6b3~pfo*}8eEc1)=L`m64Mj!{n{k>>__Ae+QH7I+D@WfoC0)n&g`Oul>6Z`Dlo z`8{hXNFA(muKBI{x&7EW-T!0##!@sn5PZ zEy5e!T1hwh&{oygT9El=t12RwI&;1{dGKvl0(!&ztpsAd^u!N}F1-r&+YnRqnXXu% zj#3|@2%G-cm9rM8b5O@u3!vxz;cD$&sCw96UZuxhs0KJ!PwZ2SguW&E$O{qwQbT-3 zc3kmf){t{R73K+NZQ^^VX@Muho*e!WJjbR)w*vn)h9G!Ky?wlKW`y5_{)yQsV?7PA zkHM}AuyUAnTuDy6hdF>*|fSEm_l$O!_Za$rKv; zFrvMSRWki7KOZt>QgY}N9E33UIMr*$if^hJo3o>F6p495jbUoqX#3O{3g4vq zWj1{qZQ?_WC1*Awvk642(8yZ+B#|705+m1U11Dr&nrym?fEPKNkps`KsDa=&6#@L6 z))Rry&efyexLEyZ57vp94WlU0-jL|z@zL4vcKD#=|BCY2pdVS~IM5}loF1OZJcPB!Wr7Gj%5Lkm_4f!Sk|V@rF- zy=j=h)czi#^djE=qpT8~sxy5Kwmn3WvqT#Z-EChl;_U@hG&O!&S*2%rGpWAM^7d;< z&f*h(JKmeIH&kep&S*i@7W%v==X+1y?g{Wr@b;e5;_cINWOABs0naJ{w*X8@q`Se& zY?FO3F3nB$EX>Qhn}7F@8*lsFng)UZLz7qzpm#7@Od-^r&nylkk($bpn$frDv;Pdv zHCx}lNG))uVnF*7>-5x1)zE`*Ta>~bhs;ON`Oz0EO5@}(4ypYM_!d|>6=OUSouA#3 z{GQw#ft#a<`N^qz-KDBW3^l%L;pW9l)nd0fXtY_Mb(tEfPrMXsHOK0Umf}!n??fzc zp45{3sn?7;Pe3&%OEt{^_fOD?WA`kp@s9PZgc&x8D`5%MDsjjC);E()YR|B_QU1)+&Z%7ncYz8C z1RQi^?_QGlD*~+Eo}Bc7;8NoGA_9bpQG?#FSk+e(x~ZJM4io125E447)gYIEGD5sj zs~^amRe~Rh1d_X6EnXAvC~QC|Ml|93V^9s&k7t9qNc5fU4Pc-2<5~?FPPR&Mx|Y|8 zD^mCg>XSHlffAM+Fv1Ns!Z97)dx>fqhBwFKfTg~v@z`OD9qHf?>TdAfbr(#)t zMY0)B{l;Xo{}@yzmI*r|R|0b)SK9XGV;A0i$=@>{g7L1!xY!keHvbjHA;*>+uq9=B z#n*KD&#Jm?HbGXvs;Xv}!eBNu>OVL}h zQGC5!irP-NN}YxyX8`-L{AU7i6=d*#QOI{9nr zI&3N(-c%eTFqJ-E(ItC(c6s?_e)LXPFj%5h{*Ar^Qpe&+rZER7)p2m zi%-}!QV;S3w@Ni9r{a73JjSd`;oge~yA7Fm(NZu^H^E}lRPcOqT{>cYE9CiMCthBvPDrp> z?EA)d0KuVX{qSp4uTEMY^Np>G+$v~YZ@nf@aJ_wvn%R3cfFA+|WMZHa2qAsw@0B+N z8ObR-k0xl2HlU%jBWRjQe#r^Gm1G<=#`a^ZO&x>(>+$<&imaJX1}pT**Qn_w)RfvH z`hS+Hee?m>s?iD1KU4^4+N3~yrzc&b`amQ?Op02?x_`=gE!342fff41Yt-JZsSPja zwb!UB>nD2SQq>>PKl+GeYEs>JL6HgcCr>~(>^VdcUQ^Bbu4U@<^mrgkzZ6~o8^O-GLfMf*qgL$$s<4@)CAECgB9Uu1&fx@0V1TXcgqO;N@<(%rDPFiCl*fZDc zp9PB3dta}bx}i&$ai|@b9}D{I!t3GjXx8^%uZH0A&+Ap+-9Uv!xxqGP2YU!Xe~5Q9 z1{+5m_MGH_Ub9eKJ&}ppSn_D?-=Ibugx_GBYzAsGS2~DSvgFe|qb$kaSj~jA0ZD`d zMk%TP5TXhOdkA8zy3w?lJJ%xVH0yOYV4YFEq^=tAW`$pR{1Sl3ep$*dn}NT@rUIF6 zQ~}!bqb5cKp~q-{22PIetVWz|>w!a|BmGhsbpn2IQ++zuGuDsjG8tWQ-spOFI=bHW z;pwVSP@^+?=4qV?$jA& ziW0h6m;V8~W13~mmKyelkuBY@+yupVMx-wFWDT!wp zC;$etOk0SooJuNTXAmK1p))he9I65Vz<`^kN4}k&6Hp;vrbAp_<}e|pc`>3cd!5zp zK70H&M#J*w7?WV zAqN_nBybq-RUPL6@j#&fZ3?8shJ{cemnZ^4>_aKpW|m0F`!IL>3=}wFkO#5^Fr+o$ zsp3N+;W7X;99^^CbfaoaKp`u5UArsPfHdflvJk)nEi%>-Q_27LsY8eWhHiNW_|VKS zW(Z1~H#kQ$7$5ppWGr`_57gZ5nHcrrvknvwsB&ECg?JVD0R;zwA_2M!Lad@;?5=ME(DbD@tLbnr{q1J8e|K*9*b^yS zEuX*q9`HU*yhYW*uXo5T>UUPp>+W026=gq?t%nZ#}C-YD9A{C4#P>fd;WI^QZ?P#WVIRdi|D`o4SA0QP*_ zJ+KYu9$QkBP8e?$RuYETRoMARH&C%`$irz_E8vuhrmSSd1|tanqS;@--V(%D`PU*U z6|cxzJlAwdHL^^{fDLg~QO_tQL*j!G5vU?&HD*g%!r*ut#WOCWySOd`_C|o=+~my) ziy@e!Y>ZI?(u}-TAG{@PLg9%Z>?PZrO?G0@m`Jie4Y?;wWfL@pgQ=0R4yyxH>1j)n z9VD$%8r~>EkO9sEi6Rmi*h00!#s4H)JS$C=$V#_g&v=&zaXRXi+&ZQHY{C#b4{=M9 z!Ri$@JtV>OEc`{VOAM>-H9M(w-us#uvnMureA)?>e*X1T1DuA zkg#d4s+!}pusvH(x=+>iD50;b1O_@bfT2qC-1Z~7+ugvixE^x1+AU3D01$xpRdPIm zLxiy_ zlMFJ_b%0}|rT z)kSMS$i;f*8a2@E9x(at`s)W&uc2*1n{bGeHZh=pG!sIZ^)MejlwpfD)*K#MgGH{0 zer}B#F((jW`N<-CvWfMPHPbk`7;F)UC3WRF zg{00eC9JRHn@ByqGg9Z;eGvP=w1tQjBWRLfPo#dQ9reo!EATRkqmUB)l8KOY8+5}C zNQ#u;Bx2HHg0$%1Wm+c*z2-iZMB0W3Xxl5%+wOzkR#*s}P-Gzv@DP+A@vuxFETnro z76M<-alWvS3bGJT7l{~wF>|o7j6_@lBCa$n1YwM5hAhPKD#1cZ3=83hhGiv?MA63a zK1>#iR)vLNCjz^T=+uN)nS{0n#{+G+5)UWK%O+D{rpBzOAoG;7)53eOP)er2?5NOw zMpfzU_p3y@g4`}`wZx8$^_U{_-VqKEFX8Tz@|SBvbf!t_iy4V+xro>c@rBO?>% z7X}}&o9;4wU^n986?lQ^S=idom*LRTb01Jc55Y`DsV?IR?~25)!nc*3F)YJy!ivkv zO3Ot9N+c8P5WNx!LMqUZL|dv1*jI&NU)#Su`)YnrH4G(+5Y82F`w7D&qb&hMIxsJN z&4cRHnhqQaqR~4a$W{N4>eFr6Vu{5!9P+ls`rwCD3VbSa`a^2G4GnAcI<=3z?H2v- zb!rs(*X>h^E4BZynt^8*K8$#<<)7vS_+##iKpkPIaV1FwaAH|2f}VjHW-A8bE?9Qa z(+sjG+@5j8T^-+B^kiOHu!&&PzvSDrsSr`Atnh{Tc`pWA8dkrV*GRa3Cv|KcC&+L=(N5Z~U1Ucw^(viT1qUeND{qqyNex^#iuRY9#TqDq`BO~w7&%`4SO zh|VJT91*x$3f9UDV1HPkk9ZaFACKsHud2)KH4Aj@YidZzCVb)d*4tLu1N8~7scxi@ zvtLsO6+HOzHB}ZoXwVb?sdlk9&DW>>Q_Zwrov$B}`|Iz1UEM`!+`U~*t1_DiW_wYh z$E%D#T>i1{_J*o0S@khPVD&j4s7ig>SE`$y^@fUnn*?OPc|#qI>f7EBV3)orz~1Fe z0rrV+V(vF)Zh2F!wAA(;>my*QF1D@w=q{i!1=iDL*a86;{>ffQojVy=6<9W0zQe4 z5j(_J9{NOmf5eBafK$v`#^um&OEc0eG{tMgw;;;IMlK36=O?PIx$KnTC zJ)iw6r9~T2atlIL8KTgFU4dsh@pnP4=M0FSpr3Q&$5`iNCaL({mVN67`onnqMLw&G zpQ4+~eW0()e|zPk+Y1zt=ndN1mJ=?;F3*xRvyhyWEzllB|;V;Jdzo9`X|V z^6%@P>mmPuvq<08KhaC>At9$vd&|AV%TL1gnlC@`y5QxfUVY@XB%c1vn z|M9!}PW|LrcKhF7GPGc;NA5_%-sOR81V_xfxqg`(OG$p&~`sIk1 z#wC7t0{-2J^AhI!R0W#S-?oQdJca6DRnNdN-mTi`m#0Wa>zx6)4OOKoD1T`d=ir%! zH6)!QbGVln7%x>3F9e{1{Gg`6cRfaSez-Dg0j$@7{KTrmGTq#`F)X)Z^TTpk?inmZ zw^#R}fw7e0^uw_HRKF`M|6E{}WId)!%=be1X*b zQH$<8@G>hOB5%Re|EVGJMR{sf-*u?$l=8K4(CP9_=K`1mx=9gLgY=w?y>z;KKXRHr zOpZ}bdxy#6j>#!{hI}V-I(UZM?j$-YjQfua+d^lV@HPWlD_5`UD@Vv>$FQjzBe!Aa zjg%Ktn|?A9ZMvww`6#)wWdFy1>-(N5*V^-|2#QJ4eAekK0505il^VV5gPTcge4P!) zmL&8Rn~rG)Zem9To<9qwsEl8~LTPY^jrdp2mH$~#V#fdXA@<~0d6Bf54Z1)cC|-vZ zdTqWA%k>(s!`^y{qF^`$G*$dV%RdS#TQ&CU*7OKZ4>l|E&|RGmbh54YM?b^^NiqIxz#9!}%i!5Vp3^XERyz8w7Ihb%M^ z=275(H4*sVF=-N1`MdhwljM2{@UzMCpNM?mRJoGL~5G(~=cU$!MJtCu)zf z`Ll4*-BI?+Ecy2Oi>5*g>__cPUuW;l4oog?R=;7IJfe^#FPFbT7Uy3fcL%uk3K;S4 z*u}HuPSXGCubM5tBngG)wSt{Qt=3QhKfOvmY-$4g_tmn}bN`zbAKH9<_;o&xn2tYA zXOjzk_yg8ujy%ICG$sfGQQm>HmWy*HN9(uFAuD*4y>N~EAiCeoYvuM0-N#`X^IJ3W zMk>N7bI}(Uv-NW^+T70mH&+fK6oH}OTgQT-C!M4-> zrxOU8W31ry??rOkR^xfBK{i)1=w`ELZjjqth~*xX%Z0T#+6%B25xnuybIgIFy9}J> zoC|+7f-)W(DxmpL*radH3&^#&N5QaAL70tMEVq)vEWKFnIs|V`;AJ9Oz-U2>F|FW> z(VGu7uGS>THsE6l5-Tg*Ahm@cafs3oC-TSQNOSi3V!6{WLd1(6DmXP<<71Gc9>pgp z=8;W^ncE>_k@@$8t>y}Q)eT(O6x*1vGp4ZH9fz=6;ZyYHdngUU#*MxtMzj@|FrG-S z#HZe|b{i^~D?wK(OwGc*-3o0nz=+ql@SLGNE(B^_?U2+~YlpR^wzM|qDxigUBo=IT zwWAdrTFv9C-jX+y)(%TJExCr_vC`F&uf3WrX`s}ACyF(j3fK;>2C>OEVsM^qNX>3Ytp$JK$PgMd z4*#hnGxHVXvXRVjXFJMCT!7}+mn)3!$$Xlgd?7#~6_%HvDsVn7O_OJfO-dic3 z+-||I@U=@YYcHeqY`TCImpN%|oXc6CRr1O9O~0~9tK?4Y$>nk2mB#{}xE9~A#5#Oi zt+jJ){oSkNDoOgXe)mmsM~rlj*8g+0Tr1fRzrZeCD@QQ7yk)KYqx3SnX`So=cyS%Z zj+aG?S~5wwb|SewpoMavuQudLHVxUVarQKdqPh_kF1VC#Z|HPS8jV zFXI$xoolgitM@@1+Q+F?V#!X^=}sUQ5?JhJc{Uh*aI@SEK)MBE(93MtEpiROBe!7S z#dQU@$b$j2TQQq@iM@9#2EUitqT4vZ1GmX%NH5p_benv33u$}($Zhg{IF4Wc!*+Q* zEmVwqTb_*Q*WZ>87TY)d$m;gXZV(^bFW*{tbAevKR!uFfs9*h&+{*6RzCvnKf_=#g zX|DpX41aC#*8%$%6^I)SDDn70p4OSY^NHN8UOFIG7f8+6TiumbtnPrU`uQv18g4n^ z2ZZau)_OD8U3|(K`wc^|bjj9#D);9*Mi?NAu=+2vk3W^C<;Gn2 znLN4;)_m<+3%;d*(>E~2{2WU$+xeM%8s1|p{9M-93l&Q5)nnwr?CZ8lF3bZF)HKnWZ5rQ9h)Z}~eE9C_7= zZO_wHzoyd;C?w6F3SHAs+FsaAoDR$x^fip$u&78zEig1jZB@3%mk*-j7Y^7A-a(i1 zg)|2mhl2NtAYE$Q!*+)V^66g(+d2_O+H(G^^p&;wlKvdiw_=A=dtAazN7G#nZ4RAk zb!f}z_zo}iX|h%?5|?4k4aNiMb08XsaEYW{hr=Dqv4QQt6Y4~}wbx17N(?SIu#CeQ zDg|$92$oTBEv!1>Yikf+qF;ymAPAXDTSqhkh5GaKea-)WdE{n+Z^c-umHC}|HA6Xh zy-KOT*?KjnV76Z66wI$zUY_N7)oEaz`F-9M$H5!tYoCy)S=wv!By9&O)E?i6HRF1U zxE|30C?euf*d@S;(!)9l$0Qw)v{}(IwC@d~h4A3w$TZRplBollv^IKJL3mlxil#_q zWQUd&1?oySs!KW)i!;O4W>0!rcVgVM1(MnewfX%rwff^SLH{5*DpW(A=z)X)AhZ$3 z%@E=>&Zg4NQ6sU~Q)?s^J3xqCmCF|UOqqsQ1-oF`06dm#0G1Vj)w#qt?A8!T{!v2! zCd}+a)>s;j9omfzJZ$J?Xo!rC{{Nh$&&P%rHA;c@JhoTnXvJ!!(uXJ*r=a5z^@Jj@ zfk?Ty1a^C+SEKxi%4Vg?67(Q~OqRc3&9lnq-$v<9UFdpATMXsx0qa{;gOGC*mR+js zRk&<#2x5`E2;~JpPr(03>J5X2JLh)5s-46Sr#vgc*8Lq=&r^A)=dinGKPP;sf z2OKcgpTX&CQmyB41lb1c7wNk^2s^Yr^aQvId+ObhZklrAvC#E5TzjLvWrsC?+a4{2 zImdWHNQL@)B9DD$9`EB&EfO<=#YqOD>jPr(60!IYSMG2YVno1gg64>@BzHu(Uf6hJ zMEH4`IY1aA!hc23SP=ZD2x36^`?3t7Dm~?BXJgc%JX-UCWRGBKaQUkU8eEo@mwLXm7oXrVUXs0O^{hbwMTT|8ofIt(o1} zC()-uzbbJqA==wqhZnH38Mf(_KyhFIGX85WWQm4g)kZK#>884NzhL835<@ zX;8+;w}_b&muX}G5o-qkHv*~w@a>pFgm65FK&b)v^*s(8mE@5{254pg90n##RDwW( z0kD5XA=p4t(*pd9ArJiz`9F?Rl6rl2vk#KaQWu>^NigaSy%7^EDi+hfDwvtk9OM+) z3tHe1=>jn9&+8GQ5`&$M`m#-5K-AAkqJs`maa&(hI@Q^2kC%6=HEQJF?$ktzNs{~*!prcPqc(D_<>}g3y zF8KE^{NHCGTy$t7*BWlbaLk9hXz0>&TrYqbEnGP7JWtb*wCZL(HzQn7lP8^gYtsGr^KtD2up`bRN>_HE{U|~ zRyv;W3WQgL2HquUuRvl0q-Gq_iXmuFE3?|S8D~%n=xT*p@O=e#eVWW0vqpbXLW6J} zBlUwJBxz$zEmwThdG|WlXWwE1@br(Y`FC>n%v^~U1jy;Fvey;rsMB0&v;GnCe8cUD>HmpQqK3u}jNW3I%pHKISVcrp;$wq`*pTe%V z#}T~wCLbVw-!8hQzQD>nYE?1(mDS6B$UXk!#1tuEMeN2O4S4dfm|1f-^mqFI(Tc~6PT7~;d zONpbby&#R~fT_p}($EgLq>N7FmuQc`5|lut$Rf}@g&cHQ+a(zbFGb+73o?aXKoxEV z4%Y~i+E2pBI+0>CoU}y4K{rjI_AJp}#a0qdJ8FLgq{Ec20oouNPBo`y0BB!^ zFkH$o-WVoxhjt(J2Y!7q&>h-VDnkz_Dk=(XraBWJ2RT<1T+D+RhvD86qJl&u%;gE7 zdQ6%Jpe0M{bdUX$6)PT3z9C)m2# z&C6BFn*|FTG_^%@5W>9xr6hD(_)uZKZkGlO20j#zYETfZ!-aBG%r_-%x40a~h@}$l zk+j!yV@bo_lC&4u)+2KJ%aCpE_9-82j7D4$0 z2~~h@?v=AjBSUF2q&2dsHL{^KWJ$^OtV4+^xzh3=35fSw8u&`J`=#kvGHB3ahglRA zFUL~W8i|URftDE>^cNJOBn~P`+R$HzslN`hBo3n_D85yJ3!)ne3|aq8(%#HUm10TO zZ%f*q+*lIoUP*h4_52yKrdE1K(*BmkS!p*Y-<7ntb7P6}JxSZ!5KBtF0qe;t?Pv|M zN&CpQ;2G~;>+hqt=pRT*HyPZucLWg%^sac`D`m9zL;zzfx)$zM*ifK>7P7?Xw~t#9 zhqevghh5uDV;N3(lhxyW1%UbrR)nCDM(@}{Ll{ipK0f!8?kb>FXf-ZtEbrHDo z)P2xL5Mk{j2tHtT8FUlQj(P{8sog5kJD{1={M>|5ma|a|>K{O%{=v14;;%$J3@gPy z2vEv(NHu#^M%SPm=sxH@&@c2Jj9zq^A_fVErqM-j-0-^44F*WKG@QP2PaTcydkGYZ zcMb=wJjrPOY;UvnG3r@4Qr?OC2kQz+EbSUp1~O?-6o}(3Htwk0He)md46e~9Q3p~2 z2lN|{kq4=<4JG73LkaO%sm-QhK~Of5HiVA8iZxlnucZ6dE5QqT1!1b$URtSrz{>{X zg)^Z<2oij_(xXwVU3 zAS3Nj%~4C3tP;(T&Xr)s#d0OMbFqZb#MvRvGQt`C6~!pY6^=1#>|OhiQjt*&S`@s5 zB%+}($kFu%r122`pm@}TC0rsnXvTSlb$JNueo&dN zyyf&A5~g*~S+fu}dLW~0%v9~x(){sEwKrT)KC?oFXd+Lm5q_GRW15A9DO$dQhGuAE z&nO@w%|$De$Vp58T?~b8DN4tuXDDJL6Sk9-({pm8)efIEH@bffnd-;|^E+J`Os;3! znvsoV-j*_lVTHJi5_IGx;EQM7aBYe9G*+uq z5A*EWd^=g>h4zfL2w%&vX^Z(Ga+`*)G8uetv>QcOW;gj7&J7Cgnr)=4u$zTjW!G-v zOx9o(kh0z{3Wsl^;HnMSInHAzuVyiX{~`6e?O2Ifm$73h<{V5)*4h_th8_77YZm8V zWT3Wki8&~g9P<+lHE_Pr8mi`^R)UklU*Io>mqv#&XnlXODjTDj0=N`r~i&Mp-QX?6``%s?JJFP zV4b8?$AUI23T45#47h?AEl{dG2~W0w`^TT~)fAF+DV0bo=qGI`zU1W;8*9eL~Gjwv#|b#m=LO$-H9c z{ghF^d+(^yXD6sE;A8t%RyXvEMjJf ziFtbt<_*VUE;JGE$U$6iEaE&9@y;B?>yJge4v2V34=V;am~)TC{M8iW#vH`|k>Eu; z7y|mmM7%2p@#kX^e>4#@cjsXKa4hDxCg!Fb#Qz?P__c|6PY&XLjzv6VBHjzcOtu;S zWx*6ZpZb8I=jah!%lYU&TpfFi%Hz{f7L^}MDqq4?9;h@Y6#ck_Ydh_gV1TOZMHd2? zb_M$HptV5knj32FFb$`J>-c7Nr=nEi1DTjpwMVB#SAkWcv+O@6rc`g8D zK9&izZT5xpwe9x#Sb367c~HTHOo(|yPSoYCnUl5d1IzdTz4A$u&0_6A`*d#bu?aZPz4LYo&LuszmQv%WPK;^?L4wOx=%Zje9cFz$ zCZ|zU7{1ht4r8r(Ki2JqOpLJ?MwG7f7PxE3tub&{(Uzad&%i~!t!(+S-9zH`WRzgV zF%+<=7K+&oyqD!-;yz>zR@H)fW40Via&dtQvuZ(IoJC!D3@Qw(1@*Bk>O3oIhF1l) z)q?wY7WXkyz->T`x z*60A(jyizdvY}&TudARWQB5y?&X^ zEmK-&UPGKi!&k&!wQH~8yc}T`Y3~`{^?RmwO-mZD1ChMzS2&X*Aan2fee$lOhIjow zyz6RNd!Lxq=m0R6+RM1(O8YCq`|MHLCG96`AD}#ZPT77)IYLgO5-qm z@Hf%d9oid+rU}H!w9tb0ZWZikQzGZ5(=0&;$iWh&FgnrU{Zm8EAk3 z?0@A-n+n=7#?CM87z5B&aT)7gp`4VVN_8YQ4myiPpgnCfJMei)zKPq`0BsD=+5oK# z(9!_7B9pdz%ME~SW(pw}0@!6H!1t{AE;H>!^YO@m^9}ZD_F9E9yf-brksZQ$G3Y2{ z+XoTYC$!Vf7LL&wOIZ&3XkIa^ZmE1ByR^%-Dy)j(b#dltrL@J0QFp@_(-<*|rW&&- zJO<3by@;atf<*xtb1Wblb`}TvXu+yd>r?Bxs>XFSk#sY93FoG{w91LD+MxYWI^B-V zEv*RUbd_pnLCI(U#i|nAgBqRfYNd?oN{@8uD8^NXb~W8PfE{saj8^1eqX>v)ohp@K z86c3Sj#;?)Ps27FtpiSj_PCHJY296#Q509nM6J)|E(iGGoXjk(n{#V{HimkHL%Wi9 zq0`ltl!r#5t93ahqC3q(0+kGNC^9>6X}aS`8_L@aMX4HPY=-d>zJz>e3@jLuP%S#x z1mBR>#zD_Uw^v-o=WiUmX6R`Xske5ce6e@}fU=^V=xP+DnJGqzG0|$MqDCVFdOO;- zh@MI{*F?=h7kIc(PS@3%YdAJAOX;(oF70ak=fZTvwOt#(FoWsH1WdCc3~#aG90QNkahtV_$V$4X7)8URhuX79a{RfbK~OPB4^*RS0%*j>#7+z6XtVy*a(U`drj)Zq9no~q6u1T(3LsN+Js4Fe zqG=g~fay129X?cvjyDm)>@&-Sb!SpqEKpyC ziLn|+dC`8A+Ew_ECd!$sr~%FP3mem9v>))O{m7pM1td#zWYTZ6A9r#c)P6Ku1|Dh& z#U_c=YFF|0qg@ST$(sXf)fA+bRPnFbh-hwfa+lthBnOVgt`f8o=Z)%A*628@VNgMr zU3_&I>jTZ%KRPMhVN1{tXnDC0?NP!pEy3nDimKBBfND&|dt+UmHxiIce~%{S*itOj zYEYy;Hh$v*)EVW%bRAVd`{GCmRoQ6YBI-#rWgx@A$1psUYPHR|WkC7lp=xtQWxusn zE;((kq(M~q#{i6NS{TVH+WxPi?SG|8*4}A+V7;Ra3}xd3>t17E-D_F4YGPo0mj+gR z&x4k&-o?NQv-7SoumX_XYZzGHv2)vpvjo`Rp>dIh%!^T1x{B2pGmGFMXgev*95X9q zZND8xghq1=zUG9dfFD=mYM9h3?bQX}iW zGz_manW2T$3*a9XmoZMGP^k124=wQ=dxk4i%4_11IGIhH{PVS z)a7W8njm#z=gakvRw~Wy@SSj?uZE8HeF$evrel5F3&0E+&HWaV0NzGYX%vSBc@nBZ z=NTkfdx`JE?!>v7Xs(N6hG;m28)A&A9JHjvD!po4)3oX6wo#kg^bBO z@B;F-BVXfqos&&>DP4>C=^Tf4ExXgDROTM;$8rA=*>ulma;I}4dU{`uzYc)D9xWtk zYa|=P!J)}@)Tw`nb$1$mvHb1A;wC?ng=e6_ctnf!k3@QLjq78!vWrqh-(Y_dGO(fg zpK!1GNo*a#13f^C)TQKVqvU_5PeOev;Z%?Q86A1~T!J_9g%q8me<{Js`$~%X^?wlW zO|bRJN2kAFbbf={MSD@?! z%C}OqkNzFSeAlc-|6YpLN%{{00f!9qAEjuyeuQH1Nj3c^y1+^QSs-B3UjIdc$9+_a z;sDP7MEpv`|4O?DncpOM%KBWIGmzjgDb}yU4J9`HdJ%<#J^DO+YOz?KZ--^j7l;Hp z)Vk0f4e5(0W({&*OqWFKHwXl};|&Yds2kF5v`2T^^ra$gC(@SLqZzlpTtwj#z!mnW zro$063ZvENtL)KtZTe00e*J0@-LghsV;@wgueA^Ah!<6(Ep%odr0MH%ZGwKYJzAyT zf)@q#Tj^Co{Wg3L&Zgf^?;GlO*l}b`ztfJJg!K*h+?=Fuv}dAQB>gUX6uT*RgFwy)_CZzpHZ!c~+i4Hs z0ekc}{0j63iO=qW8okaQ?W#XSA*@0~yVmFrXDIMAlCZ#05Z#6cENDQFAh5^i;ZZz1 zP7g2Qp`IT0;$a6ptbxKjVaM#@N&1JTCom<(Ik>;jIXIx8Me#4%6vgK&QDPAU3C>#z z&|@+?i50wfqnprZVZ%Y%=MYd@@QHAau10^s4(stEzAB`@M02y3sYAbl7Z>$i zXhi*0JN1pf+R-;&v!ie9wxe&nZb#pE!;Zf3CW&JYHR4;`5RmaiwF~*N3VklLlArv; zkkbR6kG`HqTuQM?`e!`O_-Qsiav4J~Ka_`$#$#}A7^bO<(*&j&jm^!nNAtMR!bw{) zVX{1E8_p5$bkJR3^yxi~?dYlK?dCvobQ2W}g?a5FogKvPCHrqrrCZ4y!lZM4Y;t#{ zuQZ3<)?Mk4xdum!35STTr58)V#a>N=B{^FToHC?TdI7ZrC-J)AqBEREqy@BSF}Gd? zc$-zrIJfi4hJl2d4ix4L#v7XmT1f{uOu|(1JYWdvz96k6(*f@g{7#N!FB@_+HYy76 z@^nLvZX-wku{p|3b)F0Ae2U1B4Phy zahVi-)21)SR|EAGQWQ2sf*n{zcKIeLI#6Ft7f$MHBr*wW(bD=l+>oL(X^EZ+u5SeXe7k;^6g>*VA)!}qlA>4Y z_kh^0-z!C5EYLSg=-2ud2_A=jA7X6!Rtff?K)+u?PueC$*B9v9rRaB({s4?RjD!@u zO0Scmlk|tc)viBG!^oa|op^~(Xo#9s8?1z3z8J>&Xczu*d5m;)3-Y|gEqr8d8 z10Llb>3+7*i#Kw&@fnmGJO5l;X*U^1YqzmyyqwK%UZoW%TKRbBPd=p@q4hrH9DqXv z?q}70rL(lHew<%vCQ0|QbU@LNxG12U4)A7x6P5*)?m&$MmD2#O2`V9^Jr-2X1wd)q zGFM1>7SDeVDVa`Rt>JIT72zZ>y#se}4SxXwr=)w>-e1G64J#)%|JD+BXbpRn;;vtt z#ruWF^=8!(rEI`vkzl+~ahC`huR`1+f<|sPi6C-YvX(84C@25FGU(0R{ZWiJ1ZSfd zuZW;gjAupAC`P>qq8JaZWzU?fbY&a*E0;I_){^k=wQSW;r6)UcfHJtzgugbGFmzxO z6wf!6aLUQb-~qR+GevAvVYLVvRk%?EjVjC&K~&)vUWF-*7BX>)GPu*{qFM&+$07*Y zch|CC2cee#IYnvRD1(8gDjS+_vE+8wIzuiktCgdTQVfeKGma-qX;2ecj&3U9_CbGC znR-;Fo78BrE*{)Oc3YcDIMP(Y&>>3ed;12XUg&9HuQ9*Q|WHZ z|1?ZDojdC%pRV+f9ET+NnNoJ^FlBuSA8Ly*2(t%=D^)BxTnQR+atB>qeel)x?2+Nh ze0(kN$>B;DcF`G1iws`Gz-m0df3q0QK(SWjvKv=1<8FsOwzhQoo?KyiYlBXd@T)NR zb2B`X!%mm*E_AIGFbQeCps16sNNXgA7Tt1V>XSdC0yq-bPc-^4DT$O}4FmB>@RI&7xD<8>} z4_!?o*_4xV zQ?d!2no8(yCRp+nML8zl9*r~UXp3r%r`V#E?9OkCUF~tF8L!1rxFXXa=vGZ(cQF$zQtNF*(G7#7 zhK1W*jzOKVUC>f<45G7PI4d*~0cuF3>zGImQOj{BHf{;VLZtax6iSFGr$C~an=M+= zR3SPymC(9Dlx6&>4Yf2DeJ{%Jce=`~(aL)yB z&1}^2$X0V;*dZ%NAI2%73%(1DHCBG}F-Bc>;7p}wH43tg4m@H;f)S1G$)S93k2GzS z(Ln(u(|$r>6eA%WZ!08YN4FePt@J`RaJ16?0*$uIU38T>*F4%vqFJS2RzS>54wQwC z;nrYHgC6ea7p0(f!aILl3U(lNWmlc64D9p?eK%X!My=C2y4cH;6pW0#+= z3?J~Mh%><*B|<&enO2>A=&HhWYr>`x%YW!J3KR7hOd`I>+JX}#Sx0b zH@)v=-KHzPPM_Y7U`wF10!r)Xos!-rde1h*wFRiZe7e$4vTweRy)jdX+CROYmDS=* z6JVE_%6;}1wj1#~>x_87Give9<)L4UeTygrwX9ZoN|FxM55F7@EbXqp?h55@J8tDY z=_=)tiofFf7f?y`2I}j-*`_;RW9zO`zE(fJp%6|0*28S_b$_Y9>1yR4#XZiOnVK=P zUwp=uu_^rqPfg64oSITQv){BCQ)^NQJR}gD5t}rj_DZ&DyV9xtvH57{<0q>BZ~+d; z9X~#0;$qzvDgBP0rhdjE1qYbCv0xw(Po-j^aKf7iMdBW}&mD8SJ>Enz74wGz9=AW{ z_owS!OO(Hso&fujwF+LUIet04#gt0chAEK~ph2}O*j%Pml-e48Y!y?w96yhGHa&RHl|3e^&L&w<;6t?h_RbJ6xci z#Kvw{Iv#&kR4YH5@UYUleKb)!;qugJQ)f*{Oqe7Zh(osVJ*CI-*Vgrba(W@lJgh9~ zcY;-@AM}XgZ+-%$KkJCnvHrp5lrE0rC#wJYW!U@U$7hwhlnre42IchQ7lHRx<=SQy z=T4ZMnpqp0JWU%sA$i`kWUMyD>fTh^vFF}Zrkp?lM!u&EWj*#Nqgo7~l7!OF)P_u% zHTj%WEgSU_mO!PCl##rNqW@R@XzH|?{bDmF)Q(3#VwdkxmYqP!dhAnNJ&(WhG3_lF z+Edoccb!IpohtUHlnefEy>SH)Tl_Wqm77`A<%vZ@8y3k*iJ zsXkMtCQ~*xV81e~0NsKOdP`Z=a`1%9(8R-QQUiWyJBTsQo+TlN0F$G!PF+%}yntCcJ7VTC=l%Q2u@* z8KQ5WZHJssa6p1UhL#-DnBMwXcD1wQq>|@1w73490=3+JEDZ}ZQ}6I`k`o)Jn7v4y zegfS{FHtM%?=DiSr4z3(196b8W{Q3S8E!05-ApZ2UF@wAbs+0ks@DGB)U*C?rRv`1 znZ@`ziM;DIsg=!X>k4t*yuxW~16YmPl#uxFE5oPZi;YLy(L0?s>O$hza)Z+*i2&dS z;G>w~r7t;cVAJsHn1}m?&Dp^w{FkFY<}&KKfmOFx+m~+x6Ke*&H?T>F@9PIMEAzpY z@UL^6yzl~UPOwMYtKCXPxYZo?8N%g-8*_Pg+{ik1P}|q|5pU(4%)>kNdZ(?>tkxu? ziD!!1orimk-DzuP;_l7E_20!dbWnTRhpl3}JE+0Pp);MfBH->TblT1`X{ySz{Qr}7 z+PawWo{3JI!+hSy26V*B-G|u3j%uZ}kKNc&J>4ak;VmZHxj-DYiuWMfdkE`1%)aZW z4w9nm!IRWB<&-@3UIT^Lj=z^(+DYxt?J>#4TpYUqbMtR7|{PMPY2A5}AK;ZwYs?W|P$b{5iV49B^d;XNKh6js`{o7q?mb^2RnwocYE zx;L{;NY5$Dq-MWcmcyF*Yi7|>r>zPF`Lft)8wL0x{-_J&haII(n+Neh!1DmF#2=~R zjR=#Pi1@3__^%N^2hS5_r|oP&iYL`fs!m%+z|RqXCf;PUO+|n@c{LKcW)o~znDNDk z4_o4Q;<+dO4k$*!O-8oo5a-3;j=cC65Z4=jOA${{;6IP&k;vb6ArgpCB>aeHDv%HH z-7WFI;hAdu3`$NC6Zj5@i}3d~ciK(^6q0xt&xF4c@xuWB1rsL>P=^*yqFaZXSg&vnufT46E*~ z+{E>H$X1)Y0coNzlb_Zb#;JE*^-{zwy@@f4e(5Is7N!2!zi8wlHS{IvY(-4CrTV<4&qrEM!JBf_60Un>TpNNHCqFAR!-lv~gl$K)*kOIE&Fh%RA&B(M|?!33!Nt z44*;;F@F26H##eYs2qF$pc0pZ7nx9#*JxBCYoqhMs%?M3Y#x}2@t6v*|9ZBem)e>O z^1U6jLU@)k^HJcB%6xxbnIB?r_Ey_O zNbaBgfvBF$Bi)H`dp2EGE4Xj{T@E=L+(+#zeZXe+Q3qt6I5RtH&EA_81{Ho~UbthW zuyojbgGLI05pLJKa20Sx1N6>I8=MUr!+T#K3#pCFCK6v;GA}$3xT0T8%1fJ{7aj~; zVdj_SrETJ2)4iaKhG|({AB|`7-hKoFG50!*XBxQZCsg?z#EAjxbv%nX*x&F>Mq)YO zshq-Qn+?xU7!E-{ry2;tX{fOifh1wc&L1%T z-okh(aILzZ&-WMLl9ajg{zu4#T}))){}JvkizL?kL4j59&G1qX9HBn09%=QA%^4iz#}I_#~+FION2=e+IKb9 zD{jLxb*>F3Ic*WZ1AxN-ozTiYfMbA9;crl5VM$)S9_=sM_u?mV6=x~J);3(#Evq`ifY5? z;aMoUfN{`@?oRZR5$?rD67Df7FJ{TdG(x@}=ww+0J7EQg)kdW0^nf2}&sa-Q##?w9 z7&hDUz!%j;TtSYfw)cf>L8e)VMaFM{SoC&cSTTw144PivY)i(A8=>6~TB{6950T4n zrG<7wBeY-U<;&ZN%dZvH`G|#l3z4(Y!_`W=)d#iK%)RH>7Wy7JSX)=`!VZVbnps=7 zu94Ce_Q3py)d;N$T9Ubtu&~?2rxVi1*3yrv+0mjVdn~*R44dr?;FEppl%V## z%c_3?q-M49b0fSQ@dQ(VJ@V4~BHXQ~(>4q6R=^p6D)7c)ynCs?T9$biH6MdW`n`%l zLJY$@-_BN=(n!MApViK{d@gGt8^dkiH*0za1D6D4{xZif?hIrx$XuL@d$X0e}ENef9$0dK4Ptv2vG3vD5Kx}Xv8G>mD~A;s@n@ao+77}8kQV?j<{hG1tE z#cg0EOf%714ULtT$a*vIX&5khWpd>Dd&a@aOcdlXFtb=K+w%z1S~>l!?bvj|1{=uq z@B6tW%PH8GNb6#v60_bGbBe~q{H;A(c#7K9UfPdsJ4FpPOy;iXXLRVZK}@C259j;R zPOq`=F%$BpPA>4g6>x@||ET{DP;E zCj2bQbhiap?0X0p!}Nt5yR!jl^cAz!RtTR=&a9Z<2)G>?(OT-onyF;0S}T{*~Oq?y`hq;A49k$YKp(9}vqJt8;NPwy}B0E+AuR zmj9;ZBHI=tY;D~EmO|v?uFu2$?Uby%3QrZ*49)y0Ot-_#aK%7l++aY)=w|yGQ0VLw zJPYXv7oW(Q+L)RHd|@)J_zMs(#-kkZA58Y*t@{s}ZK3wZMXL z5$Hx3$+iMK3r!K}8<7vKZwr3UB21Qx)ZBI*0-~hWt+geH7m^XvI>NUWKuB!k0H^H& zr2Pyy0We`^NcheBXZeT%9Yh@PGq(O9piZ?0P$)@bBCP-cNoFeG7{F%%g%@YdK#Zn4 zpc}Abwhe$ZuN(a_HZM#!}IdBx(^yACgOLb5!ye4Rv06~n|3On zg7P_#%|h$Mv;EjPkd=L7bD#xaZcFp&io*?d_no zs=(G$ne%jW?seEgI~LEPSBZRI2d(Hh7Lo9|mo?wnjpX|-X!%USl(}^#k+n}okF}O# zE_ewWD9UjVymDM3E3>bWC|Z`f{{~B?R$7>u<*@w*d};{6+{$Yj(nN*xdDS&kvZG*S zv&q$2KbK;!O|eUB8j8tHbUD0w8B_ZzD;R_u!n>rD%=CKR!t04 zvuVT4GVeoP;`fy$UlI3b&}K2P)>6&u%hwsKt!R7eSS`L5w8EJpem5YjXIK1-K_Y%_ z-(v1F)Xw&^hO#kdsIA+z80xeQLZWq6*8}0*EOUn1rZh9eSUYnMVH<#6`siS%Z9I}Y z4q-bHu33n1-#qgE2w#f$Zh+kYDg4tQW7qfG(+pc&XF>((?UB9%=~2K@Cf*i6D)hdn z(>4w;Gzf1U;{@1xgsTyr3rMy(8D--~sNL)xqiiM8Gk-_TDL-pBypsyCt9 zXA(XBsP*#0h_a0yksW+CSfoyATk^u^0v8&`2Sr=HkGjKxET#sxfPg9>T*^xj9!Q+= zdl=6`1rJ$hDeXH;_%qK%C-L&qG9R6EYhk#-`k{3R0 zWOliB&6l~jwzqS`BY-Pr?Zp`+TKzXI5BY2$3%?+raaA7fpMIwhZVPVW8p8}%jlxC- ziS0iiBpnb5ViQ7$`VFLONWUMDBs30iB%siZAQ+88_*DFH>78jf?bU$fqzk7VkG55@ ztZm1dMW#XAlxQ^(6u$k!tf=-`YS0+2b-lp4Vs70Xw0c~Rqi_XQ<8#LpzQ)Pt{{#1C z4FIN$d(Tu|u@l+Q{T$3i8;dQ;*APcNmwxuqxg%i{`FnS1aeJB_Frs7$6EOYQI3b+){f`_0Z{EdhgkQh@GJ(TudX+&R0-m!OD%$A=$z2UfW3$te)pg@A|nbvbXN8V$L{w}if2J1;A<8MQ@&QOc8!I0QzNwRf>sFO_sYDj5!w$xYqgVR znfYLEE%S?w(C)yBm}o@Gmz%llf|^xa`x_w_>v2K^!b%dWk5DWcNa#n#>od@c-**;X zB2GFx+j|h#%vOpBVzi>;9}h`tdAuSil%)$^MD(*$9gY<*)Bv`bn18!2PT`rnb+J9$gC>QjhU~5EiXL;Z2|ugW0Y_*)mev;XK+0fGai-od0%S)=+RlK9YyL>Y}X8Sc7M>0dByt zfQtcX7<&f{F9LklQuzN&$rcDnITINOFH$wXuXstHg zN?Uy}EBuv>&_0((`}#%MO=~Od`bKEq1+5S&m6?0oS!ZOYrPv$rY;8M2{}SZc!ZlQx z+cPU|oh56cqu-C9rM4I1vrd3TlMx>2vX$44MtDgV=TxI%!<##FR^mOMFuVZLKH~=C zyZ(HvZ3`fNo*AD4q{Y0G0jmHr$m9~hj{q+P91Tc(dI8cvkZ(K75igclp92puh7}&j zbA3A=$j%_Z$M(NVvdFe^#xmxMU_d=gn2iq*rjx%R;F4t*@o9u(2>)`2p`foI97LFY z9l*;dM6nTJY6|x|t(r0h8Yh}Xz|J7Hni{K?jkRd#_(o`ZfL1t;lyg?gcmqwdkk36x z)}^z3n>D>+Dl_>7{TT-wvu3*7~4lsi!tpY!0s_N zo?yQit0NeUu_FXejC0f)xeVuGV$Y!AVUVyx|-0c&FHQi4~-*cO7<#n@qjH^f-@ z62Mh4Hun;BP$m#J+H?zwb}`Dj3>9+#9*G&7-6DRC8J~~;s2MNtXe=dq`VCBESCaB4 zowpgYTa4D`ZxE1a5=p;JNVJ-VNAtpCfGaFq{(CxmEz@Q(0Uee!79qs=DYlIsNMwxB zy8sA7kg-4zgcl>D5xht?+g#v?fq2?Kh4veXI}jFW6f+;VVl3K+Gzg{PcNk%@kIdIC zmIGNtX#dJZ4kIiW5r;Lv6*g9MQ^9#LaLvxhqwWE&2=B_{djMf-rUv?dycIq)o+rvlH^ z1xHLY#*Qt3)XswLA%xGhgfB-v-Q6en(AQPPs{wmc?)X{p#D?Kmq-#7CdV*&$c@|5tkEEOz@k7OS zBn}7S3TQofKlH1`v#@+(3K2ydO%?V`HYRS?UHZ20wuN#My>Tg|@B{+CPC-2!--UPT{LB4r=io?88ZFWw~{z zv!FC1ls(_Eos-qp?L{>vf}JoLglnyaRRmu(Qj|HM6*D%XZK@hJh*IPy;Ej3JFn4{p z=U(+gR(!>v6&6v@t_Lj*ej;r3+^x@4U#EpvTT3~py!6|e%j>e7*S+eH7%}j8kFqk; z8e#Si;8WLctYD&t5j!mFZkU4C#>H%}v15k9beQ;ureM|}_#Qz%eClFGSSu~`-k^i| zun1tRrObkteQNGB+{&v2X`*jIm_FO3U?6_e@GSfn!K@DmtR2d_muD@=%0>z@0JNg> zQXW=q+F{9eeIv9(Kr04zqBWQ342}Pu?VqG}F24Xc+0r-Q@X5y>3;zvx&eymJpe-lH z=FeI-t5Vci$|i8H2CeW7D9%c2t=BFKt&rz(&xGoFRV%_4TFQCI6;6KXz)2<}ikpqU?=LsbhU^CHfv`3GN`&WM&Q?xUTbH!x8h^`)6c@}!weL-@jN zGn}?bNN$UGHz3u9e!~!^PBR(lrvjc2NIu-F(~T1_T@a=L=^lg$&zfBygeOmDE5X0# zH`C0;K$Gvuz^8ny_{8U$X>1ShGYR067iLW-{4XK>Ie=m@aVn%b5@Fo?$J=?#mF6-5 z;4s9CmCc>AP2*?Ai*-LSkc#7PCcjJr!}qT;+&}edW6gCvmXTVr2CFJ8OdAQcMvsxm} znrT-H?ys3SMpqR}^!YEzm0n|+nowE+?KPW~#o7^}Ki2 zpK|3OG#`}wXFczIE^tNTQ(``@^%WlB0}`HfOSSzxXQIKqwkBB57h6xOiCrvW)YOq} zv9&@t^cy*kZ^3fYy8CCND^vV_JPWN9@b}I+$LD32qN%cnEWAFm@FL#yn+<%6Gc!8p zIPtYeqEu6p$z0` zTjL4uCB&1mEM8#j%wGc76Jf4zfT!V)1U7e()0PJ8f&kgUu?Q2dhZkcePYhmMYzz+z z0BOKl0Z4=S-Ddm&zzYywj6Yg}9C?E=sS-z8JZfr)@IeE?UVT-`Ba+=oZ4F%|V##gXlrxMcYM)BZm3$E6sQS+w04+UPivI&pDb^ zCBpqE17tBU<|EIyAWO>)ksSg)%{kl%Q@z#8MSgF9e>alf zcX*(2$cjEloOB&d@f4Eb<7M8E3~oc!_`*oKr8iJ_G4Ro0dv!p z>P_XBt~YMhsJjKlhN$aqs~>ii`bA-;8VMR0b;lpIxd>O`S+j(x>siyOb|h+n-y6>w z{zO4V&6}fuBoW(<57-N*#3rYt>mRVcUSMm9TOY?=mSWp8>fgGwrohArlO~NzjGr(m zIc{d{)ETkMQgS)Pr)E!>Sv#}-uDR+4smvdXr^23e+8y%*eX&@$Ba1CkFLt`!-jF*H z4+WFyNW`1+uxGDVFDZ8i-DzCPn+&`C@t`;DbzRF=%~#v9@O)Ka=gd>jC=dA)>2x~m z3x?9+kT($PGPMDtoV`C!4V3$Xo>VyO_50mP@D7K%W-(58x;?3QBH;A~e1SkHn250z z^O0>R5{|ol@rWmo3=-3BoTQR_fIA*`rxN~NK_)Fy+jW{cBbk~pE*+aN z33)(--gLy1_6K7Au;1@xzb(W?cVTxR81p6qfmkx`_WS&Oda(bjR$Etq!0S)By-9yO z43PFEYtsFU^?JW#N6?uI~Mo)!tC`$>Z#4+0iQRPPA5|Skk=h%?H8+8qg06) zN)-2pl5Te*>pTTB&L_D1DuI;5VZ+IdY(WKVq*_2Rb%BTcPNqcA{Tcg z5cdW`r%X0TPFtp);`F*v`EW3nhF%4d;SgK3OdZ$4ETzJgbZURtg?%RNDN((Cgl6X;Hn zq&IL{aNR@bOusExn>#(hWXgxzutNbKblwwTomQxt(-V%l6TVnFm53x$;Z%f;TA@}| z;I`~^DgY%+dJ?gCBs6rf#I(276#MrIwZiH4hdutVH-t`=il==M=3J=`E%OHxULRu8 z(2ry)9UI2_ZB@@HgBTE*ig{w5MBJNB59iU&6!gg*3ngMPC^IYo>$^%#mU}$@l-C_d zC4&BBG8IgYh_ZvXz*0W3O6^!4@uj_?Kq3Lr`8|=4XXMFDx(|sv@l6pn_c^t^%%60} zq0)hLAP^2GlJQaOx_i{_Y~)R<$LaH=V=;8Pv^N=Z!vL{mH>o|HexE1lPk9mv^r9ph zlf812I-<M)RHZ00FYt%8$h}V+}rqZEMnA+0gWoNC0zQZ#4&<`RWPYOmR5Ewh%AOX|iWj=K9 zus`lcpYlc`>Cgqd>g7Iv!tY6@BEh6D5|0HU7n)X06vV}}g=nHcI)OU+J?Mwv9u8hq z+hE^XumYx@45Q$I0R720+7cS$XJeQeDo?}`2@l=G?sEsz$$09|a}2tNn0js`o&5%`$F0AxyECRv9yhBt9fq)c=rC#Y*JLUQ%i~M2Q`W0jm3h6s zAgr!0?oOoRk>I75FwZS&Yc_3@8mbuYftmzT?g+%^OS@qLuBOx!TYj_J3>`V)_WLpJ zpiHpIq4**eyF;yE&Rf*x<>;9)*b{dG{3Ee=IAJEwr^Fmz%u*!jWiamF$IBb@N#@GkO{9l>GRCm zEV0+`#>lbcZpby5NG1b8k2?W{#DEaIe6V55PQ4j@*SiUaYVQ4S@k2{IozY?hOSa@Q{K5Ht=5c zvI?I!;tj_j`y}jNIvl&^C5c_P1$O7nd)3>@-7rLc7zs3b$n6gLt~Ey>wizQ3#;^dq zgc!zIPau*CW)`v)+dx@xK&@bZ*@mx@9p0>-R*^{hV4FgTR03uz6$s3g!iID%+JXTl zh*)&1cnTg%1Rrf+*KSd#!d-#h!e0v{{OAdu0Q=t-bxc_r9ziUC!3`ZU2`_OTdu}Iu zxH!J?5KhElVBspc-2wK%eQMb01_r7Ig+sh25@bKzr*?ND7jyz2lrWg|pu@2~Th;R_ z+@2U5124=^5~eQ@TO`e7?yag$_I^-V1kO$hgO$gZ@(1B>EoObUs$H^U0c4o+`H~(q zuE!Vih2u9^$WL>ol5TG}?`P#-2#R9YU9g_;18TyLH=OtS)&R zI#aU^Lmd1dc%fl99jQPh?e#5X&pis;fd1rb z{y+*t`f_O*HOF{%{ljn!!|^1%v2X}J7u7SoLK?(YZiCnLUL8`s@B(2MQ4WmA@qh>4 zQZ-Uvd01^#0WrnW@Yur`mQub*WR(;$QsqZfxn(Q}JL9FcjlsT!BR5Ht2eL7*t8LgR zudAoDt&L6OX3pn>lM?nNd?|F2lzTOs`;a=Ij4GD$2E!Pw;c&U#Ym8{fCJYBOEe;KY}q#TstP}KJqXd4Oa#4&L}HzEw$V(#?NIfyKmz_aIqu#_%8iKxW0SY5S5_oY zb2q*V0&f9>tKYX?TFm9rb>^hl%<tSjs04uPOnIXpt2ZN!x%Pwp;Y8{X@!x^sz=ne z6`oWojL86$+CyG+@(w9OMZBy7uMD_)65)^^141m~@%zK6)Sc3GoV=4+PoTgbO`)-% z41Pbn!^8$@o`EuJN){;`gJn&^pu;A?XG(3PhVib0ZnpF#;t_b({x~KHu%Uswq!ki7 zAJfoVlM+M`79#f;SNdXBZD~Wy_vW$5g;6Oh;f1 z{5~{*C-8sDI`b$isymOLSI>wdx4NsVfs6baR%5!Fkc! zGp(zyF{S5hg3wK>#!+s+7~&~@d~zlm>|1PpkOE2Qj` zpBD>jr^&~cis3R`EDkapAaDW6&Yj#163f58TCHgnaR{V|iYzbbm+_+7(ejQpqGMQd zRXrt(@(QIG05WpOY5`%IxkOkd%+$|-i@xU+A^eLsE~{S-m$xnj47pL_2ap^vXcPhq z7uV$cHDZLE{XG98N6r<~LjqWymBrDLTA*nAQ2E3%(PH>zki#-bIrfKDKUgi)0C{mD zFfskRpu8`YTNjI&ZJ<;b60nPH58@<#s3!MYBd%++a!PqnmZ2L{@AGBUYPGn7X7uzG zjq0u<4*(8UpwL6H-IRvU3T-f+8!w=4hTYzsS8=H z9yj1a%|Kmoo)nKaR|UfjEZ-(Qvy7mRo{+1TiZQ025gCdr765;c?~}D-<*Y60#vc-f z0d-9arvQmqB{!HoCBOZUm}I1O2|k3&vtenO*-!7eaj+Dnh=LOVVg2}->c)|v!T_No z;v!C&N9nUQdFBh^B?C<%au5eHuIu}@|6KKTBZ-p2@yg6A9S7*)Ki@og=FufX=oY^y zEZbfqkAGMkXSgIC&xf98xmgi7FUVOBi_r!rc8ee+R(bPPlt(YBj}IEr)!o(C#p}GL zsji$_R6Zb?dQ2hx;3c`waxv8iY|tZ%h*g-7wrk}@%SEpVb4@%dHt`celf0KzQC}fO zSK^Ej0uT^KU;ywz+R!WV>J>c1bcGm(UI1>$BM(j!C2-(%>R4!$nL|;^pwKKFX1rcL zze1cr1$0seeT3(2XQA!ATJxK_$D~KZ0fq%cvx6W-c~r7qv7s4T0pS}{?!oMy=lS7l zwQ0LbXq6va63-jU}&%BljY zIr>KuXJ9X|?pghYT)W_dtoFPW*yo1PK9?ExB)L$S0$Dqzw4 zLhX`0qTuDviWU>;(j!`lq>`UZjFNzKDYa2}$0zsgrWa7`Xam_Mcr7wyl@~BOrE}$4ud8u|{ z^XSO6|43g_#OB;NDVZlxZv9-=){0}=s7UCo9=|E_G)ykjy5-`vVx;U|E5;e@YX#V0 z3qcMY{DpjAt;md^4B!#yVis^IDALQN{jvzm82-aEP7=yB0*ZHqcADJ10V3G3LQ$x) zATeS)M2hy@G`&)r&^&tF0DYL5Ak6{Hz#AUIPFh~2O;<;U%CWDA2`ZS_2NKSY6QFT? zwY=&TmCZ5i9m%j@Z4oNoHFD%S5g0H$q%j}u47?gZ)~b(Nzx=W6ScmHMC4xN!wnbzB0z3L^&$$KY_{CJjwq&=CMXICLLv(fvj35%trxNB0ua&w4JTx+m=V`$ z6V=AL@{#qFSkFfSK~kac5T=DaN1G(Cd4&$}Uz>zO$N&Qa+>4N>I$wvM33aq@4TJuh=1c6Jr8+ ztPo!^@5^5?+u{U#fv|?=mJ&5Lefb-0Mw0O4h?_J~n8uI)SDyQZINq?iQTQD~C|lRS|oz+}o;KGq7VwN)x2$2VN!@zoo1^$HIL= z!^O4&R>iXAZ3vEwERtq4Ba0qW#L0Z^T-m>ocQfApw&*m0D^^Hv=Ygb%K*=3iU-Rgw zjgUo$s)M%UI5D6tvQyc+QFOPKU`==*9Z;EF@SH6hMPVYuxG+A7UjRai^Sh{e)pf3T zN1S3>05BRHI45JhVR$$B&(Xu=piN?&>4EoYzB~hT7NqgNXjwB!FRAIrww9<`ywB7Q zgM>DPo3Uh*@C>>P){h7H#lMN%@Lu`gCUJ-y{jO+ju^c)hZ5Sz>t7Y=kcf}RMQ9NOA z3gVz-qc<+l;?8O3O`X!1Ha+i=Z3|idPWy5$W`cv4&k@ky9%X z(&%Yvuu`7eFIvqigu`%KWH~%t)j0j6cuf9w2f!1OL9znc;mkz8`?yTDih}{=KxU{! zj$)92UZ0Q`>=H*A$QTr8ni`43P6SWNg}cNwBQElSum$k|u$;txN{-tNc7*A`dr^fH zsAj{TZk`+5iYKg0SLL3i{xi*w(H|nvK6easP4e*B`+9bZ(`sgz@*vy{)ru9;IG@vc zD(~>RSM_hx!u+J#XIMJ*J$YXHk^IhjYX3Dg9n|KOXf{O}q9`k@u|^woBKA{b1}{kN z>gj$#YpwoFruR+m;U%42#k3dYhHavKpO-Y?>`@QUNS3`XPHG2&P$Z$?IBXee%UbQ! zPI=Q1-IPae6^D$*srE^8{OSVRJqusf23P0(oSHRKrVY+{W%jxIn)P+sS#s82#W9uO zZ#eWwtYRcBG6_3oy{U7HL-Bnhh-t?mA`-DkVGK7kKZf|z zqq#iO186?+Yt4^KtO>rEA#70Jlln9eAOnoH>FuIOWPjc>?V zAMuj7H|5I{+<@g{xz7U)(+8b03j(0 zuqK>hn;O4WF4+kcJ!q#GXu>oxc4$bd5@V0`Qx&T7p0yJ|>`+J1$ji)6;DbTBP5ttS z1M$t+W3V`~5Ozih#imkZw)4I^?warckG@3j!+Hc9e?YoaCmr)irH@eZe2i}9GI*@T zht+b1Wz9GEsz4rAV|j%6okP8+i|x8Dmm*>a^R<8pi#ir z=&V>+A#fq}b~JBt0>@OxMKuTDBmgIdUOwJ)lLz%-EuuLq7YxQos|-Lp6o0DBPC5Tm z;URZY6kvT^IES$KpHLUntsJOYfnp=7DEYW%42{H$l6O%&|wQlypO&E$`t@74g_sHA_$BqP05^CWmP4Y9k^=kQ z{n=N)k}(p5Gy_~JQEo!#(yx5Q0E%%P8w!MI7bN-5<+!iu^I927h-k4)x8R{B$z^g2 zpBgq5-c?R5iZI?*@C!M2Uwy1eEle3)AyRFde2*`$kC(N5^x<+=zZl$B7OoOD)l`ZL z-@KxJ^4^1@(#l~EUQkFX z2kx&QXHv;y2D03gu3C6@c5R*iglT}@A%CKdW}(t5Pzo(fJ)DhS)@L+-yMC=0Ah+$W zk2jgw0iC)4(J+E*JG1Mty4PVHQ?ZsBy~+7K)2m@DEDO-9lc{hcVz811>SIhO7wtZX zNs_pP{s?iJ5B4L49uw>RU3mi0BK-H0%uUZVqK130B8ij z5=0@=9Cj@p^{?uka?l`sL`OBCz)R4lPf_9;`3W4#>3+Ggx1(RnI}gxLF^HI^o0#SJ z`(geYx&I*j1}1>=08b?c0R^QCVYzpZexym0Q_2UXXNIQbSl8E&Qn1>T`w4weJJpB* z4~*54SOw|dQ2$6+?9xRJxIMo@waAq!hYg`e?s)gk#8kFhW(% zt$#~pjAfYA#U7V!ap+X=PK00T2>=%8mY1 zpSYLQbaYJXEi$Gd`-*Ng-r(4b;h`l_#9;4owF*$HA$>A(!q*?x9A>0I&B1KRYCA&@x2qCg@}kk&kVe*J{bGbYLn zAAqnzUwPq9k;Hf-h2`EMXSV6zH_$Vvjr4p3O&8$)XZdEEevRQK3XEdS`5}%-S>7ox zHFaDHvQVKwxD*CScvsy}uUKxR#o1lmjp^M#?&{9(t`BT9&O5tN%|ZU9KB)SGX%{sX zdC#6d={xGrd+WyMUu|4aoYzz2_sNm%`rtMMOawU)LPSJRyB5^tlvSd`AUr4lF_B8L zlQVynKW^8pHuf8#0e+LysYvRDb=g_dhXXTcJIwv~h!KpP1ot;fo1KSF4Didr`gj%g zBDtwuAJfJ*!*79~P>9&iAE+NAH@6e#69(%83}i3PkLBhfvK6`WH}#uChgNf*lj#EB zSzoa>RQjk~EN>o6UO}EvIKiCC8fB7iN&UpVa_Rx{v%z|cK|F!}88<`AqZL>W%Hc!w zPSv#-No0gICYsP*mdgJaq91~}LM0)W8Dor?b|@Z_bBE}M{;L-uTb3T43>=HPy{x|P z)MDziqVM7AA6f7D%j*O9WNOchVny?#slAWX_ir?&=Up@Uy4;oZ{Thv_)2HyyRdV7` z{m@}u^rXhL$!gq;l1sd(sS<~R6gkouN^V{-R6oF=4l&e(c8A$d_F1dtoT2(D2m52K dG2LBfPwty?{>abYZ9dYm?0Agjj MakePayment for Module { +impl, I: Instance> MakePayment for Module { fn make_payment(transactor: &T::AccountId, encoded_len: usize) -> Result { let encoded_len = >::sa(encoded_len as u64); let transaction_fee = Self::transaction_base_fee() + Self::transaction_byte_fee() * encoded_len; -- GitLab From 2ba93e317c637ffee06153e15ca7c39f6812e88a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Mon, 25 Mar 2019 15:19:36 +0000 Subject: [PATCH 081/120] core: cli flag to disable grandpa (#2105) * core: cli flag to disable grandpa * core: fix test service configuration * Update core/service/test/src/lib.rs --- core/cli/src/lib.rs | 2 ++ core/cli/src/params.rs | 4 ++++ core/service/src/config.rs | 3 +++ core/service/test/src/lib.rs | 1 + node/cli/src/service.rs | 6 ++++++ 5 files changed, 16 insertions(+) diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index dd47fb73bd..1d335c9b64 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -427,6 +427,8 @@ where }; config.roles = role; + config.disable_grandpa = cli.no_grandpa; + let client_id = config.client_id(); fill_network_configuration( cli.network_config, diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index 21ceafa20f..7b9b224da9 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -220,6 +220,10 @@ pub struct RunCmd { #[structopt(long = "validator")] pub validator: bool, + /// Disable GRANDPA when running in validator mode + #[structopt(long = "no-grandpa")] + pub no_grandpa: bool, + /// Run in light client mode #[structopt(long = "light")] pub light: bool, diff --git a/core/service/src/config.rs b/core/service/src/config.rs index e7503d0ad2..7bafa4c83e 100644 --- a/core/service/src/config.rs +++ b/core/service/src/config.rs @@ -70,6 +70,8 @@ pub struct Configuration { pub default_heap_pages: Option, /// Enable authoring even when offline. pub force_authoring: bool, + /// Disable GRANDPA when running in validator mode + pub disable_grandpa: bool, } impl Configuration { @@ -96,6 +98,7 @@ impl Configuration ( telemetry_endpoints: None, default_heap_pages: None, force_authoring: false, + disable_grandpa: false, } } diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index b65dbc7444..37de34e402 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -103,6 +103,12 @@ construct_service_factory! { info!("Running Grandpa session as Authority {}", key.public()); } + let local_key = if service.config.disable_grandpa { + None + } else { + local_key + }; + executor.spawn(grandpa::run_grandpa( grandpa::Config { local_key, -- GitLab From 386887acac61830e552e073f1f989a464d17db70 Mon Sep 17 00:00:00 2001 From: gabriel klawitter Date: Mon, 25 Mar 2019 16:33:43 +0100 Subject: [PATCH 082/120] ci: fix kubernetes chart (#2111) --- scripts/kubernetes/templates/service.yaml | 4 +--- scripts/kubernetes/templates/statefulset.yaml | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/scripts/kubernetes/templates/service.yaml b/scripts/kubernetes/templates/service.yaml index eb986adbca..01ba9d5a56 100644 --- a/scripts/kubernetes/templates/service.yaml +++ b/scripts/kubernetes/templates/service.yaml @@ -35,8 +35,7 @@ spec: type: NodePort # don't route exteral traffic to non-local pods externalTrafficPolicy: Local -{{- else }} -{{- if .Values.validator.keys }} +{{- else if .Values.validator.keys }} {{- $root := . -}} {{- range until (int .Values.nodes.replicas) }} --- @@ -53,4 +52,3 @@ spec: protocol: TCP {{- end }} {{- end }} -{{- end }} diff --git a/scripts/kubernetes/templates/statefulset.yaml b/scripts/kubernetes/templates/statefulset.yaml index 27ea85e9b7..0f34b3507a 100644 --- a/scripts/kubernetes/templates/statefulset.yaml +++ b/scripts/kubernetes/templates/statefulset.yaml @@ -58,7 +58,7 @@ spec: - sed -n -r "s/^${POD_NAME}-key ([^ ]+)$/\1/p" /etc/validator/secrets > {{ .Values.image.basepath }}/key; sed -n -r "s/^${POD_NAME}-node-key ([^ ]+)$/\1/p" /etc/validator/secrets > {{ .Values.image.basepath }}/node-key; sed -n -r "s/^${POD_NAME}-name ([^ ]+)$/\1/p" /etc/validator/secrets > {{ .Values.image.basepath }}/name; - test -z {{ .Values.image.basepath }}/name && echo "${POD_NAME}" > {{ .Values.image.basepath }}/name + test -s {{ .Values.image.basepath }}/name || echo "${POD_NAME}" > {{ .Values.image.basepath }}/name env: # from (workaround for hostname) # https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/ -- GitLab From a4204129ddfd2de862b78c1f7392f61e531e41e1 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Mon, 25 Mar 2019 19:35:28 +0100 Subject: [PATCH 083/120] bond_extra should be authorised only from stash (#2096) * bond_extra should be authorised only from stash, lest the controller gets compromised. * Fix tests * Fix grumbles * Pass compact balances --- .../substrate_test_runtime.compact.wasm | Bin 56646 -> 56589 bytes node/runtime/src/lib.rs | 2 +- .../release/node_runtime.compact.wasm | Bin 923647 -> 923293 bytes srml/staking/src/lib.rs | 22 ++++++++++-------- srml/staking/src/tests.rs | 6 ++--- 5 files changed, 16 insertions(+), 14 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 6c7778e9ff926d4bcfd99ff14bf3c78ec0d1963c..7b12560812913919885bb94ea0f66ed671d2558c 100644 GIT binary patch delta 5051 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 diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index fd9b9ee11a..9f2d877292 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,7 +58,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 41, + spec_version: 42, impl_version: 42, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 09add58b7c5c788705eac5004310c91172b73477..30e0da2028b8e4ee23700d5c5eedede037a18962 100644 GIT binary patch delta 224071 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⁢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%0A5w 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 a+SBqwajOdvdB>3QGQ{u*Q63?i`}{w7YIp|# diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index 68e26a8e63..f3bcfc0593 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -228,7 +228,7 @@ use srml_support::traits::{ }; use session::OnSessionChange; use primitives::Perbill; -use primitives::traits::{Zero, One, As, StaticLookup, Saturating, Bounded}; +use primitives::traits::{Zero, One, As, StaticLookup, CheckedSub, Saturating, Bounded}; #[cfg(feature = "std")] use primitives::{Serialize, Deserialize}; use system::ensure_signed; @@ -549,14 +549,17 @@ decl_module! { /// /// Use this if there are additional funds in your stash account that you wish to bond. /// - /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. - fn bond_extra(origin, max_additional: BalanceOf) { - let controller = ensure_signed(origin)?; + /// The dispatch origin for this call must be _Signed_ by the stash, not the controller. + fn bond_extra(origin, #[compact] max_additional: BalanceOf) { + let stash = ensure_signed(origin)?; + + let controller = Self::bonded(&stash).ok_or("not a stash")?; let mut ledger = Self::ledger(&controller).ok_or("not a controller")?; - let stash_balance = T::Currency::free_balance(&ledger.stash); - if stash_balance > ledger.total { - let extra = (stash_balance - ledger.total).min(max_additional); + let stash_balance = T::Currency::free_balance(&stash); + + if let Some(extra) = stash_balance.checked_sub(&ledger.total) { + let extra = extra.min(max_additional); ledger.total += extra; ledger.active += extra; Self::update_ledger(&controller, &ledger); @@ -583,8 +586,7 @@ decl_module! { ledger.active -= value; // Avoid there being a dust balance left in the staking system. - let ed = T::Currency::minimum_balance(); - if ledger.active < ed { + if ledger.active < T::Currency::minimum_balance() { value += ledger.active; ledger.active = Zero::zero(); } @@ -672,7 +674,7 @@ decl_module! { /// /// Effects will be felt at the beginning of the next era. /// - /// The dispatch origin for this call must be _Signed_ by the controller, not the stash. + /// The dispatch origin for this call must be _Signed_ by the stash, not the controller. fn set_controller(origin, controller: ::Source) { let stash = ensure_signed(origin)?; let old_controller = Self::bonded(&stash).ok_or("not a stash")?; diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index f1ca3cbc03..605349cc39 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -1104,12 +1104,12 @@ fn bond_extra_works() { let _ = Balances::make_free_balance_be(&11, 1000000); // Call the bond_extra function from controller, add only 100 - assert_ok!(Staking::bond_extra(Origin::signed(10), 100)); + assert_ok!(Staking::bond_extra(Origin::signed(11), 100)); // There should be 100 more `total` and `active` in the ledger assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 1000 + 100, unlocking: vec![] })); // Call the bond_extra function with a large number, should handle it - assert_ok!(Staking::bond_extra(Origin::signed(10), u64::max_value())); + assert_ok!(Staking::bond_extra(Origin::signed(11), u64::max_value())); // The full amount of the funds should now be in the total and active assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000000, active: 1000000, unlocking: vec![] })); @@ -1161,7 +1161,7 @@ fn bond_extra_and_withdraw_unbonded_works() { assert_eq!(Staking::stakers(&11), Exposure { total: 1000, own: 1000, others: vec![] }); // deposit the extra 100 units - Staking::bond_extra(Origin::signed(10), 100).unwrap(); + Staking::bond_extra(Origin::signed(11), 100).unwrap(); assert_eq!(Staking::ledger(&10), Some(StakingLedger { stash: 11, total: 1000 + 100, active: 1000 + 100, unlocking: vec![] })); // Exposure is a snapshot! only updated after the next era update. -- GitLab From a30d6a1a898d06ec8a6ca955eefffa1d697f967e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Drwi=C4=99ga?= Date: Mon, 25 Mar 2019 23:22:11 +0100 Subject: [PATCH 084/120] Initial: Offchain Workers (#1942) * Refactor state-machine stuff. * Fix tests. * WiP * WiP2 * Service support for offchain workers. * Service support for offchain workers. * Testing offchain worker. * Initial version working. * Pass side effects in call. * Pass OffchainExt in context. * Submit extrinsics to the pool. * Support inherents. * Insert to inherents pool. * Inserting to the pool asynchronously. * Add test to offchain worker. * Implement convenience syntax for modules. * Dispatching offchain worker through executive. * Fix offchain test. * Remove offchain worker from timestamp. * Update Cargo.lock. * Address review comments. * Use latest patch version for futures. * Add CLI parameter for offchain worker. * Fix compilation. * Fix test. * Fix extrinsics format for tests. * Fix RPC test. * Bump spec version. * Fix executive. * Fix support macro. * Address grumbles. * Bump runtime --- Cargo.lock | 32 +++++ core/basic-authorship/src/basic_authorship.rs | 52 ++++++- core/cli/src/lib.rs | 17 ++- core/cli/src/params.rs | 125 +++++++++++------ .../client/src/block_builder/block_builder.rs | 8 +- core/client/src/call_executor.rs | 33 ++++- core/client/src/client.rs | 29 ++-- core/client/src/genesis.rs | 6 + core/client/src/light/call_executor.rs | 53 +++++-- core/client/src/runtime_api.rs | 14 +- core/executor/src/wasm_executor.rs | 9 ++ core/finality-grandpa/src/tests.rs | 3 +- core/inherents/src/lib.rs | 4 + core/inherents/src/pool.rs | 75 ++++++++++ core/offchain/Cargo.toml | 27 ++++ core/offchain/primitives/Cargo.toml | 18 +++ core/offchain/primitives/src/lib.rs | 31 ++++ core/offchain/src/api.rs | 99 +++++++++++++ core/offchain/src/lib.rs | 132 ++++++++++++++++++ core/primitives/src/lib.rs | 29 ++++ core/rpc/src/state/mod.rs | 4 +- core/rpc/src/state/tests.rs | 2 +- core/service/Cargo.toml | 2 + core/service/src/chain_spec.rs | 8 ++ core/service/src/components.rs | 63 ++++++--- core/service/src/config.rs | 3 + core/service/src/lib.rs | 66 ++++++--- core/service/test/src/lib.rs | 1 + core/sr-api-macros/src/impl_runtime_apis.rs | 4 +- core/sr-io/with_std.rs | 8 ++ core/sr-io/without_std.rs | 19 +++ core/sr-primitives/src/lib.rs | 15 -- core/sr-primitives/src/traits.rs | 33 +++++ core/state-machine/src/basic.rs | 6 + core/state-machine/src/ext.rs | 47 +++++-- core/state-machine/src/lib.rs | 52 +++++-- core/state-machine/src/overlayed_changes.rs | 7 +- core/state-machine/src/testing.rs | 4 + core/test-client/src/lib.rs | 1 + core/test-runtime/Cargo.toml | 2 + core/test-runtime/src/lib.rs | 16 +++ core/test-runtime/src/system.rs | 1 + core/test-runtime/wasm/Cargo.lock | 9 ++ .../substrate_test_runtime.compact.wasm | Bin 56589 -> 59673 bytes node-template/runtime/Cargo.toml | 2 + node-template/runtime/src/lib.rs | 10 +- node-template/runtime/wasm/Cargo.lock | 9 ++ node-template/src/service.rs | 1 + node/cli/src/service.rs | 1 + node/runtime/Cargo.toml | 1 + node/runtime/src/lib.rs | 10 +- node/runtime/wasm/Cargo.lock | 9 ++ .../release/node_runtime.compact.wasm | Bin 923293 -> 924466 bytes srml/example/src/lib.rs | 9 ++ srml/executive/src/lib.rs | 15 +- srml/support/src/dispatch.rs | 84 +++++++++++ srml/system/src/lib.rs | 2 +- srml/timestamp/Cargo.toml | 6 +- 58 files changed, 1154 insertions(+), 174 deletions(-) create mode 100644 core/inherents/src/pool.rs create mode 100644 core/offchain/Cargo.toml create mode 100644 core/offchain/primitives/Cargo.toml create mode 100644 core/offchain/primitives/src/lib.rs create mode 100644 core/offchain/src/api.rs create mode 100644 core/offchain/src/lib.rs diff --git a/Cargo.lock b/Cargo.lock index 319b9c4cda..23cd0ed6f1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1974,6 +1974,7 @@ dependencies = [ "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", "substrate-keyring 0.1.0", + "substrate-offchain-primitives 0.1.0", "substrate-primitives 0.1.0", ] @@ -2029,6 +2030,7 @@ dependencies = [ "srml-timestamp 0.1.0", "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", + "substrate-offchain-primitives 0.1.0", "substrate-primitives 0.1.0", ] @@ -3978,6 +3980,33 @@ dependencies = [ "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", ] +[[package]] +name = "substrate-offchain" +version = "0.1.0" +dependencies = [ + "env_logger 0.6.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.2.0 (registry+https://github.com/rust-lang/crates.io-index)", + "sr-primitives 0.1.0", + "substrate-client 0.1.0", + "substrate-consensus-common 0.1.0", + "substrate-inherents 0.1.0", + "substrate-offchain-primitives 0.1.0", + "substrate-primitives 0.1.0", + "substrate-test-client 0.1.0", + "substrate-transaction-pool 0.1.0", + "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "substrate-offchain-primitives" +version = "0.1.0" +dependencies = [ + "sr-primitives 0.1.0", + "substrate-client 0.1.0", +] + [[package]] name = "substrate-panic-handler" version = "0.1.0" @@ -4110,8 +4139,10 @@ dependencies = [ "substrate-client-db 0.1.0", "substrate-consensus-common 0.1.0", "substrate-executor 0.1.0", + "substrate-inherents 0.1.0", "substrate-keystore 0.1.0", "substrate-network 0.1.0", + "substrate-offchain 0.1.0", "substrate-primitives 0.1.0", "substrate-rpc-servers 0.1.0", "substrate-telemetry 0.3.1", @@ -4222,6 +4253,7 @@ dependencies = [ "substrate-executor 0.1.0", "substrate-inherents 0.1.0", "substrate-keyring 0.1.0", + "substrate-offchain-primitives 0.1.0", "substrate-primitives 0.1.0", "substrate-test-client 0.1.0", ] diff --git a/core/basic-authorship/src/basic_authorship.rs b/core/basic-authorship/src/basic_authorship.rs index 579ac17fb1..be8ccc5356 100644 --- a/core/basic-authorship/src/basic_authorship.rs +++ b/core/basic-authorship/src/basic_authorship.rs @@ -20,7 +20,7 @@ // use std::{self, time, sync::Arc}; -use log::{info, debug}; +use log::{info, debug, warn}; use client::{ self, error, Client as SubstrateClient, CallExecutor, @@ -28,15 +28,14 @@ use client::{ }; use codec::Decode; use consensus_common::{self, evaluation}; -use primitives::{H256, Blake2Hasher}; +use primitives::{H256, Blake2Hasher, ExecutionContext}; use runtime_primitives::traits::{ Block as BlockT, Hash as HashT, Header as HeaderT, ProvideRuntimeApi, AuthorityIdFor }; -use runtime_primitives::ExecutionContext; use runtime_primitives::generic::BlockId; use runtime_primitives::ApplyError; use transaction_pool::txpool::{self, Pool as TransactionPool}; -use inherents::InherentData; +use inherents::{InherentData, pool::InherentsPool}; use substrate_telemetry::{telemetry, CONSENSUS_INFO}; /// Build new blocks. @@ -115,6 +114,8 @@ pub struct ProposerFactory where A: txpool::ChainApi { pub client: Arc, /// The transaction pool. pub transaction_pool: Arc>, + /// The inherents pool + pub inherents_pool: Arc::Extrinsic>>, } impl consensus_common::Environment<::Block> for ProposerFactory where @@ -144,6 +145,7 @@ impl consensus_common::Environment<::Block> for Propose parent_id: id, parent_number: *parent_header.number(), transaction_pool: self.transaction_pool.clone(), + inherents_pool: self.inherents_pool.clone(), now: Box::new(time::Instant::now), }; @@ -158,6 +160,7 @@ pub struct Proposer { parent_id: BlockId, parent_number: <::Header as HeaderT>::Number, transaction_pool: Arc>, + inherents_pool: Arc::Extrinsic>>, now: Box time::Instant>, } @@ -201,11 +204,23 @@ impl Proposer where &self.parent_id, inherent_data, |block_builder| { + // Add inherents from the internal pool + + let inherents = self.inherents_pool.drain(); + debug!("Pushing {} queued inherents.", inherents.len()); + for i in inherents { + if let Err(e) = block_builder.push_extrinsic(i) { + warn!("Error while pushing inherent extrinsic from the pool: {:?}", e); + } + } + + // proceed with transactions let mut is_first = true; let mut skipped = 0; let mut unqueue_invalid = Vec::new(); let pending_iterator = self.transaction_pool.ready(); + debug!("Attempting to push transactions from the pool."); for pending in pending_iterator { if (self.now)() > deadline { debug!("Consensus deadline reached when pushing block transactions, proceeding with proposing."); @@ -303,6 +318,7 @@ mod tests { let proposer_factory = ProposerFactory { client: client.clone(), transaction_pool: txpool.clone(), + inherents_pool: Default::default(), }; let mut proposer = proposer_factory.init( @@ -325,4 +341,32 @@ mod tests { assert_eq!(txpool.ready().count(), 2); } + #[test] + fn should_include_inherents_from_the_pool() { + // given + let client = Arc::new(test_client::new()); + let chain_api = transaction_pool::ChainApi::new(client.clone()); + let txpool = Arc::new(TransactionPool::new(Default::default(), chain_api)); + let inpool = Arc::new(InherentsPool::default()); + + let proposer_factory = ProposerFactory { + client: client.clone(), + transaction_pool: txpool.clone(), + inherents_pool: inpool.clone(), + }; + + inpool.add(extrinsic(0)); + + let proposer = proposer_factory.init( + &client.header(&BlockId::number(0)).unwrap().unwrap(), + &[] + ).unwrap(); + + // when + let deadline = time::Duration::from_secs(3); + let block = proposer.propose(Default::default(), deadline).unwrap(); + + // then + assert_eq!(block.extrinsics().len(), 1); + } } diff --git a/core/cli/src/lib.rs b/core/cli/src/lib.rs index 1d335c9b64..8fa133ea79 100644 --- a/core/cli/src/lib.rs +++ b/core/cli/src/lib.rs @@ -419,11 +419,20 @@ where service::Roles::FULL }; + let exec = cli.execution_strategies; config.execution_strategies = ExecutionStrategies { - syncing: cli.syncing_execution.into(), - importing: cli.importing_execution.into(), - block_construction: cli.block_construction_execution.into(), - other: cli.other_execution.into(), + syncing: exec.syncing_execution.into(), + importing: exec.importing_execution.into(), + block_construction: exec.block_construction_execution.into(), + offchain_worker: exec.offchain_worker_execution.into(), + other: exec.other_execution.into(), + }; + + config.offchain_worker = match (cli.offchain_worker, role) { + (params::OffchainWorkerEnabled::WhenValidating, service::Roles::AUTHORITY) => true, + (params::OffchainWorkerEnabled::Always, _) => true, + (params::OffchainWorkerEnabled::Never, _) => false, + (params::OffchainWorkerEnabled::WhenValidating, _) => false, }; config.roles = role; diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index 7b9b224da9..ee014e1e8e 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -53,6 +53,16 @@ impl Into for ExecutionStrategy { } } +arg_enum! { + /// How to execute blocks + #[derive(Debug, Clone)] + pub enum OffchainWorkerEnabled { + Always, + Never, + WhenValidating, + } +} + /// Shared parameters used by all `CoreParams`. #[derive(Debug, StructOpt, Clone)] pub struct SharedParams { @@ -205,6 +215,70 @@ pub struct TransactionPoolParams { pub pool_kbytes: usize, } +/// Execution strategies parameters. +#[derive(Debug, StructOpt, Clone)] +pub struct ExecutionStrategies { + /// The means of execution used when calling into the runtime while syncing blocks. + #[structopt( + long = "syncing-execution", + value_name = "STRATEGY", + raw( + possible_values = "&ExecutionStrategy::variants()", + case_insensitive = "true", + default_value = r#""NativeElseWasm""# + ) + )] + pub syncing_execution: ExecutionStrategy, + + /// The means of execution used when calling into the runtime while importing blocks. + #[structopt( + long = "importing-execution", + value_name = "STRATEGY", + raw( + possible_values = "&ExecutionStrategy::variants()", + case_insensitive = "true", + default_value = r#""NativeElseWasm""# + ) + )] + pub importing_execution: ExecutionStrategy, + + /// The means of execution used when calling into the runtime while constructing blocks. + #[structopt( + long = "block-construction-execution", + value_name = "STRATEGY", + raw( + possible_values = "&ExecutionStrategy::variants()", + case_insensitive = "true", + default_value = r#""Wasm""# + ) + )] + pub block_construction_execution: ExecutionStrategy, + + /// The means of execution used when calling into the runtime while constructing blocks. + #[structopt( + long = "offchain-worker-execution", + value_name = "STRATEGY", + raw( + possible_values = "&ExecutionStrategy::variants()", + case_insensitive = "true", + default_value = r#""NativeWhenPossible""# + ) + )] + pub offchain_worker_execution: ExecutionStrategy, + + /// The means of execution used when calling into the runtime while not syncing, importing or constructing blocks. + #[structopt( + long = "other-execution", + value_name = "STRATEGY", + raw( + possible_values = "&ExecutionStrategy::variants()", + case_insensitive = "true", + default_value = r#""Wasm""# + ) + )] + pub other_execution: ExecutionStrategy, +} + /// The `run` command used to run a node. #[derive(Debug, StructOpt, Clone)] pub struct RunCmd { @@ -266,53 +340,22 @@ pub struct RunCmd { #[structopt(long = "telemetry-url", value_name = "URL VERBOSITY", parse(try_from_str = "parse_telemetry_endpoints"))] pub telemetry_endpoints: Vec<(String, u8)>, - /// The means of execution used when calling into the runtime while syncing blocks. - #[structopt( - long = "syncing-execution", - value_name = "STRATEGY", - raw( - possible_values = "&ExecutionStrategy::variants()", - case_insensitive = "true", - default_value = r#""NativeElseWasm""# - ) - )] - pub syncing_execution: ExecutionStrategy, - - /// The means of execution used when calling into the runtime while importing blocks. - #[structopt( - long = "importing-execution", - value_name = "STRATEGY", - raw( - possible_values = "&ExecutionStrategy::variants()", - case_insensitive = "true", - default_value = r#""NativeElseWasm""# - ) - )] - pub importing_execution: ExecutionStrategy, - - /// The means of execution used when calling into the runtime while constructing blocks. + /// Should execute offchain workers on every block. By default it's only enabled for nodes that are authoring new + /// blocks. #[structopt( - long = "block-construction-execution", - value_name = "STRATEGY", + long = "offchain-worker", + value_name = "ENABLED", raw( - possible_values = "&ExecutionStrategy::variants()", + possible_values = "&OffchainWorkerEnabled::variants()", case_insensitive = "true", - default_value = r#""Wasm""# + default_value = r#""WhenValidating""# ) )] - pub block_construction_execution: ExecutionStrategy, + pub offchain_worker: OffchainWorkerEnabled, - /// The means of execution used when calling into the runtime while not syncing, importing or constructing blocks. - #[structopt( - long = "other-execution", - value_name = "STRATEGY", - raw( - possible_values = "&ExecutionStrategy::variants()", - case_insensitive = "true", - default_value = r#""Wasm""# - ) - )] - pub other_execution: ExecutionStrategy, + #[allow(missing_docs)] + #[structopt(flatten)] + pub execution_strategies: ExecutionStrategies, #[allow(missing_docs)] #[structopt(flatten)] diff --git a/core/client/src/block_builder/block_builder.rs b/core/client/src/block_builder/block_builder.rs index 39969fc157..63e18e8279 100644 --- a/core/client/src/block_builder/block_builder.rs +++ b/core/client/src/block_builder/block_builder.rs @@ -17,15 +17,15 @@ use super::api::BlockBuilder as BlockBuilderApi; use std::vec::Vec; use parity_codec::Encode; -use crate::blockchain::HeaderBackend; +use runtime_primitives::ApplyOutcome; +use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{ Header as HeaderT, Hash, Block as BlockT, One, HashFor, ProvideRuntimeApi, ApiRef }; -use primitives::H256; -use runtime_primitives::generic::BlockId; +use primitives::{H256, ExecutionContext}; +use crate::blockchain::HeaderBackend; use crate::runtime_api::Core; use crate::error; -use runtime_primitives::{ApplyOutcome, ExecutionContext}; /// Utility for building new (valid) blocks from a stream of extrinsics. diff --git a/core/client/src/call_executor.rs b/core/client/src/call_executor.rs index c787271874..0dad56be07 100644 --- a/core/client/src/call_executor.rs +++ b/core/client/src/call_executor.rs @@ -19,12 +19,12 @@ use parity_codec::{Encode, Decode}; use runtime_primitives::generic::BlockId; use runtime_primitives::traits::Block as BlockT; use state_machine::{ - self, OverlayedChanges, Ext, CodeExecutor, ExecutionManager, ExecutionStrategy + self, OverlayedChanges, Ext, CodeExecutor, ExecutionManager, ExecutionStrategy, NeverOffchainExt, }; use executor::{RuntimeVersion, RuntimeInfo, NativeVersion}; use hash_db::Hasher; use trie::MemoryDB; -use primitives::{H256, Blake2Hasher, NativeOrEncoded, NeverNativeValue}; +use primitives::{H256, Blake2Hasher, NativeOrEncoded, NeverNativeValue, OffchainExt}; use crate::backend; use crate::error; @@ -42,12 +42,15 @@ where /// Execute a call to a contract on top of state in a block of given hash. /// /// No changes are made. - fn call( + fn call< + O: OffchainExt, + >( &self, id: &BlockId, method: &str, call_data: &[u8], strategy: ExecutionStrategy, + side_effects_handler: Option<&mut O>, ) -> Result, error::Error>; /// Execute a contextual call on top of state in a block of a given hash. @@ -56,6 +59,7 @@ where /// Before executing the method, passed header is installed as the current header /// of the execution context. fn contextual_call< + O: OffchainExt, PB: Fn() -> error::Result, EM: Fn( Result, Self::Error>, @@ -73,6 +77,7 @@ where prepare_environment_block: PB, execution_manager: ExecutionManager, native_call: Option, + side_effects_handler: Option<&mut O>, ) -> error::Result> where ExecutionManager: Clone; /// Extract RuntimeVersion of given block @@ -84,6 +89,7 @@ where /// /// No changes are made. fn call_at_state< + O: OffchainExt, S: state_machine::Backend, F: FnOnce( Result, Self::Error>, @@ -98,6 +104,7 @@ where call_data: &[u8], manager: ExecutionManager, native_call: Option, + side_effects_handler: Option<&mut O>, ) -> Result<(NativeOrEncoded, S::Transaction, Option>), error::Error>; /// Execute a call to a contract on top of given state, gathering execution proof. @@ -140,7 +147,10 @@ pub struct LocalCallExecutor { impl LocalCallExecutor { /// Creates new instance of local call executor. pub fn new(backend: Arc, executor: E) -> Self { - LocalCallExecutor { backend, executor } + LocalCallExecutor { + backend, + executor, + } } } @@ -161,17 +171,19 @@ where { type Error = E::Error; - fn call(&self, + fn call(&self, id: &BlockId, method: &str, call_data: &[u8], - strategy: ExecutionStrategy + strategy: ExecutionStrategy, + side_effects_handler: Option<&mut O>, ) -> error::Result> { let mut changes = OverlayedChanges::default(); let state = self.backend.state_at(*id)?; let return_data = state_machine::new( &state, self.backend.changes_trie_storage(), + side_effects_handler, &mut changes, &self.executor, method, @@ -187,6 +199,7 @@ where } fn contextual_call< + O: OffchainExt, PB: Fn() -> error::Result, EM: Fn( Result, Self::Error>, @@ -204,6 +217,7 @@ where prepare_environment_block: PB, execution_manager: ExecutionManager, native_call: Option, + mut side_effects_handler: Option<&mut O>, ) -> Result, error::Error> where ExecutionManager: Clone { let state = self.backend.state_at(*at)?; if method != "Core_initialise_block" && initialised_block.map(|id| id != *at).unwrap_or(true) { @@ -211,6 +225,7 @@ where state_machine::new( &state, self.backend.changes_trie_storage(), + side_effects_handler.as_mut().map(|x| &mut **x), changes, &self.executor, "Core_initialise_block", @@ -226,6 +241,7 @@ where let result = state_machine::new( &state, self.backend.changes_trie_storage(), + side_effects_handler, changes, &self.executor, method, @@ -248,12 +264,13 @@ where fn runtime_version(&self, id: &BlockId) -> error::Result { let mut overlay = OverlayedChanges::default(); let state = self.backend.state_at(*id)?; - let mut ext = Ext::new(&mut overlay, &state, self.backend.changes_trie_storage()); + let mut ext = Ext::new(&mut overlay, &state, self.backend.changes_trie_storage(), NeverOffchainExt::new()); self.executor.runtime_version(&mut ext) .ok_or(error::ErrorKind::VersionInvalid.into()) } fn call_at_state< + O: OffchainExt, S: state_machine::Backend, F: FnOnce( Result, Self::Error>, @@ -268,10 +285,12 @@ where call_data: &[u8], manager: ExecutionManager, native_call: Option, + side_effects_handler: Option<&mut O>, ) -> error::Result<(NativeOrEncoded, S::Transaction, Option>)> { state_machine::new( state, self.backend.changes_trie_storage(), + side_effects_handler, changes, &self.executor, method, diff --git a/core/client/src/client.rs b/core/client/src/client.rs index 37ee1b5ce0..26ba126b85 100644 --- a/core/client/src/client.rs +++ b/core/client/src/client.rs @@ -33,9 +33,9 @@ use runtime_primitives::traits::{ Block as BlockT, Header as HeaderT, Zero, As, NumberFor, CurrentHeight, BlockNumberToHash, ApiRef, ProvideRuntimeApi, Digest, DigestItem, AuthorityIdFor }; -use runtime_primitives::{BuildStorage, ExecutionContext}; +use runtime_primitives::BuildStorage; use crate::runtime_api::{CallRuntimeAt, ConstructRuntimeApi}; -use primitives::{Blake2Hasher, H256, ChangesTrieConfiguration, convert_hash, NeverNativeValue}; +use primitives::{Blake2Hasher, H256, ChangesTrieConfiguration, convert_hash, NeverNativeValue, ExecutionContext}; use primitives::storage::{StorageKey, StorageData}; use primitives::storage::well_known_keys; use parity_codec::{Encode, Decode}; @@ -43,7 +43,7 @@ use state_machine::{ DBValue, Backend as StateBackend, CodeExecutor, ChangesTrieAnchorBlockId, ExecutionStrategy, ExecutionManager, prove_read, ChangesTrieRootsStorage, ChangesTrieStorage, - key_changes, key_changes_proof, OverlayedChanges, + key_changes, key_changes_proof, OverlayedChanges, NeverOffchainExt, }; use hash_db::Hasher; @@ -84,6 +84,8 @@ pub struct ExecutionStrategies { pub importing: ExecutionStrategy, /// Execution strategy used when constructing blocks. pub block_construction: ExecutionStrategy, + /// Execution strategy used for offchain workers. + pub offchain_worker: ExecutionStrategy, /// Execution strategy used in other cases. pub other: ExecutionStrategy, } @@ -94,6 +96,7 @@ impl Default for ExecutionStrategies { syncing: ExecutionStrategy::NativeElseWasm, importing: ExecutionStrategy::NativeElseWasm, block_construction: ExecutionStrategy::AlwaysWasm, + offchain_worker: ExecutionStrategy::NativeWhenPossible, other: ExecutionStrategy::NativeElseWasm, } } @@ -343,7 +346,7 @@ impl Client where pub fn authorities_at(&self, id: &BlockId) -> error::Result>> { match self.backend.blockchain().cache().and_then(|cache| cache.authorities_at(*id)) { Some(cached_value) => Ok(cached_value), - None => self.executor.call(id, "Core_authorities", &[], ExecutionStrategy::NativeElseWasm) + None => self.executor.call(id, "Core_authorities", &[], ExecutionStrategy::NativeElseWasm, NeverOffchainExt::new()) .and_then(|r| Vec::>::decode(&mut &r[..]) .ok_or_else(|| error::ErrorKind::InvalidAuthoritiesSet.into())) } @@ -871,7 +874,7 @@ impl Client where }), } }; - let (_, storage_update, changes_update) = self.executor.call_at_state::<_, _, NeverNativeValue, fn() -> _>( + let (_, storage_update, changes_update) = self.executor.call_at_state::<_, _, _, NeverNativeValue, fn() -> _>( transaction_state, &mut overlay, "Core_execute_block", @@ -881,6 +884,7 @@ impl Client where _ => get_execution_manager(self.execution_strategies().importing), }, None, + NeverOffchainExt::new(), )?; overlay.commit_prospective(); @@ -1339,7 +1343,8 @@ impl CallRuntimeAt for Client where Block: BlockT { fn call_api_at< - R: Encode + Decode + PartialEq, NC: FnOnce() -> result::Result + UnwindSafe + R: Encode + Decode + PartialEq, + NC: FnOnce() -> result::Result + UnwindSafe, >( &self, at: &BlockId, @@ -1348,15 +1353,22 @@ impl CallRuntimeAt for Client where changes: &mut OverlayedChanges, initialised_block: &mut Option>, native_call: Option, - context: ExecutionContext + context: ExecutionContext, ) -> error::Result> { let manager = match context { ExecutionContext::BlockConstruction => self.execution_strategies.block_construction.get_manager(), ExecutionContext::Syncing => self.execution_strategies.syncing.get_manager(), ExecutionContext::Importing => self.execution_strategies.importing.get_manager(), + ExecutionContext::OffchainWorker(_) => self.execution_strategies.offchain_worker.get_manager(), ExecutionContext::Other => self.execution_strategies.other.get_manager(), }; - self.executor.contextual_call::<_, fn(_,_) -> _,_,_>( + + let mut offchain_extensions = match context { + ExecutionContext::OffchainWorker(ext) => Some(ext), + _ => None, + }; + + self.executor.contextual_call::<_, _, fn(_,_) -> _,_,_>( at, function, &args, @@ -1365,6 +1377,7 @@ impl CallRuntimeAt for Client where || self.prepare_environment_block(at), manager, native_call, + offchain_extensions.as_mut(), ) } diff --git a/core/client/src/genesis.rs b/core/client/src/genesis.rs index 9ee0033685..7ebae4c558 100644 --- a/core/client/src/genesis.rs +++ b/core/client/src/genesis.rs @@ -90,6 +90,7 @@ mod tests { state_machine::new( backend, Some(&InMemoryChangesTrieStorage::new()), + state_machine::NeverOffchainExt::new(), &mut overlay, &executor(), "Core_initialise_block", @@ -102,6 +103,7 @@ mod tests { state_machine::new( backend, Some(&InMemoryChangesTrieStorage::new()), + state_machine::NeverOffchainExt::new(), &mut overlay, &executor(), "BlockBuilder_apply_extrinsic", @@ -114,6 +116,7 @@ mod tests { let (ret_data, _, _) = state_machine::new( backend, Some(&InMemoryChangesTrieStorage::new()), + state_machine::NeverOffchainExt::new(), &mut overlay, &executor(), "BlockBuilder_finalise_block", @@ -160,6 +163,7 @@ mod tests { let _ = state_machine::new( &backend, Some(&InMemoryChangesTrieStorage::new()), + state_machine::NeverOffchainExt::new(), &mut overlay, &executor(), "Core_execute_block", @@ -188,6 +192,7 @@ mod tests { let _ = state_machine::new( &backend, Some(&InMemoryChangesTrieStorage::new()), + state_machine::NeverOffchainExt::new(), &mut overlay, &executor(), "Core_execute_block", @@ -216,6 +221,7 @@ mod tests { let r = state_machine::new( &backend, Some(&InMemoryChangesTrieStorage::new()), + state_machine::NeverOffchainExt::new(), &mut overlay, &Executor::new(None), "Core_execute_block", diff --git a/core/client/src/light/call_executor.rs b/core/client/src/light/call_executor.rs index 5bc77112f8..00a3d8895b 100644 --- a/core/client/src/light/call_executor.rs +++ b/core/client/src/light/call_executor.rs @@ -21,11 +21,11 @@ use std::{collections::HashSet, sync::Arc, panic::UnwindSafe, result, marker::Ph use futures::{IntoFuture, Future}; use parity_codec::{Encode, Decode}; -use primitives::{H256, Blake2Hasher, convert_hash, NativeOrEncoded}; +use primitives::{H256, Blake2Hasher, convert_hash, NativeOrEncoded, OffchainExt}; use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{As, Block as BlockT, Header as HeaderT}; use state_machine::{self, Backend as StateBackend, CodeExecutor, OverlayedChanges, ExecutionStrategy, - create_proof_check_backend, execution_proof_check_on_trie_backend, ExecutionManager}; + create_proof_check_backend, execution_proof_check_on_trie_backend, ExecutionManager, NeverOffchainExt}; use hash_db::Hasher; use crate::backend::RemoteBackend; @@ -80,7 +80,16 @@ where { type Error = ClientError; - fn call(&self, id: &BlockId, method: &str, call_data: &[u8], _strategy: ExecutionStrategy) + fn call< + O: OffchainExt, + >( + &self, + id: &BlockId, + method: &str, + call_data: &[u8], + _strategy: ExecutionStrategy, + _side_effects_handler: Option<&mut O>, + ) -> ClientResult> { let block_hash = self.blockchain.expect_block_hash_from_id(id)?; let block_header = self.blockchain.expect_header(id.clone())?; @@ -95,6 +104,7 @@ where } fn contextual_call< + O: OffchainExt, PB: Fn() -> ClientResult, EM: Fn( Result, Self::Error>, @@ -112,22 +122,24 @@ where _prepare_environment_block: PB, execution_manager: ExecutionManager, _native_call: Option, + side_effects_handler: Option<&mut O>, ) -> ClientResult> where ExecutionManager: Clone { // it is only possible to execute contextual call if changes are empty if !changes.is_empty() || initialised_block.is_some() { return Err(ClientErrorKind::NotAvailableOnLightClient.into()); } - self.call(at, method, call_data, (&execution_manager).into()).map(NativeOrEncoded::Encoded) + self.call(at, method, call_data, (&execution_manager).into(), side_effects_handler).map(NativeOrEncoded::Encoded) } fn runtime_version(&self, id: &BlockId) -> ClientResult { - let call_result = self.call(id, "version", &[], ExecutionStrategy::NativeElseWasm)?; + let call_result = self.call(id, "version", &[], ExecutionStrategy::NativeElseWasm, NeverOffchainExt::new())?; RuntimeVersion::decode(&mut call_result.as_slice()) .ok_or_else(|| ClientErrorKind::VersionInvalid.into()) } fn call_at_state< + O: OffchainExt, S: StateBackend, FF: FnOnce( Result, Self::Error>, @@ -142,6 +154,7 @@ where _call_data: &[u8], _m: ExecutionManager, _native_call: Option, + _side_effects_handler: Option<&mut O>, ) -> ClientResult<(NativeOrEncoded, S::Transaction, Option>)> { Err(ClientErrorKind::NotAvailableOnLightClient.into()) } @@ -201,15 +214,24 @@ impl CallExecutor for { type Error = ClientError; - fn call(&self, id: &BlockId, method: &str, call_data: &[u8], strategy: ExecutionStrategy) - -> ClientResult> { + fn call< + O: OffchainExt, + >( + &self, + id: &BlockId, + method: &str, + call_data: &[u8], + strategy: ExecutionStrategy, + side_effects_handler: Option<&mut O>, + ) -> ClientResult> { match self.backend.is_local_state_available(id) { - true => self.local.call(id, method, call_data, strategy), - false => self.remote.call(id, method, call_data, strategy), + true => self.local.call(id, method, call_data, strategy, side_effects_handler), + false => self.remote.call(id, method, call_data, strategy, side_effects_handler), } } fn contextual_call< + O: OffchainExt, PB: Fn() -> ClientResult, EM: Fn( Result, Self::Error>, @@ -227,12 +249,14 @@ impl CallExecutor for prepare_environment_block: PB, _manager: ExecutionManager, native_call: Option, + side_effects_handler: Option<&mut O>, ) -> ClientResult> where ExecutionManager: Clone { // there's no actual way/need to specify native/wasm execution strategy on light node // => we can safely ignore passed values match self.backend.is_local_state_available(at) { true => CallExecutor::contextual_call::< + _, _, fn( Result, Local::Error>, @@ -250,8 +274,10 @@ impl CallExecutor for prepare_environment_block, ExecutionManager::NativeWhenPossible, native_call, + side_effects_handler, ).map_err(|e| ClientErrorKind::Execution(Box::new(e.to_string())).into()), false => CallExecutor::contextual_call::< + _, _, fn( Result, Remote::Error>, @@ -269,6 +295,7 @@ impl CallExecutor for prepare_environment_block, ExecutionManager::NativeWhenPossible, native_call, + side_effects_handler, ).map_err(|e| ClientErrorKind::Execution(Box::new(e.to_string())).into()), } } @@ -281,6 +308,7 @@ impl CallExecutor for } fn call_at_state< + O: OffchainExt, S: StateBackend, FF: FnOnce( Result, Self::Error>, @@ -295,11 +323,13 @@ impl CallExecutor for call_data: &[u8], _manager: ExecutionManager, native_call: Option, + side_effects_handler: Option<&mut O>, ) -> ClientResult<(NativeOrEncoded, S::Transaction, Option>)> { // there's no actual way/need to specify native/wasm execution strategy on light node // => we can safely ignore passed values CallExecutor::call_at_state::< + _, _, fn( Result, Remote::Error>, @@ -315,6 +345,7 @@ impl CallExecutor for call_data, ExecutionManager::NativeWhenPossible, native_call, + side_effects_handler, ).map_err(|e| ClientErrorKind::Execution(Box::new(e.to_string())).into()) } @@ -509,7 +540,7 @@ mod tests { let local_executor = RemoteCallExecutor::new(Arc::new(backend.blockchain().clone()), Arc::new(OkCallFetcher::new(vec![1]))); let remote_executor = RemoteCallExecutor::new(Arc::new(backend.blockchain().clone()), Arc::new(OkCallFetcher::new(vec![2]))); let remote_or_local = RemoteOrLocalCallExecutor::new(backend, remote_executor, local_executor); - assert_eq!(remote_or_local.call(&BlockId::Number(0), "test_method", &[], ExecutionStrategy::NativeElseWasm).unwrap(), vec![1]); - assert_eq!(remote_or_local.call(&BlockId::Number(1), "test_method", &[], ExecutionStrategy::NativeElseWasm).unwrap(), vec![2]); + assert_eq!(remote_or_local.call(&BlockId::Number(0), "test_method", &[], ExecutionStrategy::NativeElseWasm, NeverOffchainExt::new()).unwrap(), vec![1]); + assert_eq!(remote_or_local.call(&BlockId::Number(1), "test_method", &[], ExecutionStrategy::NativeElseWasm, NeverOffchainExt::new()).unwrap(), vec![2]); } } diff --git a/core/client/src/runtime_api.rs b/core/client/src/runtime_api.rs index 435a7d70e6..77d733f64e 100644 --- a/core/client/src/runtime_api.rs +++ b/core/client/src/runtime_api.rs @@ -24,10 +24,12 @@ pub use state_machine::OverlayedChanges; pub use primitives::NativeOrEncoded; #[doc(hidden)] pub use runtime_primitives::{ - traits::{AuthorityIdFor, Block as BlockT, GetNodeBlockType, GetRuntimeBlockType, ApiRef, RuntimeApiInfo}, - generic::BlockId, transaction_validity::TransactionValidity, ExecutionContext, + traits::{AuthorityIdFor, Block as BlockT, GetNodeBlockType, GetRuntimeBlockType, Header as HeaderT, ApiRef, RuntimeApiInfo}, + generic::BlockId, transaction_validity::TransactionValidity, }; #[doc(hidden)] +pub use primitives::{ExecutionContext, OffchainExt}; +#[doc(hidden)] pub use runtime_version::{ApiId, RuntimeVersion, ApisVec, create_apis_vec}; #[doc(hidden)] pub use rstd::{slice, mem}; @@ -91,7 +93,10 @@ pub trait ApiExt { pub trait CallRuntimeAt { /// Calls the given api function with the given encoded arguments at the given block /// and returns the encoded result. - fn call_api_at result::Result + UnwindSafe>( + fn call_api_at< + R: Encode + Decode + PartialEq, + NC: FnOnce() -> result::Result + UnwindSafe, + >( &self, at: &BlockId, function: &'static str, @@ -99,7 +104,7 @@ pub trait CallRuntimeAt { changes: &mut OverlayedChanges, initialised_block: &mut Option>, native_call: Option, - context: ExecutionContext + context: ExecutionContext, ) -> error::Result>; /// Returns the runtime version at the given block. @@ -132,3 +137,4 @@ decl_runtime_apis! { fn validate_transaction(tx: ::Extrinsic) -> TransactionValidity; } } + diff --git a/core/executor/src/wasm_executor.rs b/core/executor/src/wasm_executor.rs index 7e6833bb78..42af29e9ba 100644 --- a/core/executor/src/wasm_executor.rs +++ b/core/executor/src/wasm_executor.rs @@ -520,6 +520,15 @@ impl_function_executor!(this: FunctionExecutor<'e, E>, Ok(0) }, + ext_submit_extrinsic(msg_data: *const u8, len: u32) => { + let extrinsic = this.memory.get(msg_data, len as usize) + .map_err(|_| UserError("OOB while ext_submit_extrinsic: wasm"))?; + + this.ext.submit_extrinsic(extrinsic) + .map_err(|_| UserError("Calling unavailable API ext_submit_extrinsic: wasm"))?; + + Ok(()) + }, ext_sandbox_instantiate( dispatch_thunk_idx: usize, wasm_ptr: *const u8, diff --git a/core/finality-grandpa/src/tests.rs b/core/finality-grandpa/src/tests.rs index 6daddea562..7e0537ed7b 100644 --- a/core/finality-grandpa/src/tests.rs +++ b/core/finality-grandpa/src/tests.rs @@ -35,8 +35,7 @@ use std::collections::{HashMap, HashSet}; use std::result; use runtime_primitives::traits::{ApiRef, ProvideRuntimeApi}; use runtime_primitives::generic::BlockId; -use runtime_primitives::ExecutionContext; -use substrate_primitives::NativeOrEncoded; +use substrate_primitives::{NativeOrEncoded, ExecutionContext}; use authorities::AuthoritySet; use consensus_changes::ConsensusChanges; diff --git a/core/inherents/src/lib.rs b/core/inherents/src/lib.rs index eadd45ba9e..7d2324bc93 100644 --- a/core/inherents/src/lib.rs +++ b/core/inherents/src/lib.rs @@ -31,6 +31,7 @@ //! information on how that is done. #![cfg_attr(not(feature = "std"), no_std)] +#![warn(missing_docs)] use parity_codec as codec; use codec::{Encode, Decode}; @@ -43,6 +44,9 @@ use parking_lot::RwLock; #[cfg(feature = "std")] use std::{sync::Arc, format}; +#[cfg(feature = "std")] +pub mod pool; + pub use runtime_primitives::RuntimeString; /// An identifier for an inherent. diff --git a/core/inherents/src/pool.rs b/core/inherents/src/pool.rs new file mode 100644 index 0000000000..2c7e953696 --- /dev/null +++ b/core/inherents/src/pool.rs @@ -0,0 +1,75 @@ +// 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 . + +//! Inherents Pool + +use std::{fmt, mem, vec}; +use parking_lot::Mutex; + +/// Inherents Pool +/// +/// The pool is responsible to collect inherents asynchronously generated +/// by some other parts of the code and make them ready for the next block production. +pub struct InherentsPool { + data: Mutex>, +} + +impl Default for InherentsPool { + fn default() -> Self { + InherentsPool { + data: Default::default(), + } + } +} + +impl fmt::Debug for InherentsPool { + fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { + let mut builder = fmt.debug_struct("InherentsPool"); + if let Some(data) = self.data.try_lock() { + builder.field("data", &*data); + } + builder.finish() + } +} + +impl InherentsPool { + /// Add inherent extrinsic to the pool. + /// + /// This inherent will be appended to the next produced block. + pub fn add(&self, extrinsic: T) { + self.data.lock().push(extrinsic); + } + + /// Drain all currently queued inherents. + pub fn drain(&self) -> Vec { + mem::replace(&mut *self.data.lock(), vec![]) + } +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn should_drain_inherents_to_given_data() { + let pool = InherentsPool::default(); + pool.add(5); + pool.add(7); + + assert_eq!(pool.drain(), vec![5, 7]); + assert_eq!(pool.drain(), vec![]); + } +} diff --git a/core/offchain/Cargo.toml b/core/offchain/Cargo.toml new file mode 100644 index 0000000000..8cd1d2edc5 --- /dev/null +++ b/core/offchain/Cargo.toml @@ -0,0 +1,27 @@ +[package] +description = "Substrate offchain workers" +name = "substrate-offchain" +version = "0.1.0" +license = "GPL-3.0" +authors = ["Parity Technologies "] +edition = "2018" + +[dependencies] +client = { package = "substrate-client", path = "../../core/client" } +consensus = { package = "substrate-consensus-common", path = "../../core/consensus/common" } +futures = "0.1.25" +inherents = { package = "substrate-inherents", path = "../../core/inherents" } +log = "0.4" +offchain-primitives = { package = "substrate-offchain-primitives", path = "./primitives" } +parity-codec = { version = "3.1", features = ["derive"] } +primitives = { package = "substrate-primitives", path = "../../core/primitives" } +runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives" } +tokio = "0.1.7" +transaction_pool = { package = "substrate-transaction-pool", path = "../../core/transaction-pool" } + +[dev-dependencies] +env_logger = "0.6" +test_client = { package = "substrate-test-client", path = "../../core/test-client" } + +[features] +default = [] diff --git a/core/offchain/primitives/Cargo.toml b/core/offchain/primitives/Cargo.toml new file mode 100644 index 0000000000..4d10e08f92 --- /dev/null +++ b/core/offchain/primitives/Cargo.toml @@ -0,0 +1,18 @@ +[package] +description = "Substrate offchain workers primitives" +name = "substrate-offchain-primitives" +version = "0.1.0" +license = "GPL-3.0" +authors = ["Parity Technologies "] +edition = "2018" + +[dependencies] +client = { package = "substrate-client", path = "../../client", default-features = false } +runtime_primitives = { package = "sr-primitives", path = "../../sr-primitives", default-features = false } + +[features] +default = ["std"] +std = [ + "client/std", + "runtime_primitives/std" +] diff --git a/core/offchain/primitives/src/lib.rs b/core/offchain/primitives/src/lib.rs new file mode 100644 index 0000000000..c05e8dceb9 --- /dev/null +++ b/core/offchain/primitives/src/lib.rs @@ -0,0 +1,31 @@ +// Copyright 2018 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 . + +//! The Offchain Worker runtime api primitives. + +#![cfg_attr(not(feature = "std"), no_std)] +#![warn(missing_docs)] + +use client::decl_runtime_apis; +use runtime_primitives::traits::NumberFor; + +decl_runtime_apis! { + /// The offchain worker api. + pub trait OffchainWorkerApi { + /// Starts the off-chain task for given block number. + fn offchain_worker(number: NumberFor); + } +} diff --git a/core/offchain/src/api.rs b/core/offchain/src/api.rs new file mode 100644 index 0000000000..5d2a636be3 --- /dev/null +++ b/core/offchain/src/api.rs @@ -0,0 +1,99 @@ +// 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 . + +use std::sync::Arc; +use futures::{Stream, Future, sync::mpsc}; +use inherents::pool::InherentsPool; +use log::{info, debug, warn}; +use parity_codec::Decode; +use primitives::OffchainExt; +use runtime_primitives::{ + generic::BlockId, + traits::{self, Extrinsic}, +}; +use transaction_pool::txpool::{Pool, ChainApi}; + +/// A message between the offchain extension and the processing thread. +enum ExtMessage { + SubmitExtrinsic(Vec), +} + +/// Asynchronous offchain API. +/// +/// NOTE this is done to prevent recursive calls into the runtime (which are not supported currently). +pub(crate) struct AsyncApi(mpsc::UnboundedSender); + +impl OffchainExt for AsyncApi { + fn submit_extrinsic(&mut self, ext: Vec) { + let _ = self.0.unbounded_send(ExtMessage::SubmitExtrinsic(ext)); + } +} + +/// Offchain extensions implementation API +pub(crate) struct Api { + receiver: Option>, + transaction_pool: Arc>, + inherents_pool: Arc::Extrinsic>>, + at: BlockId, +} + +impl Api { + pub fn new( + transaction_pool: Arc>, + inherents_pool: Arc::Extrinsic>>, + at: BlockId, + ) -> (AsyncApi, Self) { + let (tx, rx) = mpsc::unbounded(); + let api = Self { + receiver: Some(rx), + transaction_pool, + inherents_pool, + at, + }; + (AsyncApi(tx), api) + } + + /// Run a processing task for the API + pub fn process(mut self) -> impl Future { + let receiver = self.receiver.take().expect("Take invoked only once."); + + receiver.for_each(move |msg| { + match msg { + ExtMessage::SubmitExtrinsic(ext) => self.submit_extrinsic(ext), + } + Ok(()) + }) + } + + fn submit_extrinsic(&mut self, ext: Vec) { + let xt = match ::Extrinsic::decode(&mut &*ext) { + Some(xt) => xt, + None => { + warn!("Unable to decode extrinsic: {:?}", ext); + return + }, + }; + + info!("Submitting to the pool: {:?} (isSigned: {:?})", xt, xt.is_signed()); + match self.transaction_pool.submit_one(&self.at, xt.clone()) { + Ok(hash) => debug!("[{:?}] Offchain transaction added to the pool.", hash), + Err(_) => { + debug!("Offchain inherent added to the pool."); + self.inherents_pool.add(xt); + }, + } + } +} diff --git a/core/offchain/src/lib.rs b/core/offchain/src/lib.rs new file mode 100644 index 0000000000..cac960f250 --- /dev/null +++ b/core/offchain/src/lib.rs @@ -0,0 +1,132 @@ +// 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 . + +//! Substrate offchain workers. +//! +//! The offchain workers is a special function of the runtime that +//! gets executed after block is imported. During execution +//! it's able to asynchronously submit extrinsics that will either +//! be propagated to other nodes (transactions) or will be +//! added to the next block produced by the node as inherents. +//! +//! Offchain workers can be used for computation-heavy tasks +//! that are not feasible for execution during regular block processing. +//! It can either be tasks that no consensus is required for, +//! or some form of consensus over the data can be built on-chain +//! for instance via: +//! 1. Challenge period for incorrect computations +//! 2. Majority voting for results +//! 3. etc + +#![warn(missing_docs)] + +use std::{ + marker::PhantomData, + sync::Arc, +}; + +use client::runtime_api::ApiExt; +use inherents::pool::InherentsPool; +use log::{debug, warn}; +use primitives::ExecutionContext; +use runtime_primitives::{ + generic::BlockId, + traits::{self, ProvideRuntimeApi}, +}; +use tokio::runtime::TaskExecutor; +use transaction_pool::txpool::{Pool, ChainApi}; + +mod api; + +pub use offchain_primitives::OffchainWorkerApi; + +/// An offchain workers manager. +#[derive(Debug)] +pub struct OffchainWorkers { + client: Arc, + inherents_pool: Arc::Extrinsic>>, + executor: TaskExecutor, + _block: PhantomData, +} + +impl OffchainWorkers { + /// Creates new `OffchainWorkers`. + pub fn new( + client: Arc, + inherents_pool: Arc::Extrinsic>>, + executor: TaskExecutor, + ) -> Self { + Self { + client, + inherents_pool, + executor, + _block: PhantomData, + } + } +} + +impl OffchainWorkers where + Block: traits::Block, + C: ProvideRuntimeApi, + C::Api: OffchainWorkerApi, +{ + /// Start the offchain workers after given block. + pub fn on_block_imported( + &self, + number: &::Number, + pool: &Arc>, + ) where + A: ChainApi + 'static, + { + let runtime = self.client.runtime_api(); + let at = BlockId::number(*number); + let has_api = runtime.has_api::>(&at); + debug!("Checking offchain workers at {:?}: {:?}", at, has_api); + + if has_api.unwrap_or(false) { + let (api, runner) = api::Api::new(pool.clone(), self.inherents_pool.clone(), at.clone()); + self.executor.spawn(runner.process()); + + debug!("Running offchain workers at {:?}", at); + let api = Box::new(api); + runtime.offchain_worker_with_context(&at, ExecutionContext::OffchainWorker(api), *number).unwrap(); + } + } +} + +#[cfg(test)] +mod tests { + use super::*; + use futures::Future; + + #[test] + fn should_call_into_runtime_and_produce_extrinsic() { + // given + let _ = env_logger::try_init(); + let runtime = tokio::runtime::Runtime::new().unwrap(); + let client = Arc::new(test_client::new()); + let pool = Arc::new(Pool::new(Default::default(), ::transaction_pool::ChainApi::new(client.clone()))); + let inherents = Arc::new(InherentsPool::default()); + + // when + let offchain = OffchainWorkers::new(client, inherents.clone(), runtime.executor()); + offchain.on_block_imported(&0u64, &pool); + + // then + runtime.shutdown_on_idle().wait().unwrap(); + assert_eq!(inherents.drain().len(), 1); + } +} diff --git a/core/primitives/src/lib.rs b/core/primitives/src/lib.rs index 67b99f7ebc..38ecec0fa4 100644 --- a/core/primitives/src/lib.rs +++ b/core/primitives/src/lib.rs @@ -76,6 +76,35 @@ pub use hash_db::Hasher; // pub use self::hasher::blake::BlakeHasher; pub use self::hasher::blake2::Blake2Hasher; +/// Context for executing a call into the runtime. +#[repr(u8)] +pub enum ExecutionContext { + /// Context for general importing (including own blocks). + Importing, + /// Context used when syncing the blockchain. + Syncing, + /// Context used for block construction. + BlockConstruction, + /// Offchain worker context. + OffchainWorker(Box), + /// Context used for other calls. + Other, +} + +/// An extended externalities for offchain workers. +pub trait OffchainExt { + /// Submits an extrinsics. + /// + /// The extrinsic will either go to the pool (signed) + /// or to the next produced block (inherent). + fn submit_extrinsic(&mut self, extrinsic: Vec); +} +impl OffchainExt for Box { + fn submit_extrinsic(&mut self, ex: Vec) { + (&mut **self).submit_extrinsic(ex) + } +} + /// Hex-serialised shim for `Vec`. #[derive(PartialEq, Eq, Clone)] #[cfg_attr(feature = "std", derive(Serialize, Deserialize, Debug, Hash, PartialOrd, Ord))] diff --git a/core/rpc/src/state/mod.rs b/core/rpc/src/state/mod.rs index c2e5f885c9..168c0bd692 100644 --- a/core/rpc/src/state/mod.rs +++ b/core/rpc/src/state/mod.rs @@ -35,7 +35,7 @@ use crate::rpc::futures::{stream, Future, Sink, Stream}; use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{Block as BlockT, Header, ProvideRuntimeApi, As, NumberFor}; use runtime_version::RuntimeVersion; -use state_machine::ExecutionStrategy; +use state_machine::{self, ExecutionStrategy}; use crate::subscriptions::Subscriptions; @@ -298,7 +298,7 @@ impl StateApi for State where .executor() .call( &BlockId::Hash(block), - &method, &data.0, ExecutionStrategy::NativeElseWasm + &method, &data.0, ExecutionStrategy::NativeElseWasm, state_machine::NeverOffchainExt::new(), )?; Ok(Bytes(return_data)) } diff --git a/core/rpc/src/state/tests.rs b/core/rpc/src/state/tests.rs index 436d413b1a..f28e63b15d 100644 --- a/core/rpc/src/state/tests.rs +++ b/core/rpc/src/state/tests.rs @@ -221,7 +221,7 @@ fn should_return_runtime_version() { assert_eq!( ::serde_json::to_string(&api.runtime_version(None.into()).unwrap()).unwrap(), - r#"{"specName":"test","implName":"parity-test","authoringVersion":1,"specVersion":1,"implVersion":1,"apis":[["0xdf6acb689907609b",1],["0x37e397fc7c91f5e4",1],["0xd2bc9897eed08f15",1],["0x40fe3ad401f8959a",2],["0xc6e9a76309f39b09",1],["0xdd718d5cc53262d4",1]]}"# + r#"{"specName":"test","implName":"parity-test","authoringVersion":1,"specVersion":1,"implVersion":1,"apis":[["0xdf6acb689907609b",1],["0x37e397fc7c91f5e4",1],["0xd2bc9897eed08f15",1],["0x40fe3ad401f8959a",2],["0xc6e9a76309f39b09",1],["0xdd718d5cc53262d4",1],["0xf78b278be53f454c",1]]}"# ); } diff --git a/core/service/Cargo.toml b/core/service/Cargo.toml index 353a3a9973..b2f431a5db 100644 --- a/core/service/Cargo.toml +++ b/core/service/Cargo.toml @@ -17,6 +17,7 @@ serde = "1.0" serde_json = "1.0" serde_derive = "1.0" target_info = "0.1" +inherents = { package = "substrate-inherents", path = "../../core/inherents" } keystore = { package = "substrate-keystore", path = "../../core/keystore" } sr-io = { path = "../../core/sr-io" } runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives" } @@ -30,6 +31,7 @@ substrate-executor = { path = "../../core/executor" } transaction_pool = { package = "substrate-transaction-pool", path = "../../core/transaction-pool" } rpc = { package = "substrate-rpc-servers", path = "../../core/rpc-servers" } tel = { package = "substrate-telemetry", path = "../../core/telemetry" } +offchain = { package = "substrate-offchain", path = "../../core/offchain" } [dev-dependencies] substrate-test-client = { path = "../test-client" } diff --git a/core/service/src/chain_spec.rs b/core/service/src/chain_spec.rs index 45b61f0eeb..78aad64dd0 100644 --- a/core/service/src/chain_spec.rs +++ b/core/service/src/chain_spec.rs @@ -116,35 +116,43 @@ impl Clone for ChainSpec { } impl ChainSpec { + /// A list of bootnode addresses. pub fn boot_nodes(&self) -> &[String] { &self.spec.boot_nodes } + /// Spec name. pub fn name(&self) -> &str { &self.spec.name } + /// Spec id. pub fn id(&self) -> &str { &self.spec.id } + /// Telemetry endpoints (if any) pub fn telemetry_endpoints(&self) -> &Option { &self.spec.telemetry_endpoints } + /// Network protocol id. pub fn protocol_id(&self) -> Option<&str> { self.spec.protocol_id.as_ref().map(String::as_str) } + /// Name of the consensus engine. pub fn consensus_engine(&self) -> Option<&str> { self.spec.consensus_engine.as_ref().map(String::as_str) } + /// Additional loosly-typed properties of the chain. pub fn properties(&self) -> Properties { // Return an empty JSON object if 'properties' not defined in config self.spec.properties.as_ref().unwrap_or(&json::map::Map::new()).clone() } + /// Add a bootnode to the list. pub fn add_boot_node(&mut self, addr: Multiaddr) { self.spec.boot_nodes.push(addr.to_string()) } diff --git a/core/service/src/components.rs b/core/service/src/components.rs index 94f5e69c8f..e89921742b 100644 --- a/core/service/src/components.rs +++ b/core/service/src/components.rs @@ -21,7 +21,7 @@ use serde::{Serialize, de::DeserializeOwned}; use tokio::runtime::TaskExecutor; use crate::chain_spec::ChainSpec; use client_db; -use client::{self, Client, runtime_api::{Metadata, TaggedTransactionQueue}}; +use client::{self, Client, runtime_api}; use crate::{error, Service, maybe_start_server}; use consensus_common::import_queue::ImportQueue; use network::{self, OnDemand}; @@ -150,7 +150,7 @@ pub trait StartRPC { impl StartRPC for C where ComponentClient: ProvideRuntimeApi, - as ProvideRuntimeApi>::Api: Metadata>, + as ProvideRuntimeApi>::Api: runtime_api::Metadata>, { type ServersHandle = (Option, Option>); @@ -192,14 +192,14 @@ impl StartRPC for C where /// Something that can maintain transaction pool on every imported block. pub trait MaintainTransactionPool { - fn on_block_imported( + fn maintain_transaction_pool( id: &BlockId>, client: &ComponentClient, transaction_pool: &TransactionPool, ) -> error::Result<()>; } -fn on_block_imported( +fn maintain_transaction_pool( id: &BlockId, client: &Client, transaction_pool: &TransactionPool, @@ -207,7 +207,7 @@ fn on_block_imported( Block: BlockT::Out>, Backend: client::backend::Backend, Client: ProvideRuntimeApi, - as ProvideRuntimeApi>::Api: TaggedTransactionQueue, + as ProvideRuntimeApi>::Api: runtime_api::TaggedTransactionQueue, Executor: client::CallExecutor, PoolApi: txpool::ChainApi, { @@ -227,14 +227,35 @@ fn on_block_imported( impl MaintainTransactionPool for C where ComponentClient: ProvideRuntimeApi, - as ProvideRuntimeApi>::Api: TaggedTransactionQueue>, + as ProvideRuntimeApi>::Api: runtime_api::TaggedTransactionQueue>, { - fn on_block_imported( + fn maintain_transaction_pool( id: &BlockId>, client: &ComponentClient, transaction_pool: &TransactionPool, ) -> error::Result<()> { - on_block_imported(id, client, transaction_pool) + maintain_transaction_pool(id, client, transaction_pool) + } +} + +pub trait OffchainWorker { + fn offchain_workers( + number: &FactoryBlockNumber, + offchain: &offchain::OffchainWorkers, ComponentBlock>, + pool: &Arc>, + ) -> error::Result<()>; +} + +impl OffchainWorker for C where + ComponentClient: ProvideRuntimeApi, + as ProvideRuntimeApi>::Api: offchain::OffchainWorkerApi>, +{ + fn offchain_workers( + number: &FactoryBlockNumber, + offchain: &offchain::OffchainWorkers, ComponentBlock>, + pool: &Arc>, + ) -> error::Result<()> { + Ok(offchain.on_block_imported(number, pool)) } } @@ -246,9 +267,16 @@ pub trait ServiceTrait: + 'static + StartRPC + MaintainTransactionPool + + OffchainWorker {} impl ServiceTrait for T where - T: Deref> + Send + Sync + 'static + StartRPC + MaintainTransactionPool + T: Deref> + + Send + + Sync + + 'static + + StartRPC + + MaintainTransactionPool + + OffchainWorker {} /// A collection of types and methods to build a service on top of the substrate service. @@ -338,17 +366,14 @@ pub trait Components: Sized + 'static { type Executor: 'static + client::CallExecutor, Blake2Hasher> + Send + Sync + Clone; /// The type that implements the runtime API. type RuntimeApi: Send + Sync; - /// A type that can start the RPC. - type RPC: StartRPC; + /// A type that can start all runtime-dependent services. + type RuntimeServices: ServiceTrait; // TODO: Traitify transaction pool and allow people to implement their own. (#1242) - /// A type that can maintain transaction pool. - type TransactionPool: MaintainTransactionPool; /// Extrinsic pool type. type TransactionPoolApi: 'static + txpool::ChainApi< Hash = as BlockT>::Hash, Block = FactoryBlock >; - /// Our Import Queue type ImportQueue: ImportQueue> + 'static; @@ -382,6 +407,7 @@ pub struct FullComponents { } impl FullComponents { + /// Create new `FullComponents` pub fn new( config: FactoryFullConfiguration, task_executor: TaskExecutor @@ -416,8 +442,7 @@ impl Components for FullComponents { type TransactionPoolApi = ::FullTransactionPoolApi; type ImportQueue = Factory::FullImportQueue; type RuntimeApi = Factory::RuntimeApi; - type RPC = Factory::FullService; - type TransactionPool = Factory::FullService; + type RuntimeServices = Factory::FullService; fn build_client( config: &FactoryFullConfiguration, @@ -462,6 +487,7 @@ pub struct LightComponents { } impl LightComponents { + /// Create new `LightComponents` pub fn new( config: FactoryFullConfiguration, task_executor: TaskExecutor @@ -490,8 +516,7 @@ impl Components for LightComponents { type TransactionPoolApi = ::LightTransactionPoolApi; type ImportQueue = ::LightImportQueue; type RuntimeApi = Factory::RuntimeApi; - type RPC = Factory::LightService; - type TransactionPool = Factory::LightService; + type RuntimeServices = Factory::LightService; fn build_client( config: &FactoryFullConfiguration, @@ -564,7 +589,7 @@ mod tests { // fire notification - this should clean up the queue assert_eq!(pool.status().ready, 1); - on_block_imported( + maintain_transaction_pool( &id, &client, &pool, diff --git a/core/service/src/config.rs b/core/service/src/config.rs index 7bafa4c83e..b7a3b8ba14 100644 --- a/core/service/src/config.rs +++ b/core/service/src/config.rs @@ -68,6 +68,8 @@ pub struct Configuration { pub telemetry_endpoints: Option, /// The default number of 64KB pages to allocate for Wasm execution pub default_heap_pages: Option, + /// Should offchain workers be executed. + pub offchain_worker: bool, /// Enable authoring even when offline. pub force_authoring: bool, /// Disable GRANDPA when running in validator mode @@ -97,6 +99,7 @@ impl Configuration { client: Arc>, network: Option>>, transaction_pool: Arc>, + inherents_pool: Arc>>, keystore: Keystore, exit: ::exit_future::Exit, signal: Option, @@ -77,6 +80,7 @@ pub struct Service { pub config: FactoryFullConfiguration, _rpc: Box<::std::any::Any + Send + Sync>, _telemetry: Option>, + _offchain_workers: Option, ComponentBlock>>>, } /// Creates bare client without any networking. @@ -96,9 +100,7 @@ impl Service { pub fn new( mut config: FactoryFullConfiguration, task_executor: TaskExecutor, - ) - -> Result - { + ) -> Result { let (signal, exit) = ::exit_future::signal(); // Create client @@ -169,24 +171,48 @@ impl Service { )?; on_demand.map(|on_demand| on_demand.set_network_sender(network_chan)); + let inherents_pool = Arc::new(InherentsPool::default()); + let offchain_workers = if config.offchain_worker { + Some(Arc::new(offchain::OffchainWorkers::new( + client.clone(), + inherents_pool.clone(), + task_executor.clone(), + ))) + } else { + None + }; + { // block notifications let network = Arc::downgrade(&network); let txpool = Arc::downgrade(&transaction_pool); let wclient = Arc::downgrade(&client); + let offchain = offchain_workers.as_ref().map(Arc::downgrade); let events = client.import_notification_stream() .for_each(move |notification| { + let number = *notification.header.number(); + if let Some(network) = network.upgrade() { network.on_block_imported(notification.hash, notification.header); } + if let (Some(txpool), Some(client)) = (txpool.upgrade(), wclient.upgrade()) { - Components::TransactionPool::on_block_imported( + Components::RuntimeServices::maintain_transaction_pool( &BlockId::hash(notification.hash), &*client, &*txpool, ).map_err(|e| warn!("Pool error processing new block: {:?}", e))?; } + + if let (Some(txpool), Some(offchain)) = (txpool.upgrade(), offchain.as_ref().and_then(|o| o.upgrade())) { + Components::RuntimeServices::offchain_workers( + &number, + &offchain, + &txpool, + ).map_err(|e| warn!("Offchain workers error processing new block: {:?}", e))?; + } + Ok(()) }) .select(exit.clone()) @@ -264,7 +290,7 @@ impl Service { impl_version: config.impl_version.into(), properties: config.chain_spec.properties(), }; - let rpc = Components::RPC::start_rpc( + let rpc = Components::RuntimeServices::start_rpc( client.clone(), network.clone(), has_bootnodes, system_info, config.rpc_http, config.rpc_ws, task_executor.clone(), transaction_pool.clone(), )?; @@ -299,12 +325,14 @@ impl Service { client, network: Some(network), transaction_pool, + inherents_pool, signal: Some(signal), keystore, config, exit, _rpc: Box::new(rpc), _telemetry: telemetry, + _offchain_workers: offchain_workers, }) } @@ -321,6 +349,7 @@ impl Service { } } + /// return a shared instance of Telemtry (if enabled) pub fn telemetry(&self) -> Option> { self._telemetry.as_ref().map(|t| t.clone()) } @@ -337,11 +366,16 @@ impl Service where Components: components::Components { self.network.as_ref().expect("self.network always Some").clone() } - /// Get shared extrinsic pool instance. + /// Get shared transaction pool instance. pub fn transaction_pool(&self) -> Arc> { self.transaction_pool.clone() } + /// Get shared inherents pool instance. + pub fn inherents_pool(&self) -> Arc>> { + self.inherents_pool.clone() + } + /// Get shared keystore. pub fn keystore(&self) -> &Keystore { &self.keystore diff --git a/core/service/test/src/lib.rs b/core/service/test/src/lib.rs index 03047a3a9f..1735382bb2 100644 --- a/core/service/test/src/lib.rs +++ b/core/service/test/src/lib.rs @@ -120,6 +120,7 @@ fn node_config ( rpc_ws: None, telemetry_endpoints: None, default_heap_pages: None, + offchain_worker: false, force_authoring: false, disable_grandpa: false, } diff --git a/core/sr-api-macros/src/impl_runtime_apis.rs b/core/sr-api-macros/src/impl_runtime_apis.rs index 5cfb5fcc93..8bdf977303 100644 --- a/core/sr-api-macros/src/impl_runtime_apis.rs +++ b/core/sr-api-macros/src/impl_runtime_apis.rs @@ -469,7 +469,7 @@ impl<'a> Fold for ApiRuntimeImplToApiRuntimeApiImpl<'a> { }; let context_arg: syn::FnArg = parse_quote!( context: #crate_::runtime_api::ExecutionContext ); - + // Rewrite the input parameters. input.sig.decl.inputs = parse_quote! { &self, at: &#block_id, #context_arg, params: Option<( #( #param_types ),* )>, params_encoded: Vec @@ -615,7 +615,7 @@ fn generate_runtime_api_versions(impls: &[ItemImpl]) -> Result { pub fn impl_runtime_apis_impl(input: proc_macro::TokenStream) -> proc_macro::TokenStream { // Parse all impl blocks let RuntimeApiImpls { impls: api_impls } = parse_macro_input!(input as RuntimeApiImpls); - + let dispatch_impl = unwrap_or_error(generate_dispatch_function(&api_impls)); let api_impls_for_runtime = unwrap_or_error(generate_api_impl_for_runtime(&api_impls)); let base_runtime_api = unwrap_or_error(generate_runtime_api_base_structures(&api_impls)); diff --git a/core/sr-io/with_std.rs b/core/sr-io/with_std.rs index 8f9a67c167..1f4ce56fc9 100644 --- a/core/sr-io/with_std.rs +++ b/core/sr-io/with_std.rs @@ -218,6 +218,14 @@ pub fn secp256k1_ecdsa_recover(sig: &[u8; 65], msg: &[u8; 32]) -> Result<[u8; 64 Ok(res) } +/// Submit extrinsic. +pub fn submit_extrinsic(data: &T) { + ext::with(|ext| ext + .submit_extrinsic(codec::Encode::encode(data)) + .expect("submit_extrinsic can be called only in offchain worker context") + ).expect("submit_extrinsic cannot be called outside of an Externalities-provided environment.") +} + /// Execute the given closure with global function available whose functionality routes into the /// externalities `ext`. Forwards the value that the closure returns. // NOTE: need a concrete hasher here due to limitations of the `environmental!` macro, otherwise a type param would have been fine I think. diff --git a/core/sr-io/without_std.rs b/core/sr-io/without_std.rs index e3cf8318a6..a4d62df30b 100644 --- a/core/sr-io/without_std.rs +++ b/core/sr-io/without_std.rs @@ -283,6 +283,13 @@ extern_functions! { fn ext_sr25519_verify(msg_data: *const u8, msg_len: u32, sig_data: *const u8, pubkey_data: *const u8) -> u32; /// Note: ext_secp256k1_ecdsa_recover returns 0 if the signature is correct, nonzero otherwise. fn ext_secp256k1_ecdsa_recover(msg_data: *const u8, sig_data: *const u8, pubkey_data: *mut u8) -> u32; + + //================================ + // Offchain-worker Context + //================================ + + /// Submit extrinsic. + fn ext_submit_extrinsic(data: *const u8, len: u32); } /// Ensures we use the right crypto when calling into native @@ -594,6 +601,18 @@ pub fn secp256k1_ecdsa_recover(sig: &[u8; 65], msg: &[u8; 32]) -> Result<[u8; 64 } } +/// Submit extrinsic from the runtime. +/// +/// Depending on the kind of extrinsic it will either be: +/// 1. scheduled to be included in the next produced block (inherent) +/// 2. added to the pool and propagated (transaction) +pub fn submit_extrinsic(data: &T) { + let encoded_data = codec::Encode::encode(data); + unsafe { + ext_submit_extrinsic.get()(encoded_data.as_ptr(), encoded_data.len() as u32) + } +} + /// Trait for things which can be printed. pub trait Printable { fn print(self); diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index efaf4146fc..2a53c7ba4c 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -393,21 +393,6 @@ impl From for AnySignature { } } -/// Context for executing a call into the runtime. -#[derive(Copy, Clone, Eq, PartialEq, Encode, Decode)] -#[cfg_attr(feature = "std", derive(Debug, Serialize))] -#[repr(u8)] -pub enum ExecutionContext { - /// Context for general importing (including own blocks). - Importing, - /// Context used when syncing the blockchain. - Syncing, - /// Context used for block construction. - BlockConstruction, - /// Context used for other calls. - Other, -} - #[derive(Eq, PartialEq, Clone, Copy, Decode)] #[cfg_attr(feature = "std", derive(Debug, Serialize))] #[repr(u8)] diff --git a/core/sr-primitives/src/traits.rs b/core/sr-primitives/src/traits.rs index e5a58850e7..ef3f133df6 100644 --- a/core/sr-primitives/src/traits.rs +++ b/core/sr-primitives/src/traits.rs @@ -270,6 +270,24 @@ pub trait OnInitialise { impl OnInitialise for () {} +/// Off-chain computation trait. +/// +/// Implementing this trait on a module allows you to perform a long-running tasks +/// that make validators generate extrinsics (either transactions or inherents) +/// with results of those long-running computations. +/// +/// NOTE: This function runs off-chain, so it can access the block state, +/// but cannot preform any alterations. +pub trait OffchainWorker { + /// This function is being called on every block. + /// + /// Implement this and use special `extern`s to generate transactions or inherents. + /// Any state alterations are lost and are not persisted. + fn generate_extrinsics(_n: BlockNumber) {} +} + +impl OffchainWorker for () {} + macro_rules! tuple_impl { ($one:ident,) => { impl> OnFinalise for ($one,) { @@ -282,6 +300,11 @@ macro_rules! tuple_impl { $one::on_initialise(n); } } + impl> OffchainWorker for ($one,) { + fn generate_extrinsics(n: Number) { + $one::generate_extrinsics(n); + } + } }; ($first:ident, $($rest:ident,)+) => { impl< @@ -304,6 +327,16 @@ macro_rules! tuple_impl { $($rest::on_initialise(n);)+ } } + impl< + Number: Copy, + $first: OffchainWorker, + $($rest: OffchainWorker),+ + > OffchainWorker for ($first, $($rest),+) { + fn generate_extrinsics(n: Number) { + $first::generate_extrinsics(n); + $($rest::generate_extrinsics(n);)+ + } + } tuple_impl!($($rest,)+); } } diff --git a/core/state-machine/src/basic.rs b/core/state-machine/src/basic.rs index ead191a3c0..7b2a95464e 100644 --- a/core/state-machine/src/basic.rs +++ b/core/state-machine/src/basic.rs @@ -24,6 +24,7 @@ use trie::trie_root; use primitives::storage::well_known_keys::{CHANGES_TRIE_CONFIG, CODE, HEAP_PAGES}; use parity_codec::Encode; use super::{Externalities, OverlayedChanges}; +use log::warn; /// Simple HashMap-based Externalities impl. pub struct BasicExternalities { @@ -151,6 +152,11 @@ impl Externalities for BasicExternalities where H::Out: Ord + Heap fn storage_changes_root(&mut self, _parent: H::Out, _parent_num: u64) -> Option { None } + + fn submit_extrinsic(&mut self, _extrinsic: Vec) -> Result<(), ()> { + warn!("Call to submit_extrinsic without offchain externalities set."); + Err(()) + } } #[cfg(test)] diff --git a/core/state-machine/src/ext.rs b/core/state-machine/src/ext.rs index abfde7ee7b..33074c7059 100644 --- a/core/state-machine/src/ext.rs +++ b/core/state-machine/src/ext.rs @@ -20,7 +20,7 @@ use std::{error, fmt, cmp::Ord}; use log::warn; use crate::backend::{Backend, Consolidate}; use crate::changes_trie::{AnchorBlockId, Storage as ChangesTrieStorage, compute_changes_trie_root}; -use crate::{Externalities, OverlayedChanges}; +use crate::{Externalities, OverlayedChanges, OffchainExt}; use hash_db::Hasher; use primitives::storage::well_known_keys::is_child_storage_key; use trie::{MemoryDB, TrieDBMut, TrieMut, default_child_trie_root, is_child_trie_key_valid}; @@ -58,12 +58,11 @@ impl error::Error for Error { } /// Wraps a read-only backend, call executor, and current overlayed changes. -pub struct Ext<'a, H, B, T> +pub struct Ext<'a, H, B, T, O> where H: Hasher, B: 'a + Backend, - T: 'a + ChangesTrieStorage, { /// The overlayed changes to write to. overlay: &'a mut OverlayedChanges, @@ -81,23 +80,34 @@ where /// `storage_changes_root` is called matters + we need to remember additional /// data at this moment (block number). changes_trie_transaction: Option<(u64, MemoryDB, H::Out)>, + /// Additional externalities for offchain workers. + /// + /// If None, some methods from the trait might not supported. + offchain_externalities: Option<&'a mut O>, } -impl<'a, H, B, T> Ext<'a, H, B, T> +impl<'a, H, B, T, O> Ext<'a, H, B, T, O> where H: Hasher, B: 'a + Backend, T: 'a + ChangesTrieStorage, + O: 'a + OffchainExt, H::Out: Ord + HeapSizeOf, { /// Create a new `Ext` from overlayed changes and read-only backend - pub fn new(overlay: &'a mut OverlayedChanges, backend: &'a B, changes_trie_storage: Option<&'a T>) -> Self { + pub fn new( + overlay: &'a mut OverlayedChanges, + backend: &'a B, + changes_trie_storage: Option<&'a T>, + offchain_externalities: Option<&'a mut O>, + ) -> Self { Ext { overlay, backend, storage_transaction: None, changes_trie_storage, changes_trie_transaction: None, + offchain_externalities, } } @@ -152,12 +162,13 @@ where } #[cfg(test)] -impl<'a, H, B, T> Ext<'a, H, B, T> +impl<'a, H, B, T, O> Ext<'a, H, B, T, O> where H: Hasher, B: 'a + Backend, T: 'a + ChangesTrieStorage, + O: 'a + OffchainExt, { pub fn storage_pairs(&self) -> Vec<(Vec, Vec)> { use std::collections::HashMap; @@ -173,11 +184,12 @@ where } } -impl<'a, B: 'a, T: 'a, H> Externalities for Ext<'a, H, B, T> +impl<'a, B, T, H, O> Externalities for Ext<'a, H, B, T, O> where H: Hasher, B: 'a + Backend, T: 'a + ChangesTrieStorage, + O: 'a + OffchainExt, H::Out: Ord + HeapSizeOf, { fn storage(&self, key: &[u8]) -> Option> { @@ -329,6 +341,17 @@ where self.changes_trie_transaction = root_and_tx; root } + + fn submit_extrinsic(&mut self, extrinsic: Vec) -> Result<(), ()> { + let _guard = panic_handler::AbortGuard::new(true); + if let Some(ext) = self.offchain_externalities.as_mut() { + ext.submit_extrinsic(extrinsic); + Ok(()) + } else { + warn!("Call to submit_extrinsic without offchain externalities set."); + Err(()) + } + } } #[cfg(test)] @@ -345,7 +368,7 @@ mod tests { type TestBackend = InMemory; type TestChangesTrieStorage = InMemoryChangesTrieStorage; - type TestExt<'a> = Ext<'a, Blake2Hasher, TestBackend, TestChangesTrieStorage>; + type TestExt<'a> = Ext<'a, Blake2Hasher, TestBackend, TestChangesTrieStorage, crate::NeverOffchainExt>; fn prepare_overlay_with_changes() -> OverlayedChanges { OverlayedChanges { @@ -371,7 +394,7 @@ mod tests { fn storage_changes_root_is_none_when_storage_is_not_provided() { let mut overlay = prepare_overlay_with_changes(); let backend = TestBackend::default(); - let mut ext = TestExt::new(&mut overlay, &backend, None); + let mut ext = TestExt::new(&mut overlay, &backend, None, None); assert_eq!(ext.storage_changes_root(Default::default(), 100), None); } @@ -381,7 +404,7 @@ mod tests { overlay.changes_trie_config = None; let storage = TestChangesTrieStorage::new(); let backend = TestBackend::default(); - let mut ext = TestExt::new(&mut overlay, &backend, Some(&storage)); + let mut ext = TestExt::new(&mut overlay, &backend, Some(&storage), None); assert_eq!(ext.storage_changes_root(Default::default(), 100), None); } @@ -390,7 +413,7 @@ mod tests { let mut overlay = prepare_overlay_with_changes(); let storage = TestChangesTrieStorage::new(); let backend = TestBackend::default(); - let mut ext = TestExt::new(&mut overlay, &backend, Some(&storage)); + let mut ext = TestExt::new(&mut overlay, &backend, Some(&storage), None); assert_eq!(ext.storage_changes_root(Default::default(), 99), Some(hex!("5b829920b9c8d554a19ee2a1ba593c4f2ee6fc32822d083e04236d693e8358d5").into())); } @@ -401,7 +424,7 @@ mod tests { overlay.prospective.top.get_mut(&vec![1]).unwrap().value = None; let storage = TestChangesTrieStorage::new(); let backend = TestBackend::default(); - let mut ext = TestExt::new(&mut overlay, &backend, Some(&storage)); + let mut ext = TestExt::new(&mut overlay, &backend, Some(&storage), None); assert_eq!(ext.storage_changes_root(Default::default(), 99), Some(hex!("bcf494e41e29a15c9ae5caa053fe3cb8b446ee3e02a254efbdec7a19235b76e4").into())); } diff --git a/core/state-machine/src/lib.rs b/core/state-machine/src/lib.rs index 135c1dfc6b..0500aa72cf 100644 --- a/core/state-machine/src/lib.rs +++ b/core/state-machine/src/lib.rs @@ -23,7 +23,7 @@ use log::warn; use hash_db::Hasher; use heapsize::HeapSizeOf; use parity_codec::{Decode, Encode}; -use primitives::{storage::well_known_keys, NativeOrEncoded, NeverNativeValue}; +use primitives::{storage::well_known_keys, NativeOrEncoded, NeverNativeValue, OffchainExt}; pub mod backend; mod changes_trie; @@ -153,6 +153,25 @@ pub trait Externalities { /// Get the change trie root of the current storage overlay at a block with given parent. fn storage_changes_root(&mut self, parent: H::Out, parent_num: u64) -> Option where H::Out: Ord; + + /// Submit extrinsic. + /// + /// Returns an error in case the API is not available. + fn submit_extrinsic(&mut self, extrinsic: Vec) -> Result<(), ()>; +} + +/// An implementation of offchain extensions that should never be triggered. +pub enum NeverOffchainExt {} + +impl NeverOffchainExt { + /// Create new offchain extensions. + pub fn new<'a>() -> Option<&'a mut Self> { + None + } +} + +impl OffchainExt for NeverOffchainExt { + fn submit_extrinsic(&mut self, _extrinsic: Vec) { unreachable!() } } /// Code execution engine. @@ -252,17 +271,19 @@ pub fn always_wasm() -> ExecutionManager> { } /// Creates new substrate state machine. -pub fn new<'a, H, B, T, Exec>( +pub fn new<'a, H, B, T, O, Exec>( backend: &'a B, changes_trie_storage: Option<&'a T>, + offchain_ext: Option<&'a mut O>, overlay: &'a mut OverlayedChanges, exec: &'a Exec, method: &'a str, call_data: &'a [u8], -) -> StateMachine<'a, H, B, T, Exec> { +) -> StateMachine<'a, H, B, T, O, Exec> { StateMachine { backend, changes_trie_storage, + offchain_ext, overlay, exec, method, @@ -272,9 +293,10 @@ pub fn new<'a, H, B, T, Exec>( } /// The substrate state machine. -pub struct StateMachine<'a, H, B, T, Exec> { +pub struct StateMachine<'a, H, B, T, O, Exec> { backend: &'a B, changes_trie_storage: Option<&'a T>, + offchain_ext: Option<&'a mut O>, overlay: &'a mut OverlayedChanges, exec: &'a Exec, method: &'a str, @@ -282,11 +304,12 @@ pub struct StateMachine<'a, H, B, T, Exec> { _hasher: PhantomData, } -impl<'a, H, B, T, Exec> StateMachine<'a, H, B, T, Exec> where +impl<'a, H, B, T, O, Exec> StateMachine<'a, H, B, T, O, Exec> where H: Hasher, Exec: CodeExecutor, B: Backend, T: ChangesTrieStorage, + O: OffchainExt, H::Out: Ord + HeapSizeOf, { /// Execute a call using the given state backend, overlayed changes, and call executor. @@ -324,7 +347,13 @@ impl<'a, H, B, T, Exec> StateMachine<'a, H, B, T, Exec> where R: Decode + Encode + PartialEq, NC: FnOnce() -> result::Result + UnwindSafe, { - let mut externalities = ext::Ext::new(self.overlay, self.backend, self.changes_trie_storage); + let offchain = self.offchain_ext.as_mut(); + let mut externalities = ext::Ext::new( + self.overlay, + self.backend, + self.changes_trie_storage, + offchain.map(|x| &mut **x), + ); let (result, was_native) = self.exec.call( &mut externalities, self.method, @@ -505,6 +534,7 @@ where let mut sm = StateMachine { backend: &proving_backend, changes_trie_storage: None as Option<&changes_trie::InMemoryStorage>, + offchain_ext: NeverOffchainExt::new(), overlay, exec, method, @@ -554,6 +584,7 @@ where let mut sm = StateMachine { backend: trie_backend, changes_trie_storage: None as Option<&changes_trie::InMemoryStorage>, + offchain_ext: NeverOffchainExt::new(), overlay, exec, method, @@ -730,6 +761,7 @@ mod tests { assert_eq!(new( &trie_backend::tests::test_trie(), Some(&InMemoryChangesTrieStorage::new()), + NeverOffchainExt::new(), &mut Default::default(), &DummyCodeExecutor { change_changes_trie_config: false, @@ -750,6 +782,7 @@ mod tests { assert_eq!(new( &trie_backend::tests::test_trie(), Some(&InMemoryChangesTrieStorage::new()), + NeverOffchainExt::new(), &mut Default::default(), &DummyCodeExecutor { change_changes_trie_config: false, @@ -770,6 +803,7 @@ mod tests { assert!(new( &trie_backend::tests::test_trie(), Some(&InMemoryChangesTrieStorage::new()), + NeverOffchainExt::new(), &mut Default::default(), &DummyCodeExecutor { change_changes_trie_config: false, @@ -838,7 +872,7 @@ mod tests { { let changes_trie_storage = InMemoryChangesTrieStorage::new(); - let mut ext = Ext::new(&mut overlay, &backend, Some(&changes_trie_storage)); + let mut ext = Ext::new(&mut overlay, &backend, Some(&changes_trie_storage), NeverOffchainExt::new()); ext.clear_prefix(b"ab"); } overlay.commit_prospective(); @@ -862,7 +896,7 @@ mod tests { let backend = InMemory::::default().try_into_trie_backend().unwrap(); let changes_trie_storage = InMemoryChangesTrieStorage::new(); let mut overlay = OverlayedChanges::default(); - let mut ext = Ext::new(&mut overlay, &backend, Some(&changes_trie_storage)); + let mut ext = Ext::new(&mut overlay, &backend, Some(&changes_trie_storage), NeverOffchainExt::new()); assert!(ext.set_child_storage(b":child_storage:testchild".to_vec(), b"abc".to_vec(), b"def".to_vec())); assert_eq!(ext.child_storage(b":child_storage:testchild", b"abc"), Some(b"def".to_vec())); @@ -889,6 +923,7 @@ mod tests { assert!(new( &trie_backend::tests::test_trie(), Some(&InMemoryChangesTrieStorage::new()), + NeverOffchainExt::new(), &mut Default::default(), &DummyCodeExecutor { change_changes_trie_config: true, @@ -908,6 +943,7 @@ mod tests { assert!(new( &trie_backend::tests::test_trie(), Some(&InMemoryChangesTrieStorage::new()), + NeverOffchainExt::new(), &mut Default::default(), &DummyCodeExecutor { change_changes_trie_config: true, diff --git a/core/state-machine/src/overlayed_changes.rs b/core/state-machine/src/overlayed_changes.rs index 865ee86105..56e69323e8 100644 --- a/core/state-machine/src/overlayed_changes.rs +++ b/core/state-machine/src/overlayed_changes.rs @@ -375,7 +375,12 @@ mod tests { }; let changes_trie_storage = InMemoryChangesTrieStorage::new(); - let mut ext = Ext::new(&mut overlay, &backend, Some(&changes_trie_storage)); + let mut ext = Ext::new( + &mut overlay, + &backend, + Some(&changes_trie_storage), + crate::NeverOffchainExt::new(), + ); const ROOT: [u8; 32] = hex!("0b41e488cccbd67d1f1089592c2c235f5c5399b053f7fe9152dd4b5f279914cd"); assert_eq!(ext.storage_root(), H256::from(ROOT)); } diff --git a/core/state-machine/src/testing.rs b/core/state-machine/src/testing.rs index a9ed13eb8e..d03cc8e76d 100644 --- a/core/state-machine/src/testing.rs +++ b/core/state-machine/src/testing.rs @@ -168,6 +168,10 @@ impl Externalities for TestExternalities where H::Out: Ord + He &AnchorBlockId { hash: parent, number: parent_num }, ).map(|(root, _)| root.clone()) } + + fn submit_extrinsic(&mut self, _extrinsic: Vec) -> Result<(), ()> { + unimplemented!() + } } #[cfg(test)] diff --git a/core/test-client/src/lib.rs b/core/test-client/src/lib.rs index 6eb6db4d4b..4a99df65a5 100644 --- a/core/test-client/src/lib.rs +++ b/core/test-client/src/lib.rs @@ -128,6 +128,7 @@ pub fn new_with_execution_strategy( syncing: execution_strategy, importing: execution_strategy, block_construction: execution_strategy, + offchain_worker: execution_strategy, other: execution_strategy, }; diff --git a/core/test-runtime/Cargo.toml b/core/test-runtime/Cargo.toml index 812dd4bc28..6132cbbb1a 100644 --- a/core/test-runtime/Cargo.toml +++ b/core/test-runtime/Cargo.toml @@ -20,6 +20,7 @@ runtime_io = { package = "sr-io", path = "../sr-io", 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 } runtime_support = { package = "srml-support", path = "../../srml/support", default-features = false } +offchain-primitives = { package = "substrate-offchain-primitives", path = "../offchain/primitives", default-features = false} executive = { package = "srml-executive", path = "../../srml/executive", default-features = false } cfg-if = "0.1.6" @@ -45,5 +46,6 @@ std = [ "runtime_primitives/std", "runtime_version/std", "consensus_aura/std", + "offchain-primitives/std", "executive/std", ] diff --git a/core/test-runtime/src/lib.rs b/core/test-runtime/src/lib.rs index 36950bfb1b..74ec56240c 100644 --- a/core/test-runtime/src/lib.rs +++ b/core/test-runtime/src/lib.rs @@ -94,6 +94,7 @@ impl Transfer { pub enum Extrinsic { AuthoritiesChange(Vec), Transfer(Transfer, AccountSignature), + IncludeData(Vec), } #[cfg(feature = "std")] @@ -117,6 +118,7 @@ impl BlindCheckable for Extrinsic { Err(runtime_primitives::BAD_SIGNATURE) } }, + Extrinsic::IncludeData(data) => Ok(Extrinsic::IncludeData(data)), } } } @@ -377,6 +379,13 @@ cfg_if! { impl consensus_aura::AuraApi for Runtime { fn slot_duration() -> u64 { 1 } } + + impl offchain_primitives::OffchainWorkerApi for Runtime { + fn offchain_worker(block: u64) { + let ex = Extrinsic::IncludeData(block.encode()); + runtime_io::submit_extrinsic(&ex) + } + } } } else { impl_runtime_apis! { @@ -480,6 +489,13 @@ cfg_if! { impl consensus_aura::AuraApi for Runtime { fn slot_duration() -> u64 { 1 } } + + impl offchain_primitives::OffchainWorkerApi for Runtime { + fn offchain_worker(block: u64) { + let ex = Extrinsic::IncludeData(block.encode()); + runtime_io::submit_extrinsic(&ex) + } + } } } } \ No newline at end of file diff --git a/core/test-runtime/src/system.rs b/core/test-runtime/src/system.rs index d48fd153da..ffc01182d4 100644 --- a/core/test-runtime/src/system.rs +++ b/core/test-runtime/src/system.rs @@ -242,6 +242,7 @@ fn execute_transaction_backend(utx: &Extrinsic) -> ApplyResult { match utx { Extrinsic::Transfer(ref transfer, _) => execute_transfer_backend(transfer), Extrinsic::AuthoritiesChange(ref new_auth) => execute_new_authorities_backend(new_auth), + Extrinsic::IncludeData(_) => Ok(ApplyOutcome::Success), } } diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index 028bd07427..d8eda0e88e 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -2346,6 +2346,14 @@ dependencies = [ "substrate-primitives 0.1.0", ] +[[package]] +name = "substrate-offchain-primitives" +version = "0.1.0" +dependencies = [ + "sr-primitives 0.1.0", + "substrate-client 0.1.0", +] + [[package]] name = "substrate-panic-handler" version = "0.1.0" @@ -2446,6 +2454,7 @@ dependencies = [ "substrate-consensus-aura-primitives 0.1.0", "substrate-inherents 0.1.0", "substrate-keyring 0.1.0", + "substrate-offchain-primitives 0.1.0", "substrate-primitives 0.1.0", ] diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 7b12560812913919885bb94ea0f66ed671d2558c..a7de97ffb9e649e474fabdee7525fa30f3df5715 100644 GIT binary patch delta 20972 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 delta 18406 zcmb_^33yz^mF}&3yIZ|Vw`FUWrQ2;`w`|##)KYiLtFDZ^fL9FIW)oUk;PwW#Y?csO zB*ZabjBt^}>?U~uLkt*1V!|p2FOMVyOk#pb!bFqt3!a%T88egbP4dX{{&ViVt(NS3 z?`6IRpYL+2Zq=z%=bZY_sZ!tn6YcJow4v*?VKsE`&e!EiF`%wmDZeM?A5dq82k#wG z0$Ii6d%+9tN;zL$b;)`9;_W-qUER9|uHC+4)4-74`Sn&n+R-CMf1^`^VF_bUtKD_WIUBu}DpyZlTugej|CQ$>etch!|I zp6qWb7Y@r8t9ia^1dS*glP)?VcQx8JKP-HKkQ1pJD5@}3bzpCc3Q-D3Ul z)9(F3te5i(ZpHQGf;6rX?{-}8^Sk;b<`AG73zuUaZJ_0#oHsAS|B`+=QkYf)}IGZNX|WNj?&+0p-=; z+Od{=23i`f4hdqcrf}7S5_xmsuf^oyD~md{U3mt#-z@WVg&V4d8o9ktxO3R9*l%+CTe8pmF&1HC~HIHH_`h|gzV(z_TL@}fK z1&U2v75JG;Q?ugM!t7K9d~S}abqWOR%@{)0wo+ zsbJvAu&QU(TOsMAnj>jtuHv;vhbE&i&6w(nx=dwh)D8aSO|>mGhKqW|_`Fd(3BzTI zr6JW+A_erNyvnG_vRObxZbPF{3vd|qLaWe^E1{C)QId(e>Dgn}t_*qb>5#~n<(a6D z`==*=y`m&FQUEH_Gf|pMFFysx6?rq!kX3}I!g?iZeP*cjiZ`hZVV=z)jTS?zyK!lKgRYLw||StGZUF4!Z;>Dm`4g6cG%`YYDw*kYN#FP z+g1TL<_5E7dY4y4^X5@L5Urk$39HwUv-xbOk~IUmqitFvya?j%U?sKuNkN{0ca zgGY<5XU5UNsYUmW(TC6u(`j%M=-dv`?RK)PK~Be1P@ZduI6JN;wWAn0J)gnzkZKC( zvM1sqD^yH%u0kyw)!2gYgpP$i*-&GuH!8>i)Os}tQ79(N2abg*6esz~g{s*EJsRp9 zWk}3Z1j^wMRP%ty%u?(Rm}O}8UUm{=eVx_$Sp?!zz+p#R@Z)S9FdWj=qq%Wr*@P^+ zAv>dzJQ1S+Do;~R1^Kds(V>Lwap>$4+Z?GRuQA(($r`DI1)XIZCg~o9bkPw#4w0aR z+OD=61?*1DGi?5bmYaJbKro(h1c=s~BOGTA^Guou_+-qWiLeePJIGCgqX@WcFXRnF%unq#^$L65Z$JWAO}E#7ytbD7cz<>n$`|k5VX7MwNg2^sTlBgWz$qNdVNy| z(8~)=k=Z~mZZnvPxDCHK08GGuRqG6e2(Si2HU>l&K0}ABwdM{R1G@r70Nku?{yF$) zh)+YS>*CYF_UGbj#YXw#_bV3>9}?z=HmMK1U2_`;#cVM?j(JFG}(#Ir$XxV zc{P8I@zCdiR0S%WmwFbTe2|LZ`k$$_xGrzoiR-Iv4Y>YG+X`Hhb6+SAN8NyhZgTSF znTX$TM||deD%jNKk-(%2N#_4(^??VCT?Kq5Z{^u@BjPqiOJ#2p0ehkPso zL3_PW>I*6$^BD`K;kuTeH!s+U=U*+D5`lCIpXdx}K=7rcm$n5EjaDCE&nXMr3&R8m zHQ;=eaG%_~a8|5@F(UEp)=?b7tT1S|0tyN&;9d#Dk1RYQO61l>SK#`?Mc3jQZ(m=A z&oLu3%lx%&e=Q$tuPCPG{PyS63}o?6dnY7cY~EExAF31yV3k&|Mygzam~qMX+neM+ zn}M*Um{tU1G4W}~d2&X_W7C*xH3(+y&+&xzsm)x6kl3dktt9%z%_1T%TU?Lp?Te=` zjnIOunHocBJiws~Jz@Y$CscBDOmXQEGDU45B47lXq41)XEB5LU`R|K&gAu4YGosKq zG-AmGMl@msz?&u(jO;%jj10eZ{#q4sD_u%5+_{uw_{*j1m!b{UYWu@*?n46i)Fvj! zeu4!S~A6i>EX3L`&xW|QdW%7dy{yG-e6=If0FTAsqgPQ!nu8>?)gAUSE!=5o$~-f}lCS@a2`)*K(m6)S!7# zBiu;*+yIMTUbt#oUL6<2i8`b!T*p$YldGnB%CV%G??|zFX(>giteZf}nMeV3?8C6G zT0LkN(KOK1c&G^d$=|O|iu+{4nyN4vj4xl9a>JS$-ygq-ar)rcWp+)O`o}NIgKMtE zJc+d{=fiJwhTP`d zZ~!$I-7BWbqZjS8Ju8e3f|7IAeQU*ZQa?BukHwN1wC|7Z1w*rR6gxQr^Xr2k#ffBo z;dVSWL_gvL-2ZziF}_$h`b0~9@Do|VFG)Z^>n@o-tH99M2CXj@y&h%> zG{~=bz&uzHD*(emm;CUOnso)HwwnTY7yKu$XCAC)KD8a%9o!NXW^g&;W8AhyeK7DS z*4kyE0^~fxQEz9+8$d<)0xV^QwggEKOfw+MvP%x7qdb=^hXLmDA4%rHNuKIGD2yik}71}?yOCMt{q3>}6;E)j$X%o8+7M{8H{ zKXVu52Efl!*eYy{W+|pHk@5>MMWYnRZ5t+egVa+1FAr^yj`UhLPQ{|XabsMB{VEqW)dfT&~YArTE)mgk4&hXCg=h^QwMRiM65#-N;XRV%b*-BtCt ze*UU9T#sFKKCXYdsus1`b^|c-0QbY%MoqweLJ=WnT|Em{*@ZISy%HesgzSwF5*DqZ?E6K~pE^5930e>Dq}Tra9F8G7jZKqm`>D! zljwL1wT4{z)i5H2Pf-pv6@mItSX#$yJ<>>7T@?ITdZn3J#AhxFG95z1d{aRWfMRwW z{04hi7h3)UTGqH?1m8fL2`kwjx=d)YHrBGsgcfUK4XXyH7FD#KP+hnp3W{px50L)B zRk;vBJvrhax_Min1Q0?Bs)nV9nL*;pa3>WLY6Haf1Lg@}4Q;{uSy@X=vi+fE9?QZP ztPTlNL6eZ$0J5Y%pwth-evjco4gsqIb(bXs$Ll%VzQ^iI3;F}jWB~J>V=_1~#C}Z$ zL<7%3_W1%>2EjyUs1PLgfR%DZ-T+!2K^c;@5s&3FRq~r~u$!}{u^JjCOyn0J!_9;n?ixv%b!Al*~_0osFO3<7>!09YcTbz;f1k06cH#TE?hw$#T*33 zfs}0ML3YVr0hnfhGD>61mwK|rVp?1o_YyAO^ULj3* zYWbCG-)Nvs4%RN{iw%L1I*9sNtwIsZv>ydV5RP%Z{KBS7gU1-!^^u!g8icWbYU#d6JmtC&^e~1K&wE@IRhc&y1(BJO@Rl9*NjoMd%CqLzXGOMRX4$l1&cL@FcZH=&3uY z5fEnA%VjBkgS+In4Pf#fz+18>TMtwqG$I&dgh#VXiH%X7U_#><;aMi6#t6rl0A{f= z((*u_Q2C<39U$g&%!Fo@-ApfY6fsZS$Ygs3_%iC6FQOHQF`Lm_$bw&?^g8Y@3OFRy z9N|S84;T(rBiN;TBVJe=)(C(rx-e)2e1>&1G{(F|)u^hH5oq7u%h1F(ryuhO%fE zjlj=>af%EaD>Jl<=yOb-xFxB*DE>Ykqi_`yxpa8M9m)s%NMp`ontbM`6f1izxfn?7 zK|JLU&v;Q3z?IvgI7jRMMH$GM`+Zp&KE;2wuZg-Z3#rszOs!^RhhH-_gq9YKLm7ZW zl9-oN6^T>)vxH|s0{Bd5$J5Yz7=d9K!4tG)yDZNFunqj! zA|RtewB}t7ScweDK(r9*TwoMB3vvPXk!83IQ{zQBfKbxPW<(Jl096!3aDfd{OOAPy z2r#sqYb6ojJtqee0p4?R5U^+PJKo6sWaLO*XUR&j;(B@6q=mf!iXT9tgR+KHL`*ugyzIZn!2L=%= zQF4Iv`VdoK4b+i}Bw#rnycyHU7T^R|vl75y|6mXH=aX@MNV5XsGaA^gsysVGh^zoN zbKuExd2~tfEJ|A)7L@3M6v((aaezb=on7H)CR+pdc#FG}LrH{=IbJYMeooc_z5iyK0u$fez029zPr}L-d|ovN(RD@H|%^NEDxA359nb1Ei1!A~Ax#oM-isFc8*e{TS&8PCc^fAkNRn zns2Mjx;mmp3gGFHYhp#l;-%&JXlNc%;#L{sP0RxL89V+#Q1LkOr-!gy(f_DQRTy>R zcq{%N2Ro0e5D&G-m7G5Fz$ZzV^un@83OuNNf?vGz;}noL#sKh-_A%WZBg!osu-8WY z$JDnt^eoV`oQ`8va5TZdZWuVQwV{(Y(44f+5y2{~9u|CUICk4Y%BQCqiYQu5|~(vWP<@+!5owrG|5>jmG<|}vT7O$^#s{CSSQnGBXM

uK`%!`5rYw`fZbEoUZrVqOSoOCRuFX}O$ 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 diff --git a/node-template/runtime/Cargo.toml b/node-template/runtime/Cargo.toml index 8155865730..2ba64a3a9c 100644 --- a/node-template/runtime/Cargo.toml +++ b/node-template/runtime/Cargo.toml @@ -25,6 +25,7 @@ sudo = { package = "srml-sudo", path = "../../srml/sudo", default_features = fal runtime-primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default_features = false } client = { package = "substrate-client", path = "../../core/client", default_features = false } consensus-aura = { package = "substrate-consensus-aura-primitives", path = "../../core/consensus/aura/primitives", default_features = false } +offchain-primitives = { package = "substrate-offchain-primitives", path = "../../core/offchain/primitives", default-features = false } [features] default = ["std"] @@ -48,4 +49,5 @@ std = [ "serde", "safe-mix/std", "consensus-aura/std", + "offchain-primitives/std", ] diff --git a/node-template/runtime/src/lib.rs b/node-template/runtime/src/lib.rs index 888a9b0dc4..fd82b399d3 100644 --- a/node-template/runtime/src/lib.rs +++ b/node-template/runtime/src/lib.rs @@ -14,7 +14,7 @@ use primitives::bytes; use primitives::{ed25519, OpaqueMetadata}; use runtime_primitives::{ ApplyResult, transaction_validity::TransactionValidity, generic, create_runtime_str, - traits::{self, BlakeTwo256, Block as BlockT, StaticLookup, Verify} + traits::{self, NumberFor, BlakeTwo256, Block as BlockT, StaticLookup, Verify} }; use client::{ block_builder::api::{CheckInherentsResult, InherentData, self as block_builder_api}, @@ -182,7 +182,7 @@ impl sudo::Trait for Runtime { } /// Used for the module template in `./template.rs` -impl template::Trait for Runtime { +impl template::Trait for Runtime { type Event = Event; } @@ -280,4 +280,10 @@ impl_runtime_apis! { Aura::slot_duration() } } + + impl offchain_primitives::OffchainWorkerApi for Runtime { + fn offchain_worker(n: NumberFor) { + Executive::offchain_worker(n) + } + } } diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index dc4429be3d..34fc8036ed 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -1273,6 +1273,7 @@ dependencies = [ "srml-timestamp 0.1.0", "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", + "substrate-offchain-primitives 0.1.0", "substrate-primitives 0.1.0", ] @@ -2510,6 +2511,14 @@ dependencies = [ "substrate-primitives 0.1.0", ] +[[package]] +name = "substrate-offchain-primitives" +version = "0.1.0" +dependencies = [ + "sr-primitives 0.1.0", + "substrate-client 0.1.0", +] + [[package]] name = "substrate-panic-handler" version = "0.1.0" diff --git a/node-template/src/service.rs b/node-template/src/service.rs index 5f1a375181..2ff5041f76 100644 --- a/node-template/src/service.rs +++ b/node-template/src/service.rs @@ -62,6 +62,7 @@ construct_service_factory! { let proposer = Arc::new(ProposerFactory { client: service.client(), transaction_pool: service.transaction_pool(), + inherents_pool: service.inherents_pool(), }); let client = service.client(); executor.spawn(start_aura( diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index 37de34e402..c4dd70fc51 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -85,6 +85,7 @@ construct_service_factory! { let proposer = Arc::new(substrate_basic_authorship::ProposerFactory { client: service.client(), transaction_pool: service.transaction_pool(), + inherents_pool: service.inherents_pool(), }); let client = service.client(); diff --git a/node/runtime/Cargo.toml b/node/runtime/Cargo.toml index f72a525846..6c0307d47e 100644 --- a/node/runtime/Cargo.toml +++ b/node/runtime/Cargo.toml @@ -12,6 +12,7 @@ substrate-primitives = { path = "../../core/primitives", default-features = fals client = { package = "substrate-client", path = "../../core/client", default-features = false } rstd = { package = "sr-std", path = "../../core/sr-std", default-features = false } runtime_primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } +offchain-primitives = { package = "substrate-offchain-primitives", path = "../../core/offchain/primitives", default-features = false } version = { package = "sr-version", path = "../../core/sr-version", default-features = false } support = { package = "srml-support", path = "../../srml/support", default-features = false } aura = { package = "srml-aura", path = "../../srml/aura", default-features = false } diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 9f2d877292..0ca1aff7cb 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 42, - impl_version: 42, + spec_version: 43, + impl_version: 43, apis: RUNTIME_API_VERSIONS, }; @@ -288,6 +288,12 @@ impl_runtime_apis! { } } + impl offchain_primitives::OffchainWorkerApi for Runtime { + fn offchain_worker(number: NumberFor) { + Executive::offchain_worker(number) + } + } + impl fg_primitives::GrandpaApi for Runtime { fn grandpa_pending_change(digest: &DigestFor) -> Option>> diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 356ee5f62e..4bc3dcf6da 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -1297,6 +1297,7 @@ dependencies = [ "substrate-client 0.1.0", "substrate-consensus-aura-primitives 0.1.0", "substrate-keyring 0.1.0", + "substrate-offchain-primitives 0.1.0", "substrate-primitives 0.1.0", ] @@ -2666,6 +2667,14 @@ dependencies = [ "substrate-primitives 0.1.0", ] +[[package]] +name = "substrate-offchain-primitives" +version = "0.1.0" +dependencies = [ + "sr-primitives 0.1.0", + "substrate-client 0.1.0", +] + [[package]] name = "substrate-panic-handler" version = "0.1.0" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 30e0da2028b8e4ee23700d5c5eedede037a18962..7dfb5fb461e0ecc92cb89da180454d38c471d291 100644 GIT binary patch delta 210370 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 z z>qj+-{nR`Eb`;9S9fkm+27E1H|5UA}e2sXZP^^3{n zSRDE7;>0MZcAjL$Gx+2cpRoq1W4Fs@`Rpf-K(y4+hFUX^6-c_@& zYZ38N1NB1Q;vqV8fWQHGfYj#g*wR^0GRfBP<7)k_?Aq;FLs!K|nLI6{Yd{zL3;!e1 zBy?vD&{0IXH%EH8kXoVc`&Krxh!b2LQZIk|f1jUa!rjp0XTaiB-$BldsJp(Ct%L-= zBI?cWc46=eLKRqrAU9 z?HmQCt8})q;|Dc%kKAqyQ-gk%Q;ZwbOFzrO;Ty0$#?}M&R>#Y5o@(-o+-}YOjrBy? zd*w>Gl|~HwL7n-V>>TZb7cd(WMo>8G06JNHcGy)Hpn_ ztUo}o;K#frI-k3K5&cjPi10h`&Y5I|d)0ykdGqjK4F*Ju?JyuxfT*+jw+w#)s9p(& z0afy-Ncd|yk^xwwlILfJSN+dnD^@q;g`fRjjlN>lv}yP%jK-r)!%afbg}7COFwKHU z5CLsV_R8n~cXuGUp=Ee&DDvVqAM)hWZNd%B@Gg(0s*~@w3okK@d1_XN@SV_`*Y6nK zY(DWq@|TX`D#QHe3+mY(;S1C+M~A1H-+rcU>lrSiAQG^11V5XN4IZf$A3i30rg60r zov`lW6uwudFuOlb#ca8uQ@F47!HVjDo3GqX;pS@nps<9{lRVHVT%YPs=5+}-Nlkp; zX~&!R(3J4Rujm?n1sj*lZsB#Zy*s!bhph9^pkEoSTdfRaMV0IYF%I z89vk8u~D_`75TW-r;eXs|?x>;!?F7T(Z=^Pq>3|o4TY=xXsWJv&Wrx*``>xde@y}z(SLXJ33oDXSMk2#j>d@O zsJ`%Br{13Bh7*6)+XLm{vy5NVS^dH-DWd%Hk>PyxP`_|vs1e@i7rr!A{0Lm~gaP3h zDE{t%FsZwT4GfWQ8zr2>B}L&I?t-DdML=;mZ$>SAE6c z@M{eaL5hn+vX0YOhlcZtZ0trs#Clpdx&% zafdp+BHRtcrYgc`;B9Y3`1QOypx4yW6ML@h3b{|hvHtil#g+b*9#d7Tk>UB?!2WDJ zsFEjyFG-Da|54!q=`TelOf6m?6>bLA=a-|xAK_c_l@r4qOylKdyu%HxGIS$e!j#cdC zt8+TiPt|#JxKFwlc0*5l(9V0NSD|L@u?y8xQ8OpvKEG>uzGDz9MV36#H6+|jE+#n zr-#qLt^-u8t~xy&uQSG8U%h^QNn^bH^l%2oIQj0_aC7XGiJMV;NDWJ&YB(-@wSR?$ zKerDG#J+4C=Jsc5$GC9n1_z$@+gBvVpBcttJ|cPP`0$EQadIX5B$KR1M7TtYGeP>j zc%?e&T=0Tn$&bzrKWl`Z3Bv?+`McppYDq;T2O`L#m61I4VMXK-{GM@q>gs#6OcXjO(RZn26-vbz{U%kb)i?0`NuJ0YSs&?t*uT z8C7Y9?j&oHM86N>ApybC53(T)4lA)t@}%bUR0=LC1&?qaffj?FP%X!U(SI6L6aCS~ zrpkziDmrt8)MThUF*Eu;Wu`ZXs8CC=2`%(yrRF>{7VwLLTGWVBBKZl5Ukgn(9Mxh7 zmdR2q9e88B@yc6Kx;||(bTJe|i!>TA)71MK2c4ds>a9B)+-n?irFxdKVFW<18nCpg z73whq(jP?87&f5^ci}8ArYEHH=_G>V{v3pR1OOOA((7ZdoH-dGP&4(7TA3F>(Gr{% z50Hv6;sgLcG%^{K(T2bdC7TU(7!`LSXvvNRAmVcrG1BH^!6L~Mn`zp?8O~td1bbS3 zoR5;y3BHh(aYP%^W~3UI2%ZvMKe=#UV`kF z!2nrFPr^41vkoU8aBo~dhfPrq4;9T%eZ*Bl={cbxFx{I>-t^N?ilG912k8LFa1m3T zep0M?=xb8nnUHKJVbO>YdV%%@CXQw>V0z%`f7+lB1!BCYPK>995K1rL&fBt91&Mxk z@v6>0C>|(OHKsd{DT|aZ6zzl5ujRqx5h9E$#Q#-6TtVg))QupPt-~?ssU;Nm3wmWb zo13VMM6uYR2qGeKQ6R-AQSBZLZmGG89-|0k#_!p$yJHi7Ec zBxsu^bcI_5DLhF5!UZ%nM6t!^djc`lDAqkR$F%123-9bwAF)*=0cf91q@pp$SOk@6 z*o=hVeL`RgZyKWq;|)`T2EwZ-g*HMmp|TcN9)76Xsa!-?he2+FhsA=pk^-7Z8Qo`! zCCZF$FmUL9o^Cg~5n$lw|HIpxz(-MJ@#E7yxw^WCOvph(LZ}`RNPuwPAkYc-9Y7RR z@h!o_x0;4O?*XXd1&~Mb1`VA~@4&r5VM6Crb5=V1G z3KMC7?hq0WScb-6q<0D?h7kD^TQELs0D)RTSa?Tws07M@kQE61m86M{1eZv$ zjg3qgQm_X}ap>sC4StjHW(UgOWJFqI$*0N^NyAxoKdM9CIuNqD1z@R_cg0E1Y1}VG zzQG8RuNY(;y^x94phq$u1w<7VJuGRlM1;1f!&z!L$*Z$F`T{Da&dKdI*<V*ivDp_$0Wl@M7vG8BZ>~NKVktKtg zsvH=dZ*T`jcNqN9zyMH~;vm`Y+zHJi4U9=4q!v5`q(I=dIE+ovF-$QD1v)~2W++0M zBcn-D=wbI8U+gz1da;s(3Y>5tgplQaQ=!2n5rLSoM2YU$XO@UyG$a0nK~}*8`tdwW zpez-IHBs~%!SaVE08GT;frvPUf$cEVEd^vEz0mAPn-1OWf{CYJ@qiehhNv}w2_fr= zO(?XA&O>)XCh_(NR%;Zs5v^BsO4fwx3CU&SxIV)N8;?8dg!Hkq4v{Oj2dWH@@XQ;_ zfRQXeTy-p{!y5}3X#V6_2=TxdDOM*UwbO|SHO(-yySlkb!#?hFEuB(k01d+K6_GmS zSCCWyUkcKxPGVVD%fRp0wXjnLEV;fa8Bh_T26qxth%D$|;wP+f4q#6ah$kz$KxUFg zLo%~H)rwbQ(3M3425OM<8Hej80^pGU#EQ6LKj2P;XF_|OU0I+zza)?hB|+dy^H}~T z^C?3#8qI1Zk-Uh08-_|IIrS7#B#D<| z*URs$aZ5NG-cUuI)85Nr?`3|p7H1h4zcjDwxEvBUK2miXupq$_0I#%snM3oiRc6tY zAOWobKfBZ8Z1oPgbLd?PV-hoI(8ftgQUFFu+P)!P9|rK{J(WtD z;};o>5i(Kg!PH>1Kie?^S4+ev%OFdN{jK%IBsrh`UM{}yiUb;LrLR$<22#A0zS0#t z^u9#BW73hIKn@_JMeHEp&~ogA2c-n}-WZ$2w|YO9V5l3Mv{`R zXFn7uEqD#yu*M_31C15vhjdbQ3iN}tBLEEDkF7!!Spo&a(w!p^l*gp@BbpwFs}YuB z)z#@y#QhBegI6qON8%YgToJmNLf{_NW`(N6z(sg|NC-j^3SbIt7904qQx2U30+nt~ z1Ayot3J?o>{X7wj6Cx(Lm_q8KcsQPH#wz4~lHB)`!;;z^g2~#n7f!x42L8v17&{qU z${YA6=${;x`Xs7b04$#NLd|c0jsi$4jW0=QdqAAx+} z8VSJHsk`tfFloX=i!OO{|J&W z;VZz`{emt)ci23K7Ck=MBc_PS zoyh1I9mGMkgP4&Z6ts1n?$ zYIUao*?1)K0kf2%0*jNY-UOX1%R)irTx2NKj$m#m=|;^}EeHXDilxYh6-){Xg_1!# z0l=&7Bt^8b3_(HnMsminYFg5EKUlEtaB+1{*6sf@SGrc$F}e?J_;svC&Nb*Dh-|*x ze{;zZW)MIhI}G<-hif$dAs)Yu?QFGQa!DLx)`?MB=%wPDz;wLhaOWi7RB;=Y?%Z9KN!%$i%PbS{OZ z&pCjof44*At`_*VuekOW_QNH<|Lj)zed29w3L5w7Q>6Q6`z8b|6X_?Jy71H#TArEx|=#sHt-J2{5i4o4t8g) zx1O(JjNA9T+-mfbG49ppMe{p>IqF(kvGGnER*4h$&S9stl_ETsy{!Ki+Zyvw*AX#m z9=k~!CC@z$%;z;RQvXMfAQ(Ee5ch8#RCYA<3#wa3NHi&#Vb*Qdn#MZk|r&~(DyW#h#_ z?8>Yhv1~DGT{YUwdy83a>%(%crl`4^Q#n@^YOWw_lp;oE*Gf(6FQVbyEHmXZ4GGmBYCZs27Wt3l`-NS0>S~tP(VLik9aP-nn1K%Mh zt_)|UU4uNllXx<%C~>-1;+YmeSpaw*WL#x?RkqwAA1;JE?mL{3XMAP?WN z^k__BxHZUCkE*sB&yc=lkicQ(c!dZ$QcU6qxjJ~S@#=8AN|mY;w$N>jd_L4oJQS3y zER;cFB?Hmr(KH@D8ydV^HxLv75%L>xU~F`fdS*+@h2|vUo<_MYAnyzXwj|N-UX}vy z@DcYi+Bc({k;UeFSteVEqFASDA)k2bUY0%}nS3FW00(GDq$bg770YC@3~F?k91rqd z#0$)bSZq-DXuZPy1MLiwaZ=!_i!PAL5G|H4I@)u^64osY3WwJig`3AvadQ+}hNLLa zbLbx)e4WMwjjahMqV^Ynka4mYNKy^VV4}3$(THi^8>VM`(hzfpM-#xt9cP)Hf=>H% zHE(nmCE*q@k6=Z*FK`VeGJI5_c}@)ICPq~*{i#C9>T0uOK%V0g2HX!ozM1I&a|Ta` z)&(sPIu^zCN1KTIk5B2sg>~!hU0IdsN-EdjMqI(>9lIlF2JV^~3 z_hrc)d@ScONV!Sp7#k3hW)WRN9djgflSp64zz}JreH1HBWnoh=p?T6EN3mKaV|W>~ zAfM3gXIY&x=*j_}zIjfvatk$F9`W&t9X_Xl^A;UNE(j8FId0Yu%VAtCR9R=m(EHg) z_Wp`p(9?*r#Gd;ZcBw_TrHp4T6tpg()iU(F0(72e$>)3`W-Vp;aVy$oTVmr<)Sm?O+krY+@?#fFTpIg#p@uV)5T)EUDqbjXQld z?Q5sVm7ZPQ!SNDso3!FEc#1D&PyxA9>F?vP+y0d z5D)ap3Gq+C8ib;a;in)}b>76YmQc-8TKh9~a0C3FDF&=&85a6SC_;yCPeUnXY1$Mq zeI;Ot*|(b$%5;N6I$4 zd2jCH-AFRD=6xU;`ta7-q1Igkpl#ldqz8Vb>RR)@QZnFc;u3A}byr*|2Qul(dz9H- z2?)F=Btx$F!V;j-*#OfS#INE*`7kmmX?$qUYUp82{2E-FSHhdFN3r2O0wn3B z-2yfFFvts89a;d%mda{F8cdVfsAV)S;}iH81-A(bZlinRg!5=VCKhgEH}i6W+eE<4 zL3kPh-1R-M#_r5V6X3?-gGmZ-;{p~LHVJU!U^#c<0l0M2Em6kD6WmaHnLQdGPr%1` zT*pgX$d%xI^29PerOY0WR}{Mr9V{!eC-AX+bT@fXp(Ad82$Fh?So09eEsd5g0T3nu z2va2xN&tlGFxWBO0-1b_2ZRy{gc8cfm;r<=0AU=M_8_NI??6L~^j4AlFsqq)^lz@U z?x`K1=@8%zl(d4M3Fl#UG!bOe23%C+tYLLT?^Uc@0nsWj6@55Q$>BMDVfAUun^s67 z7cZ=0ye^fLOg#9wPV`BYPf;tzCM_W(+Ed0f@!wUfu-+722*3B=Wg7TZv5c!@Sq5=0 zMA8F3;iYe&nrz>0kFZStD@&pdx-Hnh(*lA7fsKh@SFBdkTY0W^}qG8T)} znl6w_+y*0%Vz)paU^`$Gl);_Y^J9a>hDTUIn4lJts-sTI7X$=%z}77sCvd>1Z69}t z`L*I1iutuB&{i@($xM~yYNKzAFkto#! zzaAthhGH}nh$fywN}xdx%FF{Spbph0ULjss!|Vb`LGnHz5!fDND48m8O`0KB*~|e? zH$=i()=JA19oMqj;pj)$gy40--XIOq0D|_deHtpNCxxr5mS`6>gAMp#Zl5 zowsR45|}!k37Ziiy6iY$SH?Sl-k}VV3`bW;XjV~La-p@1a3P^sJkIZMei?cC0s=yR zlr;`N0u9bCAxvniG=w{g3+LEP9a8p4kThLym*Q6(>?(D(tk@y*&KEA9eDV6C=kNI- zat1Otsw7CrsGhl^1*{emT2-|4Mz3SVu@v;A0$xM_Rh2(jeJCa&k83$a!OvE#W3|Gu zu0NI0blj43NX==gG+4|D8FL*^?~Ua+ac&Wylw68vbdJU4hzh%jFT&gkUy4RlgxD<} zx-A}F$E=`|I&MkG9ekDp_CI7Pas2M3HRHjeozfBErOkq^m@Fb zi)7L*1&ko5NRudy+8Ik}|E!dkke#ta*%?cr)XH-7iQGk_l|i&%Se8_VMi{`cBE!#U zMH(HYMv87ENrNf6!b`DKD5dp;Y=sP_C1fzg2htu-s}3TOP$?a_0G}@M-A0I2>S&G* zR38XaG9O6Ux3?o~FVO2u36bD-WUzTe)F~ElO}wcA(sdbC0w7!=bJOpr?Rbp`buW5jx2JMYBL+ z0FRWo8rlM2p}OG3?ZK6xd<MEqeGR@I4y3*ode{gjDc>IHU~ebuP3aV156!ITw4SwS zk4*y7t)!YVn&xqgR5oZHONd$7kO1C9js>8`;r}=^HyXsUWj(t>Yc1?2;e1we1FKhU zj0f*AfcIF@e*>#O09p>IHyVW1t!`@!*LSx38pBH*dd zAPEzQ0Oo>;zMu+u_gxDS6cNj|cIq)R*= zCP^8e`KU1r0iurF$_OxcvxhY{`4F%*U=ccj#dV?2N9Qj}>4 zZelHhLkK?sr6IUE9&rsy#dDijouW2?sgJkupvpPW2Ox`|7FT{||tT-&Q(Y8VtK6@AepJ(ly* z{^%&oRA@Y=jEjF%3>VeIZdTe8B!O9v79%7SHMX$Ka2sCIGmt^ta9XGlbig*e5yshu zum^@kOotQ`LumXGF7goHgiw?o1C@QPh@e0E< z2hD~obm)rQcwctR@%#eI450r459WIC0iB6@ImFuiaH2z4}k`H_D92##6TCs<2__RF0s_s9(fTX z#H7)8pdCq17`SW=SVN3S(Vp1;H0u~1c0mc6Yo!&8C9)l--UrkBco@f((BtZ9` zlAXtK&`Iy?kVc@;_&`MSptU?S0G$%hy4?YzuW@8@qR$~MdR6^VDlzheI`B)*L2EQA zMT-ibk>}gNGs+*@#tc|9OUWYItt*PTaB@ z03OntlTO~mxZ;&`-~E273tv!u^QpelXIZnv@qn%tye_ivS$4T*_Xp`=B!tMTq3L2D z6R9{ig+mnkS3J)i$7z};o@Z^EoscFy7lGn5yI*4Sw231%jW&?D z+&BYS$n6GNZ_q^}C>>ZX4)H|}}s?MPV-ZRm+AfBGFag&uu z8+33s5yN-0y4h-;5Z*(s&|vU~8jOE%TJu_RU~kor#FqExM~`fumy(hVTL9%a6hNCI zT9FS@SUC$8Py|^@kb4-Gi*71Tblk(T!(ezm(5??I+aYp)CJifIT3~D++CZHYyTyl( zU~(p3w-B0zb}gglqQaQZBuT)0K`Uv`InJ$7Ue2n)G%bHZC#XsKEsW+!#l#1PkxL(f zHoRZ)BYuKYSP*V^wDk-3v9~lLBA?W|rJoCs1yNa~3pjp=3(-0RBwPSf7-|D0Bc#^m z;(}S^KH^|Y0bl?(!}gTH6Kt}D`S7Qep((Y5A%F5D4utS`MvHP)2W%wo4y^BN3vbe| z6y71^tp>*s4Jd(J=~zfhJ90qe0riF%wA33GwbHv8n>;E5%N~vAs^g^i97$S3VQrHD z!xBO{qZ>?Ye3j+m9PHm-WqIv!I-AVZ1%wo^`uC9!bTE_*c;I7NEE;(;|FD^|y@e0fP|B0sId-{Ju)7_PryBJM_jtCnrPSfyvzBEl! zhz=s1OwhC>ZSYB;*(FHZJKZ5kn=tx3(oVXNw8NlnV8303wCPjHC**mL7}6$!R-_Gr zc1gRMBJJdhleSC0AZ?e(fs%^Ic`}i9zRUc`kr!KcE@>wbX(z>y_N%W+(*Ec*)};n8 z8pKC|c&bpiXuFr?nnbZg$<;YqKWZ=28&&*5yOMtv&Bc=a5aF8Gw4W6woQK7?_I@;8 zXAnYBNe2SKRy2vO-OG1Mk|Sp0yp05WCCb5+{Ca2gCz(PBMP;-f=bZTDlSG`ddYv`Z zHj9M6F*+61;%{t^21Vq@HyGF66}$HuQwvnZFkZq8s6!?Mr&iYI3t_ax-c1~9y=I@W zK})YRgh`zW2Q{HniOd76VFGP6BA)ecH<`KObcgr^G3fwH^!zjy9)K6qS#jt9qcf?U zo-#U#@+Xb85b%Mg=wRYr!8aNcMBo`5JM1Gi^-XFTnfZ+Ir6wMK+IRq6@3hqj!NVjn zYMZf9OZrEgKOS*Wa4>ykQgh_Kw$bQM`o#Rp!4H~mF}}b-$K0olyTreqH=#JYpbzxi_JPCAdzqg#tM46-7IYSMbx9JB${%=#=lI@5Jppjmz=)=T01k+%EjP@Y`O|W|vWd z$8Ec0=B8c7A+5fcz1zqOZ6NRcT)Kps%SgmAPaHL(*mENJaaedc249-}iF(O<&>*}ak5UNgFBk!B=} zCv{C8jZ>PHxc4(Hqt=4suKy6!L|>urPA`e~pO1-MpK1L>T*vqft(BDck9oeG4R0<$M+1%e_of0aUUF@;FB%aWwQf!(Wpe$wZNclqdB3>vmYISJ}= zxk^K922QMhb<(gxa)>x9NGihX-^Rp2NK<)p?uu;xyYZ^lS{8&yC>1=goSd3{rpybd zy!m%XdQ*9j^;B;D%H86luaes6e}5rz^IJwJPM?SOgVs|BHx4sYfo)i$MDSyymayJ4Hqx2t7v3`vYqdD?+hL=xJd)n; zUpUnL{v1*Cfzcol-X50o?cL(q4~#cieRu-@LsleOA2Hs{aVJTx4Js!IK*l5q`$OX~ z=AKq|-oHn@^`T)W{4^JR%%DEzi|mh#WK3LxkBq_kiMe9-M@B0ow|@j2Efb%AWPC{{ z%isOj_%PuFeN|mF{lLf-?;XWi?{nh#QCTeG6XO^aYkb705lQ{jsDqJ+*8euPC7g^x zql2h_3@3;;iiO9F+ODr&VF^|c7= zGqLx$Z1L=I!@+i4*FcK1Lv;F&(TqTK_MPSuURbk74Ue=83(DtblR2cGBS} ze2;N96)itAa^dtg_%q`Ku2jA3guxNGbodE;arPcD`-Cy1A(l#YEHJwb_w2-kS;gL) zL(&n}a|g;04wH8_o%a?B|K~>N4@Ok{xv>r-`p@S$RQorP^M#SCf3t{y-OvQVM|*eU z7sh1wheFZ+0~tj?)cDdEr`;sNUmEG!9C%xipR`sEyoS2K@syG3P z(yxuF88k~ch(KRmV?&sTrqOr-PLN84sK#fFXjwXu%mG_XlHA29d`_ zK=9}fM$;IAlS~1eGSd1iB#KMmxYYGOhN)0@g?ROxQIPw)1mcKo2lWh*{iCr8Adutw z;zy&#A3!?yC*a^YvF00ueth>Qqr?SG#)@M`Hj!4ppN+0vUtTN`p7#83srG`qWhx7c z9y*tsWIBiB?@k6dSdB|~gE|U@#0xc8var7}vJ&>88Yf%v8_Zjr_%I+RPxgHNFGg3O{%jYGUa;x z!h%-yyAEWXquC+ob#>HsO&kLM{?=(K>2>%ca~Lfr@jLMk_y*h5sSSA2HD(wkJkmn8 z?uSkYbuNyq3uIWsc@k2Et>OgvOcX`G8Fj|eaIsw{NmmcPq@(35)jhRADEq`=!GLXz zG#`u<)KG@L&>2X%B+eq+b{(oFr0jV3W-)Cu!aEU0HXM;$-jmrWS=l_3Bd{Uex(r5v z3-4oiVU*=9f0JcsS<8>J7D;qoI=OEkQP>*mUYVMrvBuh8#TtzjBs@=??QwBB9@{ye zYOG65hoFKvEB4v-2`X6jD~5ENaCBC?4VKNMJA>NYTbn&GrWjk_p|(~nCX18b_dD!5Kve)oh>OS&Bob3EX{Qg557>W zqf&LQ!b&T(nAigH;@rA!m!nrVdtLs->n6JV{yNbvj%_70qp&pKig#u|OTYn^a+~wp z5rD1!?esQy^XTz`!GLowU zGS^yceGFu3i*^ClOaEetm=|CL`a5&Q)&Of)rTynbb~PL{SSgCDu`c?i<6?d_xL%wS zuT}%@-6c*{V|BC_L~1e{j3A=plUV~imL=o(#eT6f8Gh;e#Sh7>10KzTtkqzehA7Jb ziG6b)L8p?+NG%41|K^)YH<(3<9pnyDZ%kWgQ6|yUWfDz9_Y{`*2V8%C3VR5hmUDP{ zb*wm>h^f_CW@;1I)=l0pO80TWH^jr$+3l<`NE#azrt^}hlgipB=JE`1z+5plmG#14 zwx(jmxL>@j9^a+{EB1@*G%POni@s@WU$`w#b-*gJU>I+QS8UC;cbeE8;ChqlG{M#= zjE$E$y4}%9vO767?9NUqoNKb}VzB5Erw+Ug3t(Ii!nn@u?illOnDTo-?ds|HVP8Mt zgLSP*wg)>`V*7qg82k4F>?^?1 zbVw{z*u>=qyamFu?iM@KS-$?fCO&A$@)NcauI&}68LXa3T%U$AJ#?k$n!yS>!5^?X zA8HRH)|`aB>?C`biK-KMiZh_hz6y_{zB2o2JWpd+SM6=bVQ)KZk3j1q#ik7QsFp7J z*I+f;#u9jx?0G{K+c1VH$Z%+}g{5{zqBYnhHal8}b7IwQNChmrW$hKC_?=4&V;S2KVkVbZuZ-;|6R^zCNo*28xgslvU5+5H8iMTlFg0;x zSFMd8+Q^Z)KtZsjdve%c39)LipRTLLYm>K1Z4P5M-f34D@6$s0h~Zg_=fh-LYcnsL zg>w}3;m?@P1MBfq1G!DiYm+3(MftpmJRj^lSM3w$gEP|z$h4VPX6I88u_c#v8A`1n zo^Cz5jxLc9CzZDcVYVv^wZ}>pvJUC;P($94%-Qge;~j8TLY`_*;q7Gtm%jNzIl~}* zJK>@-O5oN{-bwVX4WGBpWd%N;P0^hl`PLL~#T1Jbc57^Rk+>!y+gJqWX-Wx6}1yL;&#yg4nfptfMUtW#Mq)RH%&d5GgZsa#Ki zOXv!My=XA#_Xv)D$MN2xX+4%Us)%1kvCv?f(|I2(&Eah9&Y}*VVx;?5rUy{Ev@$)A z(t|3~gDHJ^WqJsuuMk@~%SrB3W;aHv1F08{cw6xS4vL1`Aw_;^In-O+vq-^3Nd+Qs zL*Htw&4*(=YzcrF1-)9RN#`@(xr{fF3rxV5H&t)NC{gI2ugjGtK+0RvFaQ-DaO6Dz zRU}M)8NUJ?inqtKr-nc$A^9Vs>nwn zc9n*T+T}rvTrIB4V{P)=^Hh2HKx2F>Ur_J$dZzz(|70?X=;2 zJL(>u50O4x%*w}!vXSCIK3MdK$ba+MI~tOQ>Vb`q5Z~8hYw-{T*vT6yE-M5xxK`X* z$V&2u@>u{(=EM+eTrhY6AIjj@-;$4{Em&PWt`c7svX@#7!$^nmh9o!QVcZ?cf!7!L zsED`hgKty7N$f^^m^f0Oy-@?-67j`xgg7rptO|o?PAP{~?XL}3os1DT;)YQ^O5G2* zShHvG#To{7wgIzSUWv6o9}39?^@VsI$FZ)alIh8mt`huCbXG!5mtgwlK_gX+YKSvP z^~FOCSz*RIb7|GKAE@MtXBY~C&xn6DWaB#4#+i1gPrOzuxq9X}0>6^fDV(2qm~{3{ z$H}Zj3+x!tzD?(~B(o8-im-|KgLtfnJrPvvVK|fZ;!y2*t-(U7V)QBx;0aV8_ zOe&DXXqDbt;QQUxp}4X!o1Z1WM0>O?3RgzCS_ST5wfa+I*28Ps4`Ul?yY7nHPw#h% z;Z4}xkOg!|YeiF*s=uI%#f5r%F`y|6=2gm+FK;oDvALqb{@R*s)pFAm7VD!r7UNn^ z!PDYRacY9GBBy{hnnMizPxk^&Jx8S{KmK zNqncPMT?&vr#0st64Dg44nGHJKGuk}GmTVs8b`KhzL4%+Zj7miomyg}0pzIm;VOM$ z`^mEX_UE;)dJ|BcE#SC;zz+r>qu--a;1p`U0gj3A5q(ZHnP}8(+n;92>P||&E!lT6 z+C2)5Pjj*=$9!03q*P|?*TgsPvrHY&5oJcrKiTP^>~#1KJB_$9=rmRye&=Pt61*Qg za+lf(BS;0l}AQ#F;b-{ah%$M}hpXtx?r( z8vqS4VHfInuF=H3HyY^^u`0!k$JYKbYF`Q3quLS0+Fu}b0q9rtaqWV%al#45@8nVa zkn3Jk(H2|;p(U@J;^RPVUf^yqZ*K(C4$?8cj z39?$d)Dfp98GZBJPSfobkZCSfqrwho$wTRtV&r5awH=`}!AHe*3R*UzS-|iO0|$Yn zfLO_!_!%bAE*hlkD?B8Wti;76j6$LP`M5~4bunBFUx157 zfM)!kpd8W;xwf?4i$ zqC_KA=O{zX5v(MsdT0DfASV+!j0c(88gcptqgD~lMyc-nX*OI~b>`jckK{H`n68VE z_+CKG$ri$CSu?iBY&>`8+CeD-uPlpyw`+BzR4F2$b0 zJ1%5TMW|&XkRXOVq5qju*>!%^s&G#rg=C&U3W^>c9nz^8*q#QQVe= zaEX;#XnG_~h;|{%FEVOxJm(Q2Xs$TeTHhn_g-E}Z zPMA($#J|8}(o+$&Q457}mIIe=kX$*Vh0@(`u(OKt>Eyfx4J&;;?#zO>;BrUl^4V~4!o5AW;nqED zq-Wl2)B=UV0S$^NJ|NmwA8I2^vJk_ASep)O|dNEd1!X{omub&4~*qEV7|GL=S@g)u8aUbCQz z3bfKof{>RiaKw;XjUks*f!Y9$-gGM!NGcK+SAjG~%-u!kRvXCI%ydp+U4Rrvsws&S zIrE@Ts7Qn-q$ELg1ECk_Er5$)N(FWeNWV1IDCh^5am4CmBsr6O4l#DbEBX6?_?p!f z@>NAU*xDi7QAi3R;RWQ$u*7kNaW!rC~<^pHHN_scdsIk>ayD)2~sUC zP7*)Phptsa{j3%~it6=3@#IXybagIJ22qvl%y~qgsEGd3G=ep>q!DZ_!KOzf-!PPh z*mTGy55fwKr%8%8c-nfous~xvRs<;kV|7<2C7T~qW+_+1JGUE6!`11VP<(IDT|BS8 zzI&iRMJ~j>dp!g7>3tgX(?t9stk~vI_2T$>p-lP)KW45EA)0XyDn`3{DJUI3jVF>L zB-UhB0htYn`rJi4cDnsLs7Dk6nOvQrEr%66f&SG{kS0euib~~MLK;*+8Y=w~Bf{J{ zpoL~tiKk|hmZCJBJU~WCjDbWn##5-qgT*KQEEpxNYMW_5l2zi@bWuHQ)CpTwE^ded z?W6?q>8dETG4!Rv1*n>UQ`bN(ob#=vIB5f`A>lNJIUkczj8JJ65KUwoi;j-KK;r1a z(P7?Qa`))Bj)!8*{i#x*)9^@IpBC?gjrxY1a7ey1kyK#}97ed~xSj=gCC`F}$Wd|E zrGO`BwbF@_p=9h|eGx~4N@I1UEdjRPpKnJT^*1Yw!Vxjq4}XUW=;9CDwIsLQJN(`r z8qgFM##N##+*r9mPI{P|RGM&f85*;=e74ajT%oAPps8c<`oU~6Ck<;LC<^uP8GhDb zV#9t!fmaQ&b-NH2{rV2G8#t!j&`Cz53l4jhANLs9jj@r@1T@?fn;OlqY0(@T87&;Y z-4go*t*~d&8haOQuxHU0dl%t$*t2L)n-?9N5!e#J=0!(rS#$#OcE)iMBYCeF5>mv{B?~+tYTs#O{*PMOm^+Q3%@OfSBAe70Nia(~41NgV44Ne` zB#<}ld@EfWPo*)2|CGk~KdRd2vo()~J&hY%Gd9!0b8hg#ugE%faY_`$YA5MvtKvmxmC~o^*B% zfs&%h;NkH(7d4>$7yE1(heeW0R6NEkb~AcoMoA}tdxu_C4>-@ranbrOU2j;fK?-c_ zB|@=Q@W-v}wS z2mBsoC?u9wIaNw>8gq%8s)^np3RGZ5U)2OkB=VY&rcxPTatv12Je0)^ky0Hq;3}ENi$3RAhj0KV zV$d?x4B@KN1HrxMm`pX=mZ9|kg#|@liOoQyaomwp04^$jqJta|ud2VQ_c(C@6$rn& zxLH+o1mt3uXDh|q3yjojNqel+WvO#PQcWeZNG4{H6|9A{Wag0kv_NuAYowf>hm;p; zgK~Y86I~x6c#S(DG3fq@o;LW8^}lR7yDEp91LjW(uv{*Ms*$6=C6By`JZ*xa#dBmO7eTx8T}N2(e$J?b)WE=CoiAE4;DwwM?_ zkA47jlSS>tMh%70G^M~mxOsbgM9#9b!UU>hp~ir+)yP4*xS+z$%W)HFtpxj(VuDyd z>P?Q`CFm(^(Wb%#DkUKx*DBkhEOauaEswM9$EgPJbL?Wrx%==yGTM3vA5C`qD)-^N zOEq%=hUma@QLEPsFt6G;OePcsc?k!Ih4#QP$tiFgqN&HlqNGJ|z@OA&Nz}jq&9)tm zYhyEk5kcE31`CA>f%8jt2*1_A|7wpPJNj-?Ja{**dXn4wZ4nf&n%}4CP-Sbo`^;1| z0@-1Gtm6>{I5MjdUjX4&$+Tz{3#9Qf$<|%dOF&4=3Lpvzu=o_r72kV!xj&3di!$+j zG!uD<<`ST4+&n;u-u6RC$a=sa=s=|g?ulgys1vvfKLLe{viG%PR@THL(f62@HL1yH zGL#pFk=wOZ$-J6$18Q{UrATtQ2C$2uQkU0`en45Mw>FQi%n4Je-i)Z@g=A3}3GP~z zS8Ecc#-L@m@;cJQXw3-t=e7~3tj9yS0$@rljyrvQybia?8KX{5#GS$WH1vd=F={Jk zjLcb~R9+qHI9OHIcTZ3 zo;Lz&5a#%ZvVp-(%R;!ui8t{OD?ZGd(L0PzxONN0-CoD@=A;NUuS`QUC-N3v+D{7_ zETp3Vh^M{sMEs*F0I88|F?mZG6$UVX(*Up-$>4=9o$0()84v5cwO1*^0f9I0ww392 zlx|;{?m+3wD$^Y)4F{L#Gyu!Y{veAy_+X$ZB0f1ZuoA4nc-mmO$CL-~)8aLer^&Ey zMCodo=I%Krshvua)c_~2t6VssjpVDh20#Pl>d~l-H+BK61FYPk@dMgA;HvP3ygCZe zNxP66@an*xM!5{KQ4Sbg&%+bp#S+Sg#Pj5(D>ajNJ|8@hh6+5Gh}TdC0>n`|luD@3 zo8qyO2S`5ePe*$5DZ*Yp#z#;eDSiDL{e5JLOE7#QQ^?_d?-9~aq15h!Il6ACkh)nk+a@3 zBubZ~On+S@){}M5~D=vzMNBT0m8}SVto<$+=(qfqnKO_g)cuXRA z14c3%@^CV;@tEReNBM6&Wlu#mL4&@$f!@=?NTBu`DN#exwml7W9uMcG&`oY7b$JbH zViHfI#}scZKaEm1MXCPAD66_bVF7-f$|t*ZD2pF`q4U86Vi&C8M4EpBtjQ%Pq4VY2 z<%q^KzFVLg#l8S;XbPTjyceb!NMTP0uxHSZ6M;gqs6mQI^g||>um~{=pK|GclFui~ zC#Hj(cgm&n4kjtsqyeV1w(I!^R8YZPXxE+)gWTZA7ywTLS`))fP7?>08C^v1Wg|g+ z&^pNoqxJ6C`=wI2Qe!-!gwDtJgtZOt)1(k3%T#t~!e%~T9yoG3IC3U&WVmwm2w+vj z#}j5CiXSgUtTHSM$^!CCF&Px-6%bKBQq9-X5h$IPld?>Wg+ntD)Ndvq2){UVVg}I{ zF3F(f3lS2ZQBC)0r~v~fKx5#D+k#X%VI@BDc_`_z+;ReN=#ngVSPaX(3XC@Fv-2>Q zSGzp-8ihG}EYAhr5zieS<+=RY7?vA#k|R6>M~XVp5t1Sub+Wq%%Y`Zh{PDC&ngfjO zdJ0@omFJp#dX(pmAeK3@l7)_<^ytd;7)p<=Opl}Vb(LwTXF527$8w=RKtNtkJU4@Q z2cS=+MB+rEd6eg75YJFNm#BbP4FMX;w{r7{Ww}>JS?*Qv;8ZMkSd`_$xA2-M%MA~Y z<+<0!@Z55oTI17+c})k$%?DhDVMQmgI#uF^#E&vQ6SD)%m% zP&=f*tQ5QzLx`=#h7KavpTJv(7&gF0><*-L1I2yByJ{TGB5Y`AGPQgo$HPZmDdRWD zzE43qG?ln9+$(z{Uc+QKP}(;E;ipQ_*X1Y?7n+1bD4s%N(u~+KatIky%Q3r?5bc6b zqBHv?pgAfPikBXCU3fgKcqTYwf901aA3Zs)H%sK>rCcF>8Q3x&0tOF+kp_0~@%U$O zC@))*8DT>r*exIzr3E4bq@%PzWPo&(76|E)2Ihwq`-jHJ^Rm&Ey0V9;TBmE85^4Gq zc^AOAi@c~vx(Jq_RCE9_{l`ejMKFo_pC>=6E5`tShQ_GVQa}t2Wxx`E6!jeX3%XAI zcQZ&>Asy|ybnlEIV-ipJ-6L9591lw28QJI~Kue-wJY|eW7QmKA!@w>X3=^~)M^Gh( zh>jsbFLvFqenAB&P>!WZA|Fidi*T5{iQmX4!4U4lq)(;C6#Sv#8+gAP$tkr|c{M8D z*}r!H!lN9~jtJp^2zUjB$Uv&Rj4T7iT?45I_fw1F@Ja_qh&bi#*qxjob(I2MdESmJ z2)QC<23F7{I&egVL>2@IF=-0Gg-l2n`i-QENO{P}3zsV~C69Fbof^^<;*hC<4z^2A zC@JWJb7>t!OJ}U}y;ZCWf0d7+dMnu~`B-nN{0ny+U>Y%{7LkCUBk%!z2^}i_{q028 z=<6NP0X@4b8y|wbI8CUnmBN15NX5e5+uiX2T(mk?{Z!pRp0qF^Mvb5LkmPb5+PX68 zjwV~k84dV>=Q&vM=y_VR2?p+xKTySDhz4S}GGXh?j#+4{<(IP4poTT#&4=OH+#j#f zWP#`ZVk)KqOYaKoPD|%B+IT|V4&~^qCP-OiXd>k3<>XMFA_AEwCx-H(5E>_;W000`brr540IOLHM`Q3dM9ONAyntT6`mgmKJA#xa;9cpYgtBQIt$Yr=`S zfQ%F%ZMm1HXj@t(CBB1BK-@Z3_*4Z>dap4?{g3-2rO1!JI zq!9vFwU!3s1bY;>s0T#-M~!;9zt0xLGLh!QZT9@ zVJz)qfOJS*mDB3=e2w=bT^1&s)gG1gJDh{`rPj$N!t}my3UY8@i7W8@LKMDSE4u70L$Bo>ubooX|3fee`!vp)0#AJ?A;5c)sUrUlvhsr}*9&OYj zdKjb*K~<8zPhFwTJ&d9sfl$OZsdEyUkSz3bpcQ0woQnY9vo1o3A$t-+VIT{xi{OL{ z)Ix!DYeJN^0zD5NB^rr&XuEV^7xoo9f#XJ4stGs(M0DelK_dW5rI2DkMDBCloFq~r zHjc{2BPO5Ro8%ABzN-F0eogKt61#19j<}yffkON&uokpT9(P`+lKh=z4*6efd$$s6Kh=_11{Ktv4F=0ZmPlU;L zetv*-BsX*jL?z`t`)Eu#H^j)1buoEvIFZL6iTT#e+rD0vYle7tdS{piAlt>MuadGN ziOtxTabYw@O?W{BW5b=i@^nmfZdW#Ji)j{7@#x#5e~HO+L#3?#OU$=!R~~*=mAhY4 z5n_T^jfie-SZ3h6jgB&G0*GIU@;0n-0^~Mgvxsd*V!C*)4a;x3_{Er3+?X>@y%^Jq z+nXgXsd95fN(WXU7PV!s<$Sxxq3E>Uk=`%%$mZmc-cQBEc5FiKHyWMA*rYi!ke=@B z0B_JGQ$9#4L^%ior`DV!C;5Z0(vYf97uE^>+wDE`qKCqzFJU-xDk5~O%L z9C^48ZZNZOW{T$PkPkauVpl&_p#37g?8iDKJa&#efkc!3tgF8GteDZCwMcmEtjyci zALpx|JuA-kXC0Fd$viZCj9wawf!)}gny+IQhs+v5EV1b7SzN$*dRw?SjQ9bkyRka8 zpIVKPH}?4mS^S8p3`d@aVb?X_wmZ#vYPD$AoxPax?wVab2i0KyIJ#E>0F?(%3B3oK zda2(Q^k6;nV=FftqZe$g6k-?^NQ0hw5odd_+B%xb?8)lcO5#VGswZ30Y+85#g}|_c z))g1@eJ#3nW#d!5j>YzBM^`qY*+qU(l~l+|aIWiuZgd&I>WoqTS(zM2K;bTZu6ve` z;}0U6f-m`;HCqYzRT>m?XR~$LS(i$k%eI?gvmMCiE8acQgc(dh2U3AwjMN544dr>qtu2sT8 zs&AmU;vIIt5AGuZhZCBJA@72x?G4RbUpELAMQ@5zp2JD-98RQtlNIxJ`4EIK4O)f{*!Hp%(EAzy$f3rgU z?{kH7oTZD^Cvmf7`(to0KPP$|V}qkVeEk8!@Z9sA44#1>nu>(utgZWNU+r^o@A1lT z6kESzSqSU&<8gME1|ZG;jCF0UXnce;SKtaDus!92c@(dtgwp*Za!Gv@3zWycm6-G6 zXRIhxsVBv#OjTY*j}vSZ+SzzQ&dGZxW-GW~P5L1SCL+3kaRXW&$6 z;g<;H`}cW~Z@*->YH-bVUeU7>loP)g@d{j&pFfEU0NwZ=azJ;9A5OAIYyCdXJoh!5 zp#4SEKE)A=T%J)u$1@W3SkCn)T7*MDjQC ze$Rq$SRSUc?>DRrL)iWeyABWjEz27p12tUWD1Eb9x=#rNSeB)@%yKi^y3fk*{v?rX z{+4aXP-~G`m!hM(^SLPh4lxsBL0Bf<_zqzr_lw?V*u8jsa0Wf@6Dj!~=eU7Gzn){w z#mhgix((KV9b!?)WFNOu0^8t}fFo$t(cq$_v+OBU^5R)m>{hb1GuVv>e2C)z1K^+h zk?!WaH^0>W6S<`>D#3ldKNXmVQ@=U26Lx2~3B_CEO!y1OJO7CsF9etn zF_1SfcWd8>V-3uEk($=fd=RlSlZ(s-p33eW4s%s@IkYokNRhb$kUv>u7HP*K*^SJG zn)Z)KkH+S7U4L;8Awe?${JW+AkyjCO7lCd?jG%Z%%xrGHfQp*6FiGtn)xvC>MoK;g z1+^a@YET-bmj84Mvldv#-&>eNKqq-E%^I?y(;dwAVrFaeiGGSV6H1Y2KScakG3SGL zMFJQGjH5SToU;Tf$OXapVtnMq+ETNonAgS(Vln#HvwD`;+Qv+&8leu^H3QF_1`<7@ zsg+0MOdInjKL8Lxzpkf%slz*(GvWb>cT3D+TD8TmRU**5*F?vz<^}{P{H&{aRaMN1 z^zUY-oR4qUcQ>a6=YbOdnP?aQO>kS}o9<>nLj%9{Fh^X_!1cY%N6`yni*2wNJ#j#vG_q1DNb)qVpIN!OE^R?^6g< zQ-9`kq}vE{uiq;XL5bOf6T8L&$lCppcgC6jhyq*MM1T{|jW?Hp9w-b%WcUPg6a@_4 zS!VXAw)$}8vR@n)HOfsAtnyCZ{pH{XXT&GvW_>)YiRSZ&s5|?G#8mO_MDrw8!h5a< zKu}T6WV3eMSzU`)_p*OB4R!Ppb8fOH=ApP8=^-)r z7IQfU@Wn0WHwss>s>y{&rdk1=cvtvuGuNR9>u)n*1nCoLH_L1ir3rZP5D%UaHXlVL zH7m?lwOx^aRhUMcwo4qF1H9QKiszc$vMY4~2TqexhbU6duf@8#W+~nO{li?dHENmq zm6j%o=b3Y~aAf~H^S*fWYuI8mULj5{Hfwmuo=i<+rmEjbj48;}uLn-dBL`wlOnH%VIlLSU4<^?DKF2l;Oa(c-cA1?+!{dBf z8F?d;&#XZQ-@UDy= zW^p)F`Ux?ng{lK^S-d*Dj;e1iKJ1$n%8&>8{5)fQC@4yonpv%b>imID-Alw?ExKf9 zQ6dPzkVP*1LFE-io6!D2u}ugD(9qldC{HGEW~ed%c=bnDi?MN zDU(!!n2+Irsq$hzZtLY$e(dalkuu5YKpsovT9YMD`y|lz5yFkqMk5W3ya@mjP#M`4 zXq!PXI1U@C5BDv={-i?t?0A~Y3}W{(bFVf)EL?83$?Q%WNOa0MN4mZEL4T+!*hBnl zxj9syzeBWKVUnd_@(M7@ed0P{HpSxsVUjuEJ7G4<*z3pao482@l^j5K6JcP4xM{!A z?2MAPt%Q=bPdvF2D%U>oo=U|%V7`ve-+aJqmyXYI2{h;o#F0bZ7P<6wtp_0-_KH>y znltg)(+`?;@p$(^vl||@9x}`DnEw!X_CB%oA+rk}-#-NTu~%$**nAqPt5?Yn?p$T| z()LB(TxAYS*0x0K&E}Jc8XtLMi#ah>dn?jrm$^P3&!hXyK^8u4aR}CT6{#HLJL0m>ER+U@ zc)9i|^lkK#YI9+omsEz2hrA>{T)HrF^$GL0IPGz9^-1%)@V!;*y~`^~3)({8ZwuUJ zRJ~`tq^kFnmqf|WCb*A`hIVY)1DO1eve7GBJ#oaW{QqE zIe8X{v`^GKXMTXP{vXZT@tFOiSp$y;el*wMw{|~40pBOC{|V~yKC$N~!nMc`Kbcoi ztp9<(m{YTWEik8G z$0Nu5)@;A_lo*$2wZ>z0qLqio?nJ8qkFV4tJxQiIs>gNeu|z#yP>)a5!!%^c7V2@0 zddyRgrw!{6Mm>k2g}vfQW;G^Kf%6ci5J9GJ1PX9~XOuX}tgLHk^%1`rDy!VXLzv$< zBF8mYrEbvW{sV973)rvI(v>n*0r#hil=eGIAW17riLs`2xvN%Ity;WkTCJ=6LSItN zBFnPw)AmL-TGl&$ec8R@j-YjozHCY4lc06RkMQpArdfRhPhn9|(9h_%9pj{!p z&a<{_Z;AE!R#PZi@8??`k;<$qQ@!e1!>su`AV}vCQ0MQ6Y^`fe*Wz)_LeLieCyeG4 zDznWK2A1%mbWcJ(M9EzIgwZQY28@P~#9k$KJ82ga4-%Q;)DwuNvtJ~wN8I@RqHw*@ z2#+h*8%@kgb?}2oqXKK5hJHL(Xw?BDdcV*r(ZHB$HL$vAxV7U%L#v5c*3e49`x6bZ zgppbFs9z*g6V+o&k@XfbXEm}O*EWf~#ul%!8B>AK2LT7;k^WHNGg@%7xT>+`M1Q29 zSg}7ogC9}P_l>R2scr?he$;AA?j&)+w?vO7^7n;JtU+k!qb63awmI@^6DvUj`-p31 z;gTMa-^}Wc$Mwx*(WjeP^-%P^W*FEek=-1Gwpk2nZVko*-OUs`np>~py`qH`&iP@9 zWWD5qKs@o(63G*B^bcH5WVf_B24>$^ne~&{*3v2xJz82R)t1EMFSt)!*V1YzKEe;} zpYwiDY<8=cR2*`HmsAa|@sen8<$a=lE9^6?j=<> zUh|UZ#w%i2J1bvwZfPZouC1-ff!X(0Lf~hy^P*V|#P~K=mkWzF5XUZ&Kcejg<+ru9 zCb!?Kj0-*zwh&s==XyA#Z~RBNf+yb*52xp^PM+F_32k$5}zIuBimcf z#lHMkduvU#=VMygdcR2NWYrgc>0teGu@C-pnRUY-Hq}5p($UJe*ykrNk>9@4pBO;{ zvA5I3d-YT2i#ON9xp@AHOXMFz{+}3~Q+)Ai@4ZC+hs77*0?@317+UhDMt!Wrs>Swz zUz0OZa7M)H0<2li`oAowQW_Rle{lK@8XS!Qo zXo2S!gZ+P~M8O&HR8Ol+Kk}`}=w(gRzK-14%UZ9IMtiiso*n7l2TNJp^0TkhO4J}` z-Wq6)z@y0^t1Tj$mEnms`Es@AtA48SVCxii}?Jl8P3d z@sjv{1yms>-Vv{k|xZWX4k)*)VQlgd5q$HP@}wYYt_6~gapF7bQh$Z%_@rmxn; zjwA8SMcD|eMuw~=O;rQM)~zWbMp$#>wAG^4Sd1oKbQ}x*9xtvLYZXD7E<$D!?m&W@ zf%#zMnX%ShjqSnaJ{BkxU3AWM)<0v@qsCjuQV-GZaQBg-U2W_~hE1@NHSI%DR%SKO z7ylsE?no-E{_qdV7Mg=0VFlxCdLiBRv09Vv+6pvL=ZDDb8CC=|6KQ)h>oR zYpO09t+QH+o7Y);BPEYnDM@0=Lssp`kxgI)^jcGNK4L9Po;+^c=bOuBZ)?CRr|3wBoZFSK^ z(?_fq#m8H%TH>ZPR$6+=iLC zSnmfSZ>+UOYmwJ>LRl5ncUxDB+-=r1;*IYy!hVlgjl|$h*8B**92^%3Y_aNUk>vg0 zYKf`~K5_3M3%3}(Zly*>{LT7jyy*Ox)j?#uZQT-C|F-p&F77{M%@-?QM@2Q?u^t!i zziy3=y!wvyZ+~Rn`_`ShcZmFVy{D^DzW8@T%05$k91^M_WGq_d0aEjr$*YoAEH zkE{+>f@&`^@(XKjlkoNzcKOUD2efow(3gi_y4@Z0)xfi}?(-RL&sqe7z9jd3)2g7) z@4nMx57JspdI0LN-1O};lX9u!Vg0EK1J|Z?E zyU{UJ6^@SQ$qv*tyz~lDCnr!Z<=NF$Yd#>Z$_ZpoIEL)ln$sSs zTI|g1piiPH`kjN{ymuPLZReG}T@U(PaQo(*SN53rI43|W0<%`2b-P#k1bu`EhjFP{ zDOH949;seg`^#g4zB($~_uzz}FW!CcUtQc*E6_-LMQp4UsI4RU|8({qa8?!P|M0!L zqNvQ}-o5m?h@vRv^a3a#sHli28Y?cR!s=377DVNj#n?bmP?W)liV+i3RIJ#=7Q0B) z*Z|SkE3rf(M*rXEoIBjvn^p6^$ItqlnR%XPW}caO+MH!y=*bT5BiNmb0UQI=ZI|W~ zg4a>*LuIb_Vxy{_so`7uu}(GA+;(M(LU>(P@)f<&r#oo@Ev|qE$ht> z>&^0l4<>U%E$hpdqAok1|5HPGgEjAz&+MK|ES=)V68e4o=UO(nr;r3;(O6`Zb^P!?rHCM(+fWrp}Ys+>Qen(c&B6f7RpE% ziu&fv{iTM#j!gypzOEK)u{?8)zZI zUkm=D0EHy)Ea3xWzHG**gu;39&n*x3MwI1)KfZnW_`MsZT5%ib_Xi^rZQTJ+1)K}` zAs|x08Co`R;Cn)AioUM+Amxqur_cPqwCsFuAhS~2vNu|`Ev~?o)$ua4$r|WB3AY(M zX^>L@Nu@*oHCHIcROuYzrEnM!X=&&wLiw~!Uo%}+wUo>llx3aY9k}8cjz=3UgLsy; zz{ULkH?5Y>6v5$CFg8n^x|wChvNk+i(vnBwo#^QC@h&DH>ihLXQTU}O$%Wf&pR?PZupsgwK`8C=Vtsq1h1zIv~LUytO-wSQDMd=}4&wyS$Z%DjE-3Z{5>`J_vGcvPhFhOzP zDhIX&%!JUzKn@49_GM=OGp{k&9I1Mv z?3zd9mdV@+XaHUUNIP~k;GuvFkTlJ6U7+UpUHw_{#4GTMONY#)PN}A(F6g-s;{o>peMdk+w?E3qq1?R_uick*I`MuCe>MIKiRSiFG@A~p50PQ@EYn!B$Z`> zx21b(y4IHPME&jHGaPj`h{=V0zDGW>k)Hr6C{IAWP*J^m=1)u(lRBbDUbp>vmQ@H% z>by1O-6GMSV#IbXj;dK5@$nqm|;HIzrO z_3ZTQQ8zS<<-ak56TypgVu{zd%zXILLROWoRMT%Tn+#^+JkkKR@faF6 zwH4$mQSO$IC+_D%GC99`5Tie1`1~L?wE3d3WyRcKLs=Rmv;h_6OfR9gGMQKJXo>rI zMY$bt#R7a=*@nGbl6LCP)Bst?twXty#*i6MQLY89Fv~_o+t`ZoKEM@9`H=c-sMF(eMP{KJ$81hGzQh?Ori1XdYv);|Wq}(2;&C@TeBnnr^vHzK6 znVxrdOJ7aaQ`GBspce~!1#rcbs7=C61-l){LT0OfgK<@#GUJDUE6!sDV=89w56~tm zi{4wul@_+}o5;i_eGZi*@#Jp|xSPbcGE=dwxnx5H3M)mzKu^j-fI_7c#P2!H~-T zgh>!*a+72Qn(l46KUShFFV!;e!~RI+zq+Ea68U{F7SYF(6^y^FC|?W4!ouyew&lhf zi?Te3+xj)0oo?|K+8!F0=f-#AZo+h-(G2F@u+!uf=PR;5H+>J6W&Hq&(3;QLn zF?IC5jEwTfkc43Tr&G!^m2)-MA#X!|R{wocKZp3pbe&Nzlu7f%y~{@=#(NjS#v_Zo z2m%s6NBa@f1~{0I@W_ni0d<{Q<|{TI;a?6~q5j}OG$)(q_o(bZt$11+&=|DSjOZDT zcd-{lxJ>nupZ>%WD|=f{?!oHIq|&qdALkEr4`caKq`A) z;;<8&RcPx&FL-G4%#emLPvVtgWHQeJU(6PDRkF+Tj6^$Mq7_qk4YcB{6TkcUb<;}T z(qf5pMJuHL0I59t)X_?OmQ@nzeXWpwS5%dfmN$dHa*7Qqp9#Wzwy!kahqm?FS)sp{j|^o@gWOOAoE~ zHfb1bAqYW}Vq`K$0iSeMslGWQJME{SalaBKG0RJmtd*DvrVD^CZ$o)tmj~s8LcHWH z?d;$MZ6}yr4rb&Zi1IR&dzS_y^bHk>nY_f~!A$rPf_5!vX>(;u73Jfd$vloW;Ta{? zc8WC1IXgy{4&?oTsXzB5U@aI@Kuizu)$nrz>iYnm3P?s$ZYPD<6ZNDZ<$7AKj|Zgr zrRGMw%&tJtQQi~v<0|SYD*t-FG(?pd4nqA?s3*p9y@K+Us3%xi-+=o5WNqaJVl;5y zd}bElp8y*HI{@+c3I-<1n;^#VfFkzoGbnWzjz%3xr?UL;;B@2t36R8pI-p9{{>u`< zbEu$Q{uUseu}=WWYyGiQ-d#yeLT^B79|YJ5a5Ny9f)fCH0v>WV)koTy5X7>ny90awGdBMDpsNRknu^CXlh7!j_YfZNayrDgCmXC4ERn9X8z zA}lGjuBjNrhEfOAR*Ab#!o9rYLW+S@!l4?DFnAQT=F}W-0b|Q(X?U;)49>5h+ zJGr8*31y*>h*krxSk{FVZOyM%REz+!@Gm~EV7${4Eg2sr4Y&u|9d_D^99Q_5)rj zJ@kJwDusB2n??+NDeZnA@I@yw{$r>YPORwgQakPNLqJLt9ta%TUt~k*Ikg!TBa+va zBNmKDf$;EB`*6IA4J6t(VPoQHR@X9b)HQW5%8kS>%+m$yPX z8Kfd+s32V_k>1@3>Dd*%O8L`=B+?gJAw9pMSILi^@=|%OueL&Z6-ed0%xaX=)Ljxk zY?ONb9Pi?U3Q_%vA1n9VnjiZZdJ<-dL?vZ8cY3Zo=ni-ny$SeY1!*d(#BV=OBJI%% z>6;*xx5bAj_bsO?S4iU86XfEoiJo^IQa(>K=(4yHFIw(>bSu5rfIRUDi58FS6UvH< zjMyElDV1 zwoz&JR7cP0DDRVOisU}@3iKwPl~T{5?kb>{F|d<|@Gba@@(Hax;nfnY==uTB3a5|w zJvD^q4=;U`a<|m)lh1Kw57w<0U3FbDBA*!vNS-7;#ETsL!$M`+y{{4uExlGXcqsesySS2_FI^y}kml2cSF=a>e8_ML@>` zZwz2Bz#-(%S0a1}Dboz;k@JDZJ7wiUZSv-zvYc;P^?dmZwubu>q@Jh?^q+YH$YP0G zL;f3(g`=?bH*ntvu5ibG3zrgKQ`=IHc;x%9nz`jt`cTII4)x*;3$si3 z9Y>b&sVr%2S>elq6ms|#TQNscPpy&efnHmju;fN8Ibic8(q(uTy$N_6CN4Z68n8B! zZ#8j9s2llkw$^O}Xh|ChUb2A3V@TrQ60NLZWnR=LJtqObg}RoRRVFHaYhd-IRS*N4 zjdJI-pNzb^zdSI~52fdlmLqGiZLUUJ-x3}%TL%e?2OsZ^XWjc#%p{*T(g<>SAj*$` z%}oBzAYAQKDik`uBSxp0i>;$trt{~O%HsR4mrwmbWWJJQerWwd0qwaM&OFOsQGAldn^GT@d{=S&rIFo}L45ox-LH{YzJFGF z;_p8^l}j@qt+A*VmpvjAP>1$fv=0NMt+N&Vj3tONEna>s7J;<2SUs^?$Ky7acEfP| z2wD7px#7JR^g>4Bj&nKc$O6%`+Yv%_mCkKvRA}X#?F$>Ey^XzI`5X##**8g5Uvfp= zf|QO$-{uKBddp<)`&&!X@iEHs3Qhv97B-D|6 zLC<)+3w8b@j3}M#0_tcpE`ns}lb{a)_XDKoR!l;UUhYR(OoZC`wF6n(B!rsscQI&u zT8wugN3q4%fl`jZ(m*x&%6L4VJc0EtyaEg{HsYObJbXob`vlgvW;0sF%&7JLBl+Ti ztkZw>JqCS?J_URawDLww`%VI>@zSs-wLNZga$ze)Nt32yDt&j_|EJh-< z397|`Iciaz&+7^0Lqh& zP7NS*V~hLj)>Pu~3FR}r)9dB^1U8utD2u%y^zpO6r=24>}pND}!7KQy51vFR0nsDC@D z$01eGK-NJtY%CFEewSK{TENzf#T3+&B+0_iAcYZGih31gqLJ&LF4fa=QhkC)Nq^27ZNvE8MXgflpEv%TkYWw_(&Po+nX|Px$)d`1t)< zCy&-@#G7UPF&^(?Nd(*sTGBkCydGtt^DF(zxf{#8jwfFHx0v$a({Q07%M@ zo^HpNmD>AK*VOhS%0iVc*ocYxkCkV?u4?A zD&U=z&aGf@JYXA?$rv7uG6j~y0L9?PO)U=yO>!1O7Q;e_M2Jqny-M8>89h>vbA=?q zm93C!AeHSxN}6cYrp;yHuWp6(fC|#XXmVxuL?*wx74iu{7eb{$FXdmIT*|s^lm`6} z-sN>8)DWcQv5EO6dR!)bLF$#r=xG8eExQn%oH!DzMR>H6WnQng!t3`fXCS@;NPZDV zru}>)uRV$NYVLhfx@Bc`O-d(Is( zW%W}gPrQhQ(#Boh3i(Ko3zw97Pj_BN8u?0z^ll7kr8f4L^FN0W-(UQYNd6vD__>6C?e8sfV zuTiZ*XX4q$w;zk&vMSc`jT70yZMxF<`EU=vQf8gPYWcc$Y^SQ8b-dvec5qd{I(|37 z!FBvcf>s?LUB?d29>6cIV~1o9;;#@G%ezkkIF<(lPUg1|IF)}x;7mT$16aV%C9s%3 zPhc4@`T#5VNj@9Ze8i-5H{Fj3oQP3gg1tdOWFGZ&e=F**DAiZu-(9K~cof_bJv|%2 zL*$Yw1JZ^x@J-JWA-@OY9KGOaD*fV6TEb;bMR_Z5g|ZdDWF&A`N)fdPQ9t(5G@!7- z;!b#+*POaBHvr)va1aQB@JDoXc!~2BetEBr__*bA&qrDKUxdC4xWXu|LK}p#<5`EY zkV>LU{sd%Ev9$uZ?I&eM#9 zuOKo?eF+BrFaU}hMOiRJRc0Mcl3dvQYo@ zP7gojVAghLlG)a8_?**NufheO5NRgDNbeLAl*M23d;{y$RcODl0VwYhfhWRXd^I0 zL`WD?I3o{jTPs8RtYT>CeQXjL)P7r@Rpy(r!V|OF22wI-qAW)S@;k}9t;8!2UV?^3 zOV4hI12yeWYo5V+C&&K> zULSsLiS+=wtO)i)IsML|4|Ojur6Q42_jmB?X0Xn?d9%_lw47Od-3-?0gsn}f zn%%3^1)-jWpXI10A7C8dI6%3b)HD9c!o)z0otb`8b`RibsBZ^20`NgT_;e(u{?M2n zZJGRRG^?mT3h<57(=XHH_PMCK=3MafdJ&hXVP6h*MBI?Hi3g$PVOr6PiI$;PZY(`2gVVE+UUg=a;@N5w|>qL(inSNjfA^ zoRhYdmE8=y3n2*jYad_C##lw3mnJ(;;x$L&mG%nP6Zn$nnJsRG zS>?@F>To6Lu4U3VRuL(sySnc-`TtUH*!VxbcsA>F)Mx0CoY_iE@h0lYR!zd*prbCF z*L9%pit-jf3vdm72yaI{|9&>pn=d&xy>Sl!_eFE%7F&FNKKT@)FGNgQZz9Sxgmo9B z-Tn=b%)=5u@~f`_>;QO2seUWqaVXEn4@v*T3)8Tu^xF>2nKN*Z$V|>g1AQPYehp$8 zHYe2|IzR2`BtXjBj98Fr{b%q_E^PjyblyUB%|)5=lH$yWf7{?f)Dgdy_3+9Tml^;v zcV1lf87dD%(+}nSM!1gyR~W`h+_@6&hrlC=Z2%<4pmt%pFe3nmAA^cx@v{eh=9L;& z08)h586xiw_&Ul10e8A2l|UYlPOb?^5)l6Y*{3-Aq-WRg?Q`%CCy6oLv^-S`i-Au4 ze*juSqxM?BE{jqD(-`TYvvetbc3Yh8|2!ZK?`z=EWzi2;YLMNh@+Z+R0Ol0ZFT#3P{Ji5`Q!BspBqa-w$vUAWi55 zFeNDZ`#t#gqtx3AY(@qno~csX{P9mz3xDujHY^`Feq?CAVOf#k8ji|$Igf2BDyHG02PJR=UC~vq@AML3ei>`ed!Emn zqVB|suX>TAd5U9d{+=yRE+rJ#Q`E@yOv8v(Rq@@u8p_>|F6xRBI8Lbfw(Dpp^b-uk z;P&Jrma!iB*a;mo_H`%lLoJ96e$NGLTGg550kz{-pT~CRPhQA|6jawR{UEa3*ib^x z_xI)P=QF!%KZEDzv##8m&$?#^@c*07_N^ZHU&1JuvEu}aW`?F_s(!2u;{K&9Ep%hk@cB^-n3fM*H#7pzQa!^~702OA7BIUeGCj*u zOveRZ1zl(}_+uC0qG9_2HnPUhVo!-9%l0G3SFKP#J#CzN5j!yN=%MY$rUH~ek8PVj zdJ*&TvErGrZQ5=en-IRsm5bTLysKlWtUz_cKrv0n;_EKLJ;uWqvk^7uTeE#TP@G8D zLPNKwrhN=r$c7heBhnou2u#~{@i?WnYZkHt@~)=2f#LdrZ>Z?f=ASKOa|@wrd6w(P zj%`M<=MOoE|9l%8+<9`;G-SvW1#2Clt58K_;KoDwq(5RDn=fI5@;27b^?c3JBSkkt zo%gtu9n4o>%FZb$exO;Aiy@k(Yun~wKF1&*yNfn}P3YK)l3hc9B?`K9kL ztq?0lpz2O&L#T%7DkJ$nuVG!6E@t_H7T6J1%`!sGFayIokoQ^4_9_HMsF)Kj`ImNo~hFEHQG`|qoHL7ixs^|HEZMvQs7zdrl?|7a0y!J9ytcgQx z?l|^i-L`$raStBLM_$PW^-fQDQ@z&|ku)ODbiCNY5Tn?(frv442y(Pk&2X`qb^UO@?s+z-M)wRI(r`Q_gmgS>Y{0!g zvYxzQ39|}Vj=^As&O;hg3e}-oj-{&>j+AlY+>(ZR zaTz}{x{4iDuxwYy`goq}#pp&mg$~y^>|b4VHJlV5rzh6@I=5U0pSy06fc^#pi#>#`FBYS;rbvk6cZ`%&{poF9`k8 zR{7{^X4M4P_@Rk?ABC0q8!Kh7V0k#*yTT*Iy^s8)=nb|Pqv$cPPfG9B;!ICz#~ zXr31;z8CqLF=amY?qnACuch4q?Q1)>;d{_AP~r9b`zP3pf)W~zqpL9{iphlfsfmEP zDt2fFF_g0w#n4&WX@?CvX_hmzwvJ!64gWgm?dw>+Mn^lu=fO6{s;_AcqxriVZ~|U_ zl=Up=kPK*X%5}%|-FWKKhuGdV5jGVL4h*WRs;Xs7o65IrV87$nJ<4_|Kt8q;YfwN? zkfG*H=Vv~Nfg6G5N4Dx%if@HZWX|9l)-k7mJ?l8G6KR$Y(-E7e^PeAO4y?B2;f(v( zRH11`jmdNhu?BnL!cJ&`f?Z@63Y##c03(__Qc&8Acxc)H>FrWGr({}d!J$*3n5OL9l4lK-~~Z^ zhQ)tBpLOEjJjH6O=Ioy!_HBe<8>4CAtf_E+;^|;%W6!9rty-!TIkw`QnT)+d09|5) z4iuVcxr*zZbxC#@ANdjM#h?BwJEfq8mTE+v@904sW6Pb*?Wft2n$XAQu>(g#yA9Jn z_kv^&{K?f=IUoAl4^$_P4G(MQ{hyhPsR#bqxs9p( z!7XgpqH1Z-(SaGlkFvwSIVWrJ!WY=!)1P7OifX80InZiD*LjNf2YequOTdTT$%;^B zx(!95cVG^@&7H949C6LRV4D$W+6H*`b_$4mG#wIaX5$1J#GR2z2Za%~y;|mOjrW7DB_Y z4H!k*3($D}rRlIEC_@`I8ap6_rS})n_>_EX7@irqt`*{V2G(Le=YDp00Sd{2Ms!?_ zoEpozjQ{*Rd#ez`SYR#4o%1zQGcHf&2=7COZi0paUz{FqNtWMxEi-E1puqQtP20qQ z#o}F&<=d}i{a~9=AE+UDs+Q$lN&liZJG^LP@jY9Od=H+k5l2h2lX>m+I4W=7%tjWW zU0~*LqD|NGyx8a2v#B+jHrb=S=L8ORr(tPul%XJkW!a-=A}C2?iXlVlr_LBMl>#}n;K1P8Xd*;(;(&P(+-?f-vIkG?3e?F4DrISZp!qTO?5H;MR707OruN4Y8vl6(%N0$yORDd{o3cG@?Y@?&B zz+V@n0riF?DRK))rD;$wifw9GPKDT9pFJ-@;y0~iyVs~57S6XlFT(bO?fX;0`ZTWG z$aX6_x}`VcaPTw(-UMQg7(*~t3Sk}mX9x>|v`j=13T&op z#@>zDW?JQXzW&c_=b~@H3ZvH2F{j9k{|rq)Bkvp5&z#{k1ykxuGF1^r_)w5Qgu?W^ zzu*t(5+dL97siUZ1}_Ju+g5emwhVPuskK-Av>CGy&rY9lCM00NrWl&*=uzYvwqxDI z^Ea`kE;H-TBKeq#XT*L0U(vT<`t_Ts_3Q%X?R%l8`Fa=!w(8!(m*2$pESNCnSft1Y zPgPTl)qKNE?2ko9)nTP!HjT(ah@jt^9ZmjeFTVU{*15(-I1-wn0i_q{u5nwok#AVb z9KP`uwr>&suou8Jchv|6QuS_c(F&K1A{8t%tTJNHHTW~j=iG^-G0p*>K)K3q^S3Z8>6Vs_ZletPBxHd2d+mRkRDrsb7yw{1aD80a&kuK0MY65RR^XK z8v)TEbd`D+zWE}Kd(Fn*BfvktFENEMv1wGrRy8|v0{iala6+x+f4!BpFM80eQ1)7g zNRN#4Jz3c)fYV}HK6FZmUMxqum;dfIXscK=?NCF64Xv!h1z1a_Wk?}F+zEHxhkpb* zBfKxEE+Qa>4#9D@;IzYiz8`;&7z60ZC*KZhts1Uvgz&x;*do_AAK;hV&P+u5INXjI zz@c(g7=s71hwLEAEnUOffe_9F+$LM|40xBpLwx)i<`n|nj8%lDaK=mrA=ShDoV9HK zqC~eu&-p2u?v_)7IR<3IzpD6ool4yiW&4=22dECz}Tk#qkxyj8+_lv8!wA z_|`kw=|$*x16d6p;TK#+&3r7oFy;03U93~liFF67f({ag@E+j9m{A1(7tV;HJWJJm%K;(;3RPtwwtyzp1I2wVJBBN_ zU|S)E>{7HmY=kI4Y~o=kVeov5RvaSiI34*NO?6dGe?e|7IEX|P&vOuAk{WhitmwK1 z12PPSqC!|)xX>?U%dvdX*J8_3;g-8PTu{|mpFMa-Y_uzX-~rYz`!av`0d@_XWcZI3 zx^dbtunxl-IIr>r4G;rn3-cP@5b<8MC1rWOq72?tKBWnjyox4-k_ z9%eI&nv*#0rUFMjQVsoe9BuCrwl|;g5!?nTOg9x7VNAOo6 z5M0A~P$J84J$QZ2o4oE3W)@rrSu=RVBsM5#^DW+U4eOi7G!giyIQcHJDazaY#z)vm z1zQO;+FjUy0rG6oMqYRnDGGR5$m|$y;3HOoYqKeFMUcva7pEdb4?tpA_GY-pA48AR$)hw^uVEw z)pxV^?1;W1zU^^ZBP)u40L2m-s%q=+apegX7O;aU?E~Q?arypKoYW6EWU_G<( zcW_R4nH^b(ZQYC%KZG*~b);JVSRkXukJNN(4)ae1L(F68^oaYu{#1p>#}dKK2zhIFGC%Qh1?lXa?eU)#IBs zusYHqj;<%3AfymE|4LXDEVy?#qaHjKLwD`)d%pb@<`$sRZRjCGp@Z(5?l%7DtE{fO zWCm3v@R0jMa!^Ci82y_N>Wk1ML9Af0Y?yqguphE>Df={$FMEx(uK_nCoe-yC-{__i zZO`&Gufwu$dXVa6n^@1H2`!A%jRYbxX}0QL{Hv`C<<<_Bw3k$kOG5jO z-2DuB``b2yKUM+z1!*80Bp;{yQkett@-2H`#5Zon29I25Cs+W-R29U?{$k$m9aK}o z9QxNp0AZMLx-a81-eKblp#x)rEFN<02p=Qma=zgmwyHpv5V!#epqMr2HG2s^>Yr=~ z&N+650rd~l2?g(7QPpnL^u~zpTxP;Iys|2v6s4$k>5`EA`9I zpEt2$n*)>A!WQ^q^L}PKx2cV%H`XRt2P9ZSh9nrn#v~cV0SC=#!Zp*(`rrVBZebKm z4-;F6TZPDpV9bzThjCa|h3k~*-y;<@>3eoi9yv0N(oGuWAWiQoe$V&#O@%*J@wqRt zKEsgHAmo{->osuwL04c<&!rPyChQ{eNJ4 z;BVMY`hg9}{+VA*ZGYhp{J^?pSMk?=U<3EMsjAPBr9Y*0T=JK+M$V{5wx-1&*SdMh zgkAb(Z&@;Dmp!tpmn`3JI!pI!dW4u!#no zP#x|GQsm*CrFuPvF+#4yM3N5iy>nNo-qsxto?+-glUullxjU^d_%1T(9_1GR!U1Ky^Udl9bfk`n_Ps2!u?E0t{w77-eXl~mno0!08iP1U+e`)MC0(=k5@I8o7?k^ zpRoNqAiBmv=!k3K3i_7)L=_VH7=1^cjPIyV*&!VQ#_e=-tZ=Kivb)1SY9PS`b$#{ z>*=boM5H8=!@UaP0a$w^Rxokz8R`|Sop`Uea2XIG$w21bcagEh*q`NnK4Zs1mdH9| ze?_=BiQy(ZS2a9c@0&hDc#04Kd2@KYNb?|J89gsrKSOH=Hv}bkFC<0E6+KMjR(5)i7uUxIfA@8|FQk6*woLy8L0R&XVX%UF!yb-vq|Y(W9B zJS1k|4g**3xUzVIKlK$RWZJk(Kx!0+75RT%e-jfrcq`i{_0=ITB(ssoM1D2aHRUZn zdMmEyFnjm}2I4f_HHM1zHotf)cp)hcC5Kd(jb?bV8^P<6tw^Jmg%jYW02$LjM;;Z| z+Ri2jN1${sSd<6F7KY0e;6gyzoLIkNNWr;+s1mo3p=+t{z=i4aHJp^hg+Uk#1&6G9 zuO_g_eN+rz7zx zU-K_EuBZnNQcHRmA(MjSdH7kC&9{7syx?7+je6?ho9t+b7=sz&e)KSCn6 zZf9-tns36O6R26;dJo_UviqIc)b%M)V)xeqazJ`(k zr@i^~AKC5*DKVoE>xJ7#6F2JL@by2keY-|8$&;ZZmxudQI}VXH3X!6+`AZ2;bV0Xx zh-8sC(v`X6|~2J&IJj|*`(fer6F+o}#tTKkq5)J?_TwoFrSp@U2g-J@xgH#Y2lCq40r zKOs$n1TLIu#4EVobrJdgP?~qIrpCydIjb>AcjDrLGMTstg5#tI+ek#FZ(6eW>*q`JveRxk?J_im_ormHL5>)B-|&YhHE4f7&(I<;wGO`y=jxYJnnw z>PKoK_Rgt3nQz|Ax?TBIPRqkdb&y|mp*e7oV1{eeZ0_W25fLQu>lniUqL{L@)LH-U7N?P5K`R`Kimh>Hhh;h zxfR7&!95o4wBYn$V6L(dbD`;SaB5FSEg!@_5*A38sW!4ffysYrlRK&C`M6%Qar5IM z>mS;|rPZhL?9T8MFWMP`$K8sDJ2+&#kynQ&x2SqX+PZD$+<`?Ejx|!UD!z}=G%V@j z>Zxh#X}jcx7d6DPkcH{O>4LkbTvk1eT6^=2)QZ#&UDM)h(WSVnTwXmpr5)QgH>MaP zB+=ltYxtT5`rcboZKtzY*EW~SBh?QTfK)dwRH~yXJ-#H5?+iM1~3f02yGPS0Ay1uv;QJ ze05`naFr2%gTJBM=ydzkdCE``no7TdNNzri1wCe6DBpZPf>-C}-z$gR{5u zTk^RuyN2frx$Clb@HK_p=#F<*7aC{bUd@jt<4^z2nsx^Mw(nhh*P7hHBkr!=t*)+d zaviP|rU&;_w@V5zV^qAiRD_nI;@av$8MW@LsBwCPr2e9s++J1pSMzt*BP;Y;O)j5( zfPYw%8&UmW^#DF-J*@nJ#ayxKp=$b^r7u6Ln9Jesur4U(hE+dOJ(OQu%@%vr;ps@{2OG!=J)e@$M38D~CSy$folPM;k;lU7Zg@oe?3b#=4C`q@qO`g7H7 m>*}V?YQQW1XUE*${O=ue-SH=&*L1`AxWb5lB8z~=on6Fz!(DL~_YHT&|9z`&ce;}xIG=w1|3A-XB)4weTFzFdPMtbc zS#sAdH!Rp?>cWE}Y5%{#(LtufIe4CP&N+dj9Xw1XA0d45pXZ#D<~zzDU#3~|oHVke zpO1odj<}@m0H<}`6XL?U%SCzJf%3+>TSV#7FJ+-PWSO(X5h4_55pEe2iE!8n^S_V? zg+eA}e&J&{EJESpkZ2`DScbzTDBy%!iy-QL!P(WQPuQi$ayf zFP^_95KRX>^DOw$DXH5S+IQ%SGO_2Wr;R=8m@_6Ef9h!`OgLfe>4BGIE0Z_&tg(MR zW5U>@{&Lc(e?2kqvMe>ZC!B&($DDM+>6s6&)r|*tUe_?Xz!T9aqU&7efLGBlTqnPh7dw|Zlby}-GI_bYRDLaQmkZ>4`Hj3#UL-G&-^yzo?M!pN zlPBFH@0EAU@8$jS0ePSNLH6#`>qog#u97R{Px30~N@uDw#p!mr^Rw6@eiFZkAH~RP zopa@|N%DL-QJyF7bMAK@a2|A)J4IK0)Mv@kc7-?H-FKN2jRsUe2_+MEI?)286HA?F zi-5O!#;SmqOe}E%foM^{dv){bK%!?L`cU1+E8nc!va&!rgX^AO)wizys+Kzxs7P&G zsDf%4P!Uy>=$I^w%UC38a@@k0j3To#Sy&qn*Ns~>thJI}FqM?b86FQrqblIF9T3pt zXB4&(&(+<(x>p+CV<|U`M<87v2@ke5as<#@k{@o^cI$m5UgI*k64h5TOV ziB!^2g(Ko&rY9tW%E3=?M7w0r3+%;Q0vsX0g(?Vu9ROSqH979z96}rf#7=EI1T0jr zzroDmgT1(gQDs_AF$W!`l<+2|Pa6;j0K^r6@vejCFL(x3$Q4KzoRKVaL#mL#;pqVJ zx{Yg+`xUCth&T%aNVJHbFn|mbNaPYo(u#0~RG5UV1)zY*&joSu5+-ru4ib9wz0jh! zPHa*4;W_atQ!bWb>jqGCmQq0iX-FQ3KIe#ny4h>{_CtGHp|}{5J^(-mn^0UAKPyV~ ze*X-H>RLQh&<$K zUn#ok&wGe=@y%bZ4)mARN&>5{dTKZ3dxA^terN|0_RG=Vo3u;)+Td}mqBW=XeF^@WO>DiATDn_b;7AwSz;EZ74 ze9?JE@K%xenI~=$bHyy7qQ#l4%yW)#GRaou)5ZR6&0Aga$@_-R2$H$g5U4~qC3^;{ zJuy7KKq&OxP4=jfK>#F3I|~;|0={lCP=hQ$7f5vuw5*%8v9fO2)5V3FQZGitr`N4~ zanBwLr3xPB9iJjAJ!kLuLg~d_5xYY~Q7Uwz7uhd9m+~eC1j-F1ch03`IYcO7sFgr! z7n7<^B|zqGPQWb!JPFXLT1M(le7b!L3rN&!;TFWE1qo2w#n2E+q&zt+{=QJ6Hhzr{ zohEd3#T(kl#iDu8@v&Xq%^N$^UH(*Y;dH;+j7+tnB_itWj*hN09W^a9W_}~g=UdEK zuMg^75sZ2-1dy15M8FmJSLh7JkgnW2eup4&hQ&8=6sL#94M{nmk_Dt|pXUx}^#PiR zqW0yeJqXXsn&6Adz&DQ@>A8(ynrmTNjK*FhESI3QryLdv%0Ap`nP)Dus%3EUeB=tzW>f6XhgFk$jE3DLT6Bc zY#2ft>BtaTlh9)~fi^8chzmi8S4oizkm!f!`FK9cjPsCK#l*QtyvxKSBpR{wR-b5Z z`#oKiB^p>-$DW3~gPszoJrT8EXEVPzO`4gv&1MF%nG)3Ag4$28nV*sPo{683c$SGD zk(elu_yLKv%=sRPB0RsVo4HZ7{ZGTFdEH3S<-Yh&q4=w-8%fdCR*L?Ej(0^H-)u)4 z>AFU3)MeX%P&Cp+7ydR)6!rE16kh?O0eF6i=Lbab3nX4);&UYSeTS*fkh+j`_!Nn6 znDYq|E138giJzGG2#K$l_z;OVnD_vR$*i>riHn$cpBUG*ezmx8qEDzvBvi!(jgY*+ zB00@!oLf+ z{&>EG=NHU)(TK*B29O^yAb;{ujvC@2_;yzov9PBS=pGl8=~p9EqC< z(ql;chlxj#xQdBKkf>u~JrcJv@h}pNG|5C?1>Emz5-d#|Rg_U$AIrK0&+lLO0EpEJ z_177Kqe^BLe83R=W1rxkkl+V>*ofdCT7pkR8`l$vwN7*hW?KT{4Cd?#UB1WO@o#-V z(4LSi-( zE0MU3i4{o9XJR=LPqOfXNUUe#0VFQtr~8q(mWlh2c$}Z^MdDoM+>=IXBeU*CLNlu# ziBFkx7ZP)rgB6JPA#<=S@jhV!YZ31nep-UWjZEBu#4SuLMq&mNi;$Sb#6l!)W?}&n zmosrY5|=VD--$%MEo|{Na-m{umI*f-COqpi;W;v){K-a4c+xUqY@PR3X~#Kcwip(l z?UVXBR?SSg8|o&!HEIXc2dVM9&?BiU$4@xTE%bV#_jwu7-|c^2^q(jCb3l=4q{uBu zY+%l8BzD2`W;}Po^FMg*hUY9icgAxjp69d1O-M{<;zlICWYrsxn8cjxk@y@r>DYBh zUCpd(k+_118AwcFVmcBvcxpT^V8%5_T*<^VP^HOC)BQJ@yixCK^elF~zd`L@&5sytC!F zwXEH3TGn;md*%9Hy9O)Ezhz68p~;__xD<)En7G8ixpx-ROAMy>`Iz2MOw&sn!MW7J zxp&lij!jHPTW>OP5fZDJxDbi&n79CmHB6k3#A{5Phr~lnoQuT!OiV%odIxtuBVtJ95h4){w!1da0146AC!KS=ZyU!NK=r?A^L?pZy}N4%u~^I>fBbu_9-$ z)iMa*3LcJq=SYmuRpF~k1IR%^B&Rx`#ju+|lS+rK#|fA9AG7+P*y%j+v0 zQAsu5k#5ec}4*?w<8{uu86-cbJ6 z()7om_s6vQdlT)Cf%1=O^}lBDZ>U(=sRzb2%+c89Gr(68j8(mQ#T2HHwyA14Fe5>rWU35iH3i5hR`)!5zESd!b#Qr0*$)Eb4~ z$}2p`7RE}u0j6aZragR^+N08&d6o9Cm6qjJx|5Y^^kIdfvT(4i8G9qI7I&n;&O38! z-DNS^Hv&xBpr4I-H9TA6uG|{+dTIoibVlLV^9m2Kh3j(*-)%A3)5oM6D!pbZMSKz4 zQ;!RZzr~081-hfat9b>6>R?FxP2X4~A{|Td^%bn{1pN9V;!!%uP!F!_;qh3kg&rLg z<&jF#aacU3T1h)pd&yK&BjRz^ifcD6N`o6jrdG!$wL)!C>jevn|Fu?62PpAjKCGQk z;Q71)!*q`@3JmuPbU=X(c?E{+6)2!r#6j&Ue0?tO>t6c60#qO2SMP`d&*l{vp*OL> zNWVY@3OtinV5B}fg7(jDiT1nT>(hB(_tuF*vA5nYB--gjLPSPaqR3NbwJf+M4N^Mb z#RmaL#2*z{YzNKeUnsL$2Icm~YPl@4S~k1L2nh%=BmkSo`qWmU9afi@wh}$d+p@0z z!QZi?ulP~@R4X_(*Fp2pp}Agv-%8x-uSkD`GRt4@{9i?ozj`Z+!T%%9{}HDlpru)3 z`~M`zM*IAKjX0I*n6b{HF}h3BDwNnEfN4)Ti5>yI3-b<*{X4zW(`&mxf~}^T?WRdF zQ|f=7+Z3HN@%{bqYurKeAm@~__;0h=ui&54ShKWj{5`*~^zX&lU+*TkRr0mQ87& zxc3YGbH>-k8Bf}Q_Ns4|rm;;zJrhJAEcNQ9yH_z*S%1`3>?BrbRV_Mqm~}P6nJEnI zx%pBpW5t0$OT1Uha_?$=OtolNHkn0Y`9-3W>aVI614Q)vuUFGVE>9)u^$XoZ*S2>% z=xH;eqCNa1o)Up*Vo)GDDJX(^`3Hriy7!-B1-e83U|G5n_0|MZHfj^t_m`uT93pDu zPWWK`XuVA|WhK0OdzsY30VF|APcdk1~6Ss@cRqELT8_<5q(XC{;6&vP$SAr zw&-2sB;b5AR~DEU$?LSC8T8=T27@Ut zJRq=dP7ACj8`ldo&X^d?%gLX&>x;XKq?DV#)I0YO&+{4YDfX?P{1vJKe;zM1@`#Y= zL=Qcor?_7J^tEoaqv#U8>>Gs9|4Bd5Qw))>`gtEiw2-%ON66Vc{lSi+r})#-qoW7i z)uM!mB5ad;o6GLg6W>J(uP$GO;AXv`sHkiGv+s%lVKJ}1#m8cl5I^cE-HR$@Vo?2= zpNN-*xJ&Q60TnSnK%*sx-SJ=*Z2Nh z+>VCoU;9GbD8*WR_Ga+}9(#W+t_iMnT%lK%7PiqpeJzqj^VXX|2C3K8--tV;UaDXD zMl455$80KUUBBpCahVW9>IZ%=CIsd3rS(gG7QKbov;OTZVh@3gX`SUWV(7GQ<;(V^ zoBm12H-OA*Qr;>>t-dHEFD+TId?kP{$9O@2Gop{Z70dM-<#LEVE-c&cv+N_<#SkF3 zTsah@+bQ6(znqCDin8w2OyW6}&v`eHc(a+j+ku>TQz8HZ-12J6RTOcng z$1sFuKz~ME;AsNK6C?DPh^!JLbvh!C0AXH>$j;HVPFvejVu+3v%9F%U{f|PK7FZe= z%HHycX?lku*;njce`JvyBgLrtyJNDy5c}xQ;&P?fSKrY>u0vb@>>xYfF};HvtY2s; zTZZ>j4q(uqbdY1j5Iwx3+*@CnkQbp$+e-OYJkF_<2e)c%;YUD6f`Eh*qxJihvSWR) z6%H(k{dG}^++*wL98)5XFP;4b$w&fGD_xJBa_{yp^y?+EqG|=X3`y~RT)raU^-JuI zWVJsVWV3YoJ<(kcYc2N_YwIs*Ee{c;Lo8IP0)rx^qN;_8C-&9fmdZ*X+@?&{ikIt; zC_@DhYgQXM4g9Vtm)C5K-^cvEtgfF@A^#-Af%>hsa`M)Re*LAuXHq?wboh4hXUF>WE?61)U@16|@aE|+J`c4H zO%~n!pY@T>vP6hGb^9uLJfOLtN)Ezf zO_l78$JbSI1=x017wL*N4b?CyOopu(Kv-8|t^TyDoQ$%6ua>)ued_P5mOUlZ%iG=M zzUaNa-wtvgAuiFAddRBy`L}yKD1kB8E%38m+Cv@+z*_W_UF9mF&vC=M6}R++u_ikD z&mZ-j-# zQl4^)Rj^vNcU!?sDDkA*+WXjXOFe}!#iQLaDAYE(_b#$39mQ)UPD3R=hk=7_h6wi` zgd2geXMY^?RFM`kATa9}!>&jct8fYtKE=I6I9aYrCb$vQjIq2k*q#(aj0MN9`=^klk2Oid9^S4FJ+sS3hep<1%n3JY^P zALevpprbiJS6ZN3SfHa8==LLVVhJ#}H!!!wi8s}jFKwX;%T))!+%e@=kc6OQR8`~y z9n1lm2&A_PHCiabsXEwJ5$JtDj+1x&WyC&UFQ_7L9cRO~tDF^ZxWV0?MB3g5hVs}0j23^j!(qao2h*&o={3D2r*9(;=xoQ4M(RB z;pVqQDv1ztenTo|zGXgPRK)Ekqzd%R=OSf01Zi%<7~tZV^%J)Vz+v0O8b@VXfK2K) zpNo_fH-@W7?>|tsFP|rX50F1P2|+`L)$&+ABl?1Yvg-~$eeF>^OJ9(etA?y7`Xc$c zeqo>-Bp>=wx7l6(Nq+ca{Yksa(c+*M2%W153`SV-i-DAC0sKq`&pX2QMn<9`14{^G zL^2r>3K}UDgCzw^+`fZ4ab3KJ>{pyYF@iSmzl!UF_KV%O0{#D{G4Fgo>!&8v{O}yAGBk zu_ke2di-E{M7kxHbrCFeyx?h2PAxrH^cM!#=H`&kz#Ch-*^D(4%!BQ zr9F9AJDg^u-o)8ZqK85eZy@S;A|BRbhsa?SILHVYh59lw8d1eCrTE@buNfj2OBk$Y z?kOvSh*>YxyAP2)iYGd$3=e(+Mkw&LCsnnj5d!xOkv2)y5qUcQg}!;HEb)e+;ussiGYUQ!wIQ?-g=GQ{qahNPC zCuy!1<}9KSu)BdAN1GlsOeXu9R!u%c6@r)@R1uCiMFFy+749z&L`!d-r)Lh6ZPDX> z!{mX*g+9sncu{&&=4&-vmN{`%sCOMMyS1QYZ&u;~b4agvFIdi#hs!o@ql%9&gB4Yb z_Fn`s1!kE-y<#}5(s}xg;c~wS0``Yde(P)Yk_QWPe#Hn`QF00;irVq4Bp5#oL%LAk zKSKVcTcJM$4PLO9IC2W{i^DRT2iYyu!$->fL8uucW#=?`dA&nrnmwx=%Q>qY$MgYN z#7Wxtf*~&k&PhgxsL69NkwoVvL-uT~J-zHrH;ou|a1z#<9g{KtjIIC0jqxCJ2zobW z4lGIn*O1gT%pL*i;RAG^X(DJFfd35r z-ER3nXy(}@p_uJ+hwxVfVB2NH2fiC%YQM&GhkanTmgq72z-}waf^E6zK%Y>TQ-z#I ziz^1DNI2)*eC>N+9ppX4ZH!>G=!s&o)C1^fV3Fd*Rgm+VEUFNd@+E}=bxX%2^e_A%(7c5_^F-IxM5Le`LBJTS zE#!fsm;w+>o$@9Y+GenH!S{f#&QXE%@9(gP#0K}H&yqoB|QlxZwz z)X$Uq$!@)&23Q9y0X;HuVx~0GBr)22jr+^Dn9xX!)+GnZ zui9TI?7T@Q+}$D>86tTA-*_MQuTLH%`^k2DfEaiud>mAq9AdF-s5mtQ8ph~zq*1us5+e7y~PF^Dx>h;IT;bKgE@$oQT@jCDXxr<+? zx1Mu?>?Fo$d@Iqfogk|*IfPS~0~hLjQus1YkGF4k+qYL!aumLGI}uKvdHV1Z<%sgP z&RZ35+j=p#otJRiV|~@Z3%VV>+4_MKEpJJeY_!K$v6kD7zqo@^gTX0>6-r(JF zyFy$zohs2TSq&SK39tI3l-td7-0t3$mjkRFfKLzaY9@Qa#_t3dn!BSHcYAsNaC_re zVju6@i}0;44x04ywp^$uo+``I7c#5HD{^=7rZTxJ2s6ODmdV|`*?bJdIr`nbhnXDY z-OtA!AmU(e5tE*G#bi8&csKB|r}xH%cnrn1Lap~1lf%4CEH>Pm&+mJI@*}+am>lVC z;fKiHICeD3d-fvTVVo>4o4#cw5RRQ0^}4%BZ@zsygS;r!M~{;c=jUHm>J!JwF0pk^ z9Cw*itF9^cXg%rNP$#`&oGg@2P1KK$llxTNHW7^=50C2rFA@I{G1EQ+W!wL4l%<$v3g-}c0}KKNFDy8L@L zQx6%t4#R;aMDnR!4BRbEQ@gP^g6^2951t@*MQ>M5koVxR_ZfVvzu*jckpr~i|B&5B zUO0)~)gTXrCV5n*8oM+BkK{pa?B9(u&TgFXuWW{%g!WowYM#kWhN<=U`~&yw$R{W1 z5ocpZ0ZQz|v*C-4*Ihn@?taK=ufUc1hJVX8@oQ{W8MCggU-@r1=vrkOJGr5gYtwQ$ zTwjMyl%K+(zeSHcPwwwvRMy{ko@`ebJ^#zqXjUDA&7Jzym&xY@2JZAJvVQ^MDFfcB zbL%%uk#MuG)r+TMb$Yw5y;6>oubx|9e`otM<(4DJqn;~l}_CZ(JDWTgw!8D9Xo34*sO9$dU zdhB(w4p@ADojf%N{d2-hD7N+bj+ycVajkAQ3r?-sx@MLSyySM-MSj0jFS#B1bGH8ecG<5q8Xu;lHRl~Zo-*dVx4@{+ z2@B+b64pIlOZCPDV6g8OtXL>(#C3ZAg|Y|wIcK44Da5t)Qx-|w_Eld$YcZ}}5_{^g zOXVc?w`r*y0?zEPO!ljY#)szh_qp_5=PCdz-#cZMzJ8gEW;(flncNSwjNK_qh0yiM zyW~#XtEfMuUd|8=Sa!Kb-pt+}xer?v%a`gi?uVZr&$;)@L&HDa3AJ9KdoPnc>vwuU zt{3fpobT-h3FU1@9=xJo%{LxW$@E9{70czmLd?*|uaLbvY@U`^^5ba@CEuB*?^-SQ z(3@94iAQz$O4(Unbh93`5_<{r^cgEvi=ic%K*O!(Wq~^ye?g$Th2F zfxc&zY#09OKLD<^KIS!Cn&p4#9-eVCGUE-I`tVh9VuIh0^6Bf^O?qZ6E zBLIodk;vA2(Ku)pW8LC(b7ry}tYlaXi5a@zT1@0u=p)z4GFQV>?glZFMPpDY1#?}T zdsBs{@!Ff(c+A62)wH#8-^zw!7#H!_KRE%$z3=H}58$D3Vb?TnYt48_o=xtyStt8+ zSdPz1wnOvXT~k4Y;^nakxO&M$k+JLK{^1v=ft)eDe52e+f4)wZ6}__<8+@=+yoYq+ zVK|8IuOIj@m|jGbB@BOWv%Y%092TK24tQ_P)^DxHe7&dM;SqVCpLzFe{plmJ4d@zv z6n55ry82PsUJR+PeN=ugc6>pi@rIGRjies^ge=c&`h@MK&t^Qi>C@*4SrMN2F6^p5 zZL`?a1wd=t#a6tyU9D|;V0&8YJ=1gwbRWwQ^(lWN(%Y0tdT(Robj@r z|EzqZ!}GHSn;WWpb@9Zk!CX-rb@9+FebUSDY~1#oywd8dk@~_7SoZy>`;-+_=vOw# z!fn(S&%+=$I(2IJ(V39-)|Awq(wnExd_nFPuFuc=;RSh#T)jkJ_@eA9AOA_;`=aa` z{+ealW$TGEi(2dMFUkFP`VbC6gJP}-?v&Z*X?}}CFM0{0e1m@MCAp`#SSMbFzmOxL z3;6(U)WG_`T#Vv7cc1_-!a9x!>@{7D|OsJNhhm&ykmqITa4nWkgO3oB?gO+5Q z8AN0>qzdXc-j}8Bl;^!L;KnMNihp^jk)!s*P7t}Pd4O2dnxW#jy`m4T>$4GqJ z{FNNr{{A(2Q}?np4O92+`i#x6E56lhH_N*4vxKKL;pxIbH?9V>y!LB(0R%>UgT>|} zdc-$!skll1{EeJ9(BInRgvS^M>}bG21=r#LwOiuh%r+>DL+*uib0R1LBf}I)+@#<9 z7I(&NoT+h*K`#Jr_E$%LhifNoUQ(;gvQQ8GUhasg^YrhfTMkc0b&hEUQ|WzzTWY}V zYLg3YGsr-IlVzw75~Le4>QC9*eR6axcXxvP9Fg^P*>=jMRPk|&m{TT3=quvR@xbz?m^0&7zE#$@Y2geJ;*|Qs zS~{1At%qFvoN(?D=jr-lrzPLPu)@&tb4FkSijoZIkU}? z*c-*woH6VI!Z{9~e2gCWBlQWT&Oq(8g|DEpjZ<&{j@pcfA7RVlB4GR&|2@khw>IA1 z+`NDY#W=k5P-`7x2QnBjW_*<`kTMDou3ceo`-ELEu?**U4%4&BoKieSmSKOsI9sq) zwqQx4g7qlauQfg!XS7?2l9%jEte3WNx<)%>KXtU=9b)k~M7J+@c8FGHKP!ITOwgqZ2eHtKXDE%Hw_sy2>mo2?hLuq|a1>ioooioT8t)g|s50zlx-QLbw zR20V!PdHu^Rq^_Q@bQS&e ztd353-G)V7^u~@Dzg4B|pQ^b>D!B<}1s(X%DK)Y)tT{ycD7BO7>y^V#`GJ7j5f`W7 zO1zJFEwB4Aio2ii*QY}Dbw7hiCI@?H5dJN%wL6N=&l0!>69AwiFMbThupJ{+lzs4~ zU440#lORwp5~!Dapb%V&Hr$s9)T@D1@|9eu4zy5>R((`2FE}CPzDlTGGf=&5pxQ`) z-r%n{h3e(PAD;tN!a~*3hpN4Ws$DKr`m!pgbJ`ryv;Du&Z2vvEd+6duVY6Nhs-AO` z5jSKxoWpCx1(C<#L@F6n(Gl?^(-V@o{1`t4(0nE|7`bFPOt=G~5QB*k&=B@UVrF5* zjSWX$T7y!&`-*W17$x@ZQHKOQP`$vN3>QN90*@@(a0pbYJ7!kN;DUCbX|@{6v6v~Z z3b2kZhzH=h;tzX2QQ^v3Dk^LQvF2IW! z6Bg*G53oVZf?DUE+^HRect_QP(G~_3(9{PMo7CP(PM1G7z{6?m*Wn2R9;gokPnfJX z@L*Jfzzy((K}3DzAZOPehH<7pK$j$qFm9LxD+?_v3w>55Eh`(#o0*Urh!7=pFvOc!LZp;?Le;fAXB?5M89G%^O`ln zoi{O=L?lif$9 z>h6MC?VxtRMw1Rf4MO2$XlT@8MO5i?tDJsmJF;U4wad}OS)JEaRWT0FMdX0X+X)c1 zfW7J}OQFnI0Kv^s5guB?-RC%$P^plffGLJVi(nv_d(bP5)Ii8F7h#0(7W9H0>@>!U z&kOQ34TKE}L=|x0hF#FLNI%^Z0JD+IkE&v01knR8qpGVLbOwWCW`ahH1#YM&f2p@P zP)-`s-!Mj>5M+1%^BM~zKo$T*o zOFWCJx#K?M>09n_+U!$>4nbhVvEe6cp(2;CgovxPPzxZE0Gc^C;|+nJg#kh%3JN-y z6ppAkZ*JF>OPnscZm3h1=x@hwfASKl*wy2gKoz@G#nQITk!r@TL#1IFj~eySD*#mJ zAWh(+%mPDs5FE=~7+F9u2J9@A4dKiLL~?^-;7<^LD8T0dA^;i@E^Uq_Wu_sZLwZtO zk))8P-2ws+bN)Tx!A(@)CC=mwWHwrQ((h)rUm|eGL4>byAkQnHTo71;krd?DV2m3$?}^kclG6am6_$ijjoEm{QuIUyv`LP|Xwt zKh_G2C8(M;oJ!WhO9ghD&yapkf8D_WBz>Gv+O&tBVKHLhnt9mRZ_o=5VLjolBRCHe zu=Ox?-A4rU&7-t=9y2!22oYP|Xwtk(T*HT1p}e~S6g2K1g@V41;NDNF;S%4Z`yj7#H0USY2KzZo%w>0oX7RE2g#_-0xjz0Vm4iQu1OM_2{-|h*0{?kF{&R`{Jd3~ioKpI$ z4h~k25RoHHYcA?!u&00!gjgUH0M@On z>04}(m1K2CAj^P+i!#XKG(^C?m_1#RMV2~HAyVgJA61meK^298YH0>lR5L|^>Los^ z7ZcS>EUM;nKC9EFJr}hy$f7N-XS{0nQsQ(OmX_}2SXH`Hu%L9Y``Xr>D!dB!N~|T_ zt0)6?B+J!?EYl2Gt|1DV$V?|~W(e%dy4RBX*Wv0H_j(SI8_W>7aYs}W?oC2asI(;YI$+zwJq}jG@n%t_ckJO5{PhGoaU`)dX=YBYsIv2Td)3x! z4?>>^I8UOeo=izS1@N7Uf8$hJcRW>(2j$46Q~{t6ybjbZrCM0d#SQ25qdlC`7Kc&! z9Oiwx>dyJ${(-tlkCvnn1J963P_Kd$ZvYScT^Nb>4+pqMs5b7As?0q~mAXgc{TTfF z3;z8T$WL7HsvHj7;PK^0>M>`rG9aM9MM+bdvPp3M< zJ8d!N4c3qJbaqRZsn$jpKPFXcSRMfFajDwC;swi}kjnp@d{TPjQZBZ(1Mbrj@IFH; z>scCV&(Ut%K=bT*W1hWW%rnHawsl`ZOYY08^9ovWU!{3ADi)*0KLQvLzjOnFt+A_N zScbWhwo0kBe9HPG7ST~{cpAV=eE5y8I1dNY8;q@k2q zjAV=gz-V-upHJGwa9Fk_9+`n+sA33^Qf*Wz429j=8a$2Y9|4%k2u~YpH2lS|NMM)* z+zflnkU%I58jV_oY5v@g#c^xadI`?XG_}@?8?1GI-e_X4w`z9Sw4zGjElsr7`}zj^ zZ?)I|k}+USW5sNYK+@_9sS*xkn90^&FR=DHt|K;b98qTJTa;-a%iv^J8n{_fROv6q z!?V=R%4`?2=I8?9=|Y)BE@hU&0Ga9n`Qa)Jw^bSOFsrmKU^MhSO?}nH4m~b(qskcB z#^U1zOwiz*vdkDP0zv#inOQ`n!*&%BrRfi&n5zi<%B&(v>?*>1#TfB9^&1xvI5`zi zC6wTdtaH5EMFf^9#A%zW2z}EXPKSNUEwLJ{ACOC8{l4pm)^`2Sy7~137a~L=%7Ymg z$lF{$7z)~j7bFwFT1hhN2aZ)xpKG}6`oX8!_N^c22*g5Ro9hRhAi?s1Vq}*NbVFIK z0D~rf>CnZ#>t_}_owvPy*c}aL*AEq;2!?;5nelZ&U#ClZIwyxVH@_!T3q7K*(*XxM zj>BU&{E-AYKS5LMjZvoQ{8Z+=0A?*SyZ|$kSVIEztd!%7)AGJf`Hpcgh0dI)T?|Hj ze{qcX@vpEUFdU0RUqi=qsGswu)M#3ii9?XA^5`|(QF_gm5`pp`r>`#B? zp*F0nVH*V1U-{?aGSlo>sw`$xvX8~ru~1mYLSc1B1$Qjx*|FAILgSog$8w%MHfNqa zC93|KH_wjcJbUzh@iyq>Xn&r4UaGOpOtj4AUjDIateI(#twlss8NC;k%U zM_AFDV~l-}>jk}hkW-d^0q%T6f7z`HPywytJ;A|fnvF6wQ>cqzjCR570;9T|H{f}} zVezhfv-@d5ChdkAF~p0Rgox-&`l*2|vcU-WcZoO(RHu?NMH&rLsdvSEv0SJ-{9drK zGmV*EP!aFh_LlqYF|&0lX=-JfcwVSgeiK+5#|@zPy9-^>1m3evJfCUe`7{wonrfLg zGQLaz%-Ix%tD2#=zxuS|2xuTwtW-b}=j1d7`APGKEdt^kQMRqcQAtv0K z*x`Ka4l_L%dqOfj2r3Z|jQ%3zJ*K03I3v36TpPzCz~2P)(}wa0dv?4xY(TB*UmJf^ zpRBMeE;s7v zjfut%*DZ>9Bc<-f&2xr z{nCN}8YRCXwp@H}CVF2J6L9a*2apF3ogs8QZ_y@senN2HGD`8()qP z$86*JUe77kqxW=bj$NLGJC70~F(&q)q}uCE{m`eee)vt^YO5ZeCRv&~s+rx4dcasV z#$c{`=(zpr;c=@TcEU;yGeXNo>Y-IEkyQ@~DuGaJD0PS3;?$FdIaR$d*U(r(c1q2o z)68sf^9+l%Y34$j0{8;TAjdd)+Z% zd`56n>RG{Esmv9yTwNN#jx|19O#Eh!PhkmswC{7qia4N-B!f7syMObQaz!8Gc>xEl zFGf|sWq&vpo2Ov~9qSTRM_{U@yQ4FlAF-2QK$PjjhC6-sslse_jLEKzcY^dG?lI#Z z*+_wYgOd6t1^O-NO>p0)SK}S&b%d;)2U+_IyNGv+azz_U{t6{>edW86s3ar))!^SQ z__r(m4M5aB@b~R#I7l>*QnXYl7PNT=vjJ zi=yskScbd1U$fpfY~fo6Lwi(gvw**&HhzFA1I!0B+!&DAYJg#8_>Xrz{@hUav>Mf- ziwHR7{ga_!LHk`Jg+R@Xap2)c9_g=YX^yH9%A>V6 zVg$4RUnV3$Q~YobA*%M=%P0p>Yy>6AERRRP(CLUHeIhmq^`jUVAkV}$NE;(T4N2KJ z3KQIapgv`!GoTZ;vXDs%stYFsC`oI7YZfUHr1mqZDx^m9NH4aMP>#+jJQDni zRrwAAlu8=I;6TD-<6YG52l=~MQ13x?5ThZuHOXj*0`=#;I0G1kWC(#M3Exyb!BSLD z9ObmfEkieqa(2c>mg-p}=}W{CWH4xx@yS^-CE9VN5lJ4Z4jvxwqdSdqst@>Wou25k z(b&fY);wWfd+NbT#mf2n9&XyYE9-_vm+Tr+PdEC7)%@{E|RUJn$J9R|-eyQ-1 zFJ>p~g>14%othQ1Q?p`*lV!e?{Tof1n=g*HG6v@;VLH$Ta*d0slp2SQ2xU->OR4ed zl+*C*ia#oj<$X?0r4 zohVeA(u?~-N|1B9k=X*ICYaPDd{$@p;){X__gqr}V%$W2&qyWH=h5C*|HzTxfBNAR z7|lWTPc9m{BWV7{xcV1IbDjWmZ=EqFfAe`2;?j|u?C_Z!8&&6FbH%dU#Ko{5E+qfK zrb%U7aLXw$s?ItMzy3ZRzs~f@Y?hro_uDWIurS~HI5=OZvxmofE8tt8{td-?0TOvw zH-jtAI0FEqx_$$)$2Ws42(T?=o53~R1X*}97E2(3^UV;3VC*u`bEbggUkbPOOf0T? z2FjCN)MYTUSKv)ujtd6@{PSo*HN_@dA$f&OVyr6MQ3LzjoyEde3Uh(uf0(|CHx;A< zZWYpXOb6VXk40Y0sQ8N2yN3aFR4foFukDAZ$(5P#~ zY4|-&jK}Y*#hJ;73HJ)J7r<1YX5d+1dj(hsQ&YHVh!ZqAgg>Gym-g_tlFb0=Uden7 zJCSiAP;_a47BZ0C3&>10A2^g_^rL|de}B-#KN2=v%Z&ZIi}9Nn;Fc8C)i;%98=I|| zT5Pi5(cc0zj3l5q5wIebg(DC!2MLWOR~j4shF;iG0=@V)A&J`bdQE0vS1#QOZNQyR zCQP50hXDlJGLY8BK}2K}VBe8rinNOw+C>fRLOHa9XCCwl>Aeqfif}{4#W*JiCtMZD zZhLq4cpx(`pEel$Ssv^zM z6FLd0%IJxVdQ&$W0vfk7wE}oaP~4y{{-L02x(jGycm2A6>)iJ1qOOC?8GQuM;O4<< z5taYI;ckXxz*q2)M=f*j>( zvx9>;7YGVU*x`c&hfj!OC61LlAi@tVPamqa)HjojT%j*h&q5|*<8uJQ#BV;s6KqCJ z*o>NR?x;y;RSi{+8RFDIXcFVkBpz4&v>23c&bHG)G)rlBpJ#ZUnA2P zjAT4u#}7#yG@=T32&OEf1Hh>a+sR?@id@eKoHkimreB-aFR7C4*9shognl#fmNs*0cgCaQ^}Eb2QC$ zd5ouZnPq&~B(caC!KDS?8ssgV5jcMF`400YBXHy}VwQ3R?i!PoW%_@Fx?Y?PU2y}j zxY3vuCTpa%>9d-zc|ly6&PrlqK?Fd}38GbUjWizz0k%^NX`%UGl-&eqriTf1D z6^6&>Wp&2B|rM(=j5xZiO`&Rg1a)U@$E}K&Fi{GheCJ=Rjw|X5%P> zr9`DOSEvP;UTLl2D?y&uDCX?2C|ZH&G3M;hsQnD%M%@mU2i1I#JE(4hC26gps9I>$ zx$QD95^b?ii=YbexCP8eo5;9e>@KLZ2Zg#5wXnbPAi$5|5~sUhkod1b=v-z85QB=a zzIvb;VvW14jU6-}BT0X0V&erl&6=`w9xMUU_s|yPTAK75RyaUYcVJG8B@3uh|C?s{`K@gtfke zPyt8d#*Dy_HpU26k}yiyKVgm{K+_nOfPx|d8}4pO2w`eisv45*g)gQB*g^qzXo%#8 zW?pFEf}9W_TC7Gzp%9FrLOZa~feFlH+bT_xSqmN%vC*JD%ScGWvWD5f@Bddg2HQQ$ zF>uc(N6>IAsK~LP;aEmYZU5+rc<088VzUpSpLUCIczmv481@FC9zrQ>-fa*)1My^) zT4x1x0|XNnts>hxxcC{{%Aolg#`jVVR}1wpEdV4&#OtMfpOEDE!w=;VMc0Gl^%Td| zMjRUl2Xm2>jSeQad(OqE$ixVfy0#Y>D<(lT{|Erax=}rfX9%lG2JGO^g`BeJ(SE*rz4jBcY(5ZwP))p7r5X477Zvk*ZgdGrt4CrXpET|aNW7ow#=tcz_ zK?iWGlL7s>4CrYP8a@Ue_LO=CgH}BS!F(FPc}Rh9>yJznX1d@xnt$Rsr~GpbBUZcmNqnbERdmV8|Sog?ww6ptEwpFH{71 zn8?^=0*#xd8tAdLmV!pWY(tK1D9x!J+ziI(NnC?ShrAHY0FWb6P&r*o}t zKRujhdT^0LNjFDItZ0ECW*yGATonfbq$%=PqMNCnT*xv>8i<03u4k`VLAw;)g1ni& ztJGuQ&*S2BKu0}+o?XcP^8#V(_>Il^%;0VCdA=bOF0g^2{e~EkjxUpVA|sdNQS~yw zT4vSU8)hsTXDkY4eC&V6u!Wif+_)9XIzL~+YTukx^qrrtnCa?G0Q`zjZ<!B=YD^9RNI7!->oiG;755Wt1bESMP-XJiKj*4Pvh z^F4UxCtpx{iOwZlSv+QwzaVzhIl+oydTJNtsxPbES8?aL;2z z#Q73?4j0%%Y@STH7c#v3BI%vwPL|%;?!{@;!C?u;qhBgTTp-n={AVGfYV>YC0vL8~08((3fVoq6P zLdwJ<-RESdw0r+p-)sz7U&81T#$;0%msl8=G!G-Q|9cph_%On(wlFRd9@Gn>I}#WY^2@-19I0!Aa{>dXF*0P z;f}%fqN;^mh7Gxyj1HQ`V1xfK*x+V{63u1+!Yv#ib20;DE{DcEo`D?|dl>RPhFfpO zP8*|U+3SbHYU~(wvrQMUK*EiHK4a8>Odcm*YK_^F%UzuOF-zTG&p<%UVeBwI*~)6J z#AS1~D0gE>+Mv1xLy-&ic?dbV(rNvdF={4q#-Ib99KtDblrsCJQ;m6rOYs9L!Avt9 zL*UWUZ#(^I<7sa9`PV4ij@jfNXBfPZhE2VN&)9H{9Qz{p0v0-gZw>2{$A;o0eQwtTw$~`h?|D)MN`Wx!q_;J>Q0*un?fVaAptrtGJUU1C5Kz*5V~E8+$%6=Tft^L zH-Y&8XloIx1I8~1=&Acr3L&Nx2duIlfGs#5Z|VWvdV+HZ)@W)u8V#!za&HU-_+2b6 zMGf{+i-JH%IwD*EE8Lo_51@v*UctViim?Q_E}#gn#JgFyVTXfn6X5RQ>a7q4RiRoX z_u{4qR06^=V57jA!x7z%$w<6?Y%U1B%`WJ($aaB!o94UV2b#{tz|8c}GDg>GP7mnc zH(-f)7K^+tuuIZ>7yN+m=KL;-W85yt>Ec&=NLxa|Gv9m{{7@TjmET24Y}Rk+!uEg& z%jSB3kBnbx|dy!Gj(u@_T3-yBSCz@{(~%zamh1UBGeN zd>8y+1S%Ja_A&0I{b~X z>ZfpU)K8UQkI+wMLU$rOfL(}{1j1G706tt2*04h;2X0${G;xLO3n;%}q@~m&JhRJr z(*BqWg-l_)R?p!QypA~}Oy>+re&I|-fKbMcNf|pS3nDa%4;Y->+Xolc@{(KXYb5=t zt7XQC9CD#3;9*HO3$xiviyFx??n>j(rXHb>3GoWhBN3xV_#q22R(|wDr|vliYabAyQbAnQJL= z+_RGnDuV+AsPnJmA!@aa+-@5H)AKZ&M?91UEKV(VKz`f&};U1h~8SbI~UlXfs zv2VM$2gpd@rrg7abaU*3bT#1~@My}t|2gy0dE9HoOW1r7pR(O!Z~b;N5B{h|%uD+d zBEK}lJ?ygk>Y-umVIwrdz5hA$(oOV5^7=rxYF({okvze$DU;l9r zVEgpUL)*=u`Ary<(SQ8X42OVO69yf%y>M;M2->#(17yuJh##^bH!ui7WkAjyK}M#U zWzcWbe>ftS9YV&Q*&f?)#jo&(dxRV_{(=qegyu&OKV*?@P;o%434gG4xP5X%{-l4+ zINUDlf*z1&2at7*G#Nk{k+S?rTiejcRI>~+jc@n-gi8;z{Q39x&;ilhDOi}>I|bdc zHU98JGyDNwP55&}E?n57*!rSkdj`-p?FT^CJb(D1Hl0~-Gz_4OOyv$BBU8Tvf54qb zrSXX10jJ1)X*gf5!&AaVVuC$im2}@=e>$X|FrEe>M+mww~4>$3+9SB$#Xdo@W|M3UFwsjg#<+iB$&O zoKf}(&kQ!vZYB|*feD>^Hs)zKQux8=JEFw1hhwmViB<>ObKL$p6>Q*`^ZGm<9a50jz|u%?~VJ#QF!17q9@r<9V!rY#0mz6tSs~EOSqcSq1?U9J+D* zX}r1P{|4iRTXED&p!opw{}jlBzXXX(0@>or(ri12xR3QX?|T^@uNSeqFblmSK?M9I z2%Ks|E!ayz;~{2Ry=i#_8jxOZN}QXc)?l=KzUC3wC5($K$V$eW_O?u=akDBz zt-|W9Y^ktcgZ{L4B>srN@c8ur11G}*JQ)Tu^6%UI&8#GO6~b7PQpfg}aH0%3A6Kuf zz+V9+B@Wx>MF?qo;b6A_{-WdXoO=*(NZ%a3>yKkG!PvECTV|6~?`MJBM0cchEh7KJ z95V0=0#rbb_vvi3gNUC^JH!s=5x8q>_MtrD}K`pBovXAlWX8Z`eNGeK1( z@f{tL6nJ^pyqJnEUW4ibbir`a?2+9|c?7S?kzF+Pl~kXjHtat-tOIxlUk%h>=0p9R z5B1j;>hCk|(JveNR^R$S|BwONc3`X6)>T7!bp3^o&{v32{Khntfx+wq1YMK~;^O|{ zCh$6o&Ba^8<|jZOv4}8<@H~+J$9zP7@e#qFrbP)g$>H8b8r}SugUJ>jlXIO6`G1ni zWCA55ZCL_q`mv-(eo+04<{8qN1@@w?0gE%s=NT9PFz5dZp(-rtFL3e%=2F}dM){a* zA->E&jQ0!7yOozq96OdS&j1WK(SfZ(IPua@9xwQNw?>wbyx2+6|7uHN*T7j|3cAd# z%beG~n&-8rIs8+0u~mQq^{;SJ979u`VewfA^)u3nz(d1qOc*8=$?RNRNjm25TwUeU zvd+@-YM+*Ab!84Qr})I2mLVp4X6BN7FTcOJah|}PbivpZEM9P~G3rjo{w}WRac5vf z)y=`Bc6g^QxDGe7V3Gjt*Mqjaa^eQk;6~6O$W;@QPWaM(Q zhGB2O;cdi!Qrk3~bO%DX6^wbtnQQmxC^mq@zhxAEu|%kVddFVoY3>OErVaOuUhCj) z7<)|lI;TIb90~A#7~!tK87-I51lKrrZ-9in#V6z(JV7qfa;{Iyd4#-*eVc1V6Yi}} z!xrgn5UAGfeBL{AI|XV1XzMQIY2`%}vc(zsx`Xnygda!6ZU@r2d!+M?JYZ98j9Orm zd0V9Ruh(V-ZDEG?SuMY#TI@@jt*!3JjM{}cg0{$K%o08BO6($zQMVzZnJrSBpa3my zMK2_N!&WH>vz-h%6s9f6?!c>>%Z|AX?3m}IEk6qK*?~91p%4;bb28Kj`BI-Z%Nlrd zr_Y=%?qJ`|>lyALckU&3?jr;42Y1r$17y#G8TKqEdsaAJ z5!iDF*uyPNe-C@2Q1@gQg!FwG4(087-fMC*Ji5OLkJN)ci)?k(ae0PE_vi5F0iQ=J zERWFJ-NCJ~fxieZGSGgmbXMj;xWYYdClX0K}C1ys1Z%H0DOYMnaFsTqa< zi);fX%$EVr7_kHV1{gNY@MPeK9301YvzHXaz5~PT1qJ%bdz=z|$uOsVFGQ7O8#Dp= zeuKR7iV$6F8oVUapt%yOm~9W{ubm+r!PvJ#-(0t~Yb0_nParJj@&wl1#RU2IHzoiD zUJu%sc*rtBj%NX5CIHYnM?GX@frzeyn)7YFbxvBXx8h~YCVsNU-a{0#tQt^{`XYuu zL{Dqu@r;DoR;_w|#Fwxqvg#S#u4Sf$0N?%T8To6>OQHkZ4nY_1*zZ6W$H&$ic%O09 zlR02L1F)<~@pL{|FZf_RXTf?g1J=`i>u6j(?}PPH1}s2>_H7kovEZ$t0$!f-VMcO; zX^2!K48BQ${GfW)fcv-s_Z58e?KLI?W|n$6AJo@s36k24?v5_IssDMCo_(oh~RZ~N3ka#K#BEcK8dRPPyZpA}d!e(GR7_BkqjYG!fj zMn*TFo3Q%CG+@y{+#&uLNz?V%m)TDI^%yD{27Hx)7!7@qEfiL^0%?aUKo0#3kibpt z-xpLHe@!55?*7TUN91w*32e0)Ek91%3G2ZiFEfKV%W(bzW~r|&uzqO9|3lrMfJs$c zef)UeWp2;X4Gj!1Ff6x6R1jGd9ZeNSGv@-G|F0q>tB@J#%?Kmf%n)niSF(RUC%B{vZQOyi94FH;%CdH>YD ze~p)j>E8|N_s$CBXP_-*{Bu)F_(jt78_aJzplQKC`eg}Hn*D^t&3lO)oB0h8caH2B z5Z@tId4|b3d!w%vA2%&p{zy5=rL?)pp=3~blnqiYYQ_YkoHyh8xUuhJVFJIlY9*+Wjb;x2j3F|#gbC4Ahada>8JVO4+x}keCA2@2XS}vXJS!O z)ZMdq8s`cuG}2(pad%OB&i0caLbwlyM77iE;D`A47j~ml&cRnae=heX%)=i7*g3*-vjgf}i)=ig&W-MfygtRVOK`{IiChM`^Ge8-$J05!vHTpT4lNs8 z;!w&UsEE^&*GGsQDgr6HMCVPJz}1KH{4ReAY<*P0$sMj>%ExBj00SuVG;4B!uhKD7 zwTO%m3r*<(kE_Z#3rDdqrE`26za*jIIfxX0S{*%eg*UjkI{Ce6nXgFU>JHOT@bmVcj+5b8gD+7=jMN!zHMonU}z_Q>o=j9MPeb;gNxG%=9*HKwkhK;b+T zfqkbsbizF{V~H)wV_cmH4qtvK#y-Dvxd0DcvA{#uO^vU^s8HM^Goh}a<@UrnRwR35 z&@$y_*jiWUZ66Kx(Z@de+K29qA&VkaO{y#Ow-1H++NI6}BHXpEpa^}F>k5ivH>Iwi zaC1}ZOkAvKb%jCv;=yn(>WR*i`5z(b!}B2OXXXo0AJ0?}^^u?E(XLSQK1ct}W43*q zXdkoeW2Uh8@e?wS8TQd;AIB3Dm~Y347JlYf8;ZN`7}3Pfe2+`xtH?!vHuUmg`Q~&AJ3B$Mu7Bx-ML5P97LdBQ~LLCU8ycv%Lr6b<-F< zq?Wc%FmcCzM2Yj3*@}om^k6JLoqhAKjM0PH-yE0wst`R(op4cG6aSxq<)a6TVI`V5 zuW<>+Q5?4Y@Dg_#7pt3}osVl2Kj*y0E<%>Cu^=-Ulj9nk7>>^{;g$9!$2hE!n#fJN za9BVhRDllvNsJlOmcA0509!uC1wP}P29FJ#)8O&xrsp&+CAPtrs-y|fOl?hzSCA{XPpsPTM_4jB>2QV18(Shx!|eG4CKa|B7L%VKI-G@=$KQNZ z2aYII_NZwuZp@#uHIt=ph-3~6Off$ykFy4$C^RJ+ajn;LZ-`;0i^_hiHe@MxV?q{U zEkPAiw}=w=q)38A7mCzDkZ8vBOl+MYDgng&JuN#q1_*yL{^vzKn9p`0hq?O^ zf3-{upNamZYXeaifSGQ?Q4P&Uy|)Q`#fmj;Iy}dn3%{HTCC@XyYf3Ta^usIE2mDX3 zOv!dr-(2Q4UBP?3jswy|SI7g}&(xcKyF&eDMt+Yv3JptX8Asu`=TJ>3*;UhXLu43l znQm7P@rk|=r*L+txX5q2@qRsqP4k%#I^H6sW(jIvnw;kFnvW92$&#fqUH{9GZB>RM ztu)~L5vkNzN4|ci1C0*YjBE?faJ5Ih6o}%STzgnO))`5O#mN>MR-Lx+BMuw+VUY(6 zD)N2E9`Fcfq^>mPm3qSJQYG9|s$pN4NjP>s>qzOk@%{9rBs0fP9e@2*V#FI~t(D zZ&9Hsf{L`@smR*6tND@ao|0P7y^(? z%T6^^mzTEAy;(19jULj)tW_egAmt7%1fxzbAQ(xFF2B(mupJ-mbyX<7Oe)$-D~%qi zS6HQuM$ep`u*-aUqt~@qYvV}Q#(?ZX-u0X;B7h42Y|uO-=(NeH&D0nWCz2>|QsyTJ$yc!S9&^y@2DErtx`ut{ZSP`24BR1TR z61qDGS300%fHcQSp=3-8a}WxivMaPJiH1I|De9P>O-7Oq+y24Ks=* zUusUT2JB7-6vhXEX!B2Y!u7}$`sZ39`&1cOnb%AZ(G1ePX>YA3ktmq!cU=tf=AyeY)1u;S*TfvxO9i2|F(lfKMT z?BNpLdfl{^h)lXIx}tym{EKC5WxX?DXkQkNuL#Fih4*U-qU&Iv+4HjCjZSnHncozd-zqmOJDef&pVZu+Mdr5!!aD-tFG=g~ip)*#d7MSvLvdqD zt?RV{TT%1CrrOSl@h~9TG=kHzT6Ee}@8IZ{w|iYCCA?RT$PV$AZE(h=+qvmX6lpVFCW@t zsjnh%V)QpNd`5|KKF!p61$-O-MrOW=O*7ViS^xOjaeRxWRH0l4J}?wq=vPRBb%3 z6UR@cM^kTQK-{Y6sg>TAUr#+nsax z5Gn^Q<)pKnCd&VlY=kFI%ix;iF(MkxiI`giRIw+arLX8%3Ky|XRcZ+(0vV&KAgx_# zCkCZzy~!yH&oVra6H|nmvQ!f+)}J?SR@aB?RqkJLyaNtjw}mbOU-PDlniv4!P-|5h zGu?6JDUnSy0?KexumrbMjiMrt5}$HYz_paD25uUU;iglxs016-JR+q?OW|H-J=BW8 z+z3J)u5U*?e3_cV|LMe!EXWg!1$7Co?FAAds_-M#pn?K)@$1E&MYF^#gHGMkvV?dN z$t!eKK~8D~$rCjdU8>BS@@r;J14d3F3S@xQ!z_kL1)@?c325sT7ViM)h*d!MDnVzn zQkovxN?(ZIwJw)WK^MzZVNJ(jcX`Kp&YF$~fA0Otan?kq{lZ($&!%5`bNShE*{`@G z@W4mbIirH2v&iAkjsLovr@N?@r_Y~LbQd-7*MmQ$ZN;+}e=66FC-hn5@f^c5%~NH% zMxWg8?dSgEZxL}{hDP6iz{~dafz%PEDc$6Quok6!LYzAnZ}-SU7a#a&kLb+R-rdn& zYrO4tgQv!{g--5Z#!#T+;p14d@jxQ6z{hS@y?|bF6FaPL^22^oudB`Z&A5U?qOK2m zJ%`p*WN518nsf~4rP6hBpfnk1kpjQ-ng&!WPi;AmXHM{Tu9O>QfYP?wl-;P(F2-8j zxd5?C$^|xV!8e=y|EB`CZwz*E<4V2EtrdAn6f}3^jB8?2UckEgD}eGcH-ANWM#+MF zB~qLt-H2{Z<|kiKLD!@oOJvM#M8&II4#?Ec<3KnIIfLA9dio) zUfJOWoNT^#CKDa`xYsWl`jj`YsI3J$Yq0ywVqeTZ*nNnXKBV?lAS;2K4I4s~??$Qx zvVHYSlSJdR?0#XN(AYPctSBKnAoXp}_oXBt`C%h;VdRBi1>;NeC7=h6T@*bi=M?qtn#tX;KC{SA%*Yfw;^cBP@Sy5@4(-V;MzDjJC7!tGxH7AoUu`tr@2^QT+*T0aBR|{P|kGe__#~^fg=`` zxJzZGpi93K)40^B<2UWpaqanWoA1&5q0ON?xD8$qD~;2`7pF`dj|nU%$kEQ>JAP2zT8K|4nYsV~Vu=H>HCA z5}vDMxq}TI_skB^{yjj1C9vBf#!RVfI}xJ4%=x z4QAg1vtxwWv90y_27M)d}iD>N`-?=|En$ppw=y8*#AUBv*$pvN@} zP4jm*%2Ux*z@k-)k*hLt-(y~|#{WVug553f+Gg~Sf@S)$9?~N$=^>^0OY`4N`3B0x zTf|(1cvHS_MyIe#1L}WDpQGKL@G?a-oMdF3WE=TDl-I~w0QFLD13zaZ~mbI=E?^*z**CHy(Ud z;rwtM{8@#KofG5Z;7ZIZa3vqwn&54%mIwe=_C^)qWQ0^Q>#qjM8D5!!&DK!g0-F|n zAsATC4@JAQhDjxYPL9$r!x=rfK^>P z+N@@XC2VJQ)qLARD>IFdk)XkCxQowDt(Vd+^GsDd1;aht({A$1)t=E!+ySU1WFeW!evtRP6wdQ;3Pu?~I2>Q3PN`~Bn zqmBHQ3i-F#u^PpEYKt`rBtDtPap?`@l;k_zff-`aH(z2Vq_g3PgBV*HElr4-gLP-j zrn2vJr=8*yE=d|Mku*m74UVN>-&ivnjP&bnZU>dxs_qIbd|nwoB)Y(x6hkNBVt^yE zkATZt;11R=0XKhI_K=bcOjpRjs&;gj7_#{q$1!Adt%1#IJZU5L*xF?|FfH4pnQZ># zyhEl2_5UPoYQS&XU~x5JRq^}lEnkWyqTU%!MghlT6<$kjJ}V+Qj|p}5seH{D0PJm zOd(9G=y?#3xio(uW2`{)lGh%8n&MCbrB*DM0jn>@wT=H62Svg}veu%9o90Un>_a{X z`)$)42NPgg2 zlCIGd;ijUIfAqG9tt|cak)mQ6&kd%4$(b`TRHe%3BQpzKLOGNjcZf&QXfJ2ZD1ri@ z)=O_u*tA9(<3LZeSJod`3FVOJ-50%@==QANu;m0*L4-9xG%C+h19U^ai$Fe8{FTZ4 zaFZH_*-10c)I8W74E4y|END#-Q@4Qs|3lH8f5IxSMPjo%MxdH0OlKJNUd_Ja)EFTi zW7_@$YzYz~ zt^f&}fIxBtk`#SEb5dRO>hqS7%GeSo>i=BzB3pGgRb9-?>x3;A+5-eCM!p&(yC-aO zmVtxI7G_uG-a5L(bNWS(zv}htfy6_~Bl3V}9bC+1t5Ki7ctb?SiEnwMiuC3XFErJr zk&u%lA>|dVkWn~qVhhjz5LGIF4w5;4F6vSKJT{8*=Zj*-u#>+4r7OQI{>@V8LS~x$ zMKTxXFGk(TUxGk#@|QZSyDoDIVLpu-7OY>~gg)jk=z{Uc5JFc0(^@o1Nb`=;KcW9PyS1=JET?dxnjxvBE0jq)WHyYKy6`=PD##Mr7Oj}V(>3st6ewzR{<{uD% z_*i=RHNxpZ1M2St=|cw6hXv^)g7i@X>0?go;QZr)^a*a!&Oa$|*AiMd|CGc2yG8*ym&d>9+G|~Ky-x0P*SkP=gThl1G{H>y z^z@B~xsdlJ1+u(3POWbvv?o-$#cgd+XwL?P_FSaUo*+qVPkQMNx7EuN*wc;*f_tVo zTuR02Cf+q>W$x^o=^8C-^!sZP@_QmGY1U2*j14m#Z$hV=to0|P;NIUhD6W5H8ndrv1y{*Pdt>a>* z6|LdYaKVZt`C5qUqm(3Iko^?->!uVD)wT=aT!5Jv&3xY*DwNQ_hn02$G|d`MI*NE9 zBj7N(_v;3_f{f>8lhi6~%nD6tN+VdMda~~n_sEWPTOb`9t|_AlIp|7$yln~oSXl%o zTPb~4uva3xjFz;<$}`Jfp)HZ6`CO$)X3wh@oWfj~T|zO;C-VRUH5aWIiu%w6QpA=M zR4OilG0+}Vm)W-tK9XCi2*S3PSsvxPu{_Ez%D9^-R6{t@J($l-tb@3XlSi@;p$2?` z(eli45dd%v>Z*0s&iMS6TkjUm$&SRqI$oz`a0DhwN^U3$9`wm=%Q})XD(1IGy8Z2- z`#LE>0sTX$JY_|EEO*L47U4ucPAzYwb zVMDy7h}q1f&krY?^q3LCaRpz#>rlft-+kNW@Cx!6ARxHO2vCNMxd{|v6@p;lW}&F% zJ#YK5=3RU4T#u@Y-*fqYiOWBAS?Fw#eE2Mhi~G6a;&O?4*SG>Fy7p~vR5#xYoKwue z(SCdH%0aR9HmzZP6+%ktLe6TSEcJ25p$!w$lPzyTl;2Oo(X79D{i>_-54nZfd~-+F zzk1g?(cK?-+js9}ny5ET$f^7d)AZ0oG;*DAy!krTe68i{>x`0gxY)6)w@SYWGtmFn zHTmy!O#%6@uQO^UmWR;c${*A{&3e(o_1?gEXm4Evi$BCzFb#;$yM*I$=VQ)%R_=-8 zjeE{>lH<>dXfKF{FN&HkiI6WRG<-!gBSa3P`x3jdKswRR7-COsy_;IZ3I(v&U!Bw3-hgy1eo_rz_4hr!1N%90j{$Mk-rKWgl5AD+~F-C z)(eOa1=!yN$=?OtKN4_05;*@9I3K$l7iiAh??m}|-j2nvxl1=E%zuxfOhyA!(o%Ni?jpB))|{`jmChb2~28TIJnKOtsU8ptdtG=O~sKZO<6x2 zjy%$HL_15?k@)IT&RC;W*qAblu`M&q8(XHaUXqIiXEasF%r9V3*BJI+ zkhiOJ8Xki7uZ0fv^*7dz#tcr24U*?$@{Qq6`O$KFG36O2D(~6yqr>e_x8(-6?KsU% zE!n6V%`g;2kh8MUQV#A7*#xvJ&afHh<|aO91*awG7Ngy9JO)LFK8B%;soH=aHVFtk z^9MBn34*=>458nabHe`f6b^MuCJR3tEhD>^Md8=KaK~^5+0b?f2h3~o^k{49Lm`ia ze)EcOt3^#ahg)M!Tj$7}=84k0?jRahk$dn7MBp>_S~qj5;&eAN&mi25+4dBPqfu>? z(vllm3}KFgF0$cz;Wn|^)(eN)?NZXVrEmFazyc5_?5o|4QII}AN|Ig-n==mr(T>JsnE8;`{hPR$y)D0gIEC5WsuiAWQsHj9 zbA9L}*`%1_!rdol+x3gQ+J&22+J$Ql_n4#HYyumzJgX=!Soc+3*c^UKd(*)0hkIjX z4x5kViuG`xIpMeW%uZDL0bz^C4G8lhS9YhaOZ|ct5>LfHaU)&hWqy1 zW5e&Yg~!eb584Y`_QCqrsr6pA^+C3E8U&cQ^@}^T9=03n?>A`OOuu|K+xibGTR(l1)>C2e8?^2u ztpjVR^=a8X#GuA5b6Cu~Za6#HOFS{&OB|xT#r)2Ugc;!p8ap$>Lo{}H=!6xwl$mYR z72$D^ND;66{0xnw6UZXLv$GDA zI3Yk_R1Ie~yJ7%i{GT4SwdJRik>;H|^3MqmG~?|(YU$N z=0aJIn&xm(xt{Ek;P7oSvrod+U1k6_Y9aF_*qgL#ET1e zHCM-)t+a(Di@9AFia4{|nr82biegv@$tIR!_08UrR%z|wEYt`*8)M98X~L-wPt>5P zkD=1j44Y)sT-Wr)S zc3Q$^I&wHRMK^~Fo826b>(OO2gj$&1d2nkp==|6*x`1wkWt&Y*?u5&EWw_}Tt_-g= zI*>z+ZQ*t1y;s=N47YoMVtmuwuy`XJGoDTsm)h}m6C9f6-cvi?ewvK88k$sQjknui zP|X+g8C$JJvnY+YpO!}43Nzwvsu*#)I#tYbM`^$n!#fRsGU8SO8 zqxdU$&f^Zv`AsLT;6hC)6L+gmk%dN^xPd<9T}+08e67alJ)pwN9PmLeWQ2eh?OWRa zB*s%ucvP92Jnhj?;#bZBLq|V^Uv*5bkSdxjX-%Ofk*;aSU&omWPW19)al&TZt4x;tbl0tC*>8?z zzgU3B+{bmIK=AW~`?#hy-W%uo(Kg9^aUcDo$w;qsjb+dA;kXj-Rrb!|#qd7Um%1HP zeHeER#4_D>FWr{!)SrjP1+G_kC6zEc8RO`SQUPiF;+^n*BaWFl;@_(v;Y`Xj&7GXx z0=(~a+D1e7xx{6foIOtxj4eMI>8)eJEKCB!QnF#qG-%RECxZSO2FajkpM^osqF14a zoycd2Ov!p;7?CMdh2{c6(*Wv-^j{innmsLxJ~AsFIPKJL2-eQktBfoPCt}?*cRzaJ zY`|;}A2wr0V89?=_^5U(Q(^nDx(_wfm65+8VPA7IYCu{B0Ka;OgB>CPl*(G(^-)J zOuh6cUd-gR$xf(({GP0p_{rQ{stN04Zfl&JJqdUiTHhBuoLTgv{6l_^;`hUo)y?$H zyL4fSyzfy)E~3);T95A<37+&*$X%0t)(OONsoWB8p=}Xo=8l$$xGHD5T}| z8Fxy?vN!34{FjcI_@WPIyS<8LkuGroWwny^Alj=?y^RP72(a+vUAfpy%rH$WSrHua z$*cv#u4BxLRX@^rmz?;g8Sf&%$LP5jxfnC;>X>%$n%C59o^4DAbHZj>X~K0ys(9ND zn|6(w*<@*Ez|3aA+yxgjGhk-#icNr54gJ|>w*e4zGjGfzC)0{LvYC0JIcz~9i+g~Q z-$rcbTZFJMYSR3^pjZMtqSmwYYrFSs}<7x{lZI$`?>;y2n_=lBHOOu$R z8%|Rt>fvhz_23?c)!Cx)4+Y>kok`pflNf@|*6v^nm#o5HKX6egPp9CVB4VwRsPaw1 zVwqSayFAX(NlI4!gQ;JEds6HnX?L()N9~LdWd!o&|1`d3 zO(}A|3rWO0K0Wu#=sr1N4niuL&at|M6{@Tj0MLw`#YB6-+d$)6W7{)hTbsNN8(wyR zOYznKC!QaissXMPMk1`R*cESVOe9!ht~Sc&h#i!LPLa*oysLN4b=5uRx#}N<5+=CVk;z_8phu^gx=$_PCQ6=o;wMmKV%OoEnmCUG;VpL*Ej6Qt6E;-O_M zYD@&58o{4eFs=;_za*hdnie9ObY()`;H=;Z;H6E)or#mca^!iV<6FW!kHn&co#rX| z8jV?7vXjAd92=3LNR{g4tJH_joUx8P2brU@Jeai=r=9s&Q9zjVwN^30|6dN!x8VuE z^7K>a?}rP_%&aSW|JP-;ehH46>}90P!1Rn9yVRAP1~*}y!cP-sMK)l5Dz6;%=gMm` zZ6?c>FmffiE_D-wqoe3Mbc>I_S_=_!N(PxL;R=idEyogur7gUQVi%Kw$1ELd<|YQ- z)vo;iG!TqB#V7U4OrBa(wF4b~d^5nUeFm#2qB7_|85gEy^Pq;@R=5pm>&qnUJi2DijL3RsNd!vKRWWguJ zi|MBnYb*iwY!=$Nn_1Mcp4U%SRg!FnXGZG4G6 z815QZJ(%K_Ssg9V{LQj0l-u3RDS-c8>+E9~8JH?Od zB(3feJ6-S4Th}`n0>xp*cE+BzT~LW%cE?Y^#bZSG+)DJe1C^dEu}0Fg3TgZZ6?~Z( zc+;|o7_x*-(90;~EhR)cv7xb`C2ZK41&eT8Cl(YIhp zV`UQWzCk)Ot}s=?7Ka;1=Y_XJMqkSlvGpB{5|68Wch4RH9T?r^f5^WICvpcEXj9j_PRaMu! z^BDi=LwC7MX*&8Tp1q4r%@w?R^c~@sUF=t6G)o8_vSmFjPGNn{@URRUcQ9S8UKXe= z?03q>s1%RCYt{D>pz(4QV=EIjhMOX2OwP8FZghF5-Gued71`m;ol|1=3*8Y4n?wd% ze7WHdY4{q-KeoT-a&<1;V*T^EPMOk8bGS!Y(zk`))1U;MIUyJDQafXf!uaII;aPIBW+vNK2Mv>I?NG zOR|_?;tT}M2xrV#$T!&VI3;m(O`C`8_p8Vc#6Rs z`=Z`Qnu3|Xg1e7pnlcRbTx^;W>py20oBVd-qJrDpvT;fr74ItC#;cFBktVQN$|Ou# zkQTMEpw*;y7G%@ZYU(c6Vt6w+84=|Ok$BhD*|y zq_!92^Nv%_9KGng&}TT~%`>NP;z?FUK2YCF;R&FJ;FrNqlfJoBK!Lo7Cff8b2cj`B z!nCT{z)1RsZRZ~_J-T#wK=utM^Rf9cA=6yxemY_x%xl$OmPe!vl8Be&l4< zMYs0zN6Fz}T|fM|OsP)o6OunD_P8ME?JJzBEY-h1}qEkuP?N0{kDj*-^&dmRO}$_>)NH??93yMkbg}#BbAYVt%UrGosoYzM*anh{3{9aFPh&5`63r9 zS?pg;y396U%Lsc~D;MC$voZ3#K2t(oFvQ4{?r>$(l&o&i&T_>Ru@>TmVZ;go|K^aUmTAoTj<6C9LJfrZO%yA-hT+T3m3*fNCGxyM(Mr`j|@MVELrK zSAn9wWDK0^nb9jH!QW#X|6y_bD8W%T6j=f1m@9)cB)Klg;;3f-8g~h=Tq#6eAxqXT77KN(De0L^%%^N0yxy0}*Mk3D5JXARpw;(<*j8vQMfH-~EM$-TT8(>e$xx>Sy7Rw9$bnVe^s zm7R){F(bcpRCpn)*=x}qvBqZacQOyqRTW>aM^y_KX76<}t1A1Zf3M6hp+F4_Y!+FW zdki(YXGTTu_qMp^8(1kE*VP|f>`oXyNP4!%y-x|BoK2{zm{UpT#wUJSsj4rQQ%@rh ze8rS?h6w`iaH*0qb4yY@W!XxtRON0b!wp=)6f^4C-tpm=F{jcJ87M4H<;N29!}csc zF$>VdB@TgxQ7PTR>Xf|JM(fBDzv3f<#={`qYf}H3gW2-3@WKmM1vb;n0_YPShhT%fG?pi0C&omj) zo*A~OSReTB#JZ8{ol9)deWRh(p1HHKdk03J_w&<56pq2fcf49HfOU14}>aic+mvCT&R25OWS|3QRI{P?|XO8>?ZsGi0<% zs0mD_6En9|!q)$wj1BJ+bFi0TD_zpTa3T|c?3^fCC>i&eAM7a6fAOH`lF)gnRvsBG z!y){*rU`;L6J0aV@A(~U0n+br8iZLmR~F7S>n)QpZ}*^WguOhqiBFVm<3g}JgAVl? z_g^%n6I?kMgO<&ViCb}rNM0JcC+B<5#E z)k@Pa3~lYwvojZ(?wYHeD$}Z}N&3ySWXFeg(nTX4mbTYB8xxnVtzm(nOdL`+q`jUS zZuG;@_F>WXL_^z0MB7J2+s8!P$3@#GMB67t!?g)*pAv0DO}=I_66&sI;k1AknipbhCI>N~)G`X$*)9HwGWx5sE1ddoAgA zEs;zl`6g%Y%*HrftOJ(nUg@zMc&jmVXRvX$NLFM{ZM%unY;4lRPI(Y%CIeW6g zF()gW(t(oXw`sH@ABT4011P?#Nh;l@p%aQcbi$8^4#M%!yiqR|#XKbGdg|~} zGhyrz%FP+h{Od$QgY*#d5Ucjl1nlVH@Zg)`1IJ)*X15FiGXl}B>n8gPenmx5s6hQb?Mr2Pc@!Gh?fXNIl=?3Fk9i|TmY4luCjIsmT| z4F($;n3JCQ+Jq2(jG-s%TzAt%cbx{SkCDt*Ao-G|uC9X6>{c*XnhC8>WuSvHuG$zh zy~DBO6W|_0~{Js4(1b9CMblLIEjAGsLO)URbbR_!3u;>e{-6Qx-!YCE5zD}VG9IWMZIQErvjMH^_n_-Q||zyY!T%q zuBgS}SQ?5K7ye#fQ$}g>NPk#YCc8NE{LZaj{H?#IJ7*r;*Nd~Jm6cKFg$ainn)ff& zy%`7ziUa2LRvipm;+n)M6{toR40F=opqf4z_2~plI9BTPsv-HAPW1Y4f6KZq<(`PT zjqrN}Ccg!tM0^yolCFsI5ku728KTXQ;jkJN?42~eBx(E%Gy25agT#qEQ7#q1Hts*z z$^`Q@J!!zL?Mx?AuLUw1yS-midx_^%7q>`Z5{UNN-rq9K#+6qH_lnNh9{H~O8)}F$ z9G$a`!+AYEOk>Btx)f53AW?3)@vQdCjB$Yo6BR&p?VRpPM<95On!1u$_Th+hJY z^i()HRYd|L+%0U~HYAnOg#?w*n!RR5w>Dx*>1e4nMj5Fg(x0@GtE-%hq1R$(Mw2^8 zRlt%q&aNgDx}@3$Lgv#DH#3^rO5I}`uU6B+#JF z&Ic~@Y*GK|pPjVea$UoM+SXUK>J)I>sHXWT)G-wlIJbHIW|7aF!9s4w64%CWm{7(Ls(Jf>A3*#S0j*q9)@QYrFiB=nL2C5)PW}&^8$0&i*4tE1P)`-c)@dg28Ce|U6E@JBm` zMITJ?4^#uYP4sWn^KTRVU-VH!#LQO3Jd@+}{Ei-I@y{SG^|XRN-EoeLu50yApsucy z{NHu8F{N}Yfsg^YHPIg@`Hwi??O3^s-_xx!_l`vGe=ogVv|+Np2W6&C@sHq9*tfb* zbpI6pJIVW^seTZRp6U;)NZ6J4)l>b2-7Ezx=DK-nXtd8XKku&KaQAF?VASH*_K9wr z=D$q-vv>2q?W~Ai-pwD!uRgo`-;N=a2Y%162N0gTyZ1m=fRGD9_+X9 zsbln^{;KNUmp`O$P+w+Moy29#7gpUH?e$#kR?!Z}`1M0?zWRRHaC+!UpzXoel@zft zm#UiGZAte=yY-~6{zr88bG6OEFI45e9d{h#ALKgU>!>~6Ki_fojGkJBk>JET{O(cR zO#f7meu}QX)1MH%daOU=vZCK3a!&AH*(4t`4xjIL*!P|t+b-~1JwQD1`~F*ThWd`< z7W!@#HM~~z2S*p5=0Dhb&qPRZQv~|0<`hKa(H*mY;E(dD>xQNNeRRn&XPU?0vv};; z@t3pM51^Xh9RF1wzxg;lpu;=Y|DH=HnW}$tk3T$Gcb@(zKlHS4HzL@K1(NHPKDW{O74<&Q(4#h}1tC(s|i{V^b|oy!$= zaW&CPSNRW6{FDsqbR%eKsN1sp_GxPf@txNP1aqm;c;|Sz1&dbk>&jQUdQ>@ z`j--oBat+Rydf84*>d@j)q(Os|zhuH?%L;FK@#@UJ$b>`wn8eH(d~-_H<~SsMC8=gfpaFWm`&K6o=-gNFlYkR?t# z>@+_eB&5IFzofd(_62R{>!Q=z7|3QA^oS0**S`#2o%mb-A(81`e*kE2eXpOd%wUGd z&zHdzi+}5%5G`NjkA#X0Bc~GV?$MX``KJQ=srUN}9oXX22mD{v9j&<_$5dQ*Z*=c! z{~hP%=*YKg>pOn4#^2s?ufH_<@Ii*ghG@H9=|0i!zw^IvGSO}i`6oL;wB{i{-xzQb zWwghv5_&_tF{8cdXiLu%2rXB*IdUHMcPnsJ4h`$b=&$jJ@A&$YeuGz7d{o|T2JOxS}{Fa4}V+FKefFQkT~p7~je zR5Kg`hom0+S#;i^X_&wtW?vihC7R-p($bfBoOTJ9Czxhq<<)*sdX zp1Vye)p09#-)&l9i7_N~+uhL{SW>y*V3)oQmbcl-XGWl1=2Nt z@W;j9dPRMn^~Y`bx0~-v>FzwIptnL}?ssTQ=uIs4tQLfV6GW#z>raqY6y5i%zs0Z( z_tNyJ+<49+ef?|H?K%HIXYXjnbN*2biYK4*eaC(E?&uHC`?~{P{ssSdXJyAZFZf$K z&ZLgJUPLu;UX1ErX7b!Sy5VI*gx;_CYZ&#~K&oy-!2IbIzn9auqU}rmVJFRkoqD6( zI=^qn$k+UL9j8mw?{&YSf7e~}PFRO_XdJ!amBKpidvgoVqd9en_Icf}ce+N$yzZab zg??#8&6TM=Rk$wN@Veg@NP4~DFQ6aJd&3`-u!(@FU??|cs5jp5mx0)-QEq*7=9`F! z4bd;&^ryMYu8q96P`qxAo_fn45w*SL@8sTkZS<433{#VKwDWM({6~LV=i2C~Kl)RO zoCId(*Hude6!^`Px`*`AxTh9BCcPk4_l4usuy+-vW+1DNFy|@@%kiTiDpH{ZwOD;y zsG8SA@KvpVoiLTJ5lgu(QtQ#Y2}_2*coAj4Ruik(gCg884LqS`5R_(jcaC{aS<%& z{?{(L1F{QCC#A2sszt7YT_lU{yQ-zRNT!fXH5?n!`li|K7uKi~8^W5_rECwcW9^pX z3nl;-GOeeRG*aul8dgbyMbM-Q_*&|x+Y)9C=w@psS7kr5&tN_SsXj`Y$FQfv;#UB# zOaNaEv=+h3EP?<(B6W#D5LiRllEoGX)bNXy&^R9O-k379BQ5;fmQw~<_`?E`TnrU! zzlw@oEg*FOk~X94&r4e+wgF^FYMp(r0Ss8lLIR}<#3w(*LNc9pFMw|AQIYqypzM)= zQXK8>Vqs}Xh?4yVpmZsL^3MuTK1e{}cB6&1?UO3no^9JcA!&QGdvsVd{dh#ucGs_J zyV{Z=7j|j=NfBv4aEYyH_VXsesG80kH{YN{AXr|4p#B>`(6a==WjHbtw zczO}IfMB%}fnZe$f?nSMg5D(vuB(9HiUa}%GbgSL1fQs}ga+%?7!bV2vzUzNx0DD3 z>q-zbd=&(`Qj4+K2M9DI2B&U4vsH?X84@=n5G-~Ji{*sQ;Oq+^RL_l@2B6D%ww@#U zuM}VKOAv9arzB!HZf4m6yE}~`=^DQZAlX&`s2>ninK62|1;PMyM*nBrwmT5t{}-h2?SkX3+gp&!L!(UE)c8& zg0*T52p;2^K(JbAVv7<41HTG_xKqMXr#x8!!9xiIIoN`F1;HoWiEX;U^uqcWg7+#Q zcq@irorM4j=c&EZd}G9MJm2)RJ=Fx1ScecXveUL+P)BgmeDEeUC4puu7~WvyBR-^Y}gaEa1@ zU{whM^q`GtP!tg?4PpqkD?#u;1q8oNARw&WXH;z1LX9O5tXFG5@SYMAwon=ntYdpc zSjj#urP2H#elX*m@o#>~u+4XLNs~eG7BcAntn;eLK;jsgbDP~Acrdq*WMkeL?S=db z%=SV(Z*rY7Hb>0lyvoJ1(9gVewRId}OHJn&+&z`YLq*mG)iPe>_GJ0t+oebHKPo?Q z70_K(8==PyWq5A_CsVpyI4Pp7h(oYum^wkIsf+U0&IoI?fl!OZpW|Y+rOPa~l2TJdBlv7i^$QQ7M5Hg>e z?ToB7hOy!j{Dv}3==U-F#RU7#2-JoKZf{0dz8QgQY6Umzl6fGAvdu;c1{(`@tu{Uk z*tOVonDGG{=MMvRjrKmY5@8s!?P1^**idnLKcY6UM`A9cX$L;RdbTFIHVQ&k zNWg8J80}sY4RB6QaOiLmwCrYKVs*$roxsI|VX9IUTc8H27_FQLB{)=UQaHES!lY`| zq{8MHR}H71RT`%l*6ezKh|WBL68A#Gd(!qTO2Q@(aAvUvmD&pCqVR0YjNGWq{#1ee zL=hAAG7KT7BnZp8xRM`8J<4JMW`?Z3xrf@ejGxHYwaoUTR)lsKY`$fxh{7KQJ*!!V zie64M{zpM$u`@bVZMJJ*tgQ4rpM@?_pBGmt@(U!1r7T@p;!1U|rNvhimaia8a)@2^ z7y7W;X0XESMKg%j8Q)fT6jMvkR9iUJu8fN?0K+vKLjH*ao+-F`&yLrtR?EzYJB4)` zc^bNgQ3{*}WoOSG=kP$emI$lk|Tp*&B1otq`Kq3W%1H2}mRnsv414Qn0I~EIz<`lTN2;)%= zZkjl@xNQ6NXEZ`P_?JYA8-Ev>NHJX64NQ@s0!^y(sAj=IvR7UmCAi@CYgv>8?p@o*}e9wzwL z?j58hQ;+G^6!NR%zbQszZ=BkW6 zN0^;JSaq{&>RI1=g0oa4NY}z#g2mgk9IEz>D)J6 zVcrvHmzBQ^F0y(|(r+lI7nXM_v9kOHEJ_7dmy-*tIu%%3{sI!E0&kU*3+v2#F=>2# z`4d=};53X>tIKROn;HE^^ILf~vq_rUlG!ZDRGQ4{n9R%`3o}+~N|>JzvGrFZ$)Sn4REh-y zHTIkP-BqhlpXB0Xq5)|8zkr2G(>1F!!y}UI!O8}cO zwRv&N`jmEU_Wz>1{l?F%UQnvj!Wx5aYH|4n)Ojm0gFnDMCkugcqREN*uzuO1Rn`hS+UvAm1AT^H=u z`;$MS(f`Af!@`5vs;Z*9$SFFD{OF16gGf`Hk7!<@ zr=9(39jn2W7t@1XYi8{O-8`RdP31GJk~pw{{AIPz$`=T$1R=-evIL4TIye!|bhd-T zEhaM_S`GQY(15i)w&t*Ii1ljjf@z3tcUF+eZLwpl91`rkLHR239ZVLK&KUr>0toQMT7wclv(lNzn)`NX-yu8ePR zT6M4dSy;v=21y;hTwDV!amww=G@QQdJLz7%7CUW)PpXZvPB~@mq)hbTjX|Fyb2vvB z&j^?7UhEY?SS5~z2tw>+?8PuK%59;^7;s#sl{_)OFc#2PgyGr^X9RxYbdi(THFvnD z^)pTBT(tP6;JeKM1jwt2bePLyiL}#qoJzG!?Y=AvFq|O{5$oj#T7Pp8ZY?aEwTnyW zRPEwYtH*ib6WR)IbAF$5LF^8<R%l z_fr{5I6Ai2_*n3=#Az}?jQqk`CDmOLm_EX{8#h;a&X`$JA(~Q=^PjF1natjFqxBttkx?A-7yMwJ_bU%RsEV}8R1q%~=e*Cip-IKxe zgr5hK?3WXu0Z6{-OzCib5&X;fe*u0c{|c)h&|UfK;Dc@c9f{w2hpFWAl<|GL>Rsc- zefK@VD6o0^p5Us$QncfTzX{T=b6a%Ly}>a>3Bo*%lOr5iQxPpJ0`gf2E)UTqfuBY- zFv0{m%ZUm3Y;jmX!X&FND$TB)kttaT5#%#UvG$YsQ4^x`7u)S6&~ z{ctuF_kS=L;ye^hc`z8+xOWB!&5?V_DJr(j7~jW>9t;kKPyYH~uw>f5>w?X4ZG|sj z#p`D)O%MJ0cYzK9eDb^C8DL?$pYd<|x3bYo{%%Tt_u=5y|Df3Qj|BN%a@FTNzFfO> zvY!7M+HxzR7as}Qoe9yNj|SU0r*{+|4IIb0Jv!~N;0@=F=;+6Tsm>G8ipPVajl=Qb z2UIslyFC$%1qE|t;+iJ{ouWwIgQ)JwpgBo6_{m^m#e47Q(IS|MkXYd{5M8c6z1-DVU%kP7BGdCi13vc6P{5DE~=ZfltQfV)G z$F~3tHELWJ{47&}=Z5Izbx3{-uk-t;+v~xo+K-ka2OCj3mPLo(RNELG|9a4yc20Xe zIB8_LEE=i29|ou5{;KNSU+Al*zm9Ozy`tr#-I{3Kp94SIH1@A8T5GE>>#u8kgk6Q#Z;I{d9*>!u6P{p4nV>K6cubu+kVbwLg&CjYt7&2I%) zI5&4p`eWcZ6r1v=U}Bfm6*+#pI=bXf!IgX(`DaGihUmh4x^HyapMx=7Z+*X9(T(pH zq9fgO&*+su2N#oh&f7t+{^vhike6J7!_sHV`M>x>bi>=hrCoHys(+Zu;iZ?#T^LPy zCs;%2>|cW6PHi;qFG0V48*c4X$=`1+SMqK&?=Qh+JD55O4Hi!nOhfY_shG2q)?>~# zXv5hP-VJ_aJ8WcB{hk>V`@9z{NPL@IcC^O6#`X^zqd7!EXKTS#1cPczNG#nZgy%-WJ`yUThN; zw!_K$&<~ke*GB*IVepw#(=qRF!6D997k=;W!Q3Q=F}_h{Tz$$`f670CYpA~QBS2gm z?fwzCtcia5QP7{q?>-9VIZLB){|wG>|Mo!iz(0ed^c?(gusui~{Bbayl6QY>O1|~6 znNM3j33^g;|4)K8O5XQLuw_GekQP3B7RUdmtxmHc`r?ydn{4N#9sd>VgobnCzk&(< zZs|;w>nf;ng{ZPu)bMGr8xZ8jR`rZd`ZVaf#r=+^`<1TFVOHt&Zek~}N?OU(@5u6= zQ2R)n805T z()noM@Su>)r$(7#KAkn(C=^}Zb4Elvj0g^QCUjgfB3R^B@VwcS?^URdz6jD+aK`mV z>GVh*kEGKlFib{Qr@zZ#C(InRW&oxNcbkEqIe{U#vO3*H*2bFjU>>{Fq<7e$=_x4C{6J>j(Yi!!E=%l}*8h^V-dPe+p z$K*p(eR}&b=iyF)vsHQYNp<=rYTUW?>GQkQAu&;DT$Z+&Z=Bp!(a@ghqiS1`pd3l^ za_2>t_e{5U)-R<}fv1i>a`tKWUg;t3Z+;ft(Fb+v9DV@ZhwH2AqlbH?FK{MB2lh^H z>z?gIOM9nB@$*-`(_=U|_V?cD-j4G~RM#inpSp(hNiT^jIe^r3-}J$Ct(tAL30C*h zXl7qZog3ZQH@y{)$NQ$k-e+F3DwTH%TbVU9D5DfRxyXsU#`JKh(xV#TO6Ik}>H6rT z#`G|kZ#OokZ|J(h6b!440k5zjIf;TJb_H^u2Qh#^&*BCv;G*jW%_cerDwzF`K{7jBY&&(0q)}E(V<(xij1JM zwo1#Gkz|YcYvZx8uqZf)33)TmgwhS-#4w5-C8GAQcy`>Npyf{LW4 z*5mmPGp<>09`gGtNtZjHMXlWLnX2K@c28IB3_@Vilpv85jgc@#S@hoebd{E>Nznx( z&vR%Ved|>0OYW(9+i%6GIf$j%TRXv(Ckl5cIMJZ(gKajJ{)cRjvbkr+Q`-j~ZH>G?bk*f!n2fl0t&7LjqwE36}WNJ=Iy z@}9eGdLJ^qx~-Xbx(-VpYwA-Jm{NU9hoy%jFi z{E_LCc%-*Wx6t;~?b0($vs#3g0DEA&^iF*Ie7p4bdHm1z>A9N{0X%qJEo0JzvIaM|Jpw8-p5`3-GNIEbqqY-vpd5ylfMQDxF6UU5?_e_{!m zjX#;yY5Xblhj>S@=Z64cU4q3McSM5yhMBl5pxU=0PNUhRLY2Y;@(3zaCsLs{drF@4 z{||F-0w+~*y$$!h-F5r+tUb&E!wf@pv(2!B%D&wJlzmZxih!W9IG_#+xS>5LB8iFO zTJGW!K?Oy{v?ea2h~kErC~l~@M2TDQA5Bn*e$P{NZ%+?k;`_ee@BKdcIk#`!T27rh zbk)R5+|1J!Qn`I zw2&R;u!h|@#(`}_$(-o-Kr3WWyw~)I5jk^o?JmpKY8Mq2=D7kkejH}xH! z$V^8*=h8Bvlr?a zFTBUY>?PH{Fb@3Yc`%8F;JS>Oj{|k*sBeyomZhSe!`n!>!0-`nYsBiY$U?WjZ)NDn zN3FJu1q75yLq#Ud_`m}3FkA;ipg{|U0ih;RFv}l^dtHH{6l`@7iMj$k0z77pJy}wQ z*LWeu9KX?dZWI8==q_X8(s$jb64z|EH3QoPx%(i3P<*)QyK^Aiz`PGPj#&Go^C(Em z_SR!J*_DNu;zq{!${LbQfh;9B*paDAmIErn5#CS9^ zcaQ;qKc}|NjJ8STupR)wihFW$Mge?sIHC}-Gv#;z8c??NB77@fz@Bls4&xpzCua^B zM}b6v!@xz+C+?MEpfr3@b_@tL1ciQq&B`eJ(y@D*D?MaN0bMz|7ku*(&4JDh@GouC zA2jO9-Wcba&>XTB7vTdDM9q~g`h-ZJMSVh1JmP&q@UNFRIW)MNxlag`(8IdMqMb9K zu3}k>)`%Gl_YoxN!--6dpCUF${OAVz)X5<}MU|5@uh;Bim@FdNT%v6_Y68Z}>tx?L zyyW;8bBQr5C=bLK`p;3!l_=1!E-^Zr4E&+U(1K42P>yuOVvsoZqDnZPboJ*U4zr01 zig49^vmm5h_19U^b@?FYJPaE5u<#}K=x8~7iE*V8M?-H?<7=?nM{J{K)qO+7L{JZF zkU`adK(C(RHKA^L9B_CHU<|@}mO39O3R7}@&6n}55#lbD5k8tZv&CU#!ZwAd7QR|9 zsWWs1cWX=-9{M26V4$EN9(dyEZW0&fv0*@f*vKr(#3o5)cu+Q_q<)T64ES_i$iRO{ ziYdtOqb58oaK;3G$y39oM0={g zpB&9oEBZ$VQJZ?Ezt*Py-9Nh0dS1OeGFpSk7I_)vC|~_?K=f7UXulbVe9x&Z1Eag4 zeBD1NI;BJtTnq2FpikG^g}+76Fv|uZ*3^OjkQGy!_Co?<9hQSf$UJags3zU0#kLq0-GE9Oheg}t z@t%jRkDrEV@CJC%vyt?Whn1xMG7*n%wb2*R%w9g8Q=5lt+X{e^DmEfI6iK5;M4uuq zaz<)gj2!tNaM4R0c4Txj3jOQI=m?mD1|0?44r)JfRP^^W2NfZHrNIa;Z-F*IZ9!Fx zj$VQyKuRAx-WnZUj>ohy(IZj8?PH=tY*esoT=e$ts9-cY4GxqbkFsT7EmX!J4SNj< za1SVF1Bi%9d`Leqp5}$;)bkUx9vztoz@Jl>O^nv#v43K8FdhRYv9xlcaU z81jl>!Lg)@pAp5DAN~aO=tU^%x$2DQnYmwVLe5f?^EKw|TpulAJ;Ul@ZSj|==hsJv zG3|-^=;1+{vk1SRRRb4cIleLd`l4vLYrnEd{ry}t|I{O>l#Xkr`PTihQv@q_{y{6* zCUkjQ%|R1*runWcQg7K_c!KC}H*QjsPJ~hEl@kP`B)~|I>0+VsLklBOqM*&zD7Cu&~6s`FGI;pb_`-=rT+1@_%?ov{DUz1J>s& z8lyt}aCLNG`kO1FSCZntxH>u}{mPZmHlW@#Udjrsoyxv5Iz^YfcLNx}>W89-r|-Qp zx<8`RCO;poQVkD9qv>tyqMzrs#ukj$9N;nDfnh@<;874@aR9!3Q?#^I3q#Ysx`Q#GGiu#Q>gu8H zIY`PI=3;9sJ#?5WET>TyP({Ps_Ud%c%?$?sa?h=>9#;2yZnvyF-RxMddeU>t9YfWo z+{9WK`*a&yv(mevjpK*AU{X*mN4PIq`RSuZx+PXc7D+b!q|w~lmtK0Ldzq!W&k~$} z+IVy8EHNEg>AqP)j&I6-w{6+nErKP{M1_T6i7_7UMtAxkS`bDPZ}GbLla^VM+rF}> zN8U|_y>;rQX<}Q}#vjHXeswl&Q=#04)#~E~xyE@fh|!?mvS|Y5Fbn5Sb3al0E^sQ! zO-ooRqZRL?tDlB-7xFaT2vB`xyq{9zsqc@=#3T}#^pxKw@;dVzwA(5cd743 zyX|cRFHLMkbh{(QxE+C(>0{iL*4FgLV_XQ1E!T~6*CEd8J>%Sd`1a8_7uK+J*YWPv zmX3ugGIt{2c7ycx32sNb(+hgAaltof0SAuocNKh9BWG&gE#A$G4i_G!3MaW`1>Ans zx%9`hH`zr5HdvF6hE}NMNmupvw{nEqakN{91h^Z`Hji=z4a3zgs@*hn zVv8C(%{{fq1f|`|RWQ9U5#99Vgb52p5U%9Nuv-p_MYi(ML&bd ztuFU}*)0B|rY20nRt3m-Ezkjw?Vqk8lQY~z&V7hPm5p_ddM6J=lAk)9?MU0 z=~uSx6kVolj!U~MYA#i`&jHkCSdjG79Jd^g^0~Uc!E;^Kp}UfvtI>}#M^|MqNLoAy zgKFYDm-}{g^K>Pb^RYoaG|wH0#J%%?tJ$jeeD?@E=Fi6j+p5;gcdz%!Ei_CR*B%e)CNCcLa6LVs~6t?_k-( zWNKXO-iB|pmbhb@eRJ^bu_Z3mkz<#-Q_1+#A$9K4z=c%iP1NHfa8~5q=~W>0g_|aJSbp6V+^0A1-re`+3%7 z@~jUh;IPlLk-Di_7r6DP^|cEyKenp<7l6oTt1~Zjmy}Q9z9p}8iR9+yEhSYn8t|@5 zxksYNQ7JvPXQbTY(ZLr|P%}Ux4KBjeD%F4~x@H(G7~zyEBlWuN0q z8UNHcxI8WvQeA)Jb|QQ@wC%Y(6Ao2eJBwo*&ICD+`0qM@cE$o($VlZ)CG)WYrQaznji$<5t&cF z2c3t#-hfEWAwBsrcaF%v9!K+&Vr_qGyAC^^_~uCX@>MALn3fG96ExlQG|k<~&?^hDX% z)z}wJ${Oq1v@O3Mld16V*zl)&hUG8Ve&nGDioyh^Uu#N4lm^4fL)jFnMX@GSy~|5!p~I{j|(cB6{EXX_@0hXssr+J4*8y zP5V6VLi)pTDBt$!SqT@LO8m#!!+Wgp1uv&yqk)Hm2ogFFlURRCkqFbUiYjy*Qf^u4 zO7YIqJd6MWn{x!Wv%{*&Be&RTZX=zwCYG$_eTzOJbP~o=i@AvU;BS%Eg%825?||Lm zLAIjepGC^;?T@I$=aKG3Fji~e;8Yd{(xJ7^`aIIV7$&&v@da5ttJZ%W;n3oHFIDhG zq_AMkA5Ey++TGDa)YR*w?*@^TYa%O?*hj;b??v3214uywAi7@a4_`!*R$9INMdUC9 zp|o)r8Q1K@aDJdRbaXyCiZ{2}ws4as>}}G%^q7EIY5(mfn$R<=7U8x53n`2=P109w zKa1ozm){4#^HrO1qEj51XvA*5S54B4-kY*feUEqPjC`!`~x?LCatNJ(6^`vz}J!!Ow9WIhzG7 zA^P?OV6QJ(y14bWs@sFxZ1N7E480tB@-tjgW@a{~8&3rSJSbH#e!>)u$@gV6Q9zd+ z6EmeiN1H(wtb2B2702ltf7-&2Uoy2h2nSAU_z|ja_lP2enO%NH0W)kA2xw#Sei_xg z33QHkA@jy#j%oO43f21-zpUkEOhpIs!SQd;tm%^ALpoHF2L|N9-~^vWn3W^r$>lUO z5!Lp8fF`IKru{?rl`CadfrWCWo7^daJxSv+=!p!IH%RgnjMXoLpEbnyM8P%i14PS3 zd7gTCj7UxdVh~f0d%4&-r*kPH^J>NeG6So}RyMXy@u-1YGv$I##V$4=09$O9iYb(* z`u!tP9r%U^F3P@dxJ{$p7i!r*BJH{cTgbMT^c_Y+|#?{qiLjxePAR8IPu5jOQBUC{!W<9u+E`>n`O)xz2&@2IR zC2*hxA=IEatWSd5v6)&_-gl9HzTHDlqXx2iw7}`~q@|{R7is0{T}A;SUG`mMLW*LW z9tr_I_>LYFX1@b`FuRQOZver9(2U48xDmt+H^qS)8eAxS(W6Y4bpm?S)J5h%kJRXY zM)K7K!-T75{u6f?Jg+YJXQbtzVCt{O2{&J=;}j`cY?A8h97=UiDJZug3jFGR<@uA( zL3W^A?fz$^W(egOK*r1?onn?9qFRk6)`?lhnxKR0iW9Dy@UO_^A?O^)P{tu`Ic7K{ zs#ypmD?K>iD?*X(%imd$zj_klc$_&As;;m^xpUtOP=3nP{g&vYt|$>MPFMk4F#B>f zYHvgy>C}cM=L7TDDS%A8h%&AW<7*NiK6MK2YjnY-425E3Y+0m7hL4RnYVd-(e{ZB~ zVWH2J(IwqVz?GwLKouo92rR5;JhlT9-$zOjO1|&+k@mw86Pk*Y#FJVSTESdLKuaMD z^NV<0@P8Aa-ad8f_mS4AtbEdl)L&5akWuAJQZ)~V{bGWQKNo9#Qqml{SR8xyXuF?5hvjEI`-jshCES>oKUH#Y!!OZ#a;tE zdsyvW1fACb;Bh9BG`}D3d9_v|7b=)(6e0Od%%WF7ji^P328pP|zDQ+C9AU#x-khRu z0B_I^88Fdc`Zk2Iyk_7f?S_PiYkHt_FxU=-QVW?g6V@h z)`2nwiq!qYaer$WG?p;I#+6bO0L8Tp4eIfI5x1;RD|PG@_`91Z0pum|N$Q<_7$?v# z8YbKt_Ci^_HmRi%SG!T{I#Tb&ahWg=7SP`U^+)sv-0H!T;CQ%f8TX8#KiuNT#A(B_ zISxRv{o6Op8$Xc|1_hZ*_a(eh#e%<8l+?>hq?0k#us_oNXx7nBJB2_+rLh;y+o1&F zq{|b`7IC$obOMs5nIr@n)VZc1sn{f8RFZ--Ii~)(Kaw0l!GtvOR9!J_fJxYKLy1|K z+A~cW4uzYvnMj*q(i(%b8B(a}|Bh@;IcCDO01M|NLH8cz6CKl&2DazK-8`YeiwTk5ib(Oz|~|-eg9+Rcx#q4xh6>2z&Ew4qrz3~?;vjS>` zP=_=yi1k+CrzQ(9eEjs+DwugDGOQ6Vl#gZ+!}SbI*W~S5s$BbwD23vzS?-Pu%k7{l zEkTd+MIN+;0TvYPN$L!+I_LrJ})~MgM4*0Xa7vmq6=+GJ}y&f!dBZP~l zb!%YM@mDR?%NA9=;_yj0G@Hs!T?2*&bQi{P@+)PF-qv#UkS#_6GQASb3yWdaHEMiV z^v_CagCiz_f%uJtH-iEJf-fqIYptwNwuwm}2UIh-g0u zO?i7mI2KdN`+iEv`qo4^flAp-T$WM|AcN6q9z1mnV%dT!6d)(EU5qi;4Q7BLY&|Q{ z690!YT$otk3?d$4#6u_x4;C+=ZH|V#ram8phB8A=Scwy+F2JZp0O4rrJ0jFd2xy&X zI$Q|T$Gbw5m%2@Lb2Ur#NfxS@Ba$g#15mcqS~}bTFi@^+IT}~`;`ibtol?ML5uFx7 zX>aJlq&5ZMtFspBCxWaLXfEB7Q>qk2_J$UMj;fNS@Z`slFUBzkmcjhpM9W;{2r~zp zK;Jh)T?}=CI|k4l_tCBW@buJS7_Dr?zvhTa%#W`fF{1w@)B?xhpgJ6DLF5-;G@Gci z5*@LC=;W^abHhbHxyBs;6&sMSH7&&QF#{ zjRh!+sF!1+2mB`J42rD_lD@wlhjBx-$Pvi_{0JpFYwkCZlEqH17Vv7NADB_Heaa6* z`kkI5a0SwfK2tQl?T-Yn;E@|%R8QuJxtM~@HK)=)qhh_-#G)31U&EEGqvq#|F+C8* zm!=!&4bED#x^)xz=y(|aBMdJUM>qs{yFv?-P+D*)88oquz8Jtxjn*#$LjMK?UkI?V zW=_NrXRRVnv_3`m*NgLN8Z-Azw;1Pubft+SY=}Q%qO%0biPjh~F-z2N~ z2RG7z5@YmEJIa`z^387@^-bsHJHphEt&(#C1rf@-YFiziFIv=Px(k$ZP2^|W>GLli zcp{K1Y?F-H1q@J)({;ut`Cyr*b#ytNtwxv@1hBR9ew8aj@xS1NOTMVdeeGRPDnex9 zsXopZy(_q!Ok9fnn ze#@&!JYabP6Yx?vEb*Y_bxAyAdF>JpTi!oIiA@#`(Iy_Tyq7|WKUm)8P$F%4?}ieO zTHbMq$E@0FwX6`7u}|GnC_1!sWQi~C*#TK1u|97H7X5aiXnQ0iHxfN1 zXGI<@Y&d?A`0MDevBdb~Y6iC4kAV(VgtGAnSR5ddVTn|e;v&&XBc2Z7f2{MP7rlUxA8Lp5sm!Ss!LcSTx zk~2&lGXefloCGm>3}xV=B9W}+5^fqhz6myNkh@-xnx1E&p&7A6#yBK05#PZ{z$`~{cx4OdRyE=6Ht?FWESY2Q z+Cq;FGnG5cm2}h}i$&+I{$R|`8jRv)$zoGzb}$%u91Mh%DG^Dy-5*vW?(;GVu330- z(Zzpor_%({c@>smpbyxZG3tP#%gPnW7Bcq|WazvqIZfuMwxy!-XnaQ_ZR%v#Me&y) zi{K7UD;khyo9r0o3_+pPB`aWmWz{QWcU%OhEp=;@zjingWm(-3@ z(E$tB{iR~0P99MvI;0#85WGw;0X+gBpovw}l{kk_j24!^TA=QM-vkuzLxZ`;qO0m9 z7yxE7bnn-N6%FcY0+W86rk<{gj$mie%Uv8ge$XXXBuME%2-mdudGrQK=7s zNrXLMpL?%No+5j%NX`Kkdt-4cd#zfL%#nCST#w^hinisH4J>USn>!VG=1#7tz-^dU zwiG2O28dRemNZr;p=k!=@>^G1T8d7VqrSqUv+2%cM0NvLMx74)wx`Q!@vQ`i-X&3a z0{e`e*&(gOv1l7$@LL1E&6LGDGZGwie=AXeT3>7>I#f7QFyMgV0<3j;m^26Gn_}>; z8JM*><)Ui})#oOs%bes4Aak;|k0GwH=@Ie)i}k=6(1=6>(hPtEF)$C^!`E5KnNt9k z$zbqM%!J~}NxK5k_-BGd0bK4BiC2yXy<0%W#0TK-i4?41{SM4vk2LKMOXgmX%mE6_ zXI=3H_>`;uS}u}Pn!1IG(5-3c7VQqj;AGRmf@dU%E3mr_sAUDv9zuwJn(^mhLZO=I zR8)O}{xi8EF%RPbe4Nl)oRwm03X@qR7lNko2nQ^O)>`tz(~ypb4!{A10?Z*DGUjxom-FCAP{8L= zyI{IU5_-uZ=p0!WhlabFYypu5gCaT!l^14~sK|o4aVrN`3)&3OK<@!vUlmKAVM>QW zvI=0OlDK1ywdr@1T%;Q}uMQtLmPU~VTwEUioc z!kR3tOu*@ajO}<1X$o=jU_ka5sWFx~lRc$;2CP(-O`XXT{Z)ebMtu6;@bfJH8#Y#S zc64KLke&56s{1QNmw`af}R!V^QUO4^8i5NYGvh%R`X z+eWmh%9ST&*`aao(il0Kpoh5yE!3tqVixwcN~^H8$Wh~~L_eu8A1HPc=lXibd4|pV z%)UU~RVAuZl!-@a%MeBo+ZsRwU`y%&g*ggOIj`RQ7YGkmF3QNS;~2DT$eeAH_k<=P+lKIi^&Ardgxxb|x!TMN*sv#&wAl zQ~z)F8q4pdUV}R$z=l-Q5~4%1UgMq_;^4pcIu-O9KmJ>K?Wrd*?Q)NXK zrKnUp(Q61P3&Bu%bHrO?)e!&9_d>Fs!pOoN93s zi#mWq#mS*u8StZ+Y~nu6nU3BO({X9fmbSXNgUH9~<=zgWbz5ARr9EbrWX7}^CsH4G z5Qo)d88J*Cz7WD}9?FYA4ecnF^oqpa1b5*CmG4oqx7*l%0%ecVgLMNbV_T2jmK zHIZcQ6t%9CXwxQ`ySzxpk~?wvPGeZ^vE-{3jUH_~iQ~ekS)JEOv@SkGEoyBiQRO(( zIK9)|{7$qAtZOKmwX3;W$2}K>-98)kgs9@uUBN?3nwRcEom_D1@ zZ57je7#C6IstuiS;31;6bcXkNtx9weiJo6xyg3Bi$=59yR5@ULk7Qn3_`6T-gIy?9 z-$ir<3%sR^=-wG}nqtk7Pg&pyTdc+G5SS)*f@B0yj^v9Lj^{y1chq-X#1S|S)1|BE z*Xk`a1W`pLr!LMH?{&0_aD?Y~6+KcQ0LUDA86gmpuh+mN$ywoxoh$Jj=32ejB?e(f zq%5bhfs<#D!M6MzaBG%SCVdssu>;BP&C;QoLOZb~zWeDZi^>O%dt(|$$-`;)H_Z48Qdb(Wd4e!$e;wk_bO3Ia>>b>vk^=^d4bi$r@hfN_ris-l9!RKo%`6tpj zidW*Bo}GO|2y`iLK|!rB=|b$bwvg&K41_sI9}1}}`-)US^)R*>;+%vRXmcboANP7ZI7TND z2-Tyfs3;*UXeY=*Og5^SJ;lW-TxM%XfAPrtGNgk{e6mX}AR+N?1VRD+g3u<3#kC<# zlT9Dt5yT5>La=!*&a&chiC*{~b*^<_rvfb^)* zvi-|+^37zYXyaCJKAIrc=)G5RR8B%p=X}-oaB)OWO+YBhZVw1)7Ir&+XcHBcm0Dmc z4&}=)i8xn>3)#CCQtv&+mqPL`e;PKCB2zdG1MP%))YpfLmQ}m{J4C4_i0=3qi1G4C&>GS%XCa!FTK3DJ5%uvq&AMIJh1Y6EQuICeZ|b8pbFg7 zXI5Hjbze~uS#Qbvn4z6|sjnD(Y>*4vC^}az84uQF+U921GZ(#nYnpdcb@6w0<-Hb& zSQA7A+_0fxfXXnR?oc!PiPO3~zY6Y=g>j0>a2#}QVN2WFay1-$;_$s>i`5A}ao9^0 zz!}oH;|6^59Wh`19NRP6uew*XJ?Gr+s9N4%^tRu)8t3&OW8POU^v6b7`Ud@4@IK(6 z6fjFk?R{DPh;9q*VnYI}U%d)8`(|=aq+>M_3}xF{D`q(88Za`&A_}?Nsm%l6DOvm( zoS)xdwLX})eiq4`Hl#ym@&nx=Xf{tER6YRLn_o|23cHD?09*n`>*zM@q}kUp<8*pp zC9N`*JcUX+_?0vUKB=#;Xi3KX+=2FNeDSd5qTOOIA0(mI)BF=S6! zaG?$#s0n($B1lgOlL?ny>rBbqsde)47}Qg&$5E?lJ4BR@b&;&L}9^-wzREU?dqaRQ#$GsVi}b2G}C~hzQI| zAou>E5FS23c7LDh965GKKA}%xT5x+YO5jt_`7{T`&Bxjc->2H~x(u*j`k}Qz+RSub z5G{!nyF6N0@d4ueIhscN6E)!Pk@md+;7|Ck@M8HiR$P!O&C45y<_vMO*v2m-rTGqk zZ%#%zEkStNNaOoLKXN1Ju4Tqg+U3bi?J4rE`6HpM zwN1WijqH=(3wyL-?gX<8BHkx#9KTclo^!|h64 zSSuSQFeS~2Em{!h-K|bf(3(?x~~Q_LpBWjrIyvgsXe|6Z5=SA z>U!{5D!_)#aY*6r+Xmb-*q5*9@F8%GlX2h)wf1DP6gm@8B@p=eTk|tt9X3LAvxJ&G zLL|U5E*>G04yM=u*bVO+Au5jJZ**Dr8|N=^mv7W~TKZddUiCuX4Vq^#Z~+QF+`@6vlLoaK!cN{-eo1JqE1wBde2I}^X z(<&3acmP^NojX!gwZ!6!LmBGOByS7tQ- zkGgX7|4~=8?4?r|oafjJ1Ns$5in6{D&AW?Nm=6e&ol(mk;)a>&6NxcvuD~-!y?dmP z(=cBc>P_$c1k~%NHT9X8h?%MLzc_xWU)X7Ice;!EG=Bd}ZdLi6FNCTieTkq;&=Fl}$sK_Xxo!}j(L=74xatFc??IE^{ z_BDJR$KHKkL+UzM_0n>qj}mC72{Spgl>&NyOf4TJT4R#jj7KV1mV`Zt4J2bAY5}pH3$+t@CvfZSmV}0&J{}82 z@~vxC`8dIgPqa7V+;O7q2wY`&WPTS6RpEF%w5Jgnmfpso<0rLcFf{y6zen;d*k8b< zq3DysIEfwg!Z^_#mbks+M74A2odBx^PYg-5=CepFn@3w8sfO{QtexXqN?rrW?}Dn6 zpgWa5^`o7p{=%b8kBt`%G3_<>8O%nic7nK~jCBWY9$0W08T+yNY=Y<)zfV(0w@@P- zp9!t%F;SG;H{7YlOcXp#rAg)LiK0V|?g&H$tg_u}ft%>jbpGG_86Tn^?BJ9P_}?oHmu^>WzbB^@mh!JJ z&S~bk{~>kpj{54LYl1td-g?P*$KQh=UfKY!an}$r>236n6wRIo?sl2lFi)T5Mwff3!uc@$@BPfoWiF6l zc#g=>1u}dQPcub-k%RmpC$_iCuN44n#WBja2wAK6<>3A1A2vP0+bv8fb<2E&<+)wG zHeYwP_*Buue#TP6PZd{z$L%;(ya}}3Uk4w7TJ`D^kQC`Jm9+rKT&E6SAbx|7Pc0C` z7|qOD*bJw0`)>ugLFr;s)%aCSsR7;rIUCWALS{8;^RXR=O*F?xzU^Uk^jA$-z0~T{adc?wm+JY`#dzl(W@@b}7m2EX zjx@HHoFS?)0O)AvW`(2m*g(5XdG&hGSJ&&l=@Q@8i=@5h3)O0onBaWNYTKynwr^Vm zdik+Y?O&vOe#Dt#3a@Ip>`eW-J|&J-6=#XXfO7R&VyX3NI=WaCMer;?N5uK;yiAM@ z^G*^J0nw*4(WBf;C~{7NSYd5b|85Ywvd@P#4LA6O;r&fX&8Ed6&xaj4Z?%UIhmaz{ z^MG8gcbFDy`_w5HiIan?ZLrKhq{7VAHWq)cS07&_j86tDMbgjT$E$Q9Yf_lqt#}HxZ49@1Qff%ysq!-_;hAOep zS^q7knR-x(!wQ4R;m?xvKa^;&?I(UvOKucXaj5d;8?i=sUhOfDlAH8fznd_s&!-pN zByw#Yyu1af-1BPvEm&PYuU<57-{Z}BKAdPP7pqrq5tXXnts=ku^WpqR;4cZ)QF~i+ zrx6|i4HhD4Bl{Aay?}|DW9Sd+>RZJKRQ}ejY$_eSO?-)#)8F1MY9kfT!xWA1VE zWkObQYYh+i9V%3l?-u1Kx8QCK_!W1H5nY(Q6ghqayPYL_Vu_JghGlZ&p3QVbm}k_I z?RblKOaJ?B5wXyay-xgSIlE1wbFWZ#+1vLK!_a6oZVjyQ&FP2Ni+z^0E&ag#;)(*p zOggJ8o)#`#zniY8fdY+ySf}FtT`-tCpAaLncuAWl#l;1|=zBO(fWg22NpZ^ncu`>= zrUm34?4MZDz$oB_dW3NIRtUP!OPVI+_l&ggrUHTihi6tD#KCeRF?^EZ!iY|=DeT3pgYi|0w z?cxH377j_T%5F z_`8rJ$Eg1Aie5n*G$m%W5und+L!%FET=%Xx5l8^ulB(5CkmbAT#GQH=m+chg`eIHH zcpqB=W^9k(VouxJAM%Ipp`GFZ^z5Yf;AOH!UGpB+YKT(wo|qV(4sCzs)3`kJj`;q9-|`te)T?#>|EeVh@_^zX){!_aXsNc{JL4=3R9kj13Q+|M%?G0SFN|+ z?60k}rGYB@tLT#t?t^<7P7+m4!Fn!gfm}ZqS zH;eUYRJT2V+zr{ImVoFu>yABeptD(nnRRB$nKiiP*5^RLVB5GJ+Mo7w!synnYQTSR zUt0_oicPwD_4F4a*?BPxB-mP6kVMdbn6mU2JP^=e4f!hoF`bH!SNUIxmaPpXfwd-` z1yFW0nSoD&$*Lh=iYI4)@0xq1EZT_J7Vh+`H@IoelfiFEquRW6Nc#Nz(99{Okw)0m zlCMOEL(lH}iE;Y4HK*;&>^_uq>HQyO_cOpCWn7V#E)*%0+Iv;cuk{^R3%oPx?vPK>MjTk4yOB;ao&q(p$@!8wAlid5(=k)B^%t<4ssDra>($x+ zBj)x1cDR`jW0DpNe!VvIT_iL)SK2T#u}+ou4^f^1_3$`$FoE!)82fyjlAmG_{Mm^P zApyON-)4iHv{^I9?749sq68@m`>Uvir@1*C9QImSLZT~zqfx%zN9A@M*jKJ8i!3Rq zNTj4?$+D68E%~d#O5h1Sg!|2K`1A?(0EPBo>M{%&ic5e`T?v&u)S(9mzUJAA;u_og zd}RuR#u>)GfhjeO221O~;sk2?=fiX0k{#VQUwm~DY>ks#(-GSbCSKe$g`J2H!hgX+ ztuEQ(7WPE^s8w{eiH_Ij|Iu)QB?9y_es!}N)UIzu=M-{regSm+Z9oSM^H^gi%l$Y4 zciD;7(3Eo^ohwXE3a#v=fkr|z9AprF04g;yPzi~fS5#Z$WGif+q2Cg-WfykY{CUJj zy`~WEcBWo>;M({0PHt|9q6JTQR){oQwf6y z;M3tf$}sD^z{$|tL2tt&;B5#WY`c!(-)muqp&}QM+ChkYh(($fR^b4%hvdsdLLXjnQEB_dD&RDbG+7I{{piV%aytTX+E zqIO7dxC3F1r(oWZ<2qCsLv7Gkw#Ydibr9H0w{mMnuQ}e2WgF^(dG@*BXtk z6j-0mqcOuY2-2daHLT{>=vs@Wvk89NhMoJWKc-N?>^&x-k^&gm{YAb`LM27AMUdo= zY#4UKUi%PrKw#^xDp>{5*uCA#jL%qKF%O_k)M3%(iL8u>9h9IDOBHXDXOA|cSj-hOUktB0Y zP)Cwv&Y^^xr%lo_V2+yk0DK$)(97La24#M~&4=v1Ymw*|Xs&#Mn!$=~=zrS(Mgyzs zHh9fc?RUwS^-ZIM^hy%E`Ov&>3Mlnw%js*iP&u|Uq!0B4gpMHYv-zw}(@f2@;y21= zI`gRuZD-g?{Dg7>e==j^17*yNhs3j)ct9XXyk#+!uO1A&CDC0zj1^E6lVC4uRyL*SA-$Kp`bq)c1l_`Xby+|fZC#&9^vbI zVW%}D0$K=B7V;bHC?q{N8f4WTknJx<0&X_8u(C_!$McGQE~=JqaZpPmPD$r1^F!88 zd9ZO}pV}00`lVtJGLBcBh=zv&P=jS0x(i@V7H6o5-!ywS-|&+zQAQ}50l=Xt^9{q$ zDfkxf>UxeQ{O1s3!I3TK{*Ehhz2j40to8!0`m|(6*@14yVkzZC3)vB_FCEEo{g*mq za7M$_6O$eBFNV)8w7aLazal-dHicksD(!hksbigOQ3ZlKH`1BS+8Z6ZsQ}g zfj;EBPPvP*rOT2w9wz5-p4C&!nS<6U4gb<_pw~c$ zo9H?IR=m|l<+gPKg50a~Y_LX(zJ)E8pXCKe(88nC;7!Ou=d0I@T?Nr_awcTQrF*D7%)${U%OILoU~EJj4NC4LgZyDatQ zC(ed^Wh+LJNSx!%N}TJ7#CaIB^AX={nOBgw!0VH^(CeN^c^wlCjB~c!LW39a&&8H( zl^@0o%d*>ofK-RY;Y6hzP!I`Ob{HEEuIvn55m)(k9-YtY23+;;Jg4(?9h)LF4d~V* ziJNKMGtMiZI12sY|9Cy>K9wb4}`UYF=9J405K(&5`=tml2B0T*rNgIr8jGX1tthUe>^iQic$a zi~EJGR4fOGLUGDa2x^2S;&`xWNEYhpYt=_-bKGtcH8oa z1Nd|@VLJ@H0GUEA^#|G{0g+M3=rtK}V6@<6X2XIgxu7m37u1A4|3n{iwSjxSeiFRm z_s-z=GI^nK5`}W-GfrF|C2={p7Q7+Ovj$iev<+9kEyr8aa<~CQYom_u*$KV?ym+;p z(h+K4`?L|DQynFO%wB=itb=>4R4(<0gc16u;-&ucx|?zSjC|+3cu}` zeR@Dl<})*NtH0=RF<+K6|DuP-O8G4WU1j}bWs^`d*cK{=={EStlxAqqc~BAVSqk#7 zf=PYDJtcev*a65gR6;%5Cj_RT5^xu$q;xNlgj$-=tGn5gMs-6!doO6M^cI&;j`0@&s#G*J#lK!dBv2-pv(2!iSS zI*2C>V=E7#-V30K4*=%|H#m*GrC}bw7edbCT;tG1n5A>%!m$;}IyI`qNsOeI8;;U~ z{vDc$9j`#U<@n@J&6Zv|KKVm4&XB+3m3e(Y{wRi{oF&fSBhgiAAF2r#}qG(}aLAKaomptA;WGd&HdJujh z#$E#c<=%EYC-4)V0#BTuPf&}(Y)p*D6S^Ce0rD`^3jyO>tH&GA>uOVmL1=3wni@nt zO3TlzKu^&ZBSGFDSg?7yi9xwx&B`HI)qgHG0qU}8a1EG=rZ<=g;S>qy_y1550PJNYhK&!tc_t6(Otcpa&R4-E6AYd)B&zl>c>4IdeCk`_8w`J zOPYEr;B(BXW)6@q=QKG#ahm@}kW9<|+Urogi+bdvuz8Fqce<;S%AMkAZoEq$FnM^nX*_J zP%}%ONS$*uIS4h_UKLJtZwfYOkqp;FoiZ30Vo^?{X72Ejt(mLKDx69iI`};mP6ud_ zuU0q@$^+Ey2~8#=8|4wGeNCm)&MH#RRyuv)V7sr<8IH%$HqLS^mY;6pBzeC9bYEWP z8~j7U%mq+$i*ebpES?Cc2Wu^D>_VIxqBr6Yx{gH=sc+;c=tNMv`2Zgv|I=qww7xf# zs&Z7~f#{NQ9HlSv>gSYX42REjpVdiK&WM6S8LL2z1vDn$Q1qrMr(NyAEdiu)XsIJx zDwIROF$(nINE89OV$ikO2DNrPrzGR5ysb02CeE;d=pz;V7#{c&uK?l;CnAar1SYr= zbrUpubz6s?l8>}?I$F=Eoo$_gHQFJj1LD}}a9sKghIKYHaa5UDnCDya30UA|O(z?_~R`Q?)Zcs2oCGSAI*ia~DEd)Ydr1)A!@% z8mAqfjWy2U@U8x?#u;Mou+-t5owHHt`p%%OEvkDL=cJ$>%y(VStzC3I!@D}Cu>88N zPJ+)DyE@%b&-Y!O!K|lmH)j#*xu=_RN7F_*fsO8yvkq>*G|FlaNAm77A&%WONjY#x8g?tE#?ES2(ql3~&;qmm+3DADa$B zcyMEWP#un`j2Ylm**AZu>IOJ9&ie1*ad(WmVSocy?{v3;&MaOofB9fcOY8CUeM6m_ zZ8!~k;~aB+vJTyjQ*YiX9HX?oT{sY|9dc8(n37x4ch)+#ZS7TekHDhvUbSt6^KH(% zm`>I9qi``*lWVb_+@f}k#D2mS^}|S(QB_Ae&mixIM>;2<w?Nx8jbM~X~j`>bBg6I1SogZur z?AvEJw+Xms-yX?no4$UD)6KSasOQdhssn#=8aPSP|Ji4~^*PQ7hl9J~d_=KX^3lHB#Z?jU&{(Dd|PnRS$BFwxhJl9DDvq|T|l)w30=XUV&A?Gz|3#^B4D2Joeir&i7|a4g8%m7BlqH-#Noj&(_~L zCtEna(De#uloh+k35Vg09!;s$e{;*#TdUpaoFZ4b2{rXf_j&XCupsHItK62(_P2Q8 zSFOHEXZ`9bePws&t8wx15Vh`V_X!@9`|(x^r0LHK8C^R;gOtklD< zb7xz3scWyp<<$4753Y01=f~;F9pOJaGxW+f<=*u(>3vk?4es6ixa?+k&~-PuYl7eE z{Ttnr4k(pW_ul04Sly#HxzG3+C$+r-nrsBt35YN{YP#_&^!gh9Dj~ewr@pw^?a(ia zlm0LLRHJTjw*&R%x4K(7lpo#Z&I|*m-kt6eGR8;mbOXki{_IY-)V5w%|Ngz(21my# z?#A77o9|X5?{*)x-@0A>bhleu^VaRpgpPuN4$#IC?zRLGe@i@*h@^Zh9K(we1>U81 zscq}r;Vk~ZTDND(xBmp|#gS^9@V3r^@DF+T@{hG{#~3s+Xd-dki=15N4z({?%XTot z>)g`nOV(yJ)(VZaL}Ml~yRkdfE9)>~Ywpu+6(8Kz8a4GEw^}#VicO_2y~mwzTW_d6 z_u-Q79ct)$cf8uP0XKbrslMKT>(5uJ$@jY@)>mrZ#j$DroBYa3a9xMB4US8|>jlvY z8Z50rm>=r9``zR0cWzM=A8;%9T=;;ykk5A>aEEn#2Pd`adW1qaGy~2C9&L_p$*>p0 z>Ek-D6JmVEzf!|Cx_^lvcz~sDdJvPM=Y#G%t5IG5AZ~GQRNEhPAFvwJ4G-aJcO^Ht zt?Y-NRd=sgFwccb>^XVriWO(i-V zSfcUKXF?tqP?bEMP;KWG0pLCPD*dqA*4|*LqN(9>_07ZXA3#LwHo2Q{|MrYW+?D)P zxWp+_`yO%o;8X8ExK~+S)RsTE>xvqm;$lc5NJq@egPAt2E=;@KQ@FG!Q5c5Z8^#e_ zBLnjZuO>kt60~bBXu^$X5!n0?v;!Mj$ugK_sN+(^N;svkTD|hEw%Z#g%}*GV4vvD1 z*@!K3FEr4?b}qf)aPuLw28>=KR((5lNH?sT`K3Lo&j)lQO^&G1rVV46TGR@%8VtwcGe zqkN6Zc)o;N>0(@8W$A+;`Rdh2-O6(8agoXhrv_N!z&sW2d=+`jZ6Cj$Cc2`djN?f@ zl-_=ixkGSc;@OY6E5^98U@hV%VYM8`9nN^sn=Fno>$pU6i1;Rc*$n{XdJ#5Gu=G73 zE`|Wdmg8#VAKeA{yg=RNk_O7}o$84{;x_wrYWD7&64mZcZV5Hpet*LK^53f2e{$Pm z(3k(o?TW|!Ox%}#^H1(h#9w;O#o4svEao2 zSWeT~5<}{V(HL|DPlzY*Ak{R>6v@iOgL673M-7t@XX-pF0dA##BS-~IC3Km~+8cT~ zqUB(Oz&6;G3zCucAq^B_@i9n^_wU9=8eV%rtNhbew@t6L@Hd0G2@POnqURRF%hItV ziNGjvmgPSX7N!GTZq*0P(G+tPYK8xLg|vq8D%b!gAH2xAK5__n&Ppv;8{Xk z5DL#NsjYH`@^O%aXV5|G++hag3s7`ug72#o!v)6xE85pS91o{YiQN-V_=tDK19+*% z1JOQSaI3%x5N4{{jwE%&OhgJsQ}OW_7Tlm#l0+?FWl6C>;%E`WHQM3#ImDG? ztY$=P#`b&;cjJ-DO;?nOV^Zh9>_|9qB1tDDa(OmsyTNF;1Wzi-R1WZz%K-Q}o~4ge zd}5g++j=1w;Q@gXfQYFH9~%OPJ`)5$LIffJg~p6tTt`R%Iha%Yg05&QE`DL$q26Np z(v&gKqDK}iSLjY3TVQ)a+Uk=Rv3mK95-+(QSVPrcUvl3Ekw5#g`)x&*#4q+CJj^^_ zP=9;Pot)xDYTS3{NJe!~HdK#2MLmAJ4-14Ju{>Q3LS5UuC)i`^r>MSmMYpkVX(9`)*L&@e{*#eD<0s$O?1BD5u_Z(fJKFzI#o zY%JHdzV6bFarz*;LJfYyJ*xfJ7-L#UK*f5d1kbk%gn%wzic_UIYTX;|>rk35*x}x8 zA&C5&ZiR)F03Ij6kmFqs4g!~|a&11MsOzbx6D}qI5rcnz7X<378MmU&`<<-e* z^0U_J>$lyq3f*hG<^Vn1meH~(2k1jj+rHzLw{OEiY$>bwD3NU$45(BlSVNhVe3VOE zU;BQx! z6B?w4>|mJv2^?B?ydyACGB4fgWC#6{;-?N!3~R#YFdr@fri*1m%tR%Sa9@S&mOwcI zQDc-KRlo^24k<)>fO3a4Aq6JCW{)`kZ3s^CyYwX?ib6yn530$a0TK{sP#fQM3oW4< z-*rnSAO_LRv@t+*T+b)y2Y)eN;+KL(sP;BO*(AhZRu)=@Zl*`|;4zJ0sFFL~o>psh z%uc9M_o&oPw_pEDL13&!Z~vc>oc&*g zRl$4zABh}a+>loC%#8(+ZlU(L*zTwI+|GhNG%?lveRpIPI3Yt{GPW(|4SsR3L5pF| zXWZuSzFRVcS@136^n@t5HDSqIAZ$`BvTGW#uv*0$EpX$;b_#6J>f`s_njsW<#mMPF zibIHdn?8Sra^Iw3Rl&52o~L2bPlLk6v^`%kpW2X<(@C|-%PFu{sG<+trQ{I5{y=kx z=Ra^ePjxBEV`LHdAKk-{6+pI{R>(P#vFGl}k!O@Nn#)bw5M zQs`a?2m0q-P`A@Zb>DQ-N9e< z=VMxSulU5h7-qxbzq)1CQGdi1)|(;5$kDj=akvpz7iaK_lbpos^6go;MtoPMt=eny zrPb`g?f`Y~r|vog(m3Wbw?6ku_&Z?%#3QBZo0?cs?fDFrk1Nv!yIo;9H=AoTmOHV{ z)~D*dzqy0s!;oLE%Bt(&o&Y#^wT=z6u2Mhkg{Zw+ZT}prkZaWTir9X{G1>To+eeN6 z5^CIP)%7cPsda5SH#fG+qL{VR)1|Sp^eumPw?_wE2kP)vtuYo7N>>DwGB4gbZSX?M z3Q(4gNw@w%|I->>Koyn7+NkIL1;fCnYU$o=7@?*f8b&Whw$0goje7Wd7qF%QYpDe| zpWCP59K7HCG#k#rKe|8tzX4~rziBxCe~impL3JBTV{IexhFh8j1gyeJpHm%sHIlRS zvmiM=xm&EI9lORKkmu5idc-zb)_W@1D|QXyZlrs~KD5=t=^J~;R$KN{538<+$9CBl zzpo08h;cLLs3T&t5yI`BBS5^c>V9ZaAKZa0rtW=W!|WX|sQNy!-dH@}*(X-a8q$yU zjkV28FM9uGO)o6m^z{0+U+hn)ePjRFHmtW(17iCTLM^U7Kvinvz}W3RB&VyV2gS~` zzuHM~a9PFR7-MA49~_%)U-F)MX>ja4X1sSuY`gu6rOqE3o0SKxfNS89`Gwx!)MrCu zJ*`hvt6{OOV|6?dOgHLLm`;c`1|82_ft%~KG{*C8_(tP-Q&2r0{2-_vKm9+ny$N^} zMe{$tGn;FAW|IvGxdSr`fei^aB;gR4B;5CXLpVGLh@$9=`pTk$f}-Nth=B0|ltWN- z@eax@D!wnTqNoJrRbEj+QNaWKf2wZ`^{(^@No!l$}vuv1{Bq|Xe}S4WvIA%{`o;#Ph}lHGf1Ng!GI?-->GQ4n0{)6rTcxZLT{T5sCNC>^VHtpCJ! zZ({ve2oV7?rTQ^hhSq(@?-{FQ7HlTYKNMUyO7XtHPyW#lEQ=o>tK~I~%7F{ig&m=V z^Nji=q6ua3k*R7@g8lh%ENzb{ysAR0&u<#1byRMPx zH?3<+sE;5m{0~9X|BiwMUAU2fMDPx72@iOm&a=p5i1i2${SA50(E8+f=<+I zeonJFae}5}Hp9~=YI!&y0BJ)t;O-|olf|E}&~A2jyh$D;JUMI6YuF@^?VJ4eNm^w4 zS*2_{-h5%QmWnt};rdgwH)8%I1lA9ig39}cXJ4j0qon;lCq5+YSXPHY#3qcMq^Da17MLKsiA4{_bBK zPRjX)Lp$exaX9f}IIviI?I#4(%p@_D(9XPcmKQS;aUqonJ`o#HsCGbSun(n^@&v&N zB6|=)p;f98b^_8J#kD*@dDJ6lM>bIxS0e316a`3lKK^(&J#|1!)Z9tIF?&(_MtGM7 z1%bep(hTO(*Pp8vahtq$V}Xh^_p+@>6An`0{zW^;8|3O~e8eo4T(}T+z{Zh2*I*)j z?U3a@%!;`AQJ^y28059T;rGpA`QzY$?74%6nJDUp@3fal-~TY!K)jtJ*Ps9ZPis)n z^X(zwq~h*(e{sn1IdQnY`$}B@P&b}&73&{zx=QwC(wFE#9kV;5C43XePou+(2!~V3 zL_kN+yaXaKblgD$qYEum*k+(v4Pp#_=(Z3aTG7@H-LZtXe6?L5je=Rxb_BWi#}0|y zh(e5vtjgEIDHa5t2+cW>{5$1{h00@l`q1ro@ZOysKu+nNSRb9OlZ_W$%^F>Rt{*rI zy3URoS`=M}BwYg^$=DBcNbsvhw6otw5f+*TZJ&T{A z7qX#R9OYHr^z_{GBPa!F2XgW&X0x>H^CKk9R}?}vJqIB*AI&={TLWRhO2@oQZb@4(Hyw^kr#<(qYgw+6&Xu28R=xkm zeT~{#LMi21mZ8YPp$utPs>4v+xdHaNhhrlAB$e1Ajqoq>6VTm%<0r}IpDc%)%yW2E z9d05y2{9GIvRZB;TZ&+tL!xJKlh8acsk69Ab5!#%cwQ|xAv}OxgeLx*$X#<{#El&m z7hB}H8=uYiBF`Q4l(g-+kA6$8b32trMS|-P2Lf$mRFbJ>3%};N z{R=EC^%tv~1sae%gV?k*_kbS$2QQ+yF<|L6N+^Jx?IvOd)gwwE(UkK?@Ma&~k(?%+}em z8Jz-6L~xO)S*;b$64#KBT+3c)^SaC8r~!#JizrhAR}rPq7@y-Oykq+!;h-5BR4#Kb`N`q@`0W|2+eC9ilU+ zb`@lMTIFh6@_7=-<<+$0tTbTf9AxP&Zg zHNW&m))e7b@4k_Z6kG}%0eWR*S)o-1c2X3plLXKkks~XDF$hVEH=WBGmAcn_igd}< zG9(daV$hOmPs__sT@3;^qY}SWiE42#DqlR8jkq8pmtbHu|0nrFv3JgYgK(=M(65bd zKOr#Z4pNCQdgg@LSM*jRC)9NB&Z zd7%2N)zD26+{0q^0n0QAXMSQH8xV2?zP^aB9c!lHTDqWc9)OsKE&XQndp4v!x-mYH z?xah@QRhH5Q64^Kug3N^_V|&F_IMF;8?qiQL~KAprPl~jqeLiBmbZWuXtPMD0w{z~ zlR_d*k`M&SYkW)oYu$wft4b13Cj(I4(dn?M@Op@$?FML zNBqNjILf*Ry1}SQs|)(o6+eTORyRBra;D+TTPFI_6EaFK`$nrb`q>%%tcQN4+HTxRIJWoa~~X< z%vS&|_OQhAFIIBkq}0Izoh4vvV;s2`Ruik2qP2%OJ76wCcHl)~9}*II^{p(U`TwSy z#@@z8w><&|MAI$gE-X^0la_=xp`TKmKw_Tp#5^5|6wmX?T}h$;CXkAyua*ZyMAzCa zL_(>v1y=N{UPljDjU%{{#(Y7+HPZnNt$Sxlt`{$4Yx+8j=NuLMFG{W$w!7GDYVFQghH?lAad9!h$dhB{*zE{Q zCGud}bL>KTk3_S`;XChOK^)o0=HK7J0#Z}}^F*GY@PLz*Q>C;{(B^KEO|(Sj2y!)m zR~#7|A+uVLE`ktPeTeG$Y66|&`WDm=wN zK#h^tk8-r2`r&W^#|&DIu;T+6GM<7%BN7Gw*?S$U8`*?h`KGSW1;|CKG7EXl_bhb+kgwL} zM1Au^gp-UwT$uye8y3K#^Eu-F7-fK%{cyaAa#B8}g07Yrb|{Gq$pfP50j;ao##8nN9JOK;v z6?e1rj$5Q8L0uMVzDxWzeSnf6tPpkNCi(zX!OyEvKC}fqTL`_tKp40q#Yqkph6wkF zq|AjH6W#bCPC?X#o7~-kF83AlPOJ;{`XizHB9f2Wl&~OEHdG86b!%~vEUGQ4n2Zmw z_6LFUaQuleO_#-aOcM=7dO>02B5hLqxX8dvTJoG`fQm_%U^20aoAKnR9!rb3g-Nb& z!cUFlj6e=8@d3a;SppbtoQYs-jcgNv7&Cwoe#=)Hv>^XlX_z)~X2~=dJOR(jP@P2h${@00BqLx$MQR8us2;EdI;&3ZW)SBw zM-*uy15S@vyYU&lx1zLANfVh=8^W0XEv$~;CF9aB81fFC2IYqL$_4A+Sj(c;Gh*ly#MRgC^6Be_>$I5l|W!ZUlzZ zM=Q_7=0ZYP;Qs8ARZE;AW+C6r^+UH zY3aTgcxmCj5PX_DFQ6gPzvIo;)Ol1p$fSNk$kxpQx-A>zWMH&yYAIbc+fqYr4fu(r zo~m~PEvhD54x<`Z%_4e_^h^gP#SaAPH=+Cgs5i~zkj<=N!auJGfQw@z_>e_J2ETR* zQfC?o#LekiLW#1}w7|iTRD4=iimN2?f+3*eR)MKu;t;24q%{hxWF*Es+8jma+~GSK z@2+j~i79JpcAY`c!Ov0ni7=${T(+D*+k{&;#0+E;k(`=RB&Vh@Td4U6i4sU3MnZvk z5eWt9u-(Ois&S|jHT9vPiqdq@U?l!gEf}N>KGdB`AU_%oq>r&kSVbkVqLO$LEGS5n z=(jpubRAkh0&RJ$rc`-TIuj5YWwO3BAWE1X7)`;VV4b9ah%upoF4X&2v@5v`E`p?r z={`sYm@>T{5xa_e*a9wX%k)%2MHMdSfiZRRr&I>Unrg_zbDaCZ!Ax+TSV|v{bb<#J zojLZqXMQeCe1g{ z!kP?-PodAFFc%`TMq+~~+SVM=)2Gub4nm3JaZSxp;)(enx7d-reXzx#MvBH@TBK|8 z1{Lha5Gv}4tw9A#8_;w(g#%N~;RwP&zh{eej7%)q0d>9E<5n=mOfbbXVv4b5X)lV^ zfJq-tQ#}kNdd`MC*dQ=WIu6qnp~Hmtyb7I{bX`P*7-o(@Hfm)w84&=OktDK?pq8gX zEuL!j>g`j}p(%)k3CUNkLNwSqOi$pHm|d6U z3SJ0wAU1}tb$B5#hL|3{MldsUUaprytR=-|ZN%qN-4{abdhQD?`<|-)mUQ>*7DD)p< zIG9YA-2nxr0>qflsS*>QnMedG5$^^9PLP@fAkz7y*#5qd2iP;hEU|IRb_|M_n7yfc zKqJaP3`?)^_C91>`i=t>aOi-3UO5i&dora#{71Q>TRb)Y$5uVWOTwe$2JBc=ExIO|kt zH4%k^Vhk$kj1`>*?O}Nv7BHYVJ6#j#Nd1qzqwCcF$UC|oA59VHId$Lpj?)960n^A9 zE2dz~BPd}6k^r_QGz{<_sPQ7o$%qi}7kGi5>C{D{ZjuaQN%jJ*Tsd6~Y?3+A90MDy z2a`UY9^>$bh9{WiSDPi3zz_cpm>ndO>)zJ~ZavZ$M-`U<5%815A<0U~qSgWK8D>Z5 zhRJ$+TSQU85>qFpihKiRxiM7)cNdISBfq2xW?YBRNVyP*Q*~ZDUDyR|QoLQeF^nD` zk!m2dL;R4MuLCMqMRd}mbQ;Q^KvomVf36){D2u^L1dGAGGrYEsKf)R}_>SMG z_LyQ11+{=N!|fFH#Y47D$fRzEB5BYOWt!{*@_ETTe-vY)y$GT9h;q<<{FjhL;D~~G z$MYzdF+FP(ivU0>YXSnoCDyUZq1EVpFlUP=qSX?Ql$%hfLD~Qn7;vBs%AF-#^$B!= zsg#x+xUSNJG+6>0Z}ljvkKJ0XT+ix<&JV^QwlT$JO|-Rvw&vB^f90-Y#Lgwmz%otF zl7N_)p?P9t4#d2rH{r@B>@f=y3QW5TRWjyvl834lbS}z`iGuNw?d=Qcx8z<;`l;!ztZVZSBfXIy!0)~TX=j@h{0i-TeM0`Ry z##)SX{2FL`7`=5WLvzB8Oo@>eYBx%ydJ15Ad!Z5BdjKFfc4V;b3)_($n4W7!?pDk% zd7Q1{-+s>02B`M=?8f5I78tMS#aTEbF<9|qmWBNcScxN~$cy!aU-bkV(i^5C51ERf zrki<1IM?f?*lA?sGeOCuyo0vIHjyN5hyIWb=!3$6kT}WcF-`7!l1=^}w*r)-Zw)SF?V@rb@dBX3IYq6b_C4{wjxY}wdhW~ z24EkIx7tCUJ=eA z02gqoQ#WBY5T~Hv&IKU=F2IQ8z`t&0v{k=9!mR>>f-KMlO8k+hS&H&8zox+GgQMHk z1x9)nh5MwV;^eWCU?S880;S>n6Ga*OuD~#ntzMx)w{+WuMyseO4xDdW%kr8#n<+Hg z#G;(d6q;vxbv9G5Jc`W}p0TEahKysGD{(4N68L zF})Upb|$`}iJj0S?2UAgO=Nd&dv;%F8M4UrXqOj~r+pL>&X@u*fvypGFT=+;>2b6ek7U zaHW}5AuSZtG7P?)yrB@@2y=iX@r2oSTay3 zQD7OxM+>2PE0*Eb^6 zJ#>3bc<@)+8l_$>XOa;!?1b>h_3X-+*3P-i&9{5$36PVFUkZzW1ne53hICd-VIp<1a=L0=qzgA)}bOknF9C!bn# ze>Q8R{(Kw%rU@(5X=~H{IwPC4BnG!Un;oOREXrY@#K|iuc$fC90lz($QJAo$xia6b zTy}&;h(3432>E{+vQ2UF+BX*%9`oh{Zd_ld=}jA|g6?efKT#MAEn#e9y% zaO#^k46w#=8*T$8CAzgFkn8oFfNXV5fZ6f12qfF5_=x~(L$GYzh!w>FmL7XAuV}<9 z_0fgAx{L+++D42H5Q>3+(Fi`T@ABBj?5Oe!|F$us#Ud#Wxi{R++vKqkh1m0HWB`E< z-9->JO5I=B^U_Qla<_$|0(X1+t~>bVJQnzqA)U-)k7G!@32U#sz~64d8mMa)6X1)` zr^Zd$70zoua7PSsS5tP0`k2C723dXFUeZ0t+C{-4$X5q(D%%Nmv?s{2F8cj}- zdV)}ADQ%Y7Cm=q*$!{xQt^Nca`wQ5PoZWS?;EgCOc!|GI$mU@EYuTJtDeAKe`Fkw{ ztityqprLGHOqhk|g79268D(u#Fd z>kgbC!sCC`k_;KRHx_HyK85dX!)B(*$jRr7c~D!{I*Q(i2c+{i+cHb}DE#lXY^dT8 zdVmjX#B_e=>evpbljMJ)YKvhOVdqOIXq7PFBKDAIUM2}^PD>bGLn zz5B_<0;}OWOkAV-PVttB1)lbS;Td^{NWo1anvs6NLxuujcvT4t#{G``cD5i=oa=>O z{jVjp#8%XSHOP2W*4Pj=*15Gw@~J2yr}C-1x`W^^B9vEQCzjp(4WMxlXa4CR4$v(K zyhbRVuVtEf;rP zMAc&eCeQ)}GB5R3`op5JB{2C@qYD))fe-G}Q>hIHd;YF-x?b{6(LC|@K zuf2!`mAm==i`e+=Qkoi|5VY!MggL@mMO+Z4r2BSZ4NDlRk_yIGk2>z;a?Sh9eZ~BI zB{n2;)uehk5r>wI{&zrdXx$N9*Ab_uUC8Qwj`X@IX}#2{4+L-Cv{^9x$i&foXeA4eaGz{y1L_0 z-mV+lh@RDQ;tZQjRqo_B+R%gUJomTKS1r zLK0D5xs9(V7yNyHIh&q!XvtO@UNVN)NVlJrZ_V)*;G?^c6FeT8%*&Fl3Y?a`jl6PDMtE(z^?v2tO*2> z;y$dL6y6*A2pA~4V^aC9J}esw?~y*N5w877=*xydMj79i72vU`FDu03g}xBOck*L> zS!X#Ti}_G28{N3nE1wG|UKTw2d#95Qxz5kzXMwL{b` z9im38JP`GoduhJRLVkTeX2rCEYZ8C9A8Y(4OV!DK>|sDoNMzOhG1`{=I3{6J9Y zPJZh^)*6p31KG|{M-$QM`unosJKYIC5sRv`-3orp$#}uNT+k!n&8%8oVL9t&r(3q2 zVwKw2R+(MTDz_V1-QgM411m{S+qB3M`T&%`-Vg};*j}qIR6{s4_kut39QZSLv!p-s zmJl48FM~rfJe`NOuq)uwye5SG-BH#EyD9|tfUy6Tq@2+A&rIz%YpxB%VHmJvKO14}K4~aR1Iw5*6v`6O#OuRY zS73>tnv~&!CRz?>FJ@qQr*L~QriPUQO9;>c?vu9Xg%PZiQUZrYFPzx039t*UOfUwM z9kh{S$jl`+ErM-{FYq;TZ_ml)SC3@F5v9&`VZ+S}@J6K5BDgV`Qpu@J__4hPtXe&a z{Src;J6gdSm_hQ9YCt|x_&pmj*vLmJPx?sZ&xN_MnedVFt;VMU=_4f#)yUs?hM5P> zp9^OIoSM%A6Q>biJv0$LFApQ3ER}&4G@_-j#CyyZxFmt1H*#|fD;!6yBdT0e>HUPc zOffrSQ?wI|knj)yKg9d=K%vYk%Xq$ZA}h)3Y^Dh7O-pm03?)5JFM9MU|@qUWmfTM+HW3%#Rtla*lwP$n62yVH_JENpaaQ_%wO<+0iaf2 z%KE}acJfk|pGNXQk-7``;V93rzJTkuxr|-XrGXG<#jX`8@Mf-vcjl#=MVCXdcWxFX z9p5QSy2@j!+_lQ(?_Y+M;}rkxGPcSub#z)w!RNft&Yzve^8UN(eR3LGQ7oPYmI~LR0sdeM}s2UI*k$SXZRa6a5FSl&qzrVwt2%%e) zg(9m*I_Ov%U)c~<%&C6=rl{(@vh3pLqSBnQD>g-ybvnIkv&?s|BBMsN^Yk_w(c&Q{N;ToJ zZK7f!7%$_;Uu4silYI0`aQxoRuYC!IukC!@OY9TnrSR=9vtCNhD|L%+jw-&6if8b+ zSJ?ur{fl2kANTQBUS%Ef+B+2 z?9m&KSf2kj0uX-9r@zfE%eu7+@#M*20H%MiGY^8?D;Bu3J&*5u3w?-vhuLi|oGB7) z--FVE(&Z1Hxd&F^U3}#pM10uI!+T(AMX3Fc_rO$#=g)iCOKEPcB%9Q>&Ue2B)7k~T z4cg0kQ~8JYvP?#N#cA!ey{sXnAKJ^B<~ou4Rj1yjQG=>dc;{QR9{=qgfky85BSSmu z9s!U3Fu!dZYpR|;#W!waO){4Jf_+D<`2oe=jZ4_z%V2wF+tq9Nx7#q<6E|^vJIhU5 zvhfW!S5aRWCq$+tyvuf$)APhF+dN39iI+Td-hA=8$B_(|$k%zQ{95I_5=Vg!yHUOt z6MtF09s1P!{LSrbO`L$j!tkseEK4=OPzh1@1I!IM-v!lRF|Xdmy2fojMJ7=myPI`a zm;c23?S`Fo^G_n}*4@y`w*AES?q*$*j)*igCvR`ybKYT%3gjWv3~~F9plo@@)MMfg zGA4y##~Eo*F_&1-^c;)wly`C9nZ>483VC{VAzrajx7!S-M^8tP#+cAF!qX%*vcdw7a=#rPA2SQ6x0;? zaP=bXCjmi~8Td!yr-GXz0y>>#z;W|LQ?VGCrG!aJWW$!FLMP%XDgna;84Z`ZS3^sw zfDOUZKLxq43oDZF1Fg`gMW6SHF`=DG?CyBPwxGw<#kQahbqClSdu@m|N8!H~V^O?z z(p7xu1>ItS&KgcXXJX6KJ3HVZdkJnfL6;G#+)v#_Joie3r%%A)A1ZDdXeq(+c)OXn zSc5cr+OJ33Q60l{(BNU2RM44DXr6eGQ5k@QA+#`Ocm{Se57Oj|W3Ps^+6h6EdItuZ z!0-7`YY}p8kr75c_+k=h#DtI?^JNa!oao0bZ%D#zw9ZGI?TF5aQ(*!JsK;cuBb>s9 zExqChf-`sMC3cVn^2qOUAJ+`gek&Ztfjs%%)37PiT%p&rgM<>8BC)wG0%M?O7&gG= z#5N{Po$f6ZRf!7>A*u^XIf~6>ak-?sVH`_)*;I+7A(V8=(Ip?$2yHe4#Yxk_ws>r0 zrx^)?8jCNqXWLTR)LP)YpO z`J@_cI84G+5nY^xx`=r=Bo6XELbP!DRT4UgENHuGKN0D?*C=Tpe&R)pzQ& zfCqDi{!k8@H4)$p4~l4R;*Oq#0Ew)E1K?gI3;|me2=^|wVSw-WCVZ%d&^N@V#=A+H zvUs;saWn6=T4socQO!G4RU* zBl6P2D}15E@k>Nr7w*Qy9tl1^w*lPRO)Q5xDqW4J=@IfL+V%n*)OMu3NaT97FNj-q z%18Pn-P#CdM~+1bl2H-nL#!4G-Sg_@MSs%@>y8a^*UuUosh7^!pvh4qe_?DeX1!d! z)dOojtOf!h75`@71pIHkm=BSJISJ@NHRSQ9VcziRNHnDp5__V{AnW;Z5+<000s$S< z3%b5A9uT8<@E}g&0X)CE7XvzEJHkf?5%94NB2ea3F-r-^Bz^%?`6Jh9X(2D*rDHyT zb{LJBK;GmEatSB{Jqcd442ikH$yd1+;(_Ic8l{#A7veEhE-plnttTNCA*zcDRI@|{ z@)iRsOs2LY?NLY3ka(vSoKDfz%;I#Izy%OR9bCZHGnwq_f`HJ^88W~BIxR0$cZ{gR z9V2!2FOE@MB1&-5Oj_D8Vu=UvG<1U2%6Ir8dgQKP1W!WPprX}9rH2qffFFJmDv77T z8tVGn$^=*nJOHdHA#y-OanJpL_rQzWi{Q8_p`E=>B{nR}(X4^z)Gpj4T+zbaiJHMr zOj1-@JYU;df2j}#P6Ka9J|L8Z zc);IXpw*9)!a(>dOtlg`MD*+x7GJNuABBkHfZ-l+f06~uU!(GyZjNo#+iQR9q`To) zYutQZ`-uC~DS}##Qc{4t%IHD>!T!l`SMwSI=V_VoHS}`yHNNRK#4kVn8XvY$+Yo=4 z67ixf(!P)Tj9wOU<#w%?vM}7|c5SMne9oV_L+cGi@aH=a7<@Y)zZjbN_V5#nwKMVY z0Ezycrtn$AVlw&G`!y^6kZJriWmh>MW=@l%Y7ps`;c}e zitc?#E6_1aTE|VrzkzRBrZvUqX3Ml(JidDvf#47E8_>@Aa(yUsom!^#aq2=h1})d} zQ#OjL8sku};FqX+BVW8+3!b;?zfj0&>7UEt?TEd_6+p|KykLdaw57BhL6rjvVMo5k z5sdMMG$1|+qx*#DcY+i%e$xsq1Cz3B1x9ume|v>?U7IRk0V(wY6@LIqI-=?c{1ml{ zYsE!{j-<-xtkj0L{=A--JaBc=#j6$JeMH#&ff8RP1BV@+FTWl>Ez&Xw6XOi$}Cua$ngjcJN&r>*meE_rOa=hIO0y ztyRFcHTrtDEvNfA4Ya8s%c%^9k+t=EA91@M-YN z=pDRTqb#u7@iz$n{)Bc3T$lO9tAL7|`NONU#{tK#tF`YF?@RJ3A@AH|0>lZ0*SxD` zXPnC#g2WlV=U1)KM&nAhh?Br#FIma>r?m{`>J|3=JcRe;|0q}kgf0S*lYr0H zJS`k%e|uW%-|UfaHOV{TdPRzMjU{3Z$qjI7sf3>kiAi99iMRxb-@I1q9eN8JrwDyD zM_lohMyJ>k5Yzx!#D!>x9x@xA8y-5xU;F2UU_z@;s_8M4=zcLYghhx#CeZ0rTuX+A zWGx6_A?_EWcnA~(2RgL^VIMCH4f)Le^=9Mb0P#cEH55z4%}KCppmO3GE^JYW#Swstf;s@7>TOv}|Lk2#CoX|~_KoW%|QEfO- zQ9UAcK3sp~&U6xuk&F}`6@#N)Bp6QmVl~EtPH!dwWL_K$m6|1qcithEhn9LFBqWJt zA8(?+@t|P4+KWxoxbFP*_3*df&i}Dq>k$H-V-sIQ7lyNuSjlljE~p}cM^H8Wt7%Z6 z;#MZ10fIBYhZtn5KsSOV0HIF=RpNgNa70B4v8jniD;kYMu);iqn>d~Q#W+kukqW$` z&!o{q3514@Lh}?WnX=IzjdHrY+|r=YViw720&5at^ij|wnrUphW5XDsROp^S%(z0e zAf!4x9U25uarqNM9#KJ>A_}UMN{R^id!+*K7^|6f2_1C8Nn<*)m?nY>VkAIFGCrYp z6VsV&8f3FTmr%!i0qtZGglNL*Bk)TNWXvQ|Q5~4jyeVE>&V#}qhLvy@X`B=Yj2oAUaQUQuN^Ky-rnM`ZY3Oj5PlJp=+(A@z`EhBV4SKj}VGA;Xd6Tn%>w6W>~iIe~s%`^m)p zvG{_m;(jL4pIT0Ji2E}!Q+72>72qoxJpU*nIfxwc2jYU5aV8_wt;F4a&uU49;D{as z=kZv{LP`{2_u%YerIv=kf4qp(qgv^>d(+CWSMtZ6)fzRRnthd)S^C32o_~1fhNW9t zSr#s#wE}4M2M_=JS@j^UJJIq7!gW*HqaDifESAxYRb2CqjV5HHVEfhhNqm1QQlx>Y0{9^&NzyL(VXb-T?26ja zT*!(r7w4_Vhe%4)SwdOweY&w_CBd0v1xcrQN_BXbvJS41b^=fwF9P z8m-3aVjp{eZ`iDL4$0DiR#6f{1tN*jtqu5uaQ6vjD_2#cnk$NdVk$vi3=MuCbh%@) zAEYntBBpvUaDlyaErO_@zGLaK5$_cuI4ZGPgOW;Pt=9aK=e3Lw9HZJ2Wwf)}89BPy z9kUl0X!ay7G?4CN~;h+^I9XL`(@v~Cr5_obK$oG`#$2Eh%(8bn{HY_Zu} ztXqQ+qQEL4KHr08vIo8P09+7T01H>&$`D+y6d+j&0Or8QDkJJHFH(o$QC6f5!lWGE z`_SjBHaxVY6@dUlgBFW%3Nn_ox(@*RMWKQC1LZVQIeI4>CMg<_Vv2xLL(DNDM9~;c zB#k&Dy|d}ZklwyBd>IX^IuaGr1ExK6y*c*QKx=axynM>c)~k_id@o-aMm2;+H4OPD z%!YhRAwP7Au|T)qBIHL5Xp+X}&FJN`(f`Q=x2fjjspjPpa8rE-*;)v2Q;Ge>0&w+p z%7Pq~CYC-A)m~{$M(ImY8jp+3G6!;H_&sw*rFliAbqRhV+r{YMv`XtzbBZ~c&)TBp zL(qS3o0dDIHeVUWPjz1@hF^x^UyNa1)&tRjFLQ@qCWc=|=@>1BpNZj5wSwjlyK7%x zp+Pb;XD@158Asjg(l%6s#sdH~kTKQ&AKv*zT)eiE=f0#}5hU^iS)$=6sSA5*2to!Q zX|tu-dY&LszWF81%%hyNocO;~CD{kn3dv_%wO2iGbVLhN`7bYN`JoCkA0BD{opInZ z5zGI|HXtGq+vud57v@wWFT|=aOaHf4MHIaXe)46lxq5s(54@ta>xH_4SUEKyy^!_J zSx8Nb_=AuXf@(L*1_Kc(rX77_dpTeJiWclg&<%(U9+iYf%$I2wsoe}*ifhwq>@jU( zfJJ7SWPruB3{Vcq(Gp5^?5Tn z6d?gbzoclpO$`)dBTj!!D+(cJF=A#k2oxh^6(T2ri4)sSmab}f#cEWQSjf#L$cj7= zD9ujA9&lB&X>=ZALICANHA{+QUB%QrQiXu%l|5-(#U{Yr8T3uY z4-6L!o0iUV1SoKO0Vt7!?yNS=i$p)|YX19cTFcP8kTR`un&S>qT)Cw*e?EdElk{no z>)Fbd-|@m-2g5&L#RPEZl!KfB`d`R?wd+X& z))OW>McD?4nZmDg78C&X&sQDTAtiqh_ki2Y!5>b&uH{az)wZK`a3?EW!fv;gf;HyH z59^$*InQWrV>nr$1_A(B4(PIFhYu110b&w23{`8UU#=@oDpnW%Otsc11Vn@=K>wA1 z!jS*}N4f7jVqZu|i0Cw0u9f`aSBoW2Y$r1kharQ;k+MQ^s96q`rJVE{A!5?W+A><| zPy>mkCY`JWs2T>!>C_B}yt!uv;ZwP-*edXRFrA7SOv#sb^aK?edPShjDo1(zoGKM) zyqlir<&dA;s^#^&EFhNuA>?jeELL$T_=0(q0Q??#L|%rwjuGLmhnOCaAnmcD{yIxE ze`%YR9jcQg*EYFolkyCtvk))Jgq;#EjzA?V zVj&*@8$pP0{`(tR+5`wLK1eK}Wsof_6NF3@u{$P`MB17dFNM?c zkYxly41PGB97zLLtRZ;(p9ebfd;^7e@}~pE$_!6otetMhMDX|Xtr*M0_)@%?&9g=a*0yS!gBnePUF~pCl zWS9Z)Ty7iIOw?;#LEyO(xh9)a2s})Ro)`m22`e520viH6BvPVhpbYDU0aHO2zHWzh zacGD=Zyp(bP-ijdOq9X$AoAMERpeVJi^1S70zOfJdGlhZNDPX^)NRIAuOfe`s3I;+ zdqK%w^a27SNDxF#f%i&6WUE4JMIH$BPWNy}9q@TNNV(Wb6>Ir$2oi#|pk$>TPv)vr z5Lo~Za`nexX9qyB_!|O>@sQ<4oDXVT}n<%*kSt zLWK}r3*<5ZWMqzaGD{$Xbe((=*p>;{B4?bNQ@|EEOI?`4&)&i(QQL?#m&QO_Gqc0a>Vl^IS74}9|XYA zC#P)LblXe#1ZY|`DnC>7sFbr#u zY@-YvBqE>|8pMLFqkFxf6GF~%1_Rua7F#BE5VtWJ@D0b+^pvE&)Pz7hMPv;s;H*2LYs$u|Cu83{`6pEdu4m z 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 F{{n1K4%q+z diff --git a/srml/example/src/lib.rs b/srml/example/src/lib.rs index 81a4a7a4ef..8b5347d1a2 100644 --- a/srml/example/src/lib.rs +++ b/srml/example/src/lib.rs @@ -214,6 +214,15 @@ decl_module! { // We just kill our dummy storage item. >::kill(); } + + // A runtime code run after every block and have access to extended set of APIs. + // + // For instance you can generate extrinsics for the upcoming produced block. + fn offchain_worker(_n: T::BlockNumber) { + // We don't do anything here. + // but we could dispatch extrinsic (transaction/inherent) using + // runtime_io::submit_extrinsic + } } } diff --git a/srml/executive/src/lib.rs b/srml/executive/src/lib.rs index f2073ff738..0fe4b9e33d 100644 --- a/srml/executive/src/lib.rs +++ b/srml/executive/src/lib.rs @@ -23,7 +23,7 @@ use rstd::marker::PhantomData; use rstd::result; use primitives::traits::{ self, Header, Zero, One, Checkable, Applyable, CheckEqual, OnFinalise, - OnInitialise, Hash, As, Digest, NumberFor, Block as BlockT + OnInitialise, Hash, As, Digest, NumberFor, Block as BlockT, OffchainWorker }; use srml_support::{Dispatchable, traits::MakePayment}; use parity_codec::{Codec, Encode}; @@ -65,7 +65,7 @@ impl< Block: traits::Block, Context: Default, Payment: MakePayment, - AllModules: OnInitialise + OnFinalise, + AllModules: OnInitialise + OnFinalise + OffchainWorker, > ExecuteBlock for Executive where Block::Extrinsic: Checkable + Codec, >::Checked: Applyable, @@ -73,11 +73,11 @@ impl< <<>::Checked as Applyable>::Call as Dispatchable>::Origin: From> { fn execute_block(block: Block) { - Self::execute_block(block); + Executive::::execute_block(block); } fn execute_extrinsics_without_checks(block_number: NumberFor, extrinsics: Vec) { - Self::execute_extrinsics_without_checks(block_number, extrinsics); + Executive::::execute_extrinsics_without_checks(block_number, extrinsics); } } @@ -86,7 +86,7 @@ impl< Block: traits::Block, Context: Default, Payment: MakePayment, - AllModules: OnInitialise + OnFinalise, + AllModules: OnInitialise + OnFinalise + OffchainWorker, > Executive where Block::Extrinsic: Checkable + Codec, >::Checked: Applyable, @@ -319,6 +319,11 @@ impl< }) } } + + /// Start an offchain worker and generate extrinsics. + pub fn offchain_worker(n: System::BlockNumber) { + >::generate_extrinsics(n) + } } #[cfg(test)] diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index c6151d2390..10ef979b61 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -117,6 +117,7 @@ macro_rules! decl_module { {} {} {} + {} [] $($t)* ); @@ -135,6 +136,7 @@ macro_rules! decl_module { {} {} {} + {} [] $($t)* ); @@ -147,6 +149,7 @@ macro_rules! decl_module { {} { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } + { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* $vis:vis fn deposit_event $(<$dpeg:ident $(, $dpeg_instance:ident)?>)* () = default; @@ -159,6 +162,7 @@ macro_rules! decl_module { { $vis fn deposit_event $(<$dpeg $(, $dpeg_instance)?>)* () = default; } { $( $on_initialise )* } { $( $on_finalise )* } + { $( $offchain )* } [ $($t)* ] $($rest)* ); @@ -170,6 +174,7 @@ macro_rules! decl_module { {} { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } + { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* $vis:vis fn deposit_event $(<$dpeg:ident $(, $dpeg_instance:ident)?>)* ( @@ -184,6 +189,7 @@ macro_rules! decl_module { { $vis fn deposit_event $(<$dpeg $(, $dpeg_instance)?>)* ($( $param_name: $param ),* ) { $( $impl )* } } { $( $on_initialise )* } { $( $on_finalise )* } + { $( $offchain )* } [ $($t)* ] $($rest)* ); @@ -195,6 +201,7 @@ macro_rules! decl_module { { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } {} + { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* fn on_finalise($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } @@ -207,6 +214,7 @@ macro_rules! decl_module { { $( $deposit_event )* } { $( $on_initialise )* } { fn on_finalise( $( $param_name : $param ),* ) { $( $impl )* } } + { $( $offchain )* } [ $($t)* ] $($rest)* ); @@ -218,6 +226,7 @@ macro_rules! decl_module { { $( $deposit_event:tt )* } {} { $( $on_finalise:tt )* } + { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* fn on_initialise($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } @@ -230,6 +239,32 @@ macro_rules! decl_module { { $( $deposit_event )* } { fn on_initialise( $( $param_name : $param ),* ) { $( $impl )* } } { $( $on_finalise )* } + { $( $offchain )* } + [ $($t)* ] + $($rest)* + ); + }; + (@normalize + $(#[$attr:meta])* + pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> + for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident + { $( $deposit_event:tt )* } + { $( $on_initialise:tt )* } + { $( $on_finalise:tt )* } + { } + [ $($t:tt)* ] + $(#[doc = $doc_attr:tt])* + fn offchain_worker($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } + $($rest:tt)* + ) => { + decl_module!(@normalize + $(#[$attr])* + pub struct $mod_type<$trait_instance: $trait_name> + for enum $call_type where origin: $origin_type, system = $system + { $( $deposit_event )* } + { $( $on_initialise )* } + { $( $on_finalise )* } + { fn offchain_worker( $( $param_name : $param ),* ) { $( $impl )* } } [ $($t)* ] $($rest)* ); @@ -241,6 +276,7 @@ macro_rules! decl_module { { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } + { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* $fn_vis:vis fn $fn_name:ident( @@ -255,6 +291,7 @@ macro_rules! decl_module { { $( $deposit_event )* } { $( $on_initialise )* } { $( $on_finalise )* } + { $( $offchain )* } [ $($t)* $(#[doc = $doc_attr])* @@ -273,6 +310,7 @@ macro_rules! decl_module { { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } + { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* $fn_vis:vis fn $fn_name:ident( @@ -293,6 +331,7 @@ macro_rules! decl_module { { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } + { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* $fn_vis:vis fn $fn_name:ident( @@ -313,6 +352,7 @@ macro_rules! decl_module { { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } + { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* $fn_vis:vis fn $fn_name:ident( @@ -327,6 +367,7 @@ macro_rules! decl_module { { $( $deposit_event )* } { $( $on_initialise )* } { $( $on_finalise )* } + { $( $offchain )* } [ $($t)* $(#[doc = $doc_attr])* @@ -345,6 +386,7 @@ macro_rules! decl_module { { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } + { $( $offchain:tt )* } [ $($t:tt)* ] ) => { decl_module!(@imp @@ -356,6 +398,7 @@ macro_rules! decl_module { { $( $deposit_event )* } { $( $on_initialise )* } { $( $on_finalise )* } + { $( $offchain )* } ); }; @@ -477,6 +520,39 @@ macro_rules! decl_module { } }; + (@impl_offchain + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; + fn offchain_worker() { $( $impl:tt )* } + ) => { + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> + $crate::runtime_primitives::traits::OffchainWorker<$trait_instance::BlockNumber> + for $module<$trait_instance$(, $instance)?> + { + fn generate_extrinsics(_block_number_not_used: $trait_instance::BlockNumber) { $( $impl )* } + } + }; + + (@impl_offchain + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; + fn offchain_worker($param:ident : $param_ty:ty) { $( $impl:tt )* } + ) => { + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> + $crate::runtime_primitives::traits::OffchainWorker<$trait_instance::BlockNumber> + for $module<$trait_instance$(, $instance)?> + { + fn generate_extrinsics($param: $param_ty) { $( $impl )* } + } + }; + + (@impl_offchain + $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; + ) => { + impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> + $crate::runtime_primitives::traits::OffchainWorker<$trait_instance::BlockNumber> + for $module<$trait_instance$(, $instance)?> + {} + }; + (@impl_function $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; $origin_ty:ty; @@ -556,6 +632,7 @@ macro_rules! decl_module { { $( $deposit_event:tt )* } { $( $on_initialise:tt )* } { $( $on_finalise:tt )* } + { $( $offchain:tt )* } ) => { // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. #[derive(Clone, Copy, PartialEq, Eq)] @@ -584,6 +661,12 @@ macro_rules! decl_module { $( $on_finalise )* } + decl_module! { + @impl_offchain + $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; + $( $offchain )* + } + decl_module! { @impl_deposit_event $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; @@ -1086,6 +1169,7 @@ mod tests { fn on_initialise(n: T::BlockNumber) { if n.into() == 42 { panic!("on_initialise") } } fn on_finalise(n: T::BlockNumber) { if n.into() == 42 { panic!("on_finalise") } } + fn offchain_worker() {} } } diff --git a/srml/system/src/lib.rs b/srml/system/src/lib.rs index c1a5ff9d9a..62bdc5156a 100644 --- a/srml/system/src/lib.rs +++ b/srml/system/src/lib.rs @@ -124,8 +124,8 @@ pub struct EventRecord { pub event: E, } -/// Event for the system module. decl_event!( + /// Event for the system module. pub enum Event { /// An extrinsic completed successfully. ExtrinsicSuccess, diff --git a/srml/timestamp/Cargo.toml b/srml/timestamp/Cargo.toml index 413c487214..30c3779f31 100644 --- a/srml/timestamp/Cargo.toml +++ b/srml/timestamp/Cargo.toml @@ -21,11 +21,11 @@ substrate-primitives = { path = "../../core/primitives" } [features] default = ["std"] std = [ + "inherents/std", + "parity-codec/std", "rstd/std", - "srml-support/std", "runtime_primitives/std", + "srml-support/std", "serde", - "parity-codec/std", "system/std", - "inherents/std", ] -- GitLab From c7b73a1a575e9d68ade62c9391c645f3fb75e553 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Mon, 25 Mar 2019 23:39:23 +0000 Subject: [PATCH 085/120] srml: consensus: kill storage (#2098) * srml: consensus: kill storage items * srml: consensus: add test for set and kill storage * runtime: bump spec_version update wasm blobs --- .../substrate_test_runtime.compact.wasm | Bin 59673 -> 59746 bytes node/runtime/src/lib.rs | 4 +-- .../release/node_runtime.compact.wasm | Bin 924466 -> 929335 bytes srml/consensus/src/lib.rs | 8 ++++++ srml/consensus/src/tests.rs | 25 ++++++++++++++++++ 5 files changed, 35 insertions(+), 2 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index a7de97ffb9e649e474fabdee7525fa30f3df5715..e1ba92f3b9bfbdd61364c6438a81bae915c6a37e 100644 GIT binary patch delta 9668 zcma)C33yc1*}lunWSN=dPRL{-klaaPNJvO#pF0R4H-PL*kj*vDatDZ6APGn-l3=N2 z5k-z#7euI4QBl!R>ux~X`nMI(x}X+BYnA?O|DwNb>0@jAe)ryi6m6f1bI!TvoO{l< zzTbCF?(J`gAH5;&f0>^lin;j5Sw*{D6nTfhbD}dVD@zo`ygV^a%o6RQH80PeCtC9I z_`ED?8vohz@-f4jYvppYc&n7n9709T$(x2a`v9k&WI%#K!WlI(=%6(#sI5(|W?KVE2O|dsR zq)La=B4?@Dl8a+E+N;=hyNf+;KZM~8j!}F;dY9uxfgh2+EPtx#D8yvmk!P2)Bq{w! z!IJ{-W=Z$|qg+~4SK+qHyn2M|@bGfBx__XfGTX`7?ed7JPEK}6ZnnFqI9kNnWt*HM zQJsTjP)o)5m7IMxiNPi+529$EQz}ZIDtd{ZOs`pF8@*=ZWKNoEcXH}In};~HQku<~ zoo)8FEut{Mug@E(;y}=ql|nTq3u<7%vLMYjD4EA5m8tw`wxMiH@g|s>`Y6Jz{qZFNj9FjkKbktoSAQuE=83ZgH{aeVk zwY&~xXZdK9Tgs=S{H5OW_wtG&oxCB-aPnv+f5i{V^JSq{;HEmWskT&F)PdPfNN=js zCR?O}^yd|aMScW3ShYKdML1O)&ykS!i~3r!&0}#`AR5di9g&zUrar8sxAd*ml~(>k z_Do$5%DS;NxuhFT9pt4VcG1|S<;S-SaUD$@cRrT2sOvkR&Yc6DvaLhq`_<#@@YpW? zIGb3nO2a0S0qslQP(Owj7dsv7SYs)By`hX>%>K~u2){VJb6hizhxZ%HC5eR3fj=rN zQbpSLW6{F?+BgQH^)y`u(GE1#^Dg#K)4irnAyOxFdZ~8`rtI;O{ttWoRb*gR)k21* za-MAba`AJ@`5sYhkpe+QICrY=r( zI?2=>5VUSoSUg9TAQ92uYI+ZZY6l%{{`WvZLtrlNN?#q=#JjNI2)SUIGZ+4)e$2zc z3PWoJUP^C^TrQSKl~$OAm5i~Z!;>ppJvr*l0w#&)f5fZxR@JT4VuP4eLNf&PCUA~1$1BD zJifND61Jq%WR;{!i<7Lyun=P-@GjCb8)~j(b(6h(6}xzH9mv|`ueO@N&jTZJORWOO(VklrV-)4nzm#bIM?mPWY=|uU70r|0fRAHFn^c} z=EEKY(~szM(W93s>W-Jv3*(HGEp zVYB9T51V6wVPOs_NS|Zq^61=J{`ZWZH?4>whi(fN7_%pf_RIlCm(LqChe!jY6&np< zEB3{_2tULc=9jq;0p%Q1DaPJQ=by*#W9#Q%3!U(7bIynVPjy-esXA1yiTh$x3*o9& z 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 diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 0ca1aff7cb..4ac2c2a5c6 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 43, - impl_version: 43, + spec_version: 44, + impl_version: 44, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 7dfb5fb461e0ecc92cb89da180454d38c471d291..4fe801969b354e95c1487bf0f83b34a7c23568bf 100644 GIT binary patch delta 175448 zcmd4437k~LwLgBV>h|q@x@X^KZZ`wW00YB1Y$|tLC#{?rT(f{{U-R_w|H1GG``+WY7`OvqjZmp-z zId$sPsdFEHYGCT!fgxk^Wfw8SFxZ2;-3!JjIuE{~45oSF_Jz z^kb+zvuDp%>GTju`t=}>`5!X8$Mhm8utR+dSnRMBF3#H<+d zQ$-eIR$RS`cq|X+Tv(!$FCw^zh+JzNN+W}ZnT*kYL{%{=fPaw^v|m+KWicV>7fBSu zfBI)tsZ8#Vr^)u@C8@Zsfqqq(engfB4O@{+f(oD{noO5Rk`9(woe>gN7P>=;cnT(v z5wOLN<;enwjfn6VLKFt@BY-+aMMak`UAvfGHjUkaKaXHWj#Vs@%xP?FF@j0MS@DNW z?z3r^=cHqA=h5MpOh5O`$(PT#;F9SV&baX0%ZxjCj!HZC%5%@Ye8#zF{$}bWXHPLC z&sV7zUW{Cmr(Sqj`o*HAORYS1kKFawa0N5uzwqG315M9co!Em-pIDW0!N=iJym<8E za8Eqm{y1EP$M<-c#v|O8Y=1ac7CjLPo5rKOLPt;EA4X@F@qFj<>64vl7oK_9)JtZZ zc@82oF1+MoV>$QF;mmMY@MhL^shD`?yUtPQUCfzMp^0 z{>Bcl&)MC4lXzZy#vc}&#Ts$5IQpoeoA{8yg9bhz=J8kAUbc=e5H0+A{yg8vH}Lg* z8{fr~@A2Ji4{POL@W1kp`A7VZ>_+wnwwJ%p_wax4SJ)2rGW#e0kniIk@PqtDag+F? z_>y1Cuj6z1zxZ=}EnmaG;#>GuzL_85e-ihL`^4A$CH6XhgTKbV;eX*f`J4P(KA^t; zcl=$xo4>>V&2JM;;#M(V+#A)o7p_NS_HiaN1qbGEW>HNXM^FyqpN@*!GPhc{^p5~)^GIk z9fzJ+x^1#W&+v}U49}+6_tj7Q>eYoNg_mxd_r&bKTp%bM-f`v=qu$QSr0;pJIvs9W z@Zpo`EKBxX?pD+Fi4lJt70^}Q+2PTnsr8GCbV|D*<&o=i*>!Ds)6t)LqOwey)7~$lP3L^qr(++fKuy!H{$1TM8Rd^$YrE8r9c}j_ z-3fVVB|9henqUVas6CVFg5&>sJcZu>jj)M2dYW9_m38A=pOgE#va^nVbs;b>XfvlQ zQO%8N9?CY12;$Ye$k{~i!bg6$n%;#vz6;Jt-CE5Cv*6xuHX1f}iW1RheIt3boCC z4}0uh+J<`;4u= z;~y-a^I@s%f3UG^vKSE-n1(8vJ}lTGS{cVc{9rN^*(ypxCQWaM-p2)v)Qe~|Q6r3) zWuvr-sQJ^SJ#xiA*=+;18mfek597nA6u6jEtxEaRZ3fULMW{^{bXbf9W%3{^s_`Uj z-iw8XV2Uulgl!I1Az#Aw4B(U&LWUXXC8|pC}j>MLHB!2fL%jwRYxRH@>4>2 z=-FN);k;o)x61b`c~#2H;m@=D#;<62)bR#Z&lhnTz*q9UTwdI{nPv>6!D`1; z1ei&Z$-lC0a%3JK&bFrhkjGzR{J_f8uM7Ak{HFjr`M(2G37E!Gw-@snG}=HJ0X7A| zj-`R>!KX0zIUUFS8)U*@4{-l8Yg-H_N^?JPj3?JKk2%k*m7mA?82*Q~a&RZ!pD^vx zPP~TI$-6u8$)U^$i9`CTcrIh_$gzD4JihGAThPu^U3iQYwiN?i z&SMEsNh^W;?_K#kWcqD2pTgO@^22WYc(k1A+ntYR><@BI58gSv{1HcUPfYE@@`)b& zG{q=uflTw5oE@`<6h&MHSm8d?&B+^Tc{l4HkXxMsIk6|NlDlhpHWgp_DbJOnCm+ps zG|KTkdGAbOQ%~NP&-=67+LI6A@2i*9vbGlwW^#=0#V5vI6u^mUu!07|wi=A6iu)1` zMmjFn^#VEE|7ZDCFW#FyBx~yUbrtE3bwr!{vD|C3Q$oWjfiXA%^ zbk2&EfTxv)xSPFPXRn~_mB?;8$yf|U;#8y)iiA+43cW~nMw#fR5FH#N=GP01KS;1k z{|Obc{aM^#STXWw!OOD?60s~h&$be=fSuP1d(1Msa7N6JX2QCl7-suv<>z+54o0_& zc!X9|zg?1u`R%Y>nuvw%EZdi)dXR(aiP+w;VXP~h;RrAwl@*WM{{Aj zXhy;=1~^o2G1{yV;eee5=ux-O{BbCVcDbE}gc!H|Shxct!WP<~2rZ%_XqQv&a=S7S zOJ>>Sb~d$Mu18`2P}hQ^qS0ihzaW!U}!+@~K9cI*HUDHQyfm#AYn z#D!cZnIN1KPBT->yX|*Z^z;*$Nf}7MQE;y2K8PxKJJ_hQ{qnxSyc_$wd~q>nN;>MTvL-;UX1+d}GuL8eA)0MHBImeuYrD!z&PAmVSj$L^i+SE9h?8 z0FQ9ygY&EM(GM8)!z~xG(=}w-5&8ZbzTE7?`xTTEhw`$beGI?=9L|bk#0nzk(90Q!BhjPApIjw!qwdcPx9FT`QA`o&r-7BC_ah3lbUiApU6(isxgdu1AumR83`az zQ9>oq-0V;ZkVq*9B|z3xDCQ>kz#9~VLXeaIARQ;L$n0Zy-|Ub(N*@W{(S#kACmq8( zCovH0VnU!bW3Mc)XHK3HYjfJT17T9GbCXEKB0xc3 zA{Mf9i3al=&k<>mI$|e7j!kq3#sDmE&Qf%U#=t8gG(yyc98_1nlT?J5144wXo`)Pc zC=|4FfbOvzJJ$|7d`7})^rH?%gb}ARjU$5hkdosehmQ(_<0-&k05%OEi72|^?hLS< z%Vrok00JiNt2MxG6%z$71)xF>8-)se&T0i|)U4-6L7UQ0Qv^RWBbhW{Tm;Zar`Zt| zTFpTq;37#M$svT|p-jD*iJ~_&f$kf%8_^Zh8$xUM4XW2v;j?`;Vl}T9^B7)z!O=Fo z0lxU0uMtxSu3~dU!Ujqt^-J477-O|n@p-J?_ynvtYG-Rkf|2{3AK0aO^g!(N#>6Qk zjG)bmbM3!L)TU;RQKb zVDE=oP+1+i6O~@R7xugZS()HX@i48`1zco6pXdn;Q5Ej@`@^!+B-kBVa?wODnh9 z>&jm=@WSjykx0|>cNiP;e(7+#T0`kGOc#w3)0U4eZ8fGQ2m+u@1&QeEOx`)1U(G_Y z>{wpJ!m|IdJkBC=&M;ocgIItry`HaN6hnJe8~2XfqaGV3;;NUzwnsScz9XEE@O5)*kI3Fg15mXaZtl( z%11(>&snG{L8)EFR67!_h=;KBdx;$Mn^=fs*$8BY5NMgw(X5>WRS?fW9y_Fi&8i|| zjpzu~mWZR1HDG9@)j+R^`KT1IIU}Zm#zF)gy!0nfnadl~tj_Obr&BcprSeX(N=pK_ z05;7b{Z0)f5^fP|&7}5Dr?x9TD4o`>G%e6RX9;gxp|`1&g{nfD8?@|mFhFoCLNbTd zyNr-Hm(naMS=#3u2W*{lc(g2BvuH(4rmdkIRsH*d`hsx zQ?1g`QIuSSsA>dHwf03v1A2I2f}c?prmi4bPSf+Ko(Ecc9@atX#RKl_Q2&b!$na_O z0atFDYFR#>4`Ckp%kjLk<4Kc~JBtDgD~ik*b94?ZIkdFXJP*Lp14Rd5U#S@-u{f}V zb>n${Z)`H0Lv6XhR#mRZ0IqT&j(QoGuUqv>={cTHC_UmHFd73FkH~4q^Dapm!XZwu zr6nFf)a!_XTRcosT^KTmKNiAjfk8JSq$G-X1WN&}AhsW?OIq?!)u;s`j>!PZLk5mv z$D^^b3?zxn8qo<&ixM*b1RhDE_dpF=tR5y}0+)j{>>~!F)(U{+MmJrp>nIwX;C8eO z*o0O=BrY;&RM2U7@n1oS9%#J{C)%nb#2~atS7uUW@|6>KO`Vc^{WK$hM;b3^ne-D( zq9>rfLy+ERwVwy<3Z<$i@Fy9TyVRbE`~wO|1SZJbN&KJewUqZH{taWjWcJCTSeBl` z2bV$!Xkfn}c?~K*$m`r`#L81?S48iY(@udhr*+A#r*KyO7p@`{WD?IL$$NY*H7i>dLXTH!1)t0|&h3am3@vrziQs3Ww1|KJfpTSQi9X=wp z0X9Fi?R-9+vH5c7h0t{9Om*_13;CI}40scK1m2BL@J@bORcuxoi^!}5ua@^Epo5t& zSK}4s+@0X#5UrWQ`%v_ZDSUMC>vK04&?1ClrA{fmMFpCJ3NzLfRP2s6UX2Y74cn=nnuygnBG%1$d;$8^9Yg8iJW0V?$kCmkJdO2q z!m(b?Rk1oJE7sdtcq88RalEm<&f-7H#!GlXa>*Z&RPO|01D%x=90ZsQcAll+5a)S% z40VFBqnuADc(k*d9>)NF!<-!ybet7bXM?kr9>bkElz6NYiH&gPQ*fkn1HBmKyhxAH z0Qwl`T?&qM7SqEw&dH7)=N$Z_ET6`U3U2seJq8@QBItCB#hpbub~#N(zC3Fh_hJ8i z;WS_G?&R2`3~s)kVZAv#f>G6Q*l?)wPH`ggh0cgKj-m-vqVK1egS^#dDo9>Vibkf1p{#$u>i?zzU zJJE%Irk36b1w0h;U*FAp<9xnR_GsoqiL)h|`AD48tZc@)3X*p;^RWPP>3xvS|19h8 z<7b?8Cv%J#4s9ktH3hw=jeQxG*65vBNW7#nQpa6wQUP9pZ@X`TD>t$*hcS{rY0f62 zr1bytq<1z?b~2p3-Y2F7Ph_(B6Q5t!-Or2j#(4bUkmWOjBEUGr3TT&v{QePMoQ!+0 zd<)yNgv2Y;vBrhRV}bA|str0)#$yf&{jSju()K#<>9}({E>{-)-vrO<0;+;P5K?r^$!p$tS7=sm2r`00G2G+$LIO7l{vT`~9 zwH*2Yud1|=IgI~Q$V&zBAEI?Efd5&chvobSxRbO{xGK?~8!-<;)rsEdU&MxP#6)j} zvje++$jRux6G+rBwFlFwN-4*koQ|nbarlw9B$J8=WMwM20~S;S1dL4q0RjaZ39#Y` zmCbSTmk;s>#|6?V2x#?cjmJGPuPu796&{RQI4e8}r&9GWYK#8H3m&L%M75FfKmx(@ z2@mQ<=YXx~a+VzP5br8{c9xv5mggt2W;?l%8(oQC*x7cp!M<*8JbJY82%WD`hROsb z&KnAnC3U4C@d9c}qluoPMzmV>#@!SS0h^*TrpLWQ7-nBk?25t0tvHp``$j>JR_+{F z2P!2%O79ZhJ<@U8STC`W7~?w;Fsd9MK2g4&;$7v_OL*u)j1R|;YJ6&(IW81XQyMBx zEBdQ+B5BPgdNJ7e2hOo=-w@VHPwFw$M6C!Bo~Yrev8foK5t0?p@UoItQEz-}g$B~$ zxKhev?iC7H@|=fx{3suhmxV0@P%sPFb0mx+Y|F)a9HEn>%AN4|@Ddh!7^;qk`Sw9` z(1&WihV;dFu4X`KLt)~NFf?>OA-1zZPh&`~`ZJF!4P~7=b1Y7i3e4hO3 z&%As{R{H@s5z+{P3JI^%7~Ug|;k}G7Ay*p1{qlsRyrh@Mju29S7`(PcGpx}S1f;Rn zQdo;MRUz$Ixo|1(nuV;>32(vo0cY8J56;i_F6G`pRvMctcJg*;TdHxMt^xV5 z1|*So29U%VoExBc0E}zFHt_v2fPcFX|HRkRLy0(W$nmJ+jBBB7&BzcWBjGb zFDdA(a-p+ALx-4N2093bLic7+%%pufgNa2i26ZFIUhx6Y6=}ciw8mAZg5?F|-h^;NtMD*&OO4>Jxm4juFHkw6~P5u?JRY#@`y8<0EEu54Y! zORdiz#@LHx-6~#7OpoZ6MS18~a^DI*tddmqnh?OHwIvH0Ck)r~ID94lW$7q2&$Rxi z*41+3F(TotkRgXX2lcmJpF#@NFz}dP?p+C~F(Atx=UsDs3YpQVTH_EcT7=Y-^Mkpv z?n!Qj!A-0*UPtBc9_Mue4N3c1UN9aS9xKCObL?!zV6$BYyBu$k;&Ru}kGbo7D0mci zg;sF}_Mp)x_|f&=bXx;8FaSL33NUF9L90cbtLBF+Bx;HpicCLGQ5I2DLGYk8B7AY^ zA|e#I{|R2@@eroU>{TFxM;FT;t9YN{KzK|C#BAlxe$wYb-}fZ%EElcHoYU9kJBry_ zgv$}zGbub4Q|gg_Uj-2c)rFtrBlxY1aP+x4oY%QSQD_ytRpIOdF3vVN?xrP=pr}QLY<2kaX54b=)HrOKs-8(S#RUpN8s6^yEGACQH6HYPtykNs9t5E zR!pBH=>#9<&MVhF2sQF+DPG;SPNVN?MS_8qTBiwH+SX~B?W=iL zeqh}lOL(8dxKt1M{tiCU2g;zec2wJ1I}m+TYc2Yy`U<>PBf*H&$Y?|)8)z{o4JI^p z;AtLDdOED9-VE|Xs`w*DYe(vhf4cpguUFYx(l5l^Wr#cFiT;LxlP!(|7R@V&{}WN> zB25!&K0;cM1h^G=ao(gRNZ$MmFFHLld4z;JOp-h_jpE=I#H%}xUO27pqM8{+n}m>| zGgSm&SL3xLdzP1hz`aD^#iQC&w^}LV5qGARLk>lXJ5BlSH1W1+Qq)bLfD%zQf?Gh_ zy<;se8H8j1G>ylpkErNpX}lLQ{XC5a6ped{#?J|zEyt|k-F%urLX+k1+r`e5%hvEN z+1Pt$crnnyC0y&~Co-HksXONQz=;1EPy0l*46IOHs0Y0u4)(SJK$K5B$Fplfv`86GBHf)yJFERn>X|3Hmj|BXwfPw~ zP0hGsu}}6|3v%<3P+W$`MQgDS^vN67^7AKy+d-vF+tP;~afYBf97sSqwtKZz6sPbV z>2QwI2PXh94j79Apj=ED$;0Ll1E>tuuSO1#aV?_30Y)(%`Et@a==41Digh@o8Yk~u zhcgPF{Pic0aD=m$%S%u6=gP7c^zR0FR15Dq#R7l+ayn zmJoNFw`bZ&J-^sDS?n_ zuR2(2H^0L+@EU)lUSL%eI9hGl!1JQtEkW+GOm3gtv4?l^Mx$sK$gZ;d^KN8OCW@*; zoux1EJ>C8Yv~MX>$#z?uz1+ET5ekOe)r}5xnTp{ZY3i;`PaPiO%7Rzwi>- zx|914o25$GbrX;EeH800_ zA00-3o`d^i*Xk5a#T0vETnv-1I;3~q%)6b4%_r6Eo@`=xbkMJ-Nm+-tuOBad457CA zLvH=@6-Shu2WuJ*UI-1kI!YiApe>xGwgV%U8`L--2IvXwlc6#iqoz#H7%Jw_4JD&v zb8@rW>4rvxXX}2Tud`+O7TzTeoh7hj1$VJT@0dGaiM)3Yb`;wrC=@4bdw9PjXg+jI zumSsAY@ALFPYOB*AK$2~!ksto!Hm$xHw|RaKDyrl2Mnc2@&ga(6`xomO6BTBxQ7>LiNIeZ4urRZqNb-{I+?5utc7{l@Aj@7MjdLg(_!K z8|lgv9bmfzY*FPyhm|KRQ}-#T_jKGCC2d#;(`=hKdk?Bo8ZA4Z&8Q!v4XN7OkOt^V zgZ0u6!P7@1YKErK13ZoJGkkvN0)-dD8VHp&kz$jR!J3P~CPsuWLcQ$}J+Af$8o_Z8 z>!4dcg~=DHF8K(PVK#_Ev9>BN%2Ww$HOfzI_YPs|43Kmx4);fdr~G_#AWqesg0(%; z=UnjP=B8w-oI<_$5&s2>1f7jo4}m7dV0q`r#oM4N_Q_|r@yZ-JelVObp@+lk-grGw zezuKQ*Jp$ylJ9>cbAr8e*jLhqg=9|aCp9&`Hkq?WsJmRcoe#Bj+b`(0<7m4-4S*W6 za2O7gbn68^Y%COOA#4h~Y7b|Fibyr)GS6^bsQ2No2$jKC!)JviXQuz47494ACr^6; z=X2n+W5R=hcd+e%Sc^XkwjI7@4g9*el0Wd$vm|bjX$P`Fg^raSGV2Ve_$o-!5TRI5 z{;--?i2B|xS`n%YMn8x8 zy!~y4HYNR$Qssn~c~Sa;1m=V;NRU897bJSW%!|dmH#bQ3GB5p^Jp9H@cf8EYekO-F z^ud3wWzm1CrG6DLQo5}1ZknTReN&$gJA2cCBMes-zrx4G+P%R1cD&#Lq=86(?JK<3 z30|@x5Ka#4%t$b}9Jh z3-9v2KD}_nEqT-qUJ+OHptg)!mqSVcz0Qy(xlK!=w%IkL^2K?EqH>6$+HC)g9sG~A z={-M@66vzBu5{R6gQV2{nq;cRHvQ7DM$)dswgtM^%tj&>(d+ZPw5^=duQv)b?!|v4 zmCV<#kXAx)I!DNCgwuO!vz=57MUjF|fh>NVcTa+Ax0_zuHPhCU zm29{4hx!F=wPw2OB{6$nsE%gt1T}jYYA(_`=rR${9O@tpZFfffUQZf*Uo_lq+A-yi zzK)wSKAP)dS-G2gD!Tv(q;DZCA{||NoWi*uF`uk{gLn1^+=GsQJoyb?S>D>*;nvjt zW@V7UX@j`8Sx$W$=5R~j;KQ)j!?tPy9qK8y?}Rt`0KeMdKzHYnx4g*=x>WcUADPTP8FO^VqOAZdAfr^HYSiPrqbsOH1wA^TTff6#`BUr{ z6>E!mq9bmjztLuf-eVn{&uCQutt7FuLjf7;O2aC$vuWf-1c^L5sv!}v^CqEFd3sde z=uXwTMO-$42B0>NK>JF{=A2|!T{F#)}%D-fFU?g5*09wz3X^`6ZL=EyX4&RoH>QXHzm92x|z)^=5Jd##_mPYYDw;i4K#{%o*x%1@C7wEPf*=lZ0 zD5Cjbt0i~7i~E!9$T$?oa9~Rexf3*-4POLu#BN^jKrPuprEm~XILOM@Ks6Or{FW3->Od#^SX>Uhcn>aE!Uch^I!~9)BT=UX z8{9~PVdpitm)3Tu9WUk{pkDqSuNagE+{u}Qa{=QQcJ_o)Y$AYDh(QjDXGb4&F>nX2 z@fywt&|(0%B|xX{x>tPJ!!ovq_sH@QrYap*hc0!tXs-o$+_?u^37xry^aH*-Hgd20 z=N^7jpZ~hH$V(T5vCEW?@8#zNq1m;8qt!Svma+HY9K;%8;4(F_(s6j?$Pw@JcsULc z-4)~&*omfDD~I?8ypeO?$8|lg{J4epDnwm-4ZY)`{WgXJeFPf&?tR`R)~y3gw_8op zK{@;b-piwm5!#)F=8PCR6^;m30Hq-_#tL*t3pGcMG$gN`xg=gp z+^0b4Z3LPPVp!F58O-HfiCCo@#Jw^bLGY4T4A0g| z6zY+P#Q~m9*bgE<0Esh}Lc0^L(Ag#OhmZJ#*!wZhuln>Yhm_7F zqG?_A2S^|_0umsMyp32y7UPCbrz&b*rN*eIw$Av=YB#g z#o!*>&pYSUC|N}*oN*DPn3#Qy{CGdF@aZODZyf%F$LjubTf(lv4Vid1r5JA4@b5q2 zHL=4$`Wb<=I0Mon_m3EGGMAQXNITsL*XgD3O2UMj8Vs2vqIC@n zN}^f9(VCX|qxNBa(g&gK`vf4$;UDvCdG9I>Hb{H}FN{(b$chME=#jaEr<2fyTH7Sx zt1h^Qc$ebNscdu z2HfL0wT;pvN*AzY^=G_)QduCSN4G-pOiWb(94!JP?q0Fpirctd^|^GZI)r}W;yA&%CeuT2JHo}86K*%b`WMxz z0=6BHUu^c}Iekj)08oWkN}n*@wS<^Mkm%bsO)3d3^lRHNswCi3e{8Q#I{?sktQ`gs zQ6nC(1GxTD8V@)=gnVO4ZCGQdmI97Lz~Mb zs5-JF-j}o}xVBCxW7u`ry7q+}S_kfsA4Cus1ar`!-2-ok1~J{lnZT;kXh5!EGH@f2 z7Z6+gcV2l0nUG?(LooM%y2r!>n|7};`o00?o0LRQ4WW9{O}TTPW&a30b8Qzr-CUTI ze7mPC{hU`O)i?lt8`WY4>ZZbiv5xK|)ls9Q$DRP|el$cnSD#&ne$>TGAQ|GF@b{)kQTT z6Bm{AT{TM3XrUzXfbAWJ%gBmC|KBUZp)MhqswuL>4ycQxu#TL8iNb>zBot#~N|%8{ zfK8C?$`W{!$tE^|S%-!e^NxG!H17mGEDn0=Ne`~4-iA2{6^jLI$XS>!m60$3`v>`T zE98Jk16{_AT%(#?rmWA15&RE9Lz70$dC@PoIT!KLAa@a7M!w*Ku%4#jj2mYlHh>wr zHg(E`HSKp_@UF>#bE>+166aHBl1ai*nrFyXgc?AL4D$slkgVj`Cjd6wnFJdvpgfe3 zp)tzd6A%W9;4cJ{0`nS8sl;-@(r~ba>p%dc1=b6QsU(P*Nq{5-phB$`Mk?JPQb((} zXoDi~%z#TcXbbA@uE{HFN0a`kT;`$DqivNn@TIf;nNfg)O4&sF3 zG4KKUqdU|zE>ud!7c?^RV1R*SWd;Rm#UJsB_Je9aAS{PIeM`H4muxLa_p3n+l4AsP>@78T zvjI|Qm;hNig8^g--Zt88gDfdyzza+p7tyeN(13Mj;!-*t1$!~KZO9NH3J_?0>Ib+lS+mR zZ#>_@6yU|@+e`sAJuj~~2n!x17GW&h`6;3ODJuw~=rK=;_ z$ks1;MUIl+$O!>$OUk_o;_tA~x9P~0W9uF-!=q8l%hvY5N3XtMQ?aT9Kl4f%z z;G8oFhe)LI^C2Zd3Qs66<33zhL&hQ-0n`U9$+q)I%NZqzIsASebnCKk)HP7y3snb+2s~lC7?Cey1BnZJI0$jl>ul$;qRo%-D zuXiJnOWOuDO)h<1J7cnmabS#vMddIsYs1_OnB9W0B&>5?I6{(B+(d~jKS@~a`5JAo zR(Nnn4Lmqz*Jl)o;JNkyih=9W0R(grN>o8GZr2bWE(2nyWr0)c54fK|rrLL4~8gHgI4+dIQL(~2Y{V)Y>Pd*Wz#zw=@dVp z{3&Lt!x)aBMwJ7;D&TcZdyYpoNEyC$;ZBf`xG3003C1> zL@D#=iiP5GU=2!5tRhfjMkOOClRgY4G?19dg-QDZ9i=F9*9feO?JPhHHIp$aU8+GoEHnGr?a!D(yw6{aGV4_W2F6wa1 zpZw`#ey}IEIrv{ubw!i3h(HZWd^Bxfprkg{GE8X5?&IfMrW1b>6)}tCX;HrIh!7cC z*kg})_>cL~olpP;cok%o9fY!o@Kbt#ezNFC*`?&l$^Yh^lCY!63VA}IknnQL2*IHY z?r1|?$1Rsy13LOq6e8mcIx&mRRtkAg22354e=7GXjJiOH>ri+DZ%u$KT?|mR9aIBF z)Gd6Su3(LvaBSd%ZV|U=khRvJ>o8g4;75TwU|c@A{4tSVNPa{xiDbN=&VzG%uRQ*H zUX-NNbY+m^aYdc3vG@|00jOF5<;)EP>IFr9G!EbhDXanMwgybPZpnYHh^}Zr2Z#Wp znA490Px9Zxz?RyNDd&gQ^;d1&9T>Q)TI@+*}=xg%d zLX^<8)nZee&o;_ArWjy94Ck?Q!Jn%Yj@AwyeG*P+7si#3D!<%mimq&l{J|6_CwF{L z76oub<}k`hz;ikw1eqWs-ePV;&>CRdMp}c8uA~USaAB&p&uSw^^nu-P+LaXKTl#|z zApj(bXFKFd3MW2j2P&=XWX6{iR70_7TV|z@gU6{hKT-j5-xIK-q-2P~KNN&iRD>K< zQQD7G1d14-Zys`xD?9AQVRQ!@Td?l5H-}gNV6<+q$ERS8GkK04eFg70K`?N>onA#gGN+Zl2-g26>Js` zjtQv)@Q4J3TOd=dD?q3h5FMlLi_8&$dI6%#abGC$P74z-J8y0U%Ta5d^PiG119 z5_OTZ_aZ;}O~HZNMV2UKQF((UD&X_zVM`3e<9!vo!z(6K<2EO4Ldmrt`T~*#qM&bw zp}Ue1<}M@v ze1o-TRQ}y7rjzHR$v!azZb^Q!3G=_*1oq!nkk&#vp3A{ApIr2$QBq+Gff3%8pwh{> zTS}uRkOopt+9ypKL7`U&5Q=g&o0umRY9?oHG^4=kw7M=m#TvIrfOYm`a-smE#sKJd zU!)nneeQ-bByFW>cd>E@amp7p$fI(lUyMuUYW(rj0|fCj-3ug#P@pdyQ386PGtf__ z^>kG&*jZ?^O_k;FON8i_uFnzN+4o!=-zkRyQU1Oq}Fc()12n}edlr*!OoTVMW6b=&WJr<`V~bp)LS zI%5XWHac_=orBmSnuA&<&{?+MIjFfFS_EPaP$QrdIrM6%icnvnxT2B4 zPnEMz2g!jOvM9MRmMc%s7GvFsw#?ueQF<_B-KLRQ(i+!ShQi93bE0Ss#SG> zK1+aSN0=dN+EPJ`19%5_r`nN{{ePL%lK(?eqe;?Csr`_Z_hzG=>Z3!j4OlFg`b(}@ z7lfabJ1WIX#3ntVqyr-o9o1GN}t+SyqpbZ=tD+`tMGVogqV#-zmZ}t z9#4-HCn8UHl*pm7_GmH2gJ)vAsPf`@%Oo*`(qA}93<==rJxiR{2gQDKtGE%5&uic@I2vR@stlwYo*vrg+G2=yeIJ7{FHbGaXDwTXht;tw7863-|>tn z_p#gLstsZxxxr##vwP~Qjba{WEX6mA-AwM;EUHpst2mjy*CJV-Sttc~^{<4VNcHJ{8#kj~!lu zqieL5y7^O4%H@*JM0sbWR)DW^?2k1N$?kjxDVj+3pGf^Kd(~hR$ za~)a%dEb69NdD%47?5rE0-cBZE>A9wnwL;&G~4`~x|9Mw^A4}W8q3Dzn?tG8-ZHaPK9Fzr%S66x9~oJY zc~dU!JToXCC@_zvyjx4nPSRUwE}{rp=__{?nxha&#fr@Ss!4RhmRA;=%QJN!TVg7D zP;VYDF|VdK>1_4#rcx8W`VXa0cY&$_y*rPxp#E}sZn=4}8|jnsR+u{lf2c+7jhVyR z*D^@{KCT-eIM+&{9Q-%KY8TofN@r^^jTJ%~hEx z`kKS338$aA2hUWzzgbJ8OHCYL_EC6q)F9CP(t+jzN<}1x@#~sX69=2OP;KuYWuAd* zjyYP@mO5HxlVguDAEH|Sag4d2-62m~U`+%&cyxjFPxfnh->ue}S*{;27-cCxU|CI8 zLDv4;hLPbKj*6>|eYd6hG+Fs9NzUQ}THcKZX$=jMl%WjXlq)<(IA-)LjC#%=;T0v~ zcvOUZ(;;H1$YP549IuLyKRhP@RXUX+k9dgqRfK%vArep#@{H#MonTVM$Q7OwhQ~81 zL@x52kP}uBa+`;ISt@dnBKb~4MaVB6x)4&r6yC+m3swOd*Y=b(UBwsZbubxO}VOm)<(-~K171_N04C(Fx1&xJi6c!($GW2Suh ze(QF4Jj>c{70TZ~U=?ezI2*= z^#LnCCx~KsapBA+t*?NlIVcZ3V0F)f?|Axz2o$!&-Q#o!CuIGDRy?ViMOOIXCM}1u z8^HM-8ixit8=w+)I7Wt1aDPNLLt)225Q+^E-GbwS1Qrlq3|cmL=ESKL4hsO`uzm=X z4mZ#}M$!#e!#^~(5x6#v9(t&U%=U!g3L5Q@{gBXxFwnRoGqkHkF-yS!nt4CWv4W%_ z!;r~$K46hC=*Xf?ZV*42_mD_oQ=?fJ!Wq(UMB>mQF=g z7D?J25>cOp3*4DR96TG7>O~_{n;=+w!>KR<6@GH@T_OU!8AXFi2IzEhMjxq+$Qog1RIR`fB^e}~WP~s<(gabO4lWD; z&!NLGofiQY?G>G302wre>WR&nx_#9`ah+q0`)W0i7^BVjO(&Z+z!!egiRN{8pwe*r zM}y!{!J5tk*zLMwQHhlHXgW>nRS0`*D9Pcp*R;Z+Zy>%h1a2GV>hkU=GZ2~B1|xtkiSF-8-no6bk7c}Qe!=xjO%GKm?SH=Qpt zi5bE$X_t&jK88SN7-YJmAO`T5^tG^e>8T;NBT4;+<P)qbfpeDJHT}`(+D6j?}y;DKDC<5G~ zFi+BAM-&R12neeNP?e}7h>PGbf}{h;5SeF$DH{^OxwT;uoKgl7RrH;+3>P;3YhhcT zcRRZdZNyFZ9F%fXqJL+I>^dYHms+QTKfk-wTEV`TH$7r)ENI_ITLtpGN3HLW^Xz5T zMGzNWU1m*-Y*8LO35*~$T>72xm^BMoRy<{u$o-F5zd*h(p0vv3Da);2W0`wuIo2-s zb@mGNx;$kSr)I6NI8U~3_J1p^$Bpm8kwpOS01P^XZl93){&B06p?f8((gPeTUt48$ zaYqSFn>$MHlUPdKVch#4cBj`vMni$ZTJ8G!@BAjD@Mb*`&sMrEKiI+q ziAiS>leTcO708@y;RqPAD^^m)q}BJ9EMn65_z^Mb0OUhZ5b8k={lOIdg%rO&*~+5B z33alCPYIAKZfu&=$yPV|L<-%`QHRzLGhO-$(dwuyw#bl?LfLXzi`At!Y;>?X!lF%C zJ>vM)Ly8?*-9dhk>y&{Y*$-wDKeBM^$y{$8%RWtwS#Nzpumm8;ZPs$PNNxL9KNW6O9LESgD<9f!RTR)|7&yYF zFCmguDt_?U&|Bo&+pXykamT-4^=31cG`?Ulc-o%xqV)k=AkTTp8ts4QAs}We5K}(+ zlJzU-PfFyOr}zfQu`gRgFc9ZNU$I>LvUOa$uqA`9SOd}tr@vwy(=J??df^qwsC@25 z`Nj_G0!Y6{y^8Nwzxe3}@W<2zlgxgM{Wf*aN#;<-u9Uq$unJROoNW3T-*mtH?i90$ zU6q=Ds=0=-ZF2l+=2G7JmHhfN^E;-VMtEZpJBH63J<=bIbQ@l@bKb0AmHx@V<%w0!S;bIKh_GdIPin%9%U z>V}KVZ+L)km^7QPRXOGwGhf~{&FopIK14YKx6{Z(+ymoI2qL4yMRLzH^AC{O<%O4; zzh=diV)tTl?!lCF3z8+r3qjaB!z6^{U0iU)GDn^jkjauQ z)6MRks2gNJ7{{TTHh$BcGDzMQj(1cT3aHD>E-YU<&1f}W_P*0BD8%WFs?nr#91m(V z=@i@}*UyGZZ0~F{B^M{n|}I+L(C)RB+R1Dwz`+=LB$~$Gm@2ysSi|CCYms8 zzUBJ$W=T>V_P|3h*~7-oDYhWfXqY3BX*3*kZ zSw4NF%r;Z`mtmvNek&VS0sv=TZl-iNKh@(3vq1nWF1gCw=Vr)DT`<%1TEO*bSDSrJ zdb3IW0yzA+as-9;Kv%tajB+Y91+#0i|+E3P>AYzc$jA;1ZpKTd z`V8fLFPSq&&jik}8ezx%zrcQ5VBf=FCo>DX-dv4{VIXn@yRmBHskOsMf`)SxL~D%Y zYlqQ_2uBn(#*(%2jF-*ZX|X!^vN@~#=d<4Yiup>r&!VCqxt?Z0pGBR$!|YqW`8m}N z?eeJZwa=+`uv@G#o_bEcyu;j%5#IT#Ij>Nyvvkc=kDm%C|1tw#GglzbC$E{)@%Yv2 z<|%;Us@K6KezMs@ne(Pu%Qc|XePMJfPu}zLXfBs+0S^bW@y#9QuEZS-Qg3XpwcAB;M`wF}a8WJeTp(PQsO>)iND*wFG>^u(Yd!`kitxw8TyJZrc4=gz|_<&BIw0LzU^ff0kNHPGKRVa}$ulq7A2 z6q(`}Et8GXutO$8yL1{lY4jl70wE?g-sn_Ix+M0BxT%xbVCy$1ufB?bfPvm%WqCdPR50Ev9OtonZwkq~hS=#KXuHA9i;WfI-+s5|hUbaOjfk zz$`m>^(@jCsVZ>!2X-UeIS2><&*9nlPs%dd?Hv3ybLR>DStbE9E|nan&+1_&Ghb^$ zuX?d&csf3as?ZJN5gG-yna2GbckS?8!g0Wg>-lH}2O(ja3edJrI2;5%d>V|p^sb;T zsUCa>G=ukUm{Dm|bm2?A&{(Nvges&r=pO+{<7T=k>f+2H>|H2p2vBFyjPPOY|FAoT z&Rd(Bp|rrMiS~(%?eboM)tbXm$9~f5z$vna?6J^))kiwV#TFz1m7DT0t~=SHYRJvt zo%6g($S4o6*!MEv9eWpb$x~wlVQY`ts|_y*1rGryZZN&2-TFSE)>(poy2T7x!pw!R zNPV(P5C|v%K#sN_`MWrWRPDGZwp!4qM&V~b*AAfp$K^^xpn_`n3Lo6|bZgYU2EE%% zM&*gU|yuE!31aq`qwp^A=7w zyh-nY&>uk=1Ye&<+WB0rf7i@UE&|3M0v3?}&>!gO8DM-%PXHNNuc2lw1-Wl16?omu zVf3L|Pz#B`29`UEfff;3`M7g8g6aksC%*_t(2OaA-SZ&+p(>S(&jn}F?^2mH4QCL8 z+zg>7yYTThs{0X@hbU0bno3-eNenAIr9>*!0_|a=nzCLX>LF|)!lWAnUC{+b;+f4= z#4k`;^hzk4Rp2V#j-aTTMj;RFHane+!Jx0U*@(*$K<5yI0tgvOP0pq`{Dd$AR1~eV zF}MH>yq|$_!c4?w5N#Q40+33k`6%tPv8q6{^~g)#!v#7-s0^brphNumQ3l43R0b+B zjEBmgIx2%bJ(-bH5)LTZLQsj54%rhXJ8-Rc+8X+kFZI=Y6C1SWexh`!l;O zm|24R6Jim7)cEMQm4ehirEv4eVSCK{il4~C-8`4=G5g~qB5oyd07+f?B!gKJsK!9& zY-u3TfC)%yz(^(eUkw-r5_-U#Om*D>Bcz9koq#(`t)8N<2p`t>V-4uC{p5oLEoeTx z5cubHNt-^J2bvYO?XlS~=B8!(W$62KdNl4B3}+za!-SGZtTyv#mBQ1IKEhG_ zi*mq6W)Jp|Jo_VaRP~)SdoA?2B8T+W>54lL@D>3R3tX2dSJx%ZZo4iKX5nyHU6%-Z z!#-Ge&?N*C3PJ!E)*sr);Z}=!q^~AKlO66T;6em#?XmF;pp0Szxb7l73^s7Im4pud zNVTA1YRA`BhJr`DE#du%THFgbbOYkZjSST10UkA~A78C7(d{E%tuX0oMPXfsal2Pn z$W%?4%DL64Fj1L-n=9M7ut%jh!&ke9wf!mR>FXv?%w>5!%)>pnp+c17j#!^y5bQx( z@b#L$wUMvxqH|?!>S}7REXc_lM8OH7Y;zNlB34YrIHLGsCrg8X*s(z?IhLWg zx>3C7G|x*#ZJ3I+2S+d*fUPoukIVVL^b{o_44UY$QXx@!95~X4(a5tXWPFN%3`uE) zg^*NCxVKIc2&vIVmj7hK{MjDsU~d%Q}$zmj52yu*Usw!VQL@ zKZ2Vaa+;?C-|~59n0XOY2V)%bRK~Am@=p!sRA>|;!_6(~l*7zGv3zul`7U1EFc!*!TjaZA&2pH2d@~kWq^+`eocRm4OLPbck2dJi z@5Y(m;N9iNnJ4_{-RsAhAFx#FsqyAjf~`)~O*AV7wCxinnI-(MLcYBjD$f_2q`Ae@ z13Dq?Qs~l7SPT{~4dmj~SDv-SbFM=u61|#{+y>NJ*5J7=ZYqBvP!TVQgTIf4QH232 z099DPDPT>^z&Sk$O2CXpCV#utlN|h_B1PZ_C9~)au!^7xVUPzks9q{MV2;9laO0>g zd!6DbXLWMoOshz~GS~{q;otd>3x%&K$4iS@srt5_00(NC^HOYr@_24?!8{gv>Z)XLXA-`c zO2AA6h)A6iLpiLttOg@|4%pyKnwbDbZPJ8{-RjFb8%te>s^Aqu-J7IJAfBKS2tW9W z5~@*^DD|^m#&p}DZFTSRCkuGx$_2iGFmH$FD0p)}E}T#LYjV{C$bhq<2?$$Za(H8f za@xA%UDgmvyPd)fdDrb!o-T~uP^;8Gl!Fx(HuTVgdqe7iE6Gk|bwJYr(VQksR^95$ z&IejBlHoIN>7Yab;wZc_v4J+}+W=(0frkkrOjU6hS7{Agfx~0P%NyL&7?+oFg;(h`YjDuI)Sta_1^9}kGG<{1_ zsh=Pjs%wUH7uXGvV;AsB*n$F#?h&Yfo%GF z$~Wq7GLyR;5|y8wqqNgl1o1VcIWqb@%s0`ja=!N5^JZZge51kci(~*idjKB=@i+nL zJX$APpEpauyn>s}%kW5UHp{@#7i~6A817W2!lI8TE9h#I^- z-MH?{{B#tr=FO4Qw&E2?BOV=5B{|@4HLnnC<3sm}Bn?<}cGA<{d%IT@cTD!Mp|w z72t8bd_89MNc%=6f}||_o7Id63d1S$J?~hj{(r1}34B$>_5Zu~W$t?|A7Gx!Z}fO$RT zP40wT9I~$Q;*~3I4ocg~zR9cX3s~f9ywyP!X)~(U8=cIfnvudc4u0Kh_+gN)4r)0e zPp0e~3)g&H8XFjb1FNI-EdU4NVq*m03`@qOqGyt^iyUKSc8&GUudm!r+O!31f&(7$ zub-H6oY*L~E|IC{eCidMKRU5PT5=u1nhBdTS_p8lo5tt3vG;!fzPZuZfzI{jSJBws zt+=FCVjPQ>$hMG;aU8Y~44rfjL)TOgGdn@r)x4I9m6)iCwdKZdnu<*dH?(18!G=~U zgMI3575g7tw>H&_%{QNZ;vJD+@frB=r%%29xeALu1N#7*IPy~Kf^qXO1jan)Gw*69 zcHQm`&t=_zgf}1@@UZP2IKZW!r}VU4eiw4@o| z!}}TE@7%-NC)YyP0}8w6-p=b98~nrV-4HZ&3WxmB?y>$R(LE+%J<ye5te%EU)x!SS^A*#!6HqX2Z2j(v3sQ0{nH6-v7 ztgs+(VhfR)Foo{0k+&rO&z>^3zvul3nBF-4eb04JaMB0fUWqsI^1NcM`M|pYUs^uQ zr!nHkocp0Svh;?}C6t#`Xg*Jyqg~u>|K^9@H7IlPHm|G_kzwgxA5tRX!cx5~`Ct2! z`Pnw_+Og2W;!IW~i6B9dv+MgD^kbP=bF?1;$2%}>yWi9 zk{o3EeB_Po8(g0j77MOVlVaDIr5}0M4V6;qa*HJxQT{7NGxo27v^<7|k?(5aAA6IF z^N6X*bp0p%$k!g~mYQDwM244dFDx~;eC*ZzFlU%$MtJ} zF?aO_b}!`%Chp8B&~rUg7JJBD?QFcTS8Rpj{K*vcj#cL7W=rqbIYGID@G;gWcC4AX z-Ah+~e?Ydow%Z=c{_2R&z245J=Je0uQQ2kV(!Y6!J3mnTlfQdQ!Ys0p2jK-F-y$T! zC!aFQzVL2hANqcYoyn(W-!DC$=eYe#uM$5`f9d_pz2qtL#8=)i{B8J$*9u%5_7Cr1 zmbw2QQs%vXh{M^quf3iqGy7|ARdpWrUu96D7p;?En4Ar3ly=4ET?CSeP$FW&n*K6VUwhKi)A_U!v`%$U`uT@P=E5 z)=b;7+(^E$_FJ!u<7_w0-+9O2=j!jgAr&wI_^1Qi5nCNf#{wt=?0spre&_WCTL1H% zx4uV+KPW`Ac+26kOE&G=k784BHT(&EVk1GbxAuwE&PDpI6|tX{b=<^4xGF$Y<{=PfPT$xt^ZXm$u#!90 z<|M0I)|%2cy)~@l?l--)Aq(A&5O&(1z3Z5@cZ_-9ILTs*|o5QmnQAv;@C-x$^E8Fcr<-gph-acnA)D zVzY&;^kb)ZvcVl>f$#cSnGGA0YV%ww*2Da!GFI*0eUtgHGBym0WMx%sK#rr#sEW1yK#hX_gbLg8d{X?1LG)cHbnZ0HZjYFfuG_yZ7KQ4k@Zsk9mVq8c?WS6RA~6c1$tU1Za6#|rKT39AgqOsa(JyzWIMI~7!U zamx)@=xHB22YL*bK?)rNDMZ*dNLN(Lc2cdSaTABBZT0%^FjF=j-s;^OHIMWIS|Fi* z)-NXeZlI^yq#Lm8A#qbfY;^EjZTdD^c~f#sY>b`9FV8l{t}e^#T<-Dj#@Q#{mkLjR zGd$IX?GvvDKRkS&_=V28jqlU3h7to0z z%DD>;2G;~JeXoSCLctPox~4W3{I+zGDV-57E8zkmx#Z)<^vrlaRBsmSAE%-Lx(CGc zdbLoQSN4y$BLRBaqwSA46np0J1LEff8r3b}`%rd5+e&Tj#)Y%ueO%{5bKz_O5vTU_ zHEW(b&ph*LVZ9miJFn#4HE?7$KRP&`E}~Tq`l%@iOt_ho3Mvw>1NNrKW*n62Ui`XA z915u?Gp{(E#~1v z;=NG*y!Uyxz4^JrNuSjlNlxocuaAiP7N(S$cSL*-JkL2i-os2gBwl5<91$-8 zaBm$EpFvm$9~nn9fb93K`#&7u1KzpueG?BmAd-TTE|JkA_ZTr|?5Mpk+t3niD9J04 zv%$R{f(FYpxHm*o3F^$wcX)R1cvx>m$9epuU(eatZ z9S{XzRCjJeedhY32@Oq9eUP0a&aS_eIZgIabr0eO}^Gzjf+LZR$#CKSf}XO3BZM!c+?xiQnhFP)@C z^kx@`PMcZB#cQ1Lc?gp!)wO7IFhr2J&EjLhmSsNqz-I5v;~ZeGL`7=-6!qqog#a>{ zGGGAsC9kp{@)!U(^TfpC{JLun0Dx}hbaF(kzu@gNhk!y!r8}@{z@l zNPR-47oZZjkO5Cmo6+;*1B-3KrUIlqZkEiCH-YJ_nIFGCSR=BG)J$3sUkbMP(1Q40 z!YxY?Ha)R=qiT;=Iw(`K&@!seXL@Dk(uMJE$8%`!ex_~2BmTMs9StYM&^AP8nH*l5;+h8O# z_y(3vN!)1eJ~3X^XI}9y1fd%cH#;P~4Fq_D`OAs%$^fNnY)aR~@!24>`HMks#OtfCFoEG5t=950dFoq7zdRXPG&t#TzoMmKBnR&~fy7*o1xu=8l=Z zM%ru0O>~%BW)j~6?J9RL7rEAOkpo2k-6AJz+=X0W@U+l)r^ma`#acH+R%h9qhO4Tc zkbp6_!L7CJ9mMvAgzce*|3!Nj$(ou$J41`FW53$qbhnu#MJ5u1#4gd&LAVe(!TM<7 zw5Bv&kX;1}gkEtvYFYw5Wrz?hn-Q z+osx%9LSFFenOs~8j1akHHU_5{cl3lo3Un2NK8XJ?(=9T9fQ)rj)+~;ca&Po(3jnE zc^r$xs)VV2?HTa_LIOBUP7-+TjQAuZcRy2z^WZb%DbVQIXF|x_Y#ux_J}Zx&x{EYk zbyoZ$sQ|NOO5zN2*IDuXP~_XQ;x(xYoOBoR4m!YsFfCJz%EbLzR>CVy+t~;&u+A(w zJ3f;<_^GoYAY5s-pB=fqEC?Ms%&FL$oIE)$=KZ<8_* zW3DudGw}+7by+4p1_*d26W^0rV;ymy$^ARxP5eEiBfcj-n~wP2DD--VRFOJ2-h%26 zI5&P7%WOS2t~13a(2S0~qgE3W$HHqO(YF|OyKK^2CiN+U^L>bqz zmK@3B-k_drVW?fmYzycIx`Y-W$?su$ogc3n%@%r)5tosAMj?nl9`cujQkh~{;n-ps zTVzlWxD@s@C!HT}7=%!>x21Z}|D^>Oh_MB1rF0KEb)f|ACFX^nm^ip(8XwHl=f|fG zR`9(7MU(Xi8KA*wa_2Jcgbp8>)>z(*myrVEt@=J1QLTOMN8TpV9w3NMK_jqerk zhaUD9TT!bqqbs!dQIzVkWPiwo@Yj@gE**T22Jarm@$5_DW6k+qmu}|Ym&Ch{4jkUF z9NMg5Rk->R51vRjs%gLCwNjv=K-~ z9D3kq20k36PujQJ3QkMI>4v)*J9FbUyk{Zv!T~56g=-eIXNWMv0}N23Asz3GD?{&{ zR3S)X<6jEeTJOa4fyYcZiFVi5ckaRXmkTP)nvV7pK{TH+ zE-;+0NCX%g*(Y}%-VGR_oyxYDlD`&|wyyrAJs8mjNPjNXx83%-&w%1{AQo&O zGut)nE7qZd-Q=^t-rHgvOeMbKw4>4Tzv7ILLAtWWn7G$Ljf8D?%$H#MB4gmf4}6A? z>NdLNg0&_uasq~@5xyHUjAgN-vs?{?4W1+!bjG#cp+_Z;4xGQUESi&*O!{1O7zZh1 z@Ukw12!wS(V34(eazGTU4!cw9l!#*#yR6MRliLc(d}QiD_j}ByeO19nb(+@sg`4gMv#s2`&OTtO zBQjKkT9y8=VUmYMC@G~ND`a2#WP*cI_>`q6*gNysB8s%yZ^2S4i*|TtrV}pOJ8|{L zBWe7D8$QCKvvRCtf}Nmpc~7=y;F}$wgc*pEyw*2yAcTzv6=>E-g~~)2*Gm~{okX+M zR$ZFC$ukfiI2O`ZK{<1weuR0?RiSRw>>wpl8?wk{Ze|RXQvJm(09xn`Xb<(gc#&b1~POr3<530vMRW$nVNa&wmo_# zGy@~JO|!?lBn?QgY1yNpKsJa);|?xC1MbF^StIv8K}KdErK~tIN3JIWVX$u@6JYJ>C`ppK82|l!oK*y!X-4 zMM;BuaPl7LH`6$X$f%SSD-G_~u~gJd{uho;!chT3BjgUcr8L_ZT?IF9(pH1}jf@J< zF`%7741NJ_S3#>3H1Nl*u%u!aNy7XZoSR3}IuJVxF8b+j@SaFR$k8RdJ_;$6rE$ny z0u%!>w-6xN>ph~z|93&(OzAKen{6BDvLg$YNFyCl9|4g;nCK`3-AX%DgazUs_F{DG zoy`aNAFiv5R-iw0>&64_FCf>i;L1X-T>*7TKxi(pgKYI zIC;;gc&S2*p%Qy*h$kN?@L|7;AKVbipCo`Rv~1mqg4nYpab=0CaR48uwU`kyl`fWJ z&MeJyu`$vVv z(Nj+>5Mj{0*5Qi~JpJ|3MlqM0qjE{_%1QRhIdjoOeb)9V$A5w8b+XtU| z+X_+6rZIcDO+&pl4c86YhNJ1Nwo>+Pn|-Xnj(`40^ z7z2!ba4-}D4m{uC=2wRye>S0+@F{7zZ(gMdv+x>K(75eInX|q>QYyG_hHy z4BmuJ22&X@7%aN11*0GZ7_<_LB4iuF$H4@)IVU(y*<<+_E7B&>iBI5^oj~BoW9{Jb zhReo693k4v8X@fykO-S^{?Epd~Qf&EceS;L<=!zk<7RfKr!nJ_!4yM`J_tRg0))Q#&gXDqvN1(dSXcQmXQOp;cJ>I2f9j#fZmF z6-2r!>#&0{!wxy_LuRT1Kjw8ZXacz6OyfotW0wg-0mZr7DI^ibcN)ehW%y_w(j#Dc z5X6$xDNa{mmPPTWi_nDcXWPO+gDv+i?n8qF0pzzd=pAtQ)oBNx%8P1sb#nU79!4kh8 zj*vD4C2);wV>;>gPxtT#fF}Kc=~BNbUFJ8Zc{{Z~2xHWeX3$Q5Fv8!qwz>Y0wz2+D z1aI?)0kGk15r0H_xjz#3g8O^4?d6YZbNtZ=xilutbtdEQ2`7iK>8QUK74KReyv9~AVz zq1`{Yt-(JeeXxIMy4F7|J;y(spAaYW2ndJ%k?Dc{QR%+^ob*utXkF!30t0i6?&FPs z8Kc9jno}4vw{}6a1iPIH*r^9X&ts)_jRGgF#0&w?r@n~13hxMo8gLqjZWASrN1&U- z_9UMJkhzM0MP6(HwC57}RqnFPujCmBaZDMgL~{?Z zD23fFEL26RdIlMCxG<2axB;aq5za7H%Hv3c9GFL!1D8`&l$;1Fh#ew}Haer48MwUX zNFtIevcWw8wfnlPCc1BgD7CR-VCsV=!6C59F>-bF40fORxFfkE67=6A)a z#V@3)G6;2AVxPIm#yDWA@ZD4=R6lVW6j(9PvP4^$-UwE%0H$F5M!-XK;f#c;tU%Qf z@Louf*oPw?I~mICA{|No3LgIn)tLFq$DsTbPMW_W`iC-CK$>tlIS*?w9J2+1 z&n+p4l;Cc_B3-Hb2h*{#k@2~7B}sw^lgX(EwCjN)1ypKZWN_Uy5q?ggOu$U`dyS1< z5636yn$?Pb{A?BoX|iOd`!uP9712?$mn(#9q9+X0<^&(sebr~T9G4shep>$ z$FuL#`99q|m{dCRfCEu*`cggpR4ntePSep-^n~{H`oIhIffwl!)WXDcav5Zs;$^8~ zt!AxX23^?*KtT_6fdZjm;<{xrbS=8qGJb-J(?wk2Xho_>mo0+>LJ>>#LLDQJsCzF% zm3%_M^31YSxvdpZ9`p#^!;(Moj!WVZK{{ z`5h1ry)kq!-TVwO-V=ZHP~e`a2mUGq;~ebi6n=m!Tn<9)K>)Ip(w~}P;xr|ZCXo({ zEYOiE3A5SZAS3P%rb>4P9p%8ZG)BICLYQil&zY~nm;QPNeWw|Af`Wa7Q8H%eBW)V= zO2jKf$O!Z$`ly_WKB^DPspzA6PP?wJe6M#SiwvQGK-i#=U)p+?sHO z@;K70tS7swLZMk^>8}T;Bi#GxR?*PwmQj(doH+I)=mD7~=oVy{fCt`c3JdC14|lv% zQ%A8hKuv*-&M7!6F|)dZ2n#`hAj4^=>OztqQ1&1ReG^D*Itg9(#I~|Ay2S;_6fFZ; z2_5z%u}P+o4nfJM2Bg?0AjM4qDfZFbm*F55{1SZnob%)d<|D;rc22c z!X)7bMOg*>a{u*yQb6bkO17Zok=*101jKc4^&SEaxC1gI_2>&z$Li55Qhm|Y(HA0N z)XEhJbPez1c*p9##wk-hG8Rl)gITeCJ8m}eA2+k20?Y?dySS;5(MQi$SV(}^5U8wv zK)8Pl2n6X7p~X6O0Um)+5VJ)nE9i{S%yyjefnsXc7{#rvQVSLYWV65pl|cuI%5n(Z znyn{`(5;+cOb-xBZi=BJLh%TM7DvZrkY!U)bhjAYf(*rZ7%d`3i-}QmtuJnRu?Us< zE6in+GaL1?n1z}C3T!2d-eQa1VwihD5JDU?xC%sx=prJ-BDy&IB%)FPwN0Zjq7Rp& z?p%Rlx;v+JnU=+;hc0K#@E%O+u8(MnaFz^*{Q|ts)e|5pfs}e;J|{DNuK;*D;j&kG%B*frY2W%rD?fAzFsXJKHNV86=_pBh7?VR`(WV_m97J%(BGv!vm zjk&ijp9Lqq68kErJ)_H!gO!VorUNB=BM+NL0yGWKzB#GnIpAB=lkvN>!vk_j z9FR+ugP>f%C$$CNpv4DYf{6z)uV!Ix0-fi8l#9U^ihz$EkVDFWK3S=!_ln$DM8l7DS8z3%}+zEdI(vbRoGh zI)`{788CyzR1p(0MS`3tdp!$`rC5+d!ljD82Xe4=!ObQl;A#foraX(AajD{SK!ZdL zKW9->Ow{xMY8*ig>$2ZM)XWGllObx*2v7rOPoM|G1-c+=%7K~U05h1j#0(e#nBno9 z{bGRv>CGnn&8+Z`x0JiXBCw|(1JJCby-U`QkcP+*tiC&O{+&2}DqMY2(+~g$cmg5pptScsf0FuHUKj~Pz2fw zrlE2~(z3!A-%)94sEUKFWfOS3t*{@9FSf-a6ogUoBxxp;i&G~{sG)>soxg+& z9C!2pl@rBQnd%lU{PKYivK!p*A<(5L){nPFA$A%d7MfIs+5pMYi zY(k&bDG9)q=y_oh!3`7}r&?t)q@vTZvBl@Kf&CZj9VXEM zdVgTWPNEZcmY=pl1)uvz{E?t`AxFtd0TQuJ7A}$S_ zO}WxPlfT$Xo|WqkMqIWvV#tc>gBGRE)`vpfA+?hhUIMUTDs)Ii6S&gulRnLLf)AfL!U(`-9|Q4=R+(b@6Q8 zS_9Ci3QhnxkjJ5BcD2%Nqh}&eHUfe=x~?GtJ1933x=!z9@40&y*HxhkaNH6s(Ec)^ zTkv4e0&viSOt!08MjuAne(e(B`%ThGigZiC#7;qVdz+EZ3@h06ah9c*E8U72F#| zfKow^gmISMo}Oe`U!c1#2*;iF*L&Vmg%#}pU=kD zF@@(Ti6i;EG?mfI@Gpa-M$6XgLtqWj`>ebTA7Ks2V4IjY5)^&*gakCHOHkmTMLL7s z_7V^fM%@(1ULRz()?kZ%5bQvhB%FQ(g3Kh#waHAfT_-Ea zc3o5+ox6^StIxJ}%VpN_QZETK!(5SMaZIjtuoSn~; z47z1Sf>W}xz|zk4ygVTw;ZK1S5ZB?FU#N2n{4UmYtm;aiF3WJr)(U7!Xu2xtFR@@g{KahP0o5aVwN9c7LpV=HlvHFV4NN46I0k+KSbKvY@v`$i&= zxf;Oe*PO=4n{arA9BsNas#K=C=*2o>(5)a} zG6fwL_N}upwU;3&iv3ZHo6MNF!g1a@`U3|_58fBu0nxiN+#fpmfbSAq;SC|k+T7cy z>Rgy_UTah%#}-+IlB}y}1-tHLz$`#YLX{*Sk(pux&%Im-lIX9HJ85S0S7if$z5fCV zL7KU$zp6l#&h`D(wX?qHcp{=-aP&)#wW+Q+7w=y7wOiT|6Kieon@7M=e=gw0d!^-!T71N=tk66K)Rt z@lSOzeVf$aOsT%unVJx#H;<4j^ z5KlE6lcOA}&&Sy@0e=M^#H>Zx*RtqGvwmu&&~_q`+&cr%=!Fo{xg-*7#8U2*MvzOg zyb@@z+azo^Rx|K0{NE}7B1-BDG5=P5GLG}l(^PRVVP%-WmyYmdwKG6J$ctN0yf1R2 zQtUM%<#@aS1;xKYsv!ar=Co!tB_Z_fJiNFP1PhUpR}t4qjJ2t*bljvxmx z+-H)`0)~|xNE-11fI5BSfSwY3>u_)i|QMm zF4@&gc`QWz(wsZ=LQpQ3niEONj0+t&LoCILeIouArX%4OOmKU2H=&p2ISH||cB4Vw zINy#n$u+k)V{(M6vrs8Fub3NGaARccYj|Ym$@cM^OJqIZ=^VOTB3mpq>jx`;@a6A~ zqj2kHsrRt2QU^T>vn<1@g_$0BWNb&oH5G*XN{-qF#eS_8Z zTx=;h@hqFD- zMT3)_Vqd|wqGVcBpy*!#gJK;#Q70Bcf4MLi_lTb`PY+Q|#USnLamxvMo$k19sOncC zv3%^o-kC^I0L6nhYVA7s4g>1^*(mPCo<|n7Q)KbTJ9ypBMEE51djUk;S2NtKP79!ULW3HA#3Z4 zM_zd^A~t#u)i>d-oB7W$wJ%Qh*`c=BhHxQ!^@KTUxY{G1@A*8jwrGT^FmDc5rB&ca z*0a=Zkpn*i@~K*NP@D)mbbfU6 zgr%*~^wVomfX6<#GH`yFA!AgJed)KiEf!29EFC+!Mw2da$zZserfCzvx{yYyb*#m- zs+DPFI`&Y_6>`w+xixeZ56jpR$tTP+d#FLeHF5fSR~djlt|S5e)030_`uZE~dkc=J$lKf39xa;m8e`Bj+IkBzw3VXc+eTlDjNk|@+q)cXvDsxtu>&B=* zMCTR{F$?!p10la&zo)8h;-N&$U>rXVya{z&mPH-`cTVHTbGw2`Ad>HUd#a|A;@Ry? zD8^O-Hw~KVv8w03alOg8jjR?GQ9Tf!lGul5)Nz1(DJr3&0RfcOr#3ll(F;?>a)^B& zUCc{2;EcKtA)t&Zjbz5EfwLj?E=)(4CZ7RAh@v?zUg|dS1xukAw!b{9E^WbYdJ3OA zHKf>1k+d^K7X|H1G0tA9%_%bD_fiKY@%6$LK85q*HU~Z}=Jvgy-uRwbMmd+Eh9df5 zxiiVZK@Te?KMJW>^tENd3DVunLR0`e*`A85OlwA`3E8_dZ^@gH=IC*%?;<o({vD2&1u9N)AsF5OyE!Xj{m*L zB(dy^Ks)(oB{1=_OsZ2CL#Bw+24SPcbd19}SZ?Toc}}v;a?~+14om0^bX`tb+%c8B8Gq`4GBAiKZZ~g)n+SbN$Ae8uOp!q-1ijG? z(G);sa?EiPIMa^D9GR9BVK)L%4vY&uW?J@`Be0(T*0(i;zS|QCrA(KJSgmj+3j;wxkfZxMi$L_k5f)uwMzrC=r(!d^P4&ai z@-|hEtKbS2rsu%F?liQAOreMzVg|jHL~tNFPmvO2z=Q!uJCjl#N!sNOG9!!O=-hJafoq$+ta%2#G4W?=W_;s-vJ5lukubMGI^`20eK3IfZ(G#Oi*=7Uj_WUUi zSz7aioU`Qaox%l>xVMven{2je8~Xu|42(p~ak zPJ>AT7`W`pK*GD2Fyc7B3mvuPo;V;{ppBZWQrM+E=6OBLn8~W!bUF3(D_l*NCy+on zL7jkvDiHC{QXy0YV&p4K^Sm`={cczWg$SwtV59(G>xRjyk5&0fnoe(u*o^^AcTikw z?2@qYOgG?cHKcyPjY{cA2`0nk2c~GAt|p4Gl=Emz5#7MEN2>uE_DHfKTBx&Yf!wbr z;%cS6VebVlj;I}z1dOf$=N-YTFz0zLP zz~B$IX`2+6L}?M6n%n<)*kB3`Vvu*ypy<}HUcrs}Zv_>5K(lEN!|%FDKrJxm$B|%5 z$u8!!eW2Ueq_A|h03c%1nCJIZL&(UTsj7PknDR3q=`(OvtOqpdaOlFrA1Nf@I(Q7Z`EZ)ryEmpK=9&LK7AF4##~y?E z5bMM(X7ByfM7Wy|r84QIY@HBYs6O#<#^(3rTQ55N{s*8R17(jaBJ&>{8+spJo~3X3nP<<^HwbTVWH{k(fUMy%AkqI=qv+liMd*>N7GEn3e|a;$a%$}MWaxjP-J+y&+Xam^e&MHQQCrmLntFyD-5gM8i=9M*^WkZiP4 zSDM$RtA-&XW~cFWMn$T!A~pIPJp%vE#UVxb+QI=#KthTN3^B5pjW)w(sKGc=%N|RL zsFkJGP;#{*aJwF1E}Nn1;5sYVvCwzI%C5VgN3>RsA!Y5l`v5`64!>L>l1a#&;oL(n zw{Ul|7e@ zLDsyqAAEf2)}T-ZhYiJQ6aMbDon6+cA&#>+e#Q8M6)}A8^qY2kYq7yC0va zip=B#RH=l74&_1q>f^bP3Q1^LKt=4T)qBx}!O>&$MFyP))ut3Z4P`~a|G{1KW4Xp|bJErpqgGqWK>cHFqOW&nqBfiqs&_8IY9)d~@&!_QZS~1;+ECe;^ct&)C zx+OSPg>Vgdc(TW;Mq;H!Kqty>duw~Fs#cHx{{%9^Vc0X~yMS5XEfgmvx(?wsPH>0< z2yWPDQC8@qS?c<3fM zH?rclfjJ;0ui;@l9wYfOIGCsR)l)H!D91`63u4o(rv+9$D6mBW&n-94IaCmWrsYP= zQaw&o?3BllMl-%{l6Xum4($?liquiPA1E)78AW{~LgoKoY7oqV4yyg(5Lo3c2LGiU zk9k27w;Un@>n%=!<$jEJkQ!h*4pSrCXCF2*j)IQ(w};{0RjlHaAWZq;s+aSpjV*_( z=}wO8U37$c)_KkBf26t*QD?Uwsg6YHjVQf`!;*60;7xPX;kaAs-*c4CyFTjW=bZr# zB4)ao=<*W$diYJ5QAewaghD_~4}ZLK$1`(}R(qPQ4Q|Y=Ia*b^zq!LadbE;j^>CHY zq3&n$-eg)9DT$Ve#1`|^T(!5m{xehZq-r#4j>Cx!0MqqY)oNxuqLexP7*$`jOBR@Q z)G!YoqgsM0`kP+!R9WXLj+>`iamW3S=BY96GoP71&Ql|U443nL&9Q1f_w_r>_G7c4 zmYdHOt8z2yK0Qd`G7m&9}#?F3~Qk0`aLJ~_Oc)FGA(9xjEtB*&O-+X57JYLEDHMuXP^Hr()(kDjGS7k@flUL^) z%WjuWZYkf74w&ilGCcH&U2p)-W~V*<4B;$KUT-d)uO_%xZ#Ux}MqmCtU&-x#Jr<~D z7neuxy+B=^Bb+xEs4c+Xo$YF-yLP*A7OGZaW7tAh>wet{Knm&M1a&9W zyPHl>$9ccrjxKaFpC6;@%$DO-g5Ps!Ty>%v=KgxSdHO^(&3len`Ul%K5j^WJA$m7T#_bFvy4 z?}yC_#OHoy>&Y1V*Pb-roU8^SbQLLNJBCE`NW+(?kxqlnf;-+W#j8+UM$I-Ar>LcT zx#|=s!5YnmQ`Btd6BApimO7W1WlPnO&iUr`rJ(Wt8%s`AH#yD)X8md40R7EVr>WY^ z0EU+t;5QPCxIX}YjYT-p34|x@PeeCz1JR%x+u|dl8i^RJ?eG>DXdky=2XHX*aDPt8 zwvj(^Bn)j2x?mN8;HZu1F<}}4{SBm8J4KS8#5n}pUFZ>-m@diBXOne%sydteQZ^Yv zNHbV9*NjGU_vxy~tVRY@LS0)ZV}_RaMme%!6Rj4LaMBcY2K&(9u7!8ynMnDDWg8;v z#Mx42sIE(XVtSvUYH@DOPFY0vs=?!Gx829Vp!AD~F)$dOFSX`~GgPlk4b`MDL8AdT zy^1ruJ=Lmf2upq{_6kFg3d{tlx<;OG1-XD}3nwoL4byH@WJ^I>%zrNBC}Mk1ep5_? zlhoWn`7JRK^8KLvb_Pj1Fcb^E@qc7Wo*&iK)F%uT)t=Cu3>sEw8EikITkw4XOb|oO zfoH1edk&>)Cg|pN=s3_#N4IuLLLXc8kT8iAt>UqMrJK#$XDWYS6B@_m2JD3^H4O|B zfGe9|NrJdC&1b3Jjl=R<=-{rHE#%-}66j|*U_9w8WJs9UfEZU8OlHdqbsy3kAX1rt4rRqXjmXa8?LHK}UO{v!K1Kt^OZHQTLj;b6+ zhuu_2LgaL)Qr9sNs&v9a_J?Zfr2i>71vA7vc#i7t)R+&>QIj)*M`W$l%_zn~b$U?n z1e8F0CBZ>EVE^eF#(0M>6$cp?4^6?v4|rY*Ko$NC!T=9i-?kaCW9$ge;0Pni-(=?F z%ovF5nm2qwu9N{DK)ZTD}0iP3F^6;IG}3e2r7e-QuOjOi1*@E^Uw8|dFgz08icWZS3pE~&a|&k)y}o%k`*v{U2WE_P{Z);ZTWWH1!^KbO}YRXuQtbB zfVuXJx#|Mdd)7GcfB!Ju#-GD6fLJ#4sP@zmc4+Y!&O7-svORTV@MUD@FD>nZxPQDOFn6avj2e>Kd z6dg1PcEU_xrE_GiIR4Q=YMOyDxVS;@$ca2&Pk~55qu|l_n^U9@TdyZ9hxTA16bTb_ z0r8Oj@Ws_9H%4mVQReBB;itp4>hK-(>>Gzk<*Dl(ELb%s zA#T)<9FYHUxDQ0%;`sMF(Q)YV7I=l+3hMXt{pOL2FrTY2AM|Zmk4KwhEppWI10KS$ z#j8ASQT%YbBLPJQ^Z5?@T*vC8?JSdOX8Mmi71ry5*DX4^}#F1 z5pQ=o?M;!04;tdz&FCrR3T|EaewTfBH$$bQH^8ZccjQ3w6BPdvx`D7_NhB=rLlj|F z7CGe12)ce19$_H{wgosu6qRskvjj|#5sWQcCyAPMR_g(s(uj;&J-kyIG1r`v$Yeqg z&Cwyc)jV*qI?$vpfsF@Z6aj*_VYc)JOgtw2I+w)x&!k-Um;zAp`o?&J6b3b)CNu4hf5N#6N+%6Bi>;M=516EqOpkK*j@DFJMMXS%CSC zXc-)Q!*i!^L?gz=7Q{>T<0gQE_i7FjL?HW?{R)wYUsHAF&zGuRUDyI{w!&$RlP`sT z@0v?h!T8~PN3ncpSd7TW5ZjM<=~O320Yhy+u5--4?@^V;zf29tY!I0rWOg^Q;0FsB zudHGJJA(e-;^d7z6A9J;JviF}(+Kroc*tfGe-%&|u&^akv)aCR37;-m0d*te{K3+uErlS9PB6nr8NtET^44QgVf7`SFIli z3)RBeJt*G{U#Z}6i2jxN_2n>Bov7z?6`8Mpj#dZg`Sh3K%TnNA0R9bzsCVLeeUEb? znEJgAxcU@w^#S@mXL4c+_6YMyXA4l~r_NG60OH;PpgjpG9$bFGghVMN2o8x4 z(upr0A!6{uSotD-;(TaO3B_0_j5Q=w5oGJgF}2vm>SWf4%v(p~>p+s_%#j^6XFD1| zjcXKIs3WV?Cs=WJ(TM0sq=3!Zymdr$Pg?~AY?LDdL9rpG+m$dH@ic(8W&IJ+$tVl1 z7{UZzs{=s5T|+?VS1W+jk@;~i^`aUcAt00i@pz`iv_BsXxj@XMM3R%Wcx(||T>L8d zxcQL51*g#rWN~_UV!4fgUp@^KI*5Sy0>+7v7_s;|I0eJmfsuKix39hL%))(XdYdy7 zp(1#Or(M!J*oPe}pnC&g`o>KS)K8)6kFW|d5a&SuuMR*uuDEZ1$l}4G>GP>Pbs25c ze{--_UXI<7{sP6WaG{Yo&K$K$jqcN`H@N!8Zg%nI=0;x&AHgB!zEx^|zgj5ZbTyWH zt3W|~Mo1g%MYX=!MWr;tBKnNk`zm!m?}5w=HzSCJ%F)xwW@WR&6L$@bQQV>G?U?0 zp+~9$qXm52i0vnSn$0b%)to@>ovN`uZn_v(!a=vLyH+iuvPkPXB_h6LSa|Iyo^}R{?YAK>|BG z%mRdGbBZ+&FxI0`b&xnIQC*}#Lb@2gwZWOM?f*3EjT%uDs(aH9ePTW{Py!AxvFp`S znZG#t3D7-$9^-^v?AH^7+&>`waYxrL)W3m;HXigNA`+2M>-FZ~Ig00JgXaQ}%k!wQ z3TeN?ufp$dF~Yz-Z;FyIa{3P1Loim)G6qzlBrCQnY}kj2 zC14z0P!%d&2$?*rkJZTm`+DZX2PQCx4xo4j6|e{7JZzhvGQxQ3^>e{D=CR-8Y({-! zw8bwV;Yq0~42}R2aIq@X2kcbY%Kmk?oHV4hgs8&_l@ zWy&O(1O!9r{dbec^!_o(P^kL*i+#l{^bxLzFp`lWu9tm4XoWyth!-|k$9x|{2>`MEh+N$9$ zf-LEM?Fxtuaqxs~@JxB6jt3-0g^rJo@ka!b?Fs@3su>j_1s@!&^^QIySn3^wps*{w zLy15m)1l_A8?Zy1haUR#fMCHd7E$al&jlG)ak<^<0ya0j6)Vwl@?}uWc@C6|z)<)P z)O5asXx}Wi0_8kDT!4pKK3s^0IzC*4hvsNdiWEq;>gZKn!0xKhVDee>?2R}-wu)ki zOdzI3VR5z%VZ{rIT#+pi1#4VtUbs>99n8f1V$rZzU0Ce0PQ^~O#h931tRO6gKz0_u zOF9)hO^O}N#Qb8Ih$M@ZDdx?aFwu5K zfz*B_Yqzrj6`s^iRltvs(6t!aUkB$k!Tqe1g%h@T6j9|;J{CcTupCmDr5#7~>M6tn z!22?*k#+c8fs0{EnKOQ(x*u=`XSQ+l89DKY8&X97sAlrnos&_zmdVSr$#}Dq2}Et% zJ=y&ECorQxnUSgkDRFjH;jAOug>W-NUY24POBtpa)2n$sj&?#}i<6v?;zeWIij!u`FNS9uaMkmV!b=zc5&oLrp3Cd<2?eP-3SzRir;f zvibGRs_$V04k8+Wz)BU6@4M(fmaBI;Q}dyzqAZ`2`s=w)ra)Q|)(7xXR4ts711d(p#(tv=FoSZeTFDHj(37hZqGxS8O83V>osd6Mv@qW%yFX)r9N}Kmu3_Cp5_M zg-pQ1zkmt+8C&_!9Xm|Z^ydyY^ACd!Aak(o*~)z$riEfKJKT;yvWTHP;t(jVG<+12l6Vt(XY(;aED6Jv20oE7piXGz6 z?zSBwPN#@}8J=*N<(LLMW-A`6ExQ3hW|b=RpKZ@#&mm3g#?Y+l=(q9u4gv&0BT3dn zScxju1985=y!mt0TvTh9M{tT-Q+BJ;6`YBbA^r`df}=sq6~^`@SJ;`is@~4CX5ph(M@>ayiuAP|ZiNcQlSD3$NHa}|O%O%(nLxV{gf_f_b{O3;)ocY!-@(sK(LIfT;y_cuXHiFhf+9e)fZ#0 zjI5M(9sOmvc3kRW?J$#XSG9>?rNCwaD}_1pc6Ah5_|xsG-=HtTUIx9R5`kKQ;0Ia| zzVU~AtHunvL-mT)aK8h?+J1MagJ)V(h=#R)yAxXbp*(|CTX%9SU>dCbHTa*bpPW@p zgR#G}Q-S%%9qMN>YzINUP3D$$YEV*k6EtV?B#h(Nn77xdRAK!>h+;KlT&DCF>Yy(5 zn)d`@tuiP50#SCbd6k_iJh<`=~hrk47jApa=oOfJMcJ z&IKA4czo!;V@<%(tzeY3L2F`yUOSMG zu?^JoETfs)t`D}&b7*nexdC8z;@$m91GxqnOo zml`$U*tK;pNMU(7-f|x4ptu-7!GdeO6r2e@zf+CE)ERh}sxBK0MM|ycbm~weEJ#$V zG@GOEQX|XZ;z56d>=3~^l-AV0-F=rTD<6)pa5CuhHQAn;Z{EUJ=r_K)OC9JeFjF^R zNfC{Yj49OoY$4}3Aj2$;X4TO)33Wk%oUI-tgV~sxpJmTB7vLG5GhvX5c)|#Fm9QYu zZ+>&JN*ecWH3k6fb+>ArodXCa1J2%@v4;tm;yJ4h6Tk;@pfEw_)(Mwp2eb-p;L~@j zz4c%ptA@XW1*IxyK`})gY9F)o9`(*37!|;qj|TOq;r+$eK%|)xQF|Od4y*tgPSyQ1J@Fj-lr-?3<$DdRC4HK7K{naKOj#$cB&Xd zv%qw{Uro(ehZ9bh>MZWP+^D5VYiPS}hp|Oc^9~dMI%&-toPbV--n1w5>=B#1gmz`9EPAeenY05T>xdhH03}Sv)P!RTP=ffd+)-fye|8Jip*( zWHT)rRYm3&2QD2ybwYO~VI4oi%IN>x!5uiaA}*MJ8_zJ|stoPps*GA*mC?X^GDh;A z47ic3=lx0kolg3n5&tgQ05*UDIsV;FTg<=5Y196_4v6(W);S-4CqksCD(=aJ5wA)A zL^~@)4H!`VicFT|^#U-m1^!~}zZ!65R}p^uQIY2A`S3TV0C^%LN&YSnK@v-Egg~9d z{(^CztZVQJ`F{!M^i?<#p2FXPc7G{_m*d$v(!WA*cqLvU{wkvGDyOZ*znbX0 zhUi?)LAcfdRb5AvR~2`|Qq>4dPz}YN18p^;@C5@AQ`>y%{GoWp1ToGrZeR1`hg6R~ zCz7`)QK#Ed$W9zWc6$CHHL`?DCKgwW^#K|VSX||tw4C~e7?9LNHItZB|!{a|CIQflq`f1RU<8LN5%x4eKTAtyN zT@d#ck|a*Sf%gAE!hDf{aDHQ8Ug8?%zf4kng{b-?QS~ZsjQJC>^ctgj`>*5pe8hi) zwEHH>^UuWMTO{hOIOH7h-)4n>2aNA-^RiC3&*?)XLB5rA=Pw+ejQ(qpwiyec**x{I zs>ydJuX;os5Feh7*so_kqWYDDRq6)O9dWnzMeR$`Vh> zOudhrMPTg4->7n5x-4Ee)xwt8|}^NLZsVs6p#ImXC)jn z`~|gl_5{nub6-$B9Oul9*KJYfIL-^^yO-1e_l@Vxz?anlkjdPUU@y!Xj*+&ATKz`1jiIqD4=fn{%~-jy5yF<5HAh)`e!ltgd}!eafNH`HC|$=o-=)i#^e zZ>pjAdFD+ub3i!S;3<6qzB4qK9IS^IU4~iA^RKBk_xgXE{FE`v;;GW?VsG(p>Rpp_#3JR;zmeMo6b!Gtv$e>W@a{S@bF1>vu~W9H1^9V$tJ=SQdDvEd zjkz?8rj$JJZ5*$;!rb?^8Xo=WwoT@fx7CG$ZiEps>)ux>bH_VsTy!Hpy@OL|7>Vk4 z)ofn(cKW+&55CKhyyS-n=lYm=`(1>o`r4Gdhe6x+uvz>bj_`5tSlff|sg~9dr=3`N z`lS_CyOu?H-e*(!z8W8W%fi-ZE`Q&it&=JN;65SPgUQ{1++d!B@E5{=15r~Tf2=U4 ze1J1kSG|YB&^^uew^gnA=mXVt$1V)~Q0-~^`!>$Hfyb9%_T|;g=osdaa<8v>@k0m- zwwGllxeW&b!>$r>8|Q69=l9ulhj*E(y9R`q_w{372Jt{Vu7&S?q?*0IZv*&!3I0$s z^{<_Ak=l6KU)6(7^f^0PgUp$qsNvp~e?f^7+u@(QyF-V`ODaB9(`)kDL_9EAkCQuq zV=n(xO?6j08(;fWo$h!yvfgsD{T(&XoWC6n-Oq$>Y^cGkDfi?EWENW+{m;Q<%AQ6Z zMAM)|!)=-1HF>`|@b78{=;qeHtD#}N=YFN?B}glW6ago_HZd7MDugo3O|y?RUs&=w z{0sFcJJR<{HB>r(z?V2J*2P@-rK*miMYHxx@WW1|`hY3;O7)kIgTI2X(8bL7Q1uQ* zv!}WGD^;5v&F8*SLz5st8*2k#Ct+$Z&bz8Fvo!rfP3js(B}{K*c*0@HVspVi)Bx`q zz6q`6FhauJ_{~4mT*tl5*?81H)iLt$#J|+lPAB5be6zz?Igf38>>G7`Y;N9I?eY=K z!XBD0++hUsrWGFb?!Rt)u)y0-m2s}@G+OtX>O!wB`Wo;$sn8qM39lH1jrSCKrEZrj zV8&k>?X~gkV(&e#X!Ql4X2gakHNVi^`=6m=PfM3U%)t_kcys9zS!F)8u~WTZmDv`) zVwKtYuDP*?cMS$?a8K_cXvjb9>5V9WtWaP+@9AkXrOfMz)T7G0G5EQm%sUT1)xEqI z%K-4sow?Y=%e~s@$LP$Ua&MpLc^_>u%gQ}D4ja<$bV*J2_7>(=-1B>TR~CTRcCYfD z#Luf$-W&M2zuK$Eaf3Iiz0tj8=GN(iwI9eE!bY*@F#DVgabk`Bf7E>mm{i5NcAwKd zXY1~n9%f;NnSpbfWqM$SVVz-z!zP=;0OGDF8g*C#ipG@&g9$M%cwGt=6~(xtsA!`R z@2JEeqN3t*jSI#NjZusyZZZDvTXnjp*^Kx8_j&&3cOE&X>(u(ySKn4&ePvW?*NA2H zdZ~EMHHvGldv+AJK(dVRN_ApfGQx|Wr66zwVO`Xq_aL$_@r=p2{)h{^89fVwy9srQ z4*z&kZ0cs*$r7h_H;#_x<|Dd8Z0~MN(r8mNalvBk7EdXL%>kz*zX~5pmyk~&@&diiS)YA+m?sel?|Z} zEzjof=PeKDk27c*&WCA3wX2cK#dDSDHP)y);1s2Ms>%WR$mDoWETS+x*izklbc5z4 z&0-MzzQVBU!mmXTQ4-mCb2SxXbPECaBJ4&mRol^iFpc_nne{ytWsLIRF7=9T`8%Ll z>kO@?Hy#^$8cHmSVPHVAI(?hvp=IQHL*{A@FGT~c(;WVqBSNe-8FMG%Cl;UPK{fOu zF&yzc;I#P%8$Ht5p`O)Oe#_%sU1*UMPkst@o zWM_n<&6_6$cFu0zJjrR{MAHVX5F(`?KJE~-hnv#WT(}OMj)9%dZL)e~g%Uta0ZaD~ z{J1VW+l$6Zeq^{L8flng10=F0$4{3SX@`al9x`b7$f2VoRw}~quvFDaG{(hIMs|_C zUWGFjoK)jBPGm}7h3`R9Q1mp}1n!3Dwc z$MIBSa{K~XSxxk>pwJAh)9M>~^=_2igY7>+s)}*Q#ipy15kEa84kH}U>?Ajm=*wPT zt$}1>R|DQ%erQhuf>3j!@3BT{Qv|n(N+mcXy$evmLGho(?%IR+VDoct;)DJs#gvJL zl|C;3XWTEG96t};jTaV$rnQ`V@S%s#ICAPyQx2ImIS;5gtcmzo!m?~0*2DqcU>y^I z0<0ln4zPwGBvnha4#Wa4#;=)J?0m->%+1hx>;Pw}%6i7BMLRwcv*pTn*D*3Ndy>(k>YN|PuD)sDOT-UPj^C;Q6cOChUD>fBZ~SuC3>*Zrf{F9L z&f6R#W5IqCm&;PSeQS%!*aagzR<_36x0bTkFsKA*+7T=>N(x92_f0lRYInnvbd?Fb4#$4kjw}1( z$;Xq8-sy1xiWK?gWS*~diwdn!@5Y9{{rg-e?;Y8j8vZCNMr{Y6hQR&Hfxx^D0=CH< zF+4KMi(!$Jh6crNw(G!*v8W6#t~q}5nx3@en#HyDw|Ox+z=M8#&Qqyd0XmWt+8J;C zF=$}b^e2WCkQuHah7^Dsc29Pt9daL@zzNwOPteE{)&$d~@?`0~lt=)EO9=*etmlIv z$TLxn>1HhohmCNIPXo^zWVf-wnk6mUQOobpMoQliNrp*WmO{oE7axKMoPCq{2yuJJ zA;#F=Lu0FDSt(5Y0Ge4Bwg6a`rMH{`=@K$yNC}ySXgS3y@1e4_k>PV3K*5O2=(J}9 zwu$@ZTO~tDF$e}l$g)gBA!D#)xB#-;oH&|YGUD}9tSZ>N|8a_ytox}Vk|jRB(<~9| zry2$YrNX<+F5=axMncR#)k>tXjP{U~uv(?8gasvKC3GcUR=V08s>$`aQ9)M927u{C z08j$=(TL<_`zJ$Kyqcomq`!%f7ZYbrGkO(4Rs*G^EVi5Vi}llt(u&>2Pz{2mOnwgU zyU9Ajepqz5)ao4Hh7M*6Y!zmUacW|lF*JnPVd_@o?;*jR&JpM^2{igBB_|B)C$se& zFAu~pQfatH=P2?DQe;%j#C(dpQuCs25oRwZ0^pim;Z8R?1NGzzC5;cCB_>ZdZWJfZ zv#L6-k<}_}S`$=T7rtFo&oHVwZn5?+Hy<*?XoyhU6<^M?W{H<)7>9|Q=38Cchc0>3 zW!bSqvXEoXV@{OT0_N0?d*ml_>|Dyh*eNe8g(ppx8!a_3_IWBX7(2kjTYbC^Q;^IP zu3AD3Xg6cDBX3>!YXo}5$6fNHlqPrKco#n5ex-t>&Bgh1Mmz)I#@Z|#7hk4{%0rE@ z>AA6sQ0L^9uL=DMnfASJiNE;R#?>9R@ zMfvnlqdpBvs{pBV2me*DuaK1T<$?l#lgdYSLCJ*%5 zTZs~dRvXC}A+o@Y5k@gU1i)IRX=2qZW9;<#v0qD&U}HW9>DLJ9O8^q+8wFA_-QEuB z?I_J}AcO@V+^Bgz58X|`4z;9%=ZS{HjIrT~u?xlL3$2nV7=XVUJNJ9AQ6_+mnmIPg z1W-&mMoUu0w#id>BdiG6lq{bt5YrY}l~qJBRY5kl%m5L>7Rwh|o~S+C=q|P{vZCU! z!wsB9Tm(WT(PRrc3KUG~+X_I#A(3Kd4GN9inc3Jr#Er-Xluqf7N@#LlD~B#?2pi)2 z`hu(+0enyhxiSxiD}#J>;Z+3T04(qJ23BMnxEMBh)U^~tN7yOay|RiInAL7E;s~Ql zpSJdLZ72tLru5CZ{zH4>wQK~5B&lC%SD$W`R!Z`Ql>)Co(pwk4HD8;MpCh8-bgN

tn<|N-A15J;nwQgfELhMV@oAiS4yy|5v=40&gTeLMUv2EeCS^| z)x`oZNkn7kGnxiz+)t(qWUf`@tJ@zoI~8N^ErhGol$_G#;CPiB0h|eAT*#H;B9O}nE+&T&3+t7Zbqtj(I2L35 zLm-;}Z*{EW_NQYFj4fs(Zmtn`TznQA>82VvnvD$n>5X*TUn5O1+{>v;%MY2MDek-9 ztc1MZDwbYh)}{~T%z_gdF}k4oZIbcI5sw-dpUKXQO_r=1U9p674`=ElG4-lZ6l~0n(*GrK)WswD%-y$?%d;yehDe0L+$GrfKO~X&gcwQ_QrA0XYf%e z_Sk`ek`S9u=^>CCy4t)NJGGKu# zhD)WDg+*sh~2Xd%Opv3-9qvCQ&x#MdZlTJPRAR?;)BIjq7LgY zOHKAG^yYZ9Sayz8Rw9iAcCf^x>>3j{{=uwC4-2{)2(6NbXXy_v{h*#@V%4>B40I8| zvhxcR7{AVf5$9sS>`e3`=UnxFNyPU5XWI;#*2z9u|!! z7?leYa_uSR4rK?GfiNfL1`-?_+|_Pn+*j%&kZ4q-n9CqJSvhMvdo@&SKi4WN1)%&b z?VZ|!P7M`rpI}tMvj5!)Mwc|>b_6}%D3vU9_|dT9*@c+k1e{e+M_YTgHe?&jac$0J ziy)gqG?^`sBH4{W@Ow!RKwsnFFPE^iQ3b{+xY?bEx)I$t+lBS0yP0)wpeZw}m*zkw z#bbQmLo>*ej`K`66dbY!KXLvttK+aF_`bBXffhep?(Nxj?+(+R=dWr1w1%I= zv=fbF`ky8z8Oz3`EWs-pJn3(COL(1Ufgd>_;RzfzKn1(nE7*k!;Eo1~IR`HTPALjt z`@@L=YF_i;CDj0TgdDdtN#^W(XiA|=U_9V%L3Y@9%|n`9qVXi7yaG<$0JfT;rDU?; zML^_;IOZhdKeaWY=4VEI`SEZr8y7zn1hOV}Du$!DxM*8ql_P*0cHy6r^cpQNe*f%c1?(RKxJmU!kljD2u}yI$Ff-N<6OmqlC^BeJ(ST zX;{f5!HM~C6oMP5bR-HOhFBNqXM^u>!veAu>W(2OBSxL4WNu+M>XC?hiXrBCvK!kq zbOUaxN`Bm#mwhL*_d<4fch!aKgZ#UgKa6v8u^y~{{{&i8oC58pPW2e7M|f(yE-0|7 z9ki>^(n6z46o`lhiAvHX;+3(F^qqg?I*xx+FB!7vr*u*eKr#0r6C z1*)0#vR}ku>~5fAo*z{+vJo>9ja5Zs6P1l=c$6lmJ#2%%xZzZzI1w2i9|;UbSPM_) z5i3tMxMMI zbgnT%s}Pgs8lKis%$sYZ8j}EZvYeikNpuC8J$Aq$%9P`rGaLXJRgUffz!%^pE%{H* zHKwE^P&pw;#4*OWTY_Wx;28l}&`us$cu7 zl+1?+8R!gX35<&9dwd+Oy(t7)3E+~JfWcitF5(=+ScM4v0O$BBK3xi@ru-mx8IS4hzFSdr^ zjgMQPEC47-r)1xNmXvr%#)EZV7H#*}EMs9OObVjPv?tog?M zV!#TkT#Q;^oF^V#VU=hhG5NPvSMkLH2sUAQ{8x&^Z>(Nr=qXgoy+$rh`MFVF0)i#c zyAVU?mEIc6awGx+W8>p!4knyZtdtsTV#23c`RigYT`C)80fnpxp5<_b7`f0Wk79r_ z1GXo``mfN#OeS2d$HB2 z+>NZGR`4s=AYOzq^>EIQh|!CTx&gQIYA$6+fPG<2pm5T7`ypLHUA(+mUoCbmGJNs%C00@S{tdyR z=2FYu%M5((X~qfce6`qesTHqMHjtc+3D^Uh6-*%9^x1u>RaQ?KPwfz8Gf^Z_#%6R3 z>|zy6SX(UMa9H%c%&I(CnYnN=dfr(~X$r&cS1emeU@k*T@obV3b%tunY)vHR;G(qpY~v=)&Wt$6=%AzfaJgO# zN1CV3gCmhRHf=QOuUscCOB-Y9(DQN{1Aa<;pEf4bPjAvvqn644SZeeX*Dp1C=^w2Y z3zivO#b1{iX7J@qBxaEKk1%Wc*@ea_|L(4ZPcAfe!O`yJUm4Y!>QSwzTwxrHZk@cs z_`A-l0FM1FdWNQN8mO0x^FK32iw}Qm9Lz7pyN#wiSF3BpFD^E^*93Qez$z(09^CyA zCZztpO+0*Yo?}-=6GJb_bL`4odWms8UAyZqGbZ5Tg862*!W$oxKG?Fncubrz-#m)F zd2zn^eEzLJS@%s>E&md3OTqFO!QHOvBA0Oxu~ChPzLgw)t+lLWNX5Y*;a^ z?R8alqNdRWI+68&mOfKr_=na&G3N#2PS_6$Uo=jWci)iu;~*XWPi)Dod=Wl1`1-(0 z#@+p-V^-c*I&=HmH86_kYno=T0T*$x;9^Z72Y9pt*Ib)3v>l>vvstdMdJ=?7X4?LhnmgvvcIMY-88R;gWff!*$0oUra2EiX|~K0 zI>PM@-WKuXG&&|`Kf8T_hWh&28KLUTYa(OhKq*ZwGmE;3hX+cG;AnU$9Q>L&5o+33JU>;T+Df(~># z3SPWn^m@&Ye0rqYyFQC_bN!Igz<$*l!D>EOSW7cx%7M*8S zYkf2I=b7K?^h>Qxo0o>QjhTloFgu2^oS(bU9BgTS$XJ&GL&CsB@y^X=wHW@gStu@R zGYiDGSC~UHpI>HP&N=?e73QSOvzMDSy0#^QALT`Gch}dNGiAv;*O@h9<^AS>%$;k^ ze@0|l%OB0oV(I;+nR)JZ^W$hIrJ^Fh1EU>7(2(9|%0(Sji*?Pr zPlz9$b8gUnExsLY_2twwjIjE51YuULa?+g|CrW?&C{aK-Bdr=Sb&O?~?2}{7qhkFC zt0%(1;DjI%CXV~o#Rns-&idBJgfY?@Mx;1)v^7;+G15AViSbcZUr_gvqpSkW*ec72 z;!##NvB001qXnHqFEDjxH#N<(3%DmZnt6%U&EW8Q}bv~t84 z3v{JOoHy3mswFZ9jk8L%WII&yju!AFRPJZy{PEUut#D)Ka3Wo>WB}LI&I0k)ShFWd zh%?UYZ$a1g-wR_Yj~i!>N+XsQ)I{8B#`~14MvYr=v3Xt`a&aNG2K5)lm7JdALUGVk z0>o>m7odbVf&&==hd$lH$yJO_2c-*y*-PLex6mQb6tH83Z{u-8PTGgJl3O^jN}VWz zq>eLAZ~$wCB_a-C8TtggxY?bApGNRL9D=e{1u;=I-b^7ZH0+eT-kbic5vYMso6tC~ zBE^0rMJ<^K$p>_Td$f6p*dc-w9EO=q#BIU+JV*^X?nkF$XB$_QVf46))Gy^;6ADG4 zkvVgdB}nchuL7r}p?vmqC>!d2tf(kD$n2DM+!CB<3v%58qFYFzC`5k2D6hr2UsvK+ zhv1h(51m2GW%<|`jbnI2wGhA`hxJAurQ&y(R6U{`F3h?iuT*y41C6T-S)kK+B)pE; zugbv!)kT?D;YQt#&7lN;Szbr{DsK*1{1rkuXjW`EQ<;XyOkyJl||@I z8Rxx5pYY=6O787d`k|qk!3PzhO5f@PZH$&2iCtk#s`>>W7K`~4%*ymtbZxQVbfM$S zgM9a&(;3QpNC^jI<1GIZ*gtem6_Sa2@S(s6T(pg=lKqVs0=RQA z@LO(gae}tM+j=AW6=^_UhlHe;PNWfi9jaX{(_z9!p0k*xE_9XF96FyX1^5JiK+dhz z+Bt_@z#BNvqkq6&AXhPa__VlaC=Bk%gD@}Xw97oj?f8UE=>X+(XaqzI5I&cLe#<1~ zV20V#bLbU!3l(nBhSnkIOB@H3iF63yiuHlOE-ARWwri)wOf;@^(}SNw6={m3BXw8}LiW6~feWibRh z!blr1FSu(DCi5;xzg^B_(#5Nq(xlfurHz=jq1q{Oy258MYJ;4(^!d%929>xG(|J3l zmQ(UfO5Cr_aF!us&){kL_m!N+0!-dGA=BNl&0M#GC25(0w4qGHy%~k>u+}6Z6Uq-USRn_H<~Wk(fK0&5N1CsvVNZ>N+s272 zuQQ!r(?F04U%a<#4+Jq%0ie6N!Zcu_`9HBAWB zt-IAtA((aDs-_SPFrAu0Fq30Y?!*9RQKV5@JQRhC*fY={0+(}Bg1JK{5omjH5(FE4 zECddBM)Rx}BgD_SoKSY7$gLzog2qyeC~;9>1mqjcB*i2ELyjWK=>#4zE385kfY1PD z5>issos3Lr0xFK%Es+h8bc=u?K(|5(GMDH!Hw(46>*t_`=CeSXf=YmCMG{_9&ptuz*ea02Grt&T1)|~TPrUQ zC7u&t;IRZ4d<1g1IYe~k}OH49?<<~!LS?Lq?_h+aeBJC@w^K5OWzTeQd0j$?L?4w zEMgj8X;cF4NCNMUh0rq2t8vGB)$T!Fm8-+l>v)x*!a9O8?DH9)aBzP$y(&;km@=Sv zr^PHUrBHQcgp?2jgF-N9gNROtNQKQ2MIvDKkmQ8amGT6Ej%k%q!U`2fm0RHo^(a>$ zhZKh}k==;@g+9aaMihSw#$M?2A_L$AKMTBKIq~%hykbd((s)M*TOtUPDf412N};mQ z=ZyvELPD-gupo$35J1qXj-@P@3(#MRkbFR(bU6qzo)XBq973F8c$^Fvq>wa2NlH>A zk-|@!ygxTCIbuaRI5N@>HW=q%SzZo$AED~MM>`;CDAtFUhEQ5c0PQrSgkleDidb!I zSqJtPIJb!6F1#A#Iw2ax3dDq&W)IhmONj+KA#GB3lou4k0?`HkN2n<- z4d*n)Ck9hf1aMdA&=kKPypN`cfnvW!DvWW=mE5H(Qo14kMgNL`tZ-JN4V74F?Tlj{+ zq=dheh%JeHn2dC;RFIpqUlg<~ku^m=C-pu(kj?kf`2t}cIJKWnL%KrvAUP;Pf@8}K zD~e&Id7lWFRgegQj&xq~9&Xi<6i7jB0tGc-V}9BomIV?s6HI>?N$?eA>cSJ6G293c zMj5|W>L6LAR0^?S%N30W3a0UtvV0bi0;N!Oxd;PC4AxwuR-L{B67vKk<3dqxV3kp1 zo(4U2552Af7gwOyB}3nri1nwxI_u4XvUT_mCf1Cufd=b36(fKx@(x>$K3tRz&u&_tFR zpmhvRwsT+ZMuxz|{j9|AU_Qf{?dLoK9AX(0&Ejab#~T8OK(5SLi*pbCr_ zxa)evG6<1wQsU)6ymckwrV%Dfxm+W)?Dm128u)6tyPLc5xSZNT`dkY2Ph7O zpt@Y9s9GuxkRI6=P$H5_@B@;tKzOQj6Zx=_Bp~7LJ>?VR>LARp1ZpX%RS~d|+SvKR zv|ES1fu^~IOq64*2A}4~n8d;&SeQU6id@{X!ot0nFI%DzF8&mr3km7wpgZk!5mKn6 zxg2j5;31oBT%5#V3FK!Vu>K@yT9ehN1f4|Pa|tTeTJ4syO{`yv-K`~jo z6v+!A%*d<&6!N!=+{F%0&tI4e+N(A5a$NP!x6$*}cC$PYzsx|o9oS;-B$NDUf;Q(`rW z4Z!5*A%?^Oid%bPM^37)*atBx-0XVKTkgQTs#M>syo==&fs8v4B)bXpT8FIbzq|y$bS!jSwutbpH$FSqA11Mbpi)y<}SC;94z|yqJTQ2qjUugHJR~6?&sO^fI3*v?F;Hh&SXw_DtfrzcLM578?(wMZQwNlOiMK9w{=y zR+keQgE^N3cahs+D$aaB)o2$Oc{6rC2FU6Z21v9oq`V06M#_sZLtHo3Y_ue6k6zwI zESYJ};oiZ!GtD8`IO=>TL_s)AdlsB+uxVhs1)Lt*06nzn;pkfS4@d_!h88rni^v#g z$*4RQf*5aDXz=oYe-QXRWH`&UY5T`14nI8!rVZCnrhf++81D=T7?Ec{ay08CY#>!* z&ZQ5Oj2$oW02XpfH7JecB0dXe6|!eyv+OG>2F)_-(%A2iwk$>@%6c?FQ4i82V*|^W zjp}wOOClU$FytKBRFdN^Y-$h!I3!LwgYHQ+!{Q+XT77{A@OzpoAtceklBV6da0%>B z6#ifol^x^{@%b#XB5eZ0IOAVJ*T7aY@WGZci7c+1(W5~xY)WIh5JnnaX~ZNPd*${4 z9X}=5*@6AajvN-^JMufu%kse!7Nmlag8&!G#9wQH(9TpqwJtnc36FFXmpPgCHDtEg z5D|gnSpgDtFt6BnnAtyqMQ)4F4l{o>5~xB*%8n+XIRsLiGQ-0~O#0y$_>V$S%-Zas zVJPD~sDRjTxH$u`k@j@rUI6L9RL#@WK*<<=Ws?O5FkI;P(Gfe=w9ZG02 zHvk&=vv?ki0G@sUYEfK_V+`1O%Up1z`HQ_L35gkJ1o*3Mu;FLOW?&9gVa;Ol!mx zkO4bxsmwga9p%=MY{JzI4eO&^Sd&Avqq<`}8}x^miu$EA1VSTwg~d)f+ba8Tw_~)@^b($gxlwx)P7(h}{$hhzQ^F$I5KQ=5y51kYnAK9i81v<)XkK%wFEqvdaAV z4W>6I&qVx{pgE=GoG2$495h#?VXAF$*KBhzqHn!F+dQGOxM#4 z8V1`0K8aUaOs|wQQ<>u6Ql~^0TbkmIu$3teE1DBW?@Vw7#SA0_Q_X;&1nV#b)gPG& zNdn}q62LEFCzzeeZJ&pbB0TDabsvD&7Q;>e!?4K^6>jM+;0rHSJ}Bd5O=`3OV&0@I zAv=YxD1#U}Ord5E>QnaWDALgaKzF#$%z2OXnkK@I64Q6WJ9Q}Kn zvrx-Lz0J{hJloqm7LWQya|9l98)Y}%X*9dwm)6HDuSRchmkdLZ03NIHZ^SSLaThuPO0g|;X3HRsA^3^kp1v|OI zJ=QG!k(lbRxcF|XqVNx!Rk*c~KcLmG z5^W1&GS1r01+luWE51Wq(CMLQb%=zc!e6rq!(yDzYOd#$9xD!s6W3b(5#4LmS~wyh zKHJ8%ki}Mfmw9(BJf^gd#P`3mYV=*d6V zg(+|(K)XsoyGnhPh@`mG9AK#ZP&|9PHI}9Cz0K-Vy8WN%RXtz;;&(a}vXGB2U)*Lb z(BHp{^)`r=w_9a(@86YIc?Bx(h{{!Be&xShC!V|A8lx{=f1uizuFo8HhqX%AJ{G(0 zvJTPyB1YbA9cw3=^cdQHaI+Y)&g#jr6J{OuhS^=4#7*mP-tmzuth?x<`md`j>ArXU zmDX?ae;<35bt2+xJb9HhI6ry7)z)n74sq4h)yyURY}n z^kJZ=zQ($hU(Z`@4ZHeUYfbiDymhU0!d}G?arQdp{ z=30qsG)^1E7yNiy{AIP({pb62_sY3?h1$Ko4)l7NW6;ge#{U-nr<3KLj)s?M(!c}3 z9rD{1%bxMX?gy;M)L1gS4uNKCaBvv1{OItna7!l7*Mwy5;0#O<zLBEEtB4B5I~y6rzZU+KaJa!D^_`@@#yvoUs=Q=og6-!qVX?*|8bq73wiN znn0*@w$B?S@v~IMQ}*9uFm{B~WtV%KwU)ckjJ)Aj+Tq}q-7uH9O=ea3QsbOpe)$= z=Bz-2vZa8lrbq%>3A`B005vpV46bFfb75L5mr~*&~$6Qbt(*t1_ z$Pyyn5KlM zQc>s0PuWj49E=pKP9;bG6p@j?9q#<)+}=@&*PB;Og^7N9ysrJ$q4{KSlJ8^;}6_zmL@|O_I9y)?2MWQEorCc0wR^mFC zA0TON3^wK(<4?3J(b^?=#+@Azqd+t1Q8qb zdl2z2#qqzlD0(jYy;YCLJxI)z7x%SUvvcKoJZ_bP=nsF~>ZpAs4t?C3n9G>C^>OPP zU3*rn*=)^1h~uv|TRmj#YxfTj2GH=7KUlZ1%`g98wcivVKHZ8MuM!2%SgR`Kp-(Sx+>Iho7-}X#>Rj&sYsLuPhryR|RPa3?V|ovQgBE7YQ-zhTIZ$xFPEr&ulQVWB6=!-3qq+el0~E>*wOZibJVsN zBpvibvRt48hzXG$|5(_>u<=){HpDy7hM|GwbjWRp;~PTfOAl(iVnZCEG7Uf0lg-iO zCwI@WA)bJJcs7l>*c($G)KRPj@P;Ds$#YhBtx$A+-l~EwUN~2p=gVBg{ziGZil_~h z%e_Fd4fM^c@Rx_ZO1Ker0^6v<-di=43a`d@v8Oj1TY6hUo(rd7x14LW1j;!^Sc1(N z^h3J&b#OZ^#)-Og9uR2D#lA4y*gBKpz(D|Uvf*5XffPd{$3SAP%X*MOj>oN%=HLp9 z1B;{sG9Yv&VkK0#Rjp8SN>HpC%5M$(4jF{vLd>ro55^V)Bk<5cjwH#w#I6`zH|#E^ zyQ51`8ogTXE2dDa&R^{H#ANm2Xy^?G%F~r_jJw@(Q|h_h|IL(QC@7nq(g?a1nJAs& z+o#m+bx3f%JwEa}gdT1k^G#NBicLdKDeO3$QrLDlrA)+>x;@mCCIJcnzypwyu)0Ov zq}!v_OQNqaw-%sCVbmC$A=w-mirf>#ISrVc9 z-4UO>U>yP)%Y6f7ZKf!}WkM4KPIu?_4Zta6N4W_v_X{9gfQk~SBOrltzrg06Eb2iH ziX;#`avKJ~kSN76i6Oy;0nEWtBIyZz81Y=>u>wMcwn6y>jfY*B7EVBiZ-wHs7p<<% z5TA%T1#l5zBA63IqqJNrkTSUC4bajDEF5r&#K&4Fx>HPi$*N1aT0^Ls)rYyhF(z=F z>>uk*Bzb#DJS47u$vSj?LPKtRyElDn8#~RdqnDK3JJx6yxy;zC}dq4(k}>&lPR$MmseqliY6pb=O36F}~ zU$%B=FN*VD!B*TRT|E4XbrKGGc6rsRLPWQrcpQbJ%swJ5u=Prs<^jvBa04>R+29e4 zAQ8tp=!%{@)**AEBzAUDL4M9I*rFBpy=wJnt#OMucb%m-Ae_SK(~o!t9r$q7VQCLd zehpZlP|~eVg+k;HDhZW$b*pk6V=i=}o7-uRByjESxIh8XyQ^z+LE-#1m?@CCI`8-_ zlaRRz&|UtTRhzEODF9^I>{5#BXQ_?puElBvJxaN73#UB~57OvbWDH>TwIwAY7FFMD zw-#BH{9o%|5~d8#{2u(Qxzy^iOAU5%{?XM^tu=NQGbq$DD8X!LXFRT1;33~i=0Coj*`Gb2YtO-Bh z!O)~{26_`-Z5lX84Uwy(+nJA2w+nsa%3P0?mb)$=l{gK3^y}8F^!r*TXc`2Y3mY76 zXmY#wKWK}5cvDDXT;Lzosv`0i_;bOHSYv@d2fnC$3-XR9u_g&oP01C-3!f;06tLUf zaz8N5-LpRcfa7sQ0hwHR87Lqd+;`^r^r< z9TJE@sbC?*>;Gpgq*ERX@w-!XM+8sWzCk>Hc+={+zyWkXkEs!av06wn zxt$jfCz*t4wlUZFNtkTOdK9t4MvVOEg04eBC3(iG392Jb0HMfnlBT%)Evs|{PobhI zwFSs;-Jq*$1i)&`lYrdQ}Vu5rd59Qz~dqR z)li~eaOgTXh`sbP;eTM2RKJ*a9veGjJdgd_mrsz=MKj{~;nomw=LgmjaY59n6z>?O zmpSc2>n6?kS-HIlSx0uXtMNFxqkS!;qOUsI!)haqAskMq2BYEynbHRX2$(Gh zaR5?3IE6T}!miOGnX@YF!?d!C*DAD!fQd9 zlW|8g%n1neLSG<<+kl7^0lkOG*wswDM0p|csW|8z?0q=m`gg1p6veWs>o9?e|a&t9qNZ$B#P2iQCH@7@-L18sTp z(S(8aZ2gLz;?9BgK*lzBCrH2VV_aC*yU8A!iE;-6i z#~L5hKA`+CpJ6+e5O1S0v3{t1Q_!6S;_+ejY5Mzb zu}^j4*x|O#Vy6yA$G(3{JTu&WlR57kVQ<&(*TlIa?b(bs45QA*&?ApVHXcf=pLY?M7vdnWUTQT9kVI%71p zKeBx70HeEkj6FyDLKtK1T3#eIdxl*u#*MXkAzEh6SU^2n{s4UOALHz^QGVfgdkJvy zv+-D$TQUb7WG~i&!NIO>`4_z{woI^l{5M0^Oten`nw&oo_>ViKu9|3{vv<^)no0Ji zatE3);@Y@Q{17mh*L3iCM5)PqHVIwQH@%(t`4sz@+%OIRhK~-m=VeDqfrJnZ@Bq#Y z5)V#0#GXS5Alwl8MoIt!(b@{c;gW6oV18RNUmOC&(ykE3H2W%mWA!w9@Qs{xwY@Yw=i^5+}FVlbN`x#oknUB?uq(W+=n(u{+{lyiJ@s-Imd5uAOf8*6-8A z)6?y%f=T+jzJ8}TY^J?9H)*2|wX4LxX4*aTQ>x+Lam=B1H~qz(;+KcoFXLP0$XRwD zUArRl+r#aLbnQwp`Y3xy+0w6`#KK(x8V^xke}k&=im$}wN7ear zl z{c6FFUlN=7@?`t>;lf9s@Tv0{#Jq=|$ZVQx+nQD{{y5LRwsXBw(sA4-2C_hJyu=h~ zh=sLr^Anl$e7n1hl5^_VY&IB+a>C zTu`XwO z+@^5A=di=ZZ3^s)aKplbfz@$MR#Xs-F-CY0DB0g>DzgMhHUR^`?;KEU@?ARX03z5f z<)Z*Q8@RxmTQC?Hip!%^*f^C_%nc5Nzf(3Z`JIZaJW|FXW8WFJuwa`55>OJAWOr~Rc2~e&CU!2gE4A0e zw+pdNy$z}lL!Lo!fU!iR7J;~)DQ;V2zmA&^FF4IUzEIr&xob5XI|^}a=I5tD$lEFk zPqznQSsrw{O=qBMPPc2S*c5iwTWFc{mx6$z-EgbA!1x7ZK)%mTx2sTnbg|tFznT|= zOP?bSTWr^AF_B(uAA-c^7R#KUEVe6aRp(bocXC#>3kz9}haHw}sM_n#kYy&FVJC~; z(y+I_E*Mqfoy<9B*oB(9e)5uEfPX)Drac<{|N2ZU=dGgmFYKf6xab#lV~5)}gAA1> zxcu0AE%CZ|<`;H9?RD|5U)awh*K=pt3-B0zwk&%3+4j-+wf$`Sd<3;QdVWD5H1&vM5=tQ`rYV4lg{c{9j4uy=|zT(gZx{4z! z2#1MlXZ6;* z<-fKo%^Ue+^Ja11uOSET*eqtQu7&!i|z4%`z;sS-q;&Fo*EbMyZLCJ%~^;bbg zdQRAXI#3luuK}fbKpb_Ay%0sWU1Rr(VubP#sFt{2+;=S~&;z39wZOCo#OK#x(cd7> zMLYY;^ir2gJpz?bLp&{t1PGmR?$I%g9~D z*Mn@|DSBOR*ER+VL6UX2^Xv?~XMjn&x%Ii5R;=w|q8-jwC(abhuD2^NE7x9+p`9b1 zz1}{%@llC{iaYCHa^WcovKz1Xkw7&|`GN{bK*Sk0*oXIhw?q5g>TTLw-mRVh#g(`Z zW|)*xE=UW7-K7jeCjNDUeK47lb^>nYo_(WTS0jn@dSw*P&o6_ViIr=isr>#%$h#=? z;f;{Xp4ucgxOq^8g41K0^j)I%5FmVv%aF~Ci^bP$bY`c z{tSHV#hdL%^}lao-J`U3#0zWfGqkhBLATf!4dBL-6q{o3q}abG3_O=6h}_pq!SA33 zfG=EktGyOb9eJDmx5D*BVJ#hAQc96*wNAUH*&F~{6#S44B{;I{k4QsgcE1Qu!R!>L)6MECYP?HPgWfH=;eVZ7DR_F%KV z%PvdHbFneZhll7G+=z+O5ep`I`fBkHG>i5Lf8CXBFxDzZEV(bP(Gd%dPTYop*F)X}Le4LppJ3sb#{ zeW{kjAzJe46@k+lQ+JDq5Gl+?M>eT>9lw!TE zPbgkU#Qy74sqf%5d$bR{j7Mn0E;30UTH3|sRLC#bUIHTeuvP=tz`pdc_@(Thm>s`O zOu66g*#L4(dIOx3GBQXG+|ogIN=K(bal#-sKzNd$3jghE#M=AqWal>QvBz6Icl4Jp zK6u?9?^(66kLNK=KoYfn84~Z_Z+qYY1rOL=)77miItBECCfWWrNyO1UiFhC`dvV`2N+XJxXqe5ztPs zQzyYSsyRG6)-~#P_8Z-)Ro*oJZeWN1An84R;#9f+Y>3;4@u+xkgWUypo;Rf6?1nAe zgWU#3?D86An{u}LP+SN}u!m>EXNPA=fGi0O6tho$tFvK8(1AVpjt;?{43w%kft_yY zbIe*WDD^4mHa~;eIKFi-qRj&XW{YDUw7oRW&EuAnls*9Q6%h7)oI4iCkZhXkO?8{x z@m$qS$CDe#>l!q73YkH(dvL4Q>`rwLX+<^2z-k7$6C^Vj zqnO(OWEg{s*syfQxD#5vF=(#Yod|9)snr_`I@vo`9`zdmP{J}Fkk~jye=+owL=B>q z^32D$qTFcffijbB>57ElPpz)|7Arh6E+&aS0{ zzUhn6jw4AnwWxWjRpKbRhq=UyMDtTrN&=+=Thg>9eHs#Z#TRFs#w7Je0L3^aIv~xM z>rNwypW#j;QJ66?J{kSe7N?UW` z*F6U3AI7_VZ#xY6j-3!6j|rYe$>UHIIBu~V_o4AZUUI|H9tu_lqDGVqa1pHPksc%02fpxQ1YMcI1;&i<@a32AD0CUs0BU<> zKuxg7&2U5RY^;mpTfM{OkK^#;1SucQ00BOXrN_r>+#|uvWo>8xgcsMm^cPR1*; z{R|y!ZS_uZPju&ukH=$$VnoL7rkyIzeZsCeqCGR#68g~UE|NfK0T6x$Ae=frUge&e z1wxAi0x(z(88D~@3{C>kndXn29B-s3on!XJ58EZfH@_MfoBsSnTgXrP5AxBV#DXAc zIg|RTq@3qJ7J0%I!ymTq5DSmf3&lNaqlWnOVHnr9ike64iSUj&`4PK&ngp3Rj`b#m zS1G%~hzHlFgCR#Zx_y^QvYZ?|9pYC5yk3(-h$$K_HEn>yEU@0|7t}$DnL#g={oSL3Mu2TkJcJvKSg?dOhgd!BbV=#~~8U7!+#^Qc{(xZr+>EyLR3 zBKkaPcbrouwKaD*@f*;SFdgeUfd2k@itB-wQ0QZ3&j{kMTrDA@jA%H;Jr#)13a_mv5Y(D&Meg z>7aA}s{)Qf!~=>pBcy1P1ZI*4=0qDL=P)r4ZMf^i{W&Guz$boRN}m;XfM@>`aVNc} zyz{>y?sUM~QCcnV10;o{GK(nt$VS~0xk2rRqh*uCSO00(9G7K?(2et6_XUX`H1FH0 z8xX65!(o~{73lLp(M7RyvMCVN6UF&$c3*9pxVH@|9*7i_4*oL;L>8avi34RjH4mb4 z*qae%ks07$()NOPv`OE~8EQ39MxCL~)xk4j1`G-icv}3!A;e2ZS|la7YFOzEI3L#rrvxLp4!t(T)g~9+u zmn77I0?24^qMS!6G6Rs(LC2=^2*z|K&mR&3DNE^HXD3^{8E6piCnjY#@!JjM3vl9# z$L;PNPf1F_bQ)cjnx%j#$1WP5u&X*vb3<}}R04Pp@liao8RUJBBqeuYTF?%yT7V?< zD*m8R5it+|FDN%54-1Dx4wNn{P31&NXf)FM7@kz5_DY&;2CbjDF4=cdRtEP!EE~lx5>(iTqfl%=SXio$bPQw3CJH0uSMGppSibcy4_5>T}lvQ?d z(-Zd4!acxyqVWG<_dE=8wiK`f7zSWPh3=euuqqKd04pSJfHhnB$qKG>+GXM5n7(KG zC$s%h?PublC+x1^uKp6p{tff75{RA*#z|5;;?x`l%=uVq+Kr#FJ3aW1>u|XVjg= zGkCL*s}u@wo$??F>;!BC$In}My17LR-eNZup-b)@YAVuZ+#;52!464_xND1DcXW${ z#w^m5S;(X>R?y%Q3usWJ9SG3CL4*hd6bQ2bU;u3p#UPHfNNi?&#w68JZ_pLXqV+SW zqFTurY@RASrkj{77kkUZxX1T=jZp#usib|gh-_>uZqR5jLrpu1i}g=K7?UOEND$7+ zg3x72z$aHS#*!^qG0?tQfkXpT0b=BbC!-O0h&bfJPTg7cWv?1LV+whWgHwP}Cm4`h zR-bO~8SBS^KsmaCywO$fcXZWqn)j#^K+JU+0zP{zH!y-mSvRdbvmhR06l!JEpwkkL zbKMzJ0il>2XEu}AxfKopFwHo`pBC}`R=Z=mMUENM0Q5=DaRL8wQp?3SH!uf(IE0v- zLqsf>J(P@O7T`Naj#P`mDl}FhR#fkTc8VBfI%Y4c3WKW zjNKuP@38WRVE*9)SmvUl>~qduzq9FJ&_HL-QcU$2y~iKt9V+{TIJP0wz6tx=67-h? zSN%mNnz>|}-C1eE5S&VCPOR4BD#l`&rkJo=gKnwRNU&I`k<8$ljj1&YK10@$ML49A zHs{tW*%PLV#Xt$uUW57&Mx>5z1sd2zCJGvH;*=F}mr}oLuIajj8iKGfAsrQ+D zKUBR#NT6td*ne1@6Xn{9aDH(ct2DuB?sP=Nq3I2BgU%nVXhn@4J(u^^vp5*j*gZc= z(MS490nOwjO+}NEi%A{^F;OuqwdaIOrr|jSs`9Me2pTZJ8-olm2#@vGq`h&z<&B5Y z>mXP=CxC2Eq&0t%+{yGNV>59I$p69qViAANp32+0j(rY}$=H3n>N)$JcCW=H&)etk z$3p}`%CTQ@rzV!IDi|XU-)>h1JNb}8&~@+x8a-ee}Z4f7{NMNO`93JN9U{v-r>UCE;G5{5RUE|G@t6 z;I#$1qaxSfR6qPD&<(`JBNR4@$E8u8L-U`)58%o#IV)j(l=>q!CqM%6sDNK5(C)Yo z?XlWDnOi=z|E9I0-whvO)?XDHKe89~RJB6yfE|Qro>-=}R~AaDGyBOXD$7j&*uE{V z7VQ&zu>RDYV%R6jUs?JmEd9i8k8vPg_yjI>@lWk{FvXvJYM-iIE($-jM~WeTwQoYw z8-KO?X72giJ|%4Ki0BO1BR;udYhnexBeGj&lIaccCuKpr!lV!)=5XAk5xs%bRn6*y-D&8{nO#%n_V zr(MMYxU{rFJU_&Ui824QTTHrqz?D*@&oC-QTf}k2j(^&S@s%n5-o6mdVnY02&%om^ zcohCo`WwQAjCkvbEmuu(HsOn-IRmte7^yi&_^LlQm$-PrNC z_{BH&G~9@|)8r12-5DjZj@^SN12~cfKpuSJCm(<~Ipvie_Y( zS}Ic?>fi_-4-watI4|;C$NW;~3Z17d^p4J(GML8DfsQ8@c5-YJE+aAj-j$-HLgp18 z;+ch#B(3dG(g`s@>6J=nZ3hQjmDlH9efi^({>6_F%Uq|@_~aw>qn!On6&m2#Vd;`6 zFMEWae;*vhbGn9K|ENuT+QaD;qc-fo8g;Uadp&dK_&%f)cd>0EQ?r9Oq2?1*l@ zRJxSQ5nX$!ILmWx#n}qDHg_{FV}pfR@LKSQzge7}R1MyqbbO1Ry~Y0bE5+wYr>}%& z_pZ)B0usCW7mMS&!VUR?kK4rKV=!}fb#>&q7diG1x;mZpmoE`UH|Ilr=_TT`ZcZ2d z*_9&E-Es8|my3Sgomur;!||>$5SI5>60ot+**DzQ1s|<(xSx=4kBy4@S6(7Eba#^f zW^7+{ch+KTqKAXiFyh%B=)yghiof=7aKPba(Y@AL5d5wK)YNdFu60h*Z_`9$$|=)+ zC&s0m0eN6aiQ7_6Aq&eGFk4ej6=p5-LCQHv3r3i_nsZ--uuLa{Bxm z;O*$;JXQ1jp189m4|m!w&1CAG3f;KkV_;30cxQ;yU92DMM8v;(tBIEl;{!ZV#6-#>3Q9Rk-@$|pmm-(Q-GhNG4i+Y9M zFI_4Y40LM$4b<)*=xiW<$kD87aytH-{M(wGwamY$*_o9EN150;$SKL8QUya$rHjB{F^ubPs?`o?6+5L^NfLQi!8LW8xNnHl zQ_|75h5!}RVwBW#!cgZnY$om=>Rh$wdT(FfuMcy!YgdcAhC3;^dF~kQoXHbqlSepp zHOp_3{4q->|G6gk3CjQF8gcmuHBn6?L0a#-LEJdfsT;5#;O4=3|F7boBb}<6-D{+a zYPPXmd5!H{BL<9e)^lL(E2zSEPQ*Fy^L?jM6GHgT1Nj%>4hWQ(h*V-|kMwj%^qG01 ziN^s&K7=&_FAvwg7Oi7Jzpn=?x?!v%m64anI=vx3M8-Ko6Yu{AvCA(8?7gVJ@jo(C z$2li!Su%)qo=PZdP96gTJ(N?>^&saU{e>$TR}OLpY1>561SgdR zMsC3?V5kMZM$DYxAnH{+FizEPyF#2h(McJ9B)=-jQJ!|}WpCiSpP1zI&|khn44UMO z(Jy~boIgoX{s$-F^W);ZNlsV&AO9ij$<7R*%`uamUjK)*?|_f0*#6(U3GEix6i6t6 zP3RC|d!dJpbU_6RVar`wNFWIa0tNwTQWY4UQi39&pkiG_R8a7NB7*W16#<{vQ9*fP zLHU2ry*t^PHHiNH%O{*WGv}P?=bSln?+n1A{$eh`^Zj9!y}`ceFLnZGH9+ibeqt4y zG(e18V@CftKzuOP(l)ktAk50cti~X5zWL|-+44c+z2MexuxJJ7q=VZBV=TVG<_{L_ z`1WJhV6j9HHnZHJVsnhp8-|K4YJ9s2vvlt2XxUJ7XSXT`oi$fK4x>VM=ttlff)$T6 z{hQ`i$tCaHyw~8Q$}>TF8b&Y69|l2>@icvy*i)dEd}X-Ul`5&J!L%F2hG@?AH;ONy z0$<%I{$W@We1EeTMeNoQ;yfAVZLTVQ1;e>sL=*%BGsmE@53ycjM1KRy+d5CM+V#w} zAg&rALB3{;IKLkCw#R%huF7CNS)OB#u}E8ameNS~#?%~1if7o7vEp?&W$p4oAJ>g$5fc@RmbRH;y?`CIwfKY08a^o z@p{H4mx!0ige@u+k5$)i6=wrxL%&RzBG##x$IGXPonxh^53!kfs`xWeU7jkwQH{zi zu#cyUec0gzVtbZ1O>CdL^lVIG>ZP84wvx2|Lto8kR_#xpvUStMpNQ?M>Eia>e^lQI zcZ%zXvepb;p!sHqj*NHKKqA)2Yl~*U$tJy(4su5+@7LAr?inx-Y3#xNK^mGX_Drn)-e7ml6q^8Sn5hYYS7wT>B&b6ZT$xhd?`zl(GsUh* zcFY3ubhdn!c)Ib5Z!6VxArGR5W`Em_ExAivk3~&I7vU?4g|AY1n`Bp$9a7$o)mrJT z2-$h}(N(hO!ck?Sk3N!LTPA8B6lefBz|Z?>)^X3xfSdO7;U zZ1F#WdE1)kJ#)l#;Wqt?VVsep*}b`_{X*><;#O8|I-21*@o9r5@7cdLgX6SboL5 zK=~`hZxGx6K5>T#>HPCL@nwMMdhtDgWg9Th53%Pqh~D~|a4xpyRT9+{Vo4jtJJK;| zAdWErwD<8zU|3#Z%QlLm!RGsoVzXX{7V7E+r?IRFIXajPB~N-pEa1h^#s9UW=7W!joAEVK zw=H6yYt{9UE#iYf&D$!bb5SyCI>hDdt-2+C?^aB@ee8v;;_-h}Blf~JbXzU9;!*L& zcn^R3s5qV!_{hgZJB^9SO>rv5#>e1U+Q*)GOuVtaW{YdpsJkC!eqG3C*hzS-Nw zObDh9+cmj$>vq^s_zrfv*xsO*7~8*HY<^vAw34c&eu<4%uIFN-Rnv1At*qV-aVeE$ z-;rwB?DZXDck+bPdR+8X6g%4QadCQbbmG(E$H`@I=91&++!li~DRywuOY05JB;5Ky zc)PY5@M34xoY`iGi#eUXc*sB-i`%n9$8!h*4nl^71x?Cc6mb$${?lS@_EJ=AraZY_ zQ=eLGwz2P`aNjLrjdzL8=+a#<{<2;@kVl)g+_>F+KttDz+oun(^Dl^Fh5xaUyG8mG zb?R<-Dh{$8yTy}viN{98s>}-@>k7!9bo4T-`-Zqsc#~~-1GDomi@t$14Q_Wh`37nQ_{$sO?uzRnV2E1jZE-=r zI^xiq;^eEP4LOYLLI2=kOh>@ehsBoJT4AXJbUrN&T>^s#8xzr$FN%3W*73?i{;*-l z@7IQW2CM#(cn{6_r7uB@e8={@B>J1{dsN`0<&d|Jf4h&|@X0tVDvDtZUKY&zN-d(QF%uH))bUDmqD=DnC%rb(4}a? z-2x9c2ED$iWXhX|`9@8xO`O;yS@?@#Ojk9*VuODhjyiJ`gn(C z*gBl)l!$ovh#@XEan63ti9r;b{QKt^@VJn;+YlF%d7Hm8#8JMzz~dw=vWkpjh-)|h zIqnQ@>8QYqWwPWM!iyHXE54nSz8R&ZW2$Jg%mWh`UqbC?gWrc#%VY)bi&<@T0W`vD zrp6wC^d(yT`r;{D`|OPl2cTUyoDJ~o`&g&%Il|7pFFp``?x^^Jnaw{TdLS8JIw9T( z;QK%f0^|+DWhBpjAl}NKTYm`Y8;dXgP@~Xr?&_OdogMs89FD}SkFcVDi{0{(c$e^f z^n;JYXSDr+Wv9e_aQF^6E!N9Ay{NkvBAYvBKIB2DvUe7-xu^97zV(dw3Tdh{XG9#L zAu#0=F$9e``4i2Ju>KRxjqt`Nnj7KDC*m<$-n{c)@zo}ez}-dOVYD7LL&<7RI)h~) zV$Q%QpU$57RQzA=7Yn=Vuh;4-^z_0?MS7nHQKYvQvg2pPjRRxb667eyEoQU=sEHLo z4SJ2~i$z)}9bdv}>z8cuvMo{RQ#DKkMKz zKj>pF`A3M$z0CQe*c6>}^N->H?qr~|VlawuKn%Sahx>(bg3(JqV*XVaQCbrX(yD^1 z#B{Y(Uw0hl`C~BNb{PGNX1x9NWXSuUxGh8XbJXaLH>=@aA#lc=w|mi=pY(-JtV7wT zpRkSn20QhWxEw88cu9O*Fz;T(mj5O?*x+Bp7Osof8MoHJjiH*#oChI>@u-KaHDe`o zCzLe0^%wDT&gaQI=#aenaaRpFJgzhSqq$Ue87qkC(My-HN6Y(>FE(P5Kp>;`okh`c ze~2fNtA9wlwDnlyYLbi1NRsxLU;B{xlO$*-)2MFKVkMtuj|X_W{_|*V+A1L%NgPI(OETZV>7nK#JDMN!m#by0}=x{##4> zo@C4ErcwdxDoLs^H~NSqJujGd{m5=tq*IjGxwdp1@u_vBWOMajH|`~`KT6zOfvg5Q zoQ$HmE3`FfAVpede&Ia3k|K4WfvrUjN|n6kO+T^)sZv`+MxRZUaEiaqIfH$eChZaC zZe{6`5TmTi+EpCNhgW(H;trsg~icVvZR|e2ANHyqiBM! znn)LuVmVWIXEW&uA#DTsA2t6oZwM4%kR5#h;FOH?`fKnp2TkWTN}Ys$th1w4%G zXqr@?{VP|JSfebd3v1F!3JZ(byjIeD^ZXx~+*-@%u?Ay+-Wvo1 zIJa&Cm)Y7u#K`G3?B4tc4-Hn9@X$o0JP9|{%>OZZN3Qfc1k8`osqLiJ0#5%ZZ!fjw zwiVY+G22ROko^bPm+ht1)MaHhDOdO|x`TlEhl|k2SaL_H zXb&mxySaFMhePF!(e-l z9qA)Iip}I{eWhCyhGF!RzLG^q7`W_8KWPqnf6n#Nc5rUjUkVWCmHnmsM9#ktkjlY% z!$7Hib6S2U;n*zAWlNv1SJ!%`^0<$l94MtEa`|niand^#ZLO{H-($Td=+o@v1gS0B zx@G~cU5T?EIZ?{1{q#q1x4`y~*tUs~spy^Fg`l{^iVLMS0P71SdTZxEp|lL%%BN5y zHl|4W7R!_yCqZf%cK9vyMrx|Q$5RXI6KE21v`2|_Up01kvh*bmr+KbeTETvwCS3sE z@27+BC6;lg)C}x9-6_ol`@MHct|pi8>PqV*3+{2kks_cvv!Bm|VnX3(&XUgG#HSx75{|y0cPI1O=}=oD#XK=UYU({R(M%nMFGZ7Z;mA=;CrU3qF9zNu%Qoag2I)9oj$8|0Q+Puf)_>RTvM2$-Aa%`7{n_*b}SCvONO_C(}01iL!feE_mbg@(mXqT!a_&5 z*T%fAMX&Rw&|9{2DTD^$vZG;97reC($g}IQcUDTR@%>{BeAAdM(S6~qvhh_SF6SC= z#n&y6+$MNMaPT3>G6<_Ly{&^mmYr$tmWMSi-qEdRtvfHL{t#Tr-Y_Rs`(y@X#=QY} z#gI;1$*$Gil-&TA5oFBkZn^;<>R_9xmiCDUPbj05p^8i|U(;1*Ioj1YbUh5N&55<5 zVzpLkMc#tA>%!VB-hy~S1t8>tTbZrb8(26T=(16x#?dXLpG$7uoSAdX()s$q- zDzj#f&(6|Ln#jQi)lG379OPdudd(Z{htEc}_5+NyUq(gyWl~qvqR%QT)pDqU;~6S0 zJ_mx<+SCM=H|ek-e9nna;Bqply)$R!#mnz*v4S~e~}$fo;oaxfIKo90=w zo8^tpZjRBE-D1rusr7KJALVS^HGx88;|&ba+DPwe^w3SU=)M57zpkX{=5NJna-A!&;jGish`DHlMY z9U7%wP==>u&ZnNW+Du%zTyHpTxUFlgKGRz3@tJ6yy2DYLx;ocib*|TGBs9#)0;hY1 zlB|uBwaG+ZV2B7(UMq2)1Xkbm(ef)BfVa+OkkT6N2#Q;sZTSoABiCNX^5|(uiYUu94)j)V$UdA|ua0 zW#@4QDnF0YWPr{I_e6rY)A&{<6TN(xsvWygoz{n`)@t6QzNn^;szA5UV5p*w_}mVO znpU7&5o=??O}j^$K%Mt&^lqF1svT#0X|3eP+SmRs=@NFMT0a2W;Sjs^0Vs%r?70Ud zM?G8(L!Bn%90NHe(Vf4)KOoU9zg-@LNqmS+cu=|y;9q*^^#`RxAYZXg>VQ)i zvvV;Lv&Lhx;~2&o*2YAAdL7mPv?C@>1KH&D5^aU8T`%c!Sgv zAi4o7u!F2{qx2*~jmtHHUggsD!lCGja_NRT!p`WYPr{@W4n~(gB^9LM{qSG+OIxb} zKJJRa@#sWdtXRGU6W zv|x{R{!+>|@I}FuBZ2s>w*rL0Bmu{t(SJJOYlZnMNcqxd*37ti?7>f;8XjR1aT#+schgLr& zW7w@eB~JvO0fIam;4MLJ3ot%e?#Ntb*-g)8`M;nUm?VFXQ0HVKB7|aqkCWxc(fs#T zlQ#ggsV>hDwnn#9m+wvzcCc2W>;)Jt%FO`o5#?3@Pw3!%4PZ`FTx%WNpo1AY*sO!M zbnuf7n#dYKUmZ-A<>M$>Zv`3P!fi!vPcsGY#Y3Pec##@6uTkJ2ds30<`;kM6+^9Qw z^sRQ2l6{CgcI8PlC3oT*lx=41qai(@Csah?gl+>CYgt>qF=pHoWgMBUs4aUdr4S{t zVIS3&%hEQ|auNc>z$`kkj{KjbTA$qq@8fJbQM`Yed{fQO?nlsVaYP?YlfO$69%pMa z7SJb#4h59o8;- z$>U5R-OrPQl3e36bdisnkTlU>ffEfhmeY_^bV?I>t+`eOn`pfpIbRSSh)!)PpEYZr z@bDJfTW!2$9h=ZXeiQ?|Zc7<=Sgv4WTglp`|wjm%$TV35kMB&XZ$_ z_~KE<=95!y*35zzXe(pt%yB}L+#V_LK&@bFK#S6yaLL1jCs?jqZY(?*?eCVW3ptO* z3)?)-M=Pv$ksgXw;*tA+`bCe%Z z`Kx2(x#J4lJTcDgAgBEQa_QXhah|VUj4eE<7h?kt>cv>Y zgDA$b)$GwOax=EfFV|rAca)22zhg+n%TXykp3C~|G!O{6D6i-|&p-mUL zXUAW7=6XGT;6c3}U-O_|kN@%@>hYmgkHRVoIk>CbGiyIb)@fhjLC`+8n(gc=cdL@N zRX4f3_JTF>F>?1Btx4A8$(O4naCMi9ubo*N_HB2$UKI?gF2$lAf2Rg*SbEQ^l&Wv9 zDsyYY)?6*&?9~z+z2$m;r-I9YS49Qeu#c-q5c37dW8`=xX?dQ5UnrhHqg7VCPGd=fgg(arK`fLS-oeqj@f0%YM;HCj>d z9hhA_i1E3TF=d3@BllybNiP0^*n1pBAJIp65EQR7HgkkLMA}OYf_)h@2zze?6wnjw z(g^vn+S_zoGYP#-j6FG0?$_~OJWii_xF&_l182P^CYSJ_p4mJe1cS?KqRv}nM@{pw zWVTY3o3JNtPnM!%Lokob8_jG}Ah{9Sxxt*l-Wpe<274(iTk2^?jO#~%(;Eo1o)jz_ z*{5N72UCL(<{Q}3pxio5!<(t4n>f;;pqzvBb4YJdMY?+{kgocICY!82ahgO z9;4y?^cS~Q6QhS>?I6bJEGfAM=wV= zPJ}gN{%Heywoq9~;Z>-Fs=z&tbNHs(f>_ zU6E`~Za5R~dg1*M8~@Z6cN{dJCAc}S0jqO|>~B<#0&B;pYFz0xM*%gY_e?CiS@;h5 z0pTllr#7*=K%uJG<>p`BC%S$F*ql?49iT8M2q)T%=1! z>D?fhn|L=U`uYs{MNIbSoLNx)!rRf^cgYW%g(Ga#-SVikw{TN4Iu@ljV~u>pG}&^5 zy?wX*z4G$nWHSup*?UdWzL(gWbL63H+dO%3w9#C7i4b+%BhRVcWNgtywSAy4T&%Xg zxu|$TP%R9NZ9gecJg#(lsTvx~_T49EvD5d;4^{6Fm{K~n1IynaXIb0-4YD+LWP{w7 zS?`nY|2w&~V$GM!t*?oB+j4mpdwqp`ksU6Vot_Ef3JUT|N{fmEV^nK@1gs^f5YBg0 zCzee7xdGd~QjW0GtK_xO1*_%ZHLg82uB?*} zu?_3xM(pBxoCG9okcW30HoXL0X6-c!S8 zX{E*E3QNX?^2Zg1)oE=0M%i|)nnw3;lxqs?{)glc>-Df~XPFPn*Rh`-l5=d~Dd0B7 zs!mfwQ%c7b75<$8o+B2cI2ai1ic46N&GL*TTXv+42Yf z$BL(kN^?o;NNXo+fm+D=JSX>NOP`f@v*pjoe_VS^z4ULnQLU*(G=I?>(ckxDKWjd%9-H2im*ih-#cBxxFEXxTI6i<2Y*9MKlFi|!=(4*HEjO}a*&CqtJ;y=Ol=dSrr-{_bQvwC7^i$cz&YhJ@quV}}dkWFfpUG=${oe*|wCDG7xYo7$ zZuN^wqv$(7%ea&0%UVE^9*Vf25$$p?jN z4{e(IY~vrYxO$}0hV57?XJ4y;&%LNDPmVtNhrCmWUSCZ~NlNTCM|5pXrK#}e=$~sT zY34sgv%a#js%xyS9Q@yePcuasajoJ<7c0s@fo)qVH@_Atn^8w;Wg#6JA9I+ao0t9# zORHfW#l}w8QF7SBb(Bs_uqegt|6!$~+bzoR+GPh};!9s17V4TTrevw*=R8(#hwWqM_4d~KLj5+7QVR8Vgj3r-^m2r&rOyxlNd`L{c~kT zXA_Wd0gkCo3^)DN%DCqeaIXND^Sy{PVN#P(L~t{*bcB1&<4oytAQ>V;aZ3v1b8!G79jm1;K2*LADJ3k=_JBhD-P9hO;do( zoA{!kgp}NDQ)S}1bM#CpEf;B20RCIDi4DwF8lEbd{I)GjXdc7gX^7vug$-K>=o*>7670(0kcMJs~Iv#%s&q<~-lj$)ev@|4K!7~l}E{Hc~Tn)`aHK5;I%&t`Z z(X{s6%CmQ8LiiF2#06%-qm^;zl_f+ZDHg5yi1(6&w9N_OTEMLxE5we3wEYR;4B*y` z;T|@mq5dY*SwjScn*dp&2mH<@q$NLAxdv^3%WEemq%}(jkF2fBB;q?7&z((Z|C)H< z0!lC-@X7HxGH6H?_?^Nt7gV3(nYv>mAXop^NL+Vu`lU$cT{Xi%KO4`AsT)dy2cE%j zJX7D(Zv>vH$vl9KwHT9W3ksMPdnWKgZT8d%E=f>Z{(}_0+pRP%`>Iyu+46wJV#)#1 z9zZJeGx(!Q{Dv@%H6H&$EWT-q#bn3xaKQe6)A2{;+lX*eLp;qoia(0@zJT9AE<-9O{Pn}IA3V^VHGO=95UxM(sXsKSVYaFXs3XdH`ZU#_N{_;_TQu( zQU&e3f3wUZs-Rt8HEmg9TaB)Q_DRr^UCP^TSz%nPK94j$;)vH+(DUCk11}zT4EWS` zF>jek_PW%m+k^JUiBeU~Jqe)Lc zDp=pA;pGx`3SS2*NibyrVu7+AH;L zxjsW*P;3PxYoY=V;ad@IooO-M26zwP^@jAf5vGMmF3NSCA$}ynR4(wJ4E|+}z=swn zT*j57$~_SN5B{i062rGP(Y4lez&xZ60}_`wdl5%{Lv-{rcEe$$ae+W}NPbRhr?wg* zuM`D1@o^AvD}>@>#U_0TQssPEV6c*gx4tXdi&*}XV%idl z>9MkX4yB%-nkV-fZQV72wim(;$Vr!`m9$eOayB`rG+_4*#q~skol3en-^x^{;;C4* ztje}%#y!m}K5Ey_h>zg&&sSFL#?Gfo-=1S=?`XWwDJ>B<1Y8o)_?4M5fo!xG5|PIn z7`Fm0?9q~X?bRGUkp;%g4On$&2fPE>9 zz9DJ47Yr$U0qx6$!^Sxk{b)L~t8zD5UZ~tvYr&6Jv-Hc1r|IpVh`a@ixs7E5vT=Nj zP6%%RV=nn7A&rY>%4kK3bK0_jSF3XJNZfx>25K!|oAPfXN3)nt}XJl+F&_^gJpL%@o5y^d^rEx_+u2}9u zT)G}rW=bp(6{s%|$V8xDS3L8vz*i6y-^0N8EHWoGoPoGjl!)ISXlC9GMzw4Lj&4qw zOmeGSefoV5WSTao0Qms91+74F{P%QDTr>}OCEjg^UyhFjE}X`JmQQPb3DbrSUackX4jvLh4{Pk zQR_P0D^PqLTZv$O1P3Kx)5__GT(*yrAyKFojm&Haug+x`klY%{trL>lA$(n1i)jkr zLx9DA>AB3_P064RAA%rXt7Ny=yXF7A_lthkA&J0Fp$W4M>Zn5@;~0A`eeTI2Ym9kWRZgnTvGB zYtXw~EwpgN^;hz~xKszasTsmtT2t5qTog!G&xyz`1G0ei1*r$V&PasiVAKui(*Q{| z^a3QqhllZKI)gYaw<=p~$UphjxWpjjZ-7iqNWVmjO-{i54Y*toCvLY87gvqH$h!p=KsA=ePJfo@j4w#bUqMvPl<-Q)B5Izmu zG#$0fGzp1Z{ZrgggsbU^+W$Wo82^kkssaC54pa_b0WR;l%!D)>!dwy&eH}09!C3qE zO-Njk5Y7TJHygGkFy5Ph+YY$AB~B#Zo=?E-SO#QjV*1s5y>e}=2pgx&a6=&yacv2> znNXL!6|?Znr|1iF;_=%$p#RBk+}X)u8bJjBB5%G0h~s7gx4x*532xI0ujy*w^GuBR z8xT)<(2p{t=LsG4{9fybJ#Si%HUSdNUD6)(>w|DN?Frr_Ly0+KD;V^Tr8mMeA3r>O zH!>pcH|KW(;hr)42k^`bI%G^)d~5e%B=9EV7B|rt3&3lz+ix+AL|PhX#sSU*a_e6M#(s>1WJ<8_dTrHf}=N3xH%` ztAN7|VLY0yL-+E5N#TA)786VAq@-&Gm<@&#|8=Xvi0S}pzN*ow<91_T1MP?^XnTS- zwjR*3Fxs4>4YZT0pdFEruhD5X%|N@b3ff>ozD7H_*|B(iS5!ee6|^xSrImS6XKi($ zwbfcfzT5E3XDOFWe`Ty1^R3EQ-GF?#N}-I6W!`JZ_h=Pmek_4D)>fK*-tDb;eNR+D z`#flkqvJJ%o5t<)+YHTh2IPFo@hX1~bUv-9*s+}|0-ySV7t~m=MTQC| z@@iF4$wr(NbUv7I2MNWtP}$1sV+${1t!x#<@r>Jm);RgDM(eAB)&*KF$thps1Tyvv z7nX#>E8IQS02D{RL0wq(lvtUEATRzKZOE6$O$BWn!(^J@MXRqi7>)HEYoO)%GSG5^ zjrcu;aJDuWwYM}T8M2;D;RaWr|)u11SAQ6 zC53tcUye83?HlfnKJ!rcJ>1xONqR#!G~pwgnujW8K& zzoE$}KV!ul2)~ASssR0r{=Io0#V01E8HWRfjsBzXk@&<*z|{?^?PzT-AyxsI_iF+& z1x-%^msV{G(f8Mir(&xw0Axx17IPJlU=fJXdx5YHzr*SCcK zg8`qy+G3r#@XnQ{B#eUI*qFR6{z^%>41%dD+AGM~IJb;SqNjm&IG%Za9M+#(SyI>O z#f}Zewi)GPoR?MQ+YYoOhd3`|GhNp!K4*#6C|r%asHy1Z1AZk*ZDf|{ptx4SdV?AD z9WU50gy~fT`WgH9>ILKWAqd7-E*bWF;sa(H(wb^)^(ivb(AxT|EDczXp-QuA4+61- zb#p3BXj3M=Vjre@#zgs!H4Y;w*ACrtUebE)0m(3E8 zp9FF>o$sF*=O*Aj`xk|98E}Wq(#OI*1NGMF57>cZIZxnwEPR3876?|P*94@#-Ght< z0P+R&{fO^@a98|Mm)QofyGJVZR6PEp*V~>P6mJ>6Rk|8+B=+fd7|&b)QTPLd9dQ$E z$np4;uWCX`gDV>eF`=OC6;`Iz-?*YI>Vk%6+37!(rFsFvdgl?Q$&>?J-m&wL#^)NP ztxE{E1}--THzSQJ1Hw&yPos@XY6p!54gM;5^-~Z%k4p8P}Lp^ z#osoRBvmYb{&w$^L-aM}uYfdI`T&Vf8xlV00v&c^mQ$o&zf5QpmV`J8q!efoD#`;cC$G5>ttcn(A2t z?fxog%R$RqgJ@?AjlUjXEc4+iXg7n_ICx`a)~rusna@^1y9`>6cPHhm$qj8DYD&_W z_2nwaxq{_Qz{L)++KOUv0Zel^`Ga`Vr{kH^5H9`R1U{cf2qu}157l0y98biJ48*wx zVq$XhFx>&L9gytVYJfKY8qL9u2!DEm{+i`Rz@7=|WH%Sw!0eE94SFD*>}4Z8nY+zy zU;(6;eU5^5K{!!XzA;=MjsF8A{$Jpa`ZRi@{`CNl|0ov!1>#Be^7xancmR|0rns^= zYp5@h%1q}fN0@v-=1ZnTH|}KvF1HTu0zTQ%Tq$%%xD&$VfaIau3rKb~cY@;4RP$z@ z2PSjh4=Z=y5QOOCI+F5yFUl zsRy+oL&D@{L~=2D+>kkvOlJ|MW~U#o;U~Z+;Sd3&!f>6k5aB$84*^n(Bo<=lNZo(T zTZG)lWn2_G0`ZKlwWR2FOI#YQyT??{HeltfsjHofk#_$l@rF;Yg7!oL?b%!74nHGpqbg{>1ubt>Ds#1& z%swjSC+P`%{%eM3W5-eaAE1q6RMb~fHAY&OAz#j~_HBAQ^R_cOsCa)7E=_GCuTE9) z$^6G9nE@$0pB0ZmJ&QQn*E317o%C0 z3i#bW)#m zmwgN(>Z$8T>+)zRTD}^><%p+kQXao57N3a!Y%HGRk)kJh`kf8NT|kNJ-xKxZ#tJ;_0^^xW)-R5V$;?e6DgK8X-*GRMGx78jyP?Am0{4)^fprw*!~=abh9n zCEx~u%O~NE1it&v!NI~A5%UQ^=40So0&+66t`T=SaQW_7qW12Ypv{+F6&Lj%kbt}i z$b8*4JRz+hA^a?GNxRc8W)|oH{J#Xa#zDLfxZJr`!I!uHx&+22fXw@Ob3)plgm7=z zZ+wgxZMmy0R-5)_Oq0$#AH@+qUH zqhD2n=voYneQNwNlKW-`qX5(uO#ySYTude-9`^ambU6+LYYgE>H9n>ID)Uyv4MzH7 zfc*fyfTX4A*9gyi^z&82SC~CyQ|+CouRe{h+|-1T%?Gh&ju?0LZu=>2Q(n9n7nxk4 z)B`bhO;P4X+RMP_Kly)urfpj(;|hya^Cb-jKL4dxLE8tkT+R^Q@WQxHr;&j+w+h-y z$})l0WuWa@1?{cKmy03F*H~X;TMej!wg9wzIY+d{RfVy>;VNinB-A&ybE{eROALKf z09r0%c^@qVEvZu;Hd^<_XPOqJ23|7_<)HG??}5s^D({PzBav)F`Xw@(R|T^VfKS4t zs)F%3%XuvUJ^!t%;00;HiTPTwiq}C+TvBmnn+?pKtzZ`C^(6{MQ>ZFld`fA&=(T)f z^Y5vG*$-ewB99l;*yO(;jn7+ZvHgaE9mg{_p*U?;k#Vk?OlIQ_zOf(|t0+iY5Ocvm zr8kbhMuvXBTm`KgwA{ELTBGmQWuUEUzTF7gc;{W6HW_>p$F2%mT6giEvCPJ?nhsjt zNF4VL&~m$l;*7M$`sNyFIgiDlz^8nS_+$l6 zpTv#&}Vu(<-}#cOp!pl*f~E zl*-2yIDfY`#;>e`;h{Tq^YnMXo*-C@KR!T>TeYU2VAg|uoE z8T$=E80D$>Ju(BUM!v90JalMm0^`TQm^&~MaVI6<8b7C-mXPT}1MYWaGxh1p_ec`o z_Wl*=BT-(yoaO1oB z=x2P{W*2bzK%lflT;qpX{C!ixGkDC$n9gIfkS_%c36)-LFuv%@Hy4S~)!vuk`&@)W zznr<6hg}o3w%_z=P4V6E%tt7PfAu1X58H3t3r>|CV&K)+z>9d(ZxHYeX42qFl^Tvj zTI0|!k=f`fm?iH0#q31Q)i%~pkZHfM>={bqoYwR7mBCNQhvbt{j*uLDd@c*jfSh>{ z=`=V--J@?&xB%NATxpz9c!9;F0yafUk^F0iF!5ZuP^W(wkn}KKEuTWDb+h*nvjC*gD`n#d3+(p7{xbOtY?%9NS-Ony}H0Yh-WgO z&m&B;fD5wQARtLB@QK4u6j^{c;-|-B2JnOxu>=6q!%O29M&h_Wb2&b22=^J_a*ddX z`=tT*ec(}xy$YzUaF$`3lB?H>2P%06nwC`HY)Swu2OI)O3&IO8p3;*v*%{v%{yMG7vMT3Df=k!sQ{mWnD8jw3fKyeh5{9mel#bR z;jh7c`Z%@%QaQ|knSc|~j6~lZVd~NmfMiesYe=yrI6O62G%bIkI4&7PvHjN@>KW=zNMDZnxc^KUFOr7nxpLi&MkKxH=XsKmADR{NkdbQp^3D%=M#n z7AP(uCFqEF{5ZT>jfB9*7jDGPFHvr@I3r$1#ODu%1D=528w|3&3zhtoaM0!S`y&pA zJ>v7()SSE6%EdU@`S3bLX2TaL=}Fe%U6^H|;!Jh=BC6fv^!V(m-{lM0nid&Q-(941 zObt3C9*-~V^Etx7fZgwHX2j^ZSm|i7heLLs%Ng{zB9TBaWM|74E2C0FsxM^s1ViD7 z&mIZ*A}xy8g(XT4cKbS|ktO5~dYtx1&}DN*TrRJV72d0O{H~Dd4YxBE%DF>_$i!0oS5!PP065lXiv+!)VAvJ#+5-`%ul008nS~`vuT<4Sq-dht=ZzNMKw6*hB(;zX#`F2W%df&*}8AWlNM69i2`WDid%;{A$4C zcG`1Whl+~T4jm>13de;e;FRFlBb6iISDil9>r*4%pgrPb-!D;aPf?u#Uohl%d7P@v zX1BT8vAb3(cc%IS4x4HZ+WbLe z$i*(+r`+8Z-Qc0pcCSoW79TuLeUwZ-*kC zuz0!BE!CykJOMA7Amk4RBjHHL@p|H?%P|T3=#EfWbwxt1KqTT*J86_wHe`j;H6`Sa z_(Kto&FgTgKELYe%*t0Nqf)}E8{;1nFck8j9PTa@oy}}3l`bh>TL>AsJ#LRb;~Yuv_Ph?A*s(X1 zdMz+|!umnp`8bHakj9apxZ47%BjoXV!aiGfPbaqil9G`HT(xk@#C)7b477mTi3#Wl z1VV0~$Kz$|S1H+PZjZwLm^uzh>8Zh{&4T%o!GwGwd=AC|58%g zYnZv#n{urKXc`!#FEX+FyrDoa;PE+Zu7FJq^a-*qYm{8U$^!pZnx{I{pa8X8lZYqTQ$2d)KW*lu@u zXiTC=VYe$X*u_?^RjlEvIoLW#|_u9rCadDv?fo-x?R4Y9}+5z$|AGK zuz`lIX_e45AqX4vNiYHd2Jxu+?4b}uI(Sno5#+Vlu?LiHmM~fZ!_M!wdmxBBc9#91(lo_w zw?i=4+yTGM4wW?`rh`D%C)E-3tDy*u5NF62^ms?&_4$7(E!npZDz#J5ddSRUbB7`k zJCw^UGxgFmU#AT3Wb?Z*N8Mptz~@D;d2Vf~%TSya4t0Y&AT<4rT1P?=2!@~|;3f^_ zbKf>!VD?2yQ+8sVGAz|@57>PE2&5)dpv&*ReH8oTd8M9obD(76O%wGovT>)lPRH1L^y>JZSL9SLdIFQr z>vd6I*nQ*XX^D--1WNJ?)CfsE2xXV*fCdObRXD=xc*h z&i2RZN=jYIR`rL_8yF~VpUo5T73d9Rr6c(s$yapb=tVh z!lFCC!|qdkk)XpKa@t(MkXJ2Sq~}ref?`Q=x*ef_E#k(M410sB14H};Wm-xg1Tlvy z`~BWP2yhZbPi9MYD>W@aUm)Oepc=^B?yyg0_7|0s%#v|;Qv18y5zGg>(}OYR38nJ^ZWUOab4oo{um>|UZI3c7 zH4K|e4MqZ}Kh#o0ozjy;XJfW!4_@L6LtXfME_c}F2{<8Ir{=LP>oMzRZ&2!|+F?0* zA;w%Vw_uWa?wHCfN0l}ZU>%MsE!gOdO5M~*(B`naf?-E6=!X7sP1B{U#HH*MkBfb> zL1~Yi)PPS72ZCPJ;j`OA(}$8Q&DFT1MSMZG&2A6dBPt4O^V~V56H6~wvTw3#cY@?v zd%$dgnVoAL5|};_+A`OgS5Tl^FeRjcaIH(h^n75%?g+VKT8SGuP;?NFsQr`Lmqb-@Oh8PnO#C?ow& zlKevLQW6MONK2bD=!c2n58FJpSuF1{r6HQ=lSiOdcW+X9q=Y?4cc6J94qMQrdhcQ@ z)+*U4iF%?;i%#=EVnsX-sP-Vljn^?-=*jGRp>%pYtYl?)BSE)4Vt0lyHr&u^cMH8c zO>sI{$|I-{I;0jmxmmHKVNjr{A!!1bDFKgXj?k-uNxcTzttx04o6nAN!!SbM`BZm! zuE0(|q;yR4`lutqZa)-iFdXsD6J}D2wXb2NgXPgmlh-Srl!!AD3}ZIJLJoT{#_wU> z4#7@3u^tjL3{%95>3|x$VU9%RvoqV3Zs|_gKrpkh*ibQ%)xZLwUnf@kZ4~{U%}SFL zh#sd4DghP@76Ae0LXFDevIm?YSoU6@9~a;_eQfd$#g^`J`vZ2bgXTY$OwRCPp-YSx znX~C$7)K#HhPx}^#~RFeuh1iwOvY<^An5W2y&jnCKD4CYvqb0{OD0n_#UApb;*pRI z;>Pa_xt6kiJCznGFrVCREShXCKU9l7vWy)+s&q_oQNircudoNuZI0#C5`$Ch!LSV) zAO!saK_0ZPVC9DtUpg!!)D2_Z?t+>RcvcFyW+6Ujr8krrX*RpVgD#Bty*7tSbvo`7 z^4RRxVJm<4l9HMRW7`vSdjqQ78+1Ct?)wFwZVi3EQAta~aD#4e+Jg?&5p=4NRl)*x z^nlVpACm*w_uDW)poKi)V9@38k&5uTR}1rvNI7)zPkvCp7>MQ&R+=GNU0%9zZOA4Ri1;Hm zEVQ6purvy<6()Al$L*}+N|!a8l^SX27pP*FHvq-~m*4v@;TCq&>q;}TwI4gbR%w)Lh_s!yC>%>GQU{i4P8jJnpUwNAu&fgP@2@Hu zX>Qa4_NCM5c80y-kYkBcGF9(VW@Gt>e(Rl)7F(a`ns|hzK*G+4WI)c-)#=K1;RlLsEt>_b49{ICz>1!b}UV7 z-g04SrCM0_D;dxPkSHp2FjkZiyJr&y74=D5y%Mq8ungS+!@~w4;ae&mf z&FgbQH~PJHN63bXY!&7jP)DZ0`+*4+paoCB=ZUztRc>P}Zq#DU0`a)ro&Xey4HjI) zV}BI&yzzCVIT!Y8URS!LV@}##PA{xK$T`2=`IxZlFVxKw$6$=wwqj1BjXi1rOVp4T z>&2jRyHH|Kw!RcQ)HfCtJ}gOKbNM_w*m6kJRIC$Rusg6g!O9Nf>2ZP8en^>=9)WmK zv8u7bi(-e?e?su->rS#X`MR^92wst~7-4?s90)eZ=7=}^Sr7BE{Y&) zH*5jeNs+K0p0S|A{R|ttU9qLXYZ1YsJ)lAps6pqmLY_|F7WCr^$CH1g7zSvuS{R-( zk;Ve8lzbsowT0Yar$6wV&{ZdB34%B#E)I(nQLZ6ZIN}5zOgb#EoVeg{$rhz$it6=X zxdlg(7rG|w^+k216@(Ura`a=`ph-QEUBXgWjQ0Z1kf_-2w2*`61Sj5o9)27<>R={Ho9`-YdEfHr_YX zEv^t&1~waRwSx@z242%Mh4#kMz~{Av9ayiqo%?m}zL3Wj@&)Wztc213_5(uaPAu~Mo=MA?6vSV*6 zxiCW10G6wvNDw;DXLJ5rZxS~QI1hv-ya^Z~Vf#UCsHS4hpyF_|2GG8tz#(X(yPhy; zBO8isg98x*EeJy^@CGh${qPCpP7I9UPr})RMJ%ivo8Jj#3=g0GO|8=DZb(S-blKop zQ@sxLFpU>-8<7bbB*B|M78(~7Q?V|@Ty>y_?FPC6RWmUfdL9L2x0|l)E`F6 z!I=f4;fT;p6T3+e;e=5)75#2^`<-?tyeQ6q>up$yq!cs+GL_Q2?g(xm4Er&~U_aZP zM}_O-7-TJ_`QYQWhoPfxdGqSNqP=;nRjDb5tE5NsF`Sd3w& z_}_tugJY<|E0Xe(;z`5k_d;X3FhN}ySAlnhKf6xS;5qU}9GIe>VAu&e?D(HKc~db% zd~Qr>zuSQ|vgbcKBkqPu^SZ*A*bx2?}2tv(KHSf7Kz*czHozH+K=}s za%=Lk^oIj1=KazY1lDa>Wnm_Sp)EbW$O+zSB>2V^j>Gmu!MG9{j_{Pjx`Vq!#X`^S zRX@-MSsG?wB;tY|P+{l7CH0{&kPZ0;l4jDIkWWq+{9!mM;evtZDdPKxZF^Ihm;#e5 zU=Ly`>36%~&i0*TEe=BiKo|QVM&LhzV8qJ#W14<6gqUUk2h}jV?E#qCSZ6@^o}zK1 zC0{v=of1dD3o+^QMgk6)WUk=pie&V76N}3g_M$X?_-mh)u+OS3%Nqhpy~_zBcBV)W9oeF zF{NGx4Fi2ml!v=gi|7*7eqk(-9y_M^Q(zBy?Ql%kgXjaNGxP-;_%2opaDw}&cj5iR zED!j;WdC{>4%{Gl17HyPkc1tb;8%j1y_`|IeiqbLsfsHEH8&nO!VtFu0nHz9f31sg ze;Aj6+Teh|RHdDxZ`h)D6mJSvM!~Qfq8iyiJb2D&*r_41&0#S>l*91xdcGA{_8(Y~ z;?aiDi{+ZzhJC5vcRF(wrZ}9hLAdEutcTs-GxNJjhjffXY%XBzIkyh66V+l({KA!vWmL!uH$23g!+U`x9mfg@dkyF~IO&5}Z^I`2L6_~Y z?3{3wqfiiE2J}pW9)JT4POkvWFsuSD3Qw~upTHUX)p2E6I>aza>2P`- z!4MRd`oBuV=??5uK^XdA$GNcB^!!vQ8E$lJ-(YJECNyn{*)IvB$ZOn$%}B1@KHcty z5(r>gVRhz$eE7K%aSB#;9@Xg%yRm$R=^FWk&3<1Qm*T@bw>dDkU4D3Ae4$?{IzKCR zPc5W@6Yh9V#E&6?sp<@ef5UnkUip#i?Gs8`I{MoYz_yr!HZeRQ&t+k@=CmKl27iF1 zNd!w^EX`~lm>{sOoxcmE8gXNC1=20I$N(;LcxNHxpeWJg?mu9B|H4f4i6e@%j zN)WzB8=Q=O*m75{M#E0OuZZc`EW}oj9}W&ISg?OK+dQv|tp((fmxjF`thwAFEPh;m z_{Q!w-&tj8+OfAjQffiFU>w`v|99C#LF}Z>F>9?;dC!6h55I<1+YoFWHw3Wi!43kP zoO8|JvFA=IgKE%h9fsL?_isw`Bx|cy+5;Q>w@r7;c9a)G*6~Pt1=K8W8##F`faalr(D}*agtNY z>w`heGW%Hw%mcGXjJ4@S(NUV;5Vi2(KF| z?ufYWqF8s_Xsuf7PEnT9y0$JT(%+L@7#Qg}aAqdS%}w6C@ALe(d#>-Q^=}(NW4Ddx z?fua9cZ>;*c2;4H#EiJ-WJne2k#~&X8)xmg-uPZ4;2WI@_Zr?#*Dk9mY_-Y(7KH;3 zg1EYriwm@AUC;TD+^5*71#~G5A-*h{Q3c>1`{m5NP-6kUjg{Dha(bS!Gr34B*!1*n4H`8%*A8kxSP*ZrMC*GLF0q*Vf&rImjrpJQ zz1LF9+tT?;Ysxnj-xG`^BG~I<4FZ(Qq_=G_daCIgj8jLp9J5ncc}8b&$}SOcfQ5AiY!J+dOP<)}tF%}(ZsaT8S|;aeu7$J#Nf2`!%@a3f z`8N&-g)C9ilQQCwZ(rT*fD#h7n`TbxqogHK;9R3#-DnJJxK@3((HPor-Qp*DjA*!C z1)GdRO7unGbuAUiFs8-buy{+4Vf)>vHRs~+#Ll+a5)ar-(O;ofZ8F9*+@xOL#J75` zR6F>g->kK$hRuABU-O-P4Skh1toUojW}}aOi#AnF*kag66v{^KA@P;s*h#YzRLQ8~ zP+Q%&97W|@wE+`4=S34b+FIw&ZeP&K7fB-}wa>jxJ2gKA$o}*##waT($5qVxz_SBC zwVmMhJ@+?JMxc7-jI4qP&DA@!!nS0l(1KYmc;Png)SdP1m6*syni1Dvwu9I2s&6N6 z0J%X5MlXSrId|8$r%AQ!#vlSt6@m%w(bW2t#<(Wb07N2uJX$ey)V;UZZV9^gkXq4w zvBM+#KJ6Sed8;v7YZ)u*v6h+5X!-0!&PX1p zpF2xXLS3wJhxr1Yd{Fy-7lRg7ALGWfB^Xc;`GO}K@Mw>5( z9H_>>kLQo*n=?52Awr95!+PI0VvAM}1}5}E;l(ly{-iA^UUbL@#yAVF!()J8sd(KG z=|{Ci#opx~7{^*tPFY|$%7W+9=rL_xv3K}~#t{||fG0s90aqccX6fTJy!>)5`p}rv zBom4T=c1+a#Ox=u&SIza5dwP<_!J66qR3`dM#+=f(PPz=|A1d|Q5@2Nv_ZqEW>`z1 z|CEOQp6_nhVGOZ=av9kf{P%#4l0L1SSl`>y+Z=A$v}`0zm_Yz)ch_ooG`x18n(?u5 zq9rP8mNoP4jigHuO;=1d*~Coy9+}vi+|`q zd4e!}LE5+6w+KXS^MOfNu5DzN2k*cD;6izCW1u=24^OJ(Uj6ZGv<$KnOMl`d-Mr(VkhuDxcyMg4RVdbiiW5I_{;DB~iQ1v^2N&U)z=Z)-(rK$NX~)+0%Jd$M?dHT-z&tus zoj7@!8~T5;QT}$L0mslS{2SUOB3|tktsVy2i_nzQ$ORWuT}?EX!wr-AnN z3a)B+BO)8pp;rOTfKI$u)dim#trpi=g8>nosDc6F^zZdf-klnW|Key|6|(^^J~{N}68+l+7|oB}@$${|7*QuXUvSPX-FvG{JvSv~|Kqmb1F94C!b z!Rrp+01)Pb*8ONHG9#rWdl9mA2*;rrzsUsK>(TN+$P*w2g5*OoC*+Tkw^aKMNlK}+?TtIfYp*Yn zix}gn0#mF^l*1F8MfT=z}4XUM!TDV8P}bGnFK6gIJEBhc6Ij&KC9g zSE!qyovNe=vG^iFj_yBIu-%wnLSb^4F&GFg!i*PhRjaq7oK_Q@Lnvq!={okR@xStO z_pgCxa8xD8h7e*q|JGj7)P!xc&r`lMM(i;=>800yX{@sXwAl)8ifh2om*e-fb~R-s zbavTS#&M-M1_&gSR-5WYGT{St($|z*YK7;eDILV~r73-=jaT1kFh{EGJB)oxQ9?}9 zuVMGYH@MP|mJBoxElCoG*%MRwoeJvE$7*}G~r&Q-Pn0-scF;XZt_=5=rLi{YhmZ9}R%vo`c=~Y+&un#Zu+|TLk`O61tW{FOP zr;9fW2u=APd_kFzz5CZs&^o7GFqtUdvflwd5N73BRg!J_JE>I~x6QgnM?v{ylvBFb zm-X8o)>XA;5lW#<5eWch&^)uRb{^A}q?|=Y3jxLtQ3rUREZDA*qT^`{&MV6-T4NQv zl8h4~3U%#kZB`yd>pQg`MeAf$7Ac7e(-aMrLQ=H>hW-v_&sxM>an&u@oP&eTgChL{ z0Q-f$n>b-Xmv9;-ib+7E>X*;b;fJQ#tX}?>c_c~53QZ78)FkDK!b(Balg{HsPH$FN8$+xoi>tef=NjU-MR`Cf?ToQm^wDrdesubk9lq3m=j*Z|7V?{z9?zFP`Z6UuUp zOfh0rEb3bN2fZE*aU?p1K9>?ru#@zBHMzGr-Ll;nJDEVKh@7b2hH z5f;<{kwO+J`YYD>1$sxZcTyjdObgGIGM!*BA^_R;h5DRg?}L5JaS|hPZ~?JYus3is z7VC3m?{GD`FMAO`(ErIQ;^?6;_!sF5i`QP>*PPTJ4g=(;3lo41A#zLfu((ITb#s^o ztsT*s?VaMF!gjIU(8hSY2-wL|{qW*Yu{An7asn_rO=jj8P(qzx7V@;j#+-7b)Ed(q z(L^W|>`NjJT^}1SzPK1Oi}~du-Jy(wT7a;Z=!K}<(oF+EMyo{Rk7^EqM)IMTs*Zl< zcL_xBQWs4DLP060U8bL`PVdJEtm|hss<-+v;eFCjDP$e#IxhQZ?Q(rZgSx#R<9|@2 zxu`_cvBEVFfd~2HeJxXWG@7H~3CPBH9)vbYH`vJ)`eDKot>N7AE~T600Z@c2<7F|P zwJY_hUGFYGxJUTLx>aPNI9`_=C9U|>wcU}V;D(LC66kR3mc!+zeb=> zuq@FMiPwAAs^d+wW|2U&z1WYdRHlF=#dVYbsZ59Mx*QpcZZJF~FbGKn%HSuE1-)LM zAa{7M8s0?Z2Ja&R5%-R{ZW8V{aEGKv2dk5t%>4#Z8GOV=Lh%vuRTAE)@5q3MnM)vzo75Lg=6EYX+v4eDfmoDO*p>Pop=FEZ zol$%Q3$RGb(arjgRIe={f{Pm=nj#`9?c+DUe+TG5|H9}z!u9cVx67q`s2O+QvnJxDbU zFo#P-i<^=DNyd+i^6l!n0p|I1d!G>qaqMIy%I+Qdp6bpZctTiVF1m| z({>YxN<3V`GQun{9|5g*sVfGWm7ga}e~=8tiK5ROxLYsfpLnRHGu!62cFsMcZEkXp z-kZ-s%q%_yaj)Jt|AVoSkBr<`{}Vr3{=8o=bsbv&z{CSOO<4xA!cAn#2+}d^fDs#ZNE&LjS~SSC={tZO@%zD)=romw>XnzmK;VtC zjXqcgS3RtTHM58jONiUS(1_uZIF8onhpU!m^MGayX5oy1gB~eQD8hxsqklwRc92@r zZ1&(oJypt8Eko|JiOFD(ztU{(Z`mHjI)ShSmuS}qGA+;Qewy(e2Ff%HtVX->zpdau^j z&ZKSOg0}K=`o68Lb2?}9>+|Z|A>8L_L(D!Ui6;1%swAm!a1;Lp+2?TkG8@t`Asde6 b6s=QhhnUj_NP4SW;m{WDE*xW*`8Vo+_f3Zd delta 172615 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%0Ae<{ULaRxSWOm|pK$C_JW{0xY7)VzsEz&t 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Ν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�*y08dE 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 StorageVec for AuthorityStorageVec { const PREFIX: &'static [u8] = well_known_keys::AUTHORITY_PREFIX; } +pub type Key = Vec; pub type KeyValue = (Vec, Vec); /// Handling offline validator reports in a generic way. @@ -216,6 +217,13 @@ decl_module! { } } + /// Kill some items from storage. + fn kill_storage(keys: Vec) { + for key in &keys { + storage::unhashed::kill(&key); + } + } + fn on_finalise() { if let Some(original_authorities) = >::take() { let current_authorities = AuthorityStorageVec::::items(); diff --git a/srml/consensus/src/tests.rs b/srml/consensus/src/tests.rs index 23babba1d2..0145094a76 100644 --- a/srml/consensus/src/tests.rs +++ b/srml/consensus/src/tests.rs @@ -83,3 +83,28 @@ fn offline_report_can_be_excluded() { assert!(Consensus::create_inherent(&data).is_some()); }); } + +#[test] +fn set_and_kill_storage_work() { + use srml_support::storage; + + with_externalities(&mut new_test_ext(vec![1, 2, 3]), || { + System::initialise(&1, &Default::default(), &Default::default()); + + let item = (vec![42u8], vec![42u8]); + + Consensus::set_storage(vec![item.clone()]).unwrap(); + + assert_eq!( + storage::unhashed::get_raw(&item.0), + Some(item.1), + ); + + Consensus::kill_storage(vec![item.0.clone()]).unwrap(); + + assert_eq!( + storage::unhashed::get_raw(&item.0), + None, + ); + }); +} -- GitLab From 61e33d79ac4760ee2761c8196096d5b7a3c1000a Mon Sep 17 00:00:00 2001 From: thiolliere Date: Tue, 26 Mar 2019 10:44:01 +0100 Subject: [PATCH 086/120] fix macro internal use with $crate (#2060) --- srml/support/src/dispatch.rs | 28 ++++++++++++++-------------- srml/support/src/runtime.rs | 10 +++++----- srml/support/test/tests/instance.rs | 22 +++++++++++----------- 3 files changed, 30 insertions(+), 30 deletions(-) diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index 10ef979b61..c85415b25c 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -110,7 +110,7 @@ macro_rules! decl_module { $($t:tt)* } ) => { - decl_module!(@normalize + $crate::decl_module!(@normalize $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = system @@ -129,7 +129,7 @@ macro_rules! decl_module { $($t:tt)* } ) => { - decl_module!(@normalize + $crate::decl_module!(@normalize $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system @@ -155,7 +155,7 @@ macro_rules! decl_module { $vis:vis fn deposit_event $(<$dpeg:ident $(, $dpeg_instance:ident)?>)* () = default; $($rest:tt)* ) => { - decl_module!(@normalize + $crate::decl_module!(@normalize $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system @@ -182,7 +182,7 @@ macro_rules! decl_module { ) { $( $impl:tt )* } $($rest:tt)* ) => { - decl_module!(@normalize + $crate::decl_module!(@normalize $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system @@ -207,7 +207,7 @@ macro_rules! decl_module { fn on_finalise($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } $($rest:tt)* ) => { - decl_module!(@normalize + $crate::decl_module!(@normalize $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system @@ -232,7 +232,7 @@ macro_rules! decl_module { fn on_initialise($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } $($rest:tt)* ) => { - decl_module!(@normalize + $crate::decl_module!(@normalize $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system @@ -284,7 +284,7 @@ macro_rules! decl_module { ) $( -> $result:ty )* { $( $impl:tt )* } $($rest:tt)* ) => { - decl_module!(@normalize + $crate::decl_module!(@normalize $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, $instance: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system @@ -360,7 +360,7 @@ macro_rules! decl_module { ) $( -> $result:ty )* { $( $impl:tt )* } $($rest:tt)* ) => { - decl_module!(@normalize + $crate::decl_module!(@normalize $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, $instance: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system @@ -389,7 +389,7 @@ macro_rules! decl_module { { $( $offchain:tt )* } [ $($t:tt)* ] ) => { - decl_module!(@imp + $crate::decl_module!(@imp $(#[$attr])* pub struct $mod_type<$trait_instance: $trait_name$(, I: $instantiable $(= $module_default_instance)?)?> for enum $call_type where origin: $origin_type, system = $system { @@ -649,25 +649,25 @@ macro_rules! decl_module { #[cfg(not(feature = "std"))] pub struct $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable $( = $module_default_instance)?)?>(::core::marker::PhantomData<($trait_instance $(, $instance)?)>); - decl_module! { + $crate::decl_module! { @impl_on_initialise $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; $( $on_initialise )* } - decl_module! { + $crate::decl_module! { @impl_on_finalise $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; $( $on_finalise )* } - decl_module! { + $crate::decl_module! { @impl_offchain $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; $( $offchain )* } - decl_module! { + $crate::decl_module! { @impl_deposit_event $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; $system; @@ -679,7 +679,7 @@ macro_rules! decl_module { /// [`Call`]: enum.Call.html impl<$trait_instance: $trait_name $(, $instance: $instantiable)?> $mod_type<$trait_instance $(, $instance)?> { $( - decl_module! { + $crate::decl_module! { @impl_function $mod_type<$trait_instance: $trait_name $(, $fn_instance: $fn_instantiable)?>; $origin_type; diff --git a/srml/support/src/runtime.rs b/srml/support/src/runtime.rs index c575383b26..4f402da8d5 100644 --- a/srml/support/src/runtime.rs +++ b/srml/support/src/runtime.rs @@ -87,7 +87,7 @@ macro_rules! construct_runtime { $( $rest:tt )* } ) => { - construct_runtime!( + $crate::construct_runtime!( { $runtime; $block; @@ -105,7 +105,7 @@ macro_rules! construct_runtime { $name:ident: $module:ident, $( $rest:tt )* ) => { - construct_runtime!( + $crate::construct_runtime!( { $( $preset )* }; { $( $expanded )* $name: $module::{Module, Call, Storage, Event, Config}, }; $( $rest )* @@ -124,7 +124,7 @@ macro_rules! construct_runtime { }, $( $rest:tt )* ) => { - construct_runtime!( + $crate::construct_runtime!( { $( $preset )* }; { $( $expanded )* @@ -151,7 +151,7 @@ macro_rules! construct_runtime { }, $( $rest:tt )* ) => { - construct_runtime!( + $crate::construct_runtime!( { $( $preset )* }; { $( $expanded )* @@ -177,7 +177,7 @@ macro_rules! construct_runtime { }, $( $rest:tt )* ) => { - construct_runtime!( + $crate::construct_runtime!( { $( $preset )* }; { $( $expanded )* diff --git a/srml/support/test/tests/instance.rs b/srml/support/test/tests/instance.rs index 373e3e23d0..6f4effbc1a 100644 --- a/srml/support/test/tests/instance.rs +++ b/srml/support/test/tests/instance.rs @@ -24,7 +24,7 @@ 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 srml_support::Parameter; use inherents::{ ProvideInherent, InherentData, InherentIdentifier, RuntimeString, MakeFatalError }; @@ -50,7 +50,7 @@ mod system { pub type DigestItemOf = <::Digest as Digest>::Item; - decl_module! { + srml_support::decl_module! { pub struct Module for enum Call where origin: T::Origin { pub fn deposit_event(_event: T::Event) { } @@ -62,7 +62,7 @@ mod system { } } - decl_event!( + srml_support::decl_event!( pub enum Event { ExtrinsicSuccess, ExtrinsicFailed, @@ -122,7 +122,7 @@ mod module1 { type Log: From> + Into>; } - decl_module! { + srml_support::decl_module! { pub struct Module, I: InstantiableThing> for enum Call where origin: ::Origin { fn deposit_event() = default; @@ -140,7 +140,7 @@ mod module1 { } } - decl_storage! { + srml_support::decl_storage! { trait Store for Module, I: InstantiableThing> as Module1 { pub Value config(value): u64; pub Map: map u32 => u64; @@ -148,7 +148,7 @@ mod module1 { } } - decl_event! { + srml_support::decl_event! { pub enum Event where Phantom = rstd::marker::PhantomData { _Phantom(Phantom), AnotherVariant(u32), @@ -207,13 +207,13 @@ mod module2 { impl, I: Instance> Currency for Module {} - decl_module! { + srml_support::decl_module! { pub struct Module, I: Instance=DefaultInstance> for enum Call where origin: ::Origin { fn deposit_event() = default; } } - decl_storage! { + srml_support::decl_storage! { trait Store for Module, I: Instance=DefaultInstance> as Module2 { pub Value config(value): T::Amount; pub Map config(map): map u64 => u64; @@ -222,7 +222,7 @@ mod module2 { extra_genesis_skip_phantom_data_field; } - decl_event! { + srml_support::decl_event! { pub enum Event where Amount = >::Amount { Variant(Amount), } @@ -275,7 +275,7 @@ mod module3 { type Currency2: Currency; } - decl_module! { + srml_support::decl_module! { pub struct Module for enum Call where origin: ::Origin { } } @@ -335,7 +335,7 @@ impl system::Trait for Runtime { type Log = Log; } -construct_runtime!( +srml_support::construct_runtime!( pub enum Runtime with Log(InternalLog: DigestItem) where Block = Block, NodeBlock = Block, -- GitLab From 88772b507f24aff281f39b556da85656538d8eb1 Mon Sep 17 00:00:00 2001 From: Stefanie Doll Date: Tue, 26 Mar 2019 12:14:02 +0100 Subject: [PATCH 087/120] Fixed wrong default value for offchain-worker-execution (#2118) --- core/cli/src/params.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index ee014e1e8e..ae4109dd26 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -261,7 +261,7 @@ pub struct ExecutionStrategies { raw( possible_values = "&ExecutionStrategy::variants()", case_insensitive = "true", - default_value = r#""NativeWhenPossible""# + default_value = r#""NativeElseWasm""# ) )] pub offchain_worker_execution: ExecutionStrategy, -- GitLab From dc4b20562d888d863c9e9d80f7be2c9a3dd0746c Mon Sep 17 00:00:00 2001 From: thiolliere Date: Tue, 26 Mar 2019 14:35:57 +0100 Subject: [PATCH 088/120] improve docs (#2068) * improve decl_storage instance doc * use decl_event doc accordignly * automate doc and while allow to extend it on event * some missed ones * Update srml/example/src/lib.rs Co-Authored-By: thiolliere * Update srml/support/procedural/src/storage/transformation.rs --- node-template/runtime/src/template.rs | 1 - srml/assets/src/lib.rs | 3 --- srml/council/src/motions.rs | 1 - srml/council/src/seats.rs | 1 - srml/council/src/voting.rs | 1 - srml/democracy/src/lib.rs | 1 - srml/example/src/lib.rs | 6 +++--- srml/grandpa/src/lib.rs | 1 - srml/session/src/lib.rs | 1 - srml/staking/src/lib.rs | 1 - srml/sudo/src/lib.rs | 1 - srml/support/procedural/src/storage/transformation.rs | 10 +++++++--- srml/support/src/event.rs | 5 +++++ srml/treasury/src/lib.rs | 9 --------- 14 files changed, 15 insertions(+), 27 deletions(-) diff --git a/node-template/runtime/src/template.rs b/node-template/runtime/src/template.rs index 92abe980f0..fd122433da 100644 --- a/node-template/runtime/src/template.rs +++ b/node-template/runtime/src/template.rs @@ -55,7 +55,6 @@ decl_module! { } decl_event!( - /// An event in this module. pub enum Event where AccountId = ::AccountId { // Just a dummy event. // Event `Something` is declared with a parameter of the type `u32` and `AccountId` diff --git a/srml/assets/src/lib.rs b/srml/assets/src/lib.rs index 0ed4f7a309..9caa3dc20d 100644 --- a/srml/assets/src/lib.rs +++ b/srml/assets/src/lib.rs @@ -82,9 +82,6 @@ decl_module! { } } -/// An event in this module. Events are simple means of reporting specific conditions and -/// circumstances that have happened that users, Dapps and/or chain explorers would find -/// interesting and otherwise difficult to detect. decl_event!( pub enum Event where ::AccountId, ::Balance { /// Some assets were issued. diff --git a/srml/council/src/motions.rs b/srml/council/src/motions.rs index 7d9783fd33..3bbe463780 100644 --- a/srml/council/src/motions.rs +++ b/srml/council/src/motions.rs @@ -47,7 +47,6 @@ pub enum Origin { Members(u32), } -/// Event for this module. decl_event!( pub enum Event where ::Hash, ::AccountId { /// A motion (given hash) has been proposed (by given account) with a threshold (given u32). diff --git a/srml/council/src/seats.rs b/srml/council/src/seats.rs index 365214f327..210603b9f4 100644 --- a/srml/council/src/seats.rs +++ b/srml/council/src/seats.rs @@ -382,7 +382,6 @@ decl_storage! { } decl_event!( - /// An event in this module. pub enum Event where ::AccountId { /// reaped voter, reaper VoterReaped(AccountId, AccountId), diff --git a/srml/council/src/voting.rs b/srml/council/src/voting.rs index c365ea8021..4c5c62dc83 100644 --- a/srml/council/src/voting.rs +++ b/srml/council/src/voting.rs @@ -125,7 +125,6 @@ decl_storage! { } } -/// An event in this module. decl_event!( pub enum Event where ::Hash { /// A voting tally has happened for a referendum cancellation vote. diff --git a/srml/democracy/src/lib.rs b/srml/democracy/src/lib.rs index b9538ed249..118f8f189b 100644 --- a/srml/democracy/src/lib.rs +++ b/srml/democracy/src/lib.rs @@ -242,7 +242,6 @@ decl_storage! { } decl_event!( - /// An event in this module. pub enum Event where Balance = BalanceOf, ::AccountId { Proposed(PropIndex, Balance), Tabled(PropIndex, Balance, Vec), diff --git a/srml/example/src/lib.rs b/srml/example/src/lib.rs index 8b5347d1a2..7305110af6 100644 --- a/srml/example/src/lib.rs +++ b/srml/example/src/lib.rs @@ -72,10 +72,10 @@ decl_storage! { } } -/// An event in this module. Events are simple means of reporting specific conditions and -/// circumstances that have happened that users, Dapps and/or chain explorers would find -/// interesting and otherwise difficult to detect. decl_event!( + /// Events are a simple means of reporting specific conditions and + /// circumstances that have happened that users, Dapps and/or chain explorers would find + /// interesting and otherwise difficult to detect. pub enum Event where B = ::Balance { // Just a normal `enum`, here's a dummy event to ensure it compiles. /// Dummy event, just here so there's a generic type that's used. diff --git a/srml/grandpa/src/lib.rs b/srml/grandpa/src/lib.rs index 0715ce034a..3c85756e96 100644 --- a/srml/grandpa/src/lib.rs +++ b/srml/grandpa/src/lib.rs @@ -176,7 +176,6 @@ impl Decode for StoredPendingChange where ::SessionKey { /// New authority set has been applied. diff --git a/srml/session/src/lib.rs b/srml/session/src/lib.rs index 956c8e03fe..29f50daca9 100644 --- a/srml/session/src/lib.rs +++ b/srml/session/src/lib.rs @@ -84,7 +84,6 @@ decl_module! { } } -/// An event in this module. decl_event!( pub enum Event where ::BlockNumber { /// New session has happened. Note that the argument is the session index, not the block diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index f3bcfc0593..21cc6cbf9d 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -721,7 +721,6 @@ decl_module! { } } -// An event in this module. decl_event!( pub enum Event where Balance = BalanceOf, ::AccountId { /// All validators have been rewarded by the given balance. diff --git a/srml/sudo/src/lib.rs b/srml/sudo/src/lib.rs index e4dfa480e9..b0650cf373 100644 --- a/srml/sudo/src/lib.rs +++ b/srml/sudo/src/lib.rs @@ -58,7 +58,6 @@ decl_module! { } } -/// An event in this module. decl_event!( pub enum Event where AccountId = ::AccountId { /// A sudo just took place. diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index 1ab10c4e3f..817e42f508 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -500,6 +500,9 @@ fn decl_storage_items( } impls.extend(quote! { + /// Tag a type as an instance of a module. + /// + /// Defines storage prefixes, they must be unique. pub trait #instantiable: 'static { #const_impls } @@ -510,12 +513,12 @@ fn decl_storage_items( .map(|i| { let name = format!("Instance{}", i); let ident = syn::Ident::new(&name, proc_macro2::Span::call_site()); - (name, ident) + (name, ident, quote! {#[doc=r"Module instance"]}) }) - .chain(default_instance.clone().map(|ident| (String::new(), ident))); + .chain(default_instance.clone().map(|ident| (String::new(), ident, quote! {#[doc=r"Default module instance"]}))); // Impl Instance trait for instances - for (prefix, ident) in instances { + for (prefix, ident, doc) in instances { let mut const_impls = TokenStream2::new(); for (const_name, partial_const_value) in &const_names { @@ -529,6 +532,7 @@ fn decl_storage_items( // 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)] + #doc pub struct #ident; impl #instantiable for #ident { #const_impls diff --git a/srml/support/src/event.rs b/srml/support/src/event.rs index 4ffa552168..f83e551183 100644 --- a/srml/support/src/event.rs +++ b/srml/support/src/event.rs @@ -144,6 +144,8 @@ macro_rules! decl_event { // 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))] + /// Events for this module. + /// $(#[$attr])* pub enum Event { $( @@ -277,9 +279,12 @@ macro_rules! __decl_generic_event { /// [`RawEvent`]: enum.RawEvent.html /// [`Trait`]: trait.Trait.html 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))] + /// Events for this module. + /// $(#[$attr])* pub enum RawEvent<$( $generic_param ),* $(, $instance)? > { $( diff --git a/srml/treasury/src/lib.rs b/srml/treasury/src/lib.rs index 673f989a78..f5c4538497 100644 --- a/srml/treasury/src/lib.rs +++ b/srml/treasury/src/lib.rs @@ -31,11 +31,6 @@ type BalanceOf = <::Currency as Currency<::Ac type PositiveImbalanceOf = <::Currency as Currency<::AccountId>>::PositiveImbalance; type NegativeImbalanceOf = <::Currency as Currency<::AccountId>>::NegativeImbalance; -/// Our module's configuration trait. All our types and consts go in here. If the -/// module is dependent on specific other modules, then their configuration traits -/// should be added to our implied traits list. -/// -/// `system::Trait` should always be included in our implied traits. pub trait Trait: system::Trait { /// The staking balance. type Currency: Currency; @@ -58,10 +53,7 @@ pub trait Trait: system::Trait { type ProposalIndex = u32; -// The module declaration. This states the entry points that we handle. The -// macro takes care of the marshalling of arguments and dispatch. decl_module! { - // Simple declaration of the `Module` type. Lets the macro know what its working on. pub struct Module for enum Call where origin: T::Origin { fn deposit_event() = default; /// Put forward a suggestion for spending. A deposit proportional to the value @@ -177,7 +169,6 @@ decl_storage! { } } -/// An event in this module. decl_event!( pub enum Event where -- GitLab From 6282a80b34b021b5ccac8898b51ce6787d1b5314 Mon Sep 17 00:00:00 2001 From: Kian Peymani Date: Tue, 26 Mar 2019 18:09:14 +0430 Subject: [PATCH 089/120] Replace Overflow-Prone Operations in Staking with Saturating Arithmetic (#2115) * Improve a few doc string * Replace overflow-prone operation with saturating. * Remove whitespace. * Update wasm; Bump spec; * Bump impl again. * Fix review comments. --- .../substrate_test_runtime.compact.wasm | Bin 59746 -> 56637 bytes node/runtime/src/lib.rs | 2 +- .../release/node_runtime.compact.wasm | Bin 929335 -> 923946 bytes srml/staking/src/phragmen.rs | 99 +++++++++-------- srml/staking/src/tests.rs | 104 +++++++++++++++++- srml/support/src/traits.rs | 2 +- 6 files changed, 158 insertions(+), 49 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index e1ba92f3b9bfbdd61364c6438a81bae915c6a37e..cb602bfe9df4bbcd33d126652c44fb0dcad98d26 100644 GIT binary patch delta 19231 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 gxc7$K_G7l3*A? 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 z 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

hQ+RlV=IymttJ6dOYYB-263xkj3 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%0A9ukflH+wB)7}5QhrDzC^ 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 diff --git a/srml/staking/src/phragmen.rs b/srml/staking/src/phragmen.rs index 5d6548bfd0..9c388e5184 100644 --- a/srml/staking/src/phragmen.rs +++ b/srml/staking/src/phragmen.rs @@ -18,69 +18,69 @@ use rstd::prelude::*; use primitives::Perquintill; -use primitives::traits::{Zero, As, Bounded, CheckedMul, CheckedSub}; +use primitives::traits::{Zero, As, Bounded, CheckedMul, Saturating}; use parity_codec::{HasCompact, Encode, Decode}; use crate::{Exposure, BalanceOf, Trait, ValidatorPrefs, IndividualExposure}; -// Configure the behavior of the Phragmen election. -// Might be deprecated. +/// Configure the behavior of the Phragmen election. +/// Might be deprecated. pub struct ElectionConfig { - // Perform equalise?. + /// Perform equalise?. pub equalise: bool, - // Number of equalise iterations. + /// Number of equalise iterations. pub iterations: usize, - // Tolerance of max change per equalise iteration. + /// Tolerance of max change per equalise iteration. pub tolerance: Balance, } -// Wrapper around validation candidates some metadata. +/// Wrapper around validation candidates some metadata. #[derive(Clone, Encode, Decode, Default)] #[cfg_attr(feature = "std", derive(Debug))] pub struct Candidate { - // The validator's account + /// The validator's account pub who: AccountId, - // Exposure struct, holding info about the value that the validator has in stake. + /// Exposure struct, holding info about the value that the validator has in stake. pub exposure: Exposure, - // Intermediary value used to sort candidates. + /// Intermediary value used to sort candidates. pub score: Perquintill, - // Accumulator of the stake of this candidate based on received votes. + /// Accumulator of the stake of this candidate based on received votes. approval_stake: Balance, - // Flag for being elected. + /// Flag for being elected. elected: bool, - // This is most often equal to `Exposure.total` but not always. Needed for [`equalise`] + /// This is most often equal to `Exposure.total` but not always. Needed for [`equalise`] backing_stake: Balance } -// Wrapper around the nomination info of a single nominator for a group of validators. +/// Wrapper around the nomination info of a single nominator for a group of validators. #[derive(Clone, Encode, Decode, Default)] #[cfg_attr(feature = "std", derive(Debug))] pub struct Nominator { - // The nominator's account. + /// The nominator's account. who: AccountId, - // List of validators proposed by this nominator. + /// List of validators proposed by this nominator. edges: Vec>, - // the stake amount proposed by the nominator as a part of the vote. + /// the stake amount proposed by the nominator as a part of the vote. budget: Balance, - // Incremented each time a nominee that this nominator voted for has been elected. + /// Incremented each time a nominee that this nominator voted for has been elected. load: Perquintill, } -// Wrapper around a nominator vote and the load of that vote. +/// Wrapper around a nominator vote and the load of that vote. #[derive(Clone, Encode, Decode, Default)] #[cfg_attr(feature = "std", derive(Debug))] pub struct Edge { - // Account being voted for + /// Account being voted for who: AccountId, - // Load of this vote. + /// Load of this vote. load: Perquintill, - // Final backing stake of this vote. + /// Final backing stake of this vote. backing_stake: Balance, - // Index of the candidate stored in the 'candidates' vector + /// Index of the candidate stored in the 'candidates' vector candidate_index: usize, - // Index of the candidate stored in the 'elected_candidates' vector. Used only with equalise. + /// Index of the candidate stored in the 'elected_candidates' vector. Used only with equalise. elected_idx: usize, - // Indicates if this edge is a vote for an elected candidate. Used only with equalise. + /// Indicates if this edge is a vote for an elected candidate. Used only with equalise. elected: bool, } @@ -88,7 +88,8 @@ pub struct Edge { /// /// Reference implementation: https://github.com/w3f/consensus /// -/// Returns a vector of elected candidates +/// Returns an Option of elected candidates, if election is performed. +/// Returns None if not enough candidates exist. pub fn elect( get_rounds: FR, get_validators: FV, @@ -138,7 +139,7 @@ pub fn elect( let mut edges: Vec>> = Vec::with_capacity(nominees.len()); for n in &nominees { if let Some(idx) = candidates.iter_mut().position(|i| i.who == *n) { - candidates[idx].approval_stake += nominator_stake; + candidates[idx].approval_stake = candidates[idx].approval_stake.saturating_add(nominator_stake); edges.push(Edge { who: n.clone(), candidate_index: idx, ..Default::default() }); } } @@ -173,8 +174,10 @@ pub fn elect( for e in &n.edges { let c = &mut candidates[e.candidate_index]; if !c.elected { - let temp = n.budget.as_() * *n.load / c.approval_stake.as_(); - c.score = Perquintill::from_quintillionths(*c.score + temp); + // Note: This seems to never overflow, ok to be safe though + let temp = n.budget.as_().saturating_mul(*n.load) / c.approval_stake.as_(); + // Note: This seems to never overflow, ok to be safe though + c.score = Perquintill::from_quintillionths((*c.score).saturating_add(temp)); } } } @@ -206,12 +209,12 @@ pub fn elect( // if the target of this vote is among the winners, otherwise let go. if let Some(c) = elected_candidates.iter_mut().find(|c| c.who == e.who) { e.elected = true; - // NOTE: for now, always divide last to avoid collapse to zero. - e.backing_stake = >::sa((n.budget.as_() * *e.load) / *n.load); - c.backing_stake += e.backing_stake; + // NOTE: always divide last to avoid collapse to zero. + e.backing_stake = >::sa(n.budget.as_().saturating_mul(*e.load) / *n.load); + c.backing_stake = c.backing_stake.saturating_add(e.backing_stake); if c.who != n.who { // Only update the exposure if this vote is from some other account. - c.exposure.total += e.backing_stake; + c.exposure.total = c.exposure.total.saturating_add(e.backing_stake); c.exposure.others.push( IndividualExposure { who: n.who.clone(), value: e.backing_stake } ); @@ -256,7 +259,7 @@ pub fn elect( let nominator = n.who.clone(); for e in &mut n.edges { if let Some(c) = elected_candidates.iter_mut().find(|c| c.who == e.who && c.who != nominator) { - c.exposure.total += n.budget; + c.exposure.total = c.exposure.total.saturating_add(n.budget); c.exposure.others.push( IndividualExposure { who: n.who.clone(), value: n.budget } ); @@ -284,7 +287,7 @@ pub fn equalise( if elected_edges.len() == 0 { return >::zero(); } let stake_used = elected_edges .iter() - .fold(>::zero(), |s, e| s + e.backing_stake); + .fold(>::zero(), |s, e| s.saturating_add(e.backing_stake)); let backed_stakes = elected_edges .iter() .map(|e| elected_candidates[e.elected_idx].backing_stake) @@ -304,9 +307,9 @@ pub fn equalise( let min_stake = *backed_stakes .iter() .min() - .expect("vector with positive length will have a max; qed"); - difference = max_stake - min_stake; - difference += nominator.budget - stake_used; + .expect("vector with positive length will have a min; qed"); + difference = max_stake.saturating_sub(min_stake); + difference = difference.saturating_add(nominator.budget.saturating_sub(stake_used)); if difference < tolerance { return difference; } @@ -330,25 +333,29 @@ pub fn equalise( let budget = nominator.budget; elected_edges.iter_mut().enumerate().for_each(|(idx, e)| { let stake = elected_candidates[e.elected_idx].backing_stake; - let stake_mul = stake.checked_mul(&>::sa(idx as u64)).unwrap_or(>::max_value()); - let stake_sub = stake_mul.checked_sub(&cumulative_stake).unwrap_or_default(); + let stake_sub = stake_mul.saturating_sub(cumulative_stake); if stake_sub > budget { - last_index = idx.clone().checked_sub(1).unwrap_or(0); + last_index = idx.checked_sub(1).unwrap_or(0); return } - cumulative_stake += stake; + cumulative_stake = cumulative_stake.saturating_add(stake); }); let last_stake = elected_candidates[elected_edges[last_index].elected_idx].backing_stake; let split_ways = last_index + 1; - let excess = nominator.budget + cumulative_stake - last_stake * >::sa(split_ways as u64); + let excess = nominator.budget + .saturating_add(cumulative_stake) + .saturating_sub( + last_stake.checked_mul(&>::sa(split_ways as u64)) + .unwrap_or(>::max_value()) + ); let nominator_address = nominator.who.clone(); elected_edges.iter_mut().take(split_ways).for_each(|e| { let c = &mut elected_candidates[e.elected_idx]; - e.backing_stake = excess / >::sa(split_ways as u64) + last_stake - c.backing_stake; - c.exposure.total += e.backing_stake; - c.backing_stake += e.backing_stake; + e.backing_stake = (excess / >::sa(split_ways as u64)).saturating_add(last_stake) - c.backing_stake; + c.exposure.total = c.exposure.total.saturating_add(e.backing_stake); + c.backing_stake = c.backing_stake.saturating_add(e.backing_stake); if let Some(i_expo) = c.exposure.others.iter_mut().find(|i| i.who == nominator_address) { i_expo.value = e.backing_stake; } diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index 605349cc39..f020f8aebf 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -728,7 +728,7 @@ fn nominators_also_get_slashed() { assert_ok!(Staking::nominate(Origin::signed(2), vec![20, 10])); // new era, pay rewards, - System::set_block_number(2); + System::set_block_number(1); Session::check_rotate_session(System::block_number()); // Nominator stash didn't collect any. @@ -1885,3 +1885,105 @@ fn phragmen_chooses_correct_validators() { assert_eq!(Session::validators().len(), 1); }) } + +#[test] +fn phragmen_should_not_overflow_validators() { + with_externalities(&mut ExtBuilder::default() + .nominate(false) + .build() + , || { + let bond_validator = |a, b| { + assert_ok!(Staking::bond(Origin::signed(a-1), a, b, RewardDestination::Controller)); + assert_ok!(Staking::validate(Origin::signed(a), ValidatorPrefs::default())); + }; + let bond_nominator = |a, b, v| { + assert_ok!(Staking::bond(Origin::signed(a-1), a, b, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(a), v)); + }; + + for i in 1..=8 { + let _ = Balances::make_free_balance_be(&i, u64::max_value()); + } + + let _ = Staking::chill(Origin::signed(10)); + let _ = Staking::chill(Origin::signed(20)); + + bond_validator(2, u64::max_value()); + bond_validator(4, u64::max_value()); + + bond_nominator(6, u64::max_value()/2, vec![1, 3]); + bond_nominator(8, u64::max_value()/2, vec![1, 3]); + + System::set_block_number(2); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators(), vec![4, 2]); + }) +} + +#[test] +fn phragmen_should_not_overflow_nominators() { + with_externalities(&mut ExtBuilder::default() + .nominate(false) + .build() + , || { + let bond_validator = |a, b| { + assert_ok!(Staking::bond(Origin::signed(a-1), a, b, RewardDestination::Controller)); + assert_ok!(Staking::validate(Origin::signed(a), ValidatorPrefs::default())); + }; + let bond_nominator = |a, b, v| { + assert_ok!(Staking::bond(Origin::signed(a-1), a, b, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(a), v)); + }; + + let _ = Staking::chill(Origin::signed(10)); + let _ = Staking::chill(Origin::signed(20)); + + for i in 1..=8 { + let _ = Balances::make_free_balance_be(&i, u64::max_value()); + } + + bond_validator(2, u64::max_value()/2); + bond_validator(4, u64::max_value()/2); + + bond_nominator(6, u64::max_value(), vec![1, 3]); + bond_nominator(8, u64::max_value(), vec![1, 3]); + + System::set_block_number(2); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators(), vec![4, 2]); + }) +} + +#[test] +fn phragmen_should_not_overflow_ultimate() { + with_externalities(&mut ExtBuilder::default() + .nominate(false) + .build() + , || { + let bond_validator = |a, b| { + assert_ok!(Staking::bond(Origin::signed(a-1), a, b, RewardDestination::Controller)); + assert_ok!(Staking::validate(Origin::signed(a), ValidatorPrefs::default())); + }; + let bond_nominator = |a, b, v| { + assert_ok!(Staking::bond(Origin::signed(a-1), a, b, RewardDestination::Controller)); + assert_ok!(Staking::nominate(Origin::signed(a), v)); + }; + + for i in 1..=8 { + let _ = Balances::make_free_balance_be(&i, u64::max_value()); + } + + bond_validator(2, u64::max_value()); + bond_validator(4, u64::max_value()); + + bond_nominator(6, u64::max_value(), vec![1, 3]); + bond_nominator(8, u64::max_value(), vec![1, 3]); + + System::set_block_number(2); + Session::check_rotate_session(System::block_number()); + + assert_eq!(Session::validators(), vec![4, 2]); + }) +} \ No newline at end of file diff --git a/srml/support/src/traits.rs b/srml/support/src/traits.rs index 144e8af772..4a676c797a 100644 --- a/srml/support/src/traits.rs +++ b/srml/support/src/traits.rs @@ -310,7 +310,7 @@ pub trait Currency { value: Self::Balance, ) -> result::Result<(), &'static str>; - /// Deducts up to `value` from the combined balance of `who`, preferring to deduct from the + /// Deducts up to `value` from the combined balance of `who`, preferring to deduct from the /// free balance. This function cannot fail. /// /// The resulting imbalance is the first item of the tuple returned. -- GitLab From fe8b33c537b6f30669c6f5a1f7f93decb1bd60cd Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Tue, 26 Mar 2019 14:45:11 +0100 Subject: [PATCH 090/120] Improvements to system_networkState (#2088) --- Cargo.lock | 44 +++++++++---------- core/network-libp2p/src/behaviour.rs | 5 +++ .../src/custom_proto/behaviour.rs | 5 +++ core/network-libp2p/src/lib.rs | 5 ++- core/network-libp2p/src/service_task.rs | 2 + core/peerset/src/lib.rs | 7 +++ core/rpc/src/system/tests.rs | 4 ++ 7 files changed, 49 insertions(+), 23 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 23cd0ed6f1..416e0d4a52 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1287,7 +1287,7 @@ dependencies = [ [[package]] name = "libp2p" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1322,7 +1322,7 @@ dependencies = [ [[package]] name = "libp2p-core" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1357,7 +1357,7 @@ dependencies = [ [[package]] name = "libp2p-core-derive" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)", "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1366,7 +1366,7 @@ dependencies = [ [[package]] name = "libp2p-dns" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1379,7 +1379,7 @@ dependencies = [ [[package]] name = "libp2p-floodsub" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1398,7 +1398,7 @@ dependencies = [ [[package]] name = "libp2p-identify" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1419,7 +1419,7 @@ dependencies = [ [[package]] name = "libp2p-kad" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "bigint 4.4.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1447,7 +1447,7 @@ dependencies = [ [[package]] name = "libp2p-mdns" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "data-encoding 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)", "dns-parser 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1468,7 +1468,7 @@ dependencies = [ [[package]] name = "libp2p-mplex" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1484,7 +1484,7 @@ dependencies = [ [[package]] name = "libp2p-noise" version = "0.3.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "curve25519-dalek 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1502,7 +1502,7 @@ dependencies = [ [[package]] name = "libp2p-ping" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1521,7 +1521,7 @@ dependencies = [ [[package]] name = "libp2p-plaintext" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1531,7 +1531,7 @@ dependencies = [ [[package]] name = "libp2p-ratelimit" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "aio-limited 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1544,7 +1544,7 @@ dependencies = [ [[package]] name = "libp2p-secio" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "aes-ctr 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", "asn1_der 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1570,7 +1570,7 @@ dependencies = [ [[package]] name = "libp2p-tcp" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1584,7 +1584,7 @@ dependencies = [ [[package]] name = "libp2p-uds" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1596,7 +1596,7 @@ dependencies = [ [[package]] name = "libp2p-websocket" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1611,7 +1611,7 @@ dependencies = [ [[package]] name = "libp2p-yamux" version = "0.5.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", "libp2p-core 0.5.0 (git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20)", @@ -1807,7 +1807,7 @@ dependencies = [ [[package]] name = "multistream-select" version = "0.3.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2181,7 +2181,7 @@ dependencies = [ [[package]] name = "parity-multiaddr" version = "0.2.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)", "bs58 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2195,7 +2195,7 @@ dependencies = [ [[package]] name = "parity-multihash" version = "0.1.0" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", @@ -2730,7 +2730,7 @@ dependencies = [ [[package]] name = "rw-stream-sink" version = "0.1.1" -source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#f0a2243eddd71c31e924044e80f03abd2dc61267" +source = "git+https://github.com/tomaka/libp2p-rs?branch=substrate-tmp-2019-03-20#e8e6ccec7409aa19939230d6720035e3ed28dfd6" dependencies = [ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", diff --git a/core/network-libp2p/src/behaviour.rs b/core/network-libp2p/src/behaviour.rs index bc41a9cf55..c1d175bb16 100644 --- a/core/network-libp2p/src/behaviour.rs +++ b/core/network-libp2p/src/behaviour.rs @@ -129,6 +129,11 @@ impl Behaviour { pub fn drop_node(&mut self, peer_id: &PeerId) { self.custom_protocols.disconnect_peer(peer_id) } + + /// Returns the state of the peerset manager, for debugging purposes. + pub fn peerset_debug_info(&self) -> serde_json::Value { + self.custom_protocols.peerset_debug_info() + } } /// Event that can be emitted by the behaviour. diff --git a/core/network-libp2p/src/custom_proto/behaviour.rs b/core/network-libp2p/src/custom_proto/behaviour.rs index fa5b1a3b72..eb60bb9ba4 100644 --- a/core/network-libp2p/src/custom_proto/behaviour.rs +++ b/core/network-libp2p/src/custom_proto/behaviour.rs @@ -317,6 +317,11 @@ impl CustomProto { self.peerset.discovered(peer_id.clone()) } + /// Returns the state of the peerset manager, for debugging purposes. + pub fn peerset_debug_info(&self) -> serde_json::Value { + self.peerset.debug_info() + } + /// Function that is called when the peerset wants us to connect to a node. fn peerset_report_connect(&mut self, peer_id: PeerId) { let mut occ_entry = match self.peers.entry(peer_id) { diff --git a/core/network-libp2p/src/lib.rs b/core/network-libp2p/src/lib.rs index 34644da440..5b73db636b 100644 --- a/core/network-libp2p/src/lib.rs +++ b/core/network-libp2p/src/lib.rs @@ -99,7 +99,8 @@ pub struct NetworkState { pub peer_id: String, /// List of addresses the node is currently listening on. pub listened_addresses: HashSet, - // TODO (https://github.com/libp2p/rust-libp2p/issues/978): external_addresses: Vec, + /// List of addresses the node knows it can be reached as. + pub external_addresses: HashSet, /// List of node we're connected to. pub connected_peers: HashMap, /// List of node that we know of but that we're not connected to. @@ -108,6 +109,8 @@ pub struct NetworkState { pub average_download_per_sec: u64, /// Uploaded bytes per second averaged over the past few seconds. pub average_upload_per_sec: u64, + /// State of the peerset manager. + pub peerset: serde_json::Value, } #[derive(Debug, PartialEq, Serialize)] diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index bd4ff45440..a8d184cb73 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -220,10 +220,12 @@ where TMessage: CustomMessage + Send + 'static { NetworkState { peer_id: Swarm::local_peer_id(&self.swarm).to_base58(), listened_addresses: Swarm::listeners(&self.swarm).cloned().collect(), + external_addresses: Swarm::external_addresses(&self.swarm).cloned().collect(), average_download_per_sec: self.bandwidth.average_download_per_sec(), average_upload_per_sec: self.bandwidth.average_upload_per_sec(), connected_peers, not_connected_peers, + peerset: self.swarm.peerset_debug_info(), } } diff --git a/core/peerset/src/lib.rs b/core/peerset/src/lib.rs index 74444a2c38..b64cafc3e5 100644 --- a/core/peerset/src/lib.rs +++ b/core/peerset/src/lib.rs @@ -23,6 +23,8 @@ use libp2p::PeerId; use parking_lot::Mutex; use std::sync::Arc; +pub use serde_json::Value; + /// Shared part of the peer set manager (PSM). Distributed around the code. pub struct Peerset { tx: mpsc::UnboundedSender, @@ -297,6 +299,11 @@ impl PeersetMut { } alloc_slots(&mut inner, &self.parent.tx); } + + /// Produces a JSON object containing the state of the peerset manager, for debugging purposes. + pub fn debug_info(&self) -> serde_json::Value { + serde_json::Value::Null + } } impl Stream for PeersetMut { diff --git a/core/rpc/src/system/tests.rs b/core/rpc/src/system/tests.rs index 8f85d9c2df..b4b71a7937 100644 --- a/core/rpc/src/system/tests.rs +++ b/core/rpc/src/system/tests.rs @@ -50,10 +50,12 @@ impl network::SyncProvider for Status { network::NetworkState { peer_id: String::new(), listened_addresses: Default::default(), + external_addresses: Default::default(), connected_peers: Default::default(), not_connected_peers: Default::default(), average_download_per_sec: 0, average_upload_per_sec: 0, + peerset: serde_json::Value::Null, } } @@ -202,10 +204,12 @@ fn system_network_state() { network::NetworkState { peer_id: String::new(), listened_addresses: Default::default(), + external_addresses: Default::default(), connected_peers: Default::default(), not_connected_peers: Default::default(), average_download_per_sec: 0, average_upload_per_sec: 0, + peerset: serde_json::Value::Null, } ); } -- GitLab From 6afca8217d1219eb4247e720f0e7cffce44a8474 Mon Sep 17 00:00:00 2001 From: thiolliere Date: Tue, 26 Mar 2019 15:01:46 +0100 Subject: [PATCH 091/120] improve decl storage doc (#2059) * improve decl storage doc * nocompile doc * fix doc * typo * Update srml/support/procedural/src/lib.rs --- srml/support/procedural/src/lib.rs | 48 +++++++++++++++++++++++------- 1 file changed, 38 insertions(+), 10 deletions(-) diff --git a/srml/support/procedural/src/lib.rs b/srml/support/procedural/src/lib.rs index 5464302e29..f1b3344a8b 100644 --- a/srml/support/procedural/src/lib.rs +++ b/srml/support/procedural/src/lib.rs @@ -33,36 +33,64 @@ use proc_macro::TokenStream; /// ```nocompile /// decl_storage! { /// trait Store for Module as Example { -/// Dummy get(dummy) config(): Option; -/// Foo get(foo) config(): T::Balance; +/// Foo get(foo) config(): u32=12; +/// Bar: map u32 => u32; +/// pub Zed build(|config| vec![(0, 0)]): linked_map u32 => u32; /// } /// } /// ``` /// -/// For now we implement a convenience trait with pre-specialised associated types, one for each -/// storage item. This allows you to gain access to publicly visible storage items from a -/// module type. Currently you must disambiguate by using `::Item` rather than -/// the simpler `Module::Item`. Hopefully the rust guys with fix this soon. +/// Declaration is set with this header `(pub) trait Store for Module as Example` +/// with `Store` a (pub) trait generated associating each storage to the Module and +/// `as Example` setting the prefix used for storages of this module, it must be unique, +/// another module with same name and same inner storage name will conflict. /// -/// An optional `GenesisConfig` struct for storage initialization can be defined, either specifically as in : +/// Basic storage consist of a name and a type, supported types are: +/// * storage value: `Foo: type`: implements [StorageValue](https://crates.parity.io/srml_support/storage/trait.StorageValue.html) +/// * storage map: `Foo: map type => type`: implements [StorageMap](https://crates.parity.io/srml_support/storage/trait.StorageMap.html) +/// * storage linked map: `Foo: linked_map type => type`: implements [StorageMap](https://crates.parity.io/srml_support/storage/trait.StorageMap.html) and [EnumarableStorageMap](https://crates.parity.io/srml_support/storage/trait.EnumerableStorageMap.html) +/// +/// And it can be extended as such: +/// +/// `#vis #name get(#getter) config(#field_name) build(#closure): #type = #default;` +/// * `#vis`: set the visibility of the structure +/// * `#name`: name of the storage, used as a prefix in the storage +/// * [optional] `get(#getter)`: implements the function #getter to `Module` +/// * [optional] `config(#field_name)`: `field_name` is optional if get is set: include in `GenesisConfig` +/// * [optional] `build(#closure)`: closure called with storage overlays +/// * `#type`: storage type +/// * [optional] `#default`: value returned when none +/// +/// Storages are accessible in multiples ways, using: +/// * the structure: `Foo::` +/// * the `Store` trait structure: ` as Store>::Foo` +/// * the getter on the module which calls get on the structure: `Module::::foo()` +/// +/// ## GenesisConfig +/// +/// An optional `GenesisConfig` struct for storage initialization can be defined, either +/// when at least one storage field requires default initialization +/// (both `get` and `config` or `build`), or specifically as in : /// ```nocompile /// decl_storage! { /// trait Store for Module as Example { /// } /// add_extra_genesis { /// config(genesis_field): GenesisFieldType; +/// config(genesis_field2): GenesisFieldType; +/// ... /// build(|_: &mut StorageOverlay, _: &mut ChildrenStorageOverlay, _: &GenesisConfig| { +/// // Modification of storages /// }) /// } /// } /// ``` -/// 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 +/// ## Module with instances /// /// `decl_storage!` macro support building modules with instances with the following syntax: (DefaultInstance type -/// is optionnal) +/// is optional) /// ```nocompile /// trait Store for Module, I: Instance=DefaultInstance> as Example {} /// ``` -- GitLab From 72409f9fd1dcf25b094dc09a31a9f831dd56411a Mon Sep 17 00:00:00 2001 From: joe petrowski <25483142+joepetrowski@users.noreply.github.com> Date: Tue, 26 Mar 2019 17:00:29 +0100 Subject: [PATCH 092/120] Documentation for balances module (#1943) * comment updates * added rustdoc and readme * clarified LockableCurrency trait * Currency trait rustdocs * fixed typo * fixed suggestions round 1 * UpdateBalanceOutcome docs (open for discussion) * rm description of enum, consolidation, rm ReclaimRebate * type clarification, examples overhaul, adoc formatting * adoc to md * format change for rustdoc * update links and fix typos * typos and links * updates according to comments * new example * small clarifications * trait implementation section * missing ``` * small changes, ready for review * line width update * small tweaks * Update srml/balances/src/lib.rs Co-Authored-By: joepetrowski <25483142+joepetrowski@users.noreply.github.com> * Update srml/balances/src/lib.rs Co-Authored-By: joepetrowski <25483142+joepetrowski@users.noreply.github.com> * Update srml/balances/src/lib.rs Co-Authored-By: joepetrowski <25483142+joepetrowski@users.noreply.github.com> * Update srml/balances/src/lib.rs Co-Authored-By: joepetrowski <25483142+joepetrowski@users.noreply.github.com> * Update lib.rs * address review by thiolliere * remove common warning * Update docs * updated srml example --- srml/balances/src/lib.rs | 214 +++++++++++++++++++++++++++++++------ srml/contract/src/lib.rs | 2 +- srml/support/src/traits.rs | 66 +++++++----- 3 files changed, 226 insertions(+), 56 deletions(-) diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index 6d18410ac5..09b68f457e 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -14,13 +14,158 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -//! Balances: Handles setting and retrieval of free balance, -//! retrieving total balance, reserve and unreserve balance, -//! repatriating a reserved balance to a beneficiary account that exists, -//! transfering a balance between accounts (when not reserved), -//! slashing an account balance, account removal, rewards, -//! lookup of an index to reclaim an account (when not balance not reserved), -//! increasing total stake. +//! # Balances Module +//! +//! The balances module provides functionality for handling accounts and balances. To use the balances module, you need +//! to implement the [balances Trait](https://crates.parity.io/srml_balances/trait.Trait.html). Supported dispatchables +//! are documented in the [`Call` enum](https://crates.parity.io/srml_balances/enum.Call.html). +//! +//! ## Overview +//! +//! The balances module provides functions for: +//! +//! - Getting and setting free balances +//! - Retrieving total, reserved and unreserved balances +//! - Repatriating a reserved balance to a beneficiary account that exists +//! - Transferring a balance between accounts (when not reserved) +//! - Slashing an account balance +//! - Account creation and removal +//! - Lookup of an index to reclaim an account +//! - Managing total issuance +//! - Setting and managing locks +//! +//! ### Terminology +//! +//! - **Existential Deposit:** The minimum balance required to create or keep an account open. This prevents +//! "dust accounts" from filling storage. +//! - **Total Issuance:** The total amount of units in existence in a system. +//! - **Reaping an account:** The act of removing an account by resetting its nonce. Happens after its balance is set +//! to zero. +//! - **Free Balance:** The portion of a balance that is not reserved. The free balance is the only balance that matters +//! for most operations. When this balance falls below the existential deposit, most functionality of the account is +//! removed. When both it and the reserved balance are deleted, then the account is said to be dead. +//! - **Reserved Balance:** Reserved balance still belongs to the account holder, but is suspended. Reserved balance +//! can still be slashed, but only after all of free balance has been slashed. If the reserved balance falls below the +//! existential deposit then it and any related functionality will be deleted. When both it and the free balance are +//! deleted, then the account is said to be dead. +//! - **Imbalance:** A condition when some funds were created or deducted without equal and opposite accounting. +//! Functions that result in an imbalance will return an object of the `Imbalance` trait that must be handled. +//! - **Lock:** A freeze on a specified amount of an account's free balance until a specified block number. Multiple +//! locks always operate over the same funds, so they "overlay" rather than "stack". +//! - **Vesting:** Similar to a lock, this is another, but independent, liquidity restriction that reduces linearly +//! over time. +//! +//! ### Implementations +//! +//! The balances module provides implementations for the following traits. If these traits provide the functionality +//! that you need, then you can avoid coupling with the balances module. +//! +//! - [`Currency`](https://crates.parity.io/srml_support/traits/trait.Currency.html): Functions for dealing with a +//! fungible assets system. +//! - [`LockableCurrency`](https://crates.parity.io/srml_support/traits/trait.LockableCurrency.html): Functions for +//! dealing with accounts that allow liquidity restrictions. +//! - [`Imbalance`](https://crates.parity.io/srml_support/traits/trait.Imbalance.html): Functions for handling +//! imbalances between total issuance in the system and account balances. Must be used when a function +//! creates new funds (e.g. a reward) or destroys some funds (e.g. a system fee). +//! - [`MakePayent`](https://crates.parity.io/srml_support/traits/trait.MakePayment.html): Simple trait designed +//! for hooking into a transaction payment. +//! - [`IsDeadAccount`](https://crates.parity.io/srml_system/trait.IsDeadAccount.html): Determiner to say whether a +//! given account is unused. +//! +//! Example of using the `Currency` trait from the treasury module: +//! +//! ```rust,ignore +//! pub trait Trait: system::Trait { +//! /// The staking balance. +//! type Currency: Currency; +//! } +//! ``` +//! +//! ## Interface +//! +//! ### Dispatchable Functions +//! +//! The `Call` enum is documented [here](https://crates.parity.io/srml_balances/enum.Call.html). +//! +//! - `transfer` - Transfer some liquid free balance to another account. +//! - `set_balance` - Set the balances of a given account. The origin of this call must be root. +//! +//! ### Public Functions +//! +//! See the [module](https://crates.parity.io/srml_balances/struct.Module.html) for details on publicly available +//! functions. +//! +//! ## Usage +//! +//! The following examples show how to use the balances module in your custom module. +//! +//! ### Import and Balance Transfer +//! +//! Import the `balances` module and derive your module configuration trait with the balances trait. You can now call +//! functions from the module. +//! +//! ```rust,ignore +//! use support::{decl_module, dispatch::Result}; +//! use system::ensure_signed; +//! +//! pub trait Trait: balances::Trait {} +//! +//! decl_module! { +//! pub struct Module for enum Call where origin: T::Origin { +//! fn transfer_proxy(origin, to: T::AccountId, value: T::Balance) -> Result { +//! let sender = ensure_signed(origin)?; +//! >::make_transfer(&sender, &to, value)?; +//! +//! Ok(()) +//! } +//! } +//! } +//! ``` +//! +//! ### Real Use Example +//! +//! Use in the `contract` module (gas.rs): +//! +//! ```rust,ignore +//! pub fn refund_unused_gas( +//! transactor: &T::AccountId, +//! gas_meter: GasMeter, +//! imbalance: balances::NegativeImbalance, +//! ) { +//! let gas_spent = gas_meter.spent(); +//! let gas_left = gas_meter.gas_left(); +//! +//! // Increase total spent gas. +//! >::mutate(|block_gas_spent| *block_gas_spent += gas_spent); +//! +//! let refund = >::as_(gas_left) * gas_meter.gas_price; +//! // Refund gas using balances module +//! let refund_imbalance = >::deposit_creating(transactor, refund); +//! // Handle imbalance +//! if let Ok(imbalance) = imbalance.offset(refund_imbalance) { +//! T::GasPayment::on_unbalanced(imbalance); +//! } +//! } +//! ``` +//! +//! ## Genesis config +//! +//! The following storage items depend on the genesis config: +//! +//! - `TotalIssuance` +//! - `ExistentialDeposit` +//! - `TransferFee` +//! - `CreationFee` +//! - `Vesting` +//! - `FreeBalance` +//! - `TransactionBaseFee` +//! - `TransactionByteFee` +//! +//! ## Related Modules +//! +//! The balances module depends on the [`system`](https://crates.parity.io/srml_system/index.html) and +//! [`srml_support`](https://crates.parity.io/srml_support/index.html) modules as well as Substrate Core +//! libraries and the Rust standard library. #![cfg_attr(not(feature = "std"), no_std)] @@ -47,7 +192,7 @@ pub trait Subtrait: system::Trait { /// The balance of an account. type Balance: Parameter + Member + SimpleArithmetic + Codec + Default + Copy + As + As + MaybeSerializeDebug; - /// A function which is invoked when the free-balance has fallen below the existential deposit and + /// A function that is invoked when the free-balance has fallen below the existential deposit and /// has been reduced to zero. /// /// Gives a chance to clean up resources associated with the given account. @@ -61,7 +206,7 @@ pub trait Trait: system::Trait { /// The balance of an account. type Balance: Parameter + Member + SimpleArithmetic + Codec + Default + Copy + As + As + MaybeSerializeDebug; - /// A function which is invoked when the free-balance has fallen below the existential deposit and + /// A function that is invoked when the free-balance has fallen below the existential deposit and /// has been reduced to zero. /// /// Gives a chance to clean up resources associated with the given account. @@ -136,15 +281,15 @@ pub struct BalanceLock { decl_storage! { trait Store for Module, I: Instance=DefaultInstance> as Balances { - /// The total amount of stake on the system. + /// The total units issued in the system. 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. + /// The minimum amount required to keep an account open. pub ExistentialDeposit get(existential_deposit) config(): T::Balance; /// The fee required to make a transfer. pub TransferFee get(transfer_fee) config(): T::Balance; - /// The fee required to create an account. At least as big as ReclaimRebate. + /// The fee required to create an account. pub CreationFee get(creation_fee) config(): T::Balance; /// The fee to be paid for making a transaction; the base. pub TransactionBaseFee get(transaction_base_fee) config(): T::Balance; @@ -175,11 +320,11 @@ decl_storage! { /// The 'free' balance of a given account. /// - /// This is the only balance that matters in terms of most operations on tokens. It is - /// alone used to determine the balance when in the contract execution environment. When this + /// This is the only balance that matters in terms of most operations on tokens. It + /// alone is used to determine the balance when in the contract execution environment. When this /// balance falls below the value of `ExistentialDeposit`, then the 'current account' is - /// deleted: specifically `FreeBalance`. Furthermore, `OnFreeBalanceZero` callback - /// is invoked, giving a chance to external modules to cleanup data associated with + /// deleted: specifically `FreeBalance`. Further, the `OnFreeBalanceZero` callback + /// is invoked, giving a chance to external modules to clean up data associated with /// the deleted account. /// /// `system::AccountNonce` is also deleted if `ReservedBalance` is also zero (it also gets @@ -190,14 +335,13 @@ decl_storage! { /// slashed, but gets slashed last of all. /// /// This balance is a 'reserve' balance that other subsystems use in order to set aside tokens - /// that are still 'owned' by the account holder, but which are suspendable. (This is different - /// and wholly unrelated to the `Bondage` system used in the staking module.) + /// that are still 'owned' by the account holder, but which are suspendable. /// /// When this balance falls below the value of `ExistentialDeposit`, then this 'reserve account' /// is deleted: specifically, `ReservedBalance`. /// /// `system::AccountNonce` is also deleted if `FreeBalance` is also zero (it also gets - /// collapsed to zero if it ever becomes less than `ExistentialDeposit`. + /// collapsed to zero if it ever becomes less than `ExistentialDeposit`.) pub ReservedBalance get(reserved_balance): map T::AccountId => T::Balance; /// Any liquidity locks on some account balances. @@ -214,7 +358,14 @@ decl_module! { 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. + /// Transfer some liquid free balance to another account. + /// + /// `transfer` will set the `FreeBalance` of the sender and receiver. + /// It will decrease the total issuance of the system by the `TransferFee`. + /// If the sender's account is below the existential deposit as a result + /// of the transfer, the account will be reaped. + /// + /// The dispatch origin for this call must be `Signed` by the transactor. pub fn transfer( origin, dest: ::Source, @@ -226,6 +377,13 @@ decl_module! { } /// Set the balances of a given account. + /// + /// This will alter `FreeBalance` and `ReservedBalance` in storage. + /// If the new free or reserved balance is below the existential deposit, + /// it will also decrease the total issuance of the system (`TotalIssuance`) + /// and reset the account nonce (`system::AccountNonce`). + /// + /// The dispatch origin for this call is `root`. fn set_balance( who: ::Source, #[compact] free: T::Balance, @@ -238,7 +396,6 @@ decl_module! { } } -// For funding methods, see Currency trait impl, I: Instance> Module { // PUBLIC IMMUTABLES @@ -254,10 +411,11 @@ impl, I: Instance> Module { // PRIVATE MUTABLES - /// Set the free balance of an account to some new value. + /// Set the reserved balance of an account to some new value. Will enforce `ExistentialDeposit` + /// law, annulling the account as needed. /// - /// Will enforce ExistentialDeposit law, annulling the account as needed. - /// In that case it will return `AccountKilled`. + /// Doesn't do any preparatory work for creating a new account, so should only be used when it + /// is known that the account already exists. /// /// NOTE: LOW-LEVEL: This will not attempt to maintain total issuance. It is expected that /// the caller will do this. @@ -272,14 +430,12 @@ impl, I: Instance> Module { } } - /// Set the free balance of an account to some new value. Will enforce ExistentialDeposit - /// law annulling the account as needed. + /// Set the free balance of an account to some new value. Will enforce `ExistentialDeposit` + /// law, annulling the account as needed. /// /// Doesn't do any preparatory work for creating a new account, so should only be used when it /// is known that the account already exists. /// - /// Returns if the account was successfully updated or update has led to killing of the account. - /// /// NOTE: LOW-LEVEL: This will not attempt to maintain total issuance. It is expected that /// the caller will do this. fn set_free_balance(who: &T::AccountId, balance: T::Balance) -> UpdateBalanceOutcome { @@ -684,8 +840,6 @@ where // Free balance can never be less than ED. If that happens, it gets reduced to zero // and the account information relevant to this subsystem is deleted (i.e. the // account is reaped). - // NOTE: This is orthogonal to the `Bondage` value that an account has, a high - // value of which makes even the `free_balance` unspendable. let outcome = if balance < >::existential_deposit() { Self::set_free_balance(who, balance); UpdateBalanceOutcome::AccountKilled diff --git a/srml/contract/src/lib.rs b/srml/contract/src/lib.rs index a3f6faf41c..2c2d2106a6 100644 --- a/srml/contract/src/lib.rs +++ b/srml/contract/src/lib.rs @@ -366,7 +366,7 @@ decl_event! { decl_storage! { trait Store for Module as Contract { - /// The fee required to create a contract. At least as big as staking's ReclaimRebate. + /// The fee required to create a contract. ContractFee get(contract_fee) config(): T::Balance = T::Balance::sa(21); /// The fee charged for a call into a contract. CallBaseFee get(call_base_fee) config(): T::Gas = T::Gas::sa(135); diff --git a/srml/support/src/traits.rs b/srml/support/src/traits.rs index 4a676c797a..7511c8550c 100644 --- a/srml/support/src/traits.rs +++ b/srml/support/src/traits.rs @@ -57,7 +57,7 @@ impl OnDilution for () { pub enum UpdateBalanceOutcome { /// Account balance was simply updated. Updated, - /// The update has led to killing of the account. + /// The update led to killing the account. AccountKilled, } @@ -245,7 +245,7 @@ pub trait Currency { /// The combined balance of `who`. fn total_balance(who: &AccountId) -> Self::Balance; - /// Some result as `slash(who, value)` (but without the side-effects) assuming there are no + /// Same result as `slash(who, value)` (but without the side-effects) assuming there are no /// balance changes in the meantime and only the reserved balance is not taken into account. fn can_slash(who: &AccountId, value: Self::Balance) -> bool; @@ -253,20 +253,20 @@ pub trait Currency { /// are no balance changes in the meantime. fn can_reserve(who: &AccountId, value: Self::Balance) -> bool; - /// The total amount of stake on the system. + /// The total amount of issuance in the system. fn total_issuance() -> Self::Balance; - /// The minimum balance any single account may have. This is equivalent to Balances module's - /// Existential Deposit. + /// The minimum balance any single account may have. This is equivalent to the `Balances` module's + /// `ExistentialDeposit`. fn minimum_balance() -> Self::Balance; /// The 'free' balance of a given account. /// - /// This is the only balance that matters in terms of most operations on tokens. It is - /// alone used to determine the balance when in the contract execution environment. When this + /// This is the only balance that matters in terms of most operations on tokens. It alone + /// is used to determine the balance when in the contract execution environment. When this /// balance falls below the value of `ExistentialDeposit`, then the 'current account' is - /// deleted: specifically `FreeBalance`. Furthermore, `OnFreeBalanceZero` callback - /// is invoked, giving a chance to external modules to cleanup data associated with + /// deleted: specifically `FreeBalance`. Further, the `OnFreeBalanceZero` callback + /// is invoked, giving a chance to external modules to clean up data associated with /// the deleted account. /// /// `system::AccountNonce` is also deleted if `ReservedBalance` is also zero (it also gets @@ -277,8 +277,7 @@ pub trait Currency { /// slashed, but gets slashed last of all. /// /// This balance is a 'reserve' balance that other subsystems use in order to set aside tokens - /// that are still 'owned' by the account holder, but which are suspendable. (This is different - /// and wholly unrelated to the `Bondage` system used in the staking module.) + /// that are still 'owned' by the account holder, but which are suspendable. /// /// When this balance falls below the value of `ExistentialDeposit`, then this 'reserve account' /// is deleted: specifically, `ReservedBalance`. @@ -298,7 +297,7 @@ pub trait Currency { new_balance: Self::Balance, ) -> result::Result<(), &'static str>; - // PUBLIC MUTABLES (DANGEROUS) + // PUBLIC MUTABLES (DANGEROUS) /// Transfer some liquid free balance to another staker. /// @@ -333,7 +332,7 @@ pub trait Currency { /// Removes some free balance from `who` account for `reason` if possible. If `liveness` is `KeepAlive`, /// then no less than `ExistentialDeposit` must be left remaining. /// - /// This checks any locks, vesting and liquidity requirements. If the removal is not possible, then it + /// This checks any locks, vesting, and liquidity requirements. If the removal is not possible, then it /// returns `Err`. fn withdraw( who: &AccountId, @@ -342,7 +341,7 @@ pub trait Currency { liveness: ExistenceRequirement, ) -> result::Result; - /// Adds up to `value` to the free balance of `who`. If `who` doesn't exist, it is created + /// Adds up to `value` to the free balance of `who`. If `who` doesn't exist, it is created. /// /// Infallible. fn deposit_creating( @@ -363,24 +362,28 @@ pub trait Currency { UpdateBalanceOutcome, ); - /// Moves `value` from balance to reserved balance. + /// Moves `value` from balance to reserved balance. /// /// If the free balance is lower than `value`, then no funds will be moved and an `Err` will - /// be returned to notify of this. This is different behaviour to `unreserve`. + /// be returned to notify of this. This is different behavior than `unreserve`. fn reserve(who: &AccountId, value: Self::Balance) -> result::Result<(), &'static str>; - /// Moves up to `value` from reserved balance to balance. This function cannot fail. + /// Moves up to `value` from reserved balance to free balance. This function cannot fail. /// - /// As much funds up to `value` will be deducted as possible. If this is less than `value`, - /// then non-zero will be returned. + /// As much funds up to `value` will be moved as possible. If the reserve balance of `who` + /// is less than `value`, then the remaining amount will be returned. + /// + /// # NOTES /// - /// NOTE: This is different to `reserve`. + /// - This is different from `reserve`. + /// - If the remaining reserved balance is less than `ExistentialDeposit`, it will + /// invoke `on_reserved_too_low` and could reap the account. fn unreserve(who: &AccountId, value: Self::Balance) -> Self::Balance; /// Deducts up to `value` from reserved balance of `who`. This function cannot fail. /// - /// As much funds up to `value` will be deducted as possible. If this is less than `value`, - /// then non-zero second item will be returned. + /// As much funds up to `value` will be deducted as possible. If the reserve balance of `who` + /// is less than `value`, then a non-zero second item will be returned. fn slash_reserved( who: &AccountId, value: Self::Balance @@ -408,7 +411,12 @@ pub trait LockableCurrency: Currency { /// The quantity used to denote time; usually just a `BlockNumber`. type Moment; - /// Introduce a new lock or change an existing one. + /// Create a new balance lock on account `who`. + /// + /// If the new lock is valid (i.e. not already expired), it will push the struct to + /// the `Locks` vec in storage. Note that you can lock more funds than a user has. + /// + /// If the lock `id` already exists, this will update it. fn set_lock( id: LockIdentifier, who: &AccountId, @@ -417,8 +425,15 @@ pub trait LockableCurrency: Currency { reasons: WithdrawReasons, ); - /// Change any existing lock so that it becomes strictly less liquid in all - /// respects to the given parameters. + /// Changes a balance lock (selected by `id`) so that it becomes less liquid in all + /// parameters or creates a new one if it does not exist. + /// + /// Calling `extend_lock` on an existing lock `id` differs from `set_lock` in that it + /// applies the most severe constraints of the two, while `set_lock` replaces the lock + /// with the new parameters. As in, `extend_lock` will set: + /// - maximum `amount` + /// - farthest duration (`until`) + /// - bitwise mask of all `reasons` fn extend_lock( id: LockIdentifier, who: &AccountId, @@ -452,3 +467,4 @@ bitmask! { Fee = 0b00001000, } } + -- GitLab From 4c8a53b423666fb82756bb46da601802ef6fc581 Mon Sep 17 00:00:00 2001 From: Shawn Tabrizi Date: Wed, 27 Mar 2019 10:50:14 +0100 Subject: [PATCH 093/120] Update AccountId to use sr25519 in node-template (#2119) --- node-template/runtime/src/lib.rs | 4 ++-- node-template/src/chain_spec.rs | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/node-template/runtime/src/lib.rs b/node-template/runtime/src/lib.rs index fd82b399d3..0f740aca55 100644 --- a/node-template/runtime/src/lib.rs +++ b/node-template/runtime/src/lib.rs @@ -11,7 +11,7 @@ use parity_codec::{Encode, Decode}; use rstd::prelude::*; #[cfg(feature = "std")] use primitives::bytes; -use primitives::{ed25519, OpaqueMetadata}; +use primitives::{ed25519, sr25519, OpaqueMetadata}; use runtime_primitives::{ ApplyResult, transaction_validity::TransactionValidity, generic, create_runtime_str, traits::{self, NumberFor, BlakeTwo256, Block as BlockT, StaticLookup, Verify} @@ -44,7 +44,7 @@ pub type AuthoritySignature = ed25519::Signature; pub type AccountId = ::Signer; /// The type used by authorities to prove their ID. -pub type AccountSignature = ed25519::Signature; +pub type AccountSignature = sr25519::Signature; /// A hash of some data used by the chain. pub type Hash = primitives::H256; diff --git a/node-template/src/chain_spec.rs b/node-template/src/chain_spec.rs index a81ca5fd84..e774b3a792 100644 --- a/node-template/src/chain_spec.rs +++ b/node-template/src/chain_spec.rs @@ -1,4 +1,4 @@ -use primitives::{ed25519, Pair}; +use primitives::{ed25519, sr25519, Pair}; use node_template_runtime::{ AccountId, GenesisConfig, ConsensusConfig, TimestampConfig, BalancesConfig, SudoConfig, IndicesConfig, @@ -31,7 +31,7 @@ fn authority_key(s: &str) -> AuthorityId { } fn account_key(s: &str) -> AccountId { - ed25519::Pair::from_string(&format!("//{}", s), None) + sr25519::Pair::from_string(&format!("//{}", s), None) .expect("static values are valid; qed") .public() } -- GitLab From 1ba7ad64eabdcd48ea4aab2f596949ced56448f7 Mon Sep 17 00:00:00 2001 From: Shawn Tabrizi Date: Wed, 27 Mar 2019 16:48:38 +0100 Subject: [PATCH 094/120] Introduce `ReservableCurrency` Trait in Balances Module (#2124) * Introduce `ReservableCurrency` * Update Docs for `ReservableCurrency` * Update Tests * Bump spec and rebuild wasm * Extra: Add a note to `slash()` Discussion in Riot clarified the behavior of `slash()` and `can_slash()`. Trying to sneak clarifying comments about it into this PR * Update lib.rs * Don't drop the periods! CC @shawntabrizi --- .../substrate_test_runtime.compact.wasm | Bin 56637 -> 59737 bytes node/runtime/src/lib.rs | 2 +- .../release/node_runtime.compact.wasm | Bin 923946 -> 929952 bytes srml/balances/src/lib.rs | 37 ++++++++---- srml/balances/src/tests.rs | 9 +-- srml/council/src/seats.rs | 2 +- srml/democracy/src/lib.rs | 4 +- srml/staking/src/tests.rs | 2 +- srml/support/src/traits.rs | 56 ++++++++++-------- srml/treasury/src/lib.rs | 4 +- 10 files changed, 66 insertions(+), 50 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index cb602bfe9df4bbcd33d126652c44fb0dcad98d26..fea26da599a1bcf76437e62650718b8d7a29e837 100644 GIT binary patch delta 21451 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ΤWA#+W{FaxR7SsmC1~w5~1DQcn9q|uf z7^)kg2+_EffAu8;qW#WGtyz(_qC6Aw0f=`f+?P)KqzbRSXkS4w;Q`^}AmT1mnqbeh zf;|rj_EbDQs*0Zib>mz#{xnz~RbS7qe7PwmlG@N6hD>P7F~%8129_*TD29R~L7v5o zAsQA8d-&zn0%*upjfq2s^b;eQk-}t<>4DUMEwGU1;X=3&U|VKZh!B*LAR6^ahKIrM z2sB9Cx+f@KE~#aQ#n`E%u3@+j7l>}CJ%l@rrP9u+3`?J26x50z4uG}W)x%78V@RkU z(vf5bK~0r{EqOK{bmw&e}=0B@tqN9j9|NPqS>NpdAQ78Xr{Gck*>#UBgcE`@Y)Iil1J10E;8} z$n+MEsvybO{mKI`zWU=IKK;mRQ*V7W=U^>U>95aap1W(21R{^!^ES_XEAc_u|fX#-`F`7oK7=e*=Lq`@2ii@KezSr)g#&cd-B6$qs!L~j;-I{ z&uhN<=Y_vJxai=|R;}5@6h-OJ+nUU{rmF9;IL8r))lXQZQftmWq{xC+7PdO zJ;>jFZ6%MrzIf{D*B@iE$aD7`a{Ljgiv)(+fqRx$f4gBp7EcdjbSLgTOou=N$uf|=&-H*E;cYFm$X~6xLm=%#_C7un8uUv&fEdVqq{X>6B1^#+mx>ApO z4tJto0{2GTM}anV@JT!`!TnX-XXD z`gU4_w~By!GB@DEXFfNT2lnOj)x6<5X@4l2h-IUpNI04q$V77K8lL&ig4#?tnjZ*- z(#cRNn@^;o`p5XSZ#VJJy@vx99Qe|8cx7lF#MC zvHoNtlSn2bsob1TF}~%^MqYP(#GgpyQqfE}-yaSq!s%G9ne*cTeq}u4?<)IqN#y&HW7{vB+{+C^SeF% zR5F*#W;2<1J{3!4a*=ub-tQ(GGO5f!Dx6D(V)0Nmmx>q{ue@@9>T3SrcZ0m^4R3uc z*Po0GWc#C$fn+QZ&jq?yUb($k?T=thQqfpAnNIg7Ma-V`Cg4bmyX7x;dCgSLR~%^T>$!< z%Oj~sERzn!^Oo5jQFY<> z*UnBR^0`ktmd@p3V5|u6g(&rh&;MD$$hlt? zj81KO^YhG~PG$x|nP@ti1=q*I@tFA5V0?i0yxGKW|52sG$c!5N`L~bGLWyW9ozG>H_;w+EwNTeu zSepO*t++qgpNwVWp-g`w6wO2QR^W?<0mRTfKfKJ3$>;l1nM^hd-s(>bti*Q?=dug& zox>*eqHplcZziV#Z-106fH>p^pbAonfm|XRiL5%$HxRq<3B)ot)pe=DeRkTzeRUEuZ?*$sy*C#Zv>(Y%&u`C(_YOHnt95M{H&51);8b zXO=&e4MSuh2iaH}f)Lw4-%V`0&N76M&U>2M+!OJw^m z`CXHj~I~<1f4mMHC7{-17suf&NH(ARXDxfBtT;Hk!&puoIa9 zFk2=R>fdp(rHDNIqW5b2`FuVc0o#V7P!XwQ^m2a9dvpEKP&!RZ3|8w8rIG_z@O$4| zusA-DNyeh-SRCpklFG(+y7uJvjONFB>7L#D(Ong|?-{u%e@*+_DrKb-D2 OfLXdT6zz<}JN^%Lsmzi9 delta 18896 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 diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 8c87bfc155..8da9a32c77 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,7 +58,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 44, + spec_version: 45, impl_version: 45, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 39485b1e0764c46d575360850e0233bb4c462068..9c1fbdd2ec355f3513ad6576f41836adbc9371fc 100644 GIT binary patch delta 282741 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 delta 278315 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 TW}I+E@F-BSuO#=4MSJ}pRkK?3 diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index 09b68f457e..8c03c08894 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -62,6 +62,8 @@ //! //! - [`Currency`](https://crates.parity.io/srml_support/traits/trait.Currency.html): Functions for dealing with a //! fungible assets system. +//! - [`ReservableCurrency`](https://crates.parity.io/srml_support/traits/trait.ReservableCurrency.html): +//! Functions for dealing with assets that can be reserved from an account. //! - [`LockableCurrency`](https://crates.parity.io/srml_support/traits/trait.LockableCurrency.html): Functions for //! dealing with accounts that allow liquidity restrictions. //! - [`Imbalance`](https://crates.parity.io/srml_support/traits/trait.Imbalance.html): Functions for handling @@ -176,7 +178,7 @@ use srml_support::{StorageValue, StorageMap, Parameter, decl_event, decl_storage use srml_support::traits::{ UpdateBalanceOutcome, Currency, OnFreeBalanceZero, MakePayment, OnUnbalanced, WithdrawReason, WithdrawReasons, LockIdentifier, LockableCurrency, ExistenceRequirement, - Imbalance, SignedImbalance + Imbalance, SignedImbalance, ReservableCurrency }; use srml_support::dispatch::Result; use primitives::traits::{ @@ -661,14 +663,6 @@ where Self::free_balance(who) >= value } - fn can_reserve(who: &T::AccountId, value: Self::Balance) -> bool { - Self::free_balance(who) - .checked_sub(&value) - .map_or(false, |new_balance| - Self::ensure_can_withdraw(who, value, WithdrawReason::Reserve, new_balance).is_ok() - ) - } - fn total_issuance() -> Self::Balance { >::get() } @@ -681,10 +675,6 @@ where >::get(who) } - fn reserved_balance(who: &T::AccountId) -> Self::Balance { - >::get(who) - } - fn ensure_can_withdraw( who: &T::AccountId, _amount: T::Balance, @@ -775,6 +765,10 @@ where let free_slash = cmp::min(free_balance, value); Self::set_free_balance(who, free_balance - free_slash); let remaining_slash = value - free_slash; + // NOTE: `slash()` prefers free balance, but assumes that reserve balance can be drawn + // from in extreme circumstances. `can_slash()` should be used prior to `slash()` is avoid having + // to draw from reserved funds, however we err on the side of punishment if things are inconsistent + // or `can_slash` wasn't used appropriately. if !remaining_slash.is_zero() { let reserved_balance = Self::reserved_balance(who); let reserved_slash = cmp::min(reserved_balance, remaining_slash); @@ -852,6 +846,23 @@ where }; (imbalance, outcome) } +} + +impl, I: Instance> ReservableCurrency for Module +where + T::Balance: MaybeSerializeDebug +{ + fn can_reserve(who: &T::AccountId, value: Self::Balance) -> bool { + Self::free_balance(who) + .checked_sub(&value) + .map_or(false, |new_balance| + Self::ensure_can_withdraw(who, value, WithdrawReason::Reserve, new_balance).is_ok() + ) + } + + fn reserved_balance(who: &T::AccountId) -> Self::Balance { + >::get(who) + } fn reserve(who: &T::AccountId, value: Self::Balance) -> result::Result<(), &'static str> { let b = Self::free_balance(who); diff --git a/srml/balances/src/tests.rs b/srml/balances/src/tests.rs index 123a04524e..89491fe5f8 100644 --- a/srml/balances/src/tests.rs +++ b/srml/balances/src/tests.rs @@ -23,7 +23,8 @@ use mock::{Balances, ExtBuilder, Runtime, System}; use runtime_io::with_externalities; use srml_support::{ assert_noop, assert_ok, assert_err, - traits::{LockableCurrency, LockIdentifier, WithdrawReason, WithdrawReasons, Currency, MakePayment} + traits::{LockableCurrency, LockIdentifier, WithdrawReason, WithdrawReasons, + Currency, MakePayment, ReservableCurrency} }; const ID_1: LockIdentifier = *b"1 "; @@ -101,17 +102,17 @@ fn lock_reasons_should_work() { with_externalities(&mut ExtBuilder::default().existential_deposit(1).monied(true).transaction_fees(0, 1).build(), || { Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::Transfer.into()); assert_noop!(>::transfer(&1, &2, 1), "account liquidity restrictions prevent withdrawal"); - assert_ok!(>::reserve(&1, 1)); + assert_ok!(>::reserve(&1, 1)); assert_ok!(>::make_payment(&1, 1)); Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::Reserve.into()); assert_ok!(>::transfer(&1, &2, 1)); - assert_noop!(>::reserve(&1, 1), "account liquidity restrictions prevent withdrawal"); + assert_noop!(>::reserve(&1, 1), "account liquidity restrictions prevent withdrawal"); assert_ok!(>::make_payment(&1, 1)); Balances::set_lock(ID_1, &1, 10, u64::max_value(), WithdrawReason::TransactionPayment.into()); assert_ok!(>::transfer(&1, &2, 1)); - assert_ok!(>::reserve(&1, 1)); + assert_ok!(>::reserve(&1, 1)); assert_noop!(>::make_payment(&1, 1), "account liquidity restrictions prevent withdrawal"); }); } diff --git a/srml/council/src/seats.rs b/srml/council/src/seats.rs index 210603b9f4..867efe4ca1 100644 --- a/srml/council/src/seats.rs +++ b/srml/council/src/seats.rs @@ -21,7 +21,7 @@ use primitives::traits::{Zero, One, As, StaticLookup}; use runtime_io::print; use srml_support::{ StorageValue, StorageMap, dispatch::Result, decl_storage, decl_event, ensure, - traits::{Currency, OnUnbalanced} + traits::{Currency, ReservableCurrency, OnUnbalanced} }; use democracy; use system::{self, ensure_signed}; diff --git a/srml/democracy/src/lib.rs b/srml/democracy/src/lib.rs index 118f8f189b..c6e87e29c4 100644 --- a/srml/democracy/src/lib.rs +++ b/srml/democracy/src/lib.rs @@ -24,7 +24,7 @@ use primitives::traits::{Zero, As, Bounded}; use parity_codec::{Encode, Decode}; use srml_support::{StorageValue, StorageMap, Parameter, Dispatchable, IsSubType, EnumerableStorageMap}; use srml_support::{decl_module, decl_storage, decl_event, ensure}; -use srml_support::traits::{Currency, LockableCurrency, WithdrawReason, LockIdentifier}; +use srml_support::traits::{Currency, ReservableCurrency, LockableCurrency, WithdrawReason, LockIdentifier}; use srml_support::dispatch::Result; use system::ensure_signed; @@ -72,7 +72,7 @@ impl Vote { type BalanceOf = <::Currency as Currency<::AccountId>>::Balance; pub trait Trait: system::Trait + Sized { - type Currency: LockableCurrency<::AccountId, Moment=Self::BlockNumber>; + type Currency: ReservableCurrency + LockableCurrency; type Proposal: Parameter + Dispatchable + IsSubType>; diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index f020f8aebf..e8716c13fb 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -24,7 +24,7 @@ use phragmen; use primitives::Perquintill; use srml_support::{assert_ok, assert_noop, EnumerableStorageMap}; use mock::{Balances, Session, Staking, System, Timestamp, Test, ExtBuilder, Origin}; -use srml_support::traits::Currency; +use srml_support::traits::{Currency, ReservableCurrency}; #[test] fn basic_setup_works() { diff --git a/srml/support/src/traits.rs b/srml/support/src/traits.rs index 7511c8550c..9f70f13cd6 100644 --- a/srml/support/src/traits.rs +++ b/srml/support/src/traits.rs @@ -249,10 +249,6 @@ pub trait Currency { /// balance changes in the meantime and only the reserved balance is not taken into account. fn can_slash(who: &AccountId, value: Self::Balance) -> bool; - /// Same result as `reserve(who, value)` (but without the side-effects) assuming there - /// are no balance changes in the meantime. - fn can_reserve(who: &AccountId, value: Self::Balance) -> bool; - /// The total amount of issuance in the system. fn total_issuance() -> Self::Balance; @@ -273,19 +269,6 @@ pub trait Currency { /// collapsed to zero if it ever becomes less than `ExistentialDeposit`. fn free_balance(who: &AccountId) -> Self::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. - /// - /// This balance is a 'reserve' balance that other subsystems use in order to set aside tokens - /// that are still 'owned' by the account holder, but which are suspendable. - /// - /// When this balance falls below the value of `ExistentialDeposit`, then this 'reserve account' - /// is deleted: specifically, `ReservedBalance`. - /// - /// `system::AccountNonce` is also deleted if `FreeBalance` is also zero (it also gets - /// collapsed to zero if it ever becomes less than `ExistentialDeposit`. - fn reserved_balance(who: &AccountId) -> Self::Balance; - /// Returns `Ok` iff the account is able to make a withdrawal of the given amount /// for the given reason. Basically, it's just a dry-run of `withdraw`. /// @@ -361,6 +344,36 @@ pub trait Currency { SignedImbalance, UpdateBalanceOutcome, ); +} + +/// A currency where funds can be reserved from the user. +pub trait ReservableCurrency: Currency { + /// Same result as `reserve(who, value)` (but without the side-effects) assuming there + /// are no balance changes in the meantime. + fn can_reserve(who: &AccountId, value: Self::Balance) -> bool; + + /// Deducts up to `value` from reserved balance of `who`. This function cannot fail. + /// + /// As much funds up to `value` will be deducted as possible. If the reserve balance of `who` + /// is less than `value`, then a non-zero second item will be returned. + fn slash_reserved( + who: &AccountId, + value: Self::Balance + ) -> (Self::NegativeImbalance, Self::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. + /// + /// This balance is a 'reserve' balance that other subsystems use in order to set aside tokens + /// that are still 'owned' by the account holder, but which are suspendable. + /// + /// When this balance falls below the value of `ExistentialDeposit`, then this 'reserve account' + /// is deleted: specifically, `ReservedBalance`. + /// + /// `system::AccountNonce` is also deleted if `FreeBalance` is also zero (it also gets + /// collapsed to zero if it ever becomes less than `ExistentialDeposit`. + fn reserved_balance(who: &AccountId) -> Self::Balance; + /// Moves `value` from balance to reserved balance. /// @@ -380,15 +393,6 @@ pub trait Currency { /// invoke `on_reserved_too_low` and could reap the account. fn unreserve(who: &AccountId, value: Self::Balance) -> Self::Balance; - /// Deducts up to `value` from reserved balance of `who`. This function cannot fail. - /// - /// As much funds up to `value` will be deducted as possible. If the reserve balance of `who` - /// is less than `value`, then a non-zero second item will be returned. - fn slash_reserved( - who: &AccountId, - value: Self::Balance - ) -> (Self::NegativeImbalance, Self::Balance); - /// Moves up to `value` from reserved balance of account `slashed` to free balance of account /// `beneficiary`. `beneficiary` must exist for this to succeed. If it does not, `Err` will be /// returned. diff --git a/srml/treasury/src/lib.rs b/srml/treasury/src/lib.rs index f5c4538497..6cb257f034 100644 --- a/srml/treasury/src/lib.rs +++ b/srml/treasury/src/lib.rs @@ -22,7 +22,7 @@ use serde_derive::{Serialize, Deserialize}; use rstd::prelude::*; use srml_support::{StorageValue, StorageMap, decl_module, decl_storage, decl_event, ensure}; -use srml_support::traits::{Currency, OnDilution, OnUnbalanced, Imbalance}; +use srml_support::traits::{Currency, ReservableCurrency, OnDilution, OnUnbalanced, Imbalance}; use runtime_primitives::{Permill, traits::{Zero, EnsureOrigin, StaticLookup}}; use parity_codec::{Encode, Decode}; use system::ensure_signed; @@ -33,7 +33,7 @@ type NegativeImbalanceOf = <::Currency as Currency<; + type Currency: Currency + ReservableCurrency; /// Origin from which approvals must come. type ApproveOrigin: EnsureOrigin; -- GitLab From e91c027b7f77f9636b88ca45bee589cda067da97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Wed, 27 Mar 2019 15:49:19 +0000 Subject: [PATCH 095/120] core: network: reduce log level of peer drop messages (#2125) --- core/network/src/service.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/network/src/service.rs b/core/network/src/service.rs index 643fd3bbe7..d0cd0540d2 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -533,11 +533,11 @@ fn run_thread( network_service_2.lock().drop_node(&who) }, Severity::Useless(message) => { - info!(target: "sync", "Dropping {:?} because {:?}", who, message); + debug!(target: "sync", "Dropping {:?} because {:?}", who, message); network_service_2.lock().drop_node(&who) }, Severity::Timeout => { - info!(target: "sync", "Dropping {:?} because it timed out", who); + debug!(target: "sync", "Dropping {:?} because it timed out", who); network_service_2.lock().drop_node(&who) }, } -- GitLab From 2e8d3cc2b5a93bd0499a6c6de17d1888a335f9f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Drwi=C4=99ga?= Date: Wed, 27 Mar 2019 16:49:53 +0100 Subject: [PATCH 096/120] Use NativeWhenPossible for offchain worker. (#2126) --- core/cli/src/params.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/cli/src/params.rs b/core/cli/src/params.rs index ae4109dd26..4c2fb53502 100644 --- a/core/cli/src/params.rs +++ b/core/cli/src/params.rs @@ -39,6 +39,7 @@ arg_enum! { Wasm, Both, NativeElseWasm, + NativeWhenPossible, } } @@ -49,6 +50,7 @@ impl Into for ExecutionStrategy { ExecutionStrategy::Wasm => client::ExecutionStrategy::AlwaysWasm, ExecutionStrategy::Both => client::ExecutionStrategy::Both, ExecutionStrategy::NativeElseWasm => client::ExecutionStrategy::NativeElseWasm, + ExecutionStrategy::NativeWhenPossible => client::ExecutionStrategy::NativeWhenPossible, } } } @@ -261,7 +263,7 @@ pub struct ExecutionStrategies { raw( possible_values = "&ExecutionStrategy::variants()", case_insensitive = "true", - default_value = r#""NativeElseWasm""# + default_value = r#""NativeWhenPossible""# ) )] pub offchain_worker_execution: ExecutionStrategy, -- GitLab From 8b92a591f54eeb6debba74759c712196d545887f Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Wed, 27 Mar 2019 17:46:30 +0100 Subject: [PATCH 097/120] Fix subtle indices bug (#2128) * Fix subtle indices bug * Also fix balances divide by zero. --- .../substrate_test_runtime.compact.wasm | Bin 59737 -> 59673 bytes node/runtime/src/lib.rs | 4 +-- .../release/node_runtime.compact.wasm | Bin 929952 -> 929214 bytes srml/balances/src/lib.rs | 2 +- srml/indices/src/address.rs | 30 +++++++++++++++++- 5 files changed, 32 insertions(+), 4 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index fea26da599a1bcf76437e62650718b8d7a29e837..a7de97ffb9e649e474fabdee7525fa30f3df5715 100644 GIT binary patch delta 3157 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 diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index 8da9a32c77..b6d4738572 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 45, - impl_version: 45, + spec_version: 46, + impl_version: 46, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 9c1fbdd2ec355f3513ad6576f41836adbc9371fc..4ff22ed0e8b90eaee3dd8496bc6f33c763cad3b3 100644 GIT binary patch delta 70182 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 diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index 8c03c08894..a6b64927f9 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -312,7 +312,7 @@ decl_storage! { // <= begin it should be >= balance // >= begin+length it should be <= 0 - let per_block = balance / length; + let per_block = balance / length.max(primitives::traits::One::one()); let offset = begin * per_block + balance; (who.clone(), VestingSchedule { offset, per_block }) diff --git a/srml/indices/src/address.rs b/srml/indices/src/address.rs index fd8f0249de..c7709e3bec 100644 --- a/srml/indices/src/address.rs +++ b/srml/indices/src/address.rs @@ -54,7 +54,7 @@ impl From for Address(a: T, b: T) -> Option { - if a < b { Some(a) } else { None } + if a < b { Some(b) } else { None } } impl Decode for Address where @@ -108,3 +108,31 @@ impl Default for Address where Address::Id(Default::default()) } } + +#[cfg(test)] +mod tests { + use crate::{Encode, Decode}; + + type Address = super::Address<[u8; 8], u32>; + fn index(i: u32) -> Address { super::Address::Index(i) } + fn id(i: [u8; 8]) -> Address { super::Address::Id(i) } + + fn compare(a: Option

, d: &[u8]) { + if let Some(ref a) = a { + assert_eq!(d, &a.encode()[..]); + } + assert_eq!(Address::decode(&mut &d[..]), a); + } + + #[test] + fn it_should_work() { + compare(Some(index(2)), &[2][..]); + compare(None, &[240][..]); + compare(None, &[252, 239, 0][..]); + compare(Some(index(240)), &[252, 240, 0][..]); + compare(Some(index(304)), &[252, 48, 1][..]); + compare(None, &[253, 255, 255, 0, 0][..]); + compare(Some(index(0x10000)), &[253, 0, 0, 1, 0][..]); + compare(Some(id([42, 69, 42, 69, 42, 69, 42, 69])), &[255, 42, 69, 42, 69, 42, 69, 42, 69][..]); + } +} -- GitLab From 0ee04a854ebfc60f1653ad602ccfc11c79c050fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Drwi=C4=99ga?= Date: Wed, 27 Mar 2019 23:36:18 +0100 Subject: [PATCH 098/120] Make some txpool logs a bit more compact (#1995) * Improve logging for transaction pool. * Change Debug in node-template runtime. * Fix hexdisplay. * Add some additional logging. * Rebuild wasm --- Cargo.lock | 1 + core/basic-authorship/src/basic_authorship.rs | 3 +- core/sr-primitives/src/lib.rs | 8 ++- core/transaction-pool/graph/Cargo.toml | 1 + core/transaction-pool/graph/src/base_pool.rs | 55 ++++++++++++++++++- core/transaction-pool/graph/src/future.rs | 20 ++++++- core/transaction-pool/graph/src/pool.rs | 2 + node-template/runtime/src/lib.rs | 8 ++- 8 files changed, 92 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 416e0d4a52..24e763e7aa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4271,6 +4271,7 @@ dependencies = [ "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", + "substrate-primitives 0.1.0", "substrate-test-runtime 0.1.0", ] diff --git a/core/basic-authorship/src/basic_authorship.rs b/core/basic-authorship/src/basic_authorship.rs index be8ccc5356..55b45c1c45 100644 --- a/core/basic-authorship/src/basic_authorship.rs +++ b/core/basic-authorship/src/basic_authorship.rs @@ -20,7 +20,7 @@ // use std::{self, time, sync::Arc}; -use log::{info, debug, warn}; +use log::{info, debug, warn, trace}; use client::{ self, error, Client as SubstrateClient, CallExecutor, @@ -227,6 +227,7 @@ impl Proposer where break; } + trace!("[{:?}] Pushing to the block.", pending.hash); match block_builder.push_extrinsic(pending.data.clone()) { Ok(()) => { debug!("[{:?}] Pushed to the block.", pending.hash); diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index 2a53c7ba4c..41d1564127 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -661,9 +661,15 @@ macro_rules! impl_outer_log { /// Simple blob to hold an extrinsic without committing to its format and ensure it is serialized /// correctly. #[derive(PartialEq, Eq, Clone, Default, Encode, Decode)] -#[cfg_attr(feature = "std", derive(Debug))] pub struct OpaqueExtrinsic(pub Vec); +#[cfg(feature = "std")] +impl std::fmt::Debug for OpaqueExtrinsic { + fn fmt(&self, fmt: &mut std::fmt::Formatter) -> std::fmt::Result { + write!(fmt, "{}", substrate_primitives::hexdisplay::HexDisplay::from(&self.0)) + } +} + #[cfg(feature = "std")] impl ::serde::Serialize for OpaqueExtrinsic { fn serialize(&self, seq: S) -> Result where S: ::serde::Serializer { diff --git a/core/transaction-pool/graph/Cargo.toml b/core/transaction-pool/graph/Cargo.toml index 98d8493428..6244c14e5c 100644 --- a/core/transaction-pool/graph/Cargo.toml +++ b/core/transaction-pool/graph/Cargo.toml @@ -11,6 +11,7 @@ log = "0.4" parking_lot = "0.7.1" serde = "1.0" serde_derive = "1.0" +substrate-primitives = { path = "../../primitives" } sr-primitives = { path = "../../sr-primitives" } [dev-dependencies] diff --git a/core/transaction-pool/graph/src/base_pool.rs b/core/transaction-pool/graph/src/base_pool.rs index 5a1bee00f3..ecdea3d485 100644 --- a/core/transaction-pool/graph/src/base_pool.rs +++ b/core/transaction-pool/graph/src/base_pool.rs @@ -19,13 +19,15 @@ //! For a more full-featured pool, have a look at the `pool` module. use std::{ + fmt, hash, sync::Arc, }; -use serde::Serialize; use error_chain::bail; use log::{trace, debug, warn}; +use serde::Serialize; +use substrate_primitives::hexdisplay::HexDisplay; use sr_primitives::traits::Member; use sr_primitives::transaction_validity::{ TransactionTag as Tag, @@ -82,7 +84,7 @@ pub struct PruneStatus { /// Immutable transaction #[cfg_attr(test, derive(Clone))] -#[derive(Debug, PartialEq, Eq)] +#[derive(PartialEq, Eq)] pub struct Transaction { /// Raw extrinsic representing that transaction. pub data: Extrinsic, @@ -100,6 +102,38 @@ pub struct Transaction { pub provides: Vec, } +impl fmt::Debug for Transaction where + Hash: fmt::Debug, + Extrinsic: fmt::Debug, +{ + fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { + fn print_tags(fmt: &mut fmt::Formatter, tags: &[Tag]) -> fmt::Result { + let mut it = tags.iter(); + if let Some(t) = it.next() { + write!(fmt, "{}", HexDisplay::from(t))?; + } + for t in it { + write!(fmt, ",{}", HexDisplay::from(t))?; + } + Ok(()) + } + + write!(fmt, "Transaction {{ ")?; + write!(fmt, "hash: {:?}, ", &self.hash)?; + write!(fmt, "priority: {:?}, ", &self.priority)?; + write!(fmt, "valid_till: {:?}, ", &self.valid_till)?; + write!(fmt, "bytes: {:?}, ", &self.bytes)?; + write!(fmt, "requires: [")?; + print_tags(fmt, &self.requires)?; + write!(fmt, "], provides: [")?; + print_tags(fmt, &self.provides)?; + write!(fmt, "], ")?; + write!(fmt, "data: {:?}", &self.data)?; + write!(fmt, "}}")?; + Ok(()) + } +} + /// Transaction pool. /// /// Builds a dependency graph for all transactions in the pool and returns @@ -360,6 +394,7 @@ impl BasePool { /// Transaction details. pub transaction: Arc>, @@ -38,6 +39,23 @@ pub struct WaitingTransaction { pub imported_at: time::Instant, } +impl fmt::Debug for WaitingTransaction { + fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { + write!(fmt, "WaitingTransaction {{ ")?; + write!(fmt, "imported_at: {:?}, ", self.imported_at)?; + write!(fmt, "transaction: {:?}, ", self.transaction)?; + write!(fmt, "missing_tags: {{")?; + let mut it = self.missing_tags.iter().map(|tag| HexDisplay::from(tag)); + if let Some(tag) = it.next() { + write!(fmt, "{}", tag)?; + } + for tag in it { + write!(fmt, ", {}", tag)?; + } + write!(fmt, " }}}}") + } +} + impl Clone for WaitingTransaction { fn clone(&self) -> Self { WaitingTransaction { diff --git a/core/transaction-pool/graph/src/pool.rs b/core/transaction-pool/graph/src/pool.rs index 0c4b4a6c13..e24e6f5ae2 100644 --- a/core/transaction-pool/graph/src/pool.rs +++ b/core/transaction-pool/graph/src/pool.rs @@ -176,6 +176,8 @@ impl Pool { let ready_limit = &self.options.ready; let future_limit = &self.options.future; + debug!(target: "txpool", "Pool Status: {:?}", status); + if ready_limit.is_exceeded(status.ready, status.ready_bytes) || future_limit.is_exceeded(status.future, status.future_bytes) { // clean up the pool diff --git a/node-template/runtime/src/lib.rs b/node-template/runtime/src/lib.rs index 0f740aca55..a82f8ce585 100644 --- a/node-template/runtime/src/lib.rs +++ b/node-template/runtime/src/lib.rs @@ -67,8 +67,14 @@ pub mod opaque { /// Opaque, encoded, unchecked extrinsic. #[derive(PartialEq, Eq, Clone, Default, Encode, Decode)] - #[cfg_attr(feature = "std", derive(Serialize, Deserialize, Debug))] + #[cfg_attr(feature = "std", derive(Serialize, Deserialize))] pub struct UncheckedExtrinsic(#[cfg_attr(feature = "std", serde(with="bytes"))] pub Vec); + #[cfg(feature = "std")] + impl std::fmt::Debug for UncheckedExtrinsic { + fn fmt(&self, fmt: &mut std::fmt::Formatter) -> std::fmt::Result { + write!(fmt, "{}", primitives::hexdisplay::HexDisplay::from(&self.0)) + } + } impl traits::Extrinsic for UncheckedExtrinsic { fn is_signed(&self) -> Option { None -- GitLab From d50c973a77f74e26119c228cfd59d4fdcec32bf6 Mon Sep 17 00:00:00 2001 From: thiolliere Date: Thu, 28 Mar 2019 13:46:30 +0100 Subject: [PATCH 099/120] Decouple contract from balances (#2081) * decouple contract from balance * update impls and builds * set fees in contract module * builds --- .../substrate_test_runtime.compact.wasm | Bin 59673 -> 59746 bytes node/cli/src/chain_spec.rs | 8 +++ node/runtime/src/lib.rs | 3 +- node/runtime/wasm/Cargo.lock | 1 - .../release/node_runtime.compact.wasm | Bin 929214 -> 929068 bytes srml/contract/Cargo.toml | 3 +- srml/contract/src/account_db.rs | 18 +++--- srml/contract/src/exec.rs | 27 ++++---- srml/contract/src/gas.rs | 27 ++++---- srml/contract/src/lib.rs | 58 +++++++++++------- srml/contract/src/tests.rs | 5 ++ srml/contract/src/wasm/runtime.rs | 4 +- srml/support/src/traits.rs | 4 +- 13 files changed, 91 insertions(+), 67 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index a7de97ffb9e649e474fabdee7525fa30f3df5715..5adc592d20158a7840ec68281d64bcb30296491c 100644 GIT binary patch delta 10235 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 N?r@FETjTLn{vUD3_t*dc diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index 7edec08b43..59f22e7c37 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -150,6 +150,10 @@ fn staging_testnet_config_genesis() -> GenesisConfig { burn: Permill::from_percent(50), }), contract: Some(ContractConfig { + transaction_base_fee: 1 * CENTS, + transaction_byte_fee: 10 * MILLICENTS, + transfer_fee: 1 * CENTS, + creation_fee: 1 * CENTS, contract_fee: 1 * CENTS, call_base_fee: 1000, create_base_fee: 1000, @@ -303,6 +307,10 @@ pub fn testnet_genesis( burn: Permill::from_percent(50), }), contract: Some(ContractConfig { + transaction_base_fee: 1, + transaction_byte_fee: 0, + transfer_fee: 0, + creation_fee: 0, contract_fee: 21, call_base_fee: 135, create_base_fee: 175, diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index b6d4738572..eb5684c19e 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -59,7 +59,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 46, - impl_version: 46, + impl_version: 47, apis: RUNTIME_API_VERSIONS, }; @@ -167,6 +167,7 @@ impl treasury::Trait for Runtime { } impl contract::Trait for Runtime { + type Currency = balances::Module; type Call = Call; type Event = Event; type Gas = u64; diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 4bc3dcf6da..396d377ade 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -2204,7 +2204,6 @@ dependencies = [ "sr-primitives 0.1.0", "sr-sandbox 0.1.0", "sr-std 0.1.0", - "srml-balances 0.1.0", "srml-support 0.1.0", "srml-system 0.1.0", "srml-timestamp 0.1.0", diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 4ff22ed0e8b90eaee3dd8496bc6f33c763cad3b3..9bd3604b42e7b6da4e47b23debd3da3343320f72 100644 GIT binary patch delta 234864 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

x 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

`5VbkIo-Ittj#th3ZaA$aVvndXtj@^#LN2d{PUE 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 delta 245828 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 ?b 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

tUjraDnQqo%w5%Xm)gT}{5F`iViW( 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

}g-mlIc^--8 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 diff --git a/srml/aura/src/lib.rs b/srml/aura/src/lib.rs index 553bebec75..344ea64869 100644 --- a/srml/aura/src/lib.rs +++ b/srml/aura/src/lib.rs @@ -165,7 +165,7 @@ impl Module { pub fn slot_duration() -> u64 { // we double the minimum block-period so each author can always propose within // the majority of their slot. - >::block_period().as_().saturating_mul(2) + >::minimum_period().as_().saturating_mul(2) } fn on_timestamp_set(now: T::Moment, slot_duration: T::Moment) { diff --git a/srml/aura/src/mock.rs b/srml/aura/src/mock.rs index 1cb6413ac2..e72e25ef94 100644 --- a/srml/aura/src/mock.rs +++ b/srml/aura/src/mock.rs @@ -68,7 +68,7 @@ pub fn new_test_ext(authorities: Vec) -> runtime_io::TestExternalities{ - period: 1, + minimum_period: 1, }.build_storage().unwrap().0); t.into() } diff --git a/srml/session/src/lib.rs b/srml/session/src/lib.rs index 29f50daca9..9143931b98 100644 --- a/srml/session/src/lib.rs +++ b/srml/session/src/lib.rs @@ -200,7 +200,7 @@ impl Module { /// Get the time that should have elapsed over a session if everything was working perfectly. pub fn ideal_session_duration() -> T::Moment { - let block_period: T::Moment = >::block_period(); + let block_period: T::Moment = >::minimum_period(); let session_length: T::BlockNumber = Self::length(); Mul::::mul(block_period, session_length) } @@ -289,7 +289,7 @@ mod tests { authorities: NEXT_VALIDATORS.with(|l| l.borrow().iter().cloned().map(UintAuthorityId).collect()), }.build_storage().unwrap().0); t.extend(timestamp::GenesisConfig::{ - period: 5, + minimum_period: 5, }.build_storage().unwrap().0); t.extend(GenesisConfig::{ session_length: 2, diff --git a/srml/staking/src/mock.rs b/srml/staking/src/mock.rs index 30427f22f7..5871306f49 100644 --- a/srml/staking/src/mock.rs +++ b/srml/staking/src/mock.rs @@ -218,7 +218,7 @@ impl ExtBuilder { invulnerables: vec![], }.assimilate_storage(&mut t, &mut c); let _ = timestamp::GenesisConfig::{ - period: 5, + minimum_period: 5, }.assimilate_storage(&mut t, &mut c); t.into() } diff --git a/srml/timestamp/src/lib.rs b/srml/timestamp/src/lib.rs index 4eff0dc539..7511d5bf2f 100644 --- a/srml/timestamp/src/lib.rs +++ b/srml/timestamp/src/lib.rs @@ -40,7 +40,7 @@ //! //! * `get` - Gets the current time for the current block. If this function is called prior the setting to timestamp, it will return the timestamp of the previous block. //! -//! * `block_period` - Gets the minimum (and advised) period between blocks for the chain. +//! * `minimum_period` - Gets the minimum (and advised) period between blocks for the chain. //! //! ## Usage //! @@ -211,15 +211,15 @@ decl_module! { /// This call should be invoked exactly once per block. It will panic at the finalization phase, /// if this call hasn't been invoked by that time. /// - /// The timestamp should be greater than the previous one by the amount specified by `block_period`. + /// The timestamp should be greater than the previous one by the amount specified by `minimum_period`. /// /// The dispatch origin for this call must be `Inherent`. fn set(origin, #[compact] now: T::Moment) { ensure_inherent(origin)?; assert!(!::DidUpdate::exists(), "Timestamp must be updated only once in the block"); assert!( - Self::now().is_zero() || now >= Self::now() + Self::block_period(), - "Timestamp must increment by at least between sequential blocks" + Self::now().is_zero() || now >= Self::now() + >::get(), + "Timestamp must increment by at least between sequential blocks" ); ::Now::put(now.clone()); ::DidUpdate::put(true); @@ -227,6 +227,16 @@ decl_module! { >::on_timestamp_set(now); } + // Manage upgrade. Remove after all networks upgraded. + // TODO: #2133 + fn on_initialise() { + if let Some(period) = >::take() { + if !>::exists() { + >::put(period) + } + } + } + fn on_finalise() { assert!(::DidUpdate::take(), "Timestamp must be updated once in the block"); } @@ -238,8 +248,15 @@ decl_storage! { /// Current time for the current block. pub Now get(now) build(|_| T::Moment::sa(0)): T::Moment; - /// The minimum (and advised) period between blocks. - pub BlockPeriod get(block_period) config(period): T::Moment = T::Moment::sa(5); + /// Old storage item provided for compatibility. Remove after all networks upgraded. + // TODO: #2133 + pub BlockPeriod: Option; + + /// The minimum period between blocks. Beware that this is different to the *expected* period + /// that the block production apparatus provides. Your chosen consensus system will generally + /// work with this to determine a sensible block time. e.g. For Aura, it will be double this + /// period on default settings. + pub MinimumPeriod get(minimum_period) config(): T::Moment = T::Moment::sa(3); /// Did the timestamp get updated in this block? DidUpdate: bool; @@ -276,7 +293,7 @@ impl ProvideInherent for Module { fn create_inherent(data: &InherentData) -> Option { let data = extract_inherent_data(data).expect("Gets and decodes timestamp inherent data"); - let next_time = cmp::max(As::sa(data), Self::now() + Self::block_period()); + let next_time = cmp::max(As::sa(data), Self::now() + >::get()); Some(Call::set(next_time.into())) } @@ -290,7 +307,7 @@ impl ProvideInherent for Module { let data = extract_inherent_data(data).map_err(|e| InherentError::Other(e))?; - let minimum = (Self::now() + Self::block_period()).as_(); + let minimum = (Self::now() + >::get()).as_(); if t > data + MAX_TIMESTAMP_DRIFT { Err(InherentError::Other("Timestamp too far in future to accept".into())) } else if t < minimum { @@ -341,7 +358,7 @@ mod tests { fn timestamp_works() { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; t.extend(GenesisConfig:: { - period: 5, + minimum_period: 5, }.build_storage().unwrap().0); with_externalities(&mut TestExternalities::new(t), || { @@ -356,7 +373,7 @@ mod tests { fn double_timestamp_should_fail() { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; t.extend(GenesisConfig:: { - period: 5, + minimum_period: 5, }.build_storage().unwrap().0); with_externalities(&mut TestExternalities::new(t), || { @@ -367,11 +384,11 @@ mod tests { } #[test] - #[should_panic(expected = "Timestamp must increment by at least between sequential blocks")] - fn block_period_is_enforced() { + #[should_panic(expected = "Timestamp must increment by at least between sequential blocks")] + fn block_period_minimum_enforced() { let mut t = system::GenesisConfig::::default().build_storage().unwrap().0; t.extend(GenesisConfig:: { - period: 5, + minimum_period: 5, }.build_storage().unwrap().0); with_externalities(&mut TestExternalities::new(t), || { -- GitLab From 6f1adbcc9caa61f02910497461cdf98559b09f35 Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Thu, 28 Mar 2019 17:21:53 +0100 Subject: [PATCH 102/120] Track peers in network-libp2p (#2135) --- core/network-libp2p/src/service_task.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/network-libp2p/src/service_task.rs b/core/network-libp2p/src/service_task.rs index a8d184cb73..12d0572869 100644 --- a/core/network-libp2p/src/service_task.rs +++ b/core/network-libp2p/src/service_task.rs @@ -313,7 +313,12 @@ where TMessage: CustomMessage + Send + 'static { fn poll_swarm(&mut self) -> Poll>, IoError> { loop { match self.swarm.poll() { - Ok(Async::Ready(Some(BehaviourOut::CustomProtocolOpen { peer_id, version, .. }))) => { + Ok(Async::Ready(Some(BehaviourOut::CustomProtocolOpen { peer_id, version, endpoint }))) => { + self.nodes_info.insert(peer_id.clone(), NodeInfo { + endpoint, + client_version: None, + latest_ping: None, + }); let debug_info = self.peer_debug_info(&peer_id); break Ok(Async::Ready(Some(ServiceEvent::OpenedCustomProtocol { peer_id, @@ -323,6 +328,7 @@ where TMessage: CustomMessage + Send + 'static { } Ok(Async::Ready(Some(BehaviourOut::CustomProtocolClosed { peer_id, .. }))) => { let debug_info = self.peer_debug_info(&peer_id); + self.nodes_info.remove(&peer_id); break Ok(Async::Ready(Some(ServiceEvent::ClosedCustomProtocol { peer_id, debug_info, -- GitLab From f6a4b342476aca4869162cfe4bddf7606b8c178e Mon Sep 17 00:00:00 2001 From: thiolliere Date: Thu, 28 Mar 2019 17:40:50 +0100 Subject: [PATCH 103/120] storage doublemap in decl_storage (#1918) * factorization * introduce GenericUnhashedStorage * implement generator and storage * impl double map in storage macro * improve StorageDoubleMapXX methods * remove storage from example and impl test * remove old comments * wasm compatible * improve imports * rename storages * update runtime impl version * make code less verbose * impl hash config for second key in double map hash available are all of Hashable trait * use double map in decl_storage for contract * fix double map config issue * add hasher into metadata * update impl version and build wasm * doc * add attrs * update metadata version * update runtime version * fix unused storage --- .../substrate_test_runtime.compact.wasm | Bin 59673 -> 59086 bytes node/runtime/src/lib.rs | 4 +- .../release/node_runtime.compact.wasm | Bin 930283 -> 937543 bytes srml/example/src/lib.rs | 1 - srml/metadata/src/lib.rs | 16 +- srml/support/procedural/src/lib.rs | 4 +- srml/support/procedural/src/storage/impls.rs | 89 +++++ srml/support/procedural/src/storage/mod.rs | 23 ++ .../procedural/src/storage/transformation.rs | 51 +++ srml/support/src/double_map.rs | 4 +- srml/support/src/hashable.rs | 6 +- srml/support/src/lib.rs | 143 +++++++- srml/support/src/metadata.rs | 10 +- srml/support/src/storage/generator.rs | 11 +- srml/support/src/storage/mod.rs | 325 +++++++++--------- .../support/src/storage/unhashed/generator.rs | 144 ++++++++ srml/support/src/storage/unhashed/mod.rs | 160 +++++++++ srml/support/test/tests/instance.rs | 59 +++- 18 files changed, 843 insertions(+), 207 deletions(-) create mode 100644 srml/support/src/storage/unhashed/generator.rs create mode 100644 srml/support/src/storage/unhashed/mod.rs diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index a7de97ffb9e649e474fabdee7525fa30f3df5715..ae9fc72beb7355a46404889f50b669607544129d 100644 GIT binary patch delta 9821 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 KU;p&x^#23gt>~`+ delta 10275 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%0ACC>YMWNNCBZX4W$|v2YnN)sTTVwS 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

Ij;vgrqmyTq`D6Q-~wBimoVz=VO{~4-gZl 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

tjLWsci0o*M zK3v9p5*mB<0=#QudlAHsI)9Iu6^zt8YP06;hdWDQbES z*s&yvnmf(S6mS&wVTQgqPB2V_Tfxvrc`WRYfTO@5UnF@cV%}ntDS4w81|$WI$;xO7 z-SYhyq+#;*H@xPW+GFf}#Ir~3nVaH|qC?OM8~-&>_mNd^mJ9F=X%ksR=HqY4@-UfG zaIP-9fx?k=qWX-fh+=15IM>EDvQw(!OxZk~aek#!%YUNv5tCJWO2gQrVJOm_?`@h| z0^emDXwF)vXqQ#IRwcV)J!~x<69O5IFGzO<`1vEf%ZH20KE>7yFyB+dZQOdE;w>=w zVS^xVq!15~vvrzK+9mDv#`?@ZSr!jWhv6&pH&+%9%v_&%U`~V`g?PBlhV&s$n3SZ$ z6#}$>kKyAAY2t8T0S0SDV*zRYs4RL7Ms(w9jwdsose!1jNshV~@crQ+j{XLuraw z*@UYAzShfTPyxhUMBjum`^Qizv>9anu)S|eiZ@j>q$fd7(UVe)P)|bYh@RkYE#qV| zX5&F14mhyj8t9b-5rjqB^^7;}F4eo6dWKy07?S0??3p{KcWJ(PnD1%ytbjWk=33lo z^^DwhhH5bUhIyrTl-l1B+rPDuiE>zi-@6y`PNVigcvko3Mg~d#XByL z>IwbyCpMd1{N;M0(2S|DrF+8(f74M(%@9^FXFKw!qFk0BB@oF$xnZse?rdS)1vcoL zLAkNh>rKbu;J_f68Od#9euvnJ2w);TqDCJ!3=MCo!C85v0_*Tl@Qh5&C?a+V$R98+ zaA&!Z6#fGlFoEXfI}lx%=DoVd zTFarIsCf^vR^tkUe$brDn)k!f3ZlGcp-u<`@rxEv3IpMLLLL4+L$IB_q3_htciGTy z8yI>Wy}7l^UeJ(w1BV~@z?+*0X$}s&=LZuX+|)HjAV!Jz$~*=(_~V|u!3!;sG5f~` zVqn!irL03%J4#vGre#_V>38;l$5=RWr5&aUNp4ex7I1nHc0frVl1>(^3y02}5Xtq4 zxee{hMb)Rcx0zF`^tzS>V+Xzau$;}e9N5|Xd~?EArTxZ_vqYL)9rp3_kH116e}4Qp z&5`F^$SSk2k@QHbQJ(IfJMhQPXuV%}(WhgODxOETqvhP7@`i1^&@KX0VTyqOa5}zJ z1d5G0-ui%HnKb@5mh~Ijmuf8Mbyx15KlVl^%J$1sPQkVX*Du%L&SG$^^Or4_gCweZ5otssA`GW^9mHMSx zWHt17Fu}3HAx@L;jw+HuJLL3F;ZMyL44RWg^rP+BnA$>V0#{k2vHcR{C6f}I6_QzTJu9N|f zX)apO@!H&GiDMXR@OrnBYNqQx7TVCvJ;oIBY_9t6nnE{n9WBhy$9isueJOm;T9NbH z@DgNQPAgD^V}hfzvv%v}4Sr;s7tH2vT7xObk#X1#Dz1wdUO@G|4q1=oz#DY-<@K~)2-!gS@I)Jw0 zdm!#9HNJ<&Z?eYk!U@2ag~TOro0CTsEFl7Pj25)RGbn@+;v`L@G0;kMK$`bIPL1oS z`JJWD-&uVABWSF=xU2MVmp_C|4c=PZE+|pUJ)kf&a}`!^bp?f(gD`AO_20*&Th9?| z@OjxkMhuVp57u^PT1qg9?%HnMVpH;H>4T5*!Jjo?e7k^jlLKU1H(S*K&=@9eb2yYh zJ!niN5%~1mQIth2?#+pCGE1PqSxcW8ql5m{#h%`@D81=MP3{iVroqXD;^^ukK5~{< ztlf7|v0OQ_V$9-4Wp znz>6Wo|xfI&cbo+A&&u4s<%kJ|Dbx?tLDjlv=k(MRL(LU=8yRi1uy}OQMOWn_-d__ z)l`{95?Yg9=Byg|x3T@>kwr$Op&gWlu?_9F1QyxM+cd@=C)IqX^$W6_tL~&*Kb3Q! zt3G*~_DW$JMvTK!@9tLbuA}h5Qt$SvcXH)v8nne2WEXgns&ArjU#a>dst$=xwKCN| z@MvCsfYH3!N25UVOWSXTTf`=P6@at49SrJC8r`kc?uy;>Cq-T8v_cm;O;byXn(0Ey zSc|&Q-K8nJn`VAe&D>K=?XHlp7NewjvJ?rE|#Zr7%}sL`8ZiQ zdl_(LK=-&}m9ynUhnRykj>(%PZv~WRB95)fyfeFc6T6Gfzb>EhiM^AFooXGUlLG3k z*H5*6N>qj}rCo2{2&uGBXq{LpdcBH{Z>?65_Tk}tZHiDXt`$YKt}RtvP}O5vtEQwr zSq6T(QcI>Pwy}^hakOd7Sh~_zhRXBih=XReF(9%pq$yB(i)~yX(;ASyNov z9zAEmGx0`}t8SL#m^RKZm$bHZi&wZEETlfB2ykt;zHv)Bv0ZM3QaTcgxk;viI5>lz zL?&i&CS9qlBvxWGsVg+e#-UfHt z58laR(0Z==KJ5h&1bz^eu2Sht>UQfD&d6I=kVb{Y*t*P+u!nJc0sn3$%LC_brfqid z?6NvvHiZ&LM5#nhGR$bZT(yuLAJCK#S|$ln15IaZ>(gW0O}xr~j`g2@^Fh-}mV>Ro zY~(3Gl5Xut3CIdWj0t2Mv3`jTV^<29yB=^_b{nQYAGfBW)!N7F2kp&zXGse@qmU&I)bhW5>%*CuVme!dOa*lqOTOC1D2ItWi}*8^S38ZBCV# zG_+YOv{80N+E#Rf6NN&EsF9PgJf(0@BVQE)LyerdT%lkQ;`sgWLY}ejO2^+s7Szt+ zSqYP7gh^y_V0tsjOwN7)7AD1%L@>pa#7;V^{95)Y2x+#afU^UE zZd=v$%yCfL_ivWGQ40@(%O8;{;>$WjD%J2)a(T%y!%%N#ttB99|h#@{n>x%`zJjSTlZ+|GQ z7rPDd$dg!B=&?t9Gc$e#kLr|Mqm16r4ehTYB8gG6S%M2K5>VRhAJI>}eO_yW$tupk z(0=fS^Bu032WOjEQj??+Ux0`;H6muOQQBf&yIFcURpEe`PWiP=lJH}wJR6Cm&){IdVtW>!cA-`hcz~O2_)c!Wc54jegTR~$XVDDjQrC6*X z_JF@Ngt3>1T8CIQDnc*W!pT%To=`PJXY@yoMe>{;{R#iWyYfYbI0af>$UZou2xh<| zLeq361VVb9A+i+$=WvkFAhx_|DW3UZ=L(dJ6{BZR9;^yhs3i>$12Uz4 zrg+&j`(<`O?^|!ikD}8(XKqHQNsP5DzPN+2v9wlgE)Q!maQYJfV>QZd_8FkF%NPXd zhVl_33^e+NVw)wejmIaj=ulP1g##W&oboUtU#J)3mS$JLBeL`*QhQKK;k8RTso=9BJs}f_b zrUwv{BlKhbmQtKndLSufQVHdWDVAv)K^X}ead|lS!Er=I-H$CAhDnSBVy6@zR&bCH zC+SRI5nn{Bk44ds;dCswvIPrKCkBBTDBu*)M@91j^=J=xu7GDx>IO*)RfNnQgQDt{ z2v~wzcK(>B_duo{^~hQi`PwM#PFY1Z0J~%Prz;i(4hTPk>ImER`L_(}P)TUEm?R)+MUKu^3qV?t=NnWi^2lI+ z`=r{Zt(tWwykJjJjo7qPcJN88oiFbn8cxK`Qx}DMCpe=y@k7%0_4XQfU>weWQx215 zN1^$bTq&K))h~YiToZOUN`x^?O3FzR%XGcPvRpA|(XP#ip;QSCW>cdLOPgkE+17E4 z1$LWUMH8W2S}9s)JEoTc;R;3w4br%l{n+6RIx4b4;}vP@l-dbmD1GSUI*^0=3Cwl- z9-RAF|IFfIeaR1T@&~UnH2)AwiAH>g(!me$9UacXr}@t8R8CazXYR;r*K>pyS?n0d zgWzKAjI1sL7uj+xU2nnYk1LUI?p&x+M&RI*lBwh3CR@vb(br}XSJZyOmysoQH73cY zg{k#6dI~dPDv=e?AeEeo)v2)cm(OB`wkWV02rLSh!Z~Vpu-R2!-7Kz!l^(WZ*EXvt zif64EcL*~_P{vwgE;UlMhv^F6P;+lzkiEpL8cu184!xg^)u2%SXM1GY4kxz5 zo`w;og-I8*w7EKQ8|I&LdO2IqPJ(i1VZ8z^?Pv=hGmtctv=|OSCdh#`;QcXSr)^X; zcFnzal*Tl0^|3ZTzC)&$w*6{iJ`+=GOco;Z}np8?f9Sf zQ*a?yR6m9C+F7B0WCD|-%w}&g`HVp0&Lwfk;U}pkC8-^VY+o`|)WKwIw!s-$q zexO%Gk|+9``rd`IBC&Gh-m6aa+8iQVKWoj&mMHFWy)?w-D3z=d+99w4m+PGjR9EcG zJ=d`Mf`UsV*#{yj3tBKFz7+sXun-q~Wkg3Ce6)MydO6%j@CkmBbnZ$5sI{Y9au_gP zHWJ2^KJ_rx<{MD1Mqpr7*N;M=%d0+!8g$y+AGqrzIcI$UXI6`W!tEfvX%f_#ZZJG3<$57i|uM-iCf;Np}#7!YN|^ z7h{o@6davXF~IAC>&J|S41+fQi{eQNmLbok+ztSfH6?i=!ZigJDa5}Tgo|Z$p-KzF zh1^_I?h&pDsG4by2q;*~kRIS`_M9z(*iN|ms_OwY*^4Lu15~TCgJahr<3W}9$Vsh1 z)DJGW|65VNHwVT{%Cz{WMGpi8E>vj&033P%V9HOlG2>%O#zzy1qLPdv9m_3a$UG=!d|;+X zy81E{>f#zgN0jJehj|I_&~F#yPj$Zu3lH^MhScHp8tDXX#wn#f*q}2J8ah#Y-!qof5kvT{9V!}iP$%wRoP}AQL7?ZtiV2)VGsM% zGwCjNE0vGDVJnnvpu=Z{dxaiGX#oyA z2;kmW$?zQ$?geAr3}5rkPrCA@?~wN)tuCltG=Q%#s9lOpB1qyKTDPTqnXHHgqGh6) zps+-Z!?B-~R5v`mlosPDO|Ry~y8F27Cw-|9PrezUn|@jfdpP!p4&52{p9gI| z=>fu&NKJ=hkC0-lZfl}pG?8slTI#mg7Mj6;CLq2=jtWRJLK83!7OnX}IsKrPp-P9% z==fe@bhD0$C`ji2h?0yXgjpkJVw6#P#84+F^#>Y{Mr2-=(jYAdBAUQxo^muOo&>N+ zl{E4pnQPGf05O8{re7KH!AuRhumH5XNuN_JCH@soR!U2A`V_ezq#^}G?AF#+w2AqF zjAL89OBHbw_!tbykx^=CfsB+E9asE(loBCiZ1f{z&z|f<#$Znh;|nE1x$}XBL`MuD z$RD~DSZ6^3dvrJvOI?D8=wCL)SX!`QiX!-(B;s>?-INNs>64Jql+%N0hV=UM5 ziQ+!3t*HEgBrfK@8_3H;O?Fli}>xRmQM@ zUn1ZmLI-`Y25*wEYb>gni*>BCA?DlFVUEUqx}$io&cYa$DU=qpp*)Z$EK>%oVVMCv z_!^8QK*WUTPQNi@{U6nJMGJ?!PU(}|b@ONm*wHXH{&Qe)*gv+xJKmj$W7WAC<_tqI z*F?pE>ZCVVt;q-(5W@qdvBXE_{rJ5mh@ZCUkx)a+$aOYg)`+S#>e0_>EUCKbPD#M z)8Tr>OH~ee$*ZuFjS(8Q-j?a8@bns2oA;Q^%q**4RS!j0F!TYU|_346ktc zn5|vkRB{&*Qjxn5^GXq#N&XcP8cK`7VZz}OX_g{1%^0DflH{t}pe&)2$=WhQPDX4! zcn4_!bCs}5Pm4r192VJ zK$&BDOpfX1VdQLC=xiu#M`;0tCoQfs7$cFw2}+84b?YO2LNVkRy(NKj!A&-{wOYfx zC4G)*N=qGoqK@goCZ+=R0jA#1Xq)=7fUBLlH%GDksVgOMeGZn4J}L^w)dZXRC%EuJ?B@Bt@A?EcXQ z@Zis|6bPe>9?%bb6$LJgjkI2&kD`mkM3qJwyrqU($7s4GoBHUV(gAO218=FklVK4= zoc3U!SyLf(VW25XUFfsV8aPa`&tg-hjs+{tTALl&F-ixlv<3?VqLtRrZa!wOHA-pl z!EH+X%B-{{qGuzSRM}ADeKXV!=l!y+#`|Wg9nSmFTGqsC*25?I6`bt zgAb8OWL1$K2SHvm#99V?a!2bRf@iL0uPq^(2Ha~$&u|7slPf-vDVC_hnbRiMRHgmt zO-a#FBthvYk`OzPB5FC^P7-o4OvO`+|2FSM=nJnoCo zHW`H;+K!_;dL?ca591u9?Exp}(s*Q1yP$^-WOnrHp-)m~M?u?scp;a!vj_=;`;EiU z`eAGmo&%kxw7{sROzZD=(wg?~M$JGxID&mZ_dn9vG^V4)+(LF0WB{J%Nv>Y2oY`tS zU}zB8)PPA^1b>5wFd7f0_N0luNs_)Mm8;rsYEK4hRMK1|Zr11|QV(m?B(!;Nr_xEw zOi>M(flakZ1ik~UMl};LK}yq@mdXX&Qlu_1A%iTuY^qqzX*u$#p6o7k{lh1OsP5FI z_;>;+xsNdcbaF)cTHsqn*Q7!86GXq^V$0kuHe<(r`@qf~93kwfrnJJcJ0xOWp`-MV z6EKdT9ZH{k+UXx(pG8xeB^$#bn+Y~oM{Ep*kuZR1Hiko1s*da!%1YJu5@P{p4@K73 z4PqK|iN1A+v}A_P5Pzn06pkH`mTawSIbY!5bW}t_N6pb8D_J&2!4?{jGiD26;K5{` zyj7R|v{IyiGY00U$I=YZ4o|`#u|Y^w()FI=8=0RCLaE*(w5%n#))5;-hwO1NnpQi^IYvIjMJ z4UWmcYlEtcWL-M9)^k=RNqRYj%XB^D!l1OE@+U2~*1l?L0bT87wuu7Gg&9Lg+E|jh zho6i3G>(Ny=*tt9+#ew{svG#dK3BdLay8o5ePa-kavSg+|hLMkZU3B0^2od*W1ODePAzy8JDHqm@M3~ zm~JYAcT6U(#57Cl!UE@zr=)!cB-Mh_qxErS7e@J@0Bn?Yn2T-%_97HE5ZKj$mop7e zLDy9Nt4=x9O`f-U1y}Eqx2}2bj-<|&D1a}9x3vk#_8x|N+pq3c;U$2 zl0wU)$)LZ@Bs4}JplsGw*p|karq2E;J2~S>qHD0HD-CW- zW4=8l+w^TqLurB5Pnyon0?Sd`(jZcaW{}wzD6|zQw0*b~s$-;vedm-GLwU+5)br-x zkRjRPfa158+hBS_SOGSG^!+Qqo+P9nL9+6b53ePTD{}|jGl!fgb7Ti*{$>qq)ba<= zEvC&J!~i;4=BeMktZ^MXQ!%+-74=EUyNMdTDZ-}PNv|^sj z!AwX_3z4bT*yJXpnq`+QHr^ih^%@+N!oOk*9ZCz~$%se#50ziil>ad1mxOg2V#vO^ zbo3u8i$-}R`l_ac7JFN44bI9T>-9%^R?3?F_Y#{6w3m`8ZyP)5q`>YMVV3H?T%FQsOJ&TJ!8D;i6oIS_*0yB z8`7R}NT^uEeFuF|LHi!?LG^3jPg2}>qz}rCw44Qm4V@fO)0H3O=<^sAL}NilbPAxz z_VE2-K*$k}CrS$j_>?)Gv>H#w+FX^$%4i#Zl$+QvdT9M1rKKJhTcN~AyX|S~TcH4@ zn8ROAVH#YdZY(?6Xk`bcxyfRJgLyL*>4`8e;61AAM>GQ~h*9%$e-9v3akrdQnfj}J z$yqfv*RR?J`_&t3+iEu+v#o0PResz2Y4iPBD4W>UxG}No+KtCkKF!}8_c~+5|9bDn zcUn9f=TF~hY7_r`?qrz-ghf6Q?%NzSR!5}_RA zVn@1A#Npocvub;4J$ChYu0qqp2f`$Z@I9*apZYWh1m%x%Fc77k3bd0amvACUvX&Yd zzh0+9=I#cFYpFqf?Kk&U@)P~>K?fBZ9XhEdneUucy^F;zUgON_9xZ&KbGmOVbY7zr zxJSoyUJmPw)>OaE0qU_adYI%Ox?a!k`}Mt?6cOLfzwx`DQrFc4$9R+KFXPf$Vt{j; zZN)~nI)x(VA28t18&&rfIQ7b3&Djmu0aU+)15S8vPlIDXys2+n_Hxxu>Z1hz1Y1_w zVV7fe*kzWE-O;Toew(FLw5xFzUD1(dI-XV86eY>`qRKWqo4{P@g1Y4*ENc}uhq7W3 zY*i@Z^@@eC3}#JbZ%u1vtB5gX57sVjsC6rZ*>ubwOQh;|WD|~0Jg=*JUEf6^om97L zDT!qO0(FMYrJPAd2Y~`76+Ku3GeXnc>$p(bTD9anA0U2$^H~cbUA9 zLCJ|$;WFi9l5Y$Dpj*R3rnvJb(Cq|#4o0uD3zx#Q_uL2h=;&0atAuIzi$)O8Jc%`7 zr~#3O=UHSqL<~%h&-M5vZLo0-H54l!Am#UcoW86q`ZBT$`aCs^(jLdhK{S25J2qc= zSsPmTx*xtWPk)rvz66hX_Z~WST+uQA{AeDNl3@3)bnK=~2Zt`%&x3LdW^wh}crSe8`JES6rt*ir;U`i^AAmA0lFmrk*E=x`15W znNPN6W9V=5iDRr}4X8M#BL)*?Dis_6Hq$RE2YNdaVh9VG8YbWloT|UILxDf7A$do( zmgKu&${*Jx9@n`$m=YS|E)J2Bj;HH8byDZwgl-^_h#SfB;13B^E=Zm^;@N>a2YTO2;5 zH8myfVdSV2jGpc1y^Eteg(hO{cCIVnG|5Cr`89QUN2Cn=4AO6?UUIb?pg4bKdZ8w7M_EPPR2$>dSaIa+r`cCtPl$~1lp>ZQ{pi=Yufp3Op{JVK7jOtEEO&?1qba=g3?mp9) zyAwVdgQDED|Dd*-0HI?|$pPegOfuowm0pk$2*t&w0wtKxwBI5%&P zxhcx6#L?-Ec<82oVSJ$k);;D%1>sF8cH_lZ$D&kb`Xv4My6SrU6Lv0+bwvg|r60DD zF~9sU~U2b;!ZvifHhf*V@i9{&}1Wt~8W z5THNi*poJ}z-BYd?0mhEXc(VC5@QCpLB4%+L5r`AzDeN)JeSk3$U+X*-dH}rAgzToCsgx^mD2>B{J`2 zS-+>2fBMVl9LM-$lf;6}puw?+X}l92FE|_UMlc4UlcByEh^~pUH3n$RAmV)7%iA+3 z{>xGqI~F`s?bo>^Hd7L3#~dnbCZJp7-na1ae1ng{Vi&%BSVXJ(rlXG@C1#R}NHf+9IUXe+6 zZ|GOP4W1xO&aB?UF(&P0dU2$Yv_$E0H=Xj+!*A)`bhxPW^q`mfZa$DDmvTyxJO{=M zq({86^Jfe#Uj+G(u1vnL}0!X$B50izu=h6_2T%#3#uF@-1&@1ky`#l>i3%3 z&RT|AI9L65u?uv_6C5*^gB@lybNI6XH0T&tR)!7WOFIDqCUU)<&c zcnmE{^Fv=ufqDB}M>J5UmmXSwH z3w?vaw)WLS%hT4CMEdIXpUYR%*{U5v-`<|BNLv7;uEAFw&}mzCSsP+!Fn0FqRJy{> zh3{O|#yQwI+@KfqS?-+>8!myt5$feYTTit?o1ktHAWlfM7jchmslRNO(WEm zxR=z$Wj6^JdA(r|nkr+F!EQ~-=xG{Papk!Wud)wVN`W6gzb?G?Y974Gi{?U+>R#nVEQqtl zucBy$7csrvai#=3XzE~;_(dX4y1bfF;)J?@_@kjhFGBm#O;I zUPiNCb~R=8-DbY8_o+wy@^!Sn-!IFfNGhP+KC<#_JXN zvt3z7GIJJLMG=B9+Ga_|+JlajukvSQktHf}kisZ>f|kB5DQf-6nN3p~jSDlTk&#c}_m@uEQ(1B!H*T@>sx^sY5dLWK&e4q?h74aaV zO(04|w67`NfPNx>viA4lI{wE;+r$6qcv2tVx+hDL=A=WArEcEQy>S zspyQpdGYI|di>o(*PjlAi0Y{!VeBb%m=E=I7bi+d*z%C+t85M6NBQe~5@MbMkL89# z8<;ctHuKv8nw_=|q#CWZRI@6>?~QP_UqgJ)SD2GPie++}9VRy@e%9wC{+Cv5M5E1! zAuYG;DX{@DC$pul4XE6|rLM`x4>py%))xkGPC(bpZ}GUh1FA@OHOnU89Xfz=brVH+ zObL=p3FW>}eP%mb1gN5t%{mimHj7maXDXfjO&(YWC+Qwgl}dLAz3dc4B)a8Xu0puEnp90QND?!x~XU zJCwzlWiUI0Cmp_WO)QF5@e8DlGN=UDMPnQQcCz=i!1+2ogJ1AkWJVEeJ{Axf?&Hv5 zB3GFcFJ-(~qv@)R?P*W*{UgONLRW}p9u03d9I0zeuzo&d1LOALsO_2D+W!RN#S>m zhMS#BWy-C>1YOB*bBZry#}=Prk`YPG)|ec}>Yttwg;zJSWAcPYxP^}CTsr(3`7rgR z7}{g34YD=A6aEVfRzh{hcucn{PM8?aqg&!0j_TR*4t<84t>*HJjfLz4&hS%6Ux--W zoIN9NWzP&Rv=*{7?_^m%n{}D0?1%E1?4{J*|Qn$$;S1vxqMr;X1__vl?4tRzvy11q zWtZf0*`<6*qn}&IUOGRQU6#KxyF5QBds%)>_G3KS0g$dh>CaxCpORgfpOC#GKO=i( zx-y$({69|rtEHXHqEI-xf79x8y^>U$+9xzJqsTg8Mw7;I0!wXx@$OeLRo+D++;kRF zky3}yP!rtGMtVl!nmNC%V~ck}9Nr zjiB8U?-2d*Z7d+6zXAb<_*Y6gI9HIqzAEVJ>KVHFn#u!T3Cg+a>i5Q59(_DsugXvD z>FSlUDnTFDfQEE+k<5UE?h`6KU7d5oJ8iMOwrPZI+qAO>*!X^b@&N5F9~{SC%0{{1{HK!9deY2fYAK7Qkwh0U}Z`fPAe45N57~>)}ZpULb_ri$Pmp!x6i-~l=|)@y$Mq5X+uKXoehxa7RLMG`zqPbVOnQ95*Yq_^fA3R=-^eXRucvy z{X9_5enAz*VH=yXTN60*FUA7wvR{hV)c$2s!?K;R03r1&2_olL6Q(|UZvtC?UxN7f zwIsjiJMiQ8Cou0{C+e5omasKb_8SSZ>o@hbK92DEPoPNlTd}!y3)yccu<+lB1*a@z zzndTnb|tWk+Y>nZ2a^27+3zLr_YWpWfZtCfi2iee=(rPtA*gupY1pgq(Wy)nA zPV#4DAEAqa?CvCAo&8~wpOgJjl0QG&ljP6MKAPk|l>L_^|KFADV@dwyN_JP0f3}i+ zJjw5`WPhCGe^bf+BthofogjQZk<6#rpCoR6`85 zG*t12j>wJ9eL&G8(1Ei3!Ep=S8L6lExMi!qU`r-neLE$`jNhyHdli4L=I?6$USoo0 ze-)DH{1l(j6`MfSMZXI*du&{G~f}L>wmh}90pa))becF6`dhWvR^x|96i+?UXRi5Ut^s24A(B9f@ zr}Zm#Z_TbsPvvDbW8JgUF;2d)+gzQ#daE808LaBi^VQu}`l_wnSEVhz^=jHUmBREj zTWL~Pym|M{@|U>uer`0q09M77V)+g1SV$vGNSxq`|t|3FWJ~Wwxhd zHJ>I$buxr4Ixpfz6L#{N%J&{JVcXR8zs2h;y#VP-J-oq8R0S7PdO`YfFKa0sQ?|@m zm02#Y#JUhu0tuSw%X*>gX8MYSbai+FAZnT)w2f2U^y3G6qnW;vL6n5Edes*gF3e{s z4JMw`ES<|Ma)PC6j2EXTzo=p=3(}T{#`n^5)03%i?m~L*CGD0n<90SOvj|R*%@P1J zj&b3TT%C>p7GYGdDpKhbcnNZz_l|T*NC_w(5Vukl(3;s;jzeTk?cpkj)Y=NN8Fnr= z>{O+Qo#6L7Qb*8h0)p-h2zpJrY-@K}dW{hDnuwsUDoujOZZgAqz*~Im#D(;fw{;#;ynLQi>Wfwbgmu;%ke3R})6;M1{zQ8E_U;?gtGK4%c{{cxzoD6 zSiO=j>ovzPNqBw5?|$-1UjE6;SFcw1#?4~u7*N>m-IDVy^srDp#in430J?6#ZKq@J z<`Uq7)(%`X&=1`GiQIzPV0r{__b2dc8bOdy&HEPGN;D-U;O;BhDS*3Al&10kTya}w zQNZOA;I<98d&8Sc0{3Amv`fHk3Ak+oZVQ;UO2B=XPp+x$O$1!M=3Q1&pT1H6x9z|s z{v{GLjPuRFtcQTZq1=v-Oj!+m_A(LUHIh}!B%a37WupF9rLU7@S|O2CPgkgDS$f4< zw(A66QE{1`YI-i}I^(_yJX?-Hb0}WUaTH0ui$2zA@zo&Ar{&k#L%~@3DpjH&PqH@| z$|ndsA#c)s%@v`R56$$%VxTLopsy<~?^ainLH3&T>MQ8k@+(qqh4nkBcQqB%w#9-M zDR>Q4^mPi1oEMYs@^`_#l)9(q_L+C_Z21+t-_^YuT&mJNZ_J+&uY)^*=1I4H1tbbE z-vt)8VGk{!u>#fQYOvtd@UW`@*m6Eur73701qbB})1USfbJM_?8bPAneRbO6bLpv< zTRMy$+vjMFZ@rZU!88gTdRIqaQM{&hji4kHPz8q*kZA|V)aXDC5&7`4?8n9E9V;Tyo^D&V3x^9oQxaJd?| zv;$lqSHT6p7!2`EqI%S>D}{CTpUYQgZ<0W0r2}%{jP&{R%w_Zv?4Rc@dxx3-5Ys;{ z3g+W1Ys~mO8nUZ0QFq1BeXW!!GBnjv7RvdVjO9U7S|mbF5fIfI08)Cc zFhq$}`T&9C_=*+LHma%XWU4}&9I@tdl8EYFAek_EmGu^d0dHnZts1 zC%wL}h`vszZ-_a<L12Zm{lT!R~D-HgP z?BsXKMLC{rrtAjf$my52Yb>B))=!wLD8-SlrYEFlF6gdubKMXW20V?Z&bAsZ!;z~&9+D@Q;#cJ4-zLT!q zTzpDHR_~HII&)^_n}~i*&?2Wj?(=KP&aB)Y%J-384R5mg_f!6{P`+1b*R}Lgti{br z5!g(E3RAN=-TI=#*?k-HX?yrcc+&T2u$-Gckqxv;5JO%_SL+5gQ#gU^)J0H-G(P&GsFlXZF3X@ zX#;wAl?7fjs!>OjO>(dA3}qSO0td!W*JE`I9bVstJJ`7G|wPQ!1AD?_yKALik7`Wk8}+p@cNtMxnVuIUMQN$ofLu?N_%*a zRd1m&VQ)44x>B7f(QlLI>f+a^`vol{B#(QlZ%n-*(E5@?U^v#LC5M22*mT+@hH#an zI$6V*)Nur{qk|pn&_PD`kMy3OFInF+eu_~rqzl?(I;_)+GJeSMWIdm!+vrp8(mggN z%)OcJOW-XyRFwPp4d(8zlhZ2y>vmt^Bp_3;rt;6X`x+;^`DVP?m!yA}xNleo-!!ojFko9X``nio-qIuz<|nR#nj$AhPX?B*`6Rop07bep@k zQq;s`ACuE#3`MND+B-!~G<6h)$RJU2_^3S%Yw~~IF`7v0=KEorV zk^GC9xRvz(Nti+z)|7G0pfsf#TTv$Dq)gLalzq#~_z7i6`meNWodI-Yd@eyOq7ogD zoB#W5_g6$JUr9WJ_153uUW~(U<4TQ_0$VI`&l-WiL>xH$RIz7`AD=gseqP9#kyR)M zbo`e-m`L1z#%3MsDA8j$jM&j5W+2gL1r(F$!WA;H~F^!nn{(a=i0P>L<;lHq}V|Oi+dh?FP7m}8{cTUun?=*k{+0;p zQ+)?ZWWr7?qu}^p0;tTmW^oO0H_0OSkd_D390pR#1e;Ew$9O%#WxCL4=#9I8aHhOZ za)4%6GdSK%Z-E^5yw})%GnL;~1$V{*-Rz1t?@Q7@lN%>O&$zZHcvQ?@g?j?(w|G{BL9c6z9%qNVdQoh>Q>2(c4I&$ zTRNZSfnj7b{Z-zubRpXM1%| z5nXg5l|eLlZRnK9rTk3j^7inI>-bDvk!KII8J@ZKC+V*p($qO$r1b+&-~mYCGjRg9 zY-p3WYb<3`U?Xo4iFU(O;KM8ip zeAMvif%^@SIb_Y4a~Oo?Qn16C(Qgn=6sjHRN&>V?F$(oT@}l$`3jZ)DW#TtCg9Nu= zo8SE%U&&&4BKrI2cPxTmH8fGdhhl+lZjU#An52Is>O{vA2c^4;;44!=p&`owq{G$p zqudz-vAh4m-LFvBByyD&(vO8kBny6t5Aft1F7KkEh1Kn~k8@WGgQ%u|%-wjn8%C6B z`X@a+F^aU245vCpU#Tz~;v1xO6n6|Dq^Hua(%(qlmVQX|i0u#M--0?|d1>KIr`+2E zqqv<8-i|WG&JAm+MkDbPaTQEx&yvfg;bFHYZ(GQwaTiHeyxniHjwKLeP)wzFGntk) z@|Lu-3E92LnE{xFfytZTU?_%!w}^zR=`?Hapx?C>TdFRdQ9^237SF8_L3x>LnsLtAg`yxWI@}uzbaQvS`9PBXUND_f z-gX{RIf2U$mgb}qtEFm~% zl}rUKp{tHyL|YJp-piW_d2n|(M*|KQ-g zcvAX-BsW{HEnBY~`*C0eFu7dCD#qS5p75arb|q}yyqaUmeBl=9Q@1;pnXA69!Kz~D zba-rssJV{BgbUiw7xBN_*;W1*J3m#)XF6Io-0WD;DqYAw@hAA7I_&JEfz4(2@H5YR>@h4 zMGg?{Ov#sMYm+5Kb7#%!OMF5-mb(Pi%yx08Z-?chyj7`Z-|VuZsP?GfelnN&rH8C$ zlgk^vmiL@Furhgb)Op5Ua^~cKNhyVLyLu&q6P3DcGHWSn%g>fhUexX_4AI=`Uph%Y z?vQfG=jG{S573R;=9CbC&f^n2*>!$*m)_QH>9#e0RA}RV((=5GYC-Oe&^0*miCrP1 zt;bcYNjJ6-o#uq?6KfN;?KQ$!Dk?3xINXGPM;8W>A-(R@PVZmKf@Wt_?4D4B-_OJ+i`@S zBL0GxtfWN3{|ELk9N9Q*R3sE+%J3rVgR&WxZCPprs?<`_;=g?ouBYW)2WQ4hbR+Zgpttaxai- zWIGkdo$V_69N`U%bK2g-7V6X{E%qo~Q1*^0v6fQYiS<3O2kpDiQ0gk~q)pu9jq9OY zDzHDY_y8>J3*xNWSI-KeJ#AH`sqf8MdCeWTGlZd-BE~uf@lzXY(~2GsE>r@}LLXDd z?Rl8p@~#9p(LB>fCO(>%#Uj1{ahWQ{W)ac+)D&)mw22LUo&oq52lPpnVSVERXr)?k z>!y>b&gyp`UHPgj>o@ky$bR?sp`yl+2V9{zOaH0QS1*_3*M=9e;m(p}j9u ziaN@2o3YIN(T-#KxCTz*kgc&F-`!my^s=3_#r)8~ z;yC#x#&xwJHdy!~&AM~k_A0N)kCrsX3XTq1x-{+!r?t5kF9Fo?eD1nT_~O{x>0vL@ zK433bV6X3)1_CQA2WPE^2&_;DxQkjEEx~!J`7}_IyxdLMV zUfcc$(tt(`C`TP6&@Fu20R;UcB;@5o6bu@s<*eB5u<9RlF=kD4iIv%6f5WKh!2X=^ zflpsRP(M#l;g6Th69=>$QeM`Bme`A8)$o|7331Sov};B{oJk>$Z?$KuYx{SR>4M`1 zCxe%miw+i#%%vl)4-Hgs2Z{(-lB;1ekSdCx3rBX|B0d#13p89bGfW8w6tfGdyW7#M z;5P-AbiTuPL?NOTv0VIlGJEnbv!#B?>XA0T3%ln!ezAgRM$ChJ1zQO?#fF0x*I9orwxvbag}y%i7fD>jZ~NfB7uDs>J;0tb>flCO^=QA)~7 zpi4;`)K?CSN6V!WY21LxwHpRvM+Nvm3h_L6RKORc7|}TF4rBFkofXj4d-!#~kf;w_ z_iY}_6ojoIwTzm>Rl>X-V*f&ubdOyrfq8dwSP?4r$*EjHynlp#9IVXicVmx(Vav?+&yP|0wu zKD;Tfo|w?@^Vy7&v99C}%h>3o#3Q7*TOaC-Zu;Kch;JFlha$d(2=Y{o6yQ zOFK>(<}v#bnf$daFi%DodN@fdY5gYcfvL`hlKI3+bWBVEjr3tt!xH-i9$&qkPJ;pi zotAM@@Buy+wT^>zTPjeYH!rbyXFRLE%hFO^)T z1HnB@-XKTF1&Imapz=%IEVx;3w=Irk?=eSS!@IT*PNaVA2>lyMp~=6f+0(KkpS>l< z&-0}w?Z8?WGh_(d{UUPd6vkw`G>~JC!;`x&A_#3QJy}$A_{{2U4Yc&^%Zy!yYWFL= zB_h*~3uLAcysa-}px%8e-OS(RC&IXBXY_pvVkV^Oe&+V zXJ1sUFDH8bC1|eDfT{eYWRvR(z`yfFG374<6D9u{J4c-y%UEvBJH(x%6f=!HuKkpm z`^(17*MbkYZ(N`SVxARxz~b}+U3^pMpcOX*#5}a`*UrX)XhI`2TrATmx3J-hxp-*v#w+7h!aU2 zsJA9XD(c8H!~T}5(-TLH?DhS7D*SNzVs+iNBpkV36B=#M%fJ^kt}J}$M3njCwP%xd zYien&ly~6xIPUc1u)Poa&iW$*rf=_aHacRMgBOMEeO9OEJoP=c-cH&UdjeuMB_E!m zZDjo@RZAAV$#^!8+o|`FPEq^SdFGClPwW_w{JKK$WcW*h{ zD5!OV$FOC)tD@}h?|H_U?_9SurJVEGf1Kvi_0BoQnB(${=RU@G25eLM#E>sKPOHr9 zZFOu5ou(_ew449GjT7EA^IM>DoshnpZh?s%_b!y2G#WawAVUS zOKeQWal+=c_HNb;cs>9}DxgNWf|zyZ5#fJ|htg_Snb?hMsu? zOP(zcXgR1_)WgBa|Ki9~b`ut|+dkXpzJ+l`eB~wx1H^8kosMY+CTs>KbgoPQCl$|{ z>fX+$lK^`HUp|NJ^r5?iwiAaAm`?(H#Viw-Pnh}eb zENZ3pEOaH4ZB)!ZBS{`KxnApGYLMoF(je6z#k+HQ;v`wi+y++L1hrAQfl5;?Xt5Yl zX2#F54H+kXXq6&^e$$tTf!a0Bj2L%3vZXfDXSxUoXC4}vt~M=`{@9#NW&E3J}tfV%lReg zVpUzLstZ~DV%FAOJuX-kC-sX|i@Qd6Kc9D%Uun;tKVaV#T(;V}Yl-Enp5m@So;&c9b;0=P`Ar_BxrI=P9$Od}E(f7q8Yz!k* zL@@{M8SZ1oSo&4RqVwTtH6PWQw5sC%0tNV)16ArgT9hsMZdxUHvsmxq4RWX3yVT~q zIez>;fd%+`tzUsT;`MqMd&gGZc3@d~8vdqcXB`csbO@B6{YOA~o{z;qdBVICVq&vF zc|taHQ7L;7@I3_hG(iSND@S>O(fvwzC9Z(w<8si=tVQ)uVSXhZ4X$nPcS~ZukCO{O zg3FR8?2_n#)z^11xCMtru;mF1F|>9}z9nP_OGC;hKU|4)hKtrdf4JrXG&E93C@y#o zFbhR|0Un2o9h3L+(Srt~UbbVJ{RJ2wq@D`%9?@iK`7Y6gPbT|37M#u}Iib2;fSI%l z1sW5oNGKwd%$=O#fQmQZtj`bxw42k@1v?0PWOlK)9HlsH)>2r%j7UcuIv1_ZLNfUc z7DIt}N9E}OM#z*{Mrz~~#M$gbbLBZth&^xcfA$Tg>CAeX799Mk=Eld3%Nw{ZHsX^) z1-9;=7Ai1e5dKMw)flekeBM~^`zQKwR^5+9#`>fhj~r0!kJD|{pa!G zTK6c=%#6q5Eems;>aq8Dt&HSeSeoPS%rvTJCP?bMQ)^i#8&pe1ssz=T*~0E-$LD^1PD3u}@_;OQ5Q9POO2fl&wOB zYymo?;~MsZsn;&^(bo1pME+NM3i)^^%Zt{TXNppFq0bN}14oVsSB=$I55xP1Wn4s2 zNs0a&)(7h%%ELEnVij>Zxt;fg^`g%Rla_e);|OyK8RKd&wo)icAJJ67JXb7kDP0np z@TMc;;-@3$wMc{D(?yn1&L^?ZbFt8Kv0x#jLodMF4I&^lJm2YNZRh+YN z4@q4Z0*Y+kU^huKTu1`CZb(h0@ipKev9{1qo0_4kG$sLwaH^r=q)S6x6*>R;KGgH+ z@hZ)~?rAzdwC)V6LhnvJ;qDKu&{NPkU5cg8v=x$aK48H@Xfj85MrV8C?F;bK$5i3m zaoPNCn>D@L9&dW*kJ&Im`_>t=WY`=vE-nwALOq_-`!q%K*_{RfV&HL&N+q!3hysRk zUjvxcKWPA%if3wjfpLhd7MG6?i&TW3vsI<}y^!7uR?a7v2Aa&%c$<0vtXKMwZgR7A zU+l3b+^t@@P{#mI)Qx6oLbhXnwz~D7HCh5g$I&iW+mjun4^!HjNt=b~bB;RTP+eHo zJxQ>SAo&gO=mhd(w9yB!jur>~B3*m3pr509E(m%U1R5vPGnXZwE{-9+-H4i}f6dVY z7i@lUJX#!D-w{Shd_P(Gk&|p5{WMo!+3+M~rMv)ciom}>eR^=dTj0TV^$%a6PtrBX zHt}aR{2WEw*n%Aq71Lf+)yYpZFT_n2H zor4RQ*6Pkd?SIRyJ1Vk(d0joynu!!$9g~A%*4t2eQ;}n0{ZlPp|#Uo(`RQdhKL3y)2LONCtYiL#uP93>MfKg5?iP%K##Ut?LGeB91X zN~1E7^yUE}5_45l-|f_o-|0VotN(b^;MCJ71-p3|1l#nSKG5O}ql^OsFkNC}8p2V(AcyDb>n#ua_)R8&>B$sL@ll>-hA|ay zZdG?{)=myUpsWs*p$s`b`n9qU&fzG|HuU1bw>%*7y{fydkS1cDQ5`T|Csk)%IVHY0 zRIU>(jfSZJI41okQxyCy#Z;Km+y@fXxngUv-X9f`^hU}s7Pt_l^)p1mW`Wn4rv?q! zr>e_S8uyD|Sf_pgmDY>0eRX}E{G~cM%=9+Y$zQFLr)GK=#TlJq%abZ`xT~zXV#ZQ} zeVwRK%$`^y97DV`d%Xt4-a~>CzJYJQt722xH!VhCg7se%uqc!{0in+gzQOfSLRGb% z-(GIyQKUXJQ%>_J+w^JtzMF#=7qe4qQ+1F4xT>c`JrVOEf@vX~N0muf-`h+o=+;bS z3E&b^LAID0rtN7S8_`6or-_*ezr`q+sg2F1lm=>UY&H}b%Eo3h8?Bl7>|_IT(A(n9 ziF&@>@{>0wJdJ#SphImCI%T8qi^wy|9flnx1eu=fE_*Phq)#c$1e6o6vyCl% z;xVoOPUT^9oM!OJW&j9Yl9DuOkuzKbEM~EU4KbnS1?yu%%>*ut3G=9*>F~-L^e>so zL~U*K$3-svsY%`>D=5D$Y-x0H9v6@>4i`@;@ax}44seJV2q#-iZYQkOxx9p)Z)P=g zHZy>3#S8?R&hGB@ff(ET+hptkrT~Y~VZG}^OYDI)z3UBUEE>_ez*bBa_12;LvP>7b z1&cti3-O2nRcgeZi(h2u1ylGM#9(vHrTHM(Y#14X1x}0QMB0g>^Gfue$e!DGWC(`R+AhajEzs0HzXME+ZW9~h^}2jR2@rvy?8HiVh4i}s=q#KW|sYN!HvQeuC^ zJdAtkwx4>lY2*NZ?@>ytevsyJRW|Mv$-S*dc063)ZMan@w~SqHwfU&o^@XSeEZ^E)Kttt)d>k(1TKE>z zu~m0$bCF(FI*Z?G3*p9y*yJg67EdCk`9)zX>?eaaO_gP9J4CikGbyxW-=QRw8Ox%+ zV_d1`IlO4?QJDdUf*H?QSWhzSw6`hpqKkM3tUWfV7-SP4>}@0iAon(>4Bmls?-F}I zIe@zYVZ<;c*TqC2iw$9ux)du?A{4%f4KO6y6ejV~TVpfdvki`-c2Ggs2IsJePO5G6 zfPm*)3XXJz=`984lQi*x@~8=MhvYQ-HT=tMHHIJ`V5KUHfEE~NL!biPHaPOq)TVF| zN&0k6*chKon4gqBQaD3~YNu^yyszbRrf4@oCy@sSfKrEl8zIh(jtx$oH;6h>?{}%3 z`0Rxge>mG8I#B0@tUt4ZYXGS;U3SD^6-DgAon6-96LJi&Eo7s@NohwmAL{Tv`;ZBl zB@ijNjFEB2$)Qu7H?t$g8eqqV2r|)XM+B)^kvQ*E5Ts_qUJ_}pLN-AM(@e19s+3_1 z42o_^k=!V(qg#uZUdK=0){$Iu17*I??FVG%Xb%r|j*dS{l)%Q^ZmE?9PdBa5d3&1i zD0*V~zJ}@?Nt$Vum)qRVxk#5JT@<#-&bi3OBL0bZG7T{6=&^6-JdH99JE!+_HJP#Z zpuCivhPBhXEaogPFDIvA^YotKIixOV^;|Uh=Tb6@Lxa6%?(D9ir_W*_l9gyS+p8(W zv{N-Z8+KHy${&iat7f=)Gn6}d6{&LS^9mRm7jOpd-MqWp%^h$*%=GU8|G0HCBkZVr9(&cF z&(&x@j^qCYNRIM_^spRTJ{rWSX0Gh68ACYz4tsw=J`%1VVf84D&fXfj@B&TETEEZr zoyKQVRoj?!`fX$__?VhbJmPeJSwR`p;y}Bjn>>R8lTA1$#ZD)ZP*}1t`_vy>d{ts+ z^13$r#2;Ijy9P0tfy8O#I*4BCevuAJe158PoK!kMOOW*P5i>D?7ldp}$6OH)1? zFsA8Jv6toIf`xt#!HfwnZ+U4wK|QH$BjLLCSu~xb9C14*ED1}9u6M3E(!*1U_6TB9 z54ae;J-U9#&~5Tkq3l7-R*~zY#4YmV?;7`gRHxlj2AwzNO`|7s--v;-;MOZA45XHZ zLTvFd>_`2c9MD{_=F;;2ZwT!$Y=4NDkgw?V?(DT#k0CMecK)4|>gh(6L0^CnH2|_V zA@J=HV40j{g zo`yggzBn2nU4yj-eWfbOeH#WxOK5?ead{aScK6EeGWc3P#x0#YG*LH&XY1!h)PfZi zE}!Y$94owBV>Y_5oJ(hVFOE5v&dzz-Oz$Nz=V^70`Yb)-nEW}=0Dq|;cTurj|77Q# z=!9pvIUsiua(g>}lE!5&rc0GZYe_v*xu+?Oc4AuCZco}JZnFmAauDa9R=6T!pWr5> zwyu>gRll(FUKUe-NZ4v;nB3gEBJ7Fg-pin^myU*;j)W@}2Xz;A$J0&E4ZE-EK0S`2 z)^ztOZ0k+ohgn6YHg`|#trKv;KQo|ayd2PTLr-}NzqgJ(RZ7MyBmnLR2f|OKA>GZ( zo$2MCoVSA>`p{U^fwkExTW&Z&5GXaangT>YL1a;Et;5E)m8=CrbMG<+=Q zmd=*Q?GT9aYlxZwWR4!{8CJ%}$=IL_9%f~Hf{abd;2~x3YLADksw25k{lzNu>;8<# z)A*}CUa#~I&ia_3iCz~BmrSUa>Og0n3G1fkj0%J}6zpwQI>Fyk>y|;I7_(%2WKM=g zxJ?-!o|B;wu2aT`=47ao9c4hxsSUjn_R(HJRo)2uxFLghpgG=%H)mGveWF3$f6L#C zdnG|WMc^Cl);k^n{%@fCRIw$hE5Dn&s;Y^#M0JDUHm0&#B5rg6o$xNT*6!G>M2xq( zN@2Lq-?~|80>vgXF`bfCPH4K`RCXV? zsYENEal4fdaU&F>I6>7Eo)Jd4?v|41Dj{rVB{3qR*3?NSedGj*sguN?RH_e1rKl=X z_zhr6QG0z5Duod@;HMPE+lPQgC{N2V1c#orKyfmT7T=-qFeEl3-ID#TrJG${JjCre zQW-{zS;i+eG*U2*P?m7B1GVS*9zZz&f5IIO-uOPt$gB%;R}ho~9Yp@eg^a zGY>)-$^?aA{|u;^d6HU{DH7CR=jN%!%`vapqP}z5@$Y!98&sYU2lVtzUS?$qgFsWy ziT%s!-n3yYl z8yr10xw#(tntH&U{xApnW7|M@ulUg>f;+{>_2F20yrj`(n>0G)lf%Lf9tL=z^MVHb z%ia8LpFnw{i$l`;ULE#n&h`;$R`alLclR25Ilu(0JTNoa!V2LbC}O$jbv1Kl}y()#y`w|vPKi{K7}>LLqJa42C5je6yKwPH5PRA zHs!1dKe4s7jUNP?G%lrxtr#kZ|L~dognVUQo|dtxQgMn%?AiPm<@tQYvf=CbktW&m zdd}b4+C>UtD)m^APh&R`cd45QxYV@5pMoy$9#F_tC?A`c$2a&il>5SiIZ(T@yF~nH zY>z_dmnDJSY!OxfZ*2$i1o}lA%AmVHLZ!$<$@K_$MSMF!9{$$Inpt}kKNNr1jNA_2 z%-N017k@(slzvb{m|KC|igf9-t=@%!Ao`rZ4%0ik=Y|V)47)&0c?#~HsL}NFw7mCj z&Mbw;ax|Iu;28@4#8KNi+rdm&w?y zj1SMrpdw@+86W9qsM734BY@A)@2TE~BjHyH_M3-~6(H15ho&-%UF?h_a#95jW`>^$<-UJXkPRxjH*xle;===X*&3AFo!c z%J8d*@mzmtbt~X5!+R}-zjX?IqKx;<%K!mV_*<7@vvpa9PWUvx9rAd`EK(qh=mX=- znkyWt&G7GoY*12lzZMTQew?dUMM)tL zt2g>Z$6Qa{o?lz_l&b;koQ)of%bD$=S_bH?kLgpY#TcN}r7eXNBU9O|@Z`VpefS_{ z=cj)HOvp+EBM_5G!U4uPh4u(XB8CVF$_*_NBI583p=U9e?c06Kv(7r%e52TvS|ri* z9RTMy@ox>hbrZd2X(X^LLbG;)7K{S09V`>vE|%oZ*G&w!9ZvaOP9%Wqrq60n}#w-BY$teg5-?p7tQqNaV$!Ci2Q81jJ^^@lT>yJ~5 z@j06u6;(6xV(?cj>yf{F@JpOumR|r@k(LyqQ@)U^g+2XGX!j{iMEm@GJj~kwL==E< zf5Eay@1kn(weqQV5RkUuwMX(XmrH$*Eo?y{qX|P8&h6nMv9{agda@c=*STHJ0)~za zCEBjEfU@4WN?v{9ZnM_Do#V!P(4Q})pj14L-`+jLK`%ehjWno=D|E~^+SU|FnTGhj z@X_HXvJ_9Xm5&Z<8naRX-x}QT4G**1FBYoe+pvf%T&TGyMfxn%XW+RU*{0pw3!WQO z?CpgO3yCL~|CGVjzI^<-C94hx70$B0-FG^?pCgqz{-z^^u!zk9*zFE7VAMkX32JfF zf)18B zdS#dW>Nx7lF@85y9+TniAC7?zCSt-y{{_Mxgdi=`{q?(#Wz{B&qp&m_1QQ zpK19>Y%@HX%KXjnB#!o(WuGLzpC>l17g^2}{y(|^Xog5Jt|Q&v7vrf~Fy;3_kKVWQ zeOyj-HEb4I`aSawNOtk^rTEg)%fF2;ZBYB)38R$w$2{0~|K4)JA%j<&@kka7QWo9I z%ThJ0kB`vGaOCmO0ZI8J|i%?8KEJYgiz_TEN05DKQykLSJ@I?;?YvBJIdL228 zZPYwbeg6ZI5D8y2T^QBSpm>5_{WmNA*F60_ONr%o6szafv9m_2cYN-1S+!1>nx-Y( z>PHVc4F4AC9P4On=Zv}AN|uk=31c^@ZV8=z;W?VNj&57VD=i)e!%*?bhg+oVxl*8K z`4V{;Za9rHKYAKvo_ne?o$zCtWU(uj9|3G9Y=J)kYwIN1nRilZ+CrVIR_R(I(OYNL}Ixh{cY;LOeQP>+!&{xPDyeT|OJol#E-RJ08p^qV{-1`Pk4_lO-qrWqShVDENGDt{6+@j<-N+@;LT&*-8^ zLs1Q!p$~9H#%@N>hi~P>0X=Xh37a=~;F7L#jUL{{!}`Png~AeQx}<4_sef}0IwKig z=h!1#Lu>9X>q{ePFX|~)oOAE71MI%>%HB1rvY$LvWh&aNtd%Om%=OCNIjgeQpQ+#zCqU=XjwQy73{#W7gzAOf_fmZknq!e%UPz^U0N3) z`L5Z?>c=Lf^N=iUUY+vcry?qPr=QF*O3;-tUD7yf7QHnnQsNCImtu)WVb0uOF9&c? zclfs+?y&wycrRDcwYati%iDIBZ07bKZ7)Gi=2Qh)Q4t^hV!l6Yj)o3wFy*+dv)OGO zSjL)wS|$MSp|&~c@%>hZ8XDVT;byrZ>EY2&1Vqo}O!f-V7G?R~at zp>zhFX^3iS)`X9<`U6l-QXoiRsV5KT`;h}mTFz~c%y|osm{rj$Iaf{b+iBATbh#mW zefo%kbR8!QW?sZZ_6VJncMlg04_p!|Va$sbSecz|z4mq7lv(QjNnWRWb`vFIwoS9s z6nxH#&_2j%WQlL{_0)bJ3-&=*o2^Rn&KKTW69+PI{zITD>Ikb z<8r!P+L%jGT0q=K(*7%;ipc*fv9RVKOB-bElX4}+_Ijxq25Hwm-bt?;y_IB3t0mqS zH7jV9CNVdlSYUrzr^O$I_5dG)h5Em0fYV&Fkj(pksNcQdf2QDiW&Edp2Cp3EGc)ho zjMyAVe`+@>eobg>Tjomc_`QlpzN9TD7oMrkXohriB3V_F$R|~qDPDi%&j!TkR2p8y zsq_^&&=z+pd0UR#e*wUCX{}m!#MTsO2Kp)VlN9f*mjU3UIBt20tDPNFqQzl(hX!Ul zl^EuK@nQBfd~ilXJ73R#=FhA2i~^|i|88J+WwQJSdqE{e1unIWA-h#`bxFfzuQZ{; z8m24`#|vt%w)Gc-5{dh^3Bgt3`J?CpCY)8egm{fxGZgFsI3!Z}dV3L@(sdG%P5n6@ z?f;=$hne8(!~fty({u+w6kmmzBiN2~6Y-LNAd{#(^6dnEplvNJ+{oi* zdUmD!&gvH@Q{*bPIdK=XO+#4awP@1ef2vS85;^AAc{IDhD{B=$NLge9R z$b(V3%JEk7m5Og#y_iLkG;bkQ3sXGaV~=N<{IN$)LNf(dbkBs7H#&D_vmw2_i)JW@ zM8v)stseZd&kIKTJZj-Xyy;q5c~C5D;O6+7Ecj%6x69HD=^v8me5+2D#~CT&sDNOa8&M)zwN&g}0pc08XsGqL?jQI~E-Vp937CO`-4~=#}ho8j}?7xyP7lyZ) zpII`-mQO;N3ICSE$2KUB3Hn)Nt2U(GM^K=k3QXSgA_~8qGNtm6O>Ci+YO@QbuI;`u zB}?=g8Oa=@HhbmyD|%(rYxoAh@vuy+TsUwNC!k2ya^RXt_%T(4CAw&L0^=?k21{FUXY*{h&gTJ z?YUZYKDCL(Q9pmyTP>-FQFlBa?iav?#1Z(O4vV<+gHK}qrYbTpDP%ntT5v%%O6i6|rfSljfKoteXk<=g#zYve7*Fg| z3uas$PgEAE%hsD%)Yq~TKO%+rBW=h0cDgKt`$4eJY$CPsbQ;-J=F#73^B^jbGn46b zTwt>BkCKLyw3&ui6N0YOm~Q229k%a+jk~C{hw5li$&etIMP@ZJ>sXG`Xk^x*9Hr67 z0!MNVb!2Fyn&jb5^`_0~o;NfT^Yo*of)bZ#Su)d1kNa)y97U=L3X(6^PE>fBJBBTd zuB2M)a?}QUuJ2$OsE_~ya%s{%9Qa7VBRIxafQZXD@uEab}S; z*vn2p4>+P!BDb-k4|Bk-n5k}N>h@t`Ptye^5v7!I*(6wZ8`GGEl%_BZCrzKd+fX8W z`XfTKQFEYWx>-hm*W!o*O-SV1=24u+%|GfC5e1rnCQ%HmmVt3VM&^O=T0<4NAIjUs_3`(asJKAWejN6}_P;#btckF> zR}%aF%JAY@No@G*gqNfw&H6D|&~b5=7pZH{RM+s%B%VjD=q;(d;W4#tFjnRbN!_N_ zvewZ7Lp=SY0Z)gGj^tu-7jc9zYz(`l5$F)1{7SMF9P+{wgxExWaCb&L{uxsjK+jy)Y+PA_$p>tz~B9`@FrC#hqMLZ=T` z@wjs)yuxkGYi7bt{&X$WF1Wyj@^D>bTJ~~%wQw*~A%q~0p zF5<+FpQ-6VD>Ds3uyZvmWZW(1;#AyqdkE&kkrgIIEGf;lQdzmd&mpGNOl7qMUr=-9 z#%J@8YOv*y@?xHBjRdb01nsM3xM`~Cx+-3#{6(9rImSa9atE_f-X1kl7Dgz9Y_YRX zbtja}mibFa=D^OZWIK_TS10BqGmw3heq>HEBUwi>kqlEMyb*lF-cEo-aRI0-MUOgF zX}YTI@ym6lO0U}DS5|Rh?6|{ne=UBDk_5mISKjZQWopaeL3lEL7sAw(^P;cA}HAG;E$qd#&b&`N*YN(eKJQ7d8U z6#MwJrD~yld|z+u5&j2InDkt)Xk%|jSB-2R-U$c zimgla023D2pC=kXl|xcHcd_MC_%U1bFjFK+c(V1@DSwXgmPJ*)oA)^#1l%AwTR8&} z6*^N9d+`O?IrM0|F#Gh#1R6c&l&5w?_aa?JmayFcXOIcc;67M1fmf5URvA-dR72%{ z{>RQLZzpeGm4(&Ua<3PPD!_wkAwDrVO>hJ5%7IdKbWu5tnNkj9EnkIl8gs5#KIG^~ zuA@bbC9bAH(Z=glsK4#i)jAk}=h0}N(3D62*2O#?`&(g^$Gm8>sUyj()?gOJ zp(Nvf{Y{@rVo3Y?Y|1eGG&VJADd+QXCn{?>#j!R>g{{KY!}G#^-}MKi+?S$_itHp@ z#gA<@>kI@%3njJC_jz{ zQGNp2E{{O!<*%a-l)r%CE%Zu%+JTz)#=FJWPZE;Ai&T#&hVJc0A66Da|U)~<}iIKoY_Js?y`doy4TZ#uIX0>2gUhlPcURMr1f}f)GA};`U#%h?<;SW?6Sy71RI0s9r>YcP(JFn2 ztwmO8z<@voVuE1_ua;q|ASRr!>jyCzF07B%JNO7o7xXTjiZ5l2eoixiVrj^*IwAvW z*m!i`$+Dx&4_{Ai<&ce=*A67g)b&RP?ZRL4hpgAK3hG>+`|9{3A#! z=gw!%%$Ege?tFf%(7i`Y+j0KhQF6r*lgf2SkF~hzNNnM&BHTZb!p)6NV95dJR$o1bItKz2*tS131;#Q)%9CA zNB>e7_g97>f1PtT^`YPWH~-VH-jzpK^`o2V`SMbP_KgU$D>*@MI^%F8zvg3~=b7v-CH zF3LCa+$w*D=T`X^{Sz;Ckf=In>8H@IN{P73NSVr@K#R`{sf@g+<8=b~^Dv$02$GNRGQ!K(~B5+qTLA z&2F|S+a}gi=}0tQRhA(t?hMQ7{nDkLzv$bg%W9(9$Wk}uv=m{h?(CH=bxdAXy$89- zGE%rGM;5(@xv&(@K|>cPT5>LuQp3k0EbwlgJt@@+4wU9HDy#j4Q~>Lf1$;O!rH^F75CA$5INL-nwhQq4N4 zOWxbE>Pa6;FXu`T@|Sttm#XXCU$EEU;6SlG^?iZZ46tO|r>miB7qHl0GbA3?vjytY zeq<{%*@j2p^#%x3Oz<8Vaz{sKPx zi|~!Kz4n*5)~fsf2_PPJfp%KouHW~Gmueq(k}V%ZCqc;-OZ`wG>GNUwj^+vv&dZOA z$^MF%?8mrYw|qeS^+9pkUrjX-=z*gN9>?nA1tP%sf*T0sCkk%=J5n(3zg|=u%ik!f zH6OsPt!!@&c*SQ@`YE@pA=GbO|vyGddSlaqw1wcRe|MipmkJfPv_a^VjBQ@h- zHHl)pfpA9_eK3Ot5G$oNXs>D9^~@24819BO3n(0ye1XHdoYDSPeS-SBp+qb5BR#_Y zOm0sx0X;$b`e{)Xld$AZWM;XzL|i#xf{jaPnLkrcLcF(LE>$WoMV^xMkY`8U7uufQ z=L=I>J<);#$2aTV{ML%7~{?>`d?mGd)t7 z27dqgP)nE3Ox}GyHh#-4iJ>m$J)gX^fMd-4r{UY}+Wd}j#ZbLx7@%VakL~@P8LP5e3&cQB;Q|_-@zUSo%~B@h!K1 zVJQv!6ISI2AF2WZ=Q9zlvfJ8D;r2{#9D}T!u#1{XF*MqKtl+9M(3qSsLDFNYookme z?rfSM9PNtU1n>O6yEn1IzSKgkKoBMXr)It=74)4C0ni`ho>Wa}hlX`FR{Dq^WEqw| z!(~kVV|_>afrXhTUO&_Q4ynI<&iH~gJ*!uNUWMJwK9NA&C4Ir(T#@iF2;?4qB|yU? zvl5un$&?^QI?e6B*8jtWfk%f>2MHHvCvcXOOMO!*@Spr`7}rF}=~o|jQBgD%L^uLN z)IQY9*pbwT<)HovUf!cwIRHZ8Zj{q^OsZq|vUliU!9`C%l|3ee z!)Ju?x?WOfaGa1m2^6Hz(2}q$rKp92+FQw-b`+L`8`8mri7?8R&+ZWg`}4C;ZShxP zmh9@bRaE3O5XLP2&j8DG=vvF*y5Kj6O@@e`JG(IQ!9DA40#V2OV@o~nJGi^fP+zR% zw|KMO+uJvIv!2`A*Lah>Q%P1#XG#LDqlwJmdzt{zxvz^o+Q<;@{@PNoMxxc*3=(6W zxin085veSaT|EdpaMa;mN&M$j*HN`N6~g}OFUXBV*s%^FvQyIW`XHk@yYt8|Lz}ZL-B3dNoGZ zCiggG{BJNXRVEh}Ll9MT^dT^qD!AFNwH-j?$W_{4`VPd-_El}2{M5B>JqENJvk$xC zKrahJ{L7#k2D3}4nn@}Xon*|cwi)Wy9Mx#M3>CZ3>4m-uXKlv;AhLeI^{o-%E)~Fx z41*ZPr}Mf$>MQG;`l2_uuL|nfAoDSS4UVna$F3WGD;rU){&DyVj?TY-aOx~&SLt`lI(tqPh?3A{nq@vUX_r)wKU ze{JZ`B@^PQEzn{E30yikrEyDDqd)os=mY_YL%Vm6l88|X8l`5AG(gi&#|=3#Pl9Em z`}16g1nss~L69O3b&}igjJ!ngUtlkSJekT@&&^^?gUe`V}8Jk zEd^A{Q{ZVizrZD%ygnQKy;0LG+G_D+zOUDzNz^@-lw1P3*<5|#tH-kH9F$m8hU$dL zgL+9952um)i5&5cUVN&5@$30qfK#YjirZ2)zbrb;)&z^~!l~PYo^;Wy(n$hrkTxVS zq>gE!LVry@(y7}(46lhROs@%OC^u3rtG>%85$>(fk#o@MrpDTmd6=R;5Kudspo?DIzLL0<#6ha z*>8M#ySyc0Yhu<9II|X->Ggx@mFM@R=W{C^eSmyWt`I`mxirkEisq=$a#qfsV3??B zE6pKknudtBX>83vEW2uDkK1t-u@{mQ&oIzQ&R~$7Lply7xQ(FPzeycbuP^!o8YFaOynoY$yY*QV^pJW z8)(Zu)P5UX7Lm z-#X5!~{P}_XO`-zva|Zj+y(u!eP6e3ddwK$!=Fu2(v4IMDLsd)O2;<0BpIJo=d;qZ( z2d)~ZR@ZFFaSSKdz=I!=7^oOK8n2BV)7y^+*_R+nGRUaveBZXFkSCPN!j^*YEcNhB zUly4AUrc4c!4VKHW>BS{V1g7koBpHzNP`9)O_ddV;zyZnBN!3_XVnRid{`C|lQ>n} zu_e2eL|IidemDA~>)O~usC%w!A9U9PeZ``<<`i5kmT2CP`pp5;XY7jelSR_Sg@+6K zN{a3Jr=B%ECOb~l0nE|;DBfdijMIn4hfp;hXb ze<5~zh=~#BGGEDS2T>3`jg3ZsiMpY7^&=|=hV(6QJyUvVgrslL#da72S-W&h z$lB$d|3OxL=Y6bNcJb{LpO<(ha1Z8Ip-k-B$zkKAN)i)tjj3xg?a<^M90^qg8%ysO zorI{-3xE!NZjQ#k0YtE9IT(iMc{e~#z0o6$*&o#GPe_tra7mVkAcqM|EZZp`;!-ppya347Rw0eS*ORw&}d<(p2A_Pff%p?I{5nFVoL#Ga7=nO|k!)U|N5ZgED zIN^?l-@hmC>N;y(b3MZUx*l6sey=5MlPrp(P+*Ql!8N4dL|@}H?*T~mxp%NMa)xIk zFxXoFz@&FX&66Zn5pe~b%$-nw(0^l-^Cgk>@Vb=E?{Vqr5lmp{E^k<7eElW+}v{>qEeKCQAbxkSMA@IeiGE&dhP4%MAh%&h2Y+DH1SF z71zm%n8d%2>5--*8hL3tKKpmav{Gf+&FM(n3mek`t1?q>kxnt?TBRpCTbxzm|4GUK z#aR6x#!lh2ldnCxHF%sNwv(<+q=iAj5z9AqH(Ft-yMMDV?0Ul?8DotO*NuZ>lP`t< zXy^qp35;>wh@sAW-rO5iP^Ep`2m)bhg3A^~M~S)}l{X}-4kE%-=5*%gKM(A>ad0_2 zVu3y|q#?CzX#RcRTswA2yoOj`9i7u?tfVy_zx028-cAHAoJ}9_OGtm_2N|ggP%Hsy z0(Y9)kLn#PqIe(n(N;{b|CfbfzcA%~|08xP-4B`Or~i~ji9rraonkKd~vux0WL;YCr(8JkH^bk2k^3TVh(GVgPwD!@zjFl$szz4 zndA~$&eVP}+6+Xyrz|t!_l_R{;&w z@A6t=+GpK&c#idwzRM7q-}ezx=l5NUe~rF7&L%0&eF(NXi<5e$N9h0EL}N0C^|G*( zf6LIqmRX#$Q44Xm4hGy?DkY3!GUq2L-8m4JqJ>T3C+140fpVF&SZ$*LGCDc0#cx)q z0&qmABrpvKOoIX>z!(siM(P*9Wb1R}3^8|TXiKCwvM|MBK?g8t`5bSCwiUA$!6n~W zi8pBi6k^+Y7Vig;PV?{LoGx*p=0!-Y(TGzYYiPl9VBxN_n`~r+6;dT0r$nbs0F6ZPJLnueiAQ$W2 zB4T|Z(L#4neTZ2gf8=%Mh=lfX-tRrgfBDwp1{4rX*6ZW~M0jZ0LCk6r)S)Du+Hr`2 z$E;+*3=Qn-ov|fTm<0QZt3{&b0<35a{Ut5gge9W#CECR?BJ0OBMDtG$?30ouHiZ&l z`b?NC3sbvsNX}GG-NTmy;24At@}G~rgX?N3vpE!&g8b;2ySnEK=D{S!Fg}1GdOYll zn)0^}+oI+WDiW%Oi|@6*#4#ikH$qMCW+>T?5)FUI6l@Wv=WAmK-BowM^Flub78AQg zMr^sm>=yG<5jtXv0dyFEiri{Jk<_+0Xyr(gpH$z>`{l#H`^AtzQCO5bVT)nF5h1Ad zL_R)(LW56E5539y+*@jDsOC!guWO_DSibkY?>+0)JrR|n73L*es64aEQaZ*ZB7D-+ zK_|c_{YD=velFk9)FAZz%~u>*cr@Fyfj4SzF! zqI^N50ct?*VWgrqQ3-^jMk@4ju(}P&=ag_iJirzmaljA}SEFTV zJSmxBDjr$q_>UNgbgnrhE!Xc-Y9J-wl4B)n9^0C=PVNnp}p0u^Y6 zeXOAiYX-}bPE#*pMurvDCgHeoFm!^%*n6fnB<#OVK8avjC+Ol3Q33E)idP8$Wj$(X zYN}5-1>6!S28xZ^s+$A_X-46FtU}{l zH1D<1*6hR2^u$L~!&n-aR?cB1CP#(O5}D%glwDYV_)8(>GS7Y-{eePk>o|oQ;I~8* zW`z&CM2ItchMZoU`METsJJrCYnYu$Biy&u8ek^4XWgM;y28~1PY`mE*P-c5so|sBO zGc;y?0@3pedS~zC!WN!xE@6tmTejO-6j>NNi*e6+>Qx*P$_Sp;SwvMmfesfSdjFqy zd?60tIZ>O5lcGk|i-hizJlh1=8Ve48^WGw#c#>}vB!Sl#zSLj{F7qIIpWqDhDrzI5 zSg)-sl1rJLd<L7ISOj$px_2NgSwU{z~RYp?r=GI^=5+%IA_{8U>)rC1M`V`Nf5H zjNd8V$`!B^_VPh-i_OauKwEG!wl~Mw2B03tuSIkY4M@yx#QUxu#lDNJE{rsb7_3@F ziuBAtlP{EEN_;Hd#W=0jD#hw4h1%u21cqWxI4S0!-5jsZf{icIEZs}k^f=Ax?qqtu zTx5JUR9pT2A^6F}WViYgJzO#=FWOOGOWDyW&y%GuG+P*OpVT)C_$(Iyo2X=w-fLa~ znkpnYa^2jP*4Qw{p6L51Y1ANh1u{@Zh>gmSMrm%S)M-dyQwd`^1h$@{7i1-2 zegn-V^M0kIYO3E)#nZ=?vhyRcpiPLLEY*a&+Lf;*rq(?lL=9SkTZFZv5=*{(D!h%o zePbdamecYUntJuU{MF2nO{91n6R7>WJoP6~CRIIo;-mG%X$`9}X+@ee^a_;yG$h-? zmU?H~*U|t6HCS`aYaS~0T3pA6HIPLvs8v`18k)gVNvO^knzND^{<64-i;7~?Qs(>g zk6ju+>D2pltz=r9!3pwIt)ponk~X`$yH7#w0w`e#a^tDy&2jbcDXt!(r$43G?ps+` zO8G`pUx`51rayE=W){55=o{TIBp8<{YJ)zqsb(?e$u+ib+wIK_GZ2F9EQ z1io$5)Sau?N;qE1^G8FFUhC%3bv-uULOrbc?yEk?={LtScSe|huHn2e7oGVRQ$EwI zxsJ{YOzbPzEi{7bq#P~)D+cl-PTM7sA47P zbXh7gV46u$ooJ+R)|)bvtgC5hRobd~{nqSes(H+c9I~K&VmJfZ*~3R{r;i^E*ggpz zUP~!G){V;^MM*Mm%wbvT_-yVl>m5gfrtW-GG0Ih%80}>Ol!8KT@pt*&IN24*M*DnTl4$g9UN~KLJGWH4kQ(NgoK~jNFJu1g0gHRICZKkuhI38AE#+K+A+&@oz$}#ALxM=*xrf2=xc-ONy?k z9_cuqkh)fUB@2y-_9Yn&PRJUd2e#L4z;~@1hIURxt!I!~lj)hxs0l-9bQU?ZBhrq% z%rte9u_o`^LHo;VhN6w@H78jk9H<3WbRj@SNJQwzs>Q8*#`<_8hqdnDLk(UM3hhFg2;`oO z8#zE_+C-$&K{W_GO82#7VdELB`Biy2rQ&RSo?S)PucqtQ(DiGpyUOdT1LgJA%gW~vF5yQA zb#p^CT>hwr@?3TM$I#Qu8wmvTylT39el=45IL*9(=3dDEH-*9SMKovQqVw}u8Qd%P z#RPr;atpFQ-G8Bo7kb&6CT<_C^UCqf?#;fe>g|;`D08O}D#Rit99qQQxy%kx@_4TA zPs;Uei^%4?p3~N2@BCbI#MIG7XRp^f6Mkz+rc~u`p zk9Gqd!^u)}wxsIWI*@W|Hs?9eIbLG>ror$@&KITwb1tKV$u-7;b0uEXKLR7N&Zy8HCaH%mr6P4D<}(-Qn+-yo#jOfnK2mF zf%$6*D7o9tU-Qm>m#{%AZmaPQTu4~zkkV^EpMo}TVWT;v^iy+e z&1aaFXKF}46M~6I(b9E7@SW?`G}OL&Z|GE0D;jeQ+Ob=PW%DozLO35HHbOQHp{*NBaK zFDh>aZ^TYt9BvNJ2F^RXXEtY;`I!uR_HzZAHNTotd)UY}!zFkO&gZHk@rM0j7x%M4 zM1W&5?9?u@Nh&NS18X}fn%z+1c2F?tB1q&9U}m?Fhc^?%ngLcUvzO>;bOwD?FqQK{ z1LrnA#%N^N%bpL+2UN*`Rbo3AZpLHeO{sA2#o~9 zT{FZ?S6-R$HiTMhy&xn?S>r(rC}&7y3T~Vh?l2T!hlB`%>}W7pqOO1z8IS{nLp7*g z0(@UO#&(^_@m7Z z(gm0Uyxg8%ev+5hrWf___5Ol741HVQd;)KiDe&r8g(ndif5>hr>!Sspf=>9!R4N(y z(iu+Jh8Iw0@^^u_@hPetX;dkeMwLq&RVs-pC+AmrEC-2^!zXe<4oD(hSZUDxnIb0> z`1*8N9W%s}XkfBN2T!6KOY2Z0C?+l%O+`_sUuO{o)MvPfbvdcgmSR2b^JU6dhij@( zeQZK)O;Z7ajS80a8&e7uj5K;g3Kig!Zvt^zdl&|4UN%(M(CL4vh9*sPY-goG zMe2cTSPiXY+B}1v+)znKHaCv+vDx~F0ZGlGSW zSigR4{eQRJea(Iv{N3r5tozdQS=AQI zU_OJ{qPgM&$Akk|Jwiazktw&u^CqPMOUFqH z6ohHGmo|=>{=<5{1>CMxD>N(^pzQvuIgVw_>DIti7M zwdq=ZkMetsviN-#zj*ZFdbTB|yqaIU_ehz&v`4*2qPPq0YS(O==R43M!{rWrEz_w^ z24-QSP=rqX-L>hv?X$kaSUdH1*QD<_kkxEZJJ!613w0FSAW}uSmkvKGp-ZE;xK=x? zB_M}2Y|v|8^}P(s)L87TlEd14L{<$@0Zf1sz)l#z9B=~I><%;$K>!1{3|;2{j4nul zrj1*{Cw3+7)oL6I8?kA*BRbVx6p*#wsqWMhqRIMAN+H|;75KMz&kE_sxg96%`Hmq? z4AgqQzi~7!tm}T&S!FlUGBayE!tgfez5^ue&f*OWxxpK*W?Jd4x+5&p&tB$_x$b~!4AxfI4BA>Fl-+$fcDH6(gBAMu z5PiT=*j1D2mu;f-A-HSh77gcCo*k61o4IED+q6X_?h7)meP9RAqj|u&tBq8o!Ld zy>5x`ZH#daBF^c}sS!~Z(JU}RaO33y<|_oub065rV(vMdBnU8^XsMqSf4BHACfy*8 zy{6TOF>tez0_wNSnJBLm0c`nKQcMlRV}I8|B;j0E|x3&VmTe}sBrN3 z*$VCCwKq&vC9<5OA3oQ2RIN8cIu`t}jHNg11HECRw{R0lkUp`0xQb-)wqe+)yH|FJ z`$To9yf2gyQiK=o?w+e>7QjIQmMXM{bR=9skg{+k;l9t62W}wj*wsDP(BXvw@eBB3 z*8!uz7nnlFu&5;UIfi*u5LmJx4t! z{^$T$O85$E3 zg=k?w;2sDsb}K!$n#^+yDNUL9#~d@AHb-LjHLO~-)qwkEI+tQigqO(BeF;YTB%}NB z-CgY_DVWlPsNliN04EdqGDioPq+`*zy^nzD&H;7gaVrk%&kRYf{G}hf|&MzfmH;- ziVF-{diJ)h+1{CII0Sw&_2dQN0_(Xh80>NHyX=3A&H)wzerTpF!Nr>l7bgNG+8EY2 zBRG>gLa{w;4@iIk9g1+%K8%Sobd2>3oep@0nb0b4VW6JLPE*vKGs4bY=4G)Tutcig zh*_fei-13Mbo9ecsBo1qfmHjwp*Mo~j58@&3-ruMBEc~v)Dl_L`OLJ)p?+twMF#Pm z-BV#?1^t=O0tSygj^Qej7zi*Fo(Y(r89Jah;2&iqI2slh1f#u*v8>i0mf1%WHW2Eg ztr71XPu9yDdP^}UV)G()8mqf+l%X-y`E-A%-+jZ?p?>$JP3*z_w1SR`Mv&AaO2E8Z z0e@JgvEWQWp@a$J%P_th=-sHgDLMi3Sb7Hqhr*uQ_SxXd5I900#&)LPeYPg75sh3B zp8c9IJ_DXiezA3KaE7;YPZux3i@0(}cnA9OD3i*$ssz_%I?3}40*#A?u;%QX+y!CW z&&kuwFY+SBd@ELEj@|PkHvZ{XXGLuM>Q~LwYsu{UQhNS@Mr=fbn}5=; z&<1GnZFXU6)eSvdOKbx;|C>K&@D};i7(+nQWz`E_MohfS zdR-k;07Mccv-yY^%34odKSM{)ONws6wNt#G(SJWr?_=p*4i71uEc%%msUOw8nVAJ7 zIX`H|S)?vr&4B?VN+wxl7E%f?rGsQy6;+<}K^6_$A>WWqYKw8f>4zN1ugXHk27`3K zEJXF}SQa1p-uy==+rxLa?;0jD2hcoBj3^@gC2-FD4Q)x6PIahdql@OI*>{Ip)t@OA z;8Q%CArgg(jV%l_@kne)lxcPson$t&12`6$KUkuh7Bdby0z=!%PV;RjQcg>n6G)X>2mme>+LXF03S zS&+gub4nBL01=`H16Yh-O8@v-wze>G@bpRf#oLere(`2HWOEkj{G6TAL))If8__px zaxg5XK!d)QH|TqLBy7r!1PwyFSY} zN94tT);VZ~xYz`6|57^0nK9|yaCXWBI4Wi>90D<{H0M9*R`N8K#8-m!^71@V56&us zdqH^zMMdNQRk{v<7+Ppm%MVn`U%P8XuYF|4wzurq_Ex_uU}-(RGivSitZ;5~%*Pd* zM`J!g{gFah!x@_Vf;|2ccd+?${0`Pj&b#5r9bQUa1g_0SwV^w=-GN#=K_0s*7!R%+ z@7EFvvozZ~FHGLS{-4IzmVXD^gUG-64m{mU^fjBoj1C&q;ws2oBu8{7d{0@DO->SL zrKD5@l1L=vl#!_D@d!lI8)-s&*W7VpGptld0Y#0UG_{d~_Qb~+V8jL(s-7Y>z>*b) zb`~|T6RwtaP?(81$`KaZsiB>yfkeWJ3T93XZBc{SU=ToC)G(r1wHK&iG``f-FgBYS z+6z&`(iosZjDvfgZ*nwg$kAn8ZRL_XL`yyfomn z+~8!5!Th`?BMjagp`0+b8(mB{N~ojLd|*C%1`Uh=@}dM$)I%Jp7uVQ{Bxq@JRa;FE z2%E>J2egMKIfPl{&?JRy4k?)0LA#L>ppsKj0y^lRRO3u|iwY{nj^;qyj@F!z)tORA zC%h=h z^;-%QP=$k*miXNdD;zZPk!P7%+w4ivOQ-E=nx`r92oCyoB1bDI^rt%(P;{J7ZYYb# z=>!w$V_qSCK5(*J5w@m0r z6;B-DAExvO|H~Ih9Bf5If`OZ#l#wz|gmJ_i!72!Y`eWaL^*p0Uj^hYXsKW7Th$qF> zR0eJ>L3dmyUcoH51*|Hr48@xxyc!l=okzy@7HEq5A!fA`s8;tySUcVdN-SH@@EW2GQGmNf2>AccYT7gG&OwU`Q`bKpq|#|XZdaoaD;-3iRhGTY7G4$I=* zG}7kS6Dvm-k`RI$@HGM5Si>Tr)|&|3+_SjUQc^JZ(jEidh*;m`(4lXAW@rTB=1$ru zi5jgd62_UGaf^3|u^jEfj6Te|)xeP`+t|MOZ5C+X%pV5FXf@el>=MKoEeaFRD*NxCNsD?@J})l6 zDck}p2$I$YRaxE;Ve+TVR)@zAuFrM|>Jj~7*Y|_#b7aXji>6JVwRKH0wKRo1puvt!efS}RGgn;zRdVtCl0sLz`Nk9uFP?7{Z1T<}i zVq^9PLzm^p@q$6Xg*%C&vkxzU1 zW%+w475Ke>FpNklmz=kJAWp{08hDEX4w#+_Yu81vwW{`>?z&=oXpMKWsS8%a2kH1D zT!NHOe%CaHN7^j+QoMS!E%RKXS=&0%Htou>@E_yELTJo^ihjdbuLfK_>W|XOz6v-H zU?UDA2E_0I2U2ux@ueZeKkZdtvqIbyxIZ8zd^{CEgt7JkS^J zjN#HS05Pk?{p8=ShYz%%2)sD2BOEz8(Cg6i2aNE!1(P^()syIYjqdj(O6^pv#Bq6h zAw4y8#s{+_`T7kPUbN9hfJ&w=(kXnU`ev#)uZMs6s_wmXac6fgZko$9u=nQ9WiSBd z@=ZBQqWz>ob}yGGm>rBbKWerqmZyRW;u<((631cIgYS}2FsiuV42GcHquj!^d zSezbVEA@oq*N;fMwskazm(q-!{RuyXo5Z&lexHKYjhRbIqL2U|hmda9lb+czg69x$ z8vR&RFnR)SIC)HlQO6{rrGi#Vc7(TtrEkU>&WY;wQ%?f1BG6l$6#*;;_;%IW)BRWu z?0rEbZx=s{*Mc|Qw3$Ub~VC_A?0e8XS$|sLe zAB&6%AH&$kP6w=usXI06BT`(Aqg?X1r+Zj9+Cl5Npm)A4oX*v$g%bN^BfyT@f7Pz^#KW)A=)Gp1jYK+G}q^ql$lB6FeqqSq8O|eLWZ14YM5# zOI*)oy%u3)`bO*Z1SKmJC*$De|rZ)wbfUGZs4MZ=!UJPdj67*0KJ57uIH(}(kXl+acSfa9Fx za0JfU)`K}$O}gnTZ8>5d05UXR+;4!Xj&AK5ljC{v8~A-#cs)P>L+y?zNxtTY%J+lg z36)RwQCS{H;IJ4ff2D!SptYegPD<$t5ef}dbg%%(h`gvAeT0t4E3L!XCxA57)-V?0 z%H*hZJkDilFN(aT(Y`ZbFBXtlUJaF2EH|pOeKspq$*@;=7_pbZRR;(9dceT}aB{yV zM(hQ_x%qiOcvzk6^yl(q$BV9QJ=T%kUp;D>W?DRozDg}z^3>@KOTzs`ATTDhihv_- z>l<^Q!HK})&1`jQ9J_DARAJP}zG*RR0!|sm&GImOWq04$+f2Y6ZS?=B`j3Q0fDIV+ z&@oi-0i(UcRxn~>DhMhLn0o&NCC5C`oFqrfdyh-ega?c9JV|&c!+PJA@Icw}d2@GA z5*|#5Aup`R{7Ff8m{7r=l!OPfAylb_$Ne_8OI=yV@?-_ajk^yF5WJ8Xc$F4=_7gAn zvL2I@W}wTm)0`RL`ian;KLcYn1ImaqFm`44m1A$U8F-|D7LN!mevTQyk<>9`|9BrS zj?=XAP<=XnyBZr=c6N8+fiunL4#x|2RL$*`HkfMpuIZ^m(kT=ju^jrn>Rj2~J@zx| zm1si1{3Dhna4Z4H>g2#2D?ka*V~S1WC7^6p^!rQ5vI0)p@ulPTJ-U6WDiy1g6LlJ| zb5;)afJBRO`eui!X5@X0 z4ih%wJ;3p(mc=XMt7H8Nk5M7BJXL(59v4nM-8@0LlcrpG?@vmfg?y@m-h1Qlurb2# zND+f&W zvtO3^agqQ8VoJ?nU5N!tdCw_hjw$%B`}6x;Lj3nB#y}VK=P$;8$ico!uKWoM-Ejrsa1zDR-X_Df{@Iukk&dM%eL%F9YX@t;XAyja0{VJG(!kI&SDq z9@#OL>UdsV$MaMN-&!4)HR^D$!s)rhmeX$-Fn`6d<9(;LBueGDw-@(_J)Vi}svYbH z&j2b1T1xWKx{n$GbhaZT$_-vxUh2t-PONzfZxkc!)NAsrG&#eyW~0fWK21*KqHN&6 zD>wE^&C{di%e%BHDlx9&(PD+1C3eZG0(%M;vBa=voa6`u)lC)OLC%r=ctd|&_jDY% z$>!GBGu7m2v-AbLt8rAF2zF_C4_PZAwJ9*_3jF9Jj8xj&)r9q+%sD-5`&&++*MG zwIW(vhSlfmzvFQ^;|wiln5FQg7VfVlVluXT=1!6cl!r;b-shoyRS!{>*`J?nxn|2D zM~ZQT7f#kMc8p?A7o5IO7i&|@$;67e=5kVF*oIG^vpuMXt)8(u>qT6>({ah7I@+)L zC{=G&)t}OGv!O4%uLidn?&RCrIQTZ#ZkLr1VJz*szhdf8j{0e`-g~IawuFwtswMU6 z!G1>`Oda_|OG~8M;+vT8VarPEN8MVn#>an#E8FZsTw8p1Q1}Id81#8KIj9(jQ^iMH zM@qIrviMp6G_#8y?N|ONm2Xk8Z`H6JAWV}3cOm54>_cn7cCO`CuazkluIs+hGD_B=7HktHXDzU!`X&r#9{U zM{Vx@c0JLS7;3jW-zlEa~n&iTA;~BeC`JwM)lrnd zqcX(LX^6McNby80#=Z^lCH9oTG&*dHUtX!){)%qDl}1v;i`#!+w>LpT=Vsl%*_4n| z!7fVInbwL=3x81az1@}2txgdM8s3jGuUj<1k2eOpo?AT}^|QA~KeIs9TSPmDh*KRL zv?vonf>F@%*jg5Q`5e96tX@7}Ab3ubARIQO&qJEbkR&jOrf8*9l_6o;C5$! zyK~y(dT&!`9RdAwAKUN`{5egYyHc-{XX4(kg;3_8&5pY<#x2qcNiPL<1$}y zO0U?*RODW7>p(`-Qve|m!6Ko_^cUfH<=?B?_6$d$?rNR{hKRgCBPULE(XW>q_hEhG zRm>VE8z*Imkz9`pZ(dZ~Au|Ec2tJGY&wMtOb+|x>!=^K%oKN=s@8`RIFw2exD#>;B zYA*BT(*|09S^{k9UEL+o5Arq)=vdHW?{t5n4+zkpoiiW`+pRF5!XCB(v6VCqsGD_d zKzy1n5roA7(Vzh>X+Z4C)lBsC(17qaQWJ!--E6G{5;NH@g%jrJuA9w~aSb0~D;Z&S z2aw!gx01mJx>aLTCe3bbcHvF8w7InHGVnV;$Z2Svl^KP@Y*Cq!w=!I@SlF^LqtO1; zb9%>9*|aSQldBwVdcOBKxTO|^b`@xYCaXgioOZLFsx*Le%gF!`RmeccZw4~JGmJJb zGU)Z^jSLiD3SfUwyDy=GZ*$}CpwR(qKmtYHJ0Pcj01%4AAp?7txy}JW=zu!=26olk zSJu#!{a|!JgTT({IDlse?EbXqfS?U4hJk&`z&=W6p0QMW(TpHNfh(~l?U^hpI0k*XsU`fLf(@d~vBPXVS(o{wzN(U^bg^IImsoj-P z-r~6@k>!(|q;S8MRBgWXA5}zU-hQ0oM?{O(S1n-%N;b=n33A&{U4ANN(@&dX!yt`> z1T)uoIMwj*rQ}qTnIO}it-jrkD(uKJYBqH>qG`7P+q7FP-a!P~7{y=Xx&MDr71@C+}eduo3vd?rz;`qy`y%V2xe2H?SO~s!qA2mFZM>F96J@ zw7+0p(aUE3AEQ~p>I4D?{MW*z&HS%Z7R)!JJuY6d8_!C)v#Sp&SZY`Qi2|s0#mhR1 z@l_aXMs%PU?qO|DlB*oj5*_Ho=%l|W*cv)jL}O8?4q6iAK(&ubbW+|!i%;^2_t5;o z_TEI|E(Bk3<=UtcNdgboYDgg>Ntj)FWKcj+MMLlwKNtlN^wVL~NxwoVo%1V65~-an z_c7}}kjEGlk!%!U$VCIWNYa$X5KbNO{+jHybAD}En7=GSZHRh%($n-3QLO}p5io*_ zj2n*30>>g?2p0WmENkQ`qHg1bnR2BlASQd~=%4zgJcQoF>mvV*uI3%m&N(_jS*a7K z&5P}#rbjF6IoTC7p{4M-+ds)_4He9B6`868kJu+!W%?{`*x-W6`!lhR_&t6i2CYvr zKJ;k{Ye1kA6v(XPZV);ZB@8?5^~8F)8})#g%9HR1 zi5AUIssrM47R8x)ZeYom3oOAOpJJKite3No8D9~7Wc*Db2H`}+MDtf{ukCgp(zIF3 zRUw;#>7aLGHsveC+=U7%C%1^onL<*;3=SKB5ExKt;w_OEdt3@b5GCRZ!JtBp5#(u(j179Mi<9=tzLR+V_1;N5&k8)Ulh}6dvZ}zmVGFUm?I^wDcM?ze z2H&vz*B*h4si9(osE^@o#=%?6_T(%kYtC~{jG~eAH1Y5BU_Nd%HXVMxE4J{BzYCRg z1mE~u9^7d6@b;atlAKe&HvVQP@fu2D>Xf6H&U)zFuc&M|UR3y#i2UMKHympK0#IOAHBk_7)eka;2y`-QvxjWGb$Pf}ZZ#u=WVdT zuPerI@T6!sI_PQqa5yP@E5pgsEa|<#P*r8n-IisMXSGt#(LqT$TxuNkn;0IdR)DP- zw-|$aDUIy9Zt}6>^;0YaIztN!OlZlPeih4y2?Q)g%yUfnFp!mpx?y3?uvQ+*3o#^> z31O$SezS#yB12X_%;?mxi;8V@YF}{pTA~hLBIJTVDG;fuVKqcXk_S3t5J|C^4^Ws= zx^Uy9+leTpGWA#%tdzpKWjyw|f|%bKK8NbB{hel0o1|k&x+cXRG*=N{%ZbluFw2;W z{X*3Z!I}RT8z~5jtu!;06=^EHd^u~XIz}c}LDJ`TU4YuVsZr6S;F@>yP-LMj;Jir* z!ex^D(4STU)C@dAMGM*H^5-AsgYEWNHX|F(++<4rx3qc8SC&Ovff?ik zhyBXHmeuD2w{97D=$#$~sU8Io*|rYi7!pGi;+kN;sA&*%`A;{k6vwnLps}h!hVvzY zs`_crHEvPWOjOC%>J5lqd`PR!rzCyx)M1wj2%)+IRE*n43TfiI03@S^>u|{VqsWb{ z9cJi9G1*EfZ@@JFY{kr){kFUUA`y#Q1Bo0Gkx3QuIz%IJDeR~M5KAG)9&%M%hX{@8 zTv)dCnIB=LIo(&4irK6!osJ&(6IR>LF|R>4tS{YX=?gU5t%3qLCP-TpwCI4;SkPi7 ztQ4GlsiF%r-~{7ciE9M)vD(32lA)D@l_s+g>IV#^0~`p;{`f!}7CeH=VOoD6eOnmF55PAAVZZ_4FfLMI1$fE|%6K^leO)RFNL9xp}mx zP0On_@}R0Us#o2%*864pMy9MbzN4Em16b^xnnX*o1AJ*N391m6I$~R;6scg=id8r8 zdw^qZ*GHCz!|TJC*B!3jJW}w`yUER)kg4_ zf*L!*OQ?;5*_HFk4O@bQHw)_K5PcVKq)sRB$XoBNFF0ju~jzE2-!~xz{AlyAtPf z%oSI(%x;R-S{0a`!5Oa z)VeeQt-=9kayIoLI>f)7j55hhpTZozY0BR)1rt?GP20mJ#Nka?b#Y)aDhVrwESI6& zCB=|CVaV38kDH8dL)R=LUuFSBMr!flT407t4a^b1!=G70n@2rMxUou8N-IO`23`vH*8HRKftdtIl{r% zluK=PdEv=*K!7i>7CFJ*gKt2<%f*C_ zmz^S~s(e3(XpOudv);f}zM9x9@J5zFrWB>2+j$+o6;>WxR0T494jTImDD$ziF`_BH z^A1$i22U4`En7|ITvubMbcbPCEUZ#4w|dD55awA7TA*fb-of}8I?C+)6)WFmg>r(B zZ@rN{;?v=0xqoB~Kccc4_V`e609ZAqQW3+$|^FPwTpVKy|EC$>9f9cvLlG z8A#BCnW^lPMZdoOSl9Jkc(LC}=-XmN)!yWaOMAbVnl7XmfZk#fw4u;>&__augw9jb z=LYD0EId-vq^OB=J*97wFpy!#EU_aA2!~Bp6Qo&n)Xj0Dp26By_nv+nQ~A`rjoR`o z&3;C`T21@2BL0NBZB|3r)iAxtb&=!ErHtZDUcir?2-AF<&=O$2{NSY1@~+Xk9@73y zv)PEMN5me$xm?}xV9*^KTh$#~f@7C5*~r7X?&x^}ra_O>9Rpg>j-)WMM1V6@zT;lk zBZ(>z6UbqsY8098Z1;uI^pr=DRn@-KAgN2&?=;41kPS|12pS|OHBfthNQ3N_8f4dH z5mEuwGPtn|4N{JytE@qGJ$mqT)BOy`Vl_Zl93%aSd9wUhoG6M$7GBTn`1xL@N(o}qO5JX z2dcn|l94Qj%1ZKLti}!w`1()dSFV31Uhm0ohpu=`wlLZhX|rHX3so?&4Z9hA9#Jh;}xWxf=8!MV~IG zBPl^pR-;EnuBM9W=zUWWYz9r#JdI*d<5%!r)C-iUt?&B>ki>B1LY2>-MBkoaKt5ZU zEG{6?U*#nnKigI@Tjrrb4$W4|t06ls)uvx)piBp%;L14FsKvs+zS@OikWsyfpMY0t z&rZoBVjGZr{`o(#+U@OMTS}KivM+VK_#eWsC-sFl1f0;)ffo5tQXL4|DC;C)sia5hiwO-XYX_v@RM zAf+Qy2ZlNJQ)b`He=*d!|4oD#9Vee7(c#N>y^?$dO26TkN;6UVb2DcrY=A6qYZ|C+u9KPxXN!^^an{E)D^PIDD_ByA z!GNJ+_v8dynM7t&VoXPp-)y`!`K(4q!1~LLd(#)~nphx8+eN=-xW|*9;W~eXPJQwb z!JxR6>v$AiCRuI>)>3OD1P@8TL%^~8+;l+@!6TkvQI2kJ^6;oN8I-xpW2tJ=!tYqO zxdqJ6Gdc1;viO>aZe>bBiUC|&1E4ewF2D3qjjbhkkyQ&hraB-u-F z7gAm#2Pes&X5A)+B-*sW^0x7VMONs5N8ES=Wa|;IBf-aCgeZ?kMf1ny zxXr&;HD??4#9n;2#-{K%lBaRf&Nsy9Xl8r+N%N$Hw)PD1BR;H{u7Jj<#jS}%8>obd zmYflO6>_)8@-H`xXov|!N;Ikw@x9E|I>aX^Rf$iO6VMAon7o(*e=JS1N`V-Rh)8yZ zBtRiBF6daLy^$q3f9vjqm?v&7X>fRu62fITv=dq90C;zxJ65x!5S?YeX>>24ic)^m zXn6&?)4~D9cw$n>5T+zT0IuOi2Qz6wEQJRy_XUHhMCX*SrlEnX!Co^+7C>JEIkLb@ zOpdVXfJt?FjW)RQwPLts+t^1vQlPx7Sx7KjK4D~^FKN31o@!46JhDjzJVgTlUQz`fJQRV)Wdz<*1XWd* z`K0v9D8_iA4mQnNkYlw;vb_$og|+-cYkYB-;fObwp?Q>0n{lWyd#x*J#v`Oz)<{3# zW0?N2(Ie@9-sKTduBtqG8M6I+5J*V7=lxRR?w?8^xy+PE2@Ewd@%*9<8n8j>>G!E(QoOuj`DfOp{x(4s6iNea6T|3-V;r5`FbN>kW3fxz)t(1 zJ8nkdafOPb9ZTqO4nazkWUqa2QN5IQJ4UD6hiuT=4r(NVOJTw3keaEME9o5)71G{@ zLNE7H^^3b?o}i^Y|AkK{I?qDhQ6kbj5u)k( zj-JAIb;Se50qUC(kUEf&h-^;{*y)lrY*h>y1sVE&`>XCvY@Fj!l~>{^Uir1O52OUy zG>k*Bdo95HOPeQcF-wJ`NplKuZ-;fHm2)=pij63R1i()#$Lf^`z%kK;$L&E|y{(p0 zaz~1r?kN%^pTw!imME#IY(bQR5ub6NZ;DY)Jlk*DlN0jkVUDHY#VRM9w&Qrhdz@RC zZCdTU(lds48hXuI3^MlG@?H@{kc?3jOP~OZ8AXF;m{w=#Q?n>GYdGl1A@nnXPX&f> zg27O;Q9=g>wI7uYz$cyss@mm4Tf}#PYC(xdG=GB?n|Cd9}xpNaAy-O5)9+5$?TE@7nUw6Q`v0pk8^eU9GNOXLqN*w^qzpl+; zgcVRg@rx4HmCWKpd}{{=v~2nNS`)ob$xZygkmT1RbJ?B`snZZ~d@o%iBm& zu&&Oa^J&TFHjrmyHOYSQHa*IAmsw?Pr{0JpkjKL2MNCo21l@=B_deHDNh%P-wj<(; z-%cD31n}DfT~3+H!M#F{{dpmU%@o18tn^;arYFNp#~Ep5n(+tQyp!~D21wy6xrRA! z)ClG4O(PVgP3U|{=pKvC4s&pRw)KbLDzYJ)wH=?SS94*B7mR|8!sY#(q5v&9cMvB7 z)<-^q=fPX?N60iTa-zJIRf3fosKtA;rd_??VYndw1BhU_B4e#v%$SGfrJFOO>3Y2-hSf1{Cq48kU1Ljr#RB}bivg{YDLBkqVvtBw5Qe6xhx z1oY%T%(tGcp$Wjp^Z9^YL$nwCUi;)190{lYfnUukw)K z&>->w2HCwzt>t8?LSUZ~Vq8I(n#=~~B-*o=V4Rfn3(b=#0Dp$S?a4ZtV+${`=GTM! zdG!Zd*xUZN)>15DXxP^tH)gK7p{TuVy{^9)Nt^Q32 zrT)G7tIhs>Y$aI$_x-o! z&!6kRJ^$%*{rmF|^-tzsYW8#0QfTE*!%jD>4Iao2#p!E?M0}nWY$O^FtPS3kWhEqz zrtiEr{ow#wfcSog>|Mu`znTrQ8y{s|>uZs0WQUbob(8ySS;w-Q-JZBvj4{hwc>(H7 zc8i!8QnoLQ<-x3psdyLu;A$L#7I@Mb@I^BVto%i5p~6|$<`p<~4FG~siaG2g9U?}DMS z<0g9EP1`+cJHdjIy;Y~tAFv-D%G%jmWNyr6j8D3@E&9@wAL@6SB(aN7kX$kc;4w|L zgHa6}a4l!7sFWO*zvy80U==YEW1`x+?5fJNadHgU!b8IITuJ7_v*=e`l7Gn&4VMHK z^H+$AzGSas&kOe&3IZGbK`K4RP>xdY7P$rbLh3y5GN=hm0%JCRhM59Hd0!g3<$*9I zV|$LwWAc4q3#jKc^#Rb;!}I#2u`6i%!}mfoE6HEARZg9b$Azhi&BxGr50<_T72aODpBSg;*IBA?QcA41$Uat;se3ah? zXM|e~qn+(>e08P4^mR1(eQ0W6RSF-#uvyFtwUCrS4ZyB3AF z=|!_5Jd>*PMtEl;&^jF4UH}cQrHF_D?cH<&(X|a;@8&In7kh~`v&NYSwN6%nT3j-A z@=}9Z$D!77sBtW&pw_8EjYlHXTsjMCth7n?kOOS6mYrPVOWOd(Dj|T)XYB%DT?ZJu zfkh>=84u);Isl7o5D+oU3n10mprz9hMZj!;i~Nv3=|tPf9xSC3K@#Zndz^f~1o=K0 z$XA>b7J)yoMSy^J=qbxOl@5||g8q97Isc^OJapd|s%3*p+9Bz)Rs6^A=>4Ge5Oi6OfK{BIl;*XM7mF_!^0HWVMiZRM82ufk@K(Iu^Z- zMNjyUA!M37q^2H3arP4rNC2&#nTtY&+l+F#avM}h|C+r)mF5ft2p$UgEaPkxJ zlQ?;hhh{3OK2TU~9$KXO7(Fr(Ix-P70m)4X6-v3dPzm}HYZEe6kgqSPr?`n4uKD*e2I3zka|? z};`-3cH zR*7q-poxBi7ti`QCE2CZ*_5z8GFkDY3XEb^(sbi}+@ zzA#B=hCAp0QZ>g?Fwn{4F#|h77!wfBu7Q%D5V}&>9MFTfHBG7e{2%g(@E**@r^Ept zuuT#IGl`mboK@;3Za-zD;nvw=|EVdsY&rb^{Ym`LwSwUVTjA`)oo1SV#ZS6!#%oeC z4LV9AFdkJ+lBvQtFx$r+)e;6!Ps|)J-nAhk7^vZ)A#OIpo!#~CQ zTb(&^Jhjs?v`uXvdxw&=i*=+0k5ue#s?)UKb0b_nG&(jyN?;U(3$YZV((EWMSBzz1 zrE!tdtr>>W4r7+WXY8woO)vRRG0)*w?W;#uiRwEjH$z<8@tub8f{j$RL5V%I{R4-gJnc9>`&SC zO7jwn?h!qbSJF_%mwj^>MDdKAw*x|iXwR- zSe?!(!F&!@r`qaPr&F6vFjAZ{#)|h8MzUefSt8)b)K{Z5xpGN66bqQ8tZN|Xc0Vi^ z?CydcrpJuhjx&w?9Y!5In6*(uGJ!|P)(SjQ8u>yNI5a3#y=XG=BS(kfTSqp06{YA9 zQVp>|_yx;*k^6rXhJhiN=n?ShmiI2&zwC^(n@huDLA2ogQ{eqa1KvLg-X9h@tbp?4 z$zQR{=5nySFBvihd$Qf}c^x#(`^Z@etEq`2St%#|Q5;Ik-rrw2o*dB?Rd{*feI8}N z$b#^tkL@+fdmonfep%iJ5au_?@;*p1LjO?ym9(G1Q~f?n(jUMc{TpG7{$W_6e-mto znSQa^zXhhiOrOL`|JxYp6WHjVYW8n~So%k>!*7@6eUz076a9O!(3h~#vAXZT>h8+w zzEf8BU9!6G#_B#UtNVmo-Lk6}*9LFPmdbe^P46r1YCwbp7Tk^~bHp%_?OGeWJ=+su zB{Dc^9;?0CzDJ2!&bigSUsm@47EfEC+Sv`_PCg`mC}$GnPj=8*o1H4zA=h0@e#{l} zL%;Z0y09-}nald_21EqSWdpOB@8Rl3ySk67!*+EqS2x*}s`4W0H17Lpyt$NZbJ;C! z(<9wD2s>L=y_}V`!AY1KG5;o!+^r^ja>jf_zuqRMyxm04Ds9Kqb`}0kg!vv$vt!`Cb0rd?u^J!?v+%vOob+gS+Aeqj(TC+)D)6Sg2+>kV6+>Px165d;r zZ^93YgxSnyUxRQqRs}|K(iN{n`&ztW!agv|U!)mTk;=Eb5A(~ZiASM)FrBT)o|^N4 zva4imuotiiP*eJ3^a3c-QowWr`Yqt!Qi)`g?sT(xhnvj{ZZ=byNMKzDV(^ZfmTcgb!<@L^NmA46A z({dqAXLkx+1~jVK7C@VplPLm?lnisc7|<3pIZiuDvUkuC@FF5`e2p)&0bbLB7w1+E z!;9IAPTFL-WG5i@3L^wOD866i2HYpn?!EvcK)Ec4QB>vUX@WPVOS!Gt%GkaT@rzN!eKM^# zBqCD`OzLwZYat@k*2IDp-LG$oE5G>?8o+7Vt0?BAxXg`gZEm(KHWlJBhJb=70+;cD zc3K$O6oM5-NoNjf3&V81OBO?^$h+neB*?}yvB9&_F^e$zv0O1%XfdUx5BEk*6!T+P z*LS_7FiDKTT(Weqz1##wvY4f-k#T%!ii|;Y78xgTm((LOD;4W4 zh%(yA4|=pan90)T5vAf`d9MgmYvGg=8f&?tu6roa_Hbw`M;S`w#_|!1k(#r&@~9|X zUR7sygu#On2Gy|Ia5NjUz$ZXW5FjyPQ$MdJ|!2lDTo~?O*fp4Xm`kP-rz zEiJ|ei~0T~R+0}QKfmP3KSje*Usdy)VhsBcOU1v+gF$x|=cNZjmXt4C*oTeq7<$ z3kt`6FP5GRJxYS#j!9>M)T1)#j$zHc8Ox^s7Psbvw zaIfDw91uM2(`?8dV$hu0fO$LEC%&H*DnnclRAMXK65<{{W73Ay=Lt>rL}riZZpK@^ zb?m&Eh0RP@zK0Po<$Y@kg6j*U(6K4&E~Y$BWFk(v>r-ZGLewm8#ZIabh5AKg4pT-E z(%U^k6elnUMi?E1e=q2Ag&#g@5nj6kW&cj)Mxp%A_IE@@KQ`0UMhL)XcwD6hE$rAmGw{-ID1yEG#ZO;i<0%SgkMazZ zE|Df0_p&!v6)lT(qME(bZ{r3_>(q}Kdp0cQMHd+juS#jBEA{v)6(6SQGVF{Gy}kMZ zFJv1Ly^Za~pJsQZb_+L7TG2mcLqmx~=8~1!khG(te$)P zc;d;j^|=spS+ZB#Aeji+jUi-LnMh>_mSA6>z$bp53GA|7Hh8+B2@Fj=6x`C($2K3S=+-zqx`3_W}%fjO5)M4JK)pPx%c+Yx62_qdd4BlnYl#cX`R0?vZTw3KnRW?!A=$tD+sQv2XF=)zKBq2N zDSPV26NyOr>T5s$JPaY#G(j_!Vk*5f=@0mKBmWNb&yxg`{w)Y4Bg)mpC?rcBW`}(5 ze{-tNZXxr(`G^Hwb=pFh8Zj_pl!?d>26^JMA4KJp>lII4Oe2 z-nMV(wzr1c_Hf%jFK^pBblW}QwqVA@u`LbVb|Ty+yXQB`-u4XLc0Ams(A%$v)zgFJ1bLh4^!fkSR{AzjIj-lJ$ z5^kI4wqGf4TNt|S&EYm3+Cj4&7#1t+0%? zkNsceZ8Jl+t%Tl`{*3+>;Wj;V+j6)~snNes-ZnLK+b!X?L)`Y+^0vvL+iniGW!(0e z^0tYg+inWC^|_4{>NvL6&~1mqZ3Axm`SP~r&}}z{+iv8x7s}hrms}AwgK*nnZu@k3 zo0Wd3+}01b-NbG9%){99QHrB1+;cOl?s?8&h{BGof)hF_d*-`IGx*S%H3`4hu)+^$ zyM8PGOD^~O=Nut-85rk!K2Rp3hfQ>{~(@7!TtyI z3E=;(K7snj^a;qnU!TDHzt$(f{yX{v(ogFXF#lKj1jbM469E60`UJX9>J!jDp-D`*NDH-Jj0yF>orQH)M7PpgsZPV`?UKPg@ zbk->vCrz?}iAEBeG;2OPlpS7O{%9zvhNKQX%EaBsW_DNV z4mYIKNnzV*oA7+!EhP6mQLCOP&@WTTWex?zXMo#A@uOd0FDWSl0wq7rA{_|-c$F`_ z$m~V43JvltJpU@LeBF8il&@GQTV1fUIP&$Us!la52xg%BZ?mylqhjstfu; z2rBIi|FN`ENW)l)DNbpU zQ-3b)YnR#~xj=-4L!R@ZU@S`ZZaqMkma8>Ud|?cG;um%DJTdPiPy2gBdW{XHIz2R1 zatN%HrA;*;Ij4jrB)0;%a7WBn;dyMW`fa)PEvtQ73g3p%5gy-QgqI+J8a8NHWC^X~ z<9-|BX815@M;rmo89-WV%hVQfj^cfIsb>fS)b2Z`Hq#Bagaq}kpz1k5MO%`U(nmGl9%!n&T_`Z_|!pXREc{7&56_6MkWGB7E@hR zReAQ|x1Q`T%e~?uP7OY?0IxxX=2a zkWWO{7PBRJ#31>j=~*SFkST#S7o;X&RHTh&%fZdmm3=|D_KPo&{h;^)t>0LDfxvBu z_6$^QqvK0M3YkEXv4)W!j0LDsXes4Cz_s^JOknq@(&U_QNRyi_CGl>)6oNyU+{KoI zMZT0vK{jhbgLm!8snDU2GD|R0-q1|1H!wn%=lcr)?<;^$7MdobvAOhx)fy+W9obG4 zP_|U;;;%>1!kraG1UK2UtXQgIs9UA1OcFU=47FV;Vz}s<356Q@LG)|p01KQTjLCT0@N-Nq44;{0|s_lp&8%SYYFS7 zJruf-Gyq9?J6PZcAc0Xfi#!EzBOQtZAlAr$;Gp^oL@PB&{8SN$dd39eSUwB)k8oLN z-<-!dWQ;IGShlMaqd<5;F(Q(JVnjY;C?+b5jfg~*2<6KJ%rOwSxJDZjA&5Jcb$$V! zT$DgARmeklm;fE`C&dE|l#0tbP{{7nBgJ`x^&8!r&Oy15jiZCuODqm+$6}x!Saoe) zuFwCeXGf?srAWWRp$|p1SjLxXtWB!|k~OK>W~T^?15)J%gfkBo7-f0~Gp#gzkX3t3-UWGJt+QgNZ ztCU`~1C8B*>JXN)>Q5`;g5iNdi2ZRI-IeRJa_%b`2Uf&!`Jh@&FXnYvOB1jj?)a9S z_`P07m{nssqE(3~yuQ-Wg!b~OsqgBpUlF6zNhd88(r1c>B5!CE4Xnui1F;i_Yp9`Z z^b@%$Yn>K_BUblxUhcjrC$vqqH)A!a9Wepjs^i0vE2dJLR0TOvi%ytYn?tchbtk=6>nt_mrNb4E$A zK*BJ2t;0FjZMfU#9EqdAIhV~fVOm36Q^!K&nkeC_Tq8~zCA;g-H7a6o8Zuf;XO zHB2OM4RU$R@Hgigc*ca5xK^1YMSiF0glLBnYUDJkXr!%~xt(-szdo#Nq(;u_$xU3e z9=p5ozKnHLQjoP&dX`q`b1Z?J+ydJ-;rj57u=1#gRzu!UX#wSL4289<`kNiz5!pI^ zh9}!E{6IQ6NxiM+xhDUnbjrr7X>_~!3d8tiJZiwHE~arjL1lIcU!l0+cw*-=i-3vi z$W3pYPp#H~&tckm$g(+_bKRubnwXrLo|$cTx^uWAtvFp+R&CO*wAs8l|3i}&vTf!t zT9~=7$gEmD&}8pWl{0iI7)n|S2e}}y-<(ah4 z=vI=yr!9w2@y7*227MvLTWZAwMT5pn=q&EgPz&iQ3?gNye$I(9b95Gm4MIa8QmrA_ zdM`9!H&L{7wfEGMgPFG_!U(2Ec`9x=3m1dRg5TiM(Z;@~3Dqw!L&2=uozV8QR5Y!a#^M*Kpng$(Y%nhQPiH z;n^t9Ow>U~Wf@7l<^2hEapzeQMLc~22=x~_rv$Ky9PeD+JK}5kQEe`wc*?WNGg{6GxIFxPc0ZG_nK@ z!pXEY*|-Q5b2Z>{@${4Yh{rL^x;n#W=s;*? zro|*j=9fZLzP@E#6#~~u3vnA~XAY!3J=$E&`BtpE?km6$)%4*MTU#N;D1re+CQxV* zYp_aZvsxalkiv|+VqbF9wX({0e0>yFb$2MnJYdst@*08eHjPQDE8OY#1U;B1@W~0b zw7;a=e<@wNi-BpGps;^HiGh52?JlTOBq;=R*6v6V)qML|zm0xYlAm{GSDel~)E85e zAEY|SP>;!xthh8F8{?6t-hioYhbS9P84_jan~$)dpLjY`$;6(-4mf>s&=!`T1-@*E zQUjx%SzR(2)V9x^*$fqc;iJXQzANM*9(QqzoCRs7yIpVuyfM@_qaTEC)YXiROaeb+ zY-HGirkobrLaCFMun2jX_Ej)dAfa~PsM+JmPeK)Pi4hFI$@JFbBJ5+LkRI35150I8 zSA`xpFo#a7q6t!SS=y}mcnZa`zFNC>Ie|#M>|RkuH9{o?)JLcmoN_hsyosh7If5sh zAB^C%DB>=MA-MPyt7EDQ=Y&Y6CbPs5h733XQd$;gh%hJ2<9Q`I&h3#fTMu<_Z)o+K zNN(S^|AtXzb40YeQWV9VfxD1-1wNRM=-jP~a)De=)4bg^O{757G%Kb>)HGS>OsXR` zj9k$)gLF5973*{{n$4GJb9>qn4M1%9WCSvNvxO%S*gKGr$kJsKn@g+5o+dqHkKO;;Yp+c` zp(|u|H(&ZN0=CD^DCkQVRcLGuVD^tZi*2xk0uLeY>fEqB39Dga61$GV8MmGLx7Uw+ z9@f*16^6JmFvJZ94`o3W6m+4hA!V=tvtnqj3~mNy-lM+oYxi|}WtV@G9d`U7Y-FS2 zo#8))u1(2>(rv*D^lP)`u(83fR0h8i27mabn{T-cZZ0T2s4rvqc|?&}kDqO`ypi)t zjh_ee(pIDtK)!=rK`k(i%&MTEu|ei>DKf(5z-MQ=$cXy3sg^YdopaQ%X<3tb##NzZ zg~NSi)&ec#WY?txdWkC6vye5B^C+aCVH0iDfZ;S77{bQ}3OQ>?L7h)Pqr63^N^Bn( z#$u0?e5(u?b$S)Mu<%NnW9qJ;hQLqKN~Ef|%`1n5bQLrbI7h5x47R&u!&wLdZey#T zb6ZfnvX(g&~d$MF!_~cZLZ|G_6mxk}{>Q4acr|84F*VcSyXFX!+)T zvynS+_!bBB;;lQuWE*zGd2WfW!N`W8Dh{3veLCye+QZtKlZw-(6VBKLfmOPsg6;U* zq)qEx?r1{^uy3Y-X?ZXjj0<2~AR$Iu7^U>Q#Iq#2$!Rx`66{*rzan@fW%uns#_vJ5 zYx{3{qBIzOi#yq8@?mpmX49l#-kZLnL4B1Uhy2QUG zn}EfGC1XZQ#_{BL>gpfbU;!u%`XWPcU*P828eK0p(2K?>fplxMH>U5)(*$GRbycuB zTCJ--+RM=gV}E?gl5xnJ_;H)eh)?i0A>?iFju=d>70W9aHp1S1nOb}vl2RV@%BJg- zW?u2roc$ze;&u)qY^N)freiE8^Lcuo84(K1hjZ1h7(H6O+9n_z zzdBZUP^sh9a@Q3uQaeF6Aw*1$fjxnX3op8!y%QK{-x8}?!cmt{N9JzV93Sj7Qcx6W zUfyYbaR={+7xq2@641nc*p@&85R47%@1OxN#|Ada&_K{IHmF=g19xuGpp5ng$zMf- zQsLByt~2JG|NS9q_xOz&SXWah%T;m~Mc5$Ev6#`p@%$ z;P%B~-{lynU4X!=t|WcG9?oqFuxNdhR-#uH0S$u=oM+I&sbIN{d*+Q@mqhl2aH=Yyy1A$W=56rOoLRDN`6Q!Bu`yAdx0mQR1TxVXj73;?W@# ziqzdEF`U!gbQFlAIN4P2(20gWR_suFK&uaocJ{G8L*~3{av}!eQ+aW<0oUDbQzE$| z$sTh|CQa0rX?N69`KqtOnRxbs0cis_q5#7C^l>3|pvee zn;NQ`WIYB}K`@?V29KaH_ZZFrz`p!6b8xpC7p0S7bqPh$6oZTDU{+qR&3z7XjDa=B zCB;ivxTSWw-(gDlqa+sE=qhXz#YZ)S;bLH=5Fv00F&)zs60rvHG>P>Sg*;*92r{N$ zgz8uegN$J{3DLTY)xP4wJ-gZec8oCpyB>AmXDP&O8ycOBfb(oZ<*~p#VJb+Zo^d~(EMe(|4_51obC%{ zrnC;#)#WZ0wkXUpG(F_P4$)^q&G-~20<>kq4$d^;7v;qU!p_!;sLmkW%=t=Egb6oL zYr>A@K|)RrX9+>MW(Nza)1t_iqL?A5cLL(0t`R>Vls(4RRj6kUQp3>3h`H^uWX9FB zXoG)<<(8~XiMA4gg;86BAuy}KP@97)@H69A%8mKv1N2O%GRR>-!?MBm?&NJ?lV8k5 zI<+=53?j2G8n}H><&gM}I?x|U{f zC6*OK4C(qJ&lqbm!=l;-0oy7O+O%ewunQWU(&=0X-p6_LrujLUgJgPs#1>aDB1bCK zx#jp-5V|Zb1xCbdDzmQH{3?qm$`-p%%^8HDyiA{zNph6wB+Et1fpxdx)$vo_tVMv3 zbpXN8bk_yT5covXnl5CtXeu9Wo4;l~D{=cKes0KXBX7=MlYYT`d8;yc5BqPhr@iY6 z-yd|Eon+aljEAMd%jhV2hXV&8AWAS)*1ZQA)$Yq0VnZdFtlcEYzy(-X!zjpA`A#1k zJ?|9c;%=}@>z@Q3-2RB(71u;5E!e=)x+E<n+>WE;>K#?geGOi9X(W?27JCB5k;NZU`MRzE7x4HVq$yNj*p z#h16Sv%UD@N>N2ilG+p_w60Yt!XXg2(q(5f+Beh5!f(JgB-4!wn9GSoU6Gcw=s9i@ z84_l$CB+4fwJ-`86D()~8<>QH-UcgQAOz^eR=#KyMv>tnWL7a3HbTFavRW*Vj}X0R z@JnjiCgmed!gHS#{3j(zNa0rGMLs?vFKua04WcYnYpW30*BqWZw+qjUK)<3jv6Mx4 z>X%ZJ&^NfCgy$s}wH|f`o}bcp;CYerJ~n{oFeDwo>%g{E)^>YyugZ zO2-JwoF<-TBv`>B1hMo>Ivkh)xJP)-RzA~vai7C_!6d|#){?Ctjd55|;%G+kv;QSe zz=q;STg?z_FfY-YIjW38H{_z2zWHTlAyr8O)XGw$360CKw4T>TLoXvo@>0>0bXlhf zK8+fJL(u#3Ma$Few2(zLo@aaV)vP3zY@l2+lzE~(fIyjcGQYIf-TW;Aq<*es#1%tV zvj;)f^WKMaV*D7~8+xi~-$h@A_N{EVvOC~mNuoCYft_XAQtV8xcC{Y(3g%IU!=9mH znzPJS+0#)WW+R$dbHHT)MCMZk6_|-$My_HeDuigJ#xtoDow$V5bX4I@q*)hvHI}OD ztHIEYL6>2j(@iR6teMn9sf6oCv`NKfSlt>)Y!F-pJIRJNexy%C&So)~gD&Ml?R zT%V-SGS`4oLXqQf>lSVq*@>QOU?Ktbiy?eVn62d;Y{!|RT!R!IsK;n3-dd9eOIkZD z_=!x|;qm>pX>BYPAzy~W$2@``v^M!wEa||+_Y98(2DN3r5ZgKWn{!OzuZiIbTf^|^ zOX$;Pu=`L0gF~qkvJYXtpJbJlC2neutuAQW z(KpH96arbkDhNcev~Ts41QudLBj}5M(OjyeA(`z(A#WfqcVklzUSe9Pr&_-p+sazd zYGs-!%G7|0<+7YC7oi*b9H%yh6%tv`-RjqbzT4rZ)|m&!@)E|Xq7v9lL>i?`_u!LM zlhTW&rEO2i#0y|bCXNQQFPz^M4Raw7C%<^=25<4T$}*Qh!-A7!+muXEsA6w&4{1S{ z@i)yU3%i_nsGcoUPi+vct!GvxF3CCnC~Tm@hfum8n05&GD;%=J7cYfMmi&@xeDYFj z(c*~gu%uC99w)Baa1(^+KkH@4CMXxTSz2|0&b2(X|9LMO+Q6WU)g8M z@alouN;aSMSWA^9to2kzHJRYe*&|J0hNyr%^ra>+lkGCk4oQ2JUwBehy7_l@xqm0* z`jL4Hr!y!GK4jMJ(b`10s7`N;*S@sjqyd)`EP$qFx8cep&-HdSfoi>%6})O1l-Ub4 z8?NlG7Mii_TUl_T8)I1!lV}QyqjVPI5axz*%MXWDk(n#2fl~Rchfv#^}+eNl-iOFrG zB$I*Z6PBAW_Id?l)i~eNMHe+FaZ6A#%2d?L#1+p< zfTa0kb%a$->-v~7rMyQi2pZP6;{LWcyX&#PE%<~@=aVwy`djc3qPa+WbbXMELRBzd zG3$!%XVEo5vLP zJvEWeJz5H+YRLjY)Ll#o?Bc44nOh#pRo^j<^Ji<(TwX+6nb@r9#J0aedS8pcuJk@F zQJR^hg_=w7w^^j2b9teX-?NQGEAsSk#N)H9p6tX(^Qp};vN+dC+NKr+xo{I@h3kl8>VhT>6^CpnH0cn}LzA8=H0h9qi6)IdP+GX9HWixm zi1LiWzXOs*HAVq>ZQfPjnEzC;M9hDxWJtMwU1Ug=A-j?6PSw#MZ_$d+VW4woy=EM9 z^0uOPF=J>ehG2a7h}#41@GpXd@M@X1Jnhp4pk+QWZnluaOtdmM;jm5u76_>ZEGSnv zB$f$b0n!vikBMg-n-tQRLDQ5Q8aERSb?_514TcP0wsPOY;2%j}_B^v*N>-F~U51UQQ30<{Z{!CVyK2O|>f^!%yPD~d4|Jf#qHKn;l7W zxJT=$?kyfgD=O|ScOEV@#cFp}ST1z;ZDYHm^;CChsJp$LcLx>TY(2C4tfC+z3|&rY zgb#a{QZ7U}JLn!%>#6SE*yR*O)i4hCsR~G3iz*YYj_|!>M@TD=$L>Oj!Tp`p zO}jfiwmVu+b@vZ-cRRsqTTH?r!MZw`q49pyP(2?hbbD*|fU{#*U8G zQ{96@-5u)OJ+`}!x(LMb?y=p`daBzW>Tb}vW7F<7K*eCFyBj;lHtp`gv7@8)RQJZA z?hbd3Y}(!G*zRam)>DenlogD2Q|C>ac9)Osj#edD)w{d7a|_*>S!NWdtI5t=i?-v% z)t$xFn~SU4iz^ZWLoXB=30Gy$hl@6R{^8ey#npZi_pF>I9mjH-Q#4F=>6Kt}rM@Oz z#yk9x8;2VX4L7LwS|59c8`ue1zk~8#^#){4y@Arc^#(Rf)f+IJV*^`ueLDu4fK@CA z(nm>WCfSCHfNH;Dxw;fmL6T4s8e%B8D;~^Po_Tyt|bCq*U%A zgP=qfr9UYk$OAfku5q$itf1!4(^+SlU~%j-OklPK62LJh%R7P$-lWoLBT^WzAZR=6Hofg)`%#aEGo(6cSo>mPH`l4&;wP=73dXubLXvQpR;5D732A{}@bCNAhOqyj{O4&Mt9vD*2aqmv9YP+vd$ zWBG#CVt$3X*Gwm)SShj(rFNrumurd8B8o{#E9t^du-B;LOa!Bq=OsBc0jAjl-E0$uxPf% zI-$BfrVmc&{DMidFLe>rKW|{cj15(T)6BCWjfn}wC9^O%ODIH8A$S$s)u9+AxA5fY zZYD)j%AI_Jg>;~`;1;?aYa2_sn~-hH`_1`K9qKsc&W7rwq@fxC!K+(WTfpqH8PsMX z`)rGuwu+gS%Xye-kPAaIy%usoNU1F7AuMv+H{+m>*`UWu;7C&?q>Z(RUXGE#v=%gV zofN0iS93Y6v(7@ZF6-doDX3VkI-6g`wV5@53cozcV5qFlnwzsslfZ`b)Dm2ABf(3Bqvm#9 zk9fFfRk~YPdV`0nvyK~yl$D~pBV)Uxl>(VV-Az^9NYPo^Zrr*Jiq!)QuIs}lf%o2qP+U!KLg)gAFFjrg5LT=-kC<;~hFt$9ld zEJ-8cczv5qhoPI)sqq4>*Ffrsx++?3aH~vg&t`jrPO?75pvd2Jy%qU&R@rsEkJne3 zsL((F5HxUoEuD~4;$fwVR2{=GLweW2u?$1&)n^!Jsj^64+2RpAbRmvrF)}+AQZ?WJqwe~R6=AkvT@uh9JGR|!?8ST1HxEEh^)n4Vtv=CJtHA9g#i^J zs|A!41tdgP29#zzR%zBJt!!Qm!h`UfiwxjX*fsLR^1X1!$`i}?!X1n5Y~KQq zVQnz0Gk$K>$zP9xlp=e*D^M{lXY@8zmY^2^5=B&FeAe`WLS<2W7Ia>Y%Cdo8uw|9y zP0-z_Hbv|9RF;*o-O+l@RThP^TU}I^B+$l|!w*-gvRuc-%7$85u7b)!uxy(yl@o=R z`PkN-%*Djv{;C`4+AKY+ihh!DD}T2_^n<=FOKI>Z#7M60~Kb=X-XTYFxyE}+CYWb zPMXs4SdEC*aT?L)X-c<@?T*&}f2S$E-XYQJ?kL!5n$mUjEw7`TUNwK(*fgcRWBG#C zLglz-X-YR;l{BSN{%)>%>=~+>juKoPXDQz7_YMc3N&Y)FIp8dJnZiy}?SpY1>vZ8y%wY2Cyn9V7B= z0w|*U8)UB+d3qsPV4|ZC`e;PH8sN{y4vp4vL&Fyx;_yT)!c`fiSG3(+)+1r}k%lV_ zyMqP7Q6Y(#KonQAC7$AxE1~$I9O8XZwAXwjv=&m~YHFKX^O0Q6j*hJ^WlM3swbTPz zul{`3Q69JHy#&#oWw<2;XY6*7OS*=6JYgv#h*#U{suTd_ml3zT9GyI*{aq0Z7RD}|w0@Joz_vDr zk|102DbB~4*DMrTugT1>n#wLi3<-BdNbkm}*9f21Ycln#PxyxP;ALPp<0g9;?SL`g z!-&dO>|x~kba%HaE<;I$v{v>ohNMEZF@LYvfgVHf;N%q>vqU8(*jgyOJMB~*o5P_eIdJGyUdN3@>mE(~?FLuJ0!?daaI9npHKyJM)M zohtCPZbxq&+Yzm&sN7ed+M-H()jFEi!#d*-VBa&gBU(?vd-aa?bPjLO(TTAg(R!-8 zXQ-p4PJe@rj*sn#)=GK6fVI6Hs)wyRwY$f5MC&*@Qk5W!NOo3=tDB3f8;dIv>%)CO zHC$1}G+ga1u67q!J1JhK^!hF($zl~VZ{VHv21=6E8}w|DIsOPQs5h|tsosD?w%&l; zsy86FVnZk&B~iVZ{HQJDQzd5`{GlZ;%XlU)BZE|&QtG``?cxjy{)*k#v=&PlWT-6( z)zUhXv9!))efM=K?1pz=OW64mPIpBa){Pcnkqy3yIPB6LY&OP0iT07?PFjm$lLXAL z`Cb-;N#d}R`mlpk2gc)u?aMFSQ4VOme7SPsn@D*T5m+BLrBQ;IJWaL8fE!g*D{w<= zG0Cfj8@EV=n?aezJz4G`kxz}$6gx<)pwFZ{O@=)&9%l}+HV{%ZqQ+SOrX)WM$ z)sR2Lm_sNmbO2aD%aZZmK9}7?wJT^XMpx9XDEZH@x25_LrH&-*!SgdQJi8qgE9`6A zDkhf3VuIFUuGbzDB~I#B5hReawlRYh3vSld+z{5}$J3N4$ji5v}7!6r-6*Cq^?93z$kXNIHsH zvXUp=q2T41hFUbUl>ftCgOdIjtJl)(%%M4Cm;K1FJ#g6%8nJGN%Ig``zWlE%g?EpY z!n78&eGR2B5ytB#g@eD#dB5t79nv#O^~mJh;#fU{)&f2d#?{d?TndZM{NRA?;J#LB z?(%23W9%$xePhltoX@aTT=vG!lGZooEQ6zJtE<)A*wu>GVwTrxwF11$MT$o@lHy^E zR@xz@LT|cmG3=VId)0?6{|kGuV~E%l-l5$*w)H#gcV4pn&Is*t8@T9&wW_iKyi?ie zT%BdDM)C}MZo6TYiCJ649^CpYV~yn62JlcLx!eHW@g=BjE8kVFkzC&ZUdW*&Sh`hb z+VFyD@I`V4&lc+^hvB%#wXv1LX-5(c=u!<(FjROPOeeDwwb+#}uFCSWeK5gm@! zg2O$*00@-2x7og19%X?@jWKJ5)X0J&HqwK}O;RGw_17XIhZZ_wAKJ>>94oD9EoRA> z;>s(&a2=2<*@sD&!s38T8}yOzb(L+{%GXf2+08`F)a(9Mb}^fUSgB`gPgLsJ!VAh_G~7W;Z!M=*33qUeSnEC1$D+bUuipqa^jaK1m?wSY zpWO<~n>tyNzVy+{KYNKc?Xn+xDIelDa+K_jEa4zsziQ-^4%yGkb*J5(w|Y9UAhXS- z`S1PEr6j+jcVFUjZ2KHv`o;@3#~(@4i7>~;;e_(VoVXl@A+8*>d`LQ|YA_M5?W1ur z&*TBtx~_w`8CasBKXab{wT=srUdCSzF&{X;%NqvU`^|EN*;&havJuCdxd6JfW1`9N zL=*N8B)pWK8KjIbweznTO~XgS!O_P#R4)I%pJ$o`F7z|tO2gr8l*qKP0ahAy{M_;8 zh4^!?7f$o!$IwjxdhBM4Pk%)yBQg*MvDwpU{@-ZS-QM#ywrLefl|<%@%lhPAePL*F zI#~?hjZE#4QqK4lW6`~%1e@lcOV`3%45Y=;+O=25=Y39jCVCz;MDse|kkjl`^-bsG zK{u*o1N3!S49tFmj#TzXzi}CfxImGPA=hspbtVva9alC3;mVH76WLR3C)~;Lb=7As zfZvP4FU$wsmE+*M>iNWb^*aC@d0)>@1@&pr%>|oJ@sv*?v|C2DMuTf6-XR*Rk0HX? z22lAj9igwbUYjEaBaB9g`*(zY^1K8lBkpzak3eY%^W3`*-dB6a8$S$${EoXD#troA zlj{8oepqgBO5+qxC}z|6>6Fs|LvP?<){ft9WV6rqr(J-lG;YLS5FL@5J|XhnS}otrcW8CweaE&#s}Tm4 z?^+DMK9oqMHjc`d8p+y0QkreKVgxDyZ1Ewd(?K{{*2v-!pi6Uaj?b6u@sfM2p*D5h zF+6t;M|`+MpD@|eC?aU1oDmxNq2SVjNQFaws6&9&^di1mA9xu5@UX@Gl+0O0|E3Jt z>bb}1NK=_NR*9sA4p$6C)CL*NRgkGBsAs;8Pv!(8qJoA;XR^6)HJQ!F?xJvcgn(^) zN2lnzJJKT);waH~QP{d6Lx|<*w25s@LE@JD&5-6g{oLyEM+e5%{5bpUpsBo97a|R< z?mA+1`9r30A`?;-S(EZL)y0$}q$O*iqGVJqWkXcHhK?AA=Ug{+EWIs5njb1aGha}{ zB|Bx^8#n_o&7UtD0;?tRs&k@Zx}01{b?ibjKdd`{C|$Ed9;HsCYkjms*i)KPg7-0N ziQKK>;p54jnf6@pOhG$zlXy1;)mRgUl2+)&n(kARlV%uulE28IMBeBWXE*Ag%}D0O zonN=cW07X<#;?V;%EK?mHm6kGr`a4kp1hBd!X^zX+osc~rtM1MZY`!SrKo=GKikom zI5+W8bf*jGPE+VkQ~4`&IVmtq>3o90bT;8%bb4jeF0;n*=1EWmupZ_E*?b~vJ=>od zRxCFEj!u<+C-gHTrv$9u=QQ!0sxPAcz+h8iw-4su_%W7=-TrG&cb#`0nJs7=2iHpT zgU6fa8C7Y5)0-{n%Lye=c-(Erw6_!sQKrw+~;y8Xi77)TSgWF}AYF)l^zZ?{@_+&lung zNjL%Bl8@8 zn7aG}yc<&Ocw(jNPB!_GteZ`|@41h#5ODDkgn#$Dvbn5d|M`yngZBPFy4ifD>k<0J zpxegFjgN*o1(Ec?r~JBHZ7g^ z=|2^ioO>g|goRu%kthi4*LCSJ=P>ECSI0(4 zOjOiIUt5uiV`ZX|S@R?4q79K5N?z9Z$N<|+5)3lqKla*4W}^GCWG2cN2Z$5079221 zgjmR~PYlogMiWCRF}9Lyy$X{Pq?(VzFpbBV)11Fq*;h?yNB^nJ?VR!SdUKm$ZqC{A zoLw0a*Et(97H9Xw+4BN9|EW-MlJ%}0XKU>Ruv#UDxf}6zdE5<(M9D(XFeOVef^Yzf z;DU~!D5}(Q@ezs2HyBP!X|4RUsr(Z9_+!L&9@f_xxe=#(kI7J)l`cEoL++zSq4rGk z(J_rs%STX(P|j76t)jJV^YVu}O}VZrr)#5<;&DSCUqz=%gu<=#~&2Ye<+xCMdW4&lz)#@t}ba0TaGhTAJ z!gv`Hs&6*A=7sZQB;hTo4lO;CvpZAHDAY6DXs0=u)#@V?W#BKx&`D+2&?;js3@vpp z`lKBXusr~J%1I4KI;;m6qmVd|c8&!StvaZn4x}kRT%ZOdM=B5$QkflFM{3v%i1s4R zD1U3Y=g$bs6+}W6dl(cIr=da9!RZB$qoCNIXcp86#%e{lamJtKNdqQ0=C3F=O{*9z zOd%HGCf7$Th>TXhsk3TBA#N0?h6ZVVJRwwdztQA)JDeKerFIW6OO+KiLyX9R5VFIH z@3{B05iEYkH1f2{6u@I^OsnklG-aokNPDsY*Lg$^4W;}GxPXj9_=)fiAge*lq16gM2Ezc-E&el-Xc6d>dSv4R3@7ho+H3PV8&2EA>1YpD)Yx7kKYWoV zDFeZ^GOn@Ixe}s}+0`+wmT6g9%Rlx%zL@mBBWeE+3ynRjOALajmLfjHq+nBhAPms{ zCK@NT3@qgX&|#J930f^Qlde&W!lh2GR=0kMg7tPAGNpytgmT5dcH<;2gc%eC45_t# zAhr5xm(AQpQTDDxa*}oP*V0EZz*C;oACR21pc=9B{QgI=yl3(TPJ_N~J@jZFT}w~! z_$!cT3ch$N2_c-pJ@Wf|r3cJq^ZDf2$BI`VZtMjb-yrGtvKfCa@x&bPH@Py4cu9`_q&aNTY&nS%E5BS`M+#FnoobYzmR|KCtgVUI~eUw{w3iV zZq#O|%8k48Cw_(-_i)n^RHPgE^^cx7!I-)D>i3^r%fI?}Zv$I=`@|>t_K79`@>^f! z%bZ{T1G9#s8{3!T4TKQb;e`d76c{mtSm1nc12D=*1U!WUdL_;pu^S&q1`=9FIV0 zb3z^T!>}Pap2s5~>@R3yz5dQ@vA-i*v_9U|ZED)XjRpxI3mxab@KXRO0YLM{BV2{C zW{F0)m@l2pm;TmZSAOo>G*S&CTRbzE6Q8Jac%x^K_L#GtX1q*ZH}1*>z3H`u|eCrn{n%0B~jYyrkI2IJih<0W9c2N<^mDvW>U zf4>Sae&wIM0Q*UjZy(0$qY7i4B5AyVymA&1kpDqyKwb(!?&j%Z|7qU%a6a`npIcQd z{iWo|{@%RV2LW9;cz9*XX3eO`i0gNZC$Mx*i=o}%na!G-1|JAQ7KPb0mm8ghB< z+pD;tSV(&*$rE{~JE?o-CX&h4M3c$wU44!J{on_l@Y&{nK`&@F2B}FS%507nbj9LM zgU_W1AIY}*Pg#Im{%7h7lCJ-JEdKlr{cJLQ@3RQ-#@YP9qaV)aA7z}!9%CNAfpDTyhcAx2Tnil)*2{tfM0sQPj^U-S?PL21Eoti z$?)?T(+>v9xeRmzQ}HDqWZtIn%L4G>XA|uYmr4?8HvqmTC5Zsb7nGJW&DEW2`2lH0 z3E>*ojDX(VjoU~+K{F!M6Eq`aBiARG{xQ1}AeQZFnX8Q7i1b9w=s@Cn&-ecVnLP?l z2IWVz-u`qWZAx=HPb3AcsaRKJIS@mtP&&h-9p=)Dr^>%H*!HFzI0I-lCA5ih>fXeyz{JR--=44RPYE&W!M9IF?; zn7j`rpow8N*|VfGnI`hb;XKgFujh#(zxtEsKKl5xgQ@&$$#)N?$sEi7yB}v=IhrK* zCb$~%j}i&XKYs2**%U@_{l^wvft_UawNL-X(eJ|RI@#w5L3Hw2-t#-jw~nGxitfl@o*6GGc#xwJ7=pyui*rSgL><{p&H`V%Eaat4tJ!bLpGav5 zP^{P)qtM#E!4B=s^yxDX7v6RN9y>$k}`Cz1RA!-}?PuzqJ;gxkgq*wp#?% zp8JDt*1a>4qqRyjrB%J$>_;OuPDsX7&bG-?Cpdtm-mThbe3{LFgL<2;cJWZ;%e!re zSInFvsWKIUW~@cGv1jO&c>o2HDK9gIioKC`wQy+=?915|vT~tG`QNh=^s{DSur`}? zhQl;8suQ^)8AlWc0rKerTBa?zGAy%dvfg^bWwVFrn)fWvpSkSmYrr$23vAk@s}Fm!@|Bd%|7L!84O{dQaN(6EHv0^c_z%g zu@6xRM2UZ%y9&a*N!?Ov(8_LM{H*L2ey6&Xk97)y5Mb6Rg%j#dQ9F%FkFV(22|L4> zQwc`*8l6$ta8hRqb%s!|gm$)CDQ$J7^u%KgrF72MO(`u)DG8%ZrS!qsZjMBq;r}W3 z>F>_nsm~QU$p)XuOd^29X=ozx&04>T-SmdV17x(*dJ|w>!%9*J}K7O7t(n=YI&NoMYT`O;_v=Iea7i z+Zr+>p`T7gazZst+_tai3dGw9{lh|V#^hli{Vjn%r36IidkKL~@MX6Y3N$$qyUB$Zm>=e%(O(Z?;XUN;Q?w$nJD<-V!|2l3QKf= zp13wf8}AU8rJD~dh7W|f2ae(@dRGR2mIXcBi{PP|)2hx#{!ny^x(8F+F0%VJ@N&v}o zJ#zt2H-(LY*nlNjrdQus4}7lz1N##11mwuD=R5e>EIZLgGzZARPiJ9HQ3T6^5RW%7M(4$YB^us#y0*saW zsz1z1I8V_5QYYxbYy~ z!xw4Qs^0(EW3rboE<0xR21BQ8lEhPFfG6^-g|0;G zDuLTZ3RO|yqHP5>MxcI7x?<)YAqIb^N!UD9X_6L$T~Sp#)|MGSX%UyWMq{!VNT)J? zpo8pgy#XUKM}*GEHz&JpK@$(cn5Gt3!FVA*%w90Ppyqc_FTe!MhRV|Qkn65Lq0{A zg)juZf+8xyoF-KC8^3Dfv5WDbd=`qC!#qJYj*B!KW+Gxf=|cPrr6ufWz@*=EvoT;2 zoXU`!5u(WzGfahW=33$+91RMyoG6E^TF&=o$|1wKqBl-waq?zal6P()&)ir;PT>R- zLdggJ%+h(~o(9bVGQI8j36`-+ctPLYmZfBZ4qr)vA$jhiCqb|{Bbq3>Obr1s~croAlwWIr#(kon7 zt(~o3J-Sa881%KX^+>utgB4A-08TMYvCu+G8*9E?7D+uN+^){oeLZ2=uD0pEo=}t% z&E3#UPW+wyiBG0J*H3 zLVns4-H?}UGnpQzXj!^8yn*>pDC>D;hRhj}v0mxFzcWop0zLc;gY0X{*k+4_eMnXR zFkY5Ao#|$JpbP-Nq;jHH+0{el!l5D4gr*HG;*jrZT{|qQKgpOAP~@Uj#mzp*UJ^hf zS!V-tl#oqP`Qe6M$+~u{ohj}atrgnMC116a0Mx-k4x)7V|((o8bg+hHHK`hhy#xrTiM+RWTG+$Igy#)O-E8Q z^1c?4#00*2TBM#vM8vAX3J?Ns2SAWB9{X#{z4Gc6kjJjpbqY_4yNpAs-zAwEHiY7> zjH&v(`to?0)?*oJ&r^uRJ~!;`%`QZA!NuPqosrMCt}h`4q_=tc9JpT=91Q9~L(<^;r$+gyANeiR@gX~RS0MYD3@QHVq32q0f6WaTilR#Z^F zwXR2KxNvXwdP9TR!4R<-XNu#~v<2B5;i63>w=JSHY^wltr{zJ8VsJgxMDpv=N?tqi zOT-}8eN|tdyFdt&W&_~fUWt+5azzGML#^yAu9cxfSYBhkE_GCaB<{TnLW;dp(}g3- z%224OBha7pRjxcmbjbJ35{hqf`^jJ1B&%HQUoZiS82B)!7bHxmU+3oGo-`b#;{1`zc8L zSaqEq8A`bcK8Yan{OW3fQWTq@JaZzHl&*vlAQjf4qoio*>{7o{F4XE4ns_*4VhfZ` zXo0whQoo8mvz9SmDm8>n8Ji?`$zLMsK14q$|0 z;1IeMKSz2z*XN99vx4fcM9hhv5-K17Y)dHOaAhVc0s;jkqEHNy zC$Kb%Of6uE#vV&~2`vouID~G^uj-)Nq258JIn+T{wDm82Fdu!*?$V@*ehI3CFFb(1 zX?7Qh6URPvI6tgRMsZ$Hhauaziw3kQvkNZB#RcQLXyi_|qn!x~$?@C>0nq^ft6()N zG>vS8)mrtDmE=WOGE`^Pxmpq=vRcgaLkLME%A`s60c$bCZWNV22Mw(xg1;VNWhF)+ z0o%Yp(!)sraWH`dJUBW=0(dQwxRC}VdkrII$rwh=9cjY4208c!22Kvx$#Z`>m7O2u zp=uwARl+11(sm0H{g_eSo-jJp%~KITfHB)Y}E z#0@KdLw8-#%5vb>6a*1f{72TeD#W)=(W>=)9(~$kADJw@pg^eCfAt|2D{<&WLVqkOyjp9?!1m6C0^CwKHID9C6i^SKlS#M|_ZQDX|EWS~ga9Dy@mI z8Xw}zt)oqxLnwfW2Th=}uEauwUnvL)sCU{1PlX-gh93qoXDG*3Bjo5~jY>ivEfHcR zz#7>{oKkMCrc3q{jtsk{>X7<$C)o>md3LotQ*Nt5xxG46p3@`AYqM(I7|t|6g`^E( z>yeUCawLHw0?8Qx%k^Qq5YdyD+YRTan}e{)x*3=%VO2pm%fg_8a25e!vU2q17Ts(K z;4PeeWGQSDaKz;m&fZu(jr}m-bW%c<)`)gwD7A;JO(vA*(Tz~`$`as*0DnF)wQ>ia zUr-$>Ujl?LRR_*h2hI&a0G+E2^h5a^qfF4cG0JWFf#Mt=TZ_C4$Jfd$DY-q=vsr8y7C9#Xh zDlc?XN~rHC64uu)w}MU*N}@C9QsrVz?ufZ}ZPvtwE}JvxiLed+B;$*gMSB$Kg^v~V zRz1Ix=QDTaO6T-wf`m9Vxpg9^xn_SwejxF<_Y~BtPI$9jaU~RJTFzqiOlN9{r<5&@ zp`)}He?$1vBx=wwdL*Vgq`GVlhIvp_1#$$2GaA(#aEXR@gzAQ-6zZV>`k+CwO=k)%IZ-qKgV8cL8G$$y^)PJTkfChjJ3Yez?v8w2C1^^_Ii_vN z$8;bn>b|)LaSg%0-p;1ww%$vMhs8NoHPWLI7hw8VCi!*&iGwul5e%Sm@oR#W@Wq`P zUHR}*Unw$SK>>=)6!zdmDq>_)d_qMY*(kPB1-L-ls($=YQWaccYZjJa)s_!I^Zr5e zHL@Ymvq%rk%Zxt*yB5w<9GYh`X9?ongWAzA+d@Fxwk1R%Ya6K1auNP|zXN}Sdn0SW z`Y}vfaQGv9Or`Vlh^yJ?`&jH`tJa?>2*Q9c5mRW%Jpah$^t{}rvHK{}*`CN^BRII4(Oi>;d zdROh)J>wG{D;{o&_BG;7LET)B$R1Oa3YT06$9+^GwnB9e3Pn{6J}J}^Dtb5{PA%pK ztwR=Xmw_aEg1ivb&D>QkWJzrc8Y-v|>Z-l|(Urm@k&ab9D zpWs)Mo=@_tNzY&8S97MS3YoJxUZNt;1TDO0ZnDf)dxc@%5{J>BLBEJHd&cF~v1gFI zTz6H?B?}G@+5)!+XQCDXe+f3i)yyg&vJeZ=Sa_+)m+n^)>~<-aV{T zeltk!Tb;XY=ZEqf+x7u94PCWRYa2ASov=|qA)KL~lGeXUH>q?Ow$~dUsEEeT58GP9IUDZ!Wku|t#hnFNQSdr1!_OT*x)g6t1aCMAXl6$kT-Dhwd$;icd_5AEGqaQeD zC+{dyG7IcJB6frRu(7ZkWS)%zH^#!hq&|beV_Dc5&Jm?<3Fqo(Q#em?q|KpJ?PrFd zpR+Vmfo@b=?^U$Dr=~6t^map2JL(&nI={X-Zz&8D@=$js^IF5erlEAGTST!5-gY(<#mS(SaR2eC-I1ZguGh z!fv%|1bY`bQ}-&^etFQF?^+T9G&dIlBj2&KLku8HUy%a>Hgf?>(nJ!lOf@?b20af^ z!15`2gm#wzj>tU8&xAVI(yj<5DwgAe;6o4zo$m_qy!XTk8x zhhz)N$)W$~eEA%;p}SRvuGtBiY(~ssnqzg_wy$Pbwc(4Xn>0a$gu8TfKd<{;^*uKi z_)VxXrEkk87A>5LS{h(Uxju7&=Th*^XE$ z)^w9?Z)G=3H<|1rm;uQpQ@v1LlV*0zIzKw)*7@DD_58buk#Re!EejCH4POxpUM68V zQqW!oPsjyI?;%a4(+{P3m64HBqLRMq*7^$DEC>BcvNC-YC*#dKYghN66jtdg8AT=p z7+BdyQ)&s0mhgc1&|NdsnE9YmPJXD**wZQIqfOh^o)^|4xG$Awi|!)jt?6=2OLw`O zE8V3NC&*xPrwdBALY0tr&bI#5Id0M(pi+%rQWB7Kd!QTGpMQ$HyyY zD;9|O6oZu_Gm!6X?ak$quU&nT4%K-Ol7H-ih~nOp-_NgJx>xu9#>e9$JQXE5C6=N4 zhHK;r>ch8%be_0CZqQ@erEUNxAH^O?Cty@ z#BbpTGx`ue^nH3EKf;HzrIvzd0x zAwAi3FkA|yMA6%>?w-}$%V(#^glUs)dVXt|+XU+I{BU*XT{h3FHu6mJ4FpAz`MSA!h3p6IK)L)qP z^-3mN<-Aj^2G0h{?iu0ao!ULzkv9D^B@5ui)@n1>tp%FeRUgZBXY2bP+vj5~Lw0BD zL+O_5_owU4)uqJI`Ao5PaIkfu#SyV#=G86IaI|q*UR@;TI+2a69DztTlay^&=fpy% zeMqV9ch8y7{JY~KmP`E^Ne{e(45ce+*TT9hhx{FXW5C_6*8B2G`Sf1ok6B7#c6yGR zkAxzh*J})E63`x?XXN#%sanz413Dl#P!DQlV-FZD`GpQ#lt~5}!sjwQfFb;Gxl}#k zFepq*z$Dlch~U$$1cXf}*hkf?Oap)&V+Aj}cvJ=^yliJ(CQ^A{t}z6qHa3|nxJU(p zP7kH#(r75-9%}LNY6&F9QtxQCfuE9Qb{3cUcRQDS(?5H1@sjTaXg9A~@;xN&hVFzO zbgvpLJHs<>;`Vx$ra>6kQV}nWzfb(ir?sA~-VT`DEzN=5b@Vf`4SkDX{0^1<-f#If z$hI{y@k^B*|DeCet3Q{W^3K8eKGfK%y@OA3qu_28unb@h^c!ejJjU9)yT>;i1|fk# z3uZp>x})G2xE3xB`1-OsO_Yuk)NrYnOaF*s@xrwGiS)jO+GIG}V4Hx~^gZJ6=L<5U zqOc$usBrEuue36{BAnw7M*oJKqayP*Cq-(#BLNDJ)zLPTXVbca59YLpkzf;I7Jf3L z#qBVI#SE5oFVbO!!b#LbFPdK}cFD)0TAlGi%-WibV9-}W&!}t6xA?UAfvPfa4JWoE ziz<-$#EhHj#MH}1b8*H7*=VlL@{6+3T%OT>1_MM&ZdE$)Z8c0(tV2xf!HWI}XJbI= z{4g-{)DL~e);)uwxKU-g_@Q&!ZK84vpMvKrmi3Ls?1j8Cvt1-oRDDQfylT!7UDtYf zXQtolPPb=^xeN}24Cj5^2Hz{Rno}85DCUzzgEn&_-C4}LYFqZ8WaH~^jIU4~xfd~t z5>sB&+ZJ#vB+X^jqw{t;T@jbrP3R-e6%0OacnfA`e#u$sz239uBuTm%I+dmoRY_}JOa#kRp)13G(eScvPW zjJY{jlFuw0Ui3CMk@sP7l}&oeU4*-Yhs%f{pJ4>@EowG3?uw4#ej5O3l3a~MfC^47~tBxTjFe|OW zHgg|`ZyxzZpoQvC2@ze6-gPcg#t0)0#Ta4i5bjLaVwD>R4MIrhYCw}ja9;fn6bOmM ziISpZ+`d{e?idwG>0~%7^{D6c=(*fKf|pv|H6 z0gBj+8p^PjI%o+ChFh`K?R&EwG;gd@h!ag8t`MdjC0cuz$C!V&y7N4{?9$+bU1ls< zbpa{8h}~x6Yw@30no-i_M9mU~(T=^XKKv9Zif_ZLY%Vt|=KKY$5fWEv1;Fw({>NNt~#((g1Vd7{QQD+D`EDGAaVQHlt1(Jc`2nQnI5 zP2@RQ4avL|pxn;;=m2Y`4ev%hV@0dzbo_$~V^pi%a_gCM5HjNh>D*3XNP=3z%ru+v zP3&nTmD~54{KjM1X<|G>jK9nYARem;CL*DX^o5wUmgI99ROC$*8_yxf>$jAi5Atg1 zZ>z%^;vJw@pxp4!FZ~(Or`=re2iqqT?n*gp)%)W`!%`g>P8rp~#brx=m=&2c^tT{uD_ZH8@?qq2=@lbyifUSpjwwYAikD## z7d4I~2C~jsM0_=Rd-Q?|Uo6K|2W5jSGuQ0)s({k8fs}3CPOB; zr%n+@22K&r(>*gXT}sleNJf7Y!yY8lqu>Cp&H-jCrz&MQYvL@MO0(Jz3T9b@pUWy>qAL z$s+Ji){~7gf3hbF4jZQDNZ^lqvKV|P;mRhQo4g&2yRw|F!yq)|o6{U+lbl(}k@**vm%o@YHh&+4JRzb{i>*xi4R+*yl6ot|fn0%GV9SJkwExP#7Tz z;eV2O)=$m&R+J&G$X7aU(84;;H=MqDWrpr}zAi5p>tZNId1c;W5r<8YP8j>Tm-R5=xG-VkwI`Bx0yI&@dEa2?Zu)B5N@G>mp@Z3@I zhO&I9tNz{sMea#h%--TeH8&~-rSa7CddzH`rvXd6NP}r;8Ov!gjEqf+08=CEX&6}* z^K^^=iknt3UTIqh8%CT&BSuI{6h>k?6BrrGyNtN8c;EI$)>?Gz8r_eS$2f<|Mu_X~T9lsb95%W_Tq!6=EQ!cr%?Gxi;gz>i<_|(Pf1f*NRSTzAEv%Ira(dN*FBXc1+TUGP$mvxJDd2p1)q;$3k9Fplwb2N+q%042 zT4^0rw|C{B>)qNQ28*XxEoh0SqQK8D-Q)DC1@jD7`8^&ajqZ|G9GDB#%;i75YT@*% zh3fRGh38(i@a2BdW~0lFcI0YC)J8!wEdYSRv*x1`#E9^nOyiCEY|&BUo|UwuAlLgkG@jV;7dCHV5;6IkYe15+ z+c?H+#~ol=r>OOHRBl`Q0I^#V&96ON-;rRN+)G`*Gcls=NWCa2L+uFxAD?Vr06`A|CRtz5hsITMFqOKHo zW5tP|f;e04xYa&YO#NKj>blH|eUefk?M1<2^(0!LRyzq-+acFW5A7*~q3x41(Gox@ z^vP{wk0j_&yYba@31SKvD3LD1^xjMqXxkB68SoSOFUSy3h+Zq@;cii(?R=5Zewc}w zl_H0lBo!dG_F*DnUg-$jyE$(6fFeGLp;{4o9R^oI0#wDkfVNTXRBvG&kZs_|Jb*JI zR37P_&*F{`02SB4$H|3`Z!~@=OdZw+jMO+~=MA%_ULCfc7=j!jc5euBgxI|y2q@G0 zwmF_q3Od?sQtrp6bBru)fr_Q7^BzHM$(QSESR?UKS&VA~Yg|AnSm$Orhd!?6`_xj0 zgJ|xM-m{%3@9xxxnz`2cyZG1CtYoiFw9-yQFCGw~!~RA#AvWE%`7k3PGpCJsAo!#V zSmw=M2cmnIN^IB7{+HS>`s}5hnMvY8J3VVkC$Bb+mx=t?$|1eSP3|{OGO>edf$3(X zS=59z@NS!=G7UcXtmIJMd#4tsy8dS_O0dkH3`p$K`MlxL9_=%}VmUQ9g6wj3+~^G6 z!2jFrloUaNXlY_aOX3??ITa9e?z*j*N`1B_0P6*BiDP4FiSvG%U1TGsKRb2|v{&

ijnd(B-lh_O&(YOq4`ye1B2)B&R|?%9Z5V7uja< zX+*yyo$Y>%?MjE{Tfd!ilq0{t%R+1#yq^v0ptsa=l-s=X-9v|zJ|ycnv?JtLAsOo z7K&#y_nYVY;wzI5bYzPoq>ERQ6V}8a6#JtNybmdjBY(rZT+X!)O*70 z|DtR5rz6a@^`FAW_T=^bLG_WRj|uzdzz?^GA8G+9Vpc=3OWAmrKJpp5#5uNl-0V`? zlie`nU0P(R%!#_BidS`sQ*pdY)7SK0CT!Cs+rE1;I8S{JaLzm_aCk}RUy0j|p*U$k zdO8R#af9%EGJMEk?M;4|$cJoKdLlj)m7W40j`6?v&?vgehqi+=3>bN_!G|JhZ+0ag z%91>JKD?{FiVr*eLsY>Qxbz7jsWqcAeh^%?ZgI#SqlrJP2wA2!#q9lLT-8i^H1ar1 z$!4sK4RwGj<%W2rk}I&BZSQPCLj?$_G2|SD-LG=)emlF8XSQQ1Zum}YwXq#jwYhR* z$5c%CddJjGyQP%b-Qb*AR%L`~mxYShH` z+-m54s0MO!YB&ZpxDM-7Y`n{{7L5YZ+g*3Ns??_D*k4!nH>Qn%_aSb^$lCUzhLlgd z5pYG`7=TFsu@kTZ;&_g*XfyYSdw1SoYuf|Z(VxKKl_<^U#*_>1PN3j=2-Wr^3U>O{ z4uXr+jL_m=38=UOugkGVNX$0Bzoo(EJA&fIIdAR$u6`;>^3#r~+=nJR8zOG~d)OV#}r!_=m=#o{sE*LJpz4~ps&)_2f4 z_yOvf=OOG?TO;$-YBJ)u9Z)flDMQ_@FsG9k*ccdFlOrk!ZuZ{t{59xlOLmndD>M1U zv}C{Z2PbXGCaS2O{>evL6@S=scV3|*I>jPJ>XQt=fnFTiIq?@@r>?)Ie}OmvYMr`~ zDj_UbZpeX%HwOMWxb5=(RP|Rtg$>)shPA+x6pA$4$r)z&y(eLqjl}p1=O9ft+nwkj znPE23K{9SdG1c4gCE04O)5#lV6C9*Y|E5S*cJ>*P$A!)*J4hbwGY3f)M|<#pV6DyP zPv;VGBH?HKJR4mKa+{(s4>bRZcH&dG(P4lT5IG9&e;^c>B5jV^*>7LUwM<%t3i}@& zb_XA_76u%nSslmwf;!H|l|}O06lREU+|-P^xUz_@58wWJhS&nWyW2xPxkiyI-C{L& z*cpPeE7=N@?eTP!X+C&^_6@T$6>|%;TL+%9t&QiZExxh#PQ7CG;x9e1Pm)|gOqq=T zG2L?gGwFIu^$PYB=j^fuy#;GCWv;-ob^smk_VLydqm)(m663QobsSM2W_|^2g~&(T%M8lV z=o}z&uy@__7y2&%cS;eOq3d#?b_twGz~Iwnmr9kJ0jP33gH_!5JlrO6r#D--=62@u z+Y3!O@5BNr=+3YPHco?3muu-W7rFecS5PDwYDcLg6<#y7p4eF`{=_-T1g*euK$Dn9crNj}!~>W0p& z4;vChCO@gS*_7TwTGfF9)hgFtVE~0vI8F2fsGf-7GhJ@26F0V*jkvKRxmFxye^KuB~&%!$*Yrit9{0q>Kjs7Ee2<* zm!-0X82lQT;3Q*|{I((K6da@uE(u2~^fpudHa_<(eTaNGQ+?hFsMBXiXR6Oy0Tspq z!ZW(s&j~)|Y>%VGHMz_`l9p4PXzkV=NiyB)gI_)ttvejcIDd7+Ty?fvUOGTPr^{Z{ z`sv5^?FAa!3=M1RK0n?l8Dc+{Zh7=W>H6&I5;w${+F=s5bv6)0Lu@=6POazqGndFN zJywUpC2Pc^&Db;cl}s-VdNkiiLv8&We7DF+lLo+Vs6KjazsIdOCB4K&O`s}IW^z

EP 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 z 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 literal 930283 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%0D(#$W56pgxKHR4`bo^^dYv(#)we> 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

Xj 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�A-@Dox< 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

jD_ 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 diff --git a/srml/contract/Cargo.toml b/srml/contract/Cargo.toml index cb4ad0ffc1..ae91f6632d 100644 --- a/srml/contract/Cargo.toml +++ b/srml/contract/Cargo.toml @@ -17,7 +17,6 @@ rstd = { package = "sr-std", path = "../../core/sr-std", default-features = fals sandbox = { package = "sr-sandbox", path = "../../core/sr-sandbox", 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 } timestamp = { package = "srml-timestamp", path = "../timestamp", default-features = false } [dev-dependencies] @@ -25,6 +24,7 @@ wabt = "~0.7.4" assert_matches = "1.1" hex-literal = "0.1.0" consensus = { package = "srml-consensus", path = "../consensus" } +balances = { package = "srml-balances", path = "../balances" } [features] default = ["std"] @@ -36,7 +36,6 @@ std = [ "runtime-primitives/std", "runtime-io/std", "rstd/std", - "balances/std", "sandbox/std", "srml-support/std", "system/std", diff --git a/srml/contract/src/account_db.rs b/srml/contract/src/account_db.rs index 1ea763800a..6b5142b6c8 100644 --- a/srml/contract/src/account_db.rs +++ b/srml/contract/src/account_db.rs @@ -16,8 +16,8 @@ //! Auxilliaries to help with managing partial changes to accounts state. -use super::{CodeHash, CodeHashOf, Trait, AccountInfo, TrieId, AccountInfoOf}; -use {balances, system}; +use super::{CodeHash, CodeHashOf, Trait, AccountInfo, TrieId, AccountInfoOf, BalanceOf}; +use system; use rstd::cell::RefCell; use rstd::rc::Rc; use rstd::collections::btree_map::{BTreeMap, Entry}; @@ -27,7 +27,7 @@ use srml_support::{StorageMap, traits::{UpdateBalanceOutcome, SignedImbalance, Currency, Imbalance}, storage::child}; pub struct ChangeEntry { - balance: Option, + balance: Option>, /// In the case the outer option is None, the code_hash remains untouched, while providing `Some(None)` signifies a removing of the code in question code: Option>>, storage: BTreeMap, Option>>, @@ -91,7 +91,7 @@ pub trait AccountDb { fn get_or_create_trieid(&self, account: &T::AccountId) -> TrieId; fn get_storage(&self, trie_id: &TrieId, location: &[u8]) -> Option>; fn get_code(&self, account: &T::AccountId) -> Option>; - fn get_balance(&self, account: &T::AccountId) -> T::Balance; + fn get_balance(&self, account: &T::AccountId) -> BalanceOf; fn commit(&mut self, change_set: ChangeSet); } @@ -114,15 +114,15 @@ impl AccountDb for DirectAccountDb { fn get_code(&self, account: &T::AccountId) -> Option> { >::get(account) } - fn get_balance(&self, account: &T::AccountId) -> T::Balance { - balances::Module::::free_balance(account) + fn get_balance(&self, account: &T::AccountId) -> BalanceOf { + T::Currency::free_balance(account) } fn commit(&mut self, s: ChangeSet) { let mut total_imbalance = SignedImbalance::zero(); for (address, changed) in s.into_iter() { let trieid = >::get_or_create_trieid(&self, &address); if let Some(balance) = changed.balance { - let (imbalance, outcome) = balances::Module::::make_free_balance_be(&address, balance); + let (imbalance, outcome) = T::Currency::make_free_balance_be(&address, balance); total_imbalance = total_imbalance.merge(imbalance); if let UpdateBalanceOutcome::AccountKilled = outcome { // Account killed. This will ultimately lead to calling `OnFreeBalanceZero` callback @@ -206,7 +206,7 @@ impl<'a, T: Trait> OverlayAccountDb<'a, T> { .or_insert(Default::default()) .code = Some(code); } - pub fn set_balance(&mut self, account: &T::AccountId, balance: T::Balance) { + pub fn set_balance(&mut self, account: &T::AccountId, balance: BalanceOf) { self.local .borrow_mut() .entry(account.clone()) @@ -257,7 +257,7 @@ impl<'a, T: Trait> AccountDb for OverlayAccountDb<'a, T> { .and_then(|a| a.code.clone()) .unwrap_or_else(|| self.underlying.get_code(account)) } - fn get_balance(&self, account: &T::AccountId) -> T::Balance { + fn get_balance(&self, account: &T::AccountId) -> BalanceOf { self.local .borrow() .get(account) diff --git a/srml/contract/src/exec.rs b/srml/contract/src/exec.rs index 011f1d9e1e..6c04a2e1d0 100644 --- a/srml/contract/src/exec.rs +++ b/srml/contract/src/exec.rs @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use super::{CodeHash, Config, ContractAddressFor, Event, RawEvent, Trait, TrieId}; +use super::{CodeHash, Config, ContractAddressFor, Event, RawEvent, Trait, TrieId, BalanceOf}; use crate::account_db::{AccountDb, DirectAccountDb, OverlayAccountDb, AccountTrieIdMapping}; use crate::gas::{GasMeter, Token, approx_gas_for_balance}; @@ -25,7 +25,6 @@ use runtime_primitives::traits::{CheckedAdd, CheckedSub, Zero}; use srml_support::traits::{WithdrawReason, Currency}; use timestamp; -pub type BalanceOf = ::Balance; pub type AccountIdOf = ::AccountId; pub type CallOf = ::Call; pub type MomentOf = ::Moment; @@ -281,7 +280,7 @@ where pub fn call( &mut self, dest: T::AccountId, - value: T::Balance, + value: BalanceOf, gas_meter: &mut GasMeter, input_data: &[u8], empty_output_buf: EmptyOutputBuf, @@ -306,7 +305,7 @@ where dest.clone() ); - if value > T::Balance::zero() { + if value > BalanceOf::::zero() { transfer( gas_meter, TransferCause::Call, @@ -349,7 +348,7 @@ where pub fn instantiate( &mut self, - endowment: T::Balance, + endowment: BalanceOf, gas_meter: &mut GasMeter, code_hash: &CodeHash, input_data: &[u8], @@ -439,7 +438,7 @@ pub struct TransferFeeToken { gas_price: Balance, } -impl Token for TransferFeeToken { +impl Token for TransferFeeToken> { type Metadata = Config; #[inline] @@ -468,7 +467,7 @@ enum TransferCause { /// (transfering endowment) or because of a transfer via `call`. This /// is specified using the `cause` parameter. /// -/// NOTE: that the fee is denominated in `T::Balance` units, but +/// NOTE: that the fee is denominated in `BalanceOf` units, but /// charged in `T::Gas` from the provided `gas_meter`. This means /// that the actual amount charged might differ. /// @@ -480,7 +479,7 @@ fn transfer<'a, T: Trait, V: Vm, L: Loader>( cause: TransferCause, transactor: &T::AccountId, dest: &T::AccountId, - value: T::Balance, + value: BalanceOf, ctx: &mut ExecutionContext<'a, T, V, L>, ) -> Result<(), &'static str> { use self::TransferCause::*; @@ -528,7 +527,7 @@ fn transfer<'a, T: Trait, V: Vm, L: Loader>( if would_create && value < ctx.config.existential_deposit { return Err("value too low to create account"); } - >::ensure_can_withdraw(transactor, value, WithdrawReason::Transfer, new_from_balance)?; + T::Currency::ensure_can_withdraw(transactor, value, WithdrawReason::Transfer, new_from_balance)?; let new_to_balance = match to_balance.checked_add(&value) { Some(b) => b, @@ -548,7 +547,7 @@ fn transfer<'a, T: Trait, V: Vm, L: Loader>( struct CallContext<'a, 'b: 'a, T: Trait + 'b, V: Vm + 'b, L: Loader> { ctx: &'a mut ExecutionContext<'b, T, V, L>, caller: T::AccountId, - value_transferred: T::Balance, + value_transferred: BalanceOf, timestamp: T::Moment, random_seed: T::Hash, } @@ -574,7 +573,7 @@ where fn instantiate( &mut self, code_hash: &CodeHash, - endowment: T::Balance, + endowment: BalanceOf, gas_meter: &mut GasMeter, input_data: &[u8], ) -> Result>, &'static str> { @@ -584,7 +583,7 @@ where fn call( &mut self, to: &T::AccountId, - value: T::Balance, + value: BalanceOf, gas_meter: &mut GasMeter, input_data: &[u8], empty_output_buf: EmptyOutputBuf, @@ -608,11 +607,11 @@ where &self.caller } - fn balance(&self) -> T::Balance { + fn balance(&self) -> BalanceOf { self.ctx.overlay.get_balance(&self.ctx.self_account) } - fn value_transferred(&self) -> T::Balance { + fn value_transferred(&self) -> BalanceOf { self.value_transferred } diff --git a/srml/contract/src/gas.rs b/srml/contract/src/gas.rs index 205a422871..54199042bc 100644 --- a/srml/contract/src/gas.rs +++ b/srml/contract/src/gas.rs @@ -14,8 +14,7 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use crate::{GasSpent, Module, Trait}; -use balances; +use crate::{GasSpent, Module, Trait, BalanceOf, NegativeImbalanceOf}; use runtime_primitives::BLOCK_FULL; use runtime_primitives::traits::{As, CheckedMul, CheckedSub, Zero}; use srml_support::{StorageValue, traits::{OnUnbalanced, ExistenceRequirement, WithdrawReason, Currency, Imbalance}}; @@ -83,14 +82,14 @@ pub struct GasMeter { limit: T::Gas, /// Amount of gas left from initial gas limit. Can reach zero. gas_left: T::Gas, - gas_price: T::Balance, + gas_price: BalanceOf, #[cfg(test)] tokens: Vec, } impl GasMeter { #[cfg(test)] - pub fn with_limit(gas_limit: T::Gas, gas_price: T::Balance) -> GasMeter { + pub fn with_limit(gas_limit: T::Gas, gas_price: BalanceOf) -> GasMeter { GasMeter { limit: gas_limit, gas_left: gas_limit, @@ -175,7 +174,7 @@ impl GasMeter { } } - pub fn gas_price(&self) -> T::Balance { + pub fn gas_price(&self) -> BalanceOf { self.gas_price } @@ -202,7 +201,7 @@ impl GasMeter { pub fn buy_gas( transactor: &T::AccountId, gas_limit: T::Gas, -) -> Result<(GasMeter, balances::NegativeImbalance), &'static str> { +) -> Result<(GasMeter, NegativeImbalanceOf), &'static str> { // Check if the specified amount of gas is available in the current block. // This cannot underflow since `gas_spent` is never greater than `block_gas_limit`. let gas_available = >::block_gas_limit() - >::gas_spent(); @@ -213,11 +212,11 @@ pub fn buy_gas( // Buy the specified amount of gas. let gas_price = >::gas_price(); - let cost = >::as_(gas_limit.clone()) + let cost = >>::as_(gas_limit.clone()) .checked_mul(&gas_price) .ok_or("overflow multiplying gas limit by price")?; - let imbalance = >::withdraw( + let imbalance = T::Currency::withdraw( transactor, cost, WithdrawReason::Fee, @@ -238,7 +237,7 @@ pub fn buy_gas( pub fn refund_unused_gas( transactor: &T::AccountId, gas_meter: GasMeter, - imbalance: balances::NegativeImbalance, + imbalance: NegativeImbalanceOf, ) { let gas_spent = gas_meter.spent(); let gas_left = gas_meter.gas_left(); @@ -249,8 +248,8 @@ pub fn refund_unused_gas( >::mutate(|block_gas_spent| *block_gas_spent += gas_spent); // Refund gas left by the price it was bought. - let refund = >::as_(gas_left) * gas_meter.gas_price; - let refund_imbalance = >::deposit_creating(transactor, refund); + let refund = >>::as_(gas_left) * gas_meter.gas_price; + let refund_imbalance = T::Currency::deposit_creating(transactor, refund); if let Ok(imbalance) = imbalance.offset(refund_imbalance) { T::GasPayment::on_unbalanced(imbalance); } @@ -258,9 +257,9 @@ pub fn refund_unused_gas( /// A little handy utility for converting a value in balance units into approximitate value in gas units /// at the given gas price. -pub fn approx_gas_for_balance(gas_price: T::Balance, balance: T::Balance) -> T::Gas { - let amount_in_gas: T::Balance = balance / gas_price; - >::sa(amount_in_gas) +pub fn approx_gas_for_balance(gas_price: BalanceOf, balance: BalanceOf) -> T::Gas { + let amount_in_gas: BalanceOf = balance / gas_price; + >>::sa(amount_in_gas) } /// A simple utility macro that helps to match against a diff --git a/srml/contract/src/lib.rs b/srml/contract/src/lib.rs index 2c2d2106a6..63b425eba4 100644 --- a/srml/contract/src/lib.rs +++ b/srml/contract/src/lib.rs @@ -74,7 +74,7 @@ use parity_codec::{Codec, Encode, Decode}; use runtime_primitives::traits::{Hash, As, SimpleArithmetic,Bounded, StaticLookup}; use srml_support::dispatch::{Result, Dispatchable}; use srml_support::{Parameter, StorageMap, StorageValue, decl_module, decl_event, decl_storage, storage::child}; -use srml_support::traits::{OnFreeBalanceZero, OnUnbalanced}; +use srml_support::traits::{OnFreeBalanceZero, OnUnbalanced, Currency}; use system::{ensure_signed, RawOrigin}; use timestamp; @@ -133,7 +133,12 @@ where } } -pub trait Trait: balances::Trait + timestamp::Trait { +pub type BalanceOf = <::Currency as Currency<::AccountId>>::Balance; +pub type NegativeImbalanceOf = <::Currency as Currency<::AccountId>>::NegativeImbalance; + +pub trait Trait: timestamp::Trait { + type Currency: Currency; + /// The outer call dispatch type. type Call: Parameter + Dispatchable::Origin>; @@ -141,7 +146,7 @@ pub trait Trait: balances::Trait + timestamp::Trait { type Event: From> + Into<::Event>; // As is needed for wasm-utils - type Gas: Parameter + Default + Codec + SimpleArithmetic + Bounded + Copy + As + As + As; + type Gas: Parameter + Default + Codec + SimpleArithmetic + Bounded + Copy + As> + As + As; /// A function type to get the contract address given the creator. type DetermineContractAddress: ContractAddressFor, Self::AccountId>; @@ -150,12 +155,13 @@ pub trait Trait: balances::Trait + timestamp::Trait { /// /// It is recommended (though not required) for this function to return a fee that would be taken /// by executive module for regular dispatch. - type ComputeDispatchFee: ComputeDispatchFee::Balance>; + type ComputeDispatchFee: ComputeDispatchFee>; + /// trieid id generator type TrieIdGenerator: TrieIdGenerator; /// Handler for the unbalanced reduction when making a gas payment. - type GasPayment: OnUnbalanced>; + type GasPayment: OnUnbalanced>; } /// Simple contract address determintator. @@ -184,12 +190,12 @@ where /// The default dispatch fee computor computes the fee in the same way that /// implementation of `MakePayment` for balances module does. pub struct DefaultDispatchFeeComputor(PhantomData); -impl ComputeDispatchFee for DefaultDispatchFeeComputor { - fn compute_dispatch_fee(call: &T::Call) -> T::Balance { +impl ComputeDispatchFee> for DefaultDispatchFeeComputor { + fn compute_dispatch_fee(call: &T::Call) -> BalanceOf { let encoded_len = call.using_encoded(|encoded| encoded.len()); - let base_fee = >::transaction_base_fee(); - let byte_fee = >::transaction_byte_fee(); - base_fee + byte_fee * >::sa(encoded_len as u64) + let base_fee = >::transaction_base_fee(); + let byte_fee = >::transaction_byte_fee(); + base_fee + byte_fee * as As>::sa(encoded_len as u64) } } @@ -237,7 +243,7 @@ decl_module! { fn call( origin, dest: ::Source, - #[compact] value: T::Balance, + #[compact] value: BalanceOf, #[compact] gas_limit: T::Gas, data: Vec ) -> Result { @@ -291,7 +297,7 @@ decl_module! { /// upon any message received by this account. fn create( origin, - #[compact] endowment: T::Balance, + #[compact] endowment: BalanceOf, #[compact] gas_limit: T::Gas, code_hash: CodeHash, data: Vec @@ -342,7 +348,7 @@ decl_module! { decl_event! { pub enum Event where - ::Balance, + Balance = BalanceOf, ::AccountId, ::Hash { @@ -366,14 +372,22 @@ decl_event! { decl_storage! { trait Store for Module as Contract { + /// The fee required to make a transfer. + TransferFee get(transfer_fee) config(): BalanceOf; + /// The fee required to create an account. + CreationFee get(creation_fee) config(): BalanceOf; + /// The fee to be paid for making a transaction; the base. + TransactionBaseFee get(transaction_base_fee) config(): BalanceOf; + /// The fee to be paid for making a transaction; the per-byte portion. + TransactionByteFee get(transaction_byte_fee) config(): BalanceOf; /// The fee required to create a contract. - ContractFee get(contract_fee) config(): T::Balance = T::Balance::sa(21); + ContractFee get(contract_fee) config(): BalanceOf = BalanceOf::::sa(21); /// The fee charged for a call into a contract. CallBaseFee get(call_base_fee) config(): T::Gas = T::Gas::sa(135); /// The fee charged for a create of a contract. CreateBaseFee get(create_base_fee) config(): T::Gas = T::Gas::sa(175); /// The price of one unit of gas. - GasPrice get(gas_price) config(): T::Balance = T::Balance::sa(1); + GasPrice get(gas_price) config(): BalanceOf = BalanceOf::::sa(1); /// The maximum nesting level of a call/create stack. MaxDepth get(max_depth) config(): u32 = 100; /// The maximum amount of gas that could be expended per block. @@ -410,11 +424,11 @@ impl OnFreeBalanceZero for Module { /// course of transaction execution. pub struct Config { pub schedule: Schedule, - pub existential_deposit: T::Balance, + pub existential_deposit: BalanceOf, pub max_depth: u32, - pub contract_account_instantiate_fee: T::Balance, - pub account_create_fee: T::Balance, - pub transfer_fee: T::Balance, + pub contract_account_instantiate_fee: BalanceOf, + pub account_create_fee: BalanceOf, + pub transfer_fee: BalanceOf, pub call_base_fee: T::Gas, pub instantiate_base_fee: T::Gas, } @@ -423,11 +437,11 @@ impl Config { fn preload() -> Config { Config { schedule: >::current_schedule(), - existential_deposit: >::existential_deposit(), + existential_deposit: T::Currency::minimum_balance(), max_depth: >::max_depth(), contract_account_instantiate_fee: >::contract_fee(), - account_create_fee: >::creation_fee(), - transfer_fee: >::transfer_fee(), + account_create_fee: >::creation_fee(), + transfer_fee: >::transfer_fee(), call_base_fee: >::call_base_fee(), instantiate_base_fee: >::create_base_fee(), } diff --git a/srml/contract/src/tests.rs b/srml/contract/src/tests.rs index 2b4768a7ee..36b98098b0 100644 --- a/srml/contract/src/tests.rs +++ b/srml/contract/src/tests.rs @@ -96,6 +96,7 @@ impl consensus::Trait for Test { type InherentOfflineReport = (); } impl Trait for Test { + type Currency = Balances; type Call = Call; type Gas = u64; type DetermineContractAddress = DummyContractAddressFor; @@ -198,6 +199,10 @@ impl ExtBuilder { ); t.extend( GenesisConfig:: { + transaction_base_fee: 0, + transaction_byte_fee: 0, + transfer_fee: self.transfer_fee, + creation_fee: self.creation_fee, contract_fee: 21, call_base_fee: 135, create_base_fee: 175, diff --git a/srml/contract/src/wasm/runtime.rs b/srml/contract/src/wasm/runtime.rs index 83f14cdfd7..b4a963f931 100644 --- a/srml/contract/src/wasm/runtime.rs +++ b/srml/contract/src/wasm/runtime.rs @@ -16,8 +16,8 @@ //! Environment definition of the wasm smart-contract runtime. -use crate::{Schedule, Trait, CodeHash, ComputeDispatchFee}; -use crate::exec::{Ext, BalanceOf, VmExecResult, OutputBuf, EmptyOutputBuf, CallReceipt, InstantiateReceipt}; +use crate::{Schedule, Trait, CodeHash, ComputeDispatchFee, BalanceOf}; +use crate::exec::{Ext, VmExecResult, OutputBuf, EmptyOutputBuf, CallReceipt, InstantiateReceipt}; use crate::gas::{GasMeter, Token, GasMeterResult, approx_gas_for_balance}; use sandbox; use system; diff --git a/srml/support/src/traits.rs b/srml/support/src/traits.rs index 9f70f13cd6..6f0435a77a 100644 --- a/srml/support/src/traits.rs +++ b/srml/support/src/traits.rs @@ -234,11 +234,11 @@ pub trait Currency { /// The opaque token type for an imbalance. This is returned by unbalanced operations /// and must be dealt with. It may be dropped but cannot be cloned. - type PositiveImbalance: Imbalance; + type PositiveImbalance: Imbalance; /// The opaque token type for an imbalance. This is returned by unbalanced operations /// and must be dealt with. It may be dropped but cannot be cloned. - type NegativeImbalance: Imbalance; + type NegativeImbalance: Imbalance; // PUBLIC IMMUTABLES -- GitLab From d1bcf5dc5e0b10599bc3860e9ef3c95321ce22f5 Mon Sep 17 00:00:00 2001 From: Gautam Dhameja Date: Thu, 28 Mar 2019 15:09:44 +0100 Subject: [PATCH 100/120] Documentation for system module (#1999) * srml system docs * updated docs * fixed typo * addressed initial review comments * addressed review comments * addressed review comments * minor fixes in docs * Various corrections, punctuation. * updated docs * minor edit * fixed doc test * Update srml/system/src/lib.rs --- srml/system/src/lib.rs | 114 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 102 insertions(+), 12 deletions(-) diff --git a/srml/system/src/lib.rs b/srml/system/src/lib.rs index 62bdc5156a..cf4dedbca6 100644 --- a/srml/system/src/lib.rs +++ b/srml/system/src/lib.rs @@ -14,8 +14,59 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -//! System manager: Handles lowest level stuff like depositing logs, basic set up and take down of -//! temporary storage entries, access to old block hashes. +//! # System module +//! +//! The system module provides low-level access to core types and cross-cutting utilities. +//! It acts as the base layer for other SRML modules to interact with the Substrate framework components. +//! To use it in your module, you should ensure your module's trait implies the system [`Trait`]. +//! +//! ## Overview +//! +//! The system module defines the core data types used in a Substrate runtime. +//! It also provides several utility functions (see [`Module`]) for other runtime modules. +//! +//! In addition, it manages the storage items for extrinsics data, indexes, event record and digest items, +//! among other things that support the execution of the current block. +//! +//! It also handles low level tasks like depositing logs, basic set up and take down of +//! temporary storage entries and access to previous block hashes. +//! +//! ## Interface +//! +//! ### Dispatchable functions +//! +//! The system module does not implement any dispatchable functions. +//! +//! ### Public functions +//! +//! All public functions are available as part of the [`Module`] type. +//! +//! ## Usage +//! +//! ### Prerequisites +//! +//! Import the system module and derive your module's configuration trait from the system trait. +//! +//! ### Example - Get random seed and extrinsic count for the current block +//! +//! ``` +//! use srml_support::{decl_module, dispatch::Result}; +//! use srml_system::{self as system, ensure_signed}; +//! +//! pub trait Trait: system::Trait {} +//! +//! decl_module! { +//! pub struct Module for enum Call where origin: T::Origin { +//! pub fn system_module_example(origin) -> Result { +//! let _sender = ensure_signed(origin)?; +//! let _random_seed = >::random_seed(); +//! let _extrinsic_count = >::extrinsic_count(); +//! Ok(()) +//! } +//! } +//! } +//! # fn main() { } +//! ``` #![cfg_attr(not(feature = "std"), no_std)] @@ -60,32 +111,64 @@ impl IsDeadAccount for () { } } -/// Compute the extrinsics root of a list of extrinsics. +/// Compute the trie root of a list of extrinsics. pub fn extrinsics_root(extrinsics: &[E]) -> H::Output { extrinsics_data_root::(extrinsics.iter().map(parity_codec::Encode::encode).collect()) } -/// Compute the extrinsics root of a list of extrinsics. +/// Compute the trie root of a list of extrinsics. pub fn extrinsics_data_root(xts: Vec>) -> H::Output { let xts = xts.iter().map(Vec::as_slice).collect::>(); H::enumerated_trie_root(&xts) } pub trait Trait: 'static + Eq + Clone { + /// The aggregated `Origin` type used by dispatchable calls. type Origin: Into>> + From>; - type Index: Parameter + Member + MaybeSerializeDebugButNotDeserialize + Default + MaybeDisplay + SimpleArithmetic + Copy; - type BlockNumber: Parameter + Member + MaybeSerializeDebug + MaybeDisplay + SimpleArithmetic + Default + Bounded + Copy + rstd::hash::Hash; - type Hash: Parameter + Member + MaybeSerializeDebug + MaybeDisplay + SimpleBitOps + Default + Copy + CheckEqual + rstd::hash::Hash + AsRef<[u8]> + AsMut<[u8]>; + + /// Account index (aka nonce) type. This stores the number of previous transactions associated with a sender + /// account. + type Index: + Parameter + Member + MaybeSerializeDebugButNotDeserialize + Default + MaybeDisplay + SimpleArithmetic + Copy; + + /// The block number type used by the runtime. + type BlockNumber: + Parameter + Member + MaybeSerializeDebug + MaybeDisplay + SimpleArithmetic + Default + Bounded + Copy + + rstd::hash::Hash; + + /// The output of the `Hashing` function. + type Hash: + Parameter + Member + MaybeSerializeDebug + MaybeDisplay + SimpleBitOps + Default + Copy + CheckEqual + + rstd::hash::Hash + AsRef<[u8]> + AsMut<[u8]>; + + /// The hashing system (algorithm) being used in the runtime (e.g. Blake2). type Hashing: Hash; - type Digest: Parameter + Member + MaybeSerializeDebugButNotDeserialize + Default + traits::Digest; + + /// Collection of (light-client-relevant) logs for a block to be included verbatim in the block header. + type Digest: + Parameter + Member + MaybeSerializeDebugButNotDeserialize + Default + traits::Digest; + + /// The user account identifier type for the runtime. type AccountId: Parameter + Member + MaybeSerializeDebug + MaybeDisplay + Ord + Default; + + /// Converting trait to take a source type and convert to `AccountId`. + /// + /// Used to define the type and conversion mechanism for referencing accounts in transactions. It's perfectly + /// reasonable for this to be an identity conversion (with the source type being `AccountId`), but other modules + /// (e.g. Indices module) may provide more functional/efficient alternatives. type Lookup: StaticLookup; + + /// The block header. type Header: Parameter + traits::Header< Number = Self::BlockNumber, Hash = Self::Hash, Digest = Self::Digest >; + + /// The aggregated event type of the runtime. type Event: Parameter + Member + From; + + /// A piece of information which can be part of the digest (as a digest item). type Log: From> + Into>; } @@ -191,7 +274,7 @@ impl From> for primitives::testing::DigestIte } // Create a Hash with 69 for each byte, -// only used to build genesis config +// only used to build genesis config. #[cfg(feature = "std")] fn hash69 + Default>() -> T { let mut h = T::default(); @@ -201,20 +284,27 @@ fn hash69 + Default>() -> T { decl_storage! { trait Store for Module as System { - + /// Extrinsics nonce for accounts. pub AccountNonce get(account_nonce): map T::AccountId => T::Index; - + /// Total extrinsics count for the current block. ExtrinsicCount: Option; + /// Total length in bytes for all extrinsics put together, for the current block. AllExtrinsicsLen: Option; + /// Map of block numbers to block hashes. pub BlockHash get(block_hash) build(|_| vec![(T::BlockNumber::zero(), hash69())]): map T::BlockNumber => T::Hash; + /// Extrinsics data for the current block (maps extrinsic's index to its data). ExtrinsicData get(extrinsic_data): map u32 => Vec; + /// Random seed of the current block. RandomSeed get(random_seed) build(|_| T::Hash::default()): T::Hash; /// The current block number being processed. Set by `execute_block`. Number get(block_number) build(|_| T::BlockNumber::sa(1u64)): T::BlockNumber; + /// Hash of the previous block. ParentHash get(parent_hash) build(|_| hash69()): T::Hash; + /// Extrinsics root of the current block, also part of the block header. ExtrinsicsRoot get(extrinsics_root): T::Hash; + /// Digest of the current block, also part of the block header. Digest get(digest): T::Digest; - + /// Events deposited for the current block. Events get(events): Vec>; } add_extra_genesis { -- GitLab From dc3969e7b3c7e7650a87c79e59e6887f55252806 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Thu, 28 Mar 2019 15:59:59 +0100 Subject: [PATCH 101/120] Ensure timestamp config makes sense. (#2132) * Timestamp period should be expressed as expected period * Fix test * Ensure value never illegal * Rename * Remove println * Add default * Comment * Fix, bump and rebuild wasm * Fix test * Add TODOs * Configure only minimum_period. * Fix * Update srml/timestamp/src/lib.rs Co-Authored-By: gavofyork * Update srml/timestamp/src/lib.rs Co-Authored-By: gavofyork --- .../substrate_test_runtime.compact.wasm | Bin 59746 -> 59673 bytes node-template/src/chain_spec.rs | 2 +- node/cli/src/chain_spec.rs | 6 +-- node/runtime/src/lib.rs | 2 +- .../release/node_runtime.compact.wasm | Bin 929068 -> 930283 bytes srml/aura/src/lib.rs | 2 +- srml/aura/src/mock.rs | 2 +- srml/session/src/lib.rs | 4 +- srml/staking/src/mock.rs | 2 +- srml/timestamp/src/lib.rs | 43 ++++++++++++------ 10 files changed, 40 insertions(+), 23 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 5adc592d20158a7840ec68281d64bcb30296491c..a7de97ffb9e649e474fabdee7525fa30f3df5715 100644 GIT binary patch delta 10150 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 N?r@FETjTLn{vUD3_t*dc delta 10235 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, endowed_accounts: Vec< }), system: None, timestamp: Some(TimestampConfig { - period: 5, // 5 second block time. + minimum_period: 5, // 10 second block time. }), indices: Some(IndicesConfig { ids: endowed_accounts.clone(), diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index 59f22e7c37..818a194f99 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -141,7 +141,7 @@ fn staging_testnet_config_genesis() -> GenesisConfig { enact_delay_period: 0, }), timestamp: Some(TimestampConfig { - period: SECS_PER_BLOCK / 2, // due to the nature of aura the slots are 2*period + minimum_period: SECS_PER_BLOCK / 2, // due to the nature of aura the slots are 2*period }), treasury: Some(TreasuryConfig { proposal_bond: Permill::from_percent(5), @@ -298,7 +298,7 @@ pub fn testnet_genesis( enact_delay_period: 0, }), timestamp: Some(TimestampConfig { - period: 2, // 2*2=4 second block time. + minimum_period: 2, // 2*2=4 second block time. }), treasury: Some(TreasuryConfig { proposal_bond: Permill::from_percent(5), @@ -367,7 +367,7 @@ mod tests { fn local_testnet_genesis_instant() -> GenesisConfig { let mut genesis = local_testnet_genesis(); - genesis.timestamp = Some(TimestampConfig { period: 0 }); + genesis.timestamp = Some(TimestampConfig { minimum_period: 1 }); genesis } diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index eb5684c19e..1631803002 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,7 +58,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 46, + spec_version: 47, impl_version: 47, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 9bd3604b42e7b6da4e47b23debd3da3343320f72..595d3a7abe40c4d8895d51f9a7df1580e39adcf6 100644 GIT binary patch delta 246339 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 diff --git a/srml/assets/src/lib.rs b/srml/assets/src/lib.rs index 14dba1d198..0ed4f7a309 100644 --- a/srml/assets/src/lib.rs +++ b/srml/assets/src/lib.rs @@ -154,7 +154,7 @@ mod tests { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/aura/src/mock.rs b/srml/aura/src/mock.rs index 6a0afb6469..1cb6413ac2 100644 --- a/srml/aura/src/mock.rs +++ b/srml/aura/src/mock.rs @@ -46,7 +46,7 @@ impl system::Trait for Test { type Hashing = ::primitives::traits::BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/balances/src/mock.rs b/srml/balances/src/mock.rs index adec340bf4..db20efc475 100644 --- a/srml/balances/src/mock.rs +++ b/srml/balances/src/mock.rs @@ -40,7 +40,7 @@ impl system::Trait for Runtime { type Hashing = ::primitives::traits::BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/consensus/src/mock.rs b/srml/consensus/src/mock.rs index 490c1ca078..85e6dc3654 100644 --- a/srml/consensus/src/mock.rs +++ b/srml/consensus/src/mock.rs @@ -44,7 +44,7 @@ impl system::Trait for Test { type Hashing = ::primitives::traits::BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/contract/src/account_db.rs b/srml/contract/src/account_db.rs index 2fcddd5d79..e7dc144161 100644 --- a/srml/contract/src/account_db.rs +++ b/srml/contract/src/account_db.rs @@ -16,14 +16,15 @@ //! Auxilliaries to help with managing partial changes to accounts state. -use super::{CodeHash, CodeHashOf, StorageOf, Trait}; +use super::{CodeHash, CodeHashOf, Trait, AccountInfo, TrieId, AccountInfoOf}; use {balances, system}; use rstd::cell::RefCell; +use rstd::rc::Rc; use rstd::collections::btree_map::{BTreeMap, Entry}; use rstd::prelude::*; use runtime_primitives::traits::Zero; -use srml_support::{StorageMap, StorageDoubleMap, traits::{UpdateBalanceOutcome, - SignedImbalance, Currency, Imbalance}}; +use srml_support::{StorageMap, traits::{UpdateBalanceOutcome, + SignedImbalance, Currency, Imbalance}, storage::child}; pub struct ChangeEntry { balance: Option, @@ -45,8 +46,50 @@ impl Default for ChangeEntry { pub type ChangeSet = BTreeMap<::AccountId, ChangeEntry>; +#[derive(Clone, Default)] +pub struct AccountTrieIdMapping { + to_account: BTreeMap, + to_key: BTreeMap, + // this lock is related to the way overlaydb stack + // if set it must be unset at the lower level + lock: bool, +} + +impl AccountTrieIdMapping { + + pub fn new() -> Self { + AccountTrieIdMapping { + to_account: BTreeMap::new(), + to_key: BTreeMap::new(), + lock: false, + } + } + + pub fn lock(&mut self) { + self.lock = true; + } + pub fn unlock(&mut self) { + self.lock = false; + } + pub fn insert(&mut self, account: A, ks: TrieId) { + self.to_account.insert(ks.clone(), account.clone()); + self.to_key.insert(account, ks); + } + pub fn get_trieid(&self, account: &A) -> Option<&TrieId> { + if self.lock { return None } + self.to_key.get(account) + } + pub fn get_account(&self, ks: &TrieId) -> Option<&A> { + if self.lock { return None } + self.to_account.get(ks) + } + +} + pub trait AccountDb { - fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option>; + fn get_account_info(&self, account: &T::AccountId) -> Option; + fn get_or_create_trieid(&self, account: &T::AccountId) -> TrieId; + fn get_storage(&self, trie_id: &TrieId, location: &[u8]) -> Option>; fn get_code(&self, account: &T::AccountId) -> Option>; fn get_balance(&self, account: &T::AccountId) -> T::Balance; @@ -55,8 +98,18 @@ pub trait AccountDb { pub struct DirectAccountDb; impl AccountDb for DirectAccountDb { - fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option> { - >::get(account, &location.to_vec()) + fn get_account_info(&self, account: &T::AccountId) -> Option { + let res: Option = AccountInfoOf::::get(account); + res + } + fn get_or_create_trieid(&self, account: &T::AccountId) -> TrieId { + use super::TrieIdGenerator; + >::get_account_info(self, account) + .map(|s|s.trie_id) + .unwrap_or_else(||::TrieIdGenerator::trie_id(account)) + } + fn get_storage(&self, trie_id: &TrieId, location: &[u8]) -> Option> { + child::get_raw(trie_id, location) } fn get_code(&self, account: &T::AccountId) -> Option> { >::get(account) @@ -67,12 +120,13 @@ impl AccountDb for DirectAccountDb { fn commit(&mut self, s: ChangeSet) { let mut total_imbalance = SignedImbalance::zero(); for (address, changed) in s.into_iter() { + let trieid = >::get_or_create_trieid(&self, &address); if let Some(balance) = changed.balance { let (imbalance, outcome) = balances::Module::::ensure_free_balance_is(&address, balance); total_imbalance = total_imbalance.merge(imbalance); if let UpdateBalanceOutcome::AccountKilled = outcome { // Account killed. This will ultimately lead to calling `OnFreeBalanceZero` callback - // which will make removal of CodeHashOf and StorageOf for this account. + // which will make removal of CodeHashOf and AccountStorage for this account. // In order to avoid writing over the deleted properties we `continue` here. continue; } @@ -86,9 +140,9 @@ impl AccountDb for DirectAccountDb { } for (k, v) in changed.storage.into_iter() { if let Some(value) = v { - >::insert(&address, &k, value); + child::put_raw(&trieid[..], &k, &value[..]); } else { - >::remove(&address, &k); + child::kill(&trieid[..], &k); } } } @@ -104,19 +158,30 @@ impl AccountDb for DirectAccountDb { } } } - pub struct OverlayAccountDb<'a, T: Trait + 'a> { local: RefCell>, + trie_account: Rc::AccountId>>>, + trie_account_cache: bool, underlying: &'a AccountDb, } impl<'a, T: Trait> OverlayAccountDb<'a, T> { - pub fn new(underlying: &'a AccountDb) -> OverlayAccountDb<'a, T> { + pub fn new( + underlying: &'a AccountDb, + trie_account: Rc::AccountId>>>, + trie_account_cache: bool, + ) -> OverlayAccountDb<'a, T> { OverlayAccountDb { local: RefCell::new(ChangeSet::new()), + trie_account, + trie_account_cache, underlying, } } + pub fn reg_cache_new_rc(&self) -> Rc::AccountId>>> { + self.trie_account.clone() + } + pub fn into_change_set(self) -> ChangeSet { self.local.into_inner() } @@ -127,13 +192,13 @@ impl<'a, T: Trait> OverlayAccountDb<'a, T> { location: Vec, value: Option>, ) { - self.local - .borrow_mut() + self.local.borrow_mut() .entry(account.clone()) .or_insert(Default::default()) .storage .insert(location, value); } + pub fn set_code(&mut self, account: &T::AccountId, code: Option>) { self.local .borrow_mut() @@ -151,13 +216,39 @@ impl<'a, T: Trait> OverlayAccountDb<'a, T> { } impl<'a, T: Trait> AccountDb for OverlayAccountDb<'a, T> { - fn get_storage(&self, account: &T::AccountId, location: &[u8]) -> Option> { - self.local + fn get_account_info(&self, account: &T::AccountId) -> Option { + let v = self.underlying.get_account_info(account); + if self.trie_account_cache { + v.as_ref().map(|v|self.trie_account.as_ref().borrow_mut().insert(account.clone(), v.trie_id.clone())); + } + v + } + fn get_or_create_trieid(&self, account: &T::AccountId) -> TrieId { + if self.trie_account_cache { + let mut ka_mut = self.trie_account.as_ref().borrow_mut(); + if let Some(v) = ka_mut.get_trieid(account) { + v.clone() + } else { + ka_mut.unlock(); + let v = self.underlying.get_or_create_trieid(account); + ka_mut.insert(account.clone(), v.clone()); + v + } + } else { + let res = self.trie_account.as_ref().borrow().get_trieid(account).map(|v|v.clone()); + res.unwrap_or_else(|| { + self.trie_account.as_ref().borrow_mut().lock(); + self.underlying.get_or_create_trieid(account) + }) + } + } + fn get_storage(&self, ks: &TrieId, location: &[u8]) -> Option> { + self.trie_account.as_ref().borrow().get_account(ks).and_then(|account| self.local .borrow() - .get(account) + .get(&account) .and_then(|a| a.storage.get(location)) .cloned() - .unwrap_or_else(|| self.underlying.get_storage(account, location)) + .unwrap_or_else(|| self.underlying.get_storage(ks, location))) } fn get_code(&self, account: &T::AccountId) -> Option> { self.local diff --git a/srml/contract/src/exec.rs b/srml/contract/src/exec.rs index 8650839bf1..011f1d9e1e 100644 --- a/srml/contract/src/exec.rs +++ b/srml/contract/src/exec.rs @@ -14,11 +14,13 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -use super::{CodeHash, Config, ContractAddressFor, Event, RawEvent, Trait}; -use crate::account_db::{AccountDb, DirectAccountDb, OverlayAccountDb}; +use super::{CodeHash, Config, ContractAddressFor, Event, RawEvent, Trait, TrieId}; +use crate::account_db::{AccountDb, DirectAccountDb, OverlayAccountDb, AccountTrieIdMapping}; use crate::gas::{GasMeter, Token, approx_gas_for_balance}; use rstd::prelude::*; +use rstd::cell::RefCell; +use rstd::rc::Rc; use runtime_primitives::traits::{CheckedAdd, CheckedSub, Zero}; use srml_support::traits::{WithdrawReason, Currency}; use timestamp; @@ -225,6 +227,7 @@ impl Token for ExecFeeToken { pub struct ExecutionContext<'a, T: Trait + 'a, V, L> { pub self_account: T::AccountId, + pub self_trieid: TrieId, pub overlay: OverlayAccountDb<'a, T>, pub depth: usize, pub events: Vec>, @@ -244,9 +247,11 @@ where /// /// The specified `origin` address will be used as `sender` for pub fn top_level(origin: T::AccountId, cfg: &'a Config, vm: &'a V, loader: &'a L) -> Self { - let overlay = OverlayAccountDb::::new(&DirectAccountDb); + let overlay = OverlayAccountDb::::new(&DirectAccountDb, Rc::new(RefCell::new(AccountTrieIdMapping::new())), true); + let self_trieid = overlay.get_or_create_trieid(&origin); ExecutionContext { self_account: origin, + self_trieid, depth: 0, overlay, events: Vec::new(), @@ -258,9 +263,11 @@ where } fn nested(&self, overlay: OverlayAccountDb<'a, T>, dest: T::AccountId) -> Self { + let self_trieid = overlay.get_or_create_trieid(&dest); ExecutionContext { - overlay: overlay, + overlay, self_account: dest, + self_trieid, depth: self.depth + 1, events: Vec::new(), calls: Vec::new(), @@ -295,7 +302,7 @@ where let (change_set, events, calls) = { let mut nested = self.nested( - OverlayAccountDb::new(&self.overlay), + OverlayAccountDb::new(&self.overlay, self.overlay.reg_cache_new_rc(), false), dest.clone() ); @@ -370,7 +377,8 @@ where } let (change_set, events, calls) = { - let mut overlay = OverlayAccountDb::new(&self.overlay); + let mut overlay = OverlayAccountDb::new(&self.overlay, self.overlay.reg_cache_new_rc(), false); + overlay.set_code(&dest, Some(code_hash.clone())); let mut nested = self.nested(overlay, dest.clone()); @@ -554,7 +562,7 @@ where type T = T; fn get_storage(&self, key: &[u8]) -> Option> { - self.ctx.overlay.get_storage(&self.ctx.self_account, key) + self.ctx.overlay.get_storage(&self.ctx.self_trieid, key) } fn set_storage(&mut self, key: &[u8], value: Option>) { @@ -639,9 +647,9 @@ mod tests { use crate::{CodeHash, Config}; use runtime_io::with_externalities; use std::cell::RefCell; + use std::rc::Rc; use std::collections::HashMap; use std::marker::PhantomData; - use std::rc::Rc; use assert_matches::assert_matches; const ALICE: u64 = 1; diff --git a/srml/contract/src/lib.rs b/srml/contract/src/lib.rs index 1a703a5321..a3f6faf41c 100644 --- a/srml/contract/src/lib.rs +++ b/srml/contract/src/lib.rs @@ -63,7 +63,7 @@ mod wasm; mod tests; use crate::exec::ExecutionContext; -use crate::account_db::AccountDb; +use crate::account_db::{AccountDb, DirectAccountDb}; #[cfg(feature = "std")] use serde_derive::{Serialize, Deserialize}; @@ -73,16 +73,16 @@ use rstd::marker::PhantomData; use parity_codec::{Codec, Encode, Decode}; use runtime_primitives::traits::{Hash, As, SimpleArithmetic,Bounded, StaticLookup}; use srml_support::dispatch::{Result, Dispatchable}; -use srml_support::{Parameter, StorageMap, StorageValue, StorageDoubleMap, decl_module, decl_event, decl_storage}; +use srml_support::{Parameter, StorageMap, StorageValue, decl_module, decl_event, decl_storage, storage::child}; use srml_support::traits::{OnFreeBalanceZero, OnUnbalanced}; use system::{ensure_signed, RawOrigin}; -use runtime_io::{blake2_256, twox_128}; use timestamp; pub type CodeHash = ::Hash; +pub type TrieId = Vec; /// A function that generates an `AccountId` for a contract upon instantiation. -pub trait ContractAddressFor { +pub trait ContractAddressFor { fn contract_address_for(code_hash: &CodeHash, data: &[u8], origin: &AccountId) -> AccountId; } @@ -91,6 +91,48 @@ pub trait ComputeDispatchFee { fn compute_dispatch_fee(call: &Call) -> Balance; } +#[derive(Encode,Decode,Clone,Debug)] +/// Information for managing an acocunt and its sub trie abstraction. +/// This is the required info to cache for an account +pub struct AccountInfo { + /// unique ID for the subtree encoded as a byte + pub trie_id: TrieId, + /// the size of stored value in octet + pub current_mem_stored: u64, +} + +/// Get a trie id (trie id must be unique and collision resistant depending upon its context) +/// Note that it is different than encode because trie id should have collision resistance +/// property (being a proper uniqueid). +pub trait TrieIdGenerator { + /// get a trie id for an account, using reference to parent account trie id to ensure + /// uniqueness of trie id + /// The implementation must ensure every new trie id is unique: two consecutive call with the + /// same parameter needs to return different trie id values. + fn trie_id(account_id: &AccountId) -> TrieId; +} + +/// Get trie id from `account_id` +pub struct TrieIdFromParentCounter(PhantomData); + +/// This generator use inner counter for account id and apply hash over `AccountId + +/// accountid_counter` +impl TrieIdGenerator for TrieIdFromParentCounter +where + T::AccountId: AsRef<[u8]> +{ + fn trie_id(account_id: &T::AccountId) -> TrieId { + // note that skipping a value due to error is not an issue here. + // we only need uniqueness, not sequence. + let new_seed = >::mutate(|v| v.wrapping_add(1)); + + let mut buf = Vec::new(); + buf.extend_from_slice(account_id.as_ref()); + buf.extend_from_slice(&new_seed.to_le_bytes()[..]); + T::Hashing::hash(&buf[..]).as_ref().into() + } +} + pub trait Trait: balances::Trait + timestamp::Trait { /// The outer call dispatch type. type Call: Parameter + Dispatchable::Origin>; @@ -109,6 +151,8 @@ pub trait Trait: balances::Trait + timestamp::Trait { /// It is recommended (though not required) for this function to return a fee that would be taken /// by executive module for regular dispatch. type ComputeDispatchFee: ComputeDispatchFee::Balance>; + /// trieid id generator + type TrieIdGenerator: TrieIdGenerator; /// Handler for the unbalanced reduction when making a gas payment. type GasPayment: OnUnbalanced>; @@ -214,8 +258,8 @@ decl_module! { let result = ctx.call(dest, value, &mut gas_meter, &data, exec::EmptyOutputBuf::new()); if let Ok(_) = result { - // Commit all changes that made it thus far into the persistent storage. - account_db::DirectAccountDb.commit(ctx.overlay.into_change_set()); + // Commit all changes that made it thus far into the persistant storage. + DirectAccountDb.commit(ctx.overlay.into_change_set()); // Then deposit all events produced. ctx.events.into_iter().for_each(Self::deposit_event); @@ -268,7 +312,7 @@ decl_module! { if let Ok(_) = result { // Commit all changes that made it thus far into the persistant storage. - account_db::DirectAccountDb.commit(ctx.overlay.into_change_set()); + DirectAccountDb.commit(ctx.overlay.into_change_set()); // Then deposit all events produced. ctx.events.into_iter().for_each(Self::deposit_event); @@ -344,34 +388,19 @@ decl_storage! { pub PristineCode: map CodeHash => Option>; /// A mapping between an original code hash and instrumented wasm code, ready for the execution. pub CodeStorage: map CodeHash => Option; - } -} - -/// The storage items associated with an account/key. -/// -pub(crate) struct StorageOf(rstd::marker::PhantomData); -impl StorageDoubleMap for StorageOf { - const PREFIX: &'static [u8] = b"con:sto:"; - type Key1 = T::AccountId; - type Key2 = Vec; - type Value = Vec; - - /// Hashed by XX - fn derive_key1(key1_data: Vec) -> Vec { - twox_128(&key1_data).to_vec() - } - - /// Blake2 is used for `Key2` is because it will be used as a key for contract's storage and - /// thus will be susceptible for a untrusted input. - fn derive_key2(key2_data: Vec) -> Vec { - blake2_256(&key2_data).to_vec() + /// The subtrie counter + pub AccountCounter: u64 = 0; + /// The code associated with a given account. + pub AccountInfoOf: map T::AccountId => Option; } } impl OnFreeBalanceZero for Module { fn on_free_balance_zero(who: &T::AccountId) { >::remove(who); - >::remove_prefix(who); + >::get_account_info(&DirectAccountDb, who).map(|subtrie| { + child::kill_storage(&subtrie.trie_id); + }); } } diff --git a/srml/contract/src/tests.rs b/srml/contract/src/tests.rs index a0cefa664e..2b4768a7ee 100644 --- a/srml/contract/src/tests.rs +++ b/srml/contract/src/tests.rs @@ -24,7 +24,7 @@ use runtime_primitives::testing::{Digest, DigestItem, H256, Header, UintAuthorit use runtime_primitives::traits::{BlakeTwo256, IdentityLookup}; use runtime_primitives::BuildStorage; use runtime_io; -use srml_support::{StorageMap, StorageDoubleMap, assert_ok, impl_outer_event, impl_outer_dispatch, +use srml_support::{storage::child, StorageMap, assert_ok, impl_outer_event, impl_outer_dispatch, impl_outer_origin, traits::Currency}; use substrate_primitives::Blake2Hasher; use system::{self, Phase, EventRecord}; @@ -32,9 +32,13 @@ use {wabt, balances, consensus}; use hex_literal::*; use assert_matches::assert_matches; use crate::{ - ContractAddressFor, GenesisConfig, Module, RawEvent, StorageOf, - Trait, ComputeDispatchFee + ContractAddressFor, GenesisConfig, Module, RawEvent, + Trait, ComputeDispatchFee, TrieIdGenerator, TrieId, + AccountInfo, AccountInfoOf, }; +use substrate_primitives::storage::well_known_keys; +use parity_codec::{Encode, Decode, KeyedVec}; +use std::sync::atomic::{AtomicUsize, Ordering}; mod contract { // Re-export contents of the root. This basically @@ -68,7 +72,7 @@ impl system::Trait for Test { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = MetaEvent; type Log = DigestItem; @@ -97,6 +101,7 @@ impl Trait for Test { type DetermineContractAddress = DummyContractAddressFor; type Event = MetaEvent; type ComputeDispatchFee = DummyComputeDispatchFee; + type TrieIdGenerator = DummyTrieIdGenerator; type GasPayment = (); } @@ -111,6 +116,17 @@ impl ContractAddressFor for DummyContractAddressFor { } } +static KEY_COUNTER: AtomicUsize = AtomicUsize::new(0); + +pub struct DummyTrieIdGenerator; +impl TrieIdGenerator for DummyTrieIdGenerator { + fn trie_id(account_id: &u64) -> TrieId { + let mut res = KEY_COUNTER.fetch_add(1, Ordering::Relaxed).to_le_bytes().to_vec(); + res.extend_from_slice(&account_id.to_le_bytes()); + res + } +} + pub struct DummyComputeDispatchFee; impl ComputeDispatchFee for DummyComputeDispatchFee { fn compute_dispatch_fee(call: &Call) -> u64 { @@ -217,18 +233,29 @@ fn refunds_unused_gas() { #[test] fn account_removal_removes_storage() { + let unique_id1 = b"unique_id1"; + let unique_id2 = b"unique_id2"; with_externalities( &mut ExtBuilder::default().existential_deposit(100).build(), || { // Setup two accounts with free balance above than exsistential threshold. { Balances::deposit_creating(&1, 110); - >::insert(&1, &b"foo".to_vec(), b"1".to_vec()); - >::insert(&1, &b"bar".to_vec(), b"2".to_vec()); + AccountInfoOf::::insert(1, &AccountInfo { + trie_id: unique_id1.to_vec(), + current_mem_stored: 0, + }); + child::put(&unique_id1[..], &b"foo".to_vec(), &b"1".to_vec()); + assert_eq!(child::get(&unique_id1[..], &b"foo".to_vec()), Some(b"1".to_vec())); + child::put(&unique_id1[..], &b"bar".to_vec(), &b"2".to_vec()); Balances::deposit_creating(&2, 110); - >::insert(&2, &b"hello".to_vec(), b"3".to_vec()); - >::insert(&2, &b"world".to_vec(), b"4".to_vec()); + AccountInfoOf::::insert(2, &AccountInfo { + trie_id: unique_id2.to_vec(), + current_mem_stored: 0, + }); + child::put(&unique_id2[..], &b"hello".to_vec(), &b"3".to_vec()); + child::put(&unique_id2[..], &b"world".to_vec(), &b"4".to_vec()); } // Transfer funds from account 1 of such amount that after this transfer @@ -240,15 +267,15 @@ fn account_removal_removes_storage() { // Verify that all entries from account 1 is removed, while // entries from account 2 is in place. { - assert_eq!(>::get(&1, &b"foo".to_vec()), None); - assert_eq!(>::get(&1, &b"bar".to_vec()), None); + assert_eq!(child::get_raw(&unique_id1[..], &b"foo".to_vec()), None); + assert_eq!(child::get_raw(&unique_id1[..], &b"bar".to_vec()), None); assert_eq!( - >::get(&2, &b"hello".to_vec()), + child::get(&unique_id2[..], &b"hello".to_vec()), Some(b"3".to_vec()) ); assert_eq!( - >::get(&2, &b"world".to_vec()), + child::get(&unique_id2[..], &b"world".to_vec()), Some(b"4".to_vec()) ); } diff --git a/srml/council/src/lib.rs b/srml/council/src/lib.rs index 458e6ffd38..a13eb7e280 100644 --- a/srml/council/src/lib.rs +++ b/srml/council/src/lib.rs @@ -67,7 +67,7 @@ mod tests { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = Event; type Log = DigestItem; diff --git a/srml/democracy/src/lib.rs b/srml/democracy/src/lib.rs index eb0502ccd9..b9538ed249 100644 --- a/srml/democracy/src/lib.rs +++ b/srml/democracy/src/lib.rs @@ -501,7 +501,7 @@ mod tests { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/example/src/lib.rs b/srml/example/src/lib.rs index 452e75ccc3..81a4a7a4ef 100644 --- a/srml/example/src/lib.rs +++ b/srml/example/src/lib.rs @@ -271,7 +271,7 @@ mod tests { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/grandpa/src/mock.rs b/srml/grandpa/src/mock.rs index 7c35141e17..4405604ab1 100644 --- a/srml/grandpa/src/mock.rs +++ b/srml/grandpa/src/mock.rs @@ -52,7 +52,7 @@ impl system::Trait for Test { type Hashing = ::primitives::traits::BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = TestEvent; type Log = DigestItem; diff --git a/srml/session/src/lib.rs b/srml/session/src/lib.rs index 47fb0fca41..d7d48e27f2 100644 --- a/srml/session/src/lib.rs +++ b/srml/session/src/lib.rs @@ -250,7 +250,7 @@ mod tests { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/staking/src/mock.rs b/srml/staking/src/mock.rs index 662396e2f1..c52baa06db 100644 --- a/srml/staking/src/mock.rs +++ b/srml/staking/src/mock.rs @@ -48,7 +48,7 @@ impl system::Trait for Test { type Hashing = ::primitives::traits::BlakeTwo256; type Digest = Digest; type AccountId = AccountIdType; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/support/src/storage/mod.rs b/srml/support/src/storage/mod.rs index fde0762877..ec758092f7 100644 --- a/srml/support/src/storage/mod.rs +++ b/srml/support/src/storage/mod.rs @@ -38,6 +38,22 @@ impl<'a> Input for IncrementalInput<'a> { } } +struct IncrementalChildInput<'a> { + storage_key: &'a [u8], + key: &'a [u8], + pos: usize, +} + +impl<'a> Input for IncrementalChildInput<'a> { + fn read(&mut self, into: &mut [u8]) -> usize { + let len = runtime_io::read_child_storage(self.storage_key, self.key, into, self.pos).unwrap_or(0); + let read = crate::rstd::cmp::min(len, into.len()); + self.pos += read; + read + } +} + + /// Return the value of the item in storage under `key`, or `None` if there is no explicit entry. pub fn get(key: &[u8]) -> Option { let key = twox_128(key); @@ -560,6 +576,104 @@ pub mod unhashed { } } +/// child storage NOTE could replace unhashed by having only one kind of storage (root being null storage +/// key (storage_key can become Option<&[u8]>). +/// This module is a currently only a variant of unhashed with additional `storage_key`. +/// Note that `storage_key` must be unique and strong (strong in the sense of being long enough to +/// avoid collision from a resistant hash function (which unique implies)). +pub mod child { + use super::{runtime_io, Codec, Decode, Vec, IncrementalChildInput}; + + /// Return the value of the item in storage under `key`, or `None` if there is no explicit entry. + pub fn get(storage_key: &[u8], key: &[u8]) -> Option { + runtime_io::read_child_storage(storage_key, key, &mut [0; 0][..], 0).map(|_| { + let mut input = IncrementalChildInput { + storage_key, + key, + pos: 0, + }; + Decode::decode(&mut input).expect("storage is not null, therefore must be a valid type") + }) + } + + /// Return the value of the item in storage under `key`, or the type's default if there is no + /// explicit entry. + pub fn get_or_default(storage_key: &[u8], key: &[u8]) -> T { + get(storage_key, key).unwrap_or_else(Default::default) + } + + /// Return the value of the item in storage under `key`, or `default_value` if there is no + /// explicit entry. + pub fn get_or(storage_key: &[u8], key: &[u8], default_value: T) -> T { + get(storage_key, key).unwrap_or(default_value) + } + + /// Return the value of the item in storage under `key`, or `default_value()` if there is no + /// explicit entry. + pub fn get_or_else T>(storage_key: &[u8], key: &[u8], default_value: F) -> T { + get(storage_key, key).unwrap_or_else(default_value) + } + + /// Put `value` in storage under `key`. + pub fn put(storage_key: &[u8], key: &[u8], value: &T) { + value.using_encoded(|slice| runtime_io::set_child_storage(storage_key, key, slice)); + } + + /// Remove `key` from storage, returning its value if it had an explicit entry or `None` otherwise. + pub fn take(storage_key: &[u8], key: &[u8]) -> Option { + let r = get(storage_key, key); + if r.is_some() { + kill(storage_key, key); + } + r + } + + /// Remove `key` from storage, returning its value, or, if there was no explicit entry in storage, + /// the default for its type. + pub fn take_or_default(storage_key: &[u8], key: &[u8]) -> T { + take(storage_key, key).unwrap_or_else(Default::default) + } + + /// Return the value of the item in storage under `key`, or `default_value` if there is no + /// explicit entry. Ensure there is no explicit entry on return. + pub fn take_or(storage_key: &[u8],key: &[u8], default_value: T) -> T { + take(storage_key, key).unwrap_or(default_value) + } + + /// Return the value of the item in storage under `key`, or `default_value()` if there is no + /// explicit entry. Ensure there is no explicit entry on return. + pub fn take_or_else T>(storage_key: &[u8], key: &[u8], default_value: F) -> T { + take(storage_key, key).unwrap_or_else(default_value) + } + + /// Check to see if `key` has an explicit entry in storage. + pub fn exists(storage_key: &[u8], key: &[u8]) -> bool { + runtime_io::read_child_storage(storage_key, key, &mut [0;0][..], 0).is_some() + } + + /// Remove all `storage_key` key/values + pub fn kill_storage(storage_key: &[u8]) { + runtime_io::kill_child_storage(storage_key) + } + + /// Ensure `key` has no explicit entry in storage. + pub fn kill(storage_key: &[u8], key: &[u8]) { + runtime_io::clear_child_storage(storage_key, key); + } + + /// Get a Vec of bytes from storage. + pub fn get_raw(storage_key: &[u8], key: &[u8]) -> Option> { + runtime_io::child_storage(storage_key, key) + } + + /// Put a raw byte slice into storage. + pub fn put_raw(storage_key: &[u8], key: &[u8], value: &[u8]) { + runtime_io::set_child_storage(storage_key, key, value) + } + + pub use super::unhashed::StorageVec; +} + #[cfg(test)] mod tests { use super::*; diff --git a/srml/system/src/lib.rs b/srml/system/src/lib.rs index c5397345a1..c1a5ff9d9a 100644 --- a/srml/system/src/lib.rs +++ b/srml/system/src/lib.rs @@ -481,7 +481,7 @@ mod tests { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = u16; type Log = DigestItem; diff --git a/srml/timestamp/src/lib.rs b/srml/timestamp/src/lib.rs index f3e0d8153e..4eff0dc539 100644 --- a/srml/timestamp/src/lib.rs +++ b/srml/timestamp/src/lib.rs @@ -326,7 +326,7 @@ mod tests { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; diff --git a/srml/treasury/src/lib.rs b/srml/treasury/src/lib.rs index 8585950f7c..673f989a78 100644 --- a/srml/treasury/src/lib.rs +++ b/srml/treasury/src/lib.rs @@ -290,7 +290,7 @@ mod tests { type Hashing = BlakeTwo256; type Digest = Digest; type AccountId = u64; - type Lookup = IdentityLookup; + type Lookup = IdentityLookup; type Header = Header; type Event = (); type Log = DigestItem; -- GitLab From 6f6fd5841950c7c0d344215d0cf034eec4370666 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Fri, 22 Mar 2019 18:21:24 +0100 Subject: [PATCH 064/120] Fix #2073 (#2087) --- core/network-libp2p/src/behaviour.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/network-libp2p/src/behaviour.rs b/core/network-libp2p/src/behaviour.rs index e2e3762d53..bc41a9cf55 100644 --- a/core/network-libp2p/src/behaviour.rs +++ b/core/network-libp2p/src/behaviour.rs @@ -76,7 +76,7 @@ impl Behaviour { user_defined: known_addresses, kademlia, next_kad_random_query: Delay::new(Instant::now()), - duration_to_next_kad: Duration::from_secs(60), + duration_to_next_kad: Duration::from_secs(10), }, identify, events: Vec::new(), -- GitLab From d1e25d1e3ed875482c400cd392e67c417dab9e00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Silva?= Date: Fri, 22 Mar 2019 19:07:24 +0100 Subject: [PATCH 065/120] Fix handling of justifications (#2086) * util: fork-tree: check predicate first while traversing tree * core: sync: keep track of justifications sent to the import queue * core: grandpa: verify authority set changes dependencies * core: fork-tree: add more tests * core: grandpa: extend enacts_standard_change tests --- core/consensus/common/src/import_queue.rs | 7 +- core/finality-grandpa/src/authorities.rs | 55 +++++++++-- core/finality-grandpa/src/import.rs | 58 ++++++----- core/network/src/sync.rs | 21 +++- core/util/fork-tree/src/lib.rs | 114 +++++++++++++++++++--- 5 files changed, 205 insertions(+), 50 deletions(-) diff --git a/core/consensus/common/src/import_queue.rs b/core/consensus/common/src/import_queue.rs index 997b30ed6f..1952869187 100644 --- a/core/consensus/common/src/import_queue.rs +++ b/core/consensus/common/src/import_queue.rs @@ -358,17 +358,18 @@ impl BlockImporter { let success = self.justification_import.as_ref().map(|justification_import| { justification_import.import_justification(hash, number, justification) .map_err(|e| { - debug!("Justification import failed with {:?} for hash: {:?} number: {:?} coming from node: {:?}", e, hash, number, who); + debug!(target: "sync", "Justification import failed with {:?} for hash: {:?} number: {:?} coming from node: {:?}", e, hash, number, who); e }).is_ok() }).unwrap_or(false); + if let Some(link) = self.link.as_ref() { link.justification_imported(who, &hash, number, success); } } fn handle_import_blocks(&mut self, origin: BlockOrigin, blocks: Vec>) { - trace!(target:"sync", "Scheduling {} blocks for import", blocks.len()); + trace!(target: "sync", "Scheduling {} blocks for import", blocks.len()); self.worker_sender .send(BlockImportWorkerMsg::ImportBlocks(origin, blocks)) .expect("1. This is holding a sender to the worker, 2. the worker should not quit while a sender is still held; qed"); @@ -423,7 +424,7 @@ impl> BlockImportWorker { _ => Default::default(), }; - trace!(target:"sync", "Starting import of {} blocks {}", count, blocks_range); + trace!(target: "sync", "Starting import of {} blocks {}", count, blocks_range); let mut results = vec![]; diff --git a/core/finality-grandpa/src/authorities.rs b/core/finality-grandpa/src/authorities.rs index 38bcec2347..49917ae1c2 100644 --- a/core/finality-grandpa/src/authorities.rs +++ b/core/finality-grandpa/src/authorities.rs @@ -351,14 +351,18 @@ where /// authority set change (without triggering it), ensuring that if there are /// multiple changes in the same branch, finalizing this block won't /// finalize past multiple transitions (i.e. transitions must be finalized - /// in-order). The given function `is_descendent_of` should return `true` if - /// the second hash (target) is a descendent of the first hash (base). + /// in-order). Returns `Some(true)` if the block being finalized enacts a + /// change that can be immediately applied, `Some(false)` if the block being + /// finalized enacts a change but it cannot be applied yet since there are + /// other dependent changes, and `None` if no change is enacted. The given + /// function `is_descendent_of` should return `true` if the second hash + /// (target) is a descendent of the first hash (base). pub fn enacts_standard_change( &self, finalized_hash: H, finalized_number: N, is_descendent_of: &F, - ) -> Result> + ) -> Result, fork_tree::Error> where F: Fn(&H, &H) -> Result, E: std::error::Error, { @@ -659,21 +663,51 @@ mod tests { delay_kind: DelayKind::Finalized, }; + let change_b = PendingChange { + next_authorities: set_a.clone(), + delay: 10, + canon_height: 20, + canon_hash: "hash_b", + delay_kind: DelayKind::Finalized, + }; + authorities.add_pending_change(change_a.clone(), &static_is_descendent_of(false)).unwrap(); + authorities.add_pending_change(change_b.clone(), &static_is_descendent_of(true)).unwrap(); let is_descendent_of = is_descendent_of(|base, hash| match (*base, *hash) { - ("hash_a", "hash_b") => true, + ("hash_a", "hash_d") => true, + ("hash_a", "hash_e") => true, + ("hash_b", "hash_d") => true, + ("hash_b", "hash_e") => true, ("hash_a", "hash_c") => false, + ("hash_b", "hash_c") => false, _ => unreachable!(), }); // "hash_c" won't finalize the existing change since it isn't a descendent - assert!(!authorities.enacts_standard_change("hash_c", 15, &is_descendent_of).unwrap()); - // "hash_b" at depth 14 won't work either - assert!(!authorities.enacts_standard_change("hash_b", 14, &is_descendent_of).unwrap()); + assert_eq!( + authorities.enacts_standard_change("hash_c", 15, &is_descendent_of).unwrap(), + None, + ); + + // "hash_d" at depth 14 won't work either + assert_eq!( + authorities.enacts_standard_change("hash_d", 14, &is_descendent_of).unwrap(), + None, + ); // but it should work at depth 15 (change height + depth) - assert!(authorities.enacts_standard_change("hash_b", 15, &is_descendent_of).unwrap()); + assert_eq!( + authorities.enacts_standard_change("hash_d", 15, &is_descendent_of).unwrap(), + Some(true), + ); + + // finalizing "hash_e" at depth 20 will trigger change at "hash_b", but + // it can't be applied yet since "hash_a" must be applied first + assert_eq!( + authorities.enacts_standard_change("hash_e", 30, &is_descendent_of).unwrap(), + Some(false), + ); } #[test] @@ -709,7 +743,10 @@ mod tests { // there's an effective change triggered at block 15 but not a standard one. // so this should do nothing. - assert!(!authorities.enacts_standard_change("hash_c", 15, &static_is_descendent_of(true)).unwrap()); + assert_eq!( + authorities.enacts_standard_change("hash_c", 15, &static_is_descendent_of(true)).unwrap(), + None, + ); // throw a standard change into the mix to prove that it's discarded // for being on the same fork. diff --git a/core/finality-grandpa/src/import.rs b/core/finality-grandpa/src/import.rs index 9ff3486b86..0c59bd60fe 100644 --- a/core/finality-grandpa/src/import.rs +++ b/core/finality-grandpa/src/import.rs @@ -116,7 +116,7 @@ impl, RA, PRA> JustificationImport } enum AppliedChanges { - Standard, + Standard(bool), // true if the change is ready to be applied (i.e. it's a root) Forced(NewAuthoritySet), None, } @@ -124,7 +124,7 @@ enum AppliedChanges { impl AppliedChanges { fn needs_justification(&self) -> bool { match *self { - AppliedChanges::Standard => true, + AppliedChanges::Standard(_) => true, AppliedChanges::Forced(_) | AppliedChanges::None => false, } } @@ -345,8 +345,8 @@ impl, RA, PRA> GrandpaBlockImport, RA, PRA> GrandpaBlockImport Some(new), - AppliedChanges::Standard => None, // the change isn't actually applied yet. + AppliedChanges::Standard(_) => None, // the change isn't actually applied yet. AppliedChanges::None => None, }; @@ -405,7 +405,7 @@ impl, RA, PRA> BlockImport let pending_changes = self.make_authorities_changes(&mut block, hash)?; // we don't want to finalize on `inner.import_block` - let justification = block.justification.take(); + let mut justification = block.justification.take(); let enacts_consensus_change = new_authorities.is_some(); let import_result = self.inner.import_block(block, new_authorities); @@ -435,23 +435,34 @@ impl, RA, PRA> BlockImport } let needs_justification = applied_changes.needs_justification(); - if let AppliedChanges::Forced(new) = applied_changes { - // NOTE: when we do a force change we are "discrediting" the old set so we - // ignore any justifications from them. this block may contain a justification - // which should be checked and imported below against the new authority - // triggered by this forced change. the new grandpa voter will start at the - // last median finalized block (which is before the block that enacts the - // change), full nodes syncing the chain will not be able to successfully - // import justifications for those blocks since their local authority set view - // is still of the set before the forced change was enacted, still after #1867 - // they should import the block and discard the justification, and they will - // then request a justification from sync if it's necessary (which they should - // then be able to successfully validate). - let _ = self.send_voter_commands.unbounded_send(VoterCommand::ChangeAuthorities(new)); - - // we must clear all pending justifications requests, presumably they won't be - // finalized hence why this forced changes was triggered - imported_aux.clear_justification_requests = true; + + match applied_changes { + AppliedChanges::Forced(new) => { + // NOTE: when we do a force change we are "discrediting" the old set so we + // ignore any justifications from them. this block may contain a justification + // which should be checked and imported below against the new authority + // triggered by this forced change. the new grandpa voter will start at the + // last median finalized block (which is before the block that enacts the + // change), full nodes syncing the chain will not be able to successfully + // import justifications for those blocks since their local authority set view + // is still of the set before the forced change was enacted, still after #1867 + // they should import the block and discard the justification, and they will + // then request a justification from sync if it's necessary (which they should + // then be able to successfully validate). + let _ = self.send_voter_commands.unbounded_send(VoterCommand::ChangeAuthorities(new)); + + // we must clear all pending justifications requests, presumably they won't be + // finalized hence why this forced changes was triggered + imported_aux.clear_justification_requests = true; + }, + AppliedChanges::Standard(false) => { + // we can't apply this change yet since there are other dependent changes that we + // need to apply first, drop any justification that might have been provided with + // the block to make sure we request them from `sync` which will ensure they'll be + // applied in-order. + justification.take(); + }, + _ => {}, } if !needs_justification && !enacts_consensus_change { @@ -481,6 +492,7 @@ impl, RA, PRA> BlockImport if enacts_consensus_change { self.consensus_changes.lock().note_change((number, hash)); } + imported_aux.needs_justification = true; } } diff --git a/core/network/src/sync.rs b/core/network/src/sync.rs index 14222798ef..f1464cbed9 100644 --- a/core/network/src/sync.rs +++ b/core/network/src/sync.rs @@ -98,6 +98,7 @@ struct PendingJustifications { pending_requests: VecDeque>, peer_requests: HashMap>, previous_requests: HashMap, Vec<(NodeIndex, Instant)>>, + importing_requests: HashSet>, } impl PendingJustifications { @@ -107,6 +108,7 @@ impl PendingJustifications { pending_requests: VecDeque::new(), peer_requests: HashMap::new(), previous_requests: HashMap::new(), + importing_requests: HashSet::new(), } } @@ -243,6 +245,16 @@ impl PendingJustifications { /// Queues a retry in case the import failed. fn justification_import_result(&mut self, hash: B::Hash, number: NumberFor, success: bool) { let request = (hash, number); + + if !self.importing_requests.remove(&request) { + debug!(target: "sync", "Got justification import result for unknown justification {:?} {:?} request.", + request.0, + request.1, + ); + + return; + }; + if success { if self.justifications.finalize_root(&request.0).is_none() { warn!(target: "sync", "Imported justification for {:?} {:?} which isn't a root in the tree: {:?}", @@ -250,6 +262,7 @@ impl PendingJustifications { request.1, self.justifications.roots().collect::>(), ); + return; }; @@ -278,6 +291,7 @@ impl PendingJustifications { if let Some(request) = self.peer_requests.remove(&who) { if let Some(justification) = justification { import_queue.import_justification(who.clone(), request.0, request.1, justification); + self.importing_requests.insert(request); return } @@ -285,6 +299,7 @@ impl PendingJustifications { .entry(request) .or_insert(Vec::new()) .push((who, Instant::now())); + self.pending_requests.push_front(request); } } @@ -299,7 +314,11 @@ impl PendingJustifications { ) -> Result<(), fork_tree::Error> where F: Fn(&B::Hash, &B::Hash) -> Result { - use std::collections::HashSet; + if self.importing_requests.contains(&(*best_finalized_hash, best_finalized_number)) { + // we imported this justification ourselves, so we should get back a response + // from the import queue through `justification_import_result` + return Ok(()); + } self.justifications.finalize(best_finalized_hash, best_finalized_number, &is_descendent_of)?; diff --git a/core/util/fork-tree/src/lib.rs b/core/util/fork-tree/src/lib.rs index 71c83f57ca..f194ac8915 100644 --- a/core/util/fork-tree/src/lib.rs +++ b/core/util/fork-tree/src/lib.rs @@ -228,17 +228,19 @@ impl ForkTree where /// Checks if any node in the tree is finalized by either finalizing the /// node itself or a child node that's not in the tree, guaranteeing that /// the node being finalized isn't a descendent of any of the node's - /// children. The given `predicate` is checked on the prospective finalized - /// root and must pass for finalization to occur. The given function - /// `is_descendent_of` should return `true` if the second hash (target) is a - /// descendent of the first hash (base). + /// children. Returns `Some(true)` if the node being finalized is a root, + /// `Some(false)` if the node being finalized is not a root, and `None` if + /// no node in the tree is finalized. The given `predicate` is checked on + /// the prospective finalized root and must pass for finalization to occur. + /// The given function `is_descendent_of` should return `true` if the second + /// hash (target) is a descendent of the first hash (base). pub fn finalizes_any_with_descendent_if( &self, hash: &H, number: N, is_descendent_of: &F, predicate: P, - ) -> Result> + ) -> Result, Error> where E: std::error::Error, F: Fn(&H, &H) -> Result, P: Fn(&V) -> bool, @@ -253,20 +255,20 @@ impl ForkTree where // tree, if we find a valid node that passes the predicate then we must // ensure that we're not finalizing past any of its child nodes. for node in self.node_iter() { - if node.hash == *hash || is_descendent_of(&node.hash, hash)? { - if predicate(&node.data) { + if predicate(&node.data) { + if node.hash == *hash || is_descendent_of(&node.hash, hash)? { for node in node.children.iter() { if node.number <= number && is_descendent_of(&node.hash, &hash)? { return Err(Error::UnfinalizedAncestor); } } - return Ok(true); + return Ok(Some(self.roots.iter().any(|root| root.hash == node.hash))); } } } - Ok(false) + Ok(None) } /// Finalize a root in the tree by either finalizing the node itself or a @@ -298,8 +300,8 @@ impl ForkTree where // we're not finalizing past any children node. let mut position = None; for (i, root) in self.roots.iter().enumerate() { - if root.hash == *hash || is_descendent_of(&root.hash, hash)? { - if predicate(&root.data) { + if predicate(&root.data) { + if root.hash == *hash || is_descendent_of(&root.hash, hash)? { for node in root.children.iter() { if node.number <= number && is_descendent_of(&node.hash, &hash)? { return Err(Error::UnfinalizedAncestor); @@ -692,7 +694,19 @@ mod test { &is_descendent_of, |c| c.effective <= 2, ), - Ok(false), + Ok(None), + ); + + // finalizing "D" will finalize a block from the tree, but it can't be applied yet + // since it is not a root change + assert_eq!( + tree.finalizes_any_with_descendent_if( + &"D", + 10, + &is_descendent_of, + |c| c.effective == 10, + ), + Ok(Some(false)), ); // finalizing "B" doesn't finalize "A0" since the predicate doesn't pass, @@ -720,7 +734,7 @@ mod test { &is_descendent_of, |c| c.effective <= 5, ), - Ok(true), + Ok(Some(true)), ); assert_eq!( @@ -757,7 +771,7 @@ mod test { &is_descendent_of, |c| c.effective <= 100, ), - Ok(true), + Ok(Some(true)), ); assert_eq!( @@ -788,4 +802,76 @@ mod test { ], ); } + + #[test] + fn minimizes_calls_to_is_descendent_of() { + use std::sync::atomic::{AtomicUsize, Ordering}; + + let n_is_descendent_of_calls = AtomicUsize::new(0); + + let is_descendent_of = |_: &&str, _: &&str| -> Result { + n_is_descendent_of_calls.fetch_add(1, Ordering::SeqCst); + Ok(true) + }; + + { + // Deep tree where we want to call `finalizes_any_with_descendent_if`. The + // search for the node should first check the predicate (which is cheaper) and + // only then call `is_descendent_of` + let mut tree = ForkTree::new(); + let letters = vec!["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K"]; + + for (i, letter) in letters.iter().enumerate() { + tree.import::<_, TestError>(*letter, i, i, &|_, _| Ok(true)).unwrap(); + } + + // "L" is a descendent of "K", but the predicate will only pass for "K", + // therefore only one call to `is_descendent_of` should be made + assert_eq!( + tree.finalizes_any_with_descendent_if( + &"L", + 11, + &is_descendent_of, + |i| *i == 10, + ), + Ok(Some(false)), + ); + + assert_eq!( + n_is_descendent_of_calls.load(Ordering::SeqCst), + 1, + ); + } + + n_is_descendent_of_calls.store(0, Ordering::SeqCst); + + { + // Multiple roots in the tree where we want to call `finalize_with_descendent_if`. + // The search for the root node should first check the predicate (which is cheaper) + // and only then call `is_descendent_of` + let mut tree = ForkTree::new(); + let letters = vec!["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K"]; + + for (i, letter) in letters.iter().enumerate() { + tree.import::<_, TestError>(*letter, i, i, &|_, _| Ok(false)).unwrap(); + } + + // "L" is a descendent of "K", but the predicate will only pass for "K", + // therefore only one call to `is_descendent_of` should be made + assert_eq!( + tree.finalize_with_descendent_if( + &"L", + 11, + &is_descendent_of, + |i| *i == 10, + ), + Ok(FinalizationResult::Changed(Some(10))), + ); + + assert_eq!( + n_is_descendent_of_calls.load(Ordering::SeqCst), + 1, + ); + } + } } -- GitLab From 3628a932187cc53a1a765fab935baea8a84ec1ce Mon Sep 17 00:00:00 2001 From: Kian Peymani Date: Sat, 23 Mar 2019 01:11:33 +0430 Subject: [PATCH 066/120] Self-Vote for Staking (among others.) (#2078) * initial doc for the staking module * Remove md style links. * Remove todos. * Add rust code types * Rename and fix review notes. * Add new md file * Final touches. * Migrate compleatly to rustdoc * Update link * Fix heading * Final touches wrt the new template. * Remove empty prereq. * Fix more reviews * Some final nits. * Fix some side issues. * Fix another set of reviews * Fix + stabilize leftover reivews. * Remove unused test parameters * Fix typo. * Merge redundant loops * Adds phantom self-vote * Fix broken tests. * Refactor some names to match the reference. * Remove redundant inner loops from election round. * Introduce phragmen post-processing. * Some fixes and todos. * Fix some tests with new phragmen params * Fix test * Bump spec * Fix wasm build * Fix tests and phragmen fallback. Avoid double-controlling * Fix and rebuild wasm * Whitespaces, whitespaces everywhere. * Rebuild * Disable post-processing. * Identify by stash, not controller account. * Couple of fixes * Fix first test * Fix invulnerability_should_work * Fix a couple more tests * Fix more tests * Fix more tests * Fix more tests * Fix some tests * Fix update-ledger. * Fix update-ledger. * Fix another test * Fix another test * Fix rest of staking tests * Remove printlns * Rebuild wasm * Fix & tests for auth/val syncing * Fix up threading for tests * Remove superfluous asserts --- Cargo.lock | 1 + .../substrate_test_runtime.compact.wasm | Bin 179788 -> 56614 bytes node/cli/src/chain_spec.rs | 2 - node/executor/src/lib.rs | 17 +- node/runtime/src/lib.rs | 4 +- .../release/node_runtime.compact.wasm | Bin 1050673 -> 923504 bytes srml/consensus/src/lib.rs | 6 + srml/session/Cargo.toml | 1 + srml/session/src/lib.rs | 51 +- srml/staking/src/lib.rs | 472 +++++-- srml/staking/src/mock.rs | 78 +- srml/staking/src/phragmen.rs | 332 +++-- srml/staking/src/tests.rs | 1142 +++++++++++------ 13 files changed, 1397 insertions(+), 709 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 21fdf12ddb..52eec67507 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3300,6 +3300,7 @@ name = "srml-session" version = "0.1.0" dependencies = [ "hex-literal 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", + "lazy_static 1.3.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)", diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 6e4e047e40f256bdba03d331c8e6f72332e63c24..c4df3f06b5bb1e46508ff2c11a5c39a9738d6838 100644 GIT binary patch delta 3238 zcmZuz3v5;89Y5dKg0!XW=>sStctM6O40_&=3ZYk)hKc2AMcfe1Q(EXn9(A}xdO>Ik zLaF(>9GECfH-|h*+rvv9QZObgGm5cJ$hL%KQITvw7tAyox8J$9g^tnop5OQVzWaaw zzLS3NefC=?GdgAw)S3}stR3~%P_l*br7Q7FmNt_nmR0ruo)gOI@oX!L^G#d3xw>+W zdxYb1VkF)ZeqJ{EKGMN5#5&RuCdB5ELr*q!bMed=<;TX~4e6{JN`?;?*S0YAiP@F5}cCmAF#*m)y z%A8tC_OQq1k0u-0viVEMRd!*1jNWWz*XEbw{Qd>`lw4*LYfh4O_Ib^C(jI0%SxU&| zP+mBNk}uh}izc#di}Fbi+r8-Lsr{=}JGXZu@=g+?j}o13%0MQ2Q&bX5Y<7}5jkZQ~ zGNUfO4@dkIE+?LB!J-_Cov8&|zhy+&`}Bty=tB21!v~Y>@H2OF2Kj_7UbYnRNWI2x zEqjslvemWKseO5PqqaIqYTAltK<{4Rq5@L?1R)pLlZnT3lC4o*=wrNx9ZLKJHvdZ0 z;5l>UQ{;X2o0YT42khp`X{dC{bAOt4BAqf4j;a`XyNDsF8j=(>lz<#^rvhj}N@?Mn z78YL>wQtp`-BH4M4a-vr7Kbej=QEA&l;?|mo{MjL=2M<8MxJ9J`8%HZT(sp%*!;_7 z8F1A5;=&>An=ouX-oxguABlwP)-TFEx2aOYd`UFlciF}Dm%;CE>@2#F3U_5-IF?9` z$iCh94z?pXC)V%rUMgxO@pkq@avVI4-7pN|)HiJFk9S{RybT@-);4}Z(92a#!&z+8 z*mTkC$xYL5bH%KCQyco6{zeHO36xf%+E!ARs)udF)%C{Hl2(Yiy3xwWE0v z`7->f`LjWg=(&~$k;C6wrcaJEuhA`S@n(zT+rqn z*Rr69HM{-p9j7TF00U)&}Mz z0ArX_nD^Q)f}Hlf-UQR~J->r!Ki%^tExwfUun*ZpDry79_p)to+&{Cw`yd{uixZ7T z7nW-DVDy#$wYpn-`=a~Puf6d48%=q5-!ybqA@b?YUqSivyPn3H)EBdJUF#-XNu>by zQ3gtsK#D->F~o~{FQ5XpB%B1JmqTm9)zmoxLh>3|meq=l? zyP2{mO(dVVAQcS$U3s0Fqr2i0p|gS0T;nA zLLU35qfcaVsZOW%<3P*=5w$W39R2hg=7ER9Aop#0G(Xo{w|2>Mt7{W$mn0hMv+-ZT z_~7fe=>lF-WLI!J-BdkK5_La#YCoO8`>w6Xrs+$P=o^OM1ugq&qR13X(~%utlT1e! zZJl2{HRwD*hXrR3Q=RuUM|DKUGc3(hL|qS-AE5QTEvlmI*q&$jwy!&4aPqT%==2vzqjHF&t4 z&KYjn68tKjq^Y)SOV*gGsSTPEe7v8I45lBYgM$O@w20RXP4#3!k}MlJ7;f-kJ5~5p zTwM@U!?jJ#bc4dfv~q+Z%M!xtvTmB9tO{diO#NAdv3P*XpLWpvB1y4CL6aR(ltf$e z#c>0gX%q^gEnBARnu@C_j`+~hJDvVfIAXVS z6%0j@Yy~HntvqRVdLUOj>4ZWc zbo_MaOYuZk)eT3mTv?hj*}>bbqT)F#QR^(PO+4GTT;kWSt*BUr+1aKjD6XX_g6#W2 zZxFx-I(h@drZs5s8FsNt)#AuH>1bss-O2p*6ha`!)xVN;V50mTZ*L`h9&4S=IAJPP=1U)U!bXuAj?pgAX>7f zX^*gZ8KaMXa*TdVcmbLaU0;w8L^4I^_>mJdK?`t6AXHWMd{;)YVijAOIVPBQicaC- zTQ?LB0?}k!vy5QJDY}%`T}9DNRDoOISpq%56DK z%Xk;pRPPSE#O^K j^h`~_CHEy+mCWGc8T#xnTwX=iWL=NJi#b`4@mKa=2t<&i literal 179788 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 diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index 927e5595d1..7edec08b43 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -107,7 +107,6 @@ fn staging_testnet_config_genesis() -> GenesisConfig { current_era: 0, offline_slash: Perbill::from_billionths(1_000_000), session_reward: Perbill::from_billionths(2_065), - current_offline_slash: 0, current_session_reward: 0, validator_count: 7, sessions_per_era: 12, @@ -263,7 +262,6 @@ pub fn testnet_genesis( bonding_duration: 2 * 60 * 12, offline_slash: Perbill::zero(), session_reward: Perbill::zero(), - current_offline_slash: 0, current_session_reward: 0, offline_slash_grace: 0, stakers: initial_authorities.iter().map(|x| (x.0.clone(), x.1.clone(), STASH, StakerStatus::Validator)).collect(), diff --git a/node/executor/src/lib.rs b/node/executor/src/lib.rs index 1a96b8067f..22bf1a9b79 100644 --- a/node/executor/src/lib.rs +++ b/node/executor/src/lib.rs @@ -308,7 +308,6 @@ mod tests { bonding_duration: 0, offline_slash: Perbill::zero(), session_reward: Perbill::zero(), - current_offline_slash: 0, current_session_reward: 0, offline_slash_grace: 0, invulnerables: vec![alice(), bob(), charlie()], @@ -443,13 +442,7 @@ mod tests { ] ); - // let mut digest = generic::Digest::::default(); - // digest.push(Log::from(::grandpa::RawLog::AuthoritiesChangeSignal(0, vec![ - // (Keyring::Charlie.to_raw_public().into(), 1), - // (Keyring::Bob.to_raw_public().into(), 1), - // (Keyring::Alice.to_raw_public().into(), 1), - // ]))); - let digest = generic::Digest::::default(); // TODO test this + let digest = generic::Digest::::default(); assert_eq!(Header::decode(&mut &block2.0[..]).unwrap().digest, digest); (block1, block2) @@ -578,14 +571,6 @@ mod tests { phase: Phase::Finalization, event: Event::session(session::RawEvent::NewSession(1)) }, - // EventRecord { // TODO: this might be wrong. - // phase: Phase::Finalization, - // event: Event::grandpa(::grandpa::RawEvent::NewAuthorities(vec![ - // (Keyring::Charlie.to_raw_public().into(), 1), - // (Keyring::Bob.to_raw_public().into(), 1), - // (Keyring::Alice.to_raw_public().into(), 1), - // ])), - // }, EventRecord { phase: Phase::Finalization, event: Event::treasury(treasury::RawEvent::Spending(0)) diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index c069bed172..80260801ef 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 38, - impl_version: 40, + spec_version: 39, + impl_version: 39, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 36103fef20f90dc4620feca9b19072b756d9eacc..3af4c1768d944ea6959626a002a34ef27a0bcfa2 100644 GIT binary patch literal 923504 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
  • 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[hH+CdfmrT8vIMmjti#Q=KINjoDm| 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
    qU2B0B>v-|RB-crkT-XH0U2 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 z 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 M^>W24yVVmv0r|K|#Q*>R diff --git a/srml/example/src/lib.rs b/srml/example/src/lib.rs index 7305110af6..6ceb6da236 100644 --- a/srml/example/src/lib.rs +++ b/srml/example/src/lib.rs @@ -66,7 +66,6 @@ decl_storage! { // A map that has enumerable entries. Bar get(bar) config(): linked_map T::AccountId => T::Balance; - // this one uses the default, we'll demonstrate the usage of 'mutate' API. Foo get(foo) config(): T::Balance; } diff --git a/srml/metadata/src/lib.rs b/srml/metadata/src/lib.rs index fc8516f775..9b03daafa6 100644 --- a/srml/metadata/src/lib.rs +++ b/srml/metadata/src/lib.rs @@ -263,6 +263,12 @@ pub enum StorageFunctionType { value: DecodeDifferentStr, is_linked: bool, }, + DoubleMap { + key1: DecodeDifferentStr, + key2: DecodeDifferentStr, + value: DecodeDifferentStr, + key2_hasher: DecodeDifferentStr, + }, } /// A storage function modifier. @@ -304,8 +310,10 @@ pub enum RuntimeMetadata { V0(RuntimeMetadataDeprecated), /// Version 1 for runtime metadata. No longer used. V1(RuntimeMetadataDeprecated), - /// Version 2 for runtime metadata. - V2(RuntimeMetadataV2), + /// Version 2 for runtime metadata. No longer used. + V2(RuntimeMetadataDeprecated), + /// Version 3 for runtime metadata. + V3(RuntimeMetadataV3), } /// Enum that should fail. @@ -325,10 +333,10 @@ impl Decode for RuntimeMetadataDeprecated { } } -/// The metadata of a runtime version 2. +/// The metadata of a runtime. #[derive(Eq, Encode, PartialEq)] #[cfg_attr(feature = "std", derive(Decode, Debug, Serialize))] -pub struct RuntimeMetadataV2 { +pub struct RuntimeMetadataV3 { pub modules: DecodeDifferentArray, } diff --git a/srml/support/procedural/src/lib.rs b/srml/support/procedural/src/lib.rs index f1b3344a8b..342745efde 100644 --- a/srml/support/procedural/src/lib.rs +++ b/srml/support/procedural/src/lib.rs @@ -49,6 +49,8 @@ use proc_macro::TokenStream; /// * storage value: `Foo: type`: implements [StorageValue](https://crates.parity.io/srml_support/storage/trait.StorageValue.html) /// * storage map: `Foo: map type => type`: implements [StorageMap](https://crates.parity.io/srml_support/storage/trait.StorageMap.html) /// * storage linked map: `Foo: linked_map type => type`: implements [StorageMap](https://crates.parity.io/srml_support/storage/trait.StorageMap.html) and [EnumarableStorageMap](https://crates.parity.io/srml_support/storage/trait.EnumerableStorageMap.html) +/// * storage double map: Foo: double_map u32, $hash(u32) => u32;` implements `StorageDoubleMap` with hasher $hash one available in `Hashable` trait +/// /!\ be careful while choosing the Hash, indeed malicious could craft second keys to lower the trie. /// /// And it can be extended as such: /// @@ -87,7 +89,7 @@ use proc_macro::TokenStream; /// ``` /// This struct can be expose as `Config` by `decl_runtime` macro. /// -/// ## Module with instances +/// ### Module with instances /// /// `decl_storage!` macro support building modules with instances with the following syntax: (DefaultInstance type /// is optional) diff --git a/srml/support/procedural/src/storage/impls.rs b/srml/support/procedural/src/storage/impls.rs index d833ead47d..5a8f7f65d5 100644 --- a/srml/support/procedural/src/storage/impls.rs +++ b/srml/support/procedural/src/storage/impls.rs @@ -541,4 +541,93 @@ impl<'a, I: Iterator> Impls<'a, I> { } } } + + pub fn double_map(self, k1ty: &syn::Type, k2ty: &syn::Type, k2_hasher: TokenStream2) -> TokenStream2 { + let Self { + scrate, + visibility, + traitinstance, + traittype, + type_infos, + fielddefault, + prefix, + name, + attrs, + instance_opts, + .. + } = self; + + let DeclStorageTypeInfos { typ, value_type, is_option, .. } = type_infos; + let option_simple_1 = option_unwrap(is_option); + + let as_double_map = quote!{ > }; + + let mutate_impl = if !is_option { + quote!{ + #as_double_map::insert(key1, key2, &val, storage) + } + } else { + quote!{ + match val { + Some(ref val) => #as_double_map::insert(key1, key2, &val, storage), + None => #as_double_map::remove(key1, key2, storage), + } + } + }; + + let InstanceOpts { + comma_instance, + equal_default_instance, + bound_instantiable, + instance, + .. + } = instance_opts; + + let final_prefix = if let Some(instance) = instance { + let const_name = syn::Ident::new(&format!("{}{}", PREFIX_FOR, name.to_string()), proc_macro2::Span::call_site()); + quote!{ #instance::#const_name.as_bytes() } + } else { + quote!{ #prefix.as_bytes() } + }; + + // generator for double map + quote!{ + #( #[ #attrs ] )* + #visibility struct #name<#traitinstance: #traittype, #instance #bound_instantiable #equal_default_instance>(#scrate::storage::generator::PhantomData<(#traitinstance #comma_instance)>); + + impl<#traitinstance: #traittype, #instance #bound_instantiable> #scrate::storage::unhashed::generator::StorageDoubleMap<#k1ty, #k2ty, #typ> for #name<#traitinstance, #instance> { + type Query = #value_type; + + fn prefix() -> &'static [u8] { + #final_prefix + } + + fn key_for(k1: &#k1ty, k2: &#k2ty) -> Vec { + let mut key = #as_double_map::prefix_for(k1); + key.extend(&#scrate::Hashable::#k2_hasher(k2)); + key + } + + fn get(key1: &#k1ty, key2: &#k2ty, storage: &S) -> Self::Query { + let key = #as_double_map::key_for(key1, key2); + storage.get(&key).#option_simple_1(|| #fielddefault) + } + + fn take(key1: &#k1ty, key2: &#k2ty, storage: &S) -> Self::Query { + let key = #as_double_map::key_for(key1, key2); + storage.take(&key).#option_simple_1(|| #fielddefault) + } + + fn mutate R, S: #scrate::GenericUnhashedStorage>(key1: &#k1ty, key2: &#k2ty, f: F, storage: &S) -> R { + let mut val = #as_double_map::get(key1, key2, storage); + + let ret = f(&mut val); + #mutate_impl ; + ret + } + + } + } + + } } diff --git a/srml/support/procedural/src/storage/mod.rs b/srml/support/procedural/src/storage/mod.rs index 7bb547c4f7..82290e0de4 100644 --- a/srml/support/procedural/src/storage/mod.rs +++ b/srml/support/procedural/src/storage/mod.rs @@ -131,6 +131,7 @@ struct DeclStorageBuild { enum DeclStorageType { Map(DeclStorageMap), LinkedMap(DeclStorageLinkedMap), + DoubleMap(DeclStorageDoubleMap), Simple(syn::Type), } @@ -150,6 +151,24 @@ struct DeclStorageLinkedMap { pub value: syn::Type, } +#[derive(Parse, ToTokens, Debug)] +struct DeclStorageDoubleMap { + pub map_keyword: ext::CustomToken, + pub key1: syn::Type, + pub comma_keyword: Token![,], + pub key2_hasher: DeclStorageDoubleMapHasher, + pub key2: ext::Parens, + pub ass_keyword: Token![=>], + pub value: syn::Type, +} + +#[derive(Parse, ToTokens, Debug)] +enum DeclStorageDoubleMapHasher { + Blake2_256(ext::CustomToken), + Twox256(ext::CustomToken), + Twox128(ext::CustomToken), +} + #[derive(Parse, ToTokens, Debug)] struct DeclStorageDefault { pub equal_token: Token![=], @@ -165,4 +184,8 @@ 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!(DoubleMapKeyword, "double_map", "double_map as keyword"); +custom_keyword!(Blake2_256Keyword, "blake2_256", "Blake2_256 as keyword"); +custom_keyword!(Twox256Keyword, "twox_256", "Twox_256 as keyword"); +custom_keyword!(Twox128Keyword, "twox_128", "Twox_128 as keyword"); custom_keyword_impl!(ExtraGenesisSkipPhantomDataField, "extra_genesis_skip_phantom_data_field", "extra_genesis_skip_phantom_data_field as keyword"); diff --git a/srml/support/procedural/src/storage/transformation.rs b/srml/support/procedural/src/storage/transformation.rs index 817e42f508..f00b5e8309 100644 --- a/srml/support/procedural/src/storage/transformation.rs +++ b/srml/support/procedural/src/storage/transformation.rs @@ -255,6 +255,9 @@ fn decl_store_extra_genesis( DeclStorageTypeInfosKind::Map {key_type, .. } => { quote!( #( #[ #attrs ] )* pub #ident: Vec<(#key_type, #storage_type)>, ) }, + DeclStorageTypeInfosKind::DoubleMap {key1_type, key2_type, .. } => { + quote!( #( #[ #attrs ] )* pub #ident: Vec<(#key1_type, #key2_type, #storage_type)>, ) + }, }); opt_build = Some(build.as_ref().map(|b| &b.expr.content).map(|b|quote!( #b )) .unwrap_or_else(|| quote!( (|config: &GenesisConfig<#traitinstance, #instance>| config.#ident.clone()) ))); @@ -295,6 +298,17 @@ fn decl_store_extra_genesis( } }} }, + DeclStorageTypeInfosKind::DoubleMap { key1_type, key2_type, .. } => { + quote!{{ + use #scrate::rstd::{cell::RefCell, marker::PhantomData}; + use #scrate::codec::{Encode, Decode}; + + let data = (#builder)(&self); + for (k1, k2, v) in data.into_iter() { + <#name<#traitinstance, #instance> as #scrate::storage::unhashed::generator::StorageDoubleMap<#key1_type, #key2_type, #typ>>::insert(&k1, &k2, &v, &storage); + } + }} + }, }); } @@ -581,6 +595,9 @@ fn decl_storage_items( DeclStorageTypeInfosKind::Map { key_type, is_linked: true } => { i.linked_map(key_type) }, + DeclStorageTypeInfosKind::DoubleMap { key1_type, key2_type, key2_hasher } => { + i.double_map(key1_type, key2_type, key2_hasher) + }, }; impls.extend(implementation) } @@ -657,6 +674,17 @@ fn impl_store_fns( } } } + DeclStorageTypeInfosKind::DoubleMap { key1_type, key2_type, .. } => { + quote!{ + pub fn #get_fn(k1: KArg1, k2: KArg2) -> #value_type + where + KArg1: #scrate::storage::generator::Borrow<#key1_type>, + KArg2: #scrate::storage::generator::Borrow<#key2_type>, + { + <#name<#traitinstance> as #scrate::storage::unhashed::generator::StorageDoubleMap<#key1_type, #key2_type, #typ>> :: get(k1.borrow(), k2.borrow(), &#scrate::storage::RuntimeStorage) + } + } + } }; items.extend(item); } @@ -714,6 +742,19 @@ fn store_functions_to_metadata ( } } }, + DeclStorageTypeInfosKind::DoubleMap { key1_type, key2_type, key2_hasher } => { + let k1ty = clean_type_string("e!(#key1_type).to_string()); + let k2ty = clean_type_string("e!(#key2_type).to_string()); + let k2_hasher = clean_type_string(&key2_hasher.to_string()); + quote!{ + #scrate::storage::generator::StorageFunctionType::DoubleMap { + key1: #scrate::storage::generator::DecodeDifferent::Encode(#k1ty), + key2: #scrate::storage::generator::DecodeDifferent::Encode(#k2ty), + value: #scrate::storage::generator::DecodeDifferent::Encode(#styp), + key2_hasher: #scrate::storage::generator::DecodeDifferent::Encode(#k2_hasher), + } + } + }, }; let modifier = if type_infos.is_option { quote!{ @@ -810,6 +851,11 @@ enum DeclStorageTypeInfosKind<'a> { key_type: &'a syn::Type, is_linked: bool, }, + DoubleMap { + key1_type: &'a syn::Type, + key2_type: &'a syn::Type, + key2_hasher: TokenStream2, + } } impl<'a> DeclStorageTypeInfosKind<'a> { @@ -832,6 +878,11 @@ fn get_type_infos(storage_type: &DeclStorageType) -> DeclStorageTypeInfos { key_type: &map.key, is_linked: true, }), + DeclStorageType::DoubleMap(ref map) => (&map.value, DeclStorageTypeInfosKind::DoubleMap { + key1_type: &map.key1, + key2_type: &map.key2.content, + key2_hasher: { let h = &map.key2_hasher; quote! { #h } }, + }), }; let extracted_type = ext::extract_type_option(value_type); diff --git a/srml/support/src/double_map.rs b/srml/support/src/double_map.rs index a6dad9eabe..80d974064d 100644 --- a/srml/support/src/double_map.rs +++ b/srml/support/src/double_map.rs @@ -31,7 +31,9 @@ use sr_std::borrow::Borrow; /// The storage key (i.e. the key under which the `Value` will be stored) is created from two parts. /// The first part is a hash of a concatenation of the `PREFIX` and `Key1`. And the second part /// is a hash of a `Key2`. -pub trait StorageDoubleMap { +/// +/// Hasher are implemented in derive_key* methods. +pub trait StorageDoubleMapWithHasher { type Key1: Codec; type Key2: Codec; type Value: Codec + Default; diff --git a/srml/support/src/hashable.rs b/srml/support/src/hashable.rs index 9bb383b2a6..886c88b23a 100644 --- a/srml/support/src/hashable.rs +++ b/srml/support/src/hashable.rs @@ -27,12 +27,12 @@ pub trait Hashable: Sized { impl Hashable for T { fn blake2_256(&self) -> [u8; 32] { - blake2_256(&self.encode()) + self.using_encoded(blake2_256) } fn twox_128(&self) -> [u8; 16] { - twox_128(&self.encode()) + self.using_encoded(twox_128) } fn twox_256(&self) -> [u8; 32] { - twox_256(&self.encode()) + self.using_encoded(twox_256) } } diff --git a/srml/support/src/lib.rs b/srml/support/src/lib.rs index 7914e7d677..cbbdcc7e4c 100644 --- a/srml/support/src/lib.rs +++ b/srml/support/src/lib.rs @@ -36,6 +36,7 @@ pub use paste; pub use sr_primitives as runtime_primitives; pub use self::storage::generator::Storage as GenericStorage; +pub use self::storage::unhashed::generator::UnhashedStorage as GenericUnhashedStorage; #[macro_use] pub mod dispatch; @@ -55,10 +56,10 @@ pub mod inherent; mod double_map; pub mod traits; -pub use self::storage::{StorageVec, StorageList, StorageValue, StorageMap, EnumerableStorageMap}; +pub use self::storage::{StorageVec, StorageList, StorageValue, StorageMap, EnumerableStorageMap, StorageDoubleMap}; pub use self::hashable::Hashable; pub use self::dispatch::{Parameter, Dispatchable, Callable, IsSubType}; -pub use self::double_map::StorageDoubleMap; +pub use self::double_map::StorageDoubleMapWithHasher; pub use runtime_io::print; #[doc(inline)] @@ -140,6 +141,12 @@ mod tests { use parity_codec::Codec; use runtime_io::{with_externalities, Blake2Hasher}; use runtime_primitives::BuildStorage; + pub use srml_metadata::{ + DecodeDifferent, StorageMetadata, StorageFunctionMetadata, + StorageFunctionType, StorageFunctionModifier, + DefaultByte, DefaultByteGetter, + }; + pub use rstd::marker::PhantomData; pub trait Trait { type BlockNumber: Codec + Default; @@ -164,6 +171,10 @@ mod tests { pub Data get(data) build(|_| vec![(15u32, 42u64)]): linked_map u32 => u64; pub GenericData get(generic_data): linked_map T::BlockNumber => T::BlockNumber; pub GenericData2 get(generic_data2): linked_map T::BlockNumber => Option; + + pub DataDM config(test_config) build(|_| vec![(15u32, 16u32, 42u64)]): double_map u32, blake2_256(u32) => u64; + pub GenericDataDM: double_map T::BlockNumber, twox_128(T::BlockNumber) => T::BlockNumber; + pub GenericData2DM: double_map T::BlockNumber, twox_256(T::BlockNumber) => Option; } } @@ -180,7 +191,7 @@ mod tests { type Map = Data; #[test] - fn basic_insert_remove_should_work() { + fn linked_map_basic_insert_remove_should_work() { with_externalities(&mut new_test_ext(), || { // initialised during genesis assert_eq!(Map::get(&15u32), 42u64); @@ -206,7 +217,7 @@ mod tests { } #[test] - fn enumeration_and_head_should_work() { + fn linked_map_enumeration_and_head_should_work() { with_externalities(&mut new_test_ext(), || { assert_eq!(Map::head(), Some(15)); assert_eq!(Map::enumerate().collect::>(), vec![(15, 42)]); @@ -257,4 +268,128 @@ mod tests { }); } + #[test] + fn double_map_basic_insert_remove_remove_prefix_should_work() { + with_externalities(&mut new_test_ext(), || { + type DoubleMap = DataDM; + // initialised during genesis + assert_eq!(DoubleMap::get(&15u32, &16u32), 42u64); + + // get / insert / take + let key1 = 17u32; + let key2 = 18u32; + assert_eq!(DoubleMap::get(key1, key2), 0u64); + DoubleMap::insert(key1, key2, 4u64); + assert_eq!(DoubleMap::get(key1, key2), 4u64); + assert_eq!(DoubleMap::take(key1, key2), 4u64); + assert_eq!(DoubleMap::get(key1, key2), 0u64); + + // mutate + DoubleMap::mutate(key1, key2, |val| { + *val = 15; + }); + assert_eq!(DoubleMap::get(key1, key2), 15u64); + + // remove + DoubleMap::remove(key1, key2); + assert_eq!(DoubleMap::get(key1, key2), 0u64); + + // remove prefix + DoubleMap::insert(key1, key2, 4u64); + DoubleMap::insert(key1, key2+1, 4u64); + DoubleMap::insert(key1+1, key2, 4u64); + DoubleMap::insert(key1+1, key2+1, 4u64); + DoubleMap::remove_prefix(key1); + assert_eq!(DoubleMap::get(key1, key2), 0u64); + assert_eq!(DoubleMap::get(key1, key2+1), 0u64); + assert_eq!(DoubleMap::get(key1+1, key2), 4u64); + assert_eq!(DoubleMap::get(key1+1, key2+1), 4u64); + }); + } + + const EXPECTED_METADATA: StorageMetadata = StorageMetadata { + functions: DecodeDifferent::Encode(&[ + StorageFunctionMetadata { + name: DecodeDifferent::Encode("Data"), + modifier: StorageFunctionModifier::Default, + ty: StorageFunctionType::Map{ + key: DecodeDifferent::Encode("u32"), value: DecodeDifferent::Encode("u64"), is_linked: true + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructData(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("GenericData"), + modifier: StorageFunctionModifier::Default, + ty: StorageFunctionType::Map{ + key: DecodeDifferent::Encode("T::BlockNumber"), value: DecodeDifferent::Encode("T::BlockNumber"), is_linked: true + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructGenericData(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("GenericData2"), + modifier: StorageFunctionModifier::Optional, + ty: StorageFunctionType::Map{ + key: DecodeDifferent::Encode("T::BlockNumber"), value: DecodeDifferent::Encode("T::BlockNumber"), is_linked: true + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructGenericData2(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("DataDM"), + modifier: StorageFunctionModifier::Default, + ty: StorageFunctionType::DoubleMap{ + key1: DecodeDifferent::Encode("u32"), + key2: DecodeDifferent::Encode("u32"), + value: DecodeDifferent::Encode("u64"), + key2_hasher: DecodeDifferent::Encode("blake2_256"), + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructDataDM(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("GenericDataDM"), + modifier: StorageFunctionModifier::Default, + ty: StorageFunctionType::DoubleMap{ + key1: DecodeDifferent::Encode("T::BlockNumber"), + key2: DecodeDifferent::Encode("T::BlockNumber"), + value: DecodeDifferent::Encode("T::BlockNumber"), + key2_hasher: DecodeDifferent::Encode("twox_128"), + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructGenericDataDM(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + StorageFunctionMetadata { + name: DecodeDifferent::Encode("GenericData2DM"), + modifier: StorageFunctionModifier::Optional, + ty: StorageFunctionType::DoubleMap{ + key1: DecodeDifferent::Encode("T::BlockNumber"), + key2: DecodeDifferent::Encode("T::BlockNumber"), + value: DecodeDifferent::Encode("T::BlockNumber"), + key2_hasher: DecodeDifferent::Encode("twox_256"), + }, + default: DecodeDifferent::Encode( + DefaultByteGetter(&__GetByteStructGenericData2DM(PhantomData::)) + ), + documentation: DecodeDifferent::Encode(&[]), + }, + ]) + }; + + #[test] + fn store_metadata() { + let metadata = Module::::store_metadata(); + assert_eq!(EXPECTED_METADATA, metadata); + } } diff --git a/srml/support/src/metadata.rs b/srml/support/src/metadata.rs index 7f10b1136e..f7594d27b7 100644 --- a/srml/support/src/metadata.rs +++ b/srml/support/src/metadata.rs @@ -16,7 +16,7 @@ pub use srml_metadata::{ DecodeDifferent, FnEncode, RuntimeMetadata, - ModuleMetadata, RuntimeMetadataV2, + ModuleMetadata, RuntimeMetadataV3, DefaultByteGetter, RuntimeMetadataPrefixed, }; @@ -36,8 +36,8 @@ macro_rules! impl_runtime_metadata { ) => { impl $runtime { pub fn metadata() -> $crate::metadata::RuntimeMetadataPrefixed { - $crate::metadata::RuntimeMetadata::V2 ( - $crate::metadata::RuntimeMetadataV2 { + $crate::metadata::RuntimeMetadata::V3 ( + $crate::metadata::RuntimeMetadataV3 { modules: $crate::__runtime_modules_to_metadata!($runtime;; $( $rest )*), } ).into() @@ -377,8 +377,8 @@ mod tests { event_module2::Module with Event Storage Call, ); - const EXPECTED_METADATA: RuntimeMetadata = RuntimeMetadata::V2( - RuntimeMetadataV2 { + const EXPECTED_METADATA: RuntimeMetadata = RuntimeMetadata::V3( + RuntimeMetadataV3 { modules: DecodeDifferent::Encode(&[ ModuleMetadata { name: DecodeDifferent::Encode("system"), diff --git a/srml/support/src/storage/generator.rs b/srml/support/src/storage/generator.rs index a0586963b7..18bc769d82 100644 --- a/srml/support/src/storage/generator.rs +++ b/srml/support/src/storage/generator.rs @@ -48,6 +48,8 @@ use crate::codec; use crate::rstd::vec::Vec; +#[cfg(feature = "std")] +use crate::storage::unhashed::generator::UnhashedStorage; #[doc(hidden)] pub use crate::rstd::borrow::Borrow; #[doc(hidden)] @@ -101,20 +103,19 @@ pub trait Storage { #[cfg(feature = "std")] impl Storage for (crate::rstd::cell::RefCell<&mut sr_primitives::StorageOverlay>, PhantomData) { fn exists(&self, key: &[u8]) -> bool { - self.0.borrow().contains_key(S::hash(key).as_ref()) + UnhashedStorage::exists(self, &S::hash(key)) } fn get(&self, key: &[u8]) -> Option { - self.0.borrow().get(S::hash(key).as_ref()) - .map(|x| codec::Decode::decode(&mut x.as_slice()).expect("Unable to decode expected type.")) + UnhashedStorage::get(self, &S::hash(key)) } fn put(&self, key: &[u8], val: &T) { - self.0.borrow_mut().insert(S::hash(key).to_vec(), codec::Encode::encode(val)); + UnhashedStorage::put(self, &S::hash(key), val) } fn kill(&self, key: &[u8]) { - self.0.borrow_mut().remove(S::hash(key).as_ref()); + UnhashedStorage::kill(self, &S::hash(key)) } } diff --git a/srml/support/src/storage/mod.rs b/srml/support/src/storage/mod.rs index ec758092f7..b1b8766b90 100644 --- a/srml/support/src/storage/mod.rs +++ b/srml/support/src/storage/mod.rs @@ -23,6 +23,7 @@ use crate::codec::{Codec, Encode, Decode, KeyedVec, Input}; #[macro_use] pub mod generator; +pub mod unhashed; struct IncrementalInput<'a> { key: &'a [u8], @@ -56,84 +57,73 @@ impl<'a> Input for IncrementalChildInput<'a> { /// Return the value of the item in storage under `key`, or `None` if there is no explicit entry. pub fn get(key: &[u8]) -> Option { - let key = twox_128(key); - runtime_io::read_storage(&key[..], &mut [0; 0][..], 0).map(|_| { - let mut input = IncrementalInput { - key: &key[..], - pos: 0, - }; - Decode::decode(&mut input).expect("storage is not null, therefore must be a valid type") - }) + unhashed::get(&twox_128(key)) } /// Return the value of the item in storage under `key`, or the type's default if there is no /// explicit entry. pub fn get_or_default(key: &[u8]) -> T { - get(key).unwrap_or_else(Default::default) + unhashed::get_or_default(&twox_128(key)) } /// Return the value of the item in storage under `key`, or `default_value` if there is no /// explicit entry. pub fn get_or(key: &[u8], default_value: T) -> T { - get(key).unwrap_or(default_value) + unhashed::get_or(&twox_128(key), default_value) } /// Return the value of the item in storage under `key`, or `default_value()` if there is no /// explicit entry. pub fn get_or_else T>(key: &[u8], default_value: F) -> T { - get(key).unwrap_or_else(default_value) + unhashed::get_or_else(&twox_128(key), default_value) } /// Put `value` in storage under `key`. pub fn put(key: &[u8], value: &T) { - value.using_encoded(|slice| runtime_io::set_storage(&twox_128(key)[..], slice)); + unhashed::put(&twox_128(key), value) } /// Remove `key` from storage, returning its value if it had an explicit entry or `None` otherwise. pub fn take(key: &[u8]) -> Option { - let r = get(key); - if r.is_some() { - kill(key); - } - r + unhashed::take(&twox_128(key)) } /// Remove `key` from storage, returning its value, or, if there was no explicit entry in storage, /// the default for its type. pub fn take_or_default(key: &[u8]) -> T { - take(key).unwrap_or_else(Default::default) + unhashed::take_or_default(&twox_128(key)) } /// Return the value of the item in storage under `key`, or `default_value` if there is no /// explicit entry. Ensure there is no explicit entry on return. pub fn take_or(key: &[u8], default_value: T) -> T { - take(key).unwrap_or(default_value) + unhashed::take_or(&twox_128(key), default_value) } /// Return the value of the item in storage under `key`, or `default_value()` if there is no /// explicit entry. Ensure there is no explicit entry on return. pub fn take_or_else T>(key: &[u8], default_value: F) -> T { - take(key).unwrap_or_else(default_value) + unhashed::take_or_else(&twox_128(key), default_value) } /// Check to see if `key` has an explicit entry in storage. pub fn exists(key: &[u8]) -> bool { - runtime_io::exists_storage(&twox_128(key)[..]) + unhashed::exists(&twox_128(key)) } /// Ensure `key` has no explicit entry in storage. pub fn kill(key: &[u8]) { - runtime_io::clear_storage(&twox_128(key)[..]); + unhashed::kill(&twox_128(key)) } /// Get a Vec of bytes from storage. pub fn get_raw(key: &[u8]) -> Option> { - runtime_io::storage(&twox_128(key)[..]) + unhashed::get_raw(&twox_128(key)) } /// Put a raw byte slice into storage. pub fn put_raw(key: &[u8], value: &[u8]) { - runtime_io::set_storage(&twox_128(key)[..], value) + unhashed::put_raw(&twox_128(key), value) } /// The underlying runtime storage. @@ -141,27 +131,58 @@ pub struct RuntimeStorage; impl crate::GenericStorage for RuntimeStorage { fn exists(&self, key: &[u8]) -> bool { - super::storage::exists(key) + exists(key) + } + + /// Load the bytes of a key from storage. Can panic if the type is incorrect. + fn get(&self, key: &[u8]) -> Option { + get(key) + } + + /// Put a value in under a key. + fn put(&self, key: &[u8], val: &T) { + put(key, val) + } + + /// Remove the bytes of a key from storage. + fn kill(&self, key: &[u8]) { + kill(key) + } + + /// Take a value from storage, deleting it after reading. + fn take(&self, key: &[u8]) -> Option { + take(key) + } +} + +impl crate::GenericUnhashedStorage for RuntimeStorage { + fn exists(&self, key: &[u8]) -> bool { + unhashed::exists(key) } /// Load the bytes of a key from storage. Can panic if the type is incorrect. fn get(&self, key: &[u8]) -> Option { - super::storage::get(key) + unhashed::get(key) } /// Put a value in under a key. fn put(&self, key: &[u8], val: &T) { - super::storage::put(key, val) + unhashed::put(key, val) } /// Remove the bytes of a key from storage. fn kill(&self, key: &[u8]) { - super::storage::kill(key) + unhashed::kill(key) + } + + /// Remove the bytes of a key from storage. + fn kill_prefix(&self, prefix: &[u8]) { + unhashed::kill_prefix(prefix) } /// Take a value from storage, deleting it after reading. fn take(&self, key: &[u8]) -> Option { - super::storage::take(key) + unhashed::take(key) } } @@ -374,6 +395,109 @@ impl EnumerableStorageMap for U where U: generator: } } +/// An implementation of a map with a two keys. +/// +/// It provides an important ability to efficiently remove all entries +/// that have a common first key. +/// +/// # Mapping of keys to a storage path +/// +/// The storage key (i.e. the key under which the `Value` will be stored) is created from two parts. +/// The first part is a hash of a concatenation of the `PREFIX` and `Key1`. And the second part +/// is a hash of a `Key2`. +/// +/// /!\ be careful while choosing the Hash, indeed malicious could craft second keys to lower the trie. +pub trait StorageDoubleMap { + /// The type that get/take returns. + type Query; + + /// Get the prefix key in storage. + fn prefix() -> &'static [u8]; + + /// Get the storage key used to fetch a value corresponding to a specific key. + fn key_for, KArg2: Borrow>(k1: KArg1, k2: KArg2) -> Vec; + + /// Get the storage prefix used to fetch keys corresponding to a specific key1. + fn prefix_for>(k1: KArg1) -> Vec; + + /// true if the value is defined in storage. + fn exists, KArg2: Borrow>(k1: KArg1, k2: KArg2) -> bool; + + /// Load the value associated with the given key from the map. + fn get, KArg2: Borrow>(k1: KArg1, k2: KArg2) -> Self::Query; + + /// Take the value under a key. + fn take, KArg2: Borrow>(k1: KArg1, k2: KArg2) -> Self::Query; + + /// Store a value to be associated with the given key from the map. + fn insert, KArg2: Borrow, VArg: Borrow>(k1: KArg1, k2: KArg2, val: VArg); + + /// Remove the value under a key. + fn remove, KArg2: Borrow>(k1: KArg1, k2: KArg2); + + /// Removes all entries that shares the `k1` as the first key. + fn remove_prefix>(k1: KArg1); + + /// Mutate the value under a key. + fn mutate(k1: KArg1, k2: KArg2, f: F) -> R + where + KArg1: Borrow, + KArg2: Borrow, + F: FnOnce(&mut Self::Query) -> R; +} + +impl StorageDoubleMap for U +where + U: unhashed::generator::StorageDoubleMap +{ + type Query = U::Query; + + fn prefix() -> &'static [u8] { + >::prefix() + } + + fn key_for, KArg2: Borrow>(k1: KArg1, k2: KArg2) -> Vec { + >::key_for(k1.borrow(), k2.borrow()) + } + + fn prefix_for>(k1: KArg1) -> Vec { + >::prefix_for(k1.borrow()) + } + + fn exists, KArg2: Borrow>(k1: KArg1, k2: KArg2) -> bool { + U::exists(k1.borrow(), k2.borrow(), &RuntimeStorage) + } + + fn get, KArg2: Borrow>(k1: KArg1, k2: KArg2) -> Self::Query { + U::get(k1.borrow(), k2.borrow(), &RuntimeStorage) + } + + fn take, KArg2: Borrow>(k1: KArg1, k2: KArg2) -> Self::Query { + U::take(k1.borrow(), k2.borrow(), &RuntimeStorage) + } + + fn insert, KArg2: Borrow, VArg: Borrow>(k1: KArg1, k2: KArg2, val: VArg) { + U::insert(k1.borrow(), k2.borrow(), val.borrow(), &RuntimeStorage) + } + + fn remove, KArg2: Borrow>(k1: KArg1, k2: KArg2) { + U::remove(k1.borrow(), k2.borrow(), &RuntimeStorage) + } + + fn remove_prefix>(k1: KArg1) { + U::remove_prefix(k1.borrow(), &RuntimeStorage) + } + + fn mutate(k1: KArg1, k2: KArg2, f: F) -> R + where + KArg1: Borrow, + KArg2: Borrow, + F: FnOnce(&mut Self::Query) -> R + { + U::mutate(k1.borrow(), k2.borrow(), f, &RuntimeStorage) + } +} + /// A trait to conveniently store a vector of storable data. pub trait StorageVec { type Item: Default + Sized + Codec; @@ -433,149 +557,6 @@ pub trait StorageVec { } } -pub mod unhashed { - use crate::rstd::borrow::Borrow; - use super::{runtime_io, Codec, Decode, KeyedVec, Vec, IncrementalInput}; - - /// Return the value of the item in storage under `key`, or `None` if there is no explicit entry. - pub fn get(key: &[u8]) -> Option { - runtime_io::read_storage(key, &mut [0; 0][..], 0).map(|_| { - let mut input = IncrementalInput { - key, - pos: 0, - }; - Decode::decode(&mut input).expect("storage is not null, therefore must be a valid type") - }) - } - - /// Return the value of the item in storage under `key`, or the type's default if there is no - /// explicit entry. - pub fn get_or_default(key: &[u8]) -> T { - get(key).unwrap_or_else(Default::default) - } - - /// Return the value of the item in storage under `key`, or `default_value` if there is no - /// explicit entry. - pub fn get_or(key: &[u8], default_value: T) -> T { - get(key).unwrap_or(default_value) - } - - /// Return the value of the item in storage under `key`, or `default_value()` if there is no - /// explicit entry. - pub fn get_or_else T>(key: &[u8], default_value: F) -> T { - get(key).unwrap_or_else(default_value) - } - - /// Put `value` in storage under `key`. - pub fn put(key: &[u8], value: &T) { - value.using_encoded(|slice| runtime_io::set_storage(key, slice)); - } - - /// Remove `key` from storage, returning its value if it had an explicit entry or `None` otherwise. - pub fn take(key: &[u8]) -> Option { - let r = get(key); - if r.is_some() { - kill(key); - } - r - } - - /// Remove `key` from storage, returning its value, or, if there was no explicit entry in storage, - /// the default for its type. - pub fn take_or_default(key: &[u8]) -> T { - take(key).unwrap_or_else(Default::default) - } - - /// Return the value of the item in storage under `key`, or `default_value` if there is no - /// explicit entry. Ensure there is no explicit entry on return. - pub fn take_or(key: &[u8], default_value: T) -> T { - take(key).unwrap_or(default_value) - } - - /// Return the value of the item in storage under `key`, or `default_value()` if there is no - /// explicit entry. Ensure there is no explicit entry on return. - pub fn take_or_else T>(key: &[u8], default_value: F) -> T { - take(key).unwrap_or_else(default_value) - } - - /// Check to see if `key` has an explicit entry in storage. - pub fn exists(key: &[u8]) -> bool { - runtime_io::read_storage(key, &mut [0;0][..], 0).is_some() - } - - /// Ensure `key` has no explicit entry in storage. - pub fn kill(key: &[u8]) { - runtime_io::clear_storage(key); - } - - /// Ensure keys with the given `prefix` have no entries in storage. - pub fn kill_prefix(prefix: &[u8]) { - runtime_io::clear_prefix(prefix); - } - - /// Get a Vec of bytes from storage. - pub fn get_raw(key: &[u8]) -> Option> { - runtime_io::storage(key) - } - - /// Put a raw byte slice into storage. - pub fn put_raw(key: &[u8], value: &[u8]) { - runtime_io::set_storage(key, value) - } - - /// A trait to conveniently store a vector of storable data. - pub trait StorageVec { - type Item: Default + Sized + Codec; - const PREFIX: &'static [u8]; - - /// Get the current set of items. - fn items() -> Vec { - (0..Self::count()).into_iter().map(Self::item).collect() - } - - /// Set the current set of items. - fn set_items(items: I) - where - I: IntoIterator, - T: Borrow, - { - let mut count: u32 = 0; - - for i in items.into_iter() { - put(&count.to_keyed_vec(Self::PREFIX), i.borrow()); - count = count.checked_add(1).expect("exceeded runtime storage capacity"); - } - - Self::set_count(count); - } - - fn set_item(index: u32, item: &Self::Item) { - if index < Self::count() { - put(&index.to_keyed_vec(Self::PREFIX), item); - } - } - - fn clear_item(index: u32) { - if index < Self::count() { - kill(&index.to_keyed_vec(Self::PREFIX)); - } - } - - fn item(index: u32) -> Self::Item { - get_or_default(&index.to_keyed_vec(Self::PREFIX)) - } - - fn set_count(count: u32) { - (count..Self::count()).for_each(Self::clear_item); - put(&b"len".to_keyed_vec(Self::PREFIX), &count); - } - - fn count() -> u32 { - get_or_default(&b"len".to_keyed_vec(Self::PREFIX)) - } - } -} - /// child storage NOTE could replace unhashed by having only one kind of storage (root being null storage /// key (storage_key can become Option<&[u8]>). /// This module is a currently only a variant of unhashed with additional `storage_key`. diff --git a/srml/support/src/storage/unhashed/generator.rs b/srml/support/src/storage/unhashed/generator.rs new file mode 100644 index 0000000000..2b046013bb --- /dev/null +++ b/srml/support/src/storage/unhashed/generator.rs @@ -0,0 +1,144 @@ +// 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 . + +use crate::codec; +use runtime_io::twox_128; +use crate::rstd::vec::Vec; + +/// Abstraction around storage with unhashed access. +pub trait UnhashedStorage { + /// true if the key exists in storage. + fn exists(&self, key: &[u8]) -> bool; + + /// Load the bytes of a key from storage. Can panic if the type is incorrect. + fn get(&self, key: &[u8]) -> Option; + + /// Load the bytes of a key from storage. Can panic if the type is incorrect. Will panic if + /// it's not there. + fn require(&self, key: &[u8]) -> T { self.get(key).expect("Required values must be in storage") } + + /// Load the bytes of a key from storage. Can panic if the type is incorrect. The type's + /// default is returned if it's not there. + fn get_or_default(&self, key: &[u8]) -> T { self.get(key).unwrap_or_default() } + + /// Put a value in under a key. + fn put(&self, key: &[u8], val: &T); + + /// Remove the bytes of a key from storage. + fn kill(&self, key: &[u8]); + + /// Remove the bytes of a key from storage. + fn kill_prefix(&self, prefix: &[u8]); + + /// Take a value from storage, deleting it after reading. + fn take(&self, key: &[u8]) -> Option { + let value = self.get(key); + self.kill(key); + value + } + + /// Take a value from storage, deleting it after reading. + fn take_or_panic(&self, key: &[u8]) -> T { self.take(key).expect("Required values must be in storage") } + + /// Take a value from storage, deleting it after reading. + fn take_or_default(&self, key: &[u8]) -> T { self.take(key).unwrap_or_default() } +} + +// We use a construct like this during when genesis storage is being built. +#[cfg(feature = "std")] +impl UnhashedStorage for (crate::rstd::cell::RefCell<&mut sr_primitives::StorageOverlay>, H) { + fn exists(&self, key: &[u8]) -> bool { + self.0.borrow().contains_key(key) + } + + fn get(&self, key: &[u8]) -> Option { + self.0.borrow().get(key) + .map(|x| codec::Decode::decode(&mut x.as_slice()).expect("Unable to decode expected type.")) + } + + fn put(&self, key: &[u8], val: &T) { + self.0.borrow_mut().insert(key.to_vec(), codec::Encode::encode(val)); + } + + fn kill(&self, key: &[u8]) { + self.0.borrow_mut().remove(key); + } + + fn kill_prefix(&self, prefix: &[u8]) { + self.0.borrow_mut().retain(|key, _| { + !key.starts_with(prefix) + }) + } +} + +/// An implementation of a map with a two keys. +/// +/// It provides an important ability to efficiently remove all entries +/// that have a common first key. +/// +/// # Mapping of keys to a storage path +/// +/// The storage key (i.e. the key under which the `Value` will be stored) is created from two parts. +/// The first part is a hash of a concatenation of the `PREFIX` and `Key1`. And the second part +/// is a hash of a `Key2`. +/// +/// /!\ be careful while choosing the Hash, indeed malicious could craft second keys to lower the trie. +pub trait StorageDoubleMap { + /// The type that get/take returns. + type Query; + + /// Get the prefix key in storage. + fn prefix() -> &'static [u8]; + + /// Get the storage key used to fetch a value corresponding to a specific key. + fn key_for(k1: &K1, k2: &K2) -> Vec; + + /// Get the storage prefix used to fetch keys corresponding to a specific key1. + fn prefix_for(k1: &K1) -> Vec { + let mut key = Self::prefix().to_vec(); + codec::Encode::encode_to(k1, &mut key); + twox_128(&key).to_vec() + } + + /// true if the value is defined in storage. + fn exists(k1: &K1, k2: &K2, storage: &S) -> bool { + storage.exists(&Self::key_for(k1, k2)) + } + + /// Load the value associated with the given key from the map. + fn get(k1: &K1, k2: &K2, storage: &S) -> Self::Query; + + /// Take the value under a key. + fn take(k1: &K1, k2: &K2, storage: &S) -> Self::Query; + + /// Store a value to be associated with the given key from the map. + fn insert(k1: &K1, k2: &K2, val: &V, storage: &S) { + storage.put(&Self::key_for(k1, k2), val); + } + + /// Remove the value under a key. + fn remove(k1: &K1, k2: &K2, storage: &S) { + storage.kill(&Self::key_for(k1, k2)); + } + + /// Removes all entries that shares the `k1` as the first key. + fn remove_prefix(k1: &K1, storage: &S) { + storage.kill_prefix(&Self::prefix_for(k1)); + } + + /// Mutate the value under a key. + fn mutate R, S: UnhashedStorage>(k1: &K1, k2: &K2, f: F, storage: &S) -> R; +} diff --git a/srml/support/src/storage/unhashed/mod.rs b/srml/support/src/storage/unhashed/mod.rs new file mode 100644 index 0000000000..225c6756b8 --- /dev/null +++ b/srml/support/src/storage/unhashed/mod.rs @@ -0,0 +1,160 @@ +// 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 . + +//! Operation on unhashed runtime storage + +use crate::rstd::borrow::Borrow; +use super::{runtime_io, Codec, Encode, Decode, KeyedVec, Vec, IncrementalInput}; + +pub mod generator; + +/// Return the value of the item in storage under `key`, or `None` if there is no explicit entry. +pub fn get(key: &[u8]) -> Option { + runtime_io::read_storage(key, &mut [0; 0][..], 0).map(|_| { + let mut input = IncrementalInput { + key, + pos: 0, + }; + Decode::decode(&mut input).expect("storage is not null, therefore must be a valid type") + }) +} + +/// Return the value of the item in storage under `key`, or the type's default if there is no +/// explicit entry. +pub fn get_or_default(key: &[u8]) -> T { + get(key).unwrap_or_else(Default::default) +} + +/// Return the value of the item in storage under `key`, or `default_value` if there is no +/// explicit entry. +pub fn get_or(key: &[u8], default_value: T) -> T { + get(key).unwrap_or(default_value) +} + +/// Return the value of the item in storage under `key`, or `default_value()` if there is no +/// explicit entry. +pub fn get_or_else T>(key: &[u8], default_value: F) -> T { + get(key).unwrap_or_else(default_value) +} + +/// Put `value` in storage under `key`. +pub fn put(key: &[u8], value: &T) { + value.using_encoded(|slice| runtime_io::set_storage(key, slice)); +} + +/// Remove `key` from storage, returning its value if it had an explicit entry or `None` otherwise. +pub fn take(key: &[u8]) -> Option { + let r = get(key); + if r.is_some() { + kill(key); + } + r +} + +/// Remove `key` from storage, returning its value, or, if there was no explicit entry in storage, +/// the default for its type. +pub fn take_or_default(key: &[u8]) -> T { + take(key).unwrap_or_else(Default::default) +} + +/// Return the value of the item in storage under `key`, or `default_value` if there is no +/// explicit entry. Ensure there is no explicit entry on return. +pub fn take_or(key: &[u8], default_value: T) -> T { + take(key).unwrap_or(default_value) +} + +/// Return the value of the item in storage under `key`, or `default_value()` if there is no +/// explicit entry. Ensure there is no explicit entry on return. +pub fn take_or_else T>(key: &[u8], default_value: F) -> T { + take(key).unwrap_or_else(default_value) +} + +/// Check to see if `key` has an explicit entry in storage. +pub fn exists(key: &[u8]) -> bool { + runtime_io::read_storage(key, &mut [0;0][..], 0).is_some() +} + +/// Ensure `key` has no explicit entry in storage. +pub fn kill(key: &[u8]) { + runtime_io::clear_storage(key); +} + +/// Ensure keys with the given `prefix` have no entries in storage. +pub fn kill_prefix(prefix: &[u8]) { + runtime_io::clear_prefix(prefix); +} + +/// Get a Vec of bytes from storage. +pub fn get_raw(key: &[u8]) -> Option> { + runtime_io::storage(key) +} + +/// Put a raw byte slice into storage. +pub fn put_raw(key: &[u8], value: &[u8]) { + runtime_io::set_storage(key, value) +} + +/// A trait to conveniently store a vector of storable data. +pub trait StorageVec { + type Item: Default + Sized + Codec; + const PREFIX: &'static [u8]; + + /// Get the current set of items. + fn items() -> Vec { + (0..Self::count()).into_iter().map(Self::item).collect() + } + + /// Set the current set of items. + fn set_items(items: I) + where + I: IntoIterator, + T: Borrow, + { + let mut count: u32 = 0; + + for i in items.into_iter() { + put(&count.to_keyed_vec(Self::PREFIX), i.borrow()); + count = count.checked_add(1).expect("exceeded runtime storage capacity"); + } + + Self::set_count(count); + } + + fn set_item(index: u32, item: &Self::Item) { + if index < Self::count() { + put(&index.to_keyed_vec(Self::PREFIX), item); + } + } + + fn clear_item(index: u32) { + if index < Self::count() { + kill(&index.to_keyed_vec(Self::PREFIX)); + } + } + + fn item(index: u32) -> Self::Item { + get_or_default(&index.to_keyed_vec(Self::PREFIX)) + } + + fn set_count(count: u32) { + (count..Self::count()).for_each(Self::clear_item); + put(&b"len".to_keyed_vec(Self::PREFIX), &count); + } + + fn count() -> u32 { + get_or_default(&b"len".to_keyed_vec(Self::PREFIX)) + } +} diff --git a/srml/support/test/tests/instance.rs b/srml/support/test/tests/instance.rs index 6f4effbc1a..28ad3ee006 100644 --- a/srml/support/test/tests/instance.rs +++ b/srml/support/test/tests/instance.rs @@ -28,7 +28,7 @@ use srml_support::Parameter; use inherents::{ ProvideInherent, InherentData, InherentIdentifier, RuntimeString, MakeFatalError }; -use srml_support::{StorageValue, StorageMap}; +use srml_support::{StorageValue, StorageMap, StorageDoubleMap}; use primitives::{H256, sr25519}; pub trait Currency { @@ -218,6 +218,7 @@ mod module2 { pub Value config(value): T::Amount; pub Map config(map): map u64 => u64; pub LinkedMap config(linked_map): linked_map u64 => u64; + pub DoubleMap config(double_map): double_map u64, blake2_256(u64) => u64; } extra_genesis_skip_phantom_data_field; } @@ -368,10 +369,16 @@ fn new_test_ext() -> runtime_io::TestExternalities { }), module2: Some(module2::GenesisConfig { value: 4, - map: vec![], - linked_map: vec![], + map: vec![(0, 0)], + linked_map: vec![(0, 0)], + double_map: vec![(0, 0, 0)], + }), + module2_Instance1: Some(module2::GenesisConfig { + value: 4, + map: vec![(0, 0)], + linked_map: vec![(0, 0)], + double_map: vec![(0, 0, 0)], }), - module2_Instance1: None, module2_Instance2: None, module2_Instance3: None, }.build_storage().unwrap().0.into() @@ -381,7 +388,7 @@ fn new_test_ext() -> runtime_io::TestExternalities { fn storage_instance_independance() { with_externalities(&mut new_test_ext(), || { let mut map = rstd::collections::btree_map::BTreeMap::new(); - for key in &[ + for key in [ module2::Value::::key().to_vec(), module2::Value::::key().to_vec(), module2::Value::::key().to_vec(), @@ -394,6 +401,10 @@ fn storage_instance_independance() { module2::LinkedMap::::prefix().to_vec(), module2::LinkedMap::::prefix().to_vec(), module2::LinkedMap::::prefix().to_vec(), + module2::DoubleMap::::prefix().to_vec(), + module2::DoubleMap::::prefix().to_vec(), + module2::DoubleMap::::prefix().to_vec(), + module2::DoubleMap::::prefix().to_vec(), module2::Map::::key_for(0), module2::Map::::key_for(0).to_vec(), module2::Map::::key_for(0).to_vec(), @@ -410,20 +421,32 @@ fn storage_instance_independance() { module2::LinkedMap::::key_for(1).to_vec(), module2::LinkedMap::::key_for(1).to_vec(), module2::LinkedMap::::key_for(1).to_vec(), - ] { + module2::DoubleMap::::prefix_for(1), + module2::DoubleMap::::prefix_for(1).to_vec(), + module2::DoubleMap::::prefix_for(1).to_vec(), + module2::DoubleMap::::prefix_for(1).to_vec(), + module2::DoubleMap::::key_for(1, 1), + module2::DoubleMap::::key_for(1, 1).to_vec(), + module2::DoubleMap::::key_for(1, 1).to_vec(), + module2::DoubleMap::::key_for(1, 1).to_vec(), + ].iter() { assert!(map.insert(key, ()).is_none()) } }); } +// TODO TODO: check configuration doublemapstorage in instances + #[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; + type DoubleMap = module2::DoubleMap; - assert_eq!(Value::exists(), false); + assert_eq!(Value::exists(), true); + assert_eq!(Value::get(), 4); Value::put(1); assert_eq!(Value::get(), 1); assert_eq!(Value::take(), 1); @@ -431,10 +454,12 @@ fn storage_with_instance_basic_operation() { Value::mutate(|a| *a=2); assert_eq!(Value::get(), 2); Value::kill(); + assert_eq!(Value::exists(), false); assert_eq!(Value::get(), 0); let key = 1; - assert_eq!(Map::exists(1), false); + assert_eq!(Map::exists(0), true); + assert_eq!(Map::exists(key), false); Map::insert(key, 1); assert_eq!(Map::get(key), 1); assert_eq!(Map::take(key), 1); @@ -442,9 +467,11 @@ fn storage_with_instance_basic_operation() { Map::mutate(key, |a| *a=2); assert_eq!(Map::get(key), 2); Map::remove(key); + assert_eq!(Map::exists(key), false); assert_eq!(Map::get(key), 0); - assert_eq!(LinkedMap::exists(1), false); + assert_eq!(LinkedMap::exists(0), true); + assert_eq!(LinkedMap::exists(key), false); LinkedMap::insert(key, 1); assert_eq!(LinkedMap::get(key), 1); assert_eq!(LinkedMap::take(key), 1); @@ -452,6 +479,20 @@ fn storage_with_instance_basic_operation() { LinkedMap::mutate(key, |a| *a=2); assert_eq!(LinkedMap::get(key), 2); LinkedMap::remove(key); + assert_eq!(LinkedMap::exists(key), false); assert_eq!(LinkedMap::get(key), 0); + + let key1 = 1; + let key2 = 1; + assert_eq!(DoubleMap::exists(0, 0), true); + assert_eq!(DoubleMap::exists(key1, key2), false); + DoubleMap::insert(key1, key2, 1); + assert_eq!(DoubleMap::get(key1, key2), 1); + assert_eq!(DoubleMap::take(key1, key2), 1); + assert_eq!(DoubleMap::get(key1, key2), 0); + DoubleMap::mutate(key1, key2, |a| *a=2); + assert_eq!(DoubleMap::get(key1, key2), 2); + DoubleMap::remove(key1, key2); + assert_eq!(DoubleMap::get(key1, key2), 0); }); } -- GitLab From fd15825ebdb24a02508aa10a02607e6c6acb9148 Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Thu, 28 Mar 2019 18:46:21 +0100 Subject: [PATCH 104/120] Use prefixed keys for trie node. (#2130) * Account for pending insertions when pruning * Prefixed trie storage * Comments * Prefixed trie storage * Fixed tests * Fixed tests * Bumped runtime version * Bumped runtime version again --- Cargo.lock | 94 +++++++++--------- core/client/Cargo.toml | 2 +- core/client/db/Cargo.toml | 2 +- core/client/db/src/lib.rs | 85 ++++++++-------- core/client/src/client.rs | 4 +- core/client/src/in_mem.rs | 4 +- core/client/src/light/fetcher.rs | 2 +- core/executor/wasm/Cargo.lock | 14 +-- core/primitives/Cargo.toml | 4 +- core/sr-io/Cargo.toml | 2 +- core/state-db/src/lib.rs | 16 +-- core/state-db/src/test.rs | 6 +- core/state-machine/Cargo.toml | 6 +- core/state-machine/src/backend.rs | 4 +- .../src/changes_trie/changes_iterator.rs | 2 +- core/state-machine/src/changes_trie/mod.rs | 2 +- .../state-machine/src/changes_trie/storage.rs | 12 ++- core/state-machine/src/proving_backend.rs | 20 ++-- core/state-machine/src/trie_backend.rs | 26 ++--- .../state-machine/src/trie_backend_essence.rs | 83 ++++++++++------ core/test-runtime/wasm/Cargo.lock | 48 ++++----- .../substrate_test_runtime.compact.wasm | Bin 59086 -> 59150 bytes core/trie/Cargo.toml | 14 +-- core/trie/src/lib.rs | 9 +- node-template/Cargo.toml | 2 +- node-template/runtime/wasm/Cargo.lock | 48 ++++----- node/executor/Cargo.toml | 2 +- node/runtime/wasm/Cargo.lock | 48 ++++----- .../release/node_runtime.compact.wasm | Bin 937543 -> 938309 bytes 29 files changed, 295 insertions(+), 266 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 24e763e7aa..07d0e3c4d9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -903,12 +903,12 @@ dependencies = [ [[package]] name = "hash-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "hash256-std-hasher" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1204,11 +1204,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "keccak-hasher" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1722,10 +1722,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "memory-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -1921,7 +1921,7 @@ dependencies = [ "substrate-primitives 0.1.0", "substrate-state-machine 0.1.0", "substrate-trie 0.4.0", - "trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "wabt 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2003,7 +2003,7 @@ dependencies = [ "substrate-service 0.3.0", "substrate-transaction-pool 0.1.0", "tokio 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", - "trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "vergen 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -3004,7 +3004,7 @@ name = "sr-io" version = "0.1.0" dependencies = [ "environmental 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.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.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)", @@ -3675,7 +3675,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", @@ -3703,7 +3703,7 @@ name = "substrate-client-db" version = "0.1.0" dependencies = [ "env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", "kvdb-rocksdb 0.1.4 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", @@ -4038,8 +4038,8 @@ dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -4185,7 +4185,7 @@ dependencies = [ name = "substrate-state-machine" version = "0.1.0" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -4194,8 +4194,8 @@ dependencies = [ "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", "substrate-trie 0.4.0", - "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-db 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -4297,16 +4297,16 @@ name = "substrate-trie" version = "0.4.0" dependencies = [ "criterion 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", + "keccak-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "memory-db 0.12.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)", - "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)", + "trie-bench 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-db 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-standardmap 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -4673,46 +4673,46 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "trie-bench" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "criterion 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", - "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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "memory-db 0.12.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)", + "trie-db 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-standardmap 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "trie-db" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "trie-root" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "trie-standardmap" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "criterion 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", - "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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "keccak-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -4735,7 +4735,7 @@ name = "twox-hash" version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", + "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -5176,8 +5176,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" "checksum globset 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4743617a7464bbda3c8aec8558ff2f9429047e025771037df561d383337ff865" "checksum h2 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ddb2b25a33e231484694267af28fec74ac63b5ccf51ee2065a5e313b834d836e" -"checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" -"checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" +"checksum hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07463834729d0ce8d475e7dd6d302e407093ad9a9c02d77eb07fb74b5373829d" +"checksum hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1224388a21c88a80ae7087a2a245ca6d80acc97a9186b75789fb3eeefd0609af" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" @@ -5208,7 +5208,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum jsonrpc-server-utils 10.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5521613b31ea22d36d9f95ad642058dccec846a94ed8690957652d479f620707" "checksum jsonrpc-ws-server 10.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20b8333a5a6e6ccbcf5c90f90919de557cba4929efa164e9bd0e8e497eb20e46" "checksum keccak 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" -"checksum keccak-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cb9d3670023f4c04153d90b8a557a822d1b27ed702bb015a87cf7bffead5b611" +"checksum keccak-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a02fb74dc1b613522069b5f2023c014756ce121c6c6fb39364c139b0efc39a2d" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" "checksum kvdb-memorydb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)" = "" @@ -5249,7 +5249,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" "checksum memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1dd4eaac298c32ce07eb6ed9242eda7d82955b9170b7d6db59b2e02cc63fcb8" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" -"checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" +"checksum memory-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3dd87d4d64f7b86d8804bbb419f8ecb187cb8f40a50e91c72848075c604ba88d" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" "checksum merlin 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a9e97b439f6d38cbe2a4a4aa93f6770c5305f62761b78b1851406c09c87ee2a" "checksum mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0" @@ -5420,10 +5420,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" "checksum traitobject 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "efd1f82c56340fdf16f2a953d7bda4f8fdffba13d93b00844c25572110b26079" -"checksum trie-bench 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "77087d1bce467cf8371a5c0e10e4d925b065ec6cfad8b9cdff1fad4f218c6750" -"checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" -"checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" -"checksum trie-standardmap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0e4729504b8102acb1bef3f16e6b64d41aeb1ff0e329081451e8191df0f61ab2" +"checksum trie-bench 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eafa32a8662c06f5bf135984bc1a12821fd38770b5c2f2f9e8750327fcbe3955" +"checksum trie-db 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "843af112ba3a8c919cd961edf3cac9272353f5e277ad8678c7023fa70e5c0e2d" +"checksum trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e45632ecaf2b8b4a40b5208383cd659b4e66f58ccd40086467a4614b45781430" +"checksum trie-standardmap 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006314f54f2ea7944a878e66fd93ad7978095bc355f30a2f26ec40f664d86c86" "checksum try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e604eb7b43c06650e854be16a2a03155743d3752dd1c943f6829e26b7a36e382" "checksum twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d261e83e727c8e2dbb75dacac67c36e35db36a958ee504f2164fc052434e1" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" diff --git a/core/client/Cargo.toml b/core/client/Cargo.toml index f797d93f1f..cfc7eb3e34 100644 --- a/core/client/Cargo.toml +++ b/core/client/Cargo.toml @@ -18,7 +18,7 @@ state-machine = { package = "substrate-state-machine", path = "../state-machine" keyring = { package = "substrate-keyring", path = "../keyring", optional = true } trie = { package = "substrate-trie", path = "../trie", optional = true } substrate-telemetry = { path = "../telemetry", optional = true } -hash-db = { version = "0.11", optional = true } +hash-db = { version = "0.12", optional = true } kvdb = { git = "https://github.com/paritytech/parity-common", optional = true, rev="b0317f649ab2c665b7987b8475878fc4d2e1f81d" } parity-codec = { version = "3.2", default-features = false, features = ["derive"] } primitives = { package = "substrate-primitives", path = "../primitives", default-features = false } diff --git a/core/client/db/Cargo.toml b/core/client/db/Cargo.toml index 97de2cd7cd..7fc1cc5d95 100644 --- a/core/client/db/Cargo.toml +++ b/core/client/db/Cargo.toml @@ -12,7 +12,7 @@ kvdb = { git = "https://github.com/paritytech/parity-common", rev="b0317f649ab2c kvdb-rocksdb = { git = "https://github.com/paritytech/parity-common", rev="b0317f649ab2c665b7987b8475878fc4d2e1f81d" } kvdb-memorydb = { git = "https://github.com/paritytech/parity-common", rev="b0317f649ab2c665b7987b8475878fc4d2e1f81d", optional = true } lru-cache = "0.1.1" -hash-db = { version = "0.11" } +hash-db = { version = "0.12" } primitives = { package = "substrate-primitives", path = "../../primitives" } runtime_primitives = { package = "sr-primitives", path = "../../sr-primitives" } client = { package = "substrate-client", path = "../../client" } diff --git a/core/client/db/src/lib.rs b/core/client/db/src/lib.rs index 5d8d3cb606..93adb99024 100644 --- a/core/client/db/src/lib.rs +++ b/core/client/db/src/lib.rs @@ -40,7 +40,7 @@ use client::ExecutionStrategies; use parity_codec::{Decode, Encode}; use hash_db::Hasher; use kvdb::{KeyValueDB, DBTransaction}; -use trie::MemoryDB; +use trie::{MemoryDB, PrefixedMemoryDB, prefixed_key}; use parking_lot::RwLock; use primitives::{H256, Blake2Hasher, ChangesTrieConfiguration, convert_hash}; use primitives::storage::well_known_keys; @@ -259,7 +259,7 @@ impl client::blockchain::Backend for BlockchainDb { /// Database transaction pub struct BlockImportOperation { old_state: CachingState, - db_updates: MemoryDB, + db_updates: PrefixedMemoryDB, storage_updates: Vec<(Vec, Option>)>, changes_trie_updates: MemoryDB, pending_block: Option>, @@ -310,7 +310,7 @@ where Block: BlockT, // currently authorities are not cached on full nodes } - fn update_db_storage(&mut self, update: MemoryDB) -> Result<(), client::error::Error> { + fn update_db_storage(&mut self, update: PrefixedMemoryDB) -> Result<(), client::error::Error> { self.db_updates = update; Ok(()) } @@ -321,7 +321,7 @@ where Block: BlockT, return Err(client::error::ErrorKind::GenesisInvalid.into()); } - let mut transaction: MemoryDB = Default::default(); + let mut transaction: PrefixedMemoryDB = Default::default(); for (child_key, child_map) in children { if !well_known_keys::is_child_storage_key(&child_key) { @@ -374,22 +374,23 @@ where Block: BlockT, struct StorageDb { pub db: Arc, - pub state_db: StateDb, + pub state_db: StateDb>, } impl state_machine::Storage for StorageDb { - fn get(&self, key: &H256) -> Result, String> { - self.state_db.get(key, self).map(|r| r.map(|v| DBValue::from_slice(&v))) + fn get(&self, key: &H256, prefix: &[u8]) -> Result, String> { + let key = prefixed_key::(key, prefix); + self.state_db.get(&key, self).map(|r| r.map(|v| DBValue::from_slice(&v))) .map_err(|e| format!("Database backend error: {:?}", e)) } } -impl state_db::HashDb for StorageDb { +impl state_db::NodeDb for StorageDb { type Error = io::Error; - type Hash = H256; + type Key = [u8]; - fn get(&self, key: &H256) -> Result>, Self::Error> { - self.db.get(columns::STATE, key.as_bytes()).map(|r| r.map(|v| v.to_vec())) + fn get(&self, key: &[u8]) -> Result>, Self::Error> { + self.db.get(columns::STATE, key).map(|r| r.map(|v| v.to_vec())) } } @@ -405,7 +406,7 @@ impl DbGenesisStorage { } impl state_machine::Storage for DbGenesisStorage { - fn get(&self, _key: &H256) -> Result, String> { + fn get(&self, _key: &H256, _prefix: &[u8]) -> Result, String> { Ok(None) } } @@ -515,7 +516,7 @@ impl state_machine::ChangesTrieRootsStorage for DbC } impl state_machine::ChangesTrieStorage for DbChangesTrieStorage { - fn get(&self, key: &H256) -> Result, String> { + fn get(&self, key: &H256, _prefix: &[u8]) -> Result, String> { self.db.get(columns::CHANGES_TRIE, &key[..]) .map_err(|err| format!("{}", err)) } @@ -559,7 +560,7 @@ impl> Backend { let blockchain = BlockchainDb::new(db.clone())?; let meta = blockchain.meta.clone(); let map_e = |e: state_db::Error| ::client::error::Error::from(format!("State database error: {:?}", e)); - let state_db: StateDb = StateDb::new(pruning, &StateMetaDb(&*db)).map_err(map_e)?; + let state_db: StateDb<_, _> = StateDb::new(pruning, &StateMetaDb(&*db)).map_err(map_e)?; let storage_db = StorageDb { db: db.clone(), state_db, @@ -832,7 +833,7 @@ impl> Backend { transaction.put(columns::META, meta_keys::GENESIS_HASH, hash.as_ref()); } - let mut changeset: state_db::ChangeSet = state_db::ChangeSet::default(); + let mut changeset: state_db::ChangeSet> = state_db::ChangeSet::default(); for (key, (val, rc)) in operation.db_updates.drain() { if rc > 0 { changeset.inserted.push((key, val.to_vec())); @@ -981,7 +982,7 @@ impl> Backend { } } -fn apply_state_commit(transaction: &mut DBTransaction, commit: state_db::CommitSet) { +fn apply_state_commit(transaction: &mut DBTransaction, commit: state_db::CommitSet>) { for (key, val) in commit.data.inserted.into_iter() { transaction.put(columns::STATE, &key[..], &val); } @@ -1031,7 +1032,7 @@ impl client::backend::Backend for Backend whe Ok(BlockImportOperation { pending_block: None, old_state, - db_updates: MemoryDB::default(), + db_updates: PrefixedMemoryDB::default(), storage_updates: Default::default(), changes_trie_updates: MemoryDB::default(), aux_ops: Vec::new(), @@ -1414,7 +1415,7 @@ mod tests { op.reset_storage(storage.iter().cloned().collect(), Default::default()).unwrap(); - key = op.db_updates.insert(b"hello"); + key = op.db_updates.insert(&[], b"hello"); op.set_block_data( header, Some(vec![]), @@ -1448,8 +1449,8 @@ mod tests { ).0.into(); let hash = header.hash(); - op.db_updates.insert(b"hello"); - op.db_updates.remove(&key); + op.db_updates.insert(&[], b"hello"); + op.db_updates.remove(&key, &[]); op.set_block_data( header, Some(vec![]), @@ -1483,7 +1484,7 @@ mod tests { ).0.into(); let hash = header.hash(); - op.db_updates.remove(&key); + op.db_updates.remove(&key, &[]); op.set_block_data( header, Some(vec![]), @@ -1549,7 +1550,7 @@ mod tests { assert_eq!(backend.changes_tries_storage.root(&anchor, block), Ok(Some(changes_root))); for (key, (val, _)) in changes_trie_update.drain() { - assert_eq!(backend.changes_trie_storage().unwrap().get(&key), Ok(Some(val))); + assert_eq!(backend.changes_trie_storage().unwrap().get(&key, &[]), Ok(Some(val))); } }; @@ -1675,23 +1676,23 @@ mod tests { let mut tx = DBTransaction::new(); backend.changes_tries_storage.prune(Some(config.clone()), &mut tx, Default::default(), 12); backend.storage.db.write(tx).unwrap(); - assert!(backend.changes_tries_storage.get(&root1).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root2).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root3).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root4).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root5).unwrap().is_some()); - assert!(backend.changes_tries_storage.get(&root6).unwrap().is_some()); - assert!(backend.changes_tries_storage.get(&root7).unwrap().is_some()); - assert!(backend.changes_tries_storage.get(&root8).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root1, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root2, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root3, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root4, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root5, &[]).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root6, &[]).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root7, &[]).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root8, &[]).unwrap().is_some()); // now simulate finalization of block#16, causing prune of tries at #5..#8 let mut tx = DBTransaction::new(); backend.changes_tries_storage.prune(Some(config.clone()), &mut tx, Default::default(), 16); backend.storage.db.write(tx).unwrap(); - assert!(backend.changes_tries_storage.get(&root5).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root6).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root7).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root8).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root5, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root6, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root7, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root8, &[]).unwrap().is_none()); // now "change" pruning mode to archive && simulate finalization of block#20 // => no changes tries are pruned, because we never prune in archive mode @@ -1699,10 +1700,10 @@ mod tests { let mut tx = DBTransaction::new(); backend.changes_tries_storage.prune(Some(config), &mut tx, Default::default(), 20); backend.storage.db.write(tx).unwrap(); - assert!(backend.changes_tries_storage.get(&root9).unwrap().is_some()); - assert!(backend.changes_tries_storage.get(&root10).unwrap().is_some()); - assert!(backend.changes_tries_storage.get(&root11).unwrap().is_some()); - assert!(backend.changes_tries_storage.get(&root12).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root9, &[]).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root10, &[]).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root11, &[]).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root12, &[]).unwrap().is_some()); } #[test] @@ -1741,15 +1742,15 @@ mod tests { let mut tx = DBTransaction::new(); backend.changes_tries_storage.prune(Some(config.clone()), &mut tx, block5, 5); backend.storage.db.write(tx).unwrap(); - assert!(backend.changes_tries_storage.get(&root1).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root2).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root1, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root2, &[]).unwrap().is_some()); // now simulate finalization of block#6, causing prune of tries at #2 let mut tx = DBTransaction::new(); backend.changes_tries_storage.prune(Some(config.clone()), &mut tx, block6, 6); backend.storage.db.write(tx).unwrap(); - assert!(backend.changes_tries_storage.get(&root2).unwrap().is_none()); - assert!(backend.changes_tries_storage.get(&root3).unwrap().is_some()); + assert!(backend.changes_tries_storage.get(&root2, &[]).unwrap().is_none()); + assert!(backend.changes_tries_storage.get(&root3, &[]).unwrap().is_some()); } #[test] diff --git a/core/client/src/client.rs b/core/client/src/client.rs index 26ba126b85..699bbcad8d 100644 --- a/core/client/src/client.rs +++ b/core/client/src/client.rs @@ -508,8 +508,8 @@ impl Client where } impl<'a, Block: BlockT> ChangesTrieStorage for AccessedRootsRecorder<'a, Block> { - fn get(&self, key: &H256) -> Result, String> { - self.storage.get(key) + fn get(&self, key: &H256, prefix: &[u8]) -> Result, String> { + self.storage.get(key, prefix) } } diff --git a/core/client/src/in_mem.rs b/core/client/src/in_mem.rs index fc95e9664b..7f3cdfd8dd 100644 --- a/core/client/src/in_mem.rs +++ b/core/client/src/in_mem.rs @@ -742,8 +742,8 @@ impl state_machine::ChangesTrieRootsStorage for ChangesTrieStorage } impl state_machine::ChangesTrieStorage for ChangesTrieStorage where H::Out: HeapSizeOf { - fn get(&self, key: &H::Out) -> Result, String> { - self.0.get(key) + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String> { + self.0.get(key, prefix) } } diff --git a/core/client/src/light/fetcher.rs b/core/client/src/light/fetcher.rs index bb6624f91f..893682d5f8 100644 --- a/core/client/src/light/fetcher.rs +++ b/core/client/src/light/fetcher.rs @@ -282,7 +282,7 @@ impl, F> LightDataChecker Result, Self::Error>; + fn get(&self, key: &Self::Key) -> Result, Self::Error>; } /// Error type. @@ -285,11 +285,13 @@ impl StateDbSync { self.pinned.remove(hash); } - pub fn get>(&self, key: &Key, db: &D) -> Result, Error> { + pub fn get(&self, key: &Key, db: &D) -> Result, Error> + where Key: AsRef + { if let Some(value) = self.non_canonical.get(key) { return Ok(Some(value)); } - db.get(key).map_err(|e| Error::Db(e)) + db.get(key.as_ref()).map_err(|e| Error::Db(e)) } pub fn apply_pending(&mut self) { @@ -349,7 +351,9 @@ impl StateDb { } /// Get a value from non-canonical/pruning overlay or the backing DB. - pub fn get>(&self, key: &Key, db: &D) -> Result, Error> { + pub fn get(&self, key: &Key, db: &D) -> Result, Error> + where Key: AsRef + { self.db.read().get(key, db) } diff --git a/core/state-db/src/test.rs b/core/state-db/src/test.rs index cec5935142..d90c369906 100644 --- a/core/state-db/src/test.rs +++ b/core/state-db/src/test.rs @@ -18,7 +18,7 @@ use std::collections::HashMap; use primitives::H256; -use crate::{DBValue, ChangeSet, CommitSet, MetaDb, HashDb}; +use crate::{DBValue, ChangeSet, CommitSet, MetaDb, NodeDb}; #[derive(Default, Debug, Clone, PartialEq, Eq)] pub struct TestDb { @@ -34,9 +34,9 @@ impl MetaDb for TestDb { } } -impl HashDb for TestDb { +impl NodeDb for TestDb { type Error = (); - type Hash = H256; + type Key = H256; fn get(&self, key: &H256) -> Result, ()> { Ok(self.data.get(key).cloned()) diff --git a/core/state-machine/Cargo.toml b/core/state-machine/Cargo.toml index 61a99f8e94..d81079b5f9 100644 --- a/core/state-machine/Cargo.toml +++ b/core/state-machine/Cargo.toml @@ -10,9 +10,9 @@ hex-literal = "0.1.0" log = "0.4" parking_lot = "0.7.1" heapsize = "0.4" -hash-db = "0.11" -trie-db = "0.11" -trie-root = "0.11" +hash-db = "0.12" +trie-db = "0.12" +trie-root = "0.12" trie = { package = "substrate-trie", path = "../trie" } primitives = { package = "substrate-primitives", path = "../primitives" } panic-handler = { package = "substrate-panic-handler", path = "../panic-handler" } diff --git a/core/state-machine/src/backend.rs b/core/state-machine/src/backend.rs index 0acbf27857..14e60b140a 100644 --- a/core/state-machine/src/backend.rs +++ b/core/state-machine/src/backend.rs @@ -112,9 +112,9 @@ impl Consolidate for Vec<(Option>, Vec, Option>)> { } } -impl Consolidate for MemoryDB { +impl> Consolidate for trie::GenericMemoryDB { fn consolidate(&mut self, other: Self) { - MemoryDB::consolidate(self, other) + trie::GenericMemoryDB::consolidate(self, other) } } diff --git a/core/state-machine/src/changes_trie/changes_iterator.rs b/core/state-machine/src/changes_trie/changes_iterator.rs index f524b0799c..ad70117984 100644 --- a/core/state-machine/src/changes_trie/changes_iterator.rs +++ b/core/state-machine/src/changes_trie/changes_iterator.rs @@ -115,7 +115,7 @@ pub fn key_changes_proof_check, H: Hasher>( let mut proof_db = MemoryDB::::default(); for item in proof { - proof_db.insert(&item); + proof_db.insert(&[], &item); } let proof_db = InMemoryStorage::with_db(proof_db); diff --git a/core/state-machine/src/changes_trie/mod.rs b/core/state-machine/src/changes_trie/mod.rs index 0119c3ca31..c29131cc0c 100644 --- a/core/state-machine/src/changes_trie/mod.rs +++ b/core/state-machine/src/changes_trie/mod.rs @@ -77,7 +77,7 @@ pub trait RootsStorage: Send + Sync { /// Changes trie storage. Provides access to trie roots and trie nodes. pub trait Storage: RootsStorage { /// Get a trie node. - fn get(&self, key: &H::Out) -> Result, String>; + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String>; } /// Changes trie configuration. diff --git a/core/state-machine/src/changes_trie/storage.rs b/core/state-machine/src/changes_trie/storage.rs index 4eb8db0de9..decc332c1a 100644 --- a/core/state-machine/src/changes_trie/storage.rs +++ b/core/state-machine/src/changes_trie/storage.rs @@ -92,7 +92,7 @@ impl InMemoryStorage where H::Out: HeapSizeOf { pub fn remove_from_storage(&self, keys: &HashSet) { let mut data = self.data.write(); for key in keys { - data.mdb.remove_and_purge(key); + data.mdb.remove_and_purge(key, &[]); } } @@ -116,8 +116,8 @@ impl RootsStorage for InMemoryStorage where H::Out: HeapSizeOf } impl Storage for InMemoryStorage where H::Out: HeapSizeOf { - fn get(&self, key: &H::Out) -> Result, String> { - MemoryDB::::get(&self.data.read().mdb, key) + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String> { + MemoryDB::::get(&self.data.read().mdb, key, prefix) } } @@ -128,7 +128,9 @@ impl<'a, H: Hasher, S: 'a + Storage> TrieBackendAdapter<'a, H, S> { } impl<'a, H: Hasher, S: 'a + Storage> TrieBackendStorage for TrieBackendAdapter<'a, H, S> { - fn get(&self, key: &H::Out) -> Result, String> { - self.storage.get(key) + type Overlay = MemoryDB; + + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String> { + self.storage.get(key, prefix) } } diff --git a/core/state-machine/src/proving_backend.rs b/core/state-machine/src/proving_backend.rs index 81d68352c8..4d85791faf 100644 --- a/core/state-machine/src/proving_backend.rs +++ b/core/state-machine/src/proving_backend.rs @@ -21,7 +21,7 @@ use log::debug; use hash_db::Hasher; use heapsize::HeapSizeOf; use hash_db::HashDB; -use trie::{Recorder, MemoryDB, TrieError, default_child_trie_root, read_trie_value_with, read_child_trie_value_with, record_all_keys}; +use trie::{Recorder, MemoryDB, PrefixedMemoryDB, TrieError, default_child_trie_root, read_trie_value_with, read_child_trie_value_with, record_all_keys}; use crate::trie_backend::TrieBackend; use crate::trie_backend_essence::{Ephemeral, TrieBackendEssence, TrieBackendStorage}; use crate::{Error, ExecutionError, Backend}; @@ -40,7 +40,7 @@ impl<'a, S, H> ProvingBackendEssence<'a, S, H> H::Out: HeapSizeOf, { pub fn storage(&mut self, key: &[u8]) -> Result>, String> { - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral::new( self.backend.backend_storage(), &mut read_overlay, @@ -54,7 +54,7 @@ impl<'a, S, H> ProvingBackendEssence<'a, S, H> pub fn child_storage(&mut self, storage_key: &[u8], key: &[u8]) -> Result>, String> { let root = self.storage(storage_key)?.unwrap_or(default_child_trie_root::(storage_key)); - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral::new( self.backend.backend_storage(), &mut read_overlay, @@ -66,7 +66,7 @@ impl<'a, S, H> ProvingBackendEssence<'a, S, H> } pub fn record_all_keys(&mut self) { - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral::new( self.backend.backend_storage(), &mut read_overlay, @@ -116,8 +116,8 @@ impl<'a, S, H> Backend for ProvingBackend<'a, S, H> H::Out: Ord + HeapSizeOf, { type Error = String; - type Transaction = MemoryDB; - type TrieBackendStorage = MemoryDB; + type Transaction = S::Overlay; + type TrieBackendStorage = PrefixedMemoryDB; fn storage(&self, key: &[u8]) -> Result>, Self::Error> { ProvingBackendEssence { @@ -151,7 +151,7 @@ impl<'a, S, H> Backend for ProvingBackend<'a, S, H> self.backend.keys(prefix) } - fn storage_root(&self, delta: I) -> (H::Out, MemoryDB) + fn storage_root(&self, delta: I) -> (H::Out, Self::Transaction) where I: IntoIterator, Option>)> { self.backend.storage_root(delta) @@ -181,7 +181,7 @@ where { let db = create_proof_check_backend_storage(proof); - if !db.contains(&root) { + if !db.contains(&root, &[]) { return Err(Box::new(ExecutionError::InvalidProof) as Box); } @@ -198,7 +198,7 @@ where { let mut db = MemoryDB::default(); for item in proof { - db.insert(&item); + db.insert(&[], &item); } db } @@ -210,7 +210,7 @@ mod tests { use super::*; use primitives::{Blake2Hasher}; - fn test_proving<'a>(trie_backend: &'a TrieBackend, Blake2Hasher>) -> ProvingBackend<'a, MemoryDB, Blake2Hasher> { + fn test_proving<'a>(trie_backend: &'a TrieBackend, Blake2Hasher>) -> ProvingBackend<'a, PrefixedMemoryDB, Blake2Hasher> { ProvingBackend::new(trie_backend) } diff --git a/core/state-machine/src/trie_backend.rs b/core/state-machine/src/trie_backend.rs index 5de6c8837b..b152d7fea1 100644 --- a/core/state-machine/src/trie_backend.rs +++ b/core/state-machine/src/trie_backend.rs @@ -19,7 +19,7 @@ use log::{warn, debug}; use hash_db::Hasher; use heapsize::HeapSizeOf; -use trie::{TrieDB, TrieError, Trie, MemoryDB, delta_trie_root, default_child_trie_root, child_delta_trie_root}; +use trie::{TrieDB, TrieError, Trie, delta_trie_root, default_child_trie_root, child_delta_trie_root}; use crate::trie_backend_essence::{TrieBackendEssence, TrieBackendStorage, Ephemeral}; use crate::Backend; @@ -63,7 +63,7 @@ impl, H: Hasher> Backend for TrieBackend where H::Out: Ord + HeapSizeOf, { type Error = String; - type Transaction = MemoryDB; + type Transaction = S::Overlay; type TrieBackendStorage = S; fn storage(&self, key: &[u8]) -> Result>, Self::Error> { @@ -83,7 +83,7 @@ impl, H: Hasher> Backend for TrieBackend where } fn pairs(&self) -> Vec<(Vec, Vec)> { - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral::new(self.essence.backend_storage(), &mut read_overlay); let collect_all = || -> Result<_, Box>> { @@ -107,7 +107,7 @@ impl, H: Hasher> Backend for TrieBackend where } fn keys(&self, prefix: &Vec) -> Vec> { - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral::new(self.essence.backend_storage(), &mut read_overlay); let collect_all = || -> Result<_, Box>> { @@ -126,10 +126,10 @@ impl, H: Hasher> Backend for TrieBackend where collect_all().map_err(|e| debug!(target: "trie", "Error extracting trie keys: {}", e)).unwrap_or_default() } - fn storage_root(&self, delta: I) -> (H::Out, MemoryDB) + fn storage_root(&self, delta: I) -> (H::Out, S::Overlay) where I: IntoIterator, Option>)> { - let mut write_overlay = MemoryDB::default(); + let mut write_overlay = S::Overlay::default(); let mut root = *self.essence.root(); { @@ -154,7 +154,7 @@ impl, H: Hasher> Backend for TrieBackend where { let default_root = default_child_trie_root::(storage_key); - let mut write_overlay = MemoryDB::default(); + let mut write_overlay = S::Overlay::default(); let mut root = match self.storage(storage_key) { Ok(value) => value.unwrap_or(default_child_trie_root::(storage_key)), Err(e) => { @@ -189,12 +189,12 @@ impl, H: Hasher> Backend for TrieBackend where pub mod tests { use std::collections::HashSet; use primitives::{Blake2Hasher, H256}; - use trie::{TrieMut, TrieDBMut}; + use trie::{TrieMut, TrieDBMut, PrefixedMemoryDB}; use super::*; - fn test_db() -> (MemoryDB, H256) { + fn test_db() -> (PrefixedMemoryDB, H256) { let mut root = H256::default(); - let mut mdb = MemoryDB::::default(); + let mut mdb = PrefixedMemoryDB::::default(); { let mut trie = TrieDBMut::new(&mut mdb, &mut root); trie.insert(b"key", b"value").expect("insert failed"); @@ -208,7 +208,7 @@ pub mod tests { (mdb, root) } - pub(crate) fn test_trie() -> TrieBackend, Blake2Hasher> { + pub(crate) fn test_trie() -> TrieBackend, Blake2Hasher> { let (mdb, root) = test_db(); TrieBackend::new(mdb, root) } @@ -230,8 +230,8 @@ pub mod tests { #[test] fn pairs_are_empty_on_empty_storage() { - assert!(TrieBackend::, Blake2Hasher>::new( - MemoryDB::default(), + assert!(TrieBackend::, Blake2Hasher>::new( + PrefixedMemoryDB::default(), Default::default(), ).pairs().is_empty()); } diff --git a/core/state-machine/src/trie_backend_essence.rs b/core/state-machine/src/trie_backend_essence.rs index b429e7aa04..8101126c39 100644 --- a/core/state-machine/src/trie_backend_essence.rs +++ b/core/state-machine/src/trie_backend_essence.rs @@ -22,13 +22,14 @@ use std::sync::Arc; use log::{debug, warn}; use hash_db::{self, Hasher}; use heapsize::HeapSizeOf; -use trie::{TrieDB, Trie, MemoryDB, DBValue, TrieError, default_child_trie_root, read_trie_value, read_child_trie_value, for_keys_in_child_trie}; +use trie::{TrieDB, Trie, MemoryDB, PrefixedMemoryDB, DBValue, TrieError, default_child_trie_root, read_trie_value, read_child_trie_value, for_keys_in_child_trie}; use crate::changes_trie::Storage as ChangesTrieStorage; +use crate::backend::Consolidate; /// Patricia trie-based storage trait. pub trait Storage: Send + Sync { /// Get a trie node. - fn get(&self, key: &H::Out) -> Result, String>; + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String>; } /// Patricia trie-based pairs storage essence. @@ -63,7 +64,7 @@ impl, H: Hasher> TrieBackendEssence where H::Out: /// Get the value of storage at given key. pub fn storage(&self, key: &[u8]) -> Result>, String> { - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral { storage: &self.storage, overlay: &mut read_overlay, @@ -78,7 +79,7 @@ impl, H: Hasher> TrieBackendEssence where H::Out: pub fn child_storage(&self, storage_key: &[u8], key: &[u8]) -> Result>, String> { let root = self.storage(storage_key)?.unwrap_or(default_child_trie_root::(storage_key)); - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral { storage: &self.storage, overlay: &mut read_overlay, @@ -99,7 +100,7 @@ impl, H: Hasher> TrieBackendEssence where H::Out: } }; - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral { storage: &self.storage, overlay: &mut read_overlay, @@ -112,7 +113,7 @@ impl, H: Hasher> TrieBackendEssence where H::Out: /// Execute given closure for all keys starting with prefix. pub fn for_keys_with_prefix(&self, prefix: &[u8], mut f: F) { - let mut read_overlay = MemoryDB::default(); + let mut read_overlay = S::Overlay::default(); let eph = Ephemeral { storage: &self.storage, overlay: &mut read_overlay, @@ -145,7 +146,7 @@ impl, H: Hasher> TrieBackendEssence where H::Out: pub(crate) struct Ephemeral<'a, S: 'a + TrieBackendStorage, H: 'a + Hasher> { storage: &'a S, - overlay: &'a mut MemoryDB, + overlay: &'a mut S::Overlay, } impl<'a, @@ -171,7 +172,7 @@ impl<'a, } impl<'a, S: TrieBackendStorage, H: Hasher> Ephemeral<'a, S, H> { - pub fn new(storage: &'a S, overlay: &'a mut MemoryDB) -> Self { + pub fn new(storage: &'a S, overlay: &'a mut S::Overlay) -> Self { Ephemeral { storage, overlay, @@ -187,10 +188,10 @@ impl<'a, where H::Out: HeapSizeOf { fn get(&self, key: &H::Out) -> Option { - if let Some(val) = hash_db::PlainDB::get(self.overlay, key) { + if let Some(val) = hash_db::HashDB::get(self.overlay, key, &[]) { Some(val) } else { - match self.storage.get(&key) { + match self.storage.get(&key, &[]) { Ok(x) => x, Err(e) => { warn!(target: "trie", "Failed to read from DB: {}", e); @@ -201,15 +202,15 @@ impl<'a, } fn contains(&self, key: &H::Out) -> bool { - hash_db::PlainDB::get(self, key).is_some() + hash_db::HashDB::get(self, key, &[]).is_some() } fn emplace(&mut self, key: H::Out, value: DBValue) { - hash_db::PlainDB::emplace(self.overlay, key, value) + hash_db::HashDB::emplace(self.overlay, key, &[], value) } fn remove(&mut self, key: &H::Out) { - hash_db::PlainDB::remove(self.overlay, key) + hash_db::HashDB::remove(self.overlay, key, &[]) } } @@ -231,11 +232,11 @@ impl<'a, for Ephemeral<'a, S, H> where H::Out: HeapSizeOf { - fn get(&self, key: &H::Out) -> Option { - if let Some(val) = hash_db::HashDB::get(self.overlay, key) { + fn get(&self, key: &H::Out, prefix: &[u8]) -> Option { + if let Some(val) = hash_db::HashDB::get(self.overlay, key, prefix) { Some(val) } else { - match self.storage.get(&key) { + match self.storage.get(&key, prefix) { Ok(x) => x, Err(e) => { warn!(target: "trie", "Failed to read from DB: {}", e); @@ -245,20 +246,20 @@ impl<'a, } } - fn contains(&self, key: &H::Out) -> bool { - hash_db::HashDB::get(self, key).is_some() + fn contains(&self, key: &H::Out, prefix: &[u8]) -> bool { + hash_db::HashDB::get(self, key, prefix).is_some() } - fn insert(&mut self, value: &[u8]) -> H::Out { - hash_db::HashDB::insert(self.overlay, value) + fn insert(&mut self, prefix: &[u8], value: &[u8]) -> H::Out { + hash_db::HashDB::insert(self.overlay, prefix, value) } - fn emplace(&mut self, key: H::Out, value: DBValue) { - hash_db::HashDB::emplace(self.overlay, key, value) + fn emplace(&mut self, key: H::Out, prefix: &[u8], value: DBValue) { + hash_db::HashDB::emplace(self.overlay, key, prefix, value) } - fn remove(&mut self, key: &H::Out) { - hash_db::HashDB::remove(self.overlay, key) + fn remove(&mut self, key: &H::Out, prefix: &[u8]) { + hash_db::HashDB::remove(self.overlay, key, prefix) } } @@ -269,33 +270,49 @@ impl<'a, for Ephemeral<'a, S, H> where H::Out: HeapSizeOf { - fn get(&self, key: &H::Out) -> Option { hash_db::HashDB::get(self, key) } - fn contains(&self, key: &H::Out) -> bool { hash_db::HashDB::contains(self, key) } + fn get(&self, key: &H::Out, prefix: &[u8]) -> Option { hash_db::HashDB::get(self, key, prefix) } + fn contains(&self, key: &H::Out, prefix: &[u8]) -> bool { hash_db::HashDB::contains(self, key, prefix) } } /// Key-value pairs storage that is used by trie backend essence. pub trait TrieBackendStorage: Send + Sync { + /// Type of in-memory overlay. + type Overlay: hash_db::HashDB + Default + Consolidate; /// Get the value stored at key. - fn get(&self, key: &H::Out) -> Result, String>; + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String>; } // This implementation is used by normal storage trie clients. impl TrieBackendStorage for Arc> { - fn get(&self, key: &H::Out) -> Result, String> { - Storage::::get(self.deref(), key) + type Overlay = PrefixedMemoryDB; + + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String> { + Storage::::get(self.deref(), key, prefix) } } // This implementation is used by test storage trie clients. +impl TrieBackendStorage for PrefixedMemoryDB { + type Overlay = PrefixedMemoryDB; + + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String> { + Ok(hash_db::HashDB::get(self, key, prefix)) + } +} + impl TrieBackendStorage for MemoryDB { - fn get(&self, key: &H::Out) -> Result, String> { - Ok(hash_db::PlainDB::get(self, key)) + type Overlay = MemoryDB; + + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String> { + Ok(hash_db::HashDB::get(self, key, prefix)) } } // This implementation is used by changes trie clients. impl<'a, S, H: Hasher> TrieBackendStorage for &'a S where S: ChangesTrieStorage { - fn get(&self, key: &H::Out) -> Result, String> { - ChangesTrieStorage::::get(*self, key) + type Overlay = MemoryDB; + + fn get(&self, key: &H::Out, prefix: &[u8]) -> Result, String> { + ChangesTrieStorage::::get(*self, key, prefix) } } diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index d8eda0e88e..771ffe97e3 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -611,12 +611,12 @@ dependencies = [ [[package]] name = "hash-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "hash256-std-hasher" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1153,10 +1153,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "memory-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2019,7 +2019,7 @@ name = "sr-io" version = "0.1.0" dependencies = [ "environmental 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.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.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)", @@ -2255,7 +2255,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", @@ -2369,8 +2369,8 @@ dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -2404,7 +2404,7 @@ dependencies = [ name = "substrate-state-machine" version = "0.1.0" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -2413,8 +2413,8 @@ dependencies = [ "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", "substrate-trie 0.4.0", - "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-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2469,11 +2469,11 @@ dependencies = [ name = "substrate-trie" 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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "memory-db 0.12.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-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2753,21 +2753,21 @@ dependencies = [ [[package]] name = "trie-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "trie-root" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3048,8 +3048,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" "checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592" "checksum generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fceb69994e330afed50c93524be68c42fa898c2d9fd4ee8da03bd7363acd26f2" -"checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" -"checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" +"checksum hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07463834729d0ce8d475e7dd6d302e407093ad9a9c02d77eb07fb74b5373829d" +"checksum hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1224388a21c88a80ae7087a2a245ca6d80acc97a9186b75789fb3eeefd0609af" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" @@ -3095,7 +3095,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" "checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" -"checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" +"checksum memory-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3dd87d4d64f7b86d8804bbb419f8ecb187cb8f40a50e91c72848075c604ba88d" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" "checksum merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "83c2dda19c01176e8e7148f7bdb88bbdf215a8db0641f89fc40e4b81736aeda5" "checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" @@ -3225,8 +3225,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" -"checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" -"checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" +"checksum trie-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f23230c31251bdbdba89cd9caa0cbe2aa9e4aa5f92a80e6eb6296bb290e9146" +"checksum trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e45632ecaf2b8b4a40b5208383cd659b4e66f58ccd40086467a4614b45781430" "checksum twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d261e83e727c8e2dbb75dacac67c36e35db36a958ee504f2164fc052434e1" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index ae9fc72beb7355a46404889f50b669607544129d..84893ab509842d425054aa28164eb30c61aad6a9 100644 GIT binary patch delta 4385 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 delta 4428 zcmb7Hd2|$I67R2ja!#1^1QI#JWHOLra&-6f8G>XG!=Z#LghOTM6B0s#IRJN`BqFPb zg24}YsJM^i>6#UnMcdWvt_rKbiwDTcDWb40Ai9U>>OP-)yshq;90>cz&U@WeU)A^3 zSM~dP+mkO`Fvg<WVs@9t*N)S znK7-gSzkdE;iDhrfS(_@<2s5a?ltl1(a;n%29s0yEf$x-}IDu5>A(Vl#C3$F5n&=frB z(`=Hs^|6b&BZ;Zm(e@TKx~e|b+SuF{GhonG-`qq@$1i*GN6yIUvu>&Njj`sYSQDsM zo1p&6lNXwrHUtq-7YEGd#Z5zyYv2MCee0qkTXksBxw9dkvUz`|e$Y7ogTN8AaE&wz?9 z2cLSj0K))tte+vGsXy=>g7G*aI@4YrJ49t(NzC1qNhWuob@*q|Lfg=vcEBLb<4GuB zpK8cRLIVC%a|aT!zUoeh0kw1DhIc+1_namIC_oef81VAYb+~D@klh0bDUxuQ(G8GsE>iSuxMy_*Z2b4t zrKlX|tto)brmxwLqF3TL0ZI;Z!}^h#Uu)n;2GKF5Sxd&e&!TC!M!Fk{*o2H-={LrQ_f_{tpuuT z&9)T)0X7)PUsJT)PRScgTH*{ z_~7At&t4qbi?jDs zp$T@~o_EODM%PR?0N_;BHlPVZUBJSi+sR=k#iLzlpt4{%dT=s9zLC*uO*!El+l)K* z<|N14nElk=G9Q|N-+Ar!jGNuE?2Q*e@bxHoX1u-=>Jhy$FOe7ZZ!DTIaL{1vATfAH zr)hM#z5^%6<4g9!v4fPPyA0;bPpoUwmA7>?{$!#mtn!{e(QGjZU+4DiDtT4*Q< z)bRfOJS5;Z`$J^eE_Ye{EUxQ5g|G~eA80%FV?q9c_EKYesziBq87U7l|Vnh*(sm=AO@(9MV-l7RNWcw(O%=e<8F=^_O) zarFH=I>rGP0^Q>zO(;O`fro_W-!Lv5B=1bfkAfWj*7VQcl#s6n`Orb~nZP@~90vQj zK;0dIZiFWdo{=7Ren-DzCpeotpy-$PB;=*AV6dT&6Y_N+FNJk`fMx)F6(|Mt98f>d zzXH7p=ob)`1BNFFzN0`xK(mOB_@*!>z#fqTPfjvTCs}pbq3= zp!WgI2D%6qIKZS@OHfUYQSq-n*iEx0BO8h#2`VR=vdLiec;ir=(F|VaWkKUPU6G`$yDIV4 z6WMsu8Htt*g_Sr#VMSBbOhv_&Cw9|7g@`H17SD4Mr%Cv4C)#O6;8;Uo6(b_4n!+i# z^<*I(F(SOln3g0eD#NlC-g7dT$#IOt@FpwrCZ`G|lFIUurH`$yY!`WqPK>}!r_*rRY1+>!qAW*P zozq0i6eKBtXPxGAU^Z)U25&?n8l$j6-sH+VYVS%c%=R;a6)`v!V$c~&GNd3rbGj;v zGi8x8)rh3?ied5j1K13Oh)mYhRbAmVRkgU#(mveAfhXC1PLV`eGgYv_=!z+i!=Im- z#ELS{@`@w~rY1;E9#q;CD@p?vaO>VuGt?2_;z0v^@OX z$Gl&cSVqtwe#H`H0a6rC{6z6vj3qJ=0nXeKCCL&bxSWo`VYr$q_{~oQKTL!i7iHa& zB}rA-3b?T5!56jo{9M1LXrd7@OjspDW-yg-jU9s@rbc>h-XHhRzHoj!3R$eCNB}-q zVE71UOuE4p7yphLg-=sK{5=)GqdfU|5?pL=buPA^>h6TGRiAbuTHtvRvI2@sWjV>1 z3YT7TS{w}d;;;f)5EWBmMTTP(gJ&btZ+sobwkLn+ZT^<_*0z{tE~{^fwKuJ)Z!+-q zi{kC7E*pl(3M$X=8q4c5(_^ugWiho8?)NnrE^nCbXjXjG5+BX>56p}G$ZTmgjX5}c zsUS->BZg#%oS*ScmMFd%p zP0p;vmo5dfEKP${h17;FrA8EK{wWZR+o~tVX)rg^xQxV3H zWm%JCo;O6%u<)Ii$I~pQ83Lz6HN$~Ga^uG?FUw{Ga6)GpCBQMPQp!Y1Ilkz>dxy|S diff --git a/core/trie/Cargo.toml b/core/trie/Cargo.toml index 9d93cbe599..a75aac2343 100644 --- a/core/trie/Cargo.toml +++ b/core/trie/Cargo.toml @@ -13,16 +13,16 @@ harness = false [dependencies] codec = { package = "parity-codec", version = "3.2" } -hash-db = { version = "0.11", default-features = false } -trie-db = { version = "0.11", optional = true } -trie-root = { version = "0.11", default-features = false } -memory-db = { version = "0.11", optional = true } +hash-db = { version = "0.12", default-features = false } +trie-db = { version = "0.12", optional = true } +trie-root = { version = "0.12", default-features = false } +memory-db = { version = "0.12", optional = true } [dev-dependencies] substrate-primitives = { path = "../primitives" } -trie-bench = { version = "0.11" } -trie-standardmap = { version = "0.11" } -keccak-hasher = { version = "0.11" } +trie-bench = { version = "0.12" } +trie-standardmap = { version = "0.12" } +keccak-hasher = { version = "0.12" } criterion = "0.2" hex-literal = "0.1.0" diff --git a/core/trie/src/lib.rs b/core/trie/src/lib.rs index 071f49d875..999f1e67c9 100644 --- a/core/trie/src/lib.rs +++ b/core/trie/src/lib.rs @@ -32,6 +32,8 @@ pub use trie_stream::TrieStream; pub use node_codec::NodeCodec; /// Various re-exports from the `trie-db` crate. pub use trie_db::{Trie, TrieMut, DBValue, Recorder, Query}; +/// Various re-exports from the `memory-db` crate. +pub use memory_db::{KeyFunction, prefixed_key}; /// As in `trie_db`, but less generic, error type for the crate. pub type TrieError = trie_db::TrieError; @@ -42,8 +44,12 @@ impl> AsHashDB for T {} pub type HashDB<'a, H> = hash_db::HashDB + 'a; /// As in `hash_db`, but less generic, trait exposed. pub type PlainDB<'a, K> = hash_db::PlainDB + 'a; +/// As in `memory_db::MemoryDB` that uses prefixed storage key scheme. +pub type PrefixedMemoryDB = memory_db::MemoryDB, trie_db::DBValue>; +/// As in `memory_db::MemoryDB` that uses prefixed storage key scheme. +pub type MemoryDB = memory_db::MemoryDB, trie_db::DBValue>; /// As in `memory_db`, but less generic, trait exposed. -pub type MemoryDB = memory_db::MemoryDB; +pub type GenericMemoryDB = memory_db::MemoryDB; /// Persistent trie database read-access interface for the a given hasher. pub type TrieDB<'a, H> = trie_db::TrieDB<'a, H, NodeCodec>; @@ -313,7 +319,6 @@ mod tests { use super::*; use codec::{Encode, Compact}; use substrate_primitives::Blake2Hasher; - use memory_db::MemoryDB; use hash_db::{HashDB, Hasher}; use trie_db::{DBValue, TrieMut, Trie}; use trie_standardmap::{Alphabet, ValueMode, StandardMap}; diff --git a/node-template/Cargo.toml b/node-template/Cargo.toml index 53874bb181..786f49023b 100644 --- a/node-template/Cargo.toml +++ b/node-template/Cargo.toml @@ -19,7 +19,7 @@ exit-future = "0.1" parking_lot = "0.7.1" hex-literal = "0.1" parity-codec = "3.2" -trie-root = "0.11.0" +trie-root = "0.12.0" sr-io = { path = "../core/sr-io" } substrate-cli = { path = "../core/cli" } primitives = { package = "substrate-primitives", path = "../core/primitives" } diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index 34fc8036ed..6db886a520 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -611,12 +611,12 @@ dependencies = [ [[package]] name = "hash-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "hash256-std-hasher" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1153,10 +1153,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "memory-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2053,7 +2053,7 @@ name = "sr-io" version = "0.1.0" dependencies = [ "environmental 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.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.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)", @@ -2420,7 +2420,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", @@ -2534,8 +2534,8 @@ dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -2569,7 +2569,7 @@ dependencies = [ name = "substrate-state-machine" version = "0.1.0" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -2578,8 +2578,8 @@ dependencies = [ "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", "substrate-trie 0.4.0", - "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-db 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2603,11 +2603,11 @@ dependencies = [ name = "substrate-trie" 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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "memory-db 0.12.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-db 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2887,21 +2887,21 @@ dependencies = [ [[package]] name = "trie-db" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "trie-root" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3182,8 +3182,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" "checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592" "checksum generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fceb69994e330afed50c93524be68c42fa898c2d9fd4ee8da03bd7363acd26f2" -"checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" -"checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" +"checksum hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07463834729d0ce8d475e7dd6d302e407093ad9a9c02d77eb07fb74b5373829d" +"checksum hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1224388a21c88a80ae7087a2a245ca6d80acc97a9186b75789fb3eeefd0609af" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" @@ -3229,7 +3229,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" "checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" -"checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" +"checksum memory-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3dd87d4d64f7b86d8804bbb419f8ecb187cb8f40a50e91c72848075c604ba88d" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" "checksum merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "83c2dda19c01176e8e7148f7bdb88bbdf215a8db0641f89fc40e4b81736aeda5" "checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" @@ -3359,8 +3359,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" -"checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" -"checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" +"checksum trie-db 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "843af112ba3a8c919cd961edf3cac9272353f5e277ad8678c7023fa70e5c0e2d" +"checksum trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e45632ecaf2b8b4a40b5208383cd659b4e66f58ccd40086467a4614b45781430" "checksum twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d261e83e727c8e2dbb75dacac67c36e35db36a958ee504f2164fc052434e1" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" diff --git a/node/executor/Cargo.toml b/node/executor/Cargo.toml index 572aa9dbcf..3c2e9a688c 100644 --- a/node/executor/Cargo.toml +++ b/node/executor/Cargo.toml @@ -6,7 +6,7 @@ description = "Substrate node implementation in Rust." edition = "2018" [dependencies] -trie-root = "0.11" +trie-root = "0.12" parity-codec = "3.2" runtime_io = { package = "sr-io", path = "../../core/sr-io" } state_machine = { package = "substrate-state-machine", path = "../../core/state-machine" } diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 396d377ade..4ad70d1134 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -611,12 +611,12 @@ dependencies = [ [[package]] name = "hash-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "hash256-std-hasher" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "crunchy 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -1153,10 +1153,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "memory-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -2087,7 +2087,7 @@ name = "sr-io" version = "0.1.0" dependencies = [ "environmental 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.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.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)", @@ -2564,7 +2564,7 @@ dependencies = [ "error-chain 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", "kvdb 0.1.0 (git+https://github.com/paritytech/parity-common?rev=b0317f649ab2c665b7987b8475878fc4d2e1f81d)", @@ -2689,8 +2689,8 @@ dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.3.1 (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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -2724,7 +2724,7 @@ dependencies = [ name = "substrate-state-machine" version = "0.1.0" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", @@ -2733,8 +2733,8 @@ dependencies = [ "substrate-panic-handler 0.1.0", "substrate-primitives 0.1.0", "substrate-trie 0.4.0", - "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-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -2758,11 +2758,11 @@ dependencies = [ name = "substrate-trie" 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)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "memory-db 0.12.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-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3042,21 +3042,21 @@ dependencies = [ [[package]] name = "trie-db" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ "elastic-array 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "trie-root" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" dependencies = [ - "hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -3337,8 +3337,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" "checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592" "checksum generic-array 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fceb69994e330afed50c93524be68c42fa898c2d9fd4ee8da03bd7363acd26f2" -"checksum hash-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1b03501f6e1a2a97f1618879aba3156f14ca2847faa530c4e28859638bd11483" -"checksum hash256-std-hasher 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f5c13dbac3cc50684760f54af18545c9e80fb75e93a3e586d71ebdc13138f6a4" +"checksum hash-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "07463834729d0ce8d475e7dd6d302e407093ad9a9c02d77eb07fb74b5373829d" +"checksum hash256-std-hasher 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1224388a21c88a80ae7087a2a245ca6d80acc97a9186b75789fb3eeefd0609af" "checksum hashbrown 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3bae29b6653b3412c2e71e9d486db9f9df5d701941d86683005efb9f2d28e3da" "checksum heapsize 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1679e6ea370dee694f91f1dc469bf94cf8f52051d147aec3e1f9497c6fc22461" "checksum heck 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" @@ -3384,7 +3384,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" "checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" "checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" -"checksum memory-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94da53143d45f6bad3753f532e56ad57a6a26c0ca6881794583310c7cb4c885f" +"checksum memory-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3dd87d4d64f7b86d8804bbb419f8ecb187cb8f40a50e91c72848075c604ba88d" "checksum memory_units 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "71d96e3f3c0b6325d8ccd83c33b28acb183edcb6c67938ba104ec546854b0882" "checksum merlin 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "83c2dda19c01176e8e7148f7bdb88bbdf215a8db0641f89fc40e4b81736aeda5" "checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" @@ -3515,8 +3515,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum tokio-udp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "66268575b80f4a4a710ef83d087fdfeeabdce9b74c797535fbac18a2cb906e92" "checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445" "checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" -"checksum trie-db 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7319e28ca295f27359d944a682f7f65b419158bf1590c92cadc0000258d788" -"checksum trie-root 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e3c6fef2705af3258ec46a7e22286090394a44216201a1cf7d04b78db825e543" +"checksum trie-db 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7f23230c31251bdbdba89cd9caa0cbe2aa9e4aa5f92a80e6eb6296bb290e9146" +"checksum trie-root 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e45632ecaf2b8b4a40b5208383cd659b4e66f58ccd40086467a4614b45781430" "checksum twofish 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712d261e83e727c8e2dbb75dacac67c36e35db36a958ee504f2164fc052434e1" "checksum twox-hash 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "555cd4909480122bbbf21e34faac4cb08a171f324775670447ed116726c474af" "checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 98058fe83361cf9906d0499e87134a23e901d921..53ad4d8a909ab9e0a795ec9ec146d3d3b1eba6b5 100644 GIT binary patch delta 77526 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

    ^)$A2~m4>Mj?2*WIlr-H~hMfGPkjddRtH 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 syX{mtDP!=UHN)TpcSR delta 76394 zcmd442YeMp@HqZx2`_GT1D`IkbO|eI~zaYfg{RPG-5eXrT;a^6=n3TRxEG=N2bV*7|FDKRV zWsFG7PqO*h`~_S3FsZn@W<`$8k!sV{tXP>P6`{^?l-M-l7()ur7aENx6VmU>g;FQe zi}WVBMsASXWD3m|HVc>N4?>Rclkg4ws(iV!n`xQSrAlT9-_ncZXF68cNQcrKnoT#+ zEP9R}roYkirEkYn^XJxXuWFM4(TgPx?P=n48K9WIO#h6#Vs z!E^{6MDNh`bOU|wCwiA|rQ7HhdXG*LK$s}pr-#Wtx}WZ)59mR9h#sI1X^EubkLV40 zlU}Ef>3CtBkS2@~Mho}IeR7vPAa_WeDZ*3o=40|Vc|x9%^}+_>XJMm|C8&QbT=~R4 zYfaHi!QrsEY%b!W&eeiL#&_o`!Qp4q2G7s7X|c|gg3aboZQA7 zTX}QG2?^gR z`{rHl`L=VLX_Q`bN0fo$naK40e>&5npOo^#*b91mddSnbmw$Q{onF%Se-!m<;UC|g z$N7DIq(FZ6H&J+=YX5&qy|0gnA;U~2{ks+PC_)nG{B1D32NJHYdI6KGYqFPvra}A7(Cq;tR3O0v!7;`oJ&$)rv9L_|2cRY!u*nPNNlpMvU zzP%U`2t7Rq-Y8CrNON**&c-l2kyNMa=fIvsQkd?Z10NPARp`})`uD}jpw&T=&FQi^ z0&#|EVmT_}28pfguMwOb^H%|{uB2z`2se8_=rY9j{fmu`^>#BRZY zfq#(v`4-p(F;(bKQVZC$q)%gML7Tqn4^odr5v^cK9JRTLOQ`89xCCc(tmrGc1fyAS z|3v}|iADj@MKothykK)PUKER9QQ|9EMce;HCdhF{Q3Y=QMS^RY1rV^OE5uD4D1Q{J zxmCahZCaKs#l^}CoKh81T(bElrntmPHlAlsaY^MM!)hYOMQv;ytpl~4%2OXB@ZsAf?cf#kcSs!Fh^i4F|FG7&b7 za+p+0N-1dbcW7C^WZRrYIcLD(yJR{2GYh`GhXQ^M_}(WKImzqXC&ftxz1MwGnviv{ z@BwLQel4meJtQSWI%SjI@hRy>`OBfd$zp;pfG_c|kkCbD*#rkt>A0ApIW+`1noldHFHZ8T5FRpOB!^4P{vkA_}(z-NfGZZU8%kr^um!yI4WdRz36K`|@+R?|t z*qHi{3eZ48&gy=J=sKD=e-0GE1wUuA4so;>CFgYiqV!ARcOz3PkBoxUjkjIQg!E#x zC2!%@K(#Pw2U&4)GBir0&O9)k5~(po_a)LXykz_0v=+@;0rQH}Zaf`c0$V+`0*;oT zCCNarC()tNdFXkQ+scJSNwgfBGajiB2Hi_jHz*}(h^L?Nqyp40NpF*pP`MPX%yVa! zro~}?DO%C*Hm?(al!{An5*IWsMZ;B0***N1uQY9mC^*Z|AQ(`ZMtdrMMkeySGP$sN zmZ25N0$5Up7W3ql2LH0O0@;vTH^h%tqt(1%4=78Uu>)Mrg>ak`c}2`ig!1KRc5AC^ z&-2&+aqe=JM8P}dX=xZ)p1%D7&Kj4PXe(ILm-sLg7Puz316*PpjdbVJBzK@j-9g$- z!5yr*+=|x0jk4Gs>O(yx!_ATrSTets>W;+HQM`0CmUdw27%b_$1=T9h&{P3CkKMQX zQ5!+w7l4vBHo(PF+^Q>}1YxmZuE3sdyJmCy@Nxo{M4VjIrMeX7b|KccrZ08bT_GuM zyUWKFn&S51UwCa_mt4=+=D=Jz#U18w<*VtdxbpEtK39M%%oWr##TA^A>JC8Ic8+?0 zc9o{Md^DfVDY0rzU%N|#ydzB*wKCkl*7rfu1A&Jzm!kxUohN`%914h~GNOzY4M!{I_@+LWFju2*=2 zx+#iYXkC>Sq$5Ybz^b%P#Qy2VLV=ZVy=;K|q?F^$;}W4?sEQ^A#T7-bPGi^+;#PbZ z9O%G;;C6Ldh<^yJL0$Y=u?8(jj_U1daLGOy+SQ~@$r4ymldhyE#=*z6Xn%TU6+@^VZG@!h-Rjam1o8~tdyAGKO9A*}8SH+GHVS;nB-cwc zq+bZUb<)izKQzja%j)+U)A8iFEI8Se{zVq)d*7jt2>j7a4urG_#SRzVMHKr&`R3F` zF3)SxoC=74%U1MLLXN_g)-;AJf=jJw1^=-~T`f&87yRvmp;#L_mTQ0=+S2-9Z%g0h zY9J;ORq~@g=40A}kRO43LMwO*CBdhk(DuCByFZ~d@mszWT7W0Zrx?k8p5*KlS|7ju zo~CC`qP{gTbHDVam^=acwJy3L(r2^LZQ2-IEHz zu+DTjJv$DPyU-~5&3I_lg`yHV3I=tdUHpGUg$Csqmm)T8#%Orfh31!MU?bYPap3Ao z>mUN3bT!c%)0Ni6`I24o`*X z&uB#I#z~k}N|W8CwXGBJwT#BxWvgGhec*BCqKwryZSHc~UY=iGQ{5G`e?m#sG-g0nQv=hW8%+zqs;{Pis@*xgWzbia+Vu#rz`hZg9L)y9s( zFU03dhn9e;*=FhsaCfA^sw>VFkD7#bXEc=Ph9kRe45W3VZ_!y};A}TE-Di!_-|tSl z$~@!HS2Vu<(=pkobBNjwn>*I0zrz*hj70L!GIM?Uy_nJW#f(0A8Bn`7jrX^ze(69s z-=^uQy(ub%TgQT5UvoMp^`!|RQw3aDeVoQaHXr`ZsnD%2?M$Y@FMVl8@*Py|M?*>- znp&N!wK%pVYzL-RM>SgG+IdJ#-(XjWhH9NH(RS1<6T-_Jo~nP_k8UM_79w4|Fzk>@ z_mb&)i2>;Hu-`z+X=R+1A$TyYZ@2hW?=+b95XcNTHIyzSGxTr2rT0bkBC3@xKUYWR z1{gMqP9ifQW;Bf^GxaK?>AOTe#d&sZ8cZESJCJGmlQHyTLT14SY1B=o!_YK3gq#A$ zIAq${&}6y-#7#iXf=y!gY~K}8BdEcdM^!5WzY%q;YhvvWZJ{9ye`e4^GF{U zJ(EU|Q80fdP4&wYJ}95Z>Sbr)6y^H*Cv#}BK=2xvtDpP<^*k~_FSCG_5$Nn} zNLhqx+@DKf#UfhD?X8N|_O0*YIy+i70)O158VX2hu{rrGE=Gxs=`o9GB`yqhE=Ga5 zAQM8C(4v^uYb@cC{F`O4V?8Yj(W@xaVHx!^nw+L@WmA>4cwb(e&}+8+PQUc8%No&F5bFHlVH&*nxL96a*OJZS5cLs;>UE<`LOqe zbvl`N_x|o0+CbpuOO5q3$vy@3Z@1{v9s;(|LNF6Cp_$n_B1~!2ubCRR)hO2~QA0jy zYRisl5q&JHZz zWYh9N);SvI!|jsXt~K6-hSPo+u!;7dOP0d2vosi#Y+8qnUy3y%VR1Gp$zNsTnzUgt zEXbw}*aZ&Cmw$+cm~1LR^k(WdFsr`#zhL$rr~6-<=`k`KcID8D+(2Yo&K?4cc__&~U5ez%AMj-lq^<5GN+d`dc8 zvWBBLa1Zq*#jjDE9C>X1npc>)kA?-CmfEv~0p$qY5jA{jwQ^pQX5iFn+{85I!NVzV>j+)I zxy}DLtqT{9(&TDhs0Vp`EM+`RQ1sPkwm93rgKT$DPfSB&y%!6v-2ZxJr%VWx5Fp#IY#qfluOiC zu^}?oGLpjovJ{QF%DW_Ie~3RttIz=>;geIe#%sv4;}o6Ck^k&8t_c0~F{g1(<_%gi z*m#DPr{kBxgERCEPoGP{CueC*kEE!;Gq0be)0`s+t;SXP+oUEc0S}hIq;s^OxEVzV zY}$+_afwYd1g@T=KAsv$Q20D8@O*(l=y{&b`*+EvSNIkE6y6NtHK5ijoVkD~nkz+7 zXmpX5Vt;aB76=hbXkl1#krwb3DDA_bz$H}6L5Gho z(Q3Jwn=Tfm6OCGR@VQlE(ZRe`W9~ta z?wL)GxW@s&+Iz?qPvH1HT9*ul*!#3P+jSAC76i_}a7{S#m>Q}<`h9u{zxRHC+Q|TL zKBO1$apxh8r*|jAACG9PKN1j`gHzgEO&dL;Gdv%+va=jy@be%qKgPur7jo=&tRDA- zI=x)8)t=G zHQHWiH9I5G*5y*8J@4F^P7Qw_x524%1?-W9Qgrc1Aau{o6W2YrR%BAT;p@(FDynzL(zgc4}ZUgM8tdU&ufoxIeZ-5DY@UxKuW-6G83 z#^b=_LSg;d7U3NMHf|Rr5OxUB&|!z*Hr}vc#~nhDzG{b1R+7-I=@#|h_X^#Z`3~~>5j&lA{QHAzIr6@lN6A*DRu?Qt#|N1bi~ z8XXr(cnbEmzCy7Rxge8Z>WN%Xh2hZ&p^m3`LFjZ+=*bgjP73`znWglxr-ToT?UZr; zVi3F?DmwI_GXhRFv+06R`J%7`6S{m!=)`vi_3oF2!Tg0|UK|Qu6~5pJ1X@hrc2z*F z$NEIB3(Y-=f_ne!LNtZxH--H1X!?qt)sXNVhy07HyN0?ISJYxR-+n-k6K*h|S11C7 zj8I;T;J$tLZ^CD}uvY&j>^5*l3<|>h+rnu638`Ed+WsLJt^p)uK|SA}!p|aU4F~QC zv7{;7xhHf8ZjCN9bY05Rxm#Y*U^OvlcMXthZ-eaGV~(Z6^s6bT>% zzVi{S;Vm2$N3#ZqZrlinqwDb{mcOjQ7jxLdeZ`8rH`Z|Y=skVKNd{3dD-kOCi`?D8 zzxT(d9^e!&KR13cP%Kc~>nV~5@j>EUo^S<=4f(U1=b7bsIzz;dd48+>Vj-9wB2M+x zG#Z$7n4=N^%L=3NPHF%xD_Op;3cr7C^#K1*3K>d zW`sC6H-UA#VM50SOVR(|#W#65Bj;?SXfT%bIU0sViP5;fHZMv{66nxfaKa@f zdxNb2UEE?l4*<7*(k<4&paea-AOaE)QCL_+bjiqjK`A&C;?@dpqLSR%2Tn7=| zB`uI2v9U)j#3H#L9Zkd#c)O*T?31-(ldTqRAP^0=nI^Rq2bcMus2ciPt;9l<>u5dO zi1m51xXIj!tke_QqKH5(U_pCv8*!{6xF^BQeP^cLr=u83LcAKgGYfaAaTirvb621L zo_Lkg1sh=ehvE*4*p{EbGcJb7gX8kmM`9XpQT^C^fSY|RRwq9|#>b+uIP*Pk=+jBe zKdF;gk!*rWokU|h%F6GD9*u{c#AYvDkvo1OeyY#~1U4m0vHI;EVoegWfN+^()f z8Xyk!JU@WZ14Xr>7kOX$`aLByZ?_+ZhLxj1_{fI+1I0Mr>Z5_;p0K>SF5-;jIw9Zr zcC3W6gT$~@gAllM;Eo1Yd%5V~enZ@`z}*aL?Va<@WzrLuFhLVjV$nhA66@xV#o18D z*Idwyidf2A%J{Y$s)NQ-W^C4*t2NhMdEf*G#??}n%>{c7h_bI4M1i3IsPsuNe6U#7 zG6e)zVrdmjB#kH!G@N*p$At6n&QLMg_s7}B6gRM$4bz5-vvQG1{}z!+ z`4**&$1t~=f1wBBFmV#EG;Nsp6`y(`!^MPLAghOo{_w$Y@zKjT8oG}V1M|8%YJ^xz z9XSPgFh9~Y4VI*-`N4Ohs9J^$?qiwq**Q||RVuH8F6ns>g7iG8B`&`nPN`NN4wMjr zAZdtQfukeEy;i?oUK}=!62J9bXp-6h@jWyfEgtk6VH$5n){uixc8oX~yQ}XXgW-OD z>%Bg%J_u*WiU;#LxHe6!?_BuUu>FkcKj6EGlrx@+P;8v|Llj!7+)lNSLOYdPsYda8 z7xY`>#Lo$-2=AwhRV>G)Rn+6SG>RU~grC#JMHc5+MLe8i6d4UeCx}z{NFg~(z`o_8 z1n*At7GAR^il13h&w}8QdIp38oAty=Vr#--i~zBBUQZnvC@fGEl*>Rx2)}-ufr>Q<(FR2>tyjVx`v^)IUuVdsu*ZXbxupkIil4?`U(^ z{SE~n4%@Zw#19A=3Jqt7<=FKDXm3V9Tlk4!2Pc*^EFaE88$(gI@Y2eYV&=YWDN)fGJ+?fbjgNwyxWCg@6!6j`ZyoV2t{mkXaR8>dfI&ou(82``N8gKJRHH)*J z<4v4)d}0Jc>!sq(f9GOtnYj2hQ`xaxO!wfFn#X=cR*1F#oxK6s`-@2{MPL^%@Le+) zmmfvax|QO4mS8Xh=l4+cs2B`YSD|8xJ@-V*U0)@Bgvw##OjJGc8a<|qWh`u8Ay9Ei zXaNJ(Ae$pFORBfZ15t9VSjhrm5zix&jcJLi%KlSgeK@ohwSEL~d%YM9<$eWkqs?=ti0j3Y|E2No){Bijjem|@QSE2c8pduA z6;EC<*t$XNZGJFZd5B~&nESKX;5EQ~H;P6`(svuh2+|MMY!rVf?uED4>nppkIZLce z?`;CINvwnD==C>=EvOYFMY(*yAgSe>#in^A_sPMv&8!j(Q**>-R&muVu0P8WOOuc- z8Cfjea6_*|L44UT- zgSp$pL9d}ijqRr9aBRES1h-HVc8DGG5KiAAR)0->X^z&Yj(2H47v5`~uB55s_;f?-4UN%)NWX;t;-9Y)*cL z?t8@qWRq!oP150~cJ$O_D83KFCi}zN`^1L-sr9UVVq&>$$ihi%=T=^dc7Dbt8@{0t zFqoUKs54qNAi9@gakn~-hM``F=oHv5J`K%dEN{JU`~Oh&6#idVJ>CYdBn`y{|B(6VzK9?sE$(fgz)cdSLUQC$@5rM zJSBdZ$M@Y&{TIGBxGd$g*n`Z6UrwWu-yhg7V%)zsUGEnWICo;b(hzb+?D(G;Z^{|5 ziUpU)W^q>ctaNB}aQ*$x8M8|#&xsoBJS$ep>y6JjF~2outjZoqZ&b!P^X55m0>=t# zFUYGn@;olWDAu>0H_f|ezv9d;_^X-O{#WsH{t=%s4#Vw%`ZFJ7EY*pB=yXBc6_v;E zxx(M(m|+)$RMKCDj=^d;42V$_`0}DyH8qs83VQN1;^rGtXmfF&H^yAo^mTGaCc600 zi;3PN+&{(uXl@-DA=BoY%fl7;z&K{)NFN@Wjf{u3Y={XN&D@$8zs+F^7>GwbW|vje zEF0`q7RwlAWlve?cuA~KB%e!~7b|eM`OLDoCC}k}jk{Fcgz?dJ!CD-(oeSCO09@>=xcJ9A)jT?j*qW!;BM=FI z()=~aOzCEdnJFHHrP(#vO!3$&O~uU}qaF{x!jxjBcmx)vR5Qf`u{4L~FjGA8O7q2t zBBS1rR1BWdd^BG($pf{psGphQfmK?t=5MBWC>EmTG*dh}Op~<$GsUB^v;Zxinc`7h znjh{z8BOruE=&cPDIUp%lP1_q4F>rLJv#XJK_Pu3?)V{3NL*X6X@@iQXZOYV0)6r)%zrF4RF3b>!oV&81D5`N zEEe$d1V-V^=VPNMJrVPXxc8L#rqqTMG-K#7R@m_CaW^dr-86hw$9SG$JdL|lIYi=t zk=KaiXT&8wq*63F0%3wwm7IhYg7i_N+%{3;|1a+@b0%u1XL{Ubo($)8JfniSx}S*M zBab1!ByA4yhL~4VzavTEEYcz!|o!pj48~(;pU;2#<1oTuAzrEQB+Kr8>&5>yS*hkxY7tB2tt< zSMGv_3DUR1;lH!>;|bCzS#Mlc3KjGZN=d&_=u|Cv3gpC(=h8smv4;Dfv?g_qnNF@>8iW z#rzgsq{bZJ!Y)!x1oB50DF%TAbT!(B9$lqJnA_zulvK$u{xhjBru@6{hV-Ov*e^_e z*Ig*{(g?dPD;v=O89;!tg(tGfEvH-L% zr6>g7{!6JHrhYb4r@zD@SO6n>VU<5&UoWYUMT3a1qSc!@hhpKi zLnYuG+IYBBUG`gV?mroxj#ZmsR+`kBPnKtC(!N~g){l&nh6 ziGIP4P{DH9(9>Uz`e1ofABpoBeEWm6F5#u0xJ%zSt>;}{?>tW`At20YKT4PAD_{=H zP-5VhY$+7lW=i4urNvTL9x&lvE(ODgEXg1Gua(Awx?Bn&&veWkNvyB$ZneI4*)J*3 zd8Jf}Jkn>Zl*))a&VTtvDG09V7*D&(lUTGSFQI?7Rw~AVGtGWFpYNy9_}{-t#bM(X zskh!aOR7z2CV`S0garL;wv-@pnBB6Z2-vz3k?{Wx-%__q-Jsh|NrJ3uc89)qo77oC ze3JJdU9G-Xc&;6N$v$Z;A&;QS0V#*90^uNk=-UrUlL+n}wLdH^5;5E7gtWzH6<1cc zelBPVbUcOR8k>QCe*0dMq4`e9Uw5CB$`A$ngJ(+d;3JIvL5k7)osu#HzVqg(>d33A zH#{p15ggC>xEaIy2!8oh+Do5NXt+nJ0+AP_-Vi+v3ESnO6k?W(<7}`>A9GPEtRkYB zze^K|+rtldQqz0vIoSPpc$1g^^tLpE_!=#3H?s)1k08lzZjF@4I#`!nxv6KW=?@J}wX}(<%1+(r+Mc}*pDA;jk7$^7s zZo=e=RTy{M9=k8al{L-nWhlqAtFmQqYs(~$`$58~f+o~e8MmbHd0UQU+#>7Hf)&#{ zJdm2=W_EZqNI&tYYu)Oq=`zS{~+efj5?6tywINTX>U2ORY=0^>ptG|1vk)XdlcMdJ9BMco zknZ?QD#IplD8YOn3PIL0sWSJsJ$v>dIw^l6I>ULzFxdT6s(>f2M3-+rTn^X5ta>bh zWpOb13^0M3%`MPsd|-GCtZ5>@Ft!t$vNx&>Ay@);ELZWt{kL&`^%zfl#46|im#Wa1 zuux7IWQY(LKv;c}4Z8_z@UN9hQ?|s~B(ip`pO0>bXOxXYxcWGO6(tCBgNPl$^j(pK zk~gfLEn>Mno6lbdfVkFWtObIc&DdVH;}Fi15a=AhaGuD_ zkvqsf0m#HBW!8Y6Jp{LXSv)7Z;vqW%e}U}K-;Q(YCrG!m4^m&kifD7ZJU5@mPATPi zdX=&a5wEQO^jgt#{QcZuPZa!1YvDmUnt~?0G4J`Iz!uJRuvB5cl6Crcm9-H(9j`~$ zL$V)h8kM!j2*R)iZ0#Onhn8|@(egd8(2sTE#0&Ok!%((N_h&VOz1n?%xZnb);IWkl z{;U{!P768NSay1MF8KpFZC|9XF&l9xTG2b^DEJy|pG*Jg0jv=^V{Zkpf-l|3Eu4?V z(&2}pUOx6F$1W`&Ys#h_#zw=Tn4QJ>@hy3x<-)`7N$_?cD@Qi!LjxHebK9u@8N~j4 zxoh!$2pi3`r9^GNhD$B zVQ3z~KH^B`&SjISvh?30SUAO~40{wyP=}{)vbl#4ZFo9Vj>1N;LiZ>Z#-AgjSXa9K z7Ceq(J>2{ZiyKXO>Rv#!5ciKn?g7r z%DeC+V>bA@*%ZG=yA7Cu#&X=lMLj>eZ+N` zm_fOtCSzL4O&VTgSMgr0a+R2)ZR^T@`QFV11=@A(qx++UYXSgKZ=`^o3Pe79l&Kb2WCeR9b$^ zYi)Tx~Giw77N$ z!ty$-f!_|DmoY_)b2m8ZvV_3nydHW@xtihJP0%|T37Z~D;dFrx@7HB*ohD!`Fn~wk zW0XqCdU%HRVqI2_necd<#y*uXL0Em3pX`Bw^;ji(d;@H#$BaYu-rr*Dvn2LAZ#T%m z7gFmpzKrW*>a&l8H=f6muNC4v?jYV^1o5C>u{^ygyNGKe`hTy=+VdTNl5ewkj(eN8 z*$2!#Fvc~B$iS;|b(`DRtS~exgEZJ+5-e%N?2y=qQzr*ejUEkA; zO(68p40yje+g9!nZZDOiuhjSUd6vwVD10epUQ-u+_8wi48RxuXRgbC|0zoZVeU3uM zmZ%#13mDkmk~QM}ifF}JvJL!TSrGix1Q+L-t#TLVKJ?fuNNCNB$h8kzvpo*;FdI^G znE>4%As4>ghVcVMxuP@%CbVIzRYO)^L4q%YciOTMcr58`TULRLg|K!k&N|0-pgk)D zXPcPK;ersRr?q3rgg3gUJ8~q*vC?>-Oi-oQm3z6yz$0*A|711TTg`~{ zNUF*&NG!y05a+eRMi|H)JUeO#+f|-33R(`HT0mhzpFf*`wMJQP(^n(e+@ofAl^DVg zk?|NsjMOwvMOe>Qw&PXVdIjY@RuARbJMXa%$wB?6_gHk^%IOME;meSL45c8HLtrPo_7hT(l4J2pu{ zDQl5eYV@aU5kFFz+?g4NegeASJYL+HC0KfW)y^!Q2mC#-6mcx^IbHt{QunfWSlY$p zA|qI0=4UJhe(%DHzV5VA`K~DDOb`i>-j#*$uH=FEr7P>njz7ey5eD75;ne8=nIYA3 zi?pW4AHvhmSQl=ebncdmc^H)FflBS|HW*NKp&JXfj@poJEIJp}`0l7v+jpzU7Jb5s|WKtyRFg$LH zUD?os)uXc>!TIg17?k~-1#!IUe~wy6JNWu@_8Cv!_?#u>4x3(}Cw`>*BRDXF6@~s^ zpzeibzWsvj=6g@gzBEOLMN(f_`Xw7~og&3vMMA4y=D>a23zbyQ@lqV>Lg4<2wWix2 zLI1A|d&G-8m%n0({7Z0e){LHf1f6?h`Z)sb>doTlNTVO||DanKwEY@Y6Z3O0B=lz0 zEDN+-Z=|!*hoQmjJs$P?pj~*I^Fe+vid5^(B49S=(mRjf=RPKaGj`$l`SoSh>Ak(s zq_5fYQGHoc9z%BClg{6d?c~6(^kdgiH9y#&wZmnoWGXvA$Pir^$burMxR+nwH-dE{-qI?MGf-rkf+8>L9k) z&0U>TTSilyPat{>8%_qp{4u!pro)G0*=Bsir?I-Yx_q976vG2n;|%(B8pozP{P$im zltbcLLgQ`QEK-4t@H=ppcvL*k_x=!$u!-~Nupa<^XK47MH_TSvxD zq&O)i&1PTGQM2Le*{n!muP$3EtYubOvr2m~LEko;eM99<$T$hO5z+K}cEZOw|14_2 zZr7*gLa^qnUU>!kK%o22!t6{omyFbFuVyz1o^jO6u3=6-{I%Ay$^M>cX&f_**kR1b zx;t3Se@wlc9ju3+r^{|`F=CJ3+{soM=O4@RU0b&&27#Y{6nSK+Q4G&NhVNoSI2R!! zSEO{@V>r3zdCm@l>U&wTM__)U=AGVyWn&#d&}*?60HOO>STQg1c)iY_=yiErE}KE? zeN01U|85_e^&XAo9Pab;(KbVLsCJG!$zb<>oNzdIuI^{o$X+;jfW46`h#>SJ^FEZ3 z5851L4RMQT;X(Ez*#Yk!Vwdp*-y4TnDQel*R`8w2zBb(3XkS-}liz`JM@>oAWsB+t z^%!f460qGdRx7tbebF&KI+^;0<7_0M)8;_EldK7yb{M9gWN&jcZ=Gasl8sR26cX{t zVd#8{RpFl(onn29E!|^mpi?7iIo>wUvhYo7b%vG1;e$Q!&S^H8dwgfL5kqzM3u}=@ zbnInaLlJI*ECI3CS&&zFX)bHwdboSzt35N&={ioJrv_w0wMYEQLc|TUHZ07$-7vLV z{8CPFRJS$pCEA^hkbQ$S^x#|!s@%jOcmd~rH*v77o?gCbE+`G}u@X@DH&&Q;;P1yQ z7zW%%U*71)CLxyIX65vsenW1l>osX!_v*^`Pet@1cG_h}yK)0myp4w0xUndK&<4DT z%WCu$#^Z6c+g2n!Hrvue-gr10CHv{xA8ZF}~J(C+j)_ z=L`72wZGUbx^ApK>JIv=*dY!!pNUJ=d!~_yglSFLCH^H4IzGe(k3GPJ__n_+!J`MP zV=j8_t}#ED@DL5Lbz@=Y!(6^FSj^|SZZ&#@9Ni9l9M?;>|-|BO>r|b)Y(*E)@hSBFEGwaJ}I-1kKz#$L6oq7W*XUOlpmJ_H+ zc|0v_UdH+I3a(dw)oZD88_9!3Fm#KN!{F!xRuJy`%i;9FSa3S!yih`8dbZQQbjtoz z$!&`-@}c_o`Q(dC9hHTANL?w&hw0(+im1t^KgEjuOt+FK=0@Jq-;0o&2<(B$ADj#H zU!&w+gpNpq)-m!sbY>bXkC998sbMG*j>P)8tw3PBoM3tDC|_m&+zs{P z7FzvaI}s;mTXArCdm_QW-mrHyZS+A{QYKVMZ1CL?J`L zTZSPBfn3vDg)wcosBAY@l^y7`ilf`@ZVB4A!JWlbRpqBxZACS?H3IR| z#A5W`=Xgsh-EBt~JJm7-b6Gm5$+KNX6Bz%1F%MWc5`%d$0D^}?)%5)kos`Kip}L%d zfLqp(KOs-_%{6cw@G8^oZ_15`2X&}YOV+T_0k!0tn1#U)so3q`YNNX<8T{(V&B;^v zsE%9?AK%rHE0Bl!(K>QPLMrLbdU9KWz`NEru-;i;PCz(!>&t(Tr}~u!at;2mXhXRT z<_>EpCqzHRF2xJCC3KB-=5G%qyb2I?Un8KQ66|j%M`N3}8pOqi!c>ATP2|Fn21R(t1Zr4D$OOh^dO{|i zz|tmiks>A*X&ehI6E9>)23?1lSnyiIcy+XJr4R^gDwjmiHJjqFKGC~0mAeq^+^Kiu zNdA1#49Oa8G#OXZw>hs{%p8NZdh~OqHNk8@V{r`inNkKpbd; z15pW{w2|xKqjp=FUu@i!Kc2$GwsL8cM$3?|%5!X13H*4vhcO?*#kO)6v&4L>#3BLj zFhVMNIIl}P9MVd#vz@`}f3`!0d8+qlFTX`_J<94}G=8IlH5O@T;gsO*OrUN*gz^9_ z9fDR)Vn<#N7I(ysJc0cku?J7!?~d|N1U>XUxh6h#zbBW#ZasNV9)~TAc^|bU%>D5L zgEe=3Ab*Cbp7H=o-dTcn|A$JDKK%KNAHr)~ zN%P(sAmh%0-f$pi{XDeVBSz;2$?XX}uvpiI$is=XHDyU*kAuyS!suYT@{QNBlLem) zmAwLWHw=}haGRsWFgYKgyYJ|ohs&pZFalJsH%Y$s!bOv}=Aq2RPx15R9{%u621<8K z-OP{$f0(Mvm3iufF8Aa0^RBFf`8jeZKc>AYM|NA@_H+B>SWvgfg?(;kqmMHHqow(_ z!Nx6e47A=NhgcCp#)^ayLaAHi9&83~i=oz2a;qFRX}@fT(5-S1AArQIa$!#Eb6e$L zNZBe^;h8^fl?@dfGtZHg`lfAixSii&a(bWqrcVxsgqOrwjfNL;^3%I%zUC#Exw^-5 zJHIpULdt%*ERF?QC`I9E4^hz%@5ecbIZqDYC?)IR2RW0s(}Rx4WBAeNImhKtel&XB zDS05dqQ7xkt}o+r_yzgHU>w_959HMWVeR;2weiroLVVc~-F8%Qh_ju(LA3{mAhbg+ z`#0U`@f>J1-kx8{z4jUUkGF?&!cHDyuGH^!Di!(uETRk;x1H4 zx9{VG@Sk9>$xFXG!Csl2%0hyKLaPb(c$H}8mI&?|?V5m)Z)d~J33d%Bte2Q*UuSq} zZ%(osC-MxXvJ%+ylV9Lnus5JHHp5)78#)~pE~3*6`*0!lr3B^iv$>X)zIduVl5!W{ z`PuehIQN~MU%NbMx_#J-d9ZQ1{R46t3eK=s_{X>O8TJl%so|X&cJ92XG8558kOODh z`*@xO6b*ON%uTNh3ax2=Hi74{k&M!OaEq@crdJ$_w(jeL%gg7~8unNVf9y(`_4$)Q(| z-;(JC7_VP;hazAz(;M)G)h6I`YhMNU+**D13VT@rIFk}$Zrs^+Wub1)+JcL2;WOF#@*(! zed_!jhOf4_deygwtL?pFrYy>~rIfJQxO+>|`ln!6_q5c`c)v6r^w*{=g0Z^2GsWjq z-CnJ*S7E-p%=f6URlF)dQ!u_bMJwVGu~Gf~HTKa0J-i2ouFvaI$ctSXz`NvtKi1om zd=}u29!2LYUaMRaw6aPpGzwKkXu83U>k`b`V1J51r89oEm*N8V(9iaMTmm=QXm=B` zRPUK(UyeJG7}v*Rfl;IOg?iccE*PS@Cfgp5!s^#-`(QlS0UzbqW9gt>Fe1lZ$nO}6 zVGQrb!!(3n5w#)5j%Trt?1YG|_Al{@r*T{D70K7IYpZ=~SVc!&^NI!6r?Emo-d$9+ zsk5Tqf14feo3B1pGzum2!4Ic|@KZ^~2uV7&av&LytFN6uJ`CdSi}Fz2|vSt?T78B4fc zZx{q<1Rzim|2N`Ij4FsTDp|&*)fj}sPa!?`4dL?p9SkXs-*9E&r;+f&BjY)NKSkpp z1>U1(OTj)GS4V^yZw$ttup2jCWAEVZ343`$A@QWWztcGVVBCI93|hgDC+*kBB7MRs zyepp%{MKLWzY}sq&pd12Meyv!!1MO{&Z9W}(1yXg&$(KJw~L)VZ!b=+>yBS};al+N zg8ge=`OAy;cE)ml^b#&V$W9L~*$c`?2{*m2>jf?&dEDlCkY#A?xWss&QF&n|KLc_O zgC0dKgQPf*=#8(~zamj%O>d)hx@?4%MB{SM9=LqfzJPSl)2`VwN$tZs(2;S>ID23$ zQ+P|ch~j0~kj;7L`#fj<&Y$!;^XG4tJ2%`crw_kjpGVng;J!J~B9tHk;1i?t;OEII zlhLptM(GPd&+Kd9zDs!sTmH7!(9ilQi2_s>ly-Xie99EL{GvmqYtOhvZrEhchHK8B z=B04jqG=w_-)T=dZPn)7_F!fr9$dTn#J-e_)-#^kclrLGgZsbI2eK00jZoT^=1h;W z2Tc-Vj)-paL>uxp{!{=4-0)uwiNL5`&dPkqki#MME(x2IUr8h)6wj};jpnlkc^(-r zR!X#Cnc8Rpdd}COCB7iPvLO^TJbvg6#YZI@!r?!25}9n1V1JSl0T8KtOC*SiQYu5E z1cgDzC?zxwPo$ew%%(k66hs0A5Q0G=&x3v?eP)!>oCHrprxD-THs+3C%9;O0L?bK*wK&Q4E z`#n?AINFa>vQQPop@V+Dit@$lihf>A>HL}r{-m1n145glDR`$A-v5jJ=mzkn(v4oc z%sYdd?p_y2zEKl<_2e?lsHyzIOZTs(?8o1cdAqjK(RYOLlLAiMvD407fep2l667Fy zN|aWX$zz#%R!jl+U!lqKK^^65j43!k>H0ejm7lTefp05)s0VxeQ3<9EzXDSmD}}9XmH%eb{?=GA zu2*i{M49%Y#rn93vVpI#KQ&dNF^=ym=1OsleEp%hQVYAP|K41wNs2AKnuTZAwOG6!zCJEv{IDO+ zPW~7mX=ix=W)uz}?iZu=1hX0_!O*iM4mFbMK})4MJ#ZBow^HhJc+*=cpG(cmYm|rK zGRO~ToaQ%Hn?JB~oUihNHcZ6W`l~$qIBwA0;WGS%AJ}<`stnN`l>#ulgA(AqPZR2K zMHlxxUs4gZ=?Lf-M59&h!c$y)W)M6JIja;}j`))gGB`UbCB5z;;lV!8uA}14Rb$}W zj>=?C!`Sx}jIY(ZyoZa8<$B+I+0EqR%%O zs2}`9`Ck0@ZAE=TS0zXAJHFeDROC$^+^v7qL&+la+-^Otr-Hv&w`vc({e@BmcSFZ~ zq0BdwvI@PFF21MHf2rMA#di_V%v;e*N#vn2=X)8f4xwKuQ9NDlE2RzE&gow%7+d!E zd;Np2ah&~s#ehubY7PKnww;&syM0mg%dDIX>t(y=1%b{*MVcSx##cPVJeM~=1Vcgb z!a029j5UFKdq){rXfBW(hHG8k)s0ThZ2QJN%~XNP#1To4cNGiqnN zS~NCxf+3dRFPONJEfE|;m9k`+t_@ZC z2zWeZ!*Jyd90bo!Yv4#lK^^NZM2}L^(dn{cl+uaPJ2UjivC0gQtbz6E%3J?umWvw# zCn|>Hsmes9j?)-sWXar-o;1-M=`9n@k$ybU9O;Nj%F|+VP2wTxI57%hhfQ+23~HuP zq-GLkVp!>f47~;@1&QyXE1PXxMaRjz>;cG2dVll zQNqbGebN#ok`!NL5Z`Ii{tn3{{%w541V6(yfWPo<)(IJKZmH6R{0a@1DPdd}=(J2R zg5-_3s1EZTB5YZv6o@irDPAkiH84YhPTu^Anw^gh2k~xXj^7QgOL5!Md!` z@+2P1HsY5JPvX98xV~I5_WA3tP~y?&^~DM$7Pkm8Rw&D1RrrB$ml0x84e!fupQ-f1lUK(w6^WwY_(fMXk}z|M8gbh=|M|3x<7Va`uxhO` zl%Ei){F7pa(*LA1;Zkc$Ub+OtuT#obdFe8MfF>Yi@?=U+%voiOLN{|1hM1!O)7L5C z1#-p5ptUIIj2nZE@7$YY=RD!O3MbbotLWvakhWg=f=n;JG!OkBm24?L z(D<8J3t`@7oMva{z_!gwTTacwIZFA!^#&OlnPiAWx{S(zZaGRwJ&OvMHRL(sy@NT= z)#B7N#RpOo-|@H{axkYTw|S9+_va|L;OtL1vPg|@_bA-d)fenh8c-Aq_x35t#m6E>?i!qs6{`=xf87RGk00VLsqxWp z*KoK>&T}{B9)^sk|*Foc`~C9^O+zNNF?L9ns_9jmw>=d7qJShL2XG z)i|3uW3emzW+w^flV1G+&hYGZ=3X@# zbe9q}6+^z9o`^3O5BF;9RD<+)Le)2kg7JU2_M;J;=@U&kCyPhP5mfQGem#Nz>}6vCzK0s^l}h$<_~i`e=hP zz!hiIf;;%M`fl06p1xCV5MbXg#H(|RBk~%$q@6Z5PD*E_b}a)YC#VH^D9p?^)Ofg> zfH$Jzyy??iO@jEMY5^Xc)3B(@ry&e2s`7a4%%bWIZlTXEh8W`Kfr+YNM6O6QKA%s- zA;X?*E3RH8JP2-ik~)vBn+&Z=s?kwTCmM&FEF|wvG^`c_$=@cz#FFX{yd^Ys!=PCy zHH0o63tdX7#t+5KDrLamUrMb__h&$OX|*IL5Rxz$o-|iO;O9E3;{__&wC^Xtgwi-K zFrFu&xrdZ|0$wPs79v42Gd7_-^C^ceWtUvbH^!kIngEey)j0a?WT;hEZRfMbERlql zHfO-HvTAEOa1y6TF{oHhHNx}imQz2((BP%z)CkXy{A8dx%Z1c5^jq+s3OZ9x4ezvy zyPsZd(7y0P$KD%2mL^r^U#(e-pP_wuHHI!vg8}8uVN0#5mV)c$)e0U@1V&5{?YqfP zqJmnSlcjwH)$l7BW4@z;8fkHoWyN|p$*^KEoQhUdE7F(ganLYXEnvoGVSoq5MD%OUOjha2_Io_T+DUY|)C+Wp%s`>dn;dN@OO^9b^C;o$7 zf0zWP>ZnCt(_BnlbrtWVF=SFbHS{&*E7nuz@bYKssqcD*JOoe(1w(3rY8(l z9U7>{fi45-ISth4&_^b`7=#z#1q4VnHNrCn@w}QHMr0^H(5<;@1oqC9FebdwTWUmT zJO2Ab8HE271X_!6IN@-YW(&Z;w{V&H6JRrcVp?jb*2rbV4h>P@Au)2nAU|X_RNIhT z9^&Gbm#E!H-H$(L7S>qZZr!tI2`Ku3*+Q0vT)y$^qGLA8y>-vy))Fdz6Vtq3;T;V_4g?Ea%1E5iDwFfkM zS3T|#iEs0II3_9H!n8J9$HOJVpm=i(Q%`B3s=U;fEpYNwg6~_X$<8%XjJX?tW9N2g zBd6%MTd1EBK5A`SnN!V+zOcO&3hlYm`08gYC5BAu(^~ELnkxt&w#K!?(=RyOMy*F5 zO#xS1HO>mX?bynTv+`P81(|Kt!gT&r_@%8{Ls)++3kH@)cE_;~frjnO?zC!$-PsAl z+x@T7z5~vQYWqLQQZtz$*st9=iGkUy}1K1_x$a- zjU&OwL$j8%`lG}4pDd_lqr-Q2{U$R@55F9G@s6CD4KEMjLrMG0@Zj1zmZSgPSe|QR zVY&N1QI?+)_!TkM>#Fb)J|bA_9oVs}!Y#0a)M7?>alZ2%hV#J;sErS@V>809hd0n1lOQ9b z?4mt&8t4A^&+xS1AG1+5w<5guPX=e;%<#Rg7{b0JYWK^`@Tr_C*9<-8>}ZCImNI>o zD@wk`cgsUtL-gVDeo^dwIlqA9J(|1tn(*3S=#%BS*qm@ZXOpJ&wP9?oLmB$l-0+)S zp1;!*0QAwhj)9$bdIG?820zB5$a?Tj_SSXbB{YSm%nLssI=mv+^ZIa+L#odW;eGsk zRPXCCy?fp0DrLA!y#cFtSGWP9I2pI|x733p~wR)uRhU$uYz#_*4%dA&Rz-Pncy z3Y}~gD$)DNIk^ZB<-b6u_tjssi3`HtQ)R51!}tHaX7pN!Ne|4o7m{FQb#Do`Zn$;@ zcth>-&e$u&*53eJrPx;}fB8<<_ZA3aOuLplunHI4;j%{p~pX>qXp$y;HV*T$FkYDO|b`LX5j zfQE;WPt00^QUQ0zlJM!Fm3Okwmq5M4)eEz>L*YGXsjDuWwiLD4ox5sjcpF^Ycjhw7 z!ll7dcgtcKWDBWtU0iKWzb)J#vFneuIX-24>yh1iTew%+mr?oq+&}o`F9**xyFL5^ z9nvUW9zOeT4Nz|B^6;~vzc(9Z?F7?buprzgcW7mJc#t~r#MO|b=*0XS+^{;_81t6x zS?#L-JZJbIUTI(B$!!PAz8r$gyWYUDr7`)u%MJJ#dsiDcV~m>(9=Ho*SUFhj*M{p; zC7day5A^z7;SOEANdZaVa3^n4aAxgI3Wr&5UBuqo<(l#M zotXiav+vn(PybI-3zm~(%{w0BK>15Js8MO0duK_8rFnljKeBH{EI=LJ6h0BBd2e%y6`xJ(QiXYq_dd-mzxw)^0FA0`b z;`%rP6aE!$-lPY2qTx3c@U!736*w?Lr(cie`u;0?Voi3_dnoKn_Ue1#u_e!KgtHh< zzcM(G;YoH*@(p@FJi6M9?eBw^RlFU3ijL{^c?UKa!i(MsKVEt64;xv2N?qR#Uvj*> zE$@a;CH!OWhWk?3@4ayQR<2(L{LQ7)-lM$x#o>FH z{6V<1V&>yGT8O=Mc$jfa`{1qs5D$2t zusrZ!(uu#|DUFBS?3vyz5;Gria%Vz&B9(HX8%=|Y{`f(7Z*8Z=dp71?JrF)E6#4?& z3?GM23N2pCMt+R`IeIs{_hX3M#cS9HABP8q)~sP24~9>Q?xNG9?+edxIN$a(!AyO#W4rB!mYel z(dD?Us1n(0(BeCMX&%$rgI_jR!g&Snhw4$8=D{u8`TMjTyM2`od7NU-{@kX|!f)3t zU4^RBX(;lZr$TUGm+yInF4OGM+3l1n_h=IFfdFZhf)eEHgOmRq+u+W(d~<%DAp-2ZABj`gmzj+2JCycvR^_%`swk>Kp4JW)gF&h#2W8!xdv+fYMrK7Ndx3n{U2P2tSY!bNOiO~H|Rut&S1O|R4x zb_Qkd_zQOp((bl<{Dss@MCKJ?3u8ScF+CsczwYrqg#;bhIHLfGP8VVm- zft6dwxuoseFut39WKnLLAS`jLz2TzZT<*9?6v*y=?rzK{jl+hX^qg3PwXg*t3-TqrJj z@YkJebR31l>pnj&;9Gd$6L%zp*MryGGg%RW9=>z94ye1Gd{puke0RHdT6j$IK5G^t zTXo$ptd=G`9K4o2t_g>T(wdC0kAFDL0h#j}o87~mgk&1ltY3Z&YS62v@D71D?uCMH z%zfEQIL9eyz)8YhbVS46!jU4%cY5cFeu9a__xlMS1#6-H0sJQBj(I|R_El@4F{?E| zc(<0@L9A6TVGIr_0{lj{jL4xFiO1q(1v_xX_aFLnDN-m9+4A1ZP!ww8GTK zpmp6@;DLZGKO3_LR}wEcM`#!fE@tb_7487RT)*?cm@jf!+5zlxknlc8T+C%@2k?r> z0Xlef*m=XaqiccH#y|V4+3vKdi@DO6vAK)nG7ZoHtx|QeoeAMt- z#>y@f8s+p0gyBVAr!-(U55-FUU?j#Ft$cd4@MR6Oa_~PeiYUHXCi`bjpsv#nCI-sTT|Pp`;@h3t5zO z&Uj(e?@HP=!4+cGM4@M4NgF2$^?!%3Z<646p)Z>Z{(eJl-DKh9BL3AtUj3h@3c28Q z?7>U1!}{sbooxT5!a4a)R;CGRDY=Rx_J zUR1|T-m{fmdX?}DHzxQjE%*Z6@EO8w!Hd|JGX$9~9&%)DoNI(S!M1sUar|kKn>}0TiHmXe^OlJBD2P5AhScMXn%fopJTEf5?Z*qQ~vz;9|72=s&OUls`M z;Vo}-v#=o8^`3`r7J~RC^TP|lcYHtjq#wWGrVYnWTNf%X9ZO*sE<)3O%QamroKgcH z&ciQ1&S-*2=)$LH!`1Eu-1pF6WcsjdcON~ z_g3k8!8w`5&&|!jC8(dQ7jE-if;xAjFuC2lAQ`Io`U`%oM3!p3a$F+}mg#+)vmU); z3N_s%ti~$azDelZX%&7zQmL*>u3i7rT%T(0nFNP#&lPVL8Wx4_x`B0m7^>T@8`%FI z7EWyZ;SJDN>q2{tMQRJs?TTRgHZE%zy_yZ)BJ>K)ypdhMMd%!v8NzkIHOd;5HHgm4 z?bsr8z|VSepFScq3x@DDjoLY38vU*(_s^}u=M91zbK_nW8q^Qomz#M|xThw<4xb4- zBS`=3d*Q=6q4}%W%g2P5f_FZ0dt^Rkx33ksBN*(Nd!}}zRVcWIeNs0v{hWuF^`)Ci z>0@-%@cWlJI(bdU(bq9>H;=kLojZ8c6*!A{6o@xE?~!go*_>djopcJRSMJMj zxpuKgmr!WS%G`*O$i5K13ev7YWMVM1W))k~Fk<7|21gr4N<~yPc0yzYg3TvHt_rTr zb!iuwRfKPcZ0s0GBlu6pNLvI#r$`3`svBJ726NqDlN-G02Eon_WG6Qm?glg5V67Xx z;sm)LI!8VY1y|=j>=yZNQQbLrLdl&;r`h)@pS4IwPQ!ps zNJpm7r%m3|Q0e<~Gcu8OH3qD~?UH5xD4XW0!;2VDUvfVP!^uF7@+&CIuJX2*T6)`9 z942?@#K;3hbt}Zgi+)=^AaW*E;p_y1ksTcrIa;~c9~~08o{GESv`8Ctz{b-e{et-2+_$Gk1_Xl}*!E!&nT;D3iQ)aK zVGw{$5(UTHSos-F;_NdbuOjiE=R_K@@n=SE3O>MoIx|w%a0B$54k1}ANA+a<{)kpV zFuH-s!z1ODnQB4iJY<5{3&SIQN<0Gil}n^Mq#?Gh?qkhIIQgSSM243=;1)n8Ya&mE z3RUrewCIN1Ya=4Hg28*(TW3YeK=kLcBBvned$vPj&e@UnsOke}qty?v!)IesZeShG ziHtyiw)`8xS?5M7n*V2ov!?kM;y+m7EH&o~@&8`IzBxB?qV$a~?XwlE*Lg^rxiSy; zlatnkbv{25>$#R^koO-~CiAGf@|N+ayYd$DC?MypWXC}H|Cc})b~jbyB~IC`#sN0TNJc@SwBSbyE^kPPp+lHuTOc*pNxda>&!MzW!oR~jqh%^g@x2#1i>2jRyZ1nudet-O=nM zqP7R`BC>R%cWY5AoC1aN))v(g#6aJ*&wjRM{=-Y~3!ZL^A`gVttYz;miZsTl`R^A+ z-fzBV6ZB9B0{Bit&__3iT7{iEBj7#7xD&!j$DI&PI>P$PBAUQ2oxrw1?%ZV& z{7Cl8ThUaCN)LLs9HL%%2s!FKoc9WN4G^f7Lt2$d!!{hVSA*a zAR~v2a|`Rw2JMU-3*B%K}{@LVKbZ5QO8*d3Womvltx zcKoa5c&(lLVr1xFuiLLLM((a%*ay2`kM#Xrwd8+Aev1bJe{%?O7rhZF2^AE;Rpw?&2H7V+L`qra=}5D`OpRT1G}5G?R@nK8loh6Zax~JWFs=Kqkxu`oPHmD~ z|7+y38in-YEyQLl8xpPDD#MJ!Ki!h~p`jh8-XN;FW@dmlQ5 zr3Z@LLg$~s#tal&gb=@Opg5p4r}r4zF#@oMmP8#4u?RnxapLUjfnuWAKpBEZi-K{} z*r-8bw-mwe*x=$&`n!+h+swyl(qF_qSPkwKz%3@i-gCTizo-WH#_Dm43+sI35w>!W z*gE9VcJlZ7+H_z8!x5A-o%BP#^dC2{F+4r6G2aK#jqJt21@s#E@;hu~-G?Cm)>*9H zP_dgsSN7%i*~k_R@yZ+MOFwrb`+=t~^QDj8$Syd|gCFZlzkDNm>NJ$I@ly8jX-rwm^4)E?x6XrvwkBRI#g^e zZM-zU?(eF_zD8AkSH#SXxrc{}Qn2E(TcS8783=q+CmKi~d;xzne+uL4z<8P=y>B=g zP!LYWAFao0kWS2sr(fo!4??=;OW%R_PWWq$bSlq-uL$f!gbMx{gnb!-XOPwff3F~& zLSDercprkl z^DB#BUjwX2FL)+=RyA)(0j!^0k3gQE^GqXHulzu#NHowC1WOPS&*$urhd+#Q*$)r@ zi%L+h@Zoz{bcbat()jXkF6CL|7bwinBAY$v=JE0aCjgl9nG2CgUCEy{9x#vp6~1?4 zy=b5W2(C1xo-U(-Cm_xl?OBNT3G@yGmf(d7dI#aD2-_Ca_R%B6E^2vU zHyx>_t#_iENY3&}>}O_c*vPZRHVzr}v3zeI^^u`Lq30=(q3K*58K*Wb8ULWwzyR_U zz|md+nRsc?Fza#S&`*d@3GAytUuZA1J5#2c2lON^(F zMw}|J9bs2u7d+!LBn(H!iR{U9#fBAO;CDlmp7v+t*U^t3<~xY;q90X_k3fe-C<9M) zYt_6C1@X~uCSGhQfZpqgHn73|oLEfH%_@j;8Wks0V@qQvg3n5o!NBZ))YT6HJB$FH=*%J|(!u0gP zJIRNmr~nwK^Yj{@XVIL%XUOL)?@hdO{P*xq5_CI4rvSV^hpkVl&kdlkx4%GaQK{IR2t3jg#$b}tJS~)zh4}{oKLc>1o4SkX zO1#s&cpq_idII&DMFTh+8n^;~RN+$*Z{tfRc%)YZrXT|nF7P>QH_|P3Al?|^0faP} zzr-K4?&9XrKx>5a5mNfY_@mx^9Ptjm^vAq(F7j92;`V+Tts?VqVoP_`yA{Noc?gNT zOE)8vD>#=wUUelbMBJ|%6qn_P;uZ`m=_8K=pXSUD2x-Xn1BNR9EkYUL22_G7eYlm| z$f(-dZT%C-;L>v>(rCicFwo;?gBK&Oj>85W(`Ld`dH&uE?;M4PQvuEwAd&J^dIz_Q z54Wukm*D7`3EVvOO5DE0eEhh*s=-|dT5k( zCBWmi!Yro#qX(uU(Q(=`#7F1CYUr#39X_svi#pVs=b4B8I+)eqZU!#rc!Yc2rL6ZT z4|jsE+!@v2KKd8Sol_0&4&eI7?s#=xUJdRm1$ExvntgDYSLZdpI&Y~4_q_t#k6W`> zM~mGYvAfNO`%(dJ=?T$5OZ3lw+PVwWFZH@3eHqeEM>rKBNkM-;t&Mg_AA+z3LR#ql zd@T4jfv4NJI`KM$WMlaOh~?;Q*h*b&P;mnCdllqU0l%VQ#3?vucm@^jiTH*1BR)!x zGBYoQF5g*o!E>qWLIwiA0iREdd4TmMrYnXDfortOOO{oCLRbJSC%hT3eD+hpg>++p zrIkjH3+tBeBoqQS`5mwWRxRvsUr%iPlM1)-(H&Cp@*j6w7XWkNU1%8kD?HpI%5AyA zcsAv(k2K&&`5b_dctr(I;NdE?gc$r608kLNY#$AfZ+1EUYT~b~vl}0ckR(wQT%LIG z-cD}(8}u(ts35)( zbUA1K5qX>=60ttJDymMHCjlJuiW#`8YToFA_^W`WE~IBH^8Dg%Spn?3faR-Zl^>Sc zzqbJRAb>gl^^Y+X^kxBUBlH9(e4mwXX;pWjt8r(#x=Whqa6G5~+arVPR1>@8m&iZx z-iV;__`AFf;HmrXLH=n7k02zbMGq%T@BRv%ii+~3$0r{^Dgt)_nI;xJT=FeITB(~9 zsIEfiBA;vsdWPbi&jqeoQ2KBm-7`@*DGBY7)`2qdNO%u9JQNYX)(}MoSAm=1otED* z3<)ipuMqP2aWQ&<()csHU0!VTdXZ1LKw#So`FX^d(-pww%bM`#bY(-wi>=v#axvmq ze{*~Uc2z@Q6A1Wq2EN{j*jD7V%Bwvu0i8eZ`bhD#w*b!DOKEB0>t0}rE(D@>u?#iP(gYHKkQVn`rpwn3LUf?{N zNU6x{>I}N0D~|AWg6Shgp!DbfC+5XT@s&q;le#&R(V;WJM`wnQ4#&IAYY~t8tJL>m zHu(xqcb(&-v$z^McYzLZe@k=6Gw(pw?C5+R93e||f}yC&GN31Wlr zk8#(fa!s7IoG3PEq9RT@ogZFB9AEw&O8NhiU8kTwUq=2~nN=V^G(%=XZx9<4pV&Pb zn2z*^5KcwdR%TBjzv4@@eHh|gWs57W2tN~P)E$NKmsNKTJcN+!uUQC5HT>Fxe;aX{ zZl56}M)wm!_)`Lrq#JLFkhpYrH(n7q2`^+eOJWPhi1i)m_7!qDe=FQ^oK`^T zXTWlPHUoKnnLghK%U$R^+y?cETD$=vb(Lp&!C*%M*|=Q);$a=6pO18U_TioSnVv6D z2$yCQkGxW~5+8a6R0rG42fKVG(LwvU5m*=wPLrz|iwhx%#KRy=`W}z-Nwg37G)ZZ~ z(J%Hzh_~G{sj%&78 zBHjmadfG!z;}zzFhXZf0n;jU6cRqi3{+DPNd5t(d0WkeN_==a2$!qH0yr7{| z^2(&Y0=&n*>=6x|2Z95DGY;VuTWPHer^wpKdtctNZ^J-bzM3NM5t$; zKsXGc0Qi;&>G2nE%XrssRs(QnBkv2$5mL{WAspe0<25iE!z)&@JtX)wv(0bukq-oR z;GNHK9!>-@H$aG(A9s%r_swc>F9R+K1^)PP5BP8oSA%buoI&c5J&Pxi) z^=p&n2l@6!tHHe&xST~%y|sj-$XzCdj+^&UpZ>%4j=Bh)!=>#Ts|SG-0u-@<7lx?wU_(4Yc$aLisMag+&jOh z2;J*0M_=?8J+qpkTLah8&j=BZUq2h>bi3>8^w(h?=oEH)SI{Ar#p~p!)3Z0L!1)BH zJ`ecXvdl-vDIEU>gANTrb#&Zzxjs`ro%OzUaXROK4)#{ieJZYtNC25I7k{;}ZPkzjba)4jG+8a=amN7>#jVpnGp>_uVxIp8ap zr`-$WJVYSySZ`AHyE*gE-{3<&Twd@Cz~#Cf(fb$Tj=|d5@tYp@6&-jdztjoz1p0@E zNYN31J5P?{-oUEqq=R38^u7h@oe*z?bW%P2bZC3?#r}>fqarW^FGC9eG{gf)AB$it zLgH_)_4~c!mW+W1kWLktijcN+PVVb&Q?5ctO#Y}Bo{Rh@h}S@z8gN@V!9n{yf*0!8 zwg^WdoQ;r_>Vth;Ir$Po;`*EWuqS4S?JCA1J`nM42&q7S%g9>!9-Zqn0PlW>T#fIl z_N;$~0JMt3=O9LbuRzN4!MZBe`{-8ACQ9G^W5OQ+mTL)J{si_2V7V?7e9qr}d?lGIIC@r4|g%%`6}b#b!a}2Rd;l z9{2au=mE}2u-|c7e-k*p@hH~MvHf)Xo`OHC&lTP%@cPU}oOToG!9h>*6gbWlKgX`F zK6m~>eeOq|BM@6UhupULdKg>5=gbmM3cWG_m-LFMieaa^PJjSHT87*ozHp!$=R36r z5OIe-v^5i2Vv!KANQmtB!n^f_RNH^PERT9+wbQ=3*C? zj~`?cfXQ`2&+-C7TMFXM0L#0f5Oy12{j#dMoe(M`J%W@FuY7JB-Z0!XHvfh2Gyt^* z5Z`E+jWphJZZn>Zw5~)APbuE{sI|g7uV5VSoCe1u_yI_d@b>%V%$dmGUBwCgh!!^^ zEIeQ0ovTk>z@2F&Z$w&egk2EQX{y->J0qlL5E|h(GtNewH-t5wC$@FOSFc07!mup= zo9{zD!7l=q-$?Qsc5QvQM}f<6csK>Pyv9@`zoApZhg*twj>E&NfXjP>aL*o*KaJq8 zbF*r2D}d{tyk4ChvFWd~S`F?|^ei7vD%ar_j@Wd4^}cEksRo@(UEU1NY>3n~s8(CY zSMT)v2p=iaM~Xn{SqE^x0N*siIi-}Kn{Q`3ll8$@eEOzXA_@$pb z%RMu2M%W9@XmRk`e}YD zQC=^^d11-(-0Aov;Lk!{3F1Wi8icfHHXx)9`38TE6ZHTRsKq?v9VY|A{(RS?&(q)a z(gPQ`!oCb4DFs~Ea|tpQ>D`b{(uI14r!Pf1dEg1BGM!k&ZZCsQU{FROAd&+2U6_}h z7k*Z?^=3hQ6JU8y6&@>?=7S}5IZ0#kKOj&y^Kp3$@m^Fap3;k|uI`qI*UKxI{Xfq$ zmJxWT`qRV1ZU85C#N!US1HsMc*7a%B`+S|Jb0N`T3zpyHUzeSc(U}$WI1}UIJL&9qWI~SCR6ffaO)A_*H=ACduL7qGPILHYxxfIWo_Hbi5No z`4t4tMR*qCw5;z!`~rmY5%S9ac4@vs$g1K_@b|+o^a-yV52t(O5FR~#W_zx$564!6 zdkt{?qQZ|``fa}dr&NQxpaA#wk$EqgANTTVaPI~#?^LR@r^q||;SP`N;wyY62=Jv$ z!1QbZfqeBU8||=aKkhygK$ZI{FOiRtXa z^hZJ+g7Ti-**x$Ic&9?=g8;1n&g1Vw{367UA?)r;?*@1S@jLEz3%LbxsyscP_~=sn zb~L;$`{**yNcT^~wwP0V%z1bS=zdMbKZ*SV*vp4Y#nAH|aQzyCAGg16{*J&qmvg+_ zfKgS(`xk)2{igW{%%Q>^?$?5($Y#^E;{20{x@(lldM}22Pl5LNh%fZQ&k&x6ct4X( zMt((I#JeJ1D3uC@4nP8@+xfcxnFq-3z zm7hNp$M53kH;j&*vkZmt2lo1nOYpn7ofg})L>v&>ZLuFHe9>aPmm=J6vFj*&&tk7q zc+g@E8Nx3tHj2XUEOrltKU?f;3X5!(UWPDivkD3u*=#q3?QK@?HiT)LokQVCHd{&I z0Gs`n!qaWm{dTc$#jofAw1fVt=RLS*_m>V$&$D!_8FFry%EzDw94$}Q<-V_lyk*B1EZ z^KWC&YSOrd1K?zY9DpM}fPx0Q^$YYLm!E1Kj#eG*DTwnWMBoDf%LVvCk#krYgLvu4zQfX%|xER63Y;$VXEx^OMJjP z3V`4AfSpqC?+U>3F)pk`;J17p!CwtnZY*>_p1%@(euFa22@&vh0OoUGYyt4h0>VoG z%QyB4b)+2yxc43x7VY0t0K6T*+_2nRkawscz8A2Z#X|Y2(z-gws!rnf0LvYNm2`Rk zHv+J~YmNYzk8@c;o>magPRP#@KTA5Er{N&rd9PP|iU<|dZ?nFrA%<*18e1tD9q8wUj^!O@P5#WS&OmYG0Pj>ee&O&$^fH}dt z5I+;~BM3>A;ORGegn7Iz3T}t|pC`IYm#3c$`b6(mgfzTvI{Lqmz*+#%@gsWP0ukO- z@8g|Z9xD-&yN(lnW4vq5@;IkQ_)`GOT^pC-ophrv2>Ww<8vo-F_!%uraKJx+Lsq~) zrhG`(qhchFdBv(Lr-F}3b(84N2>8d;FBiGLrd^tMI=$&D_fR#seqmXNd)S8?Kpl8Hd3Y7d&DX4QJJ+eRzpv_4gF7F%+<{8v z`fWFVd&{c9y`!ML-WIg8u`|#&Mje356$M`B^}r=@%Hw|X$<@l-4H?--NAuNz>PpY! ze?Vsk@-mJY=KNCEPpVHfq<#W8v61Sk^eLNkh1kYz8BqCiu8#~y<5qZehe_X`$evp3 z9Wog0qcf!%I(4SGOQt$H-qx36sQP>Q@@nW5gO1-*;_vCk$n*IWXZotN5bs=B;!Qgd z;Q3Wq)xqGe#^!3OG1zMk?>hfPd(&6$)@pFi0xs7g2;c8TKJ3G-ZedLaZeFoJKJE_C zDV(I&0@tx?y-NG*?4M10eRbyTW5DGK3Z?mR{p~&E!{z;aA8@%kMz~&ko$2RqZvcyf z+s+*KVc;ImFX1vm_iT!vF?0YOj?csGpyOv|FHB>{?iIT^XGHvM@8iRzy3+F!aQ#f> zooVhF5yzw9pD5@0kf~sOM%1~R;{=C{yA&_SdkpEr5FWZJiaQ9aI-RdTd==8kLE*={ z67eBOC;jHPD;<|>MHK*&J$sQs()Z{U?lC4$NRQuh8Qky4PyygqkW9o$SYD6(-Uz26Bt7(#f4CN3Z^Ws>I}s;1 zKVfRX^+?wW(n+d|NFRdGQ7=f3IS&a`u%7^_j<-#Z2BsCHQ%ft5PO7FKp74v1J_8~5 zLf?oXiX)D@37xq#>}t<FoGi1I1$Cen!{mCHxMe|YFe zwAbJ1T;&D0^Z0)))HbqB{=>U`UzF(l z{`^lPN{0ChqJHMQaJJ(^a%6F!US2nd;+^*b5C7;`%sS9*;AkrjsWKm_Mm|z*CBUHo z?pL7vZF(AcJ@Wo%KPkByQiYqAp1$mO5H(*l1`@90K|F~#0Gs0)4kkikO@0nRoTDky z$qw+R(~PP+hYfyE>{K!OhN^nMig+93hY@x{SU8<#&W}0=TiT#Ei8Y>uIMLpGlPjg4 zMo3a;HbRnsHz6!VxY|oUfbbl|=iv_yC z6cz;g8oyxjWbS z32|L0Dw~D23yF;rJoI0- zi=Elt9b&U6a;>9_@jw|Veno1@2dkxbbp zYG~M9#=GUAIsIZuTaG8Xw|+Gcw3&-Pq?(i(QHhJ)SjG zL(Ld!GLe?G?tR!7Pm4{M)KzLwtZ5lFgT|ZLj2cfR)AGq~X19;UrZHVl*t)D`OgS!R z6KN~X9(+dBi*e<1A{kGcNjs60<*b~zgw=UgY{~lV68oY>7IIYCwiG36Dw;Cc&3ts1 z*e8amlTF3#M8d?q(Ft2oS?y=V3yR}%B5kJ0^~&B)rSuIozLu-Ny{i|wM8E~n+RqM2q|F?7vfU0x8& zqK0MKvTerIq-MvJl*}%CL2Orod@XJ!)3&Cil}uXekFVwJtS9L#ElDL&BbzbfU!zEvzUdor)(+V*nfW3Vy1-=~O8mwc}b6Q!t&j4Ko>!pOVi4TGGlG zik3|(@k~53a4Hqlj2(?gC$beWsctlp1(Qh1>4bugGvi6N`Xy0`X_=&oxMd~dRwkRu z4q`i7O5IBAR5}UxWD3b?OU({8^5a#T^?g}PMHO3*gKz1wu4U79TxRoL7CRLyD!MYA z$jWGhW*M2&&SSA3#fI#im&HU(NoGx3jcbYyHke7oPiLF=imjsAw4O?Ud!c4l!nBiY z=quvz7>K8`ansVRICV*87<+c0)TUTfP$}I^Br}SvE1GsjS6bT**|Ar|TE&{4N$a+P zg`d<+EQ>QwW=&rdyEQg2kuVFbR4NWult`&ymYIw-oG<>p;AM|(7aJ9WkD2kTY0Bvo zW>ZQXaS5@9#_Zs$;-ILBp3stU8yB+MiR@WURwMSyUa>A4wO8yDHIk~Ls2J~zox#xQ zY|~z`bu@tqpRu*HWvUpSxWzu)i`9-Z&6@%OTLb%6RozLB>RKiaPO4a_VLG9w+1LBUY`v^)*brNB!_YEz zT4AIAB|ZX~raPC%TWEx>+G*2UyS?8Kqft2_Yl@}X=v&iJO`VN;L%b>qhKJRI#ikf3 z+fJm|XK&DA*0QRak?mAghiuc5tnA<7#A01h;z{r#HEF7GH9gkHtm?Au{}#K&lx!vg z=9tQuYLr(>tZYR;G1Ge1Jy9Fz|*RV5!DRUnlPZ(bS1%pAK?;VERtj*X{Y2gsAr7C#JNm= zLrk%5?~8GE?OS5BID^TTN+=0UqXKMm(uu6>El8xDZ;2(vik&jzS&Wv7ISlSH`6MTE z>Dyvyv7)50>M~h9sY2N6#+2SJVxPCg`Y{dbTT_6nrBX6P{3WdAPf$;iX;VojZOc~d zbTXO9Og)cX@QK)I={sUeDGOqjnMPTrtS4C4cf?*XOIA`^(u_k70cS|t)0q5@m?<_= zvYfIYX|i#QX*@l>uUqs7?_e?7Sfs=mE!$37>A3cfewFpA#X7!At;%FGSValQ#&{aN zciAbG=rK0ByA%P-NoJEOmb9!YSw&MXXM5fiM;9mJ86~Bvs82GUjHk3KR0pwHj~>ub z#$Sp>m4t|f4wl4nw!sH8S6=Ju?|;81)+>hGOhR(nSuK-BgR@s%UkTB_7?f>HAFu@U z4kr4Hn<_Ko?DO}>f7(A;$p_+;VjC60D%MkRT}xVub@hB7;?WOq zAAv3#S|XXwCNZCNETD=7l@J-W_<$HKNoLZJ&SmM-ZiNeke*YI}6DV7OW)_ zx(;=3Hv55)(qQQcFuDZPKQ*mq<^)f1k@SzmW-%?H;K3?^f~dt6`&zc(Be7da3hP{k zqKNef!K|d`2FqO}QlVmTbV(+Wfa-$9Z>s8bEcUUe726s#QE(#_6WNAlGA~FINoF^G zEY>a2l9>e7ln#-tK=!1r58mRmZ0RRrPuA$57%RzQ9(X5;=N4lY%-OvV5+l`$|T z^xcKQ^C5JLM0CB=(QR!L(E>ol>woq1k2^vr&h{E2DPC z0vCs-hZ?B{81TqL;zV}#r=nB>IclU+3B$qy#&pw`24^z;ka%$uPuynGGFT`o98c@% zcmj;<8ZUpUrBAa^6~n*^f&q}iM2D7bEn^j*iPKB0OeUo%iA*+ukw=Yg^AMX6VUl}e z)pR@+m$60_8ybyi+#a0mkZ!J<=2YuaYGx*(#1q-9sigs|7{(p=1TfW(UHyd^DZ$!P z5~gWo5*jR!l)XGS$H{GhJ{mQ_vK`yRhCXd%WCLRhMi9T#D}>$rB_@id$)pHE;KoUi z+be=t;zYl}S7LoA-)URVBp~Q)TS+P_@o~plpNZqy`mfM&N?O*{B<#Q>CW5Z73RZZd z^!``kc_m<)*({hAthTsRb#zKU*d@V*}x(Oi5?o-D;4Gf z)O9PPr|%06s8oOIvirUh!657`<_&b~G~}?6((h;cz7y|^p%&2a@Ua|lMm??S53q_O zq6ys%_H-thi0g4#k6S9c`iN+iSWsM5z@gr-R+GxcpysZ)ng4@aRKaQt3k*%e5E{u% z!NKh2Q>8NY-2cR;B_!XK3}!ww5ew^bbMO)NY8?p%;P>MEn5t%>W}(Hf9H8*353>8e z7tNTBa#B{x&}0n?Si*XUmHhw%PBF5?IFX*Ekxf0!F8M)hU#cb)*pZ3}z9K`LNp1;N z(ZcuqAf{poRe?e(8*y+SjEVIKtM{YWKZ>r+IwIe;Qi`cQ%8VbyOG;p=la;7pAjklf zbHP-l%_GI27bmios)H}e7-eNEYw?pfDh9g^cA`mU9jpgSevB>n34Q@pGa8%83`~3tbf?2 z+h7;L?uf|>7!3>o*ig^~Ep0p7^t0HZM6=)+fi4Vgfx*pYpA7bPh_af$h@~Yu^oKYG zN(W-rkP}Y@Pjqun`2`wR+)83DWaPM_By}+V9d1SIL#f5Ah20}3lWI0;?F`-&?6tIw z)PlYDi#Rd{UJDLnr`0692{1XHWv0wxxLlqm{?K*bseS^xHXh62mG8QjJ%FJz2|6QsX79rQ#U+R)hVURp335^>pIZ zB_~T46~jhNC&2Wf-Rp4O7<)ZZ@G@bTOe?LLRu+tApT7bzIBqmEoq=fwBP?rWUSpRA zrMHW*qGcmvLnNpv_*<0My{^F|g`3CLbg0^}nvMNzMMz4PWHK07D7Gmx4WE-9|CfJd z7sJN{wKWM7$ih0X@rNetyqb~-w-NkOaqycAd{k<}e9!5}J}}QS=n1&?Ah^-f z@3TEMrQR`1&%|L2LVL_+u~yU%Sfg6f#8^C)RkJqSe-Nvt5?2nerM09fB`~p77_-p1 zQYjrX^+QY*$45dMT8V5zJY_X3^(0tV-1sQi&&{1$TWVSYyI4}(VWiQu}X2f7YLFSn$6Y~{LSNo8=x-d^nFfGGW!5Cq| zei~%&C!|*BV+d^YgO#xj=-$d_4tPwq&;fA>)3j;87b}0xS_o3lD25LU4hpKAf@z!i zf<0MR>KTJ$7urfXnNSllxm59~#IV$=1cLy@46Hq2WHiW{uYyU|a;Vg{cq}9`TzZ)d z^z@_#gZ*o_&~zO04@xZBr9g?453{vlDIGKIj0*D-b{ZUh2~+)sjT5Ay#Yqi52RQOF zN!`%Falds}QY=GG70eg~?v@Pnr0-ahh?FTIhp`EnK|Z87I{ZlRvPxG`Ia?K#!X>s1 zZB*JpwgHfy{>@_6vKeo-{EEn+3|G3I}l9P{9J( zll3H%8Z4AR5kbdknhtj^d>y}f)zulb2A&wW$e@}Sh3V5W>|2t!Z3nRg-MgpX0bWN z(mOE=S~g5GISZo}Vj+1An^Hn@F%IJZ`m}~`1H#TSX0uHtl2QU^BbW!3nTv85ZNEC;e&vc0N*&Y0Pt~ZZfFwQR4TP%qe`U{qY&|s zlaRMM90loYiak&&8BtQFpzA8|lEA5*#{8`>^(v8N^d+Wm#sGIkBd-tjcfEZt)t8!= zz+Hf83MOwECfTVs{9*2m{@iFGF6+}kDvx5dff9O!eCN;u*ewmD^zUKcY#{ZBlD=Y? zSX^m~dN>FE^C#Ek>JQw?jXK z12hG%)UBbsp&5k%4n_s1gN?lv&5W~sjik3rQee$SDwTvY70bf5S*V=ts{@zv8;zyL zQK-yW6%zp(80?~q!HzYSMnyFP+Il9A#RUHd9Gh%X6RdQ&1mf_MfP+D5fo0#$-b+ZW zW6&+Y$g*&o!7T;heaE6cwHhvMDvfCf_5u%g0xB`oaS&P&>euUn>Dtnd#5QbiGbtj$ z>xHTU4+@uRuqT>I=fqMOuzV{cV-2a`aP}(pWK(HG4E_)dzDX7gxTztpc9T)EoYr9V zn%E{24Nwr!qp}90629^z}2G145plT}mx<&hHwaBe&E;SCqrHCPbhJ{vS4B1lH zt1YByCFpASJu}$aNrUkwvYSKW*rwJ}LpHIc)Hez{!N5RRn7Qz;847!5^Z9?vWHCx0y;0f8nHnf)d#GvBB=dNJU zz&E3*+9OUflvyyC6xe$v4u@b$dDK}ctzw0q>6}X?4UNsPA#t(c0pFCp)k{ug;Il|# z7YUXZwp|`$Gs~p!qi|?y*kw@Q=)gL(GVIsZk{X5W4R(}<@PM@jk-^H_NLmS8+7|W! zRYQlZg?YIxGyp1TnX{`@&jP!^rVjS;pztSTwy%xU8#`d|*uf5k*EtEcXtJ`l(wGuG z1s|pYZwMrXrfW}yE+N&nKHJn*8eB>qF&*;?q6_{$!`u;?R+(FmB~AdQX%f7pP;IfdW2V3oA?4Vy6C|q?aunN_@ClKqfLHsO&>E`xQESj|7t%hF*zHk++ z%VL|`OFc^9dNWWH=)c6zQ`+v(5EqAZj8brB$bOiDaOFVJ()NT5x6tz%NCKPKK}uj} z$WXuvEgk!3V4_L3iBe%aVn0g9x`clKYCZb~sin{iFwu0G6l8d4GcSg)C50L`V5fDI zPAq|E6W*eD#>UKq5hcHb#qZSr$&OMKi$7_?*nsaQo-&{?vG+Sl-J-P50N*^^=rXJ_ z><2gNBy}x;Q-n6%proa+DPrlbhI%{7G);nr#aI&XTtI!(j3j39Ua(Elv>7$I#3GL# zG&M*ZXhQM$zEDp#{#U4q$2y@CRY*`sz9jT;cue8SDeDXw0#g)d@eEWwvJb7-Lnpg9 zGdoL7qcAC9kY-RFJpm2SWcPQLMn~bfLmT1Y#2>H}*0hUsV?9!rH8=>d(UF98#~$f| z)>zmG!QPZ9gZV%ns{cl7(p{wv?C?8c?I^a0E%dSqPcnRHw#C%0;OGi028=TFcHKa8 zGwiCaL`frulbyi63H%S))Z3tRbyqaq(MDk~TJYt-l>iF>TG>137$=uHCaPzWX&rkA zu!-PdSK_R^8<;PcD7J^OK4}(U-LlQyr0&rSHuB`8nt{TH4XCWazV3$gn!wbD)dX`o zj!M`DQ@TqT+FDGc6`1+Z5RzC^Y({sImf)aC13UtZG$CU{>+9~)LGS^{ElgoD`kNOwq@%n;EoBHWY}6XX>SD@S(Xh|q-oK#Zs|}aAfu3Bs4{z9 zfeK7pv)CSi)P^nrw*4tnRq6B+I55%~;$Yy6P?D_ALTUD@ih2J^Hz^iN8w%DvrnjEL zW=cHqIeS^f24V^m5FQY?!C|Ih%i{|y2Oyo`dgU!_Y{8RhW-PELnD$??VM%Ft3EYVg z3mQz{1QZ56`&Fn9+nbi!v-grx-5Ay}gf6T|c)+lA4rTd=q|_N(G1!g+2ZGHgL-Df@ zFHK7w*@Y?Su@IwJR?xsOCFn%JH{dA_y;UhmfY&yahL0?Prok1V$ln67QxiB3$4#CD z)stpXoObc!;A)VX-yvHmiKCry_;aBNCgEU}kA(WUBqydNF`C7swZJD-(1o%4KdMSo zWAgM##yHx4gjt{{SnY}`$Kl(~e9vAI+bX4XM;2;3`ay3 zvk{6Pw%Ot^>V9Da7i5p>AUNrWN@ouYJv?!NGdz^r_^v19vo_XktsjfWmK> zKeMkiNiDHpmC5ilV_so+v#DP~CpqnCdg*j?GSINWrkV+qNplr5|7d6=e3agfJvPC5 zNZm`p51>zzN(H+lt|xyD`FwcpMj1TP@K3>y0s|^VKAqo)YjQfZ*@zwxdKn8_4%nc< zBE@XT9{YV!B^X*PK)6m|ppjggS!A(={h?Yl>?xg8OzH~Si0v!z=cGBS=tA~R1GwUd z$H!E7Tg{Y;btJ=On=r4*?dmCA5R57C*I?Sh3#{Sri($`Z@`y+mrq7Mv(a#Yt>PVfO$o1%Sb+a&3|0w4qTm>cZvCE zlS9_A#jynd_5*_x0}jhjxryD@YGjhTUEpFxN*)a(UCMEX|tWM3Ft@WX4^a->#Z@#*@aqO{Y5mJ{{y)~G4^6_cks z=S;wg;FL|^AOL({adR=dq@UEe1R5xOVHi_r3)quTmK614xAcd)8R-vIfcO|3U+_1> z$&a}T=a8)|EgDz}0uvrSckC#G&tY3$)3U7Sw94EjE>DBG2_qij2^;9xgi0=B3;Ii0 z_ylPGn$996bsS_cZezidrPjsZZty9PnSa`71|D+smb2Q4xcIwE`iI0eD~l}*tdnp=l-JMl_pJNcJ&~s1e%?SwL-oG=ye$2 z2Z{zzUAi^4r|J`F{4yrFw_#!9NC?bSeFOV^5Efe&a~2a?)^X}7qbKx@z;mo6yGUwT z3O$IpW;Oe!Kn~K;|O{L*6>{7x#5y$>BPI_e%)@HVQuyk_+*e=*ok3*S)dV(Vb z4;J<9b-{>AOR;SdeoUO!O4ZZS>gGaCW#5OThB2J{GvP$R4!vw9GFIwww*53oF2VK^ zwj{C3gsmsqym+Fh3;Em{(-}Yo4s5L9v<5{CDvG_$S$nPP!9qv3;G7}${IIRZbf_+w0%;)xWLXw(Q?Df<+QpDwj);M9C9Y>s;2Dk^JIfB8 zF13wIfPyF zEDSMlk(9zV4V6xS_Dx4PVEkZ7V-s9q2Zu`SqnN-LP9u(kZX`r()^r$|Y}gD=fWhFT v2DX;77Q1bjq)M3Tn1nbVgJx(ZduNz*R( Date: Thu, 28 Mar 2019 18:57:26 +0100 Subject: [PATCH 105/120] Fix a race conditon in the pool when transactions are imported during pruning. (#2136) * Store recently pruned tags to avoid re-importing transactions. * Update core/transaction-pool/graph/src/base_pool.rs * Update core/transaction-pool/graph/src/base_pool.rs * Update core/transaction-pool/graph/src/base_pool.rs * Update base_pool.rs --- Cargo.lock | 1 + core/transaction-pool/graph/Cargo.toml | 1 + core/transaction-pool/graph/src/base_pool.rs | 28 ++++++-- core/transaction-pool/graph/src/future.rs | 13 +++- core/transaction-pool/graph/src/pool.rs | 69 +++++++++++++++++++- core/transaction-pool/graph/src/ready.rs | 18 ++--- 6 files changed, 113 insertions(+), 17 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 07d0e3c4d9..6549381f60 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4263,6 +4263,7 @@ name = "substrate-transaction-graph" version = "0.1.0" dependencies = [ "assert_matches 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", "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)", diff --git a/core/transaction-pool/graph/Cargo.toml b/core/transaction-pool/graph/Cargo.toml index 6244c14e5c..58aeec885d 100644 --- a/core/transaction-pool/graph/Cargo.toml +++ b/core/transaction-pool/graph/Cargo.toml @@ -16,5 +16,6 @@ sr-primitives = { path = "../../sr-primitives" } [dev-dependencies] assert_matches = "1.1" +env_logger = "0.6" parity-codec = "3.2" test_runtime = { package = "substrate-test-runtime", path = "../../test-runtime" } diff --git a/core/transaction-pool/graph/src/base_pool.rs b/core/transaction-pool/graph/src/base_pool.rs index ecdea3d485..ad434e57d4 100644 --- a/core/transaction-pool/graph/src/base_pool.rs +++ b/core/transaction-pool/graph/src/base_pool.rs @@ -19,6 +19,7 @@ //! For a more full-featured pool, have a look at the `pool` module. use std::{ + collections::HashSet, fmt, hash, sync::Arc, @@ -134,6 +135,9 @@ impl fmt::Debug for Transaction where } } +/// Store last pruned tags for given number of invocations. +const RECENTLY_PRUNED_TAGS: usize = 2; + /// Transaction pool. /// /// Builds a dependency graph for all transactions in the pool and returns @@ -148,6 +152,12 @@ impl fmt::Debug for Transaction where pub struct BasePool { future: FutureTransactions, ready: ReadyTransactions, + /// Store recently pruned tags (for last two invocations). + /// + /// This is used to make sure we don't accidentally put + /// transactions to future in case they were just stuck in verification. + recently_pruned: [HashSet; RECENTLY_PRUNED_TAGS], + recently_pruned_index: usize, } impl Default for BasePool { @@ -155,6 +165,8 @@ impl Default for BasePool { BasePool { future: Default::default(), ready: Default::default(), + recently_pruned: Default::default(), + recently_pruned_index: 0, } } } @@ -175,7 +187,11 @@ impl BasePool BasePool) -> PruneStatus { let mut to_import = vec![]; let mut pruned = vec![]; + let recently_pruned = &mut self.recently_pruned[self.recently_pruned_index]; + self.recently_pruned_index = (self.recently_pruned_index + 1) % RECENTLY_PRUNED_TAGS; + recently_pruned.clear(); for tag in tags { // make sure to promote any future transactions that could be unlocked to_import.append(&mut self.future.satisfy_tags(::std::iter::once(&tag))); // and actually prune transactions in ready queue - pruned.append(&mut self.ready.prune_tags(tag)); + pruned.append(&mut self.ready.prune_tags(tag.clone())); + // store the tags for next submission + recently_pruned.insert(tag); } let mut promoted = vec![]; @@ -663,7 +684,6 @@ mod tests { assert_eq!(pool.future.len(), 0); } - #[test] fn should_handle_a_cycle_with_low_priority() { // given @@ -798,7 +818,6 @@ mod tests { assert_eq!(pool.future.len(), 0); } - #[test] fn should_prune_ready_transactions() { // given @@ -887,5 +906,4 @@ mod tests { r#"Transaction { hash: 4, priority: 1000, valid_till: 64, bytes: 1, requires: [03,02], provides: [04], data: [4]}"#.to_owned() ); } - } diff --git a/core/transaction-pool/graph/src/future.rs b/core/transaction-pool/graph/src/future.rs index 10293a3de7..6ca5019e47 100644 --- a/core/transaction-pool/graph/src/future.rs +++ b/core/transaction-pool/graph/src/future.rs @@ -71,10 +71,19 @@ impl WaitingTransaction { /// /// Computes the set of missing tags based on the requirements and tags that /// are provided by all transactions in the ready queue. - pub fn new(transaction: Transaction, provided: &HashMap) -> Self { + pub fn new( + transaction: Transaction, + provided: &HashMap, + recently_pruned: &[HashSet], + ) -> Self { let missing_tags = transaction.requires .iter() - .filter(|tag| !provided.contains_key(&**tag)) + .filter(|tag| { + // is true if the tag is already satisfied either via transaction in the pool + // or one that was recently included. + let is_provided = provided.contains_key(&**tag) || recently_pruned.iter().any(|x| x.contains(&**tag)); + !is_provided + }) .cloned() .collect(); diff --git a/core/transaction-pool/graph/src/pool.rs b/core/transaction-pool/graph/src/pool.rs index e24e6f5ae2..9c3478d3d7 100644 --- a/core/transaction-pool/graph/src/pool.rs +++ b/core/transaction-pool/graph/src/pool.rs @@ -460,7 +460,9 @@ mod tests { use crate::watcher; #[derive(Debug, Default)] - struct TestApi; + struct TestApi { + delay: Mutex>>, + } impl ChainApi for TestApi { type Block = Block; @@ -469,9 +471,20 @@ mod tests { /// Verify extrinsic at given block. fn validate_transaction(&self, at: &BlockId, uxt: ExtrinsicFor) -> Result { + let block_number = self.block_id_to_number(at)?.unwrap(); let nonce = uxt.transfer().nonce; + // This is used to control the test flow. + if nonce > 0 { + let opt = self.delay.lock().take(); + if let Some(delay) = opt { + if delay.recv().is_err() { + println!("Error waiting for delay!"); + } + } + } + if nonce < block_number { Ok(TransactionValidity::Invalid(0)) } else { @@ -878,5 +891,59 @@ mod tests { assert_eq!(stream.next(), Some(Ok(watcher::Status::Ready))); assert_eq!(stream.next(), Some(Ok(watcher::Status::Dropped))); } + + #[test] + fn should_handle_pruning_in_the_middle_of_import() { + let _ = env_logger::try_init(); + // given + let (ready, is_ready) = std::sync::mpsc::sync_channel(0); + let (tx, rx) = std::sync::mpsc::sync_channel(1); + let mut api = TestApi::default(); + api.delay = Mutex::new(rx.into()); + let pool = Arc::new(Pool::new(Default::default(), api)); + + // when + let xt = uxt(Transfer { + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), + amount: 5, + nonce: 1, + }); + + // This transaction should go to future, since we use `nonce: 1` + let pool2 = pool.clone(); + std::thread::spawn(move || { + pool2.submit_one(&BlockId::Number(0), xt).unwrap(); + ready.send(()).unwrap(); + }); + + // But now before the previous one is imported we import + // the one that it depends on. + let xt = uxt(Transfer { + from: AccountId::from_h256(H256::from_low_u64_be(1)), + to: AccountId::from_h256(H256::from_low_u64_be(2)), + amount: 4, + nonce: 0, + }); + // The tag the above transaction provides (TestApi is using just nonce as u8) + let provides = vec![0_u8]; + pool.submit_one(&BlockId::Number(0), xt).unwrap(); + assert_eq!(pool.status().ready, 1); + + // Now block import happens before the second transaction is able to finish verification. + pool.prune_tags(&BlockId::Number(1), vec![provides], vec![]).unwrap(); + assert_eq!(pool.status().ready, 0); + + + // so when we release the verification of the previous one it will have + // something in `requires`, but should go to ready directly, since the previous transaction was imported + // correctly. + tx.send(()).unwrap(); + + // then + is_ready.recv().unwrap(); // wait for finish + assert_eq!(pool.status().ready, 1); + assert_eq!(pool.status().future, 0); + } } } diff --git a/core/transaction-pool/graph/src/ready.rs b/core/transaction-pool/graph/src/ready.rs index 5a9ea11e50..befb1b60cc 100644 --- a/core/transaction-pool/graph/src/ready.rs +++ b/core/transaction-pool/graph/src/ready.rs @@ -517,18 +517,18 @@ mod tests { tx3.provides = vec![vec![4]]; // when - let x = WaitingTransaction::new(tx2, &ready.provided_tags()); + let x = WaitingTransaction::new(tx2, &ready.provided_tags(), &[]); ready.import(x).unwrap(); - let x = WaitingTransaction::new(tx3, &ready.provided_tags()); + let x = WaitingTransaction::new(tx3, &ready.provided_tags(), &[]); ready.import(x).unwrap(); assert_eq!(ready.get().count(), 2); // too low priority - let x = WaitingTransaction::new(tx1.clone(), &ready.provided_tags()); + let x = WaitingTransaction::new(tx1.clone(), &ready.provided_tags(), &[]); ready.import(x).unwrap_err(); tx1.priority = 10; - let x = WaitingTransaction::new(tx1.clone(), &ready.provided_tags()); + let x = WaitingTransaction::new(tx1.clone(), &ready.provided_tags(), &[]); ready.import(x).unwrap(); // then @@ -562,15 +562,15 @@ mod tests { }; // when - let x = WaitingTransaction::new(tx1, &ready.provided_tags()); + let x = WaitingTransaction::new(tx1, &ready.provided_tags(), &[]); ready.import(x).unwrap(); - let x = WaitingTransaction::new(tx2, &ready.provided_tags()); + let x = WaitingTransaction::new(tx2, &ready.provided_tags(), &[]); ready.import(x).unwrap(); - let x = WaitingTransaction::new(tx3, &ready.provided_tags()); + let x = WaitingTransaction::new(tx3, &ready.provided_tags(), &[]); ready.import(x).unwrap(); - let x = WaitingTransaction::new(tx4, &ready.provided_tags()); + let x = WaitingTransaction::new(tx4, &ready.provided_tags(), &[]); ready.import(x).unwrap(); - let x = WaitingTransaction::new(tx5, &ready.provided_tags()); + let x = WaitingTransaction::new(tx5, &ready.provided_tags(), &[]); ready.import(x).unwrap(); // then -- GitLab From d27c06763bab0900a75f5440f497f0778853f397 Mon Sep 17 00:00:00 2001 From: Xiliang Chen Date: Fri, 29 Mar 2019 20:19:36 +1300 Subject: [PATCH 106/120] allow trailling comma in decl_event (#2117) * allow trailling comma in decl_event * Update srml/support/src/event.rs Co-Authored-By: xlc * Update srml/support/src/event.rs Co-Authored-By: xlc * Update srml/support/src/event.rs Co-Authored-By: xlc * Update srml/support/src/event.rs Co-Authored-By: xlc * Update srml/support/src/event.rs Co-Authored-By: xlc * bump version and update wasm --- .../substrate_test_runtime.compact.wasm | Bin 59150 -> 65032 bytes node/runtime/src/lib.rs | 2 +- .../release/node_runtime.compact.wasm | Bin 938309 -> 955868 bytes srml/support/src/event.rs | 108 ++++++++++++------ 4 files changed, 77 insertions(+), 33 deletions(-) diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 84893ab509842d425054aa28164eb30c61aad6a9..3eae0c992eb83d25aba424dee6497efe6ef866c0 100644 GIT binary patch delta 26070 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 delta 20267 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

    epcfJ=bV3RZ2mvYZLJn#O{>odSmGTq7oMT%l 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 JNnf_-{{sq6Z>9hM diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index ad2f2696ca..dc1683c38e 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -59,7 +59,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 48, - impl_version: 48, + impl_version: 49, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 53ad4d8a909ab9e0a795ec9ec146d3d3b1eba6b5..cbe64d746792e5c8c4b3a0e23a0f1a6a640384a3 100644 GIT binary patch literal 955868 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ǚ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

    5TLwgF8*!L@0v?Wij8`hg{VCW-2BrdFv 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 puk)=BGs+n?=+4;-b_?$DCSD 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 z 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

    PVXOhN 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::$trait_type:ident $(,)? { $( $events:tt )* } }; {$( $parsed:tt)*}; ) => { - $crate::__decl_generic_event!(@format_generic + $crate::__decl_generic_event!(@generate $( #[ $attr ] )*; $event_generic_param; $($instance $( = $event_default_instance)? )?; - { $($rest)* }; - { $($parsed)*, $generic_rename = $generic_type }; + { $($events)* }; + { $($parsed)*, $trait_type = <$generic as $trait>::$trait_type }; ); }; - // Parse unnamed + // Finish formatting on a named one (@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)*}; + { $generic_rename:ident = $generic_type:ty $(,)? { $( $events:tt )* } }; + { $($parsed:tt)* }; ) => { - $crate::__decl_generic_event!(@format_generic - $( #[ $attr ] )*; + $crate::__decl_generic_event!(@generate + $(#[$attr])*; $event_generic_param; $($instance $( = $event_default_instance)? )?; - { $($rest)* }; - { $($parsed)*, $trait_type = <$generic as $trait>::$trait_type }; + { $($events)* }; + { $($parsed)*, $generic_rename = $generic_type }; ); }; - // Unnamed type can't be parsed + // Parse named (@format_generic $(#[$attr:meta])*; $event_generic_param:ident; $($instance:ident $( = $event_default_instance:path)? )?; - { $generic_type:ty, $($rest:tt)* }; - {$($parsed:tt)*}; + { $generic_rename:ident = $generic_type:ty, $($rest:tt)* }; + {$( $parsed:tt)*}; ) => { - $crate::__decl_generic_event!(@cannot_parse $generic_type); + $crate::__decl_generic_event!(@format_generic + $( #[ $attr ] )*; + $event_generic_param; + $( $instance $( = $event_default_instance)? )?; + { $($rest)* }; + { $($parsed)*, $generic_rename = $generic_type }; + ); }; - // Finish formatting on an unnamed one + // Parse unnamed (@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)*}; + { <$generic:ident as $trait:path>::$trait_type:ident, $($rest:tt)* }; + {$($parsed:tt)*}; ) => { - $crate::__decl_generic_event!(@generate + $crate::__decl_generic_event!(@format_generic $( #[ $attr ] )*; $event_generic_param; $($instance $( = $event_default_instance)? )?; - { $($events)* }; - { $($parsed)*, $trait_type = <$generic as $trait>::$trait_type}; + { $($rest)* }; + { $($parsed)*, $trait_type = <$generic as $trait>::$trait_type }; ); }; - // Finish formatting on a named one + // Unnamed type can't be parsed (@format_generic $(#[$attr:meta])*; $event_generic_param:ident; $($instance:ident $( = $event_default_instance:path)? )?; - { $generic_rename:ident = $generic_type:ty { $( $events:tt )* } }; - {$( $parsed:tt)*}; + { $generic_type:ty, $($rest:tt)* }; + { $($parsed:tt)* }; ) => { - $crate::__decl_generic_event!(@generate - $(#[$attr])*; - $event_generic_param; - $($instance $( = $event_default_instance)? )?; - { $($events)* }; - { $($parsed)*, $generic_rename = $generic_type}; - ); + $crate::__decl_generic_event!(@cannot_parse $generic_type); }; // Final unnamed type can't be parsed (@format_generic @@ -599,6 +599,50 @@ mod tests { ); } + mod event_module4 { + pub trait Trait { + type Origin; + type Balance; + type BlockNumber; + } + + decl_module! { + pub struct Module for enum Call where origin: T::Origin {} + } + + decl_event!( + /// Event finish formatting on an unnamed one with trailling comma + pub enum Event where + ::Balance, + ::Origin, + { + TestEvent(Balance, Origin), + } + ); + } + + mod event_module5 { + pub trait Trait { + type Origin; + type Balance; + type BlockNumber; + } + + decl_module! { + pub struct Module for enum Call where origin: T::Origin {} + } + + decl_event!( + /// Event finish formatting on an named one with trailling comma + pub enum Event where + BalanceRenamed = ::Balance, + OriginRenamed = ::Origin, + { + TestEvent(BalanceRenamed, OriginRenamed), + } + ); + } + #[derive(Debug, Clone, PartialEq, Eq, Encode, Decode, Serialize)] pub struct TestRuntime; -- GitLab From daf15b14ca75fe4f22791e56a7b3112044a9b790 Mon Sep 17 00:00:00 2001 From: zak Date: Fri, 29 Mar 2019 17:36:21 +0900 Subject: [PATCH 107/120] fixed some typo (#2140) * fixed some typo * Update traits.rs --- srml/balances/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srml/balances/src/lib.rs b/srml/balances/src/lib.rs index a6b64927f9..fa34bc43a0 100644 --- a/srml/balances/src/lib.rs +++ b/srml/balances/src/lib.rs @@ -69,7 +69,7 @@ //! - [`Imbalance`](https://crates.parity.io/srml_support/traits/trait.Imbalance.html): Functions for handling //! imbalances between total issuance in the system and account balances. Must be used when a function //! creates new funds (e.g. a reward) or destroys some funds (e.g. a system fee). -//! - [`MakePayent`](https://crates.parity.io/srml_support/traits/trait.MakePayment.html): Simple trait designed +//! - [`MakePayment`](https://crates.parity.io/srml_support/traits/trait.MakePayment.html): Simple trait designed //! for hooking into a transaction payment. //! - [`IsDeadAccount`](https://crates.parity.io/srml_system/trait.IsDeadAccount.html): Determiner to say whether a //! given account is unused. -- GitLab From e28cd5bdf0408e1c4f96b12638ca4f9373634473 Mon Sep 17 00:00:00 2001 From: Nicole Zhu Date: Fri, 29 Mar 2019 12:22:04 +0100 Subject: [PATCH 108/120] Documentation for Contract Module (#2045) * Add: documentation for srml_contract, per @sergeis comments. TODO: make concise and add usage example * Fix: minor spelling and grammar * Add: Revisions to the doc clarification from @Sergei on trx revert behavior * Edit: added spacing btw function list for better readability * Remove: usage create contract example todo later * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Edit: explained max gas limit revert behavior in greater detail * Edit: incorporated first round of PRs, mostly syntax/styling * Edit: incorporated Sergeis mental model, terms, and added usage examples * Fix: staking module is no longer closely related to contract. Balances now manages the reaping of accounts * Minor cleanup of links/text that are not ready to be shown * Update srml/contract/src/lib.rs made more concise Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Minor edits from PR * Explained contract creation in more detail, fixed PR suggestions * Linted according to contri guidelines * Created a notable scenarios section, unlisted public functions in lieu of a direct link to the module * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/tests.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * Update srml/contract/src/lib.rs Co-Authored-By: nczhu * minor commit after pr feedback * s/codehash/code_hash for consistency --- srml/contract/src/lib.rs | 126 ++++++++++++++++++++++++------------- srml/contract/src/tests.rs | 4 +- 2 files changed, 84 insertions(+), 46 deletions(-) diff --git a/srml/contract/src/lib.rs b/srml/contract/src/lib.rs index 63b425eba4..6fbd502f01 100644 --- a/srml/contract/src/lib.rs +++ b/srml/contract/src/lib.rs @@ -14,41 +14,71 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -//! Smart-contract module for runtime; Allows deployment and execution of smart-contracts -//! expressed in WebAssembly. +//! # Contract Module +//! +//! The contract module provides functionality for the runtime to deploy and execute WebAssembly smart-contracts. +//! The supported dispatchable functions are documented as part of the [`Call`](./enum.Call.html) enum. +//! +//! ## Overview +//! +//! This module extends accounts (see `Balances` module) to have smart-contract functionality. +//! These "smart-contract accounts" have the ability to create smart-contracts and make calls to other contract +//! and non-contract accounts. +//! +//! The smart-contract code is stored once in a `code_cache`, and later retrievable via its `code_hash`. +//! This means that multiple smart-contracts can be instantiated from the same `code_cache`, without replicating +//! the code each time. +//! +//! When a smart-contract is called, its associated code is retrieved via the code hash and gets executed. +//! This call can alter the storage entries of the smart-contract account, create new smart-contracts, +//! or call other smart-contracts. +//! +//! Finally, when the `Balances` module determines an account is dead (i.e. account balance fell below the +//! existential deposit), it reaps the account. This will delete the associated code and storage of the +//! smart-contract account. +//! +//! ### Gas +//! +//! Senders must specify a gas limit with every call, as all instructions invoked by the smart-contract require gas. +//! Unused gas is refunded after the call, regardless of the execution outcome. +//! +//! If the gas limit is reached, then all calls and state changes (including balance transfers) are only +//! reverted at the current call's contract level. For example, if contract A calls B and B runs out of gas mid-call, +//! then all of B's calls are reverted. Assuming correct error handling by contract A, A's other calls and state +//! changes still persist. +//! +//! ### Notable Scenarios +//! +//! Contract call failures are not always cascading. When failures occur in a sub-call, they do not "bubble up", +//! and the call will only revert at the specific contract level. For example, if contract A calls contract B, and B +//! fails, A can decide how to handle that failure, either proceeding or reverting A's changes. +//! +//! ## Interface +//! +//! ### Dispatchable functions +//! +//! * `put_code` - Stores the given binary Wasm code into the chains storage and returns its `code_hash`. +//! +//! * `create` - Deploys a new contract from the given `code_hash`, optionally transferring some balance. +//! This creates a new smart contract account and calls its contract deploy handler to initialize the contract. +//! +//! * `call` - Makes a call to an account, optionally transferring some balance. //! -//! This module provides an ability to create smart-contract accounts and send them messages. -//! A smart-contract is an account with associated code and storage. When such an account receives a message, -//! the code associated with that account gets executed. -//! -//! The code is allowed to alter the storage entries of the associated account, -//! create smart-contracts or send messages to existing smart-contracts. -//! -//! For any actions invoked by the smart-contracts fee must be paid. The fee is paid in gas. -//! Gas is bought upfront up to the, specified in transaction, limit. Any unused gas is refunded -//! after the transaction (regardless of the execution outcome). If all gas is used, -//! then changes made for the specific call or create are reverted (including balance transfers). -//! -//! Failures are typically not cascading. That, for example, means that if contract A calls B and B errors -//! somehow, then A can decide if it should proceed or error. -//! -//! # Interaction with the system -//! -//! ## Finalization -//! -//! This module requires performing some finalization steps at the end of the block. If not performed -//! the module will have incorrect behavior. -//! -//! Thus [`Module::on_finalise`] must be called at the end of the block. The order in relation to -//! the other module doesn't matter. -//! -//! ## Account killing -//! -//! When `staking` module determines that account is dead (e.g. account's balance fell below -//! exsistential deposit) then it reaps the account. That will lead to deletion of the associated -//! code and storage of the account. -//! -//! [`Module::on_finalise`]: struct.Module.html#impl-OnFinalise +//! ### Public functions +//! +//! See the [module](./struct.Module.html) for details on publicly available functions. +//! +//! ## Usage +//! +//! The contract module is a work in progress. The following examples show how this contract module can be +//! used to create and call contracts. +//! +//! * [`pDSL`](https://github.com/Robbepop/pdsl) is a domain specific language which enables writing +//! WebAssembly based smart contracts in the Rust programming language. This is a work in progress. +//! +//! ## Related Modules +//! * [`Balances`](https://crates.parity.io/srml_balances/index.html) +//! #![cfg_attr(not(feature = "std"), no_std)] @@ -218,7 +248,8 @@ decl_module! { Ok(()) } - /// Stores code in the storage. You can instantiate contracts only with stored code. + /// Stores the given binary Wasm code into the chains storage and returns its `codehash`. + /// You can instantiate contracts only with stored code. fn put_code( origin, #[compact] gas_limit: T::Gas, @@ -239,7 +270,13 @@ decl_module! { result.map(|_| ()) } - /// Make a call to a specified account, optionally transferring some balance. + /// Makes a call to an account, optionally transferring some balance. + /// + /// * If the account is a smart-contract account, the associated code will be + /// executed and any value will be transferred. + /// * If the account is a regular account, any value will be transferred. + /// * If no account exists and the call value is not less than `existential_deposit`, + /// a regular account will be created and any value will be transferred. fn call( origin, dest: ::Source, @@ -286,15 +323,16 @@ decl_module! { result.map(|_| ()) } - /// Create a new contract, optionally transferring some balance to the created account. + /// Creates a new contract from the `codehash` generated by `put_code`, optionally transferring some balance. /// /// Creation is executed as follows: /// /// - the destination address is computed based on the sender and hash of the code. - /// - account is created at the computed address. + /// - the smart-contract account is created at the computed address. /// - the `ctor_code` is executed in the context of the newly created account. Buffer returned /// after the execution is saved as the `code` of the account. That code will be invoked - /// upon any message received by this account. + /// upon any call received by this account. + /// - The contract is initialized. fn create( origin, #[compact] endowment: BalanceOf, @@ -304,7 +342,7 @@ decl_module! { ) -> Result { let origin = ensure_signed(origin)?; - // Pay for the gas upfront. + // Commit the gas upfront. // // NOTE: it is very important to avoid any state changes before // paying for the gas. @@ -352,7 +390,7 @@ decl_event! { ::AccountId, ::Hash { - /// Transfer happened `from` -> `to` with given `value` as part of a `message-call` or `create`. + /// Transfer happened `from` to `to` with given `value` as part of a `call` or `create`. Transfer(AccountId, AccountId, Balance), /// Contract deployed by address at the specified address. @@ -380,11 +418,11 @@ decl_storage! { TransactionBaseFee get(transaction_base_fee) config(): BalanceOf; /// The fee to be paid for making a transaction; the per-byte portion. TransactionByteFee get(transaction_byte_fee) config(): BalanceOf; - /// The fee required to create a contract. + /// The fee required to create a contract instance. ContractFee get(contract_fee) config(): BalanceOf = BalanceOf::::sa(21); - /// The fee charged for a call into a contract. + /// The base fee charged for calling into a contract. CallBaseFee get(call_base_fee) config(): T::Gas = T::Gas::sa(135); - /// The fee charged for a create of a contract. + /// The base fee charged for creating a contract. CreateBaseFee get(create_base_fee) config(): T::Gas = T::Gas::sa(175); /// The price of one unit of gas. GasPrice get(gas_price) config(): BalanceOf = BalanceOf::::sa(1); diff --git a/srml/contract/src/tests.rs b/srml/contract/src/tests.rs index 36b98098b0..1c18329bf2 100644 --- a/srml/contract/src/tests.rs +++ b/srml/contract/src/tests.rs @@ -243,7 +243,7 @@ fn account_removal_removes_storage() { with_externalities( &mut ExtBuilder::default().existential_deposit(100).build(), || { - // Setup two accounts with free balance above than exsistential threshold. + // Set up two accounts with free balance above the existential threshold. { Balances::deposit_creating(&1, 110); AccountInfoOf::::insert(1, &AccountInfo { @@ -264,7 +264,7 @@ fn account_removal_removes_storage() { } // Transfer funds from account 1 of such amount that after this transfer - // the balance of account 1 is will be below than exsistential threshold. + // the balance of account 1 will be below the existential threshold. // // This should lead to the removal of all storage associated with this account. assert_ok!(Balances::transfer(Origin::signed(1), 2, 20)); -- GitLab From 8a60b684a7fc6c7331212151e14318b34fa049e5 Mon Sep 17 00:00:00 2001 From: DemiMarie-parity <48690212+DemiMarie-parity@users.noreply.github.com> Date: Fri, 29 Mar 2019 08:15:23 -0400 Subject: [PATCH 109/120] Refactor DigestItem (#2108) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Add `start_aura2`. * .gitignore patch conflict files and remove one that accidentally got committed * Fix build The tests still don’t work. * Fix compilation errors * Fix compile errors (again) * Try (and fail) to fix tests * Properly deserialize data Previously, `DigestItem::Consensus` had no separate `DigestItemType`, so it did not get properly serialized and deserialized. * Add extra debug logging. Always allow old seals. A `RUST_LOG=substrate_aura_consensus cargo test --all -- --nocapture \ tests::authoring_blocks` revealed that old seals were being and rejected, causing the test to hang. As a temporary debug measure, allow old seals unconditionally, so that CI can test if this fixes the problem. * Forcibly disable rejection of old seals * Use old trait, but newer serialization The old trait for `CompatibleDigestItem` actually worked. By changing its implementation, one can ensure that all *new* seals have the modern form, but *legacy* seals are still decoded correctly. * Bump impl version * Squash spurious deprecation warning `rustc` should not be emitting a deprecation warning in deprecated code, but it does, so silence it. * Rip out unused Cargo feature * Move AURA to aura_primitives * Respond to code review * Wrap overly-long line * Reduce logging verbosity and add target * Add dependency on `sr-primitives` to `aura_primitives` * Fix build It failed with a message about Cargo.lock being out of date. * core: aura: rename aura engine id const * core: aura: remove superfluous logging * core: primitives: add removed semicolons * core: aura: remove unused import * core: network: style fix * runtime: update wasm blobs * runtime: bump impl_version * core: primitives: tag all DigestItemType variants explicitly --- .gitignore | 2 + Cargo.lock | 1 + core/consensus/aura/primitives/Cargo.toml | 1 + core/consensus/aura/primitives/src/lib.rs | 4 + core/consensus/aura/src/lib.rs | 78 ++++++++++++++---- core/finality-grandpa/src/lib.rs | 2 +- core/network/src/consensus_gossip.rs | 2 +- core/network/src/lib.rs | 2 +- core/network/src/message.rs | 5 +- core/network/src/protocol.rs | 4 +- core/network/src/service.rs | 6 +- core/network/src/test/mod.rs | 7 +- core/primitives/src/crypto.rs | 2 +- core/primitives/src/ed25519.rs | 2 +- core/service/src/lib.rs | 5 +- core/sr-primitives/src/generic/digest.rs | 35 ++++++-- core/sr-primitives/src/lib.rs | 3 + core/test-runtime/wasm/Cargo.lock | 1 + .../substrate_test_runtime.compact.wasm | Bin 65032 -> 60122 bytes node-template/runtime/wasm/Cargo.lock | 1 + node-template/src/service.rs | 2 + node/cli/src/service.rs | 2 + node/runtime/src/lib.rs | 4 +- node/runtime/wasm/Cargo.lock | 1 + .../release/node_runtime.compact.wasm | Bin 955868 -> 940182 bytes 25 files changed, 129 insertions(+), 43 deletions(-) diff --git a/.gitignore b/.gitignore index 21dee82d81..d9ba8ac2b4 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,5 @@ polkadot.* .idea/ nohup.out rls*.log +*.orig +*.rej diff --git a/Cargo.lock b/Cargo.lock index 6549381f60..6ff9929eb7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3757,6 +3757,7 @@ dependencies = [ name = "substrate-consensus-aura-primitives" version = "0.1.0" dependencies = [ + "sr-primitives 0.1.0", "substrate-client 0.1.0", ] diff --git a/core/consensus/aura/primitives/Cargo.toml b/core/consensus/aura/primitives/Cargo.toml index d55db6b1ee..cc7fbeb3dd 100644 --- a/core/consensus/aura/primitives/Cargo.toml +++ b/core/consensus/aura/primitives/Cargo.toml @@ -7,6 +7,7 @@ edition = "2018" [dependencies] substrate-client = { path = "../../../client", default-features = false } +runtime_primitives = { package = "sr-primitives", path = "../../../sr-primitives", default-features = false } [features] default = ["std"] diff --git a/core/consensus/aura/primitives/src/lib.rs b/core/consensus/aura/primitives/src/lib.rs index 9401b164ce..47b6ec7c14 100644 --- a/core/consensus/aura/primitives/src/lib.rs +++ b/core/consensus/aura/primitives/src/lib.rs @@ -19,6 +19,10 @@ #![cfg_attr(not(feature = "std"), no_std)] use substrate_client::decl_runtime_apis; +use runtime_primitives::ConsensusEngineId; + +/// The `ConsensusEngineId` of AuRa. +pub const AURA_ENGINE_ID: ConsensusEngineId = [b'a', b'u', b'r', b'a']; decl_runtime_apis! { /// API necessary for block authorship with aura. diff --git a/core/consensus/aura/src/lib.rs b/core/consensus/aura/src/lib.rs index 3a9bfd971a..cf83d3fa6e 100644 --- a/core/consensus/aura/src/lib.rs +++ b/core/consensus/aura/src/lib.rs @@ -25,7 +25,7 @@ //! //! Blocks from future steps will be either deferred or rejected depending on how //! far in the future they are. - +#![deny(deprecated)] use std::{sync::Arc, time::Duration, thread, marker::PhantomData, hash::Hash, fmt::Debug}; use parity_codec::{Encode, Decode}; @@ -37,6 +37,7 @@ use client::ChainHead; use client::block_builder::api::BlockBuilder as BlockBuilderApi; use client::runtime_api::ApiExt; use consensus_common::{ImportBlock, BlockOrigin}; +use aura_primitives::AURA_ENGINE_ID; use runtime_primitives::{generic, generic::BlockId, Justification}; use runtime_primitives::traits::{ Block, Header, Digest, DigestItemFor, DigestItem, ProvideRuntimeApi @@ -113,27 +114,42 @@ fn inherent_to_common_error(err: RuntimeString) -> consensus_common::Error { /// A digest item which is usable with aura consensus. pub trait CompatibleDigestItem: Sized { - /// Construct a digest item which is a slot number and a signature on the + /// Construct a digest item which contains a slot number and a signature on the /// hash. - fn aura_seal(slot_number: u64, signature: Signature) -> Self; + fn aura_seal(slot_num: u64, signature: Signature) -> Self; /// If this item is an Aura seal, return the slot number and signature. fn as_aura_seal(&self) -> Option<(u64, Signature)>; + + /// Return `true` if this seal type is deprecated. Otherwise, return + /// `false`. + fn is_deprecated(&self) -> bool; } -impl CompatibleDigestItem for generic::DigestItem> - where T::Signature: Clone +impl CompatibleDigestItem

    for generic::DigestItem + where P: Pair, P::Signature: Clone + Encode + Decode, { /// Construct a digest item which is a slot number and a signature on the /// hash. - fn aura_seal(slot_number: u64, signature: Signature) -> Self { - generic::DigestItem::Seal(slot_number, signature) + fn aura_seal(slot_number: u64, signature: Signature

    ) -> Self { + generic::DigestItem::Consensus(AURA_ENGINE_ID, (slot_number, signature).encode()) } + /// If this item is an Aura seal, return the slot number and signature. - fn as_aura_seal(&self) -> Option<(u64, Signature)> { + #[allow(deprecated)] + fn as_aura_seal(&self) -> Option<(u64, Signature

    )> { match self { generic::DigestItem::Seal(slot, ref sig) => Some((*slot, (*sig).clone())), - _ => None + generic::DigestItem::Consensus(AURA_ENGINE_ID, seal) => Decode::decode(&mut &seal[..]), + _ => None, + } + } + + #[allow(deprecated)] + fn is_deprecated(&self) -> bool { + match self { + generic::DigestItem::Seal(_, _) => true, + _ => false, } } } @@ -171,6 +187,7 @@ pub fn start_aura_thread( Error: From + From + 'static, P: Pair + Send + Sync + 'static, P::Public: Encode + Decode + Eq + Clone + Debug + Hash + Send + Sync + 'static, + P::Signature: Encode, SO: SyncOracle + Send + Sync + Clone + 'static, OnExit: Future + Send + 'static, DigestItemFor: CompatibleDigestItem

    + DigestItem> + 'static, @@ -217,6 +234,7 @@ pub fn start_aura( Error: From + From, P: Pair + Send + Sync + 'static, P::Public: Hash + Eq + Send + Sync + Clone + Debug + Encode + Decode + 'static, + P::Signature: Encode, SO: SyncOracle + Send + Sync + Clone, DigestItemFor: CompatibleDigestItem

    + DigestItem>, Error: ::std::error::Error + Send + 'static + From<::consensus_common::Error>, @@ -259,6 +277,7 @@ impl SlotWorker for AuraWorker + Send + Sync + 'static, P: Pair + Send + Sync + 'static, P::Public: Hash + Eq + Send + Sync + Clone + Debug + Encode + Decode + 'static, + P::Signature: Encode, Error: From + From, SO: SyncOracle + Send + Clone, DigestItemFor: CompatibleDigestItem

    + DigestItem>, @@ -416,19 +435,32 @@ impl SlotWorker for AuraWorker(slot_now: u64, mut header: B::Header, hash: B::Hash, authorities: &[AuthorityId

    ]) - -> Result, String> +#[forbid(deprecated)] +fn check_header( + slot_now: u64, + mut header: B::Header, + hash: B::Hash, + authorities: &[AuthorityId

    ], + allow_old_seals: bool, +) -> Result, String> where DigestItemFor: CompatibleDigestItem

    , P::Public: Clone + AsRef, + P::Signature: Decode, { let digest_item = match header.digest_mut().pop() { Some(x) => x, None => return Err(format!("Header {:?} is unsealed", hash)), }; - let (slot_num, sig) = match digest_item.as_aura_seal() { - Some(x) => x, - None => return Err(format!("Header {:?} is unsealed", hash)), - }; + + if !allow_old_seals && digest_item.is_deprecated() { + debug!(target: "aura", "Header {:?} uses old seal format, rejecting", hash); + return Err(format!("Header {:?} uses old seal format, rejecting", hash)) + } + + let (slot_num, sig) = digest_item.as_aura_seal().ok_or_else(|| { + debug!(target: "aura", "Header {:?} is unsealed", hash); + format!("Header {:?} is unsealed", hash) + })?; if slot_num > slot_now { header.digest_mut().push(digest_item); @@ -436,7 +468,6 @@ fn check_header(slot_now: u64, mut header: B::Header, hash: B } else { // check the signature is valid under the expected authority and // chain state. - let expected_author = match slot_author::

    (slot_num, &authorities) { None => return Err("Slot Author not found".to_string()), Some(author) => author @@ -473,6 +504,7 @@ pub struct AuraVerifier { extra: E, phantom: PhantomData

    , inherent_data_providers: inherents::InherentDataProviders, + allow_old_seals: bool, } impl AuraVerifier @@ -539,6 +571,7 @@ impl ExtraVerification for NothingExtra { } } +#[forbid(deprecated)] impl Verifier for AuraVerifier where C: Authorities + ProvideRuntimeApi + Send + Sync, C::Api: BlockBuilderApi, @@ -546,6 +579,7 @@ impl Verifier for AuraVerifier where E: ExtraVerification, P: Pair + Send + Sync + 'static, P::Public: Send + Sync + Hash + Eq + Clone + Decode + Encode + Debug + AsRef + 'static, + P::Signature: Encode + Decode, { fn verify( &self, @@ -569,7 +603,13 @@ impl Verifier for AuraVerifier where // we add one to allow for some small drift. // FIXME #1019 in the future, alter this queue to allow deferring of headers - let checked_header = check_header::(slot_now + 1, header, hash, &authorities[..])?; + let checked_header = check_header::( + slot_now + 1, + header, + hash, + &authorities[..], + self.allow_old_seals, + )?; match checked_header { CheckedHeader::Checked(pre_header, slot_num, sig) => { let item = >::aura_seal(slot_num, sig); @@ -654,6 +694,7 @@ pub fn import_queue( client: Arc, extra: E, inherent_data_providers: InherentDataProviders, + allow_old_seals: bool, ) -> Result, consensus_common::Error> where B: Block, C: 'static + Authorities + ProvideRuntimeApi + Send + Sync, @@ -662,6 +703,7 @@ pub fn import_queue( E: 'static + ExtraVerification, P: Pair + Send + Sync + 'static, P::Public: Clone + Eq + Send + Sync + Hash + Debug + Encode + Decode + AsRef, + P::Signature: Encode + Decode, { register_aura_inherent_data_provider(&inherent_data_providers, slot_duration.get())?; @@ -671,6 +713,7 @@ pub fn import_queue( extra, inherent_data_providers, phantom: PhantomData, + allow_old_seals, } ); Ok(BasicQueue::new(verifier, block_import, justification_import)) @@ -756,6 +799,7 @@ mod tests { extra: NothingExtra, inherent_data_providers, phantom: Default::default(), + allow_old_seals: false, }) } diff --git a/core/finality-grandpa/src/lib.rs b/core/finality-grandpa/src/lib.rs index d6eda5a091..daf37357a0 100644 --- a/core/finality-grandpa/src/lib.rs +++ b/core/finality-grandpa/src/lib.rs @@ -111,7 +111,7 @@ use ed25519::{Public as AuthorityId, Signature as AuthoritySignature}; #[cfg(test)] mod tests; -const GRANDPA_ENGINE_ID: network::ConsensusEngineId = [b'a', b'f', b'g', b'1']; +const GRANDPA_ENGINE_ID: runtime_primitives::ConsensusEngineId = [b'a', b'f', b'g', b'1']; const MESSAGE_ROUND_TOLERANCE: u64 = 2; /// A GRANDPA message for a substrate chain. diff --git a/core/network/src/consensus_gossip.rs b/core/network/src/consensus_gossip.rs index 3f6073f1d4..433dd5b795 100644 --- a/core/network/src/consensus_gossip.rs +++ b/core/network/src/consensus_gossip.rs @@ -25,10 +25,10 @@ use rand::{self, seq::SliceRandom}; use lru_cache::LruCache; use network_libp2p::{Severity, PeerId}; use runtime_primitives::traits::{Block as BlockT, Hash, HashFor}; +use runtime_primitives::ConsensusEngineId; pub use crate::message::generic::{Message, ConsensusMessage}; use crate::protocol::Context; use crate::config::Roles; -use crate::ConsensusEngineId; // FIXME: Add additional spam/DoS attack protection: https://github.com/paritytech/substrate/issues/1115 const KNOWN_MESSAGES_CACHE_SIZE: usize = 4096; diff --git a/core/network/src/lib.rs b/core/network/src/lib.rs index 0f184af773..0200494517 100644 --- a/core/network/src/lib.rs +++ b/core/network/src/lib.rs @@ -48,7 +48,7 @@ pub use network_libp2p::{ NodeKeyConfig, Secret, Secp256k1Secret, Ed25519Secret, build_multiaddr, PeerId, PublicKey }; -pub use message::{generic as generic_message, RequestId, Status as StatusMessage, ConsensusEngineId}; +pub use message::{generic as generic_message, RequestId, Status as StatusMessage}; pub use error::Error; pub use on_demand::{OnDemand, OnDemandService, RemoteResponse}; #[doc(hidden)] diff --git a/core/network/src/message.rs b/core/network/src/message.rs index 355935b10e..221a867c67 100644 --- a/core/network/src/message.rs +++ b/core/network/src/message.rs @@ -17,7 +17,7 @@ //! Network packet message types. These get serialized and put into the lower level protocol payload. use bitflags::bitflags; -use runtime_primitives::traits::{Block as BlockT, Header as HeaderT}; +use runtime_primitives::{ConsensusEngineId, traits::{Block as BlockT, Header as HeaderT}}; use parity_codec::{Encode, Decode, Input, Output}; pub use self::generic::{ BlockAnnounce, RemoteCallRequest, RemoteReadRequest, @@ -29,9 +29,6 @@ pub use self::generic::{ /// A unique ID of a request. pub type RequestId = u64; -/// Consensus engine unique ID. -pub type ConsensusEngineId = [u8; 4]; - /// Type alias for using the message type using block type parameters. pub type Message = generic::Message< ::Header, diff --git a/core/network/src/protocol.rs b/core/network/src/protocol.rs index 27e615e56f..185f595cc0 100644 --- a/core/network/src/protocol.rs +++ b/core/network/src/protocol.rs @@ -19,10 +19,10 @@ use futures::sync::mpsc; use parking_lot::Mutex; use network_libp2p::{PeerId, Severity}; use primitives::storage::StorageKey; -use runtime_primitives::generic::BlockId; +use runtime_primitives::{generic::BlockId, ConsensusEngineId}; use runtime_primitives::traits::{As, Block as BlockT, Header as HeaderT, NumberFor, Zero}; use consensus::import_queue::ImportQueue; -use crate::message::{self, Message, ConsensusEngineId}; +use crate::message::{self, Message}; use crate::message::generic::{Message as GenericMessage, ConsensusMessage}; use crate::consensus_gossip::ConsensusGossip; use crate::on_demand::OnDemandService; diff --git a/core/network/src/service.rs b/core/network/src/service.rs index d0cd0540d2..8e86587398 100644 --- a/core/network/src/service.rs +++ b/core/network/src/service.rs @@ -27,12 +27,12 @@ use network_libp2p::{multiaddr, RegisteredProtocol, NetworkState}; use peerset::Peerset; use consensus::import_queue::{ImportQueue, Link}; use crate::consensus_gossip::ConsensusGossip; -use crate::message::{Message, ConsensusEngineId}; +use crate::message::Message; use crate::protocol::{self, Context, FromNetworkMsg, Protocol, ConnectedPeer, ProtocolMsg, ProtocolStatus, PeerInfo}; use crate::config::Params; use crossbeam_channel::{self as channel, Receiver, Sender, TryRecvError}; use crate::error::Error; -use runtime_primitives::traits::{Block as BlockT, NumberFor}; +use runtime_primitives::{traits::{Block as BlockT, NumberFor}, ConsensusEngineId}; use crate::specialization::NetworkSpecialization; use tokio::prelude::task::AtomicTask; @@ -295,6 +295,7 @@ impl> ::consensus::SyncOracle f fn is_major_syncing(&self) -> bool { self.is_major_syncing() } + fn is_offline(&self) -> bool { self.is_offline.load(Ordering::Relaxed) } @@ -315,6 +316,7 @@ impl> SyncProvider for Servi fn is_major_syncing(&self) -> bool { self.is_major_syncing() } + /// Get sync status fn status(&self) -> mpsc::UnboundedReceiver> { let (sink, stream) = mpsc::unbounded(); diff --git a/core/network/src/test/mod.rs b/core/network/src/test/mod.rs index b6e7c3b10f..b4b1c4f4e2 100644 --- a/core/network/src/test/mod.rs +++ b/core/network/src/test/mod.rs @@ -39,7 +39,7 @@ use crate::consensus_gossip::ConsensusGossip; use crossbeam_channel::{self as channel, Sender, select}; use futures::Future; use futures::sync::{mpsc, oneshot}; -use crate::message::{Message, ConsensusEngineId}; +use crate::message::Message; use network_libp2p::PeerId; use parity_codec::Encode; use parking_lot::{Mutex, RwLock}; @@ -47,7 +47,7 @@ use primitives::{H256, ed25519::Public as AuthorityId}; use crate::protocol::{ConnectedPeer, Context, FromNetworkMsg, Protocol, ProtocolMsg}; use runtime_primitives::generic::BlockId; use runtime_primitives::traits::{AuthorityIdFor, Block as BlockT, Digest, DigestItem, Header, NumberFor}; -use runtime_primitives::Justification; +use runtime_primitives::{Justification, ConsensusEngineId}; use crate::service::{network_channel, NetworkChan, NetworkLink, NetworkMsg, NetworkPort, TransactionPool}; use crate::specialization::NetworkSpecialization; use test_client::{self, AccountKeyring}; @@ -260,11 +260,13 @@ impl + Clone> Peer { } // SyncOracle: are we connected to any peer? + #[cfg(test)] fn is_offline(&self) -> bool { self.is_offline.load(Ordering::Relaxed) } // SyncOracle: are we in the process of catching-up with the chain? + #[cfg(test)] fn is_major_syncing(&self) -> bool { self.is_major_syncing.load(Ordering::Relaxed) } @@ -644,7 +646,6 @@ pub trait TestNetFactory: Sized { Some(NetworkMsg::ReportPeer(who, _)) => { to_disconnect.insert(who); } - Some(_msg) => continue, } } for d in to_disconnect { diff --git a/core/primitives/src/crypto.rs b/core/primitives/src/crypto.rs index fe7c1fabb8..82b36d8a97 100644 --- a/core/primitives/src/crypto.rs +++ b/core/primitives/src/crypto.rs @@ -414,7 +414,7 @@ mod tests { fn derive>(&self, _path: Iter) -> Result { Err(()) } - fn from_seed(_seed: Self::Seed) -> Self { TestPair::Seed(vec![]) } + fn from_seed(_seed: ::Seed) -> Self { TestPair::Seed(vec![]) } fn sign(&self, _message: &[u8]) -> Self::Signature { () } fn verify, M: AsRef<[u8]>>(_sig: &Self::Signature, _message: M, _pubkey: P) -> bool { true } fn verify_weak, M: AsRef<[u8]>>(_sig: &[u8], _message: M, _pubkey: P) -> bool { true } diff --git a/core/primitives/src/ed25519.rs b/core/primitives/src/ed25519.rs index 8b55300df4..295c23b378 100644 --- a/core/primitives/src/ed25519.rs +++ b/core/primitives/src/ed25519.rs @@ -523,7 +523,7 @@ impl Pair { mod test { use super::*; use hex_literal::{hex, hex_impl}; - use crate::{Pair as PairT, crypto::DEV_PHRASE}; + use crate::crypto::DEV_PHRASE; #[test] fn default_phrase_should_be_used() { diff --git a/core/service/src/lib.rs b/core/service/src/lib.rs index 3b39607a97..105bab8ca0 100644 --- a/core/service/src/lib.rs +++ b/core/service/src/lib.rs @@ -48,6 +48,7 @@ pub use chain_spec::{ChainSpec, Properties}; pub use transaction_pool::txpool::{ self, Pool as TransactionPool, Options as TransactionPoolOptions, ChainApi, IntoPoolError }; +use client::runtime_api::BlockT; pub use client::FinalityNotifications; pub use components::{ServiceFactory, FullBackend, FullExecutor, LightBackend, @@ -227,9 +228,9 @@ impl Service { // A utility stream that drops all ready items and only returns the last one. // This is used to only keep the last finality notification and avoid // overloading the sync module with notifications. - struct MostRecentNotification(futures::stream::Fuse>); + struct MostRecentNotification(futures::stream::Fuse>); - impl Stream for MostRecentNotification { + impl Stream for MostRecentNotification { type Item = as Stream>::Item; type Error = as Stream>::Error; diff --git a/core/sr-primitives/src/generic/digest.rs b/core/sr-primitives/src/generic/digest.rs index 710bcc7745..8eed63900f 100644 --- a/core/sr-primitives/src/generic/digest.rs +++ b/core/sr-primitives/src/generic/digest.rs @@ -21,6 +21,7 @@ use serde_derive::Serialize; use rstd::prelude::*; +use crate::ConsensusEngineId; use crate::codec::{Decode, Encode, Codec, Input}; use crate::traits::{self, Member, DigestItem as DigestItemT, MaybeHash}; @@ -61,6 +62,7 @@ impl traits::Digest for Digest where /// provide opaque access to other items. #[derive(PartialEq, Eq, Clone)] #[cfg_attr(feature = "std", derive(Debug))] +#[allow(deprecated)] pub enum DigestItem { /// System digest item announcing that authorities set has been changed /// in the block. Contains the new set of authorities. @@ -69,8 +71,11 @@ pub enum DigestItem { /// block. It is created for every block iff runtime supports changes /// trie creation. ChangesTrieRoot(Hash), - /// Put a Seal on it + /// The old way to put a Seal on it. Deprecated. + #[deprecated] Seal(u64, SealSignature), + /// Put a Seal on it + Consensus(ConsensusEngineId, Vec), /// Any 'non-system' digest item, opaque to the native code. Other(Vec), } @@ -89,16 +94,20 @@ impl ::serde::Serializ /// final runtime implementations for encoding/decoding its log items. #[derive(PartialEq, Eq, Clone)] #[cfg_attr(feature = "std", derive(Debug))] +#[allow(deprecated)] pub enum DigestItemRef<'a, Hash: 'a, AuthorityId: 'a, SealSignature: 'a> { /// Reference to `DigestItem::AuthoritiesChange`. AuthoritiesChange(&'a [AuthorityId]), /// Reference to `DigestItem::ChangesTrieRoot`. ChangesTrieRoot(&'a Hash), - /// A sealed signature for testing + /// A deprecated sealed signature for testing + #[deprecated] Seal(&'a u64, &'a SealSignature), + /// A sealed signature for testing + Consensus(&'a ConsensusEngineId, &'a [u8]), /// Any 'non-system' digest item, opaque to the native code. /// Reference to `DigestItem::Other`. - Other(&'a Vec), + Other(&'a [u8]), } /// Type of the digest item. Used to gain explicit control over `DigestItem` encoding @@ -109,9 +118,10 @@ pub enum DigestItemRef<'a, Hash: 'a, AuthorityId: 'a, SealSignature: 'a> { #[derive(Encode, Decode)] enum DigestItemType { Other = 0, - AuthoritiesChange, - ChangesTrieRoot, - Seal, + AuthoritiesChange = 1, + ChangesTrieRoot = 2, + Seal = 3, + Consensus = 4, } impl DigestItem { @@ -124,11 +134,13 @@ impl DigestItem(&'a self) -> DigestItemRef<'a, Hash, AuthorityId, SealSignature> { match *self { DigestItem::AuthoritiesChange(ref v) => DigestItemRef::AuthoritiesChange(v), DigestItem::ChangesTrieRoot(ref v) => DigestItemRef::ChangesTrieRoot(v), DigestItem::Seal(ref v, ref s) => DigestItemRef::Seal(v, s), + DigestItem::Consensus(ref v, ref s) => DigestItemRef::Consensus(v, s), DigestItem::Other(ref v) => DigestItemRef::Other(v), } } @@ -158,6 +170,7 @@ impl Encode for Digest } impl Decode for DigestItem { + #[allow(deprecated)] fn decode(input: &mut I) -> Option { let item_type: DigestItemType = Decode::decode(input)?; match item_type { @@ -171,6 +184,10 @@ impl Decode for Digest let vals: (u64, SealSignature) = Decode::decode(input)?; Some(DigestItem::Seal(vals.0, vals.1)) }, + DigestItemType::Consensus => { + let vals: (ConsensusEngineId, Vec) = Decode::decode(input)?; + Some(DigestItem::Consensus(vals.0, vals.1)) + } DigestItemType::Other => Some(DigestItem::Other( Decode::decode(input)?, )), @@ -196,6 +213,7 @@ impl<'a, Hash: Codec + Member, AuthorityId: Codec + Member, SealSignature: Codec } } +#[allow(deprecated)] impl<'a, Hash: Encode, AuthorityId: Encode, SealSignature: Encode> Encode for DigestItemRef<'a, Hash, AuthorityId, SealSignature> { fn encode(&self) -> Vec { let mut v = Vec::new(); @@ -213,6 +231,10 @@ impl<'a, Hash: Encode, AuthorityId: Encode, SealSignature: Encode> Encode for Di DigestItemType::Seal.encode_to(&mut v); (val, sig).encode_to(&mut v); }, + DigestItemRef::Consensus(val, sig) => { + DigestItemType::Consensus.encode_to(&mut v); + (val, sig).encode_to(&mut v); + }, DigestItemRef::Other(val) => { DigestItemType::Other.encode_to(&mut v); val.encode_to(&mut v); @@ -229,6 +251,7 @@ mod tests { use substrate_primitives::hash::H512 as Signature; #[test] + #[allow(deprecated)] fn should_serialize_digest() { let digest = Digest { logs: vec![ diff --git a/core/sr-primitives/src/lib.rs b/core/sr-primitives/src/lib.rs index 41d1564127..cd83573cfc 100644 --- a/core/sr-primitives/src/lib.rs +++ b/core/sr-primitives/src/lib.rs @@ -120,6 +120,9 @@ impl BuildStorage for StorageOverlay { } } +/// Consensus engine unique ID. +pub type ConsensusEngineId = [u8; 4]; + /// Permill is parts-per-million (i.e. after multiplying by this, divide by 1000000). #[cfg_attr(feature = "std", derive(Serialize, Deserialize, Debug))] #[derive(Encode, Decode, Default, Copy, Clone, PartialEq, Eq)] diff --git a/core/test-runtime/wasm/Cargo.lock b/core/test-runtime/wasm/Cargo.lock index 771ffe97e3..ced5304a73 100644 --- a/core/test-runtime/wasm/Cargo.lock +++ b/core/test-runtime/wasm/Cargo.lock @@ -2280,6 +2280,7 @@ dependencies = [ name = "substrate-consensus-aura-primitives" version = "0.1.0" dependencies = [ + "sr-primitives 0.1.0", "substrate-client 0.1.0", ] diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index 3eae0c992eb83d25aba424dee6497efe6ef866c0..afdd492c6aafcd694ecd49e3ef81a312154b0896 100644 GIT binary patch delta 26437 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 literal 65032 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 diff --git a/node-template/runtime/wasm/Cargo.lock b/node-template/runtime/wasm/Cargo.lock index 6db886a520..b54048856d 100644 --- a/node-template/runtime/wasm/Cargo.lock +++ b/node-template/runtime/wasm/Cargo.lock @@ -2445,6 +2445,7 @@ dependencies = [ name = "substrate-consensus-aura-primitives" version = "0.1.0" dependencies = [ + "sr-primitives 0.1.0", "substrate-client 0.1.0", ] diff --git a/node-template/src/service.rs b/node-template/src/service.rs index 2ff5041f76..95283c03f2 100644 --- a/node-template/src/service.rs +++ b/node-template/src/service.rs @@ -94,6 +94,7 @@ construct_service_factory! { client, NothingExtra, config.custom.inherent_data_providers.clone(), + true, ).map_err(Into::into) }, LightImportQueue = AuraImportQueue< @@ -107,6 +108,7 @@ construct_service_factory! { client, NothingExtra, config.custom.inherent_data_providers.clone(), + true, ).map_err(Into::into) }, } diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index c4dd70fc51..a1fb61f175 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -148,6 +148,7 @@ construct_service_factory! { client, NothingExtra, config.custom.inherent_data_providers.clone(), + true, ).map_err(Into::into) }}, LightImportQueue = AuraImportQueue @@ -159,6 +160,7 @@ construct_service_factory! { client, NothingExtra, config.custom.inherent_data_providers.clone(), + true, ).map_err(Into::into) } }, diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index dc1683c38e..ad31c08296 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,8 +58,8 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 48, - impl_version: 49, + spec_version: 49, + impl_version: 50, apis: RUNTIME_API_VERSIONS, }; diff --git a/node/runtime/wasm/Cargo.lock b/node/runtime/wasm/Cargo.lock index 4ad70d1134..146474068a 100644 --- a/node/runtime/wasm/Cargo.lock +++ b/node/runtime/wasm/Cargo.lock @@ -2589,6 +2589,7 @@ dependencies = [ name = "substrate-consensus-aura-primitives" version = "0.1.0" dependencies = [ + "sr-primitives 0.1.0", "substrate-client 0.1.0", ] diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index cbe64d746792e5c8c4b3a0e23a0f1a6a640384a3..fef986a4f7864f2825830a7786dd5bcd60add8d8 100644 GIT binary patch literal 940182 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

    (zkENBmJ**;fGv0&K)##DEw+;6RG5 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�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 literal 955868 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ǚ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

    5TLwgF8*!L@0v?Wij8`hg{VCW-2BrdFv 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 Date: Fri, 29 Mar 2019 14:11:45 +0100 Subject: [PATCH 110/120] Convert all UK spelling to US (#2138) * all the ise * forgot a misspelling * a few more replacements * bump impl * rollback and fixes * bump impl again * Add aliases for RPC * Update on_demand.rs --- CODE_OF_CONDUCT.adoc | 2 +- CONTRIBUTING.adoc | 6 +- README.adoc | 16 +- core/basic-authorship/src/basic_authorship.rs | 4 +- core/client/src/block_builder/api.rs | 2 +- .../client/src/block_builder/block_builder.rs | 4 +- core/client/src/call_executor.rs | 16 +- core/client/src/client.rs | 8 +- core/client/src/genesis.rs | 4 +- core/client/src/light/call_executor.rs | 18 +-- core/client/src/runtime_api.rs | 6 +- core/consensus/rhd/src/lib.rs | 2 +- core/finality-grandpa/primitives/src/lib.rs | 6 +- core/finality-grandpa/src/authorities.rs | 10 +- core/finality-grandpa/src/environment.rs | 2 +- core/finality-grandpa/src/import.rs | 2 +- core/finality-grandpa/src/tests.rs | 2 +- core/network/src/message.rs | 2 +- core/primitives/src/lib.rs | 4 +- core/rpc/src/chain/mod.rs | 26 ++-- core/rpc/src/chain/tests.rs | 16 +- core/service/src/components.rs | 2 +- core/sr-api-macros/src/impl_runtime_apis.rs | 6 +- core/sr-api-macros/tests/decl_and_impl.rs | 2 +- core/sr-io/build.rs | 2 +- core/sr-io/without_std.rs | 2 +- core/sr-primitives/src/generic/era.rs | 6 +- core/sr-primitives/src/traits.rs | 56 +++---- core/sr-sandbox/build.rs | 2 +- core/sr-std/build.rs | 2 +- core/sr-version/src/lib.rs | 2 +- core/telemetry/src/lib.rs | 2 +- core/test-runtime/src/lib.rs | 20 +-- core/test-runtime/src/system.rs | 6 +- .../substrate_test_runtime.compact.wasm | Bin 60122 -> 60132 bytes core/transaction-pool/graph/src/listener.rs | 2 +- core/transaction-pool/graph/src/pool.rs | 8 +- core/transaction-pool/graph/src/watcher.rs | 24 +-- core/trie/src/trie_stream.rs | 2 +- node-template/init.sh | 2 +- node-template/runtime/src/lib.rs | 8 +- node-template/src/chain_spec.rs | 2 +- node/cli/src/chain_spec.rs | 2 +- node/executor/src/lib.rs | 18 +-- node/runtime/src/lib.rs | 10 +- .../release/node_runtime.compact.wasm | Bin 940182 -> 940061 bytes scripts/gitlab/check_runtime.sh | 2 +- scripts/init.sh | 2 +- scripts/kubernetes/values.yaml | 8 +- srml/assets/Cargo.toml | 2 +- srml/aura/src/tests.rs | 8 +- srml/consensus/src/lib.rs | 4 +- srml/consensus/src/tests.rs | 24 +-- srml/contract/src/exec.rs | 2 +- srml/contract/src/lib.rs | 70 ++++----- srml/council/src/seats.rs | 38 ++--- srml/council/src/voting.rs | 2 +- srml/democracy/src/lib.rs | 10 +- srml/democracy/src/vote_threshold.rs | 4 +- srml/example/src/lib.rs | 16 +- srml/executive/src/lib.rs | 40 ++--- srml/finality-tracker/src/lib.rs | 16 +- srml/grandpa/src/lib.rs | 10 +- srml/grandpa/src/tests.rs | 74 ++++----- srml/session/src/lib.rs | 2 +- srml/staking/src/lib.rs | 6 +- srml/staking/src/phragmen.rs | 26 ++-- srml/staking/src/tests.rs | 4 +- srml/support/src/dispatch.rs | 144 +++++++++--------- srml/support/src/lib.rs | 4 +- srml/support/src/storage/generator.rs | 2 +- srml/system/src/lib.rs | 18 +-- srml/timestamp/src/lib.rs | 4 +- srml/treasury/src/lib.rs | 16 +- 74 files changed, 453 insertions(+), 451 deletions(-) diff --git a/CODE_OF_CONDUCT.adoc b/CODE_OF_CONDUCT.adoc index 811e83e9fa..7cb0210e8e 100644 --- a/CODE_OF_CONDUCT.adoc +++ b/CODE_OF_CONDUCT.adoc @@ -24,7 +24,7 @@ Examples of unacceptable behavior by participants include: === Facilitation, Not Strongarming -We recognise that this software is merely a tool for users to create and maintain their blockchain of preference. We see that blockchains are naturally community platforms with users being the ultimate decision makers. We assert that good software will maximise user agency by facilitate user-expression on the network. As such: +We recognize that this software is merely a tool for users to create and maintain their blockchain of preference. We see that blockchains are naturally community platforms with users being the ultimate decision makers. We assert that good software will maximize user agency by facilitate user-expression on the network. As such: * This project will strive to give users as much choice as is both reasonable and possible over what protocol they adhere to; but * use of the project's technical forums, commenting systems, pull requests and issue trackers as a means to express individual protocol preferences is forbidden. diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc index 7098869dcc..b797e72e82 100644 --- a/CONTRIBUTING.adoc +++ b/CONTRIBUTING.adoc @@ -33,10 +33,10 @@ Merging pull requests once CI is successful: When reviewing a pull request, the end-goal is to suggest useful changes to the author. Reviews should finish with approval unless there are issues that would result in: -. Buggy behaviour. +. Buggy behavior. . Undue maintenance burden. . Breaking with house coding style. -. Pessimisation (i.e. reduction of speed as measured in the projects benchmarks). +. Pessimization (i.e. reduction of speed as measured in the projects benchmarks). . Feature reduction (i.e. it removes some aspect of functionality that a significant minority of users rely on). . Uselessness (i.e. it does not strictly add a feature or fix a known issue). @@ -47,7 +47,7 @@ When reviewing a pull request, the end-goal is to suggest useful changes to the == Helping out -We use https://github.com/paritytech/substrate/labels[labels] to manage PRs and issues and communicate state of a PR. Please familiarize yourself with them. Furthermore we are organising issues in https://github.com/paritytech/substrate/milestones[milestones]. Best way to get started is to a pick a ticket from the current milestone tagged https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AQ2-easy[`easy`] or https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AQ3-medium[`medium`] and get going or https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AX1-mentor[`mentor`] and get in contact with the mentor offering their support on that larger task. +We use https://github.com/paritytech/substrate/labels[labels] to manage PRs and issues and communicate state of a PR. Please familiarize yourself with them. Furthermore we are organizing issues in https://github.com/paritytech/substrate/milestones[milestones]. Best way to get started is to a pick a ticket from the current milestone tagged https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AQ2-easy[`easy`] or https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AQ3-medium[`medium`] and get going or https://github.com/paritytech/substrate/issues?q=is%3Aissue+is%3Aopen+label%3AX1-mentor[`mentor`] and get in contact with the mentor offering their support on that larger task. == Releases diff --git a/README.adoc b/README.adoc index 90961cbb0f..cf0e1970a7 100644 --- a/README.adoc +++ b/README.adoc @@ -10,9 +10,9 @@ Substrate is a next-generation framework for blockchain innovation. == Description -At its heart, Substrate is a combination of three technologies: https://webassembly.org/[WebAssembly], https://libp2p.io/[Libp2p] and GRANDPA Consensus. About GRANDPA, see this https://hackmd.io/Jd0byWX0RiqFiXUVC78Bdw?view#GRANDPA[definition], https://medium.com/polkadot-network/grandpa-block-finality-in-polkadot-an-introduction-part-1-d08a24a021b5[introduction] and https://github.com/w3f/consensus/blob/master/pdf/grandpa.pdf[formal specification]. It is both a library for building new blockchains and a "skeleton key" of a blockchain client, able to synchronise to any Substrate-based chain. +At its heart, Substrate is a combination of three technologies: https://webassembly.org/[WebAssembly], https://libp2p.io/[Libp2p] and GRANDPA Consensus. About GRANDPA, see this https://hackmd.io/Jd0byWX0RiqFiXUVC78Bdw?view#GRANDPA[definition], https://medium.com/polkadot-network/grandpa-block-finality-in-polkadot-an-introduction-part-1-d08a24a021b5[introduction] and https://github.com/w3f/consensus/blob/master/pdf/grandpa.pdf[formal specification]. It is both a library for building new blockchains and a "skeleton key" of a blockchain client, able to synchronize to any Substrate-based chain. -Substrate chains have three distinct features that make them "next-generation": a dynamic, self-defining state-transition function; light-client functionality from day one; and a progressive consensus algorithm with fast block production and adaptive, definite finality. The STF, encoded in WebAssembly, is known as the "runtime". This defines the `execute_block` function, and can specify everything from the staking algorithm, transaction semantics, logging mechanisms and procedures for replacing any aspect of itself or of the blockchain's state ("governance"). Because the runtime is entirely dynamic all of these can be switched out or upgraded at any time. A Substrate chain is very much a "living organism". +Substrate chains have three distinct features that make them "next-generation": a dynamic, self-defining state-transition function; light-client functionality from day one; and a progressive consensus algorithm with fast block production and adaptive, definite finality. The STF, encoded in WebAssembly, is known as the "runtime". This defines the `execute_block` function, and can specify everything from the staking algorithm, transaction semantics, logging mechanisms and procedures for replacing any aspect of itself or of the blockchain's state ("governance"). Because the runtime is entirely dynamic all of these can be switched out or upgraded at any time. A Substrate chain is very much a "living organizm". See also https://www.parity.io/what-is-substrate/. @@ -39,7 +39,7 @@ Block := Header + Extrinsics + Justifications === Extrinsics -Extrinsics in Substrate are pieces of information from "the outside world" that are contained in the blocks of the chain. You might think "ahh, that means *transactions*": in fact, no. Extrinsics fall into two broad categories of which only one is *transactions*. The other is known as *inherents*. The difference between these two is that transactions are signed and gossipped on the network and can be deemed useful *per se*. This fits the mould of what you would call transactions in Bitcoin or Ethereum. +Extrinsics in Substrate are pieces of information from "the outside world" that are contained in the blocks of the chain. You might think "ahh, that means *transactions*": in fact, no. Extrinsics fall into two broad categories of which only one is *transactions*. The other is known as *inherents*. The difference between these two is that transactions are signed and gossipped on the network and can be deemed useful *per se*. This fits the mold of what you would call transactions in Bitcoin or Ethereum. Inherents, meanwhile, are not passed on the network and are not signed. They represent data which describes the environment but which cannot call upon anything to prove it such as a signature. Rather they are assumed to be "true" simply because a sufficiently large number of validators have agreed on them being reasonable. @@ -71,8 +71,8 @@ impl_runtime_apis! { Executive::execute_block(block) } - fn initialise_block(header: ::Header) { - Executive::initialise_block(&header) + fn initialize_block(header: ::Header) { + Executive::initialize_block(&header) } } // ---snip--- @@ -86,9 +86,9 @@ The Substrate Runtime Module Library includes functionality for timestamps and s === Block-authoring Logic -In Substrate, there is a major distinction between blockchain *syncing* and block *authoring* ("authoring" is a more general term for what is called "mining" in Bitcoin). The first case might be referred to as a "full node" (or "light node" - Substrate supports both): authoring necessarily requires a synced node and, therefore, all authoring clients must necessarily be able to synchronise. However, the reverse is not true. The primary functionality that authoring nodes have which is not in "sync nodes" is threefold: transaction queue logic, inherent transaction knowledge and BFT consensus logic. BFT consensus logic is provided as a core element of Substrate and can be ignored since it is only exposed in the SDK under the `authorities()` API entry. +In Substrate, there is a major distinction between blockchain *syncing* and block *authoring* ("authoring" is a more general term for what is called "mining" in Bitcoin). The first case might be referred to as a "full node" (or "light node" - Substrate supports both): authoring necessarily requires a synced node and, therefore, all authoring clients must necessarily be able to synchronize. However, the reverse is not true. The primary functionality that authoring nodes have which is not in "sync nodes" is threefold: transaction queue logic, inherent transaction knowledge and BFT consensus logic. BFT consensus logic is provided as a core element of Substrate and can be ignored since it is only exposed in the SDK under the `authorities()` API entry. -Transaction queue logic in Substrate is designed to be as generic as possible, allowing a runtime to express which transactions are fit for inclusion in a block through the `initialize_block` and `apply_extrinsic` calls. However, more subtle aspects like prioritisation and replacement policy must currently be expressed "hard coded" as part of the blockchain's authoring code. That said, Substrate's reference implementation for a transaction queue should be sufficient for an initial chain implementation. +Transaction queue logic in Substrate is designed to be as generic as possible, allowing a runtime to express which transactions are fit for inclusion in a block through the `initialize_block` and `apply_extrinsic` calls. However, more subtle aspects like prioritization and replacement policy must currently be expressed "hard coded" as part of the blockchain's authoring code. That said, Substrate's reference implementation for a transaction queue should be sufficient for an initial chain implementation. Inherent extrinsic knowledge is again somewhat generic, and the actual construction of the extrinsics is, by convention, delegated to the "soft code" in the runtime. If ever there needs to be additional extrinsic information in the chain, then both the block authoring logic will need to be altered to provide it into the runtime and the runtime's `inherent_extrinsics` call will need to use this extra information in order to construct any additional extrinsic transactions for inclusion in the block. @@ -167,7 +167,7 @@ It won't do much until you start producing blocks though, so to do that you'll n substrate --chain ~/mychain.json --validator --key ... ---- -You can distribute `mychain.json` so that everyone can synchronise and (depending on your authorities list) validate on your chain. +You can distribute `mychain.json` so that everyone can synchronize and (depending on your authorities list) validate on your chain. == Building diff --git a/core/basic-authorship/src/basic_authorship.rs b/core/basic-authorship/src/basic_authorship.rs index 55b45c1c45..e9b6c909ad 100644 --- a/core/basic-authorship/src/basic_authorship.rs +++ b/core/basic-authorship/src/basic_authorship.rs @@ -177,7 +177,7 @@ impl consensus_common::Proposer<::Block> for Pro fn propose(&self, inherent_data: InherentData, max_duration: time::Duration) -> Result<::Block, error::Error> { - // leave some time for evaluation and block finalisation (33%) + // leave some time for evaluation and block finalization (33%) let deadline = (self.now)() + max_duration - max_duration / 3; self.propose_with(inherent_data, deadline) } @@ -197,7 +197,7 @@ impl Proposer where /// If the block is full we will attempt to push at most /// this number of transactions before quitting for real. - /// It allows us to increase block utilisation. + /// It allows us to increase block utilization. const MAX_SKIPPED_TRANSACTIONS: usize = 8; let block = self.client.build_block( diff --git a/core/client/src/block_builder/api.rs b/core/client/src/block_builder/api.rs index 8aad262777..48abb38024 100644 --- a/core/client/src/block_builder/api.rs +++ b/core/client/src/block_builder/api.rs @@ -28,7 +28,7 @@ decl_runtime_apis! { /// Apply the given extrinsics. fn apply_extrinsic(extrinsic: ::Extrinsic) -> ApplyResult; /// Finish the current block. - fn finalise_block() -> ::Header; + fn finalize_block() -> ::Header; /// Generate inherent extrinsics. The inherent data will vary from chain to chain. fn inherent_extrinsics(inherent: InherentData) -> Vec<::Extrinsic>; /// Check that the inherents are valid. The inherent data will vary from chain to chain. diff --git a/core/client/src/block_builder/block_builder.rs b/core/client/src/block_builder/block_builder.rs index 63e18e8279..fd1ce4aefb 100644 --- a/core/client/src/block_builder/block_builder.rs +++ b/core/client/src/block_builder/block_builder.rs @@ -64,7 +64,7 @@ where Default::default() ); let api = api.runtime_api(); - api.initialise_block_with_context(block_id, ExecutionContext::BlockConstruction, &header)?; + api.initialize_block_with_context(block_id, ExecutionContext::BlockConstruction, &header)?; Ok(BlockBuilder { header, extrinsics: Vec::new(), @@ -97,7 +97,7 @@ where /// Consume the builder to return a valid `Block` containing all pushed extrinsics. pub fn bake(mut self) -> error::Result { - self.header = self.api.finalise_block_with_context(&self.block_id, ExecutionContext::BlockConstruction)?; + self.header = self.api.finalize_block_with_context(&self.block_id, ExecutionContext::BlockConstruction)?; debug_assert_eq!( self.header.extrinsics_root().clone(), diff --git a/core/client/src/call_executor.rs b/core/client/src/call_executor.rs index 0dad56be07..20460f72ad 100644 --- a/core/client/src/call_executor.rs +++ b/core/client/src/call_executor.rs @@ -73,7 +73,7 @@ where method: &str, call_data: &[u8], changes: &mut OverlayedChanges, - initialised_block: &mut Option>, + initialized_block: &mut Option>, prepare_environment_block: PB, execution_manager: ExecutionManager, native_call: Option, @@ -213,14 +213,14 @@ where method: &str, call_data: &[u8], changes: &mut OverlayedChanges, - initialised_block: &mut Option>, + initialized_block: &mut Option>, prepare_environment_block: PB, execution_manager: ExecutionManager, native_call: Option, mut side_effects_handler: Option<&mut O>, ) -> Result, error::Error> where ExecutionManager: Clone { let state = self.backend.state_at(*at)?; - if method != "Core_initialise_block" && initialised_block.map(|id| id != *at).unwrap_or(true) { + if method != "Core_initialize_block" && initialized_block.map(|id| id != *at).unwrap_or(true) { let header = prepare_environment_block()?; state_machine::new( &state, @@ -228,14 +228,14 @@ where side_effects_handler.as_mut().map(|x| &mut **x), changes, &self.executor, - "Core_initialise_block", + "Core_initialize_block", &header.encode(), ).execute_using_consensus_failure_handler::<_, R, fn() -> _>( execution_manager.clone(), false, None, )?; - *initialised_block = Some(*at); + *initialized_block = Some(*at); } let result = state_machine::new( @@ -252,9 +252,9 @@ where native_call, ).map(|(result, _, _)| result)?; - // If the method is `initialise_block` we need to set the `initialised_block` - if method == "Core_initialise_block" { - *initialised_block = Some(*at); + // If the method is `initialize_block` we need to set the `initialized_block` + if method == "Core_initialize_block" { + *initialized_block = Some(*at); } self.backend.destroy_state(state)?; diff --git a/core/client/src/client.rs b/core/client/src/client.rs index 699bbcad8d..86d643d3b7 100644 --- a/core/client/src/client.rs +++ b/core/client/src/client.rs @@ -285,7 +285,7 @@ impl Client where backend.begin_state_operation(&mut op, BlockId::Hash(Default::default()))?; let state_root = op.reset_storage(genesis_storage, children_genesis_storage)?; let genesis_block = genesis::construct_genesis_block::(state_root.into()); - info!("Initialising Genesis block/state (state: {}, header-hash: {})", genesis_block.header().state_root(), genesis_block.header().hash()); + info!("Initializing Genesis block/state (state: {}, header-hash: {})", genesis_block.header().state_root(), genesis_block.header().hash()); op.set_block_data( genesis_block.deconstruct().0, Some(vec![]), @@ -1351,7 +1351,7 @@ impl CallRuntimeAt for Client where function: &'static str, args: Vec, changes: &mut OverlayedChanges, - initialised_block: &mut Option>, + initialized_block: &mut Option>, native_call: Option, context: ExecutionContext, ) -> error::Result> { @@ -1373,7 +1373,7 @@ impl CallRuntimeAt for Client where function, &args, changes, - initialised_block, + initialized_block, || self.prepare_environment_block(at), manager, native_call, @@ -1630,7 +1630,7 @@ pub(crate) mod tests { } #[test] - fn client_initialises_from_genesis_ok() { + fn client_initializes_from_genesis_ok() { let client = test_client::new(); assert_eq!( diff --git a/core/client/src/genesis.rs b/core/client/src/genesis.rs index 7ebae4c558..eea0a251ca 100644 --- a/core/client/src/genesis.rs +++ b/core/client/src/genesis.rs @@ -93,7 +93,7 @@ mod tests { state_machine::NeverOffchainExt::new(), &mut overlay, &executor(), - "Core_initialise_block", + "Core_initialize_block", &header.encode(), ).execute( ExecutionStrategy::NativeElseWasm, @@ -119,7 +119,7 @@ mod tests { state_machine::NeverOffchainExt::new(), &mut overlay, &executor(), - "BlockBuilder_finalise_block", + "BlockBuilder_finalize_block", &[], ).execute( ExecutionStrategy::NativeElseWasm, diff --git a/core/client/src/light/call_executor.rs b/core/client/src/light/call_executor.rs index 00a3d8895b..b2e4c45a7d 100644 --- a/core/client/src/light/call_executor.rs +++ b/core/client/src/light/call_executor.rs @@ -118,14 +118,14 @@ where method: &str, call_data: &[u8], changes: &mut OverlayedChanges, - initialised_block: &mut Option>, + initialized_block: &mut Option>, _prepare_environment_block: PB, execution_manager: ExecutionManager, _native_call: Option, side_effects_handler: Option<&mut O>, ) -> ClientResult> where ExecutionManager: Clone { // it is only possible to execute contextual call if changes are empty - if !changes.is_empty() || initialised_block.is_some() { + if !changes.is_empty() || initialized_block.is_some() { return Err(ClientErrorKind::NotAvailableOnLightClient.into()); } @@ -245,7 +245,7 @@ impl CallExecutor for method: &str, call_data: &[u8], changes: &mut OverlayedChanges, - initialised_block: &mut Option>, + initialized_block: &mut Option>, prepare_environment_block: PB, _manager: ExecutionManager, native_call: Option, @@ -270,7 +270,7 @@ impl CallExecutor for method, call_data, changes, - initialised_block, + initialized_block, prepare_environment_block, ExecutionManager::NativeWhenPossible, native_call, @@ -291,7 +291,7 @@ impl CallExecutor for method, call_data, changes, - initialised_block, + initialized_block, prepare_environment_block, ExecutionManager::NativeWhenPossible, native_call, @@ -388,7 +388,7 @@ pub fn prove_execution( let (_, init_proof) = executor.prove_at_trie_state( &trie_state, &mut changes, - "Core_initialise_block", + "Core_initialize_block", &header.encode(), )?; @@ -435,7 +435,7 @@ pub fn check_execution_proof( &trie_backend, &mut changes, executor, - "Core_initialise_block", + "Core_initialize_block", &next_block.encode(), )?; @@ -516,12 +516,12 @@ mod tests { assert_eq!(remote, local); // check method that requires environment - let (_, block) = execute(&remote_client, 0, "BlockBuilder_finalise_block"); + let (_, block) = execute(&remote_client, 0, "BlockBuilder_finalize_block"); let local_block: Header = Decode::decode(&mut &block[..]).unwrap(); assert_eq!(local_block.number, 1); // check method that requires environment - let (_, block) = execute(&remote_client, 2, "BlockBuilder_finalise_block"); + let (_, block) = execute(&remote_client, 2, "BlockBuilder_finalize_block"); let local_block: Header = Decode::decode(&mut &block[..]).unwrap(); assert_eq!(local_block.number, 3); } diff --git a/core/client/src/runtime_api.rs b/core/client/src/runtime_api.rs index 77d733f64e..a912b8c576 100644 --- a/core/client/src/runtime_api.rs +++ b/core/client/src/runtime_api.rs @@ -102,7 +102,7 @@ pub trait CallRuntimeAt { function: &'static str, args: Vec, changes: &mut OverlayedChanges, - initialised_block: &mut Option>, + initialized_block: &mut Option>, native_call: Option, context: ExecutionContext, ) -> error::Result>; @@ -121,8 +121,8 @@ decl_runtime_apis! { fn authorities() -> Vec>; /// Execute the given block. fn execute_block(block: Block); - /// Initialise a block with the given header. - fn initialise_block(header: &::Header); + /// Initialize a block with the given header. + fn initialize_block(header: &::Header); } /// The `Metadata` api trait that returns metadata for the runtime. diff --git a/core/consensus/rhd/src/lib.rs b/core/consensus/rhd/src/lib.rs index e42083a40b..cbdf95d987 100644 --- a/core/consensus/rhd/src/lib.rs +++ b/core/consensus/rhd/src/lib.rs @@ -66,7 +66,7 @@ pub use rhododendron::{ }; pub use self::error::{Error, ErrorKind}; -// pub mod misbehaviour_check; +// pub mod misbehavior_check; mod error; mod service; diff --git a/core/finality-grandpa/primitives/src/lib.rs b/core/finality-grandpa/primitives/src/lib.rs index 92bd0e4584..7016a708bd 100644 --- a/core/finality-grandpa/primitives/src/lib.rs +++ b/core/finality-grandpa/primitives/src/lib.rs @@ -58,8 +58,8 @@ decl_runtime_apis! { /// This should be implemented on the runtime side. /// /// This is primarily used for negotiating authority-set changes for the - /// gadget. GRANDPA uses a signalling model of changing authority sets: - /// changes should be signalled with a delay of N blocks, and then automatically + /// gadget. GRANDPA uses a signaling model of changing authority sets: + /// changes should be signaled with a delay of N blocks, and then automatically /// applied in the runtime after those N blocks have passed. /// /// The consensus protocol will coordinate the handoff externally. @@ -83,7 +83,7 @@ decl_runtime_apis! { /// Check a digest for forced changes. /// Return `None` if there are no forced changes. Otherwise, return a /// tuple containing the pending change and the median last finalized - /// block number at the time the change was signalled. + /// block number at the time the change was signaled. /// /// Added in version 2. /// diff --git a/core/finality-grandpa/src/authorities.rs b/core/finality-grandpa/src/authorities.rs index 49917ae1c2..ffded9a1ab 100644 --- a/core/finality-grandpa/src/authorities.rs +++ b/core/finality-grandpa/src/authorities.rs @@ -136,7 +136,7 @@ where let hash = pending.canon_hash.clone(); let number = pending.canon_height.clone(); - debug!(target: "afg", "Inserting potential standard set change signalled at block {:?} \ + debug!(target: "afg", "Inserting potential standard set change signaled at block {:?} \ (delayed by {:?} blocks).", (&number, &hash), pending.delay); @@ -257,7 +257,7 @@ where .take_while(|c| c.effective_number() <= best_number) // to prevent iterating too far .filter(|c| c.effective_number() == best_number) { - // check if the given best block is in the same branch as the block that signalled the change. + // check if the given best block is in the same branch as the block that signaled the change. if is_descendent_of(&change.canon_hash, &best_hash)? { // apply this change: make the set canonical info!(target: "finality", "Applying authority set change forced at block #{:?}", @@ -381,7 +381,7 @@ pub(crate) enum DelayKind { /// Depth in finalized chain. Finalized, /// Depth in best chain. The median last finalized block is calculated at the time the - /// change was signalled. + /// change was signaled. Best { median_last_finalized: N }, } @@ -550,7 +550,7 @@ mod tests { vec![&change_b, &change_a], ); - // finalizing "hash_c" won't enact the change signalled at "hash_a" but it will prune out "hash_b" + // finalizing "hash_c" won't enact the change signaled at "hash_a" but it will prune out "hash_b" let status = authorities.apply_standard_changes("hash_c", 11, &is_descendent_of(|base, hash| match (*base, *hash) { ("hash_a", "hash_c") => true, ("hash_b", "hash_c") => false, @@ -564,7 +564,7 @@ mod tests { vec![&change_a], ); - // finalizing "hash_d" will enact the change signalled at "hash_a" + // finalizing "hash_d" will enact the change signaled at "hash_a" let status = authorities.apply_standard_changes("hash_d", 15, &is_descendent_of(|base, hash| match (*base, *hash) { ("hash_a", "hash_d") => true, _ => unreachable!(), diff --git a/core/finality-grandpa/src/environment.rs b/core/finality-grandpa/src/environment.rs index 685337a311..587762b608 100644 --- a/core/finality-grandpa/src/environment.rs +++ b/core/finality-grandpa/src/environment.rs @@ -125,7 +125,7 @@ impl, B, E, N, RA> grandpa::Chain Option<(Block::Hash, NumberFor)> { // NOTE: when we finalize an authority set change through the sync protocol the voter is - // signalled asynchronously. therefore the voter could still vote in the next round + // signaled asynchronously. therefore the voter could still vote in the next round // before activating the new set. the `authority_set` is updated immediately thus we // restrict the voter based on that. if self.set_id != self.authority_set.inner().read().current().0 { diff --git a/core/finality-grandpa/src/import.rs b/core/finality-grandpa/src/import.rs index 0c59bd60fe..9afbe443f9 100644 --- a/core/finality-grandpa/src/import.rs +++ b/core/finality-grandpa/src/import.rs @@ -570,7 +570,7 @@ impl, RA, PRA> GrandpaBlockImport { info!(target: "finality", "Imported justification for block #{} that triggers \ - command {}, signalling voter.", number, command); + command {}, signaling voter.", number, command); if let Err(e) = self.send_voter_commands.unbounded_send(command) { return Err(ConsensusErrorKind::ClientImport(e.to_string()).into()); diff --git a/core/finality-grandpa/src/tests.rs b/core/finality-grandpa/src/tests.rs index 7e0537ed7b..582439419e 100644 --- a/core/finality-grandpa/src/tests.rs +++ b/core/finality-grandpa/src/tests.rs @@ -297,7 +297,7 @@ impl Core for RuntimeApi { unimplemented!("Not required for testing!") } - fn initialise_block_runtime_api_impl( + fn initialize_block_runtime_api_impl( &self, _: &BlockId, _: ExecutionContext, diff --git a/core/network/src/message.rs b/core/network/src/message.rs index 221a867c67..d0f697b8ab 100644 --- a/core/network/src/message.rs +++ b/core/network/src/message.rs @@ -66,7 +66,7 @@ pub type BlockResponse = generic::BlockResponse< /// A set of transactions. pub type Transactions = Vec; -/// Bits of block data and associated artefacts to request. +/// Bits of block data and associated artifacts to request. bitflags! { /// Node roles bitmask. pub struct BlockAttributes: u8 { diff --git a/core/primitives/src/lib.rs b/core/primitives/src/lib.rs index 38ecec0fa4..f078b5446f 100644 --- a/core/primitives/src/lib.rs +++ b/core/primitives/src/lib.rs @@ -21,7 +21,7 @@ #![cfg_attr(not(feature = "std"), no_std)] #![cfg_attr(not(feature = "std"), feature(alloc))] -/// Initalise a key-value collection from array. +/// Initialize a key-value collection from array. /// /// Creates a vector of given pairs and calls `collect` on the iterator from it. /// Can be used to create a `HashMap`. @@ -105,7 +105,7 @@ impl OffchainExt for Box { } } -/// Hex-serialised shim for `Vec`. +/// Hex-serialized shim for `Vec`. #[derive(PartialEq, Eq, Clone)] #[cfg_attr(feature = "std", derive(Serialize, Deserialize, Debug, Hash, PartialOrd, Ord))] pub struct Bytes(#[cfg_attr(feature = "std", serde(with="bytes"))] pub Vec); diff --git a/core/rpc/src/chain/mod.rs b/core/rpc/src/chain/mod.rs index 9b7f5a909e..de7ad3faad 100644 --- a/core/rpc/src/chain/mod.rs +++ b/core/rpc/src/chain/mod.rs @@ -57,9 +57,9 @@ pub trait ChainApi { #[rpc(name = "chain_getBlockHash", alias("chain_getHead"))] fn block_hash(&self, hash: Option>) -> Result>; - /// Get hash of the last finalised block in the canon chain. - #[rpc(name = "chain_getFinalisedHead")] - fn finalised_head(&self) -> Result; + /// Get hash of the last finalized block in the canon chain. + #[rpc(name = "chain_getFinalizedHead", alias("chain_getFinalisedHead"))] + fn finalized_head(&self) -> Result; /// New head subscription #[pubsub( @@ -81,19 +81,21 @@ pub trait ChainApi { /// New head subscription #[pubsub( - subscription = "chain_finalisedHead", + subscription = "chain_finalizedHead", subscribe, - name = "chain_subscribeFinalisedHeads" + name = "chain_subscribeFinalizedHeads", + alias("chain_subscribeFinalisedHeads") )] - fn subscribe_finalised_heads(&self, metadata: Self::Metadata, subscriber: Subscriber

    ); + fn subscribe_finalized_heads(&self, metadata: Self::Metadata, subscriber: Subscriber
    ); /// Unsubscribe from new head subscription. #[pubsub( - subscription = "chain_finalisedHead", + subscription = "chain_finalizedHead", unsubscribe, - name = "chain_unsubscribeFinalisedHeads" + name = "chain_unsubscribeFinalizedHeads", + alias("chain_unsubscribeFinalisedHeads") )] - fn unsubscribe_finalised_heads(&self, metadata: Option, id: SubscriptionId) -> RpcResult; + fn unsubscribe_finalized_heads(&self, metadata: Option, id: SubscriptionId) -> RpcResult; } /// Chain API with subscriptions support. @@ -192,7 +194,7 @@ impl ChainApi, Block::Hash, Block::Header, Sig }) } - fn finalised_head(&self) -> Result { + fn finalized_head(&self) -> Result { Ok(self.client.info()?.chain.finalized_hash) } @@ -210,7 +212,7 @@ impl ChainApi, Block::Hash, Block::Header, Sig Ok(self.subscriptions.cancel(id)) } - fn subscribe_finalised_heads(&self, _meta: Self::Metadata, subscriber: Subscriber) { + fn subscribe_finalized_heads(&self, _meta: Self::Metadata, subscriber: Subscriber) { self.subscribe_headers( subscriber, || Ok(Some(self.client.info()?.chain.finalized_hash)), @@ -219,7 +221,7 @@ impl ChainApi, Block::Hash, Block::Header, Sig ) } - fn unsubscribe_finalised_heads(&self, _metadata: Option, id: SubscriptionId) -> RpcResult { + fn unsubscribe_finalized_heads(&self, _metadata: Option, id: SubscriptionId) -> RpcResult { Ok(self.subscriptions.cancel(id)) } } diff --git a/core/rpc/src/chain/tests.rs b/core/rpc/src/chain/tests.rs index bad3c5aeb8..26b7202305 100644 --- a/core/rpc/src/chain/tests.rs +++ b/core/rpc/src/chain/tests.rs @@ -157,7 +157,7 @@ fn should_return_block_hash() { #[test] -fn should_return_finalised_hash() { +fn should_return_finalized_hash() { let core = ::tokio::runtime::Runtime::new().unwrap(); let remote = core.executor(); @@ -167,23 +167,23 @@ fn should_return_finalised_hash() { }; assert_matches!( - client.finalised_head(), + client.finalized_head(), Ok(ref x) if x == &client.client.genesis_hash() ); // import new block let builder = client.client.new_block().unwrap(); client.client.import(BlockOrigin::Own, builder.bake().unwrap()).unwrap(); - // no finalisation yet + // no finalization yet assert_matches!( - client.finalised_head(), + client.finalized_head(), Ok(ref x) if x == &client.client.genesis_hash() ); - // finalise + // finalize client.client.finalize_block(BlockId::number(1), None, true).unwrap(); assert_matches!( - client.finalised_head(), + client.finalized_head(), Ok(ref x) if x == &client.client.block_hash(1).unwrap().unwrap() ); } @@ -220,7 +220,7 @@ fn should_notify_about_latest_block() { } #[test] -fn should_notify_about_finalised_block() { +fn should_notify_about_finalized_block() { let mut core = ::tokio::runtime::Runtime::new().unwrap(); let remote = core.executor(); let (subscriber, id, transport) = Subscriber::new_test("test"); @@ -231,7 +231,7 @@ fn should_notify_about_finalised_block() { subscriptions: Subscriptions::new(remote), }; - api.subscribe_finalised_heads(Default::default(), subscriber); + api.subscribe_finalized_heads(Default::default(), subscriber); // assert id assigned assert_eq!(core.block_on(id), Ok(Ok(SubscriptionId::Number(1)))); diff --git a/core/service/src/components.rs b/core/service/src/components.rs index e89921742b..eb37a69a14 100644 --- a/core/service/src/components.rs +++ b/core/service/src/components.rs @@ -356,7 +356,7 @@ pub trait ServiceFactory: 'static + Sized { } } -/// A collection of types and function to generalise over full / light client type. +/// A collection of types and function to generalize over full / light client type. pub trait Components: Sized + 'static { /// Associated service factory. type Factory: ServiceFactory; diff --git a/core/sr-api-macros/src/impl_runtime_apis.rs b/core/sr-api-macros/src/impl_runtime_apis.rs index 8bdf977303..b5dd3f21c5 100644 --- a/core/sr-api-macros/src/impl_runtime_apis.rs +++ b/core/sr-api-macros/src/impl_runtime_apis.rs @@ -271,7 +271,7 @@ fn generate_runtime_api_base_structures(impls: &[ItemImpl]) -> Result + 'static> { call: &'static C, commit_on_success: ::std::cell::RefCell, - initialised_block: ::std::cell::RefCell>, + initialized_block: ::std::cell::RefCell>, changes: ::std::cell::RefCell<#crate_::runtime_api::OverlayedChanges>, } @@ -320,7 +320,7 @@ fn generate_runtime_api_base_structures(impls: &[ItemImpl]) -> Result Result::Header) { + fn initialize_block(_: &::Header) { unimplemented!() } } diff --git a/core/sr-io/build.rs b/core/sr-io/build.rs index 62ddacbbf4..5b5d06b65a 100644 --- a/core/sr-io/build.rs +++ b/core/sr-io/build.rs @@ -3,7 +3,7 @@ use rustc_version::{version, version_meta, Channel}; fn main() { - // Assert we haven't travelled back in time + // Assert we haven't traveled back in time assert!(version().unwrap().major >= 1); // Set cfg flags depending on release channel diff --git a/core/sr-io/without_std.rs b/core/sr-io/without_std.rs index a4d62df30b..e4e32bd17d 100644 --- a/core/sr-io/without_std.rs +++ b/core/sr-io/without_std.rs @@ -297,7 +297,7 @@ pub trait ExternTrieCrypto { fn enumerated_trie_root(values: &[&[u8]]) -> [u8; 32]; } -// Ensures we use a Blake2_256-flavoured Hasher when calling into native +// Ensures we use a Blake2_256-flavored Hasher when calling into native impl ExternTrieCrypto for Blake2Hasher { fn enumerated_trie_root(values: &[&[u8]]) -> [u8; 32] { let lengths = values.iter().map(|v| (v.len() as u32).to_le()).collect::>(); diff --git a/core/sr-primitives/src/generic/era.rs b/core/sr-primitives/src/generic/era.rs index 037013b4fe..e5a7b24f0c 100644 --- a/core/sr-primitives/src/generic/era.rs +++ b/core/sr-primitives/src/generic/era.rs @@ -166,7 +166,7 @@ mod tests { } #[test] - fn era_initialisation_works() { + fn era_initialization_works() { assert_eq!(Era::mortal(64, 42), Era::Mortal(64, 42)); assert_eq!(Era::mortal(32768, 20000), Era::Mortal(32768, 20000)); assert_eq!(Era::mortal(200, 513), Era::Mortal(256, 1)); @@ -175,8 +175,8 @@ mod tests { } #[test] - fn quantised_clamped_era_initialisation_works() { - // clamp 1000000 to 65536, quantise 1000001 % 65536 to the nearest 4 + fn quantized_clamped_era_initialization_works() { + // clamp 1000000 to 65536, quantize 1000001 % 65536 to the nearest 4 assert_eq!(Era::mortal(1000000, 1000001), Era::Mortal(65536, 1000001 % 65536 / 4 * 4)); } diff --git a/core/sr-primitives/src/traits.rs b/core/sr-primitives/src/traits.rs index ef3f133df6..0454b74f6f 100644 --- a/core/sr-primitives/src/traits.rs +++ b/core/sr-primitives/src/traits.rs @@ -252,23 +252,23 @@ impl > SimpleBitOps for T {} -/// The block finalisation trait. Implementing this lets you express what should happen +/// The block finalization trait. Implementing this lets you express what should happen /// for your module when the block is ending. -pub trait OnFinalise { - /// The block is being finalised. Implement to have something happen. - fn on_finalise(_n: BlockNumber) {} +pub trait OnFinalize { + /// The block is being finalized. Implement to have something happen. + fn on_finalize(_n: BlockNumber) {} } -impl OnFinalise for () {} +impl OnFinalize for () {} -/// The block initialisation trait. Implementing this lets you express what should happen +/// The block initialization trait. Implementing this lets you express what should happen /// for your module when the block is beginning (right before the first extrinsic is executed). -pub trait OnInitialise { - /// The block is being initialised. Implement to have something happen. - fn on_initialise(_n: BlockNumber) {} +pub trait OnInitialize { + /// The block is being initialized. Implement to have something happen. + fn on_initialize(_n: BlockNumber) {} } -impl OnInitialise for () {} +impl OnInitialize for () {} /// Off-chain computation trait. /// @@ -290,14 +290,14 @@ impl OffchainWorker for () {} macro_rules! tuple_impl { ($one:ident,) => { - impl> OnFinalise for ($one,) { - fn on_finalise(n: Number) { - $one::on_finalise(n); + impl> OnFinalize for ($one,) { + fn on_finalize(n: Number) { + $one::on_finalize(n); } } - impl> OnInitialise for ($one,) { - fn on_initialise(n: Number) { - $one::on_initialise(n); + impl> OnInitialize for ($one,) { + fn on_initialize(n: Number) { + $one::on_initialize(n); } } impl> OffchainWorker for ($one,) { @@ -309,22 +309,22 @@ macro_rules! tuple_impl { ($first:ident, $($rest:ident,)+) => { impl< Number: Copy, - $first: OnFinalise, - $($rest: OnFinalise),+ - > OnFinalise for ($first, $($rest),+) { - fn on_finalise(n: Number) { - $first::on_finalise(n); - $($rest::on_finalise(n);)+ + $first: OnFinalize, + $($rest: OnFinalize),+ + > OnFinalize for ($first, $($rest),+) { + fn on_finalize(n: Number) { + $first::on_finalize(n); + $($rest::on_finalize(n);)+ } } impl< Number: Copy, - $first: OnInitialise, - $($rest: OnInitialise),+ - > OnInitialise for ($first, $($rest),+) { - fn on_initialise(n: Number) { - $first::on_initialise(n); - $($rest::on_initialise(n);)+ + $first: OnInitialize, + $($rest: OnInitialize),+ + > OnInitialize for ($first, $($rest),+) { + fn on_initialize(n: Number) { + $first::on_initialize(n); + $($rest::on_initialize(n);)+ } } impl< diff --git a/core/sr-sandbox/build.rs b/core/sr-sandbox/build.rs index 62ddacbbf4..5b5d06b65a 100755 --- a/core/sr-sandbox/build.rs +++ b/core/sr-sandbox/build.rs @@ -3,7 +3,7 @@ use rustc_version::{version, version_meta, Channel}; fn main() { - // Assert we haven't travelled back in time + // Assert we haven't traveled back in time assert!(version().unwrap().major >= 1); // Set cfg flags depending on release channel diff --git a/core/sr-std/build.rs b/core/sr-std/build.rs index 3cac768316..af9c91db87 100644 --- a/core/sr-std/build.rs +++ b/core/sr-std/build.rs @@ -3,7 +3,7 @@ use rustc_version::{version, version_meta, Channel}; fn main() { - // Assert we haven't travelled back in time + // Assert we haven't traveled back in time assert!(version().unwrap().major >= 1); // Set cfg flags depending on release channel diff --git a/core/sr-version/src/lib.rs b/core/sr-version/src/lib.rs index 71a4c5149d..3d1dfb4313 100644 --- a/core/sr-version/src/lib.rs +++ b/core/sr-version/src/lib.rs @@ -91,7 +91,7 @@ pub struct RuntimeVersion { /// serves only as an indication that the code is different; as long as the other two versions /// are the same then while the actual code may be different, it is nonetheless required to /// do the same thing. - /// Non-consensus-breaking optimisations are about the only changes that could be made which + /// Non-consensus-breaking optimizations are about the only changes that could be made which /// would result in only the `impl_version` changing. pub impl_version: u32, diff --git a/core/telemetry/src/lib.rs b/core/telemetry/src/lib.rs index 21289459c6..fba75c196a 100644 --- a/core/telemetry/src/lib.rs +++ b/core/telemetry/src/lib.rs @@ -93,7 +93,7 @@ impl Drain for Multiply { } } -/// Initialise telemetry. +/// Initialize telemetry. pub fn init_telemetry(config: TelemetryConfig) -> slog_scope::GlobalLoggerGuard { let mut endpoint_drains: Vec>> = Vec::new(); let mut out_syncs = Vec::new(); diff --git a/core/test-runtime/src/lib.rs b/core/test-runtime/src/lib.rs index 74ec56240c..744bdd7fea 100644 --- a/core/test-runtime/src/lib.rs +++ b/core/test-runtime/src/lib.rs @@ -167,9 +167,9 @@ pub fn run_tests(mut input: &[u8]) -> Vec { print("run_tests..."); let block = Block::decode(&mut input).unwrap(); - print("deserialised block."); + print("deserialized block."); let stxs = block.extrinsics.iter().map(Encode::encode).collect::>(); - print("reserialised transactions."); + print("reserialized transactions."); [stxs.len() as u8].encode() } @@ -297,8 +297,8 @@ cfg_if! { system::execute_block(block) } - fn initialise_block(header: &::Header) { - system::initialise_block(header) + fn initialize_block(header: &::Header) { + system::initialize_block(header) } } @@ -319,8 +319,8 @@ cfg_if! { system::execute_transaction(extrinsic) } - fn finalise_block() -> ::Header { - system::finalise_block() + fn finalize_block() -> ::Header { + system::finalize_block() } fn inherent_extrinsics(_data: InherentData) -> Vec<::Extrinsic> { @@ -402,8 +402,8 @@ cfg_if! { system::execute_block(block) } - fn initialise_block(header: &::Header) { - system::initialise_block(header) + fn initialize_block(header: &::Header) { + system::initialize_block(header) } } @@ -424,8 +424,8 @@ cfg_if! { system::execute_transaction(extrinsic) } - fn finalise_block() -> ::Header { - system::finalise_block() + fn finalize_block() -> ::Header { + system::finalize_block() } fn inherent_extrinsics(_data: InherentData) -> Vec<::Extrinsic> { diff --git a/core/test-runtime/src/system.rs b/core/test-runtime/src/system.rs index ffc01182d4..a119c8b62d 100644 --- a/core/test-runtime/src/system.rs +++ b/core/test-runtime/src/system.rs @@ -63,7 +63,7 @@ pub fn authorities() -> Vec { .collect() } -pub fn initialise_block(header: &Header) { +pub fn initialize_block(header: &Header) { // populate environment. ::put(&header.number); ::put(&header.parent_hash); @@ -201,8 +201,8 @@ pub fn execute_transaction(utx: Extrinsic) -> ApplyResult { result } -/// Finalise the block. -pub fn finalise_block() -> Header { +/// Finalize the block. +pub fn finalize_block() -> Header { let extrinsic_index: u32 = storage::unhashed::take(well_known_keys::EXTRINSIC_INDEX).unwrap(); let txs: Vec<_> = (0..extrinsic_index).map(ExtrinsicData::take).collect(); let txs = txs.iter().map(Vec::as_slice).collect::>(); diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index afdd492c6aafcd694ecd49e3ef81a312154b0896..cd36b9f405d7837e1be1ea913e77611695158e4c 100644 GIT binary patch delta 5027 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 z z=HBzSkR5e>tFu|FfU{e>5qFbvH5tAxA{Rb6B}JRpoSZntMk=Pfz;s?2YV7 zL)2}Nv(Und%}atlVd3vty*eGmo46qq>yBpu=MtiO2j&@ gw!L}T@>uIr!Ae2mWJNTTP>|Feb}9K|-vs9vDbt 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 diff --git a/core/transaction-pool/graph/src/listener.rs b/core/transaction-pool/graph/src/listener.rs index ac59b4c57e..335ff8a053 100644 --- a/core/transaction-pool/graph/src/listener.rs +++ b/core/transaction-pool/graph/src/listener.rs @@ -93,6 +93,6 @@ impl Listener { /// Transaction was pruned from the pool. pub fn pruned(&mut self, header_hash: H2, tx: &H) { - self.fire(tx, |watcher| watcher.finalised(header_hash)) + self.fire(tx, |watcher| watcher.finalized(header_hash)) } } diff --git a/core/transaction-pool/graph/src/pool.rs b/core/transaction-pool/graph/src/pool.rs index 9c3478d3d7..91ded26630 100644 --- a/core/transaction-pool/graph/src/pool.rs +++ b/core/transaction-pool/graph/src/pool.rs @@ -728,7 +728,7 @@ mod tests { use super::*; #[test] - fn should_trigger_ready_and_finalised() { + fn should_trigger_ready_and_finalized() { // given let pool = pool(); let watcher = pool.submit_and_watch(&BlockId::Number(0), uxt(Transfer { @@ -748,12 +748,12 @@ mod tests { // then let mut stream = watcher.into_stream().wait(); assert_eq!(stream.next(), Some(Ok(watcher::Status::Ready))); - assert_eq!(stream.next(), Some(Ok(watcher::Status::Finalised(H256::from_low_u64_be(2).into())))); + assert_eq!(stream.next(), Some(Ok(watcher::Status::Finalized(H256::from_low_u64_be(2).into())))); assert_eq!(stream.next(), None); } #[test] - fn should_trigger_ready_and_finalised_when_pruning_via_hash() { + fn should_trigger_ready_and_finalized_when_pruning_via_hash() { // given let pool = pool(); let watcher = pool.submit_and_watch(&BlockId::Number(0), uxt(Transfer { @@ -773,7 +773,7 @@ mod tests { // then let mut stream = watcher.into_stream().wait(); assert_eq!(stream.next(), Some(Ok(watcher::Status::Ready))); - assert_eq!(stream.next(), Some(Ok(watcher::Status::Finalised(H256::from_low_u64_be(2).into())))); + assert_eq!(stream.next(), Some(Ok(watcher::Status::Finalized(H256::from_low_u64_be(2).into())))); assert_eq!(stream.next(), None); } diff --git a/core/transaction-pool/graph/src/watcher.rs b/core/transaction-pool/graph/src/watcher.rs index 419a98ca79..5516d8c43c 100644 --- a/core/transaction-pool/graph/src/watcher.rs +++ b/core/transaction-pool/graph/src/watcher.rs @@ -30,8 +30,8 @@ pub enum Status { Future, /// Extrinsic is part of the ready queue. Ready, - /// Extrinsic has been finalised in block with given hash. - Finalised(H2), + /// Extrinsic has been finalized in block with given hash. + Finalized(H2), /// Some state change (perhaps another extrinsic was included) rendered this extrinsic invalid. Usurped(H), /// The extrinsic has been broadcast to the given peers. @@ -70,14 +70,14 @@ impl Watcher { #[derive(Debug)] pub struct Sender { receivers: Vec>>, - finalised: bool, + finalized: bool, } impl Default for Sender { fn default() -> Self { Sender { receivers: Default::default(), - finalised: false, + finalized: false, } } } @@ -108,17 +108,17 @@ impl Sender { self.send(Status::Usurped(hash)) } - /// Extrinsic has been finalised in block with given hash. - pub fn finalised(&mut self, hash: H2) { - self.send(Status::Finalised(hash)); - self.finalised = true; + /// Extrinsic has been finalized in block with given hash. + pub fn finalized(&mut self, hash: H2) { + self.send(Status::Finalized(hash)); + self.finalized = true; } /// Extrinsic has been marked as invalid by the block builder. pub fn invalid(&mut self) { self.send(Status::Invalid); - // we mark as finalised as there are no more notifications - self.finalised = true; + // we mark as finalized as there are no more notifications + self.finalized = true; } /// Transaction has been dropped from the pool because of the limit. @@ -132,9 +132,9 @@ impl Sender { } - /// Returns true if the are no more listeners for this extrinsic or it was finalised. + /// Returns true if the are no more listeners for this extrinsic or it was finalized. pub fn is_done(&self) -> bool { - self.finalised || self.receivers.is_empty() + self.finalized || self.receivers.is_empty() } fn send(&mut self, status: Status) { diff --git a/core/trie/src/trie_stream.rs b/core/trie/src/trie_stream.rs index e97516103d..e283a512bb 100644 --- a/core/trie/src/trie_stream.rs +++ b/core/trie/src/trie_stream.rs @@ -24,7 +24,7 @@ use codec::Encode; use super::{EMPTY_TRIE, LEAF_NODE_OFFSET, LEAF_NODE_BIG, EXTENSION_NODE_OFFSET, EXTENSION_NODE_BIG, branch_node}; -/// Codec-flavoured TrieStream +/// Codec-flavored TrieStream pub struct TrieStream { buffer: Vec, } diff --git a/node-template/init.sh b/node-template/init.sh index 5dde6d4241..cf5ecf9792 100755 --- a/node-template/init.sh +++ b/node-template/init.sh @@ -2,7 +2,7 @@ set -e -echo "*** Initialising WASM build environment" +echo "*** Initializing WASM build environment" if [ -z $CI_PROJECT_NAME ] ; then rustup update nightly diff --git a/node-template/runtime/src/lib.rs b/node-template/runtime/src/lib.rs index a82f8ce585..c5c3b0d01d 100644 --- a/node-template/runtime/src/lib.rs +++ b/node-template/runtime/src/lib.rs @@ -242,8 +242,8 @@ impl_runtime_apis! { Executive::execute_block(block) } - fn initialise_block(header: &::Header) { - Executive::initialise_block(header) + fn initialize_block(header: &::Header) { + Executive::initialize_block(header) } } @@ -258,8 +258,8 @@ impl_runtime_apis! { Executive::apply_extrinsic(extrinsic) } - fn finalise_block() -> ::Header { - Executive::finalise_block() + fn finalize_block() -> ::Header { + Executive::finalize_block() } fn inherent_extrinsics(data: InherentData) -> Vec<::Extrinsic> { diff --git a/node-template/src/chain_spec.rs b/node-template/src/chain_spec.rs index ca314ba001..3cb8d21d5d 100644 --- a/node-template/src/chain_spec.rs +++ b/node-template/src/chain_spec.rs @@ -10,7 +10,7 @@ use ed25519::Public as AuthorityId; // Note this is the URL for the telemetry server //const STAGING_TELEMETRY_URL: &str = "wss://telemetry.polkadot.io/submit/"; -/// Specialised `ChainSpec`. This is a specialisation of the general Substrate ChainSpec type. +/// Specialized `ChainSpec`. This is a specialization of the general Substrate ChainSpec type. pub type ChainSpec = substrate_service::ChainSpec; /// The chain specification option. This is expected to come in from the CLI and diff --git a/node/cli/src/chain_spec.rs b/node/cli/src/chain_spec.rs index 818a194f99..a45b25249f 100644 --- a/node/cli/src/chain_spec.rs +++ b/node/cli/src/chain_spec.rs @@ -28,7 +28,7 @@ use substrate_telemetry::TelemetryEndpoints; const STAGING_TELEMETRY_URL: &str = "wss://telemetry.polkadot.io/submit/"; -/// Specialised `ChainSpec`. +/// Specialized `ChainSpec`. pub type ChainSpec = substrate_service::ChainSpec; /// Dried Danta testnet generator diff --git a/node/executor/src/lib.rs b/node/executor/src/lib.rs index 22bf1a9b79..c855a4e6f0 100644 --- a/node/executor/src/lib.rs +++ b/node/executor/src/lib.rs @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with Substrate. If not, see . -//! A `CodeExecutor` specialisation which uses natively compiled runtime when the wasm to be +//! A `CodeExecutor` specialization which uses natively compiled runtime when the wasm to be //! executed is equivalent to the natively compiled code. #![cfg_attr(feature = "benchmarks", feature(test))] @@ -132,7 +132,7 @@ mod tests { let r = executor().call::<_, NeverNativeValue, fn() -> _>( &mut t, - "Core_initialise_block", + "Core_initialize_block", &vec![].and(&from_block_number(1u64)), true, None, @@ -165,7 +165,7 @@ mod tests { let r = executor().call::<_, NeverNativeValue, fn() -> _>( &mut t, - "Core_initialise_block", + "Core_initialize_block", &vec![].and(&from_block_number(1u64)), true, None, @@ -198,7 +198,7 @@ mod tests { let r = executor().call::<_, NeverNativeValue, fn() -> _>( &mut t, - "Core_initialise_block", + "Core_initialize_block", &vec![].and(&from_block_number(1u64)), true, None, @@ -235,7 +235,7 @@ mod tests { let r = executor().call::<_, NeverNativeValue, fn() -> _>( &mut t, - "Core_initialise_block", + "Core_initialize_block", &vec![].and(&from_block_number(1u64)), true, None, @@ -353,7 +353,7 @@ mod tests { // execute the block to get the real header. Executor::new(None).call::<_, NeverNativeValue, fn() -> _>( env, - "Core_initialise_block", + "Core_initialize_block", &header.encode(), true, None, @@ -371,7 +371,7 @@ mod tests { let header = match Executor::new(None).call::<_, NeverNativeValue, fn() -> _>( env, - "BlockBuilder_finalise_block", + "BlockBuilder_finalize_block", &[0u8;0], true, None, @@ -807,7 +807,7 @@ mod tests { twox_128(>::key()).to_vec() => vec![0u8; 16] ]); - let r = WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "Core_initialise_block", &vec![].and(&from_block_number(1u64))); + let r = WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "Core_initialize_block", &vec![].and(&from_block_number(1u64))); assert!(r.is_ok()); let r = WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "BlockBuilder_apply_extrinsic", &vec![].and(&xt())).unwrap(); let r = ApplyResult::decode(&mut &r[..]).unwrap(); @@ -829,7 +829,7 @@ mod tests { twox_128(>::key()).to_vec() => vec![0u8; 16] ]); - let r = WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "Core_initialise_block", &vec![].and(&from_block_number(1u64))); + let r = WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "Core_initialize_block", &vec![].and(&from_block_number(1u64))); assert!(r.is_ok()); let r = WasmExecutor::new().call(&mut t, 8, COMPACT_CODE, "BlockBuilder_apply_extrinsic", &vec![].and(&xt())).unwrap(); let r = ApplyResult::decode(&mut &r[..]).unwrap(); diff --git a/node/runtime/src/lib.rs b/node/runtime/src/lib.rs index ad31c08296..cb128aa184 100644 --- a/node/runtime/src/lib.rs +++ b/node/runtime/src/lib.rs @@ -58,7 +58,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("node"), impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, - spec_version: 49, + spec_version: 50, impl_version: 50, apis: RUNTIME_API_VERSIONS, }; @@ -250,8 +250,8 @@ impl_runtime_apis! { Executive::execute_block(block) } - fn initialise_block(header: &::Header) { - Executive::initialise_block(header) + fn initialize_block(header: &::Header) { + Executive::initialize_block(header) } } @@ -266,8 +266,8 @@ impl_runtime_apis! { Executive::apply_extrinsic(extrinsic) } - fn finalise_block() -> ::Header { - Executive::finalise_block() + fn finalize_block() -> ::Header { + Executive::finalize_block() } fn inherent_extrinsics(data: InherentData) -> Vec<::Extrinsic> { diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index fef986a4f7864f2825830a7786dd5bcd60add8d8..8aa08585ecbfcc6ddf086e155c3ca3db0537dd0a 100644 GIT binary patch delta 248226 zcmd442b@$z);8W%)oG@?XPPji8K7}a`}h%K#+`Zg_z~xgKW)!Y zwDufz?%)U23ME7&R1z%>i*z)qqWBjP_=A{eBog5}|A|PnQA9KrA}XWNCL$71(WU|= znG}tdm6{&=rJ81&@df`vGTOXFq-86XiQISFp2fyL0h_qquJlN6F3P6;} zWRSBo#eYiSg-|jQzx)?Pa=m}~8W3U=B}_(`{{WQ|?d)3+g~*bKjGhn;p+osdn;pgd ze=KYNRYcn(q@pFLnUQ!Zp^%RV#UoMziiAp4B&1aHVx?3F|5~@Moe^nUJmZ1&p+q+1 z&Um19P2}ifuaxNn&KY;=h>_=wKjWNnXO2Jf)N?~u$;LMB)W4s4@_FM=9dXj=b50%= zx>}am*fY;Yu92h9{6~;rWTPRcjvsl-$nhgboaF~XGtBCCC2eHr=GyC`WyQI?b87F5 zwi9#B@b*l+#r&gvNh=w;wYDVIP25(yZ>+tTZ$4~a(oTkMH;E1<85vq&x^*bgGPJPv z=~#>GB3U$1ijXT3*NToy)zA?mPdfROQ%^hnj5BLSjXvw_bHTBUye~c!t5s@^TC3Kn^{V)hWj$Bi zQ#5Bq=Lc0H5z-+ov`jyw5;26+52!>*$en%X+K`(`*Ma(pV!Yn5eB+v#F?sKT<)>{J z8Rc`sGaUq;)3%7pm2p|FgG~>!!37SCE+i*f2AGH?g~1@wAz{n;6-8A=oaVgwnL6$9jKFHSC5WKQoU_LD!| zUALf{xcL6Mu^)FmHE}P0X90iY9Hk zYl%Kory_iYGs4Xtnu=>tof2B4tLoC9iI}KZXI6*YUg;iyyqPP~ZSm~mJpp^K&&5_D zR+^G8#h$SVkiC6mx>kJO#GLr0h$XK;MEdYhA`(h#bJmyQR5mY0N1N1r_@%f(3@fNw z`&FYYuMIz<2?o3y?jyr^T)KHJ>JKGsT-=LWdfn=LTq7^;v**_u@qF>_byMDlm=PO_LeJu_aBUN=ufqv~tKPRkJx=jXME`o^R%SP2I876&`OwTCdB!<^?O(zv{ zq8g>ccn$Bkbi^F?t+=7j6Cqn7F8j;=ECm_nR@zcUL7T;BlP_#jBwXQ$glY4gXwfNB zqh)uI><40^_cc1aw++Q>bOZ=MToM^NsdQgc{hjERjN#2Ksp%RD?Hw{VekTSs76}c` zV~&tu6^Nf)QPjeOzZad%e&36Iq9IqJQZuzhQ8P31d(otubgOFGgO%MW@2w4`JCij- z3Gk97$F|RTX5;tbPPuWN`Nt1plKgX;5kHDON#1@xif*E7UCoc8myl+&rnaruMTWM&n~D*4}uCid?Gd`o{AE%Jtu)CP&Xh2NYV7XQrTK;tb3$XP84`` z8_ARLnBPdAgxGjv`LQ_iz4;tagnxkOD`!iz@tKX9fgoO{L~8oTg^UIu?n2THqs=WC zR+Vnpj@Vq3+2;eXyE(h5JOHiS(^Ot3ww&8?A4d$ z#A{vC3VASl<#p1all|)+ZY|yVJ^ibBu&qoW8@k)R?vu81gLK|_balwm9AcJ2GUR3l z+OY#nTp`>y9yQNr;xd%D!ZV_!_&TJ=}iSA}XJ2^6$>nx?~=j~(@AvPG% zL7st@YC6dM@VKLctioe!2e}&1&gv)~(L7%aBlQZE7r)uE zx;d5dBy_h09d+^@XU7i(?&XTGsD=7g?t zH~IDib9q;}7t5`2i<+2@-DRnHk1?Akn6}+ykNPR&yUF(Qvir=;ZnB@;Fp)Vb&7a+5 zBA2agcX_z8iEL5{@h~8yqXR-|`yQ_u5DMPS)b6s6oOhqu&|UTrS@TA#0`%x_h)8QZm#*sTXB(beqNLw+Ua&N5X!0U*jE^|rvMVDay@09Lr<)UddHoAAm76uaq$|IkZo<7~ufpQx=Jejc$s}WL=?&x;R9tR; z?=AP0HyYN~slcIzHfB&?*~|2wB%|h{zH-QE8O&KB9qt-xk6AYvP3SPx1*fqNSIP>fi5qd6y3#3g zKT}RKS3AY-iB5CO6D^X`&)Le$S&p0)Zq{jy+-;bDEvZL z#Y<#JV3KIeIj*se);LAFad#2TwA4+SXcWQd|AzHqWs3Ehg2x6-9-yOjrd#SS1(c#vl; z=-LCl!~;Fyf!^8&y|o3syc$|ixyDPmZUxZWjIYscYn)ar#M+O7{eAj^SX)DY+q z3;H=0b`UsjwSY$G1!^qfObulw?meLA=pwL0GO?3HTZeAsW+DEm?#&f;=GJk4vi6?F z*&9N5vl+d&JP#{kG)2Nw5m5lwDYl4}M6}d=*{B!?^~M8Cq6FSk60cSj$kp!AgFNBW z15-7-Fhh9H8~8*grr-$?S_6(wW}xTbiT@dCj_D_lkFKWfBh3T->!t1V~*Zm4#qlr&i)WQnEmVammfex z-`rmg5Kq;;-Cr&gjJ|q+Y%A88#RE_oUOydxuHuuE4~auF0fy5j8*=>Z^j-cufX$1u=tIU1UQmfE0H#dYy*02A$C> z!H5<$I+cq6UUV|oOi{FtJPPH0sWtru%74kb?l%t&lmjT1{v0R|mcOnyhYXV4@m_b) zAo;iu$JbR4mR~9Hq3JV3_7;oHC_a{$xkKd8CJjicI`tQMo?`FcS``~wxAAa!y+sk< z#LMQcBjq>ZmbzPxlD`Pi&4@WgtxVl9axc-#e0_{;2~wKGU!@kWEa>uADOx}3X-E-Y zLt5o2JP~S0_fItY9xJbr=_2#e-{jzbpY==7vFk8-mzZZ>9|m4Xo1VjE7tzR!7%tm4 zn+M@jDL2bZ7{Vn1oot4vNzXMm4hLm#F%RHTH33=NDasoHO?BC&142inAlqW;n+sCh zg;%Y!YVFG=cAUI|>#eEB$$9?s5R*M#9xeV__rmdVbR5qCr=bCHyE*A}IY=B+x9D`a zJ6~ToL+Tv==WItn`4F=o~%d0_m_>!1zwN%sJGl{Rym zCyzGAjh3g1r_9>X@(?-U22*;LY%OoU!E`%Ic9frAYmPZfo>g@_mNb}0D8WPSYSe-C zk=xeEB>$0cE8I5PDR(mN>RQzO8vba<{B)K)5J2vGwg>Y`XJeGzZkC)a+ptGZoh@5t z=g(Ukayq+Vr;EFg!LAS!?cBFQPB%B@bayXws@xK%hkM;@r1f-TPA_-*EChSIQD=_< z?|-%B*ZY>txc{?|)5pD;@qOK5XHRz_gL`4_+S|Q{!G7*aKK5}F&c5zj4DRPX&&U2* zH|g|uA7|Kg7qF25?tOe5;Qlldj|1IOr`o-o=>y#fOc>;@iIvPnmUyTju=5t#A&*5qK_Z%Q&+7zS4$lZYd z&SPX>`Oy?}${0DM!`dk*alG5n$!MXw4otP@L+_61ryAj|cthB{I7W_;Yp0mLV`V?o zaPC-nWGCj}YH;AdR1-ZAfofZ*2_&}AgQx%x@*>TbV`blFHoHwbm}v(iZ7^!yXPmqc zHQqnY&q9GO^nT2;9|HR#i#oSn+5t>E0BJptHuPM1frW%?;k^c?O7&g{>}er^0*`P% zX7A@kny=1p zy5p{qF9;0mp4ZAgv0DZDvGw}8bFP)Jqii$>Pmwo>Tg{tOv3&m2E`ZVDv*B zEeMAFl|TSsBi1qv0hvAo%N^JlY`|Q9Bc>5yW=uYCpP1x9{;ueoU@vZBRk-Kb@<#J2K3%jLn**H)|s`sx8> zeqAnGN3Y?6IAxaID?6ls1ZY%LNodfp4GnrlHZtSym3_o(b&KznErhtNZvB0-3{SK5 ze#j~qS$?@+&J+#xc*6>Ls3L}%uY>^v&%rC@5yI5XUMZDqy}Zt)1uC$EEcRBplC%7+ zb#*IO$st14O)`nqvPZ?_+v??=bemlf+q}Pu=ZeQAU(D=*4N$kD3OhP-##WMMZdlkm`IwhS7Y@$ zXDybJcRVgTCsw}fDLC%OYt5UF%SrOhwRNXGA@>%dsBYc{`K(B=Lx4WvuDRFz>q%K1 z=R6W}pMIw9$tPu4Xz%q_3=JpjW}HNF4;ta7z`PiBU#2PK%cr2xeY0*gn4%n6U=PLY zk0oHLD%pdB61;Zw(=sKxeFrmbL$-s4W6hLJvPGF^?OFyCE3I8O#L)C-^Ub_xpnksm zs~PhQ40}7yq9%N?&WwFVmhU8woc;a3t!B!9$!EBAv+NID*Sx z^Y(LcT%pxQ`wKzKi|GdhIc)6nvWAtu{=D2!@#L&}CeC%U@+QiM%-R>^A`TQQU)sJY z+nTvA$|K?drcm+3!`U``dBCfgY`~$rod8gc5UkdHN05!3yYiN_6_Y5Ex}1vc7yn!pu}KjXd(E913}u zeoG#bHbP>Gsgz$~M=xE5ChD4w663H2b`d z5fgNE>ib+V&onQ*FNZa5p(DC<0+#4$K1%<{ zHgA7}ivRM1jFthR{!by3eD;~_*0(!5y%4NX%D@tl>ArM8)xR>40s4vssd61zkdZXs zm1}P#U`SNKe6*W6{Bx|HtIS28%QKS2142$I?0;_DsWM-EE;|%8VP$ibQ)b$HArDby zx``S6h3qU!%#1JO5%&G_FJzaNC0cb-n} zKTUMkdQn(el$oo(l1{diUC$J|dNA54cB@8b!fw?->@QYfHx0JSusakMMog43Oq6k5 zg~_tY2`c~wMLCR0xk(o~CKJVU3cG4dBM?Jkk^$PJ1kIJ)nnPtps4P=NBWt)i)lny_ zQ`wF_=fSj8k^>R4fySpM^&+r$SQbQhh_sTVSjP^5#cwx%qNk1OKd2~MP*dpwT|9_( zmtt3p&%mSz*fZ#)mV?Wef=9q8jVz-S=|*G}PzdW&(5Tp>5wVA1;*lu>Q;$a`C!sBp zVT+77*l4e^XoeM0r~4{X^Nk#OVCjHA@vrm}+vL&#`m#$chy6#WG0%K1o5Ap01udou z7HL#(&iF}%P*eJ=)$6@$xVt)QkF5I(p zf$bfYuEyRJ0Ts+n5#2+JU#O=u-}*vcXP#wV`CeX15isHh2&wMo+8>}nes7lkAP0*p z%#T0F0ny7ofk?R|Al9l2av-?jlP+ejE@{^n{YR&sUVeD=) z*ZwTa#nWcd´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

    %B_8 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μay0A7>q0lBsm89G`jWt z<*b)_ygS_dvrJ4f$ovF$sF*VDxTIh zIRVjMEW3j%-s6}OGSrRl+uiyKy5Jt7K^(|$(jeC)yG1E7L~Y&T^r~<2aEPzz9rR4Q zraDs-4FORY{m?F`0x?SLaEZq9OUc9@nGlMAJ()cx-X(=L%Lg(%I7EQM_K|5zkTNtT$!k`6lxRFVInnD+vK`rDX5 z{m+6x{S5^wDiVRpX9|4iX(KX>Fx0nS;C9nfM>^f|0l^2^F~xvWb4*2XZ2^~EkXTR^ z{!Szo8Fa1GPzJnP@pzIyz)1B$5KEOJ)gRgsEcNGTf{jS5*ijTS(Hg!YYsu}mIaQO9 z%@f|ovUxM0Kmpk%vX*HvsXjC;2am$xo19){a-M;|O`mz2(*)>~YjPa~{BIMey&wcj zOL*vV+e;U*Si3a~u80G{1rv(xS@4p<4Tgt^sR2qU%XOAI zt{|x5P=uhMhYDNe3>a}Ml|c>u$9*{x<~GmHRqkIg94U)z2{V=m$pyAo#X|%Cey`r3 zonH36_v*K`Gq@Ag7tK!!SQlgX6p?aJ!CmM|GkxgHjrOkaA?0DCO&%rM@IP75xY3$; zdLjLfxV)09%NRNMoLzO{BJwFv#5LTvJ4Wr5eVeGmY z!Bo%TTa!2iNfne_fxZ&bh1V@)v4E6wWifr$g!waSkcx@sRwMkN^a9giv`IrXIL0C} zCs+*3+fS8+N#q9z)mDA^GCS%0R| zLYS5rV8k9Zp@4}A9mTX6Eci9}gJD`B(ScO(Nnwm^J1{1TZOOj*n_8dcodrX@bonIL z--5Xu-W1-jViQsxAOtg$WJ^O+B2w@)og1?ND6c^4W}+(V(*vhJHf{Cpu)+5^?LN3xYf#_8`T1sepNvzdjTZ}IR$-5*b3?CJMMJm z97EuOAGj{Cl{K`Va7B}}m>vxfLg4e8;<~9wp)t<5%Q?;7e6N1(E+>}<4K?Fx!g@{> zLQ4*flGCNz9U5hKnA5RQG9q(|8|8qY$#4QL&#LPxyM$ENX%)lxJV&25h6;9oW zv2q_jxY68f6faf0-W970J;J`H5cj+*Opefo2_{$NiWmUce}hKynCgH_1quksO@O8y zzc(gaum?s+vTskTz(L>Mo?$hV)ZR!x@74N_SLeIlD8IWm+E*T21O98sYw)o?3)&y+ z_wvSJ3&nUp>oxjGZ-RfAH_^Yuo8(XRCi~}lQ~V}xz+V1LZ*PBH-rL7N$@`YSHt#k0 zGdv%zg=T%vJ# zr-#ZYWqgC6HQXU0x(Q`5jS|8%HUcnYJQB+`$E4ft5i?(P>_WQ<697LJ>SESMKW zdM&W^;QO7QPk}vQu8d3aI=KaGq9?BzHOrRmtPQZMsev50PFFtQRCg*p{%={^?S)Dt ze9%+KAJ$QQcu{xhN$ZZmc!=wn=YT>5M-pCQ1vBK!=%NZ2LTz zxEb2n8k$b9USUaX4qx%S>GLM-KkN)XUEFa4JG$cr8X zXeaKmIy`hvKthDZE1cKjQlxp?M-8}K@Y=kH7c3d&Loxp2DI^lMxqz(GR6e%UPraK6X{_hv@u+#5j1h zQ`gD#q%*_k^w97b%;^dLSQELRokJ!8DT#U1*RX~LQL0N92SbC=>9HxH`#<6g?_~z> z*|0Lo#I=JZh{GRoD*GDdg7l49H^{sE5oeD&c8H7(E|isj_=ZWNk`}J~M``-?M-ZGy zQO;^juE5n$vB)lQW4Uh}VrwOW4DXh=;KnTr1UNL7RBVq(t89Nw@ zL;z0FAF;el*TV^fm|Jnk1*@lin|6tU|4`oDMc2f@J%R% zhNFp$A{e>_ttm<&ai2>uh@Y(F=*5pZ4L0Dn{!!;UML_}wj6%zbvnh~ptZPi|P8$<( z*#%P%H7tG%M{oofKo(AzMScWrKp3kPICZu-tq0QzOF8H-zbHZq?y8Z{0XPg)FMt?G zDIYAM17sI;FjttvEsCBUV$UD)t-n2 z;M9f|o4jzMnd^)B2_?d43vRp3ki`%Vb!LeMOGjxns--58@M`chTAubr@LXEe101VySzVWqa3%=amU_r3VOcj0{>zJIIm z-o$s`z>CQ1M?~@xvuf4cf~Gicm!a*+D7`+aFD|A7byO?BpA(ca)t8@?gs&CkLN(Iyvu{y)B~fTA{G1(2*WI3Q z27`ixf94sdQEV}AR+)L2ZcI1=JFbl0-@-t^|#1s7VXITB-S0D70vqySg?6!Pa zU-%SaGWOL=pK>&Q8lHCgquBJPo#ECi`husO2~`qWaK75FD9`|J`q`(Qv%aA!Y7SH` z;JA(xJBl4BKTi69Edg$J4TUinono-V)D(UKf27lAv=k6ytW`vA2yWt)^U%n(mhrbH zFv=azU}^0ed389EH3GWe)-kwOj7d2U;)srGs$-I2&5=x;Y1Ot^Q>o`E+fCeEK#p`_TOKk=_2e2YSvw!bDD<-v%(GxRy->d4jUO^ za2+HEEj4nrWe#lt;{XxZR{=?11MlAB&pDI!!rVY1fQg2>g2)PeXJ6m*xL-KYfT-Jr zalM9oD?v-jY*dJNmHZ{FT3d`c7AR&dB00cVlYVTYGw_Um*>eMDh-G9TX1CF*kLgoR zJnSL>f~6l_|2!qEbSNj*D{_qm4?tBEO-ms*;?pt0AEOAZTV`BKOVk1Gy6o zzMYII7W={AqZNx##$fQ+;9fNPA{Z9Jx(l<~T}Z2S1Y^7D9@c4gIo-<_mZY$BmLf;& z=T#a0C!+`mfZT4J>Wb?ODseU^t^PK6E6Y@+mxd{clj`DjF62EfFD^!82+bU~L`E3x z3Su_v>3Z>t&i=;3uaq$|8yYH-7k z!j*i8vQ-I*$GPHVM1H=iZ-3cQ_-T6?7Yx0s|LbLEbZqMPic?b;I9y;WGcTHt* zTat}``kv+P#clunnsanYA6i#dJ@Cf+{VBryz$99_`hIZ;ORN9Tx73xL9)vme(iNl1 z`dP2*>QQBb`|(z=1eIw5V}>}86A`x2cKhC_vf9EpSIjM|wtxCi+e>rHPPOuKPZTt7 z3LkBJId&BkVqcl|)WaKKNCo#v!Ck|&C9lNFLD4d8`>V0E;L4~E9*un)q;1@6%8jwC zyxrvMiY?AyeavgPnQZU39N+q-&cEf%?Dh6fuslr-1sO5VQi)mFE&A_oIVY9OIO~^= z*H-(V&TGluH@u7Wjgj=n8#j~fZ~BEkcyW5*w0=C(l~HOwG!dVG;NC4f|}zhyV4;t9oTk)AXcS1x#1|7bCWeE+*`tNt64lK!vJMT@Ce7LEaKOTcyH zJ08zB=d-WtZQGrpLstFh*+k3eM8Y6+E{@6d@5s+qU7<1O_^W=Tb00cC8x#)LhY&1` z*z(x5725ixQ>A-+?7IkG9~|NW;M z5?GIvY`7n7zg3Eva}hx80{=}(EJ-J06~o2~ib`l8FW1YjL{a&g*YB?6f^5tyE7h#D zaZ@z5Ehjx*65L6LK46D<6&d>bH98cw>5Hg9KdN`x55#nNDUuZSQ=X9-dPoQqa{(vz z;|Wl%{tA7dQ4#iGeM+=fxTPQh%6c5jgJR4M0a4kLkd;nIGP1EZV`iq`q_wiM+5=6a zd0bdjp5_j7+5Q@nYb74_T{AQNj|;nM6hMf-Z_rgL)N52?o|hmdzfQNOoSDH!>-OCS z2GMO|uoeC{XkJLhMD}$VSF7EeU4)z!@=-3)Tz}0106c-zT_OD*0-V-NF~Birv~=r| zRCym#Ac6h$`aP(n&~LaD1>6ZzUc%$~rid>NZ1E6^?b=7PG?U`wzaCVhaJlW}Igkjk z3(FySIYytr9#b3zMBtsY7+Z(mZ_Kb9}bC48AU=PiX<@y)1GlM$WG+KgL z6GeMfw=Op;_~<1KI74UItAlwe`-c0DY#3A~UrhE~SKOfnh|_B#vm6X?Mk#22R15$^ zfG|!<5HFS+98#0{i(>#gI(m)$3H_DwJyw`+g*kEM2)~<1KXMuC`tuZn>bMY6ppZBr;(Z^O_ip|dGkQWxYR91 zkugz@s|--Z2q;2|7nBMmc}V>5V%eN8fYu=qjOsYa0}%sta(+81pg<=7ca-~-15|=J zDcTcX;4qJ#s4)=fI z7obRRxPKoUP>V^AXO&OyT(R6tawmluFdBj`)s2$MbT`T+V`!k+x*W!f96y6?shu%i zCq2n|rNk3JB5L(WR9B?h;P`4sDED!M2x<&QSh6}WOi)j#V~llLRCUZc#lXzasN6;V zmFBB<8t4BmbR8HIVyZyx@HpaB^Y*gCxh1nR2zSz(&LMn!d%KjXwj+ew87CznY%G*- z24!%!F?>5{@^)rJ$reKr3ERZ4=!3YKm2W@0d4|M7RrHP7A(SuX<_nt(9v#ev_!%b- zbt9f0^FI4Sj*9wIVzwjw!GJxOE-1P(nDG>Y3GL5IwFDCs ze>?R{(OZ}BjYYOooJ&3UWm%XAp{gv0C?3M=Wen|O8OIcf)&NX8Oaqf1tQSz76V=c( zK}O_k6$al9HIF$jWT-2V4%PctRA5aPD+ei69r!5{NH7*bBF)Fqurj73aF+_!$g807(h@sZwAhcXaz+EzAil>xr6o%;B4y6E(ZAP659cd1L;ZkSEiXW zKNYU;V-6=NpW}`d6K`SrOHi?Z_LD*)dYt$Wa9skkF;A96Ehv{=i27^nO}4oNCQ_+^ zjPo$O8v9k)x3B~d?vi9c%m{o6f?kg=84J8F3E(ixByY0A`I~5+KM0|TgX!Jy5%jku ze1`d1cqC20v&(TBn1<6kp%z4YctK79YyllHP({8eP!fpO-iUD!S3AI_n}m?Tpf!08 zo=T>MnGE5N6Ul^ zp}c5}EP|%u(*k?F$QLsRTEFB*e7icuRsF`q4`qBciIupNY6%GkGzDy2i_?sWxV34R zv=+hUDGR4rjG+16Z;@VfS>~vUmG%U9^=b&7?MeONWtoAsM#8Z}Kv<2>=nMe>AU`rn z-3U_>$-3e4Oy4R4HghI~e1q6*$vqLdc{Au>fHk}o9eGSdh2hy8H9V9lNCxi1gF0$B zf4GF*tHH<`6PKbtU$S5g1}#Av!B}_L5EN-jyEsd3Otp9(U?8no=X*GILS$~2792fc zraWWuyBx)EJ_CZF=keHTR3uigAwJOI7@|C6E2g63jYtLk#Z%$0n}AfHJ4jVy_>}L+ z%(jS-0!xz+$gaS9L%c1ffxH^xEinxw)DUk+VpD{vi+Q>Zgq<5U(acLDv<5yk8*Dum z1vpilsC&-MOwDgHoHwyReId(PsxhKamcm#Y)r2r9#$2N?lp?0W2_KRWaZ_!O5V6t7 zAb}D&WE9g`z|(x(frWCDq7IFYdRwn1#(GqmYsLx3tPVJ)6&$mYZo#w~abQJX;vwW6 zgckf z`)SIB8r;A}F^mh=b=~~TKGsG(dwyoX01OPYh4c0d4`f@sQECFnorlicJ3sSnYrOu` ze9j?-z;Mit$GJ3EF{EY>@h>eoLu+f(2-8Fm2Ldkw4+QGQDL_2;B^MK#;FR$aIG2Oi zB6tJDRtrFKWlU@^fMU2tb7F$N`pV28YmC0{%FOuvV8u~Z0*n-p0ApQrAk6saJeca} zgddUeYoR_@Mp_z2n-07xb9Chx?Dm13o<^TX?q7ie7Hl=L(cY-9y()9qa5=382uw5J zL&E&{LSPfI!@$(Q!5ID3Rhg1 zrgKyFuc(Ij-U}V441&bp8!^TE;FUyO(}K+_!#qNsuftlfg++PIcs2UV+qZdB!rQM| zdHcghc7UJu4g_;d1)+P>FopWIKhQe}cXdqn$9V_)dwGZWU*(hDpo#tOpd1z~05 z>7%wpK^Dm3x`7_5M>e7Qo9iNm;2KI4HQB+eZzm#q1*h53q>G)_(VRKJGZ>|RCbe&~ z9x7yrEon64cFU}ML0)s_3=n4r;vwL;b&w0>ytQfl@}kT>gFrh2%HdAg@H>c_>#(u6P2gRp!hlqy<{nqP2Zb1<~H#|ggHx< zEW`3rCM#|>asl}dSvbjy1^9)GD7(nQr-MjX`m<{@y^d-{jsVBx2hTX?2NEUf&mtCL z^dqwQLA(AiTapaC7U>hN%kIUimfnIRV9&049@L za^J-x!85rqC1cK{mfZJ(oI+f(d^52ncVdt;G5Us`rdr{&N$AkbniePRCjQZoTc1y< zy%_&3VwfS$d$ZBdKHLrtn8Y+R7f+kWG&B_I*uCY+NOhT=;X}^O_QklUY>5$4ob=5* zi5-I*<7A}5oza2=-cXJP9j9qfcl)ZTnAo_W-jng~Bv&23M(sBj7i9T2PUv?2qaE@#?@iG9jdsq>Fb-lmIu^6a|fVDxiOwn&N#Qzo+NRaYZlQ zDa`WfVs%A0s4FeJLAC{Byqd39MX$EHctm2DIPxy8u@&1Jjsn-9dSDw#RXH5wW2uW~ zw|FZoNY2v{`L7hcE-> zJat%&50yQ3KR)lZ9bh*4H9NrNJr7vEj4iXyHN{pq9^F5S@l;J|>Lk z6e|?kE@Wcio4^}jc*wYtIk8+0OFWoSW7IOEu2ts*U9DH=22YkcFX}#gaVpRLpQFwX z604)pjmON#&}5xDD|pJN3xcP#niD)pr9fvhK1{|XuVLm4*O{ z_lu4t*rGwl(8&;m1;~~EpcqBsN-iTp#TpvFH;F;WvGKB zWx5GXHxv~#&?Qt$p%!)p{hXRd5(Hq_CCJsV6-d&s3y_`c21f!xM`kk9a7>D^ZVm)p zYEa?LQmZNW53J|`zmQdakgJ}xJWp-3#HCK4C#m=?NKPWaQky{ko&^uvFMvqTEDBlb zKSk0)-@eC_@ZYnJ8i42bt;4xnLD3#%`aA)g+Ei2lH!%IdQn(b#!w-75F_{~wUc~DM z7W?vFmRfIl{|)C9PYoIAZO>ci>FMQzunj5Dqd7iR<*tV{pmtc$pEqF6tNwy2ZnUxJ zA!Q%4)omtZD5V|)))D}}k)Ai<+_!3^sinvd%o8!CG&1U$v8*WLm=@NQYhcduLJn(9 z%n<4N7)DW(t6QV)wC94F@3KM7H~`@xI41A5r{fV{qE&-@b|wq#Kc)}6JyW$W4t_6F zb+BxVEi#_ZFheXj1XkD>8r>M!&E|Q@CVDwh2Z4&GV0buOUB7XArcZt`l&_`me^dlb zBE>XpKEeo*g8!p3h>-F;cm&qq7ojU?lNNP``w(r}9*Se$jACbPLftrSTe#z1@z5j` zj@Yhiw6W-MzpciLx0yr<6)dZ%2uXOrHvSX~_5TpHJP5#D`^R7|#g{9?mj`V1kPS|+ zrKJbb72^~Kx`C+iorvHBN&I2Fi6>Rwu$G}3utF{iAw~@oVU}8r0C`|tem5oY-9zY9 z(Yy@hBAANsH4`(GqFu{cGU%=u)FY_Ph(FpOjkc_0P?JdEeD)oVxD|zqGnjrq2qXa} zvemtO%6T0M9YjMF^K-DAN5p$|WJB{uCiyrCt12Vk&H|DTm2yBf3?y$_#o;QQ2MXta zuE*oA8nSgf`aP8yASYIUo`a0InFgeWW8);rxQ@mHJt)TY3?lGjYH9f1wkL7lAbNvV z2!OQm=xG;-2~mM{0Dh0;1jLg5$W4-DDDR$FilI7_54PSo(7o0I#U<(FNU8@Z-AeNFB?OKvne2!a)J8$U6%;vme0 z2IsJN=#otG0j*r9aLHKiHA`JcKZ4W)C+megQVtNX;mQG{`*4k_YLO|H|45#5EAIsh z9+#Eoc{~czBDHWNN(+u$$ujVqD#6F8R_rg?QHq3_Sabu&&{et(;KpwtVT3o}iOVfy zvdoKxC#5t1S%=h^8_pO-+cEuAFUXut5a=1TE3}2GpSq1r^34AETNwN1stZXR z#<5C6ry8DV{*Gz1H>Lb201nn&_O~{Gn;|mLa$2UD>`VGW049#eg9VWu5qYrkfJlzF zo5C_M1RahJEBAN<)bJO8Y7Zba=?7LQ7x>-3!YjwacftfBR?i>{ zgO?&<0HD8hxgK?ArqZg_2i%!?TF*N@lhXUV;9{Rbllm`#IP@Rxl^1bfjLZ)q z7{Cur?tZAb_+3Hna&mQGl9G7Sy*ea_xTqOIl@@dvQ-H(*1xD5yi>_}Q2Ub0NSxX=+L3l*0+a#v;2 z>L@C75<2uaP?1)RAZ+wkdI?o;dP$wnUQTP@&3!nHZ-gBHSbkrfdSFFGd991}N>6CrI-%qB(;)wnd4(W+`m_7yBGHJWog}lsYbErCU^Jw9enCa}@J?&Cst;^lz%R@(W^cVQdm#*}Rc#}@>?WV4 zFCXtPo>7memzoGjSaDc5O=gh-ZtjAgU^<4Ue;$Lpu#G+1K+)VrXJ6br`NE^3;C_#nk5#e8Q*| z|EodCBL=9{JZwLqW|m3+d$i8!0Kl<{(${#iq*}CtzU1)p0m!yne2x!8!73l>s*izx z_O}j0`B+8{OeW;93WM+j0$#ES*-+tuc;IEaf3#o@K@`P@?8%TLPsN8~O~__!wu2$( zxQXuy3?bI_L>?kAbjeAFrCkEg6W*(XwScLK3;{Naa0qaL85bIOS>Q|+t?78gr)Z38>dQm?Omyn@NGC=y@PcdVwfew^*>sEmiDyz(9Xx2AbobK_DF5P(HtHo`>-n zh8@%YB#;kG(EpJaV|?OhNF&UNu7;Q+m#U5APz|h&K+qbyW=axYGb4wpOy0=$YsKax zaH)(Rf$A4k%+ekhTEsL4gF!)ZTGJ|ykQd6X4E`v)TGpto@Ob{&GB`d${TZ{lTJ>{l z>WM5(@g-^=AA+65>zTpy1g485dl^c4IzXXAB-8^Eg#F-6_A9}`=mq6IS~udrqNj5z z-u|S2wkk6)|3BC}OfJPVU*QKlP5=80Jl3NV2hv_<4-jlhkD;1#9<35s3fvGt9Zn))7Kw~8b^R8Z?^?1llK`W01Oy=KfqQWHG#oiJ z+Ev%v&^iArL{kTsUyBFdpRtG1>N9XpLj9Fy(0JlTtn%>+v4OMH-{j&TOYHuES@%*Jc_hs_<11kDLltVwD%OoTb@i!LTic^>?tR{5CyxRQA~{6FCjmmTpI{Ls&eH%^MmSi~yt zssHgvX8alRaF-N_p3`kcN~-zr`I%p?^N&3jnYHWjuA2Ub-eTwjM`U!-mNlZw*dPoh&POasdK1sBAGw&X*^uv6$T zR$?XGV6@edZM)pk6h6Cxf^^C8}B8srG zm;g38;;>U-T$6^rm^9;;lXB<_({%pv%+UUHHK7lPe}_(4lYo29fg?0tvT2p2?NJV9oO2?i&M`zo7g4C^G}L9UO1GWe0{akmFMX296)B4~X`X zU?=#~R@(l}ZSci#_ZXNF{xpCVO(fJ9_F@}))D!qb6bMeD8%bS|8>v2lN$4P~%}BZ7 zG@vi$ROw=M39*qk%JV|XHajRJJ7eg*M=Xt{zDt-0e3^tG8c%(%C<)OsX?0?lM8I-E zdj}(IPhjV!uyb%N5Ji+Bs1-^$D31*ROhdJGA~Z}(OhUCVgW}b4#g##xxIuWdp(M(Z zQQ2#gxHtL$Dm_NM(=EdJ5Tf4M{n67Z5G&fLeS}?ads6`!b zB+GPg6~`=M=HNg&$jc#t;J}NKnGypzhCUI-wG$N06h*ly6$q9YMK6B%rzUVrHEIGq z=OC~%K=knSdNWnc6qzxFh2WWZ z8YWNVluc$m026+{KKd9hHRc83q~|=5sX7g~=7}}%lQ2FkYJ|y(2B^i&14YU3q|ZX~ zwsy(rC_EaBS1u|I*LA)A;}ZyShI+E-?5|6h$QO&-3dFoxPCHS;viWKw#GoN`=P!Zy zLxZzp)X5|?c2D>F0p3{Ic?FYNBrcjfU(JdJ z!cu_71;r*h;Wj5y8DfhwS|SW~;i3wHk|Z5Omlxp-YE3Lp7NR9uaRv;cB|J4dXe=EI zSP74ztczkK3b8P?Q7p`?C~l%Uiklc8#Z5@_lnB@p67&UpyeW8&$G9+9LNEb_Vz30z zfSEJ{TxbonkcQ8sESVV)uPkGL#S!HKgYFFTWK(_D;JGFz(JyrW`12qNtqj9#EmtS+ z$c!&PLwWp)mfV^8t0yy+`3vzl%TK7`hgM|FmL|wMqJ9==nIs?M3+4#9#dSm|Be__@ zc~!tB!p@QxY&M)7@kWGRtd20o8zd#-kdKk%GYep(Et7|KLj%H=JaqA#APms<&Q9%1}`hGX*LNcOemG?P(XC zp4E=RF~&mNk*D%skN(C-Q9acW{RxFpIYiMocn*ney(kS5o(ZD*p+xM+&LVqB8k7O+ z4k0rG^J+FHZWHknSZ@rmf!#F>KWB1IC>i9h8uLh4O!e0%yn8G)8^0~apq-8JM+`9= zWD>FQY+5tHJ;sO&zn7oY2l5`)A=V4M`37zV&40ag$Vc`Ta2au2?ekB z1Vya(QwFWHv1V_b)m-L1X*DbFXCp1}-&3q~7XF=yi53^~!dJuHWM6hd|6_S(-#q#_ zLi8GC0= z!<4sTYuKgyO}2PH;4jvNFXJy%=jGT0a0LcEH{8mL-8Fe^4wy$E%twQPz3g3yZ9?8v zgvx?26+6(bCUCAHm=+SIi!2!I*IKxD<2rz8u6I5Dzrwo#|6lIi2neOT#g_k7(z^+2 zE$J;mO47R-&$f4qHQS$Odq2dB<=ra4yp6igyWPUp15G%#TFv#|QUZ4wVY{3txdXb` zyORj;%6Z)X2ml2$QL$hE!7&v)^9X>I2(wu*7d#IOIxCH`e;h75SfYxZL$js1FaIj@6@;Nj02MpO^Q3fhBk$qV)vA21`jx&kBt^ z$2_jcZ{!%B7wUO|OVvP+_o57R6AD`1OSBifmq~%I&_?iHB??~4vw0d1*z5EQW=Dnhp2cfYwju7pdmq5hd;ekiP2PVJ=6@i5z4HE;fdvG&1BnO&&~x{~}6~*^!XML|y(|refxWq!C+P2t`2=j1%Q<m5&2Y1>$#%77_UZ6@-&J0&*7}IuW??^O^9E>xifNLj?{oNMQZE> zBNOT+?g0=)giB{#+~v77vd@=_#Pl)Nz4(57aER72-k2GVoqum_ z%+$&DPnsLSB$_|4%{(95XowpDK2JMAnZhanIvRv3V+iKN7o4%`;q;T9P^W0R3^ni! z$lLGOK6mbANE4Vvl{gIFJu}z>5@SaXfd+T zLSTqtl=1U08akjdg~%nqhsG#^ZQxUeF9u{r=S-5(OWw^khO`(YnLq>?3*L-pTuJy) z-n+$yF!&)@$HXkPc(>wkOYb%$0HiSY7?O1%f0vNoHK`~NfUVqf<1HoIgHj+PmtjW~ zRDn(9dj|!ZKWUa$@opS9=nvQG3H5AgQruU^Rv$d3U9nJwWq3c}t(Q(R;c zZ{ao*EhZgpP6#z;*GkJjk*HS$sbCv94kX1o>`b=?E;ai>Q@|&IezVyR3J@WlS!X_RRu6(jU6;Uw!InEnWxizlE5L?~ zq13N`;*7_|5vjj8?;iN!`V9&H*9k_P$@#p&xx268bXz#dOd8w+@D2FC-msyNhA}g3 z%kNA%ef=Mud-BL;Vz6o1d|YPIejoohXk^pxV~t=^%Wv0ii=_qMuG<)EI5^z*GoJ+S5x8YS7ILrBiZ@k?OU9a?RAgnQ@1$7t2RH1!#3)$tYY~uB@W^lEPis1 zzhu3>XNxnyUi(x1^DWMx{I-qHhNT)0g1(nR+cqIlLR=_gEDYdV=dHQsDoB{_uD^C2 zgb&Q(G9w|@o7a~Efw9@V&a+MKw%|2oUU!(+3G!Br6O8q7zjBoIXMNePoRwvA;_lX; zwC(w}(+_v)(w&*&*$BR;58dkED4Esz(yh)u_NS}$lUs3O@4KsX>K$jC{pl(_`5kAf zyGpCv)%MGGoF{Evz1a0e{^5a*ptvdpz)uk3F_%#$6#n2CXtW`& z{8w?ja`y1Hci(e9x2-qy+yCJlt#5eOX-uNidc&dVdi~kExa8$!z0dEQQ}A=o@0>aK zdHkSse_j83jIr>X)^mUF)Q1T#{oXki&qLpH_CmcUz30p|CtL@_{qaNWT);u47$YFs z9lwduY`_HbKHwSA!M8!VKfKei+)6A=MdiA}zfBH$^_o~>K=8NT6H5y^_~qTPG_0NT z+pSP(QH4RnKY6iZxg90aHosOC>vhn`maY7_?cFb&Cv5vK&*>lj(|LB>O2o+|{XS4_ zFuP!7;{*fBu4|SyQ#ZlhlGpj+E3!Us)z^OIw1Vz#8|pr7U3}X%cN9)R?{2xL;&Al~ zEO#V+?zY@o{Jd(pY+%US$Y@@E0$AHsN*gdn4>Jp&S-sanOhfRA7Q`Ws`u#P%2D;3k92zLv-`UJtc%;O>Eiyt zA}k#DfIfy>7U9YUvdbMjy#C_{^a+mJ&;IlQeX-*(hkvwFGSV2Z7zKN0SWEN^x3 z*JFhkcaCEMwuNePRWJ1OW!==<_3(2_Z}-mlxwn0SkoGY8T?Sf)Qz^w7>=)!t3VsXV z{Ceb05;XEqmHFH*Ba;<9w~xD|(p<0+zukFT(gy{6Qt9^51A4hVbx0^NTF{I7x_Mx% zOQm}gep)NtV?Z@+_~tQd+(w83Ri+%%_bq&LgE!Ts-8jRM=q>%+Ye;ygVshK<{oNNV z9{~0H8MfwJmA3`eCB6~2-8s-*XRT{HdXU@Q3Q2)>EBQ1K2rwW;AY3`veZpGXHgSl1 zx@FzacDHiBvhByW=oLfVFYRR?>AQxx6N&My!`#94pMIiu4s+)xabBiA=VZWX$y9e# z+b{NTTkOnpAHoFcr@d3%YW>Pkx1T$UFpt%Ysl>fAQVx=MdM%Kbg_ULEcJsscv};0}&?Deh>h(r+H*E@ℑLfo! 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 RAo;f-i-ZddYk?Ka{XeFJH`V|E delta 247939 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�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%0D$dh^ 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 @@ -47,8 +47,8 @@ validator: {} # substrate-1-key # substrate-1-node-key # - # pod names are canonical. changing these or providing different amount of - # keys than the replicas count will lead to behaviour noone ever has + # pod names are canonical. changing these or providing different amount of + # keys than the replicas count will lead to behavior noone ever has # experienced before. diff --git a/srml/assets/Cargo.toml b/srml/assets/Cargo.toml index f274661e6c..129f884bd9 100644 --- a/srml/assets/Cargo.toml +++ b/srml/assets/Cargo.toml @@ -8,7 +8,7 @@ edition = "2018" hex-literal = "0.1.0" serde = { version = "1.0", optional = true } parity-codec = { version = "3.2", default-features = false } -# Needed for various traits. In our case, `OnFinalise`. +# Needed for various traits. In our case, `OnFinalize`. primitives = { package = "sr-primitives", path = "../../core/sr-primitives", default-features = false } # Needed for type-safe access to storage DB. srml-support = { path = "../support", default-features = false } diff --git a/srml/aura/src/tests.rs b/srml/aura/src/tests.rs index 98b57a1251..e74c7dace2 100644 --- a/srml/aura/src/tests.rs +++ b/srml/aura/src/tests.rs @@ -73,18 +73,18 @@ fn aura_reports_offline() { } with_externalities(&mut new_test_ext(vec![0, 1, 2, 3]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); let slot_duration = Aura::slot_duration(); Aura::on_timestamp_set::(5 * slot_duration, slot_duration); - let header = System::finalise(); + let header = System::finalize(); // no slashing when last step was 0. assert_eq!(SLASH_COUNTS.lock().as_slice(), &[0, 0, 0, 0]); - System::initialise(&2, &header.hash(), &Default::default()); + System::initialize(&2, &header.hash(), &Default::default()); Aura::on_timestamp_set::(8 * slot_duration, slot_duration); - let _header = System::finalise(); + let _header = System::finalize(); // Steps 6 and 7 were skipped. assert_eq!(SLASH_COUNTS.lock().as_slice(), &[0, 0, 1, 1]); diff --git a/srml/consensus/src/lib.rs b/srml/consensus/src/lib.rs index 985a32bd6c..dfcc6805dc 100644 --- a/srml/consensus/src/lib.rs +++ b/srml/consensus/src/lib.rs @@ -183,7 +183,7 @@ decl_storage! { decl_module! { pub struct Module for enum Call where origin: T::Origin { - /// Report some misbehaviour. + /// Report some misbehavior. fn report_misbehavior(origin, _report: Vec) { ensure_signed(origin)?; } @@ -224,7 +224,7 @@ decl_module! { } } - fn on_finalise() { + fn on_finalize() { if let Some(original_authorities) = >::take() { let current_authorities = AuthorityStorageVec::::items(); if current_authorities != original_authorities { diff --git a/srml/consensus/src/tests.rs b/srml/consensus/src/tests.rs index 0145094a76..ff60660b0a 100644 --- a/srml/consensus/src/tests.rs +++ b/srml/consensus/src/tests.rs @@ -18,7 +18,7 @@ #![cfg(test)] -use primitives::{generic, testing::{self, UintAuthorityId}, traits::OnFinalise}; +use primitives::{generic, testing::{self, UintAuthorityId}, traits::OnFinalize}; use runtime_io::with_externalities; use crate::mock::{Consensus, System, new_test_ext}; use inherents::{InherentData, ProvideInherent}; @@ -26,10 +26,10 @@ use inherents::{InherentData, ProvideInherent}; #[test] fn authorities_change_logged() { with_externalities(&mut new_test_ext(vec![1, 2, 3]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); Consensus::set_authorities(&[UintAuthorityId(4), UintAuthorityId(5), UintAuthorityId(6)]); - Consensus::on_finalise(1); - let header = System::finalise(); + Consensus::on_finalize(1); + let header = System::finalize(); assert_eq!(header.digest, testing::Digest { logs: vec![ generic::DigestItem::AuthoritiesChange( @@ -47,9 +47,9 @@ fn authorities_change_logged() { #[test] fn authorities_change_is_not_logged_when_not_changed() { with_externalities(&mut new_test_ext(vec![1, 2, 3]), || { - System::initialise(&1, &Default::default(), &Default::default()); - Consensus::on_finalise(1); - let header = System::finalise(); + System::initialize(&1, &Default::default(), &Default::default()); + Consensus::on_finalize(1); + let header = System::finalize(); assert_eq!(header.digest, testing::Digest { logs: vec![], }); @@ -59,11 +59,11 @@ fn authorities_change_is_not_logged_when_not_changed() { #[test] fn authorities_change_is_not_logged_when_changed_back_to_original() { with_externalities(&mut new_test_ext(vec![1, 2, 3]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); Consensus::set_authorities(&[UintAuthorityId(4), UintAuthorityId(5), UintAuthorityId(6)]); Consensus::set_authorities(&[UintAuthorityId(1), UintAuthorityId(2), UintAuthorityId(3)]); - Consensus::on_finalise(1); - let header = System::finalise(); + Consensus::on_finalize(1); + let header = System::finalize(); assert_eq!(header.digest, testing::Digest { logs: vec![], }); @@ -73,7 +73,7 @@ fn authorities_change_is_not_logged_when_changed_back_to_original() { #[test] fn offline_report_can_be_excluded() { with_externalities(&mut new_test_ext(vec![1, 2, 3]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); assert!(Consensus::create_inherent(&InherentData::new()).is_none()); let offline_report: Vec = vec![0]; @@ -89,7 +89,7 @@ fn set_and_kill_storage_work() { use srml_support::storage; with_externalities(&mut new_test_ext(vec![1, 2, 3]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); let item = (vec![42u8], vec![42u8]); diff --git a/srml/contract/src/exec.rs b/srml/contract/src/exec.rs index 6c04a2e1d0..afd5159fce 100644 --- a/srml/contract/src/exec.rs +++ b/srml/contract/src/exec.rs @@ -44,7 +44,7 @@ pub struct CallReceipt { /// An interface that provides access to the external environment in which the /// smart-contract is executed. /// -/// This interface is specialised to an account of the executing code, so all +/// This interface is specialized to an account of the executing code, so all /// operations are implicitly performed on that account. pub trait Ext { type T: Trait; diff --git a/srml/contract/src/lib.rs b/srml/contract/src/lib.rs index 6fbd502f01..da3fe4dbf0 100644 --- a/srml/contract/src/lib.rs +++ b/srml/contract/src/lib.rs @@ -15,70 +15,70 @@ // along with Substrate. If not, see . //! # Contract Module -//! +//! //! The contract module provides functionality for the runtime to deploy and execute WebAssembly smart-contracts. //! The supported dispatchable functions are documented as part of the [`Call`](./enum.Call.html) enum. -//! +//! //! ## Overview -//! +//! //! This module extends accounts (see `Balances` module) to have smart-contract functionality. -//! These "smart-contract accounts" have the ability to create smart-contracts and make calls to other contract +//! These "smart-contract accounts" have the ability to create smart-contracts and make calls to other contract //! and non-contract accounts. -//! +//! //! The smart-contract code is stored once in a `code_cache`, and later retrievable via its `code_hash`. -//! This means that multiple smart-contracts can be instantiated from the same `code_cache`, without replicating +//! This means that multiple smart-contracts can be instantiated from the same `code_cache`, without replicating //! the code each time. -//! +//! //! When a smart-contract is called, its associated code is retrieved via the code hash and gets executed. //! This call can alter the storage entries of the smart-contract account, create new smart-contracts, //! or call other smart-contracts. -//! +//! //! Finally, when the `Balances` module determines an account is dead (i.e. account balance fell below the -//! existential deposit), it reaps the account. This will delete the associated code and storage of the +//! existential deposit), it reaps the account. This will delete the associated code and storage of the //! smart-contract account. -//! +//! //! ### Gas -//! +//! //! Senders must specify a gas limit with every call, as all instructions invoked by the smart-contract require gas. //! Unused gas is refunded after the call, regardless of the execution outcome. -//! +//! //! If the gas limit is reached, then all calls and state changes (including balance transfers) are only //! reverted at the current call's contract level. For example, if contract A calls B and B runs out of gas mid-call, -//! then all of B's calls are reverted. Assuming correct error handling by contract A, A's other calls and state -//! changes still persist. -//! +//! then all of B's calls are reverted. Assuming correct error handling by contract A, A's other calls and state +//! changes still persist. +//! //! ### Notable Scenarios -//! +//! //! Contract call failures are not always cascading. When failures occur in a sub-call, they do not "bubble up", //! and the call will only revert at the specific contract level. For example, if contract A calls contract B, and B //! fails, A can decide how to handle that failure, either proceeding or reverting A's changes. -//! +//! //! ## Interface -//! +//! //! ### Dispatchable functions -//! +//! //! * `put_code` - Stores the given binary Wasm code into the chains storage and returns its `code_hash`. -//! -//! * `create` - Deploys a new contract from the given `code_hash`, optionally transferring some balance. +//! +//! * `create` - Deploys a new contract from the given `code_hash`, optionally transferring some balance. //! This creates a new smart contract account and calls its contract deploy handler to initialize the contract. -//! +//! //! * `call` - Makes a call to an account, optionally transferring some balance. //! //! ### Public functions -//! +//! //! See the [module](./struct.Module.html) for details on publicly available functions. -//! +//! //! ## Usage -//! -//! The contract module is a work in progress. The following examples show how this contract module can be +//! +//! The contract module is a work in progress. The following examples show how this contract module can be //! used to create and call contracts. -//! -//! * [`pDSL`](https://github.com/Robbepop/pdsl) is a domain specific language which enables writing +//! +//! * [`pDSL`](https://github.com/Robbepop/pdsl) is a domain specific language which enables writing //! WebAssembly based smart contracts in the Rust programming language. This is a work in progress. -//! +//! //! ## Related Modules //! * [`Balances`](https://crates.parity.io/srml_balances/index.html) -//! +//! #![cfg_attr(not(feature = "std"), no_std)] @@ -136,7 +136,7 @@ pub struct AccountInfo { /// property (being a proper uniqueid). pub trait TrieIdGenerator { /// get a trie id for an account, using reference to parent account trie id to ensure - /// uniqueness of trie id + /// uniqueness of trie id /// The implementation must ensure every new trie id is unique: two consecutive call with the /// same parameter needs to return different trie id values. fn trie_id(account_id: &AccountId) -> TrieId; @@ -248,7 +248,7 @@ decl_module! { Ok(()) } - /// Stores the given binary Wasm code into the chains storage and returns its `codehash`. + /// Stores the given binary Wasm code into the chains storage and returns its `codehash`. /// You can instantiate contracts only with stored code. fn put_code( origin, @@ -272,10 +272,10 @@ decl_module! { /// Makes a call to an account, optionally transferring some balance. /// - /// * If the account is a smart-contract account, the associated code will be + /// * If the account is a smart-contract account, the associated code will be /// executed and any value will be transferred. /// * If the account is a regular account, any value will be transferred. - /// * If no account exists and the call value is not less than `existential_deposit`, + /// * If no account exists and the call value is not less than `existential_deposit`, /// a regular account will be created and any value will be transferred. fn call( origin, @@ -377,7 +377,7 @@ decl_module! { result.map(|_| ()) } - fn on_finalise() { + fn on_finalize() { >::kill(); } } diff --git a/srml/council/src/seats.rs b/srml/council/src/seats.rs index 867efe4ca1..f005cc6ecf 100644 --- a/srml/council/src/seats.rs +++ b/srml/council/src/seats.rs @@ -242,7 +242,7 @@ decl_module! { let candidate = T::Lookup::lookup(candidate)?; ensure!(index == Self::vote_index(), "index not current"); - let (_, _, expiring) = Self::next_finalise().ok_or("cannot present outside of presentation period")?; + let (_, _, expiring) = Self::next_finalize().ok_or("cannot present outside of presentation period")?; let stakes = Self::snapshoted_stakes(); let voters = Self::voters(); let bad_presentation_punishment = Self::present_slash_per_voter() * BalanceOf::::sa(voters.len() as u64); @@ -303,18 +303,18 @@ decl_module! { } /// Set the presentation duration. If there is currently a vote being presented for, will - /// invoke `finalise_vote`. + /// invoke `finalize_vote`. fn set_presentation_duration(#[compact] count: T::BlockNumber) { >::put(count); } /// Set the presentation duration. If there is current a vote being presented for, will - /// invoke `finalise_vote`. + /// invoke `finalize_vote`. fn set_term_duration(#[compact] count: T::BlockNumber) { >::put(count); } - fn on_finalise(n: T::BlockNumber) { + fn on_finalize(n: T::BlockNumber) { if let Err(e) = Self::end_block(n) { print("Guru meditation"); print(e); @@ -347,7 +347,7 @@ decl_storage! { /// Number of accounts that should be sitting on the council. pub DesiredSeats get(desired_seats) config(): u32; - // permanent state (always relevant, changes only at the finalisation of voting) + // permanent state (always relevant, changes only at the finalization of voting) /// The current council. When there's a vote going on, this should still be used for executive /// matters. The block number (second element in the tuple) is the block that their position is /// active until (calculated by the sum of the block number when the council member was elected @@ -371,9 +371,9 @@ decl_storage! { pub Candidates get(candidates): Vec; // has holes pub CandidateCount get(candidate_count): u32; - // temporary state (only relevant during finalisation/presentation) + // temporary state (only relevant during finalization/presentation) /// The accounts holding the seats that will become free on the next tally. - pub NextFinalise get(next_finalise): Option<(T::BlockNumber, u32, Vec)>; + pub NextFinalize get(next_finalize): Option<(T::BlockNumber, u32, Vec)>; /// The stakes as they were at the point that the vote ended. pub SnapshotedStakes get(snapshoted_stakes): Vec>; /// Get the leaderboard if we;re in the presentation phase. @@ -390,7 +390,7 @@ decl_event!( /// A tally (for approval votes of council seat(s)) has started. TallyStarted(u32), /// A tally (for approval votes of council seat(s)) has ended (with one or more new members). - TallyFinalised(Vec, Vec), + TallyFinalized(Vec, Vec), } ); @@ -399,7 +399,7 @@ impl Module { /// True if we're currently in a presentation period. pub fn presentation_active() -> bool { - >::exists() + >::exists() } /// If `who` a candidate at the moment? @@ -422,7 +422,7 @@ impl Module { } else { let c = Self::active_council(); let (next_possible, count, coming) = - if let Some((tally_end, comers, leavers)) = Self::next_finalise() { + if let Some((tally_end, comers, leavers)) = Self::next_finalize() { // if there's a tally in progress, then next tally can begin immediately afterwards (tally_end, c.len() - leavers.len() + comers as usize, comers) } else { @@ -453,9 +453,9 @@ impl Module { } } } - if let Some((number, _, _)) = Self::next_finalise() { + if let Some((number, _, _)) = Self::next_finalize() { if block_number == number { - Self::finalise_tally()? + Self::finalize_tally()? } } Ok(()) @@ -477,13 +477,13 @@ impl Module { let retaining_seats = active_council.len() - expiring.len(); if retaining_seats < desired_seats { let empty_seats = desired_seats - retaining_seats; - >::put((number + Self::presentation_duration(), empty_seats as u32, expiring)); + >::put((number + Self::presentation_duration(), empty_seats as u32, expiring)); let voters = Self::voters(); let votes = voters.iter().map(T::Currency::total_balance).collect::>(); >::put(votes); - // initialise leaderboard. + // initialize leaderboard. let leaderboard_size = empty_seats + Self::carry_count() as usize; >::put(vec![(BalanceOf::::zero(), T::AccountId::default()); leaderboard_size]); @@ -491,14 +491,14 @@ impl Module { } } - /// Finalise the vote, removing each of the `removals` and inserting `seats` of the most approved + /// Finalize the vote, removing each of the `removals` and inserting `seats` of the most approved /// candidates in their place. If the total council members is less than the desired membership /// a new vote is started. /// Clears all presented candidates, returning the bond of the elected ones. - fn finalise_tally() -> Result { + fn finalize_tally() -> Result { >::kill(); let (_, coming, expiring): (T::BlockNumber, u32, Vec) = - >::take().ok_or("finalise can only be called after a tally is started.")?; + >::take().ok_or("finalize can only be called after a tally is started.")?; let leaderboard: Vec<(BalanceOf, T::AccountId)> = >::take().unwrap_or_default(); let new_expiry = >::block_number() + Self::term_duration(); @@ -548,7 +548,7 @@ impl Module { new_candidates.truncate(last_index + 1); } - Self::deposit_event(RawEvent::TallyFinalised(incoming, outgoing)); + Self::deposit_event(RawEvent::TallyFinalized(incoming, outgoing)); >::put(new_candidates); >::put(count); @@ -584,7 +584,7 @@ mod tests { assert_eq!(Council::active_council(), vec![]); assert_eq!(Council::next_tally(), Some(4)); assert_eq!(Council::presentation_active(), false); - assert_eq!(Council::next_finalise(), None); + assert_eq!(Council::next_finalize(), None); assert_eq!(Council::candidates(), Vec::::new()); assert_eq!(Council::is_a_candidate(&1), false); diff --git a/srml/council/src/voting.rs b/srml/council/src/voting.rs index 4c5c62dc83..37c1444a74 100644 --- a/srml/council/src/voting.rs +++ b/srml/council/src/voting.rs @@ -102,7 +102,7 @@ decl_module! { >::put(blocks); } - fn on_finalise(n: T::BlockNumber) { + fn on_finalize(n: T::BlockNumber) { if let Err(e) = Self::end_block(n) { print("Guru meditation"); print(e); diff --git a/srml/democracy/src/lib.rs b/srml/democracy/src/lib.rs index c6e87e29c4..2673e43460 100644 --- a/srml/democracy/src/lib.rs +++ b/srml/democracy/src/lib.rs @@ -153,7 +153,7 @@ decl_module! { Ok(()) } - fn on_finalise(n: T::BlockNumber) { + fn on_finalize(n: T::BlockNumber) { if let Err(e) = Self::end_block(n) { runtime_io::print(e); } @@ -306,7 +306,7 @@ impl Module { } /// Get the delegated voters for the current proposal. - /// I think this goes into a worker once https://github.com/paritytech/substrate/issues/1458 is done. + /// I think this goes into a worker once https://github.com/paritytech/substrate/issues/1458 is done. fn tally_delegation(ref_index: ReferendumIndex) -> (BalanceOf, BalanceOf, BalanceOf) { Self::voters_for(ref_index).iter() .fold((Zero::zero(), Zero::zero(), Zero::zero()), |(approve_acc, against_acc, capital_acc), voter| { @@ -625,7 +625,7 @@ mod tests { assert_eq!(Democracy::voters_for(r), vec![1]); assert_eq!(Democracy::vote_of((r, 1)), AYE); assert_eq!(Democracy::tally(r), (10, 0, 10)); - + assert_eq!(Democracy::end_block(System::block_number()), Ok(())); assert_eq!(Balances::free_balance(&42), 2); }); @@ -671,11 +671,11 @@ mod tests { System::set_block_number(2); let r = 0; - // Check behaviour with cycle. + // Check behavior with cycle. assert_ok!(Democracy::delegate(Origin::signed(2), 1, 100)); assert_ok!(Democracy::delegate(Origin::signed(3), 2, 100)); assert_ok!(Democracy::delegate(Origin::signed(1), 3, 100)); - + assert_ok!(Democracy::vote(Origin::signed(1), r, AYE)); assert_eq!(Democracy::referendum_count(), 1); diff --git a/srml/democracy/src/vote_threshold.rs b/srml/democracy/src/vote_threshold.rs index d436757539..5d9b2b742e 100644 --- a/srml/democracy/src/vote_threshold.rs +++ b/srml/democracy/src/vote_threshold.rs @@ -37,7 +37,7 @@ pub enum VoteThreshold { pub trait Approved { /// Given `approve` votes for and `against` votes against from a total electorate size of /// `electorate` (`electorate - (approve + against)` are abstainers), then returns true if the - /// overall outcome is in favour of approval. + /// overall outcome is in favor of approval. fn approved(&self, approve: Balance, against: Balance, voters: Balance, electorate: Balance) -> bool; } @@ -72,7 +72,7 @@ fn compare_rationals + Div + Rem + Mul + Div + Rem + Copy> Approved for VoteThreshold { /// Given `approve` votes for and `against` votes against from a total electorate size of /// `electorate` of whom `voters` voted (`electorate - voters` are abstainers) then returns true if the - /// overall outcome is in favour of approval. + /// overall outcome is in favor of approval. /// /// We assume each *voter* may cast more than one *vote*, hence `voters` is not necessarily equal to /// `approve + against`. diff --git a/srml/example/src/lib.rs b/srml/example/src/lib.rs index 6ceb6da236..8ba83bfd88 100644 --- a/srml/example/src/lib.rs +++ b/srml/example/src/lib.rs @@ -201,14 +201,14 @@ decl_module! { >::put(new_value); } - // The signature could also look like: `fn on_initialise()` - fn on_initialise(_n: T::BlockNumber) { + // The signature could also look like: `fn on_initialize()` + fn on_initialize(_n: T::BlockNumber) { // Anything that needs to be done at the start of the block. // We don't do anything here. } - // The signature could also look like: `fn on_finalise()` - fn on_finalise(_n: T::BlockNumber) { + // The signature could also look like: `fn on_finalize()` + fn on_finalize(_n: T::BlockNumber) { // Anything that needs to be done at the end of the block. // We just kill our dummy storage item. >::kill(); @@ -258,7 +258,7 @@ mod tests { // The testing primitives are very useful for avoiding having to work with signatures // or public keys. `u64` is used as the `AccountId` and no `Signature`s are requried. use sr_primitives::{ - BuildStorage, traits::{BlakeTwo256, OnInitialise, OnFinalise, IdentityLookup}, + BuildStorage, traits::{BlakeTwo256, OnInitialize, OnFinalize, IdentityLookup}, testing::{Digest, DigestItem, Header} }; @@ -323,12 +323,12 @@ mod tests { assert_ok!(Example::accumulate_dummy(Origin::signed(1), 27)); assert_eq!(Example::dummy(), Some(69)); - // Check that finalising the block removes Dummy from storage. - >::on_finalise(1); + // Check that finalizing the block removes Dummy from storage. + >::on_finalize(1); assert_eq!(Example::dummy(), None); // Check that accumulate works when we Dummy has None in it. - >::on_initialise(2); + >::on_initialize(2); assert_ok!(Example::accumulate_dummy(Origin::signed(1), 42)); assert_eq!(Example::dummy(), Some(42)); }); diff --git a/srml/executive/src/lib.rs b/srml/executive/src/lib.rs index 0fe4b9e33d..48908a01b3 100644 --- a/srml/executive/src/lib.rs +++ b/srml/executive/src/lib.rs @@ -22,8 +22,8 @@ use rstd::prelude::*; use rstd::marker::PhantomData; use rstd::result; use primitives::traits::{ - self, Header, Zero, One, Checkable, Applyable, CheckEqual, OnFinalise, - OnInitialise, Hash, As, Digest, NumberFor, Block as BlockT, OffchainWorker + self, Header, Zero, One, Checkable, Applyable, CheckEqual, OnFinalize, + OnInitialize, Hash, As, Digest, NumberFor, Block as BlockT, OffchainWorker }; use srml_support::{Dispatchable, traits::MakePayment}; use parity_codec::{Codec, Encode}; @@ -65,7 +65,7 @@ impl< Block: traits::Block, Context: Default, Payment: MakePayment, - AllModules: OnInitialise + OnFinalise + OffchainWorker, + AllModules: OnInitialize + OnFinalize + OffchainWorker, > ExecuteBlock for Executive where Block::Extrinsic: Checkable + Codec, >::Checked: Applyable, @@ -86,7 +86,7 @@ impl< Block: traits::Block, Context: Default, Payment: MakePayment, - AllModules: OnInitialise + OnFinalise + OffchainWorker, + AllModules: OnInitialize + OnFinalize + OffchainWorker, > Executive where Block::Extrinsic: Checkable + Codec, >::Checked: Applyable, @@ -94,13 +94,13 @@ impl< <<>::Checked as Applyable>::Call as Dispatchable>::Origin: From> { /// Start the execution of a particular block. - pub fn initialise_block(header: &System::Header) { - Self::initialise_block_impl(header.number(), header.parent_hash(), header.extrinsics_root()); + pub fn initialize_block(header: &System::Header) { + Self::initialize_block_impl(header.number(), header.parent_hash(), header.extrinsics_root()); } - fn initialise_block_impl(block_number: &System::BlockNumber, parent_hash: &System::Hash, extrinsics_root: &System::Hash) { - >::initialise(block_number, parent_hash, extrinsics_root); - >::on_initialise(*block_number); + fn initialize_block_impl(block_number: &System::BlockNumber, parent_hash: &System::Hash, extrinsics_root: &System::Hash) { + >::initialize(block_number, parent_hash, extrinsics_root); + >::on_initialize(*block_number); } fn initial_checks(block: &Block) { @@ -121,7 +121,7 @@ impl< /// Actually execute all transitioning for `block`. pub fn execute_block(block: Block) { - Self::initialise_block(block.header()); + Self::initialize_block(block.header()); // any initial checks Self::initial_checks(&block); @@ -140,7 +140,7 @@ impl< let parent_hash = ::Hashing::hash(b"parent_hash"); let extrinsics_root = ::Hashing::hash(b"extrinsics_root"); - Self::initialise_block_impl(&block_number, &parent_hash, &extrinsics_root); + Self::initialize_block_impl(&block_number, &parent_hash, &extrinsics_root); // execute extrinsics Self::execute_extrinsics_with_book_keeping(extrinsics, block_number); @@ -152,18 +152,18 @@ impl< // post-extrinsics book-keeping. >::note_finished_extrinsics(); - >::on_finalise(block_number); + >::on_finalize(block_number); } - /// Finalise the block - it is up the caller to ensure that all header fields are valid + /// Finalize the block - it is up the caller to ensure that all header fields are valid /// except state-root. - pub fn finalise_block() -> System::Header { + pub fn finalize_block() -> System::Header { >::note_finished_extrinsics(); - >::on_finalise(>::block_number()); + >::on_finalize(>::block_number()); // setup extrinsics >::derive_extrinsics(); - >::finalise() + >::finalize() } /// Apply extrinsic outside of the block execution function. @@ -241,7 +241,7 @@ impl< fn final_checks(header: &System::Header) { // remove temporaries. - let new_header = >::finalise(); + let new_header = >::finalize(); // check digest. assert_eq!( @@ -394,7 +394,7 @@ mod tests { let xt = primitives::testing::TestXt(Some(1), 0, Call::transfer(2, 69)); let mut t = runtime_io::TestExternalities::::new(t); with_externalities(&mut t, || { - Executive::initialise_block(&Header::new(1, H256::default(), H256::default(), + Executive::initialize_block(&Header::new(1, H256::default(), H256::default(), [69u8; 32].into(), Digest::default())); Executive::apply_extrinsic(xt).unwrap(); assert_eq!(>::total_balance(&1), 32); @@ -463,7 +463,7 @@ mod tests { let mut t = new_test_ext(); let xt = primitives::testing::TestXt(Some(1), 42, Call::transfer(33, 69)); with_externalities(&mut t, || { - Executive::initialise_block(&Header::new(1, H256::default(), H256::default(), [69u8; 32].into(), Digest::default())); + Executive::initialize_block(&Header::new(1, H256::default(), H256::default(), [69u8; 32].into(), Digest::default())); assert!(Executive::apply_extrinsic(xt).is_err()); assert_eq!(>::extrinsic_index(), Some(0)); }); @@ -478,7 +478,7 @@ mod tests { let encoded = xt2.encode(); let len = if should_fail { (internal::MAX_TRANSACTIONS_SIZE - 1) as usize } else { encoded.len() }; with_externalities(&mut t, || { - Executive::initialise_block(&Header::new(1, H256::default(), H256::default(), [69u8; 32].into(), Digest::default())); + Executive::initialize_block(&Header::new(1, H256::default(), H256::default(), [69u8; 32].into(), Digest::default())); assert_eq!(>::all_extrinsics_len(), 0); Executive::apply_extrinsic(xt).unwrap(); diff --git a/srml/finality-tracker/src/lib.rs b/srml/finality-tracker/src/lib.rs index 5f417881f7..34be4ea66a 100644 --- a/srml/finality-tracker/src/lib.rs +++ b/srml/finality-tracker/src/lib.rs @@ -126,7 +126,7 @@ decl_module! { ::Update::put(hint); } - fn on_finalise() { + fn on_finalize() { Self::update_hint(::Update::take()) } } @@ -262,7 +262,7 @@ mod tests { use sr_io::{with_externalities, TestExternalities}; use substrate_primitives::H256; use primitives::BuildStorage; - use primitives::traits::{BlakeTwo256, IdentityLookup, OnFinalise, Header as HeaderT}; + use primitives::traits::{BlakeTwo256, IdentityLookup, OnFinalize, Header as HeaderT}; use primitives::testing::{Digest, DigestItem, Header}; use srml_support::impl_outer_origin; use srml_system as system; @@ -344,9 +344,9 @@ mod tests { with_externalities(&mut TestExternalities::new(t), || { let mut parent_hash = System::parent_hash(); for i in 2..106 { - System::initialise(&i, &parent_hash, &Default::default()); - FinalityTracker::on_finalise(i); - let hdr = System::finalise(); + System::initialize(&i, &parent_hash, &Default::default()); + FinalityTracker::on_finalize(i); + let hdr = System::finalize(); parent_hash = hdr.hash(); } @@ -369,13 +369,13 @@ mod tests { with_externalities(&mut TestExternalities::new(t), || { let mut parent_hash = System::parent_hash(); for i in 2..106 { - System::initialise(&i, &parent_hash, &Default::default()); + System::initialize(&i, &parent_hash, &Default::default()); assert_ok!(FinalityTracker::dispatch( Call::final_hint(i-1), Origin::INHERENT, )); - FinalityTracker::on_finalise(i); - let hdr = System::finalise(); + FinalityTracker::on_finalize(i); + let hdr = System::finalize(); parent_hash = hdr.hash(); } diff --git a/srml/grandpa/src/lib.rs b/srml/grandpa/src/lib.rs index 3c85756e96..e9b00662d6 100644 --- a/srml/grandpa/src/lib.rs +++ b/srml/grandpa/src/lib.rs @@ -73,7 +73,7 @@ pub trait GrandpaChangeSignal { #[cfg_attr(feature = "std", derive(Serialize, Debug))] #[derive(Encode, Decode, PartialEq, Eq, Clone)] pub enum RawLog { - /// Authorities set change has been signalled. Contains the new set of authorities + /// Authorities set change has been signaled. Contains the new set of authorities /// and the delay in blocks _to finalize_ before applying. AuthoritiesChangeSignal(N, Vec<(SessionKey, u64)>), /// A forced authorities set change. Contains in this order: the median last @@ -185,7 +185,7 @@ decl_event!( decl_storage! { trait Store for Module as GrandpaFinality { - // Pending change: (signalled at, scheduled change). + // Pending change: (signaled at, scheduled change). PendingChange get(pending_change): Option>; // next block number where we can force a change. NextForced get(next_forced): Option; @@ -215,13 +215,13 @@ decl_module! { pub struct Module for enum Call where origin: T::Origin { fn deposit_event() = default; - /// Report some misbehaviour. + /// Report some misbehavior. fn report_misbehavior(origin, _report: Vec) { ensure_signed(origin)?; // FIXME: https://github.com/paritytech/substrate/issues/1112 } - fn on_finalise(block_number: T::BlockNumber) { + fn on_finalize(block_number: T::BlockNumber) { if let Some(pending_change) = >::get() { if block_number == pending_change.scheduled_at { if let Some(median) = pending_change.forced { @@ -268,7 +268,7 @@ impl Module { /// indicates the median last finalized block number and it should be used /// as the canon block when starting the new grandpa voter. /// - /// No change should be signalled while any change is pending. Returns + /// No change should be signaled while any change is pending. Returns /// an error if a change is already pending. pub fn schedule_change( next_authorities: Vec<(T::SessionKey, u64)>, diff --git a/srml/grandpa/src/tests.rs b/srml/grandpa/src/tests.rs index 37902cfb17..3050b6a572 100644 --- a/srml/grandpa/src/tests.rs +++ b/srml/grandpa/src/tests.rs @@ -18,7 +18,7 @@ #![cfg(test)] -use primitives::{testing, traits::OnFinalise}; +use primitives::{testing, traits::OnFinalize}; use primitives::traits::Header; use runtime_io::with_externalities; use crate::mock::{Grandpa, System, new_test_ext}; @@ -30,13 +30,13 @@ use super::*; #[test] fn authorities_change_logged() { with_externalities(&mut new_test_ext(vec![(1, 1), (2, 1), (3, 1)]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); Grandpa::schedule_change(vec![(4, 1), (5, 1), (6, 1)], 0, None).unwrap(); System::note_finished_extrinsics(); - Grandpa::on_finalise(1); + Grandpa::on_finalize(1); - let header = System::finalise(); + let header = System::finalize(); assert_eq!(header.digest, testing::Digest { logs: vec![ RawLog::AuthoritiesChangeSignal(0, vec![(4, 1), (5, 1), (6, 1)]).into(), @@ -55,10 +55,10 @@ fn authorities_change_logged() { #[test] fn authorities_change_logged_after_delay() { with_externalities(&mut new_test_ext(vec![(1, 1), (2, 1), (3, 1)]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); Grandpa::schedule_change(vec![(4, 1), (5, 1), (6, 1)], 1, None).unwrap(); - Grandpa::on_finalise(1); - let header = System::finalise(); + Grandpa::on_finalize(1); + let header = System::finalize(); assert_eq!(header.digest, testing::Digest { logs: vec![ RawLog::AuthoritiesChangeSignal(1, vec![(4, 1), (5, 1), (6, 1)]).into(), @@ -68,11 +68,11 @@ fn authorities_change_logged_after_delay() { // no change at this height. assert_eq!(System::events(), vec![]); - System::initialise(&2, &header.hash(), &Default::default()); + System::initialize(&2, &header.hash(), &Default::default()); System::note_finished_extrinsics(); - Grandpa::on_finalise(2); + Grandpa::on_finalize(2); - let _header = System::finalise(); + let _header = System::finalize(); assert_eq!(System::events(), vec![ EventRecord { phase: Phase::Finalization, @@ -85,27 +85,27 @@ fn authorities_change_logged_after_delay() { #[test] fn cannot_schedule_change_when_one_pending() { with_externalities(&mut new_test_ext(vec![(1, 1), (2, 1), (3, 1)]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); Grandpa::schedule_change(vec![(4, 1), (5, 1), (6, 1)], 1, None).unwrap(); assert!(Grandpa::pending_change().is_some()); assert!(Grandpa::schedule_change(vec![(5, 1)], 1, None).is_err()); - Grandpa::on_finalise(1); - let header = System::finalise(); + Grandpa::on_finalize(1); + let header = System::finalize(); - System::initialise(&2, &header.hash(), &Default::default()); + System::initialize(&2, &header.hash(), &Default::default()); assert!(Grandpa::pending_change().is_some()); assert!(Grandpa::schedule_change(vec![(5, 1)], 1, None).is_err()); - Grandpa::on_finalise(2); - let header = System::finalise(); + Grandpa::on_finalize(2); + let header = System::finalize(); - System::initialise(&3, &header.hash(), &Default::default()); + System::initialize(&3, &header.hash(), &Default::default()); assert!(Grandpa::pending_change().is_none()); assert!(Grandpa::schedule_change(vec![(5, 1)], 1, None).is_ok()); - Grandpa::on_finalise(3); - let _header = System::finalise(); + Grandpa::on_finalize(3); + let _header = System::finalize(); }); } @@ -128,7 +128,7 @@ fn new_decodes_from_old() { #[test] fn dispatch_forced_change() { with_externalities(&mut new_test_ext(vec![(1, 1), (2, 1), (3, 1)]), || { - System::initialise(&1, &Default::default(), &Default::default()); + System::initialize(&1, &Default::default(), &Default::default()); Grandpa::schedule_change( vec![(4, 1), (5, 1), (6, 1)], 5, @@ -138,60 +138,60 @@ fn dispatch_forced_change() { assert!(Grandpa::pending_change().is_some()); assert!(Grandpa::schedule_change(vec![(5, 1)], 1, Some(0)).is_err()); - Grandpa::on_finalise(1); - let mut header = System::finalise(); + Grandpa::on_finalize(1); + let mut header = System::finalize(); for i in 2..7 { - System::initialise(&i, &header.hash(), &Default::default()); + System::initialize(&i, &header.hash(), &Default::default()); assert!(Grandpa::pending_change().unwrap().forced.is_some()); assert_eq!(Grandpa::next_forced(), Some(11)); assert!(Grandpa::schedule_change(vec![(5, 1)], 1, None).is_err()); assert!(Grandpa::schedule_change(vec![(5, 1)], 1, Some(0)).is_err()); - Grandpa::on_finalise(i); - header = System::finalise(); + Grandpa::on_finalize(i); + header = System::finalize(); } // change has been applied at the end of block 6. // add a normal change. { - System::initialise(&7, &header.hash(), &Default::default()); + System::initialize(&7, &header.hash(), &Default::default()); assert!(Grandpa::pending_change().is_none()); assert_eq!(Grandpa::grandpa_authorities(), vec![(4, 1), (5, 1), (6, 1)]); assert!(Grandpa::schedule_change(vec![(5, 1)], 1, None).is_ok()); - Grandpa::on_finalise(7); - header = System::finalise(); + Grandpa::on_finalize(7); + header = System::finalize(); } // run the normal change. { - System::initialise(&8, &header.hash(), &Default::default()); + System::initialize(&8, &header.hash(), &Default::default()); assert!(Grandpa::pending_change().is_some()); assert_eq!(Grandpa::grandpa_authorities(), vec![(4, 1), (5, 1), (6, 1)]); assert!(Grandpa::schedule_change(vec![(5, 1)], 1, None).is_err()); - Grandpa::on_finalise(8); - header = System::finalise(); + Grandpa::on_finalize(8); + header = System::finalize(); } // normal change applied. but we can't apply a new forced change for some // time. for i in 9..11 { - System::initialise(&i, &header.hash(), &Default::default()); + System::initialize(&i, &header.hash(), &Default::default()); assert!(Grandpa::pending_change().is_none()); assert_eq!(Grandpa::grandpa_authorities(), vec![(5, 1)]); assert_eq!(Grandpa::next_forced(), Some(11)); assert!(Grandpa::schedule_change(vec![(5, 1), (6, 1)], 5, Some(0)).is_err()); - Grandpa::on_finalise(i); - header = System::finalise(); + Grandpa::on_finalize(i); + header = System::finalize(); } { - System::initialise(&11, &header.hash(), &Default::default()); + System::initialize(&11, &header.hash(), &Default::default()); assert!(Grandpa::pending_change().is_none()); assert!(Grandpa::schedule_change(vec![(5, 1), (6, 1), (7, 1)], 5, Some(0)).is_ok()); assert_eq!(Grandpa::next_forced(), Some(21)); - Grandpa::on_finalise(11); - header = System::finalise(); + Grandpa::on_finalize(11); + header = System::finalize(); } let _ = header; }); diff --git a/srml/session/src/lib.rs b/srml/session/src/lib.rs index 9143931b98..3d07b53e2e 100644 --- a/srml/session/src/lib.rs +++ b/srml/session/src/lib.rs @@ -78,7 +78,7 @@ decl_module! { Self::apply_force_new_session(apply_rewards) } - fn on_finalise(n: T::BlockNumber) { + fn on_finalize(n: T::BlockNumber) { Self::check_rotate_session(n); } } diff --git a/srml/staking/src/lib.rs b/srml/staking/src/lib.rs index 21cc6cbf9d..018be8f5c8 100644 --- a/srml/staking/src/lib.rs +++ b/srml/staking/src/lib.rs @@ -414,7 +414,7 @@ decl_storage! { /// The length of the bonding duration in blocks. pub BondingDuration get(bonding_duration) config(): T::BlockNumber = T::BlockNumber::sa(1000); - /// Any validators that may never be slashed or forcibly kicked. It's a Vec since they're easy to initialise + /// Any validators that may never be slashed or forcibly kicked. It's a Vec since they're easy to initialize /// and the performance hit is minimal (we expect no more than four invulnerables) and restricted to testnets. pub Invulnerables get(invulnerables) config(): Vec; @@ -915,7 +915,7 @@ impl Module { Self::slashable_balance_of, min_validator_count, ElectionConfig::> { - equalise: false, + equalize: false, tolerance: >::sa(10 as u64), iterations: 10, } @@ -960,7 +960,7 @@ impl Module { } /// Call when a validator is determined to be offline. `count` is the - /// number of offences the validator has committed. + /// number of offenses the validator has committed. /// /// NOTE: This is called with the controller (not the stash) account id. pub fn on_offline_validator(controller: T::AccountId, count: usize) { diff --git a/srml/staking/src/phragmen.rs b/srml/staking/src/phragmen.rs index 9c388e5184..8d59562f69 100644 --- a/srml/staking/src/phragmen.rs +++ b/srml/staking/src/phragmen.rs @@ -26,11 +26,11 @@ use crate::{Exposure, BalanceOf, Trait, ValidatorPrefs, IndividualExposure}; /// Configure the behavior of the Phragmen election. /// Might be deprecated. pub struct ElectionConfig { - /// Perform equalise?. - pub equalise: bool, - /// Number of equalise iterations. + /// Perform equalize?. + pub equalize: bool, + /// Number of equalize iterations. pub iterations: usize, - /// Tolerance of max change per equalise iteration. + /// Tolerance of max change per equalize iteration. pub tolerance: Balance, } @@ -48,7 +48,7 @@ pub struct Candidate { approval_stake: Balance, /// Flag for being elected. elected: bool, - /// This is most often equal to `Exposure.total` but not always. Needed for [`equalise`] + /// This is most often equal to `Exposure.total` but not always. Needed for [`equalize`] backing_stake: Balance } @@ -78,9 +78,9 @@ pub struct Edge { backing_stake: Balance, /// Index of the candidate stored in the 'candidates' vector candidate_index: usize, - /// Index of the candidate stored in the 'elected_candidates' vector. Used only with equalise. + /// Index of the candidate stored in the 'elected_candidates' vector. Used only with equalize. elected_idx: usize, - /// Indicates if this edge is a vote for an elected candidate. Used only with equalise. + /// Indicates if this edge is a vote for an elected candidate. Used only with equalize. elected: bool, } @@ -223,10 +223,10 @@ pub fn elect( } } - // Optionally perform equalise post-processing. - if config.equalise { + // Optionally perform equalize post-processing. + if config.equalize { let tolerance = config.tolerance; - let equalise_iterations = config.iterations; + let equalize_iterations = config.iterations; // Fix indexes nominators.iter_mut().for_each(|n| { @@ -237,10 +237,10 @@ pub fn elect( }); }); - for _i in 0..equalise_iterations { + for _i in 0..equalize_iterations { let mut max_diff = >::zero(); nominators.iter_mut().for_each(|mut n| { - let diff = equalise::(&mut n, &mut elected_candidates, tolerance); + let diff = equalize::(&mut n, &mut elected_candidates, tolerance); if diff > max_diff { max_diff = diff; } @@ -274,7 +274,7 @@ pub fn elect( Some(elected_candidates) } -pub fn equalise( +pub fn equalize( nominator: &mut Nominator>, elected_candidates: &mut Vec>>, tolerance: BalanceOf diff --git a/srml/staking/src/tests.rs b/srml/staking/src/tests.rs index e8716c13fb..6f3d504c06 100644 --- a/srml/staking/src/tests.rs +++ b/srml/staking/src/tests.rs @@ -1525,7 +1525,7 @@ fn phragmen_election_works_example_2() { Staking::slashable_balance_of, min_validator_count, ElectionConfig::> { - equalise: true, + equalize: true, tolerance: >::sa(10 as u64), iterations: 10, } @@ -1806,7 +1806,7 @@ fn bond_with_little_staked_value() { #[test] #[ignore] // Enable this once post-processing is on. -fn phragmen_linear_worse_case_equalise() { +fn phragmen_linear_worse_case_equalize() { with_externalities(&mut ExtBuilder::default() .nominate(false) .validator_pool(true) diff --git a/srml/support/src/dispatch.rs b/srml/support/src/dispatch.rs index c85415b25c..64ea5938c4 100644 --- a/srml/support/src/dispatch.rs +++ b/srml/support/src/dispatch.rs @@ -89,7 +89,7 @@ impl Parameter for T where T: Codec + Clone + Eq {} /// corresponding to a function of the module. This enum implements Callable and thus its values /// can be used as an extrinsic's payload. /// -/// The `on_initialise` and `on_finalise` functions are special, since it can either take no +/// The `on_initialize` and `on_finalize` functions are special, since it can either take no /// parameters, or one parameter, which has the runtime's block number type. /// /// ### Module with instances @@ -147,8 +147,8 @@ macro_rules! decl_module { 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 )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* @@ -160,8 +160,8 @@ macro_rules! decl_module { 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 $(, $dpeg_instance)?>)* () = default; } - { $( $on_initialise )* } - { $( $on_finalise )* } + { $( $on_initialize )* } + { $( $on_finalize )* } { $( $offchain )* } [ $($t)* ] $($rest)* @@ -172,8 +172,8 @@ macro_rules! decl_module { 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 )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* @@ -187,8 +187,8 @@ macro_rules! decl_module { 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 $(, $dpeg_instance)?>)* ($( $param_name: $param ),* ) { $( $impl )* } } - { $( $on_initialise )* } - { $( $on_finalise )* } + { $( $on_initialize )* } + { $( $on_finalize )* } { $( $offchain )* } [ $($t)* ] $($rest)* @@ -199,12 +199,12 @@ macro_rules! decl_module { 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 )* } + { $( $on_initialize:tt )* } {} { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* - fn on_finalise($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } + fn on_finalize($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } $($rest:tt)* ) => { $crate::decl_module!(@normalize @@ -212,8 +212,8 @@ macro_rules! decl_module { 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 )* } - { fn on_finalise( $( $param_name : $param ),* ) { $( $impl )* } } + { $( $on_initialize )* } + { fn on_finalize( $( $param_name : $param ),* ) { $( $impl )* } } { $( $offchain )* } [ $($t)* ] $($rest)* @@ -225,11 +225,11 @@ macro_rules! decl_module { for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } {} - { $( $on_finalise:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* - fn on_initialise($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } + fn on_initialize($($param_name:ident : $param:ty),* ) { $( $impl:tt )* } $($rest:tt)* ) => { $crate::decl_module!(@normalize @@ -237,8 +237,8 @@ macro_rules! decl_module { 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 )* } } - { $( $on_finalise )* } + { fn on_initialize( $( $param_name : $param ),* ) { $( $impl )* } } + { $( $on_finalize )* } { $( $offchain )* } [ $($t)* ] $($rest)* @@ -249,8 +249,8 @@ macro_rules! decl_module { pub struct $mod_type:ident<$trait_instance:ident: $trait_name:ident> for enum $call_type:ident where origin: $origin_type:ty, system = $system:ident { $( $deposit_event:tt )* } - { $( $on_initialise:tt )* } - { $( $on_finalise:tt )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* @@ -262,8 +262,8 @@ macro_rules! decl_module { pub struct $mod_type<$trait_instance: $trait_name> for enum $call_type where origin: $origin_type, system = $system { $( $deposit_event )* } - { $( $on_initialise )* } - { $( $on_finalise )* } + { $( $on_initialize )* } + { $( $on_finalize )* } { fn offchain_worker( $( $param_name : $param ),* ) { $( $impl )* } } [ $($t)* ] $($rest)* @@ -274,8 +274,8 @@ macro_rules! decl_module { 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 )* } - { $( $on_finalise:tt )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* @@ -289,8 +289,8 @@ macro_rules! decl_module { 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 )* } - { $( $on_finalise )* } + { $( $on_initialize )* } + { $( $on_finalize )* } { $( $offchain )* } [ $($t)* @@ -308,8 +308,8 @@ macro_rules! decl_module { 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 )* } - { $( $on_finalise:tt )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* @@ -329,8 +329,8 @@ macro_rules! decl_module { 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 )* } - { $( $on_finalise:tt )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* @@ -350,8 +350,8 @@ macro_rules! decl_module { 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 )* } - { $( $on_finalise:tt )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } [ $($t:tt)* ] $(#[doc = $doc_attr:tt])* @@ -365,8 +365,8 @@ macro_rules! decl_module { 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 )* } - { $( $on_finalise )* } + { $( $on_initialize )* } + { $( $on_finalize )* } { $( $offchain )* } [ $($t)* @@ -384,8 +384,8 @@ macro_rules! decl_module { 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 )* } - { $( $on_finalise:tt )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } [ $($t:tt)* ] ) => { @@ -396,8 +396,8 @@ macro_rules! decl_module { $($t)* } { $( $deposit_event )* } - { $( $on_initialise )* } - { $( $on_finalise )* } + { $( $on_initialize )* } + { $( $on_finalize )* } { $( $offchain )* } ); }; @@ -453,68 +453,68 @@ macro_rules! decl_module { } }; - (@impl_on_initialise + (@impl_on_initialize $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; - fn on_initialise() { $( $impl:tt )* } + fn on_initialize() { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> - $crate::runtime_primitives::traits::OnInitialise<$trait_instance::BlockNumber> + $crate::runtime_primitives::traits::OnInitialize<$trait_instance::BlockNumber> for $module<$trait_instance$(, $instance)?> { - fn on_initialise(_block_number_not_used: $trait_instance::BlockNumber) { $( $impl )* } + fn on_initialize(_block_number_not_used: $trait_instance::BlockNumber) { $( $impl )* } } }; - (@impl_on_initialise + (@impl_on_initialize $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; - fn on_initialise($param:ident : $param_ty:ty) { $( $impl:tt )* } + fn on_initialize($param:ident : $param_ty:ty) { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> - $crate::runtime_primitives::traits::OnInitialise<$trait_instance::BlockNumber> + $crate::runtime_primitives::traits::OnInitialize<$trait_instance::BlockNumber> for $module<$trait_instance$(, $instance)?> { - fn on_initialise($param: $param_ty) { $( $impl )* } + fn on_initialize($param: $param_ty) { $( $impl )* } } }; - (@impl_on_initialise + (@impl_on_initialize $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; ) => { impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> - $crate::runtime_primitives::traits::OnInitialise<$trait_instance::BlockNumber> + $crate::runtime_primitives::traits::OnInitialize<$trait_instance::BlockNumber> for $module<$trait_instance$(, $instance)?> {} }; - (@impl_on_finalise + (@impl_on_finalize $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; - fn on_finalise() { $( $impl:tt )* } + fn on_finalize() { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> - $crate::runtime_primitives::traits::OnFinalise<$trait_instance::BlockNumber> + $crate::runtime_primitives::traits::OnFinalize<$trait_instance::BlockNumber> for $module<$trait_instance$(, $instance)?> { - fn on_finalise(_block_number_not_used: $trait_instance::BlockNumber) { $( $impl )* } + fn on_finalize(_block_number_not_used: $trait_instance::BlockNumber) { $( $impl )* } } }; - (@impl_on_finalise + (@impl_on_finalize $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; - fn on_finalise($param:ident : $param_ty:ty) { $( $impl:tt )* } + fn on_finalize($param:ident : $param_ty:ty) { $( $impl:tt )* } ) => { impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> - $crate::runtime_primitives::traits::OnFinalise<$trait_instance::BlockNumber> + $crate::runtime_primitives::traits::OnFinalize<$trait_instance::BlockNumber> for $module<$trait_instance$(, $instance)?> { - fn on_finalise($param: $param_ty) { $( $impl )* } + fn on_finalize($param: $param_ty) { $( $impl )* } } }; - (@impl_on_finalise + (@impl_on_finalize $module:ident<$trait_instance:ident: $trait_name:ident$(, $instance:ident: $instantiable:path)?>; ) => { impl<$trait_instance: $trait_name$(, $instance: $instantiable)?> - $crate::runtime_primitives::traits::OnFinalise<$trait_instance::BlockNumber> + $crate::runtime_primitives::traits::OnFinalize<$trait_instance::BlockNumber> for $module<$trait_instance$(, $instance)?> { } @@ -630,8 +630,8 @@ macro_rules! decl_module { )* } { $( $deposit_event:tt )* } - { $( $on_initialise:tt )* } - { $( $on_finalise:tt )* } + { $( $on_initialize:tt )* } + { $( $on_finalize:tt )* } { $( $offchain:tt )* } ) => { // Workaround for https://github.com/rust-lang/rust/issues/26925 . Remove when sorted. @@ -650,15 +650,15 @@ macro_rules! decl_module { pub struct $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable $( = $module_default_instance)?)?>(::core::marker::PhantomData<($trait_instance $(, $instance)?)>); $crate::decl_module! { - @impl_on_initialise + @impl_on_initialize $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; - $( $on_initialise )* + $( $on_initialize )* } $crate::decl_module! { - @impl_on_finalise + @impl_on_finalize $mod_type<$trait_instance: $trait_name $(, $instance: $instantiable)?>; - $( $on_finalise )* + $( $on_finalize )* } $crate::decl_module! { @@ -1143,7 +1143,7 @@ macro_rules! __function_to_metadata { #[allow(dead_code)] mod tests { use super::*; - use crate::runtime_primitives::traits::{OnInitialise, OnFinalise}; + use crate::runtime_primitives::traits::{OnInitialize, OnFinalize}; pub trait Trait { type Origin; @@ -1167,8 +1167,8 @@ mod tests { fn aux_3() -> Result { unreachable!() } fn aux_4(_data: i32) -> Result { unreachable!() } - fn on_initialise(n: T::BlockNumber) { if n.into() == 42 { panic!("on_initialise") } } - fn on_finalise(n: T::BlockNumber) { if n.into() == 42 { panic!("on_finalise") } } + fn on_initialize(n: T::BlockNumber) { if n.into() == 42 { panic!("on_initialize") } } + fn on_finalize(n: T::BlockNumber) { if n.into() == 42 { panic!("on_finalize") } } fn offchain_worker() {} } } @@ -1243,14 +1243,14 @@ mod tests { } #[test] - #[should_panic(expected = "on_initialise")] - fn on_initialise_should_work() { - as OnInitialise>::on_initialise(42); + #[should_panic(expected = "on_initialize")] + fn on_initialize_should_work() { + as OnInitialize>::on_initialize(42); } #[test] - #[should_panic(expected = "on_finalise")] - fn on_finalise_should_work() { - as OnFinalise>::on_finalise(42); + #[should_panic(expected = "on_finalize")] + fn on_finalize_should_work() { + as OnFinalize>::on_finalize(42); } } diff --git a/srml/support/src/lib.rs b/srml/support/src/lib.rs index cbbdcc7e4c..d20af28f5b 100644 --- a/srml/support/src/lib.rs +++ b/srml/support/src/lib.rs @@ -193,7 +193,7 @@ mod tests { #[test] fn linked_map_basic_insert_remove_should_work() { with_externalities(&mut new_test_ext(), || { - // initialised during genesis + // initialized during genesis assert_eq!(Map::get(&15u32), 42u64); // get / insert / take @@ -272,7 +272,7 @@ mod tests { fn double_map_basic_insert_remove_remove_prefix_should_work() { with_externalities(&mut new_test_ext(), || { type DoubleMap = DataDM; - // initialised during genesis + // initialized during genesis assert_eq!(DoubleMap::get(&15u32, &16u32), 42u64); // get / insert / take diff --git a/srml/support/src/storage/generator.rs b/srml/support/src/storage/generator.rs index 18bc769d82..97bfc6dc20 100644 --- a/srml/support/src/storage/generator.rs +++ b/srml/support/src/storage/generator.rs @@ -227,7 +227,7 @@ pub trait EnumerableStorageMap: StorageMap(storage: &'a S) -> Box + 'a> where K: 'a, V: 'a; } -// FIXME #1466 Remove this in favour of `decl_storage` macro. +// FIXME #1466 Remove this in favor of `decl_storage` macro. /// Declares strongly-typed wrappers around codec-compatible types in storage. #[macro_export] macro_rules! storage_items { diff --git a/srml/system/src/lib.rs b/srml/system/src/lib.rs index cf4dedbca6..f226fcb7d1 100644 --- a/srml/system/src/lib.rs +++ b/srml/system/src/lib.rs @@ -380,7 +380,7 @@ impl Module { } /// Start the execution of a particular block. - pub fn initialise(number: &T::BlockNumber, parent_hash: &T::Hash, txs_root: &T::Hash) { + pub fn initialize(number: &T::BlockNumber, parent_hash: &T::Hash, txs_root: &T::Hash) { // populate environment. storage::unhashed::put(well_known_keys::EXTRINSIC_INDEX, &0u32); >::put(number); @@ -392,7 +392,7 @@ impl Module { } /// Remove temporary "environment" entries in storage. - pub fn finalise() -> T::Header { + pub fn finalize() -> T::Header { >::kill(); >::kill(); >::kill(); @@ -448,7 +448,7 @@ impl Module { } /// Set the block number to something in particular. Can be used as an alternative to - /// `initialise` for tests that don't need to bother with the other environment entries. + /// `initialize` for tests that don't need to bother with the other environment entries. #[cfg(any(feature = "std", test))] pub fn set_block_number(n: T::BlockNumber) { >::put(n); @@ -461,14 +461,14 @@ impl Module { } /// Set the parent hash number to something in particular. Can be used as an alternative to - /// `initialise` for tests that don't need to bother with the other environment entries. + /// `initialize` for tests that don't need to bother with the other environment entries. #[cfg(any(feature = "std", test))] pub fn set_parent_hash(n: T::Hash) { >::put(n); } /// Set the random seed to something in particular. Can be used as an alternative to - /// `initialise` for tests that don't need to bother with the other environment entries. + /// `initialize` for tests that don't need to bother with the other environment entries. #[cfg(any(feature = "std", test))] pub fn set_random_seed(seed: T::Hash) { >::put(seed); @@ -595,19 +595,19 @@ mod tests { #[test] fn deposit_event_should_work() { with_externalities(&mut new_test_ext(), || { - System::initialise(&1, &[0u8; 32].into(), &[0u8; 32].into()); + System::initialize(&1, &[0u8; 32].into(), &[0u8; 32].into()); System::note_finished_extrinsics(); System::deposit_event(1u16); - System::finalise(); + System::finalize(); assert_eq!(System::events(), vec![EventRecord { phase: Phase::Finalization, event: 1u16 }]); - System::initialise(&2, &[0u8; 32].into(), &[0u8; 32].into()); + System::initialize(&2, &[0u8; 32].into(), &[0u8; 32].into()); System::deposit_event(42u16); System::note_applied_extrinsic(&Ok(()), 0); System::note_applied_extrinsic(&Err(""), 0); System::note_finished_extrinsics(); System::deposit_event(3u16); - System::finalise(); + System::finalize(); assert_eq!(System::events(), vec![ EventRecord { phase: Phase::ApplyExtrinsic(0), event: 42u16 }, EventRecord { phase: Phase::ApplyExtrinsic(0), event: 100u16 }, diff --git a/srml/timestamp/src/lib.rs b/srml/timestamp/src/lib.rs index 7511d5bf2f..43cf669e7e 100644 --- a/srml/timestamp/src/lib.rs +++ b/srml/timestamp/src/lib.rs @@ -229,7 +229,7 @@ decl_module! { // Manage upgrade. Remove after all networks upgraded. // TODO: #2133 - fn on_initialise() { + fn on_initialize() { if let Some(period) = >::take() { if !>::exists() { >::put(period) @@ -237,7 +237,7 @@ decl_module! { } } - fn on_finalise() { + fn on_finalize() { assert!(::DidUpdate::take(), "Timestamp must be updated once in the block"); } } diff --git a/srml/treasury/src/lib.rs b/srml/treasury/src/lib.rs index 6cb257f034..b96928d7f8 100644 --- a/srml/treasury/src/lib.rs +++ b/srml/treasury/src/lib.rs @@ -117,7 +117,7 @@ decl_module! { >::mutate(|v| v.push(proposal_id)); } - fn on_finalise(n: T::BlockNumber) { + fn on_finalize(n: T::BlockNumber) { // Check to see if we should spend some funds! if (n % Self::spend_period()).is_zero() { Self::spend_funds(); @@ -264,7 +264,7 @@ mod tests { use srml_support::{impl_outer_origin, assert_ok, assert_noop}; use substrate_primitives::{H256, Blake2Hasher}; use runtime_primitives::BuildStorage; - use runtime_primitives::traits::{BlakeTwo256, OnFinalise, IdentityLookup}; + use runtime_primitives::traits::{BlakeTwo256, OnFinalize, IdentityLookup}; use runtime_primitives::testing::{Digest, DigestItem, Header}; impl_outer_origin! { @@ -380,7 +380,7 @@ mod tests { assert_ok!(Treasury::propose_spend(Origin::signed(0), 100, 3)); assert_ok!(Treasury::approve_proposal(Origin::ROOT, 0)); - >::on_finalise(1); + >::on_finalize(1); assert_eq!(Balances::free_balance(&3), 0); assert_eq!(Treasury::pot(), 100); }); @@ -391,7 +391,7 @@ mod tests { with_externalities(&mut new_test_ext(), || { Treasury::on_dilution(100, 100); - >::on_finalise(2); + >::on_finalize(2); assert_eq!(Treasury::pot(), 50); }); } @@ -404,7 +404,7 @@ mod tests { assert_ok!(Treasury::propose_spend(Origin::signed(0), 100, 3)); assert_ok!(Treasury::reject_proposal(Origin::ROOT, 0)); - >::on_finalise(2); + >::on_finalize(2); assert_eq!(Balances::free_balance(&3), 0); assert_eq!(Treasury::pot(), 50); }); @@ -454,7 +454,7 @@ mod tests { assert_ok!(Treasury::propose_spend(Origin::signed(0), 100, 3)); assert_ok!(Treasury::approve_proposal(Origin::ROOT, 0)); - >::on_finalise(2); + >::on_finalize(2); assert_eq!(Balances::free_balance(&3), 100); assert_eq!(Treasury::pot(), 0); }); @@ -468,11 +468,11 @@ mod tests { assert_ok!(Treasury::propose_spend(Origin::signed(0), 150, 3)); assert_ok!(Treasury::approve_proposal(Origin::ROOT, 0)); - >::on_finalise(2); + >::on_finalize(2); assert_eq!(Treasury::pot(), 100); Treasury::on_dilution(100, 100); - >::on_finalise(4); + >::on_finalize(4); assert_eq!(Balances::free_balance(&3), 150); assert_eq!(Treasury::pot(), 25); }); -- GitLab From 6efb74bed7fa9a6cf457ea7ccab672868ceaa500 Mon Sep 17 00:00:00 2001 From: Gav Wood Date: Fri, 29 Mar 2019 15:44:57 +0100 Subject: [PATCH 111/120] Use a context prefix for SS58 hash (#2141) * Update to final ss58 spec * Fix tests * Rebuild --- core/primitives/src/crypto.rs | 21 +++++++++++++----- core/primitives/src/ed25519.rs | 7 ------ core/primitives/src/sr25519.rs | 7 ------ .../substrate_test_runtime.compact.wasm | Bin 60132 -> 60075 bytes node/runtime/src/lib.rs | 2 +- .../release/node_runtime.compact.wasm | Bin 940061 -> 940330 bytes 6 files changed, 17 insertions(+), 20 deletions(-) diff --git a/core/primitives/src/crypto.rs b/core/primitives/src/crypto.rs index 82b36d8a97..cbe9fe208d 100644 --- a/core/primitives/src/crypto.rs +++ b/core/primitives/src/crypto.rs @@ -25,11 +25,11 @@ use regex::Regex; #[cfg(feature = "std")] use base58::{FromBase58, ToBase58}; -/// The root phrase for our publically known keys. +/// The root phrase for our publicly known keys. pub const DEV_PHRASE: &str = "bottom drive obey lake curtain smoke basket hold race lonely fit walk"; -/// The address of the associated root phrase for our publically known keys. -pub const DEV_ADDRESS: &str = "5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqAS7"; +/// The address of the associated root phrase for our publicly known keys. +pub const DEV_ADDRESS: &str = "5DfhGyQdFobKM8NsWvEeAKk5EQQgYe9AydgJ7rMB6E1EqRzV"; /// The infallible type. #[derive(Debug)] @@ -218,6 +218,16 @@ pub trait Derive: Sized { fn derive>(&self, _path: Iter) -> Option { None } } +const PREFIX: &[u8] = b"SS58PRE"; + +#[cfg(feature = "std")] +fn ss58hash(data: &[u8]) -> blake2_rfc::blake2b::Blake2bResult { + let mut context = blake2_rfc::blake2b::Blake2b::new(64); + context.update(PREFIX); + context.update(data); + context.finalize() +} + #[cfg(feature = "std")] impl + AsRef<[u8]> + Default + Derive> Ss58Codec for T { fn from_ss58check(s: &str) -> Result { @@ -232,7 +242,8 @@ impl + AsRef<[u8]> + Default + Derive> Ss58Codec for T { // Invalid version. return Err(PublicError::UnknownVersion); } - if d[len+1..len+3] != blake2_rfc::blake2b::blake2b(64, &[], &d[0..len+1]).as_bytes()[0..2] { + + if d[len+1..len+3] != ss58hash(&d[0..len+1]).as_bytes()[0..2] { // Invalid checksum. return Err(PublicError::InvalidChecksum); } @@ -243,7 +254,7 @@ impl + AsRef<[u8]> + Default + Derive> Ss58Codec for T { fn to_ss58check(&self) -> String { let mut v = vec![42u8]; v.extend(self.as_ref()); - let r = blake2_rfc::blake2b::blake2b(64, &[], &v); + let r = ss58hash(&v); v.extend(&r.as_bytes()[0..2]); v.to_base58() } diff --git a/core/primitives/src/ed25519.rs b/core/primitives/src/ed25519.rs index 295c23b378..937cc19a89 100644 --- a/core/primitives/src/ed25519.rs +++ b/core/primitives/src/ed25519.rs @@ -608,11 +608,4 @@ mod test { let cmp = Public::from_ss58check(&s).unwrap(); assert_eq!(cmp, public); } - - #[test] - fn ss58check_known_works() { - let k = "5CGavy93sZgPPjHyziRohwVumxiHXMGmQLyuqQP4ZFx5vRU9"; - let enc = hex!["090fa15cb5b1666222fff584b4cc2b1761fe1e238346b340491b37e25ea183ff"]; - assert_eq!(Public::from_ss58check(k).unwrap(), Public::from_raw(enc)); - } } diff --git a/core/primitives/src/sr25519.rs b/core/primitives/src/sr25519.rs index a60ee94b7f..aa17447a24 100644 --- a/core/primitives/src/sr25519.rs +++ b/core/primitives/src/sr25519.rs @@ -632,13 +632,6 @@ mod test { assert_eq!(cmp, public); } - #[test] - fn ss58check_known_works() { - let k = "5CGavy93sZgPPjHyziRohwVumxiHXMGmQLyuqQP4ZFx5vRU9"; - let enc = hex!["090fa15cb5b1666222fff584b4cc2b1761fe1e238346b340491b37e25ea183ff"]; - assert_eq!(Public::from_ss58check(k).unwrap(), Public::from_raw(enc)); - } - #[test] fn verify_from_wasm_works() { // The values in this test case are compared to the output of `node-test.js` in schnorrkel-js. diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index cd36b9f405d7837e1be1ea913e77611695158e4c..956fa2bf2760c7123a7229dc288ab0da9eeeb8f8 100644 GIT binary patch delta 4982 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 LH78aJQpNuQ8nv40 delta 5150 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

  • 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

    + DigestItem>, E: 'static + ExtraVerification, + P: Pair + Send + Sync + 'static, + P::Public: Clone + Eq + Send + Sync + Hash + Debug + Encode + Decode + AsRef, { register_aura_inherent_data_provider(&inherent_data_providers, slot_duration.get())?; let verifier = Arc::new( - AuraVerifier { client: client.clone(), extra, inherent_data_providers } + AuraVerifier { + client: client.clone(), + extra, + inherent_data_providers, + phantom: PhantomData, + } ); Ok(BasicQueue::new(verifier, block_import, justification_import)) } @@ -650,6 +672,7 @@ mod tests { use parking_lot::Mutex; use tokio::runtime::current_thread; use keyring::ed25519::Keyring; + use primitives::ed25519; use client::BlockchainEvents; use test_client; @@ -664,7 +687,7 @@ mod tests { type Proposer = DummyProposer; type Error = Error; - fn init(&self, parent_header: &::Header, _authorities: &[AuthorityId]) + fn init(&self, parent_header: &::Header, _authorities: &[AuthorityId]) -> Result { Ok(DummyProposer(parent_header.number + 1, self.0.clone())) @@ -690,7 +713,7 @@ mod tests { impl TestNetFactory for AuraTestNet { type Specialization = DummySpecialization; - type Verifier = AuraVerifier; + type Verifier = AuraVerifier; type PeerData = (); /// Create new test network with peers and given config. @@ -717,6 +740,7 @@ mod tests { client, extra: NothingExtra, inherent_data_providers, + phantom: Default::default(), }) } @@ -775,7 +799,7 @@ mod tests { &inherent_data_providers, slot_duration.get() ).expect("Registers aura inherent data provider"); - let aura = start_aura( + let aura = start_aura::<_, _, _, _, ed25519::Pair, _, _, _>( slot_duration, Arc::new(key.clone().into()), client.clone(), diff --git a/core/primitives/src/sr25519.rs b/core/primitives/src/sr25519.rs index ee1727b79a..a60ee94b7f 100644 --- a/core/primitives/src/sr25519.rs +++ b/core/primitives/src/sr25519.rs @@ -501,7 +501,7 @@ impl Pair { #[cfg(test)] mod test { use super::*; - use crate::{Pair as PairT, crypto::{Ss58Codec, DEV_PHRASE, DEV_ADDRESS}}; + use crate::crypto::{Ss58Codec, DEV_PHRASE, DEV_ADDRESS}; use hex_literal::{hex, hex_impl}; #[test] diff --git a/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm index c4df3f06b5bb1e46508ff2c11a5c39a9738d6838..4f75adc74d29efaf20706fd240ba8a67443f1d70 100644 GIT binary patch delta 9107 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 Y|NYfPp=iLb_(LHHYak diff --git a/node-template/src/service.rs b/node-template/src/service.rs index aa1d25963b..ae98d01de4 100644 --- a/node-template/src/service.rs +++ b/node-template/src/service.rs @@ -85,7 +85,7 @@ construct_service_factory! { Self::Block, > { |config: &mut FactoryFullConfiguration , client: Arc>| - import_queue( + import_queue::<_, _, _, Pair>( SlotDuration::get_or_compute(&*client)?, client.clone(), None, @@ -98,7 +98,7 @@ construct_service_factory! { Self::Block, > { |config: &mut FactoryFullConfiguration, client: Arc>| - import_queue( + import_queue::<_, _, _, Pair>( SlotDuration::get_or_compute(&*client)?, client.clone(), None, diff --git a/node/cli/src/service.rs b/node/cli/src/service.rs index e2c1c67236..64f191dc4b 100644 --- a/node/cli/src/service.rs +++ b/node/cli/src/service.rs @@ -25,7 +25,7 @@ use client; use consensus::{import_queue, start_aura, AuraImportQueue, SlotDuration, NothingExtra}; use grandpa; use node_executor; -use primitives::{Pair as PairT, ed25519::Pair}; +use primitives::{Pair as PairT, ed25519}; use node_primitives::Block; use node_runtime::{GenesisConfig, RuntimeApi}; use substrate_service::{ @@ -76,7 +76,7 @@ construct_service_factory! { { |config: FactoryFullConfiguration, executor: TaskExecutor| FullComponents::::new(config, executor) }, AuthoritySetup = { - |mut service: Self::FullService, executor: TaskExecutor, local_key: Option>| { + |mut service: Self::FullService, executor: TaskExecutor, local_key: Option>| { let (block_import, link_half) = service.config.custom.grandpa_import_setup.take() .expect("Link Half and Block Import are present for Full Services or setup failed before. qed"); @@ -133,7 +133,7 @@ construct_service_factory! { config.custom.grandpa_import_setup = Some((block_import.clone(), link_half)); - import_queue( + import_queue::<_, _, _, ed25519::Pair>( slot_duration, block_import, Some(justification_import), @@ -144,16 +144,16 @@ construct_service_factory! { }}, LightImportQueue = AuraImportQueue { |config: &FactoryFullConfiguration, client: Arc>| { - import_queue( - SlotDuration::get_or_compute(&*client)?, - client.clone(), - None, - client, - NothingExtra, - config.custom.inherent_data_providers.clone(), - ).map_err(Into::into) - } - }, + import_queue::<_, _, _, ed25519::Pair>( + SlotDuration::get_or_compute(&*client)?, + client.clone(), + None, + client, + NothingExtra, + config.custom.inherent_data_providers.clone(), + ).map_err(Into::into) + } + }, } } diff --git a/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm index 446e9eaad9b7c42c8435e38f28f298bd48fa373d..5076de93a3bb3a32a54355621ba0312dd0b0880e 100644 GIT binary patch delta 161087 zcmdqK349bq`aj%N)zdS{%p?;+NJ6geNq~eiT;UYyaH}Y&2(BWaAQF%p#ft$!7M1%d z573|psGuOnprCT7i^nP|UMniDc&wtLtFE{2_o?nqW&+6mf4}$md|pCQ)zwu`J@q_K zJ@wR6NAH-`;jUv9i#ulfV)T#2h8rqEu>fLA&TG14e)DD&RsXc%I)!Wo!WlDWXu|~p zZ8%ELm=ROql7qPo#EcjoxRZi7a%e2JQSC4BgT)s97V^Bzh=VNQCiBf zHLP@5lwZGW3$MsXqZ|__qwKJ0Q?Kl(2`c{!-_%6VKc?%tiU`3)#K&}@i!>%O^m>A4 z>ON6FOMdfyF!S67VZqW2h633FS#qeHoxkmln)!2lfD@S}6&u0acV=#4OZItMHdTQ>uhVqto( z{;3Rj<@_T=D1TVzKA$g*9*T>L1@qCLW&8DJy*y}nf*Alrl_OIgS}1%XOwTM_q7zm= z=A)`WARrgkwXl}v({#<}i=-}V<10=5Z00jsFs9j`&0IFpHz;d2kMx)@dDO5G)23cE zVe*)%V@6HUo|MN|h3l7VPw_1EZp?V3j~F**%BW$NkDGACSZyEA=s#-eh>;_vju>{e z8`1X5)aq~{*PfSU)!_oJy|8ScQOsUkHq9t1_&d+3q>`1>#*7;|YVxqj5QGU=51TS- z)JW~+Wm}Av?3HClj1qQGwq6sCa_!Y+WqvF68qcz)O&(!S95ZanxCv8-jl{#$F%!mX zuk(~Y7}IPPT*yjRi}NnHaL`4Ahg|%ZOD-LH*|6awF27>rs4MsK?fhl-clH`P#CC|d z*ul5)yTwlNi1>zg?$mKM?@;kAZ$DSu^ch>jerMnFKiH>i4!@bt;xqX?{vh8K^W*$0{to|`eZr2ifAC+~ zZ|rCGE}zT)%5UL^`5bYJm@VGp%h_sv55Jqg&)4$}d>#LQw{6$v2!EVE!FTcx`M>xh z{B!;V|B?TP|G=Z)@qhDQ`5*ije)dZ71G`zw6tl!;u|+&4wu)^c^~mn6;{&^PX56=8 zpJqoR>x8BSQ#Je8@vWWr-s$IazFzj!;aj%;<@xIkif0@z+4}PoRg9eb@N1*MSi_BDSJZ7X`>175~42X z6H}7$N`OvT2P}K#$9%%%sl$0ozYZ_U`lF6k3tb|5lD{%9{AT-LFLk$jxP}k{|mZJwEOgj)MP$5%c1G9dlR12=~F+;Z2Q*ta* zGr1k9ijq6~TMI>^|R@RiK-~)T$zkcQ<{# z!kVc^8U~TUtSZrhtL2)EP=(x695UiPoAAqpT>Us-12|_s!S^#wie3Ch#^uai{MU+1 zjZmoII)Z27`?LzK1yx$WNt<{3p4zmalXh%Z{E653J4}WS^3F`iJ_q?<5Zv=BZz^9p z$jiLA`D$%^YEAqC?{)rbwXY{S@w;B*1M&LUYy1v*O>5qkogp7;%@?FS@Yo*B&Ng*> zF{_GbvR514H+AQokRuWaA!QqGqS($h{Oms6qCS(A2{W2jN?{d)*y-wccR>L`U3(nbrYZ1$`}O#Uo_srFJf7W~w_$wOW_flW zp38d3QGNKMo-7fZ1X<)1e^HkAx zV@PWN&y*7`;%Vv00x(t<4CZ-g{DzBo)3oH0^2kNJWg?w&1}lN@G?-hFC#jOGno4vz z{32eEn0bkl`LV$;6c@+u7{W7H+82avE)`M&8M%@-7c9c!pIi)El=YDXQ+T$Vc`2_# z^S-#0_e=ZoPSP4)0nn+D96glR_axf`^z=-Ws~*ZT5)pWEnZow)P~NEy9O>mZWcSN> zMu6FxrH3X2<@jNIx6B&GBkY@a<6*o$W1q+_!!gbsjbA*R-^otHxAMz*PbSt+yPPu? zkk?$nk0H2XBp;2Yy*QFT$d1Zsqj>AUQ7Cj&c#%9Z0S$V66mONb^Rc>=A;o#-mAo4Z z#AjRy0Vr6#+U}w`;~;g66{~Gh*s7B(SS|Ce;+;_2psV@Wmr(wR)pGk7-US7}8N<&`+q4zP)C1KWy#ZL{b|ZV@~prs7||f3K|j>U zx=aQ3r!*XB_NVecvXfdY^D5Q3JjR;vf)(dcRSu;D*uUH5{CtJ zavgT^RA7F{sInO>CqzXBKjcGr^w@q3>jx37WF7c329k~)lM}Axxozhi*#`?0=HdTo z!NWVqbp0O`-2D3gu*PHm!x}sM>K3$*dOSP!H{d`c;hY0*Bw@(%qB1z0pPe|C1>CW$ zCc~uZyk`UIoggj;1@{2i(Zd za?$B5-@K9EUhu>!Wy*Pj{9~(>DW~+;L#yPBn_!k}5*;*YXl^}&V@@MqiSZmcc?Rzi zsG-G&3q)oknn#c^`{%H~oWXDYQ`ncKEumq*Mh#IvOfr1O&g7-dMU<1#YM_&)_eUV? z14dPu(5&_$7PNn(q3YBSz6Jy|Bxe>M!akFeX7RS-)mi)G`dPej+AhcDNYJ;9>kQLA zIdLX0M)`I(^S0-IHESP@9~nu+Z&ycHPSuZr_K%tp8()>p&9_f}8ir zUv7qRF-=;td4tn)EJu!;%||&pv$6bfHb%_3GCYS*Z;Uyv5=^tcnGu00{^;s8iy zw(B7F5a}Sgk!$6{bNKs^yW4Kzja*?_oR&Of$n)m%j)?=0D-lo3<-O|;Jjhxs3uo|@ z#QX#1DKlWyU-^{Ctu$j4rFrcD*j^E#bq!WmM5n&R>#jJh?LY%n~(kMV1C+h^9A!1d(p7i}l|L>sqt9 zF4iuz^ksZ_QD)t;?i?_o#SOEl6VQYqX+AE=Ud|9UtFi!Ufg);C-VY5)@r z233lg6UhTMEEEnR3dDMaLqRhj*GN9GJs#k9qR|$!$Y`3`w5D=Oid02IX0xOu;1iL( z@8DLf9$9Kp!#4Xt?UY*_)Bf^t7HqgpmF8S4qmsc<6R=VQIR;Vy1Gw<2sE*hW@{v$3 z(?7?`Fm)>>2)mEnhyp$cV|i7S!+#JoQ+kDS%#6xE@GpG`qDsLMp1PS<7E7cO5KS>d zHHf-|^O+GZi8z0dD>ZEpm3aSfJ|P5@QJa}b1cw<=WfFeQLr#@K+j)ponLh80BSo`J+NJINi|vCeHR~?h1ZI{vsIPElsQ&C zdF(EppX)G~yJi{W!D(cqTv~TyG8BlPdpDoMGIGq6e&JFxjSz>hnK|;KRs7z%y=(Dm z-n<`;RA8zGW2#{g@p|hO@_6u+Q3gorD5JUilV*m$@2i~|{;*H_?&0gw79TJoyIJiV$pE!^_ehAe)8; zRj0z^_d&<~v?f^%M($HKQK$R(gD1(~1mi`{{jf%^mEG>=X3_Mzs%aOefqI$6O)TAT}KK~nNF09K*{dtj$Oy)kx*7K!s94=qa>oIu#)^Ff#vU||dhlZJa zfEGnURZ;cWBYu1X&!SAmLwvv~T*r)D$McxyI%f7f3|)@vc595*P;5AC=qu z?+@{^gt30*!`xyq8GV?K2qiSPmt6EPRxX7s*~oh#sM-iG=c@Sq8~H9?JNLNqQT_%i zk9Xb7TX42oRz1egty|r5k749t@y{OvmRZM-P_Hdd!;MthHs z@tCyU^4FK$n{Zvu-o`hg>E+u|w1>QAJG>1&p}qn1@fNv>Ue49f1=RX`U#J5s~@Hk%3!bHyAku^ zLl8NH6@*n^%40u4?k4|>4+@dT6PlSa-63E97oW<`l6^nt7qYYE>d#4nWaBURRX}Oc z7kn$9wzZXKkKK(n+*ts(D zJ?~xs(V0{0Qkm(xRMyh$A1;-vzvsCH^PU6GAxDWlzec3xWrslXzkkoiz!>fDgIXaO z^#j*gmJJY}VJ4UhyC-Bqv6vknFt7T{d;Y_FVMZ4J_&>ZS18JK6gf+B&@}-}6 zA$N#-Lo!{b{0u+uKzZ>md=TjR=r4Re=-TyHJ{`^6{;Si>uYRLuN;LEA_#MB40g!97 zwQze-A?dV{;7pyA+~b_*u$HgQb_VfIRF6wK@i~ zTcn9DiZ~W+`s$)f_|2rEi*-?&pmXFtT{J=^pXp)&-+PC=)+buiGQxvCaZ6z>z9-|O zJjW0fVYj0)yOf%+$Pnd;(4RMi#k$BZ3~@Z{x)j`;pZSw>ew89BDWrtCZsoUwN5?}5Ctgmc0jZZKSD+7Ba??lLpeTGgc5OaYq&Z^REAy8h?{+P zN-|B{oSCVjbGqw=adAnLW{N003DgHuMYr(26Ol*@ibx&D3Ea7Sd*p8+(I)u9Oww1F1R$YvSe!NJ ztJ;Jh)|sIF1NH%D8j|A7Z=GkFgCss<0upwgDL4R2z{Es@%0{?+CoDQ4t%DrVC8fSB zP7}u}U7$%o0MrAbDg{v2nhLl;Q{cj=fjTfp2J&<=39 zAw%Tn-T^4y z&wUf9d1D63ME4G219#u#SDEz)p5oY1ttw`QYaWk5ztV(Gy+ryW)`6eehz|2 z1@DU>y@L0|OV9%3A@CcpY;z$}h#&b?AhUwaJ8Q?N(mS3a2k;R@T?VLDIoTusVZ*Hy zvdjYZ5l%&EHfbLQAg35Tq4Z}22;ti<6u6T;z%RM4ATH^k>j7lL;VOTijK2gL&=Y}kin?430m@Nc6+_LA@KCzTL$tGuyKSaqFp$tbRGSR) z5@?5g)vy>bT~!=XbfN@IW)%Zf!X8#-hH7duD)?HG<(0qg)#S!(G3sKk{}G`#aNAu# zRdN*}Qp5HnB*L|Ixcn7AvP#XOnVpj3r-)ute7Q6miuy9Op-Amfo7V*WAzez;--c0ql;Xh-f`pOCGY_nv zBM=uI;EA9#>b4MhIjf=+}2QZOiM+!ZH&YU(}`61b3>7zhpfa; zM&;3FprE@W% z!+}+*o~U0OabD1vKzdQ_Nh9rw=W4m9K;*>IO zLfFXzN`YsGh<{LbijV#Z;O9Jp|Fj9tEdwxX`-eObjHDkl#X7fN+Cg&Ds^Zz zsZgA6>`?=Uv~TBmu|&IRX37cEaW$3oImxK@C8zBma4GL;rMUg&fJ%*O5?uEwK=Qf^0IK`)c) zCG`M(Ws+`0E5j#O%A`aSG_phEa}|pm?kTqru}?l-B+N#{23YmL$2Os}3DHOo2p!gZ zfFCBwK#)l|GA*`8Ha4M#ev?HOM%!~`Hw3vyX&l8Q6?(v;ojr#UrXf5cr&*#h1UaPj zFVd3%x!)4aL+~-?x+yvG7fVd)-$K*i+k|5k(|XA{)%yq@tNrL{) zHM5hFP*t{R$j751AD-MdqhgeP3o{$aGmAxb5I#!HB=>J*tsGG-R@XCX$~rwOYRE{5 z=w7hhnYe-PYHQIW&U6f&yG&a*M~-MDTCrTYq!BtlHjqv5Wy=p5i8T3BiHKx1H1k}b zIi?3*$ihaV@&5>FHvC!tX(XC7z}hLXyq>9gIGoV*B;@;zMUD@Ijr=GFHWt_ZNwz5a zU9u+P9@bh`HxZpNpM1B8xExR2N<|fFd9YOU?(sYJbkV2^X(cz20t|UnG5p2U<~OeV ztI1sRQVouK33O=7gi0?cuca@3USYNz;29tAT7U&dwhg}@x71<{6YR=cRX<##= zctAg_;K%VA@#75fJ(L9!kH4EmRiu%rm-4INNk=denhn8l%WwOv0NFm+DhV+o@;Y`R z+QdrbrA^F+zF}4l}~XLjs|Ea$ssk45aq=2aR>r9Uz(5Z<>gzrbqpbHKbbW zlH8@%<`!^TuVkK%PB})rxe%;3dDMnDFlGl>9>_i*ctbaH}L$&v;ogGe1 zeD?LnGi+1ueQN)33b`Y_XVE_#2>ENDby!RxqxSg{ESDJ|eN6!@m=N=8o{j!toUy5W z2I~b`3tk1m{$L%X)_YFD@>|f(v;toX=IB&c#9@9vh_Y_9FT8h2l}8{z`Bu*6(m35+sMYcib0q*vi*I~2H@Dp z4)(#i7ope4PU#cIhL8G$m>ni0!HFo1KZdhLQAF`V`cp(6jv|vN>ov-Z!xGt-h-8XYZ-P=c5-etfkY-EEKL^Q#ea)N1!871+Qy5T zGtH<1R6mrZ0A&Ep3kXd+e_WMyp&haY*#YY!&~q^Q=ny+%U2LaVf3azeNm!TI6Rk^4 z!y0M}v?WzRh#=o(1R(~Ds;prsG8{!l0Lx9(z4!7Sug%sz$Og0m?QTGAV67xJe7PdgO>R-*(0KUGIk3eYKzPD>$WYTya- z=SP5*;UEGQMDx)|H8PO$DKT?vG>;x@1-;XS4M&TEW{BpNP{^=;%wRuEeQ0YuGyVNw z%5SP{J|o&#tr_~w#_OYuOn*NWBf_MbJ_wx2VDzVAX&4=a!OTy^Zh#=Y13-FROzIBi z3615Zvl!f@7H17ooXQ3N2Ju_U6DHU?Z84wN27zYdYkfe_J(n2j~wNErYJ?dIbk zM5!@*I8dR%590%)c@(oRB=Pc*Y3iUF4Wm9k+5r{0v{y2?wlQ$_grA7eO|vzq$eKafAr8z#w8^B!^vaq0{{DqwmEy%VnCCe5 zK?60GF(Ema$k4+^q^CMjm@L>muRDb*XX0OEP6wQoGgEuTNFBg}jFzppnnF~{)GmN# zpbl{;Rn08m3Q@cMK>>772IfWmsslR9`Z`Q9aCS%)wE}JEh<6COTAY+KtgX)4sjaHm z|H!PecL_4GU}`xup+h3D!pg+(4%${S!l?1O9T#dYO)qU9L|Qe*)({rX63Swwq4TCGI`*QOAcNB%_G0Ik1 zZBU@C9kAL#S-0$>{A5;p3=Ilu=$$tBny_(h8{%GHpj|{5|igd*#*4dCx?j7O0g)70g-{wgw1x;i?Ju9 zC7mteW+xcRCNn$t#?Bp9s%d5yBq$ATwpZQGY;U%V?1mOZZwi~O$x+t^Bt#an-MbMD?FqO~?z_U|o78rR-MskvbGN1IbW*qhtT;!JKv5Knq5%?BnMa>2IK4> z@rODd0}>~%6;-!5l|F;JHK8j+oUTwGUBO3|SReCDhuoUk2gE`DmuJ718mtG}sgw}W z#5@z`n7rz})K&&JdxNlY^?Ru;tU^T;^L+CxM+m6M`HoYXoBgRs=l4~SfmCF|`>B<& z!q9nC>riu0ZIPi~ks&DJm`iAk`4> zOlSa@c0g@YyVoDy&%aX7f;b3*S z!s-eatIKM!!T?MJ8|h+Yjxs5QAe+bq1I2^w)IJKe52M=qC+piQ6ZF#PWS&#U6Wwji zy6W^=2}=SAyboBipsVo5YBa80YK^I_C`zY6NzkB|s;sfLu*TV2Zr!I@S3`%4x3^Jr z0(#^`3{}=7J8Vt1ud}AuY1UMG^&GsL21D^0d+lsQuZ1?6UitCySAW^Q@s1tGH0wHh zBc)#ttMi7Ky@TR6LOb1L@1f`n`vnSOFfnH``zwmiV)j2NyqRp?+01@}9_BE6JJoax zv-eXtm)UbE{jbbUx3H~X1wGt~4J!2VHfFy{;q7EPV{QCHdRV~hwK0k;WOjzNh}l0; zk;M#~Y?i<~YAq!Nyo`lf2hF=!)NihYGwv>8pC3XRg-NAR+?2}e?Fb6T6KwsucD}h> z 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

    ZP&K>d|+Xz+NY$f=p08f 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

    Me+ExNy*?v_qv2@?{fSz~$IHf7f!z4L{x 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

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