From 616716cb4be00f59482bcec4aa11c956f79ff824 Mon Sep 17 00:00:00 2001
From: Svyatoslav Nikolsky <svyatonik@gmail.com>
Date: Fri, 11 Jan 2019 21:25:03 +0300
Subject: [PATCH] GRANDPA finality proof draft (#1268)

* grandpa finality proof

* prove GrandpaApi::grandpa_authorities using parent block + some docs

* create justification when consensus data is changed

* generate justifications periodically

* test for ConsensusChanges
---
 substrate/core/client/src/genesis.rs          |   2 +-
 .../finality-grandpa/primitives/src/lib.rs    |   4 +
 .../finality-grandpa/src/finality_proof.rs    | 428 ++++++++++++++++++
 substrate/core/finality-grandpa/src/lib.rs    | 212 +++++++--
 substrate/core/finality-grandpa/src/tests.rs  | 101 ++++-
 substrate/core/network/src/test/mod.rs        |  17 +-
 substrate/core/rpc/src/author/tests.rs        |  10 +-
 substrate/core/service/src/components.rs      |   2 +-
 substrate/core/sr-primitives/src/traits.rs    |   2 +-
 .../core/test-client/src/block_builder_ext.rs |   2 +-
 substrate/core/test-runtime/src/lib.rs        |  28 +-
 substrate/core/test-runtime/src/system.rs     |  49 +-
 .../substrate_test_runtime.compact.wasm       | Bin 41787 -> 46028 bytes
 .../core/transaction-pool/graph/src/pool.rs   |   9 +-
 substrate/core/transaction-pool/src/tests.rs  |  27 +-
 substrate/node/cli/src/service.rs             |   1 +
 .../release/node_runtime.compact.wasm         | Bin 791790 -> 791154 bytes
 substrate/srml/consensus/src/lib.rs           |   5 +-
 18 files changed, 786 insertions(+), 113 deletions(-)
 create mode 100644 substrate/core/finality-grandpa/src/finality_proof.rs

diff --git a/substrate/core/client/src/genesis.rs b/substrate/core/client/src/genesis.rs
index d7d398a4e90..098c7a35e9b 100644
--- a/substrate/core/client/src/genesis.rs
+++ b/substrate/core/client/src/genesis.rs
@@ -70,7 +70,7 @@ mod tests {
 			let signature = Pair::from(Keyring::from_public(Public::from_raw(tx.from.to_fixed_bytes())).unwrap())
 				.sign(&tx.encode()).into();
 
-			Extrinsic { transfer: tx, signature }
+			Extrinsic::Transfer(tx, signature)
 		}).collect::<Vec<_>>();
 
 		let extrinsics_root = ordered_trie_root::<Blake2Hasher, _, _>(transactions.iter().map(Encode::encode)).into();
diff --git a/substrate/core/finality-grandpa/primitives/src/lib.rs b/substrate/core/finality-grandpa/primitives/src/lib.rs
index 15e4a027f6c..8776c262a07 100644
--- a/substrate/core/finality-grandpa/primitives/src/lib.rs
+++ b/substrate/core/finality-grandpa/primitives/src/lib.rs
@@ -97,6 +97,10 @@ decl_runtime_apis! {
 
 		/// Get the current GRANDPA authorities and weights. This should not change except
 		/// for when changes are scheduled and the corresponding delay has passed.
+		///
+		/// 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)>;
 	}
 }
diff --git a/substrate/core/finality-grandpa/src/finality_proof.rs b/substrate/core/finality-grandpa/src/finality_proof.rs
new file mode 100644
index 00000000000..c927aa68a08
--- /dev/null
+++ b/substrate/core/finality-grandpa/src/finality_proof.rs
@@ -0,0 +1,428 @@
+// 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 <http://www.gnu.org/licenses/>.
+
+//! GRANDPA block finality proof generation and check.
+//!
+//! Finality of block B is proved by providing:
+//! 1) valid headers sub-chain from the block B to the block F;
+//! 2) valid (with respect to proved authorities) GRANDPA justification of the block F;
+//! 3) proof-of-execution of the `grandpa_authorities` call at the block F.
+//!
+//! Since earliest possible justification is returned, the GRANDPA authorities set
+//! at the block F is guaranteed to be the same as in the block B (this is because block
+//! that enacts new GRANDPA authorities set always comes with justification). It also
+//! means that the `set_id` is the same at blocks B and F.
+//!
+//! The caller should track the `set_id`. The most straightforward way is to fetch finality
+//! proofs ONLY for blocks on the tip of the chain and track the latest known `set_id`.
+
+use std::collections::HashMap;
+
+use client::{
+	blockchain::Backend as BlockchainBackend,
+	error::{Error as ClientError, ErrorKind as ClientErrorKind, Result as ClientResult},
+	light::fetcher::RemoteCallRequest,
+};
+use codec::{Encode, Decode};
+use grandpa::BlockNumberOps;
+use runtime_primitives::generic::BlockId;
+use runtime_primitives::traits::{
+	NumberFor, Block as BlockT, Header as HeaderT, One,
+};
+use substrate_primitives::{Ed25519AuthorityId, H256};
+
+use GrandpaJustification;
+
+/// Prepare proof-of-finality for the given block.
+///
+/// The proof is the serialized `FinalityProof` constructed using earliest known
+/// justification of the block. None is returned if there's no known justification atm.
+pub fn prove_finality<Block: BlockT, B, G>(
+	blockchain: &B,
+	generate_execution_proof: G,
+	block: Block::Hash,
+) -> ::client::error::Result<Option<Vec<u8>>>
+	where
+		B: BlockchainBackend<Block>,
+		G: Fn(&BlockId<Block>, &str, &[u8]) -> ClientResult<Vec<Vec<u8>>>,
+{
+	let block_id = BlockId::Hash(block);
+	let mut block_number = blockchain.expect_block_number_from_id(&block_id)?;
+
+	// early-return if we sure that the block isn't finalized yet
+	let info = blockchain.info()?;
+	if info.finalized_number < block_number {
+		return Ok(None);
+	}
+
+	// early-return if we sure that the block is NOT a part of canonical chain
+	let canonical_block = blockchain.expect_block_hash_from_id(&BlockId::Number(block_number))?;
+	if block != canonical_block {
+		return Err(ClientErrorKind::Backend(
+			"Cannot generate finality proof for non-canonical block".into()
+		).into());
+	}
+
+	// now that we know that the block is finalized, we can generate finalization proof
+
+	// we need to prove grandpa authorities set that has generated justification
+	// BUT since `GrandpaApi::grandpa_authorities` call returns the set that becames actual
+	// at the next block, the proof-of execution is generated using parent block' state
+	// (this will fail if we're trying to prove genesis finality, but such the call itself is redundant)
+	let mut current_header = blockchain.expect_header(BlockId::Hash(block))?;
+	let parent_block_id = BlockId::Hash(*current_header.parent_hash());
+	let authorities_proof = generate_execution_proof(
+		&parent_block_id,
+		"GrandpaApi_grandpa_authorities",
+		&[],
+	)?;
+
+	// search for earliest post-block (inclusive) justification
+	let mut finalization_path = Vec::new();
+	loop {
+		finalization_path.push(current_header);
+
+		match blockchain.justification(BlockId::Number(block_number))? {
+			Some(justification) => return Ok(Some(FinalityProof {
+				finalization_path,
+				justification,
+				authorities_proof,
+			}.encode())),
+			None if block_number == info.finalized_number => break,
+			None => {
+				block_number = block_number + One::one();
+				current_header = blockchain.expect_header(BlockId::Number(block_number))?;
+			},
+		}
+	}
+
+	Err(ClientErrorKind::Backend(
+		"cannot find justification for finalized block".into()
+	).into())
+}
+
+/// Check proof-of-finality for the given block.
+///
+/// Returns the vector of headers (including `block` header, ordered by ASC block number) that MUST be
+/// validated + imported at once (i.e. within single db transaction). If at least one of those headers
+/// is invalid, all other MUST be considered invalid.
+pub fn check_finality_proof<Block: BlockT<Hash=H256>, C>(
+	check_execution_proof: C,
+	parent_header: Block::Header,
+	block: (NumberFor<Block>, Block::Hash),
+	set_id: u64,
+	remote_proof: Vec<u8>,
+) -> ClientResult<Vec<Block::Header>>
+	where
+		NumberFor<Block>: grandpa::BlockNumberOps,
+		C: Fn(&RemoteCallRequest<Block::Header>) -> ClientResult<Vec<u8>>,
+{
+	do_check_finality_proof::<Block, C, GrandpaJustification<Block>>(
+		check_execution_proof,
+		parent_header,
+		block,
+		set_id,
+		remote_proof,
+	)
+}
+
+/// Check proof-of-finality using given justification type.
+fn do_check_finality_proof<Block: BlockT<Hash=H256>, C, J>(
+	check_execution_proof: C,
+	parent_header: Block::Header,
+	block: (NumberFor<Block>, Block::Hash),
+	set_id: u64,
+	remote_proof: Vec<u8>,
+) -> ClientResult<Vec<Block::Header>>
+	where
+		NumberFor<Block>: grandpa::BlockNumberOps,
+		C: Fn(&RemoteCallRequest<Block::Header>) -> ClientResult<Vec<u8>>,
+		J: ProvableJustification<Block::Header>,
+{
+	// decode finality proof
+	let proof = FinalityProof::<Block::Header, J>::decode(&mut &remote_proof[..])
+		.ok_or_else(|| ClientErrorKind::BadJustification("failed to decode finality proof".into()))?;
+
+	// check that the first header in finalization path is the block itself
+	{
+		let finalized_header = proof.finalization_path.first()
+			.ok_or_else(|| ClientError::from(ClientErrorKind::BadJustification(
+				"finality proof: finalized path is empty".into()
+			)))?;
+		if *finalized_header.number() != block.0 || finalized_header.hash() != block.1 {
+			return Err(ClientErrorKind::BadJustification(
+				"finality proof: block is not a part of finalized path".into()
+			).into());
+		}
+	}
+
+	// check that the last header in finalization path is the jsutification 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()
+			).into());
+		}
+	}
+
+	// check authorities set proof && get grandpa authorities that should have signed justification
+	let grandpa_authorities = check_execution_proof(&RemoteCallRequest {
+		block: just_block.1,
+		header: parent_header,
+		method: "GrandpaApi_grandpa_authorities".into(),
+		call_data: vec![],
+		retry_count: None,
+	})?;
+	let grandpa_authorities: Vec<(Ed25519AuthorityId, u64)> = Decode::decode(&mut &grandpa_authorities[..])
+		.ok_or_else(|| ClientErrorKind::BadJustification("failed to decode GRANDPA authorities set proof".into()))?;
+
+	// and now check justification
+	proof.justification.verify(set_id, &grandpa_authorities.into_iter().collect())?;
+
+	Ok(proof.finalization_path)
+}
+
+/// Proof of finality.
+///
+/// Finality of block B is proved by providing:
+/// 1) valid headers sub-chain from the block B to the block F;
+/// 2) proof of `GrandpaApi::grandpa_authorities()` call at the block F;
+/// 3) valid (with respect to proved authorities) GRANDPA justification of the block F.
+#[derive(Debug, PartialEq, Encode, Decode)]
+struct FinalityProof<Header, Justification> {
+	/// Headers-path (ordered by block number, ascending) from the block we're gathering proof for
+	/// (inclusive) to the target block of the justification (inclusive).
+	pub finalization_path: Vec<Header>,
+	/// Justification (finalization) of the last block from the `finalization_path`.
+	pub justification: Justification,
+	/// Proof of `GrandpaApi::grandpa_authorities` call execution at the
+	/// justification' target block.
+	pub authorities_proof: Vec<Vec<u8>>,
+}
+
+/// Justification used to prove block finality.
+trait ProvableJustification<Header: HeaderT>: Encode + Decode {
+	/// Get target block of this justification.
+	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: &HashMap<Ed25519AuthorityId, u64>) -> ClientResult<()>;
+}
+
+impl<Block: BlockT<Hash=H256>> ProvableJustification<Block::Header> for GrandpaJustification<Block>
+	where
+		NumberFor<Block>: BlockNumberOps,
+{
+	fn target_block(&self) -> (NumberFor<Block>, Block::Hash) {
+		(self.commit.target_number, self.commit.target_hash)
+	}
+
+	fn verify(&self, set_id: u64, authorities: &HashMap<Ed25519AuthorityId, u64>) -> ClientResult<()> {
+		GrandpaJustification::verify(self, set_id, authorities)
+	}
+}
+
+#[cfg(test)]
+mod tests {
+	use test_client::runtime::{Block, Header};
+	use test_client::client::backend::NewBlockState;
+	use test_client::client::in_mem::Blockchain as InMemoryBlockchain;
+	use super::*;
+
+	type FinalityProof = super::FinalityProof<Header, Vec<u8>>;
+
+	#[derive(Encode, Decode)]
+	struct ValidFinalityProof(Vec<u8>);
+
+	impl ProvableJustification<Header> for ValidFinalityProof {
+		fn target_block(&self) -> (u64, H256) { (3, header(3).hash()) }
+
+		fn verify(&self, set_id: u64, authorities: &HashMap<Ed25519AuthorityId, u64>) -> ClientResult<()> {
+			assert_eq!(set_id, 1);
+			assert_eq!(authorities, &vec![
+				(Ed25519AuthorityId([1u8; 32]), 1),
+				(Ed25519AuthorityId([2u8; 32]), 2),
+				(Ed25519AuthorityId([3u8; 32]), 3),
+			].into_iter().collect());
+			Ok(())
+		}
+	}
+
+	fn header(number: u64) -> Header {
+		let parent_hash = match number {
+			0 => Default::default(),
+			_ => header(number - 1).hash(),
+		};
+		Header::new(number, 0.into(), 0.into(), parent_hash, Default::default())
+	}
+
+	fn side_header(number: u64) -> Header {
+		Header::new(number, 0.into(), 1.into(), header(number - 1).hash(), Default::default())
+	}
+
+	fn test_blockchain() -> InMemoryBlockchain<Block> {
+		let blockchain = InMemoryBlockchain::<Block>::new();
+		blockchain.insert(header(0).hash(), header(0), Some(vec![0]), None, NewBlockState::Final).unwrap();
+		blockchain.insert(header(1).hash(), header(1), Some(vec![1]), None, NewBlockState::Final).unwrap();
+		blockchain.insert(header(2).hash(), header(2), None, None, NewBlockState::Best).unwrap();
+		blockchain.insert(header(3).hash(), header(3), Some(vec![3]), None, NewBlockState::Final).unwrap();
+		blockchain
+	}
+
+	#[test]
+	fn finality_proof_is_not_generated_for_non_final_block() {
+		let blockchain = test_blockchain();
+		blockchain.insert(header(4).hash(), header(4), None, None, NewBlockState::Best).unwrap();
+
+		// when asking for finality of block 4, None is returned
+		let proof_of_4 = prove_finality(&blockchain, |_, _, _| Ok(vec![vec![42]]), header(4).hash())
+			.unwrap();
+		assert_eq!(proof_of_4, None);
+	}
+
+	#[test]
+	fn finality_proof_fails_for_non_canonical_block() {
+		let blockchain = test_blockchain();
+		blockchain.insert(header(4).hash(), header(4), None, None, NewBlockState::Best).unwrap();
+		blockchain.insert(side_header(4).hash(), side_header(4), None, None, NewBlockState::Best).unwrap();
+		blockchain.insert(header(5).hash(), header(5), Some(vec![5]), None, NewBlockState::Final).unwrap();
+
+		// when asking for finality of side-block 42, None is returned
+		let proof_of_side_4_fails = prove_finality(&blockchain, |_, _, _| Ok(vec![vec![42]]), 42.into()).is_err();
+		assert_eq!(proof_of_side_4_fails, true);
+	}
+
+	#[test]
+	fn finality_proof_fails_if_no_justification_known() {
+		let blockchain = test_blockchain();
+		blockchain.insert(header(4).hash(), header(4), None, None, NewBlockState::Final).unwrap();
+
+		// when asking for finality of block 4, search for justification failing
+		let proof_of_4_fails = prove_finality(&blockchain, |_, _, _| Ok(vec![vec![42]]), 42.into()).is_err();
+		assert_eq!(proof_of_4_fails, true);
+	}
+
+	#[test]
+	fn prove_finality_is_generated() {
+		let blockchain = test_blockchain();
+
+		// when asking for finality of block 2, justification of 3 is returned
+		let proof_of_2: FinalityProof = prove_finality(&blockchain, |_, _, _| Ok(vec![vec![42]]), header(2).hash())
+			.unwrap().and_then(|p| Decode::decode(&mut &p[..])).unwrap();
+		assert_eq!(proof_of_2, FinalityProof {
+			finalization_path: vec![header(2), header(3)],
+			justification: vec![3],
+			authorities_proof: vec![vec![42]],
+		});
+
+		// when asking for finality of block 3, justification of 3 is returned
+		let proof_of_3: FinalityProof = prove_finality(&blockchain, |_, _, _| Ok(vec![vec![42]]), header(3).hash())
+			.unwrap().and_then(|p| Decode::decode(&mut &p[..])).unwrap();
+		assert_eq!(proof_of_3, FinalityProof {
+			finalization_path: vec![header(3)],
+			justification: vec![3],
+			authorities_proof: vec![vec![42]],
+		});
+	}
+
+	#[test]
+	fn finality_proof_check_fails_when_block_is_not_included() {
+		let mut proof_of_2: FinalityProof = prove_finality(
+			&test_blockchain(),
+			|_, _, _| Ok(vec![vec![42]]),
+			header(2).hash(),
+		).unwrap().and_then(|p| Decode::decode(&mut &p[..])).unwrap();
+		proof_of_2.finalization_path.remove(0);
+
+		// block for which we're trying to request finality proof is missing from finalization_path
+		assert_eq!(do_check_finality_proof::<Block, _, ValidFinalityProof>(
+			|_| Ok(Vec::<u8>::new().encode()),
+			header(1),
+			(2, header(2).hash()),
+			1,
+			proof_of_2.encode(),
+		).is_err(), true);
+	}
+
+	#[test]
+	fn finality_proof_check_fails_when_justified_block_is_not_included() {
+		let mut proof_of_2: FinalityProof = prove_finality(
+			&test_blockchain(),
+			|_, _, _| Ok(vec![vec![42]]),
+			header(2).hash(),
+		).unwrap().and_then(|p| Decode::decode(&mut &p[..])).unwrap();
+		proof_of_2.finalization_path.remove(1);
+
+		// justified block is missing from finalization_path
+		assert_eq!(do_check_finality_proof::<Block, _, ValidFinalityProof>(
+			|_| Ok(Vec::<u8>::new().encode()),
+			header(1),
+			(2, header(2).hash()),
+			1,
+			proof_of_2.encode(),
+		).is_err(), true);
+	}
+
+	#[test]
+	fn finality_proof_check_fails_when_justification_verification_fails() {
+		#[derive(Encode, Decode)]
+		struct InvalidFinalityProof(Vec<u8>);
+
+		impl ProvableJustification<Header> for InvalidFinalityProof {
+			fn target_block(&self) -> (u64, H256) { (3, header(3).hash()) }
+
+			fn verify(&self, _set_id: u64, _authorities: &HashMap<Ed25519AuthorityId, u64>) -> ClientResult<()> {
+				Err(ClientErrorKind::Backend("test error".into()).into())
+			}
+		}
+
+		let mut proof_of_2: FinalityProof = prove_finality(
+			&test_blockchain(),
+			|_, _, _| Ok(vec![vec![42]]),
+			header(2).hash(),
+		).unwrap().and_then(|p| Decode::decode(&mut &p[..])).unwrap();
+		proof_of_2.finalization_path.remove(1);
+
+		// justification is not valid
+		assert_eq!(do_check_finality_proof::<Block, _, InvalidFinalityProof>(
+			|_| Ok(Vec::<u8>::new().encode()),
+			header(1),
+			(2, header(2).hash()),
+			1,
+			proof_of_2.encode(),
+		).is_err(), true);
+	}
+
+	#[test]
+	fn finality_proof_check_works() {
+		let proof_of_2 = prove_finality(&test_blockchain(), |_, _, _| Ok(vec![vec![42]]), header(2).hash())
+			.unwrap().unwrap();
+		assert_eq!(do_check_finality_proof::<Block, _, ValidFinalityProof>(
+			|_| Ok(vec![
+				(Ed25519AuthorityId([1u8; 32]), 1u64),
+				(Ed25519AuthorityId([2u8; 32]), 2u64),
+				(Ed25519AuthorityId([3u8; 32]), 3u64),
+			].encode()),
+			header(1),
+			(2, header(2).hash()),
+			1,
+			proof_of_2,
+		).unwrap(), vec![header(2), header(3)]);
+	}
+}
diff --git a/substrate/core/finality-grandpa/src/lib.rs b/substrate/core/finality-grandpa/src/lib.rs
index 00ea6734af5..aacee8fe7d7 100644
--- a/substrate/core/finality-grandpa/src/lib.rs
+++ b/substrate/core/finality-grandpa/src/lib.rs
@@ -92,7 +92,7 @@ use codec::{Encode, Decode};
 use consensus_common::{BlockImport, Error as ConsensusError, ErrorKind as ConsensusErrorKind, ImportBlock, ImportResult, Authorities};
 use runtime_primitives::traits::{
 	NumberFor, Block as BlockT, Header as HeaderT, DigestFor, ProvideRuntimeApi, Hash as HashT,
-	DigestItemFor, DigestItem,
+	DigestItemFor, DigestItem, As, Zero,
 };
 use fg_primitives::GrandpaApi;
 use runtime_primitives::generic::BlockId;
@@ -116,6 +116,7 @@ pub use fg_primitives::ScheduledChange;
 
 mod authorities;
 mod communication;
+mod finality_proof;
 mod until_imported;
 
 #[cfg(feature="service-integration")]
@@ -123,11 +124,14 @@ mod service_integration;
 #[cfg(feature="service-integration")]
 pub use service_integration::{LinkHalfForService, BlockImportForService};
 
+pub use finality_proof::{prove_finality, check_finality_proof};
+
 #[cfg(test)]
 mod tests;
 
 const LAST_COMPLETED_KEY: &[u8] = b"grandpa_completed_round";
 const AUTHORITY_SET_KEY: &[u8] = b"grandpa_voters";
+const CONSENSUS_CHANGES_KEY: &[u8] = b"grandpa_consensus_changes";
 
 /// round-number, round-state
 type LastCompleted<H, N> = (u64, RoundState<H, N>);
@@ -165,6 +169,10 @@ pub type CompactCommit<Block> = grandpa::CompactCommit<
 pub struct Config {
 	/// The expected duration for a message to be gossiped across the network.
 	pub gossip_duration: Duration,
+	/// Justification generation period (in blocks). GRANDPA will try to generate justifications
+	/// at least every justification_period blocks. There are some other events which might cause
+	/// justification generation.
+	pub justification_period: u64,
 	/// The local signing key.
 	pub local_key: Option<Arc<ed25519::Pair>>,
 	/// Some local identifier of the voter.
@@ -304,12 +312,65 @@ impl<B, E, Block: BlockT<Hash=H256>, RA> BlockStatus<Block> for Arc<Client<B, E,
 	}
 }
 
+/// Consensus-related data changes tracker.
+#[derive(Debug, Encode, Decode)]
+struct ConsensusChanges<H, N> {
+	pending_changes: Vec<(N, H)>,
+}
+
+impl<H: Copy + PartialEq, N: Copy + Ord> ConsensusChanges<H, N> {
+	/// Create empty consensus changes.
+	pub fn empty() -> Self {
+		ConsensusChanges { pending_changes: Vec::new(), }
+	}
+
+	/// Note unfinalized change of consensus-related data.
+	pub fn note_change(&mut self, at: (N, H)) {
+		let idx = self.pending_changes
+			.binary_search_by_key(&at.0, |change| change.0)
+			.unwrap_or_else(|i| i);
+		self.pending_changes.insert(idx, at);
+	}
+
+	/// Finalize all pending consensus changes that are finalized by given block.
+	/// Returns true if there any changes were finalized.
+	pub fn finalize<F: Fn(N) -> ::client::error::Result<Option<H>>>(
+		&mut self,
+		block: (N, H),
+		canonical_at_height: F,
+	) -> ::client::error::Result<(bool, bool)> {
+		let (split_idx, has_finalized_changes) = self.pending_changes.iter()
+			.enumerate()
+			.take_while(|(_, &(at_height, _))| at_height <= block.0)
+			.fold((None, Ok(false)), |(_, has_finalized_changes), (idx, ref at)|
+				(
+					Some(idx),
+					has_finalized_changes
+						.and_then(|has_finalized_changes| if has_finalized_changes {
+							Ok(has_finalized_changes)
+						} else {
+							canonical_at_height(at.0).map(|can_hash| Some(at.1) == can_hash)
+						}),
+				));
+
+		let altered_changes = split_idx.is_some();
+		if let Some(split_idx) = split_idx {
+			self.pending_changes = self.pending_changes.split_off(split_idx + 1);
+		}
+		has_finalized_changes.map(|has_finalized_changes| (altered_changes, has_finalized_changes))
+	}
+}
+
+/// Thread-safe consensus changes tracker reference.
+type SharedConsensusChanges<H, N> = Arc<parking_lot::Mutex<ConsensusChanges<H, N>>>;
+
 /// The environment we run GRANDPA in.
 struct Environment<B, E, Block: BlockT, N: Network, RA> {
 	inner: Arc<Client<B, E, Block, RA>>,
 	voters: Arc<HashMap<Ed25519AuthorityId, u64>>,
 	config: Config,
 	authority_set: SharedAuthoritySet<Block::Hash, NumberFor<Block>>,
+	consensus_changes: SharedConsensusChanges<Block::Hash, NumberFor<Block>>,
 	network: N,
 	set_id: u64,
 }
@@ -515,7 +576,15 @@ impl<B, E, Block: BlockT<Hash=H256>, N, RA> voter::Environment<Block::Hash, Numb
 	}
 
 	fn finalize_block(&self, hash: Block::Hash, number: NumberFor<Block>, round: u64, commit: Commit<Block>) -> Result<(), Self::Error> {
-		finalize_block(&*self.inner, &self.authority_set, hash, number, (round, commit).into())
+		finalize_block(
+			&*self.inner,
+			&self.authority_set,
+			&self.consensus_changes,
+			Some(As::sa(self.config.justification_period)),
+			hash,
+			number,
+			(round, commit).into(),
+		)
 	}
 
 	fn round_commit_timer(&self) -> Self::Timer {
@@ -616,20 +685,23 @@ impl<Block: BlockT<Hash=H256>> GrandpaJustification<Block> {
 	) -> Result<GrandpaJustification<Block>, ClientError> where
 		NumberFor<Block>: grandpa::BlockNumberOps,
 	{
-		use grandpa::Chain;
+		GrandpaJustification::<Block>::decode(&mut &*encoded).ok_or_else(|| {
+			let msg = "failed to decode grandpa justification".to_string();
+			ClientErrorKind::BadJustification(msg).into()
+		}).and_then(|just| just.verify(set_id, voters).map(|_| just))
+	}
 
-		let justification = match GrandpaJustification::decode(&mut &*encoded) {
-			Some(justification) => justification,
-			_ => {
-				let msg = "failed to decode grandpa justification".to_string();
-				return Err(ClientErrorKind::BadJustification(msg).into());
-			}
-		};
+	/// Validate the commit and the votes' ancestry proofs.
+	fn verify(&self, set_id: u64, voters: &HashMap<Ed25519AuthorityId, u64>) -> Result<(), ClientError>
+	where
+		NumberFor<Block>: grandpa::BlockNumberOps,
+	{
+		use grandpa::Chain;
 
-		let ancestry_chain = AncestryChain::<Block>::new(&justification.votes_ancestries);
+		let ancestry_chain = AncestryChain::<Block>::new(&self.votes_ancestries);
 
 		match grandpa::validate_commit(
-			&justification.commit,
+			&self.commit,
 			voters,
 			None,
 			&ancestry_chain,
@@ -642,23 +714,23 @@ impl<Block: BlockT<Hash=H256>> GrandpaJustification<Block> {
 		}
 
 		let mut visited_hashes = HashSet::new();
-		for signed in justification.commit.precommits.iter() {
+		for signed in self.commit.precommits.iter() {
 			if let Err(_) = communication::check_message_sig::<Block>(
 				&grandpa::Message::Precommit(signed.precommit.clone()),
 				&signed.id,
 				&signed.signature,
-				justification.round,
+				self.round,
 				set_id,
 			) {
 				return Err(ClientErrorKind::BadJustification(
 					"invalid signature for precommit in grandpa justification".to_string()).into());
 			}
 
-			if justification.commit.target_hash == signed.precommit.target_hash {
+			if self.commit.target_hash == signed.precommit.target_hash {
 				continue;
 			}
 
-			match ancestry_chain.ancestry(justification.commit.target_hash, signed.precommit.target_hash) {
+			match ancestry_chain.ancestry(self.commit.target_hash, signed.precommit.target_hash) {
 				Ok(route) => {
 					// ancestry starts from parent hash but the precommit target hash has been visited
 					visited_hashes.insert(signed.precommit.target_hash);
@@ -673,7 +745,7 @@ impl<Block: BlockT<Hash=H256>> GrandpaJustification<Block> {
 			}
 		}
 
-		let ancestry_hashes = justification.votes_ancestries
+		let ancestry_hashes = self.votes_ancestries
 			.iter()
 			.map(|h: &Block::Header| h.hash())
 			.collect();
@@ -683,7 +755,7 @@ impl<Block: BlockT<Hash=H256>> GrandpaJustification<Block> {
 				"invalid precommit ancestries in grandpa justification with unused headers".to_string()).into());
 		}
 
-		Ok(justification)
+		Ok(())
 	}
 }
 
@@ -710,6 +782,8 @@ impl<Block: BlockT> From<GrandpaJustification<Block>> for JustificationOrCommit<
 fn finalize_block<B, Block: BlockT<Hash=H256>, E, RA>(
 	client: &Client<B, E, Block, RA>,
 	authority_set: &SharedAuthoritySet<Block::Hash, NumberFor<Block>>,
+	consensus_changes: &SharedConsensusChanges<Block::Hash, NumberFor<Block>>,
+	justification_period: Option<NumberFor<Block>>,
 	hash: Block::Hash,
 	number: NumberFor<Block>,
 	justification_or_commit: JustificationOrCommit<Block>,
@@ -720,6 +794,7 @@ fn finalize_block<B, Block: BlockT<Hash=H256>, E, RA>(
 {
 	// lock must be held through writing to DB to avoid race
 	let mut authority_set = authority_set.inner().write();
+	let mut consensus_changes = consensus_changes.lock();
 	let status = authority_set.apply_changes(number, |canon_number| {
 		canonical_at_height(client, (hash, number), canon_number)
 	})?;
@@ -756,6 +831,20 @@ fn finalize_block<B, Block: BlockT<Hash=H256>, E, RA>(
 		}
 	}
 
+	// check if this is this is the first finalization of some consensus changes
+	let (alters_consensus_changes, finalizes_consensus_changes) = consensus_changes
+		.finalize((number, hash), |at_height| canonical_at_height(client, (hash, number), at_height))?;
+	if alters_consensus_changes {
+		let encoded = consensus_changes.encode();
+		let write_result = Backend::insert_aux(&**client.backend(), &[(CONSENSUS_CHANGES_KEY, &encoded[..])], &[]);
+		if let Err(e) = write_result {
+			warn!(target: "finality", "Failed to write updated consensus changes to disk. Bailing.");
+			warn!(target: "finality", "Node is in a potentially inconsistent state.");
+
+			return Err(e.into());
+		}
+	}
+
 	// NOTE: this code assumes that honest voters will never vote past a
 	// transition block, thus we don't have to worry about the case where
 	// we have a transition with `effective_block = N`, but we finalize
@@ -764,8 +853,26 @@ fn finalize_block<B, Block: BlockT<Hash=H256>, E, RA>(
 	// syncing clients.
 	let justification = match justification_or_commit {
 		JustificationOrCommit::Justification(justification) => Some(justification.encode()),
-		JustificationOrCommit::Commit((round_number, commit)) =>
-			if status.new_set_block.is_some() {
+		JustificationOrCommit::Commit((round_number, commit)) => {
+			let mut justification_required =
+				// justification is always required when block that enacts new authorities
+				// set is finalized
+				status.new_set_block.is_some() ||
+				// justification is required when consensus changes are finalized
+				finalizes_consensus_changes;
+
+			// justification is required every N blocks to be able to prove blocks
+			// finalization to remote nodes
+			if !justification_required {
+				if let Some(justification_period) = justification_period {
+					let last_finalized_number = client.info()?.chain.finalized_number;
+					justification_required = (!last_finalized_number.is_zero() ||
+						number - last_finalized_number == justification_period) &&
+						(last_finalized_number / justification_period != number / justification_period);
+				}
+			}
+
+			if justification_required {
 				let justification = GrandpaJustification::from_commit(
 					client,
 					round_number,
@@ -775,7 +882,8 @@ fn finalize_block<B, Block: BlockT<Hash=H256>, E, RA>(
 				Some(justification.encode())
 			} else {
 				None
-			},
+			}
+		},
 	};
 
 	debug!(target: "afg", "Finalizing blocks up to ({:?}, {})", number, hash);
@@ -822,6 +930,7 @@ pub struct GrandpaBlockImport<B, E, Block: BlockT<Hash=H256>, RA, PRA> {
 	inner: Arc<Client<B, E, Block, RA>>,
 	authority_set: SharedAuthoritySet<Block::Hash, NumberFor<Block>>,
 	authority_set_change: mpsc::UnboundedSender<NewAuthoritySet<Block::Hash, NumberFor<Block>>>,
+	consensus_changes: SharedConsensusChanges<Block::Hash, NumberFor<Block>>,
 	api: Arc<PRA>,
 }
 
@@ -909,6 +1018,7 @@ impl<B, E, Block: BlockT<Hash=H256>, RA, PRA> BlockImport<Block>
 
 		// we don't want to finalize on `inner.import_block`
 		let justification = block.justification.take();
+		let enacts_consensus_change = new_authorities.is_some();
 		let import_result = self.inner.import_block(block, new_authorities).map_err(|e| {
 			if let Some((old_set, mut authorities)) = just_in_case {
 				debug!(target: "afg", "Restoring old set after block import error: {:?}", e);
@@ -918,22 +1028,17 @@ impl<B, E, Block: BlockT<Hash=H256>, RA, PRA> BlockImport<Block>
 		});
 
 		let import_result = match import_result {
-		    Ok(ImportResult::Queued) => ImportResult::Queued,
-		    Ok(r) => return Ok(r),
-		    Err(e) => return Err(ConsensusErrorKind::ClientImport(e.to_string()).into()),
+			Ok(ImportResult::Queued) => ImportResult::Queued,
+			Ok(r) => return Ok(r),
+			Err(e) => return Err(ConsensusErrorKind::ClientImport(e.to_string()).into()),
 		};
 
 		let enacts_change = self.authority_set.inner().read().enacts_change(number, |canon_number| {
 			canonical_at_height(&self.inner, (hash, number), canon_number)
-		});
+		}).map_err(|e| ConsensusError::from(ConsensusErrorKind::ClientImport(e.to_string())))?;
 
-		match enacts_change {
-			Err(e) => return Err(ConsensusErrorKind::ClientImport(e.to_string()).into()),
-			Ok(enacted) => {
-				if !enacted {
-					return Ok(import_result);
-				}
-			}
+		if !enacts_change && !enacts_consensus_change {
+			return Ok(import_result);
 		}
 
 		match justification {
@@ -952,6 +1057,8 @@ impl<B, E, Block: BlockT<Hash=H256>, RA, PRA> BlockImport<Block>
 				let result = finalize_block(
 					&*self.inner,
 					&self.authority_set,
+					&self.consensus_changes,
+					None,
 					hash,
 					number,
 					justification.into(),
@@ -959,11 +1066,14 @@ impl<B, E, Block: BlockT<Hash=H256>, RA, PRA> BlockImport<Block>
 
 				match result {
 					Ok(_) => {
-						unreachable!("returns Ok when no authority set change should be enacted; \
-									  verified previously that finalizing the current block enacts a change; \
-									  qed;");
+						assert!(!enacts_change, "returns Ok when no authority set change should be enacted; qed;");
 					},
 					Err(ExitOrError::AuthoritiesChanged(new)) => {
+						assert!(
+							enacts_change,
+							"returns AuthoritiesChanged when authority set change should be enacted; qed;"
+						);
+
 						debug!(target: "finality", "Imported justified block #{} that enacts authority set change, signalling voter.", number);
 						if let Err(e) = self.authority_set_change.unbounded_send(new) {
 							return Err(ConsensusErrorKind::ClientImport(e.to_string()).into());
@@ -981,8 +1091,20 @@ impl<B, E, Block: BlockT<Hash=H256>, RA, PRA> BlockImport<Block>
 				}
 			},
 			None => {
-				trace!(target: "finality", "Imported unjustified block #{} that enacts authority set change, waiting for finality for enactment.", number);
-			}
+				if enacts_change {
+					trace!(
+						target: "finality",
+						"Imported unjustified block #{} that enacts authority set change, waiting for finality for enactment.",
+						number,
+					);
+				}
+
+				// we have imported block with consensus data changes, but without justification
+				// => remember to create justification when next block will be finalized
+				if enacts_consensus_change {
+					self.consensus_changes.lock().note_change((number, hash));
+				}
+			},
 		}
 
 		Ok(import_result)
@@ -1060,6 +1182,7 @@ pub struct LinkHalf<B, E, Block: BlockT<Hash=H256>, RA> {
 	client: Arc<Client<B, E, Block, RA>>,
 	authority_set: SharedAuthoritySet<Block::Hash, NumberFor<Block>>,
 	authority_set_change: mpsc::UnboundedReceiver<NewAuthoritySet<Block::Hash, NumberFor<Block>>>,
+	consensus_changes: SharedConsensusChanges<Block::Hash, NumberFor<Block>>,
 }
 
 struct AncestryChain<Block: BlockT> {
@@ -1142,6 +1265,15 @@ pub fn block_import<B, E, Block: BlockT<Hash=H256>, RA, PRA>(
 			.into(),
 	};
 
+	let consensus_changes = Backend::get_aux(&**client.backend(), CONSENSUS_CHANGES_KEY)?;
+	let consensus_changes = Arc::new(parking_lot::Mutex::new(match consensus_changes {
+		Some(raw) => ConsensusChanges::decode(&mut &raw[..])
+			.ok_or_else(|| ::client::error::ErrorKind::Backend(
+				format!("GRANDPA consensus changes kept in invalid format")
+			))?,
+		None => ConsensusChanges::empty(),
+	}));
+
 	let (authority_set_change_tx, authority_set_change_rx) = mpsc::unbounded();
 
 	Ok((
@@ -1149,12 +1281,14 @@ pub fn block_import<B, E, Block: BlockT<Hash=H256>, RA, PRA>(
 			inner: client.clone(),
 			authority_set: authority_set.clone(),
 			authority_set_change: authority_set_change_tx,
+			consensus_changes: consensus_changes.clone(),
 			api
 		},
 		LinkHalf {
 			client,
 			authority_set,
 			authority_set_change: authority_set_change_rx,
+			consensus_changes,
 		},
 	))
 }
@@ -1231,6 +1365,7 @@ pub fn run_grandpa<B, E, Block: BlockT<Hash=H256>, N, RA>(
 		client,
 		authority_set,
 		authority_set_change,
+		consensus_changes,
 	} = link;
 
 	let chain_info = client.info()?;
@@ -1253,6 +1388,7 @@ pub fn run_grandpa<B, E, Block: BlockT<Hash=H256>, N, RA>(
 		network: network.clone(),
 		set_id: authority_set.set_id(),
 		authority_set: authority_set.clone(),
+		consensus_changes: consensus_changes.clone(),
 	});
 
 	let initial_state = (initial_environment, last_round_number, last_state, authority_set_change.into_future());
@@ -1291,6 +1427,7 @@ pub fn run_grandpa<B, E, Block: BlockT<Hash=H256>, N, RA>(
 		let config = config.clone();
 		let network = network.clone();
 		let authority_set = authority_set.clone();
+		let consensus_changes = consensus_changes.clone();
 
 		let trigger_authority_set_change = |new: NewAuthoritySet<_, _>, authority_set_change| {
 			let env = Arc::new(Environment {
@@ -1300,6 +1437,7 @@ pub fn run_grandpa<B, E, Block: BlockT<Hash=H256>, N, RA>(
 				set_id: new.set_id,
 				network,
 				authority_set,
+				consensus_changes,
 			});
 
 			// start the new authority set using the block where the
diff --git a/substrate/core/finality-grandpa/src/tests.rs b/substrate/core/finality-grandpa/src/tests.rs
index 18bfaef1a5f..39924263adf 100644
--- a/substrate/core/finality-grandpa/src/tests.rs
+++ b/substrate/core/finality-grandpa/src/tests.rs
@@ -25,6 +25,7 @@ use tokio::runtime::current_thread;
 use keyring::Keyring;
 use client::{
 	BlockchainEvents, error::Result,
+	blockchain::Backend as BlockchainBackend,
 	runtime_api::{Core, RuntimeVersion, ApiExt, ConstructRuntimeApi, CallRuntimeAt},
 };
 use test_client::{self, runtime::BlockNumber};
@@ -332,22 +333,7 @@ fn make_ids(keys: &[Keyring]) -> Vec<(Ed25519AuthorityId, u64)> {
 		.collect()
 }
 
-#[test]
-fn finalize_3_voters_no_observers() {
-	let peers = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie];
-	let voters = make_ids(peers);
-
-	let mut net = GrandpaTestNet::new(TestApi::new(voters), 3);
-	net.peer(0).push_blocks(20, false);
-	net.sync();
-
-	for i in 0..3 {
-		assert_eq!(net.peer(i).client().info().unwrap().chain.best_number, 20,
-			"Peer #{} failed to sync", i);
-	}
-
-	let net = Arc::new(Mutex::new(net));
-
+fn run_to_completion(blocks: u64, net: Arc<Mutex<GrandpaTestNet>>, peers: &[Keyring]) {
 	let mut finality_notifications = Vec::new();
 	let mut runtime = current_thread::Runtime::new().unwrap();
 
@@ -363,7 +349,7 @@ fn finalize_3_voters_no_observers() {
 		};
 		finality_notifications.push(
 			client.finality_notification_stream()
-				.take_while(|n| Ok(n.header.number() < &20))
+				.take_while(|n| Ok(n.header.number() < &blocks))
 				.for_each(|_| Ok(()))
 		);
 		fn assert_send<T: Send>(_: &T) { }
@@ -371,6 +357,7 @@ fn finalize_3_voters_no_observers() {
 		let voter = run_grandpa(
 			Config {
 				gossip_duration: TEST_GOSSIP_DURATION,
+				justification_period: 32,
 				local_key: Some(Arc::new(key.clone().into())),
 				name: Some(format!("peer#{}", peer_id)),
 			},
@@ -397,6 +384,28 @@ fn finalize_3_voters_no_observers() {
 	runtime.block_on(wait_for.select(drive_to_completion).map_err(|_| ())).unwrap();
 }
 
+#[test]
+fn finalize_3_voters_no_observers() {
+	let peers = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie];
+	let voters = make_ids(peers);
+
+	let mut net = GrandpaTestNet::new(TestApi::new(voters), 3);
+	net.peer(0).push_blocks(20, false);
+	net.sync();
+
+	for i in 0..3 {
+		assert_eq!(net.peer(i).client().info().unwrap().chain.best_number, 20,
+			"Peer #{} failed to sync", i);
+	}
+
+	let net = Arc::new(Mutex::new(net));
+	run_to_completion(20, net.clone(), peers);
+
+	// normally there's no justification for finalized blocks
+	assert!(net.lock().peer(0).client().backend().blockchain().justification(BlockId::Number(20)).unwrap().is_none(),
+		"Extra justification for block#1");
+}
+
 #[test]
 fn finalize_3_voters_1_observer() {
 	let peers = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie];
@@ -432,6 +441,7 @@ fn finalize_3_voters_1_observer() {
 		let voter = run_grandpa(
 			Config {
 				gossip_duration: TEST_GOSSIP_DURATION,
+				justification_period: 32,
 				local_key,
 				name: Some(format!("peer#{}", peer_id)),
 			},
@@ -589,6 +599,7 @@ fn transition_3_voters_twice_1_observer() {
 		let voter = run_grandpa(
 			Config {
 				gossip_duration: TEST_GOSSIP_DURATION,
+				justification_period: 32,
 				local_key,
 				name: Some(format!("peer#{}", peer_id)),
 			},
@@ -616,3 +627,59 @@ fn transition_3_voters_twice_1_observer() {
 
 	runtime.block_on(wait_for.select(drive_to_completion).map_err(|_| ())).unwrap();
 }
+
+#[test]
+fn justification_is_emitted_when_consensus_data_changes() {
+	let peers = &[Keyring::Alice, Keyring::Bob, Keyring::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])];
+	net.peer(0).push_authorities_change_block(new_authorities);
+	net.sync();
+	let net = Arc::new(Mutex::new(net));
+	run_to_completion(1, net.clone(), peers);
+
+	// ... and check that there's no justification for block#1
+	assert!(net.lock().peer(0).client().backend().blockchain().justification(BlockId::Number(1)).unwrap().is_some(),
+		"Missing justification for block#1");
+}
+
+#[test]
+fn justification_is_generated_periodically() {
+	let peers = &[Keyring::Alice, Keyring::Bob, Keyring::Charlie];
+	let voters = make_ids(peers);
+
+	let mut net = GrandpaTestNet::new(TestApi::new(voters), 3);
+	net.peer(0).push_blocks(32, false);
+	net.sync();
+
+	let net = Arc::new(Mutex::new(net));
+	run_to_completion(32, net.clone(), peers);
+
+ 	// when block#32 (justification_period) is finalized, justification
+	// is required => generated
+	for i in 0..3 {
+		assert!(net.lock().peer(i).client().backend().blockchain()
+			.justification(BlockId::Number(32)).unwrap().is_some());
+	}
+}
+
+#[test]
+fn consensus_changes_works() {
+	let mut changes = ConsensusChanges::<H256, u64>::empty();
+
+	// pending changes are not finalized
+	changes.note_change((10, 1.into()));
+	assert_eq!(changes.finalize((5, 5.into()), |_| Ok(None)).unwrap(), (false, false));
+
+	// no change is selected from competing pending changes
+	changes.note_change((1, 1.into()));
+	changes.note_change((1, 101.into()));
+	assert_eq!(changes.finalize((10, 10.into()), |_| Ok(Some(1001.into()))).unwrap(), (true, false));
+
+	// change is selected from competing pending changes
+	changes.note_change((1, 1.into()));
+	changes.note_change((1, 101.into()));
+	assert_eq!(changes.finalize((10, 10.into()), |_| Ok(Some(1.into()))).unwrap(), (true, true));
+}
\ No newline at end of file
diff --git a/substrate/core/network/src/test/mod.rs b/substrate/core/network/src/test/mod.rs
index 48b401b21ae..95238160154 100644
--- a/substrate/core/network/src/test/mod.rs
+++ b/substrate/core/network/src/test/mod.rs
@@ -27,9 +27,10 @@ use std::sync::Arc;
 use parking_lot::RwLock;
 use client;
 use client::block_builder::BlockBuilder;
+use primitives::Ed25519AuthorityId;
 use runtime_primitives::Justification;
 use runtime_primitives::generic::BlockId;
-use runtime_primitives::traits::{Block as BlockT, Zero, AuthorityIdFor};
+use runtime_primitives::traits::{Block as BlockT, Zero, Header, Digest, DigestItem, AuthorityIdFor};
 use io::SyncIo;
 use protocol::{Context, Protocol, ProtocolContext};
 use config::ProtocolConfig;
@@ -92,6 +93,9 @@ impl<B: BlockT> Verifier<B> for PassThroughVerifier {
 		justification: Option<Justification>,
 		body: Option<Vec<B::Extrinsic>>
 	) -> Result<(ImportBlock<B>, Option<Vec<AuthorityIdFor<B>>>), String> {
+		let new_authorities = header.digest().log(DigestItem::as_authorities_change)
+			.map(|auth| auth.iter().cloned().collect());
+
 		Ok((ImportBlock {
 			origin,
 			header,
@@ -101,7 +105,7 @@ impl<B: BlockT> Verifier<B> for PassThroughVerifier {
 			post_digests: vec![],
 			auxiliary: Vec::new(),
 			fork_choice: ForkChoiceStrategy::LongestChain,
-		}, None))
+		}, new_authorities))
 	}
 }
 
@@ -414,7 +418,7 @@ impl<V: 'static + Verifier<Block>, D> Peer<V, D> {
 					nonce,
 				};
 				let signature = Keyring::from_raw_public(transfer.from.to_fixed_bytes()).unwrap().sign(&transfer.encode()).into();
-				builder.push(Extrinsic { transfer, signature }).unwrap();
+				builder.push(Extrinsic::Transfer(transfer, signature)).unwrap();
 				nonce = nonce + 1;
 				builder.bake().unwrap()
 			});
@@ -423,6 +427,13 @@ impl<V: 'static + Verifier<Block>, D> Peer<V, D> {
 		}
 	}
 
+	pub fn push_authorities_change_block(&self, new_authorities: Vec<Ed25519AuthorityId>) {
+		self.generate_blocks(1, BlockOrigin::File, |mut builder| {
+			builder.push(Extrinsic::AuthoritiesChange(new_authorities.clone())).unwrap();
+			builder.bake().unwrap()
+		});
+	}
+
 	/// Execute a function with specialization for this peer.
 	pub fn with_spec<F, U>(&self, f: F) -> U
 		where F: FnOnce(&mut DummySpecialization, &mut Context<Block>) -> U
diff --git a/substrate/core/rpc/src/author/tests.rs b/substrate/core/rpc/src/author/tests.rs
index 82f5d371626..d84fa72225d 100644
--- a/substrate/core/rpc/src/author/tests.rs
+++ b/substrate/core/rpc/src/author/tests.rs
@@ -36,7 +36,7 @@ fn uxt(sender: Keyring, nonce: u64) -> Extrinsic {
 		to: Default::default(),
 	};
 	let signature = Keyring::from_raw_public(tx.from.to_fixed_bytes()).unwrap().sign(&tx.encode()).into();
-	Extrinsic { transfer: tx, signature }
+	Extrinsic::Transfer(tx, signature)
 }
 
 #[test]
@@ -48,7 +48,7 @@ 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!("e10ad66bce51ef3e2a1167934ce3740d2d8c703810f9b314e89f2e783f75e826").into();
+	let h: H256 = hex!("81897a4890fb7554e7f77c533a865846a11583a56a8ad5e307543188d55e64f1").into();
 
 	assert_matches!(
 		AuthorApi::submit_extrinsic(&p, uxt(Keyring::Alice, 1).encode().into()),
@@ -68,7 +68,7 @@ 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!("fccc48291473c53746cd267cf848449edd7711ee6511fba96919d5f9f4859e4f").into();
+	let h: H256 = hex!("9ec8469b5dcfe29cc274ac1d07ad73d80be57566ace0fcdbe51ebcf4b51e925b").into();
 
 	assert_matches!(
 		AuthorApi::submit_extrinsic(&p, uxt(Keyring::Alice, 0).encode().into()),
@@ -106,7 +106,7 @@ fn should_watch_extrinsic() {
 			to: Default::default(),
 		};
 		let signature = Keyring::from_raw_public(tx.from.to_fixed_bytes()).unwrap().sign(&tx.encode()).into();
-		Extrinsic { transfer: tx, signature }
+		Extrinsic::Transfer(tx, signature)
 	};
 	AuthorApi::submit_extrinsic(&p, replacement.encode().into()).unwrap();
 	let (res, data) = runtime.block_on(data.into_future()).unwrap();
@@ -116,7 +116,7 @@ fn should_watch_extrinsic() {
 	);
 	assert_eq!(
 		runtime.block_on(data.into_future()).unwrap().0,
-		Some(r#"{"jsonrpc":"2.0","method":"test","params":{"result":{"usurped":"0xed454dcee51431679c2559403187a56567fded1fc50b6ae3aada87c1d412df5c"},"subscription":1}}"#.into())
+		Some(r#"{"jsonrpc":"2.0","method":"test","params":{"result":{"usurped":"0x53daed816610aa6b22dedbcee43aba44a7ca7155cc71f2919c5e79ebbc7de58c"},"subscription":1}}"#.into())
 	);
 }
 
diff --git a/substrate/core/service/src/components.rs b/substrate/core/service/src/components.rs
index 397e3d7a89d..dc116873b6e 100644
--- a/substrate/core/service/src/components.rs
+++ b/substrate/core/service/src/components.rs
@@ -561,7 +561,7 @@ mod tests {
 				to: Default::default(),
 			};
 			let signature = Keyring::from_raw_public(transfer.from.to_fixed_bytes()).unwrap().sign(&transfer.encode()).into();
-			Extrinsic { transfer, signature }
+			Extrinsic::Transfer(transfer, signature)
 		};
 		// store the transaction in the pool
 		pool.submit_one(&BlockId::hash(client.best_block_header().unwrap().hash()), transaction.clone()).unwrap();
diff --git a/substrate/core/sr-primitives/src/traits.rs b/substrate/core/sr-primitives/src/traits.rs
index 67e441c7924..ac15df0881a 100644
--- a/substrate/core/sr-primitives/src/traits.rs
+++ b/substrate/core/sr-primitives/src/traits.rs
@@ -574,7 +574,7 @@ pub trait Digest: Member + MaybeSerializeDebugButNotDeserialize + Default {
 	fn pop(&mut self) -> Option<Self::Item>;
 
 	/// Get reference to the first digest item that matches the passed predicate.
-	fn log<T, F: Fn(&Self::Item) -> Option<&T>>(&self, predicate: F) -> Option<&T> {
+	fn log<T: ?Sized, F: Fn(&Self::Item) -> Option<&T>>(&self, predicate: F) -> Option<&T> {
 		self.logs().iter()
 			.filter_map(predicate)
 			.next()
diff --git a/substrate/core/test-client/src/block_builder_ext.rs b/substrate/core/test-client/src/block_builder_ext.rs
index 651559114af..5803c5303d4 100644
--- a/substrate/core/test-client/src/block_builder_ext.rs
+++ b/substrate/core/test-client/src/block_builder_ext.rs
@@ -40,5 +40,5 @@ 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()).unwrap().sign(&codec::Encode::encode(&transfer)).into();
-	runtime::Extrinsic { transfer, signature }
+	runtime::Extrinsic::Transfer(transfer, signature)
 }
diff --git a/substrate/core/test-runtime/src/lib.rs b/substrate/core/test-runtime/src/lib.rs
index eb5efdf684a..3d2e9b5ca8a 100644
--- a/substrate/core/test-runtime/src/lib.rs
+++ b/substrate/core/test-runtime/src/lib.rs
@@ -104,9 +104,9 @@ pub struct Transfer {
 /// Extrinsic for test-runtime.
 #[derive(Clone, PartialEq, Eq, Encode, Decode)]
 #[cfg_attr(feature = "std", derive(Debug))]
-pub struct Extrinsic {
-	pub transfer: Transfer,
-	pub signature: Ed25519Signature,
+pub enum Extrinsic {
+	AuthoritiesChange(Vec<Ed25519AuthorityId>),
+	Transfer(Transfer, Ed25519Signature),
 }
 
 #[cfg(feature = "std")]
@@ -121,10 +121,15 @@ impl BlindCheckable for Extrinsic {
 	type Checked = Self;
 
 	fn check(self) -> Result<Self, &'static str> {
-		if ::runtime_primitives::verify_encoded_lazy(&self.signature, &self.transfer, &self.transfer.from) {
-			Ok(self)
-		} else {
-			Err("bad signature")
+		match self {
+			Extrinsic::AuthoritiesChange(new_auth) => Ok(Extrinsic::AuthoritiesChange(new_auth)),
+			Extrinsic::Transfer(transfer, signature) => {
+				if ::runtime_primitives::verify_encoded_lazy(&signature, &transfer, &transfer.from) {
+					Ok(Extrinsic::Transfer(transfer, signature))
+				} else {
+					Err("bad signature")
+				}
+			},
 		}
 	}
 }
@@ -135,6 +140,15 @@ impl ExtrinsicT for Extrinsic {
 	}
 }
 
+impl Extrinsic {
+	pub fn transfer(&self) -> &Transfer {
+		match self {
+			Extrinsic::Transfer(ref transfer, _) => transfer,
+			_ => panic!("cannot convert to transfer ref"),
+		}
+	}
+}
+
 /// An identifier for an account on this system.
 pub type AccountId = H256;
 /// A simple hash type for all our hashing.
diff --git a/substrate/core/test-runtime/src/system.rs b/substrate/core/test-runtime/src/system.rs
index 19739b21cb2..d4559b1eb7f 100644
--- a/substrate/core/test-runtime/src/system.rs
+++ b/substrate/core/test-runtime/src/system.rs
@@ -24,7 +24,7 @@ use runtime_primitives::traits::{Hash as HashT, BlakeTwo256, Digest as DigestT};
 use runtime_primitives::generic;
 use runtime_primitives::{ApplyError, ApplyOutcome, ApplyResult, transaction_validity::TransactionValidity};
 use codec::{KeyedVec, Encode};
-use super::{AccountId, BlockNumber, Extrinsic, H256 as Hash, Block, Header, Digest};
+use super::{AccountId, BlockNumber, Extrinsic, Transfer, H256 as Hash, Block, Header, Digest};
 use primitives::{Ed25519AuthorityId, Blake2Hasher};
 use primitives::storage::well_known_keys;
 
@@ -36,6 +36,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<Ed25519AuthorityId>;
 }
 
 pub fn balance_of_key(who: AccountId) -> Vec<u8> {
@@ -96,17 +97,20 @@ pub fn execute_block(block: Block) {
 	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) = <NewAuthorities>::take() {
+		digest.push(generic::DigestItem::AuthoritiesChange(new_authorities));
+	}
 	assert!(digest == header.digest, "Header digest items must match that calculated.");
 }
 
 /// 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 {
-	let tx = match check_signature(&utx) {
-		Ok(tx) => tx,
-		Err(_) => return TransactionValidity::Invalid,
-	};
+	if check_signature(&utx).is_err() {
+		return TransactionValidity::Invalid;
+	}
 
+	let tx = utx.transfer();
 	let nonce_key = tx.from.to_keyed_vec(NONCE_OF);
 	let expected_nonce: u64 = storage::get_or(&nonce_key, 0);
 	if tx.nonce < expected_nonce {
@@ -166,6 +170,9 @@ pub fn finalise_block() -> Header {
 	if let Some(storage_changes_root) = storage_changes_root {
 		digest.push(generic::DigestItem::ChangesTrieRoot(storage_changes_root));
 	}
+	if let Some(new_authorities) = <NewAuthorities>::take() {
+		digest.push(generic::DigestItem::AuthoritiesChange(new_authorities));
+	}
 
 	Header {
 		number,
@@ -177,21 +184,21 @@ pub fn finalise_block() -> Header {
 }
 
 #[inline(always)]
-fn check_signature(utx: &Extrinsic) -> Result<::Transfer, ApplyError> {
+fn check_signature(utx: &Extrinsic) -> Result<(), ApplyError> {
 	use runtime_primitives::traits::BlindCheckable;
-
-	let utx = match utx.clone().check() {
-		Ok(tx) => tx,
-		Err(_) => return Err(ApplyError::BadSignature),
-	};
-
-	Ok(utx.transfer)
+	utx.clone().check().map_err(|_| ApplyError::BadSignature)?;
+	Ok(())
 }
 
 fn execute_transaction_backend(utx: &Extrinsic) -> ApplyResult {
-	// check signature
-	let tx = check_signature(utx)?;
+	check_signature(utx)?;
+	match utx {
+		Extrinsic::Transfer(ref transfer, _) => execute_transfer_backend(transfer),
+		Extrinsic::AuthoritiesChange(ref new_auth) => execute_new_authorities_backend(new_auth),
+	}
+}
 
+fn execute_transfer_backend(tx: &Transfer) -> ApplyResult {
 	// check nonce
 	let nonce_key = tx.from.to_keyed_vec(NONCE_OF);
 	let expected_nonce: u64 = storage::get_or(&nonce_key, 0);
@@ -217,6 +224,12 @@ fn execute_transaction_backend(utx: &Extrinsic) -> ApplyResult {
 	Ok(ApplyOutcome::Success)
 }
 
+fn execute_new_authorities_backend(new_authorities: &[Ed25519AuthorityId]) -> ApplyResult {
+	let new_authorities: Vec<Ed25519AuthorityId> = new_authorities.iter().cloned().collect();
+	<NewAuthorities>::put(new_authorities);
+	Ok(ApplyOutcome::Success)
+}
+
 #[cfg(feature = "std")]
 fn info_expect_equal_hash(given: &Hash, expected: &Hash) {
 	use primitives::hexdisplay::HexDisplay;
@@ -266,7 +279,7 @@ mod tests {
 
 	fn construct_signed_tx(tx: Transfer) -> Extrinsic {
 		let signature = Keyring::from_raw_public(tx.from.to_fixed_bytes()).unwrap().sign(&tx.encode()).into();
-		Extrinsic { transfer: tx, signature }
+		Extrinsic::Transfer(tx, signature)
 	}
 
 	fn block_import_works<F>(block_executor: F) where F: Fn(Block, &mut TestExternalities<Blake2Hasher>) {
@@ -318,7 +331,7 @@ mod tests {
 				parent_hash: [69u8; 32].into(),
 				number: 1,
 				state_root: hex!("c3d2cc317b5897af4c7f65d76b028971ce9fad745678732ff6d42301b4245a9c").into(),
-				extrinsics_root: hex!("4e689a607609f69df099af82577ae6c5969c44f1afe33a43cd7af926eba42272").into(),
+				extrinsics_root: hex!("198205cb7729fec8ccdc2e58571a4858586a4f305898078e0e8bee1dddea7e4b").into(),
 				digest: Digest { logs: vec![], },
 			},
 			extrinsics: vec![
@@ -343,7 +356,7 @@ mod tests {
 				parent_hash: b.header.hash(),
 				number: 2,
 				state_root: hex!("2c822d948bb68d7f7a1976d4f827a276a95a3ba1c4c15dbfab3bafbeb85f2b4d").into(),
-				extrinsics_root: hex!("009268a854b21f339c53d3c7a6619a27f564703311d91f11f61573a7fed5ca1c").into(),
+				extrinsics_root: hex!("041fa8971dda28745967179a9f39e3ca1a595c510682105df1cff74ae6f05e0d").into(),
 				digest: Digest { logs: vec![], },
 			},
 			extrinsics: vec![
diff --git a/substrate/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm b/substrate/core/test-runtime/wasm/target/wasm32-unknown-unknown/release/substrate_test_runtime.compact.wasm
index 451cac0489f4632dad587a0e8fb8ecc07753ba98..3b32eaae5b4fceef8dc3368b0ffa18a0fd59d501 100644
GIT binary patch
literal 46028
zcmeIbdyrh$edl){J>5Oi)0oDC5-3pOofd5lEQ08HKLkm*5J3{69+bjTX`OY3Ju^MP
z3<fjcOb<zTWfHQv6difjaI9U?yGn(rY=zp2nWeL-(pK3U!@G7QCr%cdQevgz&7u<3
zu97%0Dw|Zak}J&T`#a~}zC9R_kmNY|V+jKH-gD1A=XZYZ^E<zDI%w})3WFdBe|qHU
z_{A4r3}1XYvVRA7u$z*<QXD*O55d!+yL~~`^%W&AsFcSbpyUNg)XWPidm;L}Q9bT#
zK6|9|e0TADr@Oe*-P&%S?<}rucDI5^uMX)|XJuk~dVGHI+0ORb>XjhYivxObd7GMx
zyWQ2fprpcjukb?Wc~>@~vYlSz!GLNWRO#|Yr@ftZ>S{Nvwg+Q-YpWZSRsCqOc=<wm
z^L%G#(Oy^ddRVW!&uu-wI6g5KRQG_gxqB%XRN4DgZE2%@u`{taF+H=`;Z0||-R-O_
zcDL6$u0aEDNHs6DH#WAGgCTudRl(|Zrvp5vKT@j=4+W)awdDRQ*TS$A43)wtDAntw
zdZ}6}*Xy-<y&mdc{x1)egQ03zJ`jqgrGfBrI5;>Ehrz+}z441-diCn{p!Q;r{_(FA
zu9aVl50)==E^TdJiGq6<p~}kIc4rwlb~l&1Yg?O(-S*N(Ck$$fix)cW%Zp3xolYDM
zEiSIKyKP3d5=X-y-P-Pma68lw#v1n6-tAu4+Ft9fb#{W|hpedcd}n#L+W|XU%NK(W
z++&4no78D<tnFmwt%INFblcYYC4Uo)f8eS1`SYEXr?%UhJ8gsO)4QErI^|2McED}^
zCYZeMjCwe;ySA~?*<Ng4zPxc|5!}K^J8R3q)Um$Tt81IZ?x&N!w`-dhI@=u>F#moh
znC)+W`9f#;B8YPpcY^t&eJudk%GM>gv$GN`9D1s=(@mc|2O2lpo6DWWt<~VvJ?ZXt
zJH5QNxU;d<U0mTohz~wAcpwbYuvUHKefQ5i@c7wBhra)}qmK*(jRQe#C`iBk^VfsM
z$)NTdVHm#{opyhcXe=r<<MhRk*ZFj`6rE1uv-Lp5!Dy7kjYhL{wjL*?L=PW(Pc4bl
zu-hEqQeAIGln$Ib)*MKK$Lpb5bYGW}I2mXh)TiO_K#hBvsh7A(!^WYY)~NFrsMMIA
z6FQuUs$2$Uq7s+VOvFD)yq<)!K~O6PNznKRgWy$|M2)ltv_JUL^&o9FBHsVKYB-P&
zDI40|UXw8W$P*fJT3T<$jGH^gR^qNX@K`+*(Cf`I1Fhey`);$6l=)L(;1vy=(zEpe
zLs>GAR2X;pY`r}Et{N?0y&8UsCi1pvr_lPvH2PE>6sFNSjncu<r0mdJN%ZV7OX=Bq
z)pY<Iu7knh!!<{y^6)*btE*Q_Z`&DfOLWFCt+RLS+Zm;MJF5>4AISSU$ld;!g627<
zj_ivmO3&5@`!H1>8m`wsTBBL6H@NW(Vf<GX@A$il<DznXDCZ($D}Ys{q%4jRU}7Oh
zLa{LK+>liW?qH}i>ZZ~5Ob`sylywY)_cu}5r-^VqYa)#of*|9rL>vQE9lKmi!7*H%
z<9K*q98-#9^bxck4VUx5Mt-noB{M(F*fc6(%40FZX7>C}O-1<_9h$=J57Hpe6hC}>
z<k*Mcr{)mk(1ZRkX}Xvo4WK8<1S-zdi3BR=cS>{gI7Py9G%Q?*rm^m%QsTN0<yDH*
z2|CJAZhtnQTfL^qbtw|5vw!wyqzsck4`tYllkj*Dpb<gaQL*yT_58V^=SJ_js^_YI
zuKi~*8uI-?+PK(^9tcv9h_D0;!AKH<QvHL5Pe<0%Q1{hFFj_*>>NY7M)M@xc6SaY8
zRXtr%?Oq0w=tMBmET{1^()XzCG<+21E~U|9=r($hW`}_mf+`k<A((betyBI%R0M&v
zVj6CzqIb}w>-5D(k2OP{`FpMz9y1m)`h{pQ7@?X*&yJR)BFc8B#^H=?Y#$6!wd%F(
zhnRO%wvN#2Zj=JYhH9X5&tP3YX>?9fdNM3@fTk!*$fFGM(Nfl<c*_P?&ITu(qJH`Y
z1YXmU4XDhx{eT$1I2+V4hNw0i+Aw4nv4k>+p06A04+OPu#9^gJOS*uLBB!h+t%yrx
z)Pd`<<^W7Cib)HegE&IB?k_e?VTL9QqH9LXjIN?;+>A4-ss+(iI1*hMvj#`c2Xy&h
zILu`j<qLLV{XN&L9BWqT-E~<`suvAE)Tr8^D>9iU_1%f!K-%bTr`2u}Z;O;rz!BCu
zK&;c6YncI+)FkTmTphY<Fx=-Ym#k%UD|~k%sO@bLwGsE)hmx_W>ufB-w6h>0vHqTG
zR*yC1_GDefc~`M@Rdrgt<Ux)^wo*-W3k!}+gj_xljG(KMQsdp|DH_-H7sD_VAzLPt
zaI1Y3B}j|}B3TEcDP?-NZ#~6D@^V74f8gx{yuI~TuJciYJIY0hYrmiZ$(=?t6OHL^
zCQ7Uzq2MSlkhs^V*GPieuT%<7p%d}D`8Nri@03Zg*k3FNiy%1i24Ku{^@F<aHsuy#
z3UF)S&Bs+Lzezj`SS8#V)O>mP-Jmb?n|!-s>8xe%Gci(pG&SCUj5JOQ{E28Bu6bOg
za$~G<U~r8O4j;i&lBC6Q&(w|gnfC3-{3YSfb#!3gjws#R5&jay_Wc}^Z{~DdK8DBe
zsC(EEy>7=2rSg@E*uhuA4=b7F!wo|q&3X16p$PpQ9zbN3;6$3XN>%`RspOQ2fD%hc
zCm7L2F{ZlZ6DLQ&h@H&cC5B{On^RJ3#GLg#jR<3qU(KtTewV3-Y;y}D?=|%>4WsNs
zQcC3(7)Crv@d_BMAGZ7y4ck1zB7k=>N*t#VHzmmsmSH!0zKaH(`_x05xliJR0><}4
zRv)Si<8q+>i*ltzJVY^(s$J0(*Gpbiq}QNL*mw`0z7|R3Fszu6uSQbKW6`V8DBAUS
zd@UN)gyU<NhA918(BV6QHwd>&w|sNy7aR%u!qw$oo<!qaW^(<^V7OU%<IJn!3(e}8
z<dxT9=IZOsLCqoKWKbj;gbYLQNm7yD24e=P(?$%yG+|mD9ZD*=-RR2$XM)jcLiK^+
z*k*>wU|MxNt5M<<jMh|zs>A#p<ZnHxj2?(j1Div`F{yjTI^rNtYUx+x-6bPw^eDEV
z4kwOEIsVHa8=Jk4PAB!`z+;ShIBD=_80B%m4eX!|Y#=%Kdh?Lf$$;t#KSRl2atLiQ
z#LO1fJLE=+Sn*=LSx-hFoptEC^MF*(NYgYv&p?M!T%*H`@l}8tOd1TP!CaCVv2Y+B
zwn2#wo&tDn>yCrW9T-k*nylG!c{XNBoF37rges#h1%JvotI2^kUYbSzg7kYl4msoD
z@t==ov=N`?p>ZMz7+k|?0*$lbbXMcO8n*(q0m$EdVZAvBq_yOL;X-d6X=wwwlV5rx
z*r4vf=%6(`NW;x~`XUC4A*x#{L0_?~aZ1(=g*O62Nc!fB>&*sygMrR#>LXL4>T+*Y
z0HS4cJ_qzZ%Gk_e42K*y{nq=d5+jLJ>BY!IN&*#S0(BMq9mQUq353)r)pG;QUwp<>
z9PrP&T$OdDo+%*afaswTA%TQhYyvAe?}v$e^<r~S?m&pMLK9U;A@QTy{ht6GfQyGs
z-<2dj9{cW9ME7_%eMNkZhny8j#IHuP@pT#7tJX+T$zECkoKx;AK$!DR^!fFWameAS
zIHyy#!^RFgQXQ_<UK0*0C>!5=-y5Jq{n#639)2hWq<V?=(K#pxA>gRSUx1Wn@qE^V
z-UE1!ifr6+VsJroI#gi|e8jS3e=sSZlXn5z=>B5U=B*)eQFbJdssh>*e2(&B_F{hH
z;2UTrf-suG;PyL9O&>3)s}F{s=i;QRf}hLZbItOx=3wq3R+7O&PiO=YJ1MK9NqsyX
zyl|%R@=Ir`FDFAUorzu<9U87?GDOqYBj+gY9Tst>$6POTkPpi`^L{)-_nk@Ss-vq>
zp_il#fzeWf_`i%0oopPa$0m3%@iL#SkFTqY(Ei@#DCt)WN&AXrNaq(wQ^BX^?_D+p
zM^E#$foigk&sZf)hb0&?qGI4GW(;C81aHd*h|HaNfS!abR9D<h=bm{(l#z8pImhx~
z%b3=3`d0XiCLIBo+lO9dOr9M3>^ewbNzW!qj5<>ZgX<~!lE=Y|4C?+Tjy2B7giD7&
zz>JF!@qI}vlHLA?=KIwM0XDTLjZ(`c$m<jM(B7e1hWp-0wfT44*0Xn+q?v}9GbtU+
z-laSvrMXn<87b}4PEs#(euQPl&0jQQB|}5yqM+|bLq%u+<w?a)w%|Z>B+D8n&P9@q
zs+4477)bVq_}jrAkX6tJvkLYD`f~tHMeq1DOjV3UN8}&e2wrH8n14`7MqWqZ<M<G-
zmDnkqIE)vB*tocM?)P}XcGi-%y`<v^4Vx&6uFk4P=`Z6Uh<E<6nO$ixd3UB(d85gc
z$Xi(-J%luj;13ahH~*-d92h-}I4CALTA^N1D&!^OpzKj4Wl(L*<{VQTBJ>E>D$s!7
z7E_PtxhLwZ4fOv>DhEnI97e|H;IQW;0{mEnlPJuLs3H1jG!-5?l$6X`y0{=>0yz~(
zH{Q2UDgbE07z+~50Os)z8V^wW(RxXdTSEeKphSP)o~I;@##1OD-y}uWUP(MPL}QW<
z#z4%#LT2UyIGLfWv5p%f#|{N|5?%4Z@OvTmH3i>diH0Xh<m!E&5+hN(J{BlYa)^qf
zM{uO>m!~G;-Jb>O8ZvyYEDz>2#CfhP59rA?^JQ6355F-w4m89AvEOxzkM^nWK~SUk
zT~+AmVW3$Tc_l~{PwG-y`Gn%~ro8WQ-QdJtmnVBY=pmN^lh}_GB{s({ytN0r_4Fgw
z?mJ=E@Yr*Nz_`OjPK892N%|=>rn0gAvX;tPZ%?f>!sWg@iWy2pFL?X?;%Qt3n3%B2
z@#v)pispRdsMT|NY{W$>7X7*+#f#;P(zU}#i{*^el{4C6Iiq#ut-L%rXq+kzG*%5g
ztLBcPW=}*IVHjdCN#!v`1pfaw3Q5^*pfjX=bd@)n_nb*yPVRYW^hg?y)-lRBZJIye
zpCQV&poa4LerRHAGKXDb7VCL2N2H_?Yxr*e27${^tT)(DIhoP~uw?NK5&wJrn*zD?
z&DeTVMqS?&2&Ol!^(IqQds848QPA%(*grLzd5>KD`CD!r_a&7~`*_c~`QGGRJy@s(
z{O?NM-B$$Q?@o^P6#?<l<lep_K)pA4PhSx*z9%`B6)8mfrvUd`9yrZ5u7=U+q?{bq
z#94mTpsm~-c82kNW*Do<`(zlIII~`$#V$>;vExjfhnYA-EwhwowVKBZO?~Pj6n1kx
zIidv)JVjg!!ZO?uy|~Y#fE6v6{v`0QGR3RwOl=K*dzxE!<Ff~(!^Uq9h>+pO9*{G`
zpFJRq@6~ASK@y7+)S@$uf0M@V(d|e!eIH@D2@^~V+h(iyY{XXvlLK-Lqne@_hh>r(
zlsVzXc2Gk0fGNx#4uWd3(Y)Bhbl?LOqZfM=3NOUq=4WLTGH#-&vU^cz$}ug@q<vBB
z9G0P}5-*(llecx%F_Sz&=PC8QkwfX<^jZ_bj=H(9Zs#(Ccs%}`SS0~_$zeqzhPfSf
ztNcT~xP?rPi&ET&53KI6O+os=x|_(_!$aub{LPe+2*1)^onmsAzxrM1WwTv-^#?rJ
z4AP$dm?!fa?ddx_nV)J;f5ek{vG(*Wo*WbKh_HIk4KIf9iwiF}4I}5MU%#lj;kJi1
z(=NWeKpUr9e0dL<#xM!}TRXSu6<>avR`KQUq*J0y6i37OG!G#{B_}Np&Qutp59C^;
zH4C{=sNf8fXA90$U2rC^sgLsD%-*Vs79BPP(2EucUXNCJ56qMlsZmx4Qs+G9!K7|8
zD8GdLHx9*BqBgdMc`eRjHuz)`6m*6;xBD%8G0eMM`iek_Y715<Tea*Jyr<ADcS%&~
zs5glzWs{iFMQY`f80u)52Y=H-4+L;7Hf{Be1;<272^RgK9Y1Ni2E!m&5;@jmU<LV<
zVm!U@a?J~Pr})BDrhS2m@Gs!npgJ30leW2KwyQT6vjVhRFBqg6z?z4P#Pipft=)?7
z4J-;|;22=8wVbI998)-YQQ&G`c-`e%&%RLGx3C;o0L=xW^u}KBRL}>W3INYEg3zHR
z7~G8r9qUOErwKE3`Tnfv1~#oOUld|9@09Pg(&kBlPGwek(H1)s)~6K*vPn-YQm9Q&
z3IS+i&k*~Lq>xg!v1ecGLyBH7OStJ9s|tWMpIG-ukwkLnJ&(i3xbytgh&3u6G$7Ai
zy#Wo#orj^o7=eubCdk_YX?YXIqjy3Jt$-G_BDMb}P@3l|(iBvd%4Ii=s0C(FIiqsr
z1w(c%E5Bto8IM>1+uBiip&iw?epTM<SAgAsr{07$bT9t8X1wbnYLRpNuEkkI4OqMv
zUu}kFo{vYv;0Ml8)j+@w$=U~UJwmx2@ZHJa8m>l2p{=3(TVXc2u&BI|{S{klfPH*d
zESdH7Z5$hqYI%cZ`rjog5A&5_;n`TvtoECI1J(<#5A>pdA!9vr8T6uvYBNUWGhDm<
z4UO4Saerf82$&)nMfwr`rU|j(`<n0_n#wfOh|V!h=4`HMFctJOy1~;E>hy*y$T{B%
z_#}(#z&x(ezVHru;1)_wRF}rO!M%t#pb4w~K|W%q5h#c+!teQnm1-;_W-0;s$yW3!
zwSd5YrmSl48XeEs`n3>0mup#j(Q^J4FIxRC#+*;b3ygG8VdH!|F)mJH)d#xYs}JtN
zzHdB%XpFm3-z(ItD8wu72C`RR#9IK3;Fh)S<x9?<3UaoQ!BIhhT^#o`mC<qI_BX(w
z^)<c88_BdnQ>$xw)6Xuqpbn!pQRNm<B~oF+=4oewHMs7gcM`btpeMdP-0PL1J&by5
zU=PQ=<+6uyZ`bT$-g|xa@H_J5#)4~+Npt#pdNj5!t)C16O(BBx8&>$&ee6ah_&Q0=
zX#!0Fyi&j+7SvVu;wDe#L0TK%<;grqd%DGwIjr{dJ@*}=V~@Dl$pI0?o?hW;B!9Zb
zQ^P;qS)Tx5QHi+h*weLZq01(@9$ah&4`>`C$^{A1-}s`-1qt9uWt7-*xLoY)j+Mq<
zG1lZEK5`i)N7dI%bcD;BWP>ZkL=Dd&DlNNHF3*_Vjd7Roj>fK2RY@i0P5$0rzD^sB
z(OLsHF$oAl>Yow?AB(iM%_3al{JHQrQA-(L)-$=U%EKotubG48#7KUw{(_(oGylE6
zsyk{lJ{;73Fc=Q|l&DxkAEU$D;+4^9y{M9{j7x_v&qS2vR{Xt+mJi9c5P;0?%8cTO
z7AVsfcSf1Sj*><~5HB1Zj7~?V39sT4u8$7sAt^nC3(dUmaXzkTkpNRUL}krWn-zM9
zeRP-g;j+@FhVZ%5k37Q)Fo{%1H3q1b-v10CDf^tZZiZx?DMZ71cT%RU+uoDpt7&sR
zEq7TPze9hx11?<)K!!#SBqi4|>(BaXm{xE3j_Bk7v7q9MyocdC^^hEJ?H>>>O348~
zET6h&Kmj9t0p_7Di8i-_XSS2tHUqqR^>>3uEl4gLVTo&aGAxJ?<|bN62nU}T0%<}G
zl&*GQ*sh93umJ-DJ0;yJ;hA~KI&?@+lY~yT1sPa+la!8;!4BPYLpkXUkz3;=<C^J>
z5DXC=;Un<KhY)wjVd{GL4AGWHp|c~m$iTWZJPlM)GIS9p8Ma)f3Lq4k(rxm?HAj8c
zL5TT7h2TWcVrE`S<42GA<U0nDGUS++D~d?M#77yGl<9qffKdCvK<J1OKDfU`{NZlu
z)Qq`BF~)}O4xh!d=I+^1hDdK{55qcbDVy-E;0dr#{?<Y;%oJgW?<4@}TO+<4wgzR}
z3qf7A((<$LHS<^s$ayH#e~ZNgYbgJK94hxge+$FUrX$ZF57t6#Em*~@)`&eFdKOMr
zmA#F)R%s-wUr!M?$e5`Hs4Y<j-8HdMfc27kiXkj)(1%?Z&-hVwnl;tR2+#yQo&;hl
zPlPla@g4O#5u+sbZPr8KOQyb#eEKrGRnFi$Qqt-FGqwM^6i4XO1JZ*xumR-xCK2Xc
z>oTI_-akH}he}$jiQgdA;g}`!l+Fyi{5o3F@_8gFiIS}e;#mS#FP}%vV=9%|2tTlp
z<nnp67<C{^<;gS8ag;!vP2IR_NYo>hRTZ<fC9Wa9Go{BB4zdKFil#q^yt@p#OQcK7
zK6mr}kz@!=0&#--mz--hjx`U;#T&xEJLs1rMv{Z(-;r2?MnY%F|G`#4&V#*4uu9C&
z$>*Ia!Nnr`#XC~w&9r9Y2F&lXhvdEwBsJVlRtE=O29e5&LWq6x5SGX#50%l{N**es
z;EB5{c?h&BgE<*ChwgaXkY7*-tmL3~1nPj0`v`RrG;<MZibYDxCdw!p0BiWOgd!2&
zAUWU?P%S;c<~Dv`gr^wnE%OOvmdaChfi3^i=gnB=;J*-CMK45RtE-`7E3y12-xmM)
z5KP*52H_5X-4s&t49fArQIyh|YyV~N6p6z;AQC7qeCzb{a>wn}RWfUC{l<$geExM(
z$-fh95|;|Q>Hmz8&pfp_eF3L0{pyPw%-r|B3~0)FdFyxn@Z@LlA_mkwsGu!abKrG4
z`wmvxwv;&N7>&jNFqVlVh|us54W&cv);3c3hxl%BI&|)sn<2jF`Y62uiG$BLM5kY1
zPlK|-|JQ5Radd2CG@S$&8$SU=xGbTRvV`O=I-LEp?9YZ?YWl%{(nak=MT@NEH!>t7
zb}>|HR?@fLil0f!o1j3bW~p8Ud+=>e4VW4H7{u21m_`VS4nU^Cm267htQGeY6Ju)*
zTpAFsdGIz|)&8$Rw_O3xZ~){XtKw#|dF1g8m`|Wca%r>-1B)BQF3-q27)U>0ZzSSn
zsS`y^nBb34ku?Qhhe?PE<nvjTNa<=g4T^|jvb^c%S<SFgs__jPy$Q2354lL&>bJ^E
zWMApjT-ZM$Us-qZi_sA8^hX`Y7tMSLa*j0nBnbM9c#7!G=wJ#j$teh_?41I_7bTv&
zQ(zi-Kw2VbJXSy8ECvRZR*U`tkfJESrVLD8y?$5K15MlT_|ulrA?s_n03w73dG7!v
zgE2oN0;TvFgW{9H(Fht03MMqteU6|dwqZDj1EMbk_hDeFmbApMox`EjuFSB%SFBNV
zIPSyYP<_>wyP*W2UiJ57)%(9MxEuGerdXA)b(a9U@b`W&!zT`6oX!FWcZRrF>wfzt
zb8zn43$`0a!NGYi4o+2mM`(IY+zUYli_XmeJOQKkv4)(RGDah33bBsj5(t)@Dyv=a
zbLu5^fx!3<Y!jnZ&RXX~=as5yWlVWGNLqe)Ixs<SteeUqDz@<Fh#<{I-X1Gx!Mn$b
zp<Ci;{$4h`+Mk3rDRz1zO>hugS}haez+3~r@ykV*0y(S5eTZNy24v6j_@G|?oTSXg
zZEpp6=xV1m8zg);r+UOU@`^1LU~lt+F%`JT7cDEIVK)7`Sq^KF>3LF`4NhCb3XMEY
z!#B`pOv}Sj`fJ>mgl92*iQ9%i^Zw>4yrUGU|IT@>^?kh7d-l_w|8IJ&^}F#}%~w?t
zdhV|#<R2gm{l2PqZkuGc+j5TcS+!(_p9(T1S|&195yzDR_KA&<v#yPABWc1NzU;^`
zdu6`s2sVMKSJ8JRyDIZbVFdoiQ{C&k9(3_0g=7`L^1dta16dyV$O8!;PP4w(cO@wB
zxU#;qn2nuI$olU2t_KRfYs~`5-gh0A@0x|QhQ*zkyE-i2HS=nR<hv^Nf$xe;%YW_p
zt|Ta-bljfaxAk2uC4V2^m8gW6>%XalRUZ~|vmp!&^NusbB7^j$UxXQnBsC7Fujm$!
zrEz#K%Zc6CA8%aOEcuNpCDc9ZVx)rtvo@;WVDhI75-sO}Qq7w9RO-`j2)BH8eW{rT
zZ$`^n4{#fwv4Z$7ZqGwPo-$C`;N5Zn-J9=DSOnuqBomStSoA|f0?TI923AF2$<zZD
z%WeFz>@SfLqo6--pNBy9kXab)odD4U-EXh!f#Dk515WJ0iG?McaAC>70W|(7+t0Rt
zQ7SA65bga^_O&pA<F1Rg8Zk}cCPxg5b$bw_rK}7nBK{6HIZ(uhgdX<rGyRY$WDEj^
zd+p)ZUNiv{3pbQHU;wxPOo@$R0Hb3N3>c{GsYIBx2aJ47#S!G4G9G4?_`vCx;i}Pr
z*pP0Br~iv-RXd=`$<snXkAqkS=g%PEpjrfuagdTT2TkT|ceuVH1cW)%1{+Pt<z?H}
zf{b4vxdVbFEL#=`<Py96U4uDhJX0HbDxRs8a04T=6U8$%0Yv`fyY>2++9(FWv{3Ar
zS)tTiClIpg;RiPz90Hj!gafZaWM47)0b(sE#6JR6kV*XRLRfDoxvTufOMX)pZkXZS
zGsAyhiM5ZzcER3sp^j{9=|6lKSswJWixi!TJ_X~EoJ&aI-}8*6OJPJR;FFeYBgR;C
zdK7lR%31YHRqzDj2eK}*tKacrYO`!peil-F+LOe-(Ij3;Y)^Z4#4ENHz=94e+i3Dl
z8G=m~p<ZbPMIaF*(Rz?>iIT|3RN~WVnbr^&Ns{soP6ltibXv<7*pji}2QQs=xGbl`
za0~TJx@Q6|>Chfjz-7)P4SCCCUBQlQvdS$LN+JbvdzA=B&0(Q2#{95Wt{8n{p%eBo
z<>rSH%uhWTDwfbL(Y35Z=I8WmoDfjDk6aQAg)Q_kj;aiWE%Mm|h9X-|fe6RrM6OMh
zPMOZ3DJ44==rBDfa)}3Hn|0C<)GFeaxq~2P?${7E#bjXr@g$NRz;3&7HjYNz%hFZS
zfv&}3-T2*()&XW>>gF_-ipwL|E~W?)ZcHd?{r4-TIRJ!!#!l-}G9)cSN-TfsnPIRc
z32pOII^2-yU!}v51n1M?m<3e`QSx>`4OP7>RuQU%ulyNo31#^+2&*z||2&vJEiMu`
zmaArXt5In2YsRZ(Ef){c#;`}=Kr*w4hMui+h>#FO1)<bTm4;kmPb;C*Z+;2knr!@(
zOV~+Cxs+I@I3;%d!e8d~3B4ATtf==z`UjHChl+3IAF8*TiXtWhCiKH^yj0u1eP488
z4Ty!S-lk}OXRB6#{VQ4&QpP6bO3(f7FSu1JJRi{G_d&A`W?P}fDz~VhwW_z?6%V0O
zVz~=9U4oJ19Pd@iBcau*V=uSv#HJnFuB`=hcE?%kje9fAP`rv;UURL8$E|w$iccAE
zp8|$27>n4&h*#pY5ZsE=(I>XWlj-HF;RfNcS6R5hg-nMxNb9y4LOBUJ>V&#-z02!T
zcvhLv7eRw=`n)2qvCU4R^tD)#f`@nm*VrRBP+J-)l(fCZnwz!1jtd{y?mt?!-G5~%
zX)-dOMF?4E(R>pq%lsXr_mV&YE)U)&#w_kO16i~RU7A9y3QXo9tV$)ZTgYKo9391@
z0n%up#R{-tz~uVnaJlVUlu*@DeapPZc;Ldya)^yIFt&F!PUxPj286~9&k2qkU@JE=
zP}vJmUS2?l1j#$h0qBTdi-6j`=HEXCc&1#9C*Y0r-}~bAAU)6!gQ?G?!PxY#0Yt3G
zD*D5bGD<o+8fR%WT9OumLXF>8?X@`lo`gj<L2#BDvL9jNVI`&oM7oHhx(bZ}umC9>
zy&Z0}OH*|6C;<)4Fw^yJ)XkvyjE*iBbpLBomegwy>Qb7X&}ggKh9?z(KZQ^YK~@9A
z<%wmUf#T~9W7MaaKez+N)LI|LRNY}rP+Vo~f}Y#o4cA#7c3r9%QzLScBkhV)m!zau
z8V|4j<LnivBVYg5QTA79^mzPgC>?HyrEx!PbI-Iov<EfyKGaCE`BvQ|$?%yMwIA>`
zaOG2AZW_9ph)9kf713;^U>8*ckVE~Omc(W^74*x@C6>syQto}M0o)|@=Bnn|NK{S6
z9!ir(8_xzzs#)q~IY#knm5O<TQA$X%aA3Q954~2dg)4LU99BlkMTU2EZe=7}IP~NO
zrk0X(k)g~Romxujg)7SqRV}p)jP!b(nI>$A@*&c1WF=@-SYPK$8CJnd#;ig-!@Mp5
z6Tv`w18=|x2gl_+=?9P6a(dTSY3y-)V3#wE+2}iPgR3zUfo^M-f1yd^LFwwNag+4`
zc^%P9u`!B>{bPZZ0fewJG3~<7S~Z7B(ayLAWhl9UR%0Os;`5G2g#Dms8x0Rr!j=s#
zp~$U_c@(#7YvaA>;z)TM`<cVPB>}o|Rp!qm`Zm+}ZF`4`ap2_^@h0W6i0P|e;D!U^
z(l@i48))P`RvlwdGGKK65|&H%*&s}E*~t+rfer;HrVNu|<phPYsKl^EJ28HP_h|1Z
z{rOm7WUJ})H)j`kDL^l%#+!wLu>!|Ag%lEpb_1ez{^49!M%*l`cis39;pL0G&@rb9
ziF>)4mf=uONRp7{Qr6YiLaA)5j-I8(A%l#3bHv%RA@n#I5TYZgsm*`^LGuwMoR+yK
zpV%|10{Yg9#qy=Ym27Mp-E17X5gQY0tuU}q9V)o&Z$86hK&szWgi_S>YqKsdL1xnK
z9>W`jGJ+YM$+0$eM|KEA5DV(d&=Lz=eRNg+CG!{!F#B9>`i8veW~ekHKy66^PtzV{
zkz}Raj8e7;f7n!>txsl%s~hWsK)EIqYW)Ry=w+m1$HeY}SkfW4fLlcs`O@{J;{pN~
zJIHJ5BVSYE(q9#5=*pHoYxtks+YaceySMyrIWmkO&cJew2@?w3$!W#Qaou;-yK9n(
z7vH#MGA@xak)guVbHgzFNZ^A%?-6qXh%v4M=ry~~fb|}x2R8FbAS@nd0aAu?CmidH
z2$5diM~09n{jzyCu1D9ZkcYZeuIw2lNqo~Qm)8bk4jpwF{_d1As>$s}Z7W{qMCQ)_
zy0ts4rZMwyr@-*#7j*2#tWCd}B0wEy8o8vSXjq~wxC&?fU20t`6{|5!^8H-WWq@xg
z`>F7Yw{@{>XUY4Ifttl`mQYyv`_c3tDC(~4GRDD#^moj^*0LQ5fz8+|j`9u0m3-{%
z!;%bZ+-tZbqpFy{Z`cAW;-`Ng{mH+wCvp1w0^#?ACww%Ebvdskn8B%*1+{>MCDUYJ
z7I8I@e&0aK;}aIXGGRgU@nM{P9YG{sh3c-8U8Al_^a8YIyA&G2^M73L&^^+DbcFwH
z!;Upy^pp?{Z>NOU@+POu&?Ql{fToNZ<TssVB{S4a+~KdOU=<8TC#?EPble{)u#0J;
zpqlIh(FP_*4e6dPd9?~SDyT*nMMpvrGP4$>_J#m+5VgTfP9J7Lgh7SZhF~Cc0&15`
zFBiPAEzv_-_63LHB(hepZ{PyN<mA%{d_3n9b1lU1oRbeu@`NlgmRS9wVKp(YuuwK4
zmtDgw4HF1Z$frbZqQ+uY6%A^}*RPzUqyAY;U=^THu>!!8{h^tI3rs2s=jm=F)F?zx
zLIL=B9-Z0?kX{eKCq(zhGs+%dEx{*Y$}E=Q4{0nxamA5gE}hUQ_P~a+vP*1IlhcyY
z`+P9K(n{DQ-vi14q!1>c$UX{}&|@&;_gDxGkv5Muzx;J??-`!}S?)dK5`+j<ULSWL
zM5yv-T!9dw%AU0#W@pSMNR=!;kch(#Q_w<?MF7FMdz_(IQ+R-+1d>dJuf&o@BaX=8
zTsi`Da2HW>qe02$;~uFYO~e=qconm053seZBq5IqBZ;egZx-bxc8$%kXxH<`9Abm#
z0iEEw&AkWHa1^e#jHwde%Px&tzMcU_F!rK#KylNBoJo?zvJ-N)B)?*8s_rJ}xSJtS
zsTw=44syPci3VW#kaL{@61hSE>dFrs;ss$UJL9H;@JJF6-7@-DiE<t~t&>q%R8z`~
zrf;HX=HiRmoFV1P-9_tB9K6vOf(pn^76r837UuDzZH+#*%B2TH3bF+dBw+-E1H4Vs
zy&VT6F;kM7u^+i#qR*EOmN+pOYhww>H(Xwmqt^caI@bgVV}K5^f#Sqw4Y|{zH0p~x
zXq@R@kr>xQ+Enuvwrw(^Fum!PSiyyr83TW}zs#8UR)3i>?o}qW*|q}OLn>*IB=TaR
zeArOi6tcpE4HNKcQn9l*c!z1TcaKwO_Q;+t0MEaJLs?ioj?&kyAhG&jJ4*kK72rp^
z_2wx3x)tC<X9d4)1^CZd!8fb`SWjf9D3oV{Uk&MeU?%uwUD@dSC0#WMuuA`?J)I2L
zdi;ue;dSa)c+!9kclHnb)c8qQ7nW0mmWC{BNyBif%K>qQrThkyeV5``u@pytWSMsr
zp(Z*%w6&E1%o!5qw5i2rVhja6kWzw0MHUCTWEjHTWGh>?wryS{MMx|s=7-O9h7hul
zJ#oB_)Ez4M6qkSdi<+6~XcSX;ayAt9pIdJbwzTwhU8<u4XWV`_+w<FuosdMj%o!y1
ziMR`#sHuFLnY0<3abF1|6qWw?I{QtFtu@z#LQd){TNtU@ZWx*(aL!0#Ybj&vq(TxL
zWUHJBKR+9f{cxZXCAl5g3`nkQR;ViOm9jV@jQ!@z8OD&JBCZk_nLi2v`|$%o`3{s;
zQEIpM^<$s}upCN=?q}lOtp2pZd?MR@(mmQMoW>YkS7wXo(nny?vOkL>@<TMS$31jV
z8zZzv%_kVcPjH0Em8WNdShG(z$czct*3}mrF*blW2Y!qZTjXrc;xvr8`g61KH^ZbD
zshN|jl|ix}0K5~Aiow1qUbUDer_{kYw>4E5)ZI1ZaQu+)o=w0CWY|jqtrg*`6xJs8
zzYUZ~<&H0q#N+PaM&hYDQ>e3U@lOZSr!lr>h(pxuko-bcdUeTGV9je8=(&OB)hOG_
zt4Q;Dv`p)tl@XmlXlxCJ+`3^$(t0{zrr*>E$^%x@%xEqN9okvIqRf^W%yA~JW-n-0
zUO;>i0f9N^6x14vP9ZfzetwIi>{qa2^^5DT<8@Jh@)DHVpcO2Z8p)rvK5V|s+8@f!
z9q6F!J&*#A<4$w-pH{G9HH3F%K|~F{Xjm-OtZ-hn2G9E(10}6sA<uvV=bM90Y^<<?
zg*9<!BH98t`avsLb8d--ck+f{SvO2KXeTCgk$E3ZfO_#oQxusD?IS@s12eXU@?sns
zB+}}P$%S)1c!ESQ;zAH|u~;mjIHdu5CnU>?_n!O(a=v11gyJCJ@PUBfI*LEir9rz~
zoTqVQ-K}ckWX{ISkSxBbh2s!5uwa@jw;Wcc7N}z`1d0<b!k<EVf1h6ikq7&lJN2-~
zFLcIt#RV=H4|8mudWzG*oa{Y}7)-w6*Rr5jq&G}wm1}SJ{L4(&7f3~Nl18kfl5Ef2
z9?Y{@_m{tTJxDdbBQ#*4-K#D#&Ishw$wN{r+G=`LVM@K0{`j8PA4UB`bAP?Rxp!*i
z%e0c1g<<e~o-erojh0+AUK?S<<j2KEgn&`V>H=5sX)1+yEKPnwgZ*>_w<sX*+;|x#
zltYn+qPXjiL|MX%xsa-<kKQ3@6{Wva2;rbk=>q-(&ewFFf&wbsb5^vE2*Wb|j_Aji
zg~D4F^}VKB7ZDadse?{PT|^jXf_rd~9}=BKg!w6viJ-<$iG0t;Y<}}lEY2;9r*8dl
zi>6;Q7p}VAI3_OqQT}Kx>}x)7su>zU(<lKe$BwQ8mR7AG>%f0xUc4<4Nl}FUQygdc
z>aw(Om~Lg~SvitJncjpeP+};EC<_g{!bFAOD`Q!!i7B_$zP>_Sc!1nfQ<{vZ_MTEX
z@oaMJl}hNp3uPqQH+3~}u;y>MM_9lfuW10Rukf!BLh!-nM?C(cyby;zEBwQ}5T`yX
z{HIp<ZNq{Vfui)E=hg7+vub~m7cvTS+$FN)Vf`jBD6H^zb%jv>0b1}svip<4-^Qtb
z)9wvEte~3vZAui|=U*`G{>@x_^iJ^gSacerMHa}zx}9d3QLq`lfom++UM`?^FA+oj
zI1lJ6s7L%la;Sg`fnv<5bL`Er77x{{<T0h;C_0ZdH>A)z_X=rP%;XMBELuuRzh?q<
zQ@3xs#KNF%TVk<EgXvR+w2hycGO*NRw<Kdonwc<IM{dSo9bGpBU1k5MJbzktlZJ0b
zqo98*x*m<98O6NDis;?q`YtVmjMIIm??Jk(Z{G^8mKfiRoz(a$cbGUBKx#sY1W@{>
z4mz;8Lb($s+#<C3P0momQ&yZUdx4Wo!hVHNQt8a~;PanjBUyA>Bl%qmu!N@Kj8f+N
zyxG%%qOVhc=<qjT5P3vj(+&zd!L^dwj}^#ag9XrWSs3!ysjBE0RXOFA<t9t>dr}dv
zr1WW*;pFhH+$<a84UitY6<=YTz3^kvw>`#hxO28`_(WL>vot;}?}Ke7d)eYHoa2^s
z-^48xi=O4oMCfxI0!Z{M+F@x{LEy0REyIe^Udi{es7xanI&+O6w$4%_^~kJw0lV<F
zTyv;28p!btB|?13FKHO(JM;|Q0X>S-*3PJP+>zmil0Fo9%3Bm2ll_oIc@a}Y+Q%X=
zC5G^r^06QD#K4q(Sjl};wP7<w?1gz8mI5L{4qP%l@Qs{%Sr!A^ag6;qs$@7K6K{}h
zggqSbwF~Xta+)4q?`JqY8_Pk8^qn~loWgS%UfnMW^)VYZ7G^{8Y;BX_DX|mTM<&kv
zBDm!w3wRl>%qnU*-)2-OaZ64!cavl@)~2+)X3o1yB=;@^fU53cG#H67bfx(N)b`~^
zEgx3@Nb0R-bXtEj@Lvy`8mJ70n=TM(w78+#R^U=`L%603O|)>W-H!OZme?cZN)rr^
zl{`j;s73x4qrS$*P~Fx<vpSj$a4f1)m~h?n-UMF<_RdFM6t82Q#z$fNwc)SBKF+%5
z8T{2|93D-&#hY$SAccX*%?0{!9X(^hrJOS?KC}Z_pu&(W6lWNw%)4dgp?QaE@A9Af
z&W9cqx;5XAoJC(>i;IAAOUquU7&2RHUoN}k^jrHn<9Ez9V>C2$yW`}zHPzmD-oJx8
z<bB;e84_X?5Ogz&PWPN)N$PEBvNuidQC(c*vXbOBod|SLLX=)N`=oadrCJ0qHfMtt
z6POdhU;W}~69JH<MAl#Wq9wA1X)qSN@<mHz4buu4RVE!wqfusoR0fdA|B-@6Rlsl8
zBPN(!zbV@*MRQnB-!WA@MqMeIF-Bv-SFdme`&Dz8iYoe6B7uenvAvYmOflb32YSig
z3KlgqF|f&=5f$^pGaWfw<s;4<1VM`u7_9zH?A*)OT{@TG@N<i|(JnA~L$L>1u4-PO
zRYWl4@P^MT<Ph=1bC<wm?`@`uz_|A|7iX@hSty*R`9TuCVR}3vueuQZ;PnIfM4>l%
zV9H>Q$5rIh+rS^%!%5#%ex;H~{2EZ|w`SZX*nTYk^2C5ryOoP+zl~FvstO(ZGp;xu
z5U&x-&hUH<MOI{6<Ctp%FnyH<b8z$)W}kJgh#Z#;&VphpaYicZIO_L@`J>fPg#3*&
z!!O`?X)8GAc=){VVfe=~xrv=v>f~U2+C)U>V4#KiL_`Vm1rcFyNiHH4FCwhS#Mpas
z=_MlAGAX%Qfyr;Nq+?9ZJ7aPohC0J}ni-hk^em+6T1XRmz1P!2q?I}KfAHSbn2BiC
zBG=YugCm16Dz?;}pZjcR^9j|Q{Y;*WmX>t<0S62*6n&yr#?-Fzqz{l~et_&JZGYmL
zR9MYEVBrkz6-u`NJoz`h?_eS<j#O+wEMBMCvRwK$qkr2$lbwbBwsp6J<7J^7I}q#_
zG^&Z6m|RuLhYpd$J`t^V#?|cut0Snfl3yz>`IXBiKYKy)tJz5Uh3YJk4#}@&<Bfv-
z188d8C>GLCR0E^6nDr}$LJy)lhB8lnCEhBt#jaqb@v;o;c1~gA*$HA`Kn&J7@%$|J
z)w4m-4ZRiif-U`=(C>#jK8WD=JMaQ@6L%T?jaR5={S_7r@C?OKEQRGP`J=;<!O<8v
z6TU8q9frWKGc`*8{V$<Yo60A@O}X@5xkDu-kahWjJ?RFWdp!{$-t;Lhu3hg0ejaGL
zJ5&mtZ->zIyZ9q6++~MoHTs^a*^{c=z$j!G;d%pUO>BP#$9T%}=f4F&poy8kttqLJ
z5?wXTj-j7|P&f#v0M`JwKIN1oT07#4_o#^8IbhA9>|0Ux2D;)&zBRJv>$jdQdO^5;
z+!XgE-mY+vJ<lOtdWQ-s>_+GSwS;6AMHPkV4MqicJ6X~!U>WquZ6IH!m1~BIo`tsp
zzRu2@YxHlGeA1NS+d)<!Y?74S>=1ls`M^SvQK0}YMTYzgVt)H*FLseGw(0m%V(I>F
zsJFE<L*WgD6wxgsIuQWc8Fd1DfYAo~N6jG^ak;;}Sk8z`{Joh6cSe-G#9oQ4z@_B!
zYpf1outHIMv9i~{h~$ZVz^54%jT6r)AEf|cLW2^>d0$ob8Wt%N42yO^89TXMP&CRT
ztGW+L*Ix@=jx&L{FNgNy2fP=1{^&5d&X`9Ia3nu7nu;z;PGn1tB?~D%k3!9BMtG-u
zT;;fcWZUu97(JwoZ?fbgI=uzOEOk*(E=Aq6U(&2^l|kr)$y;{9BsNk0T_rha2c>Er
z!*0n8ll(>$YvVxvzlT|%&2|M@W})Yg3SoX~yyobLs8?7-r9cRCQ9vuhQn)e~1hg`X
zOsbxX0a}?0OsbH@eWyFznb_`Y7Y3xJkT-gW`Do5D7ABRJ$$NF5AZeNQ@eR6iSjUyK
z{*x)GTSjHdojmuITRTqh`^v3fl^6Q8?O-(164NML0L0=hDGe)it8iJVH9=ik@O4E2
zrwGhbx||<A$wqp23XrUeR(ny+&h^vuQ6Z8_EWK~`9+Q&I3C&?)ItaIEo{rao3vVCV
z<ROwPOJaZ~IxQzY#eY*B3SfyY(V5p2lp$|%3IT#$S~yrv@Zcl)4-8P`b6B-98??%N
z)K&Ft$SQMK3xZ;ID7BA#7Dwf}0(muz&2^<U;&$SQ;MJ1)v=AgobmlscD1}m>3;{|y
z%8Kayqx$`bbo8Qj4JzUXHp<LE!k^x+MHHcHk)M3~VBY9!#YUUGMw@#Z1rz%=%QB~L
zR=@h3!Fs*e>;t`KAIO_c2@zd+oph_Fe!q(!E~*dSjs@uqenhF8?r`i))^-sOpo3p&
zW4)!SO;~P$9ITA`y@NP=kRL`s|DZ^ey2yQ3?m2(-gLLLVHbfHVOv5!6WYG`MvDhld
zQq+L*Vu1|(35UCpsYS19Sl%PXgBb7YQZeN-)mL!NYPg#Gn9h1SY8;pWYCgV#)vxOA
z>PwpZeU+C_5|0)|)jvpjLg_3pgksROb9IUZH$gW3DCLq2lE+mlB`TP!j%^}4{GY>B
zh;3H|d!5B%p!9y1bIB6#n!!7+;P#uVgxzgknY{wm8}M+pNb2+kPnP@Wo;c*vZF)2h
zh<BC}>@*MW{FB?@cQb^k3CVqnYx=6i_{|TYfi5L~^h-j^=eXmmr?_1Ic@^LmaSt5)
z@)aL)|5ah~dAlXYdM3gPp%fi86Fse}D67{r6jo<>gP)&KP}bLUmUuyEwheI1p>XP)
zXx}P|_Mp>eD$7NC(22InGSOB*(Pn!AQm$ym#iag(F(5rCyAx_b4Xyht+f(cQgCb;R
z$L$10Sjo1f!*>?Ox1W0yJNUpI10kccHxLZ~W8%1wxsN6?j1C=~Yo>|=-_){HI$Y|_
z8$~(rW)1BaltYFc3yU6-`W;CQ$xN@a`^oVEQ>DRVWHgQuoIC$X;uEah!nyd)60p?5
zXINTo!(iY7S!@vFXDMI~Hy@z`LbUJ&2pVHHON`Qn#`JwAf=3V!X6=%**y()D45j-W
zWR1g$hyFNi>*wc{&h)q@SYtq<X`mpfSjbjk1l%L}GH4T^lY^7_HaHndgvNd_sV5pw
zQbi)yrpB*t^25774p{C?+CA`)m@Rl<E`w)eUwA0BJp4X*DuTyjZd7+JPaMDacCx^T
zM>29q;~CjJmCPJ5PU*jVUz|jgBy+lz4kL+&WEL>UWZV$yl(S<Sczx)iOE4eOII!F2
z>W7_>SVV(opI}a@w4K8%pMlpp9wWawY(=Qfq0ySwy_8>0K!l$LHt3{d6k-5MgMtbi
z<HUeW?uRrQj)$dd$&HA6+^u@(hpBjW4h%eDrd(o^y~iPUHAMmJ_plOZhRM*C_H{7T
zY=u*p2Q>MzfCgF&H2B#-!+vC-VN}o(fFPi#jY&aP5go%@fe|f*oSMkJBR#m<hZQN^
zj};I1!0W*z_fj%;2blD$)($48V6<l=A3liEo{jt&pGSK(vS-A}vcQE5j{)sSe4E}F
z*N@&E)S&y(ynDInaW84TqF_$kOIojx-p6yEw9Z0lmb7kYhp`+nhaAf~a!g^Ea}(m!
zgI8GEEFmpL_#7R<?rRZ7$Lo>W3NO1vubh`#NPzOZ^s66mB|Wt;-*B-qzF>IUC4pI#
zzQ=yGB&(P;)&mH3S}#HrrbdUV)=16(Jli#=)e_=-=-NPzq3Lnc;)wf*_nj-!&qIaW
znjte*`Gzos$`~7QyNY#6hxQXCHGmZ@;Z$DBLgY17D)@R;wLOi=o|6i2Elpr63k)=A
z@T=Q3mpe}6&D<29zI9s&d(T=G{kZyjuOn_T=rs$;yHgLUEC~H4)mZuHb`;iie}JpD
zxC<Q8z?2PK(nY{=VH*r-QqfTc!V}8{P<u+=m_NPRt##p`ECepim>@qUKIA=d$suFk
z$d&_`LfA3wn6(x}<T57SCwGiFjLa5x@Tj|JXHCrM7#XAWuI`6Z;`D(H;3|=WWB{Rd
z6epNl7mvc$W}i{SL{b%L;toUIaCb-CZyRy|imdzCy8V=)))G-P!J}+<9A@nBs5FZ1
zhP-*TW(p@AV%q9S=|qsoPLf*=;w-;OclrS$1zj_^Rd%!)XAVGY8!};Fr41y9>7|Kb
z;iA~u;pB){d`G~3%2tO`!ktk>#{`Mtv<-t#>|~wzQ&^V+6!4vPe`H@pg|Bd$Z082c
z5TOqK;7DUh3+wq@_5#YTwm&;SnU3_sI(#><y04V4Vc_yRjRKd+KNsOt_zbd55*Mro
z46ix@8zlP*8$-f|JI&cJ%nXX+M|pjicV=32?9&5E04=9~Q3tYzdJ^ZtEi|B3MD>gX
z4u%qOG8<4&=+;pd0`&nC6KZpyRD9ZgTU!UcmW-+fruOOxLW9p8SE$7l&C`bHiVM?v
z^~fS5)dYs5PU)x=k~rdEh<)!dy^A?@{J4~9jbk`MgGYS`FZu_!3($DT&PRj;m_6tK
z6gvqpyC+pN{q`?hXRsujel$R<@n934Z>sc&FD*Who;MfNNYA^*TtrpBS_<umq&Iup
zTU>hZ+oyZVId^B7NZI=n2&42B%et}k-Iv@gI?^4K4{E4+l@tg#KtEi@__XL7fGXSS
zn#7}FEcUQm$!bBL+wvy(<O}&uc?P6?>1h5VZt%4wTAvKg(u-(mn^}`e0Tu%>w-I^o
zNF|kB_r(pZw!>FRC5#fKh~m=ZK+{)S<QBQnp3-=PcmwI>pb1^k$`TV(t<?lR_7en4
zEMZx;YA4@>I_`>3*`=#i#NuD=-6Cj84@qD7f+m{eT4ecVulioUtgB1myv8jLEWoq*
zU&YsGC(Gi@%ognOL1UM%d3O10rO5Ax@@H!CA&y9xCi;tG5Cb-Uk|e%}ip+mzi8_I0
z5+va<*ir^wl+J$OiugCF0h-Hl7s%uCu{K-|D+X2hFPOjyB%4?<cVSkWNvoo5U{n(y
zYXM)y-yw-v6i|~}-eSeHYvd^|Zr8|@+*xcCSeYLNK4ESQ35Ri$(fEwQTg7zZ7VCVX
zK+C5FKr-Z_FD)5>p0uG_i~9z*JuI5#%gBL)+cws;2-JWsz<5ARDuyMTZ0w{&y^5y7
zQF_x(Nb<|~SHs)Z@A>JwjAu^ecd(35e9bsUt+?fTc?0kl{+eeO(4_;G0YVVwd?L0c
zto>6Q#uS}4nA~<pSY9x>R00Q!ulk^|{4nfbDbo!lKpa`0#y=b6?x?#XnXF8`M$KJ@
zYY$on=$u-1*eR_ubQqUk@*=l9XplG**N(Y*e3|JMHFNGg2y5--ke4olK1QHmIE@`u
zEjfyzJsyWcP^|Q5-m2Ifk?eu04^ZZQ_@u!dm9*>m7UH38=%fb9G18t`ojI7;ohBVe
zDS<aEhVxIN(6XV)<mbf6^g*{_N?c-`;uQi%p_3`Dw^*h~>oaVYDCsnGMwIe)6DOS0
z&^Hi<bl=0!OF9gl)B1EqHv`*yQaXpB!@j8wLw^E|Js?YlmrYxG;zC3R7v4Q{L?Snz
zQ~+lHZN-`1J~>lx>16Pj9m4Kd@X{s~bS(J5zQ=;o<>1HNHn-ll%ra1ceGs~h23Cc`
z8*HOU0PEqeN%1NGmtwcm2T?Ts5cQU_SC}RQwc+5*7rynYzxI#5`uATuQ2TD=&Ixx1
z1{9Di#T(l>;qu%<Xif=Z$ATZVY;H(uyJZ=nJ7=22YWKqyWuQYAD7PQBpgcck8XuOY
zJwI&GtM7i;qWA&PDEC2j(zI)#aMJW}8j~R>C!o*|t}##9xzCuB{zhD@g>#?v!xkKN
zPIe1^M+B?G8u%LeSrAbJt}8K*GW)9E4&k}l6f4@B3_GsA+azv>Fvez$bejgXDwUJ4
z@ks3<FRfBmfiW;rCQlpRR9qKf+?x^1M!&V0{VD@Wp+1u)+1b9&9tmSq4n&Z`!3&m{
z(18}dFdFP`u{#d-6k@Qh^r~Y;bUd^j5e<)DtkvE+h%2f%aqVj9Y}6o)jI&n;8o?sh
zAMkg8zg5aVR49)^S3Xy1P#OgPkoOVS|B&lFT>p9O-v19g*LnU1*JE72UutMj!9V6N
zO$2{JxmtLO>k+Pp<3=#Twdt?pT!(mmn(rRq`U9Q?$EW$L{^lqjE0q6?FaHDToh+1}
z_vL>?{r7R7!SSoy5At`4@g6Re|1<7O`;>qG4&}m!>c6+#AaySYKE`#J>u0%wir|}E
z;j-Yr<@#=}{|mqiufku#^>bVgajo!I{|Pr${(h|52;Rl@X|BTK1lOZnKLF7B{$-v&
z!1Xt{3h#e`4|ToFv%dQ@K&jvC`7F=ES4Ow&y9VWI4@P(iM)+g(W&iD5SX=FOR+63F
z)z!7-wa#WYSz7DvB-?A}FLaacR<hA)uOwTW8&~XZZS#Ecvz_g&oew6@bXK0+?mWA;
zwY!sCYIm0}B<<}>?yj?wv^TGGRe7Vcvy*f$v^SH9e`B&`UoEtEyB8Kx{@L1I>t0FL
zc9P56TbDcA^wHT|-dX{iwauj4+3B9x-rel3UFz&?FQ434TUy@Q?ws82?CfrIAKu<s
zNXCwz0l2lz%e&oVrQL0-ooCndJ%D$f?=0_jJBv#jTgw;MHrKjq?Txh^|NJcXe9>9#
zZnrmg+RNRwt<Co3%Nth~JI{Bw*EV<7mX|MdmM<=@ZC>bXgO#17_C|YixwE*n>hBiZ
zI5s+)PpJx{=kLaI?JEr4k8KS^>>0^I-abvQbe`Y2va|4fcSV=Y-AlS$23cG5wD5R)
z=R&f%)lE9j?6x<~W^g5)?d`2?`=ImOqPlt<5_Ptdm9_JrELrPzE<ur9ZXH>`em7Ze
zZ!GU_FyfVmPhQx%)H%8H?3H$RYjf@5$(7EtCwF$2c0fh9bJB2J#QjMjpYCWDr2lK(
zt?l;tPO`lPU~kjOQ$4&UAhh_wQYSI=KdfFZx5Wb|bQ}EB_5b|BuT`G@n-Y%M|M4q-
z`uSh^Kfj~<|LV71{mTD#<CpKz{ptUE;alPN{@UNr{eSvDy}ms7FaGAB?*GX%f8{U!
z-o(<kbidr*6xx=zHlOWm8xtFqSHaPCXZ1%JKD@`+)##ND7`}9QqjL$S=&bB*?BV71
z_W3P%^!yt5ykfXJzt+95yY%q#)}<5Uo#o}3iTU}JrTNbC+{ENbKYTI$@`;Iu#~+@y
zPwbf<KLhF4w&7<GwhJ>E!oeR*wc`lkFA^ewx4FBq@euL`L#`q$`3G%>@}zs^a_2Kn
zrjkpYOIzEB-18UOFbj;4q)S`dlG^sp4v0e}lGXOwMrUOqd3tQ4v)WBQ^dYAhjz2w=
zAlj>4-aP%#kSo;vLIVCp1O1oSzkw-8-AYmFKV4Nve-r-dzv8>>S?^^85*6^@esz}H
zm)pzIB3saUbz|!}uPWLbi2cd!_H&ERc9y}U+R}fC{kwl#s-wSeSI2}l*+SuLttLxb
zyPGTMA@B`0HbsPFiC21d6)9=8TH~#W)?{m{HQkzN&9>%R^W&}Y@$rfA$?>W2>G7HI
z+3~sY`H9xV_{7A-<iym(^u)}>?8Mx}{A6o#d~#xPa&l^NdU9rRc5-fVeyTM!J~c5l
zIW;vkJvB2mJ2f{oKi!%hpPrbWoSvGVo}QVWot~SXpJ~mE&rHlr&P>fr&&<rs&dkls
z&$edAXD4PSXQyVTXJ=+-XXj?;=UQ{)a}#rub5nEEb2D?Zb8~a^^ME){_wzJ8&u8-#
z6?O2=#@ce{<fW|@Fl+aIxI5kUHpT;eV|eI*9X+(34~k!}Uh4X9(Mqsa^7N-Ji`y0!
zb~m5fZeJcd{xlXRX(vyAa%;2mv}gW;3D~mg^nG`{7X0@6OPlRWo$%}L|9Ef&1-y8^
z(_QqEgBtE`g@;tyS(%ug9-oI}w%1m#L<dxM8Dr30-0iN;#r59vh0gP(5k2no8X7pL
zf@SRGcGh;eVRf9OE=pxqjuuOnQT6C-ds7|Oo9=U4&o7Qo%ncSg!!8WHUoV$7+7~+$
zixbl`iyaC(($_0ku(gi0P#aREOUC)bRo$;{cRKYaPFcyqf)|E`h0nB~`)p_V)Kd>7
z>4!gz8I!2U7Op{ozx0=uH@0?mw>v-ga|;U>COR{7Q>znV+Ubdv>E#1cd)vz7Z!wcU
zzFJxCOe{@LwpPaHr`t=@%Oj7T+MSt7+Sqy1_KT+878d;Ftl4}3+1)|+Ff^5~(9ZHK
zA~D&XoSg2oXO`L%jp4<`ZB*5w0deqvf7<TY^P#G}+uFKx_@k%(_1(FjdFKvYSBu>(
zbv8XWJ2gK(y)->LKRvbFKJqa&^1)>BF50;b@YZa*)0*mxudL3k%uUSR^E0RR9r;JM
zE}^};r*<bNK72=LAL$4mpa&Dd4WLdgkGChrXQw-J?dhf2)zx?X**4!<YA?-CwwGGd
zb~E+v8TkYY3nu9P;+&Vot!*5SMHvaenw@CR&aF&z&_Yu)^ApoYpZ+mMoijy|MjdIU
z)!FvUJnD0Da{S&m!<}u3=q0?nXFEF!3+FqV2=DU3f_Z%l3ybGI@#M!BA36KcPd##W
z@zGCxX7P-?!G(oWvf=x)qr-QC`ApuSack?8^S&NR&SnmpWGbiC{PgO?%qr-ZY0peA
zFHODY^QZ3A>IHM-78YECr#`uRX{odQP$D<*q2v*B?#|(a{V<$@h993=o@|e=wjj*J
z<gu@Wxu>@%p9^_12YVk(<>R?)Y-K*=o|f~5ig=lsU!I+r!l+>lm*>Z4?#rZk#Yyvf
z@t4GO&fCu{gRz?Fh6$|Q#Paye@>B;2Se}1h>(tnB$&mXD6SJ`JNM~vHJe}IZh1Kzu
z`H9KS+-iFT(dkUxKXK|OpW6Gy+Ro*T_LcmbiHVuc)cESuicI6g#B6fHHGjFixu!|Q
z`Gp0$U36Vw=GzmqQxnUr$<^`p-2CW61!x}K+QuL6cDD76)Z6sx)ZFCC(!^@3y*e{D
zKifQ9RBwx#W_4EH|H({!<Hsy4nBM+jIAC>kd}3v4X>ti2+FqWTe4w?@sQd8L>a2F!
z6VuD9Q&THbt1B}<F@48D$aZ$lZ?`4=omOjQ7Pq6-M*S}@um0rp9zJ(gHB;}48||OH
zqR%?B6BAQ&IL4E$R%d1T!5?$H_*kt@XQeeeGd;IF-<la4{wRDTlfHw8alBzqh56Y}
zc|LP4#RAi_%bjH`r}KLkF04+^bUHKR6U!3_@7(z02M$>aeUr<FX7<(YPKD8=88pTU
z=PkG9+Dq-Z_WVj~dHKZir+U&@)M6J9dGU!e_zMeX%<xMQFol7~!R#6~3&HAaZ$5?n
z|LFFW%iS&5c0a#>p6BFluFS2huHt}BcIF@cWUu3XHQ*+C!h@SV7v{%{OYP;0xOB8P
z%^YU7-3HGy80N|GlgAy8?3D|uE={b!<m2;GljEKFiRE_d9z)>X3HkWJPjtF%P2v|X
z`J0JfiwpSa2Q!<)2pPHBS>90m0-fP>+G6|iTJHgkys?N<U(EVhSjg_~sFA%9ae96a
zJLi^WkJ`r5d1$ZU0Exs@JRP5UZVM0YwmNxxZW@pF$~FF}oHrIVf1{ztT?_fh^9sDn
znET4&8l*bweA+aNwwzn}@Q3L;|FR#gJyk6umJtFfPBLqqoL-(?nQF~0LCMJvJk>sb
zzOz!8=6`y(vx}hZ6IhwL&oFpqcWp!N!k#$G^s&CTt81HuIL*xCryOUQf=##2<MtAa
zIrZS8DZ#?KNA{@h*`=u#Sel%hnOUBjnVp|a`nt*DI=y($&fM33M1EV6PqDb<h6e%m
zWxHbU;sieN2>Dm+m-!$)_Irrfo>*`nGQo|r^DDE<t?B8`(#rJG+~mZ3KZEUw+$|g}
zVtbLm)XLT+W^SF85B{BhMR9ypQ#AiyE1Znt1@b`Ym5wH4Gwt?Ni;2|I(y2pF;kBku
zp2HYr@z@XDlkRS})5~j%I~!Zw#T6bDP5AIZn-4A#irZWyus}fOBSUyt=iT)2v?i11
z7rncgx+g!CJae#D&--B?^^>5z7H-kSfEJDC0C=@Ci7V4?wc4$z)v3wZN6r;=6qEMM
znJ$!i&1EwV%>*-tb#iI0J>HpG!hX)S=T_#=w%kXTySN5|ba92SIX>7TJ}dEJ%>3#~
zdvbY>@X%^|Zn8D===7<Ahf7F)VIkd=cdPh^Oo^F@3sY@kNA3AGA*!j_)%lgj&J>{Q
zcUub{Uw@=vdSzm=)m|D$9G6z-CRZPyDzuU5?az)geY~*s+#(a^pB2E%#20W($5(KN
z=BLKT&y@*E5>xq@uFIFNJYm;MmxI4BNN9g$cNsS>szUhly9A-b(r1VUlqOo^)5E-8
yW~rgGa$@O9I3UU||HSyilamj(PHbu^gSCaRl?m{I8#J5n$^41d_=(os@&5-e?zofy

literal 41787
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

diff --git a/substrate/core/transaction-pool/graph/src/pool.rs b/substrate/core/transaction-pool/graph/src/pool.rs
index a16db8206ef..e96d320046d 100644
--- a/substrate/core/transaction-pool/graph/src/pool.rs
+++ b/substrate/core/transaction-pool/graph/src/pool.rs
@@ -327,7 +327,7 @@ mod tests {
 		/// Verify extrinsic at given block.
 		fn validate_transaction(&self, at: &BlockId<Self::Block>, uxt: &ExtrinsicFor<Self>) -> Result<TransactionValidity, Self::Error> {
 			let block_number = self.block_id_to_number(at)?.unwrap();
-			let nonce = uxt.transfer.nonce;
+			let nonce = uxt.transfer().nonce;
 
 			if nonce < block_number {
 				Ok(TransactionValidity::Invalid)
@@ -359,15 +359,12 @@ mod tests {
 
 		/// Hash the extrinsic.
 		fn hash(&self, uxt: &ExtrinsicFor<Self>) -> Self::Hash {
-			(uxt.transfer.from.to_low_u64_be() << 5) + uxt.transfer.nonce
+			(uxt.transfer().from.to_low_u64_be() << 5) + uxt.transfer().nonce
 		}
 	}
 
 	fn uxt(transfer: Transfer) -> Extrinsic {
-		Extrinsic {
-			transfer,
-			signature: Default::default(),
-		}
+		Extrinsic::Transfer(transfer, Default::default())
 	}
 
 	fn pool() -> Pool<TestApi> {
diff --git a/substrate/core/transaction-pool/src/tests.rs b/substrate/core/transaction-pool/src/tests.rs
index e02bf054014..c79ca5605be 100644
--- a/substrate/core/transaction-pool/src/tests.rs
+++ b/substrate/core/transaction-pool/src/tests.rs
@@ -42,12 +42,12 @@ impl txpool::ChainApi for TestApi {
 
 	fn validate_transaction(&self, at: &BlockId<Self::Block>, uxt: &txpool::ExtrinsicFor<Self>) -> error::Result<TransactionValidity> {
 		let expected = index(at);
-		let requires = if expected == uxt.transfer.nonce {
+		let requires = if expected == uxt.transfer().nonce {
 			vec![]
 		} else {
-			vec![vec![uxt.transfer.nonce as u8 - 1]]
+			vec![vec![uxt.transfer().nonce as u8 - 1]]
 		};
-		let provides = vec![vec![uxt.transfer.nonce as u8]];
+		let provides = vec![vec![uxt.transfer().nonce as u8]];
 
 		Ok(TransactionValidity::Valid {
 			priority: 1,
@@ -93,10 +93,7 @@ fn uxt(who: Keyring, nonce: Index) -> Extrinsic {
 		amount: 1,
 	};
 	let signature = transfer.using_encoded(|e| who.sign(e));
-	Extrinsic {
-		transfer,
-		signature: signature.into(),
-	}
+	Extrinsic::Transfer(transfer, signature.into())
 }
 
 fn pool() -> Pool<TestApi> {
@@ -109,7 +106,7 @@ fn submission_should_work() {
 	assert_eq!(209, index(&BlockId::number(0)));
 	pool.submit_one(&BlockId::number(0), uxt(Alice, 209)).unwrap();
 
-	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer.nonce).collect();
+	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
 	assert_eq!(pending, vec![209]);
 }
 
@@ -119,7 +116,7 @@ fn multiple_submission_should_work() {
 	pool.submit_one(&BlockId::number(0), uxt(Alice, 209)).unwrap();
 	pool.submit_one(&BlockId::number(0), uxt(Alice, 210)).unwrap();
 
-	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer.nonce).collect();
+	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
 	assert_eq!(pending, vec![209, 210]);
 }
 
@@ -128,7 +125,7 @@ fn early_nonce_should_be_culled() {
 	let pool = pool();
 	pool.submit_one(&BlockId::number(0), uxt(Alice, 208)).unwrap();
 
-	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer.nonce).collect();
+	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
 	assert_eq!(pending, Vec::<Index>::new());
 }
 
@@ -137,11 +134,11 @@ fn late_nonce_should_be_queued() {
 	let pool = pool();
 
 	pool.submit_one(&BlockId::number(0), uxt(Alice, 210)).unwrap();
-	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer.nonce).collect();
+	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
 	assert_eq!(pending, Vec::<Index>::new());
 
 	pool.submit_one(&BlockId::number(0), uxt(Alice, 209)).unwrap();
-	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer.nonce).collect();
+	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
 	assert_eq!(pending, vec![209, 210]);
 }
 
@@ -151,12 +148,12 @@ fn prune_tags_should_work() {
 	pool.submit_one(&BlockId::number(0), uxt(Alice, 209)).unwrap();
 	pool.submit_one(&BlockId::number(0), uxt(Alice, 210)).unwrap();
 
-	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer.nonce).collect();
+	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
 	assert_eq!(pending, vec![209, 210]);
 
 	pool.prune_tags(&BlockId::number(1), vec![vec![209]]).unwrap();
 
-	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer.nonce).collect();
+	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
 	assert_eq!(pending, vec![210]);
 }
 
@@ -169,7 +166,7 @@ fn should_ban_invalid_transactions() {
 	pool.submit_one(&BlockId::number(0), uxt.clone()).unwrap_err();
 
 	// when
-	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer.nonce).collect();
+	let pending: Vec<_> = pool.ready().map(|a| a.data.transfer().nonce).collect();
 	assert_eq!(pending, Vec::<Index>::new());
 
 	// then
diff --git a/substrate/node/cli/src/service.rs b/substrate/node/cli/src/service.rs
index 89dbd02319d..38f34aedf5a 100644
--- a/substrate/node/cli/src/service.rs
+++ b/substrate/node/cli/src/service.rs
@@ -100,6 +100,7 @@ construct_service_factory! {
 					grandpa::Config {
 						local_key,
 						gossip_duration: Duration::new(4, 0), // FIXME: make this available through chainspec?
+						justification_period: 4096,
 						name: Some(service.config.name.clone())
 					},
 					link_half,
diff --git a/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm b/substrate/node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm
index 4319fbc77cfdf1650ac987dbf7b073a9b58dce47..f0e4c77f77998fbfadaaeca112c6b3c6f6e871b7 100644
GIT binary patch
delta 109994
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

delta 110205
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%0AE7r+?7ozm(ivOW
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
LBk|&cY!3T>Xtbfw

diff --git a/substrate/srml/consensus/src/lib.rs b/substrate/srml/consensus/src/lib.rs
index 2a55ac9e196..e8ef08e4b9c 100644
--- a/substrate/srml/consensus/src/lib.rs
+++ b/substrate/srml/consensus/src/lib.rs
@@ -50,6 +50,9 @@ use primitives::traits::{
 use substrate_primitives::storage::well_known_keys;
 use system::{ensure_signed, ensure_inherent};
 
+#[cfg(any(feature = "std", test))]
+use substrate_primitives::Ed25519AuthorityId;
+
 mod mock;
 mod tests;
 
@@ -143,7 +146,7 @@ impl<SessionKey: Member> RawLog<SessionKey> {
 
 // Implementation for tests outside of this crate.
 #[cfg(any(feature = "std", test))]
-impl<N> From<RawLog<N>> for primitives::testing::DigestItem where N: Into<substrate_primitives::Ed25519AuthorityId> {
+impl<N> From<RawLog<N>> for primitives::testing::DigestItem where N: Into<Ed25519AuthorityId> {
 	fn from(log: RawLog<N>) -> primitives::testing::DigestItem {
 		match log {
 			RawLog::AuthoritiesChange(authorities) =>
-- 
GitLab