From 84e385753ecba84113e72f0c5c741f3837ff3fb2 Mon Sep 17 00:00:00 2001 From: Thomas Coratger <60488569+tcoratger@users.noreply.github.com> Date: Mon, 1 Jul 2024 11:39:48 +0200 Subject: [PATCH 01/27] refactor(net): some refactor in eth requests (#9205) --- crates/net/network/src/eth_requests.rs | 33 ++++++++------------------ 1 file changed, 10 insertions(+), 23 deletions(-) diff --git a/crates/net/network/src/eth_requests.rs b/crates/net/network/src/eth_requests.rs index 2e403a517dc0..3b7e9500e077 100644 --- a/crates/net/network/src/eth_requests.rs +++ b/crates/net/network/src/eth_requests.rs @@ -66,8 +66,12 @@ pub struct EthRequestHandler { impl EthRequestHandler { /// Create a new instance pub fn new(client: C, peers: PeersHandle, incoming: Receiver) -> Self { - let metrics = Default::default(); - Self { client, peers, incoming_requests: ReceiverStream::new(incoming), metrics } + Self { + client, + peers, + incoming_requests: ReceiverStream::new(incoming), + metrics: Default::default(), + } } } @@ -124,11 +128,7 @@ where total_bytes += header.length(); headers.push(header); - if headers.len() >= MAX_HEADERS_SERVE { - break - } - - if total_bytes > SOFT_RESPONSE_LIMIT { + if headers.len() >= MAX_HEADERS_SERVE || total_bytes > SOFT_RESPONSE_LIMIT { break } } else { @@ -163,21 +163,12 @@ where for hash in request.0 { if let Some(block) = self.client.block_by_hash(hash).unwrap_or_default() { - let body = BlockBody { - transactions: block.body, - ommers: block.ommers, - withdrawals: block.withdrawals, - requests: block.requests, - }; + let body: BlockBody = block.into(); total_bytes += body.length(); bodies.push(body); - if bodies.len() >= MAX_BODIES_SERVE { - break - } - - if total_bytes > SOFT_RESPONSE_LIMIT { + if bodies.len() >= MAX_BODIES_SERVE || total_bytes > SOFT_RESPONSE_LIMIT { break } } else { @@ -212,11 +203,7 @@ where total_bytes += receipt.length(); receipts.push(receipt); - if receipts.len() >= MAX_RECEIPTS_SERVE { - break - } - - if total_bytes > SOFT_RESPONSE_LIMIT { + if receipts.len() >= MAX_RECEIPTS_SERVE || total_bytes > SOFT_RESPONSE_LIMIT { break } } else { From 91d45871b29dd1f6ed9af83aab92c7307e9d09bc Mon Sep 17 00:00:00 2001 From: Thomas Coratger <60488569+tcoratger@users.noreply.github.com> Date: Mon, 1 Jul 2024 11:46:43 +0200 Subject: [PATCH 02/27] refactor(revm): simplify `fill_tx_env` (#9206) --- crates/primitives/src/revm/env.rs | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/crates/primitives/src/revm/env.rs b/crates/primitives/src/revm/env.rs index bbd4cffd35fb..ada7894513ed 100644 --- a/crates/primitives/src/revm/env.rs +++ b/crates/primitives/src/revm/env.rs @@ -245,10 +245,7 @@ where tx_env.gas_limit = tx.gas_limit; tx_env.gas_price = U256::from(tx.gas_price); tx_env.gas_priority_fee = None; - tx_env.transact_to = match tx.to { - TxKind::Call(to) => TxKind::Call(to), - TxKind::Create => TxKind::Create, - }; + tx_env.transact_to = tx.to; tx_env.value = tx.value; tx_env.data = tx.input.clone(); tx_env.chain_id = tx.chain_id; @@ -261,17 +258,13 @@ where tx_env.gas_limit = tx.gas_limit; tx_env.gas_price = U256::from(tx.gas_price); tx_env.gas_priority_fee = None; - tx_env.transact_to = match tx.to { - TxKind::Call(to) => TxKind::Call(to), - TxKind::Create => TxKind::Create, - }; + tx_env.transact_to = tx.to; tx_env.value = tx.value; tx_env.data = tx.input.clone(); tx_env.chain_id = Some(tx.chain_id); tx_env.nonce = Some(tx.nonce); tx_env.access_list = tx .access_list - .0 .iter() .map(|l| { (l.address, l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect()) @@ -284,17 +277,13 @@ where tx_env.gas_limit = tx.gas_limit; tx_env.gas_price = U256::from(tx.max_fee_per_gas); tx_env.gas_priority_fee = Some(U256::from(tx.max_priority_fee_per_gas)); - tx_env.transact_to = match tx.to { - TxKind::Call(to) => TxKind::Call(to), - TxKind::Create => TxKind::Create, - }; + tx_env.transact_to = tx.to; tx_env.value = tx.value; tx_env.data = tx.input.clone(); tx_env.chain_id = Some(tx.chain_id); tx_env.nonce = Some(tx.nonce); tx_env.access_list = tx .access_list - .0 .iter() .map(|l| { (l.address, l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect()) @@ -314,7 +303,6 @@ where tx_env.nonce = Some(tx.nonce); tx_env.access_list = tx .access_list - .0 .iter() .map(|l| { (l.address, l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect()) From 9cd377881caaaef2a470fda30fe25fa3c77cecb4 Mon Sep 17 00:00:00 2001 From: Ninja Date: Mon, 1 Jul 2024 12:06:29 +0200 Subject: [PATCH 03/27] docs: fix the links to code in discv4 docs (#9204) --- docs/crates/discv4.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/crates/discv4.md b/docs/crates/discv4.md index 5abe7c439b99..348c68e06b13 100644 --- a/docs/crates/discv4.md +++ b/docs/crates/discv4.md @@ -126,7 +126,7 @@ The `NodeRecord::from_secret_key()` takes the socket address used for discovery If the `discv4_config` supplied to the `Discovery::new()` function is `None`, the discv4 service will not be spawned. In this case, no new peers will be discovered across the network. The node will have to rely on manually added peers. However, if the `discv4_config` contains a `Some(Discv4Config)` value, then the `Discv4::bind()` function is called to bind to a new UdpSocket and create the disc_v4 service. -[File: crates/net/discv4/src/lib.rs](https://github.com/paradigmxyz/reth/blob/main/crates/net/discv4/src/lib.rs#L188) +[File: crates/net/discv4/src/lib.rs](https://github.com/paradigmxyz/reth/blob/530e7e8961b8f82ae2c675d16c368dd266ceba7d/crates/net/discv4/src/lib.rs#L178) ```rust ignore impl Discv4 { //--snip-- @@ -155,7 +155,7 @@ impl Discv4 { To better understand what is actually happening when the disc_v4 service is created, lets take a deeper look at the `Discv4Service::new()` function. -[File: crates/net/discv4/src/lib.rs](https://github.com/paradigmxyz/reth/blob/main/crates/net/discv4/src/lib.rs#L392) +[File: crates/net/discv4/src/lib.rs](https://github.com/paradigmxyz/reth/blob/530e7e8961b8f82ae2c675d16c368dd266ceba7d/crates/net/discv4/src/lib.rs#L495) ```rust ignore impl Discv4Service { /// Create a new instance for a bound [`UdpSocket`]. @@ -216,7 +216,7 @@ In Rust, the owner of a [`Future`](https://doc.rust-lang.org/std/future/trait.Fu Lets take a detailed look at how `Discv4Service::poll` works under the hood. This function has many moving parts, so we will break it up into smaller sections. -[File: crates/net/discv4/src/lib.rs](https://github.com/paradigmxyz/reth/blob/main/crates/net/discv4/src/lib.rs#L1302) +[File: crates/net/discv4/src/lib.rs](https://github.com/paradigmxyz/reth/blob/530e7e8961b8f82ae2c675d16c368dd266ceba7d/crates/net/discv4/src/lib.rs#L495) ```rust ignore impl Discv4Service { //--snip-- @@ -259,7 +259,7 @@ impl Discv4Service { As the function starts, a `loop` is entered and the `Discv4Service.queued_events` are evaluated to see if there are any events ready to be processed. If there is an event ready, the function immediately returns the event wrapped in `Poll::Ready()`. The `queued_events` field is a `VecDeque` where `Discv4Event` is an enum containing one of the following variants. -[File: crates/net/discv4/src/lib.rs](https://github.com/paradigmxyz/reth/blob/main/crates/net/discv4/src/lib.rs#L1455) +[File: crates/net/discv4/src/lib.rs](https://github.com/paradigmxyz/reth/blob/530e7e8961b8f82ae2c675d16c368dd266ceba7d/crates/net/discv4/src/lib.rs#L1770) ```rust ignore pub enum Discv4Event { /// A `Ping` message was handled. @@ -285,7 +285,7 @@ Next, the Discv4Service handles all incoming `Discv4Command`s until there are no In Reth, once a new `NetworkState` is initialized as the node starts up and a new task is spawned to handle the network, the `poll()` function is used to advance the state of the network. -[File: crates/net/network/src/state.rs](https://github.com/paradigmxyz/reth/blob/main/crates/net/network/src/state.rs#L377) +[File: crates/net/network/src/state.rs](https://github.com/paradigmxyz/reth/blob/530e7e8961b8f82ae2c675d16c368dd266ceba7d/crates/net/network/src/state.rs#L396) ```rust ignore impl NetworkState where From d4fa9defbd3180aababad03ea7477328f25af902 Mon Sep 17 00:00:00 2001 From: Delweng Date: Mon, 1 Jul 2024 18:23:28 +0800 Subject: [PATCH 04/27] feat(net/peer): set rpc added peer as static (#9201) Signed-off-by: jsvisa --- crates/net/network-api/src/lib.rs | 11 +++++++++-- crates/net/network/src/manager.rs | 2 +- crates/net/network/src/state.rs | 5 +++-- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/crates/net/network-api/src/lib.rs b/crates/net/network-api/src/lib.rs index 895fbc089234..e9cce0866fde 100644 --- a/crates/net/network-api/src/lib.rs +++ b/crates/net/network-api/src/lib.rs @@ -68,12 +68,12 @@ pub trait PeersInfo: Send + Sync { pub trait Peers: PeersInfo { /// Adds a peer to the peer set with UDP `SocketAddr`. fn add_peer(&self, peer: PeerId, tcp_addr: SocketAddr) { - self.add_peer_kind(peer, PeerKind::Basic, tcp_addr, None); + self.add_peer_kind(peer, PeerKind::Static, tcp_addr, None); } /// Adds a peer to the peer set with TCP and UDP `SocketAddr`. fn add_peer_with_udp(&self, peer: PeerId, tcp_addr: SocketAddr, udp_addr: SocketAddr) { - self.add_peer_kind(peer, PeerKind::Basic, tcp_addr, Some(udp_addr)); + self.add_peer_kind(peer, PeerKind::Static, tcp_addr, Some(udp_addr)); } /// Adds a trusted [`PeerId`] to the peer set. @@ -163,6 +163,8 @@ pub enum PeerKind { /// Basic peer kind. #[default] Basic, + /// Static peer, added via JSON-RPC. + Static, /// Trusted peer. Trusted, } @@ -173,6 +175,11 @@ impl PeerKind { matches!(self, Self::Trusted) } + /// Returns `true` if the peer is static. + pub const fn is_static(&self) -> bool { + matches!(self, Self::Static) + } + /// Returns `true` if the peer is basic. pub const fn is_basic(&self) -> bool { matches!(self, Self::Basic) diff --git a/crates/net/network/src/manager.rs b/crates/net/network/src/manager.rs index 1093bc8c50e5..b3fa43252ec1 100644 --- a/crates/net/network/src/manager.rs +++ b/crates/net/network/src/manager.rs @@ -562,7 +562,7 @@ where } } NetworkHandleMessage::RemovePeer(peer_id, kind) => { - self.swarm.state_mut().remove_peer(peer_id, kind); + self.swarm.state_mut().remove_peer_kind(peer_id, kind); } NetworkHandleMessage::DisconnectPeer(peer_id, reason) => { self.swarm.sessions_mut().disconnect(peer_id, reason); diff --git a/crates/net/network/src/state.rs b/crates/net/network/src/state.rs index 7fa5b6d2c08f..7334e483b2b4 100644 --- a/crates/net/network/src/state.rs +++ b/crates/net/network/src/state.rs @@ -278,9 +278,10 @@ where self.peers_manager.add_peer_kind(peer_id, kind, addr, None) } - pub(crate) fn remove_peer(&mut self, peer_id: PeerId, kind: PeerKind) { + /// Removes a peer and its address with the given kind from the peerset. + pub(crate) fn remove_peer_kind(&mut self, peer_id: PeerId, kind: PeerKind) { match kind { - PeerKind::Basic => self.peers_manager.remove_peer(peer_id), + PeerKind::Basic | PeerKind::Static => self.peers_manager.remove_peer(peer_id), PeerKind::Trusted => self.peers_manager.remove_peer_from_trusted_set(peer_id), } } From 3a9fbbc8e4d3b76d2b41aff4f4f2727da3485ab4 Mon Sep 17 00:00:00 2001 From: Thomas Coratger <60488569+tcoratger@users.noreply.github.com> Date: Mon, 1 Jul 2024 12:30:40 +0200 Subject: [PATCH 05/27] refactor: small refactoring (#9208) --- crates/consensus/common/src/validation.rs | 7 ++++--- crates/net/downloaders/src/file_client.rs | 10 +--------- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/crates/consensus/common/src/validation.rs b/crates/consensus/common/src/validation.rs index dc04d74dc9ac..a2ebd3f6c545 100644 --- a/crates/consensus/common/src/validation.rs +++ b/crates/consensus/common/src/validation.rs @@ -29,7 +29,7 @@ pub fn validate_header_base_fee( header: &SealedHeader, chain_spec: &ChainSpec, ) -> Result<(), ConsensusError> { - if chain_spec.fork(EthereumHardfork::London).active_at_block(header.number) && + if chain_spec.is_fork_active_at_block(EthereumHardfork::London, header.number) && header.base_fee_per_gas.is_none() { return Err(ConsensusError::BaseFeeMissing) @@ -152,8 +152,9 @@ pub fn validate_4844_header_standalone(header: &SealedHeader) -> Result<(), Cons /// This must be 32 bytes or fewer; formally Hx. #[inline] pub fn validate_header_extradata(header: &Header) -> Result<(), ConsensusError> { - if header.extra_data.len() > MAXIMUM_EXTRA_DATA_SIZE { - Err(ConsensusError::ExtraDataExceedsMax { len: header.extra_data.len() }) + let extradata_len = header.extra_data.len(); + if extradata_len > MAXIMUM_EXTRA_DATA_SIZE { + Err(ConsensusError::ExtraDataExceedsMax { len: extradata_len }) } else { Ok(()) } diff --git a/crates/net/downloaders/src/file_client.rs b/crates/net/downloaders/src/file_client.rs index 3464baf5d6ff..3d00c389237b 100644 --- a/crates/net/downloaders/src/file_client.rs +++ b/crates/net/downloaders/src/file_client.rs @@ -228,15 +228,7 @@ impl FromReader for FileClient { // add to the internal maps headers.insert(block.header.number, block.header.clone()); hash_to_number.insert(block_hash, block.header.number); - bodies.insert( - block_hash, - BlockBody { - transactions: block.body, - ommers: block.ommers, - withdrawals: block.withdrawals, - requests: block.requests, - }, - ); + bodies.insert(block_hash, block.into()); if log_interval == 0 { trace!(target: "downloaders::file", From 90c60cb26c2d2b5542c8ccb5f720717a30cdc4ae Mon Sep 17 00:00:00 2001 From: Thomas Coratger <60488569+tcoratger@users.noreply.github.com> Date: Mon, 1 Jul 2024 12:44:16 +0200 Subject: [PATCH 06/27] refactor: some simplifications around revm database (#9212) --- crates/revm/src/database.rs | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/crates/revm/src/database.rs b/crates/revm/src/database.rs index 3b31788dbdaf..a1296ae39c24 100644 --- a/crates/revm/src/database.rs +++ b/crates/revm/src/database.rs @@ -1,6 +1,6 @@ use crate::primitives::alloy_primitives::{BlockNumber, StorageKey, StorageValue}; use core::ops::{Deref, DerefMut}; -use reth_primitives::{Account, Address, B256, KECCAK_EMPTY, U256}; +use reth_primitives::{Account, Address, B256, U256}; use reth_storage_errors::provider::{ProviderError, ProviderResult}; use revm::{ db::DatabaseRef, @@ -134,12 +134,7 @@ impl DatabaseRef for StateProviderDatabase { /// Returns `Ok` with `Some(AccountInfo)` if the account exists, /// `None` if it doesn't, or an error if encountered. fn basic_ref(&self, address: Address) -> Result, Self::Error> { - Ok(self.basic_account(address)?.map(|account| AccountInfo { - balance: account.balance, - nonce: account.nonce, - code_hash: account.bytecode_hash.unwrap_or(KECCAK_EMPTY), - code: None, - })) + Ok(self.basic_account(address)?.map(Into::into)) } /// Retrieves the bytecode associated with a given code hash. @@ -160,13 +155,10 @@ impl DatabaseRef for StateProviderDatabase { /// /// Returns `Ok` with the block hash if found, or the default hash otherwise. fn block_hash_ref(&self, number: U256) -> Result { - // Attempt to convert U256 to u64 - let block_number = match number.try_into() { - Ok(value) => value, - Err(_) => return Err(Self::Error::BlockNumberOverflow(number)), - }; - - // Get the block hash or default hash - Ok(self.0.block_hash(block_number)?.unwrap_or_default()) + // Get the block hash or default hash with an attempt to convert U256 block number to u64 + Ok(self + .0 + .block_hash(number.try_into().map_err(|_| Self::Error::BlockNumberOverflow(number))?)? + .unwrap_or_default()) } } From e6842fb8bd614daa56d9109b7d604355a40c6f30 Mon Sep 17 00:00:00 2001 From: Thomas Coratger <60488569+tcoratger@users.noreply.github.com> Date: Mon, 1 Jul 2024 13:24:52 +0200 Subject: [PATCH 07/27] refactor(chainspec): simplify `genesis_header` using default pattern (#9198) --- crates/chainspec/src/spec.rs | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/crates/chainspec/src/spec.rs b/crates/chainspec/src/spec.rs index 44c363c6ce77..33ca2f4f0244 100644 --- a/crates/chainspec/src/spec.rs +++ b/crates/chainspec/src/spec.rs @@ -19,10 +19,7 @@ use reth_ethereum_forks::{ }; use reth_network_peers::NodeRecord; use reth_primitives_traits::{ - constants::{ - EIP1559_INITIAL_BASE_FEE, EMPTY_OMMER_ROOT_HASH, EMPTY_RECEIPTS, EMPTY_TRANSACTIONS, - EMPTY_WITHDRAWALS, - }, + constants::{EIP1559_INITIAL_BASE_FEE, EMPTY_WITHDRAWALS}, Header, SealedHeader, }; use reth_trie_common::root::state_root_ref_unhashed; @@ -443,12 +440,6 @@ impl ChainSpec { }; Header { - parent_hash: B256::ZERO, - number: 0, - transactions_root: EMPTY_TRANSACTIONS, - ommers_hash: EMPTY_OMMER_ROOT_HASH, - receipts_root: EMPTY_RECEIPTS, - logs_bloom: Default::default(), gas_limit: self.genesis.gas_limit as u64, difficulty: self.genesis.difficulty, nonce: self.genesis.nonce, @@ -457,13 +448,13 @@ impl ChainSpec { timestamp: self.genesis.timestamp, mix_hash: self.genesis.mix_hash, beneficiary: self.genesis.coinbase, - gas_used: Default::default(), base_fee_per_gas, withdrawals_root, parent_beacon_block_root, blob_gas_used, excess_blob_gas, requests_root, + ..Default::default() } } From 068bf57c06de0764b214e2f10c99e125825947c7 Mon Sep 17 00:00:00 2001 From: Roman Krasiuk Date: Mon, 1 Jul 2024 04:26:44 -0700 Subject: [PATCH 08/27] fix: ambiguous deposit mint value in arbitrary (#9216) --- crates/primitives/src/transaction/mod.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/crates/primitives/src/transaction/mod.rs b/crates/primitives/src/transaction/mod.rs index c23d454f868d..1edafaaa2c0a 100644 --- a/crates/primitives/src/transaction/mod.rs +++ b/crates/primitives/src/transaction/mod.rs @@ -1478,6 +1478,16 @@ impl<'a> arbitrary::Arbitrary<'a> for TransactionSigned { if tx_eip_4844.to != Address::default() { Some(()) } else { None }; } + #[cfg(feature = "optimism")] + // Both `Some(0)` and `None` values are encoded as empty string byte. This introduces + // ambiguity in roundtrip tests. Patch the mint value of deposit transaction here, so that + // it's `None` if zero. + if let Transaction::Deposit(ref mut tx_deposit) = transaction { + if tx_deposit.mint == Some(0) { + tx_deposit.mint = None; + } + } + let signature = Signature::arbitrary(u)?; #[cfg(feature = "optimism")] From 01979c4bdea2297fdba08acdaeca8a33c3294c1a Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Mon, 1 Jul 2024 14:03:44 +0200 Subject: [PATCH 09/27] feat: new engine API handler (#8559) Co-authored-by: Roman Krasiuk Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com> Co-authored-by: Federico Gimenez --- CODEOWNERS | 3 +- Cargo.lock | 44 ++ Cargo.toml | 2 + .../consensus/beacon/src/engine/forkchoice.rs | 9 +- .../beacon/src/engine/invalid_headers.rs | 7 +- crates/consensus/beacon/src/engine/mod.rs | 7 +- crates/engine/tree/Cargo.toml | 64 ++ crates/engine/tree/src/backfill.rs | 342 +++++++++++ crates/engine/tree/src/chain.rs | 218 +++++++ crates/engine/tree/src/download.rs | 414 +++++++++++++ crates/engine/tree/src/engine.rs | 212 +++++++ crates/engine/tree/src/lib.rs | 31 + crates/engine/tree/src/metrics.rs | 9 + crates/engine/tree/src/persistence.rs | 139 +++++ crates/engine/tree/src/test_utils.rs | 21 + crates/engine/tree/src/tree/memory_overlay.rs | 123 ++++ crates/engine/tree/src/tree/mod.rs | 574 ++++++++++++++++++ 17 files changed, 2208 insertions(+), 11 deletions(-) create mode 100644 crates/engine/tree/Cargo.toml create mode 100644 crates/engine/tree/src/backfill.rs create mode 100644 crates/engine/tree/src/chain.rs create mode 100644 crates/engine/tree/src/download.rs create mode 100644 crates/engine/tree/src/engine.rs create mode 100644 crates/engine/tree/src/lib.rs create mode 100644 crates/engine/tree/src/metrics.rs create mode 100644 crates/engine/tree/src/persistence.rs create mode 100644 crates/engine/tree/src/test_utils.rs create mode 100644 crates/engine/tree/src/tree/memory_overlay.rs create mode 100644 crates/engine/tree/src/tree/mod.rs diff --git a/CODEOWNERS b/CODEOWNERS index 11c19aa43454..225d0f08b174 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -6,8 +6,9 @@ crates/chainspec/ @Rjected @joshieDo @mattsse crates/cli/ @onbjerg @mattsse crates/config/ @onbjerg crates/consensus/ @rkrasiuk @mattsse @Rjected +crates/engine @rkrasiuk @mattsse @Rjected crates/e2e-test-utils/ @mattsse @Rjected -crates/engine-primitives/ @rkrasiuk @mattsse @Rjected +crates/engine/ @rkrasiuk @mattsse @Rjected @fgimenez crates/errors/ @mattsse crates/ethereum/ @mattsse @Rjected crates/ethereum-forks/ @mattsse @Rjected diff --git a/Cargo.lock b/Cargo.lock index 962e60497108..0bdada0efe7b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6966,6 +6966,50 @@ dependencies = [ "serde", ] +[[package]] +name = "reth-engine-tree" +version = "1.0.0" +dependencies = [ + "aquamarine", + "assert_matches", + "futures", + "metrics", + "parking_lot 0.12.3", + "reth-beacon-consensus", + "reth-blockchain-tree", + "reth-blockchain-tree-api", + "reth-chainspec", + "reth-consensus", + "reth-db", + "reth-db-api", + "reth-engine-primitives", + "reth-errors", + "reth-ethereum-consensus", + "reth-evm", + "reth-metrics", + "reth-network-p2p", + "reth-payload-builder", + "reth-payload-primitives", + "reth-payload-validator", + "reth-primitives", + "reth-provider", + "reth-prune", + "reth-prune-types", + "reth-revm", + "reth-rpc-types", + "reth-stages", + "reth-stages-api", + "reth-static-file", + "reth-tasks", + "reth-tokio-util", + "reth-tracing", + "reth-trie", + "revm", + "tokio", + "tokio-stream", + "tracing", +] + [[package]] name = "reth-engine-util" version = "1.0.0" diff --git a/Cargo.toml b/Cargo.toml index 7110a39197ae..1308361d4a3e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,6 +26,7 @@ members = [ "crates/ethereum-forks/", "crates/e2e-test-utils/", "crates/engine/primitives/", + "crates/engine/tree/", "crates/engine/util/", "crates/errors/", "crates/ethereum-forks/", @@ -287,6 +288,7 @@ reth-downloaders = { path = "crates/net/downloaders" } reth-e2e-test-utils = { path = "crates/e2e-test-utils" } reth-ecies = { path = "crates/net/ecies" } reth-engine-primitives = { path = "crates/engine/primitives" } +reth-engine-tree = { path = "crates/engine/tree" } reth-engine-util = { path = "crates/engine/util" } reth-errors = { path = "crates/errors" } reth-eth-wire = { path = "crates/net/eth-wire" } diff --git a/crates/consensus/beacon/src/engine/forkchoice.rs b/crates/consensus/beacon/src/engine/forkchoice.rs index afd19f6079eb..491d0ff8aade 100644 --- a/crates/consensus/beacon/src/engine/forkchoice.rs +++ b/crates/consensus/beacon/src/engine/forkchoice.rs @@ -3,7 +3,7 @@ use reth_rpc_types::engine::{ForkchoiceState, PayloadStatusEnum}; /// The struct that keeps track of the received forkchoice state and their status. #[derive(Debug, Clone, Default)] -pub(crate) struct ForkchoiceStateTracker { +pub struct ForkchoiceStateTracker { /// The latest forkchoice state that we received. /// /// Caution: this can be invalid. @@ -76,7 +76,7 @@ impl ForkchoiceStateTracker { } /// Returns the last received `ForkchoiceState` to which we need to sync. - pub(crate) const fn sync_target_state(&self) -> Option { + pub const fn sync_target_state(&self) -> Option { self.last_syncing } @@ -139,9 +139,12 @@ impl From for ForkchoiceStatus { /// A helper type to check represent hashes of a [`ForkchoiceState`] #[derive(Clone, Copy, Debug, PartialEq, Eq)] -pub(crate) enum ForkchoiceStateHash { +pub enum ForkchoiceStateHash { + /// Head hash of the [`ForkchoiceState`]. Head(B256), + /// Safe hash of the [`ForkchoiceState`]. Safe(B256), + /// Finalized hash of the [`ForkchoiceState`]. Finalized(B256), } diff --git a/crates/consensus/beacon/src/engine/invalid_headers.rs b/crates/consensus/beacon/src/engine/invalid_headers.rs index 2a37c60014da..ebce1faf92dc 100644 --- a/crates/consensus/beacon/src/engine/invalid_headers.rs +++ b/crates/consensus/beacon/src/engine/invalid_headers.rs @@ -14,7 +14,8 @@ use tracing::warn; const INVALID_HEADER_HIT_EVICTION_THRESHOLD: u8 = 128; /// Keeps track of invalid headers. -pub(crate) struct InvalidHeaderCache { +#[derive(Debug)] +pub struct InvalidHeaderCache { /// This maps a header hash to a reference to its invalid ancestor. headers: LruMap, /// Metrics for the cache. @@ -34,7 +35,7 @@ impl InvalidHeaderCache { /// /// If this is called, the hit count for the entry is incremented. /// If the hit count exceeds the threshold, the entry is evicted and `None` is returned. - pub(crate) fn get(&mut self, hash: &B256) -> Option> { + pub fn get(&mut self, hash: &B256) -> Option> { { let entry = self.headers.get(hash)?; entry.hit_count += 1; @@ -49,7 +50,7 @@ impl InvalidHeaderCache { } /// Inserts an invalid block into the cache, with a given invalid ancestor. - pub(crate) fn insert_with_invalid_ancestor( + pub fn insert_with_invalid_ancestor( &mut self, header_hash: B256, invalid_ancestor: Arc
, diff --git a/crates/consensus/beacon/src/engine/mod.rs b/crates/consensus/beacon/src/engine/mod.rs index d08dcc259231..eba82c295d80 100644 --- a/crates/consensus/beacon/src/engine/mod.rs +++ b/crates/consensus/beacon/src/engine/mod.rs @@ -53,7 +53,7 @@ pub use error::{ }; mod invalid_headers; -use invalid_headers::InvalidHeaderCache; +pub use invalid_headers::InvalidHeaderCache; mod event; pub use event::{BeaconConsensusEngineEvent, ConsensusEngineLiveSyncProgress}; @@ -62,13 +62,12 @@ mod handle; pub use handle::BeaconConsensusEngineHandle; mod forkchoice; -pub use forkchoice::ForkchoiceStatus; -use forkchoice::{ForkchoiceStateHash, ForkchoiceStateTracker}; +pub use forkchoice::{ForkchoiceStateHash, ForkchoiceStateTracker, ForkchoiceStatus}; mod metrics; use metrics::EngineMetrics; -pub(crate) mod sync; +pub mod sync; use sync::{EngineSyncController, EngineSyncEvent}; /// Hooks for running during the main loop of diff --git a/crates/engine/tree/Cargo.toml b/crates/engine/tree/Cargo.toml new file mode 100644 index 000000000000..bcc8ae34bddd --- /dev/null +++ b/crates/engine/tree/Cargo.toml @@ -0,0 +1,64 @@ +[package] +name = "reth-engine-tree" +version.workspace = true +edition.workspace = true +rust-version.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true + +[lints] +workspace = true + +[dependencies] +# reth +reth-beacon-consensus.workspace = true +reth-blockchain-tree.workspace = true +reth-blockchain-tree-api.workspace = true +reth-chainspec.workspace = true +reth-consensus.workspace = true +reth-db.workspace = true +reth-db-api.workspace = true +reth-engine-primitives.workspace = true +reth-errors.workspace = true +reth-ethereum-consensus.workspace = true +reth-evm.workspace = true +reth-network-p2p.workspace = true +reth-payload-builder.workspace = true +reth-payload-primitives.workspace = true +reth-payload-validator.workspace = true +reth-primitives.workspace = true +reth-provider.workspace = true +reth-prune.workspace = true +reth-revm.workspace = true +reth-rpc-types.workspace = true +reth-stages-api.workspace = true +reth-static-file.workspace = true +reth-tasks.workspace = true +reth-tokio-util.workspace = true +reth-trie.workspace = true +revm.workspace = true + +# common +futures.workspace = true +tokio = { workspace = true, features = ["macros", "sync"] } +tokio-stream = { workspace = true, features = ["sync"] } + + +# metrics +metrics.workspace = true +reth-metrics = { workspace = true, features = ["common"] } + +# misc +aquamarine.workspace = true +parking_lot.workspace = true +tracing.workspace = true + +[dev-dependencies] +# reth +reth-network-p2p = { workspace = true, features = ["test-utils"] } +reth-prune-types.workspace = true +reth-stages = { workspace = true, features = ["test-utils"] } +reth-tracing.workspace = true + +assert_matches.workspace = true \ No newline at end of file diff --git a/crates/engine/tree/src/backfill.rs b/crates/engine/tree/src/backfill.rs new file mode 100644 index 000000000000..ec0b4ef06cc7 --- /dev/null +++ b/crates/engine/tree/src/backfill.rs @@ -0,0 +1,342 @@ +//! It is expected that the node has two sync modes: +//! +//! - Backfill sync: Sync to a certain block height in stages, e.g. download data from p2p then +//! execute that range. +//! - Live sync: In this mode the nodes is keeping up with the latest tip and listens for new +//! requests from the consensus client. +//! +//! These modes are mutually exclusive and the node can only be in one mode at a time. + +use futures::FutureExt; +use reth_db_api::database::Database; +use reth_stages_api::{ControlFlow, Pipeline, PipelineError, PipelineTarget, PipelineWithResult}; +use reth_tasks::TaskSpawner; +use std::task::{ready, Context, Poll}; +use tokio::sync::oneshot; +use tracing::trace; + +/// Backfill sync mode functionality. +pub trait BackfillSync: Send + Sync { + /// Performs a backfill action. + fn on_action(&mut self, action: BackfillAction); + + /// Polls the pipeline for completion. + fn poll(&mut self, cx: &mut Context<'_>) -> Poll; +} + +/// The backfill actions that can be performed. +#[derive(Debug, Clone, PartialEq, Eq)] +pub enum BackfillAction { + /// Start backfilling with the given target. + Start(PipelineTarget), +} + +/// The events that can be emitted on backfill sync. +#[derive(Debug)] +pub enum BackfillEvent { + /// Backfill sync idle. + Idle, + /// Backfill sync started. + Started(PipelineTarget), + /// Backfill sync finished. + /// + /// If this is returned, backfill sync is idle. + Finished(Result), + /// Sync task was dropped after it was started, unable to receive it because + /// channel closed. This would indicate a panicked task. + TaskDropped(String), +} + +/// Pipeline sync. +#[derive(Debug)] +pub struct PipelineSync +where + DB: Database, +{ + /// The type that can spawn the pipeline task. + pipeline_task_spawner: Box, + /// The current state of the pipeline. + /// The pipeline is used for large ranges. + pipeline_state: PipelineState, + /// Pending target block for the pipeline to sync + pending_pipeline_target: Option, +} + +impl PipelineSync +where + DB: Database + 'static, +{ + /// Create a new instance. + pub fn new(pipeline: Pipeline, pipeline_task_spawner: Box) -> Self { + Self { + pipeline_task_spawner, + pipeline_state: PipelineState::Idle(Some(pipeline)), + pending_pipeline_target: None, + } + } + + /// Returns `true` if a pipeline target is queued and will be triggered on the next `poll`. + #[allow(dead_code)] + const fn is_pipeline_sync_pending(&self) -> bool { + self.pending_pipeline_target.is_some() && self.pipeline_state.is_idle() + } + + /// Returns `true` if the pipeline is idle. + const fn is_pipeline_idle(&self) -> bool { + self.pipeline_state.is_idle() + } + + /// Returns `true` if the pipeline is active. + const fn is_pipeline_active(&self) -> bool { + !self.is_pipeline_idle() + } + + /// Sets a new target to sync the pipeline to. + /// + /// But ensures the target is not the zero hash. + fn set_pipeline_sync_target(&mut self, target: PipelineTarget) { + if target.sync_target().is_some_and(|target| target.is_zero()) { + trace!( + target: "consensus::engine::sync", + "Pipeline target cannot be zero hash." + ); + // precaution to never sync to the zero hash + return + } + self.pending_pipeline_target = Some(target); + } + + /// This will spawn the pipeline if it is idle and a target is set or if the pipeline is set to + /// run continuously. + fn try_spawn_pipeline(&mut self) -> Option { + match &mut self.pipeline_state { + PipelineState::Idle(pipeline) => { + let target = self.pending_pipeline_target.take()?; + let (tx, rx) = oneshot::channel(); + + let pipeline = pipeline.take().expect("exists"); + self.pipeline_task_spawner.spawn_critical_blocking( + "pipeline task", + Box::pin(async move { + let result = pipeline.run_as_fut(Some(target)).await; + let _ = tx.send(result); + }), + ); + self.pipeline_state = PipelineState::Running(rx); + + Some(BackfillEvent::Started(target)) + } + PipelineState::Running(_) => None, + } + } + + /// Advances the pipeline state. + /// + /// This checks for the result in the channel, or returns pending if the pipeline is idle. + fn poll_pipeline(&mut self, cx: &mut Context<'_>) -> Poll { + let res = match self.pipeline_state { + PipelineState::Idle(_) => return Poll::Pending, + PipelineState::Running(ref mut fut) => { + ready!(fut.poll_unpin(cx)) + } + }; + let ev = match res { + Ok((_, result)) => BackfillEvent::Finished(result), + Err(why) => { + // failed to receive the pipeline + BackfillEvent::TaskDropped(why.to_string()) + } + }; + Poll::Ready(ev) + } +} + +impl BackfillSync for PipelineSync +where + DB: Database + 'static, +{ + fn on_action(&mut self, event: BackfillAction) { + match event { + BackfillAction::Start(target) => self.set_pipeline_sync_target(target), + } + } + + fn poll(&mut self, cx: &mut Context<'_>) -> Poll { + // try to spawn a pipeline if a target is set + if let Some(event) = self.try_spawn_pipeline() { + return Poll::Ready(event) + } + + // make sure we poll the pipeline if it's active, and return any ready pipeline events + if !self.is_pipeline_idle() { + // advance the pipeline + if let Poll::Ready(event) = self.poll_pipeline(cx) { + return Poll::Ready(event) + } + } + + Poll::Pending + } +} + +/// The possible pipeline states within the sync controller. +/// +/// [`PipelineState::Idle`] means that the pipeline is currently idle. +/// [`PipelineState::Running`] means that the pipeline is currently running. +/// +/// NOTE: The differentiation between these two states is important, because when the pipeline is +/// running, it acquires the write lock over the database. This means that we cannot forward to the +/// blockchain tree any messages that would result in database writes, since it would result in a +/// deadlock. +#[derive(Debug)] +enum PipelineState { + /// Pipeline is idle. + Idle(Option>), + /// Pipeline is running and waiting for a response + Running(oneshot::Receiver>), +} + +impl PipelineState { + /// Returns `true` if the state matches idle. + const fn is_idle(&self) -> bool { + matches!(self, Self::Idle(_)) + } +} + +#[cfg(test)] +mod tests { + use super::*; + use crate::test_utils::insert_headers_into_client; + use assert_matches::assert_matches; + use futures::poll; + use reth_chainspec::{ChainSpec, ChainSpecBuilder, MAINNET}; + use reth_db::{mdbx::DatabaseEnv, test_utils::TempDatabase}; + use reth_network_p2p::test_utils::TestFullBlockClient; + use reth_primitives::{constants::ETHEREUM_BLOCK_GAS_LIMIT, BlockNumber, Header, B256}; + use reth_provider::{ + test_utils::create_test_provider_factory_with_chain_spec, ExecutionOutcome, + }; + use reth_prune_types::PruneModes; + use reth_stages::{test_utils::TestStages, ExecOutput, StageError}; + use reth_stages_api::StageCheckpoint; + use reth_static_file::StaticFileProducer; + use reth_tasks::TokioTaskExecutor; + use std::{collections::VecDeque, future::poll_fn, sync::Arc}; + use tokio::sync::watch; + + struct TestHarness { + pipeline_sync: PipelineSync>>, + tip: B256, + } + + impl TestHarness { + fn new(total_blocks: usize, pipeline_done_after: u64) -> Self { + let chain_spec = Arc::new( + ChainSpecBuilder::default() + .chain(MAINNET.chain) + .genesis(MAINNET.genesis.clone()) + .paris_activated() + .build(), + ); + + // force the pipeline to be "done" after 5 blocks + let pipeline = TestPipelineBuilder::new() + .with_pipeline_exec_outputs(VecDeque::from([Ok(ExecOutput { + checkpoint: StageCheckpoint::new(BlockNumber::from(pipeline_done_after)), + done: true, + })])) + .build(chain_spec); + + let pipeline_sync = PipelineSync::new(pipeline, Box::::default()); + let client = TestFullBlockClient::default(); + let header = Header { + base_fee_per_gas: Some(7), + gas_limit: ETHEREUM_BLOCK_GAS_LIMIT, + ..Default::default() + } + .seal_slow(); + insert_headers_into_client(&client, header, 0..total_blocks); + + let tip = client.highest_block().expect("there should be blocks here").hash(); + + Self { pipeline_sync, tip } + } + } + + struct TestPipelineBuilder { + pipeline_exec_outputs: VecDeque>, + executor_results: Vec, + } + + impl TestPipelineBuilder { + /// Create a new [`TestPipelineBuilder`]. + const fn new() -> Self { + Self { pipeline_exec_outputs: VecDeque::new(), executor_results: Vec::new() } + } + + /// Set the pipeline execution outputs to use for the test consensus engine. + fn with_pipeline_exec_outputs( + mut self, + pipeline_exec_outputs: VecDeque>, + ) -> Self { + self.pipeline_exec_outputs = pipeline_exec_outputs; + self + } + + /// Set the executor results to use for the test consensus engine. + #[allow(dead_code)] + fn with_executor_results(mut self, executor_results: Vec) -> Self { + self.executor_results = executor_results; + self + } + + /// Builds the pipeline. + fn build(self, chain_spec: Arc) -> Pipeline>> { + reth_tracing::init_test_tracing(); + + // Setup pipeline + let (tip_tx, _tip_rx) = watch::channel(B256::default()); + let pipeline = Pipeline::builder() + .add_stages(TestStages::new(self.pipeline_exec_outputs, Default::default())) + .with_tip_sender(tip_tx); + + let provider_factory = create_test_provider_factory_with_chain_spec(chain_spec); + + let static_file_producer = + StaticFileProducer::new(provider_factory.clone(), PruneModes::default()); + + pipeline.build(provider_factory, static_file_producer) + } + } + + #[tokio::test] + async fn pipeline_started_and_finished() { + const TOTAL_BLOCKS: usize = 10; + const PIPELINE_DONE_AFTER: u64 = 5; + let TestHarness { mut pipeline_sync, tip } = + TestHarness::new(TOTAL_BLOCKS, PIPELINE_DONE_AFTER); + + let sync_future = poll_fn(|cx| pipeline_sync.poll(cx)); + let next_event = poll!(sync_future); + + // sync target not set, pipeline not started + assert_matches!(next_event, Poll::Pending); + + pipeline_sync.on_action(BackfillAction::Start(PipelineTarget::Sync(tip))); + + let sync_future = poll_fn(|cx| pipeline_sync.poll(cx)); + let next_event = poll!(sync_future); + + // sync target set, pipeline started + assert_matches!(next_event, Poll::Ready(BackfillEvent::Started(target)) => { + assert_eq!(target.sync_target().unwrap(), tip); + }); + + // the next event should be the pipeline finishing in a good state + let sync_future = poll_fn(|cx| pipeline_sync.poll(cx)); + let next_ready = sync_future.await; + assert_matches!(next_ready, BackfillEvent::Finished(result) => { + assert_matches!(result, Ok(control_flow) => assert_eq!(control_flow, ControlFlow::Continue { block_number: PIPELINE_DONE_AFTER })); + }); + } +} diff --git a/crates/engine/tree/src/chain.rs b/crates/engine/tree/src/chain.rs new file mode 100644 index 000000000000..97c6d615c118 --- /dev/null +++ b/crates/engine/tree/src/chain.rs @@ -0,0 +1,218 @@ +use crate::backfill::{BackfillAction, BackfillEvent, BackfillSync}; +use futures::Stream; +use reth_stages_api::PipelineTarget; +use std::{ + pin::Pin, + task::{Context, Poll}, +}; + +/// The type that drives the chain forward. +/// +/// A state machine that orchestrates the components responsible for advancing the chain +/// +/// +/// ## Control flow +/// +/// The [`ChainOrchestrator`] is responsible for controlling the pipeline sync and additional hooks. +/// It polls the given `handler`, which is responsible for advancing the chain, how is up to the +/// handler. However, due to database restrictions (e.g. exclusive write access), following +/// invariants apply: +/// - If the handler requests a backfill run (e.g. [`BackfillAction::Start`]), the handler must +/// ensure that while the pipeline is running, no other write access is granted. +/// - At any time the [`ChainOrchestrator`] can request exclusive write access to the database +/// (e.g. if pruning is required), but will not do so until the handler has acknowledged the +/// request for write access. +/// +/// The [`ChainOrchestrator`] polls the [`ChainHandler`] to advance the chain and handles the +/// emitted events. Requests and events are passed to the [`ChainHandler`] via +/// [`ChainHandler::on_event`]. +#[must_use = "Stream does nothing unless polled"] +#[derive(Debug)] +pub struct ChainOrchestrator +where + T: ChainHandler, + P: BackfillSync, +{ + /// The handler for advancing the chain. + handler: T, + /// Controls pipeline sync. + pipeline: P, +} + +impl ChainOrchestrator +where + T: ChainHandler + Unpin, + P: BackfillSync + Unpin, +{ + /// Creates a new [`ChainOrchestrator`] with the given handler and pipeline. + pub const fn new(handler: T, pipeline: P) -> Self { + Self { handler, pipeline } + } + + /// Returns the handler + pub const fn handler(&self) -> &T { + &self.handler + } + + /// Returns a mutable reference to the handler + pub fn handler_mut(&mut self) -> &mut T { + &mut self.handler + } + + /// Internal function used to advance the chain. + /// + /// Polls the `ChainOrchestrator` for the next event. + #[tracing::instrument(level = "debug", name = "ChainOrchestrator::poll", skip(self, cx))] + fn poll_next_event(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { + let this = self.get_mut(); + + // This loop polls the components + // + // 1. Polls the pipeline to completion, if active. + // 2. Advances the chain by polling the handler. + 'outer: loop { + // try to poll the pipeline to completion, if active + match this.pipeline.poll(cx) { + Poll::Ready(pipeline_event) => match pipeline_event { + BackfillEvent::Idle => {} + BackfillEvent::Started(_) => { + // notify handler that pipeline started + this.handler.on_event(FromOrchestrator::PipelineStarted); + return Poll::Ready(ChainEvent::PipelineStarted); + } + BackfillEvent::Finished(res) => { + return match res { + Ok(event) => { + tracing::debug!(?event, "pipeline finished"); + // notify handler that pipeline finished + this.handler.on_event(FromOrchestrator::PipelineFinished); + Poll::Ready(ChainEvent::PipelineFinished) + } + Err(err) => { + tracing::error!( %err, "pipeline failed"); + Poll::Ready(ChainEvent::FatalError) + } + } + } + BackfillEvent::TaskDropped(err) => { + tracing::error!( %err, "pipeline task dropped"); + return Poll::Ready(ChainEvent::FatalError); + } + }, + Poll::Pending => {} + } + + // poll the handler for the next event + match this.handler.poll(cx) { + Poll::Ready(handler_event) => { + match handler_event { + HandlerEvent::Pipeline(target) => { + // trigger pipeline and start polling it + this.pipeline.on_action(BackfillAction::Start(target)); + continue 'outer + } + HandlerEvent::Event(ev) => { + // bubble up the event + return Poll::Ready(ChainEvent::Handler(ev)); + } + } + } + Poll::Pending => { + // no more events to process + break 'outer + } + } + } + + Poll::Pending + } +} + +impl Stream for ChainOrchestrator +where + T: ChainHandler + Unpin, + P: BackfillSync + Unpin, +{ + type Item = ChainEvent; + + fn poll_next(mut self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll> { + self.as_mut().poll_next_event(cx).map(Some) + } +} + +/// Represents the sync mode the chain is operating in. +#[derive(Debug, Default)] +enum SyncMode { + #[default] + Handler, + Backfill, +} + +/// Event emitted by the [`ChainOrchestrator`] +/// +/// These are meant to be used for observability and debugging purposes. +#[derive(Debug)] +pub enum ChainEvent { + /// Pipeline sync started + PipelineStarted, + /// Pipeline sync finished + PipelineFinished, + /// Fatal error + FatalError, + /// Event emitted by the handler + Handler(T), +} + +/// A trait that advances the chain by handling actions. +/// +/// This is intended to be implement the chain consensus logic, for example `engine` API. +pub trait ChainHandler: Send + Sync { + /// Event generated by this handler that orchestrator can bubble up; + type Event: Send; + + /// Informs the handler about an event from the [`ChainOrchestrator`]. + fn on_event(&mut self, event: FromOrchestrator); + + /// Polls for actions that [`ChainOrchestrator`] should handle. + fn poll(&mut self, cx: &mut Context<'_>) -> Poll>; +} + +/// Events/Requests that the [`ChainHandler`] can emit to the [`ChainOrchestrator`]. +#[derive(Clone, Debug)] +pub enum HandlerEvent { + /// Request to start a pipeline sync + Pipeline(PipelineTarget), + /// Other event emitted by the handler + Event(T), +} + +/// Internal events issued by the [`ChainOrchestrator`]. +#[derive(Clone, Debug)] +pub enum FromOrchestrator { + /// Invoked when pipeline sync finished + PipelineFinished, + /// Invoked when pipeline started + PipelineStarted, +} + +/// Represents the state of the chain. +#[derive(Clone, Copy, PartialEq, Eq, Default, Debug)] +pub enum OrchestratorState { + /// Orchestrator has exclusive write access to the database. + PipelineActive, + /// Node is actively processing the chain. + #[default] + Idle, +} + +impl OrchestratorState { + /// Returns `true` if the state is [`OrchestratorState::PipelineActive`]. + pub const fn is_pipeline_active(&self) -> bool { + matches!(self, Self::PipelineActive) + } + + /// Returns `true` if the state is [`OrchestratorState::Idle`]. + pub const fn is_idle(&self) -> bool { + matches!(self, Self::Idle) + } +} diff --git a/crates/engine/tree/src/download.rs b/crates/engine/tree/src/download.rs new file mode 100644 index 000000000000..12b2bd189288 --- /dev/null +++ b/crates/engine/tree/src/download.rs @@ -0,0 +1,414 @@ +//! Handler that can download blocks on demand (e.g. from the network). + +use crate::{engine::DownloadRequest, metrics::BlockDownloaderMetrics}; +use futures::FutureExt; +use reth_consensus::Consensus; +use reth_network_p2p::{ + bodies::client::BodiesClient, + full_block::{FetchFullBlockFuture, FetchFullBlockRangeFuture, FullBlockClient}, + headers::client::HeadersClient, +}; +use reth_primitives::{SealedBlock, SealedBlockWithSenders, B256}; +use std::{ + cmp::{Ordering, Reverse}, + collections::{binary_heap::PeekMut, BinaryHeap, HashSet}, + sync::Arc, + task::{Context, Poll}, +}; +use tracing::trace; + +/// A trait that can download blocks on demand. +pub trait BlockDownloader: Send + Sync { + /// Handle an action. + fn on_action(&mut self, event: DownloadAction); + + /// Advance in progress requests if any + fn poll(&mut self, cx: &mut Context<'_>) -> Poll; +} + +/// Actions that can be performed by the block downloader. +#[derive(Debug)] +pub enum DownloadAction { + /// Stop downloading blocks. + Clear, + /// Download given blocks + Download(DownloadRequest), +} + +/// Outcome of downloaded blocks. +#[derive(Debug)] +pub enum DownloadOutcome { + /// Downloaded blocks. + Blocks(Vec), +} + +/// Basic [`BlockDownloader`]. +pub struct BasicBlockDownloader +where + Client: HeadersClient + BodiesClient + Clone + Unpin + 'static, +{ + /// A downloader that can download full blocks from the network. + full_block_client: FullBlockClient, + /// In-flight full block requests in progress. + inflight_full_block_requests: Vec>, + /// In-flight full block _range_ requests in progress. + inflight_block_range_requests: Vec>, + /// Buffered blocks from downloads - this is a min-heap of blocks, using the block number for + /// ordering. This means the blocks will be popped from the heap with ascending block numbers. + set_buffered_blocks: BinaryHeap>, + /// Engine download metrics. + metrics: BlockDownloaderMetrics, +} + +impl BasicBlockDownloader +where + Client: HeadersClient + BodiesClient + Clone + Unpin + 'static, +{ + /// Create a new instance + pub(crate) fn new(client: Client, consensus: Arc) -> Self { + Self { + full_block_client: FullBlockClient::new(client, consensus), + inflight_full_block_requests: Vec::new(), + inflight_block_range_requests: Vec::new(), + set_buffered_blocks: BinaryHeap::new(), + metrics: BlockDownloaderMetrics::default(), + } + } + + /// Clears the stored inflight requests. + fn clear(&mut self) { + self.inflight_full_block_requests.clear(); + self.inflight_block_range_requests.clear(); + self.set_buffered_blocks.clear(); + self.update_block_download_metrics(); + } + + /// Processes a download request. + fn download(&mut self, request: DownloadRequest) { + match request { + DownloadRequest::BlockSet(hashes) => self.download_block_set(hashes), + DownloadRequest::BlockRange(hash, count) => self.download_block_range(hash, count), + } + } + + /// Processes a block set download request. + fn download_block_set(&mut self, hashes: HashSet) { + for hash in hashes { + self.download_full_block(hash); + } + } + + /// Processes a block range download request. + fn download_block_range(&mut self, hash: B256, count: u64) { + if count == 1 { + self.download_full_block(hash); + } else { + trace!( + target: "consensus::engine", + ?hash, + ?count, + "start downloading full block range." + ); + + let request = self.full_block_client.get_full_block_range(hash, count); + self.inflight_block_range_requests.push(request); + } + } + + /// Starts requesting a full block from the network. + /// + /// Returns `true` if the request was started, `false` if there's already a request for the + /// given hash. + fn download_full_block(&mut self, hash: B256) -> bool { + if self.is_inflight_request(hash) { + return false + } + trace!( + target: "consensus::engine::sync", + ?hash, + "Start downloading full block" + ); + + let request = self.full_block_client.get_full_block(hash); + self.inflight_full_block_requests.push(request); + + self.update_block_download_metrics(); + + true + } + + /// Returns true if there's already a request for the given hash. + fn is_inflight_request(&self, hash: B256) -> bool { + self.inflight_full_block_requests.iter().any(|req| *req.hash() == hash) + } + + /// Sets the metrics for the active downloads + fn update_block_download_metrics(&self) { + self.metrics.active_block_downloads.set(self.inflight_full_block_requests.len() as f64); + // TODO: full block range metrics + } +} + +impl BlockDownloader for BasicBlockDownloader +where + Client: HeadersClient + BodiesClient + Clone + Unpin + 'static, +{ + /// Handles incoming download actions. + fn on_action(&mut self, event: DownloadAction) { + match event { + DownloadAction::Clear => self.clear(), + DownloadAction::Download(request) => self.download(request), + } + } + + /// Advances the download process. + fn poll(&mut self, cx: &mut Context<'_>) -> Poll { + // advance all full block requests + for idx in (0..self.inflight_full_block_requests.len()).rev() { + let mut request = self.inflight_full_block_requests.swap_remove(idx); + if let Poll::Ready(block) = request.poll_unpin(cx) { + trace!(target: "consensus::engine", block=?block.num_hash(), "Received single full block, buffering"); + self.set_buffered_blocks.push(Reverse(block.into())); + } else { + // still pending + self.inflight_full_block_requests.push(request); + } + } + + // advance all full block range requests + for idx in (0..self.inflight_block_range_requests.len()).rev() { + let mut request = self.inflight_block_range_requests.swap_remove(idx); + if let Poll::Ready(blocks) = request.poll_unpin(cx) { + trace!(target: "consensus::engine", len=?blocks.len(), first=?blocks.first().map(|b| b.num_hash()), last=?blocks.last().map(|b| b.num_hash()), "Received full block range, buffering"); + self.set_buffered_blocks.extend( + blocks + .into_iter() + .map(|b| { + let senders = b.senders().unwrap_or_default(); + OrderedSealedBlockWithSenders(SealedBlockWithSenders { + block: b, + senders, + }) + }) + .map(Reverse), + ); + } else { + // still pending + self.inflight_block_range_requests.push(request); + } + } + + self.update_block_download_metrics(); + + if self.set_buffered_blocks.is_empty() { + return Poll::Pending; + } + + // drain all unique element of the block buffer if there are any + let mut downloaded_blocks: Vec = + Vec::with_capacity(self.set_buffered_blocks.len()); + while let Some(block) = self.set_buffered_blocks.pop() { + // peek ahead and pop duplicates + while let Some(peek) = self.set_buffered_blocks.peek_mut() { + if peek.0 .0.hash() == block.0 .0.hash() { + PeekMut::pop(peek); + } else { + break + } + } + downloaded_blocks.push(block.0.into()); + } + Poll::Ready(DownloadOutcome::Blocks(downloaded_blocks)) + } +} + +/// A wrapper type around [`SealedBlockWithSenders`] that implements the [Ord] +/// trait by block number. +#[derive(Debug, Clone, PartialEq, Eq)] +struct OrderedSealedBlockWithSenders(SealedBlockWithSenders); + +impl PartialOrd for OrderedSealedBlockWithSenders { + fn partial_cmp(&self, other: &Self) -> Option { + Some(self.cmp(other)) + } +} + +impl Ord for OrderedSealedBlockWithSenders { + fn cmp(&self, other: &Self) -> Ordering { + self.0.number.cmp(&other.0.number) + } +} + +impl From for OrderedSealedBlockWithSenders { + fn from(block: SealedBlock) -> Self { + let senders = block.senders().unwrap_or_default(); + Self(SealedBlockWithSenders { block, senders }) + } +} + +impl From for SealedBlockWithSenders { + fn from(value: OrderedSealedBlockWithSenders) -> Self { + let senders = value.0.senders; + Self { block: value.0.block, senders } + } +} + +/// A [`BlockDownloader`] that does nothing. +#[derive(Debug, Clone, Default)] +#[non_exhaustive] +pub struct NoopBlockDownloader; + +impl BlockDownloader for NoopBlockDownloader { + fn on_action(&mut self, _event: DownloadAction) {} + + fn poll(&mut self, _cx: &mut Context<'_>) -> Poll { + Poll::Pending + } +} + +#[cfg(test)] +mod tests { + use super::*; + use crate::test_utils::insert_headers_into_client; + use assert_matches::assert_matches; + use reth_beacon_consensus::EthBeaconConsensus; + use reth_chainspec::{ChainSpecBuilder, MAINNET}; + use reth_network_p2p::test_utils::TestFullBlockClient; + use reth_primitives::{constants::ETHEREUM_BLOCK_GAS_LIMIT, Header}; + use std::{future::poll_fn, sync::Arc}; + + struct TestHarness { + block_downloader: BasicBlockDownloader, + client: TestFullBlockClient, + } + + impl TestHarness { + fn new(total_blocks: usize) -> Self { + let chain_spec = Arc::new( + ChainSpecBuilder::default() + .chain(MAINNET.chain) + .genesis(MAINNET.genesis.clone()) + .paris_activated() + .build(), + ); + + let client = TestFullBlockClient::default(); + let header = Header { + base_fee_per_gas: Some(7), + gas_limit: ETHEREUM_BLOCK_GAS_LIMIT, + ..Default::default() + } + .seal_slow(); + + insert_headers_into_client(&client, header, 0..total_blocks); + let consensus = Arc::new(EthBeaconConsensus::new(chain_spec)); + + let block_downloader = BasicBlockDownloader::new(client.clone(), consensus); + Self { block_downloader, client } + } + } + + #[tokio::test] + async fn block_downloader_range_request() { + const TOTAL_BLOCKS: usize = 10; + let TestHarness { mut block_downloader, client } = TestHarness::new(TOTAL_BLOCKS); + let tip = client.highest_block().expect("there should be blocks here"); + + // send block range download request + block_downloader.on_action(DownloadAction::Download(DownloadRequest::BlockRange( + tip.hash(), + tip.number, + ))); + + // ensure we have one in flight range request + assert_eq!(block_downloader.inflight_block_range_requests.len(), 1); + + // ensure the range request is made correctly + let first_req = block_downloader.inflight_block_range_requests.first().unwrap(); + assert_eq!(first_req.start_hash(), tip.hash()); + assert_eq!(first_req.count(), tip.number); + + // poll downloader + let sync_future = poll_fn(|cx| block_downloader.poll(cx)); + let next_ready = sync_future.await; + + assert_matches!(next_ready, DownloadOutcome::Blocks(blocks) => { + // ensure all blocks were obtained + assert_eq!(blocks.len(), TOTAL_BLOCKS); + + // ensure they are in ascending order + for num in 1..=TOTAL_BLOCKS { + assert_eq!(blocks[num-1].number, num as u64); + } + }); + } + + #[tokio::test] + async fn block_downloader_set_request() { + const TOTAL_BLOCKS: usize = 2; + let TestHarness { mut block_downloader, client } = TestHarness::new(TOTAL_BLOCKS); + + let tip = client.highest_block().expect("there should be blocks here"); + + // send block set download request + block_downloader.on_action(DownloadAction::Download(DownloadRequest::BlockSet( + HashSet::from([tip.hash(), tip.parent_hash]), + ))); + + // ensure we have TOTAL_BLOCKS in flight full block request + assert_eq!(block_downloader.inflight_full_block_requests.len(), TOTAL_BLOCKS); + + // poll downloader + let sync_future = poll_fn(|cx| block_downloader.poll(cx)); + let next_ready = sync_future.await; + + assert_matches!(next_ready, DownloadOutcome::Blocks(blocks) => { + // ensure all blocks were obtained + assert_eq!(blocks.len(), TOTAL_BLOCKS); + + // ensure they are in ascending order + for num in 1..=TOTAL_BLOCKS { + assert_eq!(blocks[num-1].number, num as u64); + } + }); + } + + #[tokio::test] + async fn block_downloader_clear_request() { + const TOTAL_BLOCKS: usize = 10; + let TestHarness { mut block_downloader, client } = TestHarness::new(TOTAL_BLOCKS); + + let tip = client.highest_block().expect("there should be blocks here"); + + // send block range download request + block_downloader.on_action(DownloadAction::Download(DownloadRequest::BlockRange( + tip.hash(), + tip.number, + ))); + + // send block set download request + let download_set = HashSet::from([tip.hash(), tip.parent_hash]); + block_downloader + .on_action(DownloadAction::Download(DownloadRequest::BlockSet(download_set.clone()))); + + // ensure we have one in flight range request + assert_eq!(block_downloader.inflight_block_range_requests.len(), 1); + + // ensure the range request is made correctly + let first_req = block_downloader.inflight_block_range_requests.first().unwrap(); + assert_eq!(first_req.start_hash(), tip.hash()); + assert_eq!(first_req.count(), tip.number); + + // ensure we have download_set.len() in flight full block request + assert_eq!(block_downloader.inflight_full_block_requests.len(), download_set.len()); + + // send clear request + block_downloader.on_action(DownloadAction::Clear); + + // ensure we have no in flight range request + assert_eq!(block_downloader.inflight_block_range_requests.len(), 0); + + // ensure we have no in flight full block request + assert_eq!(block_downloader.inflight_full_block_requests.len(), 0); + } +} diff --git a/crates/engine/tree/src/engine.rs b/crates/engine/tree/src/engine.rs new file mode 100644 index 000000000000..d77162e4cd0a --- /dev/null +++ b/crates/engine/tree/src/engine.rs @@ -0,0 +1,212 @@ +//! An engine API handler for the chain. + +use crate::{ + chain::{ChainHandler, FromOrchestrator, HandlerEvent}, + download::{BlockDownloader, DownloadAction, DownloadOutcome}, +}; +use futures::{Stream, StreamExt}; +use reth_beacon_consensus::BeaconEngineMessage; +use reth_engine_primitives::EngineTypes; +use reth_primitives::{SealedBlockWithSenders, B256}; +use std::{ + collections::HashSet, + task::{Context, Poll}, +}; +use tokio::sync::mpsc; + +/// Advances the chain based on incoming requests. +/// +/// This is a general purpose request handler with network access. +/// This type listens for incoming messages and processes them via the configured request handler. +/// +/// ## Overview +/// +/// This type is an orchestrator for incoming messages and responsible for delegating requests +/// received from the CL to the handler. +/// +/// It is responsible for handling the following: +/// - Downloading blocks on demand from the network if requested by the [`EngineApiRequestHandler`]. +/// +/// The core logic is part of the [`EngineRequestHandler`], which is responsible for processing the +/// incoming requests. +#[derive(Debug)] +pub struct EngineHandler { + /// Processes requests. + /// + /// This type is responsible for processing incoming requests. + handler: T, + /// Receiver for incoming requests that need to be processed. + incoming_requests: S, + /// A downloader to download blocks on demand. + downloader: D, +} + +impl EngineHandler { + /// Creates a new [`EngineHandler`] with the given handler and downloader. + pub const fn new(handler: T, downloader: D, incoming_requests: S) -> Self + where + T: EngineRequestHandler, + { + Self { handler, incoming_requests, downloader } + } +} + +impl ChainHandler for EngineHandler +where + T: EngineRequestHandler, + S: Stream + Send + Sync + Unpin + 'static, + D: BlockDownloader, +{ + type Event = T::Event; + + fn on_event(&mut self, event: FromOrchestrator) { + // delegate event to the handler + self.handler.on_event(event.into()); + } + + fn poll(&mut self, cx: &mut Context<'_>) -> Poll> { + loop { + // drain the handler first + while let Poll::Ready(ev) = self.handler.poll(cx) { + match ev { + RequestHandlerEvent::Idle => break, + RequestHandlerEvent::HandlerEvent(ev) => { + return match ev { + HandlerEvent::Pipeline(target) => { + // bubble up pipeline request + self.downloader.on_action(DownloadAction::Clear); + Poll::Ready(HandlerEvent::Pipeline(target)) + } + HandlerEvent::Event(ev) => { + // bubble up the event + Poll::Ready(HandlerEvent::Event(ev)) + } + } + } + RequestHandlerEvent::Download(req) => { + // delegate download request to the downloader + self.downloader.on_action(DownloadAction::Download(req)); + } + } + } + + // pop the next incoming request + if let Poll::Ready(Some(req)) = self.incoming_requests.poll_next_unpin(cx) { + // and delegate the request to the handler + self.handler.on_event(FromEngine::Request(req)); + // skip downloading in this iteration to allow the handler to process the request + continue + } + + // advance the downloader + if let Poll::Ready(DownloadOutcome::Blocks(blocks)) = self.downloader.poll(cx) { + // delegate the downloaded blocks to the handler + self.handler.on_event(FromEngine::DownloadedBlocks(blocks)); + continue + } + + return Poll::Pending + } + } +} + +/// A type that processes incoming requests (e.g. requests from the consensus layer, engine API) +pub trait EngineRequestHandler: Send + Sync { + /// Even type this handler can emit + type Event: Send; + /// The request type this handler can process. + type Request; + + /// Informs the handler about an event from the [`EngineHandler`]. + fn on_event(&mut self, event: FromEngine); + + /// Advances the handler. + fn poll(&mut self, cx: &mut Context<'_>) -> Poll>; +} + +/// An [`EngineRequestHandler`] that processes engine API requests by delegating to an execution +/// task. +/// +/// This type is responsible for advancing the chain during live sync (following the tip of the +/// chain). +/// +/// It advances the chain based on received engine API requests by delegating them to the tree +/// executor. +/// +/// There are two types of requests that can be processed: +/// +/// - `on_new_payload`: Executes the payload and inserts it into the tree. These are allowed to be +/// processed concurrently. +/// - `on_forkchoice_updated`: Updates the fork choice based on the new head. These require write +/// access to the database and are skipped if the handler can't acquire exclusive access to the +/// database. +/// +/// In case required blocks are missing, the handler will request them from the network, by emitting +/// a download request upstream. +#[derive(Debug)] +pub struct EngineApiRequestHandler { + /// channel to send messages to the tree to execute the payload. + to_tree: std::sync::mpsc::Sender>>, + /// channel to receive messages from the tree. + from_tree: mpsc::UnboundedReceiver, + // TODO add db controller +} + +impl EngineApiRequestHandler where T: EngineTypes {} + +impl EngineRequestHandler for EngineApiRequestHandler +where + T: EngineTypes, +{ + type Event = EngineApiEvent; + type Request = BeaconEngineMessage; + + fn on_event(&mut self, event: FromEngine) { + // delegate to the tree + let _ = self.to_tree.send(event); + } + + fn poll(&mut self, cx: &mut Context<'_>) -> Poll> { + todo!("poll tree and handle db") + } +} + +/// Events emitted by the engine API handler. +#[derive(Debug)] +pub enum EngineApiEvent {} + +#[derive(Debug)] +pub enum FromEngine { + /// Event from the top level orchestrator. + Event(FromOrchestrator), + /// Request from the engine + Request(Req), + /// Downloaded blocks from the network. + DownloadedBlocks(Vec), +} + +impl From for FromEngine { + fn from(event: FromOrchestrator) -> Self { + Self::Event(event) + } +} + +/// Requests produced by a [`EngineRequestHandler`]. +#[derive(Debug)] +pub enum RequestHandlerEvent { + /// The handler is idle. + Idle, + /// An event emitted by the handler. + HandlerEvent(HandlerEvent), + /// Request to download blocks. + Download(DownloadRequest), +} + +/// A request to download blocks from the network. +#[derive(Debug)] +pub enum DownloadRequest { + /// Download the given set of blocks. + BlockSet(HashSet), + /// Download the given range of blocks. + BlockRange(B256, u64), +} diff --git a/crates/engine/tree/src/lib.rs b/crates/engine/tree/src/lib.rs new file mode 100644 index 000000000000..52ef90e4b637 --- /dev/null +++ b/crates/engine/tree/src/lib.rs @@ -0,0 +1,31 @@ +//! This crate includes the core components for advancing a reth chain. + +#![doc( + html_logo_url = "https://raw.githubusercontent.com/paradigmxyz/reth/main/assets/reth-docs.png", + html_favicon_url = "https://avatars0.githubusercontent.com/u/97369466?s=256", + issue_tracker_base_url = "https://github.com/paradigmxyz/reth/issues/" +)] +#![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))] +// #![cfg_attr(not(test), warn(unused_crate_dependencies))] +#![allow(missing_docs, dead_code, missing_debug_implementations, unused_variables)] // TODO rm + +/// Re-export of the blockchain tree API. +pub use reth_blockchain_tree_api::*; + +/// Support for backfill sync mode. +pub mod backfill; +/// The type that drives the chain forward. +pub mod chain; +/// Support for downloading blocks on demand for live sync. +pub mod download; +/// Engine Api chain handler support. +pub mod engine; +/// Metrics support. +pub mod metrics; +/// The background writer task for batch db writes. +pub mod persistence; +/// Support for interacting with the blockchain tree. +pub mod tree; + +#[cfg(test)] +mod test_utils; diff --git a/crates/engine/tree/src/metrics.rs b/crates/engine/tree/src/metrics.rs new file mode 100644 index 000000000000..9579affe690f --- /dev/null +++ b/crates/engine/tree/src/metrics.rs @@ -0,0 +1,9 @@ +use reth_metrics::{metrics::Gauge, Metrics}; + +/// Metrics for the `BasicBlockDownloader`. +#[derive(Metrics)] +#[metrics(scope = "consensus.engine.beacon")] +pub(crate) struct BlockDownloaderMetrics { + /// How many blocks are currently being downloaded. + pub(crate) active_block_downloads: Gauge, +} diff --git a/crates/engine/tree/src/persistence.rs b/crates/engine/tree/src/persistence.rs new file mode 100644 index 000000000000..e7bfadcc1bef --- /dev/null +++ b/crates/engine/tree/src/persistence.rs @@ -0,0 +1,139 @@ +#![allow(dead_code)] + +use crate::tree::ExecutedBlock; +use reth_db::database::Database; +use reth_errors::ProviderResult; +use reth_primitives::B256; +use reth_provider::ProviderFactory; +use std::sync::mpsc::{Receiver, Sender}; +use tokio::sync::oneshot; + +/// Writes parts of reth's in memory tree state to the database. +/// +/// This is meant to be a spawned task that listens for various incoming persistence operations, +/// performing those actions on disk, and returning the result in a channel. +/// +/// There are two types of operations this task can perform: +/// - Writing executed blocks to disk, returning the hash of the latest block that was inserted. +/// - Removing blocks from disk, returning the removed blocks. +/// +/// This should be spawned in its own thread with [`std::thread::spawn`], since this performs +/// blocking database operations in an endless loop. +#[derive(Debug)] +pub struct Persistence { + /// The db / static file provider to use + provider: ProviderFactory, + /// Incoming requests to persist stuff + incoming: Receiver, +} + +impl Persistence { + /// Create a new persistence task + const fn new(provider: ProviderFactory, incoming: Receiver) -> Self { + Self { provider, incoming } + } + + /// Writes the cloned tree state to the database + fn write(&self, _blocks: Vec) -> ProviderResult<()> { + let mut _rw = self.provider.provider_rw()?; + todo!("implement this") + } + + /// Removes the blocks above the give block number from the database, returning them. + fn remove_blocks_above(&self, _block_number: u64) -> Vec { + todo!("implement this") + } +} + +impl Persistence +where + DB: Database + 'static, +{ + /// Create a new persistence task, spawning it, and returning a [`PersistenceHandle`]. + fn spawn_new(provider: ProviderFactory) -> PersistenceHandle { + let (tx, rx) = std::sync::mpsc::channel(); + let task = Self::new(provider, rx); + std::thread::Builder::new() + .name("Persistence Task".to_string()) + .spawn(|| task.run()) + .unwrap(); + + PersistenceHandle::new(tx) + } +} + +impl Persistence +where + DB: Database, +{ + /// This is the main loop, that will listen to persistence events and perform the requested + /// database actions + fn run(self) { + // If the receiver errors then senders have disconnected, so the loop should then end. + while let Ok(action) = self.incoming.recv() { + match action { + PersistenceAction::RemoveBlocksAbove((new_tip_num, sender)) => { + // spawn blocking so we can poll the thread later + let output = self.remove_blocks_above(new_tip_num); + sender.send(output).unwrap(); + } + PersistenceAction::SaveBlocks((blocks, sender)) => { + if blocks.is_empty() { + todo!("return error or something"); + } + let last_block_hash = blocks.last().unwrap().block().hash(); + self.write(blocks).unwrap(); + sender.send(last_block_hash).unwrap(); + } + } + } + } +} + +/// A signal to the persistence task that part of the tree state can be persisted. +#[derive(Debug)] +pub enum PersistenceAction { + /// The section of tree state that should be persisted. These blocks are expected in order of + /// increasing block number. + SaveBlocks((Vec, oneshot::Sender)), + + /// Removes the blocks above the given block number from the database. + RemoveBlocksAbove((u64, oneshot::Sender>)), +} + +/// A handle to the persistence task +#[derive(Debug, Clone)] +pub struct PersistenceHandle { + /// The channel used to communicate with the persistence task + sender: Sender, +} + +impl PersistenceHandle { + /// Create a new [`PersistenceHandle`] from a [`Sender`]. + pub const fn new(sender: Sender) -> Self { + Self { sender } + } + + /// Tells the persistence task to save a certain list of finalized blocks. The blocks are + /// assumed to be ordered by block number. + /// + /// This returns the latest hash that has been saved, allowing removal of that block and any + /// previous blocks from in-memory data structures. + pub async fn save_blocks(&self, blocks: Vec) -> B256 { + let (tx, rx) = oneshot::channel(); + self.sender + .send(PersistenceAction::SaveBlocks((blocks, tx))) + .expect("should be able to send"); + rx.await.expect("todo: err handling") + } + + /// Tells the persistence task to remove blocks above a certain block number. The removed blocks + /// are returned by the task. + pub async fn remove_blocks_above(&self, block_num: u64) -> Vec { + let (tx, rx) = oneshot::channel(); + self.sender + .send(PersistenceAction::RemoveBlocksAbove((block_num, tx))) + .expect("should be able to send"); + rx.await.expect("todo: err handling") + } +} diff --git a/crates/engine/tree/src/test_utils.rs b/crates/engine/tree/src/test_utils.rs new file mode 100644 index 000000000000..eed483e29932 --- /dev/null +++ b/crates/engine/tree/src/test_utils.rs @@ -0,0 +1,21 @@ +use reth_network_p2p::test_utils::TestFullBlockClient; +use reth_primitives::{BlockBody, SealedHeader}; +use std::ops::Range; + +pub(crate) fn insert_headers_into_client( + client: &TestFullBlockClient, + genesis_header: SealedHeader, + range: Range, +) { + let mut sealed_header = genesis_header; + let body = BlockBody::default(); + for _ in range { + let (mut header, hash) = sealed_header.split(); + // update to the next header + header.parent_hash = hash; + header.number += 1; + header.timestamp += 1; + sealed_header = header.seal_slow(); + client.insert(sealed_header.clone(), body.clone()); + } +} diff --git a/crates/engine/tree/src/tree/memory_overlay.rs b/crates/engine/tree/src/tree/memory_overlay.rs new file mode 100644 index 000000000000..7e0e1d52e5be --- /dev/null +++ b/crates/engine/tree/src/tree/memory_overlay.rs @@ -0,0 +1,123 @@ +use super::ExecutedBlock; +use reth_errors::ProviderResult; +use reth_primitives::{Account, Address, BlockNumber, Bytecode, StorageKey, StorageValue, B256}; +use reth_provider::{AccountReader, BlockHashReader, StateProvider, StateRootProvider}; +use reth_trie::{updates::TrieUpdates, AccountProof}; +use revm::db::BundleState; + +/// A state provider that stores references to in-memory blocks along with their state as well as +/// the historical state provider for fallback lookups. +#[derive(Debug)] +pub struct MemoryOverlayStateProvider { + /// The collection of executed parent blocks. + in_memory: Vec, + /// Historical state provider for state lookups that are not found in in-memory blocks. + historical: H, +} + +impl MemoryOverlayStateProvider { + /// Create new memory overlay state provider. + pub const fn new(in_memory: Vec, historical: H) -> Self { + Self { in_memory, historical } + } +} + +impl BlockHashReader for MemoryOverlayStateProvider +where + H: BlockHashReader, +{ + fn block_hash(&self, number: BlockNumber) -> ProviderResult> { + for block in self.in_memory.iter().rev() { + if block.block.number == number { + return Ok(Some(block.block.hash())) + } + } + + self.historical.block_hash(number) + } + + fn canonical_hashes_range( + &self, + start: BlockNumber, + end: BlockNumber, + ) -> ProviderResult> { + let range = start..end; + let mut earliest_block_number = None; + let mut in_memory_hashes = Vec::new(); + for block in self.in_memory.iter().rev() { + if range.contains(&block.block.number) { + in_memory_hashes.insert(0, block.block.hash()); + earliest_block_number = Some(block.block.number); + } + } + + let mut hashes = + self.historical.canonical_hashes_range(start, earliest_block_number.unwrap_or(end))?; + hashes.append(&mut in_memory_hashes); + Ok(hashes) + } +} + +impl AccountReader for MemoryOverlayStateProvider +where + H: AccountReader + Send, +{ + fn basic_account(&self, address: Address) -> ProviderResult> { + for block in self.in_memory.iter().rev() { + if let Some(account) = block.execution_output.account(&address) { + return Ok(account) + } + } + + self.historical.basic_account(address) + } +} + +impl StateRootProvider for MemoryOverlayStateProvider +where + H: StateRootProvider + Send, +{ + fn state_root(&self, bundle_state: &BundleState) -> ProviderResult { + todo!() + } + + fn state_root_with_updates( + &self, + bundle_state: &BundleState, + ) -> ProviderResult<(B256, TrieUpdates)> { + todo!() + } +} + +impl StateProvider for MemoryOverlayStateProvider +where + H: StateProvider + Send, +{ + fn storage( + &self, + address: Address, + storage_key: StorageKey, + ) -> ProviderResult> { + for block in self.in_memory.iter().rev() { + if let Some(value) = block.execution_output.storage(&address, storage_key.into()) { + return Ok(Some(value)) + } + } + + self.historical.storage(address, storage_key) + } + + fn bytecode_by_hash(&self, code_hash: B256) -> ProviderResult> { + for block in self.in_memory.iter().rev() { + if let Some(contract) = block.execution_output.bytecode(&code_hash) { + return Ok(Some(contract)) + } + } + + self.historical.bytecode_by_hash(code_hash) + } + + fn proof(&self, address: Address, keys: &[B256]) -> ProviderResult { + todo!() + } +} diff --git a/crates/engine/tree/src/tree/mod.rs b/crates/engine/tree/src/tree/mod.rs new file mode 100644 index 000000000000..e4cf33923cfd --- /dev/null +++ b/crates/engine/tree/src/tree/mod.rs @@ -0,0 +1,574 @@ +use crate::{backfill::BackfillAction, engine::DownloadRequest}; +use reth_beacon_consensus::{ForkchoiceStateTracker, InvalidHeaderCache, OnForkChoiceUpdated}; +use reth_blockchain_tree::{ + error::InsertBlockErrorKind, BlockAttachment, BlockBuffer, BlockStatus, +}; +use reth_blockchain_tree_api::{error::InsertBlockError, InsertPayloadOk}; +use reth_consensus::{Consensus, PostExecutionInput}; +use reth_engine_primitives::EngineTypes; +use reth_errors::{ConsensusError, ProviderResult}; +use reth_evm::execute::{BlockExecutorProvider, Executor}; +use reth_payload_primitives::PayloadTypes; +use reth_payload_validator::ExecutionPayloadValidator; +use reth_primitives::{ + Address, Block, BlockNumber, Receipts, Requests, SealedBlock, SealedBlockWithSenders, B256, + U256, +}; +use reth_provider::{BlockReader, ExecutionOutcome, StateProvider, StateProviderFactory}; +use reth_revm::database::StateProviderDatabase; +use reth_rpc_types::{ + engine::{ + CancunPayloadFields, ForkchoiceState, PayloadStatus, PayloadStatusEnum, + PayloadValidationError, + }, + ExecutionPayload, +}; +use reth_trie::{updates::TrieUpdates, HashedPostState}; +use std::{ + collections::{BTreeMap, HashMap}, + marker::PhantomData, + sync::Arc, +}; +use tracing::*; + +mod memory_overlay; +pub use memory_overlay::MemoryOverlayStateProvider; + +/// Represents an executed block stored in-memory. +#[derive(Clone, Debug)] +pub struct ExecutedBlock { + block: Arc, + senders: Arc>, + execution_output: Arc, + hashed_state: Arc, + trie: Arc, +} + +impl ExecutedBlock { + /// Returns a reference to the executed block. + pub(crate) fn block(&self) -> &SealedBlock { + &self.block + } +} + +/// Keeps track of the state of the tree. +#[derive(Debug)] +pub struct TreeState { + /// All executed blocks by hash. + blocks_by_hash: HashMap, + /// Executed blocks grouped by their respective block number. + blocks_by_number: BTreeMap>, +} + +impl TreeState { + fn block_by_hash(&self, hash: B256) -> Option> { + self.blocks_by_hash.get(&hash).map(|b| b.block.clone()) + } + + /// Insert executed block into the state. + fn insert_executed(&mut self, executed: ExecutedBlock) { + self.blocks_by_number.entry(executed.block.number).or_default().push(executed.clone()); + let existing = self.blocks_by_hash.insert(executed.block.hash(), executed); + debug_assert!(existing.is_none(), "inserted duplicate block"); + } + + /// Remove blocks before specified block number. + pub(crate) fn remove_before(&mut self, block_number: BlockNumber) { + while self + .blocks_by_number + .first_key_value() + .map(|entry| entry.0 < &block_number) + .unwrap_or_default() + { + let (_, to_remove) = self.blocks_by_number.pop_first().unwrap(); + for block in to_remove { + let block_hash = block.block.hash(); + let removed = self.blocks_by_hash.remove(&block_hash); + debug_assert!( + removed.is_some(), + "attempted to remove non-existing block {block_hash}" + ); + } + } + } +} + +/// Tracks the state of the engine api internals. +/// +/// This type is shareable. +#[derive(Debug)] +pub struct EngineApiTreeState { + /// Tracks the state of the blockchain tree. + tree_state: TreeState, + /// Tracks the received forkchoice state updates received by the CL. + forkchoice_state_tracker: ForkchoiceStateTracker, + /// Buffer of detached blocks. + buffer: BlockBuffer, + /// Tracks the header of invalid payloads that were rejected by the engine because they're + /// invalid. + invalid_headers: InvalidHeaderCache, +} + +/// The type responsible for processing engine API requests. +/// +/// TODO: design: should the engine handler functions also accept the response channel or return the +/// result and the caller redirects the response +pub trait EngineApiTreeHandler: Send + Sync { + /// The engine type that this handler is for. + type Engine: EngineTypes; + + /// Invoked when previously requested blocks were downloaded. + fn on_downloaded(&mut self, blocks: Vec) -> Option; + + /// When the Consensus layer receives a new block via the consensus gossip protocol, + /// the transactions in the block are sent to the execution layer in the form of a + /// [`ExecutionPayload`]. The Execution layer executes the transactions and validates the + /// state in the block header, then passes validation data back to Consensus layer, that + /// adds the block to the head of its own blockchain and attests to it. The block is then + /// broadcast over the consensus p2p network in the form of a "Beacon block". + /// + /// These responses should adhere to the [Engine API Spec for + /// `engine_newPayload`](https://github.com/ethereum/execution-apis/blob/main/src/engine/paris.md#specification). + /// + /// This returns a [`PayloadStatus`] that represents the outcome of a processed new payload and + /// returns an error if an internal error occurred. + fn on_new_payload( + &mut self, + payload: ExecutionPayload, + cancun_fields: Option, + ) -> ProviderResult>; + + /// Invoked when we receive a new forkchoice update message. Calls into the blockchain tree + /// to resolve chain forks and ensure that the Execution Layer is working with the latest valid + /// chain. + /// + /// These responses should adhere to the [Engine API Spec for + /// `engine_forkchoiceUpdated`](https://github.com/ethereum/execution-apis/blob/main/src/engine/paris.md#specification-1). + /// + /// Returns an error if an internal error occurred like a database error. + fn on_forkchoice_updated( + &mut self, + state: ForkchoiceState, + attrs: Option<::PayloadAttributes>, + ) -> TreeOutcome>; +} + +/// The outcome of a tree operation. +#[derive(Debug)] +pub struct TreeOutcome { + /// The outcome of the operation. + pub outcome: T, + /// An optional event to tell the caller to do something. + pub event: Option, +} + +impl TreeOutcome { + /// Create new tree outcome. + pub const fn new(outcome: T) -> Self { + Self { outcome, event: None } + } + + /// Set event on the outcome. + pub fn with_event(mut self, event: TreeEvent) -> Self { + self.event = Some(event); + self + } +} + +/// Events that can be emitted by the [`EngineApiTreeHandler`]. +#[derive(Debug)] +pub enum TreeEvent { + /// Tree action is needed. + TreeAction(TreeAction), + /// Backfill action is needed. + BackfillAction(BackfillAction), + /// Block download is needed. + Download(DownloadRequest), +} + +/// The actions that can be performed on the tree. +#[derive(Debug)] +pub enum TreeAction { + /// Make target canonical. + MakeCanonical(B256), +} + +#[derive(Debug)] +pub struct EngineApiTreeHandlerImpl { + provider: P, + executor_provider: E, + consensus: Arc, + payload_validator: ExecutionPayloadValidator, + state: EngineApiTreeState, + /// (tmp) The flag indicating whether the pipeline is active. + is_pipeline_active: bool, + _marker: PhantomData, +} + +impl EngineApiTreeHandlerImpl +where + P: BlockReader + StateProviderFactory, + E: BlockExecutorProvider, + T: EngineTypes, +{ + /// Return block from database or in-memory state by hash. + fn block_by_hash(&self, hash: B256) -> ProviderResult> { + // check database first + let mut block = self.provider.block_by_hash(hash)?; + if block.is_none() { + // Note: it's fine to return the unsealed block because the caller already has + // the hash + block = self + .state + .tree_state + .block_by_hash(hash) + // TODO: clone for compatibility. should we return an Arc here? + .map(|block| block.as_ref().clone().unseal()); + } + Ok(block) + } + + /// Return state provider with reference to in-memory blocks that overlay database state. + fn state_provider( + &self, + hash: B256, + ) -> ProviderResult>> { + let mut in_memory = Vec::new(); + let mut parent_hash = hash; + while let Some(executed) = self.state.tree_state.blocks_by_hash.get(&parent_hash) { + parent_hash = executed.block.parent_hash; + in_memory.insert(0, executed.clone()); + } + + let historical = self.provider.state_by_block_hash(parent_hash)?; + Ok(MemoryOverlayStateProvider::new(in_memory, historical)) + } + + /// Return the parent hash of the lowest buffered ancestor for the requested block, if there + /// are any buffered ancestors. If there are no buffered ancestors, and the block itself does + /// not exist in the buffer, this returns the hash that is passed in. + /// + /// Returns the parent hash of the block itself if the block is buffered and has no other + /// buffered ancestors. + fn lowest_buffered_ancestor_or(&self, hash: B256) -> B256 { + self.state + .buffer + .lowest_ancestor(&hash) + .map(|block| block.parent_hash) + .unwrap_or_else(|| hash) + } + + /// If validation fails, the response MUST contain the latest valid hash: + /// + /// - The block hash of the ancestor of the invalid payload satisfying the following two + /// conditions: + /// - It is fully validated and deemed VALID + /// - Any other ancestor of the invalid payload with a higher blockNumber is INVALID + /// - 0x0000000000000000000000000000000000000000000000000000000000000000 if the above + /// conditions are satisfied by a `PoW` block. + /// - null if client software cannot determine the ancestor of the invalid payload satisfying + /// the above conditions. + fn latest_valid_hash_for_invalid_payload( + &mut self, + parent_hash: B256, + ) -> ProviderResult> { + // Check if parent exists in side chain or in canonical chain. + if self.block_by_hash(parent_hash)?.is_some() { + return Ok(Some(parent_hash)) + } + + // iterate over ancestors in the invalid cache + // until we encounter the first valid ancestor + let mut current_hash = parent_hash; + let mut current_header = self.state.invalid_headers.get(¤t_hash); + while let Some(header) = current_header { + current_hash = header.parent_hash; + current_header = self.state.invalid_headers.get(¤t_hash); + + // If current_header is None, then the current_hash does not have an invalid + // ancestor in the cache, check its presence in blockchain tree + if current_header.is_none() && self.block_by_hash(current_hash)?.is_some() { + return Ok(Some(current_hash)) + } + } + Ok(None) + } + + /// Prepares the invalid payload response for the given hash, checking the + /// database for the parent hash and populating the payload status with the latest valid hash + /// according to the engine api spec. + fn prepare_invalid_response(&mut self, mut parent_hash: B256) -> ProviderResult { + // Edge case: the `latestValid` field is the zero hash if the parent block is the terminal + // PoW block, which we need to identify by looking at the parent's block difficulty + if let Some(parent) = self.block_by_hash(parent_hash)? { + if !parent.is_zero_difficulty() { + parent_hash = B256::ZERO; + } + } + + let valid_parent_hash = self.latest_valid_hash_for_invalid_payload(parent_hash)?; + Ok(PayloadStatus::from_status(PayloadStatusEnum::Invalid { + validation_error: PayloadValidationError::LinksToRejectedPayload.to_string(), + }) + .with_latest_valid_hash(valid_parent_hash.unwrap_or_default())) + } + + /// Checks if the given `check` hash points to an invalid header, inserting the given `head` + /// block into the invalid header cache if the `check` hash has a known invalid ancestor. + /// + /// Returns a payload status response according to the engine API spec if the block is known to + /// be invalid. + fn check_invalid_ancestor_with_head( + &mut self, + check: B256, + head: B256, + ) -> ProviderResult> { + // check if the check hash was previously marked as invalid + let Some(header) = self.state.invalid_headers.get(&check) else { return Ok(None) }; + + // populate the latest valid hash field + let status = self.prepare_invalid_response(header.parent_hash)?; + + // insert the head block into the invalid header cache + self.state.invalid_headers.insert_with_invalid_ancestor(head, header); + + Ok(Some(status)) + } + + /// Validate if block is correct and satisfies all the consensus rules that concern the header + /// and block body itself. + fn validate_block(&self, block: &SealedBlockWithSenders) -> Result<(), ConsensusError> { + if let Err(e) = self.consensus.validate_header_with_total_difficulty(block, U256::MAX) { + error!( + ?block, + "Failed to validate total difficulty for block {}: {e}", + block.header.hash() + ); + return Err(e) + } + + if let Err(e) = self.consensus.validate_header(block) { + error!(?block, "Failed to validate header {}: {e}", block.header.hash()); + return Err(e) + } + + if let Err(e) = self.consensus.validate_block_pre_execution(block) { + error!(?block, "Failed to validate block {}: {e}", block.header.hash()); + return Err(e) + } + + Ok(()) + } + + fn buffer_block_without_senders(&mut self, block: SealedBlock) -> Result<(), InsertBlockError> { + match block.try_seal_with_senders() { + Ok(block) => self.buffer_block(block), + Err(block) => Err(InsertBlockError::sender_recovery_error(block)), + } + } + + fn buffer_block(&mut self, block: SealedBlockWithSenders) -> Result<(), InsertBlockError> { + if let Err(err) = self.validate_block(&block) { + return Err(InsertBlockError::consensus_error(err, block.block)) + } + self.state.buffer.insert_block(block); + Ok(()) + } + + fn insert_block_without_senders( + &mut self, + block: SealedBlock, + ) -> Result { + match block.try_seal_with_senders() { + Ok(block) => self.insert_block(block), + Err(block) => Err(InsertBlockError::sender_recovery_error(block)), + } + } + + fn insert_block( + &mut self, + block: SealedBlockWithSenders, + ) -> Result { + self.insert_block_inner(block.clone()) + .map_err(|kind| InsertBlockError::new(block.block, kind)) + } + + fn insert_block_inner( + &mut self, + block: SealedBlockWithSenders, + ) -> Result { + if self.block_by_hash(block.hash())?.is_some() { + let attachment = BlockAttachment::Canonical; // TODO: remove or revise attachment + return Ok(InsertPayloadOk::AlreadySeen(BlockStatus::Valid(attachment))) + } + + // validate block consensus rules + self.validate_block(&block)?; + + let state_provider = self.state_provider(block.parent_hash).unwrap(); + let executor = self.executor_provider.executor(StateProviderDatabase::new(&state_provider)); + + let block_number = block.number; + let block_hash = block.hash(); + let block = block.unseal(); + let output = executor.execute((&block, U256::MAX).into()).unwrap(); + self.consensus.validate_block_post_execution( + &block, + PostExecutionInput::new(&output.receipts, &output.requests), + )?; + + let hashed_state = HashedPostState::from_bundle_state(&output.state.state); + + // TODO: compute and validate state root + let trie_output = TrieUpdates::default(); + + let executed = ExecutedBlock { + block: Arc::new(block.block.seal(block_hash)), + senders: Arc::new(block.senders), + execution_output: Arc::new(ExecutionOutcome::new( + output.state, + Receipts::from(output.receipts), + block_number, + vec![Requests::from(output.requests)], + )), + hashed_state: Arc::new(hashed_state), + trie: Arc::new(trie_output), + }; + self.state.tree_state.insert_executed(executed); + + let attachment = BlockAttachment::Canonical; // TODO: remove or revise attachment + Ok(InsertPayloadOk::Inserted(BlockStatus::Valid(attachment))) + } +} + +impl EngineApiTreeHandler for EngineApiTreeHandlerImpl +where + P: BlockReader + StateProviderFactory + Clone, + E: BlockExecutorProvider, + T: EngineTypes, +{ + type Engine = T; + + fn on_downloaded(&mut self, _blocks: Vec) -> Option { + todo!() + } + + fn on_new_payload( + &mut self, + payload: ExecutionPayload, + cancun_fields: Option, + ) -> ProviderResult> { + // Ensures that the given payload does not violate any consensus rules that concern the + // block's layout, like: + // - missing or invalid base fee + // - invalid extra data + // - invalid transactions + // - incorrect hash + // - the versioned hashes passed with the payload do not exactly match transaction + // versioned hashes + // - the block does not contain blob transactions if it is pre-cancun + // + // This validates the following engine API rule: + // + // 3. Given the expected array of blob versioned hashes client software **MUST** run its + // validation by taking the following steps: + // + // 1. Obtain the actual array by concatenating blob versioned hashes lists + // (`tx.blob_versioned_hashes`) of each [blob + // transaction](https://eips.ethereum.org/EIPS/eip-4844#new-transaction-type) included + // in the payload, respecting the order of inclusion. If the payload has no blob + // transactions the expected array **MUST** be `[]`. + // + // 2. Return `{status: INVALID, latestValidHash: null, validationError: errorMessage | + // null}` if the expected and the actual arrays don't match. + // + // This validation **MUST** be instantly run in all cases even during active sync process. + let parent_hash = payload.parent_hash(); + let block = match self + .payload_validator + .ensure_well_formed_payload(payload, cancun_fields.into()) + { + Ok(block) => block, + Err(error) => { + error!(target: "engine::tree", %error, "Invalid payload"); + // we need to convert the error to a payload status (response to the CL) + + let latest_valid_hash = + if error.is_block_hash_mismatch() || error.is_invalid_versioned_hashes() { + // Engine-API rules: + // > `latestValidHash: null` if the blockHash validation has failed () + // > `latestValidHash: null` if the expected and the actual arrays don't match () + None + } else { + self.latest_valid_hash_for_invalid_payload(parent_hash)? + }; + + let status = PayloadStatusEnum::from(error); + return Ok(TreeOutcome::new(PayloadStatus::new(status, latest_valid_hash))) + } + }; + + let block_hash = block.hash(); + let mut lowest_buffered_ancestor = self.lowest_buffered_ancestor_or(block_hash); + if lowest_buffered_ancestor == block_hash { + lowest_buffered_ancestor = block.parent_hash; + } + + // now check the block itself + if let Some(status) = + self.check_invalid_ancestor_with_head(lowest_buffered_ancestor, block_hash)? + { + return Ok(TreeOutcome::new(status)) + } + + let status = if self.is_pipeline_active { + self.buffer_block_without_senders(block).unwrap(); + PayloadStatus::from_status(PayloadStatusEnum::Syncing) + } else { + let mut latest_valid_hash = None; + let status = match self.insert_block_without_senders(block).unwrap() { + InsertPayloadOk::Inserted(BlockStatus::Valid(_)) | + InsertPayloadOk::AlreadySeen(BlockStatus::Valid(_)) => { + latest_valid_hash = Some(block_hash); + PayloadStatusEnum::Valid + } + InsertPayloadOk::Inserted(BlockStatus::Disconnected { .. }) | + InsertPayloadOk::AlreadySeen(BlockStatus::Disconnected { .. }) => { + // TODO: isn't this check redundant? + // check if the block's parent is already marked as invalid + // if let Some(status) = self + // .check_invalid_ancestor_with_head(block.parent_hash, block.hash()) + // .map_err(|error| { + // InsertBlockError::new(block, InsertBlockErrorKind::Provider(error)) + // })? + // { + // return Ok(status) + // } + + // not known to be invalid, but we don't know anything else + PayloadStatusEnum::Syncing + } + }; + PayloadStatus::new(status, latest_valid_hash) + }; + + let mut outcome = TreeOutcome::new(status); + if outcome.outcome.is_valid() { + if let Some(target) = self.state.forkchoice_state_tracker.sync_target_state() { + if target.head_block_hash == block_hash { + outcome = outcome + .with_event(TreeEvent::TreeAction(TreeAction::MakeCanonical(block_hash))); + } + } + } + Ok(outcome) + } + + fn on_forkchoice_updated( + &mut self, + state: ForkchoiceState, + attrs: Option<::PayloadAttributes>, + ) -> TreeOutcome> { + todo!() + } +} From feb6a37a185bb3cbe096d081799592ea060f1ae8 Mon Sep 17 00:00:00 2001 From: Oliver Date: Mon, 1 Jul 2024 14:07:05 +0200 Subject: [PATCH 10/27] chore: remove unused `MIN_LENGTH_EIPXXXX_ENCODED` (#9211) Co-authored-by: Matthias Seitz --- crates/primitives/src/transaction/mod.rs | 118 +---------------------- 1 file changed, 2 insertions(+), 116 deletions(-) diff --git a/crates/primitives/src/transaction/mod.rs b/crates/primitives/src/transaction/mod.rs index 1edafaaa2c0a..7a5ae73ba743 100644 --- a/crates/primitives/src/transaction/mod.rs +++ b/crates/primitives/src/transaction/mod.rs @@ -75,18 +75,6 @@ pub(crate) static PARALLEL_SENDER_RECOVERY_THRESHOLD: Lazy = _ => 5, }); -/// Minimum length of a rlp-encoded legacy transaction. -pub const MIN_LENGTH_LEGACY_TX_ENCODED: usize = 10; -/// Minimum length of a rlp-encoded eip2930 transaction. -pub const MIN_LENGTH_EIP2930_TX_ENCODED: usize = 14; -/// Minimum length of a rlp-encoded eip1559 transaction. -pub const MIN_LENGTH_EIP1559_TX_ENCODED: usize = 15; -/// Minimum length of a rlp-encoded eip4844 transaction. -pub const MIN_LENGTH_EIP4844_TX_ENCODED: usize = 37; -/// Minimum length of a rlp-encoded deposit transaction. -#[cfg(feature = "optimism")] -pub const MIN_LENGTH_DEPOSIT_TX_ENCODED: usize = 65; - /// A raw transaction. /// /// Transaction types were introduced in [EIP-2718](https://eips.ethereum.org/EIPS/eip-2718). @@ -1627,12 +1615,10 @@ mod tests { hex, sign_message, transaction::{ from_compact_zstd_unaware, signature::Signature, to_compact_ztd_unaware, TxEip1559, - TxKind, TxLegacy, MIN_LENGTH_EIP1559_TX_ENCODED, MIN_LENGTH_EIP2930_TX_ENCODED, - MIN_LENGTH_EIP4844_TX_ENCODED, MIN_LENGTH_LEGACY_TX_ENCODED, - PARALLEL_SENDER_RECOVERY_THRESHOLD, + TxKind, TxLegacy, PARALLEL_SENDER_RECOVERY_THRESHOLD, }, Address, Bytes, Transaction, TransactionSigned, TransactionSignedEcRecovered, - TransactionSignedNoHash, TxEip2930, TxEip4844, B256, U256, + TransactionSignedNoHash, B256, U256, }; use alloy_primitives::{address, b256, bytes}; use alloy_rlp::{Decodable, Encodable, Error as RlpError}; @@ -1973,106 +1959,6 @@ mod tests { assert_eq!(sender, address!("7e9e359edf0dbacf96a9952fa63092d919b0842b")); } - #[test] - fn min_length_encoded_legacy_transaction() { - let transaction = TxLegacy::default(); - let signature = Signature::default(); - - let signed_tx = TransactionSigned::from_transaction_and_signature( - Transaction::Legacy(transaction), - signature, - ); - - let encoded = &alloy_rlp::encode(signed_tx); - assert_eq!( - if cfg!(feature = "optimism") { - hex!("c9808080808080808080") - } else { - hex!("c98080808080801b8080") - }, - &encoded[..] - ); - assert_eq!(MIN_LENGTH_LEGACY_TX_ENCODED, encoded.len()); - - TransactionSigned::decode(&mut &encoded[..]).unwrap(); - } - - #[test] - fn min_length_encoded_eip2930_transaction() { - let transaction = TxEip2930::default(); - let signature = Signature::default(); - - let signed_tx = TransactionSigned::from_transaction_and_signature( - Transaction::Eip2930(transaction), - signature, - ); - - let encoded = &alloy_rlp::encode(signed_tx); - assert_eq!(hex!("8d01cb80808080808080c0808080"), encoded[..]); - assert_eq!(MIN_LENGTH_EIP2930_TX_ENCODED, encoded.len()); - - TransactionSigned::decode(&mut &encoded[..]).unwrap(); - } - - #[test] - fn min_length_encoded_eip1559_transaction() { - let transaction = TxEip1559::default(); - let signature = Signature::default(); - - let signed_tx = TransactionSigned::from_transaction_and_signature( - Transaction::Eip1559(transaction), - signature, - ); - - let encoded = &alloy_rlp::encode(signed_tx); - assert_eq!(hex!("8e02cc8080808080808080c0808080"), encoded[..]); - assert_eq!(MIN_LENGTH_EIP1559_TX_ENCODED, encoded.len()); - - TransactionSigned::decode(&mut &encoded[..]).unwrap(); - } - - #[test] - fn min_length_encoded_eip4844_transaction() { - let transaction = TxEip4844::default(); - let signature = Signature::default(); - - let signed_tx = TransactionSigned::from_transaction_and_signature( - Transaction::Eip4844(transaction), - signature, - ); - - let encoded = alloy_rlp::encode(signed_tx); - assert_eq!( - hex!("a403e280808080809400000000000000000000000000000000000000008080c080c0808080"), - encoded[..] - ); - assert_eq!(MIN_LENGTH_EIP4844_TX_ENCODED, encoded.len()); - - TransactionSigned::decode(&mut &encoded[..]).unwrap(); - } - - #[cfg(feature = "optimism")] - #[test] - fn min_length_encoded_deposit_transaction() { - use super::MIN_LENGTH_DEPOSIT_TX_ENCODED; - use crate::TxDeposit; - - let transaction = TxDeposit::default(); - let signature = Signature::default(); - - let signed_tx = TransactionSigned::from_transaction_and_signature( - Transaction::Deposit(transaction), - signature, - ); - - let encoded = &alloy_rlp::encode(signed_tx); - - assert_eq!(b"\xb8?~\xf8<\xa0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x94\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x80\x80\x80\x80\x80\x80", &encoded[..]); - assert_eq!(MIN_LENGTH_DEPOSIT_TX_ENCODED, encoded.len()); - - TransactionSigned::decode(&mut &encoded[..]).unwrap(); - } - #[test] fn transaction_signed_no_hash_zstd_codec() { // will use same signature everywhere. From db191c82a57dd3eed8cf982dee197526433e7d09 Mon Sep 17 00:00:00 2001 From: Roman Krasiuk Date: Mon, 1 Jul 2024 06:07:23 -0700 Subject: [PATCH 11/27] chore(trie): clean up trie update operation matching (#9202) --- crates/trie/trie/src/trie_cursor/in_memory.rs | 22 +++++-------------- crates/trie/trie/src/updates.rs | 9 ++++++++ 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/crates/trie/trie/src/trie_cursor/in_memory.rs b/crates/trie/trie/src/trie_cursor/in_memory.rs index 5f607f314db0..f7c521f69b6b 100644 --- a/crates/trie/trie/src/trie_cursor/in_memory.rs +++ b/crates/trie/trie/src/trie_cursor/in_memory.rs @@ -1,5 +1,5 @@ use super::{TrieCursor, TrieCursorFactory}; -use crate::updates::{TrieKey, TrieOp, TrieUpdatesSorted}; +use crate::updates::{TrieKey, TrieUpdatesSorted}; use reth_db::DatabaseError; use reth_primitives::B256; use reth_trie_common::{BranchNodeCompact, Nibbles}; @@ -58,10 +58,7 @@ impl<'a, C: TrieCursor> TrieCursor for InMemoryAccountTrieCursor<'a, C> { ) -> Result, DatabaseError> { if let Some((trie_key, trie_op)) = self.trie_updates.find_account_node(&key) { self.last_key = Some(trie_key); - match trie_op { - TrieOp::Update(node) => Ok(Some((key, node))), - TrieOp::Delete => Ok(None), - } + Ok(trie_op.into_update().map(|node| (key, node))) } else { let result = self.cursor.seek_exact(key)?; self.last_key = result.as_ref().map(|(k, _)| TrieKey::AccountNode(k.clone())); @@ -86,10 +83,7 @@ impl<'a, C: TrieCursor> TrieCursor for InMemoryAccountTrieCursor<'a, C> { _ => panic!("Invalid trie key"), }; self.last_key = Some(trie_key); - match trie_op { - TrieOp::Update(node) => return Ok(Some((nibbles, node))), - TrieOp::Delete => return Ok(None), - } + return Ok(trie_op.into_update().map(|node| (nibbles, node))) } let result = self.cursor.seek(key)?; @@ -132,10 +126,7 @@ impl<'a, C: TrieCursor> TrieCursor for InMemoryStorageTrieCursor<'a, C> { self.trie_updates.find_storage_node(&self.hashed_address, &key) { self.last_key = Some(trie_key); - match trie_op { - TrieOp::Update(node) => Ok(Some((key, node))), - TrieOp::Delete => Ok(None), - } + Ok(trie_op.into_update().map(|node| (key, node))) } else { let result = self.cursor.seek_exact(key)?; self.last_key = @@ -164,10 +155,7 @@ impl<'a, C: TrieCursor> TrieCursor for InMemoryStorageTrieCursor<'a, C> { _ => panic!("this should not happen!"), }; self.last_key = Some(trie_key.clone()); - match trie_op { - TrieOp::Update(node) => return Ok(Some((nibbles, node.clone()))), - TrieOp::Delete => return Ok(None), - } + return Ok(trie_op.as_update().map(|node| (nibbles, node.clone()))) } let result = self.cursor.seek(key)?; diff --git a/crates/trie/trie/src/updates.rs b/crates/trie/trie/src/updates.rs index 4ae4eb309089..d0027d658523 100644 --- a/crates/trie/trie/src/updates.rs +++ b/crates/trie/trie/src/updates.rs @@ -76,6 +76,15 @@ impl TrieOp { None } } + + /// Returns owned updated branch node if operation is [`Self::Update`]. + pub fn into_update(self) -> Option { + if let Self::Update(node) = self { + Some(node) + } else { + None + } + } } /// The aggregation of trie updates. From d317b4a0fbe54fed247b626e8d0d0928497d812b Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Mon, 1 Jul 2024 15:07:49 +0200 Subject: [PATCH 12/27] chore: add builder with rng secret key fn (#9218) --- crates/net/network/src/config.rs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/crates/net/network/src/config.rs b/crates/net/network/src/config.rs index b6c95521245c..3f7887a9b8db 100644 --- a/crates/net/network/src/config.rs +++ b/crates/net/network/src/config.rs @@ -88,6 +88,11 @@ impl NetworkConfig<()> { pub fn builder(secret_key: SecretKey) -> NetworkConfigBuilder { NetworkConfigBuilder::new(secret_key) } + + /// Convenience method for creating the corresponding builder type with a random secret key. + pub fn builder_with_rng_secret_key() -> NetworkConfigBuilder { + NetworkConfigBuilder::with_rng_secret_key() + } } impl NetworkConfig { @@ -176,6 +181,12 @@ pub struct NetworkConfigBuilder { #[allow(missing_docs)] impl NetworkConfigBuilder { + /// Create a new builder instance with a random secret key. + pub fn with_rng_secret_key() -> Self { + Self::new(rng_secret_key()) + } + + /// Create a new builder instance with the given secret key. pub fn new(secret_key: SecretKey) -> Self { Self { secret_key, @@ -212,6 +223,11 @@ impl NetworkConfigBuilder { pk2id(&self.secret_key.public_key(SECP256K1)) } + /// Returns the configured [`SecretKey`], from which the node's identity is derived. + pub const fn secret_key(&self) -> &SecretKey { + &self.secret_key + } + /// Sets the chain spec. pub fn chain_spec(mut self, chain_spec: Arc) -> Self { self.chain_spec = chain_spec; From cf8a9163afb9bbdab821e8f0a843ec195785432b Mon Sep 17 00:00:00 2001 From: joshieDo <93316087+joshieDo@users.noreply.github.com> Date: Mon, 1 Jul 2024 17:12:36 +0200 Subject: [PATCH 13/27] chore: remove usage of `tx_env_with_recovered` (#9222) --- crates/ethereum/evm/src/lib.rs | 8 +- crates/ethereum/payload/src/lib.rs | 3 +- crates/evm/src/lib.rs | 8 +- crates/optimism/evm/src/lib.rs | 6 +- crates/optimism/payload/src/builder.rs | 10 +- crates/primitives/src/revm/env.rs | 162 +------------------- crates/primitives/src/transaction/compat.rs | 131 ++++++++++++++++ crates/primitives/src/transaction/mod.rs | 2 + examples/custom-evm/src/main.rs | 9 +- examples/exex/rollup/src/execution.rs | 3 +- 10 files changed, 158 insertions(+), 184 deletions(-) create mode 100644 crates/primitives/src/transaction/compat.rs diff --git a/crates/ethereum/evm/src/lib.rs b/crates/ethereum/evm/src/lib.rs index 17c0c7370b35..86386ceb5af0 100644 --- a/crates/ethereum/evm/src/lib.rs +++ b/crates/ethereum/evm/src/lib.rs @@ -14,9 +14,9 @@ extern crate alloc; use reth_chainspec::{ChainSpec, Head}; use reth_evm::{ConfigureEvm, ConfigureEvmEnv}; -use reth_primitives::{Header, U256}; +use reth_primitives::{transaction::FillTxEnv, Address, Header, TransactionSigned, U256}; use reth_revm::{Database, EvmBuilder}; -use revm_primitives::{AnalysisKind, CfgEnvWithHandlerCfg}; +use revm_primitives::{AnalysisKind, CfgEnvWithHandlerCfg, TxEnv}; mod config; pub use config::{revm_spec, revm_spec_by_timestamp_after_merge}; @@ -57,6 +57,10 @@ impl ConfigureEvmEnv for EthEvmConfig { cfg_env.handler_cfg.spec_id = spec_id; } + + fn fill_tx_env(&self, tx_env: &mut TxEnv, transaction: &TransactionSigned, sender: Address) { + transaction.fill_tx_env(tx_env, sender); + } } impl ConfigureEvm for EthEvmConfig { diff --git a/crates/ethereum/payload/src/lib.rs b/crates/ethereum/payload/src/lib.rs index 43a00fb98cff..84d43b33c149 100644 --- a/crates/ethereum/payload/src/lib.rs +++ b/crates/ethereum/payload/src/lib.rs @@ -27,7 +27,6 @@ use reth_primitives::{ }, eip4844::calculate_excess_blob_gas, proofs::{self, calculate_requests_root}, - revm::env::tx_env_with_recovered, Block, EthereumHardforks, Header, IntoRecoveredTransaction, Receipt, EMPTY_OMMER_ROOT_HASH, U256, }; @@ -343,7 +342,7 @@ where let env = EnvWithHandlerCfg::new_with_cfg_env( initialized_cfg.clone(), initialized_block_env.clone(), - tx_env_with_recovered(&tx), + evm_config.tx_env(&tx), ); // Configure the environment for the block. diff --git a/crates/evm/src/lib.rs b/crates/evm/src/lib.rs index 20d2f67ed6f2..b57969de8e61 100644 --- a/crates/evm/src/lib.rs +++ b/crates/evm/src/lib.rs @@ -16,8 +16,8 @@ use core::ops::Deref; use reth_chainspec::ChainSpec; use reth_primitives::{ - revm::env::{fill_block_env, fill_tx_env}, - Address, Header, TransactionSigned, TransactionSignedEcRecovered, U256, + revm::env::fill_block_env, Address, Header, TransactionSigned, TransactionSignedEcRecovered, + U256, }; use revm::{inspector_handle_register, Database, Evm, EvmBuilder, GetInspector}; use revm_primitives::{BlockEnv, CfgEnvWithHandlerCfg, EnvWithHandlerCfg, SpecId, TxEnv}; @@ -116,9 +116,7 @@ pub trait ConfigureEvmEnv: Send + Sync + Unpin + Clone + 'static { } /// Fill transaction environment from a [`TransactionSigned`] and the given sender address. - fn fill_tx_env(&self, tx_env: &mut TxEnv, transaction: &TransactionSigned, sender: Address) { - fill_tx_env(tx_env, transaction, sender) - } + fn fill_tx_env(&self, tx_env: &mut TxEnv, transaction: &TransactionSigned, sender: Address); /// Fill [`CfgEnvWithHandlerCfg`] fields according to the chain spec and given header fn fill_cfg_env( diff --git a/crates/optimism/evm/src/lib.rs b/crates/optimism/evm/src/lib.rs index 5dff8d5de312..2d1b0afb07f7 100644 --- a/crates/optimism/evm/src/lib.rs +++ b/crates/optimism/evm/src/lib.rs @@ -12,8 +12,8 @@ use reth_chainspec::ChainSpec; use reth_evm::{ConfigureEvm, ConfigureEvmEnv}; use reth_primitives::{ - revm::env::fill_op_tx_env, revm_primitives::{AnalysisKind, CfgEnvWithHandlerCfg, TxEnv}, + transaction::FillTxEnv, Address, Head, Header, TransactionSigned, U256, }; use reth_revm::{inspector_handle_register, Database, Evm, EvmBuilder, GetInspector}; @@ -35,9 +35,7 @@ pub struct OptimismEvmConfig; impl ConfigureEvmEnv for OptimismEvmConfig { fn fill_tx_env(&self, tx_env: &mut TxEnv, transaction: &TransactionSigned, sender: Address) { - let mut buf = Vec::with_capacity(transaction.length_without_header()); - transaction.encode_enveloped(&mut buf); - fill_op_tx_env(tx_env, transaction, sender, buf.into()); + transaction.fill_tx_env(tx_env, sender); } fn fill_cfg_env( diff --git a/crates/optimism/payload/src/builder.rs b/crates/optimism/payload/src/builder.rs index 3b08b8df0a18..9bb8d3cdcdf5 100644 --- a/crates/optimism/payload/src/builder.rs +++ b/crates/optimism/payload/src/builder.rs @@ -12,9 +12,7 @@ use reth_payload_builder::error::PayloadBuilderError; use reth_primitives::{ constants::{BEACON_NONCE, EMPTY_RECEIPTS, EMPTY_TRANSACTIONS}, eip4844::calculate_excess_blob_gas, - proofs, - revm::env::tx_env_with_recovered, - Block, Header, IntoRecoveredTransaction, Receipt, TxType, EMPTY_OMMER_ROOT_HASH, U256, + proofs, Block, Header, IntoRecoveredTransaction, Receipt, TxType, EMPTY_OMMER_ROOT_HASH, U256, }; use reth_provider::StateProviderFactory; use reth_revm::database::StateProviderDatabase; @@ -324,7 +322,7 @@ where } // Convert the transaction to a [TransactionSignedEcRecovered]. This is - // purely for the purposes of utilizing the [tx_env_with_recovered] function. + // purely for the purposes of utilizing the `evm_config.tx_env`` function. // Deposit transactions do not have signatures, so if the tx is a deposit, this // will just pull in its `from` address. let sequencer_tx = sequencer_tx.clone().try_into_ecrecovered().map_err(|_| { @@ -351,7 +349,7 @@ where let env = EnvWithHandlerCfg::new_with_cfg_env( initialized_cfg.clone(), initialized_block_env.clone(), - tx_env_with_recovered(&sequencer_tx), + evm_config.tx_env(&sequencer_tx), ); let mut evm = evm_config.evm_with_env(&mut db, env); @@ -430,7 +428,7 @@ where let env = EnvWithHandlerCfg::new_with_cfg_env( initialized_cfg.clone(), initialized_block_env.clone(), - tx_env_with_recovered(&tx), + evm_config.tx_env(&tx), ); // Configure the environment for the block. diff --git a/crates/primitives/src/revm/env.rs b/crates/primitives/src/revm/env.rs index ada7894513ed..6cc81128c2a0 100644 --- a/crates/primitives/src/revm/env.rs +++ b/crates/primitives/src/revm/env.rs @@ -1,7 +1,7 @@ use crate::{ recover_signer_unchecked, revm_primitives::{BlockEnv, Env, TxEnv}, - Address, Bytes, Header, Transaction, TransactionSignedEcRecovered, TxKind, B256, U256, + Address, Bytes, Header, TxKind, B256, U256, }; use reth_chainspec::{Chain, ChainSpec}; @@ -107,28 +107,6 @@ pub fn recover_header_signer(header: &Header) -> Result TxEnv { - let mut tx_env = TxEnv::default(); - - #[cfg(not(feature = "optimism"))] - fill_tx_env(&mut tx_env, transaction.as_ref(), transaction.signer()); - - #[cfg(feature = "optimism")] - { - let mut envelope_buf = Vec::with_capacity(transaction.length_without_header()); - transaction.encode_enveloped(&mut envelope_buf); - fill_op_tx_env( - &mut tx_env, - transaction.as_ref(), - transaction.signer(), - envelope_buf.into(), - ); - } - - tx_env -} - /// Fill transaction environment with the EIP-4788 system contract message data. /// /// This requirements for the beacon root contract call defined by @@ -218,144 +196,6 @@ fn fill_tx_env_with_system_contract_call( env.block.basefee = U256::ZERO; } -/// Fill transaction environment from [`TransactionSignedEcRecovered`]. -#[cfg(not(feature = "optimism"))] -pub fn fill_tx_env_with_recovered(tx_env: &mut TxEnv, transaction: &TransactionSignedEcRecovered) { - fill_tx_env(tx_env, transaction.as_ref(), transaction.signer()); -} - -/// Fill transaction environment from [`TransactionSignedEcRecovered`] and the given envelope. -#[cfg(feature = "optimism")] -pub fn fill_tx_env_with_recovered( - tx_env: &mut TxEnv, - transaction: &TransactionSignedEcRecovered, - envelope: Bytes, -) { - fill_op_tx_env(tx_env, transaction.as_ref(), transaction.signer(), envelope); -} - -/// Fill transaction environment from a [Transaction] and the given sender address. -pub fn fill_tx_env(tx_env: &mut TxEnv, transaction: T, sender: Address) -where - T: AsRef, -{ - tx_env.caller = sender; - match transaction.as_ref() { - Transaction::Legacy(tx) => { - tx_env.gas_limit = tx.gas_limit; - tx_env.gas_price = U256::from(tx.gas_price); - tx_env.gas_priority_fee = None; - tx_env.transact_to = tx.to; - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = tx.chain_id; - tx_env.nonce = Some(tx.nonce); - tx_env.access_list.clear(); - tx_env.blob_hashes.clear(); - tx_env.max_fee_per_blob_gas.take(); - } - Transaction::Eip2930(tx) => { - tx_env.gas_limit = tx.gas_limit; - tx_env.gas_price = U256::from(tx.gas_price); - tx_env.gas_priority_fee = None; - tx_env.transact_to = tx.to; - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = Some(tx.chain_id); - tx_env.nonce = Some(tx.nonce); - tx_env.access_list = tx - .access_list - .iter() - .map(|l| { - (l.address, l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect()) - }) - .collect(); - tx_env.blob_hashes.clear(); - tx_env.max_fee_per_blob_gas.take(); - } - Transaction::Eip1559(tx) => { - tx_env.gas_limit = tx.gas_limit; - tx_env.gas_price = U256::from(tx.max_fee_per_gas); - tx_env.gas_priority_fee = Some(U256::from(tx.max_priority_fee_per_gas)); - tx_env.transact_to = tx.to; - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = Some(tx.chain_id); - tx_env.nonce = Some(tx.nonce); - tx_env.access_list = tx - .access_list - .iter() - .map(|l| { - (l.address, l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect()) - }) - .collect(); - tx_env.blob_hashes.clear(); - tx_env.max_fee_per_blob_gas.take(); - } - Transaction::Eip4844(tx) => { - tx_env.gas_limit = tx.gas_limit; - tx_env.gas_price = U256::from(tx.max_fee_per_gas); - tx_env.gas_priority_fee = Some(U256::from(tx.max_priority_fee_per_gas)); - tx_env.transact_to = TxKind::Call(tx.to); - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = Some(tx.chain_id); - tx_env.nonce = Some(tx.nonce); - tx_env.access_list = tx - .access_list - .iter() - .map(|l| { - (l.address, l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect()) - }) - .collect(); - tx_env.blob_hashes.clone_from(&tx.blob_versioned_hashes); - tx_env.max_fee_per_blob_gas = Some(U256::from(tx.max_fee_per_blob_gas)); - } - #[cfg(feature = "optimism")] - Transaction::Deposit(tx) => { - tx_env.access_list.clear(); - tx_env.gas_limit = tx.gas_limit; - tx_env.gas_price = U256::ZERO; - tx_env.gas_priority_fee = None; - tx_env.transact_to = tx.to; - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = None; - tx_env.nonce = None; - } - } -} - -/// Fill transaction environment from a [Transaction], envelope, and the given sender address. -#[cfg(feature = "optimism")] -#[inline(always)] -pub fn fill_op_tx_env>( - tx_env: &mut TxEnv, - transaction: T, - sender: Address, - envelope: Bytes, -) { - fill_tx_env(tx_env, &transaction, sender); - match transaction.as_ref() { - Transaction::Deposit(tx) => { - tx_env.optimism = OptimismFields { - source_hash: Some(tx.source_hash), - mint: tx.mint, - is_system_transaction: Some(tx.is_system_transaction), - enveloped_tx: Some(envelope), - }; - } - _ => { - tx_env.optimism = OptimismFields { - source_hash: None, - mint: None, - is_system_transaction: Some(false), - enveloped_tx: Some(envelope), - } - } - } -} - #[cfg(test)] mod tests { use super::*; diff --git a/crates/primitives/src/transaction/compat.rs b/crates/primitives/src/transaction/compat.rs new file mode 100644 index 000000000000..ec4f7ad8255d --- /dev/null +++ b/crates/primitives/src/transaction/compat.rs @@ -0,0 +1,131 @@ +use crate::{Address, Transaction, TransactionSigned, TxKind, U256}; +use revm_primitives::TxEnv; + +/// Implements behaviour to fill a [`TxEnv`] from another transaction. +pub trait FillTxEnv { + /// Fills [`TxEnv`] with an [`Address`] and transaction. + fn fill_tx_env(&self, tx_env: &mut TxEnv, sender: Address); +} + +impl FillTxEnv for TransactionSigned { + fn fill_tx_env(&self, tx_env: &mut TxEnv, sender: Address) { + #[cfg(feature = "optimism")] + let envelope = { + let mut envelope = Vec::with_capacity(self.length_without_header()); + self.encode_enveloped(&mut envelope); + envelope + }; + + tx_env.caller = sender; + match self.as_ref() { + Transaction::Legacy(tx) => { + tx_env.gas_limit = tx.gas_limit; + tx_env.gas_price = U256::from(tx.gas_price); + tx_env.gas_priority_fee = None; + tx_env.transact_to = tx.to; + tx_env.value = tx.value; + tx_env.data = tx.input.clone(); + tx_env.chain_id = tx.chain_id; + tx_env.nonce = Some(tx.nonce); + tx_env.access_list.clear(); + tx_env.blob_hashes.clear(); + tx_env.max_fee_per_blob_gas.take(); + } + Transaction::Eip2930(tx) => { + tx_env.gas_limit = tx.gas_limit; + tx_env.gas_price = U256::from(tx.gas_price); + tx_env.gas_priority_fee = None; + tx_env.transact_to = tx.to; + tx_env.value = tx.value; + tx_env.data = tx.input.clone(); + tx_env.chain_id = Some(tx.chain_id); + tx_env.nonce = Some(tx.nonce); + tx_env.access_list = tx + .access_list + .iter() + .map(|l| { + ( + l.address, + l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect(), + ) + }) + .collect(); + tx_env.blob_hashes.clear(); + tx_env.max_fee_per_blob_gas.take(); + } + Transaction::Eip1559(tx) => { + tx_env.gas_limit = tx.gas_limit; + tx_env.gas_price = U256::from(tx.max_fee_per_gas); + tx_env.gas_priority_fee = Some(U256::from(tx.max_priority_fee_per_gas)); + tx_env.transact_to = tx.to; + tx_env.value = tx.value; + tx_env.data = tx.input.clone(); + tx_env.chain_id = Some(tx.chain_id); + tx_env.nonce = Some(tx.nonce); + tx_env.access_list = tx + .access_list + .iter() + .map(|l| { + ( + l.address, + l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect(), + ) + }) + .collect(); + tx_env.blob_hashes.clear(); + tx_env.max_fee_per_blob_gas.take(); + } + Transaction::Eip4844(tx) => { + tx_env.gas_limit = tx.gas_limit; + tx_env.gas_price = U256::from(tx.max_fee_per_gas); + tx_env.gas_priority_fee = Some(U256::from(tx.max_priority_fee_per_gas)); + tx_env.transact_to = TxKind::Call(tx.to); + tx_env.value = tx.value; + tx_env.data = tx.input.clone(); + tx_env.chain_id = Some(tx.chain_id); + tx_env.nonce = Some(tx.nonce); + tx_env.access_list = tx + .access_list + .iter() + .map(|l| { + ( + l.address, + l.storage_keys.iter().map(|k| U256::from_be_bytes(k.0)).collect(), + ) + }) + .collect(); + tx_env.blob_hashes.clone_from(&tx.blob_versioned_hashes); + tx_env.max_fee_per_blob_gas = Some(U256::from(tx.max_fee_per_blob_gas)); + } + #[cfg(feature = "optimism")] + Transaction::Deposit(tx) => { + tx_env.access_list.clear(); + tx_env.gas_limit = tx.gas_limit; + tx_env.gas_price = U256::ZERO; + tx_env.gas_priority_fee = None; + tx_env.transact_to = tx.to; + tx_env.value = tx.value; + tx_env.data = tx.input.clone(); + tx_env.chain_id = None; + tx_env.nonce = None; + tx_env.optimism = revm_primitives::OptimismFields { + source_hash: Some(tx.source_hash), + mint: tx.mint, + is_system_transaction: Some(tx.is_system_transaction), + enveloped_tx: Some(envelope.into()), + }; + return; + } + } + + #[cfg(feature = "optimism")] + if !self.is_deposit() { + tx_env.optimism = revm_primitives::OptimismFields { + source_hash: None, + mint: None, + is_system_transaction: Some(false), + enveloped_tx: Some(envelope.into()), + } + } + } +} diff --git a/crates/primitives/src/transaction/mod.rs b/crates/primitives/src/transaction/mod.rs index 7a5ae73ba743..b6f8ba72c71d 100644 --- a/crates/primitives/src/transaction/mod.rs +++ b/crates/primitives/src/transaction/mod.rs @@ -32,6 +32,7 @@ pub use sidecar::generate_blob_sidecar; pub use sidecar::BlobTransactionValidationError; pub use sidecar::{BlobTransaction, BlobTransactionSidecar}; +pub use compat::FillTxEnv; pub use signature::{extract_chain_id, Signature}; pub use tx_type::{ TxType, EIP1559_TX_TYPE_ID, EIP2930_TX_TYPE_ID, EIP4844_TX_TYPE_ID, LEGACY_TX_TYPE_ID, @@ -39,6 +40,7 @@ pub use tx_type::{ pub use variant::TransactionSignedVariant; mod access_list; +mod compat; mod eip1559; mod eip2930; mod eip4844; diff --git a/examples/custom-evm/src/main.rs b/examples/custom-evm/src/main.rs index 968f0beff1a7..388438857500 100644 --- a/examples/custom-evm/src/main.rs +++ b/examples/custom-evm/src/main.rs @@ -19,12 +19,13 @@ use reth::{ tasks::TaskManager, }; use reth_chainspec::{Chain, ChainSpec, Head}; +use reth_evm_ethereum::EthEvmConfig; use reth_node_api::{ConfigureEvm, ConfigureEvmEnv, FullNodeTypes}; use reth_node_core::{args::RpcServerArgs, node_config::NodeConfig}; use reth_node_ethereum::{EthExecutorProvider, EthereumNode}; use reth_primitives::{ - revm_primitives::{AnalysisKind, CfgEnvWithHandlerCfg}, - Header, U256, + revm_primitives::{AnalysisKind, CfgEnvWithHandlerCfg, TxEnv}, + Address, Header, TransactionSigned, U256, }; use reth_tracing::{RethTracer, Tracer}; use std::sync::Arc; @@ -88,6 +89,10 @@ impl ConfigureEvmEnv for MyEvmConfig { cfg_env.handler_cfg.spec_id = spec_id; } + + fn fill_tx_env(&self, tx_env: &mut TxEnv, transaction: &TransactionSigned, sender: Address) { + EthEvmConfig::default().fill_tx_env(tx_env, transaction, sender) + } } impl ConfigureEvm for MyEvmConfig { diff --git a/examples/exex/rollup/src/execution.rs b/examples/exex/rollup/src/execution.rs index 2f755183fab4..2746553872c9 100644 --- a/examples/exex/rollup/src/execution.rs +++ b/examples/exex/rollup/src/execution.rs @@ -10,7 +10,6 @@ use reth_primitives::{ constants, eip4844::kzg_to_versioned_hash, keccak256, - revm::env::fill_tx_env, revm_primitives::{CfgEnvWithHandlerCfg, EVMError, ExecutionResult, ResultAndState}, Address, Block, BlockWithSenders, Bytes, EthereumHardfork, Header, Receipt, TransactionSigned, TxType, B256, U256, @@ -217,7 +216,7 @@ fn execute_transactions( } // Execute transaction. // Fill revm structure. - fill_tx_env(evm.tx_mut(), &transaction, sender); + EthEvmConfig::default().fill_tx_env(evm.tx_mut(), &transaction, sender); let ResultAndState { result, state } = match evm.transact() { Ok(result) => result, From 9d4722eb650563aed650c325407f306b5770b858 Mon Sep 17 00:00:00 2001 From: joshieDo <93316087+joshieDo@users.noreply.github.com> Date: Mon, 1 Jul 2024 17:24:51 +0200 Subject: [PATCH 14/27] chore: remove unused `static-file` code (#9178) --- .../static-file/src/segments/headers.rs | 77 +----------- .../static-file/src/segments/mod.rs | 93 +------------- .../static-file/src/segments/receipts.rs | 64 +--------- .../static-file/src/segments/transactions.rs | 64 +--------- .../storage/db/src/static_file/generation.rs | 115 ------------------ crates/storage/db/src/static_file/mod.rs | 3 - .../storage/nippy-jar/src/compression/mod.rs | 2 + .../storage/nippy-jar/src/compression/zstd.rs | 4 +- crates/storage/nippy-jar/src/cursor.rs | 4 +- crates/storage/nippy-jar/src/lib.rs | 102 ++++++++-------- .../provider/src/providers/static_file/mod.rs | 67 +++------- 11 files changed, 96 insertions(+), 499 deletions(-) delete mode 100644 crates/storage/db/src/static_file/generation.rs diff --git a/crates/static-file/static-file/src/segments/headers.rs b/crates/static-file/static-file/src/segments/headers.rs index e87c1fdc58e8..5824d1d1ac7d 100644 --- a/crates/static-file/static-file/src/segments/headers.rs +++ b/crates/static-file/static-file/src/segments/headers.rs @@ -1,14 +1,14 @@ -use crate::segments::{dataset_for_compression, prepare_jar, Segment, SegmentHeader}; +use crate::segments::Segment; use alloy_primitives::BlockNumber; -use reth_db::{static_file::create_static_file_T1_T2_T3, tables, RawKey, RawTable}; +use reth_db::tables; use reth_db_api::{cursor::DbCursorRO, database::Database, transaction::DbTx}; use reth_provider::{ providers::{StaticFileProvider, StaticFileWriter}, DatabaseProviderRO, }; -use reth_static_file_types::{SegmentConfig, StaticFileSegment}; +use reth_static_file_types::StaticFileSegment; use reth_storage_errors::provider::ProviderResult; -use std::{ops::RangeInclusive, path::Path}; +use std::ops::RangeInclusive; /// Static File segment responsible for [`StaticFileSegment::Headers`] part of data. #[derive(Debug, Default)] @@ -56,73 +56,4 @@ impl Segment for Headers { Ok(()) } - - fn create_static_file_file( - &self, - provider: &DatabaseProviderRO, - directory: &Path, - config: SegmentConfig, - block_range: RangeInclusive, - ) -> ProviderResult<()> { - let range_len = block_range.clone().count(); - let jar = prepare_jar::( - provider, - directory, - StaticFileSegment::Headers, - config, - block_range.clone(), - range_len, - || { - Ok([ - dataset_for_compression::( - provider, - &block_range, - range_len, - )?, - dataset_for_compression::( - provider, - &block_range, - range_len, - )?, - dataset_for_compression::( - provider, - &block_range, - range_len, - )?, - ]) - }, - )?; - - // Generate list of hashes for filters & PHF - let mut cursor = provider.tx_ref().cursor_read::>()?; - let hashes = if config.filters.has_filters() { - Some( - cursor - .walk(Some(RawKey::from(*block_range.start())))? - .take(range_len) - .map(|row| row.map(|(_key, value)| value.into_value()).map_err(|e| e.into())), - ) - } else { - None - }; - - create_static_file_T1_T2_T3::< - tables::Headers, - tables::HeaderTerminalDifficulties, - tables::CanonicalHeaders, - BlockNumber, - SegmentHeader, - >( - provider.tx_ref(), - block_range, - None, - // We already prepared the dictionary beforehand - None::>>>, - hashes, - range_len, - jar, - )?; - - Ok(()) - } } diff --git a/crates/static-file/static-file/src/segments/mod.rs b/crates/static-file/static-file/src/segments/mod.rs index 77798dd08542..1125b2085d99 100644 --- a/crates/static-file/static-file/src/segments/mod.rs +++ b/crates/static-file/static-file/src/segments/mod.rs @@ -10,20 +10,11 @@ mod receipts; pub use receipts::Receipts; use alloy_primitives::BlockNumber; -use reth_db::{RawKey, RawTable}; -use reth_db_api::{cursor::DbCursorRO, database::Database, table::Table, transaction::DbTx}; -use reth_nippy_jar::NippyJar; -use reth_provider::{ - providers::StaticFileProvider, DatabaseProviderRO, ProviderError, TransactionsProviderExt, -}; -use reth_static_file_types::{ - find_fixed_range, Compression, Filters, InclusionFilter, PerfectHashingFunction, SegmentConfig, - SegmentHeader, StaticFileSegment, -}; +use reth_db_api::database::Database; +use reth_provider::{providers::StaticFileProvider, DatabaseProviderRO}; +use reth_static_file_types::StaticFileSegment; use reth_storage_errors::provider::ProviderResult; -use std::{ops::RangeInclusive, path::Path}; - -pub(crate) type Rows = [Vec>; COLUMNS]; +use std::ops::RangeInclusive; /// A segment represents moving some portion of the data to static files. pub trait Segment: Send + Sync { @@ -38,80 +29,4 @@ pub trait Segment: Send + Sync { static_file_provider: StaticFileProvider, block_range: RangeInclusive, ) -> ProviderResult<()>; - - /// Create a static file of data for the provided block range. The `directory` parameter - /// determines the static file's save location. - fn create_static_file_file( - &self, - provider: &DatabaseProviderRO, - directory: &Path, - config: SegmentConfig, - block_range: RangeInclusive, - ) -> ProviderResult<()>; -} - -/// Returns a [`NippyJar`] according to the desired configuration. The `directory` parameter -/// determines the static file's save location. -pub(crate) fn prepare_jar( - provider: &DatabaseProviderRO, - directory: impl AsRef, - segment: StaticFileSegment, - segment_config: SegmentConfig, - block_range: RangeInclusive, - total_rows: usize, - prepare_compression: impl Fn() -> ProviderResult>, -) -> ProviderResult> { - let tx_range = match segment { - StaticFileSegment::Headers => None, - StaticFileSegment::Receipts | StaticFileSegment::Transactions => { - Some(provider.transaction_range_by_block_range(block_range.clone())?.into()) - } - }; - - let mut nippy_jar = NippyJar::new( - COLUMNS, - &directory.as_ref().join(segment.filename(&find_fixed_range(*block_range.end())).as_str()), - SegmentHeader::new(block_range.clone().into(), Some(block_range.into()), tx_range, segment), - ); - - nippy_jar = match segment_config.compression { - Compression::Lz4 => nippy_jar.with_lz4(), - Compression::Zstd => nippy_jar.with_zstd(false, 0), - Compression::ZstdWithDictionary => { - let dataset = prepare_compression()?; - - nippy_jar = nippy_jar.with_zstd(true, 5_000_000); - nippy_jar - .prepare_compression(dataset.to_vec()) - .map_err(|e| ProviderError::NippyJar(e.to_string()))?; - nippy_jar - } - Compression::Uncompressed => nippy_jar, - }; - - if let Filters::WithFilters(inclusion_filter, phf) = segment_config.filters { - nippy_jar = match inclusion_filter { - InclusionFilter::Cuckoo => nippy_jar.with_cuckoo_filter(total_rows), - }; - nippy_jar = match phf { - PerfectHashingFunction::Fmph => nippy_jar.with_fmph(), - PerfectHashingFunction::GoFmph => nippy_jar.with_gofmph(), - }; - } - - Ok(nippy_jar) -} - -/// Generates the dataset to train a zstd dictionary with the most recent rows (at most 1000). -pub(crate) fn dataset_for_compression>( - provider: &DatabaseProviderRO, - range: &RangeInclusive, - range_len: usize, -) -> ProviderResult>> { - let mut cursor = provider.tx_ref().cursor_read::>()?; - Ok(cursor - .walk_back(Some(RawKey::from(*range.end())))? - .take(range_len.min(1000)) - .map(|row| row.map(|(_key, value)| value.into_value()).expect("should exist")) - .collect::>()) } diff --git a/crates/static-file/static-file/src/segments/receipts.rs b/crates/static-file/static-file/src/segments/receipts.rs index e09b5e690df9..5548e9f99ddf 100644 --- a/crates/static-file/static-file/src/segments/receipts.rs +++ b/crates/static-file/static-file/src/segments/receipts.rs @@ -1,14 +1,14 @@ -use crate::segments::{dataset_for_compression, prepare_jar, Segment}; -use alloy_primitives::{BlockNumber, TxNumber}; -use reth_db::{static_file::create_static_file_T1, tables}; +use crate::segments::Segment; +use alloy_primitives::BlockNumber; +use reth_db::tables; use reth_db_api::{cursor::DbCursorRO, database::Database, transaction::DbTx}; use reth_provider::{ providers::{StaticFileProvider, StaticFileWriter}, - BlockReader, DatabaseProviderRO, TransactionsProviderExt, + BlockReader, DatabaseProviderRO, }; -use reth_static_file_types::{SegmentConfig, SegmentHeader, StaticFileSegment}; +use reth_static_file_types::StaticFileSegment; use reth_storage_errors::provider::{ProviderError, ProviderResult}; -use std::{ops::RangeInclusive, path::Path}; +use std::ops::RangeInclusive; /// Static File segment responsible for [`StaticFileSegment::Receipts`] part of data. #[derive(Debug, Default)] @@ -47,56 +47,4 @@ impl Segment for Receipts { Ok(()) } - - fn create_static_file_file( - &self, - provider: &DatabaseProviderRO, - directory: &Path, - config: SegmentConfig, - block_range: RangeInclusive, - ) -> ProviderResult<()> { - let tx_range = provider.transaction_range_by_block_range(block_range.clone())?; - let tx_range_len = tx_range.clone().count(); - - let jar = prepare_jar::( - provider, - directory, - StaticFileSegment::Receipts, - config, - block_range, - tx_range_len, - || { - Ok([dataset_for_compression::( - provider, - &tx_range, - tx_range_len, - )?]) - }, - )?; - - // Generate list of hashes for filters & PHF - let hashes = if config.filters.has_filters() { - Some( - provider - .transaction_hashes_by_range(*tx_range.start()..(*tx_range.end() + 1))? - .into_iter() - .map(|(tx, _)| Ok(tx)), - ) - } else { - None - }; - - create_static_file_T1::( - provider.tx_ref(), - tx_range, - None, - // We already prepared the dictionary beforehand - None::>>>, - hashes, - tx_range_len, - jar, - )?; - - Ok(()) - } } diff --git a/crates/static-file/static-file/src/segments/transactions.rs b/crates/static-file/static-file/src/segments/transactions.rs index c7daeba0675f..4361f8ca661e 100644 --- a/crates/static-file/static-file/src/segments/transactions.rs +++ b/crates/static-file/static-file/src/segments/transactions.rs @@ -1,14 +1,14 @@ -use crate::segments::{dataset_for_compression, prepare_jar, Segment}; -use alloy_primitives::{BlockNumber, TxNumber}; -use reth_db::{static_file::create_static_file_T1, tables}; +use crate::segments::Segment; +use alloy_primitives::BlockNumber; +use reth_db::tables; use reth_db_api::{cursor::DbCursorRO, database::Database, transaction::DbTx}; use reth_provider::{ providers::{StaticFileProvider, StaticFileWriter}, - BlockReader, DatabaseProviderRO, TransactionsProviderExt, + BlockReader, DatabaseProviderRO, }; -use reth_static_file_types::{SegmentConfig, SegmentHeader, StaticFileSegment}; +use reth_static_file_types::StaticFileSegment; use reth_storage_errors::provider::{ProviderError, ProviderResult}; -use std::{ops::RangeInclusive, path::Path}; +use std::ops::RangeInclusive; /// Static File segment responsible for [`StaticFileSegment::Transactions`] part of data. #[derive(Debug, Default)] @@ -53,56 +53,4 @@ impl Segment for Transactions { Ok(()) } - - fn create_static_file_file( - &self, - provider: &DatabaseProviderRO, - directory: &Path, - config: SegmentConfig, - block_range: RangeInclusive, - ) -> ProviderResult<()> { - let tx_range = provider.transaction_range_by_block_range(block_range.clone())?; - let tx_range_len = tx_range.clone().count(); - - let jar = prepare_jar::( - provider, - directory, - StaticFileSegment::Transactions, - config, - block_range, - tx_range_len, - || { - Ok([dataset_for_compression::( - provider, - &tx_range, - tx_range_len, - )?]) - }, - )?; - - // Generate list of hashes for filters & PHF - let hashes = if config.filters.has_filters() { - Some( - provider - .transaction_hashes_by_range(*tx_range.start()..(*tx_range.end() + 1))? - .into_iter() - .map(|(tx, _)| Ok(tx)), - ) - } else { - None - }; - - create_static_file_T1::( - provider.tx_ref(), - tx_range, - None, - // We already prepared the dictionary beforehand - None::>>>, - hashes, - tx_range_len, - jar, - )?; - - Ok(()) - } } diff --git a/crates/storage/db/src/static_file/generation.rs b/crates/storage/db/src/static_file/generation.rs deleted file mode 100644 index 9c2a64a23b18..000000000000 --- a/crates/storage/db/src/static_file/generation.rs +++ /dev/null @@ -1,115 +0,0 @@ -use crate::{RawKey, RawTable}; -use reth_db_api::{ - cursor::DbCursorRO, - table::{Key, Table}, - transaction::DbTx, -}; - -use reth_nippy_jar::{ColumnResult, NippyJar, NippyJarHeader, PHFKey}; -use reth_storage_errors::provider::{ProviderError, ProviderResult}; -use reth_tracing::tracing::*; -use std::{error::Error as StdError, ops::RangeInclusive}; - -/// Macro that generates static file creation functions that take an arbitrary number of [`Table`] -/// and creates a [`NippyJar`] file out of their [`Table::Value`]. Each list of [`Table::Value`] -/// from a table is a column of values. -/// -/// Has membership filter set and compression dictionary support. -macro_rules! generate_static_file_func { - ($(($($tbl:ident),+)),+ $(,)? ) => { - $( - paste::item! { - /// Creates a static file from specified tables. Each table's `Value` iterator represents a column. - /// - /// **Ensure the range contains the same number of rows.** - /// - /// * `tx`: Database transaction. - /// * `range`: Data range for columns in tables. - /// * `additional`: Additional columns which can't be straight straightforwardly walked on. - /// * `keys`: IntoIterator of keys (eg. `TxHash` or `BlockHash`) with length equal to `row_count` and ordered by future column insertion from `range`. - /// * `dict_compression_set`: Sets of column data for compression dictionaries. Max size is 2GB. Row count is independent. - /// * `row_count`: Total rows to add to `NippyJar`. Must match row count in `range`. - /// * `nippy_jar`: Static File object responsible for file generation. - #[allow(non_snake_case)] - pub fn []< - $($tbl: Table,)+ - K, - H: NippyJarHeader - > - ( - tx: &impl DbTx, - range: RangeInclusive, - additional: Option, Box>>>>>, - dict_compression_set: Option>>>, - keys: Option>>, - row_count: usize, - mut nippy_jar: NippyJar - ) -> ProviderResult<()> - where K: Key + Copy - { - let additional = additional.unwrap_or_default(); - debug!(target: "reth::static_file", ?range, "Creating static file {:?} and {} more columns.", vec![$($tbl::NAME,)+], additional.len()); - - let range: RangeInclusive> = RawKey::new(*range.start())..=RawKey::new(*range.end()); - - // Create PHF and Filter if required - if let Some(keys) = keys { - debug!(target: "reth::static_file", "Calculating Filter, PHF and offset index list"); - match nippy_jar.prepare_index(keys, row_count) { - Ok(_) => { - debug!(target: "reth::static_file", "Filter, PHF and offset index list calculated."); - }, - Err(e) => { - return Err(ProviderError::NippyJar(e.to_string())); - } - } - } - - // Create compression dictionaries if required - if let Some(data_sets) = dict_compression_set { - debug!(target: "reth::static_file", "Creating compression dictionaries."); - match nippy_jar.prepare_compression(data_sets){ - Ok(_) => { - debug!(target: "reth::static_file", "Compression dictionaries created."); - }, - Err(e) => { - return Err(ProviderError::NippyJar(e.to_string())); - } - } - - } - - // Creates the cursors for the columns - $( - let mut [< $tbl _cursor>] = tx.cursor_read::>()?; - let [< $tbl _iter>] = [< $tbl _cursor>] - .walk_range(range.clone())? - .into_iter() - .map(|row| - row - .map(|(_key, val)| val.into_value()) - .map_err(|e| Box::new(e) as Box) - ); - - )+ - - // Create the static file from the data - let col_iterators: Vec,_>>>> = vec![ - $(Box::new([< $tbl _iter>]),)+ - ]; - - - debug!(target: "reth::static_file", jar=?nippy_jar, "Generating static file."); - - let nippy_jar = nippy_jar.freeze(col_iterators.into_iter().chain(additional).collect(), row_count as u64).map_err(|e| ProviderError::NippyJar(e.to_string())); - - debug!(target: "reth::static_file", jar=?nippy_jar, "Static file generated."); - - Ok(()) - } - } - )+ - }; -} - -generate_static_file_func!((T1), (T1, T2), (T1, T2, T3), (T1, T2, T3, T4), (T1, T2, T3, T4, T5),); diff --git a/crates/storage/db/src/static_file/mod.rs b/crates/storage/db/src/static_file/mod.rs index daa6f8a816bd..f27a574f640e 100644 --- a/crates/storage/db/src/static_file/mod.rs +++ b/crates/storage/db/src/static_file/mod.rs @@ -1,13 +1,10 @@ //! reth's static file database table import and access -mod generation; use std::{ collections::{hash_map::Entry, HashMap}, path::Path, }; -pub use generation::*; - mod cursor; pub use cursor::StaticFileCursor; diff --git a/crates/storage/nippy-jar/src/compression/mod.rs b/crates/storage/nippy-jar/src/compression/mod.rs index 76e8c6d16b69..28a92fe909f2 100644 --- a/crates/storage/nippy-jar/src/compression/mod.rs +++ b/crates/storage/nippy-jar/src/compression/mod.rs @@ -30,6 +30,7 @@ pub trait Compression: Serialize + for<'a> Deserialize<'a> { true } + #[cfg(test)] /// If required, prepares compression algorithm with an early pass on the data. fn prepare_compression( &mut self, @@ -95,6 +96,7 @@ impl Compression for Compressors { } } + #[cfg(test)] fn prepare_compression( &mut self, columns: Vec>>, diff --git a/crates/storage/nippy-jar/src/compression/zstd.rs b/crates/storage/nippy-jar/src/compression/zstd.rs index c55ca103aff5..494d79de52f6 100644 --- a/crates/storage/nippy-jar/src/compression/zstd.rs +++ b/crates/storage/nippy-jar/src/compression/zstd.rs @@ -185,6 +185,7 @@ impl Compression for Zstd { matches!(self.state, ZstdState::Ready) } + #[cfg(test)] /// If using it with dictionaries, prepares a dictionary for each column. fn prepare_compression( &mut self, @@ -208,7 +209,6 @@ impl Compression for Zstd { return Err(NippyJarError::ColumnLenMismatch(self.columns, columns.len())) } - // TODO: parallel calculation let mut dictionaries = vec![]; for column in columns { // ZSTD requires all training data to be continuous in memory, alongside the size of @@ -273,6 +273,7 @@ impl<'a> std::fmt::Debug for ZstdDictionaries<'a> { } impl<'a> ZstdDictionaries<'a> { + #[cfg(test)] /// Creates [`ZstdDictionaries`]. pub(crate) fn new(raw: Vec) -> Self { Self(raw.into_iter().map(ZstdDictionary::Raw).collect()) @@ -315,6 +316,7 @@ impl<'a> ZstdDictionaries<'a> { /// A Zstd dictionary. It's created and serialized with [`ZstdDictionary::Raw`], and deserialized as /// [`ZstdDictionary::Loaded`]. pub(crate) enum ZstdDictionary<'a> { + #[allow(dead_code)] Raw(RawDictionary), Loaded(DecoderDictionary<'a>), } diff --git a/crates/storage/nippy-jar/src/cursor.rs b/crates/storage/nippy-jar/src/cursor.rs index 434c40a9a69b..d42b0d364bf8 100644 --- a/crates/storage/nippy-jar/src/cursor.rs +++ b/crates/storage/nippy-jar/src/cursor.rs @@ -67,7 +67,7 @@ impl<'a, H: NippyJarHeader> NippyJarCursor<'a, H> { self.row = 0; } - /// Returns a row, searching it by a key used during [`NippyJar::prepare_index`]. + /// Returns a row, searching it by a key. /// /// **May return false positives.** /// @@ -130,7 +130,7 @@ impl<'a, H: NippyJarHeader> NippyJarCursor<'a, H> { )) } - /// Returns a row, searching it by a key used during [`NippyJar::prepare_index`] by using a + /// Returns a row, searching it by a key using a /// `mask` to only read certain columns from the row. /// /// **May return false positives.** diff --git a/crates/storage/nippy-jar/src/lib.rs b/crates/storage/nippy-jar/src/lib.rs index 8247599d7aeb..056f456eb2b7 100644 --- a/crates/storage/nippy-jar/src/lib.rs +++ b/crates/storage/nippy-jar/src/lib.rs @@ -28,7 +28,9 @@ pub mod filter; use filter::{Cuckoo, InclusionFilter, InclusionFilters}; pub mod compression; -use compression::{Compression, Compressors}; +#[cfg(test)] +use compression::Compression; +use compression::Compressors; pub mod phf; pub use phf::PHFKey; @@ -306,6 +308,56 @@ impl NippyJar { DataReader::new(self.data_path()) } + /// Writes all necessary configuration to file. + fn freeze_config(&self) -> Result<(), NippyJarError> { + // Atomic writes are hard: + let mut tmp_path = self.config_path(); + tmp_path.set_extension(".tmp"); + + // Write to temporary file + let mut file = File::create(&tmp_path)?; + bincode::serialize_into(&mut file, &self)?; + + // fsync() file + file.sync_all()?; + + // Rename file, not move + reth_fs_util::rename(&tmp_path, self.config_path())?; + + // fsync() dir + if let Some(parent) = tmp_path.parent() { + OpenOptions::new().read(true).open(parent)?.sync_all()?; + } + Ok(()) + } +} + +impl InclusionFilter for NippyJar { + fn add(&mut self, element: &[u8]) -> Result<(), NippyJarError> { + self.filter.as_mut().ok_or(NippyJarError::FilterMissing)?.add(element) + } + + fn contains(&self, element: &[u8]) -> Result { + self.filter.as_ref().ok_or(NippyJarError::FilterMissing)?.contains(element) + } + + fn size(&self) -> usize { + self.filter.as_ref().map(|f| f.size()).unwrap_or(0) + } +} + +impl PerfectHashingFunction for NippyJar { + fn set_keys(&mut self, keys: &[T]) -> Result<(), NippyJarError> { + self.phf.as_mut().ok_or(NippyJarError::PHFMissing)?.set_keys(keys) + } + + fn get_index(&self, key: &[u8]) -> Result, NippyJarError> { + self.phf.as_ref().ok_or(NippyJarError::PHFMissing)?.get_index(key) + } +} + +#[cfg(test)] +impl NippyJar { /// If required, prepares any compression algorithm to an early pass of the data. pub fn prepare_compression( &mut self, @@ -429,53 +481,6 @@ impl NippyJar { Ok(()) } - - /// Writes all necessary configuration to file. - fn freeze_config(&self) -> Result<(), NippyJarError> { - // Atomic writes are hard: - let mut tmp_path = self.config_path(); - tmp_path.set_extension(".tmp"); - - // Write to temporary file - let mut file = File::create(&tmp_path)?; - bincode::serialize_into(&mut file, &self)?; - - // fsync() file - file.sync_all()?; - - // Rename file, not move - reth_fs_util::rename(&tmp_path, self.config_path())?; - - // fsync() dir - if let Some(parent) = tmp_path.parent() { - OpenOptions::new().read(true).open(parent)?.sync_all()?; - } - Ok(()) - } -} - -impl InclusionFilter for NippyJar { - fn add(&mut self, element: &[u8]) -> Result<(), NippyJarError> { - self.filter.as_mut().ok_or(NippyJarError::FilterMissing)?.add(element) - } - - fn contains(&self, element: &[u8]) -> Result { - self.filter.as_ref().ok_or(NippyJarError::FilterMissing)?.contains(element) - } - - fn size(&self) -> usize { - self.filter.as_ref().map(|f| f.size()).unwrap_or(0) - } -} - -impl PerfectHashingFunction for NippyJar { - fn set_keys(&mut self, keys: &[T]) -> Result<(), NippyJarError> { - self.phf.as_mut().ok_or(NippyJarError::PHFMissing)?.set_keys(keys) - } - - fn get_index(&self, key: &[u8]) -> Result, NippyJarError> { - self.phf.as_ref().ok_or(NippyJarError::PHFMissing)?.get_index(key) - } } /// Manages the reading of static file data using memory-mapped files. @@ -581,6 +586,7 @@ impl DataReader { #[cfg(test)] mod tests { use super::*; + use compression::Compression; use rand::{rngs::SmallRng, seq::SliceRandom, RngCore, SeedableRng}; use std::{collections::HashSet, fs::OpenOptions}; diff --git a/crates/storage/provider/src/providers/static_file/mod.rs b/crates/storage/provider/src/providers/static_file/mod.rs index e7073defeed0..c5abdbe00c31 100644 --- a/crates/storage/provider/src/providers/static_file/mod.rs +++ b/crates/storage/provider/src/providers/static_file/mod.rs @@ -59,29 +59,16 @@ mod tests { use super::*; use crate::{test_utils::create_test_provider_factory, HeaderProvider}; use rand::seq::SliceRandom; - use reth_db::{ - static_file::create_static_file_T1_T2_T3, CanonicalHeaders, HeaderNumbers, - HeaderTerminalDifficulties, Headers, RawTable, - }; - use reth_db_api::{ - cursor::DbCursorRO, - transaction::{DbTx, DbTxMut}, - }; - use reth_primitives::{static_file::find_fixed_range, BlockNumber, B256, U256}; + use reth_db::{CanonicalHeaders, HeaderNumbers, HeaderTerminalDifficulties, Headers}; + use reth_db_api::transaction::DbTxMut; + use reth_primitives::{static_file::find_fixed_range, B256, U256}; use reth_testing_utils::generators::{self, random_header_range}; - use std::vec::IntoIter; #[test] fn test_snap() { // Ranges let row_count = 100u64; let range = 0..=(row_count - 1); - let segment_header = SegmentHeader::new( - range.clone().into(), - Some(range.clone().into()), - Some(range.clone().into()), - StaticFileSegment::Headers, - ); // Data sources let factory = create_test_provider_factory(); @@ -113,46 +100,22 @@ mod tests { // Create StaticFile { - let with_compression = true; - let with_filter = true; - - let mut nippy_jar = NippyJar::new(3, static_file.as_path(), segment_header); - - if with_compression { - nippy_jar = nippy_jar.with_zstd(false, 0); + let manager = StaticFileProvider::read_write(static_files_path.path()).unwrap(); + let mut writer = manager.latest_writer(StaticFileSegment::Headers).unwrap(); + let mut td = U256::ZERO; + + for header in headers.clone() { + td += header.header().difficulty; + let hash = header.hash(); + writer.append_header(header.unseal(), td, hash).unwrap(); } - - if with_filter { - nippy_jar = nippy_jar.with_cuckoo_filter(row_count as usize + 10).with_fmph(); - } - - let provider = factory.provider().unwrap(); - let tx = provider.tx_ref(); - - let none_vec: Option>>> = None; - - // Generate list of hashes for filters & PHF - let mut cursor = tx.cursor_read::>().unwrap(); - let hashes = cursor - .walk(None) - .unwrap() - .map(|row| row.map(|(_key, value)| value.into_value()).map_err(|e| e.into())); - - create_static_file_T1_T2_T3::< - Headers, - HeaderTerminalDifficulties, - CanonicalHeaders, - BlockNumber, - SegmentHeader, - >(tx, range, None, none_vec, Some(hashes), row_count as usize, nippy_jar) - .unwrap(); + writer.commit().unwrap(); } // Use providers to query Header data and compare if it matches { let db_provider = factory.provider().unwrap(); - let manager = - StaticFileProvider::read_write(static_files_path.path()).unwrap().with_filters(); + let manager = StaticFileProvider::read_write(static_files_path.path()).unwrap(); let jar_provider = manager .get_segment_provider_from_block(StaticFileSegment::Headers, 0, Some(&static_file)) .unwrap(); @@ -168,12 +131,12 @@ mod tests { // Compare Header assert_eq!(header, db_provider.header(&header_hash).unwrap().unwrap()); - assert_eq!(header, jar_provider.header(&header_hash).unwrap().unwrap()); + assert_eq!(header, jar_provider.header_by_number(header.number).unwrap().unwrap()); // Compare HeaderTerminalDifficulties assert_eq!( db_provider.header_td(&header_hash).unwrap().unwrap(), - jar_provider.header_td(&header_hash).unwrap().unwrap() + jar_provider.header_td_by_number(header.number).unwrap().unwrap() ); } } From 158377f457d71f0f6bfc267509db72912811722e Mon Sep 17 00:00:00 2001 From: Federico Gimenez Date: Mon, 1 Jul 2024 17:37:58 +0200 Subject: [PATCH 15/27] chore: rename pipeline references to backfill sync (#9223) --- crates/engine/tree/src/backfill.rs | 2 +- crates/engine/tree/src/chain.rs | 74 +++++++++++++++--------------- crates/engine/tree/src/download.rs | 8 ++-- crates/engine/tree/src/engine.rs | 6 +-- 4 files changed, 45 insertions(+), 45 deletions(-) diff --git a/crates/engine/tree/src/backfill.rs b/crates/engine/tree/src/backfill.rs index ec0b4ef06cc7..3060ddd1d4e7 100644 --- a/crates/engine/tree/src/backfill.rs +++ b/crates/engine/tree/src/backfill.rs @@ -239,7 +239,7 @@ mod tests { .build(), ); - // force the pipeline to be "done" after 5 blocks + // force the pipeline to be "done" after `pipeline_done_after` blocks let pipeline = TestPipelineBuilder::new() .with_pipeline_exec_outputs(VecDeque::from([Ok(ExecOutput { checkpoint: StageCheckpoint::new(BlockNumber::from(pipeline_done_after)), diff --git a/crates/engine/tree/src/chain.rs b/crates/engine/tree/src/chain.rs index 97c6d615c118..e3f764beab6b 100644 --- a/crates/engine/tree/src/chain.rs +++ b/crates/engine/tree/src/chain.rs @@ -13,12 +13,12 @@ use std::{ /// /// ## Control flow /// -/// The [`ChainOrchestrator`] is responsible for controlling the pipeline sync and additional hooks. +/// The [`ChainOrchestrator`] is responsible for controlling the backfill sync and additional hooks. /// It polls the given `handler`, which is responsible for advancing the chain, how is up to the /// handler. However, due to database restrictions (e.g. exclusive write access), following /// invariants apply: /// - If the handler requests a backfill run (e.g. [`BackfillAction::Start`]), the handler must -/// ensure that while the pipeline is running, no other write access is granted. +/// ensure that while the backfill sync is running, no other write access is granted. /// - At any time the [`ChainOrchestrator`] can request exclusive write access to the database /// (e.g. if pruning is required), but will not do so until the handler has acknowledged the /// request for write access. @@ -35,8 +35,8 @@ where { /// The handler for advancing the chain. handler: T, - /// Controls pipeline sync. - pipeline: P, + /// Controls backfill sync. + backfill_sync: P, } impl ChainOrchestrator @@ -44,9 +44,9 @@ where T: ChainHandler + Unpin, P: BackfillSync + Unpin, { - /// Creates a new [`ChainOrchestrator`] with the given handler and pipeline. - pub const fn new(handler: T, pipeline: P) -> Self { - Self { handler, pipeline } + /// Creates a new [`ChainOrchestrator`] with the given handler and backfill sync. + pub const fn new(handler: T, backfill_sync: P) -> Self { + Self { handler, backfill_sync } } /// Returns the handler @@ -68,34 +68,34 @@ where // This loop polls the components // - // 1. Polls the pipeline to completion, if active. + // 1. Polls the backfill sync to completion, if active. // 2. Advances the chain by polling the handler. 'outer: loop { - // try to poll the pipeline to completion, if active - match this.pipeline.poll(cx) { - Poll::Ready(pipeline_event) => match pipeline_event { + // try to poll the backfill sync to completion, if active + match this.backfill_sync.poll(cx) { + Poll::Ready(backfill_sync_event) => match backfill_sync_event { BackfillEvent::Idle => {} BackfillEvent::Started(_) => { - // notify handler that pipeline started - this.handler.on_event(FromOrchestrator::PipelineStarted); - return Poll::Ready(ChainEvent::PipelineStarted); + // notify handler that backfill sync started + this.handler.on_event(FromOrchestrator::BackfillSyncStarted); + return Poll::Ready(ChainEvent::BackfillSyncStarted); } BackfillEvent::Finished(res) => { return match res { Ok(event) => { - tracing::debug!(?event, "pipeline finished"); - // notify handler that pipeline finished - this.handler.on_event(FromOrchestrator::PipelineFinished); - Poll::Ready(ChainEvent::PipelineFinished) + tracing::debug!(?event, "backfill sync finished"); + // notify handler that backfill sync finished + this.handler.on_event(FromOrchestrator::BackfillSyncFinished); + Poll::Ready(ChainEvent::BackfillSyncFinished) } Err(err) => { - tracing::error!( %err, "pipeline failed"); + tracing::error!( %err, "backfill sync failed"); Poll::Ready(ChainEvent::FatalError) } } } BackfillEvent::TaskDropped(err) => { - tracing::error!( %err, "pipeline task dropped"); + tracing::error!( %err, "backfill sync task dropped"); return Poll::Ready(ChainEvent::FatalError); } }, @@ -106,9 +106,9 @@ where match this.handler.poll(cx) { Poll::Ready(handler_event) => { match handler_event { - HandlerEvent::Pipeline(target) => { - // trigger pipeline and start polling it - this.pipeline.on_action(BackfillAction::Start(target)); + HandlerEvent::BackfillSync(target) => { + // trigger backfill sync and start polling it + this.backfill_sync.on_action(BackfillAction::Start(target)); continue 'outer } HandlerEvent::Event(ev) => { @@ -153,10 +153,10 @@ enum SyncMode { /// These are meant to be used for observability and debugging purposes. #[derive(Debug)] pub enum ChainEvent { - /// Pipeline sync started - PipelineStarted, - /// Pipeline sync finished - PipelineFinished, + /// Backfill sync started + BackfillSyncStarted, + /// Backfill sync finished + BackfillSyncFinished, /// Fatal error FatalError, /// Event emitted by the handler @@ -180,8 +180,8 @@ pub trait ChainHandler: Send + Sync { /// Events/Requests that the [`ChainHandler`] can emit to the [`ChainOrchestrator`]. #[derive(Clone, Debug)] pub enum HandlerEvent { - /// Request to start a pipeline sync - Pipeline(PipelineTarget), + /// Request to start a backfill sync + BackfillSync(PipelineTarget), /// Other event emitted by the handler Event(T), } @@ -189,26 +189,26 @@ pub enum HandlerEvent { /// Internal events issued by the [`ChainOrchestrator`]. #[derive(Clone, Debug)] pub enum FromOrchestrator { - /// Invoked when pipeline sync finished - PipelineFinished, - /// Invoked when pipeline started - PipelineStarted, + /// Invoked when backfill sync finished + BackfillSyncFinished, + /// Invoked when backfill sync started + BackfillSyncStarted, } /// Represents the state of the chain. #[derive(Clone, Copy, PartialEq, Eq, Default, Debug)] pub enum OrchestratorState { /// Orchestrator has exclusive write access to the database. - PipelineActive, + BackfillSyncActive, /// Node is actively processing the chain. #[default] Idle, } impl OrchestratorState { - /// Returns `true` if the state is [`OrchestratorState::PipelineActive`]. - pub const fn is_pipeline_active(&self) -> bool { - matches!(self, Self::PipelineActive) + /// Returns `true` if the state is [`OrchestratorState::BackfillSyncActive`]. + pub const fn is_backfill_sync_active(&self) -> bool { + matches!(self, Self::BackfillSyncActive) } /// Returns `true` if the state is [`OrchestratorState::Idle`]. diff --git a/crates/engine/tree/src/download.rs b/crates/engine/tree/src/download.rs index 12b2bd189288..b8ebb8415c8d 100644 --- a/crates/engine/tree/src/download.rs +++ b/crates/engine/tree/src/download.rs @@ -20,7 +20,7 @@ use tracing::trace; /// A trait that can download blocks on demand. pub trait BlockDownloader: Send + Sync { /// Handle an action. - fn on_action(&mut self, event: DownloadAction); + fn on_action(&mut self, action: DownloadAction); /// Advance in progress requests if any fn poll(&mut self, cx: &mut Context<'_>) -> Poll; @@ -65,7 +65,7 @@ where Client: HeadersClient + BodiesClient + Clone + Unpin + 'static, { /// Create a new instance - pub(crate) fn new(client: Client, consensus: Arc) -> Self { + pub fn new(client: Client, consensus: Arc) -> Self { Self { full_block_client: FullBlockClient::new(client, consensus), inflight_full_block_requests: Vec::new(), @@ -154,8 +154,8 @@ where Client: HeadersClient + BodiesClient + Clone + Unpin + 'static, { /// Handles incoming download actions. - fn on_action(&mut self, event: DownloadAction) { - match event { + fn on_action(&mut self, action: DownloadAction) { + match action { DownloadAction::Clear => self.clear(), DownloadAction::Download(request) => self.download(request), } diff --git a/crates/engine/tree/src/engine.rs b/crates/engine/tree/src/engine.rs index d77162e4cd0a..2010c3768a42 100644 --- a/crates/engine/tree/src/engine.rs +++ b/crates/engine/tree/src/engine.rs @@ -72,10 +72,10 @@ where RequestHandlerEvent::Idle => break, RequestHandlerEvent::HandlerEvent(ev) => { return match ev { - HandlerEvent::Pipeline(target) => { - // bubble up pipeline request + HandlerEvent::BackfillSync(target) => { + // bubble up backfill sync request request self.downloader.on_action(DownloadAction::Clear); - Poll::Ready(HandlerEvent::Pipeline(target)) + Poll::Ready(HandlerEvent::BackfillSync(target)) } HandlerEvent::Event(ev) => { // bubble up the event From e5a634ceced373bd87e308025e754602113376e8 Mon Sep 17 00:00:00 2001 From: Roman Krasiuk Date: Mon, 1 Jul 2024 08:41:26 -0700 Subject: [PATCH 16/27] chore(execution): verify cumulative gas used before receipts root (#9224) --- crates/ethereum/consensus/src/validation.rs | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/crates/ethereum/consensus/src/validation.rs b/crates/ethereum/consensus/src/validation.rs index fafd0ee4217b..523bed077dec 100644 --- a/crates/ethereum/consensus/src/validation.rs +++ b/crates/ethereum/consensus/src/validation.rs @@ -14,6 +14,16 @@ pub fn validate_block_post_execution( receipts: &[Receipt], requests: &[Request], ) -> Result<(), ConsensusError> { + // Check if gas used matches the value set in header. + let cumulative_gas_used = + receipts.last().map(|receipt| receipt.cumulative_gas_used).unwrap_or(0); + if block.gas_used != cumulative_gas_used { + return Err(ConsensusError::BlockGasUsed { + gas: GotExpected { got: cumulative_gas_used, expected: block.gas_used }, + gas_spent_by_tx: gas_spent_by_transactions(receipts), + }) + } + // Before Byzantium, receipts contained state root that would mean that expensive // operation as hashing that is required for state root got calculated in every // transaction This was replaced with is_success flag. @@ -27,16 +37,6 @@ pub fn validate_block_post_execution( } } - // Check if gas used matches the value set in header. - let cumulative_gas_used = - receipts.last().map(|receipt| receipt.cumulative_gas_used).unwrap_or(0); - if block.gas_used != cumulative_gas_used { - return Err(ConsensusError::BlockGasUsed { - gas: GotExpected { got: cumulative_gas_used, expected: block.gas_used }, - gas_spent_by_tx: gas_spent_by_transactions(receipts), - }) - } - // Validate that the header requests root matches the calculated requests root if chain_spec.is_prague_active_at_timestamp(block.timestamp) { let Some(header_requests_root) = block.header.requests_root else { From 20713e978567e191605d032ecbbf4facb0c66211 Mon Sep 17 00:00:00 2001 From: Alexey Shekhirin Date: Mon, 1 Jul 2024 16:59:42 +0100 Subject: [PATCH 17/27] docs(book): remote ExEx chapter (#8992) Co-authored-by: Matthias Seitz --- book/developers/exex/assets/remote_exex.png | Bin 0 -> 1155305 bytes book/developers/exex/remote.md | 489 +++++++++++++++++++- 2 files changed, 488 insertions(+), 1 deletion(-) create mode 100644 book/developers/exex/assets/remote_exex.png diff --git a/book/developers/exex/assets/remote_exex.png b/book/developers/exex/assets/remote_exex.png new file mode 100644 index 0000000000000000000000000000000000000000..8606616e8113bcbff94402a29554059a31a87777 GIT binary patch literal 1155305 zcmeFYc{r5s`#(%7^)9ATmMo(cC6kohOr=u9R0<_2M2ci5#wZoC43Qh43w2@9-Drh5FLF_V4#ylWh`x8edYD*&gV4}06yHS8=xW~aB$c7 z^*bsW!s9^#qrYxPYr+IR#A+m^D!j4j3yhOIyk*5k$s~T_p_0kliRu&hz6av<&H{?r zPc+9p1g<0WQ&UOC!FxaRcIf=$yJ4TeLywSZcehNMyveh^z3dSAxH+|J*v?B}lKtG* z!@)7g@G1A`#5V+a^Vs%87B+4IYiUwyr}*lS(-Eoh(Fe21_l6(eHx_wovnPb}B71D- zjz?#?XKG_u`r+439ISJ7!}bIwwLU*3q`gCjrU|6&kUlM=*d_`yUCwrVep-S*)`Zo_8f$1Fv^p|G>+%U>0V;RXW%ZTP? z*>{LiCH-1a^HH9!R6!k$eb@PRq%u}hV&Q~!Q@HfcF^b6+>37?3RJc4|=l2hZ#s)VanF^wW7|oF>VT zocm@nvwtXczv6B%cFL!7)0)tpl8d|o@o$HEJnDE)5T8Wfy2{>$_f2#h7ZqbZi?)() zy*7F5%RfAYMMC>%aAn%^0i8EjX4?d)s3cV!tD0W5&mRt(_~ac=h3YE3Nst_H%5#bVbom z!)fi`S`6)gXy(+4!$ope;HeuYO_eW_n$p$AB%Yxiwv~&f&zMA-bO>A|AZWe4Ns9g6 zLS2qv$1$#uKz>|ZUEKk4d6c*Sqr8p?E_-*p6GX|j2qf#Yy$zvH$*Ab<7_~erf^>XZ zyCp&JktSSW^dH@4h%Ey9dh)yU&y z%jv`iihILM&USY>J`lY1LPh^*=Uxwqfxy&rh!4G8Dyy5c0|hTjb=O@!?ic>7;OiFU ztwulU`)=oMJW71{^=You2qnit;&(8nK2%dAYl87)lkkMArUd>KsUd#+?Yd}{pv#Z^ zao9=#SNfUZarwTTx?7ySZ#=7gPdhE)ib>xE&2yR}_>9Njb@oSp(l6d$QRko?e4Dl-cmY0PKeA9wN$WlDDMbJk=Djvkc_+=If}D5@gbo8?M|wv!5n*z=4s@?oVnA>`)JU+ zt+Vx~Wp?i;Z)-KpSR6pU_$4~^K=}cq3rlccqQI%Ir$W>d?tg7~KYX{g zv*~!#6}xX8%dz+H(UH;lS2MdFrcYd`Zaiu0V*706;e_}E#lu-UCe=9qeOVXBc>Cq& z#s?248EaogCf!PGOcZ~&q+0EALDe=PBk_y+qf_%58tQNtyO~`j=xX+?sW=L-=3tLw5A^KeAQB7aQonq zK_jnEDLE;%kE^XHir*EPSHE99mHv1jr%!E>zBs=C*PhXQp|xB4q;{2zGg8}ewWZ6! z0PF7I+U7Mh=i?ndoe-t^()Jy(%B#?GT>FNWm9&wpw5HccUuHpm@?tWpLps@|yz_Qr zrLvo&Cu?qQ`iR#T??q2FZzIiQL8&qO&ZsueB#^qNG2kHEAhjyt=uvl~^ATQdsRJJpvx?d$W4>kDD zQf3qwI+M)Qsk(PRw8wBPVOIRQ_r?dC>o;BBth?o;$YogWwgs5m)^~e6_9yI+*;{pD z{qSH^`~BWRj{eZu=@-Q>Kfh>vVfG67PmzdN@F|=DF*w}%6maL;`ESRoR5zUadcf@b z5U%)jvbgWT*OGgrZtPh*`SkMY!c38Bae|Vnj_pVTyFmq4E$twy5c(*>JPaL~AA!Y> z;;+PYp1QaCLQ72L@SMUwyOQ2qytHy@@XhAKn=jv1E70jbRIbTtJeYGy?QjY{7p3J# zD^Pl9s%a|vamTe?*Ss?Q$Id-@s40}a&@^+LC;hDY+4A%0 z&+4D%8BF_iyI6>vGyg+aeOFMf(d&9YpLE?5NFGTP`(gDfjHQ-#VDN*EmJB z#MDmVh`6UQJ)zY87D4lR)iH_Yl-R-8tWDU-!9%~_SRaJZtLZs3)MXq#;O?u&?PKAL z#8S2RHh;4n7R!Um{^H(d^G-4S+w4)vKaz`lRZeJlKAzVt@;y(lpa{2<3jzz}AJtJ` zM!vlN(naF1vXjaQ<#*Pr>+$cc=U(3kYiQ7r@KqW3CTXo~F;rl;@W#`q=IyefO00HV zTztUI7OSUYy{ZH=uJ$)&=bJ>g-YIFb9p+oihb(4`+zb*g+&t4iabv>#RBmRz%1xeE zd+aGnYf7s|UPkWQ+{MpZavt1rsCnE_fp{zRwl|0SnE@pjM0NlnwG3$4Ocq&_7SV`% z%q_n3b@uo4`*x92ai^v%Lo8`!y2E=3YYQ&nye;AmLNkK5ju)Ysq|{J{Y`+vymIdv|+g8mzH7>!{^c2=vKTG zDreDkPHRBA&yU5brwk*`A&|^HVD^f`n$di`Fi7L&RAbL#nMYT0>UxdHGu8dTZB-t4Z!Id4fMC66-Xj_`5{vM=ka`?l-nLnz2J@u+cJf)muymW0%x>3unf`o%&C>7U zHrLKC3S1Erd|$_ty8po+R8Tutc`SOIbY3k<1GRk1@{VUf*uJ%H>9BSe;;2ER1^^Ub9{qGEs#6NlOh5qw+Qxkuv!_3`m=x*zii#Oc`1jG;VZ-SSu9b6U= zI4yAL+?ne>f(zB{BxfVHEYCT!;Unh#eIk#g)gJ6E@!N7@`vcEPg_Cgo2QQ*dkAwPW zFJ8QOIU&$)>%OOfQqQ8k?kpVs+<0C?#Wc_I26JRTzIwzVzi)nt7m$o&R#B1_CfDrk z?d;A?yPUspA+Knj{VPXt<5~It{r%q=`2T$dM!V094&pnmSwmk$!R!KF z*KTFSdSva(_#RA=2uzD;@x9Ch_0f57IX00;i)sZ9jocLjk`QBRI|4qCpeOSPSJ|B~ zCH-NfZ!w)Jza?NtSa_Mi+@VM_NEg9F$F zkC$b`iyRb#7SC_7dLnz7l38I5zDuUUy)T(8}AazDQue z{q#R9r51c7RTRb|SM^)2l%eGo8RV$|p(KVi2UorCsyE5vr-Ri^LpXci{ZE4mI4=&> zjquEvlg}fLM187sP@XNyQ_g_#qE7TI#u!xcyvxb8nY>=$|Lt`B$~iDp!zxGUnps4RxQ|6Pb)hEF&7=~Y`Y5*n&Ec$#`Ap`+na2M~gmPzp2V&#xisQ!+IraeUR17YAwG46yUR_tf%l(WIv=9{Q~Wx zdkc-^j1SzpQN_kxc^0o3hmHTg!W*0ce(_rU-whRTh^c5&Rif^|(5yDEYqMT-_Q?=2B28sN^q=;T>c>Vg5jp-ek=Y zutG(u}D2?kaD5k|V;O3uT z?E-i^Q7<&Jrhk-A>tlCsKwl6L#+|*p|9DWi|Aq*=@0Twir>`>_jWp}GHuV|ed9hbkyoqBo2CE_F z6f^~f3`BVVUcmUa#tz$|C~K~j{P5W1h-#`Au+VooJU0yI^9(O3j(v?2 zKX9jk+=1^P*PwR5S_ppv)n3#}VBT)=-)h3d$x65jucWCfrBH&MM;5}LE#_%=@Z+L#D z?(V&$z));$7IHAhcR$C;bnk;MeL{2i(~_Wt*fbF(jm7&YZWhWZwUCqP+`@Gs_bw8~ z(JS6$SpBOGyoiv^eF`--Jy7^MP>_;FugX9UD!l&&j`9{7!n!lwv2a(BB~gHTkS52xXr5$mwf_t$`{K!aAD zDfBfvM(XjNX$tn2m6Q^i-eR341JNwX5^Q~Q!t&`9g0y%FAqh1jw%#1BK`i~*fL{XF z8xIbopyCT|=+E6Tiu*inXTaCVcmX-mS^pYv7Fd2NxR7w#PH}hJruzal`%ZXUW>_ zV;=@JFIXAe^!(p}|2sYZyD0uYZUr2~B9H% z`_o$Ut7(=g17|j;7Sbf)-exyfMRo!R@1@1*_UhB}t zj2_Cg3BJ5ewFuqj6S~Kf#j@tWtnZScgee>#*siBBzq&6UtyRi1=hi8#?%{2~cA0-_ z4K|SV_04$)3Vz@3`Z3v)U2Al?K{RohT(C=GdDqc78dNdiHMKQe3d=C=hIf9Cf6waQ z!Mize^4EjVGe_B*fDids;$b*#8qMq!DD>j|_(kY!pT#Gusx(QddRG2io!1r z&oJreQTY0%lgy#q?%*oqR3C(+gz-??-Nrp{ou&ep^PHUe@(>W-5>_AW_Ip+cp}I%M z?mL!fc)Qjp_fsngf}ragI2Z7>sO4=BmdbBt!F(|-1yG%WA=C0_B>v1CQg^PY)$$h? zwnIGhz*KIx@Ew~YUQI8+$UU0p_wCp~-6{C|&6xlb{hGQkq_2V20R3wMZ?mr9MOmUc z_fpG!tik!qULA6me}ENm3N{HR!yGIa29hct;!GRxvhm}jsqPGXh&YXaLCf)Qv6Ne&jiGljs9DLB!8zKTxXAnc~RG zlDi7bruOaZCk@g_{J@~T8ML5U{{)UTU0?+`)(;uFN6<*J5~}@L9A8u51{5V!Vdh1a zIjh%w(wc2KCHx}rQlIe2DfH9NGEWG%am^>zY{!MrQZ0$6uQAhL?+WF_mnRPd=?z+w zOU8b*0{6#H6{O1nJ}np6a)ayL?4adCr{QuUB%+1T zN>~%LIdIbUK8u<9C~TYLTP!u;8h}ZB6#EAWTQ6<3Rk+WRP-wc4S{-{=$T(LU%Pcax zUHggd&5Y?Fw_5zg2!7=X;VH2xgk*VXPv}Ej0an~-2wnFYoR0YypXM!59_J7ef*QLs z&S7YmK5EJDQ<0==sZxEK6dh<0xfP2=U*zupddpiTfu+?OMHdNrd6H_%5mLorC>@i= z>rYfi#IYJKJ7JiMxvPiRzO`Y6yfV()gqtcpCg&=7WfLFK&%%J;z@Yzm-PL^s15Y)o z2CxnIaTn-&bzvE>dQ;7P>~B4_|EU5FxSq%okf2A<^4l%z_2IjYVnPE_`7n+9e!Y^o zhZ&yX_sRR_cCh78;kW>~Dj67(@-o?{})+8ce zS+&91e}sJQ8t#tbhMJEO+STZQTXLCVTYTJ2cj`Vk`Y0uET+o(mlQN^ZIkTo#b5>In zAlh3i-$bpI2mIbv$1E=ma5a0SI&&sVa=^fE;5p2Aq_H2=jyu5_tlS~{6$TC?RixVi->VRc3r56(?`|$-6a*D=E4hOZ{PXxjcieGdOA$->VN@m7 z3tRxor=q8$_AE>(!mN7U{oHT@Hjsmnx=APDdFw=?HrI)R@jKcs7<( zvPrHjDvTUzZg4=;8{kq4DOrC+xg;GkuxhF;;n8IIi%vcDiLjf~w#f}?nL{8&2AXgd zUa9$b1*qpqlZ_V|Hy_qe!$j3>k&5P^Am*!!w;VnAj-iwf!2t{V)((LFOh`tk$1 zDJTxBpH;aS5Ai`LnY0UsCqcs}9hV@ z9!=5FjWi(GX6AX{$7{8py6SD>uF|_uDNYGh@of>4$MKfetv8<@*hO$OwThifkF_UE zOex`c%S44t>?9VdawPHdVTAaV0y^accwAydcaeLF)90Qt!P;OyegkkVC)9qXm;DKe zjV&mZ30o*j1#88VPbju4v=B}+*ar;rY=3;@m@^SO6FBJ{%B$B2l86fIooNaFI;$z>P;|RL`6;|d5;DdrP2*(q z7s9c$@J+Er@D#)t)5ZNx?xCl|E$ctY1&Qc8dXeqIkrSChl5BY+^=(RWh$_lq(<>qNktY&Q~mQxbCF# zR)V*(na>R1DxpyKz4A76k{T2RG|PdNMNZ@|9-i5GCukP%iQ6KV;DKL1K_^aHBJ=l= z5gE@0elyEz2#e%oHc)DNFK;I00~O6-#?=s3dD&DKPJq1GDsOfQgFW%e^eH8YiJjA> zOMd`sY9-m>VDYb&g!L>FyM3)11yui@62~Q~rNMi6UXAC){3AVSl*2*7vy-umO5f?} z=LVKmO*)%X{SDWfOfWsp`E!?2cip^b)w2@TpBZ^)(e(R7G*NQ(5gFDU=9wy8_{MD} zu;;uZo<=J^zm=rg4jParP#+e`SaCaV6k!O&6qD z86_XLkHzxEqc|v*%1xn(P~Zq20hfR-UJl2BNj)aFSFBpUlc92^pBXF*E0~4yi8UMO zVJb`n7MS8^fMH%GhncG50lj3Hm$Xnog<-I>&}2b_XlWSi3irgTr1>8jV3vu$TH{sr zv4#~!|DF8`zJ_-D3^`e%oKd}onhHsH_5F?C7S6lC1!dvwkN0Xc73h6A`eSq5O7v8s zpu;Irl8Kdj%oPJ%MQr)6)WY9*8|$0Xn;hYloy9nyAGtLg)p0eYi8fRgaQ{XOZ*e$C z`s9izXr!zDf6%n44JWddc^%p& zeGB^p-y&sMZ@3lnsHN#B zl)nBQ061OzmR0*YYdt;KX)64fO~#9wQ}-vK)rnev3A`s+h-1|c4w>FcP%M>9ajQo_E~D#hFK`3xfo0NHsE1uKpT_jH$D8l z=%dQ;n^UEljinQcQ?sW0lLx;tqj-mQRU2>gQR*5zb2_WH%hf(Wa^diMJkj_xMq6*9 zr{FWCpeL|56RK;6fAT&QI)q7#v%-We9)$Y2qs( zZX6t^9+FFn_W+)Fc>#B(C8yvV(DD;4--xUT4()efc|+yg`fssHqap?q`9qDAoLth}`-?h}kENgX9#$e|;(jaizX@N5_H8R7Qh|^l-6;N>)EOa1vl^31R zz!dB_iQRVoB%Nv8vyWDn#RXog&gkRRJI|yL-Fs>@N(k3eSD)*7y|-joA=C?CdW|)O zE%?oOs60Xcwxrog5)iAe{#0nA|Cr1B@fdi^g_Oxxfs|JTCXRu%EQ*E3R$Cv$=7>k^ z(S7<`RWH1wEoW}`bfW1tAPeU*Cd=)~5k|AgQ7@gy4%RoHNBhW=EI5i|#vDjzn~d#E zoq&$R4>ifIVDr}gY*L8zP-qY?K$0LGtoy&AM#b}q!ce-Fw4(1cPa1iypXc}E%w;z4 z#4RGm<;py#^_8IN9_51rI|Ba2#{;5SMVU~R<40Ig0k?=-2?3`3CA_7Kyb&$$Qa`j$ zH3HtFS9#B53n#jm!8NE+Aq=+PJ;b-nCVz;{+oL*_F-^{^b9vZU`)CC=Vmd-7SWR0C zN}<2ctMW9Q*0?`<9(}Gho?Cw}6tVFMQbQoHP2F?XBiYo`@~meAjDnM&z8kMWWDTeKGAoEJ&3+{pVX-AFJeRtq&>zb~^g z=SfJ##|Jw~k4*)GrDe67l;3ly?c->U3;h64LGtP_iy;Gpst-ZunyV1r{3hflsIo;HW^mUP86; z$VAyD+Fe@|Z`s-b%ppk@_9Rm+^ZmdJ!tP^Chc`_BL89A$gED_A+)sh#@Iu}3ed1xB zY;paqN@&@Xu1E3$-@3YY){Z^7rlI64<3=;5Up9?nM~}|d&q2C?`lRJ&F{zOQTTfU)?iriiHsh+&UBf;mHE}x=L(E-L+m}=AeGi`0VQJ|wk+UCnf+KyR26pQ% z?J$*}{u$)%aV*CL*YJm@ki1l+4IC4V3Q%p8%43OGPYAHjX{>K@Xg%l~t9yk)irkd2 z8*B2|wZ@=}FDTZ3dlX9Ajn#n9a{mNiAS165hgIIOIdtnG*ma=9R`BqYwL+O9c+nl|~Y1?8n&3vt9raf;^I9J)7IA+<7Y z{qi5_{||rSu_(F*AxV>Rh<%_%x8_cFo5(2D6n1i%zftd4-vRu}&)5uP^9nK9v*kKU z{%)by-QFtUXR~eEX(k5J!kc@`RkJHqWe66Oh%q1EIr&S^7w}I#*89N2ULkya-=Vd%4$MqkRp*T1A$JVQ)#MJm=kbx9lnGq}Jr@T;`FRTU)oZPW z`Y&8t;svY{ z+vM62p{0m+9CU^CJ8VC3@c4QtJjiU#&PdOI)3@R)#_6leo6n53NM}U5ipH+8Iw?Z9 z3e9hFhK))PwHk_?_ttCr6zp2Ia1@FwJ)+ zLN)}1W30>3Lk0`k|25hwiI?0(=pi)N4keH_qzw9xaL|xO#%H18*fPydD2t}Ue6q3@ zIK5stH5V$!nhdgmGV-H{J*nx*hcV#%-y;T2wXlOWFDQzbDAylDKm31uvl(>#tI%+2 z-0=+%bvv06a7eZxf>_-;G2MgSp)@m-S-D1CD~< z)!pdav}1VRiv#Z?+M>U{+>SxQ`puW#)uaRH8a?Yq1z4kqK<0tjp2uHpEs>uk4Wxtj zP-feDoGq<$#bCY~3EEv*^dCB<67zPrT^08DmB@xncGOGdt)GDbYtHJ?{K)=HYvfv1 zpMl&vM*bJ;s$#nOV!HGPfA~BJ*b4lqzpcWlI?!CaM#*=wdRf+hDR+_EZ!_jT47qnY zP_#lk>3>3VTMMeJDvCh&LxE<;2Uj`N4Lx`^6*fhFZ}vxL;%iO+iJL(6)Jtv(%L^i6 za-;OLVN~SGqAG##Zax_}&gvmEc-t^-@jof=c)u_odJ9OBAzTs}-yDR)G$lN7YBiXC z$J4^jm3~o+)Fy!G;g970+7lY+rvSa`8YAkJPJ=uP8?2t8VD+tm-YvNB$1GGoU*VobPNnm2I?q zrx$SL%{cv>TTVc1&W9A34< zVnAcCCkz5{{+a8R+(U7@#I&&$;FxggA?Q_FH-QpPy&F#KEp~Bb*Xbd(>6>wkcJ(z{ zzDUtu*OP{@84pgtj#t*ZVO#Gz#k(Y9<5$23SYyh#-vL#IRUec2w2#iU9gaG*mX0ZS zM$%6*z|7fL>8{oVJund7D4+Qqat3#C zxHL;%4m(1m*@r#6v8N2fyZv z_BQRUHFBCQqYkiBBo5)|_jT(f<(l3gkJ}#8-GK=YE`$Rtat(e+I(7+Rn93lFBVMB_ z36iLIzuj2s@g3V*__pR>8qe1-l0$|GZ3T7Txy_th%oLf=)twg^9c6@V2bE2<&YYkzI_l4@h$A8ch5c|SMB;%tfSrjG8Vb2!+3kAXT&KkmK zC6Nomdx1rVo7ZN+;%w9XE-1;eGs#QN6T(4BmEGQ;>e~4 z7^cL48m!BvR;&BzlAM|Pj;oX|q`RL4gTjsvRWmW* ztU6j(N$RXPwC%(W7xW62!ImIiP&a~zB;hzBG94xk0CSOlmBl!AG9 zumP`^UuPf}gM}o*p^p%@A#zLTOd4PciEUSbg5jI3(4KDFqgV+p`3hO+PI1itu-eVT zrjvL0y#w`|vmsDe#C1nmM!fwG#tA4p0*=_)kqKpe7e!xUpO{@_U-~O4m0I01`NgA8 zlw&6brwtmBh9sk<-SwyK{J~fv6&AKOO2u=R?z4~`@ZJW0aweu1ocb(Nu*>>*I?%Tk zR>1Us;-KqKZup!UqV6{Em8_aOsC{AwRU8w=YdT$8_FDnyl~@k_@x)DB_JVYyo_!HV`Pi2J2HR;OEj>BbmpOi zXwID~9wC`^e1a72EH0#>90U7pU#P}>yJuq5?E4V7d`bG9!&0s{A0-)eBebEs$&V1B zdSN4ITu@O4-9g9t-$aTEeY*ovx3|7tf=h3w6urr$ymZKRIO^}8#eGE5X@T_0%kVCT z)dTBn(-qfF8#0_blFFV*q%Y z2@ANwRv$;W+rx5j>gTk2H&Y8%;5SE5w3!RN^<4>qWTfGJ^R;s=#%*7Y=5H5T7`%Y} zfW<-A((cOP7DS5ry0ikey}0UyU@TBZB$O3^ zgV>{Al~2@M)A-$1Q3b8lALh$J3^I>JvZdk1VOKNPA@Q0UNJu?Zq>>LUS$>rLkz$It z^cpH|ifn1p;Ja0Pd_|jV-AZ5sufhK(V&WqwD*0$=XjFM2RCE5Nj1j`a1U$e&*dCeE zXTsQrCV3iW%+bMGxb(~!O7h^t)WI4mu^u}eA_pg$3=cegz>9QMDgAY6Hd%3>(Oe6u zLf3GyGGH<}$yO0{>1RK(pql8Y6owt`Z51BfnQhgQy)DrZ zkCdBHnkU$kS=L2V-9(s$X1*hNg%O(QY-ra>66!BCN#wcIfXigwe((_}W%?TB$3*~c zPZ#{s=?-)erXkd4;S!5=^2^}PpODz}77~KdHW@Ij3oK?0qJ_YeNr(2c7(B3rpdr(y z(aP68rP)FmEPF_~Gp`SdTSM@rhYL`8a9~kt;4P5! z=R=+WO7K!*+rCXFE=Z8xEWveD@DBm!)U`Y;b}G@c6&&e70$)h;z3bIv_-zGU%3YOB zXigLBxVY6Wf8wVg)vkF_XYMU&JzGf2PTpv)8@Y&nvvJY%mhPj*{wLez zWOjeo8s*@zuY_lFW3@XyYGOLs>H1v?c`bvPFzIfj^j5b!%zg(M?UMXE#BSt(H_&ti z^w%3W&5)RXCTDByXEWxXAcleU6Xi-N?EHS~{aK!`;j}15UVj$4x+7-AorfzSNj9&< zEq4hy64`^dunhEaDiBh6sBM|N+zhJAtZx%vByc9MD^ynszpKT((aPxQYl1Ygfjo@< zyFDSFNu;rXuTJ26f7mX8Q`VgFBLQ)%kYBeh>G0q!B$@pud{ts0=}eBENh9&d%^`1l z0p1s`Un_!@16q7P3T}SMOD?$c2R@ZhAx5MZuNn9(C(pYa1>Shxj1J6VoQNL=KZKqbbylCGK!e-kqW~{|2AylAwbgO;(mPwDdtR3I%c8uDMq$e;^j?PcJTIFui&chezHW{LCqHHrU zYaCIz@1QCJM|V%{UBFIiFZaVmr)UZ$s2Jss5MArh0wtXhd=0`Neb7)B-Wr9kN}jA!7g$9Kw#Mo;63vm z`%&Hwyinv}-Vng&L^TqVxx&c`4gg2BiZY)brolp3^VmF>Jh;@r4qon>=WmkF)+AgB zE_W3w*!Lsz`WZbzNJzDi6e5*aYIkV;Ah__Fj5(#hiYic#-*v3J=6iUbNC{q}eem^= z_gU4~mh@!5O>*{W8N}t9oRO#k>r-x9(AkJ%Le(e!PprNyd?-OTG8_6upBY|SsA z@j}jo(meJxW@U$gsw>ZcV{>Z7KwLY|Iz{Z!V!51MPquEwC)6G+WhM5nN~9NA1b_dB z|5Oq$kdBh{j2NMQnRLo-?G6dWi7gh!;k9nl8zIpnpK}qFrVI&@;UW!WXOz#9MTJX9 zNeb%yS8Q#%D3V`!QjZ2;A(s~586_+7xquF~tnVfSAkOHXq!u1D*{jw{5SI*N12vTK z^$RS@l-$0!I7lDfiRgz?Sep+bQ%Y6@ zOujALZ{~X(L#fLX53z?g5-!B!3cV4cl+4HMv`38Cs}i}5S`lBA5@Wn@w48ZenCDS6d?UHWR%=bQ zqhL8(?BJxTS4*Wyi(`EQ`K66eb~eRP=RoH8H*k}m+=5a}}K`a-JF-^Ngt zK5DaN4p*4asS$Y}vIG&MXGd-UmH?TT#j$3RkBRf!LfsF)QFwAej{dSiJ0&T0S{wt; za?oUK-%jZQ#E>+R_6`4^jsSiR=P+>qBue#G60ilNrdBRsVA5!-;>G2?Wy#Q@GRlWB zOniE-S5JC-@HpzJPqM}Y{vp}ZM332T5UJ{7%WE?~i#V5!S?Jsx?8x+7KIBl?*Py3=0HU1im%8>#)^C`Xdh z^bnrX7t|>P#$jCVrban8YTZ?<3@WX zYv+xj$+xkLA1J8u@qHWq+ME_WYOFc6HFkOra|$~J*DM1gOeYa)@4tNn{_S zpP2v0^YnyF(5c~PeiEvJkQ+MI$#V~j9(}@vWMwi3=?e3NEQxkr%X&Y7;B3M7C)!zj z+4GNA1ErBUPPZ)q6>VfyiLF&5-TEcgr4F7&QAA!S`wy(kk!14a8c&x-pNVrNa!4{z zraZa$BUEq}!vY;($q?1ffIo2{3=vq_qZQcUO(Y zmBPH6slphiJ>qOtF$DY_B3>NA) zpLI`W|Eg;=!?7ji5287$jA(O&r^ng8yO6`Tsz2~`NmpqxJu*@YHJPHZmNh^q4e&AG zj0(GS5DR)2)NsUHYuVmqZ@IGHREx###ysu<;`q|?w<)aHQP&>AOcFJTy^11gM|wf+ zz3lTG7w3@kqg}wDjgV@+=05e<29PI%00Pv&yPyZ)0YDB2i$HPWw`T<8g&47jkw%a| zB3w|!eS{Nh+zxd&Lq2sEjjCs|0|Ak;#fZO#y$6^;5h@R&ydsxWU;_<7pquAT7h>o` zRvLa7#jM(^{NC5hC$f#6@vlg2UH@tcPXz(3iGqT`Z^pVBd4A|(o;Crc4;C9>N^uNF zTQq=SDLhRc{ETFCD8=a8&u@drI89#zLRMP3Qr&Nmbiw+SY=Eli{O!()>*7Gxxy|qB zrm0BJHr76vwO%o5@2-zH`!n9#R?h#li|NZm_FhhLphY(b`iyBF${=~%UF&p6aqTH7 z`>e5efHINa7Tt@i=(|3U=`xTdGF*t0n^B!7)>OFk6C+QwiP!*T3*Ewcc5px3P4EP7kC9=WVBzZBQ z=GSY&`YUhej_q?p*;9HRV2vlZ_(yc@w{>CSm!NGifA?m6zq}`~;NbkH-GooMF|Yn z22YzH7xR0EEe$c*NunpviKh@N-I9%{L!iS@vV?6{bA=B%7744yPQFj)MR0cV_JrUb zT*`_V4QmXwPw}jJST1K5jemWQJ!&K z?6E@W&h79|P3M&dOg{bszQd?qEz4jy!pVenoqUa(SOybwm=QZhn0Nygj7FE=QmgI?UJ%`4>Ft$oQ>>cX7N(D${~jd-nYZ0?h1K=Lr-Ra zawy|)+|c~YVw}4GR1=$_HB1G{t6%E%7DeD{W~unjwZkh=UUUxkF7C)Q8u zoj?#v$}O^x&ih?t6QS0QK7R>DK`=&cCXN^U+eO|Z0%ryF^xXpW84AG6I|g}`#|eOk zfn5NG3TYB}UOQpUn3v4l4M?j~-M}d<3r;cOP-)2sXi4+01(1sY36}tV6Zas?5<(F- zfKyaozIF09;wc-*zM&DLXRE0M4ytAsLXORZeN7^h|27-&n|g>-TBd;2zk!jG;5Q=p zhcFS`-!hbpVQkwe#eEc3ADvivoQA6gpAq#5*lwiz^9STIa2AqP8YufX?!2K#Jm}&& zjn(up-?OU|+vc#c+%8sElz{)qZMU}FGtO(3K#x(~q%~L}2kQ~!|uVXky*VK@#0#3C_$BO}3 zdoos86TcMTm?(y<0@{~Ih{OSF!n6_?l6>3g24peu&p!eN^|X*0|C2#yfE9ZXn5b?oM8pC!teK#i;3Zpp+;7|(=_wfY2xn7 zBEsYS^r@HgjXOsE}Uiequtzf|> zC<9+uQe9!HGFS*a(jH`itRPkz6Uk|#dNRP0HQQ}gu_Kr2aLF>ej0`XKKVtkMTnY%p zTCECeu7xRa3OziGUOwR1jIn5AbenyieWmE&G?A`+wJXq7I{Sq4=5GFqNr&o*vTa^} za6UZ;_eR*a#SzkQD3zZbc;Q{*hhT-B#VC&4E!4zqaJ~;ekEgqe=Hb;piu7VzYv$d; z=hKa?crFjIC=;$Z&&~4vQ;17v|b5NfUPPKHs5|2&Q zu(2Jq7+@8pbTx`Cj|n1LAO=d7LNAL!{RTIG(FiZk@UPc#Xd6N->}f&{rl2f`X1LYi zS?j|54oBgDEBu{JilODV`jnSmWKo8F??tNe8vK7C2O%jDzJ8k3dtdh+cA4KwGA7KI z8|k{oz>4trM`5wp;S`B!i*D<-vV|h6KMNjGy0R(cdPAH2euD1^$I_8>#N>34?nctO z;b4Ws+T^}%!>|9hk^0XWk4p5AI9R zSW{hk0GFe|_+mgo?0~t3?v`QQ?wY5vwxPNn#RON>D52^FEYWA5cC){4kMCH`UC!-! z*X{lVcV#A9O9O23P%|IUXXCv_Z&Kp>XU+u-WaZJ(S-Jz(HV&5EBV9EW#bZ@j7>~L# zoN7-AI>kB?YAO~pPB|`vR+8<_-!3huV;YPx;LJQ1Rw6(btAx|j@D(1dz-_SSk`>3a zw`A>+{$Q;8c3yXl+cLfaSip9JwL5q9{;_JxCh(jWdZt|80hTFbLlk1$z&`yq9DX}7 zKY}&o--1-{I}-={`1MP73b2M|@H|%$q}lZwO&qz;hhqWqd_iJVsBsg9-{q9UeKaUh zZ%Der2!#>|0o!E_?TAoZEVfWurMX&vRxAD7pC%V#4WjSB6{vrh9}<*9lTvJTI@+V1 zZmzQor*pEhCJ8gII-SGQ^%g5HtT&>Zj$ilyIb0X)r>!GR5gEF65Gjj>dPIq~@OSfg zU3O>MvBpcw_DK~K_=$l8#+Xq!p%h5ROyQ=wkfkM|xt_nLt8NSPI$hfud4a$`zoAxT zm&U#_YlJ&diP&o`|sOKVZAUYC4CD z0xhK;{2mL~c%XwFpOe&Yq&F?$b;K9Mw)lr9 z74zYk9o_>RVH)y*Z$OwvnS8+0)GHL#$Rq!X_Qb2q)`25Dj+ngi5pZDQun%8L;)gd> z3flRl0Qr_9%!*nepPC0p%GKc*{oNoww#OGc@>lg_4d^2GL0L{14xRd2um z=0=m%4;^uYjW|7m^BAg|IgG0THF8^|2htWLjVR+58n1cbFMHC4ieV(jv!`+S7)Sacr-ZxkVA&~#W*?R{y znYMAG)ss5|t)3A_9vv>4K2x zQbO;c1R+ub2_ZmwKM(HiH|NZ}`^~&(p6~|)WWsajzOU>0wfxv6|3_<0@f@{N^DOj? zF*rTxIE8eLSw8Clg(BHMNV)6&d`O`3+rq+}`SjIg=OmnX`00f$uC1^K+V$^czIDrA zUpZ;>I>7msw#lYUT(q%2!0%>f> z2N*zCdA+jG7dbl%ml%+5d*8myzW^+z3CVLgHd)A{Zh314WOur3}z1O%!b64YA_e zH9#h+tgb>Fz_vQumy~C!T|_dFzQo>ihe@dGZxM<+L)i36++>VMcM-X3h+Mbh zhrFb2u?Rr-0b+USaR+@EI6~mSm%gUpLG~5^Loz#9t(+6K&f`;n2KlevMSXG8E___u zo>>;qU6)E36`*STUGq&_+cNhx?}^sT3u7JtTIp`N@31PM+7(^9qy1vzx_`0&mUW5= z_;J-ujEG5>6JWq7x-kOyQo*dEF91H$d$WK=__-B%pAygmfWv% zV6?m_T(MbY=N*qyf3TdwAunWOC1X0B$k062N#^~IB~B?}gB&f7PV76=oM}jB9CZl+ z70~&)z)W|uFQ^Pe_qu}kJ=*!aeBmW^+f*@;e{8`^*-erI_q@+X+K^}{X+ZD}ANSa_ zMzl2$slA5)@xOvlD?EtpJsuD5P>(t&>S~;Q_4Q0a9x^SC<^cASR$X(+0o#;eRTkc6 zVkIMiz0eX~ZtQ(pjy;)`Dwws^KdI9LMSafzg|}Sld0$qF1&nP zLY~l30A?V6z|0xp3Rn(STP_P(+ChM?7igY-y#3QM{-R}r0DXQfw(?EY4LZ1@rkDef zVoN!YWqD^S3H)pmARZ%Mnb5*2N6AAIVD7oBQD9~Y7INn4->jCgTR>sUA1tobO#T0}UY3m*U>Z2J5Q=s~W=Pc0?c*boZe zia-t8MY*_iP8uCl$ct3vgJPg%XH1aCi9twHNF5;i3Nhf>E@`($T~5EGLfx4SmBdFB zop1bpjfV&gIwTl^T2F?Q8SyP|btK}vTSiJavX?@2NguZ^hI`iuKr4nS)}dv?;f<=hIomaYHNakS3lgzbuVLMH3#Bo3MLT zkjaAh#}OUUQCOI63k=va8)v+UrXW#gEfPp~ZWeA{da3qkBhME_qXg_sdt7X899U*G+~mvHjS<2}j(~lMM!lq< zz(4#G@`)B6rJWkH-e720-zjB)yvZA1IA9b98VdG+OM$`?)DA@fV}>UCE&4SVN^_dF zm_r=^yeSWqPn1uODJt3S0*aBMra%tr`4Kx%ASxBF3}3Y$7&oFz0el>B&+*v!jgeYo zI}W(XLr?rSHbY+SXzN!tm%f)Ggyf|nKPQ0pF^|KO(m3R|f6Z$D%&WCi>N2*X7|%GM z9F@J3h1X>O1tWZZEo$nZR6!O$Q+5=yQ{_dnd8F3f&UpOu&r_%cWy6SX3KYhY*xZ=O z!nP~RbG5Ss7AQ^q+*pNl4h0`_`Ar{{(@wRnobm;W&oJK+t9BxEEc;*CbWG4BI##Vd zV4K$hgR~T2tJkHV?he6WC6IL4qp2w3O!C{9uWoA-dyrPG@EG;g-HfOp*<5LdT{$t} zC2Gu<(O0Z6SA#0okIo*6E=B6Z41~@Q?=Se|0mqx4=~|3;2SUC8FzH2>F2L#L$3Hxs zfK_g-6AlrveN@)=a)!k30K<(TDP~Dt5lyvKh{`qGxw^fWz>L){?DNt>-yq^m{{keo zx3P?%%V1lxz4Ao|A~tjadCScJ7TfVB>TrgaF&)Ye{yE1>B~pq9z1y-2ai?G0Y@3R68+n!nIxZY z?|=V3jK7f&TZX@am80DC=naCiLV``gCjI)SgBO7vgXoC=@if3wAr2|058iCwFB1NTiI&ggbOtaV5$4Je(tb(z z`dqlQOkdFmUc9v-h;m*U-3ygh&J`7=uwXPID>!B_5IQiIx%&RWiN0{AGhUlv&8T4j z;O-|MdPSIqKY*r(7T5pjVJRMeqyKi5F$hhB+&PL^gII{qvDKA?g!qv1ugIU8e6r{> zvtz=g0xKl@D>1MP0VCMgo9n2N&{^|g-*woK{>T`CkJYx7w3c%^GT>jFu7HT!~%?KwCT%;E|v4r zvRTG;Y)c`NDg+T1Z;WY=Md}#S-ksD3`u&~5e_3_@_Ir8h;fFw*7`we#ZAzdgmNjCs zWvIH7%L4iRKp7t8XpO+0ZLrc^wkIt^^?&0R>^qbG!lI2)02KTe#YckqExweZmSsIp z!S_rB@_@Rx%Z#24&J~5{$*VY>So|otQdii7#^BwD7i8gD00(9`xAk+gPxM&RAo+to zUkIOh+y!dq!y2Jzt7&B6@jKml+E}@dQ~#OCn5ws zz4$T^GBi*mg@~eSD{z5bDn>uO>r1FHuuX$Y<6aAVN)-dmO3gehvx8!p#cdqL3esRG z5ABs*b~)mbT-&XeksWiH&@?3c^3$Gxna6jy##96r8bh?tUfpHJzfD~1B|X?T8{20R z+Sh$%_OYz22yh`1fH5YT3-2dgv02Q)N_O-gW?SKy_qDOs(Wii2Cpehc6e^E)AfQW$ z(CIPBcZ3f5TNy;L5F^S|Ex|NF?<30bbV<2yk{n291yFpz%!q^SRs4b%pl{q*`JmCg z70^BhPj42jyV;gerbd=mQr<;sNt@(H0k7>aD25HYF!(Xmd>XH1I9~;jig4r?ljr0H zWXE>z#&$reh2%yhq1&qEB73pQzBs@X^f@{c5Kog1GnSjHKJ|rY04)WsL#F`|b#b@o z8qNaU;Zh0aX{=rzL))-`I+(30{5dNq>@T%prH%2#Pj5m{Db~) z`saZ|ye3$uDL1NGQtl7l0|b+7OlIZ0Py@5=p+JkDYFYkBTjCcLUow~)#Ph{pLA>`1 zJhoLmgzgT?3j5=8!WA32S7sVmFbh{PhD)P@n6@6tg7Wk0yMu{X34w(Nq_S~cFAC@A zIOPvjvEYp`d$DuS)&<}U9{k{6;_#bP3V~q;Kvb5m(a=^{Fft@K~umKjui} z2&~fli^l>T*m1!?Pf$y*0=fZ!`@%@bN={{`0zeRj6^YgOJ3u+}Gq35BMG0-&yy%ib z?@r0>QK?j4vWK?-><4bNv>(Q%TjJkGtyIuW077@h2E)j<#N2l!FzTk^p^ z4}sa5`iUT5Z}|h81VjP9?4g_X2_7hfVT+YO$k6IXfM|@7Ap^k-6ds+*Wfa_l0dT%{ zmzS0DY~ZR@O1B2Q0}z78{=dBjtjfz6Z#nxv=(B<~p=)ni2vy}R3BXQSzP<@L`1;Kg zDnU&T{tCh&>HiU=m=A@EDf3#2> zLNQ_*VTH9oGZk4Tyb}(w2aSqQE2dZ)K@TOrA}#0vHV_Ze&Z1&9%GQe^;~fT1c`+& zP4$ojC79x-T*7PhQ*`Yjce|-_GfIAjSNOuKVj`5{R*HDdcFV!e0nm(}XBQ#5nwo(f zjy@jYCoQ)cC^|%OzJV$PyECn5UcEk@Vhb;^12HWAN+sLnwu2@Q7;mbfH?^(U!w8~r z0`sanqnLTY!+j=6plRzWcgR8AB1>+G0fELbv(7SqE2&g>apZ||9wMReKF{X07TE88 zP})b?SHLQ*pdyBg0d8my6o^tV4(Lj}cMR*5AkoMQq6}_B(qh_`4{GYY#-YWl!hfB+ zWzZPcU#DC%pb1(`dozvyOn!z?R04l?53;QBH<=$-mz)tREBu$0yg|xZnPR1GdJ*7c z(!2yL>Qv~MV!=AiQ#|k>(LnhPMQN+!?L5npMEl93Do}v8++*BCI8uKW^z&zz=SErl z1^T9~pvA0155)9&$at*M@69>wZ+0PZBojMqbWb(vP87tCGL2vUvjC#=BOBm<`WbbW zHHQC<6&)e6KgR`>#`XHj;loMhpAwf_Ce7eQRrz~P(J*ON7Fx?Gl0k1vw&G5mOQ#z< zann+jgV@_LFOM!;1!sF7tP|PDf(Q`U1#c~Uyk{!rETsqL`LguIh9g1M^J45}Z0XH! zeeCex2&ty~x?%JrEQvmZZ-t`DiVQ=TSE&x(BJsaAYxfp66a#q;odNHK$!8$Q&sa4#5hQJEg5{L(m|`j_HMbvZ|Dp zSyq_Fa3-6Uf)$bz3L$0@-Zl(GP+&8Fy&PUBgA(Si0Iuo4!X&y75X!?fpN9X zRNhjpM(c%|&Q2uxR*(kuq1@W1FgfJ6HM~>jrtfZfxbY=v4dW+*cxl%T33g@KY$E15 z>5KR`DhQ;KaXB$dphNHok-g=5(*;MR(Y7kaaWjlZFNuQk7pa2yE4otJ#qRB$QbG+2-$asteZkm5JmBIDmUnE_f<}A#mF)=`40aa`SDf^4`@@!(p$Y|6f6qm@ z57F=aM=9&HDXwUaq~XJBR%}`{n*T>+kHkD(2FMfN0I6%@N5y5pNvR43jD_5&wUo#f zvLIyrj>Zk#gLcweDPh1cv3&hwIV3l&U+zf%1hwt?hcf@n0fnENgl^;mzIpX8btZM3 z4L{WRB-oudfAy}ciO={&`*tFLjDsiXQyfCfV&bO>PU=T&D@hD4>Dw9lP2HUltrR#c z9Tp^DJqZFGU(CsfNexckf_oI~W1vUVI~0uwJA4HuXF3erNE@(Z*TKn4W!)z1bK%ix ze#|yil5diLT3+1=z)bNUVSHMVj@{&}ZMw?4pA(02pg}t)WZ%!Ab(cnco9mI=&wmX1 z`M6i1z*Rl)tj_N}roMq`mKG>4m>*BFRQ?E?=AqMa_^G9F8v#e_Gw^e;baamjx=uH8 zFf$eo1#hU%)oZPpDuvQ|NnG1TT;p-x5Z(<|V*L``*AXCRHW-%BoYG%=33?l|9~=TW z;`q$pyI^b+`=nf?=0HTWoOhg1T=dO>jfye?mTBFxgTImjnRp)1xul_tJD_-2A46Q6 zbOhwA|MW3{hD^m8QUkk}5T}G;lw0%{9@itRt?*{_RVrN97C;FI68s9#dm!Aknj<(v zM@Fa4PdAPa$%CbeIU%C>D}IL@j%NbpwLu+-N+1KC6_GOl{VqH6ARWtEP4dEOt|yn# zz*Gc9JaWG902nzM{1bo%h>Tx~X;&P^X&~mp=|adf-%<>l*f9+np($NCe130mI~0Rg z?)3oNN9Wm=1RtW&Cgc9@h_*hsj%GhXX`}?4Ip;CguJu}&gV>p|HYu2nA-vyd)Gi&cAp z4f3Uny}@ZDv&K9JX-iRIsXWu3W^I`@ zA!2dpcd^PYwdx&gbcHQNN^xsuP7IWP>ACVlI^(R)rI@2e+wPwq>{sMY6n66IC7mG>4b`0pt^0+A za2;1pxPldh>+Cg8Qa^mGY(8r7lm+7E3|eoU@dRdCBj}PPV5YMSad~MP{{)V;Y>CSt zLK)tMRFV%^*YwqsQNU3_l*{Fh0z@1| zQRftXM>oKe-&uU5v9b!{p|4N}B0hHGt}SO%loWk)oq{Dge}p}UoqVpNJ`qtRLoIQD zDR2ODTKP5SFYkh2kR}d~JoQ6Bq^>_jf>^@<1pcZt@8rIN_At3k%NaQ(mYr%8h6QZKqqn|;fOg1&g)>lo zF?rw?4Pa;CcaAnzCqf&zlyV2Cr@Xh)!%T5lEv4hQv__r&LYj1GNmgpZ?gT%lAuQy` z&$PDyjY~34h=KQq8lQGyzFZo(`O;HqU^~n&V!A+rBwdjQSy_k9k1V`QLLXP`s|!hY zmEwcaC>I8xd#d+kW!`1?7S$NXgmSV}{*GE=KBzQfi3Lu%sqgp6|MeH19+lv58%&z4y%8ziM}=R=7#mMrpyXoQTn^h zN|$P<$<3}A9dsR)!?Q92W$+I^YZEN=8L|GUi&^%cbxzCKGA%Fxwxr^uSY^jSW5)|- z9v2|WRZna<`vI^9;2wc66~?v$UL8kSjh82UfMPk|umtHy9!E&UgSsL%9)66_Nz!}DI}-zF^+;|6 zOX`yvRu&;3Is-X$#pV_2BL_2IZU01|1Gfme4o(v9cx<>{3*FJQKNEYiXo!fuwE@-8 zTy<`^FC%A=^3xHvl_CL)JDG=NOj!eI8gwiRuOsbHt)(?7rom%mDVg*NFrV+#jhhz= zz*e^?b(UEHKh@OFYv8BUfu*5vo#@LEHVYf&k4i+J8wNUvQyc2Q`3^udQutH(_~ z0geWe5r)t$%M#WsKooCyyxk;|0|JiK1E!QIf~B>7e8x?krcBlQ?tMB%(8--GRomEkPN9Kk7PMC*+y~zh z7~TZa_fTeZuOgK@=iq_meMLcOMptcLUz@o8n_=>dbkrwYqtOH4ZBG>dz^P<)c2+r@xPLh`LfKL>Rji z69IU$AmfsVTSW0vO17)0&ddE;lL=l~mP{APwIrfP)0^>u=d|)dd#vQhbPj$z((hMk zTnFWTOx-rW$mQ4nUgieF0^B41(np0kh~_ZLA6}ODcx|)>(veW#hX~O1y2f!YCsI}X zeyuGe;?|D>zh999W#{!Sc6zLulkPo^(tWsg--^lB-}RpXPQu})b{sQyjRv%2@Ddp^ zRxHqWw0wf<_R*<*T>;#Cs-iC{wb~6<{oU%RDS$~upt5xt4-MDrTJ{x@EYw^Adn0fF z+oBU~t5!n1G`#Q%9Rsk5K)LEwF!p`Y^>-0KB=veSC z103rwTDn<;PsXqr_wPhGW0B0>IFAokLi7}qN-=&BZ-utR3rdAmOMfkf18`7r0Muky z%o-ufP|CtSA%Xq*I2~UhS}-NU{=Y%VKU`qYE;8(H=&}P0yrT;MveX%Xp7@aNLZY;k zvBvNIK3d~B$=A7Gn|5+jh5mD5@5Ip1X);TOIQLOJ$nOk=9#tGpVCp6J8 za#x;Ub|N6X=`dVQ$1xD(BWz#0gWghaVh_OH(NPK(>-Xo8DDWIZT74`ID<_VDer#v69CgaqI zQ9|V$q}wC|2zJTmx(`wwEDP<1QJcfn?}Hrt|4K+of5VthNyP(n7kQcLTE5cPP9blm zN?q(~0lW!tbkKojP8yuE#A%0^o7I%MLV5CblN}y)(mAlWE<9nzI5oUI>ns{Ah2SKV7NB{ZjJpEabN@AF zxbtd9q;=ky=Y|z)Z4di!cLiROVtwEb#}GDUJEto8&6K+ss_<<(3n8MN*~%o;+;EQl z*=JiqTMR0b^>ruizIxzB^i6=7vC9y0Z;mxFhL)OK zA`AbF61jViA5S>s7~WWW{nqEd){&t1j}-TBL9P<;ozym*LNn*V;iG+W)Mwvi(^ckj z43E|U`RK7BGJf8hC!gw-EB=Irv`OLf`oSeIk11tkI=(s`T*x5wbIFAa1Sg$X@Y;r= zv+W&py*paDlOY680^k^3rmli)Dvis}LUjP;#`A}vN zlUV3*iAFg#uwS(BF{|_v5z=1ets*|Nqyx{z+Od687Nbks-}p|v0$M}@(2pRsX2#&z zg~SSMbQTBc+DRs*<2j|BP-!h)Qb3n*@nV133$la_eAkKRnkk=f7msaiST z-f@t_EE}kU z#Poh{Lzu`fm8=|Ae7$G1Ex;$I-8PNhv@^mw2#2QNkG!g|jC0TLeZwBd=i0j9gO5z5EFv*N$HYE_KXKtBc-VW+1nOI&o$ITmd;QS^c zb-~#5YmZ>fx^(vX9_^gcX6~N<{4vp$wP7l*&Sf{d+tDN9jb(XjRD(u8CeIh(eiMXSniLP4lBp#3RgUff){e+X<%79dC?3X ztSQ5sif}^W+qry$rY*l$T>GpH>H8ke($i^l`}V;jqpECAxcWCpBF1y@2D{|Qwsiy0 z5@N({%Ftnxr%5aB$eG{7UTf9kdv^wTao>AspGE6R-_9Yc!$d^cUZv~T)_q3M`{@Bg z!Cm>~N=KmaPmNWgzd`HAM!c43yNL}R-Qv~%2~RI&6S&a*iqSN?x4iSrA7bi}dAGS3 z^s9^p}tn7)i`m z#N&TE0VJph=?Zx}I%7G$=CiW+im($Tp~Ilkey<$P$N4)Q)vU?dYb>g=(%PqWb0NWX z3xmF&9Tb}2dgs*R2kH9C5DOOF5vN+GlX(8bw;0)kXs!HDeC-5vap?8}*!E^SEBH>1 zq!K2bQ^(8j3M8HfQ)J?Ky)eZDOu;WANtooT@07h^iU__8V?)}6EGaa`znpCa{1kNR z#S=|SZS=m2aF2A@7HUUdR5ZEOisl3YP@T#T>HyKp@!yaZ1>}wJgm~J(-mGea(6|7F zLnjlu`F`vjz3{#Xk%96~(6&X=x?yO|3dXJ-D~{sV+)fcM-PqCiB{*O0QA{&1u^xOC z+q;7SNtw#n>dsZkmvlcMznI$?yZnN{64WnQ7Kn*9*`*4 zk>r$}j#YB!pm-wifk+ZLEe|PH2$6CLOvoz2$<1&RR3S-tpokSPgKDTRq1 zDpv{ae3M2Zu8!$WAUnT1E1*MuOSn`%7P)nypzTpsCFY_Vy* z9Z?KKWxaaRWlN6ng`ul&;foQd8C0rZ%1Yr)=YJ*gIQfk*Q5s#GMphE#Im%|TsFs5j zRw|iA3MLgexH6q!9x!Kl9#J;=3+x)!0Cp~IE3BVB@bz9Qoc%xF{B@5iBfi*)$EKwc zY>%CbayUG5;HZ0DBDeyl5HpH!>;asg{2{-nR?<#Zq!i)!Dr5;WiilmrD;dfLycmHK z)qxdXdm8bfd~$7X3x^@|)5#*IWKIen$UOWNhWt0nmt1k=#=%sMI{JTRvAiXh-PaEqCQ&m|}#il#-R<%5InpgyS$^ z%Aq3p1Wa1$q!b~Pb5tca6NYa9IS&-|AjsZc-|ez|SF*A?%0r(VTlf3__^{si2r(6r zQh7l$VWLNS$OT-pAemt&eXu!#;V<3C@aJpz6UiJ~^&ngX92^7=c}Zq)h2cQk z*-uxVx1o7?(1>JlilEqvQaBx1MmQ*U&_`vf-5fhExTp>e8JN@K=1;y$r_LPy$s4U! zh8=sjp&K;#u+ilBJ%fWr!soYNzH}w`2x7qgai0zsN%AKy+DkljWMF?EpQ;Hn zC`S0g%zvahs59N>yi~w`A(skrV3Sz&`i*(B8yK~JB-qf-eOdFrKC60RldooP%vbM0e~)dK~VB?F%z3_`TtH=!!@mdsO@Cir;r#sNdRJbEE7h zeAQFZQqKIRkcQhH{HXzz3SJ`icBx~z4}WEsZeMop9Z!r{?U{qS#CnpFlRPD!%~R0& zlrw&nqt&6@7iQmhjfL(3qOOem6ATdV$u$SLD(i%KiqL!2-fREk<8b&W1kMetwD~{ySE)U`Y1XcF0rK!;94b~&;o~=`{&<7i)kQM zXk3a#zO@#1I>>OGiWo^U*-`UL<0D^CZtaQ_j;hCfy*>B*iiviKFiuM4#luwmmEz}>tzw&~O0?$NWXjf&_wy^ ztK<^gZ148+{Ma#vjhGKb&h2UT_+PclpE=0;3YefEHB8GHWVU3x1M=up%A(`PTQwK< zA3LN2gqk&|Y%Msu^})q<=;6TOE! zdrQ*Vm(dqk*=)6XcMk zmPx$D;%Jg?8QPouzB^Wdpjih7^$ay9x`n1Sw(Qi|HE{|53`ejSXZeU12Kooygz$Zu z3xEYqbS&PIzt>4nJbi~>?%z;SkzW+nme}~F+EacX*C?@^i~eQb7PPrdjoY~$YgRaG zynWVCq#<~YZ1Jw$;1M_8DxU1{UGzy$?JF!G5NV!wG0rYTn|)8AzL$yS)SUR-PHPMP z;i7M49}w0cXuC;vI`hD3{HMG05})44?(SEfSS&U`)HJ4{*}b{<1Gi0N_k{BQ<9)RJ zR=U2~+(`mCaxVe|Ryz`qsi&WKcc?^sa#xUVSXXyOhHX^NwnMz-W)O*+)v-ZRja{I=sx{8_=$+6##hkH-hTu031)1r?+6Xy4vJ-XkD~ z$mq@emt;4@!Jk5=`?hpCbFUKJu3Y>eDdRIsNk{I#L>9Mn>Rxd=#Cqd&(AQIPVMbQg z*1PoamK_?+h0_CC+gVbnWJ0t!Ve~p~nvv)7F^ojgw^_&^bQQaSD8y?YJL!^W@XJ0et`AIrYW?-IRPz3-==zfvQfYTKf4 zH#Al6u6MOKLj3dHA)61KHGOII*UCJx63GST>T?_TzvP)#HKwV;PPZzWj#}B2^Z9@J z1mOye55_R3{xxZ4KvMI$d2qEUaUA_*^F+d38m}ziqxY>qjv$g2A#- zyE~r*)y|>f56;CmLXT9IO>%Mt>|ynA;arS5^4m7x^`BILio9^}!vD*S?DAga|3nd$ zY-2MbhP?!um~>*<{h~W`h4G(M3Z+Azop$8$?QZ6*py#Tb7#KdY*fl$Q{SYheaj1`? zOZh6oxxbeZ_xNa=&!OtCG|9|n70Qig)T>lP;fK4gNzC3v#Ve>|zn7aUl5wqwXS7tT zMijI_ea~~t6;EGuX5G88%HGf8?UCt^zkSh0SZq61yJ6bshPes|J8iTgujpHw>VEVW z%7Otb^k_~Edg2_^BH?(r1jH10=BRT@C zxcE)k?%#+4@ExBC>+AnsH16Rxhve~*-sASX^k*GaX~naRFW6^3g*olw#q%~qzdGR+ zF|F3V<505ok>F>ueTb0{+Yq?vnXRpsfuTM8GvAZks20qo_f9v@=|;PKD8jTgQ>`lboP}-{SerUq?eOM}4{v6I~%XeaB9vgYevJ%QKMGN69! zuS1V-%&gwD_1KHW&H6Jf2H)FaQ-UnDj9LmX<@{gjtg%#wn#Sk75s!^dLz9?#H?s^a zE)#=VUR6^`n3g=u^8shRxt4`fP9DJwa<$BRcA@J6PasGSt}Gx?@jfeu{_Vs&Y_g{C z^L#ZhS;}iaO}GcAm4C?}@(UOUAJuA2Flfy(<%#sa* z-O8?w(cUMe5G8qAQW7bmU!8(2XoK|w67Q3Y9qc=Rf}R@GhG^qkh8vsmMZ-kxXb%cAO&qeGKA>aAB@ zp?am8r`dsZ$K#0>FIpv&-=i({eOqCNffGPberIv~6y-GhsTW@;Z210g&7{G&^+)a) zq=38Papk{kMfE+8rdkszHbR->x5bX&^GuAEncs5+cADgjre2A?%DA@m@XCLAJVM)j z$MoPg@`P|C5*Zy6-Ep<#W^=~L@g<|}-V0rQ8AS(!sdXkfq-vL$4(#mRLuoxx2^|X{~ zM;_Y;d*03V(uwykdcYF%(#EoP@#E5LA3w3ncfnGH0x5616 z-4_uA-6*iGrEVvmH(lGtLtZs=qi*Aj_G}KmdzVnfmOPv65mP>R7JNlZH?q5X&9;M} zRCPMO#4LRz;O?4ywo_+hs6Q*Zupq75%?t0>nw)uPy&vN)^I3Npd0yYXevyJWNk3pB zB^=3FSLOBJ&-7lsd+hRo#zU3gw%GL)3OG@JXI@*p4= zh+NM%sqV6CalVthOx#PRlv6drQo}BHqmt9Bh(F9ld-QAWAWYzrH4+s`DQ+nI;>9PO>hSj}wtBdK>o3)jlQENGK zEr0e!?mj+fsjMjUMw;ozDE_dDf!@dLYSl*l_q8>#e_LB?GaAZB>mD8543f`$H4l77 zCtWGtsAXDDW%c`nGzuaqxNR`pDauG58{yWz019u6jB_{@pA%SdS*+`aMk;^v&hOwb|RjiytF zri~hDP7mILX_eDIBRnw4Uir0&{ATz2*EdeY>!j(R9ke92XYd~ck-tPujJ75;=Eo(i z(&x_iIQE{;OZ{jd?`+QQK5}ltI&u5u{9M3WoGOxEY0cCd>5@=wRC21Hm=t~%78ZWu z)Vdqx#gE6D+`T5x{LFweQl~``;6TLP#Wk7gwZXW93jW&eK4Y;wU^T0UV0g}~%(P)l zCFcCccXj_AgS$4pu7-o<5D1t#RB_;JiMO5Ed)x#I8I_TdvHPYU;Xt9=R$y3x`Yu8g zWFVd-(J&7bE=TE{_(@1SvCr1WZygqgS1<^J*d_j|Ig z{gVZd?@?=+aM0z_2rDV%+}?`hE}egC3ZfDo8k$*yLC)PxY0<#I&{0PIW%jsjgg~t- z<)rJ({O&C}XR+tPtOCQcDhSS)tB9COR{Pp@jd;K07%hsN>#R@XrY>N|<6I@j8fmIx z4HU2SjWG<%K4SqC>qLGQdG}AfP|Z>guXow`9@zGy`M=~p-E(lu?7daHKWXc34ZM0T zApYW%z7&;i(O{%E$OBF(f@RnnJ(U7x?~M_lp{@VnZY1m-OLP zk-zLb&^t@iNruOMFE;>;0zIN@EmZG`Y-;Xv$8z;GMUy+6GGC-P=Ip;p_1IMN`mvko zf4^%XdF$_d3&G}BV>}Q3x{5l?`J`uQb%37RcK%&gD+H0KS$3J^C>RO~}hJk)!vcQj9<}>-4MgG#=Jxe`j~g5xDC#)fsuXpQ*eY zYwqIWw3r+lQ}RGZT&~jI{ejf~3PfDmU*Ume>pk&u!2Oh;ca)tm>gG2W*SN*c-e=Ke z+xj&TE7T4lW>p>@^D(SiI-h+>`k(w8J}b|(+P&?3{K|Dvq>;#v^zy(>x0p*NpV*0i zi=+^8q1Y)0wekAP(1zaq9^%VHXMSW#ylzJkMs$-G)M!y~$WOKt)2lxJpY&hD<=deu2#sjKM{SxgA$^B?(()y8_v-{F9Holga=j8CAcOeD%9k`(p zyU8;4(>&U^US)e)&-uLahRsEgf2|WAte2OXM5a-iTQtZhO1qB6Xw6AVXF%|-!8gO*|rSNgB+5VnR zjD+M&y8X-ipkhf7*vq_jFK?Ds?z`OJ73+=MK6`-0Oja+w#nmd?WjY#yD$J;wpKq4; zr}9|?lnRO)qTP$Wlum*zp5m$canN>q{Sv!5hxaTu3|LWOn5uhyC>|*OJ8epJ;-d}E`5)^;mhiN+y` z)m^JBLVsbZ-ZpTUjqVEvGvD=D?Evngf$>)U+_}BLDfRaI+yDvuhG+f4$Dj1{vAVMI z@QXTZr^Tg#c@2_5Pd)VhM72hZYudl9?z#W# zH2=gR%5opKZFAk@F%LORU8 z?Cgqn?fzJn>tapoHqF^F(-ADCgkum_zGvNSt`ep`%!L7nLr0L0`vA?-=9=$x8W$XFQ;d>iBbz zCIa@>p2fxNxzjvJqn3aDNz~?H+`?n9cH)+=bF3mVv?G|?Zbkt*?@RohAItCkKb*aJ zIF$Y0H-1&Fv{_Oidl3nZC2Nej6v;BxSjRFU*>}n|BxM~Y$<9m?6EjT1AYv%X*!LL` z$<83l7%{fr*}WXkegE!y?(gyZ#c`U$G3R-HmiPO$eahn+{~PJ!h3NMje+&8b4Yx+O9G5%iKL>H3vGkg!ChqQ*rgmMzbX|)_)$l8uKxcECTo=r10F>vRrql$4X}`DVjm=htqT~+nYpdhTZ`R zB*PLq*mXgv8K}VxgnjJ>q__%Lq;y&l*uxU89&;u-)nEUT0u_Xvhcv7BS5SnH&t9-| zy`5q5F2*x)2x-_lryaV*J`LUclE}EYf8WCw?cSwc_ju0PePKSUBSprP=7t4iy-q_u!!c3$ zw_Qm@)XDEEK+5L^rLWy=CVNT0o~0Mg5_Qae*lP@Ws-=f!rZp}4sz?fNwBu>?Q5CULj-0A(Ja7ah}|t;dw_hp z0agqd#Y;(O`%LwPIhUL5O|?~>U9g_IXH)Kc$`qqnWP}UcNvEeUV>3=BJNrt$JYIC) z$AU8&)3AE~={3=l18Wm^;^(fSrwT6Zo-%EOyp!jR?{7sVPD$P^( zi;>_kq&hNNb6|FdByj3@v|=>>{7&N~0+?T5VMkixq4^$nYN0n|#4~;HWRCuBW&qBC zAT?HUJ5J)7N1J((87sz$k%NELzl7Ve7-@kG+47Pl;ZAM_BVVZM9^>=^oD*f_(YgE3 z1O?xhA=RI$iRFH8f(~!!8T(p&7*7AWB>UTKB3Y`wII~-mVYsKf>c@w!z7Q}Pqqy^S@Mh zgeLf0SB@+xDUm%WH#%}DSaNd1934BHO;iH-T%ZzS2@p#Ka_0du-26;QDP|j3ag0=p zMYMvi#0KiwuTC^kOYyr?Qra2M3EMxHyTfk0&Ua2xMrrQ_ij~-uJv1T3FkV=ZiAs%Dr;F`8 z-~i7bIN9!aW;7kcMCP9wu-LL}*9^0l4^^Dthem^S4csm3vI)iA0viS*R8t%anQzlb zi5#b-%OD0Ex;a#@JNw(eK60Y!?`!N>s@)l!TGPQN;Ar#9tTn7B^X7uibI2AcDpfPC zu=A6qAHUBOC3-&cjdid>uzHR2(p^y%+DU>Csbl`a=Nf!NP1nWnD$$7)gOEWH%D1sE zOYfw;ODo8cUk#zGIA3L9aEb`E6DJKyfhzkKI*ba%f#zY9usdh;Wls9bBrRNB*pIw< z!P#D06@PfO!$RD*yJ}*<=v2bDX~3JiZkyBnyE*uMLcCrs3#GZ{?f$Jsy+r02E}JAh zs;F@{B%Gzp&}7OYJ_#A=f3O_>q4ja{6T2vqOpe``6!pAOtQ>pIAiVf>S@z^0QdrIV zwSU5b_|)#N{z_J4y1ADNF{cx8&9uV4=~#fn04LS{sb_e=F!Jv!Z>q62`x|MGZhpDoJsqW623#3eD)R) zxjlX==x>l^D0_b3-iO;-&sumIXx}P==X!GAQR?u^2pFWgf;b1-d-^A z3|(&*%7hvqW>R!Qj7o~?@F0&j^|8lS+wwCvE#js190$H*ChN|4TKjTR8a~N$HmCDW z-qEl)st!rq6-(u})c{J9?+wm>V~8_n8nU~v>Pyk(ZO~>n%+ysY#EdCMsOS^ygebEx z@7EtRvlG;&-=w$@8egfOR;q}SzGv8JhJ~*_znCKTHUtXIN_-`>^^lrfdfvWs@cJn| zZ`ScAU(L&C%402U)osPai&wfYa8+U5%r9rDkGqQdRu-pM?RGx+F;C_rsQzv%`f%mQ z%EGsBKnBM4w7W^>GESs=&Fb-`28`y8x8};|awCg5*!c8sM&5-{-QmnIK>#|KSy%46 zk1s9C$6 zt>*J4__*v-hsGj6nC*T!p1bnOSOu)ld+c}f0T2w`k2>-|*{V%$R~TNDTiBnLIJZ0} zeyeHD{Fx`#p5KAwyuEqv9(b)4YnBOi*=%VQC|{E@4*(T)TYK!5id1C`He|0yWkM13 z)-E$RTqQNcp?Cw&a19seFB0(^a7mxP&tZ_xlfr(VF?>a?;E=a>=+l_G?8)ao-o*x^ zJNNh*7tu<0^xT*)U&?HsJp|`&=ep=t2>Q}?J&djdx58+`bZY1_(RAmIU_=b`@rdm! zIMKB{%DRXGL#m^R47a1uAncJWDca3{Qe9m8$CE)cQod|BmjHO3! z6XAoNNk-kNqU^oug%T7fd~11fY;OskC$}{ydD6vzM`a@s*}OPVk-wZ~3#r74sHhm+V=ZiU}6ln!#>92Lm~i_B0+frXE6XGQCx0y>i86;xh{u%_%d#S`_m?80}suiC*jOpqQKC3XS#7wEP#<4c9KxD&mKmk~%nkTv$ zoGmkILht{oPv`AFz^?=nM>93c{e;j##YUr-{<_}yxSI7;?*yU?FF=~QX;;W1O@AXD z#?Z$bu1KOp0HqW!yp}a^AFaN24`V%i$S<9ygk`Pu@@UKH_-39eO&+-ZHZIWgaf!+~ zlWG0^dhR@zm-qi^KEGCs!#kXpfkQDi`FHLO{T{8WXS?ivaAdueP^Fzg796e#@>^#z z^`MMGLjDZM_B0@--d_$}(bJA;*k7sr@aUafaR1{hb>2YJo zx1W1H@-Qo>3)kla6$m()u&oisDjB3M>4PDnO10Xvzg-3a{ts9QPmc+wvaYTN zXukUz$nDYBmY)3L6lOhW({VkiMjtChyyQUUzJMWx6=rQWCdZd+0(@wP?g_s(JtQ5& zdQ;8=oe|e1#xzc$G0DMm1Hooi{Tg~*BUs>GmBkNI<;p7JO)k)7#) zH^?C_zhFy%hk%HRgNVb&iJCAy9M?tWS;o6C`a=gp1P$$aDN=t|Q(peG%vUF@VGI;^ z6bEkKf z&0In-RR%ER2!pY!`Cbh)<)6AEKC@XgvB1zJrupQ&6FOE@d(B&Otwo%=od4}~=wZtD z@Ar9qx^l8yQ9~@|!eoA$ZJ&H_NXX=`4I?15Q+cqFqP@3D-vj_5?3og?NXedYGn4d` zgF_W6WV)c&ND0hsWHFAo_lx@@2L<#O7+DIz1l!XYVQa}4BnUBY5K$i}=`mPhv$YGd zcrTWgyRkOi9+_os!0^Cb;P`3u2N|h=(UaxT=0;phMbBS-Z!D5IQJ|qYMt(M%h4V&C z{sl7!R&X;ZFi4JpyzoT)usA!I+N6h=P?$)k0E1#EdPDz&!@Q`a)ek8Sh6U5bQpbQ3 z=u*P~7OBQKL>r1IcHlrvW1IX%R&jwc?JvKx_x6Z;n_7~+PH(UdVBTSDH&}yQYs4%S~!K>1)#?wvVE5cJfwiiE*rqeIE#~% z<5G`pBEfeLeD2Ouvv0}WRYI383EbL$^5WjKPQft=BOWR#Z)Ux&HEXYOBCj#s;tYG< zKwmRWqQwo=G#~5GJ%chg@X*W6`2lZI(sRdp&!xNi(hmI9j2n)|g^{xx| z)$IUy|9G@0jjxNk)#~r+wKetVOAuow!64$D31o>-sqOu}b6c=7@aZA)6+&%7Kf%75)VT>6t z0hf$7%yYpiD3tPg#*mxT41z13frk{-U@tqcGyNL_M zi=!>5DZqhgBFG@a&x)Ny-2$OuXd#!0CP3RvU$sH3@kC0KE6D4pMs9=4XvN0@W|XxB z&5o1Z=mHN8eZ`97zN?B%=Sid~yQqU9qr*pS=iqf23=NP1%ZVNV2FZxI2UT{ECy&S~ zDuxwx2On_a&~@LEhd0YpGz^*3;)$AA9OzsTt&rS2Wx@$t zQMgraY6?_MYuaDF*x(xT#U(x5;s_l`IZD=EL_};1UkDatJz4<`4_iAdz{)#WwG9__ zoE z>kfUZ4WZ-%h;0^6CA6|cMOBq@_1kKqj{-ZF2>#n<+&kXu??j%xKk`o+j@#N;96F_!C{&m@`uhEi| z=T=+Nc7ap0Kq$`1P!y_VuMSa{jDo>1)m2>n$RPUsgkpY$(${`ioH`bA|ab4>-!7ysUTWhV1M4gahK6I&w zOX1%kGpXuqMGnfzb#`=0f^T;FbD_t%6KjvY}?Yjz@ zzRIeB;ZqWoe?W7(qz*0&5>PT`@QkolY9Zl_9{XX3^(p5QiJX)>3(ll~uEe=ppJ`R| z`eW+TUiHJ74l7gM)i&jzhsxzQ7>f!goigFo{+4)~%FAPyHFC z6VASA>kiu}TV3ymu)k^R>guwn4GypdjDPbVOQ3Kf6Ke%`droLmNa2l`t@f83diwYA z(ip%IuyBO?>Ic!+X+=at?=$e2qbkZS#CY@;ZRI|xhDX7`BEhaz1&5zj8jME?0Bpg~TRTzeeZ3ZPRCabSqa-y5rwM#h{5waZ- zbb7;ePG2_=FkYeA>%Olrfv)e!8+r!DfIytS6~Nh92wp8BfaOA_BNGcnbmjX`YBflxPF8%tx#QbKT&w{wOOul)XuUR`rIV&Y|;5=A(j zbh|G4ow2~x_3%FW_+-0IXv`?Tfna*Isn(nI@Qz;d%Uk){vV$@ha<&974jcZe>u!jH z9BK#FPHtxn>vCv zJrVDqw9lyVyzYo{Tc4?^CWbsk2VTYB4``MgkZ>lnvN{UftQkNpB8N7KJM?C;gxT~%>TUlx!%;lk2%UpCwE8{Qp>U9YdoQ_`=%yV`6L6S1@07Q= zIXN$Cy@3sX=JFybKKl=JvKr=ycgQ@;O{MYa^W%&P?&3$H%ZcA4bf?E9sh<`=5LI9D z>D7T#Cn4I&XzZKqY5%YDXO?62Pvuj347JRgy)n(mpJ+NtHgP z{HX=C&SdK;OgKAyRRnQ1>a`K;DnRVr1~}*F#``cFl7w#{XaX(Bro?NR!AU(pSBOlC zR-5NqEd(nJ*rU}%nz1-Y&02wHISQqvA8yelt*!j(V+Gi)orQO@_I=>tf$$LvyDj+y z3bU5A7au-R%nAGIr0-$$x|O2AnV13=w!OojoCT=h7w(EsAy8_SA}EZ`_~!xg?`mrl zBt$$_p^B6?tXv-QP$Z8x$Z-mAGPhgD$+$`X#Eg&}{l0DIMzWt#o!_Yceh1u`y5*Or zzI@`YtKXXG!2Fpl*PHJ$_j~-dFYQ~otl15S8XtfUA;iK$--h&UtBpS0)ze$st0>75 zmP_G4UtY)W<&GxBjF$*f2`W$5@9`IO-Tn&>omN-eTufNY@!LcM|{c)^9v6@CmoXJg^TUs!x`vGo3A>Ufv&9dKETt`5HjSCc1 zEB6#fXJYyNG-#uvInUqu&2+>**MD%;&1|c7y|4oSsE`1V8Q!59gI+TW9&rUIYFg1p z0s#c-IZDD$2yKCutLBomnZEsS6Gj;q~!2TG!|i%aYlV^+`2%?&Bh{N)rxQ{l&> zAz(2=`}tNyxNmsv^Sk`f%9vii!fselydo}@zg^a>T3dX2f( z*5LHXF>dnGf!e=d2PAl7kXw&3)BsBfJEneOFw6vA6?<1Z0B3KyR>}tih=j6U-@$}g z!b9$~3!wn0tgA81L@K}!V?j@@!(*Z*!52MTWQ{W&mLS^OSNH8MU#P5=-y4iLdBt+O zF|NsH+0h_Rc{lGmbeN;^o$rEcD!%mN`m~z3tf*puUwhijeEjD4dRtx1_WjU+?tz;m z^(~jMkq~q9k)Pj6(y6zpt%7f;AgvzZ{gue(Sl4zN+2G|Ji=BnzZwehSifhFag*9JzDc|f-SByJSuD*Y4dyBz$!^xb5 z%KHlI8@w4ROcTmGVg^X|D2c)eXn&=Jl^$;%lY&i&&?$qNs^ff3^5?t!uP%feROW*> zz63_h`9o0kzJP1X(m6JeQ6F*02SCnckL7s&h%JfcQf)sUbF=4IrMOn4IMSSYD!0qRt&~x!Hoblt|&N;*T z2idy##%KKZ9q31e$~{~1!}hB0bWMzSF9mFUZmQeKs#`M1t$fRVKt@1oew+Kl>a;}E zjB&MASiTAi+$qgT4eB3YaDkKL2mp?T*rM2AJS*YFzR4BB8_Q@t>spdbI?gpREZ-F`8JgQ<#&g5 zz2^0i!`=Xb&mMgty51QdWKZNNooT_bSl)`1JQh#FM1MO_X(NjBN;Y1XDK@{0L`4TS z6@eWPYOf;IMQ#+51_)YG;EC0=pu)VW0T1Btq2*jP1w{c-+lq^3U3OL$tb12?Q8)0X z9V?MT2l(!bIgL`axyQbRtL<$^h~MalIj5%8t1a+Lh>3@(RH1&9>^7`+ivDb@6v?T| zGCY}`xRHYdBsOssj-hx-&&ciQi8)mDTo2W_>ObiUcrvR!0whK&hO;q%W^G6GM&*@-kNN9OwEOTA1y*Ju$rfeUk5W;6 zOZZNs&O+fX`?iW9zc+HDw$(F5xCxubqh~<1>-Iug!6ZAWN!`2X%06zS2sl(t8#+Yk z>FFVPDou;pO0rNOY`o3KM;@}aHEJrJBWlK^wxAC#saX~tzyH!e;p~0+$ZJaj$yyP( zZeLngqWbxsudBC6`l5Mq%FpplE5t<2^oc73pjCzvz$~4!3Yu*?qSTz`!mL>t>{)mn zQs!q7m@(kwQM{L=Zpb`aX3TU+i6(bpQv*dhsqser{bj9%`}9HkNPg}%y)f9;{P7cD zWLi`E_wS4B+6duvg$4do=5YqA`sdyWz#y__Gzx`3?{LUD(SX(qB1MF9yaSrJ(GH_x zAvTs72HW@1J5zTw!Bp(SAYQ7$k4vId2`sD7DpfL+zCq9rWWmO+{ZhD$5WQ{vXTIu4 zD`%2Nj6L??Z}BEtXKUwm6QVgqQKBMX-tK^(#iH|RStIZexF)||J_m!!! zAT>8Hn81#q$1iIS33mUuHUch-TJZ-|RvjT$PW~QC$eFT5uPaN0?buU3JFBO9f5z2~ zV1_Cu7k~SZlP}a0GRH_R(2);81|3=2peWY1{XQA7rT%Eq!hcrKB-;Lwl@-r>P6~dY z;_;)#k)g8w%KP&nSrT7v^aSo~u7>u{_xiWb0bAvj{ISh`^o{o;nr$9$+tc8@!ooSk z)hNM9bI*@jBAY)RA0!qm?TGaZ4+~&e16aCe)Z-X$>Ytn~fbce|UaeS2QDuHH{aU!x zl4#i3;H&eTE;4JCw`KiedMqe9BCwY-iIqz)#of$L@HT0dXDT;+7W=Pm!R(X(#sPTX!8XU$9 z2wRF*pT3~0PQ^Nc7WGlIIYUz0ISg2g_4=h0^QaqMYp`EXb4)w%isu|X#!X|kk?zlE zniwjyE(-ScRvUdkEDGA-Y%HTd8jnkFSPL99K`(>931*d`g$2#J<7E0dum*f)+`?*# zJcN8f!^$P0I4t~Z%q$!e^vN|SjP0E!MPwlsPzTs|ohi%nXu><&+!-2M=}qD{ocOvo z$o}T%^xj-}z-#Lte}HSURoSYmXPRims!ezaYfay|JJky7cNT|guRf}&7T;JJvWsMZQ+>QPq`MP2R~Vyngt&ft7^Xwux4wb{;!%bUJ^*q5hUJdewJ!_o@F-=qkE z&*r9}nEU~4WP20%;EG~uQZnKsj@7YX^WA~7fe@CFrQYm9Hca^FQ?YadzLHId5@TA& z-;-)Mc)jRmVe+{di{F+2jD-5wQ(CLvBejuvdZ+@yyH|a;+hhn2&bdB*{Mht;%ScTS z!=Wi|n&?U`vLHG8R3ie+PH=KI=Sl=3cBz9C^`8#;NQ{1nLs^-9y*iwyG+G)L$c&?! zPr-G%M?jd6%bX&bf#lo|Z-4qJ?*1r8qtO!gz-OiUwM*p^y}JLv3^FU`l1NE2M8MMUJKA!WpZxPpR>bZ;Ri1QFRY;OK8%UqYAJW zQ_Q<9ARHMR_pC%e6|SQkFH@ar*Q3{CFBk`{xa7b>@#aQ5^ht_;SW|E6Lb>j0Q165A zTe9jy0gjr2XZ}*j=ji9V4->udItvA%CEgQMl}P@ z&+)$F{n59XXCR)`R1^zFKtM5E=X5=qc(8sgC{#e>9nm_v@8#x!JBIX!;v%Act*MDJz zEun78nu;$yZH4y*LoB*GahmLX3HYmz7F*nOqx9ZXdWE`+ca016i_5?KHjddH!We;K z&Ht!nxpwFXGS;m1S(GvCD*645aH(S9UD!D(Kl~@>E!ImlUwJI=t|($XsPR^|6o;r> zfpS}e#LnVDz16alz257j=Y0!qUc}((p_UY9FPIikpw(prwymkSP0(j z>khn4J2HN$=S#W@KC(2|H@U-MQ~m(-_(hs4IxxYdU9EHckeb|r^M%a^9eKOX9CALJ z^U$;prR15mn#~yTI^W*eojAbgWEjv6Ym0!mnHX$$#rJb9K_`7N8s=-#`JYEJ|0LGA z=5SQ(c23M{z7KqCDlC%AO)@k5e26#l52FtFH}y>hucdd{87arj8E5nNq4CYe!QfDS z*wuL^zs%urVJ?=A%ce8aiZ<^+n(7g+l?Y?ymw-6RexOnVk*O9N_2?FY(6nv3IHzzf zvb+yS_JbM7f~PN}ZM;>7O}{{?QHzQpmnR+!Uv;2TR6X)~{EgVnL{thIT+0q#JE3f; z)1GJX#2yBLiymWH*T$!)TQds|uwplRShu0UVkRR?mO^Q9XEqQ5qEP>gZ4%&38 zRN`)Gh?)(;z7-}N8jzTQWXK(xFh*49Tef#5iK<(nXzv2*=4?o6oWkz@4$Q$OiftCcY+i3%Mu)b?4 z-%`r1%kpsKm1q|_Y4#UcBs85t0?n*44BHEG#7x=Wa<)BeBiDbQe3F0QCg^~6$T?&7 zet~8lZ~7rgZh=$nktynhg;f=rA#}<-fFoM3zjRxWInHp@+7T$DtaTI-5cJ4@gt!6} zV9YI@>zHhk2G?r(#3k|lEB|>r|Lgt!w+}=BW{bCemNBusUK*^c^ZRcVp20Gp!CIkn z`$bJqIIC`;(+skI@vbaOdnW(y2M5&MD4Pbm=NQ9Q#d~*HdP{}22;hVS^d7My>{xpg z+>9p0XVzt|3EgZhC~$Ls*5H;r_29%cPNa(=USt9Y(KvyaY5A0AvDP~Xl>Z}AwxT?+ z<{Ew~$ghxWd;3^>0e_Aja9$c-W=g3z}eE zidlai(SMp7|90KFgRS%-rywxr~MqFlfxi#!y3-xt$kSlULyQ)}g0keH^EtLt7EUw33wX94i2aF0r&~e}@ z6FA`HMPt;uD0xc#X@zKhc}Y;f9OKpMCUM}BP188$w?+5=e$m^9=T=>wkh0B9s9yXN zP96ATmE9at;M|rxjID?#c0!ze@7}&1d@Ezp&N}XA4~N+!GZ)|mLvJM}?Y&3^0u?lh zy2&Plk*nZlM?{WRRT)724GT_|0vu!9)zK}Wg30kU=$(fJZ7TAGabCPe_mf8wZEctM zo#V{I$`9hp*OK$D*m4%AQTv0N2kf*8f|`TJheIrN7A$2PY>Ar#PF#%+Z3Jc!Jfk?Y z9w@~TO>VYwjH%aTU$?H}|JMQjmd&`iHEx11FgTuM`@%1;ZnDpi^r*D0sO^>jnD#1+ zHJ!a4P8w)PpS_EqQZ?0kHtu57nl%@17W=*fhZ)Kd+i*(G`0^rxGSXCssVoVgPtz|T z>dvO9unZ`IWm*0z&vO!-7W$UFl2lY&*us#CL`ZEJCd-|{08<74h z+ySD#lETtv0ZVQJx>wYGs&6=$3E&o=s)Hr9mD|8XjqM@2Tk*!{J$Z|kS5}kK<-;wn zcu{ip$EEt&5{hmxL_NO2x2rv#vWkiN+{ zIUqWtP(1lybp_eBi0;Nw)oSiGEXs)cq=$g5^{-ttrzb-1Gp@G~r6^OAY+rs4_549E z@qa%2eM0huV^IDEmz+)EK8`x3&liIUm|I@aKOST3^@de<@07)lTw4UyU>*m=W=U`@ z#7Zx?arh`w?eGEX(-hT{yBDh3S?jB-b34G-&DAKpS^}PwK6_KZ?t+9cvL;wx=yv&l zqErlieEdo9(Z+MUR3YM&ovqlML*qMM#FpuTA=9!u)Dp8dPfxq;O10Bw(%Z2JB^uf} z$ij*yRoC?d6C`4PRtc44z$|Of{y$&*f4#H+`ho8g7oNPjY*pB#<3))CQit?v{6i(| zWaZH7PdDF=8jKc6z6j{s)i2YN<*G6P(5yJU{dYn3fFra_nr|V4Vglb)T=`g08 z&;d-kn^#eHMr=cu2`1>*J~o4O*Jylo>h1Gk>kJ)kwrE~ax#)T|(lrG${Oj+4-E4DW^vSs&{tn@iQXw^r`ZcA5y;;a zE-w(J5}=hZOnG@hXxk?smZRr5?KmMp8(0!y)?eF)zMN{#>}%=lf5CM<sH%Wt(CrE1ZMk&s~Rd9Jg06sQ5-{xn2n!X=}Dp!MAW*?X_f zY(E-~qTkxbDg=FDkAeiP_Db1?xuyXjHM^~Ipw_~gfltn+aKC{Um~?5uqgXc~ljwq` z78z}a1GILk5GY2ualxCknGQt{bb{G(@Y8mQp^d2!ff;q!4nOF?RVbp?nriOu=y-uI zq{ti&ruLIp8E@KHQ%&jpK_>AQtd6?|#6l}AZGQVgKuh{@w4FZ4bVj za@5LM51m^K>>1Plb^j}QOAS)uwhQ`~IL0rS05@YYKEoZEg;w-ADw z?q!G9QEQDzPHc8#UEyAp#S2lYId9T%b!Uma|&2!8Al?lxJ~QrmlE{?tQ&9Uby3TCt0lq{5`2xWzb}QMD>Yk)YrURmy$&yjs#1tiRl&?v z9C@bo92Bu0-62y6ThdXsh=%A|dxV8*5W3(vmjRZ3r9@^4aa@t>S|G`C&F=^@vK@r6 zcUe6dnPk5DS3QYWo5=I6i0mpOr9LNvT^k22Bx64G5x`a5K-5^V`RK6nfPJEw(;Y+; z5T_N}6mzbUj=K<5y|p6+=_~(J^3$KV*#Efxs|W3A(@!>c-B|gxu4k`5Zd`p`rxP0e z2(_h{W}g9-gYDpRQ7#;EV0!yp8CoOGfm564h}hxxiOc6ic#X$t_zuq z)rz+2Y)M2;$_&4fl&C1TM`nYo7WleU1)Ev3JeKcT&5Y{;&epQ7BP(@=5648BijLi& zm(BWuG(Z8rc10+&ouPz+&tf46HM{k8{$|!S*Sf|(Dw_YV+d62$rs_Yl0N4z_zqxS7 zuT@;5`kqzvVXoaA|6o!F<9^>yB4=_5Dy(o`Cy$aB7;7J!Tym!h$bd^hLzt^jD+OeE zV(O-^*VO%vkqr9a59Q~W3UCmR0aetUxwiA`?eH5q%uGS8In(J}wNDC5K!fw%?k56+ zEz7fbEsiRw3vF|YalWe>=!|ya2x=4PaKVG!V#VQ>aGy*E>n=Z~OJJ>Obh&ou;-UVU zwR>q`!2L>`u)xCBiMi|F#Z|e8nSdw&ig2CEv_@F(*;$tbJ7)ez+*x*Fy^$&hrCCsL zD}2w`ymjw*Lj9>a{zNBC#<0_*xM+>mw|#ULh$J3TH~XYsb$>c(^XKyZj*yA((SNC> zOFw&X?`KcO_;3rJZ=%kCT+K+3K6eeI`fzTZ|Mj68eo`Jb^oKsuEDa>T%UX(I~Ed3&fI9Kr5En*rWI536N`aH%qyV zf_9vGU_1LcyqeW9UqdP)__=_P?E?6$SHxUh{%8j!QhtiVjKOQPfT>NVaMdvP2zVJbsTDCn~P8oCRBCX6!QV-=%FGLjz#V1LB7reWYF6e=RgHP z^!8{>Inopp@Us|R2j0K_1@L+c=*p&RgDUs_J+JHzrXH=;+4~JF6rVP*?e=j`AOys5 zFwKT0w7c5?u&h(sf?q3^ktJP;AJ*cg(+|aC~*_0!m~V+z@N5U2fkLr&)#Ae&qiIZp;;|;UAp79=_Q#s6c}@ z>+7T!Flw%Zv_*=Fb2^9sie#A99E+65dtKVk5it$N8OWA&^3NszxYOQ8?^&JcW1un!AO!vjVJ^-y>Bai!$IU3|><> z{N6W>{b3^UNfMW60T4TplcY{tiQv{OZ*(i3V2;1QSTsp%Z<*9-)`d1o1LK)U;`f8) zRaA%&r=Z5o7+9sJji71?>_evWzqJ_mpRzrw>lL!GX&`#%?rC7Y{}XMq&SqBP4hVO~ z)qEeUVG?F5YIzO#Krtz4psG3bttY3XUhIvLz6361ss+wj)DUOCH}Yxp{Yy1Ym-w%t z%b0T<7;1aIx%?7(rsT3!h3tORnuPVVYR>)=Kj->m#l26W9yUP@(tdr%6s6?gg}r$o zC>XXLnhDiZmv5%aVA#3}Zpr?hIdn_NH1sw!SJES{@XD7W8v>;Hf4t~Zf;r7jx1@3nSs>v8Kppy)(nfqzK; zz=)h%dfS>@pJ>7A+buLIaYri9*0|es;BJMnF19f6%xWQdJsd~_P7QT+TS%*dS}3QM z4`*%Ug<^38WfK0AiMiYNyiDN8lzt5=G`qR6MK8QhC8r5?{DI;7c_oU4p9Z&|J6h-X zkv8sEIxtYaU(l_lmwLpu*7P7)tr(S}mu(My{120v+oQ4O!UaemD{T=un4q&&5A%U@ zyuw`Xng^v5%jAz7 z&Y1fSM>rYaKez*faXcw$v%PM2@XJPD7xd_;QpAnd<@p!F_Q_n09+;G_YOf3ti`nSU}gr+922;qb!OKQrcwe9YQZ9035~H_#a++C z@99Pq3fvsx77OGryUQAWx29wkN}thjH9Uc!*{v%~bKePd44Y6kr%7RGG#n(%_8t8l znI>(1thGSkL<=rEZdRvWU@2NbH>}AOiHgoH0-eOsi>Lzj%B! zgu|zupeiQHAo;KJomV}-@`SVWL{V84?lIBfI|KPg->5M;1_=p3;>#X(&KV>8@uvv# z+qXS?+NeR!UlY`vt649v`CQS^*jyNVc<{`@oit~2yk}f(h+hAgVDh#*@+}t)+D#S` z1U~iYX_c<)LDPeBa-GDj=JM5v4I7_z3kY@j&+%{nweYjP`0vj@tNIS`{O4AGNPn^> z+TSEMdIE9dI?|uUuOig`AOKx%roU+6&VOApDiQX0_k7AP+J&YQ`>F2JNeYs zx%a1HO%1CKTa@2CTb420;2asOPl`K`xDz+&&GYqV4YqNZ@=uaSIYn6i8w!p(bYM>E6Quqb_c?R~eDt&N$hbw$1cC#2#qq?ch2J#qF zUv27-sbLkRtcLGy?F&2(U)ca6Qu_cC&STB>mgN2xwK4;2d(fMYR%G|PfXC}Gg(fkz zyQ#N)d)ZF{y*u50%I3!hgD3TKx1fu+C#Wehkml@1yUehoLL+*bG7+h%1r~^#(8VEy zB5Paf=McY$NGvwIO1xyu+p%MTuI47kZmq%gFn_=0K|hDvWR(Zu=3~fmzMnT{;9pqe zzrQ*6J)BExA3ptj<=+>0I9apqiG=md0Vdb{xaj(P|81FDR&k2TsVX2Nr+$GMrhEh# zBA~VAYYG$4lx(q1!$#4qH(YuwI}Q}Zb#r$ zG?36kHMga$+}|V-7SrcY!+Z)!0Z(kag9qcwedr3{gW-X(^BsYO z@&qcDn8TIRo#5FhvPiKVUh75KRDE?Yb109F^(+U2kt0AN|Lg%NbD#WerR(am*-HN$ zxbcGfx|sa^m-=1!Llr(M-)soGVQwM2+20P&me(#k;S>D&#TIGQEOFo^_uVHi{+iBi zxJWrl*sGjfD4Cx}Yvv`X>DA$iGy?7+5VITWBZLLIm7lGavb1Cu*zXNu z8slaB=!|I%AVe$rN*^w$uPTYx2wt}+)ly?y{=BlYjQSRuz;SkDko+_6Y6ARircSlL zbY-u@rjJo;fl-7t`2u570L|->jD34K=c9q_3*@B1i<*w=M>3V;4eiBlUv5=-Se4a| zUm30_uBR1uHnv%0mAjeSVGZ%*0*CRUQa7iFr7w4#^-#X*g_rYmQ=&r8?#4|&ukgZL zR(*I1B4_0KqG@6O zrF49IWLXt3|I+d?bddPK$0d-1E)p>C?(<6Z6*5{}@6sakLZM%tPDt4*mZaINhcf%} zvdM9Lw#U6~z;KVb(Du2?((cgV_Y998ej)pN@5?r6rQUm1VlOh8^9^_JBUrr8z3x(l zyQ3^Byx{lwY}_|m8m3LdBX)0d7}{Jqlf!$Z=VXX~m%(_=rT4hY2DLwVB89yM@n2mh z8%ioCn>h=4HX`b@oHRebRk72;V^k?8_@8$K?-Y73E3)7 ziI6InSryj!fZ-7B>uyGhWRKts*^wFnwWzCCye*8gG&R=TtADfx!(U>P&Eqs)7>k{c z!6%>3eX#lXi_f*&J=SxQPl4W?OU&hdym9cBLqi0IYEBA@JaONE)BW^u;in0nW_jXf z*2(tl0X%|&_F_dh!OGLoy~#On;)=L#HhiHa1;gTYk15eH2G8CH*U04u>+{$Q#6Mge`y9vwXP8fKf(0r!EL+E$w!GFG4 zSJ1xg=Msjl60$r7tr1}phl!hWz4x|1p|<*N_8ZJzKJ$n!VPkyoQ;C!LBt z@mpo(fEm7}G1b;1OC_V4OStGrkaB;iTp)PQ`KB1bjBUb$S+0Cj+3VUwXYiRb}Ftp(mmscR=ZyHW7EmZQ6th?u-^N@RkB3Zpy@F- z5a$v0i{o>v_C0*doIFy9^~EE9A3fBCdHN2;p)t{#7IE^YhxeJ@pTw7;lv=P1v-9rChSZ4%<{pOnLOu}F{wurF|C9^O)o>>Z? z*2^6DnqdfuA%|`l;LN+vKIhZ_xA*&gpWpN0dFH;a>so7FYlZvyKMU->d-g$H zPxirY67)1%B;o{ z~hr*iX3{RbGdL?b4O9L^h8NfJqdiEMuAvlDI{-|hYpJrXmaZ7*$`wXMCa!X zq3^8goMhBs?Dd>z1KYYQJ@9I}w^Kl^Bk;J1o-B3)c=dilK5^t;rcatvB^#Cq2^Ee#W-dT& zgSyd@M|f+`hsph}5A%pNqLT=Iqq}7*peLrqdP!Z8PTY4n$EF2mn}bl5_nb4($VOpF z)0y6uV_U+`s75^&2&oO9mO4&>+{d!+XD{d{Z66M2#qyZ?_hhqCGGxtVSD1f#`lEx$ zv$sg@4+mYTos3Xrp4?#{RkZlgAK%Ku&*8$70xQKHGD5eVw#r-U#X3$B&PB8U^eVbU zPGn60Kl5$65jEJHH#Ku0KT7}p=*HJAzlxu<;L}UfO!Vbh$j`oV$E6si05i^)vz~VW zEa0JnyV}r`G01V=n>8=L-ph@!0itvoLJDwE+R3yMp-Xwds*D)6op^R;NCV#EaxBe9<5Ma~(@=&S7Q@nFt)+`T%7o z1Q1c_H6Nyw=ond)x5RW>>?SZFYO9Am&PHK^RKkm0W1|7pL!Dz#C)|^Gv;^v^q%sUy2!b}I8Fk9l?cHmfzQF^)eHr7gFZIPty@Z!bzBhT}m3Y>3I{P~ggF^1N$ zUu)4qR$m=&)`QBc=x@+4k8y*dD$V#a9$ABjo5-D3R7Qf^v1n)rZ#I-_=~LJ?6``rA=+T3JFkd0)xm2+05r zR(*ZP$R!lOj~(&MkwpE?D@r}m_uV*V!yO~8Xkl5mEX_~RV*X<(wt!{1?U~y+sPr-^Qs&c%9B$~4#=be{g-X`RnsBg!xVO~TFsdg zAN<*Usa|WP-t&HXAiA$zY4_fF&a}>3o`rzDv~+%(226}OMmn(XO~tL1&Jp&o2CiE| zf7tisJHI-|o{pL#30s@+axx;C@jg*kqED?fohs?;{VaR)wUx#zgq5u9931uW#e&mj zlfN62`SWvc51M_-_R5fIUCfVs3zbt>D?l3$5p~{)=_2+&_ZB@Fl&AOLIjQNq_ARCO z%dZDq=w81lpJ=G;vXic?6nk`wh19X=CyvofI*5Gkr#zcTso>AAa-l{R< zAz%|Sc8k|s3b$VksW3)C#0WX64AS85ID)q*g~yfbtYot+AH40riP%+^49$e}Y9ztM zwVqX}rUfd6^sbi?1XPsp${YixVXbm*BC{EFYLPcC+xs)cOeET%zV3@ZzH#(>Wrmm` z3RtL2+^wB^|G-ea=vwBl&B%5o;=@T3D_Q}2MBX?v?yRXiL?r?Ap7hO_B#S*dI`8E1m1Y2-{RF1+IM zeXvj*AUKPn#jmQih=-@Kg?82-?F5bPxagxc??LU}s~g22i8tAh3BFmZYA`hyoLnVb z(f1X=>>H5K*6s=k*=s7T<3~x1p4DlWI|%*)^6V~^YD7RjQBqorwkjLfPu1?$>)p4B z+x17a4b;=x5{^sxDW}%6W%%J*fDIOP3U}uUSR9_ALeFI73OHSy!(L|p@98_i~I$r`RfNe;< z^uA7(3xUs{A&!#^T($S6D_fOCTypK*O%mf#OO^oee&y22l2x4@q7C4EQ06-30N$2k zFMAA*Ws9t-R-t!1=_HSi&KsJW`)IH?krU>Eib`!r!M4h}S4p^u`37M!e((a958FE! zzlJZH!Z@C~f4HEZKbeq?(eal&Lw)yM_!^AKu%AwUwb#S>m|*c;rIzSoKV}mdqvhqP z!#5p?*6>D}N_gI0X3JZ}vyDPC+?*g+J#DA)`~XRi=zAejyDy%3Z(MVz7%%KT6bEF7 z_~l@dWP(E@l3U<+oX-JL(d{w=lJf^W1~C(z11zbXo=sGKgj)bh8e47M8|u) zQOFz#LDA?f=3&xU@(g>(cAvl$TcU~eZT8p@r6duG1UcPuoNJMKb#GfHHufR%V>Djl z+xvZD==uo0^bxQPO-e0p^O<6@ukBDd2)KOoqjJ~WHbynT(9H5vW?Xe{xzDbk=ka!c z$R;i!%J%+tjb|e*mh9(N?E#vNFtvqN?6u4X4?&cHekx{$%lx?X`u@DX+L&tCNYMN^ zsT;X;voUW9GOD2W+MM<8f9$@!e78pAxqdV(B>&8_7hW*mCkgfzV0yMb)*j%Pf=1P~ zo?kLs`C8v*vv(yX&~(UW$Mm`26%6?_+IZu%SJojwy=HB}Czc%hu zu#ffJ8DuDNAKB`b=6(QM?JX8mol6BS&~?nW--pN<;6!kxhS}{;<$*g&R`uqL9y^7- zqZaaC{0`)-Y4t41pl&J4kx!hro(e57Y%VIdHPBI0lNKiCKuyTMvGaM)s*)Zn?wNqN zs)iwJH$d+qHT8YEuB(0+7mZF%ei_nfmq|!0aP~ZZHlNX|Rp(1+lOx(AYmFBfy?Y2=8zFlY{yv+MOQY^DP(RK=5-T;|v|QaNT3<&c{w?{zFk zN3Hjk-Zq`*wTJj&lFNX(I*0P>yl41@Q)5Y1bA|#_mk$zEL&L)CH_KYj{qEZUS6|th z8CSe_OpQw$CAJ3g+xD_qienskR$WVC#L+{C_Pw2hErnr=e z`<0^!}ll*2bx<3YSa&@aYnK%{RufWYff}|f<749z?$|+-Sp?~IDQxF>vFx|m_HBKoVNN8NzuV`oO0-OZAI=S zb?anq`jtnW6uEShc_6tzuh%|P_QcdF|3Ww}#XVW@k&>oIn-Y?7 zSZr(U1lx^0gYldIfDW5lMT-?}Fv?*b!e+Vp$Vc`5h95H1G-y5+w+MWpurX+Bfo+VG zUWsvVmQ-AwJPHxD#WMgSy=_$7Kz5zAWCTXWE&S}8wa%#ZuznR&XDr;nbY-45Dv?Lz z+4N6Y{ZNakHdpPIfqfZjf*{AkC?`&pVN<@B013~*WtS;tFO?O$xoiLgJCa6O z)-MAiYC_osBu>yKH<`=g25XIK24Ae&?{1kfW94NzadYXtE6lu(-3OS(3T8o$U+L++ z1aFm2hny;?I1eMqR?*j^@{_qU1Xvwsiz{8`Ug^WgxirzXWcR6N?#Bm(6Fp5LlFwyIY4_kB5}B?Shr3yanHr>$=Fm zNcOg`!ip9y?8pU`cF8ghhdVS5G6}erWBj zdHcMgAQO6DV9*`MQ)$|cLJym77U0fE8*R)4I*g(Rb6&2ZhZ(00H6V6zfYI_Zj!2VV zn^IQs)PUaZUlF%DL0<2L+P_%-{8Ar5j?cit5b|WkAWf%D)|@Vy2WKcqizjA7px}8` zpNi=91G=#u+Ze;Q3Y#otr%pu3IU26)1e((|^j1GKQm00g7c=+v;eJYjR;rCirw=>f z$OQFgxM50kPZN_N19`E<^}z20$=G{C%cf@{+eBBIJwgXx%a`7>Pitpz!~nzIFs zn-7=o?y_tw_7JtT)Mc55%F8sN60Q9D4*O4_;IiVwmxlNIJn%y)qg%LYTU?aNvKJ`g z_HUn0#hCYwA$VkFlWl$N4%2~g>AU84LH^zv2mKlBg62wq=CN=3#@cz@ znI%rbHSBicD$kEOl%^ogFGE2zW~ijBtPI2R*!#Aj*|J5uL<6rnL%y4mZZkVrp@WB8 z%gN6{dl=@^K*A}YoenC#!A%bKx-f+*SRgS^MNgsfZ3@5nD9o5&HuYO5x4VT{U~9>z z#Mp3xW~con!>@S6$6IIFU%Oc7_-u`Ju)TL|wR_0?=Ax z@sjGhDY~^quuw!?;G#`q3q8>NZ00af?TRm)R@;W0^_gDtInK%%d$r{TRnXj!-BfRO zg}z;KC5II^ys`Rq3o8=b`yy{P$I`b{U)y*nk%G-hN%2Y7m7YykpwNgO9wB#?Yg=>Y zY&l0Y&e*dc`LRSeO6e4Afng#jR=hZBKw})WzJ8&PUI1K2;Jd;ext)R~W3cn>#E@ir zMA{lDb6AAqhWLfu?U4s$C3UvV8zB|fa@at|(y{4Vp%2#8-RW-nn>H}8_U^K3fLdt| z?s#`;Rn^PlSXOIpT(8sSov1YH0844<1NzLk3z~hV|A!wCJb=%|G*EX1H3XEGRak5E zt$#1A-=Ee9MEH2!QtH>Z`8uAUZMUZp!vb)ZH>UN@Kc;$h-(~nL*k(YMX(`p`Nok@smk)MlYje(? z(B!B4+E#lZd($LPRibOd8l4{`3)vW!-7jc7(c9W~oiIj0LAxy>r_OJ-m}bI%W-g&* zRKa0yI?J$gY(Q6vpF{QZCWh29GIep`Sw3<@e4V17o8<9U*f7%_t?5REbWr(a(Bx6) zAdfS-=PKw|p9Lm_3+dcg|_Hyj%aWWTF=h}pL~U4 zQ~Rl2so&*so+^>7lV-K^WwwTQm1$c_cUXy_ZXv_-Y@EUe&U$YZ;y#vA`bpy59d&Lo z!=|*+FktRyRAc}%E+MT1oJ|p>>fNmcnN@l^^9<2@l`P-S6W*^1{1fO9lPQiL(#0rw zy&li4edl&Nor}&&#Xo^x)oRTEaXrPZrAwUcn=DR$cYu)y4d@(F?eP9;>VAZp=KY%g zQCIBM?F}*9=N3J-Z8%Ct49yDCaWiGf0@=99-Zq^Tay6Xb+GU0GWw^B|<}(`Ojf#?L zccspiL%e+`fVh~faR=U2o7#1kFBp$95k@91;#aQ*24|>a_fv;v=LO;iJAA#Kk!w@o z#f+ya&Alq$-E$TDj64(PXweOm6=h8mf_KjZu9jR|iS)JI=K!WEfls^3SGsWXm%HU7 zpMPOnwK$2rfJP=lZZ&pI@VaRM>WK||2#xL; zqAa@E4BLWnG^zgBa8+K9aUWbAuy^`2urH^n&6}gd^cGy!XiWO6tv* zu?&iVBvKa?B2m=x`jks?cQ?klBIz$az;8C9SA8L1^7ZnAu@A=+9vDSpx_wVP_A0*$b*k4Ec_Zkych5bf7-e+b zM$KJyWQ=Er{nJ*#Ez{uiddIBAp{tISxlA3nsUla$;pL0{;@vOR=k==B(^-pM@`1!@ zlWeiIXje|uaFf}#o~P-RsOQ)j6})i@Z=UA{{pk= zz4YB^pl>qQhoMl37hiOr05XjrN4kPHKc}WHM2nyMcN{Bz=b#~V`uV{>U7N9Ne+lC$ z^_LBobErv!_b7{BrZyGyz2Fc&qdXwVLP``XtZ&Rrz zRd-u3*2=MIp!8bx=S@r$4g)bZ?)%C2aVtGvhkd)##4dd{`HQGhIMr>AKe4xbmyfu{89Nn)37Bs~60J zP$+uZVpDrjkN8Nl{(5*o()mQmP=^vbN6J5-hv%DtfeFbSGj9L`Y=~--#d~B|jw0$! z3S~#+b#NXPiT;CJ^9-#YZ$CWe_#j5y@eWtfWk7ILRb^F;-ve1dha_G+RgeL`Cpu;t zR4tLBRoY}@y&51#1RC>=j+Q5_7f{Zd-Hs?X-3+riej+!;U|$)fMX!Vc(KBY~h815J zj+w<+d&Mhdo46G;PS|Ak%s}i1L@V*|Ok6!zxKx?Epi+ULwnBT$?NUt&h&aYUT6#y` zYASzkyK!lxCTx4D6))V-$21vmfPCjv>$tpjh^aP7G~U6Uh&l=uK+=0wTHfr11kMfl z2KPLB27<^J`r^cZ?-Dnk3QLKagEwNcS3{+KzM~cpHSci9FaW=4v=dqU+kH+1sA2Lv zkHcdE?zF(@RKix6)wyr4(;K>Hrk_OK-^07%%*LB)_`g1Gau+7t6Z_MGP81MzQF>>y zu~jccYyKGthk8-5wQ_y4@r3cBs**psPA;po60}1bu{gWYvkCs7x@j{y* z8ZuDmDC=N(uFJpFo7$YU#-f$b6LJkEabD8ZwN$3P+}UU*9kWa5Adi0Ubok$}ZriU$ z?!j`9nF75UNGba${V*u($&h&JcaOT*vBf4^hK-gTinJHT;bR~qxZeB0DM0fx%kEbq01;Bt zUOGP5raM8#lr?WkFFv;MUE`}4?^b-MMnt<<(?vx?@Qn|(+Y8&8tK-Irs6tjtjV&Hn+bKG|GuPI=43%ROkCDCGGaA^#hw00K9OtY){e6KvAZrYvb5r zWaW85iMwivyF9J0w%35cd%X+x&kIN1kZ+dISI%S2cD(PNaS-P_+h0l-Rc&&e)3@F8 zrEL3RT~5Jd4b6nf){U`G@k#CsMe{gF>Wr6IYWb35d!heDMDqTz3wLg0hU0w zt_-(pb3{|?D@MqykV)bwZI{5W9l30!#K`Tpc`IEe8biG!?5jI}?pi0agfwGx@lJO& zIkFnPVSDFk)ol6R@T+s+-Ez6TCj*>L#DkNu%1CVY^wdiUoRQJqzwd4ZQOZ9x_%AGG zEYmp6g-j69jxGJoUkZivn{(Pv!3AS&mw|f-pYi>s3+sP?T{p6I*qdFQS__Sa`i#|- za2iTF1wD4=?7ON8=3V#APm^Eb>kMJt2lE`3f$5qBh@F{KduxWqw!`DeiW3`~lML;| zk}4{ok%eW3L|G_M>=MN_r*|_r^1#%)8GOh9%}m3-U|}r!_6JVR=u4Fn+o~`%DIhY& zn0J6McJ<6T+sh9=VtM~p_~t(%3E4q+dI5Dv%Ld-5qM_~ z_-y}%Hox02OH_@rrD zs!}^%NXCS=yW1+*bC2-dqm`8Qpg!Jwt*PIuUmgAWFQxSb6}m&!}!amxr@5n#-GLhN5X8ZC;qJsU^mQWj$SmY^z7(p-$}ctgjRw zooJrXQW4AGw0`F;2zX6Yxh8C!6fR;c{4h$m{YQbO0aBaBD@lphj1RoN{#8YyoANL# zbt}ZL{P!O0zCz)P1)GPonx__)oredPLd zKSQ`2pK9}lE={{!%7-8qy1aDt&4@ml_T=TIY&ywb-T|4eRO-ocM^*i5Fen}U(!_aw z+R1uyr_P?`e5U+iThc6b$X%(C~4R< z+~mUZDbjB4oc75hk;(<|K_pK-T&vVp%SP20~r$f%y z~-Q9Di9o^XtG z9ZTL!m=BJgF-4v`(Cr1DnV%1%S8<~W3O>)XyZ05Tcm5A?5B6p{9XEGL> z=ebr8Au>Uy$^ePG_4m!YZH?PUNBcBlZm~G#|n&qj7X&Ap+4<;XAjU=ZEFbbP_gfZbc!ep9Ah4l?8 zhe3~n93D|}k|EY{MmAb#4{WWe5CG|&PS=aRq(FHGVgdvKqgjG8k(Z1^=9}##66rJ zLtm=yd1&?gj`T~48rn~quWIJrk2oq-LeH928+X;cb8`6xBWe{1DUN+Kp?Lha>!dhJ zYr=Kc!vs~QSo)Pkx7{hVX=JI)P~#t2Z=G>h7-}o}$u6w&dhDRXFPX2&xfJqvYhK`_ z+N~lo6+=CV-G+Z@qZ1D!`}sFt+2DQ3htMuS2-um6K)Z?-(2!>C?*iVA(Nk)_VZD#5Zo4%unXkI_f-Kfy8tyw#`yG@R-WglH1 zu-aX=U2gj`DpvgtzT$eev+7?XX7SX~o?W-*_iH#K811jVI|(n**xZpM*5QVfzC$gf z=-JvbmcD1oxN%lvpwi;bryIGPkU@1Fw2PtQ5YCc*XCHwh&gO1$0cIO;@_$~yf#heQ zOajBcuimvu~Vxb(+7FFH8(VxE)o4K%Xh(J z!o48CQ4d_1A+Ek$H;rDfq+|iq@MVZv*BDZ^J$^AXYUnxDb-srvxZ#@cmGwf<66>;4 zsZ;$2VEixk|00sazim~}0x*K2un|9#H#5;WeRd<)rH^C8CfvHmr#HU+tTVfKI2B8m z7?7@Oy1LT^ZT;$#dSYVYu{N`b5LtoPa0d8(l9CY2V}Ektlcm+uXo{Gfmc-!Y9~LT- z9Q$a|m)sJvSSn8|C1e9XbBIe!1~^PYH^-%|{*I3rY>31GdEcpueSA1LrXw=_CeSO7 zINy50AT3j(tthC?YXF+Td$q`Oq=+uq>;N^x(Nf^u?3=Myr%qpl!>&{8=?Rc_gn?u5+me7(f<*Mr2LgHaR& zw1SVwfFl#y24~3{k>kpJU6C@N5|Mq&&BRu{)k*Eetke=et=+`Z)gl$Ulur`wLuV_b z9fgi`Vx-)E%DIem3t$}D_D=zdbWZ?^;EE|s**5IT3B1@JsmK~l=7sl0yol-cuwGHe zpr3N14F(2v_B;w;l7J-7(bEAz*E#inu#&ghHf|G z>keG(D@U&|D1nJ&+m>2~9vwlIq!a@QH~FGs7Conn8!g2{af&!EG`fmxIRXkb@K(a&ecYn2N94|Ki4T$BN9M5k!r@!kxu zG2YKg4h3i3?wQgz@wN2PEemwVpGYfLaWSQ2`$=656O`LF^`7fkCv!neUE=#3IK2c; zB$f+Y>tEjPioy#`J)5`CQ>YBQ3b6r~ z6#lE3Fw69emLT2@y{qAqYq$kV&__O#A3_Nc0Ye-~#{ zMPV%Br38amUi1jx$OgCD$Y_e7gtsHR* zZ}4D}{gy*lMtd@B%wZgE)Hb}*#|VCK*VIuaEFFJ2&NR6uPp@{DG~JQ5lT+TbhCV%F zl=MC>ri9~ZQb?tfP-QGvUbL5>d3 z=1;3tYeUFCz+!%Ag8DfJ4;BWs@s%vP&ET6~yIMG1Qih4E?SG@rz z+t?V^7^f5opE!JePPnUaTSWRDn!v+RHK3v1YgoNuPW&)O+f zo%&tB-Izmltt~;Ph?Zp_rw45S2%DHrpSWPEq&WTw1s&lYVbr3)Z-4X~+Ljz~0eSp>f2$WjvC$ zRPuu#?x~6dwu{wropqRvSxpC)X907|>0s5N*y)GG|IZ7+qoy`wEeM`)_&O{gObeFP zB_@ysUQwfNZ#yCNL}K_R=Wom7Wfhvf;p{Jj-kdDGF*Kczz{s@rF;7$W1YPX&4@J&S)i_M#^UaoAzM&R%U z>!90H?F*a|4SJ7M{=`1;zY+ca?{+i=%QvBkUa!itUHq_qGlm64ES9a^Y2np;VJ0|} zD(e0v9$DG^+pN3d;Z8n6r``_P`=&WR@;UFH24auPk2Z6&JdiyqLHE_)6{Nt63f<*5 z`mNj`N$2-}MG#cW zUsVsE4E8&~Uy8ni`27QknSsaBy6mvmLT{q+SJB-N6dc3AYZ=9y_{a)7W6Hdw_{MWtkfps~P z2XTbs+=lx0JAmbT zLxygb`p3Q~UgwXJH-~uTMHZmG13Jb2k{MQ}o-v;*ZNP4L2xfPrz|5Om^~H;k6fQSz zA!~}9>r3!cKz+K4#Y}0-nrx0dj@EPeyy5g^FF?v0dGC3`72XSCv3JX5ZO1L$dk9}M zwCeq4U!Ak=*<8Ma69_IL;A+f3-#+po@_7?{40i+v#Cp{gpq@W;g29nH$XjW}+@!M*G-g5wzWRDM_c${<3XI+idE%wp*Fq)-@! zv-t-XDb>@w5t(T9)NQEKf`wA_)Oonfl=$H$>e{cb7SYv0PxV|6GDL(F72S6Ecj-n0 zrV&PbCC5P6pXyK=34^bxf*TS-41WacQ3!1ZsH7H2n_8l-ydmhE@F47;6*TvOIG2bi z8gPN?3sa~+PqrPbg&AIXT6ieY$0*`CkL|giH{V{tTj6tX_^>pH3m;I^_8h;WGELOj zt>K&~QZr)T5!S*VB5gF#tGM{RFfoRE1_Q>wOc9mf@6 zMgFv3s`Eev=dfx);(jI;YKr@RbW1BP@+Ktk4=@STQ6WW`HXk>kw*W_q^kv8nUl#O>7HE7?vtc) zQxs`nt08ebKKI<`deT<8B(tSkofgxcKK4XP6}Xo^G!*Fg&C19tSc4sd&)GX{uGI2; zL!?HS5(6{}hjIX%$-eWCrJ<6#J~$=GtQRbVQ^Zn=AFU^*19!iqeNBPQCD6C)!~u6% zgalu5NV4H(Yh7u~Pv39F0l~xFyQ;c%G53w1eO8ntpO_6=KFx=47I&Q^mapd!dp;15 zPsu2JxzQH7=rvT2S~;}nN_|9?)}(0awVRT|3cznBTbfSMhuk9Y>@oPD!b@=SO^2(5 zipP1HtLw~@=JYVvLm;0o)kKseaOf%oR;T@D(? z9d6)>d#Gx@_SfiD?Tat)p87l+DE&YN51Z_m=K-&NTgf{+UEqw3HZ0)SkvN_ux2uT1 z7P{mn4r+YKS0ju<51JP`byEHGI8!mqxZ+)GWS$v|Y%=v^)o#B_hSV({(YT^?jH`Jt z#`O4IrD~T(4|C@kW%$<(+v>*)92-Z(>Zh-@?`Z)CeEI3RW->wX0fwv^tlclfo2EzG z89jN9U%X0&$HI@`qmz zNup_<5+AJi+=uM${Y*|?+&r=-Vt>4hMj!F)^GX;r|J&Wsf4C+#rbm4zkk{Rl#w&MA zS1SXPnJrf~&8zm7+P;S$t2AtODk~STM*4CJn|5~s-|z+!?>Yj}3(YY%zr>qd6~>OR z`=X8U<}QqUvKGIcxev4sotkm%riEXy!PNwZ%9hqZn0J~|3Bz`Ue4PGO(&lIJW806ARp#m6!h_{awtA9v z$HhvJ@5pB?BOuRi>`up2+i-AQ(F$?$cKN5A;Q|If{EF&?w zAwN|lTxxFrHfO5J1HdKIcel;$wSAi{QM0w@Dx0IoSwS&FuY;xc93$T-^*!NiU%XK; z_W{J4PNH81M*8h>30knW3XH;)JHXegsJ`raZe+C7^E?;aWnQnJxPyd~%= ze|P9!5CU2Mx%2YdqZ5;@)5Rqkj+6mlmCa}>!uZKQ4a-fnuUhV1i8l)%5jIve8)rGQ zdx(oyz^HAR))g!ZrT(_tAXL!3cYTN*f=om_=sysd<8kpAhcYfU;xI&vIH%P7iK$`S-6wG)HD*Nz{wO#!!iK zg05~O(6KyJ_NP17LR~ z2PK*a3(CL}$15R01&7hQOz{P!U)R7w){ETjicplj4FUrh6{*kr24460E_~l+nVM4C zT`2S$Y5JNHK@E6^`EHFp+Yk`A?%;Lh*xjw`-mGdnf;&xsOUy_@L?DF=nN@*U47CEB zStw0+`)ZdinMq!bNxo|C7IfOOAguRk=XM=Q+2EpXQARvz{swkuC>1;yQ`UH7U|{f7 z+(WR<2m;-A`WfYtO4i=gD@q9tPd{5mBI@=zv#B$7 zF49qO=jerdgx&yl?QvEWM%uZOa}KOu+|8Xyz+MFXd$HC#_D5{1x8wN_ekpAd^*S;2 z4|oA%l<7EJ4Ji(Ye*W$k*xKq#lWhRwbBT#Jc%342@VV2^s^St zu$$NpV8UEAxX8JeRuhFpJ@Pz2B%8b#eW2zKHax*WC>JluhA>9eoS2?jd2A{JnTKV> zQZeQqW<&kODamQQZKU2M!Z3l(g}V3cJtS6$x`^AZ(u0xIgBiJ@J>Q_r0l@M!d6dHa zvJZM5a(yC+V4+Gk-@~#V>_Hty=Ya3APEZ|(dM%B1r82AdU!;Et8)R9IydegB+9A_7 zpT~1F#)i$D53mi{_eEZ3QrmZN=hS;0Dy~(Maz{#q|Cz|iJ3qN^T-GW_kQKKc{A&+^ zzxZiy@h@-3XYbY1Q5P&63dJoX3*%Ih#7neZqE6Raps%2JG>2#1jIz-2UN3PcoMahj z>&L>=i4dh1P1bi=JDb6Zwq5Glk@<0gVLX7 zRUwhWlIMf;O$w#!L-9b~$^s}p`OKIBXA$FU-pwXVghX%{1cV6v_JLa)J7%foLf!5<|XMcxuzLLpcWbERm;sz(sXnzQx{ z$I6?SRrpcopLUtQvlBsoL&l+d-S?)E5+HnV_zIGplB@e+w6=`U%B6A8Ywl7L_I8Ze zzKUE;&OI0>=<}7SO7?M>(#PVYK}O(e6wphyw@MDvAiA6N>A2@IxA#{K6VRJDF>KXR zq693AuE$H?JfD3f923rf{iXQFqxU#CvCh(4>&&06YlV9lSnKdbBZY|tY)X=(@ac||N9X(Z~|<*3v*tr`s0krMGwO4_>Dx;PSx^=@6lo~IV(B*XZ{=q zBK%7Bha`qE`f5%_gHCck>Zfr|lAZn;C4J4B<1cNuy_>I zhnit2)&n{jMgNB)^%)Nv4Y8t?5*=lAjK7JQARny0at#;xJIffg(~ThKA-+pTSux@T zhxI)t%_OEL>V=J)koVzt$?~*iem5yjTfH05_V7AE_5pdV;(@!22{xuiE$>fhjx|*x zOq;(ZtS1sylG>48jcb2`Pkv{B4ai@^gm?$<$_2ForFvC6;`|e2AN;UVds$7=Ge;mp zeX}P26gffT;T(<=yqYtW)q|&*^7`dwkaH0gL95E6s~l$BYhkVD7~NNhEW zB$*^OIy_Odn^yB`kb?=cXYG-g;H2&CFu8`#V4(Yk*PN!5Fp;{JmIG+B{W}exr{X{F zne&llItHft(3?2Z`@#7>7RPrplcQF%c*n;4M^`>)vz7$Qtf7n0ngC2@K zM|TRPzRnK%Px?N}hwb$9Rc=DB5c;QWufzaEM`u4&762n1+opK$?Os)p-m8FMomb>Q zC?&PONUsfrpU7$Wj17_g^`NR`vzFH?`en`<18#Q9OAb6xXd!xwxI3f9N&^vmB-uu{yjp_`SyyE&Z8WXYc(T zs&uYwNw>`9Gp}H*7;)XmOac(BoDAH}$rqMv9JkIm+Z-y7W%s=8eA*6UrHh^F`F{-~ ze$nBlK|Bg0XbUc8JcOIJ6`+4G;sSg4WMDe=oPosDXr{W z$n*Patu0pX9yQ1*9NnJuwuq*ZUczMn>X_Efeg$=c*sS#%Nt&YmU}ZsRJ86RaMPx4v zK8W0DSI}sLC@Pp9p8f2XH|=2(Id=*xMFlI+za>S%UI-Yy1BHj=X#MRYAerGoWQe3o!$o@BuShQF&yZhOpES_)%$!*IStQ*Ws_~bi(OZ+F%vRkB+ zQAY*$d(tWvh9Jr;UZ=QEQjds4F|myd3D@CrM1+goDs1>>$_ijeuW~$a{quJ9t z?>i2x=xOyJpdt+0}vIReg##C*A+{+N#YMFO9wrCXN}A{K9!eY%bH5atXbR1|A)D$=6mn^g1mXCk;=9{!wgC zA<1QB6vp|j$y?(gy{^iMa{kH;L{8`&je|%CXv3l+oL`z^(&SH0Sx)2ik4%B6ce7#= zG=mga9O+&a#g34fS3oo=k}ZhHSx>U`d7r=r^!a*6&;PzX{-x{8|DcBu79kD3{JwgO z`K04>z3p9i5V}%XZ#OTRaMOJ{@XN6KAi|)AK;C;*Q7@7njUh4b$KFUSFJx?bZ;Jd_ zmOi zqx6oHfIujUbO;@!Mw&?Py>|$`cR~v-)KEi!oP57;&iv2C|K`k`n@lDbxp?P!*R%HC zYp?Z+Ie?nr$y0`iuX7cWLt}E*tan~>n%S4fIczhPn?C0rH0bVvwY0^6R50ao*8e#@ z&fAoQf3GK{eaWuNX4*ejvssp$X~{XDn8jn8@d~s!Es=^7C4ln(gHsJ4a5pN3DAo&u zk1$<30n{wFuuG4MyJ_~f0N2YmRn^Dj&k9w_a-;AzBuHu;mqkqZ(C`SPY@b@FBsHABhW&uH^d+BK1Ou4kdb*xz>EGfFgm%}nXA9(<6&~~b35UL~*WCV8m#Q?ONTdJ2<>ismkp<6_GFLXVK$E>GnmDm|I zUHo5C?D(Z##GmZ=Ip<}prlSyvvyjK+UaK;QC-VxziQL{|iRLJWL{ry`I=_C>*Z6 zOH95n?ZC*ax@uxm`F3UNQ>FCYL;NfBCz)b?x1zUQF&Cn<^Kih038Lun++FQ@;?w6wKaXs33QLff&bPWqNhk=Ziir4wJ>BL`X zt*?*Q=f)Zb`vvGy4P@%Rx9i-zZOvR5{n9aA(xtmKV!Fl=;lQrvR5g=S(l1yn=%~Cb z{2A-+u-|c_O7ehewh%vARWWq$noyZ{8uZeUXPK}BeG96#(Xw}XZ)|5b?J%ufSryq{ z--1F)Ter4|p_-t*Fvu7_vA(qbrJf7Sr-$|GJV5NZeH5~swqyydM8;h69rVjirlTU>k zCuW=Gjt#Jv#Wl;*w_e|UIKtZ^X9g=;R{6%VS1*Pw*r#jl(d*HXG*9sg|AN^1qN2gX zpz79!?}7Vl{c3|xb<6pp7Uo)9ql!%$`%Mfh;85CP%njaCg3NtCVJi@YW2T(qK|%j#x#9Y$(h2?zpsOFZtWKEBt2 zMt)StL|kt60I3(FM*2>wshNxDi?1)D+Y5{9>iTXklbG%0E{#y*-|wj=x@O}eZ*L!1r3nuEo(FKf z3*-dVw=dtUmR8?prItzE>|25AKw_pYIaA8p^`3h`io4rN zawO&cG=PR5nVx$)oeSX))whqos@7C({|>+D;HKCK4dnPq_T%n98m__Yyys+B@MjGQ z9NWhlzIgWoi785L8^9)&l6Y0uQ~cJfbg@fdeiuNj;k!y02f&`9TPd>Qwlp$<;%?VZ zs)*+rWA9{p*PcB4$c|>YHTZWrn)ScB$f1z3APXRkn3fO}d07eA4B+WcYP& z;{~6|VO|H1=lSl%6N9Fx8Wcd)U-N!fUE1MCTc_nZWOJIWWJB%qU&SV)(p{n@UY7*b zq@;=Z#2S0i*PsF5En!s2|i~ZkfQggljU(PQPh@~@Y z6H_fSG+WaA0H^rEWheQs1-Y#z25?+$q`s5UV;RJN^w58tdGfYepQ;IXw(2=+Vz(0zFVqGujVQS#W)-m%5N-km2*y zc^TzhVvwpOWd6-i)Wh=P72b(gDEy+*LGR+s;b#bw=MSPclPJ)2e+YuJ`HoRjM)9si@k?JV+HXO z+wEsFMqfIE$>i7U=V}ISA%|KzrprfAeZlvOf4nv^-9u7F`_t8NOFq3qacMJ4rxpv9 z7m^9r)ud25_R0WaGUl$S>>rQuQHU|~M&l>Z*}k`(T(fmN(i1@N^IvDvGDZ%{CP?f4 z^Y3emu_#F4rtKbTL46Ubw;VJb4wANQx!T{FXI&3w76rCG3n|ny0e1dXeicW(>A4z} zjyvVTC7fJXeoYwh>H5coA(f;j@^_%*o%3)7xMb8S5wb7mckrBmvFVn zi-L6yywszH9N{KA%&X{rSSaLtR(zfjODU`eBy@Ux@70y(lMra{)~FFzByNaXlZDjm-~q-RJ>ISv1mp@=fM>FxP;j zG7G!iJo$2DaXpU&*1$}9zC1g4mKfpfS&<)jtyX+Zb9lnl{1xXtk_M#kL3um!TQ;lc z@Sz+At4m5+z!-13>Py7pplVlZy})MWGkkFLd**qoG`tFb#V0Ay?u()KUVc(qT?%=Q z*Dj5hBmc&s$l3d$p~@%Q%N*5nM7w$&_cg!?shtR=*~jZ+%%BRtn_DN;ZsM#!PpwJl z?ia}B&U#$y&HKk2jnh&_$Z)-DFnlu_a~5u5JhI}UX3+eq*3art=Q z`6a{WM6~rGj5_7KGQkBJ_bl-!@bAD1Ird#btDp>bXvwIz#^h zRSEARsZMRp7Y_Dv{!1IMKoi_$b zKZJ2f?BGW_+e&=_^vYxF!GElZC?ANG=cm^1o$*CA?`r#E#x~)A$(O5186HN?CRyJP zx@Y#0M*}P}(HdWwE0j1t@YUOR>oELX29LzO%!AW+C8A0j7%KIi`R--+ zaV2(d(CbJYY=k}G_%p%$u9e?nYY5t2dnPhVT3fS}@hVIw?L?-ao@Yy^X|v}Pg>{|$ zjlYzy1ev%R*^gY~IQAyJ$1oGI^dCX4k!rjuSYB0nOY~#XtIfn0BgsIdGrJ<$A$GXvxJrJS-nsrAI(LoH@sJskv4%u( zshd;k(EzG9A3(UbP3qU}PG4tQ=2<6_Hy>hWh4vyQdKR+E;t(x27zv1+qryctppMs5 zVvbH8pJjMupU_J;Riou?hPIp;d%C_J>Z(+9Se%hvUg{)$ENbFOW5DIhY&wL0@MaLe z<-*Sm8g$pn#qsNatNCY1L-NZPe%FV!^HwdFolT(6p+3h}y$1BJ1Qf)S4lKMQONPzW;&zw&Fo9lry zk6U4o&q!oXQEk5M-`gG|)b4uf;URc(#n1I_;I0dvfN|VHv=Jk^Qxw8H{Qto{%DYo> z+3=tYn%j%CM86wPMP#o8E?pAHQkG;=j2#YL?_{F5ZuY}MW4)-CULd@f3%kE|l}%a# z_TUHua~b6QcXk~UgwQ>`I)^v9`w`KHxCOqNuj}U<1E5MS;iZ!L zwZ)BP=aQzWMNxW=8B9zu15lc8duuAx1`ZRFL>VaD(lsAM1+%oqjixp5jycyKCF;`h7T zE_GUiU%JlQ;om>fPZeJqn0+9#4CM|M6CN|oHjozTmrm8XQz@vyLzuMk?&E08i*`=& zoSC)X($v_XuY`o)C*jl-qF3RkUy}Z-cdNOeZ&;bTzw# zgS)TobP83{_3Rtl1du?EW#OikU7c{yv_h)uO>~6ILj)o6Zd=@mNja82116~7=&Lll z^tbD>X5#c{|Dim%vGReYQ|rcFmxu3cJ^BC(Q^h(W%6kPJmThYBX4azK^Q`Ax6C{N` zqUAiE6QNSU^G**Md&f8-VEt;Eta1l4EdC`+OLb_d*JuQLE6lPUSAQ?)$KvbAOq4~^ zvb~5?Py8?QT9)gWmv3xU(5n~COFh9$RM3RPc`@=~C3>DKKio*LolCyph0*16&63`f z7Hq>@=sw;(VyaFFfGCRNkRXw`nu8T0L!Oa#vq7ETOyM~jn~AI0)!B`Rt@2Q$rw>h> z(2UtZM=qy`(CaG4*{UI5ygbmQV|KDd5uI6fa=&A!BBiC68JlP;DkhjrvVWH{ad>W-qF#v>nQ@EYziY*fp_hj!C(;R6hJ2t*fL6 zorB$0i8?em8rz^(57y?y?*6E56gwGg=T=n{(zo(qSXEB{z~uSibn^qiKlQynCGpzT zZ6DDf+{*XYZAnis0cP)8TTwjN z8wXJJMCZgC&If*{*M=E(PMioB!ngG1Qo>OM(&~ot-rpR#_NJY8Y_imKF*7?$Q8|wp zx%Ivp2xirUKX2Uc1y${=?$BTJoL868%pX&=EVhx6mMcq~#NVgX3tgX?eW7wFO32Lh zzhSATGzibTK4p91zBjcLuR1w0XdqhqySAq;oE*`{pea8Ci<}axKGTVkG-j3$&A-@ z9`>`I5xrKfl~*O-Txp+bisv8JkNrLq)ESDbpPrf#nn9p`<>H1^xokOw^I|)fqGqa^Y+YejeboWro~7jG|lzYtFz-o7p#e%J)_d#u(Udvw}E3^4v8ff+{pM-T87 zal1@c?aQj(Qe5xwSl2+$Y&f##^2#$;?~iS202eWg97+%P)_r#a`hiybm-w}4$o+38 zWqAptEfEw3*CB!Q8ur~EnL$_eXv(+4YLDmee)qHLsk@nswP?OXRg6VAX;xiCweM9| zA_wMWA=&8ze9L&vb!FhA@dNRcY%Y-flWrZKupi>3EH>hIW1}S>J}hWCRrD{0j^5z* z(ute2yQkWEKP5p~7^XO9i6|(ZY1_}5MV*BkXEUX|pp0a!d6BI_87XkSEGyf-EXwfa zr~gkDSxK+4!)q&qzU5(KqtoHAj}yXs5Od?6moB(9yxi=uIhbru|7urZscEf4?W5=T z{pb$BTYuu_&3498w2j_Uybvq@WI*Y)K(4XPyHvApNCLmTdl_)Kl1&|PVa0W{HYTT! zh}fUlQ>EIt^x=ogHqZ$h<*P3OOd45jUB<*B=TE+$ERAFhxf41asF5hUKFn9mf&W{# z4X);^a_SmY#W*%ZYR@&>$yGvEhJK4M4=V@+mqr@G8ka(Q-+Y&BTCY|%At$dbHyXS7|SwcT0iR?uu^s@xRs}sXuRjn5ZMe3 zAu@Dq`D)TTCG6W*e>}}xbeBz|VK%qLjn(z_%M~C2-fYfs+D2f)ROX`eo#|E7-*g#A z<5KTDTUR5Fv)dvsCWVPBH3eYF?z|XtsLEZ(GD(M8|3mB-hwtR1u8tTv{rVCo-^egK z1+!s}oit_b${bfmMSxIkv4gWsVdBucpU4!;A8Br96*5o4JCr>S-@T%QCJM7rxfm6* zrjM0RB7Cd-6b4Wi+vW=5Pnf4zj_Bb{EGOCNqSdvocQk0>xe=tW+rOE7Uf4wx#5$(< z$>!qZ)14e-hHE%VHrAssXXLu%1I!~W$3@Af_oLhqp^n}Q53X@|^V{tX3zN!90N7uO9ZFhEfQxD`LP+7i>>NriVbnQtZFCL&aT%8O} zPZe-5ZFwQoAA$3-UG@%C3Lm-aZtPt=eST3o9A<1$e3zx0UvwuNUlgeGsH6 z_$*5QmLTPkG4oUarjCQr{~?MmEexJtO*dm>hH5X3 zE<3f3`|hs9>S3w^)E-4|Q8I&2RK$=w8SvnW^8g6hmtRtM-nLo%8LT#Wrema&NTS&L zPfs>8vnV}pLb0?#J@1c8_G#ape>2bqmw#4m_0;-d&$Y!r^huMqu!ArYWd9&ZpHS6Y zD=hS^=+HmA(@JCTjs6iNk?N)mH{TQMY)&>%K?RVV3@lO>Bz*6K2?gt!oQR+h*>esP zQ-I0md*C0zSxnEs%BS4~P-fwh8p>cwYREmxg?&0MgJ4EB6B{#X?m6Q>=1uQ5 zet~wX>D2fgW^)bRuV@CrjXtK_yEN5n)8i_gr+Ii?Za4-Z%+ z^AW0~XmD&RP4H( z@miZf1g1+ti7namd=ECXSU;eAvWbtJTi;!PB}c)qQ~+~1ZJ*L zKboLpC8V*NrA0 zUOc?1v|oC7HpCXq9T&8y+51UKr*hk7yJ&D&WIwvgtYWe}lUGRv+qbdW?V|Y6u>OMO zi7~crqLkZX@s!w;*yanF_!ZZ*r_MsSLZ0^fM0>VyFNIZ>`Zhm}7Di3)9@KE3msrlM;OF&`t;*A{0Lis9qK0 zAFO{y?~H6{39K$?sGbxNN^%_+d6|?5iN${v+*vcMdi$XyPP<#i!{R) z6YVocon1Z&G-TOXF~M+GbofttjbPq@Mvw5zeZLK&^38d>+Lq00S7_|p5I=4#y{|80 znkG1if^3WWW>t7%Uca_$Y-^*klxHB3ONf+RK`F1};uT|hlo&dC$$s>w-|}hnVBrCm zow41l$G+>WTL5XqN6EWiphZb^-n-94$i9hJ9lginxCktOKKBldpNL9TZ5q>V$J6AI z=KT_@y{770=7#-^_}#o{7RM_bZ`gU(^to0q}!4D1GSK)-gWlPx7Dd_+Aa)G$3x;(KfQ&`zsJ z8~?K{a3GHvbBZet4QTXC0j5Px1Znn8J+hk54~kRp0Mt1QH(|tF3Kk`BH{VRa7fAxm zuEWAIw8r>8OGI{fX~P7xc$qiqdw2CkN-*q&MraEj;j?Lwr;O7-hlMX-Yo~Lf<--Z_ ztXXS;Ny~f};ve3RrLfwIV9u%#7H=wtugfd$9%eM23y?B??j}czQ;1>OgQxe$3knOc zafYc9QR`VH7T?&cXd$BDAh3~fE#9vxMXCB(1pa>;ICG_ZF^uaaIo}OHdJ~!sNIpS` zHQsy18ENoVu=Li0zhX2D2WSa~u$(yG9OhX2oM+vJUgFwG{NyAtnw!0(4XsseJ32>;|3eOC<5%%5?g0;Rm? zIAsISdpT<}L0;U8U(G{Tz1NxZ+BE{|sckf#j^^7V^U*u4^G`9tMFk(ab$pMsTP9_Z zopNV?RCe;UMjK$Bqmj27EAg)`{uFiX0XHljjmpY7xH6NR+FOEonr-o48QS)m&>s6LNxSvvkQc1Y*i+@j7Uc^bQm=!kss~o9gGw(HBP{hz-@Gqf{&&H?y z@(D7-6l0J1PwrVGLPCh+UrYHfy8HFcGj%d1QNfFoWV>bV=op-zEr)w_dcr@P5oE${+ei^VyUAm1&eO z3@k+_;`K8!qRgyy$ig%)xBev0^cv?)eZgx_mVCNw8~jzX16#r^bdb}xiO6yiy1 zK!6CpYftqL>$Xv6FVHyE*gt$waEG}B3hmrWsldLPRlOxQP}rcOZb|A7-k#;u;e^cf zLpl*7vGQqj7IMupm!3#z%+hdN|FMbg1qdMcS@6DqK$4M9Qen_g<;nF`;cywHKPB=7 z1N7|DW*LI2Q{8B%gf920c3i8yiEC8n6wQ{-H|w18Yd)Yuiq{s)82OErWrn4%G(Mi4 zr+wEOIubjiE{yv7aN**>=Jxw}Od_LP9HoQJ^0llx52W!WT?v+S6vGL+0rm-b7C(Fn|) zt|ODP&BCK0O%<}XB6YsRKZ5(hgHz&cH9Zl(*fO=~TE$%FsDdWGj@3=m-HL|0a2#N(f-0va@%xFp}q8eg=}C86EjbuJrdM>6Atd@& zS-POw5?{W$00O0tEm--q2S1;C^mSN;BgUk_tk4KwGfs*TJ`$nv=Sb|LTVlX;LIW?u~OQgbdsOuUz3D zElfX{Z{3bL)~r4M=o_krb=VvaV>3ofm;naAzp+6@w}$`1HiuH5M+hrcjhFWLrA}q4 z6h8kOC)|7N?Sgvt!&3`SvyeX~b{&M$?Dnt6L&zV;tc8}1P;3@a8~OD2Zx)?6anqvc ziD(NRQV~3PVs?oF=+l%P-|zjlng5*AzPkpAPQo9{dM`x&$5Vc zdyv(l8*hHWBfWtqHd-%&n&0?@7FpP+7k0!a7<$h5VsFM0XxMDY7CrojoY$QA(Y55o z?CLQ6#Re(QpLbbgz+uy+&yPnko3#x;VmBM#s_2Ef4YESVz~pZTY7;%bOglfq*tX>{ ztupCnug5nRtV}n;@;CT&3W^~;LFB~?z1$^6b{m_=Lli4Y%rE*X)rX{4*w6%*nKsK$ z<&(8fs(4oK(7PSI2_*LvS5#A+%VjJTR?I`&1eC5R39>H~fXP7B-GVYD>GW5I3j#XyYZ-Dc$ zl+L>&b%Jkc4m!i$E33^T8l?(ZcciETO*hbzHTolGdjTEUYRycdM0`fy|E+#?te1fs zRQ+?IYW#-}k{`c4c*_+sxAEM!3Z1%O4XeEvHzQ=_*Osf@OFG6Wkw{ePq;7zD z1>qOz_L$&3&R&0IUar=wuLZoittCH^`8e+y9S)PfG%Td-|uYzx^e3Zk9G`1t3hu(J?%FUaX zt$%k-m6UCmJWITsMENkbqtu+@@o!#>hGZ`2YBd4mU_|^1`#)F2S`QydBIcmn<^~F} ze{LN>wA)Bzd*W^V+w}zCgD(wkQ>Ztir_+>KT^+p@_$%52cr|(x;c0YoBTp&pe!uUM zgU##&a(1n&_ZulL+9=xd-}@VOBBi5F3GCg8o~G5Nb*eqc)mu)gpU|~DF+nA3&Dh&7 zCuLWPSU4082}M6}L4{825}ve~b&|S=1XT5WioLzs{ci=a|34MPGlPgz&3Ne5=PAzF$)&Rc(cqH~8V#{QG=*3Z{|fLM|Qfn_6S*`+H@wMeDZt zRk_eemzLm)nrrf8iLZ`<^&KaiS8DG2NVMHy3`=uwO0)YRJB1>#j*Ag;qoV1`Qffnd!9$>v|gbon)s}?}*hJeWBAMk)=(?P7sFP_qIrcBG&Vtwx8aRxBlaA zO_43=yBzKKDZj6GbN0^8>doZx$!NGf#k~)88*0q6+tqi?Z^U-%6yxCtg?QZ+#blIE zpNJ`)c+?^|)FG80<89|^D8D*jWdt^gOXfCG8+E>Uq| zGcSYXeU)?wW-6HOSh+1f`<&`2aw||e7NRPSQOZm z&PkI;Jcji|B=gmJ&G0)lV)ZAaRSlMPX!922C(%|LT|iZMN6a%TTd`2igQfSXhbjNo zmx8cfI-^%Rixb&}9bDC7{j(u(c`2G6ok=ftxK~u{tF!*MIyeav_v6NFD2-zvvB5O8 z`psER|G0lt6zu9_fgk<;Xa|Y9Z&)6<4~(=E1^c5V?|UBU$PE?ZURSJbNavvwO3yWH zR%O%KVJ>Nq?ofCzHTaRDl0H(Cn8gV_`LPgaqiFbkv|q}f`}duKA~s1nPb%3mww(M| z_q@bM0}AQ1S_-PrdS3JOk_B(K!lh}Z6c!RxwGvA2YnZUXyuM+gxju;x=dKhUY-d3W z*z~j#qCV_PfDM?)>(KexgK}7MKlCXKqKfmZ1N(-I8@>1*v-z5K<#jXLm);e?2vCzY z?G+9EZ}G(SWu+gc8*fnlKJHa}p-lYX`G_JG_guQB!{PG>gEUS)9}HpcOg4Tq2_Z(x z)&$Mwa+Ku2aEq*{VEQ+{JQUw2ildU}rmod9-C25u!<160S~(pY`Yx6PU5kiSB`cBJ zal5~&>~*NYs=$(1li>ee1;waT?F0MJNqHG+D0e#^~U&RGhXj|z|&M{-{gyCXn zILpg!seqmhp#5T0TfLvSt;CpDsD7WcJIPM6B^9e>?P% z_*6JxV%fX&U`_{eyY_bIi-^niRVtug6|$iPHI8d@@Q_FX8{`gtqPTT+_SIKx2uoVP|gQY#d*r8>i*#DLEF($#{5&nn_jh;sFCRh!F4G`x#0$DTYIPZ*Hug3(x_p zDoOmu=sG+GC?v=wj>BZ=((Pc>e>A@E-szpPd@7bm^tskAObf~%SFjt*YYNyeNM{6{XSRtjH}l;;KbUD^QG9|%bYVkIEHRY?S!8u_ z@lAKdnayHl{}tes`%FLr+WSDIu85n9;H)?1g3tT9$U-|Gslk3y|!1b#0 z1WI0inhmkM8vl`-dLtisGo$Xvt=*>H!~xxp_^!Qix#ajodkTbHRu_-#GzxfR_chQ{ zF{X3n)loA3(SGs};2-(hIHkyey4Sg=Nh3qx??|86GUe8T<)rUSR;~=a!3{L;oquZ* zub0RCQ(@1!LdNdWCL~TfNx+3llqCaG8N>8IbBkVogs0t-WNnBDIm?`RL8F0qM8_9A z|LqCsq}smvPyZe>(IC8~3vWyq;cFccg+?u2>lN=NQU|v>(djvlt}m|>eguWE2q_2- zyW&EBMh#yb3}W}!7}+VDHX&zL5_ca+|$8O;B^$A85N9oI7sqzQrA$wTTgR-ANi7qc;zLZWiP!GF1ZM_ z&q|X%y+2zLyRl!hZ{r~Lb#0P1Pv^Z*Tpbzs=l?Y!xj% zp*Rzp`!d`Qa@G(CeY#ku@s`i{r{bM0~C(PbW>N3C^=c-61G=^Df*o%yn5E{{dV;;yE9mao!Z|$p&Arf7$M@O5i5N#Xx9; zv?kW3K(DZK7zXv(i9+rOM6eapWxw5))8}HSdl5|~o@4t2e#ZitzhCtlCa5Rwqh*v( zYGG4>WElXDhb2a+<5xuqKmQ845jT^*6S!;`~AV6mfwaIpL2< zRFHjlJFXW36-5dvs91Cl9G_yMjBRP(VmppJD8uKSMsCr02oA2LgqbC)DB`|w22us= zfb^TTU-M>at+s%l&TcE8)tmMt`ozLWQc(jB@ z3=J^?xsJ}UFug{g&1?bZt`WRW(TfM-C#T_=yPei^#vyxvz@7Q)fFK|DHpVlFA6JEQ z39pHrc7<5axWL7$_M#UJOvDrW!jH715reCS01~CdYttTI5rln%0^daLz^>(*492i` zTSqcgkaVM)o8AWFa{JeAGnd&U;JR8^to5pg*;2^a2nnQADOGm@SN!UaWGTCISu8WT zzMWda`?39I zoQqIS;tBl<8J^%7pchrxV(Cr#wL{6>s$JYr{NesDfyOU+q)`$k1%I)H4O4Cf{{>ue zObJCVjN+Myqq41^Pft*xbh#(3xqt0O-(Qxd*Wg8u$+5TdB^FtdC!vI6QY8(yEk9dB z`P9T`k3tDa#69|X+}|rsKR>FMNGc?^i714u*EbxLBP(>GY2K?-zgLH2zo@hX2Z_|e zv;Y0}l*(nBIn%*RCI1y;)+#EI3317m`52tuI53t?+{cuv>+<1!c%HKyErO9`GcWC% z|I+1x3GL_5vR*$xD#zU8#}MX2kXf%v1*WP6;^q#PU#~qxv&UPxqN3YHL*8~Wx%`eybkC!Hvk}R?jLUE**Y ztMk)Y(%bMVVk;&;tPkVVGVWW%97=C18D^33_R)=nFU9wRKo3(K^T|-}KfXVx)4Adf zipfZ?`Q}1ka7hSs2hV?C6~K`WFW3`Yhsf`Csk+Oa= z8QIP*;E#uX-M}5Dmo#1~W1fqb=0F?+S${Rrk;fc3DT4HPN1m{I+{Aqd_ZUE(BIsaV zvkZ~;E_e++#RLBX*YUZTI+g^q@C3e`da;SC0usEm>h}}+@#%;-g%vt-VxG|ych7pK z`HX4vuidbqU&F?98t!y=GVjIm!HF!-gg!`{f4Zg1nKy{%+8 zNlpLrK^6DF2_}b0>Fit24^+{5Cc9BAI@2IEr?yK#f%1G`BYK6DTu=N5TmIc7uWNj2 z@Uye{Rf708AWum^LaA@isQ?=Y3rHXb)T&iUlYGJV*H5pwW$D#3=Kc2d{tBRrshKp> zIiwy--!MGxG2ogjDz7#n3P7%sfETdWDFE%k6HG;FMN{zPcw{xVB9d=e(bFMPp?} znknzEVu^!3F%?l~vX$3Aj6XCKvfmdol+77kIP@ImT=8Y-{mT?+id@?k`2*S{`nk@5 zrc=|F7w`4q&QB&UDn|?GPBQOssfGYw!tb7KbF~b+^!CvDV6l8;m8wOl_LBnVFNXQu zK3SK$53_xaQ5Z+CIMfdao0U^$q)VE$qX`7^FQQ)W$DskiJHRm?*n|+eLfl}Yk`(t6o#skR!0hb?O zqy4GMa^aF&?Mc5C@53RUYzYump*s&Qv;3EUwupAt!q1yKFLO`mC<` zw-owz=V|Eouyxz{BX}z8x7MwbMCEai@m{&L5+hp&RjAZ)q;NL$3i1l&+K8gWql4~JB&XL`j7&bNOP zLZ~{cl*BP0qRAO1jd2LQlO^}-Y{^|~qS%hu8{N~bxAZbNL+c{_+Wq?{&EMkdaszh% z-d}df_GvV^)zTJ)IrpJgI4zy1dDOl|01{}KM8`L* z{^~1P+N#UE)Q_1j>Y6`H!R~>W+jCn%=ujTN!;vp8O?8+8Vu5f4Z_vcF@y7_Eu6Lp`!&L+8! zDklpzNvBcfXD?Y(7uNknmLcu;3GQ|wEhnF*&Jj<>Na#}#QQ(-NBt`r zwx(n*{bqEQIi!)5^=C{ibX0%pp&zGD((t~+*wl;zSG=0yLg5>Rse=Ho1u##Nhn#a7 z>Rn7gUZ|FrTPNjr6!_43tk;hYV4rQ)EimrMlT@o_())>Zy+BF!OGFH>8Xd9m^w8`w z*hROA)O>=1+aMz;yX_O?&*$E$cV^N;&o?HLhs<=(H=da->rPg15#Dzuq-_nJL6p$G z`xD(DUUjm?#ar5ZmLEw7neiJIT5xPG2eWNS@Bv2M&oM%?k)CQ2pyu}A;b)-4fD6PN zuom=f&cR)a!Al@6PRfs+fHdU2&qC`kA2ID2v)00!(#=Yc$}~2D6o7|1(^B5spSxzn zgcIVsFgbb&@#h};+wPsfwO@; z?TphPmv>4axdBmyQE+B_5w5?W(}H$K+R-PU620<|7re^4(`=|qJ8z5$gT;-{N!_`t z^ZD3Fy13^-$|VV*uqKu_UY;B~K>tl|VO7&Sy%QXTjx8E0 zgjNy2)sA&q*4hDo9*>gwmr|2s*tC$W5**UfCP>=?^y)`CVNMe$gh}QRfhZ$1M!xWU zjceMK-=P=VA%&zfL>wT>Q_=u$c;_PW^LLUGROU+(g!O1;y_2*t0{u~(IgZ7*{AQm) zuGb&K z&=LX}PBEtY^y-w)ypBY~z|m9nlPDCs-Wl_d%>6+bHM@m|K-SZ>wQTtU7ow&Ooe;~YFL)LXe z!f!>@aE|DoY1*HGLg$+#@z1oOIImmhilgQRj6&8TjSwme9(vCL zhK}X-9boMtUj{Z_0iZ#^)$Qh?ZoOrT44QLQlaDkGqum>>=S;D2-c&XwOqrP`27frA zq*-DA(~|YtD>LSDT}rT;&o(uzwr65C9%TQXe(Tz+r9b~OBy((l5bSK^2^M}rOftzw za*2nRuK&V|8y;Q~QCB^7X}%6AuDmw3!LE!ngoYs#wxS}ALc4WgMfnq!FEVt#y=PLq zAq;&a(^UdRRaMf=h~L^9rLgJr7rsb0X3E853cU{U;nAobZTIYVti(gpk5mRkwDt6! zF2C*>S$}Qt*td3%_sHE!X9=;1iZsRIL1CnMI9S&~5nrY5UZkatH0so6UCWY4vFCraNo zP4SF@<)=atD48wNv<+(wCNda$uEpf$*)K=g$c3iMm!i)g1r*eVy1cY_|6 zv3<(|nE29tTbmUiL8uQu{-`5lk&~YZx6F`?Pr=8?UVgNZd-E{JHn&4!6$h$-68?kH&j~ z$?D)JSv~P8RuJ;8(|#TN4xrRRYLBo4(yX2{9}Gda|1Z|w1E|UN+ZPoOQBhEeeA1$# z^diy&1f)elKuYLEkluSuKtx19KuSP*Cv>FuCenK^p+o33)X;KY_da{i-TVH}nK^sz zJTnPNCY12J>sf34$|B(3=6=-@;H%!)9m9+cgOBNk$|szlk;)A{G;kL+Tpo%;&DBri zLYYyLyK>~ZZbuu(D23CMG?`?*Tag z#S?j2%6S3AJ!k#l8s-idZ4*K+&z#*+k9%n}NS3qFz`<^A;Lqso&=LQ>zi3w`d; zDcRq<6t2gEz+~pG_UG;Sax?Lanq!m5X0X1+S7G_Eq|25%9;FP<+D*q2WeI#t5}$g*-7L&t%@2rW#1CVocNL23 z?fXTp9@H^+HN;&Ea1&KlN(|93ka%A8$&EOz(~muk-U=lCNon(fEd3Ms`y(`8tefh0 z|EDTn(82!Z^m}%^Loi2*#20=E{5omi$8w$*gYCzK?18OXv_sU*En(k$-b!A;IJqLg zo*HpHbU)l?mXDsNze~{Q>x*{^^%L%ZeXe>*)1>!|*Ow0yC{s`RwC*F*MzxOX80_WH(sH}59t29 zP3n80(oDXL6oQn5<% zhK@t>>dqL!4LlgTSsaL;HO5t6`v#Med0w85zJ_frEMq?m-4Z){5+&H}Ri>6as8W2x zXB7Y55!r-&3Y*S>d$2NMscEjel}pF*KT5}Q;ri;T-hLtQ9n!1!VAUOxoo?w;ZM@u= znrm99m`isc*rFmO+WE#xo}}o~D_B>0Sl5X^Lu*#7@k44C(8j!LYj5P0yU(}jy~HEQJM#?~GrCEp8^B2U^$~LudN$`D ziG&?=8{Cx4x=WH z4&d~%396PajZL_$Nx&kM`Z|-yI6z>IMSFR=Tp@QZgETzvR&j zhifhk#=d&^;&jrr?sL?;vghaAgPCtH@r|zOF>dMU#oMV+c3zRkB=z-soX|AhJ4?T_ z>0J3j=>$qC72MxuCbTJd6l)QP4HRmSW)zMGmb83%Idqv4(YCd$T=$z(r+iY$%C6dH zjhZI)nUJ*x^Y7PDViQ#qE%JIQAONfD(JU%C=&OngItC6$wYRf=qIL|kZ}sl5=(LzH zojzI6T`b5#*b!NR9P$@%*axpA@1;k>6aSo5;eUG&AbTp8WXs~U<7+5*;z>bw^2 zTPiJt$8&^l=Sg~w8S`kK_15IR2v+EEMTCrSGZd7snhY{`CDI*c^@i>bEhlA&TTQ+^ z^r`i5+^tiiQtr9fof_b-4Z}G_J{G#BE9Cw;9^G$wbwcXKoUNi9(QL#7S_d~{Q)W%6 z<9doF-{^POS1J1`UuiaUtXTe|WZsOI!^{?v*ZUIB_1* zW*ep?S6(iCBgd8=4`~Z+3l;p-bPxDdS^ZVG7)ElYpYal;%P{c=GgYbBUJ{K5x0_N` zuknTV1X{#!vvT3n_4^SBoLOb!H@z`v3VEIa%D6)=@zU6`wK}-Wz>Z-6L){$urOgw*eWQExW9O2X zsqKi@i?3w#sSzpkqSbZ5XR-v~O&qIzTL>A2EtJf28b&e}2%gRf z??!Rm?S^6i&@XL5%w>VyK1&U!BlmTa0$E%iE$68^K*D&#(_taYv&#(AD#5eO7RHY7 zKIMP+=<2ix_0e4e8iYHH<5rRK>}=UEURk4bdhhXLk8`od4^Cd2)oChq@D~`4z&xs4 zuW6jp51Uk^gP-^8Mww!Ve}is?Rn99VC1)^_S?C_=42*}S2n(RNLZ#ULMjTo&s>Pr9 zq|fW*SHYZ*ugkL-UHe8qZH56}g0RG=k@iQ6hL5u?^J_Dm*_P#Pv)N9AxP)})9Y(J% zK%qfNRPSf_eW3r*8=gs7H8p$^$DhCjZK)nK+HpGx_)0SYGFt)HUkpC;r+F9lY_0M5 zPg!xDv1U9l)T^gAQKYBWYfFH4-Y3DP%ArIqUc@<9+k5A$*>Y&YPi2Vd^7!5LA;f(^ z^}aXLNoIYOZ#b0fwi^{;7-uT=1&QwO^Fr9uhBP6swHw{cvuTsb9Nk?gpCI6 z-f(|h%Tp;+5EN!hQ^md3;VVAo61A3*Oy|zmYIwnl;&>-@y_Lte!>dfA?*r{0GN;Gi z|qTfvE7$>f}0|WR*4Fv1hZaX>YFs z!R_3BEl}KjV4)Dp%_pO4szylpH6JF1euORttOq6%y)J#eF26sW_l7#} zwYCPo;JR!7`4VMQcie79DRRJccZT$I>ZA9C=o0@A{1+e^itpM}t25QRZS}f1vBQh{<+IK#`^NpHee&M%C4Rxw z`Bk&aKWu{R(^_|=q`qv!7c%&)ovn*!+g*@vVuu7Wk}m8`=U*Ro9p|3b%CYr!oUa>j zPXiz$2LHxS0F0QQsLk-HND$fiL)3RVKk&*MNNqxOKND-`CfJdyczMe8+!Tq_#Y3G-N6M zZv8UX05@lXA~*8OBNE*1?0897V{eELcr%|~TP)nYK+BpA@48!U(iq#>EW^`W zP}~u;S@G7rXD=#Z+3D<@3UX;ufG}JDyX&En;;{Nf#iaFB#glOC9Mq7CEBIm#;(rm$ zGsMpaH0Dc|8O-X@_o5ZK=?W&M#4eW5BGy&`Uv_Z$&ZGhpZ*(I|9>Q4f*#4ubvIXO& zxqZ~>f5Z2YFv+6&9g{~Je6B#*MfS5?4OKn(xfrhX$JCtbI6l^@85Ia7Ds+xSS@OMG%d5(Npb?^E+m;eKY5)IvGb{QuM-+1!Yl4yY3l#T zfFlDFYO%BDiSVblo(zYj-;htGH{BEf!L%&jKe%D&`CbEDl??u_kmnR#JUr~UIofQ; z7$+Z_4QF`ydyaMvnd`X%i-qqfs6&YS1g)3X{pmZmAJDOeBy2xl5T1T+v@by?&iKge zZ|Bs_R+Dq`Ahil_aJ9p`C7jv&fMkL-nmu;*P@=Ph2nTV-c;sw;R=wyU9jE!oG8MSd zNno!td674c-QC^Jgx~$@TA_*>5g~8fT_BHF;lS+}j>| z-5+rt+4Us0C?{f`ahvtjrMp95@=VnLetmGlx;fDFla;5C4~t#!>2`!R8^W^Y>=w4EdVE^KY} z8v}8o#(?PIOI+U;Ut^`ZlJ#`I<@eC;hMc+h`xCmF^vmbk9rYIFH|dofb%?d}zWr7x zhFjz-f$ioKb870(lD&TWtd=%iwkP82n0CtaqXk2q6b%i>YN%>3jC5J+1y@`zxF#l> z2@+(#-*N&qVV9!%NW-sZXFNx6t6dk@W(HmufBAvCZAYPNA%Dqq>5RC1{hgaeye@4^ z^|;+PA+=TSly=KoA8Ee|O9G#K6W=N8RK|)OO|2J~+FF{(H%LHD!;2ksK%5E8LSc@L zp-UIhJpx7QYyTNjNl2s5A#dh;4j6%!PGo4Ulm5JkPPYG!D9f@{gh~I7dC)GdEjF%Z zm?&`DLZ_nF=Exru_M$g-fBRF^?_Lle>REN^jM(9r^a>8-aoWmT0!7uH*)=k|p5S)s zz$|gj%g;gd?@KU4f%gS>5}DqX(9xw$P7chpOghe28*e*j57fKoUL6lj{VhyG7Jnz| znw=HAbGAFG{^`z5d#b99bE&0Uv7ROufI z{qTHBoLF~@Y?7U>O=)XH9#N!Hvj!V3eXR-+z%hb9#?ZU+sNBZ^aQT-j+u+86c?#mQ zFBzwmn-V8S`L7I|*EY?&#e|@xlop>nr4qm276fr)%}grm;~Yrz)D2lE<)JOnn9%6D(tJ#kQDd(XKewA9-uv)#G6Np$-7 z2a{EZ!B&DU-nFP^XAX%+*jZ zw+DzCW80-|H6PO}h3KE_g-sI64s`HU5>E;FrNay{Y}QPa1SN?sA(Ni#!P{(LqK>xu zN;3OtKajSR;x}#{vfetoKX-Im)>{JIHRZk@IWTK#xLA8ZCzcbALkF5Tl%X9e7U$VtD~#HyqRMVR0Xs+fWhF$_C8@r4K&b0}|H9(kfp|R>$7L@=C+9f~D^=1V;q6!@}yZ0W2QT zV+xwU><+AoUT!~jq`sSwMX7OfwNjc?GDPW~2?J+j#g!{YjfDFKg(IsDL*=`mxc zK{LPRz5;Y=kB=iR7Ctid0;&iTk2EoSVn(m}R7+(ydwzV_(z~{znt;+@`<+q6waneC z2#blrYHk@@beerJ=YYj(OUKuc5q&Swll04|=&C*RT|30GY7+HYdVjjMuLzuu9m+$RYLk6>2mVx*9i)CFqT!?bZQwt;)z_Ju@;E# ziiDY_AJH7n3{F`Fb9Qdk80~c{%qO3;iGiLy^l%)UGRqI`1!kXHgxeZ9DKQoBy>&l; zxtp?}u?ID4X-2E}9;2b1&kxc{2j93D280w>t0h`Ev*ZLy94n9HI1N(+(;zS}>f4JK7;5{+AJ9qcF?ja*prhrKQ_ z8ll)A%Y|BB2`jC4h1_qv5F^7(xiix*1tT}NKju4y-giTT5ZL)%?N>%M8JE6)%?0f4 zc`OVqj^mDcqsZBFb&u9OJOho4K7DgizKr=R0%uVRH|fHJ6fs@Yp|ixSEP^uN?9co(>_VnmxOj?t#s{uVfWnZArfN(j9b5`i-f4es0A+h;1;Y>?U zVz0N=)&=xT%k{?_iBJqbDVDr5vEo94-aO+PAyhTA9_No~V81h(*$-(Vu2Kfxd41YU zx+>IhFJk2Pcq!@JymE@^y!mvG^AqQZN!&HmFxd6%_%R*i@4-+3Q(SFL)NP;UKqt~Q z6m9;eGNuS%#$E6FB#IBz^CaB)nee#O+|0S<*TcBJ-@%lM2$$=5f1aO2CjFr~`KR-4 zX$bPRuDl6m@!p+NF^)qqIxSRU&b#^20fD^xhwN`JQraga%@i8~`%{`aXAYY~R%IN; z#J5vlFU?eCg`U@Swd=nyHf?`+JSGGYtm-ImrxafMD|)@j1=gX5-7$XYwrxUG*gtRJ zI(tP?zMeqOmv@-E#hDw1uv-DFw7^>6iN}M1kIV+d90Dw7vpqFH6YdMSB-{hzQ8n9} zb+#_8iQU13bdeiEs4(%1eVAD;rOo0TNnqSxa%x!b_=~I;kqeZ{O?E!6&D^WuYxI^3 zGvCzfB5sZ@oZb_=_>DIEdB!EcJ=0RM>q3$3vnKZ3iOC#!^U!B>C}#~n3O@1~pR@v%LWfM3j-$iyEAflu zUlxlLWj#OUSCPN*MEj$ILfd8b27i8j%`8vku16+b*ZPDjtq#@kl$_rF+-qC?+T45o zsYjRLwVSsaVuadr3!ls@s&J%2m^9;yHoONBbH-%eRgwoRtiYq%zO_Ryx>gZ3u5+?N z33P2k!2Ck;`D0DG7p}>jvf+=MoLIqztl(t_-FpsBx2)lJ6T^&pZ*#3?CV*cP=~UU- z&EFq!>Fs-{p|W3s?BUs%+y{=N?g|5pnDZ^_Q>WEQ{6=WwhOMmpr0-Ox4FV5{6WS|7JBQ`A%S1OB?=Z2v~8G|gGQ zPZ4}Sy2_-C<~Dp?52q8W4DlMyK9?8dNP)jzfXcgc!<&`LSbwPMeGw_HMq}qYxoyT zf3zmr5i@<5L@rT9zIdOmz-SJC79tP*Rb9O@a>js6ccz^He)fz+am^xux7Z$#>vXsJ zLaiwtk$!t~u;OgLBK~CW4d2&2mNkAvHa0FFrv}6`(B(>CLCA z*FwMEpXh8+@wqITB-r|FU|&@%n+!3sfA7CGrdwfm#hI@(;nXs`) z=7vT~wg`1Q+kfcZx}KE4L^^JX&L3-W?HUT#ToCTDhl`2)-i5QAkB>NIawFc6Uc;vf zzrLC6V5mXO-b|x=`t9uabPM#dZFf*PPdWG0T$79?gxOq^ zLvJ6a%(hlN3>jV7dt>^QUn>=&of>`G;?xir)3Xb?Qv6udjG6}+)LHA>d}}e;Nm0Eu zeK^ZTTwQPIHV2E(adfD0Eo(osYjQ)1$4RJ`x%>n~CS)2W_=vC-Ba*b1o%vo3d~x|` z2J#}wdHIM@P?G`~bE+BoJ0OF{jgi}VLIp*KTmzKS=KvzTX;1{n^a}yqvwT}{pmx9f6|$GX7iQ9t>=l690`Lf3n@T_6P~eSF+)p%d znhqkVPFL;o*3Y0?{iwF{j=Fc4mJTQ$y3cpEYYuz6I(Ez%nnoWxO_#^5D#d}|Qsc(y zLmFfE@Rz5pg3YbPrgND_t+&j|47R3fCSX*tX=etsv~a0#ZOz@ZFO+>cp71klPTPv2K~Zd^JZWycoLDB81wOR-qdTT7(VS9!d@IL31bPL`^0`-8)<>8c6v zF1Awlwjkd`z2g|+XhYw_k0&^BB}b61<8SO8lp&iRB^fWe)9YK&i~d;m{L__FmkFW) zIv;c!A=$=Ff#!kRv)YIKB+3e@|9l25Jh_O!G}o*eVfQ+ll)q5v{tC^82B6I>0uP;QeOe&LdPXFsH%w{RMdst zuvFWtN`I>b))0a$zKozol9Ss)NhDpR8!Od{&#ST2(5+@Q$jTw1R6Zfq*T>bjpSdDm zkcY9$-L(*xA0pWKVQmA`L&CHd@*}E0l#gWB>){si;7BHz2E^1NIOf%0W zi8jiu8A)I$xnW794lzArvsY|+T6`9bGatKtUF>3|yblvXqCDJpOF9@8JwDKhIAx}0 zkze+U6x|7I1({v4k_T?|?VuM)dsZ(Hj&R;Zv~4ij-*Z7Ghc=PauO zvqdkvt8?p?RF77=l3on|X%*w)Y5PoWTk?u9xrtb(QV+&lslm%<&K;W+bbV>{nFz{w zU?>P<-jDp=6+c*5*=50@l7+6Yv=ln}McMSvLN#Uj?5~lNx;^tp(yG=Do70mPGdXG6 zy3C)0zPwaOzdbhkg zd36GMZfhoo6dR7yE;fog8Iye99$yF^V)>+Dl6>%JRrHyLwBeQ4h#^w+V=OI#x;$)(;L?KXy)=;fs#bRYV^?> zO9g_kRe`A4HTe-YVp#6PZ88p^th^gCW>bWy(>Qsaka-BdslNWpP1KvPUr4P{*;LxG z@1)-Djhd*CcS66^_Dcj4V&bb5CWwBn{UP8_M-3x&`&e7fQ;>w~h9BC3$H@dN+X zjn9FvRX6|n9zP-I{^`|20)}b;ULK!+k9)5{zwe4AgmW#E-VTF&dlmvVQGq6dB|Rfh zWQ^q;64+5To-tD2*P4vS^2&6c7Ujv{9S%=hX~?S^o2h^j>#$QLl`%f&-iqV^)bfQj zP-Qpv1Xj|2di~S^t^akD=?9ofLzc=AIpmd<)k{JP5jIVK5=6j7F~oML+mbX4axgC4B-;P-dM zmq?1xYg%WUzn1?c`7hUvM;_R@rZ^=h9X;Nc@02tyS`F>FZwV~iB>ndl-9^~obzI6~ z9J0JgsIn-GTSyJEXYfIstDxShZthPoktc&)SyH?d=Dg|9ZV|;%w$VbygDRN9O`u!JHbO?(0a6VwdW>#$CkO5d zrOl_)ufxlUHj9B2`ttTzE;Z!rQiU0oBI&_ajfEAR<8yhQ2`j9$f*y+fSnehnKo%dd z8zM;3NHlvQ`_4h^;yc{-4&}PUA_izGR!vC?dI66xlVEMz+7P8b?w0fU@< zq75qTA<}bkPkO`F(G?hY0zD?=QG#3!YGY(E91P{9YLN%=-I{udt44Z zU}ZAgdJBUb1Nux4HbW#2OdH2d-WJjws6+sdl{jWMOft1}N6;>kyf4O%Rz_P+cy+B3 zehauErJ4i=>Hd;-PWm5cf~#xSB?fvl%urwrlszpSdoZJ*etUJWGy<&$rETsA%;kEORjy z@H`szhvq>7*a0}`@=l8iE_=&y6vF;P~elBe2ITg6mg1o#{vRu3$eS2!9g zfxL!-SiLCQ5sT!OE-`-j6y#r9zF>iWn+C%zsG_diE%h1YQ9HoP;lFyiS;z-(*?y}H zen|KqG3~$J10+;Vz4A$*2we6W&mT-Xwb!OE%E$AJaj7`)W8QID zl)B^dgyW_WutUqTbP^U>fbo||J-?l2GffpfO1whU8JMyu%OI(3s-iKc1C?h;t+f$r2XkprZM$FMYW};I(HU1HpyseV z-*P;=M6fjIp9h(p_x|+`_@6xcevj){H+yxTDS-rdB39*UW4}ucUnh0#yTE}M#VZrP z1|8#DC&Ev1>{Gf?g<7~GeCj!!)Bv={5t~&bkK5151AeU{JbQ|u2SG4&4pV5GxsZov z!N{jdaR>-gvnP&HlLg0g=|zaW@7Xo>~UVz1|SWVgyTKERtW@ z>KN`}D9?re^_llSdKOW2(dKe^|_PLWNq))kI$!dshVqG(6agxw}y*MRP&t zpo1rx-U0mo>nQl|Ve^yU4n5WJD%nc>oW4kV?BC&z$j0=@}F6NQ~HxFfVjECs_`65|yoJF4%!x!ht$E5d7;| z2PT96*udvob)NLI%of7`f7bC7;aLw%xcC;nHU6+^^l3nN_PLd@Z+Fo=vj=eaHOI5b zHd3jJ`J(FqX`(&w;aAEK4VJYl2m?B5X`qCt25D-gt21{Wxpx zv>Xe;4yWgt>Ma_vHXy#V1*j%_jI%3)B_DfDBb6N4IEpG&ZoNq(+027)N0#F&TNgS0 z|Jz^?-A~{0sZr7S%0?yEft%r4DOcpy-FONSE8huaswTy4g@j6l%2%JXsGGIo7C7@f z*I8SoC2qeUzn>bGxoINb9oRxh=ILro99z1XDb@^&%Omx;VY;6Bw9p>A;a-kE8rx~Q zevk$JA6=>cGS8K~D!=hilOr9Fcm{4tte=DO!u3b-WGP~{`Fj9b_jz-@Y3nj%rzH1W zptdo&Go1JbsUJANDecTcn}?B&Mw!IV#5UQ>ftp;Th_f&1vozG@r9}eS-TN5|qMp;Z z_sjqU2dx3GkfPOBG7?TA_zm$Jq=GINO>)GAXy2=+@@oH|O$L;Ig@W_ViO$nc%{q33 zib*$bG5G&)4)^~!@-<$Oe!=AmCMx&zb<`{kdud{G6XLgW%s@I5_z9sD}*Y;&Wd13!3t|BLb{o+kzFF!F=PrnE6= zj4j27(8_nraO=$mfJ{CJkPLkt{DA)5L-{zW)};v2oL4I~bp2v{_mc&J|`(o&j#qcy~UwWwuGF+!BF0x{w8zprSsSLS{wuj&ro){Jr znF4+n-FFvqI17nTPs;5ovZuU4Lf>7u6~1e|W&IOm)+@No47YAPb5eZ`rq!+Z;wG(t zu2vyBygHgPyPQz#UHizQ@pg-8!gMajh^WjN&($`a|5F+2W16j$uqcR%2T&dMXIAlk zM3ubO1tqnQ`P?GogmI#_c`>6M{eS{n!Q!Gqhh{cB))3dsshw99sQ1d`bjmEMVB}cg za~(hVZeD(ol^bYMH1@UM@csmZKZNFxPo6w-8c<$u>j3sCHSoyQlEZUxa9q(=k?mif zXJ%#GYai*6Z3OBcgSYL-o?=|Q;yb|ASuwnb;oV4fXx~IsW7GgYAEpk}J0MY4WfaRE zbvmXk!rUWjKZC#qC5Id%Lx_h5ASg(BD{O|-# z%CUH~JF8X1;){`+rg@X%RBQ^ew12h(LX;2o#+l>+t= zudaPY3Z~f2LbzxX0FsT+eY!$3vwkh(c4aMN=6ByZ!m)toiue9WwgTz|78y!=Sn(HI z%=?pn=Sz!|{aV#&KS@dgxx`~#%4db&{ZD7R3SJDzwyprCr^SuAyfsCsK;!u3gn>`I z<#>6J$WgPOS+V~>#efC3Qm1A(F+h9%rj0lr>-7&O7veMP&t-gC@y*)xq{?zcZuMvD z$*+d1J$>ah#BRRqYK|(h-w8Ae-9<@Ul{a7Rwb11K;dzv%u6uvIs%E3c@l=Z!@4eu8 z2y`p(z9pTeIbyhK#QlLkb?`e=#Pr zWIvpQ4?vW`T5M^Gr_Mimm0U+{f(;eJO9&kG$qNHI!;hyKANGBnh92Y&Y2fBRA`%||gs1TA)S_D!A@vYbaz zM!^oBOH%MesZk?V*vW@8_tLm+hwGJnVSodNn!-P2uLf!ge|?^xspw&`oHG|g9ba(C zt(C8`Y}iNQYWXqD+6k<&dPTB7o%83N?MSxEG8S>20hpfHgpyaNqm7*6-U5)XQ^F>! zv9Z?>wl?#op?2X8Sk16q?lbp<_NZ;;%%GlY7n=s&wrYBk-fKqIwUQ@`)j;1Fk+q)A zk4Yp|Wq7kSJh|ZOfp54lzq)JJa1mGEcmv}63Q|7FA1ZQpUL@{$rIdL9;C=qn_79JR z!U4%54%Czw4h^GBN$)DvNUr;u$L}hxXw30fF%S~kTFovt4A^~Ma7%q9CzIbqlaz4x z=HpYARBmbZEJ&e<7=0zPT9m`RHmOqTmn=kWSCHhUCalTBk-zEmFl@(HleHEgOHqEKLoTa>$1t{II@TW+3bfyKS&UK}tHP4?TrJj~H`BMzcCtI); z>T3N2xl%&p(MbUCt)pQO&t}XW@mDZLzz68-Ql4!E{-M=q{ao_2(0SCV_Fa!A9hl z@-qOek)*ShMYo@vtT39hqlvMgu5xjiwE$9@go(T<-p-ExtRwd_Mem;m2`=t+x-XUS z%k-MsaEYT&`tO$8ITD8q5X;MiVfpz#UlUbwv-a4+w~`_}J1RmnZ5pX`3u~=rN3?eq z`HG^UY#X<>3a!IL;N)8$ijTxO+R@&iFkW&Ak@Qqb%V9?(^6B!yMBuKShlTow0-_8^ z%7-M47@mnHskY9{MsVFssDbxT&3;Vh2YZ9T0MGo=Oh9Pd#0V`4xXZw>e`L$rQVqgE0+0iNIczE zb!`{({oXn63f}v4MgM4S6;J%JsY>F_fDZ5}i-|znom=c)*!{T^ZLLQwb~0*R(eCI< zQ&UAAJ+RcKU^VLK+LWyWQ?yzYu ztTWx}@l_-`9L@)6ge+TytSa_>bT_oB5MRh4?M=9Pn)khk9_CB>? zL!vfSaUvf&!?Zme<4z%$V&jeiJNVtGaP$B@bAM!1Q=FMYy)vDKp{;;74_nNhwDP@T zfv|kbu)mRJp^@m_ME@2Q|HPzY)JFzQz!%}QpDh1*y=d&YQlJjRDPvY1%SfB0sCu$d z%)tWSM!(v-#n!Sl-dO9gH5sdcYAmmPLWYDwab2pbjl(~5gOhq*#9BZ6H@PEvuI^MI z;Z#RrZ(#TS)S2sU0A9&e@mcXNTDu&cL(MS}A=TE{%<*p=u0UepS*G)G&`LeiG(@0m zM&co~+<4I=?(k#O;xA1IzowqIa*4^Kfk45C)Mr2Pt&56p4|%F|3(!!(az;xYV$^0$ zFLk)jTOG|5??`1j3`pY;dhk^fxW!PPd)RMxCFb11(d0pW+(gv#1(KpSk3Z~?d0>vi z`#{%T&IS@;_uOVLl&tjZ`( z{_q}0uo!lwWem!uGcZ;U+^Dn0?3_aB65D~Rz=Vdv;Y-`p$4wk&l>T%4L%@9PgR*mJl&~ShQ?C7F`=uhdp_<^*Nx1(rB=NOSI6dN9ncOr3^;S zvsB?5`H(|?aJF_{pby)&w!*ADo~@#JUgtpw3M-#M8iO@vF>G)q@Q zzxg|gx5#;G`f|IenT3MpqUX#>R-|xo#}aKpo3;ki=1(!DX~wX_E*9s$qYbfF|CD*W zoik6g5%M~=QSEXRKx;iY#QpR%>#o9O4EW&v?S^$)GCdDreLoP>-PsYaKe?`rxU*&4 zE61yljps_$SMC-@g0tmue!G1_GzCxOc~1dP*4{Ucwf!W9VR&XkwVdMDr2D?Ef9$y< z^!w-lzLav#mw_UEu4 zJR|o9anz;R7bQLa^6R4@G9o86|%-L|n9PVx(Dy=aIS^R}xvJl?QhfR8`Dvh3wb6Cn4_A%dO4W|`Zhm_WUAfyR z^<=<_#*zqJ0tk++|uR}AIq||Za00vK;rlCLOs-&`Par55bnJxPtGHe#R>0( zq!p8u{6D$Jr@lD%!sKwbV(+y2@WSZ7q6&axBVQ~zM+E{W((g+=4=-luzbQrpo zl0fiItO=L6SZc^tZ1?+X_8ug;FC5apUx z`b5f5#htWsv<1OHMqxq5%3V?Vl7kGt$DW<*$-Ln-f% z?C+y{^M@}CJ5|5twPbOm-F2Z2TTN(4oZNBzpDIadeNl zBdw4F`t;qfSpwj1_e$QY`0#Pmp6^ir2bjgTfb%wya1M$=p9A{-_wQ)7p1x={j&#KF z4qA#{v+V$}{p=7UjQGmY>oQ)DmF>LNo-G>!RHmt>v_WC$o(hgwe-{GF3lQmXb zl^glV#ZH`bwkZytQlL|OPOZ`SG@izfDF{klRsvj*`TR>YR9}va=MX5Y!nL>V@_ATm z1pz=ldAqaSubs=_pcv_6z_?(vwwgk~OO@V|tPy47K|oww>Cv7Eg4vk7T4z<4{}NLer8O*9ZV$Zgr2 zss7ebmFEow0hE@1|MVDt^4gjHWzD5x?BuuVYfan}cTvyLGne2Ra_gC`bid&H{@W>lZS7yjPIE zC0J^pbK{Xtf&~&3RiHF-b;V@R2yX_yNp{;|5o3+YgLh4XEpD70`o)BwP}ABn6$3s9 z(Z!o6G4-Z<8Y{X1a(QL40$=Wa$z6T;&Vcw+KB&v=aPYnI<|;J}&;Oaud!Zd)8R$9p1)kV3QG+4*}PeM$T>JeSGJ%O*dp3BzTd?xiBI0 z&*>Q92+Eywq|7|SD#U4Xxd>M|Kc7#H`nt&mwi(Bf_G9OZVSKnl)Wb6N}Nf zY;m4;m?>`W*$%H*BGYlzw1?>DzyBBqZ9|o}0-r%Lf}_H) zpWkY-S#GuPe&BNkl8HRDw^%X?{urdh}lthvXt(8;x3J zZB35bDFosb*|YSRR#$1Axh=s_ZBiM($dZOdNRt+ z$06?xMbUPWIec)$&8uj^+RxU?XIQ;u*q-EhJbmLG3UAka6BEBV)|q$9Cf%#-Y{0vJ z!YQe`Qh=cLt5O{%HpU!5dD!Qk(MQhIv1Y3tl+n7oUNNE9wwb(+PwXEwo6(6?m3$gvR z(5K9YMnin~sCCbvwuJ7hE1I~GkJ#%|&V!#4_5OZntK8MqHACjE?B6ND{ma`Pq{2Tc zwVWKwT=E~qjGQucAa`=uF!>WaeTheLnwKD~L0i4mlhdZ4sO(AHrE>&pI_8JSY9w`` zl-$A)ie&A0S>$YEZGI}?6oz4#MJQEIgx=mAqP+8@oiF&}NyH7`AJ%jv!UEaE0y4D& z#Mgm(A|XR_Wdj-~*AQ4Tm*)JXMM;sTEo5Mxm3Ny2ZCBA)=(CBdO7EL;8eUU*RKgy0 z6c_1cCxbg**S1W8+Zc{m2Zr8PX$Xhl;?w7M7S4J(Fxpm|7dr)eRV}M#+oF#WWS4Bd z?;hV46w;(Sz?D}ab0NSLKY4wjLM#7xthkteAM$PlbXsI>H+f<}i z+l~#*OLZWGpiHhO6;8ecK1$Z+6%5{t-zD*WVlZy(&bkA)?KH1(_R6|#U91Oj9Nwbr z9TxIpKUDO+!>3f9bTsyz6<$Ok{C3Bsv}WbTXP@lOPj3#SIvd1xlE?IT$GX~o)I1oR zoh#2YDN`{8gIzS`TZf$#5;;u_#m*P?O4x{-z6oZ0OID;RQv*%RGJ4r^0bROJEfdXk zH~}u> zDlDJn`%e0%t6G4n*MXH5Omui1ozGFYTIi5wRzmo;x-dWDVxsybEVctd$QG-0M;t5e zWwTaRx#gaH7a4*Xk)OiczZjwv_=@qb)M*iA&M^$tyk&(Kk@WayszTpJImo$Kepe{f zs*&vxe_eCVppo{ukb1e}(mtu4N0afJBK%f;(-;=O47J~C6Hx$PH(=5{`bNts| zg?chTltf4??>psN~}!!(YG(F5E`CW|{0V2r2DXmm6S zO`^JZt#*IVq+{WCo}9>@nmiq}z7wTjL8T=VmKL3##iV|3nWucG@J@z}Yelg1E3<~_v7nBCu@s2?VMwq`d*f6 zfF&;<0Ca53qJ&qA*I}@9WF21rSPLt#e`%xq7Ikf(^o@+ z+X*d0G|<{#o3hA8P#ff=fqz(oUqo%xn7^ddbs3}%o<#2_(Xsd&c0KvMX^@YYl40@c z2^q3XD=(YNSx6EzV^F#8JZn2U(B%}+2X#bF_aAIjIdJ){+`kXt@JAa!vqbH8Mol@m z)BA*d@hMVV0$qeewX%v!Mr&(cO4pKYY8VuAAJq%!0iYAvIAui153kdg;nj}I8lWDb zldj?+!&7A9PkBaqK=B|m(s?YFecU=;r^+H3mj*hu=m7^;mj5Y+@antuS6IvyDVa{y z^ej3J%h``19a`_0z?;|{h^ZTWy7Xh@lc z8ycPnac%)z8GO&Pxp6Ab+0wj1fmh64q9!qd=i+GIlA>of0){o-XgY5G9C!4xsnY)hApLpRkmiMhmFL;SM&GWw`E#iOn~ zshJ-<-}BgM{wF?oL(Frtg=4ni_aV@}>GkURS>F?~%SGorARYc2c*|L-;9+GG;9FVq z4kTwQF`7DRq`&$!*m8O-;K2G~(M5rCanswd>c!0v{$YYbX@mITa)%MrT)F7uv&`X* z*I2f!fqoV147$Bj2*myF!^1FsLzk>DAIK@S%0Ii03Iu1H9H>Z*4mN zD2^5x6Kle^qXL2M&&$qE2XfWrmp2#YHj_sJ%7jaERx;V`$D85q0D}%B(wa^zeVR{= zc3%sTq-9lEy7vQdjSg$O_P2qSIp{9L6B?%P>M^zYmwqa5ARAY_zD7+U`AP?fN}_Gk z!u)s+E#w)7n+n$Q5XsZtHRt5JNv4D=OY?YcbBDHMbPW3qcKl$Z+)Z-DnsdXcm?g4W zRhEUjKDILK${;)ELfh8tX0IZwL9-PWe%%HzE3r}a9GH=_T(X+h^K@DGDdzY^=xR#= zOhpED%uIB(kLk3345O8`S@E%a-SiZVFKpiw*?`RJ9pVhwH?jLPt8z^ZF029A&6r{f zQ|;;8P`hTT_L?$79XrIWR;VjaeJcML2}+%BfbFME3_Rd$ma~T_tIiLbG&Ch#6aYv% zh~M~nl^H}UZ2Z9%+L!8TfSUImpD!C9dEVnOLDs8xa|y~fV4(!@%i4ndq}5&?&3`>z zUB@QDl|HWMzglfvSFp}Ls_D;}BK!On%a?5^R%r|Lajhxc_PlW|qTxt6Ijz3d zrm;c8eBki9_~!M@Us!j+;}d#GcBR08puv8uFJ+> z74f^x;97-foOp6*46K?)=t@UTMI2{fQoYx`19ug}>d7in6bmkE4V`51juEe3zoPg9 zGWWGq{WNQm5jrKOhP#@FSNb#~?ZK9jvro?G!z~G&o3VHyQl*x-8u7cB@IkF2w&&MO zu$>IQ%LmTw>fUGI!AbS}O3Yfj_%2t06=wC8@{R{%wtx?KP{B&n1sP8z$a_Au7?8v& zA>!#5RMZF4DFD3h#;{gnbZs9*0Rp@fAF%E;ta|LoP#|hnRy0D+@ukQgdtEWxjf**X z@kh1?HXeCDC*lD#^FY#%nZ@7j*uMEYrW50JfpDvCoK~Y1jW=xu;$G~mI`_Wi?gjBN zJ=**BNMNmbG(}^PqwN)Nq-8^yvZX4|U!E2)C6fq6#_sUj$)Ab1-e73B)`s4qTmeG^ z)bsNNN&;-fbcG9V_nY4_Q~FGR-x?V|7;Uu|r%jAi9`{Uzr+iBrbLIw_NL;>@CjXJ@ zGZ1A`@G+ha#>ZB+-U;rjE+RBlZ8#aI$f2pd}`q-lo5X z_g3f?zLlI}0T3_0mcC<5#}%qa*gv(;2(C(>ZHBuSQn~%ZDt4(0@`B-GO7-=gXWrYj zFNNi0FO5LD-F+UJFaKn3?(5{IP+jifg+p(4B3&3K zWywrG)m&Lb;w44d{_!VgpIr{|k=MYWqnv<~({$r6}3@4S+w*A{ATb8`V3R&zx;_i?()EIg$bbY6mEB zw9wr0Dd1Iqamtv3(t)|w05?wlRD}6&3PUK2l-Ff$3Y;Xk&0VG};=w^_`~>%sAEARP zT->FIb1-iunu%X2ZQ-vYvZsy5!(qSb!>s2qU5pVIBLVixFEmk*Sx))UpD6+VEJ~oL zspEIXo_K>(p9XF65(3fkc!*M3i+wfueVwE3-Px(bFm^=CP8M?G9Ke)c+4T@}>FQx; zPtmuy`NyEi{sa6#e2ALJQa66D-|6fX!EUEHc6L)c@*)U1AqIo2cpi3gWN%a=mRt|) zPgB^luSfXg>Gx0ZUIWva#K4`gqG4%(TkMTFP~U@=XCvn_Deg6*HQkuF;LAiUe=G8$ zOO&fCV)D?JG2I9}I3-)&fY{0Y%7pPkip`gK-A80y|C^iOn7IiYRe5->WOH-!cNYw0 z>8=~)eZp7wB}vY(?9|k|s$sj1(>0he2g>iKJnyFJ2))XyF?>!XG9mNxo4!-_ z@(MYqAO49X7rYjH3It7zJU498`F5XUPJ1J*+Z1fS1#sA(8WN;fGOs1`q;TCF-0-|E zxfJ8KOob)e7A+4;3z<#qixRd(QO6OoOFD{y?M5GgbiOF_O-ukQLsOoO$+w}6ZEN!o zQNxOQb3?&)QzbJ5vk7EgjONXFAcpOS(_#syqPx}-?1+J-GC(${q*}|(nMYsacz~iDf6Xm zI@6B@_lxN3*Y7D#yz<6(1}yC{&zR}6(}5{z`!t8o5AF*-Q(9t?Z)(5Lm-WW_i3v(4 z^Qu#XS^1PPIrp8a>*nZA3w6iRhY-?K$1>ak3^vXgbQTC(&(!Zne-J3MU?LD}In28Q z0#5P`j^8JDrgLR*F=0Fiez+V6m8OA51mZrVVpvedPW9b>Kisb}wA2(XkYC3G{lz1i z1sUwv)Qm2-MzTf0Z^|;hsO3?A{SKhoc`=z=au@Tnc1&fVU?M1sXOWYs)Om1iG{Pe{ zzwkth>U!+)8y3j?Rz9@AuWjJbp~-FTobUK|+)qU#r7;@(IcGTE$hTO~{@KdKwU*Ce z?uA$a(slHkqSqMO9H;~saqa*3>r+GWhMB$QNlW77svWxo===i| zXVr{GQrd<#1YvRGyk#na&Kk7l(nNBb8fhoN-@TU>y5*4iFESm zkmLPXsnf0cT~o+ke+sV7wmyMU*Mo6cDy{sPUgOE4A>6|%KNnrZY^*9i$E5hoGOQ%f zsWb{UE`(92;0b2sY_!`V!ooH77{M1r0O>}_4D>&oBD&6MTq$vL+jW+DOnBU-_ag8n6FkmrU$X5_6)e@6p5d8x4|F z6gTPK<=YJa{-D(gm$Y?ej~*uS_6LhN!WK_{wK3~eFm)&}Q_XdW=vezVE< zpM6VMmk;?p=w)n|7>Sq~?MCOEi8ig>TE|ypkYos*e%{h2^)$Q>#@gL!kp*>0M(r7d z-4F?t{ zt_W{5P`ds3sbH!C`nvCV1UZJ|1Tl9u{an5TG-FIMCbi2ZqNtT*OZLW{`#rP(-{X`9 zNL$bi%@O3j@pefBKi$jHQN>;Qo`3xf=1tNSgU1xG${`=u1JCzP_8G!&u~a8G_F?sq z%@+935@9QqCjcOl4nd4F$%t*&Rl)gFSsa+W2G6N?PLz^VgqDrK3PpcU&dXFTigPd} zQ!RJ@N1xgNx{L)Zc#^AcXtdf%%!5 zNb&caaUjT|J;opX`S;rK94{$1Um2I7ASEmH4!uXb*j%OgWWlLj$f!;z@N61Y*+09Z|d5v2EjTa+N=Wm?Q`@2z=s^avizK zC~H{Z0Iu6FRLPX2mAWy&cY}zur}Tx|5c4DBZ*R}0zN_LEjLI8skB;Ds-z&a2VTU<7 z=5zEIl6^7k!GCV0Ugo}mf2`#Oz1q$BHW%B*g9tV3&AHALhyGP3fo(_O^pwru-S<6I z+R{mCUKBzHssX63epy5k84*>|W0-fZ81@*52q`JaGqYtHrhk;}=N|dblnUF~t1iDj zfw*!8KXuLBuQ-k4`-W0-Vl}q=Jbuj1F*f+|7MoSN@`^_q60VldzX}j%A$5&Z64@-kk_kwE|iEF zS+Y8V?JD0p-uHYiSR`2WQZ!|42gUjuhbKEypL{Ie{?mcSARqe_iTMQwF0J6ocoF?^^nHh)@T~2A^fg4 z^3IiSkZoo_sI4gySxvZ2L97$E1!8~pLf__N%yD&O_6m%6lbK>5lO^7u5Hp{?PgCirXRZyG0Q+AAHmDaa9y!57brR_nES^^`^*<4 zN*DPQaHXmoH7jeSk}O6y{TG^jF1%p6D0toHqU-l$ z@~S#+UB9PwGNcjOv)QfJjV8$&|Lg!Fa8-RJ@D7s(3Pz5^`WNL_DHoraVz2+oG)w?& zEZBfR&7luh3?$Xs`wtt@Vv(oeU6&(1pC$JB%}+mY$&55zF>j`yl=7;!`jZmO+6W6X z)Qk0|gCyjXqk{G1i@YX=J#|arjbrEK0e=>1o?V9)r{Jhqa@i zcbSpzwKHt!3DA-cEZ6%pdjXLo-Mqo@FIQKF^vG|!;7rWbWnP%b4T{$7J7*d@rK3*( z4NQqIK75$Zlu~ea1KVuuQtvMmQft611~<$lQgYj!!c3>#^`qdKO~}TnBFJ1xh~EqI z{ke1bW5x}=R-Di$R}5T*mjwt=(|YWgOC3^*oem%llT|P=6E{lvCvku3^j9(mxRsKe zn>&zk(u0W3LXLk=Mv?w&W{MTHd)VNIDuw)*-CffgCrATI?W*x^Fn6;NiCF|4XoSLN zWRfWl+XW)AX3I2xS^Y?P-2PaCZ{Ii|&==m62yZGNT-kaV6=N71W*9_rB0;S<-b6<_(H2vPDZ&X*SJ!8q~yIy;g zzoi0*7E7Q8ZN%J@~gS^pW99n(M=dn;y9$IqES=k^k4`*Aq z#gkMS2i=ekFm#_+kZ2A}Z*u<|P{b~Z>vuJF7Of0<0}`4p`{?bS8(jKFt4Nki7gt(*!>_H_d3b`L^d$e;SIs1Q;aeaWC82lIc&h^{ijkHG{=-P$wUWnxW4ZuaUES>0lArGX*;H%%BlhR!Q{^OYwLay zZAqI(aWN{@=$4c3E|Zx}Nxa?LDOQoJKfs~vBaq1l7>T1l^vd3uR3kKc+x((srtqT} zIEp%IH@NBnEk=~TEsfGQnh*rv^U<}Y+6$FbBmigZiMXv}LbDyXL*F1-l zdrj-@#XQzN1ePJ@PeS|})|yFityw#^S)K}Lgi-T%&_FxK;Hs7{_9N)XlJT-WD!yX` z4|x<5ue>FQvjW=uZq4G|BNP782#uw)O%V~$*mt|~C;nU#DIiAbI%^!QNE&$6LnMpA zcYGVPfP@z#Mm1tAnauw^0;WAkp})*4={WI=a=s5ohij|PMbJn3v zsX``$fRD!SXzO^3if! z_C!{B7*)yR)dKRc>B5=jU+de_yCue;Y*l@`+}kloWDjE*&zhQ+7AOQPseolM*rdWa zn!UD`)!*~CkjC)!k@uc(OgKM5yj5L0OWAW?(;m!!AVLCEyWg-0TnjBszn%g(i#4el z^HT(@nnuhH-=m3uxs#mV)Jp_6cLcZp?d2OC!=gV5!3>qZJ8sg$RlPy0bf*p{i)^^7 zUZE4rrrM)$nhfO*umV1l-3f%nDXIZ zTtAQ9eBbW{7hcLaYRheIk`~(j2}NvPBuU^s_aJJF>g0B$MX$#)J>vS zocez|%eSeFf~c9zxuHw!@A?h5@mKm?1rJM)?0z(D$iRPm1feWSaI;a0Iq z_PA5;rzUp3_7y}S?i-f!_4HAbt8RsCQm>$XP4 z)h%vcXO&RZ;CjC<8~8!_W%K(NujJfZ$Uap}Nj`1a{T~1Ov`5CN%T|psmLoiEZyrlv z`Q32jD%D-1*=aX^aGNEM978ae%0bD5z-!V>X@e6I@1xDE9%e901Nj|l-=e*PqDvF91`F#z< zf=i??tp%MC13K0iM*{OHOj+~|!&=q}=5Njz0qcs3=YVGL8jyDpT22t-I9Y1duMCxK zCR96t??f)k+ML2ygV(A|TQ3QclWNSsLuw^S2%aVxHw2G6Ic9rs=spp=Tsi>ps+a5z z^K%`v43`8yKbbF6n3CppwXu;Tv!l~B(F?-!_0u`icDeq|OsVUG*(#Z`lTIcoX?>E{Er+A!*Up%QnlT^O=1sZIREV z0kAIc73%}1VaE^^; zs*TFva8p>t%fPtvEINxOPM^-PLI3IbIaD)!y)?;3C%1G>H?#bt{DpvA2|it5O*Z3$ zw^%c(iHD5sOIN#oHbGMNR%hz1pY!2?bt^JoZ7Y_ZzG_NianNt8Z_KF|bNwSfckOJS zQ<40iz@ar}6KiH)pj7#5ILzqNr$WBL0#+9dWs~TjfepXp9_h#~dXiXP;46mFY~|LT z6h=ywMpvCVs_Mh=xF4QTe?P=VUU6m7^L8v9pl&TXWO6ouGQWyei>mKyUz`G6BN{> zFr73Dda)~1!Yul3-|G#Lo4`rAL=(b0+ZOpUz$de_bwDsK zgU|eQN&^}-=VlP=LG8%5ScVn!NdEhq~aZ_4#jekKcJaDF{Nc^d9UR{s^Lr}Koh@)N8GJ9I6E28KJYUx_rn1D3rjo=x}84GM0+rPp&B?7|_>F`7Q`SPx^ z8((X@sq~k&0#Pup%@#;leai-#!)zwR{MA|rh7r^e z*&Af_b@5JX0T(JsMQQkewlCmuHv^*YM)7weTrvYplnV|mnL7IKtl1gBK`YWuZ~@2k z{o%yTB@2V-;V&2$2skF(L6E%>#Ka>`n*SvXa}VVI#Hm?Z_iAmIcKF8=b=yadNDE96 z&N&-9e&@6{Gz)4=h z8k3x3HK$fx1FG5FdJe2o0&$^M znOk!Bf-yhKuP~TT+(j|~*x)--Lq#lQMt4E8c&$4Fg9^QdT8 zCuprnGVG>Z*>+=jyRdFWR?e20_gmbd`_v=Q>DRZaG6oMK9-c2vh|QOJhv*U#oM9nw z#rAVbMbxS@ZslCwoXvF0c6Z8rHGhkKFzkW-rC{uA=THL|mA-&Ab+}+N1PC?BpvQ z@~(IyOG_jgcdb6@Q6S@tq8Q#Fq|1Tnb~k#+MX=0~xWh>0OnnBZ;SwA%byOy;+p7__ zoM(qn1kJu1->p=rt0pqYyt`$QFv)g`ldwp~*i-6*bgMAlFV-jILuk2hYk?x~yL0EN z5g~;H4NagC@~%5up#3)E`wi_YBN~YHFET_m?9h%c9&c|m&GpyZC7S(8W_WDAmE4oc zy|hC|{8RJe*>=ZT$=vRaZOqX?Oqc=32DPcU+3K)Vc1@2udrNJrK3(`T4Tg3BT(ucl zYF_P1?DWlh=Q+ko6hUuXDb@B9_Cv-hOL!18La%~(e6w#1HB!wMum4Ag^v}nUgyEkA zrJ^IM;z53T4ee7JDf-VT*>?oi?{#DBrZcG4tzJuQBxHUtCwlafdOc8~Iyu+u?ZZ(i z61`vI?Do}4H>3)@LVb|Iw0N5ioBbiTi5-PHO4oOUyY=&x%pOkGUpNCx^f-VtjqBnNw&v&=G7R`< znFs}t-SocA&Fafb zw!QyFI@7DH&7_wu%pWyB{7XwuB&Was8SQ+YN)RJn(&`S^a<$i_yV8d zct9<*_&g~bflG7#G+5!OBuZTqlYBIoi_I?fqnZVF5}a=upt*Pz*)n?7p^BD4C>7lT zXEg@gbOnh}-ca=>5?Tz~e7h6A%tx36}98|Vg zr3_lTyomvRh&HI2khfS7t>X-lt&VeOrM9zgJM{OhM@(ay9YKsnQP4&Fn&+A}{GGp# zC-KL!cFs-zqw&eZ=5_ju`^%c4h%dd3aS}+L%SNZ6{(qkD2#afE(^y4h*2LCtvA@sI zCV3bb{CGoC*-)ZddxM>SrH#`tFc9M07KEa$Oxi0q* zhm$i9)4s5j1ZZXzVNc}2e+_$a+b!Q!-Om> zQYyXgYsyUp(Hx8U-_=6b6l#WU50AWgw=WCH;dfOAQ|=AY*Gk#@!Gq_ijPL-)BLazP zDj&Qe$v&<2$V#PT#f^ED09blU9eAzxJf7CUbb2!h+trZ?&KrzCbHG^RAg)`HiTokYt@+& zhuqj_C3u!#L=1toD=TnS5;1J5LdaLA4~`PN?_1grqO*M*^6>Jsn4?GM&H;Qh7TJl$mP#D zv(AyY(PBSwX4z30r2MS(%fJ=hqTiymtNz+PuQ3%fIJu`ZDy&q9{?zVwB$xQTv!rIz zJj3e_wOyIq_F-Z-t{pteCG7*}{=uSW{>nT95{}GKYuB?+Sj=}P8X|k_k*4^}b$3OR z4IOf^&nbDzTj?rXSD6|11cX1T)0Nx}Bx;)X$5}@QnQAhZMucTi@g)k(O-!eH4H>wW z+%8>;#Ya1|DJ$enAKhP>dW0)AzMzAOGfp1p8SX3wuB$U+RvV!C!4mL8(V{kLZ4v243MeBFdcJ;6py4Snd?fw@%2y=xpzQUS1YQ)PAFsT(EnCe~nO?Np1AH-r#e| zP+4JvaM>#bazBXCs;#i=?GLJB#{Jh|vL zD0^4_{hJic|1l&dGym`nq&w{tiS?&g7!;21AjB#zl8O^@b$Pg{-oD;E%YedO3XXUm zIl}+ClU{0*?suBdf9;F>c7w`eB?jAa(x!08R!@CdrTYg^cT+z3-hZsISeJ&eUw!G+ z%h>G=MJbSXqq$hh7P~^J|B)mMgA;jxr8*XgKl4m`>5&s~r{~iwF4~hkR=*%M2_lIy zs9Ow^78JO{ipEZd9ZQ6N#e9{u!_P+q-b%UoY&x^5e}B$5vv^i7xH*Zf)OP1qO|-KX z{^G`X!+pYFSzXA@*5Pr`L@54CY=`>Wm5ch^`}jqGX7AL0b@t^ey&7x##=ug6fjJyL zX1gYY$21D6$(~VadA=UO2%OOF1IwbXx zzaw1+Xn7sVF}A6#H^c5WuVpG+!)%4_H-mlxW>rV~GC%}5FNu8UvnW#{tAF#jBTYBx zx$b)_M-je4BqVY?*93KN8odP@VYdVQL<$s@fNr#4l(NGI}Y8jeW=_BqD12cP_3 zO|~nymkBa!i*)&NTV_if=4*eI@&f!NAY$mKVKvw@drzJj9*fqY3JCJ8JkTvhh)N`K z0H(K$fKZ{^Cha7shrLC1_PXORzX<#QbCR_pM4t{rzRg?VjGw=03K_cm6mT&(-yP1o z!SfR1Kw72wtqd0r9imFzsy_FR zr+MA8)iH4#-iXNG{JRYi^FX4r*RA(|(`W~Vq=o*eaDGl{LEbMd^G-S5#sC5MLCiAl zC4A#O@mBYBtJq5Bha$S#WVpNEFq>v>je!pBo|f1tb5VO^ElC~#P7tb+yNLn3nBTVnOEr+9gq@&qhg;(`HMhX?0)IC}p?iZ_%(;iA^P4BDwrZ{68 zTZ)tOq%Ve4Yu^{R_anCQ95uv3tM@D7j@c8Gs#pk?xFM@<2%@G4tio1LpZ3PFZ+H`= zL_fg&1XH5_^kPK3xw@e$Prvi&^4b;~^o=C5)8eJ;d~5O*@tw(Ig8Pqfz7k1P?e^Pb zeN6xa=X9<3Ft$0aZapoZIVd<+4k`Vu?|r?ofmBVrA@Y?TmOD{Kq(9_bV~BNp^ZH~g zkK;M(_}9lOpjZO@AFq{qhi#g8HnGl+*7MK$JL%TT-@ke=FmFHtb7>7bnE~neYQQp{ zq%*>j3bnc$ZZRP6>~&n3b37P;YVv-y=lh^|>C$xf^Y(p3Vc&-y-x<{-GB&awvV<4w z=e}L4a-Rf>^5BI?7J0>#UW|ogJk0~dVySfBrHB7;vs070z@`WP!jAkKDIp zc-!p*;yjF`K5u1S`v#^xxg+Szq~ZU$51JUowkcw`}VlYzFFpAm|NX6k=2-!qC^RT*?zl$L6Y1M z9Hta1f<;fyi2=daF`gp?YtMY5IcMy;+{6)ocV(0D;mE+(XA#R-;C5 zt2!Qs%>7B=PL~OQ z3dIa{Kj;3^ybTu=Fl0XBbUVw04oRT}hf*LX-WO1*g@MRcVdwe}RdKdvM%;c6X9BI> zx63$%*1uk=UQ*KQt7xbEJ;ABhExZ*ZW9fQ>5d^OcPd0OeboUuXTm+gJSGNL5>@x9I zR_;DdyV|`YLSMw0-Y-G|mX&WVmwyUskQ~`}j2X5sbBTj;N}qU@s?HxzzgMqt6@A+J z>$BSPBvA6Aca&@>xT_(?zh%jFC#}<>guOUH*j`{t-|-?-@DO{xA7IpO{PjEDu%3Nm z_$z*U-^CRQKGxSVe=k?i)fyqZcJF$rTqqbehVBy4eiDc)4^dr4Wh7(Cd-JI&=R}H| z!HQ#RNu6&g*qj6VGj4hcrL#X@3Drv<8!Xt{whadNbIKuCZBdUq=919RP-85##DDJP zH{A_qg_|owbljjyDjWtP4hX;S&M3fEp21l?Z~VaFX7W%J#%5x;IJ8npL* z$GSmf_G>E;nFDXOrUTnCKwx_eU`C-s$9CbJUx43F1La@i&?aVAN5vVId9bIrPo`aX zY8)rVV^((&OG78gtmWNvFXmYn22$LI(#R1z$uz^Q>IRU`&Wq(4j6#uU`bx$zS7E^G z<;guo?GDD{9L?CkRy8~Xzt6v{0*4JVufqymJw{xM1{|H;qc$HBu}Jqn1Y{a2jcq{F z+Di9YY8PgO_D}XaHt&XnLl+K^&~zD$MYS5-DFdI46?l%b1-tI}xwZAwmRL+C3j_aA z__0|);@yCZJyD3d#?)}HiQIpC>?BG4u~uL&Mo~~znpSFPoyAfzp!u1> z#L0T3{Qc+W6;RX>4(8;Xzuz5-dYr6>EJ9D%+KUv^c&zaXU)>2HN_K>~v%`iA)7`lL zE8nHJz|*p}^T@l$?etyrCaY7QB|@T3BO8coi5{YP_L5RczL@*)Z=OBjKmf($ z83{S+|LtP|Tu(%Bk;rKU6mD*gkF~0$=H^3sazzT%MNXKj##y`4H7u?s(pz)nWzN6< z_8ANjsocE+YKfev-WSovG6;DiRD_*h>Jh*ISh3fvXR{(C!+y9!M0XyRyV;5G4ZPlf zbT85TYmD|&sj8`ME4;nc>KbX8M+F|Q-5+-v`n$&W`(`O}OG~~zplrNgcha(%P>k~{ zd6Q>i?0j8CIH_b!Dz8oL-@u3A9o@k5TF*2U=M*T@`sG*^++88E#;TFWm_l z!WiAA0KyGgjH`jK>ykAVMqCPN4a6ljo1nhze%?=rBF2X@3toW3OKmJDqL0Q?d-YuD!I^+mtGCH*SAH z$>dBTSbB{tR*u2LUEd?BlH8asNZ?<(cea%r5%A8PMr~PRyn{*7Va2I0&u3A&@%F|) zpEV20{NTP`u~_!16C%!nyQfF>+3T;kn639pxTTo>grTzkAJ*PGsHyjD_Z9gfDgufK zQls=HNbjJ6^o|he(t8a>AOR5(={5A;JJNe-(n9YLs`L)h6H4~-_j}JD?|%0=d-gu> zJTuI&24)gidG2-J&vkvSJxsdk(plVNW`X5Ky)=$(D>(H_Tb5>#Eva$aIfw7Iu5)hr z30$qT<`LG+V}`uW3NMe_-h;)}Vv#Mx#IM2npL5WLDGHmtSM80qL_BMTz-suA_xDT36prRA5W zTLSg(fM#i&wb?J@fkRy6f=Ry16@DA_^zMRJ!6$Z03tlsF)2PjB#Y67$=Cr1dz-}-W z4qlg!DSFuwIjRR#lKs8MJ~E+(-Up3v;nkd*lHbAiNsB|W#iC68$nl#k?;$VbND+)hR4L`I5XspZ?jII$tap||PaVqi)<<6F`x z;$Pd=Ql1fFCpkA=nLi`KF6+mF?FYc`AoIgdA4TaCP#9NzBeD1Zb_8Irv)RLBQ=>j5 z(oJTxE7AmF=)GjmQNL`vnYGUEud+z8>NIZ`re*M_e8>%)TNmJE<^rF^(eud`pjmy7 z456ZxHA$0S&#Pp5o>f6Ek9TR~2HhlC6$DZxU~!(yQDA#gWQ)g=Zpzo`T6Jdt?7alt zjA^#&eLP|dB4}SllIu zW{Ha=C=QP$>npBUI&G9kF$-|~p9`;s_Q1FjUUfNB=3fUMUPrVuyu5vzOR!kZ0Fve%II zx2h>;fSY3AGbaw9*i+f7>fhh}msB7pl?td2$I`}#!>OtPOeO2@hCr?;!VuFv6TIYt znUAmSF^?e5e!x^{pqP*6>R;sweWc7g)Y31=uLwG<3UCc0&wBl~>`R+R*=yU14U*Pt#6- z!Rdz71EO}p&xbU;?R58uhU`kFBt|Fx-D52M%k7ulSX}HPym7CRsU|s>COra1UuwVz z%w1AHENJ?ORQJz3(ie>-<`nVz9i^xo5~pZ3xsDIE`x40_0fU8TKD7M{&LF9^21apoM~DGbQo|+ocQ+(&!~!(|e?{+kTkb z9Xv?!SubR-+SRJE7~v4w4oEFi}@fVe@I~}Jl10ugZR7|X8sYhm{rW1X8dq>17xA-Qb^o}FS zdfcaaRCash9!uJ>wvPh1Ke#UAXgCznW^^kbq@uGW%aHmv=+f)K&COKgaEXSnh_|xN zV+W3&D%i<_6{O!_cxvl@^moS(;f-upq2$cLbLPJz?tgDpzFw%-ac7m9VE%LomekGH zB1^I*7~7h)Y?fI4)Kei!yg<|IFh{pyXK??cephA^{s=xv7#HESu)T%6O7RFMAj8TY zu-<@szgh&H!`b(n%$Fp6>F-(NjJJRkL|Kr4C6`A9&-8pl3=I^quD6d zSRKAqD8F3y;AAa=j~{HEu0#(%(qh+svToit7b{xkRlwY zTm?cD%~~$L`xs+rp+0+22W2lb^Hg{N$U>_)-E&K_ENd4&H>~18Z3wP|(V(fA7=U>g z%-0%qPwY<>b^jUO79n}{-91FPy#Cf0lHWZ2D(K7b>>`ZlZT>vvaNh9*LLkg~ z*HV~HRUbNevoWu@LNh({^P48sP;rO?!xrJxF3Xcl@(Reei;lpxkKL9=&>lm{6sc^d z4ZOPkCYgYa0%!Tn`OK7r)bqIj?u%d3>*AO*!N6IxXQs5u26jB)!BgyO*wvXJuDL1h zA=*Hs)GUISaf~0E>RC=t2gh4VMiZlI&dH41Z?k=cp4L0SUS72Rp~cT3o%905TZ$E007 zqB$@nV!a*#U-^5QDwa$YwVD1|z*O@$ANOsK!I9^`&EOye;+&nPRfcq(fmz^DrE&H1 z%U=Blb3eknfXS2P`9~Vf%xZlIec?h$q*(4mevRWB(J+Jet!J`fwCT^vTSN+j7YLSJ znNk{mN;Wd5pqB*z)iMYB?s!@053D#|T^clnM*a$c{SDrD_rRpRkMY{5vEHtlnQ&s9_6kZ z02qwn77lGxa{fS%BjXWpD{{C*5R6UtQ5)d8jp+3=^~dPZfh1os|7j(y{yg%wr_RFW zkDc`Mcwx_->NJV_d4*>7zR3GUG16Bo66W?XC0&6`ZlgGj)ucvOY(}~7Mc>S>zxBl& zl6u$xZ{L+5~);;qkrEz}!1$aSQ3uOmJ%U<58K!PEj<^ z$x2-U^k2c3%W}xW=?C+WogU?U5+3j|hN&eFyLLO6j8#lwCnJ%~_FU=JmE>zz9~0~E z4)NC*>z#sAzI+m+S7YZ85pF39HF%rr3U_aYwpHMK`;jjh0&z0feu$tZ2+On^P;Cv? z*vyb4x4!`%X$d;?sElRYW_?fvNrnOV$x05PC-PtbXiWq5+|;c#(L5QMO#evw@CY)zvkuDjhyE zj%&+WwBp2$c(%Z4idiUX+S2e3O?{}o9`zox;>2;E=50yLZgFM4^4aacU4|&b9TOG0 z;zdh&XTAtp93$lCF)?z5OuZ6S)TSeMQWxrjs`bBS3<`sU)M<0I*7o${ByR)91r_in z!6;9+p;>#5VggQTFq`6`54PG-Wa+Ow{vtNn@xkR^l@KW4LogT5)yzD!`&zXUrge4$L(9Oxt_Tz{U%yH?j=HsY_=-R02>H9QbWcSA)fGCt^y-$U3hbx5DA^vEI z=L626v8i|fxT6mOUBQW$z9cK*N(cli%$h}q{rv1`w;bb}uDh!HcuAntoG?F+kh81d z2BM4IK4CjhC~w$Es>Q6w8>KNO;;sdPQe_0XM*mr*bCa&2i&&yTe6HR`ihJ%%$f{e* zY1NifvbJX~?5j$m3daT9Tr!EU5@AK}n-mpq?r7aZ)kKU%v$2=Qxjh~%6L2Nerf%}%F>mBe(BA9VO{ zs3h-Dvf-QWZ0BE-1_DCQ_41qQ68l*6TkV<+B1*GducBJ z{OJS{r%Mawriol1ZI$18PiS@vs?msBXP4ZNf^Qze%P`_>5@**RzFQ@FT^8G|75Z~k z_r-jbO=gd%m3ONx2gclf_$)@b>r?E$n5cZ^KUxwy)#*q^tvD|8(rl1VXfW3-$4K5y zCEVfOW{=4oW3AAK3cmO03m(d+vX>N-TD|yZ`C;L^n7bpmTLcDo(Dgq@v~N*)*KUt; zCj82wEC8-gwc)Yv<(*R;uyw=r!XI|nR>O5oXjS3ZH!@d)+iKipwhu2`2SoPu7v+keb{b%DDHpn zE3kI_?@=2GPh*KeqSuFVILDWlqq6krGB;SOd`VdED*lghx(o^Lou=NbCw!BMu@aoV zs8jq`H*a}&d<*SQBaXosWI7Kt(g0n|mDLYQs*bq}q}lm)6NiiXuv)AK5WO+FybBnd ztyqZ--uTn*FWV-YRb^C~vClsm2*&ZpaeWbMT=12}c|YGDH&8^YnJ7Hg>&SpoH~-0d zRw>0@I5BQOUI_d9xd@4a&uzIS$fy#n=&^72JddhXQsoNSyO$>YTnER3jst10f8%Yv z&!S#erMjtce0h7CS-!t{O|PK!<$rxUW%#*REhmyMapEVw$-YPUkN9*(#t8L)xsU(z zeZ5@j_sRcQ+xW%5FTZZJxq}s+E`Kcir&Kfj%`{gekbdyMn!fyvsQKA!HgFT-Ec__C z+%JS!zq}n$r;w`w74{pM$M4u-g>H|s({7KzNea_6A>l?>Rtli_R?@0QdR57I#1ywr zd@BWg(3m-Hf)1yS=YMaV|I>vmz}fuf za#quMNYpBVygn+$1;pk8XTQgNPBXb~eSu8N&!=wIY-M>P8Ra7T)_>hPBCp0l8DY)H z_cYg;xqOAVTgz~W02f>bUN8gWMZhs^8dL;1s2i3!Q|Zxxp8hmVQX!3H(opd)Yo^MXya z{Zy5mu>9k{_g_D-|NAR$**Isboq-Y16fDiHmr!1#j}M?>z4Zu|HG1yApntzxVx*b`@kL(~;L+EN#Re_g1AFW^fjC&^Ae?Q}0=KUR(>E_QP$~*Z!=Ws$WHi^v-aUi*hO)KMp0?kf|uh-DO)gOJ465n5D zVL{|g_~WyH1~v1Pcga8Bev=^j&mY?VKi~b#u)X8kz?R;y?E4Yms_ZZqAri~5`62~l z%tKgScZDKB6}H5!l%U;wX!T zL0mY+N_5j}t03x$cZ}5AZmK^WudMa&RP~$`y$#0~Uj1)-6OZ|RzOezaJvEIwy!Nr1 z`Z<_2?2nl(qjEotQIQc7>niL0_f&WUckev9gZw>B6)v}FDJ=bQO{s!VGQ%J=M<3oO+a zlc#=ZUbcQQ5Qc#$d)pzxZzTT;yUt{{URbAE0hdM8A)iQq4~&`zWt;C${o6qJF;)}X zqjAZr{lys%TzM{M*g)S=Jc3n!T7#bh$~||Hbfw3 zVveJ-w_^ifm?s9s+{(Sr=8TLE_n6JqOCp@wx0>3kj<#O3<33rRrXRF4y8ZMWCX&VZ zYj9OPI1OgzP-Vvs_yVYs&e=IFllUC0WWvy0(91v58vwhgHzt?*+0`DRMyC?J@?Ks! zfv-#K{B$`B_WXpiMWA2Ad&wC~U~z7DyS{TTdWapqV}#Z1wQC$r%Igg7Ps&rKw5_2K zKL?)x^PEa^!79KBZ_!et&1)NC{9pklaP584cXT))xD?Kfy#m$cbS!(rVs>UXG424u zX}rPos>44j4sgj^qWZPfTyZ~gY^^${d)r?8lVDG5poOd_i3p4zu zSWH>ITwPgTv0-yUIy?59VY=7S5Ww1y<+&9z4z>wO@GSXYHCeOFuVNu87C~{5toTOh z!rR_UKd7>Xn-#w5fi~d9=`L7oW3?@^%Jxs>jXNJ9mB8!6X32TzdDjJh=FE9D&(%QR zyRUE_LFfh~*KFz!Q{u41g~)ncMh?wdYTU)8dA!5RLtLl^<;l)+#9A`*EN_OuY5Udc zTkpe9@=HF4Cl*8cH`km)rB_S_>okQ@cKKJdo?U+j#&&bpYMy4Tsrzo9*ZQUhbC&X_ zg5<2v^qD)JebSImv|Tj>e@YOZJW|Fi7?gR_H20%l=^#(!@YB~8%Y*{PG%oWzi7?IH z@q&1x%pbIh5g0MsZa-h(hj!~A zJ?ZRq-T<7UHowk(?~*t&9J=Z`)Yg9FC9f3l|I@1En%tjsK~esY&LoL;VVXCDv+)N& z>9?wQe^a7d6OGvt-u~=-{jt$4B)aEMBea;zi}}mN_ubN{8dwVxY?JJ>?{bS}6D?Kj zfX9elC(=Pyv4|b~5u_ilk_3f~LYONOOGn(dv!qg31SW|kZ<+EVhUbsk-2y(E{9&@l zJ+~iFI4)bPw(fQia5?3&m>+HpvL81PaIQE$kw0{^zI2$fSFYIS@3W*Wq_{rsv6w0m zjzS?x=W6tRxo(a8WI55Py0u*N=E61^`x8?3^Y=joTP_wKQD`2V&8VT0<*s@_!+gHi zQMQ2xjTTblS?0?9(cPgS!Jg1dfklVb854rUnkgGQAgAGn^^BD1T6Gmk1llx}Z^Q)=-FM}Gd!+DK9i=LS?PCYXb%&eQqT z4_64yrS6YNQ70IcX70Ly+J;Q-*+=s0X+3X#2pUgTM|-z?eDrjGx|MTgNKouEG0OTX zY%tw-==FuT$R|W(ar8Mg80XB|fuW+0qxqar zi=IonfP)Ccf10au6*DbSy&V{FoUderJYxH0WF1XcH>Qpn$p}wZ^mpIS-q$c+{~%(0 zxqCNuO#3!x1fU{fSh#lX*k?;hy5f$+yKqdL1{C}<-Y~rX>^M{??<8Sf%Ha7C7- z0C)YQjwaqDqR4J*G!NF-WUnz`Xok5{U2J#sAqnUXK8zlL+r2A(|354M+UUV^Mq(=} zR+yHL)s9eRE|0uGKZqKD4Qm`_W?xgu8G6bI%*Bh`_({iFmP}>yjZ?Fg!>Xn5J7@JB%@Pf=l9!ad6s;Mo7~XT zC@lP|&MzKwo3W~h0hq_Wak!|7;BIx+iUU)V{l#HZs;76asQcg2{M|5_bG5v8!vV@TkqSJZ@pRta^2f;Y8sN`P0rl`{`5@Z9Q|m zQe@sC;SJrCGrZ!jE`No=5EgPc3Nr|~=$=bY7$0t`SEOy0-{wC~1OvR@iINITu*IorE0eqatLYSu_sk9;BZLHG>;mySymRnspjg9s zx4&7VWuhBfKE}!TFBbP&X46NhB_NHK1FtIwK5MB$_Ov9g;WuwOJ7ZP2;5PKUVVZRq zleThsoUTdCBij4Dq-fQwQmUwwP)Fw;qs2!c-@;c_=P1>}p>cJaq#|@yd68dWwm{L) zm+Yfs%Vt9}2A!LArZG5}2?*Z0fQZoeT_ujmlZnFdr`ruf|AZQUU`@2$H6-W#l~Po_ z^b>#+h*_L_R<5S|bg6pyZMw(dyUI9Sqe9_^!g*6~`??CZtPeWV zk&jN+|EhBFX}Rniw`$)qk9%J!E8#l3Yi-r*@*nuCKH}H{&ho*Y){Qq)RFo;DPW3b_ z$rH8&(C%I2x9meAx)UJ7a}Z$Q?Fhid53@J_TbIT?iadoD|h_uivgKZ-~Tl*1vopD7Irp@2b?-d;ETw7I)ze?Vr}gH7avfbF_y zSzbETdIEUs@=gW+s#r!F_Q6pXaQ4^}<9YJ&xR3$}867*`uYGIT^dytX8o<_ve7(3x za_V0|K|Ce+SM2NSaiU zAgN=8$#c)HpgfST7(b9n8pcnVU?{GKL`k2`e>7ibvd9h#MIZNDZzNh`BWn^^_*-4d z_Zt(-476G0)@UBQbJ}UBi#@yj7^y=eIFKqjJdhyKFH$y?$O{;o`J2KSS%{mG7XA7= z*VErK?$2A*N^71>+>q;Ay+H;B>qh}D`Xtrkl}SVroNNY7A6tVsy-Y2ki56X_fV) zQN*6v9<>J;!3^??V-0dAY(G%lbTqRKGQTWMjkMJUpCEOn+sV~o7e^JH<>4a7mnfXe zoj)~i#6=(e9Wz=_i}YD+N9BX~oZB)%e7`rxa#BGV*Zisv!!b7%yDI4DyMXQ8RZJnC z^j0Cz`Ac@QoHcIs(E3}dRkhalb%fNY1(EpHa1aoCxqZoK>!v`t9zlH_%LzOF^7a{S zq;cL|nSM4FzQ>O;BF?i_oGHF+SmzVss0TkRB7av@$rmeGIHn~s!K#K&(=9D7i9`Vd z4n93#U;W;CtZwM_yM0=O#x_>6c}vwOUefb#cF1?#LU`+n24JMu;zUu9FCPz2Omr-T zn=GRg0sJE)Sn|2;^HRLpXY`3?&42YTWvzQcyD#KoC&}+U;x_G3e*OHHm#b0F9sqvu zkH_MH=k+T7NK;((4$!st0T~Sp>7Kvsc|VP)HGTRCh|rODAzc2ryR8v3o%(=FOTE@` z-J2HLb@Y}BFEk#1zsg_d9m)sorcpf`=PY-5@uW$w$Cl0M{8z%q=}0rfhRU1tt!Md@ zK>h|F7a?@%8Z&n|yHRh&(ri^YzC*x89A#xJHTYpxzV~i#CjKdpkd_grN@@P}CfUif z(R^i5`z8jn1w0)Vo%;WxxUJ&y88K1OwQ{IWjoz8ys#5Qv_M8Ae#A!O%3k z%2{b{a8uoIQK-k2uWN_8ciau)HzX`Nyg~rO+#&;f#3WXaQe&(=^MCL1GQ$q2tb0DH zG-G(mHv+Lnbga}cD^T(6+^=o>V4=}xxPTCN!;Cx8#^xk(7#=-KqdA7&Te;Od$p^KT z&#GsouaW|Wxb#^$kD`!6pKJN5XUcP6`$Yvxt#D1A??hK3?4pM;p>Fe+4?GXQ%&MHc zwditB9JG1LbnTGWf7jaJt@bbpPAlRKqgmNR%g`p()TS3ktRH&WSnuZPc;QK;y|d7y z0f`RimJk=Lir?{%Ktzu#BLsyYB@FpFc2(;b_owqJD+!oiRgU%X;~R6YT0>{;^AFrR ze|dv^tPdvvy?bS{oAWnwT!TXzfuMzi-A+L^xw&=S{w!S!|4z-}Rvp{ndjLI<=LB2d zIkf_3Xya9(U#W*7;XtMf>JJfIGgKy=Hl6odY2C-AG?!DvK*bW1(vWqCNT~_Pbm;ew zM?V`x9dKQVqU8K~OL#3dB)#KbqH3f!S5DJdmhM0BULlT>^K>j^rL)jAXdlO)mfb+V zA0Fk7)u82M_7CHDoO^k}+SR%b-H@TwpY{Y24iOa>AE~FnR&yvj_KTSz6R@b&;r^gF zajS`qi=nbh`N?lZ1}zoF5P!14_}6yYmSJ~f%h7l;;Ys$llpkS^+lws?b_JL5=+p5+ zi;jQd`a%=MW#cm+DlX(gV#InTJ6ekM5E!o{3c*^Z(^(_m{)n{3UnE$b77twofiMmR zmD2G+=5!@;%h6V4J?D-EyK##=&HS!k?h@0@R|lasGUfvg^Qg^s02?y#&sroZ^? zPS0o#UtT7djqouy_Q%sQ(m?-!fuF-Nu}Y?H74*)fOiCq&F&xik@#{X&=APRcnOoA? zTwULV|J?i)CcZ!aBU_8gZT)B8yyp^udzcs-XbJik#P7388vOmxUoU;??^9rqVN4@i zpr=-&>Q_J^`|d;m_ViEdYNz7OVS*uaMoqg_TtZ-Cng}a;bD5zciIPKGOKM2OP7D(_ z4+Ls{7dX3KRxP?d%T_?M)5MpFRA}U%{#H&C>C#HfVcYcuBJ(iEAs8bCINsKg)WKFg z3p;VVWM$JeT(-L0wW@iW7&a;B`Yc29u~Tr#gAdQYy}9#@Qf%kbqmkhoYw^2Q;%*~% z3UKQaCZrVMa)#&;VoGGltq2R|OLhjdfU6rsp?@pl8B1pGeEqxlSYhfM2jA5%4Oqk!fEZ6h*J}muw5OQoy5{)qa(~@~Q|&wJ;3dK58suhjB8!0XepsZG z$Y<9Sax5%psl_XuLT^NQnbxq4d^!l|LM&;7ZFzFcqils&=}-R19vDk99r~JmX*iGT zsfs3wPd$(frFJX>z&cbn$7T42e682o_LoR^r9{tLxW~zBbiuwas(s2DZhCnO`D5S- zE2!V;$hNO81n`#$#g3l`9(j2uP+Si1SHNtGdA6Hf*0)fe&-B&`zFvV~llH-b=`MSV z?kbC3(^VS+%pyF~Td#tCTx~7f3~nTsm<#CFWe3TSoB&)2uk!{((Kq9CA6r__9k*9Z zDlt34+_?C^t%9_BE36~L`Fr)<7o=w6MoC7K=<{gn_wB~>r!BtQ-j3HVRqi7w0RC@( z6ZIv~DhqD_p`r)~&#OZ|C=8Ia!|3;)_XmNEHYTr+uuXrRO;avV){v11ao+mw{=X)* zloIuybTt2Jecc0N0Jd8__7@aL!v1+rq1)#=Q7~bc!0t<7wZlZ)?P`G;5uB@;he7t# z-@JyJKWn`q@c+?N<`S7`AD z+o+Iu5+?tmI)vKHSDYwcgxCo%c8tilh!7L$jSfnPYQIPOfa$;zXB~R8iju}FAdBna zm;vDb#<{d>oAB1eGD&DV!cLR|NUzES!u>dwOWA7gNwAG6gxsYw&is_gLdND^HxmpU zK1c6CO-y@u(-szJW)=b-{-AsD@!Rw2OT<|^WZL*Z!aE&uo(4HwUnyBSOi2{4vYARV z;I*B~xGJlxBHWfu_c51&@h+B@SuN(bl+oEW%v1&lG4yqO7hIy*(AE+=G~F!OXH;+` z71(Mja{G3rL`~!@{pud>#UiSN#Seeu8lCUCw=FpE+L=@2WX-Qj?%~cNe8Fa=wu!0Z z;p>%R=lAscPX-m78_3F<4>IpkIK0)?Ywrx4ntWM0bmE_Ca5KKvdh7nxQ|drer!C*n zER*r^KPrC1EthF-AHb>GV54wq)9{#zVYv35P24V``n117*B~;lWg6WZCR5@DAH8te z(6X`dU<4aBpdUQlNP6(pVr}&5-2P>F@yexyOCH)Lc4%&+*pyc@Z-6^hRFM0XE{FbO z9samBR%&stIH5E$k$zDYyjjF9UyVv}>orf$yf1bFdQS4)oH{Y><>hS@TdCPANv97I^=u&8 zV4YvBEaTas5N3{|y#uppY=(#RclpzKuE~La4+d7l>Q%v)! zo6m(8+3>(y^Oj}SZ8x-6}*fRvf_i$ib((7m}wvZwUvX zFnI%ucoxU4=wW4!NOh&+Dm?k4SFKX>Y0_2n$V24pP&msI#cEq~ ziObJx%~lE38IL}#Lodo`lvZU335h(cQ|d(I^*mV}=JEny6clG?pLx;oOUOtYCDb|3 z6CAO#>p8sZB~Ps4NeFbJ&ZZ{8xa&MW-PhntHlEI0a@UZKn*|=yWkFOIe(1Yqt|gw1 z;M7}Dij#*6m|Pqzh>*GI526;EU-waatlg>F*WOLy=4pUlI>$2-UAyg#Oohhy4L%*J zS79%`vJbiA{2T$Gm(Qjp$E@)MD8B6Te531ck~S)5P0Yk{Oj0 zCi0mVNq;Li*jpWoK5TMVZHhFz?By;@(e_N^ZfhPG+uwH&qL&G)5qWB#!}LNjL43oz z9|7=+kJElO>y&tEUMZPG7E*6%JZs>$|MmdYU-xX^09s+O(tMi@RSl2%VYhDoWVS)m zTXC+;UJ;mc#q3{Q=CJlHS)k9Egd&eQmk(+6B$0WDi~T)$U2WOxpItV~u{5aR*D@Q+?2q9D8PrW`-U%fAcj zYM##FzV$jr0$rOhFM*9s^4il{77;1d)R;LUu5@sORkZfJI!=B#o^D<0 z1u{aa9e<7RSoD0espF&>)cCq7QieggJu^^E^OFu*H4Kk2Rem>h-YD{FsyPVo@AKP@ zt`0X-coRGSfgK~<%cQ-lww4qYr+w4-CV!5k1nC^$!0)8_7oX`)ReD|da|KuKv4($p zsNcV(HXuLTqb*TgL~pH|x`{8^gvswaQ31=#jSFVEgpAhO%+6QGZ8-qIJU%XkZ}lun zaTjv#;~j}Kvau%N#nuOI@Yvm*0Z8!u3h7Xo?$@szRL@8Mp^T6d{c3+$m2W{lh6{7vzNoolcp=ARrz-LEsdddJvN?Hux%;|XLf`D%A`l>k}uW@*!tcqNsIh*HqO%C&+HhdLUO zJ-$;?IflSxH(=CAhx`&XogO;gi#>d~h}VPk@X&}oIp^6#>84$siZAM6%4#YXf>e6c zwGT!oU86Q%6X4H#$fLHT2w+o)w`Nk^4tEe}(ztlM`>j}Y@pn9<;vr!aEcR1;`_BWA z@}dHj-$MPWfvDF|?5$bkDNO<&ovKS_)?qpmZ5 zor(~By)WSx^~Y>*)wyyu?z9;5M{KrBZ7TEe6zrX4t--@`an4oM=ViYVlv0!sTz>;1 z^v;f+mUm?`#K9Hy(l@quO!OH?+iKLFU?#=r$xq~uXqZa|eV(DG);r08XX58Ca+Q3e z2Stk-Z#_O&_z}E%N~BQk<2mBLnzyW$R~=n*c9ikx2Qtu*Mlois7@NIQBGSgCBC*aE z;YGd#CpL_RBHQ14z==We0Oqt;13GA1B=pq;Ck+{RcXC|2(YHbHeO-unm|D1cUzUtdmk7abG$-8xP_ANS`XRa8Sm53sN;xfW>6-niS%XUC zwM-OcbXj$)9JH;lPe#?)8xs|yNY0C>Xu}QMjKZ8Jas1!;t5RC&_T!h`6+}oyH2k_2 z_9zQl;$sf%!$+}Zop@>K>9O9#vbH9*OF0y7SmnDV9rO6^J;5EwBf*;t5C$H6fdRqj z^+jBd*>1wxWQPu_Sg?aZ^!Cs{<&-_(?e$(*t@cdcZ$iQ6hAEp_jJ#b2H02_t)C_GsfX z<|K>B*?iR^A|1?kRo^o9)S4DV;cyFQvE98xB2abJENnB(e#r&>+WBlN#xdc9tBL-P zo;mYu8hR%C{BeFqcbx0a#L}P+`JzoW^eigCT#B=)UrddT=k?Qn+Q5~)rTU+^QGa9! zf5r@R4)S^8OWdR+4-`B4tdM~j%5nFy&99aT?tx4&rL9Fu-5X3KkDWsHT%9HfBVuDG z0ZHS%=-MA)rfnxz_4F5!0igy(TB;;H3B2Fu?LHR7|6`}BG|?tO!aou)du;DMZm*h@ zd;mqsym#5{-CY(Zs#Je5wpa>IHxWUu^{uM5S`RfZ$FV4EnAY&l@jcCS2)VUg-w*Ai zUm89Lf2#f#sG7qy%f*mt!rXA!ftyl+A*7Gny)M+&0s3p+wMTRE7q_26PLW0B%=yFF zS^Ay&q%*3iXVL41@n<@DE>&U?u~W>0bkm!{&+~0j9yuI`Y!WaYl}(p^GW(G>F^y-e zXXKu@zuE_M{-%#qz@U-CGyS~rxOT6#HdVUkZD~SGl41-$@C>g|BN%eP@db8Psu~>b-TlY>rQgBS zQ*!GcT|7!3xev6FK=ct`2M5=%FSX_m61@^f^b9gkz{a0XL`qb0Mi}+oC1P9!*jEWb zsIvaGtfq<>@ccV+R56kBLeZk*s$Jx{A(*wHjI$ZL$FlUQ4Z_s|K237k-qG}#C`im3 z)_tW^o;GL$=r*;A=RHOeDyj$u_}q4kHtLpcV=o5p)$G&<(>*Ps9@UO}!|5EkE-s6{ z41H<=Z|a=dP42vPwA6Z;e#=7eq;7Wg*R?ZW)wWE_U=;qLjsK6m>S60q8}H`94cH)S z&w*`s$oM*ucdEvh7%j`^=AQVRYA>Yx4uwUww^|17k(5pc1U=19A}DX3lUerY?>nsO z*{~>I5a5mPpE)(g*2Rc3t^`v>hbs%TY>}fu?BCD?2Is-pIKAdI-SWY3Ff$*fH z+#)iccG=&k{_sgVi58iSEDEjyJ~Nu^HxV4B^!fyPj)?Gvy`8JUC)k<3aIV+2uaADb zblAX6;b7!QvqS@Bb{$*J&90PbUrAy^{j=Y1%!fD% zmUX5Rm-1XtK<4aw!Um(TGqZdUGRF$Fn{U3@>FQ#al`twxjai-Xk{hIl81wG)4^s#~ zSQ%o=%9{q{*0H{FI?H@kuR}&Cs!a@bttaW z1eVxW77yvnmrVqX|1P$^Tu@H$d5ta5l!*O<%g1A*Ig|MH-$}P z{-cF9dM!ZQA2`W?9)U-5vBYtSeUU~tZ|yLs5b<9O@8q#_i6IeYBvH|kYpq!B!4fW_ z%zpP>vwQokscvgc2HGpkICBR_(Sl0%s20da7@$b>&*rU^PO~=+nMdiyhQ24fybjk9 zmG4o=4K-)4ge&H}V0=210W*j#m0<_>$$pymAA^&?ZbLx}pld?(0O|AOkB`Hi^+6_stuFU!BiE6chQZEQSzUwV!`$B;~f)sZPDu z_O-9sM&Wrq$;_`QDM+S^A#&F9LRU}s0If-yfW5`2&l^%2ZG9Y2{})eEC~Ef@<=95H zk#SSYuap3C8ORmL`lbgO+`R*>ZcbTktPh_evkVCzlD#$=bYWMUj(V0@%CPc%BrTY+fGQ3~DtzYOh#NrG`V(Dbp)Dk>h4Rj#mL~U0y6p1=lCv+hL-qj4HEYrvD zO;Vhzknb(iA#0G~J}(+{8a=8cvc~8Y`)IZY%3aF)F!|N=bT`R*;MF{>s3YCQxzS+Q zlY9cWY*MZ2JIx?V9o+^A*xxg|@$$;CscD~e$PH#*a4TNF6G*p3C{Yga$0I-4HbiP! zrb`4l=v@7~{;*G`1Do&qc_7Ooci^Eh{n*cp1FcyLbc}KKqu~~b7Vm_bwYrmYDpWxl zv0Tn2i(Tua*T%%^MO7D9^R?eguhk-U55Yj>JO7Q9(|fU1H()`}KzyeU9Qe=Qv~CwY z1rF3czB|BA53L@}nCVD43=0AB+^%F9pGsTgKqI4+qwRW$>MTf6Z#0pp9gGt zr5w+jPv_|e&T&$9Dg=0gsqIc746Fzh@CND|1iAe z`J2M?&upL$kd2vBx@q7gn}SM2>WfxA4!v3=tdn>d!ilYX^8Ck4MLE>JnLcV`CB+Sf zF`Ke&m)-Oyo-rKiY4#Xn$R>op8fuMZk$VW}Kj>Z%H|(iE(v&_EqI~scC2l%xo)&P_ z19o}fID*Gx5!)O*kgwBfeDa7P=3iy(`+UhT{gSu0c7w$5+v%aTafG)e4E$$1Mm=?$ zdNr2PgG-H88q?v2^JB4p-s9|7*RM)A^G~%k?-AKD^N(kB*>>%N2Qp&p4ds&zm(}1i zIunvZd?>Tz`2dx!zG-1ZD*NbS38DAxx}BaTZyB|qMWNTxEzZv_PmOdS_f`gKJ0yf< zqOyjU`iJ;MltQhtMRG?eQ0VrdQGrBSkHz`c`R$#vuPbd!V@|h{sga{5T$k^p4-!$2GJ?|L~`&vzYU^mfbwhr$9&b|Bq^#}nNx-*r+dE>{MFWvCf- zx2Kmvhj&Nvvq*82N-IB{2K zB5%k6Ns(8MeAPL7`XB1k6AFLim|$ezP2z$CPWRvpcip^mRf(xuFH(f5^Qvv`klAPkK?T0%Q5#d>5ND$XZd7x-76{yMPFUG5f5<9Ocs z;HIc?@|5xihGC-4r%SNljxXkSh$bZ$MGiq9@uxTXCz$tdi#(m$0s}FUY#=LEu$M;o zs#WgH7=5~zlf2s-!~UG!I9bmxWcu|fFAJeg257HG64lEMVv*${QE@<#@{}l3o|uip z6hM)Y#4Nr}WI+&JJnQ)VtJxrscITn@QG@%J_+zX-_NTNUs_)Uf2bJ^fTsMPoSy`P5 z7w}AEtIHe!;cB1<5eAa8)hbxLW_DP=##wm*BtU|wu^tlv7TR$7g)7}@Ate8m#&W2 znr$F3(3^f4!Qp1=YhNz60@n1+qG zrnJ5be)4HSBl77{2T?n-)YYuUL$-DGPqrK$%O^3zt+gylwN+h{T$AEwsy#SG*tB+m4WBuI%F$ON<=m3AV8zrjL90lz zGvxjwC5Oru8PioDf@>C2RxC6GL)^Hi zrv3V;_u_v-vD$jGKK%>B3B_i3zDp9~%3RJeVIpND#=GCLFRJ~Aq&QoubZ;if*U2i{ zg&J?j{R42_4;;;RjDRs}g$~oi)*NT^NqfA&*Os`K7ahFB6+`jT{Z2HyGhHitn)tJF zls8ibrCEToBHqEVT=HI|2TDptZk8wJJ4^hHSy5*NU~l+)XaJ|`QZ8Y3P~G!4gH?7K7&t73NRDhIxZG2 zL!I@hp<{j)$*(X9rxD5o)L@;kFinoO6-DxdZ+fuFb$he4RWmwHYY&|Gy!mDnAd6G1 z=Dq?UFL=|hyXS9~2{uMWhih<8f$AvJ{>gGm;(=p2P~I%b40i;=wxa$?iO`7LFzl%< zoQZVY91owHzFyr5*%!jS@sOH5h!4u)9ctxw^ai^#B8+XXfVRwY&D(L9ZMw!oUt$pQ zdcUdeuqn9MF-c;3OpB*nG*gLe6Rt7j-OEU#_|#cHfoaa<>W#3A^Dm>^%}V#sqs$(o z7~9v(QQm^9Fvz;+Q-iggY)xu=)VTw*3dP9J0v{>Qp%u~r_aY&S(C999J5SwYweVB} z*jVj!Zs{&Gen>Gfm*EZ0(>I66CUxQ0-skBS$h{SnVtFXkZe40O8=|2%7He4np}Y-l z3X_J-xs2<()(N|$&8)=tno60!)t;}f8SBcG5Q)#4^w3I~qF@h6_FcZAxin1CTzS#o zQbyupU@-GA*@JpnJ#lX2fibz|+g`59-gg!=o5DSlX)Tn1DrLK35HEAVfl7p9c1k8Q zXAc%6MuV4rL7ndW4%DD3aS=BFX@NUF40(Q^QuE=D?*q**RDzO`@A?Z?Z3zAcU+)5Gt&;NWo z=UvxYmQVBHo_qGS_x?4TB&eEKBi3N!ktDVVZL;|mb&W*##~*`2!q&w_g`-+c$o%pG=Y>wzC2K{emdqd)L?Hbu`R+MBZ*A%g-=pKHt2Y~0eLEljRg>I@jF@faQ zB2|TC+cgPycih(<*&oU3y6`JoH|H^b$lu(5T9D^?gA^YoN{QBXV>f5#`Pb{9Gy<)L zDJeqc1EaK=QiuG_0I!@%qBw9T}(OOX6i%^&j)i1+4t3fq9FZ1;;y zxJ5-RdgQo!p8X4Vx~8OjSn%R$xx?x~bL;xx#lk1KOhJsCY~x6ns%!wes>4u}#SeH- zl)#yse1PRpM$WQ{?hFif{x6-grzP8s~W1VVbm{8F2SJA_SIIYnY|t+ zLM4+QwLs7(`FE81jZL=8;xMGmX1Chw2T>B6jW&!koQm?kDw7g}5xVaaM)Lmbb<1O( zXQH|VJ8xF{99&j&knsnJL?;|__{kq)Vq zAt(z5|0>cc8dsTN{cG?rk#tKz9Eka!)Ol|Xr6pTzmRS5)$yai-c_(sp*4u}gu`*B; zHnOU3tOiTp%wO)y`#-x}koF}&o?QH$k~M}w-|3((N7nqj?PfaP2uWR5Oh%uMwy_vZ zS5TIrmF(hk^*U}Y0wa%8>A9GD4+ha-*1MZ)yKH)-k#P#-J052B@!W~HwC9&eTj8fj z559$v^ZAl{7Y6aO;=4O9`z$nd@`jWce^%$d$aK%?GUIKZtVlX6sA)2tIPA@Tt3%o0 z>;9M$>$Mhd$hLP#U9Ofill@UC?@{#D;H(Et{Wg3wyMMW?eLvXe63m?&HT#`sc?}v2cSN(S@9noMrvHN%E|@XH{d;92@>V}X@`hoUGee?n zfHC-GqW^LUW@FS!y?}-zTy1i*yiCDTNuc3*ZHvKjX&DwLK~>}fl#1X{oP7S=!X#;v zpc(PO?GIVKko3esgM(+#77h;RUkGvBU;MNAdPO?Vx`mGl+Ks16*1)g4=b_4Zs>kfA zhq`eU`I|qzJ3@8_5!>MnqpZ$?-y0bMa~!8FrOM+3U(5b5p_Bf$=x)>QLE9%%{(O+_`s^@j5~qeXO4$pQ`ZFSVdx^--uT*(EbfD6a>dc;_ibDz=W8UwPHb z|7Qn_SjUB6uMk13b$2JN_o9HM{j?|XhsElJ04{}(ZpBh01HFQX1F9*_i)Z06in$2} zbyr*Xhmn;km8=I(p);p-|1(^vB-VGDBE3x)8WHngZLxBoy=WqKNfDS`!Ad%n$5yFR zyqN^~JcLl8R~(C3+PyDqSLp(`37mI}2J;c?)_e0X-{9Tyy{(tDrGk71u~m)oy&(#M zso3l$OF}&IRR7{kv>{}*3Ngm*d;%bg?3mIA6~wzNodc+(id_fObzk^GrAC?AGm>xl z76RIli~4M|(+L)8wGHOI1A?a*9KSDh3Zo1~&;PtwerH#yEh{a{MGm*;{1ABfcqKjP zw*1)z3g1V=4cYcuk-AG(ID850bRh*mXT{pl#hX_)@ z``g(AUPX{gg6~8`d-~G%wcr2yl`K+Oy=S6w4n*6q=)IGq0^4X`-*oy{Jz@Ip>69n9 zpBB6#ARc=jq+&q*^7XXiC}VIx7x5389ProSd>y5Exbc_yAFA|zN)et4clQl_0_Uj9 zC+IujG6}(eb(*`JP^U0!n+S}lDWYR`LbD*JlF#lPYLvCE)Nh|x^Q!81T|tjnUBjGj z#54)V=_Ww%69VZg5A$1VTP|#9jr&pv)PubUGARWL#wgU2ZZvxwr>c+)`cBMFoJ~}^ zrY75?qRBHS=ijv3$C+4~CsWJyuQSrmo-<7jTpA=a5sh>I_eLS5I!qr3{f$s{z(dE; zO2jWO-pbA=`>7(|S1W8r=Y*{y&Y9J2rP}GUsB|+~p=B<~UF4B_BPO~o%d%aeRj;6E z`H3D|v|7%Q91d-26g+E`M7Z*CLsulLI0ug2;TVgUp}!}+A-5;dleerAt+UT}SdEER zl}MK;;6UC+WWz)&zOq#QNG6u^hA(_qf>qB(NWkU;vbKUf1es+uF{xv9SRPC z-TYeoN25?2{28g8#u$ZsqzmSUqsU+e!TfjE>Sv6qpPl2kcrE&hff_B3#l5;5Eraw8;0^I12=gAGHa%K;qWaT_zBPk2O064dA zhn?(JT<4_|9<{SsH(e3XTY}DZYGhx_&GvQrVPP2{CRF8UeKW9!*j_2qq52uEp+!{eR!^K zKE4QQI!5J4mX}D^PfQF)S*5!fr0J5RL)T8A9u9%Fds18)(4-vu3Y?au!ib^IbW}K2 z-EA_nZ8YIzo|rUJ;m4wvf82~_&yW`L*DG${ z66ciOdHCy_lN`Bc5f$eyC^J%oh#HVzQg^4f*v>pd>+Jlk20k?T$IxEIsIJ*>AWNUl#oHwL zW|&rC(*WV%P9H*{l4mR-TEr zHr_zN64K#3>#t(Yiy>?I+q40}U!V_@E1#mLH4i?G{&x;h+e|Ewv)5hRJ#8+uakv{j zpes+=UZ?W!^bz0<>pa;QoHGcVOm1I7fqUC6Bz$U$GFQe~vg4@0| zHVVQ@&kQbt;wM}Jc^2`3SW+P~iyr~Nl99F+MF;0Pjrkya|G6_jwwuexx~x$WyJ z&W?|Um|4bXX8)k%mB}7lt<`umU17?spMLPgZk^{CEE0lu@S-iYEQ7Y0xkSGG7i6CL zW##O;Sf_E)kgR0|!ZbuP&at8|c1gOsvPC=dy@&swN217QH9)DP*ImUCv-F{K^UxPSIN8Y8Ib!^2$R_HEl)Nt8LRNT2%loTm^b(;zn z72s-*5qIdqRtFibfa<8@@Zin>P^cs=vF3H zAnQ}tjBO{=HShXU1}2M{M!ocG+Jy-_oApVSiXv|QTMi~%Wd)m$X*QcC?vq1)EIQs;ocug#PYa1-V&R268rFQpTXT zo2xTO?&sl!BuR(s$nh#MYeRwJ>45zOrX2`Je(3TBzl5-40XkDSenTeKemnkEU|`?M z%>46^>Cqj=8JWXB9@Dh~Q$OCVmPHdmw~75XvTu`29OqBRyt)cNyT_&Fp#!MT-R04< z=yht-m>8IX%O}C5AoGHv3flt&0G$krvenODn$#%3=PhsOp*@z><8}OAN)Z{}BUzuf zmxbjDG6Dx(1b1qB`?z@|q;s!u4CDzH*_a;vE^-o2bY8G_$r5Vj)M3DY)}5v+;)x~K z)auhQRktbMC${EV_lY_jy`sJ3j*abw*P;q`7B8O<#?bVkqGl@`_iNW*vGqDcX>{7| zj{@Q7x%PIqJ&kUqbwyOn)k;Q)7=}${ly)o#hO{^B&Z!0JFVK(W4m5Q-j2HKei)7iN8$^itGLqcB)C$)-n_e0)T*@Teh&FHR zY^hi_sRF?`Xu#U<<6(jH?sx1tv{XnLfj@g(>$lC`aQ(i+G9A;TNXDz!SmxUna{7+H zW7p<0jHivy*K34z(?hS;FMJO-0Q2iA2W{L*jzM~9p2mDC2S4p%m9HefHfECF1U!WK z3F9&=PT0rix4R&F4G>i997OI|(~u|j_lA;RvG_D!l_gs^M9eBu+Xj*{!Ns}$1Y*>* zs_a8>nkFO2D(#DG#~4`qoQt-q{#2cFl3q4u=cUOI}=|G5Ad90|-*|5JOv>-Xd? zB7&$tX+$S$@Q33vSNqWm4;7l~mpg*rST&umv;ZZz38!;2MqR_-F6u~^-_3Er_gm@O zLAZaU{Uh}FUHMI`FzuA7LuW(}*pakjQ(99;$0PA(+v`CUF`BDN8OSob;fl?J)7c09 zV%phumQ-!y0t8$rc8;RKxS6s!VJ*_8^Qs~2q<|3c3dD6UWK=*t{v?=PU+@3*&yLxf zFNINY?<{2uOkP>eva?omhE6S2gtIR$yE zm;b2XukN2rF?R>ySL+uud4tIWek?T4Z-(xYNs9(wA8*Bd5);*-LI>X>dvFHD@bGUu zFD^|HN$?&l>qT@A5Nfu6U;A7u8)HWyM7656*OQZ?-&1*=X@dci=Y<^Kj#a4QAHOEvl5DNQyr?E2l&DzLi3mg3Fn7iA@wo&^_Wrpyq;|t%41KAx9^Dg%a1ze zj<4?1kyq_3bSAm{NIONW)9T-pj+4NiCm)P2N_*veW)~Rdu zm*4T+P-I3@m1^XU+q(S#GaHzdQD7j}Y_mR_)3<)*4uV&}Jryd$6DaR5{;D5Q_PZA-ZXcQpAvLlFV4|@^x19+7x8j$P!*{ZBYEB498 zNCc#fa?n8w>{4#j&mHQwGQ0#ZD=f#qsD%`C^-eQ^C)x9?JW!95%PYz`P5%1WU}RlN!Msodn`0_d|S8{vs?52k_D!%lVoWbpVAsbd>&}UjN4S*yOUB5IJn`Cv%hz27~BFQ3T4|-u%zFE`L2Lmj`uP1MpJ80ZFg2YMc@VELW+& zQ$yI&>|TfzSXydXy6GeUd9@*e2H1OuGsDV*)r7JBJ8ml9RJLlv_MZWiqI74cQ2d9$ zU4!3FLLmhp;hZ#J0{^tuT=twQWQE$mw|cXzm6B-c4w_I1+btEpv51->Ni1$_$xhIJCsFl9}0TcpP(4iJs#kumSm38sVa zYul@c_-e4an&@mKeQi>1!1~f+9Q59FG$c4zKV3v4gNUs&s6RNP!m=`M&NTejoP}xe zqEvzCta@i~`U)kd;=953VMd=5|1M`%$(kMsaun^wC59-~R%z&*-F$OWe`VSrYcrZX zEl?JOFr*$lp!N=^;{Lp#%ryB%B){A?!JTY8hd;z=z6nX%swfb|myJ!U6|JWCA13Gr zm^!T*vS~@Gpz6`JT+(h^aS-lLf<-0#u>4}`8>g*KS?W$s8sMLdoa0O^`v)yfN;V&{ z(R=gi+D&6>_`uAaqEAkEPGv5o9zufN3@fh76+M$$S+0kJ#ka6Su*Db&-IL($;6@#) zanh+Pb*^p=^Vk`hE#e;?q&W9ev9Q!&nJ>KX^1Q|lGO$q?I6@T#&t1v!i7rGJJ%vy% zuJAQ5Ke&g2^NF&+qh!!6wD7H#VcTx4DV6i60yxIA2hup6J7!w{X&B(3Ud{4H;DvGBt6^Y>M?D9!Kw8f*Vv-hQrn z@r>~>sJSXH&EFjvF= z`?W$f0-o(&&sLK7Gr`q3`CgE5v?W(apP(`C?>SXEC-5T*ilV_uBFC@Ge&l3~LylAK zQsxQr#ZAqtncjovMN!w$p?l}aSG~nR0Pbfn2|pT|S21#3tKGPTcpn=5KVATGmbDiw zx(q0KG`M@LTJL;Abriw#sX8G>M0`#l!a{iz?J!l`V+x(V^dZmnvhvaUrJUC$$iZ%gRTgvdYFsOm?FCsFBE=v4F zT{b6PAYdX`Xyqy~Fx)ubZkKBP*{))pH2xynFjKkqW00_Z=3#p_yEPlGlenOI`X6`j zBMt{KX!LUiqOUe>TLqj})mQF|!?F4<;H{VZF)qwOl@eJ% z?lG$Wi*xN%JUcLQJY$?O#au4A(3W!aa`Ia}d2TyOGVANV*=B>`x28-X$#M%$lj_1Q z|FG>P>W9v@HqqMb-t3PWObzE$^R*vxHRUjVQrLdKE^YY!Lt~ZaAjL2FL`REEa|L^F zhhdz&AvRl!9g!dAB(3rZy+;-m0sY2_vI9Ny6Qb)82`w!ow?GHkmnVd6La4H^`{EDp z(INzv*5CCr2W+1NSNx|lil*?keW_u&(6yNa9YQ+JK5=mn!^?u{f*qOG;)7ea=#?7N z+6}Wn6)M=@QaH`REjq10PL-zY3n^KPM|PI)ln4!n4&)K9uM4a zqw~Ry>pyOHr}EVtoD~34azVbwYszIpdlR^xndl-OAR`AGoDX+u*W|i=LEr%uG&Hk zz>k*SNW7LHmHMb2w)~|nUmPMCp!|MQIYJ+-Q8pf8TC!ZA{aJ@*s1}W)>4MNK=7}2Q z!&jMuC%hBiAcdm|36$kPWmsrJYEi+727|-nRUxi1Z$OK##8P%4RbOKFTGjF!nzTLv zfGB1@=~OW#f-AFrPDqveDKwGcXo#aqwAa5gmparTaG^aPuyg)=Kr?VZ%vLy`6OQAH z?jEX0g;Ko@e}OL;Qe{5#zN-ATn}Au`rmO;jzZ3ZMJqrO>hswUGm4-+GNYi10Kgs!M zp8q{r0k(}6hw-@1#L04-^_I=$6o(;TDZ>NMUq_IMT`jNnWqU$%MI+-BbaZ98x133- zo!V$7mX`ag#Uo89Tjeo5w(jygpC$H%ngxlqU1WPPZ4 z$$QEg{H!k%Yv7T}Vk`NXi|V)4yh7Uyo)H@3#&z|(5tr=@1cdj>(gxzBP(u=$T* zC_Yqs0h9+Dv|UiXG;}fEPXi~9W&^Y5$QEV$pz8vK4k`B6hyD$b_g#bEz&fL(A%(Nm zN*d`_nY)9B-UICxTKS5D`XpSNy5#MLVvIcfTx!ky$R0;8X|MXlJ}HImm_YK9_8<4+ zKnRWB(hhE$Inwj^%XliVUx$-L=J;;vtRs&<3hH4!H|!mm{+Tsh-Ou$dNigrNndpr7 z0ZrdM6s^0Q?$KnSrv6LG$8)`u%2vRPy0d~X#Beo}zH{jxhg29ww$TimoXGXQ+JEEE zLyAjQ@yrzemDd*FhjGX(sOq>A7x?p_yQH{3l&ALLv)X;YS%v>UWL}l3U#L|BoU8GH z4N*?UvLb@j(fJLH!|0vJ4b^|Z=8xAlyB8p}2$5%f9Z1?*C}}zsj&_gOzA__6Sx*)w`868)F&p>gak ze^l3D?+i?!II_$0xqj1kEgEy=FYe zro|wAGOjXDUF5L%wf0#O5c4rIJ(bfKJyfkKIuX6`qs32UMNa0Ky&{>5BRR?Vb^QtuB~th(Lcn85y@C@vB5!cn5P7fA3#E&KMeA&QnAI5P5oG zV9@kB;Cb-ZJhZ0CVPA5P@E;lSWnpGq&GED(>frP?Q`2Jvs5fp#l{lRGOn=&5Q~HbG zZMDYu+4$*#Qb4ju(3bAM(*Kz{qiMWZtF4}$H>tGxoQUu{&KCAO6tSFrl4wNj&3X!t z3apj~SBzI1F8PNDX(UvE21fe{S6I<0_~d(&dO6^i5XbG=h9=q?!{|O=cT%hV>3lwljj5opJ7ncnibr8BV zZ0AFq6olbfssdOA9HhTR5^IaGTp1@)3xIj6yM&OYW+Wjo8lukOvSg{pU9XkIT(TIl zf`og@yCClGEnV_BsQ~Yp?T1(Zjm{fBPJSMRqlFYnI8_qjsdze;s{j+f!nQtV@#w*{ zkm0mwQ$D$s2c>4T1Q2Ubwqq;8>UZ2+wWB#^;46Inzj2&C7SeKsSI20V1s9S*%f5RsYyGrd)b4ElZ-Tav${$ji6i^^~3hOzv?FVMOPogEgCd<;+rU8u9h zD=FNYk2UxZ6WZM;PUDL&3n}FI4Xf@oUKR{v` zw-GCcT(Z5X^Hlynr{+sOzXY^4i*Ku^I?Si&7~insHX%l;tqe8?9g50}cSq;9;j71+ zbFG$}y;!fI9x{^24mI=XseuQ6cyb1Ulm6C#ZlZGG;nCE=0(oe93%|kEs<5lV<|z&y z$TQpaHfLeGbj!Du4Ck;R!(IKixg>oT9n-*Xk5&grC2Pa^zqc-fY*%Y)*VEO#LRYp| ziPAXi7cV4E|X zUG!6h6Xu%GqyD(Px%`0D^1ndsCRM4sr{L^fJW^hdZljBQHw2|KS*dumfBg)hXXkRK z)R`Fn0e_L4Q32`%Ij(_9?{v3SMbNlY@fS4pUp_j}6CXtY%Lxf$c_$0KXTd>sW7%dj zOF2lpK%Xf7go}+GsX!X`09{2g7&pOfrZn`km)yd3Pjnzi(4oXo^t4D8=_>ZA9k&iX zTO-b}--a}rGE7W3Sb0otq@I2d$ut;Vnc$YYKp4$^3?o)QtHE z2b=a$LRYEOhDjxrQ>HUd`*jGPa6C&m7Q>g(?0lGZ9R9eGOZ0XGAMg;X^|$I!C;!nDJ3S~Cc`%}&^8PY~cv&L?w}p|{nLD)hy- zRHp8j%8|29O1L*qN#abFMVX;oSD{azB;t6R$ZeN>o@ZA5s;b;rwA(?|P?yr0oZ@mQ zziId#7gPIe-bo{SVC%@p76mkhyZVxNOv?ZKrz50 zo$Ro^^jT&IN$ieeekNck<1)d`Y{G_n|M9f_iuUTBZ;CSq>CC%|W1AFIb_cj-4_0lc zcewkPwtpygA(YwOc1+$7VhM*pfrog?PJqb!)HsOBi9A8l=CWt%VW%yBVM)0MMkPEodr|gwaYg zluuG};i^TD^Tj;)mO5ylGy$Shp_`wNjqdXA!S}a4!$QGBOg)m|CSxHLv^rR;p2+*C zt2asMPhNTXzfe$m)|tutMzml} zrNdx0BWjBuZfP&AjFUA?4?B@yr^0Urvslpo5(Yl6^k*$QEO5&nxC1MuG^hyo7m|uhISB#s=`LpX+JYTOT zL~6~qSM^UyXMFNRbuaLc?}mgWo_*fEq%BagWzn5@XYL_09|%6J(>Dl|(VZt1)a#_J zjHNEQ(8S|grVBXl0t;!56ao~>ZRWrfxs}o4D14R~wG+(@*(N{ImQJdaz^{E8LJPNo zEPApX{{eu`dyY3FL8rlm*N>o=L+_EeTlsp1!{b@qt_xq^?tHH8T>j|zZ__)!F>$HS z(aYkn?_`eMzy*+l>x9p{AVHg>0IADPXLAQ;@eL5{t<#rhC~N@uma9>!#pS>%>M^^r z@J?#71yMLf#-ife#iN`Oi)uxqmE*~`&lwde_RuO#0XZy+1r5!yE31$Cortk*s|4G4 zC~JEiucLxLL$)iEY7fMj?r7l#)7@>-3~A8u7Ou&^O*mC0kyQKZh#%OE2s{hRcGAQK z{NL2d3yy~lS-Wsfrd9+0H6Hn-k}n%wPLzA+kPEyizrCk6DY*w_q$Q^ zAW~%W?PA7cEhpAf_e4}DoJe<8Mw!b0LQMJRzdBH^Y{8tq)+|-o52uP>F2C$Gx-6Qg z7Qtar`Zp-zZzpgHW!x_{Cn@V;h*%!PTt^&Tey(~{%+fWjoAg2^h{_!4;kH{9uhUg1 zjM1JlO?(Q2+k?QgD#Y8J6 zb*KSJXXoA06vb)k;Ao1#fE;zLc6A-0n9l-Qqf`|OjvvMs5$0`>+HL*VU4eH+T5Dc9 z51=l@gqI7PBH(y6t6RF%$I+_r?0oVXj+BSQh`3CgM(gK zePn=vQ&+o58(5H3>*deuBnX(B`MKtveuY26>#oVLq)*A(wSkTB{7wlX1^ zV_z|1Ek=#Ps=rL)Nqkq_3wE--d4t}H@~LVX7zMj(|1#fC2)s4C{xl$b{HlDV>gAgR zx8Bc_{Oid!B|=~KiuxR4sUfzr!r>~^>Y1A_RgOo7eB4PZb%*sq_l~5n@N1g`Z(qv{ zS4|pTf(cc3iU&#+POSU5i1vSS;0b!)o0bTPM=VoxBsdwzbY=Wp4tt+tI8@UUzAjtK zj|CTwaD|vjX@dgTOk8rnnEiAeR&SmxdRitV(D%>BgcqYTdt`Uh^wLr6m<`l!Y+;rf zv{iQ7#CuwH=7G}c9XIzlsx>F!DwkZS;4y7DDZNN{jG=GO&n24W2DvC=I$~l(Saj-> z)i)n>NN?hoPA*e;MFO?cQS)}Al#cZubd6k##^z?>>uN^9<1y9G+imXAkR?|~Js>pi zdbK$xkYeeB;MSsgV?49r9SDI9yR=slw)@<;V`{4{q$iFIw!6(ag*s%g4PUyY-!~B{ zZdwZWdhpc7HIqfeX5V4W%;k*u)8dbrfeJR+o3Qa6!TG9Z`0`1HKxEt67hlQ$N6($p z4S->z8h7HP)t({_aO^t55(~yJD`LCks`Z@mHRY2?XqwmIty|i7&(8hUSG0<=Mx9R{1|qR-->T4{VpfeOS*Nw(~3+PTxJ|P1ARR@dcW^2)?D5w@x+hC=4w%` zh{VBjK=>bp5o(qW)|5(jy#tk8HbTk`|7?kfxYYc?Bs0{>s<}PAfuerr+DU)XkCNEm z9JH{jFBMF(M%Jundn76uifGfNmewV>F`c43l3g7N@qosCKxM*B5m@bjuH}L~d__k& zh1Zo2`!^n*)K0k_lVS!-3M}C@3A|w=XGfoq#=t@bDC%~1jebcbVNpr}yQ$7G8*+Pc zy~$=;NFagDhsrd=z`B_(qRooOzkm77yq&c&{e|o7i7-g`68Ho_a*5oQTW7x(lmm2q zoe`2#O01Y?CGh=i!t9fU^~1Bm z!2O{;_fqG6opyKr)5o9jODIim@WssHrMUis0d!_UizZbM;co}iiO7UG$Js8E~GcD{Pvbl%!|&c#a|3^Z;K)Tir&+Nis196+8bzP}92 zV10}u8$xBQu{F$atK+aldivLiGi%r$AZ4r#xFM@W?00InvzL_{>Vk7|ingu*mMpn6 zudgotA5Ci#Tt*ztt`31o2~BCIiC@(+Dm=6W$&rja>cus#ch8*TY$It(8T=DK*VwbE z;Um~(2+QY(18#b8ok$nn;ztO}E<>mI$Ah50tCg1B{_VXdY#Vx@g%VcgUcetwbL~)6 zH5p*d*&Xu;g*4ao5D3Xa#Qbc%*UMl)&IZIEpL_BuiYntp*hzKU z8Qq#HitjOgVEZ_!X>JHTNs-0`alT=Z2qAgqlHwQ30c9tve(k7`VJ9}gtSz$CS5EV4u?CjU)9&4M%+1ZBMzXsjt{pDO_PPQ7es{a+egxBmj zIH)?%dpJTF1@P8{aW00w2QuwZf7hzk6tyCobn@gDBv03uw4@ffe9PD-IHyLaZL%i# zqvT(mRc`G?hphII*?C0;NZ)d&<_HzUYl{>@|3w&bUxheAI{xVhCveFwABhc@m`9qg znDrQm0*W@9^}pbZ?2c6Ug$zqFkmNdB6F*Z07*23gLTKFCS^$3{m5DDUfKORcPQg*l zBN5^Kfz%dGypD!K-|>-X!z8^lhwb)V0eNj@ruIDP7Z>1j&_mG5&**=U_5rblGVq`% z=>1vVEwuq4Z2_WLul^bJhVr;CVu;gkTq63{ZzDvHv0SY8sqN2OLxn%*jk;z*&bzP) zX|(WBfLGb7a_1NZxwnLPOoPVl*w@?DaH;*eTE)jwJ%CNVx}>C)Rhf*L}n0Bp`T}|O|dF% zAAi|oWzln>D}tSOv3mxh8aij+45&!sFUvGfG1eAo(>foK+Wl*3ziUEP6WSNFIT}8-qgC5se*sNn^0yS3MRrQ07IIsFup;u-MZ*)n3I@(c9dVzVo$fN zJ7QfsX8S~^3)m5=PM#U#X_^j(#NEQTuVRa#Zo@zRIdktR{AaF8bf7n-87JAFztVbN9+Ls7y1a||%@({Bl9(*3pv z(Qm%&7A`FFyZ?%AZK+e2@o{jIKVMep00>b=jG&kIK$$1&E4`2ZrTNdnu#8iJ{{6@> z({-nC3{RZrbJjp1iYG{re)c!I(-M77|KOothxY?j{LY$l8(NPw%YEm1Ze|1b-tP6d z2@HbgyU%Za|K@#YZ|pm~?5D%2eS~!DKdu%vN;b5{n)^t%yHp`p5p>8|+nQwKjwbK6 z*I^`&PR8}~HeB{8O8ons8ef?VrsFz}Faprr=<%O`Z|q3JJ_g^Y3|_yFi1N6NK0UYL zuByA5#_xMdjE?f>v4(^f#kt^>m4sQ*GLl3t;+^9)N*paGK6!bN;yoaKBRKV>_DIni z=liS|9rXhz`mh=vYlVAN(Xed4SxpvY5hhr3u50_#mb?4^PBW=jZ`e4wTRyXP@-k%m zDk<*3j~pHU$BFv-kjnq7f`Jt|umnp)>#iTN7qlIARZ7;L%XRf*sE%A@F)onqX{O#v zV;0dAL+Koai*LQm&ys^n3nu3;#t1CSu8&#E9%T5#?Sd%yCbZoS^%=-@jKg1!XH@KKhzxUTaHFsS%7rh=4ehcvU00UCo7ks#yJ3FJgNXNIJwG$~P?SUfmXSL0B zJT9_-(h|%goC?_YFKKyuY_)z>|4014E0 zJ~driF8Eg&m|e?sVA)#ZlHv1o$5}*WNd7ayot=$V`VUyuK|<9huI~DKDi>xr@KydW zC!1e)Hj<&Wf}*9IUC=`d$rI z=%uG^&er+|&2U(Bgd~5ntXY!fwV@letHj^gI9=4Q6=F-DJlwJVy)K3i0@hxLRpRr} zYok?a>QtDe(D`?S7JUE@ervjTQdhu_(1B=Ye9mlWsc^BK{gvUGmd(8+y2nQGFTa8u zCU&OEa7Nyi*Y~+_a|w$}W?kR~KB5#j(;!3H&d<4%p5E-}dl%}HboKG@r!Q>lcMQC= z+saqW=kdA!%#bXHv!i&{uMSkvpTNg2-(6p3F7L!S#=%4@KxPmf*$h}cj3m)3j_&lm z5EH-8%7Uk90!UR9g)Z?#2>lc}42fPzR-7q*Z77U;Zc@r0r50PMw<(0`=Vo4LQjuFn zCEF?fwOKJj|1F~k8H@|U=;+XS@c!$gn5S22LIGg1rpfk-s7_WV*!rUf$_)G7VP2@% zwM=>=GOWe^zTG|D$X{=>n&gQovvMC?=fjcr`OIT%{>YuOjWcjM%r}#h+=^ePDmQnl z-uPZ%tE=tG5{_ff9m!Ijzq^U`q9L5#IGfgH$tYyTK|NwpijVP@O3sd`Jfq6Ueeuag zowIW+{2psynF)@LE(&fPt*C}BZukV&!)Pf{c0L+X%dwAIL1#PX7cZ*}Kwfrw_6)mj zk@&jyn~QaBeUQCdgIx+ShAOT`>&{po0zJie6nW>jR-aD}ub)MisrfQk+<#B^e2lTA z$Up>eA%VI`h9)MlXFnF8z?1i1JNC9{@7t<+*CMy$2-BK|C5?_`hd*y`*9_~r*D#c0 zTCU`V*a^DPbO@;u>n~Mui*MU`18o2bHK_wyx<@VpN@WR51vVG#U521_$l!Ap0=5Q{ zalEr5W0P33g$_&HwjQN_>u9ggSzE)lCBw$`jq`Ypnb66T!>$~?yr*~WXfFiJ44A@u z#gwMk3K2Zp<$ba!C8Rpk@XnsW;C#qv7;Fk`lk%?E^Y#$lMdr|Ityz>h*Qsz z{MgR78k0>PUjs^}Tp~Y%@K^-qN!#lP*mAbQb>q(Z*GtEuou7!9(<@-;U{DD&i1m3% z!!Iy*ZqHg7AGKX#ATnBEN*^DVta|j)5GQ;XWhP&x`kt}ZQ&&4Gfth;m$rBO;*Me-N z%~LbCc=dD3KT7-;&gwbeJCkxWYzMnAVvwL>DCD`L<2fKkyxZx#ue}(*pEB4u0HIy5 z`U~vnhbQV>X~v_qkxp-rPNWMUmkU#B*re!X(!(a53JX^_^l#nEPDUzTH8?>Ghrav! zBN*3dFR(){5~#w!_O9&znQ4*JLeGaL?CZ?}#3PIP+a-Vb`Ivg1c2yBCdf7)bc&uPi zz50?0f~FeEKST|iyw*$=fLt72Ef51TX{}g?q#=l<&X)<<^*UGl6Cv3lp0y6Qfzz@L zUf9@SouKToiqQo3qlMD&3zLGnA zDW$g@8{49BwFJ;j9a2MVirNKFqV(J&aVhWDDd081VxD=Vt3K9_5V~qKyZLv``p=@c ztcSJgEZ#UJo+bWz)z^wz5C80B$yrj4l5MAJ#i_INt-}SWWD3vqM-7?;R$9r@cToU0 z|I2nNHgjjQ668!piCTQMfc91AqAEZuI!88u6NYS$% zLMjZaY#EuL51u>fNtUngh};BVxdgYDzfVDeQ$26^QRtoyx|^+uwUrw!*UK#qyC0Iw z`~Z}Cw8-WGRXNVV!%{L`%tA-03=s|Ar=wgEO4Qyt;c8FL7fvCw++B;4H+od#T zSN0Ds_>i7d>@X!7xO4uMi5zw6*}mr*8K4rDZZ}3EWQbpV`9Ds_J!$90l{$cq7N>J6 zGDl$2nF`L_D6Joegdt;@1Ifczlp?6l-Ri@;s$*E@%4xEpC{cQbBS8$-Gx{=10zs^YmVU{Lj#)asbcE3y6Y^ zvI}aaAxOxK3TI6jQN@#xj~BLQ6+>&~xQNB%H^9d~T~h%0rnUwWQq*WqOsb-Ta`Ha? znBx!pFpQe6r4SrU-~#OOMJxN-GpLl$GovK8dtzHf0Z6wWV)CCXSbY+yI96Ox5LgiH zS->8wmh~|Wf9&JxoGV&ZsD=t>qtpLab|jh# z4+Qbah7orWpKzn%nhGE#$3$Y(&gB5YGK~qdI4p3+Jz6~Wqe!9qgJQNFQ39Djb+Um~z3n zoQkhh6l*bmOGr7kNvM0Fmh$PwmsRiMcQifW%}^^X+<|P&F_JFSRn?P3banJ57tYeN z{a6f(^9mc*oV~9~$x53tR*ylyCCry^YUzJfNHIhq@$wJ%Jus0W%6Y8T(99V|#Zog= zFKU9-`9eh<&5Xj_CrsfiqSA_YjS$331?$&gDmnJCeD$Nf;T$;}S~Ssn(-K1%xVGE- z$KtS;&aM$*X}0Ph2UgnIH|L9bh zsSNJ8Xb#t-yh*m+x7LA`z#Cks`TpB~-^l;_Z`-|ZR4m`atSSEU9hNM9`A>puXv`8c z2lQhrHpks{tUe@Wl{9sU0x8Ck^Tb0!Af46S?TqCQ?A z+@8zMiC_hbm^jn@(Ro|xY=>&-@T2idWGp62lOnHn=DQnzE71aSb@9|bgN4(Fl zePezMet|Bipps4g#LW&5+XRU9o-xQRIbC$bA0?#_gTpfb?3ymLZCR&KPC>z?#>TOJ z-}~RsIEVEC__X`GxIUxe&3F*ysdqeJpXTt>n&kg@umAVA{TaJ*G5g|(Dq z@z?HKN`bam4JlemTihK&D5WjMi@O(hx8Mbe7fEp_UNpr$xVt;Sfpb=ggh_!>~64347LB-?g6ge4q(0G=KC>SARtAmH`Hzr&HX}B8yZ=mA1Sm`b;^$ zQj3_lsN(sp#_k7-|Ihb-SX0vi>;oLv)QEHbC*1w7AFlt`m6rRKSm^ookf?t|S+JX6 zUZLIZ@a$VREnIf@YsU6FVzKw{cX?H3Ckh~POaP4c=Z})dhpKZ%$E_i>$M>K`-F<<= z&>|)izrOsNd)>L~%EYvOD&Fs)zh1lti*-&{*LwOF!82k@i2D9`TA=AkvT~`4u$~ly zzN$n+KSwLRhqgV5$39f_?5iAIuE%w9(7`NQEh1FmiLd_m-p7A;cT0ec|CgWL%f5oc zzUA+3IF1HY?iA4DIoT@>1-B_w%6NV$Ta}LkWI7zE{+uusuu$oUzJp1>(!nUfPM5!i zkg-z-gT&B`!NHC@nTlUM<(NWwJzcWn3 z+(}U$3Z){D+1ZzntfCDxl|8}NkYPqYee>7vH6Blht3+ahO{h-7r*^rRu8*?b68piH zsu{zv3y)Q)cCcIwRDG728HuO;Cz08_Rc~p9TwaTP)R|;|I`%Ku|NrsAnZ19}uPOvn z8@u~EbbYt3v$C7`8BCOU!8~Pp^(hr+y|A=ra|WIAAk-7U$vR2K_O7L$Z0Mm7(LAIxx7(jP*(DBCbjP=dfJNAa8Uw4 z2(ptnAU|V10AEk_h)@U~(yiN##=tD6Cs4J^@xc!tyomICCYR z8$C1m2^pBppGBZ^Z{ZU%zdPQcSU9j@+_9f++7JIIKf@;r{J)GTNu*oND-@=i`~1A) zdBeP7H`g*rDrmBO)YQ_YS6;xzzg$~oy&PV4eHz|ME&VF(lPaL4}%;^zt(`xoCC|Cu#hsy)Sn8h`=o_gAgy5h5=U1`>V5k z8~oSs`0oV6-Ce6N@v|+zOhOpw;LlamsxT``|KNKA^VTWY&O?!&w z$(u;?!xH)>kbx-=8Py0>o~nMPmQ}@~$oecvhx1}ZQnYqm)v!-6k7|UdjjLJc*om?b zIpSYL7?|-(YU(&Y$`Pq>^;;oUfg0rSP*sRo-z9-rJHPyA=KGh8ST-4b`8t?b^~HEt zU%SsTRy-YTQ&n1Q)$e1W_qgvhXGZ|la>bn=TS+(OgrnIGAhN)%=Zb#_PSR8Y+oy`z z!5fio!AS~YclB?I0Od26x92%$QSriJrS<3ngzH-SWSb0;NG$d;=}W_OX-cvh8<|XT zzR~J>!N#qmo_vP|0KU+4sv;TKIi@3mDTH|2fNA*qA}%abF}ob1gQ4ryMk_&N+`F)f zu3%Y^|ft$Oi2V6#JsavvK={v-f+OIGIA4bzfC zwS^QAlUT91>(VJqz$0G~6;AoDm>d7;cD|&lTt~GFS5CRs zNM5ZcevYM;^q~;wg8}L9~;x+&KqYf35Fp$&RTwnNWfMN9VUoY^*kmr7awe{og z#nUjBtOcvgv3)l6(jBc(FQUf2nB92+l}((t`|nWqAY!bO09V+3Wr1NH0AsyEfO>}; z`PB7Wb==Pkryf|9jJ5;aad$YkB=E67&wFjlgcp5K6~NkxX~)!Ck|ET-+}J!DYN4QM z))p}P{MY2JL7b;*BcYqgA_l`HtkIOVUTp*E+3i%Fvuc-ABnfJ>a}sz51~8}>t>>uh zEwZMMTVeUvsVA&D%Yp-; z8A-uz=>za0A}B=lx?;MzGSyj(7Yb@3#Kq@x93)Q0I|?=cfk`5VWK=;gncFh`G;&&_ zYv(_T7ZaVHD1Yy}wKp~OS%8a4;p?otZG@d%#a0&Kz+sFrvf&P|q%dZpd&puwd`C@yemVH$89X*LdD)HBtss|;#RLJ`M@7GKafIr(fdUJ0kIH4_v=}#!*-#Ye zbng*&KQHHEJs&f(*Tz8ez`PxqkJIV)_{Y8Es}0Yq{q3>59e!QyofPRCN!mfq=36aq zJ(EdQiliwUX*n5+lbi3ert9iQPE>;_9N*NmOF}KCtNkq|+@JDzj9CNY`dQP{E%$3+ zZ8AGHD5}w_mecJ(hX)|kCZUp#`vV%ba)DK=L6c2d!+-J<+`Tb`b;bOnGw<%IPu@KY zk<*iSi<|1yWbtsW=DC_!Pqv4~;^4DC1rBd$({>zFTPGX9Xu|Y%Mo+ZVPyRAD!*etBBYBYn&|%cgj_+N+Z}`uZ?iTpv)Hc_m@(t=mv@rw+O-_|d z&yoH0S1>V!&$3e9#kww49~P9D(1ePfMGAiW<`dlKJ(HdLA0l?*9TLgi+@75R2s0C{ z-XYG<5cblc!kQ`nVd4g?Wk)LfT=)}cUHU7N&yNkh)es=>sRq1wc_>bI@m``%*s3rq ztf(uP!zD~+sU)ubS_&5r!bjxNqms@{tE+=y#)fpd%m>OwjY2_}f%*I26MjkYbLe|8 zDkyEKf@=wp32!nSOXy7=h;L^fPeuhOQ4vwsX3r{9fx5lVvkkdR`3+JAuaYJ3_P;TZ zqC5@ErD6z*^&mrrtL{^R(G5=nx99E&KswFahuJ|*dFsJ0Lkf?uK#fejVhun zX-=*KR!=$+?|*Zz6O+}#g{)X&msZaFT9Pk8pPi}p@4&2e>t`K?&>95A%sxX zv@QyFZvg>JcG;)I^(N;G7F7oUVH_u{8C@WR-lH_4W+JJnRtAP#s)+p>Jw$P(5m^H_ zIC9N0@DnK)_W5F-b=kStrILS>_psvB)#N|Bx+pM2J?UZkxvZxCyXTd5sjfqj8_^a) z*oUKCzr1`)zn5f{@6K20mzGqfX=XI@c~I{+pZ{8Q9~o&p+zBb5R*y6Hz6>U2a|OcQ zuF$bug2St z-O4;exw(x`pzgX*^^$PY;|ZhK(|T=}BYSZdqt@%CrH`FyVO3KaqwoaCn{W!2?b&Ro?}*U)OV!QVGE6$Ai6H>r<{y;W-edfskaX}0dcJVgnB zn_$7nN*Vtyc4R@{q#(UGcLlsC8ah@=InFo#X|jYBEpMb_R~9$>pBfLO5x6VmhO$rW{pku+;u{(A71 z(X9-^1=dRFRD=FjrO{LZ+(~u%E52RggLBn!?Xb1VUZ2*H|l83<-BZjyh>K zM!S8Ww|kt0?_KBFE|XQg*b;iS2{oyF+g?tqo!%xg7XM<|7)Y|pQ%JF(RyP|?H#Qwe zRqdxx`K&YMu4__zCtCMypOTH#&XfkeMrBo*b}l-2&5Q`fvYfiF*&RR>%k?ZklE51& z!Lwd2qRg}{ks|%|We*=;luGc{$M|{*vmeayRdydS6Q>Sy7@Q0)Ct9t&WfA^Z7g^j{ z7e3OZ18|UuT z@&PQz4plP5uFrqw--aCKq|^RB2I#niVz>`f!R|c|RN%iXyacCckD_3?kfd$mCNGX8r!(`Dyn|OvH&_y3b1BviqNK-1wdi-Crs+vRXD) zVrF~%MT>D}k@`p2;-HzK8@TLgLqn%6R~gCPN1Tsu9}p>< z;=3tdnpkDlJy5JUF6Qc3!TRA5bJ<#{8!Vl4jYv}?jXB(}(*RxCpF&wG*h&$-YU0vT z6gW8J@SNcJHn0u%Yt|)Sj)3%pOy9$oCh6+3*@*n`qyHo3cN@QA%k_OzUa(bL=*e1E z3NIsDH>zsD{Jvp$wC^Iks2AD|1m_hZv=r`!OEyr=bsa~Cz9FZ7KNl(I->`N)WhWXcie3=es7pWy zjCb%X?&yl7{IeQ5i;Rn26gf*)N1(R3K!l6K%LwmSDw(#16T-r1bToP|oCvgE2R zW)9y_LQAR-g5E$_&;yzKQWu4#J4%SJNh~DkE@N1E4enE2%ZF*=`bhUkilg!2PqWK> zds}g^Sn;I~8x^p}83$kEzwnVdO5=7tcx?SMyJW3Pfl-)!^m5eR$Ieb=sn)ssENL*z zeW37-bMf4RqzNzmT$tk9d6fvY5N1*NM9xmxgrKeDfa3H{Y#&|!xu12hsQ5RYr4RHG zM|NXJ25-Ceq?~hHUf!K9SSY7lZ;hkYE7NHSx~S5Sr)f4dI@7k~3z`JV8IS{;PrbqW zo%1UI!@*WS8*|g&Y3`$M_tC8OO^tgB~@biJ|$LdLp% zGB}0uSuHF3t{J?EB)<6#UO7UzdWh|8h4^ljko*$U9|NvDz#Ao z-=j(;wX*&`0#6-d^`jBlw>K^jPirW5W=17?D*PveZt z)1>9gM(QJ4;+PrUcZyfMlX=OnSW)VqIemSfUUHD%mpJv@dKPl>t~}Go@C2FQ3qUC~ z-tm~8QRxOVv${BJitqj3UH~dMV?IokE$OJapphvuc7$@ogu6}!B%RS+P!d9i$@Y}Qej(i^#>8ST+x8v{U;QkI$ z&ppoXM`iY2Pq*NF$*Ob`XX&SUF>Tq_!4z7x5}1;x`RMyjvLthBwYh`M08huG_-eb3 z(ZZ-k>0*wHfuyVDyd=t_q_~0-mzkZ~gGo7_)1u?)zFmXnw%aHyvNN~uGjk@m{3m-) z%V6zGQLVvqa~4|V*6BoZ4>KQ8`(2JGi-;Y@gI#(y@q9b8b?{Ut{Bgz1S$sdNk2>bU zu9>E}k1wze0YB~K;}8Z6Gc9stCEvXR>qD-@033VpLo5~Z!=6B{_oC*Cn2h~I0jON57i0XrZiv`9XR?pS62!6xE` z;?ZG(E?C&n_qHrH6}5sc0*j6V@G}Oc#ui*-VD&B-y60k({vVAoaWI=7R?TC#-45Oa z@~nToZWqRhs=Guun$I!~xhvl-|8A<`k?H4BmsJDb?rFc(v~55NPnn|ugD`>oG+&wO zTLZ2>h{ZDA#zv7m*Su|26yN)BdDf=GzTei~k(^uGP8)_(=1}9gTc=r3t@!8ZKG#0K zQ2XZ~vjcn3C{Yac3@WUqtNUQzm_N=KF`W?FXrz~-hN=(9?dO^$2A^pWMJt8o)Yo6e zE=^sH0hYG|fW52j5(LG=b2w`yQ&xrq*P3u84l`p;2{XV2mKS^ds6oK+KeM;P&}OkY z6sP3Lhq0@z9OE;4#Zazfe|IbB*jQJJdNg&iFG}2G?sMb4^v$~3i0vcf z@*CTal=frIBM7zG55#71yLFTJs`pz@>#||KV-GzvsU3pK>*8YEE}5m&S8zURbk!v_ zyOE}T4K!ZSofm9&HthIOkM7GQL`~SjIk)z^%h8fTAxp+Ns(Bwg249(n#mmcm2cN@O z^lcXLr7&tcNpbP8okDgrA++w9;Yps%Y~=G1;q6q)!D$?Re3I25@lUDUIUmqg!oDpm zfleAU?r8B5-_uPN0#4Lb^1sqHFlO; zxoUz=Eho-L?gpw;a;xv8#a1ptmv=>O<%DU9I}$|;(*Hzn@@=Fp`P|8@`6O^pU7*jI zaET=-dqO{u-~TM&;08N>GBmTjjfFCuRY<%Dd3o3W#%YYptM7W8c|$IVGUXrMw~j+U z;Ym4)iGl2?&+X*7X-Bm2;%ZnIU_#^BvFlTyoffSN&3F8O|2mv}>E;_d=<3jj(Zhtcx8S`)x9*xD4*A(l zVpjUup=qv59hq(IO#z6;HW*kh)?`RZlQA5XPJd2nxtz1UJ_3B&V> z8a9325?8)LM*oJ)5`S89SP4wyF+%I~k2ix85x{Kcqk?@n@J%+(Gy=ew? z;e0PQ7Z2y|&y*%ltOWG2oJQ6=n2ZnMxD+P)O7Yk&2WnfCs7-@nqf@K6hMzFl&B32a z76~6Sm%*2L%nkxmOl>>NYzfPCHG_j}X`Jmwbg|}QZwE%baH^t&}i|Ha=WCa5wf*u4z2s; zEr%5r?>w2v0GtYq#T70u#Qvyoq|Vq%xp`?dSZdk`*Q~VBwlNhhej|MI8b<*_# zb7&^>+MR3`phiDOo=K50?DLHg3pN_B@&(a92q6NRGkPD=-zJzFRL@)LvdoQhH139( zH~qNKq0iVP>7K=k7Cljml6|A`8*{w-)K$r&bI1lCPKas*9n#HF@;%Zwxt|j!UyjM z`6|Jo?i)EPyF1Jj95r@+nPM8Ya`=haASOv2x7B-e@qhH98Rf~x2_0QrE1+9j9p zYxkRq-W~s*f$vY9hhFW}J=>R~_f^JpVZ2vW+Vk|5l0YbCtVUuky$9fn)A_774Pjir z?<3@Tz7BjDmQ)AVGSeGAOY*)7J}&9KB^W08HiUhl5}}ga0-~G#Vbxjl(b@Q`&GO|| zokiSRS)L;T0SORyGaUoVN5fbMrGw?m;CAw|7nf1UhGM0b1`-aKySKL#RTu#CT@86@ zdV{7&Db?LoPf1W#H)GRYb?ZvZlsJhdr4@Fro;9`V(s6gv(U^+Wuq^U1uvrzF-D=LD z%5TamrX}IgkrPRfVS#ilN@1$atK%(ZU;8eA)Vp9}*SyugmCzz_s8?`{)!#lhosqU# z?Pc#X%M6v0pk%`ps!Bs>rpU_7VZPOrvg`<#gr6wq^v-M(kVa3x2TRhp`8$;NCC%^v z;k52#`bEBRvTB1fFZH_UK=6xm?O0dLazIA4-Lh1Q#}mJ@A8ldfq02CfI-1y{15Inz zqFRgg9Ah(Nobv#@GGZ`AzzWdh-YpJA+NZ&(`K8B_yaF*%$WI&@J$bnNrgh7K_-R1F zJ0LX?=fM5=!awvSf`re0q?;l{tNEL+xkss-`X)W_ailYX zjF%ZSf3sGS3qU%CtBE9|)$wvh|IzfUFU7bxCr8b}wUr29rD&PkU2Jn5d!S3TJAJz< z5riQg&qpEP37;5)x;uEbt7<^$=d2yZ{SHRg#Inh;c3;Q6=LzLRx!&CAg62MpDqZMh zR}Qn_K8)<7ByL&%N){qbw-xNU}0jXj6o%fV~_Rn~` z+;kzJaL%&3Xl(GdSDl8_#a*|Ym)Dh2399f=8gKs7dfzH#|z_3RjT#B|Coha~43cp-56OAijpuD)$ zn@4~YSL4H?93Sv~-P%&p-nu@qKzZa-f164Of*Nru5`3#htX0l1Tl0f%zI*R~Xwo*U zhoq$W_AYJ!jgb0Tp`#{GTZ=^Y)OLbh)f&JYpGP4BXf7e;ASF!`4{xHOyEF}`U2%Ag)}u$Co2B* zdsaJOqt@SUu*Jcp20M#QrUl%;8n=6X=Yz;;FuBO*W9TeWReoVJt*s5s24I90(g4db zvw=locw&2OkR>R9FE%oAy5EANbfu73KOuDZVmepZw(*(qnWKkAQzxnJ1V|alwja=&_ zz}Ic$bpV$_5i&T9XQ`?#!At!)Z)x$-v^zO zwY+&NY~U0?J#Pj&aavVc*dUxM>T*sigctROf1r>EWF#DGOz`R>zvm8g=fansS1VCp z3mA2QBGvKM$}W1h-)B7JJ5&lWE|e^zKke%{7> zNC^FkM=gTgZSgKOmHU~639i5(gxVdx>=ijAY~fo`;J)i(*!I034?#$*O?+(&KEghq z9U8LIVK}+yzD3v`FX;||`xQjb-&G7HvzTpyZhyL+8#Y~SSeK()gWTre4mZf|dCUv* zTKnCq{CX+MW`I2PvRjQ}EGjLAelRi3EAz^gG7%UaEKs?v+q(MryB(}_qpMEd&)YSn z+q`y?z@za9b(pS!*wZDuvTwn)hpUZ0u_T_Lj`5=$m6En{)kO_-7~X+vr5j5J>FM0& ze2^l;KV74^Y!JUo;3rulUmjablR-8HyzLjy-lqMJW{XBmlM55grRu>XbETS|k9Tr>m(cB7 zaQ(tfGoir^ccwAsi&eo|c+#qhwcbF8P5kO3r=PGiv5wF3Z}Vd*WyxLTJZBwvY+BR9 zzBtD%&VZn(W4iC@W1|ox$0yBOPb{dIN!aEw12KFe|E5sp!uYS&4>9-L3mFm?4qm^2 zYs|=`RF3TA!X1@wdjR4|5~s7+YbPsYUgFQj?ZUXuA`{9Z_$!fk#I0=OW4SngeSvXB zR~_m`1Q9nDqDKdUys7)4%H*ns-YW~`Bd`4o?(4^iy4-msQUKT-+%yKsHooMGTeOHX zx!*i-q=AQOXcAgorU?#$XDifoc~UXHXTT10?r1%svbY1 zez~G){xWWP%e;!KTf~Hg;sZQg}MAtjlohPvdgzzBWJe9y2TF8N89nsLw<^a`g+XF^r&9njN75(ZG6(u2Ae5 zu-}yfNgzX2G@xe&c5I_S*flSP`L--F7HeY7_GmXsd+rMa&(lJbW-9t<96R3l<)?44 zdmyah&pfJnUZ3c#C?=^8CpUk=T07?bmx~H?zPoHMNiOl$AA8)jjRyhgC~jF@&#{=* zhl72%J!zv!Tt9`&*q0<)wYPTg!h8a-S3)D;A9;mH_cPKg6Z7AD5)o8HI#Lz$3B5tfPXXH=WnMku+#Ti#q55bIoWx=8KcJ4ojwvAnBwV`V7BB=*^K?UoLS>`yv2VVOU8{C>2doEvyh4OAIQiCiH*do-LuP?n$M%G|VGL)BxE|1<)-(5!Ft!RgG zHL&;!IYcO}rK7{b^En8}{kB9mc0$hGfpt%2-^?Dt&Jb9Cem+(9;3NJ)br7=C}KMub$UCOQf&xpLQ65LY(T>YD~|OZ2(C7M%~0(^5K&sN*IwK1 zHpONCgZ~20dN%jlnAvyui;TQJ_jIl~6)$KBaoTc8CR$e#CnXr>C8b`dSVgCxw#nf!<&EE0QOAc|S z39pzyo(lEm74!8@5RP5x)99A{9xnI--dFIoke)LPXtHT?)hLSIx4FI+(R}3DaJIDs!L73P&v^(yE>plQHxLuDZ#g7{e0B6gWGL0) zmMwVjcZ5^DT?4!hoxXWIGQOI(Pl+I+eY;z!Tue3ae3^uFx#_e2^`A#+-sIO-+%_YMp>uwg3WWH^>WhR0~7 z6aArF!+$l-!UrB-4rXmDWe%sx+LW~avQ&2Yg?Q~Mo0_BY_`uWt{nEAEmU^8Q3y{L5 zFI6XlWj{X>PBhL;h$d(YTF2v5EOMY$d}5g@JP{H+C&o-|->VM!Fcv10Tnn6wZr3f6 z2&znFE*6{ql-2tPJ^McJ)i&gSj@XKzBeu8NAL4>3ru@4GIEQ4VHZZVRM+|Hmdb z>UbKm<%joElG=vM!{e*_i;RN85A_6T%k{$hi3QJ2$JeaH~TouIL8My(@Gk?7g&J2 ziCd*2d4}hXz0Iokwi-&GpAv2siUspAh?Z;l2{ryRS+OCjY0Zoq(x3I(kE{yr9mS3E zJ%rZP-1VEfLSqWUuaE*_GjGC8sTg=oc6e)Mx~4Ua-%>{Xpb9LXF4fiugfX_I$I{|N z(S@b_mM$t{yh)b+w>`ViPP}CssU~)1lqj?@VO8F+k>PP9dV*0$q=XNNwx#-9!`~9B z$DI;7YlVV6Qr*LaFMsInzfI zmX0djU(O9u`HaXL%{0Y@^5~#Po#uA6L$Ch)B;vBa*VSL@CaO18viqNgTyT!}*d_%N zqN($}3!HzLSq?G`jo99Kn?xJRgTx`3Yso)5p07i&o+(xFz5D+?o2so>_ zDM8K)ouh+zw1Wbq5+96de2!gC_9PPKI)m8+bXn}U319|hsg)U>D6c_@F20BcOy7X1 z_*Oi3dM7>1^A%fn4@t7cJpMtFw=I1SHYl@{o#sQnT!vw3!+vk0%|ExQEkZTcsj zHNnPPeTXf`uFJQR$f+J4oz8|9i`86`+SU47fa0*!Hx@D!cdlQmn+3>Sq`imkR2=(DN*O z)LkR$e&vy;T4ZW^o+dDyQr!LOI9bM1JA1MQan+{B!Pio&LqK+w>XJBXaYfiUKg915 zT(tEvTf;BXmi_Nc-Np`!7V($--T;Ph3h4bwo>MKh#RV!y*}(-#)~x+WC;a&c9*$bJ z&F_9*v_7*7Z@4D6xZXN|h4_Nn2u5q%R+`p@($$ix;60~OFLCOUS*j%Sq zsP9|iI7JMun|~u{=BT}f@9`9qquxNE@?%FZl>6Uj#;(vNrOb3zPN@iW>6fV1=L)QZ z9rlLxR5ttA$U~FtPD|Z{nzfqzbYJz$&%yM=FE$?E#cUclk5@;_I@C(dH&l?D__YUL z53VozD{^)h7$tIj;13x1xmIKKtZ%e}MPcl$zP5@QHDaq-QEYu_jI~9NDP_jn7{JWS zrYkR)S3RNr*L1k-*{jY?g)36tV9+&UF}pJ=aKtZxrUYvPFvh61b?rp!7_KjIESQB+ z6!OOt{g_#8pY2$?ZR9y+_l@9t(p{+bxxvD{hy+5VAOnV@pEd3LFBROKK5AsVo3_*-otj^nB$aQ_{@I~IOtLK=Z(5_h!Y+H z<|!L7Coy%x8@tC3B6<(&K8Nf#XY*-MpPaxpE_iHv(kX()S%UQhp9r6H-0WX`>h>&s zs1M<5`wPZ3c+zY7U3s{n6T)-Ka8gkm0&+aZag6PuC<`tEdT(chU51ZS50AP|rf1h5 znd#{tR?3#3C@&+@#-nDF#4Hh|P?DQ7uM7bRlM*7kWu1JB-Zo=e$c(deRtAp)}Eukm~0o5CZDfm2qRq`-3#(yU?(k94!wTk zP2b1y$QB^|?hnfB&PA>p_-@V}JayZDne?bAnXm%=!`QdmZ)Of5C0N5;>K@NRM2CL3 z^63xyO>%bzD7S<^N*a3>xaW@xZ>fzR*)_?Fgs(P);YWD-{ozN`<&3`TuN1^FacZ~g zScPP(>;5w7V^f#0P-0v96PeAYnFBUIr-B3n+B9&+MpW~dzt_)k_F<7|ZL@#{bzYSy z;L#oMKcpf6lSpRG)*h<|eN8xH7CmkaKTarSZP6b@uMoqTe@Tz5hjaJoTNL_K-t=WS zbKNdmUFqI-WIkd)B&MwyicIW<-tGAa$>8#}v@0~S$JH6zr24WNq0pUH46fD4;h9e1-mP`Gb?_P`<83) z+Acge@ntxxh#Q!2z%tHS%Gb9#TQI?QnqtD!pklkbs6cgOZ`j~O>Q&LK*gb!jvOR9r z7sDy@1GK+yXT`O=?{ZDzfh+Tz;l}WD6ouUkmuEHWSen~WnrT#pU`-wCp0z%oBHFNH zZP}}w1rRLU?@nDV+xG6g(*!NmKG`Jcl~iZnPmcJP1$96N_sJ(dMSFTGMpYY|y_T%u z=GxYa`(qn>N@x$z4`$!yisX{}IYNZ=3OVniT-u;QH1;Zb8CPV~qDOo4M&EDDmU0-o zmdQ)m>6ZN0oRQg^mDAJbV5PKA?Z8~sEJ}pgDMv9ih8^wgj11iEORiM7)S*ZAKQNm3 zc`kLt?jnt9+8-^jS;ySQfyny(MLn%;i&j>OW}3((i&Cv#ge1I+_S&htO-R`oOo&|z zMR7Owhl#s@GWthVbsNvecltJOD4SfRP}$I5`a`kqI~cd}&qd!3<59pykt}zztdM3n^r~Y-E>f)^#E`ao!13|>R5H6p zef~fC2-zp}DQ2A_b@)^=&8?nATJ&Gj!#nS-J@r$5yGptezGA6aw?BC~dU&_45-wqK zbU&K1Nufzz{sTEli4lM7nSpg^ssiXrO%F3&?(lQ%_*b0qR`%c4dfok+hX}gTQD!vf z?dptS)Yk|~?N1hOrHX7{sw3FbofnUA@xRmh@=ruL$-JavPIH7k?G{{>G8A=mqi1!Hr^GHvv3B7f3=pG5xIo{DYl_Fsqi6Cd-YemQ4n z%=%+IR7KN%H~HHP=d(x;W3!S3eiitFBw!0K9l0n8f*tMzs?VK^QN=QVZA?bDn^(n! z9)r2{0n3ym%{0c*FPFn&YXWDMRXL~^hn#v{e?vSH7jubMMt35Zvk!M|eYhJKOF^q` zypYT|=j&aO|0onnZ!AvS)g4e+6WLY%T2XEhEd`zD58JEDgZH2;NQhzs6;EX^OB z;1*!GtS+DuZ2-kqPj{x#u2PmZgpmYBjw&N-S9Tu!%Ta2Da>&!jxt(Ehw-fJ*Oi1=V zU5cS_==ejNh~^|7mT&j;v}>95d0BJK2+R^wjE3Um5^pld6Hg+)bEQ$hiQF2~BrygL z2Z>uGtgeFlH3A7EyzPFO5z!3Eh!cB|EiYcOV9q*6e8h1kc&%rsDwNOfl1huhxaKIw zD^gxdS9!D({(6ymjnX+Jw?q31uBDZ|NK0nTzccuFe?)RFRN#Yrl~EuaWm}?ISirDO z>2U3Qh+QS2)EKPy9rFR-6t2fvZ42%TIEiF<=DXnx#)}>u>Jt}5%<34l_OqMVh0@Tu zP|A-Bnzi_fT%^ZTsSV3jBq>ttHX(Gj*um&e*vig@KEn(Moi*6NKm@U0+Zr7902^;s z8oM^y2v~nb$i{dOM5y_97Rs-YzcE(o>PP~~;(kk)O#Q-ivCJH4o@mPc&{*P?XTZmJ zR~=y{TisO2V*m(zLI6!Rp4bJj9fwI|B@+uj`t~S)@tEoTkbJg~<3z8RZn60-%h}SA zn!m3>c>L#kViVDbZg z=D}BumZfz1GqL}?RyDUFNB<7Vx@7D7cz^;4U zIO@BY+_nLXB{r3x1N^;eYt(&(us!+x(gtZSis(ir!s&aLT!C={kceht6UaZzu z+bIsich<E5o&e$9<%_?QY@o?@?R?Pc7~n- zsl-PLMc?@LeshPrhR0ntovU~%{23m&*5R~opAy;vz#i0hG|3oz%Rm{xIVsP=?(IdJ z*fvkT5~OM$c~%7U0WU6=3sWuH0C92rC+&I@9;RtAw@Y!2 z7|-GM-w$k{`|3cd58^4lJ%K@pCFc7a?C+&~%vxeW3#mlW0cHbzJVkvk2;(XR!el72 zyRxIVn1Tr_29EOe?V4&kCg&k>d^Ts<3QaK;LhpASzcKrjX}#drU@(5w{z0B~B0=55c!vqI)7g39~J(Wgf_0~R36 z^}IE@4*YK+x9h{pu%=(hw5rpncvxP;8)!1a*7a|ZE4xK?;PaD zOrQ}h+?Zdt9hGk+I;Hl()JC$-bL#TD)co%1lxt(=>EL9i2*+V7146Yy5L|!UTJo_S z_;OB(P|cSVZ;nxf332 zf5m-1T<1-8XLyU~QNA)BA5ogyvoK=Y1wI84GG2wHYfP{p*j7(zpq@1n`S_J7k|6QTOZ;#mG09ZlY*#>6SwlIu0)Qptb7^hp6_&E#QSp#&`j;O z#5yILU2o^d@@2_Vp<*5#P%+$`dzg_B+TYFqNx1a+t);I8OTQRWf%@JhyYH6yRrYn2 zZM>Ls)^#h+@7($i3d{*R8JvCk<*VX2;T&mhPhS-dJfT>L&*UD5e7M(INkk{eP7{f% zF23tGtT6sP8BeZ>ybmwAGLY7xuT|WTLR~AKg~o*4oEn*H@nKN;mYo{;NOUe6gbwg8 zs{A9Pvn$1muO+!_mHe0dZts9Kx5MwS#k;zq*GB-PboP`#42J)?bW@Ry{@c^<`Y!}` zjEf3e%`)KUJ!ShR5!vqkR2kC#PwWi?|=sWTiLDj~fLC+4?Gye8gO9|_s8ZKLzfk6MgSNBE zH^?6M199*mZajbZ+3-7k&1l7Qglm+h+djLieG8Y{WB56T^UQute^g2$-?x~|PyJoe zbHN8?^g=kXhocq4=*Yg6xDEIAU3QTrRt8D9qg{qWYl&-u4_&f_3yvtzlL7(yG+_7x z!uPPa+H6ijJ#w{%V!J1mGCaR<|LKJabjOYp6qbT1Qbp!?EEwmfI>qV!`2qLJsw`Z? z=tPz7tTv&Film!;`aftxE-Dt+<-cr|c$Y}8%ITVnTfdrqwd>P8y8 zn`QGuMtxP!&vxugEsUcv4&=n#OSbgB&bxhcaX&C6h8uHNwkp2fC6Ye$`T(HtPTBuo ztes_0m2bQDQ52L$lnxP)?iN_6D4o(R-QBSOMFHt%U-6)^omK79I1 zMN0wWsgI3+NO}5A>DSW%7Y%;DLIx31>^S3e*T@S|vwdcRN<5qz`b}PwXA80&cwq~4z2CpOiGA|Ax4UWYI`w;q!;UW@ zwkNM=w3|%mUC8OxFD4L&ukK56xU3ywRr_N0$&vbcptj3g=ZfBCJL92K;p-3pJbuM& za=SMrhgW(QFBF2YvQl+3?B^D4m?4*?+Ay)z*YXO9_pDN%A}{p$@vgw#0 zmSqKK$tf>fHzj+elc19hm3Iv^GC*Afto`CT=->)oWkLF zxQS!wceP zKWTtK;$>x1Q0`2lX|#=1&f~fsHHykRxDapzbV!Oix_1ti!?%FA23wJqzyobUzVE8J zc=jbtDRT>TJf0IBd`|_r$z$@W_LG^wat4FpbRU zub>s3f6tLte#vIL9=-RRnu7Fm_7+-JJEL}ftX1Wdn1Z!XT=i5gOB!^%I^qaU3$V-_ z446%9SqOUXVpQ*s@T0JRu*O< zv?GA_F?X)=XLPi-AZSo~W*?#wbFx3{FvwYMJ9g8%cu*!-axzk0oTw>R=;|nRaH}~O zMzuwj?z`HSttw0>z@<5xd5AS*p~)|K!cU{g(Fw>^U$b}X+sV=rXnnyi2<1N~?l=i! zWLX}PWzf5A$RMSao-MSYz7$;@3+o0uzR5nfk#zX7;Eg`ORPF&XkJggp?Yb6qy6Cg< zyQl8Kksk1@+kC4YzhR@=}UrpBGsb9)`ax z@FE~HfZ(}gXMerL>9saL~?_HTE%8T^gwoYn*z zx>i+sPU}duC%ZgaUeyFf-A>Bv$B$oP$yGJG|~XknR^Y%feF z3lfTnO@edrTBv$DNzCg7CuZ279mR@FsaZ`dDcTJ-`a^tn-g{LK8x=Mj5byIQ&1Afu z*5@5cNZ2|#4zguJ?~jCLJDq^~K({+ANV8G_%~Qno6{`I92h+tY%1cT%NgkoDAG<@^ z(t*XQMmQRW+~zG>eyk+?Yah?q?WMgaR2OQ?`82FkFB;yjaR+B^ytztc>=DVDk|Qoi zMb~a|R`x4YxI-+7xyH^Pv^os3uf^c{Uea_m(BzIE&wuO|_1|yt<=<)-7}(R-diA@K zLu}_NryrdA1>yP5fpYf^26h_WhEfuBc&tsdSlNk9rFEpEQ|N3|Z`)O(;)@yie!E@3 z+|;wppk{qr|6>YDJvEb5B=EA0>v)FKM&oGpw=KGrSJ)J5O;d54mEM*BZIHj( zw5jsWDnEkiBy9me_oQ<#iVZMT87UoJ2^Cses{x6|$q35kAB2WaD7-JUhmyZJK{p=} zs!A*1?8Yz(8Snk$KZ4mMk3rRn+L=Z!mx*RM=LzHnOZ!HdiZV+LD2Ayv5_qDdX8#<7Cp}yRK=fO7mGt@>#U)#^;Cn9!+}f^6D9dz?wdDd)tmMfzDEGXWDdwomh=ybRvA(m33M&l z8xB>W9;Q~kT4!s&+dmXPfs|FOy(gFQo?-4lrZRtRgZ2+avdeeI$X*?F!b0+btTh$ut&*m|{?SBe z7{{2k5b%YlT>r}_$KQPpQl}`NMK=pPwcq(BOLQJ149i+{Kc+3lQ~*WBbosVGGj7wc zLp7JP3*ib_;V4`($=7zbRVC1aDFyY_K{;5Yscgf-g}e%msTRA>lcz{HlcELhOvBN{ ziG+z)(1y38JhMfJgq4fFFk4yG!qY%19YG48T4AMuw7){v=qR=oAsoA=&0m<0=)B=E z!ge1Kg$o5r(8|SMy#zfJ?$#uKkdJdfXIw0!YWLeEbPw?)xElDeI`#Q(S0xXo93*Qx zjUPS=+jj%U*WW8!46NLY#ecPAV^|oC1RIZW0g<9P%^c$5MtAOaRf+ZoGiP zGPdb2jYY4K-_NK(VM&@Tm|nPb?V>dUJ1R@xKX0-u6=7kM2C1M0o`>x2NA(Ju zK`8**&@Cpn*feQup+&kkl~%`$U906XoxrHg^5YV2u`lYo5y7?cI?yRGBz1G_*yQYkU>~FHcSM+~ZI;V;Jvs3>3 zlHIW;T?uVK;h=d4RwBEjeL0u~?#Mm>PL%Zcr9&p#?9Cdnn>zAZkiR9T#ebStGnXaT zcC);RkFa|c%*T|CV0V+&b;0b$$tU>&^c31JTGx@H-jlLF6j~Pi`RremZqT@zp{Wb0 zGkf2at_V!dR6<0G%XQln-g*Akf~8!AZGWcST##LxBRkfNWzTwM*Vl1U-H=a|D=dd} zuTYRY*UKqSw(MFgs$Jsinu+AzQFVFPyxyJE9AF2r2o61G?c-jf%gZU3e;ypl9?(st zfUeH;)KRbh{RSk6gn9f!*JtkQ=D$Zx_A;F0yk4|WQi`RF2)-z8QCpBYTm=YfV}$j-2{qJqCXlqQM2BFx#y;0^HL_J- z`e+5~ZE49d0+g?A!krb?msY%$YL;-nhnDATN@O1#>(woavj@-^nXK;-nsNR3T9_Eu z+aw;I0;ideeRByh#wzYOO%hLC?;AXa-IJS{BdSB;RAEi4=IR5CQhpTpZ+9_ZsS=M3 z*RA1R;dFMkiwd0;=yp{#YW8trXz_7w}DP%$34M$RKPmxSfUl>b_$atjbNxQdRwB@!l*NCwPR=p_Hd}gwn73^Y}XUNOlBkA zi*1N^g|9>Lsp6z;S+>!%9p!gDf&lV|yr|`__l}iVK`|_UR~!$`Q0Lbl+#z1YnuhD! zc|W8{pNvCqdqD@a;Qh{}H0);lqo*Rw)-(@@?Se>q>g+-08(S-|hce@Y}{M=XEc!fM({wj*^i@dr8A_0I&%pb#hvNr~d5&UK8( z2V|fdjrj$yD@pbBjH{0r6%uxVtCC`Cc)3hc@YWow|84kPXotuKCLmK^teJ0Jpy{zu z9pfWhDljn&Z3-(0{Z=$|BkttGTSTwu&8FLjo8t;;Tx-vi0TlOUc06YhMDI8^JRD23 zg1)i2SRdYs(k#&*cWx&SHrVvp^@a(b#@3zBDGmZxH8UY4{Z72+6wNV&527%7+5=8w zR(~&kr;8akPJRW`uL9)F+Ko3d0l~}}T*iH(D2K=xeQdU4m-(7uo-4yG@E$e|R(jp8 zbwt`yA$REq5y-`Eg-!muq@(ku)A=LB@R4LCV}2@lPV=Q3<5vT!6Y>`rB+IJwIxuz!_n}q$tl%gZ)(9dYzjidx%%h#Ott3xsL_IJ=USDZv3Lo&b z=ykYuB#A1M1QAv|6VLtU6q!R*u_wBxV8F4?avqI9#C23)j(!-$li(7@w2rOCllVaJ ztN*kwhl2aQW29j9lUdW%-lDmf^n&rFqjpRbrKs6|EG24jD|c+W`TVLMm+S zdLZO#psyA_weg{-zb0qh`<7kEq`3me`wm2>beN=Ty&SNv$O5nzc60rM4x~aHebA4e z4)(+?l7Bo!=AXWojjT?VMeLCQLh^ z1)6#LMs*xY(cCKr;yZR3-`J5eqbu2zdZX!Y-wOEpMw7cDnPsN~^(44K`Z3fqrylJI zGEKqHg6~=M|XZq1^~# z){(1xF?KIL6Kk0}F-68eX->g8(D`6&w2?lDl;!vb*q{aP02c+!(!$$gd!BUU75TNZ zZmlURM#wx_LXtr3c;30+$qFA?l>iil?F@o{=#{M;C=3sVsDV?PWW*(RAA+OI+7uiSZx7L>taixI#= z_`nAzsOcq^%x&^cN57>4tJ216uk9oCC@NEm7n*D%w3a`^qm#TB9uAC~P-O@VA^>E77xV6}Rr{Kk?p#p4Jsc#&Nfbtc@g! zRKkpd+|b-_URXV%`nEsVN9XLHS)Xb9jf&PNe^CFai$xS6QX4tEMGY|VEKd+GP}14b<$Rxr6E8u$YF9mPP`#}YL^E1SF-hxfO{SNyf(psZOJy+$DE58cY zA)#SPbQmXSQs#^6RA*9(#Z3K!&iu?4=6Y_~dXNW>)g*@jQjnH+pjZo6+5z39j;Re( zkB*L4Tg24N#Q?fB?~ylO7E`SBt0$PShM#4SoHq#}sM|p&b6XK7E1%bJ({OA%C)4ed z1=5nrmg?BF1A~^9UKiU8Wgrp4?j@k3H11-xYs7 zp%&(ev5lxv_1SvfVRl!K+7&b!4-hZL)|B7znR}WOp;P9J0(lMbBp|Ik<%3jIRho7>UW`i_GragJtbgE5gsDGt>@#a$^6W9P$x&3 zvmwH%j;9#j{o-tEQ~9){NAq=ZFx zOXEkqWtbTdGWY@!+yK7X&3fA@ z#8A;($_?Zavo$fjd>h|k-$z3nU#(1nl}XO;z%bSJYmd&4`%nH_Kvunv4a#po!rLYF z!FX%V4!Sm=UNHcu1&%7?jyyKSf!VuH8dAYOi>e9>@lyvG6#?MsMH5$2N95XWqk?wg zf2Jk0td~dJpKm!7@Vx68+-hY!0I&)5KWsb6b^V+#ONJK$hLeM#n&W$ap}Z^`bu~Z{ zn^?An_-cyQ?KCy8W5(EGcB6a^elQSJ3Jy1L$#Pn2KlFg$#%X7|NnDF6{iUu=*Zo=* z2iYXkM7qLB3;*<#2mH~vHN5O$yw3}Imia?)Y^AQYlf8UYJJ^~ONLd|aG6fk)LihyZ z1r_dpX_VaN=ibsQ-V^qiYZ;B&(?g%YSMgwSH1Krf+FOb7d%pXXJaRMPa-`#QFG^bk zL4jg4k~ogS@15uGihsTeW01DP!2#sHZ)L!Px3=!z6%XVS~=L@FF$H;W4KilfiF9)5Q?t-nwcAZ>fmux)B_Tku9L{&3NP zx4{QWjo1B$#g;3cxbK30kIlD+>-qcIVFEd-R{u4t_w{e{&bfX~(*wbeQNxYLIe4)PqA7|5hdP!Ow_TTtMdv z0h!(8FQB*1=8~F*WtG1~^z?{BDzIuUUy`?XKYXxhi~j(+JPM%b(cr=CO4{?X|AH&_ zlrF7?Q*J>nG=Iz`Aa($Ke3u9fH0_f5tk1xIzs8q;zcpq5OY4b=mW>}4g)%SxRe2<~s3f{g1hSJ#(v#`(>s$*1Ki? z9(+%4AgqmA6RMsUw7XbK?2MfgSi=6hh$A>9g~WI?a- z*l%=`t>UgP{(e}0g5hxD)+8+jsLk4=>Ah!*Xo$JF_W4ZKUafev#F6Tj_6T?F%&JHu zN);!c2^dWHZp^r*Y_BzScJBPRu{NP6;B-v;JZ8Zq(YQH)Z@|kF!``hIjHG6xdvj!p zDZaBT*K!;>=<*;N_)u5l9Zq5NMx>1IYg_BInKGDdCt7> zgxYy%#sc**wJGFnWnPeeSdO9W=3fSp<2)@h#C5QDCI_{|P4H~g@t?v5z%LT&vOafF z87Ochx0!tfI1E=(yUg0*c_c=RZOt|(5t5yfet!b7S)$8=1-Y~?8{MjGU*?i}YioyB zHxY7UkbveuahJ;$nhgrtMjLK5^Rh{^cI18?zhpp`nE%I5 zMJd0)`>0k`AolqRDO1d)LzeU(^1HsAI)>kBInU60$@R|qLJbb6VS7mJj)$xr;A^hh zJ*KfX&o_-1Y}iuy1p=RdM7y~_OWh{f zU9PLf3nP##r!R1+=w&?=;eEhYIKZcOb6l<;3>sYfz6~r>kc-; zw;OxaV?SJzONcva)&7zAT2nNa+?uW1G~VQs*%VRwU0A+C)$ur8&)D#M+%vQlo*1Bk zOCsDMM&s|Wymu%2lQFvJ6D@hxzr5uk2#u1dM1OS*W~+k+?R%A@gj8hhKK+-%DHY0T zer7X!^zPhphnx{YhAe=R4bVp)q&Wy)`-eF&PR)#etgCghBk#-AMGSB%nTJN~C1lxL z4Fu)v2u%KnavWNSp?q0#v>-mmPqa~7?4+iuN^D|%9$P3|ZE;DE;_+)|)-x`$R5P z{_hx`&g@L5Yz@E~jIYu(4*pi|B%tRcR}cy*HM+6@rH?6q-!iVi--Yhac|qG0wME4G zO?`L8<_Q69R<730#_@C)H+|^~3|FVW=ilqfNLgL`Cv(+~ev`HghI*V&xt^vBZ@3Bg zAl%{>j7p9?8W&{{y^9ZJ4WA#P`(!ah05>XnbW7JS!2%lB1E89uB-q#PU$c0Zx~49A z(ou^;gbP1{+7_S3E#g^72a3g`S_@AXF`~B*3)|O8SBI3b@}jsg+1qby7^w;?eG``c zTxHcz8FO0g0by2O&ILrP{o#$O>YVRHOPNp1 zC2v&2|K?R4q`_D`Ba8AJ)5`lk>}+dW-+rh|GXA^C31>#(;zn(|fg!F31-nicI;M{9 z$uX407Qg5W6dHN?FXSSEy12*H?$=TAbm})8rxg-NB48~L#e6v$gU#~vF^<_HE5!S_ zOm#3Oj?}>G)-3q|+al-(TDNekjEhi;fonRSb#22L>k5#*&Z-{gZdQs5h+!E+>lVLZ z$h!I;gRUh*JG!LE8fH$a`#cUd9Blk#$gcz;+WHbsu(kJpZUCagOPOAq2K;cnAcoy5 z)LNBJ@hEz@=+(zCt1lj#T{s;Hf|sbXd&qq$^~Elc>d&>w>XLCky18J4+)Pg@&$*6W zgs(3ubMYMyN4h!(BriZ zeN%eSh<;^^3gk_bDMI(O#w>n)!ny7s+{0m4G8*4LUNsnC(Eec9GI^u@5I`pKC5Z!k z&2&1FSvsqzbTRKh!v0fd+@0mAs*%^$9V=XLUqp<6bmk+$bA0Vt9H{H9?JOaHb>3ts zf6G-Kw!3@@r18|+Lv8~0{Bn~}&i6{WK)>6@*Wa@WV>`Im5>(*iu1Nm(9-O2x)$e+TvuL32BUM zKFO1%-j_s@t^TEBc{?MyO?MDd;0EL#KSVZ9$fJ4xZYj!SFwrXZO{Qb0OtWfmB~t3f5R)tZQBz3`!*bm8Qcz&TLuwvi^Y@hcFYYS3{R$1 z!Az3Jyf}{IoY3i^_aSiu^KXgs&7&R>K_?@LNBg-vC2woiVYKHM3hRQsX8fzjVa?{D zf{p~U(dCtkoj3Ep`ke18V+4I`!>(ezHu9$pLOxhL+R<6h^Df#tjemCRtoX@4`mHtD z+ynvoUeTXGduY=lJSt}~`+DpnMqz+3!>}Xwi1QA!s*^U)qA7PppWos_M)H*beDDP5 zsoKNM8OuifFb6i1Ok{OG`+X%aLiEKqU1)p|(7oG&cqb*<(0hIO^|j#oaxh%ocs*ou z)V`kqmjXU$SB~Sgic*GiTHBk4@wW%3#>y+b#94p58SA0^mPGv2|^|)1&Yu?Y~vX08RVm&&4 ze1KM;ZRpB6?vMx>{=>#7IcfvP_7#Xj)x3EKH@7Hnn7dto(?VyjsH%Ktev5AJ7}Y@H zym?r(2k>K|xEY|Asx{A30#c>bu!TS)$+l;yn@DyHe@lz{)`~S&Gny|GRF~+iH;SC3 ze*Z%$UewxU5$D&__BxtFh{Ea}NI|vR?ItX}lQgtLY^rVXh%Vaegt}19*MtF?;1rBg_9W`NIrW{aLzLf?u>*-5R6!l{_{e z+SQH|HoKB9aiTU~XUH5=bsq_XhpjQPTm&9ZS2x^pmlAr%{HeFQrJ1jWxJ!l!#>m0m zvSQ~cVc^7mD4;Gzry_hB{k2UQ1$J9W$@TOj+cwTqjWEIIu8Oh=Q<=dZBxwV48)G1` z78)lEeY!^Pip=hhi};f5mj*Ze=2N){Q#d{ax4rGQc76WgrhWb(OO05;bR% zIw>MS!%|b*UcCH^exPrHJo`MPu`o!L!gkqpi?d=l9V|&c-yI?0PQ8A2ryD8+qE|VN zP5{;G+dUHzx+}Z+_M>)lk41)=>a6X#uod6{3Hv>MQ)w}%ZGXF@HQP6E4tt>(tdj6r zc>Pv$0B^YYc@U8NP2$QYF;7b?ecQ3`;Yz`IJSbO$>r|sGpy_MfnC^8u>!KfTt1!Ft z>6BQRdL2qa&h8S_M!r;X)jRK8=wx+3n+l%Sa-T&0$_8uOO*eUQa~6{EGe#j`+Sjth z8zu?}{xVcMQcTG9Lfc1#12-jH>rYKgi6i=rqO_xes(6C81;A)c{ zL45|~hTavts+T;yKd%dm*ZNT8qI+r-v*r5!SA+A8A?+N*_3$9W{IX5C9R%(GXso6q z0L4Ajos5x-&uIePdZzM&Jm2sFPwnyARj^%O6VmGNzCz!mUz$1(i&L;k5^rQ>x(HU@&wc1 zeK*LnMvqAyL-xZB%IUQxBvAqmhSo~MXdI0$tZe)lu(PBuY6UY+AU)mv9@6zg4;O!(eLv>fOHz~p7i2*10Bxro14M$FQLBu@x%6$hVz#Wxvu<1pI+USycg3s)$V>T z)cuxe0sp4}%;N!V6n)+4tltHTf#gR*($|*}d0J$Mvx2 zbzUm^q8Ni}_7Rm}VT$8a$P`;LC5DAZd<)aybK5t-ysIO7~aL^27!^sm2j9}CmyS#^Rn?yj+tif38Bj}E20J{=UtNLQh0EbDlMizZt@ZEWQq-Qxhx?H6WD&h>JpJ<72M!;1NG0AhPG>1 zfNkg#?E#>CVzrPwyb7}s^Qo>wbOxQ9ozp?Dk_JsJMVU~5twz7OB;K+M+E_BWGo7f} z^}@EC@QB@HkQ4?u3vU?qQySZ-k8kh`{S!rD1s1;9etR%Olxo(! z{~?r=+kMGXS&aKzj2kWzYXzYbJHdwg#Ch9!3VQiZ<-42XsG|WIeXha$lF>ciOke$Q zlp4SYY4pDGPO{WaW+>$9BIFwfK@tJ;lq!_Iu=D!!9PsObRZo6YZEfkeFEbDQX?Z(zX3O!ckuldR=6Y)AlWYPIEqz;MuY7VlQmPbNJA$~^ zk>7uC{Fv?>mA#McgruZ>Acht5WcEyq{Dk@*Ovf|jv5u3tSgna?dzjtt5b zomVVJ{7G3tLktm_6O1FTv+Z4Z-_EKGk7!fZ42)j5a7NH9hX) zy1Vb&qTA!CEL$4{9=jxNYcUGy&hct;ch=+D;UvDTf4Xfxt1@^HA+@hBJ2zE-=6P`t z)qGdL;|O!0u;X&*$Cv5qzq$IdOne5WSeR>eiCnq?eq2&Dt*WzZ63Y5edG&bXSm1)| zEMGo5F{I8FSwK|Q-K58jh3DBNt1u^NQ2A0XmvFNfJ|`;onRQQy&C%;{2f6~0&ZjJ9 zOGRaZNt{8{U7d4E*Pr@1!b*~;@p6xPsZHrul776bJK>lTzaEqibk?fd4eTm}^xPQ> zt@TVYMvE<*GZ-9Z8DxGwTZ0#h4BL51!Vn8$u34I*CCuGzq%!<&ySm)=V5zEnB{!=k zMbE2U7i2w|5O3u$v!4AGh_?=j)aII0H+`KscA3>GpE*Vn+kiBmmC6BJIq`>$M_pK) zR)${6XpD^qWAOtbA@$Ld#zK)6beGUIMPulIPmUS&6eZ=>E2))}c2)~)wff%5fM)lU zdFC_eQykgoBb4B5IQ74kZgJbm;6Ecb>ltb`xOo1_g?kib(m^{(Ome=|({UG=86CVU z@5g=qsc}nl&=;2SoEAm_)n*b7TSs+5!g(fU3&(7p+SfV9M+}IX%fi~iraAM%+5I?O zFSpn)Sg{n&j=@-LuM9?{#K{Hr0}Nbxkis~~zT(izp?XP*h-6bKGhrb{uM?*@Y?0t) zN8@B((Td&J_vWbLiS^Ni!IDztmS7o+y6O7O@O` zabIMiIR7;f5jz@lM3flVknsf$9g20GRJbQ$eLLRtH3Nnj{7oDekRt7u@p+v3byiBrXU^S6PdK4X*D4F0hS*jlD^p_-`8BO~sKu|-8c z7~NKo00VijDZ_)QI8oYp`jeq1{aTH%pQSDLiElrS{JYWmwD5`Gdywl*-PC-4Dk{V# zgoI$G+s`j%qSfJ!HEO*ojzv8TE%}#iY%=+)w{<8#Q=|5nzE22YPWY{wFOGi;=QDl# zZ${do`P%`TiA4(nYHZ>czz7)sSYy4ouMt65G87Kifh$^=?O#u@;3R$7hjUTu9=y&k zz3|wG>ej(VmiY{SQI)zDiRvSjO60wm`F-gUzKSL4vL6!JZ$@l^iY1#XVds2H3m3>_eW0vGy?m3Wq^_(`V~F`bc`ud=t>V zf?qH?z@Mn95$Ar!{fV6y8PEWe4D;NLL6l=EC_e2b=EW!ybr>qj~Y>pAUs=Acqzw&n=q;+>uo~BiUK*(}mP`?p&mCq421seMJ<-$t$KVS7zc#S;Tv8oz;vf`z@ zrK5fJA|KUzjsnK2uI|=`nuiYlIA2Ox8SM}Ee-C5vmN5Qg)Ms3a8~+BG7}-=ryhHxE z!kR`H2d~_l(h#aFmMa!a;*T0afeaMIgQrtEq=bu7tuZjd}<_L{JTf-x79ptOExKS zs#tUGVlY*xM-aY2vN`3Es{MVQgjl5+B^7+q1ZVV5%;&~AOV)6D!v1ew+y8i#zk^0U z#xKXqv3$Xy`sZV5aN<_4p{hM! zS=>Y*RH2juM|AHK@~o2cpSkM^<)lx8zQVV?xuDt!+*2n7l6qEE8}ZLlE;>M& zfMB6eehrgUw5v+rD1^tfjJ;KA{^dGbgj7o*X97;)DOjhn^sylgUb2zR~MlwSg zo@tpflBciXnAc5F%7uK1DfL@{XO^rnF!z6bZYe(f)$TZ9?dDu|K5Y4Sobqb}{2y@P`y^oxT;;nVL$TsTVO zfthB{!#L$*}inxa2P zk?js!CnEnVJKu&PR_M<)3vrOE4}6r*49eyGV=HWL9qAMD|JFdSNBJ99Se}4>;m>X2 zo$s7sp0qRPUGRg!X>DKFpdpLcwHyCK0?u^3nk3veg4nO%Jj>5qtzbzR_$x3?&5|oE z@+5`04Yj4$&=l^owrKC?mWXY5 z$Apq6sk$eRmG`7@EVJb2m@TH7_J=@4#oJXy##`SW<%3uM#ryt0oBRLyQ)=PdK22IN zC+0Lj>tOI+uH;R1sKk{4PGGUVOttQex=$$-&3mk5kvfJBb;5@`D)4q%GGgEI)f%0s zi1Mp+i*U53m3g_syL2V+(aJF@2t{RYChi2~gkV=Xxg91wZOKP1H%2f)oO|Mwz3ml! z>4%=>vbVY5CqGgCw+6mACf|jdN|KHN_|N1o32yyGW`6NBe9Eg*?5ph(}yzoAL4uyqT8D<}_MjeYC z&6pM3YYQkCW|9FF#V@Bn0<)3YC7&56g!qaP6JPt%15N|n)XG$fpMf~(T^v=KZ*i5- zEUvslL1p~iCt1obe^qr+Bv=HsECsy#{J*(YC?dOR6~pT_ByKw9Djzxy*?cFHQAW3ybO{EDutPK^vkWgtLSMtg=ZBVL0(d!qE>&m13YV$%KC&dn@2`~%lB zcc0i#c*KO&4Bl(er&M9`ZWd%?+=I(8={bnK5V}FEe|Mbt@4vT_`=d%lcQo030R+HV zDwkBR{}S+F{%TfmVcD5VDmFS=pR9K-5%`QMVethy-DV;n5jpB{ZYPc-UHHcQ6)uti z&Rw*tavo;9@|p)?D1d_IHc>3^A`QrO5*g7?>rOML4*WqcErF-67I@B*){diU1n3~g zq8URO>A0%MowlH1C?{0K!n^XSr!n|$NIQA&Cbp|^yiI*u;%}qF;Hn8(y|Hz-eaOAO zJZT41)M1b@nv!yQZJ7Uk9%?wMH}?olaoVj!2lCreYNq*uy4m8M9ChSrAVl)J@vxta zpk?z3agIe?=*e&8I^nRJML{6jA;XETv;HmsQ0cm#<3Eyhou21|*fe%?O!H%o%g*5O zG7*dMzn_FS%?C<1qlWzxKT&`cU&U1)RxYCC7~D)5{{e8Qh)i#G2$+AN@v?2&Xtkuq znV@2>AVnssTPohhKa@)se3RM5`bR6RUBUlQA0NmlI0eLOiGQN*>E!!`JsxA6lPv!x z?o8;ZkLT(6GPR8wcyl7_5GBi~ie)KeUT=njUH(pA1G#+cR9>W-(K11sAwVQpk>OPI z%P_!9flC(?(dNl+_>1V`j_`E(VfP?f>YWut%P`{i;HdvWqEwOiZnM8G&$!6|!?#TP zuYf`#>#|fbep3e^FI^8?wsLvou(j%P)Yds+IWCFwUM)C9xTUd-$ea*4%^5-z; z*2Am-HeaDREKKaHdnto>ReIWsz>Iec7fT+~4;5*k22g*6um>3UXGaO0v;2O>(+sXB z*=XWosSk+FL#^_yRFBKlsD=iggu4Y9*~kP5FWOw1s6W^?m7gT84e8GT1X;Z&o38~l z{ayKTi;pzuAZjusW=co`qC^h4G%=)Zl8ardD|Mn}x**M--1C4;)L*Y8`?;t$Zqcbw zV!U|v?CDc))Mtr2X5ZZ%HG3)}U3N6MRe7RvhuEmZLgG$B%HHrmPQuAKc%Is%%yAE9 z(Q^(AXVS(~hz93}Pm7f@HdY5uS}l5rpd9Vb40JB%)X&m{+*GPEzMJF%-&h)|=+yZU z@#q%?6WkZ5$Gif5cV!cy7oZ2M+;(oHTDC?f*a`P^<8ibpAFZFYTdB$3&k!_H)w26q zA+nqbd;Xe__^OTIc~3O@-_1eEz!=6}|LGV-%SM;dbEC#O>$bHD<3Scazs0|ww8!&- z*Hi+~u21#{Ylo5FBqbd084?jV|hl&O5WJKcI1#vm7D&6OTb zb;^3+STv&cE~(7-TweSF-;=xt@L^6)lURzQ&e0u3bCkD5qDtFh6 z@z#sG@%V!l@fuaC9OF4GT*6@*rlKK%tdMb^UoSn5sxHyemQ4|r-PZtea_4T7Lk{E|~E^=gv6i|?l@rkN}?iiwQ z?yjF?mq(;K*&2nH8gc1HS_&!4(w|eI*Wp~}1!w%Jm&n0@y&;8<|P*I zf|7Y?d%+|Olmnhu{d$&45NOIb;C(afuSZ!rjbO%8ohfK-C&NzEJ9U zp3@XsuvZtpsc|gS(s0!HTiqq)!g!xGN)o74?N_Zh44**^y7SFB1OuTT@0Rn>@Ej8yrGs9O$x-&XhZX{kySy)P$}6xv z=iwg2PvT|Cv)&vK26WvXXL&Y>yaw+50eZXo?DEVv8b&-tmhsqY2b=NWYSEJCR$8zCs~^hTrLmuuwFpu!Bmh5$DM}5k$%e& zr@_Vnia+Dg6|D7{S(iPH&;mY#(TpzR!(_yit_n>cM z7a^jUdkI?)M@WE##m_C0amc+eUKDsi)A7FD zCFUHgs(Ej#@^1(4(qd;cR_nqd!~{ktCTS%2%}TtiggO2XPiNuR^xwVzkNOddP!Xh& z?(P}_0s_+A4blxG1}fd%F%_gnNY?<79^KuH&M{)Z@b~tDd)(!~m3Tp!wOcaeSqouxc*x{j_4__$0V+=VZ9xl^AeauH#Shg0@PJW%osN>0_k zX6<^JGl8FWZ-!{d1G^%GHT}~!m?tsf_-27B$9=Ia?Xs5eQYhW{Mh*WM$9S5%!3Yv1 zP}nuF$L501yTSB<2ee*5}C=5xpd@U zoiM~v6s?>Zrg-yUeKb`_oLKCmGar(g>mU2tYs7x=py4q-PmNV5`S#Ilr;h;1Q&T#* za$D>T{@FIvNU>>ig6Y`*iU`KVno1C|g;#>mCNwhRI8HakdFDFmMd$G4i3ct*So zKE>r1N`VJl#%iGP(2T9y@AmgRayAW4#x$QU^Up}LToZYz`n99R_B|-IXFR^Wnvu>r zGmHxS!8>mB%yf^!Gg}1x^QNWm){1*; zhrVUivEjVOTYc8qBIDZe&!zjTdcu*@e)Kv%q`LmS~F?>R#lHb9EiSFxT4lyS-9R=xw3(d?H7+4>Kg2HKdyMC`VK0HE(yu&{k6!kIj-QbHV zqir!fe|2nhko0Pb{DryCdWRvyvMU>kDvOxS^ZMj^lGG*h0H2tlC%<8?I(#TQ)An{j zzyNy-Tf1oc{K9)dkYnh=edQPPSzoX>KLO}8jOE8^DS-~?FxDbvGq3aal_kN#6xmf= z@>16?hds1@VK|uah&8P3Am%Lnw)=2z(}P0`M`v}k)=g&LC>Zk)w>6EJOv2_f#^YC# zzY-J_Yc16swY6Vqo5`Y?0kDcYq;ta%ru!Afds`$GTU@R5+u`OlLm{V_))AGgoPCKp z^G>3nqZWa5Svs}|^?i!7DP4~)Jv7&ZT#T!~%h+EFFeH;)-wJdGK6)w35Yu|SW!9oZ zO}py=YjC#no~ufiXm2p_C>6ovWT%sLZfXc*`~RW&(>Ul@yCw?U^O4V#v>N76d;8D7 z;}>`_N@N2q_cuwhW;aeM-Jk!mygMy2X2QW|%iwAwRj*C*vRcmc5U}1$64|!Mgn*-` z)E%4f4|(x@PF&k-)xvq1-dbAC%a8cLJcT{IrPCG)elr;6;nFQGk7ZI~F<}SUx0JnIzihhnC`;qP)qx%~K zo$BH3swO6dCKq7P#|L1GzvJ>=(HNc+YETd9VoIR_Lv*p!A%W|gQWb%oNfqaG)FQz2 zDg3V3J)-40Q6_6om-48}%8)i5)u)R!(0y7AS{DgXw~{SLm3l!ms@N${7Da<-l2k6b zpQS>^`)2&jFIr0doOk1qFseABHwbkTa#>PvLW$^Og^?mtUzSHSs$%g7L=m+~ITw7V zpPhqag>#(9P?y?ky@=#JzmDYYd|2ZJ?4Ubt-x6HyiA7=uw|M_)HCvPR=nR4iK9Icq zjSD{QaSY^1TtrS;F4?vP7zI&P`jPbk>SI^kq@`%xCmB~W}oOb7m{+Ik@0 z$JFd%v97_K?aI{3kS4u;!H*7rmmEDZ&En&NOJobYkAawybI&e%FYVg2I0;tc)cl|j z9%MzuIF4E?vwg0YKusFvjYrw`vUOr?shr*Z;$Cor4?=g!k_oDXSG-<Fgw(lJC$XR4p-kOa21FJdJQAt_RJ&mppc?XyoBXYN2Da2DR`iEJ>jraAy8yT!Mr79>^PtQv_>~!Q zPidYBvJ8bBC4)vF4Xp|z>MZC&pp{!a=!EHEmiM((9zVGMpThT*|M9AC?D5hi=z6|! zgt6yqU~+dCm}Fkd`=aAHcXNdQ_Mu=EJVr|V58~0>Q{_z2i4V74St92l5NjhVV?MQ> z;zE_|%ps=r{28KmOP8s}nvdIWx8(Uy+o#UnKtAr!i|uz>bS!zK)OgB@_29?iY;9B{ z!LZ#zbow&$`BB|xfsosa8)!L=J^zXX=sF>HNVK{!UJ-M4>x6LA6{~%Rcj)!$(3_&DNmo`CjL~4y#?R72La zsA%B2)!CJY%XSLQz23(p&8?W>=MDkop}+RRUsw)i@;WykiBb+`$R`<*#W+d z{!39zt=pda&0*b9JeEBzsoZ@gO7I_5NTFwOP@-)j5|t*P@}-cmmCvYGf2FoK5MOb2 zHK=Fpd_qW^{e&=$gyv#z>OHP*_X(sc;B2GMD1WT6SsB{aSLx`%nB@xJR2xrXyy5ILy>wpYA=<)T~lA|r?#HK`&c{qAHV8ToZc@8De8wyR|oV|Xgg=Q zt!kVUk^=pk=?Q7j-XXf#}y|mt5A-6xklPLD z&vdD#;>E9wGW$Mhy{5SqFkX-qSpMKTae#m{Wn|BGl_}1ka(dBuDeywpr~e-` zSD{_<;M4lXYRq`XdljXjEPj4@iX_sMrnTuJR`lYpy)Xf>y869!9i<@Vh4K%{_ik*4 z$TC$Z4Yx@usv*zOlh2OlN3p$Mr)O5;YJ(p+c-bdgHX^L%F?!OCDHTkpJ(%jgL|+#Zm<1m9>Ty}iw65R z73WRDiLX+W+1)x?3VpiAcmB?n`$IZ7LW_4=Qd3}CJ?m5(-tHk4|Nq?r_yoWxS8;_| z3B7s=`@cOpFl%=C>21=f4dB|F7k^4&MQv`J1nU)mLu8+`Qwd$@w!`Dgx5gjwe4@lm zfcXwD^+k~1pV(c8jhyd$aC}@+3O&nYqWM{BVsF)3LZI=|fIuVZm zZ4Ib@pQ!JX-SVJv$z7AI|WE8jq!Npu1O=8T-V$LRj za-;1k)26t0C2W;R+rvSx>86;m%=oN3y6DP!CxbcvLc^YI17-o8$!HgQ`0l##rGVS* zPxx3LbSq2QPmtHRd9s3^tBBKv!(bKQ^_q9OHxN?`I)0w3uLKvra4Cx=uVnTR6(!nH zWQOEaE#9qjZ@igP@t4V*VYX`A<4eo-ridhFnp%L{$xM9rO{Vxs+|TJN8A}FDu6Qz8 zC53IikcjZf5-v4vDO6Vt7S4$zg93OGQ8v@8CKBX19%T5%#z)F|M2+UjhOz5G;|j`8 z#D&2lK^fVky0X#wW2R?+E|)KeV}Ze=b(r#lzb}5xn{G&Y0R#j;DLNzv*Hp52{CW;~ zXUCymcG`P@`b+MOOg}`>=20H%xG+HARRG$=&if8d0*UG8m3-{diF3Xwj%7S++~_jI zewi(;e}x&!60D9kSVf9MBm)5Gd<7mcMLA7l0An;6INY^A{I$qnDvvHD!(P-k4bXQ; zoxROb4O;}{ZT2*W;~1HMPIU`IQ-EgS5c5oX0NA+6EL5FIc&1W!2A5i7TC^VFQ|ao9 zxw}83-Sv(5487M^+-hW~M)tr+H}D&HJn%;t%z%mbZPnK(pJVfCy|Pi?aX;>@#(4tv#AxxA^)CKr~udQI=OgA9>-2i>#wQe0|-0&sFZVxOCfC?o&4?k zJJJ}NGEfBdL}+kLsbY?wo~g+Ybb5$`bC?e(Fz#ewNuh{{jN zaqP?nRL`8?RY?_ofb)JwI;>E$XR6YP))asSv&0wLYS8^z3Gk2bJ;=OgVraY8!OuY% zgw8{a(>@?xm!gGUe$e$E$`Tk95Rx=cMn4!BVgmUei90mTH=1MJ_2KmVFDsutXIt3# zc-vJ1NGM)&fh>xCd;<-kQ>H=pnsOpgLak*aI4hi>%a0RUpq>DN*o5^fQ>*ml0D0)FvkrK`2sen5;saAE}Zk?VdBcu?Ucazk1=G|)LkIAyB z2A^QxU)xihCW3nu9%VUo^HnNE6LataWQw?^v(IXArR|T+DiOA*~_3_3ph(9A%CuWUia0HG)7dl0y{KNe>#B%JSSPvm407W zA$)k1BXw$}fj^ws1<_O47oy(-{n{%L+h0Zi-7s+JtV%CW->3z+qL^F45lpYB8Yy%} z?h+(=jLmjefIef*{!h`~pQf=BFE@eOMjc~WcQNO{d>(dpFu??S2`hk%a2%iA#ZUm_ zxgo)NH|WwB1obFzkDA)|fTBC*!gUwkXI$iMAReFoXF`AeoEh&v+f1>!3G-RX^-YYV zMd+~U&rubUX_#S)5r{C+YhavPE1HgRn8ye>Lc^mzEMEyLO8iiJT)R{#xGSLl%ee37 zC{l^=(ykKb(%Y6jtKb=fQM4P~-Wvs4(jWGf(+moIU$B>tAh|vPtWb9Ev~lCab#IzI zPD{@ZqCAC~FD_)d$af8@f3SzKfFn638v=f!)?(Ka3Wn89;(Qjp30q`^skV=jPCG;_ zGRWj9=dH!ls)F^}mf(|pFw2`k?|L`)q{7sfY@V+dOd9flE?$%||JhSx-!1_O=VH)d zotk}FF%yop|Iv7MF$o_&3s`wpdSJCZk#0LXk6eh?xMdRd5`aZ3^Wtb*_HYhLIrPN* z$<(j8OUZ4w*D6_KCCXH@iKx#L7L3dXCQ;U2TMCx)WeM-)-#J%7{tiUdYc3X>4FmVK zt>W_&of`JcRY10;5_dHKoS0efvKWBux0$LAHSJSx-ss`u&%$#_$MoD#K{))4O8e$faleOg zB&=;8q!S~=S0Dtf7G8U2-9t>n83#bW@g^={K7AmIH9Cy5c`q>dK>@QH#{nE$xYe_e zC&+}gXx7V$~PC)0bZFlCVXr!vM2ZT<(lkH;<}dN&1b{Por-*Cs?$fu zSLr28!>Qjrk+QwA$%90|@ns|1w;(tx#kRU_uKQQxlW%q*9$kW~zXy)_j)QLNvW+;~ zR`Lw9lmApTlx(vvlL=bHh}^9BWD#4-!AZ!|v&JuA3_Z1khn!Eu&`YxyFZSdmyFkB| zG6fBeTQ{-mF`D?#Wo8C18L>O#4pg-eSds94^IlKyARmv|8UR|{X+NCTJoE}c%n3!x z6z4J8<>osvZwVj%S5&QBC@cW<1rMJ8=nKyN=|8|grfEb6M9vBvhU+wJ^Nx(4yu+9K z53LtEkFv&X=j}}i=8qLdawo~8IZVE5_WSq)J|IJpEhSy&rG+ghp(qcg*Ov%MU{g9z zuBeVkj-#0BtV-Hr!lM#Eb>68>)Rv*_-izKMWSV>O&!xR{?gGS97)G4JDSDF0lzO%~ z)yw3P=Km2YSbzG@u5;&V@Z%DacciJ0xFo^H1I0qvjNWiAy*Oh*cPASzLyf2H z{b{cInS@8oeQ zbH54Q8X2JkYvdI`Ugp7Jy~J$ItW? z1PyVdnzQiT@9-r*%4f!u+H$sB(4-IbKmZKj{>-Jps2qK_K89cX_7~+KPx!I@m8;|( zn!Id=U?@85#|}AAY$o$XD;}cPhftiPDRvXhKhAA1TVl|xxti@c0@PoP)+k6;(jyK$ z5Vss30ESdNga#r#0Oj?Wj$I`k7`D;0>cMf9V>%D34FmJ9ILvSyLLlE38ybi!<;497 zX8p;1@rU^@L8wyVp(n|p*GBh1mpKJ+!1~`X3>rz%SgcIS1JqwvyPXjbq?)w~1*E5r zN6>%OS$_$7-=mfQ(Dq{y1@!fQ^;xefMZZc9Um0;=xAYiThAT$@BUj>=`B^@TezdybCf9yFSU7tdX}B zvzhpF9?#!2E=~QnHLu0<-(T`H)a0uG;E*Nfzr;woh_^AD^$YfNr|iP=F*>HTc}3r?(IfJR zF#sE^UjECRwRJn(%1;v0rULLI?PTkybRL zwjJu(qLx229~Q%M1E|=J9LU-s4qaO;5^D!2L_9u=E0RUBcD@rAvB&Z;i6Y-)bjQe0 z@J=@NE{Qu;H_*mQQAK5v*ULfsBGc**<4nUe?!NLvnw9X{!s1*HiTxiekJ%s*qW3RO;gxzu!{lAV1vBD$zUUKW^Q>?5RCnJgkjku=H0C%$FK6*rE? z+jI@G(bbL+t%sQnVPfDjE12iN+2I5|1005RT`hlTSu#2DXQIw z#?*rQ-xx^+J{O{k-GBY?TMvtjuT?QNAMrWe6Unrx=PSZkalIxlX_r+bB%_?no?Xc+ zEJuy}eoe|9F~QZZ0}`!0N}2F;0Eud~XUjF;y^r5xif{fEjUV{@TYV~Tsp&-G1L}8V z*0sh3NVU7Mqz~%l1+cf|ie!?nUa~&#O07+zNG5opA&30OMN)CFyP{=oVhqajxzfccTxJvuVJ9Fg|*(BmhzN%C^>C zDRp&4p;~nJ%JSl8($b*uT*=+fmt*Fpm6#;#=~c9(*xt=!z( zq4Py9T~iEB21yQ5URUb@=x;50>R_6-z4eVj`QUaQ0`UvKi)%HBkiT!qvB;Dg$LLl* z!Q32KdEn`ktH*CrA*)s=_{m=Q)__YOe|la}jL81x17HOX0gqA2cN;xZZ?m{b1%`m~ zWoFayjXf}D%DO>>gKg4TOFKz16?l?iZkv51AA31JpX0Gdv-McN1RGI?p4!fVu?=~2 zATOJ?>5&}T&<~|RvP@hv;8=G@)jx1eoAqM8^62hh;qOGDajqaC@0@|g&LNdws-hNk zo7#XE#SUE>DD=S{>WSe$3ihai{}s>MpX2;j0eU+{`!#R7DDqTMw#R=GSC!qX%asON z)MMdb8e_sJHFI1YM)}D1=m&w7I1^oNyI1l;Gj3)s0Q)>mI)IV8qQOl1o$?Rh|Ap$QUoj-u#c{uXKB zs-Brb45J4~g+;B~aO|?}_+?fGUUP-{wLq~YDETn(RAUJeT-UX~MCNU{%Vcd!GHh(E zVNg~~*i*OQ)LK=(9L>92MEE;Ze`PPBbzG4x+!*C= zFkv1$%>?JgC5`A+j0h*iFY7K-(0f<~S1X&pcrYx%N*mLk$<)d0wg6i4z||#>Tw9b| zXU6gKSlt#`57;v@2Kv z-**Pw50Rn|!`d3TwqO8o$654XKFDoFws3@a$pTMz0tK|j+eV(Y7XdhK#fXzU|4t;fY-|sJ^I8Kz<>7;xYXmuU>JooEZ_B}`l6Z=9wq;|~Ym5UY zsDn)NB3+~l*c-9$FXeH}P&e)0pD5MVthscCAUN=Cm)ndNbm|3sBuybIkS8Y$#?yM+C&kZU&H(8KxdpL`nVt{Mqv6vWqgSq$( zierDb%sFm~-;7#cfDalK=9&&1@5M)`w%fP(vE4v|uYpKoCY{PJ(3>;!i>n%!?AO$- zzsVwfO+kon zzjHqZkwPn>uoAJS^qc%z`&BDLuU~x9tAk^s1&Q?v2|A(0>M?G^IAI|c5NA0yHw3&% zR}rwuMnK~mvO_!R{&HwcH4C9bE}ts3^cOE{4d7+pru!3Wn@HCQuotX2$eG@n>_aimcUpa*Gdv<8OWrpF=QI9La z0+8Y1gaydmH(kcq6SI>N@s~qA+U@tH_2*%z_u*Wnrb*Qyz}=&raBA!%o;0INiaM56 z^K|S278v(zH{5jLc#kRW1Nd7vd{OkZ1!LX2Kl)4G*u=qZ&h*r;jHeGj;$6f^Am`l; zKNKT|9U6o_ypw^4ST06%*!u7&F1n1A4~9I^9Q=blBkO$QQB`YGGzHuUwytN4By;QO zH$$ra>8;=gw5OEA2S)-fa6bA9Jwd#U=|J11j~7c2Hjks-@Y!bjtpu*X=Of`hTLSgQ z{;^X|V?f}zJ%@*28yVXm87si8JxB77#M!#PMVAPh?a9*(eO%rBXd!JJfhn_>%LLW} zdH#bJtYv98@5h4@r@nB;l4iG@OBuBGJzVfWT9W$RW;R$SnZaYv;^SM+M#L8b7{Yvd zqh3@hX%-Ff=l6c#FN?WJFS~`WR{IZ1>z@}*+MYSvggfyWS_WwRlCjSMm56>{1GQXK zDU?-so_Y>cJ$#JbnRwui7_C$h_9Lj7x92$cYUjz2p}OL_ze=d;$5G5_n!}`=30R>r znHG4b(hoJ~=S)p`yg?V6Fprpi$W7RYL=iBOaQ7thh1~5ByHz4|V#{i+_j7jY2;vF2 zZr!v7>sC<=ySiz8wT=(j7=A?8p-tUsyYlhKlYN3nrQRT zSP=wtQ@G!Qy6K0oe4j$;>pWpacW4aiW;G{7Xh?#|V8)f=KQqYv`>FB&^svRmzWorR z`wqN&J!2Oh^;wg$liu1h{9DwOKs!n6&b)sE2gksp;5LrS<#?uI?8WSS+y098@iW%? zP4n@K3eJ`kvnw1gA}(o?K#u1!0=Tz=`*Yo7)k}fLXEt&#qNkO{GAvxZ&*_~i2U_^M z{GH$x~-%2Z?S}#0;Q| z!B1slxL&{dlw!ZjzY|x+O!5Gh9qpux@2`!4$D5>Jg(0uk@7!qQfUf5)W%pXhOPu{d z077Nscsh#C~|ZO(eT{X_bB7s+9+$eip8qPnJ;LcEY7 zXGb1fFqJ?23X`u#lbX=y74_mth`ER1sa)T%?Bb(Y^>~r*%$OMD_1`Haww|W{)bN31 z%_aX9PE(w*#l5F1^_Jag$qpilAg_vwrVNdo{2MA?4u{&OjO?`QkeH?Wh6s;*r)(XO zjjELFt9`BeN`zf%M4eNS?aKWW(Jy$qYFOd|z#E$!Lw4}(b(W;2z3k(F`o*(!p8=sq z_*KWpvE%k(FyC$l3>Yxs95j0+-&xQ=3B?oO;HCUK60% z9Y5=Eo(V^;F`V^g@_)dI0XyW{$=qR1Y(n4B9?n--Xv!gZY+_zDgp-gstZ|LiVdLMVxy8aIk=xTN#syaT4x7>c2DH$EhOsoI~h*00tJqDviC8=sd>~Rrp zTWi@06TGv3Ui99nC^$V`;z#Ocrf3_2#wYL823{n^u}e>Jj5+2;ydFPBeKfNEZg`$= zcutpGeOt@!i>MUelp+GivUqEnMhUVxYDhaWq<~5uDmg8k*G1O1ru^l<|FFL6TqHcu z8758$GI$ZkQVAykznlrEGthifHxBT^)g{rIX`WM+)*?D@Yda`lABNKD9n2K-VAOL4 z)2Rx+Q>voZEWN55n=L5h=u6Sn&wWJ{lJllzf#uH*nJRM0e90QF**ZU-1MEp+)hvSO zQUEw;JU-7k|wA>49=JFlGtm8hX{)@#}J$TuRO5qWz3t6BFa4>PLX*u7>){ zs)(}5j?KWuBd4ynMYi!?Lx(d^XTWW|tS4ivLoC(aQx^7TXX2Z;8YRXJo$W}N5`P6Y z{ptG6NeHL2!kl4YzNPC8RT!*nIj|ujGO^Zg3=hikocwQn#jJC7tmE|A!)vYZYJ!O3Z^SVH zlT?0-$aU-bdJ?;>HZ|a)onh6>TO~h^l&9Md;+kit^Y-m5o3^+xGwR+g(VB4!Ge+Kr zG9nyjfUEp6XRnzU-RZe_)i0u#a5500;Qcm4Tc;gw5R94n0`xM>&OFty~fC>_H!U3V#u8^rU{nNv)R=kp!G>ANc+tOGdgqWKW- zgP{aEgYxL-OjN>7;NA21iDJ`2Ffr%tK+Kg}oW9G_b)j(!navkGS zX(%z5%^u7i7jNC+ITUDaZoh{x^*A{DicdQ<{jc!{)<_ft;7dM_(!n}_SX%c>JYB=| z^!L-&)ZVce)m)eZXW^^u$CfqBYvx{X;d>Trs0#~jV#@f~G=g5ti(g7i=$-|c!N${M z_ouwa@PWJSj6ad)4k><@1}luM7h6nKBRK&c?e@4kWDsv=zJI-1^Sm7^d%h{bEw4}H z_D8D7e!uK(ajB{;Xlu&Qrl(_ZfpYL3->QNxRYV@Cm&%Vki2jpbyDOI&s-v!2W}q^X z=+DVN!i3({rL;~r_?SS#bGAhCBTIk>?}b>jqTO_IKorr%CQw#LMC_W*5OJc>GfP-UnnEm1LW=8t`_1gp_ViL7!{^wC; zn#V?xBQhD7F-xKR>!s8WG$K4V^9eMXoXPuU(uwQZYeSLHy&~L@09{G+q~-KSCZOJV=V6`|a@l7_fl_qs=V&c7k0ysXMdt#7Oop3)IfcBIl^BM=#0Wm4K_ zD3prOo{ab0s+h`Z96zwDKm5@z{)*~8T@cD>oVQdd{)vF{d5gOi6Y699-XtMTCE`1~ z8wb-EyB#S{FU#W7h5 zxhj&!I$|ffiTGAI5QLPCO*eP`adS66&pgB{_nt0D zT7vBLNSk&>BnO<%J{hI!rPkf37-l&0k}Sey>4ac!Oq;&2;E(TEe_b1WP~R|L(S&@m zuOJj@KfD%cyZlil{qr-UMrsyA<+l|@z& z9n@h8BQA^Hp?xN|?Sn0hFpLoj!r55OfAlw)p^dfsZE+5W9mTp?H>nGG1=}-7hCKA& zgoaTmNPkLCw(3Ge<>u}nU(+|*_b7djqD1Al1-coz1RlRBK>c<5Mc-K*ix|xOpW1<> z`=yg8Pu*N&H&&KtZh=1{A`WGx1+brgb{quCQeL!Cv}{%T9UQ?%-1if_97Hq*L+v`XkXp%LZFc*<5u4 z_TjmwX|hSRLI}g9UXrCXw@e zc(Jn}{{~7SA(E0DbkL1n5os#YSAau@{oSm8!}9d%Meb#Lv8PLSq?i-~Pk@kTg@DoF zysUV9945cmb~S;9Z|G8TFuq)!XJk~bM^S}>eVNGX25CZGX*+9-Pq3eEa%N^S1OnD> z8}C7WXM%+hxIJ+vagCo3tQun3-}=6dx%lSi<&dq65ch3AKiaNJ`mgi>JW-hC0bI-hEdPIiE@-eCbj)pE|E`}LQU#&U&q z^u}zerUVxZ?ET4sE-%=v5FJC}AZHgFSMD@ElJ9}{tN)|1cN}_|5~=E62BA}Kx7Xd` zw%Z}dx0q@m%zoS_;6DAuq5nSB&dr*o@f~vmKD)$f{Z_@ZeD|hV(!o;QaF|F$$ompk5xWwD5nOJUctpuiMNpv#jEDWJC@^ z@Z7_PlEwcnuK#48p#ZX8;$_XQE{%6T;;~L3C~1XmIY<~|3#3w{(qK?eG##P)xkJ|8 zNJ?Ld6bMrhh!SBmJ}2ziooRmWU4|{H&keX*vMkTvN{ol=eXk1bEB~1$lgX<6Ty3?d ze}?eAsCWqLNO^*e2~x4jF~3gyZ4=UH&LFQk;Y*Pd-O|*En^ya@y7f-vS_X7)#(gIo zoe=<(XFP&yK=Qw>z0t6~Q z0PA0siHh%M&sZISppGxHTcNrje(YUU!_r-Gf;tOz){K$gmtD>WKa#E4ek2dWS$aQe zA$vmI*ecf%<@2SP=e1FngMcx)^H$uie_Dcs!^jOwSIt|STHZ@@3}W>a=T>C`9!F=+|)k0YquQzg_XT&@M&dWXzi$w1-SyEDp! zR6pl*^Hr#dN>1b-y2OfQ4o!1S60{oo@L>i6S)Po%*&kOivJtDF)z#( z!*bv1ed_bx1A>tn-#N;HNO&0APwoRN!|EaSkvH`;-2;|netV&xaYjHG=9MoiA2AjS zE%T*Ahv03`)93qS<)z}{xR7fMfeo;;BHH*g1&E7E>f7|f4oizaXD^z?m1F`mdHTMD z1)Rz>RUr^%*#tTu_z!zRsu~i@f)Rd~`QpWlroD`-1uc)F1G7*bw0(8-jM3cbGcL<= zT_3V9e|L>>Q1`Ijx#25Y;^XR$Ii;2|{ z_mYrj2%*5vKp>bKPbb@PQs3Ln!LCplYCY?8a4ao}h4&3+H_QU_;tKq(huWP(YY|1t z*Ok8s&K0U?yd77&A0Jx@7wOZnj#h5T%C5XCGRH4c*tlLF3-In>y^eYC`jwHCjn@vu zVRai|G#%?mRENR9AIh3g2=BXc+T(9i>f2AvaOVcN?;q-Lo!Re^gcC1NAg$d3DN5FM zcOo1GK6v73Oj#l`sz~Xk3YE!bbNOu%mk$i**)S)ixI$W$zuY|BokfI(@2B{A?avkj zIQa~;oEE^@Q+{(3{f0H~ZYmP4EPNRXU)S2N_ct9pnXlF+TF1d>6r0CKd{S#aHHqpWtt)lg-EljWgQtyQ(hFRQ6CK(_VO8$6 z!*R_&XtQi6^w^F%VZ2Fk$im$Jnw6)#@0O(h+96=V;eiZ2-l)UA`_kb*i-I3dP2=B) z)oswlTQ*Q!_}J$cVM3kWA2CU3o<4q-`zqVKh*k1x>!)- z^H(VYDb&^2KMkk=NK%D+-$v0d#Yx0;7?6Io6oB(S3^Bq!6{m4ekw1R}MQy6fO)%Jd z$papY>qwbW)BW=c3b!}DIFh`v&-tc#lufOoCT z@jQ-oB0a~gddLfOZEayggqe4!$g7ONJt;TilsG1-2@M!jNtZeY?5!Q#KXplg=%u&! z+r)Gi07L8b`PiQt;)Dl?|3}6B%QO#CUPm;@;!072(b}1_U$ zl<$#lj|i(=rQs$2r2=&h1ia+ea*Al&Zbbc`f#50KuU}UkHx~lAGtMq|84|j<<0e2# z*eF8`;%v|wvykJxekT$&=T=Pn+uv$3*h*F$gyF~*sydh`M6MXP@6~4358A_ejs*@4 zw`+xOYW?k2t;hX|0G#Cqv?hSFls=&7JQ8k?B>Z9>s;F&yy#V)p_Cca4?~1f{PUh9K zWy4ci#Bcqj^$VmB4iWMPFDtA$F51o|%O4+yk>t<%w`l=`DR0FFewiQ=;D0hjm${|w z6H&C2+pup9`&{$y@YzZzz_Ju{jN4sq{ig3Rlx1@Y6*aEEr9C+D2bkHyWehJedg``V*$@#(q`zfI#Y z>44En(h9z(ll>k+aqL@j?nTMT#k_xA@_3sRGHzioc6xJssv^<$2$@2S#08|ShCMwh*p@M5wpiYW}H_zH#&UKvtXJ1k2leWq`A5#o;hAN zL{rofz)|3PThH81wDnVfAN~G1@T2E1JE$`HyYx13GSv>HZuiYDp{#MR)A|#dzTyA` z85Q`Ota|@iU4`a9wfncPFYC#@yLvtr|Ki|$(emJkxKH))q83hX?ew&2MUz|-w6iMz zUu0%iqEsGL%k?Uqv4ZcDZ^eOe+LG=Ou)x#@T!JAKFpBltVj(1rRd*fr%|O86Onoth zQ*?cBfK%|hnu}Nip>j!I40;>;ep<03C%)FrfG6c0ksYaSn4#2oNeF7UU;8J&X}sOf zG~HIRX5Lkgi6y_Urq*h4!l?6J9={a%Glu>`wo1f|d#S0|m#yRq>x6IDV~h;n^7k7P%dum^v<YQIMx;!S4LE!cE9Ee%K0^ZVM{s4Ykm=uG!vXg_9}woV2slTs^fx+F5fFyevIS@mqRo zl|$uRJ-xQrS;2z?`TpMEb|NnPP7CX6bieTDn-pI|O7>tSO#MIVpe51Z_)+2C8BL*O zDBu&M7gIx~DJ%#XkpgL`FvanVXHx=sk({Qs^_xPnIo%hz*X5+h+K6 zjQ2!@$4WT5&4wT+$PQo*UQ$q-6wOEGxA{$gG!@<2zgGd1n6*)`_7rpitn|H-~TeyoLm|K_0n#{qL~+7fVF z^z^$h1Mk+WDN$2K(kVJR9F^<9oisYitn*$9p(Z2o5)*41sT4oT@md5f;7<}07hwPS zp6r3b$MH>u7OB)~2?e(cI~SJyLpBFK0R4zZEm9#(@TH>Sd}iMYe=bN&Q^tFN^ln4X zW2CdPaSplucPo$v3!$Jd;p-u|IU19X(cI1ktj8j(invcU7n&RcNJhSPk5Y-bIQPni zKQTGbQMX5Rl)gGt_81wzwy@cKT5<=({s%W@jkob7XO}jt+d!q+z^Q2?msgpZzv6_~gB{#A zLRIDu-T6CNZg_NqB@}@n>N+pM#`(9rODd{I>IT4ft%3_a^gSu>QjG*rXYYAd)> z5KVM8-2&Yv+SatCtob0Sn%=-GYjc&Gug@z#`tI6kYl*9LobyYI7*Zxc-{TJ3RAzxdfHOoZ{(kdLy|Np9)9BJ50*frQ%m_;>rfPI9rB`*spZH7SqkHXExK%BOjl}p z0zYbePuG|BH)6cmHO45loaqzlwidKAb3Gn7PBSz@!GTc~6|KeFELL%nL;?9QO-w;* z2-x>{)?EAMWpxEO=4z`2is-k#`7&M3S8*Ohl{+{7_E`XMw80l+Xr*`F=}m>J(HwF* z?``Pfn0)0Lo1c8=!bSS;qN0x55Fd89nPvK!eMDl*vnFZhS906{1Ceac|6a+}P+2K469M*W3ooHr9F_ zA9brZ+cw?oL2fu-hKHO>d^6Mn`QmpL$1{4)T-(uWDez3%_Z7wXXbo@)lP~=XHfu$ z1yJna#8;~>W8bTGS+P;&Q$`kEEHf|HzS6ABl`}2{P@CwgBsp{xnKp?g_rR1~yd++) zpRimQM4%W&+Bvxl!ApN;9h{TctBb8qVjjDhdh~At=1)M9^4f>;AHjqU`MS3Qk@Y;g z7>;uRJ)*x-J*TqX-;pp6Q0YmUFo-MhOUQ6y{PIV`@xOLXmCk+tk;r-xivJ(HdTaN> zEc)6+qJ<JxYF0_MVM*6$lRM7xJo9es0N zG8CMRwezeTxC=|X!{Wa7-93}+YF0`{h<4g#ooI$5Lh_3CLc8VKM9jf}c~zJ&>%b#6 z;OhIL$LtHd4~?oQjss_C*`b9Lxt5}(DRo)#GdW5}(h4Ib?Qe=3l-Yd{I+s_NLL2&8)j$bEW`mgo0Tj|W8UCg?2dzw|GE-e&*eyuNW%6{EPaSlTI~G*Nd|c3msLL|Gf2$ZOp&d(sB3 zvZ{Y<_7Y%|C?ayqh?XX)TG&L~8anIEYR7;ug#MMn5FD?XN=x4bJ~eYCG8Zwoi-QJ; z)2gnR)IdK=IzUwn?ubHv;ndK+xc73ieCnH}cz4-=kS}RDn~p?NJc_PH1cY9uw676v z>(l19ZcuJjgXcekr6!H%lUn)|5|$m%Qb32rJzDK|Q)v0gR+(O`8`jLUWFXN~ zxl9YZ4G&iD-cgMZ7lQA)oIyuI4&n(h0E3Bjx513U#QT#8bquWVPxI~n42#n;tnE0 zS&BwXf+AW;^2f76?$E|ix*=s*%!2Ef)4Ei?mx1oVmaK|jpZ4PsxR0KteNz#R(1CT* zRB)BKCTu8}B2+;hAD`f2O{D(@K2B7v|Du51A(JHCy9$aSW$^#?494cz_Dg=e=T~t1 zBryqRReq zOPQ2X{Oe(lm#kbS9#bqh^F(cZXjAgvgnoA?9J>VF8FZt(2XlJ#v-IO@m&&~p2L*O* za0cGc21k+oqGF{Me7VkYI5tzO?7sa-Yka|JZFqI}qv4^EcZ3~-|0RThk#h*ME>V#h zVYHpJN`0|mUQIOrdhL=y7t`k{blr(%=WpbJ>G;A)D-Pujnkf~rvk0x2U0KOeZV3e{ zDvUYJBm>KQyH&BXS1XXH7e-N@%%=w!{7&pkY24;oGK9yzTf?!bQ)bhY2`2wq_dD*i zJdIW$NrTjhUA+%!%%VQmQ|h3H0)i6t)ahUI=4VB#T_efchJhqSzCC-^rRTu>*wd2A zhUqPzvLv-ptVF`Gp3FSlAk}(hGNZO34Nui43Q#{TX0K~wX2U8i&xX9LYCS}ojk|gH z&jtY@!yxL(p(n@r0@%l+pYPS5&+x^n;pgeVz`rwlon%qX@NY{By;vLj6009>x&lb% zyL!XfR*x3Wgrvp2vUX*>0JD_PYxuqx(;VtQqbT$2IX@6| zNQYEEo59(yO*N!1iZykyg&WpXt-@Xs-ky&O4zkK7ys(VPvv-tbHM&P5c;DoV*{za{ z@ti5cG25}I{BCyuCPYg!_wO97F#U~e>g=30!Ck_+Jorg*LB+v~8o*66+dvcQKJ z<#y;jX#v#H^V!N>s&8HI*6H(;E%`*3y6L0sYv+0?z~>I5J1MI`I8)W%$y%)l{&b@8 zvRK2nm$%HH=anj~?sQmP%>9ULwbGLPRi%^RGi+E>2Dxz>sU`MW;*d3uSEE^ig7i_k zT912}4jbb!THb5D0BNu%3?hYdluKHu3&tL=w6qZQTB!3}In>O%u6mFBYOoy+x~w7g zWv0qQVxBXkmoHSU%1pHXZDOs%mN3g;k-RBI{9WgRd(C`KG7_r)C|OxHoBf-7@-9G`5Suk#1;T(W|FK11hL-2*tXTaKsEXQ9?=(lwuY+8-YY4ungJ9)$~gFjWEvE+uqK9)`c# zpYmGlWbb%KdeyjwYD~U#sxngn5)q~(RtMAtIOnnX0(&%(0Jr_f+d5xo(YP}Kn($rhO?$(C4xXAO`A!_XM&kyKL@ zRyUGo3@L8w<(UVR#dVOA#_!W&-t37Tx>;uAl_xKL4+2uS;u5T2Yt~G9sATg7ibvtK z#(L0}swPIZ=ksqbhQGR$e?>#-Lp=k2-UP& z*Xo7w?{zL!#n1cGcvpHe4GaBwk#tmf>43g`F>VyT`IS}r@Mmd6QLrFn`ZSs--87V9 zFpD54yoPJecT%|p!IB3W3cBjMQ(jieGt(D{QmndxUUFG0jo(&iI%D0Th z;wWPvieK{i>f)TJsw*gaWwxd|gzu05=SVJ%`73|uF#krjKfyLmNn#H24j zXPhNxfBnYWgY7Iy7c({6TjR&! z>E4g_AEDb_{a(UXkVKrd9#!Vm9R5Bzrww|BK#j8Wt5r;ns{t)w+Jb>g*bD$O;jS7; za5mpWz9a@0yvPNl#h;pu9XRH{E%;t1h`{*7XoS_VkDTRy4x1uRL_ zDZp{_-J`###!#gHW)4$nO#7z8Y;@H~(a}6}Z005`TN@oj&gfa$^(9TKeqfd>}fjR~Nct zG*RV@)fl^i6>0cb!!O(@R&_E%*_+zi%}+si-$oc>Wv`=hww-N_PHk!{d(Ax0XjbJ_ zYd3py8G=sZgwAjH1Kd667J>L{b4!vO;uMTu@Q{$)gLEFrzTg)()*M&EP(6001=rOR zySc}QYkl{1pZ>yoLG^}Qz(ys8tM+eAcSw$!!W678@d5c{#{Qq%JS{0K7;l87LW;C` zOS;(JD3QOM_pG_SEDf6R*f%0iK$%9!Qd{5)KB|uP{`T}ksx#FZZ~6#Mky`b1i89w= zK)TQP)oSnWu6Y;v?FiGcm`%5k;@Aa&`cu+z=t_O98NokmpjeAjgtJ*df5~pN$ac{} z{N(Dbv)>zTM_)|~yQ!kE&2gs64ni;636qPygzHn=#MHAyzHMdj{BE?p7uRhIx$u%* z%j{F#t^;}&p5sRBT>V!ZksC;LwdxQ2JAGKVA58plhv2nQIfUzwHkUJh7XA zQi3PDdUOLoFXao*pdpN$&8UnW0|%~?f*o$aelc-4nun91zUJxmL-4+^3JUj7tHgCv zlPF1Gk;QJU*qjY_eIU`13W|Q+sJA=XId>-H0G+JGVZ ziWJ5z2&!4#?j}$*9k0cbRsSKL7B_7skCSH?IX@rIsQJC~0kg$3ogft!ozs&>X5!Fz z_DzsKIW7jk`f&z<0guOG_tkcYWXWgpG@I#2Pbt*z4DBTfy9d1j8ZkO5#|47@f5bby zX9HL6CL4YdsdlvYeffFx?76?Y8p&#Y2yYJ%SGq^h2vMO^t-ZCnIqUeKA7Gr?6}Akz zy#XBo8>}Q^^YY%m;dgnd?nRrGo&x23Gu=%GGsI{m@kI*P0S3g@qyTGSrB`HV5xC|a z3!S*xbSWZxwN3o*KH=X6TMjKUN5*N&eSEnc-j4%~UOF5G$`_St=N6t_ArxTeem6z&1;YQU5k5zgxygJgKWdqkfU%Jb@-`1=%Y z04j)%lurA;X5E4=@;z1|Bu$dm)dux!&=~j2OmtU=u^J<3K!qR#ylI9l(|CSwYr5*) zMYU2)DB!rN0ditIv#qbIsIrldzu`WK%?bIEZLa$D-H#^bdXtD@W%74)uUNlRyp!pV z%>C+s?i+Uj&X!!v z){U1Adwq4q{8;T;nTdw;UmIV`)Oy&7`m{H_wOx7 zt=ak=b+h=iDlmk3o(22~oh#Ie=zrm(9rW3=M31lJiST0Y?PEAMi81DFW(l6AkyOU8 zSWiH0rWY~d49I0jR13P)Ogh>I6R?I&PNr+ZlFAy&>pJ^MGK z^vh3VDb-MG59q#7p~!!N4}~7Sc@yT2@B!^ztNs!pH^ZmKzvw1(sL(vW;GWfyUThBt zr?B0tYlZEs=x8gEHFLl;yPd9^7H4r9}GRVoAz3jf0S!=UutWFQ?357X)F<_2*5HgZlWEoLgf8n z;^q%;XItN_gnwVR^Daj69{-(ePkPZmIy?=^@}n_5{*GfK8ZZhvZ0oF>Z4PgWnm!-j z-8XplH!rui3d;A1qO18umb3dbAF`k{qQRuN5LAK_&Y}1hh?gX4UTzmUXyAk#eWt7= zKn)d@+@padYQ45isB(}r}G(hi>vhpeuY7u$`A>fcRw zHu;)ODUBZOPsteSdQuokWe*+?B-t9@QjNjL;FrFkWqU6UIZX^^(a1AJHw}&I3M7ei zK6GjTka+QZS1Vt>;h9_ZXIQ`zmH(vG@~ReGJizOQw`_9p=%rvgFaGu=KD*iRzq=o` zVd_gHDT4}g9yy+O93RjW5VdhKd2&)yc;V2nN(vtK=hPi8nsB}@wbfxF5~Tg8L~6Fp z46%xzed0PW6F6H;Xp^mnl6v+JM^9h};OPA+(T3OPYA(havKuzu5lB6+dxRlj@IlWK zpn-O+ z^D~`B?3GaSC$E%p&XwxqhCFHLR1lXcbG|w29>s!fL0RuUWDeM`YJ~i@(T=;c84eYm z|E8{OaP|Z0-ot?I8`@n;Y@F`A%=760>VF?s4}1O*6Bo(!N^qyfre~ zxjm*+*kxp^08J46MA(2%MuhWs8ECA(%I z0t%x+%Z&S=t3uvaIu9}_zm}67cOA0=^>h|IbB_H+HMX~8otL_WUJ-QNP!VDm<9gM( zW%16))x(OBrbf|fE<3|;^u1WompY-pQlj5_{;?XeC#EK!-R~G7j-X|o)&9VVLN9-R z7Sf;oQMzf9)1ORSg3FcTT*V@eX6x-DAHDr5s2Vc+(c$-zOkJ}^Lw+`n;2a>#QU`-U zU<~lY1$jJ{av}2DcRy=}cX`wfPJhqd1bmZoQ-v)LtjX7Z1kyB#+_FAhkoGW062)C7@4nW~c_^?4mX0pVZfOoP$l(&H1-@DAQHH|j-Rh$a<~;+4iy zI1Z@AQCC{)eEA95(l5&jU!H7v?Po2}WZ17oOgH zw}BhxE30jc4`C7`cYDysXWtVwdF`~!cY|5c_MB-9BC~J*QTgA>BA#IS zc(%!!uJLVJ-)uIO4b+uqR?iq;Bg%{Xw7pPxKDeB-RaU)DS!?p@*U~l+PD5Q3UF&S- z?5Adn&0{}j%Jr#aDCv3LygR$Vpx{%!qe*>(Z8?2J-q0i;3D!O9;U`T4wg+iEs`#u$ z=)^C3t$5WoqwhtX_!UHn{6C-C6jePQ9^&iDw~6{)u(SU~SF=Xlxm3S4j{QqQnpJ7Y zc3xsr{6|sU(Z+Xw)DO}nXc^vV00HgffO8| zosEe~7V3x@+Nf?^k(HU>AA_aSd;##DqWyEt@84OagLJ6IvXCb_N6VjOdRmmV&m)zo zK*vRtuX47i~{wpvsKd?kPP>q(+VsR%LwECMm(EF>yd`ZY8!=Ntm)qDWPgbXh)GAYE?LA} ztKVVH6YU*y9qS$cZc92j%mtc+KggWGQmfZ9+RpHd@h2fgtj0-ja#y8L$*WDZ#qxT* zI)0WX%B>0Gr6(Fg_xi2haJb#m4D3qug%my5pRF9eg8**#Q*eA#_uiUWhrC6 z5i{Apd|m%a0si+Z(;gnfc0jqnrd3Mzqvagfe0}ikzg|*yOgmC-tKFy~kFUKh_c}Z_ zT~FR@I?wI%483W59?hmro{VSp5?!j<&dHk*diqe6eilya$4%J<5_#z8QctpJvpxjS zffZ0@kwr&^5qk8}QL2%ySyNUi{e|l><2(WAVGhDBnnccM4G=fq;A?5&?2AXT{?n73 z0lI3}h~&YMhuz`d9=2=Xo9nS4=yYPE3F~8Xob_1Vozq|k)+NKyGI{Jhk55)RY4uNR z)3&DhAG78c25@ILULZ%Jiqh|s(7U!}ac5mrw|spW{jOK?fzO<8SYLqg_#;e#FVg)a znrJd6y{5~)b<21FL8E1OANL;?#sBLg`agWg9NvZ%-pVm=L}IDU1*C!^6FXG@^_8$g z9tzgD*ue5=PTgnbBs$B>>6FFNKkV-JYKwqYW^fD3^XGO7c4>*8ezIu+#1*iOSIV&7 zv2?_MB`p8q8-o_;B7z8nW`Ps&0o=TcUZ$@PSpt0LsDW&<*^6I9sxL4RHO7*k3J52| z70`y)E(r`J^8D?gKZ_razLX*V#f4i<%WBXcxt_~%Fems9@oOLP^Dae^wCZG*xh5kr zViS$Xm@HrlG<#@-Jq`qoNjxwY)Dqj6cAd-IRK4bSpvKPD)Ah_~&3c|WkLeL*At2w% zyI@IH2AMPC!QSX$fBpB0`S+swKm5f0hMkx`_Bfm*0#0z%{{30uJTw8V&z+3Y+ig!U zs_ddCl)`$EbV6~PLsdVm!iFc` zdPACeGbSM3B?7@T>)0j{c{s?|=U=&hkEme!U4SL1;AA9v1kbOK(?pQZQDudOD=?mL3#m;6Ge7<^*Y)EtsPXoF(v_;ejf~#)_=1DbG7VkynWi-Ij2)%c;<<|{79B__S1*KawG;(d#L_oTAt;AP_$PS*d8{|X>6ls?h< zh&_N)`Fw{cenwd<_nM(55w~g1+U2Riyi!=7KXdS)m62N3Fko_$3{`$)h&n^ z<1}E>;+Dz24fQ6_x4N$wajGs|jma)0n-+G$kCeWCwe#-iX$Wy7*$-C17^YA&-%%ei z#`oe{Rh=}5qUzVNU3WB*Hl%18J`+vP7)>?O(z``$(w>EKAg@9x*g;*PA??5SWB)&@ z#eY_0nJ66qd`mpEVc8`r0)THre}Qku{{Y`KYm6s!-@&JduPGYcqMy@Jt6@zIsIIlX z2%@(ndP4Yyj8*1qsRS#2Z)VC3b5>KKbhswf=2e6gS?Evvj9eBX3zKb1Sq#YSp;M6X`)@iT-Ogt5pAy=GHo!z(h54Ky!7WZ$LeP;Nn6>xNYq zqns7QX|7Z>x1}v1o6_z-|CJ^9pEdZuY!Lo;&$3THTz0Oui+8DJVgGhblb{)YP3@Io zdSXVdYXfN7F4`$Y6uXwHpXE4I`HK$5TXCqC(Y`CgZP(FQJ#Y@ezs`se6pbK@DvV^I z0SV)o|6uzOgVfp1=4LJut_CuX1+^YOERqL7N;$5*Xyl0RVgG+CpZ{48|79(iVBX&e zFETgMmbd<=V$D!8jw(0G+rtvygKCmztXXdkOqXP3(rmX`0uJA2;XT1TeD?|@7MIU3 zIBxb1VJ+F4_l2U7m@bvt`fF)yNt`6%hY~OL(H$;lnWKoi?O2gR;jSg&`f;wldf$a@ z$n3vLpKO=Yo1fU~p2y0lUmqN(r+V#7Nu8*F;Gzw!cxn zdeNl!zW?CLXNtCiEg?~d*d*@K7o%*%(w zDf5Qo2wq>}P+$F_V?6kG%F92m(GAqy*!WQ zo)3>TdY>VN;{EIGhhJODi__axZh_VEQ?p3x#n*J-i$|-2@rcJXgauHlQxBlq^A1R* z?75nF5$UYx5;|6^0SULsm!`v;m# z+^^pGZm4AzBV10Rb3LqdJv2eqF@N$d_>9B*)Ki}hPW8uT0G&kqW3?X!G@YtdLYDKCDfO`stA8CzmKTrrLL__uqG zkW@_OeFLPBn(0+rnc7Sm%qpY_cZ5*zE#lug+bPXjy^HQXD7E+8o+!0uR80KnOC{ER z^~O}8%4(=Q+(=tzSC4OSs#)N2yq_?usub@3eem!k%P{Mx&kI5&n{UEqn z#;Y`G&%~8u=vM+b3p$o0Pk^jCge)1(I^fIU+SNAhnkdqr4@rKbTbi-71I>G>3+z`tWT!si=pMQev9e zb}wc?)B=Ynjm@4F#vu@S)ev=yj6WI}NNi$d&mfqBnziFmP<`*3klUJ`y zBE~SyOPJxK6!X))-*xV%EGb8qyGm&ZV9WhQZyUIlBd8NV=IXrFaiM zHPsSGPQ>056E`@3a)BAbnkU!11b8J|$sJnGEfO#{Jx{D`4+4q#VeB!Lj1$UFQYHt<$ZuCv#wE%%YAKB!$g4lXufT`vAe;A-lZ!$Zn!?kfjh0Nn@|G~A!u5rsl;Ye%dv5hy1)g*tao$7~hEpZ8 zR<*H~I@xIwxpHIT@z~*g0RjgW?yO-GFi$SW+=A1op2Utl$3Qx03I7u5el$2@JkTkN zx1SrYX0KA}U}GlU)Dd@E$j%PVx=Jd5J{Op^dJX=Y9@p-B1E~`Fxt>$4+{+pxW51>j zgnx&F&fJJySW{hBy9oxK;Ov<`q4LqMHm~+5#?A0edao(bB_m z3$gR0WtZ+lf?$wY(>tvzi}Mt6waOpO`K+J%CZSAmr6w(7w4^ zcABrfeO1EYy~Sgs{Sx1~@y7s<wn*1m6r`$n*5(rvqn z4`-)3)tZ?|0hik6O7m{dq|^YRp|I6-=BD59_qEh%sYo;7?9s{0;3=_0$cFfloOQPB zv;mX>+$qthgX7)hs4cYgfbgchX`~S*!8DeA#M&W=TK$N#V`u!KDy*Im|Jt_>8kq_* zzQwJUmP*n>L8cA5>{>RxW;-IZbo(#3>_p+rVNl`v;-b!EfUHP>JK51;zJrQ$ii9*h7yU!A9e zW5-YjMP47Z1b8Q3c0E*kn8f~jrs=9Pwx-`Gz{u(*k-J&ttfCr&P8D%)N#ugYK@3vq zhC+BO2RV}Mkn|Ip{2vcQ*dK7VUVN13nN;hUxA}(3UC;P!I;)r@TCF8gdO8DPtK6F_ z>P9FbH%4K}MGjuS@SkVN8-DH}+GD+SJ{f4F#wQFb;`15x*%#uY@wJbxZ$KTXx)61E z%$;4gqvrI}iXTl*lcqtWwEyVlL>6pW#=^#r9=Lt6XK+y|IGDi0?CRusEG-uY<&@?dIwIZporZ0p_q;xsch1;6sSjo2a%NHVt zIa`gO>%xdqAKzAMXZc7{=!4{BF32cq3c9Xj;eTrD^vLXwnKQl6dXzV!f$>Ry{sUI| zYKcidt3VyCX%Rcxj4hA#DsWcKtiaZ}IkW6luHp;9Z0PH|nR3|FBK|}U1?bp0$MMkV z8h$iq*CD({u=J@6PUH1+U0D5gyS5yq-0WpeD!DmH_Ctv)J&tQf<;s}*G-@7b%#}Dt zFlUX#BIEt2PPRc*9LAu4uV7$MA2SSDX3tIZD@i^tMoJ-Hbdc9L+gq zTiDfYl~P3<70X+YRpD^@1!v(c4X^b&7Bg%x`b!56-4Apgwdh?W93o7GxcJ;U_SrH9 zWPj%xawQke-+lL%nX>><0LE;eXUL`z?T*~d$H~0XbeMFOg7*sev)+HzfxohrWlpS- zRBV#%0Q#zFaDP%1>T1F)MVy0(EX3zTDwFl3x7?}9=t$Tos$fw@!d;h%+Nk~buQW3d z@|>b4dU(Uuj|~Lp$_mvJ{r#f@MXX$BDHH z6P}aO7L&sf`@Vdw$UuasHJW$#MRIOCLm`&P&Wg!wt~|Ms?+>dVqXji>j&v5uo=}nn z{RUTSR&v%Ce8w=bt`KtVLkeE+up0(cd;_%cgHTuz#+%a$a}!`~F<|vur~0Q67SKVc^S+_?T4>RFblIV#X&#R81^p zjQeko1}Mw*R&u&RdM$|W8RHFIBb$K0yd9wMuUX%7F;26kf?kv~U3t_w>eW|{d5#Rv zw;B+%_yAF&2VB|-Kqouz!xkx+rxXlx=8SJ@ab4WK{YFX~c8FPKayH<+pA+W3whv3x z-}4d=e*WRv&HNT_6UWiHNZ{L|x6if0IQ6V^;!t7aN_+tn;2avYw*dN^p6sA`o&Jwz zX$wRZtLD21O?$$rjZ zn{dkLXc+X(UIGD<-7;%Mx1ZF1!0c$}Y#;#hxqq^1_xxP7#{iYjUFuJ~WGRfo)Yo()JAps&@xee}3CLAjrRi z)}kzBK#TPp_~)GDW8o9N_F4r_y{j=@bNB37Q}0X5&<`ek1!`Zzr|$igiPcjs97L|$ z^7v;-d0hMz#M#Iybl`bl4LNq&rPmG+bIsQ4elLf}0rbe|P%-V<{>_!`I}HkbMvs~L zJnBy#C}_bMPVQMUb+UEERJBCo{7jGUy`++(i(MTz;mrTdYo4cG7&|^J#HU zV5HRDea1-%D@WUE9(YOd!RAbh=l6S-~q@(e1}hxa9KUiCKb>3<}ibJ2Ch{ zYe(PRTM;#%-HC#ymiJChI+nt)eNU>#D>P<>Au+GMF?!s&&XA_OlQxz|bmFrN_oynO z^G62|R>gt}J_s?uk7GfQAbCpaJ2z{Z;_p3%(r=P}VggZtuKo|)ZU8vyI z{~3BSqJ6{4Mj1nmp=e{Nc$xp^&AU6qWTIOp_#?yDR$}+8#2|%&TX$ll#H#9kOhjvo z$7o6%XSEUri7&rZ_l!_W4{u!=Bl1gAqRNR42i381)*X!6Y4(2tt~%Qy*in+CuW!7*=?AklOmxZeHnzYKg| z>Qg@)K)T?(ddp>Yn_!|O;!9nr8vs#kC2AcAe2MH3=#b$)Sdw=0i11}06x7^|`CG>< zezgkN(-O+AGWPAA(>SQl9sze(k;OW*ToL!VHZrYNVjNKlRXmAde|J7x`Ru;>BUIv| zqmNxUrg^6+?VF0roOryUjI;E9S@6U2!#q`Ny4~_hrAxGa-E~X6i$@)?H3T`9FVB5B zz~(+6dqiGi{9CwWrMD{*A9tXD&zyu_8e=!&0CBFmZEJaNB~mclG}k<@6$dzL395!r za`E+t*JV#o03hzU^fkXl=%iLuJ)c^#{T5y2(+gxR7s{-DIQKJeoqx*}7iSS25{YF} z&c5W(+|;W%^TuMphsR>z9#f}MYSNF@LctcIWOLsOp=oPgrI^5H>q)WN4pvFLy1Yyk zHU_X-hx3Ek6%XP564s>sDo?uYDq-s}gQKgXXr627&?HMrfA<+*U1t+}n+Ny_G)RR? zcMJVl2to;AY;HseMVyd&QBYSjzK1uRFVGEetaR%2I`jE!;P6}tG>yZzXe;B@8PfZ5 ze`*`u_6C1qS*5&O_vjchBjI0i{Vj~FL!b)89f_O*O!i>Mn&5SUyu{EhfaN|;$Ss}P zWYS^@!T(*2_5gTMun8Dk9hrPK3ZC00w{z&*8MZ#5Xr7bZ{TgJz~p?&QxjC`M3M}ln3cUlIW95 zkp$YDx>1%ZZYIdd%9l&TzGFJpJ?DLl`tZ9h_x=IPF(}sYxwzW{>IENkc8PJxSk3!4 zS#$Tc6hxZ7?;2XKe}HTr=CUdC>dX06&Vo@1fM#^@_|mFubACJS{f>9@P5H-EdffP% zGa3DFoC+;(nZ@h;TW|VAFVWtrHQ4=3RLyx1J?IV67u7JIHgs%0=rzOHn#{D{IpRkS8b@y! z;rJTPtO;@LG|F43Si*uYV;Tl(8(H@+J}akrT|{Z$$PIVJqS(_4**C0inPILgV?S2m zf(UA_<$B(XyUd(w=eEsZ{u-a%ni*NKt}^;@$c~2(*2C#=cl>lz!ve6yF<0|em5^Rj z_r9^GYN;}@sy&m$@$j~5!3XXG)T?&ch?=4rZZ?_L!)G^rBWK8D8v4Z70=Aa!#X}Jr z0fItW4B3=$wsAFi{+Qo~#L^Q_PUy%|M|ZcA&nCe_-N_dC{p^)h81Ji39g@$80_FJ~ z622=CDgmS@g6|s3ep7CQP(QZc~&coGcc^Qt66-1|G`(;E#D?~sq02l8Kbi=;~>Z~I`@jV%%eh55O5=lGbtW5xxMRaWg(FU@?< zKYA%05rGEyMeH~m&FRT($8&>|WTTJE>GNz?a5F>iQSeY>QwWF05wL}>`S!tD8#`iB zb51_3vzARng>vWH26dcHSkH>626{;It_hkbl~zu%TI3MxCwvGcBTFMWzy6TU^?W+s z@yI-$|8){))*APwLEz9$|G{XYOSyt=B#ETnk%i(8Y<##ig#Q_1S9tl$l0rMqX%Fb9 zH5j;>pDpRZ%B#?JIsjIbk$T^~CgqjWw14w}qSa3Os$3{3tdWNy`7N2CipzU|Z2G(&0T$e8N?|4T_k#LphSC@T# zVeG?I8D{4P{}?Gw_E7F zIzN)J)nN=$q==E%4k5?H89V4+>XUJLb^W}SPTL@Iu87eiNz-KI)l5#;{B`ufx^njH zw@^uHdpumE;h!R!3M}Kf?c~=|Xf?fg87`&jQQvO^$T6^*NXAz1?XF83Rij%CQ^4c< ze{Q6Wi=t#g#ZTF&7hDYKCc!KXXw3D+a$$(GHPFLZGe8X$XBTi~L+rC_1-l*-IAjq_ zv2N5Qoi^j&Ok!HnPZJ-LmcKT2@8o!iLqIn1OkZB=STe;4-MpVYsR?QAXfQjj{~&9p z^15rWs<^nC>#WWlGUqBrKB>I)XG%XW6wsBKKgwSzU7{@_;y4G2tk5ob?;osUuEWLO znV#xLJ?YQrt;Y5}cYkwG-&}eU;ka++kj;-%`d*l87>WFLdDl8yp;%l(WKcTpZW>J? zRJ>lhvl(_uO>{AWhW__q*uHKV>F%S1q??#7-ms zyl%9a?l1Q<58iq`>ky->J~i>XniTbmtf;y|aJXmr>4L?V^CRA9zOu==8icdK;73Mc z%Tyn~&6fTb-}Bp;(jf8@#zBHta|R@+$uC8fWdm$CA{0OUK&fPtvIXPepGvYA&8Kg} zh(#~H^nb}(u?4AJ)UiPGfoJSRc=NF`ui68|q3FXNkcuY@tf1m?Px=ES$?iTn&sh9s zVw|Kt286CZ?mbeSb-i*(J&kmDv61DPuOeihb*cHMV0r4(I?esM`!RJ>9S=uZSQA)N zyoil1xlAq!)EQ4$@gTSefgreOf&0;N{na5=hVpY`%(jkIINJR%^Ssb$D+BxeWhE_x z^B=orbOyDjhlJ#II|Q?xU^RUhaW5$Agt&U>>}fEkgHb_9jIcFYBhOsIZE8oz?N6z5 z)&o3Nh8{`PEQByc?aG}zVhU~jALBpp#C;5f71uJ-^PSqr_kHwoVBf`8A?AAx*A`QM z?yT43`zO!CDLkpg;%%F(yW6oQaj;s38g-Jx8I{`3K&MIeVPMpZ&aZ_dmG58;uHQs4 zKca0Bky-4f&lqYV#tXwsw=xIBk64$g*{Y4GnN8g~b)M>_UoWUii0wAnRLV)+=cIUo z7D_7mT(Vn8+|BDQD$dQ8%FD@tY||vmep!3EF*U2@?D{@q>1(idJQ{Q>+V8qh6==Ow z>Rc^Y%2BECZFTEMB-mww*AsmUBzL0vIJ&y}_v(VwiAGfL+f%zuAxTiWNzyp;TKyiYx}+r)z$8Yi$06 z72NLLB)(!I3NkL;k4v2zrsZ*70inihsUsEDBrCUyvJR33VRwUH*CZHLxrKUC1cQ$z znRK(J3T~S_7C0IMwV!5H{1W7PVC;G#=}AZM#)!7wEl!4oBZORF)&O=ne%g7rc5!g^ zzRM=eJIOrN@{`d`IB1oT$MMETeQ9@R&9QF9!ymk>OR{Kw0XvQzSBq>uL-Fi5Z%U{8 zq+;X%(#|qZ`nZv?v6ysEM0S&VILCL&4aFq(#BbeSNTdafz(>(j&a?K%&FgR32Ac_+ zsv1}W2CU(nE_tcL%emjA_l1Ue;|7UT>rhcOqa%utRZloBp9yI_U0d6~j&K3ag zqYvgJe9p>(64@DP>*$GS8YzMiHdEHlb{cpL{Xr$ufRdBMxT?2C}SE=%PZfdLa^GbyD!;VbpBJsv82Y5*g zF%g*MX!vg%pzk0a&H!4(_*qA|y?Hs!JY$<Bh zr)dIm$s^+XLw}pqmc8CDgM*VF92TXA#is?dqdxIj+tWcteKnQDn983uXm|FcWw|!& zl_iQ9rC34E`YtWY3Alsec~8oXbGlxy^O-jNt9ee|Pr9G1FFu$JhqEN>a|QNj2xpcs zCF`uVtv44lE}o5xKiex)!~s`On1@7X_;m&AlQnycIU>~ZOp0%A`!dz8}f=FuRkhdgpa<6>{>jW^MieA-syb?A9V3M zYX4?2SFcKV`QQp_@>-W%YA|lO>wO-VklIb-i8Q<7Thmw$uuc1wG&7-=ms{yLb-K*Cn?I^S`{wvI7f|(PNB^x@fv@NJrN$yt;Hlu>6c7f z$Li48vX|>YvQ55FHrEi{Smt}Di-{Oh-n0^fp5H+j zbN)oDleTU>74`^STO~5$x*6+26jdOR!&o6?k#Fxg$%T5Wlv*rdm!t&08HPEFbt_nieu-sVhQ8=eL4zcdJgKjK1>QOZ0Vz?bn zGzX)ahB3gvlX%RG#U6wpeCKxQrUO$XA4GKNHrv}as*~rLL+By%<3nt;j&}vc*0DmS z{7xa4nBHR77rO5q5B1c&w*0qUHrd0hHqzn~lbpoC<^_dUJF~Yut=Ie=Rrc~Rhh6j+ zAG@mItiE3R5&GKf8&I3_=OP?tkF>OWL3UrE*1I)eCdsvZwXE;HOdc?KdQB7O#G@Sq z&JT70WupVbb9suh%r=Luc{r#`n5_IVicSS!vpbM1pI=i!&mE@94(i^|yS2x2RxBH2 zw<(?R)5^27?cWTME5~nSlzh@|dT;0pE8BUR#;ByX`#Q9PaL2}d$k@5VEGMEUPF#HT zkcCLGu7T{ReaZ0z@A;3k z1R^H~3K~2{c>f1x+I#L#d(=W=rwzSQW>=SwDl>^B{d=j27Tw&s6TN%gJ9c5iQ~D0C zJQN2Bv{OuU9(vra8ZdFc&~~Up-=FQ(P)1!T9E~z9B>{tG-ekv$G@+JtDvKLYBXR_h z_))#Vv_L@`w5m+1#|_oQLs(A#y_b3ZD1-&ZnCxDcH=B3XKiZAooWv;@p- zF|xFIc4dn;C=aeW4&BYi$@^AynyhqAS2To$B)9~b;Nz{M$dpfG?`ZK|xnJvZ*bWI> z!@$QZ)6%m^_BC@O`QTl8&z=poeK9+-k6^l?j61>Ko%gBP2Si=hg-$^)6NNteso!;r z2_?RQ|C#Z|#dd8m$_%XR`_;*afYpv4R7daj&tgjy z!^JWKdbg6~Dw24Uc1elckOsk$(+brhgA3%q(U*)+b5U7!EFKuy^R9pBg7(>P}f+Ju=c#-@mj@e{^|DZI^nYRl{^z zg-H4IXUp*tp^oQi8T2K*)Mkb91qNCg8BTz^_`A{JV`(eWIWf8pac%gl7{jGv0%mmeH48qb`n>O)2zW$AMgl*4U4`{&-K6 za$R;&_nmdUHoLLu!Y=;Ksv#rRc633(l6(?;cld)&FE`|iuck?h=OXZU$7kVd$=*yKCV7J?EZp_pbTG zT6|$G=6#=cKYRbS^LSBI<_GqE^^vOMV2#=nm_O=UnF#o0S6{wOcF&Hf+{iEOILB{1^VO0xF?Zj`o89+K@*S7$1&(S7 zOE@yYm36K^jvj2N{_J^C-08di$E7^1({^tHEM354!u^cwh17Kf>;+ z6$|gEk{Lt2Blq4b+T1b{f86wq=oNmFHLaR)7v$Kf=MP({uRIvPvX`Co!khF**cTaA zhLA&fK^3|yDJcwHEJ58U2bj&gJ^O>BkK!?e^anuc3;TfYy zV;93{+D#*F=0rWV1Fu+N(-AVRxLjW~I~C}97QaY%9$;;4AXYNDagV%rG+ne_8Q_Sj zZe6rSyjUx#$V#YxwrYi&d5=Tl!C2D>!3TjPc$4{rrIDj<>r}?G zi$!(=xZSklOz_HUujX5|0lcKM!tG6y5H6E|r^OEXwi8G{P>FKsHg;6u^8Z)>Qo*rz z-RlcPEYaLJEb(Ntjk9|_n2kz%H0-mB4XjxFJjz?pI!WQ=&$(gqSe%N;xe!&iC@KNC zh@>)Ci2U}3OiO$E5Mq0SQ%dC07QJ+0zrQcJuV^;S&vccI$NANO zXP{kdzbwE0Y&^H(RuRZm{<~G6@~&u(%E8m(pvykTClQy#Wn_mmnKr-+kqstlRtpj}dc;$Nf z=ubf=i*hL|j&$(PcOKgLm_ha>PXy0d9==Y|33ZDb*dN=#*K)`is^(aGx(-!;Y z{sfJb`s_d1s@7p0qK~W(d)Lj1+ihj9cHqfVn17C`8vOnswUzl#&IL__P0C8$v^4d) zP$Z(vulCx9NGtYmSWBttFCSLA^{T1=w{rjvW>YqZ4U&HTX0Z=%UkIS6+WE$_wx-++ z%LwUoh?L~CD~Sn1cd6VW*jhg7AuoG~i&5+~Sc_r z`#y5Q$g9c6avyWm`A@j-Ny+>Zxvetmo-w!DFkxrFmn%!p>{h6yT>`>vBIOLL?~W(a z>y=R!eHARf%W{IkKBdpqmY+$}q!E^k{M$AOSfl=F{-PzM!Jw^wYLrZCRSl6txkL&R z%OuuB5Z90dGYwT+NVvhL8Cm#MZwbT9I|?LpZLG(Mk9<((O)okr@o%`L(!*L}(|^ki z)OL4aQS?Sls_=kg-Ep-~b|O{R4;11GQS|c8JCFv_&MNE2dg*=CG* zaL!n6Me9Dg7k5*X=-juzEHIdJh)cK6U_H;TXrg%HJ5P3-xLlhPL@fMT`BK5I-7CPOOH1>l&NQH z0iw3c#kwt_@a3Sz+2_2g@iuhUfy1tW1k+`@)A6|dYC*ndnbxx%Vc_`Qis1)Y{#mpQ z0c+6`;noYE8z^jzx&(aUL5sp|5nX6w`*?D@l}{gkvAn z-pfKmy1d+N8p`(D>ctGc=^qUhm0;V#AceJFKM5XwvR>X!8o=lvdcAn?_i&ATF3tP0 znSF{TXk`Jfd0sf0S*06PymfKi6*&j!U{fD6=X&gwXr!x~bJXGP_tKz9d-w*(F{qi5KDdDmq9D#j-v~`sdTd(1y=NZI6hh#~8tTq>f39~Z0}9&}#IVWB8? zpGkrCW0uD9_~`m3r|r12#L;#m>(f}9!)%CT7vJhZ(JcTXO}6Dg1lNJkUDth~=< zuu4`;06t~c-8>^ok)FBkHFWi3Wxcp1!1enZn*Qt#ntlGAkV&^69Oo{zKhrr}&+PXu)7K5ugWSTA&Ci!qq%R`yYeN z20;Pq_+!$iIr0msz2=szKX{q|UCACClW7?*RbNu7SSfn!+U~1G>~&V%{UMH6^5;Rf zV@=ckfsWBmk9)6Jp#9>{4eG;kqszqxrwe_A)8@aUJysImuB^VEGIVf)DLEOArN^tx zh;{B4i~jyoqS4+K)|>L~yTr>U;C*xO;CH~sWcps+H+SLXc3rSP?U^sxqpNq)^^p}i zNJI+H2)IMqCz9w)1hmHcA44U1oV@&sI`z>u`{nEx*tti{d+5d;c-aGCLb16oUL7MUmUL)rGqgTf(1}HHSl1tU1H-*Mk*CO}m)3Lr z+kJsx_TSt|?}x~h%NZPchI40)@9^-#f>>*t(;GSjtZS<3H+pcL$3>njHP~7g)kKMG zP6nfXW&Spw^-a37o|S(5f)6EN+mI#k8?Lca6CX_v2VaWXHJmV6V6;w`9`&-rRgnVPCI&O+{&V5soDd@+NvT9dA~Z>u5!xevi-uy>WM-}e7NYT zqqU4#AiPA*dYH5{M2E@ z4vYP97(F46FVU}eE1#n6s7kN?g79z4Q#ym!9~utIhd#o^U($!Tl17*kj=af-x<_@v zcGQyvJPVpQp=k+Yz@jWp5+me!Skky_b&VBU>o34a!$TN^70?uKblnPmQ2DVwWg|G% z2~lmpwp?#=3zvs`e_kH{=Y8*C_`d0)q5AiMbz5`NIeKW1jtAt{Y?s9 zydb^|xrySo3}XZD(%< zrat|xZrk7+q~+MJ;R?MJalW+-zzED0)$T=E#A=ZWGst!s)q{SM_*?XEb%%U{mR=rT zQkA5|r+GYfvX%>pJeow=^Le{$bGGDjwQbfE3zpD09&nqy-{&NVtnG2!XK*5t_;MSw z@E+XyOu~DBy3sm?>^LjnE7Zkjdqz`~Qh_uY`C$F zP0%0Xpsi-D+*75HgmqmS9%VbV)_jjDX%94co>u!uvQ)_(A>7-aK_i&Mb*Y`%k^U!Y z(_r)T%c7OjdZg9K4*xv%{T6<`p3@nFJ?Dj=hl%c#6CZW8SomXB3;~DJQ9V*nFnz8* zLvAH3B9A<~74Eb{dypw^`ANY2EiC?$lpQo>`hx_BO09&}g)#Q9w>Dd9x3ML4WwipW z+N9R4V+#^^Q)(OZoe%C0B2NtC{x+Vic<3xLh{%>bV;qa+uBpVr4If-xeFCwZ-Jiub z;NEXR&u`raWEz3p%h{P&DUW$oB~7EGwYhp~w*d7^oMgQ{eb#p6ypP#iI@i&0D_0FC z1^hm*6NdurU7+$kKG%eNxv6EP&9#Sm ztwMQa&C;J9&Ij4>jl0n$T5r+RP*1Ri;VZb3jx19yJ|JE!cE<$-Ip396ISlygkoONJ|CdKl9%8%OHRY*-!M{0!L*^K?l8l^fY49@GKhq^d3V@hIiB z7CUEzFvPO`Gh_Q{d6*5dyFr`!JcbeiZkFAvc9=n}`K)QpXvNjq;Ql1$ck5>zEey2& z$*YmGCOdUf?jv)_m`LTN1i+TRx4h%Ko{r3Px{f(?pK@$`a{UTSBmYZt7BGO%9yn$= zuHfYS#j&1>o^{BQ+&}T}ceI>cb?fe4`4Em`cLpu!suQSZ-9rj@$*X_{oJzg(zw_?H zRj1~-FKw5R)DU%Tw-KEBOvc4R|)#X;&RiV0tEq;*{<{66v z+a6%YNV)=pDfd$iLZ1t4g$bJbyH`V*xA8TVP&U{V))3(Ilk22Im---XGKkTH+*n*= zBwp(Ens-@hx9TK>>>r`q-$Jm|%maoVX>j=2`Rz3;4_EY;)FbyzR+SB2T68|yQ~hiiqoZk+3W_1{ zv{7%?j|)pTOLNwCv!4kg#}NifAr?wDZGvux8zm(Pdx`AyKfpJuR5|sFKCe34n185W zE^kbk_Xd+ag4e!xW(3KVEg!@Zssi15e1@TQTeBS|D}clv_iE68^8WKZ%#H>@m2%N` zN%NN-HC}WCMNamX2!pXXbGHYgPSBuZ6Hasez3Xl%mq?3SS;R$a!c1ALG|DhkqQTa- zX0|A`Sy+N0GIi{0>u_JA>)gn}k>?2PtVYgfkQ`-mH^1WMm#IFSZ2|BIwDRL~$r%rEc;=qx2^jw;>t{oVcPe5!G zi0V4>UKSSmY(!9uJ68KN1}xW!R%hL{`rW_d1-POd+HLB$Ql>5gRUu*l`(ehA7d-9N_@fcuR@|r$T9&;ouTTpj+To&1Ph2o^Fg%vn>irTcN&_j_xa~TrV$jM*#9X_aOwbDJ8_|r@X zr;_ZZJ;vmaC$D5W*YTARy&?eL9pO4hbH1qLef30i9y*xeyr$VC>9k||VwA|nFf@b8 zvIj6r>M*Fi7_8mlPj_tsmWW|#J{>o=EJn%1x0Qi&hyCU5An))<&!a{Vgb)apc%J+7 z^#4@DdwL6Q$^^_a4O`=}fXb17xwEAoJ{F?a=6r4Ct2DLq0Ln6`p|)s1+O=L+&{@?V zw_aW+h;o2o#)Qi*o>V=$;325d$!;p}eV2CWjF z+~S2VCK7>}Hb3w`Gi{dDLaNX1)9fQau(5>wK-5$#JV) z|Ed_3vz;ik-1R#@Al~RMPYhjo^uLj|5+|bUAU@^m?`|ThE;hm$`Js3@Mu!JOABFDQ zX?uDZf|C=%`vgx3^x)Pp9XPQE6*q;ArS)FcVz;jLWBe6?OtwG^0uqy4QZq>%zwY`G}LpslpgfyD}?;B6p>+-&>9 z_G)6m$^Y3)jSgnw%EZZ75i7%W*(A?u1#{J~S0i_=H_d z-+~h#<2-2Vrbg>Un+pXw(v!9XhJ$IM-oK!m1%%W@LR_dR0!z|u|Iz|Qu>CRD>6ZT( z+txA#mWy9?GOd@sx*b=WrgT+n=u@F1zecQ_wyy7_qJ0q9^fMNJau26Rw1-4k+-|RK zNuV;h2w~*h8|^9FK!&J&U3=Y!PdEFz)Wnj+*Xv@eJGtgzA9yQWE=|aQeB5{IE_VR& z@|#qns6_$YuNgTj6y$PvkPC%-g>`cA*_#>=1g-#yL`C8z<8j?hwelt8ByZzBY}(+q zN+ZXx6Ub~BnMbaDyi=hO+g)rlk5!xb9B9b-dh*@klOl|9&Ihf>uN{u7wjXBEQmbdL zKgs&TVXzrTQFSJ#W+xe6bC%2Vs|QuC26$$u(WQLs_|30lE?Hr_xUe_9RnhDBZ5 z5}SHTPO3PSD5mldG^$=hs!*Ey`MnFGbbc{}lVOhErFGluv2e3-X}tx9%V#(Zv;7#M zB5twqig4+dTc0RB_F{d7{wRZIp#<#1w?H01Mud{gbW}R%*|umgyF}(VlzZ6v(e=Dr zEQu)%r1zEcbBRJ5JKZf0gOurr1^rN|*4Ez(EMAjGk#i7;tGva6r&d9lqtN<=2<-)?Vh{D(@UHHjQ+G~CGbSMVUdFE%Yy9&q2`-hGAR}&y^9yPid zKU}{%h6iX-YO(PvH-h>EiE_tCowA;GVAL}-_2E^v&C5;}f7;mAFySrivC!20^WIYD z{=UTHe$j1Ct9ht(!K`pFq1BODP#H)!{Zq(!sjWm#FoQs6j1Oqh`gnN-GTD`2;6B-R z0;kT{VQ`<=6-(+J*k^0WXz$kyin~EiNSe<@i*@sM&8pnv9KwpcJEEv2Jt;7#uLd%0 zH*_37c)#)+BDubqR=ZE-FMz4=MgW)! z6QlskboS-jh6bUrpuPIwnG>3DIu1^p+#Iv&Mr z|7U@>FU$qJ(79%Xgz1F}!b}SLXOd@1#Kw%zb!FkGQ~^)j+0nt#u~Bawr30Vb1+sBR z*K1o*GipeXzK(qmQ(tLIShvV;W<*xc2c<6R*jF)RwD@N8Q>H@Eq*U3CDBt?w2y1voOPs96= z33kOeCFYLDn%CL#u6EL;K5SKdk#5IbZEIg%di6tXjnt;1`tV(yFkIn%TSe5dB0ZHk zz22uACNjo8oDICq2{yoE-Ft)ZZ@ZOSg+Z?A9;x>lkK4WIk+7UT%r=kYybULI>n&;W zn!M%Q7hAt!-|QGiL-Yf7c%G5`PC_+?GM+ET>HIK}3S1`&e_h%(rMz=_VI%Sj$5;Kd z`tO}G=3+x(YB%sM^=iXPj17zS>A@Tdob`3Yy_rD2p$a7nL#v3H*V5gvZNG^L*EBy^ zEUjRb-0)vHbKfk0R^5-m=8DdRQNwl%of>^KwLOm2>KT&-x!uL9&<}ASkBq-!VM)72 z6gAkTL>AKa>y}F*^hGkwZ@mA_q8F!5r+@72Pc1r5YCH=`z&zkM@UCV)g&sFKJq12e66-z1f+KzA)4 z#ZC=bp}!)ba^}^im)UPHWl;=>uPks9;$XH^s#?jr`b&uF@1Wwb9sh_(OO#Z(Yp{No zw1w_glTC*TjqY$N=K#qZ^{E76pVfCkZ9%9l1{EYXmFd;0v@^}n`5t=^pH9u&2k)4y zj2Hg$@Pe*zKY|2RCrWtmzEM*EdvzD>C<6>9)=ta1TYv_^fXL~~#t@(BlSK1+V^@qJ z1o%ZVB^o8(wF>Vh@@G?i>k#^!4vCdgUC*a_qn?_ZHN#yj3{f)MOkThFDkdK+GLk>c z%sZkJk)yvax1Z6~$A925B~X3J%_66!$jveq``iLCT3rh^m*lJ}o%Qkr?8fS#ov*3I z#IKbX9pQx&`c6fhph7FDd~}XV%jCqt* zA?v6uKy8?wLvT-(_GENBO+OBqGCS%H@kw~JAJ%@`-}&MvGA3MBzd0P!gDb2Y=QI{u z02l!5b%BM&>ft=GC+Z}ev)c?Z0tiR`$O?fh7GL&H9; ze(SFUJywosRkC4xcwzunn8BTR4u_IBgF;L1qZI$tbU&-AeWL1(oZwlWHFsa}HNK%`W}&L(%-c zgCce@br5-PkE^X&)%UB{KqJHCYrSI(+!kp6AeHaTPRq5XH^ zUq{wpxMV}{LlX9y@`~r5ut*33p!%}Yfxb^lzK*{7zU-%{WA$FBuiAzR|QQ-*FNlawYH*?e3VP58Y)p?!@u_bmZv{rg4?O5I-9=WK9;5Wetglf;j?czCE_)mLdnjf^$Kf5bA!qp&G;s{P{ zJVfzUB|c6E=yR>I9_k&vMEDJ+G*j*6@&Q>+1JD|#E2V%CZ_rKX==sR3!1yK8K=_NM zBOM$*$W5=v#PUG;lQR0IGm`5Gxog}rDJ!sQXHy&(JH2cJCLuSB3eq=b#Y+GMAA5eP zLz3T!6#Eh48Dp+zEyBiu0;md5Kfbe8qNovM-xWMDVF}LFuJX@|e19bK-nC(xlWO`a z1;53*jp!G)7AyLDSdKVuTY{P0UEhg5{xtseCMJUQX1#2$X6t+ywl3{7bl&Dz;n|BD zwZ#r6+t-L@zB55aGDy_77yy!r1rWsTbS0q~q(zJrDI2-5I=hKw( z?P8#N5J8DQS^ER%3Vud(q1O{3;W23|D|LzZ?W;IugR#?s-LpccEs>zqq0Th_l{Rpr zJJI^6&KgqAsJGsusB)|j8oqdv;pF%4Y?@f7j8%ll!&*uPP|N>SubkHdl39M?)RgrO zY+Id0E5)o@{=Dz?0-ELwO?&KfA=?>IC2nZL@sEzNSvEXv0pNm#c#v1fDW^)exIQsV zOPAt++**=X;Ax}mrmd=HEIDO`z)+LU4^y^n#lBwF1Dg*5#{UFcigU@2jyknTui41l zi4zxEJv?(Ks!jA>8C|7;O-7As6d25XHz)I}R0O_dkLUi@y0t5Sm#MM5uT>E!<%{_e z?RfZ~C4qJX@e4mIl;!)ylG*<4WNkx4xoIbvcy~u^OH9*1n85LuA94M*5rhtM-G{qs zs+Q_&S}sz^(p`?8!qNKQ^0BAeW0h{j9}|J1N}!7Vs>+Sgq4%*jL{<-@DU{}r2?3%8 zWSuL?r54UtcYTp8hE!tvl)^=2$Ie%|csJ>v%{0DImM@7v0V&;wksX|hoLBkpZYoGS zcUTD;wSCU+XFkIl5bcwNfe&}|szjqJIws0Scv$Uh=~3lL{C79}65DC1;mu&WRqOL& z9#^}zLpBoOzCzHh`GklcE$@5NGRU21Pg3Wvu$3R%Fcz5^<$?fT(*4Ukds;ToSMD8+ zH3W`>!{wqXC7MSoPW#pEkUC|L7#%ED?vkS;p68SdqtPFdz#?=kK7_GKp2Us zIrAs=^uV4bpgXFHhUlwreMW%sVc9GjadAEGC>j*>c(5>+dEy5U&m|R!U%MpP4;M!N zN_D;oIT}5bqWi@|m#tzz;2`aj3*UX(kqJE0xP+2Ey$CYsU13yU#e?pMQygIqinztQ zN;#K${h)*mRu{`J-R5jn%nzOLsA}~7$_6`c_e7pk@W9TFSF?XeK25Qe3#W-^dM?|E zKT~SA?MqW`Y-ym)68?@-;yQFfYP2GA8Px3CIL4`D$Q=D95P!T%xp2{8^=Tv&L3pQ7 zn$l39$d{W4Dd1PCSFx$Or3_f<$LZ$1=O~N4+k5z?Da&zi$>YWO#}~VQ{rMvXBQ>ut zb3i!`njA+bk)I1MTY=qx5f6{t)N*T;dSRT1*xSVDes%_T%&GfXZ!{sd>C(gKmBKpv zQ!fkx`d2S+8;Fsz@E9NWZ2|BOgdAD;Vw@}mF>{|_FOSheQKd4&@u~0>&i2?e_p1;! z64)*=%aO1l?S&%z`lEM0096)QbC|XNvB3Dcsr4?B$}c{TKN^j$d3KQeaIM!~maKaA zR$Q*Eu%4U|tru!o4sb-Mtfzn4?2cQRUin;@Yr8)Ua@U6yNEB?2SktoQm2$R;st?J; zSUADBAHG(t`8+&YMP}g0h`_UPnzouzDyqEu>L(R4Kt@(uv*uaT?pU3AL-!9k#K{}4 zTaiJ%ZBSmXK=T_&Qs8p8K>33b%9;e-8f|CX<|nthi=B^K6a-kHjbFnTJ5bh$vMzl#@LNx%-icdV;IbtX=`(%{E$c}m5MVFET^LXg&_bx=Id zHKSSZ@tp+H;lO{ZqW*Fc2`y0*afw|!FKo%Gs{6fW(f8+zGpe2_9tl|c*V+(guY0>? z8~!bI)4Ve5m4(yK`O+=l(IG|r->V%ex9}9Le2M20e%%5mH$`OPN55oD@rWb*&rbJa zsrBk7|DN2x4XWuK$VfN+8#=awP{cl)uKR|sSYkAMZsz86LK=nn>Rc_#fi_6hkX!3( zCo{*UHmFytzUwsN$%~;rlcHxEND)-LN2ye0OZ|AjyJb5o81u}5!R=~M*M!%I0{mEL ziy2th+C(oGa50A2nh^zYCK675hPJ&muswFTERH3HuEnN35;zM#6mfn+5!8p*X4`aD z?W6N&0Fv)4b&ZbIv4Olv=^M?hX7JPFZe4N?wB?|OwVX@`26Zw2Hs@-xO(rQq>^E2! ze-ZxK*jL6|TcB@raaz0MDFWH!mBz7HaSz0w=+UWN29NsA)x^zCNcp;TTO6@qELEmB zYr|3u1yLy;XT<^QmnL5^_NmqEBMV)sH%vH{e2S{2_ z2g0t*V}xRvlnN~qa%t>!9`M{JqMdZOGOZmZ%)Dbf2r7|g!}UI&oaSWc)QPF-d$v;RI+`)pm$RJr zN3EUOJdUuA#R>YzVG%qNqE_$VGM)}Ab}+MHY?LO9F&zd4NMi#pdKHPGzU17&;_0Yl zW^}URE1iD1bYE*Cf(Tx_n(hV)vrzv|YGksjuFPI3vVWg7=52v#q7g@`N~7JvFzuA~ zha2|=I-5r731|1l4EgJ0dXME{?*zcc*pUJoe|4rKH?!qb5GnZ@ykEDQV-mA;+De}3 z?$o9%;rJ2*@aHT-$;lAEa1c^$8)0wduvtW@)$wFV@5~mT&G<+;zJ{p9f_P}Rszj#SHS9{*f?hwZ7z*0BE9$L8qCV)$}p5` zzr_Z4A@2oT&!<3z8d<6ZCA!_R%)U|*=qW5*JhIoS=?DW@wa{biaEOCi`N9nwO0K}N}KYAY4lPI*4!Ka zxlRd;|9ev#4{YD4R)P|#@ZwOYR(yYd=h=@gtJ28Qf1D{WaDHp^s*%Yi>#edRXsw=K zorLU9H%NidO5@)%7mp3sjz4Vt6&4K;K%awe{)pBauN(9894NQ=J(R!f(%0B815b2y z;%KQxRyXm6`7rE8bf~0o=BD*mS<|z0S!nF6Vzp>xV$u0{xa;`>JR&os#mpAV&oF3B z(eCpY>_%2)*{@-(zC+v=bJdX8&%w_4b=-?CIDlgYV!@@(px2;Wu=VsJc|{e7%Jls5 zw2A5m*ol|-0KaNomFB;gR=BO1I{IoVDvXMP9w??GZ#*3~IUX`?LxoD%eb8O!FP$cJ zJnHKUA-B|{n~Co!v5KnCP;)sJ$svu>xg2wu_F3mD;@<=vN?l%523KdOn=5<^abEvA z$UeR>Ahz;M@3lFDJl zUPlameEG=-(Gak|F*LpV}?gh!v zTvQtgpoKlo!*caJx#LfJBpTe|Zrw4BKuWLvD$2B<2zTFPuMy3;9TH)xoa$QP7U{emp9OWgp@kU>C8q#3SP3ifWmmB>ybvZJ8Ma4Tt za-Q;F!b?3HarH*K6)i(M<$6=)pW6@sui?cR3y1UmGekCybT8Ab%OEl1G+B+0=wTL} zr#qjH9gP;AUbc%Lj{th{KJxCzT=nliV~H%Z#tiocVoa5Fd%w+BESt%EJeN!JV!)FF zBD}G(uDRe9pRIP}5!S3h=4KV2WlCL3*cUNH>Yt!YECxp9!t-7tRe5+NkNFMQ>x{yl ztpdI6?;97LXZs`sbe^L)AffL2hy>-em*TmWSx7fxC$hPgTw=M6qrj+gTNI5o9Q;#Y zq^euJoX|~87d@h75c!W-)u7kzm}FWmVJBQTb9ZRDAk;}cEJaVoV@Zd+qZA$vxUgqC zf9Wd+dIQE zqnD~KmTyQXEBBGT=ArT$Ieq-@b2M~sx%@ZG0tgb#Yi94=*Luj6o6kA*O3E@BUpU1| z+n_o_)N8BxO zcDrMe)uFIjXBas&a-N3k1++oAT1CK)E|F_7|L{p6$8*>fzhu7~{^%|B8Es;cbL4o| z|5c=Z-A*rgrTwC|1yt%JAlxWFCDLOb1i%F{OPH7N?tDwZYH@j1H1D@Mh5mx>&Hw>FP%&3oF@>*V9;H1|;`OdPW)V*$j(+AnxJ z!7SWdctx$Y=S`X;<(w3m)gUQ>FCC5D9oEU#JQCx3${ni3x%kFq$eXK9ll?&ezF9M+ z=!++9fUfNtmM1@%E^SQmyy%{g3AEPjtgl;YLD@%aA~jh4rZnBvR5C?vJo4@%XZcg@OO`*@V4I-EuG27K;%=z>{)6uBb(H&@-+GEt50_y!i z&wTZ(8X{VxqNl?$n$1LiAZPMmy)AmCM56sDNRRPTEwpq3%y%86 zzn<#(Q*e1YFKd}~(C2{%W>-bY$Wxf-fxK&b5Xr0trO;<%L!UEB>y%rK%-*u0uSjg6 z3ki-ve{{e>(KoBkg#Q~wPCxx$6gfM*q)Ec31GuHKjY6EJWVeDbJ-}B@SLqAONqM*U zxf9H}pvk(j{6C3d({|FTF8Yup?TW+TM+!}r&6C&nAx)D|*XdcPjS+Cc$U(s8@^pX@ zU6@dUSJ=;W*7;GV+j~N-0^AlLK!1k3T4T|f^O^7cvgOl4J@~yS5I<`1SySWrWHtRq z>4jU8WJKkQ)fZ3~t^eIu=)7XxN^}C%qm)tLnGu1?9pqC1U&BSTsZ|JPEpewN8zRH5 z8uvsCd#t!f;CTR z3ESV5-lm6y`CmUB)Mn{oKDQ6JrMI>(?mPecNc{DH17CQdDP+9LGu@NKJHb?x3Jq_eTj%K*xmTxUfMSA$Y#ihGSUn z@sr~|DKaXkM@|=8S_(m6afDzIil?qurh7G9+yjzaYE+t5zaGcWcRKuG;T-uoUjN!b z`!pM<|D$c$zejbmHfC8;zAg2@n?3=TU=fuw_!_dVliWqGsk5l5W@Gdu#qG-n7~pBy z4&s7*nlg{C*2R3OWXE(U?W=Tr&^Jgj`2o|#>)p!F)NR5sOeciC}WMScy$h~USPJpF)6`1S#o zaa*9MZM+SRCV2vfYOX-*@Z0Du8Tg3PX5)Q7;gbkD>aTon3h3OSqipzSLYi3r2GDI) zBPQ!}@5Z}J)BvvPd@#br;5Jlo^PRuYZmvsK&sK> z7{uCKw|HoFo;)|ic|T%5F!`3w#~dNAJ@#>AW6H7#ykcCdhpf*NTl!_>`Ne{hgLd2@ zZ;f!{xM$;AISrnsa;gyOfbC&VMqvZ1bCM@|>$vjw!c5@7)oI*of8-VK`Xka>9?wj+ zMMl{+jg(fwD`Mp=5aoIFg4!t7FM%H3(n*6lgtXOtkWh+2OM9!_8Z1XySa|-jXv!c{ zw>BC>Jr(F3+b$?lcwf)U^m+L4pV@@*IB0iaHys!5|ozo0KiWg z!8a34b-8O>H+diXviYQYx@B(8)|XEenMOaQ+p}em8xXJ$Ms3v{-t5Mc-BJp7@3^*Sw0xv>d0NgjZ>t!Vw3T_*QTrtPXaSqk@17!A4DsLL$}nqeb>9=hkK%b z`+>)Ia@zWR)|c0*gh)=cmpE2h#qWJO3;kc3+!C?qGYoWlC*!wgD7w#CUuR}Yl3lb& z92V)>jL!QrdOad2dNNx|8__SaA1lJ1K2jPq3P0b`>m#a=qL8y$b1}UPPmr*LON-N3 zynb(;m6Zo2=L#1;)ODWnluN>&FhYqonuPwbN;2J55p^qNRnWfd3)vHrXm54t!WK(B z+pey*z2Sk1I^@-##pNC!Wt&c4>XVi7D7#z!WT21adyTbhR`iuqm5RI z{_iV@L-jGfy!lx@5_w$zed)!{(bTW~{@7*4f&EX}+EaHjpyzUa3r}PhdI$Hd5c2M` zW;DmeoZ9-XE5v81pF$S}o~>)%(#iFf>v0z~I4SC_etsjQ$M`U_;-7)!>~FKK)d4I< z$Ke^v8K`avZi&uY%wKz5zkbkCd^ack>6H^PUafxTy9iB)^r_@-i+e()GI;1Vz~Kyi zzb`?gx9MyR>-d1!N5PA>=KW*jpGt)v6<>}k6+GtOzs}%jbdorp64`iuexpwyCPj(t zmV?kfO+N(O5StUfsB0n{%vz2TA!^0U<-}K$X8&=uFxI?;6B{+#a_B^qco3Rb3JuG9 zw;Yy>lYIyYj@KwrPEHQr?FDuWQvbVj^gy@z)r!co)0(2lmN-BmVJ z-=V~L8QiEr?PO4rB|)y;cU18fh8Wh4T>vm|#=_Od0|RPP+qFh>x5%kUSn_1^$~Rb* zj=5(D*ktu16GM%k0?SwrYf{R~?;2#eWp%ltmy1Gnv#muhw^5fbzwpqJl!w)M$nQQy z)`4pxk4rsT^_{zUb4&rUqQ>JU87%B^xP9FU#c>ko=$_V+YNDIrrXX!%r*f9{4@bV- zYM;x2FcZF7oq7}B&h8yx8{zq_Qf9qmWT{1F2^RUYTUVuL)52y{7FK$4*=5U~q~b4T zcO$v>H7$PH*mB0MIdbw6QVCs@R2?6%ufym_wT*#ZW^OKZ8kob$SZt^*#I(~$L0aQO zxLwSElH)y9@~U&`3ysiEs3;Snsg@&;SEBiNByt1JYj_o zPIDRBdA(lmW&VtMibiX{Oon+{E=48HAA zK|>m1T%p{sSo!P7d%=T~U5zV&1Ol4iE3B-l`rT2DfPgLC&SIxGxT>Ng+2RY+A}W=| z0TgYT6j{(bl-E_BaTb=3rs{V@=~)K;ucG_Eike(rkFu300)Di{Wvhad*qV_yI7ibZ z=J^#^VB281Y+02tQT1J1uwh0F_H-V~ZMrJljNj8XSLseCALX@G*BaB!KAOk>WGXX44G*s-7Y+cVxdpfwlJhm3Nd}L=@GOQ_^Czn;5S#S z+{SvTUyc%5ru>%P;?MU>Cm+ma>^p3^{y46a~!`n&mZ$wLkIxZODjo_6Qj}j`54x3QL?0a%|RiBZe zg1+mBA88`8j}Xgw3wO_Rr_A6kR_o3NO-Ow6&hsOa4VIC1=}W@Ym&zwv_^zjh>&`wt zYtC9m;h-xnJx)`GjfoS9V1$Kz(~&e4{-;ifL00l%zq?(Mc>7P3f(1Ou*38;7m{|7- zG}^Z^!RE`duz=&y=ojxZz)9s;DGW21_V)G-uC8rg_eF~pgm4!*&^Ipk@FKGmI!e3U z&!T>Cn#wKwJ5eZjWVsm7{K8NNpV39r=uf}vE-RFF#BlH$<>v(>>T_)DtZe^Hs}Kly z0<<{pi$D6kzh906IVb{f4}31KLPfYr0E6cxLGl@8MsAf*UX|#r@bV{~j~0p9#501Y zsWgG8h0dSF-0e9NFa$Chu5+5wA@pZIH&I+~NnFQ9sk}19W9%LL4bMa7F6SigC_QTB zX-^Wl!qJ9llWTUZd6>0iHA8eoByH!Yy5HT~@kf)d-;6Gr95-k-v|l+sm$rUP-?}C` zPAZSOcSL-WGkJxxFVx$ut5A;5ZH4|gd2qXX%)aMU0@MT6T=fetnDO4czFd^+B!oW> zb*Ex;mDXblU!WnNsM;iq7I)ps%McLI5*=Y$$)nsYHFxOpzaP=rLU@a{TXpEya)qs) z!?Vkd7>Qz^G3uQzS;JQf+ETtGN@}5x+Zga5cBWf|Ch}*BrD4h|No&J!NPmwz5opfD;SLY1DU_@z?XkMiG%+DpKKOa>o%FheP=CB5K zcp<;^cLW+SY<#e-(eeiR{IC}l<8`W$)pE73ra}RepcatNXBhJZu)kQ`u3JO-7o*n6 zYt?|i^p>3%?57YYetLiv$ajLB{WiJh7vIwVVePGh+U(n{Q78r4Vl5OX8j2JxP+S8P zcW-bhn&NH&N@#SpjcQ0`Mt^*pJ~N{B{)AjuMklH#Zxy~R`Z2h_nY zvsu~y@uu%hb^y^!>3vbGedw>U^?beIa9jQZr)IoU`?0LUGw_(?|9laAT8%AQNg#Qy zd{(yl1c@Pq_3x|J5G$%O<9Y@B{eh;<6T=5`U_04gq=`-m)1%R1ZC~~{N`ZcR&HaF< z=*6-siU$eru|k0Dt~_|_OhV`W3-KTzU=389G4H;0^otk#lN13C>9DQK`7Ye$l$TLW8jeLh;CUX8Ren4y5{ijx3G zQlH^F8{n{vZx>gU9P~Y@$b=Dw(NL;_)^*0FJkKph>pvrZ$nNLg8q+A$9au_s93YUM&U_oTGu^G_uzxME`Npizx|KCAP1To!BcP$fr8(V#vw-C65}$ zN(@3P$VE+-$SvklSn1W_TG5kX$ZaQxLLvVyC&-?y+0r5Kx^y&WrV|h_H3=}f##Bo7 zP1NtJgzy&--Rec|v<|pGUf`EywEy<#eWSdxAG_355RW1J|9yj=P_pD< zA{V+tqaYa%G(az*!cr$R(f{taCaUdxLz?D3@Cx(Md|?TqP!(mTM3ZwLDr2wv8M;ok zt{%A4Nu<$c@PV?1)l{_vD?wrdmxX*oUDO>z3z>=*AjY_d)U-$SBu2FD-LTHtYrLPU zonx}ft4+|wiCMsJuczrt)7=?}2gUrB3+^XvHK^wplz52JK^K%;zruV~qX( zPI>>`JKv14t_F3lhp->I_s-gNBs7u3?spQ?Qi(v9`|RJ^S~Ox7RGCU)cBW!Xs15}h z>1jVLZ4Zv=ozetwFis7h`kaSOLAFR0=WCyDEP=4v@b;+s`98oY9mxM1pDo@0(q)!A z@p*$Q^w_-dmdI}CLB03$s5$ZdUc7$hhP)gSCG%mp3?E%$#}IXJ@o|0D!=IAUNt6!U zV>t`2vrBz>?L8icyHmMb_ap+VbYdDdC`%7u_Nm zg>=LnTcri@z0lY7GQG?Va!<0=vZ}7^s(nF4=6OsH zvkDg3wp#6**oV}FHOHJ2TE6Yco{ z_88Ez(n?Q3c2X@3H4s)da_S}4PhtAMc`~%HqS`aAiD$qM65I5NdkC zr0O?XGi~#7sh(OVL3>+7qiO3z$Nx_P*Ubq+52uPBl?GY<^IbBY?jTm?fQnx3?LGgp z_)m`4{TXyJq#^sAz%m$TuNbF`SDL2PS?b`wJJSF6Ya+Rr^w1AkT2SCO_=$w&0YCf! z*EC1x{z@)s;eqFA;CWPb;ob_8L{^|zD!oowfP6;}pRQcSnQU6jJ0Uk0kP?TBt0AxD z!NUaaw#+5+(WUoiEmKhnZi8uCGlm5`Ouo^3-X?nXj1a zJrCIXxC_W+KPrI-Qrv7yUB1|1)dnn;%>HGVvJ>DJQn&&w$!*)Y? za#YOUo1}uN-k)IF&hk9MnwNXV`F%=^RR|Ij&2x+C;mV|*dBKETjHS+12$OHVNGu<= zQv!H+GgYD~B_5jh3C8!|i_l97J-R+QPm5cAo(D;kOvIMc$hX2o;13T6nb<9)J(nGQ zd5Ji&#N1EuWS?Wcz?1rO^gckMxfu&-;}sDU6!exYH;2BMuK4pKdg4bD^fZXez&5v) zMyI3YB||^c&aBHuCmS2J;kiaX=8=ro=h+jbkURSKBvKUh9sJ1|_E8eo9bXOX>l%TG zuLnDCsw6Fg=zmFO8cYvuT$);^@s~I?28vy!)5j41{=xBFKd0P4Qs5}{8flk)<_EC4 zca!sSTM)k+Dw1x0TQ)t%c)o0RnW?f(=!bSSe3M=&cUPl0C0uHGszZ3qyY{-9LZ0{}B{B&xdrDQggmma!SC+F5!qT$l&6ygFG)9 zpC7&opH!-^iuLUI6jbc+vaFH8{GZ={*^2F4-W9EOM;xm_8{oSqUwrSgx;87{w(hKJ z07GIC00UR!aA`ZlS0}WOaJHv-oMUlWOj~i~QC~vEdd4A}@r6e4vg}-CA~eL#>6FOD zsEFWKhnK0ehDOhS=fjBFYWCT|H>P88eg5Tx#~*P?P83vkD4{0I}pJuwU4o_A_H>Ew8tAXqzu! zKjdUUf!AUt+oy8eMV{7dPvIp9ho$}gLVg*Q{J7g~6|oM9T>+MZEV=vQyQ& z{wY>CA4r{L{s^*t%V{h0srK-u zsZHv`jYNQ2Fs5iNxV6jyG+p}PorHRtW5Bgf8pX{<0@~a$j=Kh&nymG;*f??7bK0eS zY1qf+l27z-Y)q~-@O-y^c+d%-v*0aw@-_=nuqm#W5Zs0#K9a9yA+oO*GJHT~@-eWQ&J6ouh~ z4pui5+JV_`H}X@#KHOQK-deD$&6VioW~8<|m!t~#N1?1>KWb{sH=Bmo6S!;yulhfa zMICO97;chn^V1Zzm4+3Ao80FY>}#i!tS1suWqE80s~SRnyVW6kPV*fzDWO*hyQ5ZW zPD{RpoAH=)H?RyfsXs5yQdglw9ZN<6gMj%0Ri60I8Rn*u1R2Lq=oHg4D=J#>t4k`A z1!ix!MMA-##+`-tY6Re^97m-I*@)!%$N(vY1$*NG#}mglXV!`AAihbPd)90p>yd0c z%ZwgZMefbAHuGiB+ynyRWk1tlzv67D-Kd4lYd7-9XJx4Rcqb>#)3!c+DEGrNwy13) zz`K!h{c6qt)41^7$a+52^d$9?t~CA!n>N%NACnr@^zRd7AC(PPAk|8H34aMM5)n#T zK*z;TXO}DCXWyESKP*obmnd6xu5XX%+Z5jJNwgajz^tvK#o1trLWXGw(mL)4@(SL` z08^WQhb4f7o{}|_JYal$Y}?bkJA}acdwInz->G2rW+mKlTrP20Z%a21nSU!d7+K)3 zxx!Nry|L_fWS`}8#a8xeUxN9fsrH;z|10G}53BX{BprQ-ES8A(@*ntWwh;DUxoIH(L$Iu#nRZ1tD*_~a#>L`)* z^z$}JH2GX06wp!$roX#TA{|@+9;CR$5A`3v!GWEz_j?}xjh5H%kC>nC9fum!ezHnm z$dL+u)sVpiK$`xE){t1`wq5JS_y+mR?&E6}laD3PgKY}7w1y#ye(<4urxhuoCz>Ly zAj(80mJgign=ap?qzJ$mv|}Y`6J)&4(rvH_i0uiJjsc<*Gdp^VoeSPgDw0@&|SGOZd@Hqt6tKv&?rfS2F9w1ME_?Z($7SE3HqVRjh}k@ zu|VvY60n!aHHL5MlakZr4Lqa^5jv<7FL)XLK-5MYZf25;END8LXA|QjPi+&E&D5tD z0v#)ZIP<5mp+2v_F9X07c!P7!R~r%2QE@a<(++IuUZ#!RlU=@3M%T7DAbLY}=@0Vg&d1zIa zqzJ*zFb<{$)h~X;n^cZ^HTrVdH&AcUg&*G`rsd2R$;V9N7n6$Y6YIthCe@hra})(- z{6Vos1l2`y$=#YkTMtt^dbr7kkJ>jN6fC+LT5g|ZBp(B>uI$|U?znJ8+Cp+8@z^cG zi;a7hg$rtpU)07cenGRBr;H#+zqjJfqN+(SH2Fp+E@chd1A_HyT_Zh=jO!g+^;@kS zV%hbRZt~_RnfG|7enlyw<4_|U9epg*U+St&*@Ru=%Z}Fx6s%NnUo5mcuutBN-IbFR zAi$hY+mh|CAs&(^4Zn=j$qM_-4^@R-JazwiY`>qMU8ben`TJ513Y*wB$33)juKQ>) zsxjBEr}Mn94XP$|?Ma#msx+}{qeSH!CS1C|65ZA^6(Fqtw9L2Rs}U&CH=Wchz|Ra* zR3o*D)mj^@417Xe=G2C=-pctR4Cqn!pg|sf?LbB8xJy|z{)NF49sG^wjV8_A2`8bh z)AcB|NYw>@gP)AqB8SnEeY*BTf0Ku&p4EWN*16gZabpOm+@C7G`#1}k5gfWpBqaTSVsqhS z`nDjZ{o%fE)}_{CpRMqNYEu0Vp+d*!xYK_N{jB7CR9UkH930{{K1GnNKUpewrqu`P@mkD{124>^WCxmLCEO=5ulQq4Ktf>I*1SO8Z@K$yS&^veQb!tjl;)#Y%V#!& zA~OS3o_yyKzqgJ;O@@lJ!UeKgik0Xa2$x*^`I)@Aa$8}I}G@OocM zaCv;TTrahylpz6CxZb;gZcQ;Q zdd4*F0~x3iGHvL9uSWdRH=B`k4nOP#j@!htpRUgL@{dNwVhOqiY&l@(nvbt!2?}~+ z%NsZnN2k?+4HzwJ(wQB)OFD%x5U?K?-I`LNRx#O>0b;1MqM8#eNkYIsP9^alP%wEk zMF~U`TZG^z^4)tHLmp&-X`(W13F2FA`APj_BAxLgi{#gcJXeFat+mm7>;zpLXq z@>R4};`Y3ZLg?j`Tkm$Om>R&TA=SMS7ktQymTKBe!;+9RD>lZu4 zd`Ej`))HCDuyCV!s<%1#IH=usYm$Yl7VZT;S!Lf`mo!|VBUgqZg_6u+=|N3dApCYE zfS4w;=j>v=M)L884E=%VoO8X;3S&jL_0e;FqsBwt;j~$tUp#?)T!a4O_Im&%1-i`E z@C(1jmr5FN3iwx`K{;rKFA5~CRQ)lq@#;&7e8+gQblKj|`m&uuV1RF-ElarJ4Cq;X z@&awXd4X%HM}28(5x(j*^dj>hV_MK6AW61Nv8vHJa;{BNeE-Ry+y<@jLVEo&)luA> z`>RG1Yl6Bm3uiX0<-481pDr2X66h)g>0yOf-uI0`dvH1%gk`C$uWz!`^o}&nc-6>s zrUKm@-;)xGm;tDmwhh4+cx0T4EN5uvIUR-c?iUm(JRV7NK7Dde`F0({hMGQk-?oYhylJilM2=mi7l8Cc`%V-7S?>xp48to0_9K|KT+8 z6^(6K<)qXZ;unpHLi?`Y$J!CwmjQ3$*fc9{bL46r@Ck8;$X9oC4a}~8)NWn38i;=DASl+17zJuscFvDNI66m+#jKpg}d6ag-pO)|KZ!{gj)sj#L21>h^5Alp2?;FuF3WS8| zslQ#TJ{JCpIA_v#GHuwYR8d^_Hn-hSK_u8tG-SbLYOW?8ss0?r9Ewp$V|t1XSL+jv z9HagO@sfrTsu^2$r9NlmH(S-qzQb0`RBAom+h`FS+-$TZWq){1bG^MaCvaPD|EupD zs*kF@R%fOJ+Hxf`czGAZFtlo(e;6`4<9A@`n?1fXVd8q^vIWI8Jxx5cwyyR(m`F@? zpMnbPd47AK!Q#9sucP#%BD7J0ny-qbV}p(x`5t5s?@T0z!;X zY|=YYff1z=}=>(ZDaKE^=})H^rjB`FllDs zcXmZn)TSNH?OtVzpbQ~#%BKws>c>H8)Ae&gY%izthV*l)g_x^IA~v4-nL?b50yBO` zB`CBCnz|M4vZ<9*rEjohPF1T%%1Zg)&Uqa^Qf@(DhT|SJbcmEy7}t-8UHvt*{u}li zy>&%|ZFXbR&J`LA(=`kz2(?}Ip>W>bK)PSOamtanPy*%PH?Y@sTr{$F_! zbRU{N8A9e|{BbPufWd)&5!d+lo&#Qv=vbuBx5vBLY$bckQ;QKhtLOf(z7H6d50>j4 zu!bp;osr#Ig>g@PP|NIi;k>&NPH0ZOfcti%)eAR(w8*$&$BFlHv}bGLEGp4O*KMKF zs76RY{ilNYCL0m7U*e)avt)AMMrXP!+{b11;7i-u;0mt0h~(=) z%1XkO_Dn`4D*4Fj&T9u3#t!qrZ|IRqbN$oZYQ`_@9gBtQ2aX?i%GzU+Ff*{A)X4Ndoq&x9LOJ2e?E zD9wP8mF+X=7;ZqxmBqgg*nb7lNTyuxFc|(pS*vuk(c`21Ywjxnit{}1hIjG-l|F2; z&OM=+mqxJsWE+5<)?9|mgJ&OUE;v_c`cB%vQ9_E6{uEB1!Hi-ZCF>fqW@o1fsQ%*n z>vw6*XOYSKtYC*T{ZOL?IiQC^PZ>JAMBbf(&U%}(i%Lzj=CE6%tL*BWTG6DyGld6l zVSls=&Yd}$gDW>#?T5RderGZA#alRB8LlIF-B#K1?yuPG)MsysyLs^Bc3LR>r!IYG z+sR%ZkBw%73u}~K%s+jZvMJe7z9*@l5|wr{;xxHCn22Z^9T1u}r zgM$OJug_eVhQdC+cal5lAwPi8_H}5uI!xP%o6Q6ONnQEGC_s=L@w8zW>wdAD*5p zhr1=qC&EY%9mi{l->zR$xH-HKjhY(|iYJXP*`=q_f$DV1r4%zaBjz-_28qn-AGY#H zAZvif2Te{hmZI8H89P^+$a{=t_k&eV<|vzv8Qo{msdI{NhLb847L5l-xIL9_Fq`wd z=5u4`)bco8ji?&h?|^-3-*48oMb()@%Rnpho}3VqDij$Qbz1)S-N@;R%Aeo)VkG@r z6pgp8;CLnV1;%TI%=u}n*_)RnD~W#u8L;|4Y(pUAU3KgSvYGqSCFWthaYxO`K@^WP z!xV5^Zq`7GLPB@vNj>#Sq_A{{I_M@9t4?@W@A%L0y29@e00lmJ2a=0B&BoX#iT{s& z`ms>_+TrFE&oV_I*@2MVZ#$Ce))pc?$y3hx60uh68%Sc*rQzZH@BH65{`Z;IMJ+Qc z(4Lj}iGpFJ8n5%W>XkBOQK?dt~u$<&Fg<{PSZh!QrVmQB6AmwJc&a z-l_1TU4Gf~$O|WZXaDik22kFd8~MD#`=Tu8;yLt0G@cry{|g&Pi-?T-Q@Ij_>bYf7 zvue2v+dQ58v$Af**fsWsn~gzGvzZN|VTFdcOeop$^l-x_*)+qH@;5#K0|vc$8rv*# z9q8^f-f;XgPrHfJ4or6-dw{P1uvWg=!)Ho=N0u0uH4SzZ&OTI2U3*l=BbM+3h}b@` z*m&F;E=R)$ovgCiH5yY+)m1QL8_Rw>2(AxiMxBq8< z6sO}~cRkVV{Ihv9du{73%Y?h5dq ztIrA{up)OE%s#@$9feb!jhWxDV98DaCKx^_d`#3jRc5mo`2lcCOReXlJMmAo4) zsB)*2OWnE}Q2{%%{gc)or>!StLU?0Y;MqvZsbSkmQL(?9N|pxn(*g8UeS!ih*9&NG z?)1_^tHEcoWbmn4{lob`neVJ8ekMA4N-Z0>X^@9&FpTS!=`I*;QF*X(Kjp8a7y<{< zbv_kJv{O$dSA{pE9o~kN+3Kf&q~vF|cW}pxPJ^HEZ0E(|xOAP01hK0^>()i*jb^l5 zjU}{DjYi#K`RfMiPn*f&_cILt{+8n$We5xL^4q%j0#+tczyO%_T9i_w>DXAz^fHtRt}X;mT+B zv|1J;&s>WqNPstTQA<{1Uq^PN1B)tG+fO&HN<8z2)Fx~^?yPO`LOgVpLoA4j>VpeEd zpTG;X+s=r$a)=jIH&Mkz9C<#|Y^vfKmUkQbU~IWZ%0bBj zoGqel>T0dsWzP1S6?@oYRz&rk?^ymF(9+ElY>>1`VKBSDTrFdzaWGCZnpD33?m_QD zR}ie)S6RIF9Z#LR4=E=3#{FaPiwvt3)QR$0hlSH)5y~yZj~d#>I>nt-dvxh)QWzri zljS7XcNtEU5-4EL4d+Ma^|BH3c080V$R@+RxKSYr1H*byMsHNxk)!R5mmWJJ$gk2v1AR31=!E*#?LIInPHN^u zT>x4zph0{-l?S6}pqjH`!K))_|4f&LiVVNQXS5irF$vokH&9@{MZnB*d&LLTyM|j|t?5MGA0_C-_=CF!`eVMfH0{jqvPM68Q1qQ~CdKU|dm+8{tn3TR z6doi|`oM1zlQBYzv3Efa_k*Kpw|`L_dA25;H74S)F8?VgakiE|7$j7=(ExklQt+bd zKIxlJAJ4dN&o}0@U`9k09$M2!5bc`U=yTmew5ccY5UJ7#V|ssudJvu`wV6D#SC>3mVL`V92( zm+sWlQZ$okjsVf44`=_btBq_u2-#RtzHZ&9n1ZKCph71X2Q!^pE=G2x$1;!1DVkD6 zJR-r>>bjGqR`8E5MinOFbs_I8wwf5(-x^;BTF+Gl4hbyS>z7BBvG5diyr}plq;f3< zJ)=5dQ$AzEr5T%tT0B2kE7o>8=l! zld;cgKKs!%(+y8_rhnb#aUQWwcs#*;{{RkWdAu-e`-Y%qzxO)JYfzE*Ln9)Ogzr)TQ zFNikZTfZ{c85JuiGj?M*{BkKHR{!H%S>4!%O&NoO>-IRwtwn!pA-{HNH^PE9wjFj!fH~zG2xlHF7z9T9rgaQ+497|;fm z23zV28(}6V!00U9@TCaC2cQOihRxy@BUrUXKtP`z93T>8*cD28gdQvu#B;HHFr9v@0i-d` z)Cp1uT2hT(_WONkITE9B_Lb4J?PI~5DfN3V+xd=j;Kq}EXJpk^e06Lgw~?5jH?fGY z#d)<1+}+J3xBbR-NiTn`DOnsa(Xvla30?fD5EF#|Q%mZb@rwDQr7k1%Sf)f~uK2@f zSTz{SY?XnT;cBRK1DpKU0 zJUt*WYVPn1s>gl(E|D0TPA$y}-D6D%Ay_1)*s-XWYiEzkXp6 ztyg`AR>}6W!56B&fz=T;AqQexnZXQAb-wAAF)59bTUcq2Jev!ffbqo!?Cmnsydk7X zR7FpfnJ8F)7+w2HsHRYEhvRQrVIBA$zrK?YI4h6$GP4Ok>473PqV_n@-uCMeH?ZoO zbJ={L^pwq*0L4EoLi+AC)u;OPHgpbAt>iLDyTM22ip68~y1PhjH*7Y+WE4Tc@WprS z(v|fZ#On!iH;az*R5$(w6XU+$9m766){h0wINZO*+EI|*?z74Vx;4FsHEvfWk(&H> zhG2^hQ_LX#b9EK0-ad0c-;74efqUt8Jt6pjcoNn#Sb&9#m7F{GXNHmB`SSI9F`uSJ zc;M(lSi-JAe@Lw^6sc>BG%)%H6)&~>yKkMo%Oh=_5jKy_4aIvzt%KR4+X9*X2aO^( zP@AKpG~ZwHtlEEO0DzVkJy#^gb@KS@F?csYV@ZP(AoTpltz#ZQDRtDa`NEXf|C(*G zhE=n-K4x;9#~^;Farycv29(UTf%ZSRE|l2BVGw8ZNxA8`ad5qf$grjPsJc2B%Qvf&vYuaNC?^(|}!^$#rW*mQ>N7G}R^bBCmLd32|g2UvE#sb07B`LXs> zlp4cyPl5&N^vWRRIpj|!l@%{cU_nQX!X?2>sa=)b2vDZqS_-BcaVhU>LX|SwT|G0m zO~h3z8^>ZTf5=3NAO4X()EjnM z9LPWtfHEEVdp@))X+$m=^6_qGE=}sNI*VDCZ{s%B5L}%E6jnUi847Pq-Ghvzif=YH zaSA4>PPFHmDi|{o*W+3Fw5r^2IQnZ9)c?&JlUuGeFPOZ2E9QpH-c!UhZNSAGQdNg} zOGiZ;Ot(&-2B`*P0mY^s zG*ObuZ4+*A6L2GQ1tM1-=wnc5>W&_-8A8Pxg?ofqd#a6~w)9Z@ zyO`rdb&96q!&PkO>83B;;x%dNlp>$SoNG)rnWRpJr15nV-LY+D2R4Ewp-;Rbnd(n* zrP5qG%6=iFHC5Rqpaz<6u}0yYShHfziz2KQmVID8b=0md9IX#B>vxiaJqizkB+HAS zzR+%O%*$jtuwKHLi6}lJaBc7;igaVb&ihALJiD_!M>1V-i~F+tXXVHandAeq{e1=F zVJ@{$6~aJaMA27c@!JM}o>i0P{os*R_Nx6pY!PjtiuJGV2NZ%m`5{1d(HYu?jYs?5 zJL}E6CPmbanIHP@x#u#xdV)`v7LWbKx_;d3g4~*AI-BLWsNTY%eTcctR?%){T%$9dFF z1_DkWS#3s5Vm6;=FbpPG%3to-MhPGGUb$f2t=tcZoUAwa_6~%mZky1)auS5G%-THm zPZ97b6smt-LTXdYrY+rD&+22~nP z>|0*Y1!P>M>wd%Jlkd5!b(f9%S)^(r56=RB9FqljNNdldxypJonL-^ zwcj^v6D;G6t4r;J{rpvFr;rcg17|NduIT%>P2qFuA7C^KciUTYiqrUpE|D^ z(fDQDktJj4Q6_7G%4-(o*bIeE)lTi!K5lGUNh!$Bv83p$;kjUZC-P zckf`-&7pbb7hyGI{mS;=eB#4q$pyhuo4o-!SF+D-@f-5I zK_2_}@04dy^7Lx*rdoAu1R^#I(22Q;%9eB)f6;>+J@tsFH!CSm9Y(!R!4rZ7xy@4uHO+Ns=i z&#D6wekzbrm}hA!RupNp8vUyi8JyK)h>$0dFUY>hDOcq+9i=?suLshsIG?tMnj~t| zj#dR3sU`WSJQ8Y@e2MaN5+4=O4xroTzZ63lK!7m}v!*^P1@}YQM&>KzN_0dhvlPD}jFb9!9F9 zF79&(U1EZZEFqeeK0L-RyD7ip<7b996tKg&YktuYKeX0o+8wHVHJD)~ee!E+J7ihF z*MXS=&zlAmuH{o81I9jz<%e9RxL>s_RYt!}7q$z4ydARsdP`nt%pXVMxO@4?V}FXz zCL;W?q;lOx}JzHSMOeO)jIf0)b)kkl!*7T?;mZStx9R+4v#An) z!1wY`>&8J4u3NRHlX&^_fa^7L^_`w@sucG9D!1*o2oft-{f#p#9hKDd^$fPc$a!67 ztVyo~v(-SfQBJJq9fi*t*-(hS*hI_ESDX3|qK!~41$G*^Qa7m>w12(SJ5D7|Jqz&x zAP*06{CO&&L#=8@69aFPNlYrcrYwvjYE3GNtF$sf?MP*Pfo+?><8h0P72KXZIHzG?#tx!s4`u)K{dTph?e{pAs4AH3O2z&KxWMF&l|55 z^{QCI)QMD6lrY;G>s}!_(1a>tkaAwZPfS-Sk;P_n1#4 zO!Qk_vVqJmiITP*aFq}T`wScx;naR2H$Zgj{ikw2r_hUyaH#G;}TRvoj2Hj%;m7Nvdz>Ww& zS)B17+S8WTsgJtQ+~4$F-YrV%w95FN6{;JtWM>smG|w^2Ezth7`&b<2)QJrew~RV; z`P_Jc(6-kxg-iGza1krs>`L0)p-Cv}((odVj9dBIdtJiNJ) z^ND(ut8gjziwXS3+kXaCu0P05&~)MWW$-!I=)T9#IW_w5YK)yFRT?=*U{>cJ(*X6f zKR$+U9&xp=dW()PnKg?j;&GdAqWg#xBpPwps$hw~bbDT}Vw>;f7lTBkqp2&_eFRMd z=dyze*{|=-TopF|ofO!vhn?`_v?0z$vdr!Odoa*;oL0cI#X;ErX9P++H#1xCmSETOhOhq9^OxqkD+5$|XC)T;HM(u?BX!2` zPhQlFQ;J^{N+Q`E>@uG_!yxb5p%(MW_4w|{S~V_n1=!Oi@=c6DpW;xKyx|;?>5tT$iS0H=v4g| z&#_~qluMEB`D^+;+quV`tToHUX$d4u4IjTftFpdH_Aym+a9{HhKFqK9>)Hd;4dHK9 zp_{B5|CvLOd!~FRF|4#5n&r*Abs8s^Yc=?xptE1y<;_{1R2-Tobg7nKyq;mA`>3+k zet8P#e8>OP|Dv8-fedyMlLnM6m z0*k$k(0BnT@$Eo^+E48PFEC$)SZoCX{j>Iz6M(j$-%SkRq0596OtQOwBKMBnD!t_+ zf~aa2o^N8mF9*HUv;WqCk^e|%$iD;XN+xw*LcbVXStH~fH{*JR@kv3~fE|bS`t^$c zPFf+g0soUrj7ymI;D9{P3JURNhoT#eM0Fs~z;-?u)MnX-NnwC{(zy{I37P(O9X}&S zAfalA+H+^!9%6a+-C&X^HqPn@^Di_~1CNI8!6OG%!95?RZ#p(0d^4X1W6(DB* zrmZa(WB0frLuh8LKC#Ob(R~W<3L){|aULf^TtVd_z5{%*y0ekHSor{n0-E{G^-N301Y1`{nVEVtc^ zC#PkO^J~vPWVw9xAl_(r>3MC9CDVR*vol>7p&}wcf;+?2cHb$IUZo*L+tD2Fd5n!- z+{g^fFy`A5wEK;p2I}`K3=%4@1urd%p*rAOAwYkB+)w7Vt-dd3#oK=uVDmUo1zcMz zQPr|b>?e-27zGS=wOFLTw0B1MZBGKkkQt(k6K>emT5l#>p36a#L1;Evz@0WRg?~3T zUQ*gMkD`J48|}NO7G-)EHv@VnhmsBbFi+2txO+1f4b-0BSvs<5z1>EyNenqqB4v5& zbrmhP{vCah1ZgX)Lh59Z=+Znvz!XHCAOwCK%H1osa%CTN0W0MwGC6Uy&d}+zi5iYL z_R202K0`R4-YZvn8t3S5N@R}_* zw)r%$E5&jB08&fvb?As;WHxm&4p*8nP?=*82{Mxn zr%Bem`1-*3m0EX=YHMMa-jlxhUqJf(=@4YBzn?w@xi*KJQoQ6Z1#S{|FA)%{yF1In*HJKI$6y%NujOV|;sm#87KQ6V6h32T7#WWt&r~wqtHD&)D&up< zUq^IAaIvLbJ-DFmg=cvI*Op3t+gMzK;AAf5U&Tg^U%;(5BNsYa)Vr0<2QS@@;6#k8 z-cHVi+g~N-x!a2xF1MF$E85gL0tt%L3Asbq zsBfE3%d6Ar$<8MMp3q}j`0wQMcl(U0jn@x~6W8Y@5?R+*orCa_tGx$Y^@-I+aAWN) zt2AK_Vt}Cn;X;SqA1Z;sfbY*pA@ivpr0cQr(R&xG$FR`onH6?ZmsZ5uMk3K$46e@svbL;36P? zB9{7IXDA9t~QDjkoZ($FP{e)BvsbZ!BpWL_ak_nrES?w zl}VyalzpUxt}_blF@GuO*DqsHF|SMVeJLN8_*n+ko4niAX7ox5R&=X5b72d-X~Vr$ zsMH4&cMSP(YY|A-YPASreS#HuHeJMgV5Ds%9uTH+h5E`RcW*oLpsrrMKN5N9vbk?{ zxkw#;e-$b;M(nbWUdk94SNw(*3hB=h_X=u6^fGg>d#X;C>JN)l0nbhnL-L>h?J=2J z_4-4iMnO$(bt@SZ1JVzxy$TRzBedBeAh7-} z>WFB`2QA^bxgUoUbA3l3!f9tL_0uQ{24gN>Tn}*CtR_6!L&IrQPs1|f7}^v)Z`GN& zNDOcU(4?9$E4SnP${Sj&WF?&7&u5j8ej`qjXzEVqLTXa122Eo0XtV$Fa%V3>ou_Z$ z#e&L@Mepr1&s;2nsD_5~mW>1G<~E?Ym)d`xKrt57Jw|V#9jY=f7Zb^YE^l>XkV-ZI zob6WT%fCg;dp>3Yo@>rUjvTLljon8K@E^{~f0+$=h(J1d)Vo7(Tiwy?9OLx=JkTyT zt1OS2P_~YK74WSus}-oQd*i^+PoFx5o-6kIQke#D-Vv0?>>C9cj2+jfqar>24{7fm z4(I!>{gM!gs1YPFN}>}4(HVpoT|^585xw``B7`7%??KdI^xla!dhgv3qmPVU_LJ{# z{noMHckN@Xz2E)UFdWR>&og(quJb%UR@1sY8eQx~?2xx7!Wet66rzVt(nE&ObfRyM zFFIhEAA05v{F2g$#0o{#>IFR=-`_jT0BKXdwpDqwVys@Iz9d{Hr2RmSiECVvAJgUV zo_hVmuNx2aA3-nct29u#d;E94LS4XZb1If0L@P}HT1}*f{H3h1ngN%M-153JWJCU9 zC)PJzbpsXmR`)B=OLdKp4EE>U1gwEc}g&+*Y85<+kLVtM6u%t9`{9)D>3}z7JMlMJx|vi^SOihu?&7pgLJzlUOqlKBAK4Z z%FaHb{!qMUCg)qgi_!|x)!+2OA9|*TTS2-TqoJdXuiJh-fB_--umtih2Nw^SR{tEx zt&Q(Zm)|vO?D9xV!KuI_J=I79+gg=}o!jctA6l=M67Nht;B8f<*wWbSU*I1lbxTxp zCyFCv;R?Mg`VMflRoY2196axAJ+0PyqWe`_9Ie6BIp8gt^TStLbuircLv{E)n|$hL zGYyJSgztRYnoLGygmcqbs06Nlw7Zsn7IE67$Y8p!Kkoi(^bJJyP6HM^hiBcmP0x== z$|~98#^R6KRJtY{?YHGAyKA#9I;QuqO#mKe-Qug0(I2}4Z{oRX<2}ycVTw`~D#Zu-KK*JBBI@ zm8=GxRpGCyR2$JYE@#`TTBmlBg*$fnV7G>kh3+peBmwMXR1w#Yf3TBbIZf>v9xL^y zD{ZuZmx$vuR)q$Os0n($K~J0Uncd)6-IstqD8L(`cOK`Y(lV6^%k-Xn8|rf{UcDbD zb+81B(2)_k^7cpM-O)1al1jqYpr>n7QiBsmd7IaYZ;lKkjm&k93qcZ)BY?ZMPQjK;nZ_e$-^+NpO+26pDefNI4VTFtiJp;#vJG%59X%T zAh;n0;TNM#*N(JQKA5tA6Fyq^h^*ePZeWWJQG*vXSTCQ&JqB^~z_DlIWdmm=fD``` z^7P|L8t$fo!_+XYV8?b7JI!mP@sTBP1JCxkr5OTB%q+1bi!xBx_E%3At2tTN#5N)| zL;l;l-ZgYOanp-N+?|wWW7XZbbt2_&hor#D-;?K=DK~$=LWv2u?xET$%hVT~facj^ zPz9r#Cmih2!xjmJGcpQL>UE9)W!hI${Tcju!nFE_+&H7}m&3=4(DWT6Zp*iywvJNx zmxh3CJ*}{rk=f*6v#E|jV&3bY^Py4{uYgj81@ zQ>l|M0f6dR@(D~`1zn=rwrX)MOdH|Toem#gPrOI)f}aQ^iYTi1+ZK=Z;^Z!_)F{<_ z`y!=Ow(wJugSmXS1-`_u(krRGW>{Q@f|)_CK57Jkdd} z>hrPL^GBpw%6>-1W+NRVmFr3uPm<9@7iH)9K|Gb~`5yfk7 zQv!N&YmcIRB{obHKgZuRtZ$Ovz$1PKXM3Wc&0+F#U`AF=OBws_RhrIZz4OIOKW2S} z-&g&4HU+U(QA4QW-N{)}Ew-5C0RvptXF-}C%4vTZwd?E)_0013@*JUGySWf$XnB|1 zy=AXU57$MP_AiW^9qhEq_(0mvc~YsGekzJjasIv(>?C3?UU0te$&i!0&<&ul08o_e z-&I3*BDdC78M48iF;y0DEa$W9)y8~5C^qsS;xn`*PHhvBpXNnLe7-=B_fF`ihTR5? zla2Uhr0$H)JPO#U!Z3_ChH|h0hCPw3m@y%qk8zuwc0M=m;P`D7nVf+9#QU^3eQ%6W z@@v|p$J7oJBg}W{GqV-pWje0bcX!85?lk&5Ny`gZAFAt84$bZCHxnXzc&hMN8ytwV zWoZm}BAaGE;m_~bISB+ixOJYrJ?c%Q5&Vh`G77$?=)=*n_-dU=8k@>E$ut=>iz;?D zgy&}IeH~rS{l`&(o)6i4=MdVXT3#iYv;~8h|K5;vm=0e*O+gU(q=_uY=HyoRTU+c* z6xv>#HVet&^e7wSzmy##H8ng*qM_!P4S2+w@=ZpcE{5;nV@3NjYS^IN45h)XIo>-C zH=7g*njn6ERqo~QpsT>bC`sePzvYo>LeeEm(|LaAg|&qM#x*zg&3;FM)o}Q8>P>2@ zyc=NZ`94%X1{4aR9EoCjNv?oW?aAM>>8@_N_}d9Hma6`|F*yHMK((wk_)_E9CO*&j z1Z`NzQEcSi3+6LxyM)pYj6-?{%r8YR)xHi70;m4!{vmO&9JX?&ES?~gGJo6!h`K0| z52NHFRJR#jYqgnm#as=i5W$?_u0-l}-ya{s=QPvOpO*SDN5E#W@{LzZ?&oOPvghj!P@X9l%>+w$m?7<=|QVv zZ3OJugTeXkkjFk}?R(bzRO83g-kt2FuNT(~ge}J8E2s76lc?QZn(<%7ib6i5{22`9 zq;E|%w{J66KK+%`$Y9-lx=w2fLiKQsH^oF<&Qcl;kW;3Ayo5CIo+(q$6jp0^$bKHL z)y<3r}1tVB(fG-~72E!X<{_6#Q5S~?kUF>&km^WM7x zY0b)h$^3OssPCBg!S5I@`+1p~J&sU}2HgD_8~IY=TndkPpO2%@UC1KiA##P)Z&IzI_-4d*-DSf-sKs2L5!aVJc{Mag& z+{YCO9DFdr&tPKjU#`A@q%+z%CGT;v<$igkWDg;E@*%;~t&8s+HF9DUUq?>#3z$e9 zYh&6WBpXFeB(2b6g(5wZBCfj#5!+pkgYfFj-LQQOZMtqZYkg2ZxScm-CGj)0h!r=ewG! zetv+CX~2UC#mi9JVZA)e8T@y;aci_{%$A4v1lcEWg!zny*AGYSj1!1xMZp%lN2#5p zA%CUovql1$(cc2C&lGV%!-GL@Da;(~$8KU2q`+m?9&6EyoXRzh@e~llaN(aGZ#@Xr z48p;cN}+^gg0gpxDRF4apXB+@&Iu{{bpB4Zo4aQ4q%Y+O z6ht4MoKW-2Wt87Dlzkg-_1C}Zm^C@R+~lNYyZ9&YCn1=swq2ySzvV>mPoJ9Eg-occ zht2ox2V`2nookRC$GYJv8xn_BAfCb% zv;(Uw=D6!C9NTI+`K(gE#cKQG^~EntyYty>f|&>x3OyW`!1opJpac8Tz-bEC?Xsp3 z@u-PlSJk{7^A>!T1MwWen zT%pMVy<9uVKm8BAH{GLOy?b{nyw5in_D!-BfJ)ZZq``<@J&`?BH6w+OUq z{Xhmt6#^wFZT-THP6dyGUApt4NQ9P7v(|aOyK4_@*@#vVLuU()Ax*0_U>P$$>us>@e&=wsf~1fY_P^O~~pTl(0-=yMjkt^i64 zV{DxW&{$lorVe~VRmPVS9iJJct6%i+^iX5z0;_E+=Yq}v^A>#mIiY7C|28&~pyVzi zo7xVs9~Kmh$ZQg{|Akd1DGV0ge#8}r(n?0^k z8p>!Kv2L_cn*CZ=LM_pN*;_E=n&(^)6-b8-aYjPN&aJhoEv@N?#3uK$B~^tqh7!%6 zH11CH-jq2p1TSwKXEg4aE3LYv5#KccY3YWpUjY$Sj}&WM;zJ!5AiJ_eF1|_<_Z?z^ zDKP>jEn-Tlav)U@&&_%_JV3a|HLdk{RO{)ue-a@_L~c)-s~Vl(Qt8$oVV<%D-I2oU z{k*}Y!M%@|)%@iXik<_96El(_Hv!l0&X)?ipu{@6EGucNqxcx76a^+55#U zb7!_ighmiojvl`xa*{AOFi}mOz1d z`dw~1GW>#|oI*|W;&1b~ei`Vu7;fQLM914LbecrK^imV<;WYuL!wsseVfNTTkB5u^ zb2MyVQ0WYLit~7hIo!DE4h{$B){DfWYq7|t1iJp_*&JlVi8HwX7wz^djEVmqt#+MJ zbdWwBoY64!#sXz-dYFc?5UU5t5mH61JKWUt>6moHY!VH$Bht*&M)g%h0`K=)7U0Czi9&bPo!{ml+*@&t^f>6P$aa-H?#jzgcE&;nG|gGtl^nzFBMVY_IES!u_1}U(c7m4l-02 zlh~_YBs0^RhWRBP=zyOCWrczQr(0;;MBYerZ`0?@<3d2?9a>hK>4SE_n+4F*JJbDj ztd+kjfGU62!wKySm8hYO)B4g(4z51G*zY-g%x9N*l7g>B!cvLguIN5kgz( z+pcq7wH>ne$l%##`U9Rx&&c%HDK&TEYRjbw^rb_`1Wt>m)2d$tPY;d9XK8tT8_qhE z;j-E*a;?(yj8e6hQQ=~pj@xI|uwCy*S0x{kbXTf$l2ntj>DwZ418}@AKF@r9zImJ9 z;u>d>?=QNaQ6?&_vuG+BO`=}a`{TWQR-$oD9s^f1xzeGjok zRn1O}(+K&+fYjc6u*YTUF0J2S5GsCHWSpTT6m^euuWNZ$l-de$1(dvyXKTMX`$+82%c*-&BbN1h5 z@kIK|w;;|ocFa$k&IFxStMFgl=a4U89SUiS>FN)AugJ1g56&sGc`ss^kB}G>%gY$@ zNL2RH4*vZk6!~|KJ%|_7m z4R+5_rOJ-!2@o4ckT*pY@do{6Kf$!k7f{bBo}-)IhllU?mE$y#`6i2Y4n$*XgP+q5 zC$_i!`hwfJl;6b!LKhmb=`Rv54ikM6bVcsi_2j=%V(Sm0=n;%icyM7%HfhWLlupn0 z=7DDBDfn6RhW#cRLd2tqU}%QX{a|m4sfzs!I&#S}-eSYvDA<;V11R73x*@uyh?aDVPL~siMJ>|{hV0fJHNHYsnl+yg+6bsc{f!@QC8A|4E@%7cg4C$lrr-G^%Mz+++f!7C5As_NJE^@@b ztE4#xGJS{s?tBw&shi60wfD@dbN{xV>)YGpO&>8g{X;u#xs$&d{;TM7CiEyg8{C-* zP+x>oepp=<46o?qIOkQKFP=`(0WV|tUClppvd26m?-ZDmdE#U3nue%P;_AOm1^w0^ z#!w|q-pe}@SE)q(`Q6YO4lZrrUJ{h=zWpOI6WA;Zf;LCNpf6ZCqri$IX2~FOef20S z9|y}MQIkBqHt=~}z}_gPh(5v#;<96&j%5$J!PIKfq6U1i+in8C0$kB=QMSd}BB z&ypEVhVS{t)RYX}6U0Vy%Hig=Yjzd>b$iW~U$>O(mT%zoS(uq+`UdL8#odU95D1@7 z&z!CUH3%h_r&}y5ZBAp{#Q=jVU6SH9-V>bSrcRtJj@J@9IO+?TV6%hQ|3{yfd28iW zq}Y()_A9k{p_cdtvZ%Yk)^lfZg?@D!)!P}1C$&}dGT|yzJ|ZFR^oXRhWBg?CdBrrI zPouxkdewz$MnvUGshW?T7N>UqfYuKxrt)j-4i;;}7}sE&m#i|Q(DM@1?TJ~!d7*S# z!ZI^g;M3p)q(}U4>&4R0>HhPG6C4`sAOfmAK9vrif7%oB?_Tt$z8Wt0IRza3J}r%g zITe?ihk#tTR0%z5Gr4w1px7-iY3zL;8EcN;i;*pHCn;x3A6`1qg8Gz6Sf+{{cN|HNJ8@{@mmI zI$y0Xq&VsF$l!xb6Zy+v!OF_b-g}>oB7SdFL@8N{q_jlp*MeiR}ytvjFaVvaZ zAM^Z0UQ2-XT@=UhKKZYw6ur6oY@G+s0I{Xg`o>c`O7Kt(eBFgg8>TUnWpQ`hq;Rlw4$3%j=F;ymXF8U8i_%1wo&Q?~ zfOQ~t*BW3Xf>{zQj>TElcqj%S$l^fSt{KkVDkNJPFQ&^I1JXgeI3_RhS+e03^c&xg z_jwZgA}t{y4LW++-_{5&x283~ITsBj*;aO8+Ns>|Sp_D!%hTpQ#j|s_bALTE zwSbsmF8G`sMMW+FR5C~&n!8?ryqneP$W*-if!fN+N&px20Q^^6%bwP*<8Nn zX3J&Ot4=)dr*4%bQ#{^5H``D2ZEr-(f4ei8|Rv$*LNW&Ssc$iD>=p$n|ztL|; z#1B#MVnU&IhL=A@zWWioP~^dT+ySHQKc4S%?Y-VjfDQRJRrK|1HKOX4_m8k$U=&J> z*&Y0>IjqJxIh3b0UiuX$i{;vPd4DY1Jd*qvA*TF8J9f`H_{mj%hLlR}CF3A=xYaJhd&P0QdB^t=>qXDcMQeS% zW%pHzLftGUpifNmXaD-h6RzDn1e#fY&*gEI;Y#Rzwmsbfsp%s1d1PqrGh>q0)gcpb z&t=yOy-m5SqTn`IGMvQxOFQm??;LrwG9b)}AjH>zX_iy5+Sc#j8sN>ms`3pbmHP>o zrc$NT`NrLe;a{D56AhvI7&#|t$I(Zb5dCDF(4N{fDVcrV>A1!#vjaC+DKB?~nd(WsB z$O?e(={{DJKVGEe`y)44GreQ$GvzJB!_9LC_gbIUdcSd9^f=Y}o^I_v?M~XjFWSR1 zr-M8ngG6-$AZ=#`^7xEPvC%PE#^>Jjv%+zpWnJyl5%-THm?ZDo_)Y4boi>x`wSC7B z`PtFSh$c>IqkPk{&(5}`H2yFAQVvr+uG5Ff5ZeNeSik1bl-8|Ci?rxBdzO4JM?K>o zwvSs2%ji8o(0zv@RTrjTVSM)XvMPQrEWWmSzij*B!s+HyG8xoLkRr|~)@?xeHmQV5;GqkFHTInWJ;mRm5 zs8HxvVrPFO4XFSMx4h3pg3C2pP`YVKa=E5_A^vo2Mihs zgvf_`?xu~N)k<%ZE14~4sL&bj^NkXxl-$f~8^u(^52&pkZUcu`C1&PKBv&i<%#{{@ zBL56L!i6ZQ)jmWoxPbk@YDs7Yg>eHPyUf{qID`s*wY_yMxijf`yl7bAF)l8zNvBFm zzB>)i-kvD*OuJ0b?Vd^k`Zmf7{#Ji2#AGU*-`0OBD5jNlS1l9gm;J&NIXfpOs3g@* z?UwggR$iZw4{Dp)vQzO)C0AQ92)m`DEACa-i{|(ZGG}rQ#_8!FJ~7MSXw?wZBQ-e# zl1iBl33-V)`j6TCIP?s=zr~7J*@_WG3N;f`gZbO}ms0;x{BKOsr(XWYl2VvSDM0IF zd-xJw-i?U28i3gmlrs;eJMT)aE!5_RU(9~X^^tQE)S?@e;p468$9EG zm;OAW$a)}?$0WgDbBpi5X9M%|{G$ulC7scQXeRt>w#wn9d+ZLulOT$8ycUPrLRDT0 zx)3k7K~$%}4MY>P-*iCkg@B57$^pK*FC_xZ7CxdY`jtx$0x@%`QiEhZ%T8rvv9n{3 zvd}&cA{?(q@ltl+f|K{2mFG+C&-B9aIg z3hXzXpB89UeEx0d&5`PiPPguH)6cAZAO)_~Y?m!ZIotMf)KU3+*HZ^A?b?Q&&D*4M z@heOI#K9LhQ+2x+JxYI-(c-=So6Xbvao}@nr?J^uR*Qm~Xl1kT7d!b*P=64aiNk(a ztnx`rEXxNozpZ%i33YqWbUN~v+L8zkx=wpas(A>VRB+ILSIJBWH>P@gIv;`Hy^9>kG6VG``fMa08~i(txhM ziLu!s&Op^NVz7c!qaP|on@Z8s;Q}K|ikk#}m)?MlkmiX@EYEC!KjKGv$b%g7{#_eGIvSBZKG0k(fwo z&>FNWvg*rz!MGP3ZP4H>QRrqM71?NCCA7Q3&x2(NDrJopruB9FJgWEW=*ySD z>SGP!WL^_3${}=<8(V+GQ1#AK@awg4oe(Z3eLh9^-A}CoNbbL zJ&8m|T(88IUXNHWLDrnz3IvVTp_lPZR-pi0E=#rXQE)rY7`!Hau|m4cOo}9IYq;sm z@S`r8{o^BfW+A`02j9l<4VTLkm(K!)-ZHrl$34&o5k3AL3tl?a3#s9jseA-C+!#Ck z<0Z~(kJ)U@e^iJ6Qm>|C!Q+;F^A8y@Ut|Biuepbr=;2vv(AyB_ckln^6GdJ01zKov zZv8!~&-e>YsXA{Fs{IMfWl;g#H>3o7atwJo_DUsmo z8tT{;hTigdtRYxz{!rZ4SvxfuH#`B#`jL2?z(OvnZyB*&jkb8Tydu3&?Q73!>%|a! zUP)!8r{Fa_s^{eesQ9q-&ItiUv6&~76BK+GkFQKnd?X*}0Cy{x>^dF#@jP@gNQH?6 zNFypJMSXw@!F?E+ODZ(^Ab(4l{FNj5c}NYWa&N&82+u zmB-f4`LYI+_Mjd*y@2i?l4oy|BRPGE@^-J)#Q=~f;mZ$ok`dkdW~eDvXk=dym~3Hs z`NJn+=K|{!8#O-8V7K{!WY}Q-T2+HRse(-x-W5~xb-O(k^1HbiE#b5HmHRZVARWyu z4fi|JkGrzI*E@pX_AeB04Xw#duUX=iljFX6$}pB?#K@(8u}5=n-8)zVS&bwbXB;%? zigv*1e5h?TSb2MfY|j3JuZHIATJVo3IRl~lO-|XB8;?8aK9+0} zJ$U1U3JFdM!jMhR%(^GxJ7zT>lnZS93PIizsbnhLiIFZ~EaFq%Yofhcxd0C*-!7sJ z#`9d9r0iL~P>)6ezdSt%S?hiH_^Xr&d`~{}XaLJhXD|PJTXC5%xM#lfz$9I3ezzGW zwihL2jS_`qDB)V<7w-+ZX4uUDE5a62_$TEVU*Su!N^3M?ZDAVl5T%lNEm{ibyYAQJ zTTEsrm+%bRRsC5%@cKizOb4bbp%+}JcS||`^?<6Un;(}MQ_jgP4?@uTZ0gN3E15`b z(lsr+Q7%(cHJqO-LUzguOOpF9d?(=V=i|7|unWYgwY;}kR@R9~4#)4Z;1P?z{Y?7| z4ZW2{Lp`VSRgUY6N^=m%qB_71Moie$jLv!xQ;JsildSfxpT4L^YcO}Mlr_E_+^dgO)^F>!VElrH8o@el7$ZrHcvLO*6q=?P3N3EZ1C8c1Xs*Af06dN9^9wP$?4g@twvwTQ*Hdy((KrthHL2EqjI{77bjVR(Ac8$ zP2L0)LDDJ(`ZlRmu_DQ+*atLZaexxD3?j5{kJwP*Z;NKt)hc9oXd6~yWXfMvzZT@v zqWENi1Jdah#Zrq!W=RY_N*K)n=nm}J3RPGUFQq@WKNU8A&k~(|$Vp)HoYE-r_eUp4 zgB$zZbzyXioIp7W9Wlme~tUoyFsO*PB~(zolTL9ut-X&tcd)2-@yVY2-ruS_^!RIoJ ziEW@qP{k)$8HQstSYx20Kf6T!z1b#P(YFA6Qo>4XiVC5=kewIFr`;ZcUp_uuDeDgo zzv<$pAedrcdr%=!ZMl}F>dRZ{ess@bSn@+Iv-qxH)yo0cM*rNurkLWJdNBP)!Y@zx znTrHI|>jIZbU%%%`E^EEYMdVeB?j(Lfu)TegU#x9D|*)`a>Qt1+mk(6zx`KIAT zQ*wNZcCL6r)WxnP9kKZDC%wvX-W-XP^yl_f>(z@^DAC7;^UV&Fo3Yb(5Zhs=udjsi zaz_*<-)RjPkgG8KT+qHf=aT0gM#hz*#_`O`4h87QiyHT8QU`DTjH@`93h9B*MvuN4 zm4_tr!#7B6;$Qo^5d^W0b1_+?BwH@9 z9f>)SMLFo0mtm!+I&e%@S{332q4=R3y}?cqnnmsWXFFcvYr&ry5eyvm#DrJSr}D(a zx$(wL@Rb~0x;8rUI^=!TprT@!s705SNgcC+Mg3Mzd|NpgZaZEajW@ck;m18J6^oVJ z^9|KJPqql4mJDWfPaNUc% z58`F9NsjgiusFr z>7BT<8?<{l!$;u*05LZ2%}$CPNA5;aHEb*x?QsJ6H)hGPUdtJUXZK6Lar}sY)%NaV z6kot7%7sZU-`n~FMM?ziyPx{T{*P)T0Qt`sZx> zSGs8Otkx$T`0$L`#GMjsAeN65dqGmk1HV45Yn+oEfA2#2X=WDY6z(SNci+0Rk= z_ggLwqKCz9JO#}i86#n9K*BIq)kdLI{#b0ONy?NLYiPe#`r!k0@XtQTz1It!wC`x* z3WM=HGd(yF67N-I}M_#caj zrQ`3=cC)2As<%w}!@#2PcZts7-u2Zh z2X8+HtZ~Z6CLBB54HrKx6gc7IZztWbyVG)b0yC zCdcpl|6IfFJJRACEWcYo5O-M-HPsgl(*NT3U{|-L@a=5euj3lHybDQ^YaN={EiRSL z!t;%}zeD<$^Yf0M1IV02Y&wNiMZA0mr2x-3qbI+6vB#v#t&ELqS=zKE*B`=Mb3oVGXtN~u?TfcIcNXUakR!JNd%nm5$z%|r1L zD))=1s4Pcyun8OO0^Rw_=Z8LpPC9Ryv%k`~9=0%$eVna`-;{IExi%l^4ZQlzGK%d8@KPcp?BUXmkF+@4+DZ zr++R~pAH?0H?H`aemfdh9`+Z;WZ}aTt^e;){ZAOvzn>^8)LFTXgjg48M53twMQRFP zymK~O@9Q%`xh#Bj(yR5Cff-wj15voTc>H6PCR1#Xnb=Q4Ae#;7I^&tzaEJpW-&l(n3aeN#_f=U_S*x3$K=QExa;3+cpzcEBgfc3 z?owhI9I#G%BOYP>QpbAUp|0A@CdC)XhQp;H8{XBd`Jr@#ofy%M`+7M(Cny{0!B(Of z=grrG(4v8AaB7*WM=+GM$me*+CwS51CBVGTqFj+i_JATGR6z&n_%#y@Y*dcg)y^lL zg1WY7-ethOr6wlFaQB-U=!mIS zGZ5Q9U(v-Y_=|!>bwYF;>eg=aBeLZ2;QeYAm?F^$3l)cYt)-3aW~~+!K#ys;xbxfP*ylnPr)$#=w{m<{$QVlzJYA>uUqR}EcUJ7}%6L-e&uwXK38&$6Ul zz6C=5@6fM*4M=bI9V5TA7(&lLs(;hK{@;z%e*(n%bR@1%4zuX@w)}#JsUr$eRKM2> zZqqmYAJWjG4{tk(Nk({@i>wjqE&6?TCvKy@mEa$0%&DW>gK5!N@vu`w01qJ41HLSc zW~x^KD*0zv&`GoR7WH>}w{p&OD7CokCr{O4LVkRI$C zD!1XUG~QdYDKqzr0c@WD`U5BvFel_o6B&NeTmH;e2S zTzH@4scE>}n!4JVUQAC0eSZG&{*ycZ?SsUk4BexR(X-%(=dl`nt%0e9S1L#g$E@~6 z^&2J+6v^BsL&+GO`U_fSc`)*caDK_AoE5V@+_g~4XYL)|!^DR{uW3yl=ST@*eisz9 z(6B;?RmD@7RMHcsJ#GWR{ME9f zRKXjwUB*J3;TgmalJz-?JO)}2E4TV=tf%^?LK!Va6>9#nTnqGb)p%EVV?CKMHr3k= zO2%8^B}-brKuNg!?CAfG7xmA3Dp0$R<1JJdj9jCgdICTplhmOV}NbfN% zB`exq`iW6-9DQ?T$#NdmF9lzuyb!&|AyZZv^e2X+F*4?**1EzEu{HKAsZgYhWkq6h zMFrteZO`UZ(^2Ti%x6b-q*|DmvYh|A!mqq{+t}wdQ@4wN>vY& z<53L}qP14-rZewU?N<+W{fUtkvmhTs>FxzLRE;-H<#a-PCWUXY1JaI?|A+hTzk9|1 z`kBik|Ib|c&<>r!+lR{Uv#ub55qyJwKj&9UwGS zdtbUQ?`OF}MoratP0XK~kJm*?N!6CI*in#7&&lzcjp~xA====&3t5-T9y6u$p4t## zWG6`OV0Jjvq%sCefbU+0-hWv+FxF6ErMjDe>HGhFj}%PaCvm9$l<0_joDkr5pNX&Q zwv+39fnQxTa?^lfopxc>g6-zHN?Z#!5voc*X0`*1jf}vEB%6hnfXyO~-bE)!4gH(W zK~V=mZv3a3c#gtH+Q#0{f(l`t?*hUwyo0+|XYerW3Ru`c^a@JXv!FJ=&hx3?P<^n% zubR_X91-6eT_>AUzYTQ|^xYk+$?zuG9RvRXCxmyw{xKfO4F{_uKUQm ztD}68+p$JiJFFh~jQY=gmN?}TZhUy_6X??q z?q726`}gQO@tO|7DV8^X{U3}HC(f5|F#GM5(e`}$k}F9h*ZZKh)-Xr(NI+`7XUxFZ zG!I6KMhtw2Ly8$Dy{#hjk>d|wFThkmCd7Rt%V5{ckxFxxUP?K^L>}Fd=JU`S3)qd& zi!8t0uJe4t29!#SzREF5XzUsk!E~oZqZW~XI zPc>qh2=(S`I2Jcki;)+!4PlK336;=G*AiG)txmB4KOPUy}dUVl44Grgg02|F5ge=6`^Z9Sj( z+r{*a)ln$TOq4a?7ljDa!T*urrRfgkYcldBRGc=qBvWeevh#1K_Eaj|)dBJwl_ z!Yr6l&pBr2=M`-ITGvj}BRTq)-@(}?6FW)YQi^UYq=fd$b6rQ(sO2s^tKU*pmkI-J zvY8x?Y?Gg?kk^)0Y>AdsdjWIPz7F0$?3P=8HSr&#wNOG5*_c1)F>&`9^JEQsBUm^iOLP~;YIjdOx{1;bIa-9HjS>FG|44j z2-mtAueKQP7);}v7eoKr*>CSLaPk}KrJXEGU#V`CHk%};bps!MNfmMP-91atv6OTB zv)b4-)kVH^dDuUeDAd9hVw+}zcqU-GLbPayw|qLibnz?v$^i<`YiZKx&$A7`#vK1U z3n0Kn(`g6aqsgPvWKm1X&)$H5nw6BU=i5I2 zEF8o)bny9IGHFKQbfTG=GZlZqmT#)y-Z$rQ%yzTCu4!`a;vuQg!te4{bB%aV> zmBps>rkG(0Z##yA-9OY5J7ccC5j6^&^*`rZREDkTh2)pKPb;*WFd zE-Wk|7Efa|!q1;do0mmV$z5+{4!e%$af{Wyo6?81SdG5VM^Gd{)X2Jro#h$IzXn%lrP2U-zg$A?X)7s%gEL+vlu$X)fq?Oj$IP@_4)tz-HgNOBq|QDP*T za+MSn%r9DXxQhMNF_7NGbK^OLcBYDBPXn@~=y5p_od=D)hzX*1RaZGK%4zu-avBCU z0gbL_1-<@4_@|0%Vw@t25Q$RgAN5x#XowpRI`OW8+7wbp{4Vt4(7FW`YKi~0ddh!Z z5HY1%n(dM@EU0-B_{~9Dlep##K!$ST^@e`?AlvL=r4Xc#Oj^LQqp18}IWLZ}di_}Ex+`C)QsMc*& z2{SE5Qh)w^9<8(N@jXe51?7bnD7Vg5b{zSvF`u?>hS)SRVAx?iZ}_F<$Kx$7`%2TH zqhFIA$D56_fcrbwF8r9jY+nafx5Fu-s;|taD6l*3<&)X6w{Nz%=NPL;`86b(ic`EV zR&zG!az?F`^Y`3>Zz z0gVptwNCTf?hdyK)BHd`FlxT)$U!oah`X?kTCMM$w%Fgc9M+`8GAb5bovs-nWg7g8 z8aR?A$UIKEP8Yjwo5h)rfWI`S&7m;k5`QtMtzHUq!}CMhoe_=Z<|J6ik(qyXj65ZD%C!!f&eG|JrRc++A= zSP}YA*tKAbf4Nv&pKCntnp^>@=XcEn*HFl-O(RjGyf4W|t}Yp_y8IsHcjaJ9;ZUtx zD+9Nh{(8`-!R&c;b-Z2vYm#rec*}LEFc)TEkl&l8Yl4)qHJUyAooZ)V=Rd3*>(;Ak z)rS_bYYowD>|qlMZ{m`U86R%VEpCkzO4o3D`*+It(?)F^ttxiAH1Q3Ftp6t8%pWs! zn~;ARmKblUl&C~}rtsjkS^uiw+J|a20PzFj?p~q{ZTSI4J<&X4_Io5}KB64&h$Q2M z(Q_G|9I?hJiI5c68TBDr{-fZCi?v?7Q642H>0n|moJsM$!;k_$j`5?YY2uqnqV;bV z`9xXG5e9pzJ%Wd{7{<5SCRu*e;{0;Qqelv3mupWjrPrF@En*oT&c4;wXu&c`GfZ=S zT}mC#w#*%2C?X7NAdncZ8uiBxy_35lt2&o>vGrstv*vzHd1sP2%ttK~Ww5tG+b;ga z=4zZs)xdL&b(&|gD*@m4Y$T&5%Wn+$aY4A??HuF^n6soZ9bUvu3a$3!CQIWWx=L>-PB?>;UjY`2J>6NoIn%@w);B zFSrQm+u}yoxwqRvXX%7c)y3XKzg?%8+rFsV$!8IE#*#PAVsiJbqQKF_!30iCzh27h zH{9Y1=xJihd<{;~b6Xf76LKmUQ^|(iOhr+4T_OVU9JeQl0UNNnuI*u5)kQ~tz@n8M z;gOHoTJG(05wAxm@;8>((;l^Ttv74=j#A%z!kZ(VmIWCdX(fVDK?DC)kj8>heM!IUO`7qZZdBS`@~>tp zQ_nYuxoz()yZM~;3Gi6(K`EfaM*rQo9#TlpEDKwX1lUm`@sP` z`e(arA%%V7RX;nza$?@0?j=mdcPB54w^P1}oDVi=zyaZDY~60J+RoJHO3ZiJL^H%! zn8_X^N?(%;M*bX4r@ehC#yI%)@~(%A#z$w0TjKcBsEoX#;y1c|Lo@r{r@2Fd@*i{G zN~8ou61DSRn7cp25OME`IHwF`1w}{RK`~pQmwc2wLFu*~3s*L`=0wn~UnX~!14(#b zd9zpoQpM&Kn_w#uz`{4jrg2UhcQOm)i1vKMZYf<-8s_^8IKp!$-4o=wrXFhg#%xSR zbTybnzE(jYaF9NyV}vpsGUr2^5L*RX?qNLCWn{XVaGk(cHw+yA~;@JX*aa~v8ej)&hoyRCs89M+%< zWDH6~Nl7lsov;fGnd2SRkk*`lkQsgw$e%IN(1R)8Zkky>!Jf@^CF)vhFThEQak=_& zhA45iH+uG`0K)^8ZN}i!(1_Ka;dko3W4!u?89F-vHKE3KvbWH0vJQ*4JbwWK#TAJJXy zYDwOK{_CuKI)CDWJhWJjQ9^F1lyNe)C&Xp*I3yvQI1dp>qM$X&tG#Tw`>*2{vnH?$ zX>W&G;M63r9b=AqU*%4qw(F&78}})~!pP^g?Q3ZNBkFqz&?lrWu`uCH^zr`c;>pi^ zbBR&4B!THDVbEL;ku30lYn)iJNsD&qX4UGVY&ME};X@cP1SYK%@2P5vtPCB}&k&Tt zL#w!8WHHx8=69TfjqWf)RAp{i=s`Fd7Imp~7aKg)*xz+K+oh@#*iqC_M4}kx`$Wn6 zy+r)$p-asboAQAVE56G2}lJpVPJ#=d3BGEhKi~ycNV@&G)^Yy-32(>=$gUGQN;mp&1@L`ik zCBLaW;15>XSXLc~At{*as=>q<6^+XFEdcsQmjfK=wr>eynrcXmT4Tgcf9O-p(7J~% zKtF2{ODU~a#3gto!mzmwL`~P4$JI6v+$!^^c5qU>%m0V`i}=NgqpzWihm=x@%G9mV z^D5r2HH*G9Xi44PILK2zGw2|XaEYp3p<8jkHi@#= zda+vgxXr!uu2llLls)bCgmC_nla>my!iS1|DliG2aqzIzDPNAhhmC>=rrP~ zzWxDCb|@Mhg{=kYtFOe{EG;LMeZF{^KYVsSEzptuH&@gtEBkoZ?rPljG8wV`mVW%% zWb_A>`x1JUhZrC-on<_PKQ4J*u<^g&D|Nxv4JES5S=Uh=de2`Nrb*`FAawiHQdi2( z7wiC9-1nvfKoXs^K~mhq9m9;?{xi(&u;ks;om(02CiHlO^|ag$7R;Lz>JNTF$#TU6 z50(}_sxg#rn1TdR*FcfwW#!+3%8jjy=r(#a>w@{C;6d;S_wukazw`sNxr`&d z$eQ2Pv0kl1Q$Ew6f69)tLrCJ)_z`xzjVoEcIn|3Is^RkP_>r#JgEP0cM&Y~wv)ulZ z4eA!`pW?xST}p|pIpz9YwAkTY(tOcmOP5BbAiTQ8MsBuoH`ye~U}GW5zEE+La@|ST zM9P(1!@b^vRm&8$k#KW((qCFq*$+YulZQ3$PRrs|jV`VJZeRn~@SA<@<-jq=+gjta z@*{@(*tKR4qn{1+ljg)+ zPrJ7b*8)W?#v5S&o?65!A)x(cFM+iW9S7Lk2iTU^BW*vcly}DHe{SH1Zd~c2F6Kv}PZ1^c0<*KxU8(TPaW2)* zBe3^hw4qG=faxUQB+h!08JAyCArSpTj3Cj$O zEGMfcAjR;n-_mrXzr8rJI^UiyBwBQ-`a9@jp5Np$Q;u*NSbtb(K)NNsdGo z61A%@@NUwxn|9)JA#n_1MVEd=#FT3mF z<6fFWROFhM|I!A=mx9Noh;P&>3){7z)u=0QHFr(dO$AIHJk=p9+RRy=1WAHvYF(zgEE8}8Z@Y{o^Z^A0xLQi4I-z zwe$h4HP;rm>X7{T`q?%qRSh2!Bco)D?Z9_14~DUkL`RM0KLwlj_ISsZHW9wnK@G%G zXz|LMW>&?!E9MUBwPmGq`UL`jUfWUs&gn|LpN@s0^U;Dz`!T(eF4S5{WU;J0flS2Z z(p<~)>HbhIzfXs?w0}n31=apd0m2gfOM$vE5|C1ovThDKNf(UVK3zGuQqe=nvlITv ze&c2wo5`CSc?xpRW#G9xC6-2UR7&ygbOj>3)34mmnHg0C@C~q=9`axL)(| z$G3bg56%e3Rgdv~EzFEofC$!_ba4@xsJKj*IHI4%(BiQs?DcXvCj$azi8?WPIlXWq zAtTa}*eIHls(gmNdSwLZ7~u-O?ZwLgIron^Q>rC<>06xHs~{Hs=MFoYsh-P^XWfz8 zHym9OfNEZP`Ayzzi-z7?S$EMcZ>0lxuMVI?K{v)RhSDN6t!9=7&90L(0wgjS0i*6+ zw0t)+eqoQ5c!oQ!IqS>5VEXgfCVMs2S_L*GNGNX!bht8Jb=_X*LL1bSKV%aj&F)In z1Uge~{ra>yH1o1fs*>eJ8VL;(#ecV|Y$zVKC)vK+<)3v|C>uVbZh@q=dUj!6P$(l* zRhd^KFVBkOI%`r}DuTZb|NhE-C=xkrQx}9#xs&-->@#cH>%}vd|0S1yvDpQQKyYeg zawmC~I!&L~&A2>zbk9Gn^(lf_M-@Cx&-F?t8zF~JWKi`99{rB0;f^3DMF7gMOFe{z z0l6p8FD}+;HONl4r7=Dn#%$iRRKAGX=_a*1>@BH#dyxCLUfS1!@13>JR@-{05|iEP z^sWYn($G1piq;Gp|u(_j)zx0;C+Kf)T+exiIB-p@oqJ7Tq|)z3;6vAxR%C9SeP5PK4YJ9VaBS{i%Ny z&&>AbM_&`2QZxhx+WpKmJLV$sL|ua2UbiMVUtIyEcmd6y9 zgUPqlw|Y=YXQtdJ`4mu4r&|-kwmW^@9hpAOab9a%VA=nNREM5VE3NN-*=u$M1f$Vl zXOVfiv|3j^SZpNya*}DoXuM|Hmh$Q-g*Y|Tn_ku+AnEO_Zrvgmft4~q z!HbFoFCzu5Ac>)ygCa}SSMPYtTI_B+52wh@+heIQ`D1*uIWIm2-)>9f`T9v->ne&( zN+qD6l7d46_uRw`5=fw;VL;<&+&`h1vws-5C9ASUJu2GQZ=-^X;(nS>KN^#olEwpL z!0q;gH6XX65VN7-q?vfh12i^3)o zd`tWi&u+PFB;Ca}12z7Q%3)LO_sx&sW-r`>&g%Bd?fxygBYu&!;p>y!z{_|vJC6@u z(cqticHYZK2B^c}MTbdmy3;~AmtILLA%8n(oO1a^;DPbUXT`gg9r6YKcU`x)Bv%vU zVX+)!X=BY72T&*xY2c~t_kfKg9mCif5$$0#mj4Rqb{_V5 z96-O$Z5C}1bxihv26a}@5ZfZ&2ax(t3cW({1C2@9y}CltjC9FIrP3ZuPV3oyICEUK zoHa|mj>7!rz*kp5e~(xX>~H;h3GAkkoP>sbL2j;RVusy`qm+$xnUSjapub$G#QFSy zRzc_$>Uqqq7)KR1P#k{@i-=rdHe_eHzpXxYx>t`-v8^s10arxg7AGAf1ET)Ozr;Bh z`pL+WB#G_vw#Qe;?ivQo8tPW5(z{b6*xY_|D-Rit@$!D!yX}XyIuo*{es0apFR=FAEutp!FeD}7ZdVH&Iy2#gBT=W7r2gGU+ks1~Whw+tIN~j~i zdBy(xdw|I+joe#lk>Fb^x7Mxn8pCyNdKxPk`F)P?K~WV!5uG9P?8|)pe?b$_uyq@f z7yE&sozWZQ%ev7r?VH`wpeZ>wZj1E&WkTa)r-~G6;~i;Tg)6mC{g$K%|7NS%I)rNa z@TF3#kUOymQ8pJa$c6<{?=LkoF08xv?qZsY&YlU~V^1XQ9m2G?2Rkk-t~yr{Ikqg2 zo05?Xuy1!4*^Yg&HcTT~K@MT%+f3Y*tiw#R?drGWX6rYqktn?Q90bZ+658}kv>I7om=YoW2v3jyHjTgvBEwX z_g5j*PyVVDRQBPUp9#$GP!(8I7r*T44z^lcf+~WjE^NkNDe~(EE zmv<4%+%hq`Y%3LWxivHU&diykh*-a@a>kYA;>-p-tH z%#uoA>h5H;@F~3K-x9ZSKIx(~;JI1&HKAdIo<0-Re1|f{ubG*qTtrljQD|#p;Woou zw_NJ+Q~j);#(FpJ4x&jov3%xf4-7;vh@jbrnJrj&EVEiFgoP+vI1F6jtvfet35v;C zx7*y&?forjv@ptas03LU9V2v$k|~sk(ez7lQbSvW`^9r{=}GzYRv%m=il~Q}TXdA} zw4>gzVa=gFMUrSPJ&6TeuG0`vmVCYot=0t=4Kd#t;sDAEEgJFLN8wmH4pLF7G&E^M zKlGL!Ne$V!M@;4O`K*bu(F&-hf2+0FF;+W){6$jB5yU)jYt z&s!R1je59upfamEGMS0vCCwe`fCFfWYnbDsnhpWEi)_+DcER_~1~ikZyPT(^$6&iO zl0^Pgc)0ot%Au|o;(`_WGrr%zkYp zr`bmgLCoAiAP~80*52p7wQgNty^gn(H(4TPpB)x4!8e zF*~hlkr{-hee2LcXlb?<`mJ39Z-PGjm2gnc^Q#JZ_1xFCkkIRSpZ?J$gA6*vSYlb( z4MSk6>t(0>Gk*Q^-q3tx6FrVP3t~H2(q2M3yc%9m`7~uG60Ip=9g6wf@2+%xOasB6 zKI6eV&e<^6wJKO*@!Gb78rx+<)9fhitpWlVB#Em8U730GZWvAqxVTlk3n3Lep$+$n ze=Ch!v&IqF`q9LTsXsN9>OEMHE;e)DwDfkbUi*_@~ z=hUGwrq*y}E0X7l;6C*MM=G*%PyVh{zlQ^4Nx&PnkUyH|i%wop!e>bq(iLo9KmIo^ z!x%|Z=H{cX7{|NryQqxjUt>Y}xqJB|AhKFZRd=h?bE%!`Ep|&VoNvs_qG91O`zXW{ zVHKE>&}cgUaHq&PP23V$$q=_IBwl>W$2qoer3*51!%o;jSKb#ek5NqRy=Ua(0q5%W z$BnYJEtImSPn47LaorpL3(AF-WbeQ1M3Uf1UHcoa<<=_jA;wUPsPk#w*F;Dw$V70B@g%&wST)*{%H`)T+4vqQ_K(fK*}TaAeZ3;tLez3yXwUyT#m!u=y%nBoTT&_c!`DVb3#st+}OPQzc5 z{j-+=FX=hNYcag4IfS@qT_7{hLJ*w-7IHD-^Dfg(<~*$k=xy@Ga?Kq|!X-mHzO40k zTV<=4Kzmn zKprs+nEvVA&6FBn6G`FD5_HcgzPh>JEY-X1WShI3VNIV@fts^} z-n_!z-L~}r&2Z^klEG0%HX)GO0Pb2`iBoXFYMIl*1Ox3*sJ_IGZp|&-U?qRR)E;B- zyoF)rX|OZgsT5TrwI|K{r#a+h!fh$2>!t6UtmvMx zlN^HuA7?y+EDgZhJk=im(Fo_l;KUcAR6!}x&FC`{-oX+r9H+e`$0!&BJ*;tIqwEn( zd?7+ubj?&T`;&SFPp=a_pB^w!A8W)xx#aooOz}5=vfG?svmg_}%gPF4mC$3I zjG{pgktK9v!fIf+D{kl}vqY=t`ra3y`-V!Te2M&(Q4B$hxz`!FEcepfGtpA$zf2Im z7y4u0vjG|eJnPU(D2C*&&ujMfKE}a3qp8}o%{tM44fY$9KpCmhy1HDMX!^rnGJ=f`pssQqQw02OKyy>Na<*bLe0KyC1MXw6A2>rYM+8uK%K!bh>B| z=<@2%3G@k66LSql!>$flVzTbAr0Xz?dgLQ#lR8zAS=Hj70E3bMH7&WL)=*f>Zk{}H`Qtandmz+qPQ3aZiwVrvDU-`TsS4e&nyuamQ5s$iN)f3yzzkn zo%z`z3*wHQHdXmdz*hd#Dyzik3D?YrNolxmj{Z(``8~vq( zx;5>QYSjYg3(*Z$Wryn_78+QpLwPtI=B3$>zHgU*U^R(xFRM&p^_VS8`%n7fZT#m$ zW}x1wLVm{*qiEtq=#kM(JJ%4-R7DW8KCx9~be?saT}B z1oOk!56pA;TVz=S8V=D8+|QTpB(Bge%drF{7l@|bt@Y5#-j zQU8VNtk0i*al}(?&^WrNkFL~+5N-Z~Q~usE_)IVKDTZzL%vvxC*NGB?@mr_d&E;^< zP|h;4^!_H_QG0I@G?yVe{ok1W8lwBZYz0-I)cS%47`{Y zyWpJR@X-Ywlh>lakQ+`ui2^#75OiWUT${kpIhmxtJyjG`pQG{@vdBkK@FpludzCb zaYg1sO^Ycqc)U zzCj0r?W=|s;&5F1G5aNW4>)Y%Hm?J|yDMcea*2lKg>ovfR3;lr?ioa}`p}*9>MW`V z4ollRn~8y(!@80pL(2efs%?K6U9(oS(aF{1+jYwKGlE#bq1AD>rHrZNWud2gU_p5g zY?`PowHyEtP?#qp5^VR)C*7kso?vnkkF`Z6GRVE6Bw5(|Ri@N9?QC^1xrXBe=T}r z0tQT}GUk9OW5Y?+nMdp;6^|k6?-_!Ev<;Ve+@B`F;@ev(*|>MaWtU=Wa&%~6!E6Pr zp0kexid8B%1584vbH_yoN{5GyjSeRI+#@tC^dnVL|Hh;UHv5DsumB6xeT3 zwFL&n2$098{{6w4S3G&^V-9n|PFb%HLwh0)JFq5~{o3}n&`)b?*mPRQR{mjKDLiqY zb)MAYB%1<(59RI1w7H{?t|Sl1-HGZ^Bb8?@yjAaIycqTwg=pnZI2gW#q@0oaNxGP! zK)XetbfYVe@mwG#jMmF)0e{FBz7op1O?H%;YVdgN|;8hr!w$ z8hP7TvG=!(qm&-YTAt7@0`XWY28UsqE=ec0N9@=o@)}!tFu3DYd`y@Z=`&Y3x|Kk*$e0mm-{O+E<;Z zygp%?3h)_d%~;xM77$lOBixvvu&U>?5!6;es7|2Mgc5A>*_ri!2==^&c<(LO=4q^L zIs}%I=G!GUIBKW;dP0+Id4gzHcWiR(6#C=K2!0TI9Ey2i)?n>C=xX_0^E4>5 z{cxG>`5>*(1*LJZ+=|_Xy#nXkC`!Q7FNpl8N<^pQj9=HgIO^{QN-cecsgB|8M;#Fu z%{s3&z46YJ;ygPymO*nfGN?(|%YxM=5$Tg21H8ay6`bGN#-C+3YhRPS|5zlC_f0if zsutp@MhO??7*i6^liJCoydMlZXOw|SN^ZL=c&n??Zs%~@2O>sXn zk-u)@4cTwnU2r@9Zq?wOLc!KrV@wkEiGJy7fX4~@x$^S#EOAV8d~aSDqy!e=h`3I? z-`>Q0dSq`jrmZ;W#z;$;jx~gPj?7cBL|D@1^3*Wj1|9topoSq_+yY&hD><}EOSBTe zkH!jhbq$!kvRa=~7Y<`2;(hVOI?HhY`&}QY88@r3vi2<|qV-;TtYfc%*kUhiEeCj# zO9ay3s#l!_9bOk+9#?og*pp+?%Mib4gR%!&%=&@kP8-!UEyZy7^R5$5*yYv^f?UFW?UdF z{7Go5&q;^0Q)RP+pPMAOFCM(ZI$O;q^3h{MHYx+HW4-m%OzHUZRE7OC@47RVl(5YPl6$T|wa+!1zyuYjfSd1^~-{{W}U5CEClObZv2*=?%G0cx2*8 z3*ajOsNI@`j?_JFoWIR*Om~WgiM0kz_Yui#u)hDK-)S8XSRev*O4-VHj&zlol2JaC zoVA)>4uWwV9z5{tTN&V-jK3^wJG}?-bL;Ljk7Xg*h`(+ur87vCVETV0Y|pj#Jz#J0zNDD%n=` zMaD3lYdUa?o57O@4=xuA6RZZHSO)f*zBBn-aZZ~&F(GTTb@tH*>iKkEVrG2djOs9x z`;g(~@sF(<1=;rM1gc_6^6X|-zIiq}7%zcP5(kK8+GzGwGwlgVeHJjvQKMH{yu33h z7~H2|7}Mx#qBZdRB%X@*!=B3|YfXI$6S#~d<|KBX5tQqtCMc3*SHl+r-?@$*Bo5ps zztRdA*P0;hB3uI=OOZuT2JqqDaHxP|{)xV4IeVcKfZ52;`!VoNwzZfJ@p7=kuC-r} z8cAAA9~_!suaCSQbojHZd6%<>=Ir@fcAhNeyNT6OVl8-+_Oo;aKPcZGn9JZi zE6npXQ5npK7Fl4ilNO&$HM}_5LWwXf0yWxKB}m)5ce(P;XB@Mm=Wa(b4ok?3x{?~n zi-P-y&B#_dvKhi)UKDwR)oPyVo)$j4sVro~RAfTq@jB&3#Lm$vH?V`3*^6#zS*#(t zhiOc$kp>?k%@!5r#(a*}CN3b;hf8T}D5qp-NFjRf^E{cZZ-<-f- zE8tsbyMX+yke1X0eejS04WNK#;QU~9;Oz)zS{Daur257-y5at>WLlV+c8yfVRKKoI z_g$PWAXTk)!i9CrD!*+@{J-Fem^J8K@bk58fz3l5@NJThTV7GQ5gN=US*ms8KXmfP z&{1!Z2Sc1)3Rt;TH@IAA$2wm7^Lg1EFvf_+1faD+wU01k~ za61dp!OX?nDpCKY6474J>de%=7gI#3>2x^uue(s^;e0#&O_N*VwWpoyB&HM&S%_p6 z&u0izG*VdnF|Kq**Yq?yP;iD=mWG&ImA>-UvytGi{8A%)aXnLQhvVOr^7(T;f`_*TaH z1HeCB^jnsp2(Nilhqcj9WolV4+4jrjrD|3IF0&@LEFF3`vqUWW-zkP)$QKES27P~1 z6yR7(x647fhM0fBt+{PbHDMPAHYZya&-EpVK&Z%@MOS(xpVRfuSJem_8c3dXx1;5* z(MZVQE^CJD$F6NGSLKGAlX>x3hbTvl27D`dbS`Hz*eSpFe$K{Phsu(LyfY)s`zTnn zv8;xwU^xCr<__zBw)8-;rn$9JBL5MI>Cf|xmr$@&CoRCdnpefaXXSz49rM&djY`2S z&_&=?^?lfx7#UYGUoZ*e{Wan>@XnypZ~0T?;>K!214}K($^llQg~_ILg<;ld6S4Dx@>_C=kn7yN; zN=U#_Vg0yWTgI;Hsd60kg%So%cM5CDMRV>@ zTI9!(??_GYKmn~-7mh`c7gC=?#XC+?iC2EkHp4PRrknOC$Z%^imWLMT10$vtA0{^f zdb_{ufk_kIGK$&_ytx`}_OfX=9>7c(_j2>!YZvhBT@Giv&W+aHJtzGu(6+vklb150 z!ItTwwl0GBKu~tAvCSV1YJnV#v^4R)Z&hMBV~(eN`-#>-{xk&3`P%Za?=~oQqj(~N zlu5uhp{T7Gi8>HD1@>IqY7^kGvlNt>rKW`$7#*(mi|bRp@5T3;Z~ZD(e)u!?rlKq) zic&Xx_k^74kV+++f7h{?Fs1-UQC7B~K6$dc^_Hz|MP@TWQQF?J?)%POuA%D&Uj!=t z`&cHQVY5>2x~MN;W?mF{AwMqPl>{s(BY98AmD*xD(v(j~=y{Pz?}9Bf zBCHLt`WcPlveOhY%1GH6%Mnw0_#=3$@E^F}zKPV_(;jQI!#3HTrr5qBl=k?nmI6vr z5rSQVY{H2B_DS83xw*sI(%D&mS@1(mEmgq=ejXAWt-@HA+7m<-woj19&>nLfaPv8*_?2$5J^aX zM1Z};uX6R+WL=d_4S>8OcUb!#N@AQp*D#vBCcSXHceN^*Fd+h)+%Tb-q9tS|q&b~$ zra20)taopstYrH>gEM9wswdHi8iz_d!U~*L2G6u>Ii}@@!?c(6l`E_5yP+iO6_?Ev z%QoYainLYC63To>Sabd1T)eYK5@Sft(Z_Mi)xXAtF~FNN=`Fv)(41%) zMF9f7=(+3e%CKM~VR%ba`{8K{otOP+_S>ZBZJ|@&*Mm#)mVeUp|Axb7SMF!XjqY4q zL$X>_dwK$gc{kuF!~#q^N|!v?5bj$A#Pi-WCWXDxVk$K+G+Z`MLZ$lO>h(a#$mL`! z6szbYIViO&6wd6IJx`&oS?{EO7I&(WSu~L{UzIB_K$i`aICzQVP8)ii4 zlIW2_-uPL_xsUY9&W>M`ACZfvMzJ=M#^PYVRdk9XdV`Kc={ zj82wP@g~iv=d1JAv>5kI}1# zPPCxt1!C}L+4dPd>f6%1pgAJU=1Eu?Wk2I+{`voD&MD zME?<9FbX=G3{erZHDB{D8|He-4_^ID#Pl2{!%gy3Swfkf@d=4@(#lRU}=N~yo+y+pTbl@odp zVapc3nteGp-NZ`*j!7wLC6;=z4WV8alJ8Z} zxRg2%5?PxaNlS>h)M+-Jh#Ho?7=nS2^KAnJZUedF1ApaumFwDu1>j4PL5Khoemq92 zvRBr<@nqzFz{9o(qxRd9ep^n7Xo69B65?OXP6ojzv{#pRR=2bVhc4ceHlgYT+16!Q zLW~`ODK6UY!{J^6T|&MdGOcZ92Ti26e1?7=(3a-&R!3qKN9rr|Rr|V9 zJ@GG9dAStl?^g4@IC-qcmZ`AS7#|Pfc?|ZXO2n!8^Dw68 zz5(ZeDj(u&zVij; z3o!+Le#rQTklh=ln-5B9YglnAY{`L4xw@igPHgliql&kjL=h+E^(gK?E+(YRBBtOs z<2P+PRjkX~^&i6FIfYuSZFX+qm&Fx#RUxrr{GhXgo8$65uf{SfqkCaPJbVWEb8DO~ z%kNQsB1Td}i_@37soNCYa6J(C^l4q8(-z4T=#6mMbkGj5P`Oy zQQIdx7?>?se5UZJna4&{Xr{}(IMtpHU4H1E&(mb}Guo4QN6cG#1Y?zrf&`_RiH@=Z z36hTJCLGlG45{Buq^roOPi%4OESF3Z@T3X}t7VX*-HF(;mOic(b}U67m!nS##Z9%a z!TxeROrs30cdStKuJn_Ty8dIScXVAB z-9G3@wLCrsW{QSx%woT1>D6GUixXl0}k1^pt$i}f!RKDzfF9j z9${Ei)sy<-V0~u-1eYHAT;xl9P^2`2F|6u+(Rv@teVDce6U+)_67m!f|l4V zGxI!!MiRCpc*uBXuTAm^Wt>;?3CFHOtB*+9&X)l{)_%hmGOx}%4V!BYe+5H))C8JR z|EnAVbZ3QEDKr&FVAy*uX8Vu*Kx(Yl>l$X)gC;X~=F%~b=H@F-nT|1~~zx72^=r_0CCX z(--!hbJa3OPIe}ZFz(EJ2v8Dr`THR_#J`B(VGBTeilwDfXyH!6bg%U&aR`^BuqGN7|J@Nf{Z;+qYa zS2?@PL&u%BMYVnHPx3nO5^UdnQXM-5KTH^g8894vLwY*YF$;^N4!gCm#R!aW8(FwJq}n zcOWs8)5L0Ahw+tv;%cEC6KIF&Hc=)o0sSd|7+2P521*fNc5`p51}Hl+M>k3DS^2!J zMW3i)UMk^Ytn&m>WzS$RPp9=o?S$}+()a~AV&+=mH;flr0ag0G%{95dzPx~8P2U50 zr2sBYdLql1@45%LMY)`{Um3Q7W+0G1R8B$6rU_W~BgN1Hl&Yf?z=ek8l>yBbs88n% z76TtTjw{`Tg(3yeTuO~nX=c|MoL=cB}(tp<0iIWNZBc3ws^7hK?C#33;Q!steg&rK6_VG%~q-XujRZCldN&D*tp*N zH*p-Qwx6VoeY(6%wgx6y_|Emz33^PJfm_VY7*1^p6FP#-e6}c;<7$JypNa6^WYI9HpK!wj2b!fQX+140)5QAMjTPdI&(AN95D8ZnJOrN&eb-!`^ z;h`jK6$Zx~Iypvy!^xjm$W3;;{UM&;{<-nI-608u!|mpZM+aV$(181VOc8qZ}b@~r@fi#Qx1pZ3lP9A;&}lE3fXJQ17l*&G8=g( z#VYax28(PpE39(QpiAy$$L$R48H^p{zW+)%-cXcqFR}wpv+!nPAjn1X#)>AFbuV;a ztZUh<-t5E65iW8SkINjf`W9}=FL^f{cyF0i(r#X{eVfaa7depou6ajur)HcZQth=~ z%uB>$XoP5>#i#z~8#V`SE_cYq{D;i?+>5y%%-wS&^VBTkBUCg1pRZuoN-0}76^>UoBZ{)7y?!o@8OevH`c2Mg8?-_)mYokfl8 zS3}2~P3UMtq5`Ytdl&CKcLtueXNjRPz8MNGW~xP-^M@^=7PRfdOQVdtiPlQ8OT=8nagn_DKJ{CzB9WTkL))m34K)LlBZ!Q z)-NoYcm^9C#eAH>Z=_Z+<)I+cTC`K?zmKOx+qc!hlY!+!Bts|U7h0@Cbz$M?K_Rp# zX6Gg78@P+a358E;GyRY;Rq+2wV85BL5k&QM1zq2Z zpARQ134G=}+PwiJGa;SVf~YPkE4y$neZp)^SiEzhLv8B?aK{Di><-1K8P7$XKz-kdWdb0ZEYro;u_lo6rn9r{>@TNT4@sN11--0 z-jrk7aF0Z1m%XMlC->^N9L6*EBZIOQSX_V2D~UtcwZHrmxcOV6_1UbIoEroo0U3%> z)mXc~T?F6M(D4Mxqbp2;6elZ%iltH-=P{9p7 zyUf1LHivBaV+v=kDz&Y8ck1^dk#9VMV`D@|)QuGnF#o>+Ro-3x@oDSA@(3P z4m8$M^V7>5v%LI~_Uc$*l9@W{-;@t|Nh`k_`e^X*ILz0RdeCRZ9bswhqnKsjf=L4K z6G{B6ZAWHJ+daL%E2q~TX(FZ9dEMq~A=WRBc#P1o>yG)20xD)|N{eK7PsvxYV4e~}U8yRdY%-}&3h=tZ!^UM2rl zRIrfTN&-J~(Kr1!b)E@;%>fE#h+2l?dRV}8>P%&G`2KuD%=kBY2{V?iz0?9oSr#ii zI|>}MOe-B7J$;J7`kJ>nlKJ|Vh~KsEH&I- z*d#>z?YZT+Qr&dDCqqh3VOEv^58_&_&HxLBDJ27jS7fk63~m3=J94G)BW|6~cZ^wC z`@q{9zk5vLr*|p#pe(+5{LP*v7B3{RK~Zim6UP!KZ9~-H*h$vm z#G(qjU*LzbPGrkJiLrHv*QD{xRTX;ZY!fp-cu2Mz|XO`7mw~=+I(X z+RuGBMyu)f$c}U3@9V`1jE)E6M3D!plDsQ>aR?G_XLm-V*S4Ga&begm3r0^K?eF8kl{#5r-N*wj3WFR1j=)LFc_r30Ah-Pmlu zDGcUS%;^0PCapSZ3l12Pslo1hI(gkknjasr-XD?thH~6zwZ2M;bk{$o(G>G##8g!d zjih1rdmaUmK;T;pqWtg2^6!pT5lzga;7_+cr@SJjurr2~OR=$*e_=A&Zvyv$vKzJ}(h|+i$j4{ZQKz%OgAq|BN?q+KPYl5}LhI+)C+zDa2 z$!S6F?y>*J+FM7p`Mz1dZE1lD&=x2Z3oTF_THGlPrMN>NEpEYrL!gwlxLeUsEJ*Pn z!KJu61TF3oG+0i)znOQ|Iy3J%Gw)evJ%1)EdOx@9YhRxovo0enV58u}#b}|p{a#uW zrJI5?A?1{J)Q%Ha6e@@eO5!@j%EXUK*Jvgpm!&{4!xT1`B`a_`@eV3c!!AlP0Ik_S zUMcUYxW6#}I~vH1UrF=c=nCg-qIzVFN$nt1{6xV&uxZ^k9eSdKYUbHoIq74cu(DX@ zeLmsrF|)r*iHup)>n@VzH@6@xdap0n`}hE;q4y7>BkB_}*}l~2SO?q zQ=~TdCGI&qP`DjsW#Uxtvk~~cXi5J;BTnsh2t3vGNHTVc2ZglBgvcY8{;p=R?<-51 zn^P)Bv!2q(89S73p|%K0=;rIXL$B7*CDl>e6miXmXrFlokMslGEmW(x^WyjCZf*@E zf{Rthk8XcFG^&|<_tuVIY>of>@tBJ^#1A7O=DUG(*c8k*uUZjn=CMJBg4asw*9yYH z?>8N_9h&SioAW&O>kE9W4wDRu(zEsejaRV4l%j2{#kO7;D?SS`?)tT%n^x zs0c^88&8z%geoQ6t+?|w$+Wcjrr=}#Eike#Q1)zsx;;mG6Fx)9>}N>$0}{48&3`H&9ipx?PQ|{W8^06ANN-GMC&>x?G0gn zie&$8|M2ynqxsAG7aZL6LFJ?DfFe+amaQf&wjFGj3E`PmzcDHKgl+cm1n(YQ~ zy4^S3stU>+ijZROY z`tXH#G^*FJ=y~oKZK5pBy`@^dk#E-FwNvS_&OTv0>0ie@%FNPmDfA@0~y4y=1-o(p5-Qa zjwX0n{U3$I9$+eQ26h0}P3+jOwqLhm+2n~ko7lMRzEgr7`0wg;0SPtqlABFM?G$x! zB+Tu7zeBlXYQqWAI#XI^mX9uxwzf?itxm?mB}CU0qF5tanAKp~3Z3r>e{0sFF6080sFmPbbTRJPE1YwJksp$#4l-WCjGJCXJ)i@B2&-~w|HC_B6ckp}Kzx}HVADO!E`$lyjiM&V|(G~Fg+7c#S?QWIf9ZkZx;(?8C z(e#DIP=IcRiDIon^UH)b%w}GFS$w(g9GO5kEnB-=r|EOPNBC7k#Z{J>=v^d=g$cG= z7b@EI84%A%Wg=-fv|ktfY%1ET2b*^8zmIdXdnossKD!4`^PP++Ik(&)gqzu&_sb-8 zi(`apurU;cwpn)B6%ux2Gqn3QD-)nhHJSp|KKHl!e{XVm>r%$rc@G!PvCyIu~P$*FTe2kY&sMbR@5Q zFTS!O!}+d7v*Oz7Q<(w17sH9}y+d*4A_I?~Z9f}D1c*|iy6D`zb5wV9KsPHv?$g5} zs2{gID?#311|`^}L?N^azB0^kssWw&UK)%oE54kn@V%{4!?jK9T;xti!Q5@5c#5a| z)DxLLxaZcG#j2|zHm^@-2=OoGQ9*qQ4uH3pshRaST?eM6kQ>bWvMRK>D! zWELWDH4^Q3f5&0p-iy#w?zBFzxpyYx;qT2Vctpr@5!$1FpkT86l!7Ga;|sClHXlRa z@VgKPDPk8s(;~e2H)|5FhSfr3C4;pXVn1R@xjdMa<0pw$uMbndm!;p;@WX}uke`n* z7g#rI+%VQ@7_EA#`{@K9$!gtbz19-L0b-m7d}ofO#}`c$N22W($$5Nr;&h#DrxGAl zYjw8lMXVv3gIOeR^c?FqkZDtzNcLct$d8FTGyfHp=4Ioy(;A5_ znD8t4;?b&Xy`YB6`R;c-@2+BGLCNubIo#YGjwXRR`pM=E$KTAof<7+nA@<%ltd;ED zw25^N4${e3=%v*xT(w0!GyR~W#43biSj9R&{meF1l|KS6<1T#dZnEX*%>NheivYBUdw791H~dz=64gi&^BxiZk6g&5N1Hl9G5;Bq}O3iPi1lY z$JxdR0lz}al6_b21QLE@S2V{kD#2dG()!I=?6>ifcNt@3*kbU)q3M*Kk*vfsDzvI)Fq**9-!Bp^tZuu)a8C89q+68y}=Kf#lcxUT-o>4 zUX5DUj#)jQ?~I_Xb@%$JFT26k)yox!{D!OzWBNHJbp_rKsUAv$F<n&jVl zam{h!U1s0(0nFY*q*GS=f%IY~u9MF)8c>ix{%eOsTAJ>dy)~jykuvjxCp?r;TSyE1@gMdE|*HN z=5xFS?GNMr$u7c&)TU-bq3IFHMRXkB&^wMksKv({?a>}jM-F_ZGki|+8Mh$gFT7H% zqGT*S8?atSFmB|R0QDX}>sLM6&y%ig!34EF+RosP|aXvx}>L5s$PM zL|%@z4$HgA7~x7@n0)YF+;$BFpO*DosQd3 zE9H$Ds-^Qxv*09^lQ5|i2@QDlq0G!Y^y&=!hiG>Amkbj%HxUz!pAqt*CHXX22&0IB zV!?O9*?2eo&tA=^Gu+K8T(V3>D(nWB`8o?;>}Wc~KF8NZqk1O(m|1BQ&@#0E0XGYH{k5EA!12zM%a@{#-h{%mCH%^4h=# zMU+0BWzA0IFIi)oC5Oa`ArJ9GQ(Tbt!~YZ%kmE z`!SPyyKPmpKFm3d@tEpq#$%jm{`+N_JAc^wN=xa%d|dE>m{$OhntwJ)y5Zj^h=N7w zPThS0rOSTz{^B+0jhZwKhr7e8EujzM3Kzv8n2Ma0V(=x7yqrXs)<-Tb*bUr#1U6DO z-|&9kuqxQhZUd(F0dJNr&*f`C4er0o&BquuNph~y5unYvVv9_NmEFU^^R|Cg9~jbk zFuql+4YUKMYL*rW8GTRu8#m7!n!ds{-c-d-a<8}YFCmVn|M^!NR%*S#;O+bIrQVVq z={?;^E+trYH8?{&RM88K>k2cjEm>9v+7(y%9`$iIKQY*PifPGSdEAA^?T8Z6lt<`{ z9`1XV<)}9Q%wZiPP_6ooZ{27#ZX}x*f)MX01kr712FaNWWxO@j=Dr5!swFC~>cjw3=+noRXwzZdyIPjL5J2*B&3YoXuBui%t3q+#A~$VmD(%WM|Fr z(tWc3R~$x8kYcs-j?>}uE_NHDWi_4Fm9X!q?^+w3D7TkyXlNNfoM=)}E+6p^?l zK_=r(Za~Bb{8BZq0H^1F*S2C@)>ubPFh22dL8SyzaSRqTRq5NBKQfh*pNr_gT#CmK z>$z-upsO4)`Q7L|8o*{WoJNCs+y;P9J0x@iB4mWn8b+VJHiP)wwgIVzFRHU?G_W+R zGJ+@EGl+cu2^Br-duTI>*0;3n$?llKVBX<}Jx4u=*){;lZPoND*`?E+i>p9YBF@(WtTNt!ug<{q!; zgyT5wV9MCje+7L6bWjC+VTWIfinlcf+66`bFjGjEmxw?g;?x~YR|py8$aO1@rPRR!QDlGYdc}H5p+KGDV|MYHR*B) z*O{w5Vl3_(j)(CtTg1Q`OaLLbs95ynlPTf&oqP7Jhq(UbsV`O#8{AM2Qdc$HHh_pG5`JVvtizY-+x*PJDB+4UDssj;Scn~P{gmw zV0Zmiou@LQDAwM#yV+40iFR;nH5^J%N>*>S$bUiyE27@3^Fk0CnP2qJfctL~Z~ot& zg3C&wU+R5{ee0H0l;R&k(P4H`mC4t?r z-yd$7<~}|!@k&Yi7Coz!A@Z%-Ngfg!D*+LRe#8WGd6J%;?KO&em{w%GtpgJn=i~%% zQI7hq_Yp`1xonSUXh6j^Bk8jI_*61PI7^Rj1Bbgl;l}oVo`wI9eluLei_-n2J{_m^ zaDRR1wK6VOL6CRVpG_)3!1;P;dPn_XMtOqNtIjIU`LK3)=Ck z`BWqr3rAH$e)lOFGHt`IvsOV}Mtdt!Z@bC4MgKQT!2j9sb9;o#xFI+%1O8hy59Jcg zixrS?@`SM8Wqz94WueU;p4T^#%b=FW1FS5%Z$3QLak5r>=_N7ZJplP5!C^Q`xR(G{ zwtAIWXbhIY#rNn|DHxGgJ$tS%BU-3se0!wDaLc(|X!6{h@BecE)4!Ik{64~#q$2v# z#5jL_vujCVJtx|*Ba&BSC8lnXpgFJB(lc`Gs>}joM7~0NOA0P=#Wq{fStQK)%SiUu zKkpcGvc7Plwt@r-i~RUX&sa7BIeRJZgN1C9w}&GUbOp@C(uUBY8}%gjlqql5i~Lf< z4arZ@yb`4UX+!uwT?YPR)Ml!_etNhTudH8$@o!aPi^mdnmFHoiT&b^5X;`qDR~<1& ztMLs9S>Ny8Cm{5Sh%I!x6TmVP&*$DVmgtVsja_(w^F%$Y)CKe0L2qi|a!?W*swYIy z;}BUufdls9H!JqyzZww!hhb#f00(mOIc)8Y`pD=>{=3?(htrjlucG^ZsPsc%3)7QlPbhieZw> z-yi6Uxo*3G#@DCvWY6y1C;I>E`kg{WzicZvKH+i+(1l|GenCnXy!$R!pf`V`4&L~s z6#6?I9Wdq&oSw#;iVY(v^EK(a75bj)y&=q$R-9b7ftQ{IM)fHl=bU_|AI3uvr3|-} z>tN#G=_GDBy+&8+CNtN@FLed{8=qNB-~EdJUoYJUM7!mE)$3m?Bi|ai?botBVGe&~ zP5=LRWhUBunk`8+oc+Tk>Q-zKOW<5&i1*n+yXr@ug5)%1AG}W|Lh~ne5sI8>kEVRJ9R5{x91(LWO?yQ&Kw;+ z6zZS5i+F6{+!iSEE^@LIR8*7lTKks^^+^)wX3^<~Fp)1V+RwI641*;RtsrHIUIk3i z$5C^fiE{kzxD@s9QH*An!d9%_OneDi#{UE_Kd@P3Q&U&{HvaEjbv?3_lKSec>eF@0 z#uqy&b#9Y9V^)Ljvb$7y7@AYn$)Y;lQoqzEcNBw4Ba;QpB46@4RAAi4FFrU!FY5m6 zOca~B?^H#Ed-5MolpPGj7x3a-sO!+qqOZX}Eu$7@ldC2T$HFQ3Tf<=&*#bIB+u0jA zD{D-yjfpDCbX~ItzLtp`6R;p4pXWi@{0js4PEF3i=sl<&2zHrQ z@N+ibH(Fb-O2bmmNaDCRH;ykVLvU*vg|Mq^vYF1zNEY&{o0HMnJ5Xgs#P+i%Er{3& zzNMY5;h~)cTT==AcI;HS(2&p?SOvgSvA0tuos*mx_Zh;@GQSd5V2br+61xLyq+EPV*PY$ zp|J_5cIzF1;EsN`X3|HS(-?s8zr{!&9}iutlzu5On&4MS)j10`?~m_M?$1A1_IIS> zHyp5Ubc2p%VN&uO8u|NwCoA{=ELZNIE2m9QO1;d1Y|$6?7uWvKPKbd zO)a-PiY@%Rhkk;|3`i*n&{Es9ngl|Kj$s@4DakJWsRR8)da%zOvwpLx>)p3{ zlR_HQ0>7K3G2v7I?^w~5f zkpSQ`&<`r>p1fR=&h!{6UZb-I{Earcmda=c`GTDsaTwoxvS35?OteCcE%xWUEDxF6A3v8d0nF-2wLPSYUAVF_SG8+KSEUwE`R*_B)#mmS znLic~G_%bf*o($v4I%di*w5}wdPutBJC!J`KtbbsdNh}e)~_6 zVy+}(=Z9gtRAyjmb8z{Ci8qb^6!`_V#EO4cwRZk=x6fTF&v0*P5={pA8GO3EfeC() zDnLu{cR1*#uFF3+ijJD^CrAp>BA(TwN=;Qo=~5%!LeEgGh@{hf{L>v2|Jf^86w9Sw zR&C02Bs$0J>Sx_@_Hk=h`)*}qb+N6@PrVK>(!0^_vcZ(I;a>M)tCSLS2l0_24Ie?m zYT^5!O0~j3484r8xLT5J32GX*@kcuVw(qWy5WB_y)d_AMWt4MpGgL*$UIgSAP4%VXyoVb(5b3zL^0fZQD6ujC(Pn%5Bjy+i($jBZ$p ze)Ee=qljH$CQ2`X$QXs-_Nq|{oeBF0xGZw94up?t-*zvf_2^Efn)W@HlwKP2Fi76G zrVWpZ^jKopiE@=5HKE~-v>38wwZ`h0<*MupjoU)pWb|0{V7gg~EXdNNxBFJKrfd6X_-6mYdUhWAKB0CT8glCodFL5$x{LR^D~ zPlWUPz$I4PzPFBeNXB^mZR=RanLp}OEQYQ&g$F!qP!-u*6>>qbU9A@@GwiRIbuyh^=piXRJ!#+oZoCA(-suN2BtWC~qR7*&jOsB@-yvPitnqni5J>-pnQ0Le>}!*lUc2)Q1@#<**Du2M;Z zOA_0_G5N3TnLIDvTiXbsJT3}?iSWvx=h=#2_G$s3>xgZ0V}ni&WXEPdcbY7M)h{bWyhFXl1pu zEgF+FQ5KiHTf?#5e#S*fw)7q^t&~nsB5kwiZ8qdpXp{?hjv}FJfUDFh3z_&f2DKM{ zizbi={@t5wD7!Mu*YDG$^8^8fgy=zSf^g0vmz;s0$jR*2$fBSgao>gHpybQbZ3~-S zj)UE<9^TU{fS(0d{kjRSqhAwV9XIGF(*#7fCHf&%{yn0L22pr9@8(nA3pOH^zyTHh z7}zCloSYH~)U2Lal^7Ztso#=w7w3`H_vWzjKH_?Eg=+c`SAjNB+P^{Yz^gzQ)Bt7U z&`s)#ns{V@ee1gAM=%1p*Q`b|R@L_g*rtE+Uck}VwL`M6?#;8ld@8miE@Oum{UCE% zy`=6R7vIBP=mnD9a_A*;c7sMyGOzaL@@?GPP}xT(v3XVRE~f>cPGeDgbdW2sV9i<5 zkVPd}#TlqmKLae^V=gb~jCu6I<0@!w6|(iJTjuQTMw)xR zn^5kPlUVC5+tRDCiF0#sSn}k>L6gtdqdky z-MzzEv(I$?B5Xw373UGXtjD z$KpQ__qCmXAs7t@h}~T)brYfMy$om`4X}!r1mC%FyZ#U*(0Lcj!d=i?1i|cF{8Gw@ ziUd_8QrN^d_ZExfsnNa7H@(BtPp>Lrs4JD*^GJUCOh&)M;!X-Yiug%xewMbdX2M$T zwGxgXOz}m)m68;yBd}I*oj`nj_X2PDhvdzjwOon}?_w>WHET-{$<5Xdnz{5kA#yZ$ zrIe>l4P!@p5l))P^}=&gINyQhF@@W_HIgRih!+74aithkKn9e1>YNwIcV-DFwzZp0p-`$+;*kt%RsMD2@EV7hOQdc8>yxE39 zw~Q<8Uv6_sUW892{9q}%+G90Qy5|@gS1kX>`6{0MAbSI`(lHZ~59QiL?wq-I4R-N# z#fgpmX|h{u8*qcyX)-BTa-NB5#=nD)m1jjo6Oc^^1P?sUxzCYt?1fCXJm$OGixlALp}g*=PJXtbE;W))Z{Ff791VM^XY} zHZ5q@UwiLax_=69&u;shg)csLPgXay<^-RQxh^ zJ6=nI41~YDwxAAqUFaY3J$HW;DV4Ee`*(reu!;8F(8mmIq03#w7UtQ|Kor zo5~DKSHwn&nHsV)oQ{`umX4=N8L#0Be+>3*i`UDdk-+>2o+O!HseQb}Q?{M`FwGc- zuh%xs*whB!-NftNX1`co*#*kY8#Nmxi zt?P;Xx4UMK4V`m&k&Nzb((dG0-}al71??c8we)B%rkj>Gb8!regCv=CzB6`OBdYr3 zp_`pRBWs7ZiJu^2>?x^}?y1zxGGN0hKIr-0XK-Q7qEm+O)v}S@$G2aAU^sXAf=fTE zUg}=;%$zSLTzF!YRC6?n=TqLudld4>u8K5o#2M){ilT(tr%KeWQPqsvfIbhc#CN3J zGpJ8ayVXyRc6a#Ak=*zBF}gezvy@j3#Z1o;{&xQ>tbkHJzV16n6~yHl(6~9%U(y4KULUx&!bIHS>A$~my@Sext1>L%5dZ2!1h=6I^&&jO1XR6& zWc1>J$GzYW39`aC9q74E&`JkTG85i;xM5T8<%5Od$43l61}2y6tV}RIYr0+9ZLl zl~#;OVPb~x(q6OUk>ktb&X|D;wBdIzk$_@_JH>Efsyl9Xdb8*ZfwJ2@?10`v`pXdz zfgHdovp`I-fcp=~d5hq^8gtYr+aCZhfdY78-iBO@4D+5S?juRQ$R}o`?t^*L%FJCP zoVhTcyc06`M8U#+=fL+c*K6yvb>{M+L)Vgv$^*I}s?a_F94b zxWh!v)`u*6qbmEo-~dba&Fb$jFBUeuVhVjPEMF?&-v-hCbk4ZBE;=Y2@9DH^DCz&^ z?>MSY6Knp?2e)6I%d7ZjOYPnuyA>f_N@rZGac1Y7)&8uC@iRy{sPsc!R@67SYmu3dG`!VIk- zxqWjN?&F@2zcUIUasEESZN(A&#Sc;TS^yx^Dz9J@KyZd`BopyLDaco%;!_PN6NP8YM*!SjGO3B!RP>ZF)WAaZ; z8q7nGTL86`fCCbKyo_eyXU7{LOv}e)5nhswUdasW9Zzm<#QWVq(UZP|{(o49T{Ze0 z$ zHT}}}qRxz1Kv0hwALo|i){LOd;T zN36AI;fR|LLCKvC>k#baQs)2>ZBWy}{nS)j#<&tTfts!izdkYdMXW)pkzSsu_Wf7Mk4O!laj?vmzlO{?o(XUo2~-8JW%&B3BfJt=g1i!t;knZ;c6|+@M@j84 z5`Qt@+ruIT9js)JVRPFAlg@_D-cX^qgf}99BwCZ8X>vrB_U7njY{GBzPR@zOZK&EK zqRXzMr0w5P^j?=}4NU9Z_-gdfxTRB1I{+EqysUuH`jObnK0|Xmypeq|e7|Kx09{CN zdG~|fnikbK#eKIg9OF{tzn;7*^rDQ@!!Hyf|Jb(_&FpskAxK-whK-B$MC0B~3$vOy zw1?e4cVqbjgjh}Ig)728UQ)!_=FgEH%^HdLAuwh5PCNzcb(Kk%RN?!26Vimcx5I0A zM3+_=GpEpd_2PnanaEz=6*%bjRB*(A4BN}1O>^0az_K*_)>sVDoZ0IO-qBH}&6 zWTKqKegjFXtt<4v^Vp9=v?8;#MUNRTU#UjwJhbWB=|#9_UshE585x}}+XWtH@zz11 z$4%Z`U7lm%pXc4C-u)vRiSd=coz4Gz!)K0m+MX)1dz*6)06kMNsW%!iNP9{i{59Z7 zN7_l@2R(ib%SEqTZQ(MWs|R(;_RU(;+>oDh^pDpqu!w{*)Nzbhf}qDMnj^L< z%_EE4Z$(`l?L|CF^ei+~jV%z?t#p)T^5NZ*ZO}i#9hO7l<~8B6X5dkCx8pIjOZ{a{ z7Jt8TSzza5By;T%e(rM*$R zM%}D;Wod7B!!+Jdi$}w^*zPn^&^MyCi;^dc4fVO~N{~Oc7^yvgKi}D@4)XGW2Udk2 z8f3RX+i$d<3_m*#y-M&Y$e7dH{b6k6dKfX+oG?$?VNGGzM`gh7CwM_JtLyH}tELd1 zqFylfA$9Q{z0E4#I-j>A`?K6B1Dwjk@G(JH{M|u~JVsV4gS`bj(h!1i-sYHLIhSd@ zBADCtd`y{;ijyA=O69cremw9#_Ymk6RTB1wA}56mG7p|r*c44)4}108&{2%US-p*H zSw5eJRyZP@71F%+<79ooJk(E!=8BdD^>>b|pihGZcd&~&`5n~}Z z^h2KS&l+hCHJzBej?GDRLO#1t>)&Fx7r8?3jJS{ZX(bzd_wyM&EM^mDruE+h z@O{DeT}&TCz4XP@>2d!{wOWUsrk!1`e~4*_pA^u13D*RZ4I3m2)VM?l7W6w`isY+t zQ-?%bWz_?G3qB#_Z~_+1BA=Vm!Hr9IKd-Uyuj#ZCq(9UtECTm(p*GB3Mk)y8QUBFf zd)bxyKfrYky5r8cE-yTlsuxDY2Oc=QN%g^Pb~DV}@`lV28)7TKy11?~6?4Aod-X?C z_}S4_d0f_NrG@z)x|Vw8gG}cyjnabOD~^hXuZ%U56Q+8rAFzTnVRnB+z*iCGjUP^e zAoKUj9mzxtoW#p%`N^rDL!uVB7N&%iR=Ps9c&m5E7Z7phpVF}Nr$*){tq&w|s~J4~ zsjx470jHwZk$>VJ{53PZqgJ^Egn)e2D=CHo@E8Gw-y<7)snDBL4KO)gl*u9$#b*yUEzxLvNnGi=g~o; zLyWQe-jI#CuJ8wyqTUzUh4UP$gPP7`(@mqOxu1_yUF|J8B1AbcH&IOjm49IHWHA}n z-QmK_6}ID*3o{<6NQb%`N&ZW71TI0v*7&C$JD*N}qEYI)&T4ubh5GfD>$8A(ksHNH z5nE07n*)8}9PV0wtm9PkMv&xH3sdHwDmwWu zXF9Fgf5(dsQBiltaBi^zJ%fBL^(GD9HKoQ>f}ypjb3$m=MK7pJ+9$p_jG{yDyA}y2 zJqkdwCqjPO8|1h8_W@Bc!PFWq#>lu!<`GNeq?K*@LDiqXE67mA0?7ef^R+>YF~Tzh z>e;IF=Rvq65!<%YTqqvRYbPN16?Yle#i834U*h+Tn={miZsX;;f*kE*;|4x2*iqf} z*}NISPHiA0b!Tb)j8$(zVF(v^lTuz5jM)zY^~TKP$|-5n(Tw<=%W%(_rfHE8Kfm@` z_S8z=mrMwbOYL<=2;F(cRQ+?TFsj5h8+U&FP^yE{2C$gA|Iv>%1X%5;ik6~k24vgX zLjrcl32Z;@40ElhXG49R`uGJ$8&2}C9YURVGMgIh$rTjH>Y0HJsCa<5cg$83)NCvl z(w?wfTen~LvTNdqG;y`SW-tw#f`lX`yGvb(*FVtzzr z`)=Fh^2+Sv5SyT%HJnCfFuW>CuA&}{wQ#Q?W%59L> z3Ik+bB}$*bwB~4XXHbAz+g{OS2kUkGz+q(lpkc!RvdB=nKH)fTL3*q(lE5Wq8zdL@ zB30q`I1j0ug|289d1T|JL!3Nj0_tq}x|`s?>zE=kRM_wh=6Aa|P_fphGQau0Pu=ej zmK1#KcAJ;BQzFD4by?+qRTCnTl}<1JE1P7Iz4U-y`0r91Zns(F!M-0I+}j@mS=E=$ zP&!8y8x1zPPTg?-^jT#=y984Cb@d+ffl9>&P8N`MiQElz(X?|li^srR`&qr~p~$$7 zWX%9!C~kKj%m#0AP6AA2*4LO?cWT2O`{(%R*iQ0+%uZH-V|g~eI700 zQ@dxY-6JD}Hi0|&_ zc)Xm4>;N9!;vYYG@A^^TG0oX*ALPk}RbR{j^lV{d&bKRW{kIlz_4U#O_V*50wj6r4 z=`hnD<1v5}7v9vr&uf5g$m5D5{eV?Zc7e&-xBjit5Dfo$GA?I*OV{ccM{Z6>?q;nF z=(WqIrtW+80(~$&%d!hRvl3vGJ*4Rxq;obHEywcexYG!hq5z|co_>|6#WGm;mJ~N4 z)i7ZXp=aBlw|jqtZ=ru*2FL>4S_!6dWmd--zc`y2;%bk5s^h;!_r|N1W2=K z2|fXd_h2C)ikHEYI2e?0#|Jd+*9Hy@OvwA;ZbgYHK~StYzYUmStwMu-ueSo(%D(5> z>h>z6pDSbid>%sJBP;Z5W8Zt}d)5%1L^b!?298~H-uDWkd6h8qZ)?nBhB1i zKqJ~}`in~w2Gy=@rV(%BpYO~fk$;=Mf^Aq*FUaM?sT{d3oBfktkO$mb-t|HWf>Yd03g*N4sa4;onC{3-23n{b ze1$|ttL(i5knBSA<_|NgX55m-+)JA=8pqln5&Z}VUWUY((&5;9!+)#vOwpQY&L%|- z6sxB54-nNzILz$4!Pk3%KK_#zx?&sW<}#H#=LbKPR7{Iwx`P`NkBf_uH+FUs{Y7)^ zdfkae${Puni|-Uqo7>N$Nh~C`$)ruBc38BcMraH#MA_7%;z+?K9?sn>yo!ZQktbc) zD3M$lTEKfPG#BUggmo!mQwBPYjrD$y86%+S2x^{Gn!IO$dvuAN_%tP|_W_s|9tI)| zYC<4aqD{r}E6sg(9(8Ur7Tl|4{aSP{--7_3?)|oiC!4qv=1X8!0sIN=o?7atGvxb&(1i4LYf*T!YdKmP zkEI*-K$ictMIBY3mTh^5p*t;_=RrP0*m7NGjt~L<P}F^ zbcA88IwOoeiMZ1DUQj)EE6>@;c6~(7@o$Mf!;1y{nzF)SO!}rwF~?-n&PIezg*4pw z>w4xZgd@T}!FcqYv}vQnBI~2m!O-v435Lz(yXZN)sXeCG=czx41b4|68a)Id(*gCN zq}#w9?U%VaHT#C^T+VZUUWIf=;*zUEl9`)Hg@jLc#>TF1P`m>j&u>biA#tNd$t&}? zCQ3*Trps`$-Te5zM*7A8$UOL4*>R+C|J|$8c!H*h-(%^$3YP=bTg&0D!&+sd1p^x={D$M?2<`OZ=x~QJ$j*nJW3j`L=r*_< zjrS)<D)$!zvn!V(|Rz=WVgJX{;lG@S^%x-aHQ zQS=1=36(8Q>xj+w?fwn_RO{)Zon|ORZ&}=}u)baP;2jst?wk0A$&7tr>I9AyFj?Zi zJ6c&ZZJOF$fAA9DYTQF2c(E3V#TEFe9sEA39@v#A1;MTJ4N7H`vOTX4yqm?C&O=gsDufb){a{97tKFM}Rrqi$D$02jM*WKxXra01^ zI)|B&G_JEnd2%W8<=rnQYP^Ci$K`7Hsnk@zX?*P+jx8cssTkYWy0_G2`yXVrS|9+& zhnY7XiSO0=m?&G~42{jkMAtCEV^7!veE@#KLso3X5hGo6JApfq8nEy4b*325Si`co z<`-_a%ulbPA83zGtm1u|n`|gqjI0^c3Dal6bRG{ap*&C{y+<+zk+>YC%QcYE< zrr6hyWjIIXVX2dIv5jn{!u96@LHNG{>1Js^CY+4p`HD3B}W#q1G%cg^EqR?<+x-X;fAu0{H z&TMupH{G{8k1M1X;*U`;5X1H=yy%3R8;M5cojR9QBxS8TOcR-|=bSiG+`XV@dPcNZQrK zGW%`9-Uscj8c;(=Vn~S+;;8ovOR4NVrnV(#xJhc`6xR8?QsB}KyKYPcqV$hOW{mxZ#$DK3QgqPTq>|n)!e2gH_tIo}KRY=~` z#`R?+ulGes-*3qBD}s|ji0cY;InQnop;|N-L;=E-?ykr0IQYqCon%;F?vKg5PTEc0 zsO>HBNHe`l(_;L|*_ztRvh`WwW-Vnv-vdhW(@O{XkqUnws&l9H2O*2S8vx{_NYwtM z-K-b`%@Fw=4PC#KIIPi#Nm@jJ(sNox!8P?CpxFo>jhX}RB{^PcKha?IsFm%82VwT( z_!*5ad8wb&E&>mesbvf6{|>=tc9aoQ3K_s7n2h;m5!SUL;{L4B0&@BW@SPaUYqo$? zpnxpDoJuWU;T`GR5;TS^a<9vI|6P^LWXHPM&;6IWS_4XTy7w9B|!;+j%ggfxU4httm(Jv zA;P;)!W+qO#m;p}dL+|vXUh<}8`BNMooMivAQ7r!-jX|r58qI@JVcd+ z0baP_(r{=tMPv^J%m*PJ&wq3jSO?OQEkV-{$*;)jP$ z3lgmMMbrq>oMY>jw3(?J1TKE_&5tkI>Ko;t;%`vYOCQD>S$XdpX1wC$s$sRXaw}WH zqqh1Ua?b?}pe8LLuu;AT8}oe-%`w|w4yenD--!Q{ym&C8hf4)#?86|x7@8Lfijp## zj4nh#pt<_dbRlL=KZiehHNHDPxi_9TF3CM{Z$`Oo_ zXY!8M)0w2_+FUbM$WFc>^PZO8YY%DqrR!d2o~)_4R}lo=`PWSueb89`3+Lz267p|K zgp->g%Kl?&=;C~tpXtFp=z%YDACky7wI5ekPl~vshhcFYbU)j})OHoHbYeS{4Ur%B z%CWpo)*>yC*wu?d;cCgnAkq$afmWE%HLquakgJLBO9tcdu_kP`IOErE8Ht;UC5Gg9$la9m0kWo9-4J z{`jcIsfwx29tKPae>-acm8K}Lu?S8O#o8YSOWPN6Cp(zT(n+IiTc;L54v|I%*?R?3 zJ#6;YgVbh`e)`B@Ky%s=@944Kf)+_WM}3ZN>RKlRdG}XZ5|>)*lG$FiiFn!@4Gjs| zasD1TU`9L@ZFmHL$(eCMXnS$2!eoDx^w$+Z1Y24IUO`90wlSBOGG{LtUpXT;hF;4W z_xX-~5=~+iX>k#bgwkUQQaaY0!TLM3(@U^eVkADeJTcKR1%pIImlMJKX!Vf;&Yy8lPgk0Aq9Wy6ete>H(=ew z2`u;G#Nl3ZfB3z;U`OIH3LdFE-1}+#((wATgq#2(g1daUZj_d3AYtXYf3*=>m?iqY z{8KZ$sXfJVu^00+iEw3@w@k5%?QGu~tmjk`bhNgYwdk6<>TO~$^4^2pZgUPLKs+xm z!Y%B$T|#G|srSAD%>iicS$Lw-p8Uk5{e%UizyAmjbj$ z{qN(>2wgoBX-BVKbl_7z&E_9X>F7*#9uUIeIi?NQGrbFWmaVk{5Vtbr$04(_BnCXo z1dq1kj2xf)p3KkTpdZqcXy!yTit25DE6muu0u`uyFAFirN~8@fWGXD5 z7z$6@R0pDghXNZZhuhd#ibT`?nZ;GdxDZc_gHIPbt@X zUqQ^@eo!kU_BXILD`zWYOY-u$YqJDs$xIjE0NsoTq5&A&7+V+A^6c1=@k;q~4!#BNK zuTT!0|6NLlMB_Vr&%nft-3O0HK4n#uE^Z?ru?3r31sAkDFe1?PHBh9m4*)3~b2^3%E} zse5%wYV$wItcii7(D%n|6;n?BmVmX3uAIUC#-Bm}eN1|b!@uv!lhx;6g`1y9+EX47 zZU-yX(o9PRryqyGbadgsTtt6__u{ptHjRyB!7wx_-Hw916Tww) zkMiEKrS2L=Qd@!%aMogP{qc!q39ZfffLg*Ph(mt{62%iNz**e=zOkKiy0(6?aEQZ2 z=QML9@aZc>N3^_D^{IY9lzNZoZwVdRQ`(uKZJ)r4EoBBd?s*kHd?^YfD1ygZsD6O= zT(@v1t0iA!7c;+WEmF&51|3SbtkXwaR)lq|o4!cjd#bT18J9jYu6tHXE9m(2T@6&Z za-P)(N$TmFM0X$UH4F3`#ZNSoy0*3_?<)?+katiE$9O;9z60IwO1Hsh+hbMU@qUL$ zDJ|qdcoQdJ@WA>@N7D)28zn5S+tYFWLnbh-hBrDl(&70=_q8-Y`F!+*^A=?lxDE;h zPtsvZ9ZYl&>;j{*5HcAW4+i#FeXi$c)@izQ*{@7Bi%g3=uHu8fib|~~t^y#FBHfKe zhu`gaw155OydC@5tR|?09Yt~C6#nbk_kQ=wJm*7^k1wwn#neQ}fBRf0^Tc0Xwqyiz zXvB*cks24d%{=Bx_U*5$I=A}_4VMGCP^;Gq#Q}CZ#hj2-BOR(Xf}i!r4aXyJ#XA3o zvMv_94X?BO{kgzBC4<1z93bOodoDg!t`;G(j%3$65IE=mH2ZlqWvYI{N3^OrqJhD3nVIp?1Y-pRGy>ng@BWHh9&L%%z1hfQ&*tFTCYL_lT_vgfuO6M-$S9D2Z*k&qu32yxQ<|{^-x`tfO`m2o7b7{o zAz^O0ne-+q>Y{>+v&id!LPXYfSYqJK#ocrrS6e?Z@yB`DJiPiT%RC4N5w0xqH!sCd zg4XR8Kb-6lgZcys@mlIdcc18Z?JKd_Dn8b|rI2k0d)ZgrRNU)`f7;F^#&;rQ@yGx} zvz%nH1#+iYL`@0lOFUm_ukbp$Xd5WWc-9U&;mcNRyx=b1OY9X3yE3bFBCSxt*ooAsmHEnjnX*g_OU(#jmAe<{m{IJQb? z<(FONF0)(Njna2bOAWC*b^HED>goq(}>vL z2Re&4z{Gkhx`=ac&l=(K8xu5%GV)o1tU7S%)tvJ&8Ejx1eXA(H*+N(Fsy%XOt6H~+ z0t_=qzEiu&?*f==m06g$gOZ@aD*G>DD|d#=Tw(CBlzzv=aDc6Bs6{*f<&^nXa8=4M zA$1TsJm%ej+cW^MpB)~feb7%yc0_7cjd&+Mi#^E`)Iu!yl$nR@BHy-0;A(VanM(}4S$ zRArOcHn!pQG7Yun8h7Z@T@s3ucy>H0pjjb~3VmMv`+nW)UXGB&yjhYw*lWqdhi5Hp zA3|2!#VUKcC8(P#%uFv;bUDYJpSK=An4dfqPfTr(k)g)myB1l1iF7^R)b3tuOrRY0 zV=cr9KpIbnZdW9eo>IU)GPfqC9&6VS=;fF8XNs1)lV~8}8zl*yn|-~f7h{2-Oot_w zvGSMS_Pk8_1{2@~SV&+1Wpub#c!Y96K)ec%t0-fN+F8_b(id_>Tg)n_nZ7*@<&Do? zs~9~Cw}HqfnF`Q)e}@L*kq}0H@+-*%cW&nxDwg@>>%7`RmFevY~uPp}rv(0V0Az<-i$D5Se}b*gBbQ&l{?PkDNn^HBFyBg~6)PbOaRYe412L*${p zM$j2L*7Jk)VDaSOPc=YxmDi@qK07>#q%Q?eYAZCy_&7bO#~`BNi~W0UiH`MJm1pt> zhQbC@ihZG7U(*)8X+0QiHZr(6ctny^T?g7nRLhoXS}ZeN7AD&DznWCMNX4(Dh%snY zSlnaUaFCcnipV25UAm?tEFftvwqz|xQj0sS=TVbsbuv-HO--2~V+8?A^pZPY57oa{O+E=mY=OLYX8iq=L_s958Gn#y2 zjvFZZQe4jnlK)b{L})4fS-I&4bn!He5Zsn&sBd^4>VN85G`9_6Ts^c8aH+N%$j3-cC?#Dd8U zCaEHHZbQzp`eHx+QAo|sV+>hF0=dzd0S1)Fe7#q_oL9g|!0I#$kBlhEd+E$}JXwpV zxspwbQ}@p&;$S3Hn=mj>mZezjh}4bLRHR-eyah9==hnK})_g%L$a)`xEn+aHpfrd- z`y9_XkvpOfd8Eysq>YE{Il0DwK*M7fjL&j;hN#oJaf>B5SBoR1P+6#ZlZyg#&I0w% zu3R`|Jg8WzK)WX~yOF48*3m?T`kS+CNsivR^PsVnL($yN#?kbpaPb8NS53+HSu@#) zqV-s^r9UDd0W%EaUG8qg=XsNUuldh6q~D_&@=->ZM4xOwdLeRt1phhjN)z&may{;@ zun>(7d~__DZ`Y*mrVy_(c~P6@wR`9^IV)XJu<$G{z?vfO=g22idP!8%l{E0-t2{VR z;;w_`L(*OkDPE9lt-FJB&Q*=(`^2NfN1&zj7UCA<-Rc*y8(5X29~oY>P~&9A0PTqz zfSruzDSCjUNtO*!EvM_7!0)L&b^?0H7OYL74GUxGW-ikhSk03h)W`ZO z^4oczi51id*KpAVJvMgYH2U~Zs0|(BOsZO>#}d%r+dLVQ=fpXZw{=@i@e>TC+Wz+* z^+lOKlX~>&k8dpse&4|UkO}rx{g;Z1x&LfTTcwIe&;6I}XD=zMIg)X-j! zzM+eAt6qb;Bb=57f@_1?s-C2 z)lzO9l$t*Cm_XJ1!pH*_fMu1aRu%JHNZ@{NlW_^f2y`(@DVMU}Eg^J)P})`~s^&gd z>HB(t>TpM6xkE2>+hlkv43hT}vQ*>I2Bfd&KJfrxeJz4(b7P(cA3g6s_Ypi~@`BPT zRs0o|lrT(??Eg(9BlTz~Wi=x{91DGlruj$=5v12W&6c$lPg+96CjpjDxFJNjJGRNqHi;gLE#ec4st>4f=%F+IMH~RwczutVx zoIt`MIn~X60*E?^oZjO5erCQNf6R+;7UA)Iqd#R4{Cb}kV9uO!fD?1WWnmAdC0CfE z7GvO$Cgm6DEg{3buV)qLI<>tf5sw;`-?M%M8kb;bd<$f~ z`ZiA^16rghvm3%7@nlhjXODj-!O+?kOIX2NaAYmxvM@CoQ0N07cK?N1sqGF>%@l)H z@#_=w@5jGvTabUL@l6I+qZJa$LD`d~svDR71A`L&-?& zhF)qXK391eD`}xmeK3E6&DUrY%wK?PNIcX~ZaPSd#;lkL4Jcb_GB3lO{Wr{xI22Kv z_kR&N`dT(0L5)aVm#@{A8F}1>{cG+0Fig4gQAoH9c$<}}dYevMbxG)t8?SC!3vtes z-@1~8ENFce-R(2*Qk=u&BW1!7T6HQJsl+**|DAyMlJ4)rXl zjn0+4`H)3=i-w_G_b(nX`s8n+QU?mv$Kdph#@x1c+gep4Z5|6e$*r=o<_TLP*{SOa zaD&-$t?h`HiQ{~`$I(M^Y?Ja`++IBU@LxV;avd#Yq1e)X;~cZD>5xHUZ~1oC9)mN^ zF@-%^>B)AJ5+}2+_GS3q>K&|ev~**Sti@@Nw;ZRbdPKuKiDl!18j(OPufa&mcVK%t z?j6ba#Wv>OTQx$NLtk5`oW{qgn>o&y^;@X#6y^@J(n0H*q&8k=O!!?(@}*4j-Xe{G zJ-xWxp^?9Vo<8U6HlruE>eg-f^^7AUCG~^0xEpCMjM-;#23FT|)THs#=@)-1(Ozc^ z^dC6j9ha74bKMU)LiZhY!expA$1MqCiEr!IB(5~C z3>6UE_L;jd@;+<4Uz1M4;|*)@m z4KCMccC$oVq<(W7y14o91{}sk(n;d@9er@q%%8h(3MJ=W9r+>Zk&b znPw9D$wkk6(hVY*yZi%k_VL=B+79>T``YO9G8xv2A=jQz%HHo3iOsSl#hUly0bsrn z-ts+J5ledG5PRZ)GmIH?Bg)p#cX_iyVU8X_@QW`0_|e562z;e<`zbAyGqaXNz3yXnYRmV5g!xFtAmqXe_r&|AE}I=^>CDEaJSCMPUTOaj)wVsz zm>AgNlPS@kERACC9cK^e6sRfZ{)&S80d_{^D{XH}f|jiyuDxiIB38I5O{sH#bBjI% zn4;FURdlQ?PZ|zlu7@qpYS}J5#L0hIP93-Jjba-iKV(7^4WD=X^E_6@Ntnb6XappR zW3VY`X7@f^+P!+WDz3K0I~(ZCQ`Y6(K(@~sRBHD9Au8?B$4J;c$EQ2E0s32J5c{|Tr&RG&PgKb$+ zZ0C4dR($%TxdRiUbjaCQEywf*EhVL-2Xbb5p~bV6ywu$%uAt4y1qzRsHUdI_U94$1 zEd<50G3k^W4(W&6bf;O>j5-vTqVkhs1h1?$7QfryInFPld9g0?euv+CZoYF*^jb#v z@>!n2rwvyMG25-%*#2nQTw*)P;Arx3B9`2pYj|DH4&}}qaLWoYlX6&p!i%&1p87(G z>%f_5dYpx&V7=cj(0?l)0z(p8wK8SmoX`@^4EFlr+(uv$Z?s>oKSQAT?sc7|g2V}d z#roiuayba%f)mHb6%BOYTGUh9$`i}5v`@o+ON!X;FEoD=7!eN>%$DC4R;w-}WP*+xQ*f_`(4_UXDnex}%I6&JEuLn_p)>9C*4cYW{gGt33=6s*4ZLi(A8 ztT8q&z`!2z>f0T?u8cO(YSTqI$%z`#xsvCJ^5cmDiDiNHyT@8uuUn+J(?G(^^DaL$ z!(nO81=;ld&wLND?GRcORZkl=XDiXYv(+(Frzq0bDNud!<7gTSHX|bv+B05NWg7#m zmxc^PdKSTa>9KC#kC;#UevQS)GIJwg5;UXIDJj*h2yRU8u6jlZZR#a5+H}Sp5Go*zFrzNUhKez|Mvg%Iz*FFg2mQOICwE1gDspPuUS z6*PDWau&kfFVtQRdIt(8hSb_Xy6G^RE$*Dpd3@K@U7 zXM_yjm=tzq@Crm9?sPxtdb)k}L%RnP-*}Y~J<>OprKSR^`B{pZh1snT1RqkH?A*THQ!pb5#P$Dxv*pCd@=cY>WU5cmxuI_$TYRsOO|RCP z-uCNzz2_hGjUH=0^hwx;Z%eTs6-^q8jVmQ^eXDStnQwZdOL70mT~?{j(}5-W3|)%l zoYOkqR%$Eh$Bdl)+2#sBDOoOkoqv@xx(k)Gbtw9f_h4=RzAfuvfK= z6`QD?MoS`6EVou_~8g6={;v2_4j4{^}iwU4D}N*ZESD zmQz5khl+Iwy9zeCN7L|z~I%M+i??a zA^xF5ICVA$m_Coy@f?`jjx{NvPkxrAOCdjY)bFdX`IS?FwZg3}ZuoSD9ZtxCYZYazxTE3~1M4)W1@v4=~1r{Axn$`FalkXO7EQhE&y;VqvPORk)tD^YQqcZe`9&7H*x1woRi%RvB?=h@0&jp3A$> z_ZK&r@-5cjzg;oGy!G2TWw1q4`49(KhsTGEWx0kX`_VC$Bk~lq{d^W78&aR9Oem$^ zx}76So4bnCTq&0n$wc5ih#ojW<5g5$8*&;LKOw*De_g^4(Y38Byye{884bfY(WI*772Vq1KxvYj_UA16sXcL0w&$b+-NzIf8Yf#t+BnAqQT-h zARxUwoJ(bT)65x7iR$w?bl3EHo%|9QB@C}^5!4^G2G2`GG&6Ethb0Kz8CKi$fzU?k zW9Xbx3&Y+pG#ph|F-8Qx!K{sxOBNp$+_;FUOKs$qwVrOup-MV8nX%I5s*^1tx8Hmf z<&pF9fzF)AQ6&Y44X;o(PKNV!MIn=fb8entS7A~>6E=KYBsaJM^^J4-h9@dwwCKr; zD2v3TPW=4{B_=6G2XQPpp6B++uyO?@x3!Zz^_^5nQQhAUzeRS02s% zU{vpi+}Dk!53jf!2HN7xTm5xqB5P~l04%tjM!emw7NMn7vX1_*Sa{NK2|lLQnT-E& zz+NU9*g+Z5a6hh3bA;ZWOs*M4kQi#?t^)R5l@Wq+Z6^_qs*Z*lbP5^9p+CGtT+?X? z441>BzZzshdV7!QDz!Xk9oELT25ZRpMoVy_Az=)HvkBW(7qiwM6kKOU`F?{NbQX-# zZi>x@%IHZ*z?_V`*vGcxC|XU^Z@y}$<{Sa8Uv*2aI=9wuxx98TA0gM6j|Sfq+RMA| zv~D8l@jr^LekBrEzS>+lvX*>xyE@3P$UjSavO=sa&ws?_o>C(#F!eQsbK$^ivj;kz zPog_|44KH2woktbt~@*JKjqY5RZy#lH7VVCl7_D2nVQ6tC9s@%)$>?nm*#pU;6bE2`*s&zVB|Nuk!?)3O`p zO4I)OB=NLfugFUrvTU&Snjcm=?6U4>hEF;)lyR}4uH0#*SU|w@hM}08h^@+T9!o(F z`)B^2$AmHdJ!F{pdk)>ir4COYv<1gVYv_c%=M16Q-m7jB+xns?OL4ZS3o|4|nR`tL zCS0(2Ab>x%>sCAGr$yUIPo;bQn^+E=jTt{(HB0EL(_&Y;mzXf41bK4N2))ZUYxM-n5`{o z9ZK7d3)=I}R(~eq`vH9i@Hw%@io~&z+CAuMTjBZYcQU>*?YvhLe~+}qht%PWCLC4P z_$U!lLTdmvSHla#-%F`oHU=aIrI}@N2aLk0Wpb#BHbg28mUlbdR}K~llhQGlz)#32wy=V%m9CI75Fa|lDXkJDvmtCkxszpQ@_l!0PEmiuWJGoE zKRmnLLg9qAIV~)!R?+4uccy!EwhR18Fe!ff(d0{nB{Z+AWtgmbz;H60i?yQlMq&9Z zY+-iz>SkEXs!9Vcc~GT*9JBh*f=p*GldMLk#BP{QfJESLV(^13Ly)`%@WDk)8sb46 zkb`+4t4)oY>R+e(e^`-e<3)Vl%kOs!0GYrecb}P#;kc721bJ_I zRDQQ4bxH)?=0?fr-uAvrL4eiM06DYF!BT89lyeJYs-eIj?yXZxNs~z!#Cq}SCw~#^ zWGf#x+yf79w5%Y)=2I@DFYjr&&J&f7hs95>>C+*le$F?-==^0$O@$?8_h$qbZ#J#k z>anS#tpd`Xki1NJk1{s966W)Bw_#<(sV|?gpAgFp{p!##QoWCxONm4)=T|)QIC8;Y zRI$IH{nqtHG%!skvuE`TqjT4J^&?0%eV(V4It#1_%L0v1w8fkfv|vkgr~ zG%)xk_&f{Eyb>ry&1kD)TGZuYR;U1l>8N%C zZeI}UVty;X0*wty-@8p99Fc=Dl~VF%cwUa=#Pu7jIh^Q0gv_&vZgtwaBRzhRT14Ux zS)D>q0+v;Dlh5RM|1oO^Rp8}9PwB$@jb8y;Z{U%<4p=1;B)mos=hEqo=od@#^&N<{ z**Ni)5fL4Kx&SXWxyMme+=8%clc((>qyoGfuNSgJP}jQHw9xjZ)Q268m-`7m$ZFAG zf4smJb)On>I4S5ZUDXV&;l3O=CrZ{&31@GUQc29NRpxt7?)7Yw83Mu0&Mz%#t&^3F8Uew9V?3`a2{spg8vXaN z?ylxCTR|AeQ;&ox?x#7iCb{XKYm3)WeqhI#K6>WF?M`Nx!hv3fxV! z)Gt3I^SDO{_@-}%v&jn1J%T1i*!ZG!Wd#K{&RPwx`BM69>@Eirt`)|;hn3z zMMka?1cJ(Hrm$YDYVRh|a!_b{AlVq7M0r_@h2GIapBQX!PbDjvfeWK%hWl zWmd|s5dw&?l{wd3jQgYewbY!$-}?@(1mRGS#|>S^FEorPynh)(O#Gc}7_d>7rLV2q zgJUGsIoe|8{%(X5fQ_(3v>i?o4~zapY#1fdB_S6I#b{0-sJ6uLA?=B=O`2UHL%|_^ z@bK{V@>SIQtfwKq`e~el?CoNQAOPjWH+}EmOd-Cy)tBoqME7DSXdSpS{LA7Td&Rmk zb1NPQ@d0t_@$8%pN)bYxyk&ZmH|zTz5;&lCb#bz!hLyXab|HOc16-C9Sf^a5;(1gP zkYgn{`z2?z`Z-}iX0xMuHfKOgA~!4v*J+M{Po1--T!f$E1oh?$%oS12U*$?WW9+zc#W zXwFNHzrF%P+~!iOAq4T~dPiPwuyg@~fbSjWnK`o%k8xQz#vWmsee7MpZASI`4QU_DEyX6A)pdA zEva10p#O7BFn86Il)Kz!^F|&^=5{=zz(HGb)~C^-w!&dhhaEnqrv>rj?V$wqWn9vD z@xNHDxX6`~xbP|U9t`EL-oG|Qmvh7*wbXwF(2+nk9?<;Ei|Nh~@}@bclK!Ca^5vI; zi(^8|k@$}24JMEm?9d`fr(h4KQRb|sFW>GTes+*`8qP>$X>kbc_{nGWvN z46*RP&CH0$A(i{VvE8s65-Jx<{En?Gfl1wn2{8zUGBPjO-VKfCXGp!5dn}DX8cz!1 z9Lqh0x`r0nIzawat?e#m>wnvN^O7iRP^2_HARhh@!(wr7gS#c9TUG@udo9eTbmct# z8Y68iTgbX0I=Y8}}NYa$lwEffErnuVNjU%GO z12|@f?pH`XT>yic@x`XWAyQ`}f=H<-`|C=v{B2o!lQ`d)+|kOl(BT~%oq{fcS+sol^YjuAFJ6>C&G+tzk#yV(y znfIp`KJk&zt$`nrBlP`r+NV7PEW#Wa7W8T^Io%jcDzL8Kx4hBt4s+ccK!&AGVzTuG z>BFL`zf0j6`j?b@jkP{rhWH~<$ey&=o*=g*PWGrDKeN>#rRxLRgM$kDj!8q4R7f2; zf``I-wr?Nrgsc-q3|d9C!T0U-zyf=N+F~(2zKH0jx5MD96X%~+Z&Jz*tIi58q^aO{ z^i$vCMiaWtK!yRJ?ck3aIPPpp{_xDeOw;HEv!JbZefm%xm!O3+nYrOzJu&oP;n>p( zGYSKP!9XUNe<=bxhwNh8Z) zDuDfXv^k36IfUU9DTJ7~gK-5OSZ$+<51XzdH8n9nZG})PT2G_ik{=fEXyb0xL3OGsG|*1jecw{cUK7AH5{;%HQzh`W}a0)a1 z5;7=By#SHK13*K|bk}P$cVJOE*2r*GU!jJsAg&VbYDP7f2Hg=4)$=kW8}s)k*I!$Nm{0|1cX#5|;zrQyXaJp9`W0BU>G2&8z$d^&$TUE@3H(frzW%MfYw z9mCcLc_t>NQ;@{QIKO)RE}H(B6PS9l7DS-z{}6f4{e-j96U^F0f%Xbw@p*J#OJVIF zV|$NsZ0hVE3yW3@!^0P9>1JuZHt|!q%<~p*z}IiMLi=*p(r_k0--_HC@M(eqzL9^$ z0aHxtP&27IfGN$U1QF+yY~ZQHF1bwlv4h6+FH}WtLFq=MXaO?b*w89zjxgO z-tn4FIc-5wJ^)<~LJTv!rB0=uE zKV@2Dck%+C`)#Z-+EZBu4x?WL_7jYTg7oZ`%@Nvn5mo`Smv(vow1<;CE1tXPqt5>Q zp(FWxBj?dMGpY{}v6IU`#T13*=&>`1QgXX3$(hpkJlM&bAACaUuqzVDDPub6)T8!z zk_BR~4R2@if}CV&-vLJAz(~L1+<_!{f~-eP>mGmY_)_IjLoKWWBC4Cv5usarc)eS2 zUO4F#=hw_HZwzS-2zh~)?-xjpg7k4+B&}YW^CjJ@A^bumqSc*D$qNbz)28z!pH5=8 zek@Gkx8&22e1dzi0r0>G$R}+QFX)n|Vy&S=*8N{oP3s&^&JbO?dhl->VDs~J{)k~HB$$> zM-EWmt4CcDf?~D=s$FKCE69vCBFes&U?eYqdT-Vj`M&-x!E!^qB$lZz?v4IOOQ13|Dc%x%}TUa??F|Z zxVo^WcrdbqDK2KGNb>t_*w*^9nm?tpcK*nm&pm0uATPc8-RY97`7HMh29W2%hp*pE zbZ`r%-?H5-=sK?Y4j!{VZ1p7WL>#m~NsIvn*DPLe38@xQ8WG8y2-(2=xdzvTb?s|K z>pFc@eB9T_=Goy+o6qzuE6QUxpreG8IOAlt1iwF)eYAc=Ir}qdoq|s0E>rR%A1hS< zgRE%>j|tagzN0j8mKydr zloCVw42qpmbN&Gs`$-s^^Hr}K8_$zyWQ&*zS?sTas$d(V?JRF_oUkdWI#ZkX9|?zX z*IU0?nXEX0rE#cty6iGQ&VQD9JdQnA^IF4g{SCN}qZfuiBZ3fd3s{ibRT&kpj>#f? zwBSH*#M+S1Rohm1v3Rievg!5qg{Gk(;etyS+g)nY+0gC-RyC&6-YXu*J%+Q)MfcH; z+fSuA>5sF`*b+;pm6C_~9jS(w2^*0BB9CwW#(7~9rZVau@zkP2q1TpYBoSkj@7TSI zH$TJ00<>??Z;#$FtUG{x#DzFBwY>(#P$$DlgnmfX%aG(_oKA4HSO8h(xQJY#E2-^)$RbZ4~fHW;j10i~DHBX}0DviCy*^sC{e9KJ_c0TkBLqHC;{{{9*j1 zd)B$s^c36+(6o8xZ6x(k?3^KmKj{Zysu8Ef2a*Q8WRK2O12*rkdr370*i`AI12ASq z7r>v=sd@4kFg+}Enc8wWxd^#TmnC3!a}^%2f8U!PZY``zQ3W1;led`uGBIXud;BrN z7a9rnbHBU?d}{joVRN_!XCIvGpHl2Ec^=o`^f&~mZsiJk1mC~Cis){`E>pX+z&r~< z!4|Wn*=TzfNT1pt^0&QZ`nSF1)i|F@eijf8n>!$a@b;`zNpGGPD+Gi$5$(1lE~^@8 zHo?Rd`LageOhSEElYq&BQ`Fzdf|l;z`^@`#8Nx^pqQzRk%tPDlLIBoGFUzvjV)-Na z%PJ!ZVWpGDh7cJSvt%Vw=C7q8&is2RzKU}q!s?463|3hq3r-8x_PvQmJ!W(2%S2h2 zx$RWjr8U+9OU;kA^f{@krIHp5i%gNTG~&1ctt7DG)|Z(0Zi3ietNiNxu7BQNl#ONr zvk}u!@x5Dp69ID>V_lCDo_*)Qxz0D-rSObVqohyOy_aJf6`C1@hq~$^BDcgiT2F;2 z5Bysx@qH5vVnzh3gHh4vuM8gYi_=u2D2GZI54LD};!9@BJ`B;vQ85{|t9su~My*Rr zpn{wgbka6V3P7GANWJcRCg_2zAi|Z4-AOma3rFSlT&P;L>wTPOtPr>VHN8-r?ylm@ zY16&RheL@MG=ln+#}OdjG5MPv)L#>@dL_BHM8)Q$4G?5f;avl%r|ot2K1P}tY(Yh= zUvA_JF3uIYz98QgWbiNa#>CU=C-cGYQ-;m?ESrG)1I+6VcGC-ARX6$hlX{ zYY6MAh~nPN4dx7EqscI3yB=2W@p9mYF<^xZ_hgFkDmm%bkiW@a*B>@%PJLHdo(Q>V!H{?fvFexlK{PcavomKMXC`kTkgDt}-xYVbs3X#WNuJwZVJity<9&4) zTmSUzS0?nPXcOgaK6go!_@{;bM6lTG%e`FLqC_*fPmu{qeFHB0}T6qHmlNf3KU zl$FwJ=Zj|^s$^hqIf00M-~7OFC1d_lkyuQFc&b8uTe7#@O;-Qq`lIQGQA2JIRihM| zhBl_dR;lb16I~aaYw7{7PqE@OYHh$QQCEI#Bhq2*sZYl(vSL2-AzjWyG~I&kAhdiV zE3FkyfhBMo6W9@u{-!>iqwR}Zc7kk7qO?a-JfD&c@+-}8mEv~6$>!aLV!dDQ=P$y z*sTiIB2W%*j3O46jY$rfJW*}YD>_`ypS(=B$hjV|@tRoLTO#S4TUat>_IC(%WN^H#dHN z*1R!KfzPu1Dpric0v9^pNRRstX1q|7JVBB$6~8HI&E<|k8S_JP;q`>n`T^}F55PsW z<=zyXTT{7jJwo?}*?9YP3)6p08@lIZA9KpVI1o0Lb|}bg*$25Ca0EwaK<~N%rH?1+ zi!xsYGyydqMbv@+{x$v2S7M2tT{g#tyfpc1>-!0nLm4%qBK3B~Gz3A~?u6v(abPmp zU!Z{CgHDe|^0)i$F%%2B@3r)!5VO~51K5p_%UC|hWLLtJ04}8b=!-K5@*G14-O?o( z*k5-?Iw^YNC9MGog7iYwy(CZzdojRzY_SInqaOD^ZpE%M+!aM(-Y1OJ3!U zdyWZn#%WjA3xTJN<@Z;yg!Xo^m>!Vwq}w2+8*1&z6M>KCegW%JGbj()=YLh%H=Wz4 z-V(arfE9@LzUd$`F9GW7ANjs!#ZOeQ>0Z|=ldBLIl2+!g(qlk(Uz)THO5lsNOekxS z(p(gKY*ny-iDRbahDcPa>Hz1j5NV#huOWI_sB#HH7f6jB%BpZk0-l?j?faBNIiao5 z#5k-6T2!gYE$g6WqW_c)wK|*SlcftbW@xe)OR6zSbPRUX>>Ey}M0v}GP zMY4iC_K^T%ux(lJb-y`C@g6b7qI|lu54;7LxB%WmQ(cHu3NIrN{G>I}16R`(wn4T* z&if<WO8j)jQC&(MY<($(8%)(73IO4 zx`~}Kl+|U7QG55j+`&}M<8~~7kO?<{A9O*37U%};QjqtMDMH5r>P^Adl$i?n{c|wM ze_Fl&|E_&knMHcE!xyygLfCBG=oV)b-WoMOX6$83WpE=#=V*&C)2qT|ss7Y4r$>8y z&yC316DTU;jW=^pfz*CN)krQl;4PkzBUPV`Zv7l9w3Ylvx36WQ4|Gbd2KHzFU*@m< zpT5@baTDGf%z?*0n(nbmh7oeTCy0YI^f^4S32#lYY!n>Pr|(0af29ctNvuh%Nk8S< zc5z!yvL7)X;mOhy{UpXhjwXy8MU(kOm395$;?lG3d}QRPp{7mOw|qP4@LQI-n~||u zamgvq*WbEeR(kvU{zAcw{$kfSA68*vIP$eW?8)mvRL9pUTVol#5R!2x#+c6_W(_#f z!}J2d4_jfCW@w<3FzL5AGBAE@z<%f6ghDE09V>%w4Mb7C7yHcg|5d2}d+GlFdZn|v z6#0G&lBy=X>-Ej>(aWy<#PKWO-zV>Z54`B#BPbp!ssOqE@L^Y!FB7x0NO4n*Ppo)S zEGXxVjEZD#xd`2}vFr@8a|Nxf9K$>b0rc8J{nzL3rg?j^K&~>T)D^-yuJmBS1W%0_ zCmZfqweXE&mtSn{NdLU0{@-{W%ta&d;<=zI9e?y1k))eKV1xRKFTF%9&MUTsADC5` z6nkTE;hZlB{s(368P#MMwdqns6ct38QbkaZD!m635CQ1~q$|Bch@l5iq$?o3_uhN& z5K8F1_Z~W-g*va_H{Z;eGjrBC=SSA!M-~fK-t1>Td*Anc-NSm06~QN$SC#reB2l47 zGMXE{oeh6&WwCsk&wEq=j(hCIeNn-hbe35Ful&Qk2lOqG{d7rS1l_{_kr4QQJ?Q?w z{~TrULFuo%jWg&vBPP+1PEg>_xiMH81$CD4Ds8i*TkwuWVYP z>lmv|?w*-SzqiZ_O4pVMQ9&=^u)OfMZ}G!@Kx^QDlgt9{w@)rvlp=jRuuQ->7T_b9 zjl7j&iZuVH|9`&~|IhFLIz5I(tl67Z6g6^J!g6zWC{kc?eKe|m!ys~-m~jECYf4i6 zjekFp$lUMgJ)sIVtw%FiCaRaYuPkIFkVRj|pvp2R*J(@ft);O%lb)>JHEbL2`&fh$ zV)&;lA+yo0gnQnzqHT01Ma z4EcHS20+LpYU}!|WqnQ+`(K~-7KiK~{rvmJ!Gg|a-ng{0r;0AN;U2 z1Mladg!5RMBGblN7=eP4@_|>GDvI!Cu9@>4q1)iU+#M{!Yy!SqplPC`_Z~e%oA*JsJM}e-AfV!4GnF?JtDl zch@}FT#L*`GPKHfqSr@ag6J*iCpFd{iYG@j6+6_SMgB*VT<^M4B1-b=Xa03=I+5QoaP=R}5`7&X z)ti}my&X^TGK@&~)!H|#V1gD2-dA}O@{u-7nRD_|G@0-9fd*59_c|ggD4ToO z*D&?qERzbQMiC+{FD`^D?xMpR)WQHSBLq>dP;n;-?N@5Z; z&IBiakSQl%j*;xMDI+5L{!n_!Ph}}Rmici-@dakuyaxSaxs7EQ_zWA5WuFw!O7@W! zJe@3`@4k~>kWR6!4UY+mjmLGD5xv?C87|T?p=;tO1tPQJXns_KnP#p?Y5&`8mW zBciVQ*^;cIRi~6$?{Df%+cFl{DKGmMoRI13-a9<{bh=KTeHM23b(<5l>cJ@NK7lfB zf5j1tb{bkHc;!8BPCuhfD?caJvBqwXlE)4kk;ifwtz5}iQ0VBVORJSf&KU^Ilz1l` zxSCE88TCyrhVY69Ki6dIu?*479zbr~Oxp70^XAyy-d@?2PqtD_ZziJNTrAYv*~~;h zZ(gBGmW}$mlHt*6*B`oi8x84}U*O|5Jva1yOhq%P&W<8naB?fJ6Rodn(V$by9^?nw zHhxJHeNJ8V(#f#idQwby$exMixOPv&p|&`WLML$wFXa~qf~>Df$HsW3T2C#B29+5Q zoGgeqadG-uN8L~AN+W&b-W%DYS)ATw4SZ|-qRNHdP2~xBEmlX@xGt@~s*#`NmGqpdh$LRRX zJWsCyA{hB&1@(JJ`M&g>?m&yJYAoTSse1CGse9UnRC!DXf18m<@v$d62ZjRO6-0r2Uywd z$?M~99XsuGTTzKdW*z%A^%}T*g4J=tfbCs(-tlPG>MwGmG(zQDIY~_T&*JNC9i3p^ z>)c6x)dojWaiqa1vmW=i*}}S*MyJ^sVHL~X`(e`_vkC>cy`!9s$!MiUx9TSf#q-r% zm56EZw;NdW3JC46m=LT0a*vG8sy}GRY(4aDw^_XPuBcnf9dy?FW`8m-X`CePnTlZy z84dXNJjx6rep4{za8Olne$nlu+pL*!xjEY?!FA+4UHc)sysFgPzgkoGbGp_{b5Gk= z_%J9{XcJc3%|#P9Or}W6r(jA`2gn5}5gCcXRs3DFrGBsy&FcXZ^j>~zd%t|~`Jly@ zv)0oW#Y9EHDx)6`U{v2NjjCo0C8dKDWd7W~2Jn$?)dP<7AK1dwFo=|ILI($m)p9*m zw%}RodWF@72GhY?R^Uxmli<(gS=Zx~kk5Lr2=g9sZw)P|&&Y)6$E?@XE&Cq-NSDMY zHZ8iNWdKL#eX22jw}Wx@$Ih2EU;Bhh(Avz)t3Xtk-s*4)v{Qunh(Iy z@@qJ$>fz0SPg6W2Ax`-Sg|>MOB!k)z(%>r4*A583yZSDUl)$HmM~Nw6baN zq<5!AdkYpJJyo8@jX}YrNKvS@8f~q~wucUPA}cA03X35?o~o_q47!hfc8gD1b6F_6 zDR*l#;jkcVSNq(Bj;(VbWduNxQpS;A(&pU+DZo2-jvoW1XXZvjjh|k z#Ju&K2~DD+)^_&FCx_wn^XQX!De`cZyqrF#sX%H&lSV&{wdZ+Mdxo37#WXc_+o^B5 zM{9=jEV!D(u~dA1h7`8oS1V%(_No!4J6cp2ft3qQJ!(xYUGMo@BFwD=5OhE$91(WT z>S!CG8|v_2Wzqp59wLyBY-9AvHt5@1Rkg~Dbnu{1aTkD>IyG0U<`Hr5J}j}9DBjaO z*1{Cuzl#}#oTli{#zPgwyT|f%1pZVPUi4724_4vc_pk%Vo8NfMY#m?H3DY^YDE`aY zk2na+JxCinopN2}-ES`PU=~xH!CE}Z${Fihd{-Qm2rP%!OuQCp={AnC)59W!PwT@A zPRZ6xLS3oVEz%2a0HLvPkG5+D)=f$-$P?9^bL%&hk%+5&8^?s_hsz|ot|ab^gEZLr zE(+8PfIrFPLPG*)#$AJ5uPvv-m+97DgSCL_KqJoE104eH_^vOJ2J0F$*{;$aFVsO; zFHD~@(Xr>Jj2PoFz^>>ER`NzF^zeOE)m8GSGjRcA9A#H>6P9~QdkkraLj>^q#j!lG zW)3xdSUAOw#;g)oKFDK(s86yvZIHs=dDVScN;PY4be*c= zY`z_KXC+E^U)y>)?C&`J?a|KTk`TeHrt3=?tqU8*ndKi>Cl&b`Ai5LpRtxLfpLkh& zGgjI%U#K6t?v?&=IjX$XssXvDcW4(@)?K$|i>?8rBO~;rK~D9_5|6$nWm>_0X}R<3 zhYg&HRo1o2Dog2`hFw9>2Py-)Q!ZERyMc+E#=$ornD1=FdId6%W`jDoyQN!&#E|9* zx4#sDlxd=XxK6Ru!gkg4CI5(iLV1C_@2AJqQtj+^KJd~y2h2EQEI`E-*~oC&XJ`87 z&0tmvePChWDbn^i{>X2eMa84u|68rjPk0XZsWLPZ<m-_^(r@i#3dQiap0vMY9l5X~ z%-L+MVa;u_#cRbHu__y5{yBTH>0q-`%x<}hTo$8+o7Q`m1NP0C=n=c-yPgx511Jx? z(^^ZfHgejdUZEcd7GOPJM{FFKE%x_>_+526c-~9Eze%`}A7AQ?X3m#M`d&HhK6={s zG@t{snQ%dIuG+IBzv+Ez5TANn%0_X`IIxLH89G`iaJ*{dG!1PtZ}Zeq_)%?4d-syq zoXo!sc_v+`Q~l0q(Y*=~&{#eGi-W_KOnK34bXGMOR^CB;wbx`|Yz@;`;CSMrFOxZ8 z4L)K&6|}@@Jncx0y{pI_Z6kMHPb`j0$p_k`+CiaZt;~k}&M9V()(wrOq%9SKdV=pi z`)#(}xGw!?nxX{ab>4Oc(f$CKk)*zVX^tJ|T z@ei=yOxRY|O@o^PNU@79%XLs;GX`Lul+WD5RgQ&^9un^4x0+BiPt`74;p;o{X+s!{qLFF?jndTA8t=SK z%&I=Lc4;hm>*TomoLNnpD$GW9?~LQk^a!YYO^_NXkYjeVRgdZu4M~I}-*4D!#SlKt zNeOLvS>zrfI^A_mKkS&^f;I&Xf>IB>T1UW~y2sSY+B8_YI&Y_zC4(q6`RS+UzEA9{ zr)S`DV}!mGNsbdbF0@)5py|_MqBBlZ9u(Vq3O(&tGF~oULj5c!EI)0$di?I-^a=^W zb(+rz7gDj_5-drABU?A>W|NR@;{*V#>rY&$uS@0ULDuU7dxw_0U{V7SSYAi01pMZ( zdKI_%a>ha{&pJ_9F7yM5sMqa~nz;C31PGq9>D9b4Ton8m2xJ=4xXqwkk7yXt1hP#z zVANQ^Hj8|{comGv2wKNyM=%hDvd|oJcy1{J#);9=T6pHn#3>FMW-59!r$hH zu2e02BO`vdlKs$yVXw4I@ydaH?zDwfOLQ*K5Vk&&BMSf^Se^Q0(edB6%@Z{sYliao z@ix?%wD5W~KvYiq%)w`Lv(XQ1m`?w*nPT-UJ+DjdQshoXiU~h_d}%5*u-_$Hp@W5g zs+)i6@JjP*dxorhAMi?iTJL1X7@WUy0dn|(u~4rXHBVsXF=gYoD%Kn1wX87IFdnbD zwVjXQdV~NtlShqL8mEP$sJ_^s{vgf)x$yXR%bYvU8_o`4R1iOMG6ga=2++qQ2Zivt`IA_Iy2g1`pY$Cr9(ptf2KDL7MY_`m{nU4} z@}lVZ&>6H!%Nn9LWf}CuGGdh_DEqQOV2I|Y%i)ngpO`?h5kHAhpZK6qTY~+@2qtNm zi!{pRiS?WdjmXC&nj}|xXb}bX#fPHw4_l0TYGC(pq}J%w>ehpjL=CTN%AALF1cO46 zR|zCZ;9~=xipvI~%m1K9rn8)hjb*Bs0~aukkgw23`~ps(h_=oLjTw#~B2%Bo|6U2> zu=|hVvZ-Hvpg*fkwF+d;o8Za={SWS)phH6KQeXS)6d93nMZXC{8QS80Eeq9HAPi}` zs&@NcK)H(O)iM6Yw9KuM4XGI7?OG$HVf+XeS(vZW)Q5@+_p^u4bkhVUoQt)qWF#K} zoz4#;TMn1N!UJVfx>qqOFl<;BjT(YK-*EGz$@bBNm7>7xC$Dk`m3$d@P3*yHHP;J zwD3#zBNC)8X>KCCGoRP;1LX!7#l|j=X6ZB_^aKI3AxwL5u=>p%qty+8W`ug8W~I2n z-qCQn!VTtAF0R3jd3Nya#qIXw|D8Ws@sB_0kaN9+C8vX7RoKEkl;Kz}zEHW1NXf zDZG({|2u>7{{K6JGU-1VlwS95Mz6WPOaB;8vg$c2X)!Y(4B*#cc#*=-vp||+*3rED zF&+`Qd+(P1IDvZW4QCOoZw~S|Rex7MuhrBkO#L@?YL_G-3a~!VCdkpO4u(KbfJIU`+)v zdBp_L%FzAJO<_aA@qC@xfz;`;Kbqc`FdL~0?MlmOgpSnjK|J6B{)Tu|1g1M%Q29|! ztEIH;&#OyxjI3j8!r5C+g;(YBtlM+SbB0BD2=+JQI}hf_G;~`lET`wfa=})w%bVDe zpx;m@S}zVtZK=*lt1>p5|LVP-I!y=emV0-b6)(!A&gB<9$&`xm(-up;?n&6qIla42 zB2?FKMYtIw?J?I}(}lVT+N_9V9BF$#jWJwqyO0*S#zzmQ|B*`9&wLN(F&uNYig<&g zNF5=k`I`ze@ue{!F?v+0_<6f$Ke5m&#i$QEZBRuywQ-D4HtBiYhfT>M55z*T!*DP7 z;0pAmAh9*NSR~1CQBsf6XCsKFSYG@eMY3Zv8ff2gJLAU`b7syfd)SoztE6hLfy`diH^t*W=A*`<$W}|O8IGi0Uyb?)3G?-A0&Jrg#xDNjIzhzKC$^)1 zCi{14Q0M~H*n=wsXp)|xN_sbV3U4)~s6o>z<9&j?Lt{BHJ2-dX)1^iMe+Ww8X z0q#~t`;fuiCWJ44UUHM4O^t`hsK$cK!<-e5W@!yN-NT@N@RP63(F7Nr9raMO>7V}M zW`*b!+2*whr+QJ$!KNPNoNqq=Q=Mfy!>gpwQN`-IA-kE3zm=yydR;ExTZdV;uiP}J zPp#w2z9jxhUki-960^9)OXNRd$G@sV=q?$t9=5{P-)qY5QgLuBiVd;y6Ihp_3Z^u6 z>m{T)tQCce#~@&nwl^I=S(<2wqOlY(1L487&#%Cx0Ih2-`Y%bNAr<>a)5yl5igoS& zzI(Cd6neK_jT-RB;Jhg^3(1!c%;oO6Ur{$|$ zKa!fLxRD$Y+l-52^L9LaJ}}{miW*4$YmzzBx(hUKq}^AVnd-jn8q0@L9t1RY_X@Qs z+8eZ8U85ph5T1Uxq=(sR?SgM%uK$IWy!a_&V2@eKxtIxw0NKjXp-w^zZ2a!SfV7v3 zp=>3N+Y5XaP9V3FeC1*^#v4?Nn!C^J_Rr;8r5YdK|)YGN9YuM+C9p_Kjh~Z21LUetZy9B(DO%?TdT9}8B zoK4qQyy*yg6puC#6+Ql~F90_|10YLsC^GyfSu)JeBdrY^xNf=VcYUBJj%fgfXCCzj z6`3%>mZiwvt@X3>o~x}|^;Pzd9<(_i+6%n_qM};!GMiCvr3Q=mRShwlH{bSMnA?T& zMCUzU6ElhQRHeH6zmc;BWrOMd4fNp~;3BA|c_T=ypyWsq+CqMLklxl|{7 zR69wA9$7t}5bb22UkNK@IMyQxR2v;pNhgo7)#2p^@?COByT->g& zq5-eK!Ck_bQJXq0d_(`vLIhF7Z|dI;U7wdulH3`XJY|8jIyHb+zKS-h4;=8%3m{+e z7XbmrV-s+O*V!}e!~z!s$-Y0ZJAEblWK7zebl^o&;rM-oh?WG z)^qgDkjh4tn*sOa?UfWHK~HSn4jJ)cL$tOD+L-^9tywwEv-X^jdP7NY^&@(YAzDYc ze%Hx%_wL#3vOcrUkJ7!uN6^iFfxD&+Vl*%#s2%4&$Y)KGR1!bJf_7tzbo&Kxca|^ag~IAWNN|Pzk|sRQXjXRQ@^f!PXpU3+VJ;w z;&PfhPn-I99&M+`I;+<-a5pLDi|1K^UB2!%4ar^%{l8J4a=*!7&sVvzn z(utitfDb1?Ms6p3@7=5p*0jz%cbv_QN3`zSkI7CNvta?La9gD^`+t-0qhzO*Jg22k ze|j!%YM89St?@uLEK*!&PY`0x%`|0=4TJ~>3cP8a?J1T`!x6R7=1UBr_e$9OIE26$sy zt8?Rj@F10GxN=7+q>l--Wnx`9zM3x|#BV*v-qN51u@rjh zD{>~O{72G=PKQ)LD(2iLB?0Gml+nn$^ps|w)1}qvTcF@Ra5)-t zn*SaJBd282nJvLXCPO#kY)ot+H%ZQYpox;h45?Yi)@aVMrI#5ka_5e(~GvH-eepV{+w&b? z(*DYqz|!MRz|e6;<6`mgx@pJd`EV|4S-@#=#J%Wv`! zYU^#mnPQf|uYVM-Y1#7y6s)z8a*2Mto0Nmlz#_og^#JH*_vK;Jw;wP63OVggk5gA1 zoSFKv?YFCl6M)>S_a~-x9Trrg)|9orOaICdf>KPmomQ2BCqQo244hG{Q$(*-nzT7S znkLt(kWJ#K@OjXRsra!COH;;b7k}VFpcE)o6?;{R=y2dILa5y(SO71zdKw%h&7FuSv&0(vY#a#^kxGGLJI;0H)+=W zXS243W3`T14ap~wPH)H)mfrn!?Ecg!cO#Wgesdzy zk$tU^i2&fS2A(UgoeRl;_?ev#8m}fcvSyPbyW{@!%XaNqaflt5Py1Mg)qbKTfvl{~ zTMz10@t%uc3eWSTe3|=?RhOXT#VZ0q3J{Bkz<6Yff}jFXg!IK!tJ79#u9m_p!6cS5 z$%V~Qx{u!&re)WEhzwNUlrngVE{Uiqr2)|yt_-7}o5~j*_g-X8e!J@noXI2R6IlGN zhd!{PH3%OL|O@$eUoYT zeRBMf`m~hnVhNQJRBFe}K{$SI9P7*Ov|WpU2L2S-{&AO|A+Wv)Nc+sP=MEeafqK;^ zp1Ad|7By*IuN5A;9#;RsksF&zCz|cQlUyx!Wuu#zUN7EU- zDmyXshq>}^)jygpU=7z~_eCSkvg4)Y>`PS}20q92wn#l2QlYqQ zk$1hlb3Dm?(~_Aik9*7U=lDYYoR>zE31uzs76Gt_v4HWqMxb!v4DI^$p)&T;*t2tN zw!neBr>|-vs~f+Oa%yw@;v_Prg6*5rk?Q~53m$*aiqAp25%uX_G~T1K^eJfpu=x{iY(Lmwivb>keTf@mqZ{+#!U!cIV3uGgnc(+b*@ z$|-ETfM(BeeXx0E(0)H{$(t&3Jqk#zcu;iEXv?WpSbsH;3$6{4=CpR{4IFM-sqiY7 zq;Hu}sNW5pAxuBl!7bAtB1lysxh$v{Au!!4iCDGV1xKb9#9Y;-?;82Z3T>aWP< zn$;+JYaidBk{BmM+?5mBCVs}P(gikXf-g{+3zB~6@Zzzgw_j@&(a8qC@_ofK{Kaeb zz)kjXola~%r^xVbwG+{FSf)YL>Sy{B*0c~{`?n@^+bsr6zL)G|V$=qk*=Z^__-f7E z(KkvPECC-}mSg?Eb*m_PLofU{3UQY2`a0e}()w}&bkt@Aid~=3XYvBmvhb_xleb4}k!lQ(F-p zJtFS^$^x+aW?Qown{amr;a+_lwBXRQ%OjAtqWzT>x%yf-7w0&c<1hdHC$xVv1@>06 zr0z9rCA1e7*@Zr+Dr#SE6v!qQ9x|x5heCR)?ZN}6Ds9d=Hfly~-x+mgrhORYzo;h$ zu!{+dv%ZdDcfEBl4#o}}uUA&LO!Y&}=5-ESK=9;s&&G3}$?2*iE|vE!joV1I-7cP2 zHA4p2_^A9lSlXZc5w!&+J>XN-J9;1J-;Q;+ZfhLal?3maV;~l+3u=c^KrUgYpYE#C zm>ip!iTt^V|L4&%j84qhg*MBzG084|SiskF%`D-OD1O@1bdXv!hu8=Y1}KYx;}zoi z3Y7-0Xm)cv_X|7z zXl=rJ95xSt8G*SJFc1UgQpDeJ;vWR9IPKSJMXg#gKoVwktJ>}_?3}~Y!JRUi;3HZj zmixfpkS7ESiyq?0ugSRf{)}ENnCN*k-zRiN9)Fozb{B@#$mKePipYa>cIOT&acAF? zW7@0NXN!d9fqkb=?M2{S76qp+K%pyxjzIXIb`TqK1`8J*-@1;HWzU@N1Icn@bIzMQ z+lk6k4mY{@9OaL|L{r&ju9KfSI)X<{_r~^>h(ynPt#3dJGs!|q&<*yI`r1PU5)tgG z7rOxjpc=W=B7FVf0)=FcL++iLIL?)ve&8?V6e4b*iq-RoEEw3hhKgx z)AG9TK+m_1FDYjC)AJc?zUi-nBwa(oXfGCPo7~p)JU`mjF!m}95`>Wkyo^pvZk);}O2@3zws zeIAZ{zP@bbM(@51YXQw_MJU}T?72W2gJ)W=_P>hb0C-0$xvDjbk)x`p2gc87ut5Vy zDdoxu-OgL|AD#_3or_)P#jazNRkkD^4gVWjJL}D%LJyjxEp>>fvrJ_f(*l2~Zs)y0 zCVba_Ek-2hB>s|>px$YAh?T+o#$>B*5yxiFJ zyuFxFc%#X*urf}k3uE3Vo|8G}Dh~ZJT0&wy>z|nB0VpRB&*(kUUmX z>i*ZDltAHT!MNiByu${0(uY;Y)0$~$-1F`m4vMkAS5%v$c;wb_%&9#UaSYLs%Fq$$ zcx=`p8+=(}9=NHLK%yC4+u)c_{vz1oM624!>RG)>1HgLR(7Kr?YWfYU$(W~b-zX2B z+`K0Lw}Tdyc%@o%PF(ez(Xb<1HRNc}2eK;Pd_!^KCri4p<+)q`EFh-#2Z#Rysz^j6 zt3}ga!G|~o9a0Z3l&hR)O{+((uiAVX@;W6G`VM+3zljI0g-)BrJL&fdC z_4ZFzLu0y2fHLFS36HuWdvwp$y0P>H6`&%l?3QBGta{^~>*N_-&`5y(^?aF& zM!e2nb zJ>LiTnvso59an^&zmK-e-F@tH$c}K!VRhreWc-WWF|5!PPKYyaW|`kYtFd&xDR0p8 zCWG8WITg1qN{NBL0>5TPy#GIAiGO@HkA+n6Fi|u~gB!TKZ@KKIdMH3LvdD z?s*2?^fVZ_Fj#Wice`mSTkK1pHRCDjM|2Jlehwn%B*$Nx98t`#AbxI{!WOq+&}31p zZCam7`_-==pes^3f?F-fzSLTu6O%{f*+`^&DTOZ){Hy8=aVQQhqcsqinX!_r<~x9{ zm=dU(Nh=@ct9m|ZLFQ7D|M;($+7wvMhUp|$(^ArqR`h7D9(Xd1-@HO;mOc2HIFL3> zWN}_;@V?#W!{*2OvP9od3`DDFXMd{xifYmDZ7=M3$H0;%JnUxvGFOO%sw+Fm| zECbtr7|kEoPZ0~Qca+;!-T7dgpRJ#rniUBs#Pjn4Q_1Cm18R)@d=;>p;5SQ1m>GUc zsoS|n5v|0%Ab1^EAhObt|L8a*PPoybY58)CdYBa`ZdP)H@=R zxr**GIO4@qI>li>&X7~u*(!FKAx*AJ@M16lc|EY~Y9U-N?gS9cv?qH|$7RoF za!Nls9O4>M6esL7VD^mkISQYYeInMcb1Mt9fy%E`Nr~FULtnfyFn7)Y$)?STp+~N?f?pjTwf+eo zHEZx$xt!ba*CqR-kGFVM#@B^y$ZV3o=Iv@jS06S*!^z56kE}WlT9dv2mf+C%sGjRI z={p_<&p0doxvylSSqkhtwh7mfK_t2^LlqV_E?mD4Dvcj{wnw5zNI2g+?n!Z}Cb{ny zngXiCZobM&!TGA{&Pt<@ImyS{Vjc9ygwy+QUH&wgemk|5^azP(k|#i(@NOPNzb~8; zN3;VOG*i^~jSHoF@7ev{bj7BRRqkOq&MO(}#4V@UI^|N^oaB<`FdV)Ng_xLa(j4wv zZi~P~qXL4PLIW0u!m7wuVpn6{Ph?2n@r%>zm><1oq*&@hv_&yLj>=h>bzJP`4RI+N zKU&El#{)SlMm#9C#vRxA4I9R^TSAv6W4gtXJ%q*v*!Aq6X6~t-#SRMVC!=+KCk4@P z&I;7F{G_1P44_hmwS~>wqsWi*dTob>pj|c8MZm?l$HAP;VZ>-8IiMAQu(`@`jpAxqd!^xc2aXG6MTW?Wd4;Z-DjSnVUh!N2MXR`*f}8L(thVw=E#YC?@!D_w1XM zHkRLkd#JkRWolB0)8WMj$3}ZtXX6O$Da7T9Bjw?sP!T_L6Mjn(Vd<=)qQEHs2u}As zH>zzwnb{!uT-lhz=Z0k)2#V-WWRHw54mit44uys&be>bPAud?ZlqZcI>8tD~`scp{ z)e;<6uuT~rzH8loD&@JRm5A^g!)^|wF?fatCDlea{DmaNz z)vKip)<+IP6NwhLF2W+N&ghH>g!aDfNcB{D*(iTw3TPu}pwlug*aLBEj=Pz^9Z=!o zXCBx3)H{h)ABuJ0aTpodV}9my#&$7rYO%@*}+HbYlc$Z>y5%zVS9?Uf+GeF`+qkg(6+F8<8??@ zmqnyd!j6tAxoQSZlR&Sng5ZEdvD@p`m`5~rzf3a8<~M`njN-iih7=JXo}gL$j?448 zc31x=yD{6gtg{3muy?VzjgP(K$z(!H&<&O7&CI>A0KCY$dz%}X!o7DYn9<~h<4L0S zF-bZPuMt?6L_Me?=Pq-PO&pmF!a7NPPaq-F1+c{6>DOdR7DI#_SnT6uuBx@_cNr?T zs$@hgU)*;_0HwEyukwD6im7(-2Zk6{Qb7({Zye1ZO%>jQssGrGZ=5rb_|%=P?~@$u zm18y{qei0N%zn&Efk#9~$yO?2>c0c&^fE4}hq#&+!_lIvS;>!PWUj1YdFk#>P;Aj( zc$LP&S3_n-d80#eMHx#1Wi(;ZS9K<@d_b2cvuEBLlVu9ls>~6b!AWA(vW*fYjnZ>b zOY29bk2Dgh9Iyk~h{AqTFceWXTztJ~_b;_L-ij&wz$v<8ztd6I>S|+D9r)I#?;X4P zpapg>w`?aBq7cQc=p@DZQtI|Fxf5I?m^lPi2(O)Ti99jht)6r=jb|5`bsL2~o7Q^r zz`DO-aDVo>K4|cw8Fx>EZn!%i0M-ZrBNS%axBD=aTFCJYq(hL$Y``6Q_7-2O{i_jV z?b|>n_9J4#scb*kv)jYfRx;W`K}FxZ94h|rNif~Lk=i7|qFb#Y&m~QRetz-mnwJ`L zA8sX$h*@i%)#~q{1H`6S%qD5-r*i;$;eyBB3)4jgjsTeb5pfV%XXDw_g!QYShjDy% z5$}=nDCYE3f=8C0S|K8Y7Y0Z39FUVD#>|9?jmg-MW|@`_<)gBR=0!F zcisLhDX+HqgRIrmi4XIoLhKJr06k@e4y>7>bE9U9y6CZc!f$WR<`=fMjaM#LrQARw zO8+T!ow*9ocH7XUrwr(NBA(YlICQTk4JJO3BGBwteP%Spga0NSO-4m>*EM?|A&h#A zgaD8!iV}3WD*~Ol+cTR0L`Cx(M4M-_4tm$G2G;%=56zAAOd)XMpGG&5`_et4lUPhduy%2De$4Ua$)M1>RX@J=I_bN_Z&f#(4ARr*=(zeI0A_nM%FheE`p>5CXk4YTcYiZq^R?+3iXY6ePT=|59?*-dU#B9{lWN zoeS~?pR)UB6ML`YV6O=Y`fqLCf}}hoII#3RnX~W*fnf5r&GCf2k}0Bg5CPG zCT8BreOFUOUv|TngRT2D&!b;ng0boD`DK0kdb=@*(|1eg)BvfY)tPstM}5H4lp|%YLH?jLsCdC$z~zvhd}a|cADdO#$CMz-S$BQ=`|E?+3(Lkq z=g7`uz_5wL2hxeBUijY8c);#htzb8MW1EWNkFEX_=BUiIGFlWIi^AVJQ<*sddz?Uf z0bFCst;Y;)SF*4dXvpCozuO##!?RHBHkURRbeKKAt|VfDf?a1ouEFFMRq#lP++ZJm zEcbCdlRZfgGP&;Y*Ah$%*_W%<&#`%5AFOX!Op<&O6U>kcxg}s}7|C1!zjTh6_u#PE zBeIc*%r=6WydES5vT#_Qh;hvrV64P1aJ4mD-bzx5UZ}k(E@KsAmsiskfUNrY0)OhY z?(M`&oK)Qw%il(?M_2~%tg~;2NbJ_;97Tff)1?IdV052$jEt7AlKT4kJJ(^G)s1yT zf^JPMwR+mkBbo#4GBW1QoEOjNCt%uOSE(e7>Z_rrXN~aqN&q-7PY-=2mTzsVz2&Tz zfC^od`z_g`>FxRXq-33;zPQLT4A3s-DT}RI51c{We|e}!Tf`3BiMp1?ihBlVdES8gL=JA>p8q-a6S0bt`jU_{Sh9XzY%6w4YGzvX_R4t4 zX=9zKxau$0bQ*}Va!6)>-U($|)NtZlZ*!RZj2#ny;DM}RA|d{3#n__y4me_e#U1R#u?B{kCQQdFKANLco6bT*PC$ ziv!8F(9T8n)d^>`)pS(cT1HUf@ya=9PK1HdvQAR#O>U8dk=d`CkjrQxup`-W>`!*$ z$!9`BRbhA6M!{2nh+^G)MO{n~S+uqetmGUbvmW}IMOLs7AQ@fgelq|fKl+D@sttZo zZ61gVptUHeMf67@^Ydkau5MJ$LlI-momq1q4dra8}l|#9q(xw%0Qf z7F+cUJVzU6W2eXz5)-88?-m_$O{KI_Q zPvet-*7|f65LMrGj}qO9oMO_08*rT8wKyqVnb(gvH4>&>TckH1XD61;65U3?ULs}k zMw|~dwIb-QTOn8V-@%|6Y@}CI&!~8C^BK5y9>l`hAf(RGWBR+7hR8?7GO*~|@1!yqiR9agVVRxR zRxUseS@Crb?mvH8=1A868QtiD>C*KdlEbCgCdS`mRB@e&6W{D3Nmn@d?YH#3>zP^L zy8IRzAX78S$AKv`Kp;~-K{ENMYj&M?X(PxVpQBm)-4Z z<8Pmn3(SjfuNE}vRo=++`%C1!d_wKsx9%I_i5;czCK9LBIf!RuE}Wx5c)05C!S(?igU`PLUd7=?1WG(wfhZ z{(?z{4@}p=U~%;aX~d^1-&I}) zG2g+0U&C!qZiD-U#SkP6A$w>1TtV7)0)?e9Z}D@1h7Xy?VWiidre(sZiEqb0B2Ua! zWh!Ky`^`E-U$+HMFk|)Z$#ncxQhUYYJmm)nfu9x@)B7NebEx4WE(9S}?g?3tfb4-} zx`88_43B2REl;nPMvzMUh~noog)Ss;)cYJgbXb4?FF`Q4d6J31N}rz?Hl0;CKM;uK zTcmo?I8{IlRN7`yCXQFTeP1UqE1N&+iR}8M_TPlJl&W#?mK2%A0^7e`+OPl8jM}1A z#^L7c@nX3d2pWGbcFn9QW@Dn!vx_3SG?B)hQa)+cp_0O2b%C83J}u$W=2uJFza!I8l!SEi)+#0}W2Gx2pMrLb7QZ!UOEe}t zzqJp8-m`5lt@!BDjRvF=r3w0AfEb8?fPa8=?Qych3hjgQ^|}`eo)y4un3;7l9qH&D zEsmU26PLAAYBDz6;4HSRjX0?E(2i~36sN6!9^yhX_vnLaf~aGSv#zyvO@~_5d~N?_ z!}iFt{+fy}KRgDRkn?dSAl7hcrfwZ-nBlCL$AP|Dt&bkY9b}+`45k ze_x5h0t6OYMBbYb49;6V!93jO#}9LMifK;NgUA*FVb2*Dr9!gfq71ihv)WMyZ7y;%cyo8yk2 zz!HpmGyi(2@On9$e@1ap_b*511QWhW#38=rhf4rYinnS=6-NGaK{G*O)ryL*mr6Hv ze~p>7`(9a@@y-`S&tolNYMJ*-r+T)XNnM*Czj|aOH#dPfhV6Y#)=I!*Epz!Dd+AG(gsE8ta@#@JaTnE4~ zRt@`8^+yKm8d{W8MUfqix*ZQiL*_O@JPVyQqK$z;Y)<0%vWzF!Zs2~L29&joF}^j8 zZhSn#Ex40yL%;iGt&Z-zDr@m(iKRRY?Yy0{kH9zSTj8IA%= z1(y4h<2aohEbc*BbTVV`cy(c^g`nC}=QHpJ+BY1mvr>9n#~~G}JRvnj2;LVjRx^&# zdkT($C&IV!OzTprauWVneW~QJ`j~Vr&2bgr^r4&jZ1o3{D?PsUcxSshZ{xD9eV>@p z^KfSosc4yF;F?<9Ic#g(>%Y#$=UMtw^^tgX!dg%S`Fgt{|CfcPpIVBK*w(y;8dxjL zQ|zgQL;X2Lzn(nLqG5de^)=qzd3dw+IL9+@L=aZyL4umeay-%NaSck2g-+8!^t30( ztgnM@(-B-vKDvuwwIL{sG@%pKVnEHRpK_`HIL#40`q{J*arfa(ZjuVB-XPZShs+|b zoQc^dIH+5@-=kpVc{DoYZ$Ed~&D_o+>IUxmM`rg&ZdorY$K;p7(nZ4q=V5U9LE7w; zEmcS7b76}Uj$uQ9xib*5tDDQyWOC4a6V2arN;Z!UzP7s8X5 zhXa)FQ6t>tC7xF|N_jhZJBd`av;9riUDAKg`Z^yD&hG>n-UD`~+ahBJlq9x(@WMYs z5t+WG3Tk1wo(6{cQoeU4S(w=AMCkT1?2PX#sCf%?zt!A;i5K?hTC?t*1Tko_8gMW) zgmSBH@P*AwU45kcYyo*!2VYbef5N+cZ|f{@L&N{W9y7a_sxHk{SJG1rsst|Aw0rwW z2SHztbz)Mpd!zH$=R@D%m#5&RQgrr1d33ld-;1`TzMQRvhGQCtZ-43qC@zs&#FJqnAMphjDpel_L&#dF8UUZ?t@4qt(6T0!A z0#9b>!v_&z80?4Mzi&+GFMoadLi;>a8Z+N~>0G!)lr-HjXZ}^-w?Y1rji47)xqET= zRIp&R>C5R#r0HCxW3T(&Eqkcl4O603*!ve-*(Yt- zj4T9z$)Fky{Ys)uyIlH2Dsn+Vt0z*aLZ6eGSQ!SpLCjr@@yxZPQq+ku0%(_%xB)f^IZ1E46Z`Ru0!MR=k>VI>^N)BN`)Bp zEp1j~k(SDQkx#p$RQ83h=Aq*~1c zTBT0fnxP>m1u54@fv$^AHSV_Z_zfO!To<8 z5kD8$Yv|ZG!(M8G`Ns+wa7IAQea&2nuuEu1^HtjuXwl8FfrnFxEMYbtK1yY#gIp zyts&UB=C^w_60neEx-iigw{BTNBPHy-_uEKGx*b~zdPAD4*m(Ds5RysJ=o|6Qo`*l z{H(H%iv)k|z&!TY;|lVhF?35K8Eu1WbvZjo=^W_nt;BBr+zjXuH5t;qEZbaNx~bu# znyIcRn4`(^c}G~laW{T4S#h>Hoft0pG2%u_^ab*JPQ&(uGbC`XHJ0bF^2UbP$#-Xr zQYcCna{Nps<~tlP3VF$sD|C6ykrSx?HSdiGl=xWmGoFydyMNNVJU_(WD!%k_=jz1k zD~+RU-Jrxjikn8!OzS)ee>OBVCciKNfpyY~kE%yCz~j49Pwq*LFR5)tCg(&W7X@ zIXiYCQ=QtWk*Jn|!B@f0SA#2v6PG zgCVfzO?&727DyvcN%q10oto<4COuP6B}=U{$k&spesKNg{dXVln;yALDohNZZ8{+Z zefRg+>JR+G9D4JP&8`=3H!>i#@l*vH$)g-i9ft%WOs~moMQ7&D&!(FjFP`3*qR(iE zg%*Lzo+*RY+DPH*%tpz%7{`UjTv~u`OgJRB>hfPr({#mKBS#D(EN;|4T*T8z(e=Ch z7MH3m32f(>c3_O_xLt=XpdM@&TWUO-aazR$K^@vb9x_=rqVm&G`3jfE;#uHW$=O^c z>;jOOL@vxhm58csT`BRX`v_P1wCCb<`N51Vs6tCT8HKPI3-Y|TDIxS7%l$i}8bZ7$ znwe{$(T@(1nc-$5;{1bwRzsAX&F=Jd!FO{IeVf6Nx+zstAFkk%c`95|Phma%G&AV^ z{*aN{<;DDXS(HzSNA!<&8dS%(PYL=SR+e;O)8DTTGivYjMRs|2_$%d~;Z8CV_r-7e zwD!4#)rW~0U+n~aH|*}ipZFEIx`*HW1oyzOwiHBmnLY0f+k52Q&rf)Fa(vI4Sw_1! z?W_K-n;fm%!(WGO{;Sl`Q2*fD=(cmt+EdA2xHY1Jc&hxhI(ugSVrXOR61+yW!Q#d&Vm8tJ99$^cKw?%srBUWYLbvJ26=$0#z}@;YEt zzmkEBCF*^pRbP91E;yQZ!(UdLB+WN}JR{|c|lImL* zLgIh(RvN$|Mv(p)gLkPC*^U*&NLXE+o&Ll{*fAC8dEkte=rDgc|MBpcUbay5`?v6w z(Z9McSj+A3(>k;PLr+{Y+sL1~8byA0j>@0>$z}6zbrRRH_5-bGuqeHT6b;n}X;PiX zHe=|FAX@b9bymS$ysz>2OY}X@mN#InC-oXS6{9(xl}xXpWQUiJgY6PR?E41zKG7Lb z3U4Jqibt6pyoFxZRw|Jf`kP3_3#9M2sPQ$L=zv$e4~M_ZuE(sNSK}vDiE(_-Pp?a_ zKNDj}l;hxsi|%~WQBdST;dUYQT&8}H6?W|SzWZ2d9Gp6{B931DWp5hwf;2nhes=bs z&G|y39Vf0ZJN}%FVAk7dkc9P}!k>2C)c(RRicjltF3`zOv{XV1&l3@SvzL+vJOmT5 z^;HP!*{Sf%VGqu*RsIqzPgWNCi++N1%gh*~FZNjYkNU9BJ4nJ3@u+5NIfbkm6B7Y5 zyHFP&t`Ee!F6Jh8^)C#gF=zz!!K+5WKyywfVKTjOQ227uJF!;3Zg}_2I-=#%Jn2eJ z8OwwN_c9oRoB@uOliPWDtUW~oLNM!H-7Le2GdGEJZ7K-IVsDaGZ7%NjZ5 z`@32EWSG2IS5G_=2qr99hKWfj?DX2U9=+i6l11y}NYyx{s*jV|6|X991Jd;juvOFm ze3!N!OT~P#u1Xp3M<@-47@1Dn8{WvwGg^I@TES3(4)P zS$ZUu$%NG~_kh1g56PYI!a~3UcEHN9|I0V0>#|*)esDgO;f)+|Vrmk*@XiAYJ7C)G zmI8U)aelfQHq$3KkPaSBT@ibyIQ%SErYkx4?c@@qHpOziUbY3aU+WsKt7q*rwZkqp zP3f^lz2Q5{QP%QFKnPTMpGJ?q9q7mo2O<%=cSDz7^we(d+`cRqnBRueI{4p$1y+QY zYGvS&&klbK;4)$lJ(K@0(1!vA0dHr5%siS+#% zVmD^hW7=~LaW3J_i)coDl^VsRfmnmA50AF4M~Ny`ZZ`UO8A{f&b)VVC&=y}AA(~Qs zvvC0QVRnUD`VnA1X8^`n(4k$a;{Hb(V$mp0`D-f6r$oMeY-StmAf1FxNf}I=8hrV8NXPW$bVw?k70q@kN#SJf``azjtE5UrfgVbxLDzslF77ApB&7|@_Q$1G3MJy)*c)rNKz&7# zWOXrfr3tP%Ui`*noiUQ(LLBsIZ2Yz7^5Q|Lko>&69F--AnM=4PqTmlux6G%VIf-JS z=BDwkaXR%#KfgcoDRZ_*Q~7+}JxvcRJ0_F`h8CZTo@i^nK7EuGt9wWWW7)=soyKd_ z3QhH703K(F&Ylhjq}{15eymRuBBa0?gB*&b$$;UN8O?1i8M@=eJ1^D>L?8hLZ`sX$ z(_QTM8WWjkC0%4$DqIT#d^(6ZyUt!0XHI{Md20;6Qw=_mCm!Jt)X(#NOb52d&asw} zCDCs;ou@PWz$aU^9|Ka0k9Fn_7Z3P)cAG6-J5oFk2l44EHuxI{NG6{SzX%+$+bdD( z&LmI2Y-&nfRMnF%XP{NeC0guG19$6t>%fm~??hdbUP(yLhO<)?&kjmS`0q7BTKmZe zxWhk#lRY>55!Df(0xSx#D~E!wDz74|7u~nsR8DD$ANAuy2AYXlk`pAl=S{e9`7eGvBJQDzKLl z^vdBbyLr9-OW?FC!n)*{g~T+TmCuWzX}0x2iopuc716S?k(Tph?EY7@lk`X$6M{Bg z=0g5yMY?Lzg-dNty1EDr8^*uM9$5WrU};2f(06c>mSkDhi&MT3_-&iTbL71;a^sFR>Tz z@wvQ(BeckJ2#IDJZ!VQS4^`kQmorT77FD6X`0GN-w8swRt@U&aaLs?VcJ(+I{)_k; zINX{zor7zOiq3BUl>9&nPxqsz0rm?f9(#!nFArwLs`&*a-Yd2Pv+<|Y+m2zLR?1;B z%se_l^}cN~du^SB4*PRB8(YXlK8E1ct!3Oj)?hWhY87w3&#fi9bx{r_8s+i3RymsCuM z-IFZDF<-(P1&X|NdkC&ufa~&1a(cxu!MxxALp2E_wfWyV%YC6$PbL?WmDpx%x}Ok^*yD5>N9dYMdF4 zB59g+cTsYFRdtT&d62El?B?Hzc9&geMMd7JU0=S1%P}vBf$4X7ub9{y@onEUwxUw^ zWAjUE&L4d5FJTdS>hix5H4_z@v!DxNVkc6>cp zrI@I{YnYUjL52%CC?&(x8f)tB&W=Y;hvgTET6yCa55H9j>M05?aA!q-HB;UN;qCf- zk@sdZ&7lYq(ae;I_CK3-O))AxW0C~?eg;xNmxCgU{C)dGo)<{vJE0+91YX)n^-*!~ zT1J>(i|0MioiK1f@s>;b|H~+h5C6{?g{%Ohu-L!i|1b(O6ldv^?~~l$z#C&CuyY#9 zagWNb(nar!FA<2W;o@dIir8Kb3l{_|r8Bb~lu5hOU24;bt;zHNdWZnVdI`VmW;V5WjJo`i-p8AAVlbgYo6XZl60clf*JO`m*r5T>8}jFTP9v?8l7% zNU=KmSwQIqk8X!We@p_F)MO`nzlzyD&$X=GT{xz-%Y-mK;P$MC3+pZq*}htUE< znH(7F?f9z!hKtDvULoo?;ylv$u4F&%4py-JXyIP@6I$xtdTL(m2kXn8kiAY_yU%A~ zy00HQ`kmFDFzV%9_{Q2D<_+#!S+eQz1D~pgos$j$>wmI)pUtU6480h z(JC_8^^dvpHuvqB9KKrKAa?-e6^-LeATBVI@hZtQnHxK+dft9fZmTC`%RixCZN*dC zxKiS5w!I2)=F=04+5#bV?(jdQv!_b2LtHCit|sPwAHK4 zhc1rA#mZezk_G0)v!1c)R(+yP3*&x~<7iD9HjJtpwS5cHcSxBw&Q_e5CNUyb9JM<3 z>gvT^qZ+xqYe7(Q+|SD+XE^FTFYrZ*#`6mMQtGo;bg3pEi*3NZ`b{G!=L(ET> zgR_^wE5b6yj~}J+Yq0bu3L%8=Pyrj|W{bl`QMsay9p~DIRDS>?0q)6Pegc!KJ8_A3 zMyz$euqMgwuR_^H7NoNFYcA2IJ!Rqj&5 zM4)zx4$}fJKy$~AOuLUd51mhS6T#`g@kD3Y%mQ3lA8XiDG!NJ|s!kcl*p{2CChKVY zGr$D&T0cIWm2_dmK=%q+f*WmyVgI!MD$E^?ywJ!qG_yC_?PuphDf;Z650tD*ce+q zuM9J2m^!Xq%uDX>OdGk{Q!=9JSps+8a7;_?HMvecX>60y6P(#e{(0jXG%v({A>9Z} zYT9>)rl&k_OcgAQlN>gdrb=m;lIffu@5QZs@7G|ea4DLKpLK?M_~gnzIDSlXDHv!N z)}3qz^qD+s~G&? zO(=AWN3m-au*XXx)BfWzf*B~n)!s&sFwSO_{nXl)pGgl|)grB)HEk5clAO5w0tb(s2R65Wz9t{;XZg${=1-qQgg?P7O21Fe7f0GD$da%%8s8&O1V|l#skElRc@#B+ zP)IEafmOTon6YN~t)Pj!WF-p|gtm;^c4mql{*?#f<3@0Z>Rx#g@}TvWcYu|s!SISB zZRbt!JBn4+%(e-!f#i}m{=>Zjp^Nq3GRyB)+I#Gc9xsW#!?0RiT5*wo!m zW8ETY+w?0Ex{Gs@!cKXR0axM3ef8Lb-B{jF0g-?CfdeWVoN=eA6dIXfMOD4TmX62c zl?a|qKOGVzX&S({C>qhwI4Z$QPDXr&q-z90N{`ofxHf=s4dYVy`H&&vi97SeeU0L< zcxmBc0#v(MH~B1or6$*?Vl4Gq*of5D0bM*NirEz@Up!;8}S9r8U-f){a@s|3r*}X zHYR5hUf&mD&LMuT$>ZxfvS55&X0@~JeoJsV$R25$9m-oVe$aGGNYiom3fId?*UodS zqcJo_Fsmf0`+zVXZ|3CpYo$~{9Yz9$*f1vQ+37MEB0z{!G8N@@JS^M2w<0g>=sENyNoEed8w7 zq?6%=kQgx&!gUy7Ru3kl-X6^18^ulAPydxV$PzxmUcO18tWcdQE+K|D>Lef!6`ogx zIYUFfB>W}}>iq2mr}2aToFVw{$Sm>#Oi|G}*I6)ck?8Cb1INB-9y{XqYZ<;tg}z00 zx+RH8c&fPnDPU|&o}lTr-#IUKmmBopBvx(UPuO}5PUR{fKti7O z%PxzOoZ$ZdM}Xi4jC1)}fm4qf01#x9paB4aTkj1BuOG;4DT(>SNSN23veR_>5`m3} z1#4+eeNb<52?5A8Q{MYa7Mq6mT>N4i*bjCds$^~weKk=OS;E_4#vy-zUl7#;9Rj8` z-8Ei-*H-@k{J>FCcNlM|C;4e>cIxfPt8iF`U~my44b6^{#!|432ihz|o--#tan!P0@pqXh(wNV; zhkl|LL!kQC$?Y^=Rnb^EJ&(M*XaHL{b8sfn5GmRRHB77xm$*~Ulxf^1x@9k5wb2tK zs`SkG|W{)Rdl@VCZV( z^%-oxU%%^v!Ql z%D&0)wPJ2Gw)RFBAu=X_D>ybv12`hf#=FOAb;CS)a*1xXaDmNVjDwckQX^f5p?ndT z|A8lnA-M5>%MpwvZNj)qk;#G*{vxXa}ZDX9?(HZXCRk~6iDiZ5p(@?z3aC-dy zaam>t<1boTTHcROJZyW;i9I~d!qCJXwo@Lq1uwsoDDQr!rB%K6G3kW)0D=^&XK<~U zUNfz%C)l|5>Qxl59#rJ51f(pCZ6Nc?UR)Zl9&Gi}jaXb~W)Lg}lR5nidrdA%NyHPQ zbepTNN*8nOSjE#i7)n~VeZ|zPt}IoUTPQ%1mAf{M@j#QBu?U$x}1`_ z5gS+B3^~X{yF}#^V(?{;GCyE{a`{%-Oun?#&W=Y(J6607m8-wio=M1|EBMGR_3|KD20ThH4JN_)&oBW?o{tV>SB zoX~PLXHbA=DD@A|5Kl4TE}t%ozmPDllYW^gfrT9a8a~bmD+GXsAZOO`&7!qJKinp6 zg#~AI8~|v@7g6;=SriOvf$Qw7;R^SR>)&p(E&VU8GAXULqxg>Vp(~oW&^vms#O>oP z^!IHMyBppkGMq#Ffd`M{?rpy;8q8c$lS)%6(?8Z-4ku+Z$M8I@k<_A8j)ko#6BS@X zQP`mO;5x!$cA8u!mdhR{(o4~mBA18Wr_T@nSJvlfHlJ4A$YYCFH$;5^cX6MjC5%L` z#f8c9wFYQcY2h^aUbs5|K73Z+R!fT$6s?tD^rE>avaW%!@NpZy@QqJ)6|?j)JlsL_ zFe^mLr$eJJ=DzTVdv014mU(Q+wVw7NH|%uiP(>?Nv1RqW;+63K*4^NSUmW?|?s|PJ zzD)J%PJoXIbSLde**AOlq`JIy0sFL7y}52AEhM5^wcrcJON^H=71e4&35;zkS@M>( zb{r*pdUNoT`e8*Gws(LI%%a%KP~4$UBzzfn z@2%z={$LAoLDb<8(FYj`>;k$%!9<632{X)qD)J|~sG?{T2FRp{eF<}I{DE$toTy-Y zyywlUAUx^`7yR9N4Lct#6REFK>xXLTy@OZ;JZ|rO^zplAw~}$w43@WsI>cbwA3rG2{Tg z9{Kz4Gw+og2YLKo?EaWYoL_a?#Lm^gzFyzD3t0SW5*?nNH$yXjbg&j=kiWCTG;P;r z&Q0-!IAJS5IOD^U586M?sbmi^3nqo}u(i8MwE5u7CPRns#ZcP?MT(`W#(l)`EEv>I z?pzvT+a#bUbJX}UiD#$UWem9`rQWh#QdLAGjJb(Xy7V#~ii*s!mX6Khj8(c2 z&CTu41F*QNYhSIa+vt(hmSMt9u$T>4WvNSijA8mepFR#gcd@}NkoI5ZX#~HCyK0n> ziv3QE82Ni4DzwFUZxY`qkSB1VsSR%raZ3|Kgp*^whN6(er}h=Z8lAaCcj-9Ru5FS7}*#rDR`4d6`oP zx-5dq5n1zIvfIXTyf#Nw%dbP_2RfwJqwlv3JJdc(&Fp&+l=ARBMZs@9y7$5MRl{o< z3HpW7TAjIb&6zPBYN4#XIhoZeLv>C?&#GQLy=7-#$KW1=4)$PFg}84Pbiaye!dhSI z2o6W7k~3AD!tp5q^79g-!G$mWH!^cLCOkt8gRj631!}Gn9nF>|`Zf?QcH7hW`_|*Y zP}{nt&{VET^lZ1$^b!?IzXJXdWa-PMV{NMMc})&o8s&JzYun8CTRshK)=nb2vLvD) z5x4^H1N^UVRP1io+YhUvJ;-SFn@_szxXkvyqm;jfM%Bw?yPHlD&L-{ETAEl)%ngOy zY`Gqv60Hs(TIKb#XUMGN<-i*Yd`rTk1uA-###@}nzgcLK%nWYZShbs2ev`m98lhEgsDT$|I-z5$=ZI#)wXFHG6OCx)Xke{%v;W5Rut+64NnmU9revSS z^8^rW+iSm3*U@j)XB*9&pD>lSzXw(GpgZnJSnPK-dXr$_m1=Q&WpEqBg$*b&TB`Rz z)t2MjVxh^#UKi$Bmm60{iGe{DD?@QTP2XuRyfo~u#;F_kzMxZQX056_O?eG(MTnX$ z(!A_H;q1v+)@o}&ZN7-Qt-7dHN;zMJY=i%Fnogu#TGp!I&AE%20(YXk9z2|kQ!DRq z-K!tiDwUk=W z+(cuqI_N)Ml+bF5;CsfPz$X@-u1jl8SFzy3B>R>~r3>7LNvSEAb)<0<&kgETRISR9uI zZ@=hK-45LU{HDQG-YhE9_#%JNIHj^jT-DHCU8nxhDqt3@H0C5K=(<(a+#juhV76HP z-D&zK-l%frPf5tJP|ydRf-|Wt#Mhd@tjZDOD9pi}<5~>8JBwFIINEfH&NJyNn%N!N zL9O5MWJ~2DtX+2NG7DAc%By%R##GIp^_g~-1&@K^(YCF6rq5YFr5?|Iy(-GH5z%92 z$$OY*DsN!kbw@5LtzEexn5WlBu+E))sxWS`lUVPlnH1Ox<8Hm94x?G4;_=>m@A0B* zfW271c_t+OG?J$4)^y{hxu--sd&Ckx_samA*|Szx4K20Irgp^dGG%Xhe5iL<6IAZ+ z=#*~Bk`|R)pi-F^+W-FQz!adJ0-toDVSh(ujSK3Xh!vCuvYi^TidN+gHqlE&OPM6L zZqL-GE)%C(9d@5+ZS0*(8-L6!5jme9ulm+fsArbWy{^>w96eoNXpkZQM}eI0E$(h* zu=y*?iE+MS=7WANddBX$l!bQ@$p?Z~Zy?O>^#`EUfuteWOpUc=!?Qu@>=ps0YF?x1z$qq9y4}JXwckGxz)-Oz!Ea;Y`Q&*x~ zc3xY8>rHYr_>2K=FOfHp6Gp56Gekq?R3Imfn?eaf433$PWErT~05}q_8IB9eE>tCC zWUoSJhH-N}kR?iEG1z15d^pu;=`pI{qO^{OXy&Z?EuXMfM$K2zrpzDcBD-H}kL z8)5xim&5%h1`jciY;AbSPMmr`bK!r9q}kK_NiwYh{yneKbkFTIW7ue+BHR zq6A=KsY|G|YnNRJ9yZWuD=Phlolo9jn;k*7wA{VO8Qz0GmGpo$Y2Kr+9&qBrfpf7p z(d8q%(;92JCiQ2!t*TUxe&Y<5CQ^bX4Qxe5rNdqzNc6oN-9~`2y7e3I4f=$)o3f=g z5#24{(dW#YQBtex+Q1(Obd53gC;+F;)cTW#050~N@+Fs90<#`DO&)q457~Pkmr7j4 z`1t0|oTR!Z`Kx5U#vK}uQ zH{FU_pRjjchijNlqeyZ~jZLV7rFg<JJDjkxG}s zM_4Ep?Q0Aj2bHHoK5IYDZ!T5jN1r`Tjc3#ODoShFQV-SX+hNN`l22EI98RSdYtK2n zm%LK@39W1Ud)6Eik@XizxcF$#e#YVu7Pyg34tLV#qz|6$xaU>Z%t?!~8x+}H?otvO z^m5D=7cwpUxe0Q4w^aAR{~Egx`%K~Ffz5Ke8*x@_Hj(mN*%l~wD@!@ z$%}A+ktD|RN~(}C`lq=`QtJ$4a&I8B`K)Jz+(^p%*iou`yu)M9d{F4vZhB6;iMpY& zsWScLj!b&*%t$QXBkth%99!lOOTz&!@jUq*#vw5;vQ;J|u?iXYNN#8pO3Boa-wosx zK4)i@4qth#pG}-p+04X}U!S?jw52QFoHEjt460q6AJvEp5EhL^f;_jY<)dU;g-4bO zm1x`!KT?~+$896HGfa{;@Caz$+|v+s>$#`i5@+rK#0E3`bwBx$nKyPl*g4fVIgy!l zJw))RtSU}WOASq0&gHi&dUF$d0ywC7ylW}veL1d-b}XCEi?44PsQRH+bfyH zBSphi`V{^uW6Bnk>)7702p)OSIt+&;iR73tPvsWWdr==xjD;R)C2^Cj(8*-H=8-5( zaYCBI_FTpF=!r8Hn)N4dXgsT<;gg)3%lOK1_jgAg5Q>t$wqXrRv~4;rbdInKgd4tE zhy|&P3XfUHsbjT)+ceaj)lO&)8O5DKMjW&io@{b0U}54vwm-R@9jwJ(Iq#1*0z8G2!s^z4^-EY2#>jPJ#Ln-C^%9fr?Q6hBOvJ zOMVDewp2Keyq&afcN(?vb2#Df%fsKZJ3fOGkz8u8_xP)rVW*lvucP9{{cB_x@&jo< z@uagj*~#sv<96xnl6_YAsmPJ|&JRKH6zx06sh>FlMm1ygb-#X{a_3MsX8gT`R1zS0 zrFj0i(RIF;a?a6}qPpU)M5(ZD4G2zAGW4=Q5(7q$->qFQ=D!vc#Q&Dsx$OI(n7>kW zKXc`?&!?g88))lR*(&dbbRf09>b<=W-}Do^vs7jd{sxbT!d4)&e$z)>GZ#(<9MQ@| zm}6&WPzGHdqzArj@dkIS3^LcIQ=20e$6coBHbS!mt+;_k+fZAGmHixS0|?TDLIu!N zSMt+wrHXGnio89ne93&4R#ac7S?8eAX2&QBntEeiDruVttx*LEZCp0Efj2U`%C-EZ zSIZ^;p0f#Rce}h6;6K^{QW^G@6=G(p?!n6%*Q$^0iQFbqvd_*I9L*@`k@#Cim8J-} zLVUpz2RI&tP}=y*^^Zc+9k%4$p_rIgoI4{Xg@a~8kLg=i6-)MnC6sL<7>3_n+To3P z-zDGNyfM&u#Wg6x%#j*cB{P=&^6{w)Ok`%Z0SEs%E)+j09LR8FDe{|tZX#Z=7Y*8@ zHS*4~q~~WSC@2Ztkln-3thSt9mVPmb;B+><#)&urlAWZ3R)cS*2-C#=1QM3YyRdfi z**y28Rpxd2cEsxQstTUT)-Mv2a*WEwLY6I7n zHs1s+^Wsyyi4;1BcP6B1gM4Vx+1Y>Rxj z5L5q0G}e5cHMX^}TOK36ac6U*;cxlokK~iATI00A6Pu7$*`1bltm^}}<==NlhjCaVHi>PBu)+?E^#$n7^SMmj0|>9HUC(Mn8PW(pB1Hq0GT_?<}jqD^Pr zahx$fC$<%yFK^DYiv2R3+u2k1vL{FWG}>6TW~3e!tE4One1}=$R7G!DiQMx7>N&0v z6tzd6dY@l1?q1QO@5c&#@J z_V>PGwU~St;9MI9?N|$s3bZG(jKi^ed~bVv+HJrh!B!!+T%0eExr3cOjCa>#&?jes z--wDe(jC^aW;`m9@_CZGTSGrZQAG3!&S{IZer+&UZv*_`1rBT88F39;PU4_O(;4i!NX_>Qy{y7t3?XX{%xL@jSw%S`;d z(;*?w!UR(DRL92${&&#$w7QAiSKVg2BQ4I_#*vT)=dvmQpjcABS%e#9C>2zB;2|L$ zSb2hDn%*op6<;zAz1(5<=dbG2WmbZpL;o}v$=__FF_n@)>D#sd%bCmL@2!(9Ll;c&8aL@M7A{dENw~8}oG3 zKz1#?Y_&9S4*MFlGgh4c`0;?O{UzJn@u8)b$%Z9MLRY0k|uANxZ>sD0VA_@%GvWQF{9c7!R{^4*S&EMS9p0~wojs1AMq8Kf8SDU)T~v6dfzp}o32sU#;0S2cb~hLnj0rca3^L=*LrfJlr%|M+fASGjyE1& zLurzbG>tR6uLQ!cYHe)YT&w}Hk{Nm z@PgFUukRzHPn&c?@Aim}cj-V$3%D+k&S&QXG^1wpJ2EK@3|B{Kcm2T<{dz<#QN>34 zmMb}A8|(sXv7gGq#jZ;GwTNwXv4&x}nrS@li?Ap?A^ImP906i9w{HA|OQ3EIfI(<} zgLky7hScap5@6AYY>%afvzQE7lAXr*h99K2fZK4F@WS9A_tHZQG5Ho^2FN`bzdq^H zfcwe|%m(1!G~%M}g`T-Ya0VidaZnT!Y8fHDwfs;#+c_ta$Oo6vU|b1Y;PtS$tyWO{ zK2YoB`GNPNFz<=HHjWRJM&`}vkn-TT0t-zk9$f9x?x&a(29f(njGvtLI*VAmW|5k4 zQTbB##rw;tKR^y+V6HBDo#6=njjgPu8wp#VAuPok+YwQriXbu&1>PQ0x>)82mRs#Y zL;bYX=>0tRQ-XmLF|*m#WxweC((5FLkNiRkpieo0iwuY|jgO&U_#P-~%KwQYCdrgK zwcr($G@2ep*bv`FVAA3gvk116-X{7`U6p8CSri36qw?-)7qg8IOC8hrbM$Dc!1U+| zk52WBd`gR|>qZ6CYOv`iJD79e-m0b!H&?Rkm}Hnc_Id4M{_Mlk*Q!i!oDAy~Q$u&# zUaw*5F^|-Ps5+-ZR$Bu%-a5}12=oRzgzNfWp2+0p+di$&`RXUQv2)OsycYJxOG7|h zJr(~*=hrN(jMUm@uB_DgGsjkKydN27*5gP*x0^ksQ9C>I77M=XI8=j&!d6{`TeaZn zliqB}N(Fg^OA!>UfXQ}$$gnU)Z*wur;LLT`^!kE1a&H$123hkKv(+|VdE=3o!5r;4 zVzK#?1?QkGw-%mn5&W8#hh-eq{5#dXd8Y&F;8H!$fsP9Ci-4-ki-Ne~AN1-r>W&hX z2l_%f#gp_6F2uh+co-iv?|Nf*C(IqS$!T@ki3Li@jYTl5nJ_<~^phse0!-!*yHy<% z=3!9QGpqxzx6GfIyP-E$x6kuA(>y3?&O4?SRqa-W^4=D`CR>CB*{YjtfrR5*BI$z8 zb}O<&zo3rmZwoc7VL@Vh~94%Gp+OR&L`-44a;qmAI$v*=jTNe5 zU`F&~$Ta!6Ok_yM@T=r#{g#>_kMJm2*{otG7n6pq1ze|c2H~ZMo1W-{7>k@P{?=^% zs>`a{$2S5+gFkmcHp$ZkGg4V*Y|+R)kBUnV1;2-_Y&?xl#U?XVg_;&Bih9XB-^Az0 zjJiT~R-Ti_mb~?Fjeo%NG_=|UNID0ViK!p33WKU38FeLD zI_4e-R&;eSeGM`Hosra^{OvDV@Yf94{mYr4JL(AulpZ$TDE(vw|9L_2#K)D={52ul z=jV`DlO7TH`ap5XIISYG|8AVudoaav(u}j@s^Qvg@r&2fnNYr>S4L-v75btYS>rIf z;ixVD->v%d+Acvu%P;n{v#f@AD1>rl+(afA7{Gt1W1(3^jO`lPIQ6)tiQHZ^S=TD<0L$Gy5sm zcSY(l{}IU2uqWC$lKb5MAEwU2E2=i^`XT}cXy}s z(A^>3;E+Rp$LD?DwZ6Y#)`D~Hb6@+~zr87=qYx{Gg>-p;bbc97pAD`5%BA-CnuPXZ zaPc(mP((SMxN&{z4rC{aSXj+vvC>u1J(kRE`0(Kiw}>djcHK8|kImzo=5EKuB)*_Z z7TdVt`xkT!tTwL<-tu@Mk^VaKN&CtTwVExl2s=adG8)!U_+-5>#PljDh0#*w%ET*Q zeV7J#Z@ii6VP(LaYTD|)g!fF05#61sh>{FQUr|)$xis$c&lpkUcG-O~ss}hxjG$8- zBIqThj4mc7)He&f{|8f%27ZfD@+pBu0{8c}YBtROwgP<4HdIKYcliarzXzinm2#fG zZZ!>~{EpkDBKV;wqhadt3$0A!h(gb6JA67vCaHH>O(jVLX%6Z@)H|yi&@b40D4OgK zMV~5_hpuusRe&Y6HeMa5cQgdvWq~2g(v`@CLk3ev1my*q zb4CSf0*u-5zcP#@BHRLGOQOB&Jo9FrQ@i-9B9;J;K%uAG;Y*%-vx{Ct2sEoXjAt{i zG)}QPtS14|IxMj_CNc2MVwFEs(&J=QDUU~7#plLnj4L7>m*_+0QGlz#zM1tMPz%8w zC2((`12<}KA#mxQi5HCxK9;zJ=xf0iI(Og1D0@Qp!@vL`&Beb;K7$a2*ipL*L>-mR zB5!#$2v)_!Twb;)y z2q1+FhuzU^7Ekz^;jmT*7o&&!9#1aDwhrWgce`hDw^=hNale-|kJbUIjYmyUJH~W3 z+6qEBo*t5HPp59(5rpguF!yFV!#Ro!htnn-8<|>^GD4~Alkv=b(NRh@K7W!9{)_!o z6-cE0{uQy68Sl4qpXV(Wl_xq?lze(q_=FB}!twA;=?tNU_8rdH5vZc(ppZgz<+%nl zu0>-3B!+&kZ4@_fF`6w=-wo6ZP6k3CQVg6{Oc3kvT5Z}Aa8QRe;8Zm z(3tfMbT;(GSlW23a9A!)JW0I|)%$~!Y}c~&1exlW#xeZ_+?Tyavb<)a@Mp04=B>6O zzLi1aV8%f+o;w3*#n*$hcsHG&PTeTS^h5+tR)u%<*XY9H?`|F>vOgtOYFX@=EgT=c zM2(pZhwhp!d>sAF6IqI$21j-4jX640mcw1*K}T{^;(Bf7_{r%2CNp4B$!Pn0+PWZd z3G7oS2>lEG_tKobl&X}g)%#$weS<$RknFbk>S0jzY~ip%vxFvZlM%nzgJW;1tK(a#agi{~CY2 zyPT=dCpFs~{V03Yh2P*h&dfDzU%u##Evvd%flc#?o7lC&bg7|O<)8cTkZO*cMoBx_ ztOS1XY>CVKAf-sG*C|h|sbb<0L%HO#$qF3TV=7&xY@-p!?dG1XxFTIaVv(I}BOeO( zI?_jg&F$BD1`L4L4AGLdjm$)o zX^7m8a~2|nk3=*ISg&l*+ka2s>6Uq7l1i`r(-TN72T3lqaT@`%ZF)9>sJ+C`Y<7=* zh=2S5r8f3QWLhzI+>yWGkF(qCTWp$$w(VqaDM&X`l3A#{AEUQCxixB1VGr;irPvBb z9p{mqGsZqky`)rh-MS2j+%&hpNFPtuTzjCCPIO)OoqTM}Fn^>UYrbWElQlglKFgz! zO!SuF;$gPssH9X010ClBmws{P8`{r5yX){B%eD^9YOXg#6Bv$C5nMaJhOd~1hSzF& zOMxop)jD3lU5xGw1f6x=#fS<~MO*+`!zF;u4&4Lyx z9_Yd2vk7nO46WagY80~%1y@kP{l8tQud+eSvr2vF-r>Alz;_<^bv%CIT=TP-_V_ZV zPwv=c3707~rGu8(gmyY3(Qa$;h56VJELJv;pQ6zPYfl6@q*2ea1vH_bf$JQD*T!eV zKdlxQ3QofkB!=fE(@mDUoK&Ur++0%Dgx08(li-?97i`{swt4u#E>1zpY|u7>VdqIa zvADtvW{KGk>h?QP+M<;c_wTjgN)rs7c>Ta(6ML+QcF*sA2v$tO1Ro~Rv0g124Kxn=b_WI$;VAsLF{GI>@1+nh+CDMjM2Ks62r_j zvn!#8Up?fJW6T3Zoq?iPr47psvL%z^F8uT5?J8p`hp|6-XhIlzVx$Fbj!Z&)V=X!O z7iyjI8WO)C=5lR086vyzdo5e>!yG&7NC83cL zcu9o%am9}ycn-&Da&ce*;*;Te+WRwnt3VS+VqllV{H61;P6xl&R5B$QH-xxBz(j=h z_Q4G0hyG&y2s?_@C0TDaI*g(80kJXNHrEA0WxK&1Fh$b~?v$<90VV*CPo<|{m8>QD zpc0QP;TOM5?H>f;0`Fps4r+GH76#S_3)1>(-shKFkZ;WZDWQgGB0rLz8U+)~@<0yw zM~|##qOr7W(RfG;pV#I3eXMr1>BqZlu!w&VA4m~RDWpB((GVlXoB!Vw@ICVq_(1$M zli5PA*VQ(BOfotl4Aei^|=#CK81}EX*41- z#$H8w?cUe+SUcF16bVf;Ih>HJ|@U=_^}6(W;%*~53Ld*)Nom+ul` zyeC@6y&mLsKB?&*!&XUjEm%Ghf`M$;>s}yO+9dSIHl%lvIbfAH8_U()U#*_z3B=OW zmpN&;d#pO%5Stp*2aH6pyf2*PmJ@g(lD4iwv;6GcE;L3R}oZ(uFuiK`j-2 z?(Vc^#GbWjldt1ZtYlCzj0HxmyN2p}(sT_=yVKN?tSI=uu}jev(jI=gsC3UR?677j z3>5^=2jXV(K$QgV*X&xpK!BbCgrw7^zn`W7`{lIa(M(7RvCGO55CFSnX1JI%PH@Py z`RcA%T&QgmsMVWdfSMhTV^Z z2zTM`+ZWNi!xKLD`;!T*4ZCP?iF*EKYc+t~b>d~@-fc0idrPS4KCXYYPIq0BqJ}*Q z)nxy|#t9|x{5^TU=vrTOqqv)1d3zJ8;b?VL`l^4ys8yq2y|`Urlw!bm?dmsKW(NXk z#&}xU>n!%dwcU~n3)-95`@@zMEiMZ~F`>i;X(}5$hKm$Pr1r|SiCkr)L3M=xQLAj> z&Joh?+r$t<*@i0}#YYpbm$!;s{K(yv`N&LI8By%!B*AmD{WpyB1jPqAqqJ?*MLxtB z!XQt3eJQ~gLL3T5gh-kS0f>V9GeB0ouw3($BXwonwoEB_ANW$t9boDY=RxNfF=2y< zEOexXy{zyrY4OD^0fio_r158obR$$ z(>C(F!mIa#M_e`ENqJ!RGuWOfz*rh#@(mvMUMTPQ^=8!Hc1`33VoEfs%ot)ZX4ZE- z7C5wdJxVPMJQg=0$1bgpLG0yQ+2Lme_e8F~&N`2~t%mZQsAtk7gxCG8naQ?3x3hXI zDpgNj*OL~JN)WvZiIeX5Wz-2%6_wPz!Nnrmk>AMddQ zg^5nDmp#oLFZ9QUxhQe#2#8L00hvqR*!ewl6ZpOip#H^e+dYf`sY&14RKhJc-L`ng!Tsbjw18HGIF{*CIR9WQAB(Vju1;NFu}(;CX-@?329-?col*?oMf8p z4;@bkjo2LW^_TBw(ULzP9nLbQdJ?!)I?xaAb$%KHVoxZq8^$@jw|+^O%TifvjG-9B zM7(ZIdD6V*Y{xvN7}!NqN}UL!be)Kffu-RmbG$*l0!>KzQDUB$Me@Rzw(Zq^Wk!7{ zoRu5n8;gv|@UXX&r78dCSS^?NDwA^N50q?X{bpzU`WPyv@Ciqckc^GRg!S z@2Shys0v=$drR4WSD%N@7|imxMJ!c7IFo0j5#yD1ymC;I>x**a`2;rAy%B2r_-;;azb=Zy_tCm2V#!K`N8=XGes3V zmsu6`gtOZ0Hfx{ku?~8a+N_`Vl9x?Re*B%<;Ub{fDkXMZfFdJ)d;CI8mDP8`k0a(}>U1ILQ(W@jO2fzb`tPV$J{7iiz~%-LF%56l zQ(nIm@rZpzjT!*HLk8Pcd?K4~9%a?fnaH5-%$!yd zSg6tNu*!#vrR{b?eDM+cd?=3d!dczL&-T2?Pw87h_K55z*3SJSJQg_*IzLimDDcD& z2t{^PzI%1P)u{wkj?>Y1KaX9lQl8wg!@8JK&}-fD+@=3qm_MFv%bKW9$x5|P+2uzv z)-*9>P)%>E7PQR{sJLelT0CIlNKG#xn>1spezgGKQuJIB<@|)sDX|{( zFJRu+7Mg+_ATUD&Rh&gaB{Bl!nn4JfjS7Y2P?3>7y?|v)3AP}dn~3Ab12$^GCGP|! z!Bp^m{bL1q>ij3J*679@oSa71*n3O)4w_0D9x(a4P6j6}2*B#J#at%C97}kyUP)jb zSe;i*()Y~@-vTTb1!vj<9l?dK~uc&x4 zeN7~%2*oR8^2qYdG6bZnkXV*p0fr;a_e+p757`gPY9I9ao5jPZJ`Sv6wx>AhNC@>O ziUmbAY~56C)$$GUY9jLN*yg9byW7~Zr2^^^P2-lNdHgQk;Tzhj)hWvJ2-lq)5^Avf z45xrnRejOJC=@r{hL%in&>#qulRDw^I$IMuX5@yWsnirqPZ{0GpMUmd_)EE;zY1kt z`HCMICR|b1>bx?>`(ixis;6q}#3%lF3h{bXyNC8LbAV0xRaW|%o3g<13JKxW;S#ZnwPG!yxe|Y~R;9zK?fSUf zMo-Jqa^9MDU0u51@HaL;$hldMY`$YMrwB9q0x)Zn%Ixu-`4lgd(u99O#bX}*qT5uW zx68#Y6D~UZoGz)-$J3tpO3AX;T8=P2_l&1;>G`+31D(0|Rr%hNF=B?Eb59pXW~x=4 z&1zyf7rS}7OA!ehcm}3vs^fD{ArVt4D_K?RET!&Vmn<4(jI0uu!3O@#M{o zXQ?G;X4Op5M)`w;!e}ZlIGyUVSl^Z`;N&Q=lA&>?NLT2P%eB}U@@FHx%Fok7&=U*` zw~?*n2s4ZY=T9>_{lIgJ*)4gfLjxkY!n0_dG9z;28c!`R>irRFs! zJ5B|F_^rW>MnD%9a07q$sQ?hLB_$m`&IbO32<{0i==+ZfL zGFTU?*E7bjD)BwLOzV1Mwo@_4rk?05t*-()X0%Kj^QNzx=6BNBj_z>vcOjcR)^}Dt z)r6_T!|z$L0$(QR&W%Ti9#n!sVW$5aCC5i+;G8}leaHOAc^MRK+Ru?XMi9FXWOpZB zp3GdUroU?vKvmukaM!uT_|=mnbgrdb?1#^)*hyv_}{^56`q5xXfzJ)4**hv z0>nKk%n}F1_1k z@|R}8%$|M6{HyV6)+3ybktlqJ#$wX&U7J!^|A_fNaV2Zwq)#MtT9hl=SjxQN$&OQY!X_AYeNP!bOW>*B4D&I2sFWLVS)StZ9@7pCe*xZx*l!Tn$!nZq^~f%dr1=$J9G zgQexa?ti~FrJqyvlJwQfwIYEnU`0R>4ISUp3Gq~$v!sC6)v`^$%g6rs@aH=_;483D zfFGvX7wpAAlAgniE#I{aF0q`iMYBx3gezxQwCkiJ=nstIN{pr1%uFYymIj#HJB@(q z_CLIG{+XY)A=NBe-EqLh7%HWD;jZ7tM{b9L8V|x4HI2qsN8H{9WVKZz;f|`&q)CK~o3t5Lj!7 zhM`bCx!tk(XA-+tytoPtF8j<#t<2z=t@xoF2>aZAx- zGxCm{3aIGYpZY#-gaYuppeee-m+DE0j!0eVL=^z4#6h5g)aREGwcGpypa06Nh{$aU zLoly67&*W~$6ck;X{I>~#2|N}2hdQhU^SYD?@`bhLgaGTOGw?O4BMNq+}o7B6a{Yw zSB+Rz1gvA+!&zh3X+;|PBkrPv-;)9jWcj~`KIu2C4B^mrKDeYc>(lK0j+~uaEh!a^ zd^v#NG%NJHATTW|P?4cpYlePjT13ir#>GH!lR>c|;ew7VH^ z(2~)5JMU7+z%fnhMStx`_kcm-HLTbxU~BRBS5uWdy~srds-l$|Z<`M_=;z;z0`|p^ zYaXoBTDE+++?yw0Uz{FP?sd2jPu;se>2^>M4%hM0(2Y0kD?0kg>o}C13^|OTZAi+1 z0bg?Vvni0Y|BFX7a>4A&4wR6zc0fU7`0vNPE56^S-@T95PAY8l&06FyBN-&`kQg*LhGz9!#7J%`Uk9!0l zIWJo4O9Ql%nk8V`D-rN-*2@?dAsF2gJ<2@!QC@$P0^DFtV)TG<3u@BNS;-GXL1_%S zR%AuvZWj#-4v>CT>NPTo9OP*uguD`e>-DgBbG*A=*?FH&by;_(x3jrFWP#U3=wRYp z;CjY^peS;6sIHK{M94#3EJMR0=TCRiXCM1I{zdo#AS2Tckq`BCsJnNvzEHPb*+Q(2ZFpEN}$Qy@=PrBr|_@Vmdk6uOUJOa zGHA#qq~O#`yiJwfZh{EK#!AL4QfW_F%%_XJ0YX)Ye^marg8Wb-9~l_fB$eE6n$Ou8 zV>~_gv97$~`;TQdNiN|)1jndkt{(c61^d1&Wr)L$lmnyvAG%*2_7g_Gu%9F^~jz>^EPh z)F`I0m3MIL=g@xRGGSXjW77trv{`&{in?4R&Ku{h^rFo4o^7N1+Vk-*`Rjn)RBEd; zULM9Z4J-ld+XKkZ^`ZBB<+p>g_MEco6A?(sPP=vTjGjO2GaHd`ju|05Me+;-+4?mm z&2Xn}OrVQT6;t2F#b$j;(rj0V9b4J8d*@~`PI?`m$cs{KmVq#-)rNQ3ismttb1A&i zot64Lg>fFZ2F`_KL{4*WP5>Wqk4i0YPo?5o9aGbj%b{aocx2eXZ(^rI{>8feC%1YdArP2lnSp(?3L$mK6&$Sh$v;B;XFMf7I*Q zE@l2geE3{!T}a}=UCH}{`05-Li69kSFAxXQh(RsF_XW2?`ccM7B= z&n8|4lTOHuuD!vplu@YAIM67C@p!#GxA_z%$o9FlL%Z&KG5q@8Q1xkqSEk5)H9wwF zsgF>|sN|2TPS^Wy&!bhKE{fMNNpIh@O#n?&rn@uP7;W-mH7#U1)5)4hOs8#nOyD&i1{csU1eeIGLRd z>#q=}`1P`RqUHkf8~|_%$x6N2LZlnFh2D5;MkRy4=K&94E%ptl#|D5aufG?O_e@bf zaoDJhOX}n+;OSp|mHjD7)ML~3h`(sDFnCOb`eT5&I*MriLgPz4fK1U?x>EqIxgqgp z;6I;Gl_AJ?sU161fK$)E?2~**w1;2H4{J_@tbm;&#I^>|?91@dxfDC6)|;PBbLFCx zVumkx;^OtbKh_GwUCkZC^zI~SP`5>o?$v*L+#OGt%h04&gzhZ%6YdCT`nD&N@@Z3) z*BGU2%>W#rH6c02yyxGG+o9&1f(?n7>kF3c6C7Ybs4)i2xe17E4lDd+rk3kME)dnw2S z0nh|^Ock3roQLN%?9WuvxOPe%mCZI^RrbmlUmeY{E#g)O)GfmPJDX|`#PubtY?b%G z_p{8zI>YoL=%Xv{sOYp9hTF({*51M3q zdl?9=zV5m9D9+obs*v!u!n{02YlJUG!*Wt~-+z_1SRL%HaGnABu6!GLX@I~3f@%j? zym(e_i!&D+p{-uer|27$$U4msu~Pn(Qc0x9&8DG#R>iqjZ1t-Ne+qJ^YE<41sQFTk zDlkG)d)IK6!88~?H<(~{rr&f)9+-N%j3`7)Jk6L%YF~q8PYAm`D{E@?leb>59n6#s z+H<;%m#CM1BN&n~5KdAp<%KAw5S;c}zDcj7^8%Xr*bmCapd#tS_Ba&D!$fK{5?d1t z8~-N$tFZT3vW8=lC7xBwX{6o>V+K6H5{Yp9uV%7h8hG5!6a|zj!Tzl`$^MWjC)(FgzjBJgHaFfF5FMEFmz)uOwX@R9(nT9A<3L2 zrkqQ#co@w$$9EwnqoN4F5@6uR#q-VIz4c{CB@o9@5IvBsV5HWc{9f#od)6TY&3hId z5w(S!Vqv7nt0zB7wzc7gFxcJ#pJzL=xzwuUGYuk4JB#)sEum_oUm^|3LWE3*n z5Ezfb&$(%_dn;r{*D$;^RXG>*S?sU=D3kj8-M2{}g|5#}9o~-bnoVxz?`G4k$!oif zl~Yev!xDzib{^Ox<*^4taj6j$r%ew)t5x2_rBf@-7wjcm=BF=#`qHiQ+Jddaw90gL z20a-Dw>2w@v9UHsA9}!$>Kj+_W2kLgUYm>wl@5@dEYo|AMGf^EtOAS4J0%2Z!3x#o}eY-GGlnFcMvhNl|>H`tF-&~d~jB9ri)kh9} zruN_rDP#6m_4meNxdHun$M4Ok8fWGf81@m zK3rNWdFZa1q%JWa;e`~%OBKcAer<1v1ckgjWKFRY(_5k^SBw&WU%`TrVbrGkQ(Uu8 z#xBE(LYJ;P=Y>}%DlAgW5+9{Q)&Yc;wOn=>6hQp`F-KTUhr+oAxeka5sFjMU%?)9@ zI<&IliuFYM$x~4i^U5%I)`4J;6e~VodE+{w=<&xt-1IPsU>AJI`-Ge>T#aKKkFzQF zo@;Kc&7H#kERVifLSVGsmdZ&HgeNtNpZdI)GHoTC8hiZwP%1XcjU`=PM|RkfP%1^F z1Hl9sE0(Ir(yK6vZRDe^-DbmiL+_GBeXd{UBRr4(d^LBYxAik_xKaP^AIS9v%lA0r z{S;)~;UOKrHY)da|F&*vX>h!In!VB4Z%sdJCrdqV44E?gNK+WEn}E5u!X8s zE~XJ6hG5YTQ!2HbjyFdapE7FeKo0RKiEH>Y^031kh27*E)?7CfXoAl)Zn)efm0(f$hO^-9p5g3g>!br*c<{CH<$PcK2uo{ES4&Hhb#2D zo?7%28MYbw1~$us-3cBZE;ZaKVPVPT)?3ufAY>dVHphHTJ&kw%!y(V>-EL^Ea{#h4 z+Q4m~UwR$nZBEYzthe?)SAmV{!wM(tVS(v2KYPM*$|GZkrsSoTOr~fVm{L*P5^-KK z^B&Rhk$?U+6NS}nsz)cM|6!DCvJwQ)rdd01z$XpmZU5ShRSS0ihAqXlc&9fUgk8w| zW8KbF;=h$^VtI9@ZW0Ty_YtdCU~L_j zssz`Saa7tbl}?&-jny0=pvY`gY9~i&{hID5a*3Q?19{-4xNwJ(yndjdHB0y)GLg{! z=u$pnFLi1>2Y~Gt!~-@i{+D0P>HB7DK416jaE}4S@8D%IL{T zYz4BDZKlkQFD=m6KJ>zg`?AY_oj5Bb*>)~<-ZNi=E)8kq-$Z;kfofq-8}~EU0!;X_ z8iePYKEWp|IS8{p)BCsckPY&KBURXbOtWd?$ghXa#7J->=LkZrw+nz%jl^Je{d8Jr zkx%1!OH8ZQ(EQ%N1bov|S@0OSoCFlp54GK04-{N5TbIEFZ}%w{a(X;^g!1tAuN!rHe6}JHa*lpNA4z5x zV)~JT%#+N2#S)$y!`A6M7lK3kvHQ#LMRxt~mxhP037!1Wvhq#TgY_s~TY6P2ocV=x zk3ZrN*nU}${bW$1#`T_Aj&i+upJX)YGcAXXC4opJ(h@i9Kr@1Hw$ZOUE1dyB*FS44 z@3QnO>nE;61UX1W72$~9l4MOsi?+)466@Xj;IuG4)cl>a*%>-r+mecLnS_ zz#oje)B#lOFk3RiDfk`rjmjRE{$le~4YS>V0_f}Wc-lX+^J7KOD>B5yu-XRHhs^V~ z?senbl-W`Lz=I3G4vkn_Gs36mux1|=rxd#TYx;+bO5CGPi6>r8;XfZi8X!_WGK_c> zoBkRO2k*K?pXX#fId5~0hQCxyt$0p1u@=zu>fVs>kKzT}1tL#C&|u)pZX_mBBG~{~ z{vZrWLuvpOGX)sPyCQJ@Y#UUH`A!7`9k$AEdZ$7nTe{=_&Atd_7DCYc`=ux6>mgN38<)H^7 zZuCWqNWfBo^%3rM6FFWmlAl+ra}_EgrBqbCRAcj1iVJbtg7x@&Tk7t>O>p0fO&lI( zCbyNP5+99Wo5VmfRh}?1$UYAB5LClZ(AH zgwd~XJY2ZEW~1*?^Z1*|aT&1?AM{oSu%68o)d6Nue4^@(A(o7BYI(|{2*QB- z_g7yVPxx#)^GAb-k$UCWfj6ty{%N2ZTb~W?Wlbj)NELaZyf^>h=f`Bx6+>q|>ZQ-9 zz9~`J8e@5FdB>|v)w+-Mu7ab<7`=3LphOav-|G1A3$Q@>csKr00FFN2*;ihdg}ILX zwX2EJ?n4t2b032Z_{l%YL;jh4wc55ZM`nC-{V6t&@_jH@pbA;fUt*M#^`RE$X8a7{3`4x>v zK3*>^O1hehZY4tmrCCeAuG?o+W7CeZGMS7lO7=VV2t9J;o629W@ongNrp?tqyHlLp z;7HkoW%08U1>W2`p5-gES5UREb~RC9$KPnp09iY$_>pH}&lTC7j{gF9kQ)o(p94Nq zM;JdQkxv>k3@4Fi0{%ws_tb!0oGh%2bp_ERqeOLp3mK(ND$`>?5*xM0aaij^3X_Vc zww8&v^~iW<>nz)PLx%Xqq%=>cvAF6xs<I01Fh#r^fSAYNDRiRkJA%Imo0%WJoGZ_8{)b5q4kw}CRNjKpgTn?C$ zIEXGr^uF75>%(z=Yrt116DsFxrriJJ^vRgNN`>gdnY zaOZ59T-ia4cNmg;5)Sa`V!DIZKXe_M`zN*Gd&`w}hZ}=#8M;8NVsedcX@zRx6Qv^7 za}rZSkxhX@IBqtJrr2nDtL!ekG-a;5H1*6!8hvfDWCwZkMTVAQDtA(4d2Ma)jYrB#w3L92Q-1Ro&iQm ztcSAix#@>{M#=Mj3~8=5ByUiM>B#Jb z9(sbQJx)w4nmYQmWz3F+3(^-QnwI#gn`m-BCvE%4*8-iXYD{Q0iZ0`#R@XJ2nLF!6 zMbo_VRaDF$cxcO&vMFQS{aE)@(K#eP{Mi8AF96;t%hghi^4Ob#m7L+-CGHO_xnmAK zYzOl0&$^j4S37VV(^ZBd^A9>i+qwwVLye4eQ?{THl|Ui41f$UpF>NjbPNJIO3ZXQIRaXqG(!Y# z^m15zf`p-tVmgdA0&N}=-8NSWK35ZTW+2_uQYdBCVNs_SZob23@R^NsxP4IphSdql z3v&FBT8d(R(Uwrj^ct*E2t!owTeL#!${~?JXcyV0FC@=vE@4$@jR1Hlk%JWn=1a+PqIiB$QHV@4o2y z$y~{e2}njZPYM=s1~zX#43VY37HHI4A4hXP;kwvHgrqiRbPj=U|ITYi0X4c?wq;m_ z;TIn~7|yeJYi(^Ew`QN&AcjtD`pOe68wo>dzY7ot232f9lJT!}hpYEcuJ)~H>HKd& zj(_Ujp1;&hQC3RB_H%c{ODIUvYP)EcvcJ#6*ocHcly8zekgr!;Pfdt(*f~ELrnCPY zu5VL*ECFbeT`xGX!2Q1ZZs!vIE$vKV@OTG7iTjyw8YE zDhtV1d$oypvpm}I!ro+f&+y@+-&7KC5ck{9$QCHY7rA`u)wAnY(U=FSUOtWf8L@sf zzD>H*7fBq1SRo{kZ`i#z(h;0A*4j{y%4a2O2iUoW2NW)RU|rUGsj87@78MZhwfin+ z8)w-R;t1}c_jI(R^F93FJ&7sgAesckoXd!>;W>a(W{M`|SGR6&$rtHqyN@U0Xf}Ei zvv>HMzA}7Fp}2vAv&nBP6!(3kYm$w`ae467X{RFZAa6Mv$>Zt3%p1Ayn}dOZ%roWf zF$YbmM^uCqD0+5g6i|-wBYbxDXGp@{zf(B2@e_wih&MnV`ACLk09hj0`qiR1lJIp* z29m%zAmDKR-#J|K^?8t!6gY=9d5qjvTaM{2-khLMwv%}MP|j137JA~CtT_fYKZGI% z@QX3KkhUInm#$*#NKg|pxnVP-Mj2bJ2~q4pt)0CG2PEqld;xF3D-1I1SE@!`7$B*R z5@<1S?y^6N&hXTteL)oL^Jrb7fwP@bnf^Y*))O_y4I!yY8agB{ev40g9raR3dR@aj zAT+MP+(}10!`=#KkE9q}VVcigNKu5{{V%RTg-0FJ`$Fn+ZQ9HSht_dETgraLa!-G0 z$$01{5qnrs;4fJt0~7I{>xbZm=o1A?wM2gqZx5h2941j)|K5cEbE*S3Vbn;2 z#4}XK-6545tl4PJ5_S_NKgKTG1iCISCE2pQwx==LDMQsvLPyi`B+A7%+r2I9ijps$ zmkWuOd#qYVcd^_o68z?n(#Cv;RG(xcfm>PrQC`WIZyZtZ6sWEOBgG88&Uz`XE&WqID7m6}>WO^pxQws{VWTRbrJ%}k-bIf6d@WqThv%ePWU%_s=Q&*qvr;>^ zh1?-qFhG0YfYEVpwih3Fu<(RF>=hf}Asog^)>-^%Zzj%M3)!-eDQ^Fff3FfwoxvQx&+c8YLGt7C$Ex#UtEZ?HqWPyo zqVRQ^n*b%rE^IEsuV}(Z(F4-kMr9VxSP2wI@?ltEJvh8f0sZQc9Hh`cZ%A(4n2Uq+ zxO#VToBR{oEb{(Hw5lPS%1ZId3tox9-Iyp0hnpEl>rq->R(zV;uQ(|r;jQNc*F|y_ zdDTU9UzdUp6O_UpJ{fF_Vxcc2-v)`F@`*?C9nm7fb9>zrR&kHfjPPE!N++K)M--JF z)9@6pE9`>dVrybK6>~9kIiP@!+a)_b1Us9~9(Jx>paT8*lz3E;t^4kwt8^qO(;Gr; z&3JMe7qKJpvgy8i{!66CYvb$VVX;vlpNv^b7r-$SL&aTW81;NE;>^ygW*|qj8J_FV z71O9saV6Lp7 z(Yd(Q=m>&Y1r2+S;?Jbi7dGGc;NxmVjGcTmsJ{(pa0=gPu2(W>c7B8S_}Gt_|BfH! z>3q7D8e8?10j0ltD_K02EQ3$h@7|9=z&0g0eD*2k*1e@aChaj4ca z&oz2(L4SJF8DDQDTWa43V9^>@`8s)I8sHCkf4oR_|5I;7fA#AzB>uNb6kdjVotKmW zAYr!AaMWwv zU(<(_4#ytxTgQ$TK16&27PibSroWAH)x>y0WsQi<1vXOT6k~?=devYI_?ZUI)5c+m zF01Oh+g*q;#wp;n~u&g9p+k;X9O! z@E(;}rbtg9QqX;ldOXz4Y&r}qNaaiIv)_CjPPT{D|4$W(05q3Jo=6}sYSv8RCNOT> zV%Dfgm{OsSO&dUF^LVB0&9)mtNkBu~1VF0;E6-h@ zbTfwM7d{Uw?5&2m?}%a}nU5^s02!F3W*4K}9EE9Zp;m)h78;)*`zz?BP~NE)SjVH# z#oGNvZq=`d;nvM!m|@^F&U?>wZy)iu=D{bQc;7HE<} z|GTz}2;^)7<}R2HcIZ?GnGN~w=!Uk&8LC|3CvJe8@DpGo>{lnwPk+K zh#gs!34YRF8j{%`q{*0Hd+M$7JEXE#Gj)8t{i}*z$IH#Laf&y!>og0WaZa3Z*W-qn z5ATM)kgs6>N~GgNa=AHLVAC!hO$j?~nO5-AfG-NTD~Ef4`m6R*YZC1zrOYy%{ly_A19vUs7&M>&8p?6 zA-KIHn^sVCFnPQP9H`(Lq20LYw#dH)RS7yg;oJo4T*Pl-RP6w2&}YmwcM&>_K(Syi z>xyRh-*{jHmGTkMI6kaJ^6Xw+7NRg*<=3z;6qPz8^?24rJ^GS(Qs!@~E26PkE!j*|oDapq?wr^O-V?>!{-y9rwh|VDNWx!-p{FV6zO7sdimkJlRe>`KSqB>w zV@@$LJ%tUr+N*aYn#NV~`W->%ujQ((h1{S~Y~`8)baIH!1@fhI3|U4?ZXa`A_>u|6 zTeMTfWkJdG{MdF7BDhjY*S5)6Af3zaOnNXMvk?Xn^{%!WqS$t_VSjQxlyPY?{~v2_ z85LL8t!*M9gkVXq-~@LPAUH)5+_k9SB)Ds#g(tWK4<6hp+&v*c;qGn$Qb-Zpdgpo1 z`<>H0PLJ->Uyt>p_)(*ZT6^!g)|&I4_vJ;VS}hR6r3E^Lp(U2{BW4m+TM~HwQfaps zq^Av6)eA2Yf^yFTVQ<%_y$xTU+!3Dm&F{bPo-)p0dd1$kNQUq|GU% zmtF)xMwdKNcMw%NWPSc$mb~!ZIksxPZ#6CUJf8Zn9k#PFlcUkXt(y=UU1e6v?6yNI zy1+pJ^l~^|F#_F)=>W{^pjuO@1=&zN`~{D|N#F(IP^XYObxh02b-0f|Bpm2qeeu1W zzr}5F`fTH=Q6$^zLV!*(^Sfgxmc@vx+H4f&`ZgT#?LGLML?xp?fhIZOyIibSJsc|g%plWtdym* ztmvB;xz?Qa%_F2_vA?Px-{by9O*vOk;r9MO$CU>}NQ33X@)gHv-M9L6bFjvUOfehMmUKekGiM^)wunk8je)h8WrgScwl`WwVe}PcWuZLGTG3-E*7&qzd82!HI9RYj)n*&(dL9HN@k{~?`(_<8)Y;1M)z@;H$+Uw@;| z>^J!tY&&1@{XwR}D*H>nwT~_vb|YVjVwOjK)5W5H+e&e|_TeEX)D2P1NY5TFldWNF-{fSiJ;DZk* za;-eeC!?ijZ5S+FfBmofoeXcyx`}nZ-qPEAa{F=;nZ^9*CZ_xbY zyzI>B8NkcZ|MsLFu|tCe<>1H=_FOx=HmvOpa~P`*7kYLf`($>yT83RV1?PQqhB}*L(iva_ z&)+Lr;$fK-Smr~9T(Tx`{wNAkc(GLW2-f*$vYixe1M9B_BGU?pwK)MZ1n)_^Q2B7? zcMZKc^m}=D`)O>HvrKJ``@leI2eGJ-a-TG zsgO)(?LY!$`me|Z`wxB-4^*1)BPH#@0*DSs8g4?O6NpKi?R9r|>&GDNq&u@chSUV#6h zQSDzZ z-axPBCsJ`SuHMz_^R`o!@EeWT4KeziC9BIV5u3{{K-lBjDQS;pPcB_o;8h0k9}yrz znB!rIg;%>Z)DYI|xVyaSX?|KYc97dRowt+HEI#qsGp(rV0&>wT)fF9y;xtOGan% zb`oL9Ixd;#gOktoFVzaRR*OFBqdRJ;CtyOHiZJ_ZF#Ae5?eNSL_EFATnsBiM!%Lec z)En$^UAQM(HJUh7K{i`Pb&9tl99x`kaua=zb;4_pST?S|c3QL0P$9ue*zD>%U6jfs z8_%ZNnMVwbcnO~|C7*euDK0LR=CmuYYyQQTLy^F;TJ~psV@8*xS@A))Es>{K`d7=I z55H7Xh)pf@bvlEce|IvYsss4?#llF1A?bbtk11XknHYN4cgz9Z31L@PX-hso>0Y`KBEl+x)y!}#a8+D?C59!tI(U~_68t=_=dx^J7 zlM5B=(4sk|9Jm)a*CdXi{|A}I) zrE>8r5IR2xIl4RXFLw@Rb@ZhJ9hT<58&?=!r$3^hiv3|KJA*mQ?Uc>?>_p>T^mSx8 zPwXd($x^!vp`6J5bwt$1XbYP5aT+4G)2J9G22#MhMv)n>biS`Lh53DMA1e+}fc*2i zmQk^%G-d$~m@Q`By5vWrU<9a0$$iwi+)D{_M=p)a38yO=;`uty!7mOxVWJTK#nK8T zq1aQvtG?Y@s=&m)Et<1(-BHM9c%_<-GDSL{K6JrwTktDK5odk)!mS)n zf;4h}rrd00cb0LW#emqjJ-a}tXp_iJ2nb$A^Nq-;k7;!F?IPHh7qFh%H^}+*baf~- zpZkF|4x`#DsB2yLHMb7=w#?$$Px;<|S||YoblRbKV7=J1)Rz_k^!=jrKjhG*ucsBt zf>y?=k8XiB2Vrb|-85Uh(E5^$QV5(qjc!|7cVXvTQ}w5ISwu2F_JXv^g|%A8MP8t7 z^GKqT?rfMIw{rU}V(aPaC?%DwP+nCUaBy#o1A0c`YB=Ak=;9`f`=CLN>JR=!T}-F@ z`j^{*WM+5lloAp=sY4={Gv!F2Z05Y+(9y=_dw+ZGBqyv6x)?hS+K^655vWLbYM03G z>wdAWUMQh7o^Xtw5Mr1}2pv_U`7zTv{T5R#+K(26zE`|~$#aUyNXUI!l8cI?2ULya zGiPe5x@NJ#v=@1?a67Q)WHD@fHAs>$|-P2O-QNR4FK!iS- zI(meF9D@m8RKdD}NNE%{*6GM-!V5jw6hs;|9^(50U;ABi3mZO(9!^MTnfau5szmGN zVk1U>TFw~z@^4y&U~g=0FjIWxx8H@djj8B{fVD(er1w@2OaD{#skkyP8qcs4one(; zc{5nIo-uv{n&{lH#Kt2Rk3(@}1we+s=mwk)I$yU=wR`@Bbu{VvTlQiew*AP7p_J&+ ze<9j^685C$IPUiwT0r9{Tz`1l6n^fJZ;KAqZ=3cGM6#52SFs>&9&M{M}PhqDkx#?neUP6}6`H`jTY+Pn&wF$+N zh2xqP(A4QxEvBtfm5T@LwBrd3m=vfZ>;!D+6?!tE?Q%0>um+$7QyT=As3Qx=g#cKL>?X73fNkILw7PWm3(WBuD&#ntU|((kfeY=s=}I|bvQ zpjhjG7rg#7w@9HHhlc2aVk!wGt!}e{9O-7ItzRyGCrq95%_qF*K$<@F;A=NtN(KJs zg#VgH>wv8R2;$g@HtnzZ@6THi=?Dg+uy=$vbWf-M!CPsm{AIUnwK^EuI0RHz`_u9z zB<8nK0mPjDZUofzW2lPVx4&q%;ePpHy;grzEc!nfL4UbH$BCNvqHXJbA#mz96ttpy z{3xr@`)IGDt`|{oy7oB#tKY?k^nQ#-lU|Nm+>pILm^`_&3$wipQSM!y@K z#+io0Hq}Q+R>Oz;3UA+DY9vgO-JvxeVQWPjuI2OoQ6i+9Wm|3Go?|9rz5e{e-kZl7%F12GW z|C+r<(Sje^3Aw-$csl_*J{_s@^nCdD3f+$^>vSrDVT3SFU8^roaEQ9zJ(ZH`c}M)T zh2&Ci_Ob@^ws>}F>0?BA&bORztfWQ8Pcd>n`SYVr{Mt{Jb<7W!ml|4X;Ksw(i-J(= z;WlrR?ZFgO-5U=JR-Dz4*wP5)qCkhiWX^_{=H6!_-sNb{40$mM7$L7uvp zN0Dz_9U4u@6`qDX`DI@&4TWVfb^_07NzEB8)%~ z#1Z|dPN`*jBIyC0ImV->1>x2ucvDYGp0sMccui`CtSlJiAe`^Qs$EXZ4bCy}WG{D1 z@Os^jfY9WzClga7GU$}T$61X4@KOJyTOuJXsse^b;6ISvxC!QFyZN&zClElGi6|Ud zWd)hN@oYxnt3x0pU&Srjg%8JDh?ZVZjMc7Kq_K4jy&On7p~QQ_`CmunmF{X@jf1X_ zs8N8o??PM9px6HN7t3Z%_R6HUb;bez8dLqi6n}t{(*X>daGjEmz|Y)e0L+vg|_dz8|H$`Rtz?Ui1Vk zg=JY-t0bGyA!2C#xE!S}UB}Rev5Fl{@j%yugSvQJ4UP<#OcMz!(O1siLL(E~OH4N9 zlG?H{%0borMud>I)v0V*Q?Sq)=sRxN+%LL$yw3nAQ}*8ZgFJ@SlX$ep;QUE(R_g!L z+&$r}^wKpRoFUR4i4HNu#(nTV90^%ilMaNmA}FUj_ly0tuO;mP+|gGnR@9BFPHG|d zv>=#&y;VuImF8ut1~7}XPxVMvOKVd$g9s%y(b*vbh#-N)QZ}eRV#YEy0iYR*!q7BM zQvh%;+9g#u+{ft@1L7mWl!k|3Z4zk8dsmxOO@Y>hz?7~l)wb3~YjNK5-b$C(=;OA9Zg9z8J}-=^0g1 z73F`d0B1WLMXyLlCBU1%VKz5;NuP3C-sAXC(Y^owYZ!wY(C(ajKrWyENc^xZ&A-of zX*1pHxC$$A$lJd!CMa3`ap@;QuWdfnOMtSk`()tDPsd^atRE(+~p&n}``=o`CHPd2q0 zw)PfwMIg$N`n>^2K~ozQtI3U$`~hxbd`Izrx$FOH{P>^zUCFM8=GXLbXX@P*ZBp8O zRyqfanxh%kmUk4ZWl$wyHskP2Y#tqI%*8H!$DxrYqW(!ZcuXrwYELBZ9U9NkA2eAj zaCA~4?J3n!PPB@@WC>IOlg3loiUt10(2T<`nN*C+MwFk5y>z_aU94}{$p3$TX8-*O z;BjDv)32UsTi;9UFq-Y(hsKzAUQ6T%oXxm=yGt%1W4o2dC8zxS_#qkw8iIleyzuhD zx8Z`#HAQm$BVtH(64?jiM3&4tL_C37aHd;65ctAN?Gmh5KGU$;T=sGDT=o(Cok}$v zF10#@NTS;QH|M`gnU#)l26TEF{2`x-{s^D+(f`L$G)YRgZhg$XwWs<1(Y>UthT)xG zA69i@jDuzY?7Ei zJjXTQGQoyWHT_@cTV0>?g(d?E?ee^y6+znPRj60@lmR1Km)$yvNsbty%T@H%RnLN8 z?RJHI1U9V*L2@AiLfLW~!qW)eL|ese=P>dMt;PQPlZsYJ-+LqLlp3fTc-zjA*4sCy z4NdFKvh0mN-?sg|1l84VT88veO7A9STF=gUx1qx3!>JJF9C*h%<3zii&B@6REAyL} z_#wavz=o7lU!S=;=*z#a-T(YmpL118zbBbMLgZ$*uk`-g6^{n?svp^De-OcnSbn_i zPTD4Y6;u{QtSP6hhQva)mUBl-;QR)f6emW^O zKO^ubAQ1Z26ANyGfkA9&_{gI|0&@T9u?io0Yj!iNy{-_I%XfwRadk+ToAH4OJR;cfqE_aiQch&5Cg0AX@-1Ho*>!0o%H$$giuSDL? z!Cs%SgrN!d+|lqoH7Sgy7HF6OXUx|Px=SeWufWbD$WKl`DVf#}{Y}l25WmoekeoMv z9Q(n>@<#x0z6gja^6mBENd?O4g_H0+-PffH-Y0CgUTH~Osb5*7x9!de*r83AkAF>@ zaZK2sOjm8HiV5cZ@V4Pxv(}%>@ieJfSr$$0xHmM-^k{dj5X>}Tp{k21)~yS_yqKuk zPIHn-wsfK@I-fJao>0ileq9224Uk}7X8BzPU2fJmF^!WxelcS~em;}w?Z#U!U~9eN z!mM()1d5P}L>w51Ctuer$kOUviusMbFv>8vl?45-#r|6>m*ZUiP}yV5ij<@}_S3xz z8xh;K6f3~szgX9dTGaQ?1Y8rz{gCO^T3SO8?Ealzn=Z*o?_kq5*&O=XHBP(&{cDi3 z!S>W%^Zlt0uoAJIS+$7Y&47WKyJfz z9YVf9FCovqZ|i**nfaV^@TMmEoM>NTS~No&OXI-AYDLp_syY0CS~DfDnEY()Ypscf zm7GG^@RT;UWR}Y&s$XCQOzJ&d0%l;iy1B&V^@U&j5zJlXq;P2x$oUPkT-!Ri9!eH4 z%E(@5RCbwg4mwpHqL>;?u=1OCP(K*krAxEHoL^&T=Lf2%ioFF&`+|#(b`#CesYu>r z&dV(F*X+>W%_hBjya#&xbpQ#Gem7pU&U}zy+)#49{3#WOm3cglrx19*pjBR) zKVJU6s$1#eQc$$MtHQdJy^Q_DjD>n;ppt0$1dhj7W1c)j04d#joqekduE0l*l%(4? z3>9qurC%ACMjuqRLn;tU%DZ|xk=})mxUvI}w>Jn5KUC4cZlY=rPnjx@?JJaKWVkm* zKqpI}+Vn5>2K7mvrP|~pLk=kW%d3T~yq@C}Bi0e&z*_2(PW-jzRO9NDhLT@1;OjFa z5-eca_XMOLoh*4vcFZt|Nd?jsx_FaKLzl0j33C1ur0moMp&(DGzOiCZZ7UFwlYC5@ zKT$ni#QC<$IlC~LSOjFB3tR2-#fOjrM`q zgJj3{Di2}_8MmZFKAtbw%B#)ek@|{R;tx2Q{>fwbB0`MDx*vddF^YciMlucBn4l#p zL)|!!b1_!XxVa?2rfX?g3#RhzLE&%%@YYwq;{Q`39l%TuKcvUyoKxS?KeBr~5r$j2T@gu5l|q1DZlS{eGHC~QJOvPRb1Lq=cY)suLP zK9F+hf24*0Ts?bI9-UMopEtv{0e1C^vx~mBtJ&&>U%FDz$M*&ZrlFAnMolD_We@s4Qk&qf2ezbxFJ4t|Mj27u}`bpGB8~ zYIh%GjyE(2-+WsdN?0*}4r=E`_i0-zi8n(FTQGh4tM0ff6h7!z(JXq zdJWdpsKJeQz<{@1RyA!Gu#AheUyU+<0#_?FRy@ct7XP;wK=^?$$!YVI<)+}7sQIH&nIxTM?yhdx3-%Q)g4lMNlqtlB=rj}z|e8}mqh_7sn>sGYx?0pGicne#r>f1^KP9x znWl8Q0g1qhD-&{phd_CMc9Q{OX4QOtAo@JL{C%ak7HL`%>BXO!DID1qnw*pM9>pQq zEErONMC{OH2X-~EesE@|XR$48YKsrcZ=LzAp| zqqHlh%;Mr3kl0n z$CtO;l4~zz`f;)iw0q@K|=FUo9||kvAZdzecSW?>k}ir`E4C6E}XaH z4~I&>W;9Rsvsx~<`T@70sB4iK#iWJTK&Z*yV<$DP$C2L#E#W-Kj+<)!9w%r7m-SZx zJMCyFhcf>yYT&Z!Z+nmStLw8e9uq7PY4gFKlv6J=Oeb;<+x3hMee5#Rb6EvDQ0?AO z0lm5vA+Gosv+O-A$fDlpwTbQrv&G7i!DMRh&1FnpMBY?2p#o>C*FBaZrkZr)-iz_+5n zI2xDp!F-!k*WfP&@gQxuo`BWJ=OmZ>W|)=Fdsr+iZ@T|?^@+fCUih6!Gzdbb(cvko-n6iUTtxkgK7)jiiY$#-MLbVIvGjdCtA2t!SdfhK!iXOoYpRz89nAvgie zhh=hsc@b9ESudiA!&x7Ef-;LtSmos*m#X>Z#=_Tunn;W3&la>FLUm8aZD>;gt<)^% zm!dtreo}plbk{Fam%lX$Upb91WL?+9l*2MRKqA+f$!}=?*AZWBnRK-!^$@lSNK%tC z-uVh}`r1!ahs~MHAe9$}bQSooxwm^}K$SuV9r#RvD*@Ng8WZhY(EV`x1h--Jj{`4% z2F}_xFV|N*t-Om&HJ-Fh>gGdf0&((nIiHPrI*vaSw@F?Du`9(rhNdL~5{I^e(d-== zp;^=#lW~GPw44JQuW#or458F1OB`HlRH4G-ltfH{&N?9c$q<&9t(ekVi^j>a$St+n9PCEX`#ax#^1D zb}w*5nm8Y{MHB+3uVXiyI$rtA9sQC+D*H;G15&z=cl{PCj4IeRUtd*Uo7GpQv?}th zfLx}H=HeKSV3tHmj}zFCPKU5bTc$&*PR6<7Qn42+Ho0Z4+&}&m(2y^2o}COe8huoL zy%954bqYGc-FhwiWFhvkA$djV@11h?HR$JiYFhn^mDrN|EYotojH~-Khu+@ct9dJO zvAsXJQN)>}=(We$dA`1*BtAkUYic6_u>4#Di4v`L1hAc<*h*+c0hR@9T+k9)RR6@! zHH0iPv;_F5yCV$|6k0Lr#UUbu5Xx?3)@Wu`|Az7ch)*RPkJw{ik4-lc0Y%s&EG?_A z>LJExV&|h?#G_t&tLSRj#+-X=J@R>(t%&ThhZuw~B(czFr>5B#jVzV+@j&cORUVqH zL={kN2~TYw8|p~zfb8@in4(h=J|iVizd}mt-zT1jS37=un=*wnJHNH`A)n0ZBeXhy zVaA|G_-P1hJ$TRkXQvd=@cZk-n)s%h?hPeEr;i3xR1i;ek+q^6)*^TDqiX6_RacPm z_O{K{f?S|tG8bRN;$187B3FT!Ue= zPW_&}?{_j9R&FO>qQ~P5OWZo{dr(9*ivs>E`0C7Aet#5dYHZ<^L3mGO8$ytQUgkfjugrlarP)_61 zmst>N>+|@Y%#hkJC(uGZ@596DEZ70H3s6LOc5&nDmm;*Z$UL^7(*zJ&98$^sD$*?# z=}76~_iM^Jq~guGuRbS-q)^)XF=uy~hKUTH1*nQU7Vow>Ks-l07b>a0;DXLA{yFgZ zxVl}_p#HP$kT`}RWw>Fm6%^AU;DC3@IEIyZ&3AV*@Z>{L{BOKK24mN*VUYK4W2;MM zKhGmsocWZR?G!+IFJO`3`~`MhUw3#n7HSM~CJJN>I>1I6ZHiszb8?ywjE-Yu-8G9; zZGFs`U;n~?!b48>eE&aoRo99M%dD=*)Ea#A%S{;tm!hOiN_lcOzj zJstlAWzxC!n#aQ&pD%gOBSTtk0vzocr;8drNr}w7RPra%jiugzHjuzc;ZJ`l^@qmQzQ%?1-nWoRDSU@%V)dA$Fdi8o9lV7b?&lPKXUWVbLi>jWY^7R)n3MM^84!{zFUO-pO+S#v-nSW%`C?4k6^UDv zKjE8y@QWHAdGS2TNjzfcj>1}g9vBF{Ee_QS%)XEi1O(_WMjUDQFr_il-cc#Qz24^9 zZT=VdqV)UN`#m)BVin@4C+trOQe|IylAu-4#3^rPXJ<|hanNdDZ56}h)?%J^24#w! zuEs$w5hMAD+l(pJoENOVS|9-@&ma8|ibO(*U;3FxXj-Ifs5-;zwxF|4J^x3M}*QdpYytKsk z4w_2M$Q?%72AmlrYu-)-7sy2Ina>~c4aM+U(Nb5c_7*mc9)Dc;=4-bQlI5FeZGQh+ zf;0ns1`cQVUe#08&1@&|q_=f*s_suf;y5>dQA4KH?6(R%vy%a)>Wz^O73E@8$lC{j z+Fa9ubyC<=e9RFOss(ZnwtS+0Vef=l(kTB(`6Nf1PhJ(sTHiSU_cPTzr;YBuHT_s9 zQ&(c%2DSMi^B8=i|9i3VgMlXez-#*LC-5i`*19Vkui89bPmrcH@NzND;{=_I;k-yJ zWQ%<|UuzAJB2Tz5zp57!^+Xh;?*!vV)EiKs?kvW(XPs*b@CS*>H#=6tugx%a1$QOY ziPzq5QnAmJgO`3cEu1B-ZwYFQNHS|Tjna&J3tnGaq($f*c!G%ZzF+Da9lVmt^Oz(j z)~2t2&!8}*9&%t-zhpf@+zV#L3=mwQ&Swn!GcnR3=oiM|Wl%+{_sNIvU`L9QoOYg3 zCNb|xMQI{SNwq#?G5KfTW*_%@t-`0YYDaxLwvkuHC(U1ETR-P)a!vD=ks+r}z-D|D6k$G;!oh*q$q(K1>=b<# zf$7m(!hEP#CZ^wD4n0}Akk=8XwZ`El=-(eWN#^=!F_dX@T{==ooUQUXrrhHvZ+6ro zPkZW@_p9G_#IpkAWb0;aeLM+hy-f)h+y)FrlAjMnxKul(nUhLz$Km4|nh!YSwzo3W zTP>AMQbAlild?H?h&({dA{2+qMt;}v8GZA4$|ngnj4S_a6SF!l_wq%d z{xhR4#??9dZh{$~^OPmaC#`!6NT&V%`tZ;|%prHfSb2sg=T;~Z zgfyduZ+FU?+}6le*kBIC7$pNj)WfjOBA)hvzUn3O@@GgGU$!JOOB>8?%RBm+f&w!n z!$5cFe7Uf6sR_4m51YoD!LGIkc3tX>Que99r`4UB0Rk!^5Kt)x8YqrFM}C(I@WijM zsMrSx)fR2P;tzkgRg3n1Y+7k&inxZnzS!N7HV=ueQ*LpaQs6=q+tdW(hl!dD5=wBo zmPYI+r7pE7exeBbsarUl%FA4)8NgPARc;);`WlC>YuIX`Zx+hjI|bVzQxi(QthU5< zNlZJ0k&Ez3^m044PW(VOv81s2BHh0G^VWGv$LyHWu0=<2LT>x>^K%8MIurA{gsvT` z#HsY;!>>y1Gr_>d?u9D#x#Q0)N`WF1->g>)!yVE)ksF(@Xa>?>*Y20=X=Vau^uyla zQl&-|A@&qF_gAOZ3({Ppyn_9WuTGw!ZPZZqFP`mG7X`RKA_H=a-`{g~1h9VNh*sG3 zzXK;aSsUZys7$o#NTwM9Wf{B{ji#5HKdYARw?bsn{D&KV-M>Blnw?C(&a!Rr3Z5bm(dc*KO~Yb4_M*0Ryg6Y9GjvYYMCw% zn$D`|S3~x#w{-gW9l$9S9GTPvYMogs5)b8yCnT$<)#I!8{dyPZ8%NjsivNVmK8{Wc zl+2(3()dT;2tpAdGnW-nAg`0PC4hX`z*4A@?mG*4oTFSi7WswC}f zrCgKhZ4Cg{%6@lR8+9N7jdR^!6pKVl4&a^fdVn5Y8eZI04A~-yAqXl|NtrC=o@4{g z5p9S(Ls1HrEJ04koImVF*YCWw+7-$2AwimiJapkPA@ybIb*JpuVyM2rkZDPvbK!2R z;*1e1L1sU~n&BQ>-#PI1P0M;mOy9H`<<}tZLwZ`IG*7xmM#rD4knL^JEXDozp2l!{ zpv4irTDM;NnFWY(?%7teUS?eR$92fE{gSWANmdPj#|X;lqA{y9?bkS&JUL9gHj9{b zU64M0=X+oklCs1Uo`XAJhI?sY1X}^xrEIEi6{{B);G#?XY?=IyRtIgT`VE#R=VBMt zo)^UpaeHBBo_qJF@+G-1B|*AgG+rMRd};$@5clcOPfHlnc4@*c733bhd{)#^h!d*f z%wC%IWMPAPI936IPVta|hpn!>=&}*ru_(IxW0Sy{=uM6#R703nlot9cb2~KX{AI(^ zNnrX0=8soa)C(OhJWT@x>=O@H`8{Fx`z8_(zj#;aj~IkE=xOEy3LcA!*1IucSp~Zp z*P!(n(W4D|2y12GiM?ucnL?%%>q zvcXB^S(BF_%R0m6hmrt{c6&ZNJHaihU&CI?424u>)V-KJ3|~dipxNR=L9c|g@gH(to$s3v?ADax{UPoLOD$I! zQr}cH9Za)Kw6k2!?yWAjq)w>*HnB#~wRaN|F{j{icc_xSC&o8VlF3_&zdoz?VJdmg zZ(YB)Rsb$3vwOIFS5~gD)7SE*0-p-9UzU86xraLL-?`#6=~P%r39BZ?)+`*UjxMF- zSH0!h@%B5bN<2IfGy-7A_S+{J&)n_b8T@C0lAH9sEa|5X4Jx)%9#6l>Ab|8Y_gRgT z-aR0!kD>=!!w^wI5)Zng`TgaG&zJ&dBM)+! zD0Z2v^Etb)LZ7AW&ZDXlM}))ovLc4nbrIf&?LkZQ=~eJ+vq2GqH)vURKl_LBxmRp3 z$$?|s-(x&2aEyoke#!hX1{powi}%XfJzgWd%zK~_^JutojNFe%{!?Pn(S)j^QZLdb z?F?z16t-c#)GU3X7Z2FHRsp7H_k1Ti_a@VN4oF_8zI3crPqd|8=yy}9i$R`EKBEGW zO%B18%jzZfUE`h9M}1D6>d7S(@>V0_qG=H$;`77ONWULF@^-|iDRN!XZT-uv_JYh4 zptI^H+s>lxolaG^7FIEF=Q-7uNW(9_ign3|T~wO@Y{wDTXw-$A@ZpJygjQf(t&(*rQ$%n@`Bgjm2jno6!pqS2>^&il+e4_5_s;_y?P-`3%j`5 zSq?op8Bu8H8CysLVh^bf9RKnzSCH-s4&~(T`25)xp4L!CY-fz2ljC#q66?_$C0KM?|_vQ0?{0MM$sDzUfPI>{*wVt*q2fgwz) zu9tgZApF`LA9GJh<8Zn>$QGwQB84GnO(<68LvJ*4P4no47O+`#pJ-d5iG0v)XJ~W&4Y^p3t(omrD@mPqxgv6TAfVO@a^HS4*wg6%~ z3RC5^kbJd|z6k5S%jVu#yIq=8RZ3ZCImBYAHr9?P)YCjvq&rDi+)PoN-ZU@b8)fhE z%<%O=TP``!QCW?sj21q=xE<=*p|Z=xHlouT*yyWivwb^~WN;o{6N?KjtuQ$t!~V6s z{_^bmr~Yl~u&>R=T_5-Lr);vgffUJg8ZHyNHFF_5RNz`Y=b;6zh}9Ra_VqP?`OQUF z$8WY+k1Fl-U0>G_mUA4oP7pSzs4t2x5<A*JpH3#R&R?Hl| z1|Nvb@>w}wfj78)cs!GvHg8O9Nu2$NvDW|tWfK+Q?1o~n*c;i}QdUPey#jw_o7A%v z)7QWWJ*zDYXL3gJo{&O!Yc_kHKL#FQRqH-^3M@&F^0%JXVXf$w*U4Otj@*-2( z#|vo-*(Z#Xn@~ThBEcNsWXE{_mCyD^vRf4zQ2^eT6YeID{^na8+}z8n?2m z@wuN`=5%_0IP`IkD|*i{$i=IchR>PcKCCoCnDeDH=oG^H)`;TEevNH;owl!lR2IA> zYr6Ng9@QpsJ&QQM1gbsOF|d^(Si7c{o7}$@w1HSKPJd17#m!n2<2V@sUgwYgiMsg$ z`^m&wT-L1?n)eJS&;i2?FX!D%%Z`d03;8lsg6lv|u*IC@yyci^h-60GmO&$_Hgv968?++_ zo#H3UNR*i{aGRI;x!4fj7l_+qbqa2w45^pa%(|2D+|nIB2fShkx&DAUR$x{>t~5MP zheKs%KMW}UZpH9XGd2v8ixcuFj9@HoOm$17dvx@joGnc{T>+9Zp09ZSnuvv)w_K0N z48|2^zdKw`+Rk#N7pDi|{N-a^4v-ytcn7OB7^+6X=3b3j_`X=V8X9-L;s8sVbNaPnw7PSrHaRwPOB)3=p@p~`=Y2ur%@FLbBV zgpL?dj5BYby6nd1-Z)pV)^R(Q=_!KXVf+O(R!&5QNw-%b%iO0A-61M zg{o0SO-ll4sRI>0KYp{BEDa8=(5ZZ*?YGxR*1z?C@LXs#nr{Q`0;st>Tl$mz83+C2 zqVS)S^%^Ba^ybYVbkKtrB=~c=(rtz6IJk#SkXyIG&#J@@zsY9nex5yxRYvIN+ zq-~LP`5D&xuk24%VqklXWmDdyg>Sal&Lf3Ah*cfD!ewi%S;0@5ga@?7@%DD#_FgZ2`!6R|j8J3)bH62N;al(Pt6O#NUEa{$Vi6 z7H_JvQ=4f!K z`;bugNS~(9-7|sFXp{)1pH@`Eg#;w{FEG{aR?8Cmtw>C%=m^BF#(!uxjI>^4Lg&8+ zAphD#J?(O(r-u3W;U3)@|A1^SDjsr|aNdoCY`t;%xoC5a96D_f=Taf)U!Z$}9!8>5 z)-7?BXG1jXz5J&PJksr$egSiGs54g<({@vmOWe=kE)1 zR!pV;)DRkdXhzmT!#AvfuwA86YSK>Opdx&p^ux{d=n9oaJ2drd?&4;GP|@kDtEg6o z$7guU$8kHJQZd?DyywT>e&Bi@1XguEl0F*QGVo2DKw)P2#+2TRhxQ|E@Psl{X7R#n zaYUO0G`u%m%tUa8tD&`^LX{bi<*VGLP2-DFo{-5I`~89zsJc~3eKKz$q0+hRo9JsC z^Cr20S!VMP&MMUZGV#x6EIOBQcFl}CI3gk7 zU)NAM59#4XQ@g(re7IoM>xB)I~6_oPYuUJ3$hU^(+kcqu_hi9ve4WrW^?8d z+IPIJZ~+Vq+%u#O0Td!Sexp;6r|os_p`lV9wQu)Sn0p40NuL*U8Mz5Wz}0M?$%?xa{R#YfB^#M(YW1o;9p4 z-#0yJhn?q9-b1ey+SP8OP~~!FSu1ctyLJJO!=RC^RJhG^@BI#Y=t+|;pNi{myM}qG z9HbqiN@>KP3lAZmJ|Ez=T;ct@xlP&|{4+N9gokMil5|!#t@}Na8nW3qU*YrGNguFl zTR~OpOq^2AvL^K1>(i^scKvHHaXtFGn2@V1J&1o%Ie1XrD7x3Et4Fm{AOD7^Q}la# zW%2ch?9PTM4M8Dz^L~XKlc+@+L>J5N(0WB2=3#{LXf9Q(_snw9GITNg!?p4%i z+YwnRn!~0B{fU*~;+H!!;ggx_r!t|Tly(l=IeT}>>Ut=gY4 zRf(!HT6&tmHIvnPuQAc+BtBu$VITJBY?RNf^+UwZq$$Ad#eU`K*F$rA=dK(kw`87W zczx^+?%RS!Hxig-VlVZ1N1jd^=(IC`+UfO#ieBW{nK&}|0RV)&t9F^$G5J||fy4ME zoDWo6$qIKmw3KjWyVi$r30T^$V8+fgs{6S7X1mZJ_W8Q@{diAvMweyGpv69|+IZZ; z5YzKgpK|o6)Vm$2)IOKPukkfAbMC(Am!Ch`?l5hbZol(Rz4286eefGF?_W3D7Mwdx zqGKlPSMhNYHTcobF?sV&I+G!E-(3J&x}h)ZhBE`cDwRA`4-B}^*l&?tKDF2k))S*J zKknnhLC9vFcEl(2m24(PyXC*gk0RE|3ul=l1`3xBr%qZlzhr0t?$=oB8M@8^WBGVo zb9=Bx?Gt3jLW~lsj*FdEyhu~+G64*N`pt@jm}Ym2)Kf;ZKP zyGp(kRJ@v^Tea@B#MZLfg8vzH3?$CN{nW}qOF;!nl&KDDML>f575xAq{HXMnA{gTf zJRA9iP#iUe@6Y0ppni$aMCRTCOh^C-Z+Lx(U?Ehs3?OM;6p{Fmqq}o26ow|^qK!&g zlVr4Jj4qW*vzg8d@Odx7SWqvdjh6LO${u!~%cGp!rc#Hz3be=Vxz9{EIt?s!v?39Mn&P31YkP9`<@;ST9 zC01`L!L$767@FvmXU9o|-8)9UM)W%cGC!m%;2DMY?c-IS%e@`-Ge9N<$heBQnZ6=> z2{8A}>xIH5|KYMwTl$Xd#(f>9)AM4Yce+N?y8+j3HS{{l6t~F4JVk-pvc~HeAuG%g zJTIR97b&bQ$?5Kqc%e6zSN)x_xHaY@d_-Ff0g@-u&v4Gi(Fs${s_C_|^^(hb)Y~l= z5*odq5xl(}>6oILv>`jma*3{0_epg7^YyUY<-JHRE3Iy#`tcb3Z(S5{q< zvsD|UZjLc_i4XhVg|osqqLH@6wQp;J#|rXziAvC5Im5^Dp*>jI6A-wza;Ah|3WN!x z4!1)=t4t+lCh&6v-gzNwEvc-E|2aG)%ZqQ<09!PQ<|GKJZ}x=kaqG?#9k&uZjYgHy zaCd+@pm43b?H9X)j|A24)%u8P=6b!prdby$?GyxIc9vmL#qGK$MWqx3BnFgjkj|k&x`3C<*LK3BT#Yi3%+Q$Fv=S_t0e2$thYe^}VqX@g< zu|R$nm5#IMqkY}n^G?e`tmM`t`H`8PZ>IsDHw!`F8^U$G08n7LC%MN=KTB4C_{{W7 zl|jj^vjvlQ^U1kQF$o%74=uZI#2^q%U9#CDvsqUz|8m4gN3ypHR+g=wd(mT;M=f(I zel{g@KbmuPb&D8AoMOscUem1Tm=WXisU%10_KCX(q#4H%Hj7m_$1Z870))u@byDJ~ z))8+_^e_Gq6fOOy^P5IvwwO=okMG1mU5sUYDT2jJT-+az?3djU3FX9d-!)$;(u5!J zMIrH})kKEW)Tb4PEHmG>B@%c3x1$P~HYGHiOTIh)0J#Zp> z@zB04X}o|qEjndkGYby3jjn(e^WNXs_IRcx7=%(aNt+;IF&)B>Q}p^>^#j1y!-(0U zqHXsf8a3+GA2mxCA3r9O3cJ-n%%;t+?+neFbQucX@GPnTzTIj_9a@t+4G?}w89FWv zv(3inxjw7!bcDlv&F8*%-qEaa2(ei={Gmiz)3{$;opesv-rXbR`Y^N7uGwF5~h^CWdXOFnb)5|ga)`hw3Kjj9kjOa zG=~P4tA4BBXDoA8S(-=OUk4*(k;3(z&J&D+#%5|*liYiqI6h~ryXUHEI4G5}_)X1L z+1Q{~oe8c=Uo$Jv1tP=;*fdW0zbNqZj91qWKnq#gowH-#CLL!EwuM18Qp6Z`24V#| z+wLP8chG)<18h@9nUr74ULLFF-UWup$O$*T)vPwg7l<07UdkS6JpTQ`*T4Byk_Wmy z|BE=6Y;BTGHreJ;i>E2G=!R>u(6mXvQuo=I)cQ)5Q>~clnWuip(&$_9o?i^snZMkq zOVR&>;W*`TiL{JVQ0amtbSlwoD9UK$z)&bw*%1THt(J#6vu6)LaqT*t-M^F`=TAlB zlx$eIUdfN3a8%+}`ge=nS3pbahkcGcR6CSUw3-DvWxbf$UxLuJoPK2^vkhXyr<5G@ zLHr28F{$eEnHDqclQ2Hc8)j9Ug}6wC5hBx`N#1Q=TtGw@J2UY~C_QV?u{Z>zyh0{) z<;w^EX+>@MiMv82S(fqX7A9>tt7@yCNdce9v$}AW@2d!OMV+*)ywn)^ISWk_yeB7s zca*1TeHKom$~kK@GV6T_ay7;!UfX8G393n;pjA*imDGJKNEg2zsamI=b4M(HHdiT9 zbXQcK_@;=S@gws`er>#UyNHGA3f;z=u0Vc^XqLU;?tL>*-^`ap&7XBhBX$(^t0*(3 z4gQkKHkRPaOD58Qh>4kT<;CRe;?>G9w0bW!{jcME^}@zhw960bH-9nK!Gq7Zs4K~Q`Pw>E zCXsJgKh_Eq)#Cu-Zh^WsUplXA4Z;Zam)WhJ{sK>|QgR-~RfCbQoTyn2txeB@NP`q= z(y7ChE5pr+S|JY9uSS_d)3(@{D%toi=o^C8oArjcyHh+2v{YrSCW}mMV;(nQokCb~ z+S%4Gg+k#(+UIqfwKp$!Y2`Sovs+BCXJ%oWS9+6PYVP1A1{l@Pe~V?ZKOmFEOgjfY zF>f}K>12Ks0V`$@j6SsaUBetDdE#fizRwVKAB1%_HQ!?L<*p)G>I~?bDpXd<$-8#! z4N*7Eb-mu0HKH{|ChL6J_r8rFG^C7RB;WqMux#~x(~e)VO8ct_h^kEW#KDL8D$~;g45B2Q3%NyihXe}>rg?f59(W1Oc zU-hU~xj9%J>e9uK0^NU}gPa8L$$%Y0n-Qfrr@L$DSnhU}2^?n;F|3?j(Jk#tOFw^{2aY+Kz& z2>h1sFX3_aAB0Eue5E5FjjLq&t-At^yP0XH?kHw6HhGPIuVe zdQtgwc@#%DFjlq-Cv`X<(Am6Hl1UdGIve-M@mJ_xWxvap38b+|HkeV*V8mZy(m5CH<+!!3#Dp~eeHZxo&>I}9Vu`8w#CG5ImP8GM( z57_~#aJLb)^qqeB&s+v`?HDhPF~ftM_f3AFsmNqQjAPKT{Wm1v(bg{qsUC&PZ=d#j zixtbu!dVzAf9cj;!INny;O%hM_&(KRv3P@wc$~8F-k}`($+EPT_in=LvWt4mLB4r1 zNNdS?*0oyji(VH|B)zIKDQ+f1islpXvCS=cwd$Ye8CBw1Cq54=QiT|7U@#ojDRtVJ z8NA)S3!FBecI{z2T{0015ztm*bAdC*JlYGTYYr|bQYDCS<#Yf8fs9u6-zcbYauP%_ zsu%oP6fTo`zTzJOA{8Fz`?7S5x0|&EbPS&zF?rjTb?8Qr5qpTwYFFW=%>B6&TUxu$KF|R^&+eU(X2KiL2xNx}CG_ z#K+S%ybl68v37XW^C!wJhb|{8pR|(*k8fVBbdgGMC~uTG@7df7FId0QV-WLcBe|*rJhzUX-D~E zi@UN;+XaE0918<}q+~)dlF!?0;n9+%Xz#Yp7cMjHykOIpVly9)AjG)ob~e0L#0|m^ z%t*s(mq$|p`iPxT&96dAu9D~`WaohtbkKUa=4#jl8A0YJG{sMV;tOa)F(5jJ`5Ti5Rn4=#R6h0+7vV~t{60>F%CfE6mPeBFY&*WT|G zrL7Y*Y}QgTd31J*+a2Rk`EdzM6yiNUEj8&-<<$URsYSSI4YiJBZ6+Kv8{rj-^9&8Y zYga3IU`jgg{yaI?d+G9wsvQAnMdg`*;ik>3xnIV1cF=gF)$Oq$y$wwR&K@nM3OTd~ zBKqJ@!|9A_B)$(p1)8yCmm+Tl1JPD=0Ffl|Chh8JZ%)axP5K2-9UjNfnXTITRqJw9 zN2@PofZb*ZY zb`BG!f?%-q*-#o5FF% zn8u~l45u6*)HaE-G%`m`*Va?fB0C0(#57{E;e{pbazX3_1tA$RNx25fug-=e8AT2W z01%{nla=TeeS;gTU1uOKz=3S8tN*bX1k(mV15;mi0(kI1h-hB{n~9r5AOyCi>AIe4 zVj(w8TXKJ>;xVh4%Cv;@wKY$rRUUB{Xk@I!=V3%zP8KL`D8~mBHJ8e+6ASI!gj^by zn;KlXv<>E`Yy+-qisbH&cPOICFsCi)78onVw_5}bkN9N>dci>J(z<5&%6x5Vqm%B@ z^j7vm%if)(+}Y86r+?Dv{u8ypqaed%R&nwz0hNJQ9`0gkh6_dJyK<*1`macJwZ6g6 zrzk>JJ;AN#qPfYQq4|{fR7uw3?KrzDSPj9}ClYgl2f5N;EktM}x4=XR@OCFu1~;^;y0S z)=ld;JC0dj?~H1Eh0r%n_52D6hO}7iSCTkOL%QTDZT$|VdFS# zp{GBUbLm&sI2=XfzI>k9u(92`*`4L&JhElIS@rYK<{)$do&#_E58~t!v4!RgVD56f z#x^6_Xm}{?1H?&VjS*nEM74@X(kHRs0Mt>#3jr}lq`f}PXA`LNWZCM)whQfeNlf4% zqu|fNRCJ#CbiRV^7^tdZ#a{Mk`Jo_=Q@``aum8cE99^RnhEEtw713edKl#iq)7AD+ z@(fIZzjNkU-H_{U{{^Ub=RVdqGud(tK&v^zJ;%(NcrrJ^mJzj|DMxJ+%Pt8!!wW|o zHv~(cPte3!0r<$V0gAke&l;O~{l~0koNNh7G8DS&{QH4MHmxsR)>iMLdL0N70X?Bs zAU{f#h1A=>n#MiP+LGThO3i;L8)6F8aq|(ge}=lXpPGo?-uL(iQbizcRAmg21#V6c z0am09z=|YN(E!^l7eZzk8r*tvzmtisM`{bKMPmfM5CxkMEv*+KMsR9x*$Q-K?g5yr z=2b~}NGJe{d;uinq`=tPgRYb}IsOk=Bq;{S9=f>`?XfOF8c3p59$Vw0Z{iy3KsZzV&PK4$(l zbnTRN5%XKgl}~eb$Rnl-g}yjVR!E5T7R+DD8LHe$vQ56L8`28XHiCSak)`F^0D#ZE zoAW;|PTn~)F|hm=&ZQ>K9@)1l)K6{6&hTLs($02W)<=Ns|0Ne-OhtDq6pm)@YuXLE-4`jN@1VkJY)* z++?Nfjp10cz^2t^hd@TjoUwg0j6^{Q=9-&wzKF`Cby5#b7*wuzSnFO3n%`21I1*nr&{Y* zK1QH%&F4Kc2@RYFG6(0AJrNn_w?WI#Z*p9ACff>bYyp~UjmUaN1(V2{HVBiw#z31) z6509XK(#CD-r7qHiOk2m&oGAg7K=Y-7IJ98rfL1Kkw7OA$G~F!JJmgatNflmmkH-_ z+|ZYhY|($EJ$p=cF_>+{THaHGVarBE6HkZ}>r>Gm zg@ZjXS8uU1W{t$1#-B{UqH$fq``qZn`dKNWQ}AAD&a1DmkE{*Or=7Yz`);9>sS7>C z4~v2l@#f2YhF;f!Z9W;iCihYeddTqGN7?J<5dAATI8mEI{II9PpNHiEFKH-dA?pWt zCm1QfYnsi+euNa_Fj$}vhKE0HD^tn+rBTjK%emB*xltuWr4Boi zEGRkb4?plj4)-RXd;}brLDB7BzxK26SkdU^XjcrrlC;#T?+=S*PKizG(&a#k!Es7L zF}z$w>aO@!UhaNu=QAzl$Cq4Ql0;RQODf0bT1^p(DyYJMEm=jc*mF(>&A~}#n^X)mVdVDBK4{AkmJM_&jqa+!%L!GIE5 zS!Z)|K+inrR0VHKOPuD<`dsQx)gM?d)Wx}_gvWNQKhX|eNl7O%6`LJ(uTDEvYsQJB zp4e(k%dSov07*9;usr9-im-kZ67P#n$fBEA?hKl%uvQ^M=dpd3lOXA};(=y5D7VlR zQ0(D01$b)nIq&p|Q#$c}-*jBCLhV z?Yt#TiQPiwE8eJwQIOY(gD=PyKe!JT0WDM01zqkU|IeEA>aYHl1)x!Kmva}>DUgi} zRP1?%mPUs~j8X}1L3~Tz==J|{D8N4W0W>6?%x=4nH4BaRBU9_3Hz$tX!OW>2RT&0V z`S`Z^;^*|>epfzhPKD9Obui73gvnNwUd2oUH|(g5a2ss7&X z*pm2`9zD6B+^OjM8)bF5@2|FC^PfX`HhLt^*{%8nk1i?bk}%Rwzw zgVg%aiIDrwh`s#3Xe)}*f^ zt=wb#6THp_B69q{^Y2xkR0IBA5q1L?bF-O7!JE*^U5L|UnSHf%xHxD=^)pDP(tu>y zHJq_){-ecocIKhAN{jh!)HUyv$qP4LS`zk$s^5P@2RQ)$()o*%L#F%0>xFP*RY*-TQ*raqCa27@ z;Qk&wMcxoFhLsf3hLKJ$8xAW42d@Ip`9y4fMO;b9Xx z8$W#cQu2p@KJcu#c*)6+l3i?W*`$D}o#+Q_CFX*jOanX~f#&eZL;9L{9SYT?t%2bWpt5Yg}jzFdF z;(cw@OblFPvr6D-h#Lbg6dPL<4x1{6Y3s5SLd>I-n_#YeP4&QC2+o39jZ_itBKaN^; zXR?5G?iG|^o($dGDs&!e+R{J`aU7t#94WXAi*JeMS!(RMJ`G+v^OMOLd; zo9MjOn{^X2aR1|(CBqWg>YLAg!8yXN3xi60VPwLrdsR8%h1_c=2kbCLq-c4@@io5j;*i<0%t(x=M3yA&8Rc`Z)h<1V%y2n?uppXEOE43 zCpq7Q3a`?K%VE?{8Bh%*;a6&p8pgy{ze$DXRSw0`Yt#6#7JR4@K6tZ_H2fUn!1iFf zFOH2DFnuPp%V8{<2a!HDYY_GI8@!jIEe9}}^R}O0C||CB=f8dmPiN<(&5W4^fXv0O z3v0)a^}5Jhe=k<+fE2T8QEeeYx=>B``HL1~|$+fc>(6T8r`B9P4Hq(kcYd~p^ZH7{3bi!jG|BV+TBFh;JCch-#ykf3A% z^RxzbL_B+Q)zz8Jt!fZ4=sIRNX5t!Z${mG4UYVG>?1XEE8$s+U^OS- zPvOf;(z53Wyq-?LB03mDpTQje@w;_VBWGQ!>&MWQi$kaAzN;P+tc`DTX)aPU>ovAD zWedo3`Q=FHX?NxCw<#Q6y#Mj7EGEBm1fj{2j8y`TXE1_SN)EZcD(Vh>boXp0D64iIiugMUBl?t-k_GpN`W3Ntp|ol>I-U~7tfa>m=M zlxd?|N;SADHD=+s!S1YuU|(w*Qn<(WNRlppi}3Ywxw%dg zO*%jwz8TRfRtN?uMxsAg&&gRz=$0{C#Gf>3X-=UF0=KyA)fa;f`m#uAez*ZutVBKL zGWG25DzT2WLOuj;-N6EJ6o5$^=)dD|`P{te-u0Xg2uY0LVC}0lbV|)#dULJY_@{g| z4YMB;U)JI12hBHkRbPIpE^z}o&5cSV-e>-}#U_L&Y_I7;Q(!Urn^h+|WU)*(?%|$R zK8}Ekj%i`f260fKR>E*PY|y{*#q#o@Py1%hO5$h~&g{r1nmjnZDcFK!lkqCfy*Ce_ zk2*x!EffShpV}}rlt26R8-4Lj62W!Y4abpdO|L*5VvtSaC;u0A?NlcZ^{0Tw^WZw_ zV-YiBNQ%}fyZiI^KVl-#APC<~+;5ckB4<@uibf=PSy%v_l3a%OfldiT(^Q3Z-dCpb ztSgffU*6|K)NHh`mh&OA8sNdQL~VmggTx=c9&3{8{*uBFByF$>f`X2Mq>Acx%KU8) zvIwa5cOOd1k>8PKHK^zQt$B685yH8hvPk#B$e^)X`hB(g#Y57a^a_cdI(-d zwjB0%n1qrwc~_a32#8ZMp#=8wSP2G=C8DtH(2+N!IqL@8722(W$XdIR1NI1gI|7t7 zeCAYIed@(yB3_WOPt(491*g`V!>ii4K8pUGVXK9l{q$aFNL3?vQMe(o#;Cp*a2=a$ zj5M%?@DLR>y7j7YB0>*XT9D(C--C2w_;J$d$QH(|*_4F)e)k60xMTt=Q||-+H(Jo> z&g~yo@BA>{-+MO=RK=y4vw{!k1y!?cMq-E*$=rOsWr)1`r5)r78-eJeSt8@=)62`T z%q8vW^3NG2G%xj3as@vJ^Yy>F=g%d#oPex{JtqbUTs8SHvE515lDeJs%1#kL5Ep{2 zPTS*)I6|xXyI*hty5xYP!Mx+x%*JJwM`Gc+zyaX@uir?_q@V-JqF{d7mBk zQ4DeeDC%b*6ipZwz@x9-^$T4#(1xdK=&I(MHwm{{evGs4hmMuD3bp5y3O><(mit#& z`xLcCHPmka&-}EI(S9qW`0Ohx z^T1(GJBZQC`fSR`N3Z!IF|Y{B^auX3_k^-jK5cl1s6hAQx%h68N2A~?r{t8EwddvD zvO_A5JlXhG?Z>=BCnp)4HIAoF4kRR$~!M+XLtux(boMZATbwr-5gQ^@^8n!)RbF4sQePpv;mhe*U(ui?*d94dad zaX-C+8Pq$~U8#4WkAhB!n7@ZGzT;oITN!8fZa2PO^!VN8Nll5B@$#S&<8*$e+3^qG z&FYZ)(;T+%$5ot_SLZ~tAxO;al#B~PGg2!UWj?HjVfu4$h%bJ6!&~<72q1uFFse|V zRRDk6h=`Be`@Jivj=K9%gK+HyYxQLoUr2)zf5_^X(Yn~IN#MDQ-tmGfP~UPqcT8eb zSlqnWk=Xf!l)1LT)yK!Z^ltwh+QlY$`8(u5>yo1H9iDZtD%wU3gE0J4`wP$nn&e&0^T+M#p0VXCpz{D(H$x+Z@es1I}S2j#S zeX{D|wb6NDy{;;m%u4R)PzG3={;r(s5t~UqfKqNZ{$_H;JYtppa33(3&0K92g?^2| zlliS^yszLV^%yKq+UD+C_^=FG(MfVhqyu4$@Yu*%O{#7xz`rG3;GG7P;Rt> zQRWY(Gq397mM&FFrq-^ztP{)(84nWBK7I6lMn~mqc6TIm$_{jnEQt0bc2GiR{bZx> z-!>9i7|Tz|YIY~k3E*UdA3&L#2s@R=RZZ}x7PN#>P(_ScwMBI$VCtINthY4y5^c6p zPro?OUj^vQzx4$|Sf{={IvIA)qAyhtka6fMOzvwm*67v;mC*(KSSq<;?Ft6}fJSh8&fU59$r*)>=&k$U0jNPP2- zeOaVFQ)CH|$`l}frI(#TNr4;~a>A&Jt)tog6i+Li<6SB%{2}yd_HnF%vDG(ETX47Z zEKzcqU@&R)}#-i2-6d3hFuaJqw&@KS?bCCVj8lPo_QBy%aqihAjgc zg@fCyU#dbx3`uxP%%pLeWD0FOMxeOyxFR}rU&0B-JzWpXtLI!e9dDs@Iv7}Bb1v~m z6g=9v5TPT#AHVyvA`kdOLZ}6jy^H>cil0u@vT$ZPT>;tGf8Lzzc4)@~Z3A9^@)kL* zT;*uZX-tJAEyZF^450(BL(QF=m+MBr0IySGHptczXhvS&|NVAfTZf^pUs_SG)GcXe z?!b$|0y8RaKjy&wQqxoMVD6L5$)BE5b;>d+i&W3Gr*+>*=n58=E+gaYAhUJAj26ui{NdReX%?>kFv> zkK=}psN&&41(?y8y@6)QPKf3*sxdO!#THOt6Q}*;Gp4Rnux+CrNsVOJ%n8GSHk+Z)#>T5GK*q3H(oTki`lY?K6RqqZ zqte`y98qfyU*`3_{qLJ@?)&3Qy}7JlKc6bK1J>#|$>e$6MI#r^QX#Kmq1>Fr4&_=o zSsE1U5tMHiA~&O_+f@|?#+;gjbk+@Lv>emwTy9rDcPt?U%yOcCXUM>e zDsnJ#;s$H?nGN~-&lh!ZfisQQL)}^mMc%aK?zs(@^I4r@)inm&b2%oQCr#6SZzm+v z6nPKV;89k055a;pMn3gnzm9f0;^xqmPfSpfpP=mzVUgj>Lg_12`R;nWtO@3xEqLzm zk8DV~Z(SS3GnM#ItA?9~>~~024J2`w`}Zld$2}6F*2~yu#OW9E**f6;|B<%(Y7%9^m34OJYXAk^#U4SZ z1kC~JQ1hv`n&82?FoCn} z10dJ13e$J4($aKr+b1u~vO$tix`Ks%j&`*Y;cGo}H#Lurz84#j;)U25d$K$B)&)!L zT}J|L?MnNq$*VeZdiSexpMH~juXiJAqe{mMNZ(`MrYbaUpzOwoQNskPrUon_9S

f&K5-N$4bhkAoqPTnG7!EqIVZN~1=l@;|z8>{-F?%`H zwZ=;iW;1Y|AKe|V^Qz=m^)_t2YC%*VHrP|6twqk1IXaIO>n)&l&RUgzIKiNpr~lK+ z?QH~!r&(p^YJv zIG(O7kG-)@EnE;-I_Z--MM|369jF8HXqByBtSp85lL4^HdlMmamIG?|l;M%_kT@}w z92bH8)WPPJ$Q1uP#M!XcKG+>z=elR>8%R;vfW|W2C4Fnt;NJK9-F_g2j|q9O`-SPv zVfK^=7jwFR7MbRgTCNZ6FHnmIwQ(D7XJX!XI)j}-QWIrE3r7XcM|>56v^x@^VUI*y zoAR}Nn!eV}yGwOt83ctVG}xp;cqY%2-t6#VU~~1Q_-ZJNh>SnvEwXy3J@oha_V*kO zI#WJP`NFB;h9a~3oTYypZT|8x!^U)+hj>}WAMD7kC6&8Q<;A;_er&(xm2rMuJSJ?k zWo#Jb2>hLVw$5P&a*pkm{%4$-t8ItAd$Q(_opxuaHSQ8#C}wDyJLIc9K(8q3J;8hH zq;|6(+bagbsO9^S?~`hb@BT>gH0zrX-z84{%^#VhoJxy^(L%_YF9xm+D!`c}=C5Q5 zH?}c!*0_V=-W_HukjlguS{!joHlKs^p{33VYlTXHS$XVH9%Nl6Wme`aofUmNfg?Mk zR$LI{(;mBG3}7QWW=((T{8&3($z3!ng?1vEY#qIMvJT|Odo!HoA{r)E5I83Sj{#zf zKo(g_CbE+##~BVs=IQ;tfX{&cpTx_9;{X}iV*{_KjN@J+GW!xfnPlE~eqH_qxe5X3 zm_!MihL9y8ME{&FG-eS{7?nc@A&#eiJc*Ob&ZliWNt>*P3n}6S_eqVvy>%K=upi8J zO`=+tSmwKW_Wr%D-(z!E;nVUW*o}VSXpS;WhVeNVce|+&i-f!UIURvc3RjhaT#N=8 zRc0$TtL}kx6nYxz2cZ7I-Q6o^P3FAqsHoFf?KH!2(iw-3MZsE6A_7~=-E|DtuRCbG zPuLzWE8g3rOABWKh?d58Z%)`8dmQ5WoF}?>n`C5mjDOZY%Rj01d_-)JQE-+R8<$c% ze_~tp{6j>f<`~~EM)sHY=?amJ6!;)z2d-O%%w8`6gkaej;RYV@v?=$w3{}g>Modg^ z=~h+lTgfBMOWyLQ8auKxJl}EUX-N!;h1zWx-yBHjQJ!EuwvJ8*vUpf=P95exOZ5he zj~$$n_RrvDI}7rQ%vT^)$I`+8Z6NlWG;hNfdo_`js)jLFJ>D{8tHC*l8p##6z2b<~ zVe19bmAsZXKB?8lvnalfxau)R@eXGb1t7+1G7cIq$zV2ufnRaaZOxK)zH)5+3dYZ_ zSF$qWp2L?gZmGe}H-crhq*c&`uu6HG-JE#G2M2 zGeBO9*!NjGd)KW#Yxef%K*gP7F2C~W8aQB;8RM7v5#Gr+>reMR(f(u7G{Pl5{_Ozw;p;@ewYoLaVkqkxbT&(V+bDx z=izXf+XYf829-(cMfkN*_<|Z9=&1vcVxb8h0;=)J5x2ljCpltQ6#qYBET2^&9q>rz zDquK#Qu&TC@30hl-te5REo{#EJpkSW-H#dTG@j*48YMu(vx|phY^A?tPj8JanXDLJ zr8DEe>txI-RFh0y96(-lYIpBuW=t=GO0B>C9#s>e5Cq~Yb152$avKO2TsIWbw3%Dm zGZO9Cn~9G7T8Nl=$Yw-eTmKEMhz%XQ;jwGp;cuY1lrB!{&8*5Svmzr2&I2_2&!bn< zpWOx=T!z0&sFoB)qi>sMk<)1+?W)N4(5mu~*Z*TD0OG2>3# zRZ<9ZJBr=oEpM?ynV)ApS#ZF7u50tI5_9Zl?-;(N6+2p3Eleo`P4ojVhii=z#cU#X zVFE2NimGI{cGjnjCnhuFn=?bpoG#lUyJZlJWn!bR8XE#jG6i=z^8fe=O3sQlR8mTwMzAMI}uhwE8>9k-$n&`b~n zfM%YxWPwOvWUNg)W4UKP;X98-)(dOZpp-^eGV2o2O3g6!TPT}}F-i$!A{bG7H^yte zaOaPKJAq5)8^cqR;sG>NNz4gk_SiIIQ@N;G)2T({J=M}3pftGQjM7idn^MX4p4C<& z7t{iI<=l*XYZ=*!?sdl&+EnyS$5S5b$P~x3B_{dh>GcdCD2cG<&RYUp59vGx)XMyl zo^(YA>ZG2AQ+R-M%A~rC5kqt!k^6c88Jv83BufSxyww#BV(M&{aGnu&@pAVwMV}!H zrWVjkR;xg+9{%9WQTWz7BKRj1JL1s_Wb~IeNbtRp?nqhr2o(`ob@00yE$k8ZYUh{z z0X#_wT2t(^mPCh7oBF%3~!dqmO#bx3t za{vAiWNI)onq7+Z)rWK6j0v0W6J-^rU+?uho>s@H(cZ6w2U?D6LT2(ipO{ip&UPlM zl?rBHeK{gCE3aA%7tXAIhnB|-r3)PJJ46{&ObBZWEfTvCzDnwOVluO&?_At}*?iCn ztve9A_*WaVU2nNuK9p?ukv?bfVgH!Dv2{}kGjsc&!yz4?UO@?x-t3G}kK4CcAn<|ZWB$Gt#y6*Yff;ufr*Nq`# zlhUL%#)UxQ88=yY_zzrfr<-Lr0Ld&Z2O81pU3Cp)Bey|xP%DEdL@mq%aHK_L?2#^`b49qIK3v(@!*|0-o8AukHj*7cxl$4DmH8|4bQ~++6eS;_vsaGG z&2w`pU8T)OQFW(@p73A4#VXVN(*0(~kp%bl>(0dcK2IOM*%-oOaQseYqd8_j7iN}3 zzR+MgBgCef2#7GBlY#{Ft^|iFe+0pAQyY3MKXf+@7I1IQF4fI;9Qr@{^1mIHil|U~ z{o<-NbZIfv|N7Vnkh!;SHS zrt6WR3jH@ili>`W`_>0QXr^*JAT)od$rRkah!a54hmU8dALUQ+3|Q$TmfvX7o_+d? z;|~9WjAH^v&K67Z-s-~;5m!Tu;l5hWs+{+Ti&&xe>H6txD*{JeSCj)e8QiJ$e>v8k zxAr%+_hx?dOqxADU*$CL7e_9+eSk9*1^WQDa+G*$9So?C>F@_@+wnY7B!+ zZ7Ui`Yaemxo%K*_U00sb#1qm_RJ~(lV;KC21O%VmR4E8v>H-VtE2ieYG#3D&>BPK$ z3BCX5a$UYdDLM=s3sXoVM0ehEKK;UE&NcG5W0IKxXpc!A4i)VFq#Dt1BG0*HK7rlq zH@XI^+jRbcy-FwB8{JW>{p|dyr#l%`mdR#bpN74QCyINbLTRj{p$^w}jJ_+H&CYRk>|K1RC}~4h|d*7O?C^9@6G0ME=lXrto6Dx9)jtf53WbNHJ45ZlmiNwIs zk#;0=C9kPvxP^Ke08WQ+1;ic?i)fmUmLU9FFd0Mj;s!d3Uedn-JvMn+@JdeqdSqiV zf5qAU=PCM9b{i7Cm89x=mKT)vHhp_V?oFZ7dX{s6LNVP$nJ6kE28w%Am0D)*71L6P zx*eOn3dh&q+MeFh{w`tzOKT3e91CpjAx_p(757c|^T+;F&j?;KM7VP;?Ifu;NGw7lAg0Toa?w z6%)4Fy8P4dovU|Q@-LfU6%k_ z6r)a8q?sj;{_~rXM~sbi2lsSbq^U^?j`qnXe&lEQaJT>e9I_<#O7z-Bf@c$1{TNFE zqPGW!b?Ox03!d3$6ubQlk!Y&6qL>|*)wr^J%1VJ4jqu2((ZN)`6Nshv zVQIK&ld>&VZ%*twk|8A0zY_r0fJn4V>2AvA$dCW?6KFEr+B1TWm4@`6|M36%v$HfR zye1GAbj5cscyng2pt&Sk6Y&6^^xEzY6u7xR{DWGlsJ^b4bUYOUynFXS(*;Ndoh)5x zcfb;;NK{i|h>}znw5sbC5;8JQ=wYAk=0>6ddFlJBmG7pWKLz z37%BbLT`O%@hUHtK&J0;x_HK8IPw-f*jd0FQUBEOy7p#UIcbHlWp;y&^4$zm8^t2> z|2|9n_r8y{#FqRb6x(RuhBv5miZzy0go4^50d z8tx0RQ+fFNdR5f{a1vf3^5cj#Z zv)tGJsVjYNF$wTIH3tjVPeqF2@6+@F^yH3!Pm0>*+k&F4wDKKZS&;|ydr+I-Kr87uP%$M-?RDz;Y6RfM{F@EAl=#2FR{8KlV@06;PVQ-C~hsiGcU}aRf zZx#oKVqNp#QjmP@JKO)@4WX8g+-;=f^<<~&KFu*o?#$8A;xKHcSfU z_EdaCy6p=R5~^>xwCn`W3*@{C2KOzs9JbraQezgD_EttkAuA{?YC0BpFC^EC!OF-c zOF@v~Qq<-o&@B71L-2p{a*L5EOSDqdO27f@ha!?@(Bpf5HWfx62vy&nPr_Fbk8Wl4 zvjaphCFyFq;v7v9u2T`tt0GBz!U-X_n2ZdH_#YS;Dl%%$95m}4#u>Qonv`A)g$i>1 zz*gBLgF;jXDyqwH*Q3vHhmd&j9OYljj{p8Ea|#K-$kZI4_>7>?8okGD=|FT*h$v2o zl&>zyh8X4U>@ak?y&vxMb$Kin84*ikB{o;7ASa?pz4!R-48eB~@OV_cVf8Go0AH1* zPWcRnyXagxvM;L2P@o62drw}NV$c7(ZuiSJ)jQqT0%o5*%w`m47zG&^rruY=3`+wS zP{Fq_hh5#T%o7A)jGSH7hh2mj&M5|1}`Se#W-0J`&jYqf(K z$QQcO5Mwk*LTs3}$HRGjP?eG(Y?hk9brnbQ=Xubhf3DEbu$dJ}wwe|~T=))}ujfX& zir8cSwcz;sip++MrWYB9h_zf}=Y%RY?%^CoQu*U< z3LolM8=;z~y{PcCKoN3q@a5tkGns@4#L7rSM72c%SXY@;6y&}q4}8h!Tt!duTw19p zBN%;brkcl5ff<=X42-k~=gbqzK#n~2i$n2(#`dKNOaz{zYhS6$P=H}Zb5#mS$1&Dg zta0CtbM3@Le|=214^qg>xGhd}=FbE;680(iC1H&YLIxa>!e8k`bhqAgu6}K5hPGv-V z1um&-!qv+OV?@y1kj4oDpxU}^*3G>hIf^?_g{*IVNxkZ3@f6bGoJ(FJIrQXVOjT&E z2BC959V9p{U|5_V$K6i$4o4H3P5w|)?megk>j-yA%c(bMxPNoM|)kqHa-*ftaMY4{?)C?wM5=OL2$w?D729gLh=lc^X z`qLu<3HPF_-{hxeK^WhZF4wtiy5w{u7ABY~k|vd{()As9XEtd|uZPBZbv3L!RaD#z zw^7{0v5GexNQ_tggCmb#bh5_yfftjlHb$Lcjv$MTLoo6e4-oBr-WH(l$wymLo=`_5q)JeQ=o z-m-`uE*;OYr=38G-ydlwop^<5`K_jpb4`A#wY-n@e^GVb(QLrq`){dgQChW1NL#g6 zi`t_tr6_7|+S+@MAW~JeimFvxt=O^mtPx`GJtIM4#*Xz%KcDY!{pTEqlfyapeed%; z_rA<)7JOO93OX=u*EYZ20)(7?fzFPoDo{3g8ri6UfvI$-WKnxNO7YC-nS)I7tpk%P zv--a3UcGg92uSAi3Z8+GjvGHzldy6g%WQW;%MRUpu7#@A(fbskI`vZ2*t3w@^|yCyA92sIR-ieSEdW;%C!f zvWF2>QhU?(lVNFgK;u2XlX>}oAm(1WZy9T#)2^x8v<}wAemfP_o6`aJKqoy?aLOyU zI?!$hjC?gNNT4%zqdxO__3(#`UC-*w^iJMMyQ%K2>Nyc~?GpNT$kmv@i+~s3W~+MZ z+)npAH*ck+6h&S%MW@HM?2@J!S#A%V>B+X_(KIT1dI=FAWlh?-6Zk#VAR|hXdR7&` zR$TQ&BBC~KUoicnyHK9Y?EEwh!aavPf?hzRqsw%EVi-7ZXqK?3Do|}p?sjCf;}0%h zkMo;%#PqTtyWvfv%=BG*O}&?AGQV|q8a|&Fs=Kp>NyFjCsGvT7&X7y)$c3#k zV(*Fo=`QqIoUKrQ?9e^lX|{VyUpp~Ma=-Puw#$z!P0Q&_Ni0s6Gjm!z4f7%hovbY4 zl*}$kCR~vvLkhnv-xks`ZVSOV0SN;<6{Tm~AFa^V(PzP}5`3JFHu)6%_hzf335QqW zwKn5oWvepD+o%kTlXRRMvt@yYw}%tmc(vE#|8yP^alO#I!Pe+`hcy3w&fXVFqSvGV z%!Gj!$wW(`!^UVHxVOhf}0WY{g}^9(%%x)e$|)EN7cg=%ZZ)CNGf%kqvE}7y~2~$vt>GWUDpXcGMzF zXjXC;qS5K<`KVHBcR&Sw-mWM|Hi-QdCdNFrL1vwUXBU#&8EG!^)b{?Kk;p9iNjXxi zG;gGm$CwR0Az?Bp3l#OzIpmz#Z!y-m&bOa*798N`GJTi0-g9#AdPIW2m* z`ny3NpuLV7{sX491-|$kkdDNBX9_oWSzlF~zkhylkVK#bGC2$nA1=7lj^)S5@H13; zCFT*F^vE-GiUInJJ|Mn6hBeCj)2?*QOQzzfKabN~k?bkhM?rdG_;va?mON9(ZGLBZOk z1LNMOEM+IhdC(@LeBj#-N#O86)yO0wQO|K=G}YzMRQD(0P8bk|gXcHV(%z`H@Pem1=&bE|LK zSfw2t&*RHy4>2@4PE7{LnPjJVIaTSGCxMPvind*jWpUI8*!~$$M;nziDckLDGRI25 zc{j5!$-cnD7%fLLA@vNv)8&C1svh@ zj&aqpR}e!E1C?l+OrY?@I@PuGX~FdqVcT_LPRKy)*A7zFP#hE}brS{ilwd*N16xM} zIY7)0!JNcvo)>E?f50n16q^pnlOMt?E8Kf9vad3Udm4$;tJi@O8mQYk6tBKN>g-kQ zoM?tQ4h4dBLe_O5II3g)p))du_`auM_J zgQ@SzQPx*j-5Tw3N66J-t}3C|+UH@;eE`q6D&!!1qGdVyOny3_jT!GD)0%DMP|HiR zo~)OH_tMx3rv@b*Y}1U6so~>LGapH+)@FH1sgJNlk=Z^1FUZ`bEm_hz{j#Iu0Ui8z zv-j?!^L2EGDEGU@m%8z?r~Q8qD+QX(>G<9>qewIM8%FP2dY+_p@+d9eb0s{xlgUJc za>Fbzs3yPd{t3EWE3Dde^N2OcJQn)iI|Y}jJCoa)YECNAMy#3Ip+*_=F0iNA9gW6% zzMR>gH+dR}7ZgpaCLw70ex zm3?8jt^2aErC^4jA$bK+NFY#hp*A_<` zy;WvDloy}j`jV^=G*=ao@((6jJO65WV`qhjT&rDn+4zrLq(Y1>^c|4_c z#WQ{|-3nWaN3M2hjxDF3YZywet!Kj?I>8)`LIYds0dvj66pX^wce4f2rkf{!&a9^M zdEaK0xy|<_+t<9PUGzy1U+pX!pknQ|oRiBFWIS!nKA*jAdn6Pf1UtUwT<1K&Wc3}G zd7p;qCGm-v4EgiLc-Zs&wa7iyMU&|yV0~AI=QY!H^4?#v#XpwMkUfir#3qJW_AkS} zL$fr--Z2+Z*ea=WEI&%|en^tecJi|)5@~6!s@lxMDUeYmcm89=1rcY~@8Bv$^+BK5 zc3t69xMywf3A|EGW*ER7g}K2*@8bK8=tSnQB8f}mS$5m`>Z0Fa)vjXj)6Mf`%KM~O zubQ3+lDx%ZJ z{?opowuY3pz6Eb_=S~m!Z@p8ovc{!SnE{P~CT|s!jssBkMe2WRhkYKYl-0k5+2k27 zIXX?}OgS_b&bZgIOy>E{-Lp;+;%~|wyhR*3<%^sBNUmI3xkRooTOa6tS45!ARrstq zzvL;C62B;mZC@kj;hB5 zFY~n&?`qn7B_00m{uO@~nCPn8bNDBn>Vh`f%hTe+6+-ST_Gxqt4;ZE1Sfc^OwP#2< z`Ws*E<*1=zi{pWY;p;d(iShc2KS-P&3wQK!yc1pY)v(?bH_tXA+Mi{a#(+8h`SZ6o zXc?t2A1Q{1E^VZVY@|JhZ{!nypgS5~eX6N$diFt=WF-1Zf)oFRSQYhJ8T{lbTt)VV zuLLMg_sP|AVbk(oj)#MM-p1oaP9_08or<21XY{Yeu?(x-uqt}VKhf>IM2)XN8<6u$ zfdLg56=E{_%r+}Y?2Nv{30i{6_e#ZB$pc1?r$IaslJB1C$(-XF4d%JDATJ*Vq+1Qj zpk7r@pqYN(+zm*lcSM9ZC&XC%ynHpo{04ufw=|U>8#&}-l63cau_9RPS?||F!rW7* zYB_YiA-?SsHp&!iDlJko_`?h$^j9KFVQvBEO3@(Dd-kJP!` z*$X&zGsn(Gn%wcOxohirfWt_S`&RK-%LUyPXkF+nD336lRmt>TY_2cWXU#QT+$tG# zu^}`<6`-vo(F6Rc?&(Io=7C+TlS%Oy=6;w9V!wz?%mT(5<1ZFqgDf?%aBq{G{Pb#0 zi7;>trOz3*TrT1}C3<*F&VtCreppmmkf?Iw)005lyF1@dD~|L z<2asey}8ZP{fL3neU&Vyqm7X_0KKk#@Tt_nCDoZ)wku9Gqh+|bTKC~tR#ycmMhA&+ z^kh{Wq=%1LP%22*IN7D?Le4DzfN;H!4BX7&{1s8{l1Byx0DYrmDw*G`CGRtgLO`0~>2axS^+dz3!~`Z07*h$L~ai2Z8 z{ODfv<5IjJ?fK55M(xI=Xl5=*LV_u>V~TW2QEz9%e@9QI2A|`P>@GqMdnbH!*NU_l z&Fw-TPmeh#!*?zts_TyuBK0r1KNj^)IGm}p(`g5!@$=Di%;y931WVF};WC>+MouM@ zo#&ab9|m)J%5yLQNSC^#C{1hLnA^0wzk``fo$Z#MjF-?9{W}=>P-UW-Pceba-h3(m zX;x2h(*(ANf5Rv}=`ZRJ=I&xKGDGY9Xa!vPpCVTdLd=-CfET+rj#{qKrkdi6apWMTxQ}UKyWIfJa1zj0jU2Mt+EMO3{xV5g386EZqlwGYBQWo`h24_bWr;XY$OKIO*i3dceRpHs<>4Dpw`y>}DO zR6;7;mgC-Av0kEKo6!N_X+pmSQgo#r+9~TDDWSn984ze-UiM{mf4Q@~9h)1r$k{({YeeEqx?rN8h+y*cbnV4i{!&H zmk3Uh16zzv=$G$86cPEsS)u0N?8aR{*lCt^hM?bY1gl98o;iPMn;a z{~-RGl`x^T-!DI{6!7Qk;WMDz7OH ztihyrRE}7s6r1bXERIt!$>bT<$BP^=y<>bE?ag_(Xqu$~t9v7K21~bTxps9}1S_A( zYh5k1J1!LFo`F_{XDm))Bb!*Zp{Ok%a)ul|Q(Ka;ydy--d31L7`h0f0Lb9+gxPDU1 zCUf^w#Y)li#W1M%+{{>BJv~@VCc>}!99UksVG$p1G<{8SIB(u}Z`*kEoSA8+;hpfX zx@9HBP@+Z;24U{hMlWHUjUGr&-VIdu3OATCnUp)xHOT2B z3wKIu%LSgaak(|BzvRtHy0E{!@(?J9Q!~a&tzm6+5$l7V^T@7Nl~WRD3+@?r)N^)p zd`%#W{k&ddI|iWWo1Jsc%$83&k4zmW;aYeo9x;l7U;Kie~KjuGEJ4=APSRf(^Ntot>YFfee!c-FJEYS;3g zx~l}rRRW*lm%Don3rmgXt4?^#jKGF1rCV!31AK)KTHQ>l>i6gIUme(yG{LH(rnUJ< z?jZxEExpp3*^-gjmW~?3++c9`*$Uj%YF0pKfuH0+=`63Bi1HVrSlDikAekzGOCMmXm{Cd9^&8Oxy5^k<8XFevBA>4f47OhNOJ6+%t)qo0 zz>|wEmr;2^{V$0M>#(&w8$sj&v-Piq{T7vOphN#kd=|ZO)ZMxJG*zav*Xt#T(zZA^ z=`NSj);pP+2SDRBReKI?$@{{;W;wtvE6@+XMN%DIQB?`p_;K!TzS5Q_LUiDq@cV8K z<(E8;?C16?uvMLLSFQ$k^%`&!T1y@AEvwT0^)%Pe&Bk*PtE%a2b;(`y*Q@&|G#2rJ z{@{}-Up;s3ta;)`hP#LG7---Pc(emm?27hRZd6(rL#10fKy9%VFC+&#pBfGS zKaI2MXBTq8dvR8`8Q&d3a{bOEwF*QS1*N>PmGPeQ?Ha|})-UK~l@=9;P>jyhplSi~ zm|g$9TtJeEVVryyvhJXf#lM#hnVRL|wtSPBbPMBg9VSm>q8Js2VoTyI?@HALd*}cy zb-|6BPLht6(Gs86x6)2pe+zKKz&JHF!+?_!RnZux`=+ z$u%**@zFZ6#C_SaV$6M^dPI2pu0h@maae!9N``F>7-`A|K~Xn5CoKYJ9k7a z&{4-MlF+gLn}O?(^Aw9as^;hhGW_uE)gq$H14JkkL}IXbOKKfQ1VM;HL?h?~L?W|@ z68>DYwenNLw=eEVPnmjYvK-l89sdlI$YORs-T7yf4Pqrfs40r=j!NP%3*mEYj0c#C zmF@T9qd(VY(!8go*1dh!!2-V+s9Y_! zoV>OxEp>(5PO8AmZo-?JM(yjcW>V95~vfMnrV! zDo6aX^O9HAhuItNDH487@Q928gw~{wLLb5g`AZA#x436x@oD{M)-0bzQJkuyGw$eQ z6Wzu#9r?_EnD;V#H$sz1~vu=Ibm3GCcY>@6eB3l};Uc0{=(?5SDuD`4$#( z6Dro(UUyfk1c^!BPS}v172q=48^eerBpt=KQ$5ad>!-FkhECVhL1j%43kR7CbZOJd z&2z~ue(0{T_dzzgV4bwV!9m7v>D_*7+uwdd$M1Yqc1>Bq^>k{o6LNhZ(CS>;eD=xp zL))zcDwzfen~2S^}iwYDbJ^{hKA#o*YS_=;XaQGnAsIF*Xv z4rF|ftDVd%*pf-`MBhg%uuW>%@6;?3d&s5^Q8I1;%guT z&v)QlK0|Nltkfr3!e;~B78Pxxst|W>W##XU(IfZU8SOCk--)qG6*Jj!pYAeDQyoK4 z1S(IvFJt{8#h8l{<*}Zh5OI&t-yt$q>dhY5UZCq9|K#n%XvuUMqm_V)$?B$RxzzLZ zIfon6)l`?ccK8W}+EbI>)Q1#*FHk_@>)K;Z?_g z>AZ5*vuOo?ml)CinN1@4Ux7iu{&y*7YLbKpsVn&&M=X2!RQtcj`rngOT=F#Lghx7dFCs$Eqhf{Y-4!vD_kV5YYTcQr(*U=KW za%s2;?Ls#j4cK?@+_ykX_Eq9Iakv~=)M|$r_L+U4U?vyHLK}d2sowl`bi}pcG}vXM z$VVCav2gHLumq>M=P&J>^EB-`H^&=^wX9V%ZEhZF_%7o{$Q7h538CKExTrq8LcVlF zzK`+qCKgTt)g8~pTmq#6-jKo^5phFiX@*eh%oQUU`$hbJf;#L7+Q)t%K>-=HKrdTeWk&ETj69KI+5*5>5{p%%Pk@2x#!0ci^CG~ucr!qsSH^2bFs^h|5 zbOG9`w^Zo`R2QwA5YaX)3!-LAJCxv+>XYh*ZcU(cqIr`o>2Y_Pha#g8+?9dr))ps; zm{Y-Us?NM~3zH>(?X@SN`2^aRVO;L}YA+PRW|!~-z}^UXp5mO$x_ zR?P#9WSC|*C2By_5U#N7<~fq9CE4iCplI*;Y{DyJpZdw&HjT#nWnYMGmfl=ewIqsN zyrA^5pm)QKwH&=nlf8ymjpvK!X>nxz5a5V;DCApQu)py#;lEV8dYTx-=er5|N{5mp zPaSB9QYjQ80?%k?#44^DwpFQISIx_T@CqbP6U+)n7@2M5DH+EfrF%-MzX+C~q0WUOn zt}bm5j!XxiI*m0K)o-M-7VFDdRNi^;hk#YL4!tPbo?PfRZ9Iu1U9~LE{`h2OtY=F| zRR3{3fjwj?q$!78J6_C$u_dp`S02$ZC2K{^P4Sv`Wi zaiAC+SywLyQyoyI<~pFMhg|UvM$XG-XSyjYHJ_?q&*?x7p%X)v#gOLB6;3;hU@J*; z%e-FLmV2%IklC{ov(RoO?Z2#4GZQV&Z`J+r$jlI6a-|M&_j&4q8&fcB>7=v7#<1edd z7T*(+v+&QF*yR;;8M3JC0t&PYP=t%QKYevx82ZDwLuF7FpoGv?}>kaG`01)XDlOczkP`4}p0v~hiGO+9e}bx8W*G}u?b`=_n4GbDpf#&-1! z*w=_V)tEZ+<600lJa0(S$)sG0$(klh@GUkmV){{4nlP7{%P8iNvDscyEWdMeNSrTh z&gjbgn)iTVxpuEvK6ufmV-QVK4;6*Yay~ejJH9j%TdxXotSSc`pi{gTuSfm4hWL%u zx7dsj)&wuEa-<}~cg2w>{^>-3ydA zphp;vI;NQI|1%sBWXzdn#Z5o6IJqY&c2#DhZvURB)c@~^QneFRu~!VosTv-yV1uxT zByGL$l>Z9deR`-#!V9JS5T$Y?V>IR9gb$FEW+y6)j{JJkHFtHa2uif)fd=*5HFl<= zW4h#Z9p189a*mSl5G9b{`;9%3K_KPhm6S=kameyVf*+d@$vY?F_bZskIHORD{2X3P zd)8xo*N+m3t5=ZnTViEWn0Ze@ab}fcqB32&-u*ekk!u$QWlYsrN?6B;Z8Q=R2;WnH zu@8L=lOIMez>NuqK-{>;eB1*aK3Zwf4=wp^HN~GLI=qW|V>n;sj!ap}MhSPD6*Ek0 zl-(m*qF`dfGVm4%-1H$>K3n3p+y9-SJQBOrHq0{)+b8TzG6)kCy6ON?4gLgUHFPXE zmhgdsmq_-Sph%fbsxWf`I1nGIr%rq*d&#ECEv#q=&I7QuIkF;rgy z4G$W^)eAxRVIWZY2%;^qtO+~KiK9&v1YvIMt*EEf6a*S$b9!rd?jiQF&EjM!AG==U zO7H|B)MVpRjyWNhk-7{w@k6m2&6w zy&_d+1~UBmJFk;KQ*xu~W)-nUU_8rLJJZb=%&Y3i0RDUYb(14-=GawbPdY_xTzVcM z(asOy8>2GD*9$N2j^;-uABfF)rWqJYF=ZDF_+6$WKC2={MA+-sf$GD&@ZDumaMlHnzx z@i}~n@t9ktZVbj{#B<1NwKXDzQhTXaR$&R>C zjLm1qP{9*jK_+kPXSG3LM8$v!!FwElsjvekuuTZw{CFfNjI5ijHZpfLPBSr+7br@F z+z(=V9&kY;WRyyZ%#0);w{L^vAA+OJBh0{<+t{}6T5TQFX|VY(4?Auun*Ne5JuZhX zRdwqEoTFqMM47fW!_dAh00WJF*J=^C z-%qiXoe!3&-bW$sPBboiKO{<9=68uZ6mMF~(h2-}#VCEg$L1?DRN$=gY|))f`42g- z_Wa}9rzYOBqsAxEid{(-Epw>@@ZKLnyuL+Y^{zj7@yk`=D;L+D;*M8DA|F-{4=d{T z5n5~7Ulj~y5b-N_nvrU)GAdE^;AHt9=N^0BAm2W(aEpIdhxkkRzn!kt4LxoE^W0tP zi&}v1Mf}Y5SFAH=T*?LhR)m{tFc{@wY@+g1;$R8Bo6K57CAoswa-K%@L9}1MCnie_ zEm*Oe5R0g%Pf4EcEV-OnwZc0Qsy#7W?D*>JWM98LlDM_%y6o7ZG4!jfh+&1yM;HRVEMb`eMw#d`F!acoI2bjQ!DG=n=driyq zxDcgEHe+SFqR~bZP9ywx|^Vn7OT>tZOQBP0p)J zEe)*OtAMP_pEqBZPxU)euQY}@*ln^CsGsi-Pey24OAekP1YMe?w4~1FU!|-^oVSfp znOgRlcdLa*hNf*BcfZed5X{}XCn9=HZW5ku!k^o++bHJAW)|-FjN3lf(Wxi)kTEx2 zykMa?)hj1|F(Uq-BG(|uHbMJ;h9U3%b~M_~d~?vf@WHX*vX=NZADPT?Q3vYsm$jc7 zodhn&z9PlNsRha9`fh&K*t7Sp)ly4yKO~*$XRXp;h_j*5{hNR?=yF_LtiyNa7k2(p z64Q_CyR5J?4FSY5eYV-ltnO@E;yqjLkx|kP-qm;ov&XmE!rZ1z0)Bz6J7E0;N@juywk+~(%jh&V{AW=N`y~1< zzXo&hh33xY$i$KQTzY37BP!-rEx>D}YO1z$h{uHV!R0Ds9lsOfefh}XaRKgCUP*KxLNYoyQ zk2kHp>0?%WaWzYaqT<8QXnP?Li4w0+Pt}?02tP>JF+N+S6m0dp`(Rdkh5t3~4w*Ua zJ1w0%fAimL6cJ}LfA|yMvKrJuGJ5s?K8_#a;&Q4@SnWALn9;s5>n=LXClx@L6;|AU z5G*57;8oA%@w^AD911^|k4oL7cbjsUZNC$K3#MEiVt{MHtcJ zq-*Be!rNogUS57R;y0O~PqOaWam>7-~G9i(Wq~>1Ny)(ecq#kc=`9q zrCONbzsw!_hO5iw_#ejvHcBjE)eH6vdh`t0b>qtc>EK&H>%d4w=?GbNCjT%+wEQ80 zY~2EnfZQA@X=TJ`dscZTClnT+DiGi*Mjwyok&ry>_s3GtVna z=86!7pE#v<%Db99LOAnJ|F;fpjhmu^F zo-TC0c8ofa4inr!w2#<`(X|L1jg-eTs`5F#@4}33)H5_=W(`A$$@etgYq!;|-8oNh zOt+hxa2=+5YUV0<5-V=UylD5)sd&y(m8YH13&fiDtbopsL}jBqWuij2OgisUhAN=n zztLw^jQSy_q+pw$&4O$^iP76~FFszmM#Z*w6eGD6M%=zGs?;g&n_;fLo3u=b6LT|r zMZ+D@p@^nn`FJ+FULtYLeX|qkL{Gz9AQN8ZK6L+b&BP+OupYa5!2jk@^XZR8+%DAp z3Ie*?6Np-CWDjc56T=X>5 z4Gg>wec@?HLP}~7)g25m_E3r3d12+?|7X1XN3F~RnUNeSQtVWHzl_1n*sk|Y939z}` zLX2gg*+Rdw=Ip;qP_=)-)|jgKCE%t16}^~D?1qxqYAf*J#P4%Jgx__fRBb!K zzBY26nOO8bT_8lEhEd|j_A?**M~Yq^`I7+Yxh-S4f(3Td3ANm`WbI7za7$Aa*Rs1h z5%14c6XVuv$Zx{dtRREqs7{IRi;B~>0=CH1m8L3rqTE{vCqm8%vYLv_^n4a$ufUXI z3X_)}-T6%s_F^_@?$(sIq`mC=!X2YGH2zz9Qf4=!rDkMzXIRb`xZvC7lls}!_p?h$<8-Rr@X0rMt=HV#hiekc?mEj>P}MPrHxK#`rt1 z%G3pyDiwIWpuutn9f(CVqp)WVX(vWKPIy|Q+Qs#${$)z4ay z7|y$;Fq83h{A4VsD@X!J_vGEgqc}IKPfxX=;Js_sU4FqL^*=_?Q)R6W6)pbb1=oL$ zS#wzoa}Y)q21z~i$lX;NQ`=R={FZNfd8UCa{#63o;V`k;R*9={D3?zmy-f^RIo!M1IL`0qgl zju2+&n!3RoU$}Tw9TT~+AC*)3fU~nxxk?biI_JeET=Af)@i5osCd=}Ts^x9V1jNot$__KsTexN^ChpN-?qhkjA6CMVk9u z2P>y1i;hMHrweV1Kv(Xrk=ppJk4B9L$!Pf* z+RF_s=QVNUTT2y*MbfVQweg3?wQ8O65f=24if=!){ViuW1&s;|U4*>Q&=t4zdgs*A z+pyYH+0%47o0(dZTVD3D{knf|*E;2%sEyNXt@B5P=!8}`cJG&E2=04bf1b9Ct#)19 zn;KM6Z@RT#ZJp-!bLAmPY6(jm^7o6!^hAKC(|7I%w^M5{5ZY(14C1WAEK89h`M`X~ zen&v2Vae#zp?a-*Qs!{gsH|C>I+AcR@TC`z8sPqJonZn7G?CyPG|Iz5aPBfitZQ>m2a8JF2f$BqKa_Hyu*<0Z?%` zG38Zj=G*F){nv>@P1`!v|4W*dJPVg6g-X6|hSnubL(4rTT%m1${}L|S1XI42O(s@~ z`K=Jyn`Ume=fw=up%f)@fl^{J)0hG$t(^`RMGj1lJB6H4V(CSBhxp2v$7HEn<#oiXiALk_yoUd4{DTO^y(-n4hF84i}d?5LyNQ!e) zY2@v1K__qBEY5q^FBZ0cCBl1|pgIBGQi-~xs8u8847Zx|ekDE1%X{&@8PlMUet-|* z=F!0x5Pz-P6Q%{CZE)VW6yJfoP7|Ac+_t;TD*m7=^65bLE$^{3Nd=&ZV{_N-1a0GI zmW+psJBx|Ni>Q8r;-kgA^wGVqbvAeUE^U#vv^``rXZQTyu$()qfMBy0_lQRmEb)wS zCtZF?P0ghLG~aIQ6Y)cr2)OPpK`wGGtLJML5zR`$g%NT1&hHJuKdY0Cdqahfc@~~C ztXK8iMzE?i%nCnfoN<_mqagvdXc#IXE=dFI24#*OH>S5a-{jBltt^l*%df_OI!?CjMa2 z_vRVz!;OGTq+oQs{rO*0mf+9F5*a6#oEgvDP+$j4^=#)p&4QO6`@8X!MnxgnSy9*BucCJTO#IIdLk_N?avod)(!<(7AxR9tQSwdA*IFsW* z0F7@L7V;eCxD{L}WnbiSvuKx{PO{P8%tBE7d7$=)Td0JC ztKJuS4v$Ct@z3lPJN*e|2GHbza^E(tj-bCDYnU3cPe`D4M>W!i&7}}p0t|J^5iM)g z85Wh9;HuUHrHK6@h0^3tY@ayBVIk&R#+9=+8il~>^NY+`Vo(D*?zO0Wy!*`lL% z6U?cHWDh=II~&@4nLkH|bA|Lj=hGQ7xLG8q)XmgY;_(P7>GjvWYOQQnajH%XHLL@U zOKQ^>t6VPjT^;dzEc7kR;AG8?+Sgv9vE z6O1LZ(~_^XOQa%C6m1q!yj(~>VM<$Q5P1NfSW?DQU982L4TvrcM#R^|T@UMbGL~K# zc+CmHXb8#XE(!T&_Ca0O5sE4xS5%hk-u`+=|58^HGjt>QOWnILF){x8>yH6?$V|{g zOdq6vIX^W&Y&J2H^^1hQO>>H_T~jGVb&`6vHSlbaO*qyh8boZ(s+l8eS+UqGk!=u&nl@aj-lRM+c6rf-N3@87A3S6 z_M+j>xLpSv+B7dIVwQ{mWt$|SV;PJ&*$;H$)j|qiymftPn2jASR4dy_)m7};kZ!Yf z@+g{ZtHY`-Y#$UNlxKCb?pHs&RHuO+ZahF$VP80kslfRd`{S*}uSnMs;4dVr4P*|_ zS(C+DuTNwEzuvtE&d*e?ClTf|ghH+V-V%KZAHljRyCJBw#(AqM&3)g|>tI3!2Az{9 zM8ckc?6MZE)f#Xc&f<6im96f~)8ZlX-hg+uBPO7Hg_v`#uCR%0fg|ElfP%2Zc6Kyn zAcEhKEtMR*(mfqm$=N4tRiYyUGid$kjz)A6)sn1R9%SR_FCN*?75e!VM71vG1S-#1 zD5IDhoc8sqX(XTg&LvpOY@6o+G_Ai-nvSffUn6>YwlEFxHGzr$r+{|%8iberC&uXu zY}wHd8gSgKsRwgHJvM~iM)QdZGk4wnrgaZSaH72#*Ve!eG?+UywYGQIizD{Jh=DDx zhsq^L@r*Hkkp!D^N#)_hbGAFg!|z3iopd~XS%!jL335g5mN=?TA$al)J#WwH^Wx#A zFE@GB!v6596U!U}y7&$Qw0ok~%$fGv2bh|)pOrssIF&i>&8a)u2Y*;sASe&BEo3v; zS(w4J>H0y-uBjPL3H^PRjI7tVzncMN)LZdy$3-;qvJl`UH2GXMrn;F>IeX@Pkuz2T z26`>WXhkw7ZuD$ikTV<1mCfh8{~mDuIqWk`B*6D{BFsC2q+bS;p_nc*6%rkQxrPpA zYg)Q)6h$RrNH>l(W{33x4&D0>17$L=0%l9y8ZHWmH;DNXWsmkk*q3or5~z&Lm`!5v ztjSfCR-Wm<9Th!;9P!C(Ex4NGsgr@_xXA1udUA>yhB_j9+234RIz$xnQro^a3rIt> zH|vQC_LTJ+EJ;f)HR9%ma!W2Z$@6g@4&#j%T#9E!Ka}MJC@cwEz~}A2VZrUSvsX-j zQ!RE_1&=hJik7Yj#)dSGMVQ76{tAPu9aMZwOZ4t zsT||Gzlp2@KJ{yL@1EYt3%r&RZM(0NbDzeyJ^EO{v&p{aK_^3Yp2|19GR2B(e=<8b-g_{S zr3h0*5qeF+Zg4VW={n0q3dztUP7V5LQt&Tgm-cra>5$#T>0I4~&m&lC$+m9B`*XXH z2UC^>#pkY_Z-l&eK387h2L|k6*X$>em=JOE?^{kl=up|j35;C&Ha@TrR%e=8o->aTX|-FB{E#RDz^Nu{%QY{0xiqoB0o z%I~D+DK$#6AgF|@6k|znT33Z7I~1hWPrj8mGIYLe<(q8%V5Hd+yb)Kq=&jaJ@vMHT zJgihTC7#cBzS(G3F}u545`@1Ha3SgnP`ogRDqfh{su|O@A_=?EKT_>qlko095m=K_ ze;VFsfkb@t_VE%b9NN{}UDyFDKKf{G$8iz(=H$&bHdYtG9{Y{Zv2~fPXl{K|It0M~ zRVzTG@_77bCazjzTThfL3nHRw%O6taYK**v zYKNF`BH_w=VDmO>0_=C_IK`S-FU)wx?PA+vcbYk^nZm~1HF{FBe~HgEOwpG3+_ zM-ncZqiRf-@v_@-3jur3Vqy&$&G@dMRzw!zWK`7LQf?7$g!04fs`u$vt{2rX#P+d< z!ODOl>X*Y{-TeNr?tKR17hi4?-MByTy6`E(PqKGRz}w4Y(QwiuLj7LDSqT@^ zYe>`gL}<{LJ~LYNLh}z-%da!8sz#s^SEFoxF+IcxGn8)bXdaUNtxUYZ*~aO@i^9~Z z5h`B-u#y+zp%(`s04og*mKA-c1HsQ`bx059ip5vA4*eI2KGnEC60$v`&ca7Sub!y? zLJtT=oPzGDkvw>8&rO!o!JcALJ)tZj>u9)wd;(QFpEx$i#%%QRy6JT5p{snO5E@Ge z-ntU@!NLCP=q}fnckhE?!GNKDA`izm;JBFyD))FBt%0@L9=LYp{q5DsME`=R&@Od4 zh0p+uLMq79ABEKHPiUNb8TKbp!nKPa2z63Kx1+R6K zbJ#0?Qv`HUE;=j93FFBJCHfUMBO;11l392$(eXcb-~wL#d4U*;Fy+|m7m=y!3h?n` zg~$W}%tg-SuRMTgL+6dgwVqeGv3=gZbm4gh#P&b3ZD|6}YJZ8nCo=CwAF$z7cw7Ou zvosV;=512m=A%`zEsb3lE-U(^-M@BuCZ<_5I8G}88c&21P5jJW()<#&K1_98`{8ct zPEVcHjrhKL3y~#zKV;4hMXP#Xl@uzVp;#W}_U*~Cf*wjjHE|$Jtoo+JQ1(>2wbT8X zKyhg!kpqX?^G6BlzhK4l+3w7)Dt}x{j8!~znWc_BAVQ~oyG7W91~6fxXKlv)9<~gh z3eZWuTHHr-Q`SsL%^YsYQ$_hL=|B(a&I81+ z=tECE7i3wgfdH{dyV_&}Gm%Hko;{_NL(t7`d$!5wi^4 zyfe@B3mrR2MRySKb{rnA6Hc++|0At6xU&|d4HJUPGxOmySpUV71#Hoo=KA;O$OoqF zPI-(&Iq_v?<&+mG)0TG&hc&-O@ZNi#zqFlKe(I-9nrI4Ek0enGtc_NkAQhF^A>3{J z%m0DILjOXK^u`6%f?$9*AhxL6pI~JeWW2dJvEk5>mD{i}1>dpdpt?6(wT07aRkE$g ztjl>7Cu@nKV#ek0GygBv-a0DExBC|+1XKhR5tNir8l)QpX_UsH5$Wz27(x+2Vvz2Z zmhMK88oFWVn4xRPq2|5)KEL03pL5o8&YSC6i#6Q*!Q8d?zV`lv^AWwae@rcyB1+V{ zE0PY=FS7>VkIUAa(c@)i-|eT`A1wyL%F)8Nn{4FTg)`m7%3rXxg`c8ap4re{vNqso zhCB=-;Ihc0pH1V%ow|jAv=Z^X9b4H6uH*4<;^@TVr66Pqb6W^ zGdP?drU%OrMsT_)L}-!>Tyx$&C56YJ@CcTznID+d;z_Pe-sNQvt9GF8kS0yyZ}hH7 zmbsXmWS*=Z_AZId6P&A$P9Ny-BE_y~S{NuZq;i;B9d+C=G99FOLX~mzjcvG5eDm% zNqB%y1xo?F7a~r7p0=ms{u$actm(cgb|PWaEM1E8w(${KY?y^{|74q^`SQPXTk--} zKAB(lv}YHh-LF`dJqqW5TQ&+iG;3Rud1Yj#&H=fA?5CHaWO#&|7I-vFH6-Y}TUFbr zkfG4Or!FV!c@i;TX2!6+ErYWbDGDuTh&}~V+wT03TM-mjqYt{ z6&tB6Hu!c(RbbiiPcre#xUha4*t>u(o{IqF%y?ONr19KOC1gPIV{F5YvaC@W;cec1 zMJ@7xz`jSR!6YW2ukeAZA*FbMtybt@dPkbb@v&faZM5&pXo0{6yed}=_hH6ue+1ni z$W@zzdB-rItIraVz^;G0pBPp4KGB!vmEBod%hjV(gZB$_%x{w@#Z0!=2m$;p6QX48 zfuPW&tc{JP#Ppvlf18+udQeeaG|RN|%zTV7BVDrJuB9X}Y#va8NkaUb{oM1`RNUIf zHoWN!{3zSl0QSgDo4w)wE;SFH!idY=?VRPNx}O@shw@)1V+;b=KB3b zCT8mk_UoH3h+R)kSEzc}m1qtIO(3VOvxXU6p7V};$0y-VsehXoOp8x1^rST`{3EE4pm(TsxYZWc*1w7+eov-a-yfBc7t7r?McQK7;U&C3D%D3YdQ zcIFXAd~b5WiFRlel4p6XX6tfEX|yhOJ4Z7795NvU7>B*4IAcB52$E`mII~2e64_Kr zo(5R65+RI2+hG9p57ZB%YwJ~z5I+3tR;ggaQZ}VRF&E<5K_lfCN9&Dck(Z5N3D`Ev zZkhx=!NFJ7#?$%5GM?{O#C$*uxK-xCi4}tjeqzy{LgMPqg2=(%*l=Px6rg=;sJU&O zD@hcP$Gn-40F!yvq-?;Ab%QPxKLmkS)FiU@lE-44wpX&vvgE+q7uh5uiBV$(TqMFd zZ3^dQ_?=q|ByD6=&t8T7fo`ypzKD|}@(d?Ndz!0KLCMdXh zHwM3JDs%AM8(%18Qvr~))FhRP0 zU9;M$v!@Eig)e)A8yfr?)$E%_;ra2xk`Ok9hkr!C))?1qJ)3-`SVKlAzYNJdv&g=n z&j9B&I14ui`U63G@O8(dMq!mqnzRcwMC#MPL6M!+4&G z7N4VGll9k0Rx5Z-ux0HeW%B8?lWp5I+w_Np#&OgtRtDNGQ!>5%=#nItNp#`sju*e5 zkCSDF_gQHg_UV4(w|Sui?oHwNaS>DOPQ9He&UZp9gFHc8%g(j^#0I)OB_xv1QoN+x zuD(JBZI{`Lwk3+Py^|=Y z^HTP-rJhyWwz=ZmVi_<+w(5+fJ))%m55=nx^-Xk%Y&+HucGrmw>tiDAe>-n64cgU6 z9flpzoE&}6ff!k#lU<8tivl0vT8(Xvb}&; z4@~B_Y1;Db4TewVQwI!6*sS~x7CE>tyYW{MM-cT&1H_$Z{S$E~odDp7rw9SO!qX_A z-ZObMTeH3$#zNRbS6lGJWBJNtJ+uYjdVXa|1%zArMO$3Wsk$`)-zt}mDY!Q)sH!iau$Cj*EET0p;#AyP+9~~50gE(lc3xrF$%-65L8kt+!*98247UwP1jKgCciN~? zZ&XuBmZ)WFbw@;!JXMPel@2_PDLw=U2>y0IF**l`Dz5tqvGH<(lUF!Ty7q@%FoXae z+(gx51}^#zV<7le;gc`(s~5-`N;)G>#`7OC74xqBDQ3iTgMv}iv0`+DD@>*3aqnId z0fPh;ACJiN@%W0Omx(nkPnGN$HHK;(+*FPY4x?v#9Fb-UVX(A6NaVk$%>T`0DATBD ze0J_OJ7oePw}kl8nvj#jjO#Q`VG><2Pidmu*ncduwHBFjo<+H!`6?MYis zzgC+cL-^d#wdWfmWtWG8RI*`VLii9%8W5mbH52hvVo_d>ic4BiSmNiy3qZlo7dkBv zW2G&)?)l{EcKVINdSURnUG1YTxvPOK!{Ph;_nc)VqRQUHy9on5viP9$c&2|%8OmT( z@2Ulp?ofGn?C1S=u$4Skb}+%)^Z3Yzy}Iimd2lrfmTsJA%)Yq~Gep=^G4nw_FFfEh z&&uDmoY9{$sc*IT9OQO#Cj+3L+E5C>?g)oE!p|$Gw;EP8?SK33O}&A9dzo^JD>Ycj z-FySC-(pNPoZ6~N03#wvjx((0+Z_F)qzsqI*<;jzx$ga>JJUT}+ire4t1V&M8vQ>B z$gs#gt<6noGbNu_D`p;H#`7M+-5-UD!j>Bw){oHrPfgs8m)VT^ETwmBv@X|IRxU|3 zr#umAQV6wFRFBB}W47=*6)j@*a{sT&CWs%jqJjOHylYWwB+%_gM$ZYc9P;eg8BA(e zF^c0cA9-+2a%iNnTVKZ&Sv_A@icdx^{EFVl&GL4X@c42~uOrFD>3qsi_}K>ZqQm4! z+mfcGpFnikCLJbc44)oUj`Jj0q{P{My6}NgzfDg+;gnZr&rH{7Coz1M z)~LJ%ox9*Py!RkrK$tiHv!?67rjqi0_?4R2V%1$^d=&J+4o7jH#+NzVd&9o$NFJFUeNQuZy7|NnR*OY3rM;#3FbM?}z>EcOg6ub_}L@}{U zdjs5xeF@H+C<2mx-)G-=7rllZN(TVXG>_WR`rHN;E%2sL^*YA>naj`6sQ1faQ*{2l z!hbxsC$zl}A0&SIN|eY0h}_i&SDI}o{{i{k8KphtqdDn&$bRv1^(VBm3FoUIgDO^L z-{_33?x^R|$zVN!0Vy+Gebj<=?uoaw$le#fL4g2~QA5b$qcbVpIT`(CN?p(c2H!r3 zFga>+ZNrYrrv*A#i~%CRUbL`!;?ZhosI&t123=ZpxEy?{4WXzP_t8vS^R=qPe%lB> zUtW=X&tDxF1=ypZOV{=mVULd-qO0GH?5DQ{1M+Ae&!`%Y0PUBi_>SnkhV!aQ(9K1Ej;a)omUA zV-AkYFyMX#GIEs};!E|cQpo5#+I~HMv;{BcD)94K=oXE2jaa&(^GjEpU}~_ByIjuA zPPmoZpf(jg)B3bD@s}icD;avmZ~AdRU-hz8=XA+$s3@S~Ska~NAT0oC>NyGwxG5AE zA6}t!Bx{o|fm!a*k8{!KN?I$;V6Jp{GELpWKt!VNsH^K8tRVr7ktNF%OmLk{6y|#E z&m$@2RJmBKsHNd5s;4fx`C|&8_G?sX-du~G7L`cS6>rDQ_MK?CsL1f<=~*bP2~g+$ z_&b;Al_h3=Q>`J(@V?dCT7dWv7!5aA|vO8TVGT@?p`UV zRg)>vp1-`1+~fmTV)5O7Clz$9ZNQ)+Dv}3QuZdu)D+fq(&VG9!n?1{m9cLJaGddG0 zaHl}?L*&ZXaa2`T6w~Wqs;t*nKM*AsqhzTAGyzw+B4?ozgYf~9i@S66pc<9BmN`{} zj4!o~gmqSgsaSGw{2at8Ll}BXv!K zo)E$)a6wA~9@H8VTnj3p$?k}ohGWC9;;=2^WS{*`0WoV7RYg3K0S37R9?K2Cqc`42 z@NX#uWQxTw&cYa!`m`ujdh$aOvWUo-$^Up|-dqfHq>)lGppbkmOQNCufb7V{JZ_ ztNBnDO>drm`Wr8NATOX5)Qre8a7qTu0Um!_@5}Tceg2zNY}24lm)=R5AFA5;7mR;9 zT#Y-Z$4qCfJJWJ8&p7xcv!FL;sVcuzn4+@8y-e6%^5(agOEIj-&ZPE2?S*Q(%V?kB zoqrTCBu-?d+*Wyf!*lzJJ+uAB;3L@4Q z*rDckLo&Es(L5`#o6{Yf9-%*eJM54!Qk?I*ill$Dk@`+B*-q5m`Xf}rQegIbWye4! z^JpW;f$3|5g@xnwaLc8BQ*Oj#LM_6(f8k~)3wa@1tUcyS9{p%iJ+~T(vUo*%&UL)x zUf=2Ko9HSP)KA&CxpxeePA^lR(Kc^r@~x*vpV4+56OO(NG`Kx|tJD)5XVgIXTzI)F zAgTMEH~(OV>*{NQ8k_1WbQXpt8CHA{&eh%zkZ$|anrZ+L#<|pGN~@$nALgth(TT@| zf~8uv^Q!2ZdVe+Hlz96QZDIw;P@9kT+Ih} zxFua2RF~`=Av62>Q!wb>bj57_B6@ze{oK>@k^THdpJ#+H7WQ!4MH#)Vi->gO;Q{d_ z%rVULh!b}H3_MlHRV+!RIMeaR5fwfp@jESGir%vF*zhS0H&sRk_=u)tDYpw96WqSi z*^@#vb?_lw@7Wqry*O9upg)Xie|PqHfKjc*RFyPj`VGmvQd+xUt;WX=9ivvpQH6tW zu$1PSUGCZu!a8$VuY)Jj;w3yf}wAf<}l3ZkUT;-fw=Z%GW16_`COpsQq?#sfxG* z0PMdK+xPR7)@yLW=59M{^TX$y;mN0G9-_siP$ht>^Zmz|3xnS$DHATOS*H)?OLXjmqrzst_?Bf_CAS} zSJG|lMdpd|`Cx^Hs}nWnc{ee#JOC}lcM*OtSXE_e2lSo?{<7m95@9}|)5Xs>1yIJ~ zLjXm9ygyj~VWJ5Q3ip3nJH7?7Se^+mXqPvxknXqZ65N)G>>xS&EdZJOti0G7$HXeoD)i0aQ#mE@n7q72gQ7yA47Qgl>Z z{Wp>o%=b;*n%53CW;R$el0_n+?~*(AyrdG{niP=A6_vcL3j;mmKd$viuC#GD57X+- zX_Gq$ZwM>}v+XjixBnTdOHPMA9<6Y2teo{hHubCV+OPi6(^P9Q@7#N8uj@T|C zMYs+St^2R{-6G%Wg@_soLg^T!wT0`7NINA>}=Q?mAELuFbgXtXmAc%@7>BdO1@L z*|khVo{ppk2pYg%A}Q$F-+yL{tX0jj|N24e;ODH{fC=HxarB{wM;=<|4{>KxJPvaR zC7*h@$kx}7?V7q^#FIVC&CRc#4%{GsC%ttx)5KpMW)y()O=os8G1?z8fg$EcT`WCH zj|-l}LuErr{J?iLFya6f9}_RWhXuZ@_^>e+LhFz+mJh%~uUFnkSzA;28QsRMylFm* z{y7K?)lIgf>6+qf)*g3(42_>Jmzx!oqo$ia0%kau^5}7V0Jg7?zO8`B;vxY|Da*5q zWe5mNY5tm0LM7LYUIXIWWv|o6uoMX16;p^Phu`XN5Z{51yzz%)>);pp&mUOWa$V2~qd~ zb`<3zA5r7nZT(`JLdCxSB)CTsIGxWQsks>P{))QhkfKfJcH*!I6*PNic`!h+` z%3f0{9ecAG!-ESt;k}kr3zrXSZb`DW9iMbQEiErp*{qi)6&k|}+VW(LtS4Rt456qW zmQF9pi*#>xQZOgD{ZaaQH(prSG!)dKj`}n1lzc_!`>q6*a5+HqAPSHWNN-%tF&lhI zRcb~-==}E2ql+Sn#e}uxbMDkMmoI-ke%)$0lppT7zZ3bm*jh*JyCG9;89BI(n%BE) zXm}a%q(GZu;-RSfjN=6PQ|!Q(XX;mPUi8bQ${Sm9hr`6q!RL(% z)Zjxd5y(LkCa>k4NAN|O->B3e+KSpXSHexU^{V?Z4LASoQF+0x%!mf5T-;i;;PzD4 zqKY%59kHbLWTEEQ@ofYke-1#(?PzuifQ-x4&c3 z_h?@Tvtu*M@rprB93kQ}@Wnn=^!L`qw;!KZVm1p$3wgpaJss!0cOIkCE>l-7S4Vy- znEy&;QRMjS8W1WIQp*d?js4RH<(Yn2(Z_#jpmR%fPj56P zE{$);jPW;U<=+CD<@>J9Hf|w%f&#!Tw+H{iJO&dq9A&DJiBE+W5-VgvB1PoV2zjo( z%EKs6Q^i36&!JbCmSepuY8vJik|ozo5!L+d?XjUgmIbDB(K1|UC&(C*=3%_o)^+K+ zyBUQ{X_v5H%5;%&;y7<#@Z5J4B5G*)OCI>Tzbmz1I~427i$Mzyp|Ftv&D_{$57%v} zlbZr!bu>EJ1zK<@Yu%L{_d6zft1@dnX!+P4PiXP70jwnGjTOA_Q8#*AqA8fn50MB- zpXSkS5lc&Xg#kAe4VIMUtoSmH?M| zxt7?+c`yNGJD!KAEDFHvI(8%1-#}Y`8+uP=Pl0u& z`)5AfVs_K};Pb^7U&&gSG z6z>)CE1N-fq|VFSHg>Dkb{nt=v&+BsC(+tlr>qj!rSTPQG^x zd*dUe7Z{lN$jtwOd_8E|B6^6cDm3W1FddBgt%X==PDp#1=F z&tF!x{!61v5u0;5HkSwo;HW(TQO4)Vqb85(K&DXS#wLN|I6PJM!P*(0+JAQ?+hVH z>^%8&1<`qS-2-Ub)+CQ@shY^YTTQBIl}#|r^KX68{a$I#Aa=;eVyB7;&h~BStq;G$ z{D|u3<7lMmZ9ccYTZqOrGF$PCpWQX zfAZEihO_{Y*O-SgWuV}n!{>X-yRxxlo>gm09r(RJ2VbF!(UXIFM+k3|rW5PF z+c(KU^Y*137}Z6}`q;cQco2^>j=0K>+iVvXN=jm3swV^ItuD{EUfK@sdb&%g#aQXc zT6K{RzK_4_PsDZ#)_Ug2H7UtOTW33|$#BsBk%?jL{iK_bN2r^_Cb|?!oZ z@MQeSd)>u-$=9&cM|BIjl0}z;9e&2@~I{)u4ef(+Gu&L1hirppDY0vW|xEA9XSZ4HZ8mgjVa^^zsbGy60me zG@PNc;1a!9`MLwcZ6R8BCB*OCV)}1GlOh?9sK+N_cd(l`jsbBDULPtkgsh%TDp zQUCklE^85toJD8Fwyl#xF5PZ9Cj{fPZsER0FDjiTZv9F1G6dW3Vj@glJQFe_n4BUd z3(C^w2z<`@B&L@L_QBBW>j3T(Dz$v4aYLkO7^m|+l*#+3#M2$N-4>^cU-)$wrS*&Y z&yyL~L+EJuP=?oU_oFrCYjjW-3oGFY=|l6e1rc;v;`}<26Vh+M4^5(Ki75kJudlw7 zsH@RPc^A<=?*ViKL;;_`stcc=r*PWsz7h`9A#SEPs193I#2k#?Seyo=t=za51kL8H=%YhUQ7!Gn@%O0r7;b(L}y->d&r>U zKdcYQb%Atl2Kj33PA&C;^&OhlpSX;gW`gxs8${Joywa}ui%I?cwkbl@82rI0nq~fB z%Ox0E1oc{ZNYG1GiyvVHHF4M@n)$@(%4&^MHpWqTY>Xxzno{x}FY~CMji@V#WQiA! z(=}WlGBV-Oi3i4IqFnobX^AN3qHJOl8olFi*;3OKk|nK3V(o+W=vg4kI9-)D$R&VJqysu-j3> z21)jmMSovGJ%EAylw4loEfbJz*4$8Qk+denqO{P;2e1O#!WU8w;dB1+7>Z~n-J9iK z|KXx^7-S{k!D}6CG%OWmCs;J}pZi=C)ia6O+W3*w#T-2x##tOX+C>(%;I-hb>OJrC zrO%L6LvSwtFP8c#`JtJkj*}br=s*7~i6uu(?w1qa>&zi7I5q zQyhJUu90Ff3FE!|O@~Es8weXEGiH0k{9r{%;zXZ$_CX<6GLBGCh0JR+EQh;2ceUl> z8do(o5{g!8U4AUf9H6qWsR6^s_}m8AV{z}M8rLMACfF#iKz>53t-&&O091zZ$| zv@QGuMn%^cB59%oJg#L-oj!GcANp)^MU?Sfi%r5-;FA95Wt)X}on$~H&T9O^2^(0S z+&Qu&zc_a)kaX0m`r#P0zlLEQPK2o0uoPsNLC$K@c(1V+LW@UipN~LL*&rIlAa6Dk zKT^D|)u0l|ApNh9bq!+4nq_QQqU)sIT)C?N9svZ%vNbWaSjOL_ETqxJbSKwXn;m!^ z(`MVXX-ynhl@DKszS7awvMBtj9=x1)zo=4p3g7O2D=LfD@O8hDh%L)@e8HIQ8&=R- z2?QZs?5dQlAre!2$rg#y(T4^N{dh_)+3SwbB7WVk=JBH3RcWPwS)u9~2WQIuFWIxa%sh_KoYY4ID*A2wkvNeh+Xh z60>yC+k|&Hu{g8D6@QJAnaDtMVFYwW+T4AXeO`0GbHE(sNF8f?W#m_c%c5mCIsE<( z<`slqoqoBHflc;_1~!~UBA*^+Lc=W({2pDH1Al0aeTb_-gu~eq57o9|nfB?*R!x`H zDa#*0;Zlgh;uFm|?;z|9KBG=&;z>At?2=)V{BI?j8kS+xXN{+a6{2D*Q42nq=j4a~ zVf9vZB)P;AN&Q<))$M4fxc2y8y`%qryyA|*>zlK~Y(_d{Ku9|+v}l`ZbF~nYp74o~ zRtk2A0ZO0|(RVt69&9FBFsxGy40@OO|&bTKp_xw-~V*V|L>0J7IQwli%Lqs&mqqN2IRAtv7BW}T#H64NZhid50XgrZrgB_Q?PMVDa;L<>JZMq;)?3ww)$Eaa5DiIHL91x!+Rip+|A)NG5P zd6Y)+X4}iy+=FhrqQ##Jpg-A_jOkf2%|LB11LQh^c<-dKBoMCue_Fc59LpE|E54gI zBqiM#()PEfXm>y9Q|bo))Qbq5i(n+)-SAJMp~Y@27jZ5F+`8pGKMs4s6U4FFeCBdE zhznsLmqLPxPdeyNC0XKz1n&W)k9Is{T{|2?=c2=XFZ2KUZU5iLg8%+2#~^u!N!dJD z;2oyZ_81fE7F=%jF0nk3OfsgJ{cL0AH1$rD4`4aj55>WRk+BR>|EBJ=E|&jm^++E` z;eCm#V50-2WtW1Xe}(f>ViOl7uo8K%3*=?A;DF;xuZ{E%Pjq*(R|={Ugwap}k-g)8 zf8GASeXh{f?>I`-GWq=iju{qF%Da?WUDI8-jVg@1Ii&`y9=GL`eNi&Ml(Ro$2Vw=9 zMaC3+JjGGB(n1{~o*EvKfvOTHOh3dkXVk)C@tq$?oGKSIP_vg!xxAHNJ$bFuuVCrX zr%?Cr5&2Und7+VAUMLyug29K`st#rL(n9tpiKSn!rnsvAiNj|T+*(BE!)F%T?pNLa z_ihnKJUL*bh~`3UYbAZf(AO1nVWie^@?bqeybhRt7F4B}e~N9uv>MrhHGzjd_pBjS z<%SCgHu;B2mjWfP>Gg$o2eR8GR>$R&Wb;OLu^8l7626Q!?~T! zh@qFD`X5r*zo)bR@$)C!YOF_~{@k+stpMHh+kguiE*sR*xb{`9*lqfc3y-F@4A-Z` z{7nzlNf@7^#?AWlM?@uF;;9iSN!)kcWs?_?f+^aB8swv#ZFNNZ^qE1>CpE|EkcShUb1hg!)#yW2RDr`Hqmai0hSRak^2@*~U+ zb#52!%3IIE=0n?W&Ztgl|5cFKM&J!e-8^)gVkJnabI?zcC)!CB^{`DXF!mlENEU1F z-qd|ew$-#Eiu``##m`>akn;>v9gqM*ir6gHM1v2@2nRl0o$x#8*T0gwp7dL`y_!)=YJ6*_2_>NrU>%FGAF(O9NRX$>spQD;b>dM z=TUy1OH%{s^&QuO7Ww2?69ygl;G^lU?GOK+X@WUnjrHj7Vkw^!Yn+d5?-$8YftMRA zQ6Xv!ZC)2}mjN}uqmH!#51$9n1T6yf{9B)OZ0M6Hvv@V*o$uw+62ElN`sEEUEf>Yf z@`r%eo0Yo7Z`|jI5Dq-&_(b+h-rA5=nGzH$Zb&9<+D9T^)k0Y?H?jW>A}E#OgXUes zm+OzPBH3QQ;b$mLP>C*O&NEKe?0chdpAI2yyu*~r!;gw9P$>}A2r*qbSk)wc{ibz0 z;=$|w!fC;khp%Rw?7wc zHaNX>YyQ!SLQ_QcD<|c@vWNvQZzyRE*g5%W-tC$O6Oz?*z-iz~R(gly%Zbg*!D&YM)MtE&i{CoowIJSu7D#nbyQ{>N{cbA; zYzeE;D`SO7z96hg+*mgfN;B23vF134LL&j676CQ!b12$OwT#gt)2N<*?@wjz(}?fq ze+V)m@f4*^Lryxdg@EC`w{G8l%wukb2T5Fqr^tkF3ndbZ$CO+ zNI#)s-SQ2X1DK)Aw9ScnR;7Z1FboaG_m}wD+jdF|EzmQ+f(H)^PNH+W8+8N&Vrqir zOw`&h_DPTZi~6SBpq~=6a4^P&X$M3Y<4~{1vU@6AD#K?+Ui0(r-wzrzSAH=sz9J;& zV0*H#Hu;KB8{uVNv6W~%1|v5DPyYCzvj{kilzkMOwU%hER@~EPpKY6us_NaiqU+ws z8@=BR6O4A@^L$ZcP>_Ij*ycDMpHV_Ke?Oqe8|D9Ih>+GV@Z_w%5v1x5U3Uc#b8 z`EBiEC3s0#XiC0S6rcvmUdplrUOR^Ju=tPhe@oA;qv(kuAEZkBiSix8=-14o6BIp{ zJ42>=!XglD>%O1=F7t(1^%8~oGX(V$bFysS;`H%0!PUif4g2_nAq|Hvo0+HnT@~`6`@AfBBcv4mTB#JPr;b_aV z-QC74BB4SDN}6Cqa6U1anz^n)J5ipadOk1MZ{C?wEb1OWu5mYp$2Hr<}LKi!L$;2qk zYrbg9+c?G8G2Y|MKbh89AuLu&LhJ=0A4 zl{XMS%+pkSJ7FWXBA3d7tKEiDNBTvIR^8Qs%uV78yZ@2OX zijyw!*bAv;qDpB}JLcLm&|kivKuZ@hh92W)*~Il>)YI>k%eTJu>{<{fM1|jz!q{Hu za^4|O`qMG4Ix{_y@C`rM;ZNiGVUQ;e9nmG+5Q4bL7KHnR6AeiE+Lth8Z+$lf^g|{e z_E+fe(goZs(OH%?pMHB70b?!ZYE;s%mYJwZeM>EK8VBkIx$(u>l45mtFf+3ZvSAKXE#^z3x>?=DX(%p6S*ek zGZ-2jBYtbY2)@~xvWZt(j~!~u`_Swa|E+m{L6kzEU!~kncf_SubckCSls7NoIR|&w zcOs(VY(9@<0J~D4()#8|~WZ*S^`PHX-2WL`ek>x2lP& zo=@EYi`l(7755~~mA;Lu>8ByzH9d?|4r9&)icw;MMGN(dIpJH?{RvawG{GJ*56(}# zmZJF7#4`h~fBM#+4$?L|TG)Q8E|KZ+V7JZ$Ob0yDWXoV%^h|8>a4zRTvrgKxoiyOzhZ8Epr=lvAf_2c`@J*a}g*vjJa4%N(ne z{KjjPX4C!vzkdtb{>&jcAryU?>93!(*3fi&dHObl_{s4*y)Q$*C`_(tw;SL^TAbqr zUXPO>kFtuIO&OPD%zh*^YrFA;f)SImyisefl<5I}3|bdmxdTZk5<&PIzPNFFblxms z6F`5Hz;Q!OC1ChsytkaGSG(xDxiRlOhoZ~)uzJ1e)1R1M6r?|j^M%Vib*tkil{VB= z98}=mF6EImr!3vv+YNd#=s2dD8pbW}1%F?At07^ql-|7lN_kc7$?W9$T1*M;-Gxc_ zB?;do0eBsUHB3WFm1VPma&ibSm=il*V=i?at|$}EdgGyU@tHyWoyc;%0yB1i=zS&D z|MJcBA>gQl{w%i^60kC{3Xl@j8MEF0WUvKZ~DAX}3!|W5t()HLWjro)@Biy?L31 zs(m}xS$X@t9P(Ysc+AK(Jw&1TS6H zD0=QtvwZsXMm}!61DA^g?4iGRHTC>>sDmEqrPuXmdB;WJghx1N@wsa0#_d%*m}Zt1 z^0PeeQzjv#cdv5p{nRJ^!Mki!p2q$2E;lw)qX{e}epf`ikD1>IJXk*89i7~r^|hli z-36M89+Q=5rn>vQJ1jw&_ML==zWuS;xFgD)AC^Q4Xv|4WwyvVLgg%7QG%T6tdJMQI zobd=(WcdHSMWz_gf@0F#1BH(v5~~GiuJ`?K9DJnbl(F5Y^ z`3D%s2!ptIjP%PN_oY43Oiqfp8iVaub|NAR<4+dS*Qr?hd@-2;w>(kGC-!Ypb)?Kh z3>B*b%8dk0pI(gO+_rwF60lJck5XwGvN?H?7;Ggb_UR7ubkZHW=i!yc{x@%$lYY07 z7k{KrVjte9=KNk$Uikyk!zv1@EI4fbZd(o%&4(`%CxVx{M z2@?>s*pB$wlr_#~#$xCu%z*n=xs2URS0k|Z=P_~v?jhh=xD6jY;|p>Py8fo!7e(WB zd)w@6LSI(;J$aq_#i*W5NI$WW+3_wLzuOeGT)*-InR!^c&;GsU4eA5zP zQRd1g(b}^_oDV34Y(Mk}Zb_|e>S%q~Z3spV-#!^mpp~HP`y7TC1ex480(+H|fu!K@ z`@rECMXGoX%!ii#RCtRMYe~Qh@NuZsvzc znp*wRJUB%(c)2s3$XP*=swSD7*#9b+RLavxz-*c|jcqvRKF7mieXl)8y;&p+PY zvsz?QCFoB!HHl(t^ix8 zw1CGk!CdmiJ%_X-QHafu)bT?q_q8sN)T{Eg)5>H+M67L` z7GPqB(8{lgJHq|0mLck21~J#nzf=-rG}tmk!I->)8cZ%ixj*JWfv`0I(TW~v8TNgJ6&TJvobpH9fGmU` z%tI#ordUl^a^#Q+Vwrrnl9ZO0?XK*iPlDalBxXbd7q3Q2kdn+FS)fv~NFSgfGFS)L z3?Wn92b$Aw*hyFT?R~5IxrN~{jO_dK5QjZO?MCstVh-&^li=kLlO#8;R^}i9MQYEb zUBLa>Z(I-XHxUFNZUHx4c^cSC_By}hxU9c9J0FQC#K~d#ZfJD|de95M$w?pm?F${CLdQF?yJy63YOF^950^ zTnLm@aACi0dzD4=N&FYproV}MTqrVpR*a4(f-r(cU3$eK!sh2x>R^ozhK)MOnLNiN z$3vPkWyLk7^m^_xP>G-Qa*aD}iMx07=^^#|TFHw3=*Xz~oL=;{X#3;~p{h>_^q=_` z7nItf$Gi_rTsj$%!3yR4J3lA89ofZRx1|FkAr70reTx@+5uB};`J;)3kDYy1JuaPRxdV8x2if~4rx@@1-i`_F&FH|mvfossvX|55*yR3d_+T&2E9X)!m5KQ z>3e_b=2TM+^tpXe4?avLx9nVOtHjJsvFQbp4mU#{H zgkJMkAHVBNxfmM!V(JrdjSnrZ9)r?~^+7n!oyio}sO6#y8kBZ_ipLmJX&fx^+dom* zV5+0M>^iqCOFOZ4A;)@pkjYn%m%pg-{sIaK-mNsQxzQ-uWAt!-}-G2D=0rZ(FdGo zmH{(P36cw}AIpW1Jmz2pNwlT~`uAh3#LR6Hwbx)^40kU83w@}LR;G&^=4sJ30j5zFTn{%mrjHPpdAG7u2#)&^}gIEr=FVb#wc+gFJ0B=w!uiq%wE47ZBE zDuLoMWW7u5i+l+*x`_7-5FUnIdV=>W7BtLUWY*0>pNKA4*l{q_-D=XNd)z?nQUsV> z@8Smi>U#nrE*YNID=F18Dtl7b#ptuO$rB6M35J87p)c8|Ylj3&1f1+G)KVq;MK5is zKJ#uFPI4_ZIf+z)cHR$i+#i+w_I>BK_DX#DLRxjCknY?>Oq}8~+2;ukd@&bP8(x<5suEp-fs7I*#MrL~pC}8|Oke6LvlVP1R>@ zrqAkp3W1i-q)VMRx9zlXpS+|g)$5nhFW+8sMhwU^u3X~2FEXj5nHHsi_sRtBvfP=E z9k={aFR^vgU;Fw_c7iL(s=0cyhU>(`nV)*qRi(p={s(-VWi|YR$IY&-qWP&DCx5%> zd$Ja7$0}wqy*g%0677fIa;jl3B7NvsIfq5cijXMi<#oTtlSiHCkHym8r<%onD&_ez z%K06H^sPz=y{*$>_$;ZBm|)p6*)YvCEYh|G@Ab_yZf&w0GM(63!;ikTZ9DM7=1mSZ~HGMCFv?|qOIcZ+(~v5%dlEXpX1I5_QO70$LL0%KuK zE)-?w9G)pu*V`yeqIKCbjBqNNmQTB?ud>&9y8)|s5-usGass%}xAQU)s};yVrB!q(QXT?sH$Mgo($4#`J75Y+nSbvtxfF@#J0tF{<}@T z(;!m3`vb%gknu0lG|#4|6oZ6U9@g?b$bmYskSt217u%%0f}K}ym)OJ|%rG6hD_M^U z?0fl+-F}9%M%Fm&kn<8R$RMpKlTG~79XC3T2ZI~_53b(ADeC`=7ZwrtN-8NO64E6| zmmt!OfHX)+=K@QIfOL0vEFs+`QcHKUbmuO$4{{ohso%25Dm2mfKZr>NS zff|}g_E&~xZT10@5W~GZGx$i5Z+sul$lpQrqx(0AQW%t<9I^EbD{3~*XIe#jy6X=s zN!<9K5F@ULL<|&tN53JA|BdjLTO*4M!D{D+#KY86UkdwO2ZRWVp3be|d?M0t=jF#w zvt*OfFPORCsZJltQEF*0+&;3FZ0MR53?qmHl^1tP5ToP0?YueL%@JAiiOqxjf;|kF z1t08)>8qyyUBQlhhc|XFvT)8HjHoxYVD~=)g)63VK~bAlDV4h!9x?k<*7BcCVew>e8uWre`>YZdBLL^Gi<7=ez-t#w+KG?$&4H>R&z}F;Qm=#u+*EoM;>F`pHtkiy zC&sp=v$7A0j@^a`rN>$Q^1T>UL~IN1w03$ol1z7vUo>GSG$+yir=q8!K(5ftT;=}p zjW7sWpa;rT5Z^}M*P!2C9Opz{n0CLMgm~FvU5X>w^4|d z&|b<$#9BYVS zJJx?k)5Qdzd{Hzu?7ER})0o*39;nI2{Ut9%N`C^^n|eG%yMwL#5s48$6#5@&LWDI7 zQ0lEno)#aqG(@}tdXmqbz|p(csn`6-xBOVg2HkZKuvqmvY+5W4_fG!E0szV$sb)mG zBK${PnIqJ9r>1tTy8_OWPseNo>MYt8e`^5+zMZoYrQareg29mF*0}xjtq3+tFd6Ug zY`7AJ?lEvP6U>5Xs_;Ls+$ROtZsAZ$TiEB)x1%Wu4m zdu8akaIP)P-*j8luaKgCxmx4BwopvTNEyY|TxB?L=w zko!M}D<+Io%J=XZtZ)(zUggfSEF`R_3Yw(8u8O_^U2$%#*nYd%Ph^4Ugnp7eMI9Ss za>J@@yZI(`5!OdV^so`&A!)2c^<=MTj7 zfb$+eBMdVsZ$65^*Yt-=YYNdgRWstQ1ur({l|}?GcbI;tpE!(O=HSkNRn(c34(}^l zUCC>KzJ)fj;d7`&v=+Et`WL$b|fd?zW-^y$vr!3~{%9we9WK8#sJoY@uB?`hSl477`H6#v7%*`CS^D&wiKRST`<bKX%KvO5p z5?-J20vbKdVPdl4Snao%P-hCQbOBh?nGDU`Om411-Swg+mhMFn>l*vkx4p^UK?chz z7W=uZ^rbJolA-HbsWE>?E$jJ|?o$5V8;xs$`#Ip}e_wuc8^&B(DT747xR|0)T|X@0 z#r}#vEMJ)wtRZ;cFkYYdS5tOWbsSgK#np0CL9$;&x^lS$N$09`xcJNYsjprGKQn%w z83yhi^xz;RLBGX$qjr`x(4SwF{B*PVe9E>q81TU)LjF2}W;BNS2Kpim6HL;yYaf$x z-ucRXttNs@I}&}lp9d}M&pWm%9yOi5aEw^G`z`M@`Wmg>?Zl2<@XkSqy=|A8WP9x| zCCpD1bcwO)C1%~T>D5o4S}ZRSKI+)H6n{lBZ6G@d+9nUm#Az8EMQ3M?1Lt5+9b4~y zhNBtg`hrGFF`yEcJbG%}io`hjt}CB|pUH?D;hHvPHgW>?;|zgqL(ioTJ~vd(P>`#g z1Hc-wzC;9tJRFuO_`So7AD8f*&TT)^V+WH2v_`dnw&I87>2ozi{(B2LvBX$FqtcNQ z)Y@s~Xg?4~bTb$>_i7^nGvsQZ&%D+`wJ9~>xz@S_k1+g`?YkHI6a%8acZlPi?*|2Be55O94%&r7dpPfi;~nlZrH#^iM6dN}UD74HA-UD6uZiAx@^t1JkIE#8|uTOu|>>Y^-4g77} zys-$K+00PKYoMCyF;n3iKA-4)FXna<5a2F3V75(gR*0>)8^|A6es)lMn6wkDn;l2w z89Ce;wK}EeGP}cxCrwSn$nWOc^zp4san2Zz}~jKyD>{83)-bdlaX_tLci{3rN>ue`4pOmtfX z;Ycmmm`u-tQ(djTLA(Ze+AREo48tIsRsis8v*wLIp|))SJkdwzt*F}u1QyvibEig1 z33z?C+ql);$4rwk;Z8~(rM#+yisjzalsnuT*R5|rdZ{(!`8daamMfk5f}nxlcJCo)UY%pz^v$T{6?RO|qf{ROdO0T% zhKU7@pFv+XO`Sq1JEA6e|Nkt2|9-t$(x>Ploo|1H6PU(!f8qTe7M|VbjOz2)zNW+D zD>}+O+eu<|<>_CW`M(zg0pl~~QOyR)W*sw&jXtDrk)})THvRAYpc`Z9%YNJRuslp7 z(jd+7XRbll_J^B((>XLAJKPqQ?C4kbta$qOpyjr50SCn!zv@i}>uSXnPu|lFOHwM- zBrH~5C7L-d)~6-N^{i_$ejkk}8@~8dVR*dqq(P$eU%EcKH&|Ym718xglas*M&u@1m zzZ&hzt(GCx!X-cbYA%U^I=>+d6b5IO)J*667H9eIHkYA3T6sw_$#i)S0kZrF52 z#qD||Jk=qh+NTwx?~pqliq_;Bc%B2Nq)C!O~N-Md!&70;yw;%tEeJkeX|@4FRVT|1*R zDBlyCR`&NR{=I+<%A=2YJ4NJG)<7K&b#3hnC1bBAkC$PH+@mz`Ini}!{&t5ei8{qI zD)7Ov0zv%vpPyZ7C-+ln$C{10LDnu~5$_n{|FL8hWqwl!fo_==$HRIDyEU66&eB4m zD=9*)=TL%?RFV}lQKU;#oT(Z`*-N@-uPDsBqz%83|8@^Xi@H%6HvIh#AWuo9UUNHE zvA80quh9{r7wf0KTcDSJ&l^|3NhQ@GRCVFUkf2MU&0!(ysSQ2yak!Uxzy7mK;I;Ug z89yx4Px*gPr&+R+d*x2;Fz!j=2Mzv3znR$m99=>Y`2;X%mR8P}fBtbEE5`H!S8-n3 zr$iUDAD@{vLq4hfZ0(Et40#56cKJ!gcsnF7P0OcXQKbTPY`gpA9GAl~FH;4f#g94# zq-7aU7QKD=!F@bn7yhYZC_lwZeC*887U-h{{;+y5_9tXutwhQcvkd?D15I0sT~tkn z0yM+OH@4d6vGrE@w;MLx3?Y|A_zN#@ss~)>*{LZ}1zXx;3}e}Prh);^x5p*s2eHuc z?^K(W@ve)+foz*OKib1lwIWsW-S8=s#ovkiHYZIhMKvP}hC2u8RAZ8Fw|Wvs@pPdi zVJfeR@TfMsOf3WLf?fr?g_Vm6t@o1~f41FH*!2pzO zlNCig`o_Z0DVp?yQv_1mRP)Uyl<_&;Wly%RA4-=*)-p2 zS;|UKlJsaOnv$HBSi2v3OeU(nUN2tdavNl>KH2!X^o2rBzh9%FPGBeDkd4x}pQ0sQ zK--4bW&T>=)*>bYo8@v$XwztE=a4S0eCY0kd?@3+IG!tUJT!92z(p3(JkdOr_WL6N zgVLa*YckUbF4j<^TZEmXVPKd%(3++r@)YrTBsS#8>aF+Aak&hO-W_Hn-Nw0R)rvWuve462 zMg74yDbaT%5nKQg>f2p?ul{-dt2FD~y__8~@ zD=&6L?wiUl+^8dW(eLj)yX&nUz2>=-dQBeNRg7!tu2s>J-*YsUi!8-wMx6ZCb^Pv0fs*phMi%6-Eo?|=j^MAQo_XV7FsIPS1oljnTGkc@>6QW*jy+V3%kv+ zfB#(Q*6k^Co2a_eZE$)uva;!Z5s`LuIbnM}?YdIUsjCf1!2w?1gHO?* zY^TZQ=oGaOyY2GnRlx(AOB9yZ?y3{OgINNA4}#+r%5;g zWEoJ3JDlX~ADK*siOu_m_P$))yMK}nqhX$*mJ@l^3l`UJwXxJwF>L1=f;5n;A%^i4 zu>PfHh8^|Y0Y0%-PPljddGO(UwR2w+QQSClG!P4-TFdLb(IH>HX_fmc|9|jR-aF?~ zzWd!5))q9=qUUJiNtE%IFXl92Lum}g;w4LoGHrU<& zgmEEG8{VxO#vPVb9J%)Lp^xVQy4tPK2-;-Oa0-UUb||DGe(!3@WyG;5T zqr!V!6u#fmO%~&nKwXCI`?u;W88zN|285H|Nc}D zCIYV%qs3c>PjH4yzkL$&dMtm+EReLOt8$rU!C?Xw4A5u@5AF;UD}W)<`S4GC@Ea=T zsGWM80f~-)$+(t|U>z!(&ZQ^`cs)BKl?bD{3X%fi1$|bJ1%~DnDu7u!2)6^429_5w z>8DG(^@F!m3A@W;iYh*y*U=F8XMRg54#s?tA+yoN1F1 zp-&Yx8ZJ^p3YK;|*Rb7f;yzYD_}M@zWLIN+ITgee>oJ&kZDDJ%Yyye=`=Q!K<#Z|+ zmc(iX6BS`)hphQzs_n3I)pn*VdaYRtd%Khh1ffp{Yird|_jJ^bMtQjx))w4&K}V?vInsa(T`?5BpDk2aktl^S;6vq2UxQK;rVaekK*CDXK?tx)g( zJ#xZ=&om$O0Uu-*Zg&{24j1n6R{t*#syMmYG=`)3kxKWGde{m;^T^Wd(p~Fx@eEzI zQQy1$m#Vk+nIdO%R+DD=WW_?4JT_$yBuRqvTs0Pj!fGCW7%i`_+N$1cs3@2buX`7x z;dz#OrLWS;(kV`CNu+1m%zNfNDL4v6ghHldCB$U;{?}=rX@+KEKNkLnoAP+P-&BVc zTJ~Ao{3Y&=lXWMC^sTN!Yr?G(+{d0GhOHNrrSUb$vp-NgF?W*G2xeXESLGHP>2A_y zUH^p=7AirYPqv}-5rO!zL%M@J54FNmlL5euk}~?RCHlvaCwo-(Bp)xOy5?s2y=2DCKS9jPyP<+Zg2wn!qS!tPe_poFwbGE`H8b9W8F zhQxLcS=>y6d5jcVhgGbqKO|PAWh-~-1R=If(%{o(zx)x4?C84JCaGIE5&(?lehavw zYu5XX$G$xo44jbAH%I@e=rB!Sw;sEqvv@yR%RX4E4~letq6hcUPYB39$t>y4ly+cH zdEJjhOfd_td4aD{IhIa$ci<-gg&IUkyQz_g!(YXjh06KC0Q=V@XgxKAlwL2jfVIwA ziQ1rW;LEINtG)Gt7yn**`6FFy&K1nr)0*~3Q~OnYdj#9M4c71ZH~m#X8*~F3t~3P7 z$t$rZ;I;SM@_m|v@@ZWTVMI~y3u=5 zXB)tJA(RW#pintUvgVr4j%H!7ZK*rbgVw7~oxs#wT#qxSHNCg=RitmV4drw2D2|gg zyH0oRPDxT%TOUjWt2nT>Vd;?1=wH&8y~8zr78x+U#T8Z-<>9WY6vTR%2RR;gavPNZ z6rcF1LFl`^=U6Ixot&o^`9}&QFCHqxxknB4AG+yaV~eXz|GPqdd*Uyyfg$_-Uc2~A zackm@Pp3h^_veAIU9j(Zb@#AZBL0w3WYco);Yt$nC7eV)Co7p-3G%K+#x~}Nxw+BH zuu4tzx)l3YgMO7ACAWIttb-1kCNqqhs9(OXY6$8;%86f5|2>NHWrZ0re6I4?s=*~< zxH=J2b@#n~hpJ^`LbDo$U$J8PdlLw%z9#QeWShKO{Fl$RIy^(AOW$ipXJ;=i^@=rK zkuKd!5qH|wZU>t$-<%;&D1zS;(=}JRWF#K0O%%gM`73DBewBQt^TTVE4gNBtV7;oH zu68nkKFBJoTEA2^g-fCF{(>mppD#uZli;aR{%FMShNI<(d{_F4>&k*FcDnZZH0K z@Fr;1P)qy}a7&y1i6&ty6%2IJyMnW^s8ifO4YcCYAE@soF}1@9<03ey%np1@+zS$V z!oQly^X3yECE)sGBP`1F7RXYL_i&<+gzSwLklbfV6@`u=0N+#WyRxQwV;!PwFkm_qvn{rhgUikc?VSx4s)54+Qmt&? z!K7;b-f9pE#L&B!GV}BCvwPDBM-sIO%!Ut40 z>zaPZxv2Yy8}S_CxCs-HA-@QL3FvC9-`orD^9eO|g%uiNm* zd>BwSq6uMmWG?+lCnXBI&-!+zHXv*6d z7<|->gJT8uav5o8cS$=@k%dtMKG7^q!4;v>Tf3czBD(;Jg@nQh?ajQA|^D%e{9Dp<+O0y~+nP~L1_ha*nW=E$0n zUjN2#$#0FgyOMyRxOiR7>|@zcl?)60IE&T;vfW2Tc!Xk}bKGNWLt~k`H(m|@$Nw%6 z3`%KM^M4$1Qh#6_UZYvYQEcW&{?y8te{=dq?@z#SqFFIz$NrmetGDnDwlCRg+b68C zPrtBvoM)-H#Gka8%4;327H!G3kJ`*NQ#~CXj+M6~yqhk!@*9#vwf#!UB3^Qx4+m)2 z^gb7$_!cc@&fz@g%@HhBuK3vk;&-2DWzowJxoD8w(1N(!T3lAiLp%=*@zL5pC;(J| zyNp&n^NNEjsxLjZ8j_FIu49AdfDEUG7g9H;pR1(I^xxlD&Nok6)9yc{7m3TwEF`A> z)r_FErD+{yi#y+)TfO~j*7|jagzdIJ;?}rQyHnkJs&XaFe3_rrE%{pK!;i^=Bz}{h zCJ&b+>V_JdKVDUe1NjuKxQ*eui@s|r&cVa=uaACucH=}%s^|TFe)@uVl)2q!u9tMT zs`Ak&?$pB8UhyVs#`*WhBFX(1t3GbOQaL}k*+n-`uVQ3y_}e=5ze-hpv3hiExtEvV zWiobvy@%dinz9RV$g$}RMjtA5U{sW_PQ?ms3AX5-V>e_gEWJ9H?r=ohM7_i|1! z_E2+On@C<_?jz+Tz_@?XbFVXQ+?tAljp+ekY=fQblXE9WSu0zi0lBe9k{qA~;yesW zT7ULaEX!5utadYnFsI{)+IpB~P(A7?QxI4CNl0KP-%nV~y;+zjTk!rVM?;v8qc=$m zB#un*hrnmn{hV%S@l-nO$fpfsJm#L_OcL>MpZRKudeuFMBg4oO@UnBfexSIQR{W0l zQ7CUjMA@xA9h_!k4Bc z6z-F_K3k zwZuq&FblU8UF2xK6>rUa8Sr1HPhaTW5|K0BD!5}|_bi;i7JR}yCfx_fhHS#^nl|_U zF3D6Ao!HK0SS=0^qhKL<5`pGSJ!6rWHDnIdfZZhCn z3<=G+@bz3s6j2s)PgVHA${SDTaX7Z&AagO`CUzsyFjKadQ~2I(UMqk2Xu;V=a^asC zQILC`b@alJ4vsw|Fx=+ zkj7%?PRHTx9jbtOf7eD^quIucLZJOj_s0uyA$4rJ5R{1&gl%_>q+LpRiJ7x$z22Mq zOTH>5@aw^Y%a6G&C$Nu8uR`Y3osQuV{{{L&8|`00Kv*;dWujnne0B~ zNHO;kecIVGGWtR90;OBuU~J}^SKrUGeRUYRjdZOi9Vgw~;_M5`+)uR{E9_e~Nf9+R zgKvK3qMi;(N@LExZ>C@GwYn4Wu(jollYJ~2fv#RM_pDsW4}DYwp!XS4N(Ue8z_E@u zmUbNoQiS|3bvv@LNX}HA_Tf$vxhK2p)1b1>G(fiPi4W-m&r)-o09);d8wcTSrTlF~ zB;@}ZtutU-Q7PPJDOGZq5`p)w6UMT$H)af_)}2~M^Jj!#9Ft!gf~&~R%OiWgT4-sG+C z*4y!dH9YDza#m+R!ryO%0ck^_v%aGqKqk1Y#ZcFdG{SSl1m&G+d$UjC?j3ouGunG7lVqbkTkzai`6)|4yENYHm& z0>eYPv?1OL_b_D>XA&+oSlK&XhUA`{rgm9SqXBBwy5iUZ2)R_iv~X&yJO|vWRcNq-f6Ag zq%L8$JTBk)&*Qo7Di5F3q%zlP%pp2x4#B-}!|P=qX{Y<K4=7RebQEmVSZY^ppCMlE}qL^+5@!(hFMS*GK$Z%eeP*3Z@2a&TqgX zt^96#Jce0}=NF+_f>uXDGy2ac6I;5{AzfTskv0^btcH=9MB&aHuNhVFUZ|>9VwL*< z#>KbG?Ki9A)Y&HRvR1(KT?(BK<~l$Dl$3?V2HVYWdCVZ3sj}x8&j3jTvAR4u|36V8 zWlp!OGv&f;a*I#Rieu^Tv9}_u2auW>!Pl>*f|F``1#~%j?lR<`(us0oUKRnXq@HF? z9jCro*VXugo1AU0Fw4Hn-7VhVT<(|SOr7gt1Qk*0MZ=uM8P2*k7)!5d%{&iEYi)kY z2`X9&R!$<95NlW?)gjj(0Q+tbh;G{?nM#+3!p)S*x%Vu_N#K z-kRe(1J@yYnu^!^NigCXwBCOJFZ=D7_XfWZYltRR%74_~->E>EvjAWDLIqnF-kr)^ z^nEqKA0hQ|6xD5scqvby_WUuX8|m+F`>J|MpD)u=iQiQjaWsS~cl*kG#v0}mSiV=$ zxcA+z^U-BWe{`a(CbN53+ZnU$@0GvrkhJ?7PFa1quPdC3-_2&;H>Ma^&S}j(q)Q3? z8bIZYB_jH@lWKoP&0LihVYssErrjL9Z2d0M&5aBu@{t_yNH$KKHE5KaKlw+H+)~ec8+wVdE z4)zDTIcHVUxmvgZvD%YOv}+QU$YI&xLe>_kuD+mj?d@dH$lU{DXdN_9wn4q~X=2Xi z=eU~gV89~(t1otlok%msO}H!hq&-5RjbzH-M??s^73hT}5qMMB;06d1kKK2%Lth;V zRxpdXHXs#Tr;WWzy<2BK155L`Kv<>*A0JzNJG-LdfIW41s6PNP4c!)1D6ITXK_~}N zlyvNwXw2oW;EiVsu+H0LwvDv5s8?s2lOnsWg38kZ*CMBYqfI@sh|-LtamV~N0)`_r z!N$UQTik2@c;BheA9XpRYyU(&7P-Ne%_C2fuRIOj+_>RE=>h0KSK?LDvu2Rqaq|j2 zX}<;y{j84Vd!Z*yR?Lo5yd-mrXpJ-=d5S68ij4M0)Z|V&!Pow&YLwN3ls&-$tG`gk zZGT;|s+KUzcQEW1E5`DkL3DM{9z`Bz2g3dlencEIH!~Ynp@Rb2Ed3k6=>9cnlyJ$5 zPCWU!gpSq=neVCi!ygdwRYZs-3~&7RGC(=iX20!{mitvpwoQOnwOP^wf zXyN`}@=*PdEglH$-$(TPMb5Kl>b3=B0qCUx)90TpwZIJk!t-;nk8t6Cf zI8`qKfFXvXTxP3+9Pg&`I_P4eH&o$b2o=tOYuNKJgBI=7F4QwMq8ebf`3JI;?!duo z`gz-=H30tEPSQQqnnP$+FlsUIxvz5jI1D>J^b-0Ey#oA=%e~Vc$-B`gbMeK^^G3pH zAueoun?JFGRX0cr-9@i46GW4<`MRNk_saWev#MPE$8OZIx>hb2p)sP4cP|veLA@sL zznyG2`me{`m3)qr+dQ3Mw53FKYkX3IOM?zgTFvv?|Ky7kukD&OX~sSiB$+ z1v&T;rq03gEer)R<`;OiuRU$)^+d}d?{zFaq3j5euY^`X>wx8|z;?P~3*^Aa)LEF= zAvktg<3i>5P;h>tg!m_IGlVG`tMVr&-O(QKgraV}$491rk;M}`59Tkw7+F}fQhD-Z z=D~FMnmNUI&U$Jej@P2Pwt=JwMktz}*Z zZ!xe|oj-Kv(Zm0Huj3~$pwTN%s1h=PFME7nI2ncK$VnIGp#IXGpwDw8X0MF@C0B_2 z8tJEgt-!YUah*Q@&hNM(C@!8QEs26u2k>8VLwd~NF*~E__6^6NvZ1mc9fM^!*#2RD zoc$Waah#grJ*#8!MTFa0%o1^jVPF)H0uGkPmf$0LCe~D%+pKGnhi$^X-i{uHhJ|UN zz-f6)zij+)F#LTtE|fMy-4R_a~;3NMz7XciU$S)cSUJ-Z?zyV~cgU zhzkUrE}{>b-;>AUlsu;4#Yb02plp5jsb)9 ze)}OrI-k$w|FWyftTheD4<1`~8gthCx+#T&8TK`#@%wAF#Fwb|U2R}2=LRV&YE_bN z6EA*xZ!LwvJ4>AObw;Eu?bF6^+#t7L1QPuhxO_)K$$3I}+|75q&!My@I2DqqMOn!Fn34`OMv_UJKjxKZJp}5Cdc$H0I zJ$9)%rDcfpEzwEqHdi)%*jGoZJ+CUdKs6qsJOFoER6XERGi$q^I~fPiJIBds&Y7gW znx?s}+rtXWgV|COlJc_?oo^j%)ntLEmqezoc&X@`vo;Shl#`pbH7=KbL9*p{VOW(s zaznr{_;)omN6XbpjC8}tuF3>RWV4Sgt+WqBQoioeJ>-8}A`hC2fTP9Pyre>BNft6y zikIDh`gsFoOg3%Zg04#=o>V>~3YnVUfVP%HI|<}%lg{HE6|#{unptZp%9&d=B%l+T z)+RS;u!2$|?jN+mFY~-pF||}tfhW>xm+n|mUoXLjn zbpqFQfg?|p6UFbebsEAvq5|Z;Or#zjM-W^$iqW_Si61YTjpYSlrDB!&$PA4x#;H|B zra3%G%?RM=9xpmOw^H6-i$&o@5>^PZRqUU=HgkTdFE|(9QLQvrxU>jHKmm(Dd7LMn z+^Y}jRd3aUrB;U$X<@dJRIRQRv6&2hy~&2jXhRFeOF&M+apLeldxgv?_PsFqf`AVG zU7&17Hsnrd_QQi(y6s|t4Q|ls>F+LPFLLgup6DM*?2K%PKT{Sv=w=Hpo0qJ&K-Gqm zYvnY!-I2hjmYU;yL)(HT13O=QE zk1d$B2Ck&A?d?w%{!tQSk0H>n>XKhWpRxzUi=Z=gMT62*N0C1B8HP+(By|pqypSpe z4dvftp6J*AhjT+!`RPR9`H35D(HavTj>rs z0X!m}75uCNx+H>9DLT;4`wZTVAybO=e7koM&-a<04>Y@mwF%xQ4Jcv{bNV&O|8ape zR3953PJ`lR*0x(WugoBvfS{x&ZvWHYP_tdimQZISZp5N);PBr;q?Q`aomIk&Esiz{ z@P%;$;ZS-E5o|+3GoL$dMC0BD#W=35T%XA!@{Zabigs>Hu7-7$dzqdZ8yA2+v2thl z;O;6h*$3VMzftWw9^J+0VI}<6FEEry=Ckq==W%WDhbV^SUB+bKRDIX{h zvBTH|60qu`mI0|gySr^)Y>u-q z*g`z40AX5)<#KJ>slv^)f4NuMm*vx21~il(O@FR5Ond=8qG@drf1xY!A`o`9uDReJ z_Ai^vZq5l=kGHf}#V�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

_b6cs71Yn`0kUXV&_a^{ro2xXcH}o;DQ;VbF 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�@=BcU^@0ABto~V7 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�*Rsu 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 z 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
l6Lyt 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 I?05dZ01j-GkpKVy literal 0 HcmV?d00001 diff --git a/book/developers/exex/remote.md b/book/developers/exex/remote.md index a3ac9ff2e867..e0caa72f62d3 100644 --- a/book/developers/exex/remote.md +++ b/book/developers/exex/remote.md @@ -1,3 +1,490 @@ # Remote Execution Extensions -WIP +In this chapter, we will learn how to create an ExEx that emits all notifications to an external process. + +We will use [Tonic](https://github.com/hyperium/tonic) to create a gRPC server and a client. +- The server binary will have the Reth client, our ExEx and the gRPC server. +- The client binary will have the gRPC client that connects to the server. + +## Prerequisites + +See [section](https://github.com/hyperium/tonic?tab=readme-ov-file#dependencies) of the Tonic documentation +to install the required dependencies. + +## Create a new project + +Let's create a new project. Don't forget to provide the `--lib` flag to `cargo new`, +because we will have two custom binaries in this project that we will create manually. + +```console +$ cargo new --lib exex-remote +$ cd exex-remote +``` + +We will also need a bunch of dependencies. Some of them you know from the [Hello World](./hello-world.md) chapter, +but some of specific to what we need now. + +```toml +[package] +name = "remote-exex" +version = "0.1.0" +edition = "2021" + +[dependencies] +# reth +reth = { git = "https://github.com/paradigmxyz/reth.git" } +reth-exex = { git = "https://github.com/paradigmxyz/reth.git", features = ["serde"] } +reth-node-ethereum = { git = "https://github.com/paradigmxyz/reth.git"} +reth-tracing = { git = "https://github.com/paradigmxyz/reth.git" } + +# async +tokio = { version = "1", features = ["full"] } +tokio-stream = "0.1" +futures-util = "0.3" + +# grpc +tonic = "0.11" +prost = "0.12" +bincode = "1" + +# misc +eyre = "0.6" + +[build-dependencies] +tonic-build = "0.11" + +[[bin]] +name = "exex" +path = "src/exex.rs" + +[[bin]] +name = "consumer" +path = "src/consumer.rs" +``` + +We also added a build dependency for Tonic. We will use it to generate the Rust code for our +Protobuf definitions at compile time. Read more about using Tonic in the +[introductory tutorial](https://github.com/hyperium/tonic/blob/6a213e9485965db0628591e30577ed81cdaeaf2b/examples/helloworld-tutorial.md). + +Also, we now have two separate binaries: +- `exex` is the server binary that will run the ExEx and the gRPC server. +- `consumer` is the client binary that will connect to the server and receive notifications. + +### Create the Protobuf definitions + +In the root directory of your project (not `src`), create a new directory called `proto` and a file called `exex.proto`. + +We define a service called `RemoteExEx` that exposes a single method called `Subscribe`. +This method streams notifications to the client. + +
+ +A proper way to represent the notification would be to define all fields in the schema, but it goes beyond the scope +of this chapter. + +For an example of a full schema, see the [Remote ExEx](https://github.com/paradigmxyz/reth-exex-grpc/blob/22b26f7beca1c74577d28be3b3838eb352747be0/proto/exex.proto) example. + +
+ +```protobuf +syntax = "proto3"; + +package exex; + +service RemoteExEx { + rpc Subscribe(SubscribeRequest) returns (stream ExExNotification) {} +} + +message SubscribeRequest {} + +message ExExNotification { + bytes data = 1; +} +``` + +To instruct Tonic to generate the Rust code using this `.proto`, add the following lines to your `lib.rs` file: +```rust,norun,noplayground,ignore +pub mod proto { + tonic::include_proto!("exex"); +} +``` + +## ExEx and gRPC server + +We will now create the ExEx and the gRPC server in our `src/exex.rs` file. + +### gRPC server + +Let's create a minimal gRPC server that listens on the port `:10000`, and spawn it using +the [NodeBuilder](https://reth.rs/docs/reth/builder/struct.NodeBuilder.html)'s [task executor](https://reth.rs/docs/reth/tasks/struct.TaskExecutor.html). + +```rust,norun,noplayground,ignore +use remote_exex::proto::{ + self, + remote_ex_ex_server::{RemoteExEx, RemoteExExServer}, +}; +use reth_exex::ExExNotification; +use reth_node_ethereum::EthereumNode; +use reth_tracing::tracing::info; +use std::sync::Arc; +use tokio::sync::{broadcast, mpsc}; +use tokio_stream::wrappers::ReceiverStream; +use tonic::{transport::Server, Request, Response, Status}; + +struct ExExService {} + +#[tonic::async_trait] +impl RemoteExEx for ExExService { + type SubscribeStream = ReceiverStream>; + + async fn subscribe( + &self, + _request: Request, + ) -> Result, Status> { + let (_tx, rx) = mpsc::channel(1); + + Ok(Response::new(ReceiverStream::new(rx))) + } +} + +fn main() -> eyre::Result<()> { + reth::cli::Cli::parse_args().run(|builder, _| async move { + let server = Server::builder() + .add_service(RemoteExExServer::new(ExExService {})) + .serve("[::1]:10000".parse().unwrap()); + + let handle = builder.node(EthereumNode::default()).launch().await?; + + handle + .node + .task_executor + .spawn_critical("gRPC server", async move { + server.await.expect("failed to start gRPC server") + }); + + handle.wait_for_node_exit().await + }) +} +``` + +Currently, it does not send anything on the stream. +We need to create a communication channel between our future ExEx and this gRPC server +to send new `ExExNotification` on it. + +Let's create this channel in the `main` function where we will have both gRPC server and ExEx initiated, +and save the sender part (that way we will be able to create new receivers) of this channel in our gRPC server. + +```rust,norun,noplayground,ignore +// ... +use reth_exex::{ExExNotification}; + +struct ExExService { + notifications: Arc>, +} + +... + +fn main() -> eyre::Result<()> { + reth::cli::Cli::parse_args().run(|builder, _| async move { + let notifications = Arc::new(broadcast::channel(1).0); + + let server = Server::builder() + .add_service(RemoteExExServer::new(ExExService { + notifications: notifications.clone(), + })) + .serve("[::1]:10000".parse().unwrap()); + + let handle = builder + .node(EthereumNode::default()) + .launch() + .await?; + + handle + .node + .task_executor + .spawn_critical("gRPC server", async move { + server.await.expect("failed to start gRPC server") + }); + + handle.wait_for_node_exit().await + }) +} +``` + +And with that, we're ready to handle incoming notifications, serialize them with [bincode](https://docs.rs/bincode/) +and send back to the client. + +For each incoming request, we spawn a separate tokio task that will run in the background, +and then return the stream receiver to the client. + +```rust,norun,noplayground,ignore +// ... + +#[tonic::async_trait] +impl RemoteExEx for ExExService { + type SubscribeStream = ReceiverStream>; + + async fn subscribe( + &self, + _request: Request, + ) -> Result, Status> { + let (tx, rx) = mpsc::channel(1); + + let mut notifications = self.notifications.subscribe(); + tokio::spawn(async move { + while let Ok(notification) = notifications.recv().await { + let proto_notification = proto::ExExNotification { + data: bincode::serialize(¬ification).expect("failed to serialize"), + }; + tx.send(Ok(proto_notification)) + .await + .expect("failed to send notification to client"); + + info!("Notification sent to the gRPC client"); + } + }); + + Ok(Response::new(ReceiverStream::new(rx))) + } +} + +// ... +``` + +That's it for the gRPC server part! It doesn't receive anything on the `notifications` channel yet, +but we will fix it with our ExEx. + +### ExEx + +Now, let's define the ExEx part of our binary. + +Our ExEx accepts a `notifications` channel and redirects all incoming `ExExNotification`s to it. + +
+ +Don't forget to emit `ExExEvent::FinishedHeight` + +
+ +```rust,norun,noplayground,ignore +// ... +use reth_exex::{ExExContext, ExExEvent}; + +async fn remote_exex( + mut ctx: ExExContext, + notifications: Arc>, +) -> eyre::Result<()> { + while let Some(notification) = ctx.notifications.recv().await { + if let Some(committed_chain) = notification.committed_chain() { + ctx.events + .send(ExExEvent::FinishedHeight(committed_chain.tip().number))?; + } + + info!("Notification sent to the gRPC server"); + let _ = notifications.send(notification); + } + + Ok(()) +} + +// ... +``` + +All that's left is to connect all pieces together: install our ExEx in the node and pass the sender part +of communication channel to it. + +```rust,norun,noplayground,ignore +// ... + +fn main() -> eyre::Result<()> { + reth::cli::Cli::parse_args().run(|builder, _| async move { + let notifications = Arc::new(broadcast::channel(1).0); + + let server = Server::builder() + .add_service(RemoteExExServer::new(ExExService { + notifications: notifications.clone(), + })) + .serve("[::1]:10000".parse().unwrap()); + + let handle = builder + .node(EthereumNode::default()) + .install_exex("remote-exex", |ctx| async move { + Ok(remote_exex(ctx, notifications)) + }) + .launch() + .await?; + + handle + .node + .task_executor + .spawn_critical("gRPC server", async move { + server.await.expect("failed to start gRPC server") + }); + + handle.wait_for_node_exit().await + }) +} +``` + +### Full `exex.rs` code + +
+Click to expand + +```rust,norun,noplayground,ignore +use remote_exex::proto::{ + self, + remote_ex_ex_server::{RemoteExEx, RemoteExExServer}, +}; +use reth::api::FullNodeComponents; +use reth_exex::{ExExContext, ExExEvent, ExExNotification}; +use reth_node_ethereum::EthereumNode; +use reth_tracing::tracing::info; +use std::sync::Arc; +use tokio::sync::{broadcast, mpsc}; +use tokio_stream::wrappers::ReceiverStream; +use tonic::{transport::Server, Request, Response, Status}; + +struct ExExService { + notifications: Arc>, +} + +#[tonic::async_trait] +impl RemoteExEx for ExExService { + type SubscribeStream = ReceiverStream>; + + async fn subscribe( + &self, + _request: Request, + ) -> Result, Status> { + let (tx, rx) = mpsc::channel(1); + + let mut notifications = self.notifications.subscribe(); + tokio::spawn(async move { + while let Ok(notification) = notifications.recv().await { + let proto_notification = proto::ExExNotification { + data: bincode::serialize(¬ification).expect("failed to serialize"), + }; + tx.send(Ok(proto_notification)) + .await + .expect("failed to send notification to client"); + + info!(?notification, "Notification sent to the gRPC client"); + } + }); + + Ok(Response::new(ReceiverStream::new(rx))) + } +} + +async fn remote_exex( + mut ctx: ExExContext, + notifications: Arc>, +) -> eyre::Result<()> { + while let Some(notification) = ctx.notifications.recv().await { + if let Some(committed_chain) = notification.committed_chain() { + ctx.events + .send(ExExEvent::FinishedHeight(committed_chain.tip().number))?; + } + + info!(?notification, "Notification sent to the gRPC server"); + let _ = notifications.send(notification); + } + + Ok(()) +} + +fn main() -> eyre::Result<()> { + reth::cli::Cli::parse_args().run(|builder, _| async move { + let notifications = Arc::new(broadcast::channel(1).0); + + let server = Server::builder() + .add_service(RemoteExExServer::new(ExExService { + notifications: notifications.clone(), + })) + .serve("[::1]:10000".parse().unwrap()); + + let handle = builder + .node(EthereumNode::default()) + .install_exex("remote-exex", |ctx| async move { + Ok(remote_exex(ctx, notifications)) + }) + .launch() + .await?; + + handle + .node + .task_executor + .spawn_critical("gRPC server", async move { + server.await.expect("failed to start gRPC server") + }); + + handle.wait_for_node_exit().await + }) +} +``` +
+ +## Consumer + +Consumer will be a much simpler binary that just connects to our gRPC server and prints out all the notifications +it receives. + +
+ +We need to increase maximum message encoding and decoding sizes to `usize::MAX`, +because notifications can get very heavy + +
+ +```rust,norun,noplayground,ignore +use remote_exex::proto::{remote_ex_ex_client::RemoteExExClient, SubscribeRequest}; +use reth_exex::ExExNotification; +use reth_tracing::{tracing::info, RethTracer, Tracer}; + +#[tokio::main] +async fn main() -> eyre::Result<()> { + let _ = RethTracer::new().init()?; + + let mut client = RemoteExExClient::connect("http://[::1]:10000") + .await? + .max_encoding_message_size(usize::MAX) + .max_decoding_message_size(usize::MAX); + + let mut stream = client.subscribe(SubscribeRequest {}).await?.into_inner(); + while let Some(notification) = stream.message().await? { + let notification: ExExNotification = bincode::deserialize(¬ification.data)?; + + match notification { + ExExNotification::ChainCommitted { new } => { + info!(committed_chain = ?new.range(), "Received commit"); + } + ExExNotification::ChainReorged { old, new } => { + info!(from_chain = ?old.range(), to_chain = ?new.range(), "Received reorg"); + } + ExExNotification::ChainReverted { old } => { + info!(reverted_chain = ?old.range(), "Received revert"); + } + }; + } + + Ok(()) +} +``` + +## Running + +In one terminal window, we will run our ExEx and gRPC server. It will start syncing Reth on the Holesky chain +and use Etherscan in place of a real Consensus Client. + +```console +cargo run --bin exex --release -- node --chain holesky --debug.etherscan +``` + +And in the other, we will run our consumer: + +```console +cargo run --bin consumer --release +``` + + From 898d17bb91cf69fcef88cf7385b80aa1822e2c7f Mon Sep 17 00:00:00 2001 From: Roman Krasiuk Date: Mon, 1 Jul 2024 09:06:16 -0700 Subject: [PATCH 18/27] chore(trie): store only deleted keys in `TrieWalker` (#9226) --- crates/trie/parallel/src/async_root.rs | 2 +- crates/trie/parallel/src/parallel_root.rs | 2 +- crates/trie/trie/src/trie.rs | 15 +++++---- crates/trie/trie/src/updates.rs | 20 +++--------- crates/trie/trie/src/walker.rs | 40 ++++++++++------------- 5 files changed, 33 insertions(+), 46 deletions(-) diff --git a/crates/trie/parallel/src/async_root.rs b/crates/trie/parallel/src/async_root.rs index a36a01be5ecb..e1a031a038f5 100644 --- a/crates/trie/parallel/src/async_root.rs +++ b/crates/trie/parallel/src/async_root.rs @@ -132,7 +132,7 @@ where trie_cursor_factory.account_trie_cursor().map_err(ProviderError::Database)?, prefix_sets.account_prefix_set, ) - .with_updates(retain_updates); + .with_deletions_retained(retain_updates); let mut account_node_iter = TrieNodeIter::new( walker, hashed_cursor_factory.hashed_account_cursor().map_err(ProviderError::Database)?, diff --git a/crates/trie/parallel/src/parallel_root.rs b/crates/trie/parallel/src/parallel_root.rs index edf552096fca..e276d7e055a8 100644 --- a/crates/trie/parallel/src/parallel_root.rs +++ b/crates/trie/parallel/src/parallel_root.rs @@ -116,7 +116,7 @@ where trie_cursor_factory.account_trie_cursor().map_err(ProviderError::Database)?, prefix_sets.account_prefix_set, ) - .with_updates(retain_updates); + .with_deletions_retained(retain_updates); let mut account_node_iter = TrieNodeIter::new( walker, hashed_cursor_factory.hashed_account_cursor().map_err(ProviderError::Database)?, diff --git a/crates/trie/trie/src/trie.rs b/crates/trie/trie/src/trie.rs index 0ae43cdf849a..4d23bfc98187 100644 --- a/crates/trie/trie/src/trie.rs +++ b/crates/trie/trie/src/trie.rs @@ -221,7 +221,7 @@ where state.walker_stack, self.prefix_sets.account_prefix_set, ) - .with_updates(retain_updates); + .with_deletions_retained(retain_updates); let node_iter = TrieNodeIter::new(walker, hashed_account_cursor) .with_last_hashed_key(state.last_account_key); (hash_builder, node_iter) @@ -229,7 +229,7 @@ where None => { let hash_builder = HashBuilder::default().with_updates(retain_updates); let walker = TrieWalker::new(trie_cursor, self.prefix_sets.account_prefix_set) - .with_updates(retain_updates); + .with_deletions_retained(retain_updates); let node_iter = TrieNodeIter::new(walker, hashed_account_cursor); (hash_builder, node_iter) } @@ -286,10 +286,10 @@ where // Decide if we need to return intermediate progress. let total_updates_len = trie_updates.len() + - account_node_iter.walker.updates_len() + + account_node_iter.walker.deleted_keys_len() + hash_builder.updates_len(); if retain_updates && total_updates_len as u64 >= self.threshold { - let (walker_stack, walker_updates) = account_node_iter.walker.split(); + let (walker_stack, walker_deleted_keys) = account_node_iter.walker.split(); let (hash_builder, hash_builder_updates) = hash_builder.split(); let state = IntermediateStateRootState { @@ -298,7 +298,9 @@ where last_account_key: hashed_address, }; - trie_updates.extend(walker_updates); + trie_updates.extend( + walker_deleted_keys.into_iter().map(|key| (key, TrieOp::Delete)), + ); trie_updates.extend_with_account_updates(hash_builder_updates); return Ok(StateRootProgress::Progress( @@ -492,7 +494,8 @@ where let mut tracker = TrieTracker::default(); let trie_cursor = self.trie_cursor_factory.storage_trie_cursor(self.hashed_address)?; - let walker = TrieWalker::new(trie_cursor, self.prefix_set).with_updates(retain_updates); + let walker = + TrieWalker::new(trie_cursor, self.prefix_set).with_deletions_retained(retain_updates); let mut hash_builder = HashBuilder::default().with_updates(retain_updates); diff --git a/crates/trie/trie/src/updates.rs b/crates/trie/trie/src/updates.rs index d0027d658523..b982c945591d 100644 --- a/crates/trie/trie/src/updates.rs +++ b/crates/trie/trie/src/updates.rs @@ -110,18 +110,6 @@ impl IntoIterator for TrieUpdates { } impl TrieUpdates { - /// Schedule a delete operation on a trie key. - /// - /// # Panics - /// - /// If the key already exists and the operation is an update. - pub fn schedule_delete(&mut self, key: TrieKey) { - let existing = self.trie_operations.insert(key, TrieOp::Delete); - if let Some(op) = existing { - assert!(!op.is_update(), "Tried to delete a node that was already updated"); - } - } - /// Extend the updates with trie updates. pub fn extend(&mut self, updates: impl IntoIterator) { self.trie_operations.extend(updates); @@ -144,8 +132,8 @@ impl TrieUpdates { destroyed_accounts: HashSet, ) { // Add updates from trie walker. - let (_, walker_updates) = walker.split(); - self.extend(walker_updates); + let (_, deleted_keys) = walker.split(); + self.extend(deleted_keys.into_iter().map(|key| (key, TrieOp::Delete))); // Add account node updates from hash builder. let (_, hash_builder_updates) = hash_builder.split(); @@ -165,8 +153,8 @@ impl TrieUpdates { hash_builder: HashBuilder, ) { // Add updates from trie walker. - let (_, walker_updates) = walker.split(); - self.extend(walker_updates); + let (_, deleted_keys) = walker.split(); + self.extend(deleted_keys.into_iter().map(|key| (key, TrieOp::Delete))); // Add storage node updates from hash builder. let (_, hash_builder_updates) = hash_builder.split(); diff --git a/crates/trie/trie/src/walker.rs b/crates/trie/trie/src/walker.rs index 6486a9b08006..990b7fb74d52 100644 --- a/crates/trie/trie/src/walker.rs +++ b/crates/trie/trie/src/walker.rs @@ -1,11 +1,12 @@ use crate::{ prefix_set::PrefixSet, trie_cursor::{CursorSubNode, TrieCursor}, - updates::TrieUpdates, + updates::TrieKey, BranchNodeCompact, Nibbles, }; use reth_db::DatabaseError; use reth_primitives::B256; +use std::collections::HashSet; /// `TrieWalker` is a structure that enables traversal of a Merkle trie. /// It allows moving through the trie in a depth-first manner, skipping certain branches @@ -22,36 +23,31 @@ pub struct TrieWalker { pub can_skip_current_node: bool, /// A `PrefixSet` representing the changes to be applied to the trie. pub changes: PrefixSet, - /// The trie updates to be applied to the trie. - trie_updates: Option, + /// The retained trie node keys that need to be deleted. + deleted_keys: Option>, } impl TrieWalker { /// Constructs a new `TrieWalker` from existing stack and a cursor. pub fn from_stack(cursor: C, stack: Vec, changes: PrefixSet) -> Self { let mut this = - Self { cursor, changes, stack, can_skip_current_node: false, trie_updates: None }; + Self { cursor, changes, stack, can_skip_current_node: false, deleted_keys: None }; this.update_skip_node(); this } /// Sets the flag whether the trie updates should be stored. - pub fn with_updates(mut self, retain_updates: bool) -> Self { - self.set_updates(retain_updates); - self - } - - /// Sets the flag whether the trie updates should be stored. - pub fn set_updates(&mut self, retain_updates: bool) { - if retain_updates { - self.trie_updates = Some(TrieUpdates::default()); + pub fn with_deletions_retained(mut self, retained: bool) -> Self { + if retained { + self.deleted_keys = Some(HashSet::default()); } + self } /// Split the walker into stack and trie updates. - pub fn split(mut self) -> (Vec, TrieUpdates) { - let trie_updates = self.trie_updates.take(); - (self.stack, trie_updates.unwrap_or_default()) + pub fn split(mut self) -> (Vec, HashSet) { + let keys = self.deleted_keys.take(); + (self.stack, keys.unwrap_or_default()) } /// Prints the current stack of trie nodes. @@ -63,9 +59,9 @@ impl TrieWalker { println!("====================== END STACK ======================\n"); } - /// The current length of the trie updates. - pub fn updates_len(&self) -> usize { - self.trie_updates.as_ref().map(|u| u.len()).unwrap_or(0) + /// The current length of the deleted keys. + pub fn deleted_keys_len(&self) -> usize { + self.deleted_keys.as_ref().map_or(0, |u| u.len()) } /// Returns the current key in the trie. @@ -117,7 +113,7 @@ impl TrieWalker { changes, stack: vec![CursorSubNode::default()], can_skip_current_node: false, - trie_updates: None, + deleted_keys: None, }; // Set up the root node of the trie in the stack, if it exists. @@ -193,8 +189,8 @@ impl TrieWalker { // Delete the current node if it's included in the prefix set or it doesn't contain the root // hash. if !self.can_skip_current_node || nibble != -1 { - if let Some((updates, key)) = self.trie_updates.as_mut().zip(self.cursor.current()?) { - updates.schedule_delete(key); + if let Some((keys, key)) = self.deleted_keys.as_mut().zip(self.cursor.current()?) { + keys.insert(key); } } From d2cf129e580ef7a56c00f249b60e7cd6c00dfd9d Mon Sep 17 00:00:00 2001 From: Dan Cline <6798349+Rjected@users.noreply.github.com> Date: Mon, 1 Jul 2024 12:17:16 -0400 Subject: [PATCH 19/27] feat: implement write method on persistence task (#9225) --- crates/engine/tree/src/persistence.rs | 70 +++++++++++++++++++++++++-- crates/engine/tree/src/tree/mod.rs | 20 ++++++++ 2 files changed, 86 insertions(+), 4 deletions(-) diff --git a/crates/engine/tree/src/persistence.rs b/crates/engine/tree/src/persistence.rs index e7bfadcc1bef..cbbe50d051fe 100644 --- a/crates/engine/tree/src/persistence.rs +++ b/crates/engine/tree/src/persistence.rs @@ -4,9 +4,13 @@ use crate::tree::ExecutedBlock; use reth_db::database::Database; use reth_errors::ProviderResult; use reth_primitives::B256; -use reth_provider::ProviderFactory; +use reth_provider::{ + bundle_state::HashedStateChanges, BlockWriter, HistoryWriter, OriginalValuesKnown, + ProviderFactory, StageCheckpointWriter, StateWriter, +}; use std::sync::mpsc::{Receiver, Sender}; use tokio::sync::oneshot; +use tracing::debug; /// Writes parts of reth's in memory tree state to the database. /// @@ -34,9 +38,67 @@ impl Persistence { } /// Writes the cloned tree state to the database - fn write(&self, _blocks: Vec) -> ProviderResult<()> { - let mut _rw = self.provider.provider_rw()?; - todo!("implement this") + fn write(&self, blocks: Vec) -> ProviderResult<()> { + let provider_rw = self.provider.provider_rw()?; + + if blocks.is_empty() { + debug!(target: "tree::persistence", "Attempted to write empty block range"); + return Ok(()) + } + + let first_number = blocks.first().unwrap().block().number; + + let last = blocks.last().unwrap().block(); + let last_block_number = last.number; + + // TODO: remove all the clones and do performant / batched writes for each type of object + // instead of a loop over all blocks, + // meaning: + // * blocks + // * state + // * hashed state + // * trie updates (cannot naively extend, need helper) + // * indices (already done basically) + // Insert the blocks + for block in blocks { + // TODO: prune modes - a bit unsure that it should be at this level of abstraction and + // not another + // + // ie, an external consumer of providers (or the database task) really does not care + // about pruning, just the node. Maybe we are the biggest user, and use it enough that + // we need a helper, but I'd rather make the pruning behavior more explicit then + let prune_modes = None; + let sealed_block = + block.block().clone().try_with_senders_unchecked(block.senders().clone()).unwrap(); + provider_rw.insert_block(sealed_block, prune_modes)?; + + // Write state and changesets to the database. + // Must be written after blocks because of the receipt lookup. + let execution_outcome = block.execution_outcome().clone(); + execution_outcome.write_to_storage( + provider_rw.tx_ref(), + None, + OriginalValuesKnown::No, + )?; + + // insert hashes and intermediate merkle nodes + { + let trie_updates = block.trie_updates().clone(); + let hashed_state = block.hashed_state(); + HashedStateChanges(hashed_state.clone()).write_to_db(provider_rw.tx_ref())?; + trie_updates.flush(provider_rw.tx_ref())?; + } + + // update history indices + provider_rw.update_history_indices(first_number..=last_block_number)?; + + // Update pipeline progress + provider_rw.update_pipeline_stages(last_block_number, false)?; + } + + debug!(target: "tree::persistence", range = ?first_number..=last_block_number, "Appended blocks"); + + Ok(()) } /// Removes the blocks above the give block number from the database, returning them. diff --git a/crates/engine/tree/src/tree/mod.rs b/crates/engine/tree/src/tree/mod.rs index e4cf33923cfd..a4ccea51044e 100644 --- a/crates/engine/tree/src/tree/mod.rs +++ b/crates/engine/tree/src/tree/mod.rs @@ -49,6 +49,26 @@ impl ExecutedBlock { pub(crate) fn block(&self) -> &SealedBlock { &self.block } + + /// Returns a reference to the block's senders + pub(crate) fn senders(&self) -> &Vec
{ + &self.senders + } + + /// Returns a reference to the block's execution outcome + pub(crate) fn execution_outcome(&self) -> &ExecutionOutcome { + &self.execution_output + } + + /// Returns a reference to the hashed state result of the execution outcome + pub(crate) fn hashed_state(&self) -> &HashedPostState { + &self.hashed_state + } + + /// Returns a reference to the trie updates for the block + pub(crate) fn trie_updates(&self) -> &TrieUpdates { + &self.trie + } } /// Keeps track of the state of the tree. From 6db598da1d1f320c9e38e1c96a4acb4f5ab86751 Mon Sep 17 00:00:00 2001 From: Luca Provini Date: Mon, 1 Jul 2024 18:20:07 +0200 Subject: [PATCH 20/27] chore: extract db commands (#9217) Co-authored-by: Matthias Seitz --- Cargo.lock | 44 +++++++++++++------ bin/reth/Cargo.toml | 27 +++--------- bin/reth/src/cli/mod.rs | 3 +- .../src/commands/debug_cmd/build_block.rs | 7 +-- bin/reth/src/commands/debug_cmd/execution.rs | 2 +- .../commands/debug_cmd/in_memory_merkle.rs | 2 +- bin/reth/src/commands/debug_cmd/merkle.rs | 3 +- .../src/commands/debug_cmd/replay_engine.rs | 2 +- bin/reth/src/commands/import.rs | 8 +--- bin/reth/src/commands/import_op.rs | 10 +---- bin/reth/src/commands/import_receipts_op.rs | 2 +- bin/reth/src/commands/init_cmd.rs | 2 +- bin/reth/src/commands/init_state.rs | 2 +- bin/reth/src/commands/mod.rs | 3 -- bin/reth/src/commands/prune.rs | 3 +- .../src/commands/recover/storage_tries.rs | 2 +- bin/reth/src/commands/stage/drop.rs | 7 +-- bin/reth/src/commands/stage/dump/mod.rs | 8 +--- bin/reth/src/commands/stage/run.rs | 3 +- bin/reth/src/commands/stage/unwind.rs | 7 +-- crates/cli/commands/Cargo.toml | 37 ++++++++++++++++ .../cli/commands/src}/common.rs | 0 .../cli/commands/src}/db/checksum.rs | 2 +- .../cli/commands/src}/db/clear.rs | 0 .../cli/commands/src}/db/diff.rs | 8 ++-- .../cli/commands/src}/db/get.rs | 0 .../cli/commands/src}/db/list.rs | 0 .../cli/commands/src}/db/mod.rs | 4 +- .../cli/commands/src}/db/stats.rs | 2 +- .../cli/commands/src}/db/tui.rs | 0 crates/cli/commands/src/lib.rs | 3 ++ 31 files changed, 109 insertions(+), 94 deletions(-) rename {bin/reth/src/commands => crates/cli/commands/src}/common.rs (100%) rename {bin/reth/src/commands => crates/cli/commands/src}/db/checksum.rs (98%) rename {bin/reth/src/commands => crates/cli/commands/src}/db/clear.rs (100%) rename {bin/reth/src/commands => crates/cli/commands/src}/db/diff.rs (99%) rename {bin/reth/src/commands => crates/cli/commands/src}/db/get.rs (100%) rename {bin/reth/src/commands => crates/cli/commands/src}/db/list.rs (100%) rename {bin/reth/src/commands => crates/cli/commands/src}/db/mod.rs (98%) rename {bin/reth/src/commands => crates/cli/commands/src}/db/stats.rs (99%) rename {bin/reth/src/commands => crates/cli/commands/src}/db/tui.rs (100%) diff --git a/Cargo.lock b/Cargo.lock index 0bdada0efe7b..38f323b6c32c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6279,34 +6279,26 @@ dependencies = [ name = "reth" version = "1.0.0" dependencies = [ - "ahash", "alloy-rlp", "aquamarine", "arbitrary", - "assert_matches", "backon", "clap", - "comfy-table", "confy", - "crossterm", "discv5", "eyre", "fdlimit", "futures", - "human_bytes", "itertools 0.13.0", - "jsonrpsee", "libc", "metrics-process", "proptest", "proptest-arbitrary-interop", - "rand 0.8.5", - "ratatui", - "rayon", "reth-basic-payload-builder", "reth-beacon-consensus", "reth-blockchain-tree", "reth-chainspec", + "reth-cli-commands", "reth-cli-runner", "reth-config", "reth-consensus", @@ -6315,7 +6307,6 @@ dependencies = [ "reth-db-api", "reth-db-common", "reth-discv4", - "reth-discv5", "reth-downloaders", "reth-engine-util", "reth-errors", @@ -6324,11 +6315,9 @@ dependencies = [ "reth-execution-types", "reth-exex", "reth-fs-util", - "reth-net-banlist", "reth-network", "reth-network-api", "reth-network-p2p", - "reth-nippy-jar", "reth-node-api", "reth-node-builder", "reth-node-core", @@ -6342,7 +6331,6 @@ dependencies = [ "reth-primitives", "reth-provider", "reth-prune", - "reth-prune-types", "reth-revm", "reth-rpc", "reth-rpc-api", @@ -6587,6 +6575,36 @@ dependencies = [ [[package]] name = "reth-cli-commands" version = "1.0.0" +dependencies = [ + "ahash", + "clap", + "comfy-table", + "confy", + "crossterm", + "eyre", + "human_bytes", + "itertools 0.13.0", + "ratatui", + "reth-beacon-consensus", + "reth-chainspec", + "reth-config", + "reth-db", + "reth-db-api", + "reth-db-common", + "reth-downloaders", + "reth-evm", + "reth-fs-util", + "reth-node-core", + "reth-primitives", + "reth-provider", + "reth-stages", + "reth-static-file", + "reth-static-file-types", + "serde", + "serde_json", + "tokio", + "tracing", +] [[package]] name = "reth-cli-runner" diff --git a/bin/reth/Cargo.toml b/bin/reth/Cargo.toml index 65c7c4f5911e..44edb0d9de3e 100644 --- a/bin/reth/Cargo.toml +++ b/bin/reth/Cargo.toml @@ -21,7 +21,7 @@ reth-fs-util.workspace = true reth-db = { workspace = true, features = ["mdbx"] } reth-db-api.workspace = true reth-exex.workspace = true -reth-provider = { workspace = true } +reth-provider.workspace = true reth-evm.workspace = true reth-revm.workspace = true reth-stages.workspace = true @@ -30,6 +30,7 @@ reth-errors.workspace = true reth-transaction-pool.workspace = true reth-beacon-consensus.workspace = true reth-cli-runner.workspace = true +reth-cli-commands.workspace = true reth-consensus-common.workspace = true reth-blockchain-tree.workspace = true reth-rpc-builder.workspace = true @@ -41,34 +42,29 @@ reth-rpc-eth-types.workspace = true reth-rpc-server-types.workspace = true reth-network = { workspace = true, features = ["serde"] } reth-network-p2p.workspace = true -reth-net-banlist.workspace = true reth-network-api.workspace = true reth-downloaders.workspace = true reth-tracing.workspace = true reth-tasks.workspace = true -reth-ethereum-payload-builder.workspace = true reth-payload-builder.workspace = true reth-payload-primitives.workspace = true reth-payload-validator.workspace = true reth-basic-payload-builder.workspace = true -reth-discv4.workspace = true -reth-discv5.workspace = true reth-static-file.workspace = true reth-static-file-types = { workspace = true, features = ["clap"] } reth-trie = { workspace = true, features = ["metrics"] } -reth-nippy-jar.workspace = true reth-node-api.workspace = true -reth-node-ethereum.workspace = true reth-node-optimism = { workspace = true, optional = true, features = [ "optimism", ] } reth-node-core.workspace = true +reth-ethereum-payload-builder.workspace = true reth-db-common.workspace = true +reth-node-ethereum.workspace = true reth-node-builder.workspace = true reth-node-events.workspace = true reth-consensus.workspace = true reth-optimism-primitives.workspace = true -reth-prune-types.workspace = true reth-engine-util.workspace = true reth-prune.workspace = true @@ -92,15 +88,7 @@ metrics-process.workspace = true proptest.workspace = true arbitrary.workspace = true proptest-arbitrary-interop.workspace = true -rand.workspace = true -# tui -comfy-table = "7.1" -crossterm = "0.27.0" -ratatui = { version = "0.27", default-features = false, features = [ - "crossterm", -] } -human_bytes = "0.4.1" # async tokio = { workspace = true, features = [ @@ -119,8 +107,6 @@ tempfile.workspace = true backon.workspace = true similar-asserts.workspace = true itertools.workspace = true -rayon.workspace = true -ahash = "0.8" # p2p discv5.workspace = true @@ -130,8 +116,9 @@ tikv-jemallocator = { version = "0.5.0", optional = true } libc = "0.2" [dev-dependencies] -jsonrpsee.workspace = true -assert_matches = "1.5.0" +reth-discv4.workspace = true + + [features] default = ["jemalloc"] diff --git a/bin/reth/src/cli/mod.rs b/bin/reth/src/cli/mod.rs index 4dd567630756..2d253ea32c81 100644 --- a/bin/reth/src/cli/mod.rs +++ b/bin/reth/src/cli/mod.rs @@ -6,7 +6,7 @@ use crate::{ LogArgs, }, commands::{ - config_cmd, db, debug_cmd, dump_genesis, import, init_cmd, init_state, + config_cmd, debug_cmd, dump_genesis, import, init_cmd, init_state, node::{self, NoArgs}, p2p, prune, recover, stage, test_vectors, }, @@ -14,6 +14,7 @@ use crate::{ }; use clap::{value_parser, Parser, Subcommand}; use reth_chainspec::ChainSpec; +use reth_cli_commands::db; use reth_cli_runner::CliRunner; use reth_db::DatabaseEnv; use reth_node_builder::{NodeBuilder, WithLaunchContext}; diff --git a/bin/reth/src/commands/debug_cmd/build_block.rs b/bin/reth/src/commands/debug_cmd/build_block.rs index 6c1125677815..69e0dc1cf208 100644 --- a/bin/reth/src/commands/debug_cmd/build_block.rs +++ b/bin/reth/src/commands/debug_cmd/build_block.rs @@ -1,9 +1,5 @@ //! Command for debugging block building. - -use crate::{ - commands::common::{AccessRights, Environment, EnvironmentArgs}, - macros::block_executor, -}; +use crate::macros::block_executor; use alloy_rlp::Decodable; use clap::Parser; use eyre::Context; @@ -14,6 +10,7 @@ use reth_beacon_consensus::EthBeaconConsensus; use reth_blockchain_tree::{ BlockchainTree, BlockchainTreeConfig, ShareableBlockchainTree, TreeExternals, }; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_cli_runner::CliContext; use reth_consensus::Consensus; use reth_db::DatabaseEnv; diff --git a/bin/reth/src/commands/debug_cmd/execution.rs b/bin/reth/src/commands/debug_cmd/execution.rs index 2172a2b4c7ba..dc8e01e54f44 100644 --- a/bin/reth/src/commands/debug_cmd/execution.rs +++ b/bin/reth/src/commands/debug_cmd/execution.rs @@ -2,13 +2,13 @@ use crate::{ args::{get_secret_key, NetworkArgs}, - commands::common::{AccessRights, Environment, EnvironmentArgs}, macros::block_executor, utils::get_single_header, }; use clap::Parser; use futures::{stream::select as stream_select, StreamExt}; use reth_beacon_consensus::EthBeaconConsensus; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_cli_runner::CliContext; use reth_config::Config; use reth_consensus::Consensus; diff --git a/bin/reth/src/commands/debug_cmd/in_memory_merkle.rs b/bin/reth/src/commands/debug_cmd/in_memory_merkle.rs index 8d138d2c2c1b..352d7846e5bc 100644 --- a/bin/reth/src/commands/debug_cmd/in_memory_merkle.rs +++ b/bin/reth/src/commands/debug_cmd/in_memory_merkle.rs @@ -2,12 +2,12 @@ use crate::{ args::{get_secret_key, NetworkArgs}, - commands::common::{AccessRights, Environment, EnvironmentArgs}, macros::block_executor, utils::{get_single_body, get_single_header}, }; use backon::{ConstantBuilder, Retryable}; use clap::Parser; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_cli_runner::CliContext; use reth_config::Config; use reth_db::DatabaseEnv; diff --git a/bin/reth/src/commands/debug_cmd/merkle.rs b/bin/reth/src/commands/debug_cmd/merkle.rs index bd8f690b9a59..e1d044e663e9 100644 --- a/bin/reth/src/commands/debug_cmd/merkle.rs +++ b/bin/reth/src/commands/debug_cmd/merkle.rs @@ -1,14 +1,13 @@ //! Command for debugging merkle trie calculation. - use crate::{ args::{get_secret_key, NetworkArgs}, - commands::common::{AccessRights, Environment, EnvironmentArgs}, macros::block_executor, utils::get_single_header, }; use backon::{ConstantBuilder, Retryable}; use clap::Parser; use reth_beacon_consensus::EthBeaconConsensus; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_cli_runner::CliContext; use reth_config::Config; use reth_consensus::Consensus; diff --git a/bin/reth/src/commands/debug_cmd/replay_engine.rs b/bin/reth/src/commands/debug_cmd/replay_engine.rs index 224a0c993401..429ef625f988 100644 --- a/bin/reth/src/commands/debug_cmd/replay_engine.rs +++ b/bin/reth/src/commands/debug_cmd/replay_engine.rs @@ -1,6 +1,5 @@ use crate::{ args::{get_secret_key, NetworkArgs}, - commands::common::{AccessRights, Environment, EnvironmentArgs}, macros::block_executor, }; use clap::Parser; @@ -10,6 +9,7 @@ use reth_beacon_consensus::{hooks::EngineHooks, BeaconConsensusEngine, EthBeacon use reth_blockchain_tree::{ BlockchainTree, BlockchainTreeConfig, ShareableBlockchainTree, TreeExternals, }; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_cli_runner::CliContext; use reth_config::Config; use reth_consensus::Consensus; diff --git a/bin/reth/src/commands/import.rs b/bin/reth/src/commands/import.rs index 71357e083aaf..bc0f183b0e93 100644 --- a/bin/reth/src/commands/import.rs +++ b/bin/reth/src/commands/import.rs @@ -1,13 +1,9 @@ //! Command that initializes the node by importing a chain from a file. - -use crate::{ - commands::common::{AccessRights, Environment, EnvironmentArgs}, - macros::block_executor, - version::SHORT_VERSION, -}; +use crate::{macros::block_executor, version::SHORT_VERSION}; use clap::Parser; use futures::{Stream, StreamExt}; use reth_beacon_consensus::EthBeaconConsensus; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_config::Config; use reth_consensus::Consensus; use reth_db::tables; diff --git a/bin/reth/src/commands/import_op.rs b/bin/reth/src/commands/import_op.rs index f4b8716fe210..3d308ba0d826 100644 --- a/bin/reth/src/commands/import_op.rs +++ b/bin/reth/src/commands/import_op.rs @@ -1,14 +1,8 @@ //! Command that initializes the node by importing OP Mainnet chain segment below Bedrock, from a //! file. - -use crate::{ - commands::{ - common::{AccessRights, Environment, EnvironmentArgs}, - import::build_import_pipeline, - }, - version::SHORT_VERSION, -}; +use crate::{commands::import::build_import_pipeline, version::SHORT_VERSION}; use clap::Parser; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_consensus::noop::NoopConsensus; use reth_db::tables; use reth_db_api::transaction::DbTx; diff --git a/bin/reth/src/commands/import_receipts_op.rs b/bin/reth/src/commands/import_receipts_op.rs index 7623c626cb02..042b7df6e7b3 100644 --- a/bin/reth/src/commands/import_receipts_op.rs +++ b/bin/reth/src/commands/import_receipts_op.rs @@ -1,8 +1,8 @@ //! Command that imports OP mainnet receipts from Bedrock datadir, exported via //! . -use crate::commands::common::{AccessRights, Environment, EnvironmentArgs}; use clap::Parser; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_db::tables; use reth_db_api::{database::Database, transaction::DbTx}; use reth_downloaders::{ diff --git a/bin/reth/src/commands/init_cmd.rs b/bin/reth/src/commands/init_cmd.rs index 22657f0c0255..df407c0659f0 100644 --- a/bin/reth/src/commands/init_cmd.rs +++ b/bin/reth/src/commands/init_cmd.rs @@ -1,7 +1,7 @@ //! Command that initializes the node from a genesis file. -use crate::commands::common::{AccessRights, Environment, EnvironmentArgs}; use clap::Parser; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_provider::BlockHashReader; use tracing::info; diff --git a/bin/reth/src/commands/init_state.rs b/bin/reth/src/commands/init_state.rs index dbf45e5816a6..4324b7f46882 100644 --- a/bin/reth/src/commands/init_state.rs +++ b/bin/reth/src/commands/init_state.rs @@ -1,7 +1,7 @@ //! Command that initializes the node from a genesis file. -use crate::commands::common::{AccessRights, Environment, EnvironmentArgs}; use clap::Parser; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_config::config::EtlConfig; use reth_db_api::database::Database; use reth_db_common::init::init_from_state_dump; diff --git a/bin/reth/src/commands/mod.rs b/bin/reth/src/commands/mod.rs index 0763ecc2203e..36290922a67c 100644 --- a/bin/reth/src/commands/mod.rs +++ b/bin/reth/src/commands/mod.rs @@ -1,7 +1,6 @@ //! This contains all of the `reth` commands pub mod config_cmd; -pub mod db; pub mod debug_cmd; pub mod dump_genesis; pub mod import; @@ -15,5 +14,3 @@ pub mod prune; pub mod recover; pub mod stage; pub mod test_vectors; - -pub mod common; diff --git a/bin/reth/src/commands/prune.rs b/bin/reth/src/commands/prune.rs index f3b0fcaab966..cd9cfabb26a3 100644 --- a/bin/reth/src/commands/prune.rs +++ b/bin/reth/src/commands/prune.rs @@ -1,7 +1,6 @@ //! Command that runs pruning without any limits. - -use crate::commands::common::{AccessRights, Environment, EnvironmentArgs}; use clap::Parser; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_prune::PrunerBuilder; use reth_static_file::StaticFileProducer; use tracing::info; diff --git a/bin/reth/src/commands/recover/storage_tries.rs b/bin/reth/src/commands/recover/storage_tries.rs index b1dbbfa88ce5..7cab05ff8527 100644 --- a/bin/reth/src/commands/recover/storage_tries.rs +++ b/bin/reth/src/commands/recover/storage_tries.rs @@ -1,5 +1,5 @@ -use crate::commands::common::{AccessRights, Environment, EnvironmentArgs}; use clap::Parser; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_cli_runner::CliContext; use reth_db::tables; use reth_db_api::{ diff --git a/bin/reth/src/commands/stage/drop.rs b/bin/reth/src/commands/stage/drop.rs index ec32af330e97..88f5650d558c 100644 --- a/bin/reth/src/commands/stage/drop.rs +++ b/bin/reth/src/commands/stage/drop.rs @@ -1,11 +1,8 @@ //! Database debugging tool - -use crate::{ - args::StageEnum, - commands::common::{AccessRights, Environment, EnvironmentArgs}, -}; +use crate::args::StageEnum; use clap::Parser; use itertools::Itertools; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_db::{static_file::iter_static_files, tables, DatabaseEnv}; use reth_db_api::transaction::DbTxMut; use reth_db_common::{ diff --git a/bin/reth/src/commands/stage/dump/mod.rs b/bin/reth/src/commands/stage/dump/mod.rs index f1fbdbbdecbd..4cdf3af8d2a3 100644 --- a/bin/reth/src/commands/stage/dump/mod.rs +++ b/bin/reth/src/commands/stage/dump/mod.rs @@ -1,11 +1,7 @@ //! Database debugging tool - -use crate::{ - args::DatadirArgs, - commands::common::{AccessRights, Environment, EnvironmentArgs}, - dirs::DataDirPath, -}; +use crate::{args::DatadirArgs, dirs::DataDirPath}; use clap::Parser; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_db::{init_db, mdbx::DatabaseArguments, tables, DatabaseEnv}; use reth_db_api::{ cursor::DbCursorRO, database::Database, models::ClientVersion, table::TableImporter, diff --git a/bin/reth/src/commands/stage/run.rs b/bin/reth/src/commands/stage/run.rs index 55824bd79c69..101b89e0277a 100644 --- a/bin/reth/src/commands/stage/run.rs +++ b/bin/reth/src/commands/stage/run.rs @@ -1,15 +1,14 @@ //! Main `stage` command //! //! Stage debugging tool - use crate::{ args::{get_secret_key, NetworkArgs, StageEnum}, - commands::common::{AccessRights, Environment, EnvironmentArgs}, macros::block_executor, prometheus_exporter, }; use clap::Parser; use reth_beacon_consensus::EthBeaconConsensus; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_cli_runner::CliContext; use reth_config::config::{HashingConfig, SenderRecoveryConfig, TransactionLookupConfig}; use reth_downloaders::bodies::bodies::BodiesDownloaderBuilder; diff --git a/bin/reth/src/commands/stage/unwind.rs b/bin/reth/src/commands/stage/unwind.rs index e3cb0cc8fcd5..3f8eb59628da 100644 --- a/bin/reth/src/commands/stage/unwind.rs +++ b/bin/reth/src/commands/stage/unwind.rs @@ -1,7 +1,9 @@ //! Unwinding a certain block range +use crate::macros::block_executor; use clap::{Parser, Subcommand}; use reth_beacon_consensus::EthBeaconConsensus; +use reth_cli_commands::common::{AccessRights, Environment, EnvironmentArgs}; use reth_config::Config; use reth_consensus::Consensus; use reth_db_api::database::Database; @@ -24,11 +26,6 @@ use std::{ops::RangeInclusive, sync::Arc}; use tokio::sync::watch; use tracing::info; -use crate::{ - commands::common::{AccessRights, Environment, EnvironmentArgs}, - macros::block_executor, -}; - /// `reth stage unwind` command #[derive(Debug, Parser)] pub struct Command { diff --git a/crates/cli/commands/Cargo.toml b/crates/cli/commands/Cargo.toml index d12abefcd8b0..bc9532b24349 100644 --- a/crates/cli/commands/Cargo.toml +++ b/crates/cli/commands/Cargo.toml @@ -8,3 +8,40 @@ homepage.workspace = true repository.workspace = true [lints] + +[dependencies] +reth-db = { workspace = true, features = ["mdbx"] } +reth-db-api.workspace = true +reth-provider.workspace = true +reth-primitives.workspace = true +reth-node-core.workspace = true +reth-fs-util.workspace = true +reth-db-common.workspace = true +reth-static-file-types.workspace = true +reth-beacon-consensus.workspace = true +reth-chainspec.workspace = true +reth-config.workspace = true +reth-downloaders.workspace = true +reth-evm.workspace = true +reth-stages.workspace = true +reth-static-file.workspace = true + +confy.workspace = true +tokio.workspace = true +itertools.workspace = true + +# misc +ahash = "0.8" +human_bytes = "0.4.1" +eyre.workspace = true +clap = { workspace = true, features = ["derive", "env"] } +serde.workspace = true +serde_json.workspace = true +tracing.workspace = true + +# tui +comfy-table = "7.0" +crossterm = "0.27.0" +ratatui = { version = "0.27", default-features = false, features = [ + "crossterm", +] } \ No newline at end of file diff --git a/bin/reth/src/commands/common.rs b/crates/cli/commands/src/common.rs similarity index 100% rename from bin/reth/src/commands/common.rs rename to crates/cli/commands/src/common.rs diff --git a/bin/reth/src/commands/db/checksum.rs b/crates/cli/commands/src/db/checksum.rs similarity index 98% rename from bin/reth/src/commands/db/checksum.rs rename to crates/cli/commands/src/db/checksum.rs index 9af9a2321637..abc183da4ed4 100644 --- a/bin/reth/src/commands/db/checksum.rs +++ b/crates/cli/commands/src/db/checksum.rs @@ -1,4 +1,4 @@ -use crate::commands::db::get::{maybe_json_value_parser, table_key}; +use crate::db::get::{maybe_json_value_parser, table_key}; use ahash::RandomState; use clap::Parser; use reth_db::{DatabaseEnv, RawKey, RawTable, RawValue, TableViewer, Tables}; diff --git a/bin/reth/src/commands/db/clear.rs b/crates/cli/commands/src/db/clear.rs similarity index 100% rename from bin/reth/src/commands/db/clear.rs rename to crates/cli/commands/src/db/clear.rs diff --git a/bin/reth/src/commands/db/diff.rs b/crates/cli/commands/src/db/diff.rs similarity index 99% rename from bin/reth/src/commands/db/diff.rs rename to crates/cli/commands/src/db/diff.rs index cd9e24c1d761..e025c4648c35 100644 --- a/bin/reth/src/commands/db/diff.rs +++ b/crates/cli/commands/src/db/diff.rs @@ -1,11 +1,11 @@ -use crate::{ - args::DatabaseArgs, - dirs::{DataDirPath, PlatformPath}, -}; use clap::Parser; use reth_db::{open_db_read_only, tables_to_generic, DatabaseEnv, Tables}; use reth_db_api::{cursor::DbCursorRO, database::Database, table::Table, transaction::DbTx}; use reth_db_common::DbTool; +use reth_node_core::{ + args::DatabaseArgs, + dirs::{DataDirPath, PlatformPath}, +}; use std::{ collections::HashMap, fmt::Debug, diff --git a/bin/reth/src/commands/db/get.rs b/crates/cli/commands/src/db/get.rs similarity index 100% rename from bin/reth/src/commands/db/get.rs rename to crates/cli/commands/src/db/get.rs diff --git a/bin/reth/src/commands/db/list.rs b/crates/cli/commands/src/db/list.rs similarity index 100% rename from bin/reth/src/commands/db/list.rs rename to crates/cli/commands/src/db/list.rs diff --git a/bin/reth/src/commands/db/mod.rs b/crates/cli/commands/src/db/mod.rs similarity index 98% rename from bin/reth/src/commands/db/mod.rs rename to crates/cli/commands/src/db/mod.rs index 736d825c31b2..dc247745f5ac 100644 --- a/bin/reth/src/commands/db/mod.rs +++ b/crates/cli/commands/src/db/mod.rs @@ -1,6 +1,4 @@ -//! Database debugging tool - -use crate::commands::common::{AccessRights, Environment, EnvironmentArgs}; +use crate::common::{AccessRights, Environment, EnvironmentArgs}; use clap::{Parser, Subcommand}; use reth_db::version::{get_db_version, DatabaseVersionError, DB_VERSION}; use reth_db_common::DbTool; diff --git a/bin/reth/src/commands/db/stats.rs b/crates/cli/commands/src/db/stats.rs similarity index 99% rename from bin/reth/src/commands/db/stats.rs rename to crates/cli/commands/src/db/stats.rs index b1a979e54918..37f7d617ba47 100644 --- a/bin/reth/src/commands/db/stats.rs +++ b/crates/cli/commands/src/db/stats.rs @@ -1,4 +1,4 @@ -use crate::commands::db::checksum::ChecksumViewer; +use crate::db::checksum::ChecksumViewer; use clap::Parser; use comfy_table::{Cell, Row, Table as ComfyTable}; use eyre::WrapErr; diff --git a/bin/reth/src/commands/db/tui.rs b/crates/cli/commands/src/db/tui.rs similarity index 100% rename from bin/reth/src/commands/db/tui.rs rename to crates/cli/commands/src/db/tui.rs diff --git a/crates/cli/commands/src/lib.rs b/crates/cli/commands/src/lib.rs index 33983bb856db..5f94de798c7f 100644 --- a/crates/cli/commands/src/lib.rs +++ b/crates/cli/commands/src/lib.rs @@ -7,3 +7,6 @@ )] #![cfg_attr(not(test), warn(unused_crate_dependencies))] #![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))] + +pub mod common; +pub mod db; From 984e89efeba8ae48365f86c09a8fecaa68898708 Mon Sep 17 00:00:00 2001 From: Thomas Coratger <60488569+tcoratger@users.noreply.github.com> Date: Mon, 1 Jul 2024 18:56:55 +0200 Subject: [PATCH 21/27] feat(clippy): add `iter_without_into_iter` (#9195) Co-authored-by: Matthias Seitz Co-authored-by: Roman Krasiuk --- Cargo.toml | 1 + crates/primitives-traits/src/withdrawal.rs | 17 +++++++++++++++++ crates/trie/trie/src/prefix_set/mod.rs | 8 ++++++++ 3 files changed, 26 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index 1308361d4a3e..936de53b63b4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -206,6 +206,7 @@ zero_sized_map_values = "warn" single_char_pattern = "warn" needless_continue = "warn" enum_glob_use = "warn" +iter_without_into_iter = "warn" # These are nursery lints which have findings. Allow them for now. Some are not # quite mature enough for use in our codebase and some we don't really want. diff --git a/crates/primitives-traits/src/withdrawal.rs b/crates/primitives-traits/src/withdrawal.rs index 679c80cab6a0..49d4e5e31269 100644 --- a/crates/primitives-traits/src/withdrawal.rs +++ b/crates/primitives-traits/src/withdrawal.rs @@ -65,6 +65,23 @@ impl Withdrawals { } } +impl<'a> IntoIterator for &'a Withdrawals { + type Item = &'a Withdrawal; + type IntoIter = core::slice::Iter<'a, Withdrawal>; + fn into_iter(self) -> Self::IntoIter { + self.iter() + } +} + +impl<'a> IntoIterator for &'a mut Withdrawals { + type Item = &'a mut Withdrawal; + type IntoIter = core::slice::IterMut<'a, Withdrawal>; + + fn into_iter(self) -> Self::IntoIter { + self.iter_mut() + } +} + #[cfg(test)] mod tests { use super::*; diff --git a/crates/trie/trie/src/prefix_set/mod.rs b/crates/trie/trie/src/prefix_set/mod.rs index f6a8789e0105..228e0abee3c0 100644 --- a/crates/trie/trie/src/prefix_set/mod.rs +++ b/crates/trie/trie/src/prefix_set/mod.rs @@ -177,6 +177,14 @@ impl PrefixSet { } } +impl<'a> IntoIterator for &'a PrefixSet { + type IntoIter = std::slice::Iter<'a, reth_trie_common::Nibbles>; + type Item = &'a reth_trie_common::Nibbles; + fn into_iter(self) -> Self::IntoIter { + self.iter() + } +} + #[cfg(test)] mod tests { use super::*; From 8d55e6bb5d8fd39e5e6e46dd8b22373516eda69b Mon Sep 17 00:00:00 2001 From: Paul Wackerow <54227730+wackerow@users.noreply.github.com> Date: Mon, 1 Jul 2024 11:23:37 -0600 Subject: [PATCH 22/27] fix: typo in book intro (#9228) --- book/intro.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/book/intro.md b/book/intro.md index f945d694e6ce..077cfed30883 100644 --- a/book/intro.md +++ b/book/intro.md @@ -5,8 +5,7 @@ _Documentation for Reth users and developers._ Reth (short for Rust Ethereum, [pronunciation](https://twitter.com/kelvinfichter/status/1597653609411268608)) is an **Ethereum full node implementation that is focused on being user-friendly, highly modular, as well as being fast and efficient.** -Reth is production ready, and suitable for usage in mission-critical environments such as staking or high-uptime servi -ces. We also actively recommend professional node operators to switch to Reth in production for performance and cost reasons in use cases where high performance with great margins is required such as RPC, MEV, Indexing, Simulations, and P2P activities. +Reth is production ready, and suitable for usage in mission-critical environments such as staking or high-uptime services. We also actively recommend professional node operators to switch to Reth in production for performance and cost reasons in use cases where high performance with great margins is required such as RPC, MEV, Indexing, Simulations, and P2P activities. From 52068ccee6db987a0fd1eda606b5542551974fb4 Mon Sep 17 00:00:00 2001 From: Delweng Date: Tue, 2 Jul 2024 01:26:22 +0800 Subject: [PATCH 23/27] fix(rpc/admin): missing enode/enr in admin_peers endpoint (#9043) Signed-off-by: jsvisa --- crates/net/network-api/src/lib.rs | 6 +++ crates/net/network/src/manager.rs | 48 ++++++++++++++--- crates/net/network/src/peers.rs | 22 ++++---- crates/net/network/src/session/handle.rs | 9 ++-- crates/net/network/src/session/mod.rs | 34 ++---------- crates/rpc/rpc-api/src/admin.rs | 2 +- crates/rpc/rpc/src/admin.rs | 66 ++++++++++++++---------- 7 files changed, 110 insertions(+), 77 deletions(-) diff --git a/crates/net/network-api/src/lib.rs b/crates/net/network-api/src/lib.rs index e9cce0866fde..8efaec5f0fb7 100644 --- a/crates/net/network-api/src/lib.rs +++ b/crates/net/network-api/src/lib.rs @@ -195,6 +195,10 @@ pub struct PeerInfo { pub remote_id: PeerId, /// The client's name and version pub client_version: Arc, + /// The peer's enode + pub enode: String, + /// The peer's enr + pub enr: Option, /// The peer's address we're connected to pub remote_addr: SocketAddr, /// The local address of the connection @@ -207,6 +211,8 @@ pub struct PeerInfo { pub status: Arc, /// The timestamp when the session to that peer has been established. pub session_established: Instant, + /// The peer's connection kind + pub kind: PeerKind, } /// The direction of the connection. diff --git a/crates/net/network/src/manager.rs b/crates/net/network/src/manager.rs index b3fa43252ec1..3434e9439468 100644 --- a/crates/net/network/src/manager.rs +++ b/crates/net/network/src/manager.rs @@ -42,7 +42,7 @@ use reth_eth_wire::{ DisconnectReason, EthVersion, Status, }; use reth_metrics::common::mpsc::UnboundedMeteredSender; -use reth_network_api::{EthProtocolInfo, NetworkStatus, ReputationChangeKind}; +use reth_network_api::{EthProtocolInfo, NetworkStatus, PeerInfo, ReputationChangeKind}; use reth_network_peers::{NodeRecord, PeerId}; use reth_primitives::ForkId; use reth_provider::{BlockNumReader, BlockReader}; @@ -604,17 +604,17 @@ where } } NetworkHandleMessage::GetPeerInfos(tx) => { - let _ = tx.send(self.swarm.sessions_mut().get_peer_info()); + let _ = tx.send(self.get_peer_infos()); } NetworkHandleMessage::GetPeerInfoById(peer_id, tx) => { - let _ = tx.send(self.swarm.sessions_mut().get_peer_info_by_id(peer_id)); + let _ = tx.send(self.get_peer_info_by_id(peer_id)); } NetworkHandleMessage::GetPeerInfosByIds(peer_ids, tx) => { - let _ = tx.send(self.swarm.sessions().get_peer_infos_by_ids(peer_ids)); + let _ = tx.send(self.get_peer_infos_by_ids(peer_ids)); } NetworkHandleMessage::GetPeerInfosByPeerKind(kind, tx) => { - let peers = self.swarm.state().peers().peers_by_kind(kind); - let _ = tx.send(self.swarm.sessions().get_peer_infos_by_ids(peers)); + let peer_ids = self.swarm.state().peers().peers_by_kind(kind); + let _ = tx.send(self.get_peer_infos_by_ids(peer_ids)); } NetworkHandleMessage::AddRlpxSubProtocol(proto) => self.add_rlpx_sub_protocol(proto), NetworkHandleMessage::GetTransactionsHandle(tx) => { @@ -865,6 +865,42 @@ where } } + /// Returns [`PeerInfo`] for all connected peers + fn get_peer_infos(&self) -> Vec { + self.swarm + .sessions() + .active_sessions() + .iter() + .filter_map(|(&peer_id, session)| { + self.swarm + .state() + .peers() + .peer_by_id(peer_id) + .map(|(record, kind)| session.peer_info(&record, kind)) + }) + .collect() + } + + /// Returns [`PeerInfo`] for a given peer. + /// + /// Returns `None` if there's no active session to the peer. + fn get_peer_info_by_id(&self, peer_id: PeerId) -> Option { + self.swarm.sessions().active_sessions().get(&peer_id).and_then(|session| { + self.swarm + .state() + .peers() + .peer_by_id(peer_id) + .map(|(record, kind)| session.peer_info(&record, kind)) + }) + } + + /// Returns [`PeerInfo`] for a given peers. + /// + /// Ignore the non-active peer. + fn get_peer_infos_by_ids(&self, peer_ids: impl IntoIterator) -> Vec { + peer_ids.into_iter().filter_map(|peer_id| self.get_peer_info_by_id(peer_id)).collect() + } + /// Updates the metrics for active,established connections #[inline] fn update_active_connection_metrics(&self) { diff --git a/crates/net/network/src/peers.rs b/crates/net/network/src/peers.rs index ca80faf5c1bb..41950226282c 100644 --- a/crates/net/network/src/peers.rs +++ b/crates/net/network/src/peers.rs @@ -212,15 +212,17 @@ impl PeersManager { }) } - /// Returns the [`NodeRecord`] for the given peer id - #[allow(dead_code)] - fn peer_by_id(&self, peer_id: PeerId) -> Option { + /// Returns the `NodeRecord` and `PeerKind` for the given peer id + pub(crate) fn peer_by_id(&self, peer_id: PeerId) -> Option<(NodeRecord, PeerKind)> { self.peers.get(&peer_id).map(|v| { - NodeRecord::new_with_ports( - v.addr.tcp.ip(), - v.addr.tcp.port(), - v.addr.udp.map(|addr| addr.port()), - peer_id, + ( + NodeRecord::new_with_ports( + v.addr.tcp.ip(), + v.addr.tcp.port(), + v.addr.udp.map(|addr| addr.port()), + peer_id, + ), + v.kind, ) }) } @@ -1378,7 +1380,7 @@ mod tests { _ => unreachable!(), } - let record = peers.peer_by_id(peer).unwrap(); + let (record, _) = peers.peer_by_id(peer).unwrap(); assert_eq!(record.tcp_addr(), socket_addr); assert_eq!(record.udp_addr(), socket_addr); } @@ -1405,7 +1407,7 @@ mod tests { _ => unreachable!(), } - let record = peers.peer_by_id(peer).unwrap(); + let (record, _) = peers.peer_by_id(peer).unwrap(); assert_eq!(record.tcp_addr(), tcp_addr); assert_eq!(record.udp_addr(), udp_addr); } diff --git a/crates/net/network/src/session/handle.rs b/crates/net/network/src/session/handle.rs index b28b1e27e390..4c1a5e5315ac 100644 --- a/crates/net/network/src/session/handle.rs +++ b/crates/net/network/src/session/handle.rs @@ -11,8 +11,8 @@ use reth_eth_wire::{ errors::EthStreamError, DisconnectReason, EthVersion, Status, }; -use reth_network_api::PeerInfo; -use reth_network_peers::PeerId; +use reth_network_api::{PeerInfo, PeerKind}; +use reth_network_peers::{NodeRecord, PeerId}; use std::{io, net::SocketAddr, sync::Arc, time::Instant}; use tokio::sync::{ mpsc::{self, error::SendError}, @@ -136,10 +136,12 @@ impl ActiveSessionHandle { } /// Extracts the [`PeerInfo`] from the session handle. - pub(crate) fn peer_info(&self) -> PeerInfo { + pub(crate) fn peer_info(&self, record: &NodeRecord, kind: PeerKind) -> PeerInfo { PeerInfo { remote_id: self.remote_id, direction: self.direction, + enode: record.to_string(), + enr: None, remote_addr: self.remote_addr, local_addr: self.local_addr, capabilities: self.capabilities.clone(), @@ -147,6 +149,7 @@ impl ActiveSessionHandle { eth_version: self.version, status: self.status.clone(), session_established: self.established, + kind, } } } diff --git a/crates/net/network/src/session/mod.rs b/crates/net/network/src/session/mod.rs index 715ed59cf635..fc6f0e6a1f1e 100644 --- a/crates/net/network/src/session/mod.rs +++ b/crates/net/network/src/session/mod.rs @@ -170,6 +170,11 @@ impl SessionManager { self.secret_key } + /// Returns a borrowed reference to the active sessions. + pub const fn active_sessions(&self) -> &HashMap { + &self.active_sessions + } + /// Returns the session hello message. pub fn hello_message(&self) -> HelloMessageWithProtocols { self.hello_message.clone() @@ -587,35 +592,6 @@ impl SessionManager { } } } - - /// Returns [`PeerInfo`] for all connected peers - pub(crate) fn get_peer_info(&self) -> Vec { - self.active_sessions.values().map(ActiveSessionHandle::peer_info).collect() - } - - /// Returns [`PeerInfo`] for a given peer. - /// - /// Returns `None` if there's no active session to the peer. - pub(crate) fn get_peer_info_by_id(&self, peer_id: PeerId) -> Option { - self.active_sessions.get(&peer_id).map(ActiveSessionHandle::peer_info) - } - /// Returns [`PeerInfo`] for a given peer. - /// - /// Returns `None` if there's no active session to the peer. - pub(crate) fn get_peer_infos_by_ids( - &self, - peer_ids: impl IntoIterator, - ) -> Vec { - let mut infos = Vec::new(); - for peer_id in peer_ids { - if let Some(info) = - self.active_sessions.get(&peer_id).map(ActiveSessionHandle::peer_info) - { - infos.push(info); - } - } - infos - } } /// Events produced by the [`SessionManager`] diff --git a/crates/rpc/rpc-api/src/admin.rs b/crates/rpc/rpc-api/src/admin.rs index 173cd8ef7a98..66f8918a33cb 100644 --- a/crates/rpc/rpc-api/src/admin.rs +++ b/crates/rpc/rpc-api/src/admin.rs @@ -1,6 +1,6 @@ use jsonrpsee::{core::RpcResult, proc_macros::rpc}; use reth_network_peers::{AnyNode, NodeRecord}; -use reth_rpc_types::{admin::NodeInfo, PeerInfo}; +use reth_rpc_types::admin::{NodeInfo, PeerInfo}; /// Admin namespace rpc interface that gives access to several non-standard RPC methods. #[cfg_attr(not(feature = "client"), rpc(server, namespace = "admin"))] diff --git a/crates/rpc/rpc/src/admin.rs b/crates/rpc/rpc/src/admin.rs index f294a52c1bf3..1d59baa6e274 100644 --- a/crates/rpc/rpc/src/admin.rs +++ b/crates/rpc/rpc/src/admin.rs @@ -6,12 +6,12 @@ use async_trait::async_trait; use jsonrpsee::core::RpcResult; use reth_chainspec::ChainSpec; use reth_network_api::{NetworkInfo, PeerKind, Peers}; -use reth_network_peers::{AnyNode, NodeRecord}; +use reth_network_peers::{id2pk, AnyNode, NodeRecord}; use reth_rpc_api::AdminApiServer; use reth_rpc_server_types::ToRpcResult; -use reth_rpc_types::{ - admin::{EthProtocolInfo, NodeInfo, Ports, ProtocolInfo}, - PeerEthProtocolInfo, PeerInfo, PeerNetworkInfo, PeerProtocolsInfo, +use reth_rpc_types::admin::{ + EthInfo, EthPeerInfo, EthProtocolInfo, NodeInfo, PeerInfo, PeerNetworkInfo, PeerProtocolInfo, + Ports, ProtocolInfo, }; /// `admin` API implementation. @@ -63,33 +63,43 @@ where Ok(true) } + /// Handler for `admin_peers` async fn peers(&self) -> RpcResult> { let peers = self.network.get_all_peers().await.to_rpc_result()?; - let peers = peers - .into_iter() - .map(|peer| PeerInfo { - id: Some(peer.remote_id.to_string()), - name: peer.client_version.to_string(), - caps: peer.capabilities.capabilities().iter().map(|cap| cap.to_string()).collect(), - network: PeerNetworkInfo { - remote_address: peer.remote_addr.to_string(), - local_address: peer - .local_addr - .unwrap_or_else(|| self.network.local_addr()) - .to_string(), - }, - protocols: PeerProtocolsInfo { - eth: Some(PeerEthProtocolInfo { - difficulty: Some(peer.status.total_difficulty), - head: peer.status.blockhash.to_string(), - version: peer.status.version as u32, - }), - pip: None, - }, - }) - .collect(); + let mut infos = Vec::with_capacity(peers.len()); - Ok(peers) + for peer in peers { + if let Ok(pk) = id2pk(peer.remote_id) { + infos.push(PeerInfo { + id: pk.to_string(), + name: peer.client_version.to_string(), + enode: peer.enode, + enr: peer.enr, + caps: peer + .capabilities + .capabilities() + .iter() + .map(|cap| cap.to_string()) + .collect(), + network: PeerNetworkInfo { + remote_address: peer.remote_addr, + local_address: peer.local_addr.unwrap_or_else(|| self.network.local_addr()), + inbound: peer.direction.is_incoming(), + trusted: peer.kind.is_trusted(), + static_node: peer.kind.is_static(), + }, + protocols: PeerProtocolInfo { + eth: Some(EthPeerInfo::Info(EthInfo { + version: peer.status.version as u64, + })), + snap: None, + other: Default::default(), + }, + }) + } + } + + Ok(infos) } /// Handler for `admin_nodeInfo` From ad8ec33dc345a2581c9084363fe9a19563ff4744 Mon Sep 17 00:00:00 2001 From: Roman Krasiuk Date: Mon, 1 Jul 2024 10:39:00 -0700 Subject: [PATCH 24/27] chore(trie): return nibbles from `TrieCursor::current` (#9227) --- crates/trie/trie/src/trie.rs | 4 ++- .../trie/src/trie_cursor/database_cursors.rs | 10 +++--- crates/trie/trie/src/trie_cursor/in_memory.rs | 36 ++++++++++--------- crates/trie/trie/src/trie_cursor/mod.rs | 4 +-- crates/trie/trie/src/trie_cursor/noop.rs | 6 ++-- crates/trie/trie/src/updates.rs | 31 ++++++++++------ crates/trie/trie/src/walker.rs | 5 ++- 7 files changed, 54 insertions(+), 42 deletions(-) diff --git a/crates/trie/trie/src/trie.rs b/crates/trie/trie/src/trie.rs index 4d23bfc98187..49e8d00a2b4c 100644 --- a/crates/trie/trie/src/trie.rs +++ b/crates/trie/trie/src/trie.rs @@ -299,7 +299,9 @@ where }; trie_updates.extend( - walker_deleted_keys.into_iter().map(|key| (key, TrieOp::Delete)), + walker_deleted_keys + .into_iter() + .map(|nibbles| (TrieKey::AccountNode(nibbles), TrieOp::Delete)), ); trie_updates.extend_with_account_updates(hash_builder_updates); diff --git a/crates/trie/trie/src/trie_cursor/database_cursors.rs b/crates/trie/trie/src/trie_cursor/database_cursors.rs index 61e43c19b12c..53a64a0b09f1 100644 --- a/crates/trie/trie/src/trie_cursor/database_cursors.rs +++ b/crates/trie/trie/src/trie_cursor/database_cursors.rs @@ -1,5 +1,5 @@ use super::{TrieCursor, TrieCursorFactory}; -use crate::{updates::TrieKey, BranchNodeCompact, Nibbles, StoredNibbles, StoredNibblesSubKey}; +use crate::{BranchNodeCompact, Nibbles, StoredNibbles, StoredNibblesSubKey}; use reth_db::{tables, DatabaseError}; use reth_db_api::{ cursor::{DbCursorRO, DbDupCursorRO}, @@ -60,8 +60,8 @@ where } /// Retrieves the current key in the cursor. - fn current(&mut self) -> Result, DatabaseError> { - Ok(self.0.current()?.map(|(k, _)| TrieKey::AccountNode(k.0))) + fn current(&mut self) -> Result, DatabaseError> { + Ok(self.0.current()?.map(|(k, _)| k.0)) } } @@ -109,8 +109,8 @@ where } /// Retrieves the current value in the storage trie cursor. - fn current(&mut self) -> Result, DatabaseError> { - Ok(self.cursor.current()?.map(|(k, v)| TrieKey::StorageNode(k, v.nibbles.0))) + fn current(&mut self) -> Result, DatabaseError> { + Ok(self.cursor.current()?.map(|(_, v)| v.nibbles.0)) } } diff --git a/crates/trie/trie/src/trie_cursor/in_memory.rs b/crates/trie/trie/src/trie_cursor/in_memory.rs index f7c521f69b6b..3efd2fa5debc 100644 --- a/crates/trie/trie/src/trie_cursor/in_memory.rs +++ b/crates/trie/trie/src/trie_cursor/in_memory.rs @@ -42,7 +42,7 @@ impl<'a, CF: TrieCursorFactory> TrieCursorFactory for InMemoryTrieCursorFactory< pub struct InMemoryAccountTrieCursor<'a, C> { cursor: C, trie_updates: &'a TrieUpdatesSorted, - last_key: Option, + last_key: Option, } impl<'a, C> InMemoryAccountTrieCursor<'a, C> { @@ -56,12 +56,12 @@ impl<'a, C: TrieCursor> TrieCursor for InMemoryAccountTrieCursor<'a, C> { &mut self, key: Nibbles, ) -> Result, DatabaseError> { - if let Some((trie_key, trie_op)) = self.trie_updates.find_account_node(&key) { - self.last_key = Some(trie_key); + if let Some((nibbles, trie_op)) = self.trie_updates.find_account_node(&key) { + self.last_key = Some(nibbles); Ok(trie_op.into_update().map(|node| (key, node))) } else { let result = self.cursor.seek_exact(key)?; - self.last_key = result.as_ref().map(|(k, _)| TrieKey::AccountNode(k.clone())); + self.last_key = result.as_ref().map(|(key, _)| key.clone()); Ok(result) } } @@ -78,20 +78,22 @@ impl<'a, C: TrieCursor> TrieCursor for InMemoryAccountTrieCursor<'a, C> { .cloned(); if let Some((trie_key, trie_op)) = trie_update_entry { - let nibbles = match &trie_key { - TrieKey::AccountNode(nibbles) => nibbles.clone(), + let nibbles = match trie_key { + TrieKey::AccountNode(nibbles) => { + self.last_key = Some(nibbles.clone()); + nibbles + } _ => panic!("Invalid trie key"), }; - self.last_key = Some(trie_key); return Ok(trie_op.into_update().map(|node| (nibbles, node))) } let result = self.cursor.seek(key)?; - self.last_key = result.as_ref().map(|(k, _)| TrieKey::AccountNode(k.clone())); + self.last_key = result.as_ref().map(|(key, _)| key.clone()); Ok(result) } - fn current(&mut self) -> Result, DatabaseError> { + fn current(&mut self) -> Result, DatabaseError> { if self.last_key.is_some() { Ok(self.last_key.clone()) } else { @@ -108,7 +110,7 @@ pub struct InMemoryStorageTrieCursor<'a, C> { trie_update_index: usize, trie_updates: &'a TrieUpdatesSorted, hashed_address: B256, - last_key: Option, + last_key: Option, } impl<'a, C> InMemoryStorageTrieCursor<'a, C> { @@ -129,8 +131,7 @@ impl<'a, C: TrieCursor> TrieCursor for InMemoryStorageTrieCursor<'a, C> { Ok(trie_op.into_update().map(|node| (key, node))) } else { let result = self.cursor.seek_exact(key)?; - self.last_key = - result.as_ref().map(|(k, _)| TrieKey::StorageNode(self.hashed_address, k.clone())); + self.last_key = result.as_ref().map(|(key, _)| key.clone()); Ok(result) } } @@ -151,20 +152,21 @@ impl<'a, C: TrieCursor> TrieCursor for InMemoryStorageTrieCursor<'a, C> { trie_update_entry.filter(|(k, _)| matches!(k, TrieKey::StorageNode(_, _))) { let nibbles = match trie_key { - TrieKey::StorageNode(_, nibbles) => nibbles.clone(), + TrieKey::StorageNode(_, nibbles) => { + self.last_key = Some(nibbles.clone()); + nibbles.clone() + } _ => panic!("this should not happen!"), }; - self.last_key = Some(trie_key.clone()); return Ok(trie_op.as_update().map(|node| (nibbles, node.clone()))) } let result = self.cursor.seek(key)?; - self.last_key = - result.as_ref().map(|(k, _)| TrieKey::StorageNode(self.hashed_address, k.clone())); + self.last_key = result.as_ref().map(|(key, _)| key.clone()); Ok(result) } - fn current(&mut self) -> Result, DatabaseError> { + fn current(&mut self) -> Result, DatabaseError> { if self.last_key.is_some() { Ok(self.last_key.clone()) } else { diff --git a/crates/trie/trie/src/trie_cursor/mod.rs b/crates/trie/trie/src/trie_cursor/mod.rs index a8e0a01cf093..e5160a5526a1 100644 --- a/crates/trie/trie/src/trie_cursor/mod.rs +++ b/crates/trie/trie/src/trie_cursor/mod.rs @@ -1,4 +1,4 @@ -use crate::{updates::TrieKey, BranchNodeCompact, Nibbles}; +use crate::{BranchNodeCompact, Nibbles}; use reth_db::DatabaseError; use reth_primitives::B256; @@ -51,5 +51,5 @@ pub trait TrieCursor: Send + Sync { -> Result, DatabaseError>; /// Get the current entry. - fn current(&mut self) -> Result, DatabaseError>; + fn current(&mut self) -> Result, DatabaseError>; } diff --git a/crates/trie/trie/src/trie_cursor/noop.rs b/crates/trie/trie/src/trie_cursor/noop.rs index c55bdb80f2c5..e49c90613d37 100644 --- a/crates/trie/trie/src/trie_cursor/noop.rs +++ b/crates/trie/trie/src/trie_cursor/noop.rs @@ -1,5 +1,5 @@ use super::{TrieCursor, TrieCursorFactory}; -use crate::{updates::TrieKey, BranchNodeCompact, Nibbles}; +use crate::{BranchNodeCompact, Nibbles}; use reth_db::DatabaseError; use reth_primitives::B256; @@ -49,7 +49,7 @@ impl TrieCursor for NoopAccountTrieCursor { } /// Retrieves the current cursor position within the account trie. - fn current(&mut self) -> Result, DatabaseError> { + fn current(&mut self) -> Result, DatabaseError> { Ok(None) } } @@ -77,7 +77,7 @@ impl TrieCursor for NoopStorageTrieCursor { } /// Retrieves the current cursor position within storage tries. - fn current(&mut self) -> Result, DatabaseError> { + fn current(&mut self) -> Result, DatabaseError> { Ok(None) } } diff --git a/crates/trie/trie/src/updates.rs b/crates/trie/trie/src/updates.rs index b982c945591d..181f2b82d1d5 100644 --- a/crates/trie/trie/src/updates.rs +++ b/crates/trie/trie/src/updates.rs @@ -133,7 +133,9 @@ impl TrieUpdates { ) { // Add updates from trie walker. let (_, deleted_keys) = walker.split(); - self.extend(deleted_keys.into_iter().map(|key| (key, TrieOp::Delete))); + self.extend( + deleted_keys.into_iter().map(|nibbles| (TrieKey::AccountNode(nibbles), TrieOp::Delete)), + ); // Add account node updates from hash builder. let (_, hash_builder_updates) = hash_builder.split(); @@ -154,7 +156,11 @@ impl TrieUpdates { ) { // Add updates from trie walker. let (_, deleted_keys) = walker.split(); - self.extend(deleted_keys.into_iter().map(|key| (key, TrieOp::Delete))); + self.extend( + deleted_keys + .into_iter() + .map(|nibbles| (TrieKey::StorageNode(hashed_address, nibbles), TrieOp::Delete)), + ); // Add storage node updates from hash builder. let (_, hash_builder_updates) = hash_builder.split(); @@ -248,11 +254,12 @@ pub struct TrieUpdatesSorted { impl TrieUpdatesSorted { /// Find the account node with the given nibbles. - pub fn find_account_node(&self, key: &Nibbles) -> Option<(TrieKey, TrieOp)> { - self.trie_operations - .iter() - .find(|(k, _)| matches!(k, TrieKey::AccountNode(nibbles) if nibbles == key)) - .cloned() + pub fn find_account_node(&self, key: &Nibbles) -> Option<(Nibbles, TrieOp)> { + self.trie_operations.iter().find_map(|(k, op)| { + k.as_account_node_key() + .filter(|nibbles| nibbles == &key) + .map(|nibbles| (nibbles.clone(), op.clone())) + }) } /// Find the storage node with the given hashed address and key. @@ -260,9 +267,11 @@ impl TrieUpdatesSorted { &self, hashed_address: &B256, key: &Nibbles, - ) -> Option<(TrieKey, TrieOp)> { - self.trie_operations.iter().find(|(k, _)| { - matches!(k, TrieKey::StorageNode(address, nibbles) if address == hashed_address && nibbles == key) - }).cloned() + ) -> Option<(Nibbles, TrieOp)> { + self.trie_operations.iter().find_map(|(k, op)| { + k.as_storage_node_key() + .filter(|(address, nibbles)| address == &hashed_address && nibbles == &key) + .map(|(_, nibbles)| (nibbles.clone(), op.clone())) + }) } } diff --git a/crates/trie/trie/src/walker.rs b/crates/trie/trie/src/walker.rs index 990b7fb74d52..64a68ea17de2 100644 --- a/crates/trie/trie/src/walker.rs +++ b/crates/trie/trie/src/walker.rs @@ -1,7 +1,6 @@ use crate::{ prefix_set::PrefixSet, trie_cursor::{CursorSubNode, TrieCursor}, - updates::TrieKey, BranchNodeCompact, Nibbles, }; use reth_db::DatabaseError; @@ -24,7 +23,7 @@ pub struct TrieWalker { /// A `PrefixSet` representing the changes to be applied to the trie. pub changes: PrefixSet, /// The retained trie node keys that need to be deleted. - deleted_keys: Option>, + deleted_keys: Option>, } impl TrieWalker { @@ -45,7 +44,7 @@ impl TrieWalker { } /// Split the walker into stack and trie updates. - pub fn split(mut self) -> (Vec, HashSet) { + pub fn split(mut self) -> (Vec, HashSet) { let keys = self.deleted_keys.take(); (self.stack, keys.unwrap_or_default()) } From 116d7a3f1b587d05d81fc18f0f6cbdf154d99b93 Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Mon, 1 Jul 2024 20:01:39 +0200 Subject: [PATCH 25/27] chore: disable discovery for --dev (#9229) --- crates/e2e-test-utils/src/lib.rs | 9 +++------ crates/node/core/src/node_config.rs | 15 ++++++++++++++- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/crates/e2e-test-utils/src/lib.rs b/crates/e2e-test-utils/src/lib.rs index 925b09b91210..e55a9a24ba2e 100644 --- a/crates/e2e-test-utils/src/lib.rs +++ b/crates/e2e-test-utils/src/lib.rs @@ -58,15 +58,12 @@ where let mut nodes: Vec> = Vec::with_capacity(num_nodes); for idx in 0..num_nodes { - let mut node_config = NodeConfig::test() + let node_config = NodeConfig::test() .with_chain(chain_spec.clone()) .with_network(network_config.clone()) .with_unused_ports() - .with_rpc(RpcServerArgs::default().with_unused_ports().with_http()); - - if is_dev { - node_config = node_config.dev(); - } + .with_rpc(RpcServerArgs::default().with_unused_ports().with_http()) + .set_dev(is_dev); let span = span!(Level::INFO, "node", idx); let _enter = span.enter(); diff --git a/crates/node/core/src/node_config.rs b/crates/node/core/src/node_config.rs index 8f9ff42f9eae..1f5bea21beb8 100644 --- a/crates/node/core/src/node_config.rs +++ b/crates/node/core/src/node_config.rs @@ -155,12 +155,25 @@ impl NodeConfig { .with_unused_ports() } - /// Sets --dev mode for the node + /// Sets --dev mode for the node. + /// + /// In addition to setting the `--dev` flag, this also: + /// - disables discovery in [`NetworkArgs`]. pub const fn dev(mut self) -> Self { self.dev.dev = true; + self.network.discovery.disable_discovery = true; self } + /// Sets --dev mode for the node [`NodeConfig::dev`], if `dev` is true. + pub const fn set_dev(self, dev: bool) -> Self { + if dev { + self.dev() + } else { + self + } + } + /// Set the data directory args for the node pub fn with_datadir_args(mut self, datadir_args: DatadirArgs) -> Self { self.datadir = datadir_args; From 6eca557dbe6cd51e0956e110ae928856b3022773 Mon Sep 17 00:00:00 2001 From: Dan Cline <6798349+Rjected@users.noreply.github.com> Date: Mon, 1 Jul 2024 17:02:39 -0400 Subject: [PATCH 26/27] feat: add pruning related persistence API (#9232) --- crates/engine/tree/src/persistence.rs | 49 ++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/crates/engine/tree/src/persistence.rs b/crates/engine/tree/src/persistence.rs index cbbe50d051fe..6b1afe94d3ab 100644 --- a/crates/engine/tree/src/persistence.rs +++ b/crates/engine/tree/src/persistence.rs @@ -105,6 +105,18 @@ impl Persistence { fn remove_blocks_above(&self, _block_number: u64) -> Vec { todo!("implement this") } + + /// Prunes block data before the given block hash according to the configured prune + /// configuration. + fn prune_before(&self, _block_hash: B256) { + todo!("implement this") + } + + /// Removes static file related data from the database, depending on the current block height in + /// existing static files. + fn clean_static_file_duplicates(&self) { + todo!("implement this") + } } impl Persistence @@ -135,7 +147,6 @@ where while let Ok(action) = self.incoming.recv() { match action { PersistenceAction::RemoveBlocksAbove((new_tip_num, sender)) => { - // spawn blocking so we can poll the thread later let output = self.remove_blocks_above(new_tip_num); sender.send(output).unwrap(); } @@ -147,6 +158,14 @@ where self.write(blocks).unwrap(); sender.send(last_block_hash).unwrap(); } + PersistenceAction::PruneBefore((block_hash, sender)) => { + self.prune_before(block_hash); + sender.send(()).unwrap(); + } + PersistenceAction::CleanStaticFileDuplicates(sender) => { + self.clean_static_file_duplicates(); + sender.send(()).unwrap(); + } } } } @@ -161,6 +180,14 @@ pub enum PersistenceAction { /// Removes the blocks above the given block number from the database. RemoveBlocksAbove((u64, oneshot::Sender>)), + + /// Prune associated block data before the given hash, according to already-configured prune + /// modes. + PruneBefore((B256, oneshot::Sender<()>)), + + /// Trigger a read of static file data, and delete data depending on the highest block in each + /// static file segment. + CleanStaticFileDuplicates(oneshot::Sender<()>), } /// A handle to the persistence task @@ -198,4 +225,24 @@ impl PersistenceHandle { .expect("should be able to send"); rx.await.expect("todo: err handling") } + + /// Tells the persistence task to remove block data before the given hash, according to the + /// configured prune config. + pub async fn prune_before(&self, block_hash: B256) { + let (tx, rx) = oneshot::channel(); + self.sender + .send(PersistenceAction::PruneBefore((block_hash, tx))) + .expect("should be able to send"); + rx.await.expect("todo: err handling") + } + + /// Tells the persistence task to read static file data, and delete data depending on the + /// highest block in each static file segment. + pub async fn clean_static_file_duplicates(&self) { + let (tx, rx) = oneshot::channel(); + self.sender + .send(PersistenceAction::CleanStaticFileDuplicates(tx)) + .expect("should be able to send"); + rx.await.expect("todo: err handling") + } } From 82770b0922380584e17ecd91cd06d9d0f81a16df Mon Sep 17 00:00:00 2001 From: joshieDo <93316087+joshieDo@users.noreply.github.com> Date: Tue, 2 Jul 2024 12:31:09 +0200 Subject: [PATCH 27/27] chore: move `fill_block_env` to `ConfigureEvmEnv` (#9238) --- crates/evm/src/lib.rs | 50 ++++++++- crates/primitives/src/header.rs | 69 ++++++++++++ crates/primitives/src/revm/env.rs | 116 +------------------- crates/rpc/rpc-eth-api/src/helpers/state.rs | 15 ++- 4 files changed, 127 insertions(+), 123 deletions(-) diff --git a/crates/evm/src/lib.rs b/crates/evm/src/lib.rs index b57969de8e61..e5e9dbdf7122 100644 --- a/crates/evm/src/lib.rs +++ b/crates/evm/src/lib.rs @@ -16,8 +16,7 @@ use core::ops::Deref; use reth_chainspec::ChainSpec; use reth_primitives::{ - revm::env::fill_block_env, Address, Header, TransactionSigned, TransactionSignedEcRecovered, - U256, + header::block_coinbase, Address, Header, TransactionSigned, TransactionSignedEcRecovered, U256, }; use revm::{inspector_handle_register, Database, Evm, EvmBuilder, GetInspector}; use revm_primitives::{BlockEnv, CfgEnvWithHandlerCfg, EnvWithHandlerCfg, SpecId, TxEnv}; @@ -126,8 +125,46 @@ pub trait ConfigureEvmEnv: Send + Sync + Unpin + Clone + 'static { total_difficulty: U256, ); + /// Fill [`BlockEnv`] field according to the chain spec and given header + fn fill_block_env( + &self, + block_env: &mut BlockEnv, + chain_spec: &ChainSpec, + header: &Header, + after_merge: bool, + ) { + let coinbase = block_coinbase(chain_spec, header, after_merge); + Self::fill_block_env_with_coinbase(block_env, header, after_merge, coinbase); + } + + /// Fill block environment with coinbase. + fn fill_block_env_with_coinbase( + block_env: &mut BlockEnv, + header: &Header, + after_merge: bool, + coinbase: Address, + ) { + block_env.number = U256::from(header.number); + block_env.coinbase = coinbase; + block_env.timestamp = U256::from(header.timestamp); + if after_merge { + block_env.prevrandao = Some(header.mix_hash); + block_env.difficulty = U256::ZERO; + } else { + block_env.difficulty = header.difficulty; + block_env.prevrandao = None; + } + block_env.basefee = U256::from(header.base_fee_per_gas.unwrap_or_default()); + block_env.gas_limit = U256::from(header.gas_limit); + + // EIP-4844 excess blob gas of this block, introduced in Cancun + if let Some(excess_blob_gas) = header.excess_blob_gas { + block_env.set_blob_excess_gas_and_price(excess_blob_gas); + } + } + /// Convenience function to call both [`fill_cfg_env`](ConfigureEvmEnv::fill_cfg_env) and - /// [`fill_block_env`]. + /// [`ConfigureEvmEnv::fill_block_env`]. fn fill_cfg_and_block_env( cfg: &mut CfgEnvWithHandlerCfg, block_env: &mut BlockEnv, @@ -137,6 +174,11 @@ pub trait ConfigureEvmEnv: Send + Sync + Unpin + Clone + 'static { ) { Self::fill_cfg_env(cfg, chain_spec, header, total_difficulty); let after_merge = cfg.handler_cfg.spec_id >= SpecId::MERGE; - fill_block_env(block_env, chain_spec, header, after_merge); + Self::fill_block_env_with_coinbase( + block_env, + header, + after_merge, + block_coinbase(chain_spec, header, after_merge), + ); } } diff --git a/crates/primitives/src/header.rs b/crates/primitives/src/header.rs index ea80328e7528..b3d9095ff07b 100644 --- a/crates/primitives/src/header.rs +++ b/crates/primitives/src/header.rs @@ -1,12 +1,71 @@ //! Header types. +use crate::{recover_signer_unchecked, Address, Bytes}; use alloy_rlp::{Decodable, Encodable}; use bytes::BufMut; +use reth_chainspec::{Chain, ChainSpec}; use reth_codecs::derive_arbitrary; use serde::{Deserialize, Serialize}; pub use reth_primitives_traits::{Header, HeaderError, SealedHeader}; +/// Return the coinbase address for the given header and chain spec. +pub fn block_coinbase(chain_spec: &ChainSpec, header: &Header, after_merge: bool) -> Address { + // Clique consensus fills the EXTRA_SEAL (last 65 bytes) of the extra data with the + // signer's signature. + // + // On the genesis block, the extra data is filled with zeros, so we should not attempt to + // recover the signer on the genesis block. + // + // From EIP-225: + // + // * `EXTRA_SEAL`: Fixed number of extra-data suffix bytes reserved for signer seal. + // * 65 bytes fixed as signatures are based on the standard `secp256k1` curve. + // * Filled with zeros on genesis block. + if chain_spec.chain == Chain::goerli() && !after_merge && header.number > 0 { + recover_header_signer(header).unwrap_or_else(|err| { + panic!( + "Failed to recover goerli Clique Consensus signer from header ({}, {}) using extradata {}: {:?}", + header.number, header.hash_slow(), header.extra_data, err + ) + }) + } else { + header.beneficiary + } +} + +/// Error type for recovering Clique signer from a header. +#[derive(Debug, thiserror_no_std::Error)] +pub enum CliqueSignerRecoveryError { + /// Header extradata is too short. + #[error("Invalid extra data length")] + InvalidExtraData, + /// Recovery failed. + #[error("Invalid signature: {0}")] + InvalidSignature(#[from] secp256k1::Error), +} + +/// Recover the account from signed header per clique consensus rules. +pub fn recover_header_signer(header: &Header) -> Result { + let extra_data_len = header.extra_data.len(); + // Fixed number of extra-data suffix bytes reserved for signer signature. + // 65 bytes fixed as signatures are based on the standard secp256k1 curve. + // Filled with zeros on genesis block. + let signature_start_byte = extra_data_len - 65; + let signature: [u8; 65] = header.extra_data[signature_start_byte..] + .try_into() + .map_err(|_| CliqueSignerRecoveryError::InvalidExtraData)?; + let seal_hash = { + let mut header_to_seal = header.clone(); + header_to_seal.extra_data = Bytes::from(header.extra_data[..signature_start_byte].to_vec()); + header_to_seal.hash_slow() + }; + + // TODO: this is currently unchecked recovery, does this need to be checked w.r.t EIP-2? + recover_signer_unchecked(&signature, &seal_hash.0) + .map_err(CliqueSignerRecoveryError::InvalidSignature) +} + /// Represents the direction for a headers request depending on the `reverse` field of the request. /// > The response must contain a number of block headers, of rising number when reverse is 0, /// > falling when 1 @@ -87,6 +146,7 @@ impl From for bool { #[cfg(test)] mod tests { + use super::*; use crate::{ address, b256, bloom, bytes, hex, Address, Bytes, Header, HeadersDirection, B256, U256, }; @@ -353,4 +413,13 @@ mod tests { Header::decode(&mut data.as_slice()) .expect_err("blob_gas_used size should make this header decoding fail"); } + + #[test] + fn test_recover_genesis_goerli_signer() { + // just ensures that `block_coinbase` does not panic on the genesis block + let chain_spec = reth_chainspec::GOERLI.clone(); + let header = chain_spec.genesis_header(); + let block_coinbase = block_coinbase(&chain_spec, &header, false); + assert_eq!(block_coinbase, header.beneficiary); + } } diff --git a/crates/primitives/src/revm/env.rs b/crates/primitives/src/revm/env.rs index 6cc81128c2a0..5c7ae7b0d5de 100644 --- a/crates/primitives/src/revm/env.rs +++ b/crates/primitives/src/revm/env.rs @@ -1,9 +1,7 @@ use crate::{ - recover_signer_unchecked, - revm_primitives::{BlockEnv, Env, TxEnv}, - Address, Bytes, Header, TxKind, B256, U256, + revm_primitives::{Env, TxEnv}, + Address, Bytes, TxKind, B256, U256, }; -use reth_chainspec::{Chain, ChainSpec}; use alloy_eips::{eip4788::BEACON_ROOTS_ADDRESS, eip7002::WITHDRAWAL_REQUEST_PREDEPLOY_ADDRESS}; #[cfg(feature = "optimism")] @@ -12,101 +10,6 @@ use revm_primitives::OptimismFields; #[cfg(not(feature = "std"))] use alloc::vec::Vec; -/// Fill block environment from Block. -pub fn fill_block_env( - block_env: &mut BlockEnv, - chain_spec: &ChainSpec, - header: &Header, - after_merge: bool, -) { - let coinbase = block_coinbase(chain_spec, header, after_merge); - fill_block_env_with_coinbase(block_env, header, after_merge, coinbase); -} - -/// Fill block environment with coinbase. -#[inline] -pub fn fill_block_env_with_coinbase( - block_env: &mut BlockEnv, - header: &Header, - after_merge: bool, - coinbase: Address, -) { - block_env.number = U256::from(header.number); - block_env.coinbase = coinbase; - block_env.timestamp = U256::from(header.timestamp); - if after_merge { - block_env.prevrandao = Some(header.mix_hash); - block_env.difficulty = U256::ZERO; - } else { - block_env.difficulty = header.difficulty; - block_env.prevrandao = None; - } - block_env.basefee = U256::from(header.base_fee_per_gas.unwrap_or_default()); - block_env.gas_limit = U256::from(header.gas_limit); - - // EIP-4844 excess blob gas of this block, introduced in Cancun - if let Some(excess_blob_gas) = header.excess_blob_gas { - block_env.set_blob_excess_gas_and_price(excess_blob_gas); - } -} - -/// Return the coinbase address for the given header and chain spec. -pub fn block_coinbase(chain_spec: &ChainSpec, header: &Header, after_merge: bool) -> Address { - // Clique consensus fills the EXTRA_SEAL (last 65 bytes) of the extra data with the - // signer's signature. - // - // On the genesis block, the extra data is filled with zeros, so we should not attempt to - // recover the signer on the genesis block. - // - // From EIP-225: - // - // * `EXTRA_SEAL`: Fixed number of extra-data suffix bytes reserved for signer seal. - // * 65 bytes fixed as signatures are based on the standard `secp256k1` curve. - // * Filled with zeros on genesis block. - if chain_spec.chain == Chain::goerli() && !after_merge && header.number > 0 { - recover_header_signer(header).unwrap_or_else(|err| { - panic!( - "Failed to recover goerli Clique Consensus signer from header ({}, {}) using extradata {}: {:?}", - header.number, header.hash_slow(), header.extra_data, err - ) - }) - } else { - header.beneficiary - } -} - -/// Error type for recovering Clique signer from a header. -#[derive(Debug, thiserror_no_std::Error)] -pub enum CliqueSignerRecoveryError { - /// Header extradata is too short. - #[error("Invalid extra data length")] - InvalidExtraData, - /// Recovery failed. - #[error("Invalid signature: {0}")] - InvalidSignature(#[from] secp256k1::Error), -} - -/// Recover the account from signed header per clique consensus rules. -pub fn recover_header_signer(header: &Header) -> Result { - let extra_data_len = header.extra_data.len(); - // Fixed number of extra-data suffix bytes reserved for signer signature. - // 65 bytes fixed as signatures are based on the standard secp256k1 curve. - // Filled with zeros on genesis block. - let signature_start_byte = extra_data_len - 65; - let signature: [u8; 65] = header.extra_data[signature_start_byte..] - .try_into() - .map_err(|_| CliqueSignerRecoveryError::InvalidExtraData)?; - let seal_hash = { - let mut header_to_seal = header.clone(); - header_to_seal.extra_data = Bytes::from(header.extra_data[..signature_start_byte].to_vec()); - header_to_seal.hash_slow() - }; - - // TODO: this is currently unchecked recovery, does this need to be checked w.r.t EIP-2? - recover_signer_unchecked(&signature, &seal_hash.0) - .map_err(CliqueSignerRecoveryError::InvalidSignature) -} - /// Fill transaction environment with the EIP-4788 system contract message data. /// /// This requirements for the beacon root contract call defined by @@ -195,18 +98,3 @@ fn fill_tx_env_with_system_contract_call( // disable the base fee check for this call by setting the base fee to zero env.block.basefee = U256::ZERO; } - -#[cfg(test)] -mod tests { - use super::*; - use reth_chainspec::GOERLI; - - #[test] - fn test_recover_genesis_goerli_signer() { - // just ensures that `block_coinbase` does not panic on the genesis block - let chain_spec = GOERLI.clone(); - let header = chain_spec.genesis_header(); - let block_coinbase = block_coinbase(&chain_spec, &header, false); - assert_eq!(block_coinbase, header.beneficiary); - } -} diff --git a/crates/rpc/rpc-eth-api/src/helpers/state.rs b/crates/rpc/rpc-eth-api/src/helpers/state.rs index 80859b929b7b..34424e94fcdf 100644 --- a/crates/rpc/rpc-eth-api/src/helpers/state.rs +++ b/crates/rpc/rpc-eth-api/src/helpers/state.rs @@ -2,11 +2,11 @@ //! RPC methods. use futures::Future; -use reth_primitives::{ - revm::env::fill_block_env_with_coinbase, Address, BlockId, BlockNumberOrTag, Bytes, Header, - B256, U256, +use reth_evm::ConfigureEvmEnv; +use reth_primitives::{Address, BlockId, BlockNumberOrTag, Bytes, Header, B256, U256}; +use reth_provider::{ + BlockIdReader, ChainSpecProvider, StateProvider, StateProviderBox, StateProviderFactory, }; -use reth_provider::{BlockIdReader, StateProvider, StateProviderBox, StateProviderFactory}; use reth_rpc_eth_types::{ EthApiError, EthResult, EthStateCache, PendingBlockEnv, RpcInvalidTransactionError, }; @@ -209,7 +209,12 @@ pub trait LoadState { let (cfg, mut block_env, _) = self.evm_env_at(header.parent_hash.into()).await?; let after_merge = cfg.handler_cfg.spec_id >= SpecId::MERGE; - fill_block_env_with_coinbase(&mut block_env, header, after_merge, header.beneficiary); + self.evm_config().fill_block_env( + &mut block_env, + &LoadPendingBlock::provider(self).chain_spec(), + header, + after_merge, + ); Ok((cfg, block_env)) }

`jllY!)NNLQZA-<0Ir`%x^GVUn;ZSUc09B;IkCmm*rtkd{0WE!W$YQYCc$OJ}A0wYcB2pa)@A|R8djCk1Yef zn@|km<>ysb%5XKr$k} zd)dL@{piFmz2@nr49o21$*y(kwv3bJufm+0PD_b3X)$Y8shXvSn5K-e>8bo*nMmgF zlGxh3$mUZAr34Bu5V9w~88$-`J0)*JzSpqT%slV2V`!$0!J*?MVBI&mJ5`SJS{Umo zTdh*}igRCFN(v6q7Jk`Bg{ZTKKh6i; z$p)GaPg?tBKhzEO2{ofvUvbYAv^_UwpFek}@*pujDJN^4HR}_uiFlCsLTQV&rbcnq zL6U!J`Yje4_!rSV91A7_4^ic4x4W$!;GX<`@G%FWo0nBJ&!3NWEYdMdOP{lLADbPn zVC*HiF9lCFm)|!||Gk;0a`O5dCp*t(G&5_NpTX z#{HGYZW^pf<*qIo-F5hgVW4z98HZR#{0yYODE|s}Ib13tHQ4*EAzsB49DDmsIQm&y z+1B$g@xv!_EfX5(?|J8VF&RzYdZo3{Z-*bR?>`+H&%Eq;Z-A$x-T6JEg6!q}*yqA? zWCi|C1Q4ww%a0<=25zG3`Egj2;5)s-4eEhvi+F)c%G>QzF)Eby~u$b>Bex|tF}iATZ*iv+!$6JYQ2o5yKOJN_Kh(f zgs8n}Svn0`r){FgQi|xb`{RjtM|+>!4u3=4dr45K!<`E(dZokE#mkl$>+0AlO??oB zc&g;HvWgoK#fa&}wOh%rm~}n;Nx!Oc^#{B>>)9z?n8Ik+lAXq(W~|GTT! z1R`3ZUGtkHmvmZUK|GXVqkoQIq(1TuOP3G)_|?k_j7~@!djjt#C3CgWUK7*hY!Yjq zt0i^q2NoJ?8KJX@G5d^$eJ|U@uQnLd7(2i7WoMkrqu;5+n|cC!LOtK2H%PP#r6mh{ zUeI|f#e9gU;;4Th{G~!w#`I~)gLRfaUkhvpRK4wT|hbf=K*asSC15Ey%6_`8lo=%Dx9zOHRtj;LyE9Ky@CRHu5?VFeyJL zBY41lpF4+7Bw9Z51D+_PFyk^-_Mhj@`Uc!C57deeF5&YiX1S?{d5Yu5Raa6aVZgtPz8 zv-f}R-*${FAqH1%LR8)vN!5O8Fh5pEsgd}f(Wv%qMk9dSl$u7@98;^(ON#a^7a5mxOdbe%}n_SBff4;|EvCLKylVH)}NUT1NEcC6O_~5?>Gp zEvTr5IEWGYf>8JWeO`JI7fJIw&+KhN65~%0DAo87k{H$=dLM5hQIdVPaL1>aTa#Xf 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