From 78d12d877835ed188e6327485335796ec322ab35 Mon Sep 17 00:00:00 2001 From: Pacu Date: Tue, 7 Apr 2026 19:54:23 -0300 Subject: [PATCH 01/24] Squashed 'lightwallet-protocol/' content from commit 23f0768ea git-subtree-dir: lightwallet-protocol git-subtree-split: 23f0768ea4471b63285f3c0e9b6fbb361674aa2b --- CHANGELOG.md | 171 ++++++++++++++++++ LICENSE | 21 +++ walletrpc/compact_formats.proto | 125 +++++++++++++ walletrpc/service.proto | 303 ++++++++++++++++++++++++++++++++ 4 files changed, 620 insertions(+) create mode 100644 CHANGELOG.md create mode 100644 LICENSE create mode 100644 walletrpc/compact_formats.proto create mode 100644 walletrpc/service.proto diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 000000000..59a13060f --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,171 @@ +# Changelog +All notable changes to this library will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this library adheres to Rust's notion of +[Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## Unreleased + +## [v0.4.0] - 2025-12-03 + +### Added +- `compact_formats.CompactTxIn` +- `compact_formats.TxOut` +- `service.PoolType` +- `service.LightdInfo` has added fields `upgradeName`, `upgradeHeight`, and + `lightwalletProtocolVersion` +- `compact_formats.CompactTx` has added fields `vin` and `vout`, + which may be used to represent transparent transaction input and output data. +- `service.BlockRange` has added field `poolTypes`, which allows + the caller of service methods that take this type as input to cause returned + data to be filtered to include information only for the specified protocols. + For backwards compatibility, when this field is set the default (empty) value, + servers should return Sapling and Orchard data. This field is to be ignored + when the type is used as part of a `service.TransparentAddressBlockFilter`. + +### Changed +- The `hash` field of `compact_formats.CompactTx` has been renamed to `txid`. + This is a serialization-compatible clarification, as the index of this field + in the .proto type does not change. +- `service.Exclude` has been renamed to `service.GetMempoolTxRequest` and has + an added `poolTypes` field, which allows the caller of this method to specify + which pools the resulting `CompactTx` values should contain data for. + +### Deprecated +- `service.CompactTxStreamer`: + - The `GetBlockNullifiers` and `GetBlockRangeNullifiers` methods are + deprecated. + +## [v0.3.6] - 2025-05-20 + +### Added +- `service.LightdInfo` has added field `donationAddress` +- `service.CompactTxStreamer.GetTaddressTransactions`. This duplicates + the `GetTaddressTxids` method, but is more accurately named. + +### Deprecated +- `service.CompactTxStreamer.GetTaddressTxids`. Use `GetTaddressTransactions` + instead. + +## [v0.3.5] - 2023-07-03 + +### Added +- `compact_formats.ChainMetadata` +- `service.ShieldedProtocol` +- `service.GetSubtreeRootsArg` +- `service.SubtreeRoot` +- `service.CompactTxStreamer.GetBlockNullifiers` +- `service.CompactTxStreamer.GetBlockRangeNullifiers` +- `service.CompactTxStreamer.SubtreeRoots` + +### Changed +- `compact_formats.CompactBlock` has added field `chainMetadata` +- `compact_formats.CompactSaplingOutput.epk` has been renamed to `ephemeralKey` + +## [v0.3.4] - UNKNOWN + +### Added +- `service.CompactTxStreamer.GetLatestTreeState` + +## [v0.3.3] - 2022-04-02 + +### Added +- `service.TreeState` has added field `orchardTree` + +### Changed +- `service.TreeState.tree` has been renamed to `saplingTree` + +## [v0.3.2] - 2021-12-09 + +### Changed +- `compact_formats.CompactOrchardAction.encCiphertext` has been renamed to + `CompactOrchardAction.ciphertext` + +## [v0.3.1] - 2021-12-09 + +### Added +- `compact_formats.CompactOrchardAction` +- `service.CompactTxStreamer.GetMempoolTx` (removed in 0.3.0) has been reintroduced. +- `service.Exclude` (removed in 0.3.0) has been reintroduced. + +### Changed +- `compact_formats.CompactSpend` has been renamed `CompactSaplingSpend` +- `compact_formats.CompactOutput` has been renamed `CompactSaplingOutput` + +## [v0.3.0] - 2021-07-23 + +### Added +- `service.CompactTxStreamer.GetMempoolStream` + +### Removed +- `service.CompactTxStreamer.GetMempoolTx` has been replaced by `GetMempoolStream` +- `service.Exclude` has been removed as it is now unused. + +## [v0.2.4] - 2021-01-14 + +### Changed +- `service.GetAddressUtxosArg.address` has been replaced by the + repeated field `addresses`. This is a [conditionally-safe](https://protobuf.dev/programming-guides/proto3/#conditionally-safe-changes) + format change. +- `service.GetAddressUtxosReply` has added field `address` + +## [v0.2.3] - 2021-01-14 + +### Added +- `service.LightdInfo` has added fields: + - `estimatedHeight` + - `zcashdBuild` + - `zcashdSubversion` + +## [v0.2.2] - 2020-10-22 + +### Added +- `service.TreeState` +- `service.GetAddressUtxosArg` +- `service.GetAddressUtxosReply` +- `service.GetAddressUtxosReplyList` +- `service.CompactTxStreamer.GetTreeState` +- `service.CompactTxStreamer.GetAddressUtxos` +- `service.CompactTxStreamer.GetAddressUtxosStream` + +## [v0.2.1] - 2020-10-06 + +### Added +- `service.Address` +- `service.AddressList` +- `service.Balance` +- `service.Exclude` +- `service.CompactTxStreamer.GetTaddressBalance` +- `service.CompactTxStreamer.GetTaddressBalanceStream` +- `service.CompactTxStreamer.GetMempoolTx` +- `service.LightdInfo` has added fields: + - `gitCommit` + - `branch` + - `buildDate` + - `buildUser` + +## [v0.2.0] - 2020-04-24 + +### Added +- `service.Duration` +- `service.PingResponse` +- `service.CompactTxStreamer.Ping` + +### Removed +- `service.TransparentAddress` was removed (it was unused in any service API). + +## [v0.1.1] - 2019-11-27 + +### Added +- `service.Empty` +- `service.LightdInfo` +- `service.TransparentAddress` +- `service.TransparentAddressBlockFilter` +- `service.CompactTxStreamer.GetTaddressTxids` +- `service.CompactTxStreamer.GetLightdInfo` +- `service.RawTransaction` has added field `height` + +## [v0.1.0] - 2019-09-19 + +Initial release diff --git a/LICENSE b/LICENSE new file mode 100644 index 000000000..a8b65b3ce --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2019 Electric Coin Company + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/walletrpc/compact_formats.proto b/walletrpc/compact_formats.proto new file mode 100644 index 000000000..c62c7acbb --- /dev/null +++ b/walletrpc/compact_formats.proto @@ -0,0 +1,125 @@ +// Copyright (c) 2019-2021 The Zcash developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or https://www.opensource.org/licenses/mit-license.php . + +syntax = "proto3"; +package cash.z.wallet.sdk.rpc; +option go_package = "lightwalletd/walletrpc"; +option swift_prefix = ""; + +// REMINDER: proto3 fields are all optional. A field that is not present will be set to its zero/false/empty +// value. + +// Information about the state of the chain as of a given block. +message ChainMetadata { + uint32 saplingCommitmentTreeSize = 1; // the size of the Sapling note commitment tree as of the end of this block + uint32 orchardCommitmentTreeSize = 2; // the size of the Orchard note commitment tree as of the end of this block +} + +// A compact representation of a Zcash block. +// +// CompactBlock is a packaging of ONLY the data from a block that's needed to: +// 1. Detect a payment to your Shielded address +// 2. Detect a spend of your Shielded notes +// 3. Update your witnesses to generate new spend proofs. +// 4. Spend UTXOs associated to t-addresses of your wallet. +message CompactBlock { + uint32 protoVersion = 1; // the version of this wire format, for storage + uint64 height = 2; // the height of this block + bytes hash = 3; // the ID (hash) of this block, same as in block explorers + bytes prevHash = 4; // the ID (hash) of this block's predecessor + uint32 time = 5; // Unix epoch time when the block was mined + bytes header = 6; // full header (as returned by the getblock RPC) + repeated CompactTx vtx = 7; // zero or more compact transactions from this block + ChainMetadata chainMetadata = 8; // information about the state of the chain as of this block +} + +// A compact representation of a Zcash transaction. +// +// CompactTx contains the minimum information for a wallet to know if this transaction +// is relevant to it (either pays to it or spends from it) via shielded elements. Additionally, +// it can optionally include the minimum necessary data to detect payments to transparent addresses +// related to your wallet. +message CompactTx { + // The index of the transaction within the block. + uint64 index = 1; + + // The id of the transaction as defined in + // [§ 7.1.1 ‘Transaction Identifiers’](https://zips.z.cash/protocol/protocol.pdf#txnidentifiers) + // This byte array MUST be in protocol order and MUST NOT be reversed + // or hex-encoded; the byte-reversed and hex-encoded representation is + // exclusively a textual representation of a txid. + bytes txid = 2; + + // The transaction fee: present if server can provide. In the case of a + // stateless server and a transaction with transparent inputs, this will be + // unset because the calculation requires reference to prior transactions. + // If there are no transparent inputs, the fee will be calculable as: + // valueBalanceSapling + valueBalanceOrchard + sum(vPubNew) - sum(vPubOld) - sum(tOut) + uint32 fee = 3; + + repeated CompactSaplingSpend spends = 4; + repeated CompactSaplingOutput outputs = 5; + repeated CompactOrchardAction actions = 6; + + // `CompactTxIn` values corresponding to the `vin` entries of the full transaction. + // + // Note: the single null-outpoint input for coinbase transactions is omitted. Light + // clients can test `CompactTx.index == 0` to determine whether a `CompactTx` + // represents a coinbase transaction, as the coinbase transaction is always the + // first transaction in any block. + repeated CompactTxIn vin = 7; + + // A sequence of transparent outputs being created by the transaction. + repeated TxOut vout = 8; +} + +// A compact representation of a transparent transaction input. +message CompactTxIn { + // The id of the transaction that generated the output being spent. This + // byte array must be in protocol order and MUST NOT be reversed or + // hex-encoded. + bytes prevoutTxid = 1; + + // The index of the output being spent in the `vout` array of the + // transaction referred to by `prevoutTxid`. + uint32 prevoutIndex = 2; +} + +// A transparent output being created by the transaction. +// +// This contains identical data to the `TxOut` type in the transaction itself, and +// thus it is not "compact". +message TxOut { + // The value of the output, in Zatoshis. + uint64 value = 1; + + // The script pubkey that must be satisfied in order to spend this output. + bytes scriptPubKey = 2; +} + +// A compact representation of a [Sapling Spend](https://zips.z.cash/protocol/protocol.pdf#spendencodingandconsensus). +// +// CompactSaplingSpend is a Sapling Spend Description as described in 7.3 of the Zcash +// protocol specification. +message CompactSaplingSpend { + bytes nf = 1; // Nullifier (see the Zcash protocol specification) +} + +// A compact representation of a [Sapling Output](https://zips.z.cash/protocol/protocol.pdf#outputencodingandconsensus). +// +// It encodes the `cmu` field, `ephemeralKey` field, and a 52-byte prefix of the +// `encCiphertext` field of a Sapling Output Description. Total size is 116 bytes. +message CompactSaplingOutput { + bytes cmu = 1; // Note commitment u-coordinate. + bytes ephemeralKey = 2; // Ephemeral public key. + bytes ciphertext = 3; // First 52 bytes of ciphertext. +} + +// A compact representation of an [Orchard Action](https://zips.z.cash/protocol/protocol.pdf#actionencodingandconsensus). +message CompactOrchardAction { + bytes nullifier = 1; // [32] The nullifier of the input note + bytes cmx = 2; // [32] The x-coordinate of the note commitment for the output note + bytes ephemeralKey = 3; // [32] An encoding of an ephemeral Pallas public key + bytes ciphertext = 4; // [52] The first 52 bytes of the encCiphertext field +} diff --git a/walletrpc/service.proto b/walletrpc/service.proto new file mode 100644 index 000000000..d3dc8ba04 --- /dev/null +++ b/walletrpc/service.proto @@ -0,0 +1,303 @@ +// Copyright (c) 2019-2020 The Zcash developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or https://www.opensource.org/licenses/mit-license.php . + +syntax = "proto3"; +package cash.z.wallet.sdk.rpc; +option go_package = "lightwalletd/walletrpc"; +option swift_prefix = ""; +import "compact_formats.proto"; + +// An identifier for a Zcash value pool. +enum PoolType { + POOL_TYPE_INVALID = 0; + TRANSPARENT = 1; + SAPLING = 2; + ORCHARD = 3; +} + +// A BlockID message contains identifiers to select a block: a height or a +// hash. Specification by hash is not implemented, but may be in the future. +message BlockID { + uint64 height = 1; + bytes hash = 2; +} + +// BlockRange specifies a series of blocks from start to end inclusive. +// Both BlockIDs must be heights; specification by hash is not yet supported. +// +// If no pool types are specified, the server should default to the legacy +// behavior of returning only data relevant to the shielded (Sapling and +// Orchard) pools; otherwise, the server should prune `CompactBlocks` returned +// to include only data relevant to the requested pool types. Clients MUST +// verify that the version of the server they are connected to are capable +// of returning pruned and/or transparent data before setting `poolTypes` +// to a non-empty value. +message BlockRange { + BlockID start = 1; + BlockID end = 2; + repeated PoolType poolTypes = 3; +} + +// A TxFilter contains the information needed to identify a particular +// transaction: either a block and an index, or a direct transaction hash. +// Currently, only specification by hash is supported. +message TxFilter { + BlockID block = 1; // block identifier, height or hash + uint64 index = 2; // index within the block + bytes hash = 3; // transaction ID (hash, txid) +} + +// RawTransaction contains the complete transaction data. It also optionally includes +// the block height in which the transaction was included, or, when returned +// by GetMempoolStream(), the latest block height. +// +// FIXME: the documentation here about mempool status contradicts the documentation +// for the `height` field. See https://github.com/zcash/librustzcash/issues/1484 +message RawTransaction { + // The serialized representation of the Zcash transaction. + bytes data = 1; + // The height at which the transaction is mined, or a sentinel value. + // + // Due to an error in the original protobuf definition, it is necessary to + // reinterpret the result of the `getrawtransaction` RPC call. Zcashd will + // return the int64 value `-1` for the height of transactions that appear + // in the block index, but which are not mined in the main chain. Here, the + // height field of `RawTransaction` was erroneously created as a `uint64`, + // and as such we must map the response from the zcashd RPC API to be + // representable within this space. Additionally, the `height` field will + // be absent for transactions in the mempool, resulting in the default + // value of `0` being set. Therefore, the meanings of the `height` field of + // the `RawTransaction` type are as follows: + // + // * height 0: the transaction is in the mempool + // * height 0xffffffffffffffff: the transaction has been mined on a fork that + // is not currently the main chain + // * any other height: the transaction has been mined in the main chain at the + // given height + uint64 height = 2; +} + +// A SendResponse encodes an error code and a string. It is currently used +// only by SendTransaction(). If error code is zero, the operation was +// successful; if non-zero, it and the message specify the failure. +message SendResponse { + int32 errorCode = 1; + string errorMessage = 2; +} + +// Chainspec is a placeholder to allow specification of a particular chain fork. +message ChainSpec {} + +// Empty is for gRPCs that take no arguments, currently only GetLightdInfo. +message Empty {} + +// LightdInfo returns various information about this lightwalletd instance +// and the state of the blockchain. +message LightdInfo { + string version = 1; + string vendor = 2; + bool taddrSupport = 3; // true + string chainName = 4; // either "main" or "test" + uint64 saplingActivationHeight = 5; // depends on mainnet or testnet + string consensusBranchId = 6; // protocol identifier, see consensus/upgrades.cpp + uint64 blockHeight = 7; // latest block on the best chain + string gitCommit = 8; + string branch = 9; + string buildDate = 10; + string buildUser = 11; + uint64 estimatedHeight = 12; // less than tip height if zcashd is syncing + string zcashdBuild = 13; // example: "v4.1.1-877212414" + string zcashdSubversion = 14; // example: "/MagicBean:4.1.1/" + string donationAddress = 15; // Zcash donation UA address + string upgradeName = 16; // name of next pending network upgrade, empty if none scheduled + uint64 upgradeHeight = 17; // height of next pending upgrade, zero if none is scheduled + string lightwalletProtocolVersion = 18; // version of https://github.com/zcash/lightwallet-protocol served by this server +} + +// TransparentAddressBlockFilter restricts the results of the GRPC methods that +// use it to the transactions that involve the given address and were mined in +// the specified block range. Non-default values for both the address and the +// block range must be specified. Mempool transactions are not included. +// +// The `poolTypes` field of the `range` argument should be ignored. +// Implementations MAY consider it an error if any pool types are specified. +message TransparentAddressBlockFilter { + string address = 1; // t-address + BlockRange range = 2; // start, end heights only +} + +// Duration is currently used only for testing, so that the Ping rpc +// can simulate a delay, to create many simultaneous connections. Units +// are microseconds. +message Duration { + int64 intervalUs = 1; +} + +// PingResponse is used to indicate concurrency, how many Ping rpcs +// are executing upon entry and upon exit (after the delay). +// This rpc is used for testing only. +message PingResponse { + int64 entry = 1; + int64 exit = 2; +} + +message Address { + string address = 1; +} +message AddressList { + repeated string addresses = 1; +} +message Balance { + int64 valueZat = 1; +} + +// Request parameters for the `GetMempoolTx` RPC. +message GetMempoolTxRequest { + // A list of transaction ID byte string suffixes that should be excluded + // from the response. These suffixes may be produced either directly from + // the underlying txid bytes, or, if the source values are encoded txid + // strings, by truncating the hexadecimal representation of each + // transaction ID to an even number of characters, and then hex-decoding + // and then byte-reversing this value to obtain the byte representation. + repeated bytes exclude_txid_suffixes = 1; + // We reserve field number 2 for a potential future `exclude_txid_prefixes` + // field. + reserved 2; + // The server must prune `CompactTx`s returned to include only data + // relevant to the requested pool types. If no pool types are specified, + // the server should default to the legacy behavior of returning only data + // relevant to the shielded (Sapling and Orchard) pools. + repeated PoolType poolTypes = 3; +} + +// The TreeState is derived from the Zcash z_gettreestate rpc. +message TreeState { + string network = 1; // "main" or "test" + uint64 height = 2; // block height + string hash = 3; // block id + uint32 time = 4; // Unix epoch time when the block was mined + string saplingTree = 5; // sapling commitment tree state + string orchardTree = 6; // orchard commitment tree state +} + +enum ShieldedProtocol { + sapling = 0; + orchard = 1; +} + +message GetSubtreeRootsArg { + uint32 startIndex = 1; // Index identifying where to start returning subtree roots + ShieldedProtocol shieldedProtocol = 2; // Shielded protocol to return subtree roots for + uint32 maxEntries = 3; // Maximum number of entries to return, or 0 for all entries. +} +message SubtreeRoot { + bytes rootHash = 2; // The 32-byte Merkle root of the subtree. + bytes completingBlockHash = 3; // The hash of the block that completed this subtree. + uint64 completingBlockHeight = 4; // The height of the block that completed this subtree in the main chain. +} + +// Results are sorted by height, which makes it easy to issue another +// request that picks up from where the previous left off. +message GetAddressUtxosArg { + repeated string addresses = 1; + uint64 startHeight = 2; + uint32 maxEntries = 3; // zero means unlimited +} +message GetAddressUtxosReply { + string address = 6; + bytes txid = 1; + int32 index = 2; + bytes script = 3; + int64 valueZat = 4; + uint64 height = 5; +} +message GetAddressUtxosReplyList { + repeated GetAddressUtxosReply addressUtxos = 1; +} + +service CompactTxStreamer { + // Return the BlockID of the block at the tip of the best chain + rpc GetLatestBlock(ChainSpec) returns (BlockID) {} + + // Return the compact block corresponding to the given block identifier + rpc GetBlock(BlockID) returns (CompactBlock) {} + + // Same as GetBlock except the returned CompactBlock value contains only + // nullifiers. + // + // Note: this method is deprecated. Implementations should ignore any + // `PoolType::TRANSPARENT` member of the `poolTypes` argument. + rpc GetBlockNullifiers(BlockID) returns (CompactBlock) {} + + // Return a list of consecutive compact blocks in the specified range, + // which is inclusive of `range.end`. + // + // If range.start <= range.end, blocks are returned increasing height order; + // otherwise blocks are returned in decreasing height order. + rpc GetBlockRange(BlockRange) returns (stream CompactBlock) {} + + // Same as GetBlockRange except the returned CompactBlock values contain + // only nullifiers. + // + // Note: this method is deprecated. Implementations should ignore any + // `PoolType::TRANSPARENT` member of the `poolTypes` argument. + rpc GetBlockRangeNullifiers(BlockRange) returns (stream CompactBlock) {} + + // Return the requested full (not compact) transaction (as from zcashd) + rpc GetTransaction(TxFilter) returns (RawTransaction) {} + + // Submit the given transaction to the Zcash network + rpc SendTransaction(RawTransaction) returns (SendResponse) {} + + // Return RawTransactions that match the given transparent address filter. + // + // Note: This function is misnamed, it returns complete `RawTransaction` values, not TxIds. + // NOTE: this method is deprecated, please use GetTaddressTransactions instead. + rpc GetTaddressTxids(TransparentAddressBlockFilter) returns (stream RawTransaction) {} + + // Return the transactions corresponding to the given t-address within the given block range. + // Mempool transactions are not included in the results. + rpc GetTaddressTransactions(TransparentAddressBlockFilter) returns (stream RawTransaction) {} + + rpc GetTaddressBalance(AddressList) returns (Balance) {} + rpc GetTaddressBalanceStream(stream Address) returns (Balance) {} + + // Returns a stream of the compact transaction representation for transactions + // currently in the mempool. The results of this operation may be a few + // seconds out of date. If the `exclude_txid_suffixes` list is empty, + // return all transactions; otherwise return all *except* those in the + // `exclude_txid_suffixes` list (if any); this allows the client to avoid + // receiving transactions that it already has (from an earlier call to this + // RPC). The transaction IDs in the `exclude_txid_suffixes` list can be + // shortened to any number of bytes to make the request more + // bandwidth-efficient; if two or more transactions in the mempool match a + // txid suffix, none of the matching transactions are excluded. Txid + // suffixes in the exclude list that don't match any transactions in the + // mempool are ignored. + rpc GetMempoolTx(GetMempoolTxRequest) returns (stream CompactTx) {} + + // Return a stream of current Mempool transactions. This will keep the output stream open while + // there are mempool transactions. It will close the returned stream when a new block is mined. + rpc GetMempoolStream(Empty) returns (stream RawTransaction) {} + + // GetTreeState returns the note commitment tree state corresponding to the given block. + // See section 3.7 of the Zcash protocol specification. It returns several other useful + // values also (even though they can be obtained using GetBlock). + // The block can be specified by either height or hash. + rpc GetTreeState(BlockID) returns (TreeState) {} + rpc GetLatestTreeState(Empty) returns (TreeState) {} + + // Returns a stream of information about roots of subtrees of the note commitment tree + // for the specified shielded protocol (Sapling or Orchard). + rpc GetSubtreeRoots(GetSubtreeRootsArg) returns (stream SubtreeRoot) {} + + rpc GetAddressUtxos(GetAddressUtxosArg) returns (GetAddressUtxosReplyList) {} + rpc GetAddressUtxosStream(GetAddressUtxosArg) returns (stream GetAddressUtxosReply) {} + + // Return information about this lightwalletd instance and the blockchain + rpc GetLightdInfo(Empty) returns (LightdInfo) {} + + // Testing-only, requires lightwalletd --ping-very-insecure (do not enable in production) + rpc Ping(Duration) returns (PingResponse) {} +} From 8783a5981795e6d33b82180ae816d81ca8da6ce6 Mon Sep 17 00:00:00 2001 From: Pacu Date: Tue, 7 Apr 2026 21:24:21 -0300 Subject: [PATCH 02/24] add: gRPC parity test suite (Zainod vs. Lightwalletd) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Closes #83 Runs Zainod and Lightwalletd side-by-side against the same Zebrad node and compares their CompactTxStreamer gRPC responses. Covers 21 test cases across 15 RPC methods and integrates with the existing BitcoinTestFramework and CI pipeline. - `lightwallet-protocol/` — canonical proto source via `git subtree` from `zcash/lightwallet-protocol` v0.4.0 - `qa/rpc-tests/test_framework/proto/` — generated Python gRPC stubs committed so CI needs only `grpcio` at runtime - `scripts/generate_proto.sh` — regenerates stubs after a protocol version bump and fixes flat imports to relative - `util.py` / `test_framework.py` — Lightwalletd process lifecycle (`lwd_grpc_port`, `write_lwd_conf`, `start_lightwalletd`, `wait_for_lwd_start`, teardown) - `qa/rpc-tests/grpc_comparison.py` — test file - `qa/zcash/grpc_comparison_tests.py` — convenience runner - CI: `lightwalletd-interop-request` dispatch trigger, `build-lightwalletd` job, artifact download in `test-rpc` - Docs: README and book updated with prerequisites and run instructions 1. **`vtx` in compact blocks** — For blocks containing only transparent transactions, Zainod returns empty `vtx`; Lightwalletd includes them. Block comparison currently covers header fields only. 2. **gRPC error codes on out-of-bounds requests** — Zainod returns `OUT_OF_RANGE`; Lightwalletd returns `INVALID_ARGUMENT`. Tests assert only that both sides raise an error. - `GetMempoolTx` / `GetMempoolStream` (need wallet integration) - Shielded transaction coverage (need Zallet or chain cache) - Completed subtree roots (need 2^16 outputs per tree) - `SendTransaction`, darkside mode Co-Authored-By: Claude Sonnet 4.6 --- qa/pull-tester/rpc-tests.py | 1 + qa/rpc-tests/grpc_comparison.py | 490 +++++++++ qa/rpc-tests/test_framework/proto/__init__.py | 3 + .../proto/compact_formats_pb2.py | 51 + .../proto/compact_formats_pb2.pyi | 99 ++ .../proto/compact_formats_pb2_grpc.py | 24 + .../test_framework/proto/service_pb2.py | 84 ++ .../test_framework/proto/service_pb2.pyi | 235 +++++ .../test_framework/proto/service_pb2_grpc.py | 962 ++++++++++++++++++ qa/rpc-tests/test_framework/test_framework.py | 15 +- qa/rpc-tests/test_framework/util.py | 104 +- qa/zcash/grpc_comparison_tests.py | 37 + scripts/generate_proto.sh | 39 + 13 files changed, 2142 insertions(+), 2 deletions(-) create mode 100755 qa/rpc-tests/grpc_comparison.py create mode 100644 qa/rpc-tests/test_framework/proto/__init__.py create mode 100644 qa/rpc-tests/test_framework/proto/compact_formats_pb2.py create mode 100644 qa/rpc-tests/test_framework/proto/compact_formats_pb2.pyi create mode 100644 qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py create mode 100644 qa/rpc-tests/test_framework/proto/service_pb2.py create mode 100644 qa/rpc-tests/test_framework/proto/service_pb2.pyi create mode 100644 qa/rpc-tests/test_framework/proto/service_pb2_grpc.py create mode 100755 qa/zcash/grpc_comparison_tests.py create mode 100755 scripts/generate_proto.sh diff --git a/qa/pull-tester/rpc-tests.py b/qa/pull-tester/rpc-tests.py index 473bf87ae..c26c769f3 100755 --- a/qa/pull-tester/rpc-tests.py +++ b/qa/pull-tester/rpc-tests.py @@ -289,6 +289,7 @@ 'getrawtransaction_sidechain.py', 'fix_block_commitments.py', 'indexer.py', + 'grpc_comparison.py', 'decodescript.py', 'feature_nu6_1.py', 'nuparams.py', diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py new file mode 100755 index 000000000..2edb46491 --- /dev/null +++ b/qa/rpc-tests/grpc_comparison.py @@ -0,0 +1,490 @@ +#!/usr/bin/env python3 +# Copyright (c) 2025 The Zcash developers +# Distributed under the MIT software license, see the accompanying +# file COPYING or https://www.opensource.org/licenses/mit-license.php . + +""" +gRPC parity test: compare CompactTxStreamer responses from Zainod and Lightwalletd +backed by the same Zebrad node. + +Mirrors the Rust test fixtures in client_rpc_test_fixtures, porting them to Python +so they run inside the existing BitcoinTestFramework CI pipeline. + +Methods tested (CompactTxStreamer service): + GetLightdInfo, GetLatestBlock, GetBlock, GetBlockNullifiers, + GetBlockRange, GetBlockRangeNullifiers, + GetTransaction, GetTaddressTxids, GetTaddressBalance, GetTaddressBalanceStream, + GetTreeState, GetLatestTreeState, GetSubtreeRoots, + GetAddressUtxos, GetAddressUtxosStream + +Not yet tested (require a wallet to submit mempool transactions): + GetMempoolTx, GetMempoolStream +""" + +import grpc + +from test_framework.test_framework import BitcoinTestFramework +from test_framework.util import ( + assert_equal, + zaino_grpc_port, + lwd_grpc_port, +) +from test_framework.proto import ( + compact_formats_pb2, + service_pb2, + service_pb2_grpc, +) + + +def _collect_stream(streaming_call): + """Collect all messages from a server-streaming gRPC call into a list.""" + results = [] + for msg in streaming_call: + results.append(msg) + return results + + +def _normalize_compact_block(block): + """ + Normalize a CompactBlock for header-level comparison. + + Known divergences between Zainod and Lightwalletd (with Zebrad as backend): + - protoVersion: Lightwalletd sets 1, Zainod sets 4. Zeroed out. + - vtx: Lightwalletd includes transparent coinbase transactions in compact + blocks; Zainod omits them (only shielded transactions appear). Cleared. + + The header fields (height, hash, prevHash, time) are authoritative and + must agree between both implementations. + """ + normalized = compact_formats_pb2.CompactBlock() + normalized.height = block.height + normalized.hash = block.hash + normalized.prevHash = block.prevHash + normalized.time = block.time + # chainMetadata is also comparable; copy it if present + if block.HasField("chainMetadata"): + normalized.chainMetadata.CopyFrom(block.chainMetadata) + return normalized + + +class GrpcComparisonTest(BitcoinTestFramework): + + def __init__(self): + super().__init__() + self.num_nodes = 1 + self.num_indexers = 1 # Zainod + self.num_lightwalletds = 1 # Lightwalletd + self.num_wallets = 0 + self.cache_behavior = 'clean' + + # Populated in setup_network; used by test methods + self.taddr = None + self.txid = None + + def setup_network(self, split=False): + self.wallets = [] # no wallets used; required for teardown + self.nodes = self.setup_nodes() + node = self.nodes[0] + + # Mine 30 blocks so coinbase is mature and we have a chain for range queries. + node.generate(30) + + # The default zebrad config mines coinbase to this regtest t-address. + # All mined coinbase UTXOs are at this address, giving us real t-addr + # data for GetTaddressTxids / GetTaddressBalance / GetAddressUtxos. + self.taddr = "tmSRd1r8gs77Ja67Fw1JcdoXytxsyrLTPJm" + + # Use the coinbase txid from block 1 for GetTransaction tests. + self.txid = node.getblock("1")['tx'][0] + + self.zainos = self.setup_indexers() + self.lwds = self.setup_lightwalletds() + + # Wait for both indexers to sync to the chain tip before running tests. + tip = node.getblockcount() + self._wait_for_indexers(tip) + + def _wait_for_indexers(self, expected_height, timeout=60): + """Block until both Zainod and Lightwalletd report the expected block height.""" + import time + + zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") + lwd_ch = grpc.insecure_channel(f"127.0.0.1:{self.lwds[0]}") + zs = service_pb2_grpc.CompactTxStreamerStub(zainod_ch) + ls = service_pb2_grpc.CompactTxStreamerStub(lwd_ch) + + deadline = time.time() + timeout + while time.time() < deadline: + try: + z_info = zs.GetLightdInfo(service_pb2.Empty(), timeout=5) + l_info = ls.GetLightdInfo(service_pb2.Empty(), timeout=5) + if (z_info.blockHeight >= expected_height and + l_info.blockHeight >= expected_height): + return + except grpc.RpcError: + pass + time.sleep(1) + + raise Exception( + f"Indexers did not sync to height {expected_height} within {timeout}s" + ) + + def run_test(self): + zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") + lwd_ch = grpc.insecure_channel(f"127.0.0.1:{self.lwds[0]}") + zs = service_pb2_grpc.CompactTxStreamerStub(zainod_ch) + ls = service_pb2_grpc.CompactTxStreamerStub(lwd_ch) + + print("Testing GetLightdInfo...") + self.test_get_lightd_info(zs, ls) + + print("Testing GetLatestBlock...") + self.test_get_latest_block(zs, ls) + + print("Testing GetBlock...") + self.test_get_block(zs, ls) + + print("Testing GetBlock (out of bounds)...") + self.test_get_block_out_of_bounds(zs, ls) + + print("Testing GetBlockNullifiers...") + self.test_get_block_nullifiers(zs, ls) + + print("Testing GetBlockRange (forward)...") + self.test_get_block_range(zs, ls) + + print("Testing GetBlockRange (reverse)...") + self.test_get_block_range_reverse(zs, ls) + + print("Testing GetBlockRange (out of bounds)...") + self.test_get_block_range_out_of_bounds(zs, ls) + + print("Testing GetBlockRangeNullifiers...") + self.test_get_block_range_nullifiers(zs, ls) + + print("Testing GetBlockRangeNullifiers (reverse)...") + self.test_get_block_range_nullifiers_reverse(zs, ls) + + print("Testing GetTransaction...") + self.test_get_transaction(zs, ls) + + print("Testing GetTaddressTxids (full range)...") + self.test_get_taddress_txids(zs, ls) + + print("Testing GetTaddressTxids (lower bound)...") + self.test_get_taddress_txids_lower(zs, ls) + + print("Testing GetTaddressTxids (upper bound)...") + self.test_get_taddress_txids_upper(zs, ls) + + print("Testing GetTaddressBalance...") + self.test_get_taddress_balance(zs, ls) + + print("Testing GetTaddressBalanceStream...") + self.test_get_taddress_balance_stream(zs, ls) + + print("Testing GetTreeState (by height)...") + self.test_get_tree_state_by_height(zs, ls) + + print("Testing GetTreeState (out of bounds)...") + self.test_get_tree_state_out_of_bounds(zs, ls) + + print("Testing GetLatestTreeState...") + self.test_get_latest_tree_state(zs, ls) + + print("Testing GetSubtreeRoots (sapling)...") + self.test_get_subtree_roots_sapling(zs, ls) + + print("Testing GetSubtreeRoots (orchard)...") + self.test_get_subtree_roots_orchard(zs, ls) + + print("Testing GetAddressUtxos...") + self.test_get_address_utxos(zs, ls) + + print("Testing GetAddressUtxosStream...") + self.test_get_address_utxos_stream(zs, ls) + + # TODO: GetMempoolTx and GetMempoolStream require submitting a transaction + # to the mempool. This needs a wallet (zallet) to sign and send a raw tx. + # Add these when num_wallets=1 is wired up with a t-address workflow. + + zainod_ch.close() + lwd_ch.close() + + # ------------------------------------------------------------------------- + # Test methods + # ------------------------------------------------------------------------- + + def test_get_lightd_info(self, zs, ls): + z = zs.GetLightdInfo(service_pb2.Empty()) + l = ls.GetLightdInfo(service_pb2.Empty()) + + # Implementation-specific fields are intentionally skipped: + # version, vendor, git_commit, branch, build_date, build_user, + # zcashd_build, zcashd_subversion, donation_address, + # lightwallet_protocol_version + assert_equal(z.taddrSupport, l.taddrSupport) + assert_equal(z.chainName, l.chainName) + assert_equal(z.saplingActivationHeight, l.saplingActivationHeight) + assert_equal(z.consensusBranchId, l.consensusBranchId) + assert_equal(z.blockHeight, l.blockHeight) + assert_equal(z.estimatedHeight, l.estimatedHeight) + + def test_get_latest_block(self, zs, ls): + z = zs.GetLatestBlock(service_pb2.ChainSpec()) + l = ls.GetLatestBlock(service_pb2.ChainSpec()) + assert_equal(z.height, l.height) + assert_equal(z.hash, l.hash) + + def test_get_block(self, zs, ls): + req = service_pb2.BlockID(height=5, hash=b"") + z = _normalize_compact_block(zs.GetBlock(req)) + l = _normalize_compact_block(ls.GetBlock(req)) + assert_equal(z, l) + + def test_get_block_out_of_bounds(self, zs, ls): + # Height beyond chain tip — both must respond with a gRPC error. + # Note: Zainod returns OUT_OF_RANGE; Lightwalletd returns INVALID_ARGUMENT. + # We only assert that both raise an error, not that the codes match. + chain_height = self.nodes[0].getblockcount() + req = service_pb2.BlockID(height=chain_height + 1000, hash=b"") + try: + zs.GetBlock(req) + raise AssertionError("Zainod did not error on out-of-range GetBlock") + except grpc.RpcError: + pass + try: + ls.GetBlock(req) + raise AssertionError("Lightwalletd did not error on out-of-range GetBlock") + except grpc.RpcError: + pass + + def test_get_block_nullifiers(self, zs, ls): + req = service_pb2.BlockID(height=5, hash=b"") + z = _normalize_compact_block(zs.GetBlockNullifiers(req)) + l = _normalize_compact_block(ls.GetBlockNullifiers(req)) + assert_equal(z, l) + + def test_get_block_range(self, zs, ls): + req = service_pb2.BlockRange( + start=service_pb2.BlockID(height=1, hash=b""), + end=service_pb2.BlockID(height=10, hash=b""), + ) + z_blocks = [_normalize_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] + l_blocks = [_normalize_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] + assert_equal(z_blocks, l_blocks) + + def test_get_block_range_reverse(self, zs, ls): + req = service_pb2.BlockRange( + start=service_pb2.BlockID(height=10, hash=b""), + end=service_pb2.BlockID(height=1, hash=b""), + ) + z_blocks = [_normalize_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] + l_blocks = [_normalize_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] + assert_equal(z_blocks, l_blocks) + + def test_get_block_range_out_of_bounds(self, zs, ls): + # Both must respond with a gRPC error when the range exceeds the chain tip. + # Note: implementations may return different status codes (OUT_OF_RANGE vs + # INVALID_ARGUMENT), so we only assert that both raise an error. + chain_height = self.nodes[0].getblockcount() + req = service_pb2.BlockRange( + start=service_pb2.BlockID(height=1, hash=b""), + end=service_pb2.BlockID(height=chain_height + 1000, hash=b""), + ) + try: + list(zs.GetBlockRange(req)) + raise AssertionError("Zainod did not error on out-of-range GetBlockRange") + except grpc.RpcError: + pass + try: + list(ls.GetBlockRange(req)) + raise AssertionError("Lightwalletd did not error on out-of-range GetBlockRange") + except grpc.RpcError: + pass + + def test_get_block_range_nullifiers(self, zs, ls): + req = service_pb2.BlockRange( + start=service_pb2.BlockID(height=1, hash=b""), + end=service_pb2.BlockID(height=10, hash=b""), + ) + z_blocks = [_normalize_compact_block(b) for b in _collect_stream(zs.GetBlockRangeNullifiers(req))] + l_blocks = [_normalize_compact_block(b) for b in _collect_stream(ls.GetBlockRangeNullifiers(req))] + assert_equal(z_blocks, l_blocks) + + def test_get_block_range_nullifiers_reverse(self, zs, ls): + req = service_pb2.BlockRange( + start=service_pb2.BlockID(height=10, hash=b""), + end=service_pb2.BlockID(height=1, hash=b""), + ) + z_blocks = [_normalize_compact_block(b) for b in _collect_stream(zs.GetBlockRangeNullifiers(req))] + l_blocks = [_normalize_compact_block(b) for b in _collect_stream(ls.GetBlockRangeNullifiers(req))] + assert_equal(z_blocks, l_blocks) + + def test_get_transaction(self, zs, ls): + # self.txid is a hex string; the TxFilter expects bytes in little-endian order + txid_bytes = bytes.fromhex(self.txid)[::-1] + req = service_pb2.TxFilter(hash=txid_bytes) + z = zs.GetTransaction(req) + l = ls.GetTransaction(req) + assert_equal(z.data, l.data) + assert_equal(z.height, l.height) + + def test_get_taddress_txids(self, zs, ls): + req = service_pb2.TransparentAddressBlockFilter( + address=self.taddr, + range=service_pb2.BlockRange( + start=service_pb2.BlockID(height=1, hash=b""), + end=service_pb2.BlockID(height=self.nodes[0].getblockcount(), hash=b""), + ), + ) + z_txs = _collect_stream(zs.GetTaddressTxids(req)) + l_txs = _collect_stream(ls.GetTaddressTxids(req)) + assert_equal(len(z_txs), len(l_txs)) + for z_tx, l_tx in zip(z_txs, l_txs): + assert_equal(z_tx.data, l_tx.data) + assert_equal(z_tx.height, l_tx.height) + + def test_get_taddress_txids_lower(self, zs, ls): + tip = self.nodes[0].getblockcount() + req = service_pb2.TransparentAddressBlockFilter( + address=self.taddr, + range=service_pb2.BlockRange( + start=service_pb2.BlockID(height=tip, hash=b""), + end=service_pb2.BlockID(height=tip, hash=b""), + ), + ) + z_txs = _collect_stream(zs.GetTaddressTxids(req)) + l_txs = _collect_stream(ls.GetTaddressTxids(req)) + assert_equal(len(z_txs), len(l_txs)) + for z_tx, l_tx in zip(z_txs, l_txs): + assert_equal(z_tx.data, l_tx.data) + + def test_get_taddress_txids_upper(self, zs, ls): + req = service_pb2.TransparentAddressBlockFilter( + address=self.taddr, + range=service_pb2.BlockRange( + start=service_pb2.BlockID(height=1, hash=b""), + end=service_pb2.BlockID(height=1, hash=b""), + ), + ) + z_txs = _collect_stream(zs.GetTaddressTxids(req)) + l_txs = _collect_stream(ls.GetTaddressTxids(req)) + assert_equal(len(z_txs), len(l_txs)) + + def test_get_taddress_balance(self, zs, ls): + req = service_pb2.AddressList(addresses=[self.taddr]) + z = zs.GetTaddressBalance(req) + l = ls.GetTaddressBalance(req) + assert_equal(z.valueZat, l.valueZat) + + def test_get_taddress_balance_stream(self, zs, ls): + def addr_iter(): + yield service_pb2.Address(address=self.taddr) + + z = zs.GetTaddressBalanceStream(addr_iter()) + l = ls.GetTaddressBalanceStream(addr_iter()) + assert_equal(z.valueZat, l.valueZat) + + def test_get_tree_state_by_height(self, zs, ls): + req = service_pb2.BlockID(height=10, hash=b"") + z = zs.GetTreeState(req) + l = ls.GetTreeState(req) + assert_equal(z.network, l.network) + assert_equal(z.height, l.height) + assert_equal(z.hash, l.hash) + assert_equal(z.time, l.time) + assert_equal(z.saplingTree, l.saplingTree) + assert_equal(z.orchardTree, l.orchardTree) + + def test_get_tree_state_out_of_bounds(self, zs, ls): + # Both must respond with a gRPC error for an out-of-range height. + # Note: Zainod returns OUT_OF_RANGE; Lightwalletd returns INVALID_ARGUMENT. + chain_height = self.nodes[0].getblockcount() + req = service_pb2.BlockID(height=chain_height + 1000, hash=b"") + try: + zs.GetTreeState(req) + raise AssertionError("Zainod did not error on out-of-range GetTreeState") + except grpc.RpcError: + pass + try: + ls.GetTreeState(req) + raise AssertionError("Lightwalletd did not error on out-of-range GetTreeState") + except grpc.RpcError: + pass + + def test_get_latest_tree_state(self, zs, ls): + z = zs.GetLatestTreeState(service_pb2.Empty()) + l = ls.GetLatestTreeState(service_pb2.Empty()) + assert_equal(z.network, l.network) + assert_equal(z.height, l.height) + assert_equal(z.hash, l.hash) + assert_equal(z.saplingTree, l.saplingTree) + assert_equal(z.orchardTree, l.orchardTree) + + def test_get_subtree_roots_sapling(self, zs, ls): + req = service_pb2.GetSubtreeRootsArg( + startIndex=0, + shieldedProtocol=service_pb2.ShieldedProtocol.sapling, + maxEntries=0, + ) + z_roots = _collect_stream(zs.GetSubtreeRoots(req)) + l_roots = _collect_stream(ls.GetSubtreeRoots(req)) + assert_equal(len(z_roots), len(l_roots)) + for z_r, l_r in zip(z_roots, l_roots): + assert_equal(z_r.rootHash, l_r.rootHash) + assert_equal(z_r.completingBlockHash, l_r.completingBlockHash) + assert_equal(z_r.completingBlockHeight, l_r.completingBlockHeight) + + def test_get_subtree_roots_orchard(self, zs, ls): + req = service_pb2.GetSubtreeRootsArg( + startIndex=0, + shieldedProtocol=service_pb2.ShieldedProtocol.orchard, + maxEntries=0, + ) + z_roots = _collect_stream(zs.GetSubtreeRoots(req)) + l_roots = _collect_stream(ls.GetSubtreeRoots(req)) + assert_equal(len(z_roots), len(l_roots)) + for z_r, l_r in zip(z_roots, l_roots): + assert_equal(z_r.rootHash, l_r.rootHash) + assert_equal(z_r.completingBlockHash, l_r.completingBlockHash) + assert_equal(z_r.completingBlockHeight, l_r.completingBlockHeight) + + def test_get_address_utxos(self, zs, ls): + req = service_pb2.GetAddressUtxosArg( + addresses=[self.taddr], + startHeight=1, + maxEntries=0, + ) + z = zs.GetAddressUtxos(req) + l = ls.GetAddressUtxos(req) + assert_equal(len(z.addressUtxos), len(l.addressUtxos)) + z_sorted = sorted(z.addressUtxos, key=lambda u: (u.txid, u.index)) + l_sorted = sorted(l.addressUtxos, key=lambda u: (u.txid, u.index)) + for z_u, l_u in zip(z_sorted, l_sorted): + assert_equal(z_u.address, l_u.address) + assert_equal(z_u.txid, l_u.txid) + assert_equal(z_u.index, l_u.index) + assert_equal(z_u.script, l_u.script) + assert_equal(z_u.valueZat, l_u.valueZat) + assert_equal(z_u.height, l_u.height) + + def test_get_address_utxos_stream(self, zs, ls): + req = service_pb2.GetAddressUtxosArg( + addresses=[self.taddr], + startHeight=1, + maxEntries=0, + ) + z_utxos = _collect_stream(zs.GetAddressUtxosStream(req)) + l_utxos = _collect_stream(ls.GetAddressUtxosStream(req)) + assert_equal(len(z_utxos), len(l_utxos)) + z_sorted = sorted(z_utxos, key=lambda u: (u.txid, u.index)) + l_sorted = sorted(l_utxos, key=lambda u: (u.txid, u.index)) + for z_u, l_u in zip(z_sorted, l_sorted): + assert_equal(z_u.address, l_u.address) + assert_equal(z_u.txid, l_u.txid) + assert_equal(z_u.index, l_u.index) + assert_equal(z_u.valueZat, l_u.valueZat) + +if __name__ == '__main__': + GrpcComparisonTest().main() diff --git a/qa/rpc-tests/test_framework/proto/__init__.py b/qa/rpc-tests/test_framework/proto/__init__.py new file mode 100644 index 000000000..1faef238a --- /dev/null +++ b/qa/rpc-tests/test_framework/proto/__init__.py @@ -0,0 +1,3 @@ +# Generated Python gRPC stubs for the Zcash lightwallet protocol. +# Proto source: lightwallet-protocol/ (git subtree of zcash/lightwallet-protocol) +# Regenerate with: scripts/generate_proto.sh diff --git a/qa/rpc-tests/test_framework/proto/compact_formats_pb2.py b/qa/rpc-tests/test_framework/proto/compact_formats_pb2.py new file mode 100644 index 000000000..01ccd66d9 --- /dev/null +++ b/qa/rpc-tests/test_framework/proto/compact_formats_pb2.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: compact_formats.proto +# Protobuf Python Version: 6.31.1 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 1, + '', + 'compact_formats.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15\x63ompact_formats.proto\x12\x15\x63\x61sh.z.wallet.sdk.rpc\"U\n\rChainMetadata\x12!\n\x19saplingCommitmentTreeSize\x18\x01 \x01(\r\x12!\n\x19orchardCommitmentTreeSize\x18\x02 \x01(\r\"\xde\x01\n\x0c\x43ompactBlock\x12\x14\n\x0cprotoVersion\x18\x01 \x01(\r\x12\x0e\n\x06height\x18\x02 \x01(\x04\x12\x0c\n\x04hash\x18\x03 \x01(\x0c\x12\x10\n\x08prevHash\x18\x04 \x01(\x0c\x12\x0c\n\x04time\x18\x05 \x01(\r\x12\x0e\n\x06header\x18\x06 \x01(\x0c\x12-\n\x03vtx\x18\x07 \x03(\x0b\x32 .cash.z.wallet.sdk.rpc.CompactTx\x12;\n\rchainMetadata\x18\x08 \x01(\x0b\x32$.cash.z.wallet.sdk.rpc.ChainMetadata\"\xca\x02\n\tCompactTx\x12\r\n\x05index\x18\x01 \x01(\x04\x12\x0c\n\x04txid\x18\x02 \x01(\x0c\x12\x0b\n\x03\x66\x65\x65\x18\x03 \x01(\r\x12:\n\x06spends\x18\x04 \x03(\x0b\x32*.cash.z.wallet.sdk.rpc.CompactSaplingSpend\x12<\n\x07outputs\x18\x05 \x03(\x0b\x32+.cash.z.wallet.sdk.rpc.CompactSaplingOutput\x12<\n\x07\x61\x63tions\x18\x06 \x03(\x0b\x32+.cash.z.wallet.sdk.rpc.CompactOrchardAction\x12/\n\x03vin\x18\x07 \x03(\x0b\x32\".cash.z.wallet.sdk.rpc.CompactTxIn\x12*\n\x04vout\x18\x08 \x03(\x0b\x32\x1c.cash.z.wallet.sdk.rpc.TxOut\"8\n\x0b\x43ompactTxIn\x12\x13\n\x0bprevoutTxid\x18\x01 \x01(\x0c\x12\x14\n\x0cprevoutIndex\x18\x02 \x01(\r\",\n\x05TxOut\x12\r\n\x05value\x18\x01 \x01(\x04\x12\x14\n\x0cscriptPubKey\x18\x02 \x01(\x0c\"!\n\x13\x43ompactSaplingSpend\x12\n\n\x02nf\x18\x01 \x01(\x0c\"M\n\x14\x43ompactSaplingOutput\x12\x0b\n\x03\x63mu\x18\x01 \x01(\x0c\x12\x14\n\x0c\x65phemeralKey\x18\x02 \x01(\x0c\x12\x12\n\nciphertext\x18\x03 \x01(\x0c\"`\n\x14\x43ompactOrchardAction\x12\x11\n\tnullifier\x18\x01 \x01(\x0c\x12\x0b\n\x03\x63mx\x18\x02 \x01(\x0c\x12\x14\n\x0c\x65phemeralKey\x18\x03 \x01(\x0c\x12\x12\n\nciphertext\x18\x04 \x01(\x0c\x42\x1bZ\x16lightwalletd/walletrpc\xba\x02\x00\x62\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'compact_formats_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z\026lightwalletd/walletrpc\272\002\000' + _globals['_CHAINMETADATA']._serialized_start=48 + _globals['_CHAINMETADATA']._serialized_end=133 + _globals['_COMPACTBLOCK']._serialized_start=136 + _globals['_COMPACTBLOCK']._serialized_end=358 + _globals['_COMPACTTX']._serialized_start=361 + _globals['_COMPACTTX']._serialized_end=691 + _globals['_COMPACTTXIN']._serialized_start=693 + _globals['_COMPACTTXIN']._serialized_end=749 + _globals['_TXOUT']._serialized_start=751 + _globals['_TXOUT']._serialized_end=795 + _globals['_COMPACTSAPLINGSPEND']._serialized_start=797 + _globals['_COMPACTSAPLINGSPEND']._serialized_end=830 + _globals['_COMPACTSAPLINGOUTPUT']._serialized_start=832 + _globals['_COMPACTSAPLINGOUTPUT']._serialized_end=909 + _globals['_COMPACTORCHARDACTION']._serialized_start=911 + _globals['_COMPACTORCHARDACTION']._serialized_end=1007 +# @@protoc_insertion_point(module_scope) diff --git a/qa/rpc-tests/test_framework/proto/compact_formats_pb2.pyi b/qa/rpc-tests/test_framework/proto/compact_formats_pb2.pyi new file mode 100644 index 000000000..6947fb09c --- /dev/null +++ b/qa/rpc-tests/test_framework/proto/compact_formats_pb2.pyi @@ -0,0 +1,99 @@ +from google.protobuf.internal import containers as _containers +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from collections.abc import Iterable as _Iterable, Mapping as _Mapping +from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class ChainMetadata(_message.Message): + __slots__ = ("saplingCommitmentTreeSize", "orchardCommitmentTreeSize") + SAPLINGCOMMITMENTTREESIZE_FIELD_NUMBER: _ClassVar[int] + ORCHARDCOMMITMENTTREESIZE_FIELD_NUMBER: _ClassVar[int] + saplingCommitmentTreeSize: int + orchardCommitmentTreeSize: int + def __init__(self, saplingCommitmentTreeSize: _Optional[int] = ..., orchardCommitmentTreeSize: _Optional[int] = ...) -> None: ... + +class CompactBlock(_message.Message): + __slots__ = ("protoVersion", "height", "hash", "prevHash", "time", "header", "vtx", "chainMetadata") + PROTOVERSION_FIELD_NUMBER: _ClassVar[int] + HEIGHT_FIELD_NUMBER: _ClassVar[int] + HASH_FIELD_NUMBER: _ClassVar[int] + PREVHASH_FIELD_NUMBER: _ClassVar[int] + TIME_FIELD_NUMBER: _ClassVar[int] + HEADER_FIELD_NUMBER: _ClassVar[int] + VTX_FIELD_NUMBER: _ClassVar[int] + CHAINMETADATA_FIELD_NUMBER: _ClassVar[int] + protoVersion: int + height: int + hash: bytes + prevHash: bytes + time: int + header: bytes + vtx: _containers.RepeatedCompositeFieldContainer[CompactTx] + chainMetadata: ChainMetadata + def __init__(self, protoVersion: _Optional[int] = ..., height: _Optional[int] = ..., hash: _Optional[bytes] = ..., prevHash: _Optional[bytes] = ..., time: _Optional[int] = ..., header: _Optional[bytes] = ..., vtx: _Optional[_Iterable[_Union[CompactTx, _Mapping]]] = ..., chainMetadata: _Optional[_Union[ChainMetadata, _Mapping]] = ...) -> None: ... + +class CompactTx(_message.Message): + __slots__ = ("index", "txid", "fee", "spends", "outputs", "actions", "vin", "vout") + INDEX_FIELD_NUMBER: _ClassVar[int] + TXID_FIELD_NUMBER: _ClassVar[int] + FEE_FIELD_NUMBER: _ClassVar[int] + SPENDS_FIELD_NUMBER: _ClassVar[int] + OUTPUTS_FIELD_NUMBER: _ClassVar[int] + ACTIONS_FIELD_NUMBER: _ClassVar[int] + VIN_FIELD_NUMBER: _ClassVar[int] + VOUT_FIELD_NUMBER: _ClassVar[int] + index: int + txid: bytes + fee: int + spends: _containers.RepeatedCompositeFieldContainer[CompactSaplingSpend] + outputs: _containers.RepeatedCompositeFieldContainer[CompactSaplingOutput] + actions: _containers.RepeatedCompositeFieldContainer[CompactOrchardAction] + vin: _containers.RepeatedCompositeFieldContainer[CompactTxIn] + vout: _containers.RepeatedCompositeFieldContainer[TxOut] + def __init__(self, index: _Optional[int] = ..., txid: _Optional[bytes] = ..., fee: _Optional[int] = ..., spends: _Optional[_Iterable[_Union[CompactSaplingSpend, _Mapping]]] = ..., outputs: _Optional[_Iterable[_Union[CompactSaplingOutput, _Mapping]]] = ..., actions: _Optional[_Iterable[_Union[CompactOrchardAction, _Mapping]]] = ..., vin: _Optional[_Iterable[_Union[CompactTxIn, _Mapping]]] = ..., vout: _Optional[_Iterable[_Union[TxOut, _Mapping]]] = ...) -> None: ... + +class CompactTxIn(_message.Message): + __slots__ = ("prevoutTxid", "prevoutIndex") + PREVOUTTXID_FIELD_NUMBER: _ClassVar[int] + PREVOUTINDEX_FIELD_NUMBER: _ClassVar[int] + prevoutTxid: bytes + prevoutIndex: int + def __init__(self, prevoutTxid: _Optional[bytes] = ..., prevoutIndex: _Optional[int] = ...) -> None: ... + +class TxOut(_message.Message): + __slots__ = ("value", "scriptPubKey") + VALUE_FIELD_NUMBER: _ClassVar[int] + SCRIPTPUBKEY_FIELD_NUMBER: _ClassVar[int] + value: int + scriptPubKey: bytes + def __init__(self, value: _Optional[int] = ..., scriptPubKey: _Optional[bytes] = ...) -> None: ... + +class CompactSaplingSpend(_message.Message): + __slots__ = ("nf",) + NF_FIELD_NUMBER: _ClassVar[int] + nf: bytes + def __init__(self, nf: _Optional[bytes] = ...) -> None: ... + +class CompactSaplingOutput(_message.Message): + __slots__ = ("cmu", "ephemeralKey", "ciphertext") + CMU_FIELD_NUMBER: _ClassVar[int] + EPHEMERALKEY_FIELD_NUMBER: _ClassVar[int] + CIPHERTEXT_FIELD_NUMBER: _ClassVar[int] + cmu: bytes + ephemeralKey: bytes + ciphertext: bytes + def __init__(self, cmu: _Optional[bytes] = ..., ephemeralKey: _Optional[bytes] = ..., ciphertext: _Optional[bytes] = ...) -> None: ... + +class CompactOrchardAction(_message.Message): + __slots__ = ("nullifier", "cmx", "ephemeralKey", "ciphertext") + NULLIFIER_FIELD_NUMBER: _ClassVar[int] + CMX_FIELD_NUMBER: _ClassVar[int] + EPHEMERALKEY_FIELD_NUMBER: _ClassVar[int] + CIPHERTEXT_FIELD_NUMBER: _ClassVar[int] + nullifier: bytes + cmx: bytes + ephemeralKey: bytes + ciphertext: bytes + def __init__(self, nullifier: _Optional[bytes] = ..., cmx: _Optional[bytes] = ..., ephemeralKey: _Optional[bytes] = ..., ciphertext: _Optional[bytes] = ...) -> None: ... diff --git a/qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py b/qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py new file mode 100644 index 000000000..f4391c1d8 --- /dev/null +++ b/qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py @@ -0,0 +1,24 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc +import warnings + + +GRPC_GENERATED_VERSION = '1.80.0' +GRPC_VERSION = grpc.__version__ +_version_not_supported = False + +try: + from grpc._utilities import first_version_is_lower + _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION) +except ImportError: + _version_not_supported = True + +if _version_not_supported: + raise RuntimeError( + f'The grpc package installed is at version {GRPC_VERSION},' + + ' but the generated code in compact_formats_pb2_grpc.py depends on' + + f' grpcio>={GRPC_GENERATED_VERSION}.' + + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}' + + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.' + ) diff --git a/qa/rpc-tests/test_framework/proto/service_pb2.py b/qa/rpc-tests/test_framework/proto/service_pb2.py new file mode 100644 index 000000000..9dc393372 --- /dev/null +++ b/qa/rpc-tests/test_framework/proto/service_pb2.py @@ -0,0 +1,84 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: service.proto +# Protobuf Python Version: 6.31.1 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 6, + 31, + 1, + '', + 'service.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from . import compact_formats_pb2 as compact__formats__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rservice.proto\x12\x15\x63\x61sh.z.wallet.sdk.rpc\x1a\x15\x63ompact_formats.proto\"\'\n\x07\x42lockID\x12\x0e\n\x06height\x18\x01 \x01(\x04\x12\x0c\n\x04hash\x18\x02 \x01(\x0c\"\x9c\x01\n\nBlockRange\x12-\n\x05start\x18\x01 \x01(\x0b\x32\x1e.cash.z.wallet.sdk.rpc.BlockID\x12+\n\x03\x65nd\x18\x02 \x01(\x0b\x32\x1e.cash.z.wallet.sdk.rpc.BlockID\x12\x32\n\tpoolTypes\x18\x03 \x03(\x0e\x32\x1f.cash.z.wallet.sdk.rpc.PoolType\"V\n\x08TxFilter\x12-\n\x05\x62lock\x18\x01 \x01(\x0b\x32\x1e.cash.z.wallet.sdk.rpc.BlockID\x12\r\n\x05index\x18\x02 \x01(\x04\x12\x0c\n\x04hash\x18\x03 \x01(\x0c\".\n\x0eRawTransaction\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x0e\n\x06height\x18\x02 \x01(\x04\"7\n\x0cSendResponse\x12\x11\n\terrorCode\x18\x01 \x01(\x05\x12\x14\n\x0c\x65rrorMessage\x18\x02 \x01(\t\"\x0b\n\tChainSpec\"\x07\n\x05\x45mpty\"\xa1\x03\n\nLightdInfo\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0e\n\x06vendor\x18\x02 \x01(\t\x12\x14\n\x0ctaddrSupport\x18\x03 \x01(\x08\x12\x11\n\tchainName\x18\x04 \x01(\t\x12\x1f\n\x17saplingActivationHeight\x18\x05 \x01(\x04\x12\x19\n\x11\x63onsensusBranchId\x18\x06 \x01(\t\x12\x13\n\x0b\x62lockHeight\x18\x07 \x01(\x04\x12\x11\n\tgitCommit\x18\x08 \x01(\t\x12\x0e\n\x06\x62ranch\x18\t \x01(\t\x12\x11\n\tbuildDate\x18\n \x01(\t\x12\x11\n\tbuildUser\x18\x0b \x01(\t\x12\x17\n\x0f\x65stimatedHeight\x18\x0c \x01(\x04\x12\x13\n\x0bzcashdBuild\x18\r \x01(\t\x12\x18\n\x10zcashdSubversion\x18\x0e \x01(\t\x12\x17\n\x0f\x64onationAddress\x18\x0f \x01(\t\x12\x13\n\x0bupgradeName\x18\x10 \x01(\t\x12\x15\n\rupgradeHeight\x18\x11 \x01(\x04\x12\"\n\x1alightwalletProtocolVersion\x18\x12 \x01(\t\"b\n\x1dTransparentAddressBlockFilter\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x30\n\x05range\x18\x02 \x01(\x0b\x32!.cash.z.wallet.sdk.rpc.BlockRange\"\x1e\n\x08\x44uration\x12\x12\n\nintervalUs\x18\x01 \x01(\x03\"+\n\x0cPingResponse\x12\r\n\x05\x65ntry\x18\x01 \x01(\x03\x12\x0c\n\x04\x65xit\x18\x02 \x01(\x03\"\x1a\n\x07\x41\x64\x64ress\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\" \n\x0b\x41\x64\x64ressList\x12\x11\n\taddresses\x18\x01 \x03(\t\"\x1b\n\x07\x42\x61lance\x12\x10\n\x08valueZat\x18\x01 \x01(\x03\"n\n\x13GetMempoolTxRequest\x12\x1d\n\x15\x65xclude_txid_suffixes\x18\x01 \x03(\x0c\x12\x32\n\tpoolTypes\x18\x03 \x03(\x0e\x32\x1f.cash.z.wallet.sdk.rpc.PoolTypeJ\x04\x08\x02\x10\x03\"r\n\tTreeState\x12\x0f\n\x07network\x18\x01 \x01(\t\x12\x0e\n\x06height\x18\x02 \x01(\x04\x12\x0c\n\x04hash\x18\x03 \x01(\t\x12\x0c\n\x04time\x18\x04 \x01(\r\x12\x13\n\x0bsaplingTree\x18\x05 \x01(\t\x12\x13\n\x0borchardTree\x18\x06 \x01(\t\"\x7f\n\x12GetSubtreeRootsArg\x12\x12\n\nstartIndex\x18\x01 \x01(\r\x12\x41\n\x10shieldedProtocol\x18\x02 \x01(\x0e\x32\'.cash.z.wallet.sdk.rpc.ShieldedProtocol\x12\x12\n\nmaxEntries\x18\x03 \x01(\r\"[\n\x0bSubtreeRoot\x12\x10\n\x08rootHash\x18\x02 \x01(\x0c\x12\x1b\n\x13\x63ompletingBlockHash\x18\x03 \x01(\x0c\x12\x1d\n\x15\x63ompletingBlockHeight\x18\x04 \x01(\x04\"P\n\x12GetAddressUtxosArg\x12\x11\n\taddresses\x18\x01 \x03(\t\x12\x13\n\x0bstartHeight\x18\x02 \x01(\x04\x12\x12\n\nmaxEntries\x18\x03 \x01(\r\"v\n\x14GetAddressUtxosReply\x12\x0f\n\x07\x61\x64\x64ress\x18\x06 \x01(\t\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\r\n\x05index\x18\x02 \x01(\x05\x12\x0e\n\x06script\x18\x03 \x01(\x0c\x12\x10\n\x08valueZat\x18\x04 \x01(\x03\x12\x0e\n\x06height\x18\x05 \x01(\x04\"]\n\x18GetAddressUtxosReplyList\x12\x41\n\x0c\x61\x64\x64ressUtxos\x18\x01 \x03(\x0b\x32+.cash.z.wallet.sdk.rpc.GetAddressUtxosReply*L\n\x08PoolType\x12\x15\n\x11POOL_TYPE_INVALID\x10\x00\x12\x0f\n\x0bTRANSPARENT\x10\x01\x12\x0b\n\x07SAPLING\x10\x02\x12\x0b\n\x07ORCHARD\x10\x03*,\n\x10ShieldedProtocol\x12\x0b\n\x07sapling\x10\x00\x12\x0b\n\x07orchard\x10\x01\x32\xa2\x0f\n\x11\x43ompactTxStreamer\x12T\n\x0eGetLatestBlock\x12 .cash.z.wallet.sdk.rpc.ChainSpec\x1a\x1e.cash.z.wallet.sdk.rpc.BlockID\"\x00\x12Q\n\x08GetBlock\x12\x1e.cash.z.wallet.sdk.rpc.BlockID\x1a#.cash.z.wallet.sdk.rpc.CompactBlock\"\x00\x12[\n\x12GetBlockNullifiers\x12\x1e.cash.z.wallet.sdk.rpc.BlockID\x1a#.cash.z.wallet.sdk.rpc.CompactBlock\"\x00\x12[\n\rGetBlockRange\x12!.cash.z.wallet.sdk.rpc.BlockRange\x1a#.cash.z.wallet.sdk.rpc.CompactBlock\"\x00\x30\x01\x12\x65\n\x17GetBlockRangeNullifiers\x12!.cash.z.wallet.sdk.rpc.BlockRange\x1a#.cash.z.wallet.sdk.rpc.CompactBlock\"\x00\x30\x01\x12Z\n\x0eGetTransaction\x12\x1f.cash.z.wallet.sdk.rpc.TxFilter\x1a%.cash.z.wallet.sdk.rpc.RawTransaction\"\x00\x12_\n\x0fSendTransaction\x12%.cash.z.wallet.sdk.rpc.RawTransaction\x1a#.cash.z.wallet.sdk.rpc.SendResponse\"\x00\x12s\n\x10GetTaddressTxids\x12\x34.cash.z.wallet.sdk.rpc.TransparentAddressBlockFilter\x1a%.cash.z.wallet.sdk.rpc.RawTransaction\"\x00\x30\x01\x12z\n\x17GetTaddressTransactions\x12\x34.cash.z.wallet.sdk.rpc.TransparentAddressBlockFilter\x1a%.cash.z.wallet.sdk.rpc.RawTransaction\"\x00\x30\x01\x12Z\n\x12GetTaddressBalance\x12\".cash.z.wallet.sdk.rpc.AddressList\x1a\x1e.cash.z.wallet.sdk.rpc.Balance\"\x00\x12^\n\x18GetTaddressBalanceStream\x12\x1e.cash.z.wallet.sdk.rpc.Address\x1a\x1e.cash.z.wallet.sdk.rpc.Balance\"\x00(\x01\x12`\n\x0cGetMempoolTx\x12*.cash.z.wallet.sdk.rpc.GetMempoolTxRequest\x1a .cash.z.wallet.sdk.rpc.CompactTx\"\x00\x30\x01\x12[\n\x10GetMempoolStream\x12\x1c.cash.z.wallet.sdk.rpc.Empty\x1a%.cash.z.wallet.sdk.rpc.RawTransaction\"\x00\x30\x01\x12R\n\x0cGetTreeState\x12\x1e.cash.z.wallet.sdk.rpc.BlockID\x1a .cash.z.wallet.sdk.rpc.TreeState\"\x00\x12V\n\x12GetLatestTreeState\x12\x1c.cash.z.wallet.sdk.rpc.Empty\x1a .cash.z.wallet.sdk.rpc.TreeState\"\x00\x12\x64\n\x0fGetSubtreeRoots\x12).cash.z.wallet.sdk.rpc.GetSubtreeRootsArg\x1a\".cash.z.wallet.sdk.rpc.SubtreeRoot\"\x00\x30\x01\x12o\n\x0fGetAddressUtxos\x12).cash.z.wallet.sdk.rpc.GetAddressUtxosArg\x1a/.cash.z.wallet.sdk.rpc.GetAddressUtxosReplyList\"\x00\x12s\n\x15GetAddressUtxosStream\x12).cash.z.wallet.sdk.rpc.GetAddressUtxosArg\x1a+.cash.z.wallet.sdk.rpc.GetAddressUtxosReply\"\x00\x30\x01\x12R\n\rGetLightdInfo\x12\x1c.cash.z.wallet.sdk.rpc.Empty\x1a!.cash.z.wallet.sdk.rpc.LightdInfo\"\x00\x12N\n\x04Ping\x12\x1f.cash.z.wallet.sdk.rpc.Duration\x1a#.cash.z.wallet.sdk.rpc.PingResponse\"\x00\x42\x1bZ\x16lightwalletd/walletrpc\xba\x02\x00\x62\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'service_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z\026lightwalletd/walletrpc\272\002\000' + _globals['_POOLTYPE']._serialized_start=1913 + _globals['_POOLTYPE']._serialized_end=1989 + _globals['_SHIELDEDPROTOCOL']._serialized_start=1991 + _globals['_SHIELDEDPROTOCOL']._serialized_end=2035 + _globals['_BLOCKID']._serialized_start=63 + _globals['_BLOCKID']._serialized_end=102 + _globals['_BLOCKRANGE']._serialized_start=105 + _globals['_BLOCKRANGE']._serialized_end=261 + _globals['_TXFILTER']._serialized_start=263 + _globals['_TXFILTER']._serialized_end=349 + _globals['_RAWTRANSACTION']._serialized_start=351 + _globals['_RAWTRANSACTION']._serialized_end=397 + _globals['_SENDRESPONSE']._serialized_start=399 + _globals['_SENDRESPONSE']._serialized_end=454 + _globals['_CHAINSPEC']._serialized_start=456 + _globals['_CHAINSPEC']._serialized_end=467 + _globals['_EMPTY']._serialized_start=469 + _globals['_EMPTY']._serialized_end=476 + _globals['_LIGHTDINFO']._serialized_start=479 + _globals['_LIGHTDINFO']._serialized_end=896 + _globals['_TRANSPARENTADDRESSBLOCKFILTER']._serialized_start=898 + _globals['_TRANSPARENTADDRESSBLOCKFILTER']._serialized_end=996 + _globals['_DURATION']._serialized_start=998 + _globals['_DURATION']._serialized_end=1028 + _globals['_PINGRESPONSE']._serialized_start=1030 + _globals['_PINGRESPONSE']._serialized_end=1073 + _globals['_ADDRESS']._serialized_start=1075 + _globals['_ADDRESS']._serialized_end=1101 + _globals['_ADDRESSLIST']._serialized_start=1103 + _globals['_ADDRESSLIST']._serialized_end=1135 + _globals['_BALANCE']._serialized_start=1137 + _globals['_BALANCE']._serialized_end=1164 + _globals['_GETMEMPOOLTXREQUEST']._serialized_start=1166 + _globals['_GETMEMPOOLTXREQUEST']._serialized_end=1276 + _globals['_TREESTATE']._serialized_start=1278 + _globals['_TREESTATE']._serialized_end=1392 + _globals['_GETSUBTREEROOTSARG']._serialized_start=1394 + _globals['_GETSUBTREEROOTSARG']._serialized_end=1521 + _globals['_SUBTREEROOT']._serialized_start=1523 + _globals['_SUBTREEROOT']._serialized_end=1614 + _globals['_GETADDRESSUTXOSARG']._serialized_start=1616 + _globals['_GETADDRESSUTXOSARG']._serialized_end=1696 + _globals['_GETADDRESSUTXOSREPLY']._serialized_start=1698 + _globals['_GETADDRESSUTXOSREPLY']._serialized_end=1816 + _globals['_GETADDRESSUTXOSREPLYLIST']._serialized_start=1818 + _globals['_GETADDRESSUTXOSREPLYLIST']._serialized_end=1911 + _globals['_COMPACTTXSTREAMER']._serialized_start=2038 + _globals['_COMPACTTXSTREAMER']._serialized_end=3992 +# @@protoc_insertion_point(module_scope) diff --git a/qa/rpc-tests/test_framework/proto/service_pb2.pyi b/qa/rpc-tests/test_framework/proto/service_pb2.pyi new file mode 100644 index 000000000..9fba9522b --- /dev/null +++ b/qa/rpc-tests/test_framework/proto/service_pb2.pyi @@ -0,0 +1,235 @@ +import compact_formats_pb2 as _compact_formats_pb2 +from google.protobuf.internal import containers as _containers +from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from collections.abc import Iterable as _Iterable, Mapping as _Mapping +from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union + +DESCRIPTOR: _descriptor.FileDescriptor + +class PoolType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + POOL_TYPE_INVALID: _ClassVar[PoolType] + TRANSPARENT: _ClassVar[PoolType] + SAPLING: _ClassVar[PoolType] + ORCHARD: _ClassVar[PoolType] + +class ShieldedProtocol(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): + __slots__ = () + sapling: _ClassVar[ShieldedProtocol] + orchard: _ClassVar[ShieldedProtocol] +POOL_TYPE_INVALID: PoolType +TRANSPARENT: PoolType +SAPLING: PoolType +ORCHARD: PoolType +sapling: ShieldedProtocol +orchard: ShieldedProtocol + +class BlockID(_message.Message): + __slots__ = ("height", "hash") + HEIGHT_FIELD_NUMBER: _ClassVar[int] + HASH_FIELD_NUMBER: _ClassVar[int] + height: int + hash: bytes + def __init__(self, height: _Optional[int] = ..., hash: _Optional[bytes] = ...) -> None: ... + +class BlockRange(_message.Message): + __slots__ = ("start", "end", "poolTypes") + START_FIELD_NUMBER: _ClassVar[int] + END_FIELD_NUMBER: _ClassVar[int] + POOLTYPES_FIELD_NUMBER: _ClassVar[int] + start: BlockID + end: BlockID + poolTypes: _containers.RepeatedScalarFieldContainer[PoolType] + def __init__(self, start: _Optional[_Union[BlockID, _Mapping]] = ..., end: _Optional[_Union[BlockID, _Mapping]] = ..., poolTypes: _Optional[_Iterable[_Union[PoolType, str]]] = ...) -> None: ... + +class TxFilter(_message.Message): + __slots__ = ("block", "index", "hash") + BLOCK_FIELD_NUMBER: _ClassVar[int] + INDEX_FIELD_NUMBER: _ClassVar[int] + HASH_FIELD_NUMBER: _ClassVar[int] + block: BlockID + index: int + hash: bytes + def __init__(self, block: _Optional[_Union[BlockID, _Mapping]] = ..., index: _Optional[int] = ..., hash: _Optional[bytes] = ...) -> None: ... + +class RawTransaction(_message.Message): + __slots__ = ("data", "height") + DATA_FIELD_NUMBER: _ClassVar[int] + HEIGHT_FIELD_NUMBER: _ClassVar[int] + data: bytes + height: int + def __init__(self, data: _Optional[bytes] = ..., height: _Optional[int] = ...) -> None: ... + +class SendResponse(_message.Message): + __slots__ = ("errorCode", "errorMessage") + ERRORCODE_FIELD_NUMBER: _ClassVar[int] + ERRORMESSAGE_FIELD_NUMBER: _ClassVar[int] + errorCode: int + errorMessage: str + def __init__(self, errorCode: _Optional[int] = ..., errorMessage: _Optional[str] = ...) -> None: ... + +class ChainSpec(_message.Message): + __slots__ = () + def __init__(self) -> None: ... + +class Empty(_message.Message): + __slots__ = () + def __init__(self) -> None: ... + +class LightdInfo(_message.Message): + __slots__ = ("version", "vendor", "taddrSupport", "chainName", "saplingActivationHeight", "consensusBranchId", "blockHeight", "gitCommit", "branch", "buildDate", "buildUser", "estimatedHeight", "zcashdBuild", "zcashdSubversion", "donationAddress", "upgradeName", "upgradeHeight", "lightwalletProtocolVersion") + VERSION_FIELD_NUMBER: _ClassVar[int] + VENDOR_FIELD_NUMBER: _ClassVar[int] + TADDRSUPPORT_FIELD_NUMBER: _ClassVar[int] + CHAINNAME_FIELD_NUMBER: _ClassVar[int] + SAPLINGACTIVATIONHEIGHT_FIELD_NUMBER: _ClassVar[int] + CONSENSUSBRANCHID_FIELD_NUMBER: _ClassVar[int] + BLOCKHEIGHT_FIELD_NUMBER: _ClassVar[int] + GITCOMMIT_FIELD_NUMBER: _ClassVar[int] + BRANCH_FIELD_NUMBER: _ClassVar[int] + BUILDDATE_FIELD_NUMBER: _ClassVar[int] + BUILDUSER_FIELD_NUMBER: _ClassVar[int] + ESTIMATEDHEIGHT_FIELD_NUMBER: _ClassVar[int] + ZCASHDBUILD_FIELD_NUMBER: _ClassVar[int] + ZCASHDSUBVERSION_FIELD_NUMBER: _ClassVar[int] + DONATIONADDRESS_FIELD_NUMBER: _ClassVar[int] + UPGRADENAME_FIELD_NUMBER: _ClassVar[int] + UPGRADEHEIGHT_FIELD_NUMBER: _ClassVar[int] + LIGHTWALLETPROTOCOLVERSION_FIELD_NUMBER: _ClassVar[int] + version: str + vendor: str + taddrSupport: bool + chainName: str + saplingActivationHeight: int + consensusBranchId: str + blockHeight: int + gitCommit: str + branch: str + buildDate: str + buildUser: str + estimatedHeight: int + zcashdBuild: str + zcashdSubversion: str + donationAddress: str + upgradeName: str + upgradeHeight: int + lightwalletProtocolVersion: str + def __init__(self, version: _Optional[str] = ..., vendor: _Optional[str] = ..., taddrSupport: bool = ..., chainName: _Optional[str] = ..., saplingActivationHeight: _Optional[int] = ..., consensusBranchId: _Optional[str] = ..., blockHeight: _Optional[int] = ..., gitCommit: _Optional[str] = ..., branch: _Optional[str] = ..., buildDate: _Optional[str] = ..., buildUser: _Optional[str] = ..., estimatedHeight: _Optional[int] = ..., zcashdBuild: _Optional[str] = ..., zcashdSubversion: _Optional[str] = ..., donationAddress: _Optional[str] = ..., upgradeName: _Optional[str] = ..., upgradeHeight: _Optional[int] = ..., lightwalletProtocolVersion: _Optional[str] = ...) -> None: ... + +class TransparentAddressBlockFilter(_message.Message): + __slots__ = ("address", "range") + ADDRESS_FIELD_NUMBER: _ClassVar[int] + RANGE_FIELD_NUMBER: _ClassVar[int] + address: str + range: BlockRange + def __init__(self, address: _Optional[str] = ..., range: _Optional[_Union[BlockRange, _Mapping]] = ...) -> None: ... + +class Duration(_message.Message): + __slots__ = ("intervalUs",) + INTERVALUS_FIELD_NUMBER: _ClassVar[int] + intervalUs: int + def __init__(self, intervalUs: _Optional[int] = ...) -> None: ... + +class PingResponse(_message.Message): + __slots__ = ("entry", "exit") + ENTRY_FIELD_NUMBER: _ClassVar[int] + EXIT_FIELD_NUMBER: _ClassVar[int] + entry: int + exit: int + def __init__(self, entry: _Optional[int] = ..., exit: _Optional[int] = ...) -> None: ... + +class Address(_message.Message): + __slots__ = ("address",) + ADDRESS_FIELD_NUMBER: _ClassVar[int] + address: str + def __init__(self, address: _Optional[str] = ...) -> None: ... + +class AddressList(_message.Message): + __slots__ = ("addresses",) + ADDRESSES_FIELD_NUMBER: _ClassVar[int] + addresses: _containers.RepeatedScalarFieldContainer[str] + def __init__(self, addresses: _Optional[_Iterable[str]] = ...) -> None: ... + +class Balance(_message.Message): + __slots__ = ("valueZat",) + VALUEZAT_FIELD_NUMBER: _ClassVar[int] + valueZat: int + def __init__(self, valueZat: _Optional[int] = ...) -> None: ... + +class GetMempoolTxRequest(_message.Message): + __slots__ = ("exclude_txid_suffixes", "poolTypes") + EXCLUDE_TXID_SUFFIXES_FIELD_NUMBER: _ClassVar[int] + POOLTYPES_FIELD_NUMBER: _ClassVar[int] + exclude_txid_suffixes: _containers.RepeatedScalarFieldContainer[bytes] + poolTypes: _containers.RepeatedScalarFieldContainer[PoolType] + def __init__(self, exclude_txid_suffixes: _Optional[_Iterable[bytes]] = ..., poolTypes: _Optional[_Iterable[_Union[PoolType, str]]] = ...) -> None: ... + +class TreeState(_message.Message): + __slots__ = ("network", "height", "hash", "time", "saplingTree", "orchardTree") + NETWORK_FIELD_NUMBER: _ClassVar[int] + HEIGHT_FIELD_NUMBER: _ClassVar[int] + HASH_FIELD_NUMBER: _ClassVar[int] + TIME_FIELD_NUMBER: _ClassVar[int] + SAPLINGTREE_FIELD_NUMBER: _ClassVar[int] + ORCHARDTREE_FIELD_NUMBER: _ClassVar[int] + network: str + height: int + hash: str + time: int + saplingTree: str + orchardTree: str + def __init__(self, network: _Optional[str] = ..., height: _Optional[int] = ..., hash: _Optional[str] = ..., time: _Optional[int] = ..., saplingTree: _Optional[str] = ..., orchardTree: _Optional[str] = ...) -> None: ... + +class GetSubtreeRootsArg(_message.Message): + __slots__ = ("startIndex", "shieldedProtocol", "maxEntries") + STARTINDEX_FIELD_NUMBER: _ClassVar[int] + SHIELDEDPROTOCOL_FIELD_NUMBER: _ClassVar[int] + MAXENTRIES_FIELD_NUMBER: _ClassVar[int] + startIndex: int + shieldedProtocol: ShieldedProtocol + maxEntries: int + def __init__(self, startIndex: _Optional[int] = ..., shieldedProtocol: _Optional[_Union[ShieldedProtocol, str]] = ..., maxEntries: _Optional[int] = ...) -> None: ... + +class SubtreeRoot(_message.Message): + __slots__ = ("rootHash", "completingBlockHash", "completingBlockHeight") + ROOTHASH_FIELD_NUMBER: _ClassVar[int] + COMPLETINGBLOCKHASH_FIELD_NUMBER: _ClassVar[int] + COMPLETINGBLOCKHEIGHT_FIELD_NUMBER: _ClassVar[int] + rootHash: bytes + completingBlockHash: bytes + completingBlockHeight: int + def __init__(self, rootHash: _Optional[bytes] = ..., completingBlockHash: _Optional[bytes] = ..., completingBlockHeight: _Optional[int] = ...) -> None: ... + +class GetAddressUtxosArg(_message.Message): + __slots__ = ("addresses", "startHeight", "maxEntries") + ADDRESSES_FIELD_NUMBER: _ClassVar[int] + STARTHEIGHT_FIELD_NUMBER: _ClassVar[int] + MAXENTRIES_FIELD_NUMBER: _ClassVar[int] + addresses: _containers.RepeatedScalarFieldContainer[str] + startHeight: int + maxEntries: int + def __init__(self, addresses: _Optional[_Iterable[str]] = ..., startHeight: _Optional[int] = ..., maxEntries: _Optional[int] = ...) -> None: ... + +class GetAddressUtxosReply(_message.Message): + __slots__ = ("address", "txid", "index", "script", "valueZat", "height") + ADDRESS_FIELD_NUMBER: _ClassVar[int] + TXID_FIELD_NUMBER: _ClassVar[int] + INDEX_FIELD_NUMBER: _ClassVar[int] + SCRIPT_FIELD_NUMBER: _ClassVar[int] + VALUEZAT_FIELD_NUMBER: _ClassVar[int] + HEIGHT_FIELD_NUMBER: _ClassVar[int] + address: str + txid: bytes + index: int + script: bytes + valueZat: int + height: int + def __init__(self, address: _Optional[str] = ..., txid: _Optional[bytes] = ..., index: _Optional[int] = ..., script: _Optional[bytes] = ..., valueZat: _Optional[int] = ..., height: _Optional[int] = ...) -> None: ... + +class GetAddressUtxosReplyList(_message.Message): + __slots__ = ("addressUtxos",) + ADDRESSUTXOS_FIELD_NUMBER: _ClassVar[int] + addressUtxos: _containers.RepeatedCompositeFieldContainer[GetAddressUtxosReply] + def __init__(self, addressUtxos: _Optional[_Iterable[_Union[GetAddressUtxosReply, _Mapping]]] = ...) -> None: ... diff --git a/qa/rpc-tests/test_framework/proto/service_pb2_grpc.py b/qa/rpc-tests/test_framework/proto/service_pb2_grpc.py new file mode 100644 index 000000000..e64d704c3 --- /dev/null +++ b/qa/rpc-tests/test_framework/proto/service_pb2_grpc.py @@ -0,0 +1,962 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc +import warnings + +from . import compact_formats_pb2 as compact__formats__pb2 +from . import service_pb2 as service__pb2 + +GRPC_GENERATED_VERSION = '1.80.0' +GRPC_VERSION = grpc.__version__ +_version_not_supported = False + +try: + from grpc._utilities import first_version_is_lower + _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION) +except ImportError: + _version_not_supported = True + +if _version_not_supported: + raise RuntimeError( + f'The grpc package installed is at version {GRPC_VERSION},' + + ' but the generated code in service_pb2_grpc.py depends on' + + f' grpcio>={GRPC_GENERATED_VERSION}.' + + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}' + + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.' + ) + + +class CompactTxStreamerStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.GetLatestBlock = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetLatestBlock', + request_serializer=service__pb2.ChainSpec.SerializeToString, + response_deserializer=service__pb2.BlockID.FromString, + _registered_method=True) + self.GetBlock = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetBlock', + request_serializer=service__pb2.BlockID.SerializeToString, + response_deserializer=compact__formats__pb2.CompactBlock.FromString, + _registered_method=True) + self.GetBlockNullifiers = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetBlockNullifiers', + request_serializer=service__pb2.BlockID.SerializeToString, + response_deserializer=compact__formats__pb2.CompactBlock.FromString, + _registered_method=True) + self.GetBlockRange = channel.unary_stream( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetBlockRange', + request_serializer=service__pb2.BlockRange.SerializeToString, + response_deserializer=compact__formats__pb2.CompactBlock.FromString, + _registered_method=True) + self.GetBlockRangeNullifiers = channel.unary_stream( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetBlockRangeNullifiers', + request_serializer=service__pb2.BlockRange.SerializeToString, + response_deserializer=compact__formats__pb2.CompactBlock.FromString, + _registered_method=True) + self.GetTransaction = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTransaction', + request_serializer=service__pb2.TxFilter.SerializeToString, + response_deserializer=service__pb2.RawTransaction.FromString, + _registered_method=True) + self.SendTransaction = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/SendTransaction', + request_serializer=service__pb2.RawTransaction.SerializeToString, + response_deserializer=service__pb2.SendResponse.FromString, + _registered_method=True) + self.GetTaddressTxids = channel.unary_stream( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTaddressTxids', + request_serializer=service__pb2.TransparentAddressBlockFilter.SerializeToString, + response_deserializer=service__pb2.RawTransaction.FromString, + _registered_method=True) + self.GetTaddressTransactions = channel.unary_stream( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTaddressTransactions', + request_serializer=service__pb2.TransparentAddressBlockFilter.SerializeToString, + response_deserializer=service__pb2.RawTransaction.FromString, + _registered_method=True) + self.GetTaddressBalance = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTaddressBalance', + request_serializer=service__pb2.AddressList.SerializeToString, + response_deserializer=service__pb2.Balance.FromString, + _registered_method=True) + self.GetTaddressBalanceStream = channel.stream_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTaddressBalanceStream', + request_serializer=service__pb2.Address.SerializeToString, + response_deserializer=service__pb2.Balance.FromString, + _registered_method=True) + self.GetMempoolTx = channel.unary_stream( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetMempoolTx', + request_serializer=service__pb2.GetMempoolTxRequest.SerializeToString, + response_deserializer=compact__formats__pb2.CompactTx.FromString, + _registered_method=True) + self.GetMempoolStream = channel.unary_stream( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetMempoolStream', + request_serializer=service__pb2.Empty.SerializeToString, + response_deserializer=service__pb2.RawTransaction.FromString, + _registered_method=True) + self.GetTreeState = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTreeState', + request_serializer=service__pb2.BlockID.SerializeToString, + response_deserializer=service__pb2.TreeState.FromString, + _registered_method=True) + self.GetLatestTreeState = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetLatestTreeState', + request_serializer=service__pb2.Empty.SerializeToString, + response_deserializer=service__pb2.TreeState.FromString, + _registered_method=True) + self.GetSubtreeRoots = channel.unary_stream( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetSubtreeRoots', + request_serializer=service__pb2.GetSubtreeRootsArg.SerializeToString, + response_deserializer=service__pb2.SubtreeRoot.FromString, + _registered_method=True) + self.GetAddressUtxos = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetAddressUtxos', + request_serializer=service__pb2.GetAddressUtxosArg.SerializeToString, + response_deserializer=service__pb2.GetAddressUtxosReplyList.FromString, + _registered_method=True) + self.GetAddressUtxosStream = channel.unary_stream( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetAddressUtxosStream', + request_serializer=service__pb2.GetAddressUtxosArg.SerializeToString, + response_deserializer=service__pb2.GetAddressUtxosReply.FromString, + _registered_method=True) + self.GetLightdInfo = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetLightdInfo', + request_serializer=service__pb2.Empty.SerializeToString, + response_deserializer=service__pb2.LightdInfo.FromString, + _registered_method=True) + self.Ping = channel.unary_unary( + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/Ping', + request_serializer=service__pb2.Duration.SerializeToString, + response_deserializer=service__pb2.PingResponse.FromString, + _registered_method=True) + + +class CompactTxStreamerServicer(object): + """Missing associated documentation comment in .proto file.""" + + def GetLatestBlock(self, request, context): + """Return the BlockID of the block at the tip of the best chain + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetBlock(self, request, context): + """Return the compact block corresponding to the given block identifier + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetBlockNullifiers(self, request, context): + """Same as GetBlock except the returned CompactBlock value contains only + nullifiers. + + Note: this method is deprecated. Implementations should ignore any + `PoolType::TRANSPARENT` member of the `poolTypes` argument. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetBlockRange(self, request, context): + """Return a list of consecutive compact blocks in the specified range, + which is inclusive of `range.end`. + + If range.start <= range.end, blocks are returned increasing height order; + otherwise blocks are returned in decreasing height order. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetBlockRangeNullifiers(self, request, context): + """Same as GetBlockRange except the returned CompactBlock values contain + only nullifiers. + + Note: this method is deprecated. Implementations should ignore any + `PoolType::TRANSPARENT` member of the `poolTypes` argument. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetTransaction(self, request, context): + """Return the requested full (not compact) transaction (as from zcashd) + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SendTransaction(self, request, context): + """Submit the given transaction to the Zcash network + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetTaddressTxids(self, request, context): + """Return RawTransactions that match the given transparent address filter. + + Note: This function is misnamed, it returns complete `RawTransaction` values, not TxIds. + NOTE: this method is deprecated, please use GetTaddressTransactions instead. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetTaddressTransactions(self, request, context): + """Return the transactions corresponding to the given t-address within the given block range. + Mempool transactions are not included in the results. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetTaddressBalance(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetTaddressBalanceStream(self, request_iterator, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetMempoolTx(self, request, context): + """Returns a stream of the compact transaction representation for transactions + currently in the mempool. The results of this operation may be a few + seconds out of date. If the `exclude_txid_suffixes` list is empty, + return all transactions; otherwise return all *except* those in the + `exclude_txid_suffixes` list (if any); this allows the client to avoid + receiving transactions that it already has (from an earlier call to this + RPC). The transaction IDs in the `exclude_txid_suffixes` list can be + shortened to any number of bytes to make the request more + bandwidth-efficient; if two or more transactions in the mempool match a + txid suffix, none of the matching transactions are excluded. Txid + suffixes in the exclude list that don't match any transactions in the + mempool are ignored. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetMempoolStream(self, request, context): + """Return a stream of current Mempool transactions. This will keep the output stream open while + there are mempool transactions. It will close the returned stream when a new block is mined. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetTreeState(self, request, context): + """GetTreeState returns the note commitment tree state corresponding to the given block. + See section 3.7 of the Zcash protocol specification. It returns several other useful + values also (even though they can be obtained using GetBlock). + The block can be specified by either height or hash. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetLatestTreeState(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetSubtreeRoots(self, request, context): + """Returns a stream of information about roots of subtrees of the note commitment tree + for the specified shielded protocol (Sapling or Orchard). + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetAddressUtxos(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetAddressUtxosStream(self, request, context): + """Missing associated documentation comment in .proto file.""" + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetLightdInfo(self, request, context): + """Return information about this lightwalletd instance and the blockchain + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def Ping(self, request, context): + """Testing-only, requires lightwalletd --ping-very-insecure (do not enable in production) + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_CompactTxStreamerServicer_to_server(servicer, server): + rpc_method_handlers = { + 'GetLatestBlock': grpc.unary_unary_rpc_method_handler( + servicer.GetLatestBlock, + request_deserializer=service__pb2.ChainSpec.FromString, + response_serializer=service__pb2.BlockID.SerializeToString, + ), + 'GetBlock': grpc.unary_unary_rpc_method_handler( + servicer.GetBlock, + request_deserializer=service__pb2.BlockID.FromString, + response_serializer=compact__formats__pb2.CompactBlock.SerializeToString, + ), + 'GetBlockNullifiers': grpc.unary_unary_rpc_method_handler( + servicer.GetBlockNullifiers, + request_deserializer=service__pb2.BlockID.FromString, + response_serializer=compact__formats__pb2.CompactBlock.SerializeToString, + ), + 'GetBlockRange': grpc.unary_stream_rpc_method_handler( + servicer.GetBlockRange, + request_deserializer=service__pb2.BlockRange.FromString, + response_serializer=compact__formats__pb2.CompactBlock.SerializeToString, + ), + 'GetBlockRangeNullifiers': grpc.unary_stream_rpc_method_handler( + servicer.GetBlockRangeNullifiers, + request_deserializer=service__pb2.BlockRange.FromString, + response_serializer=compact__formats__pb2.CompactBlock.SerializeToString, + ), + 'GetTransaction': grpc.unary_unary_rpc_method_handler( + servicer.GetTransaction, + request_deserializer=service__pb2.TxFilter.FromString, + response_serializer=service__pb2.RawTransaction.SerializeToString, + ), + 'SendTransaction': grpc.unary_unary_rpc_method_handler( + servicer.SendTransaction, + request_deserializer=service__pb2.RawTransaction.FromString, + response_serializer=service__pb2.SendResponse.SerializeToString, + ), + 'GetTaddressTxids': grpc.unary_stream_rpc_method_handler( + servicer.GetTaddressTxids, + request_deserializer=service__pb2.TransparentAddressBlockFilter.FromString, + response_serializer=service__pb2.RawTransaction.SerializeToString, + ), + 'GetTaddressTransactions': grpc.unary_stream_rpc_method_handler( + servicer.GetTaddressTransactions, + request_deserializer=service__pb2.TransparentAddressBlockFilter.FromString, + response_serializer=service__pb2.RawTransaction.SerializeToString, + ), + 'GetTaddressBalance': grpc.unary_unary_rpc_method_handler( + servicer.GetTaddressBalance, + request_deserializer=service__pb2.AddressList.FromString, + response_serializer=service__pb2.Balance.SerializeToString, + ), + 'GetTaddressBalanceStream': grpc.stream_unary_rpc_method_handler( + servicer.GetTaddressBalanceStream, + request_deserializer=service__pb2.Address.FromString, + response_serializer=service__pb2.Balance.SerializeToString, + ), + 'GetMempoolTx': grpc.unary_stream_rpc_method_handler( + servicer.GetMempoolTx, + request_deserializer=service__pb2.GetMempoolTxRequest.FromString, + response_serializer=compact__formats__pb2.CompactTx.SerializeToString, + ), + 'GetMempoolStream': grpc.unary_stream_rpc_method_handler( + servicer.GetMempoolStream, + request_deserializer=service__pb2.Empty.FromString, + response_serializer=service__pb2.RawTransaction.SerializeToString, + ), + 'GetTreeState': grpc.unary_unary_rpc_method_handler( + servicer.GetTreeState, + request_deserializer=service__pb2.BlockID.FromString, + response_serializer=service__pb2.TreeState.SerializeToString, + ), + 'GetLatestTreeState': grpc.unary_unary_rpc_method_handler( + servicer.GetLatestTreeState, + request_deserializer=service__pb2.Empty.FromString, + response_serializer=service__pb2.TreeState.SerializeToString, + ), + 'GetSubtreeRoots': grpc.unary_stream_rpc_method_handler( + servicer.GetSubtreeRoots, + request_deserializer=service__pb2.GetSubtreeRootsArg.FromString, + response_serializer=service__pb2.SubtreeRoot.SerializeToString, + ), + 'GetAddressUtxos': grpc.unary_unary_rpc_method_handler( + servicer.GetAddressUtxos, + request_deserializer=service__pb2.GetAddressUtxosArg.FromString, + response_serializer=service__pb2.GetAddressUtxosReplyList.SerializeToString, + ), + 'GetAddressUtxosStream': grpc.unary_stream_rpc_method_handler( + servicer.GetAddressUtxosStream, + request_deserializer=service__pb2.GetAddressUtxosArg.FromString, + response_serializer=service__pb2.GetAddressUtxosReply.SerializeToString, + ), + 'GetLightdInfo': grpc.unary_unary_rpc_method_handler( + servicer.GetLightdInfo, + request_deserializer=service__pb2.Empty.FromString, + response_serializer=service__pb2.LightdInfo.SerializeToString, + ), + 'Ping': grpc.unary_unary_rpc_method_handler( + servicer.Ping, + request_deserializer=service__pb2.Duration.FromString, + response_serializer=service__pb2.PingResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'cash.z.wallet.sdk.rpc.CompactTxStreamer', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + server.add_registered_method_handlers('cash.z.wallet.sdk.rpc.CompactTxStreamer', rpc_method_handlers) + + + # This class is part of an EXPERIMENTAL API. +class CompactTxStreamer(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def GetLatestBlock(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetLatestBlock', + service__pb2.ChainSpec.SerializeToString, + service__pb2.BlockID.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetBlock(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetBlock', + service__pb2.BlockID.SerializeToString, + compact__formats__pb2.CompactBlock.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetBlockNullifiers(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetBlockNullifiers', + service__pb2.BlockID.SerializeToString, + compact__formats__pb2.CompactBlock.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetBlockRange(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetBlockRange', + service__pb2.BlockRange.SerializeToString, + compact__formats__pb2.CompactBlock.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetBlockRangeNullifiers(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetBlockRangeNullifiers', + service__pb2.BlockRange.SerializeToString, + compact__formats__pb2.CompactBlock.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetTransaction(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTransaction', + service__pb2.TxFilter.SerializeToString, + service__pb2.RawTransaction.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def SendTransaction(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/SendTransaction', + service__pb2.RawTransaction.SerializeToString, + service__pb2.SendResponse.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetTaddressTxids(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTaddressTxids', + service__pb2.TransparentAddressBlockFilter.SerializeToString, + service__pb2.RawTransaction.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetTaddressTransactions(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTaddressTransactions', + service__pb2.TransparentAddressBlockFilter.SerializeToString, + service__pb2.RawTransaction.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetTaddressBalance(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTaddressBalance', + service__pb2.AddressList.SerializeToString, + service__pb2.Balance.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetTaddressBalanceStream(request_iterator, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.stream_unary( + request_iterator, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTaddressBalanceStream', + service__pb2.Address.SerializeToString, + service__pb2.Balance.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetMempoolTx(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetMempoolTx', + service__pb2.GetMempoolTxRequest.SerializeToString, + compact__formats__pb2.CompactTx.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetMempoolStream(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetMempoolStream', + service__pb2.Empty.SerializeToString, + service__pb2.RawTransaction.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetTreeState(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetTreeState', + service__pb2.BlockID.SerializeToString, + service__pb2.TreeState.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetLatestTreeState(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetLatestTreeState', + service__pb2.Empty.SerializeToString, + service__pb2.TreeState.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetSubtreeRoots(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetSubtreeRoots', + service__pb2.GetSubtreeRootsArg.SerializeToString, + service__pb2.SubtreeRoot.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetAddressUtxos(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetAddressUtxos', + service__pb2.GetAddressUtxosArg.SerializeToString, + service__pb2.GetAddressUtxosReplyList.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetAddressUtxosStream(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetAddressUtxosStream', + service__pb2.GetAddressUtxosArg.SerializeToString, + service__pb2.GetAddressUtxosReply.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def GetLightdInfo(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/GetLightdInfo', + service__pb2.Empty.SerializeToString, + service__pb2.LightdInfo.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) + + @staticmethod + def Ping(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary( + request, + target, + '/cash.z.wallet.sdk.rpc.CompactTxStreamer/Ping', + service__pb2.Duration.SerializeToString, + service__pb2.PingResponse.FromString, + options, + channel_credentials, + insecure, + call_credentials, + compression, + wait_for_ready, + timeout, + metadata, + _registered_method=True) diff --git a/qa/rpc-tests/test_framework/test_framework.py b/qa/rpc-tests/test_framework/test_framework.py index fb067a431..809394806 100755 --- a/qa/rpc-tests/test_framework/test_framework.py +++ b/qa/rpc-tests/test_framework/test_framework.py @@ -23,6 +23,7 @@ start_nodes, start_wallets, start_zainos, + start_lightwalletds, connect_nodes_bi, sync_blocks, sync_mempools, @@ -30,9 +31,11 @@ stop_nodes, stop_wallets, stop_zainos, + stop_lightwalletds, wait_bitcoinds, wait_zainods, wait_zallets, + wait_lightwalletds, enable_coverage, check_json_precision, PortSeed, @@ -45,10 +48,12 @@ def __init__(self): self.activation_heights = {"NU5": 1, "NU6": 1, "NU6.1": 1, "NU6.2": 1} self.num_nodes = 4 self.num_indexers = 0 + self.num_lightwalletds = 0 self.num_wallets = 4 self.cache_behavior = 'current' self.nodes = None self.zainos = None + self.lwds = None self.wallets = None self.miner_addresses = None @@ -95,6 +100,9 @@ def prepare_chain(self): def setup_indexers(self): return start_zainos(self.num_indexers, self.options.tmpdir) + def setup_lightwalletds(self): + return start_lightwalletds(self.num_lightwalletds, self.options.tmpdir) + def setup_wallets(self): return start_wallets(self.num_wallets, self.options.tmpdir) @@ -123,6 +131,7 @@ def setup_network(self, split = False, do_mempool_sync = True): self.sync_all(do_mempool_sync) self.zainos = self.setup_indexers() + self.lwds = self.setup_lightwalletds() self.wallets = self.setup_wallets() def split_network(self): @@ -227,6 +236,10 @@ def main(self): stop_wallets(self.wallets) wait_zallets() + print("Stopping lightwalletds") + stop_lightwalletds(self.lwds or []) + wait_lightwalletds() + print("Stopping indexers") if self.zainos is not None: stop_zainos(self.zainos) @@ -241,7 +254,7 @@ def main(self): # running processes, `util` keeps global dicts or running processes stop_all_processes() else: - print("Note: zebrads, zainods, and zallets were not stopped and may still be running") + print("Note: zebrads, zainods, lightwalletds, and zallets were not stopped and may still be running") if not self.options.nocleanup and not self.options.noshutdown: print("Cleaning up") diff --git a/qa/rpc-tests/test_framework/util.py b/qa/rpc-tests/test_framework/util.py index 003409083..90e89cb8b 100644 --- a/qa/rpc-tests/test_framework/util.py +++ b/qa/rpc-tests/test_framework/util.py @@ -82,6 +82,9 @@ def zaino_binary(): def zallet_binary(): return os.getenv("ZALLET", os.path.join("src", "zallet")) +def lightwalletd_binary(): + return os.getenv("LIGHTWALLETD", os.path.join("src", "lightwalletd")) + def zebrad_config(datadir): base_location = os.path.join('qa', 'defaults', 'zebrad', 'config.toml') new_location = os.path.join(datadir, "config.toml") @@ -158,6 +161,9 @@ def zaino_rpc_port(n): def zaino_grpc_port(n): return PORT_MIN + (PORT_RANGE * 5) + n + (MAX_NODES * PortSeed.n) % (PORT_RANGE - 1 - MAX_NODES) +def lwd_grpc_port(n): + return PORT_MIN + (PORT_RANGE * 6) + n + (MAX_NODES * PortSeed.n) % (PORT_RANGE - 1 - MAX_NODES) + def check_json_precision(): """Make sure json library being used does not lose precision converting ZEC values""" n = Decimal("20000000.00000003") @@ -1408,7 +1414,7 @@ def stop_all_processes(): Forcibly terminate every zebrad, zainod and zallet process we spawned, regardless of whether a test data structure still references it. ''' - for processes in (bitcoind_processes, zallet_processes, zainod_processes): + for processes in (bitcoind_processes, zallet_processes, zainod_processes, lwd_processes): for p in list(processes.values()): try: p.terminate() # send SIGHIGH @@ -1906,3 +1912,99 @@ def assert_in_message(e, needle: str) -> None: """Assert that JSONRPCException `e`'s message contains `needle`.""" msg = e.error['message'] assert_true(needle in msg, "Expected {!r} in error, got: {!r}".format(needle, msg)) + + +# Lightwalletd utilities + +lwd_processes = {} + +def write_lwd_conf(datadir, node_rpc_port): + """Write a minimal zcash.conf for lightwalletd to connect to a Zebrad node.""" + conf_path = os.path.join(datadir, "zcash.conf") + with open(conf_path, "w", encoding="utf8") as f: + f.write("rpcbind=127.0.0.1\n") + f.write(f"rpcport={node_rpc_port}\n") + f.write("rpcuser=test\n") + f.write("rpcpassword=test\n") + return conf_path + +def start_lightwalletds(num_nodes, dirname, binary=None): + """Start multiple lightwalletd instances, return list of gRPC port numbers.""" + if binary is None: + binary = [None] * num_nodes + ports = [] + try: + for i in range(num_nodes): + ports.append(start_lightwalletd(i, dirname, binary=binary[i])) + except: + stop_lightwalletds(ports) + raise + return ports + +def start_lightwalletd(i, dirname, binary=None, stderr=None): + """Start a lightwalletd instance and return its gRPC port number.""" + datadir = os.path.join(dirname, "lwd" + str(i)) + os.makedirs(datadir, exist_ok=True) + + if binary is None: + binary = lightwalletd_binary() + + conf = write_lwd_conf(datadir, rpc_port(i)) + grpc_addr = f"127.0.0.1:{lwd_grpc_port(i)}" + + args = [ + binary, + "--grpc-bind-addr", grpc_addr, + "--no-tls-very-insecure", + "--zcash-conf-path", conf, + "--data-dir", datadir, + "--log-file", os.path.join(datadir, "lwd.log"), + "--log-level", "10", + ] + + if os.getenv("PYTHON_DEBUG", ""): + print(f"start_lightwalletd: starting lightwalletd {i}") + + lwd_processes[i] = subprocess.Popen(args, stderr=stderr) + wait_for_lwd_start(lwd_processes[i], lwd_grpc_port(i), i) + + if os.getenv("PYTHON_DEBUG", ""): + print(f"start_lightwalletd: lightwalletd {i} ready on {grpc_addr}") + + return lwd_grpc_port(i) + +def wait_for_lwd_start(process, port, i): + """Poll lightwalletd via GetLightdInfo until it responds or exits.""" + import grpc + from test_framework.proto import service_pb2, service_pb2_grpc + + deadline = time.time() + 60 + while time.time() < deadline: + if process.poll() is not None: + raise Exception( + f"lightwalletd {i} exited with status {process.returncode} during initialization" + ) + try: + with grpc.insecure_channel(f"127.0.0.1:{port}") as ch: + stub = service_pb2_grpc.CompactTxStreamerStub(ch) + stub.GetLightdInfo(service_pb2.Empty(), timeout=2) + return + except grpc.RpcError: + pass + time.sleep(0.5) + raise Exception(f"lightwalletd {i} did not become ready within 60 seconds") + +def stop_lightwalletds(lwds): + del lwds[:] + +def wait_lightwalletds(): + for proc in list(lwd_processes.values()): + try: + proc.terminate() + proc.wait(timeout=10) + except Exception: + try: + proc.kill() + except Exception: + pass + lwd_processes.clear() diff --git a/qa/zcash/grpc_comparison_tests.py b/qa/zcash/grpc_comparison_tests.py new file mode 100755 index 000000000..d45757c6a --- /dev/null +++ b/qa/zcash/grpc_comparison_tests.py @@ -0,0 +1,37 @@ +#!/usr/bin/env python3 +# +# Run the gRPC parity tests comparing Zainod and Lightwalletd +# backed by the same Zebrad node. +# +# Usage: +# uv run ./qa/zcash/grpc_comparison_tests.py [rpc-tests options] +# +# Examples: +# uv run ./qa/zcash/grpc_comparison_tests.py +# uv run ./qa/zcash/grpc_comparison_tests.py --nocleanup +# +# Binaries are resolved from ./src/ by default, or from environment variables: +# ZEBRAD, ZAINOD, LIGHTWALLETD +# + +import os +import subprocess +import sys + +REPOROOT = os.path.dirname( + os.path.dirname( + os.path.dirname( + os.path.abspath(__file__) + ) + ) +) + +def repofile(filename): + return os.path.join(REPOROOT, filename) + +def main(): + cmd = [repofile('qa/pull-tester/rpc-tests.py'), 'grpc_comparison.py'] + sys.argv[1:] + sys.exit(subprocess.call(cmd)) + +if __name__ == '__main__': + main() diff --git a/scripts/generate_proto.sh b/scripts/generate_proto.sh new file mode 100755 index 000000000..bc4635cd3 --- /dev/null +++ b/scripts/generate_proto.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash +# Regenerate Python gRPC stubs from the lightwallet-protocol subtree. +# +# Run this after updating the subtree to a new protocol version: +# +# git subtree pull --prefix=lightwallet-protocol \ +# https://github.com/zcash/lightwallet-protocol.git --squash +# +# Then regenerate and commit the updated stubs: +# +# scripts/generate_proto.sh +# git add qa/rpc-tests/test_framework/proto/ +# git commit -m "update: regenerate gRPC stubs from lightwallet-protocol " +# +# Requirements: grpcio-tools (developer tool, not a runtime dependency) +# uv tool install grpcio-tools +set -euo pipefail + +REPO_ROOT="$(cd "$(dirname "$0")/.." && pwd)" +PROTO_SRC="$REPO_ROOT/lightwallet-protocol/walletrpc" +PROTO_OUT="$REPO_ROOT/qa/rpc-tests/test_framework/proto" + +python-grpc-tools-protoc \ + -I "$PROTO_SRC" \ + --python_out="$PROTO_OUT" \ + --pyi_out="$PROTO_OUT" \ + --grpc_python_out="$PROTO_OUT" \ + "$PROTO_SRC/compact_formats.proto" \ + "$PROTO_SRC/service.proto" + +# grpcio-tools generates flat imports that break when loaded as a package. +# Fix them to use relative imports. +sed -i 's/^import compact_formats_pb2 as/from . import compact_formats_pb2 as/' \ + "$PROTO_OUT/service_pb2.py" \ + "$PROTO_OUT/service_pb2_grpc.py" +sed -i 's/^import service_pb2 as/from . import service_pb2 as/' \ + "$PROTO_OUT/service_pb2_grpc.py" + +echo "Stubs written to $PROTO_OUT" From e4a6a8761c1a85560ff4e7c6c348938ed9ffe133 Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 9 Apr 2026 21:04:20 -0300 Subject: [PATCH 03/24] fix: address Copilot review findings in gRPC parity test suite - Fix flat import in service_pb2.pyi (relative import was missing, unlike the .py counterpart); extend generate_proto.sh to rewrite imports in .pyi files as well - Add missing height assertion in test_get_taddress_txids_lower - Add per-element data+height assertions in test_get_taddress_txids_upper (previously only checked stream length) - Add missing script and height assertions in test_get_address_utxos_stream to match the coverage in test_get_address_utxos - Fix gRPC channel leak in _wait_for_indexers: wrap channel lifecycle in try/finally and close both channels on exit - Pad chain to 100 blocks before starting indexers: Zainod requires a minimum of 100 blocks; the three mining phases only produce 36 Co-Authored-By: Claude Sonnet 4.6 --- .../make-zcash-artifacts-executable.sh | 16 +- .github/workflows/ci.yml | 98 ++++++- README.md | 14 + doc/book/src/user/running-tests.md | 31 +- doc/book/src/user/writing-tests.md | 60 ++++ pyproject.toml | 2 + qa/rpc-tests/grpc_comparison.py | 266 ++++++++++++++++-- .../test_framework/proto/service_pb2.pyi | 2 +- qa/rpc-tests/test_framework/test_framework.py | 15 +- qa/rpc-tests/test_framework/util.py | 111 ++++++++ scripts/generate_proto.sh | 11 +- uv.lock | 49 ++++ 12 files changed, 623 insertions(+), 52 deletions(-) diff --git a/.github/scripts/make-zcash-artifacts-executable.sh b/.github/scripts/make-zcash-artifacts-executable.sh index c21b3cad4..2d6833fbd 100755 --- a/.github/scripts/make-zcash-artifacts-executable.sh +++ b/.github/scripts/make-zcash-artifacts-executable.sh @@ -2,8 +2,8 @@ # # Make the zcash binaries downloaded into ./src executable on the test runners. # -# The `zallet` launcher execs a sibling backend binary (`zallet-zaino` or -# `zallet-zebra`), so those are made executable too when present. +# The `zallet` launcher execs a sibling backend binary, so backend binaries are +# made executable too when present. # # Inputs (environment): # FILE_EXT executable suffix, e.g. ".exe" (optional, default empty) @@ -15,9 +15,9 @@ ext="${FILE_EXT:-}" chmod +x "./src/zebrad$ext" chmod +x "./src/zainod$ext" chmod +x "./src/zallet$ext" -if [ -f "./src/zallet-zaino$ext" ]; then - chmod +x "./src/zallet-zaino$ext" -fi -if [ -f "./src/zallet-zebra$ext" ]; then - chmod +x "./src/zallet-zebra$ext" -fi +chmod +x "./src/lightwalletd$ext" +for zallet_backend in zallet-zebra zallet-zaino; do + if [ -f "./src/${zallet_backend}$ext" ]; then + chmod +x "./src/${zallet_backend}$ext" + fi +done diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 690dd7250..d9f18a327 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,6 +33,7 @@ on: - zebra-interop-request - zaino-interop-request - zallet-interop-request + - lightwalletd-interop-request permissions: contents: read @@ -455,6 +456,83 @@ jobs: job_name_prefix: Build zallet on is_zallet: true + build-lightwalletd: + name: Build lightwalletd on ${{ matrix.platform }}${{ matrix.required_suffix }} + needs: setup + runs-on: ${{ matrix.build_os }} + container: + image: ${{ matrix.container }} + env: + HOME: /root + PATH: /root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PATH + continue-on-error: ${{ !matrix.required }} + strategy: + matrix: + include: ${{ fromJson(needs.setup.outputs.build_matrix) }} + + steps: + - name: Check out integration-tests to access actions + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + with: + path: integration-tests + persist-credentials: false + + - name: Compute interop repo ids + id: repo-ids + uses: ./integration-tests/.github/actions/interop-repo-ids + + - id: start-interop + uses: ./integration-tests/.github/actions/start-interop + with: + status-app-id: ${{ secrets.STATUS_APP_ID }} + status-app-private-key: ${{ secrets.STATUS_APP_PRIVATE_KEY }} + requesting-owner: ${{ steps.repo-ids.outputs.requesting-owner }} + requesting-repository: ${{ steps.repo-ids.outputs.requesting-repository }} + job-name: "Build lightwalletd on ${{ matrix.platform }}${{ matrix.required_suffix }}" + + - name: Use specified zcash/lightwalletd commit + if: github.event.action == 'lightwalletd-interop-request' + shell: sh + env: + SHA: ${{ github.event.client_payload.sha }} + run: echo "LIGHTWALLETD_REF=${SHA}" >> $GITHUB_ENV + + - name: Use zcash/lightwalletd current master + if: github.event.action != 'lightwalletd-interop-request' + run: echo "LIGHTWALLETD_REF=refs/heads/master" >> $GITHUB_ENV + + - name: Check out zcash/lightwalletd + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + with: + repository: zcash/lightwalletd + ref: ${{ env.LIGHTWALLETD_REF }} + path: lightwalletd + + - name: Set up Go + uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 + with: + go-version-file: lightwalletd/go.mod + cache-dependency-path: lightwalletd/go.sum + + - name: Build lightwalletd + run: go build -v -o lightwalletd${{ matrix.file_ext }} . + working-directory: ./lightwalletd + + - name: Upload lightwalletd + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + with: + name: lightwalletd-${{ matrix.name }} + path: | + ${{ format('./lightwalletd/lightwalletd{0}', matrix.file_ext) }} + + - uses: ./integration-tests/.github/actions/finish-interop + if: always() + with: + app-token: ${{ steps.start-interop.outputs.app-token }} + requesting-owner: ${{ steps.repo-ids.outputs.requesting-owner }} + requesting-repository: ${{ steps.repo-ids.outputs.requesting-repository }} + job-name: "Build lightwalletd on ${{ matrix.platform }}${{ matrix.required_suffix }}" + # Not working in Windows sec-hard: name: sec-hard ${{ matrix.platform }}${{ matrix.required_suffix }} @@ -463,6 +541,7 @@ jobs: - build-zebra - build-zaino - build-zallet + - build-lightwalletd runs-on: ${{ matrix.test_os }} container: image: ${{ matrix.container }} @@ -523,6 +602,12 @@ jobs: name: zallet-${{ matrix.name }} path: ./src + - name: Download lightwalletd artifact + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 + with: + name: lightwalletd-${{ matrix.name }} + path: ./src + - name: Make artifact executable if: runner.os != 'Windows' shell: bash @@ -576,7 +661,7 @@ jobs: run: | python3 -m venv ./venv . ./venv/bin/activate - pip install zmq asyncio base58 toml embit + pip install zmq asyncio base58 toml embit grpcio protobuf test-rpc: name: RPC tests ${{ matrix.platform }} ${{ matrix.backend }} ${{ matrix.shard }}${{ matrix.required_suffix }} @@ -585,6 +670,7 @@ jobs: - build-zebra - build-zaino - build-zallet + - build-lightwalletd - rpc-depends runs-on: ${{ matrix.test_os }} container: @@ -652,7 +738,7 @@ jobs: run: | python3 -m venv ./venv . ./venv/bin/activate - pip install zmq asyncio base58 toml embit + pip install zmq asyncio base58 toml embit grpcio protobuf - name: Download zebrad artifact uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 @@ -672,6 +758,12 @@ jobs: name: zallet-${{ matrix.name }} path: ./src + - name: Download lightwalletd artifact + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 + with: + name: lightwalletd-${{ matrix.name }} + path: ./src + - name: Make artifact executable if: runner.os != 'Windows' shell: bash @@ -745,7 +837,7 @@ jobs: sys.exit(1) EOF . ./venv/bin/activate - ZALLET_BACKEND=${{ matrix.backend }} ZEBRAD=$(pwd)/${{ format('src/zebrad{0}', matrix.file_ext) }} ZAINOD=$(pwd)/${{ format('src/zainod{0}', matrix.file_ext) }} ZALLET=$(pwd)/${{ format('src/zallet{0}', matrix.file_ext) }} SRC_DIR=$(pwd) python3 ./subclass.py + ZALLET_BACKEND=${{ matrix.backend }} ZEBRAD=$(pwd)/${{ format('src/zebrad{0}', matrix.file_ext) }} ZAINOD=$(pwd)/${{ format('src/zainod{0}', matrix.file_ext) }} ZALLET=$(pwd)/${{ format('src/zallet{0}', matrix.file_ext) }} LIGHTWALLETD=$(pwd)/${{ format('src/lightwalletd{0}', matrix.file_ext) }} SRC_DIR=$(pwd) python3 ./subclass.py - uses: ./.github/actions/finish-interop if: always() diff --git a/README.md b/README.md index 83ae620c6..a170f45e3 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,9 @@ Zcash ecosystem. The following tests are provided: - Functional tests in Python of [`zebrad`], [`zainod`], and [`zallet`], using regtest mode and primarily their JSON-RPC interfaces. +- gRPC parity tests that run [`zainod`] and [`lightwalletd`] side-by-side + against the same [`zebrad`] node and compare their + [lightwallet-protocol] gRPC responses. The functional tests and CI workflows were originally part of the [`zcashd`] codebase, with the Python test framework (and some of the tests) inherited from @@ -15,6 +18,8 @@ codebase, with the Python test framework (and some of the tests) inherited from [`zebrad`]: https://github.com/ZcashFoundation/zebra [`zainod`]: https://github.com/zingolabs/zaino [`zallet`]: https://github.com/zcash/zallet +[`lightwalletd`]: https://github.com/zcash/lightwalletd +[lightwallet-protocol]: https://github.com/zcash/lightwallet-protocol [`zcashd`]: https://github.com/zcash/zcash [Bitcoin Core]: https://github.com/bitcoin/bitcoin @@ -55,6 +60,15 @@ On macOS or other platforms: See [the README for the functional tests][qa/README.md] for additional usage information. +### Running the gRPC parity tests + +The gRPC parity tests additionally require the `lightwalletd` binary in `./src/` +(or set `LIGHTWALLETD=/path/to/lightwalletd`). + +```bash +uv run ./qa/zcash/grpc_comparison_tests.py +``` + ### Writing tests - For new tests: diff --git a/doc/book/src/user/running-tests.md b/doc/book/src/user/running-tests.md index 619dd3af5..a86c585a1 100644 --- a/doc/book/src/user/running-tests.md +++ b/doc/book/src/user/running-tests.md @@ -5,7 +5,8 @@ ### Binaries All tests require the `zebrad` binary; most tests require the `zallet` binary; -some tests require the `zainod` binary. +some tests require the `zainod` binary. The gRPC parity tests additionally +require the `lightwalletd` binary. By default, binaries must exist in the `./src/` folder under the repository root. Alternatively, you can set the binary paths with environment variables: @@ -14,11 +15,12 @@ root. Alternatively, you can set the binary paths with environment variables: export ZEBRAD=/path/to/zebrad export ZAINOD=/path/to/zainod export ZALLET=/path/to/zallet +export LIGHTWALLETD=/path/to/lightwalletd ``` ### Python dependencies -The `zmq`, `toml`, and `base58` Python libraries are required. +The `zmq`, `toml`, `base58`, `grpcio`, and `protobuf` Python libraries are required. #### With uv (recommended) @@ -32,6 +34,7 @@ On Ubuntu or Debian-based distributions: ```bash sudo apt-get install python3-zmq python3-base58 python3-toml +pip3 install grpcio protobuf ``` On macOS or other platforms: @@ -39,7 +42,7 @@ On macOS or other platforms: ```bash python3 -m venv venv . venv/bin/activate -pip3 install pyzmq base58 toml +pip3 install pyzmq base58 toml grpcio protobuf ``` ## Running the full test suite @@ -56,6 +59,27 @@ Without uv: ./qa/zcash/full_test_suite.py ``` +## Running the gRPC parity tests + +The gRPC parity tests run [`zainod`] and [`lightwalletd`] side-by-side against +the same [`zebrad`] node and compare their [lightwallet-protocol] gRPC responses. +They require the `lightwalletd` binary (see [Binaries](#binaries) above). + +```bash +uv run ./qa/zcash/grpc_comparison_tests.py +``` + +Pass any [test runner options](#test-runner-options) after the script name: + +```bash +uv run ./qa/zcash/grpc_comparison_tests.py --nocleanup +``` + +[`zebrad`]: https://github.com/ZcashFoundation/zebra +[`zainod`]: https://github.com/zingolabs/zaino +[`lightwalletd`]: https://github.com/zcash/lightwalletd +[lightwallet-protocol]: https://github.com/zcash/lightwallet-protocol + ## Running individual tests Run a single test: @@ -127,4 +151,5 @@ rm -rf cache killall zebrad killall zainod killall zallet +killall lightwalletd ``` diff --git a/doc/book/src/user/writing-tests.md b/doc/book/src/user/writing-tests.md index 03c27a323..046ad5b16 100644 --- a/doc/book/src/user/writing-tests.md +++ b/doc/book/src/user/writing-tests.md @@ -25,6 +25,66 @@ The test framework lives in `qa/rpc-tests/test_framework/`. Key modules: | `key.py` | Wrapper around OpenSSL EC_Key | | `bignum.py` | Helpers for `script.py` | | `blocktools.py` | Helper functions for creating blocks and transactions | +| `proto/` | Generated Python gRPC stubs for the [lightwallet-protocol] | + +[lightwallet-protocol]: https://github.com/zcash/lightwallet-protocol + +## Writing gRPC parity tests + +The framework supports starting a `lightwalletd` instance alongside a `zainod` +instance and comparing their `CompactTxStreamer` gRPC responses. See +`qa/rpc-tests/grpc_comparison.py` for a complete example. + +### Service lifecycle + +Set `num_lightwalletds` in your test's `__init__` alongside `num_indexers`: + +```python +class MyGrpcTest(BitcoinTestFramework): + def __init__(self): + super().__init__() + self.num_nodes = 1 + self.num_indexers = 1 # starts zainod + self.num_lightwalletds = 1 # starts lightwalletd + self.num_wallets = 0 + self.cache_behavior = 'clean' +``` + +After `setup_network()` runs, `self.lwds` holds a list of gRPC port numbers +(one per lightwalletd instance). `self.zainos` holds JSON-RPC proxy objects as +usual, but the Zainod gRPC port is obtained via `zaino_grpc_port(i)`. + +### Connecting gRPC clients + +```python +import grpc +from test_framework.proto import service_pb2, service_pb2_grpc +from test_framework.util import zaino_grpc_port + +zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") +lwd_ch = grpc.insecure_channel(f"127.0.0.1:{self.lwds[0]}") + +zs = service_pb2_grpc.CompactTxStreamerStub(zainod_ch) +ls = service_pb2_grpc.CompactTxStreamerStub(lwd_ch) +``` + +### Regenerating the proto stubs + +The proto files live in the `lightwallet-protocol/` git subtree +(`zcash/lightwallet-protocol`). To update to a new protocol version: + +```bash +# Pull the new version +git subtree pull --prefix=lightwallet-protocol \ + https://github.com/zcash/lightwallet-protocol.git --squash + +# Regenerate Python stubs (requires grpcio-tools: uv tool install grpcio-tools) +scripts/generate_proto.sh + +# Commit both the subtree update and the regenerated stubs +git add lightwallet-protocol/ qa/rpc-tests/test_framework/proto/ +git commit +``` ## P2P test design diff --git a/pyproject.toml b/pyproject.toml index f27d8466f..bcabfe758 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,6 +5,8 @@ requires-python = "==3.11.*" dependencies = [ "base58", "embit>=0.8.0", + "grpcio", + "protobuf", "pyzmq", "toml", ] diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index 2edb46491..c76e36bd7 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -21,11 +21,17 @@ GetMempoolTx, GetMempoolStream """ +import time + import grpc from test_framework.test_framework import BitcoinTestFramework from test_framework.util import ( assert_equal, + assert_true, + p2p_port, + start_zcashd_node, + sync_blocks, zaino_grpc_port, lwd_grpc_port, ) @@ -67,6 +73,21 @@ def _normalize_compact_block(block): return normalized +def _normalize_shielded_compact_block(block): + """ + Normalize a CompactBlock that contains shielded transactions for full + comparison including vtx. + + For blocks whose coinbase is shielded (Sapling/Orchard), both Zainod and + Lightwalletd must include the compact shielded outputs in vtx. The only + implementation-specific field zeroed here is protoVersion. + """ + normalized = compact_formats_pb2.CompactBlock() + normalized.CopyFrom(block) + normalized.protoVersion = 0 + return normalized + + class GrpcComparisonTest(BitcoinTestFramework): def __init__(self): @@ -80,28 +101,86 @@ def __init__(self): # Populated in setup_network; used by test methods self.taddr = None self.txid = None + self.sapling_addr = None + self.shielded_coinbase_txid = None + self.shielded_block_height = None + self.orchard_addr = None + self.orchard_coinbase_txid = None + self.orchard_block_height = None def setup_network(self, split=False): self.wallets = [] # no wallets used; required for teardown - self.nodes = self.setup_nodes() - node = self.nodes[0] - # Mine 30 blocks so coinbase is mature and we have a chain for range queries. - node.generate(30) + # Start Zebrad (passive peer — does not mine). + self.nodes = self.setup_nodes() + zebrad = self.nodes[0] - # The default zebrad config mines coinbase to this regtest t-address. - # All mined coinbase UTXOs are at this address, giving us real t-addr - # data for GetTaddressTxids / GetTaddressBalance / GetAddressUtxos. - self.taddr = "tmSRd1r8gs77Ja67Fw1JcdoXytxsyrLTPJm" + # Start zcashd peered with zebrad. zcashd carries the built-in wallet + # needed to generate addresses and mine shielded coinbase blocks. + zcashd = start_zcashd_node(0, self.options.tmpdir, p2p_port(0)) + self.zcashd_nodes = [zcashd] - # Use the coinbase txid from block 1 for GetTransaction tests. - self.txid = node.getblock("1")['tx'][0] + # Wait for the zcashd → zebrad P2P connection to be established before + # mining so that every block propagates immediately. + zebrad_p2p = "127.0.0.1:%d" % p2p_port(0) + deadline = time.time() + 30 + while time.time() < deadline: + if any(p['addr'] == zebrad_p2p for p in zcashd.getpeerinfo()): + break + time.sleep(0.5) + else: + raise Exception("zcashd did not connect to zebrad within 30s") + + # Phase 1 — transparent coinbase (blocks 1-12). + # Provides real t-addr data for GetTaddressTxids / GetTaddressBalance / + # GetAddressUtxos tests. + self.taddr = zcashd.getnewaddress() + zcashd.setmineraddress(self.taddr) + zcashd.generate(12) + self.txid = zcashd.getblock("1")['tx'][0] + + # Generate a single unified address and extract its individual receivers + # via z_listunifiedreceivers so we can mine explicitly to each pool. + ua = zcashd.z_getnewaddress('unified') + receivers = zcashd.z_listunifiedreceivers(ua) + + # Phase 2 — shielded coinbase to Sapling via ZIP 213 (blocks 13-24). + # Heartwood is active from block 1, so a Sapling address is valid for mining. + self.sapling_addr = receivers['sapling'] + zcashd.setmineraddress(self.sapling_addr) + shielded_start = zcashd.getblockcount() + 1 # = 13 + zcashd.generate(12) + self.shielded_block_height = shielded_start + self.shielded_coinbase_txid = zcashd.getblock(str(shielded_start))['tx'][0] + + # Phase 3 — shielded coinbase to Orchard via ZIP 213 + NU5 (blocks 25-36). + # NU5 is active from block 1, so the Orchard receiver of the UA is valid + # for mining. This populates the Orchard commitment tree, allowing + # GetTreeState to return a non-empty orchardTree. + self.orchard_addr = receivers['orchard'] + zcashd.setmineraddress(self.orchard_addr) + orchard_start = zcashd.getblockcount() + 1 # = 25 + zcashd.generate(12) + self.orchard_block_height = orchard_start + self.orchard_coinbase_txid = zcashd.getblock(str(orchard_start))['tx'][0] + + # Pad the chain to at least 100 blocks. Zainod requires a minimum of + # 100 blocks to start (see test_framework.py:prepare_chain). + # The three mining phases above produce 36 blocks; mine the remainder + # as transparent coinbase so the shielded block heights stay stable. + current_height = zcashd.getblockcount() + if current_height < 100: + zcashd.setmineraddress(self.taddr) + zcashd.generate(100 - current_height) + + # Sync zebrad to zcashd's chain tip before starting the indexers. + sync_blocks([zebrad, zcashd], timeout=120) self.zainos = self.setup_indexers() self.lwds = self.setup_lightwalletds() # Wait for both indexers to sync to the chain tip before running tests. - tip = node.getblockcount() + tip = zebrad.getblockcount() self._wait_for_indexers(tip) def _wait_for_indexers(self, expected_height, timeout=60): @@ -110,24 +189,28 @@ def _wait_for_indexers(self, expected_height, timeout=60): zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") lwd_ch = grpc.insecure_channel(f"127.0.0.1:{self.lwds[0]}") - zs = service_pb2_grpc.CompactTxStreamerStub(zainod_ch) - ls = service_pb2_grpc.CompactTxStreamerStub(lwd_ch) - - deadline = time.time() + timeout - while time.time() < deadline: - try: - z_info = zs.GetLightdInfo(service_pb2.Empty(), timeout=5) - l_info = ls.GetLightdInfo(service_pb2.Empty(), timeout=5) - if (z_info.blockHeight >= expected_height and - l_info.blockHeight >= expected_height): - return - except grpc.RpcError: - pass - time.sleep(1) - - raise Exception( - f"Indexers did not sync to height {expected_height} within {timeout}s" - ) + try: + zs = service_pb2_grpc.CompactTxStreamerStub(zainod_ch) + ls = service_pb2_grpc.CompactTxStreamerStub(lwd_ch) + + deadline = time.time() + timeout + while time.time() < deadline: + try: + z_info = zs.GetLightdInfo(service_pb2.Empty(), timeout=5) + l_info = ls.GetLightdInfo(service_pb2.Empty(), timeout=5) + if (z_info.blockHeight >= expected_height and + l_info.blockHeight >= expected_height): + return + except grpc.RpcError: + pass + time.sleep(1) + + raise Exception( + f"Indexers did not sync to height {expected_height} within {timeout}s" + ) + finally: + zainod_ch.close() + lwd_ch.close() def run_test(self): zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") @@ -204,6 +287,31 @@ def run_test(self): print("Testing GetAddressUtxosStream...") self.test_get_address_utxos_stream(zs, ls) + # Shielded coinbase tests — blocks mined to a Sapling address via ZIP 213. + print("Testing GetBlock (shielded coinbase)...") + self.test_get_block_shielded(zs, ls) + + print("Testing GetBlockNullifiers (shielded coinbase)...") + self.test_get_block_nullifiers_shielded(zs, ls) + + print("Testing GetBlockRange (shielded)...") + self.test_get_block_range_shielded(zs, ls) + + print("Testing GetTransaction (shielded coinbase)...") + self.test_get_transaction_shielded(zs, ls) + + print("Testing GetTreeState (after Sapling coinbase)...") + self.test_get_tree_state_sapling(zs, ls) + + print("Testing GetBlock (Orchard coinbase)...") + self.test_get_block_orchard(zs, ls) + + print("Testing GetTransaction (Orchard coinbase)...") + self.test_get_transaction_orchard(zs, ls) + + print("Testing GetTreeState (after Orchard coinbase)...") + self.test_get_tree_state_orchard(zs, ls) + # TODO: GetMempoolTx and GetMempoolStream require submitting a transaction # to the mempool. This needs a wallet (zallet) to sign and send a raw tx. # Add these when num_wallets=1 is wired up with a t-address workflow. @@ -359,6 +467,7 @@ def test_get_taddress_txids_lower(self, zs, ls): assert_equal(len(z_txs), len(l_txs)) for z_tx, l_tx in zip(z_txs, l_txs): assert_equal(z_tx.data, l_tx.data) + assert_equal(z_tx.height, l_tx.height) def test_get_taddress_txids_upper(self, zs, ls): req = service_pb2.TransparentAddressBlockFilter( @@ -371,6 +480,9 @@ def test_get_taddress_txids_upper(self, zs, ls): z_txs = _collect_stream(zs.GetTaddressTxids(req)) l_txs = _collect_stream(ls.GetTaddressTxids(req)) assert_equal(len(z_txs), len(l_txs)) + for z_tx, l_tx in zip(z_txs, l_txs): + assert_equal(z_tx.data, l_tx.data) + assert_equal(z_tx.height, l_tx.height) def test_get_taddress_balance(self, zs, ls): req = service_pb2.AddressList(addresses=[self.taddr]) @@ -484,7 +596,103 @@ def test_get_address_utxos_stream(self, zs, ls): assert_equal(z_u.address, l_u.address) assert_equal(z_u.txid, l_u.txid) assert_equal(z_u.index, l_u.index) + assert_equal(z_u.script, l_u.script) assert_equal(z_u.valueZat, l_u.valueZat) + assert_equal(z_u.height, l_u.height) + + # ------------------------------------------------------------------------- + # Shielded coinbase tests + # + # These blocks were mined by zcashd with a Sapling miner address (ZIP 213, + # active via Heartwood from block 1). The coinbase output is a Sapling note, + # so the compact block's vtx must be non-empty and identical across both + # implementations — unlike transparent-only blocks where Zainod omits vtx. + # ------------------------------------------------------------------------- + + def test_get_block_shielded(self, zs, ls): + """A shielded-coinbase block must have matching, non-empty vtx.""" + req = service_pb2.BlockID(height=self.shielded_block_height, hash=b"") + z = _normalize_shielded_compact_block(zs.GetBlock(req)) + l = _normalize_shielded_compact_block(ls.GetBlock(req)) + assert_true(len(z.vtx) > 0, "Zainod returned empty vtx for shielded coinbase block") + assert_true(len(l.vtx) > 0, "Lightwalletd returned empty vtx for shielded coinbase block") + assert_equal(z, l) + + def test_get_block_nullifiers_shielded(self, zs, ls): + req = service_pb2.BlockID(height=self.shielded_block_height, hash=b"") + z = _normalize_shielded_compact_block(zs.GetBlockNullifiers(req)) + l = _normalize_shielded_compact_block(ls.GetBlockNullifiers(req)) + assert_equal(z, l) + + def test_get_block_range_shielded(self, zs, ls): + """All blocks in the shielded range must have matching, non-empty vtx.""" + end = self.shielded_block_height + 5 + req = service_pb2.BlockRange( + start=service_pb2.BlockID(height=self.shielded_block_height, hash=b""), + end=service_pb2.BlockID(height=end, hash=b""), + ) + z_blocks = [_normalize_shielded_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] + l_blocks = [_normalize_shielded_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] + assert_equal(len(z_blocks), len(l_blocks)) + for z_b, l_b in zip(z_blocks, l_blocks): + assert_true(len(z_b.vtx) > 0, "Zainod returned empty vtx for shielded block at height %d" % z_b.height) + assert_true(len(l_b.vtx) > 0, "Lightwalletd returned empty vtx for shielded block at height %d" % l_b.height) + assert_equal(z_b, l_b) + + def test_get_transaction_shielded(self, zs, ls): + """Shielded coinbase transaction bytes and height must match.""" + txid_bytes = bytes.fromhex(self.shielded_coinbase_txid)[::-1] + req = service_pb2.TxFilter(hash=txid_bytes) + z = zs.GetTransaction(req) + l = ls.GetTransaction(req) + assert_equal(z.data, l.data) + assert_equal(z.height, l.height) + assert_equal(z.height, self.shielded_block_height) + + def test_get_tree_state_sapling(self, zs, ls): + """After Sapling coinbase the Sapling tree must be non-empty and identical.""" + req = service_pb2.BlockID(height=self.shielded_block_height, hash=b"") + z = zs.GetTreeState(req) + l = ls.GetTreeState(req) + assert_equal(z.network, l.network) + assert_equal(z.height, l.height) + assert_equal(z.hash, l.hash) + assert_equal(z.saplingTree, l.saplingTree) + assert_equal(z.orchardTree, l.orchardTree) + assert_true(len(z.saplingTree) > 0, "Sapling tree is empty after Sapling coinbase") + + def test_get_block_orchard(self, zs, ls): + """An Orchard-coinbase block must have matching, non-empty vtx.""" + req = service_pb2.BlockID(height=self.orchard_block_height, hash=b"") + z = _normalize_shielded_compact_block(zs.GetBlock(req)) + l = _normalize_shielded_compact_block(ls.GetBlock(req)) + assert_true(len(z.vtx) > 0, "Zainod returned empty vtx for Orchard coinbase block") + assert_true(len(l.vtx) > 0, "Lightwalletd returned empty vtx for Orchard coinbase block") + assert_equal(z, l) + + def test_get_transaction_orchard(self, zs, ls): + """Orchard coinbase transaction bytes and height must match.""" + txid_bytes = bytes.fromhex(self.orchard_coinbase_txid)[::-1] + req = service_pb2.TxFilter(hash=txid_bytes) + z = zs.GetTransaction(req) + l = ls.GetTransaction(req) + assert_equal(z.data, l.data) + assert_equal(z.height, l.height) + assert_equal(z.height, self.orchard_block_height) + + def test_get_tree_state_orchard(self, zs, ls): + """After Orchard coinbase both the Sapling and Orchard trees must be non-empty.""" + req = service_pb2.BlockID(height=self.orchard_block_height, hash=b"") + z = zs.GetTreeState(req) + l = ls.GetTreeState(req) + assert_equal(z.network, l.network) + assert_equal(z.height, l.height) + assert_equal(z.hash, l.hash) + assert_equal(z.saplingTree, l.saplingTree) + assert_equal(z.orchardTree, l.orchardTree) + assert_true(len(z.saplingTree) > 0, "Sapling tree is empty at Orchard coinbase block") + assert_true(len(z.orchardTree) > 0, "Orchard tree is empty after Orchard coinbase") + if __name__ == '__main__': GrpcComparisonTest().main() diff --git a/qa/rpc-tests/test_framework/proto/service_pb2.pyi b/qa/rpc-tests/test_framework/proto/service_pb2.pyi index 9fba9522b..3eabec0c2 100644 --- a/qa/rpc-tests/test_framework/proto/service_pb2.pyi +++ b/qa/rpc-tests/test_framework/proto/service_pb2.pyi @@ -1,4 +1,4 @@ -import compact_formats_pb2 as _compact_formats_pb2 +from . import compact_formats_pb2 as _compact_formats_pb2 from google.protobuf.internal import containers as _containers from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper from google.protobuf import descriptor as _descriptor diff --git a/qa/rpc-tests/test_framework/test_framework.py b/qa/rpc-tests/test_framework/test_framework.py index 809394806..47e4b82cd 100755 --- a/qa/rpc-tests/test_framework/test_framework.py +++ b/qa/rpc-tests/test_framework/test_framework.py @@ -32,10 +32,12 @@ stop_wallets, stop_zainos, stop_lightwalletds, + stop_zcashd_nodes, wait_bitcoinds, wait_zainods, wait_zallets, wait_lightwalletds, + wait_zcashd_nodes, enable_coverage, check_json_precision, PortSeed, @@ -50,11 +52,13 @@ def __init__(self): self.num_indexers = 0 self.num_lightwalletds = 0 self.num_wallets = 4 + self.num_zcashd_nodes = 0 self.cache_behavior = 'current' self.nodes = None self.zainos = None self.lwds = None self.wallets = None + self.zcashd_nodes = None self.miner_addresses = None def run_test(self): @@ -241,9 +245,12 @@ def main(self): wait_lightwalletds() print("Stopping indexers") - if self.zainos is not None: - stop_zainos(self.zainos) - wait_zainods() + stop_zainos(self.zainos or []) + wait_zainods() + + print("Stopping zcashd nodes") + stop_zcashd_nodes(self.zcashd_nodes or []) + wait_zcashd_nodes() print("Stopping nodes") if self.nodes is not None: @@ -254,7 +261,7 @@ def main(self): # running processes, `util` keeps global dicts or running processes stop_all_processes() else: - print("Note: zebrads, zainods, lightwalletds, and zallets were not stopped and may still be running") + print("Note: zebrads, zainods, lightwalletds, zallets, and zcashd nodes were not stopped and may still be running") if not self.options.nocleanup and not self.options.noshutdown: print("Cleaning up") diff --git a/qa/rpc-tests/test_framework/util.py b/qa/rpc-tests/test_framework/util.py index 90e89cb8b..383e147a2 100644 --- a/qa/rpc-tests/test_framework/util.py +++ b/qa/rpc-tests/test_framework/util.py @@ -2008,3 +2008,114 @@ def wait_lightwalletds(): except Exception: pass lwd_processes.clear() + + +# zcashd utilities +# Used for tests that need a full node with wallet to generate shielded transactions. + +zcashd_node_processes = {} + +ZCASHD_RPC_USER = "zcashrpc" +ZCASHD_RPC_PASSWORD = "zcashrpc" + + +def zcashd_node_binary(): + return os.getenv("ZCASHD", os.path.join("src", "zcashd")) + + +def zcashd_p2p_port(n): + assert n <= MAX_NODES + return PORT_MIN + (PORT_RANGE * 7) + n + (MAX_NODES * PortSeed.n) % (PORT_RANGE - 1 - MAX_NODES) + + +def zcashd_rpc_port(n): + return PORT_MIN + (PORT_RANGE * 8) + n + (MAX_NODES * PortSeed.n) % (PORT_RANGE - 1 - MAX_NODES) + + +def zcashd_rpc_url(i): + return "http://%s:%s@127.0.0.1:%d" % (ZCASHD_RPC_USER, ZCASHD_RPC_PASSWORD, zcashd_rpc_port(i)) + + +def write_zcash_conf(datadir, node_rpc_port, node_p2p_port, peer_p2p_port): + """Write a zcash.conf for a regtest zcashd node peered with zebrad. + + All network upgrades are activated from block 1 to match zebrad's built-in + Regtest network defaults. Heartwood (ZIP 213) enables shielded coinbase. + coinbasematurity=10 allows spending coinbase after 10 confirmations. + """ + os.makedirs(datadir, exist_ok=True) + conf_path = os.path.join(datadir, "zcash.conf") + with open(conf_path, "w", encoding="utf8") as f: + f.write("regtest=1\n") + f.write("port=%d\n" % node_p2p_port) + f.write("rpcbind=127.0.0.1\n") + f.write("rpcport=%d\n" % node_rpc_port) + f.write("rpcuser=%s\n" % ZCASHD_RPC_USER) + f.write("rpcpassword=%s\n" % ZCASHD_RPC_PASSWORD) + # Activate all upgrades from block 1 to match zebrad Regtest defaults. + f.write("nuparams=5ba81b19:1\n") # Overwinter + f.write("nuparams=76b809bb:1\n") # Sapling + f.write("nuparams=2bb40e60:1\n") # Blossom + f.write("nuparams=f5b9230b:1\n") # Heartwood (ZIP 213: shielded coinbase) + f.write("nuparams=e9ff75a6:1\n") # Canopy + f.write("nuparams=c2d6d0b4:1\n") # NU5 (Orchard) + f.write("nuparams=c8e71055:1\n") # NU6 + f.write("addnode=127.0.0.1:%d\n" % peer_p2p_port) + f.write("i-am-aware-zcashd-will-be-replaced-by-zebrad-and-zallet-in-2025=1\n") + return conf_path + + +def start_zcashd_node(i, dirname, peer_p2p_port, binary=None, stderr=None): + """Start a regtest zcashd node peered with zebrad and return an RPC proxy.""" + if binary is None: + binary = zcashd_node_binary() + datadir = os.path.join(dirname, "zcashd" + str(i)) + conf = write_zcash_conf( + datadir, + zcashd_rpc_port(i), + zcashd_p2p_port(i), + peer_p2p_port, + ) + args = [binary, "-conf=" + conf, "-datadir=" + datadir] + zcashd_node_processes[i] = subprocess.Popen(args, stderr=stderr) + url = zcashd_rpc_url(i) + wait_for_zcashd_start(zcashd_node_processes[i], url, i) + if os.getenv("PYTHON_DEBUG", ""): + print("start_zcashd_node: zcashd %d ready, pid %d" % (i, zcashd_node_processes[i].pid)) + return get_rpc_auth_proxy(url, i) + + +def wait_for_zcashd_start(process, url, i): + """Poll zcashd RPC until ready or until the process exits.""" + while True: + if process.poll() is not None: + raise Exception( + "zcashd node %d exited with status %d during initialization" + % (i, process.returncode) + ) + try: + rpc = get_rpc_auth_proxy(url, i) + rpc.getblockcount() + break + except IOError as e: + if e.errno != errno.ECONNREFUSED: + raise + except JSONRPCException as e: + if e.error['code'] != -28: + raise + time.sleep(0.25) + + +def stop_zcashd_nodes(nodes): + for node in nodes: + try: + node.stop() + except http.client.CannotSendRequest as e: + print("WARN: Unable to stop zcashd node: " + repr(e)) + del nodes[:] + + +def wait_zcashd_nodes(): + for proc in list(zcashd_node_processes.values()): + proc.wait() + zcashd_node_processes.clear() diff --git a/scripts/generate_proto.sh b/scripts/generate_proto.sh index bc4635cd3..8e627885d 100755 --- a/scripts/generate_proto.sh +++ b/scripts/generate_proto.sh @@ -29,11 +29,14 @@ python-grpc-tools-protoc \ "$PROTO_SRC/service.proto" # grpcio-tools generates flat imports that break when loaded as a package. -# Fix them to use relative imports. -sed -i 's/^import compact_formats_pb2 as/from . import compact_formats_pb2 as/' \ +# Fix them to use relative imports in all generated Python artifacts. +for generated_file in \ "$PROTO_OUT/service_pb2.py" \ + "$PROTO_OUT/service_pb2.pyi" \ "$PROTO_OUT/service_pb2_grpc.py" -sed -i 's/^import service_pb2 as/from . import service_pb2 as/' \ - "$PROTO_OUT/service_pb2_grpc.py" +do + sed -i 's/^import compact_formats_pb2 as/from . import compact_formats_pb2 as/' "$generated_file" + sed -i 's/^import service_pb2 as/from . import service_pb2 as/' "$generated_file" +done echo "Stubs written to $PROTO_OUT" diff --git a/uv.lock b/uv.lock index ca23c6a7f..3d30f29a1 100644 --- a/uv.lock +++ b/uv.lock @@ -41,6 +41,42 @@ version = "0.8.0" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/83/88/b054b00ade6d2a41749e15976cdcec4b7ec4656ac1cb917ce3de395528d1/embit-0.8.0.tar.gz", hash = "sha256:8bf4b10073c67400370ce523fb16f035fe759f6fdd987c579bdcc268d75ed770", size = 763120, upload-time = "2024-05-30T10:56:48.944Z" } +[[package]] +name = "grpcio" +version = "1.80.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b7/48/af6173dbca4454f4637a4678b67f52ca7e0c1ed7d5894d89d434fecede05/grpcio-1.80.0.tar.gz", hash = "sha256:29aca15edd0688c22ba01d7cc01cb000d72b2033f4a3c72a81a19b56fd143257", size = 12978905, upload-time = "2026-03-30T08:49:10.502Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5d/db/1d56e5f5823257b291962d6c0ce106146c6447f405b60b234c4f222a7cde/grpcio-1.80.0-cp311-cp311-linux_armv7l.whl", hash = "sha256:dfab85db094068ff42e2a3563f60ab3dddcc9d6488a35abf0132daec13209c8a", size = 6055009, upload-time = "2026-03-30T08:46:46.265Z" }, + { url = "https://files.pythonhosted.org/packages/6e/18/c83f3cad64c5ca63bca7e91e5e46b0d026afc5af9d0a9972472ceba294b3/grpcio-1.80.0-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:5c07e82e822e1161354e32da2662f741a4944ea955f9f580ec8fb409dd6f6060", size = 12035295, upload-time = "2026-03-30T08:46:49.099Z" }, + { url = "https://files.pythonhosted.org/packages/0f/8e/e14966b435be2dda99fbe89db9525ea436edc79780431a1c2875a3582644/grpcio-1.80.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ba0915d51fd4ced2db5ff719f84e270afe0e2d4c45a7bdb1e8d036e4502928c2", size = 6610297, upload-time = "2026-03-30T08:46:52.123Z" }, + { url = "https://files.pythonhosted.org/packages/cc/26/d5eb38f42ce0e3fdc8174ea4d52036ef8d58cc4426cb800f2610f625dd75/grpcio-1.80.0-cp311-cp311-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:3cb8130ba457d2aa09fa6b7c3ed6b6e4e6a2685fce63cb803d479576c4d80e21", size = 7300208, upload-time = "2026-03-30T08:46:54.859Z" }, + { url = "https://files.pythonhosted.org/packages/25/51/bd267c989f85a17a5b3eea65a6feb4ff672af41ca614e5a0279cc0ea381c/grpcio-1.80.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:09e5e478b3d14afd23f12e49e8b44c8684ac3c5f08561c43a5b9691c54d136ab", size = 6813442, upload-time = "2026-03-30T08:46:57.056Z" }, + { url = "https://files.pythonhosted.org/packages/9e/d9/d80eef735b19e9169e30164bbf889b46f9df9127598a83d174eb13a48b26/grpcio-1.80.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:00168469238b022500e486c1c33916acf2f2a9b2c022202cf8a1885d2e3073c1", size = 7414743, upload-time = "2026-03-30T08:46:59.682Z" }, + { url = "https://files.pythonhosted.org/packages/de/f2/567f5bd5054398ed6b0509b9a30900376dcf2786bd936812098808b49d8d/grpcio-1.80.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8502122a3cc1714038e39a0b071acb1207ca7844208d5ea0d091317555ee7106", size = 8426046, upload-time = "2026-03-30T08:47:02.474Z" }, + { url = "https://files.pythonhosted.org/packages/62/29/73ef0141b4732ff5eacd68430ff2512a65c004696997f70476a83e548e7e/grpcio-1.80.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:ce1794f4ea6cc3ca29463f42d665c32ba1b964b48958a66497917fe9069f26e6", size = 7851641, upload-time = "2026-03-30T08:47:05.462Z" }, + { url = "https://files.pythonhosted.org/packages/46/69/abbfa360eb229a8623bab5f5a4f8105e445bd38ce81a89514ba55d281ad0/grpcio-1.80.0-cp311-cp311-win32.whl", hash = "sha256:51b4a7189b0bef2aa30adce3c78f09c83526cf3dddb24c6a96555e3b97340440", size = 4154368, upload-time = "2026-03-30T08:47:08.027Z" }, + { url = "https://files.pythonhosted.org/packages/6f/d4/ae92206d01183b08613e846076115f5ac5991bae358d2a749fa864da5699/grpcio-1.80.0-cp311-cp311-win_amd64.whl", hash = "sha256:02e64bb0bb2da14d947a49e6f120a75e947250aebe65f9629b62bb1f5c14e6e9", size = 4894235, upload-time = "2026-03-30T08:47:10.839Z" }, +] + +[[package]] +name = "protobuf" +version = "7.34.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6b/6b/a0e95cad1ad7cc3f2c6821fcab91671bd5b78bd42afb357bb4765f29bc41/protobuf-7.34.1.tar.gz", hash = "sha256:9ce42245e704cc5027be797c1db1eb93184d44d1cdd71811fb2d9b25ad541280", size = 454708, upload-time = "2026-03-20T17:34:47.036Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ec/11/3325d41e6ee15bf1125654301211247b042563bcc898784351252549a8ad/protobuf-7.34.1-cp310-abi3-macosx_10_9_universal2.whl", hash = "sha256:d8b2cc79c4d8f62b293ad9b11ec3aebce9af481fa73e64556969f7345ebf9fc7", size = 429247, upload-time = "2026-03-20T17:34:37.024Z" }, + { url = "https://files.pythonhosted.org/packages/eb/9d/aa69df2724ff63efa6f72307b483ce0827f4347cc6d6df24b59e26659fef/protobuf-7.34.1-cp310-abi3-manylinux2014_aarch64.whl", hash = "sha256:5185e0e948d07abe94bb76ec9b8416b604cfe5da6f871d67aad30cbf24c3110b", size = 325753, upload-time = "2026-03-20T17:34:38.751Z" }, + { url = "https://files.pythonhosted.org/packages/92/e8/d174c91fd48e50101943f042b09af9029064810b734e4160bbe282fa1caa/protobuf-7.34.1-cp310-abi3-manylinux2014_s390x.whl", hash = "sha256:403b093a6e28a960372b44e5eb081775c9b056e816a8029c61231743d63f881a", size = 340198, upload-time = "2026-03-20T17:34:39.871Z" }, + { url = "https://files.pythonhosted.org/packages/53/1b/3b431694a4dc6d37b9f653f0c64b0a0d9ec074ee810710c0c3da21d67ba7/protobuf-7.34.1-cp310-abi3-manylinux2014_x86_64.whl", hash = "sha256:8ff40ce8cd688f7265326b38d5a1bed9bfdf5e6723d49961432f83e21d5713e4", size = 324267, upload-time = "2026-03-20T17:34:41.1Z" }, + { url = "https://files.pythonhosted.org/packages/85/29/64de04a0ac142fb685fd09999bc3d337943fb386f3a0ec57f92fd8203f97/protobuf-7.34.1-cp310-abi3-win32.whl", hash = "sha256:34b84ce27680df7cca9f231043ada0daa55d0c44a2ddfaa58ec1d0d89d8bf60a", size = 426628, upload-time = "2026-03-20T17:34:42.536Z" }, + { url = "https://files.pythonhosted.org/packages/4d/87/cb5e585192a22b8bd457df5a2c16a75ea0db9674c3a0a39fc9347d84e075/protobuf-7.34.1-cp310-abi3-win_amd64.whl", hash = "sha256:e97b55646e6ce5cbb0954a8c28cd39a5869b59090dfaa7df4598a7fba869468c", size = 437901, upload-time = "2026-03-20T17:34:44.112Z" }, + { url = "https://files.pythonhosted.org/packages/88/95/608f665226bca68b736b79e457fded9a2a38c4f4379a4a7614303d9db3bc/protobuf-7.34.1-py3-none-any.whl", hash = "sha256:bb3812cd53aefea2b028ef42bd780f5b96407247f20c6ef7c679807e9d188f11", size = 170715, upload-time = "2026-03-20T17:34:45.384Z" }, +] + [[package]] name = "pycparser" version = "3.0" @@ -95,6 +131,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/44/6f/7120676b6d73228c96e17f1f794d8ab046fc910d781c8d151120c3f1569e/toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", size = 16588, upload-time = "2020-11-01T01:40:20.672Z" }, ] +[[package]] +name = "typing-extensions" +version = "4.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" }, +] + [[package]] name = "zcash-integration-tests" version = "0.1.0" @@ -102,6 +147,8 @@ source = { virtual = "." } dependencies = [ { name = "base58" }, { name = "embit" }, + { name = "grpcio" }, + { name = "protobuf" }, { name = "pyzmq" }, { name = "toml" }, ] @@ -110,6 +157,8 @@ dependencies = [ requires-dist = [ { name = "base58" }, { name = "embit", specifier = ">=0.8.0" }, + { name = "grpcio" }, + { name = "protobuf" }, { name = "pyzmq" }, { name = "toml" }, ] From 6608355c4ed3f8ecea8d07d73af801a4e6e373f5 Mon Sep 17 00:00:00 2001 From: Pacu Date: Tue, 14 Apr 2026 12:31:54 -0300 Subject: [PATCH 04/24] fix: rework grpc_comparison chain setup to use submitblock and mineraddress config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit setmineraddress has been removed from this zcashd version, so the mining address must be set via zcash.conf; zcashd is restarted between phases. P2P block propagation is replaced by submitblock to sidestep known zcashd↔zebrad P2P issues (zebra#10329, #10332). Chain layout changes to match: Blocks 1–100 — Orchard coinbase (single zcashd restart with orchard_addr). Block 101 — z_sendmany confirmation: transparent + Sapling outputs in one tx. The Sapling tree is now correctly expected to be empty at Orchard-coinbase height and non-empty only after block 101. authproxy.py is fixed to accept both 'application/json' and 'application/json; charset=utf-8' so zcashd RPC calls no longer raise a content-type error. --- qa/rpc-tests/grpc_comparison.py | 250 ++++++++++++++--------- qa/rpc-tests/test_framework/authproxy.py | 4 +- qa/rpc-tests/test_framework/util.py | 45 +++- 3 files changed, 193 insertions(+), 106 deletions(-) diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index c76e36bd7..351073216 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -10,6 +10,12 @@ Mirrors the Rust test fixtures in client_rpc_test_fixtures, porting them to Python so they run inside the existing BitcoinTestFramework CI pipeline. +Chain setup (via zcashd + submitblock into Zebrad): + Blocks 1-100 — Orchard coinbase (mined to orchard_addr). Populates the Orchard + commitment tree and provides mature shielded funds for Phase 2. + Block 101 — Confirms a z_sendmany tx that has a transparent output (to taddr) + and a Sapling output (to sapling_addr), populating the Sapling tree. + Methods tested (CompactTxStreamer service): GetLightdInfo, GetLatestBlock, GetBlock, GetBlockNullifiers, GetBlockRange, GetBlockRangeNullifiers, @@ -22,18 +28,19 @@ """ import time +from decimal import Decimal import grpc +from test_framework.config import ZebraArgs from test_framework.test_framework import BitcoinTestFramework from test_framework.util import ( assert_equal, assert_true, - p2p_port, + start_nodes, start_zcashd_node, - sync_blocks, + stop_zcashd_node, zaino_grpc_port, - lwd_grpc_port, ) from test_framework.proto import ( compact_formats_pb2, @@ -50,6 +57,29 @@ def _collect_stream(streaming_call): return results +def _wait_for_operation(zcashd, opid, timeout=120): + """ + Poll z_getoperationresult until the given operation succeeds or fails. + + z_getoperationresult consumes the result on first return, so we stop + polling as soon as a result appears. Returns the result dict on success; + raises Exception on failure or timeout. + """ + deadline = time.time() + timeout + while time.time() < deadline: + results = zcashd.z_getoperationresult([opid]) + if results: + r = results[0] + if r['status'] == 'success': + return r + raise Exception( + "z_sendmany %s failed: %s" + % (opid, r.get('error', {}).get('message', str(r))) + ) + time.sleep(1) + raise Exception("z_sendmany operation %s timed out after %ds" % (opid, timeout)) + + def _normalize_compact_block(block): """ Normalize a CompactBlock for header-level comparison. @@ -100,93 +130,123 @@ def __init__(self): # Populated in setup_network; used by test methods self.taddr = None - self.txid = None + self.txid = None # txid of the z_sendmany tx (has both t and Sapling outputs) self.sapling_addr = None - self.shielded_coinbase_txid = None - self.shielded_block_height = None + self.sapling_txid = None # same tx, kept separate for clarity in shielded tests + self.sapling_tx_height = None self.orchard_addr = None self.orchard_coinbase_txid = None self.orchard_block_height = None + def setup_nodes(self): + # All network upgrades activate at block 1 to match the zcashd config + # (nuparams=:1 for each upgrade). This ensures zebrad + # accepts every block submitted via submitblock, including Sapling + # (ZIP 213 / Heartwood) and Orchard (NU5) coinbase blocks. + return start_nodes(self.num_nodes, self.options.tmpdir, + [ZebraArgs(activation_heights={ + "Overwinter": 1, + "Sapling": 1, + "Blossom": 1, + "Heartwood": 1, + "Canopy": 1, + "NU5": 1, + "NU6": 1, + })]) + + def _restart_zcashd(self, miner_address): + """Stop zcashd node 0, reconfigure with a new miner address, and restart.""" + stop_zcashd_node(0, self.zcashd_nodes[0]) + node = start_zcashd_node(0, self.options.tmpdir, miner_address=miner_address) + self.zcashd_nodes[0] = node + return node + def setup_network(self, split=False): self.wallets = [] # no wallets used; required for teardown - # Start Zebrad (passive peer — does not mine). + # Start Zebrad (passive — does not mine). self.nodes = self.setup_nodes() zebrad = self.nodes[0] - # Start zcashd peered with zebrad. zcashd carries the built-in wallet - # needed to generate addresses and mine shielded coinbase blocks. - zcashd = start_zcashd_node(0, self.options.tmpdir, p2p_port(0)) + # Phase 0 — start zcashd without a miner address to generate wallet + # addresses. setmineraddress has been removed from this zcashd version; + # the miner address must be set via zcash.conf and takes effect on restart. + zcashd = start_zcashd_node(0, self.options.tmpdir) self.zcashd_nodes = [zcashd] - # Wait for the zcashd → zebrad P2P connection to be established before - # mining so that every block propagates immediately. - zebrad_p2p = "127.0.0.1:%d" % p2p_port(0) - deadline = time.time() + 30 - while time.time() < deadline: - if any(p['addr'] == zebrad_p2p for p in zcashd.getpeerinfo()): - break - time.sleep(0.5) - else: - raise Exception("zcashd did not connect to zebrad within 30s") - - # Phase 1 — transparent coinbase (blocks 1-12). - # Provides real t-addr data for GetTaddressTxids / GetTaddressBalance / - # GetAddressUtxos tests. self.taddr = zcashd.getnewaddress() - zcashd.setmineraddress(self.taddr) - zcashd.generate(12) - self.txid = zcashd.getblock("1")['tx'][0] - # Generate a single unified address and extract its individual receivers - # via z_listunifiedreceivers so we can mine explicitly to each pool. - ua = zcashd.z_getnewaddress('unified') + # Generate a unified address with Sapling and Orchard receivers via the + # current account-based API. z_getnewaddress('unified') was removed; + # use z_getnewaccount + z_getaddressforaccount instead. + account = zcashd.z_getnewaccount()['account'] + ua = zcashd.z_getaddressforaccount(account, ['sapling', 'orchard'])['address'] receivers = zcashd.z_listunifiedreceivers(ua) - - # Phase 2 — shielded coinbase to Sapling via ZIP 213 (blocks 13-24). - # Heartwood is active from block 1, so a Sapling address is valid for mining. self.sapling_addr = receivers['sapling'] - zcashd.setmineraddress(self.sapling_addr) - shielded_start = zcashd.getblockcount() + 1 # = 13 - zcashd.generate(12) - self.shielded_block_height = shielded_start - self.shielded_coinbase_txid = zcashd.getblock(str(shielded_start))['tx'][0] - - # Phase 3 — shielded coinbase to Orchard via ZIP 213 + NU5 (blocks 25-36). - # NU5 is active from block 1, so the Orchard receiver of the UA is valid - # for mining. This populates the Orchard commitment tree, allowing - # GetTreeState to return a non-empty orchardTree. self.orchard_addr = receivers['orchard'] - zcashd.setmineraddress(self.orchard_addr) - orchard_start = zcashd.getblockcount() + 1 # = 25 - zcashd.generate(12) - self.orchard_block_height = orchard_start - self.orchard_coinbase_txid = zcashd.getblock(str(orchard_start))['tx'][0] - - # Pad the chain to at least 100 blocks. Zainod requires a minimum of - # 100 blocks to start (see test_framework.py:prepare_chain). - # The three mining phases above produce 36 blocks; mine the remainder - # as transparent coinbase so the shielded block heights stay stable. - current_height = zcashd.getblockcount() - if current_height < 100: - zcashd.setmineraddress(self.taddr) - zcashd.generate(100 - current_height) - - # Sync zebrad to zcashd's chain tip before starting the indexers. - sync_blocks([zebrad, zcashd], timeout=120) + + # Phase 1 — mine all blocks to the Orchard receiver (single restart). + # NU5 is active from block 1, so Orchard coinbase is valid throughout. + # All 100 blocks are Orchard coinbase, which populates the Orchard + # commitment tree and provides spendable shielded funds for Phase 2. + zcashd = self._restart_zcashd(self.orchard_addr) + zcashd.generate(100) + self.orchard_block_height = 1 + self.orchard_coinbase_txid = zcashd.getblock("1")['tx'][0] + + # Phase 2 — send from the Orchard account to both the transparent address + # and the Sapling address in a single z_sendmany transaction. + # + # After 100 Orchard coinbase blocks the block-1 coinbase has matured + # (coinbase maturity = 100), so the Orchard balance is fully spendable. + # "NoPrivacy" allows cross-pool spending (Orchard → Sapling) and + # transparent recipients (Orchard → t-addr) in one transaction. + opid = zcashd.z_sendmany( + ua, + [ + {"address": self.taddr, "amount": Decimal("1.0")}, + {"address": self.sapling_addr, "amount": Decimal("1.0")}, + ], + 1, + Decimal("0.0001"), + "NoPrivacy", + ) + op_result = _wait_for_operation(zcashd, opid) + send_txid = op_result['result']['txid'] + + # Mine 1 block to confirm both outputs (height 101). + zcashd.generate(1) + confirm_height = zcashd.getblockcount() # = 101 + + # self.txid is used by test_get_transaction and transparent address tests. + # self.sapling_txid is the same tx viewed from the Sapling-output angle. + self.txid = send_txid + self.sapling_txid = send_txid + self.sapling_tx_height = confirm_height + + # Push every zcashd-mined block into zebrad via submitblock. + # This sidesteps the known P2P propagation issues between zcashd and + # zebrad (ZcashFoundation/zebra#10329, #10332). + tip = zcashd.getblockcount() + for h in range(1, tip + 1): + raw_hex = zcashd.getblock(str(h), 0) + result = zebrad.submitblock(raw_hex) + if result is not None: + raise Exception("submitblock failed at height %d: %s" % (h, result)) + + assert zebrad.getblockcount() == tip, ( + "zebrad height %d != zcashd height %d after submitblock" + % (zebrad.getblockcount(), tip) + ) self.zainos = self.setup_indexers() self.lwds = self.setup_lightwalletds() # Wait for both indexers to sync to the chain tip before running tests. - tip = zebrad.getblockcount() self._wait_for_indexers(tip) def _wait_for_indexers(self, expected_height, timeout=60): """Block until both Zainod and Lightwalletd report the expected block height.""" - import time - zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") lwd_ch = grpc.insecure_channel(f"127.0.0.1:{self.lwds[0]}") try: @@ -287,20 +347,20 @@ def run_test(self): print("Testing GetAddressUtxosStream...") self.test_get_address_utxos_stream(zs, ls) - # Shielded coinbase tests — blocks mined to a Sapling address via ZIP 213. - print("Testing GetBlock (shielded coinbase)...") + # Shielded transaction tests — block 101 contains the z_sendmany tx. + print("Testing GetBlock (shielded)...") self.test_get_block_shielded(zs, ls) - print("Testing GetBlockNullifiers (shielded coinbase)...") + print("Testing GetBlockNullifiers (shielded)...") self.test_get_block_nullifiers_shielded(zs, ls) print("Testing GetBlockRange (shielded)...") self.test_get_block_range_shielded(zs, ls) - print("Testing GetTransaction (shielded coinbase)...") + print("Testing GetTransaction (shielded)...") self.test_get_transaction_shielded(zs, ls) - print("Testing GetTreeState (after Sapling coinbase)...") + print("Testing GetTreeState (after Sapling output)...") self.test_get_tree_state_sapling(zs, ls) print("Testing GetBlock (Orchard coinbase)...") @@ -313,8 +373,7 @@ def run_test(self): self.test_get_tree_state_orchard(zs, ls) # TODO: GetMempoolTx and GetMempoolStream require submitting a transaction - # to the mempool. This needs a wallet (zallet) to sign and send a raw tx. - # Add these when num_wallets=1 is wired up with a t-address workflow. + # to the mempool via the mempool RPC. zainod_ch.close() lwd_ch.close() @@ -601,34 +660,38 @@ def test_get_address_utxos_stream(self, zs, ls): assert_equal(z_u.height, l_u.height) # ------------------------------------------------------------------------- - # Shielded coinbase tests + # Shielded transaction tests # - # These blocks were mined by zcashd with a Sapling miner address (ZIP 213, - # active via Heartwood from block 1). The coinbase output is a Sapling note, - # so the compact block's vtx must be non-empty and identical across both - # implementations — unlike transparent-only blocks where Zainod omits vtx. + # Block 101 contains the z_sendmany confirmation transaction. That tx + # has both a Sapling output (to sapling_addr) and a transparent output + # (to taddr), so the compact block's vtx must be non-empty and identical + # across both implementations. # ------------------------------------------------------------------------- def test_get_block_shielded(self, zs, ls): - """A shielded-coinbase block must have matching, non-empty vtx.""" - req = service_pb2.BlockID(height=self.shielded_block_height, hash=b"") + """Block with a Sapling output must have matching, non-empty vtx.""" + req = service_pb2.BlockID(height=self.sapling_tx_height, hash=b"") z = _normalize_shielded_compact_block(zs.GetBlock(req)) l = _normalize_shielded_compact_block(ls.GetBlock(req)) - assert_true(len(z.vtx) > 0, "Zainod returned empty vtx for shielded coinbase block") - assert_true(len(l.vtx) > 0, "Lightwalletd returned empty vtx for shielded coinbase block") + assert_true(len(z.vtx) > 0, "Zainod returned empty vtx for shielded block") + assert_true(len(l.vtx) > 0, "Lightwalletd returned empty vtx for shielded block") assert_equal(z, l) def test_get_block_nullifiers_shielded(self, zs, ls): - req = service_pb2.BlockID(height=self.shielded_block_height, hash=b"") + req = service_pb2.BlockID(height=self.sapling_tx_height, hash=b"") z = _normalize_shielded_compact_block(zs.GetBlockNullifiers(req)) l = _normalize_shielded_compact_block(ls.GetBlockNullifiers(req)) assert_equal(z, l) def test_get_block_range_shielded(self, zs, ls): - """All blocks in the shielded range must have matching, non-empty vtx.""" - end = self.shielded_block_height + 5 + """All blocks in a shielded range must have matching, non-empty vtx. + Uses blocks sapling_tx_height-5 through sapling_tx_height (96-101) so + the range covers both Orchard-coinbase blocks and the Sapling-output block + without exceeding the chain tip.""" + start = self.sapling_tx_height - 5 # = 96 (Orchard coinbase) + end = self.sapling_tx_height # = 101 (Sapling output tx) req = service_pb2.BlockRange( - start=service_pb2.BlockID(height=self.shielded_block_height, hash=b""), + start=service_pb2.BlockID(height=start, hash=b""), end=service_pb2.BlockID(height=end, hash=b""), ) z_blocks = [_normalize_shielded_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] @@ -640,18 +703,18 @@ def test_get_block_range_shielded(self, zs, ls): assert_equal(z_b, l_b) def test_get_transaction_shielded(self, zs, ls): - """Shielded coinbase transaction bytes and height must match.""" - txid_bytes = bytes.fromhex(self.shielded_coinbase_txid)[::-1] + """Shielded transaction bytes and height must match across both indexers.""" + txid_bytes = bytes.fromhex(self.sapling_txid)[::-1] req = service_pb2.TxFilter(hash=txid_bytes) z = zs.GetTransaction(req) l = ls.GetTransaction(req) assert_equal(z.data, l.data) assert_equal(z.height, l.height) - assert_equal(z.height, self.shielded_block_height) + assert_equal(z.height, self.sapling_tx_height) def test_get_tree_state_sapling(self, zs, ls): - """After Sapling coinbase the Sapling tree must be non-empty and identical.""" - req = service_pb2.BlockID(height=self.shielded_block_height, hash=b"") + """After a Sapling output tx the Sapling tree must be non-empty and identical.""" + req = service_pb2.BlockID(height=self.sapling_tx_height, hash=b"") z = zs.GetTreeState(req) l = ls.GetTreeState(req) assert_equal(z.network, l.network) @@ -659,10 +722,10 @@ def test_get_tree_state_sapling(self, zs, ls): assert_equal(z.hash, l.hash) assert_equal(z.saplingTree, l.saplingTree) assert_equal(z.orchardTree, l.orchardTree) - assert_true(len(z.saplingTree) > 0, "Sapling tree is empty after Sapling coinbase") + assert_true(len(z.saplingTree) > 0, "Sapling tree is empty after Sapling output tx") def test_get_block_orchard(self, zs, ls): - """An Orchard-coinbase block must have matching, non-empty vtx.""" + """Block with Orchard coinbase must have matching, non-empty vtx.""" req = service_pb2.BlockID(height=self.orchard_block_height, hash=b"") z = _normalize_shielded_compact_block(zs.GetBlock(req)) l = _normalize_shielded_compact_block(ls.GetBlock(req)) @@ -671,7 +734,7 @@ def test_get_block_orchard(self, zs, ls): assert_equal(z, l) def test_get_transaction_orchard(self, zs, ls): - """Orchard coinbase transaction bytes and height must match.""" + """Orchard coinbase transaction bytes and height must match across both indexers.""" txid_bytes = bytes.fromhex(self.orchard_coinbase_txid)[::-1] req = service_pb2.TxFilter(hash=txid_bytes) z = zs.GetTransaction(req) @@ -681,7 +744,9 @@ def test_get_transaction_orchard(self, zs, ls): assert_equal(z.height, self.orchard_block_height) def test_get_tree_state_orchard(self, zs, ls): - """After Orchard coinbase both the Sapling and Orchard trees must be non-empty.""" + """After the first Orchard coinbase the Orchard tree must be non-empty. + The Sapling tree is expected to be empty at this height because Sapling + outputs do not appear until block 101 (the z_sendmany confirmation).""" req = service_pb2.BlockID(height=self.orchard_block_height, hash=b"") z = zs.GetTreeState(req) l = ls.GetTreeState(req) @@ -690,7 +755,6 @@ def test_get_tree_state_orchard(self, zs, ls): assert_equal(z.hash, l.hash) assert_equal(z.saplingTree, l.saplingTree) assert_equal(z.orchardTree, l.orchardTree) - assert_true(len(z.saplingTree) > 0, "Sapling tree is empty at Orchard coinbase block") assert_true(len(z.orchardTree) > 0, "Orchard tree is empty after Orchard coinbase") diff --git a/qa/rpc-tests/test_framework/authproxy.py b/qa/rpc-tests/test_framework/authproxy.py index 10839d781..25598a465 100644 --- a/qa/rpc-tests/test_framework/authproxy.py +++ b/qa/rpc-tests/test_framework/authproxy.py @@ -153,8 +153,8 @@ def _get_response(self): 'code': -342, 'message': 'missing HTTP response from server'}) content_type = http_response.getheader('Content-Type') - # Zallet uses 'application/json; charset=utf-8'` while zcashd uses 'application/json' - if content_type != 'application/json; charset=utf-8': + # Zallet uses 'application/json; charset=utf-8'; zcashd uses 'application/json'. + if content_type not in ('application/json', 'application/json; charset=utf-8'): raise JSONRPCException({ 'code': -342, 'message': 'non-JSON HTTP response with \'%i %s\' from server' % (http_response.status, http_response.reason)}) diff --git a/qa/rpc-tests/test_framework/util.py b/qa/rpc-tests/test_framework/util.py index 383e147a2..19584de00 100644 --- a/qa/rpc-tests/test_framework/util.py +++ b/qa/rpc-tests/test_framework/util.py @@ -2013,6 +2013,10 @@ def wait_lightwalletds(): # zcashd utilities # Used for tests that need a full node with wallet to generate shielded transactions. +# AuthServiceProxy defines its own JSONRPCException; import it here so +# wait_for_zcashd_start can catch the warmup error (-28) raised by the proxy. +from .authproxy import JSONRPCException as _AuthJSONRPCException + zcashd_node_processes = {} ZCASHD_RPC_USER = "zcashrpc" @@ -2036,12 +2040,16 @@ def zcashd_rpc_url(i): return "http://%s:%s@127.0.0.1:%d" % (ZCASHD_RPC_USER, ZCASHD_RPC_PASSWORD, zcashd_rpc_port(i)) -def write_zcash_conf(datadir, node_rpc_port, node_p2p_port, peer_p2p_port): - """Write a zcash.conf for a regtest zcashd node peered with zebrad. +def write_zcash_conf(datadir, node_rpc_port, node_p2p_port, miner_address=None): + """Write a zcash.conf for a standalone regtest zcashd node. + + All network upgrades are activated from block 1. Heartwood (ZIP 213) + enables shielded coinbase; NU5 enables Orchard. No addnode is written + because blocks are pushed to zebrad via submitblock rather than P2P. - All network upgrades are activated from block 1 to match zebrad's built-in - Regtest network defaults. Heartwood (ZIP 213) enables shielded coinbase. - coinbasematurity=10 allows spending coinbase after 10 confirmations. + miner_address, if given, sets the coinbase recipient for `generate` calls. + setmineraddress has been removed from this zcashd version, so the address + must be set via the config file; restart zcashd between mining phases. """ os.makedirs(datadir, exist_ok=True) conf_path = os.path.join(datadir, "zcash.conf") @@ -2052,6 +2060,8 @@ def write_zcash_conf(datadir, node_rpc_port, node_p2p_port, peer_p2p_port): f.write("rpcport=%d\n" % node_rpc_port) f.write("rpcuser=%s\n" % ZCASHD_RPC_USER) f.write("rpcpassword=%s\n" % ZCASHD_RPC_PASSWORD) + if miner_address is not None: + f.write("mineraddress=%s\n" % miner_address) # Activate all upgrades from block 1 to match zebrad Regtest defaults. f.write("nuparams=5ba81b19:1\n") # Overwinter f.write("nuparams=76b809bb:1\n") # Sapling @@ -2060,13 +2070,15 @@ def write_zcash_conf(datadir, node_rpc_port, node_p2p_port, peer_p2p_port): f.write("nuparams=e9ff75a6:1\n") # Canopy f.write("nuparams=c2d6d0b4:1\n") # NU5 (Orchard) f.write("nuparams=c8e71055:1\n") # NU6 - f.write("addnode=127.0.0.1:%d\n" % peer_p2p_port) + # Re-enable the deprecated getnewaddress RPC used to obtain a t-address + # for transparent coinbase mining. + f.write("allowdeprecated=getnewaddress\n") f.write("i-am-aware-zcashd-will-be-replaced-by-zebrad-and-zallet-in-2025=1\n") return conf_path -def start_zcashd_node(i, dirname, peer_p2p_port, binary=None, stderr=None): - """Start a regtest zcashd node peered with zebrad and return an RPC proxy.""" +def start_zcashd_node(i, dirname, miner_address=None, binary=None, stderr=None): + """Start a standalone regtest zcashd node and return an RPC proxy.""" if binary is None: binary = zcashd_node_binary() datadir = os.path.join(dirname, "zcashd" + str(i)) @@ -2074,7 +2086,7 @@ def start_zcashd_node(i, dirname, peer_p2p_port, binary=None, stderr=None): datadir, zcashd_rpc_port(i), zcashd_p2p_port(i), - peer_p2p_port, + miner_address=miner_address, ) args = [binary, "-conf=" + conf, "-datadir=" + datadir] zcashd_node_processes[i] = subprocess.Popen(args, stderr=stderr) @@ -2085,6 +2097,17 @@ def start_zcashd_node(i, dirname, peer_p2p_port, binary=None, stderr=None): return get_rpc_auth_proxy(url, i) +def stop_zcashd_node(i, node): + """Stop zcashd node i via RPC and wait for the process to exit.""" + try: + node.stop() + except (_AuthJSONRPCException, http.client.CannotSendRequest): + pass + if i in zcashd_node_processes: + zcashd_node_processes[i].wait() + del zcashd_node_processes[i] + + def wait_for_zcashd_start(process, url, i): """Poll zcashd RPC until ready or until the process exits.""" while True: @@ -2100,7 +2123,7 @@ def wait_for_zcashd_start(process, url, i): except IOError as e: if e.errno != errno.ECONNREFUSED: raise - except JSONRPCException as e: + except _AuthJSONRPCException as e: if e.error['code'] != -28: raise time.sleep(0.25) @@ -2110,7 +2133,7 @@ def stop_zcashd_nodes(nodes): for node in nodes: try: node.stop() - except http.client.CannotSendRequest as e: + except (http.client.CannotSendRequest, _AuthJSONRPCException) as e: print("WARN: Unable to stop zcashd node: " + repr(e)) del nodes[:] From 4e07a699311e82bf6b488f96a0ce561d07352939 Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 23 Apr 2026 12:00:43 -0300 Subject: [PATCH 05/24] Add cached gRPC parity fixture for Zebra-backed comparison --- .../cache/grpc_comparison/chain_metadata.json | 29 + .../cache/grpc_comparison/zebrad_state.tar.gz | Bin 0 -> 144942 bytes .../chain_metadata.json | 29 + .../zcashd0_state.tar.gz | Bin 0 -> 213815 bytes .../zcashd1_state.tar.gz | Bin 0 -> 179777 bytes qa/rpc-tests/grpc_comparison.py | 981 ++++++++++++++---- qa/rpc-tests/test_framework/config.py | 12 + qa/rpc-tests/test_framework/util.py | 72 +- 8 files changed, 881 insertions(+), 242 deletions(-) create mode 100644 qa/rpc-tests/cache/grpc_comparison/chain_metadata.json create mode 100644 qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz create mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json create mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz create mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz diff --git a/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json b/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json new file mode 100644 index 000000000..0c4f28018 --- /dev/null +++ b/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json @@ -0,0 +1,29 @@ +{ + "taddr": "tmUtDKtdCpW9JK6qCnF7V3HGT17tNMw5N44", + "sapling_ua0": "zregtestsapling1cxqx6jlngx0a6lakm5qjz7pxr9wkf0uq532cfvtny0dw2ts3zdq2zglme0kjkf9u62truflckke", + "sapling_ua_aux": "zregtestsapling1v8g56j8emgfhtwuwgffa6sarj4rp9gkg4q4g7hk5t8t7r8mqpekrhphttm7k2tgvfp3tq8g9crj", + "orchard_ua1": "uregtest16s9p2wgz5fx3d0a9cn5lrervtp4ax6xsey0umynqhnpuphhml9827727gyy6yrwcqvm389l4hw5m34ph83c8ya58jzm3frleasq738sn", + "orchard_ua_aux": "uregtest18ukzh947qqgvxke6gwjjjxx43vacm9a6sxkmjgr4s837ry3gp4qv4xj6f5tury6dye8r83xum4vysc6ujw27kjlpjkrej0dxxg9smtsg", + "sapling_addr0": "zregtestsapling1cxqx6jlngx0a6lakm5qjz7pxr9wkf0uq532cfvtny0dw2ts3zdq2zglme0kjkf9u62truflckke", + "sapling_addr1": "zregtestsapling14pt9c4gwf7pq8mk5tzp2e9gnxn9j324zz2zpckedwtx59vxvgqtygggkd5z4w2pttaaqq40yrly", + "orchard_addr0": "uregtest16s9p2wgz5fx3d0a9cn5lrervtp4ax6xsey0umynqhnpuphhml9827727gyy6yrwcqvm389l4hw5m34ph83c8ya58jzm3frleasq738sn", + "orchard_addr1": "uregtest1hg0vpsvvvsaynkwz7zpwpj2rmcmw2h4ez238j3d8pu0kv9qxf9t5yrrz56yp0pxn7s3ztzgq92kdzrnj6s4q7qc92d92fwlvacqqn6w9", + "_orchard_aux_addr": "uregtest18ukzh947qqgvxke6gwjjjxx43vacm9a6sxkmjgr4s837ry3gp4qv4xj6f5tury6dye8r83xum4vysc6ujw27kjlpjkrej0dxxg9smtsg", + "t_to_sapling_txid": "baf959f54e67cd881eaee54cf0bcd1e5d3c96cba006e7ffacd881b3fd0698fc4", + "t_to_sapling_height": 201, + "t_to_orchard_txid": "1ab0cc4fed1586ed8f90d88575dfcf761967cffe0d9d85d7bd413f3a66f37b15", + "t_to_orchard_height": 205, + "sapling_to_sapling_txid": "3dd8152bfa046fe8cc61c3ee18aa899a0dd20202dcc223c589e37068638be743", + "sapling_to_sapling_height": 204, + "orchard_to_orchard_txid": "568c10845023f4165b41f7780116107376cf0c832fea530721fd60f96da15109", + "orchard_to_orchard_height": 206, + "sapling_to_orchard_txid": "e61e603ab39271f6bfcb9784cf54e05caa6a6765cc78dd2e9be64e2740610cf1", + "sapling_to_orchard_height": 203, + "orchard_to_sapling_txid": "c24331c2281a9875da25050d1d4acea35370d1a07f87407eaf99345e4c14fb79", + "orchard_to_sapling_height": 207, + "sapling_to_t_txid": "1d4e877a5853c37985fed8368a31d7a60d7d254743df09c360c53cfe0c5dbc20", + "sapling_to_t_height": 208, + "orchard_to_t_txid": "37e340059d2934c9f30742bf9aa0e7f047309abd6f81a1d0d8c8c7f4a8370a91", + "orchard_to_t_height": 209, + "cache_version": 7 +} \ No newline at end of file diff --git a/qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..743fc8e27d15ed04e7e3ee59a52cbab9ed4a9aca GIT binary patch literal 144942 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 z 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 as+kf2`;q<&17YwzKyyj&s{;-v5Bvwl<)0k@ literal 0 HcmV?d00001 diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json b/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json new file mode 100644 index 000000000..97b8409e3 --- /dev/null +++ b/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json @@ -0,0 +1,29 @@ +{ + "taddr": "tmUtDKtdCpW9JK6qCnF7V3HGT17tNMw5N44", + "sapling_ua0": "zregtestsapling1cxqx6jlngx0a6lakm5qjz7pxr9wkf0uq532cfvtny0dw2ts3zdq2zglme0kjkf9u62truflckke", + "sapling_ua_aux": "zregtestsapling1v8g56j8emgfhtwuwgffa6sarj4rp9gkg4q4g7hk5t8t7r8mqpekrhphttm7k2tgvfp3tq8g9crj", + "orchard_ua1": "uregtest16s9p2wgz5fx3d0a9cn5lrervtp4ax6xsey0umynqhnpuphhml9827727gyy6yrwcqvm389l4hw5m34ph83c8ya58jzm3frleasq738sn", + "orchard_ua_aux": "uregtest18ukzh947qqgvxke6gwjjjxx43vacm9a6sxkmjgr4s837ry3gp4qv4xj6f5tury6dye8r83xum4vysc6ujw27kjlpjkrej0dxxg9smtsg", + "sapling_addr0": "zregtestsapling1cxqx6jlngx0a6lakm5qjz7pxr9wkf0uq532cfvtny0dw2ts3zdq2zglme0kjkf9u62truflckke", + "sapling_addr1": "zregtestsapling14pt9c4gwf7pq8mk5tzp2e9gnxn9j324zz2zpckedwtx59vxvgqtygggkd5z4w2pttaaqq40yrly", + "orchard_addr0": "uregtest16s9p2wgz5fx3d0a9cn5lrervtp4ax6xsey0umynqhnpuphhml9827727gyy6yrwcqvm389l4hw5m34ph83c8ya58jzm3frleasq738sn", + "orchard_addr1": "uregtest1hg0vpsvvvsaynkwz7zpwpj2rmcmw2h4ez238j3d8pu0kv9qxf9t5yrrz56yp0pxn7s3ztzgq92kdzrnj6s4q7qc92d92fwlvacqqn6w9", + "_orchard_aux_addr": "uregtest18ukzh947qqgvxke6gwjjjxx43vacm9a6sxkmjgr4s837ry3gp4qv4xj6f5tury6dye8r83xum4vysc6ujw27kjlpjkrej0dxxg9smtsg", + "t_to_sapling_txid": "baf959f54e67cd881eaee54cf0bcd1e5d3c96cba006e7ffacd881b3fd0698fc4", + "t_to_sapling_height": 201, + "t_to_orchard_txid": null, + "t_to_orchard_height": null, + "sapling_to_sapling_txid": null, + "sapling_to_sapling_height": null, + "orchard_to_orchard_txid": null, + "orchard_to_orchard_height": null, + "sapling_to_orchard_txid": null, + "sapling_to_orchard_height": null, + "orchard_to_sapling_txid": null, + "orchard_to_sapling_height": null, + "sapling_to_t_txid": null, + "sapling_to_t_height": null, + "orchard_to_t_txid": null, + "orchard_to_t_height": null, + "cache_version": 7 +} \ No newline at end of file diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..0c70b07764f60c92f8d9f35e98b9d01474ce8f75 GIT binary patch literal 213815 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 z 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 literal 0 HcmV?d00001 diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..1eb5888132dae487c350371a6654c0fa2cfc8ca6 GIT binary patch literal 179777 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

s@+vz-uk#w2NOLiHH62I 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 s3Tp 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%0DNR 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 I9}KYn12)Ij-v9sr literal 0 HcmV?d00001 diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index 351073216..bd60da742 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -10,11 +10,39 @@ Mirrors the Rust test fixtures in client_rpc_test_fixtures, porting them to Python so they run inside the existing BitcoinTestFramework CI pipeline. -Chain setup (via zcashd + submitblock into Zebrad): - Blocks 1-100 — Orchard coinbase (mined to orchard_addr). Populates the Orchard - commitment tree and provides mature shielded funds for Phase 2. - Block 101 — Confirms a z_sendmany tx that has a transparent output (to taddr) - and a Sapling output (to sapling_addr), populating the Sapling tree. +Chain setup (zcashd mines; all blocks are submitted to Zebrad via submitblock): + Blocks 1–200 — Transparent coinbase → zcashd0 wallet t-address (taddr). + Provides 100 mature UTXOs at height 200 for shielded spends. + A second standalone wallet (zcashd1) follows the same chain and + owns the Orchard account used for Orchard spends, matching the + separation used by the working Orchard wallet tests. + Block 201 — z_shieldcoinbase: taddr → sapling_ua0 (t→Sapling). + Coinbase UTXOs must go through z_shieldcoinbase, not z_sendmany. + Populates the Sapling tree; notes are spendable after 1 block. + Block 202 — z_shieldcoinbase: taddr → sapling_ua_aux (extra t→Sapling funding). + Seeds a second Sapling note pool for the later Sapling spends, + so the Sapling→Orchard spend and the later Sapling spends do not + depend on zcashd note selection choosing distinct notes. + Block 203 — sapling_ua0 → orchard_addr0 (Sapling→Orchard, cross-pool). + Also funds the Orchard pool so subsequent Orchard spends are possible. + zcashd0 authors the Sapling side; zcashd1 later spends from the + received Orchard note using its account UA. + Block 204 — sapling_ua_aux → sapling_addr1 (Sapling→Sapling). + Block 205 — z_sendmany: taddr → orchard_aux_addr (t→Orchard). + This seeds a second Orchard source account used for the later + Orchard spends, so Orchard→Orchard does not have to share the + same Orchard note pool with Orchard→Sapling and Orchard→t. + Block 206 — orchard_ua1 → orchard_addr1 (Orchard→Orchard). + Block 207 — orchard_ua_aux → sapling_addr1 (Orchard→Sapling, cross-pool). + Block 208 — sapling_ua_aux → taddr (Sapling→t). + Block 209 — orchard_ua_aux → taddr (Orchard→t). + +Chain caching: + After the first run the zcashd block data and chain metadata (addresses, txids, + heights) are saved to qa/rpc-tests/cache/grpc_comparison/. Subsequent runs + restore the zcashd state and skip block generation entirely, saving the time + spent on z_sendmany proof generation. Pass --fresh to force a rebuild and + overwrite the existing cache. Methods tested (CompactTxStreamer service): GetLightdInfo, GetLatestBlock, GetBlock, GetBlockNullifiers, @@ -27,6 +55,9 @@ GetMempoolTx, GetMempoolStream """ +import json +import os +import tarfile import time from decimal import Decimal @@ -37,17 +68,86 @@ from test_framework.util import ( assert_equal, assert_true, + get_coinbase_address, + initialize_chain, + persistent_cache_path, + persistent_cache_exists, start_nodes, start_zcashd_node, stop_zcashd_node, + wait_and_assert_operationid_status, zaino_grpc_port, ) +from test_framework.zip317 import ZIP_317_FEE, conventional_fee from test_framework.proto import ( compact_formats_pb2, service_pb2, service_pb2_grpc, ) +_GRPC_CACHE_NAME = 'grpc_comparison' +_GRPC_STAGE1_CACHE_NAME = 'grpc_comparison_stage1' +_GRPC_ACTIVATION_HEIGHT = 2 +_GRPC_CACHE_VERSION = 7 +_GRPC_ZCASHD_NUPARAMS = { + '5ba81b19': 1, # Overwinter + '76b809bb': 1, # Sapling + '2bb40e60': 1, # Blossom + 'f5b9230b': 1, # Heartwood + 'e9ff75a6': 1, # Canopy + 'c2d6d0b4': _GRPC_ACTIVATION_HEIGHT, # NU5 + 'c8e71055': _GRPC_ACTIVATION_HEIGHT, # NU6 +} + + +def _submit_missing_blocks(src_node, dst_node): + """Submit any blocks missing from dst_node using raw blocks from src_node.""" + dst_height = dst_node.getblockcount() + src_height = src_node.getblockcount() + for height in range(dst_height + 1, src_height + 1): + raw_hex = src_node.getblock(str(height), 0) + result = dst_node.submitblock(raw_hex) + if result is not None: + raise Exception("submitblock to zcashd failed at height %d: %s" % (height, result)) + + +def _relay_raw_transaction(src_node, dst_node, txid): + """Relay a raw transaction from one standalone node to another.""" + raw_hex = src_node.getrawtransaction(txid) + relayed_txid = dst_node.sendrawtransaction(raw_hex, True) + assert_equal(txid, relayed_txid) + + +def _write_checkpoint_file(node, max_height, path): + """Write Zebra checkpoints from genesis through max_height to path.""" + with open(path, 'w', encoding='utf8') as f: + for height in range(0, max_height + 1): + f.write("%d %s\n" % (height, node.getblockhash(height))) + + +def _treestate_has_final_state(treestate, pool_name): + pool = treestate.get(pool_name, {}) + commitments = pool.get("commitments", {}) + final_state = commitments.get("finalState") + return isinstance(final_state, str) and len(final_state) > 0 + + +def _grpc_metadata_fields(): + return ( + 'taddr', + 'sapling_ua0', 'sapling_ua_aux', 'orchard_ua1', 'orchard_ua_aux', + 'sapling_addr0', 'sapling_addr1', + 'orchard_addr0', 'orchard_addr1', '_orchard_aux_addr', + 't_to_sapling_txid', 't_to_sapling_height', + 't_to_orchard_txid', 't_to_orchard_height', + 'sapling_to_sapling_txid', 'sapling_to_sapling_height', + 'orchard_to_orchard_txid', 'orchard_to_orchard_height', + 'sapling_to_orchard_txid', 'sapling_to_orchard_height', + 'orchard_to_sapling_txid', 'orchard_to_sapling_height', + 'sapling_to_t_txid', 'sapling_to_t_height', + 'orchard_to_t_txid', 'orchard_to_t_height', + ) + def _collect_stream(streaming_call): """Collect all messages from a server-streaming gRPC call into a list.""" @@ -57,29 +157,6 @@ def _collect_stream(streaming_call): return results -def _wait_for_operation(zcashd, opid, timeout=120): - """ - Poll z_getoperationresult until the given operation succeeds or fails. - - z_getoperationresult consumes the result on first return, so we stop - polling as soon as a result appears. Returns the result dict on success; - raises Exception on failure or timeout. - """ - deadline = time.time() + timeout - while time.time() < deadline: - results = zcashd.z_getoperationresult([opid]) - if results: - r = results[0] - if r['status'] == 'success': - return r - raise Exception( - "z_sendmany %s failed: %s" - % (opid, r.get('error', {}).get('message', str(r))) - ) - time.sleep(1) - raise Exception("z_sendmany operation %s timed out after %ds" % (opid, timeout)) - - def _normalize_compact_block(block): """ Normalize a CompactBlock for header-level comparison. @@ -108,13 +185,34 @@ def _normalize_shielded_compact_block(block): Normalize a CompactBlock that contains shielded transactions for full comparison including vtx. - For blocks whose coinbase is shielded (Sapling/Orchard), both Zainod and - Lightwalletd must include the compact shielded outputs in vtx. The only - implementation-specific field zeroed here is protoVersion. + Blocks in the shielded fixture range must have identical, non-empty + shielded CompactTx entries in both Zainod and Lightwalletd. + + Known divergence: + - Lightwalletd still includes the transparent coinbase CompactTx in these + blocks, while Zainod omits transparent-only transactions. Filter those + out before comparing the remaining shielded txs. + + The only remaining implementation-specific field zeroed here is + protoVersion. """ normalized = compact_formats_pb2.CompactBlock() - normalized.CopyFrom(block) + normalized.height = block.height + normalized.hash = block.hash + normalized.prevHash = block.prevHash + normalized.time = block.time normalized.protoVersion = 0 + for tx in block.vtx: + if len(tx.spends) > 0 or len(tx.outputs) > 0 or len(tx.actions) > 0: + normalized_tx = normalized.vtx.add() + normalized_tx.index = tx.index + normalized_tx.txid = tx.txid + normalized_tx.fee = tx.fee + normalized_tx.spends.extend(tx.spends) + normalized_tx.outputs.extend(tx.outputs) + normalized_tx.actions.extend(tx.actions) + if block.HasField("chainMetadata"): + normalized.chainMetadata.CopyFrom(block.chainMetadata) return normalized @@ -128,125 +226,450 @@ def __init__(self): self.num_wallets = 0 self.cache_behavior = 'clean' - # Populated in setup_network; used by test methods - self.taddr = None - self.txid = None # txid of the z_sendmany tx (has both t and Sapling outputs) - self.sapling_addr = None - self.sapling_txid = None # same tx, kept separate for clarity in shielded tests - self.sapling_tx_height = None - self.orchard_addr = None - self.orchard_coinbase_txid = None - self.orchard_block_height = None + # Populated in setup_network (or restored from cache); used by test methods. + self.taddr = None # coinbase t-address (blocks 1–200) + self.txid = None # coinbase txid of block 1 (for GetTransaction) + self.sapling_ua0 = None # Sapling source used for the Sapling→Orchard funding tx + self.sapling_ua_aux = None # Sapling source used for later Sapling spends + self.orchard_ua1 = None # account 1 UA (spent from Orchard-funded account) + self.orchard_ua_aux = None # account 2 UA (spent from later Orchard-funded account) + self.sapling_addr0 = None # bare Sapling receiver of account 0 (funded at block 202) + self.sapling_addr1 = None # bare Sapling receiver of account 2 (receives at blocks 204, 206) + self.orchard_addr0 = None # bare Orchard receiver of account 1 (funded at blocks 201, 203) + self.orchard_addr1 = None # bare Orchard receiver of account 3 (receives at blocks 205, 203) + self._orchard_aux_addr = None # Orchard receiver used for the t→Orchard case and later Orchard spends + self.t_to_sapling_txid = None + self.t_to_sapling_height = None # 202 + self.t_to_orchard_txid = None + self.t_to_orchard_height = None # 203 + self.sapling_to_sapling_txid = None + self.sapling_to_sapling_height = None # 204 + self.orchard_to_orchard_txid = None + self.orchard_to_orchard_height = None # 205 + self.sapling_to_orchard_txid = None + self.sapling_to_orchard_height = None # 206 + self.orchard_to_sapling_txid = None + self.orchard_to_sapling_height = None # 207 + self.sapling_to_t_txid = None + self.sapling_to_t_height = None # 208 + self.orchard_to_t_txid = None + self.orchard_to_t_height = None # 209 + + self._chain_loaded_from_cache = False + self._stage1_loaded_from_cache = False + self._zebra_checkpoints = None + + def add_options(self, parser): + parser.add_option( + "--fresh", + dest="fresh", + default=False, + action="store_true", + help=( + "Discard the final cached chain state and rebuild it. " + "The full cache lives at qa/rpc-tests/cache/%s/. " + "A reusable stage-1 wallet cache may still be used to skip " + "the slow initial Sapling funding setup." % _GRPC_CACHE_NAME + ), + ) - def setup_nodes(self): - # All network upgrades activate at block 1 to match the zcashd config - # (nuparams=:1 for each upgrade). This ensures zebrad - # accepts every block submitted via submitblock, including Sapling - # (ZIP 213 / Heartwood) and Orchard (NU5) coinbase blocks. - return start_nodes(self.num_nodes, self.options.tmpdir, - [ZebraArgs(activation_heights={ - "Overwinter": 1, - "Sapling": 1, - "Blossom": 1, - "Heartwood": 1, - "Canopy": 1, - "NU5": 1, - "NU6": 1, - })]) - - def _restart_zcashd(self, miner_address): - """Stop zcashd node 0, reconfigure with a new miner address, and restart.""" - stop_zcashd_node(0, self.zcashd_nodes[0]) - node = start_zcashd_node(0, self.options.tmpdir, miner_address=miner_address) - self.zcashd_nodes[0] = node - return node + def setup_chain(self): + cache_path = persistent_cache_path(_GRPC_CACHE_NAME) + if not self.options.fresh and persistent_cache_exists(_GRPC_CACHE_NAME): + try: + self._load_cached_metadata(cache_path) + print("grpc_comparison: loading chain from cache (%s)" % cache_path) + initialize_chain(self.options.tmpdir, self.num_nodes, + self.options.cachedir, 'clean') + self._restore_framework_cache(cache_path) + self._chain_loaded_from_cache = True + except (IOError, OSError, ValueError) as e: + print("grpc_comparison: ignoring incompatible full cache: %s" % str(e)) + initialize_chain(self.options.tmpdir, self.num_nodes, + self.options.cachedir, 'clean') + else: + initialize_chain(self.options.tmpdir, self.num_nodes, + self.options.cachedir, 'clean') + stage1_cache_path = persistent_cache_path(_GRPC_STAGE1_CACHE_NAME) + if (not self._chain_loaded_from_cache and + persistent_cache_exists(_GRPC_STAGE1_CACHE_NAME)): + try: + self._load_cached_metadata(stage1_cache_path) + print("grpc_comparison: loading stage-1 chain cache (%s)" % stage1_cache_path) + self._restore_stage1_cache(stage1_cache_path) + self._stage1_loaded_from_cache = True + except (IOError, OSError, ValueError) as e: + print("grpc_comparison: ignoring incompatible stage-1 cache: %s" % str(e)) + + def _load_cached_metadata(self, cache_path): + with open(os.path.join(cache_path, 'chain_metadata.json')) as f: + meta = json.load(f) + + if meta.get('cache_version') != _GRPC_CACHE_VERSION: + raise ValueError( + "cache version mismatch for %s: found %r, expected %r" + % (cache_path, meta.get('cache_version'), _GRPC_CACHE_VERSION) + ) - def setup_network(self, split=False): - self.wallets = [] # no wallets used; required for teardown + for field in _grpc_metadata_fields(): + setattr(self, field, meta.get(field)) + + def _write_cached_metadata(self, cache_path): + meta = {field: getattr(self, field) for field in _grpc_metadata_fields()} + meta['cache_version'] = _GRPC_CACHE_VERSION + with open(os.path.join(cache_path, 'chain_metadata.json'), 'w') as f: + json.dump(meta, f, indent=2) + + def _persist_framework_cache(self): + cache_path = persistent_cache_path(_GRPC_CACHE_NAME) + if os.path.isdir(cache_path): + import shutil + shutil.rmtree(cache_path) + os.makedirs(cache_path) + + src = os.path.join(self.options.tmpdir, 'node0') + + def _skip_runtime_files(tarinfo): + basename = os.path.basename(tarinfo.name) + if basename in ('debug.log', 'db.log', 'peers.dat'): + return None + if basename.endswith('.lock'): + return None + return tarinfo + + with tarfile.open(os.path.join(cache_path, 'zebrad_state.tar.gz'), 'w:gz') as tf: + tf.add(src, arcname='node0', filter=_skip_runtime_files) + + self._write_cached_metadata(cache_path) + + def _restore_framework_cache(self, cache_path): + with tarfile.open(os.path.join(cache_path, 'zebrad_state.tar.gz'), 'r:gz') as tf: + tf.extractall(self.options.tmpdir) + + def _restore_stage1_cache(self, cache_path): + self._load_cached_metadata(cache_path) + for index in range(2): + with tarfile.open(os.path.join(cache_path, 'zcashd%d_state.tar.gz' % index), 'r:gz') as tf: + tf.extractall(self.options.tmpdir) + + def _start_build_nodes(self): + return [ + start_zcashd_node(0, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS), + start_zcashd_node(1, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS), + ] + + def _wait_for_build_nodes_height(self, build_nodes, expected_height, timeout=30): + deadline = time.time() + timeout + while time.time() < deadline: + heights = [node.getblockcount() for node in build_nodes] + if heights == [expected_height] * len(build_nodes): + return + time.sleep(1) + raise AssertionError( + "standalone zcashd nodes did not reach height %d: %s" + % (expected_height, heights) + ) - # Start Zebrad (passive — does not mine). - self.nodes = self.setup_nodes() - zebrad = self.nodes[0] - - # Phase 0 — start zcashd without a miner address to generate wallet - # addresses. setmineraddress has been removed from this zcashd version; - # the miner address must be set via zcash.conf and takes effect on restart. - zcashd = start_zcashd_node(0, self.options.tmpdir) - self.zcashd_nodes = [zcashd] - - self.taddr = zcashd.getnewaddress() - - # Generate a unified address with Sapling and Orchard receivers via the - # current account-based API. z_getnewaddress('unified') was removed; - # use z_getnewaccount + z_getaddressforaccount instead. - account = zcashd.z_getnewaccount()['account'] - ua = zcashd.z_getaddressforaccount(account, ['sapling', 'orchard'])['address'] - receivers = zcashd.z_listunifiedreceivers(ua) - self.sapling_addr = receivers['sapling'] - self.orchard_addr = receivers['orchard'] - - # Phase 1 — mine all blocks to the Orchard receiver (single restart). - # NU5 is active from block 1, so Orchard coinbase is valid throughout. - # All 100 blocks are Orchard coinbase, which populates the Orchard - # commitment tree and provides spendable shielded funds for Phase 2. - zcashd = self._restart_zcashd(self.orchard_addr) - zcashd.generate(100) - self.orchard_block_height = 1 - self.orchard_coinbase_txid = zcashd.getblock("1")['tx'][0] - - # Phase 2 — send from the Orchard account to both the transparent address - # and the Sapling address in a single z_sendmany transaction. - # - # After 100 Orchard coinbase blocks the block-1 coinbase has matured - # (coinbase maturity = 100), so the Orchard balance is fully spendable. - # "NoPrivacy" allows cross-pool spending (Orchard → Sapling) and - # transparent recipients (Orchard → t-addr) in one transaction. - opid = zcashd.z_sendmany( - ua, - [ - {"address": self.taddr, "amount": Decimal("1.0")}, - {"address": self.sapling_addr, "amount": Decimal("1.0")}, - ], - 1, - Decimal("0.0001"), - "NoPrivacy", + def _persist_stage1_cache(self, build_nodes): + print("grpc_comparison: persisting stage-1 wallet cache") + for index, node in enumerate(build_nodes): + stop_zcashd_node(index, node) + + cache_path = persistent_cache_path(_GRPC_STAGE1_CACHE_NAME) + if os.path.isdir(cache_path): + import shutil + shutil.rmtree(cache_path) + os.makedirs(cache_path) + + def _skip_runtime_files(tarinfo): + basename = os.path.basename(tarinfo.name) + if basename in ('debug.log', 'db.log', 'peers.dat', 'mempool.dat', 'fee_estimates.dat'): + return None + if basename.endswith('.lock'): + return None + return tarinfo + + for index in range(2): + src = os.path.join(self.options.tmpdir, 'zcashd%d' % index) + with tarfile.open(os.path.join(cache_path, 'zcashd%d_state.tar.gz' % index), 'w:gz') as tf: + tf.add(src, arcname='zcashd%d' % index, filter=_skip_runtime_files) + + self._write_cached_metadata(cache_path) + build_nodes = self._start_build_nodes() + self._wait_for_build_nodes_height(build_nodes, 202) + return build_nodes + + def _build_stage1_with_wallet_nodes(self): + build_nodes = self._start_build_nodes() + node0, node1 = build_nodes + + assert_equal(node0.getblockcount(), 0) + print("grpc_comparison: mining initial transparent chain (200 blocks)") + node0.generate(200) + _submit_missing_blocks(node0, node1) + + print("grpc_comparison: deriving Sapling and Orchard fixture addresses") + self.taddr = get_coinbase_address(node0) + self.txid = node0.getblock("1")['tx'][0] + + self.sapling_ua0 = node0.z_getnewaddress('sapling') + self.sapling_addr0 = self.sapling_ua0 + + self.sapling_ua_aux = node0.z_getnewaddress('sapling') + self.sapling_addr1 = node0.z_getnewaddress('sapling') + + orchard_acct1 = node1.z_getnewaccount()['account'] + self.orchard_ua1 = node1.z_getaddressforaccount(orchard_acct1, ['orchard'])['address'] + self.orchard_addr0 = node1.z_listunifiedreceivers(self.orchard_ua1)['orchard'] + + orchard_aux_acct = node1.z_getnewaccount()['account'] + self.orchard_ua_aux = node1.z_getaddressforaccount(orchard_aux_acct, ['orchard'])['address'] + self._orchard_aux_addr = node1.z_listunifiedreceivers(self.orchard_ua_aux)['orchard'] + + orchard_acct2 = node1.z_getnewaccount()['account'] + orchard_ua2 = node1.z_getaddressforaccount(orchard_acct2, ['orchard'])['address'] + self.orchard_addr1 = node1.z_listunifiedreceivers(orchard_ua2)['orchard'] + + print("grpc_comparison: funding primary Sapling pool from transparent coinbase") + sapling_shield_fee = conventional_fee(4) + sapling_shield_amount = Decimal('12.5') - sapling_shield_fee + self.t_to_sapling_txid = wait_and_assert_operationid_status( + node0, + node0.z_sendmany( + self.taddr, + [{"address": self.sapling_ua0, "amount": sapling_shield_amount}], + 10, + sapling_shield_fee, + 'AllowRevealedSenders', + ), ) - op_result = _wait_for_operation(zcashd, opid) - send_txid = op_result['result']['txid'] - - # Mine 1 block to confirm both outputs (height 101). - zcashd.generate(1) - confirm_height = zcashd.getblockcount() # = 101 - - # self.txid is used by test_get_transaction and transparent address tests. - # self.sapling_txid is the same tx viewed from the Sapling-output angle. - self.txid = send_txid - self.sapling_txid = send_txid - self.sapling_tx_height = confirm_height - - # Push every zcashd-mined block into zebrad via submitblock. - # This sidesteps the known P2P propagation issues between zcashd and - # zebrad (ZcashFoundation/zebra#10329, #10332). - tip = zcashd.getblockcount() - for h in range(1, tip + 1): - raw_hex = zcashd.getblock(str(h), 0) - result = zebrad.submitblock(raw_hex) - if result is not None: - raise Exception("submitblock failed at height %d: %s" % (h, result)) - - assert zebrad.getblockcount() == tip, ( - "zebrad height %d != zcashd height %d after submitblock" - % (zebrad.getblockcount(), tip) + node0.generate(1) + _submit_missing_blocks(node0, node1) + self.t_to_sapling_height = node0.getblockcount() # 201 + + print("grpc_comparison: restarting primary builder wallet before auxiliary Sapling funding") + stop_zcashd_node(0, node0) + node0 = start_zcashd_node(0, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS) + build_nodes[0] = node0 + assert_equal(node0.getblockcount(), 201) + + print("grpc_comparison: funding auxiliary Sapling pool from transparent coinbase") + wait_and_assert_operationid_status( + node0, + node0.z_sendmany( + self.taddr, + [{"address": self.sapling_ua_aux, "amount": sapling_shield_amount}], + 10, + sapling_shield_fee, + 'AllowRevealedSenders', + ), ) + node0.generate(1) + _submit_missing_blocks(node0, node1) + assert_equal(node0.getblockcount(), 202) + + return build_nodes + + def _complete_chain_from_stage1(self, build_nodes): + node0, node1 = build_nodes + assert_equal(node0.getblockcount(), 202) + _submit_missing_blocks(node0, node1) + assert_equal(node1.getblockcount(), 202) + + fund = Decimal('0.1') + amount = Decimal('0.01') + sapling_to_orchard_fee = conventional_fee(4) + + print("grpc_comparison: building Sapling -> Orchard funding transaction") + self.sapling_to_orchard_txid = wait_and_assert_operationid_status( + node0, + node0.z_sendmany( + self.sapling_ua0, + [{"address": self.orchard_addr0, "amount": fund}], + 1, + sapling_to_orchard_fee, + 'AllowRevealedAmounts', + ), + ) + node0.generate(1) + _submit_missing_blocks(node0, node1) + self.sapling_to_orchard_height = node0.getblockcount() # 203 + + print("grpc_comparison: building Sapling -> Sapling transaction") + self.sapling_to_sapling_txid = wait_and_assert_operationid_status( + node0, + node0.z_sendmany( + self.sapling_ua_aux, + [{"address": self.sapling_addr1, "amount": amount}], + 1, + ZIP_317_FEE, + ), + ) + node0.generate(1) + _submit_missing_blocks(node0, node1) + self.sapling_to_sapling_height = node0.getblockcount() # 204 + + orchard_fee = conventional_fee(4) + orchard_amount = Decimal('12.5') - orchard_fee + print("grpc_comparison: building transparent -> Orchard transaction") + self.t_to_orchard_txid = wait_and_assert_operationid_status( + node0, + node0.z_sendmany( + self.taddr, + [{"address": self.orchard_ua_aux, "amount": orchard_amount}], + 1, + orchard_fee, + 'NoPrivacy', + ), + ) + node0.generate(1) + _submit_missing_blocks(node0, node1) + self.t_to_orchard_height = node0.getblockcount() # 205 + # Restart the Orchard-owning wallet after funding lands so it reloads + # its Orchard note state before the first Orchard spend. + stop_zcashd_node(1, node1) + node1 = start_zcashd_node(1, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS) + build_nodes[1] = node1 + assert_equal(node1.getblockcount(), node0.getblockcount()) + + print("grpc_comparison: building Orchard -> Orchard transaction") + self.orchard_to_orchard_txid = wait_and_assert_operationid_status( + node1, + node1.z_sendmany( + self.orchard_ua1, + [{"address": self.orchard_addr1, "amount": amount}], + 1, + ZIP_317_FEE, + ), + ) + _relay_raw_transaction(node1, node0, self.orchard_to_orchard_txid) + node0.generate(1) + _submit_missing_blocks(node0, node1) + self.orchard_to_orchard_height = node0.getblockcount() # 206 + + stop_zcashd_node(1, node1) + node1 = start_zcashd_node(1, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS) + build_nodes[1] = node1 + assert_equal(node1.getblockcount(), node0.getblockcount()) + + print("grpc_comparison: building Orchard -> Sapling transaction") + self.orchard_to_sapling_txid = wait_and_assert_operationid_status( + node1, + node1.z_sendmany( + self.orchard_ua1, + [{"address": self.sapling_addr1, "amount": amount}], + 1, + ZIP_317_FEE, + 'AllowRevealedAmounts', + ), + ) + _relay_raw_transaction(node1, node0, self.orchard_to_sapling_txid) + node0.generate(1) + _submit_missing_blocks(node0, node1) + self.orchard_to_sapling_height = node0.getblockcount() # 207 + + stop_zcashd_node(1, node1) + node1 = start_zcashd_node(1, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS) + build_nodes[1] = node1 + assert_equal(node1.getblockcount(), node0.getblockcount()) + + print("grpc_comparison: building Sapling -> transparent transaction") + self.sapling_to_t_txid = wait_and_assert_operationid_status( + node0, + node0.z_sendmany( + self.sapling_ua_aux, + [{"address": self.taddr, "amount": amount}], + 1, + ZIP_317_FEE, + 'AllowRevealedRecipients', + ), + ) + node0.generate(1) + _submit_missing_blocks(node0, node1) + self.sapling_to_t_height = node0.getblockcount() # 208 + + print("grpc_comparison: building Orchard -> transparent transaction") + self.orchard_to_t_txid = wait_and_assert_operationid_status( + node1, + node1.z_sendmany( + self.orchard_ua1, + [{"address": self.taddr, "amount": amount}], + 1, + ZIP_317_FEE, + 'AllowRevealedRecipients', + ), + ) + _relay_raw_transaction(node1, node0, self.orchard_to_t_txid) + node0.generate(1) + _submit_missing_blocks(node0, node1) + self.orchard_to_t_height = node0.getblockcount() # 209 + + def setup_nodes(self): + # Match Zebra regtest defaults up to Canopy, and activate Orchard-era + # upgrades at the start of the shielded fixture range. + args = [ZebraArgs(activation_heights={ + "NU5": _GRPC_ACTIVATION_HEIGHT, + "NU6": _GRPC_ACTIVATION_HEIGHT, + }, checkpoints=self._zebra_checkpoints) for _ in range(self.num_nodes)] + return start_nodes(self.num_nodes, self.options.tmpdir, + args) + def setup_network(self, split=False): + self.wallets = [] # no wallets used; required for teardown + self.nodes = [] + self.zcashd_nodes = [] + if self._chain_loaded_from_cache: + print("grpc_comparison: restoring Zebrad chain from cache") + self.nodes = self.setup_nodes() + self.txid = self.nodes[0].getblock("1")['tx'][0] + else: + if self._stage1_loaded_from_cache: + print("grpc_comparison: resuming from stage-1 wallet cache") + build_nodes = self._start_build_nodes() + self._wait_for_build_nodes_height(build_nodes, 202) + else: + print("grpc_comparison: building fresh stage-1 fixture chain with standalone zcashd") + build_nodes = self._build_stage1_with_wallet_nodes() + build_nodes = self._persist_stage1_cache(build_nodes) + try: + print("grpc_comparison: building stage-2 shielded transactions") + self._complete_chain_from_stage1(build_nodes) + # Zebra and standalone zcashd disagree on regtest difficulty + # throughout this standalone fixture, so replay via checkpoints + # and then wait until Zebra exposes treestates for the replayed + # shielded blocks before starting the downstream indexers. + checkpoint_path = os.path.join(self.options.tmpdir, 'grpc_comparison_checkpoints.txt') + _write_checkpoint_file(build_nodes[0], build_nodes[0].getblockcount(), checkpoint_path) + self._zebra_checkpoints = checkpoint_path + print("grpc_comparison: starting Zebrad") + self.nodes = self.setup_nodes() + print("grpc_comparison: replaying built chain into Zebrad") + _submit_missing_blocks(build_nodes[0], self.nodes[0]) + assert_equal(self.nodes[0].getblockcount(), build_nodes[0].getblockcount()) + print("grpc_comparison: waiting for Zebrad tip") + self._wait_for_zebra_tip(build_nodes[0].getblockcount()) + finally: + for index, node in enumerate(build_nodes): + stop_zcashd_node(index, node) + print("grpc_comparison: persisting fresh Zebrad cache") + self._persist_framework_cache() + self.txid = self.nodes[0].getblock("1")['tx'][0] + + if self._chain_loaded_from_cache: + print("grpc_comparison: waiting for restored Zebrad tip before starting indexers") + self._wait_for_zebra_tip(self.orchard_to_t_height) + else: + print("grpc_comparison: waiting for restored Zebrad tip before starting indexers") + self._wait_for_zebra_tip(self.orchard_to_t_height) self.zainos = self.setup_indexers() self.lwds = self.setup_lightwalletds() # Wait for both indexers to sync to the chain tip before running tests. - self._wait_for_indexers(tip) + self._wait_for_indexers(self.nodes[0].getblockcount()) def _wait_for_indexers(self, expected_height, timeout=60): """Block until both Zainod and Lightwalletd report the expected block height.""" + print("grpc_comparison: waiting for indexers to sync to height %d" % expected_height) zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") lwd_ch = grpc.insecure_channel(f"127.0.0.1:{self.lwds[0]}") try: @@ -272,6 +695,22 @@ def _wait_for_indexers(self, expected_height, timeout=60): zainod_ch.close() lwd_ch.close() + def _wait_for_zebra_tip(self, expected_height, timeout=30): + """Wait until Zebrad reports the expected tip height.""" + zebra = self.nodes[0] + deadline = time.time() + timeout + last_height = None + while time.time() < deadline: + last_height = zebra.getblockcount() + if last_height >= expected_height: + return + time.sleep(1) + + raise AssertionError( + "Zebrad did not reach height %d within %ds (last height %s)" + % (expected_height, timeout, last_height) + ) + def run_test(self): zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") lwd_ch = grpc.insecure_channel(f"127.0.0.1:{self.lwds[0]}") @@ -347,30 +786,68 @@ def run_test(self): print("Testing GetAddressUtxosStream...") self.test_get_address_utxos_stream(zs, ls) - # Shielded transaction tests — block 101 contains the z_sendmany tx. - print("Testing GetBlock (shielded)...") - self.test_get_block_shielded(zs, ls) + # ---- Shielded transaction tests (blocks 202–205) ---- + + print("Testing GetBlock (t→Sapling, block %d)..." % self.t_to_sapling_height) + self.test_get_block_t_to_sapling(zs, ls) - print("Testing GetBlockNullifiers (shielded)...") - self.test_get_block_nullifiers_shielded(zs, ls) + print("Testing GetBlockNullifiers (t→Sapling)...") + self.test_get_block_nullifiers_t_to_sapling(zs, ls) - print("Testing GetBlockRange (shielded)...") + print("Testing GetBlockRange (shielded range %d–%d)..." + % (self.t_to_sapling_height, self.orchard_to_orchard_height)) self.test_get_block_range_shielded(zs, ls) - print("Testing GetTransaction (shielded)...") - self.test_get_transaction_shielded(zs, ls) + print("Testing GetTransaction (t→Sapling)...") + self.test_get_transaction_t_to_sapling(zs, ls) + + print("Testing GetTreeState (after t→Sapling, block %d)..." % self.t_to_sapling_height) + self.test_get_tree_state_after_t_to_sapling(zs, ls) + + print("Testing GetBlock (t→Orchard, block %d)..." % self.t_to_orchard_height) + self.test_get_block_t_to_orchard(zs, ls) + + print("Testing GetTransaction (t→Orchard)...") + self.test_get_transaction_t_to_orchard(zs, ls) - print("Testing GetTreeState (after Sapling output)...") - self.test_get_tree_state_sapling(zs, ls) + print("Testing GetTreeState (after t→Orchard, block %d)..." % self.t_to_orchard_height) + self.test_get_tree_state_after_t_to_orchard(zs, ls) - print("Testing GetBlock (Orchard coinbase)...") - self.test_get_block_orchard(zs, ls) + print("Testing GetBlock (Sapling→Sapling, block %d)..." % self.sapling_to_sapling_height) + self.test_get_block_sapling_to_sapling(zs, ls) - print("Testing GetTransaction (Orchard coinbase)...") - self.test_get_transaction_orchard(zs, ls) + print("Testing GetTransaction (Sapling→Sapling)...") + self.test_get_transaction_sapling_to_sapling(zs, ls) - print("Testing GetTreeState (after Orchard coinbase)...") - self.test_get_tree_state_orchard(zs, ls) + print("Testing GetBlock (Orchard→Orchard, block %d)..." % self.orchard_to_orchard_height) + self.test_get_block_orchard_to_orchard(zs, ls) + + print("Testing GetTransaction (Orchard→Orchard)...") + self.test_get_transaction_orchard_to_orchard(zs, ls) + + print("Testing GetBlock (Sapling→Orchard, block %d)..." % self.sapling_to_orchard_height) + self.test_get_block_sapling_to_orchard(zs, ls) + + print("Testing GetTransaction (Sapling→Orchard)...") + self.test_get_transaction_sapling_to_orchard(zs, ls) + + print("Testing GetBlock (Orchard→Sapling, block %d)..." % self.orchard_to_sapling_height) + self.test_get_block_orchard_to_sapling(zs, ls) + + print("Testing GetTransaction (Orchard→Sapling)...") + self.test_get_transaction_orchard_to_sapling(zs, ls) + + print("Testing GetBlock (Sapling→t, block %d)..." % self.sapling_to_t_height) + self.test_get_block_sapling_to_t(zs, ls) + + print("Testing GetTransaction (Sapling→t)...") + self.test_get_transaction_sapling_to_t(zs, ls) + + print("Testing GetBlock (Orchard→t, block %d)..." % self.orchard_to_t_height) + self.test_get_block_orchard_to_t(zs, ls) + + print("Testing GetTransaction (Orchard→t)...") + self.test_get_transaction_orchard_to_t(zs, ls) # TODO: GetMempoolTx and GetMempoolStream require submitting a transaction # to the mempool via the mempool RPC. @@ -660,36 +1137,48 @@ def test_get_address_utxos_stream(self, zs, ls): assert_equal(z_u.height, l_u.height) # ------------------------------------------------------------------------- - # Shielded transaction tests + # Shielded transaction tests (blocks 202–208) # - # Block 101 contains the z_sendmany confirmation transaction. That tx - # has both a Sapling output (to sapling_addr) and a transparent output - # (to taddr), so the compact block's vtx must be non-empty and identical - # across both implementations. + # Every block in the shielded range has at least one shielded component + # (Sapling spend/output or Orchard action), so vtx must be non-empty and + # identical across both Zainod and Lightwalletd. # ------------------------------------------------------------------------- - def test_get_block_shielded(self, zs, ls): - """Block with a Sapling output must have matching, non-empty vtx.""" - req = service_pb2.BlockID(height=self.sapling_tx_height, hash=b"") + def _assert_shielded_block_match(self, zs, ls, height, label): + req = service_pb2.BlockID(height=height, hash=b"") z = _normalize_shielded_compact_block(zs.GetBlock(req)) l = _normalize_shielded_compact_block(ls.GetBlock(req)) - assert_true(len(z.vtx) > 0, "Zainod returned empty vtx for shielded block") - assert_true(len(l.vtx) > 0, "Lightwalletd returned empty vtx for shielded block") + assert_true(len(z.vtx) > 0, + "Zainod returned empty vtx for %s block at height %d" % (label, height)) + assert_true(len(l.vtx) > 0, + "Lightwalletd returned empty vtx for %s block at height %d" % (label, height)) assert_equal(z, l) - def test_get_block_nullifiers_shielded(self, zs, ls): - req = service_pb2.BlockID(height=self.sapling_tx_height, hash=b"") + def _assert_transaction_match(self, zs, ls, txid_hex, expected_height): + txid_bytes = bytes.fromhex(txid_hex)[::-1] + req = service_pb2.TxFilter(hash=txid_bytes) + z = zs.GetTransaction(req) + l = ls.GetTransaction(req) + assert_equal(z.data, l.data) + assert_equal(z.height, l.height) + assert_equal(z.height, expected_height) + + # -- t → Sapling (block 202) -- + + def test_get_block_t_to_sapling(self, zs, ls): + """Block with a t→Sapling output must have matching, non-empty vtx.""" + self._assert_shielded_block_match(zs, ls, self.t_to_sapling_height, 't→Sapling') + + def test_get_block_nullifiers_t_to_sapling(self, zs, ls): + req = service_pb2.BlockID(height=self.t_to_sapling_height, hash=b"") z = _normalize_shielded_compact_block(zs.GetBlockNullifiers(req)) l = _normalize_shielded_compact_block(ls.GetBlockNullifiers(req)) assert_equal(z, l) def test_get_block_range_shielded(self, zs, ls): - """All blocks in a shielded range must have matching, non-empty vtx. - Uses blocks sapling_tx_height-5 through sapling_tx_height (96-101) so - the range covers both Orchard-coinbase blocks and the Sapling-output block - without exceeding the chain tip.""" - start = self.sapling_tx_height - 5 # = 96 (Orchard coinbase) - end = self.sapling_tx_height # = 101 (Sapling output tx) + """All blocks in the shielded range (202–208) must have matching, non-empty vtx.""" + start = self.t_to_sapling_height # 202 + end = self.orchard_to_t_height # 208 req = service_pb2.BlockRange( start=service_pb2.BlockID(height=start, hash=b""), end=service_pb2.BlockID(height=end, hash=b""), @@ -698,23 +1187,21 @@ def test_get_block_range_shielded(self, zs, ls): l_blocks = [_normalize_shielded_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] assert_equal(len(z_blocks), len(l_blocks)) for z_b, l_b in zip(z_blocks, l_blocks): - assert_true(len(z_b.vtx) > 0, "Zainod returned empty vtx for shielded block at height %d" % z_b.height) - assert_true(len(l_b.vtx) > 0, "Lightwalletd returned empty vtx for shielded block at height %d" % l_b.height) + assert_true(len(z_b.vtx) > 0, + "Zainod returned empty vtx for shielded block at height %d" % z_b.height) + assert_true(len(l_b.vtx) > 0, + "Lightwalletd returned empty vtx for shielded block at height %d" % l_b.height) assert_equal(z_b, l_b) - def test_get_transaction_shielded(self, zs, ls): - """Shielded transaction bytes and height must match across both indexers.""" - txid_bytes = bytes.fromhex(self.sapling_txid)[::-1] - req = service_pb2.TxFilter(hash=txid_bytes) - z = zs.GetTransaction(req) - l = ls.GetTransaction(req) - assert_equal(z.data, l.data) - assert_equal(z.height, l.height) - assert_equal(z.height, self.sapling_tx_height) + def test_get_transaction_t_to_sapling(self, zs, ls): + """t→Sapling transaction bytes and height must match across both indexers.""" + self._assert_transaction_match( + zs, ls, self.t_to_sapling_txid, self.t_to_sapling_height) - def test_get_tree_state_sapling(self, zs, ls): - """After a Sapling output tx the Sapling tree must be non-empty and identical.""" - req = service_pb2.BlockID(height=self.sapling_tx_height, hash=b"") + def test_get_tree_state_after_t_to_sapling(self, zs, ls): + """After t→Sapling (block 202) both trees must be non-empty. + Orchard was seeded by the coinbase at block 201; Sapling by this tx.""" + req = service_pb2.BlockID(height=self.t_to_sapling_height, hash=b"") z = zs.GetTreeState(req) l = ls.GetTreeState(req) assert_equal(z.network, l.network) @@ -722,32 +1209,27 @@ def test_get_tree_state_sapling(self, zs, ls): assert_equal(z.hash, l.hash) assert_equal(z.saplingTree, l.saplingTree) assert_equal(z.orchardTree, l.orchardTree) - assert_true(len(z.saplingTree) > 0, "Sapling tree is empty after Sapling output tx") - - def test_get_block_orchard(self, zs, ls): - """Block with Orchard coinbase must have matching, non-empty vtx.""" - req = service_pb2.BlockID(height=self.orchard_block_height, hash=b"") - z = _normalize_shielded_compact_block(zs.GetBlock(req)) - l = _normalize_shielded_compact_block(ls.GetBlock(req)) - assert_true(len(z.vtx) > 0, "Zainod returned empty vtx for Orchard coinbase block") - assert_true(len(l.vtx) > 0, "Lightwalletd returned empty vtx for Orchard coinbase block") - assert_equal(z, l) - - def test_get_transaction_orchard(self, zs, ls): - """Orchard coinbase transaction bytes and height must match across both indexers.""" - txid_bytes = bytes.fromhex(self.orchard_coinbase_txid)[::-1] - req = service_pb2.TxFilter(hash=txid_bytes) - z = zs.GetTransaction(req) - l = ls.GetTransaction(req) - assert_equal(z.data, l.data) - assert_equal(z.height, l.height) - assert_equal(z.height, self.orchard_block_height) - - def test_get_tree_state_orchard(self, zs, ls): - """After the first Orchard coinbase the Orchard tree must be non-empty. - The Sapling tree is expected to be empty at this height because Sapling - outputs do not appear until block 101 (the z_sendmany confirmation).""" - req = service_pb2.BlockID(height=self.orchard_block_height, hash=b"") + assert_true(len(z.saplingTree) > 0, + "Sapling tree is empty after t→Sapling tx at height %d" % self.t_to_sapling_height) + assert_true(len(z.orchardTree) > 0, + "Orchard tree is empty at height %d (should have been seeded by coinbase at 201)" + % self.t_to_sapling_height) + + # -- t → Orchard (block 201) -- + + def test_get_block_t_to_orchard(self, zs, ls): + """Block with a t→Orchard output must have matching, non-empty vtx.""" + self._assert_shielded_block_match(zs, ls, self.t_to_orchard_height, 't→Orchard') + + def test_get_transaction_t_to_orchard(self, zs, ls): + """t→Orchard transaction bytes and height must match across both indexers.""" + self._assert_transaction_match( + zs, ls, self.t_to_orchard_txid, self.t_to_orchard_height) + + def test_get_tree_state_after_t_to_orchard(self, zs, ls): + """After t→Orchard coinbase (block 201) the Orchard tree must be non-empty. + The Sapling tree is still empty at this height; it is seeded at block 202.""" + req = service_pb2.BlockID(height=self.t_to_orchard_height, hash=b"") z = zs.GetTreeState(req) l = ls.GetTreeState(req) assert_equal(z.network, l.network) @@ -755,7 +1237,80 @@ def test_get_tree_state_orchard(self, zs, ls): assert_equal(z.hash, l.hash) assert_equal(z.saplingTree, l.saplingTree) assert_equal(z.orchardTree, l.orchardTree) - assert_true(len(z.orchardTree) > 0, "Orchard tree is empty after Orchard coinbase") + assert_true(len(z.orchardTree) > 0, + "Orchard tree is empty after t→Orchard coinbase at height %d" % self.t_to_orchard_height) + + # -- Sapling → Sapling (block 204) -- + + def test_get_block_sapling_to_sapling(self, zs, ls): + """Block with a Sapling→Sapling spend must have matching, non-empty vtx.""" + self._assert_shielded_block_match( + zs, ls, self.sapling_to_sapling_height, 'Sapling→Sapling') + + def test_get_transaction_sapling_to_sapling(self, zs, ls): + """Sapling→Sapling transaction bytes and height must match across both indexers.""" + self._assert_transaction_match( + zs, ls, self.sapling_to_sapling_txid, self.sapling_to_sapling_height) + + # -- Orchard → Orchard (block 205) -- + + def test_get_block_orchard_to_orchard(self, zs, ls): + """Block with an Orchard→Orchard spend must have matching, non-empty vtx.""" + self._assert_shielded_block_match( + zs, ls, self.orchard_to_orchard_height, 'Orchard→Orchard') + + def test_get_transaction_orchard_to_orchard(self, zs, ls): + """Orchard→Orchard transaction bytes and height must match across both indexers.""" + self._assert_transaction_match( + zs, ls, self.orchard_to_orchard_txid, self.orchard_to_orchard_height) + + # -- Sapling → Orchard (block 203) -- + + def test_get_block_sapling_to_orchard(self, zs, ls): + """Block with a Sapling→Orchard (cross-pool) tx must have matching, non-empty vtx.""" + self._assert_shielded_block_match( + zs, ls, self.sapling_to_orchard_height, 'Sapling→Orchard') + + def test_get_transaction_sapling_to_orchard(self, zs, ls): + """Sapling→Orchard transaction bytes and height must match across both indexers.""" + self._assert_transaction_match( + zs, ls, self.sapling_to_orchard_txid, self.sapling_to_orchard_height) + + # -- Orchard → Sapling (block 206) -- + + def test_get_block_orchard_to_sapling(self, zs, ls): + """Block with an Orchard→Sapling (cross-pool) tx must have matching, non-empty vtx.""" + self._assert_shielded_block_match( + zs, ls, self.orchard_to_sapling_height, 'Orchard→Sapling') + + def test_get_transaction_orchard_to_sapling(self, zs, ls): + """Orchard→Sapling transaction bytes and height must match across both indexers.""" + self._assert_transaction_match( + zs, ls, self.orchard_to_sapling_txid, self.orchard_to_sapling_height) + + # -- Sapling → t (block 207) -- + + def test_get_block_sapling_to_t(self, zs, ls): + """Block with a Sapling→t tx must have matching, non-empty vtx (Sapling spend present).""" + self._assert_shielded_block_match( + zs, ls, self.sapling_to_t_height, 'Sapling→t') + + def test_get_transaction_sapling_to_t(self, zs, ls): + """Sapling→t transaction bytes and height must match across both indexers.""" + self._assert_transaction_match( + zs, ls, self.sapling_to_t_txid, self.sapling_to_t_height) + + # -- Orchard → t (block 208) -- + + def test_get_block_orchard_to_t(self, zs, ls): + """Block with an Orchard→t tx must have matching, non-empty vtx (Orchard action present).""" + self._assert_shielded_block_match( + zs, ls, self.orchard_to_t_height, 'Orchard→t') + + def test_get_transaction_orchard_to_t(self, zs, ls): + """Orchard→t transaction bytes and height must match across both indexers.""" + self._assert_transaction_match( + zs, ls, self.orchard_to_t_txid, self.orchard_to_t_height) if __name__ == '__main__': diff --git a/qa/rpc-tests/test_framework/config.py b/qa/rpc-tests/test_framework/config.py index dbde9780f..ba5b36e10 100644 --- a/qa/rpc-tests/test_framework/config.py +++ b/qa/rpc-tests/test_framework/config.py @@ -21,6 +21,7 @@ class ZebraArgs: funding_streams: list[dict[str, Any]] = field(default_factory=list) lockbox_disbursements: list[dict[str, Any]] = field(default_factory=list) should_allow_unshielded_coinbase_spends: bool | None = None + checkpoints: Any = None def __add__(self, other): if other is None: @@ -37,6 +38,8 @@ def __add__(self, other): self.lockbox_disbursements = other.lockbox_disbursements if other.should_allow_unshielded_coinbase_spends != defaults.should_allow_unshielded_coinbase_spends: self.should_allow_unshielded_coinbase_spends = other.should_allow_unshielded_coinbase_spends + if other.checkpoints != defaults.checkpoints: + self.checkpoints = other.checkpoints return self @@ -122,6 +125,10 @@ def update(self, config_file): config_file['network']['testnet_parameters']['funding_streams'] = extra_args.funding_streams config_file['network']['testnet_parameters']['activation_heights'] = extra_args.activation_heights config_file['network']['testnet_parameters']['lockbox_disbursements'] = extra_args.lockbox_disbursements + if extra_args.checkpoints is not None: + config_file['network']['testnet_parameters']['checkpoints'] = extra_args.checkpoints + else: + config_file['network']['testnet_parameters'].pop('checkpoints', None) return config_file @@ -131,6 +138,7 @@ class ZainoConfig: grpc_listen_address: str = "127.0.0.1:0" validator_grpc_listen_address: str = "127.0.0.1:0" validator_jsonrpc_listen_address: str = "127.0.0.1:0" + storage_database_path: str | None = None def update(self, config_file): # Base config updates @@ -138,5 +146,9 @@ def update(self, config_file): config_file['grpc_settings']['grpc_listen_address'] = self.grpc_listen_address config_file['validator_settings']['validator_grpc_listen_address'] = self.validator_grpc_listen_address config_file['validator_settings']['validator_jsonrpc_listen_address'] = self.validator_jsonrpc_listen_address + if self.storage_database_path is not None: + config_file.setdefault('storage', {}) + config_file['storage'].setdefault('database', {}) + config_file['storage']['database']['path'] = self.storage_database_path return config_file diff --git a/qa/rpc-tests/test_framework/util.py b/qa/rpc-tests/test_framework/util.py index 19584de00..870a4be5c 100644 --- a/qa/rpc-tests/test_framework/util.py +++ b/qa/rpc-tests/test_framework/util.py @@ -616,10 +616,9 @@ def init_persistent(cache_behavior): # Copy in per-node wallet data wallet_tgz_filename = os.path.join(cache_path, "node"+str(i)+"_wallet.tar.gz") - if not os.path.exists(wallet_tgz_filename): - raise Exception('Wallet cache missing for cache behavior %s, node %d' % (cache_behavior, i)) - with tarfile.open(wallet_tgz_filename, "r:gz") as wallet_tgz_file: - tarfile_extractall(wallet_tgz_file, os.path.join(to_dir, "wallet.dat")) + if os.path.exists(wallet_tgz_filename): + with tarfile.open(wallet_tgz_filename, "r:gz") as wallet_tgz_file: + tarfile_extractall(wallet_tgz_file, os.path.join(to_dir, "wallet.dat")) # Copy in per-node wallet config and update zcash.conf to set the # clock offsets correctly. @@ -686,23 +685,27 @@ def persist_node_caches(tmpdir, cache_behavior, num_nodes): node_path = os.path.join(tmpdir, 'node' + str(i), 'regtest') # Clean up the files that we don't want to persist - os.remove(os.path.join(node_path, 'debug.log')) - os.remove(os.path.join(node_path, 'db.log')) - os.remove(os.path.join(node_path, 'peers.dat')) + for filename in ('debug.log', 'db.log', 'peers.dat'): + path = os.path.join(node_path, filename) + if os.path.exists(path): + os.remove(path) # Persist the wallet file for the node to the cache + wallet_path = os.path.join(node_path, 'wallet.dat') wallet_tgz_filename = os.path.join(cache_path, 'node' + str(i) + '_wallet.tar.gz') - with tarfile.open(wallet_tgz_filename, "w:gz") as wallet_tgz_file: - wallet_tgz_file.add(os.path.join(node_path, 'wallet.dat'), arcname="") + if os.path.exists(wallet_path): + with tarfile.open(wallet_tgz_filename, "w:gz") as wallet_tgz_file: + wallet_tgz_file.add(wallet_path, arcname="") # Persist the chain data and cache config just once; it will be reused # for all of the nodes when loading from the cache. if i == 0: # Move the wallet.dat file out of the way so that it doesn't # pollute the chain cache tarfile - shutil.move( - os.path.join(node_path, 'wallet.dat'), - os.path.join(tmpdir, 'wallet.dat.0')) + if os.path.exists(wallet_path): + shutil.move( + wallet_path, + os.path.join(tmpdir, 'wallet.dat.0')) # Store the current time so that we can correctly set the clock # offset when restoring from the cache. @@ -718,9 +721,11 @@ def persist_node_caches(tmpdir, cache_behavior, num_nodes): chain_cache_file.add(node_path, arcname="") # Move the wallet file back into place - shutil.move( - os.path.join(tmpdir, 'wallet.dat.0'), - os.path.join(node_path, 'wallet.dat')) + wallet_tmp = os.path.join(tmpdir, 'wallet.dat.0') + if os.path.exists(wallet_tmp): + shutil.move( + wallet_tmp, + wallet_path) def _rpchost_to_args(rpchost): @@ -1384,7 +1389,8 @@ def update_zainod_conf(datadir, rpc_port, indexer_port, zaino_rpc_port, zaino_gr json_rpc_listen_address='127.0.0.1:'+str(zaino_rpc_port), grpc_listen_address='127.0.0.1:'+str(zaino_grpc_port), validator_grpc_listen_address='127.0.0.1:'+str(indexer_port), - validator_jsonrpc_listen_address='127.0.0.1:'+str(rpc_port) + validator_jsonrpc_listen_address='127.0.0.1:'+str(rpc_port), + storage_database_path=os.path.join(datadir, 'db'), ) config_file = zaino_config.update(config_file) @@ -2040,12 +2046,12 @@ def zcashd_rpc_url(i): return "http://%s:%s@127.0.0.1:%d" % (ZCASHD_RPC_USER, ZCASHD_RPC_PASSWORD, zcashd_rpc_port(i)) -def write_zcash_conf(datadir, node_rpc_port, node_p2p_port, miner_address=None): +def write_zcash_conf(datadir, node_rpc_port, node_p2p_port, miner_address=None, activation_heights=None): """Write a zcash.conf for a standalone regtest zcashd node. - All network upgrades are activated from block 1. Heartwood (ZIP 213) - enables shielded coinbase; NU5 enables Orchard. No addnode is written - because blocks are pushed to zebrad via submitblock rather than P2P. + By default all network upgrades are activated from block 1 to preserve the + historical behavior of the standalone helper. Tests can override the + activation heights to match a validator's regtest configuration. miner_address, if given, sets the coinbase recipient for `generate` calls. setmineraddress has been removed from this zcashd version, so the address @@ -2062,22 +2068,29 @@ def write_zcash_conf(datadir, node_rpc_port, node_p2p_port, miner_address=None): f.write("rpcpassword=%s\n" % ZCASHD_RPC_PASSWORD) if miner_address is not None: f.write("mineraddress=%s\n" % miner_address) - # Activate all upgrades from block 1 to match zebrad Regtest defaults. - f.write("nuparams=5ba81b19:1\n") # Overwinter - f.write("nuparams=76b809bb:1\n") # Sapling - f.write("nuparams=2bb40e60:1\n") # Blossom - f.write("nuparams=f5b9230b:1\n") # Heartwood (ZIP 213: shielded coinbase) - f.write("nuparams=e9ff75a6:1\n") # Canopy - f.write("nuparams=c2d6d0b4:1\n") # NU5 (Orchard) - f.write("nuparams=c8e71055:1\n") # NU6 + f.write("minetolocalwallet=0\n") + if activation_heights is None: + activation_heights = { + '5ba81b19': 1, # Overwinter + '76b809bb': 1, # Sapling + '2bb40e60': 1, # Blossom + 'f5b9230b': 1, # Heartwood + 'e9ff75a6': 1, # Canopy + 'c2d6d0b4': 1, # NU5 + 'c8e71055': 1, # NU6 + } + for branch_id, height in activation_heights.items(): + f.write("nuparams=%s:%d\n" % (branch_id, height)) # Re-enable the deprecated getnewaddress RPC used to obtain a t-address # for transparent coinbase mining. f.write("allowdeprecated=getnewaddress\n") + f.write("allowdeprecated=z_getnewaddress\n") + f.write("regtestwalletsetbestchaineveryblock=1\n") f.write("i-am-aware-zcashd-will-be-replaced-by-zebrad-and-zallet-in-2025=1\n") return conf_path -def start_zcashd_node(i, dirname, miner_address=None, binary=None, stderr=None): +def start_zcashd_node(i, dirname, miner_address=None, activation_heights=None, binary=None, stderr=None): """Start a standalone regtest zcashd node and return an RPC proxy.""" if binary is None: binary = zcashd_node_binary() @@ -2087,6 +2100,7 @@ def start_zcashd_node(i, dirname, miner_address=None, binary=None, stderr=None): zcashd_rpc_port(i), zcashd_p2p_port(i), miner_address=miner_address, + activation_heights=activation_heights, ) args = [binary, "-conf=" + conf, "-datadir=" + datadir] zcashd_node_processes[i] = subprocess.Popen(args, stderr=stderr) From 85c46fddcb682effd0a7b0d44af257c407bbce94 Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 23 Apr 2026 13:54:20 -0300 Subject: [PATCH 06/24] Refactor grpc comparison test flow for readability --- qa/rpc-tests/grpc_comparison.py | 335 +++++++++++++------------------- 1 file changed, 134 insertions(+), 201 deletions(-) diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index bd60da742..c341bacf7 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -89,6 +89,7 @@ _GRPC_STAGE1_CACHE_NAME = 'grpc_comparison_stage1' _GRPC_ACTIVATION_HEIGHT = 2 _GRPC_CACHE_VERSION = 7 +_GRPC_STAGE1_HEIGHT = 202 _GRPC_ZCASHD_NUPARAMS = { '5ba81b19': 1, # Overwinter '76b809bb': 1, # Sapling @@ -125,14 +126,8 @@ def _write_checkpoint_file(node, max_height, path): f.write("%d %s\n" % (height, node.getblockhash(height))) -def _treestate_has_final_state(treestate, pool_name): - pool = treestate.get(pool_name, {}) - commitments = pool.get("commitments", {}) - final_state = commitments.get("finalState") - return isinstance(final_state, str) and len(final_state) > 0 - - def _grpc_metadata_fields(): + """Metadata persisted alongside the cached fixture chain.""" return ( 'taddr', 'sapling_ua0', 'sapling_ua_aux', 'orchard_ua1', 'orchard_ua_aux', @@ -239,15 +234,15 @@ def __init__(self): self.orchard_addr1 = None # bare Orchard receiver of account 3 (receives at blocks 205, 203) self._orchard_aux_addr = None # Orchard receiver used for the t→Orchard case and later Orchard spends self.t_to_sapling_txid = None - self.t_to_sapling_height = None # 202 + self.t_to_sapling_height = None # 201 self.t_to_orchard_txid = None - self.t_to_orchard_height = None # 203 + self.t_to_orchard_height = None # 205 self.sapling_to_sapling_txid = None self.sapling_to_sapling_height = None # 204 self.orchard_to_orchard_txid = None - self.orchard_to_orchard_height = None # 205 + self.orchard_to_orchard_height = None # 206 self.sapling_to_orchard_txid = None - self.sapling_to_orchard_height = None # 206 + self.sapling_to_orchard_height = None # 203 self.orchard_to_sapling_txid = None self.orchard_to_sapling_height = None # 207 self.sapling_to_t_txid = None @@ -274,6 +269,7 @@ def add_options(self, parser): ) def setup_chain(self): + """Restore the final cache, fall back to the reusable stage-1 cache, or start clean.""" cache_path = persistent_cache_path(_GRPC_CACHE_NAME) if not self.options.fresh and persistent_cache_exists(_GRPC_CACHE_NAME): try: @@ -370,6 +366,22 @@ def _wait_for_build_nodes_height(self, build_nodes, expected_height, timeout=30) % (expected_height, heights) ) + def _restart_build_node(self, build_nodes, index): + """Restart a standalone builder node so its wallet reloads note state from disk.""" + stop_zcashd_node(index, build_nodes[index]) + build_nodes[index] = start_zcashd_node( + index, + self.options.tmpdir, + activation_heights=_GRPC_ZCASHD_NUPARAMS, + ) + return build_nodes[index] + + def _mine_and_sync_build_nodes(self, miner, build_nodes): + """Mine one block on the canonical builder node and submit it to the follower node.""" + miner.generate(1) + _submit_missing_blocks(build_nodes[0], build_nodes[1]) + return build_nodes[0].getblockcount() + def _persist_stage1_cache(self, build_nodes): print("grpc_comparison: persisting stage-1 wallet cache") for index, node in enumerate(build_nodes): @@ -396,10 +408,17 @@ def _skip_runtime_files(tarinfo): self._write_cached_metadata(cache_path) build_nodes = self._start_build_nodes() - self._wait_for_build_nodes_height(build_nodes, 202) + self._wait_for_build_nodes_height(build_nodes, _GRPC_STAGE1_HEIGHT) return build_nodes def _build_stage1_with_wallet_nodes(self): + """ + Build the reusable prefix of the fixture chain. + + Stage 1 does the slow work: mine 200 transparent blocks and create two + independent Sapling note pools. Subsequent reruns can resume from this + point without repeating the expensive proof generation. + """ build_nodes = self._start_build_nodes() node0, node1 = build_nodes @@ -443,15 +462,11 @@ def _build_stage1_with_wallet_nodes(self): 'AllowRevealedSenders', ), ) - node0.generate(1) - _submit_missing_blocks(node0, node1) - self.t_to_sapling_height = node0.getblockcount() # 201 + self.t_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 201 print("grpc_comparison: restarting primary builder wallet before auxiliary Sapling funding") - stop_zcashd_node(0, node0) - node0 = start_zcashd_node(0, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS) - build_nodes[0] = node0 - assert_equal(node0.getblockcount(), 201) + node0 = self._restart_build_node(build_nodes, 0) + assert_equal(node0.getblockcount(), self.t_to_sapling_height) print("grpc_comparison: funding auxiliary Sapling pool from transparent coinbase") wait_and_assert_operationid_status( @@ -464,17 +479,16 @@ def _build_stage1_with_wallet_nodes(self): 'AllowRevealedSenders', ), ) - node0.generate(1) - _submit_missing_blocks(node0, node1) - assert_equal(node0.getblockcount(), 202) + assert_equal(self._mine_and_sync_build_nodes(node0, build_nodes), _GRPC_STAGE1_HEIGHT) return build_nodes def _complete_chain_from_stage1(self, build_nodes): + """Build the shielded transaction range used by the parity assertions.""" node0, node1 = build_nodes - assert_equal(node0.getblockcount(), 202) + assert_equal(node0.getblockcount(), _GRPC_STAGE1_HEIGHT) _submit_missing_blocks(node0, node1) - assert_equal(node1.getblockcount(), 202) + assert_equal(node1.getblockcount(), _GRPC_STAGE1_HEIGHT) fund = Decimal('0.1') amount = Decimal('0.01') @@ -491,9 +505,7 @@ def _complete_chain_from_stage1(self, build_nodes): 'AllowRevealedAmounts', ), ) - node0.generate(1) - _submit_missing_blocks(node0, node1) - self.sapling_to_orchard_height = node0.getblockcount() # 203 + self.sapling_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 203 print("grpc_comparison: building Sapling -> Sapling transaction") self.sapling_to_sapling_txid = wait_and_assert_operationid_status( @@ -505,9 +517,7 @@ def _complete_chain_from_stage1(self, build_nodes): ZIP_317_FEE, ), ) - node0.generate(1) - _submit_missing_blocks(node0, node1) - self.sapling_to_sapling_height = node0.getblockcount() # 204 + self.sapling_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 204 orchard_fee = conventional_fee(4) orchard_amount = Decimal('12.5') - orchard_fee @@ -522,14 +532,10 @@ def _complete_chain_from_stage1(self, build_nodes): 'NoPrivacy', ), ) - node0.generate(1) - _submit_missing_blocks(node0, node1) - self.t_to_orchard_height = node0.getblockcount() # 205 + self.t_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 205 # Restart the Orchard-owning wallet after funding lands so it reloads # its Orchard note state before the first Orchard spend. - stop_zcashd_node(1, node1) - node1 = start_zcashd_node(1, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS) - build_nodes[1] = node1 + node1 = self._restart_build_node(build_nodes, 1) assert_equal(node1.getblockcount(), node0.getblockcount()) print("grpc_comparison: building Orchard -> Orchard transaction") @@ -543,13 +549,9 @@ def _complete_chain_from_stage1(self, build_nodes): ), ) _relay_raw_transaction(node1, node0, self.orchard_to_orchard_txid) - node0.generate(1) - _submit_missing_blocks(node0, node1) - self.orchard_to_orchard_height = node0.getblockcount() # 206 + self.orchard_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 206 - stop_zcashd_node(1, node1) - node1 = start_zcashd_node(1, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS) - build_nodes[1] = node1 + node1 = self._restart_build_node(build_nodes, 1) assert_equal(node1.getblockcount(), node0.getblockcount()) print("grpc_comparison: building Orchard -> Sapling transaction") @@ -564,13 +566,9 @@ def _complete_chain_from_stage1(self, build_nodes): ), ) _relay_raw_transaction(node1, node0, self.orchard_to_sapling_txid) - node0.generate(1) - _submit_missing_blocks(node0, node1) - self.orchard_to_sapling_height = node0.getblockcount() # 207 + self.orchard_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 207 - stop_zcashd_node(1, node1) - node1 = start_zcashd_node(1, self.options.tmpdir, activation_heights=_GRPC_ZCASHD_NUPARAMS) - build_nodes[1] = node1 + node1 = self._restart_build_node(build_nodes, 1) assert_equal(node1.getblockcount(), node0.getblockcount()) print("grpc_comparison: building Sapling -> transparent transaction") @@ -584,9 +582,7 @@ def _complete_chain_from_stage1(self, build_nodes): 'AllowRevealedRecipients', ), ) - node0.generate(1) - _submit_missing_blocks(node0, node1) - self.sapling_to_t_height = node0.getblockcount() # 208 + self.sapling_to_t_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 208 print("grpc_comparison: building Orchard -> transparent transaction") self.orchard_to_t_txid = wait_and_assert_operationid_status( @@ -600,9 +596,7 @@ def _complete_chain_from_stage1(self, build_nodes): ), ) _relay_raw_transaction(node1, node0, self.orchard_to_t_txid) - node0.generate(1) - _submit_missing_blocks(node0, node1) - self.orchard_to_t_height = node0.getblockcount() # 209 + self.orchard_to_t_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 209 def setup_nodes(self): # Match Zebra regtest defaults up to Canopy, and activate Orchard-era @@ -655,12 +649,8 @@ def setup_network(self, split=False): self._persist_framework_cache() self.txid = self.nodes[0].getblock("1")['tx'][0] - if self._chain_loaded_from_cache: - print("grpc_comparison: waiting for restored Zebrad tip before starting indexers") - self._wait_for_zebra_tip(self.orchard_to_t_height) - else: - print("grpc_comparison: waiting for restored Zebrad tip before starting indexers") - self._wait_for_zebra_tip(self.orchard_to_t_height) + print("grpc_comparison: waiting for restored Zebrad tip before starting indexers") + self._wait_for_zebra_tip(self.orchard_to_t_height) self.zainos = self.setup_indexers() self.lwds = self.setup_lightwalletds() @@ -711,143 +701,89 @@ def _wait_for_zebra_tip(self, expected_height, timeout=30): % (expected_height, timeout, last_height) ) + def _run_checks(self, checks): + """Run a sequence of labeled test helpers in order.""" + for label, method in checks: + print("Testing %s..." % label) + method() + def run_test(self): zainod_ch = grpc.insecure_channel(f"127.0.0.1:{zaino_grpc_port(0)}") lwd_ch = grpc.insecure_channel(f"127.0.0.1:{self.lwds[0]}") zs = service_pb2_grpc.CompactTxStreamerStub(zainod_ch) ls = service_pb2_grpc.CompactTxStreamerStub(lwd_ch) - print("Testing GetLightdInfo...") - self.test_get_lightd_info(zs, ls) - - print("Testing GetLatestBlock...") - self.test_get_latest_block(zs, ls) - - print("Testing GetBlock...") - self.test_get_block(zs, ls) - - print("Testing GetBlock (out of bounds)...") - self.test_get_block_out_of_bounds(zs, ls) - - print("Testing GetBlockNullifiers...") - self.test_get_block_nullifiers(zs, ls) - - print("Testing GetBlockRange (forward)...") - self.test_get_block_range(zs, ls) - - print("Testing GetBlockRange (reverse)...") - self.test_get_block_range_reverse(zs, ls) - - print("Testing GetBlockRange (out of bounds)...") - self.test_get_block_range_out_of_bounds(zs, ls) - - print("Testing GetBlockRangeNullifiers...") - self.test_get_block_range_nullifiers(zs, ls) - - print("Testing GetBlockRangeNullifiers (reverse)...") - self.test_get_block_range_nullifiers_reverse(zs, ls) - - print("Testing GetTransaction...") - self.test_get_transaction(zs, ls) - - print("Testing GetTaddressTxids (full range)...") - self.test_get_taddress_txids(zs, ls) - - print("Testing GetTaddressTxids (lower bound)...") - self.test_get_taddress_txids_lower(zs, ls) - - print("Testing GetTaddressTxids (upper bound)...") - self.test_get_taddress_txids_upper(zs, ls) - - print("Testing GetTaddressBalance...") - self.test_get_taddress_balance(zs, ls) - - print("Testing GetTaddressBalanceStream...") - self.test_get_taddress_balance_stream(zs, ls) - - print("Testing GetTreeState (by height)...") - self.test_get_tree_state_by_height(zs, ls) - - print("Testing GetTreeState (out of bounds)...") - self.test_get_tree_state_out_of_bounds(zs, ls) - - print("Testing GetLatestTreeState...") - self.test_get_latest_tree_state(zs, ls) - - print("Testing GetSubtreeRoots (sapling)...") - self.test_get_subtree_roots_sapling(zs, ls) - - print("Testing GetSubtreeRoots (orchard)...") - self.test_get_subtree_roots_orchard(zs, ls) - - print("Testing GetAddressUtxos...") - self.test_get_address_utxos(zs, ls) - - print("Testing GetAddressUtxosStream...") - self.test_get_address_utxos_stream(zs, ls) - - # ---- Shielded transaction tests (blocks 202–205) ---- - - print("Testing GetBlock (t→Sapling, block %d)..." % self.t_to_sapling_height) - self.test_get_block_t_to_sapling(zs, ls) - - print("Testing GetBlockNullifiers (t→Sapling)...") - self.test_get_block_nullifiers_t_to_sapling(zs, ls) - - print("Testing GetBlockRange (shielded range %d–%d)..." - % (self.t_to_sapling_height, self.orchard_to_orchard_height)) - self.test_get_block_range_shielded(zs, ls) - - print("Testing GetTransaction (t→Sapling)...") - self.test_get_transaction_t_to_sapling(zs, ls) - - print("Testing GetTreeState (after t→Sapling, block %d)..." % self.t_to_sapling_height) - self.test_get_tree_state_after_t_to_sapling(zs, ls) - - print("Testing GetBlock (t→Orchard, block %d)..." % self.t_to_orchard_height) - self.test_get_block_t_to_orchard(zs, ls) - - print("Testing GetTransaction (t→Orchard)...") - self.test_get_transaction_t_to_orchard(zs, ls) - - print("Testing GetTreeState (after t→Orchard, block %d)..." % self.t_to_orchard_height) - self.test_get_tree_state_after_t_to_orchard(zs, ls) - - print("Testing GetBlock (Sapling→Sapling, block %d)..." % self.sapling_to_sapling_height) - self.test_get_block_sapling_to_sapling(zs, ls) - - print("Testing GetTransaction (Sapling→Sapling)...") - self.test_get_transaction_sapling_to_sapling(zs, ls) - - print("Testing GetBlock (Orchard→Orchard, block %d)..." % self.orchard_to_orchard_height) - self.test_get_block_orchard_to_orchard(zs, ls) - - print("Testing GetTransaction (Orchard→Orchard)...") - self.test_get_transaction_orchard_to_orchard(zs, ls) - - print("Testing GetBlock (Sapling→Orchard, block %d)..." % self.sapling_to_orchard_height) - self.test_get_block_sapling_to_orchard(zs, ls) - - print("Testing GetTransaction (Sapling→Orchard)...") - self.test_get_transaction_sapling_to_orchard(zs, ls) - - print("Testing GetBlock (Orchard→Sapling, block %d)..." % self.orchard_to_sapling_height) - self.test_get_block_orchard_to_sapling(zs, ls) - - print("Testing GetTransaction (Orchard→Sapling)...") - self.test_get_transaction_orchard_to_sapling(zs, ls) - - print("Testing GetBlock (Sapling→t, block %d)..." % self.sapling_to_t_height) - self.test_get_block_sapling_to_t(zs, ls) - - print("Testing GetTransaction (Sapling→t)...") - self.test_get_transaction_sapling_to_t(zs, ls) - - print("Testing GetBlock (Orchard→t, block %d)..." % self.orchard_to_t_height) - self.test_get_block_orchard_to_t(zs, ls) - - print("Testing GetTransaction (Orchard→t)...") - self.test_get_transaction_orchard_to_t(zs, ls) + # Start with chain-wide parity checks on transparent and metadata APIs. + self._run_checks([ + ("GetLightdInfo", lambda: self.test_get_lightd_info(zs, ls)), + ("GetLatestBlock", lambda: self.test_get_latest_block(zs, ls)), + ("GetBlock", lambda: self.test_get_block(zs, ls)), + ("GetBlock (out of bounds)", lambda: self.test_get_block_out_of_bounds(zs, ls)), + ("GetBlockNullifiers", lambda: self.test_get_block_nullifiers(zs, ls)), + ("GetBlockRange (forward)", lambda: self.test_get_block_range(zs, ls)), + ("GetBlockRange (reverse)", lambda: self.test_get_block_range_reverse(zs, ls)), + ("GetBlockRange (out of bounds)", lambda: self.test_get_block_range_out_of_bounds(zs, ls)), + ("GetBlockRangeNullifiers", lambda: self.test_get_block_range_nullifiers(zs, ls)), + ("GetBlockRangeNullifiers (reverse)", lambda: self.test_get_block_range_nullifiers_reverse(zs, ls)), + ("GetTransaction", lambda: self.test_get_transaction(zs, ls)), + ("GetTaddressTxids (full range)", lambda: self.test_get_taddress_txids(zs, ls)), + ("GetTaddressTxids (lower bound)", lambda: self.test_get_taddress_txids_lower(zs, ls)), + ("GetTaddressTxids (upper bound)", lambda: self.test_get_taddress_txids_upper(zs, ls)), + ("GetTaddressBalance", lambda: self.test_get_taddress_balance(zs, ls)), + ("GetTaddressBalanceStream", lambda: self.test_get_taddress_balance_stream(zs, ls)), + ("GetTreeState (by height)", lambda: self.test_get_tree_state_by_height(zs, ls)), + ("GetTreeState (out of bounds)", lambda: self.test_get_tree_state_out_of_bounds(zs, ls)), + ("GetLatestTreeState", lambda: self.test_get_latest_tree_state(zs, ls)), + ("GetSubtreeRoots (sapling)", lambda: self.test_get_subtree_roots_sapling(zs, ls)), + ("GetSubtreeRoots (orchard)", lambda: self.test_get_subtree_roots_orchard(zs, ls)), + ("GetAddressUtxos", lambda: self.test_get_address_utxos(zs, ls)), + ("GetAddressUtxosStream", lambda: self.test_get_address_utxos_stream(zs, ls)), + ]) + + # Then walk the shielded fixture in chain order so each assertion lines + # up with the block narrative at the top of the file. + self._run_checks([ + ("GetBlock (t→Sapling, block %d)" % self.t_to_sapling_height, + lambda: self.test_get_block_t_to_sapling(zs, ls)), + ("GetBlockNullifiers (t→Sapling)", + lambda: self.test_get_block_nullifiers_t_to_sapling(zs, ls)), + ("GetBlockRange (shielded range %d–%d)" % (self.t_to_sapling_height, self.orchard_to_t_height), + lambda: self.test_get_block_range_shielded(zs, ls)), + ("GetTransaction (t→Sapling)", + lambda: self.test_get_transaction_t_to_sapling(zs, ls)), + ("GetTreeState (after t→Sapling, block %d)" % self.t_to_sapling_height, + lambda: self.test_get_tree_state_after_t_to_sapling(zs, ls)), + ("GetBlock (Sapling→Orchard, block %d)" % self.sapling_to_orchard_height, + lambda: self.test_get_block_sapling_to_orchard(zs, ls)), + ("GetTransaction (Sapling→Orchard)", + lambda: self.test_get_transaction_sapling_to_orchard(zs, ls)), + ("GetBlock (Sapling→Sapling, block %d)" % self.sapling_to_sapling_height, + lambda: self.test_get_block_sapling_to_sapling(zs, ls)), + ("GetTransaction (Sapling→Sapling)", + lambda: self.test_get_transaction_sapling_to_sapling(zs, ls)), + ("GetBlock (t→Orchard, block %d)" % self.t_to_orchard_height, + lambda: self.test_get_block_t_to_orchard(zs, ls)), + ("GetTransaction (t→Orchard)", + lambda: self.test_get_transaction_t_to_orchard(zs, ls)), + ("GetTreeState (after t→Orchard, block %d)" % self.t_to_orchard_height, + lambda: self.test_get_tree_state_after_t_to_orchard(zs, ls)), + ("GetBlock (Orchard→Orchard, block %d)" % self.orchard_to_orchard_height, + lambda: self.test_get_block_orchard_to_orchard(zs, ls)), + ("GetTransaction (Orchard→Orchard)", + lambda: self.test_get_transaction_orchard_to_orchard(zs, ls)), + ("GetBlock (Orchard→Sapling, block %d)" % self.orchard_to_sapling_height, + lambda: self.test_get_block_orchard_to_sapling(zs, ls)), + ("GetTransaction (Orchard→Sapling)", + lambda: self.test_get_transaction_orchard_to_sapling(zs, ls)), + ("GetBlock (Sapling→t, block %d)" % self.sapling_to_t_height, + lambda: self.test_get_block_sapling_to_t(zs, ls)), + ("GetTransaction (Sapling→t)", + lambda: self.test_get_transaction_sapling_to_t(zs, ls)), + ("GetBlock (Orchard→t, block %d)" % self.orchard_to_t_height, + lambda: self.test_get_block_orchard_to_t(zs, ls)), + ("GetTransaction (Orchard→t)", + lambda: self.test_get_transaction_orchard_to_t(zs, ls)), + ]) # TODO: GetMempoolTx and GetMempoolStream require submitting a transaction # to the mempool via the mempool RPC. @@ -1137,7 +1073,7 @@ def test_get_address_utxos_stream(self, zs, ls): assert_equal(z_u.height, l_u.height) # ------------------------------------------------------------------------- - # Shielded transaction tests (blocks 202–208) + # Shielded transaction tests (blocks 201–209) # # Every block in the shielded range has at least one shielded component # (Sapling spend/output or Orchard action), so vtx must be non-empty and @@ -1163,7 +1099,7 @@ def _assert_transaction_match(self, zs, ls, txid_hex, expected_height): assert_equal(z.height, l.height) assert_equal(z.height, expected_height) - # -- t → Sapling (block 202) -- + # -- t → Sapling (block 201) -- def test_get_block_t_to_sapling(self, zs, ls): """Block with a t→Sapling output must have matching, non-empty vtx.""" @@ -1199,8 +1135,9 @@ def test_get_transaction_t_to_sapling(self, zs, ls): zs, ls, self.t_to_sapling_txid, self.t_to_sapling_height) def test_get_tree_state_after_t_to_sapling(self, zs, ls): - """After t→Sapling (block 202) both trees must be non-empty. - Orchard was seeded by the coinbase at block 201; Sapling by this tx.""" + """After t→Sapling (block 201) Sapling must be non-empty. + Orchard tree state is already initialized on this chain layout, so we + only assert parity and Sapling population here.""" req = service_pb2.BlockID(height=self.t_to_sapling_height, hash=b"") z = zs.GetTreeState(req) l = ls.GetTreeState(req) @@ -1211,11 +1148,8 @@ def test_get_tree_state_after_t_to_sapling(self, zs, ls): assert_equal(z.orchardTree, l.orchardTree) assert_true(len(z.saplingTree) > 0, "Sapling tree is empty after t→Sapling tx at height %d" % self.t_to_sapling_height) - assert_true(len(z.orchardTree) > 0, - "Orchard tree is empty at height %d (should have been seeded by coinbase at 201)" - % self.t_to_sapling_height) - # -- t → Orchard (block 201) -- + # -- t → Orchard (block 205) -- def test_get_block_t_to_orchard(self, zs, ls): """Block with a t→Orchard output must have matching, non-empty vtx.""" @@ -1227,8 +1161,7 @@ def test_get_transaction_t_to_orchard(self, zs, ls): zs, ls, self.t_to_orchard_txid, self.t_to_orchard_height) def test_get_tree_state_after_t_to_orchard(self, zs, ls): - """After t→Orchard coinbase (block 201) the Orchard tree must be non-empty. - The Sapling tree is still empty at this height; it is seeded at block 202.""" + """After t→Orchard (block 205) the Orchard tree must be non-empty.""" req = service_pb2.BlockID(height=self.t_to_orchard_height, hash=b"") z = zs.GetTreeState(req) l = ls.GetTreeState(req) From 89ef0822e0f716589cfe2c03a014683b31268f1f Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 23 Apr 2026 13:58:24 -0300 Subject: [PATCH 07/24] add .claude and .codex to gitignore --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 739b5e52f..39deebf54 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,8 @@ *.orig *.pyc .vscode - +.claude +.codex qa/pull-tester/tests_config.py qa/pull-tester/tests_config.ini qa/cache/* From 6ff34afa3c02060efde14dd205d97127aa3bcee9 Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 23 Apr 2026 16:45:06 -0300 Subject: [PATCH 08/24] Document how the gRPC comparison test was stabilized --- doc/book/src/SUMMARY.md | 1 + doc/book/src/dev/grpc-comparison.md | 224 ++++++++++++++++++++++++++++ 2 files changed, 225 insertions(+) create mode 100644 doc/book/src/dev/grpc-comparison.md diff --git a/doc/book/src/SUMMARY.md b/doc/book/src/SUMMARY.md index 30a7796cb..1bc007380 100644 --- a/doc/book/src/SUMMARY.md +++ b/doc/book/src/SUMMARY.md @@ -7,6 +7,7 @@ - [Platform Support](user/platform-support.md) - [Developer Documentation](dev.md) - [Regtest Mode](dev/regtest.md) + - [Bringing `grpc_comparison.py` Live](dev/grpc-comparison.md) - [Platform Policy](dev/platform-policy.md) - [CI Infrastructure](ci/README.md) - [Cross-Repository CI](ci/cross-repo.md) diff --git a/doc/book/src/dev/grpc-comparison.md b/doc/book/src/dev/grpc-comparison.md new file mode 100644 index 000000000..435da659e --- /dev/null +++ b/doc/book/src/dev/grpc-comparison.md @@ -0,0 +1,224 @@ +# Bringing `grpc_comparison.py` Live + +The `qa/rpc-tests/grpc_comparison.py` test compares Zainod and Lightwalletd by +asking both implementations the same `CompactTxStreamer` gRPC queries while +they are backed by the same Zebrad node. + +This chapter documents the process that led to the test becoming stable, fast, +and usable in CI. It is intentionally more historical than the inline comments +in the test file: the goal is to explain not just what the fixture does, but +why it ended up that way. + +## Goal + +The original goal was straightforward: + +1. Build a short regtest chain containing transparent, Sapling, and Orchard + activity. +2. Submit that chain to Zebrad. +3. Start Zainod and Lightwalletd against the same Zebrad state. +4. Compare their responses method-by-method. + +The hard part was step 1. A chain that is easy to describe is not necessarily a +chain that `zcashd`, Zebrad, Zainod, and Lightwalletd will all accept and index +reliably in the same test harness. + +## What made this fixture tricky + +Several interacting constraints shaped the final fixture: + +- The test needs both Sapling and Orchard activity, including cross-pool sends. +- Standalone `zcashd` wallet behavior is sensitive to note selection and wallet + state reloading, especially for Orchard spends. +- Zebrad and standalone `zcashd` do not build the fixture chain together over + P2P in this harness, so the test submits raw blocks explicitly. +- Zainod must only start after Zebrad has loaded the full chain state, or it can + fail during initial indexing. +- Regenerating proof-heavy shielded transactions on every run is too slow for a + useful parity test. + +Those constraints are why the final test uses: + +- two standalone `zcashd` builder wallets, +- a two-stage cache, +- checkpoint-assisted Zebrad replay, +- and explicit startup ordering for Zebrad, Zainod, and Lightwalletd. + +## Dead ends we had to eliminate + +The final structure came from working through a series of failures. + +### One-wallet chain construction was not reliable + +The first versions tried to build the whole fixture from a single standalone +`zcashd` wallet. That produced multiple classes of failure: + +- Sapling funds created on-chain were not always surfaced as spendable to the + next `z_sendmany` call. +- Orchard cross-pool and follow-on Orchard spends could crash in wallet anchor + handling. +- The wallet would often choose the same note pool for multiple test + transactions, leading to duplicate-nullifier or "insufficient funds" errors. + +The fix was to split responsibilities: + +- `zcashd0` authors the transparent and Sapling side of the chain. +- `zcashd1` owns the Orchard accounts and authors Orchard spends. + +That mirrors the separation already used by the working Orchard wallet tests. + +### The "obvious" chain was still too sensitive to note selection + +Even with two wallets, using a single Sapling note pool and a single Orchard +note pool made the test fragile. Some later spends depended on `zcashd` +selecting exactly the notes we expected. + +The final fixture avoids that by creating separate source pools: + +- one Sapling pool for the Sapling-to-Orchard funding transaction, +- one Sapling pool for later Sapling spends, +- one Orchard pool for the first Orchard spend, +- and one Orchard pool for later Orchard-originated transactions. + +That is why the fixture has two Sapling funding steps and two Orchard funding +steps instead of a single minimal funding transaction for each pool. + +### ZIP 317 fee assumptions mattered + +Some cross-pool transactions that looked simple on paper were not satisfiable +with a hard-coded `ZIP_317_FEE`. + +The fix was to compute fees for the actual transaction shape where needed using +`conventional_fee(...)`, while still keeping `ZIP_317_FEE` for the simpler +cases that matched the existing wallet tests. + +### Standalone `zcashd` and Zebrad needed aligned activation behavior + +The fixture uses standalone `zcashd` builders, then replays the resulting chain +into Zebrad. That only worked reliably once the test stopped assuming every +network upgrade should activate at height 1. + +The stable layout is: + +- Overwinter through Canopy at height 1 +- NU5 and NU6 at height 2 + +That matches Zebrad's regtest expectations closely enough for the replayed chain +to be accepted and indexed consistently by the downstream services. + +### Zainod startup ordering mattered + +One important operational rule emerged from debugging: + +Zainod and Lightwalletd must connect only after Zebrad has the full replayed or +restored chain loaded. + +If Zainod starts too early, it can fail during initial indexing because the +state it expects is not fully available yet. The final test therefore: + +1. restores or replays the Zebrad chain, +2. waits for Zebrad to report the expected tip height, +3. then starts Zainod and Lightwalletd, +4. then waits for both indexers to catch up. + +This ordering is required, not cosmetic. + +## The final fixture design + +The chain that shipped in the live test is: + +- Blocks `1..200`: transparent coinbase to a `taddr` +- Block `201`: transparent to Sapling funding +- Block `202`: second transparent to Sapling funding +- Block `203`: Sapling to Orchard +- Block `204`: Sapling to Sapling +- Block `205`: transparent to Orchard +- Block `206`: Orchard to Orchard +- Block `207`: Orchard to Sapling +- Block `208`: Sapling to transparent +- Block `209`: Orchard to transparent + +This gives the parity checks: + +- transparent address queries, +- tree state queries, +- block and block-range queries, +- Sapling activity, +- Orchard activity, +- and cross-pool activity. + +Just as importantly, it does so with a chain that all four components in the +test setup can handle reproducibly. + +## Why the test uses a two-stage cache + +Proof generation and shielded transaction construction dominate runtime if the +fixture is rebuilt from scratch on every run. + +The final design uses two cache layers: + +- `qa/rpc-tests/cache/grpc_comparison_stage1/` + Stores the expensive builder-wallet state after the initial 200-block chain + and the two Sapling funding steps. +- `qa/rpc-tests/cache/grpc_comparison/` + Stores the final Zebrad state and metadata used by the parity test itself. + +This split was useful because it let development continue even when the later +shielded transactions were still being debugged. Once the test was stable, it +also kept the normal runtime low. + +Typical usage is: + +```bash +uv run ./qa/zcash/grpc_comparison_tests.py +``` + +To rebuild the fixture and overwrite the caches: + +```bash +uv run ./qa/zcash/grpc_comparison_tests.py --fresh +``` + +## Why checkpoint-assisted replay exists + +The final test still builds the chain with standalone `zcashd`, then loads it +into Zebrad by submitting raw blocks. The test also writes a temporary +checkpoint file for the replayed chain before starting Zebrad. + +That part exists because the builder chain and the validator chain are not being +grown together live over P2P. The checkpoint-assisted setup made Zebrad replay +stable enough for the indexer comparison to become routine. + +## Normalization rules are part of the design + +The parity test does not assert byte-for-byte identity for every protobuf field. +Instead, it compares the parts that are intended to match and normalizes the +known implementation-specific differences. + +The most important example is compact block normalization: + +- Zainod and Lightwalletd can report different `protoVersion` values. +- Lightwalletd may include transparent-only compact transactions on shielded + blocks that Zainod omits. + +Those differences are normalized away so the test focuses on the actual parity +target: whether both services agree on the chain and the shielded contents that +wallet clients care about. + +## Maintenance guidance + +If this test starts failing again, the safest order of operations is: + +1. Verify the normal cached path still passes. +2. Run with `--fresh` to determine whether the failure is in cache restore or + fixture generation. +3. Check whether Zebrad reaches the expected tip before Zainod starts. +4. Check whether a failure is really a parity mismatch, or whether it is a + wallet-construction problem in the standalone builder nodes. +5. Avoid simplifying the fixture unless the replacement has been verified across + all four components. + +The biggest lesson from bringing this test live is that "shortest chain" and +"most maintainable chain" were not the same thing. The stable fixture is a bit +more explicit than the original idealized version, but it is much easier to run, +cache, and reason about in CI. From caebf00978cf4f6473e8509b85f7928c55010cc0 Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 23 Apr 2026 17:33:46 -0300 Subject: [PATCH 09/24] Refine grpc parity test maintenance and cache handling --- .gitignore | 2 + doc/book/src/dev/grpc-comparison.md | 4 + .../cache/grpc_comparison/chain_metadata.json | 29 ---- .../cache/grpc_comparison/zebrad_state.tar.gz | Bin 144942 -> 0 bytes .../chain_metadata.json | 29 ---- .../zcashd0_state.tar.gz | Bin 213815 -> 0 bytes .../zcashd1_state.tar.gz | Bin 179777 -> 0 bytes qa/rpc-tests/grpc_comparison.py | 161 ++++++++++-------- 8 files changed, 92 insertions(+), 133 deletions(-) delete mode 100644 qa/rpc-tests/cache/grpc_comparison/chain_metadata.json delete mode 100644 qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz delete mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json delete mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz delete mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz diff --git a/.gitignore b/.gitignore index 39deebf54..0be1501a4 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,8 @@ qa/pull-tester/tests_config.py qa/pull-tester/tests_config.ini qa/cache/* +qa/rpc-tests/cache/grpc_comparison/ +qa/rpc-tests/cache/grpc_comparison_stage1/ src/* poetry.lock diff --git a/doc/book/src/dev/grpc-comparison.md b/doc/book/src/dev/grpc-comparison.md index 435da659e..bac0307df 100644 --- a/doc/book/src/dev/grpc-comparison.md +++ b/doc/book/src/dev/grpc-comparison.md @@ -163,6 +163,10 @@ The final design uses two cache layers: - `qa/rpc-tests/cache/grpc_comparison/` Stores the final Zebrad state and metadata used by the parity test itself. +These caches are generated artifacts. They are useful for local development and +CI acceleration, but they should not be committed to git because the binary +archives are hard to review and unnecessarily bloat repository history. + This split was useful because it let development continue even when the later shielded transactions were still being debugged. Once the test was stable, it also kept the normal runtime low. diff --git a/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json b/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json deleted file mode 100644 index 0c4f28018..000000000 --- a/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "taddr": "tmUtDKtdCpW9JK6qCnF7V3HGT17tNMw5N44", - "sapling_ua0": "zregtestsapling1cxqx6jlngx0a6lakm5qjz7pxr9wkf0uq532cfvtny0dw2ts3zdq2zglme0kjkf9u62truflckke", - "sapling_ua_aux": "zregtestsapling1v8g56j8emgfhtwuwgffa6sarj4rp9gkg4q4g7hk5t8t7r8mqpekrhphttm7k2tgvfp3tq8g9crj", - "orchard_ua1": "uregtest16s9p2wgz5fx3d0a9cn5lrervtp4ax6xsey0umynqhnpuphhml9827727gyy6yrwcqvm389l4hw5m34ph83c8ya58jzm3frleasq738sn", - "orchard_ua_aux": "uregtest18ukzh947qqgvxke6gwjjjxx43vacm9a6sxkmjgr4s837ry3gp4qv4xj6f5tury6dye8r83xum4vysc6ujw27kjlpjkrej0dxxg9smtsg", - "sapling_addr0": "zregtestsapling1cxqx6jlngx0a6lakm5qjz7pxr9wkf0uq532cfvtny0dw2ts3zdq2zglme0kjkf9u62truflckke", - "sapling_addr1": "zregtestsapling14pt9c4gwf7pq8mk5tzp2e9gnxn9j324zz2zpckedwtx59vxvgqtygggkd5z4w2pttaaqq40yrly", - "orchard_addr0": "uregtest16s9p2wgz5fx3d0a9cn5lrervtp4ax6xsey0umynqhnpuphhml9827727gyy6yrwcqvm389l4hw5m34ph83c8ya58jzm3frleasq738sn", - "orchard_addr1": "uregtest1hg0vpsvvvsaynkwz7zpwpj2rmcmw2h4ez238j3d8pu0kv9qxf9t5yrrz56yp0pxn7s3ztzgq92kdzrnj6s4q7qc92d92fwlvacqqn6w9", - "_orchard_aux_addr": "uregtest18ukzh947qqgvxke6gwjjjxx43vacm9a6sxkmjgr4s837ry3gp4qv4xj6f5tury6dye8r83xum4vysc6ujw27kjlpjkrej0dxxg9smtsg", - "t_to_sapling_txid": "baf959f54e67cd881eaee54cf0bcd1e5d3c96cba006e7ffacd881b3fd0698fc4", - "t_to_sapling_height": 201, - "t_to_orchard_txid": "1ab0cc4fed1586ed8f90d88575dfcf761967cffe0d9d85d7bd413f3a66f37b15", - "t_to_orchard_height": 205, - "sapling_to_sapling_txid": "3dd8152bfa046fe8cc61c3ee18aa899a0dd20202dcc223c589e37068638be743", - "sapling_to_sapling_height": 204, - "orchard_to_orchard_txid": "568c10845023f4165b41f7780116107376cf0c832fea530721fd60f96da15109", - "orchard_to_orchard_height": 206, - "sapling_to_orchard_txid": "e61e603ab39271f6bfcb9784cf54e05caa6a6765cc78dd2e9be64e2740610cf1", - "sapling_to_orchard_height": 203, - "orchard_to_sapling_txid": "c24331c2281a9875da25050d1d4acea35370d1a07f87407eaf99345e4c14fb79", - "orchard_to_sapling_height": 207, - "sapling_to_t_txid": "1d4e877a5853c37985fed8368a31d7a60d7d254743df09c360c53cfe0c5dbc20", - "sapling_to_t_height": 208, - "orchard_to_t_txid": "37e340059d2934c9f30742bf9aa0e7f047309abd6f81a1d0d8c8c7f4a8370a91", - "orchard_to_t_height": 209, - "cache_version": 7 -} \ No newline at end of file diff --git a/qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz deleted file mode 100644 index 743fc8e27d15ed04e7e3ee59a52cbab9ed4a9aca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 144942 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 z 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 as+kf2`;q<&17YwzKyyj&s{;-v5Bvwl<)0k@ diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json b/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json deleted file mode 100644 index 97b8409e3..000000000 --- a/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "taddr": "tmUtDKtdCpW9JK6qCnF7V3HGT17tNMw5N44", - "sapling_ua0": "zregtestsapling1cxqx6jlngx0a6lakm5qjz7pxr9wkf0uq532cfvtny0dw2ts3zdq2zglme0kjkf9u62truflckke", - "sapling_ua_aux": "zregtestsapling1v8g56j8emgfhtwuwgffa6sarj4rp9gkg4q4g7hk5t8t7r8mqpekrhphttm7k2tgvfp3tq8g9crj", - "orchard_ua1": "uregtest16s9p2wgz5fx3d0a9cn5lrervtp4ax6xsey0umynqhnpuphhml9827727gyy6yrwcqvm389l4hw5m34ph83c8ya58jzm3frleasq738sn", - "orchard_ua_aux": "uregtest18ukzh947qqgvxke6gwjjjxx43vacm9a6sxkmjgr4s837ry3gp4qv4xj6f5tury6dye8r83xum4vysc6ujw27kjlpjkrej0dxxg9smtsg", - "sapling_addr0": "zregtestsapling1cxqx6jlngx0a6lakm5qjz7pxr9wkf0uq532cfvtny0dw2ts3zdq2zglme0kjkf9u62truflckke", - "sapling_addr1": "zregtestsapling14pt9c4gwf7pq8mk5tzp2e9gnxn9j324zz2zpckedwtx59vxvgqtygggkd5z4w2pttaaqq40yrly", - "orchard_addr0": "uregtest16s9p2wgz5fx3d0a9cn5lrervtp4ax6xsey0umynqhnpuphhml9827727gyy6yrwcqvm389l4hw5m34ph83c8ya58jzm3frleasq738sn", - "orchard_addr1": "uregtest1hg0vpsvvvsaynkwz7zpwpj2rmcmw2h4ez238j3d8pu0kv9qxf9t5yrrz56yp0pxn7s3ztzgq92kdzrnj6s4q7qc92d92fwlvacqqn6w9", - "_orchard_aux_addr": "uregtest18ukzh947qqgvxke6gwjjjxx43vacm9a6sxkmjgr4s837ry3gp4qv4xj6f5tury6dye8r83xum4vysc6ujw27kjlpjkrej0dxxg9smtsg", - "t_to_sapling_txid": "baf959f54e67cd881eaee54cf0bcd1e5d3c96cba006e7ffacd881b3fd0698fc4", - "t_to_sapling_height": 201, - "t_to_orchard_txid": null, - "t_to_orchard_height": null, - "sapling_to_sapling_txid": null, - "sapling_to_sapling_height": null, - "orchard_to_orchard_txid": null, - "orchard_to_orchard_height": null, - "sapling_to_orchard_txid": null, - "sapling_to_orchard_height": null, - "orchard_to_sapling_txid": null, - "orchard_to_sapling_height": null, - "sapling_to_t_txid": null, - "sapling_to_t_height": null, - "orchard_to_t_txid": null, - "orchard_to_t_height": null, - "cache_version": 7 -} \ No newline at end of file diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz deleted file mode 100644 index 0c70b07764f60c92f8d9f35e98b9d01474ce8f75..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 213815 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 z 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 diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz deleted file mode 100644 index 1eb5888132dae487c350371a6654c0fa2cfc8ca6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 179777 zcmV)aK&rnViwFpID(Yzh|9WF#b7*8SUvqR}bY(7dVR8WM+;vo(-IgHy!rk3nf)@_K zA-G#`cXxM(gy0?^XmAe+?hxF92X_l@!6x+gCb#EfdYWN%-?e7$`}~p0B9JP6b@mdU}j}z`}O#1{sV!`OaNlGf9CwR(>HYf-+kYI_V53f zUJQT7|G(q^zmNYMtPHGdtQ?#i9Dm3Ef1&vAU~KAS?C8Y!-!=cA9RJzbf6aepb|#j; z%Wz)p`|0^fBF39_}{Jn|5N>s z^-9E?CeZ`=YRjK{Lcpj004i&_s+?91b;R|zrFZ47WJe|jUMRQ`J?xuVv^`~SCi51O``NO*a1!(_FAOyP? z>+DJ=k0MlNbG8zh3_=(w&^bVz3?ZZ4m+K7%m1G#?@ zx0=Q08aPZrZIEBD*e{rvG5ksI1egK{$iMjsGz(BXd=bZ`5PeK+0a0cxgxFMayW5OO z>ezT&t}CqMKNzYwe<6(%*QD%ppC^Cr+b$bfbvNZ{>r4EgPqCtJNnI9fUj|+>lJh27 z;8dj7z+Y+ieVk-qGp688%lN00k2_SET6wiWaVYH{-z+$Dl7nZuFO4Bc%mp@ohZ2nt zI)^77R|@pC{tF2n;4si-G^G=h?36L-MtkXfL%myxE8?rDCyUJ^})JGLX`9fiOCVqC+H?RMfMx zBJRM=p=NZlUAcrHa-R&WM*`cD+H9atO(R@st8YU>Jjt9CsyM9}-iP51Yp-zgvFRoT zp`SFW#sunpn>$;1iD~l}5Eh^bQ9cS@St9HQTBu@%1kcvpPSbatRs`i-3&HbWKu{85 zG1;fuJa?R)IxJ!}+!s5fDqFV@7#LA2tn8*UV1wORpC18%KN(2*xj;!k!S@j&zO-l8 zw}GgrhF{_uZ|cYC);YTFz0S2=Um)NF?IeD$-?9|s77AaqJkjAZgAn21mIe@0?E2$Q zt+W$$Vihszb8i(b(L20IuZ664mVedT|C5LxPYz`%A&>Mo5Iz9keN7gR-95}iN7B*C zt1ph$%R*C6ow45LLk;#r97>7;=61lAeuFs)X^AH*mb>P2+4fGjaD1^Xrb~n;np>q? z{0Io*$v`U41-f#+bxLY5NH986MQ4VE?J7x`9UXfw_NscA{7|EY7L?@;s(3~8nv&87 zV!rP7bZ%|Ydq;qtWY}2Ndl-S#oVU)3RQi2#Suv;_{m$r|HqJTi^==3CK_K?dsjo`E zFk}A)f&magGOX=7vY)7dQIH>&sLZ~EY3|?PP!RH@l_}mlK z?HYjeqi=NCr?$|A!8CWimOn1=;t>$!lYvy93&c%sF$Clg6crBUg?f*Iua4swXIG+~ zY)=~g0SDU_WvSryvqyw@x6IVmDSrU;)Krl}RQhzSc0GvYK0=^?b$#{S3Yhi1Y zTRQLrBuH0|uJ&H}Y*0H;%q|>Wc8b;unkzUV#5rzdR6He07Xv{yY!Y@PFuj?ouwp!F zQS!}3ligbE&~`$nJFOV4Rd#F;-Y?op^|#HQzkwtGC)(+Nz+*OnZ%CA;q4U5``}!x| z?D_i{=6TdI56e7jK?)PoNRlwBsNoFBu>YGPsPa%d@oo!i1L!a4{YFHQn(>c-V4n=6 z@mwJP_ZjcAmq#sPgcg!pXpUU$M(IEx+d^4@-_^-E=+rl7V~hXmyG4rIjn9c9X2K%i0c z6U?mbz6q4FSzJ}^#_E1h8e{xI^Eg`jG<34Atj9&PVUK{|pA4k+Tp$GV5B@*ekR3`q zt<3Zy$mmWJ$xIr15c4+t`l`{EYry!|LY)+X;!jx=74MRoIN3kESr*@sJU(^D`=0b_ z@s+W*lJVIvTT|U}@rVy=Rf|fLJQlY1o6URKFyD`!v<8{Bf0lVVrd$u{u&;FS4Cx$e z4*Btla=5{M*wV~O4fxRy`=GX!`RSYbz%q#TfZdA7ufE{$d_y$tScPqBh_})g%bQ0! zk4F%~lYz9K3-rz+D?^$gqw%P~mQ72p0XHmH0?^mv{PD|jK}TtGKeYPLD0%v-|CX2r zT9H1z7uq~a*VhG^VoQk6VH`A9`I|>=4Hdj^_K{$5W`U-jgwXW!3Yz%(_L(MY->*0J zV=CEj;H#Wz4oqc=ieqCJzL`FMU1oVLa4ZleX+i&% zIdoe4?sfBeYEdILC9$X{i?34B()w?pR{#NHN?nHS)FFw>tB}uDbMIUf7a0@h5pF-T z`%eA>V#rpOuZ@>&a~Ee~zdsXwr!XfWL)^?xMCsgTb(pD`=4z_n_6P{+$w0c#1yXr+ zA;}H9Y=(AiCxpO~U~pY{#{Y@CNA>7_Q&g!12;NVJc%-oQLQRm!hG1dU3Yqg%#fqS#DScxwwa!bGBwOn+VC5Q5}<-WCwgDB z1HYjGwqgqWOa&r3RUKP@p)Kp)Z}1BUS|+I20g|ck0<(ASCm4hJM_shqxzW*HdJth% zJ&M@PTh#HcM?lC=2GaXK1;YIc=oKLZM#qVc@KrQ4sRMRq4U0aODciTwox@hZGD zS_jhz`N<*x6qUaRtxf#qIs5degyf>bn44Axyk z*Rf?fv=tZy`KDsXe$cH1;=K#ngql zt1+8!c)EF%pB44y#D`^v4^etWl*7L?g}vQb?c66!470iuV(b-yJ&e|BGTPTSJER%B zn~9HvP@gV@`dpzeW~!#}R&1_{+cr!LsH=#kLpwcS-{3DT-Aui(V>dxPFpCZyx{OE+ zsErqTuf%B-xp*>v)?YTl$Fyo1JH{)rDU&{1X?BDSs*yG6!WetrZ|Ps z4&nJFgtf28{o3UxBLl0XX8P%gcUu!>eR>RPh6c_uP?jQ2xZYyF^pOzy(}mEVD@3tK z5Q6dkW}fVh7?GIG7ZzB(e2FdkgEk$-Bi@C63%t{0f7y9$^PbqP-=tGAsbFiF=1$IA z#!4!fr1-L80|7C<85CPlJiYqI$^|icU4;}RA|F)&FD@M!IaFwTwZLy7Nx;_-%*pSRa8qg|AGEu=+3@Y{0GhP!#;Cn`L@!S$Pd z#7dY{?$^Q7oah9Ja?Lt?Svi`-lSP=@w94lOT5?8JBx#TR^PT$E0Ri#Hz&BCOc4fIxMBSTT^dsqf(|FhnVFoY>6-FR2 zi|%1NuhZ#|%Yc8EJ)j)Uw45Y7l$k!KlS^NGB!u~NA zVW6=z3|H%leM0FhIf@qrCF{{wv%#oe{1j;zmFtB4+G*q)MJfC|cP#!@yObIMJ*NMP z*`!DhrPip0&kQN9Gz^F&G_mTg9ZwevXDTUC{BI#9z)YP{D5A!`rMLtN+u6NTExCxt z5>R9LU?I5%?_sg0(B!j=*eW(dCWg8+v})^^N1s860j2LlJ0r1l%veJwFzI|Gg!ObG ztmg_@77Ls#oqmFSnK$)5K;78;oo?%i*-!SZ3eT$Os#$(mp5rBAp32}jCUtJ^(oA&m zDz(d#kdXaxMkDyy=**S2D^Yl{vP}~@VovH)kaPL)#!_%i3CWqYvmHP7)yVTdafl2s z<_NJ@R8DVDkZ$^KI1ROu-4yCCDYyaU)V-R!Dg;8USj{6L?57K1KUauIPL4_I69$%*T z9vFyvt+8)#-%qQRIzf&p-ITyZP)9n-`S(>*y6<(JLB^2deWKnH14WQXTW$jXEd&bim=VNmxpWU^*@)8jR<`xYNh=7Xd@I;$M1(W`O9-;C zgJh+p^IM;4{Zu3tFR67irTWI_E+2`yIX*e_@3}jnDVvXkaGoxN^IRbx(*^cWf#y4s zCExlDI~ih937Mwac4-bAV#SwbCh8DzJ(7Ys$O6~72;%9fXZuY^Wgj|eE_V$gEzeJ8 z&U_TPL>V{Js*3&KU8-qf@I1S$4S&|}*5DEdzbt~Mk_aOcu@53znS&9d|7(MubMEZ7bnbzBLoMa*XaMir^IGU9+FLSM* zrTplT5bo23aGxtA@UD8GNj-xH*$bu&5pjI-CBaDP*Eg?TvpBvtFC9aH|MB5cJdLnh zCQ@ygL=K3WD>=!*{zJudCNf+=6A>ZOj!Hcs`bUoK@vJucCGseif`xI!7884)vjCq{ z-AaYvjl-Wk_4~48{#r*kxRL_QcfBZGLORCw#CcyzNrZ-_ntuu5pef6fiWVy56K0fq ze7DtV3ZYFwtgGSuix=H0 z5bco?k5mTUw56`GbaIDX76LEK`h#7R{rfb#kWNQDo*0;H|s`gt59Dsh3 z!8TCu>Th`KUy(%2l<}HeyH;XEOFWflrTU?|=z#vxU)i`-u@1(RM?wTo7b1AB(1EK?9NWEtJ#0BapN6{S4~Vkth3VHyv=xNu2^(>R zpz-?znpIQ^@;V_2X-$N2f_rzL+gkMm6lpn|-PYe90hbkBmS(#5agP999Mrim&izz9 zCYnLmv!LcKuEi~w^}mHk0fGs|h`Z^j#6j}F$~5i~r{%fgLC=;O7fL3Bg@;I;IahwP`o&-?`G$2saU&Ae7d`+KAk)agvp8?|S=4i16t`gwGY)_VD~5gD@{M&c;8i zMu;KTpq2BMdrF?x@xHC>V-+eCo{vXz{oE;}-0+6#CsU}5t*0Nui-KY%pF1JL^k-|4|IaI7kDM= z_^?kpfbD)2X2X(3xsSQMBnnE{o&?8Rlwj*}+~>0*Jtkh@x7@;_?z-OBTzoxW>>K0h z_?Hj_;3wJbX0q>qWV8K*Z}>)E{xzl^qstSsdc956Z0rx#f!-df>Ko8FGE66 zM)Ed%A0Bp$z*h^UQt3U-&!j`}BL5b&g(%iICM_hMPQR$lyOb8e@lPDegftK@V0DFh z_2VcWY(h@;@P109-&|*Zr&8%54uR;5D^w9hk6R<|5MU@8;%o+^OTK1_dmCPzhrT}~ z8}A8XZTCos^yxyR&lT!Bdp#KXHL!Z0rd?~RUQ{=*;99C9v|o4W{)Z%b5gOFNHxyTn z7%r?j!H@}Np(NbsZJ$_dHwFK8t1f}LikOK52vBW!kx{U;>@44eK5h!_1!`_tZ$ezM zG!1O49~FC!fA&K;cUsBNR1`FYW@c@&ZMz}Y-GK$tjGgFI1N3|kLhl9@V}w7xtV5k& zuim1|?zaPdJ3ge$zCzH$e2UU%q?*8J^hk*8=|W`B6*}Q^uiBT8M{qhCoiB$(!ScMH zjJ<9~AS)>4IN&VZ0wd$UQ;(G#*_etgaPHd&PUFkz#H4`kyePM^aQRp)vZ;RZ`2bbh z&e1s1H<4>@9OG;FjC%)V#|deK6SjIiXVY&XAb>lxx{Wy8bos?}pfC>Pa#MfEM&B`>cT>lND8fE0RD z8_=7nYfvqpYA0vmkr2hxg(#jYbox~u7RL7Y3>IBQThE&*4i)38cDOrV`CPKIwON=n zgl~g1!6q@r`I;710ZxBOig)?;EcyPIuQ*4i$ES=gJYghtzOc!VW;{ilI|DB%X}HN=Pk~^xKr9PrLalj@pE(H-5H9GfHCOfKGdmUO{($r zZEOAegd1YfFZ0hOR*I*?3- z6Uy~{Ro+TKvTs%$v1^#*zt$NJ8wYkNmimISIoE_~o*jQW!LDI8@WUOm9HkUS2iKdS zQ>MwYkk^(>#`R?}Q#`?G+6@}VLTKsJ+$bdG7b0h7Qci!ejxD4R8AOa%-}P@M6{KXD zLRxcSST?IzP4ydF;~ugO!=w>GO}nEE0`}c`4CZs08**Soes;@(a4qGBk(bj+i2GiT zgs7e_MD<*u*hmohjl$*qRMo|cjn+hWTiyfi+o+oCh8utcb>>&Ve0XAPGzioZGgQ4r zi(UdlG7`-Yd6SZf(Y)}RDz)ZV$8!T3ajduQ_Rc1zi05A`9Wu$OVPPOFqJuoq6-+o~xh zG0c`UixMr?cQH!7qjbz2Et)(MqJFv%^|SXw406M*+osO&bqu%)taGDbOhZXpZg)h; zk?)!i5riSf#`IIb^M)f2KALUUs~go$BG(Cp?g@X#L zelH!QAfJ52n(x~*LNbvPG!E>+KZMqBg&h|9u^kCn2jWy_Q-c5+@pwvNMVE;Fn8^=9 zimnUtWAeczq*_C0Jw_CpOM#2K8Eg z$EGe@7s9xAZ+nJ8Jp3rZ@kHSS@vaNbPkSo<8{s#W3G4*c1x|m?q}9wB9D_9HUUt-c zsR-@1mZ030yZ_j_#$i}X68I3QDF6-z2`Yg$tPS$z!MqMwNPyjL<|Uf|^+19QM6b?Z z#k`qELNreoqIs@R5!oT53^tT~*}j}mvY!9fPz=5x&B53p?yqQH?hD~yPc-P(dR0Bl zUpZe~dmI?f+X+VQb`r+x_ManpDy+hD9ynJcvJj6Ucy-*p!$cb{DaPz=@P8F}a4|Q7 zqfBoy>+~nL5AHZEYQ7@AB+z{q*~SR!3CdhOq{!u*1TtOu&_NB~0*U?MTK3?YNKR?k zA!zS@gK%Qwvq&kuFrtv``@~6G4eQ6bJ?+zlXrC*T7~WI1{i*c8>kCKhCi;aW&gW|f z^nnUCRIHudpcw(^GrKoBer~R%2V;Pw!jfRl2C6C12wEnHrdx$(F#fK7IyH78jNsgF zrQj3CYs}EmAS$`dhDrc4lwzpahOYRjQ}Bt-XgA-ZSh z_H4&dm7CQ+1#_X{Lj5>Msy*Li*^w|*^&4g(4Yxpmcy;#!rVQ&boW%EEB7bmi0UJTY z<2hhxr8AC3qcyLd(zZW#t#+5MV6~{KgQcF*csJyC)p3<>v#y!ux5jDE@mmND@XmsC z6)$ufk={BXEZ1z!XFyimK(qnnZ+PU=(?^Lu5~6>)5dCw7VyJuHVOSWEiB7yky-gf!a*TJ4Bl*~JZ6p{NH}tg? z?52@=qYewsm($ONeE7~lpS_5W*8my#vkjP7hA1ncxM#q13C`6e^690rzIUS}(57mL zmE~fHLza1JQ31$;?EI(8JO`o!zg>ZzZ&}~ogwYkqQ=~PXJ7p=mF0&^4n`_XsKA&GGo8;aeu$R`b1Xg=07tk!9Kg>FnepFle`= z3n4X=x9Xdy5ug%RT(tg5>C$gKDCnS?DQfE{%)fhSI#~$78swpUk>BEVbC4~+m-m@+ z{?p?blX4kW4+r@<^mVJ>IpK$w^oW;VaN?y(?Di(#{t`ku;axA6C>KCebtiu?Up)n`A%oxmizOK~b#Y@2{M z(7YWPY_^9RlZAf+$bh@BI`T@}pU`K+0`~{Hpr#;121V|bXd%&5lL}1}1$+B-0mMyd@yo!oqLXoxB z3(A1&d*g~+>ABiMP7K0@9a(o*onDN{tWxbM!|@=QFC|fvtuB8FVF1c{MvrTYCEPTn z8@~72&5}}aAvzQ#07aZTc>5o!uv{tWpixdus(3U=Dbs_2aa&k1>ldJmyyglNOzL&< zw!X#R9|LM+eTF%pCY<`}Y!#KdGa1Dc^Fzli<# zi4}Ma8rX2;COKvc=3a&Am^qC9IURJ9sQB|mavVJ%OqRp5xBT>j&qqZPMC0``-f7zA z4zZY#>WUle6Y&kb6Eyccbtz4X#Yo2YTrPhq`7T+zYMLnSgVNQX3Q`=R)| z=!WSgz^11vux97A+ z$(PZon^5AL45tPYn>GaZ+hAW z9f{!47KM+sF%J_QVq5r)n}_90!3aY9(-tEK$MTheMaXMwC4Xx2mC3UY;iey|ZY%m| z6bj>6%_hX%f%GEA%PxOfVfjt14zpkNzK1mh;g^txPDSAt*#beve^^epxKg~Fy5;3B zAvATVm!y>^QD;;o(lf{Y{Zi!^xvEh!lM&aSv39HoPlaRpZ5|16Jza?FxkAa`$=HeT z)CfoAzTMNw=2Yu$bPk*ssJc#pbaoF}O2S&hh6%ZqJ8IwjXrvrNB^--O3;cM7$g9_z zf(w=;sAx7BV{&-X0b6`Wt?ijLu`h6t^wC_iGKK^mTJQUwdjpUia-*acp(CX=NG zq9UH1$3bF#`BA@2w7zVYq0^KBSz89 zyv#Dm{w;(FsEv}Gi&B8c5&U>e@v33I+6V$Qx((;em%Bj^{fDfBh_D`7nP0dUw@_}Y z8lzWJ4YL4lTmLOa3N{UEIsVCa_vXhPRxh6}^zykv$J4UfJ6i-6acS?+l<(xY3M*`} z%)k(Mz}=nKH5N_4LfFf7R6M@C+RGBG=urc;NUiVV46=p%)>>L%a>)Hdft(+%se!+T zDAK>;mB>f#cM@%DgIGurM*u<3#RU1lRM$V}_MufOZ9;}K8q;ielAv1wv_vhrTc~f| zF2dqo={&4uxDNay9^$}s%t;B0&io0f4j9Up3#h5i7dbE4cT+{2$~@B^3GqB#i09d7 z9fmA-$qu_%0P`LBf&3H2Q(H9{HW?x6NM9I;g5gX!Su5#5cS@Z>=<5KPm~;ZYGC+2N zWIgC>wh@+6+4M#aa&v9bX`(O0GT|=kV$xC_qh_3WrJtC{bMP+%GFNacehX0m4uYUx z3^|)r_skDVlV*fk;A{l8D)jIo>ZrFroJs@C{glV=f@!+JmO4Etn}=WSq03?+RO3PS z<6^I$X>=LCA$$C(1>UC%@jh1w>T+%P=;t_a-bNPvzCWK8k%=wIX~*x)%)P`X38O_Q zI3_EGrd)_@YiJh=>X$!3?os(HFBy=SV9G1As5Pqy0@&0M9dQZ|Rpo%<)TBt$R;2aQ z4&aw+BTd1Zt_Q8BZhyv5ffzan^C$WfCD)CE;zH}{TLdSUo$3R=7E_F*hyEel2>P*R z3Y!+pS2z`GJ55=5Fasjo#CeryI4JxQURYGPmXVKy_?|Ar_gtaz+{z^k{Y@I9$Yx6B z#*1SREJS3@3xxuFOiTKs_XdcBwx8}-uj&|yhurLclxCf}(uXf;?zSM@kiV1z*Xv4d zb(WFaso?lDHkN4o39Rt$-KUnN^Tpmkh4h$nAk>=~w?8{Z*mYHgFKSj@2_0r>yRI}E zUv*SlK#Wz@b;ANlV&E9rFQ{LN(PU(DBI-_=*;4yjoP67M<^AYa$?N> zZy_Q;dZr8$;n7m2A18wre3ZFocpYv5$_Yv7eb>_J!z@cmc5jE7PF#kmpsW$;ho}pI zQ7zNbTSmA@K&T!F89gDWUwI@X@N^-8=L&_#)x84N1m-Dc$wgh2~6_#xD@S~g3 zDeJD(eTX5q1yEx{vQurfi!JgWV~D5PcZ`z+_YhXNJaM&4;ap+sZk4dN;!SV`uhc5Z+0ht>Ld?jZ zHv9FIkYDzetM!79pDH1Kq0N`JyjUBRg{NQHgI&7VLkANq z-#!hRqp(7%^FsfMV!gMLrT%a#txTn1H-$d|2Uqizb4bkLL9)`$!5&tp$AWG`?+hJ_S_B%Lrs+ zzL;HhwEsag)joH99hD^j>{wsv7sT(xs&N04bx3x&zMY}q)3HTbvVu3W-7>REkEXq` z;ha_y2znSpWg0)639^DSX*}hqI~)_a(y{rqUD~fx=BOCOWRRVzs?7Z#35h&iNaVRf zd{sO|H22i5sl1egf-H{o9P>XHZ5V5Zd$LC_}q5(|y>J z>|zfxnDEuuOS|^YwW{J4UxJ#m)>!IxD&Ui^(0p6i5RQt=UU2DTN$rBjbpKPQb~i3R zX_BYEfOmSwDZmzWXk4@j89x?klfJI=?UxYYvd-{I$o4!tNfQT;ftL_W1eJbtk&04p z+%aqEFk%fZfyvDyp;u2Adi7kPtlAgv9bLZaUVb9Am{EgI);8GnWu_qRZ6i+=8C0x< zNcRhJaYWNi$(N*93qHEF)eCHvALm>(kfE2)3TP{7Oi(Lnub3;@3Jb>=;kX6`A-`=n zl_ITA_^~%stFJpDwf3)SAr!S+4y@LZVL>5`C`F?%Hy%w^dy}=hrt} z__i(a^21meGO$Q_FIu!S2&a*9~iDrC?V&Ba6V$)ZWO-?CA3>WT>i&>OVeF z6nnam*mH%Fa!mm1R3WQF@JvVnGIn0zWs&FgMUwmAp7YRGQ#dfq1r;iY4$JQ`8-Rmm zhKf2@_{mTUV+IOgbm-9vFotZyVec)agf3!pfB1w?l8!IqyFuN*(90F$xI}gn6&Vr! zEyM>fXqV~398)`DFmZMVD{5zt<+$52@OIGQ=`|#HI1Ms-D{WLwz?O=@_v$U{I+rg1 zik=X=-3P;6L~sJbE~IB1Wc!hj_|t{NpIymUe64%^-C)ntU#30n%N=R&;A?uKR-5TY z8=;;V#x=OS6)%tRc@QuA*sl@LsR<>Fm8Sq?-AVtPN4Dr|eF6~A- z)poek!GVnzLQ6>(V5#d74cHj&f3gm4GI`G0QuFRZn=7)2ezX->3K}#+URkCJuf5p^ zA!5Vtqif5dBk*TLF4Z*%lG7Mul{11xBGC(2-Uz%~qL4YwkAx(iE+p|>p_%j)Pz;9( zxsPA6Pg|TsD@m(GYEEKJfZBuH6BlE3@Yn%NK7A@e1z7KTabENmQCwO4aAr%)j3e;r z@O?J|3Kl+LS?3Im--?z=f66ZtO~)yC*=$fVypfZPD4>FT66^7o5Evlq(tbUEfj9DQ z9lI1CnLF-er_cnxo<8iz31$7EKE%DkVL-|2ZHpOO)})ZmPSHcTj2}gj*$y#8gJHf% z*}p#U_!D@NPZyGWc6UtGN^L9}37_{N-W(G4VD{*xGpX;YwjP0Ms0`RuEkvXcMFpH* zmG%bDqK%PK2Gq-h4v?>%1ZxHsUX(-)BoGHT`kt|FyHLU(nS5qIe;^Xwv}Qn;k_yYG zaCnvya9Dc$*$)kfFE~`teqx`$cSm@Ajh8`cZbPUZ>m33T7pnbB2ySm`K1Q+S1AR09kG-$NxzBkon z(G#j{hxax4Y7>IAr#Pk1~gX$~LSRRFu>}nC4yd_7TVS z4oS6s2!&(BdY?0}$|YXoRLD$l)dbqd6w~MNXSL6dW`vRvLhr0C%&R$e_{vjl1`MS% zEC~WYhCXyyL6t_#>hJF`;<51_{G_?-&sssV2$6L}=vN=+E@oL&ZK1_D8;Y9=8n?XyvfEI4#0?NgbV<{c4`;4hO;ZR4cq1`?jQN`(U7lX(7@RBYXVm(jylkeXW2u@A8b_Tm%k=U94HqiezGM?$hs7m|Ihkj7NL;+8he%j?ko z@z0vfj!t1e+7nzdLjis@;*$_(h|KS?L1>%HDT37L?C*&&(q3%o-@H81%)XxC1!@Rz z*{h!UTdgXUWks$TQblu#O9t8ABw@xO%iobmYcN#Og4HJF9>)_D8Lu(Ql0IHA?m`W$p-!tw?B=jD7Amp6+z=Mr}5MU7E)d=^@$ zeUA8>sreR8+Run#Gg8?d_HFDA9Xu&&nfzIs(D|LOjor0TJtt#AMT0ow!dyJi8D;Oo zCDlFuj3LO<`1TU#^B_H6o&vzIy#sg<9WGB#6m8uC?$W~;f;&>r$0&#Rio^?p?I4R` z{sY)g*P<-tO-mwkvV5ALjgc4oNJ#$aLh{eJYYot4^S)jNkAWyS~xF#=x~eZfK?Behf$0_w&## zk&XZzoJhz)u{s~Md$Et#fv=rH{eKGy1I9ghR1!Loo81=V{C99z?)0gPe0imqXhA}B zBOlH>&g4ca)6{|;Fh9@{F@uA^9^xU!my^u8I4_ZWOr~R=G&_xYB&6_kA%*7(b;pn0 zIB|^v0+|luRgiFqRBxypWy_n&_akBFx4%!ofEX%*IvKuI@Qt*#swg3M8fUb5cRqDUt)T#t0|uQQFDZK zWamCE_QT=OBO%473n@NVD4kybUMQ)g^5YjH1a3Jfxx#NmX{lZ>A*J{ymWD=|A-JUk zLyv}3gr~D6vmtTJk4%Ho$~=UpoegOY+$ZSYMwyH0a~GS_OT`EnecP7o+uB;d7QYu* z4jH>Uk*0CsLHjL)4QRXyVR#(_7vv~<>_PSGB}IHm7^c`=6Wa(@eYhh5ijVT`a>m5R z4z!;(jSvHp1d?>>Qrl}XHfd>+YA*b&Kl|Dq*Qu4BE~NDAZsBHGrRdcXHw7?6@>7)4 z&MElJ;}VR$%JspfpH>?;i01hB?gGF{>L?&J1hs1=J*`WaXH5%YC(M%7i@SFj>GE{U zw@kw+SApBe2U^_(y{^(RjcuJeu8ymHmP`|C;=hI10gRTbkto)5JIZVJR77!|#>rEo zdjSn!FBBx2m>%}j>{-s0{)MHHu;+S7u@}vT-bkzO5T`Na{C5fPl9E-NnhB5}2`N8a zNcp)!8N{D@=B|2MiDvb6AO(s}q`tD!FopwX#EnGvg*q3@J~)?D;1z zQ;k#8fDtw6Fc!QO2&Vf0$*C;djSpBD*!5T$Wcgw=^hcsN*^A zZJpG6A26HDu20&tuah4MsXSds<+(ztx3YL-rM{}wwDEy%j^K0$?t($3*^Kq^E_3#Vh+W6I1S2) zN=5nB%(#h4y!tZRCf%MC33t`W02fD02*X*GH9J1|v-l$+)u#)oK6?zAZP`r69#&PT zB~T~^5JK8&=U)BvAC4E*Ku3uRX8K%nvC^C!mE*9!{g&*^c%?A+# z(MF)Kg`IQDCTSnQC!&o4Ef@JcQH>Eh6QbP4F*?PgB)%JZ{aNjcvgXj^+oj*v8MlJZ z-X|qM1so=)#;Lh)(#ky4hoFTDy^k8bJx5^Q2=#-M;$T){B@emB#y4KfQ(ul}bdc{r zv_2Ag{dA$%&lO5(p8Od7HfIPo-A8Kn$3m5>J>WzF=uS7K@;#@Z9|8pVE+7a5Ic2YQ z0h7eITL%{gKc|3N^+WFuoG(Mz^>*?K7q~HkJPrzY-uK_{9I*^^=63KhA=G%}-Dvb1E%KRPwf=*+!LzWvJBFdF}QQ+N02(VIp2t z9EkycQh)P1pCkB}=;BTv;_|QYh-_{mGu7~KDMfXfWboA^OE=$NWemv=@dWx-Bm5R( z0EnG1up41jcO`xPu*Dk|2F}f_hae+|Fo$;nFZwWsP_cacC3nlWkw&I%0#e+{vY`<$ z58O_CPbNRF?*R7Z)&WsZjWOfiYJzVJXTd}OnX&MU?Qm`r0pCWY^5T&z z$9@<3R&4!~B8CEH)p<^SuRl9RkKz1x#7J{W9lmBFT(b@pFP1HV)h5g3Rj%@65BJg| z9H`!g;72#Kk z7t})=D?fxm;{F0bXr&pTn6OxU{9Ydfh;dXUGihl=vIW<&WaPhu*vx-I&_&2KqR;a( zTvLAuN|Xp~ZZi@b2R8!mLS(_VZn&O6dkSU)`{SBnNCO+0_n&Uz_u2e+Y>OCBKnYl3 zsEy7zDdz9r_g0nN-$153oG5}UM$=)`wE5c+Fip+Qy56n2A}VygG{VE!1X0x^pAO5% z4VHN%r1f+mt!LM%tx}Qq-**x%wX0U;nMS)I+owg&v3Ge)GH(%|K;R)7H}Tddb-Z-H zTwS+SfWEF%W3`1h1#>xbgi1=4@nc^%3-THf{jg3ZibAxKKhSM%P&L9HF5rI{s(VVX zTKT>Hw~!WKF3FBkA{50^L@%Z+&!+#Js-xC=NZIBnNbUyx-)`QGh)Vlfad8wvD#}N} zkSQG(V#~O(A`Ql8UR?pFT3oCdjq{O^_S1#5pDVRxNkez3)L9LM*S17Z z9_fDP>F-2^&xCRCV7hK0lbO)eSt) z&sj(aq?a}2exE$L#-?9Viwgsy&`}g=vJ>e4P=4C}A&3{|9IP*j;xQFO0vjZQG5lMvZMY zX_Llm+}O5lHBDpNR%6>}jK=?+J?<;}!8#At$vepSjI8;a^UIg0;qu*hp;)a(kGBpy z2!w8F-pqObF88f%mTFo{DAq0*udP|p3;O|&SD_@xAEdDSExio0IT!wcz0EgJhr=Jx zA|W<7sM#XuC|kG80JA|~fEW7mULmyub+AwmVmzT@2cs*tZ>y*{3(o^vGHhC!$vWna z8i;q5pazY^2Tt1E1|IIgYGVUB6F!rm(2ZVsccB&^?cXTywTn7i8aMt>+IAx>i$|sjE60U)s`h)9{@roZ#<4KGXCh zL#@L59CKCT%Bcv5r16qyZsPR_!YKb5K~B;9et_-P8&G+?eapsEb1DPkHn_uz=||yc9AdIdR`n0|huGK0z8xp_1q)9M4L+~0j;rV~HLP5zX@Xj+WZz-$ zb3U9&YGRQOEk#+pGRdBSTQRK!073@93mLpuXpxSOi97mynxS9!K<`L1qGO#`NY+~5 z@DkE?Lmc@hBzIKWqkxHIbfS>-QOy>;(B%4Y=hkxQ<~Zk+7+b8&ljd>X{o=r+%7Mz2 zdGRox=lt*?f(Vh;!<0@ccOw5y_kThdAnPX5EoNR(U{G>u7mNdwOXMI?gzS zK1mNPe0UreS&$epe(APCnXVE~gtMfb&V7kQY(9S`VZmiufYj{Y0N+K`n3|`WVz%kV zw8p}MorS8xqa1Hd95^m-_FpUHRZqYg&$6zZ?o2Kez+UkO5ohX8{!fStB>sP1CEptk zEWcH0KkEJt6O#Mg{}LzO+!}<3*6=?<1SWF9+lKOKkzB=}osFnQciM^3am!=j#`VXk zJ67g``!^c__bC|yFJ$;$A=d$lpGt$7QH){W0+oG5sZ3NW3v?x{83<8%cTY^E_Iw2nhoE5qLPo#~8NF91V%5&Uf-&e@`Bzkm4#Q1L zqKmfrNgAmYzbI2~kjXO;SabDy z?DuC(g)SYSPH+*@#cZs_E+OUNz&5n0>ibu%{u4q0*)!?b%{olOlcD5=&QL|F>Oh1H zuzdcIS9#~@{<=xPWfEIB?TEaE^hfKL=?E8wG1z}9vBKga@Yt9}<@{5wE_s;%LdL)g z8NXL3sKt%DJ&o&I@Bjkouc;n;4h_<6E2|AAmNkkxcGD0Tv(Mm?t7N6F_vzZ+nzOuM z;-7H#+gf9z@cHUBkqdv4?3Imt_N!DZ&5=fn+Xg#zH;HRvGx62EA0Qb^>U0t2@qDZF z#93a8SjMj2HxhEsw-5RDJLKr+-H!=Bp|xVcsK43c|N6-ut9IE|j^?K`C=$RVFamjG^7)c4-Zz4IcoiJ6%gXQF9De@M3y;DPF z`lT1|$@^@ha^jcsAl4PTz_Ua32$QmXJXGaL`Do;If(y7wz!Z2P)AtI^B$h`E=o9K0 zg?w!UBfrg6j(+4%GECI(L6ngtyP!wpwu!VE@w-@D$vGz@>s>oq*2>%;)SXx0Y_Y(s z`aSQZ4AOZCy}7XrH6Y|=hr;pApMtUZSj6#A62gj&~Or{qH)UgLVY?cX*VamBesrw}G< zTO$A=GvI~H-YdlW?6M2lxSff*OToJqoXK`X(r=CKcM%^RAhT%3pq-OR9Q8o?+Ce zMAi`hC&UM`W}l~8kX6BiK`a&oyGxI!TN((eK|-Y59u@mqVMW1Dsd9PB+Ze)GU|fUo zBBF2mkxLW5eiv;xL8t}|m;GJGfYq=0ze(+nasKGv6sHqO&v^mG~YzFU{2asVL<;Ds#SD`eaF zNz>0^`n1-+6M7CiniXW;B+u)o>jVRS!hZ0FW#}UZcY^pNmLk@pGMXyKFv;YE9ZJb6 zkD7#*BL#@R=GaS~p) z-7fa*hg3>m03l1@g)HAI)S9JRnU(2!jMeZZ@Erf_tOQRHJ!dKNa~;OkeAI|6n1tte z32UYDguy`+c0}kFTZ)kR>X#twQ})QIFg|19?X)y{CKTFyQ*9|+pbkf z6{1(+uF=U59KhgI`fG=Z8YZcIp0k99d9ngH_0$S@A**-y+yA;w-ro?d6qNRNjF=)O z1?wU~2;pftf=Gc}7BlCDs6k-k!aQSCXF11g8@VQ%j;eu9*({nj)|?eaP9N~dPNbo| zcOP<=E~ZC!qJWFefjb^-U`2oc4_LcBt*H#U^nQ!vThyS7{UD;K=COFd;wlbsgIj|g z^q!BY0)f3Qd;OJl&NgaLSnH}0G?cU%~9&03z7UB*_4`n2_4+Ags!mXY7lh%k_Nzhx8) zL+VecV3J=}erz|j*?1`kB%I_!5UR_01pEH){<~Dv(VQ9Y%}Zi&voBn7_QTHv<|tDt z)VKC+TvRnWqH3!$fSaUkfETiPuh6*UAhObrmUZC;kVO|8$Wl$gan;3^eoa|{=8kf` z@33cC9$?}D0gt*pcyuP=vxt2!2_@pL)!daV;&B|oxr}WGtiSW0%R1x~?-%Kl5)O(^ zb?bdM0+f%;QCh4K$r0OYAsqm3~B$7-!x52JKeJZ4^iBV#}Xs45X$?l7B;PFH9{>-4MIK^G;-m~ zCG2_a_SZCtUB!(1nBvz8D}$9wkiQX-d$2qRiJcspwVc?lp}2LQ#txPkZ#OQx$9PGV z0EBFT7qWe?5Y{+NbW)Q_64T2M(`btB48~uCSJTa9(TxJcTt+1?P%XD+THCG50yUHN zQ9i!BR(D&o$#>JW!BSgjWiyp4U6Yn=szf;y0XIM3bm(~aqn~JXxrX9LPA9s*qmo*S z)_K1zQFP@mWF16&sjfqK7{Q8BbT5Ku#}Z^4-ZW+%VtTFp_!8p!-4Mel4jK(~6WmM8 z1`2s?sr`mS+U+Z*?Ns`fNu(5D^urE#A-neqiRce6J8J#DK_*#sXKJYMP9T%Wu*}lg zvmb%Q?RfqR22$S%$;b%axIzn$^rJ2{rGHxK@z?#)L|?i(;v9QRs?JR_#ZYND%9j}? zfB7i!q8z-eIOi%&r-;b>BJV`{pK(y3%w z>;(2Ih^Q$`T2idD&DAZp(ApA6`;q7}Z7K(=dYz^N%9kzl)(FKlpZ_NW4I=lk@25NO zS5rd?AY}{iRnxlQu0S$#2mChmK(Nd%pTw(>z&nD{n#}9 zEmSTu!F=Q6XWDMpa77G*q9(+64W&WY4}&rBB>FWT(Q9z;y69;h^D%d|P}nN}4mtn`IRP)^ z^j;zCBx4hwL_T)tZN)Q81}oRN^`{(FNkU$~kN&lfI1^z1J|ST_@qTuq+o+A)_!49s z?t$0DL@_1yqo2KbO8OjQGs$%E$ zY@;q=$c3TDR7a}?2>?RQzzaFQy8};(-&R2BBLt}Ik*qYrn$WCQblHy&>q9rWw^`r` zV^CQ!f(9%{87jPKm&Ha(x7Z(3(46rYlKdaJ1q-FJ2fF6aMQrCd)+Eyw2MQ8O;ym1L za_t$Ww-5c%S>O^k+BAILZj52>+1pE>F|Coli6?s#lQ=%0EG7OmiwQpdi7xnhQcIIx zZiaJMIH6b_yI&>pAx|-8Mzm;S$=@~bex*%<(j6TJ+;{r}c%dKf-p*AhAht&B>>T$u z`^QcsbN-I7>}r`;V%6Ck-&0%=HH z`EHO7Q#?2Qzo~_owRtGBa>3-HP)s~Nh}=icP&vak<^-R&ul;6WqkbvrFN2)8f&A`I z%_b74TETdt;HbeygRg7bp^+EnnO!ll7g02%?tN{rL6_lcr9#OlnY)hoHgK!?5wj+wqJJVW8>G}=&yCOq5OM`x$o1WIjDG~?>uF@g%kd6;FtcD!*`Ssx&pR{`<>@%pb1tu9@5WK>>hvKMKVXvHius|sne`L)`BUq2r(U0v z6GU;3fZwfZrZ^zvq)l)aCNXU`B1vl3~9I_%q;wmIAwZg(HZb-?*_b(+k1uN{P^&D zkEn9Id5f@B>f3mQweAtqTDW0s8NgUCO0Gx!AcDLsxH)gu4R8CS33esq*^B?NFaRQiWVa(V0Ll6isNjWAy5qy{m z@%U^~y(QVmv?R^(-3DpflacB9j?gNg!?>mx0n>-Bo)uC(S%fPEZ5!h!yzO^G_AsK{+Grz=?gUs2uNKop zSNcUqxZj?P7j4wYV~_o18--ej@CEC1ovD%uoOSz|sAB2pcV(U=pjst?CI1P*fm9x; za@Z?=M&frs4_ykNIEQWjc%XMz^z0(X5Bplj_~947a9(BaHylaRG!Y`q#zYEdl%`aZ z66khD#;6-DM-|&803k2ng}na%6~h02LR{?{f5KNQZzKL8eTpjXh-O3f|9PmLKUDDC z(9sSn0S6Y8Tb@X!@bBU}zl@Y&34I;& zwMyO($^HY`fLj%D<*4xjjEUcykTt8Rp|l>$&N!S0=Mzo{zp1%V{^|xr-D*^ z8}#!BuB?(IBM#PmO^&fz))U^tgW<%!k9)Lq9)_HVSa>YZmS=HU%nRv)5Uq9U~Qj9 zn8uut0UT@L13Zz>yNSS8{!*bHHNywO^qU;Ns7cikK5d6}%c|4SE+`1zL7*dsD1c!_{%~`{?qT!X6M54&V?#PYnNN>J z_$qJssT$4i?W}%OQ6GGuBqUMna5==YUa1{j)Sih<;WK?IPtALcP9GUz9u`w}x7Kbhc7<&KniF)Wq=7>D%*p2+vzMAiIORd(Mw!(GjeFV)jWn;)<5 z+AY1o;RA{DXeY2PU@GtR&~Fm3dFA$bexWBYVKssW7#rE|hcD;x*h9z`+vP{)qg?)( zAYD^&lBC?eOOdu&Dwr!03tu&iTvJ8 zgw~C_2D37sk~-#jtAY}g%v%$gR0y~6n95IWn#G9#ne2G5?L>ph@W>Z=tmXdPca7yW z>2_-~dkx!#VvInTA>SyHR+18!By4jC@zYa4qX`6mAgMyd;H=hIgg&Mp|GsbfvZnmJ>!uW_4Q8V#kvUXuxRudEvf($ z*Z$S9=>3jD_SeiL54$8zP*fP_!*@hfqm|4`Ul5y85$}(=k4{bql4Djn_2_0L3ObCC z%sc(j0Ig^}*G37E@*fc!$g~8Qx+aBmihp2oXn!Zvwg~4Qv6)=qr$rB}``1rCHZtKE ztYc#$v}}N&CRTaC1rmcPy9t8XR2<5Vo}Iq18Vq17X8`a-0q-X2UN4M;9|k{8=&_So z)2%zuC4p_0g|vd9+c-WiqW+6Cf8FF1!*AGxUY^lM&gb*}B&cNHGcw41v#5&p?*<$X z1bDQWv~ek|yQ9P-Q*b~~9)c+;jgzdv#_UfW6e^=||NlpX2U4Djm*LJ0v!YKK>!SQ< z6OKDVcsufi2x-FS@BjSC6!`k`NNg`iX3k9XCh2~N8=#p4(^Qv9F9t@&gokclwm+%+ z0M^I^0#6k9ZlY*E+A!_D`4Z$yx+x3$C5KVXMcz=ZeUCGErz@u!K}aGY_~4j*&rt+; z`uyo0duBHJpJRq0BI7p33Vjysp={+eH@BB@()LA!6&4;~ zt9||7nmHT)=Q!cpS=nER*3|neji^V--tB0ah%L&T*4*zOtxJWiG>E>MVZYyzD)wvVMG-7CNFx{r)C zp)Mk|jKHH`n5a#FnU2AAduoyytik_n9$E@9t&}cwV!0%aOTgb6C7Ejb-xtzxBVHB) zDW|U;!MUlE%2(F`e7Li}IUU{FLnhF?{udku6YD{~s8aNxp>B-1$bRS!&%7?q}UdcS8kTE;im zyyuj!+O1a#n{@)0e~plfSA6CJ)j{Yf-s!?ur))8fUuo6Hr8<~BvGacm#~MDbT5?ah zK(4QfW+B5U5_qC3U)yc0w1ij#2^fA6R@JHSg_J}e(cj0~rz zaz6JHo!OEd7`NGHUduYZ0Q0OUlu@8Bb*d(TL4uKBGC@nnv7@$i*1d~7^XcNO!9m(q zHU#w~nYBUQ^?$n;DLf{qKdl%WrC2i(;zlf*1fk*n?6EN`fINSC-Qx}wmB11MDu(hT zCpfcKP>_&Rjp>q#1(BQSJV~W}$}P&d6tM_E6bd|1=(~xoa8t2-<*Nsi)!o}!d$y59 z?6<$k_BL;JH{pp*KDdMQ%f)iaXrt1Mj$!?6*waIj_y3gF_>FyM*8 z-c59C;WcnJ)e>e^s1ReChenFs7W2pK2VzD#%TLVX#8V`RrhZQZ>WJSwZRg^v$hQv^ z83FN97c2V&j6Io8(QeKoQfALD=&2_M5i+n*f_QRJh7q%Z;Lt<5X8Vv1ApR)2oGA6ift|uW{ zxVc-skN>o<+jLN{Z8+eq-0Bm?ca(hg{y$eb?39CuT4P2BKS&1LCKtB8f9-p{Iv&rp zqtqaX3!_nsyHK!S?0G}}HlLYTlydySzFYs)LvQ>27=S1Oc%q1R6Z!8d(62nWDiENa z9JC;tv*E`LcXQ++a?HEop&`ALgMrOaAZNNDK2$Mi2LHk6WwR`mMZgCA6XJH;J%kV0 z+L0hzqX=0cZ+E7S+bfW;{2e0)BB|>dw&~|M9f(rHYTW-3Ew`y}i{&mKMA>5{SITFq zNwF#$Oet??#m4ehzsB`bG9SPRo`mxlmq^{J{R`EWkuu`gzz99_k_hLbhuASzY5M_) zB7rB0d^Ztn%9Enl_)oq_f_Oys3$sdh0z+=si2DjGQ-R~MAF7}~!pZyteGsaDrR6V> z2^w!?FDpc`EOM3^ZcOG5{e#3#Sk4z;DVqU^qJSrgdN)xhv(=wt6ZJrHC&$jgM0qOn^iqM#LAmXm zPvl7fMT6oE3$a*Mp zg1dYFCTDsq-;~7WM&LG8A@ZRMc*}icx==&N|HKjK?wau)SEpULSzS3SRZjRgzhIR6 zdKM+q6ADcUM0LS;N8&4Ke2uEaImK0wfXq}7q_RF}n=}hWP68l`2A(MT-9*}A1mhu# zERdS(DXM~wXt`3OI{Fqgo$0(WSQJhp`e!WDUvIR4w|h~+pRb`Xl!D=W zOHym;?HG8Azs=S?l1^^5={Cz>|BL48J*(3Pznr4d3|Xs{%rf;M>KdjAM;}sm6I*3+ zQ8?3v{sSP20iG!4-9$kjFt|D|e3col=DXK7wC=)ehSY=Ua6o*`pkCxE9YMmYO#CJ5 z2eE!!b5#ZfsmHIOW8W``9vswx!n26VB~)!b)8c$Hq%PM`zbEfwtTxpj{c0eo3uekW zbc8Eqg0LU>)^WD>8!uEL$lePl%%jJ5+bJTP8D$Og*Y5>4ZDsb?vxqZ_;X=WcjewpX z!-DJ~Fm4`tI}bCV|K!UWObCJPtO7%IE&x$1@Iv>Ki8M{!*55ZZ&<8|j499iPF-UbBg!P$96W-hLG}8O&HLJ)!J?bT=TS~sy};k> za<|Q(UBKVHn1?g+{n$l2ttheVEnruc%crF<*(|w+mt=Gzr$Fc=Ml0axg9&__9@mDo z#!FZIG?_Q}pg=$bM@wR6L*qV0LJdY1nDKfRO_2+NQjU?1adQ5V#){V+)*&|=$xs>b zuso;TT~WT?{qhNLV^=)zMDgz?qOwk{i6hS<=&9$Ep4iG_zbN2bj-XDMikUR)zHnGa zAlmI7jkE#xPC_y1l_5YEie=<%{>>A2&M|Jw}lT) zzlw{`IA8O^t5+RWW?*8cm~QUFqb_JdLZ7aM_Q2Gfh}|6g>H781`O@IQJ@r|nAd%9c z!0ZF}I2~WfrxeMp*!BGrv15bawV;b9a^af_RF`unw*QE5L0Ia{h`)j5nOC&egghjK ziZqs%vV$tirP|`7GQQ>+?_tvnTbos`pf}5&rZ7`>Od)?now4-zp+B-8NvaEIp9WdI*pQFDHM~QYlpkmCvA&ajfDSkc(T-~lrIXiXapS{N8U}k@RVHA|~72ptpG-hyu4b{Y|?cgq4gU82lUB>k$_4p*VkIp~qVN zekB@|KmH#2BWD}SjB4?$Yc_J6Z<_k zRY-YX;tW8P0z6U5yNTRR^3C^BjlQE9`3q`rh}T*lxqhdd^1k#*@i^c+9){S@*?RHk zqbyL;p=@F)!_B^gjD~=Hi7VYNn^r}c#u$yp;+<99r^}Uvpu@kJJB;I9ygD!@o=#CK z{Z}ZCY)2FH7IhTlvBbh?BiL=!&}S9YLQO2xrk^*;AT*dHcm*CPCo zIXdQNyn_F!V%+yzAJ`NmIT*v9r@yPySZiRn_(`z^^!EttpZU-e;XK|aZH9+N0)Z=h zmc`Hy(f0F`caF}o9}8C1-1iwc1yr%JJL`hpKKkdUUKMdGDPrP+l11_l4FW=G>{J-C zL#TRPcdsjj;3%eJH^&Em&12^N_6lg5$Y4R7NaD7W`ndyvY=}1I(AKKf1wfPrJW<-a zi4vjUX4Jie*%Yw}Y{pzZ4ElxRgb7-&9a!>ZW4qXQLUVrE2%!-EQ>ul}-MG)%9~&OV zy`>daoKc!VN&5*(fe*zhs-ryKt?ufg1tQ#WO~Jbzvhr95f_G=~thz)9QXuH6z0Zmp80?!yil{(0$L0@Vg>S>8xc zkznM~^EFM=zmT^&)ke{^#j6eRKSqc||I#G<9vYp&t2(Q*P##x6**;tpK2{n(?3nF0 z7ProJStHsgTIJ+3{~wVwNX))|uEy_|vLbQzk~;p4kD3GiDzh`KwMsK(uY>k**FqfX zRYhDZgeNdo0_bVmYv_J0DFy7MFi_flH?*_^p$gA~%!{RS-6#_MeXibwm!H z7o^NizGZ&-nEdH$7c4}HjCec)qMt4ttcngvhq1jp=cckQPkUR4jDxGbpvlS99N-+e zOyG$!-%a!aMRXmxIY_=Z_oIz0;^aYdK`nT1uHnbS()4p2MKPj*Ok}#BJ&d;}&0~5L zvh{|rgRZ+wNTH+=x(8+15hJz1$X{iJ@Ya(VY$p}9{wge+C5lY!)sCnKEps1odHRds zw>O&FrzM>6mMLK(IQQl4s&0QbtH>mK>WxVIJD>g6ADS5Cna_;F@FyyYWvw4|1`k z#$vzt@R|)AF)(Tg8dUB4TbTcdKtWU|mxDoA8Sx{Kn(>=kL!>=6gqUgt(<#)xiw@l z$rKODVif##ySAW_;qmAV$}<2d@rEAygHZ@ut5V%N?;5r({QA-diz#XN#>s#d3InYe zvW28BM}r}6QoUzOKmw`R4c-JFHEP$!?dJ+AtQRy94oAoWc8k@S`zd7ePI3K%uig08t+BM0xKf zQtn}{iOa=^QXR4gtai?vAmufUwZIJ@g^}pO{a9lSbMLGy8~qjLaePnvKyE};rpCIE zggdFD=4GV}%w}fjPoaIw2n6ozhq-^hko5!(ojC7XOw+n>z0)Twk-bTchC<%vej-f= zM_Mwo%LNQ1zKlME5|y@ORh(T`4|KZ)c>WI&&fmdD@QfwDhfhtrX}xH%1qsAhrEQp2 zo%K;5@FBF~07Ut~6Xm~~XdD%n)?bJ2F-$ev54A1{sRrG8S^FmQ%=Ss=-#Eu3 zH0d^@SR?q4@8-r@e;uZdyB7?V^$#Y{LcABenvuIE2%}9jDCgUDjj?)~5KFKc9dygD zG*>h^D5B3u%6@x)&kcD?SntK;noPx2D7BVUWg~QvoajOMGH7Sl?Uah6yp|M$3NCU^ zte`9WWaHFxQWKc)!Gh*3h$qdSL%xRTlX{sVJC_3-eNg~BQNjDmLD5s&DtybY`b4D_ z=@?HJj<6ojbfxM2)1PhR`oG>mS%#7ue%p^dp;uM9hFxO)bWE?3cCKYY44S-^TK-Us z(aWKN)PWtiI%HPwWi1ymXoi86QKxy&l2HB-7GV;}{vQz`h?BMM0eHf65!Q`jZw(AY zLHh<|1Ri5lenOG!>--c{tdUqY&VvmUS~A&xYEz&|edO6vM~3k{E+PD-hfhYve29QG z#f88V6~3DYH0Rm1=N#*oy)w zJ>>1Ume4vH;;#tt`}9?VaAXmC2!|dbDfM%C6X$m~wb$dCyVpHttLA84RPf?i)UoUI z3@kfVfSDc3)`BJ1tj>@q^rZrTs0etXqIVNDnGuR?>yCb(IViWK)#LuuWDJi|c^hk9 zIxk;sTe1kI+0j`}i^w*TtGgu}oHsO>%F41`(N?Ej-|q_xGJ5y#>!##pE2Ujq&XFVq z)g;snG>AG&87g$6j>7WTRo=IhkhkNS81*W!ga8fFV;x}x!wU0EuvNSxq-tgUu}t%I zR~{^1KdupiNAelrRj8l@dsp)UT#vGh#D^@O6RbGdG>mSB9DD$xpTHCSeE%EGQqL2^ z|CeMSbXbti{pa%^8|_9=htFj#MN}S5$)|{mJI(~PX@4Yp{*{2x>$^7L(%tf5(ZV}R zE|_VSsn<67?;LhhO|AKe3SHLA6U2fD(QU86G&gjZGr;spyYn80yk%pFtaa(oi>{3y zxOB;|V(lJdz@fD(JS`;go@!oGjnJ9MU-AlKLH)!F;|>qiEbJe!e+J%CT(tEM6ZH=N zwNvSi0L-Hm15Z@^ZXzPLEQ5CC7)^QNr`#Wbp7Z3hi6X@7My2#~w`fF_4Txdwy_iO2 zDUlI`^VxjE-`C5j6$(7N@AT9Z8;TxSHv0p)$Pxd@pP<_DNI1B1{f6ux)(W;11R;EM zIaOq{$&wCz3x?dTac%Lzz^*Ar`6xn%ir&lnOFsW(&C$iSDSDkU1I4=%A8plA?aS>b zZ$%fiXWIp@5cta$r0-J{`R{QjhyX|qz$DQx;E8^{n}`eLC6KB))o|=!9%QH#{ETT- zipGOdC@pK3lEn}13ZgJBOP!q!8E&)etF1ZXR<(&#J%LoD`R_sMURuLhqq3o1-i-be zN6;$w^OmX#Djb$$+>@W~wDx$|xv1)%NEC6Y26fT#p`qLTNA z_v>z>;Ym5z6#~_ZA7yZcnOpxkZAGXT@IsiTbKOM1<^FX-)K?jNDvc-gEIu2nuA#@x z9+>cu;rDbkacAAQ)L7vO?ATh=+GX?yC` z2Wx}AB%4y|C7?xn1cYi=+H-=GYhoRCqPtNr+oExSy5VphlgRx1{lT1SDF+;07{4AQ zywOlZ1O+b7HCT#~BJQX4Su-8^39@s1U9#0xw`o;==-Y9fwkb~w*EYtEOHbILaUNB; zqvjrs`aspGEz+m``q5V(Z^Pj1L-dwh$xXi*iHzIB;X+~b)hKj1C)n1Au0lL_0|y`~ z1D>et{r4gRu!lPp}*5i@g&a?5g3a(8@9ipp5H~if4gheOa?VUW!GdqHYAzl~y z7BAXRio~Cwuh`dl$ZoepduGqep66wxqa~9}>3nVa1j9$rQcS1SNP=PA6jUxR&PhQM z{C$@P9uPW$ z%OOtY!3)8xAE-WuXD#3MaE8{pz;^%4BZUy{p)(pm=#8gA>OfbOm@hQ8MonZ%9@YEM z@HCnFd0p^YlU_Mp*@;_~!anRRNwjWax)+wgaz%$t22O74CvSSCj4_5uO=Irh75JL4 ze%#Z5l4pFXK&~jsN&s3Y?`+)sA<&c z?4mPXGDiE-UFP;8LG#p3-Xnpd@TZv^>&`B|vegguS&6C&GPXJ>ucN*2$xF zRH!7)=sd!$K#;hbe36D2cs+{*N8xR8(bf*62h-Gzem$k&P)vpV6Dcaky=S>p#WV7o zL{$SIssx^>^4&yV<~@@_kS4{g;*8*n=C|-u_EwJOOwjha=?#ms%=W+choR7& zb^ih#ObcDz2X*S&w52fz1L#Ak8$6uD-ulsC;i?n}iA6(mN`uC!7B%lPYX{fANpuFV zaM1mF{h@u*)PrzPi{oapIdZQa=KWZSDU?@>itIa*Yg^A3WWsv@2G ztA2bcye`9mEm~^sEKV#AV+){w9f&Jqrh5_dune%RMmF9#J87v|J4=GVN2$sD?tih& zccnvR7eEHRex&e!XHmD!_lw1o+rlOr4vlVIHP{Ca;}Z(V=9p%ru-74uFxG+MLQftF z)TqP9NxS8>3qvRs)a{={BfC?W%~^1J{W4>=0f=gWC#ronQS3EUXBaGuJ9kt+55tz# zlDu&hl{Ois#ML${88-C^SmQxtf>i-hL~P@EeOfwb9IR7|KO?va^9^%s>jgzy11|SSOtO*%Egg z4Q5~x86Cw>==A}TARYS$Rkw(q8b8`r#632w4W=UCI-Vhf&yi1~-jjN+DFN_yT?af- z-Mfh#gs9g$GvPR$cFq2Z6TOfox^{xW*sJ|&yR>~!dxfyp})W?3&V88rOBo=M{m93d>4mVjI_53RqWkYR}=3W zH~PO76#*3$=_&%!m0p92fb`x8NRt|RZ~0+Ex`^}==^dn(0FmB%CxjkaAfbg2(l+~f z0sDBbXE6sk%0cF{?wPsQK6Tx?1nK_dCiRyvJg=($N1j zIZd`rG=*gc4@AEoTEAD9{Y~b1*>-A$Xq;nW+I8njPG%|9O3_Y;I7n+6x1DkD5CZ}2 zthxUF5|lxUuZu(YapFSG$9jqX`0G1U_sc|31K9g)Ey?K|sa7E4P4Ii$r-an+4qI<$ zE*hU4ZXczIXq&L1PgOc7`qA7SFto$}_&%6F=4}T2{con#5_K`92bg1x*A5yVFv1U2 zs0<|0_4{9MQ?1Eet&bf(rez@Pcd@s?B2?`MfaMb-pSwK`w?fB779*C@b_Q* z5CZOg)8he|Yd)}Bos2g-s~4HP$zvsRKQxY>^xkk`cfGjv9+L8Rz!xD$^-p0=2}%Ae zyFIWIukS@`tUg$Sy{T$%(9Ro&v!B^VE`zW8Xat>m_Y=)V=U!>$8dUZl7O-fIuDt~r z8?Z?yO}%0omXTUqav}7o6%h?sKL{#5<&3ny+24r01%@Y5Q%5yY0j7PlAnofv90SaBk&yUf7n14aYYmm$Y#lbNp^^er{z;-3d4VwO!QALYkcwHgZMoie~w-QgO@ zfrEzenWsGmr%c-YM{J<`r7@p>4)x3V8mykOc-#b6Z(BxeuU-!f%Dhki*Y(lo?mMW( zJge#{S>xbV%Z=AjiH&RP#t$^F{74Jqb_$ia&ncQ>QSJ8bW_|iM+Wiyb9Hie z3{ol2Iz9m>w_CoH$#UZ6Qn={1Dx^Ea{yf~{;APIbc>eUU=+o_sUVrLzC94QY0tt6~ z$~Yf8k)3PQ3-%ZEc#nM~VW$Tq``;b?LLK5fa_~Sg!K;`_H>ycTx&z_(0@EINk&PzkvfBiz00@_y(qr&#vu_p0`B(NQ}hVK0gyFzt5i$ ztzH=jT9@?_`>aW*Y3V=~9qHw%7m+Eku4vB%#--HHRwuF-1u0_MHp&%<#}5S*3V{qh zFLdWQeughzdFpf{s|bsDuYN4S+!XlvD)!Z?L}xau2k*3T5>kIr9%uJJ&y>Sp^&%y; z#IXOVeqj%#Yd=b||CRo34Zm&GZNZl}BsYXckewJU*Y1$pO__U*X*A(<^=CH=9Qze= z%I-~D=ofHA1KAD@PY*!0cfwD6E4R)$MAqWfn63kvAL(tsLMyRt#La@(pH8Jj1K+a0 zt;>c!>MhCuI%0n2iF|t5>{z(lf25+?*jfawDzVJmXz>0l!lFHG={Y&ZcVF?FHB+0ODRd>Vlr`FJDN&v$|z)TYop z(_16UQ4>t#Ooc*;3)>6soy-F9?vutVu>0UQFZvAbANu-aXbvB_UDf$vD4G1Do2$f6 zxGDk=_{3hTqBs3ppg_CoHwo_7TjBMUpHdq4ta7Q} zOkHex2?V}RHOVRSHH0=r-Y>Mclg^KIKv1Wc2jykq_Xo+pw~W6=7E1UkafWS+H*7;i zXKo_}h`hnd*#HvrJVXuJ5-t@dvRA!O+E}6(y=ok<`ZBjExiac5rSkObU2kgKcM{g5 z%gl&_wqd_58L8Cp&h9K9-w^)w_M@NlwdQVrHzwv|XHQqNqIz!c{Lp!4!n1x;^+$gW z!~4RGri>5K5ufTsm0IREn|1zG^w6$ENH1x;Cl9yKnlreOyihlKPhyHRK3=aA=W2g3 zz}tG$Sw4*S;Srf3X<2B#IipV_W4BjnNV9~jtuzgOc@=JcJn@PwCuWGmY?|*NpsL|~}dfO+T z)!gaO*KY}iJ-v3_FMP$do%N>Q=j$}j-i&?xg2-G9IxUu#V)w*tZ58j1ww@bJmr_vW z7MQ>)+2ij~-wa8VhxSt;&r@F{K0 zWpYh!dRs!sE<1-QbaB3oM3b?mA&EB0>TKNScy2#zzevTqcJbF~#0fujhkv=>GIgiO zReiq?r|Dko%p5wDRoWn!MM4Lv0`s+uWV~ga4~}o}C{S8==P<@;k};S)f5Xb7#jMe` zm-=!}y@opAMpkzY6aR)FaOk)xOP^%+YEoqsr;P4J)TPLB{Q}by@y(-OI9O;^(@1$e zjfl&j_FCWagMIu~#3`{iLV7B)w$%Ve+bJ<}M?el2c*t8g$-Tq^8dxj3-xeIuLK;$h zeZ-BJT>VhCaEua9O(6o4>!>y%l1;Xlz>dFdzx2@Z5?zPCS*w-E#sot(+{a;@3xrYn zeNr5KKC4bcP;OGWe1NaDUb&=EJq)g0vhY{n8ISN3trMOU*_X?4eLu#+df{unfzc>5 zeGPf`p_I8tR>wVbsui|)3)FzZqOM92+@LLug!(HOIs~~au(~E!#(>YWez$6w*DkYh zGyJ{+Ov~`q$uc;ovAQ(4v(XubA-gJ1y++-9tm%z})3_;#?$<-X$B*sF3vrk}_%_}~ ztckr!C+81}`Hq-bat=89agZSr!LBbo{6&qLI}vbn;udjAI(|~;ePuFo8m zvJ0v#)h+uKyQ(v_me|5>VPnN^`Qz}zS+6@`AwI$#Qw0V%AwV0y=*-;Tei`tbUa2vO zS3$^E3BBL6p#dp^YO<@0tz{tkbu zciYD3;T=KswvA7}qaRhyXwmQI{)aKz?VQPouvYOuk~RpP6ZYPXd`F-3m96je-04e{jiFKu zQ%io=YUd4Vd-g;Q@1?w3g{PZQiOvc`oqWISNm7*0$_!p{(%99b281%{^pi>5e~OsT zdZOwFDv%DEW=($vQ_y*1;Z|kLQu2)9GLM zvN^$PD^+s(7%0$Mv)X}K&qAFXf6Z1jbyNQ>l49%7J6`SS0&2Dk5vymMtk{f~U40jUQ0f#ZvVkCWNPpnGd|V8QR+bpGHS ze90NXDOiMO>zkJjw-90bBpJ>DGG(!`o0u*?$KHxyY}s^+puM;t!pSiD?r1!iKE$HI z;=9Yfu(-;jT8TeS_>e*PrvRw$o3G7u3AB=bk9XGFuISyAWfENtZu0mtp-*gVN1H`7 zhZ@v};&Y$1t{J3E@0oXOk)rlTWgOoS;e|ak=B&jgxm95SXfdgbqR!o#Vqu>WUCCg# zgB0-c%1`O}aQpcB)(XTf3Ewe(jf+MrzD0ZJx}AjPOVjdykkZ(3-`Y$BQiA}gegS1C zYzz~i3}}r-V*hm7;4%&T_Y0za)ix~4b&Pw0qV9bL;g%*^MlkgXVlnTHzyiWf(~HHO zMww-gwb4g^qOT29l#q>bD0n3;GB)yIl}X(PL|RPA0@$12YqmgpRzj%{wX`$WLn}Ds z8E!$7Zo3`Me(4=R@-p-Ipq#g2mn>z^%|DXGz{FFN2!e+)jg!goM|3;A^IlZ2Ab9;w zysrJct}QkR%KUk`m2!`J8@lTgM;nw{)we&~|DcU)^HR;YQ2qHvrZeV{las~+6vxC( zA;=hC=w@h;Wr)Mio#{e@+2r}T*4~yL4xH$GrtEUU>fyvpv(M|$lemEbK{0?&l<1@6 z!U`4{>>mN=YtOOd;NG!zfyZ})W^MXQx)Jn(DJ|e-I<-@a3<-aw&oT@gwBU2(KQqgz zTdhof@G__3sP9_L=GLlZo5`+*De2hrZu81W81wSlS$E)TznEA#4!4monn$DP%1 zgldofy|Jfj)BRz}*HmZcAC4W4Tm!PDB z*|hlC*1ge7AJobzMA}<}_wpExYAFSgTjGvzryl8^R-6U}*8y2cb z{^^7NFyU&0v2*sG>!<1k1A?`;Ks15A%&#}wzniq`$`Z+{$0_%PlnIV2#{_QdeEtXl1F4TTz@1 z^28HEM4Z%xnoT;OI&!H$L5hu6j`EP0j?+2@W*HZ?o&s8nsEq>#Y8#2l*&vVk-Y|)aK}z#H{QRn& zcM2KGn3gxAM3Kx!tf$yPO}oeWqjH6B!kFj1rU$Xg+2W&mb$9V=_y+kKrwFXSLHz6F zL4gX108CB`sXjz5#AW=ni4M1`3sc1hWu7m~dc4?np-2T$|EBB^%w!DFjedd(2}18w zLkt@Cu|^RC)0z*QT??c46;2TXX_b1z29*yO%9pGuHB94tqeGC5u4v!&<$4*!adNDk zxP^mHw#r&qdc&T{*jneI%cBB@46|INNly=YwDIEuoj1D=guL{Ho*?HckS2OrS`v8{ z4tXh6a2gPKcj|8fvN|NeWBVJra|_ciQSu4#4%2HX`M^0i;b`AWX^6Pf&U_etH=;_K ze_}<8N|czdIS8pVT=3c5+cZq@qDgNe7=K>9Mh7VQ4OrGhMaOl9zzMKPR4#+5E%&~_Q3@l|ZJ9I7^fl&TF(`;9PH3*F#2gmD9KW~YC)w)S~ zsC)<1EXKb!G2tx!J_VY)L*`;A#O!#7IQTFBeJ(-}rCV$z1eZ^XJ!nXU9$KAjJFaOs zi;IQA8s1We63b53&Z*;I%nwr56Ko<(!&@7FyP&^0`Z0W!J+s}Zoj^*5%7z%XLYtfo z`Ir3s2;v57*b(=7)Cx6-ut}T7AhBWiTTy5WY-HR2nMl*K+1GaHv$>t$=8yz)nA>^R z`naG)r{eT$Ud>eugkXd1;HMYas4xlI>O&U-1X8QC27trON-_6DRO8_BNr`E4=%aRJ zFH@~HCXD;nurES>XSGWswU|n=;#cyLn`_AaSz96+*}v(<{@9J;K(2cnbrS?O-o;@s zazirpAGSmft?eu&cvNBj;ah@p0RFPT!%ZYC5bSVNzavMrA!H6#Fy7;0h48bxH(T|1 z=6Y4`if@_ZvtB8eC*jxYnz-v6DZQo7GMBh85`j4M7dkVlXyS`~6xzpkkL-yWh)TwY z&a+6&^wk{p1+_3h>gz!Vk81z$Pu3w+l`j2+|&N$_6vP%NjxySLb*9Y=4}* z*c=<;dH1euFx`)c#>R2)As!yRbcN(!*@<(N0+Pp01H4A}7LF&o4BDgI1o$Ltutr8f z0)v+29>%FWRDlAFO>X|9OmLZp>a{-j=7WcN9HJSiEA3F{9W&Z}`PP3wuEe0G(IPIY z-_>^p7|>Nu&5k&GN52jC|6U*OywaQSu+b!7n*0)_#wwH0;D`=YaF$>@$M^ghjl8Zo zPjUBe^A~$u{)4iS`{&uTwNOgxD@yiVv*b24y-Mpvf0Suv5d*hkKl8FCn>kMR|zScxwi zZRj5Mcb+e{Qu$)jW|{UHHJZv5E&ck1H{xh_&{v%4*Wcm6Q|!ELz^LQH(URu3vSnrmf{6`4gVFQX6%|YV2cg6)A){kr|UQ z*fU<{immh5NzBtJ0K~l7$1UO>%*wnfJ~~0#RE!3P3Rs*KoJ!^D4B< z;8kCP2HumLpGRXUTpgc^9~dx?$$AW}C!5ZyF&(N7hq;vsl+@Pg#}C%24mbJx>PHhC zO-~T!EeA*z1wL82C&q1|$ZC*Us43=MYT>e`@dVFlE-*!uJ(Vh4 zKs78WkHe>E>GV^?7ac;Jw6_g)bXJYlGL|^1+@bvKc~<0X!9lw-i;%7A0K>dc3tJsH{oq!N%$Stcyd8H*9N&18T`By^jwRAOe3{2$O|EOD`D80Rj)qSY1r;PkzHJ}h3T6aNE2qbel)kb$iRGsYHD7jCPrIM4 z+8t2iyhV6U(j?zEuIydsXG}X~#k(pc8$S9aU^%gZoHb!nY^Fc)?EOVQpTo^e#O8|7 z5V8Uf%61F5cznSb_PPai^UI&uC57>;pK&$nOZ61(&CXN|=0j%9X4jDlG-))%cA<+U zhJM&g619|Agn-j#>Xii;e~ZT7G*5vLNrS;~u5Puar=WH>`XNCQswz1AmzHH`~J!ekY(l`{g=8`KRz$Kg$@WYJdDT zAzKj_ZRXo_md+ZqFxsZ$>$RA*a}#hkomf9U+<1*H`9spD-TFDGeDIU%z18E4h?!oR zfOFqItorElQ`Uz8zMH)uxNj^xceVzh*Ki$)^4yv5ljAU$GeR~5$LY}_z}2hG-i{o0 zOJ*qb=?HpWyE|#Wo*xlEv$x6704#Y!HXUP3alwt8{Ot=7)S4%R z@AMWbTeR&7MbipyA-Llv_0eD7!7!N}?B8_*K&$*K6KDZDdr`1EXoJ~~fhEm!&19GG zdS){tvqpWQ^r74QYW=*IvT(7~+se%t8ZCT@^6>Aj`$nP;gvGmRnZvq~B_H;AF$ zXLU(h3v5oy+#wT&iAj|Ru$N2Ok3*7kq0_$--&(ke5Kq{X=e78)r$CLa#M`=*;cEFEOQKQ$6skmj25$mtRZK6RzyNAeX znlEfDfdJ91Nn=!}B@2nuW`-a!t2IvojdYnsQ7n8cJ}e~P*3>||Z>_lpM4r}NT_ zdpn(I)OGXa)Ts787h*FA+ak*JP-WhTBi4EP{p(tbd;JbZE(p#Hx1TtTkl?h%WBB+&Kj^OYEnymj zR3E40bWXkP^uv}k76w7E4eSOm#*E^S_S?giA>@^jz1wb)y$&#u_Kt6i&)awN za;*g;%vPW)7j0jt9@sc(Kh|s9?Ke@Xmf+{c^kPT&kf4(so7Y+=^brxgwUs8%o4A4a zCIx!|^EudqzRXtwY1|iDUex-0ewU5uSmER5UeogQ%lgKVDJ2>d5b}UeD|NBy0Sp8D zh>fwcJgKPSa~tt5Cxo6o-#zk{Lwg4=mbx?*$wUE)qz?_(RqJr-l*)Mbv9CK#>@Qk8 zWt`{5+)Tv@hi_t@=Y~pp=Ne8a+UK%KCCL$!`2}Vl$C}{}@zrJ%J{VG&*ZEr!K{s_T z2e;O;em@3g%Jb9V1ZLs8gC2h_=9k(VwjSCYAKFuUmol<=3LbXyh|!aDYlgo?MTmd1 zK>R#)&!GbHQG%-szJIZwfK*O%t*6#tKE1zlJF8mU9TWuxP8KYfJMULwaQyNz9s@te zl!NT;mJy((jP`7-;ZVy@g3b;*ZQ^Y;?Us$Dp7F{I=n}}a`5eDyKHBQj&5aG(FNcJ7 zw0@YsD9*^;9jw|{<{k)an5p=SBx&jkfL(0-&(S6fT5OH3lX;|6hPzr1CQfx1qumzj zjB%UiYX!^K4bD!MB(BAYQykxC(D}K|!sO3Z;Xld!IB$&jhIYh@9Spx}Lff0BLO5N< zS=E~|k>o9i>*BU;KMfgxadGT;rl zGUm^v$ECofz@@;Yz@@;Yz@@;Yz@@;Yz@@;Yz@@;Y!2k6E9c`J)HYD*#nDXY`RIvzE zRZfLxw>5r<@{IHIkI|_z)7XcyrRW>)@yh%B1+s9zNvDlOAQz2v-!2jGTkt2hl#4}1Z2^%xTAn0eg zEv-M=*XMrl^h^8qo6=usVovVfR1=mYQyqADoO-60N_Ohlc6QhDh-rXV7LpS(YLvOG5oA%d9xd z5C|TEr%>pQVdHNy!@hXOM8~93D7~W;d8)$Ltu;I)t{1jSaV5{P+ZGktpRpgqvRC5{ z-6XX~KfD3rU|vKDT_#0Y#U*n0<md$$;TeTNxE4e<#O-S6K^2ENL%8CXgP-C z?b}sLsybHwm%^3%AgcCz?PUq@fS^Wub^peVE(|apR{1(x|IX26EK3xVAs9JtoT6H5{y za$(%Jy1IJz0j1kR?uJCrb+!=41ejW}*VltZ@-GzMLko>N8QwvgKfEHZRs2@I&hk)( zj1jy_L8VhFRd-sreZhZz&Q%Jzk(6z_r|X~505I2Y7{ZCAhiRWles&bSZP9Dlhc(bS zTt?6~uI0GBaE!`%I?s`1w8q8dM&1rC+4x2e`{DShW&Zn>(h2JhX&kiN(RLIZhkVZ zy#5#QO##uSpOoQF1HfC1J@0*YY{}j&??$eKfCjs9&AOl6w8B47%d$SXmw41O@7WY@ ze_HfbhEClHAhp0RTUvNlSibyuh|OqE7Vwm)k82r;YnVn^rf2A6uGlRo?2%^%Y?f@a zXlAx$3r;^aVp>X^N;^A79D^!UP~koaJ}f`y?X_(T0;-2m|8W|GY3U&>&SL;24Im$6 zLK$ISdOC?BByn9nhX;wNk_`z3j`e9OEroYiVhB%|Qw`1*6m@Lj*&JJUsRoGAGic@7 z1C>%4l4fnG)^nlac|4oA=)kyKv&%_!IXt=SpkeM+r}@B}5pTki>`G-bE_@uLJJ+zZ znc;gkm#V;anwp=g{W_6x^(j6WD}B4_L!Tdw3$s`QGpMB|Y&_S=teyB%(MB)|+z_z# z0Pu7gyjtndb9H?wQNW$-lQqa#`^h9*bi-St`Mw~W#hr)J4*Wzj479gT070h&QV z+DY=#c1UVV84uR!e`|`){8=jKGV`hcXk>c@?B4#@<@kv>wA+jzx=|u~-r}P-T5OcW z!Cnj1J=3+Ep4*wOKFUqvpkd0nW=RVM-Jhw@g)7ttB zA|AZIo+U#s2pD-qb2|gcU-PV*cliu;vnuO>XZ0`n+&apA5d7q?6pUWLUwI;S<6<6o zRVO=WaN5ECuhf0PV^-?34O&#S z&XmA{Lt-U*iza%B{LLXG;pVww+%IwMjNcND*(P4i<4|)H9h0-3kf}lK54pHv<4T8n zj~(YJ1|7$L5Nf-ZBe){S!3<`0Ss)+wc%CnPv7xrjx~QM zH%UK^7?%q+rd;KJmM^FwCYGP}0mvTvzbwa+HycK)emANT&n9V1_7w|B$R8Q6(o=g;MqeF7@XvY9JS#?g#6K)JXoGBClbLhqq_ z!OH>e`rijToh_C2Q_reMH}I|TLAiqIaD%%+E@!e_UH)_5Czx?V@~q@NCf_%1QNZ7M zm}`t!(0M}|Y|w8^mf?_UT$WR{J_{tE@>?olhiL0~qCMXlSi>4q_kz&s?skdVJe9RgT9$_6;TrY|AKaHIz~@SR6C zF?j_-0nJM;<#JYwdD`}TNZ(``h9$(Qk46LaXN6xjG09PA(h8CEK0<oUQZ~MNF=Q_`^4N{JaWAzyDKZ=*MtA z-I9EQS4wT+2kZJ@pWn`8uGf@l4gjU68oPCidJXJ*6;-!NG?kjV^7xH1t6L5#K7H4} z7@a0K%m8AAo*L1Ht{I9SIaTf`QX3*LOODZB|HL#lcMftEB-2DU_+jepb}Aj3ui{2W zVt%HcFLVahF8-lg25Dhgc5udSPClKvAZ}^O53UNSVVC~q<}a?SQ{4clzeQiAev1$* z-xTG02NexnWgb&^#jzmin}g$;oAtT0FV9Z_nR-_^lDS6U*IIY0ra8!UhCk_n3Ilmj zq^_3WGU=)C|T)8X-WuUn>{s__23r|~=-db;9y&Q?8j z*xZ6A{`>BuFOw1iYX~(yISY@VFMFM0JOYn+#O;*6yK#-e*z0Dj)1tkn9tafvjBz^^ zbS+7-I%`shANYEs0=4T+gNZlgSt!$-Y= zC2bh>?>z@H^-}UVKKd!5ZBV=OuljX)ond}ZZ1WBr^r5-(=qN%E6T>`xM}f|^q3?nz zZrN9|%zG={JoG23ID~J__WEK+1!s{rrCRZm`;W>q1TM-eDM|vk?Kr3Lt~1Y8a{$%R zEGH8+Vy@LtuBHZiWwbHH{vK5(58s+E<}Zyk0TkSnC}0G8+~uj4vY#dEsu6%dL~E!b z>Xc&vX~3Ka<~D7GP+VnpRH47#Zu+rI|L(EVScbN5ESpc_2MB5AM~6)EsZ%`q}eQg|LM{>8Ni_i}pUg|{A!7Tr@}oA0NZjuYCOz z`zr82@NMR2zJmBW7<-dOwPE!<)1ad4jgH)N7o93*%YJG#IF27EGh{4lkbB>$tH zN7bEJbFw=NXDtE94Z?S!{tjRIXH)3=P0Fw424R}H4n)#s;vA5|W}nEKwT#^IkG|W5 z^Sk|>UkdeC9V_Y#0E$^aSuJrBoPfs73Df@JeSjGVGs(wom*tvom3-95Y4Ru=3fqZ8 z*_Hm5_YY|gLR8bO>dAToN9}r+M1TpB9L`RY?%y(zT%Js5h*GF~4Uo*2*7zpVr7<&l zq9}Z%+>YL*clY~N{)Z>B^5X7oUcO74?BiYLYt-QyW)mq>(+76>zsSnanXEvRZh{wk zjO4Vl-|EjJ|J2zl;Ad&6y?oFxKOsjuM+Z)Bi26?Gt7DCdxRi;FLL6iur3h>&_){JQ z2G~2{Jt1};B5ARadreQJq=V053O92*m)!6c4{=oEOEjl)r-3K_JIENt#BfEVJ`t7- za_Wyq$0u1$eaz6op*EX);~f0nOQaGtYnj;#7GoP92NLT}yLWuH`0c+H)Xi-wFJ@rR z2+Yjg*X~%;_#q9Mx@iriWcXY3!T!O8G1yY^;&b&|ZQB9!YwhuK6F2W?GwO0gEpT#S zZbw3`a-`OE+!Ct7oH7GnXc}OHy*3hOovaNbC`3-N9(p;(}M%)=Y6cwH=~uqrjN z$;Xv!lwjQt4WHp@6$V!`W1W&hP{Nkh76(sShvGa+GU*kg$}K|0nw_#kd9>s^m0Z>k zh4j7{IR^-IhoB0%SWZ6s(?jP8j5Js5qs8Tnh_;i5-h;y3X397FOI!RIeV5-6?Q7fQ za}4-;sV_E~*W{LH|LQ$5OTz~)9)N1TR4Tqq{iXqJqy1y>~k(_>>GI@+DAiv z;|d?cZYB?KcIH@E=)#3jo607X+gkb2%q?+)Pl_1Ss5Zb+hK7w^+kcL*Wh*+_G!V8$ zjASvTB@!GbY857i$IxwvmV(jJeA2re|9b|0Mq0l?PZiWlox~1;HYE)_GC&}N>$CIW zk_4H-4vP?Qf#LbyNnbRX!}fa|qN>j2aO&G_@H5jCqrtPn2Zdi0nW#^=+)l7kK^rN{Gnh_u%?2)7vJ_B@B;hTz0)H=#%~gToW2vtp2fV6+OvH~`OsiY z8hA&jTEEJcXyB6?=yYU1uHYt~)}{2R?f#S}D`T4Y4w3MiPvnSrsw5Ai{4G6ezDW@5 zq57^b`eVdUfcdcpc@rqo&y|qwoWtNh&0-vAXuAf$r-zLu_CQYMP+O!?PVmrhYm*ua zTcuYtbkD>8IAd&)TH@}Kip!|KO;BC+{;tP(2i46A_8i{xJjvfkdpCCJ5;rHCoMgm+ zRsQ-=DJ+PNSTuVq^gc@Bbv$cj!6N%ThfiU0>kr9K7s4vyvx9(l@7UP*A#ZK`fM-+% z9xHOzD!vpg9q%phKdjstUs100YkdF;F@9R~OGRn29m@`g z_fZh$@Eg1-UMmA>A<-|WnI!vKxn{A>xRxahhJP~tdX2awDY{_r+}(H{r=MQHCN~9sdDNEvreVGZFJ0l-MtOiz4Gwk zZw7DScSw7~%_m7vJ%RaO0Sf~z5ecRH35UmYrb7M#wMeIT&<$uJV0cvCB7J7WN&An= zd*yU7!}9?xTwn;wt%$uYYG1@-sc zgY`7<`VFAV&$ixeyvylnL!grQ_*N^89H8zn1Scs>#SJAze|gJh9`;atz;AtF0%+C%f};~#O92njg-!fS6i`@Qx_ zE7YEtXk&}5Voh?C_f2L1;C#+SE<(Q|@&O^6MHw?~ zO95YWKbM^T>jW;zoeVn?si!UMf?v_%v_l zkVusMr&+N+;gCQ`*q2gV!w+KFrzJyy1^)R1zmmi}mXNXyqIr<3zNQdqPfO!7uP|#t zNZQXC#ra(DdaRVNQ0xbh(?q#kcr<-hNPt;Z1EP^Z zIa>2EgPV`sydcT!q<^uOy|f}+bB>Xqqvb*hfmlul-u^Hny`AB4(!!FANjme)Kb>+G zVfDNLWX%xAID=e*Y+dxye>W%#wd>^v^)3q9%;JW3r{;MBmq!-9+1ccC8_9nA0RavNd_SjSJ zyH`P`m1+&58q`zIWu|xc&;akqIhfbEe(B>Fo@&zsn)Crr7idf)X?I~&LZ+}`a=vt@ zb<8rmez~8Mm&32yG_`Vx72H(=9gL=1KDsuV!T@P{UIN=N+_+zS&PPA%Y!_2Xv=(zE zo<|=iGHI!u(6~jCp=mAuI{uo3*$m1VEr!0>(>c=Anj|^r#5#tes%{T@rolCx;rZ_k zWV3Do>crH`TXe$&--3^XI$>t`Eh9x5hwv_Adq^y*c*0!(J$sFUS?#7(x=`bW#V zWUA>kz0KQGPT%AOeoiFPRGB?^n!$)YT)dJ#+d)oT8^%eiUaY5SLlACm$^fRfZ>NF9 zz8S44?wOsTLsv`s4W7yHs`&n@CY*1Kd|;wD)sEHI#TrHm`!&;LK%Wl`NcVRFr$h2X zAnynWWw(n&Xz>Ui0H8=)O3hvaT%+-Jf3il&+1060eDo=xsW%1`15~C1ZW2n+`(@G01}mriy?((w>b-R;r;unlt2u_zOYHgN6JGF|WthPj-{?pG}PI?!o%E z^5=e#noH5tt?@fEX~{3L#zVT!u5(bLE0owmDbaOiGjU0*J3$kFkD!$&zmrB(5D121 zDbSs}42vwU*Olu|E71l$3oK4q<<*l*^=JR7Lslb0&==|6*Ka&_qD!iQTf4XOB8But zEMN7hpW^YiBEE*DV)6>|Vs&mCZ|NpHB(MLH1S#*wCgZhQ-2@-2y5RcE_~hOei2b1? z9Yo2+)brxYCs^dm{EQFT_2K!Vz0=sf469;%{(x{iJ*w1VdBD`#V^qZXYX}9w2FVXK zWS%wLpBws;1k(fUwoXO(h}4GHzF*{*lG9jr4%kSK^5FATyj2FU0&*R_RRV{Xd|b}x zOtaD?C50LpsqX1*ElTHkn0gM9vIF%5ZVLIF-P^-Y0lc*IW1?ny+GoU_Es`=+bfz08 zBo0&#>{TcPN(C3+K?pFWE0>j82DUVFT>YU_EVYL3`-q-gouQyrm7xk8Q|Y73Z?;xd zih{P)6hLSRuSQp*&yq(Idv8)P88gcp4xf2~#b4ZX6Zq-cYZH<4N>nbvW2G=5YVye^{@OO%#8F8_v{s+U9Q$5&x-Q>(3`HK@) z%4S~zAh#isovA*G^TY@t5*DVtKkQ78FTl58{s8AhyvcA|x#>(x^o=`@Fon$P9GWh`j^Fl&+1z;)0x&~MvO?Ge z=R~Zd6X9u};6R0>9{(RhV?zTNG_v*2UTwh;yS`c<4;<#vx%636#%SKKCBWMSsT<~( ziw!0q(uwYF3mW&^A=3r52GH8=A43>@HP2Er{kEO`Dvnr>GghB29>r5mO-KX%yxf_7*OlK z%o_Er3)JHA)%c4$(-yh6_$|lqe#71La_!)=@~>t6jQ7Px9iP#!m(YsuyORw-re<|; zzStd#W}PoR+g=T^B%KBIe9|~2l+!us?br1gS87F{WIuB~5-}rs>hqt!(K$Qxut>^cy$8*DtO@vp)kq)ReQ2zdN<{xqEKv3L-|d|X~@8jrY=DH;;4 zYIFP_ILjW7P>C^24*3XS-w^k7@2=(uDUmyg9W4a}yCBclti?33|5=H}sNTP!v?oelg|t&4!LRKAT# zQhC_LfTuNj$NPAS>R%KOdRjKJ$?IBR+w=Z-5g!c+)9lOr%l0&dgOootQQDg4pSsuog=+h(1$%!qE;Lws?Mi1SshU}PqfC=a6W?u3s;)lkxhs0*so)C7 z!tX~ew2wSjxy9GCb(qDhaGzcgMte<(z7ERLzmxeI2m?9?4HU-eSz}% zdxO&aiu!kstBdUW@YnsCM_aWf<*ebqQ|+U2oIr}Fn}G$fof=5#16dMx&Cy_wvQYz3KO z>qn1IJX1eYvviyIA5?p_vq9|5j&-Rmt#^jsx4Jd&d;Y=>caK?amGta$H~D+?ud(LR zR_(FqDZk&TR-rv)fbqu0yZx`usGs@LF)Ht|iN%;jW-s1}EUmVbO%pMWNo+NnZ@qD= zh0V(oPy1OEKYn%L>BDtT?iiMgGT3DM)$!GpFBR8{?d$E|FG#;RWL5di7gEF3oLWkz zZ8zR(`Z0giuWE_{kLTNDy9dPxiP}wW(z#ZAM@{KzwEVVwaI=J`_nmtox}%3$>gp17AhugI{QiauP0jmKdJ?9HM}(Ox2{GC&B{;r z9%Fg9Q+=?~E{O)awPX5E%UJsMxqJ1Nnf~(x4MZOtZOn6&9;vvc z+q((fzPil#YRsimW#hXJ+Wl1W-o=|!cb$3JcIE%2#7Q{EGR|JO`D8$m>3L^inS0d_ z!#qV+>JIzdE#Yo$#Y+FbP;JAZyZPB&MtD~XpMQ8}NBCB=vxa#mG={`1d;MH%!TNlq zdwpi!b90eV$EPYrZiEABqMo%N&c8Gc`OOkM3*W+G%cLbWdE{HB=BLry!&rlzSs&%8A~ z^yv7EJvQ>2YlIpC=5Ib{Fh69*muu<;@fUoD4gU97QxZ^pSQYh9<#?T|ML>$zT9-p> zU#2zt6opz;rOO^{dp1&HxvAZl*B>O?Umv$3JW3`jR-$o3)u`!TJpB8Yl$jdc-efiX zFH~z$5jK1~=5zXiO;xUjbF0Qo$h4IlHcQcY*TL7j!Us&2TiD`e*MIk!dw~iyww3$z zChNF-DVMqSZkQTnZ#1#|zP+8yibvJ-r=9}l}PP~p2+B*W4C&ZLU$tBzyLvhohk zT=MJL$l|tYEo$fI{Z6%7|4rMrKJ(Su@Z|G=8XeVKJ&f=hPW^r#)gu6P}1xAK!{86pl zcDdVoN>@L5*Ui#>mXV#;&2L>6bSSac`s9^k)a%5wk&_?U{*6`Qr^3YzYR+~Dj<;X^ zaB#xi>s{5CeYt4fx3~8g?YB*W!xRrJEb4c@^Mj)3lX>4ljvB0ui7nJAx$gH$vL>lR z@2Ap_|Df87$YRB#6GSIz^bqMCIdjh7-j`da$$p$1IefwZzq1ut?SEGDYMUX$dgV#} zPPO6AHy?UC9r`G%{wQF;nIo&?x?An^+%@gF*DZ;TdEZ_O37ozlqNCI9Y-OMJGCrra zCtSTdq4mI*mqk~0I7r_cn7w`4$E=<=GB$LWRXQMSY>egpJ)NFhJ3oB=Qo(uao-K19 zn!5U*EB~*8d!OxgzAvOKGPu<^BygObx^{JEWywPWU(Hi&n<0bbN~fZ zp?b86>RhQp%S?H#Z`}@-sFf`ob@IetsOHl1iRWtTL)q1q)=iPmyBMwOxM#YKRu@sX z+y&BmMig(q?on;tSz^{r{kbVpM>?yVZJal@Z_A;1E6?R*rz>l{5C4N|M!8c8H#|D} zDeAM#h?w-ejRvw|X)mUx+}QW+OkS>pmE_NAL2cD`nO#}&JJsA&++tqjJhJP$a82I4 z6X{Y)!P=+wMI5#bH%gGNQA}&UbjjR->(!D^Zgd@#A19$0lFm~?D?6OqKL4Otu8vO3 zM<;Llr4Rl>wW0l|9@;Gt@p{4NeCNkCW2||Cy}+h_Ra@P*x<5F7Vc~Br@0UpUI)2ohv?0-5wnz_baz7f-Wv;Pb)R!a5 zZf37CeI^O|Z0H^q9xQeIKw`@M?&kBVcRw5#qgP>=Ik&nv`Nn4vmAFUKw5AU#-5nyZ zF+;>p^3Le>D~-m9uNj}6y!8Efh26*3{IdcFlVWvR-#W;g()k zQyNEROlW&JvMFiSGMl-30&ULCGy3E(fALEx?R19-<&F=o4|iS~^zoyOHqF|1QR&l;Ae{y1bIofoo*@U6Of@5Bev5~5>C=1${>C^Y|jgQHncD0Ku5dAsW zR<>1((z&SfJJnR;=gkk^I%J?&&G@%U{TKRee*AUMBaDtQ-nX*scLME>>tBe!a(HI4 zWKoomx7f5Y-2R}N zoIvXJ(z#kiIqyE%Z_PdR*gaF%FzKL@`zh059%a`3+Wi`AZOe{>>$=|mt#!xWMb$n; zKe^tc;+{`V_oz25j`t@=KEHRyr{%%jZ<~9jOV6>5-Vy30zIs*f)*Ugji>ik$pAlfY zHr3iyAy6~(rH z!~@kk*(Jl&Bm*AS9Lo>$Ul<+lrBxm6)f`;cc4iwT@;111`OOi%dOmdWIW?zcmrz`M zYg5U{3+nO*6}K7(IT+0R3)vL2jEAqklWp!lz3{pAn)Hf&CeQu49}Qc&C3nG%xY`Ph zj=KkRnLF01gwcYGWgYEsS^C{apB0wzhp4!DS+Me`{mLJ;R3aeVW}}yYI>so+i|%HSP9+ z7q``(1&YSHyU1ETk{Lg}KKxP5qM!iFS@XU5S$L3wD``W2&bHLhJODA@?*iG{E#IxbQvPlS-BoukbOK#DcDyelV1T5h`x zr9^&ZYuh3koHqLUZ|xC1Zo2T;vL%Ka{M=u?bJ%e^tMx;3uIK7@?Zdn6?Ng-OB!2YE zOofkeDkgSygAXXg4NyMYZp}PbueuEn_YU?F9+SQ-B_^fAyTT%kD*F}Inl0|QKouP^1bM)Mt4xh=D%Q~*ymaV7O z_kCUJ>%M4rj8ptDG`0GJwBHf`Cqq|E-XeGWN_)L0C$Fmfg>1X6J6DOAcu8z=%XxTm zi)P=CAI*J%IiqFwp>`akp!JX0IJxw;@VxWY?xsh#7Knun^1b;E~^yWb*lJS6N_ zHba54KR)>(wUu@EH#*LIZ6iHX)AW48r5jO8LZUm$x7}(#)D5a>O7QmU88qL|YfM$p z8?i}VEk_!3#~SI`+!zTbXJ7THHEl*vWrq>nt!vqTt-qg1$RlZ<-H! zysB%z++*GL>pjkwoRN`K(6$c2{K`?Gg(9^EgFO@ay?ZHo_{fFd(d9 zr?`jLyp8W(TWpayQ`{7LPi&&=JBgcrveI8vveY4Hn8A3JE{h9%`(6*-pt|0CQB}R? zkliZ2UKhlEWoz5M7F;D)_FMbc`nNBNIrXtz>(tw*x|=-)I(6-vbh{vQUS;PINA85U zToEb}=^@nr`KmC#6$R(R^DW<`dx$NGQb|h@E7~x4^_!fzFI>&SD~EWdi?wX@DlcyK zUO8syzDJV->iQd+O;X-{;Z(#w3lSO{f{tviOc-TpZoPkO%Na9^#DTpO$J~&cd9k@| zft_T}yPKZexqhHrDfv*)nw+AYdeTMl#>+;h)e6hbl`mMHbAIy0zmTnR<#6)>bJiUX z-MaW3^Hz-jGUD z5D3|}e@(?7WK*2o@7w9aSKHS_IaGU84lkHk9#Zl_DP7t&ZgG99P@?FsY;F5{gKzm3 z|JDXyE9+5-A0)gt8|PF%_i?srzwvGAH{k;-c9fbZ_!x-Pi$pjL8gTN)$_AmG*S@Ot zs9$ZN)#voNutb%^AwvSDZWXMxI*?&C_V`Z6`x?R_Q>sthR8otJ>XKpAY0JkQ)&A#3 zT@C-|O7cmv!}{=!hs55Ee%(J_ymMf?`TqxRcNLY@7q$zZ?(XgoB&AC_rMsoOq(MNs zySuv^Y3XjHyGyze*#GB!)%~4q27~c=!m;Bw)_Ufe^S-V*+aDNM0O>7N446R%THk5O zY-B!2!|>RM29EJ&szXqQ$KBV~`y7pLGZ-?o+73JM25glp!bH|s?~65j2C$mDe47c> z$m^`@Kh-hbejnpmEbQXurQ9JeFFdW@5U8?``aP5%AKOw~LUQ7HqEmsf=W=D{G5a=8|F*b`I2yUeEDw z7v=5BVxk#H5{M~^jb$7FHhqWR(L?H_=*+h9$=^oDMq5)nNOf6NQ$^|LgkA1s+)+2NFA?!FV8mV%$mf&Ie< zh}L+AN^QI-TLY{I@^EKKHrs;M`NbR*Nb8={D&HQpVgv~G7KUZ)9zpIrGrli}a}_t5 zwD;HI7s+VZr~AA!8FPnQ(z!wjZ4Sw;9BXgOz`9iALFy`01I?C43~Grk&%_yynPC(( zk^10&Pusd&IPL^Z<(|evX1fK-6LU`H948$$6^U30QYKMc|l|ep&Ix6_X3z&mgG++tIniWl~ zHeZzhZ0tR5QJb}gb3(l5PeKlzC#N8p(H|L@F}|2HW}DU<5ClJ0z5$!FnRX5#vn=p+ zjEuNy%eGkxFwN#saaFx>mI8~WD1+Of*fOa^W+QJZgcEg1rz@Mnb(ni;&s{-IsR(}f z6dB7a*k`&30Y%sb%2Q*j)dP+Yc{?478FC}A#oY4p75-dL^Lz$Tg5oV)Y=ZhKLW{t6U1D<%e zS?K^}50$};VfkPWXIkH}18}w5Sxa>#1s3BG_Hm&bl^qUdHnOsZTzBxlm!$I+7v-~y zE!UKg7xLrL)|qv`>86U*#JeW`x&PV!-}uQWYd*Y-Pj02IO3un*-j9qppT-1SC;kg1 zEN|+AOE`JxTkQYCmGl_cNo<1HV``f)bWlHGSALl-NMH%ocmD*IX@ly#^z?DL`F(`8 zeX_$3=br?dyr1n%G&nd2D#H{eeDW<`!A6PneH>p+*Uv(B%k$g;+_>X!tn3CzpP8paQ~d$+6>HinE)z>yuo-y)yQEs%#n9UMh_^wpo(5IJ50#{c#% zYu(Jnq&5=dI_Mpc<_W6T=O?g2#^Vo_48&a4Y6&2TA7Ou&fA;Q%^cYibU zX0VBIP>43i@YhG>NjB@J|E4dgFNS!>KJ#}a37Go#?m|C#(bWHFD7%94RG4AWJ+7*3 zVWVGC8AohUcrVS}vesNgIRwO~M&5w|c23$*y726HpouOPScW>7fim3pE3COEbBv)A z&x`&Jq5BUd^5FT8pYXI%$lN%!>|!6olO6CJA~ROvKmZ)R^+%R3q-b?86`};>udR%VY@k8xz=(ma0~jt&04a+PEz7J`C86K6Xtb zS5vj%-e5YpEM6V_6>KEIY7U=`Ovx_B8kFIeS|989b-{{btlMEgzZ{yVGh2RwYMGHxBpF zwz@ZGY`jvgL;(2CV9+b-c)i%2QK9) zohwWp9Ss!eLgOwVW{#6M&@z8o;-`Ar2U~gOY6>QT#Fq4VqyO$CSPSZS$puW+; z#~(-(@`|j!Uo$GQg8cim0ivVc>4rNm%8uIeQLc5Q!>~H;nEnzWcqWc_?ErzYQyOn^TZh`DFoU0J*S-oE07|V8y?Y^p5HWkSI+EERUPH5ufSARJ~Fe&qqlc^yNn%Uc0z7OiazyX`l)!QSip+KQqz#jVFgfR3*h^~tA)f>#@(S3+$;70 z`Q3493rnb{C)QmwJqCfawG+U0nJ! zUYNDk8?XgD#s2^&Wgr@dj}y1jIHyLr!Gts`eB!HC&@p|V6jGSnaXG3aOoEsW+R6cH z#{#~YaCGI#N{;3YD`}fZ-L?M;HgZT1?L_amG|aE&7X9^H@2+PI48x*1l>|MTs(EHT z|FQuxzupC3_Ft6w1#OMl{b&v6mOqABTR<8q4JS55H{#S}*d?ImC{KY4KV~RbZQZ{I z;@vpwoppW2=qf6CvCC2v$ z+4~Los?dLPtw2Vwb}A5w((Y|xD~-J142j*g)uDDQF?!<}G=OPj8kmngJx=g(7&kJ3 z!uj=IC7?2t+!?(+pQX`@=m;F; z1ma1g4KU_L&9_wg?_fyU6IS2&PQmWb3HZug#+r@Ghc=s!VU$U8>Yf+g$b8b2m`VX5pJ_wL^pT-%|OV~uzG$?2+D0K-5y1?bcx=YQe ze^+|~sU2f`_O_p&x`QWro_NR3h(>u6OJHhsY@*wl2x*E9OSvG4r|bVjyZXk{!yNC4 zyfqQ!RSBa1ITDfSKz9J$s&bm}osBH#eb=XmKWyYcL^#hEAT4()#!oYxP~h=_c(@!e zC_?qI-12OImn3AHd4}zS8=JVMksUhQZmgQt4wr1J?Zn57h3Y*8ivJXDyGs&N)G0ziG=WZ&9(ng#-Tz>ID zx_y9Z9{8LTcL^fSze)f+CNhLziNXm{_T@=HsA}u z97Q`g(FoYnVjrsc^QiI&AzZfl32I~ke%-V-XAMS!eR5O?1Q^vJ*>Bzi_ zIaSRXYGE<>-{Lj-|95Tje{gpWkM;@8dT|C<%4i>8V0ucE7A7WBMTKj|$WGO3-~Xwz z0RPV|1jCEwC1?qZ{Hei0-`-z6Jo=!Z=zouC`Q0={v(47?>~^i?L+f8cl+Ey23j;&H7(ywE;ZqfJX^%j;f`~)AGEfN_ zJm8nDF<)KJEVgb7{S+;vXS(rf9HBQexj|DV;e@oq$Vne{fmrAb(D;?n6APGDS~7mf zsSO9VN=gZZ5ZI|YQJ@xdumxt103!tau$OIVb%@43GYR^n?dFSOr!3~!Mi{C%mR0C4 z@|x4OaI>s*NxJlwvqEbYO_^q#z+7>l!9ItA@9TwKWo<)$dbQyHLrWv@vwsO1ylJM_ zaR-uZ=~oLAonTU$%Xm_wmOg~M9nZlU)b(0W-mL(8Ip5ezCVBa%gjROe%#d}l1BvrX z7u=-;;ZA-IVU*GFxSpSKjX+98_RRQn|#W_JG~Dp!}`C0!F?R1?!+wWP(^r@ zyjkBp(|(KoWBQPt8^&#%*=oClU_1H8IGIem4)&=EJG|{gUll#}Lvu*+O05RZ*rWOd z3p>Fr4>lya(QOzkcQZqQ;zmUG^jDza`7KuuJDi5w=J*o8Y&hTS=15^~Fw)RivCZAH z+(*OxFBGdo?s;$QM|%UA(2O1^Oj5otSb4~A}Kz5-17&zi8zDp-oA|NWKK^7#!By+SSr^(|Jr68RQ#k zYXfV7nRgyrwOo`^X&o4x{*RQOk0cIAFk;kf>{H+7`abf48 z%C&X%p9RZubj^9h6na7AZUhh1J~g33N_OD{+x>geju?lm8b9ACG#$V@^0)d=Tz|OC zD`##qiUy%*25cc~_E`|fL=4?gPA59%<+Wi7qwWoVLTl|{bZ6)pQO&13$XR)dqxr?)@}4_-C=9@naFv_s9PeT zaBrRZNyc5u;*%e7$!+BhJVI<62$sB9TFvps4G~&n4f@hmbD=#RKA z(6iX|PZ?_xLh`2=4Ndr>Z?SrGG6uUj9x9DFVDCvG_YW6J!0&H@ z6S9V>IucNA@x7JI$*zd-bx|^u>vjLmhPAEW)&#gAzxLf2i<+9M~W(1#+F|Azq~HlWA? zqNs~_qrH22P`PO~43me%vW-G*r=iC~ym9fPjOkMDK|s>(8=#%P`#uc<8Q&ns*8h%|T<{N!Nzq-ZAUO^juh#x)|Sf*Lrc8ObdNHm66@0w3n0GwR*>idmX zpq)5r$FMx>eSxXKA5>Q}KL#()UYS!-cwb477Pk{q^k?;m{~uZhX9U&BIq5|yKj4N9+!vun!l5OQ&>j2dy`r1_!#m7%j>YjAgMQ`PogBLdn*I?HgAlb8OZ zS7ibbL%Ir?R=xPRrdTrfMh&1<%NC7G?*N=)=hLT+Hj3f&#W|!^1xFT1kDOido^UEM z(JuP8DEQ2HZ1YEpk;npjAL-_YM+=qX6i7aQz3$~{+Y7s}m^zLArN8__?l)So_mz!k zoN1T2Og}*j_BOhEt-rNYG}4%^bEW) z`15)s{tsHK-Nr%NFIwn6rn(@ofbN zRJu{%=ECmZ`C8LCT(^XE>>LdS2!lECj$2u&Lr0u=4^|9_Yr%hLgzwhSu4%vz*U7Pi zZXB8+79S~UA`YNgDX#iNEE#Z>hP}rQ-vBL=ysMI0+F;f)2UClXi6+ORi??WENoWUq zw(kJc!Z>Vy>Kq+L3RDYnyMEJrF~*xf*{U)6489@>L~DA@#Dw(~XvWNNS%`Fj+f8Pf zrKB*ZQF&S^AtY^P*PM!qyvCOuf0q0#|DoNOrE0ze?dhE0q!+@VXyhl8GO+6|N$kV| z%ox$vTOXT%L=|~?c#pef(>jha|Ek)SJj!uM;pB_XYZBSv&R+P>PC?89(@NZoCjy`6?! zxT4cfPFAJYY#amIAbVhh2D8jI)b?jc7HM66&nqvFm@(>MGsj}y`}2CF`VVbMKF;Pv zPa2)f*pGc<2e?K$969F2i9m+Y1Wo5BLZqe4a<+ybMT3T_E6X`Cx82oDS@_d z1Z`J_u6uM#Se+AS zl~3XJuGup&!Xco@muT5{pS}#Dh#3bmZ;jv;Xi@J5!qLqPNJV~fp*+TqwA#fw#Sj;? zKN#@)#Eka;_*11z`ybl2dLr73I{jJBBdT_5?)h_}U;{kah-)LVxl@gcY$dZG^=fm6wfVoy{^Cg$EZNzW+a=q0s9EFmT`f(CR-lE(qeidt%zJBPzvq;q2YXz zdVq9OdkA|^wa!jTs@J?rjEshW1|BS&NY=39noCO?A@Ua2c*)*3-<_UvDW!{G1|>l> zKVAxClF}tgTpJ>77NXcwQ=_)d?L3VgK-0!X8*{){IfS{h6lCvQs3Uqz>Z2G-zXEL? z4zl+vy$Ni9cb2ID7WRh8Xu%c3Z_5v=biLhQ$ot{{7me{hv}3(w_Lrc2_7EOtDjD)( zR$Iu7xqyy$`NS?~wr>P%OC35s()I;*f}?Gob zXKyiBm#jA2RJ|7{+0)MiJdwiRSJ&ETLi#QA9JZ_#d>#j~WIop4IH4Xck-Pp;s>h={ zHin{+8ButQiXNpR)@GH>f(~>~YZ7XF8zGq*y+ly3@)CkpHL>n<`jd1?FnQZ)1 zUMCKS)#srUzUX|WSYGAx!;;?7S1+l~ln2TC4>6=IOU!^ETXEr^W6V6O~$LNK$`b4!8cn)%Ap`=E=d@H%!HXxG@_%=!7W+z6~C+<+!; z2RCD(|1F9H2jV1^Wv?$Y?LD=+BMlxx-GCvdM%Cw$W~g*KS^%gK=`T%etp|+5T@gCg z)WS>5p_5k4^A`(6u3);u^X!R0Qte2~rgd$^*8PlUf)m z{IB)ADNOM78tXvYG2?W_R+p3+#LmN~ho8 z<7F0nhR@|}eAXbDN7W0{&~}3LqcrcJqMT041Y>!JwsYM(wI>577E^*fL@AEc?KLS2 z3ErpoiWhtGJ~SDlSF1|bI_!ndr=OfU{X4_1fhg{vvWv&sBMHx-{A$uxT)xm9m5nM% zsM5~$pBk##CoYnzi-;@AQpx#quc1#B=()-f^E1H@4VVWO1ebzQLsoB~CLdX;*S<5f zA;On(RjReT5Irq!B0SS5j!r3AfOHV9uy+N?ao}=t6UCFKZyU>!h?$?>%OS{#${XB8 zA2rjg^9nV{+pV#)`zgj{D`~Xnp?qcp29^Z-1J988XYo35gVjIPOgsR!AlEFi7u|ZI z&-9dNdx!~SdLTQTe<6QqtqRQ|CGaln8#H*~SO%=Lh2)3}h4u*4gSS*v8oo|BPje8`x$}|IR{Be4(gD z9gJ%Fmd7MX(gVz}cYJ=x_3_$yt&&#&(LdWO3_$J$v_|*8i(v8g(zpCJgDsX@RrCCG+8@XMcT8 zGe-3tiEh=+9+t5GTU*Ut^KFuy80Qp5up)Ov^p2e?!b5IgEx;_$!45Fz51cj>bp~|1 zeugYD=!$X;EhPp{*=I!@Kb{7HC@%*?*2aXG_XcY1F5)=i&WZ`8$9rlZ{wu(YIVdv% zF{ETE9?y-wQAc(k_tC#Jedg4zdMtGZj}bCpc)uEV#e(A-{$$#mR0^E(3bizC_41vG z{NGJ81PuiXVEy@VN~HE>rSS^xR@D0_vVY!?Y5=u?4^>1jQLCVr6Evu7Kwi z{gcjR^21)PTyX9%3*`Zy2+8fOJ*quc1~wRT5F8K7KeA{IO~ZAE`;)8hoAvE}az1U5KJ^2WsvYP)91*?U>lTq6QX2Y)6-&9?<`)NdeT# zaf+E=qK2pNkaad;VLN0P>#lOJW#_h`4v$|ZvCl!gal@|>2wt2I{2O2TycxksnGny_ z7VPsNFZQIJ9(ffB@b3W0$98Hmx=#T*VU>uTI-FLJAXQ_M4~dEjz!t!niVhT{iG_cw zbP0j5__P*j!jr`j391X}ASi)kKy!mkJ9?13Q4IlwT4cEJ&DBQ4oyS6lsf!c^xIIsd zKlCquQbftmu-IPyhSzBdwEqkS`A-BH#K>K$U6)sUr z@9^6Pa-x9_vSgtV`KmuPXu<%sRG2)Am#BTL<|d?me&>|TLqWjLWJk-ke7|Z%Uq2@E zH3rGdN*7L5iQQ#ItzAi|CGI0dKyOBx2Wx^&^hr7co+@iu&(XDJb<8Rkh$(Ze`R8sq zJhBby>6IP9h?wjZ$8M(N9`Fp8e=C0%!-|VmS=t*o`*3zXmWWfs;$4W?$pEXgZSCp* z)CktK$2R=;msyEh*|_!G1fYW{bt8+F6b53>najoyYH{$5e!oS%=h2xI{zxRFGHT~@ zJ8`6^7T$@DcI$I6)MQg>cFqq~2rJsL(*W>_d4J4(iFHwu01og)~ ztU&V3UUgVeZRVqnq0b>P1oI~6D=AAExdowZoiAYZ_+FO*udFR18k-z-FL;`cs?<_2loFQ2Dn7yN@lz&Mb*z1Ba?>k0~j#ODK0{61@VHT!y0ix zBF%>xlgo&=sE9A>%Ub92lx@-!yI$U{@+skH@S>H6q9Fvgs2PdRnKMJL3$*+CoN`@k z(iN_l#+~{Y3k01Y$-o!jUbx*e^qR2)+1~UI|}^uqi@fkWM1FAdZ$puq5y$ zVKa8H|5dXDs9meKD859kHAAZ^Bi;1~n8!Ez+ww^YWX(L#hTemGq5mzqGCHKZm5r;?fe2Y^e}?$k8IaJv ztXe$Xs#8ejqfub5)kx#*M`M-yWs8g)BBp+pwTOd$ylnFp_tsRURoG+9 za5ml@O_UHm>D`uThkQFO)vd58!{b4C7D1cVPd>Z0!Py>Oxui-IMNR%;6Y{l#9Vp%J zs3hIF70ii0jx4~9hg~8oI$1t|NNhY|ZX8fz&pQheLCDgsfBpBdtsJAO4lQETWyt@4 zkQjho635oNTsnG<*nKJ(3s_3p1wEZ#2_4q5bC}=NK2jrJp-kntbacNv%EV|jdAR7z zen@-+wK$@yfW(FagUFyvA3UD60>Q=dGs_&QV4Z}9K8)Ckv%yEw4~x&1dktSk{$DVyC9LRp_pP#O+wauLyH_`s!s*3E%QZ zO$(ql$yp=xqAe1OWTaoI-GpnM%GG(sk=9jn<02Tg@-!uMak<=X zZd=PiJv6E^Tf-THI$qg9CL~LFvTmFBx{ZruZj*{26K>=W_nPWekFy5xd7TD)zQo_G zT59^+gRBX(m|#O89)N5vq!U%1XEk(9*;Q{js%UlQEAtzWVFQUkKzXkszd8Z_>Ax=n zeTFm~@IAwp$`ojiWi>hM8Zpr}RQ5Men=QK#W*Q_C(J`3l`Nmr7Vs+{KKK6lM;6B{A zw252+)8NouCQ-M{R%wC0aSa1AsdTxNw|b+nom9h5<-VDW`xR>NV(|oeK*@y>Q6EZ=eZ zGy|;tJ*GL+vJ<@bqRzt^h`QATYU;Ay+MBBE%p`O>0xQraz-yX@Xt0%kk7c%6L_Qe~ zo;X$v<*P^o96!=+BhU$ok2AJ8M=F7Wa2tVcR2 z*!^a%vWC9cbeU2?Jgv{Kriy8s(5ka3IZ>t~9!0{LAU)^2o-IglvW-&wt9$z5vvo_1c_YqNYgJ z4K?MRPA-x%gqkQ2h9O!!iD7`R*A!2;EMN{H4w7uJRURHqAA}9*B(;2w6!1F$$=$qC zmCH12sgC^6vM-*M1y$5b$4aPT2;7c`+ayIzJ=Nno4!npdhXq=EK7{AL8&FcJSHhH1 zl)$8;fy3uNUqGMLZRw6a#r2jifPRI6??Q9H#dol%*0Ex`24mL?j_xng z-K<}9jdBvpy+!AETfmNy)P}NYPq~!rFGcthEChHDXFJL|9cT?<>WwKt~=(67)zCi`KqVL@=-)-d@_eAy?$ zgdJ$|^v`FTAwX?Q;yc_+)Li??3grgUBj`dvKca)t99g)nRS`amf zYPVWf18z`lATl_E&(}2amqcDdlmRhu`_5v zBOz;v#SJ1I6y@>n4rWaJ6ev%NYb3j`L7zDc#R`-4sz4VyPYMF6Z2sqtsF;2egT*$> zXn2R<;ADD=<$3Co4{2}_Id_lrWp-S7_6NWrZ=j}Zb@4>j(?nCU?+ne-G1{iO>_`b- zQ(lQOptWIqtG1JW&58X})fEX!)?M$$Z(;932dVcJYMf6lJK&95 z>Bu`|oU4K9Oov2$#@ZB5aW@7EnvAmZf4W&s0cyYGn;2fA_A|aBtX~&j+b~F{5rp(6 zTR!qPcY;B@Za4fVNs@CKcy{Y>>tUbsh2^X>5|WNZ}LDL z7myq4OA!5h-)xasc~Uyxf5MwvUB|SI^v+eR$N%n%IFg$WvoZ}3CrlODmnLEXE|J9}lU6U=juXAJ*7FP^cJDBC zmxYLW%IFfOrI1&sRp%UFm`D895%WdlWfwrq221u!SF|{m4~H6vZjO=v(_ZZYC_;#` z?c#fhnn(Ue;Z;f}rsTtHG0zxTGr1YUxz z6AvaKXXrfSTF1UJn%)>nc>^`pWuagiBIi+>tsQahB(abV*1IL|NEd1Mhn`bAeX;Bg zP}TADq$WO&CRs%d-Z7%uv`_(1n>g;xgw-0~nVr{c{ev$5qCh@uhV_T)Gd_9%UO=J0 zRuZqrf7}Y`l2oRqT6{=uk%s@1g8~My<%0G@y@YKY5B(OEOUZ?Cnw)7E9nm}OV`auh zc~Rv6H#N*2^akj$@^L>AZfDv7*5!R0ystO8QeO+cYDwxpaG9TvuYZI+Qz z#v{(dgTazUR?1Bp$AUhrw-+DpoiWJY0y|ouZ~^O~vdM0-F`@e#OzkKf6)Sk7klN2Q zAFi{<0ETgKlV2Nec&sq*;>r&v?>VN5+j-cP^R za{ht!{F-~1L$*GJ+%&lndkXct`ibJ3^+KrPU$1Mfve z$c~a(#J&YJ+3dsSzQoiA^3Vl#Ea(d3Qf_FjyDJ05z{8YE@PIAdlK(SYOmi;mM0@o0qhte7k6 z&X3~07*^1kGArOF*L^L=7~kg6Rrr)7^w)f_eVcGc;!4Wx_8YFLL)f5D@>k2o8f=~W zN|jxr&NbHkXA$WRP)m00F?flZc8-Q@y1F+H>%7K6t_x6Y-(v}IJ-pNoLa<@WmkoAs zY9^77Xz{^z^&iw(pB^hgaV~=3MLA@)t&@2vy|2nqf$Bz2?(yP59hgy%g6+OSA{H~< z*YiR)5q8!5w0L06_5Qc?kIL-wxL`+5brsJ_$U;IGNp>2iyc@%Vn&w9boU?(!K_z4v zdxdeK%f#X`iT9LbB2p1G$9CzZY>}@a)KK-w?d}4{XK{MfHrx^n4_*_@KF&4U zO*XVaG4$nCVG*gbI&`%mpYpu$N^;-lIvV<0%?g-4_FDM#^F`yw99@x%Lh zi~g84ZZJ|4j{6X~-(93zB552z(%Dpyfj15{Bz}Hd5l4Gx7yTH{*>b~)T!YMo#i|l6 zgGMoHh9cof{se0w95wM+{Gh%220W3W+jS zZV0+B$WeWgu&s3!3V<8ga6EF)Tu6f&1qbTCaBW{T-V^#D%rQ_=hm(EV*li!y( zy#breK*ka;y=ZFE5PR~N#!Np&_L{9{VHhzh_z4K7pt`gJqUOOjV__3pIpYK;d}dQA z)-_9#yg4lQ?54$!Jt{u0U|Y5Yx6S5N4uwW-MecuUlocUiDYE%dXS$D*ymU}8_VNGv zV_V;U`3!@n6$|z$7x1+ep$tSQSv(I^`77J?)toflO+e`gNOlC`#Qr&ApuvES2bRZ) zdmm`h0ryX)VtNX^L=K%Mo&FRh`0K)a zOe1LwvJN5iUZ)z0=&(h6G}9TzgIZhz4+%8M{Vxd9Jw={Zuyw8F$G{GO9>sOrep=P4 z-`667Zk7bMgrZ(QIxC?3^|#{_kQDVQLmYfjR5Y{XxA425_x`t*ku$sT5x%7*eSgmJPmV_din@Jdu-8L9KaQwkz|QTLIFaRE{c zawqOx9|!^t!o+e;oWDcLTFthRgC+f4kT3yFi-IVtl1U`_`X>hWbwF$hufhFUMn4>Gi z5Bg&=<03-|94#EC#xa)*CK{0=Yj?q)XCH#2-=#d_%B#sbdp{cO*-Z zkbfekd`*A#jttH6gR2Z4^6`EPq8Srz%up9g4m``;R~!_C=Ze2QXn@$ES3BkCi*kpV z@d!1prqxjGx!T5|qtr|HLRp!RbTlX$o>z(3s*6B!$Yk)_dvdcV#<>g=XIJ895N>EJ zqCd|K&x{AsyUHd+q1l4Fy!^b>e^^8Xw#|0OMe;XyDfe=p^mdsH@U{*4{rhMWM6*H4 zW$qil)LlAmClhmNfdw>veC6#2he2*zlnO!7YN8b^QispA8yGE6~ zfXLdNtq(TGES$>@+9oyzZbLGx$ENE4noHT9J}ijiP32#0@gJDzh=}}jy5fXYu0E_v zL&r=q+1UGAs0D~ac}?(6y(kYwVU=7PLz;ot-M}R=v6;bqp2xZrMj1C1HEG&)ZodXc zu+udXZVl?0fMneB2@jPonvS(uf44m~b*O{#iwr15YO?DJ14EW6u7yVksboqup{18owD zP97@MSSbxh5sHfuTn0Ei7OAF=FEblj9`_dFC!dK`xU`K`V1NE0=5C|A1 zl_d+Y8sFUW4fq!^V~R9gxjv5omqjXx8v9z1M|M6X?b8t{rt)$JaVYBt{a3JQh3pa! zx1vn@U)JmFZQ=-S>7ivnb9QS;!N!F+Rxba2+5p)auT7P?7lmt(Am<#!$Aqg#e|pq^ zZ514-aAo~VI0T*-r3AAND8mjhM>f%K?zulx9lJ^ceZ39}om@#j_ zCe1kHg0zpp9!+={h4j$F270D6B?QY6mw!x>vB*L9=sQhKMw9RB_*>Xh4 zn*ZqWljc_;rIe>j(pRtryhmf}IQN#Py`1Y>TUWaau^vSs0E1m zdi66+yeQ|ZE{r!8wBSk_srCbZ#-Cv!3jPr^CgIMMV<+*YQpwPz=r-KFp#v zw=BcFz7-V(HN@QU){Vz`x zzkf@Tym6giD01FVu0`?H)OIwSg;LWs_k`mcb?S`@z(pvt4IVYA1D{Wj-wj$RmCVrh z!fP3%@JAj{b`e^pvynMb1>e3!$^U|bbk*wk)&|^X4*NBlAn6a*iw+rbOwdAb-0Q|^ z_zyGHE4QIR9g@1gjEpx|F+(JjxmhVEIp_MG`cxL~Uo(&p0*60J3NZn@77jA!EM;*^ zg0$dRH0V7ok?l+P+k)@!OA-)@@;cIAcu^{93Nrqk;qUno%lE5z1+*fY4g|L!vu}5f z@P!LM=3vc(R4_-nDT($SXL6`(S3AxEx1^-~?xRRHGwV<{bSErPpj{7e6Fa0M#5FMF z^0g{ju$~Re6>}8N$|%8^dgy=W8~AT)Yhm%2oBGQUd%V4tA_+Onk@VC>kvCb7$<1pc13Q!K|VMLF2_+O#j^bekHN_Wi;gL z&PXwx9A6ju%qA`@I0mj@fO@T08O${yA~od*3US@HA$~`Iq8*7CUVY;RG*lGnBrM?6 zT=SZ-f7Il*O7DuxULgrtYPys8LyX_2S`swAsZZ8YeL8o4o0$OlY_BWpr56RX$B?n9 zd^Mar>eS>!2Ed8wyOcF@1i?cJzs{EOt?;>V{Hg;TJ_BO?J^OhLcmEI?*i+@GOA1=6RWnP(#Hue3`owrSmMlC#4D&? z@#iU$GpV{aU~81WoD7@J7?lk_XafZrLduU#7v0doR^1*Fh2d)Na2gtelss#WQAXJZ z5?_*bIfs-e?(xAvFe7_%FD!-3cuf@o!PgAEcKIk(X~M^BXMc}5(wTSx!ZpJ(n%Nr^ zf~xO-zuN%8D6gllD=$h$Az5g9p!pVy`9p>TXxwX_Ij^@HLL5Amw-ivgHzl6HFKj#E z)uoJ!b>Ef%(dfE1VN>65VNk(3iOrj;mMhma`EDO{QB19R3GrPtNaIBV@lkKBLN$N? zVMYtpBjLt*6!h=5C;}@jYSe-&qX#xE5{ziu-%+5D>XjbmVmObr*?^7Ybi~g&dC|Z= zBKa`~2TJC45157iH)Q8+eM1C2L%(bly29S#C5eaUn{fzkQB%?1BtwN8fccP=$9d=O z`BWKndmw5XuN~4c%;hg=DMKuY$dqUF@%qAXIg}Qt4!Fpmrts>e4fiffw+jB>U$bUT-e)DVSx`F7UwxpXp zt$Pa2p&mr}QbW~hw{hdg0e4jK}bq}PH~P~MsoO!<{Kfdxg?{<_-$s+gr5wOG!9y^ zN>5s8uSVY+)~EgzY@g>m5`qvWMJ!_sVGHIqag%nJ4`+>0cDrZ{iZV=h|E?qf;VADY z)Xf*AqnK20ppa82Q<;T+e*1LzV7N)j#B7z%x&@&ZEfa2d1oYu@ zaJ!Xh&N5xK^v8IiBGc>2k^pvJFnR@#pN}rfsmq|^g4T~Ib>m2JTVXA~-;KsWuqga( z)WrmfhvE5f$iaQ3kwfJmQ$?KCafn?BCwe#eECJRJVB;Nu{eq3Mx-T)1qHI|Fn1n?( z6?7|5P=S5Vc%g`6=rf6|^cF{?ZK=L}phlIN6-t(%qL_OQN?5Ll7t~CBnTdC<3KiF!4`c*(Gda-<;EV-$3eSkxhQQ^ zO`%SLE_%83fdrHC_%9nE^6Q;Uxc#EcuT3-baw76Cc>S&=!2!V!0Y#L?Y?Qav13Pmo zaZl)q2q(UZJdgQTQqHcZ=sgkl?P$;}BiNTB!yT>OzYU?d-LUDSh^08WzwppTV&Vl78 zw1U@q24~-<5&M}f(eNJd6~$mWY`04L3On9Cs@ZZKdI7TX8Z=X=i5qpu1a$!;?JL;S z$6cYoHo7p=P=0?-_Eq5qa7LcYLSrYT>MDww|+0Ukh3Lhf%7d z<4q#1(5QUq!&8Jn-22Q}`kbl7ib(Gj5%#Fss@~i=(1>08Y>q99J%5AeusRg<9+@6a zJp1r6_Ht{TPBMN;zdKdt`%WAu1}vmc*uR7nIzdyg6iS@6&Foir`*X~yn+DN~@1U@T zPbb3NfbTZgoR(aacKijHr2d{xZeiux58e2#*QHc-a~u`>%iV?_a?aj>4S^jeOBN6LRpfq-yX7?54E@eA-Q5-Rt z-;`Asl7<5ldx{IkC5E7(^16Jg(-(*KX<)v0)d^PAr2ui;6^pTYegZa!@?4Ny?f(7j zLeCG+!H>w`#2?L4hU7L1cekByz5~<#Izy7e=3d4*{FXGArz*4)UH_Fc?B7drq*#{j zBGidS@ygoi=jAXeRbfS?%VCvZ_@`i9z@B7Br{ng}_7oJI$60$qtDX`wV%-+6P&q2q znves5!Y-aP`1TvH;bzo#77}0Mr9wM{(kIa8(gmM_T0u9M=mdJDhb*pdj^%zQv>H%b zXigtQQI%vLnClks#E~HMEA_6^8va{C&w8HBn=WtdjreyFI*rc%VeKrtvh2Dx zN_Tg6OLrq((%q$$(%s$N4bmW;64E7&bax{SQUb5nbF1%184P~I9DASZTzegJHMwXk z%NNbo8=@hZxqM1Pn~F!z74F3Ay2JrI+)#p8D!pG9=!5VI|GM5$)GvcnNssld`V^>M z=*`}IGTZk3>JyB*$=}x9(UBpYazM`*F>DKzHky5`MJdJm%yvAII78Ts6xDm1j`D`^ zK00NZ5mbQ&i460K?61~YxG(47dWS0c%(m6g9(v1IY3wu^_>FmC4-7nxDDmle@-stz z&U72Yea^5QnfVA4hoG2n03T#JGM)yuU7U5PPO=S2$VXVLE%)CV5{O@iErP?x;VIDm zrFvxvLy@SA-c(ZhNW|aUnZd0i_GkyBFBLqVoeupvH8v4?_V1s1S6{yO#$31;o?~nIU6g+`Z`pILHbu3q4*73nx7akmdL6pt%saRydE zM$1#ihV^-3DJfVC%NucC2Skivlwx)!NbRb-0cI91AjU>Kl;%G{_(T4YEIrf(p{k*C+KP{~=c{ z9m@@ietjX*Z|I|RkRB)H*NP$dvu&d8yl|f~OFO^bKMuLGFl^a@lMF1&Wpx~0a>1{4 z5mGEv=m#9pgp!|^#a~mC?NHC#8Qqv<`^;(QSJxgtsSc`eM4YJJ-u_sg0#uSW@~$zF z=EKKmiWqd)+F~wc$jbpIo2@>4hotdQa~J+b(vvR$E^pSb@(N}yS^T;IW8mw+Iw~(6 zmP{bn6<8g#&+sF-g1Sx!k}c7Z9!g?x!VW}VBhKObnBhHU>P4*HCJNQC=Zum2q-Un* ztbH?&5n4`eqd9f7{zeN7(GkSLw5UPGLHqFgw88x1mdN9e{S;{ba`a;KVDqt)w_nlR zzzQKOa4VzWDp5EZ3bJ7lvm=7)&s7JP;8KZ^?R+slsK*NGB(Q(bj?vy=#{%YS&{1l- zZ*}`4XO#px*U13#J7ar2iAZ4*w8T_*XmIYqUT~OcmQMwkkpyBbN?~LiOAA0Kqr?#nOeSiq&{jiKe;fIj?Od3L`)2jJ-nmEHU9< z3%(=QF4T-Mxlp7%VM(#Tosfb24;sQRXjuY*d{2S)FGsJ&$TzZ#4WC_cP1H{Ybnd82 zEInVBWlG+Ie-7rLxhdE=?P#v#3p+%F!JcO_aU+1DTT;-%GqA}r-dw!fK8&ff{@eW* zc6F_5L~7$GLJn%xieo^SG>ql=w?3<7&n2>wp|0 zlOSD6(Owpqy6Fn$69WDCQy1a7w>XQxzZu&AZ~l2NIg`SJ6B- z+;R%q!j!QsW-wGqFS*?tNMxrX$Mg9>D%mop2t8;Nsut7h@p;ku@5Z4r8?bj!Sd%!4 zsmlvD!AafEd-4xh3V_D%=&AD+SD7&YDC?qmQ@p_A-(3(tg=^epmNOmpY2H0b}cze?=KW|)O z>#Y#`!q~4N_Z&mH=Uo#AKEw$TJp)=Pca(74)WXF!vZ`|SH)wryRF>w^8a?qkJXPP4c(V!eS~mEdK}s(v zKS|kO-9~Ec9+R_CVwEhCO7twQm!REb+1F*;?Lpi8E&R(yE)ZDsBUs`=lE8M5FArq7 zki}eDsRt2tCp7^l4a1jFs5lgnS?oKO!xpW@me?*86FK6Pei`v~n3MF96Nz z!yKmhW+OqW^S-(reLPYL2~d+uXVLo;h(O{nlqmjXjWm5dvBoRmaM{7~(m_JkH%*;C zcc&xf61<1lAtGa+0qu2U%}|R*CNGjZbU6aT#5527SlQPwQ8gC3bhEN?>$^O7iHy|C!xqHykKHua2Zj;vf1J-G3=yOmw3ZD z*3iV@y7gEX-8LQ6;@}JOR73{I#pBriUG6(Tqq03bDPwq%@93!Cgt{%mWxD!ye1u36{(bG0huZ}4a{S4LS^HTuD`$Sz<{(SOOZ;Sa4-rk0vZN>_ z!J4*nMFYuI(W_P3WgZ#&eux*%x((~=V|x8*jvaJPtYW#eo;%*dFL}OM(_(-mv)rQQ=t7z z_ZokQuT@Q{Ag>#kkk&#FC;0v0b4R=WYsFWbt#j;nLMhd8G|Jsebd&<=x? zea2e;So0uej!q?Q7)^hmkpKxMlpq{rq!RhdGgYN=kJ+y+lnlGI{dA;YGz3f{Lu4(~ zV(A)^USjT8&--+*_kDq#3P=!2YhnF@)Tw!%onhm2{}R_@4CM+1So2KorHcuAY(wS{ z0!e_wsE2_}?@x_6Ac^}*9p9!kzQabsvUl}|XvO0DjRuy-k)93vVsy8uS@W~cfcA;> zgh2)i(x&`SPAFO5=W7r;zrWUStUvcx)P~1mSeXBy(foq8Y@f*WBzN^cB$T2c#NW{k zP*_4WG-Sb)eRDZ)aND8C2s5cR3%Yjn*m~e6Jo-B`4dday;h#+vPZ1qBV&B?O3j7of zd!N9LZ&CC|87T^+ZbonCueHF_RohS*)N3J0u_yOf*uKeOR8Q;&s2<6IYz-4s{480U z$MPl5I?NAJgh^K{302buwK*HTv8 zm@I!tMdibCL}X<|52N&u;4^ssdPtQjk68gmU3}_-dyqE5*mp5$f$_8kpE^9sUcuY_ zJ!x4Gh7v`rPLQHUr}3aua;hhfGa`d#x`+E!N`R9FtUIAlO&C34fv}H{u4sh46M!bA z#u67EQj?E%I3gSG25j*XLIl+L-KmE{b`fJpf5P(Vh6

s@+vz-uk#w2NOLiHH62I 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 s3Tp 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%0DNR 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 I9}KYn12)Ij-v9sr diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index c341bacf7..049c6315f 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -11,31 +11,22 @@ so they run inside the existing BitcoinTestFramework CI pipeline. Chain setup (zcashd mines; all blocks are submitted to Zebrad via submitblock): - Blocks 1–200 — Transparent coinbase → zcashd0 wallet t-address (taddr). - Provides 100 mature UTXOs at height 200 for shielded spends. - A second standalone wallet (zcashd1) follows the same chain and - owns the Orchard account used for Orchard spends, matching the - separation used by the working Orchard wallet tests. - Block 201 — z_shieldcoinbase: taddr → sapling_ua0 (t→Sapling). - Coinbase UTXOs must go through z_shieldcoinbase, not z_sendmany. - Populates the Sapling tree; notes are spendable after 1 block. - Block 202 — z_shieldcoinbase: taddr → sapling_ua_aux (extra t→Sapling funding). - Seeds a second Sapling note pool for the later Sapling spends, - so the Sapling→Orchard spend and the later Sapling spends do not - depend on zcashd note selection choosing distinct notes. - Block 203 — sapling_ua0 → orchard_addr0 (Sapling→Orchard, cross-pool). - Also funds the Orchard pool so subsequent Orchard spends are possible. - zcashd0 authors the Sapling side; zcashd1 later spends from the - received Orchard note using its account UA. - Block 204 — sapling_ua_aux → sapling_addr1 (Sapling→Sapling). - Block 205 — z_sendmany: taddr → orchard_aux_addr (t→Orchard). - This seeds a second Orchard source account used for the later - Orchard spends, so Orchard→Orchard does not have to share the - same Orchard note pool with Orchard→Sapling and Orchard→t. - Block 206 — orchard_ua1 → orchard_addr1 (Orchard→Orchard). - Block 207 — orchard_ua_aux → sapling_addr1 (Orchard→Sapling, cross-pool). - Block 208 — sapling_ua_aux → taddr (Sapling→t). - Block 209 — orchard_ua_aux → taddr (Orchard→t). + The fixture begins with 200 transparent coinbase blocks to the zcashd0 + wallet t-address (taddr), yielding 100 mature UTXOs by height 200. A second + standalone wallet (zcashd1) follows the same chain and owns the Orchard + account used for Orchard spends, matching the separation used by the working + Orchard wallet tests. + + The shielded fixture range then appends: + - t→Sapling funding via z_shieldcoinbase to sapling_ua0 + - extra t→Sapling funding via z_shieldcoinbase to sapling_ua_aux + - Sapling→Orchard cross-pool funding into orchard_addr0 + - Sapling→Sapling + - t→Orchard funding into orchard_ua_aux + - Orchard→Orchard + - Orchard→Sapling + - Sapling→t + - Orchard→t Chain caching: After the first run the zcashd block data and chain metadata (addresses, txids, @@ -88,8 +79,16 @@ _GRPC_CACHE_NAME = 'grpc_comparison' _GRPC_STAGE1_CACHE_NAME = 'grpc_comparison_stage1' _GRPC_ACTIVATION_HEIGHT = 2 -_GRPC_CACHE_VERSION = 7 +_GRPC_CACHE_VERSION = 8 # Bump when cached metadata/state layout changes incompatibly. _GRPC_STAGE1_HEIGHT = 202 +_GRPC_T_TO_SAPLING_HEIGHT = 201 +_GRPC_SAPLING_TO_ORCHARD_HEIGHT = 203 +_GRPC_SAPLING_TO_SAPLING_HEIGHT = 204 +_GRPC_T_TO_ORCHARD_HEIGHT = 205 +_GRPC_ORCHARD_TO_ORCHARD_HEIGHT = 206 +_GRPC_ORCHARD_TO_SAPLING_HEIGHT = 207 +_GRPC_SAPLING_TO_T_HEIGHT = 208 +_GRPC_ORCHARD_TO_T_HEIGHT = 209 _GRPC_ZCASHD_NUPARAMS = { '5ba81b19': 1, # Overwinter '76b809bb': 1, # Sapling @@ -101,6 +100,22 @@ } +def _skip_cached_runtime_files(tarinfo): + """Exclude runtime-only files from cached datadirs.""" + basename = os.path.basename(tarinfo.name) + if basename in ( + 'debug.log', + 'db.log', + 'peers.dat', + 'mempool.dat', + 'fee_estimates.dat', + ): + return None + if basename.endswith('.lock'): + return None + return tarinfo + + def _submit_missing_blocks(src_node, dst_node): """Submit any blocks missing from dst_node using raw blocks from src_node.""" dst_height = dst_node.getblockcount() @@ -234,21 +249,21 @@ def __init__(self): self.orchard_addr1 = None # bare Orchard receiver of account 3 (receives at blocks 205, 203) self._orchard_aux_addr = None # Orchard receiver used for the t→Orchard case and later Orchard spends self.t_to_sapling_txid = None - self.t_to_sapling_height = None # 201 + self.t_to_sapling_height = None self.t_to_orchard_txid = None - self.t_to_orchard_height = None # 205 + self.t_to_orchard_height = None self.sapling_to_sapling_txid = None - self.sapling_to_sapling_height = None # 204 + self.sapling_to_sapling_height = None self.orchard_to_orchard_txid = None - self.orchard_to_orchard_height = None # 206 + self.orchard_to_orchard_height = None self.sapling_to_orchard_txid = None - self.sapling_to_orchard_height = None # 203 + self.sapling_to_orchard_height = None self.orchard_to_sapling_txid = None - self.orchard_to_sapling_height = None # 207 + self.orchard_to_sapling_height = None self.sapling_to_t_txid = None - self.sapling_to_t_height = None # 208 + self.sapling_to_t_height = None self.orchard_to_t_txid = None - self.orchard_to_t_height = None # 209 + self.orchard_to_t_height = None self._chain_loaded_from_cache = False self._stage1_loaded_from_cache = False @@ -325,16 +340,8 @@ def _persist_framework_cache(self): src = os.path.join(self.options.tmpdir, 'node0') - def _skip_runtime_files(tarinfo): - basename = os.path.basename(tarinfo.name) - if basename in ('debug.log', 'db.log', 'peers.dat'): - return None - if basename.endswith('.lock'): - return None - return tarinfo - with tarfile.open(os.path.join(cache_path, 'zebrad_state.tar.gz'), 'w:gz') as tf: - tf.add(src, arcname='node0', filter=_skip_runtime_files) + tf.add(src, arcname='node0', filter=_skip_cached_runtime_files) self._write_cached_metadata(cache_path) @@ -393,18 +400,10 @@ def _persist_stage1_cache(self, build_nodes): shutil.rmtree(cache_path) os.makedirs(cache_path) - def _skip_runtime_files(tarinfo): - basename = os.path.basename(tarinfo.name) - if basename in ('debug.log', 'db.log', 'peers.dat', 'mempool.dat', 'fee_estimates.dat'): - return None - if basename.endswith('.lock'): - return None - return tarinfo - for index in range(2): src = os.path.join(self.options.tmpdir, 'zcashd%d' % index) with tarfile.open(os.path.join(cache_path, 'zcashd%d_state.tar.gz' % index), 'w:gz') as tf: - tf.add(src, arcname='zcashd%d' % index, filter=_skip_runtime_files) + tf.add(src, arcname='zcashd%d' % index, filter=_skip_cached_runtime_files) self._write_cached_metadata(cache_path) build_nodes = self._start_build_nodes() @@ -462,7 +461,8 @@ def _build_stage1_with_wallet_nodes(self): 'AllowRevealedSenders', ), ) - self.t_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 201 + self.t_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) + assert_equal(self.t_to_sapling_height, _GRPC_T_TO_SAPLING_HEIGHT) print("grpc_comparison: restarting primary builder wallet before auxiliary Sapling funding") node0 = self._restart_build_node(build_nodes, 0) @@ -505,7 +505,8 @@ def _complete_chain_from_stage1(self, build_nodes): 'AllowRevealedAmounts', ), ) - self.sapling_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 203 + self.sapling_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) + assert_equal(self.sapling_to_orchard_height, _GRPC_SAPLING_TO_ORCHARD_HEIGHT) print("grpc_comparison: building Sapling -> Sapling transaction") self.sapling_to_sapling_txid = wait_and_assert_operationid_status( @@ -517,7 +518,8 @@ def _complete_chain_from_stage1(self, build_nodes): ZIP_317_FEE, ), ) - self.sapling_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 204 + self.sapling_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) + assert_equal(self.sapling_to_sapling_height, _GRPC_SAPLING_TO_SAPLING_HEIGHT) orchard_fee = conventional_fee(4) orchard_amount = Decimal('12.5') - orchard_fee @@ -532,7 +534,8 @@ def _complete_chain_from_stage1(self, build_nodes): 'NoPrivacy', ), ) - self.t_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 205 + self.t_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) + assert_equal(self.t_to_orchard_height, _GRPC_T_TO_ORCHARD_HEIGHT) # Restart the Orchard-owning wallet after funding lands so it reloads # its Orchard note state before the first Orchard spend. node1 = self._restart_build_node(build_nodes, 1) @@ -549,7 +552,8 @@ def _complete_chain_from_stage1(self, build_nodes): ), ) _relay_raw_transaction(node1, node0, self.orchard_to_orchard_txid) - self.orchard_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 206 + self.orchard_to_orchard_height = self._mine_and_sync_build_nodes(node0, build_nodes) + assert_equal(self.orchard_to_orchard_height, _GRPC_ORCHARD_TO_ORCHARD_HEIGHT) node1 = self._restart_build_node(build_nodes, 1) assert_equal(node1.getblockcount(), node0.getblockcount()) @@ -566,7 +570,8 @@ def _complete_chain_from_stage1(self, build_nodes): ), ) _relay_raw_transaction(node1, node0, self.orchard_to_sapling_txid) - self.orchard_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 207 + self.orchard_to_sapling_height = self._mine_and_sync_build_nodes(node0, build_nodes) + assert_equal(self.orchard_to_sapling_height, _GRPC_ORCHARD_TO_SAPLING_HEIGHT) node1 = self._restart_build_node(build_nodes, 1) assert_equal(node1.getblockcount(), node0.getblockcount()) @@ -582,7 +587,8 @@ def _complete_chain_from_stage1(self, build_nodes): 'AllowRevealedRecipients', ), ) - self.sapling_to_t_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 208 + self.sapling_to_t_height = self._mine_and_sync_build_nodes(node0, build_nodes) + assert_equal(self.sapling_to_t_height, _GRPC_SAPLING_TO_T_HEIGHT) print("grpc_comparison: building Orchard -> transparent transaction") self.orchard_to_t_txid = wait_and_assert_operationid_status( @@ -596,7 +602,8 @@ def _complete_chain_from_stage1(self, build_nodes): ), ) _relay_raw_transaction(node1, node0, self.orchard_to_t_txid) - self.orchard_to_t_height = self._mine_and_sync_build_nodes(node0, build_nodes) # 209 + self.orchard_to_t_height = self._mine_and_sync_build_nodes(node0, build_nodes) + assert_equal(self.orchard_to_t_height, _GRPC_ORCHARD_TO_T_HEIGHT) def setup_nodes(self): # Match Zebra regtest defaults up to Canopy, and activate Orchard-era @@ -620,7 +627,7 @@ def setup_network(self, split=False): if self._stage1_loaded_from_cache: print("grpc_comparison: resuming from stage-1 wallet cache") build_nodes = self._start_build_nodes() - self._wait_for_build_nodes_height(build_nodes, 202) + self._wait_for_build_nodes_height(build_nodes, _GRPC_STAGE1_HEIGHT) else: print("grpc_comparison: building fresh stage-1 fixture chain with standalone zcashd") build_nodes = self._build_stage1_with_wallet_nodes() @@ -628,10 +635,14 @@ def setup_network(self, split=False): try: print("grpc_comparison: building stage-2 shielded transactions") self._complete_chain_from_stage1(build_nodes) + # TODO: Re-home this fixture once standalone zcashd is retired. + # Today we still rely on standalone zcashd to author the + # shielded transactions, then replay the resulting chain into + # Zebrad for the actual parity checks. + # # Zebra and standalone zcashd disagree on regtest difficulty # throughout this standalone fixture, so replay via checkpoints - # and then wait until Zebra exposes treestates for the replayed - # shielded blocks before starting the downstream indexers. + # before starting the downstream indexers. checkpoint_path = os.path.join(self.options.tmpdir, 'grpc_comparison_checkpoints.txt') _write_checkpoint_file(build_nodes[0], build_nodes[0].getblockcount(), checkpoint_path) self._zebra_checkpoints = checkpoint_path @@ -727,8 +738,8 @@ def run_test(self): ("GetBlockRangeNullifiers (reverse)", lambda: self.test_get_block_range_nullifiers_reverse(zs, ls)), ("GetTransaction", lambda: self.test_get_transaction(zs, ls)), ("GetTaddressTxids (full range)", lambda: self.test_get_taddress_txids(zs, ls)), - ("GetTaddressTxids (lower bound)", lambda: self.test_get_taddress_txids_lower(zs, ls)), - ("GetTaddressTxids (upper bound)", lambda: self.test_get_taddress_txids_upper(zs, ls)), + ("GetTaddressTxids (tip-only range)", lambda: self.test_get_taddress_txids_tip_only(zs, ls)), + ("GetTaddressTxids (genesis-only range)", lambda: self.test_get_taddress_txids_genesis_only(zs, ls)), ("GetTaddressBalance", lambda: self.test_get_taddress_balance(zs, ls)), ("GetTaddressBalanceStream", lambda: self.test_get_taddress_balance_stream(zs, ls)), ("GetTreeState (by height)", lambda: self.test_get_tree_state_by_height(zs, ls)), @@ -925,7 +936,7 @@ def test_get_taddress_txids(self, zs, ls): assert_equal(z_tx.data, l_tx.data) assert_equal(z_tx.height, l_tx.height) - def test_get_taddress_txids_lower(self, zs, ls): + def test_get_taddress_txids_tip_only(self, zs, ls): tip = self.nodes[0].getblockcount() req = service_pb2.TransparentAddressBlockFilter( address=self.taddr, @@ -941,7 +952,7 @@ def test_get_taddress_txids_lower(self, zs, ls): assert_equal(z_tx.data, l_tx.data) assert_equal(z_tx.height, l_tx.height) - def test_get_taddress_txids_upper(self, zs, ls): + def test_get_taddress_txids_genesis_only(self, zs, ls): req = service_pb2.TransparentAddressBlockFilter( address=self.taddr, range=service_pb2.BlockRange( @@ -1073,7 +1084,7 @@ def test_get_address_utxos_stream(self, zs, ls): assert_equal(z_u.height, l_u.height) # ------------------------------------------------------------------------- - # Shielded transaction tests (blocks 201–209) + # Shielded transaction tests (the shielded fixture range) # # Every block in the shielded range has at least one shielded component # (Sapling spend/output or Orchard action), so vtx must be non-empty and @@ -1112,9 +1123,9 @@ def test_get_block_nullifiers_t_to_sapling(self, zs, ls): assert_equal(z, l) def test_get_block_range_shielded(self, zs, ls): - """All blocks in the shielded range (202–208) must have matching, non-empty vtx.""" - start = self.t_to_sapling_height # 202 - end = self.orchard_to_t_height # 208 + """All blocks in the shielded range must have matching, non-empty vtx.""" + start = self.t_to_sapling_height + end = self.orchard_to_t_height req = service_pb2.BlockRange( start=service_pb2.BlockID(height=start, hash=b""), end=service_pb2.BlockID(height=end, hash=b""), @@ -1185,7 +1196,7 @@ def test_get_transaction_sapling_to_sapling(self, zs, ls): self._assert_transaction_match( zs, ls, self.sapling_to_sapling_txid, self.sapling_to_sapling_height) - # -- Orchard → Orchard (block 205) -- + # -- Orchard → Orchard (block 206) -- def test_get_block_orchard_to_orchard(self, zs, ls): """Block with an Orchard→Orchard spend must have matching, non-empty vtx.""" @@ -1209,7 +1220,7 @@ def test_get_transaction_sapling_to_orchard(self, zs, ls): self._assert_transaction_match( zs, ls, self.sapling_to_orchard_txid, self.sapling_to_orchard_height) - # -- Orchard → Sapling (block 206) -- + # -- Orchard → Sapling (block 207) -- def test_get_block_orchard_to_sapling(self, zs, ls): """Block with an Orchard→Sapling (cross-pool) tx must have matching, non-empty vtx.""" @@ -1221,7 +1232,7 @@ def test_get_transaction_orchard_to_sapling(self, zs, ls): self._assert_transaction_match( zs, ls, self.orchard_to_sapling_txid, self.orchard_to_sapling_height) - # -- Sapling → t (block 207) -- + # -- Sapling → t (block 208) -- def test_get_block_sapling_to_t(self, zs, ls): """Block with a Sapling→t tx must have matching, non-empty vtx (Sapling spend present).""" @@ -1233,7 +1244,7 @@ def test_get_transaction_sapling_to_t(self, zs, ls): self._assert_transaction_match( zs, ls, self.sapling_to_t_txid, self.sapling_to_t_height) - # -- Orchard → t (block 208) -- + # -- Orchard → t (block 209) -- def test_get_block_orchard_to_t(self, zs, ls): """Block with an Orchard→t tx must have matching, non-empty vtx (Orchard action present).""" From 838f35fbfba85f584d7abd93192860b861168bd3 Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 23 Apr 2026 18:32:54 -0300 Subject: [PATCH 10/24] Address PR review feedback for grpc parity test --- .github/workflows/ci.yml | 33 ++++++++++++----------- doc/book/src/dev/grpc-comparison.md | 11 ++++++++ doc/book/src/user/running-tests.md | 42 +++++++---------------------- pyproject.toml | 4 +-- qa/rpc-tests/grpc_comparison.py | 5 ++-- qa/rpc-tests/test_framework/util.py | 4 +++ uv.lock | 4 +-- 7 files changed, 48 insertions(+), 55 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d9f18a327..d74ba7a38 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -650,18 +650,19 @@ jobs: with: python-version: ${{ needs.setup.outputs.python_version }} - - name: Cache Python dependencies for RPC tests + - name: Cache uv project environment for RPC tests uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 with: enableCrossOsArchive: true - path: venv - key: test-rpc-venv-${{ matrix.name }}-py${{ needs.setup.outputs.python_version }} + path: .venv + key: test-rpc-venv-${{ matrix.name }}-py${{ needs.setup.outputs.python_version }}-${{ hashFiles('pyproject.toml', 'uv.lock') }} - - name: Get Python dependencies for RPC tests + - name: Install uv + run: python3 -m pip install uv + + - name: Sync Python dependencies for RPC tests run: | - python3 -m venv ./venv - . ./venv/bin/activate - pip install zmq asyncio base58 toml embit grpcio protobuf + uv sync --frozen test-rpc: name: RPC tests ${{ matrix.platform }} ${{ matrix.backend }} ${{ matrix.shard }}${{ matrix.required_suffix }} @@ -727,18 +728,19 @@ jobs: with: python-version: ${{ needs.setup.outputs.python_version }} - - name: Cache Python dependencies for RPC tests + - name: Cache uv project environment for RPC tests uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 with: enableCrossOsArchive: true - path: venv - key: test-rpc-venv-${{ matrix.name }}-py${{ needs.setup.outputs.python_version }} + path: .venv + key: test-rpc-venv-${{ matrix.name }}-py${{ needs.setup.outputs.python_version }}-${{ hashFiles('pyproject.toml', 'uv.lock') }} + + - name: Install uv + run: python3 -m pip install uv - - name: Get Python dependencies for RPC tests if not cached + - name: Sync Python dependencies for RPC tests run: | - python3 -m venv ./venv - . ./venv/bin/activate - pip install zmq asyncio base58 toml embit grpcio protobuf + uv sync --frozen - name: Download zebrad artifact uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 @@ -836,8 +838,7 @@ jobs: if all_passed == False: sys.exit(1) EOF - . ./venv/bin/activate - ZALLET_BACKEND=${{ matrix.backend }} ZEBRAD=$(pwd)/${{ format('src/zebrad{0}', matrix.file_ext) }} ZAINOD=$(pwd)/${{ format('src/zainod{0}', matrix.file_ext) }} ZALLET=$(pwd)/${{ format('src/zallet{0}', matrix.file_ext) }} LIGHTWALLETD=$(pwd)/${{ format('src/lightwalletd{0}', matrix.file_ext) }} SRC_DIR=$(pwd) python3 ./subclass.py + ZALLET_BACKEND=${{ matrix.backend }} ZEBRAD=$(pwd)/${{ format('src/zebrad{0}', matrix.file_ext) }} ZAINOD=$(pwd)/${{ format('src/zainod{0}', matrix.file_ext) }} ZALLET=$(pwd)/${{ format('src/zallet{0}', matrix.file_ext) }} LIGHTWALLETD=$(pwd)/${{ format('src/lightwalletd{0}', matrix.file_ext) }} SRC_DIR=$(pwd) uv run python3 ./subclass.py - uses: ./.github/actions/finish-interop if: always() diff --git a/doc/book/src/dev/grpc-comparison.md b/doc/book/src/dev/grpc-comparison.md index bac0307df..5ad87e053 100644 --- a/doc/book/src/dev/grpc-comparison.md +++ b/doc/book/src/dev/grpc-comparison.md @@ -48,6 +48,11 @@ Those constraints are why the final test uses: The final structure came from working through a series of failures. +Some of these failures likely indicate upstream bugs rather than intended +behavior. When they are reproducible in isolation, they should be tracked +against the relevant implementation (`zcashd`, Zaino, or Zebra), and any +protocol ambiguity should be clarified in the corresponding specification. + ### One-wallet chain construction was not reliable The first versions tried to build the whole fixture from a single standalone @@ -122,6 +127,8 @@ state it expects is not fully available yet. The final test therefore: 4. then waits for both indexers to catch up. This ordering is required, not cosmetic. +It also appears to expose a Zaino startup-order dependency that should be +tracked separately from the parity test itself. ## The final fixture design @@ -209,6 +216,10 @@ Those differences are normalized away so the test focuses on the actual parity target: whether both services agree on the chain and the shielded contents that wallet clients care about. +If a divergence turns out to reflect an underspecified part of the protocol +rather than an implementation bug, the right long-term fix is to clarify that +behavior in the relevant spec and then align the implementations to it. + ## Maintenance guidance If this test starts failing again, the safest order of operations is: diff --git a/doc/book/src/user/running-tests.md b/doc/book/src/user/running-tests.md index a86c585a1..cbf9f35ab 100644 --- a/doc/book/src/user/running-tests.md +++ b/doc/book/src/user/running-tests.md @@ -22,43 +22,19 @@ export LIGHTWALLETD=/path/to/lightwalletd The `zmq`, `toml`, `base58`, `grpcio`, and `protobuf` Python libraries are required. -#### With uv (recommended) - ```bash uv sync ``` -#### Without uv - -On Ubuntu or Debian-based distributions: - -```bash -sudo apt-get install python3-zmq python3-base58 python3-toml -pip3 install grpcio protobuf -``` - -On macOS or other platforms: - -```bash -python3 -m venv venv -. venv/bin/activate -pip3 install pyzmq base58 toml grpcio protobuf -``` +See the [`uv` installation instructions](https://docs.astral.sh/uv/getting-started/installation/) +if it is not already installed. ## Running the full test suite -With uv: - ```bash uv run ./qa/zcash/full_test_suite.py ``` -Without uv: - -```bash -./qa/zcash/full_test_suite.py -``` - ## Running the gRPC parity tests The gRPC parity tests run [`zainod`] and [`lightwalletd`] side-by-side against @@ -85,19 +61,19 @@ uv run ./qa/zcash/grpc_comparison_tests.py --nocleanup Run a single test: ```bash -./qa/pull-tester/rpc-tests.py +uv run ./qa/pull-tester/rpc-tests.py ``` Run multiple specific tests: ```bash -./qa/pull-tester/rpc-tests.py +uv run ./qa/pull-tester/rpc-tests.py ``` Run all regression tests: ```bash -./qa/pull-tester/rpc-tests.py +uv run ./qa/pull-tester/rpc-tests.py ``` ## Parallel execution @@ -105,7 +81,7 @@ Run all regression tests: By default, tests run in parallel with 4 jobs. To change the number of jobs: ```bash -./qa/pull-tester/rpc-tests.py --jobs=n +uv run ./qa/pull-tester/rpc-tests.py --jobs=n ``` ## Test runner options @@ -126,13 +102,13 @@ By default, tests run in parallel with 4 jobs. To change the number of jobs: Set `PYTHON_DEBUG=1` for debug output: ```bash -PYTHON_DEBUG=1 qa/pull-tester/rpc-tests.py wallet +PYTHON_DEBUG=1 uv run ./qa/pull-tester/rpc-tests.py wallet ``` -For real-time output, run a test directly with `python3`: +For real-time output, run a test directly with `uv run python3`: ```bash -python3 qa/rpc-tests/wallet.py +uv run python3 qa/rpc-tests/wallet.py ``` ## Cache management diff --git a/pyproject.toml b/pyproject.toml index bcabfe758..05fc1c56f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,8 +5,8 @@ requires-python = "==3.11.*" dependencies = [ "base58", "embit>=0.8.0", - "grpcio", - "protobuf", + "grpcio>=1.80.0", + "protobuf>=6.31.1", "pyzmq", "toml", ] diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index 049c6315f..3b93eaa3b 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -66,6 +66,7 @@ start_nodes, start_zcashd_node, stop_zcashd_node, + tarfile_extractall, wait_and_assert_operationid_status, zaino_grpc_port, ) @@ -347,13 +348,13 @@ def _persist_framework_cache(self): def _restore_framework_cache(self, cache_path): with tarfile.open(os.path.join(cache_path, 'zebrad_state.tar.gz'), 'r:gz') as tf: - tf.extractall(self.options.tmpdir) + tarfile_extractall(tf, self.options.tmpdir) def _restore_stage1_cache(self, cache_path): self._load_cached_metadata(cache_path) for index in range(2): with tarfile.open(os.path.join(cache_path, 'zcashd%d_state.tar.gz' % index), 'r:gz') as tf: - tf.extractall(self.options.tmpdir) + tarfile_extractall(tf, self.options.tmpdir) def _start_build_nodes(self): return [ diff --git a/qa/rpc-tests/test_framework/util.py b/qa/rpc-tests/test_framework/util.py index 870a4be5c..3323ce8ab 100644 --- a/qa/rpc-tests/test_framework/util.py +++ b/qa/rpc-tests/test_framework/util.py @@ -619,6 +619,9 @@ def init_persistent(cache_behavior): if os.path.exists(wallet_tgz_filename): with tarfile.open(wallet_tgz_filename, "r:gz") as wallet_tgz_file: tarfile_extractall(wallet_tgz_file, os.path.join(to_dir, "wallet.dat")) + else: + print('Warning: wallet cache missing for cache behavior %s, node %d; starting without wallet cache' + % (cache_behavior, i)) # Copy in per-node wallet config and update zcash.conf to set the # clock offsets correctly. @@ -1928,6 +1931,7 @@ def write_lwd_conf(datadir, node_rpc_port): """Write a minimal zcash.conf for lightwalletd to connect to a Zebrad node.""" conf_path = os.path.join(datadir, "zcash.conf") with open(conf_path, "w", encoding="utf8") as f: + f.write("regtest=1\n") f.write("rpcbind=127.0.0.1\n") f.write(f"rpcport={node_rpc_port}\n") f.write("rpcuser=test\n") diff --git a/uv.lock b/uv.lock index 3d30f29a1..3248b47c0 100644 --- a/uv.lock +++ b/uv.lock @@ -157,8 +157,8 @@ dependencies = [ requires-dist = [ { name = "base58" }, { name = "embit", specifier = ">=0.8.0" }, - { name = "grpcio" }, - { name = "protobuf" }, + { name = "grpcio", specifier = ">=1.80.0" }, + { name = "protobuf", specifier = ">=6.31.1" }, { name = "pyzmq" }, { name = "toml" }, ] From b3e7dbdd6532f2806d88af4a4a52fab6c9499af7 Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 23 Apr 2026 19:56:32 -0300 Subject: [PATCH 11/24] Clarify upstream bug follow-up in grpc comparison docs --- doc/book/src/dev/grpc-comparison.md | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/doc/book/src/dev/grpc-comparison.md b/doc/book/src/dev/grpc-comparison.md index 5ad87e053..db9520588 100644 --- a/doc/book/src/dev/grpc-comparison.md +++ b/doc/book/src/dev/grpc-comparison.md @@ -33,7 +33,8 @@ Several interacting constraints shaped the final fixture: - Zebrad and standalone `zcashd` do not build the fixture chain together over P2P in this harness, so the test submits raw blocks explicitly. - Zainod must only start after Zebrad has loaded the full chain state, or it can - fail during initial indexing. + fail during initial indexing. That behavior appears to be a Zaino bug: Zainod + should wait for Zebra instead of crashing during startup. - Regenerating proof-heavy shielded transactions on every run is too slow for a useful parity test. @@ -48,10 +49,11 @@ Those constraints are why the final test uses: The final structure came from working through a series of failures. -Some of these failures likely indicate upstream bugs rather than intended +Some of these failures appear to be upstream bugs rather than intended behavior. When they are reproducible in isolation, they should be tracked against the relevant implementation (`zcashd`, Zaino, or Zebra), and any -protocol ambiguity should be clarified in the corresponding specification. +protocol ambiguity should be clarified in the corresponding specification or +ZIP before the implementations are updated. ### One-wallet chain construction was not reliable @@ -61,7 +63,8 @@ The first versions tried to build the whole fixture from a single standalone - Sapling funds created on-chain were not always surfaced as spendable to the next `z_sendmany` call. - Orchard cross-pool and follow-on Orchard spends could crash in wallet anchor - handling. + handling. That looks like a `zcashd` bug and should be reported there if it + can be reproduced outside this fixture. - The wallet would often choose the same note pool for multiple test transactions, leading to duplicate-nullifier or "insufficient funds" errors. @@ -91,7 +94,8 @@ steps instead of a single minimal funding transaction for each pool. ### ZIP 317 fee assumptions mattered Some cross-pool transactions that looked simple on paper were not satisfiable -with a hard-coded `ZIP_317_FEE`. +with a hard-coded `ZIP_317_FEE`. That also appears to be a `zcashd` wallet-side +issue rather than an intended invariant of the fixture. The fix was to compute fees for the actual transaction shape where needed using `conventional_fee(...)`, while still keeping `ZIP_317_FEE` for the simpler @@ -127,8 +131,8 @@ state it expects is not fully available yet. The final test therefore: 4. then waits for both indexers to catch up. This ordering is required, not cosmetic. -It also appears to expose a Zaino startup-order dependency that should be -tracked separately from the parity test itself. +It also appears to expose a Zaino startup bug that should be tracked separately +from the parity test itself. ## The final fixture design @@ -218,7 +222,9 @@ wallet clients care about. If a divergence turns out to reflect an underspecified part of the protocol rather than an implementation bug, the right long-term fix is to clarify that -behavior in the relevant spec and then align the implementations to it. +behavior in the relevant spec. For gRPC behavior, that likely means ZIP 307 or +the lightwallet protocol itself. After that, the implementation that does not +match the clarified spec should be fixed. ## Maintenance guidance From 3b37fae95d02d24ada931f5727cb2e9b4a23a785 Mon Sep 17 00:00:00 2001 From: Pacu Date: Fri, 24 Apr 2026 13:33:58 -0300 Subject: [PATCH 12/24] Tighten shielded GetBlockRange parity checks --- qa/rpc-tests/grpc_comparison.py | 80 +++++++++++++++++++++++++++++++-- 1 file changed, 76 insertions(+), 4 deletions(-) diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index 3b93eaa3b..c5d623ec6 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -227,6 +227,72 @@ def _normalize_shielded_compact_block(block): return normalized +def _shielded_compact_block_for_range_check(block): + """ + Prepare a shielded CompactBlock for GetBlockRange parity checks. + + GetBlockRange is intended to detect full streamed compact-block + divergences, so only protoVersion is normalized here. The vtx payload is + otherwise compared exactly as returned by each implementation. + """ + normalized = compact_formats_pb2.CompactBlock() + normalized.CopyFrom(block) + normalized.protoVersion = 0 + return normalized + + +def _compact_tx_summary(tx): + """Return a short one-line summary of a CompactTx for failure messages.""" + return ( + "index=%d txid=%s spends=%d outputs=%d actions=%d" + % (tx.index, tx.txid.hex(), len(tx.spends), len(tx.outputs), len(tx.actions)) + ) + + +def _compact_block_range_mismatch_message(z_block, l_block): + """ + Summarize the first useful difference between two GetBlockRange blocks. + + Keep this compact enough for CI logs while still pointing developers at the + exact block and CompactTx entry that diverged. + """ + lines = [ + "GetBlockRange shielded mismatch at height %d:" % z_block.height, + " Zainod: hash=%s prevHash=%s vtx=%d" + % (z_block.hash.hex(), z_block.prevHash.hex(), len(z_block.vtx)), + " Lightwalletd: hash=%s prevHash=%s vtx=%d" + % (l_block.hash.hex(), l_block.prevHash.hex(), len(l_block.vtx)), + ] + + if z_block.hash != l_block.hash or z_block.prevHash != l_block.prevHash: + return "\n".join(lines) + + shared_len = min(len(z_block.vtx), len(l_block.vtx)) + for index in range(shared_len): + z_tx = z_block.vtx[index] + l_tx = l_block.vtx[index] + if z_tx != l_tx: + lines.extend([ + " First differing CompactTx:", + " Zainod[%d]: %s" % (index, _compact_tx_summary(z_tx)), + " Lightwalletd[%d]: %s" % (index, _compact_tx_summary(l_tx)), + ]) + return "\n".join(lines) + + if len(z_block.vtx) != len(l_block.vtx): + extra_side = "Zainod" if len(z_block.vtx) > len(l_block.vtx) else "Lightwalletd" + extra_txs = z_block.vtx[shared_len:] if len(z_block.vtx) > len(l_block.vtx) else l_block.vtx[shared_len:] + lines.append(" Extra CompactTx entries on %s:" % extra_side) + for tx in extra_txs[:3]: + lines.append(" %s" % _compact_tx_summary(tx)) + if len(extra_txs) > 3: + lines.append(" ... %d more" % (len(extra_txs) - 3)) + return "\n".join(lines) + + lines.append(" Blocks differ, but no shorter structured summary was found.") + return "\n".join(lines) + + class GrpcComparisonTest(BitcoinTestFramework): def __init__(self): @@ -1124,22 +1190,28 @@ def test_get_block_nullifiers_t_to_sapling(self, zs, ls): assert_equal(z, l) def test_get_block_range_shielded(self, zs, ls): - """All blocks in the shielded range must have matching, non-empty vtx.""" + """ + All blocks in the shielded range must have matching, non-empty vtx. + + This range check intentionally keeps the streamed CompactTx entries + intact so it can detect GetBlockRange divergences between Zainod and + Lightwalletd. + """ start = self.t_to_sapling_height end = self.orchard_to_t_height req = service_pb2.BlockRange( start=service_pb2.BlockID(height=start, hash=b""), end=service_pb2.BlockID(height=end, hash=b""), ) - z_blocks = [_normalize_shielded_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] - l_blocks = [_normalize_shielded_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] + z_blocks = [_shielded_compact_block_for_range_check(b) for b in _collect_stream(zs.GetBlockRange(req))] + l_blocks = [_shielded_compact_block_for_range_check(b) for b in _collect_stream(ls.GetBlockRange(req))] assert_equal(len(z_blocks), len(l_blocks)) for z_b, l_b in zip(z_blocks, l_blocks): assert_true(len(z_b.vtx) > 0, "Zainod returned empty vtx for shielded block at height %d" % z_b.height) assert_true(len(l_b.vtx) > 0, "Lightwalletd returned empty vtx for shielded block at height %d" % l_b.height) - assert_equal(z_b, l_b) + assert_equal(z_b, l_b, _compact_block_range_mismatch_message(z_b, l_b)) def test_get_transaction_t_to_sapling(self, zs, ls): """t→Sapling transaction bytes and height must match across both indexers.""" From b959b587f4e52e226ec51768f3d2983d7f65a5bf Mon Sep 17 00:00:00 2001 From: Pacu Date: Fri, 24 Apr 2026 13:48:04 -0300 Subject: [PATCH 13/24] Make grpc compact block parity checks fully strict --- doc/book/src/dev/grpc-comparison.md | 21 ++-- qa/rpc-tests/grpc_comparison.py | 152 +++++++++------------------- 2 files changed, 55 insertions(+), 118 deletions(-) diff --git a/doc/book/src/dev/grpc-comparison.md b/doc/book/src/dev/grpc-comparison.md index db9520588..8041cad17 100644 --- a/doc/book/src/dev/grpc-comparison.md +++ b/doc/book/src/dev/grpc-comparison.md @@ -204,21 +204,16 @@ That part exists because the builder chain and the validator chain are not being grown together live over P2P. The checkpoint-assisted setup made Zebrad replay stable enough for the indexer comparison to become routine. -## Normalization rules are part of the design +## Compact block parity is strict -The parity test does not assert byte-for-byte identity for every protobuf field. -Instead, it compares the parts that are intended to match and normalizes the -known implementation-specific differences. +The parity test now compares `CompactBlock` responses exactly as returned by +each implementation. It does not normalize `protoVersion`, omit transparent +coinbase compact transactions, or otherwise rewrite the compact block payload +before comparing it. -The most important example is compact block normalization: - -- Zainod and Lightwalletd can report different `protoVersion` values. -- Lightwalletd may include transparent-only compact transactions on shielded - blocks that Zainod omits. - -Those differences are normalized away so the test focuses on the actual parity -target: whether both services agree on the chain and the shielded contents that -wallet clients care about. +That makes the failures noisier, but it is deliberate: any divergence between +Zainod and Lightwalletd should be surfaced directly in test output so it can be +understood and fixed rather than normalized away. If a divergence turns out to reflect an underspecified part of the protocol rather than an implementation bug, the right long-term fix is to clarify that diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index c5d623ec6..d89d9ca01 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -168,77 +168,11 @@ def _collect_stream(streaming_call): return results -def _normalize_compact_block(block): - """ - Normalize a CompactBlock for header-level comparison. - - Known divergences between Zainod and Lightwalletd (with Zebrad as backend): - - protoVersion: Lightwalletd sets 1, Zainod sets 4. Zeroed out. - - vtx: Lightwalletd includes transparent coinbase transactions in compact - blocks; Zainod omits them (only shielded transactions appear). Cleared. - - The header fields (height, hash, prevHash, time) are authoritative and - must agree between both implementations. - """ - normalized = compact_formats_pb2.CompactBlock() - normalized.height = block.height - normalized.hash = block.hash - normalized.prevHash = block.prevHash - normalized.time = block.time - # chainMetadata is also comparable; copy it if present - if block.HasField("chainMetadata"): - normalized.chainMetadata.CopyFrom(block.chainMetadata) - return normalized - - -def _normalize_shielded_compact_block(block): - """ - Normalize a CompactBlock that contains shielded transactions for full - comparison including vtx. - - Blocks in the shielded fixture range must have identical, non-empty - shielded CompactTx entries in both Zainod and Lightwalletd. - - Known divergence: - - Lightwalletd still includes the transparent coinbase CompactTx in these - blocks, while Zainod omits transparent-only transactions. Filter those - out before comparing the remaining shielded txs. - - The only remaining implementation-specific field zeroed here is - protoVersion. - """ - normalized = compact_formats_pb2.CompactBlock() - normalized.height = block.height - normalized.hash = block.hash - normalized.prevHash = block.prevHash - normalized.time = block.time - normalized.protoVersion = 0 - for tx in block.vtx: - if len(tx.spends) > 0 or len(tx.outputs) > 0 or len(tx.actions) > 0: - normalized_tx = normalized.vtx.add() - normalized_tx.index = tx.index - normalized_tx.txid = tx.txid - normalized_tx.fee = tx.fee - normalized_tx.spends.extend(tx.spends) - normalized_tx.outputs.extend(tx.outputs) - normalized_tx.actions.extend(tx.actions) - if block.HasField("chainMetadata"): - normalized.chainMetadata.CopyFrom(block.chainMetadata) - return normalized - - -def _shielded_compact_block_for_range_check(block): - """ - Prepare a shielded CompactBlock for GetBlockRange parity checks. - - GetBlockRange is intended to detect full streamed compact-block - divergences, so only protoVersion is normalized here. The vtx payload is - otherwise compared exactly as returned by each implementation. - """ - normalized = compact_formats_pb2.CompactBlock() - normalized.CopyFrom(block) - normalized.protoVersion = 0 - return normalized +def _strict_compact_block(block): + """Return a CompactBlock exactly as provided by the implementation.""" + strict = compact_formats_pb2.CompactBlock() + strict.CopyFrom(block) + return strict def _compact_tx_summary(tx): @@ -249,19 +183,19 @@ def _compact_tx_summary(tx): ) -def _compact_block_range_mismatch_message(z_block, l_block): +def _compact_block_mismatch_message(label, z_block, l_block): """ - Summarize the first useful difference between two GetBlockRange blocks. + Summarize the first useful difference between two CompactBlocks. Keep this compact enough for CI logs while still pointing developers at the exact block and CompactTx entry that diverged. """ lines = [ - "GetBlockRange shielded mismatch at height %d:" % z_block.height, - " Zainod: hash=%s prevHash=%s vtx=%d" - % (z_block.hash.hex(), z_block.prevHash.hex(), len(z_block.vtx)), - " Lightwalletd: hash=%s prevHash=%s vtx=%d" - % (l_block.hash.hex(), l_block.prevHash.hex(), len(l_block.vtx)), + "%s mismatch at height %d:" % (label, z_block.height), + " Zainod: protoVersion=%d hash=%s prevHash=%s vtx=%d" + % (z_block.protoVersion, z_block.hash.hex(), z_block.prevHash.hex(), len(z_block.vtx)), + " Lightwalletd: protoVersion=%d hash=%s prevHash=%s vtx=%d" + % (l_block.protoVersion, l_block.hash.hex(), l_block.prevHash.hex(), len(l_block.vtx)), ] if z_block.hash != l_block.hash or z_block.prevHash != l_block.prevHash: @@ -896,9 +830,9 @@ def test_get_latest_block(self, zs, ls): def test_get_block(self, zs, ls): req = service_pb2.BlockID(height=5, hash=b"") - z = _normalize_compact_block(zs.GetBlock(req)) - l = _normalize_compact_block(ls.GetBlock(req)) - assert_equal(z, l) + z = _strict_compact_block(zs.GetBlock(req)) + l = _strict_compact_block(ls.GetBlock(req)) + assert_equal(z, l, _compact_block_mismatch_message("GetBlock", z, l)) def test_get_block_out_of_bounds(self, zs, ls): # Height beyond chain tip — both must respond with a gRPC error. @@ -919,27 +853,31 @@ def test_get_block_out_of_bounds(self, zs, ls): def test_get_block_nullifiers(self, zs, ls): req = service_pb2.BlockID(height=5, hash=b"") - z = _normalize_compact_block(zs.GetBlockNullifiers(req)) - l = _normalize_compact_block(ls.GetBlockNullifiers(req)) - assert_equal(z, l) + z = _strict_compact_block(zs.GetBlockNullifiers(req)) + l = _strict_compact_block(ls.GetBlockNullifiers(req)) + assert_equal(z, l, _compact_block_mismatch_message("GetBlockNullifiers", z, l)) def test_get_block_range(self, zs, ls): req = service_pb2.BlockRange( start=service_pb2.BlockID(height=1, hash=b""), end=service_pb2.BlockID(height=10, hash=b""), ) - z_blocks = [_normalize_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] - l_blocks = [_normalize_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] - assert_equal(z_blocks, l_blocks) + z_blocks = [_strict_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] + l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] + assert_equal(len(z_blocks), len(l_blocks)) + for z_b, l_b in zip(z_blocks, l_blocks): + assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRange", z_b, l_b)) def test_get_block_range_reverse(self, zs, ls): req = service_pb2.BlockRange( start=service_pb2.BlockID(height=10, hash=b""), end=service_pb2.BlockID(height=1, hash=b""), ) - z_blocks = [_normalize_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] - l_blocks = [_normalize_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] - assert_equal(z_blocks, l_blocks) + z_blocks = [_strict_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] + l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] + assert_equal(len(z_blocks), len(l_blocks)) + for z_b, l_b in zip(z_blocks, l_blocks): + assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRange reverse", z_b, l_b)) def test_get_block_range_out_of_bounds(self, zs, ls): # Both must respond with a gRPC error when the range exceeds the chain tip. @@ -966,18 +904,22 @@ def test_get_block_range_nullifiers(self, zs, ls): start=service_pb2.BlockID(height=1, hash=b""), end=service_pb2.BlockID(height=10, hash=b""), ) - z_blocks = [_normalize_compact_block(b) for b in _collect_stream(zs.GetBlockRangeNullifiers(req))] - l_blocks = [_normalize_compact_block(b) for b in _collect_stream(ls.GetBlockRangeNullifiers(req))] - assert_equal(z_blocks, l_blocks) + z_blocks = [_strict_compact_block(b) for b in _collect_stream(zs.GetBlockRangeNullifiers(req))] + l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRangeNullifiers(req))] + assert_equal(len(z_blocks), len(l_blocks)) + for z_b, l_b in zip(z_blocks, l_blocks): + assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRangeNullifiers", z_b, l_b)) def test_get_block_range_nullifiers_reverse(self, zs, ls): req = service_pb2.BlockRange( start=service_pb2.BlockID(height=10, hash=b""), end=service_pb2.BlockID(height=1, hash=b""), ) - z_blocks = [_normalize_compact_block(b) for b in _collect_stream(zs.GetBlockRangeNullifiers(req))] - l_blocks = [_normalize_compact_block(b) for b in _collect_stream(ls.GetBlockRangeNullifiers(req))] - assert_equal(z_blocks, l_blocks) + z_blocks = [_strict_compact_block(b) for b in _collect_stream(zs.GetBlockRangeNullifiers(req))] + l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRangeNullifiers(req))] + assert_equal(len(z_blocks), len(l_blocks)) + for z_b, l_b in zip(z_blocks, l_blocks): + assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRangeNullifiers reverse", z_b, l_b)) def test_get_transaction(self, zs, ls): # self.txid is a hex string; the TxFilter expects bytes in little-endian order @@ -1160,13 +1102,13 @@ def test_get_address_utxos_stream(self, zs, ls): def _assert_shielded_block_match(self, zs, ls, height, label): req = service_pb2.BlockID(height=height, hash=b"") - z = _normalize_shielded_compact_block(zs.GetBlock(req)) - l = _normalize_shielded_compact_block(ls.GetBlock(req)) + z = _strict_compact_block(zs.GetBlock(req)) + l = _strict_compact_block(ls.GetBlock(req)) assert_true(len(z.vtx) > 0, "Zainod returned empty vtx for %s block at height %d" % (label, height)) assert_true(len(l.vtx) > 0, "Lightwalletd returned empty vtx for %s block at height %d" % (label, height)) - assert_equal(z, l) + assert_equal(z, l, _compact_block_mismatch_message("GetBlock %s" % label, z, l)) def _assert_transaction_match(self, zs, ls, txid_hex, expected_height): txid_bytes = bytes.fromhex(txid_hex)[::-1] @@ -1185,9 +1127,9 @@ def test_get_block_t_to_sapling(self, zs, ls): def test_get_block_nullifiers_t_to_sapling(self, zs, ls): req = service_pb2.BlockID(height=self.t_to_sapling_height, hash=b"") - z = _normalize_shielded_compact_block(zs.GetBlockNullifiers(req)) - l = _normalize_shielded_compact_block(ls.GetBlockNullifiers(req)) - assert_equal(z, l) + z = _strict_compact_block(zs.GetBlockNullifiers(req)) + l = _strict_compact_block(ls.GetBlockNullifiers(req)) + assert_equal(z, l, _compact_block_mismatch_message("GetBlockNullifiers t→Sapling", z, l)) def test_get_block_range_shielded(self, zs, ls): """ @@ -1203,15 +1145,15 @@ def test_get_block_range_shielded(self, zs, ls): start=service_pb2.BlockID(height=start, hash=b""), end=service_pb2.BlockID(height=end, hash=b""), ) - z_blocks = [_shielded_compact_block_for_range_check(b) for b in _collect_stream(zs.GetBlockRange(req))] - l_blocks = [_shielded_compact_block_for_range_check(b) for b in _collect_stream(ls.GetBlockRange(req))] + z_blocks = [_strict_compact_block(b) for b in _collect_stream(zs.GetBlockRange(req))] + l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] assert_equal(len(z_blocks), len(l_blocks)) for z_b, l_b in zip(z_blocks, l_blocks): assert_true(len(z_b.vtx) > 0, "Zainod returned empty vtx for shielded block at height %d" % z_b.height) assert_true(len(l_b.vtx) > 0, "Lightwalletd returned empty vtx for shielded block at height %d" % l_b.height) - assert_equal(z_b, l_b, _compact_block_range_mismatch_message(z_b, l_b)) + assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRange shielded", z_b, l_b)) def test_get_transaction_t_to_sapling(self, zs, ls): """t→Sapling transaction bytes and height must match across both indexers.""" From 8f64095a1e330a1209a30a058093519b177863e2 Mon Sep 17 00:00:00 2001 From: Pacu Date: Sun, 26 Apr 2026 12:25:35 -0300 Subject: [PATCH 14/24] Show unified diffs for grpc compact block mismatches --- qa/rpc-tests/grpc_comparison.py | 52 +++++++++++++++++++++++++++------ 1 file changed, 43 insertions(+), 9 deletions(-) diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index d89d9ca01..5bdee78b7 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -50,9 +50,11 @@ import os import tarfile import time +from difflib import unified_diff from decimal import Decimal import grpc +from google.protobuf import text_format from test_framework.config import ZebraArgs from test_framework.test_framework import BitcoinTestFramework @@ -183,6 +185,24 @@ def _compact_tx_summary(tx): ) +def _protobuf_unified_diff(z_block, l_block, label, max_lines=200): + """Render a unified diff for two protobuf messages.""" + z_text = text_format.MessageToString(z_block) + l_text = text_format.MessageToString(l_block) + diff_lines = list(unified_diff( + z_text.splitlines(), + l_text.splitlines(), + fromfile="%s (Zainod)" % label, + tofile="%s (Lightwalletd)" % label, + lineterm="", + )) + if not diff_lines: + return " No unified diff available." + if len(diff_lines) > max_lines: + diff_lines = diff_lines[:max_lines] + ["... diff truncated after %d lines ..." % max_lines] + return "\n".join(diff_lines) + + def _compact_block_mismatch_message(label, z_block, l_block): """ Summarize the first useful difference between two CompactBlocks. @@ -199,6 +219,8 @@ def _compact_block_mismatch_message(label, z_block, l_block): ] if z_block.hash != l_block.hash or z_block.prevHash != l_block.prevHash: + lines.append("") + lines.append(_protobuf_unified_diff(z_block, l_block, label)) return "\n".join(lines) shared_len = min(len(z_block.vtx), len(l_block.vtx)) @@ -211,6 +233,8 @@ def _compact_block_mismatch_message(label, z_block, l_block): " Zainod[%d]: %s" % (index, _compact_tx_summary(z_tx)), " Lightwalletd[%d]: %s" % (index, _compact_tx_summary(l_tx)), ]) + lines.append("") + lines.append(_protobuf_unified_diff(z_block, l_block, label)) return "\n".join(lines) if len(z_block.vtx) != len(l_block.vtx): @@ -221,12 +245,22 @@ def _compact_block_mismatch_message(label, z_block, l_block): lines.append(" %s" % _compact_tx_summary(tx)) if len(extra_txs) > 3: lines.append(" ... %d more" % (len(extra_txs) - 3)) + lines.append("") + lines.append(_protobuf_unified_diff(z_block, l_block, label)) return "\n".join(lines) lines.append(" Blocks differ, but no shorter structured summary was found.") + lines.append("") + lines.append(_protobuf_unified_diff(z_block, l_block, label)) return "\n".join(lines) +def _assert_compact_block_equal(label, z_block, l_block): + """Assert two CompactBlocks are identical, with a readable unified diff on failure.""" + if z_block != l_block: + raise AssertionError(_compact_block_mismatch_message(label, z_block, l_block)) + + class GrpcComparisonTest(BitcoinTestFramework): def __init__(self): @@ -832,7 +866,7 @@ def test_get_block(self, zs, ls): req = service_pb2.BlockID(height=5, hash=b"") z = _strict_compact_block(zs.GetBlock(req)) l = _strict_compact_block(ls.GetBlock(req)) - assert_equal(z, l, _compact_block_mismatch_message("GetBlock", z, l)) + _assert_compact_block_equal("GetBlock", z, l) def test_get_block_out_of_bounds(self, zs, ls): # Height beyond chain tip — both must respond with a gRPC error. @@ -855,7 +889,7 @@ def test_get_block_nullifiers(self, zs, ls): req = service_pb2.BlockID(height=5, hash=b"") z = _strict_compact_block(zs.GetBlockNullifiers(req)) l = _strict_compact_block(ls.GetBlockNullifiers(req)) - assert_equal(z, l, _compact_block_mismatch_message("GetBlockNullifiers", z, l)) + _assert_compact_block_equal("GetBlockNullifiers", z, l) def test_get_block_range(self, zs, ls): req = service_pb2.BlockRange( @@ -866,7 +900,7 @@ def test_get_block_range(self, zs, ls): l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] assert_equal(len(z_blocks), len(l_blocks)) for z_b, l_b in zip(z_blocks, l_blocks): - assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRange", z_b, l_b)) + _assert_compact_block_equal("GetBlockRange", z_b, l_b) def test_get_block_range_reverse(self, zs, ls): req = service_pb2.BlockRange( @@ -877,7 +911,7 @@ def test_get_block_range_reverse(self, zs, ls): l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRange(req))] assert_equal(len(z_blocks), len(l_blocks)) for z_b, l_b in zip(z_blocks, l_blocks): - assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRange reverse", z_b, l_b)) + _assert_compact_block_equal("GetBlockRange reverse", z_b, l_b) def test_get_block_range_out_of_bounds(self, zs, ls): # Both must respond with a gRPC error when the range exceeds the chain tip. @@ -908,7 +942,7 @@ def test_get_block_range_nullifiers(self, zs, ls): l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRangeNullifiers(req))] assert_equal(len(z_blocks), len(l_blocks)) for z_b, l_b in zip(z_blocks, l_blocks): - assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRangeNullifiers", z_b, l_b)) + _assert_compact_block_equal("GetBlockRangeNullifiers", z_b, l_b) def test_get_block_range_nullifiers_reverse(self, zs, ls): req = service_pb2.BlockRange( @@ -919,7 +953,7 @@ def test_get_block_range_nullifiers_reverse(self, zs, ls): l_blocks = [_strict_compact_block(b) for b in _collect_stream(ls.GetBlockRangeNullifiers(req))] assert_equal(len(z_blocks), len(l_blocks)) for z_b, l_b in zip(z_blocks, l_blocks): - assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRangeNullifiers reverse", z_b, l_b)) + _assert_compact_block_equal("GetBlockRangeNullifiers reverse", z_b, l_b) def test_get_transaction(self, zs, ls): # self.txid is a hex string; the TxFilter expects bytes in little-endian order @@ -1108,7 +1142,7 @@ def _assert_shielded_block_match(self, zs, ls, height, label): "Zainod returned empty vtx for %s block at height %d" % (label, height)) assert_true(len(l.vtx) > 0, "Lightwalletd returned empty vtx for %s block at height %d" % (label, height)) - assert_equal(z, l, _compact_block_mismatch_message("GetBlock %s" % label, z, l)) + _assert_compact_block_equal("GetBlock %s" % label, z, l) def _assert_transaction_match(self, zs, ls, txid_hex, expected_height): txid_bytes = bytes.fromhex(txid_hex)[::-1] @@ -1129,7 +1163,7 @@ def test_get_block_nullifiers_t_to_sapling(self, zs, ls): req = service_pb2.BlockID(height=self.t_to_sapling_height, hash=b"") z = _strict_compact_block(zs.GetBlockNullifiers(req)) l = _strict_compact_block(ls.GetBlockNullifiers(req)) - assert_equal(z, l, _compact_block_mismatch_message("GetBlockNullifiers t→Sapling", z, l)) + _assert_compact_block_equal("GetBlockNullifiers t→Sapling", z, l) def test_get_block_range_shielded(self, zs, ls): """ @@ -1153,7 +1187,7 @@ def test_get_block_range_shielded(self, zs, ls): "Zainod returned empty vtx for shielded block at height %d" % z_b.height) assert_true(len(l_b.vtx) > 0, "Lightwalletd returned empty vtx for shielded block at height %d" % l_b.height) - assert_equal(z_b, l_b, _compact_block_mismatch_message("GetBlockRange shielded", z_b, l_b)) + _assert_compact_block_equal("GetBlockRange shielded", z_b, l_b) def test_get_transaction_t_to_sapling(self, zs, ls): """t→Sapling transaction bytes and height must match across both indexers.""" From ea9deec7116cc9707a703a1b0cb56b875303a6ba Mon Sep 17 00:00:00 2001 From: Pacu Date: Sun, 26 Apr 2026 13:39:39 -0300 Subject: [PATCH 15/24] Use uv consistently in test documentation --- README.md | 14 ++----------- doc/book/src/dev/grpc-comparison.md | 6 ++++-- qa/README.md | 31 ++++++++++------------------- 3 files changed, 17 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index a170f45e3..de52ea3e4 100644 --- a/README.md +++ b/README.md @@ -27,6 +27,8 @@ codebase, with the Python test framework (and some of the tests) inherited from ## Getting Started ### Running the tests locally +Pre-requisite: See the [`uv` installation instructions](https://docs.astral.sh/uv/getting-started/installation/) + if it is not already installed. - Clone the repository. - Build `zebrad`, `zainod`, and `zallet` binaries, and place them in a folder @@ -45,18 +47,6 @@ codebase, with the Python test framework (and some of the tests) inherited from - `uv sync` - `uv run ./qa/zcash/full_test_suite.py` -#### Without uv - -On Ubuntu or Debian-based distributions: -- `sudo apt-get install python3-zmq python3-base58 python3-toml` -- `./qa/zcash/full_test_suite.py` - -On macOS or other platforms: -- `python3 -m venv venv` -- `. venv/bin/activate` -- `pip3 install pyzmq base58 toml` -- `./qa/zcash/full_test_suite.py` - See [the README for the functional tests][qa/README.md] for additional usage information. diff --git a/doc/book/src/dev/grpc-comparison.md b/doc/book/src/dev/grpc-comparison.md index 8041cad17..68d1dd5f0 100644 --- a/doc/book/src/dev/grpc-comparison.md +++ b/doc/book/src/dev/grpc-comparison.md @@ -95,7 +95,8 @@ steps instead of a single minimal funding transaction for each pool. Some cross-pool transactions that looked simple on paper were not satisfiable with a hard-coded `ZIP_317_FEE`. That also appears to be a `zcashd` wallet-side -issue rather than an intended invariant of the fixture. +issue rather than an intended invariant of the fixture. This behavior is now +tracked upstream as [`zcash/zcash#6956`](https://github.com/zcash/zcash/issues/6956). The fix was to compute fees for the actual transaction shape where needed using `conventional_fee(...)`, while still keeping `ZIP_317_FEE` for the simpler @@ -219,7 +220,8 @@ If a divergence turns out to reflect an underspecified part of the protocol rather than an implementation bug, the right long-term fix is to clarify that behavior in the relevant spec. For gRPC behavior, that likely means ZIP 307 or the lightwallet protocol itself. After that, the implementation that does not -match the clarified spec should be fixed. +match the clarified spec should be fixed, and the parity test should keep +failing until that happens. ## Maintenance guidance diff --git a/qa/README.md b/qa/README.md index 07e589096..4a1139e65 100644 --- a/qa/README.md +++ b/qa/README.md @@ -4,23 +4,14 @@ multiple tests from the [rpc-tests](/rpc-tests/) folder. Test dependencies ================= -Before running the tests, the following must be installed. +Before running the tests, install the Python dependencies with `uv`: -Unix ----- - -The `zmq`, `toml` and `base58` Python libraries are required. On Ubuntu or Debian-based -distributions they can be installed via: -``` -sudo apt-get install python3-zmq python3-base58 +```bash +uv sync ``` -OS X ------- - -``` -pip3 install pyzmq base58 toml embit -``` +See the [`uv` installation instructions](https://docs.astral.sh/uv/getting-started/installation/) +if it is not already installed. Setup ===== @@ -47,15 +38,15 @@ Running tests locally You can run any single test by calling - ./qa/pull-tester/rpc-tests.py + uv run ./qa/pull-tester/rpc-tests.py Or you can run any combination of tests by calling - ./qa/pull-tester/rpc-tests.py ... + uv run ./qa/pull-tester/rpc-tests.py ... Run the regression test suite with - ./qa/pull-tester/rpc-tests.py + uv run ./qa/pull-tester/rpc-tests.py By default, tests will be run in parallel. To specify how many jobs to run, append `--jobs=n` (default n=4). @@ -77,13 +68,13 @@ Possible options, which apply to each individual test run: ``` If you set the environment variable `PYTHON_DEBUG=1` you will get some debug -output (example: `PYTHON_DEBUG=1 qa/pull-tester/rpc-tests.py wallet`). +output (example: `PYTHON_DEBUG=1 uv run ./qa/pull-tester/rpc-tests.py wallet`). To get real-time output during a test you can run it using the -`python3` binary such as: +`uv run python3` such as: ``` -python3 qa/rpc-tests/wallet.py +uv run python3 qa/rpc-tests/wallet.py ``` A 200-block -regtest blockchain and wallets for four nodes From 74c1964726647f7556978fcf69746906cb3cf3f5 Mon Sep 17 00:00:00 2001 From: Pacu Date: Sun, 26 Apr 2026 13:50:42 -0300 Subject: [PATCH 16/24] Avoid running the grpc comparison tests on the per-change run --- qa/pull-tester/rpc-tests.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qa/pull-tester/rpc-tests.py b/qa/pull-tester/rpc-tests.py index c26c769f3..edfbf948f 100755 --- a/qa/pull-tester/rpc-tests.py +++ b/qa/pull-tester/rpc-tests.py @@ -289,7 +289,6 @@ 'getrawtransaction_sidechain.py', 'fix_block_commitments.py', 'indexer.py', - 'grpc_comparison.py', 'decodescript.py', 'feature_nu6_1.py', 'nuparams.py', @@ -308,6 +307,7 @@ # Longest test should go first, to favor running tests in parallel 'pruning.py', # vv Tests less than 5m vv + 'grpc_comparison.py', # vv Tests less than 2m vv 'getblocktemplate_longpoll.py', # vv Tests less than 60s vv From 584d5530bd2fccc4b5ee3d5d49a2c4230777d440 Mon Sep 17 00:00:00 2001 From: Pacu Date: Sun, 26 Apr 2026 13:57:13 -0300 Subject: [PATCH 17/24] Fail fast on missing persistent wallet caches --- qa/rpc-tests/test_framework/util.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/qa/rpc-tests/test_framework/util.py b/qa/rpc-tests/test_framework/util.py index 3323ce8ab..76acee813 100644 --- a/qa/rpc-tests/test_framework/util.py +++ b/qa/rpc-tests/test_framework/util.py @@ -616,12 +616,13 @@ def init_persistent(cache_behavior): # Copy in per-node wallet data wallet_tgz_filename = os.path.join(cache_path, "node"+str(i)+"_wallet.tar.gz") - if os.path.exists(wallet_tgz_filename): - with tarfile.open(wallet_tgz_filename, "r:gz") as wallet_tgz_file: - tarfile_extractall(wallet_tgz_file, os.path.join(to_dir, "wallet.dat")) - else: - print('Warning: wallet cache missing for cache behavior %s, node %d; starting without wallet cache' - % (cache_behavior, i)) + if not os.path.exists(wallet_tgz_filename): + raise Exception( + 'Wallet cache missing for cache behavior %s, node %d' + % (cache_behavior, i) + ) + with tarfile.open(wallet_tgz_filename, "r:gz") as wallet_tgz_file: + tarfile_extractall(wallet_tgz_file, os.path.join(to_dir, "wallet.dat")) # Copy in per-node wallet config and update zcash.conf to set the # clock offsets correctly. From 8c6dd953401e1628cba72c7bd56484e7e9ea0773 Mon Sep 17 00:00:00 2001 From: Pacu Date: Tue, 28 Apr 2026 14:41:02 -0300 Subject: [PATCH 18/24] Run grpc comparison with new tests Move grpc_comparison.py back into NEW_SCRIPTS now that the parity test is stable enough for per-change CI. Also make --fresh skip the reusable stage-1 wallet cache so fresh runs rebuild from scratch instead of restoring a zcashd wallet cache that can leave wallet operations disabled while reindexing. --- qa/pull-tester/rpc-tests.py | 2 +- qa/rpc-tests/grpc_comparison.py | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/qa/pull-tester/rpc-tests.py b/qa/pull-tester/rpc-tests.py index edfbf948f..301b4cbda 100755 --- a/qa/pull-tester/rpc-tests.py +++ b/qa/pull-tester/rpc-tests.py @@ -279,6 +279,7 @@ 'wallet.py', # vv Tests less than 2m vv 'wallet_ironwood.py', + 'grpc_comparison.py', # vv Tests less than 60s vv 'addnode.py', 'wallet_z_shieldcoinbase.py', @@ -307,7 +308,6 @@ # Longest test should go first, to favor running tests in parallel 'pruning.py', # vv Tests less than 5m vv - 'grpc_comparison.py', # vv Tests less than 2m vv 'getblocktemplate_longpoll.py', # vv Tests less than 60s vv diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index 5bdee78b7..1e494cf69 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -311,10 +311,8 @@ def add_options(self, parser): default=False, action="store_true", help=( - "Discard the final cached chain state and rebuild it. " - "The full cache lives at qa/rpc-tests/cache/%s/. " - "A reusable stage-1 wallet cache may still be used to skip " - "the slow initial Sapling funding setup." % _GRPC_CACHE_NAME + "Discard cached chain state and rebuild from scratch. " + "The full cache lives at qa/rpc-tests/cache/%s/." % _GRPC_CACHE_NAME ), ) @@ -337,7 +335,8 @@ def setup_chain(self): initialize_chain(self.options.tmpdir, self.num_nodes, self.options.cachedir, 'clean') stage1_cache_path = persistent_cache_path(_GRPC_STAGE1_CACHE_NAME) - if (not self._chain_loaded_from_cache and + if (not self.options.fresh and + not self._chain_loaded_from_cache and persistent_cache_exists(_GRPC_STAGE1_CACHE_NAME)): try: self._load_cached_metadata(stage1_cache_path) From cce0e34b7f37b4ac5785b6883b55c573211591c2 Mon Sep 17 00:00:00 2001 From: Pacu Date: Wed, 10 Jun 2026 20:47:52 -0300 Subject: [PATCH 19/24] Fix Python lints for grpc comparison files Add explicit UTF-8 encodings for grpc comparison cache metadata and mark generated protobuf imports as used so the repository pyflakes check passes. Co-Authored-By: OpenAI Codex --- qa/rpc-tests/grpc_comparison.py | 4 ++-- qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py | 1 + qa/rpc-tests/test_framework/proto/service_pb2.py | 1 + qa/rpc-tests/test_framework/proto/service_pb2_grpc.py | 1 + 4 files changed, 5 insertions(+), 2 deletions(-) diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index 1e494cf69..fbab6e875 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -347,7 +347,7 @@ def setup_chain(self): print("grpc_comparison: ignoring incompatible stage-1 cache: %s" % str(e)) def _load_cached_metadata(self, cache_path): - with open(os.path.join(cache_path, 'chain_metadata.json')) as f: + with open(os.path.join(cache_path, 'chain_metadata.json'), encoding='utf8') as f: meta = json.load(f) if meta.get('cache_version') != _GRPC_CACHE_VERSION: @@ -362,7 +362,7 @@ def _load_cached_metadata(self, cache_path): def _write_cached_metadata(self, cache_path): meta = {field: getattr(self, field) for field in _grpc_metadata_fields()} meta['cache_version'] = _GRPC_CACHE_VERSION - with open(os.path.join(cache_path, 'chain_metadata.json'), 'w') as f: + with open(os.path.join(cache_path, 'chain_metadata.json'), 'w', encoding='utf8') as f: json.dump(meta, f, indent=2) def _persist_framework_cache(self): diff --git a/qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py b/qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py index f4391c1d8..24f667a0d 100644 --- a/qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py +++ b/qa/rpc-tests/test_framework/proto/compact_formats_pb2_grpc.py @@ -2,6 +2,7 @@ """Client and server classes corresponding to protobuf-defined services.""" import grpc import warnings +warnings GRPC_GENERATED_VERSION = '1.80.0' diff --git a/qa/rpc-tests/test_framework/proto/service_pb2.py b/qa/rpc-tests/test_framework/proto/service_pb2.py index 9dc393372..e81d92085 100644 --- a/qa/rpc-tests/test_framework/proto/service_pb2.py +++ b/qa/rpc-tests/test_framework/proto/service_pb2.py @@ -23,6 +23,7 @@ from . import compact_formats_pb2 as compact__formats__pb2 +compact__formats__pb2 DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rservice.proto\x12\x15\x63\x61sh.z.wallet.sdk.rpc\x1a\x15\x63ompact_formats.proto\"\'\n\x07\x42lockID\x12\x0e\n\x06height\x18\x01 \x01(\x04\x12\x0c\n\x04hash\x18\x02 \x01(\x0c\"\x9c\x01\n\nBlockRange\x12-\n\x05start\x18\x01 \x01(\x0b\x32\x1e.cash.z.wallet.sdk.rpc.BlockID\x12+\n\x03\x65nd\x18\x02 \x01(\x0b\x32\x1e.cash.z.wallet.sdk.rpc.BlockID\x12\x32\n\tpoolTypes\x18\x03 \x03(\x0e\x32\x1f.cash.z.wallet.sdk.rpc.PoolType\"V\n\x08TxFilter\x12-\n\x05\x62lock\x18\x01 \x01(\x0b\x32\x1e.cash.z.wallet.sdk.rpc.BlockID\x12\r\n\x05index\x18\x02 \x01(\x04\x12\x0c\n\x04hash\x18\x03 \x01(\x0c\".\n\x0eRawTransaction\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x0e\n\x06height\x18\x02 \x01(\x04\"7\n\x0cSendResponse\x12\x11\n\terrorCode\x18\x01 \x01(\x05\x12\x14\n\x0c\x65rrorMessage\x18\x02 \x01(\t\"\x0b\n\tChainSpec\"\x07\n\x05\x45mpty\"\xa1\x03\n\nLightdInfo\x12\x0f\n\x07version\x18\x01 \x01(\t\x12\x0e\n\x06vendor\x18\x02 \x01(\t\x12\x14\n\x0ctaddrSupport\x18\x03 \x01(\x08\x12\x11\n\tchainName\x18\x04 \x01(\t\x12\x1f\n\x17saplingActivationHeight\x18\x05 \x01(\x04\x12\x19\n\x11\x63onsensusBranchId\x18\x06 \x01(\t\x12\x13\n\x0b\x62lockHeight\x18\x07 \x01(\x04\x12\x11\n\tgitCommit\x18\x08 \x01(\t\x12\x0e\n\x06\x62ranch\x18\t \x01(\t\x12\x11\n\tbuildDate\x18\n \x01(\t\x12\x11\n\tbuildUser\x18\x0b \x01(\t\x12\x17\n\x0f\x65stimatedHeight\x18\x0c \x01(\x04\x12\x13\n\x0bzcashdBuild\x18\r \x01(\t\x12\x18\n\x10zcashdSubversion\x18\x0e \x01(\t\x12\x17\n\x0f\x64onationAddress\x18\x0f \x01(\t\x12\x13\n\x0bupgradeName\x18\x10 \x01(\t\x12\x15\n\rupgradeHeight\x18\x11 \x01(\x04\x12\"\n\x1alightwalletProtocolVersion\x18\x12 \x01(\t\"b\n\x1dTransparentAddressBlockFilter\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x30\n\x05range\x18\x02 \x01(\x0b\x32!.cash.z.wallet.sdk.rpc.BlockRange\"\x1e\n\x08\x44uration\x12\x12\n\nintervalUs\x18\x01 \x01(\x03\"+\n\x0cPingResponse\x12\r\n\x05\x65ntry\x18\x01 \x01(\x03\x12\x0c\n\x04\x65xit\x18\x02 \x01(\x03\"\x1a\n\x07\x41\x64\x64ress\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\" \n\x0b\x41\x64\x64ressList\x12\x11\n\taddresses\x18\x01 \x03(\t\"\x1b\n\x07\x42\x61lance\x12\x10\n\x08valueZat\x18\x01 \x01(\x03\"n\n\x13GetMempoolTxRequest\x12\x1d\n\x15\x65xclude_txid_suffixes\x18\x01 \x03(\x0c\x12\x32\n\tpoolTypes\x18\x03 \x03(\x0e\x32\x1f.cash.z.wallet.sdk.rpc.PoolTypeJ\x04\x08\x02\x10\x03\"r\n\tTreeState\x12\x0f\n\x07network\x18\x01 \x01(\t\x12\x0e\n\x06height\x18\x02 \x01(\x04\x12\x0c\n\x04hash\x18\x03 \x01(\t\x12\x0c\n\x04time\x18\x04 \x01(\r\x12\x13\n\x0bsaplingTree\x18\x05 \x01(\t\x12\x13\n\x0borchardTree\x18\x06 \x01(\t\"\x7f\n\x12GetSubtreeRootsArg\x12\x12\n\nstartIndex\x18\x01 \x01(\r\x12\x41\n\x10shieldedProtocol\x18\x02 \x01(\x0e\x32\'.cash.z.wallet.sdk.rpc.ShieldedProtocol\x12\x12\n\nmaxEntries\x18\x03 \x01(\r\"[\n\x0bSubtreeRoot\x12\x10\n\x08rootHash\x18\x02 \x01(\x0c\x12\x1b\n\x13\x63ompletingBlockHash\x18\x03 \x01(\x0c\x12\x1d\n\x15\x63ompletingBlockHeight\x18\x04 \x01(\x04\"P\n\x12GetAddressUtxosArg\x12\x11\n\taddresses\x18\x01 \x03(\t\x12\x13\n\x0bstartHeight\x18\x02 \x01(\x04\x12\x12\n\nmaxEntries\x18\x03 \x01(\r\"v\n\x14GetAddressUtxosReply\x12\x0f\n\x07\x61\x64\x64ress\x18\x06 \x01(\t\x12\x0c\n\x04txid\x18\x01 \x01(\x0c\x12\r\n\x05index\x18\x02 \x01(\x05\x12\x0e\n\x06script\x18\x03 \x01(\x0c\x12\x10\n\x08valueZat\x18\x04 \x01(\x03\x12\x0e\n\x06height\x18\x05 \x01(\x04\"]\n\x18GetAddressUtxosReplyList\x12\x41\n\x0c\x61\x64\x64ressUtxos\x18\x01 \x03(\x0b\x32+.cash.z.wallet.sdk.rpc.GetAddressUtxosReply*L\n\x08PoolType\x12\x15\n\x11POOL_TYPE_INVALID\x10\x00\x12\x0f\n\x0bTRANSPARENT\x10\x01\x12\x0b\n\x07SAPLING\x10\x02\x12\x0b\n\x07ORCHARD\x10\x03*,\n\x10ShieldedProtocol\x12\x0b\n\x07sapling\x10\x00\x12\x0b\n\x07orchard\x10\x01\x32\xa2\x0f\n\x11\x43ompactTxStreamer\x12T\n\x0eGetLatestBlock\x12 .cash.z.wallet.sdk.rpc.ChainSpec\x1a\x1e.cash.z.wallet.sdk.rpc.BlockID\"\x00\x12Q\n\x08GetBlock\x12\x1e.cash.z.wallet.sdk.rpc.BlockID\x1a#.cash.z.wallet.sdk.rpc.CompactBlock\"\x00\x12[\n\x12GetBlockNullifiers\x12\x1e.cash.z.wallet.sdk.rpc.BlockID\x1a#.cash.z.wallet.sdk.rpc.CompactBlock\"\x00\x12[\n\rGetBlockRange\x12!.cash.z.wallet.sdk.rpc.BlockRange\x1a#.cash.z.wallet.sdk.rpc.CompactBlock\"\x00\x30\x01\x12\x65\n\x17GetBlockRangeNullifiers\x12!.cash.z.wallet.sdk.rpc.BlockRange\x1a#.cash.z.wallet.sdk.rpc.CompactBlock\"\x00\x30\x01\x12Z\n\x0eGetTransaction\x12\x1f.cash.z.wallet.sdk.rpc.TxFilter\x1a%.cash.z.wallet.sdk.rpc.RawTransaction\"\x00\x12_\n\x0fSendTransaction\x12%.cash.z.wallet.sdk.rpc.RawTransaction\x1a#.cash.z.wallet.sdk.rpc.SendResponse\"\x00\x12s\n\x10GetTaddressTxids\x12\x34.cash.z.wallet.sdk.rpc.TransparentAddressBlockFilter\x1a%.cash.z.wallet.sdk.rpc.RawTransaction\"\x00\x30\x01\x12z\n\x17GetTaddressTransactions\x12\x34.cash.z.wallet.sdk.rpc.TransparentAddressBlockFilter\x1a%.cash.z.wallet.sdk.rpc.RawTransaction\"\x00\x30\x01\x12Z\n\x12GetTaddressBalance\x12\".cash.z.wallet.sdk.rpc.AddressList\x1a\x1e.cash.z.wallet.sdk.rpc.Balance\"\x00\x12^\n\x18GetTaddressBalanceStream\x12\x1e.cash.z.wallet.sdk.rpc.Address\x1a\x1e.cash.z.wallet.sdk.rpc.Balance\"\x00(\x01\x12`\n\x0cGetMempoolTx\x12*.cash.z.wallet.sdk.rpc.GetMempoolTxRequest\x1a .cash.z.wallet.sdk.rpc.CompactTx\"\x00\x30\x01\x12[\n\x10GetMempoolStream\x12\x1c.cash.z.wallet.sdk.rpc.Empty\x1a%.cash.z.wallet.sdk.rpc.RawTransaction\"\x00\x30\x01\x12R\n\x0cGetTreeState\x12\x1e.cash.z.wallet.sdk.rpc.BlockID\x1a .cash.z.wallet.sdk.rpc.TreeState\"\x00\x12V\n\x12GetLatestTreeState\x12\x1c.cash.z.wallet.sdk.rpc.Empty\x1a .cash.z.wallet.sdk.rpc.TreeState\"\x00\x12\x64\n\x0fGetSubtreeRoots\x12).cash.z.wallet.sdk.rpc.GetSubtreeRootsArg\x1a\".cash.z.wallet.sdk.rpc.SubtreeRoot\"\x00\x30\x01\x12o\n\x0fGetAddressUtxos\x12).cash.z.wallet.sdk.rpc.GetAddressUtxosArg\x1a/.cash.z.wallet.sdk.rpc.GetAddressUtxosReplyList\"\x00\x12s\n\x15GetAddressUtxosStream\x12).cash.z.wallet.sdk.rpc.GetAddressUtxosArg\x1a+.cash.z.wallet.sdk.rpc.GetAddressUtxosReply\"\x00\x30\x01\x12R\n\rGetLightdInfo\x12\x1c.cash.z.wallet.sdk.rpc.Empty\x1a!.cash.z.wallet.sdk.rpc.LightdInfo\"\x00\x12N\n\x04Ping\x12\x1f.cash.z.wallet.sdk.rpc.Duration\x1a#.cash.z.wallet.sdk.rpc.PingResponse\"\x00\x42\x1bZ\x16lightwalletd/walletrpc\xba\x02\x00\x62\x06proto3') diff --git a/qa/rpc-tests/test_framework/proto/service_pb2_grpc.py b/qa/rpc-tests/test_framework/proto/service_pb2_grpc.py index e64d704c3..3cdbd319c 100644 --- a/qa/rpc-tests/test_framework/proto/service_pb2_grpc.py +++ b/qa/rpc-tests/test_framework/proto/service_pb2_grpc.py @@ -2,6 +2,7 @@ """Client and server classes corresponding to protobuf-defined services.""" import grpc import warnings +warnings from . import compact_formats_pb2 as compact__formats__pb2 from . import service_pb2 as service__pb2 From 3d0bc86eaf1f5423f2c7edd40ecc5099388d32d4 Mon Sep 17 00:00:00 2001 From: Pacu Date: Wed, 10 Jun 2026 21:05:27 -0300 Subject: [PATCH 20/24] Check out test tree before RPC dependency sync Ensure the rpc-depends CI job checks out the selected integration-tests ref before caching and running uv sync --frozen. Without the checkout, uv cannot find pyproject.toml in the job workspace. Co-Authored-By: OpenAI Codex --- .github/workflows/ci.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d74ba7a38..74e31d4bc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -645,6 +645,23 @@ jobs: include: ${{ fromJson(needs.setup.outputs.rpc_test_matrix) }} steps: + - name: Select the test branch + id: test-branch + if: endsWith(github.event.action, '-interop-request') + env: + TEST_SHA: ${{ github.event.client_payload.test_sha }} + run: | + if [ "${TEST_SHA}" != "null" ] && [ -n "${TEST_SHA}" ]; then + echo "test_sha=${TEST_SHA}" >> $GITHUB_OUTPUT + fi + + - name: Check out the selected test branch + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + with: + # Empty on direct repo PRs, which selects the default. + ref: ${{ steps.test-branch.outputs.test_sha }} + persist-credentials: false + - name: Set up Python uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0 with: From 1e5aded8d19d4496c2d1d55174e3515bea9e902e Mon Sep 17 00:00:00 2001 From: Pacu Date: Wed, 10 Jun 2026 22:54:32 -0300 Subject: [PATCH 21/24] Avoid persisted checkout credentials for lightwalletd Set persist-credentials: false on the zcash/lightwalletd checkout used by the build-lightwalletd CI job. This matches the other checkouts and addresses the Advanced Security/zizmor credential persistence finding before artifact upload. Co-Authored-By: OpenAI Codex --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 74e31d4bc..58b2d4603 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -507,6 +507,7 @@ jobs: repository: zcash/lightwalletd ref: ${{ env.LIGHTWALLETD_REF }} path: lightwalletd + persist-credentials: false - name: Set up Go uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 From 52008486fff259c2d023f020a2565e38229fd0e7 Mon Sep 17 00:00:00 2001 From: Pacu Date: Wed, 8 Jul 2026 11:06:11 -0300 Subject: [PATCH 22/24] Improve gRPC comparison sync timeout diagnostics Track the last observed zainod and lightwalletd heights and RPC errors while waiting for indexers to sync. This makes failures point at the failing service instead of hiding the underlying issue behind a generic timeout. Co-Authored-By: OpenAI Codex --- qa/rpc-tests/grpc_comparison.py | 37 +++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index fbab6e875..c2ced2a98 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -712,19 +712,44 @@ def _wait_for_indexers(self, expected_height, timeout=60): ls = service_pb2_grpc.CompactTxStreamerStub(lwd_ch) deadline = time.time() + timeout + last_zainod_height = None + last_lightwalletd_height = None + last_zainod_error = None + last_lightwalletd_error = None while time.time() < deadline: try: z_info = zs.GetLightdInfo(service_pb2.Empty(), timeout=5) + last_zainod_height = z_info.blockHeight + last_zainod_error = None + except grpc.RpcError as e: + last_zainod_error = e + z_info = None + + try: l_info = ls.GetLightdInfo(service_pb2.Empty(), timeout=5) - if (z_info.blockHeight >= expected_height and - l_info.blockHeight >= expected_height): - return - except grpc.RpcError: - pass + last_lightwalletd_height = l_info.blockHeight + last_lightwalletd_error = None + except grpc.RpcError as e: + last_lightwalletd_error = e + l_info = None + + if (z_info is not None and l_info is not None and + z_info.blockHeight >= expected_height and + l_info.blockHeight >= expected_height): + return time.sleep(1) raise Exception( - f"Indexers did not sync to height {expected_height} within {timeout}s" + "Indexers did not sync to height {} within {}s " + "(last zainod height: {}, last lightwalletd height: {}, " + "last zainod error: {}, last lightwalletd error: {})".format( + expected_height, + timeout, + last_zainod_height, + last_lightwalletd_height, + last_zainod_error, + last_lightwalletd_error, + ) ) finally: zainod_ch.close() From 5c063393b3ae8efd7352d96b1c4dd858316e257a Mon Sep 17 00:00:00 2001 From: Pacu Date: Wed, 8 Jul 2026 11:36:47 -0300 Subject: [PATCH 23/24] Find zallet db_dump in host target builds Search both target-specific and host Cargo build directories when staging the zewif-zcashd db_dump helper. Current zallet builds can place the vendored helper under target/release/build even when the artifact path uses the explicit Rust target triple. Co-Authored-By: OpenAI Codex --- .github/scripts/stage-zallet-db-dump.sh | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/.github/scripts/stage-zallet-db-dump.sh b/.github/scripts/stage-zallet-db-dump.sh index 343496f74..83c9b44f0 100755 --- a/.github/scripts/stage-zallet-db-dump.sh +++ b/.github/scripts/stage-zallet-db-dump.sh @@ -16,9 +16,29 @@ set -euo pipefail root="${DB_DUMP_ROOT:?DB_DUMP_ROOT must be set}" -db_dump="$(find "$root" -path '*/zewif-zcashd-*/out/db_dump' -type f -print -quit)" +candidate_roots=( + "$root" + backends/zaino/target/release/build + backends/zaino/target + target/release/build + target +) +existing_roots=() +for candidate in "${candidate_roots[@]}"; do + if [ -d "$candidate" ]; then + existing_roots+=("$candidate") + fi +done + +db_dump="" +if [ "${#existing_roots[@]}" -gt 0 ]; then + db_dump="$( + find "${existing_roots[@]}" \ + -path '*/zewif-zcashd-*/out/db_dump' -type f -print -quit + )" +fi if [ -z "$db_dump" ]; then - echo "Vendored db_dump not found under $root/zewif-zcashd-*/out/" >&2 + echo "Vendored db_dump not found under target/.../zewif-zcashd-*/out/" >&2 exit 1 fi From f04b5906c6d96ec25ec4dca27ded39800b850987 Mon Sep 17 00:00:00 2001 From: Pacu Date: Thu, 9 Jul 2026 09:56:41 -0300 Subject: [PATCH 24/24] Restore grpc comparison fixture cache CI does not provide a standalone zcashd binary, so grpc_comparison.py must be able to restore the checked-in fixture cache instead of rebuilding it. Restore the version-8 full and stage-1 cache artifacts, document that they are intentionally checked in, and emit a clear error if neither cache nor zcashd is available. Co-Authored-By: OpenAI Codex --- doc/book/src/dev/grpc-comparison.md | 7 +++-- .../cache/grpc_comparison/chain_metadata.json | 29 ++++++++++++++++++ .../cache/grpc_comparison/zebrad_state.tar.gz | Bin 0 -> 143689 bytes .../chain_metadata.json | 29 ++++++++++++++++++ .../zcashd0_state.tar.gz | Bin 0 -> 211412 bytes .../zcashd1_state.tar.gz | Bin 0 -> 180833 bytes qa/rpc-tests/grpc_comparison.py | 18 +++++++++++ 7 files changed, 80 insertions(+), 3 deletions(-) create mode 100644 qa/rpc-tests/cache/grpc_comparison/chain_metadata.json create mode 100644 qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz create mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json create mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz create mode 100644 qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz diff --git a/doc/book/src/dev/grpc-comparison.md b/doc/book/src/dev/grpc-comparison.md index 68d1dd5f0..92b514b95 100644 --- a/doc/book/src/dev/grpc-comparison.md +++ b/doc/book/src/dev/grpc-comparison.md @@ -175,9 +175,10 @@ The final design uses two cache layers: - `qa/rpc-tests/cache/grpc_comparison/` Stores the final Zebrad state and metadata used by the parity test itself. -These caches are generated artifacts. They are useful for local development and -CI acceleration, but they should not be committed to git because the binary -archives are hard to review and unnecessarily bloat repository history. +The final cache is checked in so CI can run the parity test without a standalone +`zcashd` binary. The cache should be regenerated deliberately with `--fresh` +when the fixture layout changes, and those changes should be reviewed alongside +the test changes that require them. This split was useful because it let development continue even when the later shielded transactions were still being debugged. Once the test was stable, it diff --git a/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json b/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json new file mode 100644 index 000000000..5dcbabdca --- /dev/null +++ b/qa/rpc-tests/cache/grpc_comparison/chain_metadata.json @@ -0,0 +1,29 @@ +{ + "taddr": "tmMWmEeXxaY2DexNSXTNwyycqHyQKy2ftCf", + "sapling_ua0": "zregtestsapling1nanlwtu2mduvwlnrh5x6xe65pcatwrmpmk8669x4dtqarp4yahcdvateptkzekryndc9jkcm8rn", + "sapling_ua_aux": "zregtestsapling1nm2yht29xhpsqp7eyfk4a6uagafpwcw0wtegemm5pm6agqmspsq6jej0mm2v2g444d5yyxpeg32", + "orchard_ua1": "uregtest17r5twml8p4r0l3jekpxmy2uhvlxjguah4cucxskgg2m7u0gphy0dxfx08h3xsr4rxy0ppgnh0q7fkqv3gzfpqkef8wnfv8d4egkukvvq", + "orchard_ua_aux": "uregtest1hzfyrt406dd29cmvksdwdr92rdprsl654s57p0fgugwv8j00xqppdzvhkzaesqxx87he0xm88tn3c3vu74fhx8zdatnrml26vqy5pp0w", + "sapling_addr0": "zregtestsapling1nanlwtu2mduvwlnrh5x6xe65pcatwrmpmk8669x4dtqarp4yahcdvateptkzekryndc9jkcm8rn", + "sapling_addr1": "zregtestsapling1z2mrs2wlfff4l3qav3n0g0tgatzgsxajttvgrxxq3qxn7yye57efdflg3587ft75agyhz6zjf82", + "orchard_addr0": "uregtest17r5twml8p4r0l3jekpxmy2uhvlxjguah4cucxskgg2m7u0gphy0dxfx08h3xsr4rxy0ppgnh0q7fkqv3gzfpqkef8wnfv8d4egkukvvq", + "orchard_addr1": "uregtest128gmqv7yh2kqw0qfgf9rhmeuxqs82nxhumsp482vk4pa0u2fc3ql5znr3ycnwnt7sanu3a4nrf53k5dzh5pt56w6yandv0yvwulhagkc", + "_orchard_aux_addr": "uregtest1hzfyrt406dd29cmvksdwdr92rdprsl654s57p0fgugwv8j00xqppdzvhkzaesqxx87he0xm88tn3c3vu74fhx8zdatnrml26vqy5pp0w", + "t_to_sapling_txid": "f1117f206884149044743d5a373ce89a24d52a3c9dba5fbc1c124fb22f53c1ad", + "t_to_sapling_height": 201, + "t_to_orchard_txid": "a76f1f6033910bb69dabe921f027eb51149f98fb46edea1c195fdc6bae6588ea", + "t_to_orchard_height": 205, + "sapling_to_sapling_txid": "07757ef9206e4095e5de9d69bff0988e282f2af64a16e09a8afbec8f18d60a5f", + "sapling_to_sapling_height": 204, + "orchard_to_orchard_txid": "02027d83f067e79f731d70571fb2911971a1ec80a59c1dac694f3645f003b8ef", + "orchard_to_orchard_height": 206, + "sapling_to_orchard_txid": "8816ad5caed9a68bfd8a3baba1030cbf7c270a53c1bb43e23eff45a675508945", + "sapling_to_orchard_height": 203, + "orchard_to_sapling_txid": "42b83dc768e6110dc3f937bf07778624dca0d9c980b01bd546646f108459ce58", + "orchard_to_sapling_height": 207, + "sapling_to_t_txid": "743c646a0bb8ba1e47021e1901201236084a06bfaeb0136ad31d321411b46349", + "sapling_to_t_height": 208, + "orchard_to_t_txid": "9e2682800fb642f8a72529f45839aaf99a9989871cc81ac31ccd7c623c667a30", + "orchard_to_t_height": 209, + "cache_version": 8 +} \ No newline at end of file diff --git a/qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison/zebrad_state.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..6fc1e1cebd1be86157beb528fe00e5e2321dd9c6 GIT binary patch literal 143689 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®UjhjigH>8gwsK8}ft$5&f^;AVKjikfv!mTeJZ zZ%?pdm;W;cI`37Uzh;60D1B7C@DOv!jogpX4V3ZuV)c=!m9Yxr2!Q=W`eO-gq5x5E z|D)QM^$6BwSz(q79R`|h$_$>Nc|y;HXX=|mvANF;J9IatG(AvN{>;!%0#*7sP=Erw z9&+j4|xnBd@8hg z6D&)5T*nPZw_mY;p^tfLa+eGpTE2^?8BWi|)I^h@;`yWfjk4eOV!Y5KZ?9IkhZ$<{ zo<_T7YVF^Q;h?Da+&Y2Iw1Mz8;6Vd3(c$VI&5)FWdXpP#llpZ(L5%D(U9nqut)$plkwnCKtr&{a zGp(v)9DO(quzhUw)~l`B$<_ISVX<+^(%^wE^)S13bhH`%U zs*O*boh;=mRlGne$G`Ks4q%i zDIposaAS~$`}CiN`$jV)qP)=QV4E{9pT`YN!r)NcC)~0e7KZ6Azg+T=W_`r`(3fkz z<0M=v%*i5u`;W5Jw%ssAx2Yi&`D&CrKr_Vi;HAC=A5w5QBvY5|wJ^X33;C7+7qXIi zJnDl#kNf2rqKvRJZ6yl6+CC$99k2_k+__U7K5@DxDm905aihz=_t9+1v+cAd zK?(Z=jKPc(J|;v&+(Hp(CB-GNotd9-Rfa=Q2`I-zTXC7dt-dAT_nr6* z1NQP920BYDL+RLRSqu2%P4ULh)`FssZ4@NAPAWx0hKtfHSv9s4StQ?#)TxSSha!|` zKU5FGytbnfHpKY|FD7pNFIoK+>`C`>XeaxwmkeR51PD`QLjkav%G8WI8J2onEe1Od zAwnTB{ZI(<7$OutmR0OqZbK!&;uQ3R0bi&ppIC#u$%tdi!j&vIh;n0jq!sCD^*D0j z$d)JFc!XT3{da$y)4C0#kc2m|KzgM)BS}eIm-C>=`$=1tExe8%5Ucdlzm%oD??F6`3<#%&0=$TKGx1+y+USqz0XT3a#Av4yS_%}9?9Wm}HG)zV z-wJW*4Ib^#kh8_*M!9{1XIQx`xM8t-M!&l3f-0g6G7o|NgEg_r2~O8bOD59X1(r6l zb=gNpuh^1!!PY|1@TBQ?aXB_^qXmeVpcD%Z4ZoTH!RhMbX;!Rwy*?;6o^51;GOKCx zz%*E(YW<1mWI_M-=(#CkH+x;T`zDkBFWwR()rgyX3*}^s+5Ew+I}@9oeSQ?pPjl9-=X0zcyC)!&rBa4m zvwD_cWsA>Nzq94P87npr0xx!YTou;Dch&P+YG4as<+P$e{_Ac(l-~r2Vi6;MA&P^m^GI zX#8ZEFh(+!{X^N5$dg|1#rBFXQm;3|&}u80r~qg5GKh<=K)i^|Z*@O37x{e}1mI^y zwBua;!pBjpt<$B*JkBp z|4K>~x#2_ejIKxtJ7K~n_XW1ERr>vBk8FxDCYJdPriN)<&kC3+cbaaB(DJ_)8MG$zR@ki^w2 z8K^DIal89APJYdMRiuFWaY6#8#IZw3Cy%vt9`}^%#zqLqnjkvTi%%Pm5$^SKWrDFD z4#Vk~qLjgbSj{L{nh>@6D=Zx{5gj|(&%8w$-n7_pm2rHl@>jh2D}vh7T<8GO0sI-B(}>7V6eZfcfr3DEV1fEC>rrMM>>x=sWq3V2tW!oh*CX z;T|}ee#~tLx$k`N$#;acmFiB6OOFGd_5>yB($}9LPa#@9`fjJ~uM+Iu_|a7In7BUQ za+|%&jWQ$XtRhZvT#~w=g-CPgc zCJ9W~jurxF3wGa7!g;Nc9lY5&ETyBQ%K=ZrL(116b^U1^UIx;fg1=-FYKZ?h_GUd4 z9K691Cs~upQ^lXt>`Sn@>!>NgGvdg}K=XWf)iO-pO7Tkn#d@?G&($SN zP=Wy|O|&}wi-8_?KiHmxVdCb}Hf|PYg1AIBpNXdqqyxSxcU};srbFW{nxyD3gEvu5 zEp3F$56<(M*(br_DjLb2dKLfjZ-T!^6ey3o*898A9%@B$1Ke8aqGEQ)cqO21m@E1$ zSysW(JKAxXd3ERG7WupIF3oX-4a~lYsI0AahPNd9yq`|*c5cz@;g3?^Risys;SfG$ zWFJ(A$!(l5M!?6aTWcj~YSk50s(TX{98G=b4AMQA>#!rNBwFE{ZBgrcsN!{%qK5Uehq04-2X0loEP)Ybf=y1988Z} zV56-zSZeCsE`%x}51(+aU`J_c+L6a?F8o8w4wt+|F+_WF=+e|{ej>B5o?$A)y$n(D zh6$-JD!w-5ExXnE-bBQ%8PkwZtU3qp#;WaC0WPqLDS^Z3TlHMcBPNZF)_w;1cCD(f zQ>C9yhFPgeaIg|qu(UtiaZ+4Yy3lKAM|td$IGd*%b)Wc0Jn_laQ*7rTmS__`#K$^IPWQXtO>&e*mo|vS~xjpZOl8}fR{bKDm+qfv+1f6X0vnI zJ(uP057m`fX7o2qfG^yF2oa<5fp%x6mIiwB-zpBQ1d2s>H!hjhGbxT8RYF+B~7yGKhwCLuc%{YcX!PCw7dgn%f9Tm#F_}wCnCOs z)k4#8Ke3qKU?nCvF_ZRw7j|ec?aG@<#;j7t&>*}v=dCf~>6D?;C+$4JK=0?l5N<*L zjSA7uxkW@Wm^m~)l5dmGMQU7#{@5hrK6m!r*aPab?njNY4b*ChKWYOJUffSl8fohr zicytoA{lL+saLy0PjBO`Q{mO3f?gbA-A29uU^RIv4ChNZ)DA~e7EGQ03%ao3YNkcH zK%9n9I(|6XxpJS$$(1!z0Gsbrwp_~NWLi6`sm~B3n#nC@^oFhE>pgsL6SuG{J`VMA zXYMa58YU$A51+>xCAeH`E-wJ)O~K0>5Qu61gIMA##IE3ia(?9q*tZOy#~5PEM9qUz zs;|pdj_g`Z^2OVqj=pyWNaR+__8gK0ge|1pSz0qR^ey*fsyHJ5*~TjcF|E3jvdZkA zcHw*)xG!}r%{&B2W`wg)QJb~47%?nbfeJd%eyZJA^lUb1)1GWB{R}BzYk?X)^6ga- z7nQb2nFk$@Rqahh?%{C7r|U@nwY<$HtF~#o6Oba?!?3useKL_rwe)lp0;;99h^t8` z#4XhkJ1yQU`}Zs{Jdkg9LL0pXg9EfAkX}k{9zOq+p#F;!mA=S#_%#>|hvD4M@rA%E zi*XPFug+#2%+s@x9ua5|rpB3k78Xgeif3&lX4%O2V;m%WP@;w?E&%}Fi{dIj54&DR zoft2YF2v#wRk6L;pZW~m7ZK;}WP|rAo)1~NJsMI>&p7fQEmpR;019uW^T0BAGv*@1 zI`%vqlAf<}w1Wdq)}h*4D#)M96M0c>lt@U&#NSTmAPu=n4=(r^ZKvL79;1Ss6Ztrc zX`^@>?9LV(Pf163h8*@bB<;Oxw1DmV)wjlpoJ-co536;(Oqr1xi@M%;o3-bkgaO`Z z9p6q6nl<6&a_~uj*wp+hzF$U)JQ~R&1~{kpX2Py;oqbhan(v3oBc^FDzk|lv=K`!X zLUDOZ8Le#mJ+bg0Y zqbCOeI9!?lY94d`rj6=3Td_B{xRj&Nkqz8pgEpWEyxpOnP5aTOX_CrDN6*9ngXDTi z-TL%_+)&CRLxeS^Dd{oF&YEie+CM;L7wN{~yOHa!^IkN@`SrSe33}FkQF9?LT{@1Q z1x4qVEF=l_rS4ysj=y%PHJw~uE`4=TUC!jbt|$PGB`s{^NLTkf{BtBk;{ z^RyWjeUCXt=X%rAM-9vkau>z@@3|x96F2WK;q1_~9PhZXn>i5PU7{4?1Xi>wZ!|S` zg>X{x>i2{bnLDnP!@X+zdwq3ZtF&qMVM8SO`Lw5~ zq!&~?X!k$bT$I;x>souHJ3STTMh|tglA`zDv`}z&&>hjCKS(f8)Bj4luh06ty(i>n zFot|=%H8QWw0?+s&nX_KLF=UIPctQ+ZgZO?4X)Ajcqg&fM6Avs1~ZNTv(j( zg}pJ2CN%`5F)s9-Nd#hy5U2AI8lJ&Yz*Y1x;(BaA8Qz;k)`?URnY1FEd7mxG#x=lm zKLwE_gXQ9QjWL?*9^*fW@d=R$z~YdMCHP;7!3H~1v;`;`eh%m^3Jd0b5>Ot`=n?UY z9_P`*d?%d^d=ICA5MxHp0;x|)J6b_}CB@=De3b{jj!2r3X70D+g9cpXf#P-ksj4wz zpCfVbD9Gl$D=XO};6;fKSDEB|&p`&J=rgP7^U61to-5ZbWt9y- zIK6Dqi4j|;w~nK(r!(3L%2mHxEiXFomP?7ffsHU?nxlQ}>!@W3)jhfnndDyUH%?Qh z#Q{y;9@14N6C_I6eUmE{1r3#dSmH}Ny<+V*a_%)HNEE0;?@Mn)C}m(MVqw+#RH{~A z>fbDRyLP`mV}ma-YOZ{+TL#C^_U2{zGa-=#Qyyp{1JL_j2a~qB=8rgz_!8UXU}Z=E zXv&|z>M4m8!{~OAP;Iz(E89x8hDaJqSd$!G!CNJhdjvi3l-%UPx^)sYlszv^`!6A2 zqGyQdVP*&d^bqUNDW)V`ublut`&Ox)N+Hg>G38|r=)KN?k~b(S*I%*%3a2Cjg#jGu z{Qlm<&H6U{sVAuMrABbvvw0OWmx9m%;q$Q-Sk&{6cA$D$hUbRu4~m25O1wTM+WqKm ze#5$pqi2#AY;0OJ-{gYJwDOioJm))5Y0L6SI z?6rheb=|q^N|qIgMWmz`wxKjkaQCE;mKF@|_;Yxm;>5G;=rdamLD$MFdx^ZV7fH?$ z9}KO0qfAH#6~evkg?Uu)W2kM8h$bmlNSuh*iGuE1+R?d)^@a2C%aBGiH~RZ zU?TipxJQp=D>vDb;HvCgsYc_t8x(fMUpN<3n1+pdfe9tIQxBDcD9NQRO6 zjw>QtDtVFso}BC?B*wobG-J-DQrSlh;*i|v&vVO&w*hY%JX2ThS@O)f5;OzJDMr0h zB2q($-{VDgmD29_cJgjHTe=T)Ki53t33a1L@71~)rQo9Eh9lyv+zcU-s1YDdNFevm z6mwkv{r2s_BDuhQC+#7&Bj37yf4Em)kM=R$-=*)D?4Q6_{feF|0H{u$l0g2ieoZLS zfYcADqNMS(WGW)uQ#`N5Am96YdmUZb67jN^NmaW{PP^5-8511F+D=4JqSa0by`1`e%Kt9L+G^P_=Uab?rU!I>M9OKrfif(28@>-;y4bakgn%-uW13!(sLjmB=X9oe0VRQn+DPL@19KD zg1m((E{pfZ`(v`u#QJNzT50e9I$$wd?2-hgyY%uqg-0fQ*y-?d!%z`)`8|6YTR}52 zh#N1$9$c(QwE~k$X9NV3Ql1=NxN;7Ogtsy~Qk)dZjqU3!B>NZQwfxB%S=|_Cn^%6G zo|mtdX!^BG;7O=9mc8-ZHikfibRZkXkKSpaGd51vP`~SKV_dlJdY$TT(`$bB{?e|= zVn)jycAbE2DCg;~1v-A%5&9xyq=eP^h#EtqY!Uvc{NX=M!GSp5KSFrV@p~NpmGlKj zAfyi~&>0>iiX#-nhjp*CtC%et^z6gyIBv@bg_qA9LO{W>%(KkcB|VUCi)l|u$m!BO z(oq2R1rNukJVWA%J=yC|f6{Fs8=+sz;#$AX>pl{-*t#E+eH~0++XgD+ElwiOMH{zj zlg?P<8}V$-XUdjwHoUj7<175)O`p>i=aXt*_v}qaQ2Vj(nwz3VQ#+mgeZp$B#Ko+d zw>67GCJ&{EJm?gjA&vL$i@G_P%OU1adyHLLBv)t7wHSp3O-e0 zyNQ$ASX{qMVyqN1_2nS_*~h_$!~5HjtYvYSo$cF;p~9tx8%%~un?>*9=TSVMvdB)S zDJH`ThmO^@3N+s)+RJp@l0k>OYH0F~4EhfT%2x{{a18sxVP3<)4~y>?*EFHpxDJk4 zQ$)(nsm{!vG$L9{eDc^2&z?MudA=Hqo9Fj)1ia*4gu}UBW@Ot_0iA`r0kCjh(H{>2 zejk<=g<6;wD9KYU%3(Rxp!xBAdk<0eS6!s+*ZzRF+F!Iu$i(lVTu7}Nisrcsw$3&8 zHt%LjE$2kH44Z~)^ER9h|2Da>Xzm^%$-EhWMY-Nsl`a*&p|5M|OjRA*8V(EiFhAlE z+bKc2vqmu{Vmy6>k{%)(bdJ+Nd7Im1;r)|Ps`HS_KHENj zkl=VUWq0Hr*QS8U&7^dx`P{9uHxe&xjxXTyD>_cideBCIYVkobC^R@xE$Jk;HeY#} zXhD!UIAP&fcPVkQIgKGwz>CIi#FR?PRZyZ%4r0D1hfZcL6`Xi0bzz0f~pq!LC}YkMJa zx_O{|gpE>@Z4&XjK^x;I(D`cIinq+|>{qf8DH@Q2^GLR^7N3OuY|MM{p0~VsPwTG# zo{}h+1gU1$qAcFIHWA_=^`<8?@Kd{j$P1G=-EJ3rOg6`Kb47xf&vo&U@abU;6HLIt z2PuA0fLxqONcl>+;kj&xwp$W zEbTvus#)o5bMPtvY#Xng1dLsF(b2wcVrvyJ4OPsyA-|$#4E>r@l1bZNT5 zhrxHlA-;3_*U<-|#_jyLKD=ffo*<7QH{BSvN6xO?a4f0TN)X+}{gORWquEDlR>*K< z6*11I`csCfZk%tdOPyu5)&HnYon$Hm^oOj4m;fS>@fg1VlRbEIce%U0#{`gm3BY0n zLCDvfpOmZ@JXv(KoVB%TrV8c#;17b(483%;t6T;|t{1;x4>N6#P#YJ_n~$`mMO0C> z9(_RVx4CFAnso*~LC|Fqe>u3B(ZpSRY{ApJxu`n{xn zayPab61gAdd&V0s7Hq`perH2^iKPuyQv8P{#7=>pDrG{6#2b2~p!l)6a zZ*l%i0`}K3b{tLCE788BE#ChanK@FLCP*KESL;pUJ28#WIclF|JSy<@TdHAKp@7?| ze0MI)uwMf6%#p%P(9is1D6_&r%j+%}>WlG(olI)qqz504m%Uq>#Xb{J*{!&f72fjb z<`d6ni^qoJ9i#3P8&zNjH=pfB+6Nb$8@i2-ulEOQy_Wyt2_}d}Vs_9N_*j7TJvab~ zM&RGZQNAjoh3b|&8V^{RhI>G`Yk2U5yNs?cu$ooA z%QJFl8yi8Q=|VB5-vO!hOS;Czz{+QOhi>Y@#l!Z%i`rF!>eep@bAax1FNOGK~;7Dy#!*hEmJgJLaXcjE?<*v+dudULT^)Q%iwR^Irl$qoWG<@N=!-;M7sEhbSJiv{Xp zdqVl%sl2Od4m5K2t?%d8v8%l~3Rc}1^phkJGpuj)Jc7$Ke{DWfaxp&@d*(tQp}q$6 ztF||Ny}p?kjQ=0ssP$9httTtA4$2b7mn957PFHTG=P+;Vb7ygJ%Yi6a$Mcv2?bCME zbKYmR`ZZ@5qpfXu+^vFfiJvg#fB)3Qrh0W5U2fe`!zDtDqb=liPyoRBY8*4P0N~Yr zU*qg#QGgqI`I_OAW`kU>)!1!&;SK&QH*8&%oy!8kl=mk-?_EcS&1!&4+n&?@O5XLd zN&IGHl$0JO$6ge)C%28YIa$V(nEcZU>xJ9zN!&uc3+fuVe<3XLhILQbU+0vk_++}OVr z1WWy)&{jp(u;seM`ZgYts!E~7YISVyZnM|8%9W?V!c$D6b)7U{D*0xja2lmol2>8P89c5Ajy~YYx0Hl;=P$H zOc_(0f)hlYTZU<5c-Bxwqj>0@Kt{4PMvsIAZe#m%SJFhfmI|B?*a-73o-}(tF0v+$ zByWMYo@N-5jwT6ttJ1QEHEJt_{ElLiR`~t(bco7ItB4mBj(45r&zS|1CIS<8Vk-qhELz zOsgwhmwi6-l0H+TzogGj;svn`nZ)IsL>dy1^mznuksTi`lhBd!T?PSz?+6^R1DW`Bq?sSeYES3VjYe;AF7?S z{(fV{F#|~P8Shz7UecU8>}XznucVYBrl*u52p~tSQy`s^FuUF=&1MgO&Vw9I04pJf z6XOyur-a{1Nu{baN#3}xJ8DqN(pG;re2Q1ydTJ?ea*F&dSm2-Df7EIdGR|`*>V;U# zWv_qPj@nT}R>6^b?fmTwK5;%pDB`KG9~FMCkH!RaMhyI3=So+|?p7`0^*8k^a5kj$ z4)^i~Zae{df>^@~#GCY4!x?82>r_8n&LDU5QG5*n`&i7k^PJ zW&zKK&GIAu8-Hz;Do>yPqp&5@dUTXR{j8?_5lBFx?nX>64=fbWO@_Gy4ved2K;nDc zoeRp#fq(Hc)cxR#$ltx$#X5mcC`y>ht`zi#oK7I(c2`u?bqbOh&g!d@J-ga<4Xd1+ zM2Lu9jLWnv-Jm43>m>C9ONdx?IdCbg)H~F{f#WgcO{pm)hWWVg7wEU+e>tgx_k9%e z9p>!R+ge;3)Cmg8QXk?^k7Bi_ z_3X@dD92)K4`*hP5Dipoj^h`2TfMMptPe)k^ZCPQF80MXA_pt2Ot%npb$YR=<;QJt<#8y8s+=rV z)b!W2eew3`6zbvQ3VBNF<o!;5)S7kOx|?C zb9BFktHlagz-H9`6)a^`byXqGz!Fr*`$f&3}Bk zl340;y^{afeLd#$N+rf;-a4qk{>oHIY>ZRF=nGkHa0guD^7^=Z+B{|rv%eXuXI|hj zqp>vSQ_G$Po!0eqHw6>wB63*#aZ)GeN6%n zWwIQ}aarknfXN&hUo1ZJt!SvH6T05oSqE=VCKha~Mv6{4-5go`wee^4#Puhaa ze+&z{-~N?(v656S-HLzGPnpNkPye3~Y$bMIs-67mgiuD{I#7@krZPQMIM8MAt&MwQ z`kQ*5d^UrqF_Xl?R+ft0qkNAtI|gN?9fl#gWy*4i4al|5nW7=K>{sJ6!{pwv4&3%t zMgR3N{Yzm28c|4;7_H9p^8YZ#%z`UJkZYYiNZJzsNqgJ_bzJG3(zmlQ>VV@HX8dOK12mOEU8k>d=HEuJAZk?&+UugE^Md#WZq z|JJ$`>m7J{T(^I?jHJ5G`WQ2{E%jx@7!MjWmTnN~)rn0jYO<=V<6s$TmRJRx6dhQs z#koE=+6ncMV6fmWDD}3t^oUVCRQYDiYP+Sd7ZSnyPNIKxMX9;wIR+?^GfJ+%ulU^L zwVCX9jJ&o3`1QhO$un6WYw?*A)lq&kl|u8Sp;8pB_3W)lK@tneLam}i8F`~?h}A&$@qZ?yM`U5yhFD7j#Bvs@aftvaKqQ3HwqzL|UXLn7AZOA70F+lxRMq^U9jd$r zVk+ZaOeK~s{^yz620*z{Ze26G_sR}4<@^frSR%r>TU}0NnZ}0v7teO74|4~nXQhmM zl+s*PIAC=phDYOqu@Rnz-r^5tkYO2_gSApjfMuO)uiQRt_9;%eg{g4PR5N=Hx7`>( zc{_o_hl1C)cxVBD!=~l09c*C!hVc*>G{wB`wxOuC7t;Zc6<(_=R5$s1W}<0j@x3Ny z*5C89epIDxKsYN_hXpDlS}_ma;g_{$RO_ODY;Oi(`)vr@hyIuC>+EwU!z4<5jLP#`}HwnA25YU;X681x*KGF#0UCU;HMD zTTi{!wcVcG%%+)n>ulPRTFSz}rP;TN6|&JSoS)j+4i}JvrEQv7Xi{!3x|^^yx}_Ve z*d0=ol4W|6fd-Qm^aV@GUj3ZUB-oKSx*aAMX7^D7geijx~57pkH#M&(w_3ZMy zNW*6_Yq?76FLtT?9j2*B5@-3lA7*f`_nBE(ulJcFQQTK4BsAqkb@z=EgD4Os=Fl!o z{vNU{0y4tg!y=ATMrX?=d9Cc%S#D>JQ$kKmUPS)xn@?gK$oG~dlTT&8(CZDkE5@SZ$9LYCWu|xe-+xjg;K=@R&YEJmr(Wk7t_R+bwOoR|uDc zFUcKIxAd=A)TT7Dl~Zn`vPDDgqf2Z(2Z%{c>VK@?{mP4_dXD9~!&xa}A(AJ`jdK5Z zsp=kfb-m_(lmZxPNH1VdU*_QguV zpPEwtkg2((ROJd5_i9Cg)IeJhAwsYS_*_n!bnNDpb)_Bu@Z9 znym7BArZ{uDe-^Edh4*L`)+#}0Ywl*8cC%aDUp`$lFmW8yJ0|DLO{B^Q@TM~y1P4v z&Y|8f_&nzvfA7C@aeLjfug~6l?X}k4lN+ro%tej7 zsF}q>&BR96Mxn;#)v)Y~Y@kJYL8nV&s?3VcG}UyvOGf1fh0!iS9OyoN>>QfLoXD1W z9{A2p<@|4A`=FmHNk%9cFIbGscGoV`*^>FBOX@v>9jVQ5y^OQ{=2{HuekkLiR5 zZJ9R4x9?zE+`zy6aA7|KO{NXYnEo%sH<3?^o&?g;@87hPRJ8hE5OyN)7lc(+KB|yr zNM}_5eh5Ye7XuZGe6Ujb|9~*FC;YIKG_Z-bdzEu zj-Q<*WeLXz*mQR9*Mf^rmJ>F923xUHPT*T1p1VfP#bmi7YGxqCM-hZI>KqjFc^Gd; z-3M-U?U(&9%fc%KQLV@gy&1ytTs(sHZvM!yxIr(AEqLJsyE1ciyd~4GnaXi7Uod^T zUT(AhdwSDpId{DMv8ZpG0d&j-0K$IYLjUUj+wG6~|L|qDKKBw++9#(BUC*_Z?2L~aP6UfaGo6F#}Ee%{1mG4dLyY5MKOW;06 z1eL~4C0B$+DY*VtuIfYf#>ToWsRwTdbzYO9KDGhg55e1?(h-9_cxbg9<~DtzT01oL zMFRhgLU292O3FYPV-f|V`)p%rk`LQ{}!I|5`(>Z-0C7q zUe0B`+o#HP<^a4Eqs`$deq=D=kq1&-n)ju`?|2}Hml;s`L*f4f62P<8R~aihFwDI= zui2&S?KfBa0|%q##RCKmvIGZ{?F~U=d1=;QZLaZ+GH2@(#I7!USztncT zH*r14l6=Bpxn+7GNjn;TELV5R>FWrC9_y1cUnv~s-7MlQR3PoMlDjn|2VFR3k|hO1 zRP*d7$4zst8PjbxF~7Q33w`Qn3BUB%MPQKYHvOU{`+2M!>AicZhmRdS9-sLDz}E?%qyscj2H6+GQ3VV#Y2tRWCN3Xn}RRu|*PyyQG(3OFjG=!NT* zW_P)wx2R@ilu7D+IMjS|?ZuFdn52m5Xgmpo|KhOG>~OA~L2jo};UuoVq^m9E<2;$4 zL;SgTN5L)^=#lI&GZ;u4sEze9+}vMpS)?Ayr5GRVw0O^OEyi{Pi->c{;^H&{B4s>Ri zv3En~H+7(ncfxu>y|Bi@yIv<2Mk4Zny{P39?cW};65ZSVDK}s=qzjfXo!p*#mmNl( zDM?HHSG)DYX5{SF;>Hmr8_E)Ps0TKe@uiIETYkZPPEQq`_OIWSU27xfW+ZC@_*^(T zTw!il9B#Vcp$#<&kV#*)?%sRF^^s?(j8CB7I2)j@T>;*e=wIH|;t=6W&1L?h-*8E! z5a!8mh^{1S1rQeJfZq@hHP8PHPbGq-LED-~Pp$GPJllIu1}A3$Zk-5I(V}U!D<73 zaylwtCwks-day!jfu6*Ro03g_h|YA_m(Yk*F?m;ojY)h4GPSE9tD12%tg(Nm1-LoF zh`JA(RYpSat(|Ul+RoPTG0GIESl#2^C+9*9{51}Ggah7f@2z=vCgGIoFZ%E?G?)r9 zg*ut&#B2YV%sWYsqyHFTX;1qB=In1Wo&(dfCyI_a$!zcy4l|E&u`C#1m+pH|LL|(?04u`cOy5^Lga65j3=`C4w_PY4;AztxMr5>ZIJ_=WTESaIh;TiJ=BgHa)m(J#^McS?e zEunbg_@QFTR6nrBm01fL0CU(gs!}0gNms0*39FGvCb;7MsU^PGj1%j@XVVM0 z$v1aHJk{%7_0@U&=t(+?9qv(W$cc%*+iJm8S_+2c5FP~KGhrGI{VJf&+Tu>d_p zVMf;Ap~a#Va9Myjyhp4*#O;AG;Cx(at#m(-J29t)bG;3>qx6}Hy{L$?lA?wH1NbPA zj^6V<-v9;e5=|D2}IKZe8p(S4#jTu?}H)vKv*JG;2C<`&rFey?adeBgKW zb3=6T(51cLUGx{tO10itkG^J7Wt5>Hulc~^;MHl~zSNCo-y{_gSDf}~+Bj_pQWTyC zuUz4|OXstOW4IdTw0V(`U zfAnbfCS%L}NyhHyc2fWL$?2~Pab4!ofpo&| z(b2&qR2gDgcv6|Sej($y)KHl`J*Js_mXvej>XGq7EnKJ%c@^w1L@UcD9DT%!N<2yog%KHSyu@Kom9g%K0BGHhD+inYLgWv=$~?R zx*xyzdKWUG`{T#JHMPrb#tPA8-rCUnZTwZ|jE`6g&bj1QqlNOaDohA1L!Hyn>88Px zmLm%(C0nAcLowf;%+%~zFyQuh!KF7$XMZgP!vT*g4rHQ-1w)nT5glZj=GrXZR@_t=wPtJ^xOYb! zXkwxgz%sJt<4k5?J)CiWKJIHZbF?L145&Dmsbx_3l}t>2Rc@J-Yh-Z6PUXbh_B>_P zj8CZ)=Z4}grb#@#$vu)f>}uJC$YXXzK}LpWU*`b+k@&HtBt@!=9O(zXMMqsE8t@RM z zyjo1lQMGAY0N+w)La};*Ofs)l4V38Slqc8CP!>^qG6I6G+dnX6jD(|l&a@%;)4n}* zQqG#Kfd@U9Dg?cvG7=sULdHKXgZ|2D+=K}8T8j&JT7yGfVuBu zTvl#Z6-ma=)f$L=J0v@`j;yaSujGA0M~pk?@P&_~$LPW7urhi_N4DWt!@;!WZaadI%CwxlN7Q z+FRbJ8PxOje2Sd0;U?@XM`^nOTV`u5!$!JAN&gq_p_pBO3U5Lwjy@}Hdp|3VUgr3> zFc?1}p0wl=mWXTl^jX9SnLI~D&smBrd_ww#U_@hOQXl3m;7; zA=l$~$wh8Ce5K`$-YwTM280TcCJ+c!R9b0iCzst99kwkAx%{1g_OBNc`EW6<9+i8^ z^aN+6iZQe-(P|0#eRp~K$e+IBM2xLOvd`;6Z@uTecpdL7MTk-_&^zC7Pw~q0r<*y- zj(K|~h`qVYLibOGhUDKm>5%29WqV?K!u@Aw}D({J!#F%j$_6t9v*A1|w_ zz|oost&OT;kpKyo2`%L%#Kw2Vl@t2iCmNNk;{rqN>~|~N?-5Tck>kfndNICKocLe{ z-o6v=NB#23>W7@&f?Of%rvn++$tkB1dt zF0JRI(DHQLl60YXZo@dMM>KBr9m-HMctX3u(=M`+UM-?5d95T#z{eOZ*X1=7p}1>u z{v)rlQ9au8uAe3HJ7>26X@KuhC9+LvopWLe_w-6D6s;F^w3e&bbY52!Wl8cluGvHr zd=)Zc;zt>F7_r5R?9w~9uUdim2la{Rp#{XQ`R!CPZsHV@30_J1Ap0xFRdb8*RP;KIR@Z z&`CJ2I}S$@tB|o9D?)xh&<3F`YtY4@7^)BD$l-a*K~kpCsAOE6)j>P6KJeNop58U) za3PgwUN2h>tQE*KM^<^Q{YFx8aftVvsuND0Y0XLs#DZ~2hT{K#6AVD5hK*)FUQGDq?G6lv6E#1r@9fJemd4Odf%gwwT^RQptAi#61dam-~4*NZjH z$@KHBG*()lv4e(g!FDH359;oM>4`P!3qFoT_cyb{<~;g}BA3_JpQzd&C3(4o==VPj z4K`B^4c_GbT?qS};0Lr9v{7^T1jC1ZN&*a|d%@?;t8O)(JmKXaF-ktYJtM}up%*^8 zdQE6;d^md0Yd-Y_+%OCd&SCh6dQ$*7?NE?1jtBJpM=wEOswP zi;#(Sm_G~@_8%V>iRNLQ5mvc8H9%Wy}(RS@J5^hh!o2>Tfm+!HeVXKgWIg;Iv7 zvjj|SH1sz5(pA^LA#D1XqJgDbYk*5WMd7qAU{CU(-IDHdBD2}e(8H_YV`Do@QRltl zT_kLmYU(bI?fBtE-L<80EZ@l)bGTs-L)FSqp}1Ug`ozOWzjFfFw+8#Y_cJ(QO-ao= zMHS7<^=}4cftYmmFeUhU7JgO$S^>XhcZ*Mk5k2@WuLpl@VH3 z3;XHPcNGVQx!uDH`#=>_?^*rH0B0iX@!s_1CrqJ%>}UcnW$PQ7JK-~EFK93TGM?lO zzTnYAKPH~dKRn9#oK^CkkMMy%U}e9;uE4%*mc2xqNH1pJK1`#PaR|&JaNY0LO}wQ? z6oP(9MsIkR*2)8tzmB>hG%Bd#<8pcpT&pPe*uklBZy`j3DUM0ubJl98yw~EGL*y|G zb>CQJ>;s+Pg`~J8Oy=hNQqTB2DHC!uHe&n9@gfCv=7z?X7QL^4h7EaPl+qG=y&k)Z zDXz;Lq*V;N*!0AatM~j&i=MwVArJV6YAYV$wH2*wg zKvchb1eLaeOMyk;@MoB*T}ikHUIx_Tl31q3`nj4(oiL_IotlYqs8B*QX^vW*AIOH* zd1Un7qmzfnzohmlOF5ph6lE)B2A%*ZVk<|@MIgbiPgIK|L*;U=l(umS?A?4hj^7^a zHsF6dMC%Hgr5lTgY|_5z8YP#OZJelfw~_h6XRoig?#J&k62qkq(R#iT*t3sK8R#aD zMVcX7v#V#pcW??f(pBij;`TOjJ&alDvhyb7I~aD9E;@A4XaF?#V%C8O$x%4|CWwX} z#c&REQC`TncR-$2hZ&6ytfxo@mVHX!l#RAVCA>b<)`Fuq z`tE0JSQZcz7Kw)LINf+0G|IIs8#x$?Gq5FP0CDU= zHbRE;USCC*=D<|@^xZ9jII^B2FC=s`T=_aTGqzpBxZSZfiQ40Re_db^V+QvA+k+3L z4d*L^LX^4m-NSon{sW==`#8>`PJ2BIn8xE5+$FLq9V;@vv}Vv_*Zi;qliNi9}|c{lQb68n8wFpRG;U;@9bw0w(9gNNfC3 ztVirGt}Yw_R|=iSU52W3_}8tUSu6yG4Y4x>GW0qIae3po9gWvxZ;Pcpc4*1G1ze%+KTj_5N-L-dY7rUD35b|LphT>E^ z;?Tw7^q*vTPQ!g|8;Vu#-MOcjlE>==Y&ii)%v_G#X?wjt;ub1ws?7x*V8xs7PTOtFK|fA( z%)yaDk(oi-A|C^rOr`3oc@f;(o%-n{Hg$R6gZ##W`{M!j#Ir|5kWDk`DLU3%?CxO@AW)b-n)nj}6wXI@HGM zj05FHjU;>6Z@d;I$>|gHi>fz}oF+fn>c+xwEV0}}j-aha+;^Wo>Xn$wx5V||bhXStM zV#>zCk;la{%2pEwdgRYILo6Kanus$Vu0l&T9{*kCryfc2)FUTf%!L`re=P*67x`25 zqAhV@)+)=;lBgQHy#8^I7KVSkC2$ay-J~#)F@x!;oU?yL%7EBAP0{LR>M`ilHi&Q# z(sj_IetOHB-QDn_$J_!daHr`{5E@t*ZCmjEDq!&bAcWO?Gn?W%srT2*lK@avTi7?N zVoh>vf|-=FD{PGzyPt6nB^fHyy|t^nj*_+m#g4Nk_32JlzJeyoh&bPsn!j#N;W6A_ z7+RR^HMkQuZLGlUl(na}g-$)_uEBfy0SAfC;Ih@of$wT^5Bw)K3D2LFQ?k?^S(6ot z56_wqg~s+hsX~rbYdt-5l*6xr17OLsfdVF%AWTaRWFX0?gvp9SVZJv)#jf(09^mU^ z0W2{R&RKncC1yAp1#ye8rE)s?fw*b^f(}n}y=&&X z$YsmsYOD#tJw;fS0Ak9Ehfk5M&xV8a6#99B&T(EzItFcG3b7TPY^^XWWQ)7BS`pT& ztmt~(Z}HL*WkfTVjB|Y1pJkcw-sZfXN8ZVhJ?5ON7RHxab{M;y?g&->CR_WrLsCZq zj;q`M*Kzf-QsOE1_%OSKq_~gRpIudB)h%q&%-*NaIUaqTMS-LKX*J*$RSLCxka)8+ zhkGouF01hBfI?2(1Z&S1uFMx>u~@%8=Gt4kDjr%XdB`~7W<(<$ z6daY@C`{tWkTY}Vop4WMll??eoe(+~X--lJyfa+z9Pr7jEP`JYcth2@o!ho>= z^ziPCt912D-N{av3}9g#3OOF&=A%Uvg7h1ckg&UgsU6}W%CQU5JFThD&|Yw z3N6&7%x>1F%xQI62y-)X&oZjI(&t+>UOt@6{ov|@;C^?rrQXEXYrnfx>YlbxK<&vI zR*M8x4(TqVk2Lc|D6%0pzbb5bfdA;fd85G#sYpug*LId-!sZ2;*0A0BeK`Gi`0hjl zE8x?+?ZVaS=pP*LxDQve^X`j-b-9|$p}*`>e&5LQ-B8yo;m!Ph!Apqz*AXKD3oSSe zXr}qs5knv!mM*G@34H*yQx#ZvlBI;KdcGORgt=pi!#pA$YhpbQPTVt>iQSS-(Nj0f zDC%Y@&s@dv5#Obs4_}9R^Pw=-P7;$(2v<@o8SzU-!&fQ>4u8>d#QTk1Yt2f(p!Oln) z9JRQVeRPLU-%WV#AhFZ3$eR^yAr6<;nN@h<5g(#vlVM2MeGi*LUtgBAQ$UJD4eAb> zY1R-F?f;l`3k78<~BKh}b%`E1LmOlA-()h@hKDi@} z^M8JenY~TV_QzHKD-IezE(gD)oLJiy$MTy5Dj8Mr{huvdY=+=FNMu36ED3jh!GL!& z9^!T(T6$^qk?yW@*~;NCWoWwYE|7}bg)5KE@=(Uci3J918pJWILiw545)}O^lmT*$ z>rfoA_r-KxyG55avu4gEHpkPd>QnPv5OA}lbpi$1z{sPVmi40_LSl7tUULlzssB{L zRrJ7=%*U>&q6ZbJfhOiGbIAZgLhCc)NJgc4%&ZgzEDJY*&*N=duVKJJFet8Hxd)E; zgK}tAg2^vIt}K2fh!*F`yMHzgu~(~J=d{Os9#-kra$TI~9mO)xQgJg&Bw%% z-CAm-Z~snsGTgh0Kn(k|-U|G`KLej%3xWv$;VRM6JkkAlk-)%P!#k7J34P`n2Dg-y zPD2rfKaM;~OthVdS(-oogL8oUbItmo*Y_HOerj5chYR|a1SknoCX{ZwF!Eb7CmMA3 zRjK&WJ=zJ^S)g7X1rJLA40QLg5o{AHpPr!Qww4e0HNSWUc-N$=$YqJ3<>fcY^Cy2` zJZ*CZ?oK*2>qNIQ)xR%z=Bk`v?P*eCQ>fRroyoIZV_22sFu{O7KS?E8x zY8^4=_Ve|amS13@+gQ5s*UCGEhZ+Zl8+YP~HM+~^d{uxTy64OL`^e;WLy4*HNL z{0U$)7}dH#P!qenYN9qH^91`No`z~n@8%bw{XDceiJB2>6sIxm_A*l~El`_p13ry9 zE_NtJO9PJ2)M22HVD=>xk1VZ}$#dK6-9M)x+8B#dGKA8@1c?6=$HO6Ux<|TK{J!%Q z2Fed%=dT$|l3XU?!!me6kgT$!(dNs+R}~UBK*Ox$V+r`oWwH!Bv#PQ3KU+?8RAsjS zi%0>mh>*fj>{d8z24c!TA5g8#m+sfwIm;-!Mx}O$65-t8&@C4w2RUriV$yTO9)3e5 z*+nkQtTL=X4Id452$Ns$r^OcXs`;(=2e-U34XX`pc3H1pe1If#M@!!%gQM_jpA+J~ zj$L>IQx!RZHdf8bz9L1zI98tJ) zR-bV_x@ZnZ#4Peo`*65mFA9g9prP@A)v59MH2CSXXJsS>A|#8$6Ot9E`XAx6664Vw zb0oI=_Uz|4-zf)59wjmb;Vr0&@!bd`S^4qZ2$WS&MEVYqoHje5Uvxp#ywsdvNTzr8 zE?|s)p0QZMj3MKL>7YbK0@-L01=D~jLnCezb)Ka%ldCH-R_4=ODGhXnVYFzcTuE#! z$GdsfLSeBA>ua$Rb&~h?(V(llt$ZVCneK7o=#OuL3Akc&zkcw&1jiCK>JO>ZW06B@ zh(3hO?>0;MD5!jj9*jV5*jw-c$(JT3BkuS0r3@Y6X{h{E z)TcMQwIW^Tr!uE^+~D^~r20yo%cajogk{u9)$t1YqQj#_NK;(fV(lEj%Xj5(PQ^K% z_i05PCov+1Wtpxq!+9ea94>W;i8M~zSy*fa4E{_M$M+b$O0)<)1&go?BMc)wjYSfP z@Wqu|va}Zep3z8CqL84CQhrGPV5l<)<2mHb?j?+$&6u*Ss*B46W!+_tVRNL`nd;oCS$L~UGOPZQY? zn=z!P$MttzF@0-`VD{8!6e)Y6MWj&b?^LNsm@MopG!g$COo%=_^rf#&uedKzj?DKfL@O+@JY*voCsBBIR6e~eFjy(pA% z;wCx@sVV7kqE&O0FJ3_PZe}Q{^!{otyAsNUFVtSFA@f2_xNx1d&_NusJa_o8tdog- zMWgf>9C)x6@I90H&K%JGStD5a?uy2fkum&$>URwL4UD|WebltMv~F2%+moAP)4jeq z+}>2*6jXEirGt{4b#yX}d2`{Bwb;8J8PyW{I-V>{s|7@zd{n||Wuv7k-SCO@>Ggah zeX@g}NS~;nb;jlIrfjjwu47ix-r{>X!jXE3am41IDj0-DoJB7dz%?Z=Us|n;?H=n9 zHg{mt8rG}F8TGBNZGOXYK*`<68uYLXmfRvook*Lb(EO@TO#P0n31^0BvZm4XtZ7>H zB(^}M2@fB4+T~>M$Jz8kzzgkPMexLuY79=2L($6INu7%hUzUYvT9_;*S_$ai%LWwc z5`y|^3@}yg-l^}bV7A%%tUHTZOy-Pkoi;CgHpGafFQp)D<1F;|6x=8& zKW)?Xm;~xSr!>$)^J0fdX`WIPub4r1r5ra-Gy8rO4X}Lx$p0Kb{$cQE=ii5?G@P-{ z7ngF=*^-K3op`EAn#`cHIYw6 z8AW(r-2Y(6w%~AD;+`0-{+3o6W>!Soe0Dw-p0~Iaso9r|LW-mZ^?r@plZ)qAI;ebk zmh<92*EC9HVWCg}_VfM=`#QmJAit>NisWUx&$MJXhONU(DoV8({0 zx&dZPpyjKyQt&5~kH!pVC@+TtGS|wzLI;An*Sb}LQ1Kg*Wx|~An52H^tKY`uSGA^8 z#J8pMlln6t$EDB9ex$sm!!va{LrNVQiv3l>lp_W6YupADmjX;*^-&;}+!h9=urEUR|AH|x-Wk6V!9tB0iVaP%nKoi{;#8i=3>RQ zqJ;Z1+=88<{`bJgk4+M?9;-?pE$qj`s>1aay%J--8Skic`galy_q(KleJ%Hbo8O}6 zj1#*0@@rAKtZ?&WAih6z;_p!D8+2u=+|^_d# z;mJ|RjhD(yU9`4iNJX_+&AthmTiO0E8{yZ^Ur&m6tyTN{{MY7Xhc2(C6|ay-EhR0+ zxz~S5gv+Wl(9IMS)*_F}_}BjVQ1|DNe!8RpOdTFPw~}qak}07fjN|-{;Q$g*w_MV&P<#4y*`ryx_Y109emt>oZ4c*s z>b6#1FO|f_RjcuJLH%gN=Hkb_>KoY}q2Hi*FnQH}V^K-}&;q_xm*|G)cRZ$)>E6UM z3XUDJrOuJx8nft*zLCvngIzY7Bimi<;wyrLH_11b77_~vzl`i6vQTPvglF)>3R~GJ z{}MoN0f}Vf*2KW~Ux{SuW@=;)9Hk6Qlx*r+?QI5SEnp!wW_4dt#Z0wfc9LgcQj)VD z*xF-<4K40FhyN2F7%=G*gF!rnGzBxv$A<&$dLm#YY0Wo!b20{LPA#gJT`HBa?cVWR zFKil2xmVlvxw3YyCJ|dy4<+5Q(OE+~hE{5rm*4ow%@& z`^)<-gzs+JaV+ARPuDB$h0B$GxQ_VY&?EqJMon2M&2mfv>!zB*;X%oAQNlIA<*=ga zWumOPm$H{2&7{#i!3bnwmxXlx)*B_|`akc6h4Wi_@0<_on7i7kHX~RB54Uw@Sl( zCVqTl{7Z50XFs-3!FvCkwh{VvFO3PMI+NdiFdJ_1s(W$U^xEBq!behDWVb@v{(BeM zC&O3|L)x5?+D%$q%0DE+q|O+pHKmt7LI4K#htc1EHgK3-+gX~=$9?E&Bu}`19Lez? zQCPa?Gr=V?8J{K&94G}4z7dV@#;c?+mk=pq zow|pcR;N`pzD`VC&;Fb|@#(54-zw%JE*L#fVXRLvr{ZbCdCrv29_#j6PHov{H}~9p zL0GUiQ8f~aHmvEokt^x>H(nHnQ-7!C@r-Cmt!bq;_U|u0u@t*odK_FuG>G@zj>jf{ zVs380@@_^vcuBsMr7=Z;RUb-9gzso9&yMvcxpjx09r`8TAa46TEU(#%Cj!Vy02WFC zbOOYGJHhyw-AKaISpFEr$gBB|wpJMZs54OG2PP&pUmOYwz?XuE2+-j3dLDnBK$d=ySTVxvTMI);ygPuy3w z&hxfyTF&2?1>E=~9xH$@>QJh=gNm`k$>-3VW788Q;(@qdymuK!*-q? z((G4-LWfqwTi`+N0SQ_QcVzC&*H&8-GUC6yW?7=?5mgpgUl9aw>{}Vm<6$HOrWcHG zsqRnI#cWTMuOoAEizBmeQS#rTm9vPCXY*=5^oTM_$w7Qgb3LWGHlFPw`qVvlcZ;#Z zv?0{iZvN<5ux&KHe7#;2%hrt%8kXP3NPMDK=t+GZu!1_JY^q=Xz0H{O6*Pw|%}TkRz{4rmAFqr;jPfpMLgS_qSMHeh8hoP}d?GXs+nerFs$Mu( zea~|$!n;@>xR@=XO+HoYGa9mx`uEXPl`{sk}Wy$nZpNe9(+fYgau3@zOhn2vE+3%MW zb>nl3-A0TiD6h)U;^J)is2m!oPrgM4@|^OorgZ2M>18{*{FtNX`(k8!NM4g3fZdcg zOc@lIR!^yc@eEOTamDE4d{wDKA3ATcfo>h0497n8`M@f}T*aJ0?~=_@^ScgSBylRc z`BT`ttK8@F#4QR7!*gw&I&bTAr5wD?8ku0ayH;@S;BMdBJvn^R`^CkmPOl}Y>^ji@ z4oUCQbpVGCJfhO~$)v|eN2$n_J{#DP3loWY+l1oYlL=onlix{>ROqy!`j&Wt-J|W! zJxogD)m|59U2FRN0$*|ZvV@c2CSWVu1k#rSNMD(8nax*+Qyjt*oP{7GSLE}({zo9P z`2<8d)G|phg@VC6DqL!BDlwA&EHB)jn7Tu;5p&0+^9MvDS5Mj%Qf?-RF7fo;hc7Th ziK)%DzGy3J6MTHvzWILY%g7jbXp8NB2rChsK%FwYbqop z>+@rWs$6r>Mc$gfUL$GokFc-zSa?m@7stEWTapmv=~C^}WWE&ko+I9Pvr12}_#d2h z_8;nJ+ESw|Eos*i4|V(pCxzh2HPY_wKd!6LvhGy7)1n6M4h)jlyabl3nA=8?ytEaERQ%y&}v z>bo3r4(1i_j%z&`2mNY{y=PHtF1iF%Iy9Fu*3W;eyOY_rWnt*V_0g8`i5VBsv<@hA z9JB-K5n>fF9js<`M zr6OG(@!Eexy!lk);xOWpPMdy6wxQQehD^r8v(ap|$>=%~ml(~drb>0DVaZfGcIskYD^NB&DYX^K8a24MD zAZ|=mHTpI|uL(MJH30Ep{Zv*4+G@>&#Dfg&>fiYQ_!J0HxbhSYYXgk>i2PuBG~1*5 zCrIhm<%00}$AS(GSM`I!DQ4{uHR>slQTLLdOTb{+HP(ZoHt5w2P9OcV0CHZC9YV5oY>T0{LO*3g46^ zcj&)Vv2V$^GHaHq^$`p>DjFE^S0CezC9PHj;k7ji@2QkKv=-3~ z0{hLCykeeCZlv3fZDjs2iqcSLnvd_Glyb)CWo+O>8&R8A2GOy&+=PVr-d@TI&w$do%=6C=(v(ydP^7#xE4I&^d*%^ ze`sQi56nv&@zxbT=U1|XoQE=tt_#x+`c$13$vL7cS9d<+83A`oELS@XeT@t`k&4O+ z#Jxz>T7Rf3fdc5CdZ8T^iLt}+(}fGA3NhdStaZ@PU~079m9wz04uWb864O*rEmXYJ zhvC=BMU5;7?%aia2Jgy-s)Kv_#!=V_VeUrO>D~5WyHbn!*y720U;2$#4b}yFP$w&y zJE}A1VnGB!yN2SBm_I zr%Gj5o6FEHO{MhfNb}VCO;FM$J%(n2D!pzS{+Fm7rYnG>ojTR4vO@E-S)x;ikn$IT zh14M$&evf~7n4ONOJ}$=4+H)0(w`M!~=Hxe323SJw)4HlDk-OcvzmD>iZvFn}bSmdMNt zk%?#0*DDbcRkgiKm!EcNE6d6GY3G0h#r`)zL-QuK(Xg_yfGzDG%1WxWbQd*YdDYdy zN8e4kUO}q?G%M-b3;{F%6x2B*CHY)H?sa(d{#ZQ8y~KQuri?J)z`EfY(nmE@%gE!? zIm>zcHA1Jy#;)zSN~b$de$sIDD81+ zP+cJ-OXh8fmx9S?ZIaE-JGvjqpv7#GKj9X%D|K9D_vQ>@-SE2lkT;X;WJX{oR^;G{ zv86DdPhbZW?&M~i{1c7VCJpvKB$|~dEYuM|vxNVm+0QN5|3jjgeNbBFGhXI$WhvE5 zT1A=&)`{+?iowrEJ^a~%b!tEQwk99iFU&N53Cx}r5Wpb|0rE2x{tN=-r-m~VXN-sK z|4K}smtH^7+_k9|d>tmgXzbFhWWVte5E93k75z~-XOG?~NWZOa-M@8=(JGf=oi+9H zFin&aTC>b?^~<}cch!jOw& z!A{^CI&U+dbK}ue=2& zNvb$`ql!QI3LxvB1-Li>{K^5~*VoH_h`{p7D~wNoNh&>O>D%O)Jmd^0W~85azJ5UU zDxI4<6T8R8C^;yB6d5U)C{e0(61$;C@VRoj`F+3YI{FgNCq-X7m9EM`m+^tKKO-6r zQJv$B$p%12-bXn5Jy{vq?jEg-wog{Z0y&6!_dB*pM}}eo#7DsiGX_N3(;zaY%Hba} z6zi$vkw>?h2+gK4@uvS=Qhqb9wX#eMTR3`I2YTc735%?=k#chfi8P?{APdw6!@|lN;<9tFjgk9Bat|^NTjdzfhEErUc#)T=OZ^|JgQNo%y=d(*xvmWdC zp1@BfcBG$Vu@x`{i0U;+P?$Anmn%{U(TdIwT&)E?lU$6WU98ytXb7lGXR|&6@hL-Q zJs)kmxG>Cqzh?a_IfM4{MJSJRCAl{|^tu_2gr0DS;l~!$7s|(hr5c@y<7Mf?aN!oy{7)&SB_< zr5=w^Q*2{0XY22~yE;vn-WzU6k)F;Gn||SO{WQU8l}$~!pkmEHqyI^Y;r;b;hl$hR zy`$MoywL!!Nw(vfjD@r8KG0$y5~imdlFWF|db?6`Ntg_jvt*#01;U>te;;;I2dK0Nrt2rT zA?^9t4w3=5!OwU|v-vxCOs9QQU@0Cb44k7MN9@cWqV736xAf7mhu$`HRKx|E081Rx zcV=v(4Fm}OtR4PYynb#qQw2nOU<>=3Rz3Pyjs0S-l;|HN=^n@5Vrp?}bbAx>edlRj zI7WRjv`wfqr2cYs;r}*oN5W$6bmqDHm`;D%K*%8x& zm?Z(3EhGjdvP52Khar0tU=OfF)kpNmN>j?ZauviW+2_o`SlLV4gAEdgiq5Dh|JkHX z7XQ5DazE@O@-N&-@L*9Nd#qzm?hN!)3c#9if8iHcaZ1wo!6qd;IZ51@(kR2x7N8nI zBAM38(w?r!6K8;<0QmTk&~U83EZ5Zu$HQk=;i?0s@cCv}(t4)ExnGNCRSi9I+-gv@ z81~zh)g{zo33XbJ7sMOxwum_tjw)6diGQj;J=kHI;wwAKm_SX6b2V%;HWMF4lyO#5 zFx!MYbng?A-MTLto%+Jo@bsM1)v*TLee7*$))sA#a2%(oDin2EmgeftGKM-9Q7Ug& zYWZdDcHrvf*i>Q*3Gnn-lE3>_M!q`e`YALN#DZKlU;Xu@UK*&X*!yW&akj_L*U>h<#nG1k|7Fok1pk*stAYhsG?Qn|ZZ+JV_6mHewj70cEeah@ zqy=yM%mR;{7>S%GZT(J24YyML`7|~1Gy4D=P#@iPL-@DmS7=ZMU~lO+g~K2~pb-fc zqdiJ@hu)9Uok#4!^LBma^6|Q1C-Tq0(kH&8HLuc^e!24`R$g_S5LuEA1p4RNHWSZE zJ-6xP0NN#kQ?8d$D^kk8{aTkx}J^N{cVdjiu-wV{| zA~sw5MwO@w;FBv~gA4lVz^a@xnRjPB93~Aj9{FR^YU8#gmys&6&iq)OmN?f_(Q|?v zvi4aMakR&t-f4$HW>#scY!rk#m{6Ty%LKm&YKVv1ngbj8+HF4W6r_yl?7th^TEIJV z0N$DKzwhi-BxUePn~*%T=-h<{>Awux1ITmsm$ej(Jn&l$htir_H~@>bM~Ao}As|qP zP9C)fuxJNtdh!2f4kwGE1%^yHfv^2|tDPpl)a=Nk@c9J*Gf>UWzVOIB2l@RuA8lTY zw#y|wj|BgH&>CAxuS9Mml7HbYKX`4<4EdQOWruQTqA_KxUYE9f{5oTcy=mQ&muqVX)HGdidUk$B|`qd-!a}(KY1lu-Mza` z0S*f(8u^>=lT3%+`@`4QHnGLmR*)|JFLjIl^ou9qauDNz|7Cr|+*5RCe|rx9R%vG# zG`035Sz{hcC7j5@E& zL_@Uur{&C+r{&Cbf8gDX%ShsezI;BSdkV1NP5=vz@%ADi34u?{6VVtno6x@Yg@U=! zWu{d+c1l)@sE{dF`})JX63f1Z6+4tmSbX7xSA~ZVwk>>C)RFBUDzty}v}am=de!2X zd_bNeVuI*TE%@)$q@f|ZaP3+LJgA~N6@>Qh>g)XyS7}RF>swFBVu)|()8Mk4mjg@k z$=~UceVgJ265~ZDXB+gKYZmmmk=RGLcLC;y$NyX z7y1l&+M%tCaC-qj=Sw)K>+~~r9&y{MnoEwP+DXv0RC z=mSSA|Ge!;QX4XInI+=eU|IBEvfs+OeI%I<~zpHhrZ6=9U|p8g3Y- z2tTKtxLt3Ohq~~HTSv9Z$&QqW^T>*ypL~6cN!flN}q!D7F4Wd^+i^ zRnD&PWxBgFwtpzxrr+@Z7BZ;b-ld@)Gt-!J^A&X%y1#Nt1TbyjV<4}+xyu<~d<8%1 z!-9LK4HIq$JhGoU9$q9&j}$jp`+JH5yJIm_tcM&r_4R?2$(jakGgGPtJ?(hyg*P6L zIloG7*ReHR&OOY6sqBj%JO@iwQtPNVnJN3-8qXLtTji9GR42qe%qEfwE5Aw?G6!hI z^DU6Z$$1|Xt5=Oj&PzDh-AO#gt2H?G^E;*E53$8ARFJ|d*^}A&0I!7UAA{zH288gl)pyhq^)wfH+~Q^DfM&r_H3;s@JO>3 zrFBeyd$zh934b&0E%UZ&Et1HXk-Y!qK7aW*xBir{Rr1QDi?YU(^Cqag%CVgrJ72D)7t3@(X#zetz5qTa;Lg4S?@Bx$G9P5p4b$4O?irbRr0vznx z_yb$%I%vg&1l96R2i@@hITChF3FmbTh&KrTTf8wZp_6Hq17$p+v#0F(L}-8?Trc%) ztE=AnVe?BSsU{OMDjPu6kdmL;gsVM)JLADwl*`W>XnqGY8r8Av(9+30g-*=;KD#?& zXiA3f#o>$EGV_&bvYG>nrTdGKDmn zQ{A4_t;4>U;(2IFXB0WuzK#jo|fGyMi73FU#rufp{9CyXdFLLnD9H44B=so zi6QUnpB0Ck!Q9O1I5HQHL0XLSFWY;FNgo@kaeK<|ACLO0s&>!CQtMK8Uzkx5FNVjD z1o=nm;1x`&LJajR=n^0;ajdonv}_LvkHlieJtLMNu|R8KKes`Oh6D&o$0WSC0t zcPb2DM2(%<2|$MJ;Fp=@sX`?jci({b4)9kNCKr~BwB^x6*?q<&uNf_>>Lg8$sy>3< zBfCbn?S1f`Y^`$A_<%IVSM~c?2>y;wc;}wJiA{f#1N;2A7%rc zuALYqKlHuj_@YQkcgK_xm+g=1mYcjr$Z-B_?etS_O4>+=sP}l1F|M|Jb29bKeo*e9 ze{*ysS{K&&2o-&onWB^WQ3k zI_6y{ef+;b$2J?zYeb*>_Rbj>0OhzD9+znWP!1+}?pwyD4)R*B!{hm2jzBIcfbBG; z(t!;J3VNkKo>gORXdYIl|4v=K!k#EJmEqD80Lc(h(M|Ixn%y_naG93dM#~<@@rewhQ%9UM?j=Ga5?kO_I!eV; znBLl_lO9$R=jpND*zR1$6(8H9fWH4sw^DI$<#0QHtZ{CR?W4nb7{8N6P*DpC+AYx)=}3;ZA=uyUCe)+_iS2v*i5nkeulne5F1q|m_6day{JRAGP6X$`|o?o&-8{ixe?b9uXgFW z#_pWMzn;mD*l)Ae4pwzRw=~+?|Vnrwq5(uwQrtVMpas^ z-2+Dt!d!?`lJPVbO>n0%0H<@r)21l7ZXyLK z*CL}HJlH>`hVKzvHR`aZ*E5iOxJEv}K0cZkrlDT(G@eVyoqt{%pC38?UQc_X{q5~R z4@z+4A4Bys84ptAy~zEO?5%q_a@CSW>@`m~)rF1Ir<+65!)wc=G@_#;#LCsn_fXIy z=Jyjhc|PQUBA;I$83lGlGwL_=4v}E%glP2&a{TZ77mqW*Evzs8`pn1QkA;TsNk=$* zR1^apCO*3;@Fuwyu{s?U;!Z?|bzW8%GMPVBzX;y7&JVTWd%3nERJbKTjA2Y@@r?2f{SbOqzUSUdSWTui@>bT1& z@$FZ>@FTsSnH!umZ+ulCgQje7qrEWwiS zMioCMMnBjYB6JeC$8Wbn{QpM_Y3`gpn*1KR+w)IE9^8dw*otmaZiHB+=M%q?IKcm-$|&EFK^bbkw*_ zSk);Z=@R?;GZQK{*B9=8I4+i$AUDFW4mSeXf9Vj&O!G$m_o@w$=P=R*21Qqosa7o_ zdLje;mCp0zv@<9q6^e9rQ%o(+VmS3jGK3h~-yJ^HMRsGWD)Yq71j08jC(~o>%Kb++&a!bLUGmixzO3gihDE%$$ z2kk;6;tmvV9qb5-cQq*pq~tPzYa9IF)#bS!r&1)$*1Led+C{dP3zIhbqUX|en;Kt& zF1|^ygnN|YDrYF?8SS&bN7M-zF?Rwr!{ROY-BAPW@4+oI$pDO z!0ncU_=BVrmo56~sK080;9CA77b#!TnZIYUfb)v+D_u1hco2A+?xAF>ty%Q`HHF2t zO_a}bg{qMGr_Lrgu;1CbTlz1J{AGw!i&cZHD)3&#?p&eAMc?DP1b6v45wr`T8Pf%R ztLu}*C%g)bf2-Ei@~~BF9Ge%-T|)8Hg~IX_Ak;3)J*aexYx+@*G{-vgdy0WHE zE3(t4ck=36)-;|SIl1<+mKHqA^ml0cTqu8pdC412o47ie_+Dc_TQ|`;N-sF5wV_6^eiFwuG zO@Y}B+8YasndU_S?aG_~Q)EF+@)tPh|Nk>pt#@Jnsj-5BK#kSvrAH zj41K7-Bz+|Y|p1IY+MHsgB8mpvG}GnrJxel@AQ2wz^zTs#~wncl@xmWV|ZlQVZa+ppUZIQ@<0RyJgKv%*^W zF{$CK*Qs>MW>wB}$6n!aAWvA#H*lRY+2?S#^q$Sl?{c-rC}7w9yLCd~S_~Wx(M;XA zZEJp8Z8hv*F7WRIKXq8gH;^ph_do3wG79uXMX}Mc{1+k=)U*Qf$RQGP03=ezXOQ@I z^_coZ+Jq0ZQ(#ebW?Vnwk6TJ1Ip4chF44Wg+$x_{rc~kQ?bG;%7z5Bw;&Dm(1_FAe z3}Iw~h7;|tlFMx?6x4RFE#nzb1utGz?5GBQ)-md=CJ7SD%l+1 z$|#5V*8ZlXRrzt&yd!!)FvgTXEo_dL@-x!7`DLd_j{IvPtYOP}3N7cWtP4fIQ=|}! zhKm+N{(0_ZTy{P1*ONTl_a5>@$UTb(2pe^wfIM1=xtx;U)6b3@Y}7pIFMZY5Ov{u(0SxU6o8{^Xd}01^=pQ6* z%LCZ`)(2UQ+5BW8GmJ-pSzm$gRixt_%E{-XoJ%|=gwJNBap+WHZgpNYn`g6Qop4i+ z@cW??gN*ED$|~&3&3zi{&$Pb(=)thMRSR6bm;q__r_dm8&FUejz@*jaVgnbrVmXI1FqvFteF3T4eMATdJK5|}`IuCYIoYjiZ zS!`v0*pqPQavXNCevu*omB|2qN=3TWvCXvA5iRNV&t!4XGl_5tPb~OzolLKs^+V*~ zlU}TeY&Vd`?xLa*?~4+2{iW3@Rqim3ojCwiRd9=@;kY5#+;#MkSt5u1Le~-QBlA>= zc}W#b-X1JY=DDUNyJS*i?8FOf>y_pKMieJ|2XOU?44k?u_Ezc*ob^AuTm-9Wux_!3J%1fkd0k3~#+QkccyvLZt*<|!(tOct z90VsR+C8%gN^`)a8~JrztEYmCAaBg$?l8r_O&HlUQ?=EAbw^rL!()D|KZW16QeQEB zZ`&9s+27XifYq34t15dDGfXk{VfOAsxI+F8SNWk#tBx5G6k2kK7muIm98t<57R< zl6QE#HGYIEy=GV=-Gujk&cf?zyF%x9d+z>Mik6y^*Mo3eY*nVc&%}>_nU|Ec!3`8k zo-~nWT)a0KQqWu)NB&Nn9J%L~3R!eh9R4K2FO)Wl9Evl1iFuhvp32VLwYrLQ)yqnb;{;Ug{yh-~3 zcHGRL6}5=CX%Ae{h8jH$g%XQ`$}`{hTAtgLyk&Ip`Ff7u#DiPL z?u4fJh_hs|de7-M7?j+brm4xq{^zrN`lI7yEG4C@n(Rry^fdMj#!<5|QjfLJ+%$3z zzP$-a+M4(<`}A=5h>AJ!Z9O-LED`d;se(m_7-G$HlMCy0`oS{fl_e7oRVA2bmZ+{h ze?+i*!LT_6Od(Wtm_7hjqc;vYF=?D|d`#WW9q&n`DsX0>xAsaH^Hg1z6E63!x@qy^ z!q}dCa-0rm6t#8K5dQ9%9B-8>W(cCv2RmuFG7RWmR&KSL;Y*Xy~1j}XF2BJ;be-Brt;1fMPkHfItw(ia?EG}=2$&f>pf6$_#$#(FlV z0Vc$!dNZ(7USxN89&T0Y&gax^f=xT;k3?=GzgP7-yea>O$+K27L<1msR+g{^Tki8f zEce5B7T}ldY~>Lu8GxN|ARNOVvKW;eS zU*ft0Nk16216CGFdB{$=!9NUkmYo5Z3j7NyXquf*p=p2h4#Rq+D*<)QL4o;x@1*&C znGk%pw#3)YQtY_5VV&^whpM zb@)8KrkQv&uIXV2Tr)~x#<#Ij7E!Lo(oE(a-{UDu^Raac6$x`-3aIm+AUqMN9=^m? zwV6FHkiCnt#>)9>K2>W}MC>}rdojpUAu|aQu02)z_S&BTcQNpqOwCifLLn}E%c{h+ zRpR^()$_`Z#;k8;g=IIJ+&7&CruUk)C;iUw^VVPhffM}fn4>Nqe%2Ry@9#CT(hlj` zh!IGF{)8XfFXI^z+7UL}#Xdsi*NEjb9y=>tgyGnR`(j_6+-ZZDWv-d|ufEb@hxd)=8eT;Xf7a~) zLH-=Xq2X#`uwV1zvq@uQ2OBF8#uV5Pa@{L`^p<7|m6rEqiL=tOyBnD)L=I*at+(o% z_4d^1=-)QF!?jx9r|Qof=c7L47DY1z!E%|Embf8k=GFwHx;cmQFPB+C&vN<;!LzxG zeE~cSSBw_wVQ-|+C45e!R`(iSq9d19m2XMFgGz-h>lvG3-i$k3x>y27QYiGGPNwSyg!x^Wg;%t4QXa!<`onw7$OsW)q3K_~$tLGSQ=*oe`65?T&Pm%gj{ zePAQ(_CQ44nYsXX^T=6M5ja;)Sg$Qq&~BUvzLvm?V3eSa&Fh!jRYt{l#ENVq>7wzocKj3H;O-H zd>p3HsFua1?yi_OI^Kq=w6eSRnSnKQ&Zdj{owOXhX>O~wDJS#LpmA8f^%WjuecqEm zXm1Gz3&V2QL!!E&h+Q}#B|eN%lI3``BtItGVvUlXEDy(mS~CsRDe$hDo9;d54QFz6 zY+UwA;=&*;c9L!B-MEVs8AS_ZDA^12mi5tX350J!)~HN<2V1hq$}yy288L&v>|t3C z&1DtJSDPUxcx=wLjNnCN-eBh2rTA`1+nyH62Wk6I3>(hmbb=zr7piG3W$psf7Dbgk zl6(4om6Fpc=;?0B)xFmQ{#J}@DV42thHg^D&A}p^xJTS}Ox7I-__T6)mTr64crM;4 z=bTB|tl|P%+!BLEBcsfBz6d9xhVZh*0X)Jpzcln*vS)24s4BZF8B=nRFq#k2r%Mat z*RJIJ%C{m=2MIww;7pr5rrSIx3`Jar59!MZo>rS;PG+_in#mHRh;2B~(YHN;8`-jc zgcx+xTY&(p25mUdOxC7Cz%ciMApssRBm))*B5ny+h=uxd^y#W%YRT&@5opQebS3o# zWGVQ;MaR`Dbnf7(cpgXZ)f5=OlTTLO1N}-bWdH0D^Kaa2Mg7Bd;$Qy7mb)Db>5M|v znEm}J_0ye=p7`j^TVHRMrNk`u2x@kbRBXOC_?61sy!{;hv<(&PmlLH+J=$jWovm5Q z^XoSJnpkzQbyTW)1olLn_V1Us+NVlQrH5+TA0o20Hi$k{7EFLlFoIu|0a01HPu_!M3T2hlnw2 z?o@nBbmT`j75VOx4^&58Xo=+8Z(~Vsh4TCbr@@m44D)tJSNG&Uhlj8^UG%5g5IGR5 zqCO!vqo;-?@%d5@B?g+gh^CPe2zrty4EB}KeM)kb-3^oiCY zo83OP)YV7RtNc{H$EcH9yUOhCkpNl4&zdR=vJBbYU@uAQ%)8+MvPLUDzG}ANBbmdw zHU0IwAIeGPxT?CJvylkDdf};Q3#l-;1emFPPsrd66VEYAl2#KW`^IpGl6OzfNX0`o zJlk4WojqtmyT<6DLO*K6MAIPCs^}45J$Q@!60}^Gfa}KI34h>RVD62@F5}!vTRTPT z*d*yqcOLIgx}|G$VvYLGd?|qWwj&vA{@Z-{RxDXHK=z^rKV{9rE79OEW_)*3xn&{( zH8jsgGLp%3%k<_E5T{7YekuoUJXIX=Ck7+sP+;FE6l1l*R) zkZV-)%JnnrKRabeNoibWKmSO?NrHD&GA2)4K(}prUw@x(JxP)F{22bo7TFwNEjCxD zt0Rt3S&dCl8Ip3oU;@e|UH=?u+hbI$R8GfK!7HVFLte%~6fOUT7!jhYh;f zsG)>9q@qf;f23Kl_saAO;h4s!In2Vu4rPrV%}cNTzVGxQ{rnVPGfF$z>#7&Q{;GLQ1H3V6EX8AleJNs zRY+e7QBQI&r&y_&g;{dZMt}uc0g`MP>;|lM3;E6#w~zZRSsw1{dn8=t zZ`#n|seLydjkh`TLU8wzI0u(RrotBa&?a5m%L{jHcgiK<)d>aZbI;(9Z7ypfsnmtDYkdDdz~7K6Upx~}rFad~c3}KpqF}-#Xq?e1;4)hSAR8y%+oJEakOs)pTvo>r~XS z&8|BJBd1SSB40or0Y~HiZ%12&pu|C_A@WZU)!UJXu5w>d&edD;BIk(s>l3v2X@le8 zGlbiw?d#_Izt$r~@?52}6kC}JJ{m}E@o=7xKsI|c{`b{C9v$y6(&2_&(rSP^*6VOmcD%eF9Q@V_ zby`yM)IN}%RnGL(NIH~B;bFw9Al=A%Fvd(cSAv<$BD?#e6}sWl1*XrI$gt3^vF7R< zK`Mwc%q1xPH^-6O*Dco?9UpT?FOK22yUjO#dfpS6wK=J(wl9R<=Z!Vft*Z9G9xsPH z0y)X&>ET***arqMJ%d1-{%4TZ(OBu?PKC?|(c8!~;w}Du2;^-qwi^9A{HH6CkX8s; zlh|oGMfQXEOB$cds52c`!e?ElWmWUffH@pZ7r=v~&Y;{hN&&cZN#$>x+D5$~t*(X` zAjg!h3`x`JLcf+Q!q2`qO~qDhuLvzoWP?Dng9ofXpW zAxh;oheRCBPd(p7_Rb6sTVOGE5$`V?lFc!9$dbWpS|ug2MNKP^a(E>FY@HN|!G!o1 zu`!l9i*R8BN~}2{F8hs=aT(l-v_aN++;Q9Wcu!SXQ);?KMJDoWcw1+2cAkA{i(>d$ zYE@=`r;}OxBZl?476S%MpJNuwazxi?cxX%Euk;L=6r0(H6#JW|*uVbY9}8$+gHJ-} z*zZF20W3pP?bYub=3i|Nf-1E71IZT)yIunXJFZNZGRj1_{d7KWF>Px$bC@jp^LTwY z_S+wy6&tjXp%}ImTM~XDTR?nMW!2VRG*h!nr|wgx4Io07?odPs4XTWbFA>cIZ_4S( z4iAC9Pt4&kGQ4;59DV8;_!flwBIeAZyQZVo4P7&|F|3ICwwF6e%*=WP*2L6QvX z*PuwyrwMZr0;%G)?KgeW`+MmePjNx~I!1r};48WC-j=fZ?%Lh2xE0bJ<)m}OC7OCX zHvJgA6Q?Y|)IXWF3FW(i{$SqpmgWumeEA7oe$~$jdtF9-Uh|~}MUWde> z=&V-bTQ{>Eaolhs=g@p|AHFiOn1HsSwnm9V=J|>q1Vz<PJaifGX%c zqLFtG4zL;t0_JdCx;H@a{85r#OTz~@+rWVf5}23;E;e*4$30edBVo)7OMWg^HIe6U zRXiSNy_#}Fh?pBJoXM1yc}ZyM@JgMLaITrsvXa4r>^QAWId(6QDKArt_#NnK<6FN} z?G!jhAm#Av3gIsyF!f6&c66*+&t(3Mg3H6j( z(;(S^V2hDpUol-e)2CS!!3c(b@d$=(&Rdpztq9QHPe&zx9lD1231tq;i z9!CST7n9$Mj>V=m+MBC-@_6xR7r68~B!WMjsZO%J?Y9V4?{D>46teFnBxGP;9BuMA zb(=dV7L+f>0UVnI2|(Ef%YtZB{4jZgrEPsWR|1gjZF8Pqsy6G_`9%}If`f(7vdqgD z>C%t(v}~*u?sIEOl}~jGdn4)aLG}1^!YBn1A+^~~IZ~HtiaA;-w5v*`9AA#a7ei?i zgC~yJiI4A_7%!0b;Qd0+^y;dJt0h`m z7ep810iE)U-*v5~qz{v*^&GgLWex(gaW}+J{%;dPXrCb6R>5Y-2ocJ?1x~a%F5RQz zTL)1{nY$fCE)sNQx*wp4E`?y->BR85H;2WScvY{Dq`BZE|MIMz@qV1k?zU)1jD`P1 z{Mn*}hFZK}kS4XYx_Q_$+52nTBJFkilrm~&H}9<9Cy z`>6d~;6?$1wd!R8Zc8L3(hWK^kKGUp`a($0w|!pz_k8&dgfMDA*AD@3j0d$>Byh~0 zZJ0mTw|Wgysg1V`K~oN}^g8 zV~b?R#MtG@x9_w+;04L)W~zfna|O>)f2v9tw`#P1%H5W6cm^80bD^u=rNWG0&@u1P zQsm}*)1%*P;@@1 z%e|dvnY8MJ1mAxw!0gV-5JDZo;V4RMns9mh%S zF+`{X=*T*ZPx-@MKstUrpo3iJH0(EKi!0gmUd5LH1>l4qVEq69=cVAp;frOF_3c4+BVw2Y5fiQ+(nG>qYL-%5$80{g3kdacUK{bb&drj)$p!NI+X zDlLpve$kMbdv@a5MJ}c*Lmd@f5&JFwzq$VHaq{4^YmET>tZ{FF=M$}dm=Obn7%dIm zd!_19AtjCXL1~S?%EABgrl#I;CyaKFc{u&@VLQkjN3mVy3^sf3ZNpm!ThS?m87p6R18K%C*=KZ{cZYR)^b<$gkM762Bcnf-qS_Z-0?0<}408Uvz zfc_u&6spDtRUYj&_T*QTI8Bcx233E1_pqszc(Ar~Wh4E3r>918$q!Z~+RhNc$ zni|rj<=V@Z90|TW&GB9$$G9jXrq4jHQl!uWzxMEk=)RtypQuE4$yDRCpBVitt7`U* zJ*zp{rr=^o<|QbaBa3!;&o8(em>wS# zO0>EE)`J5ZF`t28Bj#f(wL1jJV_nleSfFpTUF{UrtzMSlVVeFu)4l2sk>r0M zVq}mHxZ03f{EC}YNGFRD1h`?>1`&hm10h2EI`@btttO0+ELgETDnM^ArpxKVv(cWJ zyP@77@maxGv-&VHkY5@`v)T8Fjz^MF$!9E@JQBP4rqbox$F0Iu47&8d4yuG)k5?sq zd%UuXu^eG-g?n)`Dcat*MwfaX9W7Gx&$=x)?t3te?i>pw{uu06G_v3KI?=HwnxX0t z7&K;DfIqs91kT$?(XpexJYuN9Z#)!5KjlZMt@yHLU?E$oVLVxwkvZ9sSG!}Kxy}7n z<$|tgD1>apmtd723RtiEU?D$=4y8lndvDQUfb}XrwC8Vwg#W*6_8g~*=w&ALN%2&v zbk<(`=f+%3o3#yk{ob4Ul9QG?ybXCyZp75Q>37fxa|t5)l_B%X*P(x3{q~l)28h$I zb}K8lvhRd0ApimY5DDE_ID_D~YUa|TU7c$_iOQZ6zm8*@YeAl-TH$1D1^w>$gzr^O z$}Z5*%as#J z9fyB_F>?=*lz$*Qx99u>oDet|Gxq>hFudJ^q>SG2_XCLxHmQ$%vF_Ag>piJuQpn80 zT@#VGpeMza78Db~3{bjg--o1Io|{blzeFYiO=K-rhpuAoVFcWqs$yE{I10A+{r4NV zBk&<`tv}5eJY7nzq89>1{rqy%kh*E&>vSQ_YyLkJ! zfQ84T!zZj=!5@>v-QjU7GWr~)3#YG1QNNB>w;lS!{jariwR(@#I|y!p);36o`|H8pp%`ZWHM z=c`-_AIg|Azi6j-LH5aSd{P0D1l1m&psw}OK zK@gUShoI*aLvMXhVy#nLDg(jwtykvnfc?S#{pv}*^T(x0qVeKp{A+Fb8}v>QO&W@g z^16z?&!vWPhE24(>XhQm{gVhW@q`%sCzhCrSHr7$Z=y+ERxGd%%obn@H8`=Ds z5-5%o|I4vZ=N**1%rcM2KKSz&tHNMu?%1dP)gY{Yh=zgK3BU2vL!`ieAsYUnSjZP- zTRNMqg$70kA0$we5PyGs77quJBRK`iD9IP=g2%4=xWq&e*K`b4N!hNbQAHMEUhJxq z?zoK=N)xu+H{Egu{Xjd*i|q#$1S;yZAovB)T-CepbyueW182eo=x87JUebDe_vX`h zQr3>qr5_FFk(JTPEzMNzdja$wSM<+V=?eAJN}jiDLu1L{I@GxGnZ`>2Zl%J>r?!qV?xEJh^Pt8gMa*_G`;o=NL;b^81zYXLi-Z>so>{f5!UkO2#`s z^T9uCf%B_gC@?*$BD>g50paK zo;SkCtN818rcTIp8n{Z7NQn%^(vmvCaq3m=tprcImaL}7m z&~-lKcdr!taDV!Cngw&>wWtU4G*8*M@5Bn@zQ4&^Ab!Yw$=)o zUUn<*UsEm6Sb5coSlLHT=DYtGvvLOl7JxWNNUMT?rJB!ve7y0>Sk;&YMxaO`IO*K7EVDsJ{wRg(OkQ7 z-bh9fk)cuml!uT{I6%9bFUD{C-cwg5cPu$oXL+WaGZ#0`tW@Kmf5=q%2Ue6k(9n#va;fsMcN~(s^!N^{E!mLaoI|n z8^x9tgeN5er~@iw+mU0LEk0nIy|WiVfmK<#Y-khmB|1(pTAQQ&8fMZ;t3%=Q$Zv0Yt<@3DlCf*atpi>P!h4HQVSWTJP|~$ihLw-@{Vk ztv19A7dZ66;UHH73H#IFl`00iS8Tb!YGp6j4!}Ns6X$N`;|ylB_YV$%Phsd<&Y4bQ zWDQ?F$np4+PIfQq!!ga*iCdx^YMvkU5ZXB3McbZuB0H_=<710% zYVUO7IyZM+Z-Vjcn8x+bxarXk7(n)M1J$?sZP5!sU0t&YR(i{>Z;mP6BR(-tu~1=a z-`32jFL0;NSDjRj^~#6#I#Hh)Epbygem4uyyv5FumIH_P=uM?|I#gRn*c!3-JIAkZ zrnXmU_^@783fmn%y)F@BEN6i|dS z%zlM~dhK#ki;jGH8hR4-h94Dl3N(STohlDNq0Qxo_km(-QxF)oMg+swgv~{`pMhu{ zD&m=eUf0VAE2cik!B=1CE=ZXN!GfVwJ-_NcAic*?E1_5ZT=Bpuw1(J-R`GIMn;}E1 zE>D% zGDefKba zfN}%Vyt#JX3hZ$2qdVH4w{v4lmqxax6$JNK9(*bNf8+?#Ufxad)le?WlnQXo)#DE<7hJc+8%V6Js3aF_d*@Z~w0LweynChw!o9Av3C<+XR>116thrMA{BEs`oJBGei~;JW3@8 zl#pZ0N|5Q(nE}Knp^+h-HxmW`A4Nl-q5{W2cRgl5Hdl!P=-T{Xm&zFwUE@{^_qf>k zvVpy1V>ZH*KZM@uCfwIP`|FYR!?%r)A;yE=S&DF8$L=y`oSNbdP@kQ`j^n<&ed~f= zx&|A{{or!BL*d9LWZWej=bI-lLFY)1PQsKP1!t~sOuA3G3O|3w9`d2;qMr9w*~b25 z>erc-3v85?VV;s>{iNWoFiZQZMm1XOro!9YQTJWD%Ew_ZL+PlB-mQqez0kn34)p4@ z^SY3wLDc;>ONvA6HIxoC|AVd>0>3nk9~|?4(X|FbUU25DV8tbI7tU`980Se0ij4)R zbv8E~NUZn?e^M`G6JQ6>rHgN21F022dA30eVFPL2t5y-XhgPni5cWJMdb_+9XOu@Y zP3#=@+2o`bh105eJ77KBy}pS?I-Paw&LW2zpmaT+kJNh6k(Uv)faWC%7F^kT|1e&8 z$9xJJEdPVPp61xj47NZhpU{-9bLLaKb>Up7A7~Gnr)K9v!_F=NZG#mgVvg3%i5FXY#Z9y9OQ+FV}>Ks;*42K zBiRhT^UL|ICpUMc#h+9A*7qpRO?+KSG0RhvqKyreKV(^nR{1|z?>^sl6+&*tu2u0y zc^#vX)h>lgV3ntvlw3j+izky}mVJe>?t@YqUolm67`2gm+M)1)b2E;yvNk?8gy^fc zG@!h_a3Fk^;{Pv36@eHv0%G+4Ob2Bp)EPP;f&b+?@q2my!*xnX^aEU{coIdng4oLf ztjs70b=OBo7e&fS0M>uXB=9ldWWS>@IEjnWgaX17>9Q5_0*KeBQB69G?I`(#_H+z1l->1e=H> z3vBd`U=NJQ`npAj@cpY$uJ>5o$_6f8uYXl=_-qhr*^}@moWBI-QTnaArU0^Vug2=Y zSyzXu^GNt)R+M@7>9k3=J4CW*K`rYZQ4-SlkcH#FF{f-|TZ=W96zZAMieb6vL;5+N zCIb`Jwfo%P=^-sl!}boMBq&I;6}FkO6{1o9GZI9>MuI(vx#=S@FbimsC|BTpkDlZ*EA?VP!V5v1_og3JISZ{S$K*<^Thv-#0Y&e?S1 z^!OK*DrZ%b=HIVJ(NwjPG%lAlQy%CH#KpgL85c)f`8()_t_J$>j;AQp2hy9ea2mCW z>obJ?%5j~TUoT!SaUV%?NBw+{)@B^COXrH>;S$L~9ftaH*3ZfUvt>TQ#zO(=XEUJM z`l|BbobXYo$kteWSWgAaydPRd$m+;5Sh!l|M7OETKUBmAz61T611w<^{WWB7=MkuufYMR^KT5|oo}yFS z$PzO%fGkM<911Zbze)eP=`#;BWbUoB#{Y|ae1n+5qS575VE^-nk@Nw`1xzRu$|S__ z-ZK52G!wyWU!&*2X!lWhpUXxD9ef&L%rydt?P$Aio8cwht-X_e=iqtK%A2Gi;q?(Z zgCK49iIP64BMH(YapS>Azd7!WvuUlSPxyF>&FKOge>x&+W%;C~N41$fU!3Xue`LJ{ zR9o*8HVCxErMR|efuJq!?(XhV+>1+Sad&qw?ykk%-QC?i8`}T3yT9EWAUTJGa3}Y^ zGmp%?e%3HvFl+uemqUm{J0aW1%5>U=fPr+^&@81wPuFTQlDlHLK+pkO6Kl`t?U)R( z!AWg@Bx^29ysKCwj>gO&DWrQEcb~B6m(|fYe4ISM*8~2CjR6FkEizQzP+J{u+zc^WS@l;XQwrcJ(%yY14akdzJ zRia@a?P3{m6m&fP65zn-Zujmxz^2RXIAs!jfLb=?_EaSpcsoSnp?_4cssX zHgByTo};bmq%f+tpcU;!cnoNZz?}cxM&g3k=RJsVcMOCGP6@9c-aJBoLn!c~i%<%B zi{YDl0|Y|MCC5S#^>6o#ijJy;rB`714p)eXCP3vwnahBs1F~t8XuZ69g9Fm3{Szz=RCfjDEE%c-n7l~La&`IFmt@!P5hp;wVqz6I+J_m{GE{`%oZGLy%HD%1rb#mp@8sFmp zR4h*_>gXBo+8(t~{EuFnV!)OsVg#4CG2jm&=y^=bg;cnMHtH{z8;0>F9%lr-iN`=P zXl$qG)Z-qlR}-+fha5{-E|0Jb6hME~pENXSkCikl_`KT_@#&XX` z-qD{atytQ5dY_b z?Gz5CbBnr^z0f^D%YVWB@`37|9Ip4EH;_J(=F2^i&IN<4K2xIcvjDX zR0a7nZf3L8YkY}o4@>zBn=qw^mCkh77OD1deeEgvTDn>G4d&(u$i;Ez#i*FBcAyOn z6IJN3nXcuB%d)&ZQ%15pWFscaU081{yc7I`^<;-+WM(W8=g(8D$j^8P{Vhx4!zC%q zVJ(Vy-+@~mpqlRdAVq0=NI|RBLD9)-Wcpz517T~&fqUTLQSko8p71Qv(Ws|ahM;Ti z;x?o7lh`aWDg&SFUnYn9@Uk2d*+cU6V==nQc;7svix*o;~{OnMo!UlWHfZNi%WdUQO40rmCZ5JbgW{r}j`^2%(HzsPbyI@dnm4ZfOV^T_8sJBfAAF?s(Ai# z*ylcCxZo|1AA@jZx~#y0$$iMFJG{nF)er$>oV>9D4+ub}JHqU%u8-ABmtHAzY^@fN zUbx=KIn@mKRE9w}m<%i`so-A~DVMD&yslF|i~WMWc3Qs1?*4S-T4{jdklz9Am4ncZBNu+xm8o>Ve}c zOvFhxs&u+Gs}oiF#mOy4o*FV*MF)NqJaMaL*Xk)SmV^^r7fjoEHsh&gac+hc%)?q1 z!QftF`{2MiGdweg2OrOoa#llQ=X4khz>0>%i$%~AZ9?Vl3MZa5rAwXvPw6TSVEM_7 z%ITdbVoF~K^CPivatQTU_@v#`HtI_BGG?Ugrvf%MB9EH$reC$w)B)AQ7YysHdv8Q| zB+1B^EHQ_@axsS}YK4EiF3DTJEh9wQ>e7+hH^0M#gIxDl3K#XO~7cVjlGI@-yr1hS4pm%j=MK z^krR%TrWDOl{_RYaoK(a)}%`hm`i3)iwCn_JI}oyC>>Z9)RNt`M=d62@M0$>(o(nL zPnF-!{O|9^sb_Urm+VSl;a!Jn5js^qpDse)6yH(SHgak6RKoJi$#?mcEyajnrBzuK zc?rl^$HM=wZAIlXoaN34p{DD9siW}?i$JIQ{~sp3y2JuwQX4GL6&Pwn^n+UboO6$} zTv&@q{lEcIc+*^XQNRJ}2c~RkuNO?R?OyT%lR@C=43%69iJgF>w&8Rf(uEG{{ETUnQv^BS$yKkV z9Z2uW{Uw|o?|QfQXaBPMp%nvS-qFIjg=TejM~1|fKjwJBz(a*f0|8tH~fx;>h1v`L|#OIWnYl~N@ zJ>9eV?qXy-RDYOu99Ljg2S_ESNk`gZ#BIwSr#K)^UwP?)s2>=B;2?s5eMUd%*^gC0 z4lrK+*!uq{SGiO+nw(Ehzm>J7OAVDpgo}MaDnZZ6HQ#$Uh>#Rkw zC$0Kov9trfOn1TP*i+VbpWdjM?2#N60`%4w)HGbj4jLqClb$t8Eh5K%JzHFSl=fJ8 zmajG;+8Smv|S~>p4}VfT zn2|EeMenRFH&M3iBM8A3-Cp1hrI{ro4%BcfjnpQ^e;7G2#JXq`fFOtjW2l+m!Rql3 zm?DUsx9hz=)ARk8JPKDbtRck&`)~g$r63a`6vIkeqx&Unz=sbZ=OlT0@sU(S#JTW+ z0!4ZoH=rfD6fbOr|Ecjrx$tk?kicQ=;BDJC^O9~YVr4ek-1XZy)H#y`Eoa5MEyJDs zUiI0DoI%g@R+B^B0FjKedCwe^z_VM`SJ^`yjl}SBSB;e)h+LaP9%hBYV>ULQ>Ij$3 zmt>Y>wiD+OFzHomDlA&sTL%O{j*Cg_ClmO}zyT#f%M)vecJ?I-XI5wB%^M-&kbJai z(QRtpsEC1sbwa(EbcE06u?Mb3Ih$bRQ-A<^PGM~L!L|BEJtagJxe#N;ZlU+;&;!va z$V{~2JLEfdqTIhrS|k-2_)x*P6#oB%OX(D(CPMxSRfp|Vxl-U3DM|fshzO~!irbK> zKcwNy5y28gj@m7!EtHWS6g*V)r&^8!yw2Bem?3<+r4ziOb*ewpgXt9k5)cCRs@TSK z<{c*pJmoX$ZK@jx;jcw20{@AfPSPhXZ3vVNhFw1y+MVVKsVbM`53^MjSQbO}2=GDK z&!j5@Lk|aIV-w;_WshE3cl}+>rUl>UBn+JfU!5lgO}cO6EZsI%uM}rYN|(rKJ9W7H z*heyVTn4+=I<+<73`ehNm7-{drjHOo1Cq3A;DR18)!-?u9T_FGtnCvj0lBP&hsg_t zuKYpv3gKadChU;{#cp^W-!pxuI-HRWmMO;GQ5=I9qGU+3Yucz$7;U|1z@YtwpR)lBzIfl61^0ADLB5Zl)ol?2P-*yL1BAg< z2Pzz~vJi%XFv6MGg0Sa-GcmY;`}9`8fq(T@z=_e$FnA!t0>T;vid^0--_(U0NPT9k z<_*41r}z9>Rqj&!rz7c;D%M;d&h{Yv5boT!?3cPvU+#ZUv=wtqQbw=19{yQXt>uaS zq4Bu2ny%mR1|3`rC(2Rag-8Ur9=*YN(a_yAIvY2TVP27ozl|vC^xj!~id1!4zA0>|j7U1wd@$RkYm+Zn1{n!Tno;k8t&jE0b6MB7lS<-VSm{d4&i1~6^oNX0I>B`p6xbU zp~NnhSkY?FmaOwo{Agwnd^}yp6feNK3*8`J7JTG5iN_nRn+c}BOr>ELnqx2W(2jC+ z*%awJ`6P&1?(C0tM?(GGETo2xk&*C;%ySu#06#EQwMLJ5d}iayQ05`|@uPyIm8_1J zLr2YhS(%%OT<~v;@4TXyVB+}DhW9;OKC3GQri5_2kFOHk>1DL!>DmWcmfzSCRjXLo z_2S5bj+@Ge@Sa!VMW<#o`1j^0Zwd^W!WS}MrGaNZB{+NHf9;e0YsOardJSZ`oqj zV_gfQzjW;Zjb!IW`ao+H44zwZPhUlZ>i6VjXZ&k}skzx?GnT!;gwQf(`(2cK^ZY+i z@|FG(LwnEX;wqAabmcGWdl43eqg+FiZqq*`X4GUe;!LDLhr`#Dc1i9GJ^05ds(>F7 z?IqqAW&pbVRz0bPo*p;a4`FR4xX@OA;IvD9>S2n0&~d6F+}Qr&rGR{M0D_+iC#=B% z6xImViu%{`j{$h|9gUM3``wCV1!E}Zf|P~b2tpu*0J}KnT(+9lUq0`X2|jJ>D8?Qw zHFGtFo17dk*RI~kx3#!Qyf1zTaD-UiL%EUwpLLQZ7wxg{L6Skw^x7^F(|PXis@-zI zT^pk2Z!4YT-<6I&=X8Nw(x(0{4^=gj(vQ4r!2FX@w6FR_6K-?q{1}qY1drJAP3-&g^%zAEG z(e5tm>?fFBGHyV=Xl1@B<^GIJksy*$u)e*6Ip=cfu$FQ8>*=SE?13q?H|QT)H72{) zWdXh>{1>eXn4P`XSQPw!xLz@88mw?c;1fw+i6yE|ZtMt}f-(41#g!L}qiqqDNRAKM zy88?O8y2F#!?lQV2mdD3!GY~;M55eOu#58YuZwcD#fh19gH>}%N}4D4$fIM+h3_07 z`8}k?d$SJmEYMlxr(`)DE-m$Zx`SN@0`Oup;3~@RyXJ2p=hY}ZQ%-lYj+6$9q_5%r zc88+#Ckl_M85}P?d&U9ocY^L(D_M+V&oyj+%5Q5lY!~1erWVFknSHsqn}Ej1t~Y_9 zLsFLJBTe?jW!Hzx!59sh#V z;KIr%9wnn!2S24AFjuTd5KqWXv85~3s&Q4^c(j>#;sjI_u@wJ}!(}cFdmkBwax}0X;pVo<)Xa*6A~pj}$i8l%Yxy z&>TPKb!ICs%V+bipNXAZAa+^DFuPK;P_0`$nF=o9SH>VV<}2>(j&%z=6kTSNwG_d@ z6~YsYwP`9h+{xl+6rL7oINW)U=8EK&@7};zJ+M9tGvV6m3IET+1rH9S0XUFQ{|#i8 z=pn`;>HiEL=60}vol8~o_I`jIcWwU-hOKvBXA~9Jy*zdYLjb@g0%7%d-@%-8IL ze4+|Xi*nKYQO8+lEStYZ-dkFjf`3a3U%3gNjOxMmz(*~84R%_ojay})?}W+jtfsYe z^P$vg_>R+4;_r~&V|{L;y1uTiJGGH7RLpT18Z@IKbVwTaIN@0_hCOzp4P6rgKH_i# zvBqak7Gtpz6w=()*R-ERYU>c%Zw#u9kDnxZP!I9}>Xil|pNOPzzYKx(xjJb8-Y#4Q zr>aXlU4UewqoABeHxk{?h>MhS-k6a^B7Kb@YR!W5PfQIj=YJ~BKM61oN-4nz&#xR~ z;5gAXKONzi5!%L#lQrNrz`49xs}q%|;u ziG=koP+{0?9e4Q}U@sKg8^k>IPEgxvwsg#eLWVVYv^#=|Dav{IwtAKjOUc%TKUNv6 zZK;f+Da3&<<}dPM%5*Jz!>3tYX9B@&{%)gxbF9SQ9BV$Y*4h<Ei+y^d0{9@R}YR%&g5}L-oh6ygtn1SGz{I^TZw#ym1bwlv~O^}4~EgDqX z2EHt*x+^P(oST=M$CH$jWQi3A2G^KxjJR(i4pb-KffIx4+juvU(l=Ksl>%1T;E6X0 zZF;d-aRDZvB#FL9mTajPp8#mLCGh?RZtANI59l~^GbXBT zD3`<7=TAM+4;})oS-ZiFuv-T~pW3x8!f6FJ+%mT8Ip-CRClNr`dilF~F|jC>tp-Zh zv{?pi-IPPj^glNqTg)RHH_$Vk=*jjv(4V$Af!-tTZ>a(N)EK$knJd-YnSM;bKf7gA zCwR9=*x>2U%DKNugfRg{V)DYlRFmzfVw^O+Sg@P8>u~AzUNk4R@_0Eq45lqfCy%c+ zM>MU?Lo6Q-TCen-nIE-*Yzu!vpj{2-BVN-ZuaRlvTu~fti zsyC9P)o)0qv8GP(xGr6|ME~jVlj?MWc!k?%?t2Bke(RLcsui4bNxOgHTm_#vHY2)G zs{&~h-AG<9QDal*h2C|{!d61l%lfVN|+Gx$XhjB?{byXJqsCY@&I$>=F9esqXdJ9*^^x49(N4xC3G3O$37j#vZ<1I0v zmFkI_8Q9KF#aYeM;5?<8Fkug-hktGCqUPC>ZEYXYqCO_ck+@RaJtjD(-Ie(f(rF=C zvUo8pwTg`K=m4GvY(sBIr^JT4LyW_kG_858uaD-_yR6&y1{EkA#1`k))p}lT#xR5( z32|;Dn%r()cJ^lOS(PCdMl=nrGscX1qai2%&b1VO!b6*E`~EuF2HjZmuT@^m{V%6^ z(gheGF9SQ@%s^o0n=uWv++Ct%$CXa{*k#}&(OHkCVB4VueWa)--Ek5kyT9~8J(u9# z%$=wEtL^NHI3($b1-NO(;=Az@9@;{kf1;HI)~cn`nzcW9i{hJaf65}=jI9}cR1adBVhZ3vJ?e)JltHoc;CL%V>n;QrDqC#*VialPXBz|uu9 zTNg;P^shgX)c8%8Hvg+jqg{NjepkW#69sZBsW#6#bg3Pr5bDO{19`K=!bIQ1zOr zOFI=?(3VTkt@b;yBqy=u%my1zDL}rTdp^^g`02cL!O-l&f9x*qU?kfgON@6h^;0&~5v|uM@r$aO z6ZBKLZHa68(yWb$OmIJS|Erm-q!jG3EJ^Vz zlmoyTSodr-nE_ZzMCQq5jPa0b zuA(q*5NMF`*qUF@IZPqh%t}RT5KjS@ScYYHmBndsu81-ODQiV%gzG*en{1VTdoG~Y_qHt(v zn3~3eB&_C5161j333^iyvhv=G#}bd$;^_UnV^Y&hlh)umlY4m090o+)Uw?VsA^1e` zdYvy4{ZEIkZ$^x*5K!iAgi$GovJOHy*iX_F_%yGf+YTF1dQ*L`EBgy{BlJ2)-%=Nc z2li*ZkxO-8@ahe^`77yb0%cv{2s8m^d*`5Au*2py?zgb>jp=czt$Z1QG6Ja&3Mitr z9))-~d@tESjdE}|xrv&l@9?(Rs5iF{7mQYMbRMtOCBJ^Q*c)WMGSO)6d2 z*@;{Goi&kHC9^sr3F-Ey5JcSXyd%$r7wfq0T~(3XP|elcc4A+{naz*^b<%`{$&)ToBVuzy;Q}#UT%D(`wVKQ zi+uHlSmiy{2ib`(?rU(DzjRQAg<}`%Zk%kJjvcZKvKRh-&3h*{V@P=oTDyOoAzp3itKs;)W3r8kD@nQdMfrVOhdV$d(7>Nm1*YC7q&`41Q2%bMB`C+Z z8>ibaUbh=e_(-$b%}J@k_Tbj3#(NQl#6pM{t5CwV4Pw___toD+x@69XAotfFn567L zSlaVi=fc7;)_)m3ZR}ziHX4{ga{2XhXlV30=eVAN48x~&9+{UN{yC@=@)=Tr-B>@4O_zB^yoB?lqW(y$M8MYW}{p#VN#km+{oHzS?hz0k9z-p zwmX0qn7YRAgru;Tjy^6#{;G5y1SoyWaq{D@XSVb{WnsVz;p1i-e+6^&&RGn|BDm|_%~9|D6b(P;01{O71TZmBI5J* zKI2Dxeih6~dt9w!|;c}P+e(^GcFdoz70IYGJkHUGj3-sG|!A*+ZtBaH)Mz#qn04) z-_h@5f%qY65Eq0#A7l)l&8>KBAo;M_CdU{+Vlt6hO@ikTRm|121S0y(K@N62 z6Y#ITd-yV0b`59GF5U$weieGylOxUb&Uhy5yz9n%v`6Q^3!e5fmSYaGh^?yy3}=T# z<=aQzHevX}U#5ZD86GzFC_n+P-XK8`JNTXp)b8E~QdVle0ws|1a=$p$I``|Ux`TQ^ z?e`#T5NHzw7BzezA%VjFgdGa6gcu6`{;$~Z06|c+7}5(r3G=l(_Dmm<*%U^{#`jW2_fiFUt7@= zc+qh9Uh{3G^J59Bo_FhS-)$Au!d^idlxk7}U+HUJrLp*V5l4CsguP)QcrrFn5tHr` zN%rqgUBYHAgRW_ZKWBWQL{*?pfKlfQcdJG2ga|7_AJyG<2>UQW$r<(9g)Bb zWkd0s^ewejEnh!Fa{<3H&|)T|n+f^@-SP+JYn1dHkybDKpkL&UL@3yy3P|mUDTPVW zzHP++_BSN*SkxHgk>^F7dT*6!H?Y5tFPl@v2>IyJiyp#_?Tl5L20Bk_3owU)CO;s6 z6H_4dQ&cLr={m8-4FzxaeLk}pzJnWX+13U#MBqaiC$fphvF;;V*U0OAjhz*mjD(5% z@?lx7lV)lH+ha=>`+VsqN{%|$R_3=}S9WFv3!RPgc-isjjZ^>g&YUn(h-^x^29;z4 z6PNCO)-)tS(;%)V$C?S;4-ktv#2Rop_-FA$-;i0|)hf_0`Or}(;M*>qti7(;c!1kN z>16RLnxcO&P~Fc`zXg6qDmhq1U>}p|6X0lHt=c^fW1LrIbg@k5tnn>9JW>(iwnNCp zFrxSBiTyNQn~%XR3JcgUotWj1GRO-s@V)zB05!j<%@p}q*| z)XjZ{dj0(q(xD#F6NZk$*M4D2cH1fnLa#Z2TC9T#sZjqqo0K`yAZSG%6?ctq%=yq^ z6-y<*mycvh=(I{Wf1SZz$Ff;uq*p>Hze+0vxLCIzM`1?tVE=rV*`66ez|@7-S|@X{ z&32q0tYP9ze@QH#RmY0nMP~(bN%L&j+B)z%I&k-pg~5-cBI0uttDvr$FB$`kp)+$% zt-wRjvnY5s!(=-rC65K9xpTMdTBYCIyPR4j6!(+-2no0349@E!=te7tP+p7346&ee&;6hDGt`^JA!y;(1eb` zu%PSXbSq`wG*+#k8f&GuJ9PcFilGncy%U)$)TcrWc4zBdJEbS~OOCrCN zFV(FJPi2Q{65W{6T6GCXCB%N^JVbm#E=WM6`8F?{^u+pOBF5=YGPc13bh=)>u^2D! z7tZ;GgLPT}cGb7c$LYsuR*WYsIQt)UsFYQr|m=C}zcg`ncT`rWVt8PM+@9 zBo!ILLk;Z;zCnz)%@U$a5@*||j^DzpTteUz#DC}eHIm`OpP6M2|MbU(ZnKGUAV!h8 z)OW-zVW$X~$wKb3C`gjRS%le?S0-%ME&in!BRuJywqSN9-8QWHvW^gTC!v}_H0S2w zR=&WA40&j69sV>Nm9hSE^ULy!N9wqqu$N2o)S4bby@=U7JU)qt!tY|KnyIF%XX5bg zc*03VcD8I~W{$5AbA|HIVv+o46&%;!nLek`%!P#G)A4ajOH~v2XJ> zl1M8ZzGZsLzHmIS8x{RIw}A3fwu3WNH-lZ*RZ#63Z{LEP%4Q&;iBD*ofS1a{kE$L_ z<$V53@8l_Ddd?Doa0yqn$Wiv2*Z@9u3#4ZIHZG%I`*J$G66YZnXAWV_KYg(RI)nvU z(nT*hkDM{2g!b4v5hrkm%Vwowc0|Z?3r9rdpT1_Ahw1%t8~cv_GtogSGE!X z;-YWBB!oONt5lWMribV6{*}AX*}Uxc7=tU!11Y_d)Cmp+ErS~rvi0|+ft1c)Tr6{M z9!p&oNN&m5Fgk_{Jh{xrNi({h*{J!6;SGsSt#`6K!t7QHb~I5;FGC{>2oP1#k{wF| zIGJ$m%j1&xjl=SIkirfMj|fSY3U5w_$FATHO$XuW`IA1=3jZE68Ik|Z?4MZ0<9cIA z^A$_NZfvDLa7t&Cr{{u(lQ~jh7~PAGMZ$cpTf&K;k=z5MUzwvnz@+kvf;uDl2xm;0 z9wpy}VP8FbdUVQ#E9e^^EkWXF_U>$Oqc}Ztp2wdRd_RvM=IGKmyh33YM(Bf!b5t8eW=!deeI%W)U8Ly-Ge<8L+g#}-B=Sd40jiEo!* zp`zzpbq@{o5lnSR_@xswgR3ZAwVbt4DED)RQZ+i1>5Q_j_;!7Y>cW5UfDK_qv;1v| z@NDq9B@6jZqQvi%hH%;B;(B{Y+hw-Hyc1LDH;Pww++n^mlkbYOF?Q99=X%1=vT<&I5Ml|&kx&LYsPp5-l zcrUhEAGSspWvk&6Koj1FVo&Ih-pv8SAV&m$n|Wk8+vPjS2+tj=vGEcM<|QrMpTKVa z6MNJLH7xy!5Em%k`W^ufTQXGRp0E#SRIH>hXunMNHV&teejlu;HOTEn4AqMfcGpu0 z8^}(Y^Z^#!GGdMsx1+8W8js9B6K0Il4Uju3|2ShjF_-2rn6n<}q+m5BuWcEw9hIZ+ z=#BrFKf#|~rNnpsnD7T3u-Sp1?_)VBb*-aUAL8@dJ*fW2xy=YsVxfwcvnJvY+>6M; z54m;lG^?RkIXw0!dqS+5 zJ@z%1<)V13r@URaRtyLW0bG^uRDAibAKtkg7vuBsJO4cnN z4FGxp<*?7Lhi(m!noh7CYh^P$K`SRbP)$_VC!xP-rBp(-)vv$omC?R zTY}5Ss$eeeJC2(n+YFZ@Wv*Ukin3k4A0E@8k&0Hn(feU1tgXi6_AU=aU|&E(bF${=ti@pWzkmLw`7*C_ zB&FX=-Hp2HzSU^A_Y9jaU3OM?$eV0=7|h#N69zYF_b7sl-`w#Iu+(&Q2j1cbx#WE@^ zA+*5<%F=o zjVij4)SMnR`1(U_x)hmqck7!lPhpCWZ9{j=5oI(8Bm9P&(PCLBj*?2)&OuW$aGDTB z_>)Hsb3nQ*?=g490`@ts4v2W2)LNBU+PduNnyyZbDk-KxMTCft=NWm)5m@op-Zww> z8dN^YL@8RCh*7%%S0Lmwi_jaP5OogF(7g`{Gchkdwj1~Mzt3dMH6Z++i{9a~rkno3 zHW*2353)T6U)+%Q-Dr|~m>7n6t|tlo4k^z%Ze_$*q~Nh(d>7ddTDMC6Q34ictoR02 z93;ABd-GBUlFVFC{n7blZ2YlqO|vkLS$PlvIdw|2Hq*{W6@|rRM5i0jox3YNiLDhI z2qS)*2Q*NuF>)5jh3`IAhwf7*99%)mG+1^caXx>8uhz&zq#MG)@Ys?HK-QF7&)#}8 z(nw;}rKZHgU9`LX@+czI?g`$e$-eV<=Kgdo`TM;=!)I1p9e8l1h)mZk(>N984E<}wA&uBW!Vrwn} zN)A-|SV2uC83=c6%7f@N{ae-Vu<+j2Fn5TOWFDnuwxi9lF0~W!9hL_1-A&^(lNACb zWa?fSd`ODLeYv;{lpYY4e*JZyn;$WM;2diXT&qs;V+Nt!)T{?0xD@|!?ia_yN=1!j ztLhWg92a@HnMT4+N<)wC^Af7tZ54t2vBGq3W(>JkS*9~sVh}j~F{$xFJKk5usCYvs zkq(7=q;Ct?t#C~FwFg$AU(s4qH+eh(IwwazdXU9K1_ zPfa^d1&(cmz~wYO!T}PpxHh`?1TL21j$^a#%<~}EpT2YY^pf;7nwGm2^5QUh8LkzJ zFMqPdZkz55Nh0TxVGjC`7QT=~5#26m+;Lv1e$s$uFt+~n*E_^Nj)m+rJh2dW(Fz?l zX?pr`=i=`0^1F-`pKql!L6EC%c^>|jC=CCFkO? z!sj=HuZolrLMiqPrQ$sx#O7?c*>ComFDF{UxN_57sfi%i6Kw}@p1E%;RNNw+sG!nB z!h5=-j&PY)kh1h8{4C2TJ+x-cj^iOsIym(UM6=I+xAf|wj^9cQ9u?s8BqF(QjT3*B zB>k9Bt(|x1aa7KXs3Cf#Wkc8EFL5gP9->@Nte0e7QQVrbFDG(s)EvA0rvEu}dhRuA z&`6j7Zqyzi`d#ygX#HfkteFyGlMk9&~ui6!u+~!sW zTk-OAc1N#;kba!Qrl09NSiGg!q}4*|gU-I#c=lIaDI(6QGsL6gco}y=$^p9UPA`R` zPNJ6czQmAXqJ{jXnjsf`qW}p`0vCE791dGX3^v;&_%$Zk;d9(Z7X|~gvj@d-?Ykj% z_igVF_%jD^d;|9`X*jMM!^%!m8IXsRKnN3!mdd zXST+y`kXnB6=1A?X-_E2dR*G4&u}{O-ombe3@l@;#aT6yk7?}bwlb&ms})lNiH4_Y zJ`N4Y0}Mjdg}0No4Qk7a#_`5E*6mqej5&kk3F$3K^cMTVVk)ssn8VHpo`V}dF`(XOe4xvOem!u zC>X8#h4VS7bQ0g;8li}a#6;vDVY*N9J2BJPE(Bf*IQt8KV{{4O$9MbYYoysyELUR^ zne8}gntJp?MnIrBrg7hvNZ|;Lm`ncn{fVAdm{1K5=f#EHx?dri{{hYsx2<9Bv%LF; zM>UJ2#6C>(m3@~%f*tpM?CXx~=X1-N3Tpm9_md=>fL<(W|<2(xo$!S#N z!V)q)ijc!3g)3UL(X zRbotL%sW%uK#v0ORSI=`-%IKDr@5}T0fK2?-HkWKVgQ4o;+G-&5CSb?=l!zdpoWb1jZ+4h=JT z5ni*?0;>AVB$BzEY#(GLBoWk8Rh<=?0_<{Bf7zT=Vz2;ac+PEgbq8Ui)^})!-SZ4m zb1`__#%s7(=e}(8?x>Ka+whSeP-iVY_DM5wqpWep3d!nXQi1+WI zpOp>Hix<$pN;5Pnp#lON55#%!Z(6lOm-`;~8x<7o{fkd!wJv`B@NRcYUPC4meRU*y zpfB73e}Uu+cK}cy&s8lJfxMzu#X(!DH|-pvj0{ls?Pmld{jwwG+jo<^W-6fP#ka@p z<|@FJDiF4^#4ce`>@aYqq~=w=_(qqxIBE?OkhF$b7zLavd9}{E8N&iyaDN8ns=vsq zzKU1lJ5h;6I?8U$}RNf=ULFTBt`_T3}_G81B26a}gFrV{RySHRABxh$OKP5yH!-pu$SZ zU^0^VhiTqd)~ai)LMwCG1Sxp6KafS*)y6T@UJ7Wgl5@|Hj5&gf8T9E(WVz2r_Mnwm zLX4CgCKRQam8qJ&q&*YWq|Ln#h5$Wwly3AgUOqbX4)fx`kp28@P`v@dBBK*&9uMXDnY-)nNzi@+ zc`p32#%cFbU-^i4%!!$+0Ydz8@FEowNBUL2%IAhta(%YCN^I68KiGoTqs*3EL}naWTVLXWEvK~hk{#eRgFpD0ei@Ru8i*z+*V0T)Qt%^%`GadqY8&lS2 zsi2%~=GwO}WkSpb8d=m`Zp)JLjAzw|RBab-kz{L@^rGCmMBoWE#<3_aFA!GKhHrv3 zobZ#}ZxR!Gq2$k{8Mjo>h>2N(KMBrm3hpF*QFIZdjRFj3;f-$qWhp;^Jy1}G0mE#f zMa@`8f*QCgT+$F>3-H9cG&E%Bv>y-)p_ti5M0>`)i=jG_GQU$HNc03a+K=%Ev3l54 zdAPeD!Kv!xUn6Z+`+JC-z=o1)(}qLt*2~mF)n^;#Q_T)Y5Ni=~AqAQK!e5i5%N!2q zs?3Zs4LQVWrJ}}j17<9a)yJsdq4cM`Fd27b`sqHQ)Ad}nLMAt3S%1#uT-Ahs@YyY= zMmodvit2bTPGxv~8zK~((kwI`h?jzfn#gK82Kl4t#2|rHCd21S(suDByBBM}Y+_=9 z2Im_n($`c?Tt}T8rR8)6ZNq`3a{AoW z?D}|ERfr^7|LAbN#EjemBng$@!#|N*vl`RhH$8}4rrsoYaF!lhji*G zTrQP4VLr$=NqQ^Nf%-Qq8nM|ayxE3U-M&+0%YmN-r# zdn;|lwMqv+(Xl5Ce=OVa4&-?$Au$X!-QB2f5!I35ivmLHballca{64Amjra1Ogh=! zgXZokUuv3k@uu3Vh&Sy3G9QY>25{2whO8i8D&ukVJzgIKQY_P$734<}f+}bZT<6Pn*L?;=Q3Y zqV4)8=j;=|iNucrgai*(BmQU|!$5AWIyslL zKYw6MtTE#l)K(B8-B4Xmbd7IYCZ=HOjZUn_%bOKFGUFlP>G*&(y24?QT0zcf(wytM zkpJ6&3p#sxx&wZgd`gRR*$o+e1NG_9K+SOp-M{oUdP1+6FQ)o(+?`n%c(hISBRp+C z`N1k=WBnjkm@tFjMH`OtWK-up5TF=vrDYMDT{YfN5dV&5fKCtmN!mIiae50Wz`9?k zGnk9vU16L3WC?CglHMynzn@BpsJs>Eb9&)Cz~kZx{LR63E8kLG5`FztZhPXVlbFCJ;o?5`4N)MgH(u-KbKD`alLQst z+>wkvn`NV);j!=PjQrzbA_;hKy+(^XQ_s?$_739rvPtg3`=802urCM=VZGu*yXQjk zttm_kymvJ_*01j5&KV#w{>(9dMv4CbQM9mlu2lQ=j$K$W^c)G=b7+)@?UsNYSK*rc zJ4M)tr{x^yqxs`56cO}?vN6Rg+mX@_-od|G6{h6Zc7|a*m_lxi4=Ek>D}mZ%u}^`@ zYAOgWkRf(590<$F&@AZ0V`AT)EG}iUpQ)y960UgukX=0NFR6rNdc6C>5Am^a+!5HN zP*OauXCOIZkm*?rPyKa&3M_c#C(aTidBWYo^C3zx=5ey+O&~38s~Ie5O?gO=-#Pb)9qg3q^kh;z_8vap)Tg}2#3cL> z=c1Af_3=5)zr*_0L*lzG82CYW*j;%lzXzaE^Ka08`;hUNs0to4U-L2P1VhINHDDE4 z8F6oPna0t#k6bD0G;YAANX+O@+koo(q7QD?P@ZLk-+6YH-iL4Se;8D3t8EoYWP_jB zV*6-%6_v&5V{v|Okj&{acHs@dOs0!M@l8|y3wgxi&&Qo{doj+vmYtk z_GM1}Zj+XsYhrtlOvU(zwJgDR1!IlKG(AiN5jXbVkNHdyL%l*OZ0B!_mh|Vtt*h+kUTycDand%+fgFcb=J-% z>RUh0O%gW^{!8pkA*_!-r2m{+P>2xg^W1V05AHi?#q4(qidI+xJzs`%G4408=pTit z#su=8Q|~@7-<=mVwWebL0Liwd6nw<14{X%P%H8of_$bawB{H2V6=^1S3jy`iORx)= z@}vu6QsiEJozdRxscQp0G`!iGeQu4U(eRbQju(9c%Xs3QE9!PPe~*~64IYND;7$S}N(r>34*$5Bu1;gS zdmcX5o#iqSq@%SSYe$0MO%g*T z$q1)%>r3eqmuc`kHSIcYJt#9jb5I!7%qA7)ob(SP_R5FabvP9dNDWDayBog#E z&R(h{V!Jh1MLq<_a#w_^NHUoSYGv(Xj!_?P*%Znu!Mv!?|M3&Hs2CV1>}O=rb%OqQ zctE@5C}&(JsyBI2jn&W+fPf+9{-w2YvR3_iKk%2^JdqC))kj2xIlk-){!Kz=1*;BZ zxS^}GcR;q8A0PP*y&4LQ>&`qk41|b>kmwIEtIh8+x4a)J?uRCl|dO+1i~5-G_Cbo5wdm`&BWRu_?}{K>P>zk2QoD}Fj;7!*8)zV z7BkSxU(44en1H&~NNP8ivM5c6z~wgAnl*WrZJQTp)sS^1t@xF=hfKPQmVR%SnCG>OGjdDlir0Z z`3h(WU4cERbY7riBcc;loSXdOfM5i7Hdh~inH!)V{ecp@eEoYC5`J8NNFG}BrtA!KxY5IV@ zKbriI4&Htx?7iq=TZ%c+Ro#zN;2<~;iRUAjD!;~`Xf|iu1v6#fOC_PRQ-^18GPMGK zjl|T$;#Fov* z)Ic4om8HB#OhVo-da(BWhQU?G;y5g(J%GO0fM;Sa;mPq#`hD^{cqhr5f-NB|0A=R% z1ukNUp!AK$;PwJj9&cJQmRN}^RYS1?woq>3gFR?FVC*MnM6(z0;IODtgF{`t+A8zC z%};!_heQi2imXc*6e9cz`uu7)x94Lu6rxI;yEC! z+o7ml*?KEN4^Ll43n9+!H-vTsq{GR;3GfRpWLR_G3Da>FR4YB4NeA)-P6H4@R6c-$ znwd5l99ytb{CvWe>l`do8{-ljh>EU`L1+1x?d5eeWRCPj4lt-x=OT%bIu3BGtbLaH zwQ1l+TI)3IN)S`w;&=@9Jp3ys>|2k}RSHJA*CTW0W_?0QS}CKzEEQUx#!OazWs>B% zd9UW&*pZ7?Y!*{M6wK?6G05U##UQi;t~vC#CdkWHrcU51Z3*cwd_5n|juPkc=n_%d zBHdDGmoQO1+IVpGnZdTScl`4|m1AK}O9U9`L|%8^QGj?-=(N2AQj&xxwluLL2Le&& zj-eoLSH#VEeG<%Vg==1F?v+)r`IPCrz!wNZd{bM9{MObff*FT3?eoq2Qh`r!lnh{j z8W)46GyelO4{QUgiI=kc_9mezr~<0DG#{J(oQ1sO`Ae3CsiFR!LqkpN`&4LKf5lWX zrDh>;lh#GhfdR_`C8F|UW#{FiSfs<0dqhD}pfre<#KAPYGhRDHapkJT!dm001{@nXsrBW!;Bg}(!o4rCQo%D z@f6jg6UTB+vX{uZyt_uyGnkL`&FfA=g7XkIu0!IYT;MxW2XHzJP@s zA->DBh?4V(J142w+&*SM6Ko9yp&m`&h!P3%t4fbW<`>8`cabvRMV;H9rU@-2^^#+n zvd0>}SqUCXdGqP;9l7qj?+2i@r?d5^pDl@2HQugTk1|M6i6rr}b1&Gkn_5fz11wgujPmoy62{{&2w>Eu-koL1sLjc^9&?GzQyjjvA)6R`<%Kj}9C?e-5Vv27|Ee zJbh7y+Pl&31-Y+F?@*IpZRP=hQVHvelQIKw8)cJsIcQ2* z4}~c*+7`-s`#!pi(Q4oxv`f#8IdvAWWQEFsfsHJ3EM}$Rgv2q_X`LR$xw$UhR{EwP zZAFWM3}C-ER|3*^JLGFCIhUN!Y9c%bbopg!ANJNU55TlPvDuNZePJ*)>`^kWT=5W+ zNwNZ#W?$K$Fx(v3P6q^p?2uv(mCJ2pZg_-ydgGoTeIp$RH;b_qZU) zWzOmgEu-NSfwo$fUkGXF3qA5fuD!lR6?m$vbpO@9@lB)f=66aUI4Ms-iD_ULW0yhH<%jW(&6W+ zd`#Oi^M>~x&HN(N{Mcnh+JE0N=HLrS{}iDfYCKrju~+0#-!gMfY5m!{?sel)w>OtO<}DDxfl)3A{>ttTK}3o~9{bJoGO=QbkrL7=ok z2rnkYM6EgvKT`xg&uv|g0X-C@UYJIK>bT0Z$)C8h(V6Rk`RwDsD;jw!iB03(`U)iU zh8fgmoKv-B>2)U2`;=@(0ukkAiwf?&cnDW^G@ISgor=+Ltwo=i2Rin|4xdpg2^sIp z1pOnWbq$u?8ZKz}94C<7*mVjb}lE{dt6m)eESf>|lv5}g~k?zmksxj27Kh!b1 zb5DV1z@Z8N(|eA55YWukz`p*B`|fbkq@2P?{ic#Lj12~-?sW!Fsai|4s6$gEr$LLO z^IbP!xe%9YY27aAAlk*%M?65d1!Hr3 z(6ItU{8bYLB9EE;)SSaKCnEyxBTUN+EBb|cdPK-}UMp5mM0@X+$@;idoEvCkSsQU2 zRF7=~@Twf#;S->0mvL(w?ihC1+;la-O_HN7ZmjaT&hdH(NCUJ;k0+t_2HuaJ*QQ5} zFu)QVbz5$#*AHr?4wWx|W6y<<-&}=Gf%lG^C>dq5iR{w*O5RId-1xMxn^#t=Uv#xb zv%5y#{tQZdyMpk(OshER8fobYAWUZp-vT)xV>PnrUAn=OJmA{+`7jRHv^4!g@ zWAjayrN>05Scxtb%Hchve@k*?Hdi85I6Op1S01G!VT~oUQ7k5MqUb1dQpE)JsZ((~ zm*LaPuoktC;}!}mB;U6-1YyBwZhR>=nrdZopF|X2o$hiPZzZ1mxNH}s8Ijr;SKg4A z{*R`q!U=uZHvep1juGV#T8DC!|O6NUk?MSj9KeQ*V7=DA^uC5$p} zb?i}e4EZmtrL+xufpXCE?*O}5BZR_YS=%E}5W*ajCTnfMlCXP9t!gtc93CqWb7c?+ z>JV<6;d=PPIOLq8J46$J9q${_zCGaz+jqqB`kY}SfIZP+PT5#_hA}}%@?a7Xe9tB2q)*)iYpLE(p%zVFaMjm&Mc50> z&20}y18EaXg+i~w=ofky7G3IZgvNd)}Q6TDZ-cPo;-ykdZ_G-IJLa%UcXl?)47Z9RnOht`ZYnSOz z<*H4_CDqnI#JJe{iH9?siz!-aAa9int2l;c0=-LkPtXTwwq+H50fBMZlMceUOiwi* zvFFpfFKLWQ{y;JSc$cD}x-l-ZicvP}SOD5~DUJF;<}6R|vC6*k=EQK?b^+n?6<-K^ za0`cDW`dZi=Bemcy7P47#gIfaB&o@HH3cs|%@DV_=|Ygwe!~A8&_MT`Ax8ZX{xV-j9z!#+O42(s%=r*H4MsK5+ECH^JB&H>%j0 zpT`4u3y+jDoa&`AcAHzLFs}FI=k2dTXcAJn@dJgJm=v!YS7#wwy(lJ@&WxMs3%}K< zt#2mUT>oY#w_T4Jj1w$PxcNAo);mwIkUsug<&_nITwEY*kC=P`k}Fxc2@*7M60E6~ zG8~Oh;?n*-+0y49HbVpNN2WHlNJzgNX(As}%mR(3b7zMk=(}5HV;wMnN+o%=KL<%zSW z-eZ$2)@R)4Q@`v8}2*tXn;xqQ56_0 zI;X1$kMnBG+}ZU%^_17691o0|!SNEINt%>U*!w$xm>3N&0b#(iH|~`2R4XuH!`Wmi zzZZ^zvWO-|3aw717zM9v4yW;VDLgWS9FmT0$7q|wZZ#f(n(%ZMVRq_1!7x8cZ9WL< zs_TZUm3W^ZDC>J|34{{O3-7FRy!cTA5^{Hq0H!J!MXO$4!u6qYe5X4;FOM(=lAnqi zHEskdp)cw6wCgQoP`ec@Jq$CUjHT$>*gji}>^=S3AzShNy9eVM-Q34`re}$8A;fwH z&f>4!tpl1k7~CPcafQ6p=i-FeU6Ys8Y1E>^?&ax#9SKOWq9m&-z)dgOBW@I>Ku2wo zL-nS57a+$MN;Aua|g`P;qFwa5Ob`0 zESV~9kkrFE_#7%d?8pc*cOdCGYSs40U@a9S(x_Wu?@)#WQ!UTx>gMRgWuvk%LE-H# z$Y|D?FFLg)hZtLWX=CB6k?o0WEiiOyJqB=nny(wZ5GfK$^TiWOmsxeDzEEAkMwVhv z4=7z#h0sQps%qdxOT^2h1`@=_{e~*uaaLsf{0qr<%C6dFW5qk11TIMFNjza|+;f@y+rP zEHATQXKq~sEwh3Q{Z!ME$KVOkSzu0lf$X7*xggGhN*4(q2DXWUAb9zCfdL7`vcQy| zUSnvD6smgd-Yr8`TsKi3MZO<>;`$%}LQ6j7cqXr6?+I+7DqWH#?D6`?Ce@>`9f#qs+0 z4yx>^N}_PWadH_Dmd}ur!>1ZAjY=_+9*nnryOZcyr$g+f(5$Zg?`GiiWeS~Ffy&Uv z_VM`S0SX-1SYTPvQivUDwM6!SF+!+MBu{cr1=0*OZMMtkqPdTOlnjVnXA7Krmotaa z3HZ1!o7X*(Fl?%M71~R*b9hxx@CW zZ*FQ7g!u?^{5tHIx6=SI%6Tok3E1$|zUW*H(E_6jBJXnpQ(H^4)zrqy7*@xqO3Dr2 zON2$Q`ARq!%Nj@x%`spof$QDV8W&K{^VOPnZ0Yb2q>r*t{{CRN(j zuGd3cgPQ`JCB2GEoRqf7K2X^4m=S+N>?U5$Q?we@>@(0At_~5so6BLh@Bw?hp;cVj zAY&C>^6GX~u_MB}I8lQzoYzTwlkm*2-E5`$?K0bQRe5iv_kEE?K$<5Y*J?V(<|$>& zND~|vu{01~Q2?XBW06zO^Sq5DUT?N{wLGmy9`XJV|2|; z6YTdH`~AKvb`^{Cda`()=%pV-GIhDC)6SLJgCAwVvpUXq8x$Ej*NR&KLQR(<>#52O zB{jkqG22w5%bhar2YsLI;@a3cbmQkqA)iPt?$ESgR3(8`tb_M(;^XSD#T%<6w?~)J zp7-PMk0@KeDwIRxx}C4?h!7S_97SSEAsP4#x|8sC>dl8SBgDxCescV@UknKl%WT;RYwP3JTk1qu34O^>og-pS6yC1>JZ6wVJbG`RS z0Z(#FI0jZ3NOWHt)=&g1_wOy&um>)dJQgI@SV&1B z>Z9=*2lk2Yva;cm45v5gG2$4Mcig!D$yq6UCe%QFR2yoqs~#P$85G1sYhh(cP6>JmNX@JjG<8dLNj<$fT@6Iu zLKvJ+V6-<`8`wS3nViRJWyZ%l5&FJl1inlR%HJZSBS7LZxBvc>!O4#P5qsPAJ68OnjDJ{AZV0%IV@SHR@6 zRUFT7Y-`1iPuQHq3gOi;MsWwp%v*lqTP@Fuk|vC70M|Vi+{T!&#D{CgpxPZB*jTp8 zG_y0*&Fi(sb;en+ODUgueITXgatG0bguy5@C%~?rp<;)px!z0YO&~>D78Un{?|Tyu z0Xa`YQuV$R)2%Tn?KKY^dFwv35$1WJ30e5|@GQ!L1&st7l9(j<3V$OEgKjA1;>Mo& zf7tt~=t{C{Nij1sGc&VPl1j`fF*CDDSYl>oW@cuo#LUdh%+k2q-DCUNZ_4lIea!Ox z%gmkoo^w{-bN7mji0!V=9i6P&g5cZr6OUSIz!vC>zjL&Z-UXfY7*T*FBjVr>_Zb&C;D#1Du(0+bLYB)GhA$5_ z1JDJIjd5b=C`vF_BHuzY^QTC<0k?Wk%Zg`d#)NyX!TZ9-XS1ofsMbKa*k}NoTO!=m zKqkw-t3aLR-S18B3MqV44sWxkk%7rND@LOQK;$x8+trf+##AB9L_ty*bAxlS&|wY* z5KP*i${|ehT15nDgZ4-Dzi?r`oa<@KO?0T~0#eZwA)q@e%wouZSt1vh1(3KM&c9_n zNL-C-pas+is6&U3>&Xds5opZZY zlT}d|3W+2=<(H;l=?*0477Ph^kHezsySp7K;fYORK8`BQ#f2eGNtoa~r611Do5YF) zkeR&NU^I^{Gu2o>Va`d+g-Mu)uYNOYnh;RdLwg_ z0`Phod~;-R^&;h$qJhI4>t>*wpg`}Km5osvK^ypf09UF8QNkPe@;_;Id9c)L= z&yO!A%```!K$O8f40pNiJ&dcjUn9zEuJ5evh0UfjBs_YBC?|6qdunGPZdyeGT#xh; z3?{75x8yeYA_RFN-xE2(8i&kPa;VZ`)1Q1A5+$vA8j8!vdI)W-T`u8Kk2~mw*hzWC zi4bC^f?en&-XH#f*QAWlThZH3*Y0>N)^9tEpBwYAqazL;{;Uh+}1N6As6V%M?kHzl@bEZ3uVm z%zU-AIW^ZaUDS$)*%iu%-%-OY=IC^bi9PSVdeOYN4UEa@V3JTG#~o+bl0^xqN@8tX zbfYZUZl85-WL+4BZ4G>%VIUlovCaLKt#Pp7=QQTCtQgNUxruD1g3~Jb7;P*YWVD>B z3eNCC#c!4tOsJphsmL$vT0_HRT#@K1eVY$em*O{9*Tx)(6jH#!$SOi_5M7_rLMb*T z9&JRw_%P#QEY~$(7&=_fH1bX8`^y49eNsZ0t#+DGeFz1irTNWSXg0M9EO%JowzJ20 zW-1wLw~V*nk`?yLF*KTsu1F)s;=;%mb^R~NQ~>AA>!L)_lTM08M%N&_L0wrUg&Q8V zOjO$uw5GR})zH{l2;L^8ouuaBB`j;D-}##a%_c0NR}hWs*Er+){n zNYkImjjo9vbC1#LkrjE2Fc^EBAI)c=n)y3^gh}awqP%fFY4e^+F^#E#>a~`&RI4fF zcZ=KsbwZTG6LCrd@`xmeDP>L0f`%+@Akg8?h~lN;OCI-cUwx2;*n1cO17r5PZ$WVn zFeO_h7-4&Pfdg8$ZFJqtClSaKZsOz>YL(s1BAG7jrP4*qEPr8tO;jYtyeSP4u$yhi z=F2HcOANo4#ED67Qelc2zeI`7toa7fqUr5d283!{!F zR_Y^+_0|34-d2s4<-Ya^sU$dU107J_m*hAfG8IEUeEKAiaZ%axiH zXu+UhzYh656DT~vuc*;~1R@jsiV^gG1Aj$>_#+U305Z)fS5u3S?|faS8zhv!5{3k@ zUo6wnuRJ6(<<-R^nX-*|55S%N5%L5tBNlQ5Fp|&ix~NvKf9(a$nhP> zyi|M9s;-z7UOQxagmkoW5LOlja~+`g{{K|X_p1%>SGM9Kqd>n}s9)`2fd6X?Ir_Vb zZ}iWjzfWBzqcMsO#bgh zaic8%)7voU0010(Ab@=~o4>cmlJoS}_| z^!Jd}hIxTyF=vcAIQQexngOoN0tSBpm*?=;P;B6~_nK{M*61hr;s}j!WVEqGpGn>)MOD;0*gREi=EWA@ zyiW9DSv}IY0^^n0kl#gdV+7Wh+0dZ{$?#w-w3!p6%hZe{Hug2343J4uPcNzzS0JE3 zzYO^;&+me=v40_o8~gV~abtgq;^g-KW}7Z*{qPj6b>(+pNa-1!zj*y@dU^UcQQTj$ z6WDsKFR%7dUy!Sz!!d=c*81NnAfLv04Qt}!448Ud{nicpmm$Ar`eP1&!$|*i5_f+U z#q}@|@-Tk)*puY9aevyg{Ta@R{Fyu+ZMHFuXc}sAwqR=eQ{kx%w6rOMK>HZI50QGV z`ra)4dTG#PcM7s`56T@X_?Eg##GZ z7oc`VUZaqZzHCkkCrC>?F<;4g5N?H=ZK)P+20!DMRO?rhxM%DoaChGarJlwMokKqB zBdI8|z}jd6(9<&~cssy2*v?FY#R@s~12wYVPnq8K)P(3{b-sFqbJPz(A;gx{0R~=R z_y{He2ZNk-OVJk^4wsqsM5pkOEAc1>7HQ=!>;ZBo=**sZ9qtMB!S{Qr zb9y7?^1%C09UR3)^KOP%WV^ypoImo)Pou_+Ti}Z5h(%x!VSxyqtQ1JuO>qh3j4vM^ z47A@4o1k)iC}BvSG>?<$7Nc=MmM+=}^@^C*sYwGB*tNQ1xMqqIlh}P~-E5n9*)(e!YH*(Q35E>a( zExymjlWei}s>NP4opGiRH-Dcdo1vL6VLgmaJuZ%`D^XlQo#eDM8Wzb#9kQsTUH(Yj z6(BY01=R8G9M!BuW?R5Squ>5UsX}S(rzUIlSyjbUa+p)q{h;H3IYvt~y1~hZ5K--h z9Hi<I=J5C9GqtB*-&X~J# zW_`~PkO}ry$t%Z0N)#Q+z{Z;X=$qJ&Rzoa+2?~La7&O;mCXqWR%C1Bkfr${*`IPrTR9mSbFmNO^oUJd2KwEUX2*{)aS^b*po zIaEH#rnj;y+>r$iQ6xD%b<T$yh4~}%lI(>A+m?f7H-4y+GW=~DDj94oZN-Z^v<;D+fbqCNE>C%IZcevw}+iUt#PeAi!Ru{+m@VF$M zSe&tNx65++`^iCGwRy&;`wQi|C)KhOaNTprUxKO?m!d-6t+mB)4cUMZtTx`=2(HmR zCW#Zg+7HkS`orx5Y!U6ox1&oSL=!Pm+F>d!C~`*FJ_f<`MN3TI;Lj@XN?uXc?;(2I z3_$$YcA6+A&G$0S!h|ASan^3TyJS_FvtDhv=?a^oWQCjV$X6~HDYWV`jyDbNn25sq zLJaCLXrfvRI69RsUnB8TJ3?1Jz|X-0*2v8IlvG^_`5 zi=6RLh(4|CO>2N+&_UFxo;aTgf`-dpgJ$cvi{mkx`Q~{cmc|*k*1puO)1>fyREVV^ z>Zr{K79~*D?|Juib|nX#88_XDQv z$*PbLB5rgB?=|u17LagbHwo5MI<-ms=@>mEygEx^kJd*r=m_$V&cD3Pw|+Sfcv$)_-v{?Ko;h6Ktwtxuy|jHyh8!-HEl^TT&xw_53p$raMe<&YY;M;-JtW>$Y=Br$O?%$r`yD6&mv{UV%Wzq@6N{l&y6MeN zxCH47IjHc*;czd`)0$L3L|QRh;YD|=Qj64f3r(|(kV7eUW3$u7fnT!Ixk~IqBP7~; z;#Y=TXH8!+*5Q4936=GFaS<)hz33XYrom<5#rUahDJL%o^>OUniG#2bru)(@Zh5WC zt2+~h#vWBF0i=zyA05*H)S!uRdO|UC4vnitLn)LI*^-rQ>A-&$X@CSePzxAQXRo2D zTWAswRP+>)$yZ%w85{cv0@ei2UQXbDDbju!@_Qywc!FP*S$_l~5O{Y6y=Xq)KP{}& z2h82|1($T!cSD)KBR7S=j43UALjM&G8!G?=1PA<8Y4xkWA)v#mn!RZivF*}+x5`A9 z&#w*orix&^s6_sFnD@EYDHy+m%YHT5Kf2z<{HN>Pf8eSAz*GN$r~U&^{XZ8n8W8YT zz{P)Ez+dgazq3{9oXFOHPcpi1>tj3p zH^cT{h5VlBk2wI|ef_VKxc{wyf!~sVJynY`=sA@an^NtuHA|*`^`3T6A+o81TS8On z`I|dBbBlQS{^U!Bf?)e@5CM@@rM)8;cZ08e?Kj-w zX5Wl_utmAjEvFup+JdsI%D8{i9UYl@1fdoW=9qGim0YOcAnP*)b zP=)5ES)iuy=%-S)HGo$|3UKQ3Z#%XF08zogkP41YXA^79kvD84o$lkHoAvextj+-` zZU?X_M_P1zBwfRQA82TSv@DrV=4pe}m*1RmI5`dcQJQty5dfP@KdTYw| zKC(Xu!?33Y3A;>dzNL1EA*V_;OyJOfZVkWNIijxO%7%e3Ld21{<{)4qu}z(7(6-sx znNT$aU!{^h(VTQQlJU^MM)i zMjuUvS+!6799VIQM)a9unzQ2jj(9TdmHNVl2NLbPAvHcXPbC|lv)=WcNlldv2u!J? z*Yvj3)oG|<>0M~p)|zr1wBirxSy?YB))d)Q0jz|g zrzR@y&;G%vZ({NVlf)-O;ds%2UYlaC=n|-!c%qKz%xgVBF{8Qv9U667=_#q z-v-(Sb|irY0N%Dc&o1D-NFUDaJz^>}B@-n>$8sFnd1}PwyomJ6k{cMGL)A$j03bF} zKGcY0T5HG`l(BW?+Fj;A)0h}FK zDPwP7Aby%ArM#8=pbdhl?0NnnB2FFyi*3Nq!v*v)9~2d+b}uOCA&c@NAQID(7DtFGa$@eF#A+0W!C z-(p*d>6p_aRYF%0r$d)k6)l!qk!H2^4LG!(8Sv??fHVeV7P`QS_*M8+l7AIUe!>w% zh6pzTvku`AKCX|BW6N?a?t=_ZKQTthopiWlEsPi^N(Tdd+Up0)C>x*}Gpt{ZB|eOK zcA4En#KyJ8RwJ2To%HNofu)!LLD1O5G--{MSBssO8PG%w>1IAonGoZdfJj=!=QBHl z6zN}XBQ}@_oMI;nk&_x^!pV)2Z?)w`L$r|nX;Ulru+U?WInZDvZ>=8%2}isM7oM%c zYlTc>7yBast*GHc0iB=i+>7W?_HGXUQLt62!!+Fs@J`-N4QBiK$HRSCfrQOoOagVi z<**8}iJs)AHBGCBFbQsC)0A?GRmyVMz@7q}dX&eJeLe{?S(oTFZ*{}VUVW#`(;P*M z@G9YgQST-=8BKzZY*9W7L20>v`QG}nBOHqGo??N-C8f8c>lIu)lm-Wced^TY&Xp_` zpC?hhX$+R4!DuRzR|R=fYBs&;^p9l5@bas(WMCAT8CU(nQ0tjl{N26m33W%17%(>s z`%^B^GF#npyDz!tK<-raWn{tNtmC03@tEPulC2c?eKq$MCy8sCX`MS&g+;~f)qxB_ zY&r05(*mZAh}C>Mt>^L5#?;K7^>}td`iIVk1M)<^AI~KX7_fnfSLqoJokLUzzevt%uj?v1Fx*2>^>vJdC(UF2pK)5=-VSXNBS~Mc_Tz zQ)W$zM3mZ2*-$4-=BE^t*s{Wkbo-$CAA+u|AnJ6Ev(FFM!ph=IZmY*?Nm@*&D?CP_ zSOc=LRHOFiYbc}bh$FF8We>D?C#+cxg=&G zDSXtR4E(2A{IAO6cU_#ZFQ1%MqXJ$xnqhkzS189cYop%u%{2zhRCi4Qfe{4hx0Y;! zB+&Vi8_EYONKQ@jrP~d6^ZRD_9zxItKZ{enJevtJNy4PdEDJ$(YrAb(3i%Z0aSh^P zb#U=lwYs52Sr9F5;k-|2bAlw~5bBr|Vjn!h&jdw0n7*2S^)JuPORmzZmx$k3?ilsu zC=3}+JX2YgTcp5huBA+_e(6OB?E;cBvRKq#wqk;p$#yIWWj@R(=M-fzOy!)51OSC{ z+r&10l3tmpkk_c! z1rKq!-)eob=PQh6TRS~(!->%dqt|k2S#pJTh5}Amv!r?EPErAArGbkyuniujJ7Wjl7On?Jy;f7tj~Cm-y*oA( zW6=5mEBMG&u^DFMsvS2LKb7Hfw8TyaQQh)roo|M240>(c@$*Pw?nEu@cXcrIABsP) z^=9&e@FG%^bUl^$nS|Z|F%G*Bd0p%zd*(cXdcZ#9Q~IWs!XAK&)9EwfM3%H2%~X}P zCgNX0>kMs!hkYt$ky5(9JQu+SJ2S|elUG$%Z9=W^h6gyFX`==^3w)~CahF1h z(*oN{F(9kQ2(Q-b;5+d>B+&UHyD+Z}((%QV#uJae!Lzgwy!54e$^x^H2!!Je`i>PT zZI-(gCM%&Z8>DrRiH~>+A{+M-y0Ebg%3ASS<0sv%5p*{s!phf6y2qIj=_4JZNNQ|y zND+e7`nE07L~)9#Le@51l^s|&Fxs6v*hx$qFqr)!Y~ppXd>$}_yugD8xnL=?_IuX! zo}Y z(8gAVgZ&QoEo4znUf*Qym6kDD6G|dwP@T)axH>1%#Vgf#WK;|1n5EGVI6rMoOFL9H?iNqHN|`ZV3gl$A6K}wUp)rtvPXf zIf3Wp5oiuv?2D0HsK*59=Xp&vuWmJ`dOE~WRc))J;RO99) zyuPGUn1sT+DfnQf3;xs8OSM$X1ZMmb@0xC z3r{9jLNyIw5bma^gWapy5>T!Ef^c?**BV2IQ_cRJ!{uF_u#ha|ixX*GW^Lg{t0en$ z=L!x98DX}&lR(Qg@-VVPWF(&P(f+TQj)Fn(olH9Zqxk5xT773D4Go`Br^vozrYIAJ zlCJ*ZIrB;_*CB+F3=~KNh_78#r8U!lh!s)%j_|tGTChk%d@iPF9td2|E#4u)a&a2B z3+X#kzTfRDESdd9lG)oi+a!r}$sIp;$M6cG1e%{tKk!YQ8VBTm5JE2_9%>1T!Qoq3 zuad8>`XTLtnK+Goe<1VmYVQ=-M9itzA~(&?M2Y&jsjxW@L5O@;d`^~Oh(?$)!yy=+ zp_bnXcVv5`3AGyo^li$ZO8q_9Bjsb4Iwn~vpV#~)KD)=GvnL@7paPiUU7BZY$blLA zTqCFin-4u%2KY23+8e&nu)dL5Z#LGSj&HjhtE28EUI!3aDR zB<&M2lQhG=mduOUv&m2l1Gr5ie;1CBk{9uKM~$!yihWX6#WcZ-B{%XYB^)_59&cD! zJN6cCA{%pXivV9hpudiUjHD2EMhQ(O&>dxQ%OGy+c7U?}th#mj*kUJSDZIl{SI7tA z4q~A#^Icl`Fk=y>&)|%P8)|!tvW_Cov<~^b6j={+%GBOkGv^pjP&k=X=^X^8aUn5F zn8Mll28T@4=W#avby-E8*(rX+VW81bIl=Un&}>?op15032{xd*BEawb-0U?K!jUhP z_PD*TUG-hU6f4$DijvYY+TTxoI8=FfhmdB0DCtM4w^Hn9bZo^tWLH=fpoLV{UPg8I zjyQs`+sk$9Bz>s_t26?ydvj6ZTuFSJc231s)lE1mWV3l+=vV=bAHINnB?b%d@y zw97$KUQV0qo<7MPOd*)US_;4;4TR*|7*W`GJ%P;d1HGnkjC(l&RH*n{?}GvSbvhFQ zy}a^cBRXtYm`D2(3-if`S;CnG6)m+nIIYv%Gvr%~0^EKKA*+NEV(%>KQ=CGgh|nh}dBUi}-@JlrhZ?0zhYMUyf%X14z<{Eodc% zsC?pxDUyQ78{Dj7?0+O27{hKSj1>l(>*Xg#a;JZHxIlubp!JaLegE``O=BXxW}>(C9WqlL4dqrYexq2zkli5%ik;bD z3tFy4?-N33=axo#t441WRL18cM^X427&3Rv4F$7;(Ds#@!a0RX8NhJp0K9QAsG+!< zL3k3Q3#l1>^tKFK-Ab@o>?9Wi&%W!Ss!}E+@h0RqYG4Cu9_%N0plwP=h0xR=JRXAlza;SA@grshh{tUOV z$-p}`nNsZp-E;J}MvYbV=Rw!J$5#ExRL3lCN>kgFv$z+~y~TS@Oax3zjl{Q{Gfi7= zK~3odUGanAi5@TVK!nrLlWWfp7KtafDj->;83Q~p925U@YJRlY_lhl|_W^EA1=>^< zWM(BL9|f6Ztq^!tjU&}12ysD5_C-A{yx_BKQ2Unt6gDoLQ#dSfY={N5j>5ol$%Ab_9hEwNeqTry4JWR%3-=3u6W zIai2cPLe*+hWv;EN75YCploI&-=aGkz7;O}dNrr1E?(IeQFoPfbt-aMdL|~&E8${i zdkT8*;RRLfu(cnW5bU5PsAaHnU#-6bzUlyQ*^`y92k>F%3lPP~BO7c89LL?pX9r&t z`*oydQ;Ue#xIkUIqm{KGQXZKvb;_3m(Agi!W)d>-1~8q2)sik+_QMejb+x4^cb&r{ z#ycyka4W5xF!tzSP`+HjB$IbF?LlQuRpOB^xaQ+`=^NfqL|=L!Xd56K&E{zYDT(Tz zwt=0eFIba)?AUBZ4apM`NHRZd)63hVmy|QLFX4Qy9-(1dd!aPLi-XMDn5X?Xtst$l~=Ehgp3w#`jJ(tY*k9!k}vVo zv}+FFNdQ8tr`*pkI`M(4_KLokAeLp75vrSkb&P?{cBM3UTj)R(bI?Jl;s&Zqwi=lh z+Mji&*rJs#hxz+mjdR_N#e+4pm>7O@Y(!=(m=G39|5+X^|1H}0I+YCHlIthKWA9nb zIy9hh`h34{{!bu)orU9+l;Kz1*5mO6&emu6{)lj)8$+JeKZ(u4n2=C34VQEcq6&UU z3%U9Ch8yAA%SS|(ZM$4$c!65l;;?{#S2f3vFfcM*)Zee3ckMB@vA@o%?s3G{vV!4N zMB{-cJ#NovuvdOBMX-L8wfvSzI?%yCM;5;HFw_0NuYMDAe)eb z1I8EA5IF7K+*=Vu$qPP@=nPGDWtWmc{nS?oLDeLuFR5j!QuB+&{=qr$I`~HFgnBgF z!ie|G@>`Td00V%qf(K;R_qf1&W%fUAJ`EhO+vjl$Z24B>lh4pWwN(;WDTJzKPF$F% z>Q*sR;U-2uZn+E0+W73RgMoDj&wT9rb8f!S(2f@yz5)#+Y`bEMB>3q8)i70RIO-je zh)d{~cd(|Y0vj5{LhBhLm25T5{4lwxsV@;i)MK`f+3ntQYY? z-!`Zi?g8-D)oTDvFoX)U-{pD_i|R6r01I_^CUJ~u^dxaLGtXa5KQGvcm6j&nC@!DA zSyXCNH)i48u}2GgvSPo=u?;cf=;J8B0tPy$LX9D>~d2(58NvAd0>1tqc4tw{7% zVafHD6naLjfvJW>JdEf1cHgUZfno0qz4N!CKn+s6sqLi7`%Uo=i$wqk-WZ0_!O}9|*)TMwp_&{AK_H)2KjFVnmb`8PXu7SC~sS1k| zbCC4=oBqqCdqGG&3(=d^5!6ax9}O6{-i?O7U(`+;Zk~rDxl_~fJQ3pK5Y;x7;l-8V z3B0#A#3J$g(~$=zu**$ihr<4ia|G# zYE{2Ty`il)27X})AjC2|^M=QdB#9dyJV7?9?9tX2W7wy}MFQY?%*Spha->L#<68CU zE5;CF9A=J9w4sZmJNTmI_j2;>*(&!sZG;WaQMT2!+O_$jR zIW5%wk)bZ%&`E39bV0(^&PozYOB$?tg3^hmaAm2iylBaA~JdOj&~00(4sT1LGmVPVq%AZ2+e3|I?FDd z%-!&$S3J;P7x5mAf#~%ewg53VW7D5OQ3Kc8h2RxZInjab$iZ}FJb%;)0tQoAIRINi z35_*!VQNg!4>WgJuv51Mk@eRlXh%;r^Ja2_b+D|&S+VQ3>{L%c9M@#pjOkINi(;lI zAg!T^0GDcyOP8|Irr+U_@twHTck0i(c>q_hu6zI>3SjyJZ~?AJ-cP%o$Fj~e5e}&; zic_UgyVO<9K8B!z=7|&+!uM25-SC}NpiND5&l5X;c7(hLqY*VUIJ}2EsHX_OL7ra) zAU{&Q_7IR)N0EoePup;J`fzOioaCMu@6Ge80e_E&a)7z7Uj6C`y7ygS%&K2|nu9Ns zo^B?gxWE`HliZzHR2V|*hcHZ}c?REGX4#iW-{?XSMXRNAyF1-uQ)J^54!SDI{93Y@ zTL=oEZi2Qgu8blAeIC=d8`fdhRz&|J6iAho3>SEe29uwbu2?^YW;4GTZm>peXO^Ex zUa(2?EphZMB&up7BSUwEe~D{~fxDf$ zrzSc4MF*&E4B~N6!I+zE@#bW6061iQQxcRg-g+MpDqZUbW^+H9lLsvZ?^A+Ebzc6r zK7N&HJ_Xtz(r?zdz-W3vVk;>*vnpaQ@CZ>Q+?)FiF@8x@L;+Ml>GdR~k>8Pg1RHuh z(SmOCMWdRg&C}25=1F6VZQPNSxy(JKX=;O0_CA1&26aN>%D zI**HLdGFY%b`owj9o0Nr&70=>f{(NBn$Js(;^)x@DvzJokBPnSzjLXBc>+CQ+(KsX zisy@O3Nv6@haN*xm>7*t)p;@vGsQ4k%u5_z!J&1g^oB5@5=v+7#d5M=ZqXcy$qKxq zAOWqpkDvvbDruf%F2!+k&B_z!oM)4Jpz-3BxZ=nfxpjTl1|7V6`7A-&h;~PMGtA{Km>Nt1)#|F}oBT zfU{;lqMU}u-eTFP*1U;Ix=G4T`QxH^@A_dL1AMDbdHs85ZAM0y?=*B+Cz%o>{hXkS zEQRpQr1e<`o>mpvvvpmv{zi-X>8{KW5pd&@YYcJhs`P(0a%FL znqhUV;PGm()BZg`W(M1e6)enZaWKfw9Wz!*B+T0wz4y;74N;w6& z+mbV3fy=R&Ijz2Jrgz0JI*sjg7qy_~r-9-mda35Xk#Y(51oipf`WN&j7QMe_3*8>W zUaRQMc^Qk&pO{J!Z=kN;HK}nxHAxi(@(u(sSItsEk|W9}R)v{i6>>Qtrdx3bG4%A= zEwt4{o-faTdlNFG`;gd#)a6j~z2cj62q@tY;=#5II^ zb~CR=H2IY7<0-YL5rU`xv>dW8__!xQLp(s4b3%~Se}Z9!Eda-lIK4<01_V&IMaY4= zG1&)zCy@oE=JJepU7<&sTd2QtvA>9nrwLCe!lCoP5Y85h zRs#@H;k9idWL;yj*>|jf~5v0K*iV{z)S`vtWtde)&9Ocn!;ZqMEyTnRiGtt!6 zpIZ|29S$nb*zcC~wF)`4(3_f4!#Qy6|M14-$F@&rdsv8?mIbpUPq>%n89lR=!`6eJf6)FTmW8!# zz5)&i=qg-#Gk0g(NA)otUu2{S7v(2Z_lfII)hkYC6 zarG2^j>?mEG{)fxCM)|rR7<*D)+AoJnQ>-oNz7RT*M(OSS=N0H5_4sPANPCM>nk#; z4w04!ES*{wMIL2-EYnbwoPNDxN<0E>K>7|gEZ?c6WI(&KWNkYyYghJi<(OT&S*{D~ zXZnJ>ae6BdKKAN7%Z#!ytuYEi=8#f2jfl;39`(jur@v-TA#SeQ(bv~}*ImPrJ39#M zZ6ug2m}8Uh6PV_bZC3et59GN%so{FjgdC?15+LM^2{c_fFn3f^Bd&*NgxF({y|jUZ+|fsME~fa!^z+bIquFnLx3 zGEZ^xBRzC72yb$A^86)@l$HG(8L4$SK8UQxUw+?34`fWD>YH=fCY0~WB8vs-v_@x| z4Dd<)pq1Z<+8_V+mM1q+Ba)rWXlQPGthhP+7vo^z{&(6Yfupmyp`|T!F)!Et6CS z>v=w-gi2PJXJj_pQkt14+g6Uwhfvx(#)u|dyWG$&E^CM8H-P79<_NJZ4$9|g2ZULq zD>9GCH_6Z)5ud93Wbe~VCEeN=pHbPyvQESNSHE4jg-_j<@`5Z4cvc+G`roB9u};R~ zymH~O%{13W<;V9p8rQz6s9mME+AZAaD#_u^;H8YO!c5@K;E0BgFFv$D&HLyua9E?+dhF zPh(BQU-)X%2fowQEjF+mp0|Dj^%IS{*JTJMK~ad=b^FGrPP*38402cmY(!Ti2UL^x z7*42X;JOIZY?fa4(cVj=iM5-akEk?4@@mE0fpXgPbo~V-hC$53UyMM|3C40w)py|rMElGp<9(2K1 z&PP-SHX7@KD?8~_t$S1DK#0>2B909F=H|#`y{EXCob& z#zh~a=XVL;{5V7^rWWBm$0iHVA~;QhAG)Q4`MF;&o7j7XQtr#nTAuZ*nC(>jpsg!Gq1(yEMI^_3EpvVNj zB>Mar_$zk9AAu+YP~KWthg+B+JJj_xGH_tVO%w%=Hi)`0UGn_HT@5h|e|3f!|Gfe9 zuV_O5Oo@OD?l2<;2l+>41fb`LknI+@oemJz`}DXc5ZT_&`MMk95?g&dt|Pc6KPcd@ z2K9%7MErjoB>qFu{|`m~|5u8B93Vi{UluX;H=4da66m-z%x4q7EeNW5oKQCg#IoQ# z%pKJb)FV{Ii`oB_qW>#~xyY|5`s2XATBu*`VL<>%;43B&);=^5>Bou1MDxev6#->w?`b06sOKf64m{n_Pt{J->p{=X3he;)yk3iPi= z_IC~zKG zyRbDKVB;TDc$7b>@DqQf!vBgh4kB!EWN_!zO2iVI`a}6K$lF1}76LFJppuy_yhxO4 zqG@kRG$jIn%=L?-=9)CMN-+<#tH(f>fUHrLM>#i{mGU1y9%z7z8pI-unwQ>T!gqf- zMkyeCtNP>~8oUGruV+L601`-p{0tDy09k*01XX$=o#|C?sGShiniO>AH<%ExZ`j^l zK_kCY;U@@^$nVoYMQ7HS;ql=lzM8w2bi|iO8h;xxID9?}2@1^Q*kZ+U*Fkx%>! zD*VL1PlccOSC$tA=BOi}Mq&q}Xwn3Qcq^MgW!Hdzqr(3sI|24)Lcvel-J>E_qd5zY zrcJ#$CIbqlsVL$-@GdP-vaG+9ZodrqJ<}g^02~+luakKAvsf5)u>mv{TD51sh0SAy zD&9cO+gNHHBOWZXSYNqmfa~Oo?H?R{^L3V0v{DWc4B8q0K3vCrReh`zun4-~bOwP4 z!*T*c5%K*9{N_%6{0INu37wnBFyf+Pf1h|^+;Ziz>?+(hS|2xsU7+>JbR$04RldaJ zSbPRb^%ZBH;})tAM^nalGMy-Y>UqJhLFo^4?vTr0D(sK-JwfrYz6}*%f$F+9c3Vbs zl-tvwmP}>33f~1VDhUKtqd9B2rrC}^ziA@R0;*u=v^~RmflqN=uZF1>L zGCIj{Eg*8iA-ZW&?>}K6?-`6C?ojP6G0C`g1fr&AXYEPa|M~DJX)yUB)%E5+yjB(#%l4(zoec$R- z8`jdS6BuOd&faBb8KP>kQUnZ6QrR$o33^7%NGR}xy&mO$Y(6yd{K7@{gH46P%&X7p zQ41zZgJ`-eA}>2iAkVX6!`-qiD{tA}NmwvFkzn*5~-C)}|wVSC0^QaLS z*zM&287{IOLv*s|Ym`k#>MSeGpq+I1F5syQ65EWMDWCXOSrYCD?#X-vO1GTd7gg%zJL6cn^*#Ha- z#f%w+1Fz1|w1s-xEv*1%b)|1_>B!zqqz8iEjxYuj{rHjSgNP*t*Jq-(I! zTWzsn!~tGhGkX}L4Ca@rotyKC(NZVc-8M_u$EsT|yY8~dF3tcrIl%6QP=r7>iD-DH z6Qz!k7ZkW4#m2a_n%NQX3nS`cLi92~qvmRMQrseYfH9!mMgl^tTEh2&L!svSnBDSH zpEMG_vY(e|nyTqzzT`}4RmzP$>(^GQplgCQc6wb`pA6Gx#YY*9ju>8LVm|kpPNA#7 zA7FJV&KmD2YNAGtkPWEmW&mIO0vP>~)xNBpOvVI^b(gdB+xI;gl=Rhm4C~F2CX^p? z2U1w+G&!M({Jfemogq7V@A3fl$hq3TJr1_tNRRtsxFJBHL0mMk@l$cmd3!yd5(%mM z048**twQA~KJfmVr!|4&q5fQ60=SsT0&tI$-h)ql?fcQ- zGB}3)%W7Vpl;i3G+{jA zBEOkV8DkY>zAbDakdtWD9NBNP^gn(G!|_L7wkk5^ll%DA?(D7MKE&AVN%b|-r}%OJ zXs~?(ftZXDn33JPZzjiJ$pgI%7gJ=ymztNTcuKt`{#lT2kOIf?iK+5X^Qcy0`*-Nr@PUV8Q$TosiK#5pgm7RG1pW`iJ_}G ztq^Qy8iNod33aa`w~mqWcv z2(nzr@CH9S&bLN>FKsEJ;jK#^?ux)1L01KnmYSKJ z1hT}KJjJBCec6+F_0woXn9|0Z9KSe=-OHxwHejS3Jg)!4-aQ2g)BJg&Z`-zQ+qP}v zY1_7K+qUheZQHiH&&+>k5oag%J?Cbx=CUe(l~GxdQI%EkiErh46dEKyPQRF4Y~Mizwa5Zj#?*l6s@_ngk+D0-2X{w7QPf=T$hf>u4~ z)Np1Y7)^^)$h~>Y!;tcCt_a`$`MtO9G#Af_Mz4NGg+t$qE-!c0B8P18#`ncY)GXob zmIACU+Y_K_=`gdUlK*=}ez~?*`ByFk=?sbebRVQh(z(-&eh)-ShPd3=ZZPQYm*Ohm z`b+}`cFDvTfC)M+ItWZa6Bq~NBDp0_FP6kr;&MUxnV}`-`KlWg$Ce>e3xjv)RY55! zG;zU#njXxpv_x&ex!0Jmpuk#HTTT zqg2yk%Yg)LAYqEQK(TqnZ`EEV{v%^;<-lQ+_aop8cMIk5PSY+Fs?u{ zt)QOdboTqlNn4sE4DxGNH^V4_T;FeE`-&b3Y`V5UI;Ta`@sW8Y#j&a%?b?oHv&vr%L5zAHG!~&kBoRhp_aP@sU*hkfVFSZo;;M> zUmr`Ik%Bf}*y2PrH}N3^V8juuiV3S9-j8&Dq00LPcSG#oZy?CJhA`Q}?POj^oguEs ziXm68Lv#5?)c`Uz#Eg@CrEG*DlSD#(v5+Z3R8FtP38 zdF95TNxnhU1OJeFUkiY2JqyVy(&R=Y+E-W*1$a)K3YFhwTB%&HvXwbA7x@!q%3>bX z2<&H;`}SaJ<+7$7nc$Q!4Vo+7X5P!+o2oR)GhFb41``i)7f=@yRWYrKJ@in}n2<}G z7~g#ngXQlGD~EiN9pL->KdCYC@U>4d@wDwgiNB6s+5vrP=iTy3ovUa5TB1^GI{-k@ zQ?Iv2cQ;Q+Cwegxk?}Ef5Kzy&j3#7=>Rkz31+a;7+0|>G`vgob-~0bH`NRwS#XOF^ zxv*;<8^m3^y-;TXu5j#cOb5BS3Q2Gk9_w-eg?|rft&BL!8kwSlM?1UTbf2;J7$omk{)8;tpkWFkRTOdqbje!qLP#qJc9N}7@A6r%YYq^EH ztNa@GPG?9149{Zlrm_r{kw5A-hJP^T8@rMxhA2kiMrS9VE~WLgSOUwl!DjeI;iHQ} znnVnjo4D2L@kqZL3`@!@6PkvF2vC@rH@{p6iq6VSQ*tKeQU3VO$Ii(gO1)p32 zs8P@DuO{)@Z>rt~ER?!=wzNB4Z=V@?lgtKbsqW}&DFb4p(_VR75UNBRR)JD2F;}C1 z5%`SySwB+yM6u`X49Yqu2uK90IUK#puyC1n)B=cmd2zEwc`2oD*}B_O#laeJv^y9D zEeNv+m&%T)Nx*hozw?}Z@k3Gomi+g1fE~3y=N#bTp>UQl%*hETq;eGMrYE5v94Ui; zPH#sx44fLmDdi$zHUQ`ZR}3XH zKZ)W~owr@}OYWDy{A-UEWD=qD)7S`Y2v)9y;a0T~-8$0fwLdo}!J3jvMV=p#+<*{Xn` zj3?`HS13$O!y~8}3S4L&;c9ba#y}|Pl%_wfL67)Wx$PQVPWAc}jVGMeQ7Hj3tNZ;@sU{T-tu+H}L7}DL``nw-?2utCkb4 zeAGb%JoleBlmmtAsC-jIrX%3Ep=aVj86wg&KWxk+$XSDvu-u6}VZKdr@3`N8cl-ieUOaGCPfo5aFaSC?al96i)N8K|wh?w9ZyGXpkr;-q+ z120#jFF%7EBMyQh_dbcJ6y9-$;`D%tIIL6YV$(Y#4;b*&0C-)Dfl$b1H07jsHieJ) zxpVFydH>%kT4}PYJH|-D8l5`iOb(znvr)^kXfqX|Uhj*$MeFnJZ1MzcKFKekt#-bx z+8XH4>wQUP4#F-KO-TqdTX-)T(g40|BYp1k`%Kq%wM<4XQjsC;T_YHl_O5U^SGtGo z;TUlK@mI^#tO*3Y7JGh%v6`zuWbJzMl*ETsGvyM8FAAXehgm7zqq2(`fF8(odgLAO zkBqS=MWja>qTFjzU*lu2fbU#`nZNlZx@cg^hc>A$IY|!H)6bZYWS$G4Azc0vJf8>&o|G$LR0p`;upX}k^WzUPNTuU%j_$bbg(O8ITcmk%a$ z=^0*w5SL3_M&~BX*7oV7PMD}|^^BrXZdT1nd`yO4*}WeA0*(|KNXSn%O?#g^>Z$~t zOL4p{F=5CiKCywgev02T*au@bk0_P zqgF?7fvZcHnEmmh!DH0A{}OueO$tyjxdc^}qPd&f3XMu@!SY{&SC^neHMUj*`3kMC zI!vk8pTy^%V;ERnzd_2fCXp2ljF6BXqZUQ45EsO!-HTHMCG?){N=}2Qr~~)*Q2fbf zJ;#8~;i!0;(Y!+2ImL+CuR$T0zmIV#Jb9Rv8M;`a9v3<^?=%TYXDg9QyC(xN8q+AUpml+fMXxDca z1X9|?RoG1ht&tEKB`2fl=-?c9Reiwe=-LmG1FA$U$<*O$i(P=Ue!gF|>SAMLkBvup zb1-g%l@PrBzDRU2v6c<5 z{L+nAop5iAYuvJdpitTGfB%+H%tff}%DlV%x^#~cHp2+6I&}i<-oC?ne?MrQQ5Xl+ z|5hdGGBDY8U?RnkH{$RH`*%$O1hfLxU*j%&_c|>qpqYvB*wB|g1lN;4H0A521BKZ$ zA>tC_0%UWwxto22WWOjM*qvT%_@tb8ihBmM{&|p?yGjjdV3^9%PTAqgFf=S_@dNu^ zu_28DR;UfabG1s6jvA|{B~>BFm+;_}Hk=EP*6LoOk7)wPrhRK?N0iq__{x&$F+F^N zbXb9VpV{FSo5n4=M%a;(Jke0)rx4KPMA`_gsR&5qhNyw1&WV53vzyL(z_p%Noxd!@ zIy@M-)Sbg6hRVzWT8>yAkA%}bb5E)N#Q-1ut9!<$04Vj9%L2{{*Q~_U5i$syk<4$u zlszbL??jxpt5kOwB@dg!D}^l5upWXPg0=$`U&(y!+whb#hE@tDi#x#4VGGKp0s|W# z#lle7f==IBl*JcW%kVHbK&=}B-V!<4`|9e5lHhA(!uON27UJ;y!-;$_PQLS_tv3n> z9lvL=N4PD{<|G6#<4cw4`7x`qV~CMSHz1mP5z8ID+W2SkDL~Z>c>PX|J7wI{`zvo_Q{5| za6|jPgn-=TTQ8A{R4IPMTu#SOplmiIfh@MtnS<^dr&gaFo+!rj8>4il|7Hulh#Lc! zZG03DcAGXIhHCmRchxV1x#gQc;*PWNTC2e~bO9>>{)sb3f8T@kKo8+FV5biTOo3&9 ze_9f(C=V&oTZo;ucr_(sRmC%51aHc4`C9?eYcx-jh6f+QQoa*n0e?KBc(pAeUzGP* zu<$1Zl{aD@-YDKCfoER<@{;=`5pyfBCgT7TElGEAw0QAI&tiG7R&=aC>mNU>*-$>C z*qh^kLd9M1o7Yi9WzIO0&}n`OE|~at{Td0ayu`DIJuWG${C_WQ~|ee5OEUxS-B>S^-AstxRL+ zEDOcNr_lb!9YSO0z`V0I-&KUROpu>4@fLt)3SM4J*6?)-4JPZ-9CAqiX^&=HrHKcCukX?sCtwVo>)ToD?&?L?2Chb*D-R=mGkzp0NTW$G#Hz{+P0OMsV zqL!6AMtNDdQ8qrFMugC?B|E6~@AyX0@jmSne_@1_zP-nO+=pBfzrSEaWaR`YOZ87i z1eTrJk@W|&yzxkRU|O0BKM9;_Ce1+>XU_rE*UqtlyHuJdgyW~IxpiR4 zAG!7}+t|~MHFUs->kJZ6Ta+B>!3|oPpZ?%2H#zTJ15B>b8+uhX ziyxp%(BY*L`*5tIy_8MgJtI3$Sf|L*p3TqbG1=W*$?20ttUK#jg&&Q{li+V)&SY1wXtz^ElixCI~+NIZMAYb!1@->nqqO8OtX`{y*y?+%$9hq#U?5k8K*7X1-1O9jj%_O6k6*RRr}Yw8Y+ zbErqNG6TjgzJ{m^nBu-*bg(~w0*Qp!wsdDu1kcIB(sEUkHaZX>Xuw7m-0XTENq_Le z{b+xh9t(gE<`1wFj06C3v8GB5A=cVh00)q_y?Yg4l=SNCtLA}|q4WSI<-n~D>WR`> z_an@9sY&3&(Q8X2NgWry6?hsGEjEO&=!ie~8M)gx>UJ^JVxp)TIEZwDe;Zd(9{IG` z#Kr52l)tT>$nrT(#RdyOG#p7^HT9HaZ%QRao?DB+KJ&}4_+w`x(r!4y$@3vceAVem z#sCtH6W2R^n#@uQ5@2I8j@Zw9ci2|>-RDSwJA;#HWMv5q;q!7v-a>345Uqi0R+YUj z+_mkEZ9diALblJXL=$;J|2;V?DN-H35cN9`97RR(?{^Y`|_Y!j|;1GVYm0_bRNNYaj9%GCgZ%lM z6xy+pTkOw3XR)#vv6RRRovP!a&qVFddFJmG)xH}y|C4!~D{?Um@{)Hp?a`36s3n*9 z!Yj)vmu&im-kSIwv{wWku0jRZdOD!Uxm+ci4HF_a4}!Jn%VTND+LrXcEm=neVBRBc zMkNXC@Rt960^COn5RzTWZwf1-a%WB<@TCV#_85?~o;$L+rBfJxYhW zId|BN&`QpITEfCP^P=Z(u)Zn_ubwp^V^dNTM(*K%xT@xXDwiIRfA!E#JWg{ z$c}khx?01i&l9#79!_DT2};q2fa+6*5#>M1he8U5uT4DbTO$jvFoKz^5cB=EBcJMb zIzwt&be_?k2j~PILGK~BG#+hpJ)xU$h1-a`sN`CwiV2oSbHhHk9$ zM%%*2Z9~$h0@(P0D`@I)shGWBbZ;RyW*}o=K!MD+G-8!eFtnH1{E_!0LAfuEFGi)^2E%5B<@Wz8JR=pXp~B2^2c=1m_JK~ ztT{5#RGyfzNe6~wW>Nz(?dLc&Ux>Xhp`5yh3Nwz+wWGc#yd!%?iq=9_zpIRxWX;XH zxVj8em}J5)0$XL=xv?6;Zn{G9V3!e<#(j4nC>bd<;l0+^#h?mN7mMs=5~}C}5RLaw z2z4>15$a`-)#DKF47WG())5I)2WG;QaT}&WiAW(~3~1REsYlrNlhBXoW146$VI(?e!=>Bcv`vCr6NiNENFqT};L2;Y z5O=O9K_DP01-^53aDRj#j)#BS4(^gzd>!8c!DGoL*zFXCMw~Ny5%qfhJS= z4KtD6lVm&gg}U{WBN!q)WsI4zwJl9tu{j0i|Bjer@M)J=^6LhOG96E5bq@KUp8tV-UPtU?q^yM zKmmO|NMFzVsFE>pl(i)FIJtmR1T5h4Ri%hjyrajPGgjgbY zaWsWE_t?3fr!BeJ2g!`RWl}%J_epOOMudLcY+StDFYEo*-h@qj zPv~r%dlxzZeZss9>^s@^VIVNm$(fpr$LXt9e$MkBziyd_Z~D&gPRwwiMc)Q4~30( zo}l*D@7FEv@VyioQSa=8oVJTk&_Ad&+mN}M13%4BQ*wA(?H5$_jMBO3LnW<0=!pTV zvBdN(_bBEyj-gavZ~VUQ@ps+B=#7U(L-T5tv5@^@BmU(e8Ua$02JzRNjn1hLq^SeC zf&njD!&O}}HFY`lgPVU?BXaT&1!hVkzVxkmCArWdXmu}v+>BS!Dr!>+cA=A!7;uI| zcDPL*N#4^&0=qOHup#GVj{R~2XNNC~)Y>jrB2mIiBqy*Jp-Em{dom)M0%LcO_FGtB zd2&nRbt0A4`*iHnVT-NS z86GzPfP%BJUnk3(yOe*VGTp#-Xm0Y}yrDiKR7NpJi$kU>vWbj!e$Ab?Edl=cI}R~q zy_eK#7V!NC6apl;Z3n&+Ws|q8#?3DAzbbIROlZVcx5stLJ2k%x@&N(@1^efcfAs{4 zOz=<8=YJIblWzErLKFgJJ=MDeXT_@_1fmF2lYSj19SfazDEkB~0bJ7!=w;;pX1r(q z^}E7lTmKs{v_V^V!Mv{}DVHP&=d7{CnzNrEK>1_TZe?8^D z^4I?hcmEge{x979U%31Kcp;Mk0sl$S{yXkf{lA#MJ~IRGPdE90YX83%VE;c(`d>Ai$ z?2H5ez*9=_=#~v|66$|C{(qtK+5d*l|7l)r@FpMLo_B6MIJuhxBa#!pBFz@&Bnj8w zM(X5{Tj8B!qbVDx)Q=ff9w3S5c=#)tg$LfV50L|kY;N-Mq*Sf`_cb2|lm1^_?;MJ~VDkW^&a5A_gbQ3Rjh`h`=+gspr7YmP&p z7@ND=tYugIFLXXjushe&P&fmIL|XzFVCtZRhDvlIPbT!6vo#WMkBJEY2@3R&CI8;f zzrgnFe}c|u|G%U2+5aqm9e_}d){VOHD-)mT3dNGHr=Tmn`hTMHf9sv#WQpi`hQJ6c z^kl|l>UQ%Z5v~)872Hz4BT_3?IbpTr24sjqMBhYl zBYl>#59b@|Vl^A`aZDmB zWc1+Cn-XK4a2aqE#J05MU0=q!y3;1~e~C(OAFW+oC8L>y$uGdjc+mM60}~9FI67@` zuo^R_jevOaK4`i|V2fKJ)JN$r0`gtK0I@EedbLS`>mx^u;g4ifTZC42Q!p$JlBf1xvA)^Uv3v?PXOwEi4`)^~V@ z_^d_QwpilIR5~EUvh6iz@myeVY-WgGgf$u#vrIc*sYjqEJRVi?B+@c+utpAb(>!b* zQCETIUW!`}g1mLAjih>g+Q$6!NUyiWakM^Qzcc9M=+V(F`zjjVt%{cn#U^`0WeN)A zgh8yejVVj=ZAf4G~!ErnD#uvo9bz!Ei8m z3kU#k{%QAiSxcPuK+`BR-!Uhvs?a^34}1EIGN@jyqmxJOPhNm}#dS5tmuCnW1+lIp z^*out`+0bQnl0^JT8IV#OYLCZz-neltLL9nE{CRoX7kT)8g$l0aYTnLX%QxlTpdjl zq?81m$rO#Aaa=el3NF4r9KmgT*D@0lh(Its&b9T1$G8Dol0b>oLf+zHOc)3Mo{f1K zA$$Z{AzZ8n2`zpcJkjtCe|N9JDIf zzWniGwG$;kdR#J(I^6du+;(@ zBt5TG>D`EF-+Ae(0_w*|JDXDJvQkBf-o^Xco@ruXNPDUwT?`3fe0JW7Y>T)XZU37Z z4L>v*xO$)qNWN5@%iDQ&HeCK;M#FMv_;mQX?zC65c;IBctWOj?+O}Qlo;2^k*y(3aWb#!n=Bmv#xztI=ZlGM`nni2F9Jaid6ErfW zl~}56tbO|86G+X@p#Fo!?-mQKEI8&f*>QpVDIb`Dh)M?oPa2C}{**xc#B*aCqXK#q zEPCD5-*flx52D{jd;bv@K?W;CsxbIWqL!DhRQp`_tie4Y%7?DyTz$|CQ{N7Y0&U)7 z(o&48Eqb<4m$4foM#R^3u47iAWFBbK>H8+7AU;5lU{I#F__ktVLTg zWjT46=`FgkGVb@Xm6>s$_6keq6F|s)Uw(^e5(4#R75G0$C}t}tT5aY|p~Wl(IU28Z zOu=%vup6_AEd#u&l^R@`OFg1ibR2*kkobQBuFWZCx72c_CpTW#QjJ*A5n6MDYrVDB zs{y;F_YsHm3!2GIP7eFdD`Y-daoHcg@zME_ZR8HFeUEqV^^kFbwa3TmL*!5_a}%6I zkpby``f2<|pn3fn z$aJ#+{0R{zm7H%b?ALV3=WM9XSdz(2I!OW>wRW~X&sa=WihTu;X%Ykgl9vbYY`BCY z$e~uw;Z)hujO&`%qhMnH$=;)I^ny~!7EvwFHw7M|RFkS_&3uFMhTq8C0fdcLWQ0i;ZP zmodNcJqM=dBTuSyjROv}9B=1=G}Ec>3!FvU43TVM0E+et5*jp6?pByOpESz zP9L=2<`-_O`FJX}4!k3QnE$BhrsUEQ$s(2{Sci0GA{5HE!tPHKnsT5`Q9d)wE}Wfl(V8*h<@iSU zG)UM=9BLz~KCo?NCW!r?Ch+-M7BK33DWDCzNQM_Tuu^!gZ=mPem^mB#K^Hns6a|?e zrR^#Rl?NB40tcaVD@lv>nsTYtbr%MwM$)~#J^%ey#%ymH7A)c<`u^8+|ByQJhb@WM zjC>MQaqz;kb{+PE{!2w%XPET?uT;<7S7t;YA~Ih_DuCfF%%NPX9vCmWnS9swZMdKP zec-K45af&A4CvuvcJz^wW>6&84J!g&-9l|GIoRqmlq;g0tL@cS;5j5)M!?QxgRL@W!3Sx z*Z_GuDsz`6s05GPDXr%3Y@QH8SVd|2v`R*o6^h&qFcfW7gQQ~k6AF*8_wOS>FU2A z96jv@C7r{~gRcWKW%opO{WNWg)3>_kL`qr0@)fWhyItPlha54RKH$&5dOqw+V0vkp zq%Ink`ub4oG!#qe({>a6U!UV)7W&vE zm86N5In`ZC$S;+Ef~?838e4HaDEt)Cx)Vw~zjN?zidj%2xo@jQJhLrRx&t2X^URj2 zM{E!ratN5L?R5&M*;T}TszR1qx!NeKp>V^5yp?pt5TT25q5}q0M)kv| zLGC9R=J03`o-)<6)rF$cVE6JC@WmlJNm) z`A`0aF6PsBqhU|r5<8k1bt3~g2k~oy^Gq>&nNY&n0#zyN4L$A-07}a~c~RAypz4`w zkp+1CeZ4~k)w3qkzhX?6r{a42sfPb1$R5$@YJXM{TJ*!t09FIc@FUTYVqT(iszAYF zkj(9^?)z)_nK5ubO0S!<_9I_|YAOJOkYQ0Bcin}POOJ1PNi3T6G+>ULR)34&4wC*l zR^$v}bC0T_Aa{QqrRmPcD+^lQn?kq1Mo3Zu8$LmCe6J9(l2sL&%Tj@ZDjmZNJy4`k zc@b+ko?HeWT@8%mSv;tIcqbF9r~_;e5C5-M#DDru^KF2GocfAJU2FlMf6i?vc86i3 zxrgk}FGlK93rcVmS9b;7MlB!7dEOYPG2t}lpY5g&PK;j?<(Z&=B(kIM=h=yJjw6=c zhxXvO@pOu}K1*d@D%b^osiZU;3n!!T8CmlZfxntd0N5AL97ZDHe&K^(vkKwtp=W{hxsSzj}Squ`BZWu!9K zr^r2TM}EXa#rtp;)!i#R5T*|ca)Z`So-+HpD1*voPc;1rDvrj`C)}m`_dLcS2D)pT z*+R5B8CAWv1`K{4Ek;ODQMa~pF;ia;#(s%Tq=~B?Nv;0cO7E zN8#+69pzDz>63%)&fGoEN-U51-y;z4%ZcyY!Zv!GS%yrxd-FZk=bxYF+*btP9;@a& zzM2jI)XWf9@vgb836m;tH%0;hCM-`kQKwy-X0+#r81v?R64>$!jxo|FOs5J9{sX>&>BtwXK(sH6 z5gyx8tIG&P=jGvIQW42#~+BZz;akd zP_EQO!?^~qOU6-Sph4l(^NM-tno#xh8KnbMh0I+Zwnn8Pia3SH=X{!3V2+~Jrfv`| z(X`Xs4&&{BqcNCLjra~QE$b$F)BDR*vV|ZJF=6B5B=cX*Y(}$sf1Crjua&eEyEzaBR}6Qu@_SkIV!a>!v`_KN3ZZ~E zcLch54{fBjrBd4x?)#st&6)}}2o%>!V@_M)P2i{vw~>CI)Gh7`#!3ZWWTN&?!LB=4 z*9%(=s}chVF>X_pYD?iPb}sX!hRXxX_m;_4ex?-N3}p0jEIV3kW%bsW8NdDdwp33Y z6dp^Ix2H#dmjK9*SZWe1vL3M60U`$QTY$l3{Sc@E2ZpU|A#%z9uj$3kZ~lSs!Q>)T zj0xI-HXkjD7>lOj3^wH;Zy>8G7$h6D9xB$Ys`T@BK~|7AF`UA@ajm^DE#eE{pE7Pjq>Kn*ijIhXO%(D8{dFO zfFTPFNy-}?!K*9O`joOZowLhp^ea{DVA>?GCeYO{b zx(&%Jrz51Qf2^))!Wyd-)^%^ODL!u45tX%tZa z6p1M^|ClhgA+|K>m9`m>mvK>RE0F3xm7+(PYsm{uYwbO7&b4!BwWkEpNOYHrn`D@L0_xy{sJS@dT9HQ37 zS5++T&~Bu#5H63*R_|W$gi&islW}& zZyx0Bd3|pa0s)8&l(Q_!bUVJ=!Zcl`C2y;L)s4a2kxw-|=`xv=JM>W$g(=^lT|a#PvuNjO??J4WDm% ziVb-$G-`=%I$ud1%(BNN6Va2vrnKL&x5-lMKWOp6vZ6MQvpbo*F-(dCb z@XbQ+N#K`jo_2_BhEOMrAZDGZ@&0J!v$e6k;3PE}FzZa8$(!wFQS^;xZ)!Bdx^Xt< z^TSs_>)PLYyJ$aR0meXctn9~Go_q~^EbhFDnqXR9ttE?s#k^RWI38~%qjs~k3RE*H zO{q!t=r2LdGHSmyv2wKgk|u1Ywo2Fkmf+xw2>PqwvD zabGQg0v}JCP58FSGehNF^nDA%EbN1&YmF(2JbM?8w97i5 z4V3{;61Kg?INupR?hIQ3AZh;exEQ{`Ul3s1L-ocMl7g6AEDQ)oCnBqHu1GOkf#68` zTjLpVb^@4g5 z((yC^Ily_j1OBUt%=gk!!kw1Ml>wAAhF5B9pdeIQg(er@cD|5WI&-&)H39%SLvEXhaK;F`ILLGTSs|m zpu8xE_A`J#wAx7oTIWPiJ|r=Pl2sGKyvA)a_k!I07|OhZbvp=6?CkqcZQQY&kL+8r zydCR{hU#pWmQH#i7YfM&1LvbL_}+oC0nHpDtb9-AC+F@Bu$SAnoe-)*+9jPC%tbk! z?pYZ`^4F3u>S-@)i`f%AZaawk3*!wpc;#<8)+S%0>@P)wl;M*D$Ku1}C*K}=H)YK1 z?TwvQ^dP%3h-=+}OwQ|2VOQk^XL0}-9;Z7*4*Kt{#4z*e9{PzJBg0zCl_F~Uy(-IQ zpoxyE@RRm7Lse@PnCd6aTOz^8YC zXIAAU87eOd<}g2a)oGsT!rbQ?WODhATSut%oOMDkEt|2l7{$39{9tO-SF53Cuv^&( zCyq5S!2WYoYVwK#>T*qpWkVn>yXc77(?u(8pfIU(;HTgIF@$*A_&zo({53=EjP<58 z6a#(%;)9^DJe7T7m8)ou>4$|SYid5CQTx^O0Fwv9i!5X$JTfvE@TNt zm$wsstfBS4v{J%_*UcC=Cm)c1KTBBSq7y6_B~3mq8O1eAz`EeBzdJUa4h@Y;xm4Bo zRI5+H?MR|?XXN3S_*_v5*%xWrbDZZsDK?v`$sQ5mo)gerse6KVVqi=iS~Qp#xmSD8 zB6Ww^5hglR{D~0f74!Yf^MLJ2x(9`mo<}W{aXdvFf6Ck6v6O1Ecl;znClE5`d;N7S z{U)1^akuOT!Gv49_Cczxcy4t#{3MvDU)d;HS^kE z?50CCRBVG{>qM1*gq*6^2V`et_ePoYDx16G9F0=Y{F(Qn(e{Z)Q%)LReeQu%hzfIy z)}@!Pa7Eb3$!7e!EIQPy$E#A+${STtuJ_uX z)x1IS*?h|;4<21-E?}5<08->dkodAc9SMom_Dr`}&i5t15pPWjMo9kxX)J6~USHe9 zozVSFc*<&bbzOux+%UL;^O!wL0T{ZM-Z<8eF`t{#gQ(rp!h4w!kUkiOl%(^y-v#ZA z$4>dZ+*UEi$P2fqJGlS_5t-gKQX&xVlgYu8g_thv3q|N1#}|ZiB|u|k);toRyQ7Ev z;+VZy6@=iXw$}di33qWi6R0%C16kHi(Gmx9l*nbDMKW-yFH!DFJizaV&!wO44_BWY zq*_DN{O#m+jaHY*;J1H1#dQwuQ|l`yLDWr(=nn3kp*2`*4W%N>E9}!f+l6IZ^x}fg zd1;%7ia2gwxm+$bSw=Q#mYqpMs=Wn#!rBQNr>81!d_A!>$cXs*8QdvRA!{TD;hx)T z2uj#gaRNT&;yUgGVvDsMO8_}MR!`WnxnJl6X#{E=`{j+yTICjZw#R@@K!G)N05yCu z!KFPJbdsR7ukQF&ja~ClBm)O<-Mtls#YgZ|N{nc*cOT#Oc4M)uR$LCbgicpXx zioVbISxx*p1kI+?T?;Sm%7|x3Vu{Z%$NM`)TO>WdPEcb8#sWvq&0!6rqI*Q1LzUD& z&=sO-n$dc|sMvClnW=eQxz0_o$PF`PhdZvh-`}+ol=Fhr)tf?|j7xL8o!$Vol36f% zPo69{l2lI#KB!iWo`PB9J(*>80HoU@kT0~>lH1T_%#y2>gsB2PS5?fP%mIR`0+mwv zh>)(8?otbfbAe!9jrNA=LpIA0fV)jsYUSHmjHEciCZ91Y?JgGBMFO+WSC3}moT@Kjb7EHeH0GrSBYx2H^`nf zr+b({jY(^>Or3ghVZr^L%C70hm3 z`0uV6OV*}U1OC??jbUilg%(7fUv03hi;?TbISm{0;ft=9@XQ;1Y8jg}avOI`*N_MT zez6FwJ$3b%KN(S1c=6Fv#qQ7;)Rr(VY{8ai&T@%#L?Gn88Rs3kKM=kNpDWta)We*8 z=Bm>`sqQ?sZQ&b<)-g@~7xM*MG%mjcxFW?D-s(R6B1ODPi3jl5U+fwg#SQ_A6IRBx zLiU~q7=yPwT_GjrcJ%M|f!t{mdD_$Z%dV1& zl&Yv{)5f9TC!x0KlpxQd2dDd9kQV3PAFheGf})_KDw|Us@TF3oK=Zfv^n4fTnSD>{ zdo44ZQI4|UU~V^Dm#wkLQz{CeQOcDus@lGzemI*+ zZTvHa;;|7{zbxzT&Qp8Aaq|6v6L%JFL8Ea;Gu7k#JdHt7KC z9{oCEeBVM!$!nLC!7PUD*%_|YQPDrn5ng+#JFv$$k40|gYkE#UC8IR~2`uGxe0ci( zco%b!jBNe0^>|p7GV|)YtpJ4iyjr}lJrk0gS(?-3$o!6)pGW7?21rfJ_n11`q+2H~ zS2Xw&Lk^hv@2r&??mw|K=v|DFal~1OE&YE47nj-rj6X@=@OXULVFEr`yo|&-jCQ5o zQcx<}iQ0VY2bRQX3VIxJ!f)~j9z=yWHuMp`APwlX=9$6mD{T4dKi<;`_&$V5H80z; z-;6=I5OJL~Cw_!TgGo{HP~drYmQjQ8bI(%M_ikF!Jue||&S9sRadAX#M1Vr#CvWR? zdW!0pc%PRYhNG5u7V_n9ik0i0a)K7yUR}iifJOEqZp2aDUq~VEVHxO}+5Si0FY=jd0v4xB7 z#p?tYz@N)ZyP8x{MrQ+0dZ#4PcgTU!c<<~ROK_#?X8VJXua&TM^#8E;7f^L&OWP=n zyE}p4t{b-i!CitoY+!F(f@^Ss2X}W1K?8&k2u=b7m*7qamOya%A=0P&yxpPueBV9e zzxT}=g8_Rn*E8p;RaH;TqKb94``KJPi|7oDh9lE+znKjkMA?6VsSqia&m;g*t@y z0XtSY>|*`WUO$;QY+snVpO7rRk!9d1D0BJ?*B6D;ou`UYEF4d4BfEzGsor@QCYPS&viD zmZnAG!r^#NQ-fx|^zSpv8ei|6&|YErqPNXfGukE%>|83Ur!7fYW23!S#?mWZip+$= zsw2QUbJ5-Jt=WJ0lnUFsa=9-iHFE7uP+)~nW}q(_+SbX@)>J93DOLll_Riaeq9t#> zeDc;pQKGEj)fFh1ZHGsZdUf>p_7%_uAaDo^ZWo@;3n<5?<4(Xrf2A~eo&_6QZ-L!J z3-=urVEgC`-YfiK@MfACbze$i0t0*U+um zru#K1)fkacAL>22Bv{7>6uq9e4PL4jj`)0-|izI9Y0eD1dta(*d6^hCg_qa4d z330`?I@e*ky2-kym|S?HEZ28-k{+oI11SdGC@=_$P*3NXw6qR0lwpmmV(YQ8q{IgN z;|5xZdXu+eC{7okSz@zC`9_pKnhQL*!qEUSK2dBI%A?apLmm~R<0^Y7o%BlDtOr?z zkX!JLvNV;PU6NJc^Vz~8vuH%5<$H3C<@!8950lU=AoK|Qc9AQO?=Jejb+EG!Soh2g zNJKYn-cTI2UTv@DWTKncXQIlw$ByK-)yOA1hU|L5CM`&`u&Xzp=o8ax#y`ivTwy)T z)(||O$SC4ez=Ki|%*xol?2b~_f4$uj z^eSTwwFsNU3c0WH6irJ{u=9w4oP+?yKLzZ5sEL8O^%f!0siPTB{OMD)Qn?4AoAc?P zqDUhlnK;ZGVr-W61LfRmfa6f?JR)x~L;62B1`o+U2a1F}&cej~H0?}XT7w1ge0%#) zu%%C`6E4EP(zm)o8O^}*j>1km>P6~7W%_v3(JCJlFO)j3g;1vPMS>-^4Genhu1c0M zUTcpQCeZ#O#zC+V`XbE`6YfKQZ=)tM=TgpA*U_Y63*BqVXb;NQPvxM+xb&S$X6tnV zDx(u4UY2wYwsG;$vW2f+!sm@|RQbeT0^aP7E^Noy+MVUCB)lE)FH=@0{5-4h`jJ)! zKFHh#jk?jjG~`vVwoa9sx;{*C5Zy#+7Fp?9M(Qv^u$+`i+hfBO*sEGgfFya34yRDO z&F2>>Z^B7>mT(#>Wwad*F=3n@-1QlGrA5J9vbLdre(+W_Z=!TuCVL|~Qd8o7S1bRD zIgT_#63`%WBNj2NM7z_9b6Ewq6{-x8x!^!H+Z&gK(K;YV75@Gw*G2J5e;sFFp?C6xssUQ zDxDyjhRP%ISu>|JjlAG*c}hO)^n@UwmYk7>4E3aR^U=#_+E%UpM!dRLYQt_GjRA5f zE1|Tti0~9?v`X$_vc&qu{jXTtlzmrj0;TqQX`%ng6=4G&um|ooH@Xk^FUu-!ID<`a_+rx1&q{@Ny8vp z&d7O1G>{Uqs;N{?zc<+4yztlFOjahvsBc1XD`5O00^``P+kqaq{d(8Ev@gK}CKkt5u@*TGj0Q_}PrZ28kaHW%((lDJc)@Qr@3FLWPuwNeRgjvjA=vG2 zSiF3?Sa9$(2K&*uYbYsZqY_1h%!+8T=;6`s{aqWbw;84?Z?dD~ffB>cp#^jm%iaY~R2%jW0Z28U^11-w;Fs3U<|=lXlM4RQke$A zh0GZg#%pAOe>wh2R4ANWA{NWhpKzzm;&2cvuv$mJnmF>eZ^gCHRh zA#bY-zO9B5@>st2@%diAni_*_Ll~sBe(3|=D`QP+LT@YLkJFbA3?Xk@4J;0szdazy zOp4x0)J!I@m?-j5uD7ILU2ng--hOqx{px!A)%EsM zK_)^%#9s?B;rh!>q>ibU37#-Qyfbt3?jBZ^HWp!BiMCtc;$t6Tplkd;?S8wBdMIvd zBzt#ji}P({@ZS^UyRThu?|yvxUDw<1&wcHBd-p%z4fE&COgCL`fA*W-y_@CTAK%SF z3;}@Pnh^ed`CrdsL*q?s|L2`A;uPW`ck)u;cJC#fDn=-t~t6qw8((Ti4rd z?O`M9TJ}cyPw|>W4^Cp1+w@~q$SFPMOzUa5g#+zmR*$aU}${`=JsV;}SQjX5Zt-Ubj z4^OvVWFS#Kp4?8oGb~lGk`F^P6;_*TbWov~@B%jYELp=8O5MKZ-txejf|pS8R4@92 z*gl8+zB)dG>LY~FV%#|C=`o)BiBlOh@TbUYqQ^;4zP&0C^t$(E1ox-Iw%WPW+fyFi zD;VX2_~6m}OjSD@K}b{Hg1vHq5$bMDYbz}H{7CafZ=qe|ok~vKf7%W}I zjw!a_69n}6S_Io7`!6h_*BiA)v2O8H2f4>@5}k0qOhUBg(m~|G)aD#zv`Da3NudlW zC}rYD7cjkh1K};+*?wmS*<}HVYvqi>3q5Rs9qD5>&RLA^0%W2^%hVN?jP+9J0Q17U zbRU$3?Zek4({I=x&ePxLU;;D=QfO7L5-4r6hk+$kbIV8DVsqDU1153q(hebN(t=VY zD$cOl{1Pt*b;=#9{m8RrgtuovggyQ!IgQcN?;iM~i?G(jn2D@!G)sMTzxns! z?QrJskr$IktzQJ+kV!e+x!-OG&IjR^8UoAOYQk#UdUm-eJN1@N`Qhe-U@i&ennR1; zf9mM+;d~-ha&?bZs6ffBM&7z8)1NjZc^f4+vo!Bjl?~dN_kHdV)@XLTpzioT}9f!+ZdJI1)Kdp`tX~3}%4dVc-$|T904xJ=jlc)eP-^ z5fg%NZ6ys2lJ5mxAjl8OK7TCeIsFm;Nnpq@7mu3>(7JEUM3Zr)78Kw_+{&B3A}DYb zf3T?(UxCkzLv0%O>Z1%`LYz)Ymm%DzkeMB*2i5(Ai5nlpj6!nsDc_7_8P!(|!nrfw z!-T|#*5@-O#`aODv&eqp14OF+q7S^o9wJt$ur89C_WGL4#uc%qlw0OI;dGOiafMLH zSePaG^yt=UAKIb=hxQq^{Oo}?xc4e43zA(U*>Yl=j_@HMrjjH}G<+&WZr{NRzR6Uq)LK#2y#6@NoRs;9U zQUP~M;6vH#HI(E6`%;!=5saP&zettek%CjFYhvPkK4YD#?@?D%gz4B<2ozxAPW5M; zpo{_z={F9oIEHkL?8s}d8s)V^DVhvgt%R8y<)GGkGf)rviJb(-)+_*9n8W&{W9qts z%+U{BXpeKUVUG)5Gm&MC=6qSBuuJR?=T>e5srz{Ene%Nk%I0-wwx+=hV?{R+ToT}C z7}jo9OKn9KJwjiaS?^WgE~c0PR^*~u`@IM+7B&z`1@D&OU50p{$)vj;-8!HQonTiG&9S zs3X6XRw|NN`GP2LjHFE0{!oCVS+KN&LZZvqxm^cxoe%IZR?nxY`bgYRr-4N1LgE6m z;Bdd5S^ZrZqQv>Ca{=8}sCW14@EO-u%8@AT$>=B>d3NY!-eXNvze!Jc44^D^qV%`lS44bJvcfZR)`0=^T9n9B5OAitElS<@!yjl z8-LBBlW)l4!L2u}>E-FXA&?euFq^kX>k+v^h`)zjq-b4tuPjo*kih{AvSIw}V5cB~ zrjY=9LbZD`Z{=?}qODa#!B=789k~ufp4D_tSf+hUDZk7&cInIAtd1r}Mm4JS&i)Nw zqqRER(L*3`O@%>r)pis-x~~q61c`bY3FDAJr_JzO>kIJBS+(F<*{8>=!)B*e9;u)+ zdnV|H&Y}KbbbO=!9^C%z4zOg+zGOO9Y{fvkrPkX#3%_^%yOhIDNf&Grf&=NW-2*TT zZmWr``}V{Jg;cXz8Q`^L?zMBlV}qRr9oDtH3dc`0i|`t7rD$#g4Mz9mQ1OWsDBd-u z_&S6{&CTfXK7qX4o+n?qcNA$9vDOkF$Y|*q@|I^HShnfuBXJSZ$iU%pq)D%DTytAU z8BM>WEZg16V7b3UPJR{D{2~-sShP-AaTfCEaB>+!vGfyEm2S`ZP7f=@>I+}}D2{w{Zy?gs2D*_^yLFIkc z1QkSYxMVABIJnO6MKi-;+g)L1j<z4eh_D32gt>VD>J0X(+3jXSs|f? zSqWY5t6^Cou`&MU12hcFSXqm0&9%wxRwAz@||eVH<^oU!Cnk~d&tJBEAe z@Zs6NkU?^7R(%l<5z$aN=XaTWu!p2$AXe_j1eMM|)Z-tg;?~eA#ilr;LwV1IYW0U*V~?v?3AC{B_D(7YO@h=3yB7w& zfOQO3%@S;+fZk%^Ho98SDcpj%acTUR6rL6j8wkOC1W8G%Obo9Kr=8?_)5MZE^nEt_ zp$Qn8=}SyvYK^|Y9i&NA+A}?ko01bYFRLQ31nS7+&f8$bryRLEC}P}cFf5(#>mTvc zET^XKIp;*v&7}n9C8*xttH$(lUvJ;SMj~t*opPQ>DSKN-A2qIl-9(Wwee}WOzCw<~9KVHekYq9@wU{{UcSkI-D=S*y zWD&Tr$RG(xprlA%G$31=-gCMR<8B@D6$$n_K)xl+`aTeYEV1Sx>fA)LX_shHwl^j9 zhdH9H6l3d{cl+iepV_hwV7{d;2MZt}ks)sjt!|?sD6c*=2N!vxb9phvPC;nv!OcfW zQ*_S=&IAI{L-I}C_-;*Y-nLp;B8ZphP-n@IaKAEvzcPWpGJ(G`fxj|=zcPXU&kHgM z67sej(Z37uHY!WRA1FYzhJv|e*lqt$Y;f?_KcC(D$H4#kG59sJI{4$$?=q{uKle4W z`t1b8?Flp3-@jLT@Y_#+cvtq#x$lrSrzmbucKzjhv0H6P|L|Vy`zv|h-iv*G!Jn;; z;K%ZR+|Q5CH`!eRds@)%)3k1Q7Pn`22RZ-gWx+@g5aY#zj{Z!LN8hu%1V6I7L*KHy zx2d=^rhq`1r2ZQ39!yc>YzrS|Vp&)AJdg6?(6NzD%NS|pvNQseIQ=WPL-rHYR@ViC zw?pob^+*Xzb05~SbzA}dd+BIz=6<)1C@ zX;?VLKj%=d4XAvUAekohS!>Ri;wHO$+mIWaubI)IKgsS6{r&9j(4S>@2l#=u^OWyl zdW!3Y){kLm`kQQC{VThBjZOwoy^F|s)U;TysmakAb07|alht-@New|FMNc^I))m-z|7!bu_sh8Zz( zvq`PW0X41VOotRQ<6KMKuRM*iMjbc1W+3WJ+TMk{9lwNNUjv zFZ2+We6F;MCxs3>0+K?!m~dvPXOqCK79owhcWHrY?(=CA5PDBDt?4A{Z3_$y$9=4F zYhu|RHwJhU;WV(@5mV}eR1D@Kodb~w9=9d^3uBYoWr2E#Bs{7TI@X{!p{qsS$O467~+T0j0O=4Cv2S2QN;*Ri(tF;K56O1e8Zw_ zb}a6qcun5xz2c)z_=TR2wwouPa|Sv363F777-elI=&M~w9AP1MJ+OS8RJKad8&gbC zl>+N6r7YdDe33To7j${nI4u%$Hq~V!i3HqzJNZRW z3hm?ueFZYBPMDQWcRGA^6>^fM%xNB6axDzOA2I7_LU*^VqSckNy|i+R$&NDAL`Fpp z_E6I`t&W@~8#Mvks}$Kqn)>qi&06Zq(U%bGl*ksk7rfC#yxp`y0{56@Gw3n53F$l# zavGj*QR`bDNncPDQ;pr5?$|5B)Z)W1l$EcsWou#ze~a?04;$P@h=5@ltgsd~@@jfXgPJ9~R=^?RoPL1TAo*%AOr_7Mk)3|Y@ig^N2O}?Y5P{p&#Uo*(b zu9K&z^GtE2tV5a!Lk`wOvW0y)K#NsdRa2glFi#1mub15T4(HRc_Y5GM^6=T zQ5Lqnc;6P%mv}toe5%&xhZN{Nq---l70JjU-d2 zr@eDhts#zFa(=#TYMC2fBf@SL(w8+hM3#v8K9BiP6*0Colpk_;YUzXfipz%E6edz< z;mR7MM2-nOWu@6Vokp1xD#&*tZ8H%OY2sSV5AZ6GkDgL)4w4F;5_cw+dq{AY@RUE6 z+-Wo@$Z}B0dQT|=gU&9Cu*Pe-GOf9n5^mHT2zU9ErtUNH+dUe4F0}xR_I2Yl9@W~l zJP?i;9-(dBhw9vn4}-422G94*b5Sr3L})g7!vt5=&j%tEoZQn?U-CtNhv~m#<7A}+&A)!<`cPz z=BWAFN(J$pI9r4jx5q&ZRRh;ZwE!gM}T;SvOA7=hu;UOD2u zg?Pux?R;0BbDIt`sm&lYieu=L?ckgjlE5LJn~kECsT|+ zGjYo)y@JrO+ISVAq?jTA{Fs~UoCqqjb+v+EIqDK?KzFzIeoakYdQ~e5cC6sW0b^?u z7t;_%^%_F?cQEz%hBJp+bPaBmct}v13x-v5P>%V4GD3NovxJ^o3|A%td8i1ciW87@g|`t9&8>SSxQ1Sh%5MJQ;XLeU_+&aCoRYW zbz(x!UJ_SRX7W{bVY-&r8|PQh>3X=G%xrjy8oGR(*B7PgZYCr%X8e`678d)d2 zWO`cgs2jphB7nL-jr&fpfp2h9iBR)PHyID{d+Kv{V;xlntFNSlMRPI^kqWWbSGhii zA}^*%w<)@=%0HX7X}(a_92%brJafI*!OL*B)d zQ$U8okOUP>ePvi1&)YS{f(MFguojBDmE!IW#oeK}ySsbQ;_mJaMSnOHE$;62ZvS82 zCm+tWnYrc6JxS&y*`3AZfN|rifN$h4-i6h8U>DPu-!cft0BAozcV;JuTTYTrFD0M1>D0?oQQ+&)rpk%B@zLZLWPrl zRGO6|Ua>HC{v(Kq#_9adX9$Zh3*_TkqG_K|`cz+o$ZyY@Jk&#yTM~oN-a}SYqdLR( z7C5O2Ni_Qh@6=)Wo#CE$_h0y0x$p_;Itodor8)^}5L}~pZ;Wgas^%7(Bc8{3 z70lUWBnSlm3JCE*RXOSlhGiMu^4d*Sa)f6qzc@_>X#H}hhGUPExPv=K_~ol%5Mbn+ zV2%)8fxDkP@Z%j{UcMANWx-EX zH;RjM{sS81w%^qKEUjHlAwBcAgpOf1G?y8%M4(>GhUsXsq{(LWGFp&w84uiiiVqD1 zQVeS7{@BREeubJ+Q&>Q05$hI#|4jm=?GCHXKo9cHw~K{d;y7~Rbz;5_|{oA=f8C?;KI4M9X)%gZa!o5`90P zifvMRP&U9^=&1rq`tt%&x2xxOu_PO?mYw<0|6mKg z6Mde%Yz3@`liOCgY*h248MOZ~O)sw@k_ew3o~N~DHE=x~ZzPX{J`b<%Bf@v&$)CP@ zAFWesLZs4zp%yKn7UG0?ymiTDoCc8bQCo>%MC1EMt+s{O7&{y4@xR1*#CN!-SJq`8 z^O1(Eey97INEYt~|EPg5AIPO$ZHpE$X3BMxRnp8+pWJAMh;t+`@r{Tt^iBoEA<_vM zaiXT{>jQK3@5=i4uk|=sxCj{VI zNzMHg7vbQ9=kK>S&CeE_J=@#*gJ$Q8^zlb_ituSRStBZFRON7g^;LUdJw=2}Em#;gT{2$?MwvD*Qr{@kX%N(h{^ot+E zd!Gx{WZkGH(>O!VW3rQYv6~t+P3U@SetKzdwoQ`5`SRmf&4fTmN{vR7jm5>cRTlqr z+!+eP9h@PAcP8k#iO4xCkRpbB^04+!@d<&yGOp=#9I-4QPxy+`T_QX}S`wT~j&>S;(>#%w!Ylx^PrN z_9a$T67vs!BxME~+=n#fb=HWl|JjzMp?tciL0?1Q80Brhc`X#gv850E`mA9n@u7^1 zF#pefEO1}Q;q2A~Rh_HqT91>{6^5<;S6vETWi;Z?7!}hrN?RPa)YI8!SFbhvy4o%e ztI3p%HUsdUmcOl(;sRrKvRwQWYU2*;Jr-+c6hdoK3k@oREXgv&eNbFegbZ-nUBwuO zV~K7ob?N9xw9W*yZnlC4@&_LUU3}$onEo!61%JKYUXm-{6q}lM&;D=_pevI`tMSTf zQ-5C4N{p(nc?hGyZ-C^Ti6v!n8RGUnhHEnE-ATzAY<_c2AWE3u3V z#zO=0h;JI@W8cu|QA1nLVn{9j#^j?xyIUNIF3)L$mUm$co5Y7Pan6T5Bg&N)l-UgJ zU_qRQE4kl`w8EdV%G*o`-9|8vp9VEBI|bY+bRMna%%h%`xNp|V+65c}K4;H54(Pu1 z8HO4+MAd)gjtYKShW(RD zzc$RRpdH&Cr>ih(F8Yo5n&bvMvv=6DtfTcOnR$j#*LViO!a2!+Lr1wW)tq_rDATL{ zFX=I%3o~vb7dF-McQ#sO)f|K^Y&zC-0WNXX>$1S zpFvpP%OBB)JHn=dTxr#%T-8lgB@~jgm4bDe9QAJ$l$a$ow)833LmK#qF4tl9 zYiMOCFQ^+3p`l%h=(j4_PIDrgWe2^XDJkrLx?UYSE=Woq|pE6(r~HPG(d zbMr<-V(;tFW+tBR`k$`oSJ;(fL%+rJ2BX-xtTRXdN#jPkUYo<~-)9a*3fQC|jYK98 z{PU2jr3TsIJ)HW5o`>zJ?-xNlEJ948`6Z4{8-HnC_rREIf;^y1MjdTsQ2$ja*yxgH zadQXJvEV;0)&!=-^$5T97GEo@=|~;VX!(0RuW}+e z2>PL?lPwthfz7#;$W<&~oc8{h@3=In8bV_geJXN<*vNTQIeV_Gw0N)&*{5KK{Z3Mn zhwJz%s$VDIR?! z`2@O^$BS1Qm0@fD@!_5Ksw`&(dbWySZ?vT^90-ePe^eZIE-ON1tU@5s5!itfoES!Z zSSZ`1>0nhAs`+GFOU_X3AzwLkzSMVvAtZVBCdtXS)0Pk-LUffj_9%19i;Sxg9CQ-K zMjw0l7`#vFgMRRs^^6)K4kI@F_$FyPgsu8mS*ZMoHM)K~=z_r7K5>-rsYW=@TIIgE zYtx`bjUs1`TlJ|T0Xw@H4d(07D${p4D$VbGdL%0D5#`O)UWPyVa!9K}gzor1W@FHc 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 literal 0 HcmV?d00001 diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json b/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json new file mode 100644 index 000000000..bb4596d85 --- /dev/null +++ b/qa/rpc-tests/cache/grpc_comparison_stage1/chain_metadata.json @@ -0,0 +1,29 @@ +{ + "taddr": "tmMWmEeXxaY2DexNSXTNwyycqHyQKy2ftCf", + "sapling_ua0": "zregtestsapling1nanlwtu2mduvwlnrh5x6xe65pcatwrmpmk8669x4dtqarp4yahcdvateptkzekryndc9jkcm8rn", + "sapling_ua_aux": "zregtestsapling1nm2yht29xhpsqp7eyfk4a6uagafpwcw0wtegemm5pm6agqmspsq6jej0mm2v2g444d5yyxpeg32", + "orchard_ua1": "uregtest17r5twml8p4r0l3jekpxmy2uhvlxjguah4cucxskgg2m7u0gphy0dxfx08h3xsr4rxy0ppgnh0q7fkqv3gzfpqkef8wnfv8d4egkukvvq", + "orchard_ua_aux": "uregtest1hzfyrt406dd29cmvksdwdr92rdprsl654s57p0fgugwv8j00xqppdzvhkzaesqxx87he0xm88tn3c3vu74fhx8zdatnrml26vqy5pp0w", + "sapling_addr0": "zregtestsapling1nanlwtu2mduvwlnrh5x6xe65pcatwrmpmk8669x4dtqarp4yahcdvateptkzekryndc9jkcm8rn", + "sapling_addr1": "zregtestsapling1z2mrs2wlfff4l3qav3n0g0tgatzgsxajttvgrxxq3qxn7yye57efdflg3587ft75agyhz6zjf82", + "orchard_addr0": "uregtest17r5twml8p4r0l3jekpxmy2uhvlxjguah4cucxskgg2m7u0gphy0dxfx08h3xsr4rxy0ppgnh0q7fkqv3gzfpqkef8wnfv8d4egkukvvq", + "orchard_addr1": "uregtest128gmqv7yh2kqw0qfgf9rhmeuxqs82nxhumsp482vk4pa0u2fc3ql5znr3ycnwnt7sanu3a4nrf53k5dzh5pt56w6yandv0yvwulhagkc", + "_orchard_aux_addr": "uregtest1hzfyrt406dd29cmvksdwdr92rdprsl654s57p0fgugwv8j00xqppdzvhkzaesqxx87he0xm88tn3c3vu74fhx8zdatnrml26vqy5pp0w", + "t_to_sapling_txid": "f1117f206884149044743d5a373ce89a24d52a3c9dba5fbc1c124fb22f53c1ad", + "t_to_sapling_height": 201, + "t_to_orchard_txid": null, + "t_to_orchard_height": null, + "sapling_to_sapling_txid": null, + "sapling_to_sapling_height": null, + "orchard_to_orchard_txid": null, + "orchard_to_orchard_height": null, + "sapling_to_orchard_txid": null, + "sapling_to_orchard_height": null, + "orchard_to_sapling_txid": null, + "orchard_to_sapling_height": null, + "sapling_to_t_txid": null, + "sapling_to_t_height": null, + "orchard_to_t_txid": null, + "orchard_to_t_height": null, + "cache_version": 8 +} \ No newline at end of file diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd0_state.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..21b4be88fa03d4e186fd047e283196fa916bd980 GIT binary patch literal 211412 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 )DNPJy`M{b&vT=meTbk<4aZM;X{f74enTXZoN45 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 literal 0 HcmV?d00001 diff --git a/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz b/qa/rpc-tests/cache/grpc_comparison_stage1/zcashd1_state.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..9731c6b90b0ff80cc7196f9e15c1dbc1d9293064 GIT binary patch literal 180833 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

Q4Uls(FC7K>v+=mVQ5vG@{IzKROb*$oB)&>7y5d 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 nj{%XoXb literal 0 HcmV?d00001 diff --git a/qa/rpc-tests/grpc_comparison.py b/qa/rpc-tests/grpc_comparison.py index c2ced2a98..3b6e6133d 100755 --- a/qa/rpc-tests/grpc_comparison.py +++ b/qa/rpc-tests/grpc_comparison.py @@ -48,6 +48,7 @@ import json import os +import shutil import tarfile import time from difflib import unified_diff @@ -103,6 +104,14 @@ } +def _zcashd_available(): + """Return True if the standalone zcashd builder binary can be executed.""" + return ( + os.path.isfile(os.getenv("ZCASHD", os.path.join("src", "zcashd"))) or + shutil.which("zcashd") is not None + ) + + def _skip_cached_runtime_files(tarinfo): """Exclude runtime-only files from cached datadirs.""" basename = os.path.basename(tarinfo.name) @@ -346,6 +355,15 @@ def setup_chain(self): except (IOError, OSError, ValueError) as e: print("grpc_comparison: ignoring incompatible stage-1 cache: %s" % str(e)) + if (not self._chain_loaded_from_cache and + not self._stage1_loaded_from_cache and + not _zcashd_available()): + raise Exception( + "grpc_comparison requires either qa/rpc-tests/cache/%s, " + "qa/rpc-tests/cache/%s, or a standalone zcashd binary to " + "rebuild the fixture." % (_GRPC_CACHE_NAME, _GRPC_STAGE1_CACHE_NAME) + ) + def _load_cached_metadata(self, cache_path): with open(os.path.join(cache_path, 'chain_metadata.json'), encoding='utf8') as f: meta = json.load(f)