diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ccb6bd343a..ef0d54b436 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -193,9 +193,9 @@ jobs: - name: Add zcash_proofs as a dependency of the synthetic crate working-directory: ./ci-build run: cargo add --no-default-features --path ../crates/zcash_proofs - - name: Add zcash_client_backend as a dependency of the synthetic crate - working-directory: ./ci-build - run: cargo add --features lightwalletd-tonic --path ../crates/zcash_client_backend +# - name: Add zcash_client_backend as a dependency of the synthetic crate +# working-directory: ./ci-build +# run: cargo add --features lightwalletd-tonic --path ../crates/zcash_client_backend - name: Copy pinned dependencies into synthetic crate run: cp crates/Cargo.lock ci-build/ - name: Add target diff --git a/Cargo.lock b/Cargo.lock index 4781d8af86..5e07c65a56 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -364,7 +364,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "defaa24ecc093c77630e6c15e17c51f5e187bf35ee514f4e2d67baaa96dae22b" dependencies = [ "ciborium-io", - "half", + "half 1.8.2", ] [[package]] @@ -759,10 +759,19 @@ version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7" +[[package]] +name = "half" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02b4af3693f1b705df946e9fe5631932443781d0aabb423b62fcd4d73f6d2fd0" +dependencies = [ + "crunchy", +] + [[package]] name = "halo2_gadgets" version = "0.3.0" -source = "git+https://github.com/QED-it/halo2?branch=zsa1#5f436dc3387665fe3201d381791a62a8233b2171" +source = "git+https://github.com/QED-it/halo2?rev=7f5c0babd61f8ca46c9165a1adfac298d3fd3a11#7f5c0babd61f8ca46c9165a1adfac298d3fd3a11" dependencies = [ "arrayvec", "bitvec", @@ -785,7 +794,7 @@ checksum = "47716fe1ae67969c5e0b2ef826f32db8c3be72be325e1aa3c1951d06b5575ec5" [[package]] name = "halo2_proofs" version = "0.3.0" -source = "git+https://github.com/QED-it/halo2?branch=zsa1#5f436dc3387665fe3201d381791a62a8233b2171" +source = "git+https://github.com/QED-it/halo2?rev=7f5c0babd61f8ca46c9165a1adfac298d3fd3a11#7f5c0babd61f8ca46c9165a1adfac298d3fd3a11" dependencies = [ "blake2b_simd", "ff", @@ -1220,7 +1229,7 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "orchard" version = "0.8.0" -source = "git+https://github.com/QED-it/orchard?branch=zsa1#78c8efc23a37dc1d64ded53fab231098681966c0" +source = "git+https://github.com/QED-it/orchard?branch=zsa1#07b3697b271f04c736a5f7e130d186e68a85fd8c" dependencies = [ "aes", "bitvec", @@ -1228,6 +1237,7 @@ dependencies = [ "ff", "fpe", "group", + "half 2.2.1", "halo2_gadgets", "halo2_proofs", "hex", @@ -1243,7 +1253,7 @@ dependencies = [ "serde", "subtle", "tracing", - "zcash_note_encryption 0.4.0 (git+https://github.com/QED-it/zcash_note_encryption?branch=zsa1)", + "zcash_note_encryption", "zcash_spec", "zip32", ] @@ -1742,8 +1752,7 @@ dependencies = [ [[package]] name = "sapling-crypto" version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02f4270033afcb0c74c5c7d59c73cfd1040367f67f224fe7ed9a919ae618f1b7" +source = "git+https://github.com/QED-it/sapling-crypto?branch=zsa1#99ad0a5f0bdef332bdc91d577086abd3aca59553" dependencies = [ "aes", "bellman", @@ -1767,7 +1776,7 @@ dependencies = [ "redjubjub", "subtle", "tracing", - "zcash_note_encryption 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_note_encryption", "zcash_spec", "zip32", ] @@ -2478,20 +2487,7 @@ dependencies = [ [[package]] name = "zcash_note_encryption" version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b4580cd6cee12e44421dac43169be8d23791650816bdb34e6ddfa70ac89c1c5" -dependencies = [ - "chacha20", - "chacha20poly1305", - "cipher", - "rand_core", - "subtle", -] - -[[package]] -name = "zcash_note_encryption" -version = "0.4.0" -source = "git+https://github.com/QED-it/zcash_note_encryption?branch=zsa1#8b6b31dcea4a883a606425c4b644fca213e78b3b" +source = "git+https://github.com/QED-it/zcash_note_encryption?branch=zsa1#76745f00551d4442dee11ad64a8400b75132d18f" dependencies = [ "chacha20", "chacha20poly1305", @@ -2537,7 +2533,7 @@ dependencies = [ "tracing", "zcash_address", "zcash_encoding", - "zcash_note_encryption 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", + "zcash_note_encryption", "zcash_protocol", "zcash_spec", "zip32", diff --git a/Cargo.toml b/Cargo.toml index cb1347f1ad..ea4dc87ac0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -58,7 +58,7 @@ sapling = { package = "sapling-crypto", version = "0.1.3" } # - Orchard nonempty = "0.7" -orchard = { version = "0.8.0", default-features = false } +orchard = { version = "0.8.0", default-features = false, git = "https://github.com/QED-it/orchard", branch = "zsa1" } pasta_curves = "0.5" # - Transparent @@ -124,4 +124,5 @@ panic = 'abort' codegen-units = 1 [patch.crates-io] -orchard = { version = "0.8.0", git = "https://github.com/QED-it/orchard", branch = "zsa1" } +zcash_note_encryption = { version = "0.4", git = "https://github.com/QED-it/zcash_note_encryption", branch = "zsa1" } +sapling = { package = "sapling-crypto", version = "0.1.3", git = "https://github.com/QED-it/sapling-crypto", branch = "zsa1" } diff --git a/components/zcash_protocol/src/consensus.rs b/components/zcash_protocol/src/consensus.rs index 32af0be70b..56e41fb738 100644 --- a/components/zcash_protocol/src/consensus.rs +++ b/components/zcash_protocol/src/consensus.rs @@ -355,7 +355,9 @@ impl Parameters for MainNetwork { NetworkUpgrade::Canopy => Some(BlockHeight(1_046_400)), NetworkUpgrade::Nu5 => Some(BlockHeight(1_687_104)), #[cfg(zcash_unstable = "nu6")] - NetworkUpgrade::Nu6 => None, + NetworkUpgrade::Nu6 => Some(BlockHeight(1_687_106)), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + NetworkUpgrade::Nu7 => Some(BlockHeight(1_687_107)), #[cfg(zcash_unstable = "zfuture")] NetworkUpgrade::ZFuture => None, } @@ -386,6 +388,8 @@ impl Parameters for TestNetwork { NetworkUpgrade::Nu5 => Some(BlockHeight(1_842_420)), #[cfg(zcash_unstable = "nu6")] NetworkUpgrade::Nu6 => None, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + NetworkUpgrade::Nu7 => Some(BlockHeight(1_842_421)), #[cfg(zcash_unstable = "zfuture")] NetworkUpgrade::ZFuture => None, } @@ -454,6 +458,11 @@ pub enum NetworkUpgrade { /// [Nu6]: https://z.cash/upgrade/nu6/ #[cfg(zcash_unstable = "nu6")] Nu6, + /// The [Nu7] network upgrade. + /// + /// [Nu7]: https://z.cash/upgrade/nu7/ + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + Nu7, /// The ZFUTURE network upgrade. /// /// This upgrade is expected never to activate on mainnet; @@ -476,6 +485,8 @@ impl fmt::Display for NetworkUpgrade { NetworkUpgrade::Nu5 => write!(f, "Nu5"), #[cfg(zcash_unstable = "nu6")] NetworkUpgrade::Nu6 => write!(f, "Nu6"), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + NetworkUpgrade::Nu7 => write!(f, "Nu7"), #[cfg(zcash_unstable = "zfuture")] NetworkUpgrade::ZFuture => write!(f, "ZFUTURE"), } @@ -493,6 +504,8 @@ impl NetworkUpgrade { NetworkUpgrade::Nu5 => BranchId::Nu5, #[cfg(zcash_unstable = "nu6")] NetworkUpgrade::Nu6 => BranchId::Nu6, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + NetworkUpgrade::Nu7 => BranchId::Nu7, #[cfg(zcash_unstable = "zfuture")] NetworkUpgrade::ZFuture => BranchId::ZFuture, } @@ -512,6 +525,8 @@ const UPGRADES_IN_ORDER: &[NetworkUpgrade] = &[ NetworkUpgrade::Nu5, #[cfg(zcash_unstable = "nu6")] NetworkUpgrade::Nu6, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + NetworkUpgrade::Nu7, ]; /// The "grace period" defined in [ZIP 212]. @@ -551,6 +566,9 @@ pub enum BranchId { /// The consensus rules deployed by [`NetworkUpgrade::Nu6`]. #[cfg(zcash_unstable = "nu6")] Nu6, + /// The consensus rules deployed by [`NetworkUpgrade::Nu7`]. + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + Nu7, /// Candidates for future consensus rules; this branch will never /// activate on mainnet. #[cfg(zcash_unstable = "zfuture")] @@ -573,6 +591,8 @@ impl TryFrom for BranchId { 0xc2d6_d0b4 => Ok(BranchId::Nu5), #[cfg(zcash_unstable = "nu6")] 0xc8e7_1055 => Ok(BranchId::Nu6), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + 0x7777_7777 => Ok(BranchId::Nu7), #[cfg(zcash_unstable = "zfuture")] 0xffff_ffff => Ok(BranchId::ZFuture), _ => Err("Unknown consensus branch ID"), @@ -592,6 +612,8 @@ impl From for u32 { BranchId::Nu5 => 0xc2d6_d0b4, #[cfg(zcash_unstable = "nu6")] BranchId::Nu6 => 0xc8e7_1055, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + BranchId::Nu7 => 0x7777_7777, #[cfg(zcash_unstable = "zfuture")] BranchId::ZFuture => 0xffff_ffff, } @@ -657,15 +679,17 @@ impl BranchId { BranchId::Canopy => params .activation_height(NetworkUpgrade::Canopy) .map(|lower| (lower, params.activation_height(NetworkUpgrade::Nu5))), - BranchId::Nu5 => params.activation_height(NetworkUpgrade::Nu5).map(|lower| { - #[cfg(zcash_unstable = "zfuture")] - let upper = params.activation_height(NetworkUpgrade::ZFuture); - #[cfg(not(zcash_unstable = "zfuture"))] - let upper = None; - (lower, upper) - }), + BranchId::Nu5 => params + .activation_height(NetworkUpgrade::Nu5) + .map(|lower| (lower, upper_bound(lower, params))), #[cfg(zcash_unstable = "nu6")] - BranchId::Nu6 => None, + BranchId::Nu6 => params + .activation_height(NetworkUpgrade::Nu6) + .map(|lower| (lower, upper_bound(lower, params))), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + BranchId::Nu7 => params + .activation_height(NetworkUpgrade::Nu7) + .map(|lower| (lower, upper_bound(lower, params))), #[cfg(zcash_unstable = "zfuture")] BranchId::ZFuture => params .activation_height(NetworkUpgrade::ZFuture) @@ -677,6 +701,33 @@ impl BranchId { !matches!(self, BranchId::Sprout | BranchId::Overwinter) } } +#[allow(unused_variables)] +fn upper_bound(target_height: BlockHeight, params: &P) -> Option { + #[allow(unused_mut)] + let mut upper = None; + #[cfg(zcash_unstable = "nu6")] + { + upper = params + .activation_height(NetworkUpgrade::Nu6) + .filter(|&nu_height| nu_height > target_height) + .or(upper); + } + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + { + upper = params + .activation_height(NetworkUpgrade::Nu7) + .filter(|&nu_height| nu_height > target_height) + .or(upper); + } + #[cfg(zcash_unstable = "zfuture")] + { + upper = params + .activation_height(NetworkUpgrade::ZFuture) + .filter(|&nu_height| nu_height > target_height) + .or(upper); + } + upper +} #[cfg(any(test, feature = "test-dependencies"))] pub mod testing { @@ -696,6 +747,8 @@ pub mod testing { BranchId::Nu5, #[cfg(zcash_unstable = "nu6")] BranchId::Nu6, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + BranchId::Nu7, #[cfg(zcash_unstable = "zfuture")] BranchId::ZFuture, ]) @@ -789,9 +842,15 @@ mod tests { BranchId::for_height(&MAIN_NETWORK, BlockHeight(1_687_104)), BranchId::Nu5, ); + #[cfg(zcash_unstable = "nu6")] assert_eq!( - BranchId::for_height(&MAIN_NETWORK, BlockHeight(5_000_000)), - BranchId::Nu5, + BranchId::for_height(&MAIN_NETWORK, BlockHeight(1_687_106)), + BranchId::Nu6, + ); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + assert_eq!( + BranchId::for_height(&MAIN_NETWORK, BlockHeight(1_842_421)), + BranchId::Nu7, ); } } diff --git a/components/zcash_protocol/src/local_consensus.rs b/components/zcash_protocol/src/local_consensus.rs index 5d277cf1be..8cdd7e5286 100644 --- a/components/zcash_protocol/src/local_consensus.rs +++ b/components/zcash_protocol/src/local_consensus.rs @@ -39,6 +39,8 @@ pub struct LocalNetwork { pub nu5: Option, #[cfg(zcash_unstable = "nu6")] pub nu6: Option, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub nu7: Option, #[cfg(zcash_unstable = "zfuture")] pub z_future: Option, } @@ -59,6 +61,8 @@ impl Parameters for LocalNetwork { NetworkUpgrade::Nu5 => self.nu5, #[cfg(zcash_unstable = "nu6")] NetworkUpgrade::Nu6 => self.nu6, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + NetworkUpgrade::Nu7 => self.nu7, #[cfg(zcash_unstable = "zfuture")] NetworkUpgrade::ZFuture => self.z_future, } @@ -83,6 +87,8 @@ mod tests { let expected_nu5 = BlockHeight::from_u32(6); #[cfg(zcash_unstable = "nu6")] let expected_nu6 = BlockHeight::from_u32(7); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + let expected_nu7 = BlockHeight::from_u32(8); #[cfg(zcash_unstable = "zfuture")] let expected_z_future = BlockHeight::from_u32(7); @@ -95,6 +101,8 @@ mod tests { nu5: Some(expected_nu5), #[cfg(zcash_unstable = "nu6")] nu6: Some(expected_nu6), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + nu7: Some(expected_nu7), #[cfg(zcash_unstable = "zfuture")] z_future: Some(expected_z_future), }; @@ -107,6 +115,8 @@ mod tests { assert!(regtest.is_nu_active(NetworkUpgrade::Nu5, expected_nu5)); #[cfg(zcash_unstable = "nu6")] assert!(regtest.is_nu_active(NetworkUpgrade::Nu6, expected_nu6)); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + assert!(regtest.is_nu_active(NetworkUpgrade::Nu7, expected_nu7)); #[cfg(zcash_unstable = "zfuture")] assert!(!regtest.is_nu_active(NetworkUpgrade::ZFuture, expected_nu5)); } @@ -121,6 +131,8 @@ mod tests { let expected_nu5 = BlockHeight::from_u32(6); #[cfg(zcash_unstable = "nu6")] let expected_nu6 = BlockHeight::from_u32(7); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + let expected_nu7 = BlockHeight::from_u32(8); #[cfg(zcash_unstable = "zfuture")] let expected_z_future = BlockHeight::from_u32(7); @@ -133,6 +145,8 @@ mod tests { nu5: Some(expected_nu5), #[cfg(zcash_unstable = "nu6")] nu6: Some(expected_nu6), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + nu7: Some(expected_nu7), #[cfg(zcash_unstable = "zfuture")] z_future: Some(expected_z_future), }; @@ -161,6 +175,16 @@ mod tests { regtest.activation_height(NetworkUpgrade::Nu5), Some(expected_nu5) ); + #[cfg(zcash_unstable = "nu6")] + assert_eq!( + regtest.activation_height(NetworkUpgrade::Nu6), + Some(expected_nu6) + ); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + assert_eq!( + regtest.activation_height(NetworkUpgrade::Nu7), + Some(expected_nu7) + ); #[cfg(zcash_unstable = "zfuture")] assert_eq!( regtest.activation_height(NetworkUpgrade::ZFuture), @@ -178,6 +202,8 @@ mod tests { let expected_nu5 = BlockHeight::from_u32(6); #[cfg(zcash_unstable = "nu6")] let expected_nu6 = BlockHeight::from_u32(7); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + let expected_nu7 = BlockHeight::from_u32(8); #[cfg(zcash_unstable = "zfuture")] let expected_z_future = BlockHeight::from_u32(7); @@ -190,6 +216,8 @@ mod tests { nu5: Some(expected_nu5), #[cfg(zcash_unstable = "nu6")] nu6: Some(expected_nu6), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + nu7: Some(expected_nu7), #[cfg(zcash_unstable = "zfuture")] z_future: Some(expected_z_future), }; diff --git a/supply-chain/config.toml b/supply-chain/config.toml index 5f5146c50c..16334e636b 100644 --- a/supply-chain/config.toml +++ b/supply-chain/config.toml @@ -344,6 +344,10 @@ criteria = "safe-to-run" version = "0.3.21" criteria = "safe-to-deploy" +[[exemptions.half]] +version = "2.2.1" +criteria = "safe-to-deploy" + [[exemptions.hashbrown]] version = "0.14.2" criteria = "safe-to-deploy" diff --git a/zcash_client_backend/src/proto/compact_formats.rs b/zcash_client_backend/src/proto/compact_formats.rs index 44455378f7..334a4c44ba 100644 --- a/zcash_client_backend/src/proto/compact_formats.rs +++ b/zcash_client_backend/src/proto/compact_formats.rs @@ -1,3 +1,4 @@ +// This file is @generated by prost-build. /// Information about the state of the chain as of a given block. #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] diff --git a/zcash_client_backend/src/proto/proposal.rs b/zcash_client_backend/src/proto/proposal.rs index a17b83bf8b..0a664d5cde 100644 --- a/zcash_client_backend/src/proto/proposal.rs +++ b/zcash_client_backend/src/proto/proposal.rs @@ -1,3 +1,4 @@ +// This file is @generated by prost-build. /// A data structure that describes a series of transactions to be created. #[allow(clippy::derive_partial_eq_without_eq)] #[derive(Clone, PartialEq, ::prost::Message)] diff --git a/zcash_client_backend/src/proto/service.rs b/zcash_client_backend/src/proto/service.rs index ccfd3fed7a..03ea1b93ec 100644 --- a/zcash_client_backend/src/proto/service.rs +++ b/zcash_client_backend/src/proto/service.rs @@ -1,3 +1,4 @@ +// This file is @generated by prost-build. /// 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. #[allow(clippy::derive_partial_eq_without_eq)] diff --git a/zcash_client_backend/src/scan.rs b/zcash_client_backend/src/scan.rs index 0eb9abedb5..e7b8fd3be6 100644 --- a/zcash_client_backend/src/scan.rs +++ b/zcash_client_backend/src/scan.rs @@ -9,7 +9,7 @@ use std::sync::{ use memuse::DynamicUsage; use zcash_note_encryption::{ - batch, BatchDomain, Domain, ShieldedOutput, COMPACT_NOTE_SIZE, ENC_CIPHERTEXT_SIZE, + batch, BatchDomain, Domain, ShieldedOutput, }; use zcash_primitives::{block::BlockHash, transaction::TxId}; @@ -58,7 +58,7 @@ pub(crate) trait Decryptor { /// A decryptor of outputs as encoded in transactions. pub(crate) struct FullDecryptor; -impl> Decryptor +impl> Decryptor for FullDecryptor { type Memo = D::Memo; @@ -85,7 +85,7 @@ impl> Decryptor> Decryptor +impl> Decryptor for CompactDecryptor { type Memo = (); diff --git a/zcash_client_backend/src/scanning.rs b/zcash_client_backend/src/scanning.rs index 78db76aefb..d95f321fd1 100644 --- a/zcash_client_backend/src/scanning.rs +++ b/zcash_client_backend/src/scanning.rs @@ -14,7 +14,7 @@ use subtle::{ConditionallySelectable, ConstantTimeEq, CtOption}; use tracing::{debug, trace}; use zcash_keys::keys::UnifiedFullViewingKey; -use zcash_note_encryption::{batch, BatchDomain, Domain, ShieldedOutput, COMPACT_NOTE_SIZE}; +use zcash_note_encryption::{batch, BatchDomain, Domain, ShieldedOutput}; use zcash_primitives::{ consensus::{self, BlockHeight, NetworkUpgrade}, transaction::{components::sapling::zip212_enforcement, TxId}, diff --git a/zcash_client_sqlite/src/testing.rs b/zcash_client_sqlite/src/testing.rs index 89bde533bf..d07a0b214e 100644 --- a/zcash_client_sqlite/src/testing.rs +++ b/zcash_client_sqlite/src/testing.rs @@ -128,7 +128,9 @@ impl TestBuilder<()> { canopy: Some(BlockHeight::from_u32(100_000)), nu5: Some(BlockHeight::from_u32(100_000)), #[cfg(zcash_unstable = "nu6")] - nu6: None, + nu6: Some(BlockHeight::from_u32(100_000)), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + nu7: Some(BlockHeight::from_u32(100_000)), #[cfg(zcash_unstable = "zfuture")] z_future: None, }; diff --git a/zcash_client_sqlite/src/wallet.rs b/zcash_client_sqlite/src/wallet.rs index 5e6540d4f3..6bb626f8b9 100644 --- a/zcash_client_sqlite/src/wallet.rs +++ b/zcash_client_sqlite/src/wallet.rs @@ -1490,6 +1490,10 @@ pub(crate) fn get_transaction( tx_data.sprout_bundle().cloned(), tx_data.sapling_bundle().cloned(), tx_data.orchard_bundle().cloned(), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + tx_data.orchard_zsa_bundle().cloned(), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + tx_data.issue_bundle().cloned(), ) .freeze() .map(|t| (expiry_height, t)) diff --git a/zcash_client_sqlite/src/wallet/init.rs b/zcash_client_sqlite/src/wallet/init.rs index 9fff7e3a3f..9956912b06 100644 --- a/zcash_client_sqlite/src/wallet/init.rs +++ b/zcash_client_sqlite/src/wallet/init.rs @@ -1275,6 +1275,10 @@ mod tests { None, None, None, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + None, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + None, ) .freeze() .unwrap(); diff --git a/zcash_client_sqlite/src/wallet/init/migrations/add_transaction_views.rs b/zcash_client_sqlite/src/wallet/init/migrations/add_transaction_views.rs index a84f99a05b..d843e123cc 100644 --- a/zcash_client_sqlite/src/wallet/init/migrations/add_transaction_views.rs +++ b/zcash_client_sqlite/src/wallet/init/migrations/add_transaction_views.rs @@ -433,6 +433,8 @@ mod tests { None, None, None, + None, + None, ) .freeze() .unwrap(); diff --git a/zcash_extensions/src/transparent/demo.rs b/zcash_extensions/src/transparent/demo.rs index 40389cbb31..302db829d2 100644 --- a/zcash_extensions/src/transparent/demo.rs +++ b/zcash_extensions/src/transparent/demo.rs @@ -513,8 +513,6 @@ mod tests { NetworkUpgrade::Heartwood => Some(BlockHeight::from_u32(903_800)), NetworkUpgrade::Canopy => Some(BlockHeight::from_u32(1_028_500)), NetworkUpgrade::Nu5 => Some(BlockHeight::from_u32(1_200_000)), - #[cfg(zcash_unstable = "nu6")] - NetworkUpgrade::Nu6 => Some(BlockHeight::from_u32(1_300_000)), NetworkUpgrade::ZFuture => Some(BlockHeight::from_u32(1_400_000)), } } diff --git a/zcash_primitives/proptest-regressions/transaction/tests.txt b/zcash_primitives/proptest-regressions/transaction/tests.txt index 341ba3ff3d..e68935ba39 100644 --- a/zcash_primitives/proptest-regressions/transaction/tests.txt +++ b/zcash_primitives/proptest-regressions/transaction/tests.txt @@ -4,3 +4,4 @@ # # It is recommended to check this file in to source control so that # everyone who runs the test benefits from these saved cases. +cc a85a1f084bd4b44515f22fef4711678aa55180e4c03bfe94163c6b9cf8a6fc8d # shrinks to tx = Transaction { txid: TxId("840779607d1a58471976e6b32d2a77ecd2c866331123e4dd5205a38e125e89fd"), data: TransactionData { version: Zsa, consensus_branch_id: V7, lock_time: 0, expiry_height: BlockHeight(369391), transparent_bundle: Some(Bundle { vin: [TxIn { prevout: OutPoint { hash: [198, 158, 76, 77, 88, 207, 96, 22, 34, 192, 107, 60, 27, 105, 176, 247, 196, 188, 221, 50, 57, 63, 167, 88, 239, 88, 71, 52, 86, 88, 183, 87], n: 57 }, script_sig: Script("6a6a63526352636365006a6a6a52ac515200536a5352ac"), sequence: 2777939921 }, TxIn { prevout: OutPoint { hash: [116, 231, 193, 235, 191, 64, 44, 206, 149, 124, 238, 218, 54, 102, 4, 247, 75, 95, 160, 85, 244, 182, 22, 68, 123, 36, 195, 178, 201, 69, 169, 231], n: 16 }, script_sig: Script("51ac655152516353530053516a65526a52520063005363656a656a535200ac53635100536aac52656a6a6363516a6a535300510063516aac6a53ac51536a6300"), sequence: 3555089162 }, TxIn { prevout: OutPoint { hash: [92, 6, 82, 163, 10, 151, 207, 112, 66, 191, 14, 198, 28, 118, 250, 143, 158, 21, 244, 140, 6, 224, 125, 116, 145, 207, 73, 241, 114, 81, 86, 177], n: 51 }, script_sig: Script("535151526a6365526300ac51ac52536a655251ac526a63ac516a6a5153ac536a00630065656a525251"), sequence: 1738290120 }, TxIn { prevout: OutPoint { hash: [110, 182, 112, 156, 175, 157, 161, 200, 188, 15, 41, 143, 226, 23, 159, 92, 139, 250, 51, 231, 125, 10, 66, 28, 63, 106, 150, 72, 117, 185, 77, 139], n: 74 }, script_sig: Script("51006a52acac0000636a63650051536a636352005151516a6300536a00525251656a52636a5363635163006a6a636a63ac6a5263ac51526a636a53006a6a65ac515165526553006300006a6352ac525100525365ac005200656a63516a6300656a655163006a65516a0053536a6a51ac6a52ac6aac53656551656a5151005100acac636a5265515300526a636aac52510000526a6a5100525152006351ac526a65ac6a655363"), sequence: 3318838885 }, TxIn { prevout: OutPoint { hash: [160, 103, 114, 132, 46, 89, 160, 219, 231, 156, 250, 118, 233, 173, 112, 14, 16, 172, 216, 212, 80, 36, 166, 219, 242, 24, 204, 176, 144, 249, 79, 204], n: 18 }, script_sig: Script("5300655353656a63635153535165ac52ac53656a51006a63526aac536353006a6a005352635251635352656aac526563516a536a00530052516365525263ac006a52636a526563000000ac516a5152536565525265520063acac00530051536a516300656a6a6500ac6565656a6a526a6351655200"), sequence: 73569442 }], vout: [TxOut { value: Amount(987672871939945), script_pubkey: Script("00535265005352006551656500ac6aac00525352656352ac51630052536a0053ac65516553") }, TxOut { value: Amount(1940769343347653), script_pubkey: Script("63526551636a5265526a5153006500535152516a005253006a005251525365ac6363515365515165ac5100006a51ac6a65515152006a53ac53526352636a52636aac526a515165") }, TxOut { value: Amount(1095816154710662), script_pubkey: Script("63656a526353636a6351005252ac65ac516a52636a006aac535165516500ac0065515300526300530065520053650053516a6a6563526552636a51515263526a636aac00526a6a635200635365005100515352ac63005165656563006a6a516a635263516551530063006a65ac655252650065536551636a526563516a6300516aac5153650063516300ac6563636a51516a00ac5153516a6565535252ac6a526a630063530051536a6a") }, TxOut { value: Amount(1076508312538104), script_pubkey: Script("00635251006a525165ac6a63ac006500516a515152005151ac65ac636a650000ac00636a6a63515263535265acac520000636363ac6a53530065656563535263ac5163ac656300ac00005365ac656500ac5265ac00655352005253005151ac5351516a00516563ac6a") }, TxOut { value: Amount(1637061040763024), script_pubkey: Script("51005352ac6a5363ac53000051ac6a656a516a6a00ac6a6300ac53006351acac5252ac515352ac51") }, TxOut { value: Amount(8893688897630), script_pubkey: Script("ac00006565536a5252ac52516500515200005100006565525352ac006a63ac6aac516352536a52536a5365ac6a5165655265ac6a51ac006a6565516a00656a5251535300525353520063536a52636a53526a0051acac005353635353656a65636a655165ac5100515353ac656a6aac53ac51ac63655153525265636a0065ac51516a6a52635352ac6a6500005252525165ac6363516553ac526a53656aac51536a63ac52636a63ac00006553526a6aac6a65656563630065655263525151650065656565ac52526a52536565636a5300ac636a536552635251ac516a51650051526351636551ac650051") }], authorization: Authorized }), sprout_bundle: None, sapling_bundle: Some(Bundle { shielded_spends: [SpendDescription(cv = ValueCommitment(ExtendedPoint { u: 0x3969f2f51ff91cc969d79c05ba341370ee7436ede10feb1d90872aeb8adbba4a, v: 0x033e8a810b8347113cec123a15972640c73393b92bb6a07ce7ce58abb17d0e43, z: 0x527e8ec1f6f6cb3a4302279033ab57edde8cd1faebfd9973d78ec5ff40ccd4ef, t1: 0x089b6ab52b6963f0e52aa022e1db69c9f4ac67f521332711a1d036543b0059c5, t2: 0x4804b84cb60e9d67bc9814bd6709e17b9c53b58c2fbdd5a36a1883cf656980ec }), anchor = 0x4e33df44a2918a11dd206bc7500bcb4bfe9ee1a998a6cc9bc96fb4533a1e34fc, nullifier = Nullifier("401afa46a3f59d59cd6252a98f1a1580f3e8eff12195ff5984018a0dc10d50f0"), rk = PublicKey(ExtendedPoint { u: 0x2a8c760d04e17489f8962069351dd328e27ecffce4c8ff64eef2bd3356eab7b1, v: 0x2244fec36d2a1cde6cacf221dc42d8a7af821471c4a1b7b3f2503a7f8e8e986b, z: 0x57b1c3e426ff921b02bf71dc4ed69e19d9d9b87b97848da4e9c4d02ac8ac1188, t1: 0x22151831ef24c1bf1645686069f7b29bd0ac95909f8cdc0575a78e0b309ea072, t2: 0x5b164ed95c9de72fdfeeb6864b0534dc967520042f1e55179da709c74d690d38 }), spend_auth_sig = Signature { rbar: "38b0e1111f1816c6adb3aeedb67f9fe42070e6ca86ec368f2be3b92596bf3635", sbar: "a0a8bc4ce5b9ee7b4e04d964bc1e1d6795304dc0c80e199fcd007bafdfe1ab02" }), SpendDescription(cv = ValueCommitment(ExtendedPoint { u: 0x54e80df854c131557ddaedb48cb8b3033698a0664d18823b650b6a8aff8ceb40, v: 0x2bc998067a58db9e704607dfff5ad7fe2723b2bef7148dd77f7222da6acd8d0c, z: 0x578b7e9b4b249970a38230032a5034a63c31bc2ab120e9f78f5b2ff7d20ed438, t1: 0x1d28a286c05e1ad40132702867af89b197f46311293c1681ba1f1ab1c7cc6f5a, t2: 0x1cc0bcbc239083b7af95ddc4c60fea682b84c928abc021dca019674d896795f8 }), anchor = 0x0bb0c3dc009923fee577da6584856f509be48d0e9459aafe0dd39a4e2d22d3c0, nullifier = Nullifier("e37aa57c3e59299e0c592f835881a5f54cb428bd5906349c518192e6a6227ec9"), rk = PublicKey(ExtendedPoint { u: 0x42329ac756de433185a7a47dee00a2c6942c72302231da68189f2dd5840cbed9, v: 0x06b5c7da8efe8f2f300a10ad431cfb94b6bae922ce95987c4ef2783c7d56eb99, z: 0x57d450e9222300e2a5a60995a4b6a42f680c08a4799f5bd84e7fd280b9d8adc5, t1: 0x0aedd6c4347041a58c67e3a2dc9a484552e84546bb8b2493b33253be06c9bae2, t2: 0x278a9f647a4079e1a0c55ebc7187e6d95bd02063634f35ea02a6935e7e664692 }), spend_auth_sig = Signature { rbar: "626653c781efcfa78c1baff8cdbb8a2b4fc575e30c3b79da17746ff39e6492c6", sbar: "d4811e5484117cdec1c9b453f9cc1030526a196e4b865b1887a27109e6b0720c" }), SpendDescription(cv = ValueCommitment(ExtendedPoint { u: 0x074d5aa67f42df975a345ca61893dfd15504edd47ea7eed11a7da15b5cd16ce6, v: 0x6c7c80b35e6577624e7aeab800922388f40a29756b63a2d98106ed73136b0612, z: 0x6d246c0ace486651a81ed1fa924e5ba403ecc08418435a216624ebc60543839e, t1: 0x30458e091bada48f5a5f5c0b77c61c93ed7a4c568303287c53711ea9533394b7, t2: 0x6c9a9c3e1b1e3357ef6dbcfa1aaab4f8fd472d265796ccabaf656f36af653904 }), anchor = 0x09c27597ecc5bfa1262b3822b26daf20e7c5b0ea6057ccaf7c9d49df70f7029b, nullifier = Nullifier("5b5f08d0a91630c83a7dc76a47bce9bf477fa412fed46a294d893e67bd18dabd"), rk = PublicKey(ExtendedPoint { u: 0x6db374807989519c19af1d068411c378bb37e6becc3320f89f7ec920af429414, v: 0x1e31812466440ec15d1405b220be8187884120e7b1f6764ef669b7e756986d2a, z: 0x197afb6a155ef154c18b228796deb7a89d1f93c32d8af75cd5c965e40f5e8aa0, t1: 0x262a779bc4f76b79cdd694b63375d2f16a4ad0226245f3c16f55d231ad099a0c, t2: 0x0ff949422e1573c1fa3a8a7f1e27db28c8d40fa87b6583ac5ae03be92a3bc47c }), spend_auth_sig = Signature { rbar: "1f31ecf52e25a236f8bed7660d3481324b5f1da5e3467f834dad2c37b5e71da0", sbar: "355cca7ed3e86eca2f64ffb98682e5bb54d3584368a3e835d6549e6f9603580c" }), SpendDescription(cv = ValueCommitment(ExtendedPoint { u: 0x7047ccb877d941da0fb27a976c3ce68269c49a82829ae54388a6698a674714a0, v: 0x502882ba498ece139554ffadd5f31a707b9dc016a3b9154eeba2649885d955a6, z: 0x107b4b2a89d94ca8d884024b022ce0e1c41c351b6a5b83f50f7b8fe1b3df1d5f, t1: 0x0a02fd23787ed9149429bcb74243cd654a319abee687398fd7b5e4037cfadd51, t2: 0x1f695af851503bf80c98910a0e11f6bf0349c5cdf9021b4da0fbc434899f1a52 }), anchor = 0x14665e8886fdc414ca2d3c8403ceea4cdda4b632f7011fef0ff5cb5e6327f42b, nullifier = Nullifier("e8388d95532bbc261835be7e72d70f9940bb43b7aae63dbbdcf6dce8c5b95ee1"), rk = PublicKey(ExtendedPoint { u: 0x5f5f0e513145bd765ff39857a879d398bcff706c9defe8886b8a9ac28d3f4658, v: 0x323988ae7c8bd96e8b06fde94ad290015c22e45e6ad52186f36329c4ec4d09fa, z: 0x439c31f72d93c9c5c1951f113356bd9ff2f2e33536e34dc82781744ab4f751b2, t1: 0x3a78c0c736c312fe5659f3ff48bc2e28490e0ba873bedb43a72380de145a0d9b, t2: 0x05a514994e7d16d2ca02b519cbde3dae9aa61cb62aa15cd1c51e3d09d1049669 }), spend_auth_sig = Signature { rbar: "9f1781f5ca013ced6bcd6841928e90ee31749364718d583d5335ee22e25180ae", sbar: "dd7a0db13d239c99bba6ee355bd712ddf448421ee379a9b2ad3aa49d34e64408" }), SpendDescription(cv = ValueCommitment(ExtendedPoint { u: 0x01246b1a98bf37c83a8873895ccadbf1bf11829e57f07968b34822ee8fe7654f, v: 0x3ff7c462097dff040c1d1ce2f994fdd3f56f0f4da0dfbc189081279eb3ed0911, z: 0x0c8612e3756e82a494bf6bb3895c2abd8665882d52216e46868e62d9dedf3054, t1: 0x7144a13925067adbb8a4adfff957614ef7a5328c613a0c76ad5b56f31ca37c5c, t2: 0x6d156aa06c4fcbae05eb409a86c8432376dbe88458755aa9179230a8fc5aeb01 }), anchor = 0x5e5801f4693af02acfceb606d64e95684ee0ba4b6134bf65afd5eca83f427557, nullifier = Nullifier("4275fa8b013c6e0da1d4afdc22685752ae490726adfc9f0fbc95a5df8f75ebc7"), rk = PublicKey(ExtendedPoint { u: 0x13801ec64fea770225d39ef5e70e768909f0284b00a52722044339e7a299d229, v: 0x4e922d529dadcfdc0941f546fb7373b2d7bd1da1d78e399bfa315b8ed23fc8a9, z: 0x56671bb13a9d667e31b9b2b15b31edc7d22eff2584fd77b85aa004f35ace4f06, t1: 0x32f73e9226ef891905cfae40e861dd8559fe41aeadf97e824821bbe167dcff23, t2: 0x338774aa9b8633174da437b86dcd5d381e79b6e78d54037cbe515436448f77e8 }), spend_auth_sig = Signature { rbar: "bcb1f99c881820bf17b35d702c8b581d62a543cf240a28b9690017ec8a5b44c7", sbar: "322a95c6fe47f4ea52779aee799b531695c0a7f9b589e4813406059a0c92ab0a" })], shielded_outputs: [OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x33a1b5a964be7b875e7b6008304e30afeded6f45b1c1103d1150bd2215cda7f3, v: 0x1c3987dbc04959373be86d16746c9b9438d89a0898b551fdb3706d66cc8facbb, z: 0x3a52037587d2d70789dfa01f106eaa755b2220079b9c832d4b67b6d0eefa815a, t1: 0x22c1715c09dde681f2168d1d8a022c9168705c9282efc81637ed8e1a87346637, t2: 0x2b47aa7a3fb6f77fff42de726b370e00e8e5ad5499c19f9a5b73be86773ed7af }), cmu = ExtractedNoteCommitment(0x2bed605871f7eebf6da3d38804ea5aa7ebae2a18598040571b3b0e5d2beb010c), ephemeral_key = EphemeralKeyBytes([1, 54, 224, 125, 225, 41, 55, 90, 81, 87, 208, 5, 139, 115, 252, 102, 146, 210, 72, 204, 5, 208, 5, 180, 180, 15, 39, 237, 241, 70, 227, 42])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x347253c4272017bd7eb9db2d9672b55a27ce87d6293410a508221487e344245e, v: 0x24fdc33ed9d16501866a07a80d3610cbf5c817e87055a7925606ce17edb3ffdc, z: 0x22ca5119e4c72ede66c4f420899bc4bcf5a7b0744343e1e50346fdb05f7d9eef, t1: 0x11865860065254ddfd45dc2ee24fc489b215f74c68046bf30abc29bc600f3d05, t2: 0x646c44ce083f25dd400779e4593f3596edde6650fd650548a4c20898da1e0aae }), cmu = ExtractedNoteCommitment(0x487d996fa5edc1688b532579a5ba415bad9ad934967f7d37e3c4140a6e89c4f9), ephemeral_key = EphemeralKeyBytes([36, 254, 164, 196, 131, 164, 25, 4, 120, 170, 133, 208, 52, 1, 143, 251, 162, 108, 187, 70, 251, 132, 98, 126, 102, 209, 134, 227, 95, 142, 225, 69])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x141964b3b13b36ed9266cba2730528719e6401d35394d1007fca56f9a9748649, v: 0x14920499cd088107f50895784e635e669ad80093ce271420a9d6648507d45502, z: 0x0c56c0574cdf247e016ac1f38418d0a8adedb8032a61334407caf95a164d960d, t1: 0x2da14d26362674cbba5639abae98763d647e9c3dc806d34e86540ba226de62ac, t2: 0x107fe4350b0064d3ab01d254efc18825ff6d7c67fb1bf69e6151bd330cb29ee0 }), cmu = ExtractedNoteCommitment(0x429f212a0a66185699d7608b16f2f51169ff44805dfa9063c227c8795b4f7639), ephemeral_key = EphemeralKeyBytes([229, 116, 43, 122, 165, 12, 169, 183, 140, 59, 102, 142, 168, 255, 240, 216, 200, 8, 52, 96, 139, 188, 78, 44, 55, 174, 204, 49, 109, 33, 221, 93])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x00cc6586aef173de5b95b882e9d7981311dbe4b27286375c10a120cd103b9fab, v: 0x074ecee690d2614f5dddad2bcf9d2da3369bfe9983aaeb576113e37fa0fd5432, z: 0x29fd5813172b6ff6fe8412aaa8c00bcfa831b116831c4ddbe01e0033763ccdf0, t1: 0x3c25e783636f0f102c9b8aafcba9378bb7c3fb77260fe8317445aa19150ca35e, t2: 0x4c03abcd46318685118e74ff68984fb4bbae5b7d160a056dea1c7c3d174b9c2b }), cmu = ExtractedNoteCommitment(0x2d6f2bcb4de5fb70466908ba48b9e252f8d83fd8c896b7294e5c4c6bcb5dd4a2), ephemeral_key = EphemeralKeyBytes([239, 204, 232, 98, 163, 105, 255, 144, 35, 191, 203, 110, 157, 234, 15, 113, 89, 204, 22, 92, 51, 130, 236, 9, 100, 39, 135, 161, 183, 99, 118, 234])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x5441970aec4e86e0bbcb7857a0d4b4e9b0fb63342550ced1b2a97231db8c9175, v: 0x15dfcfafd3b57abbc4e938d71bd5453bb3c062f864e30934916debf8ff2a3cdc, z: 0x18ad186150aed3d8e7a5642e10c6c54734bcd6ea0a5d2c0a3bf660d4f2064937, t1: 0x2e4c8f7556c05ec08ce10d2192cf3463166f85edde29ef59ed221dc2959f54b7, t2: 0x165585f044da05b7d64032a013d55d72a447da349a076509783c59ded064923f }), cmu = ExtractedNoteCommitment(0x0b7514b795cc6b42eca5b1afb94c313ebc34345ddb8a188ade965a86204c7d3e), ephemeral_key = EphemeralKeyBytes([57, 143, 116, 106, 60, 151, 222, 233, 72, 183, 79, 115, 139, 81, 204, 141, 120, 23, 187, 207, 166, 52, 149, 7, 199, 77, 124, 31, 50, 194, 116, 21])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x0a06e06ff53f4bb781d11a2d4f5fb983940bac1eb3a7711d9e7e573faa663a4e, v: 0x63ea7cc2e232192d43adbc1500e965438a4c94fbe9e94328979e6509e923de01, z: 0x0a033c1ef378ce1761532379727cea39855528946688e1f9d0c9290da90069e9, t1: 0x128698a21d78288a60833737bad238169207498e17e1dc0637fe4767acf673e3, t2: 0x1caa71a247f4f643e81eac377206307181c46ddf522f4836c3d5aad5f2afd52e }), cmu = ExtractedNoteCommitment(0x6f87e7d8a5269895f67fba893c550ae12e2df1158c64cf1854413a448e8b5d8c), ephemeral_key = EphemeralKeyBytes([196, 220, 169, 22, 6, 98, 192, 133, 212, 50, 14, 250, 28, 75, 182, 75, 183, 141, 17, 36, 19, 183, 80, 129, 135, 140, 44, 232, 95, 139, 89, 4])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x44fb27c48e21283a1f70dc892495e0d050062efad93744752bcc2fa36953fd10, v: 0x4858697688b37b258bb037ffd270fe4964be95d6bd28eaa69c6e1a77f529117d, z: 0x1900ef544f17d2ab5f3d9fbf907dcbcdce7d43544cca3a53f95ff34892dd4f26, t1: 0x65063896a113395677a2a44d59c94a2ac18fe81f782d4bca8a20aa4b88fbc3b7, t2: 0x07641436fa8d5fd5c6de71afc2ae951fdc2f845216b3ac366988eabd227594d7 }), cmu = ExtractedNoteCommitment(0x1b068e54f242a37d1fa11306a274e51622e01aa44ff319fd73b15e46d976badd), ephemeral_key = EphemeralKeyBytes([13, 71, 36, 121, 155, 155, 125, 88, 201, 4, 250, 179, 92, 80, 213, 18, 155, 144, 69, 72, 174, 226, 1, 7, 27, 145, 187, 158, 21, 186, 149, 191])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x7166bef5ac833f979cd261e9f519ecab45777a26748cced5d2eb4db47923713d, v: 0x3618e8e75df6e7ae48200af8152d228af73cfaf4ccbb24e120721954cc712811, z: 0x10da1421bc0a0b01893d056e922aec62664c8eb5fc1d9ef5035fddd8dba5ae5f, t1: 0x12e7565296c7596bc97ad4df8cce0a6e94d6b516f0be11ffcd4c50ee73202ac6, t2: 0x174f91a1803dcfd45e26c8bc33d37394f1c83bb65aa2168f04350179d46d3961 }), cmu = ExtractedNoteCommitment(0x19435e85f48812b572e15aaf4a45644a3cd95dd493311a3794831f8deb27f80e), ephemeral_key = EphemeralKeyBytes([140, 131, 93, 37, 30, 3, 54, 9, 133, 60, 17, 179, 162, 147, 51, 205, 63, 160, 135, 216, 248, 206, 248, 72, 202, 132, 194, 240, 15, 14, 191, 218])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x6f5154d0d718ab323e05d8defa271f675a07459c2440aea3916710992997e6f7, v: 0x124c0eb53c700acc438899d3aa93ec3e5aea257a3ac18d3e21b7bf09fb1d946c, z: 0x5cb2109ee9828d563aac60175a26178613f3e279ef2e1f2afbe480bd90e9b1ff, t1: 0x6bf83ad2828459d384aba05adc84100500b5cb976acfec1203c2daf21491c1b3, t2: 0x6571e40dd5f20a629ac9685d5cc3e22fa666af5f934216ac772740668d3b9dc7 }), cmu = ExtractedNoteCommitment(0x25c9dd734d05a8158ed08456b8b523823593d98d07e5947a48dc0985ca10ab56), ephemeral_key = EphemeralKeyBytes([216, 102, 16, 140, 91, 32, 44, 203, 40, 172, 158, 164, 46, 47, 49, 243, 88, 255, 40, 238, 109, 105, 98, 17, 100, 155, 183, 190, 144, 43, 39, 22])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x047a0a276c7855a44991c29155c671a255fd1a218864bc59072ef0bf9d8b4554, v: 0x0b1e2e65bdef498e40872c58d6d0c9a162ee75d271286f8cba30554407b8aea4, z: 0x2e702d879554897568b68cca7165bd6ba75431b19859e5c8026a4e1cc5418317, t1: 0x6eddbb85d9b5acb2a3c0080a97f3d3e6f7290c7bda578806717617d411673c5c, t2: 0x47b3d307106516bf997afec433d2ed1f67fbbb888c300cc7a221e2d0416b366d }), cmu = ExtractedNoteCommitment(0x4d3ddb8b477d2d3f0f810d3ec0fc9cf2d041f224085a2db58fde8eb6547ffff4), ephemeral_key = EphemeralKeyBytes([188, 75, 180, 157, 77, 192, 60, 224, 0, 63, 159, 254, 178, 24, 172, 134, 71, 213, 52, 188, 254, 40, 17, 36, 65, 240, 117, 23, 66, 63, 132, 229])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x66abcc480c924b6c34e1682227817865770c7005d6f8889557b4ca82ee979630, v: 0x01c10bc64117deddf1d65b671b5dcfe924d32a5ff990e126da4657c2eba05613, z: 0x3df3de3fb5aaef0013c2d4ecbbb64f627d6f870fd811369f11e324eb328362d8, t1: 0x0123c93f972e5eb0d411a898c6945cdad760c3d12a95b7915b662abb9ac46e8e, t2: 0x51e96c4920cb5091ad9efec3005967c5100cacddcf83c8bf38345ab3aa60bcb0 }), cmu = ExtractedNoteCommitment(0x3d59af29bbddc8d9d6c934eb339ae8afaafaef96d165d7c417565c4ebfeff2ef), ephemeral_key = EphemeralKeyBytes([185, 247, 186, 199, 146, 38, 202, 207, 65, 98, 161, 188, 229, 70, 44, 102, 242, 70, 83, 227, 234, 179, 55, 42, 181, 169, 55, 44, 167, 0, 216, 226])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x38dc9b70cedd37747f6e358738dbf18bc9df69b52fe36d88748940cb44d047e3, v: 0x5d39f8b4f9842724f7cff351826f8e9fc4cbd68ba484f8d45ffa3a581e746d92, z: 0x2b28b6e9768b5c2c96833b7584adaf31a223321ec62fce2606bac45024053096, t1: 0x598579963ba223c20762bb45d0a09872fe98e114610ce3c8ea63f124d47314d5, t2: 0x445f7dffc79939bc16479eb8dc9cc460a8998a601645005f1961f1cf8c7ba7ef }), cmu = ExtractedNoteCommitment(0x43ea000509911e76ac6f15410cd1c64518bf2c1a9f606f826b130180ba463a6a), ephemeral_key = EphemeralKeyBytes([202, 33, 143, 0, 182, 211, 54, 106, 156, 98, 43, 41, 53, 214, 179, 252, 15, 62, 137, 183, 83, 250, 84, 209, 175, 132, 235, 215, 55, 236, 48, 44])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x1cd26d46bb4c43680876a1c85b05656589e6ad101c8503ad8d46c9c28ff6712f, v: 0x2fd920f24f3ecfc6ebaa9c0f587ce753baf9fcc08cad76ea58d479a469ac56f1, z: 0x6e282c4ec5cc86b4b15fc949ce126b051ceb2dc0acd870bff3f5b7aac3b982dd, t1: 0x4d9d3736ac72c13ca4cb8955e710aefbdf21adc2666cf91b6019538f0578095a, t2: 0x4ddfc0e09fd9cccbf929f8cbfa9451c45123b955ac83f742f496ad090fa80641 }), cmu = ExtractedNoteCommitment(0x16df873edfd99d2edc0f77bd00b31e4957f21ac4cbc7c995f66f2047f75a8465), ephemeral_key = EphemeralKeyBytes([24, 207, 37, 2, 225, 140, 93, 158, 216, 85, 30, 91, 242, 54, 180, 30, 182, 216, 5, 80, 51, 32, 132, 151, 95, 87, 83, 21, 170, 35, 75, 173])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x250caf5bf3298c9ec1b9349cdf35862fa1f153007c023ce30fd887f1f3d31cbe, v: 0x51ae84954c1157bb337d2d9c64a69d1fa4f1f885bba50c40d7550bce4075e92a, z: 0x298e7a4f420045c0ba79212961954333b34a95765197737fe99a4d778cbd6881, t1: 0x21e2a5316133ea315b9c2ed77ea9148cec9b37ddd56d882287fda71cefda797d, t2: 0x5bb8289c0be8b0e9a823ebdbbb8cd489971504e0fe306f8ec303f6409cd19336 }), cmu = ExtractedNoteCommitment(0x3c3169706c8b4b6df125c52c64f954b3537371964fc5a1909fe7ea881229052c), ephemeral_key = EphemeralKeyBytes([93, 190, 51, 126, 18, 66, 57, 53, 39, 125, 153, 199, 215, 137, 31, 136, 53, 255, 211, 210, 156, 104, 185, 238, 197, 85, 67, 90, 120, 65, 219, 189])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x4ad05a1051e244bda076a583f93f36e471245fa46051966c597ab6e9190b3023, v: 0x54726c5c2c0d1ffe5baa5ae3597e076db183148b67e1f8de6bcd7423e66ab229, z: 0x1e664039c0be5d54d035b20b4f7ada264f64fb801eca9a8321f682f07e5b9ce0, t1: 0x2486b3a6c7c8808ef7b5dd87d234d9c05cf4b0878ffd58641461504e780c80e9, t2: 0x0374a2e63704c4833f4210dc473eec1c72583d85524bdfe65f2bcae79378f096 }), cmu = ExtractedNoteCommitment(0x16e83c89746019430dc1f0b9cfb2101c94c316932eb4720929454c168d67256f), ephemeral_key = EphemeralKeyBytes([233, 218, 135, 168, 201, 30, 31, 107, 108, 12, 9, 51, 190, 219, 219, 26, 83, 180, 63, 21, 85, 133, 151, 36, 68, 198, 217, 60, 118, 179, 125, 80])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x5f77cdf511091d2286907b9b7e3980f4bc2f60ba0ca2cc783aae716248e5d849, v: 0x5ad79c280ce714ee8163d45953f76db853d2e94307d9fa4503830fa9d16bf568, z: 0x4d13097b0004856173e1e386de0d4379a8b73f92b85de7d9ec41f715af5a33ac, t1: 0x3aa7695c47dd0c9cc94940d13be9ae7e37b8b95708aaf9b49b1401310e971f71, t2: 0x67d104c24381bfe3575f48f3e16bd123abe681a297225dd2346d8e6f918a49dc }), cmu = ExtractedNoteCommitment(0x32ea1b65b97dd6c9a4863fe14781fa6e0999bcf3d1c280190fed726a28a682e6), ephemeral_key = EphemeralKeyBytes([86, 186, 229, 66, 44, 222, 190, 116, 146, 1, 57, 136, 160, 179, 203, 173, 11, 38, 17, 99, 123, 156, 217, 95, 200, 234, 215, 119, 78, 19, 187, 178])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x7352dde5dc4f1b4516aa4d656965bb591d05b51c700073c25f97a0d36c47d4da, v: 0x30a68659f120cac82eb56ccae95d3536659bb6d344bd1fec5a09b06e8ec17f77, z: 0x09207e2f00a65a497080773d9f47989f1c4cf71f941a86939cb26662deb9dea8, t1: 0x4971c11d54b5d02559909885d4418fd00f9335cd2b94c40e1f38961f9c8edc4b, t2: 0x50b22b8542091ccc4acd7047e4b63d22e7e03d88ff6c8a53585bf607b4ce9644 }), cmu = ExtractedNoteCommitment(0x35776fef9fc3eb5e69ede84bb56a23f42f51f736141a20ccb0e0174a1d1f243a), ephemeral_key = EphemeralKeyBytes([26, 96, 242, 128, 170, 124, 42, 245, 86, 91, 70, 225, 130, 9, 144, 9, 223, 195, 134, 163, 118, 91, 205, 108, 226, 85, 27, 84, 151, 150, 237, 67])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x5a33abf19c19d0b4b491e63bb4a2f3e1a089fcfc50e309906eb1e514cdb25822, v: 0x569819c745978913c607251cd37b30cb9f7365a98f845a3357db3737449211c3, z: 0x61333fef1d5867af6c5b41142646e0e5032a78aff570053ced3fe4dad3a1885e, t1: 0x1216948f8cf157d7d7eee00e185f831f22cd322d7c49ad6b2ed3f787c9fe5bd0, t2: 0x06e364e08c670d72810143a4b98ba0f0ae5cbeff494c993b97a78effbd430f2d }), cmu = ExtractedNoteCommitment(0x0176e70bf45598bfac7fc5ce5d74d0e24bceeeccd7f2ea2a1aad73f67c815940), ephemeral_key = EphemeralKeyBytes([27, 81, 140, 108, 25, 120, 246, 65, 98, 187, 172, 235, 224, 47, 51, 160, 38, 240, 233, 164, 32, 76, 97, 200, 229, 135, 111, 138, 131, 28, 12, 182])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x620c7ad63a0a83f77144ddc5eb8c6df6381b377b7a7a8bff9e70e92bc15a0ef1, v: 0x4652203ac8e009d2ae512f7f87a7ef6dcda35d6b89dc650b98f07ba9cf4f7133, z: 0x3d9ab8ec28c879343db6b353ed01f764150f1f65dcb99edd59ae7b527aa787a6, t1: 0x70200fefa27220776ee6bc3fb7d065d595323e302a92360d7bc45c9da641442b, t2: 0x0bb3c4787eb4f40c73db6057edd6022b8f7cecabe9113fb5df0b155e57036244 }), cmu = ExtractedNoteCommitment(0x4402649fa884631e9eeb2079eb84e666b47634569ba4edd584f3ad96bb60718b), ephemeral_key = EphemeralKeyBytes([149, 50, 203, 61, 233, 194, 188, 255, 163, 65, 77, 239, 157, 130, 85, 80, 18, 166, 69, 110, 253, 142, 75, 53, 200, 219, 56, 52, 220, 30, 70, 29])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x65d109a4b2f3f6d4b07554f561a7030972378c2e04d2e33d669af130792daff2, v: 0x3f265f9d4bf274f2af17069e4a7b568374ad9ecde3a1482a3b81caed0fb5d02e, z: 0x080f08f22e6673e87ea25cd6b211a58ab05e61977f270c4db71dd36d90600dd7, t1: 0x21b99851b33dd1b20a89f63e95655ee16a3cb02d64841fde67977bc0608a4a3c, t2: 0x00fd4e654d9ac387cff4242e15adb76e5c7c053e7954d436fca3e6c3b03a3fb6 }), cmu = ExtractedNoteCommitment(0x24a8083d0b6ad5b313cc636cc2f584f88fe8fe97e66c58fe010a9b050ed67b17), ephemeral_key = EphemeralKeyBytes([133, 60, 66, 193, 202, 10, 96, 129, 214, 147, 146, 10, 199, 182, 46, 95, 9, 6, 253, 52, 106, 103, 187, 44, 141, 115, 123, 251, 74, 106, 143, 59])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x67105c25d8b7f6855eed0c0bf91d7480dda221c61095b260d77787e397b9338f, v: 0x23842217ce5df95571311b4b9a00e00013660eeaa1caba120a7551aaf11527a7, z: 0x0a918d33015679f7f0d65bfce5896f3d0ae442b62e97741330d679f73b400bc2, t1: 0x72d0bde17897b237d65af1beafbe4a3c6c5021d422b4ee599b140fb6c35f1a18, t2: 0x0d60a76fb8c2b6c182dddb74dbc07868e7f705066b1e2cbddf882d37bba66f90 }), cmu = ExtractedNoteCommitment(0x582b5b7b1c8cd76cbcf43aac7040bf4d5dde852f1135238843eec0d3862ee680), ephemeral_key = EphemeralKeyBytes([184, 218, 90, 68, 9, 117, 82, 122, 34, 92, 184, 181, 231, 54, 186, 36, 40, 51, 168, 34, 14, 162, 135, 171, 199, 202, 166, 178, 0, 107, 76, 76])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x517d6b2e56a224dfca64d6f83693869d16dbb84a5f83096ac4cdc9c68c9c37f2, v: 0x34279802173db9a6bb2a4fb656731aa245e6a80a14cebd4d32c0abac5a6336da, z: 0x50f8ec16f7b33954ea5cc46c468c5c18a7750a4eb64328c6a03cdb9a967547af, t1: 0x2d06222216f46835de876566bf14a1918a11c67a8c25a1c4c9eba2f3b6b292ca, t2: 0x4d4f392fcf7dbdab827c5ab3fdd9ddfeef887c0eb0077eb10b92b60cfabf0478 }), cmu = ExtractedNoteCommitment(0x5c0fd1ee858430af67186bcd33f308e16c87a8a58797975a5a49fb21bd9df530), ephemeral_key = EphemeralKeyBytes([181, 215, 227, 138, 142, 105, 126, 23, 34, 10, 15, 107, 64, 74, 139, 195, 35, 70, 85, 27, 105, 141, 128, 21, 4, 10, 126, 98, 156, 38, 244, 227])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x57eb5bc3b4e75e0537ff5e3c86beea27cfa8d80d3ebd6dff17abacb323ce70ca, v: 0x6ab2ca1a837817df9dbff7bf1116b17d2d91cf1dfb1870686deca092f423f2ad, z: 0x32ce224202647b09af3241378248e093aad5407cb83a923dea482d88051ab62f, t1: 0x5921b600db5b0d34a18bd3533a5f28ae448fa8958d81e4c61e175a15d2a6846e, t2: 0x1d6440b7f4dd68e21369493a91394daf384642d1ea6913092def0435ad0d7961 }), cmu = ExtractedNoteCommitment(0x0663eca2a22e4e7bbc3e3dd93bf48086d1594508b4a3bab6e318d9b31fd5deb8), ephemeral_key = EphemeralKeyBytes([240, 132, 141, 191, 193, 126, 163, 25, 172, 249, 2, 136, 156, 212, 67, 217, 21, 255, 38, 131, 124, 103, 183, 229, 121, 26, 172, 15, 10, 247, 138, 139])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x1715e312839cb2a91c77e5483fe349042550e440f2e92c9bfdadc5810b11d55f, v: 0x20cb8b36d4ecfa358a252fc1dcf886bc41e60fa5d2ed843d1a9076dc7105c100, z: 0x161adacc8d6f6c3ff79b007bcd2b9048325a468ea0e98d0ef4164b620b2d0c0a, t1: 0x070f5ec62dce9a471357b699a956c9400bdb0b509fc8839ed5339ff96b713bf5, t2: 0x0d342217f184e939a9d307441aafd15b201ea207e6d5fbe84a1f7f283f47bebe }), cmu = ExtractedNoteCommitment(0x705d24681a6295f72aa8cfaff157192a0a1cbda5ba8751e68a8e1dd54648878e), ephemeral_key = EphemeralKeyBytes([5, 234, 133, 171, 227, 199, 180, 250, 40, 219, 31, 66, 204, 210, 150, 255, 217, 240, 158, 179, 202, 135, 3, 148, 70, 49, 206, 32, 18, 64, 212, 3])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x03eb41a7d06aca9a0cffeb4ce990766313229c061d263f64a5e1e03604fd10d9, v: 0x24ccc45e85bd1b4fda61cf4070cb9ae77d9571370693202ba74cb3ce6cc12507, z: 0x05d63014b5aab4b55d9b192d5832a3f79bd58f2fc99a42225a36767599f108d5, t1: 0x2b253aff7e98cef107ab3bd4cdcca58fa0fc5de10246a6af3b3ed14a682213fb, t2: 0x45950428ea997ee6fe1b90ea1b708d57c7f5191dde066b0bd47821f96c5c9a78 }), cmu = ExtractedNoteCommitment(0x4d7519491487cb889b51160060248edc973dcccc174bd292c5cc7c2e648915d2), ephemeral_key = EphemeralKeyBytes([165, 92, 124, 93, 77, 67, 101, 56, 82, 25, 188, 219, 209, 30, 238, 32, 86, 140, 158, 231, 249, 11, 100, 134, 141, 65, 223, 100, 182, 78, 96, 46])), OutputDescription(cv = ValueCommitment(ExtendedPoint { u: 0x5523bab49821e9b0016cf483223d366672f57c9146cd18c641f78d02c0fde544, v: 0x0162724a4e36414f2f16dce29a6b2e94ee2d925d7c8e79d654949b446ae0abab, z: 0x4f3553bf7ee84e7c0006e39beb9be60431aa611cca72005ad4a51aa3a76a431d, t1: 0x4310737d791e2cd930cc6f68839d91fc87663a544e988cd0fc08d5da38ab1416, t2: 0x5fddd6bb34ddd4c494555118c2815e03b78164836fb3253bd15ecb1f55150c94 }), cmu = ExtractedNoteCommitment(0x3c38b3d9c41bcc7ddb78cc7286ae1c1cb1a5405b3be1d0233b72d700fc083af6), ephemeral_key = EphemeralKeyBytes([215, 106, 198, 138, 88, 43, 137, 145, 145, 183, 141, 112, 199, 34, 56, 24, 191, 73, 174, 48, 13, 232, 223, 18, 94, 168, 25, 206, 121, 194, 36, 241]))], value_balance: Amount(-1135389017106274), authorization: Authorized { binding_sig: Signature { rbar: "f7336f652e66f5aa5d3a4786a0d265ed79616b9b83cb2d18abc3d8e448f35235", sbar: "a03171dae8154ddae1af64f0d8bb8eb8cdf7f97f2fe8dfa7f40766201b960c08" } } }), orchard_bundle: None, orchard_zsa_bundle: None, issue_bundle: None } } diff --git a/zcash_primitives/src/block.rs b/zcash_primitives/src/block.rs index e24dc1d2d3..18e20a5b87 100644 --- a/zcash_primitives/src/block.rs +++ b/zcash_primitives/src/block.rs @@ -92,7 +92,7 @@ impl BlockHeaderData { } impl BlockHeader { - fn from_data(data: BlockHeaderData) -> io::Result { + pub fn from_data(data: BlockHeaderData) -> io::Result { let mut header = BlockHeader { hash: BlockHash([0; 32]), data, diff --git a/zcash_primitives/src/transaction/builder.rs b/zcash_primitives/src/transaction/builder.rs index 6e43bc4612..aff04785e6 100644 --- a/zcash_primitives/src/transaction/builder.rs +++ b/zcash_primitives/src/transaction/builder.rs @@ -19,7 +19,8 @@ use crate::{ }, transaction::{ components::{ - amount::{Amount, BalanceError}, + amount::{Amount, BalanceError, NonNegativeAmount}, + sapling::zip212_enforcement, transparent::{self, builder::TransparentBuilder, TxOut}, }, fees::FeeRule, @@ -29,13 +30,27 @@ use crate::{ }, }; +use orchard::builder::BundleType; +use orchard::note::AssetBase; +use orchard::orchard_flavor::OrchardVanilla; +use orchard::Address; + #[cfg(feature = "transparent-inputs")] use crate::transaction::components::transparent::builder::TransparentInputInfo; -use orchard::note::AssetBase; #[cfg(not(feature = "transparent-inputs"))] use std::convert::Infallible; +#[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] +use orchard::{ + issuance, + issuance::{IssueBundle, IssueInfo}, + keys::{IssuanceAuthorizingKey, IssuanceValidatingKey}, + orchard_flavor::OrchardZSA, +}; +#[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] +use rand_core::OsRng; + #[cfg(zcash_unstable = "zfuture")] use crate::{ extensions::transparent::{ExtensionTxBuilder, ToPayload}, @@ -48,9 +63,6 @@ use crate::{ }, }; -use super::components::amount::NonNegativeAmount; -use super::components::sapling::zip212_enforcement; - /// Since Blossom activation, the default transaction expiry delta should be 40 blocks. /// const DEFAULT_TX_EXPIRY_DELTA: u32 = 40; @@ -99,7 +111,16 @@ pub enum Error { SaplingBuilderNotAvailable, /// The builder was constructed with a target height before NU5 activation, but an Orchard /// spend or output was added. - OrchardBuilderNotAvailable, + OrchardBundleNotAvailable, + /// The issuance bundle not initialized. + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + IssuanceBuilderNotAvailable, + /// An error occurred in constructing the Issuance bundle. + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + IssuanceBundle(issuance::Error), + /// Issuance bundle already initialized. + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + IssuanceBundleAlreadyInitialized, /// An error occurred in constructing the TZE parts of a transaction. #[cfg(zcash_unstable = "zfuture")] TzeBuild(tze::builder::Error), @@ -129,9 +150,21 @@ impl fmt::Display for Error { f, "Cannot create Sapling transactions without a Sapling anchor" ), - Error::OrchardBuilderNotAvailable => write!( + Error::OrchardBundleNotAvailable => write!( f, - "Cannot create Orchard transactions without an Orchard anchor, or before NU5 activation" + "The builder was constructed with a target height before NU5 activation, but an Orchard spend or output was added" + ), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + Error::IssuanceBuilderNotAvailable => write!( + f, + "Issuance bundle not initialized" + ), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + Error::IssuanceBundle(err) => write!(f, "{:?}", err), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + Error::IssuanceBundleAlreadyInitialized => write!( + f, + "Issuance bundle already initialized" ), #[cfg(zcash_unstable = "zfuture")] Error::TzeBuild(err) => err.fmt(f), @@ -206,6 +239,10 @@ pub enum BuildConfig { sapling_anchor: Option, orchard_anchor: Option, }, + Zsa { + sapling_anchor: Option, + orchard_anchor: Option, + }, Coinbase, } @@ -215,7 +252,8 @@ impl BuildConfig { &self, ) -> Option<(sapling::builder::BundleType, sapling::Anchor)> { match self { - BuildConfig::Standard { sapling_anchor, .. } => sapling_anchor + BuildConfig::Standard { sapling_anchor, .. } + | BuildConfig::Zsa { sapling_anchor, .. } => sapling_anchor .as_ref() .map(|a| (sapling::builder::BundleType::DEFAULT, *a)), BuildConfig::Coinbase => Some(( @@ -226,19 +264,24 @@ impl BuildConfig { } /// Returns the Orchard bundle type and anchor for this configuration. - pub fn orchard_builder_config( - &self, - ) -> Option<(orchard::builder::BundleType, orchard::Anchor)> { + pub fn orchard_builder_config(&self) -> Option<(BundleType, orchard::Anchor)> { match self { BuildConfig::Standard { orchard_anchor, .. } => orchard_anchor .as_ref() - .map(|a| (orchard::builder::BundleType::DEFAULT_VANILLA, *a)), - BuildConfig::Coinbase => Some(( - orchard::builder::BundleType::Coinbase, - orchard::Anchor::empty_tree(), - )), + .map(|a| (BundleType::DEFAULT_VANILLA, *a)), + BuildConfig::Zsa { orchard_anchor, .. } => orchard_anchor + .as_ref() + .map(|a| (BundleType::DEFAULT_ZSA, *a)), + BuildConfig::Coinbase => Some((BundleType::Coinbase, orchard::Anchor::empty_tree())), } } + + pub fn orchard_bundle_type(&self) -> Result> { + let (bundle_type, _) = self + .orchard_builder_config() + .ok_or(Error::OrchardBundleNotAvailable)?; + Ok(bundle_type) + } } /// The result of a transaction build operation, which includes the resulting transaction along @@ -268,6 +311,11 @@ impl BuildResult { pub fn orchard_meta(&self) -> &orchard::builder::BundleMetadata { &self.orchard_meta } + + /// Creates the transaction that was constructed by the builder. + pub fn into_transaction(self) -> Transaction { + self.transaction + } } /// Generates a [`Transaction`] from its inputs and outputs. @@ -279,12 +327,16 @@ pub struct Builder<'a, P, U: sapling::builder::ProverProgress> { transparent_builder: TransparentBuilder, sapling_builder: Option, orchard_builder: Option, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issuance_builder: Option>, // TODO: In the future, instead of taking the spending keys as arguments when calling // `add_sapling_spend` or `add_orchard_spend`, we will build an unauthorized, unproven // transaction, and then the caller will be responsible for using the spending keys or their // derivatives for proving and signing to complete transaction creation. sapling_asks: Vec, orchard_saks: Vec, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issuance_isk: Option, #[cfg(zcash_unstable = "zfuture")] tze_builder: TzeBuilder<'a, TransactionData>, #[cfg(not(zcash_unstable = "zfuture"))] @@ -368,8 +420,12 @@ impl<'a, P: consensus::Parameters> Builder<'a, P, ()> { transparent_builder: TransparentBuilder::empty(), sapling_builder, orchard_builder, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issuance_builder: None, sapling_asks: vec![], orchard_saks: Vec::new(), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issuance_isk: None, #[cfg(zcash_unstable = "zfuture")] tze_builder: TzeBuilder::empty(), #[cfg(not(zcash_unstable = "zfuture"))] @@ -396,12 +452,89 @@ impl<'a, P: consensus::Parameters> Builder<'a, P, ()> { transparent_builder: self.transparent_builder, sapling_builder: self.sapling_builder, orchard_builder: self.orchard_builder, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issuance_builder: self.issuance_builder, sapling_asks: self.sapling_asks, orchard_saks: self.orchard_saks, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issuance_isk: self.issuance_isk, tze_builder: self.tze_builder, progress_notifier, } } + + /// Creates IssuanceBundle and adds an Issuance action to the transaction. + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub fn init_issuance_bundle( + &mut self, + ik: IssuanceAuthorizingKey, + asset_desc: String, + issue_info: Option, + ) -> Result<(), Error> { + assert!(self.build_config.orchard_bundle_type()? == BundleType::DEFAULT_ZSA); + + if self.issuance_builder.is_some() { + return Err(Error::IssuanceBundleAlreadyInitialized); + } + + self.issuance_builder = Some( + IssueBundle::new( + IssuanceValidatingKey::from(&ik), + asset_desc, + issue_info, + OsRng, + ) + .map_err(Error::IssuanceBundle)? + .0, + ); + self.issuance_isk = Some(ik); + + Ok(()) + } + + /// Adds an Issuance action to the transaction. + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub fn add_recipient( + &mut self, + asset_desc: String, + recipient: Address, + value: orchard::value::NoteValue, + ) -> Result<(), Error> { + assert!(self.build_config.orchard_bundle_type()? == BundleType::DEFAULT_ZSA); + self.issuance_builder + .as_mut() + .ok_or(Error::IssuanceBuilderNotAvailable)? + .add_recipient(asset_desc, recipient, value, OsRng) + .map_err(Error::IssuanceBundle)?; + + Ok(()) + } + + /// Finalizes a given asset + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub fn finalize_asset(&mut self, asset_desc: String) -> Result<(), Error> { + assert!(self.build_config.orchard_bundle_type()? == BundleType::DEFAULT_ZSA); + self.issuance_builder + .as_mut() + .ok_or(Error::IssuanceBuilderNotAvailable)? + .finalize_action(asset_desc) + .map_err(Error::IssuanceBundle)?; + + Ok(()) + } + + /// Adds a Burn action to the transaction. + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub fn add_burn(&mut self, value: u64, asset: AssetBase) -> Result<(), Error> { + assert!(self.build_config.orchard_bundle_type()? == BundleType::DEFAULT_ZSA); + self.orchard_builder + .as_mut() + .ok_or(Error::OrchardBundleNotAvailable)? + .add_burn(asset, orchard::value::NoteValue::from_raw(value)) + .map_err(Error::OrchardBuild)?; + + Ok(()) + } } impl<'a, P: consensus::Parameters, U: sapling::builder::ProverProgress> Builder<'a, P, U> { @@ -415,34 +548,43 @@ impl<'a, P: consensus::Parameters, U: sapling::builder::ProverProgress> Builder< note: orchard::Note, merkle_path: orchard::tree::MerklePath, ) -> Result<(), Error> { - if let Some(builder) = self.orchard_builder.as_mut() { - builder.add_spend(orchard::keys::FullViewingKey::from(sk), note, merkle_path)?; + let bundle_type = self.build_config.orchard_bundle_type()?; + if bundle_type == BundleType::DEFAULT_VANILLA { + assert!(bool::from(note.asset().is_native())); + } + self.orchard_builder + .as_mut() + .ok_or(Error::OrchardBundleNotAvailable)? + .add_spend(orchard::keys::FullViewingKey::from(sk), note, merkle_path) + .map_err(Error::OrchardSpend)?; - self.orchard_saks - .push(orchard::keys::SpendAuthorizingKey::from(sk)); + self.orchard_saks + .push(orchard::keys::SpendAuthorizingKey::from(sk)); - Ok(()) - } else { - Err(Error::OrchardBuilderNotAvailable) - } + Ok(()) } /// Adds an Orchard recipient to the transaction. pub fn add_orchard_output( &mut self, ovk: Option, - recipient: orchard::Address, + recipient: Address, value: u64, + asset: AssetBase, memo: MemoBytes, ) -> Result<(), Error> { + let bundle_type = self.build_config.orchard_bundle_type()?; + if bundle_type == BundleType::DEFAULT_VANILLA { + assert!(bool::from(asset.is_native())); + } self.orchard_builder .as_mut() - .ok_or(Error::OrchardBuilderNotAvailable)? + .ok_or(Error::OrchardBundleNotAvailable)? .add_output( ovk, recipient, orchard::value::NoteValue::from_raw(value), - AssetBase::native(), + asset, Some(*memo.as_array()), ) .map_err(Error::OrchardRecipient) @@ -722,18 +864,32 @@ impl<'a, P: consensus::Parameters, U: sapling::builder::ProverProgress> Builder< None => (None, SaplingMetadata::empty()), }; - let (orchard_bundle, orchard_meta) = match self - .orchard_builder - .and_then(|builder| { - builder + let mut unproven_orchard_bundle = None; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + let mut unproven_orchard_zsa_bundle = None; + let mut orchard_meta = orchard::builder::BundleMetadata::empty(); + + if let Some(builder) = self.orchard_builder { + let bundle_type = self.build_config.orchard_bundle_type()?; + if bundle_type == BundleType::DEFAULT_ZSA { + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + { + let (bundle, meta) = builder + .build(&mut rng) + .map_err(Error::OrchardBuild)? + .unwrap(); + + unproven_orchard_zsa_bundle = Some(bundle); + orchard_meta = meta; + } + } else { + let (bundle, meta) = builder .build(&mut rng) - .map_err(Error::OrchardBuild) - .transpose() - }) - .transpose()? - { - Some((bundle, meta)) => (Some(bundle), meta), - None => (None, orchard::builder::BundleMetadata::empty()), + .map_err(Error::OrchardBuild)? + .unwrap(); + unproven_orchard_bundle = Some(bundle); + orchard_meta = meta; + } }; #[cfg(zcash_unstable = "zfuture")] @@ -747,7 +903,11 @@ impl<'a, P: consensus::Parameters, U: sapling::builder::ProverProgress> Builder< transparent_bundle, sprout_bundle: None, sapling_bundle, - orchard_bundle, + orchard_bundle: unproven_orchard_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle: unproven_orchard_zsa_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle: self.issuance_builder, #[cfg(zcash_unstable = "zfuture")] tze_bundle, }; @@ -795,18 +955,47 @@ impl<'a, P: consensus::Parameters, U: sapling::builder::ProverProgress> Builder< let orchard_bundle = unauthed_tx .orchard_bundle .map(|b| { - b.create_proof(&orchard::circuit::ProvingKey::build(), &mut rng) - .and_then(|b| { - b.apply_signatures( - &mut rng, - *shielded_sig_commitment.as_ref(), - &self.orchard_saks, - ) - }) + b.create_proof( + &orchard::circuit::ProvingKey::build::(), + &mut rng, + ) + .and_then(|b| { + b.apply_signatures( + &mut rng, + *shielded_sig_commitment.as_ref(), + &self.orchard_saks, + ) + }) }) .transpose() .map_err(Error::OrchardBuild)?; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + let orchard_zsa_bundle = unauthed_tx + .orchard_zsa_bundle + .map(|b| { + b.create_proof( + &orchard::circuit::ProvingKey::build::(), + &mut rng, + ) + .and_then(|b| { + b.apply_signatures( + &mut rng, + *shielded_sig_commitment.as_ref(), + &self.orchard_saks, + ) + }) + }) + .transpose() + .map_err(Error::OrchardBuild)?; + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + let issue_bundle = unauthed_tx + .issue_bundle + .map(|b| b.prepare(*shielded_sig_commitment.as_ref())) + .map(|b| b.sign(self.issuance_isk.as_ref().unwrap())) + .map(|b| b.unwrap()); + let authorized_tx = TransactionData { version: unauthed_tx.version, consensus_branch_id: unauthed_tx.consensus_branch_id, @@ -816,6 +1005,10 @@ impl<'a, P: consensus::Parameters, U: sapling::builder::ProverProgress> Builder< sprout_bundle: unauthed_tx.sprout_bundle, sapling_bundle, orchard_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle, #[cfg(zcash_unstable = "zfuture")] tze_bundle, }; @@ -865,10 +1058,6 @@ impl<'a, P: consensus::Parameters, U: sapling::builder::ProverProgress> Extensio #[cfg(any(test, feature = "test-dependencies"))] mod testing { - use rand::RngCore; - use rand_core::CryptoRng; - use std::convert::Infallible; - use super::{BuildResult, Builder, Error}; use crate::{ consensus, @@ -876,13 +1065,36 @@ mod testing { self, prover::mock::{MockOutputProver, MockSpendProver}, }, - transaction::fees::fixed, + transaction::fees::fixed::FeeRule, }; + use rand::RngCore; + use rand_core::CryptoRng; + use std::convert::Infallible; + use zcash_protocol::value::Zatoshis; impl<'a, P: consensus::Parameters, U: sapling::builder::ProverProgress> Builder<'a, P, U> { /// Build the transaction using mocked randomness and proving capabilities. /// DO NOT USE EXCEPT FOR UNIT TESTING. pub fn mock_build(self, rng: R) -> Result> { + #[allow(deprecated)] + self.mock_build_internal(rng, &FeeRule::standard()) + } + + /// Build the transaction using mocked randomness and proving capabilities. + /// DO NOT USE EXCEPT FOR UNIT TESTING. + pub fn mock_build_no_fee( + self, + rng: R, + ) -> Result> { + #[allow(deprecated)] + self.mock_build_internal(rng, &FeeRule::non_standard(Zatoshis::from_u64(0)?)) + } + + fn mock_build_internal( + self, + rng: R, + fee_rule: &FeeRule, + ) -> Result> { struct FakeCryptoRng(R); impl CryptoRng for FakeCryptoRng {} impl RngCore for FakeCryptoRng { @@ -903,12 +1115,11 @@ mod testing { } } - #[allow(deprecated)] self.build( FakeCryptoRng(rng), &MockSpendProver, &MockOutputProver, - &fixed::FeeRule::standard(), + fee_rule, ) } } @@ -936,6 +1147,25 @@ mod tests { use super::{Builder, Error}; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + use { + crate::transaction::fees::zip317::FeeError, + orchard::issuance::IssueInfo, + orchard::keys::{ + FullViewingKey, IssuanceAuthorizingKey, IssuanceValidatingKey, SpendingKey, + }, + orchard::note::AssetBase, + orchard::value::NoteValue, + orchard::Address, + zcash_protocol::consensus::TestNetwork, + zcash_protocol::constants::testnet::COIN_TYPE, + zip32::Scope::External, + }; + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + #[cfg(not(feature = "transparent-inputs"))] + use crate::zip32::AccountId; + #[cfg(zcash_unstable = "zfuture")] #[cfg(feature = "transparent-inputs")] use super::TzeBuilder; @@ -977,8 +1207,12 @@ mod tests { tze_builder: std::marker::PhantomData, progress_notifier: (), orchard_builder: None, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issuance_builder: None, sapling_asks: vec![], orchard_saks: Vec::new(), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issuance_isk: None, }; let tsk = AccountPrivKey::from_seed(&TEST_NETWORK, &[0u8; 32], AccountId::ZERO).unwrap(); @@ -1215,4 +1449,205 @@ mod tests { ); } } + + #[test] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn init_issuance_bundle_with_finalization() { + let (mut builder, iak, _) = prepare_zsa_test(); + + let asset = "asset_desc".to_string(); + + builder + .init_issuance_bundle::(iak, asset.clone(), None) + .unwrap(); + + let tx = builder.mock_build_no_fee(OsRng).unwrap().into_transaction(); + let bundle = tx.issue_bundle().unwrap(); + + assert_eq!(bundle.actions().len(), 1, "There should be only one action"); + let action = bundle.get_action(asset).unwrap(); + assert!(action.is_finalized(), "Action should be finalized"); + assert_eq!(action.notes().len(), 0, "Action should have zero notes"); + } + + #[test] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn init_issuance_bundle_without_finalization() { + let (mut builder, iak, address) = prepare_zsa_test(); + + let asset = "asset_desc".to_string(); + + builder + .init_issuance_bundle::( + iak, + asset.clone(), + Some(IssueInfo { + recipient: address, + value: NoteValue::from_raw(42), + }), + ) + .unwrap(); + + let binding = builder.mock_build_no_fee(OsRng).unwrap().into_transaction(); + let bundle = binding.issue_bundle().unwrap(); + + assert_eq!(bundle.actions().len(), 1, "There should be only one action"); + let action = bundle.get_action(asset).unwrap(); + assert_eq!( + action.is_finalized(), + false, + "Action should not be finalized" + ); + assert_eq!(action.notes().len(), 1, "Action should have 1 note"); + assert_eq!( + action.notes().first().unwrap().value().inner(), + 42, + "Incorrect note value" + ); + } + + #[test] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn add_issuance_same_asset() { + let (mut builder, iak, address) = prepare_zsa_test(); + + let asset = "asset_desc".to_string(); + + builder + .init_issuance_bundle::( + iak, + asset.clone(), + Some(IssueInfo { + recipient: address, + value: NoteValue::from_raw(42), + }), + ) + .unwrap(); + builder + .add_recipient::(asset.clone(), address, NoteValue::from_raw(21)) + .unwrap(); + + let binding = builder.mock_build_no_fee(OsRng).unwrap().into_transaction(); + let bundle = binding.issue_bundle().unwrap(); + + assert_eq!(bundle.actions().len(), 1, "There should be only one action"); + let action = bundle.get_action(asset).unwrap(); + assert_eq!( + action.is_finalized(), + false, + "Action should not be finalized" + ); + assert_eq!(action.notes().len(), 2, "Action should have 2 notes"); + assert_eq!( + action + .notes() + .iter() + .map(|note| note.value().inner()) + .sum::(), + 42 + 21, + "Incorrect notes sum" + ); + } + + #[test] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn add_issuance_different_asset() { + let (mut builder, iak, address) = prepare_zsa_test(); + + let asset1 = "asset_desc".to_string(); + let asset2 = "asset_desc_2".to_string(); + + builder + .init_issuance_bundle::( + iak, + asset1.clone(), + Some(IssueInfo { + recipient: address, + value: NoteValue::from_raw(42), + }), + ) + .unwrap(); + builder + .add_recipient::(asset2.clone(), address, NoteValue::from_raw(21)) + .unwrap(); + + let binding = builder.mock_build_no_fee(OsRng).unwrap().into_transaction(); + let bundle = binding.issue_bundle().unwrap(); + + assert_eq!(bundle.actions().len(), 2, "There should be 2 actions"); + + let action = bundle.get_action(asset1).unwrap(); + assert_eq!( + action.is_finalized(), + false, + "Action should not be finalized" + ); + assert_eq!(action.notes().len(), 1, "Action should have 1 note"); + assert_eq!( + action + .notes() + .iter() + .map(|note| note.value().inner()) + .sum::(), + 42, + "Incorrect notes sum" + ); + + let action2 = bundle.get_action(asset2).unwrap(); + assert_eq!( + action2.is_finalized(), + false, + "Action should not be finalized" + ); + assert_eq!(action2.notes().len(), 1, "Action should have 1 note"); + assert_eq!( + action2 + .notes() + .iter() + .map(|note| note.value().inner()) + .sum::(), + 21, + "Incorrect notes sum" + ); + } + + #[test] + #[should_panic] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn fails_on_add_burn_without_input() { + let (mut builder, iak, _) = prepare_zsa_test(); + + let asset = "asset_desc".to_string(); + let asset_base = AssetBase::derive(&IssuanceValidatingKey::from(&iak), &asset); + + builder.add_burn::(42, asset_base).unwrap(); + + builder.mock_build_no_fee(OsRng).unwrap(); + } + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn prepare_zsa_test() -> ( + Builder<'static, TestNetwork, ()>, + IssuanceAuthorizingKey, + Address, + ) { + let seed = "0123456789abcdef0123456789abcdef".as_bytes(); + + let iak = IssuanceAuthorizingKey::from_zip32_seed(seed, COIN_TYPE, 0).unwrap(); + let tx_height = TEST_NETWORK.activation_height(NetworkUpgrade::Nu7).unwrap(); + + let build_config = BuildConfig::Zsa { + sapling_anchor: None, + orchard_anchor: Some(orchard::Anchor::empty_tree()), + }; + + let builder = Builder::new(TEST_NETWORK, tx_height, build_config); + + let sk = + SpendingKey::from_zip32_seed(seed, COIN_TYPE, AccountId::try_from(0).unwrap()).unwrap(); + let fvk = FullViewingKey::from(&sk); + let address = fvk.address_at(0u32, External); + + (builder, iak, address) + } } diff --git a/zcash_primitives/src/transaction/components.rs b/zcash_primitives/src/transaction/components.rs index f239b0ba01..697d5cdcfe 100644 --- a/zcash_primitives/src/transaction/components.rs +++ b/zcash_primitives/src/transaction/components.rs @@ -12,6 +12,7 @@ pub mod amount { }; } } +pub mod issuance; pub mod orchard; pub mod sapling; pub mod sprout; diff --git a/zcash_primitives/src/transaction/components/issuance.rs b/zcash_primitives/src/transaction/components/issuance.rs new file mode 100644 index 0000000000..d227be7bb6 --- /dev/null +++ b/zcash_primitives/src/transaction/components/issuance.rs @@ -0,0 +1,195 @@ +use byteorder::{LittleEndian, ReadBytesExt, WriteBytesExt}; +use nonempty::NonEmpty; +use orchard::issuance::{IssueAction, IssueAuth, IssueBundle, Signed}; +use orchard::keys::IssuanceValidatingKey; +use orchard::note::{AssetBase, RandomSeed, Rho}; +use orchard::value::NoteValue; +use orchard::{Address, Note}; +/// Functions for parsing & serialization of the issuance bundle components. +use std::io; +use std::io::{Error, ErrorKind, Read, Write}; +use zcash_encoding::{CompactSize, Vector}; + +/// Reads an [`orchard::Bundle`] from a v6 transaction format. +pub fn read_v6_bundle(mut reader: R) -> io::Result>> { + let actions = Vector::read(&mut reader, |r| read_action(r))?; + + if actions.is_empty() { + Ok(None) + } else { + let ik = read_ik(&mut reader)?; + let authorization = read_authorization(&mut reader)?; + + Ok(Some(IssueBundle::from_parts( + ik, + NonEmpty::from_vec(actions).unwrap(), + authorization, + ))) + } +} + +fn read_ik(mut reader: R) -> io::Result { + let mut bytes = [0u8; 32]; + reader.read_exact(&mut bytes)?; + IssuanceValidatingKey::from_bytes(&bytes).ok_or(Error::new( + ErrorKind::InvalidData, + "Invalid Pallas point for IssuanceValidatingKey", + )) +} + +fn read_authorization(mut reader: R) -> io::Result { + let mut bytes = [0u8; 64]; + reader.read_exact(&mut bytes).map_err(|_| { + Error::new( + ErrorKind::InvalidData, + "Invalid signature for IssuanceAuthorization", + ) + })?; + Ok(Signed::from_data(bytes)) +} + +fn read_action(mut reader: R) -> io::Result { + let asset_descr_bytes = Vector::read(&mut reader, |r| r.read_u8())?; + //TODO: Properly handle non-valid UTF-8 encodings. + let asset_descr: String = String::from_utf8(asset_descr_bytes) + .map_err(|_| Error::new(ErrorKind::InvalidData, "Asset Description not valid UTF-8"))?; + let notes = Vector::read(&mut reader, |r| read_note(r))?; + let finalize = match reader.read_u8()? { + 0 => false, + 1 => true, + _ => { + return Err(Error::new( + ErrorKind::InvalidData, + "Invalid value for finalize", + )) + } + }; + Ok(IssueAction::from_parts(asset_descr, notes, finalize)) +} + +pub fn read_note(mut reader: R) -> io::Result { + let recipient = read_recipient(&mut reader)?; + let value = reader.read_u64::()?; + let asset = read_asset(&mut reader)?; + let rho = read_rho(&mut reader)?; + let rseed = read_rseed(&mut reader, &rho)?; + Option::from(Note::from_parts( + recipient, + NoteValue::from_raw(value), + asset, + rho, + rseed, + )) + .ok_or(Error::new(ErrorKind::InvalidData, "Invalid note")) +} + +fn read_rho(mut reader: R) -> io::Result { + let mut bytes = [0u8; 32]; + reader.read_exact(&mut bytes)?; + Option::from(Rho::from_bytes(&bytes)).ok_or(Error::new( + ErrorKind::InvalidData, + "invalid Pallas point for rho", + )) +} + +fn read_recipient(mut reader: R) -> io::Result
{ + let mut bytes = [0u8; 43]; + reader.read_exact(&mut bytes)?; + Option::from(Address::from_raw_address_bytes(&bytes)).ok_or(Error::new( + ErrorKind::InvalidData, + "Invalid recipient address", + )) +} + +pub fn read_asset(reader: &mut R) -> io::Result { + let mut bytes = [0u8; 32]; + reader.read_exact(&mut bytes)?; + Option::from(AssetBase::from_bytes(&bytes)) + .ok_or(Error::new(ErrorKind::InvalidData, "Invalid asset")) +} + +fn read_rseed(mut reader: R, nullifier: &Rho) -> io::Result { + let mut bytes = [0u8; 32]; + reader.read_exact(&mut bytes)?; + Option::from(RandomSeed::from_bytes(bytes, nullifier)) + .ok_or(Error::new(ErrorKind::InvalidData, "Invalid rseed")) +} + +/// Writes an [`IssueBundle`] in the v6 transaction format. +pub fn write_v6_bundle( + bundle: Option<&IssueBundle>, + mut writer: W, +) -> io::Result<()> { + if let Some(bundle) = bundle { + Vector::write_nonempty(&mut writer, bundle.actions(), write_action)?; + writer.write_all(&bundle.ik().to_bytes())?; + writer.write_all(&<[u8; 64]>::from(bundle.authorization().signature()))?; + } else { + CompactSize::write(&mut writer, 0)?; + } + Ok(()) +} + +fn write_action(mut writer: &mut W, action: &IssueAction) -> io::Result<()> { + Vector::write(&mut writer, action.asset_desc().as_bytes(), |w, b| { + w.write_u8(*b) + })?; + Vector::write(&mut writer, action.notes(), write_note)?; + writer.write_u8(action.is_finalized() as u8)?; + Ok(()) +} + +pub fn write_note(writer: &mut W, note: &Note) -> io::Result<()> { + writer.write_all(¬e.recipient().to_raw_address_bytes())?; + writer.write_u64::(note.value().inner())?; + writer.write_all(¬e.asset().to_bytes())?; + writer.write_all(¬e.rho().to_bytes())?; + writer.write_all(note.rseed().as_bytes())?; + Ok(()) +} + +pub trait MapIssueAuth { + fn map_issue_authorization(&self, a: A) -> B; +} + +/// The identity map. +/// +/// This can be used with [`TransactionData::map_authorization`] when you want to map the +/// authorization of a subset of the transaction's bundles. +/// +/// [`TransactionData::map_authorization`]: crate::transaction::TransactionData::map_authorization +impl MapIssueAuth for () { + fn map_issue_authorization(&self, a: Signed) -> Signed { + a + } +} + +#[cfg(any(test, feature = "test-dependencies"))] +pub mod testing { + use proptest::prelude::*; + + use orchard::issuance::{ + testing::{self as t_issue}, + IssueBundle, Signed, + }; + + use crate::transaction::TxVersion; + + prop_compose! { + pub fn arb_issue_bundle(n_actions: usize)( + bundle in t_issue::arb_signed_issue_bundle(n_actions) + ) -> IssueBundle { + bundle + } + } + + pub fn arb_bundle_for_version( + v: TxVersion, + ) -> impl Strategy>> { + if v.has_orchard_zsa() { + Strategy::boxed((1usize..100).prop_flat_map(|n| prop::option::of(arb_issue_bundle(n)))) + } else { + Strategy::boxed(Just(None)) + } + } +} diff --git a/zcash_primitives/src/transaction/components/orchard.rs b/zcash_primitives/src/transaction/components/orchard.rs index 180466323c..e9623e68c1 100644 --- a/zcash_primitives/src/transaction/components/orchard.rs +++ b/zcash_primitives/src/transaction/components/orchard.rs @@ -2,16 +2,20 @@ use std::convert::TryFrom; use std::io::{self, Read, Write}; +use crate::transaction::components::issuance::read_asset; use byteorder::{ReadBytesExt, WriteBytesExt}; use nonempty::NonEmpty; use orchard::{ bundle::{Authorization, Authorized, Flags}, - note::{ExtractedNoteCommitment, Nullifier, TransmittedNoteCiphertext}, + note::{AssetBase, ExtractedNoteCommitment, Nullifier, TransmittedNoteCiphertext}, + note_encryption::OrchardDomainCommon, + orchard_flavor::{OrchardVanilla, OrchardZSA}, primitives::redpallas::{self, SigType, Signature, SpendAuth, VerificationKey}, - value::ValueCommitment, + value::{NoteValue, ValueCommitment}, Action, Anchor, }; use zcash_encoding::{Array, CompactSize, Vector}; +use zcash_note_encryption::note_bytes::NoteBytes; use super::Amount; use crate::transaction::Transaction; @@ -44,10 +48,28 @@ impl MapAuth for () { } } -/// Reads an [`orchard::Bundle`] from a v5 transaction format. -pub fn read_v5_bundle( +pub trait ReadBurn { + fn read_burn(reader: &mut R) -> io::Result>; +} + +// OrchardVanilla has no burn to read +impl ReadBurn for OrchardVanilla { + fn read_burn(_reader: &mut R) -> io::Result> { + Ok(Vec::new()) + } +} + +// Read burn for OrchardZSA +impl ReadBurn for OrchardZSA { + fn read_burn(reader: &mut R) -> io::Result> { + Vector::read(reader, |r| read_burn(r)) + } +} + +/// Reads an [`orchard::Bundle`] from a v6 transaction format. +pub fn read_orchard_bundle>( mut reader: R, -) -> io::Result>> { +) -> io::Result>> { #[allow(clippy::redundant_closure)] let actions_without_auth = Vector::read(&mut reader, |r| read_action_without_auth(r))?; if actions_without_auth.is_empty() { @@ -64,24 +86,29 @@ pub fn read_v5_bundle( .collect::, _>>()?, ) .expect("A nonzero number of actions was read from the transaction data."); + + let burn = D::read_burn(&mut reader)?; + let binding_signature = read_signature::<_, redpallas::Binding>(&mut reader)?; - let authorization = orchard::bundle::Authorized::from_parts( - orchard::Proof::new(proof_bytes), - binding_signature, - ); + let authorization = + Authorized::from_parts(orchard::Proof::new(proof_bytes), binding_signature); Ok(Some(orchard::Bundle::from_parts( actions, flags, value_balance, - vec![], // TODO implement "burn" reading and writing + burn, anchor, authorization, ))) } } +fn read_burn(reader: &mut R) -> io::Result<(AssetBase, NoteValue)> { + Ok((read_asset(reader)?, read_note_value(reader)?)) +} + pub fn read_value_commitment(mut reader: R) -> io::Result { let mut bytes = [0u8; 32]; reader.read_exact(&mut bytes)?; @@ -134,21 +161,27 @@ pub fn read_cmx(mut reader: R) -> io::Result { }) } -pub fn read_note_ciphertext(mut reader: R) -> io::Result { - let mut tnc = TransmittedNoteCiphertext { - epk_bytes: [0u8; 32], - enc_ciphertext: [0u8; 612], - out_ciphertext: [0u8; 80], - }; - - reader.read_exact(&mut tnc.epk_bytes)?; - reader.read_exact(&mut tnc.enc_ciphertext)?; - reader.read_exact(&mut tnc.out_ciphertext)?; - - Ok(tnc) +pub fn read_note_ciphertext( + mut reader: R, +) -> io::Result> { + let mut epk = [0; 32]; + let mut enc = vec![0u8; D::ENC_CIPHERTEXT_SIZE]; + let mut out = [0; 80]; + + reader.read_exact(&mut epk)?; + reader.read_exact(&mut enc)?; + reader.read_exact(&mut out)?; + + Ok(TransmittedNoteCiphertext:: { + epk_bytes: epk, + enc_ciphertext: ::NoteCiphertextBytes::from_slice(&enc).unwrap(), + out_ciphertext: out, + }) } -pub fn read_action_without_auth(mut reader: R) -> io::Result> { +pub fn read_action_without_auth( + mut reader: R, +) -> io::Result> { let cv_net = read_value_commitment(&mut reader)?; let nf_old = read_nullifier(&mut reader)?; let rk = read_verification_key(&mut reader)?; @@ -193,9 +226,38 @@ pub fn read_signature(mut reader: R) -> io::Result( - bundle: Option<&orchard::Bundle>, +fn read_note_value(mut reader: R) -> io::Result { + let mut bytes = [0; 8]; + reader.read_exact(&mut bytes)?; + Ok(NoteValue::from_bytes(bytes)) +} + +pub trait WriteBurn { + fn write_burn(writer: &mut W, burn: &[(AssetBase, NoteValue)]) -> io::Result<()>; +} + +// OrchardVanilla has no burn to write +impl WriteBurn for OrchardVanilla { + fn write_burn(_writer: &mut W, _burn: &[(AssetBase, NoteValue)]) -> io::Result<()> { + Ok(()) + } +} + +// Write burn for OrchardZSA +impl WriteBurn for OrchardZSA { + fn write_burn(writer: &mut W, burn: &[(AssetBase, NoteValue)]) -> io::Result<()> { + Vector::write(writer, burn, |w, (asset, amount)| { + w.write_all(&asset.to_bytes())?; + w.write_all(&amount.to_bytes())?; + Ok(()) + })?; + Ok(()) + } +} + +/// Writes an [`orchard::Bundle`] in the appropriate transaction format. +pub fn write_orchard_bundle>( + bundle: Option<&orchard::Bundle>, mut writer: W, ) -> io::Result<()> { if let Some(bundle) = &bundle { @@ -216,6 +278,9 @@ pub fn write_v5_bundle( bundle.actions().iter().map(|a| a.authorization()), |w, auth| w.write_all(&<[u8; 64]>::from(*auth)), )?; + + D::write_burn(&mut writer, bundle.burn())?; + writer.write_all(&<[u8; 64]>::from( bundle.authorization().binding_signature(), ))?; @@ -245,18 +310,18 @@ pub fn write_cmx(mut writer: W, cmx: &ExtractedNoteCommitment) -> io:: writer.write_all(&cmx.to_bytes()) } -pub fn write_note_ciphertext( +pub fn write_note_ciphertext( mut writer: W, - nc: &TransmittedNoteCiphertext, + nc: &TransmittedNoteCiphertext, ) -> io::Result<()> { writer.write_all(&nc.epk_bytes)?; - writer.write_all(&nc.enc_ciphertext)?; + writer.write_all(nc.enc_ciphertext.as_ref())?; writer.write_all(&nc.out_ciphertext) } -pub fn write_action_without_auth( +pub fn write_action_without_auth( mut writer: W, - act: &Action<::SpendAuth>, + act: &Action<::SpendAuth, D>, ) -> io::Result<()> { write_value_commitment(&mut writer, act.cv_net())?; write_nullifier(&mut writer, act.nullifier())?; @@ -270,21 +335,20 @@ pub fn write_action_without_auth( pub mod testing { use proptest::prelude::*; + use crate::transaction::components::amount::testing::arb_amount; + use crate::transaction::components::Amount; + use crate::transaction::TxVersion; use orchard::bundle::{ testing::{self as t_orch}, Authorized, Bundle, }; - - use crate::transaction::{ - components::amount::{testing::arb_amount, Amount}, - TxVersion, - }; + use orchard::orchard_flavor::{OrchardVanilla, OrchardZSA}; prop_compose! { pub fn arb_bundle(n_actions: usize)( orchard_value_balance in arb_amount(), - bundle in t_orch::arb_bundle(n_actions) - ) -> Bundle { + bundle in t_orch::BundleArb::arb_bundle(n_actions) + ) -> Bundle { // overwrite the value balance, as we can't guarantee that the // value doesn't exceed the MAX_MONEY bounds. bundle.try_map_value_balance::<_, (), _>(|_| Ok(orchard_value_balance)).unwrap() @@ -293,11 +357,32 @@ pub mod testing { pub fn arb_bundle_for_version( v: TxVersion, - ) -> impl Strategy>> { + ) -> impl Strategy>> { if v.has_orchard() { Strategy::boxed((1usize..100).prop_flat_map(|n| prop::option::of(arb_bundle(n)))) } else { Strategy::boxed(Just(None)) } } + + prop_compose! { + pub fn arb_zsa_bundle(n_actions: usize)( + orchard_value_balance in arb_amount(), + bundle in t_orch::BundleArb::arb_bundle(n_actions) + ) -> Bundle { + // overwrite the value balance, as we can't guarantee that the + // value doesn't exceed the MAX_MONEY bounds. + bundle.try_map_value_balance::<_, (), _>(|_| Ok(orchard_value_balance)).unwrap() + } + } + + pub fn arb_zsa_bundle_for_version( + v: TxVersion, + ) -> impl Strategy>> { + if v.has_orchard_zsa() { + Strategy::boxed((1usize..100).prop_flat_map(|n| prop::option::of(arb_zsa_bundle(n)))) + } else { + Strategy::boxed(Just(None)) + } + } } diff --git a/zcash_primitives/src/transaction/components/sapling.rs b/zcash_primitives/src/transaction/components/sapling.rs index 62e493865d..1cc593d6f3 100644 --- a/zcash_primitives/src/transaction/components/sapling.rs +++ b/zcash_primitives/src/transaction/components/sapling.rs @@ -1,12 +1,12 @@ use ff::PrimeField; use redjubjub::SpendAuth; -use sapling::note_encryption::Zip212Enforcement; +use sapling::note_encryption::{Zip212Enforcement, ENC_CIPHERTEXT_SIZE}; use zcash_protocol::consensus::{BlockHeight, NetworkUpgrade, Parameters, ZIP212_GRACE_PERIOD}; use std::io::{self, Read, Write}; use zcash_encoding::{Array, CompactSize, Vector}; -use zcash_note_encryption::{EphemeralKeyBytes, ENC_CIPHERTEXT_SIZE, OUT_CIPHERTEXT_SIZE}; +use zcash_note_encryption::{EphemeralKeyBytes, OUT_CIPHERTEXT_SIZE}; use crate::{ sapling::{ @@ -270,7 +270,7 @@ pub(crate) fn write_output_v4( writer.write_all(&output.cv().to_bytes())?; writer.write_all(output.cmu().to_bytes().as_ref())?; writer.write_all(output.ephemeral_key().as_ref())?; - writer.write_all(output.enc_ciphertext())?; + writer.write_all(output.enc_ciphertext().as_ref())?; writer.write_all(output.out_ciphertext())?; writer.write_all(output.zkproof()) } @@ -282,7 +282,7 @@ fn write_output_v5_without_proof( writer.write_all(&output.cv().to_bytes())?; writer.write_all(output.cmu().to_bytes().as_ref())?; writer.write_all(output.ephemeral_key().as_ref())?; - writer.write_all(output.enc_ciphertext())?; + writer.write_all(output.enc_ciphertext().as_ref())?; writer.write_all(output.out_ciphertext()) } diff --git a/zcash_primitives/src/transaction/mod.rs b/zcash_primitives/src/transaction/mod.rs index b7e9943295..6f0bc1c002 100644 --- a/zcash_primitives/src/transaction/mod.rs +++ b/zcash_primitives/src/transaction/mod.rs @@ -14,6 +14,7 @@ mod tests; use blake2b_simd::Hash as Blake2bHash; use byteorder::{LittleEndian, ReadBytesExt, WriteBytesExt}; use memuse::DynamicUsage; +use orchard::{builder::Unproven, orchard_flavor::OrchardVanilla}; use std::convert::TryFrom; use std::fmt; use std::fmt::Debug; @@ -38,6 +39,11 @@ use self::{ util::sha256d::{HashReader, HashWriter}, }; +#[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] +use crate::transaction::components::issuance; +#[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] +use orchard::{issuance::IssueBundle, orchard_flavor::OrchardZSA}; + #[cfg(zcash_unstable = "zfuture")] use self::components::tze::{self, TzeIn, TzeOut}; @@ -49,6 +55,11 @@ const SAPLING_TX_VERSION: u32 = 4; const V5_TX_VERSION: u32 = 5; const V5_VERSION_GROUP_ID: u32 = 0x26A7270A; +#[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] +const V6_TX_VERSION: u32 = 6; +#[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] +const V6_VERSION_GROUP_ID: u32 = 0x124A69F8; // TODO ??? + /// These versions are used exclusively for in-development transaction /// serialization, and will never be active under the consensus rules. /// When new consensus transaction versions are added, all call sites @@ -68,7 +79,7 @@ const ZFUTURE_TX_VERSION: u32 = 0x0000FFFF; /// - For v5 transactions onwards, this identifier is derived only from "effecting" data, /// and is non-malleable in all contexts. #[derive(Clone, Copy, PartialOrd, Ord, PartialEq, Eq, Hash)] -pub struct TxId([u8; 32]); +pub struct TxId(pub [u8; 32]); memuse::impl_no_dynamic_usage!(TxId); @@ -131,6 +142,8 @@ pub enum TxVersion { Overwinter, Sapling, Zip225, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + Zsa, #[cfg(zcash_unstable = "zfuture")] ZFuture, } @@ -146,6 +159,8 @@ impl TxVersion { (OVERWINTER_TX_VERSION, OVERWINTER_VERSION_GROUP_ID) => Ok(TxVersion::Overwinter), (SAPLING_TX_VERSION, SAPLING_VERSION_GROUP_ID) => Ok(TxVersion::Sapling), (V5_TX_VERSION, V5_VERSION_GROUP_ID) => Ok(TxVersion::Zip225), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + (V6_TX_VERSION, V6_VERSION_GROUP_ID) => Ok(TxVersion::Zsa), #[cfg(zcash_unstable = "zfuture")] (ZFUTURE_TX_VERSION, ZFUTURE_VERSION_GROUP_ID) => Ok(TxVersion::ZFuture), _ => Err(io::Error::new( @@ -176,6 +191,8 @@ impl TxVersion { TxVersion::Overwinter => OVERWINTER_TX_VERSION, TxVersion::Sapling => SAPLING_TX_VERSION, TxVersion::Zip225 => V5_TX_VERSION, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => V6_TX_VERSION, #[cfg(zcash_unstable = "zfuture")] TxVersion::ZFuture => ZFUTURE_TX_VERSION, } @@ -187,6 +204,8 @@ impl TxVersion { TxVersion::Overwinter => OVERWINTER_VERSION_GROUP_ID, TxVersion::Sapling => SAPLING_VERSION_GROUP_ID, TxVersion::Zip225 => V5_VERSION_GROUP_ID, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => V6_VERSION_GROUP_ID, #[cfg(zcash_unstable = "zfuture")] TxVersion::ZFuture => ZFUTURE_VERSION_GROUP_ID, } @@ -206,6 +225,8 @@ impl TxVersion { TxVersion::Sprout(v) => *v >= 2u32, TxVersion::Overwinter | TxVersion::Sapling => true, TxVersion::Zip225 => false, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => false, #[cfg(zcash_unstable = "zfuture")] TxVersion::ZFuture => true, } @@ -221,6 +242,8 @@ impl TxVersion { TxVersion::Sprout(_) | TxVersion::Overwinter => false, TxVersion::Sapling => true, TxVersion::Zip225 => true, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => true, #[cfg(zcash_unstable = "zfuture")] TxVersion::ZFuture => true, } @@ -231,11 +254,21 @@ impl TxVersion { match self { TxVersion::Sprout(_) | TxVersion::Overwinter | TxVersion::Sapling => false, TxVersion::Zip225 => true, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => false, #[cfg(zcash_unstable = "zfuture")] TxVersion::ZFuture => true, } } + pub fn has_orchard_zsa(&self) -> bool { + match self { + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => true, + _ => false, + } + } + #[cfg(zcash_unstable = "zfuture")] pub fn has_tze(&self) -> bool { matches!(self, TxVersion::ZFuture) @@ -252,6 +285,8 @@ impl TxVersion { BranchId::Nu5 => TxVersion::Zip225, #[cfg(zcash_unstable = "nu6")] BranchId::Nu6 => TxVersion::Zip225, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + BranchId::Nu7 => TxVersion::Zsa, #[cfg(zcash_unstable = "zfuture")] BranchId::ZFuture => TxVersion::ZFuture, } @@ -264,6 +299,12 @@ pub trait Authorization { type SaplingAuth: sapling::bundle::Authorization; type OrchardAuth: orchard::bundle::Authorization; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type OrchardZsaAuth: orchard::bundle::Authorization; + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type IssueAuth: orchard::issuance::IssueAuth; + #[cfg(zcash_unstable = "zfuture")] type TzeAuth: tze::Authorization; } @@ -277,6 +318,12 @@ impl Authorization for Authorized { type SaplingAuth = sapling::bundle::Authorized; type OrchardAuth = orchard::bundle::Authorized; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type OrchardZsaAuth = orchard::bundle::Authorized; + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type IssueAuth = orchard::issuance::Signed; + #[cfg(zcash_unstable = "zfuture")] type TzeAuth = tze::Authorized; } @@ -292,7 +339,14 @@ impl Authorization for Unauthorized { type SaplingAuth = sapling_builder::InProgress; type OrchardAuth = - orchard::builder::InProgress; + orchard::builder::InProgress, orchard::builder::Unauthorized>; + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type OrchardZsaAuth = + orchard::builder::InProgress, orchard::builder::Unauthorized>; + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type IssueAuth = orchard::issuance::Unauthorized; #[cfg(zcash_unstable = "zfuture")] type TzeAuth = tze::builder::Unauthorized; @@ -329,7 +383,11 @@ pub struct TransactionData { transparent_bundle: Option>, sprout_bundle: Option, sapling_bundle: Option>, - orchard_bundle: Option>, + orchard_bundle: Option>, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle: Option>, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle: Option>, #[cfg(zcash_unstable = "zfuture")] tze_bundle: Option>, } @@ -345,7 +403,13 @@ impl TransactionData { transparent_bundle: Option>, sprout_bundle: Option, sapling_bundle: Option>, - orchard_bundle: Option>, + orchard_bundle: Option>, + #[rustfmt::skip] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle: Option>, + #[rustfmt::skip] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle: Option>, ) -> Self { TransactionData { version, @@ -356,6 +420,10 @@ impl TransactionData { sprout_bundle, sapling_bundle, orchard_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle, #[cfg(zcash_unstable = "zfuture")] tze_bundle: None, } @@ -373,7 +441,7 @@ impl TransactionData { transparent_bundle: Option>, sprout_bundle: Option, sapling_bundle: Option>, - orchard_bundle: Option>, + orchard_bundle: Option>, tze_bundle: Option>, ) -> Self { TransactionData { @@ -419,10 +487,24 @@ impl TransactionData { self.sapling_bundle.as_ref() } - pub fn orchard_bundle(&self) -> Option<&orchard::Bundle> { + pub fn orchard_bundle( + &self, + ) -> Option<&orchard::Bundle> { self.orchard_bundle.as_ref() } + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub fn orchard_zsa_bundle( + &self, + ) -> Option<&orchard::Bundle> { + self.orchard_zsa_bundle.as_ref() + } + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub fn issue_bundle(&self) -> Option<&IssueBundle> { + self.issue_bundle.as_ref() + } + #[cfg(zcash_unstable = "zfuture")] pub fn tze_bundle(&self) -> Option<&tze::Bundle> { self.tze_bundle.as_ref() @@ -468,12 +550,28 @@ impl TransactionData { ), digester.digest_transparent(self.transparent_bundle.as_ref()), digester.digest_sapling(self.sapling_bundle.as_ref()), - digester.digest_orchard(self.orchard_bundle.as_ref()), + self.digest_orchard(&digester), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + digester.digest_issue(self.issue_bundle.as_ref()), #[cfg(zcash_unstable = "zfuture")] digester.digest_tze(self.tze_bundle.as_ref()), ) } + #[cfg(not(zcash_unstable = "nu6" /* TODO nu7 */ ))] + fn digest_orchard>(&self, digester: &D) -> D::OrchardDigest { + digester.digest_orchard(self.orchard_bundle.as_ref()) + } + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn digest_orchard>(&self, digester: &D) -> D::OrchardDigest { + if self.version.has_orchard_zsa() { + digester.digest_orchard_zsa(self.orchard_zsa_bundle.as_ref()) + } else { + digester.digest_orchard(self.orchard_bundle.as_ref()) + } + } + /// Maps the bundles from one type to another. /// /// This shouldn't be necessary for most use cases; it is provided for handling the @@ -487,8 +585,22 @@ impl TransactionData { Option>, ) -> Option>, f_orchard: impl FnOnce( - Option>, - ) -> Option>, + Option>, + ) -> Option< + orchard::bundle::Bundle, + >, + #[rustfmt::skip] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + f_zsa_orchard: impl FnOnce( + Option>, + ) -> Option< + orchard::bundle::Bundle, + >, + #[rustfmt::skip] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + f_issue: impl FnOnce( + Option>, + ) -> Option>, #[cfg(zcash_unstable = "zfuture")] f_tze: impl FnOnce( Option>, ) @@ -503,6 +615,10 @@ impl TransactionData { sprout_bundle: self.sprout_bundle, sapling_bundle: f_sapling(self.sapling_bundle), orchard_bundle: f_orchard(self.orchard_bundle), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle: f_zsa_orchard(self.orchard_zsa_bundle), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle: f_issue(self.issue_bundle), #[cfg(zcash_unstable = "zfuture")] tze_bundle: f_tze(self.tze_bundle), } @@ -513,6 +629,14 @@ impl TransactionData { f_transparent: impl transparent::MapAuth, mut f_sapling: impl sapling_serialization::MapAuth, mut f_orchard: impl orchard_serialization::MapAuth, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + mut f_orchard_zsa: impl orchard_serialization::MapAuth< + A::OrchardZsaAuth, + B::OrchardZsaAuth, + >, + #[rustfmt::skip] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + f_issue: impl issuance::MapIssueAuth, #[cfg(zcash_unstable = "zfuture")] f_tze: impl tze::MapAuth, ) -> TransactionData { TransactionData { @@ -540,6 +664,18 @@ impl TransactionData { |f, a| f.map_authorization(a), ) }), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle: self.orchard_zsa_bundle.map(|b| { + b.map_authorization( + &mut f_orchard_zsa, + |f, _, s| f.map_spend_auth(s), + |f, a| f.map_authorization(a), + ) + }), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle: self + .issue_bundle + .map(|b| b.map_authorization(|a| f_issue.map_issue_authorization(a))), #[cfg(zcash_unstable = "zfuture")] tze_bundle: self.tze_bundle.map(|b| b.map_authorization(f_tze)), } @@ -567,6 +703,8 @@ impl Transaction { Self::from_data_v4(data) } TxVersion::Zip225 => Ok(Self::from_data_v5(data)), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => Ok(Self::from_data_v6(data)), #[cfg(zcash_unstable = "zfuture")] TxVersion::ZFuture => Ok(Self::from_data_v5(data)), } @@ -593,6 +731,12 @@ impl Transaction { Transaction { txid, data } } + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn from_data_v6(data: TransactionData) -> Self { + // We use the same type TransactionData for both v5 and V6 + Self::from_data_v5(data) + } + pub fn into_data(self) -> TransactionData { self.data } @@ -610,6 +754,8 @@ impl Transaction { Self::read_v4(reader, version, consensus_branch_id) } TxVersion::Zip225 => Self::read_v5(reader.into_base_reader(), version), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => Self::read_v6(reader.into_base_reader(), version), #[cfg(zcash_unstable = "zfuture")] TxVersion::ZFuture => Self::read_v5(reader.into_base_reader(), version), } @@ -686,6 +832,10 @@ impl Transaction { ) }), orchard_bundle: None, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle: None, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle: None, #[cfg(zcash_unstable = "zfuture")] tze_bundle: None, }, @@ -720,7 +870,7 @@ impl Transaction { Self::read_v5_header_fragment(&mut reader)?; let transparent_bundle = Self::read_transparent(&mut reader)?; let sapling_bundle = sapling_serialization::read_v5_bundle(&mut reader)?; - let orchard_bundle = orchard_serialization::read_v5_bundle(&mut reader)?; + let orchard_bundle = orchard_serialization::read_orchard_bundle(&mut reader)?; #[cfg(zcash_unstable = "zfuture")] let tze_bundle = if version.has_tze() { @@ -738,6 +888,10 @@ impl Transaction { sprout_bundle: None, sapling_bundle, orchard_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle: None, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle: None, #[cfg(zcash_unstable = "zfuture")] tze_bundle, }; @@ -766,6 +920,40 @@ impl Transaction { sapling_serialization::read_v5_bundle(reader) } + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn read_v6(mut reader: R, version: TxVersion) -> io::Result { + let (consensus_branch_id, lock_time, expiry_height) = + Self::read_v5_header_fragment(&mut reader)?; + let transparent_bundle = Self::read_transparent(&mut reader)?; + let sapling_bundle = sapling_serialization::read_v5_bundle(&mut reader)?; + let orchard_zsa_bundle = orchard_serialization::read_orchard_bundle(&mut reader)?; + let issue_bundle = issuance::read_v6_bundle(&mut reader)?; + + #[cfg(zcash_unstable = "zfuture")] + let tze_bundle = if version.has_tze() { + Self::read_tze(&mut reader)? + } else { + None + }; + + let data = TransactionData { + version, + consensus_branch_id, + lock_time, + expiry_height, + transparent_bundle, + sprout_bundle: None, + sapling_bundle, + orchard_bundle: None, + orchard_zsa_bundle, + issue_bundle, + #[cfg(zcash_unstable = "zfuture")] + tze_bundle, + }; + + Ok(Self::from_data_v6(data)) + } + #[cfg(zcash_unstable = "zfuture")] fn read_tze(mut reader: &mut R) -> io::Result>> { let vin = Vector::read(&mut reader, TzeIn::read)?; @@ -787,6 +975,8 @@ impl Transaction { self.write_v4(writer) } TxVersion::Zip225 => self.write_v5(writer), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => self.write_v6(writer), #[cfg(zcash_unstable = "zfuture")] TxVersion::ZFuture => self.write_v5(writer), } @@ -852,16 +1042,16 @@ impl Transaction { "Sprout components cannot be present when serializing to the V5 transaction format.", )); } - self.write_v5_header(&mut writer)?; + self.write_header(&mut writer)?; self.write_transparent(&mut writer)?; - self.write_v5_sapling(&mut writer)?; - orchard_serialization::write_v5_bundle(self.orchard_bundle.as_ref(), &mut writer)?; + self.write_sapling(&mut writer)?; + orchard_serialization::write_orchard_bundle(self.orchard_bundle.as_ref(), &mut writer)?; #[cfg(zcash_unstable = "zfuture")] self.write_tze(&mut writer)?; Ok(()) } - pub fn write_v5_header(&self, mut writer: W) -> io::Result<()> { + pub fn write_header(&self, mut writer: W) -> io::Result<()> { self.version.write(&mut writer)?; writer.write_u32::(u32::from(self.consensus_branch_id))?; writer.write_u32::(self.lock_time)?; @@ -877,10 +1067,28 @@ impl Transaction { sapling_serialization::write_v5_bundle(writer, sapling_bundle) } - pub fn write_v5_sapling(&self, writer: W) -> io::Result<()> { + pub fn write_sapling(&self, writer: W) -> io::Result<()> { sapling_serialization::write_v5_bundle(writer, self.sapling_bundle.as_ref()) } + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub fn write_v6(&self, mut writer: W) -> io::Result<()> { + if self.sprout_bundle.is_some() { + return Err(io::Error::new( + io::ErrorKind::InvalidInput, + "Sprout components cannot be present when serializing to the V6 transaction format.", + )); + } + self.write_header(&mut writer)?; + self.write_transparent(&mut writer)?; + self.write_sapling(&mut writer)?; + orchard_serialization::write_orchard_bundle(self.orchard_zsa_bundle.as_ref(), &mut writer)?; + issuance::write_v6_bundle(self.issue_bundle.as_ref(), &mut writer)?; + #[cfg(zcash_unstable = "zfuture")] + self.write_tze(&mut writer)?; + Ok(()) + } + #[cfg(zcash_unstable = "zfuture")] pub fn write_tze(&self, mut writer: W) -> io::Result<()> { if let Some(bundle) = &self.tze_bundle { @@ -920,6 +1128,8 @@ pub struct TxDigests { pub transparent_digests: Option>, pub sapling_digest: Option, pub orchard_digest: Option, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + pub issue_digest: Option, #[cfg(zcash_unstable = "zfuture")] pub tze_digests: Option>, } @@ -930,6 +1140,9 @@ pub trait TransactionDigest { type SaplingDigest; type OrchardDigest; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type IssueDigest; + #[cfg(zcash_unstable = "zfuture")] type TzeDigest; @@ -955,9 +1168,18 @@ pub trait TransactionDigest { fn digest_orchard( &self, - orchard_bundle: Option<&orchard::Bundle>, + orchard_bundle: Option<&orchard::Bundle>, ) -> Self::OrchardDigest; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn digest_orchard_zsa( + &self, + orchard_bundle: Option<&orchard::Bundle>, + ) -> Self::OrchardDigest; + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn digest_issue(&self, issue_bundle: Option<&IssueBundle>) -> Self::IssueDigest; + #[cfg(zcash_unstable = "zfuture")] fn digest_tze(&self, tze_bundle: Option<&tze::Bundle>) -> Self::TzeDigest; @@ -967,6 +1189,7 @@ pub trait TransactionDigest { transparent_digest: Self::TransparentDigest, sapling_digest: Self::SaplingDigest, orchard_digest: Self::OrchardDigest, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] issue_digest: Self::IssueDigest, #[cfg(zcash_unstable = "zfuture")] tze_digest: Self::TzeDigest, ) -> Self::Digest; } @@ -977,15 +1200,14 @@ pub enum DigestError { #[cfg(any(test, feature = "test-dependencies"))] pub mod testing { - use proptest::prelude::*; - use crate::consensus::BranchId; + use proptest::prelude::*; use super::{ components::{ - orchard::testing::{self as orchard}, - sapling::testing::{self as sapling}, - transparent::testing::{self as transparent}, + orchard::testing::{self as orchard_testing}, + sapling::testing::{self as sapling_testing}, + transparent::testing::{self as transparent_testing}, }, Authorized, Transaction, TransactionData, TxId, TxVersion, }; @@ -993,6 +1215,8 @@ pub mod testing { #[cfg(zcash_unstable = "zfuture")] use super::components::tze::testing::{self as tze}; + use crate::transaction::components::issuance; + pub fn arb_txid() -> impl Strategy { prop::array::uniform32(any::()).prop_map(TxId::from_bytes) } @@ -1007,6 +1231,8 @@ pub mod testing { BranchId::Nu5 => Just(TxVersion::Zip225).boxed(), #[cfg(zcash_unstable = "nu6")] BranchId::Nu6 => Just(TxVersion::Zip225).boxed(), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + BranchId::Nu7 => Just(TxVersion::Zsa).boxed(), #[cfg(zcash_unstable = "zfuture")] BranchId::ZFuture => Just(TxVersion::ZFuture).boxed(), } @@ -1019,9 +1245,11 @@ pub mod testing { )( lock_time in any::(), expiry_height in any::(), - transparent_bundle in transparent::arb_bundle(), - sapling_bundle in sapling::arb_bundle_for_version(version), - orchard_bundle in orchard::arb_bundle_for_version(version), + transparent_bundle in transparent_testing::arb_bundle(), + sapling_bundle in sapling_testing::arb_bundle_for_version(version), + orchard_bundle in orchard_testing::arb_bundle_for_version(version), + _orchard_zsa_bundle in orchard_testing::arb_zsa_bundle_for_version(version), + _issue_bundle in issuance::testing::arb_bundle_for_version(version), version in Just(version) ) -> TransactionData { TransactionData { @@ -1032,7 +1260,11 @@ pub mod testing { transparent_bundle, sprout_bundle: None, sapling_bundle, - orchard_bundle + orchard_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + orchard_zsa_bundle: _orchard_zsa_bundle, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_bundle: _issue_bundle, } } } @@ -1044,9 +1276,9 @@ pub mod testing { )( lock_time in any::(), expiry_height in any::(), - transparent_bundle in transparent::arb_bundle(), - sapling_bundle in sapling::arb_bundle_for_version(version), - orchard_bundle in orchard::arb_bundle_for_version(version), + transparent_bundle in transparent_testing::arb_bundle(), + sapling_bundle in sapling_testing::arb_bundle_for_version(version), + orchard_bundle in orchard_testing::arb_bundle_for_version(version), tze_bundle in tze::arb_bundle(consensus_branch_id), version in Just(version) ) -> TransactionData { diff --git a/zcash_primitives/src/transaction/sighash.rs b/zcash_primitives/src/transaction/sighash.rs index 4be0a7454b..658c49daf6 100644 --- a/zcash_primitives/src/transaction/sighash.rs +++ b/zcash_primitives/src/transaction/sighash.rs @@ -3,7 +3,7 @@ use blake2b_simd::Hash as Blake2bHash; use super::{ components::{amount::NonNegativeAmount, transparent}, sighash_v4::v4_signature_hash, - sighash_v5::v5_signature_hash, + sighash_v5::v5_v6_signature_hash, Authorization, TransactionData, TxDigests, TxVersion, }; use crate::{ @@ -89,9 +89,12 @@ pub fn signature_hash< v4_signature_hash(tx, signable_input) } - TxVersion::Zip225 => v5_signature_hash(tx, signable_input, txid_parts), + TxVersion::Zip225 => v5_v6_signature_hash(tx, signable_input, txid_parts), + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + TxVersion::Zsa => v5_v6_signature_hash(tx, signable_input, txid_parts), #[cfg(zcash_unstable = "zfuture")] - TxVersion::ZFuture => v5_signature_hash(tx, signable_input, txid_parts), + TxVersion::ZFuture => v5_v6_signature_hash(tx, signable_input, txid_parts), }) } diff --git a/zcash_primitives/src/transaction/sighash_v5.rs b/zcash_primitives/src/transaction/sighash_v5.rs index 60b02b8b75..5cb7eab2c3 100644 --- a/zcash_primitives/src/transaction/sighash_v5.rs +++ b/zcash_primitives/src/transaction/sighash_v5.rs @@ -35,7 +35,7 @@ fn hasher(personal: &[u8; 16]) -> State { } /// Implements [ZIP 244 section S.2](https://zips.z.cash/zip-0244#s-2-transparent-sig-digest). -fn transparent_sig_digest( +pub fn transparent_sig_digest( tx_data: Option<(&transparent::Bundle, &TransparentDigests)>, input: &SignableInput<'_>, ) -> Blake2bHash { @@ -168,7 +168,7 @@ fn tze_input_sigdigests( } /// Implements the [Signature Digest section of ZIP 244](https://zips.z.cash/zip-0244#signature-digest) -pub fn v5_signature_hash< +pub fn v5_v6_signature_hash< TA: TransparentAuthorizingContext, A: Authorization, >( @@ -195,6 +195,8 @@ pub fn v5_signature_hash< ), txid_parts.sapling_digest, txid_parts.orchard_digest, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + txid_parts.issue_digest, #[cfg(zcash_unstable = "zfuture")] tx.tze_bundle .as_ref() diff --git a/zcash_primitives/src/transaction/tests.rs b/zcash_primitives/src/transaction/tests.rs index 6aa63b29c8..14fd491b94 100644 --- a/zcash_primitives/src/transaction/tests.rs +++ b/zcash_primitives/src/transaction/tests.rs @@ -14,7 +14,7 @@ use super::{ SIGHASH_NONE, SIGHASH_SINGLE, }, sighash_v4::v4_signature_hash, - sighash_v5::v5_signature_hash, + sighash_v5::v5_v6_signature_hash, testing::arb_tx, transparent::{self}, txid::TxIdDigester, @@ -56,6 +56,16 @@ fn check_roundtrip(tx: Transaction) -> Result<(), TestCaseError> { tx.orchard_bundle.as_ref().map(|v| *v.value_balance()), txo.orchard_bundle.as_ref().map(|v| *v.value_balance()) ); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + prop_assert_eq!( + tx.orchard_zsa_bundle.as_ref().map(|v| *v.value_balance()), + txo.orchard_zsa_bundle.as_ref().map(|v| *v.value_balance()) + ); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + if tx.issue_bundle.is_some() { + prop_assert_eq!(tx.issue_bundle.as_ref(), txo.issue_bundle.as_ref()); + } + Ok(()) } @@ -120,6 +130,15 @@ proptest! { } } +#[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] +proptest! { + #![proptest_config(ProptestConfig::with_cases(10))] + #[test] + fn tx_serialization_roundtrip_v6(tx in arb_tx(BranchId::Nu7)) { + check_roundtrip(tx)?; + } +} + #[cfg(zcash_unstable = "zfuture")] proptest! { #[test] @@ -202,16 +221,30 @@ impl Authorization for TestUnauthorized { type SaplingAuth = sapling::bundle::Authorized; type OrchardAuth = orchard::bundle::Authorized; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type OrchardZsaAuth = orchard::bundle::Authorized; + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type IssueAuth = orchard::issuance::Signed; + #[cfg(zcash_unstable = "zfuture")] type TzeAuth = tze::Authorized; } +mod data_v6; #[test] fn zip_0244() { fn to_test_txdata( tv: &self::data::zip_0244::TestVector, ) -> (TransactionData, TxDigests) { - let tx = Transaction::read(&tv.tx[..], BranchId::Nu5).unwrap(); + let tx = Transaction::read( + &tv.tx[..], + #[cfg(not(zcash_unstable = "nu6" /* TODO nu7 */ ))] + BranchId::Nu5, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + BranchId::Nu7, + ) + .unwrap(); assert_eq!(tx.txid.as_ref(), &tv.txid); assert_eq!(tx.auth_commitment().as_ref(), &tv.auth_digest); @@ -262,6 +295,10 @@ fn zip_0244() { txdata.sprout_bundle().cloned(), txdata.sapling_bundle().cloned(), txdata.orchard_bundle().cloned(), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + txdata.orchard_zsa_bundle().cloned(), + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + txdata.issue_bundle().cloned(), ); #[cfg(zcash_unstable = "zfuture")] let tdata = TransactionData::from_parts_zfuture( @@ -278,7 +315,12 @@ fn zip_0244() { (tdata, txdata.digest(TxIdDigester)) } - for tv in self::data::zip_0244::make_test_vectors() { + #[allow(unused_mut)] // mutability required for the V6 case which is flagged off by default + let mut test_vectors = self::data::zip_0244::make_test_vectors(); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + test_vectors.extend(data_v6::orchard_zsa_digests::make_test_vectors()); + + for tv in test_vectors { let (txdata, txid_parts) = to_test_txdata(&tv); if let Some(index) = tv.transparent_input { @@ -296,18 +338,18 @@ fn zip_0244() { }; assert_eq!( - v5_signature_hash(&txdata, &signable_input(SIGHASH_ALL), &txid_parts).as_ref(), + v5_v6_signature_hash(&txdata, &signable_input(SIGHASH_ALL), &txid_parts).as_ref(), &tv.sighash_all.unwrap() ); assert_eq!( - v5_signature_hash(&txdata, &signable_input(SIGHASH_NONE), &txid_parts).as_ref(), + v5_v6_signature_hash(&txdata, &signable_input(SIGHASH_NONE), &txid_parts).as_ref(), &tv.sighash_none.unwrap() ); if index < bundle.vout.len() { assert_eq!( - v5_signature_hash(&txdata, &signable_input(SIGHASH_SINGLE), &txid_parts) + v5_v6_signature_hash(&txdata, &signable_input(SIGHASH_SINGLE), &txid_parts) .as_ref(), &tv.sighash_single.unwrap() ); @@ -316,7 +358,7 @@ fn zip_0244() { } assert_eq!( - v5_signature_hash( + v5_v6_signature_hash( &txdata, &signable_input(SIGHASH_ALL | SIGHASH_ANYONECANPAY), &txid_parts, @@ -326,7 +368,7 @@ fn zip_0244() { ); assert_eq!( - v5_signature_hash( + v5_v6_signature_hash( &txdata, &signable_input(SIGHASH_NONE | SIGHASH_ANYONECANPAY), &txid_parts, @@ -337,7 +379,7 @@ fn zip_0244() { if index < bundle.vout.len() { assert_eq!( - v5_signature_hash( + v5_v6_signature_hash( &txdata, &signable_input(SIGHASH_SINGLE | SIGHASH_ANYONECANPAY), &txid_parts, @@ -351,7 +393,7 @@ fn zip_0244() { }; assert_eq!( - v5_signature_hash(&txdata, &SignableInput::Shielded, &txid_parts).as_ref(), + v5_v6_signature_hash(&txdata, &SignableInput::Shielded, &txid_parts).as_ref(), tv.sighash_shielded ); } diff --git a/zcash_primitives/src/transaction/tests/data.rs b/zcash_primitives/src/transaction/tests/data.rs index 0d95e28451..de52a6b567 100644 --- a/zcash_primitives/src/transaction/tests/data.rs +++ b/zcash_primitives/src/transaction/tests/data.rs @@ -5701,8 +5701,8 @@ pub mod zip_0244 { pub sighash_none_anyone: Option<[u8; 32]>, pub sighash_single_anyone: Option<[u8; 32]>, } - // From https://github.com/zcash-hackworks/zcash-test-vectors/ (zip_0244) + // From https://github.com/zcash-hackworks/zcash-test-vectors/blob/master/zip_0244.py pub fn make_test_vectors() -> Vec { vec![ TestVector { @@ -5820,228 +5820,238 @@ pub mod zip_0244 { 0x34, 0xe4, 0xbf, 0x47, 0x86, 0x42, 0xab, 0x96, 0xb1, 0x5d, 0x3b, 0x3e, 0x13, 0xce, 0x23, 0x87, 0xac, 0x84, 0xdc, 0x08, 0x19, 0xe8, 0x12, 0x60, 0xe1, 0x1d, 0x39, 0x2a, 0x5f, 0x06, 0xdb, 0x8b, 0x56, 0x33, 0xde, 0x28, 0x1a, 0x0e, 0x9c, - 0x95, 0x8c, 0x24, 0x06, 0x02, 0x97, 0xf6, 0x08, 0xaf, 0x1d, 0xc5, 0x16, 0x16, - 0x56, 0x2b, 0x1f, 0xff, 0xf6, 0xe2, 0xa2, 0x8b, 0xab, 0x1f, 0x77, 0x72, 0x71, - 0x3a, 0x0a, 0x4b, 0x56, 0xfe, 0x47, 0xfb, 0x5a, 0x7b, 0x73, 0xae, 0xee, 0x53, - 0x45, 0x56, 0x6e, 0xcf, 0x3e, 0x95, 0xe8, 0x25, 0xf9, 0x2e, 0xb4, 0x69, 0xeb, - 0x5d, 0x69, 0x16, 0x42, 0x06, 0xa0, 0xea, 0x1c, 0xe7, 0x3b, 0xfb, 0x2a, 0x94, - 0x2e, 0x73, 0x70, 0x32, 0x14, 0xd2, 0x70, 0xd8, 0x05, 0x34, 0x38, 0x9b, 0x1a, - 0x1e, 0x2b, 0xba, 0x67, 0x48, 0x1e, 0xb3, 0x66, 0x7d, 0x6d, 0x38, 0x25, 0x4a, - 0xc4, 0xb4, 0x45, 0x59, 0xb4, 0x70, 0x8c, 0xdd, 0x12, 0x89, 0x89, 0x72, 0xa8, - 0x95, 0xbf, 0x0f, 0xb0, 0x55, 0xcf, 0x1f, 0xb9, 0xb7, 0x30, 0x29, 0xd6, 0xbf, - 0xb2, 0x7d, 0xa2, 0xb5, 0x29, 0x4f, 0x5c, 0xb3, 0x54, 0xa8, 0x94, 0x32, 0x28, - 0x48, 0xcc, 0x3d, 0x35, 0xb9, 0x55, 0x4a, 0x5f, 0x62, 0xb4, 0x4a, 0x7d, 0xcb, - 0x25, 0x40, 0x6e, 0x5b, 0xa0, 0x78, 0x82, 0xcb, 0x64, 0x73, 0x71, 0x4e, 0x77, - 0xa0, 0x51, 0xa7, 0xdc, 0xd2, 0x9f, 0xea, 0x0a, 0x94, 0x37, 0x85, 0xb3, 0x25, - 0xcd, 0xab, 0x95, 0x40, 0x4f, 0xc7, 0xae, 0xd7, 0x05, 0x25, 0xcd, 0xdb, 0x41, - 0x87, 0x2c, 0xfc, 0xc2, 0x14, 0xb1, 0x32, 0x32, 0xed, 0xc7, 0x86, 0x09, 0x75, - 0x3d, 0xbf, 0xf9, 0x30, 0xeb, 0x0d, 0xc1, 0x56, 0x61, 0x2b, 0x9c, 0xb4, 0x34, - 0xbc, 0x4b, 0x69, 0x33, 0x92, 0xde, 0xb8, 0x7c, 0x53, 0x04, 0x35, 0x31, 0x2e, - 0xdc, 0xed, 0xc6, 0xa9, 0x61, 0x13, 0x33, 0x38, 0xd7, 0x86, 0xc4, 0xa3, 0xe1, - 0x03, 0xf6, 0x01, 0x10, 0xa1, 0x6b, 0x13, 0x37, 0x12, 0x97, 0x04, 0xbf, 0x47, - 0x54, 0xff, 0x6b, 0xa9, 0xfb, 0xe6, 0x59, 0x51, 0xe6, 0x10, 0x62, 0x0f, 0x71, - 0xcd, 0xa8, 0xfc, 0x87, 0x76, 0x25, 0xf2, 0xc5, 0xbb, 0x04, 0xcb, 0xe1, 0x22, - 0x8b, 0x1e, 0x88, 0x6f, 0x40, 0x50, 0xaf, 0xd8, 0xfe, 0x94, 0xe9, 0x7d, 0x2e, - 0x9e, 0x85, 0xc6, 0xbb, 0x74, 0x8c, 0x00, 0x42, 0xd3, 0x24, 0x9a, 0xbb, 0x13, - 0x42, 0xbb, 0x0e, 0xeb, 0xf6, 0x20, 0x58, 0xbf, 0x3d, 0xe0, 0x80, 0xd9, 0x46, - 0x11, 0xa3, 0x75, 0x09, 0x15, 0xb5, 0xdc, 0x6c, 0x0b, 0x38, 0x99, 0xd4, 0x12, - 0x22, 0xba, 0xce, 0x76, 0x0e, 0xe9, 0xc8, 0x81, 0x8d, 0xed, 0x59, 0x9e, 0x34, - 0xc5, 0x6d, 0x73, 0x72, 0xaf, 0x1e, 0xb8, 0x68, 0x52, 0xf2, 0xa7, 0x32, 0x10, - 0x4b, 0xdb, 0x75, 0x07, 0x39, 0xde, 0x6c, 0x2c, 0x6e, 0x0f, 0x9e, 0xb7, 0xcb, - 0x17, 0xf1, 0x94, 0x2b, 0xfc, 0x9f, 0x4f, 0xd6, 0xeb, 0xb6, 0xb4, 0xcd, 0xd4, - 0xda, 0x2b, 0xca, 0x26, 0xfa, 0xc4, 0x57, 0x8e, 0x9f, 0x54, 0x34, 0x05, 0xac, - 0xc7, 0xd8, 0x6f, 0xf5, 0x91, 0x58, 0xbd, 0x0c, 0xba, 0x3a, 0xef, 0x6f, 0x4a, - 0x84, 0x72, 0xd1, 0x44, 0xd9, 0x9f, 0x8b, 0x8d, 0x1d, 0xed, 0xaa, 0x90, 0x77, - 0xd4, 0xf0, 0x1d, 0x4b, 0xb2, 0x7b, 0xbe, 0x31, 0xd8, 0x8f, 0xbe, 0xfa, 0xc3, - 0xdc, 0xd4, 0x79, 0x75, 0x63, 0xa2, 0x6b, 0x1d, 0x61, 0xfc, 0xd9, 0xa4, 0x64, - 0xab, 0x21, 0xed, 0x55, 0x0f, 0xe6, 0xfa, 0x09, 0x69, 0x5b, 0xa0, 0xb2, 0xf1, - 0x0e, 0xea, 0x64, 0x68, 0xcc, 0x6e, 0x20, 0xa6, 0x6f, 0x82, 0x6e, 0x3d, 0x14, - 0xc5, 0x00, 0x6f, 0x05, 0x63, 0x88, 0x7f, 0x5e, 0x12, 0x89, 0xbe, 0x1b, 0x20, - 0x04, 0xca, 0xca, 0x8d, 0x3f, 0x34, 0xd6, 0xe8, 0x4b, 0xf5, 0x9c, 0x1e, 0x04, - 0x61, 0x9a, 0x7c, 0x23, 0xa9, 0x96, 0x94, 0x1d, 0x88, 0x9e, 0x46, 0x22, 0xa9, - 0xb9, 0xb1, 0xd5, 0x9d, 0x5e, 0x31, 0x90, 0x94, 0x31, 0x8c, 0xd4, 0x05, 0xba, - 0x27, 0xb7, 0xe2, 0xc0, 0x84, 0x76, 0x2d, 0x31, 0x45, 0x3e, 0xc4, 0x54, 0x9a, - 0x4d, 0x97, 0x72, 0x9d, 0x03, 0x34, 0x60, 0xfc, 0xf8, 0x9d, 0x64, 0x94, 0xf2, - 0xff, 0xd7, 0x89, 0xe9, 0x80, 0x82, 0xea, 0x5c, 0xe9, 0x53, 0x4b, 0x3a, 0xcd, - 0x60, 0xfe, 0x49, 0xe3, 0x7e, 0x4f, 0x66, 0x69, 0x31, 0x67, 0x73, 0x19, 0xed, - 0x89, 0xf8, 0x55, 0x88, 0x74, 0x1b, 0x31, 0x28, 0x90, 0x1a, 0x93, 0xbd, 0x78, - 0xe4, 0xbe, 0x02, 0x25, 0xa9, 0xe2, 0x69, 0x2c, 0x77, 0xc9, 0x69, 0xed, 0x01, - 0x76, 0xbd, 0xf9, 0x55, 0x59, 0x48, 0xcb, 0xd5, 0xa3, 0x32, 0xd0, 0x45, 0xde, - 0x6b, 0xa6, 0xbf, 0x44, 0x90, 0xad, 0xfe, 0x74, 0x44, 0xcd, 0x46, 0x7a, 0x09, - 0x07, 0x54, 0x17, 0xfc, 0xc0, 0x06, 0x2e, 0x49, 0xf0, 0x08, 0xc5, 0x1a, 0xd4, - 0x22, 0x74, 0x39, 0xc1, 0xb4, 0x47, 0x6c, 0xcd, 0x8e, 0x97, 0x86, 0x2d, 0xab, - 0x7b, 0xe1, 0xe8, 0xd3, 0x99, 0xc0, 0x5e, 0xf2, 0x7c, 0x6e, 0x22, 0xee, 0x27, - 0x3e, 0x15, 0x78, 0x6e, 0x39, 0x4c, 0x8f, 0x1b, 0xe3, 0x16, 0x82, 0xa3, 0x01, - 0x47, 0x96, 0x3a, 0xc8, 0xda, 0x8d, 0x41, 0xd8, 0x04, 0x25, 0x84, 0x26, 0xa3, - 0xf7, 0x02, 0x89, 0xb8, 0xad, 0x19, 0xd8, 0xde, 0x13, 0xbe, 0x4e, 0xeb, 0xe3, - 0xbd, 0x4c, 0x8a, 0x6f, 0x55, 0xd6, 0xe0, 0xc3, 0x73, 0xd4, 0x56, 0x85, 0x18, - 0x79, 0xf5, 0xfb, 0xc2, 0x82, 0xdb, 0x9e, 0x13, 0x48, 0x06, 0xbf, 0xf7, 0x1e, - 0x11, 0xbc, 0x33, 0xab, 0x75, 0xdd, 0x6c, 0xa0, 0x67, 0xfb, 0x73, 0xa0, 0x43, - 0xb6, 0x46, 0xa7, 0xcf, 0x39, 0xca, 0xb4, 0x92, 0x83, 0x86, 0x78, 0x6d, 0x2f, - 0x24, 0x14, 0x1e, 0xe1, 0x20, 0xfd, 0xc3, 0x4d, 0x67, 0x64, 0xea, 0xfc, 0x66, - 0x88, 0x0e, 0xe0, 0x20, 0x4f, 0x53, 0xcc, 0x11, 0x67, 0xed, 0x20, 0xb4, 0x3a, - 0x52, 0xde, 0xa3, 0xca, 0x7c, 0xff, 0x8e, 0xf3, 0x5c, 0xd8, 0xe6, 0xd7, 0xc1, - 0x11, 0xa6, 0x8e, 0xf4, 0x4b, 0xcd, 0x0c, 0x15, 0x13, 0xad, 0x47, 0xca, 0x61, - 0xc6, 0x59, 0xcc, 0x5d, 0x32, 0x5b, 0x44, 0x0f, 0x6b, 0x9f, 0x59, 0xaf, 0xf6, - 0x68, 0x79, 0xbb, 0x66, 0x88, 0xfd, 0x28, 0x59, 0x36, 0x2b, 0x18, 0x2f, 0x20, - 0x7b, 0x31, 0x75, 0x96, 0x1f, 0x64, 0x11, 0xa4, 0x93, 0xbf, 0xfd, 0x04, 0x8e, - 0x7d, 0x0d, 0x87, 0xd8, 0x2f, 0xe6, 0xf9, 0x90, 0xa2, 0xb0, 0xa2, 0x5f, 0x3f, - 0x3c, 0x4f, 0x8b, 0x77, 0xe2, 0x1a, 0xae, 0xbf, 0xc1, 0x17, 0x17, 0x1d, 0x58, - 0xe9, 0xb4, 0xe5, 0x02, 0x36, 0x0d, 0x3d, 0x7b, 0xa5, 0x45, 0x01, 0x19, 0x54, - 0x4e, 0x09, 0xfc, 0x03, 0xa7, 0x22, 0x64, 0x4e, 0x4d, 0x2d, 0x2e, 0x50, 0x10, - 0xb6, 0xfd, 0x09, 0xa2, 0x0e, 0x7e, 0x6f, 0x60, 0x05, 0xab, 0xff, 0x89, 0x94, - 0xbf, 0xa6, 0x05, 0xcf, 0xbc, 0x7e, 0xd7, 0x46, 0xa7, 0xd3, 0x37, 0xc8, 0x10, - 0xea, 0xba, 0x2b, 0x90, 0xf3, 0x53, 0xf2, 0x56, 0x0c, 0x63, 0xa7, 0x96, 0xe8, - 0xaa, 0x4c, 0xb7, 0xc1, 0x82, 0x37, 0xc5, 0x3c, 0x8d, 0xd2, 0x5a, 0x1a, 0x1c, - 0xd8, 0x41, 0x57, 0x12, 0x31, 0x1f, 0xb7, 0x99, 0xc7, 0x9c, 0x64, 0x1d, 0x9d, - 0xa4, 0x3b, 0x33, 0xe7, 0xad, 0x01, 0x2e, 0x28, 0x25, 0x53, 0x98, 0x78, 0x92, - 0x62, 0x27, 0x5f, 0x11, 0x75, 0xbe, 0x84, 0x62, 0xc0, 0x14, 0x25, 0xd4, 0x60, - 0xc6, 0xd3, 0x91, 0x55, 0xd2, 0xff, 0x8e, 0xcb, 0x41, 0x48, 0xfd, 0xc2, 0x32, - 0x9e, 0x53, 0xd0, 0xee, 0x7f, 0x87, 0xb1, 0xf2, 0xce, 0x29, 0x68, 0x5c, 0x48, - 0x7d, 0x17, 0xa7, 0x0b, 0x97, 0xdb, 0xb5, 0x2b, 0xef, 0xb5, 0x9b, 0x1d, 0x30, - 0xa5, 0x74, 0x33, 0xb0, 0xa3, 0x51, 0x47, 0x44, 0x44, 0x09, 0x9d, 0xaa, 0x37, - 0x10, 0x46, 0x61, 0x32, 0x60, 0xcf, 0x33, 0x54, 0xcf, 0xcd, 0xad, 0xa6, 0x63, - 0xec, 0xe8, 0x24, 0xff, 0xd7, 0xe4, 0x43, 0x93, 0x88, 0x6a, 0x86, 0x16, 0x5d, - 0xdd, 0xdf, 0x2b, 0x4c, 0x41, 0x77, 0x35, 0x54, 0xc8, 0x69, 0x95, 0x26, 0x94, - 0x08, 0xb1, 0x1e, 0x67, 0x37, 0xa4, 0xc4, 0x47, 0x58, 0x6f, 0x69, 0x17, 0x34, - 0x46, 0xd8, 0xe4, 0x8b, 0xf8, 0x4c, 0xbc, 0x00, 0x0a, 0x80, 0x78, 0x99, 0x97, - 0x3e, 0xb9, 0x3c, 0x5e, 0x81, 0x9a, 0xad, 0x66, 0x94, 0x13, 0xf8, 0x38, 0x79, - 0x33, 0xad, 0x15, 0x84, 0xaa, 0x35, 0xe4, 0x3f, 0x4e, 0xcd, 0x1e, 0x2d, 0x04, - 0x07, 0xc0, 0xb1, 0xb8, 0x99, 0x20, 0xff, 0xdf, 0xdb, 0x9b, 0xea, 0x51, 0xac, - 0x95, 0xb5, 0x57, 0xaf, 0x71, 0xb8, 0x9f, 0x90, 0x3f, 0x5d, 0x98, 0x48, 0xf1, - 0x4f, 0xcb, 0xeb, 0x18, 0x37, 0x57, 0x0f, 0x54, 0x4d, 0x63, 0x59, 0xeb, 0x23, - 0xfa, 0xf3, 0x8a, 0x08, 0x22, 0xda, 0x36, 0xce, 0x42, 0x6c, 0x4a, 0x2f, 0xbe, - 0xff, 0xeb, 0x0a, 0x8a, 0x2e, 0x29, 0x7a, 0x9d, 0x19, 0xba, 0x15, 0x02, 0x45, - 0x90, 0xe3, 0x32, 0x9d, 0x9f, 0xa9, 0x26, 0x1f, 0x99, 0x38, 0xa4, 0x03, 0x2d, - 0xd3, 0x46, 0x06, 0xc9, 0xcf, 0x9f, 0x3d, 0xd3, 0x3e, 0x57, 0x6f, 0x05, 0xcd, - 0x1d, 0xd6, 0x81, 0x1c, 0x62, 0x98, 0x75, 0x7d, 0x77, 0xd9, 0xe8, 0x10, 0xab, - 0xdb, 0x22, 0x6a, 0xfc, 0xaa, 0x43, 0x46, 0xa6, 0x56, 0x0f, 0x89, 0x32, 0xb3, - 0x18, 0x1f, 0xd3, 0x55, 0xd5, 0xd3, 0x91, 0x97, 0x61, 0x83, 0xf8, 0xd9, 0x93, - 0x88, 0x83, 0x96, 0x32, 0xd6, 0x35, 0x4f, 0x66, 0x6d, 0x09, 0xd3, 0xe5, 0x62, - 0x9e, 0xa1, 0x97, 0x37, 0x38, 0x86, 0x13, 0xd3, 0x8a, 0x34, 0xfd, 0x0f, 0x6e, - 0x50, 0xee, 0x5a, 0x0c, 0xc9, 0x67, 0x71, 0x77, 0xf5, 0x00, 0x28, 0xc1, 0x41, - 0x37, 0x81, 0x87, 0xbd, 0x28, 0x19, 0x40, 0x3f, 0xc5, 0x34, 0xf8, 0x00, 0x76, - 0xe9, 0x38, 0x0c, 0xb4, 0x96, 0x4d, 0x3b, 0x6b, 0x45, 0x81, 0x9d, 0x3b, 0x8e, - 0x9c, 0xaf, 0x54, 0xf0, 0x51, 0x85, 0x2d, 0x67, 0x1b, 0xf8, 0xc1, 0xff, 0xde, - 0x2d, 0x15, 0x10, 0x75, 0x64, 0x18, 0xcb, 0x48, 0x10, 0x93, 0x6a, 0xa5, 0x7e, - 0x69, 0x65, 0xd6, 0xfb, 0x65, 0x6a, 0x76, 0x0b, 0x7f, 0x19, 0xad, 0xf9, 0x6c, - 0x17, 0x34, 0x88, 0x55, 0x21, 0x93, 0xb1, 0x47, 0xee, 0x58, 0x85, 0x80, 0x33, - 0xda, 0xc7, 0xcd, 0x0e, 0xb2, 0x04, 0xc0, 0x64, 0x90, 0xbb, 0xde, 0xdf, 0x5f, - 0x75, 0x71, 0xac, 0xb2, 0xeb, 0xe7, 0x6a, 0xce, 0xf3, 0xf2, 0xa0, 0x1e, 0xe9, - 0x87, 0x48, 0x6d, 0xfe, 0x6c, 0x3f, 0x0a, 0x5e, 0x23, 0x4c, 0x12, 0x72, 0x58, - 0xf9, 0x7a, 0x28, 0xfb, 0x5d, 0x16, 0x4a, 0x81, 0x76, 0xbe, 0x94, 0x6b, 0x80, - 0x97, 0xd0, 0xe3, 0x17, 0x28, 0x7f, 0x33, 0xbf, 0x9c, 0x16, 0xf9, 0xa5, 0x45, - 0x40, 0x9c, 0xe2, 0x9b, 0x1f, 0x42, 0x73, 0x72, 0x5f, 0xc0, 0xdf, 0x02, 0xa0, - 0x4e, 0xba, 0xe1, 0x78, 0xb3, 0x41, 0x4f, 0xb0, 0xa8, 0x2d, 0x50, 0xde, 0xb0, - 0x9f, 0xcf, 0x4e, 0x6e, 0xe9, 0xd1, 0x80, 0xff, 0x4f, 0x56, 0xff, 0x3b, 0xc1, - 0xd3, 0x60, 0x1f, 0xc2, 0xdc, 0x90, 0xd8, 0x14, 0xc3, 0x25, 0x6f, 0x49, 0x67, - 0xd3, 0xa8, 0xd6, 0x4c, 0x83, 0xfe, 0xa3, 0x39, 0xc5, 0x1f, 0x5a, 0x8e, 0x58, - 0x01, 0xfb, 0xb9, 0x78, 0x35, 0x58, 0x1b, 0x60, 0x24, 0x65, 0xde, 0xe0, 0x4b, - 0x59, 0x22, 0xc2, 0x76, 0x1b, 0x54, 0x24, 0x5b, 0xec, 0x0c, 0x9e, 0xef, 0x2d, - 0xb9, 0x7d, 0x22, 0xb2, 0xb3, 0x55, 0x6c, 0xc9, 0x69, 0xfb, 0xb1, 0x3d, 0x06, - 0x50, 0x97, 0x65, 0xa5, 0x2b, 0x3f, 0xac, 0x54, 0xb9, 0x3f, 0x42, 0x1b, 0xf0, - 0x8e, 0x18, 0xd5, 0x2d, 0xdd, 0x52, 0xcc, 0x1c, 0x8c, 0xa8, 0xad, 0xfa, 0xcc, - 0xab, 0x7e, 0x5c, 0xc2, 0xf4, 0x57, 0x3f, 0xbb, 0xf8, 0x23, 0x9b, 0xb0, 0xb8, - 0xae, 0xdb, 0xf8, 0xda, 0xd1, 0x62, 0x82, 0xda, 0x5c, 0x91, 0x25, 0xdb, 0xa1, - 0xc0, 0x59, 0xd0, 0xdf, 0x8a, 0xbf, 0x62, 0x10, 0x78, 0xf0, 0x2d, 0x6c, 0x4b, - 0xc8, 0x6d, 0x40, 0x84, 0x5a, 0xc1, 0xd5, 0x97, 0x10, 0xc4, 0x5f, 0x07, 0xd5, - 0x85, 0xeb, 0x48, 0xb3, 0x2f, 0xc0, 0x16, 0x7b, 0xa2, 0x56, 0xe7, 0x3c, 0xa3, - 0xb9, 0x31, 0x1c, 0x62, 0xd1, 0x09, 0x49, 0x79, 0x57, 0xd8, 0xdb, 0xe1, 0x0a, - 0xa3, 0xe8, 0x66, 0xb4, 0x0c, 0x0b, 0xaa, 0x2b, 0xc4, 0x92, 0xc1, 0x9a, 0xd1, - 0xe6, 0x37, 0x2d, 0x96, 0x22, 0xbf, 0x16, 0x3f, 0xbf, 0xfe, 0xae, 0xee, 0x79, - 0x6a, 0x3c, 0xd9, 0xb6, 0xfb, 0xbf, 0xa4, 0xd7, 0x92, 0xf3, 0x4d, 0x7f, 0xd6, - 0xe7, 0x63, 0xcd, 0x58, 0x59, 0xdd, 0x26, 0x83, 0x3d, 0x21, 0xd9, 0xbc, 0x54, - 0x52, 0xbd, 0x19, 0x51, 0x5d, 0xff, 0x01, 0x6d, 0x0d, 0x4c, 0x07, 0xfb, 0x38, - 0x03, 0x00, 0x19, 0x3b, 0xed, 0xb9, 0xf0, 0x9a, 0x7f, 0x86, 0xcb, 0xbd, 0xf6, - 0x54, 0x18, 0xe0, 0x80, 0x0c, 0x70, 0x89, 0xd0, 0x29, 0xe7, 0xfb, 0xba, 0xf3, - 0xcf, 0x37, 0xe9, 0xb9, 0xa6, 0xb7, 0x76, 0x39, 0x3e, 0x4c, 0x5e, 0x6f, 0xda, - 0x57, 0xe8, 0xd5, 0xf1, 0x4c, 0x8c, 0x35, 0xa2, 0xd2, 0x70, 0x84, 0x6b, 0x9d, - 0xbe, 0x00, 0x5c, 0xda, 0x16, 0xaf, 0x44, 0x08, 0xf3, 0xab, 0x06, 0xa9, 0x16, - 0xee, 0xeb, 0x9c, 0x95, 0x94, 0xb7, 0x04, 0x24, 0xa4, 0xc1, 0xd1, 0x71, 0x29, - 0x5b, 0x67, 0x63, 0xb2, 0x2f, 0x47, 0xf8, 0x0b, 0x53, 0xcc, 0xbb, 0x90, 0x4b, - 0xd6, 0x8f, 0xd6, 0x5f, 0xbd, 0x3f, 0x74, 0x4e, 0x66, 0x78, 0x71, 0xba, 0xae, - 0x70, 0xde, 0x4b, 0xc9, 0x4b, 0x15, 0x0d, 0xa4, 0x16, 0xec, 0x5e, 0x70, 0x7f, - 0x3e, 0x48, 0x68, 0xa8, 0x53, 0x5e, 0xb7, 0x5b, 0xb8, 0x3e, 0x80, 0xb1, 0x6e, - 0x6a, 0x90, 0xe2, 0xd5, 0x07, 0xcd, 0xfe, 0x6f, 0xbd, 0xaa, 0x86, 0x16, 0x3e, - 0x9c, 0xf5, 0xde, 0x31, 0x00, 0xfb, 0xca, 0x7e, 0x8d, 0xa0, 0x47, 0xb0, 0x90, - 0xdb, 0x9f, 0x37, 0x95, 0x2f, 0xd3, 0x46, 0xb7, 0xf1, 0x68, 0xeb, 0xc5, 0xfc, - 0x8f, 0xe2, 0x53, 0xdd, 0x29, 0x27, 0x85, 0xd8, 0x9f, 0x82, 0xa6, 0xc6, 0x59, - 0xbb, 0x40, 0x3d, 0xc7, 0x32, 0xe5, 0x0b, 0xe6, 0x68, 0x4c, 0xba, 0xbd, 0x6b, - 0xbf, 0xfb, 0x43, 0xb6, 0x3a, 0x3b, 0x1b, 0x67, 0x1e, 0x40, 0xfe, 0xb0, 0xdb, - 0x00, 0x29, 0x74, 0xa3, 0xc3, 0xb1, 0xa7, 0x88, 0x56, 0x72, 0x31, 0xbf, 0x63, - 0x99, 0xff, 0x89, 0x23, 0x55, 0xe0, 0xbb, 0xde, 0xbe, 0xeb, 0xae, 0x2e, 0xdb, - 0x02, 0x5d, 0xe2, 0xf8, 0x68, 0x65, 0x8b, 0x38, 0x0c, 0x6f, 0xcf, 0xa2, 0x4c, - 0x07, 0x08, 0x25, 0xfc, 0x45, 0xed, 0xfc, 0xbd, 0x65, 0x91, 0x60, 0xb7, 0x08, - 0xe8, 0x08, 0x9f, 0x84, 0xd6, 0x37, 0xa8, 0xb0, 0x0b, 0x5e, 0x50, 0x19, 0xe8, - 0x1c, 0x15, 0x01, 0x03, 0x47, 0x53, 0x14, 0x6e, 0x22, 0xd0, 0x5f, 0x58, 0x6d, - 0x7f, 0x6b, 0x0f, + 0x95, 0x8c, 0x24, 0x06, 0x00, ], txid: [ - 0xbb, 0x52, 0xff, 0x82, 0xd9, 0xa4, 0xf0, 0x95, 0x8e, 0x2f, 0xb5, 0xfd, 0xb3, - 0x2c, 0xf0, 0xde, 0xf5, 0x36, 0x69, 0x98, 0x56, 0x51, 0x6a, 0x58, 0x56, 0x55, - 0x10, 0x29, 0x4f, 0xa2, 0x54, 0x28, + 0x50, 0x4c, 0xfa, 0xb7, 0x62, 0x80, 0x3e, 0x29, 0xc8, 0x08, 0xb1, 0xfe, 0x10, + 0x7e, 0xe3, 0x09, 0xa1, 0x51, 0xf4, 0x17, 0x52, 0xfa, 0xde, 0x65, 0xaa, 0x93, + 0x45, 0xd2, 0xfd, 0x33, 0xca, 0xfe, ], auth_digest: [ - 0x69, 0xa1, 0xb7, 0xcb, 0x2e, 0xeb, 0x8e, 0x8d, 0x15, 0x68, 0x3f, 0x4c, 0x5c, - 0x38, 0x73, 0xc9, 0x4e, 0x33, 0x83, 0xf6, 0x0c, 0x2c, 0x5e, 0x1c, 0x23, 0xf3, - 0xd4, 0xed, 0xd7, 0x25, 0x30, 0xd1, + 0xaa, 0xc3, 0x83, 0xd5, 0x65, 0xdf, 0xc1, 0xa4, 0x2c, 0x02, 0xc3, 0x75, 0xf3, + 0xb1, 0xe1, 0x42, 0xfa, 0xe1, 0xa4, 0x0e, 0xc8, 0xb3, 0x2d, 0x6e, 0x90, 0x75, + 0xa3, 0x35, 0x9e, 0x91, 0x8b, 0xcd, ], - amounts: vec![1203563221197918], - script_pubkeys: vec![vec![0x63, 0x63, 0x52, 0x6a, 0x63, 0x53, 0x00, 0x51, 0x53]], + amounts: vec![1779157228250399], + script_pubkeys: vec![vec![0x63, 0x51, 0x53, 0x51, 0x51, 0xac, 0x52]], transparent_input: Some(0), sighash_shielded: [ - 0xd5, 0xbd, 0x65, 0x01, 0xa1, 0x8e, 0x4f, 0x2d, 0x91, 0x50, 0x8b, 0x7a, 0x6d, - 0x00, 0x03, 0xad, 0xcc, 0xc3, 0x82, 0xcd, 0x75, 0xf6, 0x6f, 0x41, 0x96, 0x16, - 0x47, 0xa5, 0x12, 0x85, 0xcc, 0x89, + 0x42, 0x4c, 0xf4, 0x4c, 0x9d, 0xa3, 0x6b, 0xf1, 0x29, 0xcb, 0x16, 0x10, 0x6f, + 0x39, 0x51, 0x50, 0xb6, 0xa8, 0x93, 0x0a, 0x90, 0x5f, 0x59, 0x6c, 0x94, 0x95, + 0xad, 0xca, 0x67, 0xb6, 0xc3, 0x69, ], sighash_all: Some([ - 0xd2, 0xfc, 0xb8, 0x0b, 0xaf, 0xc9, 0x28, 0xfc, 0x54, 0x84, 0x0c, 0x48, 0x3f, - 0x7e, 0xb4, 0xa5, 0x43, 0x87, 0x71, 0xa6, 0x5c, 0x2a, 0xcd, 0x60, 0x76, 0x60, - 0xc0, 0x5d, 0x39, 0x95, 0xd9, 0x4e, + 0x81, 0x14, 0xa5, 0x4d, 0xc3, 0x6b, 0xfc, 0x72, 0x8f, 0x95, 0x24, 0x83, 0x5a, + 0x6b, 0xac, 0xed, 0xe8, 0x8a, 0xb6, 0x10, 0xb7, 0x92, 0x70, 0xcd, 0xcd, 0xc4, + 0xc0, 0x6a, 0x39, 0x4b, 0xdf, 0x6d, ]), sighash_none: Some([ - 0x81, 0xbd, 0xa8, 0x0e, 0x4d, 0x6c, 0xfd, 0x52, 0x6c, 0x3c, 0xbf, 0x81, 0xd5, - 0x45, 0xcc, 0x33, 0xe1, 0xe0, 0xf0, 0x01, 0xc8, 0xb1, 0xf2, 0x20, 0x08, 0xc4, - 0xc5, 0x19, 0x65, 0xc8, 0x4d, 0x99, + 0x79, 0x49, 0x5c, 0xbd, 0xcd, 0xb2, 0xda, 0x4c, 0xb2, 0xa2, 0x23, 0xeb, 0xd1, + 0xd1, 0x0f, 0x00, 0x8f, 0xe3, 0xc5, 0x1c, 0xd1, 0x05, 0xf6, 0x96, 0xe3, 0x3d, + 0xf9, 0x80, 0x1a, 0x84, 0x52, 0x37, ]), sighash_single: None, sighash_all_anyone: Some([ - 0x32, 0x7a, 0x21, 0x00, 0x57, 0x25, 0x6e, 0x48, 0x3b, 0xc2, 0x63, 0x9b, 0x3a, - 0x16, 0x25, 0x59, 0x40, 0xf6, 0x66, 0x2e, 0x96, 0xf4, 0xd3, 0xd9, 0x48, 0x45, - 0x1b, 0xa9, 0x94, 0x92, 0x10, 0x74, + 0x8e, 0xf9, 0x7d, 0xc5, 0x7d, 0xce, 0xef, 0xf2, 0x81, 0x4d, 0xab, 0xe5, 0x8e, + 0xc1, 0xb4, 0x34, 0xad, 0xa1, 0x7b, 0xbc, 0x76, 0x84, 0xc6, 0xa4, 0x1d, 0x97, + 0xaf, 0xea, 0x1e, 0x4f, 0x5d, 0x02, ]), sighash_none_anyone: Some([ - 0xb6, 0xa7, 0x8c, 0x4c, 0x2d, 0x46, 0x0c, 0x3e, 0xab, 0xfc, 0xa1, 0x1b, 0xd6, - 0x40, 0x65, 0xa4, 0x2a, 0x8c, 0xe4, 0xa0, 0xda, 0xc6, 0x54, 0xa7, 0x21, 0x20, - 0xdd, 0x65, 0x01, 0xea, 0x91, 0x19, + 0x67, 0x00, 0x29, 0x64, 0xcc, 0x6e, 0xfe, 0xae, 0xd5, 0x45, 0x2b, 0x92, 0x69, + 0xad, 0x9e, 0x28, 0xdf, 0xc2, 0x5a, 0xd2, 0x00, 0x91, 0x11, 0xaf, 0x02, 0xb9, + 0xc3, 0xf7, 0x63, 0x96, 0xeb, 0x58, ]), sighash_single_anyone: None, }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x54, - 0x66, 0xb6, 0x1f, 0xc9, 0x33, 0xf6, 0x01, 0x00, 0x02, 0x1a, 0x3d, 0x36, 0xc0, - 0x0f, 0xea, 0x00, 0x00, 0x04, 0x65, 0x53, 0x6a, 0x53, 0x66, 0x66, 0x0d, 0x16, - 0xa7, 0xd1, 0x06, 0x00, 0x06, 0x6a, 0xac, 0x00, 0x53, 0x52, 0xac, 0x00, 0x00, - 0x00, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x28, + 0xf8, 0x9d, 0xb8, 0x9f, 0x04, 0xea, 0x0e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0x06, 0x04, 0x9f, 0x04, 0xea, 0x0e, 0x00, 0xff, + 0xff, 0xff, 0xff, 0x02, 0x93, 0xa6, 0xb6, 0xbf, 0x94, 0x65, 0x06, 0x00, 0x06, + 0x00, 0x51, 0x51, 0x6a, 0x6a, 0x00, 0x92, 0xfe, 0xe4, 0x2b, 0x7a, 0x5b, 0x00, + 0x00, 0x06, 0x65, 0x00, 0x52, 0xac, 0x6a, 0x53, 0x00, 0x00, 0x02, 0x5c, 0xac, + 0x97, 0x4d, 0xec, 0xe1, 0x1e, 0xd8, 0xf7, 0xba, 0x5f, 0x80, 0x1d, 0xf5, 0xbf, + 0xfd, 0x0a, 0xc7, 0x94, 0xa7, 0x52, 0x57, 0x6e, 0x80, 0xa2, 0x5a, 0x4b, 0x60, + 0x8c, 0x5d, 0x2a, 0xb6, 0x2a, 0x66, 0x1f, 0x19, 0x7e, 0x29, 0x18, 0x76, 0x5e, + 0xa7, 0xd7, 0xf7, 0x8f, 0xd4, 0x84, 0x0e, 0xca, 0x28, 0x5b, 0x63, 0x04, 0xb3, + 0x7d, 0xa2, 0xb5, 0x29, 0x4f, 0x5c, 0xb3, 0x54, 0xa8, 0x14, 0x91, 0xc1, 0xfc, + 0x60, 0x1a, 0xa2, 0xee, 0xe2, 0xc3, 0xa9, 0xa0, 0x9e, 0x2d, 0x0b, 0xa9, 0x70, + 0x37, 0x73, 0xe4, 0xc8, 0x9e, 0x45, 0x55, 0xca, 0x21, 0xf6, 0x30, 0xf7, 0xb1, + 0xe5, 0xbc, 0x2a, 0xc2, 0xaf, 0x33, 0xae, 0x5d, 0xa4, 0xfd, 0xe7, 0xd2, 0xe1, + 0xc4, 0x79, 0x4c, 0x84, 0xf3, 0x47, 0xd7, 0x05, 0x25, 0xcd, 0xdb, 0x41, 0x87, + 0x2c, 0xfc, 0xc2, 0x14, 0xb1, 0x32, 0x32, 0xed, 0x07, 0x0a, 0x04, 0xc7, 0x53, + 0x3c, 0x50, 0x3b, 0x23, 0x9a, 0x4e, 0xe9, 0x4e, 0xdc, 0xf2, 0xda, 0xb0, 0xb3, + 0x3f, 0x35, 0x6a, 0x50, 0xeb, 0xc6, 0xaa, 0x11, 0x8a, 0x5c, 0xd5, 0x89, 0x29, + 0xfc, 0x36, 0xa9, 0x61, 0x13, 0x33, 0x38, 0xd7, 0x86, 0xc4, 0xa3, 0xe1, 0x03, + 0xf6, 0x01, 0x10, 0xa1, 0x6b, 0x13, 0x37, 0x12, 0x97, 0x04, 0xbf, 0x47, 0x54, + 0xff, 0x6b, 0xa9, 0xfb, 0xe6, 0x59, 0x51, 0xe6, 0x10, 0x62, 0x0f, 0x71, 0xcd, + 0xa8, 0xfc, 0x87, 0x76, 0x25, 0xf2, 0xc5, 0xbb, 0x04, 0xcb, 0xe1, 0x22, 0x8b, + 0x1e, 0x88, 0x6f, 0x40, 0x50, 0xaf, 0xd8, 0xfe, 0x94, 0xe9, 0x7d, 0x2e, 0x9e, + 0x85, 0xc6, 0xbb, 0x74, 0x8c, 0x00, 0x42, 0xd3, 0x24, 0x9a, 0xbb, 0x13, 0x42, + 0xbb, 0x0e, 0xeb, 0xf6, 0x20, 0x58, 0xbf, 0x3d, 0xe0, 0x80, 0xd9, 0x46, 0x11, + 0xa3, 0x75, 0x09, 0x15, 0xb5, 0xdc, 0x6c, 0x0b, 0x38, 0x99, 0xd4, 0x12, 0x22, + 0xba, 0xce, 0x76, 0x0e, 0xe9, 0xc8, 0x81, 0x8d, 0xed, 0x59, 0x9e, 0x34, 0xc5, + 0x6d, 0x73, 0x72, 0xaf, 0x1e, 0xb8, 0x68, 0x52, 0xf2, 0xa7, 0x32, 0x10, 0x4b, + 0xdb, 0x75, 0x07, 0x39, 0xde, 0x6c, 0x2c, 0x6e, 0x0f, 0x9e, 0xb7, 0xcb, 0x17, + 0xf1, 0x94, 0x2b, 0xfc, 0x9f, 0x4f, 0xd6, 0xeb, 0xb6, 0xb4, 0xcd, 0xd4, 0xda, + 0x2b, 0xca, 0x26, 0xfa, 0xc4, 0x57, 0x8e, 0x9f, 0x54, 0x34, 0x05, 0xac, 0xc7, + 0xd8, 0x6f, 0xf5, 0x91, 0x58, 0xbd, 0x0c, 0xba, 0x3a, 0xef, 0x6f, 0x4a, 0x84, + 0x72, 0xd1, 0x44, 0xd9, 0x9f, 0x8b, 0x8d, 0x1d, 0xed, 0xaa, 0x90, 0x77, 0xd4, + 0xf0, 0x1d, 0x4b, 0xb2, 0x7b, 0xbe, 0x31, 0xd8, 0x8f, 0xbe, 0xfa, 0xc3, 0xdc, + 0xd4, 0x79, 0x75, 0x63, 0xa2, 0x6b, 0x1d, 0x61, 0xfc, 0xd9, 0xa4, 0x64, 0xab, + 0x21, 0xed, 0x55, 0x0f, 0xe6, 0xfa, 0x09, 0x69, 0x5b, 0xa0, 0xb2, 0xf1, 0x0e, + 0xea, 0x64, 0x68, 0xcc, 0x6e, 0x20, 0xa6, 0x6f, 0x82, 0x6e, 0x3d, 0x14, 0xc5, + 0x00, 0x6f, 0x05, 0x63, 0x88, 0x7f, 0x5e, 0x12, 0x89, 0xbe, 0x1b, 0x20, 0x04, + 0xca, 0xca, 0x8d, 0x3f, 0x34, 0xd6, 0xe8, 0x4b, 0xf5, 0x9c, 0x1e, 0x04, 0x61, + 0x9a, 0x7c, 0x23, 0xa9, 0x96, 0x94, 0x1d, 0x88, 0x9e, 0x46, 0x22, 0xa9, 0xb9, + 0xb1, 0xd5, 0x9d, 0x5e, 0x31, 0x90, 0x94, 0x31, 0x8c, 0xd4, 0x05, 0xba, 0x27, + 0xb7, 0xe2, 0xc0, 0x84, 0x76, 0x2d, 0x31, 0x45, 0x3e, 0xc4, 0x54, 0x9a, 0x4d, + 0x97, 0x72, 0x9d, 0x03, 0x34, 0x60, 0xfc, 0xf8, 0x9d, 0x64, 0x94, 0xf2, 0xff, + 0xd7, 0x89, 0xe9, 0x80, 0x82, 0xea, 0x5c, 0xe9, 0x53, 0x4b, 0x3a, 0xcd, 0x60, + 0xfe, 0x49, 0xe3, 0x7e, 0x4f, 0x66, 0x69, 0x31, 0x67, 0x73, 0x19, 0xed, 0x89, + 0xf8, 0x55, 0x88, 0x74, 0x1b, 0x31, 0x28, 0x90, 0x1a, 0x93, 0xbd, 0x78, 0xe4, + 0xbe, 0x02, 0x25, 0xa9, 0xe2, 0x69, 0x2c, 0x77, 0xc9, 0x69, 0xed, 0x01, 0x76, + 0xbd, 0xf9, 0x55, 0x59, 0x48, 0xcb, 0xd5, 0xa3, 0x32, 0xd0, 0x45, 0xde, 0x6b, + 0xa6, 0xbf, 0x44, 0x90, 0xad, 0xfe, 0x74, 0x44, 0xcd, 0x46, 0x7a, 0x09, 0x07, + 0x54, 0x17, 0xfc, 0xc0, 0x06, 0x2e, 0x49, 0xf0, 0x08, 0xc5, 0x1a, 0xd4, 0x22, + 0x74, 0x39, 0xc1, 0xb4, 0x47, 0x6c, 0xcd, 0x8e, 0x97, 0x86, 0x2d, 0xab, 0x7b, + 0xe1, 0xe8, 0xd3, 0x99, 0xc0, 0x5e, 0xf2, 0x7c, 0x6e, 0x22, 0xee, 0x27, 0x3e, + 0x15, 0x78, 0x6e, 0x39, 0x4c, 0x8f, 0x1b, 0xe3, 0x16, 0x82, 0xa3, 0x01, 0x47, + 0x96, 0x3a, 0xc8, 0xda, 0x8d, 0x41, 0xd8, 0x04, 0x25, 0x84, 0x26, 0xa3, 0xf7, + 0x02, 0x89, 0xb8, 0xad, 0x19, 0xd8, 0xde, 0x13, 0xbe, 0x4e, 0xeb, 0xe3, 0xbd, + 0x4c, 0x8a, 0x6f, 0x55, 0xd6, 0xe0, 0xc3, 0x73, 0xd4, 0x56, 0x85, 0x18, 0x79, + 0xf5, 0xfb, 0xc2, 0x82, 0xdb, 0x9e, 0x13, 0x48, 0x06, 0xbf, 0xf7, 0x1e, 0x11, + 0xbc, 0x33, 0xab, 0x75, 0xdd, 0x6c, 0xa0, 0x67, 0xfb, 0x73, 0xa0, 0x43, 0xb6, + 0x46, 0xa7, 0xcf, 0x39, 0xca, 0xb4, 0x92, 0x83, 0x86, 0x78, 0x6d, 0x2f, 0x24, + 0x14, 0x1e, 0xe1, 0x20, 0xfd, 0xc3, 0x4d, 0x67, 0x64, 0xea, 0xfc, 0x66, 0x88, + 0x0e, 0xe0, 0x20, 0x4f, 0x53, 0xcc, 0x11, 0x67, 0xed, 0x20, 0xb4, 0x3a, 0x52, + 0xde, 0xa3, 0xca, 0x7c, 0xff, 0x8e, 0xf3, 0x5c, 0xd8, 0xe6, 0xd7, 0xc1, 0x11, + 0xa6, 0x8e, 0xf4, 0x4b, 0xcd, 0x0c, 0x15, 0x13, 0xad, 0x47, 0xca, 0x61, 0xc6, + 0x59, 0xcc, 0x5d, 0x32, 0x5b, 0x44, 0x0f, 0x6b, 0x9f, 0x59, 0xaf, 0xf6, 0x68, + 0x79, 0xbb, 0x66, 0x88, 0xfd, 0x28, 0x59, 0x36, 0x2b, 0x18, 0x2f, 0x20, 0x7b, + 0x31, 0x75, 0x96, 0x1f, 0x64, 0x11, 0xa4, 0x93, 0xbf, 0xfd, 0x04, 0x8e, 0x7d, + 0x0d, 0x87, 0xd8, 0x2f, 0xe6, 0xf9, 0x90, 0xa2, 0xb0, 0xa2, 0x5f, 0x5a, 0xa0, + 0x11, 0x1a, 0x6e, 0x68, 0xf3, 0x7b, 0xf6, 0xf3, 0xac, 0x2d, 0x26, 0xb8, 0x46, + 0x86, 0xe5, 0x69, 0xd5, 0x8d, 0x99, 0xc1, 0x38, 0x35, 0x97, 0xfa, 0xd8, 0xca, + 0xa7, 0xb7, 0x6a, 0x32, 0xf7, 0xbe, 0xdd, 0xb2, 0x76, 0x8c, 0xdd, 0xdf, 0xa1, + 0x66, 0x6d, 0x5a, 0xa6, 0x29, 0x3b, 0x1a, 0x4c, 0x14, 0x5a, 0xa2, 0xac, 0xa3, + 0x6a, 0x81, 0x76, 0x2c, 0x09, 0xd7, 0x46, 0xa7, 0xd3, 0xf7, 0xc3, 0x7d, 0x9e, + 0x8b, 0xdc, 0x43, 0x3b, 0x7d, 0x79, 0xe0, 0x8a, 0x12, 0xf7, 0x38, 0xa8, 0xf0, + 0xdb, 0xdd, 0xfe, 0xf2, 0xf2, 0x65, 0x7e, 0xf3, 0xe4, 0x7d, 0x1b, 0x05, 0xe7, + 0x99, 0xe9, 0x7b, 0xdd, 0x91, 0xb7, 0xd9, 0x25, 0x2e, 0x95, 0x83, 0x42, 0xce, + 0x68, 0xbe, 0x31, 0x8c, 0x92, 0x61, 0x0b, 0x20, 0x18, 0x85, 0xa9, 0xb2, 0x71, + 0x49, 0x90, 0x62, 0x26, 0xbb, 0x84, 0x62, 0xc0, 0x4d, 0xfe, 0x3c, 0x0d, 0xf0, + 0x54, 0x86, 0xf2, 0xcf, 0x5d, 0x58, 0x2e, 0x26, 0x17, 0x4a, 0x09, 0x87, 0x8f, + 0xe8, 0xfd, 0xde, 0x33, 0xa2, 0x96, 0x04, 0xe5, 0xe5, 0x27, 0x83, 0xbf, 0xc5, + 0x1e, 0x66, 0x1a, 0xe1, 0x14, 0x26, 0xd5, 0xd9, 0x46, 0xba, 0x15, 0xd5, 0xc5, + 0x2b, 0x09, 0x5a, 0x58, 0x46, 0xa7, 0x59, 0x80, 0x75, 0x5e, 0x80, 0x5f, 0xc5, + 0x5b, 0x2d, 0x25, 0x60, 0xcf, 0x33, 0x54, 0xcf, 0xcd, 0xad, 0xa6, 0x63, 0xec, + 0xe8, 0x24, 0xff, 0xd7, 0xe4, 0x43, 0x93, 0x88, 0x6a, 0x86, 0x16, 0x5d, 0xdd, + 0xdf, 0x2b, 0x4c, 0x41, 0x77, 0x35, 0x54, 0xc8, 0x69, 0x95, 0x26, 0x94, 0x08, + 0xb1, 0x1e, 0x67, 0x37, 0xa4, 0xc4, 0x47, 0x58, 0x6f, 0x69, 0x17, 0x34, 0x46, + 0xd8, 0xe4, 0x8b, 0xf8, 0x4c, 0xbc, 0x00, 0x0a, 0x80, 0x78, 0x99, 0x97, 0x3e, + 0xb9, 0x3c, 0x5e, 0x81, 0x9a, 0xad, 0x66, 0x94, 0x13, 0xf8, 0x38, 0x79, 0x33, + 0xad, 0x15, 0x84, 0xaa, 0x35, 0xe4, 0x3f, 0x4e, 0xcd, 0x1e, 0x2d, 0x04, 0x07, + 0xc0, 0xb1, 0xb8, 0x99, 0x20, 0xff, 0xdf, 0xdb, 0x9b, 0xea, 0x51, 0xac, 0x95, + 0xb5, 0x57, 0xaf, 0x71, 0xb8, 0x9f, 0x90, 0x3f, 0x5d, 0x98, 0x48, 0xf1, 0x4f, + 0xcb, 0xeb, 0x18, 0x37, 0x57, 0x0f, 0x54, 0x4d, 0x63, 0x59, 0xeb, 0x23, 0xfa, + 0xf3, 0x8a, 0x08, 0x22, 0xda, 0x36, 0xce, 0x42, 0x6c, 0x4a, 0x2f, 0xbe, 0xff, + 0xeb, 0x0a, 0x8a, 0x2e, 0x29, 0x7a, 0x9d, 0x19, 0xba, 0x15, 0x02, 0x45, 0x90, + 0xe3, 0x32, 0x9d, 0x9f, 0xa9, 0x26, 0x1f, 0x99, 0x38, 0xa4, 0x03, 0x2d, 0xd3, + 0x46, 0x06, 0xc9, 0xcf, 0x9f, 0x3d, 0xd3, 0x3e, 0x57, 0x6f, 0x05, 0xcd, 0x1d, + 0xd6, 0x81, 0x1c, 0x62, 0x98, 0x75, 0x7d, 0x77, 0xd9, 0xe8, 0x10, 0xab, 0xdb, + 0x22, 0x6a, 0xfc, 0xaa, 0x43, 0x46, 0xa6, 0x56, 0x0f, 0x89, 0x32, 0xb3, 0x18, + 0x1f, 0xd3, 0x55, 0xd5, 0xd3, 0x91, 0x97, 0x61, 0x83, 0xf8, 0xd9, 0x93, 0x88, + 0x83, 0x96, 0x32, 0xd6, 0x35, 0x4f, 0x66, 0x6d, 0x09, 0xd3, 0xe5, 0x62, 0x9e, + 0xa1, 0x97, 0x37, 0x38, 0x86, 0x13, 0xd3, 0x8a, 0x34, 0xfd, 0x0f, 0x6e, 0x50, + 0xee, 0x5a, 0x0c, 0xc9, 0x67, 0x71, 0x77, 0xf5, 0x00, 0x28, 0xc1, 0x41, 0x37, + 0x81, 0x87, 0xbd, 0x28, 0x19, 0x40, 0x3f, 0xc5, 0x34, 0xf8, 0x00, 0x76, 0xe9, + 0x38, 0x0c, 0xb4, 0x96, 0x4d, 0x3b, 0x6b, 0x45, 0x81, 0x9d, 0x3b, 0x8e, 0x9c, + 0xaf, 0x54, 0xf0, 0x51, 0x85, 0x2d, 0x67, 0x1b, 0xf8, 0xc1, 0xff, 0xde, 0x2d, + 0x15, 0x10, 0x75, 0x64, 0x18, 0xcb, 0x48, 0x10, 0x93, 0x6a, 0xa5, 0x7e, 0x69, + 0x65, 0xd6, 0xfb, 0x65, 0x6a, 0x76, 0x0b, 0x7f, 0x19, 0xad, 0xf9, 0x6c, 0x17, + 0x34, 0x88, 0x55, 0x21, 0x93, 0xb1, 0x47, 0xee, 0x58, 0x85, 0x80, 0x33, 0xda, + 0xc7, 0xcd, 0x0e, 0xb2, 0x04, 0xc0, 0x64, 0x90, 0xbb, 0xde, 0xdf, 0x5f, 0x75, + 0x71, 0xac, 0xb2, 0xeb, 0xe7, 0x6a, 0xce, 0xf3, 0xf2, 0xa0, 0x1e, 0xe9, 0x87, + 0x48, 0x6d, 0xfe, 0x6c, 0x3f, 0x0a, 0x5e, 0x23, 0x4c, 0x12, 0x72, 0x58, 0xf9, + 0x7a, 0x28, 0xfb, 0x5d, 0x16, 0x4a, 0x81, 0x76, 0xbe, 0x94, 0x6b, 0x80, 0x97, + 0xd0, 0xe3, 0x17, 0x28, 0x7f, 0x33, 0xbf, 0x9c, 0x16, 0xf9, 0xa5, 0x45, 0x40, + 0x9c, 0xe2, 0x9b, 0x1f, 0x42, 0x73, 0x72, 0x5f, 0xc0, 0xdf, 0x02, 0xa0, 0x4e, + 0xba, 0xe1, 0x78, 0xb3, 0x41, 0x4f, 0xb0, 0xa8, 0x2d, 0x50, 0xde, 0xb0, 0x9f, + 0xcf, 0x4e, 0x6e, 0xe9, 0xd1, 0x80, 0xff, 0x4f, 0x56, 0xff, 0x3b, 0xc1, 0xd3, + 0x60, 0x1f, 0xc2, 0xdc, 0x90, 0xd8, 0x14, 0xc3, 0x25, 0x6f, 0x49, 0x67, 0xd3, + 0xa8, 0xd6, 0x4c, 0x83, 0xfe, 0xa3, 0x39, 0xc5, 0x1f, 0x5a, 0x8e, 0x58, 0x01, + 0xfb, 0xb9, 0x78, 0x35, 0x58, 0x1b, 0x60, 0x24, 0x65, 0xde, 0xe0, 0x4b, 0x59, + 0x22, 0xc2, 0x76, 0x1b, 0x54, 0x24, 0x5b, 0xec, 0x0c, 0x9e, 0xef, 0x2d, 0xb9, + 0x7d, 0x22, 0xb2, 0xb3, 0x55, 0x6c, 0xc9, 0x69, 0xfb, 0xb1, 0x3d, 0x06, 0x50, + 0x97, 0x65, 0xa5, 0x2b, 0x3f, 0xac, 0x54, 0xb9, 0x3f, 0x42, 0x1b, 0xf0, 0x8e, + 0x18, 0xd5, 0x2d, 0xdd, 0x52, 0xcc, 0x1c, 0x8c, 0xa8, 0xad, 0xfa, 0xcc, 0xab, + 0x7e, 0x5c, 0xc2, 0xf4, 0x57, 0x3f, 0xbb, 0xf8, 0x23, 0x9b, 0xb0, 0xb8, 0xae, + 0xdb, 0xf8, 0xda, 0xd1, 0x62, 0x82, 0xda, 0x5c, 0x91, 0x25, 0xdb, 0xa1, 0xc0, + 0x59, 0xd0, 0xdf, 0x8a, 0xbf, 0x62, 0x10, 0x78, 0xf0, 0x2d, 0x6c, 0x4b, 0xc8, + 0x6d, 0x40, 0x84, 0x5a, 0xc1, 0xd5, 0x97, 0x10, 0xc4, 0x5f, 0x07, 0xd5, 0x85, + 0xeb, 0x48, 0xb3, 0x2f, 0xc0, 0x16, 0x7b, 0xa2, 0x56, 0xe7, 0x3c, 0xa3, 0xb9, + 0x31, 0x1c, 0x62, 0xd1, 0x09, 0x49, 0x79, 0x57, 0xd8, 0xdb, 0xe1, 0x0a, 0xa3, + 0xe8, 0x66, 0xb4, 0x0c, 0x0b, 0xaa, 0x2b, 0xc4, 0x92, 0xc1, 0x9a, 0xd1, 0xe6, + 0x37, 0x2d, 0x96, 0x22, 0xbf, 0x16, 0x3f, 0xbf, 0xfe, 0xae, 0xee, 0x79, 0x6a, + 0x3c, 0xd9, 0xb6, 0xfb, 0xbf, 0xa4, 0xd7, 0x92, 0xf3, 0x4d, 0x7f, 0xd6, 0xe7, + 0x63, 0xcd, 0x58, 0x59, 0xdd, 0x26, 0x83, 0x3d, 0x21, 0xd9, 0xbc, 0x54, 0x52, + 0x02, 0x8c, 0xaa, 0xeb, 0xf8, 0xd1, 0xcc, 0x06, 0x00, 0x3f, 0x38, 0x02, 0xd2, + 0x6d, 0x87, 0xb3, 0x21, 0x67, 0xf2, 0xe4, 0x90, 0x2b, 0x1c, 0xe3, 0xdc, 0x5d, + 0x14, 0x79, 0xc7, 0x2e, 0x70, 0x89, 0xd0, 0x29, 0xe7, 0xfb, 0xba, 0xf3, 0xcf, + 0x37, 0x29, 0xd9, 0xa6, 0xb7, 0x76, 0x79, 0x1e, 0x4c, 0x5e, 0x6f, 0xda, 0x57, + 0xe8, 0xd5, 0xf1, 0x4c, 0x8c, 0x35, 0xa2, 0xd2, 0x70, 0x84, 0x6b, 0x9d, 0xbe, + 0x00, 0x5c, 0xda, 0x16, 0xaf, 0x44, 0x08, 0xf3, 0xab, 0x06, 0xa9, 0x16, 0xee, + 0xeb, 0x9c, 0x95, 0x94, 0xb7, 0x04, 0x24, 0xa4, 0xc1, 0xd1, 0x71, 0x29, 0x5b, + 0x67, 0x63, 0xb2, 0x2f, 0x47, 0xf8, 0x0b, 0x53, 0xcc, 0xbb, 0x90, 0x4b, 0xd6, + 0x8f, 0xd6, 0x5f, 0xbd, 0x3f, 0xbd, 0xea, 0x10, 0x35, 0xe9, 0x8c, 0x21, 0xa7, + 0xdb, 0xc9, 0x1a, 0x9b, 0x5b, 0xc7, 0x69, 0x0f, 0x05, 0xec, 0x31, 0x7c, 0x97, + 0xf8, 0x76, 0x4e, 0xb4, 0x8e, 0x91, 0x1d, 0x42, 0x8e, 0xc8, 0xd8, 0x61, 0xb7, + 0x08, 0xe8, 0x29, 0x8a, 0xcb, 0x62, 0x15, 0x51, 0x45, 0x15, 0x5a, 0xe9, 0x5f, + 0x0a, 0x1d, 0x15, 0x01, 0x03, 0x47, 0x53, 0x14, 0x6e, 0x22, 0xd0, 0x5f, 0x58, + 0x6d, 0x7f, 0x6b, 0x4f, 0xe1, 0x2d, 0xad, 0x9a, 0x17, 0xf5, 0xdb, 0x70, 0xb1, + 0xdb, 0x96, 0xb8, 0xd9, 0xa8, 0x3e, 0xda, 0xdc, 0x96, 0x6c, 0x8a, 0x54, 0x66, + 0xb6, 0x1f, 0xc9, 0x98, 0xc3, 0x1f, 0x10, 0x70, 0xd9, 0xa5, 0xc9, 0xa6, 0xd2, + 0x68, 0xd3, 0x04, 0xfe, 0x6b, 0x8f, 0xd3, 0xb4, 0x01, 0x03, 0x48, 0x61, 0x1a, + 0xbd, 0xcb, 0xd4, 0x9f, 0xe4, 0xf8, 0x5b, 0x62, 0x3c, 0x78, 0x28, 0xc7, 0x13, + 0x82, 0xe1, 0x03, 0x4e, 0xa6, 0x7b, 0xc8, 0xae, 0x97, 0x40, 0x4b, 0x0c, 0x50, + 0xb2, 0xa0, 0x4f, 0x55, 0x9e, 0x49, 0x95, 0x0a, 0xfc, 0xb0, 0xef, 0x46, 0x27, + 0x76, 0xd2, 0x4b, 0x0c, 0xc1, 0xb8, 0x2c, 0x9d, 0xcc, 0xf9, 0x89, 0xfa, 0xd0, + 0x5a, 0xa7, 0xa8, 0x91, 0xb9, 0x89, 0x60, 0x4d, 0xe8, 0xa3, 0x30, 0xad, 0xc3, + 0x01, 0x89, 0x62, 0x85, 0xac, 0xd8, 0x9f, 0x37, 0x95, 0xcc, 0xfd, 0x19, 0xd2, + 0x16, 0x67, 0xa8, 0x64, 0x9c, 0xf2, 0x7e, 0x86, 0x49, 0x0e, 0x67, 0x7b, 0x51, + 0x5d, 0x01, 0x43, 0x84, 0xaf, 0x07, 0x21, 0x9c, 0x7c, 0x0e, 0x27, 0x14, 0xee, + 0xb0, 0xfb, 0x2a, 0xd0, 0xeb, 0x20, 0xe7, 0x2e, 0x04, 0x7e, 0x45, 0xae, 0x88, + 0xd0, 0xfd, 0x13, 0x03, 0xee, 0x7e, 0xd8, 0x4a, 0x4e, 0xa2, 0xcc, 0x6c, 0x7e, + 0xf5, 0xae, 0x22, 0x87, 0xa5, 0x72, 0x7b, 0x75, 0xa9, 0xe7, 0xdd, 0xa6, 0x40, + 0xf2, 0x8c, 0x27, 0x43, 0xe9, 0xd9, 0xd9, 0x3f, 0xfe, 0xb0, 0xdb, 0x00, 0x29, + 0x74, 0xa3, 0xc3, 0xb1, 0xa7, 0x88, 0x56, 0x72, 0x31, 0x3f, 0x3a, 0x84, 0x3c, + 0x35, 0xb9, 0x3d, 0x04, 0xc7, 0x0a, 0xb8, 0xbc, 0x6f, 0x4b, 0x4c, 0xbe, 0x66, + 0x31, 0xc4, 0x87, 0x14, 0xaa, 0x2c, 0x65, 0x89, 0xf1, 0x98, 0x09, 0x70, 0xe6, + 0x11, 0xbc, 0x3b, 0x47, 0x30, 0x55, 0x21, 0xf0, 0x94, 0x50, 0xf0, 0x9a, 0xde, + 0x5c, 0x33, 0x31, 0xf7, 0x8d, 0x69, 0x25, 0xff, 0x88, 0x22, 0xa1, 0x4c, 0x4b, + 0x66, 0x6a, 0x92, 0x59, 0xad, 0x0d, 0xc4, 0x2a, 0x02, ], txid: [ - 0x48, 0x5e, 0xed, 0x11, 0x3a, 0xc8, 0x9a, 0x13, 0x1f, 0xcc, 0x81, 0xb2, 0x4a, - 0xc0, 0x2b, 0xad, 0xe4, 0xbe, 0x7d, 0x69, 0x0a, 0x93, 0x39, 0xe3, 0xa9, 0x81, - 0x38, 0xc7, 0x1d, 0xdb, 0xfb, 0x73, + 0xc2, 0x7c, 0x98, 0x0f, 0x79, 0x7b, 0x41, 0x9d, 0xa3, 0xbb, 0xa2, 0x68, 0x01, + 0x62, 0xa8, 0xe8, 0x8e, 0x13, 0x9a, 0xcf, 0xb1, 0x0c, 0x13, 0xff, 0xce, 0xe7, + 0xbd, 0x08, 0x39, 0x6e, 0xc5, 0xd6, ], auth_digest: [ - 0x0a, 0x5a, 0x5c, 0x39, 0xc7, 0x2f, 0x6c, 0xda, 0xb1, 0x7c, 0x5a, 0x43, 0xf2, - 0xe5, 0xb0, 0xee, 0x82, 0xd9, 0xe0, 0xfb, 0xc0, 0x29, 0x4f, 0x30, 0x86, 0x8e, - 0x55, 0xa1, 0xdf, 0xc0, 0x33, 0x0f, + 0x23, 0xef, 0x95, 0x86, 0xa3, 0xc9, 0x61, 0x18, 0x55, 0x0d, 0x55, 0xbf, 0xa7, + 0x0b, 0x8c, 0x35, 0xbd, 0xa9, 0x55, 0x50, 0xa3, 0xcd, 0x5a, 0x02, 0x73, 0x20, + 0x11, 0x90, 0x12, 0x46, 0x0d, 0xf8, ], amounts: vec![], script_pubkeys: vec![], transparent_input: None, sighash_shielded: [ - 0x48, 0x5e, 0xed, 0x11, 0x3a, 0xc8, 0x9a, 0x13, 0x1f, 0xcc, 0x81, 0xb2, 0x4a, - 0xc0, 0x2b, 0xad, 0xe4, 0xbe, 0x7d, 0x69, 0x0a, 0x93, 0x39, 0xe3, 0xa9, 0x81, - 0x38, 0xc7, 0x1d, 0xdb, 0xfb, 0x73, + 0xc2, 0x7c, 0x98, 0x0f, 0x79, 0x7b, 0x41, 0x9d, 0xa3, 0xbb, 0xa2, 0x68, 0x01, + 0x62, 0xa8, 0xe8, 0x8e, 0x13, 0x9a, 0xcf, 0xb1, 0x0c, 0x13, 0xff, 0xce, 0xe7, + 0xbd, 0x08, 0x39, 0x6e, 0xc5, 0xd6, ], sighash_all: None, sighash_none: None, @@ -6052,153 +6062,246 @@ pub mod zip_0244 { }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x28, - 0xd5, 0xc8, 0xaf, 0xb0, 0x66, 0x87, 0x08, 0x00, 0x01, 0x8c, 0x3f, 0x57, 0x9a, - 0x71, 0x05, 0x03, 0x00, 0x08, 0x00, 0x65, 0x6a, 0x65, 0x00, 0x63, 0x51, 0x53, - 0x01, 0x93, 0xab, 0x48, 0xeb, 0x3f, 0xcf, 0xb8, 0x77, 0x81, 0x6d, 0xcc, 0x86, - 0x1a, 0x40, 0x01, 0x3b, 0x71, 0xb8, 0x3f, 0x36, 0x50, 0xe6, 0xd8, 0xad, 0x58, - 0xa2, 0x3b, 0x42, 0x0e, 0x01, 0xbe, 0x01, 0x68, 0x06, 0x14, 0xe8, 0x35, 0x62, - 0xf8, 0x2d, 0xfd, 0x40, 0x5b, 0x54, 0xa4, 0x5e, 0xb3, 0x2c, 0x16, 0x54, 0x48, - 0xd4, 0xd5, 0xd6, 0x1c, 0xa2, 0x85, 0x95, 0x85, 0x36, 0x9f, 0x53, 0xf1, 0xa1, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0xac, + 0x7b, 0xc7, 0xf5, 0x3a, 0x82, 0xbd, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0x06, 0x04, 0x3a, 0x82, 0xbd, 0x02, 0x00, 0xff, + 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xde, 0xbd, 0x1a, 0x65, 0xe7, 0x68, + 0x34, 0x15, 0x2f, 0xfc, 0xc5, 0x0e, 0x28, 0x12, 0xfc, 0xe7, 0x65, 0x28, 0x67, + 0x5d, 0xe1, 0x98, 0x73, 0x10, 0x7f, 0xca, 0x58, 0xf1, 0xab, 0xa7, 0x24, 0x29, + 0x85, 0x80, 0x9a, 0xe2, 0x6a, 0x58, 0x04, 0xf9, 0xe3, 0xb3, 0x78, 0xc5, 0x63, + 0x74, 0x83, 0x79, 0x99, 0xd9, 0xc0, 0x99, 0x01, 0xbf, 0x39, 0xca, 0xac, 0x48, + 0xdc, 0x11, 0x95, 0x6a, 0x8a, 0x29, 0x13, 0x0a, 0x8f, 0x6c, 0x87, 0x99, 0x40, + 0x16, 0xea, 0x41, 0xcf, 0x73, 0x8e, 0x00, 0x68, 0x1f, 0xc6, 0x03, 0x91, 0x00, + 0x22, 0x49, 0xd6, 0xed, 0x48, 0xb3, 0xb7, 0x6f, 0x0f, 0xc4, 0x76, 0x03, 0x15, + 0x38, 0x8e, 0x1a, 0xca, 0x7c, 0x87, 0xf8, 0xcc, 0xc4, 0xa0, 0x5e, 0x65, 0x5a, + 0x10, 0x00, 0x81, 0x9d, 0x37, 0x5b, 0x0a, 0x91, 0x2d, 0x4f, 0xe8, 0x43, 0xb7, + 0x6e, 0xf6, 0xf2, 0x23, 0x30, 0xe8, 0x58, 0xae, 0x37, 0x78, 0x76, 0xb8, 0xf4, + 0xba, 0x86, 0x8b, 0xa9, 0x58, 0xc7, 0x04, 0x58, 0x40, 0xe7, 0x6d, 0xce, 0x9a, + 0x66, 0x42, 0xd2, 0x8b, 0xf3, 0x6f, 0x0b, 0x40, 0xc2, 0x8b, 0x9c, 0x47, 0x27, + 0xb7, 0xaa, 0xa5, 0x35, 0x62, 0xf5, 0x23, 0xe7, 0x39, 0x52, 0xbb, 0xf3, 0x3d, + 0x8a, 0x41, 0x04, 0x07, 0x8a, 0xde, 0x3e, 0xaa, 0xa4, 0x96, 0x99, 0xa6, 0x9f, + 0xdf, 0x1c, 0x5a, 0xc7, 0x73, 0x21, 0x46, 0xee, 0x5e, 0x1d, 0x6b, 0x6c, 0xa9, + 0xb9, 0x18, 0x0f, 0x96, 0x4c, 0xc9, 0xd0, 0x87, 0x8a, 0xe1, 0x37, 0x35, 0x24, + 0xd7, 0xd5, 0x10, 0xe5, 0x82, 0x27, 0xdf, 0x6d, 0xe9, 0xd3, 0x0d, 0x27, 0x18, + 0x67, 0x64, 0x01, 0x77, 0xb0, 0xf1, 0x85, 0x6e, 0x28, 0xd5, 0xc8, 0xaf, 0xb0, + 0x95, 0xef, 0x61, 0x84, 0xfe, 0xd6, 0x51, 0x58, 0x90, 0x22, 0xee, 0xae, 0xa4, + 0xc0, 0xce, 0x1f, 0xa6, 0xf0, 0x85, 0x09, 0x2b, 0x04, 0x97, 0x94, 0x89, 0x17, + 0x2b, 0x3e, 0xf8, 0x19, 0x4a, 0x79, 0x8d, 0xf5, 0x72, 0x4d, 0x6b, 0x05, 0xf1, + 0xae, 0x00, 0x00, 0x13, 0xa0, 0x8d, 0x61, 0x2b, 0xca, 0x8a, 0x8c, 0x31, 0x44, + 0x3c, 0x10, 0x34, 0x6d, 0xbf, 0x61, 0xde, 0x84, 0x75, 0xc0, 0xbb, 0xec, 0x51, + 0x04, 0xb4, 0x75, 0x56, 0xaf, 0x3d, 0x51, 0x44, 0x58, 0xe2, 0x32, 0x1d, 0x14, + 0x60, 0x71, 0x78, 0x9d, 0x23, 0x35, 0x93, 0x4a, 0x68, 0x06, 0x14, 0xe8, 0x35, + 0x62, 0xf8, 0x2d, 0xfd, 0x40, 0x5b, 0x54, 0xa4, 0x5e, 0xb3, 0x2c, 0x16, 0x54, + 0x48, 0xd4, 0xd5, 0xd6, 0x1c, 0xa2, 0x85, 0x95, 0x85, 0x36, 0x9f, 0x53, 0xf1, + 0xa1, 0x37, 0xe9, 0xe8, 0x2b, 0x67, 0xb8, 0xfd, 0xaf, 0x01, 0xbd, 0xa5, 0x4a, + 0x31, 0x73, 0x11, 0x89, 0x6a, 0xe1, 0x02, 0x80, 0xa0, 0x32, 0x44, 0x0c, 0x42, + 0x0a, 0x42, 0x1e, 0x94, 0x4d, 0x1e, 0x95, 0x2b, 0x70, 0xd5, 0x82, 0x6c, 0xd3, + 0xb0, 0x8b, 0x7d, 0xb9, 0x63, 0x0f, 0xe4, 0xfd, 0x5f, 0x22, 0x12, 0x5d, 0xe8, + 0x40, 0xfc, 0xc4, 0x0b, 0x98, 0x03, 0x8a, 0xf1, 0x1d, 0x55, 0xbe, 0x25, 0x43, 0x25, 0x97, 0xb4, 0xb6, 0x5b, 0x9e, 0xc1, 0xc7, 0xa8, 0xbb, 0xfd, 0x05, 0x2c, 0xbf, 0x7e, 0x1c, 0x17, 0x85, 0x31, 0x49, 0x34, 0xb2, 0x62, 0xd5, 0x85, 0x37, - 0x54, 0xf1, 0xf1, 0x77, 0x71, 0xcf, 0x00, 0x37, 0x40, 0x58, 0x1f, 0xee, 0x3a, - 0x02, 0x00, 0x04, 0x97, 0x94, 0x89, 0x17, 0x2b, 0x3e, 0xf8, 0x19, 0x4a, 0x79, - 0x8d, 0xf5, 0x72, 0x4d, 0x6b, 0x05, 0xf1, 0xae, 0x00, 0x00, 0x13, 0xa0, 0x8d, - 0x61, 0x2b, 0xca, 0x8a, 0x8c, 0x31, 0x44, 0x3c, 0xb7, 0x50, 0x30, 0x72, 0x65, - 0x57, 0x53, 0xfa, 0x3f, 0x54, 0xec, 0xc5, 0x87, 0xe9, 0xf8, 0x3b, 0x58, 0x19, - 0x16, 0x09, 0x2d, 0xf2, 0x6e, 0x63, 0xe1, 0x89, 0x94, 0xcb, 0x0d, 0xb9, 0x1a, - 0x0b, 0xbd, 0xc7, 0xb6, 0x11, 0x9b, 0x32, 0x22, 0x2a, 0xdf, 0x5e, 0x61, 0xd8, - 0xd8, 0xae, 0x89, 0xda, 0xe4, 0x95, 0x4b, 0x54, 0x81, 0x3b, 0xb3, 0x3f, 0x08, - 0xd5, 0x62, 0xba, 0x51, 0x3f, 0xee, 0x1b, 0x09, 0xc0, 0xfc, 0xd5, 0x16, 0x05, - 0x54, 0x19, 0x47, 0x4d, 0xd7, 0xfd, 0xa0, 0x38, 0xa8, 0x9c, 0x84, 0xea, 0x7b, - 0x94, 0x68, 0x28, 0x7f, 0x0e, 0xb0, 0xc1, 0x0c, 0x4b, 0x13, 0x25, 0x20, 0x19, - 0x4d, 0x3d, 0x8d, 0x53, 0x51, 0xfc, 0x10, 0xd0, 0x9c, 0x15, 0xc8, 0xcc, 0x10, - 0x1a, 0xa1, 0x66, 0x3b, 0xbf, 0x17, 0xb8, 0x41, 0x11, 0xf3, 0x8b, 0xb4, 0x39, - 0xf0, 0x73, 0x53, 0xbd, 0xea, 0x35, 0x96, 0xd1, 0x5e, 0x71, 0x3e, 0x1e, 0x2e, - 0x7d, 0x3f, 0x1c, 0x38, 0x31, 0x35, 0xb4, 0x7f, 0xa7, 0xf8, 0x1f, 0x46, 0xdf, - 0x7a, 0x90, 0x2a, 0x40, 0x46, 0x99, 0xec, 0x91, 0x2f, 0x56, 0x56, 0xc3, 0x5b, - 0x85, 0x76, 0x3e, 0x4d, 0xe5, 0x83, 0xae, 0xca, 0xa1, 0xdf, 0xd5, 0xd2, 0x67, - 0x7d, 0x9c, 0x8f, 0xfe, 0xe8, 0x77, 0xf6, 0x3f, 0x40, 0xa5, 0xca, 0x0d, 0x67, - 0xf6, 0xe5, 0x54, 0x12, 0x47, 0x2a, 0x03, 0x68, 0xf7, 0xd6, 0xce, 0x33, 0xf5, - 0x52, 0xaa, 0xbf, 0x7c, 0xe1, 0xac, 0x55, 0x24, 0x29, 0x98, 0xc5, 0xc1, 0x22, - 0x75, 0xf1, 0xe7, 0xb4, 0xbb, 0x4a, 0xcc, 0x68, 0x77, 0x6f, 0x17, 0x4d, 0x28, - 0x56, 0x09, 0x81, 0xca, 0xe4, 0xca, 0x7d, 0x5b, 0x9f, 0x6e, 0x4c, 0x07, 0x86, - 0xac, 0x55, 0x82, 0x29, 0xe8, 0xf3, 0x58, 0x20, 0x19, 0x55, 0xdc, 0x6b, 0xd1, - 0x8d, 0xe8, 0x9f, 0x03, 0x61, 0xf6, 0x69, 0x6f, 0x23, 0xdb, 0xeb, 0xe4, 0x64, - 0x3c, 0xd3, 0xbe, 0xa9, 0xa0, 0xd2, 0xd7, 0xe2, 0x61, 0xe9, 0xa3, 0x57, 0x2a, - 0x80, 0xa7, 0x19, 0x90, 0x31, 0x3b, 0x69, 0x66, 0x29, 0x99, 0xf0, 0xac, 0x3e, - 0xe2, 0x88, 0x85, 0xd4, 0x12, 0x14, 0x47, 0x3b, 0x87, 0x94, 0x6a, 0x56, 0xc9, - 0x0b, 0x94, 0xff, 0x34, 0x91, 0xf3, 0xd5, 0xc7, 0x5b, 0xf4, 0x96, 0x5b, 0x17, - 0x11, 0xac, 0x09, 0x01, 0x28, 0x7e, 0x48, 0x46, 0x56, 0x56, 0xb2, 0xa7, 0x28, - 0xaf, 0xb9, 0x7d, 0x48, 0xaf, 0x39, 0xbb, 0x0d, 0xd3, 0x36, 0x1b, 0x49, 0x98, - 0x33, 0x26, 0x50, 0x45, 0xb5, 0x58, 0xbf, 0x22, 0x33, 0x0c, 0x04, 0x68, 0xf9, - 0x42, 0x2f, 0xdc, 0x8d, 0x21, 0xdd, 0x4c, 0x4b, 0xd0, 0x76, 0x17, 0x0d, 0x2d, - 0x48, 0xa5, 0xe5, 0x26, 0x70, 0x43, 0x6a, 0xaa, 0x77, 0x6e, 0xd2, 0x48, 0x2a, - 0xd7, 0x03, 0x03, 0xce, 0xbc, 0xbd, 0x05, 0x79, 0xd4, 0x04, 0x97, 0xfb, 0x07, - 0x03, 0x78, 0x57, 0x6d, 0xca, 0xba, 0x00, 0x8c, 0x17, 0x99, 0x68, 0xa7, 0xc4, - 0x86, 0x3f, 0xe0, 0x2c, 0x24, 0xa2, 0x91, 0x5b, 0x9a, 0x71, 0xdf, 0xcf, 0xd5, - 0xa0, 0x4b, 0x66, 0x7f, 0xba, 0xf3, 0xd4, 0xb3, 0xb9, 0x08, 0xb9, 0x82, 0x88, - 0x20, 0xdf, 0xec, 0xdd, 0x75, 0x37, 0x50, 0xb5, 0xf9, 0xd2, 0x21, 0x6e, 0x56, - 0xc6, 0x15, 0x11, 0x74, 0x7e, 0x86, 0x50, 0x86, 0x69, 0xe1, 0x00, 0xa3, 0xa7, - 0xb0, 0x9d, 0xb0, 0x39, 0x9d, 0xf3, 0x78, 0xf6, 0xdf, 0x53, 0x1b, 0xca, 0x4f, - 0xc5, 0x5a, 0x45, 0xe3, 0xc7, 0x56, 0x72, 0x08, 0x88, 0x05, 0x02, 0x5d, 0x27, - 0xf3, 0xc1, 0x77, 0x46, 0xba, 0xe1, 0x16, 0xc1, 0x5d, 0x9f, 0x47, 0x1f, 0x0f, - 0x62, 0x88, 0xa1, 0x50, 0x64, 0x7b, 0x2a, 0xfe, 0x9d, 0xf7, 0xcc, 0xcf, 0x01, - 0xf5, 0xcd, 0xe5, 0xf0, 0x46, 0x80, 0xbb, 0xfe, 0xd8, 0x7f, 0x6c, 0xf4, 0x29, - 0xfb, 0x27, 0xad, 0x6b, 0xab, 0xe7, 0x91, 0x76, 0x66, 0x11, 0xcf, 0x5b, 0xc2, - 0x0e, 0x48, 0xbe, 0xf1, 0x19, 0x25, 0x9b, 0x9b, 0x8a, 0x0e, 0x39, 0xc3, 0xdf, - 0x28, 0xcb, 0x95, 0x82, 0xea, 0x33, 0x86, 0x01, 0xcd, 0xc4, 0x81, 0xb3, 0x2f, - 0xb8, 0x2a, 0xde, 0xeb, 0xb3, 0xda, 0xde, 0x25, 0xd1, 0xa3, 0xdf, 0x20, 0xc3, - 0x7e, 0x71, 0x25, 0x06, 0xb5, 0xd9, 0x96, 0xc4, 0x9a, 0x9f, 0x0f, 0x30, 0xdd, - 0xcb, 0x91, 0xfe, 0x90, 0x04, 0xe1, 0xe8, 0x32, 0x94, 0xa6, 0xc9, 0x20, 0x3d, - 0x94, 0xe8, 0xdc, 0x2c, 0xbb, 0x44, 0x9d, 0xe4, 0x15, 0x50, 0x32, 0x60, 0x4e, - 0x47, 0x99, 0x70, 0x16, 0xb3, 0x04, 0xfd, 0x43, 0x7d, 0x82, 0x35, 0x04, 0x5e, - 0x25, 0x5a, 0x19, 0xb7, 0x43, 0xa0, 0xa9, 0xf2, 0xe3, 0x36, 0xb4, 0x4c, 0xae, - 0x30, 0x7b, 0xb3, 0x98, 0x7b, 0xd3, 0xe4, 0xe7, 0x77, 0xfb, 0xb3, 0x4c, 0x0a, - 0xb8, 0xcc, 0x3d, 0x67, 0x46, 0x6c, 0x0a, 0x88, 0xdd, 0x4c, 0xca, 0xd1, 0x8a, - 0x07, 0xa8, 0xd1, 0x06, 0x8d, 0xf5, 0xb6, 0x29, 0xe5, 0x71, 0x8d, 0x0f, 0x6d, - 0xf5, 0xc9, 0x57, 0xcf, 0x71, 0xbb, 0x00, 0xa5, 0x17, 0x8f, 0x17, 0x5c, 0xac, - 0xa9, 0x44, 0xe6, 0x35, 0xc5, 0x15, 0x9f, 0x73, 0x8e, 0x24, 0x02, 0xa2, 0xd2, - 0x1a, 0xa0, 0x81, 0xe1, 0x0e, 0x45, 0x6a, 0xfb, 0x00, 0xb9, 0xf6, 0x24, 0x16, - 0xc8, 0xb9, 0xc0, 0xf7, 0x22, 0x8f, 0x51, 0x07, 0x29, 0xe0, 0xbe, 0x3f, 0x30, - 0x53, 0x13, 0xd7, 0x7f, 0x73, 0x79, 0xdc, 0x2a, 0xf2, 0x48, 0x69, 0xc6, 0xc7, - 0x4e, 0xe4, 0x47, 0x14, 0x98, 0x86, 0x1d, 0x19, 0x2f, 0x0f, 0xf0, 0xf5, 0x08, - 0x28, 0x5d, 0xab, 0x6b, 0x6a, 0x36, 0xcc, 0xf7, 0xd1, 0x22, 0x56, 0xcc, 0x76, - 0xb9, 0x55, 0x03, 0x72, 0x0a, 0xc6, 0x72, 0xd0, 0x82, 0x68, 0xd2, 0xcf, 0x77, - 0x73, 0xb6, 0xba, 0x2a, 0x5f, 0x66, 0x48, 0x47, 0xbf, 0x70, 0x7f, 0x2f, 0xc1, - 0x0c, 0x98, 0xf2, 0xf0, 0x06, 0xec, 0x22, 0xcc, 0xb5, 0xa8, 0xc8, 0xb7, 0xc4, - 0x0c, 0x7c, 0x2d, 0x49, 0xa6, 0x63, 0x9b, 0x9f, 0x2c, 0xe3, 0x3c, 0x25, 0xc0, - 0x4b, 0xc4, 0x61, 0xe7, 0x44, 0xdf, 0xa5, 0x36, 0xb0, 0x0d, 0x94, 0xba, 0xdd, - 0xf4, 0xf4, 0xd1, 0x40, 0x44, 0xc6, 0x95, 0xa3, 0x38, 0x81, 0x47, 0x7d, 0xf1, - 0x24, 0xf0, 0xfc, 0xf2, 0x06, 0xa9, 0xfb, 0x2e, 0x65, 0xe3, 0x04, 0xcd, 0xbf, - 0x0c, 0x4d, 0x23, 0x90, 0x17, 0x0c, 0x13, 0x0a, 0xb8, 0x49, 0xc2, 0xf2, 0x2b, - 0x5c, 0xdd, 0x39, 0x21, 0x64, 0x0c, 0x8c, 0xf1, 0x97, 0x6a, 0xe1, 0x01, 0x0b, - 0x0d, 0xfd, 0x9c, 0xb2, 0x54, 0x3e, 0x45, 0xf9, 0x97, 0x49, 0xcc, 0x4d, 0x61, - 0xf2, 0xe8, 0xaa, 0xbf, 0xe9, 0x8b, 0xd9, 0x05, 0xfa, 0x39, 0x95, 0x1b, 0x33, - 0xea, 0x76, 0x9c, 0x45, 0xab, 0x95, 0x31, 0xc5, 0x72, 0x09, 0x86, 0x2a, 0xd1, - 0x2f, 0xd7, 0x6b, 0xa4, 0x80, 0x7e, 0x65, 0x41, 0x7b, 0x6c, 0xd1, 0x2f, 0xa8, - 0xec, 0x91, 0x6f, 0x01, 0x3e, 0xbb, 0x87, 0x06, 0xa9, 0x6e, 0xff, 0xed, 0xa0, - 0x6c, 0x4b, 0xe2, 0x4b, 0x04, 0x84, 0x63, 0x92, 0xe9, 0xd1, 0xe6, 0x93, 0x0e, - 0xae, 0x01, 0xfa, 0x21, 0xfb, 0xd7, 0x00, 0x58, 0x3f, 0xb5, 0x98, 0xb9, 0x2c, - 0x8f, 0x4e, 0xb8, 0xa6, 0x1a, 0xa6, 0x23, 0x5d, 0xb6, 0x0f, 0x28, 0x41, 0xcf, - 0x3a, 0x1c, 0x6a, 0xb5, 0x4c, 0x67, 0x06, 0x68, 0x44, 0x71, 0x1d, 0x09, 0x1e, - 0xb9, 0x31, 0xa1, 0xbd, 0x62, 0x81, 0xae, 0xdf, 0x2a, 0x0e, 0x8f, 0xab, 0x18, - 0x81, 0x72, 0x02, 0xa9, 0xbe, 0x06, 0x40, 0x2e, 0xd9, 0xcc, 0x72, 0x0c, 0x16, - 0xbf, 0xe8, 0x81, 0xe4, 0xdf, 0x42, 0x55, 0xe8, 0x7a, 0xfb, 0x7f, 0xc6, 0x2f, - 0x38, 0x11, 0x6b, 0xbe, 0x03, 0xcd, 0x8a, 0x3c, 0xb1, 0x1a, 0x27, 0xd5, 0x68, - 0x41, 0x47, 0x82, 0xf4, 0x7b, 0x1a, 0x44, 0xc9, 0x7c, 0x68, 0x04, 0x67, 0x69, - 0x4b, 0xc9, 0x70, 0x9d, 0x32, 0x91, 0x6c, 0x97, 0xe8, 0x00, 0x6c, 0xbb, 0x07, - 0xba, 0x0e, 0x41, 0x80, 0xa3, 0x73, 0x80, 0x38, 0xc3, 0x74, 0xc4, 0xcc, 0xe8, - 0xf3, 0x29, 0x59, 0xaf, 0xb2, 0x5f, 0x30, 0x3f, 0x58, 0x15, 0xc4, 0x53, 0x31, - 0x24, 0xac, 0xf9, 0xd1, 0x89, 0x40, 0xe7, 0x75, 0x22, 0xac, 0x5d, 0xc4, 0xb9, - 0x57, 0x0a, 0xae, 0x8f, 0x47, 0xb7, 0xf5, 0x7f, 0xd8, 0x76, 0x7b, 0xea, 0x1a, - 0x24, 0xae, 0x7b, 0xed, 0x65, 0xb4, 0xaf, 0xdc, 0x8f, 0x12, 0x78, 0xc3, 0x0e, - 0x2d, 0xb9, 0x8f, 0xd1, 0x72, 0x73, 0x0a, 0xc6, 0xbb, 0xed, 0x4f, 0x11, 0x27, - 0xcd, 0x32, 0xb0, 0x4a, 0x95, 0xb2, 0x05, 0x52, 0x6c, 0xfc, 0xb4, 0x01, 0xc4, - 0xd8, 0x1d, 0xba, 0x04, 0xa7, 0x02, 0x00, 0xfd, 0x6a, 0xcc, 0x0f, 0x22, 0x97, - 0x89, 0x16, 0x07, 0x22, 0xd1, 0x8a, 0x51, 0xab, 0xff, 0x33, 0x35, 0xf4, 0x3a, - 0x37, 0xdc, 0xa0, 0x78, 0x7e, 0x3e, 0xc9, 0xf6, 0x60, 0x52, 0x23, 0xd5, 0x3a, - 0x9a, 0xe0, 0xab, 0x90, 0x25, 0xb7, 0x3b, 0xc0, 0x3f, 0x7f, 0xac, 0x36, 0xc0, - 0x09, 0xa5, 0x6d, 0x4d, 0x95, 0xd1, 0xe8, 0x1d, 0x3b, 0x3e, 0xbc, 0xa7, 0xe5, - 0x4c, 0xc1, 0xa1, 0x2d, 0x12, 0x7b, 0x57, 0xc8, 0x13, 0x89, 0x76, 0xe7, 0x91, - 0x01, 0x3b, 0x01, 0x5f, 0x06, 0xa6, 0x24, 0xf5, 0x21, 0xb6, 0xee, 0x04, 0xec, - 0x98, 0x08, 0x93, 0xc7, 0xe5, 0xe0, 0x1a, 0x33, 0x62, 0x03, 0x59, 0x40, 0x94, - 0xf8, 0x28, 0x33, 0xd7, 0x44, 0x5f, 0xe2, 0xd0, 0x91, 0x30, 0xf6, 0x35, 0x11, - 0xda, 0x54, 0x83, 0x2d, 0xe9, 0x13, 0x6b, 0x39, 0xf4, 0x59, 0x9f, 0x5a, 0xa5, - 0xdf, 0xbb, 0x45, 0xda, 0x60, 0xcd, 0xce, 0xab, 0x7e, 0xef, 0xde, 0x89, 0xbe, - 0x63, 0xf3, 0xf7, 0xc0, 0xd2, 0x32, 0x48, 0x47, 0xcc, 0xe1, 0x40, 0x5d, 0xef, - 0x7c, 0x46, 0x9b, 0x0e, 0x27, 0x24, 0x94, 0xe5, 0xdf, 0x54, 0xf5, 0x68, 0x65, - 0x6c, 0xb9, 0xc8, 0x81, 0x8d, 0x92, 0xb7, 0x2b, 0x8b, 0xc3, 0x4d, 0xb7, 0xbb, - 0x31, 0x12, 0x48, 0x7e, 0x74, 0x6e, 0xef, 0xe4, 0xe8, 0x08, 0xbb, 0xb2, 0xc8, - 0x01, 0x67, 0x26, 0x4a, 0x28, 0x35, 0x95, 0xd8, 0x26, 0x29, 0xa5, 0x4d, 0x1b, - 0x5f, 0x57, 0x5e, 0x3e, 0x35, 0x60, 0x70, 0x2e, 0x4e, 0x0a, 0x11, 0x4a, 0xc7, - 0x17, 0xa7, 0xc5, 0x7f, 0x37, 0x80, 0xb3, 0x2f, 0xb1, 0xa6, 0xbe, 0x8d, 0x35, - 0x3f, 0xb6, 0x04, 0xcf, 0x5d, 0xc4, 0x94, 0xfb, 0xe7, 0x3d, 0xb2, 0x5e, 0x3d, - 0xba, 0xf7, 0xae, 0xd5, 0x04, 0xde, 0x93, 0x2a, 0xcb, 0x99, 0x17, 0xc2, 0x9b, - 0xe8, 0x2d, 0x7b, 0xcf, 0xbf, 0xc3, 0xf5, 0xef, 0xd9, 0xb8, 0x98, 0x8a, 0x53, - 0x93, 0xc4, 0xde, 0xda, 0xe6, 0xde, 0x88, 0x42, 0xc3, 0xc6, 0xe2, 0x97, 0x94, - 0xda, 0xc2, 0xee, 0x25, 0x32, 0xe8, 0x20, 0x9a, 0xa4, 0x89, 0x4c, 0xc6, 0xd7, - 0x28, 0x3c, 0xc0, 0x39, 0x5a, 0xc0, 0x35, 0x90, 0x03, 0x7e, 0x71, 0xe3, 0xe5, - 0x50, 0x72, 0x6d, 0x21, 0x0a, 0x2c, 0x68, 0x83, 0x42, 0x25, + 0x54, 0xf1, 0xf1, 0x77, 0x71, 0xcf, 0xb7, 0x50, 0x30, 0x72, 0x65, 0x57, 0x53, + 0xfa, 0x3f, 0x54, 0xec, 0xc5, 0x87, 0xe9, 0xf8, 0x3b, 0x58, 0x19, 0x16, 0x09, + 0x2d, 0xf2, 0x6e, 0x63, 0xe1, 0x89, 0x94, 0xcb, 0x0d, 0xb9, 0x1a, 0x0b, 0xbd, + 0xc7, 0xb6, 0x11, 0x9b, 0x32, 0x22, 0x2a, 0xdf, 0x5e, 0x61, 0xd8, 0xd8, 0xae, + 0x89, 0xda, 0xe4, 0x95, 0x4b, 0x54, 0x81, 0x3b, 0xb3, 0x3f, 0x08, 0xd5, 0x62, + 0xba, 0x51, 0x3f, 0xee, 0x1b, 0x09, 0xc0, 0xfc, 0xd5, 0x16, 0x05, 0x54, 0x19, + 0x47, 0x4d, 0xd7, 0xfd, 0xa0, 0x38, 0xa8, 0x9c, 0x84, 0xea, 0x7b, 0x94, 0x68, + 0x28, 0x7f, 0x0e, 0xb0, 0xc1, 0x0c, 0x4b, 0x13, 0x25, 0x20, 0x19, 0x4d, 0x3d, + 0x8d, 0x53, 0x51, 0xfc, 0x10, 0xd0, 0x9c, 0x15, 0xc8, 0xcc, 0x10, 0x1a, 0xa1, + 0x66, 0x3b, 0xbf, 0x17, 0xb8, 0x41, 0x11, 0xf3, 0x8b, 0xb4, 0x39, 0xf0, 0x73, + 0x53, 0xbd, 0xea, 0x35, 0x96, 0xd1, 0x5e, 0x71, 0x3e, 0x1e, 0x2e, 0x7d, 0x3f, + 0x1c, 0x38, 0x31, 0x35, 0xb4, 0x7f, 0xa7, 0xf8, 0x1f, 0x46, 0xdf, 0x7a, 0x90, + 0x2a, 0x40, 0x46, 0x99, 0xec, 0x91, 0x2f, 0x56, 0x56, 0xc3, 0x5b, 0x85, 0x76, + 0x3e, 0x4d, 0xe5, 0x83, 0xae, 0xca, 0xa1, 0xdf, 0xd5, 0xd2, 0x67, 0x7d, 0x9c, + 0x8f, 0xfe, 0xe8, 0x77, 0xf6, 0x3f, 0x40, 0xa5, 0xca, 0x0d, 0x67, 0xf6, 0xe5, + 0x54, 0x12, 0x47, 0x39, 0xf8, 0x05, 0xaf, 0x87, 0x6a, 0xee, 0xde, 0x53, 0xaa, + 0x8b, 0x0f, 0x8e, 0x56, 0x04, 0xa7, 0x3c, 0x30, 0xcb, 0xd0, 0x9d, 0xad, 0x96, + 0x3d, 0x6f, 0x8a, 0x5d, 0xcc, 0x40, 0xde, 0xf4, 0x07, 0x97, 0x34, 0x21, 0x13, + 0xba, 0x20, 0x6f, 0xae, 0x8e, 0xbe, 0x4f, 0x3b, 0xc3, 0xca, 0xf6, 0x92, 0x59, + 0xe4, 0x62, 0xef, 0xf9, 0xba, 0x8b, 0x3f, 0x4b, 0xfa, 0xa1, 0x30, 0x0c, 0x26, + 0x92, 0x5a, 0x87, 0x29, 0xcd, 0x32, 0x91, 0x5b, 0xfc, 0x96, 0x60, 0x86, 0xf0, + 0xd5, 0x56, 0x0b, 0xbe, 0x32, 0xa5, 0x98, 0xc2, 0x2a, 0xdf, 0xb4, 0x8c, 0xef, + 0x72, 0xba, 0x5d, 0x42, 0x87, 0xc0, 0xce, 0xfb, 0xac, 0xfd, 0x8c, 0xe1, 0x95, + 0xb4, 0x96, 0x3c, 0x34, 0xa9, 0x4b, 0xba, 0x7a, 0x17, 0x5d, 0xae, 0x4b, 0xbe, + 0x3e, 0xf4, 0x86, 0x3d, 0x53, 0x70, 0x89, 0x15, 0x09, 0x0f, 0x47, 0xa0, 0x68, + 0xe2, 0x27, 0x43, 0x3f, 0x9e, 0x49, 0xd3, 0xaa, 0x09, 0xe3, 0x56, 0xd8, 0xd6, + 0x6d, 0x0c, 0x01, 0x21, 0xe9, 0x1a, 0x3c, 0x4a, 0xa3, 0xf2, 0x7f, 0xa1, 0xb6, + 0x33, 0x96, 0xe2, 0xb4, 0x1d, 0xb9, 0x08, 0xfd, 0xab, 0x8b, 0x18, 0xcc, 0x73, + 0x04, 0xe9, 0x4e, 0x97, 0x05, 0x68, 0xf9, 0x42, 0x5c, 0x10, 0x91, 0x67, 0x8e, + 0xc6, 0xde, 0xbf, 0x06, 0xd7, 0x4a, 0xf5, 0x79, 0x4b, 0xc5, 0x0b, 0x29, 0xfd, + 0x0f, 0xda, 0xdd, 0xcc, 0x29, 0xcf, 0x44, 0x57, 0xbe, 0x36, 0xe1, 0xe0, 0x27, + 0x04, 0x63, 0xc0, 0xca, 0x4b, 0x31, 0x54, 0x81, 0x44, 0xe8, 0x88, 0x45, 0xbb, + 0xe5, 0x0c, 0x31, 0x22, 0xeb, 0xba, 0x01, 0x0b, 0x9e, 0xbf, 0xbb, 0x01, 0x1b, + 0xd6, 0xf0, 0xb7, 0x88, 0x05, 0x02, 0x1d, 0xa2, 0x42, 0x78, 0xb0, 0x78, 0x8a, + 0xee, 0xae, 0x7d, 0xb9, 0xa9, 0x07, 0xb6, 0x51, 0x6d, 0xc8, 0x0e, 0xe1, 0xfd, + 0x8d, 0x73, 0x02, 0x51, 0x89, 0x1c, 0xb9, 0x06, 0x88, 0x9a, 0x07, 0x3b, 0x0a, + 0x80, 0xbb, 0xfe, 0xd8, 0x7f, 0x6c, 0xf4, 0x29, 0xfb, 0x27, 0xad, 0x6b, 0xab, + 0xe7, 0x91, 0x76, 0x66, 0x11, 0xcf, 0x5b, 0xc2, 0x0e, 0x48, 0xbe, 0xf1, 0x19, + 0x25, 0x9b, 0x9b, 0x8a, 0x0e, 0x39, 0xfc, 0xe7, 0xbb, 0xad, 0x66, 0xc7, 0x78, + 0x58, 0x86, 0x06, 0x11, 0xb7, 0x6d, 0x8c, 0x75, 0x5e, 0x83, 0x35, 0x77, 0xca, + 0x84, 0x9e, 0xda, 0xa7, 0xd5, 0xf7, 0x51, 0x56, 0xaa, 0x4f, 0x27, 0x24, 0xb5, + 0xd9, 0x96, 0xc4, 0x9a, 0x9f, 0x0f, 0x30, 0xdd, 0xcb, 0x91, 0xfe, 0x90, 0x04, + 0xe1, 0xe8, 0x32, 0x94, 0xa6, 0xc9, 0x20, 0x3d, 0x94, 0xe8, 0xdc, 0x2c, 0xbb, + 0x44, 0x9d, 0xe4, 0x15, 0x50, 0x32, 0x60, 0x4e, 0x47, 0x99, 0x70, 0x16, 0xb3, + 0x04, 0xfd, 0x43, 0x7d, 0x82, 0x35, 0x04, 0x5e, 0x25, 0x5a, 0x19, 0xb7, 0x43, + 0xa0, 0xa9, 0xf2, 0xe3, 0x36, 0xb4, 0x4c, 0xae, 0x30, 0x7b, 0xb3, 0x98, 0x7b, + 0xd3, 0xe4, 0xe7, 0x77, 0xfb, 0xb3, 0x4c, 0x0a, 0xb8, 0xcc, 0x3d, 0x67, 0x46, + 0x6c, 0x0a, 0x88, 0xdd, 0x4c, 0xca, 0xd1, 0x8a, 0x07, 0xa8, 0xd1, 0x06, 0x8d, + 0xf5, 0xb6, 0x29, 0xe5, 0x71, 0x8d, 0x0f, 0x6d, 0xf5, 0xc9, 0x57, 0xcf, 0x71, + 0xbb, 0x00, 0xa5, 0x17, 0x8f, 0x17, 0x5c, 0xac, 0xa9, 0x44, 0xe6, 0x35, 0xc5, + 0x15, 0x9f, 0x73, 0x8e, 0x24, 0x02, 0xa2, 0xd2, 0x1a, 0xa0, 0x81, 0xe1, 0x0e, + 0x45, 0x6a, 0xfb, 0x00, 0xb9, 0xf6, 0x24, 0x16, 0xc8, 0xb9, 0xc0, 0xf7, 0x22, + 0x8f, 0x51, 0x07, 0x29, 0xe0, 0xbe, 0x3f, 0x30, 0x53, 0x13, 0xd7, 0x7f, 0x73, + 0x79, 0xdc, 0x2a, 0xf2, 0x48, 0x69, 0xc6, 0xc7, 0x4e, 0xe4, 0x47, 0x14, 0x98, + 0x86, 0x1d, 0x19, 0x2f, 0x0f, 0xf0, 0xf5, 0x08, 0x28, 0x5d, 0xab, 0x6b, 0x6a, + 0x36, 0xcc, 0xf7, 0xd1, 0x22, 0x56, 0xcc, 0x76, 0xb9, 0x55, 0x03, 0x72, 0x0a, + 0xc6, 0x72, 0xd0, 0x82, 0x68, 0xd2, 0xcf, 0x77, 0x73, 0xb6, 0xba, 0x2a, 0x5f, + 0x66, 0x48, 0x47, 0xbf, 0x70, 0x7f, 0x2f, 0xc1, 0x0c, 0x98, 0xf2, 0xf0, 0x06, + 0xec, 0x22, 0xcc, 0xb5, 0xa8, 0xc8, 0xb7, 0xc4, 0x0c, 0x7c, 0x2d, 0x49, 0xa6, + 0x63, 0x9b, 0x9f, 0x2c, 0xe3, 0x3c, 0x25, 0xc0, 0x4b, 0xc4, 0x61, 0xe7, 0x44, + 0xdf, 0xa5, 0x36, 0xb0, 0x0d, 0x94, 0xba, 0xdd, 0xf4, 0xf4, 0xd1, 0x40, 0x44, + 0xc6, 0x95, 0xa3, 0x38, 0x81, 0x47, 0x7d, 0xf1, 0x24, 0xf0, 0xfc, 0xf2, 0x06, + 0xa9, 0xfb, 0x2e, 0x65, 0xe3, 0x04, 0xcd, 0xbf, 0x0c, 0x4d, 0x23, 0x90, 0x17, + 0x0c, 0x13, 0x0a, 0xb8, 0x49, 0xc2, 0xf2, 0x2b, 0x5c, 0xdd, 0x39, 0x21, 0x64, + 0x0c, 0x8c, 0xf1, 0x97, 0x6a, 0xe1, 0x01, 0x0b, 0x0d, 0xfd, 0x9c, 0xb2, 0x54, + 0x3e, 0x45, 0xf9, 0x97, 0x49, 0xcc, 0x4d, 0x61, 0xf2, 0xe8, 0xaa, 0xbf, 0xe9, + 0x8b, 0xd9, 0x05, 0xfa, 0x39, 0x95, 0x1b, 0x33, 0xea, 0x76, 0x9c, 0x45, 0xab, + 0x95, 0x31, 0xc5, 0x72, 0x09, 0x86, 0x2a, 0xd1, 0x2f, 0xd7, 0x6b, 0xa4, 0x80, + 0x7e, 0x65, 0x41, 0x7b, 0x6c, 0xd1, 0x2f, 0xa8, 0xec, 0x91, 0x6f, 0x01, 0x3e, + 0xbb, 0x87, 0x06, 0xa9, 0x6e, 0xff, 0xed, 0xa0, 0x6c, 0x4b, 0xe2, 0x4b, 0x04, + 0x84, 0x63, 0x92, 0xe9, 0xd1, 0xe6, 0x93, 0x0e, 0xae, 0x01, 0xfa, 0x21, 0xfb, + 0xd7, 0x00, 0x58, 0x3f, 0xb5, 0x98, 0xb9, 0x2c, 0x8f, 0x4e, 0xb8, 0xa6, 0x1a, + 0xa6, 0x23, 0x5d, 0xb6, 0x0f, 0x28, 0x41, 0xcf, 0x3a, 0x1c, 0x6a, 0xb5, 0x4c, + 0x67, 0x06, 0x68, 0x44, 0x71, 0x1d, 0x09, 0x1e, 0xb9, 0x31, 0xa1, 0xbd, 0x62, + 0x81, 0xae, 0xdf, 0x2a, 0x0e, 0x8f, 0xab, 0x18, 0x81, 0x72, 0x02, 0xa9, 0xbe, + 0x06, 0x40, 0x2e, 0xd9, 0xcc, 0x72, 0x0c, 0x16, 0xbf, 0xe8, 0x81, 0xe4, 0xdf, + 0x42, 0x55, 0xe8, 0x7a, 0xfb, 0x7f, 0xc6, 0x2f, 0x38, 0x11, 0x6b, 0xbe, 0x03, + 0xcd, 0x8a, 0x3c, 0xb1, 0x1a, 0x27, 0xd5, 0x68, 0x41, 0x47, 0x82, 0xf4, 0x7b, + 0x1a, 0x44, 0xc9, 0x7c, 0x68, 0x04, 0x67, 0x69, 0x4b, 0xc9, 0x70, 0x9d, 0x32, + 0x91, 0x6c, 0x97, 0xe8, 0x00, 0x6c, 0xbb, 0x07, 0xba, 0x0e, 0x41, 0x80, 0xa3, + 0x73, 0x80, 0x38, 0xc3, 0x74, 0xc4, 0xcc, 0xe8, 0xf3, 0x29, 0x59, 0xaf, 0xb2, + 0x5f, 0x30, 0x3f, 0x58, 0x15, 0xc4, 0x53, 0x31, 0x24, 0xac, 0xf9, 0xd1, 0x89, + 0x40, 0xe7, 0x75, 0x22, 0xac, 0x5d, 0xc4, 0xb9, 0x57, 0x0a, 0xae, 0x8f, 0x47, + 0xb7, 0xf5, 0x7f, 0xd8, 0x76, 0x7b, 0xea, 0x1a, 0x24, 0xae, 0x7b, 0xed, 0x65, + 0xb4, 0xaf, 0xdc, 0x8f, 0x12, 0x78, 0xc3, 0x0e, 0x2d, 0xb9, 0x8f, 0xd1, 0x72, + 0x73, 0x0a, 0xc6, 0xbb, 0xed, 0x4f, 0x11, 0x27, 0xcd, 0x32, 0xb0, 0x4a, 0x95, + 0xb2, 0x05, 0x52, 0x6c, 0xfc, 0xb4, 0xc4, 0xe1, 0xcc, 0x95, 0x51, 0x75, 0xb3, + 0xe8, 0xde, 0x1f, 0x5d, 0x81, 0xb1, 0x86, 0x69, 0x69, 0x23, 0x50, 0xaa, 0xa1, + 0xa1, 0xd7, 0x97, 0x61, 0x75, 0x82, 0xe5, 0x4d, 0x7a, 0x5b, 0x57, 0xa6, 0x83, + 0xb3, 0x2f, 0xb1, 0x09, 0x80, 0x62, 0xda, 0xd7, 0xb0, 0xc2, 0xeb, 0x51, 0x8f, + 0x68, 0x62, 0xe8, 0x3d, 0xb2, 0x5e, 0x3d, 0xba, 0xf7, 0xae, 0xd5, 0x04, 0xde, + 0x93, 0x2a, 0xcb, 0x99, 0xd7, 0x35, 0x99, 0x2c, 0xe6, 0x3b, 0xc4, 0x69, 0xb4, + 0xfc, 0x9b, 0x1e, 0x7a, 0x01, 0x46, 0x9a, 0x99, 0x6b, 0xae, 0xee, 0x5e, 0xcd, + 0xac, 0x45, 0xca, 0x09, 0xa9, 0xc3, 0x8f, 0xf0, 0xcd, 0x59, 0x53, 0x7f, 0x0b, + 0xc9, 0x87, 0x31, 0x62, 0x03, 0x59, 0x66, 0x32, 0x9e, 0xf6, 0xfb, 0xe4, 0xaa, + 0x4c, 0xea, 0x9e, 0x04, 0xec, 0xf5, 0x35, 0x11, 0xda, 0x54, 0x83, 0x2d, 0xe9, + 0x13, 0x6b, 0x39, 0xf4, 0x59, 0x9f, 0x5a, 0x25, 0xb2, 0xfc, 0xe9, 0xd1, 0x3c, + 0xe3, 0x22, 0x28, 0xb8, 0xd8, 0x88, 0x89, 0xb8, 0x4f, 0x7d, 0xe4, 0x01, 0xa5, + 0xc2, 0xfd, 0xe5, 0xce, 0x8b, 0x38, 0xe9, 0x37, 0x25, 0x42, 0x9c, 0xb0, 0xca, + 0xb9, 0x92, 0xe5, 0xdf, 0x54, 0x1b, 0x07, 0x0b, 0x3a, 0x82, 0xd6, 0xe7, 0x7a, + 0x9a, 0x85, 0x9e, 0x46, 0xc3, 0x4d, 0xb7, 0xbb, 0x31, 0x12, 0x48, 0x7e, 0x74, + 0x6e, 0xef, 0xe4, 0xe8, 0x08, 0xbb, 0x32, 0xc2, 0x9b, 0xe8, 0x2d, 0x7b, 0xcf, + 0xbf, 0xc3, 0xf5, 0xef, 0xd9, 0xb8, 0x98, 0x8a, 0x53, 0x93, 0xc4, 0xde, 0xda, + 0xe6, 0xde, 0x88, 0x42, 0xc3, 0xc6, 0xe2, 0x97, 0x94, 0xda, 0xc2, 0xee, 0x25, + 0x35, 0xe8, 0x20, 0x9a, 0x07, 0x4b, 0x21, 0x6b, 0x70, 0x23, 0xfa, 0xdc, 0x2d, + 0x25, 0x94, 0x9c, 0x90, 0x03, 0x7e, 0x71, 0xe3, 0xe5, 0x50, 0x72, 0x6d, 0x21, + 0x0a, 0x2c, 0x68, 0x83, 0x42, 0xe5, 0x24, 0x40, 0x63, 0x5e, 0x9c, 0xc1, 0x4a, + 0xfe, 0x10, 0x10, 0x26, 0x21, 0xa9, 0xc9, 0xac, 0xcb, 0x78, 0x2e, 0x9e, 0x4a, + 0x5f, 0xa8, 0x7f, 0x0a, 0x95, 0x6f, 0x5b, 0x85, 0x50, 0x99, 0x60, 0x28, 0x5c, + 0x22, 0x62, 0x7c, 0x59, 0x48, 0x3a, 0x5a, 0x4c, 0x28, 0xcc, 0xe4, 0xb1, 0x56, + 0xe5, 0x51, 0x40, 0x6a, 0x7e, 0xe8, 0x35, 0x56, 0x56, 0xa2, 0x1e, 0x43, 0xe3, + 0x8c, 0xe1, 0x29, 0xfd, 0xad, 0xb7, 0x59, 0xed, 0xdf, 0xa0, 0x8f, 0x00, 0xfc, + 0x8e, 0x56, 0x7c, 0xef, 0x93, 0xc6, 0x79, 0x2d, 0x01, 0xdf, 0x05, 0xe6, 0xd5, + 0x80, 0xf4, 0xd5, 0xd4, 0x8d, 0xf0, 0x42, 0x45, 0x1a, 0x33, 0x59, 0x0d, 0x3e, + 0x8c, 0xf4, 0x9b, 0x26, 0x27, 0x21, 0x8f, 0x0c, 0x29, 0x2f, 0xa6, 0x6a, 0xda, + 0x94, 0x5f, 0xa5, 0x5b, 0xb2, 0x35, 0x48, 0xe3, 0x3a, 0x83, 0xa5, 0x62, 0x95, + 0x7a, 0x31, 0x49, 0xa9, 0x93, 0xcc, 0x47, 0x23, 0x62, 0x29, 0x87, 0x36, 0xa8, + 0xb7, 0x78, 0xd9, 0x7c, 0xe4, 0x23, 0x01, 0x3d, 0x64, 0xb3, 0x2c, 0xd1, 0x72, + 0xef, 0xa5, 0x51, 0xbf, 0x7f, 0x36, 0x8f, 0x04, 0xbd, 0xae, 0xc6, 0x09, 0x1a, + 0x30, 0x04, 0xa7, 0x57, 0x59, 0x8b, 0x80, 0x1d, 0xcf, 0x67, 0x5c, 0xb8, 0x3e, + 0x43, 0xa5, 0x3a, 0xe8, 0xb2, 0x54, 0xd3, 0x33, 0xbc, 0xda, 0x20, 0xd4, 0x81, + 0x7d, 0x34, 0x77, 0xab, 0xfb, 0xa2, 0x5b, 0xb8, 0x3d, 0xf5, 0x94, 0x9c, 0x12, + 0x6f, 0x14, 0x9b, 0x1d, 0x99, 0x34, 0x1e, 0x4e, 0x6f, 0x91, 0x20, 0xf4, 0xd4, + 0x1e, 0x62, 0x91, 0x85, 0x00, 0x2c, 0x72, 0xc0, 0x12, 0xc4, 0x14, 0xd2, 0x38, + 0x2a, 0x6d, 0x47, 0xc7, 0xb3, 0xde, 0xab, 0xa7, 0x70, 0xc4, 0x00, 0xca, 0x96, + 0xb2, 0x81, 0x4f, 0x6b, 0x26, 0xc3, 0xef, 0x17, 0x42, 0x9f, 0x1a, 0x98, 0xc8, + 0x5d, 0x83, 0xdb, 0x20, 0xef, 0xad, 0x48, 0xbe, 0x89, 0x96, 0xfb, 0x1b, 0xff, + 0x59, 0x1e, 0xff, 0xf3, 0x60, 0xfe, 0x11, 0x99, 0x05, 0x6c, 0x56, 0xe5, 0xfe, + 0xec, 0x61, 0xa7, 0xb8, 0xb9, 0xf6, 0x99, 0xd6, 0x01, 0x2c, 0x28, 0x49, 0x23, + 0x2f, 0x32, 0x9f, 0xef, 0x95, 0xc7, 0xaf, 0x37, 0x00, 0x98, 0xff, 0xe4, 0x91, + 0x8e, 0x0c, 0xa1, 0xdf, 0x47, 0xf2, 0x75, 0x86, 0x7b, 0x73, 0x9e, 0x0a, 0x51, + 0x4d, 0x32, 0x09, 0x32, 0x5e, 0x21, 0x70, 0x45, 0x92, 0x7b, 0x47, 0x9c, 0x1c, + 0xe2, 0xe5, 0xd5, 0x4f, 0x25, 0x48, 0x8c, 0xad, 0x15, 0x13, 0xe3, 0xf4, 0x4a, + 0x21, 0x26, 0x6c, 0xfd, 0x84, 0x16, 0x33, 0x32, 0x7d, 0xee, 0x6c, 0xf8, 0x10, + 0xfb, 0xf7, 0x39, 0x3e, 0x31, 0x7d, 0x9e, 0x53, 0xd1, 0xbe, 0x1d, 0x5a, 0xe7, + 0x83, 0x9b, 0x66, 0xb9, 0x43, 0xb9, 0xed, 0x18, 0xf2, 0xc5, 0x30, 0xe9, 0x75, + 0x42, 0x23, 0x32, 0xc3, 0x43, 0x9c, 0xce, 0x49, 0xa2, 0x9f, 0x2a, 0x33, 0x6a, + 0x48, 0x51, 0x26, 0x3c, 0x5e, 0x9b, 0xd1, 0x3d, 0x73, 0x11, 0x09, 0xe8, 0x44, + 0xb7, 0xf8, 0xc3, 0x92, 0xa5, 0xc1, 0xdc, 0xaa, 0x2a, 0xe5, 0xf5, 0x0f, 0xf6, + 0x3f, 0xab, 0x97, 0x65, 0xe0, 0x16, 0x70, 0x2c, 0x35, 0xa6, 0x7c, 0xd7, 0x36, + 0x4d, 0x3f, 0xab, 0x55, 0x2f, 0xb3, 0x49, 0xe3, 0x5c, 0x15, 0xc5, 0x02, 0x50, + 0x45, 0x3f, 0xd1, 0x8f, 0x7b, 0x85, 0x59, 0x92, 0x63, 0x2e, 0x2c, 0x76, 0xc0, + 0xfb, 0xf1, 0xef, 0x96, 0x3e, 0xa8, 0x0e, 0x32, 0x23, 0xde, 0x32, 0x77, 0xbc, + 0x55, 0x92, 0x51, 0x72, 0x58, 0x29, 0xec, 0x03, 0xf2, 0x13, 0xba, 0x89, 0x55, + 0xca, 0xb2, 0x82, 0x2f, 0xf2, 0x1a, 0x9b, 0x0a, 0x49, 0x04, 0xd6, 0x68, 0xfc, + 0xd7, 0x72, 0x24, 0xbd, 0xe3, 0xdd, 0x01, 0xf6, 0xff, 0xc4, 0x82, 0x8f, 0x6b, + 0x64, 0x23, 0x0b, 0x35, 0xc6, 0xa0, 0x49, 0x87, 0x34, 0x94, 0x27, 0x6e, 0xa1, + 0xd7, 0xed, 0x5e, 0x92, 0xcb, 0x4f, 0x90, 0xba, 0x83, 0xa9, 0xe4, 0x96, 0x01, + 0xb1, 0x94, 0x04, 0x2f, 0x29, 0x00, 0xd9, 0x9d, 0x31, 0x2d, 0x7b, 0x70, 0x50, + 0x8c, 0xf1, 0x76, 0x06, 0x6d, 0x15, 0x4d, 0xbe, 0x96, 0xef, 0x9d, 0x43, 0x67, + 0xe4, 0xc8, 0x40, 0xe4, 0xa1, 0x7b, 0x5e, 0x51, 0x22, 0xe8, 0xeb, 0xe2, 0x15, + 0x8a, 0x3c, 0x5f, 0x4c, 0xba, 0xe2, 0x1e, 0xa3, 0xfa, 0x1a, 0xe6, 0xc2, 0x5a, + 0x94, 0x62, 0xeb, 0xcb, 0xb0, 0xfd, 0x5f, 0x14, 0x55, 0x4b, 0xc9, 0x77, 0x47, + 0xc3, 0x3e, 0x34, 0xda, 0x90, 0xc8, 0x16, 0xd8, 0xd0, 0xd5, 0x0b, 0xfe, 0x37, + 0x61, 0x8c, 0x58, 0x12, 0x89, 0x14, 0x84, 0xfa, 0x25, 0x93, 0x00, 0x2c, 0xa6, + 0x9a, 0x7d, 0x6e, 0xdf, 0x06, 0x00, 0xc1, 0xc6, 0xa5, 0x34, 0x2d, 0x7c, 0x01, + 0xae, 0x9d, 0x8a, 0xd3, 0x07, 0x0c, 0x2b, 0x1a, 0x91, 0x57, 0x3a, 0xf5, 0xe0, + 0xc5, 0xe4, 0xcb, 0xbf, 0x4a, 0xcd, 0xc6, 0xb5, 0x4c, 0x92, 0x72, 0x20, 0x2d, + 0x99, 0x70, 0x25, 0x0c, 0x17, 0xc1, 0x03, 0x6f, 0x06, 0x08, 0x5c, 0x41, 0x85, + 0x8e, 0xd3, 0xa0, 0xc4, 0x81, 0x50, 0xbc, 0x69, 0x7e, 0x4a, 0x69, 0x5f, 0xef, + 0x33, 0x5f, 0x7a, 0xd0, 0x7e, 0x1a, 0x46, 0xdc, 0x76, 0x7f, 0xf8, 0x22, 0xdb, + 0x70, 0xe6, 0x66, 0x90, 0x80, 0xb9, 0x67, 0xa8, 0x36, 0x49, 0xd8, 0xb4, 0x57, + 0x54, 0xbf, 0x86, 0x79, 0x16, 0x12, 0xf3, 0x02, 0x4c, 0x2b, 0x86, 0xab, 0x98, + 0x52, 0xad, 0x98, 0xe6, 0x3b, 0x3a, 0x8b, 0x91, 0xe5, 0x0b, 0x49, 0x1c, 0x40, + 0xc3, 0x6d, 0xcf, 0x70, 0x89, 0x37, 0x11, 0xcb, 0x7d, 0xb8, 0xf3, 0x69, 0xae, + 0xeb, 0xd4, 0xd4, 0x8e, 0xc1, 0x48, 0xcb, 0x64, 0x97, 0x0e, 0x32, 0x23, 0xa9, + 0x1f, 0x71, 0xdf, 0xcf, 0x15, 0xdb, 0xf4, 0x7a, 0x3e, 0x17, 0xa5, 0xca, 0x78, + 0x14, 0xf1, 0x40, 0xac, 0x7f, 0x3b, 0xaa, 0x8c, 0x49, 0x5b, 0xf6, 0xdd, 0x17, + 0x84, 0xb4, 0x55, 0xf2, 0x19, 0xc9, 0x85, 0xd8, 0xe2, 0x31, 0x1d, 0x5f, 0x52, + 0x23, 0xd5, 0x99, 0x8f, 0x99, 0x1f, 0xb3, 0x7c, 0x22, 0x32, 0xc4, 0xa6, 0x38, + 0x8a, 0x36, 0xc0, 0x09, 0xa5, 0x6d, 0x4d, 0x95, 0xd1, 0xe8, 0x1d, 0x3b, 0x3e, + 0xbc, 0xa7, 0xe5, 0x0c, 0x59, 0x10, 0x38, 0x3a, 0xfe, 0x82, 0xfb, 0xac, 0x89, + 0x59, 0x4a, 0x8d, 0x19, 0xe8, 0xe7, 0x7d, 0xd9, 0xe3, 0x47, 0x53, 0x86, 0xb8, + 0x0a, 0x0b, 0x68, 0x52, 0x3a, 0xda, 0xa2, 0xef, 0xaa, 0x18, 0x43, 0x88, 0x56, + 0x49, 0x78, 0x0d, 0xe0, 0xca, 0x92, 0x9d, 0x66, 0xbb, 0xd0, 0x21, 0xb6, 0x02, + 0x5d, 0x97, 0x6a, 0xe1, 0xe9, 0xb2, 0x78, 0x29, 0xce, 0x2a, 0xc5, 0xef, 0xd0, + 0xb3, 0x99, 0x28, 0x63, 0xb2, 0xc1, 0x7b, 0x00, 0x78, 0x54, 0xdf, 0x7c, 0xf9, + 0x52, 0x40, 0x96, 0x25, 0x09, 0x30, 0x0e, 0x2d, 0xf7, 0x6c, 0x8f, 0x3a, 0x31, + 0xbb, 0x77, 0xfd, 0x86, 0xa2, 0xf8, 0xc1, 0xb9, 0x8e, 0xfa, 0x6f, 0xff, 0x9d, + 0xc3, 0x3c, 0x48, 0x02, 0x66, 0x76, 0xe1, 0x23, 0x7e, 0x3f, 0x44, 0xf1, 0xa5, + 0x68, 0xa0, 0xae, 0x2b, 0xb9, 0x34, 0xc8, 0x2c, 0x41, 0x42, 0xda, 0x69, 0xd1, + 0x2c, 0x27, ], txid: [ - 0x48, 0x9c, 0xea, 0x9c, 0x06, 0x30, 0x4d, 0x7d, 0x54, 0x8f, 0x7b, 0xc5, 0xb5, - 0x2e, 0x1d, 0x83, 0x31, 0x5b, 0x8f, 0x9f, 0x60, 0x98, 0x54, 0xd6, 0x11, 0xc9, - 0x0b, 0xba, 0x24, 0x45, 0xd1, 0xc7, + 0xda, 0x7e, 0x74, 0xb3, 0x24, 0x39, 0xd1, 0xec, 0xc5, 0xd4, 0xd5, 0x36, 0x6a, + 0xe3, 0x61, 0x0b, 0xb0, 0x79, 0x06, 0xdc, 0xc3, 0xb1, 0x50, 0x96, 0x0c, 0x7b, + 0x3b, 0xef, 0xfb, 0xb6, 0xef, 0x55, ], auth_digest: [ - 0x81, 0xc7, 0x82, 0x3f, 0x53, 0xe9, 0x2d, 0xaf, 0x14, 0xd5, 0x01, 0xc2, 0xd6, - 0xd8, 0x37, 0x27, 0x5d, 0xef, 0xd0, 0x6b, 0x98, 0x2b, 0x43, 0xc0, 0x70, 0x7f, - 0xc6, 0x31, 0x08, 0xa5, 0xb3, 0x62, + 0xa6, 0x1f, 0x9a, 0x0b, 0x73, 0x60, 0xbe, 0xf1, 0x09, 0xf9, 0x73, 0x2c, 0xe1, + 0x58, 0x93, 0x22, 0xd4, 0x0a, 0xf5, 0xec, 0xda, 0xd1, 0xff, 0x1e, 0x78, 0x71, + 0xe7, 0x99, 0x12, 0x55, 0xb0, 0x9a, ], amounts: vec![], script_pubkeys: vec![], transparent_input: None, sighash_shielded: [ - 0x48, 0x9c, 0xea, 0x9c, 0x06, 0x30, 0x4d, 0x7d, 0x54, 0x8f, 0x7b, 0xc5, 0xb5, - 0x2e, 0x1d, 0x83, 0x31, 0x5b, 0x8f, 0x9f, 0x60, 0x98, 0x54, 0xd6, 0x11, 0xc9, - 0x0b, 0xba, 0x24, 0x45, 0xd1, 0xc7, + 0xda, 0x7e, 0x74, 0xb3, 0x24, 0x39, 0xd1, 0xec, 0xc5, 0xd4, 0xd5, 0x36, 0x6a, + 0xe3, 0x61, 0x0b, 0xb0, 0x79, 0x06, 0xdc, 0xc3, 0xb1, 0x50, 0x96, 0x0c, 0x7b, + 0x3b, 0xef, 0xfb, 0xb6, 0xef, 0x55, ], sighash_all: None, sighash_none: None, @@ -6209,61 +6312,109 @@ pub mod zip_0244 { }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x40, - 0x63, 0x5e, 0x9c, 0xc1, 0x4a, 0xfe, 0x10, 0x00, 0x00, 0x01, 0xca, 0x62, 0xb0, - 0x5f, 0x04, 0xc5, 0xf7, 0x30, 0x3e, 0x42, 0x70, 0x1d, 0x75, 0xff, 0x12, 0x18, - 0x58, 0x57, 0x46, 0x1d, 0xe4, 0xd1, 0x7e, 0x46, 0xe3, 0x33, 0x6d, 0x55, 0x44, - 0xa8, 0xbc, 0x10, 0x7c, 0xef, 0x93, 0xc6, 0x79, 0x2d, 0x01, 0xdf, 0x05, 0xe6, - 0xd5, 0x80, 0xf4, 0xd5, 0xd4, 0x8d, 0xf0, 0x42, 0x45, 0x1a, 0x33, 0x59, 0x0d, - 0x3e, 0x8c, 0xf4, 0x9b, 0x26, 0x27, 0x21, 0x8f, 0x0c, 0x29, 0x2f, 0xa6, 0x6a, - 0xda, 0x94, 0x5f, 0xa5, 0x5b, 0xb2, 0x35, 0x48, 0xe3, 0x3a, 0x83, 0xa5, 0x62, - 0x95, 0x7a, 0x31, 0x49, 0xa9, 0x93, 0xcc, 0x47, 0x23, 0x62, 0x29, 0x87, 0x36, - 0xa8, 0xb7, 0x00, 0x60, 0x95, 0x4e, 0x8c, 0x03, 0x40, 0x01, 0x00, 0x10, 0x26, - 0x21, 0xa9, 0xc9, 0xac, 0xcb, 0x78, 0x2e, 0x9e, 0x4a, 0x5f, 0xa8, 0x7f, 0x0a, - 0x95, 0x6f, 0x5b, 0x85, 0x50, 0x99, 0x60, 0x28, 0x5c, 0x22, 0x62, 0x7c, 0x59, - 0x48, 0x3a, 0x5a, 0x4c, 0x78, 0xd9, 0x7c, 0xe4, 0x23, 0x01, 0x3d, 0x64, 0xb3, - 0x2c, 0xd1, 0x72, 0xef, 0xa5, 0x51, 0xbf, 0x7f, 0x36, 0x8f, 0x04, 0xbd, 0xae, - 0xc6, 0x09, 0x1a, 0x30, 0x04, 0xa7, 0x57, 0x59, 0x8b, 0x80, 0x1d, 0xcf, 0x67, - 0x5c, 0xb8, 0x3e, 0x43, 0xa5, 0x3a, 0xe8, 0xb2, 0x54, 0xd3, 0x33, 0xbc, 0xda, - 0x20, 0xd4, 0x81, 0x7d, 0x34, 0x77, 0xab, 0xfb, 0xa2, 0x5b, 0xb8, 0x3d, 0xf5, - 0x94, 0x9c, 0x12, 0x6f, 0x14, 0x9b, 0x1d, 0x99, 0x34, 0x1e, 0x4e, 0x6f, 0x91, - 0x20, 0xf4, 0xd4, 0x1e, 0x62, 0x91, 0x85, 0x00, 0x2c, 0x72, 0xc0, 0x12, 0xc4, - 0x14, 0xd2, 0x38, 0x2a, 0x6d, 0x47, 0xc7, 0xb3, 0xde, 0xab, 0xa7, 0x70, 0xc4, - 0x00, 0xca, 0x96, 0xb2, 0x81, 0x4f, 0x6b, 0x26, 0xc3, 0xef, 0x17, 0x42, 0x9f, - 0x1a, 0x98, 0xc8, 0x5d, 0x83, 0xdb, 0x20, 0xef, 0xad, 0x48, 0xbe, 0x89, 0x96, - 0xfb, 0x1b, 0xff, 0x59, 0x1e, 0xff, 0xf3, 0x60, 0xfe, 0x11, 0x99, 0x05, 0x6c, - 0x56, 0xe5, 0xfe, 0xec, 0x61, 0xa7, 0xb8, 0xb9, 0xf6, 0x99, 0xd6, 0x01, 0x2c, - 0x28, 0x49, 0x23, 0x2f, 0x32, 0x9f, 0xef, 0x95, 0xc7, 0xaf, 0x37, 0x00, 0x98, - 0xff, 0xe4, 0x91, 0x8e, 0x0c, 0xa1, 0xdf, 0x47, 0xf2, 0x75, 0x86, 0x7b, 0x73, - 0x9e, 0x0a, 0x51, 0x4d, 0x32, 0x09, 0x32, 0x5e, 0x21, 0x70, 0x45, 0x92, 0x7b, - 0x47, 0x9f, 0xfa, 0xc9, 0xff, 0x29, 0xbc, 0x74, 0x39, 0xda, 0xd9, 0xcd, 0xc9, - 0x55, 0xab, 0xd2, 0xad, 0x25, 0xe8, 0xda, 0x1a, 0x6a, 0x6d, 0x2e, 0xa9, 0x96, - 0x03, 0x20, 0x50, 0xb5, 0xe8, 0x04, 0x5c, 0x54, 0x91, 0xff, 0x16, 0xbe, 0x20, - 0xa0, 0x63, 0x48, 0xce, 0x02, 0x9a, 0x5f, 0xdd, 0x3f, 0xc7, 0x11, 0x69, 0x87, - 0x23, 0xde, 0xec, 0xd2, 0xdc, 0xee, 0x36, 0x0b, 0x43, 0xbc, 0x83, 0x3b, 0x00, - 0x02, 0x6b, 0x72, 0xd5, 0x3d, 0x57, 0x0b, 0x7e, 0xa9, 0x4c, 0x67, 0x1b, 0x51, - 0xe5, 0x61, 0x2b, 0x4b, 0xc4, 0xa7, 0x57, 0xd3, 0x25, 0x93, 0xe5, 0x49, 0xb9, - 0x49, 0x2e, 0xfa, 0x28, 0x80, 0xd6, 0x5a, 0x9a, 0x62, 0x4f, 0xda, 0xf5, 0x56, - 0x07, 0xd8, 0x1a, 0xf5, 0x91, 0xb3, 0xcd, 0xa4, 0xa5, 0xce, 0xa3, 0xaa, 0x80, - 0x55, 0xa6, 0xc6, 0x14, 0x88, 0xb7, 0xf1, 0x66, 0x48, 0x1c, 0xa0, 0x04, 0x00, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x9a, + 0x7d, 0xf7, 0x06, 0x40, 0x15, 0xc4, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0x06, 0x04, 0x40, 0x15, 0xc4, 0x03, 0x00, 0xff, + 0xff, 0xff, 0xff, 0x01, 0x28, 0x62, 0x65, 0x6e, 0x35, 0xba, 0x05, 0x00, 0x03, + 0x52, 0x00, 0x51, 0x00, 0x01, 0x3b, 0xec, 0xbe, 0x95, 0x9e, 0xcb, 0x91, 0xcf, + 0x57, 0x1a, 0x87, 0x0d, 0xfb, 0x53, 0xb1, 0x01, 0x02, 0x97, 0x9f, 0x9a, 0xc0, + 0x0f, 0xba, 0x00, 0x15, 0x17, 0xcb, 0x8a, 0x64, 0xe3, 0x63, 0x04, 0x01, 0xe5, + 0x1b, 0x01, 0x2a, 0xea, 0x94, 0x46, 0xa2, 0x10, 0x4e, 0x93, 0xf8, 0x15, 0xa0, + 0xb3, 0xa2, 0x9b, 0x45, 0x83, 0x14, 0xf3, 0xd8, 0xbe, 0x2b, 0x98, 0x23, 0xd3, + 0x42, 0xf4, 0x62, 0x13, 0x05, 0xe5, 0x79, 0xfc, 0xd3, 0xeb, 0x11, 0x97, 0xb4, + 0x58, 0xc5, 0xcf, 0x7a, 0x78, 0xe2, 0x3b, 0xca, 0xde, 0xbf, 0xbf, 0xf7, 0x9f, + 0x0a, 0x89, 0xb6, 0x17, 0xc6, 0x28, 0x36, 0x8c, 0x52, 0x3b, 0x04, 0x16, 0xfc, + 0xbb, 0x05, 0x24, 0xc9, 0xca, 0x50, 0x74, 0x15, 0x6c, 0xc5, 0xa5, 0xd6, 0xfe, + 0x1c, 0x99, 0x5e, 0xdc, 0x60, 0xa2, 0xf5, 0x50, 0x41, 0x1a, 0xa4, 0x1e, 0x3d, + 0xa3, 0xbd, 0xcf, 0x64, 0xbc, 0xf0, 0x4a, 0x05, 0x10, 0x57, 0x1b, 0x93, 0x6d, + 0x47, 0xe5, 0x5c, 0xec, 0x03, 0x30, 0xee, 0x8d, 0xfe, 0x73, 0x56, 0x34, 0x04, + 0xf0, 0x47, 0xd7, 0xf3, 0xa8, 0xa3, 0xd7, 0x74, 0x3b, 0xc5, 0x54, 0x95, 0x52, + 0x10, 0xf1, 0xeb, 0x0d, 0x08, 0x59, 0x9e, 0xa7, 0x7d, 0x5f, 0x97, 0x4d, 0x87, + 0x17, 0x6d, 0x37, 0xd9, 0x8b, 0x9c, 0x0a, 0xd4, 0x40, 0x40, 0x72, 0x09, 0xed, + 0x6a, 0x9f, 0x08, 0x46, 0x4d, 0x56, 0x55, 0x93, 0xe1, 0xa6, 0x3b, 0x93, 0x85, + 0x36, 0xb4, 0x92, 0x44, 0xe9, 0x7d, 0x88, 0x01, 0x73, 0xb6, 0x40, 0xf2, 0xdd, + 0xb7, 0x4d, 0x06, 0x8e, 0xcb, 0x46, 0xcf, 0x28, 0x9b, 0x7d, 0x89, 0x13, 0x07, + 0xbb, 0xa3, 0x70, 0x54, 0xcf, 0x91, 0xb3, 0x1f, 0xc8, 0x2f, 0x74, 0xd5, 0xfc, + 0xc0, 0x00, 0x94, 0x2e, 0xde, 0x91, 0x18, 0x25, 0xf5, 0x3f, 0xe6, 0x09, 0x68, + 0x6f, 0x46, 0x32, 0x23, 0xb1, 0xe9, 0xbc, 0x03, 0xbd, 0xe8, 0x95, 0xd1, 0x23, + 0x8f, 0xad, 0x04, 0xa3, 0xbf, 0xce, 0x68, 0xa0, 0x75, 0xe8, 0xa3, 0x7c, 0x0e, + 0x87, 0xbf, 0x46, 0xdd, 0x01, 0x55, 0x45, 0xf9, 0xb4, 0xfb, 0x0e, 0xec, 0x64, + 0x5f, 0xfc, 0xbb, 0xe0, 0xca, 0x5f, 0x8c, 0x56, 0x1b, 0x25, 0x7d, 0x52, 0xd6, + 0x02, 0xd8, 0xc9, 0x4c, 0x50, 0x28, 0x73, 0xa0, 0x1d, 0x92, 0x51, 0xd8, 0xc8, + 0x60, 0xc0, 0x41, 0x52, 0x5b, 0x3b, 0xf4, 0xe3, 0xa2, 0xeb, 0x92, 0x72, 0x81, + 0x5c, 0x75, 0x86, 0x76, 0x84, 0x28, 0xb4, 0xc2, 0xb2, 0x5e, 0x37, 0x45, 0xf0, + 0x09, 0xc5, 0xdc, 0xe2, 0x0b, 0x69, 0xd5, 0xd7, 0xc4, 0x3c, 0xeb, 0x73, 0x6b, + 0x68, 0x31, 0xe8, 0xc1, 0x10, 0xf1, 0x6c, 0xfd, 0xb3, 0xa4, 0x67, 0xe9, 0x41, + 0x4c, 0x00, 0xec, 0xf1, 0x37, 0x31, 0x50, 0x08, 0x94, 0x55, 0x56, 0x78, 0xc4, + 0x97, 0xfa, 0xba, 0x9a, 0x95, 0xd0, 0x1c, 0xc4, 0x64, 0x39, 0x0f, 0xc4, 0xa7, + 0x6b, 0xfa, 0x8b, 0x0e, 0x1c, 0x68, 0xa5, 0x25, 0xd7, 0x06, 0xd6, 0x60, 0x4b, + 0x23, 0x30, 0xb6, 0xb3, 0x48, 0x52, 0x15, 0xf6, 0x06, 0xf1, 0x88, 0x3a, 0x75, + 0x15, 0x88, 0xc7, 0xef, 0xa5, 0x06, 0xc3, 0xe8, 0xd0, 0xc6, 0x01, 0x92, 0xe8, + 0x47, 0x6b, 0xd1, 0x17, 0x5d, 0x95, 0x62, 0x08, 0x7b, 0xdb, 0x81, 0x8e, 0x66, + 0x21, 0x62, 0x86, 0xba, 0xfe, 0x47, 0xff, 0x4d, 0xbc, 0xce, 0xd5, 0x14, 0x44, + 0x48, 0x0a, 0x9a, 0x56, 0x73, 0xec, 0xe7, 0xfa, 0xc7, 0x3a, 0x0e, 0xd4, 0x1a, + 0xb0, 0x05, 0x17, 0x53, 0xa7, 0xca, 0xa8, 0x9b, 0xe3, 0x13, 0x9a, 0xfd, 0x97, + 0x93, 0xb3, 0xe0, 0x2f, 0x27, 0xf0, 0x40, 0x04, 0x65, 0x95, 0xac, 0xd4, 0x7b, + 0xf1, 0x3f, 0xd0, 0xda, 0x27, 0xf0, 0x9e, 0xda, 0x48, 0x03, 0x6d, 0x3e, 0xe4, + 0x37, 0xf2, 0xee, 0x8f, 0x86, 0x06, 0xea, 0x97, 0x34, 0x3c, 0x33, 0x58, 0x46, + 0x57, 0xf4, 0x6d, 0xba, 0x99, 0xdb, 0x5c, 0xfe, 0x6c, 0xa1, 0x76, 0xfa, 0xb7, + 0xb0, 0xf3, 0xbf, 0xa0, 0xab, 0x61, 0xe3, 0x40, 0xc3, 0x4e, 0xb9, 0xf1, 0x7c, + 0x7e, 0xc2, 0xbe, 0x03, 0xb1, 0x80, 0xf0, 0xbb, 0x6f, 0x43, 0x4c, 0x2a, 0x65, + 0x42, 0xe0, 0x0e, 0x84, 0x37, 0x3f, 0x4f, 0x46, 0x49, 0xcd, 0xa3, 0x2b, 0xf6, + 0x86, 0x66, 0x61, 0x43, 0xf6, 0x22, 0xaa, 0x48, 0x04, 0x60, 0xb5, 0xaf, 0xac, + 0x51, 0x86, 0x07, 0xcd, 0x9a, 0xf8, 0xbc, 0xd6, 0xb5, 0x8c, 0x30, 0x12, 0x73, + 0x16, 0xb2, 0x5d, 0x5e, 0xa7, 0xbf, 0x6b, 0x0c, 0xab, 0x85, 0x42, 0xff, 0x69, + 0xd9, 0xb2, 0xf1, 0x80, 0xbe, 0x12, 0xed, 0x75, 0x34, 0x4a, 0x39, 0x5a, 0xa1, + 0x0f, 0x85, 0x2f, 0x08, 0x3a, 0xd6, 0x4e, 0xf4, 0x0e, 0x9c, 0x03, 0x09, 0xe9, + 0xbb, 0xa5, 0x4b, 0x8c, 0xb3, 0x3c, 0x95, 0x49, 0x8a, 0x69, 0x53, 0x8d, 0x3a, + 0xe5, 0xb2, 0x5e, 0x24, 0x70, 0x98, 0x30, 0x6f, 0xa8, 0xc7, 0x4a, 0x8e, 0xe5, + 0xbc, 0xa9, 0x41, 0x53, 0x1d, 0x61, 0xaa, 0xc2, 0x7a, 0xab, 0x3d, 0xc5, 0x61, + 0x7d, 0x56, 0x06, 0xc9, 0x57, 0x7a, 0x2a, 0x83, 0x46, 0xe8, 0xd8, 0x5b, 0x32, + 0xb8, 0x50, 0x57, 0x75, 0x10, 0x8d, 0xc8, 0x5e, 0x2a, 0xde, 0x2e, 0xac, 0x1e, + 0x63, 0x6e, 0x1a, 0xf4, 0x05, 0x4c, 0x8b, 0x6f, 0x57, 0x63, 0x2d, 0xf2, 0x69, + 0xc3, 0x72, 0x3b, 0x32, 0x08, 0x72, 0xe4, 0xc5, 0x7b, 0x21, 0x83, 0x58, 0xdc, + 0x7e, 0x99, 0x05, 0xbb, 0x04, 0xed, 0xf9, 0x2e, 0xdf, 0x0d, 0xf6, 0x35, 0xf3, + 0xbf, 0x36, 0x1e, 0x57, 0xa1, 0x32, 0x96, 0xbd, 0x03, 0x63, 0x63, 0xbc, 0x4f, + 0x01, 0x00, 0xe1, 0x44, 0x7a, 0xf5, 0x08, 0x78, 0x72, 0xd6, 0x36, 0xe2, 0x75, + 0x18, 0xa9, 0x87, 0x6e, 0x15, 0xeb, 0x01, 0xf5, 0xe8, 0xde, 0xd8, 0x18, 0x92, + 0x51, 0x1c, 0xc2, 0x85, 0x1b, 0x00, 0xb8, 0x32, 0x71, 0x2a, 0x6d, 0x3b, 0xa5, + 0x66, 0x65, 0x17, 0xbc, 0xd3, 0x56, 0x76, 0x21, 0xa7, 0xcf, 0x84, 0x45, 0x58, + 0x96, 0x53, 0x26, 0x20, 0x20, 0xc3, 0x3b, 0xf7, 0x80, 0x31, 0xb8, 0xee, 0x07, + 0x07, 0xde, 0x07, 0x20, 0x68, 0xc1, 0x70, 0x57, 0x03, 0x27, 0xe6, 0xd9, 0xf5, + 0xc6, 0xdd, 0xc3, 0x35, 0x40, 0x2e, 0xfc, 0x54, 0x88, 0x62, 0xf5, 0xa0, 0x70, + 0x94, 0xfd, 0x42, 0x8a, 0x7b, 0xbc, 0x15, 0xd7, 0xb3, 0x8d, 0x05, 0x36, 0x2c, + 0x9c, 0xa9, 0x85, 0xf5, 0x8a, 0x76, 0x64, 0x7d, 0x2b, 0xe4, 0xc2, 0xcd, 0x6b, + 0x3d, 0x17, 0xd6, 0x87, 0x09, 0x71, 0xd7, 0xa0, 0x98, 0xba, 0xf7, 0x2c, 0x6f, + 0x6f, 0x12, 0x14, 0xcf, 0x1f, 0xaa, 0xe4, 0x88, 0xbd, 0x7d, 0xe2, 0x59, 0xd3, + 0x41, 0x5c, 0x2f, 0x0d, 0xde, 0xc7, 0x45, 0x70, 0x04, 0xf3, 0x57, 0x08, 0xd1, + 0xec, 0xcc, 0xcc, 0x0d, 0xf6, 0x5a, 0x04, 0x94, 0x3a, 0xd5, 0xcb, 0xc1, 0x3f, + 0x29, 0x5f, 0x00, 0x0f, 0xe0, 0x56, 0xc4, 0x0b, 0x2d, 0x88, 0xf2, 0x7d, 0xc3, + 0x4c, 0xfe, 0xb8, 0x03, 0xbe, 0x34, 0x83, 0xa9, 0xeb, 0xf9, 0xb5, 0xa9, 0x34, + 0xec, 0xcf, 0xef, 0x5a, 0xb5, 0xb5, 0x93, 0xa7, 0xb1, 0x5b, 0xef, 0x41, 0xd6, + 0xcf, 0xca, 0xa3, 0x1c, 0x69, 0x63, 0x83, 0xa6, 0x43, 0xac, 0x4f, 0xb8, 0xe0, + 0x3b, 0x3b, 0x5a, 0xf9, 0x9a, 0xae, 0x28, 0xb1, 0x1b, 0x3e, 0xb5, 0x41, 0x0d, + 0xc6, 0x7f, 0x6f, 0x63, 0x77, 0xcf, 0x84, 0x46, 0x75, 0x8b, 0x21, 0x07, 0x9a, + 0xb5, 0x7a, 0xb6, 0xaf, 0x7d, 0x64, 0x3b, 0x78, 0x4f, 0xa6, 0x0b, 0x00, ], txid: [ - 0xcc, 0x94, 0xf0, 0xc9, 0x2b, 0x25, 0x93, 0x51, 0xca, 0xa1, 0x04, 0x00, 0xd9, - 0x1c, 0xa9, 0x6f, 0x10, 0x41, 0x51, 0xfe, 0xdd, 0x22, 0xc2, 0x8d, 0xa7, 0xb8, - 0x4f, 0x4d, 0x2b, 0x4d, 0xe7, 0x83, + 0x48, 0xe6, 0x50, 0x72, 0xe4, 0x0f, 0xaa, 0xf6, 0x59, 0xd6, 0xfa, 0xdb, 0x2a, + 0x07, 0x73, 0x6b, 0x9a, 0x26, 0x58, 0x0c, 0x4e, 0xd3, 0x6d, 0xe7, 0x77, 0x3b, + 0x3a, 0xbd, 0x43, 0xec, 0x45, 0x81, ], auth_digest: [ - 0xf3, 0x16, 0xf0, 0xbb, 0x3f, 0xd8, 0x7d, 0x8e, 0x21, 0xb8, 0xd9, 0x4b, 0xbd, - 0x0d, 0x3d, 0xfd, 0xbf, 0xeb, 0xa5, 0x1b, 0xb5, 0x31, 0xfd, 0xd4, 0x4d, 0xa9, - 0x5d, 0x76, 0xca, 0xe4, 0xe9, 0x9b, + 0xb8, 0xe8, 0x4e, 0xc7, 0x97, 0xf4, 0x8b, 0x58, 0xc3, 0xba, 0xee, 0xaf, 0x20, + 0x1c, 0xf0, 0x01, 0x93, 0x6a, 0x5c, 0xef, 0xaa, 0x3e, 0x8a, 0xdf, 0x27, 0xdc, + 0x10, 0x0b, 0xd7, 0x68, 0xec, 0x9b, ], amounts: vec![], script_pubkeys: vec![], transparent_input: None, sighash_shielded: [ - 0xcc, 0x94, 0xf0, 0xc9, 0x2b, 0x25, 0x93, 0x51, 0xca, 0xa1, 0x04, 0x00, 0xd9, - 0x1c, 0xa9, 0x6f, 0x10, 0x41, 0x51, 0xfe, 0xdd, 0x22, 0xc2, 0x8d, 0xa7, 0xb8, - 0x4f, 0x4d, 0x2b, 0x4d, 0xe7, 0x83, + 0x48, 0xe6, 0x50, 0x72, 0xe4, 0x0f, 0xaa, 0xf6, 0x59, 0xd6, 0xfa, 0xdb, 0x2a, + 0x07, 0x73, 0x6b, 0x9a, 0x26, 0x58, 0x0c, 0x4e, 0xd3, 0x6d, 0xe7, 0x77, 0x3b, + 0x3a, 0xbd, 0x43, 0xec, 0x45, 0x81, ], sighash_all: None, sighash_none: None, @@ -6274,109 +6425,178 @@ pub mod zip_0244 { }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x0e, - 0x32, 0x23, 0xde, 0x32, 0xad, 0x21, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x01, 0xda, - 0xb5, 0xec, 0x1b, 0x05, 0x1c, 0x04, 0x00, 0x06, 0xf1, 0xea, 0x6a, 0x6a, 0x98, - 0xa0, 0xca, 0x30, 0xe6, 0x97, 0x81, 0xc4, 0x9c, 0xd3, 0xba, 0x27, 0x71, 0x02, - 0xfa, 0xff, 0x08, 0xb3, 0xaf, 0xfd, 0xc4, 0x82, 0x8f, 0x91, 0x02, 0xc9, 0xd8, - 0xfd, 0xd3, 0x06, 0x37, 0x8f, 0x02, 0x07, 0xe3, 0x6d, 0xa1, 0xd7, 0xed, 0x5e, - 0x92, 0xcb, 0x4f, 0x90, 0xba, 0x83, 0xa9, 0xe4, 0x96, 0x01, 0x31, 0xf1, 0x6f, - 0xcb, 0xb6, 0xf5, 0xd4, 0x20, 0x7e, 0xb0, 0x98, 0xb2, 0xb1, 0xfa, 0x0b, 0xc9, - 0xa0, 0x4c, 0x06, 0x97, 0x44, 0x1a, 0xd5, 0xd7, 0x03, 0xff, 0x7b, 0x13, 0x22, - 0x9a, 0x09, 0x75, 0xaa, 0x50, 0x22, 0xe8, 0xeb, 0xf5, 0xe4, 0x5c, 0xa3, 0x43, - 0x53, 0x6d, 0xd9, 0x22, 0x0a, 0xb4, 0xf8, 0xe5, 0xc2, 0x5a, 0x94, 0x62, 0xeb, - 0xcb, 0xb0, 0xfd, 0x5f, 0x14, 0x55, 0x4b, 0xc9, 0x77, 0x07, 0x8e, 0xff, 0xba, - 0x57, 0x02, 0x68, 0x4d, 0x45, 0x28, 0xf8, 0xc2, 0xbc, 0xf3, 0xec, 0x5d, 0x3b, - 0x95, 0x47, 0x53, 0x64, 0x61, 0x50, 0xfa, 0x26, 0x2c, 0x56, 0x17, 0x33, 0xf8, - 0x2e, 0x84, 0x29, 0xd6, 0xf1, 0x2f, 0x24, 0xfd, 0x36, 0x44, 0x96, 0xb3, 0xbe, - 0x08, 0x71, 0xca, 0x3d, 0xd9, 0x62, 0x53, 0x48, 0xa6, 0x14, 0xb5, 0x9b, 0xde, - 0x45, 0x88, 0x56, 0x49, 0xba, 0xe3, 0x6d, 0xe3, 0x4d, 0xef, 0x8f, 0xce, 0xc8, - 0x53, 0x43, 0x47, 0x5d, 0x97, 0x6a, 0xe1, 0xe9, 0xb2, 0x78, 0x29, 0xce, 0x2a, - 0xc5, 0xef, 0xd0, 0xb3, 0x99, 0xa8, 0xb4, 0x48, 0xbe, 0x65, 0x04, 0x29, 0x4e, - 0xe6, 0xb3, 0xc1, 0xc6, 0xa5, 0x34, 0x2d, 0x7c, 0x01, 0xae, 0x9d, 0x8a, 0xd3, - 0x07, 0x0c, 0x2b, 0x1a, 0x91, 0x57, 0x3a, 0xf5, 0xe0, 0xc5, 0xe4, 0xcb, 0xbf, - 0x4a, 0xcd, 0xc6, 0xb5, 0x4c, 0x92, 0x72, 0x20, 0x0d, 0x99, 0x70, 0x25, 0x0c, - 0x17, 0xc1, 0x03, 0x6f, 0x06, 0x08, 0x5c, 0x41, 0x85, 0x8e, 0xd3, 0xa0, 0xc4, - 0x81, 0x50, 0xbc, 0x69, 0x7e, 0x4a, 0x69, 0x5f, 0xef, 0x33, 0x5f, 0x7a, 0xd0, - 0x7e, 0x1a, 0x46, 0xdc, 0x76, 0x7f, 0xf8, 0x22, 0xdb, 0x70, 0xe6, 0x66, 0x90, - 0x80, 0xb9, 0x81, 0x6b, 0x22, 0x32, 0xc8, 0x1a, 0x4c, 0x66, 0xcc, 0x58, 0x6a, - 0xbf, 0xe1, 0xea, 0xa8, 0xca, 0x6c, 0xf4, 0x1f, 0xc3, 0xc3, 0xe6, 0xc7, 0xb8, - 0x86, 0xfb, 0x6d, 0xac, 0x9f, 0x48, 0x22, 0xb4, 0xfc, 0x6f, 0xff, 0x9d, 0x05, - 0x13, 0xd6, 0x1a, 0x21, 0xc8, 0x0a, 0x37, 0x76, 0x71, 0xd1, 0x35, 0xa6, 0x68, - 0xa0, 0xae, 0x2b, 0xb9, 0x34, 0xc8, 0x2c, 0x41, 0x42, 0xda, 0x69, 0xd1, 0x2c, - 0xa7, 0xde, 0x9a, 0x7d, 0xf7, 0x06, 0x40, 0x0e, 0xc7, 0x98, 0x78, 0xd8, 0x68, - 0xe1, 0x7e, 0x8f, 0x71, 0xea, 0x31, 0x49, 0x5a, 0xf8, 0x19, 0xa0, 0x16, 0xcc, - 0x41, 0x9e, 0x07, 0xc5, 0x01, 0xaa, 0x83, 0x09, 0xb2, 0xe6, 0xc8, 0x5b, 0x79, - 0xb2, 0x76, 0x37, 0x33, 0xa3, 0x7b, 0xbc, 0x04, 0x20, 0xd4, 0x25, 0x37, 0xb8, - 0x71, 0xb4, 0x29, 0x4a, 0x65, 0xd3, 0xe0, 0x55, 0xff, 0x71, 0x8d, 0xd9, 0xdc, - 0x8c, 0x75, 0xe7, 0xe5, 0xb2, 0xef, 0xe4, 0x42, 0x63, 0x73, 0x71, 0xb7, 0xc4, - 0x8f, 0x6e, 0xe9, 0x9e, 0x3e, 0xa3, 0x8a, 0x4b, 0x0f, 0x2f, 0x67, 0xfc, 0x2b, - 0x90, 0x8c, 0xda, 0x65, 0x7e, 0xae, 0x75, 0x4e, 0x03, 0x7e, 0x26, 0x2e, 0x9a, - 0x9f, 0x9b, 0xd7, 0xec, 0x42, 0x67, 0xed, 0x8e, 0x96, 0x93, 0x0e, 0x10, 0x84, - 0x78, 0x3c, 0x37, 0xd6, 0xf9, 0xdd, 0x15, 0xfd, 0x29, 0xf4, 0xcc, 0x47, 0x7e, - 0x66, 0xf1, 0x30, 0xd6, 0x30, 0x43, 0x0d, 0xcc, 0x01, 0x04, 0x89, 0x9b, 0x4f, - 0x9f, 0x46, 0xeb, 0x09, 0x0e, 0xf7, 0xfc, 0x90, 0xb4, 0x79, 0xab, 0xf6, 0x1f, - 0x93, 0x95, 0x5e, 0xe0, 0x0e, 0x6a, 0x18, 0x48, 0xf1, 0xab, 0x14, 0xad, 0x33, - 0x4f, 0x2b, 0x68, 0x03, 0x58, 0x08, 0xcd, 0xf1, 0xbb, 0x9e, 0x9d, 0x9a, 0x81, - 0x6b, 0xaf, 0x72, 0x8a, 0x95, 0x5b, 0x96, 0x0b, 0x77, 0x01, 0xfa, 0x62, 0x66, - 0x87, 0xdc, 0x3c, 0x9c, 0xba, 0x64, 0x63, 0x37, 0xb5, 0x3e, 0x29, 0x81, 0x6e, - 0x94, 0x82, 0xdd, 0xf5, 0x57, 0x8a, 0x87, 0x68, 0xaa, 0xe4, 0x77, 0xfc, 0xe4, - 0x10, 0xac, 0x2d, 0x5d, 0xe6, 0x09, 0x58, 0x61, 0xc1, 0x11, 0xd7, 0xfe, 0xb3, - 0xe6, 0xbb, 0x4f, 0xbb, 0x5a, 0x54, 0x95, 0x54, 0x95, 0x97, 0x27, 0x98, 0x35, - 0x0a, 0x25, 0x3f, 0x05, 0xf6, 0x6c, 0x2e, 0xcf, 0xcb, 0xc0, 0xed, 0x43, 0xf5, - 0xec, 0x2e, 0x6d, 0x8d, 0xba, 0x15, 0xa5, 0x12, 0x54, 0xd9, 0x7b, 0x18, 0x21, - 0x10, 0x7c, 0x07, 0xdd, 0x9a, 0x16, 0xef, 0x84, 0x06, 0xf9, 0x43, 0xe2, 0x82, - 0xb9, 0x5d, 0x4b, 0x36, 0x25, 0x30, 0xc9, 0x13, 0xd6, 0xba, 0x42, 0x1d, 0xf6, - 0x02, 0x7d, 0xe5, 0xaf, 0x1e, 0x47, 0x45, 0xd5, 0x86, 0x81, 0x06, 0x95, 0x4b, - 0xe6, 0xc1, 0x96, 0x27, 0x80, 0xa2, 0x94, 0x10, 0x72, 0xe9, 0x51, 0x31, 0xb1, - 0x67, 0x9d, 0xf0, 0x63, 0x76, 0x25, 0x04, 0x2c, 0x37, 0xd4, 0x8f, 0xfb, 0x15, - 0x2e, 0x5e, 0xbc, 0x18, 0x5c, 0x8a, 0x2b, 0x7d, 0x43, 0x85, 0xf1, 0xc9, 0x5a, - 0xf9, 0x37, 0xdf, 0x78, 0xdf, 0xd8, 0x75, 0x7f, 0xab, 0x43, 0x49, 0x68, 0xb0, - 0xb5, 0x7c, 0x66, 0x57, 0x44, 0x68, 0xf1, 0x60, 0xb4, 0x47, 0xac, 0x82, 0x21, - 0xe5, 0x06, 0x06, 0x76, 0xa8, 0x42, 0xa1, 0xc6, 0xb7, 0x17, 0x2d, 0xd3, 0x34, - 0x0f, 0x76, 0x40, 0x70, 0xab, 0x1f, 0xe0, 0x91, 0xc5, 0xc7, 0x4c, 0x95, 0xa5, - 0xdc, 0x04, 0x33, 0x90, 0x72, 0x3a, 0x4c, 0x12, 0x7d, 0xa1, 0x4c, 0xdd, 0xe1, - 0xdc, 0x26, 0x75, 0xa6, 0x23, 0x40, 0xb3, 0xe6, 0xaf, 0xd0, 0x52, 0x2a, 0x31, - 0xde, 0x26, 0xe7, 0xd1, 0xec, 0x3a, 0x9c, 0x8a, 0x09, 0x1f, 0xfd, 0xc7, 0x5b, - 0x7e, 0xcf, 0xdc, 0x7c, 0x12, 0x99, 0x5a, 0x5e, 0x37, 0xce, 0x34, 0x88, 0xbd, - 0x29, 0xf8, 0x62, 0x9d, 0x68, 0xf6, 0x96, 0x49, 0x24, 0x48, 0xdd, 0x52, 0x66, - 0x97, 0x47, 0x6d, 0xc0, 0x61, 0x34, 0x6e, 0xbe, 0x3f, 0x67, 0x72, 0x17, 0xff, - 0x9c, 0x60, 0xef, 0xce, 0x94, 0x3a, 0x00, 0x2e, 0xb9, 0xea, 0x07, 0xff, 0xce, - 0x04, 0x00, 0xc4, 0x9c, 0x60, 0x7f, 0xae, 0x20, 0xcb, 0x37, 0x80, 0xe3, 0x60, - 0x1f, 0xc0, 0x62, 0x58, 0x3b, 0x27, 0x44, 0xea, 0x88, 0x48, 0xb2, 0x62, 0x3a, - 0xc0, 0x7f, 0x8e, 0xf6, 0x1a, 0x81, 0xa3, 0x19, 0x30, 0xb8, 0xa1, 0xba, 0xf3, - 0x9a, 0x91, 0x9a, 0x7b, 0x60, 0xbc, 0x60, 0x4d, 0x63, 0x18, 0x5f, 0x75, 0x92, - 0x21, 0xd8, 0x47, 0xcc, 0x54, 0xa2, 0x27, 0x65, 0xa4, 0xc3, 0x34, 0x75, 0xb5, - 0x79, 0x1e, 0x9a, 0xf3, 0x27, 0x1f, 0xc8, 0xd9, 0x35, 0x06, 0x67, 0x09, 0x0d, - 0x81, 0x84, 0xec, 0x50, 0x52, 0x7d, 0x33, 0xa3, 0xa8, 0x40, 0x72, 0xb4, 0x73, - 0x7b, 0x32, 0xc7, 0x9a, 0x46, 0x40, 0x6c, 0x16, 0x9d, 0xf8, 0x59, 0xfb, 0x28, - 0x15, 0x4b, 0x01, 0x4c, 0xaf, 0xb7, 0xa3, 0xea, 0x7a, 0x21, 0x2e, 0x40, 0x17, - 0x2a, 0xf2, 0x18, 0xd7, 0xa1, 0xec, 0xfe, 0x65, 0xb4, 0xf7, 0x51, 0x00, 0x63, - 0x89, 0x83, 0xc1, 0x4d, 0xe4, 0x97, 0x47, 0x55, 0xda, 0xde, 0x80, 0x18, 0xc9, - 0xb8, 0xf4, 0x54, 0x3f, 0xf3, 0xc3, 0xfd, 0x86, 0x70, 0xc0, 0xbf, 0xbb, 0x3b, - 0x2c, 0x5d, 0xb8, 0x82, 0x3a, 0x6c, 0x8a, 0xe8, 0x2c, 0x45, 0xd1, 0x00, 0xbf, - 0x1c, 0xda, 0xdc, 0xb1, 0x11, 0x6e, 0xae, 0x3d, 0xb1, 0x00, 0x82, 0xd9, 0x3f, - 0xd2, 0x48, 0x04, 0x0d, 0xa9, 0x7d, 0x35, 0x43, 0x84, 0x3b, 0x86, 0xbf, 0x26, - 0x02, 0x1a, 0xfa, 0x92, 0x23, 0x9b, 0x87, 0x3d, 0xc6, 0xc3, 0x57, 0xea, 0xa8, - 0xaf, 0x4e, 0x26, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x6a, + 0xc4, 0xe4, 0x6c, 0xc0, 0xca, 0x87, 0x09, 0x00, 0x00, 0x00, 0x02, 0xd5, 0x28, + 0x42, 0x60, 0x65, 0xa2, 0xe0, 0x64, 0x61, 0x08, 0x55, 0xd7, 0x27, 0x41, 0x26, + 0x08, 0xa3, 0xfa, 0xb9, 0x79, 0xb1, 0x47, 0xf3, 0xe4, 0xbe, 0x7b, 0xbc, 0x89, + 0xcb, 0x48, 0x2c, 0xbf, 0x1e, 0x1b, 0x58, 0x0d, 0x35, 0xc3, 0xa9, 0x52, 0x93, + 0xaf, 0x26, 0x4a, 0x11, 0xbb, 0x2c, 0xfe, 0x79, 0x83, 0xa0, 0xa8, 0xee, 0x86, + 0x93, 0xdc, 0x39, 0xdc, 0xb6, 0x4e, 0x85, 0x63, 0xf7, 0x54, 0x16, 0x02, 0xc7, + 0x60, 0x4f, 0x75, 0x36, 0x97, 0x7a, 0x67, 0x8d, 0x90, 0xbe, 0x2e, 0xdd, 0x6f, + 0xec, 0x31, 0x53, 0x83, 0xa4, 0x81, 0x47, 0x5f, 0x87, 0xc7, 0x0a, 0x05, 0xcf, + 0x1f, 0xd9, 0xba, 0x3c, 0xea, 0xe7, 0xd3, 0x41, 0x9b, 0x1f, 0xca, 0x26, 0x5a, + 0x55, 0x59, 0xcf, 0x9e, 0x2d, 0x3b, 0x60, 0x97, 0x8d, 0x81, 0xa6, 0x78, 0xb9, + 0xed, 0x8e, 0x44, 0x86, 0xb4, 0xd1, 0x46, 0x09, 0xd6, 0xc1, 0x27, 0xc0, 0xc2, + 0xfb, 0xff, 0xe3, 0x0a, 0x60, 0xf7, 0xbf, 0xf1, 0xd9, 0xfb, 0x83, 0x00, 0xed, + 0x00, 0x92, 0x53, 0xba, 0x9b, 0x99, 0x6f, 0xa0, 0x52, 0x41, 0xb1, 0x0f, 0x5a, + 0xc9, 0xa8, 0x40, 0x8e, 0x92, 0x5b, 0x62, 0x6b, 0xb2, 0x1a, 0x47, 0x1f, 0xe3, + 0xbe, 0xde, 0x52, 0xbb, 0xa0, 0x97, 0xb2, 0xa9, 0x9a, 0x9b, 0xa5, 0xa8, 0x66, + 0x58, 0xc3, 0xfd, 0x9e, 0xc5, 0x5b, 0xfa, 0x9b, 0x32, 0x85, 0x67, 0x25, 0x4a, + 0xb3, 0x6d, 0x2c, 0x7f, 0x44, 0xd2, 0xc7, 0xe1, 0x3e, 0xb5, 0x4b, 0xeb, 0x70, + 0xea, 0x8f, 0xa9, 0x4b, 0x6c, 0x6e, 0x01, 0x2d, 0x79, 0xe3, 0xf5, 0x36, 0x89, + 0xc2, 0xb1, 0xa1, 0x8e, 0xaf, 0x2d, 0x47, 0x1d, 0x13, 0xc1, 0xab, 0x39, 0xd9, + 0x19, 0x4a, 0xe8, 0x43, 0xab, 0x1d, 0x28, 0xff, 0xa8, 0xf6, 0x9d, 0xc7, 0xe1, + 0x5c, 0xc3, 0x8b, 0x12, 0xe8, 0xfc, 0xd7, 0x92, 0x55, 0xb7, 0x21, 0x60, 0x56, + 0xd9, 0xed, 0xb7, 0x48, 0x2f, 0xb9, 0x8a, 0xa0, 0x33, 0xb6, 0x5e, 0x51, 0xc1, + 0xa0, 0x8b, 0x8a, 0x11, 0xd8, 0x4d, 0x04, 0x09, 0xb7, 0x34, 0xf4, 0x52, 0xaa, + 0xf0, 0xd6, 0xb1, 0x8f, 0x50, 0x25, 0x86, 0x83, 0xd3, 0xf9, 0xa7, 0x6d, 0x39, + 0x9f, 0xd0, 0x47, 0xee, 0xe2, 0x88, 0xbb, 0x45, 0x85, 0x85, 0x1d, 0xc9, 0x3e, + 0xcc, 0xc6, 0x23, 0x22, 0x92, 0x4c, 0xd1, 0x3b, 0x5d, 0xd4, 0xee, 0xd6, 0x6e, + 0xd8, 0xd9, 0x97, 0x2d, 0x77, 0x26, 0x29, 0xea, 0x64, 0x74, 0x2e, 0x54, 0x73, + 0x39, 0x81, 0xb0, 0x06, 0xc0, 0x62, 0x46, 0x8e, 0x4b, 0xd8, 0xf7, 0xdd, 0x9a, + 0xf6, 0x98, 0xf5, 0x2a, 0xe8, 0x14, 0x63, 0x4e, 0x81, 0xd7, 0xf3, 0xe0, 0xc4, + 0x20, 0x31, 0x7c, 0xac, 0xa9, 0xae, 0x48, 0x11, 0xc6, 0xaf, 0x06, 0xfe, 0x80, + 0xa8, 0xc0, 0x2a, 0xb7, 0xa0, 0x0e, 0x18, 0xe4, 0xa6, 0xaa, 0x1e, 0xa1, 0xb7, + 0x69, 0x45, 0xd2, 0x61, 0x5d, 0x43, 0xac, 0x11, 0x8b, 0x56, 0xc2, 0xf2, 0x96, + 0x0f, 0xe9, 0x3a, 0x02, 0x5f, 0x13, 0xec, 0x91, 0xff, 0xc6, 0xd2, 0xc3, 0x53, + 0x69, 0x9a, 0xbb, 0x09, 0x2d, 0xed, 0xc0, 0x65, 0xdb, 0x8f, 0xa2, 0x14, 0xdb, + 0xc4, 0x64, 0x66, 0xf8, 0x97, 0xb8, 0x8c, 0x58, 0xb3, 0x01, 0x52, 0x13, 0x3a, + 0xa3, 0x83, 0x1a, 0xf3, 0x7c, 0x74, 0xd9, 0x9e, 0x9e, 0x36, 0xff, 0x70, 0x11, + 0xd3, 0x23, 0x83, 0x05, 0x69, 0x15, 0x08, 0xa2, 0xc3, 0xa4, 0x3e, 0x75, 0x5d, + 0xc0, 0x81, 0xb5, 0x11, 0xd6, 0x48, 0x2a, 0x7d, 0xb6, 0x5f, 0xa9, 0x69, 0x9e, + 0xa8, 0x7f, 0xf4, 0x70, 0x99, 0xed, 0x36, 0x37, 0xdb, 0xb0, 0xa3, 0xd0, 0xef, + 0x79, 0x79, 0x6a, 0x8e, 0xf1, 0xe4, 0xd9, 0x4d, 0x42, 0xb4, 0xbc, 0x2b, 0x4a, + 0x03, 0x8a, 0xe6, 0xe4, 0x6b, 0x24, 0xcf, 0xc8, 0x41, 0x53, 0xd3, 0x1e, 0xaf, + 0x89, 0x50, 0x63, 0xa5, 0xca, 0x95, 0x9b, 0xe6, 0x3f, 0x37, 0xf2, 0xba, 0x0d, + 0x43, 0x23, 0x66, 0x73, 0x6d, 0x86, 0x32, 0xfc, 0xe0, 0x72, 0xb6, 0xae, 0x5b, + 0x6f, 0x3f, 0xd5, 0x9d, 0x3f, 0xaf, 0xf6, 0x38, 0x27, 0x5a, 0x99, 0x2f, 0xef, + 0xc8, 0x7e, 0x60, 0xd4, 0x4c, 0x2c, 0xad, 0xc2, 0xb5, 0xc4, 0x94, 0xe3, 0xe7, + 0x2e, 0xb4, 0x59, 0x7c, 0x96, 0xb4, 0x01, 0x67, 0x79, 0x9a, 0x90, 0x01, 0xa2, + 0xed, 0x36, 0x76, 0xa8, 0xb4, 0x03, 0xae, 0x25, 0xff, 0xd7, 0x72, 0xf7, 0x08, + 0x1e, 0x9a, 0x32, 0xbc, 0xc1, 0xc5, 0xe2, 0xed, 0xd4, 0xe2, 0xa6, 0x57, 0x6b, + 0x78, 0x3c, 0xce, 0x3a, 0xae, 0x11, 0xfa, 0x43, 0x22, 0x62, 0x54, 0x88, 0x56, + 0x18, 0x3e, 0xe6, 0x82, 0xd5, 0xdc, 0x31, 0xbe, 0xb3, 0x8f, 0x06, 0x1c, 0xbd, + 0xec, 0xa7, 0x02, 0x1a, 0x44, 0x4e, 0x2d, 0xd4, 0x17, 0xdf, 0x26, 0xdc, 0xd2, + 0x20, 0xf2, 0xb7, 0x31, 0x77, 0x2b, 0x43, 0x9e, 0x96, 0xd6, 0x14, 0xe1, 0xfa, + 0xcb, 0x48, 0x6c, 0x7a, 0x7d, 0x51, 0x71, 0xb1, 0xde, 0x35, 0x9f, 0x6a, 0xd3, + 0xa9, 0x6f, 0x64, 0x9c, 0x96, 0x91, 0x02, 0xa1, 0x96, 0x4f, 0xb4, 0xb4, 0xa1, + 0xa4, 0x27, 0x9c, 0x68, 0xe6, 0xc3, 0x72, 0xe4, 0x21, 0x87, 0xd7, 0x54, 0xe8, + 0x04, 0xa6, 0x16, 0x53, 0x09, 0x20, 0x69, 0xfb, 0x9b, 0x6d, 0x25, 0x26, 0x68, + 0x90, 0x80, 0x8b, 0x01, 0x5d, 0xf2, 0x8c, 0x80, 0x10, 0x65, 0xda, 0x6f, 0xeb, + 0xdc, 0x1a, 0x56, 0xbf, 0xd0, 0x02, 0x62, 0x5a, 0xcf, 0xaa, 0x53, 0x73, 0xfd, + 0xe1, 0x49, 0xc1, 0xcf, 0xc3, 0x64, 0x9b, 0x48, 0x69, 0x69, 0x6d, 0x44, 0xec, + 0xaf, 0x0a, 0x59, 0x95, 0x5e, 0x79, 0xe4, 0xec, 0x15, 0x2b, 0x19, 0x77, 0x71, + 0x69, 0x18, 0xe0, 0xcd, 0x4b, 0xb4, 0xa7, 0x88, 0x8d, 0xae, 0x93, 0x9a, 0xa6, + 0x1a, 0xda, 0x08, 0xd9, 0xb0, 0x8f, 0xd9, 0xc0, 0x68, 0x93, 0xbd, 0x02, 0xdb, + 0x9b, 0x61, 0x19, 0x1d, 0xfb, 0x13, 0x3b, 0xfa, 0xbe, 0x48, 0x58, 0xe4, 0x7a, + 0x4c, 0xc3, 0x2e, 0x41, 0x6e, 0xc0, 0x8b, 0x8a, 0xc7, 0x91, 0x5a, 0x43, 0x91, + 0x83, 0xd2, 0xba, 0x23, 0x58, 0x34, 0x99, 0xf0, 0xe4, 0xd2, 0x3a, 0x59, 0x76, + 0x9b, 0x00, 0xbf, 0x7c, 0xff, 0x6d, 0x34, 0x83, 0xaa, 0x33, 0xc3, 0xdc, 0x0e, + 0x17, 0x5e, 0x85, 0x9c, 0x4a, 0xeb, 0xb4, 0x8f, 0xaf, 0x58, 0xf1, 0xb6, 0x5d, + 0xca, 0x24, 0x97, 0xe0, 0x9a, 0x70, 0xaa, 0xd4, 0x86, 0x5f, 0x85, 0x71, 0x5a, + 0x28, 0x0e, 0x18, 0x6f, 0x3f, 0xc1, 0x74, 0x0d, 0x81, 0x84, 0xd3, 0x3e, 0x83, + 0x22, 0x16, 0x95, 0x21, 0xcd, 0xc1, 0x32, 0x21, 0x29, 0x39, 0xc8, 0x4a, 0x10, + 0x89, 0x64, 0xe2, 0xde, 0x74, 0xb6, 0xea, 0x55, 0xb4, 0xcb, 0x8f, 0x6f, 0x9b, + 0xee, 0x98, 0xb1, 0x0d, 0x41, 0x51, 0x09, 0x45, 0x5f, 0x48, 0xb7, 0x76, 0x08, + 0x2d, 0xc3, 0x0b, 0x4b, 0xc7, 0x34, 0x77, 0x07, 0x55, 0x11, 0x70, 0x03, 0x08, + 0x15, 0x8c, 0xe2, 0xf2, 0xf9, 0xbf, 0x0f, 0x69, 0x1b, 0x2c, 0xe5, 0x3e, 0x61, + 0x14, 0x2c, 0xb7, 0x40, 0xc1, 0x5b, 0x7b, 0x62, 0x3c, 0xf4, 0x8b, 0x3f, 0x7b, + 0xfe, 0xfa, 0x31, 0xbc, 0xdc, 0x66, 0x5c, 0x6d, 0x71, 0x23, 0xe9, 0x53, 0x50, + 0x81, 0x13, 0x75, 0x94, 0x7b, 0x05, 0x5a, 0x43, 0xdb, 0x07, 0xe0, 0x3f, 0x33, + 0x62, 0x7d, 0xf5, 0xc6, 0x38, 0xbf, 0xad, 0x95, 0x6d, 0xdc, 0x1e, 0xa7, 0xd7, + 0x62, 0x0a, 0x20, 0xf2, 0x79, 0x2f, 0x63, 0x81, 0x7a, 0x1c, 0xf3, 0x25, 0x80, + 0xd0, 0x42, 0x74, 0x23, 0x4a, 0xf2, 0xa5, 0x1b, 0x56, 0xbb, 0x68, 0xa2, 0x9e, + 0x43, 0xa9, 0x54, 0x14, 0x2b, 0xa4, 0xca, 0x68, 0x23, 0xbd, 0xe9, 0x05, 0x3d, + 0x72, 0xfd, 0xad, 0xbc, 0x61, 0xad, 0x59, 0x36, 0xc5, 0x3f, 0xdd, 0x75, 0x79, + 0x44, 0x6d, 0x11, 0xc4, 0x46, 0x07, 0xf4, 0x16, 0x30, 0xe4, 0xc0, 0x89, 0x15, + 0xe6, 0x31, 0x77, 0x15, 0x50, 0xe9, 0xce, 0x1f, 0xca, 0x2c, 0x63, 0xfe, 0x06, + 0xb7, 0x98, 0x9d, 0x58, 0x4f, 0xa7, 0xd7, 0x82, 0xa8, 0x8c, 0x1e, 0x7d, 0x64, + 0xb6, 0xfb, 0xf5, 0x5e, 0x35, 0x96, 0xaf, 0x9b, 0xcb, 0x75, 0x85, 0xf8, 0xc7, + 0xd3, 0xaa, 0x5c, 0x20, 0x82, 0xb2, 0x65, 0x24, 0x9d, 0xf0, 0x57, 0x01, 0xda, + 0xb0, 0x31, 0xc4, 0xba, 0xc1, 0xea, 0x26, 0x7a, 0x29, 0x96, 0xa2, 0x02, 0x8d, + 0x1e, 0x6a, 0x0f, 0x80, 0xa3, 0x84, 0x7c, 0x53, 0x1d, 0xba, 0x96, 0xee, 0x65, + 0xa2, 0x41, 0x89, 0xbd, 0x27, 0x12, 0xe4, 0x0e, 0x95, 0x96, 0x64, 0x98, 0x1e, + 0x58, 0xb2, 0xa4, 0xf9, 0x51, 0xef, 0x8f, 0x49, 0x7d, 0xff, 0xf2, 0xf2, 0xf2, + 0x71, 0xea, 0xb8, 0x9c, 0x62, 0x8e, 0x18, 0xb5, 0xfc, 0xb4, 0x38, 0x82, 0x53, + 0x7e, 0xaf, 0x6a, 0xd2, 0xa6, 0xb1, 0x75, 0x46, 0x33, 0xca, 0xa8, 0x6b, 0xf2, + 0xc7, 0x6f, 0x39, 0x93, 0x15, 0x4f, 0xc7, 0x3e, 0x6f, 0xbb, 0xa2, 0x21, 0x0c, + 0x27, 0x43, 0xf5, 0x30, 0xa4, 0x27, 0x84, 0x9a, 0x30, 0x1e, 0x00, 0xe0, 0x11, + 0x29, 0xf0, 0x3a, 0x46, 0x07, 0xf8, 0x7c, 0xbe, 0x07, 0x62, 0xc0, 0xb1, 0xc6, + 0x58, 0x55, 0xde, 0xba, 0x84, 0x22, 0xca, 0x4b, 0x88, 0xab, 0xee, 0xa6, 0xa4, + 0x38, 0x2c, 0xf1, 0x6c, 0xcd, 0x6d, 0xc7, 0xc3, 0x7c, 0x44, 0xe5, 0x49, 0xc4, + 0x53, 0x48, 0x19, 0xac, 0xd8, 0xbb, 0x0a, 0x02, 0xa5, 0xfa, 0x7a, 0x1c, 0x1d, + 0x38, 0x06, 0xfb, 0xc3, 0x40, 0x7f, 0xd7, 0xda, 0x93, 0xfd, 0x0d, 0xe6, 0x40, + 0x0d, 0x3a, 0xb8, 0x97, 0x74, 0x85, 0xcd, 0xdf, 0xbe, 0xd5, 0x93, 0x2f, 0x50, + 0x7b, 0x79, 0x94, 0x7a, 0xdb, 0x2f, 0xad, 0x37, 0x61, 0x5a, 0xa7, 0x17, 0xdb, + 0x5f, 0x29, 0x80, 0x99, 0xf2, 0x0f, 0x26, 0x3b, 0x35, 0x9a, 0x11, 0x51, 0xa6, + 0xb7, 0x5c, 0x01, 0x36, 0x5e, 0xb1, 0x54, 0xae, 0x42, 0x14, 0x0d, 0x6e, 0x10, + 0x34, 0x2f, 0x14, 0xf3, 0x4d, 0xc3, 0x3e, 0x07, 0xff, 0x0e, 0x4d, 0x1a, 0x6b, + 0xe3, 0x75, 0xb3, 0x2f, 0x84, 0xb9, 0x2e, 0x5d, 0x81, 0xeb, 0xb6, 0x39, 0xc4, + 0xf2, 0x7e, 0x71, 0x5a, 0xa4, 0x2c, 0xc7, 0x57, 0x07, 0xd4, 0xeb, 0xd1, 0xbb, + 0xfb, 0xe8, 0xf9, 0x0f, 0xc7, 0xc9, 0x53, 0xe7, 0xa9, 0x71, 0x5e, 0x65, 0xaf, + 0x82, 0x67, 0x37, 0x3d, 0x34, 0x51, 0x67, 0x4f, 0xf0, 0x84, 0xef, 0xd9, 0x2c, + 0xcf, 0x3b, 0xcc, 0x7a, 0xca, 0x14, 0x67, 0xb6, 0x32, 0x7e, 0x4f, 0x95, 0x22, + 0xb2, 0xcc, 0x57, 0x9a, 0x7a, 0x8f, 0xff, 0x7c, 0xa7, 0xcf, 0x14, 0x5d, 0xfc, + 0x13, 0xea, 0xfc, 0x34, 0x15, 0x3b, 0x2c, 0x3e, 0x8a, 0xfb, 0xe5, 0x34, 0x44, + 0xd0, 0xc7, 0x3b, 0x3b, 0xd5, 0xbc, 0x87, 0x0b, 0x01, 0xcd, 0x45, 0x79, 0x11, + 0xe3, 0x56, 0x31, 0x3f, 0xd1, 0xda, 0xfb, 0x4c, 0x81, 0x51, 0x63, 0x4a, 0x01, + 0xaf, 0xf7, 0xcf, 0x11, 0x6d, 0x43, 0x3c, 0x3d, 0x2b, 0x3a, 0xdd, 0xa9, 0xce, + 0xbe, 0x18, 0xf7, 0xd1, 0x72, 0x44, 0x3e, 0x5e, 0x7b, 0x5a, 0xc9, 0xab, 0xe8, + 0xdb, 0x22, 0x56, 0xd7, 0xeb, 0xe2, 0xff, 0x28, 0x02, 0x09, 0x39, 0x50, 0x38, + 0x70, 0x59, 0x7a, 0x60, 0x05, 0x18, 0xcc, 0x48, 0x06, 0x00, 0xb1, 0x24, 0x79, + 0xc5, 0xeb, 0xef, 0x99, 0x5f, 0x10, 0x02, 0x9f, 0x8b, 0x53, 0x0e, 0xeb, 0x3f, + 0xdc, 0x2e, 0x50, 0xe8, 0x75, 0x7f, 0xc0, 0xbb, 0x9e, 0x26, 0x30, 0x23, 0xdb, + 0x82, 0xf8, 0x78, 0xd9, 0xac, 0x7f, 0xfb, 0x0b, 0xd4, 0x39, 0x1d, 0xf1, 0xd8, + 0x79, 0x89, 0x9a, 0x3e, 0xf5, 0x7b, 0xfd, 0x0d, 0x1f, 0x77, 0x55, 0x64, 0x8e, + 0xdd, 0x85, 0xbb, 0x05, 0x2a, 0x6e, 0xdf, 0x71, 0xcd, 0x26, 0x28, 0xc9, 0x87, + 0x42, 0x9f, 0x36, 0xdc, 0x50, 0x5c, 0xcc, 0x43, 0xf3, 0x0e, 0x7a, 0x86, 0x9c, + 0x9e, 0x25, 0x5e, 0x2a, 0xf9, 0xfc, 0xf3, 0x0c, 0x12, 0x17, 0x96, 0xd1, 0x90, + 0x00, 0x09, 0x60, 0xcb, 0x6f, 0xe2, 0xf1, 0xbf, 0x24, 0x61, 0x18, 0xb4, 0x98, + 0xf3, 0x24, 0x7f, 0x9d, 0x48, 0x4c, 0x73, 0xcf, 0x09, 0x39, 0x30, 0x39, 0xe4, + 0x53, 0x26, 0xb8, 0xff, 0xff, 0xb3, 0xe7, 0xe6, 0x15, 0x9c, 0x46, 0x69, 0x9f, + 0x10, 0x07, 0x92, 0xd4, 0x67, 0x29, 0x50, 0x34, 0x8a, 0x90, 0x55, 0x2e, 0x45, + 0x94, 0x3b, 0xee, 0xac, 0xf0, 0x3f, 0x32, 0x16, 0xf9, 0x4e, 0x27, 0x4d, 0x63, + 0xd6, 0x37, 0xd9, 0xf1, 0x90, 0xe8, 0xa2, 0x66, 0xcd, 0xee, 0xf1, 0x53, 0x53, + 0x0b, 0xee, 0x5c, 0xb8, 0x35, 0x52, 0x60, 0x50, 0x5c, 0x2c, 0x2e, 0x5d, 0x99, + 0x0f, 0xff, 0xdc, 0x34, 0xec, 0x0f, 0xf7, 0x7b, 0x9a, 0x95, 0x58, 0x92, 0xc7, + 0x38, 0x96, 0x50, 0xa2, 0xd4, 0x2e, 0xc9, 0x2b, 0xe7, 0x23, 0xfe, 0xdf, 0x2f, + 0x2e, 0xde, 0x5a, 0x47, 0x2a, 0xa1, 0xe7, 0x4f, 0x33, 0xad, 0x41, 0x90, 0x15, + 0x44, 0xed, 0xbb, 0xe3, 0xac, 0x46, 0x4c, 0xf4, 0x39, 0x19, 0x60, 0x15, 0xf4, + 0xf2, 0x2a, 0xc2, 0xb8, 0xfc, 0x01, 0x49, 0x6b, 0xea, 0xb4, 0xd4, 0x59, 0x07, + 0xf4, 0x79, 0x81, 0x2a, 0x25, 0x94, 0x31, 0xa2, 0xcb, 0xc9, 0x3d, 0x4f, 0x3b, + 0x84, 0xe4, 0xdd, 0x36, 0x60, 0x20, 0x27, 0x3a, 0x67, 0x52, 0xe5, 0x01, 0xaf, + 0x6f, 0xf1, 0xb7, 0x8d, 0xdc, 0x81, 0x7e, 0x6e, 0xa3, 0x51, 0xd6, 0x00, 0x6b, + 0xec, 0xf8, 0xd2, 0xff, 0xb0, 0x39, 0x90, 0xf6, 0x77, 0x74, 0xa8, 0x1e, 0x05, + 0xb7, 0xf4, 0xbb, 0xad, 0x85, 0x77, 0xfa, 0x27, 0xc9, 0xde, 0x64, 0xe1, 0xb1, + 0x1d, 0xcf, 0x38, 0x4f, 0x59, 0x56, 0x44, 0x37, 0x48, 0x75, 0x5a, 0x9f, 0xc6, + 0xf2, 0xa0, 0x0b, 0x10, 0xc3, 0x65, 0x7e, 0xba, 0xc0, 0x3b, 0xfc, 0x0b, 0x58, + 0x7b, 0xef, 0x2f, 0x45, 0xec, 0x8a, 0xcd, 0xaa, 0x51, 0xc1, 0x43, 0xb0, 0xcb, + 0x25, 0xb9, 0x14, 0x2c, 0x61, 0xbd, 0x79, 0x0a, 0x80, 0xd7, 0xc2, 0x3f, 0x90, + 0xcc, 0x03, 0x49, 0x5b, 0x51, 0xe4, 0xd2, 0x84, 0x3e, 0x55, 0x7f, 0x9e, 0x25, + 0x45, 0x10, 0x8c, 0x6c, 0x67, 0x5d, 0x01, 0x2b, 0x55, 0xbe, 0x19, 0xbf, 0x59, + 0xb3, 0x19, 0x16, 0x86, 0x7c, 0x68, 0xb8, 0x77, 0xc4, 0x87, 0xc5, 0xd9, 0xe3, + 0x24, 0x3e, 0xb6, 0x4d, 0xcc, 0x94, 0x89, 0xd0, 0x25, 0xdf, 0x33, 0x94, 0x95, + 0x99, 0x67, 0xd6, 0xb9, 0xa4, 0x50, 0x15, 0x1a, 0x84, 0xe7, 0x88, 0x23, 0xb4, + 0x73, 0xc7, 0x51, 0xfd, 0x2d, 0xbd, 0x3d, 0xef, 0x38, 0x03, 0x95, 0x40, 0x08, + 0x63, 0x06, 0x02, 0x00, ], txid: [ - 0xa3, 0x54, 0xb0, 0x9c, 0x01, 0x97, 0x84, 0x78, 0x0a, 0x7f, 0xd7, 0xa1, 0xb5, - 0xbd, 0xc7, 0xf3, 0x36, 0xcf, 0x41, 0x82, 0x8a, 0xf1, 0x35, 0xf2, 0xdd, 0x97, - 0x94, 0x65, 0x48, 0x45, 0x3f, 0xf0, + 0xb6, 0x0e, 0x29, 0xf5, 0xa8, 0xe1, 0x20, 0x7a, 0x90, 0x81, 0xa0, 0x7f, 0x86, + 0x4d, 0xc3, 0xa5, 0x50, 0x50, 0xfb, 0x8d, 0xeb, 0xe9, 0xe1, 0xe9, 0x7f, 0x86, + 0x67, 0x45, 0xf0, 0xc5, 0xf0, 0xc5, ], auth_digest: [ - 0x50, 0xe4, 0x62, 0x5a, 0xd9, 0xcd, 0x1a, 0x79, 0x24, 0x3f, 0xf2, 0xd1, 0xed, - 0xcf, 0xba, 0xf1, 0x19, 0x9a, 0xdc, 0xd1, 0xd4, 0xe9, 0x9d, 0x50, 0x73, 0x43, - 0x3c, 0x66, 0xa4, 0xa6, 0x61, 0x15, + 0x22, 0xb9, 0x0a, 0x71, 0x0f, 0x89, 0x07, 0xbc, 0xb1, 0x4f, 0x44, 0xa3, 0x4a, + 0xe3, 0xf9, 0x9a, 0xcd, 0x39, 0x7a, 0xb2, 0x18, 0x70, 0x7f, 0xaf, 0x9c, 0x15, + 0xa6, 0xad, 0x39, 0x26, 0x75, 0x98, ], amounts: vec![], script_pubkeys: vec![], transparent_input: None, sighash_shielded: [ - 0xa3, 0x54, 0xb0, 0x9c, 0x01, 0x97, 0x84, 0x78, 0x0a, 0x7f, 0xd7, 0xa1, 0xb5, - 0xbd, 0xc7, 0xf3, 0x36, 0xcf, 0x41, 0x82, 0x8a, 0xf1, 0x35, 0xf2, 0xdd, 0x97, - 0x94, 0x65, 0x48, 0x45, 0x3f, 0xf0, + 0xb6, 0x0e, 0x29, 0xf5, 0xa8, 0xe1, 0x20, 0x7a, 0x90, 0x81, 0xa0, 0x7f, 0x86, + 0x4d, 0xc3, 0xa5, 0x50, 0x50, 0xfb, 0x8d, 0xeb, 0xe9, 0xe1, 0xe9, 0x7f, 0x86, + 0x67, 0x45, 0xf0, 0xc5, 0xf0, 0xc5, ], sighash_all: None, sighash_none: None, @@ -6387,30 +6607,33 @@ pub mod zip_0244 { }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x05, - 0x40, 0x65, 0x7f, 0xe3, 0x29, 0x14, 0x10, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x54, + 0xb2, 0x07, 0xb4, 0x1f, 0x63, 0x7b, 0x1d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xff, 0xff, 0xff, 0xff, 0x06, 0x04, 0xe3, 0x29, 0x14, 0x10, 0x00, 0xff, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0x06, 0x04, 0x1f, 0x63, 0x7b, 0x1d, 0x00, 0xff, + 0xff, 0xff, 0xff, 0x03, 0x10, 0xa4, 0xfe, 0xf5, 0x63, 0x14, 0x00, 0x00, 0x00, + 0x69, 0xb9, 0xc1, 0xe9, 0xdb, 0x6a, 0x04, 0x00, 0x05, 0x00, 0x00, 0x51, 0x00, + 0xac, 0x8f, 0x97, 0x7c, 0x48, 0xd6, 0x4b, 0x05, 0x00, 0x04, 0x52, 0x00, 0x53, + 0x63, 0x00, 0x00, 0x00, ], txid: [ - 0x7d, 0x3f, 0x83, 0x49, 0xa5, 0x1c, 0xb7, 0xd7, 0x97, 0x3e, 0x82, 0x16, 0x96, - 0xac, 0x6a, 0xc0, 0x5a, 0xc7, 0xb6, 0xde, 0x88, 0x18, 0xe8, 0x98, 0x36, 0x3d, - 0x19, 0x24, 0x93, 0x26, 0xbb, 0x16, + 0xdb, 0x52, 0x60, 0x61, 0xdd, 0x87, 0x24, 0x3a, 0xa9, 0xd7, 0xcd, 0x18, 0x2f, + 0x20, 0xb5, 0x72, 0xee, 0x34, 0x9b, 0x84, 0x58, 0xf6, 0x81, 0x6f, 0x90, 0x32, + 0xd0, 0xe2, 0xd5, 0x60, 0x96, 0x95, ], auth_digest: [ - 0xdd, 0x6d, 0x69, 0x23, 0xbd, 0xba, 0xa3, 0xd4, 0x3d, 0xd9, 0x78, 0xcd, 0xc9, - 0x7f, 0x61, 0x9d, 0x7f, 0x45, 0xae, 0x88, 0x50, 0x88, 0x94, 0x95, 0x2f, 0x68, - 0xd1, 0xb8, 0x76, 0x4c, 0x0a, 0x96, + 0xdc, 0x7c, 0xe6, 0x6d, 0x95, 0xbd, 0x18, 0x80, 0x91, 0x01, 0xb2, 0xd1, 0xa3, + 0x5b, 0x71, 0x1d, 0xf0, 0x43, 0x64, 0xe9, 0x50, 0xe0, 0x8b, 0xf9, 0x30, 0xc7, + 0x04, 0x11, 0x93, 0x0e, 0x4e, 0xbd, ], amounts: vec![], script_pubkeys: vec![], transparent_input: None, sighash_shielded: [ - 0x7d, 0x3f, 0x83, 0x49, 0xa5, 0x1c, 0xb7, 0xd7, 0x97, 0x3e, 0x82, 0x16, 0x96, - 0xac, 0x6a, 0xc0, 0x5a, 0xc7, 0xb6, 0xde, 0x88, 0x18, 0xe8, 0x98, 0x36, 0x3d, - 0x19, 0x24, 0x93, 0x26, 0xbb, 0x16, + 0xdb, 0x52, 0x60, 0x61, 0xdd, 0x87, 0x24, 0x3a, 0xa9, 0xd7, 0xcd, 0x18, 0x2f, + 0x20, 0xb5, 0x72, 0xee, 0x34, 0x9b, 0x84, 0x58, 0xf6, 0x81, 0x6f, 0x90, 0x32, + 0xd0, 0xe2, 0xd5, 0x60, 0x96, 0x95, ], sighash_all: None, sighash_none: None, @@ -6421,990 +6644,1019 @@ pub mod zip_0244 { }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x5d, - 0x98, 0xf6, 0x8b, 0xd3, 0x7d, 0xe8, 0x17, 0x01, 0x08, 0xcc, 0xd8, 0x8d, 0x0c, - 0x81, 0x1e, 0x4c, 0x31, 0xfb, 0xb4, 0x9f, 0x3a, 0x90, 0xbb, 0xd0, 0x5d, 0xce, - 0x62, 0xf3, 0x44, 0xe7, 0x07, 0x75, 0x93, 0x15, 0x9a, 0xe3, 0x50, 0x50, 0xb0, - 0x4c, 0x9e, 0x6b, 0x86, 0xbc, 0x07, 0x63, 0x00, 0x00, 0x00, 0x6a, 0xac, 0x00, - 0x18, 0xca, 0x5b, 0x69, 0x03, 0x58, 0x02, 0x2f, 0x30, 0xa4, 0xa2, 0x06, 0x00, - 0x00, 0xa9, 0x9f, 0x39, 0x53, 0x35, 0x48, 0x05, 0x00, 0x06, 0xac, 0x63, 0x51, - 0x63, 0x53, 0x51, 0x6c, 0x56, 0x73, 0xeb, 0x90, 0xb1, 0x03, 0x00, 0x02, 0x63, - 0x00, 0x00, 0x00, 0x04, 0xa5, 0x48, 0x20, 0xe4, 0x12, 0xed, 0x0e, 0x91, 0x30, - 0x8a, 0x87, 0x77, 0x73, 0xa9, 0x87, 0xf5, 0x8b, 0xef, 0x52, 0x4f, 0x26, 0x3a, - 0xf3, 0x71, 0x85, 0x23, 0x7a, 0x25, 0x7d, 0xb6, 0xac, 0x91, 0x18, 0xb3, 0xb3, - 0x5d, 0x2f, 0xf8, 0x5b, 0x6f, 0xf6, 0x3a, 0xb9, 0x22, 0x77, 0x33, 0xe2, 0xea, - 0x03, 0x16, 0xfc, 0xbb, 0x05, 0x24, 0xc9, 0xca, 0x50, 0x74, 0x15, 0x6c, 0xc5, - 0xa5, 0xd6, 0x3e, 0x8e, 0x01, 0x99, 0x8a, 0x4a, 0x9b, 0x12, 0x44, 0xee, 0x6c, - 0xdd, 0xfd, 0x26, 0x74, 0x84, 0x1b, 0x16, 0x65, 0x48, 0xdc, 0x1c, 0xa1, 0x9d, - 0x1a, 0xa9, 0xb8, 0xff, 0x73, 0x6c, 0x22, 0x47, 0xb4, 0xed, 0x8d, 0xfe, 0x73, - 0x69, 0x03, 0xd7, 0x56, 0x2c, 0xde, 0xa6, 0x9f, 0xa7, 0x3e, 0x2e, 0x19, 0xc5, - 0x54, 0x95, 0x52, 0x10, 0xf1, 0xeb, 0x0d, 0x08, 0x59, 0x9e, 0xa7, 0x7d, 0x5f, - 0x97, 0x0d, 0xf1, 0x25, 0x40, 0x18, 0xec, 0xfb, 0xfc, 0x08, 0xe7, 0xef, 0x3a, - 0xab, 0x3b, 0xea, 0xa4, 0x67, 0xce, 0x0c, 0xd2, 0xf7, 0x7f, 0x7b, 0x9d, 0xd2, - 0xef, 0xe9, 0x08, 0x29, 0xae, 0x8f, 0x28, 0x07, 0x7d, 0x88, 0x01, 0x73, 0xb6, - 0x40, 0xf2, 0xdd, 0xb7, 0x4d, 0x06, 0x8e, 0xcb, 0x46, 0xcf, 0x28, 0x9b, 0x7d, - 0x89, 0x13, 0x07, 0xbb, 0xa3, 0x70, 0x54, 0xcf, 0x91, 0xb3, 0x1f, 0xc8, 0x2f, - 0x74, 0xd5, 0xfc, 0xc0, 0x00, 0x94, 0x2e, 0xde, 0x91, 0x18, 0x25, 0xf5, 0x3f, - 0xe6, 0x09, 0x68, 0x6f, 0x46, 0x32, 0x23, 0xb1, 0xe9, 0xbc, 0x03, 0xbd, 0xe8, - 0x95, 0xd1, 0x23, 0x8f, 0xad, 0x04, 0xa3, 0xbf, 0xce, 0x68, 0xa0, 0x75, 0xe8, - 0xa3, 0x7c, 0x0e, 0x87, 0xbf, 0x46, 0xdd, 0x01, 0x55, 0x45, 0xf9, 0xb4, 0xfb, - 0x0e, 0xec, 0x64, 0x5f, 0xfc, 0xbb, 0xe0, 0xca, 0x5f, 0x8c, 0x56, 0x1b, 0x25, - 0x7d, 0x52, 0xd6, 0x02, 0xd8, 0xc9, 0x4c, 0x50, 0x28, 0x73, 0xa0, 0x1d, 0x92, - 0x51, 0xd8, 0xc8, 0x60, 0xc0, 0x41, 0x52, 0x5b, 0x3b, 0xf4, 0xe3, 0xa2, 0xeb, - 0x92, 0x72, 0x81, 0x5c, 0x75, 0x86, 0x76, 0x84, 0x28, 0xb4, 0xc2, 0xb2, 0x5e, - 0x37, 0x45, 0xf0, 0x09, 0xc5, 0xdc, 0xe2, 0x0b, 0x69, 0xd5, 0xd7, 0xc4, 0x3c, - 0xeb, 0x73, 0x6b, 0x68, 0x31, 0xe8, 0xc1, 0x10, 0xf1, 0x6c, 0xfd, 0xb3, 0xa4, - 0x67, 0xe9, 0x41, 0x4c, 0x00, 0xec, 0xf1, 0x37, 0x31, 0x50, 0x08, 0x94, 0x55, - 0x56, 0x78, 0xc4, 0x97, 0xfa, 0xba, 0x9a, 0x95, 0xd0, 0x1c, 0xc4, 0x64, 0x39, - 0x0f, 0xc4, 0xa7, 0x6b, 0xfa, 0x8b, 0x0e, 0x1c, 0x68, 0xa5, 0x25, 0xd7, 0x06, - 0xd6, 0x60, 0x4b, 0x23, 0x30, 0xb6, 0xb3, 0x48, 0x52, 0x15, 0xf6, 0x06, 0xf1, - 0x88, 0x3a, 0x75, 0x15, 0x88, 0xc7, 0xef, 0xa5, 0x06, 0xc3, 0xe8, 0xd0, 0xc6, - 0x01, 0x92, 0xe8, 0x47, 0x6b, 0xd1, 0x17, 0x5d, 0x95, 0x62, 0x08, 0x7b, 0xdb, - 0x81, 0x8e, 0x66, 0x21, 0x62, 0x86, 0xba, 0xfe, 0x47, 0xff, 0x4d, 0xbc, 0xce, - 0xd5, 0x14, 0x44, 0x48, 0x0a, 0x9a, 0x56, 0x73, 0xec, 0xe7, 0xfa, 0xc7, 0x3a, - 0x0e, 0xd4, 0x1a, 0xb0, 0x05, 0x17, 0x53, 0xa7, 0xca, 0xa8, 0x9b, 0xe3, 0x13, - 0x9a, 0xfd, 0x97, 0x93, 0xb3, 0xe0, 0x2f, 0x27, 0xf0, 0x40, 0x04, 0x65, 0x95, - 0xac, 0xd4, 0x7b, 0xf1, 0x3f, 0xd0, 0xda, 0x27, 0xf0, 0x9e, 0xda, 0x48, 0x03, - 0x6d, 0x3e, 0xe4, 0x37, 0xf2, 0xee, 0x8f, 0x86, 0x06, 0xea, 0x97, 0x34, 0x3c, - 0x33, 0x58, 0x46, 0x57, 0xf4, 0x6d, 0xba, 0x99, 0xdb, 0x5c, 0xfe, 0x6c, 0xa1, - 0x76, 0xfa, 0xb7, 0xb0, 0xf3, 0xbf, 0xa0, 0xab, 0x61, 0xe3, 0x40, 0xc3, 0x4e, - 0xb9, 0xf1, 0x7c, 0x7e, 0xc2, 0xbe, 0x03, 0xb1, 0x80, 0xf0, 0xbb, 0x6f, 0x43, - 0x4c, 0x2a, 0x65, 0x42, 0xe0, 0x0e, 0x84, 0x37, 0x3f, 0x4f, 0x46, 0x49, 0xcd, - 0xa3, 0x2b, 0xf6, 0x86, 0x66, 0x61, 0x43, 0xf6, 0x22, 0xaa, 0x48, 0x04, 0x60, - 0xb5, 0xaf, 0xac, 0x51, 0x86, 0x07, 0xcd, 0x9a, 0xf8, 0xbc, 0xd6, 0xb5, 0x8c, - 0x30, 0x12, 0x73, 0x16, 0xb2, 0x5d, 0x5e, 0xa7, 0xbf, 0x6b, 0x0c, 0xab, 0x85, - 0x42, 0xff, 0x69, 0xd9, 0xb2, 0xf1, 0x80, 0xbe, 0x12, 0xed, 0x75, 0x34, 0x4a, - 0x39, 0x5a, 0xa1, 0x0f, 0x85, 0x2f, 0x08, 0x3a, 0xd6, 0x4e, 0xf4, 0x0e, 0x9c, - 0x03, 0x09, 0xe9, 0xbb, 0xa5, 0x4b, 0x8c, 0xb3, 0x3c, 0x95, 0x49, 0x8a, 0x69, - 0x53, 0x8d, 0x3a, 0xe5, 0xb2, 0x5e, 0x24, 0x70, 0x98, 0x30, 0x6f, 0xa8, 0xc7, - 0x4a, 0x8e, 0xe5, 0xbc, 0xa9, 0x41, 0x53, 0x1d, 0x61, 0xaa, 0xc2, 0x7a, 0xab, - 0x3d, 0xc5, 0x61, 0x7d, 0x56, 0x06, 0xc9, 0x57, 0x7a, 0x2a, 0x83, 0x46, 0xe8, - 0xd8, 0x5b, 0x32, 0xb8, 0x50, 0x57, 0x75, 0x10, 0x8d, 0xc8, 0x5e, 0x2a, 0xde, - 0x2e, 0xac, 0x1e, 0x63, 0x6e, 0x1a, 0xf4, 0x05, 0x4c, 0x8b, 0x6f, 0x57, 0x63, - 0x2d, 0xf2, 0x69, 0xc3, 0x72, 0x3b, 0x32, 0x08, 0x72, 0xe4, 0xc5, 0x7b, 0x21, - 0x83, 0x58, 0xdc, 0x7e, 0x99, 0x05, 0xbb, 0x04, 0xed, 0xf9, 0x2e, 0xdf, 0x0d, - 0xf6, 0x35, 0xf3, 0xbf, 0x36, 0x1e, 0x57, 0xa1, 0x32, 0x96, 0xe1, 0x44, 0x7a, - 0xf5, 0x08, 0x78, 0x72, 0xd6, 0x36, 0xe2, 0x75, 0x18, 0xa9, 0x87, 0x6e, 0x15, - 0xeb, 0x01, 0xf5, 0xe8, 0xde, 0xd8, 0x18, 0x92, 0x51, 0x1c, 0xc2, 0x85, 0x1b, - 0x00, 0xb8, 0x32, 0x71, 0x2a, 0x6d, 0x3b, 0xa5, 0x66, 0x65, 0x17, 0xbc, 0xd3, - 0x56, 0x76, 0x21, 0xa7, 0xcf, 0x84, 0x45, 0x58, 0x96, 0x53, 0x26, 0x20, 0x20, - 0xc3, 0x3b, 0xf7, 0x80, 0x31, 0xb8, 0xee, 0x07, 0x07, 0xde, 0x07, 0x20, 0x68, - 0xc1, 0x70, 0x57, 0x03, 0x27, 0xe6, 0xd9, 0xf5, 0xc6, 0xdd, 0xc3, 0x35, 0x40, - 0x2e, 0xfc, 0x54, 0x88, 0x62, 0xf5, 0xa0, 0x70, 0x94, 0xfd, 0x42, 0x8a, 0x7b, - 0xbc, 0x15, 0xd7, 0xb3, 0x8d, 0x05, 0x36, 0x2c, 0x9c, 0xa9, 0x85, 0xf5, 0x8a, - 0x76, 0x64, 0x7d, 0x2b, 0xe4, 0xc2, 0xcd, 0x6b, 0x3d, 0x17, 0xd6, 0x87, 0x09, - 0x71, 0xd7, 0xa0, 0x98, 0xba, 0xf7, 0x2c, 0x6f, 0x6f, 0x12, 0x14, 0xcf, 0x1f, - 0xaa, 0xe4, 0x88, 0xbd, 0x7d, 0xe2, 0x59, 0xd3, 0x41, 0x5c, 0x2f, 0x3f, 0x6d, - 0x8b, 0xf6, 0x20, 0x2b, 0x51, 0x1e, 0xeb, 0x74, 0xaa, 0xa9, 0xc9, 0x85, 0x87, - 0x5f, 0x00, 0x62, 0xaf, 0x8a, 0x28, 0x40, 0xd5, 0x29, 0xca, 0xbb, 0xb0, 0x6f, - 0xf4, 0x3f, 0x4f, 0x19, 0x4c, 0xb1, 0xc7, 0xc9, 0x58, 0xcf, 0x62, 0x07, 0x40, - 0x4a, 0x24, 0xf8, 0xa4, 0x34, 0x23, 0x85, 0xaa, 0x8c, 0xff, 0x6a, 0x37, 0x6e, - 0x1f, 0x37, 0x2e, 0xac, 0x6a, 0xc4, 0xe4, 0x6c, 0xc0, 0x14, 0xd2, 0x0a, 0x8e, - 0x46, 0xbd, 0x54, 0xf7, 0xc4, 0x5d, 0xf3, 0xa9, 0x83, 0x4f, 0x77, 0xab, 0x7d, - 0x24, 0x96, 0x63, 0xa7, 0xd2, 0xa0, 0xcd, 0xe3, 0x62, 0xbd, 0x8c, 0x40, 0x41, - 0xe7, 0x92, 0x1e, 0x99, 0xe9, 0x30, 0xc8, 0xea, 0xde, 0xd5, 0x81, 0x0d, 0xac, - 0x92, 0x90, 0x03, 0x9e, 0x22, 0x3c, 0x80, 0x2c, 0xbc, 0xb6, 0xb5, 0x8c, 0x1b, - 0xa7, 0xed, 0x5e, 0xac, 0xfa, 0x76, 0x41, 0x4a, 0x01, 0xeb, 0x7c, 0xd8, 0x5f, - 0xbd, 0x86, 0x8b, 0xa5, 0xef, 0xe1, 0xc4, 0x16, 0x7f, 0x28, 0x08, 0x91, 0x77, - 0xc8, 0x0d, 0x72, 0xf0, 0xb8, 0xcd, 0xca, 0x3c, 0x29, 0x74, 0x24, 0x9a, 0x71, - 0x9a, 0xb1, 0xd8, 0x0a, 0xe5, 0xc8, 0xce, 0xea, 0x12, 0xa1, 0x61, 0xcc, 0xbb, - 0x5e, 0xac, 0x09, 0x99, 0x0f, 0xc6, 0x19, 0xa4, 0x60, 0x80, 0x43, 0x6d, 0xbd, - 0x08, 0xd7, 0x47, 0x84, 0xaf, 0x00, 0x2d, 0x58, 0xe0, 0x6f, 0xaf, 0x7f, 0x3c, - 0xea, 0xe7, 0xd3, 0x41, 0x9b, 0x1f, 0xca, 0x26, 0x5a, 0x55, 0x59, 0xcf, 0x9e, - 0x2d, 0x3b, 0x60, 0x97, 0x8d, 0x81, 0xa6, 0x78, 0xb9, 0xed, 0x8e, 0x44, 0x86, - 0xb4, 0xd1, 0x46, 0x09, 0xd6, 0xc1, 0x27, 0xc0, 0xc2, 0xfb, 0xff, 0xe3, 0x0a, - 0x60, 0xf7, 0xbf, 0xf1, 0xd9, 0xfb, 0x83, 0x00, 0xed, 0x00, 0x92, 0x53, 0xba, - 0x9b, 0x99, 0x6f, 0xa0, 0x52, 0x41, 0xb1, 0x0f, 0x5a, 0xc9, 0xa8, 0x40, 0x8e, - 0x92, 0x5b, 0x62, 0x6b, 0xb2, 0x1a, 0x47, 0x1f, 0xe3, 0xbe, 0xde, 0x52, 0xbb, - 0xa0, 0x97, 0xb2, 0xa9, 0x9a, 0x9b, 0xa5, 0xa8, 0x66, 0x58, 0xc3, 0xfd, 0x9e, - 0xc5, 0x5b, 0xfa, 0x9b, 0x32, 0x85, 0x67, 0x25, 0x4a, 0xb3, 0x6d, 0x2c, 0x7f, - 0x44, 0xd2, 0xc7, 0xe1, 0x3e, 0xb5, 0x4b, 0xeb, 0x70, 0xea, 0x8f, 0xa9, 0x4b, - 0x6c, 0x6e, 0x01, 0x2d, 0x79, 0xe3, 0xf5, 0x36, 0x89, 0xc2, 0xb1, 0xa1, 0x8e, - 0xaf, 0x2d, 0x47, 0x1d, 0x13, 0xc1, 0xab, 0x39, 0xd9, 0x19, 0x4a, 0xe8, 0x43, - 0xab, 0x1d, 0x28, 0xff, 0xa8, 0xf6, 0x9d, 0xc7, 0xe1, 0x5c, 0xc3, 0x8b, 0x12, - 0xe8, 0xfc, 0xd7, 0x92, 0x55, 0xb7, 0x21, 0x60, 0x56, 0xd9, 0xed, 0xb7, 0x48, - 0x2f, 0xb9, 0x8a, 0xa0, 0x33, 0xb6, 0x5e, 0x51, 0xc1, 0xa0, 0x8b, 0x8a, 0x11, - 0xd8, 0x4d, 0x04, 0x09, 0xb7, 0x34, 0xf4, 0x52, 0xaa, 0xf0, 0xd6, 0xb1, 0x8f, - 0x50, 0x25, 0x86, 0x83, 0xd3, 0xf9, 0xa7, 0x6d, 0x39, 0x9f, 0xd0, 0x47, 0xee, - 0xe2, 0x88, 0xbb, 0x45, 0x85, 0x85, 0x1d, 0xc9, 0x3e, 0xcc, 0xc6, 0x23, 0x22, - 0x92, 0x4c, 0xd1, 0x3b, 0x5d, 0xd4, 0xee, 0xd6, 0x6e, 0xd8, 0xd9, 0x97, 0x2d, - 0x77, 0x26, 0x29, 0xea, 0x64, 0x74, 0x2e, 0x54, 0x73, 0x39, 0x81, 0xb0, 0x06, - 0xc0, 0x62, 0x46, 0x8e, 0x4b, 0xd8, 0xf7, 0xdd, 0x9a, 0xf6, 0x98, 0xf5, 0x2a, - 0xe8, 0x14, 0x63, 0x4e, 0x81, 0xd7, 0xf3, 0xe0, 0xc4, 0x20, 0x31, 0x7c, 0xac, - 0xa9, 0xae, 0x48, 0x11, 0xc6, 0xaf, 0x06, 0xfe, 0x80, 0xa8, 0xc0, 0x2a, 0xb7, - 0xa0, 0x0e, 0x18, 0xe4, 0xa6, 0xaa, 0x1e, 0xa1, 0xb7, 0x69, 0x45, 0xd2, 0x61, - 0x5d, 0x43, 0xac, 0x11, 0x8b, 0x56, 0xc2, 0xf2, 0x96, 0x0f, 0xe9, 0x3a, 0x02, - 0x5f, 0x13, 0xec, 0x91, 0xff, 0xc6, 0xd2, 0xc3, 0x53, 0x69, 0x9a, 0xbb, 0x09, - 0x2d, 0xed, 0xc0, 0x65, 0xdb, 0x8f, 0xa2, 0x14, 0xdb, 0xc4, 0x64, 0x66, 0xf8, - 0x97, 0xb8, 0x8c, 0x58, 0xb3, 0x01, 0x52, 0x13, 0x3a, 0xa3, 0x83, 0x1a, 0xf3, - 0x7c, 0x74, 0xd9, 0x9e, 0x9e, 0x36, 0xff, 0x70, 0x11, 0xd3, 0x23, 0x83, 0x05, - 0x69, 0x15, 0x08, 0xa2, 0xc3, 0xa4, 0x3e, 0x75, 0x5d, 0xc0, 0x81, 0xb5, 0x11, - 0xd6, 0x48, 0x2a, 0x7d, 0xb6, 0x5f, 0xa9, 0x69, 0x9e, 0xa8, 0x7f, 0xf4, 0x70, - 0x99, 0xed, 0x36, 0x37, 0xdb, 0xb0, 0xa3, 0xd0, 0xef, 0x79, 0x79, 0x6a, 0x8e, - 0xf1, 0xe4, 0xd9, 0x4d, 0x42, 0xb4, 0xbc, 0x2b, 0x4a, 0x03, 0x8a, 0xe6, 0xe4, - 0x6b, 0x24, 0xcf, 0xc8, 0x41, 0x53, 0xd3, 0x1e, 0xaf, 0x89, 0x50, 0x63, 0xa5, - 0xca, 0x95, 0x9b, 0xe6, 0x3f, 0x37, 0xf2, 0xba, 0x0d, 0x43, 0x23, 0x66, 0x73, - 0x6d, 0x86, 0x32, 0xfc, 0xe0, 0x72, 0xb6, 0xae, 0x5b, 0x6f, 0x3f, 0xd5, 0x9d, - 0x3f, 0xaf, 0xf6, 0x38, 0x27, 0x5a, 0x99, 0x2f, 0xef, 0xc8, 0x7e, 0x60, 0xd4, - 0x4c, 0x2c, 0xad, 0xc2, 0xb5, 0xc4, 0x94, 0xe3, 0xe7, 0x2e, 0xb4, 0x59, 0x7c, - 0x96, 0xb4, 0x01, 0x67, 0x79, 0x9a, 0x90, 0x01, 0xa2, 0xed, 0x36, 0x76, 0xa8, - 0xb4, 0x03, 0xae, 0x25, 0xff, 0xd7, 0x72, 0xf7, 0x08, 0x1e, 0x9a, 0x32, 0xbc, - 0xc1, 0xc5, 0xe2, 0xed, 0xd4, 0xe2, 0xa6, 0x57, 0x6b, 0x78, 0x3c, 0xce, 0x3a, - 0xae, 0x11, 0xfa, 0x43, 0x22, 0x62, 0x54, 0x88, 0x56, 0x18, 0x3e, 0xe6, 0x82, - 0xd5, 0xdc, 0x31, 0xbe, 0xb3, 0x8f, 0x06, 0x1c, 0xbd, 0xec, 0xa7, 0x02, 0x1a, - 0x44, 0x4e, 0x2d, 0xd4, 0x17, 0xdf, 0x26, 0xdc, 0xd2, 0x20, 0xf2, 0xb7, 0x31, - 0x77, 0x2b, 0x43, 0x9e, 0x96, 0xd6, 0x14, 0xe1, 0xfa, 0xcb, 0x48, 0x6c, 0x7a, - 0x7d, 0x51, 0x71, 0xb1, 0xde, 0x35, 0x9f, 0x6a, 0xd3, 0xa9, 0x6f, 0x64, 0x9c, - 0x96, 0x91, 0x02, 0xa1, 0x96, 0x4f, 0xb4, 0xb4, 0xa1, 0xa4, 0x27, 0x9c, 0x68, - 0xe6, 0xc3, 0x72, 0xe4, 0x21, 0x87, 0xd7, 0x54, 0xe8, 0x04, 0xa6, 0x16, 0x53, - 0x09, 0x20, 0x69, 0xfb, 0x9b, 0x6d, 0x25, 0x26, 0x68, 0x90, 0x80, 0x8b, 0x01, - 0x5d, 0xf2, 0x8c, 0x80, 0x10, 0x65, 0xda, 0x6f, 0xeb, 0xdc, 0x1a, 0x56, 0xbf, - 0xd0, 0x02, 0x62, 0x5a, 0xcf, 0xaa, 0x53, 0x73, 0xfd, 0xe1, 0x49, 0xc1, 0xcf, - 0xc3, 0x64, 0x9b, 0x48, 0x69, 0x26, 0x99, 0xbb, 0xad, 0x5b, 0x7b, 0xf9, 0x97, - 0x38, 0x75, 0xf9, 0xae, 0x6f, 0xc9, 0x69, 0x92, 0x9f, 0x18, 0x49, 0x2f, 0x7c, - 0x8d, 0xfe, 0x69, 0x97, 0x7a, 0x14, 0x2e, 0x92, 0xd6, 0xd0, 0x2c, 0xce, 0x90, - 0x00, 0x09, 0x99, 0x38, 0xe8, 0x16, 0x9f, 0xd4, 0x3d, 0x45, 0x24, 0xe9, 0xc4, - 0x8c, 0x24, 0x7f, 0x9d, 0x48, 0x4c, 0x73, 0xcf, 0x09, 0x39, 0x30, 0x39, 0xe4, - 0x53, 0x26, 0xb8, 0x3f, 0x81, 0xb8, 0x70, 0x37, 0x02, 0x05, 0x66, 0xae, 0x61, - 0xd6, 0x16, 0x42, 0x8a, 0x60, 0x4e, 0x42, 0xef, 0x3e, 0xf3, 0x30, 0x2d, 0x21, - 0x1d, 0x0c, 0xe2, 0xf8, 0xc5, 0x38, 0x6e, 0x5e, 0xca, 0x18, 0x24, 0x4d, 0x63, - 0xd6, 0x70, 0x46, 0x6a, 0xc5, 0x95, 0xb7, 0x7f, 0xb1, 0xfa, 0x26, 0x80, 0xec, - 0x0a, 0xee, 0x5c, 0xb8, 0x35, 0x52, 0x60, 0x50, 0x5c, 0x2c, 0x2e, 0x5d, 0x99, - 0x0f, 0xff, 0x1c, 0x51, 0x80, 0xfa, 0x5b, 0x55, 0x47, 0xb6, 0x19, 0x12, 0x24, - 0xa7, 0x34, 0x9e, 0xa7, 0x70, 0xf6, 0x29, 0xe9, 0x4e, 0x99, 0x54, 0x67, 0x2f, - 0x79, 0x52, 0x12, 0x57, 0xc8, 0x1d, 0x83, 0xff, 0x3e, 0x82, 0x18, 0xb3, 0xad, - 0xd9, 0xc0, 0x68, 0x93, 0xbd, 0x02, 0xdb, 0x9b, 0x61, 0x19, 0x1d, 0xfb, 0x13, - 0x3b, 0xfa, 0xbe, 0x48, 0x58, 0xe4, 0x7a, 0x4c, 0xc3, 0x2e, 0x41, 0x6e, 0xc0, - 0x8b, 0x8a, 0xc7, 0x91, 0x5a, 0x43, 0x73, 0x3f, 0x44, 0x06, 0xe9, 0xd9, 0x67, - 0xc5, 0x60, 0xf3, 0x44, 0xd7, 0xe9, 0x04, 0xa2, 0x80, 0x45, 0xd9, 0x9f, 0x3a, - 0xf8, 0xc8, 0x2e, 0x97, 0xe1, 0xb9, 0xc1, 0xb2, 0x05, 0xe5, 0x85, 0xfb, 0xeb, - 0xb4, 0x8f, 0xaf, 0x58, 0xf1, 0xb6, 0x5d, 0xca, 0x24, 0x97, 0xe0, 0x9a, 0x70, - 0xaa, 0xd4, 0x86, 0x5f, 0x85, 0x71, 0x5a, 0x28, 0x0e, 0x18, 0x6f, 0x3f, 0xc1, - 0x74, 0x0d, 0x81, 0x84, 0xd3, 0x3e, 0x83, 0x22, 0x16, 0x95, 0x21, 0xcd, 0xc1, - 0x32, 0x21, 0x29, 0x39, 0xc8, 0x4a, 0x10, 0x89, 0x64, 0xe2, 0xde, 0x74, 0xb6, - 0xea, 0x55, 0xb4, 0xcb, 0x8f, 0x6f, 0x9b, 0xee, 0x98, 0xb1, 0x0d, 0x41, 0x51, - 0x09, 0x45, 0x5f, 0x48, 0xb7, 0x76, 0x08, 0x2d, 0xc3, 0x0b, 0x4b, 0xc7, 0x34, - 0x77, 0x07, 0x55, 0x11, 0x70, 0x03, 0x08, 0x15, 0x8c, 0xe2, 0xf2, 0xf9, 0xbf, - 0x0f, 0x69, 0x1b, 0x2c, 0xe5, 0x3e, 0x61, 0x14, 0x2c, 0xb7, 0x40, 0xc1, 0x5b, - 0x7b, 0x62, 0x3c, 0xf4, 0x8b, 0x3f, 0x7b, 0xfe, 0xfa, 0x31, 0xbc, 0xdc, 0x66, - 0x5c, 0x6d, 0x71, 0x23, 0xe9, 0x53, 0x50, 0x81, 0x13, 0x75, 0x94, 0x7b, 0x05, - 0x5a, 0x43, 0xdb, 0x07, 0xe0, 0x3f, 0x33, 0x62, 0x7d, 0xf5, 0xc6, 0x38, 0xbf, - 0xad, 0x95, 0x6d, 0xdc, 0x1e, 0xa7, 0xd7, 0x62, 0x0a, 0x20, 0xf2, 0x79, 0x2f, - 0x63, 0x81, 0x7a, 0x1c, 0xf3, 0x25, 0x80, 0xd0, 0x42, 0x74, 0x23, 0x4a, 0xf2, - 0xa5, 0x1b, 0x56, 0xbb, 0x68, 0xa2, 0x9e, 0x43, 0xa9, 0x54, 0x14, 0x2b, 0xa4, - 0xca, 0x68, 0x23, 0xbd, 0xe9, 0x05, 0x3d, 0x72, 0xfd, 0xad, 0xbc, 0x61, 0xad, - 0x59, 0x36, 0xc5, 0x3f, 0xdd, 0x75, 0x79, 0x44, 0x6d, 0x11, 0xc4, 0x46, 0x07, - 0xf4, 0x16, 0x30, 0xe4, 0xc0, 0x89, 0x15, 0xe6, 0x31, 0x77, 0x15, 0x50, 0xe9, - 0xce, 0x1f, 0xca, 0x2c, 0x63, 0xfe, 0x06, 0xb7, 0x98, 0x9d, 0x58, 0x4f, 0xa7, - 0xd7, 0x82, 0xa8, 0x8c, 0x1e, 0x7d, 0x64, 0xb6, 0xfb, 0xf5, 0x5e, 0x35, 0x96, - 0xaf, 0x9b, 0xcb, 0x75, 0x85, 0xf8, 0xc7, 0xd3, 0xaa, 0x5c, 0x20, 0x82, 0xb2, - 0x65, 0x24, 0x9d, 0xf0, 0x57, 0x01, 0xda, 0xb0, 0x31, 0xc4, 0xba, 0xc1, 0xea, - 0x26, 0x7a, 0x29, 0x96, 0xa2, 0x02, 0x8d, 0x1e, 0x6a, 0x0f, 0x80, 0xa3, 0x84, - 0x7c, 0x53, 0x1d, 0xba, 0x96, 0xee, 0x65, 0xa2, 0x41, 0x89, 0xbd, 0x27, 0x12, - 0xe4, 0x0e, 0x95, 0x96, 0x64, 0x98, 0x1e, 0x58, 0xb2, 0xa4, 0xf9, 0x51, 0xef, - 0x8f, 0x49, 0x7d, 0xff, 0xf2, 0xf2, 0xf2, 0x71, 0xea, 0xb8, 0x9c, 0x62, 0x8e, - 0x18, 0xb5, 0xfc, 0xb4, 0x38, 0x82, 0x53, 0x7e, 0xaf, 0x6a, 0xd2, 0xa6, 0xb1, - 0x75, 0x46, 0x33, 0xca, 0xa8, 0x6b, 0xf2, 0xc7, 0x6f, 0x39, 0x93, 0x15, 0x4f, - 0xc7, 0x3e, 0x6f, 0xbb, 0xa2, 0x21, 0x0c, 0x27, 0x43, 0xf5, 0x30, 0xa4, 0x27, - 0x84, 0x9a, 0x30, 0x1e, 0x00, 0xe0, 0x11, 0x29, 0xf0, 0x3a, 0x46, 0x07, 0xf8, - 0x7c, 0xbe, 0x07, 0x62, 0xc0, 0xb1, 0xc6, 0x58, 0x55, 0xde, 0xba, 0x84, 0x22, - 0xca, 0x4b, 0x88, 0xab, 0xee, 0xa6, 0xa4, 0x38, 0x2c, 0xf1, 0x6c, 0xcd, 0x6d, - 0xc7, 0xc3, 0x7c, 0x44, 0xe5, 0x49, 0xc4, 0x53, 0x48, 0x19, 0xac, 0xd8, 0xbb, - 0x0a, 0x02, 0xa5, 0xfa, 0x7a, 0x1c, 0x1d, 0x38, 0x06, 0xfb, 0xc3, 0x40, 0x7f, - 0xd7, 0xda, 0x93, 0xfd, 0x0d, 0xe6, 0x40, 0x0d, 0x3a, 0xb8, 0x97, 0x74, 0x85, - 0xcd, 0xdf, 0xbe, 0xd5, 0x93, 0x2f, 0x50, 0x7b, 0x79, 0x94, 0x7a, 0xdb, 0x2f, - 0xad, 0x37, 0x61, 0x5a, 0xa7, 0x17, 0xdb, 0x5f, 0x29, 0x80, 0x99, 0xf2, 0x0f, - 0x26, 0x3b, 0x35, 0x9a, 0x11, 0x51, 0xa6, 0xb7, 0x5c, 0x01, 0x36, 0x5e, 0xb1, - 0x54, 0xae, 0x42, 0x14, 0x0d, 0x6e, 0x10, 0x34, 0x2f, 0x14, 0xf3, 0x4d, 0xc3, - 0x3e, 0x07, 0xff, 0x0e, 0x4d, 0x1a, 0x6b, 0xe3, 0x75, 0xb3, 0x2f, 0x84, 0xb9, - 0x2e, 0x5d, 0x81, 0xeb, 0xb6, 0x39, 0xc4, 0xf2, 0x7e, 0x71, 0x5a, 0xa4, 0x2c, - 0xc7, 0x57, 0x07, 0xd4, 0xeb, 0xd1, 0xbb, 0xfb, 0xe8, 0xf9, 0x0f, 0xc7, 0xc9, - 0x53, 0xe7, 0xa9, 0x71, 0x5e, 0x65, 0xaf, 0x82, 0x67, 0x37, 0x3d, 0x34, 0x51, - 0x67, 0x4f, 0xf0, 0x84, 0xef, 0xd9, 0x2c, 0xcf, 0x3b, 0xcc, 0x7a, 0xca, 0x14, - 0x67, 0xb6, 0x32, 0x7e, 0x4f, 0x95, 0x22, 0xb2, 0xcc, 0x57, 0x9a, 0x7a, 0x8f, - 0xff, 0x7c, 0xa7, 0xcf, 0x14, 0x5d, 0xfc, 0x13, 0xea, 0xfc, 0x34, 0x15, 0x3b, - 0x2c, 0x3e, 0x8a, 0xfb, 0xe5, 0x34, 0x44, 0xd0, 0xc7, 0x3b, 0x3b, 0xd5, 0xbc, - 0x87, 0x0b, 0x01, 0xcd, 0x45, 0x79, 0x11, 0xe3, 0x56, 0x31, 0x3f, 0xd1, 0xda, - 0xfb, 0x4c, 0x81, 0x51, 0x63, 0x4a, 0x01, 0xaf, 0xf7, 0xcf, 0x11, 0x6d, 0x24, - 0x6a, 0xfe, 0x65, 0x0d, 0x84, 0x3c, 0xf8, 0x7a, 0xdf, 0xa0, 0x18, 0x04, 0x59, - 0x61, 0xa3, 0x75, 0xf8, 0x76, 0x21, 0x1e, 0x2d, 0xd0, 0xcd, 0xd4, 0x70, 0x6f, - 0xcc, 0x56, 0xa1, 0x87, 0xb1, 0x80, 0x2a, 0x25, 0x94, 0x44, 0x71, 0x9e, 0x30, - 0x22, 0x56, 0xee, 0x7a, 0xe8, 0x44, 0xf0, 0x3d, 0x20, 0x27, 0x3a, 0x67, 0x52, - 0xe5, 0x01, 0xaf, 0x6f, 0xf1, 0xb7, 0x8d, 0xdc, 0x81, 0x7e, 0x2e, 0x80, 0x80, - 0x0d, 0x0e, 0xda, 0xc6, 0xd2, 0xdc, 0x15, 0x69, 0x56, 0x0a, 0xda, 0x55, 0xd7, - 0x66, 0xd1, 0x46, 0x1d, 0x91, 0x3a, 0xe1, 0xf6, 0x98, 0x07, 0xa5, 0x78, 0x15, - 0x2f, 0xe0, 0x1f, 0x2f, 0xcc, 0x38, 0x4f, 0x59, 0x8f, 0xb1, 0xaf, 0x7c, 0x22, - 0x6f, 0xb8, 0xaa, 0xfe, 0xd5, 0x37, 0xa9, 0xc2, 0x65, 0x7e, 0xba, 0xc0, 0x3b, - 0xfc, 0x0b, 0x58, 0x7b, 0xef, 0x2f, 0x45, 0xec, 0x8a, 0x0d, 0x4d, 0x01, 0xdf, - 0x95, 0xc9, 0xbb, 0x7a, 0x10, 0x94, 0xd6, 0x57, 0x71, 0xa9, 0xbf, 0x98, 0xba, - 0x37, 0x60, 0x20, 0x74, 0x44, 0xa3, 0x04, 0xd7, 0x7b, 0xbe, 0xda, 0x6e, 0xae, - 0x16, 0x10, 0x0f, 0x45, 0x10, 0x8c, 0x6c, 0x6f, 0xae, 0x35, 0x9f, 0x64, 0x5c, - 0x27, 0x68, 0x91, 0xc0, 0xdc, 0xab, 0x3f, 0xaf, 0x18, 0x77, 0x00, 0xc0, 0x82, - 0xdc, 0x47, 0x77, 0x40, 0xfb, 0x3f, 0x2c, 0xd7, 0xbb, 0x59, 0xfb, 0x35, 0x85, - 0x54, 0xe9, 0x4c, 0x7e, 0x67, 0x8c, 0xe0, 0x1a, 0xeb, 0xf9, 0x4e, 0x51, 0x5e, - 0x49, 0x72, 0x29, 0x67, 0x99, 0x5a, 0xea, 0x85, 0x8d, 0x64, 0xe7, 0x78, 0x9f, - 0xf3, 0x06, 0x36, 0x95, 0x77, 0x22, 0x81, 0x80, 0x32, 0x6a, 0x5b, 0x0a, 0xf4, - 0x75, 0xe2, 0x7a, 0x54, 0xb2, 0x07, 0xb4, 0x1f, 0x92, 0xe3, 0x76, 0x17, 0x0e, - 0x3f, 0xb0, 0x05, 0x02, 0x82, 0x61, 0xc9, 0x9c, 0x2d, 0xbd, 0x0e, 0xed, 0xee, - 0x87, 0x1c, 0x1c, 0x0f, 0x48, 0xb8, 0xe9, 0xb8, 0xe4, 0xbe, 0x77, 0xd1, 0xb7, - 0x37, 0xfe, 0x21, 0xf0, 0xfa, 0x5a, 0x18, 0xeb, 0xb5, 0x27, 0x55, 0xb5, 0xa6, - 0xcf, 0x61, 0x30, 0xfb, 0x56, 0x94, 0x4c, 0xfa, 0xb8, 0x75, 0x27, 0xc2, 0x50, - 0xd1, 0x13, 0xb2, 0x9b, 0xca, 0xc9, 0xaa, 0xa1, 0x0c, 0x2e, 0x7d, 0xe4, 0x15, - 0xed, 0xb0, 0x80, 0x6c, 0x6d, 0xa0, 0x30, 0x20, 0xa1, 0x34, 0xca, 0x7e, 0xcd, - 0xc8, 0xda, 0x1b, 0xd5, 0x7a, 0x37, 0xf5, 0x5a, 0x46, 0x94, 0x0b, 0x45, 0xb2, - 0x41, 0xb1, 0xc1, 0x6e, 0xe1, 0x00, 0x92, 0x7d, 0x1b, 0xd8, 0x60, 0xd4, 0x45, - 0xa9, 0xde, 0x50, 0xd4, 0xc3, 0x84, 0xd6, 0xe1, 0xd0, 0x01, 0x08, 0x02, 0x6c, - 0x0e, 0xa5, 0xeb, 0xbf, 0x0b, 0x72, 0xfb, 0xf5, 0xc3, 0x70, 0xbc, 0xe1, 0x8d, - 0x3a, 0xcb, 0xc4, 0x65, 0x99, 0x09, 0x9b, 0xaa, 0xe1, 0xd8, 0x02, 0xf7, 0x73, - 0x33, 0x49, 0x4a, 0x7a, 0xe1, 0x30, 0xfe, 0x86, 0xe8, 0xf8, 0x18, 0xf9, 0x26, - 0x1a, 0x2d, 0xad, 0xb4, 0x12, 0x52, 0x29, 0xba, 0x0f, 0xfc, 0x0e, 0x70, 0x90, - 0x32, 0x44, 0x30, 0xb5, 0x21, 0xa9, 0x0d, 0x22, 0x4a, 0xb7, 0xa1, 0x02, 0x4e, - 0x1d, 0x89, 0x3e, 0x74, 0x04, 0xfe, 0xdb, 0x34, 0x8e, 0x4d, 0x5e, 0x22, 0x35, - 0xc5, 0x9a, 0x78, 0x76, 0xa0, 0xfc, 0x60, 0x14, 0x5c, 0x6a, 0x00, 0x96, 0x87, - 0x68, 0x44, 0x60, 0x27, 0x1e, 0xe1, 0x33, 0xa4, 0x37, 0xfe, 0x52, 0xfb, 0x6c, - 0xfb, 0xa9, 0x7f, 0xce, 0xc1, 0x61, 0xdf, 0x51, 0x5d, 0xde, 0x90, 0x5a, 0x24, - 0xda, 0x6d, 0x37, 0xbd, 0xc3, 0x40, 0x44, 0xa9, 0x55, 0xe6, 0x82, 0xb4, 0x74, - 0x71, 0xca, 0x1e, 0x8c, 0x78, 0xc5, 0x1e, 0xd3, 0x77, 0xcd, 0x4a, 0xfa, 0x89, - 0x4b, 0xd9, 0xbd, 0x12, 0xe7, 0x07, 0x15, 0x6d, 0xa0, 0x72, 0x6f, 0x7c, 0xf5, - 0x72, 0x9f, 0xab, 0xe3, 0x72, 0x16, 0x04, 0x63, 0xfe, 0x04, 0x29, 0x24, 0x4d, - 0x06, 0x74, 0x89, 0xba, 0x5d, 0x09, 0x47, 0x2e, 0xcd, 0x9b, 0xcd, 0xc4, 0xd5, - 0xe4, 0xdf, 0x10, 0x1e, 0x18, 0x9d, 0xb8, 0x46, 0x3e, 0xb5, 0x38, 0x30, 0x7b, - 0x58, 0x7d, 0xef, 0xf7, 0x8d, 0xe9, 0xc7, 0x3a, 0xf2, 0x80, 0x80, 0xb2, 0xfd, - 0x05, 0x00, 0x3e, 0x11, 0xd3, 0xe1, 0xb3, 0x29, 0x9d, 0xc9, 0x52, 0x1f, 0x8b, - 0x51, 0x3b, 0xad, 0xb0, 0x10, 0xe9, 0x1b, 0xfe, 0xb9, 0x1b, 0x0b, 0x2a, 0x6c, - 0xb1, 0x29, 0xc2, 0xe8, 0x25, 0xa5, 0x97, 0xb8, 0xfb, 0x75, 0xbc, 0x56, 0x2d, - 0x65, 0x4d, 0x62, 0x10, 0x46, 0x40, 0xdd, 0x74, 0xe5, 0x6c, 0xd1, 0x4b, 0xaa, - 0xba, 0x56, 0x5b, 0x84, 0xb8, 0x45, 0xe1, 0x63, 0xd1, 0xca, 0xef, 0x25, 0x33, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0xaa, + 0xba, 0x56, 0x5b, 0x84, 0xf5, 0xa7, 0x10, 0x01, 0xd1, 0xca, 0xef, 0x25, 0x33, 0xc3, 0x98, 0x16, 0x37, 0x20, 0x4f, 0x96, 0xa5, 0x9c, 0x8e, 0x80, 0x24, 0xd9, 0x04, 0x1b, 0x20, 0x29, 0xe9, 0x4c, 0x15, 0x24, 0x5f, 0x1a, 0x95, 0x88, 0x40, - 0xba, 0x3f, 0x38, 0x0a, 0x4d, 0x20, 0xf1, 0x18, 0x4e, 0x77, 0x82, 0x7d, 0xe3, - 0xff, 0x8f, 0x3d, 0x73, 0x45, 0x9a, 0xfe, 0x24, 0x1f, 0x72, 0x3c, 0x08, 0x48, - 0x23, 0x23, 0x0e, 0x00, 0x3d, 0x3d, 0x21, 0xe5, 0x35, 0x01, 0xec, 0x04, 0x99, - 0xb0, 0x83, 0xa7, 0xda, 0xd6, 0x85, 0xc5, 0x71, 0x27, 0xf4, 0xde, 0x64, 0x73, - 0x3a, 0x88, 0x0c, 0x2d, 0xb2, 0x8f, 0xda, 0xab, 0xf1, 0xb5, 0x42, 0xd2, 0x05, - 0xf6, 0x64, 0xa3, 0x51, 0x35, 0x71, 0x27, 0x11, 0xdc, 0xcc, 0xd9, 0x31, 0xa5, - 0x0b, 0x9c, 0x56, 0x61, 0x88, 0x23, 0x60, 0xd4, 0xca, 0xc0, 0x04, 0x76, 0x81, - 0xbc, 0x2e, 0x2b, 0x3b, 0xf6, 0xc9, 0x97, 0x60, 0xd7, 0xcf, 0xb4, 0xfa, 0x21, - 0x39, 0x43, 0x77, 0xa4, 0x55, 0x1c, 0x76, 0xd1, 0xf7, 0x5a, 0xc0, 0x3c, 0x26, - 0x20, 0x54, 0xdf, 0xfd, 0x79, 0xa9, 0xde, 0xd0, 0x5e, 0x88, 0x89, 0x58, 0x19, - 0x9e, 0xea, 0x45, 0x01, 0xe2, 0x99, 0x0a, 0x53, 0xa5, 0xcd, 0x2a, 0x46, 0xa4, - 0x01, 0x57, 0x65, 0x88, 0xfd, 0x7d, 0x05, 0x8a, 0x26, 0xf2, 0x84, 0x38, 0xe5, - 0x78, 0x2f, 0x45, 0xac, 0x1d, 0x07, 0xf6, 0xf6, 0xf5, 0xed, 0x73, 0x74, 0x1d, - 0x57, 0x85, 0x83, 0x7a, 0x6b, 0x84, 0x4b, 0x47, 0x47, 0x75, 0x71, 0x8c, 0x29, - 0xdd, 0x99, 0x08, 0x4e, 0x9f, 0x88, 0x03, 0xc9, 0x3a, 0xfc, 0xed, 0x83, 0x39, - 0x00, 0x00, 0xbf, 0x83, 0xfc, 0x07, 0x34, 0x96, 0x4c, 0xcd, 0x41, 0x1d, 0x1c, - 0x93, 0x57, 0x14, 0xe2, 0x4a, 0xab, 0x56, 0x6f, 0x4f, 0x08, 0x42, 0x40, 0x14, - 0xc4, 0xec, 0xa9, 0x1b, 0x59, 0x0f, 0x08, 0x2b, 0x67, 0x3f, 0x36, 0x1c, 0x87, - 0x41, 0x5d, 0x37, 0xbd, 0x20, 0xd7, 0x0f, 0xd0, 0xb5, 0x2b, 0x6d, 0xdf, 0x18, - 0x65, 0xf7, 0x66, 0x70, 0x2e, 0x32, 0xb0, 0x5b, 0x3c, 0xf1, 0x63, 0x0e, 0xe8, - 0x59, 0x7a, 0xae, 0x19, 0x63, 0x3f, 0x35, 0x16, 0xa8, 0x55, 0x5a, 0xc5, 0xbe, - 0x32, 0xc6, 0x75, 0xbe, 0x18, 0x17, 0xef, 0xbf, 0xfd, 0x93, 0x69, 0x04, 0x1a, - 0x08, 0x9c, 0x28, 0x3f, 0x19, 0x64, 0x99, 0x68, 0xc2, 0x49, 0x8c, 0xde, 0x56, - 0xf5, 0x00, 0x43, 0x4f, 0x28, 0x0d, 0x77, 0xa9, 0xc6, 0x2e, 0x43, 0xcb, 0xd3, - 0xf1, 0x36, 0xa4, 0xc6, 0xa0, 0x0a, 0x43, 0xe6, 0xed, 0x53, 0x0c, 0xb2, 0xe8, - 0xae, 0x83, 0x88, 0x60, 0xad, 0xc8, 0x8a, 0xac, 0x1c, 0xe6, 0x13, 0x81, 0x64, - 0x3e, 0xec, 0xd2, 0xcf, 0x72, 0x24, 0x8f, 0x78, 0x6f, 0x43, 0xd3, 0x0d, 0x78, - 0x37, 0xd0, 0x48, 0xe2, 0x60, 0x12, 0xcb, 0xaa, 0x6c, 0xe7, 0xbb, 0x57, 0x8a, - 0x1f, 0x85, 0xf2, 0x7d, 0xc3, 0xe9, 0x3c, 0xe4, 0x5e, 0x25, 0x3a, 0xc5, 0x8c, - 0xf7, 0x2e, 0xe2, 0x42, 0x02, 0x60, 0x57, 0x72, 0x5d, 0x63, 0xea, 0xd2, 0xc0, - 0xc0, 0xff, 0x1f, 0xe2, 0x6a, 0xc1, 0x27, 0x0a, 0x67, 0xdf, 0xb3, 0x63, 0x47, - 0xc9, 0xcf, 0x6a, 0xe0, 0x61, 0xee, 0x62, 0xf6, 0x17, 0x69, 0xba, 0x38, 0x9d, - 0xc0, 0xa9, 0x6b, 0x8b, 0x04, 0x7a, 0xe3, 0xb4, 0x2b, 0x89, 0x6b, 0xb4, 0x1d, - 0xdb, 0x82, 0xf8, 0x78, 0xd9, 0xac, 0x7f, 0xfb, 0x0b, 0xd4, 0x39, 0x1d, 0xf1, - 0xd8, 0x79, 0x89, 0x9a, 0x3e, 0xf5, 0x7b, 0xfd, 0x0d, 0x1f, 0x77, 0x55, 0x64, - 0x8e, 0xdd, 0x85, 0xbb, 0x05, 0x2a, 0x4f, 0xa9, 0xe5, 0x1c, 0x2f, 0x35, 0xa4, - 0x81, 0x5d, 0xf9, 0x6d, 0xac, 0xac, 0x29, 0x0e, 0xdf, 0x16, 0x18, 0xa2, 0x5b, - 0xdd, 0x25, 0xc6, 0x73, 0x92, 0xb7, 0x96, 0x4d, 0x90, 0x3b, 0x92, 0x07, 0x50, - 0x38, 0x70, 0x59, 0x7b, 0x9a, 0x95, 0x58, 0x92, 0xc7, 0x38, 0x96, 0x50, 0xa2, - 0xd4, 0x2e, 0xc9, 0x2b, 0xe7, 0x23, 0xfe, 0xdf, 0x2f, 0x2e, 0xde, 0x5a, 0x47, - 0x2a, 0xa1, 0xe7, 0x4f, 0x33, 0xf7, 0xc0, 0x97, 0x12, 0x26, 0xac, 0xcf, 0x7c, - 0x90, 0x37, 0xa5, 0x36, 0x84, 0x86, 0x77, 0x51, 0x68, 0x90, 0x90, 0x1c, 0xb6, - 0x1a, 0x9f, 0x09, 0x8b, 0x15, 0xd1, 0x5c, 0x9d, 0x32, 0x7a, 0x32, 0xb9, 0x30, - 0xa7, 0xcb, 0x12, 0x24, 0x78, 0xf8, 0x5a, 0x1c, 0x6c, 0x31, 0x1a, 0xee, 0x72, - 0x1c, 0x0b, 0xd2, 0xaa, 0xcb, 0xd8, 0x23, 0x25, 0xa5, 0x9b, 0x95, 0x15, 0x4e, - 0xcd, 0x82, 0xc8, 0x0d, 0x36, 0x7e, 0x2e, 0xac, 0xcb, 0x1e, 0x6e, 0x63, 0x0d, - 0x9a, 0x6f, 0x44, 0x23, 0x59, 0xb5, 0x57, 0xf4, 0xa7, 0x77, 0xab, 0x1b, 0x15, - 0xea, 0xa1, 0x29, 0x47, 0x50, 0xd4, 0x06, 0x3a, 0x0c, 0x1e, 0x45, 0x9f, 0x1b, - 0xdc, 0xbf, 0x95, 0x25, 0x74, 0x7e, 0x8c, 0x95, 0x08, 0xa5, 0x55, 0xfa, 0xcb, - 0x79, 0x87, 0x40, 0xe0, 0xbd, 0xf9, 0x94, 0xd9, 0x73, 0x9b, 0xbe, 0x55, 0x38, - 0xa0, 0xae, 0x0f, + 0xba, 0x3f, 0x38, 0x0a, 0x4d, 0x02, 0x51, 0x00, 0x4e, 0x77, 0x82, 0x7d, 0x03, + 0x0a, 0x4b, 0x4d, 0x2d, 0xd7, 0xf9, 0x02, 0x00, 0x01, 0x52, 0x0f, 0xc0, 0x01, + 0x16, 0x13, 0xd0, 0x00, 0x00, 0x01, 0x51, 0x3f, 0xa4, 0x0d, 0x10, 0x30, 0x29, + 0x05, 0x00, 0x01, 0x52, 0x00, 0x00, 0x00, ], txid: [ - 0x8c, 0x23, 0xea, 0xeb, 0x8f, 0x61, 0x22, 0x8c, 0x8b, 0x2f, 0x63, 0x3a, 0x7d, - 0xdc, 0xa1, 0x95, 0xc2, 0x71, 0x89, 0x13, 0xd5, 0x6b, 0x6f, 0x75, 0xc2, 0xef, - 0x52, 0x02, 0xa9, 0x67, 0x55, 0x61, + 0x25, 0x8b, 0xdb, 0xfb, 0x4e, 0x9a, 0xb0, 0x45, 0xd6, 0x9f, 0x31, 0x65, 0x49, + 0xf0, 0x56, 0x25, 0xa0, 0x73, 0xb6, 0xe1, 0xe3, 0xde, 0x9c, 0xdd, 0xca, 0xc9, + 0xa6, 0xa6, 0x92, 0x4c, 0xde, 0x5c, ], auth_digest: [ - 0xd3, 0x95, 0x72, 0xcb, 0x8a, 0x62, 0x3d, 0x50, 0x8c, 0xcb, 0xa0, 0xd2, 0x43, - 0x93, 0x73, 0x0e, 0xc3, 0x94, 0x02, 0x06, 0x3f, 0x2c, 0x50, 0xfe, 0x56, 0xcd, - 0xe8, 0xaa, 0xc1, 0xe9, 0x40, 0x24, + 0xa4, 0xbc, 0x17, 0x6d, 0x45, 0xf8, 0x13, 0x96, 0x47, 0x3d, 0x70, 0xe7, 0x94, + 0x5a, 0x4a, 0xc2, 0xb7, 0xbe, 0xc1, 0xa4, 0x54, 0x33, 0xc4, 0xde, 0x62, 0xad, + 0x14, 0x34, 0x1f, 0xac, 0x2d, 0x44, ], - amounts: vec![1180186385139632], - script_pubkeys: vec![vec![0xac, 0x00, 0xac, 0x6a, 0x53, 0x00, 0x00]], + amounts: vec![1768120831340850], + script_pubkeys: vec![vec![0x63, 0x51, 0x6a, 0xac, 0x65, 0xac, 0x53]], transparent_input: Some(0), sighash_shielded: [ - 0xfd, 0x8d, 0x30, 0x0c, 0x1c, 0xbb, 0xfe, 0x6e, 0xcf, 0x3d, 0x3a, 0xe3, 0x1a, - 0x98, 0xf2, 0x55, 0x3f, 0xa5, 0xbd, 0x1b, 0xb6, 0x4c, 0x8a, 0xda, 0x81, 0x8f, - 0x06, 0xb4, 0x8c, 0x79, 0xde, 0x4c, + 0x8a, 0x91, 0xd0, 0xa4, 0x91, 0xc2, 0x4e, 0xc7, 0x10, 0xb4, 0xd7, 0x2a, 0xed, + 0x39, 0x77, 0x53, 0x4e, 0x52, 0xf0, 0x90, 0xef, 0xde, 0xa7, 0x44, 0x74, 0x18, + 0x57, 0xf3, 0x04, 0xef, 0xde, 0xf4, ], sighash_all: Some([ - 0x74, 0xe4, 0xe7, 0x22, 0x42, 0x49, 0x22, 0x07, 0x94, 0xae, 0x08, 0xba, 0x5e, - 0xdf, 0x96, 0xcd, 0x84, 0x18, 0xfc, 0x82, 0x9f, 0xdf, 0xd2, 0xf1, 0x51, 0x62, - 0xb7, 0x7c, 0x11, 0x01, 0x37, 0x04, + 0xed, 0x7e, 0xad, 0x9d, 0x3f, 0xfe, 0xe8, 0xaa, 0x01, 0x98, 0xcf, 0xab, 0x2b, + 0x2e, 0xa6, 0x65, 0x08, 0x0c, 0x79, 0x0a, 0xfc, 0xf7, 0xe4, 0x3e, 0x87, 0x15, + 0x04, 0x26, 0x83, 0x34, 0xea, 0x56, ]), sighash_none: Some([ - 0x1a, 0x33, 0xce, 0x50, 0x7d, 0x53, 0x74, 0xe5, 0x6b, 0x00, 0xcb, 0x88, 0xb9, - 0xcc, 0x85, 0xda, 0xb5, 0x89, 0xf1, 0xe2, 0x2d, 0x92, 0x77, 0xdb, 0x69, 0x58, - 0xf7, 0xce, 0x1a, 0x8a, 0x47, 0x02, + 0xff, 0x42, 0xc6, 0x72, 0xf5, 0x04, 0x4d, 0x1f, 0x8e, 0x4a, 0x66, 0x6c, 0x52, + 0x1a, 0x5a, 0xcd, 0xa9, 0xea, 0x9a, 0x20, 0x93, 0x3f, 0xea, 0x27, 0x9f, 0x1a, + 0xa5, 0xf5, 0xf0, 0x20, 0x0c, 0xa6, ]), sighash_single: Some([ - 0x26, 0xa1, 0xbe, 0x98, 0xd2, 0xb0, 0x84, 0xb2, 0xc3, 0x6f, 0x77, 0x6c, 0xfb, - 0xe3, 0x18, 0x3c, 0xf1, 0x82, 0xf4, 0xe8, 0xdd, 0x29, 0x21, 0x5f, 0x00, 0x98, - 0x0d, 0xac, 0x17, 0x75, 0xf7, 0x2a, + 0x40, 0x5b, 0x9b, 0x24, 0xe2, 0x0b, 0xee, 0x15, 0xc6, 0x69, 0x96, 0xb4, 0xf8, + 0x8d, 0xe3, 0x07, 0x0e, 0x7f, 0xa9, 0xf4, 0xaa, 0xca, 0xa3, 0xef, 0x6b, 0x49, + 0x79, 0xcd, 0xc1, 0x93, 0xc9, 0x72, ]), sighash_all_anyone: Some([ - 0x4a, 0x32, 0x56, 0x8d, 0x12, 0xc2, 0xc7, 0x40, 0xef, 0xb4, 0x4b, 0xbd, 0xa6, - 0x39, 0x36, 0x4e, 0xe9, 0x9b, 0xce, 0x7d, 0xe7, 0xc0, 0xcf, 0x22, 0x6e, 0xd1, - 0x44, 0xe8, 0xd2, 0xd0, 0xd0, 0xa8, + 0x8b, 0xc4, 0x12, 0x1a, 0x64, 0x8f, 0xbe, 0x55, 0x84, 0x42, 0xa6, 0xae, 0xa8, + 0x95, 0x7c, 0x9f, 0xb8, 0x13, 0x31, 0x0c, 0xae, 0xc9, 0xa0, 0x4e, 0x80, 0xd4, + 0xfe, 0x70, 0x15, 0xdc, 0x8f, 0x8b, ]), sighash_none_anyone: Some([ - 0x2c, 0xf4, 0xfb, 0xd3, 0x2a, 0x88, 0x62, 0x4f, 0x16, 0x4a, 0x87, 0x0c, 0x59, - 0x37, 0xe3, 0x8f, 0x55, 0x23, 0xc4, 0xaf, 0x06, 0x08, 0x1c, 0xae, 0x64, 0x06, - 0x36, 0x8e, 0x4c, 0x5d, 0xcf, 0x21, + 0xfc, 0x5b, 0x0b, 0x69, 0x1e, 0xf2, 0x16, 0x8b, 0x34, 0xfe, 0x17, 0xb7, 0x5e, + 0xd2, 0xda, 0xad, 0x1d, 0xdb, 0x12, 0x80, 0x89, 0x64, 0xf3, 0xbe, 0x33, 0xd1, + 0x81, 0x56, 0x1a, 0xea, 0x9a, 0x3e, ]), sighash_single_anyone: Some([ - 0x1b, 0x7d, 0xfa, 0x1f, 0x21, 0x6f, 0x7f, 0x52, 0xfc, 0x66, 0x6f, 0xb8, 0x35, - 0xbc, 0xa1, 0x6d, 0xd7, 0xbe, 0xd5, 0x5a, 0xf0, 0xf5, 0x36, 0x8b, 0x85, 0x46, - 0xbe, 0x84, 0x6a, 0xd8, 0xa1, 0xf9, + 0x2e, 0x8c, 0x8f, 0xfc, 0x65, 0x64, 0xd1, 0x89, 0x21, 0x38, 0xa8, 0x49, 0x94, + 0xbd, 0x60, 0xae, 0x47, 0x57, 0xd6, 0x91, 0x36, 0xb8, 0x2a, 0xd1, 0x9b, 0xbc, + 0xb9, 0x5e, 0x61, 0x0f, 0x47, 0x8e, ]), }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x98, - 0xaf, 0x08, 0x3d, 0x98, 0x08, 0x71, 0x08, 0x00, 0x00, 0x02, 0x61, 0x75, 0xd8, - 0xc3, 0xd6, 0x75, 0x62, 0xff, 0x06, 0xa2, 0x1b, 0x39, 0xcd, 0x17, 0x31, 0x63, - 0xb2, 0xec, 0xa3, 0x01, 0x32, 0x19, 0xc7, 0xac, 0x6a, 0x51, 0xdf, 0x3f, 0x26, - 0x44, 0x4a, 0xa8, 0x65, 0xb9, 0x08, 0x6c, 0x8b, 0x5b, 0x75, 0xef, 0x56, 0xfe, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x42, + 0xd2, 0x05, 0xf6, 0x64, 0x3e, 0x84, 0x17, 0x03, 0x27, 0x11, 0xdc, 0xcc, 0xd9, + 0x31, 0xa5, 0x0b, 0x9c, 0x56, 0x61, 0x88, 0x23, 0x60, 0xd4, 0xca, 0xc0, 0x04, + 0x76, 0x81, 0xbc, 0x2e, 0x2b, 0x3b, 0xf6, 0xc9, 0x97, 0x60, 0xd7, 0xcf, 0xb4, + 0xfa, 0x21, 0x39, 0x43, 0x77, 0x08, 0x63, 0xac, 0x65, 0x51, 0x6a, 0x52, 0x00, + 0xac, 0x26, 0x20, 0x54, 0xdf, 0xfd, 0x79, 0xa9, 0xde, 0xd0, 0x5e, 0x88, 0x89, + 0x58, 0x19, 0x9e, 0xea, 0x45, 0x01, 0xe2, 0x99, 0x0a, 0x53, 0xa5, 0xcd, 0x2a, + 0x46, 0xa4, 0x01, 0x57, 0x65, 0x88, 0xfd, 0x7d, 0x05, 0x8a, 0x26, 0xf2, 0x84, + 0x38, 0xe5, 0x00, 0x2f, 0x45, 0xac, 0x1d, 0x07, 0xf6, 0xf6, 0xf5, 0xed, 0x73, + 0x74, 0x1d, 0x57, 0x85, 0x83, 0x7a, 0x6b, 0x84, 0x4b, 0x47, 0x47, 0x75, 0x71, + 0x8c, 0x29, 0xdd, 0x99, 0x08, 0x4e, 0x9f, 0x88, 0xef, 0x15, 0x3a, 0x83, 0x29, + 0xf5, 0x32, 0xa6, 0x90, 0x03, 0xac, 0x52, 0x6a, 0xed, 0x75, 0x43, 0x67, 0x00, + 0x00, 0x02, 0x17, 0x84, 0xe1, 0x7a, 0x32, 0xf2, 0xf1, 0x63, 0x89, 0x64, 0x23, + 0xf3, 0x18, 0xd6, 0x08, 0x78, 0x63, 0xee, 0x2f, 0x34, 0x40, 0x34, 0x0d, 0xcd, + 0xb0, 0xd0, 0xf8, 0x4c, 0xbe, 0x45, 0x46, 0x3c, 0x1c, 0x93, 0x57, 0x14, 0xe2, + 0x4a, 0xab, 0x56, 0x6f, 0x4f, 0x08, 0x42, 0x40, 0x14, 0xc4, 0xec, 0xa9, 0x1b, + 0x59, 0x0f, 0x08, 0x2b, 0x47, 0x3f, 0x36, 0x1c, 0x87, 0x41, 0x5d, 0x37, 0xbd, + 0x20, 0x2e, 0xfa, 0xbb, 0xe7, 0xd9, 0xf4, 0x1f, 0x03, 0xb8, 0xf8, 0xf4, 0xa0, + 0x11, 0x5f, 0xf3, 0x2f, 0x59, 0x34, 0x73, 0xc9, 0x78, 0xf8, 0x17, 0x48, 0x98, + 0x3d, 0xa3, 0xb2, 0x3d, 0x7f, 0xee, 0xa1, 0xc5, 0xbe, 0x32, 0xc6, 0x75, 0xbe, + 0x18, 0x17, 0xef, 0xbf, 0xfd, 0x93, 0x69, 0x04, 0x1a, 0x08, 0x9c, 0x28, 0x3f, + 0x19, 0x64, 0x99, 0x68, 0xc2, 0x49, 0x8c, 0xde, 0x56, 0xf5, 0x00, 0x43, 0x4f, + 0x28, 0x0d, 0x77, 0xa9, 0xc6, 0x2e, 0x43, 0xcb, 0xd3, 0xf1, 0x36, 0xa4, 0xc6, + 0xa0, 0x0a, 0x43, 0xe6, 0xed, 0x53, 0x0c, 0xb2, 0xe8, 0xae, 0x83, 0x88, 0x60, + 0xad, 0xc8, 0x8a, 0xac, 0xc7, 0xbd, 0x6a, 0x00, 0xae, 0x0c, 0x19, 0xff, 0x45, + 0x33, 0xa4, 0x85, 0xef, 0xde, 0x08, 0x2b, 0x5f, 0x4d, 0x1f, 0x7a, 0x8e, 0xbe, + 0x7e, 0xd8, 0x2b, 0x7b, 0x05, 0xa8, 0xcf, 0xe1, 0xe3, 0x73, 0x45, 0x9f, 0x1b, + 0xdc, 0xbf, 0x95, 0x25, 0x74, 0x7e, 0x8c, 0x95, 0x08, 0xa5, 0x55, 0xfa, 0xcb, + 0x79, 0x87, 0x40, 0xe0, 0xbd, 0xf9, 0x94, 0xd9, 0x73, 0x9b, 0xbe, 0x55, 0x38, + 0xa0, 0xae, 0x0f, 0x07, 0x6c, 0x58, 0x2c, 0x0f, 0x5b, 0xa8, 0x78, 0xb9, 0x9b, + 0x82, 0x49, 0xdb, 0x1d, 0x7e, 0x95, 0x05, 0x6c, 0x98, 0xaf, 0x08, 0x3d, 0x98, + 0xcb, 0x0e, 0xd9, 0xe3, 0xf7, 0x43, 0x6e, 0x1c, 0x76, 0x43, 0x76, 0x6f, 0x96, + 0x6b, 0x83, 0xe9, 0x99, 0x20, 0x6e, 0xbd, 0x13, 0x93, 0xb9, 0xb2, 0xa7, 0xf4, + 0x14, 0x48, 0x0f, 0xa0, 0x17, 0x48, 0x00, 0x69, 0xf8, 0x5c, 0x77, 0x49, 0xc4, + 0x35, 0xae, 0x2f, 0xba, 0x2d, 0xdc, 0x10, 0x38, 0xd5, 0x47, 0xd8, 0x48, 0x54, + 0x81, 0x7e, 0xf3, 0x96, 0x35, 0xc2, 0x98, 0x27, 0xaa, 0xd8, 0x67, 0x26, 0xc9, + 0xad, 0xe3, 0xb2, 0x65, 0xb9, 0x08, 0x6c, 0x8b, 0x5b, 0x75, 0xef, 0x56, 0xfe, 0x4b, 0xd8, 0xb4, 0xd6, 0x28, 0x93, 0x89, 0x5b, 0x3f, 0xd2, 0x73, 0x4f, 0xda, - 0xc4, 0x64, 0x15, 0x6d, 0x7e, 0x5e, 0xbc, 0x7e, 0xcf, 0xc7, 0x2f, 0xc1, 0x8b, - 0xbb, 0xf5, 0x11, 0x00, 0x32, 0xe6, 0x6d, 0x75, 0xb3, 0x17, 0x1e, 0xf4, 0xb5, - 0x13, 0x29, 0x01, 0x64, 0xa7, 0x7b, 0x42, 0xb0, 0xa4, 0xcf, 0xb8, 0x96, 0x39, - 0xab, 0x23, 0xa3, 0xde, 0xf6, 0x5e, 0x3e, 0xa8, 0x60, 0x5a, 0xa8, 0x78, 0x16, - 0x1e, 0xad, 0x53, 0x6c, 0x11, 0x83, 0x0a, 0x4d, 0xe8, 0x1a, 0x0f, 0x4e, 0x15, - 0x18, 0xc1, 0x50, 0x91, 0x54, 0x04, 0x90, 0xc6, 0x0d, 0x31, 0xbc, 0xa7, 0xe7, - 0x4b, 0x3e, 0x3b, 0xa3, 0xd0, 0xe8, 0xa6, 0x39, 0x2a, 0x06, 0x2b, 0x8e, 0x86, - 0xd9, 0xd7, 0xd0, 0x0b, 0x21, 0x70, 0x1e, 0x7b, 0x06, 0x2e, 0x06, 0xb1, 0xbc, - 0xd8, 0x57, 0x96, 0xfa, 0xae, 0x5b, 0xab, 0x7c, 0x82, 0x97, 0x7c, 0x0f, 0xf7, - 0x97, 0x09, 0x3e, 0x2c, 0x1f, 0x3a, 0xe8, 0x55, 0xf6, 0x5a, 0xea, 0x91, 0xe1, - 0x31, 0x2f, 0xc6, 0xb8, 0xa4, 0x35, 0x1a, 0x01, 0xb4, 0x59, 0x75, 0xe1, 0x88, - 0x45, 0xee, 0x5f, 0x1c, 0xf5, 0x78, 0x2a, 0x0e, 0x97, 0xc7, 0x4d, 0xe6, 0x34, - 0x6d, 0x27, 0xc1, 0x2e, 0x6c, 0x7d, 0x4a, 0x1c, 0x73, 0xa0, 0x02, 0xd8, 0xb2, - 0x98, 0x5f, 0x04, 0xa6, 0x24, 0x24, 0x02, 0x3c, 0x9b, 0x9e, 0x33, 0xc4, 0xfb, - 0x7f, 0x12, 0xbd, 0xf2, 0x1f, 0x07, 0xf2, 0x65, 0xc5, 0x37, 0xd5, 0x1c, 0x65, - 0x51, 0xf4, 0x61, 0x7b, 0x91, 0x5d, 0x21, 0xf3, 0x62, 0xed, 0xe2, 0x25, 0xb5, - 0x90, 0xcf, 0x68, 0xc6, 0x05, 0xaf, 0x57, 0x77, 0x9f, 0x8a, 0xab, 0xab, 0x24, - 0x5d, 0x87, 0x9d, 0x5e, 0x89, 0x95, 0x48, 0x20, 0x48, 0x90, 0xc3, 0x59, 0xda, - 0xb7, 0x4e, 0x65, 0x2a, 0x0b, 0xc5, 0x0c, 0x6c, 0x08, 0x3a, 0x55, 0xd6, 0xc7, - 0x30, 0x6e, 0x74, 0x08, 0x6f, 0x47, 0x68, 0x93, 0x3a, 0xa2, 0x48, 0x73, 0x68, - 0x18, 0x67, 0xa7, 0x89, 0x3d, 0x77, 0xcb, 0x7f, 0x29, 0xb8, 0xc8, 0x47, 0xc5, - 0x83, 0xf2, 0xd0, 0x71, 0xa6, 0x86, 0x61, 0x6e, 0x20, 0x67, 0x19, 0xf7, 0x61, - 0xae, 0x39, 0xc1, 0x10, 0x44, 0x2e, 0x06, 0x16, 0x3d, 0x2b, 0x84, 0x59, 0x03, - 0x60, 0x69, 0x5d, 0x4e, 0x19, 0x84, 0x9e, 0x63, 0x4f, 0x24, 0xd9, 0xad, 0x39, - 0x6c, 0x19, 0xff, 0x83, 0xce, 0x74, 0xf4, 0x6e, 0x64, 0x5f, 0x93, 0x2e, 0x14, - 0x1a, 0x41, 0x19, 0x59, 0x36, 0xc8, 0x5d, 0x51, 0x44, 0x14, 0xf1, 0x12, 0xe6, - 0x0b, 0x1a, 0x25, 0x37, 0xc3, 0x8d, 0x6d, 0xc6, 0xc4, 0x63, 0x83, 0x05, 0xc9, - 0xbd, 0x6c, 0x62, 0xe3, 0x66, 0xbc, 0x63, 0x12, 0x3e, 0x3e, 0x6d, 0xd3, 0x6e, - 0xed, 0xd3, 0x13, 0x6f, 0xce, 0x8d, 0xee, 0xca, 0x2a, 0xa0, 0x9a, 0x32, 0x98, - 0xa3, 0x9d, 0x83, 0x85, 0x9e, 0xfc, 0x9b, 0x2b, 0x69, 0xcf, 0x9a, 0x7d, 0xee, - 0x08, 0xa9, 0x8e, 0x4b, 0xe5, 0x58, 0xac, 0x79, 0x12, 0xfd, 0xcb, 0x42, 0x20, - 0x90, 0x75, 0x42, 0x02, 0x60, 0xf7, 0xca, 0xd0, 0xf2, 0xc0, 0x1f, 0x2a, 0xfe, - 0x33, 0x07, 0x3f, 0x26, 0x24, 0x9d, 0x94, 0x4f, 0x7a, 0x50, 0xdd, 0x84, 0x83, - 0x9b, 0xc3, 0xea, 0x7f, 0xde, 0xe4, 0xed, 0x71, 0x44, 0x9c, 0xf0, 0x75, 0x33, - 0xd2, 0x6e, 0x1e, 0x27, 0xa3, 0xef, 0xb0, 0x32, 0xc3, 0xa3, 0xb3, 0x4b, 0xd3, - 0x09, 0x26, 0x22, 0xd2, 0x06, 0x2a, 0xe5, 0x36, 0xef, 0x51, 0x49, 0xc4, 0x9b, - 0x5b, 0xc9, 0x47, 0x5e, 0xaf, 0xab, 0x6e, 0x67, 0x57, 0x61, 0x00, 0x8b, 0x0d, - 0xad, 0xde, 0xec, 0xaa, 0x60, 0x44, 0x70, 0xbb, 0xe0, 0xfa, 0xda, 0x25, 0x5d, - 0x29, 0x0e, 0x92, 0xb1, 0x90, 0xc2, 0xc2, 0xd8, 0xc2, 0xde, 0xe5, 0x45, 0x5d, - 0x1f, 0xa9, 0xa9, 0xf3, 0xdb, 0x77, 0x79, 0xb5, 0x84, 0x64, 0x34, 0x64, 0xaa, - 0x80, 0x14, 0xba, 0x66, 0x99, 0x4d, 0xe2, 0x55, 0x17, 0xf8, 0x39, 0x80, 0xe6, - 0x6e, 0xe4, 0xf6, 0x23, 0x14, 0xae, 0x6d, 0xbe, 0xf4, 0x52, 0xd5, 0xd3, 0x8b, - 0x0a, 0x16, 0xf3, 0x99, 0x1f, 0x36, 0xd8, 0xa8, 0xb3, 0x9d, 0xdc, 0x0d, 0x55, - 0x95, 0xee, 0xd9, 0x87, 0x62, 0x87, 0x8c, 0xdf, 0x3f, 0x4a, 0x2e, 0xdc, 0x5c, - 0xda, 0x77, 0xd5, 0xfe, 0x4f, 0xaf, 0x63, 0xa1, 0x5f, 0x56, 0x8a, 0x54, 0x0d, - 0xa5, 0x7d, 0xd9, 0xbe, 0xb6, 0xfb, 0x1a, 0x97, 0x7c, 0xcb, 0x91, 0xb4, 0xd7, - 0x9c, 0xb3, 0x9b, 0x28, 0x91, 0x1a, 0x29, 0xe7, 0xbf, 0x02, 0x8a, 0xc6, 0x10, - 0x37, 0x96, 0xdf, 0xb6, 0xb2, 0x09, 0x67, 0x23, 0x9a, 0xd3, 0x73, 0xc3, 0x8c, - 0x53, 0xf6, 0xdf, 0x18, 0x23, 0xd4, 0x95, 0x0a, 0x02, 0x83, 0xe9, 0x9b, 0x9c, - 0x06, 0xab, 0x29, 0x66, 0x66, 0x7c, 0x9d, 0xf6, 0x77, 0x71, 0x6b, 0x0c, 0xad, - 0xed, 0x81, 0x8d, 0xf9, 0xe4, 0x49, 0xc0, 0x72, 0xe2, 0x2f, 0x9d, 0x98, 0xbb, - 0x0f, 0x9b, 0x03, 0xbd, 0x5f, 0xd0, 0x13, 0xfc, 0xef, 0x3e, 0xd6, 0xa4, 0x9a, - 0xeb, 0x98, 0x72, 0x02, 0x54, 0x08, 0x7e, 0xf7, 0x28, 0xe3, 0x19, 0x47, 0xff, - 0xe8, 0xf7, 0x66, 0xe6, 0x3e, 0xe4, 0x6f, 0xf2, 0x08, 0x16, 0xd5, 0xfa, 0x8f, - 0xf5, 0x5a, 0x26, 0x39, 0x89, 0x61, 0x49, 0x0a, 0xb9, 0xae, 0x36, 0x6f, 0xc5, - 0xa2, 0xd1, 0x99, 0x6e, 0xd6, 0x93, 0xcc, 0xca, 0x82, 0x35, 0x6f, 0x60, 0x0a, - 0xb0, 0x99, 0xf6, 0xec, 0xa8, 0xbf, 0xe6, 0x45, 0x27, 0x0d, 0x3f, 0x95, 0xed, - 0xba, 0x5b, 0x0d, 0xe7, 0xa3, 0x28, 0x19, 0x23, 0x3b, 0xcc, 0x75, 0x4a, 0x5c, - 0xe2, 0xe5, 0xea, 0x07, 0x84, 0x2e, 0x5f, 0xf2, 0xce, 0xbe, 0x62, 0xad, 0x76, - 0xe8, 0xef, 0xf8, 0xd1, 0x5e, 0xa4, 0xc2, 0x4a, 0x5f, 0x20, 0x78, 0x68, 0x31, - 0x9a, 0x5a, 0xf6, 0xb0, 0x35, 0xbe, 0x3f, 0x44, 0xf4, 0x34, 0x09, 0x4f, 0x6e, - 0x52, 0x5b, 0xe6, 0x14, 0xda, 0xc9, 0x20, 0xa3, 0x30, 0xbd, 0xfb, 0x26, 0xd7, - 0x5f, 0xe7, 0xb4, 0xb3, 0x65, 0xd0, 0x94, 0x45, 0x92, 0x50, 0xaa, 0xa5, 0x54, - 0x44, 0x89, 0xfb, 0x1d, 0x99, 0x25, 0x81, 0x80, 0x0a, 0x77, 0xb8, 0x91, 0x21, - 0x57, 0xfc, 0x97, 0x13, 0xaa, 0xac, 0x25, 0xb4, 0xc2, 0x6e, 0xb0, 0x3f, 0x71, - 0x66, 0x46, 0x61, 0x9a, 0xf0, 0x24, 0x56, 0xae, 0x69, 0x59, 0x62, 0xfe, 0x5e, - 0x93, 0x1a, 0x63, 0xb5, 0xc7, 0x90, 0x52, 0xec, 0xd3, 0x33, 0xe1, 0x84, 0x12, - 0xdb, 0x91, 0xe1, 0x5f, 0x7c, 0xbc, 0x70, 0xb4, 0xcd, 0x7e, 0x8e, 0x3c, 0x95, - 0x1f, 0x35, 0x85, 0x72, 0xe3, 0x77, 0x67, 0xe7, 0xd5, 0x27, 0x34, 0xd3, 0x37, - 0x2a, 0x3a, 0x5d, 0x03, 0x00, 0xe1, 0xf7, 0x43, 0x6e, 0x1e, 0x76, 0x43, 0x76, - 0x71, 0xde, 0x6e, 0x83, 0xe3, 0x51, 0xa5, 0xc6, 0xb2, 0x63, 0x4f, 0xa6, 0xa2, - 0xf7, 0x80, 0xae, 0xb7, 0x14, 0x65, 0xc4, 0xa1, 0xb1, 0x8d, 0x10, 0x84, 0x5e, - 0x1a, 0xa2, 0xa4, 0x52, 0xf3, 0x73, 0x1c, 0x8c, 0xb6, 0x50, 0x82, 0xa6, 0x22, - 0xa7, 0xc2, 0xe0, 0x01, 0x3e, 0xa4, 0x7d, 0x0b, 0xdd, 0x42, 0xd6, 0x99, 0x04, - 0x66, 0x64, 0x9a, 0x90, 0x5c, 0x68, 0x4c, 0x32, 0x51, 0x71, 0x6d, 0x61, 0xf7, - 0x60, 0xd5, 0x3d, 0xe6, 0xe3, 0xf7, 0x90, 0xfb, 0xa7, 0xf5, 0xf1, 0xf4, 0xde, - 0x26, 0x71, 0x13, 0xbd, 0xfc, 0xd7, 0x42, 0x28, 0x22, 0x33, 0x0b, 0x32, 0xd5, - 0x8e, 0x67, 0x77, 0x76, 0x5f, 0x22, 0xa4, 0x11, 0x63, 0x44, 0xee, 0xb6, 0x5b, - 0x2e, 0xc5, 0x16, 0x39, 0x3a, 0xb3, 0x75, 0x1b, 0x53, 0x56, 0xd2, 0xb0, 0xc9, - 0x50, 0x0c, 0x0f, 0x3e, 0x46, 0x91, 0x81, 0x03, 0x5b, 0xc3, 0x66, 0x0f, 0x0b, - 0x8f, 0x9f, 0xbe, 0x6e, 0x40, 0xb5, 0xe8, 0x9c, 0xb7, 0x9b, 0x06, 0x37, 0x14, - 0xca, 0x75, 0xe7, 0x2e, 0x2e, 0x10, 0x0a, 0x10, 0xd6, 0x3b, 0xf7, 0x84, 0xdf, - 0x08, 0x20, 0xef, 0x25, 0xf8, 0xef, 0x40, 0xfe, 0x5f, 0x05, 0xfb, 0x95, 0x68, - 0x3f, 0x91, 0x05, 0xff, 0x3c, 0xb2, 0xd2, 0x19, 0xab, 0x76, 0x60, 0x5a, 0x06, - 0x4f, 0x69, 0x21, 0x9f, 0x1d, 0xc0, 0xd0, 0x0b, 0x3b, 0x48, 0x64, 0x2f, 0x97, - 0x0d, 0xc0, 0x0c, 0xca, 0x4b, 0x8b, 0x43, 0x30, 0x8b, 0xe1, 0x82, 0x86, 0xec, - 0x5a, 0x42, 0x88, 0xd6, 0x00, 0xa3, 0x78, 0x5c, 0x2e, 0xc0, 0x3e, 0x02, 0xe5, - 0xd0, 0x2f, 0x53, 0x35, 0x4b, 0x05, 0x2f, 0xd3, 0xda, 0x0d, 0xff, 0x82, 0xcd, - 0x1f, 0x55, 0xeb, 0xca, 0x57, 0xb6, 0x33, 0x7c, 0x85, 0x93, 0x8a, 0x79, 0x81, - 0x3d, 0x20, 0x21, 0xd6, 0x09, 0x4c, 0x68, 0xb3, 0x75, 0xe9, 0x84, 0xf6, 0x83, - 0x93, 0x30, 0x08, 0x71, 0xe3, 0x48, 0xfc, 0x52, 0x36, 0xcc, 0xa6, 0x33, 0x05, - 0x44, 0xe5, 0x46, 0x39, 0xb5, 0x41, 0x87, 0x01, 0xff, 0x4c, 0xc4, 0x5a, 0x31, - 0xf6, 0x2e, 0xdd, 0x84, 0x3d, 0xbb, 0xdc, 0x5a, 0xa7, 0x27, 0xab, 0x79, 0xb4, - 0x42, 0x68, 0x3c, 0x49, 0x56, 0xbb, 0xb1, 0x95, 0xa4, 0xfa, 0x66, 0xdc, 0x9c, - 0xd5, 0x42, 0xc7, 0x6b, 0x91, 0x50, 0xc8, 0x4b, 0xf8, 0x90, 0x78, 0x99, 0x42, - 0xf5, 0x5c, 0x20, 0x0b, 0x77, 0x3e, 0xcd, 0xd7, 0x99, 0x2c, 0xff, 0x3e, 0xca, - 0x24, 0xde, 0x3e, 0x09, 0x84, 0xe1, 0x0e, 0x68, 0xae, 0x38, 0x75, 0x34, 0xb9, - 0x6c, 0xde, 0x37, 0x92, 0xf1, 0x35, 0xbf, 0x5f, 0x68, 0x78, 0x7d, 0x37, 0x0c, - 0xa8, 0xc4, 0xc4, 0x07, 0x4d, 0xc5, 0xd6, 0x01, 0xae, 0x90, 0x49, 0x54, 0x37, - 0xc3, 0xc2, 0xd4, 0x8a, 0x3d, 0x96, 0x66, 0x83, 0xac, 0x05, 0x16, 0x0b, 0x7a, - 0x84, 0xea, 0xa7, 0xaa, 0xb7, 0x40, 0x09, 0xe5, 0x7a, 0x85, 0xf7, 0xbf, 0x68, - 0xa2, 0xe4, 0x82, 0x00, 0x0f, 0x24, 0x55, 0xc7, 0x16, 0x64, 0xa2, 0xdc, 0xee, - 0x94, 0xbe, 0x35, 0xa8, 0x91, 0x41, 0xdb, 0xa2, 0x8a, 0xc1, 0x0b, 0x64, 0xb2, - 0x6a, 0xd4, 0x5f, 0x52, 0xb4, 0x9e, 0xe2, 0x3a, 0x5f, 0x69, 0xb0, 0x93, 0xcc, - 0xf5, 0x84, 0x44, 0x1f, 0xb5, 0x7a, 0xf0, 0xb7, 0x7a, 0x02, 0x78, 0x5a, 0xe1, - 0xda, 0xc0, 0x90, 0x91, 0xc6, 0x9d, 0xa9, 0x6f, 0x43, 0x3a, 0x47, 0x06, 0xad, - 0x45, 0x0b, 0x7c, 0x09, 0xd6, 0xac, 0x50, 0x85, 0x27, 0x99, 0x64, 0xe6, 0xb2, - 0x95, 0xab, 0x95, 0x47, 0x9e, 0x9f, 0x1d, 0x7e, 0x09, 0x07, 0x8c, 0x09, 0x4a, - 0x14, 0x35, 0x10, 0x2a, 0x5d, 0xac, 0x9d, 0x1e, 0xc2, 0xe6, 0x63, 0x93, 0x04, - 0x30, 0x67, 0xcb, 0x96, 0xc0, 0xd4, 0x28, 0x95, 0x3b, 0x97, 0xd0, 0x96, 0xba, - 0xea, 0xc4, 0x0e, 0x15, 0x63, 0x33, 0x8b, 0x02, 0x5f, 0x8d, 0xd9, 0x77, 0xe6, - 0x5d, 0x56, 0x09, 0x04, 0xa6, 0x72, 0x1b, 0x30, 0xef, 0xc4, 0x10, 0x17, 0xae, - 0x4d, 0x23, 0x15, 0x58, 0xc5, 0xc8, 0x2c, 0xc7, 0xdd, 0x7e, 0x33, 0x56, 0xc0, - 0x9d, 0xc2, 0x49, 0x06, 0xf0, 0x43, 0x8d, 0xfc, 0xc3, 0x00, 0x85, 0x6a, 0xc2, - 0xce, 0xd8, 0xf7, 0x7f, 0xa8, 0x01, 0x57, 0x36, 0xc6, 0x61, 0xe8, 0x02, 0x48, - 0xae, 0xeb, 0x77, 0x48, 0x74, 0xaa, 0x79, 0xd2, 0x90, 0xb8, 0xf5, 0x02, 0x7a, - 0x0a, 0x50, 0x95, 0x37, 0xfc, 0x7c, 0x68, 0x9b, 0x7a, 0xd8, 0x61, 0x16, 0xcf, - 0xec, 0x26, 0x47, 0xcc, 0xaa, 0xe1, 0xc7, 0x4b, 0x41, 0x6f, 0x3e, 0x6a, 0xe8, - 0xf7, 0xcc, 0x60, 0xea, 0xaf, 0x7b, 0x6a, 0x59, 0x0d, 0x51, 0x54, 0x41, 0x38, - 0xe1, 0x73, 0x29, 0x45, 0x60, 0x3a, 0x53, 0x46, 0x2c, 0x60, 0xe1, 0xf6, 0xcb, - 0x0c, 0x9c, 0xa0, 0x39, 0x0c, 0x48, 0x82, 0x24, 0xc3, 0x13, 0x26, 0x9f, 0xcd, - 0x59, 0xfc, 0xb6, 0x11, 0xfb, 0x2d, 0x9b, 0x4c, 0x8f, 0xa6, 0x01, 0xbb, 0x1c, - 0xb8, 0xd0, 0x7d, 0x79, 0x7b, 0xf5, 0xde, 0x52, 0xbc, 0xee, 0xb0, 0x23, 0x01, - 0xc8, 0x96, 0x2a, 0xc1, 0xfc, 0x04, 0x91, 0xdc, 0x81, 0xaf, 0xfd, 0x6c, 0x1e, - 0xbf, 0x89, 0xa1, 0x3d, 0x6f, 0x29, 0x0e, 0xda, 0x5d, 0x5c, 0xef, 0x38, 0x22, - 0x15, 0xc5, 0xe9, 0x51, 0xd7, 0x13, 0x05, 0xef, 0x33, 0xd9, 0x73, 0x71, 0x26, - 0x61, 0xdd, 0xb3, 0xd8, 0x7d, 0x0e, 0xa6, 0xc5, 0x76, 0x45, 0x74, 0x90, 0xef, - 0xe3, 0xca, 0x30, 0x7e, 0x5d, 0x4e, 0x54, 0x69, 0x13, 0x55, 0xf2, 0xa1, 0x35, - 0x0c, 0x0f, 0x71, 0x9d, 0x01, 0x0d, 0xcc, 0xdd, 0xd3, 0xd2, 0x91, 0x2a, 0x87, - 0xd9, 0xb7, 0x1e, 0x86, 0x6c, 0x9f, 0x62, 0xf5, 0xbe, 0x9b, 0x19, 0xed, 0x1c, - 0xec, 0x22, 0x0c, 0x9e, 0x76, 0x12, 0xa0, 0x9a, 0x54, 0x60, 0x25, 0x0a, 0x04, - 0x0f, 0x20, 0xed, 0x1e, 0x0e, 0x64, 0x43, 0xa5, 0x56, 0xb4, 0x17, 0x1c, 0x24, - 0xac, 0x46, 0x16, 0x09, 0x53, 0x03, 0x25, 0x6e, 0x48, 0xca, 0x4d, 0x53, 0x5a, - 0x2f, 0x9c, 0xa2, 0x94, 0x5b, 0x19, 0x56, 0x56, 0xac, 0xb5, 0x75, 0xc0, 0x0f, - 0x73, 0x85, 0xdf, 0xb6, 0x97, 0x99, 0x29, 0xa5, 0x90, 0xef, 0x02, 0xac, 0x33, - 0xe6, 0xa8, 0x8d, 0xea, 0x07, 0x5b, 0xa9, 0x96, 0xd3, 0xc3, 0x36, 0x24, 0x86, - 0xc9, 0x23, 0x12, 0x60, 0x8f, 0xb9, 0x3e, 0x14, 0x32, 0xfd, 0xc2, 0x9b, 0x76, - 0x58, 0x25, 0x3d, 0xdd, 0xff, 0xa2, 0x95, 0xf3, 0x93, 0xd8, 0x1b, 0x0c, 0x85, - 0x67, 0x42, 0xb3, 0xaa, 0x36, 0x14, 0x73, 0xd3, 0x76, 0x02, 0x9c, 0xb4, 0xab, - 0x6b, 0xf0, 0x54, 0x55, 0x7c, 0xe2, 0x94, 0xc7, 0x28, 0xa4, 0x68, 0x7d, 0x57, - 0xec, 0x89, 0x09, 0xff, 0x51, 0xa4, 0xd0, 0x2f, 0x9d, 0xcd, 0x11, 0x51, 0xec, - 0xa4, 0x21, 0x94, 0x0c, 0xc6, 0xd6, 0xc1, 0x29, 0x9f, 0x01, 0xf8, 0x1a, 0x61, - 0xe0, 0xc9, 0xe6, 0xf8, 0xeb, 0x5e, 0x99, 0x50, 0xeb, 0x9c, 0x8d, 0xb0, 0x85, - 0x71, 0x0d, 0xba, 0xba, 0xa8, 0xb4, 0x95, 0x55, 0xe4, 0xd9, 0x9b, 0x3b, 0xf5, - 0xc8, 0x1f, 0xf9, 0xfe, 0x31, 0x4e, 0x04, 0x7a, 0xf1, 0x52, 0x50, 0x8f, 0x57, - 0x01, 0x5c, 0xa4, 0x02, 0xc6, 0x7d, 0x92, 0x5c, 0x99, 0xac, 0xea, 0x3e, 0xe8, - 0xcc, 0x4b, 0x00, 0x8c, 0x5c, 0xb4, 0x39, 0x66, 0xe7, 0x14, 0xef, 0x48, 0x0f, - 0xd0, 0x5e, 0x07, 0xc7, 0xb2, 0xdd, 0xa9, 0xaa, 0x39, 0x66, 0x11, 0x3e, 0xaa, - 0x29, 0x3d, 0x3f, 0x62, 0x2b, 0x30, 0x9d, 0x64, 0x80, 0x3c, 0xe1, 0xe6, 0x37, - 0x8b, 0x6a, 0xac, 0x4f, 0xab, 0x52, 0x7c, 0x43, 0xcd, 0x45, 0xed, 0x0a, 0x3c, - 0x1a, 0x4b, 0x9f, 0xb1, 0x8d, 0xcc, 0xcf, 0xcd, 0xb6, 0xac, 0x0c, 0x24, 0x21, - 0x63, 0x9c, 0xda, 0x00, 0x75, 0xa2, 0x0d, 0xc5, 0x11, 0x1b, 0x8d, 0x3d, 0x31, - 0x99, 0x49, 0x5b, 0xd9, 0x13, 0x3d, 0xba, 0xb9, 0x45, 0x41, 0x41, 0x0e, 0x4f, - 0xba, 0x92, 0xc7, 0xb6, 0x06, 0xa5, 0xcb, 0x12, 0x2f, 0x14, 0x0c, 0xf1, 0xa3, - 0x59, 0x6f, 0x27, 0x88, 0xf3, 0xc8, 0xb9, 0x26, 0x60, 0xf1, 0x4c, 0xb6, 0x5a, - 0xf5, 0xdd, 0x23, 0xdf, 0xdb, 0xac, 0x13, 0x71, 0xec, 0xf4, 0xb3, 0x37, 0x12, - 0xfe, 0xd2, 0x29, 0x2c, 0x44, 0xf7, 0x08, 0x34, 0xcf, 0x96, 0xc0, 0x5d, 0x58, - 0x82, 0x7e, 0x69, 0xbf, 0xc2, 0xe6, 0x96, 0xfa, 0x08, 0x74, 0x86, 0x9c, 0x02, - 0xf3, 0xdc, 0xa1, 0x1c, 0x3b, 0x90, 0xcb, 0x21, 0x4e, 0x68, 0xbc, 0x1c, 0xae, - 0x03, 0x9d, 0x7a, 0x14, 0x6c, 0xdc, 0x1d, 0x60, 0x9d, 0x7a, 0x6b, 0x3f, 0xd5, - 0xd4, 0x61, 0xb0, 0x95, 0x1c, 0x82, 0xcf, 0xb3, 0xe7, 0x63, 0xfa, 0xd2, 0xd1, - 0xbc, 0x76, 0x78, 0xcd, 0xf8, 0x27, 0x79, 0xf8, 0xfd, 0x5a, 0x1c, 0xe2, 0x2a, - 0x8d, 0x3c, 0x45, 0x47, 0xab, 0xd9, 0x59, 0x83, 0x8a, 0x46, 0xfb, 0x80, 0xaf, - 0xe0, 0x1f, 0x8e, 0xcc, 0x99, 0x31, 0x51, 0x3b, 0x19, 0x62, 0xec, 0x54, 0x08, - 0x56, 0xcb, 0x18, 0x93, 0x87, 0xcf, 0xbf, 0xcc, 0x0f, 0x7c, 0x68, 0x22, 0x3c, - 0xba, 0x47, 0xfb, 0x0c, 0x9b, 0x48, 0x6e, 0x4d, 0x99, 0x17, 0x19, 0x41, 0xf7, - 0x67, 0x5a, 0x8b, 0x46, 0x32, 0x8a, 0x3b, 0xc1, 0x09, 0xbf, 0x07, 0xc6, 0x6d, - 0x5e, 0xde, 0x77, 0x1c, 0xc4, 0xc7, 0x4c, 0xe8, 0x03, 0x33, 0x82, 0x91, 0x91, - 0xee, 0xdc, 0x49, 0x35, 0x08, 0xa6, 0x44, 0x53, 0x0a, 0x61, 0x44, 0xf2, 0x2d, - 0xcf, 0x97, 0x52, 0x5a, 0x4c, 0xdc, 0xa1, 0xad, 0x71, 0x07, 0x3b, 0x08, 0x0b, - 0x73, 0xea, 0x45, 0x49, 0xf5, 0x40, 0x1b, 0xff, 0x43, 0x18, 0x26, 0x8e, 0x6a, - 0xd6, 0x37, 0x36, 0x31, 0x57, 0xa1, 0x9a, 0x53, 0xf1, 0x23, 0xa0, 0xb0, 0xe1, - 0x6d, 0x0b, 0x77, 0xf0, 0x20, 0x28, 0xda, 0x46, 0x41, 0x00, 0xfd, 0xe7, 0x6d, - 0x83, 0xdd, 0x0b, 0xb2, 0x24, 0xf7, 0xb5, 0x7a, 0x00, 0xc0, 0x2f, 0x68, 0xae, - 0x64, 0x8f, 0xdc, 0x52, 0x99, 0x57, 0xa1, 0x04, 0x90, 0xdc, 0xe1, 0xfd, 0xdb, - 0xb0, 0x90, 0x4f, 0x0d, 0x51, 0x8b, 0xb3, 0x87, 0x54, 0x40, 0x19, 0x98, 0x3b, - 0x61, 0x69, 0x75, 0xa7, 0x8e, 0x74, 0xd8, 0x54, 0xfd, 0xdc, 0x49, 0xb2, 0x55, - 0x16, 0x7b, 0x55, 0xef, 0x4b, 0xee, 0x46, 0x56, 0x68, 0xb2, 0x0e, 0xa4, 0x11, - 0x8c, 0xa5, 0x69, 0xae, 0x48, 0x0e, 0x0f, 0x6e, 0x5e, 0x04, 0x3a, 0x35, 0x7b, - 0x36, 0xd3, 0xab, 0x36, 0xc8, 0x61, 0xf2, 0x27, 0x83, 0x01, 0xdc, 0xe5, 0x76, - 0x74, 0xd5, 0x07, 0x3b, 0x3a, 0x6f, 0x51, 0x03, 0xa0, 0x79, 0x3a, 0xf1, 0xb7, - 0xd4, 0x6f, 0x95, 0x7e, 0x22, 0xd8, 0xd2, 0x58, 0x3b, 0xf1, 0x81, 0x83, 0x6c, - 0x3b, 0xe9, 0x93, 0x0b, 0xac, 0x8f, 0xa4, 0x60, 0xe9, 0x68, 0xaa, 0x71, 0x09, - 0x87, 0x0b, 0xbe, 0xd1, 0x7d, 0xf5, 0xf8, 0x88, 0xc8, 0xca, 0x14, 0x67, 0xae, - 0x17, 0xdb, 0xbc, 0xde, 0x31, 0xc1, 0x10, 0x5c, 0xb5, 0xbd, 0xa8, 0x8a, 0xc6, - 0xc6, 0x27, 0x00, 0x2c, 0xe2, 0x1c, 0x02, 0x14, 0x0f, 0xfe, 0x81, 0xec, 0x58, - 0xbf, 0x1e, 0x6d, 0x1b, 0xb7, 0xaa, 0xad, 0xa4, 0x1f, 0xba, 0x0b, 0xb5, 0x88, - 0x77, 0x8a, 0x7f, 0x65, 0x20, 0x2a, 0xd8, 0x11, 0xea, 0x73, 0xd2, 0x6c, 0x74, - 0x55, 0x03, 0x95, 0xaf, 0xf7, 0x53, 0x25, 0x10, 0x7c, 0x9b, 0x3f, 0x9a, 0xe9, - 0xdc, 0xdc, 0xd8, 0x6e, 0xd0, 0x81, 0xa2, 0xe7, 0x42, 0x47, 0x19, 0xa3, 0xd1, + 0xc4, 0x64, 0x15, 0x6d, 0x7e, 0x5e, 0xbc, 0x7e, 0xcf, 0x1d, 0x83, 0xb8, 0x6f, + 0x65, 0x96, 0x37, 0xe3, 0xb1, 0x42, 0xc1, 0x64, 0x96, 0x3b, 0x8c, 0xdc, 0xf4, + 0xba, 0x4f, 0x40, 0x35, 0xdf, 0xfc, 0x5a, 0x78, 0x94, 0x58, 0x84, 0x77, 0x81, + 0x91, 0x8a, 0xc7, 0x2f, 0xc1, 0x8b, 0xbb, 0xf5, 0x11, 0x00, 0x32, 0xe6, 0x6d, + 0x75, 0xb3, 0x17, 0x1e, 0xf4, 0xb5, 0x13, 0x29, 0x01, 0x64, 0xa7, 0x7b, 0x42, + 0xb0, 0xa4, 0xcf, 0xb8, 0x96, 0x39, 0xab, 0x23, 0x84, 0x5e, 0x1a, 0xa2, 0xa4, + 0x52, 0xf3, 0x73, 0x1c, 0x8c, 0xb6, 0x50, 0x82, 0xa6, 0x22, 0xa7, 0xc2, 0xe0, + 0x01, 0x3e, 0xa4, 0x7d, 0x0b, 0xdd, 0x42, 0xd6, 0x99, 0x04, 0x66, 0x64, 0x9a, + 0x90, 0x5c, 0x68, 0x4c, 0x32, 0x51, 0x71, 0x6d, 0x61, 0xf7, 0x60, 0xd5, 0x3d, + 0xe6, 0xe3, 0xf7, 0x90, 0xfb, 0xa7, 0xf5, 0xf1, 0xf4, 0xde, 0x26, 0x71, 0x13, + 0xbd, 0xfc, 0xd7, 0x42, 0x28, 0x22, 0x33, 0x0b, 0x32, 0xd5, 0x8e, 0x67, 0x77, + 0x76, 0x5f, 0x22, 0xa4, 0x11, 0x63, 0x44, 0xee, 0xb6, 0x5b, 0x2e, 0xc5, 0x16, + 0x39, 0x3a, 0xb3, 0x75, 0x1b, 0x53, 0x56, 0xd2, 0xb0, 0xc9, 0x50, 0x0c, 0x0f, + 0x3e, 0x46, 0x91, 0x81, 0x03, 0x5b, 0xc3, 0x66, 0x0f, 0x0b, 0x8f, 0x9f, 0xbe, + 0x6e, 0x40, 0xb5, 0xe8, 0x9c, 0xb7, 0x9b, 0x06, 0x37, 0x14, 0xca, 0x75, 0xe7, + 0x2e, 0x2e, 0x10, 0x0a, 0x10, 0xd6, 0x3b, 0xf7, 0x84, 0xdf, 0x08, 0x20, 0xef, + 0x25, 0xf8, 0xef, 0x40, 0xfe, 0x5f, 0x05, 0xfb, 0x95, 0x68, 0x3f, 0x91, 0x05, + 0xff, 0x3c, 0xb2, 0xd2, 0x19, 0xab, 0x76, 0x60, 0x5a, 0x06, 0x4f, 0x69, 0x21, + 0x9f, 0x1d, 0xc0, 0xd0, 0x0b, 0x3b, 0x48, 0x64, 0x2f, 0x97, 0x0d, 0xc0, 0x0c, + 0xca, 0x4b, 0x8b, 0x43, 0x30, 0x8b, 0xe1, 0x82, 0x86, 0xec, 0x5a, 0x42, 0x88, + 0xd6, 0x00, 0xa3, 0x78, 0x5c, 0xb6, 0x22, 0xd4, 0x68, 0xa4, 0xc6, 0x96, 0x9b, + 0x37, 0x92, 0xf2, 0x48, 0x50, 0x27, 0xd0, 0xad, 0x9a, 0xa4, 0xa9, 0xc2, 0xcc, + 0x97, 0x2f, 0x9e, 0xe5, 0x19, 0x0a, 0x95, 0xb1, 0xeb, 0x05, 0x8d, 0xdd, 0xd8, + 0xc0, 0x8e, 0x7d, 0x75, 0x3f, 0x5e, 0x01, 0x1b, 0x2b, 0xcf, 0xee, 0x1d, 0x52, + 0xc1, 0xc4, 0xf2, 0xca, 0xcd, 0xa3, 0x0b, 0xdb, 0x69, 0x30, 0x65, 0x3c, 0x0c, + 0xc4, 0x48, 0x6e, 0x60, 0xe8, 0x9f, 0xa8, 0x49, 0xb3, 0x20, 0x83, 0xba, 0x9d, + 0xb4, 0x53, 0xfb, 0x8d, 0xf6, 0x83, 0xcd, 0x68, 0x75, 0x4c, 0x87, 0xda, 0xa7, + 0x31, 0xf5, 0x70, 0xa7, 0xa4, 0x06, 0x0a, 0xf0, 0xce, 0x70, 0x0d, 0x31, 0xbc, + 0xa7, 0xe7, 0x4b, 0x3e, 0x3b, 0xa3, 0xd0, 0xe8, 0xa6, 0x39, 0x2a, 0x06, 0x2b, + 0x8e, 0x86, 0xd9, 0xd7, 0xd0, 0x0b, 0x21, 0x70, 0x1e, 0x7b, 0x06, 0x2e, 0x06, + 0xb1, 0xbc, 0xd8, 0x2a, 0x01, 0xd3, 0x75, 0x62, 0x6f, 0xbf, 0x87, 0x2d, 0x27, + 0xfa, 0x45, 0x11, 0xf5, 0xf8, 0xcf, 0x8c, 0x9a, 0xbc, 0xef, 0x2a, 0x99, 0x01, + 0x76, 0xae, 0x33, 0x93, 0xde, 0x93, 0x65, 0x5a, 0x92, 0x05, 0x56, 0x92, 0xf9, + 0x17, 0x08, 0xde, 0xc1, 0x4a, 0xda, 0x3b, 0x62, 0xc4, 0x7d, 0x93, 0x1b, 0xba, + 0xcb, 0x13, 0x95, 0xa1, 0xcb, 0xbe, 0x86, 0x20, 0x97, 0x0b, 0xa0, 0xe4, 0x82, + 0x00, 0x11, 0x82, 0x9c, 0x54, 0x52, 0xbb, 0xa4, 0x5d, 0x56, 0x88, 0x81, 0x1e, + 0x6a, 0x89, 0x60, 0x22, 0xfe, 0xfe, 0x95, 0x26, 0x6b, 0x88, 0x65, 0x32, 0x44, + 0x3c, 0x6f, 0x0e, 0xe6, 0x4d, 0xc1, 0xe1, 0x11, 0x07, 0xe2, 0x68, 0x50, 0xe8, + 0x42, 0xfe, 0xe2, 0xa4, 0xec, 0x52, 0x0c, 0xec, 0xdd, 0x3b, 0xec, 0x91, 0xfe, + 0xc9, 0xa5, 0x86, 0xdf, 0x55, 0x01, 0x90, 0x6e, 0xd2, 0xa7, 0xa5, 0x7c, 0xcf, + 0x34, 0xc4, 0x83, 0xac, 0x7d, 0xa1, 0x58, 0x8a, 0x1b, 0x6b, 0x99, 0x41, 0xf1, + 0x10, 0x40, 0xf9, 0x4c, 0xf7, 0x8f, 0xad, 0x89, 0xbf, 0x11, 0xfe, 0xd6, 0x9a, + 0xa0, 0xd8, 0x31, 0x05, 0xad, 0xac, 0xdd, 0x4e, 0x5f, 0x04, 0xa6, 0x24, 0x24, + 0x02, 0x3c, 0x9b, 0x9e, 0x33, 0xc4, 0xfb, 0x7f, 0x12, 0xbd, 0xf2, 0x1f, 0x07, + 0xf2, 0x65, 0xc5, 0x37, 0xd5, 0x1c, 0x65, 0x51, 0xf4, 0x61, 0x7b, 0x91, 0x5d, + 0x21, 0x99, 0x18, 0x39, 0xc3, 0xd0, 0xd3, 0x63, 0x93, 0xd6, 0x46, 0xe0, 0xa8, + 0xa4, 0x15, 0x09, 0x21, 0x7d, 0x0e, 0x7d, 0x2c, 0xa1, 0xa0, 0xa0, 0xd6, 0x77, + 0xa3, 0xea, 0xca, 0x23, 0xed, 0xeb, 0x07, 0xb7, 0x4e, 0x65, 0x2a, 0x0b, 0xc5, + 0x0c, 0x6c, 0x08, 0x3a, 0x55, 0xd6, 0xc7, 0x30, 0x6e, 0x74, 0x08, 0x6f, 0x47, + 0x68, 0x93, 0x3a, 0xa2, 0x48, 0x73, 0x68, 0x18, 0x67, 0xa7, 0x89, 0x3d, 0x77, + 0xcb, 0x7f, 0x29, 0xb8, 0xc8, 0x47, 0xc5, 0x83, 0xf2, 0xd0, 0x71, 0xa6, 0x86, + 0x61, 0x6e, 0x20, 0x67, 0x19, 0xf7, 0x61, 0xae, 0x39, 0xc1, 0x10, 0x44, 0x2e, + 0x06, 0x16, 0x3d, 0x2b, 0x84, 0x59, 0x03, 0x60, 0x69, 0x5d, 0x4e, 0x19, 0x84, + 0x9e, 0x63, 0x4f, 0x24, 0xd9, 0xad, 0x39, 0x6c, 0x19, 0xff, 0x83, 0xce, 0x74, + 0xf4, 0x6e, 0x64, 0x5f, 0x93, 0x2e, 0x14, 0x1a, 0x41, 0x19, 0x59, 0x36, 0xc8, + 0x5d, 0x51, 0x44, 0x14, 0xf1, 0x12, 0xe6, 0x0b, 0x1a, 0x25, 0x37, 0xc3, 0x8d, + 0x6d, 0xc6, 0xc4, 0x63, 0x83, 0x05, 0xc9, 0xbd, 0x6c, 0x62, 0xe3, 0x66, 0xbc, + 0x63, 0x12, 0x3e, 0x3e, 0x6d, 0xd3, 0x6e, 0xed, 0xd3, 0x13, 0x6f, 0xce, 0x8d, + 0xee, 0xca, 0x2a, 0xa0, 0x9a, 0x32, 0x98, 0xa3, 0x9d, 0x83, 0x85, 0x9e, 0xfc, + 0x9b, 0x2b, 0x69, 0xcf, 0x9a, 0x7d, 0xee, 0x08, 0xa9, 0x8e, 0x4b, 0xe5, 0x58, + 0xac, 0x79, 0x12, 0xfd, 0xcb, 0x42, 0x20, 0x90, 0x75, 0x42, 0x02, 0x60, 0xf7, + 0xca, 0xd0, 0xf2, 0xc0, 0x1f, 0x2a, 0xfe, 0x33, 0x07, 0x3f, 0x26, 0x24, 0x9d, + 0x94, 0x4f, 0x7a, 0x50, 0xdd, 0x84, 0x83, 0x9b, 0xc3, 0xea, 0x7f, 0xde, 0xe4, + 0xed, 0x71, 0x44, 0x9c, 0xf0, 0x75, 0x33, 0xd2, 0x6e, 0x1e, 0x27, 0xa3, 0xef, + 0xb0, 0x32, 0xc3, 0xa3, 0xb3, 0x4b, 0xd3, 0x09, 0x26, 0x22, 0xd2, 0x06, 0x2a, + 0xe5, 0x36, 0xef, 0x51, 0x49, 0xc4, 0x9b, 0x5b, 0xc9, 0x47, 0x5e, 0xaf, 0xab, + 0x6e, 0x67, 0x57, 0x61, 0x00, 0x8b, 0x0d, 0xad, 0xde, 0xec, 0xaa, 0x60, 0x44, + 0x70, 0xbb, 0xe0, 0xfa, 0xda, 0x25, 0x5d, 0x29, 0x0e, 0x92, 0xb1, 0x90, 0xc2, + 0xc2, 0xd8, 0xc2, 0xde, 0xe5, 0x45, 0x5d, 0x1f, 0xa9, 0xa9, 0xf3, 0xdb, 0x77, + 0x79, 0xb5, 0x84, 0x64, 0x34, 0x64, 0xaa, 0x80, 0x14, 0xba, 0x66, 0x99, 0x4d, + 0xe2, 0x55, 0x17, 0xf8, 0x39, 0x80, 0xe6, 0x6e, 0xe4, 0xf6, 0x23, 0x14, 0xae, + 0x6d, 0xbe, 0xf4, 0x52, 0xd5, 0xd3, 0x8b, 0x0a, 0x16, 0xf3, 0x99, 0x1f, 0x36, + 0xd8, 0xa8, 0xb3, 0x9d, 0xdc, 0x0d, 0x55, 0x95, 0xee, 0xd9, 0x87, 0x62, 0x87, + 0x8c, 0xdf, 0x3f, 0x4a, 0x2e, 0xdc, 0x5c, 0xda, 0x77, 0xd5, 0xfe, 0x4f, 0xaf, + 0x63, 0xa1, 0x5f, 0x56, 0x8a, 0x54, 0x0d, 0xa5, 0x7d, 0xd9, 0xbe, 0xb6, 0xfb, + 0x1a, 0x97, 0x7c, 0xcb, 0x91, 0xb4, 0xd7, 0x9c, 0xb3, 0x9b, 0x28, 0x91, 0x1a, + 0x29, 0xe7, 0xbf, 0x02, 0x8a, 0xc6, 0x10, 0x37, 0x96, 0xdf, 0xb6, 0xb2, 0x09, + 0x67, 0x23, 0x9a, 0xd3, 0x73, 0xc3, 0x8c, 0x53, 0xf6, 0xdf, 0x18, 0x23, 0xd4, + 0x95, 0x0a, 0x02, 0x83, 0xe9, 0x9b, 0x9c, 0x06, 0xab, 0x29, 0x66, 0x66, 0x7c, + 0x9d, 0xf6, 0x77, 0x71, 0x6b, 0x0c, 0xad, 0xed, 0x81, 0x8d, 0xf9, 0xe4, 0x49, + 0xc0, 0x72, 0xe2, 0x2f, 0x9d, 0x98, 0xbb, 0x0f, 0x9b, 0x03, 0xbd, 0x5f, 0xd0, + 0x13, 0xfc, 0xef, 0x3e, 0xd6, 0xa4, 0x9a, 0xeb, 0x98, 0x72, 0x02, 0x54, 0x08, + 0x7e, 0xf7, 0x28, 0xe3, 0x19, 0x47, 0xff, 0xe8, 0xf7, 0x66, 0xe6, 0x3e, 0xe4, + 0x6f, 0xf2, 0x08, 0x16, 0xd5, 0xfa, 0x8f, 0xf5, 0x5a, 0x26, 0x39, 0x89, 0x61, + 0x49, 0x0a, 0xb9, 0xae, 0x36, 0x6f, 0xc5, 0xa2, 0xd1, 0x99, 0x6e, 0xd6, 0x93, + 0xcc, 0xca, 0x82, 0x35, 0x6f, 0x60, 0x0a, 0xb0, 0x99, 0xf6, 0xec, 0xa8, 0xbf, + 0xe6, 0x45, 0x27, 0x0d, 0x3f, 0x95, 0xed, 0xba, 0x5b, 0x0d, 0xe7, 0xa3, 0x28, + 0x19, 0x23, 0x3b, 0xcc, 0x75, 0x4a, 0x5c, 0xe2, 0xe5, 0xea, 0x07, 0x84, 0x2e, + 0x5f, 0xf2, 0xce, 0xbe, 0x62, 0xad, 0x76, 0xe8, 0xef, 0xf8, 0xd1, 0x5e, 0xa4, + 0xc2, 0x4a, 0x5f, 0x20, 0x78, 0x68, 0x31, 0x9a, 0x5a, 0xf6, 0xb0, 0x35, 0xbe, + 0x3f, 0x44, 0xf4, 0x34, 0x09, 0x4f, 0x83, 0x9f, 0xed, 0x7a, 0x68, 0x25, 0x01, + 0x00, 0x25, 0xd5, 0xa5, 0x88, 0xda, 0x57, 0x96, 0xfa, 0xae, 0x5b, 0xab, 0x7c, + 0x82, 0x97, 0x7c, 0x0f, 0xf7, 0x97, 0x09, 0x3e, 0x2c, 0x1f, 0x3a, 0xe8, 0x55, + 0xf6, 0x5a, 0xea, 0x91, 0xe1, 0x31, 0x2f, 0xc6, 0xb8, 0xa4, 0x35, 0x1a, 0x2e, + 0xc0, 0x3e, 0x02, 0xe5, 0xd0, 0x2f, 0x53, 0x35, 0x4b, 0x05, 0x2f, 0xd3, 0xda, + 0x0d, 0xff, 0x82, 0xcd, 0x1f, 0x55, 0xeb, 0xca, 0x57, 0xb6, 0x33, 0x7c, 0x85, + 0x93, 0x8a, 0x79, 0x81, 0x3d, 0x20, 0x21, 0xd6, 0x09, 0x4c, 0x68, 0xb3, 0x75, + 0xe9, 0x84, 0xf6, 0x83, 0x93, 0x30, 0x08, 0x71, 0xe3, 0x48, 0xfc, 0x52, 0x36, + 0xcc, 0xa6, 0x33, 0x05, 0x44, 0xe5, 0x46, 0x39, 0xb5, 0x41, 0x87, 0x01, 0xff, + 0x4c, 0xc4, 0x5a, 0x31, 0xf6, 0x2e, 0xdd, 0x84, 0x3d, 0xbb, 0xdc, 0x5a, 0xa7, + 0x27, 0xab, 0x79, 0xb4, 0x42, 0x68, 0x3c, 0x49, 0x56, 0xbb, 0xb1, 0x95, 0xa4, + 0xfa, 0x66, 0xdc, 0x9c, 0xd5, 0x42, 0xc7, 0x6b, 0x91, 0x50, 0xc8, 0x4b, 0xf8, + 0x90, 0x78, 0x99, 0x42, 0xf5, 0x5c, 0x20, 0x0b, 0x77, 0x3e, 0xcd, 0xd7, 0x99, + 0x2c, 0xff, 0x3e, 0xca, 0x24, 0xde, 0x3e, 0x09, 0x84, 0xe1, 0x0e, 0x68, 0xae, + 0x38, 0x75, 0x34, 0xb9, 0x6c, 0xde, 0x37, 0x92, 0xf1, 0x35, 0xbf, 0x5f, 0x68, + 0x78, 0x7d, 0x37, 0x0c, 0xa8, 0xc4, 0xc4, 0x07, 0x4d, 0xc5, 0xd6, 0x6e, 0x52, + 0x5b, 0xe6, 0x14, 0xda, 0xc9, 0x20, 0xa3, 0x30, 0xbd, 0xfb, 0x26, 0xd7, 0x5f, + 0xe7, 0xb4, 0xb3, 0x65, 0xd0, 0x94, 0x45, 0x92, 0x50, 0xaa, 0xa5, 0x54, 0x44, + 0x89, 0xfb, 0x1d, 0x99, 0x25, 0x81, 0x80, 0x0a, 0x77, 0xb8, 0x91, 0x21, 0x57, + 0xfc, 0x97, 0x13, 0xaa, 0xac, 0x25, 0xb4, 0xc2, 0x6e, 0xb0, 0x3f, 0x71, 0x66, + 0x46, 0x61, 0x9a, 0xf0, 0x24, 0x56, 0xae, 0x69, 0x59, 0x62, 0xfe, 0x5e, 0x93, + 0x1a, 0x63, 0xb5, 0xc7, 0x90, 0x52, 0xec, 0xd3, 0x33, 0xe1, 0x84, 0x12, 0xdb, + 0x91, 0xe1, 0x5f, 0x7c, 0xbc, 0x70, 0xb4, 0xcd, 0x7e, 0x8e, 0x3c, 0x95, 0x1f, + 0x35, 0x85, 0x72, 0xe3, 0x77, 0x67, 0xe7, 0xd5, 0x27, 0x04, 0xa6, 0x72, 0x1b, + 0x30, 0xef, 0xc4, 0x10, 0x17, 0xae, 0x4d, 0x23, 0x15, 0x58, 0xc5, 0xc8, 0x2c, + 0xc7, 0xdd, 0x7e, 0x33, 0x56, 0xc0, 0x9d, 0xc2, 0x49, 0x06, 0xf0, 0x43, 0x8d, + 0xfc, 0xc3, 0x00, 0x85, 0x6a, 0xc2, 0xce, 0xd8, 0xf7, 0x7f, 0xa8, 0x01, 0x57, + 0x36, 0xc6, 0x61, 0xe8, 0x02, 0x48, 0xae, 0xeb, 0x77, 0x48, 0x74, 0xaa, 0x79, + 0xd2, 0x90, 0xb8, 0xf5, 0x02, 0x7a, 0x0a, 0x50, 0x95, 0x37, 0xfc, 0x7c, 0x68, + 0x9b, 0x7a, 0xd8, 0x61, 0x16, 0xcf, 0xec, 0x26, 0x47, 0xcc, 0xaa, 0xe1, 0xc7, + 0x4b, 0x41, 0x6f, 0x3e, 0x6a, 0xe8, 0xf7, 0xcc, 0xa8, 0x16, 0x77, 0x1b, 0xee, + 0x88, 0x90, 0x70, 0xa6, 0x8f, 0xd4, 0x11, 0x6f, 0x4d, 0xe7, 0xb0, 0xaf, 0xe4, + 0xa0, 0x0b, 0x1a, 0x35, 0x84, 0x18, 0x13, 0xfb, 0x1d, 0xee, 0xba, 0x2d, 0xd6, + 0x98, 0x59, 0x95, 0x74, 0xe3, 0x55, 0x1c, 0xee, 0x7c, 0xa4, 0x98, 0x77, 0x6a, + 0xdf, 0x74, 0x3a, 0xc2, 0xd9, 0x7a, 0x1a, 0xe5, 0xa8, 0x4b, 0xc7, 0x94, 0x4e, + 0xad, 0x23, 0xd3, 0xb1, 0xe9, 0xee, 0x0d, 0x03, 0xa2, 0x45, 0xcb, 0xcb, 0x94, + 0x9c, 0x37, 0xf9, 0xdc, 0xf2, 0x34, 0x86, 0x42, 0x52, 0xf0, 0x2b, 0x3f, 0x8a, + 0x6b, 0x11, 0x3b, 0x37, 0x2f, 0xc4, 0xa9, 0xd9, 0x5c, 0xd7, 0x3b, 0x6e, 0xc7, + 0xa0, 0x5c, 0x12, 0x50, 0x92, 0xa8, 0xd7, 0x9a, 0xcd, 0x3d, 0xf8, 0xa8, 0x4d, + 0xb9, 0xcf, 0xbd, 0x2b, 0xb3, 0x02, 0xf2, 0x6b, 0xdd, 0xa4, 0x65, 0xd9, 0x0b, + 0x94, 0xb1, 0x2c, 0x57, 0xfa, 0x3f, 0x16, 0x0d, 0x1c, 0xc2, 0xcb, 0x4b, 0xa9, + 0xe0, 0xed, 0xae, 0xce, 0x24, 0x7b, 0x78, 0x4d, 0x84, 0x5f, 0x6a, 0xe3, 0x4e, + 0x2b, 0x7c, 0xca, 0x5e, 0xf1, 0x8c, 0x8c, 0xcb, 0x7e, 0x6d, 0xb5, 0x1e, 0x33, + 0xa5, 0x07, 0x13, 0x7e, 0xbb, 0x70, 0x53, 0x27, 0x18, 0x7a, 0x69, 0xbf, 0x51, + 0xf1, 0x78, 0x35, 0xe4, 0x7f, 0xd6, 0x42, 0x5e, 0xfb, 0x9c, 0x1d, 0x50, 0x4e, + 0x6f, 0xd5, 0x57, 0x53, 0x40, 0x14, 0xc0, 0xd6, 0x65, 0x58, 0xe6, 0x11, 0x1d, + 0x0f, 0xa0, 0xdf, 0xc8, 0x29, 0xd5, 0x89, 0xbe, 0x47, 0x9a, 0x06, 0xe2, 0xd0, + 0x97, 0xc4, 0x26, 0x5a, 0xef, 0x4b, 0x04, 0xfe, 0x0c, 0xab, 0xc2, 0x31, 0x96, + 0xd3, 0xc3, 0x36, 0x64, 0x8e, 0x86, 0x94, 0xd3, 0xa1, 0x9d, 0x3d, 0xca, 0x53, + 0x1b, 0xeb, 0x50, 0xd4, 0x32, 0x7c, 0x5c, 0x0c, 0x23, 0xcb, 0x7c, 0xfd, 0xb0, + 0x8c, 0xa7, 0xcf, 0x2c, 0xac, 0x6b, 0xc1, 0x39, 0xd0, 0x74, 0x14, 0x73, 0xd3, + 0x76, 0x02, 0x9c, 0xb4, 0xab, 0x6b, 0xf0, 0x54, 0x55, 0x7c, 0xe2, 0x94, 0xc7, + 0x28, 0xa4, 0x68, 0x7d, 0x57, 0xec, 0x89, 0x09, 0xff, 0x51, 0xa4, 0xd0, 0x2f, + 0x9d, 0xcd, 0x11, 0x19, 0x3d, 0x7d, 0x1c, 0x9f, 0xda, 0xe6, 0xa1, 0x73, 0x96, + 0xa1, 0xbf, 0x57, 0xa9, 0x94, 0x93, 0x4f, 0x5e, 0x7a, 0x59, 0xf0, 0x45, 0xde, + 0xbe, 0xaf, 0xf6, 0x2e, 0xf3, 0x26, 0xb9, 0x47, 0xf2, 0xa8, 0xb4, 0x95, 0x55, + 0xe4, 0xd9, 0x9b, 0x3b, 0xf5, 0xc8, 0x1f, 0xf9, 0xfe, 0x31, 0x4e, 0x04, 0x7a, + 0xf1, 0x52, 0x50, 0x8f, 0x57, 0x01, 0x5c, 0xa4, 0x02, 0xc6, 0x7d, 0x92, 0x5c, + 0x99, 0xac, 0xea, 0x3e, 0xe8, 0xcc, 0x4b, 0x00, 0x8c, 0x5c, 0xb4, 0x39, 0x66, + 0xe7, 0x14, 0xef, 0x48, 0x0f, 0xd0, 0x5e, 0x07, 0xc7, 0xb2, 0xdd, 0xa9, 0xaa, + 0x39, 0x66, 0x11, 0x3e, 0xaa, 0x29, 0x3d, 0x3f, 0x62, 0x2b, 0x30, 0x9d, 0x64, + 0x80, 0x3c, 0xe1, 0xe6, 0x37, 0x8b, 0x6a, 0xac, 0x4f, 0xab, 0x52, 0x7c, 0x43, + 0xcd, 0x45, 0xed, 0x0a, 0x3c, 0x1a, 0x4b, 0x9f, 0xb1, 0x8d, 0xcc, 0xcf, 0xcd, + 0xb6, 0xac, 0x0c, 0x24, 0x21, 0x63, 0x9c, 0xda, 0x00, 0x75, 0xa2, 0x0d, 0xc5, + 0x11, 0x1b, 0x8d, 0x3d, 0x31, 0x99, 0x49, 0x5b, 0xd9, 0x13, 0x3d, 0xba, 0xb9, + 0x45, 0x41, 0x41, 0x0e, 0x4f, 0xba, 0x92, 0xc7, 0xb6, 0x06, 0xa5, 0xcb, 0x12, + 0x2f, 0x14, 0x0c, 0xf1, 0xa3, 0x59, 0x6f, 0x27, 0x88, 0xf3, 0xc8, 0xb9, 0x26, + 0x60, 0xf1, 0x4c, 0xb6, 0x5a, 0xf5, 0xdd, 0x23, 0xdf, 0xdb, 0xac, 0x13, 0x71, + 0xec, 0xf4, 0xb3, 0x37, 0x12, 0xfe, 0xd2, 0x29, 0x2c, 0x44, 0xf7, 0x08, 0x34, + 0xcf, 0x96, 0xc0, 0x5d, 0x58, 0x82, 0x7e, 0x69, 0xbf, 0xc2, 0xe6, 0x96, 0xfa, + 0x08, 0x74, 0x86, 0x9c, 0x02, 0xf3, 0xdc, 0xa1, 0x1c, 0x3b, 0x90, 0xcb, 0x21, + 0x4e, 0x68, 0xbc, 0x1c, 0xae, 0x03, 0x9d, 0x7a, 0x14, 0x6c, 0xdc, 0x1d, 0x60, + 0x9d, 0x7a, 0x6b, 0x3f, 0xd5, 0xd4, 0x61, 0xb0, 0x95, 0x1c, 0x82, 0xcf, 0xb3, + 0xe7, 0x63, 0xfa, 0xd2, 0xd1, 0xbc, 0x76, 0x78, 0xcd, 0xf8, 0x27, 0x79, 0xf8, + 0xfd, 0x5a, 0x1c, 0xe2, 0x2a, 0x8d, 0x3c, 0x45, 0x47, 0xab, 0xd9, 0x59, 0x83, + 0x8a, 0x46, 0xfb, 0x80, 0xaf, 0xe0, 0x1f, 0x8e, 0xcc, 0x99, 0x31, 0x51, 0x3b, + 0x19, 0x62, 0xec, 0x54, 0x08, 0x56, 0xcb, 0x18, 0x93, 0x87, 0xcf, 0xbf, 0xcc, + 0x0f, 0x7c, 0x68, 0x22, 0x3c, 0xba, 0x47, 0xfb, 0x0c, 0x9b, 0x48, 0x6e, 0x4d, + 0x99, 0x17, 0x19, 0x41, 0xf7, 0x67, 0x5a, 0x8b, 0x46, 0x32, 0x8a, 0x3b, 0xc1, + 0x09, 0xbf, 0x07, 0xc6, 0x6d, 0x5e, 0xde, 0x77, 0x1c, 0xc4, 0xc7, 0x4c, 0xe8, + 0x03, 0x33, 0x82, 0x91, 0x91, 0xee, 0xdc, 0x49, 0x35, 0x08, 0xa6, 0x44, 0x53, + 0x0a, 0x61, 0x44, 0xf2, 0x2d, 0xcf, 0x97, 0x52, 0x5a, 0x4c, 0xdc, 0xa1, 0xad, + 0x71, 0x07, 0x3b, 0x08, 0x0b, 0x73, 0xea, 0x45, 0x49, 0xf5, 0x40, 0x1b, 0xff, + 0x43, 0x18, 0x26, 0x8e, 0x6a, 0xd6, 0x37, 0x36, 0x31, 0x57, 0xa1, 0x9a, 0x53, + 0xf1, 0x23, 0xa0, 0xb0, 0xe1, 0x6d, 0x0b, 0x77, 0xf0, 0x20, 0x28, 0xda, 0x46, + 0x41, 0x00, 0xfd, 0xe7, 0x6d, 0x83, 0xdd, 0x0b, 0xb2, 0x24, 0xf7, 0xb5, 0x7a, + 0x00, 0xc0, 0x2f, 0x68, 0xae, 0x64, 0x8f, 0xdc, 0x52, 0x99, 0x57, 0xa1, 0x04, + 0x90, 0xdc, 0xe1, 0xfd, 0xdb, 0xb0, 0x90, 0x4f, 0x0d, 0x51, 0x8b, 0xb3, 0x87, + 0x54, 0x40, 0x19, 0x98, 0x3b, 0x61, 0x69, 0x75, 0xa7, 0x8e, 0x74, 0xd8, 0x54, + 0xfd, 0xdc, 0x49, 0xb2, 0x55, 0x16, 0x7b, 0x55, 0xef, 0x4b, 0xee, 0x46, 0x56, + 0x68, 0xb2, 0x0e, 0xa4, 0x11, 0x8c, 0xa5, 0x69, 0xae, 0x48, 0x0e, 0x0f, 0x6e, + 0x5e, 0x04, 0x3a, 0x35, 0x7b, 0x36, 0xd3, 0xab, 0x36, 0xc8, 0x61, 0xf2, 0x27, + 0x83, 0x01, 0xdc, 0xe5, 0x76, 0x74, 0xd5, 0x07, 0x3b, 0x3a, 0x6f, 0x51, 0x03, + 0xa0, 0x79, 0x3a, 0xf1, 0xb7, 0xd4, 0x6f, 0x95, 0x7e, 0x22, 0xd8, 0xd2, 0x58, + 0x3b, 0xf1, 0x81, 0x83, 0x6c, 0x3b, 0xe9, 0x93, 0x0b, 0xac, 0x8f, 0xa4, 0x60, + 0xe9, 0x68, 0xaa, 0x71, 0x09, 0x87, 0x0b, 0xbe, 0xd1, 0x7d, 0xf5, 0xf8, 0x88, + 0xc8, 0xca, 0x14, 0x67, 0xae, 0x17, 0xdb, 0xbc, 0xde, 0x31, 0xc1, 0x10, 0x5c, + 0xb5, 0xbd, 0xa8, 0x8a, 0xc6, 0xc6, 0x27, 0x00, 0x2c, 0xe2, 0x1c, 0x02, 0x14, + 0x0f, 0xfe, 0x81, 0xec, 0x58, 0xbf, 0x1e, 0x6d, 0x1b, 0x2b, 0xf9, 0xfa, 0x9c, + 0x40, 0x37, 0x47, 0x47, 0xde, 0x34, 0xb6, 0x48, 0xda, 0x0c, 0x93, 0xaa, 0xc9, + 0xe8, 0xe5, 0xe6, 0xb1, 0xaa, 0xc5, 0x89, 0xe3, 0x67, 0x76, 0x8f, 0x54, 0xc5, + 0xe3, 0x8a, 0x3e, 0xc9, 0x1c, 0xe6, 0xdd, 0x28, 0x13, 0x0c, 0x3a, 0xb0, 0xb2, + 0x3b, 0x60, 0x2b, 0xd5, 0xbe, 0x5d, 0xc2, 0x60, 0x03, 0xaa, 0xe0, 0x4b, 0x33, + 0xd7, 0xbd, 0x25, 0x90, 0xe9, 0x0c, 0x8c, 0x38, 0xcb, 0xcf, 0x9d, 0xcc, 0x66, + 0x69, 0x90, 0x52, 0xde, 0xcb, 0xf1, 0x00, 0x25, 0x39, 0x6c, 0xb8, 0x1f, 0x3b, + 0x24, 0x51, 0x2c, 0x84, 0x00, 0xb4, 0x7c, 0x82, 0x99, 0x02, 0x6e, 0x82, 0x84, + 0x2c, 0x19, 0x8e, 0x5d, 0xd9, 0x57, 0x1a, 0x56, 0xa7, 0xe0, 0xd4, 0x23, 0xff, + 0x27, 0x98, 0x9d, 0x3e, 0xb4, 0x17, 0xec, 0xd3, 0xc3, 0x09, 0x3f, 0xb8, 0x2c, + 0x56, 0x58, 0xe2, 0x96, 0x24, 0xc5, 0x32, 0x80, 0xc8, 0x14, 0xe5, 0x9c, 0x03, + 0xb8, 0x7a, 0x86, 0x51, 0xce, 0xe6, 0x3b, 0x85, 0x93, 0x8c, 0xb9, 0x95, 0x02, + 0x1e, 0x07, 0x91, 0xaf, 0x9b, 0xb2, 0xaf, 0x5f, 0x97, 0xc2, 0x78, 0x76, 0xa0, + 0xf0, 0xfa, 0xee, 0x9b, 0xc3, 0xbd, 0x7a, 0x3a, 0x60, 0x6a, 0x9f, 0xdb, 0x84, + 0x9c, 0x5d, 0x82, 0xd0, 0xa6, 0x19, 0x23, 0xc2, 0xe5, 0xd8, 0xaa, 0x63, 0xa8, + 0xa5, 0x0c, 0x38, 0xbd, 0x03, 0x87, 0x72, 0xc4, 0x14, 0x3d, 0x8b, 0x7a, 0xcf, + 0xd7, 0x4e, 0x72, 0xc0, 0x4d, 0x89, 0x24, 0x8d, 0xff, 0x20, 0xfe, 0x8d, 0xc5, + 0xec, 0x21, 0x49, 0x05, 0x4e, 0xa2, 0x41, 0x64, 0xe8, 0x5f, 0x67, 0x44, 0xad, + 0x0c, 0xac, 0xf1, 0xa8, 0xb7, 0x01, 0x26, 0xf4, 0x82, 0xc0, 0x92, 0xed, 0x9f, + 0x61, 0x27, 0xd2, 0x05, 0x0d, 0x12, 0xe8, 0x78, 0xa7, 0x96, 0x53, 0xa1, 0xe8, + 0x4d, 0xae, 0xc3, 0xeb, 0xe6, 0x2d, 0x5f, 0x6c, 0x4a, 0xbe, 0x5c, 0xe9, 0x0a, + 0x7f, 0xe2, 0xe5, 0x2a, 0x8d, 0x78, 0x46, 0xe8, 0xed, 0xf2, 0xf2, 0xbc, 0xe0, + 0x5a, 0x03, 0x7c, 0x82, 0x6f, 0x22, 0xca, 0xad, 0x12, 0x61, 0x46, 0x7d, 0xcf, + 0xb7, 0xd6, 0xb6, 0x13, 0x3d, 0xc2, 0x1e, 0x80, 0x96, 0xc7, 0xe9, 0xf8, 0xe9, + 0xe1, 0x0c, 0x1e, 0x3f, 0xac, 0x40, 0x58, 0xb6, 0x82, 0xc6, 0x8e, 0x54, 0xfa, + 0xca, 0xe0, 0xf9, 0xc2, 0xdd, 0x4d, 0x64, 0xd9, 0x04, 0x61, 0x52, 0xb4, 0x76, + 0x23, 0x32, 0x93, 0x9f, 0x17, 0xe6, 0xaa, 0xf7, 0xd8, 0xb9, 0xd3, 0x58, 0xe2, + 0x21, 0x8d, 0x4e, 0x0d, 0x69, 0xa4, 0xf1, 0x19, 0xe1, 0xc6, 0x4e, 0xec, 0x4c, + 0x8b, 0x53, 0x28, 0x09, 0x70, 0x71, 0x31, 0xf0, 0x1f, 0x55, 0xc7, 0xad, 0x04, + 0xcf, 0xb6, 0x3f, 0x7c, 0x4a, 0x3d, 0x0a, 0x2b, 0x0f, 0xfb, 0x0b, 0x05, 0xa6, + 0xbe, 0x05, 0x5b, 0x8c, 0x94, 0xca, 0x80, 0xbb, 0x0a, 0x1d, 0x13, 0xcd, 0x4c, + 0xd6, 0x9a, 0xb9, 0x83, 0x04, 0xae, 0x25, 0x15, 0xd5, 0xf7, 0x69, 0x9d, 0x4a, + 0xbe, 0xe5, 0xc2, 0x0b, 0xe6, 0x09, 0xd8, 0x73, 0x51, 0x10, 0x12, 0xf2, 0x34, + 0xbd, 0x85, 0xa7, 0xef, 0xf5, 0xfb, 0x63, 0x4c, 0xff, 0x26, 0x58, 0xba, 0x65, + 0x16, 0x04, 0x85, 0x63, 0x09, 0x5e, 0xce, 0xfb, 0x30, 0x15, 0xee, 0x3f, 0x03, + 0xca, 0x52, 0xa1, 0x77, 0xf2, 0x61, 0xec, 0xdc, 0x26, 0xbc, 0x08, 0x9d, 0x34, + 0xc6, 0x40, 0x48, 0x46, 0xe9, 0xc6, 0x47, 0xfc, 0xfe, 0x98, 0xcc, 0x6a, 0xcd, + 0xbb, 0x46, 0x4f, 0x64, 0x27, 0x8a, 0xd8, 0xce, 0x9d, 0x1a, 0xe0, 0xd4, 0x15, + 0xbc, 0x0c, 0x05, 0x24, 0x5f, 0xdd, 0xaf, 0x4e, 0xbc, 0x8d, 0xc7, 0x03, 0xa8, + 0x5c, 0xb2, 0x70, 0xf7, 0x96, 0xad, 0x2d, 0x93, 0x7e, 0x2a, 0xc0, 0xd5, 0xe0, + 0xa3, 0x48, 0x21, 0x75, 0x80, 0x00, 0xaa, 0x59, 0xc9, 0xd4, 0x65, 0x24, 0x85, + 0x29, 0x4e, 0xe0, 0xab, 0x29, 0x69, 0x6b, 0x21, 0x43, 0x0f, 0xa5, 0x4d, 0xcf, + 0xbf, 0x2b, 0x9c, 0x49, 0xd1, 0x42, 0x06, 0x42, 0x09, 0xee, 0xee, 0xd4, 0xd4, + 0x71, 0xff, 0xc0, 0x17, 0xd4, 0xe2, 0x0a, 0x79, 0x6b, 0x09, 0x27, 0x80, 0x4c, + 0x06, 0x1b, 0x9f, 0x4a, 0x70, 0x91, 0xfe, 0x01, 0x5a, 0xda, 0x68, 0xfd, 0x84, + 0x42, 0xe0, 0x18, 0x25, 0xc8, 0x8d, 0xfe, 0x55, 0xcf, 0x5d, 0xe3, 0x89, 0x36, + 0xf7, 0xce, 0x25, 0x31, 0x1b, 0x90, 0x2b, 0xa9, 0x7a, 0x3c, 0x12, 0xa9, 0x5c, + 0xfa, 0x1c, 0x3a, 0x59, 0x1b, 0x81, 0x8f, 0x60, 0x83, 0x27, 0x09, 0xd9, 0xe4, + 0x83, 0x9e, 0x41, 0x0f, 0xb3, 0x6b, 0x84, 0xf3, 0xac, 0x4f, 0x07, 0x0f, 0xc3, + 0x5e, 0x16, 0x19, 0x78, 0x25, 0x9e, 0x5b, 0x8e, 0xdc, 0x74, 0x4d, 0x90, 0x91, + 0x9a, 0xa7, 0x70, 0xbb, 0x36, 0x21, 0x51, 0x28, 0xe5, 0x82, 0xb5, 0x96, 0x41, + 0xe2, 0x38, 0x52, 0xe9, 0x58, 0xeb, 0x8f, 0xc3, 0xc0, 0xaa, 0x96, 0x15, 0x2b, + 0xa4, 0xf7, 0x7f, 0x13, 0x8d, 0x6a, 0x67, 0x12, 0xa3, 0xae, 0x32, 0x26, 0x01, + 0x58, 0x83, 0xf8, 0x1d, 0xb2, 0x3e, 0x58, 0x3c, 0x86, 0x9c, 0x4c, 0x71, 0x14, + 0x3a, 0x6f, 0xff, 0xd6, 0x5e, 0x8d, 0xfd, 0xc5, 0x0c, 0x99, 0xa2, 0xf1, 0xf3, + 0x14, 0xcd, 0xcc, 0x71, 0x35, 0x9e, 0x23, 0x5f, 0x1d, 0x7d, 0xc2, 0xb5, 0xf3, + 0x8e, 0xf7, 0xb9, 0x70, 0x84, 0x31, 0x63, 0xc0, 0x3f, 0x9d, 0xd4, 0x0a, 0x80, + 0x15, 0xef, 0xdc, 0x87, 0x91, 0x95, 0x6a, 0x3f, 0x3c, 0xed, 0xd9, 0xea, 0x64, + 0xf8, 0xef, 0xa7, 0xa0, 0x81, 0x5a, 0x70, 0x38, 0x1d, 0x71, 0x46, 0x78, 0x17, + 0xbd, 0x04, 0xca, 0x52, 0x9a, 0xed, 0xe0, 0x7f, 0xf6, 0x0d, 0x17, 0x6a, 0xed, + 0x0f, 0x85, 0x5a, 0x2e, 0xae, 0xa8, 0x9e, 0xae, 0xac, 0xa8, 0x93, 0x58, 0xc0, + 0x81, 0x82, 0x6a, 0x08, 0x12, 0xa5, 0xbc, 0xa2, 0x8b, 0xe1, 0x37, 0x3f, 0x08, + 0x6d, 0xbd, 0xba, 0x7e, 0x43, 0xe2, 0x03, 0x21, 0x2c, 0x9f, 0xed, 0x21, 0x47, + 0x4b, 0xa1, 0x9a, 0x05, 0x5f, 0xfc, 0xc1, 0x79, 0x41, 0x2e, 0x76, 0x7d, 0xf9, + 0x99, 0xb9, 0x58, 0x76, 0xe3, 0xb8, 0x04, 0x5a, 0x12, 0x95, 0xd9, 0xae, 0xad, + 0x0f, 0x16, 0xb2, 0x6c, 0x5c, 0xc7, 0x66, 0x70, 0x4d, 0xe4, 0x8c, 0x69, 0x0d, + 0xe8, 0x3d, 0x22, 0x5d, 0x1c, 0x30, 0x3f, 0xba, 0x68, 0x98, 0xd5, 0x88, 0x5d, + 0x6c, 0x21, 0x49, 0xa0, 0x54, 0x27, 0x4d, 0x9a, 0x4d, 0xff, 0x8e, 0xc2, 0x1c, + 0x96, 0xf5, 0x78, 0x39, 0x97, 0x10, 0xc8, 0x25, 0x3e, 0x8e, 0x9a, 0xbc, 0xfa, + 0x76, 0xcf, 0x01, 0x07, 0x9f, 0xb2, 0x85, 0x62, 0x7b, 0xa7, 0x04, 0xc9, 0x05, + 0x13, 0x44, 0x3c, 0x78, 0x8f, 0x5c, 0x9d, 0xe0, 0xe9, 0x05, 0xb9, 0x4a, 0xea, + 0x75, 0x88, 0xa1, 0x49, 0x98, 0xdc, 0x1b, 0x22, 0x7a, 0x06, 0x3c, 0x6f, 0x55, + 0x2d, 0x00, 0x3e, 0xc3, 0xa7, 0x53, 0xf4, 0x92, 0x49, 0xe4, 0xad, 0x34, 0x96, + 0x03, 0x06, 0x6f, 0xc9, 0xc6, 0x61, 0xd6, 0x1f, 0x97, 0xcf, 0xf7, 0x9c, 0xaf, + 0x7c, 0xd2, 0x75, 0x92, 0x49, 0x67, 0xed, 0x1b, 0xc7, 0x0b, 0xe9, 0xc7, 0xea, + 0x84, 0x5b, 0x1e, 0x05, 0xcf, 0xb3, 0x37, 0x56, 0x15, 0xbf, 0xdf, 0xef, 0x42, + 0x3b, 0x96, 0xd7, 0x9b, 0xc5, 0x78, 0x33, 0xe9, 0x77, 0x17, 0x1c, 0x32, 0x4d, + 0xce, 0x2a, 0x1e, 0xa1, 0xe4, 0x30, 0x4f, 0x49, 0xe4, 0x3a, 0xe0, 0x65, 0xe3, + 0xfb, 0x19, 0x6f, 0x76, 0xd9, 0xb8, 0x79, 0xc7, 0x20, 0x08, 0x62, 0xea, 0xd1, + 0x8d, 0xea, 0x5f, 0xb6, 0xa1, 0x7a, 0xce, 0xa3, 0x33, 0x86, 0xeb, 0x4c, 0xa1, + 0xb5, 0x14, 0x86, 0xa9, 0x14, 0x8f, 0xbd, 0xf9, 0xa9, 0x53, 0x32, 0xaa, 0x60, + 0x5c, 0x5d, 0x54, 0x83, 0xce, 0x4b, 0xa8, 0xec, 0xe0, 0x1a, 0x8f, 0xf2, 0xb7, + 0xef, 0x82, 0xd0, 0x5c, 0x0b, 0x6e, 0x86, 0x1b, 0x91, 0x5f, 0x13, 0xca, 0x0e, + 0xb3, 0xea, 0x13, 0xd5, 0x07, 0x08, 0x07, 0xa2, 0xcb, 0x66, 0x80, 0xa2, 0x49, + 0xea, 0x9c, 0x72, 0x24, 0x39, 0x2c, 0xbc, 0x8a, 0xb8, 0x25, 0x01, 0xb2, 0x6f, + 0x11, 0x2a, 0xc7, 0x89, 0xa1, 0x2a, 0x31, 0xad, 0x13, 0x14, 0xe2, 0xed, 0xe0, + 0x8f, 0xad, 0x31, 0x43, 0xaf, 0x30, 0xc2, 0x7f, 0x40, 0x3b, 0xc8, 0x66, 0xc7, + 0x55, 0x17, 0x78, 0x52, 0xaf, 0xd0, 0xab, 0xb9, 0x0a, 0xde, 0x1d, 0x68, 0x27, + 0x26, 0xf4, 0x20, 0x08, 0xb4, 0x6a, 0xd7, 0xf8, 0xab, 0xdb, 0x18, 0x11, 0x7f, + 0x72, 0x64, 0x13, 0x90, 0xf0, 0x86, 0xb6, 0xe1, 0x49, 0x8b, 0xe6, 0x95, 0x48, + 0x52, 0x7e, 0x6a, 0xda, 0x2b, 0x38, 0xb9, 0xfe, 0x12, 0x1e, 0xf6, 0x70, 0xaf, + 0x74, 0x37, 0xd3, 0x25, 0x36, 0xd5, 0xcf, 0x5c, 0x4a, 0xb1, 0x9d, 0xd9, 0x97, + 0x71, 0x58, 0x2d, 0x03, 0x81, 0x04, 0xb7, 0xe0, 0x39, 0xa3, 0x76, 0xf7, 0xac, + 0xbb, 0xea, 0xdb, 0x34, 0xf9, 0x45, 0xbe, 0xb9, 0xd7, 0xca, 0x0e, 0x4e, 0x3d, + 0x5c, 0x5e, 0x4e, 0xb1, 0xd8, 0x52, 0x6e, 0xbd, 0x13, 0xda, 0xcb, 0x1b, 0xa3, + 0x57, 0x35, 0xc6, 0xd0, 0x4a, 0x45, 0x55, 0xac, 0xf4, 0xbf, 0x11, 0x76, 0x26, + 0x50, 0x0d, 0x77, 0xb3, 0x81, 0x89, 0xdd, 0x48, 0x88, 0x04, 0x12, 0x25, 0xac, + 0xbe, 0x38, 0x74, 0xa4, 0xc0, 0xf6, 0x07, 0xfe, 0x67, 0x45, 0xf9, 0x35, 0x5b, + 0x3f, 0xa1, 0x88, 0xf1, 0xd6, 0x5c, 0x09, 0xf3, 0x89, 0xaf, 0x1b, 0x9d, 0x62, + 0x32, 0xaa, 0x79, 0x44, 0x79, 0x19, 0xc5, 0x50, 0xf6, 0xf3, 0x1f, 0xec, 0x35, + 0x48, 0x1c, 0xb9, 0x22, 0xde, 0x2d, 0xb5, 0xb4, 0xda, 0x2f, 0x81, 0x94, 0x86, + 0x17, 0x02, 0x8e, 0x32, 0x17, 0x06, 0xa3, 0xa7, 0x78, 0xc1, 0x93, 0x8c, 0x44, + 0x3b, 0xb0, 0x0e, 0x5b, 0x0f, 0xf0, 0x6a, 0xd8, 0xab, 0x9b, 0x1a, 0xb0, 0xc1, + 0x14, 0x77, 0x67, 0x3f, 0x85, 0xdf, 0x95, 0x61, 0xdb, 0xea, 0x45, 0xd5, 0xf9, + 0x78, 0x1e, 0xbe, 0x31, 0x7a, 0x07, 0x10, 0xae, 0x54, 0x61, 0xe3, 0x4f, 0xe6, + 0xf1, 0xb1, 0xaa, 0x9b, 0x4e, 0x67, 0xb1, 0x49, 0x10, 0x98, 0x48, 0x02, 0xc2, + 0xa7, 0xe3, 0x81, 0x93, 0xbc, 0x7b, 0xdc, 0x8b, 0xa3, 0xe4, 0xe3, 0xd1, 0xd9, + 0x33, 0xbf, 0xb5, 0x80, 0xf5, 0xb3, 0xe8, 0x7a, 0x2a, 0x06, 0x51, 0x70, 0x51, + 0x41, 0x0f, 0xe1, 0xb4, 0xff, 0x1e, 0xa0, 0xad, 0xe8, 0x24, 0xf3, 0x38, 0x51, + 0x54, 0x56, 0xa5, 0x7c, 0x7a, 0x91, 0x6a, 0x74, 0x38, 0x8e, 0xe8, 0xf1, 0x28, + 0x1f, 0x9a, 0xde, 0x0a, 0xe2, 0xa2, 0x61, 0x3a, 0x06, 0x12, 0xc4, 0x69, 0xdf, + 0x79, 0x2b, 0x8d, 0xf4, 0xca, 0xe4, 0xfc, 0x25, 0xc1, 0xca, 0xdb, 0xa9, 0x5a, + 0x80, 0x7c, 0xe6, 0x1e, 0x5a, 0x53, 0x03, 0xfa, 0xaf, 0x9e, 0x14, 0x65, 0x39, + 0x96, 0xb5, 0xa8, 0xad, 0xc3, 0x4f, 0xd4, 0x75, 0xef, 0x14, 0x99, 0x09, 0x4b, + 0xab, 0xaf, 0x1f, 0x3f, 0x07, 0xda, 0x9a, 0x39, 0x0b, 0x1d, 0x9f, 0xc9, 0xa0, + 0x83, 0x27, 0x98, 0x7a, 0xdf, 0xe9, 0x56, 0x48, 0x63, 0xfb, 0xdf, 0xa8, 0xf6, + 0xb4, 0x6a, 0x88, 0x41, 0x58, 0x30, 0x99, 0xaf, 0xb7, 0x87, 0x01, 0x18, 0xfa, + 0xce, 0x76, 0x34, 0x7e, 0x40, 0xb6, 0xfd, 0x8c, 0xd1, 0x55, 0x82, 0xae, 0x8e, + 0x23, 0xbe, 0x9a, 0x02, 0x19, 0xbc, 0x3e, 0x4e, 0x45, 0x46, 0xa3, 0x0d, 0x3b, + 0xbb, 0xbd, 0x16, 0x86, 0x08, 0x68, 0x76, 0xbe, 0x0e, 0x4c, 0x85, 0x9b, 0xe7, + 0x1f, 0xb5, 0x8f, 0x4f, 0xab, 0x3d, 0x28, 0xc0, 0xb4, 0xf7, 0xe7, 0x5a, 0xd1, + 0xed, 0xb7, 0xf8, 0x89, 0x46, 0xfb, 0x40, 0xcf, 0xa5, 0x78, 0x6a, 0x0f, 0xcb, + 0xa1, 0x30, 0x3c, 0x83, 0x47, 0xec, 0xee, 0x93, 0xd4, 0x6d, 0x14, 0x0b, 0xb5, + 0xf6, 0x95, 0x31, 0xd6, 0x66, 0x54, 0x8b, 0x10, 0x9c, 0xe7, 0x64, 0xbe, 0xad, + 0x7c, 0x87, 0xbd, 0x4c, 0x87, 0x64, 0x94, 0xde, 0x82, 0xdb, 0x6e, 0x50, 0x73, + 0xa6, 0xc9, 0x4f, 0x7c, 0x09, 0x9a, 0x40, 0xd7, 0xa3, 0x1c, 0x4a, 0x04, 0xb6, + 0x9c, 0x9f, 0xcc, 0xf3, 0xc7, 0xdd, 0x56, 0xf5, 0x54, 0x47, 0x76, 0x03, 0x48, + 0x75, 0xa3, 0x2d, 0x3a, 0x7f, 0x01, 0x00, 0x6b, 0x65, 0x90, 0xd6, 0x75, 0x2d, + 0x63, 0x89, 0x9e, 0x20, 0x8c, 0x9e, 0x30, 0x50, 0x23, 0xe5, 0x62, 0x55, 0x51, + 0xa2, 0xaa, 0xca, 0x96, 0x87, 0xac, 0x52, 0x69, 0xfd, 0x36, 0x8b, 0x26, 0x17, + 0x2a, 0x73, 0x7f, 0x26, 0x76, 0x85, 0x99, 0x8a, 0x3f, 0x7d, 0x26, 0x37, 0x91, + 0x49, 0x09, 0xc7, 0x46, 0x49, 0x5d, 0x24, 0xc4, 0x98, 0x63, 0x5e, 0xf9, 0x7a, + 0xc6, 0x6a, 0x40, 0x08, 0x94, 0xc0, 0x9f, 0x73, 0x48, 0x8e, 0xb7, 0xcf, 0x33, + 0xf6, 0xda, 0xd1, 0x66, 0x17, 0x1c, 0xdb, 0x0a, 0xb5, 0xdb, 0x5f, 0x9c, 0x17, + 0xcb, 0x33, 0xde, 0x1c, 0x43, 0x17, 0x17, 0x5a, 0xb4, 0x92, 0x0f, 0x3c, 0x6f, + 0xd6, 0x5c, 0xa7, 0x9b, 0x5e, 0x08, 0xe5, 0x28, 0x42, 0x12, 0x3d, 0x9a, 0xe9, + 0xdc, 0x9a, 0x02, 0xe1, 0xb7, 0xc6, 0x50, 0xbe, 0x2f, 0x4f, 0xe7, 0x15, 0x8d, 0x85, 0xb7, 0xe0, 0xa4, 0x3a, 0x47, 0x2e, 0x29, 0x8a, 0xc0, 0xaf, 0xdc, 0x52, - 0x87, 0xd7, 0xad, 0x12, 0x4c, 0xd9, 0x40, 0x5a, 0x62, 0xcd, 0x1c, 0xa0, 0x8b, - 0x28, 0x2e, 0xfe, 0xf7, 0xf9, 0x28, 0xdf, 0x76, 0xe2, 0x82, 0x1a, 0x41, 0x84, - 0x13, 0xeb, 0x7c, 0xea, 0xa5, 0xff, 0x12, 0x90, 0xb0, 0x3e, 0xc9, 0x1c, 0xe6, - 0xdd, 0x28, 0x13, 0x0c, 0x3a, 0xb0, 0xb2, 0x3b, 0x60, 0x2b, 0xd5, 0xbe, 0x5d, - 0xc2, 0x60, 0x03, 0xaa, 0xe0, 0x4b, 0x33, 0xd7, 0xbd, 0x25, 0x90, 0xe9, 0x0c, - 0x8c, 0x38, 0x8e, 0xa7, 0x95, 0x51, 0x22, 0x0c, 0xaa, 0xa6, 0x5f, 0x98, 0x1a, - 0x4c, 0xfc, 0x69, 0x4d, 0xbd, 0xbd, 0xb8, 0x09, 0x34, 0x38, 0x14, 0xf4, 0xc1, - 0x7a, 0xb5, 0x0b, 0xbf, 0x5b, 0xfc, 0x9d, 0x57, 0x27, 0x64, 0xb4, 0x24, 0x00, - 0xbb, 0x7a, 0x3a, 0x60, 0x90, 0x3d, 0x81, 0x52, 0x65, 0x6b, 0xe8, 0xbd, 0xae, - 0xe7, 0x95, 0x7d, 0xe5, 0xd8, 0xaa, 0x63, 0xa8, 0xa5, 0x0c, 0x38, 0xbd, 0x03, - 0x87, 0x72, 0xc4, 0x14, 0x3d, 0x0b, 0xea, 0xc7, 0x25, 0xc8, 0x3d, 0x92, 0x49, - 0x9e, 0x56, 0x75, 0x65, 0x47, 0x37, 0x43, 0xf4, 0xc8, 0xee, 0x4b, 0x52, 0x1d, - 0xea, 0xb8, 0x36, 0x06, 0xcc, 0x20, 0x9b, 0x9e, 0x0d, 0x25, 0x6c, 0x01, 0xb5, - 0x01, 0x26, 0xf4, 0xa8, 0x5e, 0x38, 0xbb, 0x68, 0x6f, 0x8d, 0xbf, 0x0d, 0xdb, - 0x84, 0xa3, 0x78, 0xa7, 0x96, 0x53, 0xa1, 0xe8, 0x4d, 0xae, 0xc3, 0xeb, 0xe6, - 0x2d, 0x5f, 0x6c, 0x4a, 0x3e, 0xfc, 0x5d, 0xd2, 0xce, 0xed, 0x21, 0xf5, 0x63, - 0x36, 0x48, 0xc2, 0xc3, 0x7a, 0xf9, 0xab, 0x36, 0x59, 0xb7, 0xd4, 0xd6, 0xa1, - 0x6f, 0x9c, 0x67, 0x42, 0x67, 0x30, 0x8b, 0xf1, 0x16, 0xb5, 0xb7, 0x13, 0x3d, - 0xc2, 0x1e, 0x80, 0x96, 0xc7, 0xe9, 0xf8, 0xe9, 0xe1, 0x0c, 0x1e, 0x3f, 0xac, - 0x40, 0x58, 0xb6, 0x82, 0xc6, 0x8e, 0x54, 0xfa, 0xca, 0xe0, 0xf9, 0xc2, 0xdd, - 0x4d, 0x64, 0xd9, 0x04, 0x61, 0x52, 0xb4, 0x76, 0x23, 0x32, 0x93, 0x9f, 0x17, - 0xe6, 0xaa, 0xf7, 0xd8, 0xb9, 0xd3, 0x58, 0xe2, 0x21, 0x8d, 0x4e, 0x0d, 0x69, - 0xa4, 0xf1, 0x19, 0xe1, 0xc6, 0x4e, 0xec, 0x4c, 0x8b, 0x53, 0x28, 0x09, 0x70, - 0x71, 0x31, 0xf0, 0x1f, 0x55, 0xc7, 0xad, 0x04, 0xcf, 0xb6, 0x3f, 0x7c, 0x4a, - 0x3d, 0x0a, 0x2b, 0x0f, 0xfb, 0x0b, 0x05, 0xa6, 0xbe, 0x05, 0x5b, 0x8c, 0x94, - 0xca, 0x80, 0xbb, 0x0a, 0x1d, 0x13, 0xcd, 0x4c, 0xd6, 0x9a, 0xb9, 0x83, 0x04, - 0xae, 0x25, 0x15, 0xd5, 0xf7, 0x69, 0x9d, 0x4a, 0xbe, 0xe5, 0xc2, 0x0b, 0xe6, - 0x09, 0xd8, 0x73, 0x51, 0x10, 0x12, 0xf2, 0x34, 0xbd, 0x85, 0xa7, 0xef, 0xf5, - 0xfb, 0x63, 0x4c, 0xff, 0x26, 0x58, 0xba, 0x65, 0x16, 0x04, 0x85, 0x63, 0x09, - 0x5e, 0xce, 0xfb, 0x30, 0x15, 0xee, 0x3f, 0x03, 0xca, 0x52, 0xa1, 0x77, 0xf2, - 0x61, 0xec, 0xdc, 0x26, 0xbc, 0x08, 0x9d, 0x34, 0xc6, 0x40, 0x48, 0x46, 0xe9, - 0xc6, 0x47, 0xfc, 0xfe, 0x98, 0xcc, 0x6a, 0xcd, 0xbb, 0x46, 0x4f, 0x64, 0x27, - 0x8a, 0xd8, 0xce, 0x9d, 0x1a, 0xe0, 0xd4, 0x15, 0xbc, 0x0c, 0x05, 0x24, 0x5f, - 0xdd, 0xaf, 0x4e, 0xbc, 0x8d, 0xc7, 0x03, 0xa8, 0x5c, 0xb2, 0x70, 0xf7, 0x96, - 0xad, 0x2d, 0x93, 0x7e, 0x2a, 0xc0, 0xd5, 0xe0, 0xa3, 0x48, 0x21, 0x75, 0x80, - 0x00, 0xaa, 0x59, 0xc9, 0xd4, 0x65, 0x24, 0x85, 0x29, 0x4e, 0xe0, 0xab, 0x29, - 0x69, 0x6b, 0x21, 0x43, 0x0f, 0xa5, 0x4d, 0xcf, 0xbf, 0x2b, 0x9c, 0x49, 0xd1, - 0x42, 0x06, 0x42, 0x09, 0xee, 0xee, 0xd4, 0xd4, 0x71, 0xff, 0xc0, 0x17, 0xd4, - 0xe2, 0x0a, 0x79, 0x6b, 0x09, 0x27, 0x80, 0x4c, 0x06, 0x1b, 0x9f, 0x4a, 0x70, - 0x91, 0xfe, 0x01, 0x5a, 0xda, 0x68, 0xfd, 0x84, 0x42, 0xe0, 0x18, 0x25, 0xc8, - 0x8d, 0xfe, 0x55, 0xcf, 0x5d, 0xe3, 0x89, 0x36, 0xf7, 0xce, 0x25, 0x31, 0x1b, - 0x90, 0x2b, 0xa9, 0x7a, 0x3c, 0x12, 0xa9, 0x5c, 0xfa, 0x1c, 0x3a, 0x59, 0x1b, - 0x81, 0x8f, 0x60, 0x83, 0x27, 0x09, 0xd9, 0xe4, 0x83, 0x9e, 0x41, 0x0f, 0xb3, - 0x6b, 0x84, 0xf3, 0xac, 0x4f, 0x07, 0x0f, 0xc3, 0x5e, 0x16, 0x19, 0x78, 0x25, - 0x9e, 0x5b, 0x8e, 0xdc, 0x74, 0x4d, 0x90, 0x91, 0x9a, 0xa7, 0x70, 0xbb, 0x36, - 0x21, 0x51, 0x28, 0xe5, 0x82, 0xb5, 0x96, 0x41, 0xe2, 0x38, 0x52, 0xe9, 0x58, - 0xeb, 0x8f, 0xc3, 0xc0, 0xaa, 0x96, 0x15, 0x2b, 0xa4, 0xf7, 0x7f, 0x13, 0x8d, - 0x6a, 0x67, 0x12, 0xa3, 0xae, 0x32, 0x26, 0x01, 0x58, 0x83, 0xf8, 0x1d, 0xb2, - 0x3e, 0x58, 0x3c, 0x86, 0x9c, 0x4c, 0x71, 0x14, 0x3a, 0x6f, 0xff, 0xd6, 0x5e, - 0x8d, 0xfd, 0xc5, 0x0c, 0x99, 0xa2, 0xf1, 0xf3, 0x14, 0xcd, 0xcc, 0x71, 0x35, - 0x9e, 0x23, 0x5f, 0x1d, 0x7d, 0xc2, 0xb5, 0xf3, 0x8e, 0xf7, 0xb9, 0x70, 0x84, - 0x31, 0x63, 0xc0, 0x3f, 0x9d, 0xd4, 0x0a, 0x80, 0x15, 0xef, 0xdc, 0x87, 0x91, - 0x95, 0x6a, 0x3f, 0x3c, 0xed, 0xd9, 0xea, 0x64, 0xf8, 0xef, 0xa7, 0xa0, 0x81, - 0x5a, 0x70, 0x38, 0x1d, 0x71, 0x46, 0x78, 0x17, 0xbd, 0x04, 0xca, 0x52, 0x9a, - 0xed, 0xe0, 0x7f, 0xf6, 0x0d, 0x17, 0x6a, 0xed, 0x0f, 0x85, 0x5a, 0x2e, 0xae, - 0xa8, 0x9e, 0xae, 0xac, 0xa8, 0x93, 0x58, 0xc0, 0x81, 0x82, 0x6a, 0x08, 0x12, - 0xa5, 0xbc, 0xa2, 0x8b, 0xe1, 0x37, 0x3f, 0x08, 0x6d, 0xbd, 0xba, 0x7e, 0x43, - 0xe2, 0x03, 0x21, 0x2c, 0x9f, 0xed, 0x21, 0x47, 0x4b, 0xa1, 0x9a, 0x05, 0x5f, - 0xfc, 0xc1, 0x79, 0x41, 0x2e, 0x89, 0x3a, 0x74, 0x48, 0x32, 0x29, 0x8c, 0x5f, - 0xe2, 0x4c, 0xc6, 0xb1, 0x86, 0x67, 0xf4, 0x9b, 0x34, 0xdf, 0xb1, 0x23, 0x79, - 0x26, 0x74, 0x19, 0xa9, 0xcb, 0x94, 0x03, 0xd8, 0x16, 0x7d, 0x8d, 0x1e, 0x91, - 0xd2, 0x81, 0x1a, 0x04, 0x3b, 0x29, 0x24, 0x3b, 0x06, 0x9b, 0x37, 0x58, 0x78, - 0x47, 0xdc, 0x6f, 0xcd, 0xdb, 0x18, 0x31, 0xbd, 0x1c, 0xc2, 0x56, 0x7c, 0xa0, - 0x33, 0xac, 0x40, 0xf7, 0x4a, 0xb6, 0x95, 0x5f, 0x68, 0x3b, 0x12, 0xe4, 0xe8, - 0x25, 0x4e, 0x4e, 0xa7, 0x60, 0xd3, 0x8b, 0x3f, 0x46, 0x79, 0x1c, 0x5c, 0x4c, - 0xb1, 0x2b, 0xc7, 0xcc, 0xb0, 0xed, 0x18, 0x65, 0xf2, 0x5d, 0x60, 0x1c, 0x30, - 0x3f, 0x81, 0xfb, 0x1f, 0xa1, 0xdb, 0x48, 0x53, 0x3d, 0x3d, 0x6b, 0x28, 0x8e, - 0x4d, 0x9a, 0x4d, 0xff, 0x8e, 0xc2, 0x1c, 0x96, 0xf5, 0x78, 0x39, 0x97, 0x10, - 0xc8, 0x25, 0xfe, 0x7e, 0x32, 0xf9, 0x3a, 0x8c, 0x07, 0x43, 0xf9, 0xeb, 0xd5, - 0x4c, 0xc1, 0x51, 0xc7, 0x61, 0x03, 0x37, 0xae, 0xbf, 0x7e, 0x9b, 0x91, 0x57, - 0x20, 0xa5, 0x43, 0x51, 0xd4, 0x9a, 0xb8, 0xc2, 0x2f, 0xa3, 0x49, 0x98, 0xdc, - 0xf5, 0x28, 0x65, 0x9c, 0x24, 0x40, 0xd8, 0x6c, 0x8d, 0x42, 0x5c, 0xc2, 0x29, - 0x9c, 0x16, 0xeb, 0x02, 0xb6, 0x17, 0x0e, 0xc3, 0x33, 0xbd, 0x30, 0xd3, 0xc1, - 0xa1, 0x9d, 0x71, 0x52, 0xad, 0xaa, 0xb4, 0xce, 0x8d, 0xea, 0x5f, 0xef, 0x0e, - 0xf3, 0x02, 0x51, 0x48, 0x9f, 0xcf, 0x58, 0xd6, 0xe1, 0xad, 0x85, 0xa9, 0x14, - 0x8f, 0xbd, 0xf9, 0xa9, 0x53, 0x32, 0xaa, 0x60, 0x5c, 0x5d, 0x54, 0x83, 0x0e, - 0xaa, 0xdc, 0x4a, 0xeb, 0x1a, 0x2a, 0x07, 0x08, 0xb4, 0xd4, 0xdc, 0xf2, 0x83, - 0x54, 0x46, 0xe0, 0xad, 0xfa, 0x85, 0xe7, 0x60, 0xbc, 0x1b, 0xdd, 0x63, 0xb3, - 0xc2, 0x7b, 0x64, 0xf1, 0xbe, 0x9d, 0xa1, 0x49, 0xea, 0x9c, 0x85, 0xf3, 0x0b, - 0x93, 0xa0, 0x91, 0x6b, 0x1c, 0x05, 0x19, 0x29, 0xef, 0x29, 0xc7, 0x89, 0xa1, - 0x2a, 0x31, 0xad, 0x13, 0x14, 0xe2, 0xed, 0xe0, 0x8f, 0xad, 0x31, 0x03, 0xab, - 0xeb, 0xc7, 0xc3, 0x0b, 0xdd, 0x29, 0xfe, 0x9a, 0xbe, 0x9a, 0x55, 0xa0, 0x11, - 0x59, 0xc7, 0x52, 0xed, 0xad, 0x81, 0x74, 0x47, 0x0b, 0x43, 0xcc, 0x55, 0x47, - 0xbf, 0xac, 0xa6, 0xa8, 0x20, 0x18, 0x11, 0x7f, 0x72, 0x64, 0x13, 0x90, 0xf0, - 0x86, 0xb6, 0xe1, 0x49, 0x8b, 0xe6, 0x95, 0x48, 0x52, 0x7e, 0x6a, 0xda, 0x2b, - 0x38, 0xb9, 0xfe, 0x12, 0x1e, 0xf6, 0x70, 0xaf, 0x74, 0x37, 0xd3, 0x25, 0x36, - 0xd5, 0xcf, 0x5c, 0x4a, 0xb1, 0x9d, 0xd9, 0x97, 0x71, 0x58, 0x2d, 0x03, 0x81, - 0x04, 0xb7, 0xe0, 0x39, 0xa3, 0x76, 0xf7, 0xac, 0xbb, 0xea, 0xdb, 0x34, 0xf9, - 0x45, 0xbe, 0xb9, 0xd7, 0xca, 0x0e, 0x4e, 0x3d, 0x5c, 0x5e, 0x4e, 0xb1, 0xd8, - 0x52, 0x6e, 0xbd, 0x13, 0xda, 0xcb, 0x1b, 0xa3, 0x57, 0x35, 0xc6, 0xd0, 0x4a, - 0x45, 0x55, 0xac, 0xf4, 0xbf, 0x11, 0x76, 0x26, 0x50, 0x0d, 0x77, 0xb3, 0x81, - 0x89, 0xdd, 0x48, 0x88, 0x04, 0x12, 0x25, 0xac, 0xbe, 0x38, 0x74, 0xa4, 0xc0, - 0xf6, 0x07, 0xfe, 0x67, 0x45, 0xf9, 0x35, 0x5b, 0x3f, 0xa1, 0x88, 0xf1, 0xd6, - 0x5c, 0x09, 0xf3, 0x89, 0xaf, 0x1b, 0x9d, 0x62, 0x32, 0xaa, 0x79, 0x44, 0x79, - 0x19, 0xc5, 0x50, 0xf6, 0xf3, 0x1f, 0xec, 0x35, 0x48, 0x1c, 0xb9, 0x22, 0xde, - 0x2d, 0xb5, 0xb4, 0xda, 0x2f, 0x81, 0x94, 0x86, 0x17, 0x02, 0x8e, 0x32, 0x17, - 0x06, 0xa3, 0xa7, 0x78, 0xc1, 0x93, 0x8c, 0x44, 0x3b, 0xb0, 0x0e, 0x5b, 0x0f, - 0xf0, 0x6a, 0xd8, 0xab, 0x9b, 0x1a, 0xb0, 0xc1, 0x14, 0x77, 0x67, 0x3f, 0x85, - 0xdf, 0x95, 0x61, 0xdb, 0xea, 0x45, 0xd5, 0xf9, 0x78, 0x1e, 0xbe, 0x31, 0x7a, - 0x07, 0x10, 0xae, 0x54, 0x61, 0xe3, 0x4f, 0xe6, 0xf1, 0xb1, 0xaa, 0x9b, 0x4e, - 0x67, 0xb1, 0x49, 0x10, 0x98, 0x48, 0x02, 0xc2, 0xa7, 0xe3, 0x81, 0x93, 0xbc, - 0x7b, 0xdc, 0x8b, 0xa3, 0xe4, 0xe3, 0xd1, 0xd9, 0x33, 0xbf, 0xb5, 0x80, 0xf5, - 0xb3, 0xe8, 0x7a, 0x2a, 0x06, 0x51, 0x70, 0x51, 0x41, 0x0f, 0xe1, 0xb4, 0xff, - 0x1e, 0xa0, 0xad, 0xe8, 0x24, 0xf3, 0x38, 0x51, 0x54, 0x56, 0xa5, 0x7c, 0x7a, - 0x91, 0x6a, 0x74, 0x38, 0x8e, 0xe8, 0xf1, 0x28, 0x1f, 0x9a, 0xde, 0x0a, 0xe2, - 0xa2, 0x61, 0x3a, 0x06, 0x12, 0xc4, 0x69, 0xdf, 0x79, 0x2b, 0x8d, 0xf4, 0xca, - 0xe4, 0xfc, 0x25, 0xc1, 0xca, 0xdb, 0xa9, 0x5a, 0x80, 0x7c, 0xe6, 0x1e, 0x5a, - 0x53, 0x03, 0xfa, 0xaf, 0x9e, 0x14, 0x65, 0x39, 0x96, 0xb5, 0xa8, 0xad, 0xc3, - 0x4f, 0xd4, 0x75, 0xef, 0x14, 0x99, 0x09, 0x4b, 0xab, 0xaf, 0x1f, 0x3f, 0x07, - 0xda, 0x9a, 0x39, 0x0b, 0x1d, 0x9f, 0xc9, 0xa0, 0x83, 0x27, 0x98, 0x7a, 0xdf, - 0xe9, 0x56, 0x48, 0x63, 0xfb, 0xdf, 0xa8, 0xf6, 0xb4, 0x6a, 0x88, 0x41, 0x58, - 0x30, 0x99, 0xaf, 0xb7, 0x87, 0x01, 0x18, 0xfa, 0xce, 0x76, 0x34, 0x7e, 0x40, - 0xb6, 0xfd, 0x8c, 0xd1, 0x55, 0x82, 0xae, 0x8e, 0x23, 0xbe, 0x9a, 0x02, 0x19, - 0xbc, 0x3e, 0x4e, 0x45, 0x46, 0xa3, 0x0d, 0x3b, 0xbb, 0xbd, 0x16, 0x86, 0x08, - 0x68, 0x76, 0xbe, 0x0e, 0x4c, 0x85, 0x9b, 0xe7, 0x1f, 0xb5, 0x8f, 0x4f, 0xab, - 0x3d, 0x28, 0xc0, 0xb4, 0xf7, 0xe7, 0x5a, 0xd1, 0xed, 0xb7, 0xf8, 0x89, 0x46, - 0xfb, 0x40, 0xcf, 0xa5, 0x78, 0x6a, 0x0f, 0xcb, 0xa1, 0x30, 0x3c, 0x83, 0x47, - 0xec, 0xee, 0x93, 0xd4, 0x6d, 0x14, 0x0b, 0xb5, 0xf6, 0x95, 0x31, 0xd6, 0x66, - 0x54, 0x8b, 0x10, 0x9c, 0xe7, 0x64, 0xbe, 0xad, 0x7c, 0x87, 0xbd, 0x4c, 0x87, - 0x64, 0x94, 0xde, 0x82, 0xdb, 0x6e, 0x50, 0x73, 0xa6, 0xc9, 0x4f, 0x7c, 0x09, - 0x9a, 0x40, 0xd7, 0xa3, 0x1c, 0x4a, 0x04, 0xb6, 0x9c, 0x9f, 0xcc, 0xf3, 0xc7, - 0xdd, 0x56, 0xf5, 0x54, 0x47, 0x76, 0xc5, 0x3b, 0x4d, 0xf7, 0x95, 0x39, 0x81, - 0xd5, 0x5a, 0x96, 0xa6, 0xdc, 0xff, 0x99, 0x04, 0xa9, 0x08, 0x42, 0xe5, 0xba, - 0xfe, 0xc8, 0x84, 0x0c, 0x2d, 0x25, 0x5b, 0xf5, 0xad, 0x61, 0xc4, 0x60, 0xf9, - 0x8f, 0xeb, 0x82, 0xa1, 0x0f, 0xa1, 0xc0, 0x99, 0xf6, 0x27, 0x76, 0x79, 0x82, - 0x36, 0xc5, 0xca, 0x7f, 0x1e, 0x46, 0xeb, 0xdb, 0x2b, 0x14, 0x4d, 0x87, 0x13, - 0xe5, 0x6c, 0x77, 0x2f, 0x2c, 0x3b, 0x86, 0x0e, 0xa5, 0xb0, 0x3a, 0x88, 0x54, - 0xbc, 0x6e, 0x65, 0x90, 0xd6, 0x3c, 0xc0, 0xea, 0x54, 0xf1, 0x0b, 0x73, 0xba, - 0x24, 0x1b, 0xf7, 0x4b, 0x63, 0x55, 0x51, 0xa2, 0xaa, 0xca, 0x96, 0x87, 0xac, - 0x52, 0x69, 0xfd, 0x36, 0x8b, 0x26, 0xd7, 0x0a, 0x73, 0x7f, 0x26, 0x76, 0x85, - 0x99, 0x8a, 0x3f, 0x7d, 0x26, 0x37, 0x91, 0x49, 0x09, 0xc7, 0x46, 0x49, 0x5d, - 0x24, 0xc4, 0x98, 0x63, 0x5e, 0xf9, 0x7a, 0xc6, 0x6a, 0x40, 0x08, 0x94, 0xc0, - 0x9f, 0x73, 0x48, 0x8e, 0xb7, 0xcf, 0x33, 0xf6, 0xda, 0xd1, 0x66, 0x6a, 0x05, - 0xf9, 0x1a, 0xd7, 0x75, 0x79, 0x65, 0xc2, 0x99, 0x36, 0xe7, 0xfa, 0x48, 0xd7, - 0x7e, 0x89, 0xee, 0x09, 0x62, 0xf5, 0x8c, 0x05, 0x1d, 0x11, 0xd0, 0x55, 0xfc, - 0xe2, 0x04, 0xa5, 0x62, 0xde, 0x68, 0x08, 0x8a, 0x1b, 0x26, 0x48, 0xb8, 0x17, - 0x4c, 0xbc, 0xfc, 0x8b, 0x5b, 0x5c, 0xd0, 0x77, 0x83, 0x6a, 0x7a, 0xbf, 0x02, - 0xcf, 0x1a, 0x4e, 0xb8, 0xed, 0xc9, 0xe0, 0xba, 0x76, 0x0f, 0x63, 0xb2, 0xd4, - 0x07, 0x61, 0x9c, 0x48, 0x2d, 0xaa, 0xb4, 0x20, 0x99, 0x55, 0xbb, 0x50, 0x9e, - 0x84, 0x99, 0x91, 0x17, 0x91, 0xb3, 0x0d, 0xf6, 0x13, 0xaa, 0xe8, 0x90, 0x1d, - 0x68, 0xef, 0x8d, 0x06, 0x63, 0xc0, 0xb6, 0x9c, 0x01, 0xfc, 0xc4, 0x53, 0x91, - 0xfd, 0x5b, 0x87, 0x63, 0xfb, 0x96, 0x17, 0xdd, 0x98, 0x85, 0xae, 0xba, 0x10, - 0x5b, 0xa2, 0x19, 0xdc, 0xa6, 0x6d, 0x96, 0xb8, 0x72, 0xd8, 0x80, 0x33, 0x91, - 0x4a, 0x7a, 0x0b, 0x85, 0xaa, 0x96, 0x29, 0x22, 0x6e, 0x01, 0x71, 0xa6, 0x0b, - 0x8b, 0x0c, 0x88, 0xa3, 0x24, 0x75, 0x58, 0xf3, 0xe1, 0xee, 0xf6, 0xde, 0xc7, - 0xb0, 0x91, 0xed, 0x3a, 0x5f, 0x39, 0xcb, 0x20, 0x23, 0xd4, 0x67, 0x89, 0xeb, - 0x7d, 0x98, 0x9a, 0xf7, 0x79, 0x25, 0x0b, 0x7c, 0xa3, 0xa1, 0xa0, 0x5c, 0xb3, - 0xc1, 0xee, 0xb0, 0xa4, 0xc8, 0x60, 0x18, 0xc2, 0xdb, 0xc9, 0x5b, 0x2b, 0x0b, - 0x2f, 0x40, 0x69, 0x82, 0xdb, 0x04, 0x16, 0x55, 0x46, 0xba, 0x0a, 0x08, 0xa0, - 0x70, 0xba, 0x05, 0xb3, 0xe4, 0xdb, 0xfd, 0x3a, 0x2b, 0xfc, 0xc9, 0xee, 0x6e, - 0xd0, 0x16, 0xc0, 0xf6, 0x65, 0xbe, 0x81, 0x33, 0xb7, 0xdc, 0x1d, 0x86, 0x04, - 0x4d, 0xb0, 0xf9, 0xdb, 0x40, 0xfb, 0x0e, 0x9f, 0x8b, 0xc2, 0xe4, 0xdb, 0x53, - 0x82, 0xa8, 0xb4, 0xf8, 0x15, 0xb4, 0xe8, 0x43, 0x4a, 0xd0, 0xdf, 0xbc, 0x51, - 0xa5, 0xe9, 0xb1, 0x45, 0xe1, 0x59, 0x6c, 0xbf, 0x46, 0x70, 0xb7, 0xe0, 0x5d, - 0xfd, 0xaf, 0xbb, 0x0c, 0xf3, 0xdd, 0xee, 0x28, 0xd7, 0x6a, 0x82, 0x42, 0x8e, - 0x8a, 0xba, 0x43, 0x64, 0xe8, 0x4b, 0xac, 0x37, 0x92, 0x98, 0xdf, 0x29, 0x32, - 0xe6, 0x9b, 0xb5, 0xd0, 0x45, 0x51, 0x6e, 0xfc, 0x33, 0xae, 0x6c, 0xc3, 0x94, - 0x7c, 0xeb, 0x09, 0xed, 0x37, 0x16, 0x67, 0x21, 0x2a, 0x83, 0x1b, 0x54, 0x85, - 0xea, 0xfc, 0xe8, 0x48, 0x81, 0x88, 0xea, 0x4e, 0x27, 0xd0, 0xcd, 0xf7, 0xdd, - 0xd3, 0x48, 0xab, 0xff, 0x77, 0x7f, 0x4a, 0x13, 0xbb, 0xc7, 0x16, 0xb6, 0xa5, - 0x94, 0x4e, 0xe7, 0x27, 0x96, 0x56, 0x90, 0xe2, 0x09, 0xb4, 0x9e, 0xb9, 0x62, - 0xc0, 0x39, 0x97, 0x5f, 0x93, 0x9e, 0xd5, 0xc6, 0xe4, 0xc4, 0x00, 0xd8, 0x87, - 0x75, 0x94, 0x33, 0xd3, 0xad, 0x71, 0x6d, 0xa0, 0xcb, 0x44, 0x61, 0x13, 0xc7, - 0x72, 0x7a, 0x64, 0xb5, 0x8c, 0x3f, 0x8a, 0x0f, 0x81, 0x18, 0x9f, 0x98, 0x00, - 0x52, 0x33, 0xa8, 0x13, 0x66, 0xae, 0xe7, 0x3c, 0xec, 0x85, 0x22, 0x8e, 0xbc, - 0xfd, 0x5e, 0xe3, 0xc3, 0xfb, 0x44, 0xdb, 0x76, 0xba, 0x24, 0x3f, 0x28, 0x42, - 0xb7, 0xb5, 0xfc, 0x74, 0x6a, 0xe5, 0x1b, 0x0b, 0xc4, 0xbd, 0x4f, 0xc9, 0xfd, - 0x83, 0x35, 0x65, 0xea, 0x85, 0x2b, 0x92, 0xb2, 0x24, 0xf6, 0x99, 0x03, 0x18, - 0xad, 0x8c, 0x7d, 0x94, 0x37, 0xe2, 0x0e, 0x2a, 0x1f, 0x20, 0xe8, 0x18, 0xf9, - 0x05, 0x7c, 0x5a, 0xba, 0xaa, 0x2e, 0x5c, 0x15, 0xb9, 0x49, 0x45, 0xcd, 0x42, - 0x4c, 0x28, 0xa5, 0xfa, 0x38, 0x5d, 0xad, 0xfe, 0x49, 0x07, 0xb2, 0x74, 0xd8, - 0x42, 0x70, 0x7d, 0xb3, 0x69, 0x7a, 0x5a, 0xe6, 0xc8, 0xf5, 0x42, 0xe5, 0xec, - 0xc0, 0x7f, 0xe4, 0x73, 0x50, 0xd1, 0x01, 0x46, 0x70, 0x21, 0x2e, 0xfe, 0x81, - 0xfb, 0x7c, 0x73, 0xe8, 0x45, 0x0d, 0xf8, 0x14, 0xef, 0x62, 0x32, 0xf7, 0x49, - 0x0f, 0x63, 0xcc, 0xf0, 0x74, 0x80, 0xf8, 0x84, 0xa6, 0x6e, 0xaf, 0xfc, 0x28, - 0xfe, 0xa4, 0x48, 0xd7, 0xb4, 0x01, 0xcd, 0xae, 0x10, 0xe7, 0xc0, 0xc7, 0xf9, - 0xa7, 0xb1, 0x53, 0x31, 0x96, 0x9f, 0xc8, 0xcb, 0x36, 0x39, 0x67, 0x73, 0xde, - 0x19, 0x19, 0x31, 0xc7, 0x50, 0xf6, 0xce, 0x5c, 0xaa, 0xf2, 0x97, 0x68, 0xeb, - 0xb2, 0x7d, 0xac, 0xc7, 0x38, 0x05, 0x6a, 0x81, 0x25, 0xb4, 0x77, 0x2b, 0xf8, - 0x7a, 0xe1, 0x0a, 0x8a, 0x30, 0x9b, 0x9b, 0xd6, 0x55, 0x04, 0x3c, 0xfc, 0x31, - 0x59, 0x49, 0x43, 0x68, 0xc5, 0xab, 0x8c, 0xad, 0xb7, 0xf6, 0x71, 0xe9, 0x62, - 0x6b, 0xd2, 0x63, 0xe3, 0x11, 0x81, 0xa6, 0x04, 0xb5, 0x06, 0xa0, 0x3b, 0x43, - 0x9a, 0x7f, 0xfe, 0x43, 0x55, 0x89, 0x24, 0x77, 0xe2, 0xbd, 0xf3, 0x38, 0xc6, - 0x2c, 0x39, 0x22, 0xf7, 0xd3, 0xc9, 0xa5, 0x6c, 0x71, 0x03, 0xd9, 0x11, 0x94, - 0x8a, 0x84, 0xb5, 0xae, 0x2d, 0xbb, 0x16, 0xa3, 0x76, 0x1a, 0xdd, 0x05, 0x3a, - 0x0f, 0x96, 0x7e, 0x6b, 0x5b, 0xc9, 0x42, 0x11, 0xb6, 0x54, 0x71, 0x53, 0x26, - 0x7c, 0x6e, 0xe1, 0xca, 0xd0, 0xd9, 0x74, 0xa7, 0x10, 0x88, 0x58, 0x37, 0x35, - 0xe4, 0xf6, 0x3d, 0x33, 0x15, 0x6d, 0xad, 0xd5, 0x4c, 0x2f, 0xaf, 0x89, 0x11, - 0x4a, 0x12, 0x7b, 0x97, 0xb9, 0x4c, 0xc2, 0xa2, 0x2e, 0xf3, 0x03, 0xf4, 0x59, - 0xd0, 0x4f, 0xc0, 0xb5, 0x3a, 0xce, 0x59, 0x18, 0xd4, 0x7f, 0xf3, 0x3a, 0x55, - 0x8b, 0xd7, 0x1a, 0x75, 0xf3, 0x55, 0xfb, 0xd0, 0x6b, 0xbc, 0xcf, 0x4e, 0x02, - 0xc3, 0xc0, 0xa4, 0xb6, 0x3d, 0x0c, 0xc9, 0x49, 0x80, 0x1d, 0x63, 0xa6, 0x4c, - 0xb2, 0xd3, 0x23, 0x73, 0xb2, 0xc7, 0xb2, 0x74, 0xab, 0x2d, 0xb4, 0x68, 0x21, - 0x42, 0xc8, 0xb2, 0x1d, 0x84, 0xc4, 0x81, 0xf5, 0xef, 0x21, 0xe4, 0xb5, 0xe3, - 0x60, 0x34, 0x51, 0xbf, 0x94, 0x77, 0x4d, 0x0e, 0xf4, 0x7f, 0x63, 0xfa, 0x6a, - 0xbb, 0x78, 0xd2, 0x1c, 0x19, 0x3c, 0xbe, 0x65, 0xb6, 0x95, 0xfe, 0x67, 0x42, - 0x3c, 0x1e, 0x2d, 0x31, 0x2e, 0x27, 0x76, 0xfa, 0x24, 0xec, 0xe8, 0x46, 0x83, - 0xe7, 0x48, 0x76, 0xc5, 0x5e, 0xa0, 0x36, 0x9e, 0x4e, 0xa0, 0xe8, 0x64, 0x94, - 0xe0, 0x0d, 0xde, 0x23, 0x6a, 0x16, 0x89, 0x73, 0x1f, 0x0a, 0x5d, 0x82, 0x03, - 0xaf, 0xde, 0x5c, 0x42, 0x36, 0x40, 0xb8, 0x1e, 0x4f, 0x63, 0x1c, 0x98, 0x1c, - 0x11, 0xa2, 0xe1, 0xd1, 0x84, 0xc6, 0x7c, 0x52, 0x8d, 0xf9, 0x2d, 0x53, 0xae, - 0xc4, 0x4a, 0x40, 0xa4, 0xea, 0x2a, 0x13, 0x1b, 0x47, 0x33, 0xcf, 0xe4, 0x5c, - 0x6b, 0x00, 0x00, 0xe3, 0xb9, 0x7e, 0x98, 0xc3, 0x2a, 0x07, 0x00, 0x5c, 0xc0, - 0x2f, 0x35, 0xcd, 0x64, 0xf1, 0x4a, 0x9e, 0xa8, 0xd8, 0xc7, 0x08, 0x42, 0xd6, - 0x09, 0x01, 0xd2, 0xab, 0xf3, 0x63, 0x7a, 0xdd, 0x77, 0xc7, 0x35, 0x0f, 0x12, - 0xb0, 0x11, 0xb2, 0x14, 0x36, 0x8e, 0xc7, 0x55, 0x76, 0xe4, 0x7d, 0x16, 0x9e, - 0x39, 0x38, 0xbf, 0x6a, 0xe2, 0xaa, 0x8f, 0xf7, 0xcf, 0xba, 0x7c, 0xac, 0xb1, - 0xf9, 0x2b, 0x6e, 0x4c, 0x24, 0x97, 0xbf, 0xfa, 0x9f, 0x17, 0xca, 0xd2, 0x42, - 0xfa, 0x9c, 0x31, 0x79, 0xc1, 0xa3, 0xaa, 0x81, 0xf7, 0x36, 0x16, 0x49, 0x57, - 0x2c, 0x71, 0x5c, 0x25, 0xa1, 0xf6, 0xcd, 0xf4, 0xef, 0xdb, 0x31, 0xf9, 0x7a, - 0x12, 0x2b, 0x0e, 0x34, 0x9e, 0x8d, 0x1e, 0x89, 0xb1, 0x7a, 0xa0, 0x58, 0xd2, - 0x11, 0xac, 0x1c, 0x36, 0x40, 0xfe, 0xa6, 0xcd, 0x73, 0x13, 0xff, 0xd5, 0x1d, - 0x18, 0x56, 0xa7, 0xe0, 0x92, 0x4d, 0x71, 0x0f, 0xdd, 0x4b, 0x15, 0xa1, 0x1f, - 0xba, 0x46, 0x7f, 0x09, 0x3f, 0xb8, 0x2c, 0x56, 0x58, 0xe2, 0x96, 0x24, 0xc5, - 0x32, 0x19, 0xa6, 0x0c, 0xd0, 0x28, 0x8b, 0x81, 0x5d, 0xb3, 0x0e, 0x1b, 0x29, - 0x6e, 0x0c, 0xfd, 0x02, 0x7e, 0xc8, 0xf6, 0x30, 0x0d, 0x2e, 0x48, 0x29, 0x32, - 0x29, 0x99, 0x95, 0xcb, 0x84, 0x99, 0x66, 0x21, 0x47, 0x99, 0xee, 0x90, 0xc7, - 0xd5, 0x79, 0x2d, 0x22, 0xd9, 0x10, 0x49, 0x01, 0xee, 0xbd, 0x30, 0x57, 0x3d, - 0x21, 0xca, 0x5c, 0x4e, 0xf9, 0xd5, 0x02, 0xa1, 0x6f, 0x15, 0x22, 0x47, 0x58, - 0x96, 0xd7, 0x9b, 0xc5, 0x38, 0xf7, 0x52, 0xcc, 0x29, 0x5b, 0x3e, 0x4c, 0x94, - 0x0f, 0x99, 0xc3, 0xca, 0xf4, 0xa5, 0xb9, 0xb5, 0x2e, 0x74, 0xc4, 0xe8, 0xd9, - 0x86, 0x4e, 0x64, 0xd0, 0x17, 0xcd, 0x37, 0x12, 0x91, 0xf0, 0xbe, 0xeb, 0x22, - 0x13, 0xfc, 0x4a, 0xf1, 0xe4, 0x50, 0xe4, 0xd5, 0x21, 0x7c, 0x66, 0x17, 0x00, - 0x8c, 0x78, 0xf4, 0xfb, 0x11, 0x12, 0xf4, 0x02, 0x8a, 0x70, 0x4f, 0xc5, 0xa9, - 0x38, 0x2c, 0x6b, 0x03, 0xb5, 0x34, 0x96, 0x84, 0x08, 0x3e, 0xc9, 0x48, 0x26, - 0x41, 0x61, 0xda, 0x8f, 0x7b, 0xce, 0xb5, 0x96, 0x0e, 0xdf, 0xd4, 0xc1, 0xfd, - 0x08, 0xc5, 0xb2, 0x46, 0xe0, 0xa2, 0x86, 0xac, 0x1a, 0x38, 0x87, 0x8d, 0xf7, - 0xfc, 0x90, 0xd7, 0x17, 0x7f, 0x6c, 0x18, 0x0c, 0x81, 0x6d, 0x58, 0x24, 0x53, - 0xd8, 0x17, 0x85, 0x60, 0xda, 0xf9, 0x75, 0x11, 0x19, 0x55, 0xa2, 0xbc, 0xa3, - 0x42, 0x3e, 0x2e, 0xae, 0xa6, 0xc8, 0x44, 0xc3, 0x28, 0x53, 0x4b, 0xc6, 0x91, - 0x39, 0x07, 0x03, 0x24, 0x7c, 0x89, 0xe2, 0x92, 0xa3, 0xae, 0x09, 0xe5, 0x35, - 0x61, 0x16, 0x62, 0x38, 0x3e, 0x14, 0x1a, 0x54, 0x2a, 0xf9, 0xe4, 0x62, 0xa7, - 0x38, 0xf8, 0x94, 0xe9, 0x89, 0xce, 0x99, 0xa8, 0x9c, 0xdc, 0x7f, 0x40, 0x6b, - 0x87, 0xe0, 0x09, 0x12, 0x1e, 0x06, 0xf6, 0xa1, 0xbf, 0x62, 0xa0, 0x8b, 0xf4, - 0x35, 0x19, + 0x87, 0xd7, 0x2d, 0x74, 0xa3, 0xf7, 0x4e, 0x5a, 0x0a, 0xcd, 0x81, 0x85, 0x29, + 0x99, 0x96, 0xd7, 0x90, 0xe5, 0x91, 0xa4, 0x94, 0x93, 0xfe, 0x7d, 0x7d, 0xab, + 0xcd, 0xbb, 0xe5, 0x3c, 0x18, 0xb0, 0x0a, 0xef, 0x1b, 0x1b, 0x91, 0xd2, 0x81, + 0xb7, 0x42, 0x66, 0x84, 0x8b, 0x40, 0x48, 0x7e, 0x43, 0x8d, 0xa4, 0xe0, 0xdb, + 0x6f, 0xcd, 0xdb, 0x18, 0x31, 0xbd, 0x1c, 0xc2, 0x56, 0x7c, 0xa0, 0x33, 0xac, + 0x40, 0x37, 0x62, 0xbd, 0xf5, 0x16, 0x01, 0x45, 0x23, 0xa0, 0xdd, 0x53, 0xcf, + 0x8e, 0x05, 0xb2, 0x28, 0x36, 0x1e, 0x4c, 0xac, 0x37, 0xb4, 0xad, 0xf0, 0xec, + 0xd4, 0xcc, 0xba, 0x22, 0x60, 0x0a, 0x8c, 0x82, 0xf9, 0x8f, 0xeb, 0x82, 0xa1, + 0x0f, 0xa1, 0xc0, 0x99, 0xf6, 0x27, 0x76, 0x79, 0x82, 0x36, 0xc5, 0xca, 0x7f, + 0x1e, 0x46, 0xeb, 0xdb, 0x2b, 0x14, 0x4d, 0x87, 0x13, 0xe5, 0x6c, 0x77, 0x2f, + 0x2c, 0x18, 0x54, 0xb1, 0x01, 0xcd, 0xd0, 0xfe, 0xee, 0xaf, 0x95, 0xbc, 0x80, + 0xd9, 0x39, 0xde, 0x77, 0x1d, 0x25, 0xc2, 0xdc, 0x0f, 0xc0, 0xd4, 0x93, 0x77, + 0xc2, 0x50, 0x11, 0x3b, 0xe7, 0x7d, 0x9e, 0xde, 0x68, 0x08, 0x8a, 0x1b, 0x26, + 0x48, 0xb8, 0x17, 0x4c, 0xbc, 0xfc, 0x8b, 0x5b, 0x5c, 0xd0, 0x77, 0x11, 0x5a, + 0xfd, 0xe1, 0x84, 0x05, 0x05, 0x4e, 0x5d, 0xa9, 0xa0, 0x43, 0x10, 0x34, 0x2c, ], txid: [ - 0xa3, 0xa2, 0x20, 0x42, 0xd0, 0x60, 0x1b, 0xa1, 0xaf, 0xe7, 0x87, 0x17, 0x25, - 0xbf, 0xbe, 0xdc, 0x9f, 0x71, 0xaa, 0x18, 0x71, 0x27, 0x54, 0x03, 0xf2, 0x9a, - 0x40, 0x9e, 0x89, 0x00, 0x79, 0x3d, + 0x40, 0x6a, 0x57, 0x3c, 0x1f, 0x72, 0xf4, 0x85, 0x8f, 0x8b, 0xba, 0x51, 0x77, + 0x41, 0x19, 0xdb, 0x87, 0x0d, 0x57, 0x6c, 0x9a, 0xd5, 0xaf, 0xc2, 0x64, 0x93, + 0x0e, 0x2c, 0xe9, 0x11, 0x3e, 0xd2, ], auth_digest: [ - 0x3e, 0xbb, 0x77, 0x16, 0xca, 0x0b, 0x7a, 0x41, 0x85, 0x19, 0xc0, 0xcc, 0x14, - 0xd8, 0x79, 0xdc, 0x26, 0x70, 0x23, 0xaa, 0xc3, 0x80, 0x84, 0xb8, 0x4d, 0xe3, - 0xd9, 0xa3, 0x21, 0xf9, 0xf7, 0x85, + 0x04, 0x07, 0x22, 0x74, 0x0f, 0x68, 0x5a, 0x8d, 0x66, 0x17, 0x5e, 0x80, 0xbe, + 0x70, 0xe8, 0x70, 0x81, 0x2a, 0x0d, 0x10, 0x77, 0x56, 0xcf, 0xbb, 0x90, 0x00, + 0x8a, 0x86, 0x3f, 0x0a, 0xd3, 0x55, ], - amounts: vec![], - script_pubkeys: vec![], - transparent_input: None, + amounts: vec![977707669677105, 1086470537676782, 717881794498989], + script_pubkeys: vec![vec![0x53, 0x52, 0x65], vec![0x53, 0x51], vec![0x00, 0xac]], + transparent_input: Some(1), sighash_shielded: [ - 0xa3, 0xa2, 0x20, 0x42, 0xd0, 0x60, 0x1b, 0xa1, 0xaf, 0xe7, 0x87, 0x17, 0x25, - 0xbf, 0xbe, 0xdc, 0x9f, 0x71, 0xaa, 0x18, 0x71, 0x27, 0x54, 0x03, 0xf2, 0x9a, - 0x40, 0x9e, 0x89, 0x00, 0x79, 0x3d, + 0xe7, 0x0d, 0x54, 0x15, 0x5a, 0xf3, 0x6f, 0x88, 0x7b, 0x3b, 0xd4, 0xeb, 0x8b, + 0x44, 0x72, 0xea, 0x53, 0x29, 0xc7, 0x10, 0x10, 0x34, 0xe3, 0xc4, 0xe3, 0x87, + 0x70, 0x9b, 0x22, 0xa1, 0xcd, 0xe1, ], - sighash_all: None, - sighash_none: None, + sighash_all: Some([ + 0x0f, 0x49, 0xe9, 0x42, 0x2a, 0xd8, 0x73, 0x85, 0x3e, 0xaa, 0x41, 0x97, 0xc8, + 0xef, 0xe8, 0x2e, 0xcc, 0xf3, 0xd1, 0xe3, 0x1f, 0xb2, 0x9d, 0x5c, 0x8d, 0x60, + 0x40, 0x48, 0xb1, 0x11, 0x30, 0x7e, + ]), + sighash_none: Some([ + 0xad, 0x51, 0x81, 0xe0, 0x4e, 0x00, 0xe6, 0x23, 0x3b, 0x81, 0x3f, 0x9b, 0x55, + 0x73, 0x62, 0x17, 0xe0, 0x44, 0xcf, 0xeb, 0x06, 0x25, 0x0f, 0x01, 0x1a, 0x78, + 0xbc, 0xf4, 0x3f, 0xe6, 0x4e, 0x7d, + ]), sighash_single: None, - sighash_all_anyone: None, - sighash_none_anyone: None, + sighash_all_anyone: Some([ + 0x5c, 0x18, 0xba, 0xca, 0x32, 0x30, 0x83, 0x74, 0xf4, 0x70, 0x48, 0x69, 0x00, + 0x25, 0xee, 0x36, 0x64, 0xa9, 0x86, 0x68, 0x52, 0x41, 0x52, 0xb4, 0x25, 0xc0, + 0x63, 0x8c, 0x34, 0x4a, 0x6d, 0xf4, + ]), + sighash_none_anyone: Some([ + 0x85, 0xaf, 0xd9, 0x13, 0x58, 0xdd, 0x6f, 0x03, 0x30, 0x14, 0x63, 0x2c, 0xe6, + 0xbd, 0x02, 0xc7, 0xd9, 0x4c, 0xb9, 0x07, 0x22, 0x35, 0xce, 0xe6, 0x8e, 0x5d, + 0xeb, 0x41, 0x9a, 0x17, 0xdd, 0x02, + ]), sighash_single_anyone: None, }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x2f, - 0xff, 0xe8, 0x6e, 0x2a, 0xa3, 0xb8, 0x14, 0x00, 0x02, 0x6f, 0x96, 0xe4, 0xcf, - 0x2d, 0xb8, 0x03, 0x00, 0x04, 0x52, 0xac, 0x6a, 0x52, 0x9a, 0x5c, 0x86, 0xba, - 0xc8, 0x3c, 0x02, 0x00, 0x06, 0x52, 0xac, 0x6a, 0x6a, 0x6a, 0x63, 0x01, 0x2c, - 0x82, 0x93, 0x53, 0xa7, 0x44, 0xb1, 0xde, 0x28, 0x3f, 0x10, 0x90, 0xeb, 0x7a, - 0x9f, 0x80, 0xc0, 0xf7, 0x5c, 0x03, 0xc5, 0x51, 0x0e, 0x6c, 0x7c, 0x62, 0x7a, - 0x8c, 0xf9, 0x41, 0x0d, 0xbc, 0x99, 0x27, 0xe9, 0xd7, 0xf4, 0x88, 0x4e, 0x6e, - 0xd3, 0xfd, 0x5e, 0x4b, 0x7c, 0xb8, 0x35, 0xb8, 0x33, 0x08, 0x96, 0x4e, 0x3c, - 0x46, 0x87, 0x3f, 0xd6, 0x13, 0x31, 0x7b, 0x91, 0xd2, 0x92, 0x36, 0xea, 0x90, - 0xe3, 0x65, 0xd1, 0x62, 0xcc, 0x05, 0x1c, 0x84, 0x6d, 0x24, 0x21, 0x76, 0xda, - 0xf6, 0xd2, 0x86, 0x18, 0xae, 0x31, 0xfb, 0xaa, 0xe9, 0x99, 0xa9, 0x3f, 0x17, - 0x5c, 0x69, 0x38, 0xe6, 0x01, 0xc2, 0x72, 0x08, 0x2e, 0xce, 0x96, 0x7f, 0x8d, - 0x4f, 0xcc, 0x35, 0x2c, 0x04, 0xf2, 0xb1, 0x50, 0x13, 0x61, 0xd7, 0xed, 0xa7, - 0x9a, 0x11, 0x98, 0x66, 0x1f, 0x1c, 0xf2, 0x9d, 0x09, 0xc7, 0x87, 0xaf, 0xbc, - 0xa2, 0x00, 0x36, 0x04, 0xc9, 0x99, 0x94, 0x4d, 0xe3, 0xc0, 0xfc, 0xf8, 0x31, - 0x93, 0xa1, 0x8d, 0x35, 0x88, 0x3a, 0xae, 0x56, 0xb1, 0x36, 0x7b, 0x24, 0x08, - 0x55, 0x42, 0xd2, 0x40, 0x12, 0xf9, 0x9e, 0x59, 0x58, 0x00, 0x80, 0x8a, 0x2e, - 0x2f, 0xe3, 0x6c, 0x1f, 0x2c, 0x60, 0x3d, 0x07, 0x84, 0x98, 0x59, 0x75, 0xd3, - 0x67, 0x1c, 0xfd, 0x9a, 0x8a, 0xd8, 0xeb, 0xbd, 0x76, 0x43, 0x8e, 0xf6, 0x49, - 0x79, 0xbf, 0x65, 0x15, 0xed, 0x4a, 0x68, 0x40, 0xb0, 0x88, 0x3a, 0x9e, 0x6e, - 0xf6, 0x4a, 0x0e, 0xfc, 0xae, 0x1c, 0xf2, 0x1d, 0xfe, 0x74, 0x85, 0x4e, 0x84, - 0xc2, 0x74, 0x9f, 0xac, 0x03, 0x82, 0x52, 0x75, 0xc9, 0xb6, 0x30, 0x21, 0x84, - 0xc7, 0x2d, 0xf4, 0xc4, 0xbb, 0x28, 0x62, 0xe4, 0xe8, 0xa7, 0xd9, 0xa4, 0xa2, - 0x82, 0x86, 0x6f, 0x9a, 0x7b, 0x2c, 0xfc, 0x9a, 0x56, 0x31, 0x3d, 0xa0, 0xc4, - 0x7a, 0x34, 0xb7, 0xb9, 0xcd, 0xa3, 0xac, 0xe8, 0x18, 0x5f, 0x07, 0xdf, 0x36, - 0xe4, 0x48, 0xa7, 0x6a, 0xa4, 0x77, 0xf2, 0x24, 0xd8, 0x7a, 0x07, 0x4f, 0x43, - 0xaf, 0x5d, 0x5f, 0x79, 0xb3, 0xab, 0x11, 0x28, 0xf0, 0x81, 0x91, 0x44, 0x7f, - 0xa6, 0x46, 0xbf, 0xdd, 0xe5, 0xb5, 0x1e, 0x23, 0x3c, 0xa6, 0x15, 0x5d, 0x10, - 0x15, 0x85, 0xbc, 0x2c, 0x40, 0x15, 0x8a, 0xc2, 0x10, 0x6e, 0x66, 0xa2, 0x6e, - 0x46, 0x42, 0x33, 0x70, 0x63, 0x68, 0x76, 0xb4, 0x34, 0xa7, 0x4f, 0x8c, 0xe8, - 0x06, 0x00, 0x50, 0xb0, 0x82, 0xa7, 0x9b, 0x61, 0xbb, 0x5d, 0x34, 0x4e, 0xb5, - 0xa1, 0x15, 0x83, 0x26, 0xce, 0xd9, 0xa9, 0xd9, 0xf5, 0x4f, 0xb2, 0xfe, 0x8f, - 0x9f, 0x05, 0xcd, 0x11, 0x1e, 0xe4, 0x6c, 0x47, 0x10, 0xf6, 0xf6, 0x3a, 0x62, - 0x69, 0x45, 0x57, 0xef, 0x1b, 0x12, 0xc8, 0x80, 0x06, 0xb6, 0x78, 0x72, 0x50, - 0x5f, 0x4e, 0x88, 0x3b, 0x58, 0x59, 0x07, 0x92, 0x9a, 0x2f, 0x3f, 0xdb, 0x0d, - 0x8f, 0x79, 0x14, 0xc4, 0x2d, 0xde, 0x2d, 0x20, 0x00, 0xf5, 0xae, 0x02, 0xd4, - 0x18, 0x21, 0xc8, 0xe1, 0xee, 0x01, 0x38, 0xeb, 0xcb, 0x72, 0x8d, 0x7c, 0x6c, - 0x3c, 0x80, 0x02, 0x7e, 0x43, 0x75, 0x94, 0xc6, 0x70, 0xfd, 0x6f, 0x39, 0x08, - 0x22, 0x2e, 0xe7, 0xa1, 0xb9, 0x17, 0xf8, 0x27, 0x1a, 0xbe, 0x66, 0x0e, 0x39, - 0xe0, 0x51, 0xaa, 0xa6, 0xfc, 0xa1, 0x86, 0x22, 0x76, 0xe2, 0xba, 0xa0, 0xfe, - 0x0b, 0x16, 0x2a, 0xeb, 0xcf, 0xe3, 0xd9, 0x34, 0x9c, 0x8d, 0x15, 0x4b, 0xb7, - 0xee, 0x28, 0x21, 0x2c, 0x1b, 0xaa, 0x70, 0x5d, 0x82, 0x07, 0x0d, 0x70, 0x32, - 0xf2, 0x69, 0x5d, 0x17, 0x96, 0x80, 0x9f, 0xab, 0x41, 0x24, 0x69, 0x26, 0xaf, - 0x99, 0x2b, 0x6e, 0xee, 0x95, 0xa9, 0xa0, 0x6b, 0xc4, 0x56, 0x2c, 0x5f, 0x2f, - 0x1b, 0x19, 0x54, 0x95, 0x00, 0x37, 0x2e, 0x7a, 0xd5, 0x79, 0xa6, 0xd6, 0xd7, - 0x8b, 0x33, 0x15, 0x31, 0x30, 0xfb, 0x44, 0x8f, 0xb7, 0x9e, 0x8a, 0x66, 0x9d, - 0xb8, 0xa0, 0xf3, 0x5c, 0xdf, 0x9a, 0xe5, 0xd3, 0x2d, 0x73, 0x2f, 0xc7, 0x94, - 0x18, 0xe2, 0x3b, 0x45, 0x1d, 0xdc, 0x95, 0xa2, 0x2a, 0xba, 0xbb, 0x05, 0x6e, - 0xc6, 0xb5, 0xe8, 0xba, 0x4f, 0x52, 0x4d, 0xfa, 0xfe, 0x87, 0x52, 0x62, 0xdd, - 0x7b, 0xe4, 0x1c, 0xbb, 0xc6, 0x24, 0x20, 0xd4, 0xad, 0x6d, 0xf5, 0xc9, 0xb7, - 0x13, 0x60, 0x4f, 0x65, 0x60, 0x88, 0xa4, 0x48, 0x5e, 0x93, 0xbe, 0x19, 0x07, - 0xd2, 0x7a, 0xc6, 0xec, 0x3c, 0x57, 0x25, 0x9b, 0xd6, 0x98, 0x1d, 0x42, 0xc1, - 0xb7, 0x8a, 0x29, 0xad, 0x96, 0x85, 0xe6, 0x3c, 0x49, 0x4d, 0x41, 0x29, 0x62, - 0x3e, 0xa1, 0xa7, 0xff, 0xec, 0x85, 0xfa, 0x29, 0x41, 0x10, 0x73, 0xed, 0xb2, - 0x97, 0x8e, 0xf4, 0xe4, 0x69, 0xdd, 0xd5, 0xcd, 0xa9, 0x86, 0x18, 0x99, 0x95, - 0xf8, 0x8d, 0x6a, 0xb3, 0x66, 0xdb, 0x01, 0x90, 0x01, 0xf5, 0xb2, 0x52, 0x88, - 0xcf, 0x86, 0x0f, 0xd9, 0x98, 0xee, 0x57, 0x3c, 0x8c, 0xc4, 0x8a, 0xa9, 0xef, - 0xcf, 0x9b, 0x61, 0x7e, 0x04, 0x3c, 0x32, 0x9c, 0xd1, 0xaa, 0x1a, 0x0e, 0xd3, - 0xa4, 0x02, 0xfb, 0x96, 0xe3, 0x36, 0xc7, 0x19, 0xe6, 0x25, 0x3c, 0xb6, 0x91, - 0xaa, 0x0d, 0xb5, 0x27, 0x36, 0x62, 0x6e, 0xd1, 0x97, 0x88, 0x75, 0x88, 0x8e, - 0xc7, 0x6c, 0x84, 0x6b, 0xc2, 0x27, 0x27, 0x2a, 0x58, 0x53, 0x17, 0xdf, 0xf0, - 0xb1, 0x14, 0x8d, 0x92, 0xd6, 0xf5, 0xfb, 0x7d, 0x95, 0x33, 0x67, 0x70, 0xa7, - 0xd1, 0x6f, 0xac, 0x1a, 0xdd, 0x86, 0x07, 0x76, 0xcb, 0x48, 0x02, 0x21, 0xf8, - 0xfb, 0x33, 0xd7, 0xe4, 0xe9, 0xb0, 0x79, 0x02, 0xd2, 0xff, 0x86, 0xfd, 0xac, - 0x72, 0x09, 0x62, 0x34, 0xae, 0xd4, 0x8d, 0xe8, 0x92, 0xff, 0x73, 0x55, 0x07, - 0x3b, 0xbf, 0x06, 0x15, 0xf6, 0x7b, 0x11, 0x00, 0xcc, 0x2e, 0xa3, 0xba, 0x3d, - 0x6c, 0x1a, 0x1a, 0x90, 0x87, 0xb1, 0x19, 0xba, 0xee, 0xbf, 0xa6, 0x2b, 0xc9, - 0xf0, 0xec, 0x47, 0x9d, 0x99, 0xc1, 0xa3, 0xb1, 0x58, 0xb5, 0x14, 0xd1, 0x62, - 0x9d, 0xb3, 0x99, 0x3f, 0x11, 0x67, 0x2a, 0x26, 0x70, 0x8e, 0x5a, 0xd8, 0x16, - 0xb5, 0x47, 0xab, 0x7e, 0x82, 0x7d, 0x07, 0xe8, 0xd1, 0x9c, 0xeb, 0x3b, 0x19, - 0x05, 0x00, 0xee, 0xdf, 0x46, 0x0a, 0xa3, 0xbe, 0xb4, 0x34, 0x19, 0xc6, 0xb0, - 0x82, 0xe8, 0x35, 0xce, 0x84, 0xca, 0x13, 0xb6, 0x90, 0x8a, 0x88, 0x13, 0xc0, - 0x21, 0xde, 0x9f, 0xa9, 0xa4, 0x4e, 0x4c, 0x18, 0x31, 0xa0, 0x81, 0xf2, 0xc1, - 0xf3, 0xfd, 0x78, 0x25, 0x49, 0xd3, 0xf3, 0x24, 0x57, 0x59, 0x60, 0x6d, 0x9f, - 0x92, 0xd5, 0x54, 0x8a, 0xcf, 0xea, 0xdb, 0xaf, 0x9c, 0xaa, 0x6b, 0x93, 0xdc, - 0x08, 0x82, 0x8d, 0x74, 0xf6, 0xd5, 0xfd, 0xd8, 0x33, 0x31, 0xf0, 0x96, 0x91, - 0x45, 0x95, 0x52, 0x97, 0xe6, 0x9f, 0x00, 0xfd, 0x29, 0x87, 0xf2, 0xda, 0x2b, - 0x94, 0xb9, 0x95, 0xfe, 0xcb, 0xe6, 0x22, 0xa7, 0x35, 0xef, 0x7f, 0x12, 0x07, - 0xf6, 0x71, 0x62, 0x94, 0x89, 0x20, 0x2b, 0xea, 0x0b, 0x47, 0x5e, 0x51, 0x68, - 0x1a, 0xa1, 0x67, 0x78, 0xb3, 0x9b, 0xd9, 0x23, 0xc9, 0x8d, 0xc6, 0xff, 0x83, - 0x73, 0xc7, 0x9b, 0xb1, 0x70, 0x30, 0x41, 0x7b, 0xc2, 0x00, 0xc8, 0xf0, 0xb8, - 0x55, 0xac, 0xfe, 0xc1, 0x79, 0xf7, 0x67, 0x4c, 0xec, 0x27, 0x21, 0xa1, 0x0f, - 0xca, 0x69, 0x3d, 0x83, 0xcf, 0xe5, 0xb8, 0xcd, 0xcc, 0x18, 0xf8, 0x1a, 0xd6, - 0x17, 0xfa, 0x26, 0xf0, 0xdf, 0xb8, 0x36, 0x55, 0xb8, 0xa2, 0x9a, 0x7f, 0x83, - 0x42, 0x32, 0x42, 0x5e, 0x8c, 0x47, 0x45, 0x88, 0xf1, 0x8d, 0xd3, 0x26, 0xaa, - 0x39, 0x6c, 0x3e, 0x47, 0x75, 0xe0, 0x02, 0x05, 0xfc, 0x9e, 0x45, 0xf7, 0xb7, - 0xd2, 0xe6, 0xd5, 0x5d, 0xcb, 0x90, 0xe2, 0x3f, 0xf6, 0xb5, 0x08, 0x45, 0x9a, - 0xa6, 0x99, 0xbf, 0xcb, 0xd5, 0x0f, 0x29, 0xa9, 0x9b, 0x2f, 0xf0, 0xfa, 0x16, - 0x0f, 0x2c, 0xd6, 0x9a, 0x80, 0xea, 0x9e, 0x83, 0x1c, 0x29, 0x4b, 0x4c, 0xfa, - 0x7b, 0xf0, 0x02, 0x38, 0x12, 0xfd, 0x67, 0x01, 0xbb, 0x13, 0xb5, 0xe4, 0xbc, - 0x12, 0xdc, 0x73, 0xd4, 0xe3, 0xef, 0x4f, 0x4a, 0x89, 0x2b, 0x43, 0x14, 0x8c, - 0xa7, 0x3e, 0x21, 0xa2, 0x7f, 0x89, 0x95, 0x17, 0x06, 0xbc, 0x22, 0x08, 0x43, - 0x94, 0x4f, 0x66, 0x0e, 0x1b, 0xa7, 0x84, 0x2b, 0x3e, 0x90, 0x30, 0x53, 0x83, - 0x89, 0x6e, 0xc4, 0x90, 0x5f, 0x70, 0xc7, 0x8b, 0x69, 0x4e, 0x6a, 0x5a, 0x3e, - 0x43, 0x12, 0xcd, 0x82, 0x08, 0x13, 0x2b, 0x84, 0x0f, 0x05, 0xc7, 0x14, 0x52, - 0x3c, 0xa8, 0x19, 0x72, 0x0a, 0xe2, 0x27, 0xfd, 0x1a, 0xcb, 0xa7, 0x14, 0xfa, - 0x4f, 0xc4, 0x5f, 0xc5, 0x39, 0x88, 0x57, 0xb4, 0x0d, 0xc1, 0x48, 0x79, 0x85, - 0x6f, 0x35, 0x4b, 0xa4, 0xd2, 0x58, 0x1d, 0x0c, 0xda, 0x54, 0xb6, 0x38, 0xba, - 0x9d, 0x76, 0xf9, 0xb5, 0x2d, 0x17, 0xc8, 0xf8, 0x8e, 0xe6, 0x3f, 0x58, 0x45, - 0xb5, 0xdc, 0xef, 0xa4, 0xc3, 0x47, 0x9b, 0xce, 0x9a, 0xca, 0xd1, 0x8b, 0x4a, - 0xea, 0xe0, 0x3c, 0x0e, 0xae, 0x22, 0x5d, 0x42, 0x84, 0x8b, 0xde, 0xaa, 0x53, - 0x6d, 0x7d, 0x8d, 0xd3, 0xbc, 0x97, 0x9f, 0x06, 0x58, 0x66, 0x73, 0xbc, 0x6f, - 0xf1, 0xc5, 0xd3, 0xb3, 0x20, 0xf3, 0x49, 0xa5, 0xb3, 0xa8, 0xb3, 0x55, 0x59, - 0x22, 0x96, 0xaa, 0xf6, 0x1c, 0x5b, 0x72, 0x52, 0xf7, 0x3e, 0xc0, 0xa9, 0x46, - 0x6a, 0x1b, 0x85, 0x76, 0x4f, 0xb0, 0x83, 0x1b, 0x4a, 0x1a, 0x36, 0x89, 0x0e, - 0x22, 0x4c, 0x01, 0xac, 0xfc, 0xe4, 0x8e, 0xe3, 0xed, 0x93, 0x87, 0x73, 0x98, - 0xe0, 0x72, 0x6d, 0x02, 0x93, 0x6d, 0x0d, 0x03, 0x2e, 0x18, 0xe3, 0x28, 0x8b, - 0x26, 0xc3, 0xaf, 0xc9, 0x3b, 0x05, 0x72, 0x1d, 0xf1, 0xd3, 0xa4, 0x14, 0x66, - 0x54, 0x46, 0xcf, 0x1e, 0x0f, 0x26, 0xcf, 0x15, 0xc3, 0x55, 0x4e, 0xf6, 0x1d, - 0xd3, 0x32, 0x42, 0x6b, 0x94, 0x5e, 0x3c, 0xb8, 0xf0, 0x35, 0x4a, 0x9f, 0xb7, - 0x2a, 0xe3, 0x50, 0x7a, 0xef, 0xe8, 0x9b, 0xe5, 0x41, 0x66, 0x45, 0x93, 0xb6, - 0xee, 0x77, 0xa2, 0xa7, 0x5f, 0x8b, 0x26, 0xa2, 0xb1, 0x3c, 0x2c, 0xa8, 0x04, - 0x00, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x11, + 0x12, 0xf4, 0x02, 0x8a, 0x12, 0x7f, 0x12, 0x02, 0x38, 0x2c, 0x6b, 0x03, 0xe7, + 0xd8, 0x08, 0x5e, 0x90, 0x6c, 0xf8, 0x4c, 0xa2, 0xc1, 0x20, 0x7c, 0x87, 0xa2, + 0xbc, 0xe2, 0x08, 0x0a, 0x98, 0x91, 0x66, 0x8d, 0x69, 0xb0, 0x44, 0xbe, 0xce, + 0xd6, 0xcd, 0xa3, 0x2c, 0x22, 0x00, 0x91, 0x17, 0x91, 0x7a, 0xa0, 0x7d, 0xdf, + 0xfc, 0xd3, 0x77, 0x39, 0x5c, 0xba, 0x61, 0x6d, 0x63, 0xc0, 0xb6, 0x9c, 0x01, + 0xfc, 0xc4, 0x53, 0x91, 0xfd, 0x5b, 0x87, 0x63, 0xfb, 0x96, 0xd7, 0xca, 0x33, + 0x3a, 0x12, 0xde, 0x3c, 0xef, 0xa9, 0x1c, 0x08, 0x00, 0x51, 0x6a, 0x53, 0x65, + 0x00, 0x52, 0x51, 0x29, 0x3e, 0x46, 0x37, 0x03, 0x06, 0xe1, 0xbd, 0x04, 0xca, + 0x10, 0x07, 0x00, 0x02, 0x65, 0xac, 0x49, 0xc6, 0xe2, 0x0d, 0x87, 0x7e, 0x02, + 0x00, 0x05, 0x52, 0x53, 0x53, 0x63, 0xac, 0x51, 0xd1, 0x58, 0x22, 0xdc, 0x20, + 0x05, 0x00, 0x01, 0x53, 0x00, 0x00, 0x02, 0x36, 0xeb, 0x2d, 0x22, 0xe4, 0x95, + 0x1c, 0xb3, 0x3b, 0x2e, 0x33, 0xf2, 0xb0, 0x57, 0x3e, 0x39, 0x2e, 0x96, 0x13, + 0x53, 0xef, 0x1f, 0x9c, 0x8d, 0x5b, 0x4a, 0x2b, 0x79, 0x1c, 0xfe, 0x50, 0x35, + 0x00, 0x66, 0xfa, 0xc6, 0xb3, 0x3f, 0x8d, 0x6c, 0x97, 0xeb, 0x8e, 0xf4, 0x3e, + 0x92, 0xb5, 0xa7, 0xee, 0x6e, 0xd0, 0x16, 0xc0, 0xf6, 0x65, 0xbe, 0x81, 0x33, + 0xb7, 0xdc, 0x1d, 0x86, 0x04, 0x0d, 0x84, 0x70, 0x02, 0x25, 0x4e, 0x02, 0x71, + 0xd5, 0xc2, 0x77, 0xde, 0x74, 0x03, 0x0a, 0xd9, 0x69, 0x88, 0x1a, 0xe4, 0xb3, + 0x67, 0xd6, 0x87, 0x9c, 0x4a, 0x1b, 0xef, 0xaf, 0x45, 0x64, 0x5a, 0xa0, 0xbf, + 0x46, 0x70, 0xb7, 0xe0, 0x5d, 0xfd, 0xaf, 0xbb, 0x0c, 0xf3, 0xdd, 0xee, 0x28, + 0xd7, 0x6a, 0x82, 0x42, 0x8e, 0x8a, 0xba, 0x43, 0x64, 0xe8, 0x4b, 0xac, 0x37, + 0x92, 0x98, 0xdf, 0x29, 0x32, 0xff, 0xe5, 0x09, 0x25, 0x47, 0x28, 0x81, 0xf6, + 0x4a, 0xbc, 0x2b, 0x30, 0xda, 0xde, 0xfe, 0x4a, 0x8c, 0x52, 0x94, 0x3f, 0x02, + 0xc1, 0x79, 0x2b, 0x95, 0x8a, 0x90, 0x4f, 0x00, 0x80, 0x41, 0x04, 0xea, 0x4e, + 0x27, 0xd0, 0xcd, 0xf7, 0xdd, 0xd3, 0x48, 0xab, 0xff, 0x77, 0x7f, 0x4a, 0x13, + 0xbb, 0xc7, 0x16, 0xb6, 0xa5, 0x94, 0x4e, 0xe7, 0x27, 0x96, 0x56, 0x90, 0xe2, + 0x09, 0xb4, 0x9e, 0xb9, 0x62, 0xc0, 0x39, 0x97, 0x5f, 0x93, 0x9e, 0xd5, 0xc6, + 0xe4, 0xc4, 0x00, 0xd8, 0x87, 0x75, 0x94, 0x33, 0xd3, 0xad, 0x71, 0x6d, 0xa0, + 0xcb, 0x44, 0x61, 0x13, 0xc7, 0x72, 0x7a, 0x64, 0xb5, 0x8c, 0x3f, 0x8a, 0x0f, + 0x81, 0x18, 0x9f, 0x98, 0x00, 0x52, 0x33, 0xa8, 0x13, 0x66, 0xae, 0xe7, 0x3c, + 0xec, 0x85, 0x22, 0x8e, 0xbc, 0xfd, 0x5e, 0xe3, 0xc3, 0xfb, 0x44, 0xdb, 0x76, + 0xba, 0x24, 0x3f, 0x28, 0x42, 0xb7, 0xb5, 0xfc, 0x74, 0x6a, 0xe5, 0x1b, 0x0b, + 0xc4, 0xbd, 0x4f, 0xc9, 0xfd, 0x83, 0x35, 0x65, 0xea, 0x85, 0x2b, 0x92, 0xb2, + 0x24, 0xf6, 0x99, 0x03, 0x18, 0xad, 0x8c, 0x7d, 0x94, 0x37, 0xe2, 0x0e, 0x2a, + 0x1f, 0x20, 0xe8, 0x18, 0xf9, 0x05, 0x7c, 0x5a, 0xba, 0xaa, 0x2e, 0x5c, 0x15, + 0xb9, 0x49, 0x45, 0xcd, 0x42, 0x4c, 0x28, 0xa5, 0xfa, 0x38, 0x5d, 0xad, 0xfe, + 0x49, 0x07, 0xb2, 0x74, 0xd8, 0x42, 0x70, 0x7d, 0xb3, 0x69, 0x7a, 0x5a, 0xe6, + 0xc8, 0xf5, 0x42, 0xe5, 0xec, 0xc0, 0x7f, 0xe4, 0x73, 0x50, 0xd1, 0x01, 0x46, + 0x70, 0x21, 0x2e, 0xfe, 0x81, 0xfb, 0x7c, 0x73, 0xe8, 0x45, 0x0d, 0xf8, 0x14, + 0xef, 0x62, 0x32, 0xf7, 0x49, 0x0f, 0x63, 0xcc, 0xf0, 0x74, 0x80, 0xf8, 0x84, + 0xa6, 0x6e, 0xaf, 0xfc, 0x28, 0xfe, 0xa4, 0x48, 0xd7, 0xb4, 0x01, 0xcd, 0xae, + 0x10, 0xe7, 0xc0, 0xc7, 0xf9, 0xa7, 0xb1, 0x53, 0x31, 0x96, 0x9f, 0xc8, 0xcb, + 0x36, 0x39, 0x67, 0x73, 0xde, 0x19, 0x19, 0x31, 0xc7, 0x50, 0xf6, 0xce, 0x5c, + 0xaa, 0xf2, 0x97, 0x68, 0xeb, 0xb2, 0x7d, 0xac, 0xc7, 0x38, 0x05, 0x6a, 0x81, + 0x25, 0xb4, 0x77, 0x2b, 0xf8, 0x7a, 0xe1, 0x0a, 0x8a, 0x30, 0x9b, 0x9b, 0xd6, + 0x55, 0x04, 0x3c, 0xfc, 0x31, 0x59, 0x49, 0x43, 0x68, 0xc5, 0xab, 0x8c, 0xad, + 0xb7, 0xf6, 0x71, 0xe9, 0x62, 0x6b, 0xd2, 0x63, 0xe3, 0x11, 0x81, 0xa6, 0x04, + 0xb5, 0x06, 0xa0, 0x3b, 0x43, 0x9a, 0x7f, 0xfe, 0x43, 0x55, 0x89, 0x24, 0x77, + 0xe2, 0xbd, 0xf3, 0x38, 0xc6, 0x2c, 0x39, 0x22, 0xf7, 0xd3, 0xc9, 0xa5, 0x6c, + 0x71, 0x03, 0xd9, 0x11, 0x94, 0x8a, 0x84, 0xb5, 0xae, 0x2d, 0xbb, 0x16, 0xa3, + 0x76, 0x1a, 0xdd, 0x05, 0x3a, 0x0f, 0x96, 0x7e, 0x6b, 0x5b, 0xc9, 0x42, 0x11, + 0xb6, 0x54, 0x71, 0x53, 0x26, 0x7c, 0x6e, 0xe1, 0xca, 0xd0, 0xd9, 0x74, 0xa7, + 0x10, 0x88, 0x58, 0x37, 0x35, 0xe4, 0xf6, 0x3d, 0x33, 0x15, 0x6d, 0xad, 0xd5, + 0x4c, 0x2f, 0xaf, 0x89, 0x11, 0x4a, 0x12, 0x7b, 0x97, 0xb9, 0x4c, 0xc2, 0xa2, + 0x2e, 0xf3, 0x03, 0xf4, 0x59, 0xd0, 0x4f, 0xc0, 0xb5, 0x3a, 0xce, 0x59, 0x18, + 0xd4, 0x7f, 0xf3, 0x3a, 0x55, 0x8b, 0xd7, 0x1a, 0x75, 0xf3, 0x55, 0xfb, 0xd0, + 0x6b, 0xbc, 0xcf, 0x4e, 0x02, 0xc3, 0xc0, 0xa4, 0xb6, 0x3d, 0x0c, 0xc9, 0x49, + 0x80, 0x1d, 0x63, 0xa6, 0x4c, 0xb2, 0xd3, 0x23, 0x73, 0xb2, 0xc7, 0xb2, 0x74, + 0xab, 0x2d, 0xb4, 0x68, 0x21, 0x42, 0xc8, 0xb2, 0x1d, 0x84, 0xc4, 0x81, 0xf5, + 0xef, 0x21, 0xe4, 0xb5, 0xe3, 0x60, 0x34, 0x51, 0xbf, 0x94, 0x77, 0x4d, 0x0e, + 0xf4, 0x7f, 0x63, 0xfa, 0x6a, 0xbb, 0x78, 0xd2, 0x1c, 0x19, 0x3c, 0xbe, 0x65, + 0xb6, 0x95, 0xfe, 0x67, 0x42, 0x3c, 0x1e, 0x2d, 0x31, 0x2e, 0x27, 0x76, 0xfa, + 0x24, 0xec, 0xe8, 0x46, 0x83, 0xe7, 0x48, 0x76, 0xc5, 0x5e, 0xa0, 0x36, 0x9e, + 0x4e, 0xa0, 0xe8, 0x64, 0x94, 0xe0, 0x0d, 0xde, 0x23, 0x6a, 0x16, 0x89, 0x73, + 0x1f, 0x0a, 0x5d, 0x82, 0x03, 0xaf, 0xde, 0x5c, 0x42, 0x36, 0x40, 0xb8, 0x1e, + 0x4f, 0x63, 0x1c, 0x98, 0x1c, 0x11, 0xa2, 0xe1, 0xd1, 0x84, 0xc6, 0x7c, 0x52, + 0x8d, 0xf9, 0x2d, 0x53, 0xae, 0xc4, 0x4a, 0x40, 0xa4, 0xea, 0x2a, 0x13, 0x1b, + 0x47, 0x33, 0xcf, 0xe4, 0x5c, 0x6b, 0x00, 0x12, 0xc3, 0xe9, 0xe2, 0x09, 0x75, + 0xba, 0xae, 0xcb, 0x02, 0x32, 0xdf, 0x88, 0x0b, 0xd7, 0xd1, 0xde, 0x13, 0xe1, + 0x34, 0x94, 0x62, 0xec, 0x8d, 0x5d, 0xf3, 0xe7, 0x80, 0xff, 0xa7, 0x2e, 0xba, + 0x8a, 0x8d, 0xf7, 0xfc, 0xf3, 0x98, 0xec, 0x23, 0x05, 0x13, 0xca, 0x9d, 0x61, + 0x23, 0xf8, 0xb9, 0xd8, 0x17, 0x85, 0x60, 0xda, 0xf9, 0x75, 0x11, 0x19, 0x55, + 0xa2, 0xbc, 0xa3, 0x42, 0x3e, 0xee, 0xfc, 0x52, 0x7b, 0xe3, 0xa8, 0x54, 0x3e, + 0xb9, 0x0a, 0x5e, 0xc0, 0x2f, 0x35, 0xa7, 0xc6, 0x4b, 0x7d, 0xd5, 0x9a, 0x72, + 0xda, 0x00, 0x74, 0x63, 0x4e, 0x01, 0xd2, 0xab, 0xa5, 0x69, 0x84, 0xb5, 0x94, + 0x23, 0x39, 0x7e, 0x9f, 0xdb, 0x36, 0x20, 0x86, 0xc1, 0x12, 0x9f, 0xd1, 0x40, + 0xd5, 0x60, 0x44, 0x23, 0x3e, 0x80, 0x74, 0x0c, 0x22, 0x73, 0x38, 0x0e, 0xcd, + 0xaa, 0xf1, 0x09, 0x46, 0x2a, 0x22, 0x83, 0x08, 0x75, 0x64, 0xc7, 0xcf, 0x7b, + 0x2a, 0x97, 0xca, 0x80, 0x90, 0xa7, 0x53, 0xa7, 0x6b, 0x87, 0xe0, 0x09, 0x12, + 0x1e, 0x06, 0xf6, 0xa1, 0xbf, 0x62, 0x20, 0xbe, 0xee, 0xd9, 0x33, 0x4a, 0xd2, + 0xbc, 0xa1, 0xd1, 0xdb, 0xdf, 0x99, 0xc2, 0x9f, 0xe0, 0x14, 0x26, 0xcb, 0x77, + 0x2b, 0x88, 0xe2, 0xe5, 0xf5, 0x62, 0x5a, 0x17, 0x65, 0xa1, 0xf9, 0xba, 0x2d, + 0xad, 0x41, 0x5b, 0x24, 0x70, 0x7a, 0x05, 0x25, 0x00, 0x8b, 0x54, 0xcd, 0x4e, + 0xd8, 0x15, 0x7a, 0xb4, 0x34, 0x19, 0xc6, 0xb0, 0x82, 0xe8, 0x35, 0xce, 0x84, + 0xca, 0x13, 0xb6, 0x90, 0x8a, 0x08, 0xa7, 0x14, 0x1f, 0x51, 0x46, 0x30, 0x24, + 0x1c, 0x1e, 0x85, 0xb8, 0x3e, 0x3e, 0x35, 0xfa, 0x0c, 0xfa, 0x36, 0xeb, 0x4e, + 0x7f, 0x72, 0x0b, 0xb0, 0x7d, 0x38, 0x12, 0x58, 0x3b, 0x35, 0x77, 0x22, 0x6b, + 0xee, 0xbb, 0xdb, 0xd1, 0xd4, 0x92, 0x99, 0xa5, 0x5b, 0xd4, 0x99, 0x27, 0xe9, + 0xd7, 0xf4, 0x88, 0x4e, 0x6e, 0xd3, 0xfd, 0x5e, 0x4b, 0x7c, 0xb8, 0x35, 0xb8, + 0x33, 0x08, 0x96, 0x4e, 0x3c, 0x46, 0x87, 0x3f, 0xd6, 0x13, 0x31, 0x7b, 0x91, + 0xd2, 0x92, 0x36, 0xea, 0x90, 0xe3, 0x65, 0xd1, 0x62, 0xcc, 0x05, 0x1c, 0x84, + 0x6d, 0x24, 0x21, 0x76, 0xda, 0xf6, 0xd2, 0x86, 0x18, 0xae, 0x31, 0xfb, 0xaa, + 0xe9, 0x99, 0xa9, 0x3f, 0x17, 0x5c, 0x69, 0x38, 0xe6, 0x31, 0xa0, 0x81, 0xf2, + 0xc1, 0xf3, 0xfd, 0x78, 0x25, 0x49, 0xd3, 0xf3, 0x24, 0x57, 0x59, 0x60, 0x6d, + 0x9f, 0x92, 0xd5, 0x54, 0x8a, 0xcf, 0xea, 0xdb, 0xaf, 0x9c, 0xaa, 0x6b, 0x93, + 0xdc, 0x08, 0x82, 0x8d, 0x74, 0xf6, 0xd5, 0xfd, 0xd8, 0x33, 0x31, 0xf0, 0x96, + 0x91, 0x45, 0x95, 0x52, 0x97, 0xe6, 0x9f, 0x00, 0xfd, 0x29, 0x87, 0xf2, 0xda, + 0x2b, 0x94, 0xb9, 0x95, 0xfe, 0xcb, 0xe6, 0x22, 0xa7, 0x35, 0xef, 0x7f, 0x12, + 0x07, 0xf6, 0x71, 0x62, 0x94, 0x89, 0x20, 0x2b, 0xea, 0x0b, 0x47, 0x5e, 0x51, + 0x68, 0x1a, 0xa1, 0x67, 0x78, 0xb3, 0x9b, 0xd9, 0x23, 0xc9, 0x8d, 0xc6, 0xff, + 0x83, 0x73, 0xc7, 0x9b, 0xb1, 0x70, 0x30, 0x41, 0x7b, 0xc2, 0x00, 0xc8, 0xf0, + 0xb8, 0x55, 0xac, 0xfe, 0xc1, 0x79, 0xf7, 0x67, 0x4c, 0xec, 0x27, 0x21, 0xa1, + 0x0f, 0xca, 0x69, 0x3d, 0x83, 0xcf, 0xe5, 0xb8, 0xcd, 0xcc, 0x18, 0xf8, 0x1a, + 0xd6, 0x17, 0xfa, 0x26, 0xf0, 0xdf, 0xb8, 0x36, 0x55, 0xb8, 0xa2, 0x9a, 0x7f, + 0x83, 0x42, 0x32, 0x42, 0x5e, 0x8c, 0x47, 0x45, 0x88, 0xf1, 0x8d, 0xd3, 0x26, + 0xaa, 0x39, 0x6c, 0x3e, 0x47, 0x75, 0xe0, 0x02, 0x05, 0xfc, 0x9e, 0x45, 0xf7, + 0xb7, 0xd2, 0xe6, 0xd5, 0x5d, 0xcb, 0x90, 0xe2, 0x3f, 0xf6, 0xb5, 0x08, 0x45, + 0x9a, 0xa6, 0x99, 0xbf, 0xcb, 0xd5, 0x6f, 0x10, 0x99, 0x77, 0x64, 0xd0, 0x87, + 0x40, 0x89, 0x86, 0xe7, 0x3d, 0x6e, 0x28, 0x4f, 0xea, 0x9a, 0x23, 0xc3, 0x93, + 0x11, 0x78, 0x2f, 0x86, 0xca, 0xbf, 0xf9, 0x45, 0x5e, 0x4c, 0xf6, 0x99, 0xe5, + 0xf5, 0xd4, 0xbc, 0x0b, 0x39, 0x05, 0xa4, 0xe3, 0xbd, 0x01, 0xc5, 0x4d, 0xf8, + 0x64, 0x34, 0x43, 0xbe, 0x0f, 0x88, 0x90, 0x32, 0xea, 0x32, 0x5b, 0xf0, 0x71, + 0x07, 0xfd, 0x41, 0xd6, 0x73, 0xee, 0xba, 0xe6, 0xfa, 0x63, 0x7b, 0x70, 0xcc, + 0x0e, 0xd3, 0xf0, 0x09, 0x58, 0xdf, 0xb8, 0xdc, 0xf0, 0x0e, 0x85, 0xa1, 0xd0, + 0xa6, 0xa8, 0x90, 0x81, 0x40, 0xc2, 0xf4, 0x34, 0xc2, 0xe2, 0x60, 0xef, 0xb0, + 0xbc, 0xa2, 0x00, 0x35, 0x04, 0xc9, 0x99, 0x93, 0xa9, 0xe1, 0xc0, 0xff, 0x9c, + 0xef, 0xe6, 0xa6, 0x65, 0xd7, 0x91, 0x42, 0x86, 0x90, 0xe4, 0x7e, 0xf8, 0xc1, + 0x31, 0xa8, 0xe9, 0xbf, 0xb4, 0xc3, 0x08, 0x02, 0x35, 0x03, 0x2d, 0x73, 0x1b, + 0x0d, 0x38, 0x41, 0x22, 0x5f, 0x1c, 0x11, 0xe2, 0xc2, 0x8e, 0xe8, 0x4d, 0x35, + 0xf9, 0x22, 0x61, 0x00, 0x56, 0x59, 0x72, 0xeb, 0x26, 0x9d, 0x27, 0x8e, 0xf6, + 0x49, 0x79, 0xbf, 0x65, 0x15, 0xed, 0x4a, 0x68, 0x40, 0xb0, 0x88, 0x3a, 0x9e, + 0x6e, 0xf6, 0x4a, 0x0e, 0xfc, 0xae, 0x1c, 0xf2, 0x1d, 0xfe, 0x74, 0x85, 0x4e, + 0x84, 0xc2, 0x74, 0x9f, 0xac, 0x03, 0x82, 0x52, 0x75, 0xc9, 0xb6, 0x30, 0x21, + 0x84, 0xc7, 0x2d, 0xf4, 0xc4, 0xbb, 0x28, 0x62, 0xe4, 0xe8, 0xa7, 0xd9, 0xa4, + 0xa2, 0x82, 0x86, 0x6f, 0x9a, 0x7b, 0x2c, 0xfc, 0x9a, 0x56, 0x31, 0x3d, 0xa0, + 0xc4, 0x7a, 0x34, 0xb7, 0xb9, 0xcd, 0xa3, 0xac, 0xe8, 0x18, 0x5f, 0x07, 0xdf, + 0x36, 0xe4, 0x48, 0xa7, 0x6a, 0xa4, 0x77, 0xf2, 0x24, 0xd8, 0x7a, 0x07, 0x4f, + 0x43, 0xaf, 0x5d, 0x5f, 0x79, 0xb3, 0xab, 0x11, 0x28, 0xf0, 0x81, 0x91, 0x44, + 0x7f, 0xa6, 0x46, 0xbf, 0xdd, 0xe5, 0xb5, 0x1e, 0x23, 0x3c, 0xa6, 0x15, 0x5d, + 0x10, 0x15, 0x85, 0xbc, 0x2c, 0x40, 0x15, 0x8a, 0xc2, 0x10, 0x6e, 0x66, 0xa2, + 0x6e, 0x46, 0x42, 0x33, 0x70, 0x63, 0x68, 0x76, 0xb4, 0x34, 0xa7, 0x4f, 0x8c, + 0xe8, 0x06, 0x00, 0x50, 0xb0, 0x82, 0xa7, 0x9b, 0x61, 0xbb, 0x5d, 0x34, 0x4e, + 0xb5, 0xa1, 0x15, 0x83, 0x26, 0xce, 0xd9, 0xa9, 0xd9, 0xf5, 0x4f, 0xb2, 0xfe, + 0x8f, 0x9f, 0x05, 0xcd, 0x11, 0x1e, 0xe4, 0x6c, 0x47, 0x10, 0xf6, 0xf6, 0x3a, + 0x62, 0x69, 0x45, 0x57, 0xef, 0x1b, 0x12, 0xc8, 0x80, 0x06, 0xb6, 0x78, 0x72, + 0x50, 0x5f, 0x4e, 0x88, 0x3b, 0x58, 0x59, 0x07, 0x92, 0x9a, 0x2f, 0x3f, 0xdb, + 0x0d, 0x8f, 0x79, 0x14, 0xc4, 0x2d, 0xde, 0x2d, 0x20, 0x00, 0xf5, 0xae, 0x02, + 0xd4, 0x18, 0x21, 0xc8, 0xe1, 0xee, 0x01, 0x38, 0xeb, 0x01, 0xfd, 0xba, 0x48, + 0x53, 0x1b, 0x68, 0x02, 0x00, 0x14, 0x96, 0x80, 0x9f, 0xe4, 0xae, 0x9c, 0x9d, + 0xd3, 0xc3, 0xb2, 0x0f, 0x7a, 0x23, 0xc2, 0x42, 0xa0, 0x6b, 0xc4, 0x56, 0x2c, + 0x5f, 0x2f, 0x1b, 0x19, 0x54, 0x95, 0x00, 0x37, 0x2e, 0x7a, 0x15, 0x99, 0xa6, + 0xd6, 0xd7, 0x8b, 0x33, 0x15, 0x31, 0x30, 0xfb, 0x44, 0x8f, 0xb7, 0x9e, 0x8a, + 0x66, 0x9d, 0xb8, 0xa0, 0xf3, 0x5c, 0xdf, 0x9a, 0xe5, 0xd3, 0x2d, 0x73, 0x2f, + 0xc7, 0x94, 0x18, 0xe2, 0x3b, 0x45, 0x1d, 0xdc, 0x95, 0xa2, 0x2a, 0xba, 0xbb, + 0x05, 0x6e, 0xc6, 0xb5, 0xe8, 0xba, 0x4f, 0x52, 0x4d, 0xfa, 0xfe, 0x87, 0x52, + 0x62, 0xdd, 0x7b, 0xe4, 0x1c, 0xbb, 0xc6, 0x24, 0x20, 0xd4, 0xad, 0x6d, 0xf5, + 0xc9, 0xb7, 0x13, 0x60, 0x4f, 0x65, 0x60, 0x88, 0xa4, 0x48, 0x5e, 0x93, 0xbe, + 0x19, 0x07, 0xd2, 0x7a, 0xc6, 0xec, 0x3c, 0x57, 0x25, 0x9b, 0xd6, 0x98, 0x1d, + 0x42, 0xc1, 0xb7, 0x8a, 0x29, 0xad, 0x96, 0x85, 0xe6, 0x3c, 0x49, 0x4d, 0x41, + 0x29, 0x62, 0x3e, 0xa1, 0xa7, 0xff, 0xec, 0x85, 0xfa, 0x29, 0x41, 0x10, 0x73, + 0xed, 0xb2, 0x97, 0x8e, 0xf4, 0xe4, 0x69, 0xdd, 0xd5, 0xcd, 0xa9, 0x86, 0x18, + 0x99, 0x95, 0xf8, 0x8d, 0x6a, 0xb3, 0x66, 0xdb, 0x01, 0x90, 0x01, 0xf5, 0xb2, + 0x52, 0x88, 0xcf, 0x86, 0x0f, 0xd9, 0x98, 0xee, 0x57, 0xa6, 0xf9, 0xe3, 0xdc, + 0x39, 0x37, 0xb2, 0xe5, 0x43, 0x3a, 0x60, 0x7d, 0x5e, 0x70, 0x1a, 0x70, 0xdf, + 0xfb, 0x03, 0xd7, 0x2a, 0x8a, 0xb7, 0xf3, 0xde, 0x89, 0x03, 0xa1, 0x1c, 0x4b, + 0x3b, 0x97, 0x7b, 0xac, 0xb1, 0xf9, 0x0a, 0x83, 0x05, 0x98, 0xb9, 0x16, 0x66, + 0x96, 0x1b, 0x31, 0x8c, 0x20, 0xfa, 0x9c, 0x31, 0x79, 0xc1, 0xa3, 0xaa, 0x81, + 0xf7, 0x36, 0x16, 0x49, 0x57, 0x2c, 0x71, 0x1c, 0x84, 0x11, 0x88, 0x0c, 0xfc, + 0x30, 0x2e, 0x3c, 0xd6, 0xdf, 0x4d, 0x64, 0x1b, 0x60, 0x10, 0xf0, 0x7c, 0xfe, + 0x82, 0x1a, 0xa2, 0xdc, 0x9b, 0x59, 0x68, 0x03, 0xab, 0xfb, 0xc9, 0xde, 0x68, + 0x18, 0x50, 0xaa, 0xa6, 0xfc, 0x80, 0x9b, 0xdb, 0xe9, 0x04, 0x12, 0x0c, 0xf5, + 0x0f, 0x7d, 0xe3, 0xc8, 0xcf, 0xe3, 0xd9, 0x34, 0x9c, 0x8d, 0x15, 0x4b, 0xb7, + 0xee, 0x28, 0x21, 0x2c, 0x1b, 0xaa, 0x30, 0x4b, 0xb2, 0x88, 0x9a, 0x3a, 0x88, + 0xfb, 0x02, 0xda, 0xab, 0xaa, 0x45, 0x36, 0xbc, 0x7f, 0xff, 0xa5, 0xb2, 0x0c, + 0xd9, 0x22, 0x11, 0xe6, 0x5a, 0x22, 0x82, 0xdf, 0x56, 0x73, 0xdc, 0x78, 0x9c, + 0xa7, 0x0d, 0xb5, 0x27, 0xd3, 0xa0, 0x99, 0x2c, 0xff, 0x8d, 0xb7, 0x6b, 0x9a, + 0xfc, 0x98, 0x1d, 0x6b, 0xc2, 0x27, 0x27, 0x2a, 0x58, 0x53, 0x17, 0xdf, 0xf0, + 0xb1, 0x14, 0x8d, 0x92, 0xd6, 0x35, ], txid: [ - 0x39, 0x8d, 0xb1, 0x2e, 0x1b, 0x6e, 0x4c, 0xd2, 0xe6, 0xce, 0xee, 0x3c, 0x6e, - 0x02, 0x09, 0xbf, 0xa1, 0x09, 0x9f, 0x64, 0xec, 0x07, 0x69, 0x99, 0x77, 0xd4, - 0xfa, 0xf8, 0xb8, 0xa0, 0x5d, 0x56, + 0x1a, 0xad, 0x9f, 0xc4, 0xf4, 0x4c, 0xf8, 0xee, 0xf9, 0x25, 0xcd, 0x95, 0xf1, + 0xb3, 0x5d, 0x5c, 0xa2, 0xdf, 0xf5, 0x1f, 0x35, 0x5e, 0x50, 0x68, 0xba, 0x15, + 0xaf, 0xb1, 0x82, 0xa9, 0xe2, 0x8a, ], auth_digest: [ - 0xd3, 0x5f, 0xea, 0x1a, 0x83, 0x57, 0x72, 0x49, 0x39, 0x12, 0x47, 0x0b, 0x73, - 0x84, 0xb5, 0xdd, 0xc4, 0xe0, 0xa4, 0xda, 0x0e, 0xa7, 0x52, 0xc2, 0x56, 0xd9, - 0xcb, 0xab, 0x9f, 0x03, 0x00, 0xd0, + 0x94, 0xec, 0x67, 0xab, 0x82, 0xb4, 0xbb, 0x49, 0xaf, 0x51, 0x5b, 0xad, 0x85, + 0xc3, 0xd4, 0x44, 0x88, 0xa7, 0xa7, 0xd2, 0x6c, 0xa1, 0x7e, 0x7b, 0xb5, 0xf3, + 0x13, 0x11, 0x6c, 0xef, 0xc8, 0x81, ], - amounts: vec![], - script_pubkeys: vec![], - transparent_input: None, + amounts: vec![563911776620709, 524628216960972], + script_pubkeys: vec![ + vec![0x63, 0x63, 0x53, 0x6a, 0x00], + vec![0x53, 0x00, 0x52, 0x51, 0x00, 0x53, 0x53, 0x6a], + ], + transparent_input: Some(1), sighash_shielded: [ - 0x39, 0x8d, 0xb1, 0x2e, 0x1b, 0x6e, 0x4c, 0xd2, 0xe6, 0xce, 0xee, 0x3c, 0x6e, - 0x02, 0x09, 0xbf, 0xa1, 0x09, 0x9f, 0x64, 0xec, 0x07, 0x69, 0x99, 0x77, 0xd4, - 0xfa, 0xf8, 0xb8, 0xa0, 0x5d, 0x56, + 0x61, 0x30, 0x55, 0x0a, 0x76, 0x44, 0x09, 0x61, 0xd9, 0x5f, 0x10, 0xa3, 0xfc, + 0x97, 0xcd, 0xdf, 0xe2, 0xdb, 0xe2, 0xa5, 0x75, 0xb5, 0x98, 0x38, 0x02, 0x3c, + 0xf1, 0x29, 0x9c, 0xac, 0x3c, 0xe3, ], - sighash_all: None, - sighash_none: None, - sighash_single: None, - sighash_all_anyone: None, - sighash_none_anyone: None, - sighash_single_anyone: None, + sighash_all: Some([ + 0xb6, 0xbe, 0x5c, 0x0b, 0xd3, 0xe0, 0x9b, 0x9e, 0x9c, 0x6c, 0xe4, 0xa2, 0x78, + 0x4f, 0xe1, 0x38, 0xc9, 0xf4, 0x3d, 0x55, 0xd5, 0xb0, 0x3b, 0xf8, 0x43, 0x80, + 0x3d, 0x57, 0x20, 0xc6, 0xc0, 0x55, + ]), + sighash_none: Some([ + 0xb1, 0x2f, 0x9d, 0xa8, 0xd4, 0xe1, 0x84, 0xd3, 0x6d, 0xe2, 0x93, 0xfc, 0x9c, + 0xaa, 0x77, 0xf6, 0x5c, 0xb0, 0xb5, 0x43, 0x79, 0x50, 0x16, 0x2d, 0x56, 0xa7, + 0xa2, 0xd1, 0x0c, 0x04, 0x0c, 0x4a, + ]), + sighash_single: Some([ + 0x63, 0x10, 0xda, 0x0c, 0xc2, 0xc2, 0xc4, 0xb5, 0xf7, 0x72, 0x46, 0x52, 0x06, + 0x12, 0x25, 0x16, 0x94, 0x5f, 0xba, 0xc0, 0x27, 0xd0, 0xde, 0x9a, 0xbd, 0xb3, + 0xe3, 0x56, 0xf2, 0x02, 0xda, 0x56, + ]), + sighash_all_anyone: Some([ + 0x08, 0x4d, 0x14, 0x63, 0x12, 0xe7, 0xe2, 0x1a, 0x42, 0x5c, 0xbd, 0x47, 0xb6, + 0xc2, 0x8f, 0xe5, 0x90, 0xf1, 0xd1, 0x07, 0x49, 0xe2, 0x25, 0x59, 0x60, 0xea, + 0x69, 0xbf, 0xf4, 0x25, 0xa0, 0x81, + ]), + sighash_none_anyone: Some([ + 0x24, 0x7c, 0xee, 0x23, 0xf4, 0x84, 0x89, 0x05, 0xb0, 0x36, 0xfd, 0x5b, 0xa0, + 0x34, 0x7e, 0xc5, 0x33, 0x0c, 0x5a, 0xca, 0xf0, 0xa2, 0x71, 0x71, 0xfa, 0xce, + 0xff, 0x6e, 0x9b, 0x17, 0xfb, 0xaa, + ]), + sighash_single_anyone: Some([ + 0xf4, 0x8f, 0xd1, 0x35, 0x47, 0x75, 0xbb, 0x0f, 0x80, 0x9c, 0xf3, 0xf1, 0xd9, + 0xa1, 0x4c, 0xfe, 0xf9, 0x86, 0x5e, 0xd9, 0x90, 0xe0, 0xa7, 0xf1, 0xa0, 0x11, + 0xfc, 0x10, 0xc0, 0x8e, 0x29, 0xe0, + ]), }, TestVector { tx: vec![ - 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x67, - 0x57, 0x64, 0x3f, 0xc0, 0x72, 0xca, 0x10, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xff, 0xff, 0xff, 0xff, 0x06, 0x04, 0xc0, 0x72, 0xca, 0x10, 0x00, 0xff, - 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, + 0x05, 0x00, 0x00, 0x80, 0x0a, 0x27, 0xa7, 0x26, 0xb4, 0xd0, 0xd6, 0xc2, 0x72, + 0x09, 0x62, 0x34, 0xae, 0x11, 0xf0, 0x17, 0x00, 0x00, 0x02, 0x39, 0x17, 0x2d, + 0x51, 0x94, 0x1a, 0x45, 0x44, 0x39, 0x13, 0xfd, 0xc1, 0x61, 0x65, 0x2a, 0xc8, + 0xd5, 0xa2, 0x57, 0xc9, 0x77, 0xdd, 0xd8, 0x7c, 0xd3, 0xfc, 0x1b, 0xed, 0xa2, + 0x3a, 0x40, 0xbb, 0xa7, 0x84, 0x2b, 0x3e, 0x90, 0x30, 0x53, 0x83, 0x89, 0x6e, + 0xc4, 0x90, 0x5f, 0x70, 0xc7, 0x8b, 0x69, 0x4e, 0x6a, 0x5a, 0x3e, 0x43, 0x12, + 0xcd, 0x82, 0x08, 0x13, 0x2b, 0x84, 0x0f, 0x05, 0xc7, 0x14, 0x52, 0x3c, 0xa8, + 0x19, 0x72, 0x0a, 0xe2, 0x27, 0xfd, 0x1a, 0xcb, 0xa7, 0x14, 0xfa, 0x4f, 0xc4, + 0x5f, 0xc5, 0x39, 0x88, 0x57, 0xb4, 0x0d, 0xc1, 0x48, 0x79, 0x85, 0x6f, 0x35, + 0x4b, 0xa4, 0xb2, 0xa9, 0x54, 0x72, 0xf1, 0x5d, 0xd3, 0x4f, 0xf6, 0x59, 0xb6, + 0x46, 0xa2, 0xc8, 0x4d, 0x9e, 0xb8, 0x4f, 0x57, 0xfb, 0x1e, 0xdf, 0xbf, 0x63, + 0xfe, 0x6d, 0xf0, 0x59, 0x3b, 0x51, 0x7a, 0x56, 0x31, 0x62, 0x2d, 0x0f, 0x0f, + 0x87, 0xa8, 0x55, 0xba, 0x54, 0x00, 0x03, 0x32, 0x03, 0x1f, 0x73, 0xab, 0xff, + 0xd4, 0x65, 0x91, 0xda, 0x0b, 0x88, 0x72, 0x35, 0x04, 0xed, 0xb2, 0x33, 0x72, + 0x30, 0xda, 0xd2, 0xac, 0xc0, 0xd8, 0xbb, 0x68, 0xbc, 0x83, 0x7a, 0x2f, 0xf9, + 0x30, 0xbf, 0xf0, 0x6f, 0xde, 0x74, 0xeb, 0x90, 0xaa, 0xe4, 0xf6, 0x0d, 0xbb, + 0x6e, 0xb8, 0x27, 0xea, 0x99, 0x88, 0x4a, 0x00, 0x5b, 0xc5, 0xcf, 0x08, 0xa9, + 0x17, 0x07, 0x00, 0x90, 0xff, 0x73, 0x55, 0x09, 0x3b, 0xbf, 0x06, 0x17, 0x3e, + 0x7f, 0x11, 0xfa, 0x83, 0xb3, 0xfb, 0xaf, 0x8d, 0x28, 0x07, 0x0a, 0xe0, 0x13, + 0x4b, 0x89, 0xbf, 0xb3, 0x6c, 0x00, 0xdd, 0xed, 0x08, 0xd2, 0x58, 0x1d, 0x0c, + 0xda, 0x54, 0xb6, 0x38, 0xba, 0x9d, 0x76, 0xf9, 0xb5, 0x2d, 0x17, 0xc8, 0xf8, + 0x8e, 0xe6, 0x3f, 0x58, 0x45, 0xb5, 0xdc, 0xef, 0xa4, 0xc3, 0x47, 0x9b, 0xce, + 0x9a, 0xca, 0xd1, 0x8b, 0x4a, 0xea, 0xe0, 0x3c, 0x0e, 0xae, 0x22, 0x5d, 0x42, + 0x84, 0x8b, 0xde, 0xaa, 0x53, 0x6d, 0x7d, 0x8d, 0xd3, 0xbc, 0x97, 0x9f, 0x06, + 0x58, 0x66, 0x73, 0xbc, 0x6f, 0xf1, 0xc5, 0xd3, 0xb3, 0x20, 0xf3, 0x49, 0xa5, + 0xb3, 0xa8, 0xb3, 0x55, 0x59, 0x22, 0x96, 0xaa, 0xf6, 0x1c, 0x5b, 0x72, 0x52, + 0xf7, 0x3e, 0xc0, 0xa9, 0x46, 0x6a, 0x1b, 0x85, 0x76, 0x4f, 0xb0, 0x83, 0x1b, + 0x4a, 0x1a, 0x36, 0x89, 0x0e, 0x22, 0x4c, 0x01, 0xac, 0xfc, 0xe4, 0x8e, 0xe3, + 0xed, 0x93, 0x87, 0x73, 0x98, 0xe0, 0x72, 0x6d, 0x02, 0x93, 0x6d, 0x0d, 0x03, + 0x2e, 0x18, 0xe3, 0x28, 0x8b, 0x26, 0x70, 0xe1, 0x36, 0x2c, 0x32, 0xd6, 0xe4, + 0x73, 0x3b, 0x9d, 0xd2, 0xd5, 0xf2, 0x6e, 0x1f, 0xe3, 0x06, 0xf7, 0x3c, 0x00, + 0x7f, 0xdd, 0xca, 0xe9, 0xd9, 0xc0, 0xaa, 0xf1, 0x87, 0xd7, 0x42, 0x8b, 0x1e, + 0x9d, 0x47, 0x9c, 0x18, 0x23, 0x7b, 0x98, 0x28, 0xbc, 0xa8, 0xb9, 0x8c, 0x9d, + 0x9b, 0xec, 0x7d, 0x82, 0x70, 0xb5, 0xd8, 0xee, 0xc3, 0xcc, 0x4f, 0x43, 0xfa, + 0x01, 0x88, 0x52, 0x1b, 0xc6, 0x1b, 0xcd, 0x62, 0x85, 0xa9, 0x88, 0x92, 0x80, + 0x2c, 0xf5, 0x9d, 0x5d, 0x60, 0xd0, 0x16, 0x63, 0x38, 0x7b, 0x3e, 0xd2, 0x72, + 0x3b, 0xd6, 0x48, 0x9e, 0x9c, 0x2c, 0x10, 0x6d, 0x4a, 0xa2, 0xde, 0x23, 0xce, + 0xd1, 0x6c, 0x72, 0x04, 0x29, 0xc7, 0x75, 0x3a, 0x77, 0x38, 0xec, 0x7d, 0x9d, + 0xb8, 0x62, 0x42, 0x29, 0xed, 0xd2, 0x17, 0xb8, 0x0d, 0x74, 0x87, 0x5a, 0x14, + 0xca, 0xe4, 0x86, 0x3f, 0x13, 0x9e, 0x9c, 0x0b, 0x13, 0x1b, 0x2a, 0x4c, 0x28, + 0x07, 0x1a, 0x38, 0xec, 0x61, 0xf6, 0x68, 0x01, 0xaa, 0x59, 0x56, 0xfc, 0xb2, + 0xa4, 0x6b, 0x95, 0x87, 0x66, 0x5b, 0x75, 0x71, 0xaa, 0x03, 0x48, 0x1f, 0xd8, + 0xd9, 0xd5, 0x69, 0x8f, 0x83, 0x6f, 0xc8, 0x63, 0x5e, 0x69, 0xe3, 0xbd, 0xe4, + 0x2f, 0x4a, 0xc0, 0x71, 0x32, 0x8b, 0x54, 0x09, 0xf6, 0xe4, 0x2d, 0x79, 0x0a, + 0xed, 0xd7, 0x3b, 0xc1, 0xa2, 0x35, 0x47, 0x23, 0xb3, 0xb8, 0x19, 0xd0, 0x63, + 0x7a, 0x6f, 0xa4, 0x66, 0x39, 0x46, 0xa3, 0x0a, 0xc5, 0xaf, 0xdd, 0x30, 0xce, + 0x83, 0x0f, 0x67, 0x91, 0xb4, 0x57, 0x52, 0x70, 0xa1, 0x72, 0x0f, 0x91, 0x86, + 0x6e, 0x2b, 0x86, 0xf4, 0x78, 0x88, 0x94, 0xc8, 0xda, 0x62, 0xd8, 0xb9, 0x1f, + 0xaf, 0x52, 0x0e, 0x3b, 0xed, 0xbc, 0x12, 0x06, 0xa5, 0xa5, 0xe6, 0xef, 0xd3, + 0xdf, 0xde, 0x08, 0x13, 0x25, 0x0f, 0x1c, 0xf7, 0xfe, 0x55, 0x24, 0x45, 0xc5, + 0x06, 0x5d, 0xd8, 0x71, 0x3c, 0x25, 0xbc, 0x2d, 0xf8, 0x85, 0x33, 0x56, 0x9d, + 0x68, 0xd9, 0xa8, 0xf5, 0xf5, 0x84, 0xb8, 0xe4, 0x80, 0x0a, 0xbb, 0xb7, 0x60, + 0x3c, 0x56, 0x7c, 0xec, 0xb0, 0x96, 0x59, 0x12, 0xb2, 0x2a, 0x49, 0xec, 0x21, + 0x20, 0xce, 0x77, 0xad, 0xd1, 0xa6, 0x67, 0x0a, 0x29, 0x82, 0x50, 0xf4, 0x6b, + 0x97, 0x09, 0x36, 0xeb, 0x7d, 0xcd, 0x42, 0x63, 0x4d, 0xae, 0x71, 0x90, 0xce, + 0x6e, 0xe7, 0x99, 0x66, 0x4d, 0xfb, 0x9f, 0x16, 0x3c, 0xdb, 0x96, 0x74, 0x0e, + 0x04, 0xc0, 0xb4, 0x41, 0x8f, 0x80, 0x0a, 0xf2, 0xc0, 0x25, 0x4a, 0x0b, 0xf4, + 0xa2, 0x84, 0x09, 0x57, 0x18, 0xc0, 0xfd, 0x9d, 0x15, 0x83, 0x91, 0x5c, 0x22, + 0x13, 0x1a, 0xae, 0x59, 0x50, 0x4e, 0xa0, 0x6d, 0xbc, 0x01, 0x34, 0x85, 0x72, + 0x08, 0x39, 0xf2, 0xdc, 0x41, 0x38, 0x8e, 0xbb, 0x27, 0xc2, 0xe3, 0xd9, 0xd7, + 0x1f, 0xa4, 0x0e, 0xea, 0xc5, 0x32, 0x37, 0xf8, 0x3e, 0xdb, 0xf9, 0xf9, 0x1a, + 0xb2, 0xd1, 0x7d, 0xd1, 0x76, 0x3a, 0xef, 0x6b, 0xa7, 0x34, 0x41, 0x3d, 0x69, + 0x72, 0xcd, 0x8a, 0xee, 0xdc, 0x83, 0xf8, 0xf0, 0xfb, 0x49, 0xd6, 0xaf, 0xbb, + 0xb3, 0x38, 0x44, 0x22, 0x7b, 0xeb, 0x56, 0x16, 0x43, 0xe8, 0x1d, 0x2c, 0x08, + 0x03, 0xc3, 0x27, 0xf2, 0x41, 0x18, 0x0d, 0xe4, 0x18, 0xdf, 0x3b, 0x6a, 0xd8, + 0x85, 0x14, 0xf9, 0x5b, 0xaa, 0xaa, 0xbe, 0x6a, 0x00, 0xe0, 0x52, 0x9b, 0x88, + 0xfc, 0xf4, 0xfc, 0x30, 0x41, 0xa6, 0x0d, 0x16, 0x09, 0xf6, 0x3a, 0xf3, 0x76, + 0xd5, 0xcc, 0x24, 0xbd, 0x0b, 0xc1, 0x5f, 0x29, 0x9c, 0x05, 0x9b, 0x07, 0xad, + 0xdf, 0x14, 0x6f, 0x4f, 0xfa, 0x50, 0x1f, 0x9d, 0xd3, 0xcf, 0xf9, 0x24, 0x23, + 0x19, 0x78, 0x8c, 0x11, 0xc7, 0x8b, 0x0b, 0x85, 0xf1, 0xd7, 0x01, 0x9b, 0xc0, + 0xa8, 0x51, 0xd4, 0xdb, 0xf2, 0xf1, 0xb3, 0xa2, 0xa2, 0x69, 0xec, 0x71, 0xca, + 0xcd, 0x67, 0xfe, 0xc9, 0xd2, 0x25, 0x6e, 0x92, 0x19, 0x07, 0xa1, 0xb7, 0xb3, + 0x75, 0x12, 0x13, 0x24, 0x1b, 0x2c, 0xfa, 0xa5, 0x5a, 0x5e, 0xa4, 0xdd, 0x51, + 0x7e, 0x7b, 0x49, 0xd2, 0xde, 0x8c, 0x09, 0x08, 0x43, 0x73, 0x0d, 0x24, 0xba, + 0x0d, 0x3e, 0xbc, 0xf4, 0xae, 0x8d, 0xa9, 0x11, 0x92, 0x0a, 0x6d, 0xfb, 0x29, + 0xa8, 0x49, 0x34, 0x15, 0xfa, 0x20, 0xc8, 0x08, 0x04, 0x29, 0x1e, 0xc2, 0x30, + 0xbf, 0x8d, 0x9e, 0x10, 0x31, 0x39, 0xa9, 0x4e, 0xa8, 0xb9, 0x75, 0xc0, 0x65, + 0xa9, 0x1f, 0xf2, 0x57, 0xca, 0xc7, 0xa9, 0x23, 0x85, 0xfc, 0x8f, 0xa9, 0x21, + 0xb1, 0x06, 0xba, 0x86, 0x60, 0xc6, 0x0a, 0xc8, 0xba, 0x5e, 0xce, 0x45, 0x60, + 0x6f, 0x04, 0xf3, 0x6a, 0x3a, 0x90, 0xbb, 0x38, 0x38, 0xc4, 0x2a, 0xbf, 0x62, + 0xdd, 0x2d, 0x84, 0xba, 0xbe, 0xf3, 0xe1, 0x88, 0xe9, 0x17, 0x1a, 0xff, 0x9b, + 0xc1, 0x16, 0x66, 0x90, 0x09, 0xd8, 0x87, 0x13, 0x0a, 0xc9, 0xf7, 0x39, 0x6a, + 0x62, 0x7a, 0x84, 0x74, 0xc1, 0x81, 0x1b, 0x69, 0x6f, 0x99, 0x55, 0x2b, 0x14, + 0xc4, 0x84, 0xdf, 0xe4, 0x2c, 0x24, 0xd5, 0x7c, 0x3a, 0x9c, 0x3f, 0xea, 0x13, + 0x76, 0xcd, 0xcb, 0x63, 0x42, 0x1c, 0x31, 0x4a, 0x62, 0x2a, 0x9a, 0xef, 0x0b, + 0xc0, 0x57, 0xcb, 0x11, 0xbc, 0x5e, 0x30, 0x66, 0xe3, 0x3a, 0x3b, 0x9b, 0x31, + 0xdf, 0x25, 0x75, 0xcd, 0x51, 0x85, 0xa4, 0xf3, 0xfc, 0x4e, 0x4c, 0x3d, 0x40, + 0x2e, 0xd4, 0x20, 0x46, 0xf8, 0x1f, 0x97, 0x48, 0x16, 0xd2, 0x79, 0xb1, 0x51, + 0x3a, 0xb8, 0x1d, 0x3f, 0x0a, 0x3c, 0x7f, 0x7f, 0xcf, 0x2f, 0xbb, 0x4e, 0x26, + 0x32, 0x19, 0x93, 0xa5, 0x13, 0xad, 0x3d, 0x7f, 0x4a, 0xfe, 0x6c, 0x1b, 0xbd, + 0xc6, 0x57, 0x58, 0x50, 0x80, 0xbb, 0x5a, 0x0f, 0x25, 0x97, 0x3d, 0x63, 0xeb, + 0x20, 0xad, 0xa0, 0x16, 0x6b, 0xbd, 0x8a, 0x39, 0xff, 0x93, 0x24, 0x6f, 0x27, + 0x89, 0x73, 0x2a, 0xd0, 0x55, 0x87, 0xf8, 0xdb, 0x7b, 0xc8, 0x7c, 0x24, 0x2c, + 0xfd, 0x36, 0xce, 0x68, 0x5a, 0x4b, 0x65, 0x69, 0x86, 0xc3, 0x9f, 0xd7, 0xfc, + 0xb2, 0x3c, 0x91, 0x91, 0x3e, 0x46, 0x11, 0x19, 0x1e, 0xdc, 0xc8, 0x8b, 0x78, + 0xf1, 0x45, 0xea, 0x29, 0xd2, 0x71, 0xb9, 0x40, 0xc6, 0x99, 0x41, 0xe4, 0xc3, + 0xfd, 0x2d, 0x71, 0xf3, 0xb1, 0x90, 0x69, 0x0e, 0xe1, 0x6f, 0x5d, 0x14, 0xac, + 0x22, 0x24, 0xe6, 0xfc, 0x89, 0x59, 0x76, 0x54, 0x52, 0x7d, 0xab, 0xe7, 0x2e, + 0x75, 0xd2, 0xd2, 0xa1, 0x3a, 0x9f, 0xba, 0xa6, 0x37, 0x8e, 0x8a, 0x26, 0x43, + 0x21, 0x08, 0x7a, 0x19, 0x00, 0xef, 0xe3, 0xca, 0xd1, 0x4a, 0x57, 0x96, 0x86, + 0xaa, 0x36, 0x36, 0xbd, 0x37, 0x5b, 0xd3, 0x13, 0x6b, 0xee, 0x0b, 0xda, 0xab, + 0xcf, 0xac, 0x88, 0x1b, 0xc7, 0x01, 0x81, 0x27, 0x21, 0xe6, 0xfb, 0x75, 0xaa, + 0x07, 0x2d, 0x2d, 0x18, 0x7e, 0x62, 0x25, 0x8d, 0x65, 0xa1, 0x92, 0x15, 0x7c, + 0xdf, 0x2e, 0xc3, 0x21, 0x40, 0x7f, 0x68, 0x2f, 0x5e, 0xec, 0x6a, 0x32, 0x97, + 0xab, 0x20, 0xb7, 0x06, 0x1c, 0x62, 0x24, 0x57, 0x16, 0xa4, 0x4f, 0x71, 0xfb, + 0xfc, 0x34, 0xc7, 0x9b, 0x44, 0xe0, 0x9e, 0x42, 0x12, 0xac, 0x26, 0x53, 0xf6, + 0xc4, 0x03, 0x64, 0x3e, 0x1c, 0x5b, 0x9a, 0xd1, 0x34, 0xd8, 0x9c, 0x68, 0x0b, + 0x70, 0x72, 0x83, 0xaf, 0x54, 0x32, 0x6f, 0xc4, 0xf8, 0x4d, 0x6a, 0x58, 0x29, + 0xa0, 0xad, 0x48, 0x30, 0x80, 0x6c, 0x05, 0x75, 0x84, 0x92, 0xcd, 0x6a, 0xc4, + 0x6b, 0xa0, 0x1a, 0x2b, 0x37, 0x22, 0xb5, 0xe4, 0xcd, 0xaf, 0xbb, 0x3f, 0x36, + 0x78, 0x5f, 0x42, 0x4a, 0xf0, 0x44, 0xda, 0xc5, 0xdb, 0x5f, 0x7d, 0xf8, 0x39, + 0xeb, 0x63, 0xc0, 0xc1, 0x7d, 0x8b, 0x0c, 0x79, 0xdb, 0x86, 0x30, 0x94, 0x20, + 0x15, 0xbe, 0x13, 0xf7, 0x9a, 0xf6, 0xf4, 0x3e, 0x5a, 0xb0, 0x77, 0x81, 0x14, + 0x79, 0x8f, 0x44, 0x22, 0x58, 0xee, 0xdc, 0x43, 0x6f, 0xcc, 0x38, 0x6b, 0x36, + 0xb5, 0x7e, 0x19, 0x17, 0xd7, 0x20, 0x17, 0x73, 0x66, 0xf4, 0x24, 0xb0, 0xa5, + 0x4b, 0x0b, 0x60, 0xf4, 0xfb, 0x13, 0x58, 0xc2, 0x0a, 0xa4, 0x1d, 0xc5, 0x02, + 0xe1, 0xdd, 0x8a, 0x16, 0x33, 0xf3, 0xd8, 0xe3, 0x27, 0x6b, 0x59, 0xe7, 0xd2, + 0xc4, 0xe6, 0x24, 0xa6, 0xf5, 0x36, 0x95, 0xbc, 0xaf, 0x24, 0x7e, 0x36, 0x48, + 0x3f, 0x13, 0xb2, 0x04, 0x42, 0x22, 0x37, 0xfc, 0x6a, 0xb3, 0xeb, 0xa0, 0x2f, + 0xc4, 0x14, 0x2b, 0x42, 0x97, 0xeb, 0xb5, 0x68, 0x3d, 0xb8, 0xd2, 0x43, 0x19, + 0x70, 0x6a, 0xd2, 0x6a, 0xaf, 0xd8, 0x1c, 0x53, 0xb7, 0x40, 0xf3, 0x45, 0x43, + 0xa6, 0xb3, 0xe9, 0xf5, 0xbb, 0x7d, 0x5c, 0x49, 0xe8, 0xc3, 0x7f, 0x61, 0x49, + 0x21, 0x25, 0x4f, 0x32, 0x12, 0x39, 0x4c, 0x79, 0x7d, 0x1c, 0xee, 0x78, 0x99, + 0xb7, 0xb4, 0xb6, 0x5b, 0x59, 0xb7, 0x34, 0x2f, 0x92, 0x53, 0x1c, 0x1d, 0x59, + 0xe1, 0x79, 0x70, 0xb7, 0x31, 0x74, 0x14, 0x43, 0x8c, 0xd8, 0x0b, 0xd0, 0xf9, + 0xa6, 0x7c, 0x9b, 0x9e, 0x55, 0x2f, 0x01, 0x3c, 0x11, 0x5a, 0x95, 0x4f, 0x35, + 0xe0, 0x61, 0x6c, 0x68, 0xd4, 0x31, 0x63, 0xd3, 0x34, 0xda, 0xc3, 0x82, 0x70, + 0x33, 0xe5, 0x4f, 0x72, 0x70, 0xc7, 0xcb, 0xb1, 0x1c, 0x0b, 0x65, 0xe3, 0x85, + 0xc9, 0x49, 0x05, 0x60, 0x67, 0xa0, 0xd2, 0x22, 0xd0, 0x2a, 0x48, 0x4b, 0xf8, + 0xa4, 0x19, 0x1d, 0xfb, 0x0f, 0x5e, 0xbe, 0x89, 0xae, 0xff, 0x7c, 0xb0, 0x5f, + 0x31, 0x5c, 0x58, 0xaa, 0x68, 0x96, 0xd5, 0x81, 0x17, 0x1d, 0xc4, 0x0d, 0x94, + 0xab, 0xde, 0x68, 0x89, 0x8c, 0x33, 0x92, 0xa2, 0x17, 0xd6, 0x49, 0x61, 0x6b, + 0x3e, 0xbc, 0x44, 0xd1, 0x6c, 0xba, 0x6a, 0x0f, 0xed, 0x4b, 0xb0, 0xf6, 0x49, + 0x91, 0xc2, 0xc3, 0xe8, 0xed, 0xc0, 0x1b, 0x7a, 0x47, 0xf6, 0x5e, 0x72, 0xf3, + 0x9b, 0xab, 0xf5, 0xa1, 0x7c, 0xd6, 0xad, 0xfc, 0x8d, 0x1e, 0x5c, 0xf5, 0x9f, + 0xb1, 0xe6, 0xde, 0x97, 0x51, 0x06, 0xb2, 0x6b, 0xdb, 0x39, 0x24, 0xad, 0xc0, + 0xb1, 0x13, 0x5c, 0x70, 0xc9, 0x70, 0xe0, 0x90, 0x3a, 0xf6, 0xe1, 0x70, 0x01, + 0x9e, 0xea, 0xd1, 0xf2, 0x75, 0xec, 0x3b, 0x31, 0x43, 0xe4, 0xa5, 0x8e, 0x5e, + 0x72, 0x0e, 0xe2, 0xab, 0x68, 0xca, 0x25, 0x63, 0x86, 0x41, 0xc0, 0xe1, 0xac, + 0xd5, 0x48, 0x91, 0xcb, 0xf2, 0x03, 0x62, 0xa7, 0x77, 0xd1, 0x75, 0x00, 0x2a, + 0x13, 0x7d, 0xe8, 0x5b, 0x88, 0x88, 0x92, 0x91, 0x98, 0x11, 0x7a, 0xa5, 0xd6, + 0x19, 0x93, 0xe1, 0xdc, 0xf7, 0x58, 0x76, 0xdc, 0xa6, 0x09, 0xf9, 0xd2, 0x84, + 0x71, 0xf9, 0x97, 0xfa, 0x11, 0xf9, 0x9d, 0x42, 0x3f, 0x9c, 0xf1, 0x73, 0x4b, + 0xe8, 0xa5, 0xff, 0x99, 0x7d, 0x45, 0x1e, 0xb3, 0xcf, 0x4b, 0x3d, 0xfd, 0xd9, + 0xd4, 0x54, 0x5c, 0x35, 0xb2, 0xb5, 0xa7, 0xdc, 0x17, 0xa8, 0x36, 0xb1, 0x2b, + 0x43, 0xbe, 0xfc, 0x0b, 0xe0, 0xa1, 0xbd, 0x36, 0x97, 0x72, 0x33, 0x80, 0x78, + 0xb4, 0xff, 0x7d, 0x8e, 0x2d, 0x97, 0x9a, 0x34, 0x41, 0xe1, 0xc8, 0xf5, 0xaf, + 0xe4, 0x7b, 0x1e, 0x7d, 0xa5, 0x6c, 0xf0, 0x06, 0x02, 0xd0, 0x1b, 0x11, 0x0c, + 0x05, 0xcf, 0x48, 0xfd, 0xa3, 0xe6, 0xcc, 0xe3, 0x2a, 0x04, 0x40, 0x00, 0xf4, + 0x5c, 0x6d, 0x1e, 0x69, 0x6d, 0x24, 0x5c, 0xbd, 0x31, 0x2b, 0xdc, 0x3a, 0x3a, + 0x21, 0xc9, 0x92, 0xd0, 0xeb, 0xc8, 0xcc, 0x8f, 0xa6, 0x30, 0x6d, 0x7e, 0x13, + 0x0a, 0x2b, 0xa4, 0x20, 0x18, 0xfe, 0x59, 0x69, 0x49, 0xfd, 0x82, 0x26, 0x7b, + 0xcc, 0x59, 0xdd, 0x46, 0x26, 0xef, 0xc3, 0xea, 0x74, 0x38, 0xd0, 0x5c, 0x91, + 0xb0, 0xf8, 0xe0, 0x92, 0x55, 0x0d, 0x2d, 0x39, 0xa0, 0x1e, 0xb4, 0x5e, 0xe8, + 0xf7, 0xd0, 0x9b, 0x03, 0x8d, 0x83, 0x83, 0xe1, 0x9b, 0xc3, 0x0e, 0x64, 0x03, + 0x82, 0x8c, 0xdb, 0x65, 0x2a, 0x55, 0x6b, 0x12, 0x04, 0x09, 0x31, 0x40, 0x2a, + 0xa6, 0xac, 0x34, 0xfc, 0x19, 0xfd, 0xc0, 0x6e, 0x2e, 0x77, 0x87, 0xf5, 0xb7, + 0x7b, 0x04, 0x5f, 0xd0, 0x98, 0xc0, 0x31, 0xbd, 0xbd, 0x46, 0x27, 0x76, 0x09, + 0xd8, 0x42, 0xf4, 0x84, 0x24, 0xed, 0xa3, 0x1e, 0x3c, 0xf2, 0xcd, 0xd6, 0x43, + 0x85, 0xba, 0xd3, 0x11, 0x88, 0x58, 0xd1, 0x42, 0xd9, 0x06, 0xea, 0xdb, 0x75, + 0x90, 0xc9, 0x41, 0x36, 0xda, 0x6a, 0x06, 0x35, 0x14, 0xd6, 0xa2, 0x5f, 0x7b, + 0x37, 0xd7, 0x66, 0x4f, 0x9b, 0x97, 0x09, 0x43, 0x3e, 0x6e, 0x70, 0x21, 0x18, + 0xa4, 0xab, 0x9e, 0x7a, 0x7a, 0x3e, 0x62, 0x59, 0x12, 0x99, 0x37, 0xd2, 0x9d, + 0x0d, 0xb2, 0x60, 0x70, 0x52, 0x3e, 0x8b, 0x06, 0x43, 0x13, 0x0a, 0xbe, 0xfe, + 0x94, 0x3b, 0x40, 0x12, 0x98, 0xae, 0x01, 0xa3, 0xab, 0x00, 0xab, 0xbc, 0x60, + 0xd7, 0xdb, 0x93, 0x3c, 0x7f, 0x07, 0xa8, 0xbf, 0x0f, 0x7c, 0xe1, 0x66, 0x0b, + 0xcc, 0xb4, 0x5e, 0x04, 0x2b, 0x45, 0x1b, 0x93, 0x50, 0x02, 0xce, 0xce, 0x27, + 0xf3, 0x6a, 0xba, 0x56, 0x47, 0xac, 0x28, 0xd8, 0x18, 0x6c, 0xdd, 0x1f, 0xb9, + 0x5d, 0xc1, 0x35, 0xd4, 0x89, 0x92, 0xf6, 0x8d, 0xa1, 0x2a, 0xd6, 0x1a, 0xc7, + 0x56, 0x68, 0x0d, 0xd7, 0xf8, 0xd0, 0x77, 0x4a, 0xbd, 0x6c, 0xfd, 0xa2, 0xf0, + 0x32, 0xaf, 0x3b, 0xe1, 0x39, 0xa6, 0x33, 0xd6, 0x73, 0x3c, 0x75, 0xd1, 0xab, + 0xa8, 0x90, 0x18, 0xc8, 0x57, 0x2b, 0x99, 0xcd, 0x30, 0xc5, 0x37, 0x06, 0x79, + 0x41, 0xdf, 0x1c, 0x4b, 0xc1, 0xfd, 0x57, 0x0f, 0x7b, 0x4d, 0xdc, 0x97, 0x51, + 0x86, 0x23, 0xe3, 0xae, 0x4a, 0x87, 0xbd, 0xb9, 0x66, 0xc9, 0x4d, 0x86, 0x1e, + 0x80, 0xde, 0x88, 0xc2, 0x92, 0xae, 0xe9, 0x38, 0x71, 0x94, 0xe2, 0x56, 0xc6, + 0x70, 0x07, 0x52, 0x30, 0x1c, 0x73, 0xfc, 0x95, 0x65, 0xa4, 0x04, 0x80, 0xd8, + 0x12, 0x6e, 0x9d, 0x08, 0x58, 0x79, 0xe2, 0x4b, 0x16, 0xe9, 0xc4, 0x85, 0xd8, + 0xf0, 0xd6, 0x18, 0xca, 0x0d, 0xd1, 0x21, 0xb5, 0x1a, 0x7c, 0xab, 0x23, 0x0c, + 0x5b, 0x45, 0x67, 0x2b, 0xdb, 0x8e, 0xa3, 0xa0, 0x40, 0xf7, 0xaa, 0xa0, 0x98, + 0xba, 0x26, 0x02, 0x5d, 0x2e, 0xab, 0x79, 0x48, 0x69, 0x3d, 0xd5, 0xf6, 0xd3, + 0x09, 0x65, 0x01, 0xe9, 0xe0, 0x71, 0x25, 0xd7, 0xeb, 0x29, 0x3b, 0x3a, 0xba, + 0xd5, 0x7f, 0xd5, 0xf0, 0x11, 0x64, 0x70, 0x2d, 0xae, 0x64, 0xbd, 0xba, 0x8c, + 0x92, 0x4f, 0xb0, 0x79, 0x96, 0x79, 0xd7, 0x7f, 0x98, 0xd3, 0x03, 0x91, 0x9f, + 0xb4, 0xa7, 0xff, 0x26, 0xa9, 0x6f, 0x13, 0x7a, 0x5e, 0x5c, 0xb9, 0x5b, 0xc4, + 0xc6, 0xff, 0x99, 0x93, 0x52, 0x6b, 0xda, 0x15, 0x03, 0x16, 0x8a, 0xb4, 0x8c, + 0xbd, 0x45, 0x15, 0x39, 0x27, 0xd3, 0x04, 0x30, 0x42, 0x3d, 0xbd, 0xf0, 0x66, + 0x05, 0xf5, 0xb5, 0x4b, 0x80, 0x8f, 0xeb, 0x22, 0xb2, 0x08, 0xb0, 0x64, 0x58, + 0x18, 0x47, 0xb2, 0xf6, 0x4c, 0xa6, 0x48, 0x37, 0x00, 0x72, 0x16, 0xde, 0x6e, + 0xca, 0xff, 0xeb, 0x4b, 0x69, 0xe6, 0x33, 0x47, 0xf8, 0x4a, 0xbc, 0xad, 0x8f, + 0x2e, 0x75, 0x7d, 0x58, 0x61, 0xce, 0x77, 0xee, 0x46, 0x51, 0x3d, 0xa7, 0x41, + 0x68, 0x37, 0xdc, 0x77, 0x12, 0x77, 0x06, 0xe4, 0x5e, 0xf2, 0x4c, 0xf3, 0x95, + 0x11, 0x42, 0x89, 0x9e, 0x06, 0x5f, 0x5c, 0x22, 0xad, 0x68, 0x51, 0x99, 0x2c, + 0x98, 0x2e, 0x9a, 0x75, 0xfe, 0x70, 0x77, 0xe9, 0x39, 0xfc, 0xd0, 0x05, 0x57, + 0x62, 0x76, 0x69, 0xf9, 0xda, 0xeb, 0x5e, 0xd2, 0xfa, 0xd2, 0x02, 0x4e, 0x43, + 0x9c, 0x9f, 0x3f, 0x98, 0xa1, 0x18, 0xfe, 0x16, 0x69, 0x8e, 0x9c, 0xef, 0xf5, + 0x58, 0x31, 0x22, 0xe1, 0x97, 0xcd, 0xb4, 0x70, 0xb0, 0x90, 0xdc, 0xde, 0x5a, + 0xa0, 0x73, 0xfd, 0x70, 0xce, 0xa9, 0xb6, 0xac, 0xf7, 0x25, 0xbd, 0x22, 0x6a, + 0x59, 0x46, 0x64, 0x67, 0x7e, 0xf5, 0x9b, 0x24, 0x86, 0xae, 0x4b, 0x40, 0xc7, + 0x90, 0x4e, 0xd9, 0xe4, 0xe8, 0xb1, 0x7f, 0x5d, 0xd0, 0xa6, 0x37, 0xb0, 0x8a, + 0xe6, 0xd4, 0x48, 0xa7, 0xa1, 0x6e, 0x8a, 0xed, 0x26, 0xa2, 0xec, 0xd0, 0xca, + 0x18, 0x6a, 0x5a, 0xa4, 0x3f, 0x89, 0x3e, 0x81, 0x53, 0xc8, 0x1b, 0x44, 0xcb, + 0xf6, 0xef, 0x6b, 0xec, 0x9d, 0x0f, 0xf7, 0x8f, 0x3a, 0x3a, 0xf6, 0xca, 0x37, + 0x97, 0xde, 0x79, 0x83, 0xb5, 0x0b, 0x15, 0x66, 0x5b, 0x48, 0x45, 0xac, 0xd1, + 0xa8, 0xe3, 0x41, 0x01, 0xe6, 0x8b, 0xb6, 0x44, 0xac, 0x03, 0x4d, 0xc6, 0x3e, + 0x6e, 0x34, 0x4c, 0x3d, 0x63, 0x76, 0x2a, 0x7a, 0x5b, 0xf5, 0x9f, 0x13, 0x09, + 0x54, 0x10, 0x98, 0x1d, 0x6b, 0x6b, 0x16, 0xbc, 0xd4, 0xc9, 0xfa, 0x68, 0xaf, + 0x6e, 0x53, 0x65, 0xe9, 0x4e, 0xcb, 0xe7, 0xab, 0x8b, 0x80, 0x43, 0xdf, 0xba, + 0xcb, 0x23, 0xc8, 0x4d, 0x71, 0xa8, 0xfe, 0x5d, 0x9a, 0xc5, 0x50, 0x2c, 0xe9, + 0xf7, 0x3f, 0x40, 0x8e, 0x14, 0x37, 0x6d, 0xb8, 0x6e, 0xf5, 0x7c, 0xc3, 0x7d, + 0x09, 0x89, 0x6f, 0xa9, 0x06, 0x97, 0x2e, 0x55, 0x71, 0x80, 0xa4, 0xab, 0x5a, + 0xd0, 0x9d, 0x88, 0x46, 0xdd, 0x6d, 0xa7, 0x48, 0x76, 0x54, 0x36, 0xe0, 0x16, + 0x02, 0x40, 0xf8, 0xd4, 0x1c, 0x0a, 0xc7, 0x83, 0xf9, 0x39, 0xf2, 0xd0, 0xed, + 0x26, 0x2c, 0xe8, 0x59, 0xc1, 0x31, 0xeb, 0xc9, 0x3f, 0xf2, 0xe6, 0xe4, 0x07, + 0xd4, 0xe2, 0x43, 0xe1, 0xe9, 0x31, 0xd5, 0x3a, 0x45, 0x43, 0xb6, 0xe2, 0x6d, + 0x82, 0x59, 0x6f, 0xc5, 0x3b, 0x52, 0x31, 0x2c, 0x77, 0x6d, 0x12, 0xeb, 0x2b, + 0x65, 0x9b, 0x4f, 0xb0, 0x98, 0xdf, 0x87, 0xd6, 0x83, 0xcf, 0x9e, 0x54, 0x12, + 0xee, 0x56, 0xc3, 0xfe, 0x98, 0x41, 0xd7, 0x3f, 0xd0, 0x70, 0xdf, 0xa5, 0x1f, + 0x5b, 0xaf, 0xed, 0xf2, 0x06, 0xf1, 0x3c, 0x52, 0x4e, 0x5c, 0x50, 0xca, 0xc9, + 0x90, 0x6e, 0xfa, 0x39, 0x32, 0x90, 0x04, 0x2e, 0x3b, 0xc5, 0x9f, 0x96, 0x0b, + 0x7d, 0x24, 0x0a, 0xe4, 0x43, 0xfc, 0x49, 0x26, 0x9c, 0xe0, 0x00, 0x61, 0xe6, + 0x5c, 0x6d, 0x74, 0x81, 0x2a, 0x30, 0xdd, 0x5f, 0x5f, 0xe7, 0x4e, 0xff, 0x61, + 0xe0, 0xcb, 0xab, 0x3c, 0xec, 0x75, 0xd0, 0xae, 0xf9, 0x50, 0x83, 0x18, 0x94, + 0x52, 0xdd, 0x3d, 0x9e, 0xdf, 0x44, 0x87, 0xbc, 0x73, 0x4c, 0x8b, 0x24, 0xf2, + 0x12, 0x96, 0xe4, 0xe9, 0xef, 0x11, 0x7d, 0x7f, 0xb9, 0x77, 0xe3, 0xb0, 0xe6, + 0x40, 0x6e, 0x63, 0x08, 0x59, 0x06, 0x33, 0x1a, 0x93, 0x03, 0x3d, 0x1c, 0xb8, + 0x36, 0x0f, 0xe6, 0xfe, 0xa6, 0x1a, 0x68, 0x26, 0xdf, 0x36, 0x25, 0x57, 0x89, + 0xf9, 0x2e, 0x40, 0xba, 0xfc, 0xb2, 0xeb, 0xcb, 0x9e, 0x55, 0x6f, 0x6c, 0x0c, + 0xca, 0xdc, 0x6a, 0xf0, 0x8e, 0x31, 0xec, 0x4a, 0xd5, 0x28, 0x80, 0x34, 0xe1, + 0x6d, 0x15, 0x5c, 0xfd, 0xca, 0xda, 0x7b, 0xab, 0x59, 0x9c, 0x2f, 0xa4, 0xad, + 0x2e, 0x62, 0x93, 0xf9, 0xfe, 0x09, 0x71, 0x69, 0x14, 0x82, 0x76, 0xb6, 0xa9, + 0xea, 0xa7, 0x2f, 0x14, 0x8b, 0x0c, 0x95, 0x65, 0xc3, 0xc2, 0xdd, 0x63, 0x12, + 0x5e, 0x0f, 0xa5, 0x30, 0x86, 0x1a, 0x71, 0x0d, 0xf8, 0xe4, 0x81, 0xf2, 0x71, + 0x29, 0x20, 0xf8, 0x78, 0x7e, 0x0a, 0xed, 0xfe, 0x61, 0x8a, 0xff, 0x50, 0xa3, + 0xb5, 0x62, 0x13, 0x88, 0x4d, 0x62, 0x62, 0xc1, 0x1d, 0xeb, 0xf2, 0xba, 0x7e, + 0x8a, 0xd6, 0x69, 0x2c, 0xb1, 0x70, 0x78, 0x33, 0x14, 0x18, 0xda, 0x4b, 0xe0, + 0x64, 0xff, 0x52, 0x70, 0x07, 0x39, 0x34, 0xab, 0xcd, 0x2a, 0xb0, 0x46, 0x9e, + 0xca, 0xf7, 0x27, 0x5b, 0x4b, 0xd7, 0x2b, 0xc6, 0xed, 0x34, 0x47, 0x8e, 0xa4, + 0x08, 0x9b, 0x73, 0x6a, 0x16, 0xdd, 0x90, 0x6d, 0x49, 0xf2, 0x5c, 0x33, 0x82, + 0x7c, 0x57, 0x1c, 0xe0, 0xb5, 0xd7, 0x21, 0x77, 0xaa, 0x35, 0x08, 0x80, 0x4b, + 0xc0, 0xf8, 0xfa, 0xa9, 0x47, 0x12, 0x22, 0x31, 0x40, 0x2d, 0x2f, 0x5c, 0xc9, + 0xa0, 0xeb, 0x0e, 0x09, 0xd4, 0x27, 0xb4, 0x27, 0x28, 0x8d, 0x93, 0x7d, 0x9d, + 0x72, 0xb7, 0x74, 0x56, 0xf8, 0x86, 0x59, 0x4c, 0xd8, 0xc6, 0xa4, 0x62, 0xf7, + 0x7f, 0xd8, 0x30, 0x76, 0x46, 0x9c, 0xc0, 0xec, 0xba, 0x3c, 0xc4, 0x0c, 0xad, + 0x69, 0xe5, 0xb5, 0x41, 0x12, 0xea, 0xb3, 0x33, 0x96, 0xae, 0xcf, 0xbc, 0x21, + 0x1f, 0x1f, 0x79, 0xcf, 0x33, 0x10, 0x8e, 0x93, 0xd9, 0x53, 0x78, 0xba, 0xe6, + 0x95, 0x82, 0x74, 0xb3, 0x10, 0x88, 0xfb, 0xd8, 0xb3, 0xa3, 0xa0, 0xd1, 0x54, + 0xa7, 0x89, 0x73, 0x5b, 0x03, 0x49, 0xc4, 0xd5, 0x1c, 0x88, 0x9d, 0x08, 0x95, + 0x2d, 0xdd, 0x54, 0x88, 0xbe, 0x95, 0x56, 0x05, 0x94, 0xe6, 0x73, 0xfa, 0x05, + 0x1b, 0xf9, 0xb6, 0x14, 0xa1, 0x5e, 0x10, 0x0b, 0x60, 0xa0, 0xfe, 0x9a, 0x7e, + 0x12, 0xa9, 0xb2, 0x56, 0xdf, 0x58, 0x9b, 0x3e, 0x48, 0xe5, 0xb8, 0x0f, 0xb8, + 0xcf, 0xf0, 0x3e, 0x86, 0xf6, 0x0c, 0xc0, 0x70, 0xfb, 0x23, 0xc9, 0x7d, 0x4c, + 0x14, 0xfa, 0x3a, 0x73, 0x46, 0xff, 0x55, 0x6b, 0xc6, 0x85, 0x5a, 0x5f, 0x83, + 0xe3, 0xdc, 0xd9, 0xf6, 0xea, 0xb3, 0xda, 0xbc, 0xd4, 0x77, 0x50, 0xe3, 0x4e, + 0x7c, 0x09, 0x38, 0xf6, 0x03, 0xb4, 0x0f, 0x28, 0xa0, 0x29, 0x5e, 0x04, 0x00, + 0x15, 0xb0, 0xfe, 0xd2, 0x08, 0x6b, 0x6f, 0x54, 0x86, 0xa8, 0x64, 0x44, 0x7f, + 0x64, 0x79, 0xd0, 0x80, 0x0a, 0x91, 0xac, 0xef, 0x1e, 0x03, 0x8b, 0x81, 0xd7, + 0x36, 0xd9, 0x8e, 0xad, 0xa9, 0x0d, 0x9e, 0x0c, 0x2b, 0xe2, 0x7a, 0xb8, 0x50, + 0x32, 0x06, 0x60, 0x91, 0x22, 0x4e, 0xdf, 0x87, 0x2f, 0x79, 0x63, 0x7d, 0xda, + 0x39, 0x16, 0x79, 0x6a, 0x5c, 0x62, 0xf5, 0x7f, 0x1d, 0xe3, 0x76, 0x78, 0xb6, + 0xde, 0xa0, 0x08, 0x69, 0x93, 0x36, 0x74, 0xf8, 0x8e, 0x41, 0xa9, 0x18, 0x08, + 0x07, 0x3b, 0x0f, 0x43, 0x6e, 0xbe, 0x25, 0xa5, 0xf4, 0x4a, 0x60, 0x10, 0x33, + 0xe2, 0x18, 0x4b, 0x88, 0xdb, 0x79, 0xe9, 0x68, 0xca, 0x6d, 0x89, 0xb7, 0x49, + 0x01, 0xbe, 0x6c, 0x6d, 0xb3, 0x63, 0x65, 0x80, 0x18, 0x2e, 0x65, 0x8d, 0xfc, + 0x68, 0x67, 0x67, 0xd6, 0xd8, 0x19, 0xfa, 0x92, 0x3e, 0x0c, 0xdf, 0x3e, 0xa3, + 0x65, 0x76, 0xf8, 0x52, 0xbc, 0xd4, 0xe1, 0x96, 0xa7, 0x1a, 0x13, 0x29, 0xf6, + 0xc3, 0xff, 0x8e, 0x42, 0xe3, 0x09, 0x5a, 0xbd, 0x8e, 0xc1, 0x97, 0x99, 0x07, + 0x13, 0xee, 0x89, 0x39, 0x4c, 0x57, 0x19, 0xb2, 0x76, 0xde, 0x8f, 0x81, 0x8a, + 0x34, 0xa7, 0xbe, 0xc1, 0xf2, 0x68, 0x68, 0x2e, 0x91, 0x42, 0xc7, 0xd3, 0x87, + 0x89, 0xf6, 0x76, 0xcc, 0x12, 0xb7, 0x1a, 0xb6, 0x66, 0x40, 0x52, 0xcc, 0xb9, + 0x1c, 0x58, 0x9d, 0x6e, 0x29, 0x5a, 0xbb, 0xfc, 0x28, 0x2a, 0xf4, 0x45, 0x3b, + 0xd6, 0x3a, 0x4a, 0x82, 0x69, 0x5d, 0x27, 0x74, 0x11, 0x67, 0x3b, 0x31, 0x97, + 0xbe, 0x22, 0x7d, 0x6b, 0x54, 0xfe, 0xc8, 0xb8, 0x84, 0x02, 0xf0, 0x47, 0x52, + 0x45, 0xe1, 0x74, 0xa7, 0x45, 0xb8, 0x31, 0xf8, 0xfe, 0x03, 0xa7, 0x6f, 0xb9, + 0xce, 0xca, 0x4d, 0x22, 0xb7, 0x83, 0xc3, 0x28, 0x88, 0xe1, 0x7f, 0x3c, 0x77, + 0x55, 0xac, 0x44, 0x35, 0x92, 0xc9, 0x30, 0x17, 0x6c, 0xcb, 0x8c, 0x98, 0x3a, + 0x19, 0x85, 0x57, 0xd2, 0x7d, 0x8f, 0x53, 0xb2, 0x3c, 0xc4, 0x37, 0x19, 0xab, + 0x88, 0xee, 0x50, 0x93, 0x94, 0x81, 0x70, 0x8e, 0xa7, 0x08, 0xeb, 0x9f, 0x66, + 0x43, 0x88, 0xb9, 0xc6, 0x4d, 0x6a, 0xf0, 0xf9, 0x66, 0x90, 0x34, 0x24, 0x00, + 0x34, 0x8e, 0x92, 0x9e, 0x07, 0x46, 0x02, 0xf1, 0x6e, 0x1e, 0x3e, 0xd8, 0x62, + 0x88, 0x0b, 0x60, 0x38, 0x6e, 0xb8, 0x92, 0xb2, 0xb1, 0x4e, 0x56, 0xfd, 0xfd, + 0x16, 0x7c, 0xed, 0xcb, 0x1c, 0x96, 0xd1, 0x8b, 0xb1, 0x00, 0x4d, 0xbe, 0x93, + 0x7e, 0xbd, 0xc5, 0x5e, 0x37, 0xc6, 0x73, 0x94, 0xcb, 0xef, 0x66, 0x3b, 0x43, + 0xeb, 0x44, 0x5a, 0x1a, 0x96, 0x4c, 0x73, 0x7d, 0x3c, 0x15, 0x5a, 0xfb, 0x30, + 0x7b, 0x74, 0x8e, 0x41, 0x12, 0x34, 0xa2, 0x3b, 0xa4, 0xe5, 0xec, 0xc5, 0x4b, + 0x59, 0x65, 0xaf, 0x3b, 0xd0, 0x83, 0xea, 0x89, 0x2a, 0xe2, 0x14, 0x8b, 0xb6, + 0xff, 0xa1, 0x7d, 0x9e, 0xd2, 0xcb, 0x93, 0x42, 0x62, 0x71, 0x0f, 0x0b, 0x52, + 0x88, 0x7f, 0xb5, 0xd8, 0x78, 0xa0, 0x20, 0xe4, 0xb9, 0x5d, 0x77, 0x63, 0xac, + 0xad, 0x22, 0x87, 0xf8, 0x5e, 0x19, 0x9c, 0x1d, 0xf4, 0xa0, 0xfc, 0xa4, 0xd4, + 0x4b, 0xaa, 0x62, 0xda, 0x3a, ], txid: [ - 0xb6, 0x58, 0x22, 0x02, 0xbb, 0xf3, 0xb8, 0xdd, 0x13, 0xe5, 0x68, 0x1c, 0x33, - 0x42, 0x98, 0x3c, 0x1f, 0xcd, 0x8b, 0x1a, 0xcf, 0xe5, 0xd6, 0x94, 0x9f, 0xbe, - 0xb8, 0x09, 0xb7, 0xd2, 0xd6, 0xaa, + 0x29, 0x26, 0x55, 0x61, 0x0e, 0x3f, 0x90, 0x98, 0xf1, 0xa2, 0xd8, 0xec, 0x38, + 0x27, 0xb3, 0x15, 0x64, 0x74, 0x4a, 0x1d, 0x7d, 0xc7, 0x46, 0xf7, 0x55, 0xef, + 0x61, 0x50, 0xf5, 0x46, 0xe3, 0x93, ], auth_digest: [ - 0xc1, 0xc4, 0xed, 0x29, 0x92, 0xe4, 0x54, 0x80, 0xe8, 0x8a, 0xee, 0x5f, 0xb8, - 0x61, 0x88, 0x0a, 0x33, 0x86, 0x6f, 0x88, 0x7c, 0x14, 0xd4, 0x60, 0x5b, 0x5d, - 0xa4, 0xb1, 0xe0, 0x09, 0x62, 0x1b, + 0x98, 0xa5, 0x1d, 0x9e, 0x69, 0xa7, 0x53, 0x24, 0x19, 0x22, 0xec, 0x5f, 0x1c, + 0x44, 0x37, 0xf1, 0xfa, 0xd0, 0xcc, 0x74, 0x48, 0x63, 0x39, 0xec, 0x04, 0xd1, + 0x7d, 0x00, 0xba, 0x2d, 0x63, 0x7d, ], amounts: vec![], script_pubkeys: vec![], transparent_input: None, sighash_shielded: [ - 0xb6, 0x58, 0x22, 0x02, 0xbb, 0xf3, 0xb8, 0xdd, 0x13, 0xe5, 0x68, 0x1c, 0x33, - 0x42, 0x98, 0x3c, 0x1f, 0xcd, 0x8b, 0x1a, 0xcf, 0xe5, 0xd6, 0x94, 0x9f, 0xbe, - 0xb8, 0x09, 0xb7, 0xd2, 0xd6, 0xaa, + 0x29, 0x26, 0x55, 0x61, 0x0e, 0x3f, 0x90, 0x98, 0xf1, 0xa2, 0xd8, 0xec, 0x38, + 0x27, 0xb3, 0x15, 0x64, 0x74, 0x4a, 0x1d, 0x7d, 0xc7, 0x46, 0xf7, 0x55, 0xef, + 0x61, 0x50, 0xf5, 0x46, 0xe3, 0x93, ], sighash_all: None, sighash_none: None, diff --git a/zcash_primitives/src/transaction/tests/data_v6.rs b/zcash_primitives/src/transaction/tests/data_v6.rs new file mode 100644 index 0000000000..e1a9b81236 --- /dev/null +++ b/zcash_primitives/src/transaction/tests/data_v6.rs @@ -0,0 +1,3703 @@ +pub mod orchard_zsa_digests { + use crate::transaction::tests::data::zip_0244::TestVector; + // From https://github.com/QED-it/zcash-test-vectors/blob/zsa1/zcash_test_vectors/transaction_zsa.py + #[allow(dead_code)] // used only for V6 tests that are flagged off by default + pub fn make_test_vectors() -> Vec { + vec![ + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x7a, + 0x8f, 0x73, 0x9a, 0x2d, 0x6f, 0x2c, 0x02, 0x01, 0xe1, 0x52, 0xa8, 0x04, 0x9e, + 0x29, 0x4c, 0x4d, 0x6e, 0x66, 0xb1, 0x64, 0x93, 0x9d, 0xaf, 0xfa, 0x2e, 0xf6, + 0xee, 0x69, 0x21, 0x48, 0x1c, 0xdd, 0x86, 0xb3, 0xcc, 0x43, 0x18, 0xd9, 0x61, + 0x4f, 0xc8, 0x20, 0x90, 0x5d, 0x04, 0x53, 0x51, 0x6a, 0xac, 0xa3, 0xf2, 0x49, + 0x88, 0x00, 0x01, 0x9f, 0x33, 0xbf, 0x3a, 0x10, 0x9b, 0xdd, 0x1b, 0x23, 0x2b, + 0x47, 0xb1, 0x64, 0x6d, 0x91, 0xe1, 0x29, 0x66, 0x34, 0xeb, 0xde, 0x5c, 0xca, + 0xd5, 0x72, 0x88, 0xb5, 0xb2, 0x22, 0x81, 0x86, 0xe5, 0x4b, 0x69, 0x68, 0x91, + 0x2a, 0x63, 0x81, 0xce, 0x3d, 0xc1, 0x66, 0xd5, 0x6a, 0x1d, 0x62, 0xf5, 0xa8, + 0xd7, 0x55, 0x1d, 0xb5, 0xfd, 0x93, 0x13, 0xe8, 0xc7, 0x20, 0x3d, 0x99, 0x6a, + 0xf7, 0xd4, 0x1a, 0x38, 0xe0, 0x1d, 0x94, 0x90, 0x3d, 0x3c, 0x3e, 0x0a, 0xd3, + 0x36, 0x0c, 0x1d, 0x37, 0x10, 0xac, 0xd2, 0x0b, 0x18, 0x3e, 0x31, 0xd4, 0x9f, + 0x25, 0xc9, 0xa1, 0x38, 0xf4, 0x9b, 0x1a, 0x53, 0x01, 0x46, 0x6b, 0x3d, 0xa6, + 0x12, 0x14, 0x9d, 0xf5, 0xed, 0xa0, 0xf1, 0x4f, 0x2e, 0xfc, 0x5c, 0x6a, 0xc0, + 0x38, 0x84, 0x42, 0x8a, 0x31, 0x5d, 0xc9, 0x1f, 0x8d, 0x7b, 0x49, 0x2e, 0xbc, + 0x57, 0xe4, 0x75, 0xa4, 0xa6, 0xf2, 0x65, 0x72, 0x50, 0x4b, 0x19, 0x22, 0x32, + 0xec, 0xb9, 0xf0, 0xc0, 0x24, 0x11, 0xe5, 0x25, 0x96, 0xbc, 0x5e, 0x90, 0x45, + 0x7e, 0x74, 0x59, 0x39, 0xff, 0xed, 0xbd, 0x12, 0x1e, 0x37, 0xec, 0x1e, 0x9d, + 0xdd, 0xc3, 0x1b, 0x06, 0xdc, 0x95, 0x76, 0xa1, 0x73, 0x8e, 0xf7, 0x3e, 0x6b, + 0xa7, 0x16, 0x48, 0x91, 0x3d, 0xbf, 0x75, 0xa7, 0x79, 0xfd, 0xd4, 0x88, 0xd8, + 0x3f, 0x85, 0x7d, 0xee, 0xcc, 0x40, 0xa9, 0x8d, 0x5f, 0x29, 0x35, 0x39, 0x5e, + 0xe4, 0x76, 0x2d, 0xd2, 0x1a, 0xfd, 0xbb, 0x5d, 0x47, 0xfa, 0x9a, 0x6d, 0xd9, + 0x84, 0xd5, 0x67, 0xdb, 0x28, 0x57, 0xb9, 0x27, 0xb7, 0xfa, 0xe2, 0xdb, 0x58, + 0x71, 0x05, 0x41, 0x5d, 0x46, 0x42, 0x78, 0x9d, 0x38, 0xf5, 0x0b, 0x8d, 0xbc, + 0xc1, 0x29, 0xca, 0xb3, 0xd1, 0x7d, 0x19, 0xf3, 0x35, 0x5b, 0xcf, 0x73, 0xce, + 0xcb, 0x8c, 0xb8, 0xa5, 0xda, 0x01, 0x30, 0x71, 0x52, 0xf1, 0x39, 0x36, 0xa2, + 0x70, 0x57, 0x26, 0x70, 0xdc, 0x82, 0xd3, 0x90, 0x26, 0xc6, 0xcb, 0x4c, 0xd4, + 0xb0, 0xf7, 0xf5, 0xaa, 0x2a, 0x4f, 0x5a, 0x53, 0x41, 0xec, 0x5d, 0xd7, 0x15, + 0x40, 0x6f, 0x2f, 0xdd, 0x2a, 0xfa, 0x73, 0x3f, 0x5f, 0x64, 0x1c, 0x8c, 0x21, + 0x86, 0x2a, 0x1b, 0xaf, 0xce, 0x26, 0x09, 0xd9, 0xee, 0xcf, 0xa1, 0x58, 0xcf, + 0xb5, 0xcd, 0x79, 0xf8, 0x80, 0x08, 0xe3, 0x15, 0xdc, 0x7d, 0x83, 0x88, 0xe7, + 0x6c, 0x17, 0x82, 0xfd, 0x27, 0x95, 0xd1, 0x8a, 0x76, 0x36, 0x24, 0xc2, 0x5f, + 0xa9, 0x59, 0xcc, 0x97, 0x48, 0x9c, 0xe7, 0x57, 0x45, 0x82, 0x4b, 0x77, 0x86, + 0x8c, 0x53, 0x23, 0x9c, 0xfb, 0xdf, 0x73, 0xca, 0xec, 0x65, 0x60, 0x40, 0x37, + 0x31, 0x4f, 0xaa, 0xce, 0xb5, 0x62, 0x18, 0xc6, 0xbd, 0x30, 0xf8, 0x37, 0x4a, + 0xc1, 0x33, 0x86, 0x79, 0x3f, 0x21, 0xa9, 0xfb, 0x80, 0xad, 0x03, 0xbc, 0x0c, + 0xda, 0x4a, 0x44, 0x94, 0x6c, 0x00, 0xe1, 0xb1, 0xa1, 0xdf, 0x0e, 0x5b, 0x87, + 0xb5, 0xbe, 0xce, 0x47, 0x7a, 0x70, 0x96, 0x49, 0xe9, 0x50, 0x06, 0x05, 0x91, + 0x39, 0x48, 0x12, 0x95, 0x1e, 0x1f, 0xe3, 0x89, 0x5b, 0x8c, 0xc3, 0xd1, 0x4d, + 0x2c, 0xf6, 0x55, 0x6d, 0xf6, 0xed, 0x4b, 0x4d, 0xdd, 0x3d, 0x9a, 0x69, 0xf5, + 0x33, 0x57, 0xd7, 0x76, 0x7f, 0x4f, 0x5c, 0xcb, 0xdb, 0xc5, 0x96, 0x63, 0x12, + 0x77, 0xf8, 0xfe, 0xcd, 0x08, 0xcb, 0x05, 0x6b, 0x95, 0xe3, 0x02, 0x5b, 0x97, + 0x92, 0xff, 0xf7, 0xf2, 0x44, 0xfc, 0x71, 0x62, 0x69, 0xb9, 0x26, 0xd6, 0x2e, + 0x95, 0x96, 0xfa, 0x82, 0x5c, 0x6b, 0xf2, 0x1a, 0xff, 0x9e, 0x68, 0x62, 0x5a, + 0x19, 0x24, 0x40, 0xea, 0x06, 0x82, 0x81, 0x23, 0xd9, 0x78, 0x84, 0x80, 0x6f, + 0x15, 0xfa, 0x08, 0xda, 0x52, 0x75, 0x4a, 0x10, 0x95, 0xe3, 0xff, 0x1a, 0xbd, + 0x5c, 0xe4, 0xfd, 0xdf, 0xcc, 0xfc, 0x3a, 0x61, 0x28, 0xae, 0xf7, 0x84, 0xa6, + 0x46, 0x10, 0xa8, 0x9d, 0x1a, 0x70, 0x99, 0x21, 0x6d, 0x08, 0x14, 0xd3, 0xa2, + 0xd4, 0x52, 0x43, 0x1c, 0x32, 0xd4, 0x11, 0xac, 0x1c, 0xce, 0x82, 0xad, 0x02, + 0x29, 0x40, 0x7b, 0xbc, 0x48, 0x98, 0x56, 0x75, 0xe3, 0xf8, 0x74, 0xa4, 0x53, + 0x3f, 0x1d, 0x63, 0xa8, 0x4d, 0xfa, 0x3e, 0x0f, 0x46, 0x0f, 0xe2, 0xf5, 0x7e, + 0x34, 0xfb, 0xc7, 0x54, 0x23, 0xc3, 0x73, 0x7f, 0x5b, 0x2a, 0x06, 0x15, 0xf5, + 0x72, 0x2d, 0xb0, 0x41, 0xa3, 0xef, 0x66, 0xfa, 0x48, 0x3a, 0xfd, 0x3c, 0x2e, + 0x19, 0xe5, 0x94, 0x44, 0xa6, 0x4a, 0xdd, 0x6d, 0xf1, 0xd9, 0x63, 0xf5, 0xdd, + 0x5b, 0x50, 0x10, 0xd3, 0xd0, 0x25, 0xf0, 0x28, 0x7c, 0x4c, 0xf1, 0x9c, 0x75, + 0xf3, 0x3d, 0x51, 0xdd, 0xdd, 0xba, 0x5d, 0x65, 0x7b, 0x43, 0xee, 0x8d, 0xa6, + 0x45, 0x44, 0x38, 0x14, 0xcc, 0x73, 0x29, 0xf3, 0xe9, 0xb4, 0xe5, 0x4c, 0x23, + 0x6c, 0x29, 0xaf, 0x39, 0x23, 0x10, 0x17, 0x56, 0xd9, 0xfa, 0x4b, 0xd0, 0xf7, + 0xd2, 0xdd, 0xaa, 0xcb, 0x6b, 0x0f, 0x86, 0xa2, 0x65, 0x8e, 0x0a, 0x07, 0xa0, + 0x5a, 0xc5, 0xb9, 0x50, 0x05, 0x1c, 0xd2, 0x4c, 0x47, 0xa8, 0x8d, 0x13, 0xd6, + 0x59, 0xba, 0x2a, 0x46, 0xca, 0x18, 0x30, 0x81, 0x6d, 0x09, 0xcd, 0x76, 0x46, + 0xf7, 0x6f, 0x71, 0x6a, 0xbe, 0xc5, 0xde, 0x07, 0xfe, 0x9b, 0x52, 0x34, 0x10, + 0x80, 0x6e, 0xa6, 0xf2, 0x88, 0xf8, 0x73, 0x6c, 0x23, 0x35, 0x7c, 0x85, 0xf4, + 0x57, 0x91, 0xe1, 0x70, 0x80, 0x29, 0xd9, 0x82, 0x4d, 0x90, 0x70, 0x46, 0x07, + 0xf3, 0x87, 0xa0, 0x3e, 0x49, 0xbf, 0x98, 0x36, 0x57, 0x44, 0x31, 0x34, 0x5a, + 0x78, 0x77, 0xef, 0xaa, 0x8a, 0x08, 0xe7, 0x30, 0x81, 0xef, 0x8d, 0x62, 0xcb, + 0x78, 0x0a, 0xb6, 0x88, 0x3a, 0x50, 0xa0, 0xd4, 0x70, 0x19, 0x0d, 0xfb, 0xa1, + 0x0a, 0x85, 0x7f, 0x82, 0x84, 0x2d, 0x38, 0x25, 0xb3, 0xd6, 0xda, 0x05, 0x73, + 0xd3, 0x16, 0xeb, 0x16, 0x0d, 0xc0, 0xb7, 0x16, 0xc4, 0x8f, 0xbd, 0x46, 0x7f, + 0x75, 0xb7, 0x80, 0x14, 0x9a, 0xe8, 0x80, 0x8f, 0x4e, 0x68, 0xf5, 0x0c, 0x05, + 0x36, 0xac, 0xdd, 0xf6, 0xf1, 0xae, 0xab, 0x01, 0x6b, 0x6b, 0xc1, 0xa5, 0x1e, + 0xd4, 0x4c, 0xfa, 0xb7, 0x00, 0x00, 0xc7, 0xb3, 0x53, 0x42, 0x01, 0xcf, 0xb1, + 0xcd, 0x8d, 0xbf, 0x69, 0xb8, 0x25, 0x0c, 0x18, 0xef, 0x41, 0x29, 0x4c, 0xa9, + 0x79, 0x93, 0xdb, 0x54, 0x6c, 0x1f, 0xe0, 0x1f, 0x7e, 0x9c, 0x8e, 0x36, 0x7e, + 0xdc, 0xf0, 0x4b, 0xe3, 0x4a, 0x98, 0x51, 0xa7, 0xaf, 0x9d, 0xb6, 0x99, 0x0e, + 0xd8, 0x3d, 0xd6, 0x4a, 0xf3, 0x59, 0x7c, 0x04, 0x32, 0x3e, 0xa5, 0x1b, 0x00, + 0x52, 0xad, 0x80, 0x84, 0xa8, 0xb9, 0xda, 0x94, 0x8d, 0x32, 0x0d, 0xad, 0xd6, + 0x4f, 0x54, 0x31, 0xe6, 0x1d, 0xdf, 0x65, 0x8d, 0x24, 0xae, 0x67, 0xc2, 0x2c, + 0x8d, 0x13, 0x09, 0x13, 0x1f, 0xc0, 0x0f, 0xe7, 0xf2, 0x35, 0x73, 0x42, 0x76, + 0xd3, 0x8d, 0x47, 0xf1, 0xe1, 0x91, 0xe0, 0x0c, 0x7a, 0x1d, 0x48, 0xaf, 0x04, + 0x68, 0x27, 0x59, 0x1e, 0x97, 0x33, 0xa9, 0x7f, 0xa6, 0xb6, 0x79, 0xf3, 0xdc, + 0x60, 0x1d, 0x00, 0x82, 0x85, 0xed, 0xcb, 0xda, 0xe6, 0x9c, 0xe8, 0xfc, 0x1b, + 0xe4, 0xaa, 0xc0, 0x0f, 0xf2, 0x71, 0x1e, 0xbd, 0x93, 0x1d, 0xe5, 0x18, 0x85, + 0x68, 0x78, 0xf7, 0x34, 0x76, 0xf2, 0x1a, 0x48, 0x2e, 0xc9, 0x37, 0x83, 0x65, + 0xc8, 0xf7, 0x39, 0x3c, 0x94, 0xe2, 0x88, 0x53, 0x15, 0xeb, 0x46, 0x71, 0x09, + 0x8b, 0x79, 0x53, 0x5e, 0x79, 0x0f, 0xe5, 0x3e, 0x29, 0xfe, 0xf2, 0xb3, 0x76, + 0x66, 0x97, 0xac, 0x32, 0xb4, 0xf4, 0x73, 0xf4, 0x68, 0xa0, 0x08, 0xe7, 0x23, + 0x89, 0xfc, 0x03, 0x88, 0x0d, 0x78, 0x0c, 0xb0, 0x7f, 0xcf, 0xaa, 0xbe, 0x3f, + 0x1a, 0x84, 0xb2, 0x7d, 0xb5, 0x9a, 0x4a, 0x15, 0x3d, 0x10, 0x70, 0x68, 0x9f, + 0x2c, 0xcf, 0x97, 0x5b, 0x2b, 0x17, 0x6e, 0x1c, 0x69, 0xdb, 0xe3, 0x81, 0x34, + 0x0e, 0xf1, 0xf9, 0x8f, 0xdc, 0x4b, 0x45, 0x3a, 0xbd, 0xa3, 0xa2, 0xbf, 0xac, + 0x30, 0x69, 0xba, 0x7f, 0x1c, 0xc5, 0x0a, 0x81, 0xc2, 0x52, 0x0e, 0x41, 0x2f, + 0xab, 0x4e, 0x5d, 0x39, 0x7e, 0xcf, 0x73, 0x9f, 0x28, 0x0d, 0x5b, 0x68, 0x45, + 0x33, 0xd5, 0xd2, 0x9c, 0xfe, 0x7e, 0x73, 0x02, 0xec, 0x14, 0x4b, 0x4e, 0x55, + 0x3a, 0xcf, 0xd6, 0x70, 0xf7, 0x7e, 0x75, 0x5f, 0xc8, 0x8e, 0x06, 0x77, 0xe3, + 0x1b, 0xa4, 0x59, 0xb4, 0x4e, 0x30, 0x77, 0x68, 0x95, 0x8f, 0xe3, 0x78, 0x9d, + 0x41, 0xc2, 0xb1, 0xff, 0x43, 0x4c, 0xb3, 0x0e, 0x15, 0x91, 0x4f, 0x01, 0xbc, + 0x6b, 0xc2, 0x30, 0x7b, 0x48, 0x8d, 0x25, 0x56, 0xd7, 0xb7, 0x38, 0x0e, 0xa4, + 0xff, 0xd7, 0x12, 0xf6, 0xb0, 0x2f, 0xe8, 0x06, 0xb9, 0x45, 0x69, 0xcd, 0x40, + 0x59, 0xf3, 0x96, 0xbf, 0x29, 0xb9, 0x9d, 0x0a, 0x40, 0xe5, 0xe1, 0x71, 0x1c, + 0xa9, 0x44, 0xf7, 0x2d, 0x43, 0x6a, 0x10, 0x2f, 0xca, 0x4b, 0x97, 0x69, 0x3d, + 0xa0, 0xb0, 0x86, 0xfe, 0x9d, 0x2e, 0x71, 0x62, 0x47, 0x0d, 0x02, 0xe0, 0xf0, + 0x5d, 0x4b, 0xec, 0x95, 0x12, 0xbf, 0xb3, 0xf3, 0x83, 0x27, 0x29, 0x6e, 0xfa, + 0xa7, 0x43, 0x28, 0xb1, 0x18, 0xc2, 0x74, 0x02, 0xc7, 0x0c, 0x3a, 0x90, 0xb4, + 0x9a, 0xd4, 0xbb, 0xc6, 0x8e, 0x37, 0xc0, 0xaa, 0x7d, 0x9b, 0x3f, 0xe1, 0x77, + 0x99, 0xd7, 0x3b, 0x84, 0x1e, 0x75, 0x17, 0x13, 0xa0, 0x29, 0x43, 0x90, 0x5a, + 0xae, 0x08, 0x03, 0xfd, 0x69, 0x44, 0x2e, 0xb7, 0x68, 0x1e, 0xc2, 0xa0, 0x56, + 0x00, 0x05, 0x4e, 0x92, 0xee, 0xd5, 0x55, 0x02, 0x8f, 0x21, 0xb6, 0xa1, 0x55, + 0x26, 0x8a, 0x2d, 0xd6, 0x64, 0x05, 0x25, 0x28, 0xa5, 0xf8, 0xed, 0x02, 0x8f, + 0x59, 0xaf, 0x98, 0x5a, 0xd1, 0x31, 0x5c, 0x2e, 0x25, 0xae, 0xb9, 0xd7, 0xf1, + 0x34, 0xe4, 0xbf, 0x47, 0x86, 0x42, 0xab, 0x96, 0xb1, 0x5d, 0x3b, 0x3e, 0x13, + 0xce, 0x23, 0x87, 0xac, 0x84, 0xdc, 0x08, 0x19, 0xe8, 0x12, 0x60, 0xe1, 0x1d, + 0x39, 0x2a, 0x5f, 0x06, 0xdb, 0x8b, 0x56, 0x33, 0xde, 0x28, 0x1a, 0x0e, 0x9c, + 0x95, 0x8c, 0x24, 0x06, 0x00, 0x00, + ], + txid: [ + 0xe6, 0xa2, 0x02, 0x4f, 0x3f, 0x42, 0x2a, 0x2a, 0x70, 0x74, 0xa4, 0x3e, 0x8b, + 0x7d, 0xf9, 0xa2, 0xb9, 0x0e, 0xee, 0xf2, 0x39, 0x3f, 0x1c, 0x07, 0xf1, 0x80, + 0x42, 0xa4, 0xc0, 0xf0, 0xcb, 0x8b, + ], + auth_digest: [ + 0xc4, 0x7e, 0xfe, 0x33, 0xfa, 0x33, 0xf9, 0xee, 0x64, 0xc5, 0xb0, 0xdf, 0x6e, + 0xdb, 0x2b, 0xab, 0xae, 0x5c, 0x17, 0x0f, 0x80, 0x00, 0x17, 0x90, 0x03, 0xaf, + 0xd3, 0x30, 0xf1, 0x6b, 0xec, 0xd6, + ], + amounts: vec![1311766330213275], + script_pubkeys: vec![vec![0x63, 0x63]], + transparent_input: Some(0), + sighash_shielded: [ + 0xe2, 0x93, 0x95, 0x8a, 0xe7, 0xb6, 0x1e, 0x56, 0x89, 0xd8, 0xa5, 0x62, 0xa1, + 0xb1, 0x49, 0x04, 0x07, 0xe1, 0xb5, 0xf3, 0xab, 0x56, 0xc8, 0x77, 0x2b, 0xf1, + 0x7b, 0xde, 0xb4, 0x2b, 0x4d, 0x71, + ], + sighash_all: Some([ + 0x5c, 0x96, 0xee, 0x8d, 0x2d, 0x58, 0x37, 0x18, 0x31, 0x82, 0x00, 0x75, 0x0c, + 0x96, 0x00, 0x0c, 0x58, 0xfb, 0xa9, 0x08, 0x80, 0x85, 0x3f, 0xf5, 0xf1, 0x37, + 0x1b, 0x5a, 0x4b, 0x35, 0xd3, 0x1b, + ]), + sighash_none: Some([ + 0x45, 0xa6, 0x8e, 0xef, 0x07, 0x18, 0x22, 0x3e, 0x11, 0xe0, 0xb0, 0xe0, 0x5c, + 0x1d, 0xc0, 0x41, 0x04, 0xd2, 0xc1, 0xe1, 0x6b, 0x76, 0x25, 0x4c, 0xb8, 0x1e, + 0xf2, 0xc4, 0x13, 0xfb, 0x95, 0x03, + ]), + sighash_single: None, + sighash_all_anyone: Some([ + 0x3b, 0x76, 0xab, 0xbb, 0x12, 0xd8, 0xc5, 0x7b, 0x7c, 0x29, 0x85, 0x9e, 0x27, + 0xfd, 0x1a, 0x55, 0x3e, 0x5c, 0x11, 0xba, 0x6b, 0xc1, 0x35, 0x50, 0x01, 0xe3, + 0x92, 0x30, 0x2e, 0x2d, 0x29, 0x1c, + ]), + sighash_none_anyone: Some([ + 0xf1, 0xc9, 0x68, 0x5c, 0x0b, 0x80, 0x3a, 0x08, 0x17, 0x85, 0x37, 0x56, 0x39, + 0x3c, 0xad, 0x3b, 0x9a, 0xd0, 0xb7, 0x6a, 0x4b, 0x8b, 0xbb, 0x0a, 0x09, 0x8a, + 0x0e, 0xd0, 0x08, 0x81, 0x9a, 0x91, + ]), + sighash_single_anyone: None, + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0xd3, + 0xf4, 0x1e, 0x72, 0x8e, 0xf2, 0xbc, 0x09, 0x02, 0xb8, 0x9f, 0xfd, 0xec, 0xa3, + 0x64, 0xdd, 0x2f, 0x0f, 0x07, 0x39, 0xf0, 0x53, 0x45, 0x56, 0x48, 0x31, 0x99, + 0xc7, 0x1f, 0x18, 0x93, 0x41, 0xac, 0x9b, 0x78, 0xa2, 0x69, 0x16, 0x42, 0x06, + 0xa0, 0xea, 0x1c, 0xe7, 0x3b, 0x05, 0x52, 0xac, 0x65, 0x53, 0x00, 0xb2, 0x47, + 0xc0, 0x46, 0xf8, 0xe7, 0x5e, 0xf8, 0xe3, 0xf8, 0xbd, 0x82, 0x1c, 0xf5, 0x77, + 0x49, 0x18, 0x64, 0xe2, 0x0e, 0x6d, 0x08, 0xfd, 0x2e, 0x32, 0xb5, 0x55, 0xc9, + 0x2c, 0x66, 0x1f, 0x19, 0x58, 0x8b, 0x72, 0xa8, 0x95, 0x99, 0x71, 0x0a, 0x00, + 0x06, 0x12, 0x53, 0xca, 0x02, 0xc4, 0x9d, 0x7d, 0x74, 0xf6, 0x5f, 0x01, 0x00, + 0x09, 0xac, 0x53, 0xac, 0x00, 0xac, 0x52, 0x00, 0x00, 0xac, 0xb7, 0x39, 0x17, + 0xd3, 0xcc, 0x94, 0x05, 0x00, 0x09, 0xac, 0x6a, 0x6a, 0x00, 0x63, 0x53, 0x52, + 0xac, 0xac, 0x00, 0x02, 0x80, 0xa9, 0x89, 0x23, 0x5d, 0x81, 0x05, 0x18, 0xdb, + 0xa3, 0xf3, 0x4c, 0x72, 0x7b, 0x77, 0xf2, 0x3d, 0x14, 0xf0, 0x22, 0xbf, 0x38, + 0x1e, 0x29, 0xed, 0xb1, 0x74, 0x9e, 0x05, 0x46, 0xeb, 0xdc, 0x53, 0x04, 0x35, + 0x31, 0x2e, 0xdc, 0xed, 0xc6, 0xa9, 0x61, 0x13, 0x33, 0x38, 0xd7, 0x86, 0xc4, + 0xa3, 0xe1, 0x03, 0xf6, 0x01, 0x10, 0xa1, 0x6b, 0x13, 0x37, 0x12, 0x97, 0x04, + 0xbf, 0x47, 0x54, 0x7f, 0xef, 0x3a, 0x8b, 0x97, 0xe7, 0x37, 0x53, 0x67, 0x5e, + 0x91, 0x07, 0x43, 0x64, 0xab, 0x31, 0x90, 0xcd, 0xd0, 0xf0, 0x33, 0x1b, 0x51, + 0x40, 0x00, 0xfc, 0x16, 0xc9, 0xf0, 0x65, 0xd4, 0xe2, 0xd8, 0xfe, 0x94, 0xe9, + 0x7d, 0x2e, 0x9e, 0x85, 0xc6, 0xbb, 0x74, 0x8c, 0x00, 0x42, 0xd3, 0x24, 0x9a, + 0xbb, 0x13, 0x42, 0xbb, 0x0e, 0xeb, 0xf6, 0x20, 0x58, 0xbf, 0x3d, 0xe0, 0x80, + 0xd9, 0x46, 0x11, 0xa3, 0x75, 0x09, 0x15, 0xb5, 0xdc, 0x6c, 0x0b, 0x38, 0x99, + 0xd4, 0x12, 0x22, 0xba, 0xce, 0x76, 0x0e, 0xe9, 0xc8, 0x81, 0x8d, 0xed, 0x59, + 0x9e, 0x34, 0xc5, 0x6d, 0x73, 0x72, 0xaf, 0x1e, 0xb8, 0x68, 0x52, 0xf2, 0xa7, + 0x32, 0x10, 0x4b, 0xdb, 0x75, 0x07, 0x39, 0xde, 0x6c, 0x2c, 0x6e, 0x0f, 0x9e, + 0xb7, 0xcb, 0x17, 0xf1, 0x94, 0x2b, 0xfc, 0x9f, 0x4f, 0xd6, 0xeb, 0xb6, 0xb4, + 0xcd, 0xd4, 0xda, 0x2b, 0xca, 0x26, 0xfa, 0xc4, 0x57, 0x8e, 0x9f, 0x54, 0x34, + 0x05, 0xac, 0xc7, 0xd8, 0x6f, 0xf5, 0x91, 0x58, 0xbd, 0x0c, 0xba, 0x3a, 0xef, + 0x6f, 0x4a, 0x84, 0x72, 0xd1, 0x44, 0xd9, 0x9f, 0x8b, 0x8d, 0x1d, 0xed, 0xaa, + 0x90, 0x77, 0xd4, 0xf0, 0x1d, 0x4b, 0xb2, 0x7b, 0xbe, 0x31, 0xd8, 0x8f, 0xbe, + 0xfa, 0xc3, 0xdc, 0xd4, 0x79, 0x75, 0x63, 0xa2, 0x6b, 0x1d, 0x61, 0xfc, 0xd9, + 0xa4, 0x64, 0xab, 0x21, 0xed, 0x55, 0x0f, 0xe6, 0xfa, 0x09, 0x69, 0x5b, 0xa0, + 0xb2, 0xf1, 0x0e, 0xea, 0x64, 0x68, 0xcc, 0x6e, 0x20, 0xa6, 0x6f, 0x82, 0x6e, + 0x3d, 0x14, 0xc5, 0x00, 0x6f, 0x05, 0x63, 0x88, 0x7f, 0x5e, 0x12, 0x89, 0xbe, + 0x1b, 0x20, 0x04, 0xca, 0xca, 0x8d, 0x3f, 0x34, 0xd6, 0xe8, 0x4b, 0xf5, 0x9c, + 0x1e, 0x04, 0x61, 0x9a, 0x7c, 0x23, 0xa9, 0x96, 0x94, 0x1d, 0x88, 0x9e, 0x46, + 0x22, 0xa9, 0xb9, 0xb1, 0xd5, 0x9d, 0x5e, 0x31, 0x90, 0x94, 0x31, 0x8c, 0xd4, + 0x05, 0xba, 0x27, 0xb7, 0xe2, 0xc0, 0x84, 0x76, 0x2d, 0x31, 0x45, 0x3e, 0xc4, + 0x54, 0x9a, 0x4d, 0x97, 0x72, 0x9d, 0x03, 0x34, 0x60, 0xfc, 0xf8, 0x9d, 0x64, + 0x94, 0xf2, 0xff, 0xd7, 0x89, 0xe9, 0x80, 0x82, 0xea, 0x5c, 0xe9, 0x53, 0x4b, + 0x3a, 0xcd, 0x60, 0xfe, 0x49, 0xe3, 0x7e, 0x4f, 0x66, 0x69, 0x31, 0x67, 0x73, + 0x19, 0xed, 0x89, 0xf8, 0x55, 0x88, 0x74, 0x1b, 0x31, 0x28, 0x90, 0x1a, 0x93, + 0xbd, 0x78, 0xe4, 0xbe, 0x02, 0x25, 0xa9, 0xe2, 0x69, 0x2c, 0x77, 0xc9, 0x69, + 0xed, 0x01, 0x76, 0xbd, 0xf9, 0x55, 0x59, 0x48, 0xcb, 0xd5, 0xa3, 0x32, 0xd0, + 0x45, 0xde, 0x6b, 0xa6, 0xbf, 0x44, 0x90, 0xad, 0xfe, 0x74, 0x44, 0xcd, 0x46, + 0x7a, 0x09, 0x07, 0x54, 0x17, 0xfc, 0xc0, 0x06, 0x2e, 0x49, 0xf0, 0x08, 0xc5, + 0x1a, 0xd4, 0x22, 0x74, 0x39, 0xc1, 0xb4, 0x47, 0x6c, 0xcd, 0x8e, 0x97, 0x86, + 0x2d, 0xab, 0x7b, 0xe1, 0xe8, 0xd3, 0x99, 0xc0, 0x5e, 0xf2, 0x7c, 0x6e, 0x22, + 0xee, 0x27, 0x3e, 0x15, 0x78, 0x6e, 0x39, 0x4c, 0x8f, 0x1b, 0xe3, 0x16, 0x82, + 0xa3, 0x01, 0x47, 0x96, 0x3a, 0xc8, 0xda, 0x8d, 0x41, 0xd8, 0x04, 0x25, 0x84, + 0x26, 0xa3, 0xf7, 0x02, 0x89, 0xb8, 0xad, 0x19, 0xd8, 0xde, 0x13, 0xbe, 0x4e, + 0xeb, 0xe3, 0xbd, 0x4c, 0x8a, 0x6f, 0x55, 0xd6, 0xe0, 0xc3, 0x73, 0xd4, 0x56, + 0x85, 0x18, 0x79, 0xf5, 0xfb, 0xc2, 0x82, 0xdb, 0x9e, 0x13, 0x48, 0x06, 0xbf, + 0xf7, 0x1e, 0x11, 0xbc, 0x33, 0xab, 0x75, 0xdd, 0x6c, 0xa0, 0x67, 0xfb, 0x73, + 0xa0, 0x43, 0xb6, 0x46, 0xa7, 0xcf, 0x39, 0xca, 0xb4, 0x92, 0x83, 0x86, 0x78, + 0x6d, 0x2f, 0x24, 0x14, 0x1e, 0xe1, 0x20, 0xfd, 0xc3, 0x4d, 0x67, 0x64, 0xea, + 0xfc, 0x66, 0x88, 0x0e, 0xe0, 0x20, 0x4f, 0x53, 0xcc, 0x11, 0x67, 0xed, 0x20, + 0xb4, 0x3a, 0x52, 0xde, 0xa3, 0xca, 0x7c, 0xff, 0x8e, 0xf3, 0x5c, 0xd8, 0xe6, + 0xd7, 0xc1, 0x11, 0xa6, 0x8e, 0xf4, 0x4b, 0xcd, 0x0c, 0x15, 0x13, 0xad, 0x47, + 0xca, 0x61, 0xc6, 0x59, 0xcc, 0x5d, 0x32, 0x5b, 0x44, 0x0f, 0x6b, 0x9f, 0x59, + 0xaf, 0xf6, 0x68, 0x79, 0xbb, 0x66, 0x88, 0xfd, 0x28, 0x59, 0x36, 0x2b, 0x18, + 0x2f, 0x20, 0x7b, 0x31, 0x75, 0x96, 0x1f, 0x64, 0x11, 0xa4, 0x93, 0xbf, 0xfd, + 0x04, 0x8e, 0x7d, 0x0d, 0x87, 0xd8, 0x2f, 0xe6, 0xf9, 0x90, 0xa2, 0xb0, 0xa2, + 0x5f, 0x5a, 0xa0, 0x11, 0x1a, 0x6e, 0x68, 0xf3, 0x7b, 0xf6, 0xf3, 0xac, 0x2d, + 0x26, 0xb8, 0x46, 0x86, 0xe5, 0x69, 0xd5, 0x8d, 0x99, 0xc1, 0x38, 0x35, 0x97, + 0xfa, 0xd8, 0x11, 0x93, 0xc4, 0xc1, 0xb1, 0x6e, 0x6a, 0x90, 0xe2, 0xd5, 0x07, + 0xcd, 0xfe, 0x6f, 0xbd, 0xaa, 0x86, 0x16, 0x3e, 0x9c, 0xf5, 0xde, 0x31, 0x00, + 0xfb, 0xca, 0x7e, 0x8d, 0xa0, 0x47, 0xb0, 0x90, 0xdb, 0x9f, 0x37, 0x95, 0x2f, + 0xbf, 0xee, 0x76, 0xaf, 0x61, 0x66, 0x81, 0x90, 0xbd, 0x52, 0xed, 0x49, 0x0e, + 0x67, 0x7b, 0x51, 0x5d, 0x01, 0x43, 0x18, 0xb4, 0x36, 0xba, 0x91, 0x21, 0xa3, + 0x05, 0x9e, 0x03, 0x65, 0x0d, 0xf3, 0xa8, 0x68, 0x5c, 0x8c, 0x3e, 0x8a, 0x77, + 0x8f, 0x49, 0x1d, 0x81, 0x6f, 0x6c, 0x2b, 0x55, 0x13, 0x25, 0xc8, 0x08, 0x0a, + 0x80, 0x78, 0x99, 0x97, 0x3e, 0xb9, 0x3c, 0x5e, 0x81, 0x9a, 0xad, 0x66, 0x94, + 0x13, 0xf8, 0x38, 0x79, 0x33, 0xad, 0x15, 0x84, 0xaa, 0x35, 0xe4, 0x3f, 0x4e, + 0xcd, 0x1e, 0x2d, 0x04, 0x07, 0xfb, 0xc4, 0x03, 0x03, 0xa9, 0x4d, 0x73, 0x1e, + 0x7c, 0xf5, 0x45, 0xa2, 0x62, 0x77, 0xca, 0xad, 0x39, 0x83, 0x7f, 0x1e, 0x6a, + 0x69, 0x1c, 0x2f, 0xf1, 0xe3, 0x23, 0x8a, 0x20, 0xc2, 0x03, 0x92, 0x54, 0x4d, + 0x63, 0x59, 0xeb, 0x23, 0xfa, 0xf3, 0x8a, 0x08, 0x22, 0xda, 0x36, 0xce, 0x42, + 0x6c, 0x4a, 0x2f, 0xbe, 0xff, 0xeb, 0x0a, 0x8a, 0x2e, 0x29, 0x7a, 0x9d, 0x19, + 0xba, 0x15, 0x02, 0x45, 0x90, 0xe3, 0x32, 0x9d, 0x9f, 0xa9, 0x26, 0x1f, 0x99, + 0x38, 0xa4, 0x03, 0x2d, 0xd3, 0x46, 0x06, 0xc9, 0xcf, 0x9f, 0x3d, 0xd3, 0x3e, + 0x57, 0x6f, 0x05, 0xcd, 0x1d, 0xd6, 0x81, 0x1c, 0x62, 0x98, 0x75, 0x7d, 0x77, + 0xd9, 0xe8, 0x10, 0xab, 0xdb, 0x22, 0x6a, 0xfc, 0xaa, 0x43, 0x46, 0xa6, 0x56, + 0x0f, 0x89, 0x32, 0xb3, 0x18, 0x1f, 0xd3, 0x55, 0xd5, 0xd3, 0x91, 0x97, 0x61, + 0x83, 0xf8, 0xd9, 0x93, 0x88, 0x83, 0x96, 0x32, 0xd6, 0x35, 0x4f, 0x66, 0x6d, + 0x09, 0xd3, 0xe5, 0x62, 0x9e, 0xa1, 0x97, 0x37, 0x38, 0x86, 0x13, 0xd3, 0x8a, + 0x34, 0xfd, 0x0f, 0x6e, 0x50, 0xee, 0x5a, 0x0c, 0xc9, 0x67, 0x71, 0x77, 0xf5, + 0x00, 0x28, 0xc1, 0x41, 0x37, 0x81, 0x87, 0xbd, 0x28, 0x19, 0x40, 0x3f, 0xc5, + 0x34, 0xf8, 0x00, 0x76, 0xe9, 0x38, 0x0c, 0xb4, 0x96, 0x4d, 0x3b, 0x6b, 0x45, + 0x81, 0x9d, 0x3b, 0x8e, 0x9c, 0xaf, 0x54, 0xf0, 0x51, 0x85, 0x2d, 0x67, 0x1b, + 0xf8, 0xc1, 0xff, 0xde, 0x2d, 0x15, 0x10, 0x75, 0x64, 0x18, 0xcb, 0x48, 0x10, + 0x93, 0x6a, 0xa5, 0x7e, 0x69, 0x65, 0xd6, 0xfb, 0x65, 0x6a, 0x76, 0x0b, 0x7f, + 0x19, 0xad, 0xf9, 0x6c, 0x17, 0x34, 0x88, 0x55, 0x21, 0x93, 0xb1, 0x47, 0xee, + 0x58, 0x85, 0x80, 0x33, 0xda, 0xc7, 0xcd, 0x0e, 0xb2, 0x04, 0xc0, 0x64, 0x90, + 0xbb, 0xde, 0xdf, 0x5f, 0x75, 0x71, 0xac, 0xb2, 0xeb, 0xe7, 0x6a, 0xce, 0xf3, + 0xf2, 0xa0, 0x1e, 0xe9, 0x87, 0x48, 0x6d, 0xfe, 0x6c, 0x3f, 0x0a, 0x5e, 0x23, + 0x4c, 0x12, 0x72, 0x58, 0xf9, 0x7a, 0x28, 0xfb, 0x5d, 0x16, 0x4a, 0x81, 0x76, + 0xbe, 0x94, 0x6b, 0x80, 0x97, 0xd0, 0xe3, 0x17, 0x28, 0x7f, 0x33, 0xbf, 0x9c, + 0x16, 0xf9, 0xa5, 0x45, 0x40, 0x9c, 0xe2, 0x9b, 0x1f, 0x42, 0x73, 0x72, 0x5f, + 0xc0, 0xdf, 0x02, 0xa0, 0x4e, 0xba, 0xe1, 0x78, 0xb3, 0x41, 0x4f, 0xb0, 0xa8, + 0x2d, 0x50, 0xde, 0xb0, 0x9f, 0xcf, 0x4e, 0x6e, 0xe9, 0xd1, 0x80, 0xff, 0x4f, + 0x56, 0xff, 0x3b, 0xc1, 0xd3, 0x60, 0x1f, 0xc2, 0xdc, 0x90, 0xd8, 0x14, 0xc3, + 0x25, 0x6f, 0x49, 0x67, 0xd3, 0xa8, 0xd6, 0x4c, 0x83, 0xfe, 0xa3, 0x39, 0xc5, + 0x1f, 0x5a, 0x8e, 0x58, 0x01, 0xfb, 0xb9, 0x78, 0x35, 0x58, 0x1b, 0x60, 0x24, + 0x65, 0xde, 0xe0, 0x4b, 0x59, 0x22, 0xc2, 0x76, 0x1b, 0x54, 0x24, 0x5b, 0xec, + 0x0c, 0x9e, 0xef, 0x2d, 0xb9, 0x7d, 0x22, 0xb2, 0xb3, 0x55, 0x6c, 0xc9, 0x69, + 0xfb, 0xb1, 0x3d, 0x06, 0x50, 0x97, 0x65, 0xa5, 0x2b, 0x3f, 0xac, 0x54, 0xb9, + 0x3f, 0x42, 0x1b, 0xf0, 0x8e, 0x18, 0xd5, 0x2d, 0xdd, 0x52, 0xcc, 0x1c, 0x8c, + 0xa8, 0xad, 0xfa, 0xcc, 0xab, 0x7e, 0x5c, 0xc2, 0xf4, 0x57, 0x3f, 0xbb, 0xf8, + 0x23, 0x9b, 0xb0, 0xb8, 0xae, 0xdb, 0xf8, 0xda, 0xd1, 0x62, 0x82, 0xda, 0x5c, + 0x91, 0x25, 0xdb, 0xa1, 0xc0, 0x59, 0xd0, 0xdf, 0x8a, 0xbf, 0x62, 0x10, 0x78, + 0xf0, 0x2d, 0x6c, 0x4b, 0xc8, 0x6d, 0x40, 0x84, 0x5a, 0xc1, 0xd5, 0x97, 0x10, + 0xc4, 0x5f, 0x07, 0xd5, 0x85, 0xeb, 0x48, 0xb3, 0x2f, 0xc0, 0x16, 0x7b, 0xa2, + 0x56, 0xe7, 0x3c, 0xa3, 0xb9, 0x31, 0x1c, 0x62, 0xd1, 0x09, 0x49, 0x79, 0x57, + 0xd8, 0xdb, 0xe1, 0x0a, 0xa3, 0xe8, 0x66, 0xb4, 0x0c, 0x0b, 0xaa, 0x2b, 0xc4, + 0x92, 0xc1, 0x9a, 0xd1, 0xe6, 0x37, 0x2d, 0x96, 0x22, 0xbf, 0x16, 0x3f, 0xbf, + 0xfe, 0xae, 0xee, 0x79, 0x6a, 0x3c, 0xd9, 0xb6, 0xfb, 0xbf, 0xa4, 0xd7, 0x92, + 0xf3, 0x4d, 0x7f, 0xd6, 0xe7, 0x63, 0xcd, 0x58, 0x59, 0xdd, 0x26, 0x83, 0x3d, + 0x21, 0xd9, 0xbc, 0x54, 0x52, 0xbd, 0x19, 0x51, 0x5d, 0xff, 0x9f, 0x49, 0x95, + 0xb3, 0x5b, 0xc0, 0xc1, 0xf8, 0x76, 0xe6, 0xad, 0x11, 0xf2, 0x45, 0x2d, 0xc9, + 0xae, 0x85, 0xae, 0xc0, 0x1f, 0xc5, 0x6f, 0x8c, 0xbf, 0xda, 0x75, 0xa7, 0x72, + 0x7b, 0x75, 0xeb, 0xbd, 0x6b, 0xbf, 0xfb, 0x43, 0xb6, 0x3a, 0x3b, 0x1b, 0x67, + 0x1e, 0x40, 0xfe, 0xb0, 0xdb, 0x00, 0x29, 0x74, 0xa3, 0xc3, 0xb1, 0xa7, 0x88, + 0x56, 0x72, 0x31, 0xbf, 0x63, 0x99, 0xff, 0x89, 0x23, 0x69, 0x81, 0x14, 0x9d, + 0x42, 0x38, 0x02, 0xd2, 0x34, 0x1a, 0x3b, 0xed, 0xb9, 0xdd, 0xcb, 0xac, 0x1f, + 0xe7, 0xb6, 0x43, 0x5e, 0x14, 0x79, 0xc7, 0x2e, 0x70, 0x89, 0xd0, 0x29, 0xe7, + 0xfb, 0xba, 0xf3, 0xcf, 0x37, 0xe9, 0xb9, 0xa6, 0xb7, 0x76, 0x79, 0x1e, 0x4c, + 0x5e, 0x6f, 0xda, 0x57, 0xe8, 0xd5, 0xf1, 0x4c, 0xd8, 0x2d, 0x6b, 0x59, 0xe8, + 0x75, 0x02, 0x00, 0x84, 0xaf, 0x07, 0x21, 0x9c, 0x7c, 0x0e, 0xe7, 0xfc, 0x7b, + 0xfc, 0x79, 0xf3, 0x25, 0x64, 0x4e, 0x4d, 0xf4, 0xc0, 0xd7, 0xdb, 0x08, 0xe9, + 0xf0, 0xbd, 0x02, 0x49, 0x43, 0xc7, 0x05, 0xab, 0xff, 0x89, 0x94, 0xbf, 0xa6, + 0x05, 0xcf, 0xbc, 0x7e, 0xd7, 0x46, 0xa7, 0xd3, 0xf7, 0xc3, 0x7d, 0x9e, 0x8b, + 0xdc, 0x43, 0x3b, 0x7d, 0x79, 0xe0, 0x8a, 0x12, 0xf7, 0x38, 0xa8, 0xf0, 0xdb, + 0xdd, 0xfe, 0xf2, 0xf2, 0x65, 0x7e, 0xf3, 0xe4, 0x7d, 0x1b, 0x0f, 0xd1, 0x1e, + 0x6a, 0x13, 0x31, 0x1f, 0xb7, 0x99, 0xc7, 0x9c, 0x64, 0x1d, 0x9d, 0xa4, 0x3b, + 0x33, 0xe7, 0xad, 0x01, 0x2e, 0x28, 0x25, 0x53, 0x98, 0x78, 0x92, 0x62, 0x27, + 0x5f, 0x11, 0x75, 0xbe, 0x84, 0x62, 0xc0, 0x14, 0x91, 0xc4, 0xd8, 0x42, 0x40, + 0x6d, 0x0e, 0xc4, 0x28, 0x2c, 0x95, 0x26, 0x17, 0x4a, 0x09, 0x87, 0x8f, 0xe8, + 0xfd, 0xde, 0x33, 0xa2, 0x96, 0x04, 0xe5, 0xe5, 0xe7, 0xb2, 0xa0, 0x25, 0xd6, + 0x65, 0x0b, 0x97, 0xdb, 0xb5, 0x2b, 0xef, 0xb5, 0x9b, 0x1d, 0x30, 0xa5, 0x74, + 0x33, 0xb0, 0xa3, 0x51, 0x47, 0x44, 0x44, 0x09, 0x9d, 0xaa, 0x37, 0x10, 0x46, + 0x61, 0x32, 0x60, 0xcf, 0x33, 0x54, 0xcf, 0xcd, 0xad, 0xa6, 0x63, 0xec, 0xe8, + 0x24, 0xff, 0xd7, 0xe4, 0x43, 0x93, 0x88, 0x6a, 0x86, 0x16, 0x5d, 0xdd, 0xdf, + 0x8c, 0x35, 0xa2, 0xd2, 0x70, 0x84, 0x6b, 0x9d, 0xbe, 0x00, 0x5c, 0xda, 0x16, + 0xaf, 0x44, 0x08, 0xf3, 0xab, 0x06, 0xa9, 0x16, 0xee, 0xeb, 0x9c, 0x95, 0x94, + 0xb7, 0x04, 0x24, 0xa4, 0xc1, 0xd1, 0x71, 0x29, 0x5b, 0x67, 0x63, 0xb2, 0x2f, + 0x47, 0xf8, 0x0b, 0x53, 0xcc, 0xbb, 0x90, 0x4b, 0xd6, 0x8f, 0xd6, 0x5f, 0xbd, + 0x3f, 0xbd, 0xea, 0x10, 0x35, 0xe9, 0x8c, 0x21, 0xa7, 0xdb, 0xc9, 0x1a, 0x9b, + 0x5b, 0xc7, 0x69, 0x0f, 0x05, 0xec, 0x31, 0x7c, 0x97, 0xf8, 0x76, 0x4e, 0xb4, + 0x8e, 0x91, 0x1d, 0x42, 0x8e, 0xc8, 0xd8, 0x61, 0xb7, 0x08, 0xe8, 0x29, 0x8a, + 0xcb, 0x62, 0x15, 0x51, 0x45, 0x15, 0x5a, 0xe9, 0x5f, 0x0a, 0x1d, 0x15, 0x01, + 0x03, 0x47, 0x53, 0x14, 0x6e, 0x22, 0xd0, 0x5f, 0x58, 0x6d, 0x7f, 0x6b, 0x4f, + 0xe1, 0x2d, 0xad, 0x9a, 0x17, 0xf5, 0xdb, 0x70, 0xb1, 0xdb, 0x96, 0xb8, 0xd9, + 0xa8, 0x3e, 0xda, 0xdc, 0x96, 0x6c, 0x8a, 0x54, 0x66, 0xb6, 0x1f, 0xc9, 0x98, + 0xc3, 0x1f, 0x10, 0x70, 0xd9, 0xa5, 0xc9, 0xa6, 0xd2, 0x68, 0xd3, 0x04, 0xfe, + 0x6b, 0x8f, 0xd3, 0xb4, 0x01, 0x03, 0x48, 0x61, 0x1a, 0xbd, 0xcb, 0xd4, 0x9f, + 0xe4, 0xf8, 0x5b, 0x62, 0x3c, 0x78, 0x28, 0xc7, 0x13, 0x82, 0xe1, 0x03, 0x4e, + 0xa6, 0x7b, 0xc8, 0xae, 0x97, 0x40, 0x4b, 0x0c, 0x50, 0xb2, 0xfa, 0xda, 0x0a, + 0xbf, 0x4f, 0xd3, 0xa8, 0xbf, 0x7f, 0x3c, 0x0b, 0x38, 0xb2, 0xb0, 0x8d, 0xd4, + 0xba, 0xe0, 0x8a, 0xc8, 0xf5, 0x09, 0xc5, 0x97, 0x22, 0x39, 0x43, 0x9c, 0x3c, + 0x08, 0x02, 0x54, 0x14, 0x94, 0x36, 0x49, 0x30, 0x55, 0x21, 0x32, 0x6b, 0xde, + 0x08, 0x56, 0x30, 0x86, 0x46, 0x29, 0x29, 0x1b, 0xae, 0x25, 0xff, 0x88, 0x22, + 0xa1, 0x4c, 0x4b, 0x66, 0x6a, 0x92, 0x59, 0xad, 0x0d, 0x00, 0x00, + ], + txid: [ + 0x4d, 0x07, 0xfd, 0x00, 0x8b, 0xe8, 0xfb, 0xd6, 0x85, 0x4b, 0x10, 0x19, 0x23, + 0xcc, 0xbb, 0x18, 0xef, 0x5c, 0x11, 0xd7, 0xce, 0xe3, 0xa6, 0x16, 0x63, 0xc6, + 0x9a, 0x32, 0x01, 0x69, 0xaa, 0xf7, + ], + auth_digest: [ + 0x92, 0x6a, 0x20, 0x24, 0xb5, 0x7b, 0x11, 0x48, 0x33, 0xf7, 0x2a, 0x38, 0x7e, + 0x67, 0x2a, 0x60, 0x65, 0x6e, 0xf3, 0x28, 0x0b, 0xf0, 0x7e, 0x3b, 0x6d, 0x15, + 0xbd, 0x31, 0x49, 0x04, 0x18, 0x10, + ], + amounts: vec![221157483985475, 1614190427764494], + script_pubkeys: vec![vec![], vec![0x53, 0x51]], + transparent_input: Some(0), + sighash_shielded: [ + 0xcb, 0x8b, 0xa0, 0x7a, 0x5a, 0x52, 0x61, 0x7a, 0xc3, 0xdf, 0x07, 0x10, 0x2c, + 0x29, 0x6e, 0xa9, 0x4c, 0x86, 0xf4, 0x19, 0x73, 0x9b, 0x78, 0x19, 0xeb, 0xdc, + 0xe6, 0x39, 0x12, 0x25, 0x6d, 0x8e, + ], + sighash_all: Some([ + 0x54, 0x40, 0x23, 0x1a, 0x91, 0xf3, 0xe2, 0x45, 0x65, 0x10, 0x40, 0xcd, 0x8a, + 0x4e, 0xbd, 0x83, 0xc7, 0x16, 0x87, 0x2b, 0x57, 0xa7, 0x8d, 0x6f, 0x98, 0xfe, + 0x9b, 0x6c, 0x49, 0x50, 0x4c, 0xd8, + ]), + sighash_none: Some([ + 0xac, 0x2c, 0x64, 0xd6, 0x25, 0x46, 0x8d, 0x2b, 0x00, 0xa7, 0xd9, 0x4d, 0x94, + 0x7d, 0xae, 0x2c, 0x42, 0x5b, 0x67, 0x60, 0xed, 0x2a, 0x9b, 0xe1, 0x69, 0xde, + 0xd5, 0x67, 0xb8, 0xe2, 0x5d, 0x3c, + ]), + sighash_single: Some([ + 0xdb, 0x2d, 0x10, 0x37, 0xda, 0x82, 0x73, 0x6a, 0x90, 0x9d, 0x40, 0x84, 0xe5, + 0x5d, 0xb2, 0x05, 0x1d, 0xcd, 0x98, 0x5c, 0x6a, 0xd2, 0xf7, 0x86, 0x0f, 0x21, + 0x9a, 0xd0, 0x54, 0x7d, 0xd6, 0xac, + ]), + sighash_all_anyone: Some([ + 0x14, 0xc7, 0x36, 0x94, 0x5a, 0x17, 0x3c, 0x1c, 0x08, 0x1f, 0x09, 0xf7, 0xd1, + 0x77, 0x66, 0xa7, 0x64, 0xe1, 0xd8, 0x14, 0x97, 0xdf, 0x65, 0xbc, 0x75, 0xd9, + 0x4f, 0x15, 0xfa, 0x26, 0xe9, 0xc3, + ]), + sighash_none_anyone: Some([ + 0x5d, 0x31, 0x23, 0xf5, 0x3c, 0x30, 0x88, 0x1a, 0x81, 0xda, 0x72, 0xb3, 0xf7, + 0x41, 0xa3, 0x3e, 0xc7, 0xc3, 0x8f, 0x22, 0x04, 0xea, 0x8a, 0x28, 0x6e, 0xca, + 0xf8, 0x80, 0xde, 0xd5, 0x3a, 0xea, + ]), + sighash_single_anyone: Some([ + 0x1e, 0xad, 0x3e, 0xb3, 0x74, 0x5f, 0xb6, 0xda, 0x49, 0xb3, 0xe8, 0x8c, 0xb5, + 0xf5, 0x1b, 0xdc, 0xfc, 0xb1, 0xbf, 0x95, 0xff, 0xdf, 0xd4, 0x2c, 0xdc, 0xd2, + 0x96, 0x22, 0x79, 0x7f, 0x39, 0x0c, + ]), + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x47, + 0x70, 0x1c, 0x85, 0x97, 0x65, 0x43, 0x11, 0x02, 0xa6, 0xfa, 0x0b, 0xf2, 0x99, + 0x99, 0x56, 0xfb, 0xfd, 0x0e, 0xe6, 0x8e, 0xc3, 0x6e, 0x46, 0x88, 0x80, 0x9a, + 0xe2, 0x31, 0xeb, 0x8b, 0xc4, 0x36, 0x9f, 0x5f, 0xe1, 0x57, 0x3f, 0x57, 0xe0, + 0x99, 0xd9, 0xc0, 0x99, 0x01, 0x05, 0x51, 0x52, 0xac, 0x00, 0xac, 0x11, 0x95, + 0x6a, 0x8a, 0xe9, 0x05, 0xea, 0xd8, 0x69, 0x54, 0x54, 0x7c, 0x44, 0x8a, 0xe4, + 0x3d, 0x31, 0x5e, 0x66, 0x9c, 0x42, 0x42, 0xda, 0x56, 0x59, 0x38, 0xf4, 0x17, + 0xbf, 0x43, 0xce, 0x7b, 0x2b, 0x30, 0xb1, 0xcd, 0x40, 0x18, 0x38, 0x8e, 0x06, + 0x51, 0x6a, 0x6a, 0xac, 0x6a, 0x00, 0x87, 0x7a, 0x59, 0x25, 0x00, 0x00, 0x00, + 0x00, 0x04, 0x23, 0xc7, 0x84, 0xc5, 0xb8, 0x7c, 0xc8, 0xa3, 0xc6, 0x80, 0xc7, + 0xb8, 0xc6, 0x9c, 0xc7, 0xba, 0xc5, 0xa1, 0xc4, 0xb5, 0xc7, 0x82, 0xc4, 0x84, + 0xc3, 0x87, 0xc7, 0x9c, 0xc4, 0x82, 0xc3, 0xb3, 0xc5, 0x97, 0xc8, 0x96, 0x01, + 0x7d, 0x04, 0x25, 0x3c, 0x63, 0x63, 0x6e, 0x16, 0x67, 0x60, 0xed, 0xbf, 0x73, + 0x94, 0x77, 0xe6, 0xe3, 0x0f, 0xfb, 0xde, 0x57, 0xf2, 0x88, 0x08, 0x43, 0x4c, + 0xf5, 0xb6, 0x60, 0xa1, 0xad, 0x28, 0x85, 0x7a, 0xc9, 0xd6, 0xc9, 0x27, 0x6a, + 0x87, 0x90, 0x80, 0x0d, 0xca, 0x8a, 0x8c, 0x31, 0x44, 0x3c, 0x10, 0x34, 0xd1, + 0xf3, 0x1a, 0x0f, 0xd2, 0x02, 0xe6, 0xa0, 0x9c, 0xa8, 0x7c, 0xc2, 0xd5, 0xca, + 0x02, 0xa9, 0x13, 0x8d, 0xd1, 0x78, 0xe0, 0xab, 0x58, 0xe8, 0x52, 0x44, 0xa7, + 0x2e, 0xdf, 0x72, 0x7d, 0x00, 0x06, 0x14, 0xe8, 0x35, 0x62, 0xf8, 0x2d, 0xfd, + 0x40, 0x5b, 0x54, 0xa4, 0x5e, 0xb3, 0x2c, 0x16, 0x54, 0x48, 0xd4, 0xd5, 0xd6, + 0x1c, 0xa2, 0x85, 0x95, 0x85, 0x36, 0x9f, 0x53, 0xf1, 0xa1, 0x37, 0xe9, 0xe8, + 0x2b, 0x67, 0xb8, 0xfd, 0xaf, 0x01, 0xbd, 0xa5, 0x4a, 0x31, 0x73, 0x11, 0x89, + 0x6a, 0xe1, 0x02, 0x80, 0xa0, 0x32, 0x44, 0x0c, 0x42, 0x0a, 0x42, 0x1e, 0x94, + 0x4d, 0x1e, 0x95, 0x2b, 0x00, 0xd6, 0x41, 0x5b, 0xc4, 0xaa, 0xc2, 0xb7, 0xc7, + 0x90, 0xce, 0x87, 0xc6, 0x8a, 0xcd, 0xb7, 0xe1, 0x9a, 0xbe, 0xc8, 0xb4, 0xc2, + 0xaa, 0x29, 0x41, 0xc6, 0x82, 0xe1, 0x9b, 0xab, 0xc6, 0xb3, 0xc6, 0x88, 0xc8, + 0xac, 0xc6, 0x80, 0xc5, 0x94, 0xc6, 0x94, 0xe1, 0x9a, 0xaf, 0xce, 0x88, 0xc7, + 0xb8, 0xc8, 0xa9, 0x33, 0xc3, 0xbd, 0xc8, 0x93, 0xc4, 0xb5, 0xc7, 0xb9, 0x31, + 0x4e, 0xc5, 0xa8, 0xc7, 0x88, 0xc8, 0x99, 0xc6, 0x97, 0xc5, 0x91, 0xe1, 0x9a, + 0xa3, 0xc6, 0x8c, 0xc7, 0xa7, 0xc6, 0xbf, 0x4a, 0xc7, 0x89, 0xc5, 0x89, 0xc2, + 0xa9, 0xc8, 0x87, 0xc7, 0x86, 0x65, 0xc8, 0x99, 0xc3, 0x84, 0xc7, 0xa7, 0x62, + 0xc3, 0xb5, 0xe1, 0x9a, 0xad, 0xc6, 0xbb, 0xc6, 0x98, 0xe2, 0xb1, 0xa0, 0xc5, + 0xbb, 0xc6, 0xb6, 0xe2, 0xb1, 0xa6, 0xc3, 0x8e, 0xe1, 0x9a, 0xb9, 0x3a, 0xc8, + 0x86, 0xc6, 0x87, 0x52, 0xc4, 0xa4, 0xc3, 0x9f, 0xc5, 0x8b, 0x7d, 0xe1, 0x9a, + 0xb6, 0xc5, 0xb8, 0xc8, 0x9e, 0xc3, 0x8d, 0xe2, 0xb1, 0xaa, 0xc8, 0xb0, 0xc7, + 0xaf, 0x26, 0xc5, 0x94, 0xe1, 0x9a, 0xb1, 0xc8, 0xb1, 0xc5, 0xa3, 0xcd, 0xb4, + 0xc8, 0x97, 0xc3, 0xb2, 0xce, 0x8c, 0xc3, 0xba, 0xc4, 0xb0, 0xc5, 0xb6, 0xc4, + 0x8b, 0x74, 0x72, 0xc3, 0xae, 0x35, 0xc6, 0xa3, 0xc4, 0x98, 0xc7, 0x94, 0xc8, + 0x98, 0xc4, 0xaa, 0x42, 0xe1, 0x9b, 0x95, 0xc5, 0x97, 0xc7, 0xaa, 0x74, 0xc5, + 0x9e, 0x2a, 0xc4, 0x95, 0xc2, 0xb7, 0xc5, 0x8b, 0xe1, 0x9a, 0xa4, 0x5a, 0x04, + 0x37, 0xb7, 0xb2, 0x19, 0xb4, 0xa3, 0x61, 0x6d, 0xf2, 0xd8, 0xe7, 0x7a, 0x20, + 0x5c, 0x89, 0x95, 0x91, 0x07, 0x76, 0xd5, 0xfa, 0x3d, 0x32, 0xde, 0xe8, 0x0d, + 0xb6, 0x01, 0xf3, 0xed, 0xd3, 0xaf, 0xc8, 0x5f, 0xb7, 0x56, 0x0c, 0x53, 0x48, + 0xc6, 0x9c, 0x41, 0x93, 0xa8, 0xbb, 0xfd, 0x05, 0x2c, 0xbf, 0x7e, 0x1c, 0xfc, + 0xb7, 0x3c, 0xb0, 0x33, 0x97, 0x93, 0x55, 0xdb, 0x69, 0xa6, 0xcc, 0xb4, 0x7b, + 0xe2, 0x7b, 0xe4, 0x2d, 0x4d, 0x92, 0x5b, 0x98, 0xe2, 0xe8, 0xa7, 0xb3, 0x4d, + 0x26, 0xe0, 0x96, 0xd8, 0xb1, 0xe4, 0x95, 0x4b, 0x54, 0x81, 0x3b, 0xb3, 0x3f, + 0x08, 0xd5, 0x62, 0xba, 0x51, 0x3f, 0xee, 0x1b, 0x09, 0xc0, 0xfc, 0xd5, 0x16, + 0x05, 0x54, 0x19, 0x47, 0x4d, 0xd7, 0xfd, 0xa0, 0x38, 0xa8, 0x1c, 0x84, 0xea, + 0x7b, 0x94, 0x68, 0x28, 0x7f, 0x0e, 0xb0, 0xc1, 0x0c, 0x4b, 0x13, 0x25, 0x20, + 0x19, 0x4d, 0x3d, 0x8d, 0x53, 0x51, 0xfc, 0x10, 0xd0, 0x9c, 0x15, 0xc8, 0xcc, + 0x10, 0x1a, 0xa1, 0x66, 0x0c, 0xd7, 0xde, 0xdd, 0xca, 0x3b, 0x40, 0xfa, 0xee, + 0x54, 0x3f, 0x2d, 0x44, 0x34, 0x58, 0xb1, 0xcf, 0xe1, 0xb9, 0xd4, 0x63, 0x91, + 0xf8, 0x47, 0x49, 0x05, 0xc5, 0xf7, 0xf2, 0x13, 0x55, 0x15, 0x79, 0x16, 0x71, + 0xe5, 0x35, 0xa1, 0x74, 0xd6, 0x7b, 0x5d, 0x13, 0xf8, 0x1f, 0x46, 0xdf, 0x7a, + 0x90, 0x2a, 0x40, 0xfc, 0xb7, 0x3c, 0xb0, 0x33, 0x97, 0x93, 0x55, 0xdb, 0x69, + 0xa6, 0xcc, 0xb4, 0x7b, 0xe2, 0x7b, 0xe4, 0x2d, 0x4d, 0x92, 0x5b, 0x98, 0xe2, + 0xe8, 0xa7, 0xb3, 0x4d, 0x26, 0xe0, 0x96, 0xd8, 0xb1, 0xca, 0x0d, 0x67, 0xf6, + 0xe5, 0x54, 0x12, 0x47, 0x39, 0xf8, 0x05, 0xaf, 0x87, 0x6a, 0xee, 0xde, 0x53, + 0xaa, 0x8b, 0x0f, 0x8e, 0x56, 0x04, 0xa7, 0x3c, 0x30, 0xcb, 0xd0, 0x9d, 0xad, + 0x96, 0x3d, 0x6f, 0x8a, 0x5d, 0xcc, 0x40, 0xde, 0xf4, 0x07, 0x97, 0x34, 0x21, + 0x13, 0xba, 0x20, 0x6f, 0xae, 0x8e, 0xbe, 0x4f, 0x3b, 0xc3, 0xca, 0xf6, 0x92, + 0x59, 0xe4, 0x62, 0xef, 0xf9, 0xba, 0x8b, 0x3f, 0xcc, 0x95, 0xbe, 0xce, 0x3d, + 0xfd, 0xfc, 0xe5, 0xcf, 0x9e, 0x1b, 0x41, 0x96, 0xa6, 0x13, 0x2e, 0x53, 0x11, + 0xfa, 0xac, 0xd6, 0x21, 0xef, 0xee, 0x9f, 0x66, 0x2d, 0xb4, 0x9a, 0x3c, 0x6e, + 0x14, 0x2c, 0x18, 0x4a, 0x79, 0x6c, 0x2b, 0xb9, 0xf0, 0x3a, 0x95, 0x35, 0x72, + 0xba, 0x5d, 0x42, 0x87, 0xc0, 0xce, 0xfb, 0xfc, 0xb7, 0x3c, 0xb0, 0x33, 0x97, + 0x93, 0x55, 0xdb, 0x69, 0xa6, 0xcc, 0xb4, 0x7b, 0xe2, 0x7b, 0xe4, 0x2d, 0x4d, + 0x92, 0x5b, 0x98, 0xe2, 0xe8, 0xa7, 0xb3, 0x4d, 0x26, 0xe0, 0x96, 0xd8, 0xb1, + 0x27, 0x43, 0x3f, 0x9e, 0x49, 0xd3, 0xaa, 0x09, 0xe3, 0x56, 0xd8, 0xd6, 0x6d, + 0x0c, 0x01, 0x21, 0xe9, 0x1a, 0x3c, 0x4a, 0xa3, 0xf2, 0x7f, 0xa1, 0xb6, 0x33, + 0x96, 0xe2, 0xb4, 0x1d, 0xb9, 0x08, 0xfd, 0xab, 0x8b, 0x18, 0xcc, 0x73, 0x04, + 0xe9, 0x4e, 0x97, 0x05, 0x68, 0xf9, 0x42, 0x1c, 0x0d, 0xbb, 0xba, 0xf8, 0x45, + 0x98, 0xd9, 0x72, 0xb0, 0x53, 0x4f, 0x48, 0xa5, 0xe5, 0x26, 0x70, 0x43, 0x3a, + 0xf1, 0xb8, 0x24, 0x4d, 0x83, 0x88, 0x8d, 0x72, 0x32, 0xfa, 0x09, 0x3f, 0x81, + 0x5e, 0xa0, 0x2f, 0x9a, 0xb0, 0x31, 0xe1, 0x64, 0x6a, 0x5d, 0x62, 0x85, 0xdd, + 0x92, 0x57, 0x27, 0x81, 0x10, 0xf0, 0x38, 0x31, 0x64, 0x7d, 0xff, 0xf7, 0x23, + 0xe5, 0xe4, 0x3d, 0xc1, 0x48, 0xcb, 0x64, 0x97, 0x0e, 0x32, 0x23, 0xfc, 0xb7, + 0x3c, 0xb0, 0x33, 0x97, 0x93, 0x55, 0xdb, 0x69, 0xa6, 0xcc, 0xb4, 0x7b, 0xe2, + 0x7b, 0xe4, 0x2d, 0x4d, 0x92, 0x5b, 0x98, 0xe2, 0xe8, 0xa7, 0xb3, 0x4d, 0x26, + 0xe0, 0x96, 0xd8, 0xb1, 0x01, 0xf5, 0xcd, 0xe5, 0xf0, 0x46, 0x80, 0xbb, 0xfe, + 0xd8, 0x7f, 0x6c, 0xf4, 0x29, 0xfb, 0x27, 0xad, 0x6b, 0xab, 0xe7, 0x91, 0x76, + 0x66, 0x11, 0xcf, 0x5b, 0xc2, 0x0e, 0x48, 0xbe, 0xf1, 0x19, 0x25, 0x9b, 0x9b, + 0x8a, 0x0e, 0x39, 0xc3, 0xdf, 0x28, 0xcb, 0x95, 0x82, 0xea, 0x33, 0x86, 0x01, + 0xcd, 0xc4, 0x81, 0xb3, 0x2f, 0xb8, 0x2a, 0xde, 0xeb, 0xb3, 0xda, 0xde, 0x25, + 0xd1, 0xa3, 0xdf, 0x00, 0xc4, 0xe1, 0x9b, 0x81, 0x75, 0xc8, 0xb6, 0xc5, 0x91, + 0x48, 0x21, 0xc3, 0x9b, 0xe1, 0x9b, 0x8e, 0xc8, 0xa7, 0xc7, 0x84, 0xc6, 0x8d, + 0x39, 0xc5, 0x9d, 0xc8, 0xba, 0xc4, 0x90, 0xc7, 0xad, 0xe2, 0xb1, 0xbd, 0xe2, + 0xb1, 0xbe, 0xc2, 0xa5, 0xc4, 0x8b, 0xe1, 0x9a, 0xb6, 0xe1, 0x9a, 0xac, 0xc5, + 0x95, 0xe1, 0x9b, 0xa6, 0x7d, 0xc7, 0xb8, 0xc6, 0x9d, 0xc2, 0xa4, 0xc6, 0xb8, + 0xc7, 0xa9, 0xc5, 0x86, 0xc8, 0x8d, 0xc2, 0xa5, 0xc4, 0x8f, 0xce, 0x86, 0xc5, + 0xb0, 0xc2, 0xa8, 0x51, 0xe1, 0x9b, 0x90, 0xc4, 0x93, 0xc6, 0xb7, 0xc8, 0xb8, + 0xc4, 0x8c, 0xe2, 0xb1, 0xa5, 0xe1, 0x9b, 0x83, 0xc9, 0x89, 0x40, 0xce, 0x84, + 0xc6, 0xb8, 0xc5, 0x80, 0xe1, 0x9b, 0x9e, 0xc7, 0xbe, 0xc5, 0xbd, 0xc6, 0xb3, + 0xe1, 0x9b, 0x91, 0xc3, 0x80, 0x7e, 0xc9, 0x86, 0xe2, 0xb1, 0xaf, 0xc4, 0x91, + 0xc2, 0xbd, 0xe1, 0x9b, 0xa4, 0xc5, 0x98, 0xc6, 0x85, 0xc4, 0x8e, 0xc7, 0x8a, + 0xc8, 0xb5, 0xc4, 0xaa, 0xc3, 0x93, 0xe1, 0x9b, 0x99, 0xc4, 0x9c, 0xe2, 0xb1, + 0xac, 0x2f, 0xc4, 0x87, 0xc3, 0xb3, 0x34, 0xc6, 0x9a, 0xe1, 0x9a, 0xb1, 0xcd, + 0xb0, 0xe1, 0x9b, 0xaf, 0xc5, 0xbf, 0xc7, 0x85, 0xc7, 0x88, 0xe2, 0xb1, 0xb2, + 0xc7, 0x94, 0xc5, 0xae, 0xc3, 0x87, 0xc8, 0xba, 0x5a, 0xc4, 0x83, 0xc7, 0xb7, + 0xe1, 0x9b, 0x96, 0xc7, 0x9d, 0x5a, 0x01, 0x14, 0x02, 0xa3, 0x2d, 0x23, 0x22, + 0x5f, 0x8e, 0x47, 0xe7, 0x42, 0xe4, 0x5b, 0x77, 0xba, 0x92, 0xf7, 0x7c, 0xdd, + 0x2a, 0xae, 0x00, 0x50, 0x60, 0x8d, 0x0a, 0x06, 0xde, 0x70, 0x44, 0xe3, 0x94, + 0xac, 0xf8, 0x01, 0xb6, 0xee, 0x94, 0xa8, 0x5d, 0x32, 0x19, 0x34, 0x60, 0x4e, + 0x47, 0x99, 0x70, 0x16, 0xb3, 0x04, 0xbd, 0xa0, 0x65, 0x5f, 0x62, 0x60, 0xae, + 0x11, 0xd2, 0x50, 0xdc, 0xa8, 0x87, 0x71, 0xd9, 0x0e, 0x71, 0xbd, 0xc0, 0xff, + 0xf7, 0x78, 0xca, 0x9b, 0x89, 0x02, 0x6d, 0x38, 0x8a, 0x0e, 0x77, 0x1d, 0xd2, + 0xcf, 0x77, 0x73, 0xb6, 0xba, 0x2a, 0x5f, 0x66, 0x48, 0x47, 0xbf, 0x70, 0x7f, + 0x2f, 0xc1, 0x0c, 0x98, 0xf2, 0xf0, 0x06, 0xec, 0x22, 0xcc, 0xb5, 0xa8, 0xc8, + 0xb7, 0xc4, 0x0c, 0x7c, 0x2d, 0x49, 0xa6, 0x63, 0x9b, 0x9f, 0x2c, 0xe3, 0x3c, + 0x25, 0xc0, 0x4b, 0xc4, 0x61, 0xe7, 0x44, 0xdf, 0xa5, 0x36, 0xb0, 0x0d, 0x94, + 0xba, 0xdd, 0xf4, 0xf4, 0xd1, 0x40, 0x44, 0xc6, 0x95, 0xa3, 0x38, 0x01, 0xfd, + 0x48, 0x01, 0xe1, 0x9b, 0xad, 0x5f, 0x48, 0xc6, 0x89, 0xc3, 0x9a, 0xe1, 0x9b, + 0xaf, 0xe2, 0xb1, 0xb1, 0xc6, 0x8e, 0x48, 0xc7, 0x83, 0xc2, 0xb9, 0xc5, 0x84, + 0x23, 0xc7, 0x85, 0xc8, 0xa5, 0xc5, 0xb9, 0xe1, 0x9a, 0xa2, 0xcd, 0xb3, 0xe1, + 0x9b, 0xad, 0xc3, 0xad, 0xe2, 0xb1, 0xae, 0xc5, 0x85, 0xc5, 0x82, 0xe1, 0x9a, + 0xb0, 0x23, 0xc7, 0x9e, 0xe2, 0xb1, 0xa4, 0xcd, 0xbe, 0xe1, 0x9b, 0x88, 0xc7, + 0xa7, 0xe1, 0x9b, 0xb0, 0x7d, 0xc6, 0xb5, 0xc5, 0xbc, 0x39, 0x67, 0xc9, 0x82, + 0xc6, 0x8c, 0xe2, 0xb1, 0xba, 0xc3, 0xae, 0xc6, 0xa2, 0xc4, 0xb4, 0x44, 0x65, + 0xcd, 0xbd, 0xc4, 0x87, 0xe1, 0x9b, 0x8b, 0xcd, 0xbb, 0x59, 0x3e, 0x61, 0xc7, + 0xb3, 0x74, 0x37, 0xc8, 0xb8, 0xc3, 0xa4, 0xc7, 0x81, 0xc3, 0xb1, 0xc8, 0xaa, + 0xc7, 0xbc, 0xc2, 0xb2, 0xc2, 0xbe, 0xc3, 0xab, 0xc5, 0xb5, 0xc6, 0x8f, 0xe1, + 0x9a, 0xa0, 0xc8, 0xa0, 0xc7, 0xae, 0xc3, 0x94, 0xe1, 0x9b, 0x85, 0xe1, 0x9b, + 0xad, 0xe2, 0xb1, 0xbc, 0xc6, 0xa4, 0xe1, 0x9a, 0xa1, 0xc5, 0xae, 0xc5, 0xa4, + 0xe2, 0xb1, 0xa7, 0xe1, 0x9a, 0xb5, 0xc4, 0xa1, 0x4c, 0xc7, 0xbe, 0xc5, 0xb8, + 0xe1, 0x9a, 0xbb, 0xc5, 0x87, 0xc4, 0x80, 0xe1, 0x9a, 0xa5, 0xc8, 0xa1, 0xc8, + 0x87, 0x7d, 0xc6, 0xbb, 0xe1, 0x9b, 0xa3, 0xc5, 0x85, 0xc2, 0xb0, 0xc7, 0xb5, + 0xc2, 0xab, 0xc2, 0xb2, 0xc6, 0x87, 0xc5, 0xb4, 0x63, 0xc9, 0x86, 0xe1, 0x9a, + 0xbc, 0xe1, 0x9b, 0x9d, 0xe1, 0x9a, 0xab, 0xc4, 0x9e, 0xc2, 0xa3, 0xc8, 0x9f, + 0xc6, 0xb9, 0xc7, 0x99, 0xc7, 0xa7, 0xc5, 0xac, 0xcd, 0xb4, 0xc6, 0x98, 0xc6, + 0x85, 0xc6, 0xa7, 0xc6, 0xbc, 0xc8, 0xbd, 0xc6, 0xa9, 0xc5, 0xa4, 0xc4, 0x8a, + 0x25, 0xce, 0x8c, 0xe1, 0x9b, 0x9c, 0xc4, 0xa9, 0xc4, 0x94, 0xe2, 0xb1, 0xaa, + 0xe1, 0x9b, 0x81, 0xc7, 0x9a, 0xc6, 0xa4, 0xc8, 0xbb, 0xe1, 0x9b, 0x97, 0xc5, + 0xa8, 0xc3, 0x87, 0xe2, 0xb1, 0xa5, 0x79, 0xe1, 0x9a, 0xa0, 0xc6, 0xbe, 0x6f, + 0xc3, 0xbb, 0xe2, 0xb1, 0xb6, 0x5b, 0xc3, 0xa1, 0xc6, 0x94, 0xce, 0x8c, 0xe1, + 0x9b, 0x94, 0xc3, 0xaf, 0xce, 0x87, 0xc5, 0xa3, 0xe1, 0x9a, 0xa1, 0x44, 0xe1, + 0x9b, 0x82, 0xc6, 0x86, 0x78, 0x41, 0x4f, 0xc4, 0xa0, 0xc6, 0x92, 0xe1, 0x9a, + 0xa0, 0xc8, 0xae, 0xc7, 0x97, 0x02, 0x57, 0x64, 0x27, 0xb0, 0x8a, 0x45, 0x0b, + 0x7a, 0x98, 0x63, 0x35, 0x00, 0x1e, 0x63, 0x21, 0x7b, 0x81, 0x31, 0x04, 0x2f, + 0x3a, 0xe0, 0x12, 0x19, 0x21, 0x33, 0x60, 0xfe, 0x9e, 0x20, 0x2c, 0x9e, 0x9c, + 0x9f, 0x64, 0xbb, 0x3a, 0x11, 0xcc, 0xac, 0x23, 0x04, 0x88, 0x6a, 0xe1, 0x01, + 0x0b, 0x0d, 0xfd, 0x9c, 0xb2, 0x29, 0x42, 0x34, 0x86, 0xf4, 0x99, 0x35, 0x9f, + 0x32, 0x0a, 0x30, 0xff, 0x48, 0x8f, 0x90, 0x41, 0x7f, 0xef, 0xc7, 0xcb, 0x9f, + 0xbc, 0x77, 0x7c, 0xbc, 0xf3, 0x8d, 0x79, 0x14, 0x27, 0xa0, 0x0d, 0x54, 0x3e, + 0x45, 0xf9, 0x97, 0x49, 0xcc, 0x4d, 0x61, 0xf2, 0xe8, 0xaa, 0xbf, 0xe9, 0x8b, + 0xd9, 0x05, 0xfa, 0x39, 0x95, 0x1b, 0x33, 0xea, 0x76, 0x9c, 0x45, 0xab, 0x95, + 0x31, 0xc5, 0x72, 0x09, 0x86, 0x2a, 0xd1, 0x2f, 0xd7, 0x6b, 0xa4, 0x80, 0x7e, + 0x65, 0x41, 0x7b, 0x6c, 0xd1, 0x2f, 0xa8, 0xec, 0x91, 0x6f, 0x01, 0x3e, 0xbb, + 0x87, 0x06, 0xa9, 0x6e, 0xff, 0xed, 0xa0, 0x6c, 0x4b, 0xe2, 0x13, 0x1c, 0x18, + 0x38, 0xff, 0x75, 0x7d, 0x92, 0x6c, 0xb3, 0x5f, 0xed, 0x6a, 0xb4, 0x95, 0x95, + 0x79, 0x54, 0x80, 0x21, 0xc0, 0xb1, 0xc0, 0x83, 0x22, 0xb1, 0xad, 0xf2, 0x7c, + 0x87, 0xad, 0x45, 0x09, 0x09, 0xd8, 0x92, 0x4c, 0x9c, 0x07, 0x10, 0xd7, 0x9a, + 0x19, 0x0f, 0x28, 0x41, 0xcf, 0x3a, 0x1c, 0x6a, 0xb5, 0x29, 0x42, 0x34, 0x86, + 0xf4, 0x99, 0x35, 0x9f, 0x32, 0x0a, 0x30, 0xff, 0x48, 0x8f, 0x90, 0x41, 0x7f, + 0xef, 0xc7, 0xcb, 0x9f, 0xbc, 0x77, 0x7c, 0xbc, 0xf3, 0x8d, 0x79, 0x14, 0x27, + 0xa0, 0x0d, 0xe2, 0xd0, 0x91, 0x30, 0xf6, 0x35, 0x11, 0xda, 0x54, 0x83, 0x2d, + 0xe9, 0x13, 0x6b, 0x39, 0xf4, 0x59, 0x9f, 0x5a, 0xa5, 0xdf, 0xbb, 0x45, 0xda, + 0x60, 0xcd, 0xce, 0xab, 0x7e, 0xef, 0xde, 0x09, 0xbe, 0x63, 0xf3, 0xf7, 0xc0, + 0xd2, 0x32, 0x48, 0x47, 0xcc, 0xe1, 0x40, 0x5d, 0xef, 0x7c, 0x46, 0x9b, 0x0e, + 0x27, 0x24, 0x94, 0xe5, 0xdf, 0x54, 0xf5, 0x68, 0x65, 0x6c, 0xb9, 0xc8, 0x81, + 0x8d, 0x00, 0xcc, 0x2f, 0x77, 0xf8, 0xf4, 0x9b, 0x12, 0xea, 0x88, 0xf4, 0xed, + 0xe1, 0x8a, 0x4a, 0x0f, 0x87, 0x83, 0xe2, 0x62, 0x2f, 0x87, 0x92, 0x28, 0x58, + 0xfe, 0x1d, 0x2f, 0x05, 0xee, 0x30, 0xf3, 0x34, 0xb9, 0xcd, 0xd4, 0x9a, 0xcb, + 0xcd, 0xf1, 0x93, 0x5b, 0x85, 0xd4, 0xf1, 0xb2, 0x86, 0xac, 0x19, 0x29, 0xcb, + 0xec, 0xe2, 0xdf, 0xf4, 0x14, 0xc7, 0x0c, 0xd4, 0x3a, 0x1a, 0xe2, 0x04, 0x23, + 0xcd, 0x96, 0xb0, 0x1f, 0xa8, 0xa7, 0xdf, 0x65, 0x91, 0x83, 0x6f, 0x95, 0x89, + 0x3c, 0x0a, 0x69, 0xea, 0xaf, 0x80, 0x5d, 0x2a, 0x0c, 0xd8, 0x45, 0xf5, 0x0b, + 0xcf, 0x7e, 0x92, 0xa4, 0x88, 0x55, 0x50, + ], + txid: [ + 0x82, 0xa1, 0x92, 0xbf, 0x26, 0xf6, 0x93, 0xca, 0xab, 0xd9, 0x8f, 0x43, 0x32, + 0xa1, 0x2c, 0xd2, 0xc3, 0x7c, 0x68, 0x81, 0xb9, 0xf6, 0x6e, 0x07, 0xc8, 0x26, + 0x9e, 0x18, 0xb2, 0xef, 0x76, 0x19, + ], + auth_digest: [ + 0x95, 0xaf, 0x00, 0xfa, 0x05, 0xb4, 0xf2, 0x7e, 0x11, 0xa8, 0xd3, 0x01, 0xc5, + 0xd3, 0x1f, 0x64, 0x20, 0xcc, 0xf3, 0xa7, 0x4b, 0xb3, 0x93, 0xa4, 0x11, 0xaf, + 0x09, 0x79, 0xaf, 0xfd, 0xd5, 0xc6, + ], + amounts: vec![701369169176795, 1525114870428739], + script_pubkeys: vec![ + vec![0x53, 0x53, 0x53, 0x63, 0x6a, 0x53, 0x51], + vec![0x53, 0x52, 0x6a, 0x51, 0x53, 0x00, 0x63, 0x00], + ], + transparent_input: Some(0), + sighash_shielded: [ + 0xce, 0xf9, 0x33, 0x63, 0xa1, 0x78, 0xbd, 0x84, 0x83, 0xb9, 0x76, 0x67, 0x56, + 0xa7, 0xe6, 0x34, 0xce, 0x46, 0x83, 0x61, 0x2e, 0x7d, 0x0a, 0x2d, 0x04, 0xe2, + 0x14, 0x1a, 0x98, 0x32, 0x87, 0x4c, + ], + sighash_all: Some([ + 0xb5, 0xb8, 0x01, 0x7a, 0x80, 0xf5, 0xf0, 0x84, 0x2e, 0xae, 0xbd, 0x42, 0x17, + 0x14, 0x9b, 0x84, 0xfa, 0xb8, 0xff, 0xef, 0xc9, 0xc5, 0x1b, 0x16, 0x91, 0x9f, + 0x57, 0x4c, 0xf2, 0xdd, 0x00, 0x24, + ]), + sighash_none: Some([ + 0xea, 0xa0, 0x35, 0x1b, 0x07, 0x1d, 0x4d, 0x45, 0x13, 0x4d, 0x02, 0x99, 0xbe, + 0x62, 0x61, 0xbf, 0xe4, 0x40, 0x98, 0x82, 0x12, 0x7f, 0xfd, 0x0f, 0xa7, 0xea, + 0xfb, 0x46, 0xb8, 0x89, 0xdd, 0xa0, + ]), + sighash_single: None, + sighash_all_anyone: Some([ + 0x02, 0x8b, 0xec, 0xc8, 0x05, 0x92, 0xa8, 0x68, 0x28, 0x6b, 0x1f, 0xde, 0x3c, + 0x8d, 0xfb, 0x62, 0xdc, 0x38, 0x89, 0x51, 0x2c, 0x32, 0x10, 0x1c, 0x2f, 0x9f, + 0x64, 0x0e, 0x17, 0xed, 0x43, 0xbe, + ]), + sighash_none_anyone: Some([ + 0xc5, 0xd0, 0x02, 0x39, 0x48, 0x1b, 0x60, 0xc8, 0x55, 0x33, 0xb8, 0x40, 0x28, + 0xfb, 0x32, 0xcb, 0x60, 0x62, 0x59, 0x7e, 0x9e, 0x44, 0x7d, 0x73, 0xb4, 0x87, + 0xd8, 0x69, 0xfc, 0xce, 0x6d, 0x46, + ]), + sighash_single_anyone: None, + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x0c, + 0xba, 0x7d, 0xa3, 0xa5, 0xe7, 0x58, 0x1a, 0x00, 0x02, 0xe1, 0x89, 0xc7, 0x30, + 0x06, 0x59, 0x04, 0x00, 0x06, 0x00, 0x52, 0x6a, 0x53, 0x51, 0x53, 0x74, 0x0e, + 0xd7, 0xac, 0x8c, 0x45, 0x05, 0x00, 0x08, 0x53, 0x65, 0x51, 0x53, 0x63, 0x00, + 0x52, 0x63, 0x00, 0x01, 0x64, 0xb0, 0x39, 0xb3, 0x8a, 0xb6, 0x3a, 0x22, 0x6e, + 0x76, 0xa2, 0x56, 0xa3, 0x2b, 0x95, 0x47, 0x3d, 0x0e, 0x39, 0xed, 0x66, 0xe5, + 0xcb, 0x95, 0x1f, 0xe4, 0x1a, 0x07, 0x0d, 0x98, 0x3c, 0x59, 0x8a, 0xe1, 0x29, + 0xfd, 0xaf, 0xb7, 0x59, 0xed, 0xe1, 0xe8, 0x92, 0x00, 0xf6, 0x46, 0xdb, 0xd4, + 0xe4, 0xe3, 0x82, 0x66, 0x1d, 0x51, 0x6b, 0x9f, 0x55, 0xdb, 0x45, 0xa1, 0x2f, + 0x86, 0xb2, 0x08, 0x4f, 0x39, 0x3e, 0x8d, 0xb8, 0x4b, 0x3a, 0x10, 0x88, 0x28, + 0xcc, 0x9e, 0x1f, 0x1c, 0x03, 0xce, 0x87, 0x3f, 0x16, 0x0f, 0xe2, 0xc3, 0xad, + 0x59, 0x9c, 0x0d, 0xc7, 0xf3, 0xfa, 0xe1, 0xae, 0xea, 0x95, 0x7a, 0x31, 0x49, + 0xa9, 0x93, 0xcc, 0x47, 0x23, 0x62, 0x29, 0x87, 0x36, 0xa8, 0xb7, 0x78, 0xd9, + 0x7c, 0xe4, 0x23, 0x01, 0x3d, 0x64, 0xb3, 0x2c, 0xd1, 0x72, 0xef, 0xa5, 0x51, + 0xbf, 0x7f, 0x36, 0x8f, 0x04, 0xbd, 0xae, 0xc6, 0x09, 0x1a, 0x30, 0x04, 0xa7, + 0x57, 0x59, 0x8b, 0x80, 0x1d, 0xcf, 0x67, 0x5c, 0xb8, 0x3e, 0x43, 0xa5, 0x3a, + 0xe8, 0xb2, 0x54, 0xd3, 0x33, 0xbc, 0xda, 0x20, 0xd4, 0x81, 0x7d, 0x34, 0x77, + 0xab, 0xfb, 0xa2, 0x5b, 0xb8, 0x3d, 0xf5, 0x94, 0x9c, 0x12, 0x6f, 0x14, 0x9b, + 0x1d, 0x99, 0x34, 0x1e, 0x4e, 0x6f, 0x91, 0x20, 0xf4, 0xd4, 0x1e, 0x62, 0x91, + 0x85, 0x00, 0x2c, 0x72, 0xc0, 0x12, 0xc4, 0x14, 0xd2, 0x38, 0x2a, 0x6d, 0x47, + 0xc7, 0xb3, 0xde, 0xab, 0xa7, 0x70, 0xc4, 0x00, 0xca, 0x96, 0xb2, 0x81, 0x4f, + 0x6b, 0x26, 0xc3, 0xef, 0x17, 0x42, 0x9f, 0x1a, 0x98, 0xc8, 0x5d, 0x83, 0xdb, + 0x20, 0xef, 0xad, 0x48, 0xbe, 0x89, 0x96, 0xfb, 0x1b, 0xff, 0x59, 0x1e, 0xff, + 0xf3, 0x60, 0xfe, 0x11, 0x99, 0x05, 0x6c, 0x56, 0xe5, 0xfe, 0xec, 0x61, 0xa7, + 0xb8, 0xb9, 0xf6, 0x99, 0xd6, 0x01, 0x2c, 0x28, 0x49, 0x23, 0x2f, 0x32, 0x9f, + 0xef, 0x95, 0xc7, 0xaf, 0x37, 0x00, 0x98, 0xff, 0xe4, 0x91, 0x8e, 0x0c, 0xa1, + 0xdf, 0x47, 0xf2, 0x75, 0x86, 0x7b, 0x73, 0x9e, 0x0a, 0x51, 0x4d, 0x32, 0x09, + 0x32, 0x5e, 0x21, 0x70, 0x45, 0x92, 0x7b, 0x47, 0x9c, 0x1c, 0xe2, 0xe5, 0xd5, + 0x4f, 0x25, 0x48, 0x8c, 0xad, 0x15, 0x13, 0xe3, 0xf4, 0x4a, 0x21, 0x26, 0x6c, + 0xfd, 0x84, 0x16, 0x33, 0x32, 0x7d, 0xee, 0x6c, 0xf8, 0x10, 0xfb, 0xf7, 0x39, + 0x3e, 0x31, 0x7d, 0x9e, 0x53, 0xd1, 0xbe, 0x1d, 0x5a, 0xe7, 0x83, 0x9b, 0x66, + 0xb9, 0x43, 0xb9, 0xed, 0x18, 0xf2, 0xc5, 0x30, 0xe9, 0x75, 0x42, 0x23, 0x32, + 0xc3, 0x43, 0x9c, 0xce, 0x49, 0xa2, 0x9f, 0x2a, 0x33, 0x6a, 0x48, 0x51, 0x26, + 0x3c, 0x5e, 0x9b, 0xd1, 0x3d, 0x73, 0x11, 0x09, 0xe8, 0x44, 0xb7, 0xf8, 0xc3, + 0x92, 0xa5, 0xc1, 0xdc, 0xaa, 0x2a, 0xe5, 0xf5, 0x0f, 0xf6, 0x3f, 0xab, 0x97, + 0x65, 0xe0, 0x16, 0x70, 0x2c, 0x35, 0xa6, 0x7c, 0xd7, 0x36, 0x4d, 0x3f, 0xab, + 0x55, 0x2f, 0xb3, 0x49, 0xe3, 0x5c, 0x15, 0xc5, 0x02, 0x50, 0x45, 0x3f, 0xd1, + 0x8f, 0x7b, 0x85, 0x59, 0x92, 0x63, 0x2e, 0x2c, 0x76, 0xc0, 0xfb, 0xf1, 0xef, + 0x96, 0x3e, 0xa8, 0x0e, 0x32, 0x23, 0xde, 0x32, 0x77, 0xbc, 0x55, 0x92, 0x51, + 0x72, 0x58, 0x29, 0xec, 0x03, 0xf2, 0x13, 0xba, 0x89, 0x55, 0xca, 0xb2, 0x82, + 0x2f, 0xf2, 0x1a, 0x9b, 0x0a, 0x49, 0x04, 0xd6, 0x68, 0xfc, 0xd7, 0x72, 0x24, + 0xbd, 0xe3, 0xdd, 0x01, 0xf6, 0xff, 0xc4, 0x82, 0x8f, 0x6b, 0x64, 0x23, 0x0b, + 0x35, 0xc6, 0xa0, 0x49, 0x87, 0x34, 0x94, 0x27, 0x6e, 0xa1, 0xd7, 0xed, 0x5e, + 0x92, 0xcb, 0x4f, 0x90, 0xba, 0x83, 0xa9, 0xe4, 0x96, 0x01, 0xb1, 0x94, 0x04, + 0x2f, 0x29, 0x00, 0xd9, 0x9d, 0x31, 0x2d, 0x7b, 0x70, 0x50, 0x8c, 0xf1, 0x76, + 0x06, 0x6d, 0x15, 0x4d, 0xbe, 0x96, 0xef, 0x9d, 0x43, 0x67, 0xe4, 0xc8, 0x40, + 0xe4, 0xa1, 0x7b, 0x5e, 0x51, 0x22, 0xe8, 0xeb, 0xe2, 0x15, 0x8a, 0x3c, 0x5f, + 0x4c, 0xba, 0xe2, 0x1e, 0xa3, 0xfa, 0x1a, 0xe6, 0xc2, 0x5a, 0x94, 0x62, 0xeb, + 0xcb, 0xb0, 0xfd, 0x5f, 0x14, 0x55, 0x4b, 0xc9, 0x77, 0x47, 0xc3, 0x3e, 0x34, + 0xda, 0x90, 0xc8, 0x16, 0xd8, 0xd0, 0xd5, 0x0b, 0xfe, 0x37, 0x61, 0x8c, 0x58, + 0x12, 0x89, 0x14, 0x84, 0xfa, 0x25, 0x93, 0x22, 0xc1, 0x50, 0x92, 0xd4, 0x15, + 0x5d, 0x86, 0x96, 0xd6, 0xf1, 0x2f, 0x24, 0xfd, 0x36, 0x44, 0x96, 0xb3, 0xbe, + 0x08, 0x71, 0xca, 0x3d, 0xd9, 0x62, 0x53, 0x48, 0xa6, 0x14, 0xb5, 0x9b, 0xde, + 0x45, 0x88, 0x56, 0x49, 0xba, 0xe3, 0x6d, 0xe3, 0x4d, 0xef, 0x8f, 0xce, 0xc8, + 0x53, 0x43, 0x47, 0x5d, 0x97, 0x6a, 0xe1, 0xe9, 0xb2, 0x78, 0x29, 0xce, 0x2a, + 0xc5, 0xef, 0xd0, 0xb3, 0x99, 0xa8, 0xb4, 0x48, 0xbe, 0x65, 0x04, 0x29, 0x4e, + 0xe6, 0xb3, 0xc1, 0xc6, 0xa5, 0x34, 0x2d, 0x7c, 0x01, 0xae, 0x9d, 0x8a, 0xd3, + 0x07, 0x0c, 0x2b, 0x1a, 0x91, 0x57, 0x3a, 0xf5, 0xe0, 0xc5, 0xe4, 0xcb, 0xbf, + 0x4a, 0xcd, 0xc6, 0xb5, 0x4c, 0x92, 0x72, 0x20, 0x0d, 0x99, 0x70, 0x25, 0x0c, + 0x17, 0xc1, 0x03, 0x6f, 0x06, 0x08, 0x5c, 0x41, 0x85, 0x8e, 0xd3, 0xa0, 0xc4, + 0x81, 0x50, 0xbc, 0x69, 0x7e, 0x4a, 0x69, 0x5f, 0xef, 0x33, 0x5f, 0x7a, 0xd0, + 0x7e, 0x1a, 0x46, 0xdc, 0x76, 0x7f, 0xf8, 0x22, 0xdb, 0x70, 0xe6, 0x66, 0x90, + 0x80, 0xb9, 0x81, 0x6b, 0x22, 0x32, 0x79, 0xde, 0x20, 0xd6, 0x26, 0x43, 0x03, + 0x00, 0xc8, 0x1a, 0x4c, 0x66, 0xcc, 0x58, 0x6a, 0xbf, 0xe1, 0xea, 0xa8, 0xca, + 0x6c, 0xf4, 0x1f, 0xc3, 0xc3, 0xe6, 0xc7, 0xb8, 0x86, 0xfb, 0x6d, 0xac, 0x9f, + 0x48, 0x22, 0xb4, 0xfc, 0x6f, 0xff, 0x9d, 0x05, 0x13, 0xd6, 0x1a, 0x21, 0xc8, + 0x0a, 0x37, 0x76, 0x71, 0xd1, 0x35, 0xa6, 0x68, 0xa0, 0xae, 0x2b, 0xb9, 0x34, + 0xc8, 0x2c, 0x41, 0x42, 0xda, 0x69, 0xd1, 0x2c, 0xa7, 0xde, 0x9a, 0x7d, 0xf7, + 0x06, 0x40, 0x0e, 0xc7, 0x98, 0x78, 0xd8, 0x68, 0xe1, 0x7e, 0x8f, 0x71, 0xea, + 0x31, 0x49, 0x5a, 0xf8, 0x19, 0xa0, 0x16, 0xcc, 0x41, 0x9e, 0x07, 0xc5, 0x01, + 0xaa, 0x83, 0x09, 0xb2, 0xe6, 0xc8, 0x5b, 0x79, 0xb2, 0x76, 0x37, 0x33, 0xa3, + 0x7b, 0xbc, 0x04, 0x20, 0xd4, 0x25, 0x37, 0xb8, 0x71, 0xb4, 0x29, 0x4a, 0x65, + 0xd3, 0xe0, 0x55, 0xff, 0x71, 0x8d, 0xd9, 0xdc, 0x8c, 0x75, 0xe7, 0xe5, 0xb2, + 0xef, 0xe4, 0x42, 0x63, 0x73, 0x71, 0xb7, 0xc4, 0x8f, 0x6e, 0xe9, 0x9e, 0x3e, + 0xa3, 0x8a, 0x4b, 0x0f, 0x2f, 0x67, 0xfc, 0x2b, 0x90, 0x8c, 0xda, 0x65, 0x7e, + 0xae, 0x75, 0x4e, 0x03, 0x7e, 0x26, 0x2e, 0x9a, 0x9f, 0x9b, 0xd7, 0xec, 0x42, + 0x67, 0xed, 0x8e, 0x96, 0x93, 0x0e, 0x10, 0x84, 0x78, 0x3c, 0x37, 0xd6, 0xf9, + 0xdd, 0x15, 0xfd, 0x29, 0xf4, 0xcc, 0x47, 0x7e, 0x66, 0xf1, 0x30, 0x28, 0x7a, + 0xec, 0x77, 0xc3, 0x86, 0xd7, 0x4b, 0xcf, 0x42, 0xfa, 0x7b, 0x8c, 0x83, 0x66, + 0x3b, 0x9f, 0xe9, 0xe2, 0xcd, 0x78, 0xb1, 0x5d, 0x46, 0x25, 0xa6, 0x7c, 0x46, + 0x3e, 0x34, 0xac, 0xe7, 0x7c, 0x55, 0xf0, 0x95, 0x40, 0x65, 0x41, 0x58, 0x76, + 0x29, 0x8f, 0x3f, 0x3b, 0x13, 0xbb, 0xfc, 0x08, 0x8b, 0x30, 0xf5, 0x5e, 0x7a, + 0xea, 0xc2, 0x98, 0xdd, 0xeb, 0xcf, 0xb9, 0x63, 0xbe, 0x04, 0x00, 0x02, 0x5b, + 0x6b, 0xc2, 0xa9, 0xc5, 0x87, 0xc7, 0x88, 0xc3, 0x94, 0xc3, 0x90, 0x5b, 0x39, + 0xc3, 0xbb, 0xe1, 0x9b, 0x85, 0x4b, 0xc7, 0x9f, 0x53, 0x61, 0xc5, 0xbb, 0xc2, + 0xa8, 0xc4, 0x86, 0xc8, 0xbe, 0xc3, 0x92, 0x64, 0xc7, 0x90, 0x7e, 0xc3, 0xa7, + 0x43, 0xc7, 0xa4, 0xc6, 0xa4, 0xc8, 0xaa, 0xc8, 0x98, 0xc5, 0x91, 0xc7, 0xab, + 0xc5, 0x89, 0xce, 0x89, 0xc8, 0xa8, 0xc3, 0x9c, 0xe2, 0xb1, 0xb4, 0xc5, 0xa8, + 0x3f, 0xc6, 0xb7, 0xc8, 0xa6, 0xc4, 0x8b, 0xc7, 0x83, 0xc4, 0x8d, 0xc3, 0x9b, + 0xc6, 0xb8, 0xe2, 0xb1, 0xa9, 0xc5, 0xa3, 0xe1, 0x9b, 0x81, 0x21, 0xc3, 0xad, + 0x01, 0xbd, 0xd8, 0xa0, 0x39, 0x65, 0x90, 0x0c, 0x6f, 0xf1, 0xb5, 0x47, 0x46, + 0x51, 0x5c, 0x83, 0x81, 0xf3, 0x21, 0x7d, 0x00, 0xda, 0xf3, 0xa2, 0x01, 0x51, + 0x43, 0x9b, 0xc1, 0x3c, 0x9a, 0x0e, 0xbe, 0x28, 0xc3, 0x0f, 0x69, 0xb0, 0x58, + 0x64, 0x2e, 0x77, 0x31, 0x92, 0xdd, 0x9a, 0x16, 0xef, 0x84, 0x06, 0xf9, 0x43, + 0x01, 0x2d, 0x52, 0x79, 0x71, 0x94, 0x8a, 0x73, 0x27, 0x22, 0xf6, 0xfd, 0x7f, + 0x12, 0xb2, 0x8a, 0x29, 0xfd, 0xd5, 0xc7, 0x0b, 0xbf, 0x7c, 0x98, 0x42, 0x9c, + 0xde, 0x57, 0x2e, 0x91, 0xbe, 0x15, 0x80, 0xa2, 0x94, 0x10, 0x72, 0xe9, 0x51, + 0x31, 0xb1, 0x67, 0x9d, 0xf0, 0x63, 0x76, 0x25, 0x04, 0x2c, 0x37, 0xd4, 0x8f, + 0xfb, 0x15, 0x2e, 0x5e, 0xbc, 0x18, 0x5c, 0x8a, 0x2b, 0x7d, 0x43, 0x05, 0xf1, + 0xc9, 0x5a, 0xf9, 0x37, 0xdf, 0x78, 0xdf, 0xd8, 0x75, 0x7f, 0xab, 0x43, 0x49, + 0x68, 0xb0, 0xb5, 0x7c, 0x66, 0x57, 0x44, 0x68, 0xf1, 0x60, 0xb4, 0x47, 0xac, + 0x82, 0x21, 0xe5, 0x06, 0x06, 0x00, 0xa9, 0xc2, 0xb4, 0xc2, 0xa2, 0x23, 0xc6, + 0xb3, 0xc5, 0xbb, 0xc4, 0xa6, 0x7c, 0xe2, 0xb1, 0xa9, 0xc2, 0xa3, 0x2b, 0x44, + 0x6d, 0xc7, 0xbc, 0xcd, 0xb4, 0xe1, 0x9b, 0x8f, 0xce, 0x88, 0xc4, 0xb1, 0xe2, + 0xb1, 0xb8, 0x32, 0xc8, 0x92, 0x52, 0xe1, 0x9b, 0x82, 0x50, 0xc7, 0xaa, 0xc7, + 0x8d, 0x55, 0xc3, 0xa0, 0xc2, 0xa5, 0xe1, 0x9b, 0xa4, 0xc6, 0x93, 0xc7, 0x9c, + 0xc7, 0xa3, 0xc5, 0xbc, 0xc5, 0x9b, 0xc5, 0xb1, 0xe1, 0x9a, 0xa4, 0x40, 0xc7, + 0x86, 0xc5, 0xab, 0xcd, 0xba, 0xc2, 0xa2, 0xc7, 0xae, 0xc4, 0xbb, 0x6a, 0x48, + 0xc5, 0x94, 0xc4, 0xb2, 0xc5, 0x91, 0xc6, 0xb3, 0xc7, 0x9b, 0xc6, 0x8e, 0x6a, + 0xc4, 0xae, 0xe1, 0x9a, 0xb0, 0x53, 0x32, 0xc5, 0x9d, 0xe1, 0x9a, 0xad, 0xc3, + 0xb7, 0x32, 0xc6, 0xb7, 0x4c, 0xe2, 0xb1, 0xbe, 0xc6, 0x89, 0xcd, 0xb4, 0x37, + 0xe1, 0x9a, 0xb3, 0xc5, 0xa9, 0xc8, 0x83, 0xc4, 0xa7, 0xc3, 0x9b, 0xc7, 0xa2, + 0xc8, 0xbe, 0xc8, 0x98, 0xc8, 0xb1, 0xc3, 0x95, 0xc6, 0xbd, 0xc4, 0x81, 0xc6, + 0x87, 0xc3, 0x99, 0xc6, 0x9d, 0xc5, 0x9f, 0xc5, 0x90, 0xc4, 0x90, 0xe2, 0xb1, + 0xae, 0xc3, 0x89, 0xc4, 0xb4, 0x5a, 0x5a, 0x03, 0x3c, 0x0f, 0xcc, 0x58, 0x56, + 0x7e, 0x78, 0x41, 0x22, 0xb2, 0x46, 0xbc, 0xc3, 0x4a, 0x8c, 0xb2, 0xfd, 0x4f, + 0xb8, 0x28, 0xfb, 0xee, 0x76, 0x1c, 0x8a, 0x01, 0x08, 0xbe, 0x85, 0x55, 0xaf, + 0xf3, 0x79, 0x95, 0xe0, 0x9e, 0xef, 0xd9, 0x28, 0x2d, 0x02, 0x7d, 0x2e, 0xa6, + 0x23, 0x40, 0xb3, 0xe6, 0xaf, 0xd0, 0x52, 0xf7, 0xbd, 0x5b, 0xd4, 0x90, 0x04, + 0x5a, 0xaa, 0xd0, 0xd9, 0x99, 0x3c, 0xc9, 0x2a, 0x86, 0xad, 0x4d, 0x89, 0xbd, + 0x4a, 0x19, 0xd2, 0x9d, 0x60, 0x3a, 0xd9, 0xae, 0x2b, 0x13, 0x18, 0x25, 0x23, + 0x68, 0xf6, 0x96, 0x49, 0x24, 0x48, 0xdd, 0x52, 0x66, 0x97, 0x47, 0x6d, 0xc0, + 0x61, 0x34, 0x6e, 0xbe, 0x3f, 0x67, 0x72, 0x17, 0xff, 0x9c, 0x60, 0xef, 0xce, + 0x94, 0x3a, 0xf2, 0x8d, 0xfd, 0x3f, 0x9e, 0x59, 0x69, 0x25, 0x98, 0xa6, 0x04, + 0x7c, 0x23, 0xc4, 0xc0, 0x14, 0x00, 0xf1, 0xab, 0x57, 0x30, 0xea, 0xc0, 0xae, + 0x8d, 0x58, 0x43, 0xd5, 0x05, 0x1c, 0x37, 0x62, 0x40, 0x17, 0x2a, 0xf2, 0x67, + 0x14, 0xa5, 0x91, 0xa8, 0x17, 0x97, 0x83, 0x98, 0x6a, 0xba, 0xc6, 0x7f, 0x10, + 0x37, 0x1d, 0x0f, 0xc4, 0xce, 0x17, 0x80, 0x2f, 0x91, 0xa0, 0xe7, 0xfb, 0xae, + 0x66, 0x5c, 0xc0, 0x57, 0x23, 0x97, 0xe8, 0xd0, 0x5c, 0x22, 0xe8, 0x80, 0x37, + 0x7d, 0xfc, 0x2f, 0x13, 0xe6, 0x7c, 0x61, 0xdb, 0xc5, 0x9c, 0x60, 0xf7, 0xbd, + 0x5b, 0xd4, 0x90, 0x04, 0x5a, 0xaa, 0xd0, 0xd9, 0x99, 0x3c, 0xc9, 0x2a, 0x86, + 0xad, 0x4d, 0x89, 0xbd, 0x4a, 0x19, 0xd2, 0x9d, 0x60, 0x3a, 0xd9, 0xae, 0x2b, + 0x13, 0x18, 0x25, 0x23, 0xfa, 0x92, 0x23, 0x9b, 0x87, 0x3d, 0xc6, 0xc3, 0x57, + 0xea, 0xa8, 0xaf, 0x4e, 0xe6, 0xd0, 0x05, 0x40, 0x65, 0x7f, 0xe3, 0x29, 0x14, + 0x10, 0x3b, 0x5d, 0x98, 0xf6, 0x8b, 0xd3, 0xe2, 0xb5, 0x35, 0x9f, 0x08, 0xcc, + 0xd8, 0x8d, 0x0c, 0x81, 0x1e, 0x4c, 0x31, 0xfb, 0xb4, 0x9f, 0x3a, 0x90, 0xbb, + 0xd0, 0x5d, 0xce, 0x62, 0xf3, 0x44, 0xe7, 0x07, 0x75, 0x93, 0x15, 0x9a, 0xe3, + 0x50, 0x50, 0xb0, 0xe8, 0x86, 0xc9, 0xe9, 0xcb, 0xa1, 0x89, 0x96, 0x71, 0x2e, + 0xaf, 0xb2, 0xb6, 0xf3, 0xc8, 0xd0, 0xbb, 0x9b, 0x26, 0xc9, 0x39, 0x28, 0x10, + 0x27, 0xf9, 0x22, 0xb8, 0x97, 0xb9, 0x01, 0x10, 0x7f, 0x24, 0xb0, 0xa5, 0xfd, + 0xb1, 0xe3, 0xe0, 0x7e, 0x5b, 0x0d, 0x8b, 0xd2, 0x77, 0x85, 0x6a, 0xa4, 0x25, + 0x01, 0xe5, 0xf7, 0xbd, 0x5b, 0xd4, 0x90, 0x04, 0x5a, 0xaa, 0xd0, 0xd9, 0x99, + 0x3c, 0xc9, 0x2a, 0x86, 0xad, 0x4d, 0x89, 0xbd, 0x4a, 0x19, 0xd2, 0x9d, 0x60, + 0x3a, 0xd9, 0xae, 0x2b, 0x13, 0x18, 0x25, 0x23, 0xa7, 0xe1, 0x9a, 0x46, 0xe9, + 0x70, 0xb5, 0xc5, 0x06, 0x70, 0x84, 0x30, 0x31, 0x7b, 0x1b, 0xb3, 0xb3, 0x5d, + 0xf6, 0x8a, 0xe3, 0x3a, 0x49, 0x26, 0xa0, 0x3e, 0x6b, 0xfe, 0xb5, 0x51, 0x04, + 0x16, 0xfc, 0xbb, 0x05, 0x24, 0xc9, 0xca, 0x50, 0x74, 0x15, 0x6c, 0xc5, 0xa5, + 0xd6, 0xfe, 0x1c, 0x99, 0x5e, 0xdc, 0x60, 0xa2, 0xf5, 0x50, 0x41, 0x1a, 0xa4, + 0x1e, 0x3d, 0xa3, 0xbd, 0xcf, 0x64, 0xbc, 0x00, 0x38, 0x20, 0xc8, 0xc5, 0xd3, + 0x35, 0x9f, 0x39, 0x6e, 0x8a, 0x3c, 0x63, 0xc4, 0xc0, 0x3c, 0xe7, 0x78, 0xf3, + 0xdc, 0x3f, 0x72, 0xbf, 0x2a, 0x05, 0xac, 0x30, 0x78, 0x89, 0xb8, 0x20, 0xf8, + 0x22, 0x3e, 0x9a, 0x89, 0xf1, 0x07, 0x93, 0xbd, 0x6b, 0x8b, 0x32, 0x02, 0xcb, + 0x47, 0x9e, 0xec, 0xc7, 0x37, 0xa0, 0xcd, 0x20, 0xdc, 0xce, 0x6c, 0xe8, 0x03, + 0x16, 0x47, 0x5a, 0xcb, 0x97, 0x79, 0x97, 0xe8, 0xba, 0xb3, 0x95, 0x9e, 0xbd, + 0x5a, 0x76, 0xbf, 0x32, 0x3f, 0x6a, 0xf1, 0xd2, 0x53, 0xa0, 0x1b, 0xca, 0xda, + 0xdf, 0x21, 0x95, 0x94, 0x30, 0x70, 0x63, 0xd7, 0x8f, 0x93, 0x02, 0x3a, 0x39, + ], + txid: [ + 0x00, 0xa0, 0xd6, 0x91, 0x69, 0xa7, 0x50, 0x7c, 0x40, 0x8d, 0xda, 0x6d, 0xd5, + 0xc3, 0x71, 0xe5, 0xa2, 0x78, 0x79, 0x2a, 0x7d, 0xff, 0x5e, 0x9a, 0xbf, 0x02, + 0xfe, 0x6c, 0x0d, 0xf7, 0x8c, 0xdd, + ], + auth_digest: [ + 0x3d, 0x97, 0x88, 0x97, 0x7b, 0x77, 0x4b, 0x9a, 0x6b, 0xa2, 0x1e, 0x44, 0x3c, + 0x51, 0x3f, 0x79, 0x06, 0x06, 0xf8, 0x56, 0xf9, 0x92, 0x77, 0x10, 0x69, 0xdb, + 0xeb, 0x26, 0x7e, 0x9f, 0xdc, 0xe7, + ], + amounts: vec![], + script_pubkeys: vec![], + transparent_input: None, + sighash_shielded: [ + 0x00, 0xa0, 0xd6, 0x91, 0x69, 0xa7, 0x50, 0x7c, 0x40, 0x8d, 0xda, 0x6d, 0xd5, + 0xc3, 0x71, 0xe5, 0xa2, 0x78, 0x79, 0x2a, 0x7d, 0xff, 0x5e, 0x9a, 0xbf, 0x02, + 0xfe, 0x6c, 0x0d, 0xf7, 0x8c, 0xdd, + ], + sighash_all: None, + sighash_none: None, + sighash_single: None, + sighash_all_anyone: None, + sighash_none_anyone: None, + sighash_single_anyone: None, + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x05, + 0x10, 0x57, 0x1b, 0x93, 0xaa, 0xa9, 0x14, 0x00, 0x03, 0x56, 0x78, 0x30, 0xde, + 0xda, 0x8f, 0x03, 0x00, 0x02, 0xac, 0x00, 0x4f, 0xcf, 0x2d, 0x3f, 0x56, 0x04, + 0x01, 0x00, 0x01, 0xac, 0xa7, 0xc6, 0x92, 0xee, 0x99, 0x14, 0x07, 0x00, 0x02, + 0x6a, 0x63, 0x00, 0x00, 0x01, 0xae, 0xd0, 0xe9, 0x5a, 0x37, 0xc4, 0xc7, 0x25, + 0x21, 0x48, 0x5f, 0xa5, 0x62, 0x0c, 0x64, 0xca, 0x6a, 0xc2, 0x40, 0x28, 0x7b, + 0x8c, 0x67, 0xd5, 0xff, 0x8a, 0x39, 0x5b, 0xea, 0xf5, 0x57, 0xab, 0x05, 0xd6, + 0x60, 0x4b, 0x36, 0xff, 0x88, 0x1a, 0x2d, 0x59, 0xc8, 0xec, 0x0a, 0x58, 0x42, + 0x18, 0x75, 0x15, 0x88, 0xc7, 0xef, 0xa5, 0x06, 0xc3, 0xe8, 0xd0, 0xc6, 0x01, + 0x92, 0xe8, 0x47, 0x2b, 0x0d, 0xda, 0x51, 0xab, 0xbf, 0x8f, 0x2e, 0x5a, 0xfc, + 0x1a, 0x10, 0x59, 0x3c, 0x37, 0x79, 0x16, 0xfe, 0x2b, 0x71, 0x4f, 0xd4, 0x40, + 0x56, 0x9c, 0x9a, 0xb9, 0x37, 0xe2, 0x99, 0xb6, 0xf7, 0x23, 0xc4, 0x3a, 0x0e, + 0xd4, 0x53, 0x1d, 0x7e, 0x4b, 0x00, 0xbc, 0xe3, 0x8c, 0xa7, 0x18, 0x40, 0x33, + 0xfd, 0x97, 0x93, 0xb3, 0xe0, 0x2f, 0x27, 0xf0, 0x40, 0x04, 0x65, 0x95, 0xac, + 0xd4, 0x7b, 0x31, 0xcc, 0x13, 0x28, 0x04, 0x81, 0x55, 0xd7, 0x60, 0x8d, 0xb8, + 0x33, 0x04, 0x98, 0xd2, 0x03, 0xb2, 0x8d, 0x7e, 0x2d, 0xf3, 0xe0, 0x23, 0xd1, + 0xc9, 0x07, 0x85, 0xe5, 0xf5, 0xbc, 0xde, 0x5e, 0x3b, 0xfe, 0x6c, 0xa1, 0x76, + 0xfa, 0xb7, 0xb0, 0xf3, 0xbf, 0xa0, 0xab, 0x61, 0xe3, 0x40, 0xc3, 0x4e, 0xb9, + 0xf1, 0x7c, 0x7e, 0xc2, 0xbe, 0x03, 0xb1, 0x80, 0xf0, 0xbb, 0x6f, 0x43, 0x4c, + 0x2a, 0x65, 0x42, 0xe0, 0x0e, 0x84, 0x37, 0x3f, 0x4f, 0x46, 0x49, 0xcd, 0xa3, + 0x2b, 0xf6, 0x86, 0x66, 0x61, 0x43, 0xf6, 0x22, 0xaa, 0x48, 0x04, 0x60, 0xb5, + 0xaf, 0xac, 0x51, 0x86, 0x07, 0xcd, 0x9a, 0xf8, 0xbc, 0xd6, 0xb5, 0x8c, 0x30, + 0x12, 0x73, 0x16, 0xb2, 0x5d, 0x5e, 0xa7, 0xbf, 0x6b, 0x0c, 0xab, 0x85, 0x42, + 0xff, 0x69, 0xd9, 0xb2, 0xf1, 0x80, 0xbe, 0x12, 0xed, 0x75, 0x34, 0x4a, 0x39, + 0x5a, 0xa1, 0x0f, 0x85, 0x2f, 0x08, 0x3a, 0xd6, 0x4e, 0xf4, 0x0e, 0x9c, 0x03, + 0x09, 0xe9, 0xbb, 0xa5, 0x4b, 0x8c, 0xb3, 0x3c, 0x95, 0x49, 0x8a, 0x69, 0x53, + 0x8d, 0x3a, 0xe5, 0xb2, 0x5e, 0x24, 0x70, 0x98, 0x30, 0x6f, 0xa8, 0xc7, 0x4a, + 0x8e, 0xe5, 0xbc, 0xa9, 0x41, 0x53, 0x1d, 0x61, 0xaa, 0xc2, 0x7a, 0xab, 0x3d, + 0xc5, 0x61, 0x7d, 0x56, 0x06, 0xc9, 0x57, 0x7a, 0x2a, 0x83, 0x46, 0xe8, 0xd8, + 0x5b, 0x32, 0xb8, 0x50, 0x57, 0x75, 0x10, 0x8d, 0xc8, 0x5e, 0x2a, 0xde, 0x2e, + 0xac, 0x1e, 0x63, 0x6e, 0x1a, 0xf4, 0x05, 0x4c, 0x8b, 0x6f, 0x57, 0x63, 0x2d, + 0xf2, 0x69, 0xc3, 0x72, 0x3b, 0x32, 0x08, 0x72, 0xe4, 0xc5, 0x7b, 0x21, 0x83, + 0x58, 0xdc, 0x7e, 0x99, 0x05, 0xbb, 0x04, 0xed, 0xf9, 0x2e, 0xdf, 0x0d, 0xf6, + 0x35, 0xf3, 0xbf, 0x36, 0x1e, 0x57, 0xa1, 0x32, 0x96, 0xe1, 0x44, 0x7a, 0xf5, + 0x08, 0x78, 0x72, 0xd6, 0x36, 0xe2, 0x75, 0x18, 0xa9, 0x87, 0x6e, 0x15, 0xeb, + 0x01, 0xf5, 0xe8, 0xde, 0xd8, 0x18, 0x92, 0x51, 0x1c, 0xc2, 0x85, 0x1b, 0x00, + 0xb8, 0x32, 0x71, 0x2a, 0x6d, 0x3b, 0xa5, 0x66, 0x65, 0x17, 0xbc, 0xd3, 0x56, + 0x76, 0x21, 0xa7, 0xcf, 0x84, 0x45, 0x58, 0x96, 0x53, 0x26, 0x20, 0x20, 0xc3, + 0x3b, 0xf7, 0x80, 0x31, 0xb8, 0xee, 0x07, 0x07, 0xde, 0x07, 0x20, 0x68, 0xc1, + 0x70, 0x57, 0x03, 0x27, 0xe6, 0xd9, 0xf5, 0xc6, 0xdd, 0xc3, 0x35, 0x40, 0x2e, + 0xfc, 0x54, 0x88, 0x62, 0xf5, 0xa0, 0x70, 0x94, 0xfd, 0x42, 0x8a, 0x7b, 0xbc, + 0x15, 0xd7, 0xb3, 0x8d, 0x05, 0x36, 0x2c, 0x9c, 0xa9, 0x85, 0xf5, 0x8a, 0x76, + 0x64, 0x7d, 0x2b, 0xe4, 0xc2, 0xcd, 0x6b, 0x3d, 0x17, 0xd6, 0x87, 0x09, 0x71, + 0xd7, 0xa0, 0x98, 0xba, 0xf7, 0x2c, 0x6f, 0x6f, 0x12, 0x14, 0xcf, 0x1f, 0xaa, + 0xe4, 0x88, 0xbd, 0x7d, 0xe2, 0x59, 0xd3, 0x41, 0x5c, 0x2f, 0x0d, 0xde, 0xc7, + 0x45, 0x70, 0x04, 0xf3, 0x57, 0x08, 0xd1, 0xec, 0xcc, 0xcc, 0x0d, 0xf6, 0x5a, + 0x04, 0x94, 0x3a, 0xd5, 0xcb, 0xc1, 0x3f, 0x29, 0x5f, 0x00, 0x0f, 0xe0, 0x56, + 0xc4, 0x0b, 0x2d, 0x88, 0xf2, 0x7d, 0xc3, 0x4c, 0xfe, 0xb8, 0x03, 0xbe, 0x34, + 0x83, 0xa9, 0xeb, 0xf9, 0xb5, 0xa9, 0x02, 0x60, 0x57, 0x72, 0x5d, 0x63, 0xea, + 0xd2, 0xc0, 0xc0, 0xff, 0x1f, 0xe2, 0x6a, 0xc1, 0xe7, 0xbd, 0xfc, 0xd6, 0xfa, + 0xd8, 0x75, 0x84, 0x2d, 0x19, 0x4f, 0x33, 0x17, 0x50, 0x46, 0x2c, 0x06, 0xb8, + 0xd7, 0x98, 0x2d, 0x67, 0x99, 0x5e, 0xd5, 0xd3, 0xae, 0x96, 0xa0, 0x5a, 0xe0, + 0x06, 0x7f, 0x4e, 0xb1, 0xc7, 0xc9, 0x32, 0x31, 0xbd, 0x39, 0x77, 0x3c, 0xbe, + 0x0a, 0x9d, 0x66, 0xb0, 0xc9, 0xaa, 0x8c, 0xff, 0x6a, 0x37, 0x6e, 0x1f, 0x37, + 0x2e, 0xac, 0x6a, 0xc4, 0xe4, 0x6c, 0xc0, 0x94, 0x22, 0x45, 0xd4, 0xc2, 0xdc, + 0xf0, 0x2d, 0x76, 0x40, 0xff, 0xcc, 0x5a, 0x6a, 0xc3, 0xa8, 0x7f, 0x5c, 0x41, + 0x15, 0x51, 0xbc, 0xc2, 0xf2, 0x6c, 0xb9, 0x49, 0x61, 0xd5, 0x3f, 0x95, 0xdd, + 0xb1, 0x9a, 0xe9, 0x30, 0xc8, 0xd7, 0x0f, 0x03, 0x1b, 0x29, 0xa5, 0xdf, 0x99, + 0xff, 0x36, 0x69, 0x5e, 0x80, 0x2c, 0xbc, 0xb6, 0xb5, 0x8c, 0x1b, 0xa7, 0xed, + 0x5e, 0xac, 0xfa, 0x76, 0x41, 0x4a, 0x41, 0xad, 0x4a, 0x44, 0xf7, 0x1f, 0x1b, + 0x58, 0x0d, 0x34, 0xc3, 0xa9, 0x52, 0x92, 0x0b, 0x25, 0x4a, 0x14, 0x5f, 0xea, + 0x51, 0x7f, 0x5b, 0x42, 0xb2, 0xf6, 0x5e, 0xcd, 0x0f, 0x82, 0x59, 0x54, 0x78, + 0xd8, 0x0a, 0xe5, 0xc8, 0xce, 0xea, 0x12, 0xa1, 0x61, 0xcc, 0xbb, 0x5e, 0xac, + 0x09, 0x99, 0x0f, 0xc6, 0x19, 0xa4, 0x60, 0x80, 0x43, 0x6d, 0xbd, 0x08, 0xd7, + 0x47, 0x84, 0xaf, 0x00, 0x2d, 0x58, 0xe0, 0x6f, 0xaf, 0x7f, 0x3c, 0xea, 0xe7, + 0xd3, 0x41, 0x9b, 0x1f, 0xca, 0x26, 0x5a, 0x55, 0x59, 0xcf, 0x9e, 0x2d, 0x3b, + 0x60, 0x97, 0x8d, 0x81, 0xa6, 0x78, 0xb9, 0xed, 0x8e, 0x44, 0x86, 0xb4, 0xd1, + 0x46, 0x09, 0xd6, 0xc1, 0x27, 0xc0, 0xc2, 0xfb, 0xff, 0xe3, 0x0a, 0x60, 0xf7, + 0xbf, 0xf1, 0xd9, 0xfb, 0x83, 0x00, 0xed, 0x00, 0x92, 0x53, 0xba, 0x9b, 0x99, + 0x6f, 0xa0, 0x52, 0x41, 0xb1, 0x0f, 0x5a, 0xc9, 0xa8, 0x40, 0x8e, 0x92, 0x07, + 0x42, 0x3a, 0x3b, 0x82, 0xaa, 0xd6, 0x02, 0x00, 0x89, 0x9c, 0x0a, 0xd4, 0x66, + 0xde, 0x17, 0xd7, 0xb5, 0x78, 0x05, 0xf6, 0x4d, 0x1b, 0xc9, 0x10, 0x93, 0xe1, + 0xa6, 0x3b, 0x93, 0x85, 0x36, 0xb4, 0x92, 0x44, 0xe9, 0x7d, 0x88, 0x01, 0x73, + 0x36, 0x60, 0xf2, 0xdd, 0xb7, 0x4d, 0x06, 0x8e, 0xcb, 0x46, 0xcf, 0x28, 0x9b, + 0x7d, 0x89, 0x13, 0x07, 0xbb, 0xa3, 0x70, 0x54, 0xcf, 0x91, 0xb3, 0x1f, 0xc8, + 0x2f, 0x74, 0xd5, 0xfc, 0xc0, 0x00, 0x94, 0x2e, 0xde, 0x91, 0x18, 0x25, 0xf5, + 0x3f, 0xe6, 0x09, 0x68, 0x6f, 0x46, 0x32, 0x23, 0xb1, 0xe9, 0xbc, 0x03, 0xbd, + 0xe8, 0x95, 0xd1, 0x23, 0x8f, 0xad, 0x04, 0xa3, 0xbf, 0xce, 0x68, 0xa0, 0x75, + 0xe8, 0xa3, 0x7c, 0x0e, 0x87, 0xbf, 0x46, 0xdd, 0x01, 0x55, 0x45, 0xf9, 0xb4, + 0xfb, 0x0e, 0xec, 0x64, 0x5f, 0xfc, 0xbb, 0xe0, 0xca, 0x5f, 0x8c, 0x56, 0x1b, + 0x25, 0x7d, 0x52, 0xd6, 0x02, 0xd8, 0xc9, 0x1a, 0xc6, 0x40, 0x16, 0xaa, 0x14, + 0x57, 0x2a, 0x2b, 0x02, 0x97, 0xf2, 0x0c, 0x14, 0xdd, 0x2d, 0xc7, 0x3b, 0x51, + 0x89, 0xf7, 0xae, 0x2a, 0x41, 0xef, 0x3d, 0x22, 0x5e, 0x5a, 0xd6, 0xa1, 0x18, + 0x23, 0x4a, 0xb3, 0x6d, 0xea, 0xa8, 0xb6, 0xb9, 0x0c, 0x90, 0x15, 0xa2, 0x53, + 0xb9, 0xe3, 0xa5, 0x8f, 0xa9, 0x4b, 0x6c, 0x6e, 0x01, 0x2d, 0x79, 0xe3, 0xf5, + 0x36, 0x89, 0xc2, 0xb1, 0xa1, 0x0e, 0x00, 0x0e, 0x8d, 0x8d, 0xa5, 0x22, 0x87, + 0x48, 0xc5, 0xc0, 0x0b, 0xfe, 0x68, 0x13, 0x54, 0x69, 0x15, 0x3c, 0xb9, 0xce, + 0x6e, 0xea, 0x28, 0x6f, 0x70, 0x2a, 0x91, 0xda, 0xf6, 0x02, 0xbe, 0x2a, 0x2c, + 0x5e, 0x37, 0x45, 0xf0, 0x09, 0xc5, 0xdc, 0xe2, 0x0b, 0x69, 0xd5, 0xd7, 0xc4, + 0x3c, 0xeb, 0x73, 0x6b, 0x68, 0x31, 0xe8, 0xc1, 0x10, 0xf1, 0x6c, 0xfd, 0xb3, + 0xa4, 0x67, 0xe9, 0x41, 0x4c, 0x00, 0x00, + ], + txid: [ + 0x9f, 0x65, 0x3f, 0x24, 0x82, 0x8b, 0xc3, 0xd7, 0xe7, 0xb5, 0xb5, 0x97, 0x7f, + 0xa3, 0xd5, 0xe4, 0xc9, 0x42, 0x8f, 0x10, 0x71, 0xd5, 0xe7, 0xdc, 0x9c, 0x16, + 0x83, 0x1b, 0xd5, 0xbc, 0x91, 0xab, + ], + auth_digest: [ + 0x59, 0xe0, 0x24, 0x6b, 0x13, 0x86, 0xb5, 0x49, 0xcf, 0x1e, 0x11, 0x99, 0x96, + 0x90, 0x3e, 0xdc, 0x22, 0x7b, 0x26, 0x85, 0xd9, 0xe8, 0xc0, 0x15, 0x0e, 0x96, + 0x55, 0xb8, 0xae, 0xad, 0x22, 0xd5, + ], + amounts: vec![], + script_pubkeys: vec![], + transparent_input: None, + sighash_shielded: [ + 0x9f, 0x65, 0x3f, 0x24, 0x82, 0x8b, 0xc3, 0xd7, 0xe7, 0xb5, 0xb5, 0x97, 0x7f, + 0xa3, 0xd5, 0xe4, 0xc9, 0x42, 0x8f, 0x10, 0x71, 0xd5, 0xe7, 0xdc, 0x9c, 0x16, + 0x83, 0x1b, 0xd5, 0xbc, 0x91, 0xab, + ], + sighash_all: None, + sighash_none: None, + sighash_single: None, + sighash_all_anyone: None, + sighash_none_anyone: None, + sighash_single_anyone: None, + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x47, + 0x1d, 0x13, 0xc1, 0xab, 0x39, 0xd9, 0x19, 0x03, 0xe8, 0x43, 0xab, 0x1d, 0x28, + 0xff, 0xa8, 0xf6, 0x9d, 0xc7, 0xe1, 0x5c, 0xc3, 0x8b, 0x12, 0xe8, 0xfc, 0xd7, + 0x92, 0x55, 0xb7, 0x21, 0x60, 0x56, 0xd9, 0xed, 0xb7, 0x48, 0x2f, 0xb9, 0x8a, + 0xa0, 0x33, 0xb6, 0x5e, 0x51, 0x07, 0x00, 0x53, 0x52, 0x51, 0x00, 0x63, 0xac, + 0x09, 0xb7, 0x34, 0xf4, 0x52, 0xaa, 0xf0, 0xd6, 0xb1, 0x8f, 0x50, 0x25, 0x86, + 0x83, 0xd3, 0xf9, 0xa7, 0x6d, 0x39, 0x9f, 0xd0, 0x47, 0xee, 0xe2, 0x88, 0xbb, + 0x45, 0x85, 0x85, 0x1d, 0xc9, 0x3e, 0xcc, 0xc6, 0x23, 0x22, 0x92, 0x4c, 0xd1, + 0x3b, 0x03, 0xac, 0x65, 0x65, 0x6e, 0xd8, 0xd9, 0x97, 0x2d, 0x77, 0x26, 0x29, + 0xea, 0x64, 0x74, 0x2e, 0x54, 0x73, 0x39, 0x81, 0xb0, 0x06, 0xc0, 0x62, 0x46, + 0x8e, 0x4b, 0xd8, 0xf7, 0xdd, 0x9a, 0xf6, 0x98, 0xf5, 0x2a, 0xe8, 0x14, 0x63, + 0x4e, 0x81, 0xd7, 0xf3, 0xe0, 0xc4, 0x02, 0x51, 0xac, 0xac, 0xa9, 0xae, 0x48, + 0x00, 0x00, 0x02, 0xa8, 0xbb, 0x16, 0xde, 0x29, 0x4d, 0x31, 0xa4, 0x36, 0x00, + 0x0f, 0x41, 0x07, 0xca, 0x39, 0x6d, 0xfc, 0x5a, 0x8d, 0x41, 0xdf, 0xbd, 0x62, + 0x55, 0xcf, 0xbe, 0x3a, 0x4f, 0x3e, 0x62, 0xb9, 0x4f, 0xb2, 0x01, 0x52, 0x13, + 0x3b, 0xa3, 0x83, 0x1a, 0xf4, 0x20, 0x76, 0xd9, 0x9b, 0xfa, 0x78, 0xab, 0x6b, + 0x39, 0x31, 0x1a, 0x7b, 0x2d, 0x2f, 0xe2, 0xbf, 0x24, 0x26, 0x7b, 0xeb, 0xcd, + 0x6f, 0x4c, 0xd6, 0xf1, 0x3a, 0xd0, 0x53, 0x36, 0x1d, 0x43, 0x30, 0x6c, 0x31, + 0x44, 0x61, 0x4a, 0xd8, 0x1d, 0xed, 0x2b, 0xfe, 0x88, 0x88, 0x4d, 0x04, 0xd8, + 0xbe, 0xc4, 0x80, 0xcf, 0x08, 0x0d, 0xd3, 0x27, 0x4d, 0x42, 0xb4, 0xbc, 0x2b, + 0x4a, 0x03, 0x8a, 0xe6, 0xe4, 0x6b, 0x24, 0xcf, 0xc8, 0x41, 0x53, 0xd3, 0x1e, + 0xaf, 0x89, 0x50, 0x63, 0xa5, 0xca, 0x95, 0x9b, 0xe6, 0x3f, 0x37, 0xf2, 0xba, + 0x0d, 0x43, 0x23, 0x66, 0x73, 0x6d, 0x86, 0x32, 0xfc, 0xe0, 0x72, 0xb6, 0xae, + 0x5b, 0x6f, 0x3f, 0xd5, 0x9d, 0x3f, 0xaf, 0xf6, 0x38, 0x27, 0x5a, 0x99, 0x2f, + 0xef, 0xc8, 0x7e, 0x60, 0xd4, 0x4c, 0x2c, 0xad, 0xc2, 0xb5, 0xc4, 0x94, 0xe3, + 0xe7, 0x2e, 0xb4, 0x59, 0x7c, 0x96, 0xb4, 0x01, 0x67, 0x79, 0x9a, 0x90, 0x01, + 0xa2, 0xed, 0x36, 0x76, 0xa8, 0xb4, 0x03, 0xae, 0x25, 0xff, 0xd7, 0x72, 0xf7, + 0x08, 0x1e, 0x9a, 0x32, 0xbc, 0xc1, 0xc5, 0xe2, 0xed, 0xd4, 0xe2, 0xa6, 0x57, + 0x6b, 0x78, 0x3c, 0xce, 0x3a, 0xae, 0x11, 0xfa, 0x43, 0x22, 0x62, 0x54, 0x88, + 0x56, 0x18, 0x3e, 0xe6, 0x82, 0xd5, 0xdc, 0x31, 0xbe, 0xb3, 0x8f, 0x06, 0x1c, + 0xbd, 0xec, 0xa7, 0x02, 0x1a, 0x44, 0x4e, 0x2d, 0xd4, 0x17, 0xdf, 0x26, 0xdc, + 0xd2, 0x20, 0xf2, 0xb7, 0x31, 0x77, 0x2b, 0x43, 0x9e, 0x96, 0xd6, 0x14, 0xe1, + 0xfa, 0xcb, 0x48, 0x6c, 0x7a, 0x7d, 0x51, 0x71, 0xb1, 0xde, 0x35, 0x9f, 0x6a, + 0xd3, 0xa9, 0x6f, 0x64, 0x9c, 0x96, 0x91, 0x02, 0xa1, 0x96, 0x4f, 0xb4, 0xb4, + 0xa1, 0xa4, 0x27, 0x9c, 0x68, 0xe6, 0xc3, 0x72, 0xe4, 0x21, 0x87, 0xd7, 0x54, + 0xe8, 0x04, 0xa6, 0x16, 0x53, 0x09, 0x20, 0x69, 0xfb, 0x9b, 0x6d, 0x25, 0x26, + 0x68, 0x90, 0x80, 0x8b, 0x01, 0x5d, 0xf2, 0x8c, 0x80, 0x10, 0x65, 0xda, 0x6f, + 0xeb, 0xdc, 0x1a, 0x56, 0xbf, 0xd0, 0x02, 0x62, 0x5a, 0xcf, 0xaa, 0x53, 0x73, + 0xfd, 0xe1, 0x49, 0xc1, 0xcf, 0xc3, 0x64, 0x9b, 0x48, 0x69, 0x69, 0x6d, 0x44, + 0xec, 0xb1, 0x24, 0x79, 0xc5, 0xeb, 0xef, 0x99, 0x5f, 0x10, 0x02, 0x9f, 0x8b, + 0x53, 0x0e, 0xeb, 0x3f, 0xdc, 0x2e, 0x50, 0xe8, 0x75, 0x7f, 0xc0, 0xbb, 0x9e, + 0x26, 0x30, 0x23, 0xdb, 0x82, 0xf8, 0x78, 0xd9, 0xac, 0x7f, 0xfb, 0x0b, 0xd4, + 0x39, 0x1d, 0xf1, 0xd8, 0x79, 0x89, 0x9a, 0x3e, 0xf5, 0x7b, 0xfd, 0x0d, 0x1f, + 0x77, 0x55, 0x64, 0x8e, 0xdd, 0x85, 0xbb, 0x05, 0x2a, 0x6e, 0xdf, 0x71, 0xcd, + 0x26, 0x28, 0xc9, 0x87, 0x42, 0x9f, 0x36, 0xdc, 0x50, 0x5c, 0xcc, 0x43, 0xf3, + 0x0e, 0x7a, 0x86, 0x9c, 0x9e, 0x25, 0x5e, 0x2a, 0xf9, 0xfc, 0xf3, 0x0c, 0x12, + 0x17, 0x96, 0xd1, 0x90, 0x00, 0x09, 0x60, 0xcb, 0x6f, 0xe2, 0xf1, 0xbf, 0x24, + 0x61, 0x18, 0xb4, 0x98, 0xf3, 0x24, 0x7f, 0x9d, 0x48, 0x4c, 0x73, 0xcf, 0x09, + 0x39, 0x30, 0x39, 0xe4, 0x53, 0x26, 0xb8, 0xff, 0xff, 0xb3, 0xe7, 0xe6, 0x15, + 0x9c, 0x46, 0x69, 0x9f, 0x10, 0x07, 0x92, 0xd4, 0x67, 0x29, 0x50, 0x34, 0x8a, + 0x90, 0x55, 0x2e, 0x45, 0x94, 0x3b, 0xee, 0xac, 0xf0, 0x3f, 0x32, 0x16, 0xf9, + 0x4e, 0x27, 0x4d, 0x63, 0xd6, 0x37, 0xd9, 0xf1, 0x90, 0xe8, 0xa2, 0x66, 0xcd, + 0xee, 0xf1, 0x53, 0x53, 0x0b, 0xee, 0x5c, 0xb8, 0x35, 0x52, 0x60, 0x50, 0x5c, + 0x2c, 0x2e, 0x5d, 0x99, 0x0f, 0xff, 0xdc, 0x34, 0xec, 0x0f, 0xf7, 0xf1, 0xaf, + 0x81, 0xb2, 0x4c, 0xed, 0x0e, 0xfa, 0x62, 0x13, 0xda, 0x6c, 0x7c, 0x60, 0xc4, + 0x87, 0xf5, 0xf7, 0xb0, 0x3f, 0x81, 0x60, 0xa0, 0x57, 0xf4, 0x6d, 0x05, 0xbf, + 0x82, 0x18, 0xb3, 0xad, 0xd9, 0xc0, 0x68, 0x93, 0xbd, 0x02, 0xdb, 0x9b, 0x61, + 0x19, 0x1d, 0xfb, 0x13, 0x3b, 0xfa, 0xbe, 0x48, 0x58, 0xe4, 0x7a, 0x4c, 0xc3, + 0x2e, 0x41, 0x6e, 0xc0, 0x8b, 0x8a, 0xc7, 0x91, 0x5a, 0x43, 0x73, 0x3f, 0x44, + 0x06, 0xe9, 0xd9, 0x67, 0xc5, 0x60, 0xf3, 0x44, 0xd7, 0xe9, 0x04, 0xa2, 0x80, + 0x45, 0xd9, 0x9f, 0x3a, 0xf8, 0xc8, 0x2e, 0x97, 0xe1, 0xb9, 0xc1, 0xb2, 0x05, + 0xe5, 0x85, 0xfb, 0xeb, 0xb4, 0x8f, 0xaf, 0x58, 0xf1, 0xb6, 0x5d, 0xca, 0x24, + 0x97, 0xe0, 0x9a, 0x70, 0xaa, 0xd4, 0x86, 0x5f, 0x85, 0x71, 0x5a, 0x28, 0x0e, + 0x18, 0x6f, 0x3f, 0xc1, 0x74, 0x0d, 0x81, 0x84, 0xd3, 0x3e, 0x83, 0x22, 0x16, + 0x95, 0x21, 0xcd, 0xc1, 0x32, 0x21, 0x29, 0x39, 0xc8, 0x4a, 0x10, 0x89, 0x64, + 0xe2, 0xde, 0x74, 0xb6, 0xea, 0x55, 0xb4, 0xcb, 0x8f, 0x6f, 0x9b, 0xee, 0x98, + 0xb1, 0x0d, 0x41, 0x51, 0x09, 0x45, 0x5f, 0x48, 0xb7, 0x76, 0x08, 0x2d, 0xc3, + 0x0b, 0x4b, 0xc7, 0x34, 0x77, 0x07, 0x55, 0x11, 0x70, 0x03, 0x08, 0x15, 0x8c, + 0xe2, 0xf2, 0xf9, 0xbf, 0x0f, 0x69, 0x1b, 0x2c, 0xe5, 0x3e, 0x61, 0x14, 0x2c, + 0xb7, 0x40, 0xc1, 0x5b, 0x7b, 0x62, 0x3c, 0xf4, 0x8b, 0x3f, 0x7b, 0xfe, 0xfa, + 0x31, 0xbc, 0xdc, 0x66, 0x5c, 0xe7, 0x59, 0x2d, 0x76, 0x40, 0xb0, 0xee, 0x13, + 0xee, 0x13, 0x8a, 0x2a, 0x51, 0xc5, 0x3b, 0x75, 0xfa, 0x04, 0x55, 0x7b, 0x9c, + 0xe7, 0xad, 0x7f, 0x2f, 0x3d, 0xa0, 0xb1, 0x38, 0xba, 0x7f, 0xec, 0xa8, 0x6b, + 0xf2, 0xc7, 0x6f, 0x39, 0x93, 0x15, 0x4f, 0xc7, 0x3e, 0x6f, 0xbb, 0xa2, 0x21, + 0x0c, 0x27, 0x43, 0xf5, 0x30, 0xa4, 0x27, 0x84, 0x9a, 0x30, 0x1e, 0x00, 0xe0, + 0x11, 0x29, 0xf0, 0x3a, 0x90, 0x93, 0x91, 0xd8, 0x32, 0xbd, 0x39, 0x28, 0x80, + 0x18, 0xe5, 0x53, 0xde, 0xcd, 0xe5, 0x28, 0x78, 0xe5, 0xd5, 0x23, 0xfd, 0xcc, + 0x50, 0x87, 0xb2, 0xf8, 0xa0, 0xff, 0xc8, 0x8c, 0x0e, 0xd0, 0x44, 0xe5, 0x49, + 0xc4, 0x53, 0x48, 0x19, 0xac, 0xd8, 0xbb, 0x0a, 0x02, 0xa5, 0xfa, 0x7a, 0x1c, + 0x1d, 0x38, 0x06, 0xfb, 0xc3, 0x40, 0x7f, 0xd7, 0xda, 0x93, 0xfd, 0x0d, 0xe6, + 0x40, 0x0d, 0x3a, 0xb8, 0x97, 0x74, 0x85, 0xcd, 0xdf, 0xbe, 0xd5, 0x93, 0x2f, + 0x50, 0x7b, 0x79, 0x94, 0x7a, 0xdb, 0x2f, 0xad, 0x37, 0x61, 0x5a, 0xa7, 0x17, + 0xdb, 0x5f, 0x29, 0x80, 0x99, 0xf2, 0x0f, 0x26, 0x3b, 0x35, 0x9a, 0x11, 0x51, + 0xa6, 0xb7, 0x5c, 0x01, 0x36, 0x5e, 0xb1, 0x54, 0xae, 0x42, 0x14, 0x0d, 0x6e, + 0x10, 0x34, 0x2f, 0x14, 0xf3, 0x4d, 0xc3, 0x3e, 0x07, 0xff, 0x0e, 0x4d, 0x1a, + 0x6b, 0xe3, 0x75, 0xb3, 0x2f, 0x84, 0xb9, 0x2e, 0x5d, 0x81, 0xeb, 0xb6, 0x39, + 0xc4, 0xf2, 0x7e, 0x71, 0x5a, 0xa4, 0x2c, 0xc7, 0x57, 0x07, 0xd4, 0xeb, 0xd1, + 0xbb, 0xfb, 0xe8, 0xf9, 0x0f, 0xc7, 0xc9, 0x53, 0xe7, 0xa9, 0x71, 0x5e, 0x65, + 0xaf, 0x82, 0x67, 0x37, 0x3d, 0x34, 0x51, 0x67, 0x4f, 0xf0, 0x84, 0xef, 0xd9, + 0x2c, 0xcf, 0x3b, 0xcc, 0x7a, 0xca, 0x14, 0x67, 0xb6, 0x32, 0x7e, 0x4f, 0x95, + 0x22, 0xb2, 0xcc, 0x57, 0x9a, 0x7a, 0x8f, 0xff, 0x7c, 0xa7, 0xcf, 0x14, 0x5d, + 0xfc, 0x13, 0xea, 0xfc, 0x34, 0x15, 0x3b, 0x2c, 0x3e, 0x8a, 0xfb, 0xe5, 0x34, + 0x44, 0xd0, 0xc7, 0x3b, 0x3b, 0xd5, 0xbc, 0x87, 0x0b, 0x01, 0xcd, 0x45, 0x79, + 0x11, 0xe3, 0x56, 0x31, 0x3f, 0xd1, 0xda, 0xfb, 0x4c, 0x81, 0x51, 0x63, 0x4a, + 0x01, 0xaf, 0xf7, 0xcf, 0x11, 0x6d, 0x43, 0x3c, 0x3d, 0x2b, 0x3a, 0xdd, 0xa9, + 0xce, 0xbe, 0x18, 0xf7, 0xd1, 0x72, 0x44, 0x3e, 0x5e, 0x7b, 0x5a, 0xc9, 0xab, + 0xe8, 0xdb, 0x22, 0x56, 0xd7, 0xeb, 0xe2, 0xff, 0x28, 0x02, 0x09, 0x39, 0x50, + 0x38, 0x70, 0x59, 0x7b, 0x9a, 0x95, 0x58, 0x92, 0xc7, 0x38, 0x96, 0x50, 0xa2, + 0xd4, 0x2e, 0xc9, 0x2b, 0xe7, 0x23, 0xfe, 0xdf, 0x2f, 0x2e, 0xde, 0x5a, 0x47, + 0x2a, 0xa1, 0xe7, 0x4f, 0x33, 0xad, 0x41, 0x90, 0x15, 0x44, 0xed, 0xbb, 0xe3, + 0xac, 0x46, 0x4c, 0xf4, 0x39, 0x19, 0x60, 0x15, 0xf4, 0xf2, 0x2a, 0xc2, 0xb8, + 0xfc, 0x01, 0x49, 0x6b, 0xea, 0xb4, 0xd4, 0x59, 0x07, 0xf4, 0x79, 0x81, 0x2a, + 0x25, 0x94, 0x31, 0xa2, 0xcb, 0xc9, 0x3d, 0x4f, 0x3b, 0x84, 0xe4, 0xdd, 0x36, + 0x60, 0x20, 0x27, 0x3a, 0x67, 0x52, 0xe5, 0x01, 0xaf, 0x6f, 0xf1, 0xb7, 0x8d, + 0xdc, 0x81, 0x7e, 0x6e, 0xa3, 0x51, 0xd6, 0x00, 0x6b, 0xec, 0xf8, 0xd2, 0xff, + 0xb0, 0x39, 0x90, 0xf6, 0x77, 0x74, 0xa8, 0x1e, 0x05, 0xb7, 0xf4, 0xbb, 0xad, + 0x85, 0x77, 0xfa, 0x27, 0xc9, 0xde, 0x64, 0xe1, 0xb1, 0x1d, 0xcf, 0x38, 0x4f, + 0x59, 0x56, 0x44, 0x37, 0x48, 0x75, 0x5a, 0x9f, 0xc6, 0xf2, 0xa0, 0x0b, 0x10, + 0xc3, 0x65, 0x7e, 0xba, 0xc0, 0x3b, 0xfc, 0x0b, 0x58, 0x7b, 0xef, 0x2f, 0x45, + 0xec, 0x8a, 0xcd, 0xaa, 0x51, 0xc1, 0x43, 0xb0, 0xcb, 0x25, 0xb9, 0x14, 0x2c, + 0x61, 0xbd, 0x79, 0x0a, 0x80, 0xd7, 0xc2, 0x3f, 0x90, 0xcc, 0x03, 0x49, 0x5b, + 0x51, 0xe4, 0xd2, 0x84, 0x3e, 0x55, 0x7f, 0x9e, 0x25, 0x45, 0x10, 0x8c, 0x6c, + 0x6f, 0xae, 0x35, 0x9f, 0x64, 0x5c, 0x27, 0x68, 0x91, 0xc0, 0xdc, 0xab, 0x3f, + 0xaf, 0x18, 0x77, 0x00, 0xc0, 0x82, 0xdc, 0x47, 0x77, 0x40, 0xfb, 0x3f, 0x2c, + 0xd7, 0xbb, 0x59, 0xfb, 0x35, 0x85, 0x54, 0xe9, 0x4c, 0x7e, 0x67, 0x8c, 0xe0, + 0x1a, 0xeb, 0xf9, 0x4e, 0x51, 0x5e, 0x49, 0x72, 0x29, 0x67, 0x99, 0x5a, 0xea, + 0x85, 0x8d, 0x64, 0xe7, 0x78, 0x9f, 0xf3, 0x06, 0x36, 0x95, 0x77, 0x22, 0x81, + 0x80, 0x32, 0x6a, 0x5b, 0x0a, 0xf4, 0x75, 0xe2, 0x7a, 0x54, 0xb2, 0x07, 0xb4, + 0x1f, 0x92, 0xe3, 0x76, 0x17, 0x0e, 0x3f, 0xb0, 0x05, 0x02, 0x82, 0x61, 0xc9, + 0x9c, 0x2d, 0xbd, 0x0e, 0xed, 0xee, 0x87, 0x1c, 0x1c, 0x0f, 0x48, 0xb8, 0xe9, + 0xb8, 0xe4, 0xbe, 0x77, 0xd1, 0xb7, 0x37, 0xfe, 0x21, 0xf0, 0xfa, 0x5a, 0x18, + 0xeb, 0xb5, 0x27, 0x55, 0xb5, 0xa6, 0xcf, 0x61, 0x30, 0xfb, 0x56, 0x94, 0x4c, + 0xfa, 0xb8, 0x75, 0x27, 0xc2, 0x50, 0xd1, 0x13, 0xb2, 0x9b, 0xca, 0xc9, 0xaa, + 0xa1, 0x0c, 0x2e, 0x7d, 0xe4, 0x15, 0xed, 0xb0, 0x80, 0x6c, 0x6d, 0xa0, 0x30, + 0x20, 0xa1, 0x34, 0xca, 0x7e, 0xcd, 0xc8, 0xda, 0x1b, 0xd5, 0x7a, 0x37, 0xf5, + 0x5a, 0x46, 0x94, 0x0b, 0x45, 0xb2, 0x41, 0xb1, 0xc1, 0x6e, 0xe1, 0x00, 0x92, + 0x7d, 0x1b, 0xd8, 0x60, 0xd4, 0x45, 0xa9, 0xde, 0x50, 0xd4, 0xc3, 0x84, 0xd6, + 0xe1, 0xd0, 0x01, 0x08, 0x02, 0x6c, 0x0e, 0xa5, 0xeb, 0xbf, 0x0b, 0x72, 0xfb, + 0xf5, 0xc3, 0x70, 0xbc, 0xe1, 0x8d, 0x3a, 0x6e, 0xdf, 0x98, 0x3c, 0xd9, 0x92, + 0x05, 0x00, 0x6d, 0x71, 0x23, 0xe9, 0x53, 0x50, 0x81, 0x13, 0x75, 0x94, 0x7b, + 0x05, 0x5a, 0x43, 0xdb, 0x07, 0xe0, 0x3f, 0x33, 0x62, 0x7d, 0xf5, 0xc6, 0x38, + 0xbf, 0xad, 0x95, 0x6d, 0xdc, 0x1e, 0xa7, 0xd7, 0x62, 0x0a, 0x20, 0xf2, 0x79, + 0x2f, 0x63, 0x81, 0x7a, 0x1c, 0xf3, 0x25, 0x80, 0xd0, 0x42, 0x74, 0x23, 0x4a, + 0xf2, 0xa5, 0x1b, 0x56, 0xbb, 0x68, 0xa2, 0x9e, 0x43, 0xa9, 0x54, 0x14, 0x2b, + 0xa4, 0xca, 0x68, 0x23, 0xbd, 0xe9, 0x05, 0x3d, 0x72, 0xfd, 0xad, 0xbc, 0x61, + 0xad, 0x59, 0x36, 0xc5, 0x3f, 0xdd, 0x75, 0x79, 0x44, 0x6d, 0x11, 0xc4, 0x46, + 0x07, 0xf4, 0x16, 0x30, 0xe4, 0xc0, 0x89, 0x15, 0xe6, 0x31, 0x77, 0x15, 0x50, + 0xe9, 0xce, 0x1f, 0xca, 0x2c, 0x63, 0xfe, 0x06, 0xb7, 0x98, 0x9d, 0x58, 0x4f, + 0xa7, 0xd7, 0x82, 0xa8, 0x8c, 0x1e, 0x7d, 0x64, 0xb6, 0xfb, 0xf5, 0x5e, 0x35, + 0x96, 0xaf, 0x9b, 0xcb, 0x75, 0x85, 0xf8, 0xc7, 0xd3, 0xaa, 0x5c, 0x20, 0x82, + 0xb2, 0x65, 0x24, 0x9d, 0xf0, 0x57, 0x01, 0xda, 0xb0, 0x31, 0xc4, 0xba, 0xc1, + 0xea, 0x26, 0x7a, 0x29, 0x96, 0xa2, 0x02, 0x8d, 0x1e, 0x6a, 0x0f, 0x80, 0xa3, + 0x84, 0x7c, 0x53, 0x1d, 0xba, 0x96, 0xee, 0x65, 0xa2, 0x41, 0x89, 0xbd, 0x27, + 0x12, 0xe4, 0x0e, 0x95, 0x96, 0x64, 0x98, 0x1e, 0x58, 0xb2, 0xa4, 0xf9, 0xcb, + 0xc4, 0x65, 0x99, 0x09, 0x9b, 0xaa, 0xe1, 0xd8, 0x02, 0xf7, 0x73, 0x33, 0x49, + 0x4a, 0x7a, 0xe1, 0x30, 0xfe, 0x86, 0xe8, 0xf8, 0x18, 0xf9, 0x26, 0x1a, 0x2d, + 0xad, 0xb4, 0x12, 0x52, 0x29, 0xba, 0x0f, 0xfc, 0x0e, 0x70, 0x90, 0x32, 0x44, + 0x30, 0xb5, 0x21, 0xa9, 0x0d, 0x22, 0x4a, 0xb7, 0xa1, 0x02, 0x4e, 0x1d, 0x89, + 0x3e, 0x74, 0x04, 0xfe, 0xdb, 0x34, 0x8e, 0x4d, 0x5e, 0x22, 0x35, 0xc5, 0x9a, + 0x78, 0x76, 0xa0, 0xfc, 0x60, 0x14, 0x5c, 0x6a, 0x00, 0x96, 0x87, 0x68, 0x44, + 0x60, 0x27, 0x1e, 0xe1, 0x33, 0xa4, 0x37, 0xfe, 0x52, 0xfb, 0x6c, 0xfb, 0xa9, + 0x7f, 0xce, 0xc1, 0x61, 0xdf, 0x51, 0x5d, 0xde, 0x90, 0x5a, 0x24, 0xda, 0x6d, + 0x37, 0xbd, 0xc3, 0x40, 0x44, 0xa9, 0x55, 0xe6, 0x82, 0xb4, 0x74, 0x71, 0xca, + 0x1e, 0x8c, 0x78, 0xc5, 0x1e, 0xd3, 0x77, 0xcd, 0x4a, 0xfa, 0x89, 0x4b, 0xd9, + 0xbd, 0x12, 0xe7, 0x07, 0x15, 0x6d, 0xa0, 0x72, 0x6f, 0x7c, 0xf5, 0x72, 0x9f, + 0xab, 0xe3, 0x72, 0x16, 0x04, 0x63, 0xfe, 0x04, 0x29, 0x24, 0x4d, 0x06, 0x74, + 0x89, 0xba, 0x5d, 0x09, 0x47, 0x2e, 0xcd, 0x9b, 0xcd, 0xc4, 0xd5, 0xe4, 0xdf, + 0x10, 0x1e, 0x18, 0x9d, 0xb8, 0x46, 0x3e, 0xb5, 0x38, 0x30, 0x7b, 0x58, 0x7d, + 0xef, 0xf7, 0x8d, 0xe9, 0xc7, 0x3a, 0xf2, 0x80, 0x80, 0xf0, 0x5f, 0x80, 0x08, + 0xd5, 0x9d, 0x2e, 0x9b, 0xed, 0x88, 0x33, 0x25, 0x88, 0x4a, 0x42, 0x43, 0x7c, + 0x35, 0xf5, 0x99, 0xe2, 0xe3, 0x6b, 0x15, 0xf5, 0x10, 0x30, 0x79, 0x28, 0x24, + 0x6b, 0xd2, 0xbf, 0x0b, 0x5f, 0xb4, 0x52, 0x29, 0x12, 0x3c, 0x6f, 0xc4, 0xdc, + 0x37, 0x24, 0x69, 0xea, 0x09, 0x5a, 0x0e, 0x50, 0x43, 0xdf, 0xed, 0x02, 0xbe, + 0x9d, 0xc6, 0xcb, 0xf8, 0xc3, 0xac, 0x3b, 0x03, 0x04, 0x3f, 0xb4, 0x97, 0xa1, + 0xbc, 0xec, 0xc9, 0xd3, 0x87, 0x71, 0xe9, 0x58, 0x0b, 0x71, 0x8f, 0x6b, 0x9a, + 0x1f, 0x77, 0x11, 0x28, 0x01, 0x09, 0x18, 0xab, 0x10, 0xe0, 0x40, 0xed, 0xff, + 0x3b, 0x95, 0x17, 0xff, 0x45, 0x33, 0xca, 0x23, 0x95, 0xac, 0xd1, 0x38, 0xc5, + 0x3a, 0x27, 0x48, 0x01, 0x7a, 0x7e, 0xd8, 0x2b, 0x7b, 0x05, 0xa8, 0xcf, 0xe1, + 0xe3, 0x73, 0x45, 0x9f, 0x1b, 0xdc, 0xbf, 0x15, 0x1b, 0x32, 0xaf, 0x95, 0x15, + 0x93, 0x1c, 0x0f, 0xbc, 0x23, 0x11, 0x19, 0x74, 0xdd, 0xe4, 0xe5, 0x63, 0xe7, + 0x1b, 0xf0, 0x59, 0xa1, 0xe2, 0x9c, 0x2d, 0x8e, 0xc9, 0xfc, 0x2b, 0x3f, 0x3d, + 0xb4, 0xa6, 0x78, 0xb9, 0x9b, 0xa8, 0xe7, 0x80, 0xeb, 0x46, 0xa3, 0x6b, 0x59, + 0xa0, 0x7d, 0x7b, 0xf8, 0x97, 0xcb, 0x0e, 0xd9, 0xe3, 0xf7, 0x43, 0x6e, 0x1c, + 0x76, 0x43, 0x76, 0x6f, 0x96, 0x6b, 0x03, 0x09, 0x76, 0x4e, 0xdb, 0x5f, 0x8f, + 0xd5, 0xed, 0x5c, 0xc9, 0xd7, 0x36, 0x69, 0xcb, 0x06, 0x11, 0xf9, 0x68, 0xc5, + 0xfe, 0xcf, 0x5e, 0xbf, 0x53, 0x11, 0xe0, 0xe5, 0x12, 0xe6, 0xc6, 0x9f, 0xbf, + 0xd5, 0x47, 0xd8, 0x48, 0x54, 0x81, 0x7e, 0xf3, 0x96, 0x35, 0xc2, 0x98, 0x27, + 0xaa, 0xd8, 0x67, 0x26, 0xc9, 0xad, 0xe3, 0xb2, 0x65, 0xb9, 0x08, 0x6c, 0x8b, + 0x5b, 0x75, 0xef, 0x56, 0xfe, 0x4b, 0xd8, 0xb4, 0xd6, 0x28, 0x93, 0x89, 0x5b, + 0x3f, 0xd2, 0x73, 0x4f, 0xda, 0xc4, 0x64, 0x15, 0x6d, 0x7e, 0x5e, 0xbc, 0x7e, + 0xcf, 0x1d, 0x83, 0xb8, 0x6f, 0x65, 0x96, 0x37, 0xe3, 0xb1, 0x42, 0xc1, 0x64, + 0x96, 0x3b, 0x8c, 0xdc, 0xf4, 0xba, 0x4f, 0x40, 0x35, 0xdf, 0xfc, 0x5a, 0x78, + 0x94, 0x58, 0x84, 0x77, 0x81, 0x91, 0x8a, 0xc7, 0x2f, 0xc1, 0x8b, 0xbb, 0xf5, + 0x11, 0x00, 0x32, 0xe6, 0x6d, 0x75, 0xb3, 0x17, 0x1e, 0xf4, 0xb5, 0x13, 0x29, + 0x01, 0x64, 0xa7, 0x7b, 0x42, 0xb0, 0xa4, 0xcf, 0xb8, 0x96, 0x39, 0xab, 0x23, + 0x84, 0x5e, 0x1a, 0xa2, 0xa4, 0x52, 0xf3, 0x73, 0x1c, 0x8c, 0xb6, 0x50, 0x82, + 0xa6, 0x22, 0xa7, 0xc2, 0xe0, 0x01, 0x3e, 0xa4, 0x7d, 0x0b, 0xdd, 0x42, 0xd6, + 0x99, 0x04, 0x66, 0x64, 0x9a, 0x90, 0x5c, 0x68, 0x4c, 0x32, 0x51, 0x71, 0x6d, + 0x61, 0xf7, 0x60, 0xd5, 0x3d, 0xe6, 0xe3, 0xf7, 0x90, 0xfb, 0xa7, 0xf5, 0xf1, + 0xf4, 0xde, 0x26, 0x71, 0x13, 0xbd, 0xfc, 0xd7, 0x42, 0x28, 0x22, 0x33, 0x0b, + 0x32, 0xd5, 0x8e, 0x67, 0x77, 0x76, 0x5f, 0x22, 0xa4, 0x11, 0x63, 0x44, 0xee, + 0xb6, 0x5b, 0x2e, 0xc5, 0x16, 0x39, 0x3a, 0xb3, 0x75, 0x1b, 0x53, 0x56, 0xd2, + 0xb0, 0xc9, 0x50, 0x0c, 0x0f, 0x3e, 0x46, 0x91, 0x81, 0x03, 0x5b, 0xc3, 0x66, + 0x0f, 0x0b, 0x8f, 0x9f, 0xbe, 0x6e, 0x40, 0xb5, 0xe8, 0x9c, 0xb7, 0x9b, 0x06, + 0x37, 0x14, 0xca, 0x75, 0xe7, 0x2e, 0x2e, 0x10, 0x0a, 0x10, 0xd6, 0x3b, 0xf7, + 0x84, 0xdf, 0x08, 0x20, 0xef, 0x25, 0xf8, 0xef, 0x40, 0xfe, 0x5f, 0x05, 0xfb, + 0x95, 0x68, 0x3f, 0x91, 0x05, 0xff, 0x3c, 0xb2, 0xd2, 0x19, 0xab, 0x76, 0x60, + 0x5a, 0x06, 0x4f, 0x69, 0x21, 0x9f, 0x1d, 0xc0, 0xd0, 0x0b, 0x3b, 0x48, 0x64, + 0x2f, 0x97, 0x0d, 0xc0, 0x0c, 0xca, 0x4b, 0x8b, 0x43, 0x30, 0x8b, 0xe1, 0x82, + 0x86, 0xec, 0x5a, 0x42, 0x88, 0xd6, 0x00, 0xa3, 0x78, 0x5c, 0xb6, 0x22, 0xd4, + 0x68, 0xa4, 0xc6, 0x96, 0x9b, 0x37, 0x92, 0xf2, 0x48, 0x50, 0x27, 0xd0, 0xad, + 0x9a, 0xa4, 0xa9, 0xc2, 0xcc, 0x97, 0x2f, 0x9e, 0xe5, 0x19, 0x0a, 0x95, 0xb1, + 0xeb, 0x05, 0x8d, 0xdd, 0xd8, 0xc0, 0x8e, 0x7d, 0x75, 0x3f, 0x5e, 0x01, 0x1b, + 0x2b, 0xcf, 0xee, 0x1d, 0x52, 0xc1, 0xc4, 0xf2, 0xca, 0xcd, 0xa3, 0x0b, 0xdb, + 0x69, 0x30, 0x65, 0x3c, 0x0c, 0xc4, 0x48, 0x6e, 0x60, 0xe8, 0x9f, 0xa8, 0x49, + 0xb3, 0x20, 0x83, 0xba, 0x9d, 0xb4, 0x53, 0xfb, 0x8d, 0xf6, 0x83, 0xcd, 0x68, + 0x75, 0x4c, 0x87, 0xda, 0xa7, 0x31, 0xf5, 0x70, 0xa7, 0xa4, 0x06, 0x0a, 0xf0, + 0xce, 0x70, 0x0d, 0x31, 0xbc, 0xa7, 0xe7, 0x4b, 0x3e, 0x3b, 0xa3, 0xd0, 0xe8, + 0xa6, 0x39, 0x2a, 0x06, 0x2b, 0x8e, 0x86, 0xd9, 0xd7, 0xd0, 0x0b, 0x21, 0x70, + 0x1e, 0x7b, 0x06, 0x2e, 0x06, 0xb1, 0xbc, 0xd8, 0x2a, 0x01, 0xd3, 0x75, 0x62, + 0x6f, 0xbf, 0x87, 0x2d, 0x27, 0xfa, 0x45, 0x11, 0xf5, 0xf8, 0xcf, 0x8c, 0x9a, + 0xbc, 0xef, 0x2a, 0x99, 0x01, 0x76, 0xae, 0x33, 0x93, 0x25, 0xd5, 0xa5, 0x88, + 0xda, 0x57, 0x96, 0xfa, 0xae, 0x5b, 0xab, 0x7c, 0x82, 0x97, 0x7c, 0x0f, 0xf7, + 0x97, 0x09, 0x3e, 0x2c, 0x1f, 0x3a, 0xe8, 0x55, 0xf6, 0x5a, 0xea, 0x91, 0xe1, + 0x31, 0x2f, 0xc6, 0xb8, 0xa4, 0x35, 0x1a, 0x2e, 0xc0, 0x3e, 0x02, 0xe5, 0xd0, + 0x2f, 0x53, 0x35, 0x4b, 0x05, 0x2f, 0xd3, 0xda, 0x0d, 0xff, 0x82, 0xcd, 0x1f, + 0x55, 0xeb, 0xca, 0x57, 0xb6, 0x33, 0x7c, 0x85, 0x93, 0x8a, 0x79, 0x81, 0x3d, + 0x20, 0x21, 0xd6, 0x09, 0x4c, 0x68, 0xb3, 0x75, 0xe9, 0x84, 0xf6, 0x83, 0x93, + 0x30, 0x08, 0x71, 0xe3, 0x48, 0xfc, 0x52, 0x36, 0xcc, 0xa6, 0x33, 0x05, 0x44, + 0xe5, 0x46, 0x39, 0xb5, 0x41, 0x87, 0x01, 0xff, 0x4c, 0xc4, 0x5a, 0x31, 0xf6, + 0x2e, 0xdd, 0x84, 0x3d, 0xbb, 0xdc, 0x5a, 0xa7, 0x27, 0xab, 0x79, 0xb4, 0x42, + 0x68, 0x3c, 0x49, 0x56, 0xbb, 0xb1, 0x95, 0xa4, 0xfa, 0x66, 0xdc, 0x9c, 0xd5, + 0x42, 0xc7, 0x6b, 0x91, 0x50, 0xc8, 0x4b, 0xf8, 0x90, 0x78, 0x99, 0x42, 0xf5, + 0x5c, 0x20, 0x0b, 0x77, 0x3e, 0xcd, 0xd7, 0x99, 0x2c, 0xff, 0x3e, 0xca, 0x24, + 0xde, 0x3e, 0x09, 0x84, 0xe1, 0x0e, 0x68, 0xae, 0x38, 0x75, 0x34, 0xb9, 0x6c, + 0xde, 0x37, 0x92, 0xf1, 0x35, 0xbf, 0x5f, 0x68, 0x78, 0x7d, 0x37, 0x0c, 0xa8, + 0xc4, 0xc4, 0x07, 0x4d, 0xc5, 0xd6, 0x01, 0xae, 0x90, 0x49, 0x54, 0x37, 0xc3, + 0xc2, 0xd4, 0x8a, 0x3d, 0x96, 0x66, 0x83, 0xac, 0x05, 0x16, 0x0b, 0x7a, 0x84, + 0xea, 0xa7, 0xaa, 0xb7, 0x40, 0x09, 0xe5, 0x7a, 0x85, 0xf7, 0xbf, 0x68, 0xa2, + 0xe4, 0x82, 0x00, 0x30, 0x85, 0x2c, 0xf2, 0x2b, 0x5e, 0x22, 0xd5, 0xd1, 0x69, + 0x2f, 0x03, 0xb9, 0xa2, 0xdf, 0xf4, 0x9c, 0x88, 0x1e, 0xe9, 0xc7, 0xf0, 0xc9, + 0x12, 0xbd, 0xeb, 0xf8, 0xcf, 0x64, 0xad, 0x09, 0x0e, 0xdb, 0x4e, 0x5f, 0x04, + 0xcc, 0xc2, 0xc9, 0xcf, 0x04, 0xa9, 0x04, 0x21, 0xcc, 0xc9, 0xf2, 0xcd, 0xbc, + 0xf2, 0x1f, 0x07, 0xf2, 0x65, 0xc5, 0x37, 0xd5, 0x1c, 0x65, 0x51, 0xf4, 0x61, + 0x7b, 0x11, 0xc2, 0xf6, 0x90, 0x9d, 0xa8, 0x7e, 0x46, 0xfe, 0x0a, 0xb7, 0xb7, + 0x73, 0x7a, 0x52, 0x15, 0xf0, 0xcf, 0x42, 0x56, 0x6f, 0x88, 0x71, 0x49, 0xf1, + 0x62, 0x83, 0x9a, 0x0b, 0xc0, 0x54, 0x3a, 0x1a, 0xe9, 0x07, 0xb7, 0x4e, 0x8b, + 0xc8, 0xb0, 0x92, 0xd5, 0x79, 0x6e, 0x27, 0x5d, 0xa4, 0x3a, 0xec, 0x6d, 0x74, + 0x08, 0x6f, 0x47, 0x68, 0x93, 0x3a, 0xa2, 0x48, 0x73, 0x68, 0x18, 0x67, 0xa7, + 0x09, 0xa5, 0x32, 0x6b, 0xf1, 0x5b, 0x17, 0x1c, 0xb0, 0x32, 0x4c, 0x4b, 0xe3, + 0x64, 0xfe, 0x54, 0x3f, 0x5b, 0xba, 0x31, 0xad, 0x47, 0x02, 0xa9, 0xaa, 0x63, + 0x7b, 0xc9, 0x6f, 0x85, 0xfb, 0x90, 0xa5, 0x84, 0x59, 0x03, 0x60, 0x69, 0x5d, + 0x4e, 0x19, 0x84, 0x9e, 0x63, 0x4f, 0x24, 0xd9, 0xad, 0x39, 0x6c, 0x19, 0xff, + 0x83, 0xce, 0x74, 0xf4, 0x6e, 0x64, 0x5f, 0x93, 0x2e, 0x14, 0x1a, 0x41, 0x19, + 0x59, 0x36, 0xc8, 0x5d, 0x51, 0x44, 0x14, 0xf1, 0x12, 0xe6, 0x0b, 0x1a, 0x25, + 0x37, 0xc3, 0x8d, 0x6d, 0xc6, 0xc4, 0x63, 0x83, 0x05, 0xc9, 0xbd, 0x6c, 0x62, + 0xe3, 0x66, 0xbc, 0x63, 0x12, 0x3e, 0x3e, 0x6d, 0xd3, 0x6e, 0xed, 0xd3, 0x13, + 0x6f, 0xce, 0x8d, 0xee, 0xca, 0x2a, 0xa0, 0x9a, 0x32, 0x98, 0xa3, 0x9d, 0x83, + 0x85, 0x9e, 0xfc, 0x9b, 0x2b, 0x69, 0xcf, 0x9a, 0x7d, 0xee, 0x08, 0xa9, 0x8e, + 0x4b, 0xe5, 0x58, 0xac, 0x79, 0x12, 0xfd, 0xcb, 0x42, 0x20, 0x90, 0x75, 0x42, + 0x02, 0x60, 0xf7, 0xca, 0xd0, 0xf2, 0xc0, 0x1f, 0x2a, 0xfe, 0x33, 0x07, 0x3f, + 0x26, 0x24, 0x9d, 0x94, 0x4f, 0x7a, 0x50, 0xdd, 0x84, 0x83, 0x9b, 0xc3, 0xea, + 0x7f, 0xde, 0xe4, 0xed, 0x71, 0x44, 0x9c, 0xf0, 0x75, 0x33, 0xd2, 0x6e, 0x1e, + 0x27, 0xa3, 0xef, 0xb0, 0x32, 0xc3, 0xa3, 0xb3, 0x4b, 0xd3, 0x09, 0x26, 0x22, + 0xd2, 0x06, 0x2a, 0xe5, 0x36, 0xef, 0x51, 0x49, 0xc4, 0x9b, 0x5b, 0xc9, 0x47, + 0x5e, 0xaf, 0xab, 0x6e, 0x67, 0x57, 0x61, 0x00, 0x8b, 0x0d, 0xad, 0xde, 0xec, + 0xaa, 0x60, 0x44, 0x70, 0xbb, 0xe0, 0xfa, 0xda, 0x25, 0x5d, 0x29, 0x0e, 0x92, + 0xb1, 0x90, 0xc2, 0xc2, 0xd8, 0xc2, 0xde, 0xe5, 0x45, 0x5d, 0x1f, 0xa9, 0xa9, + 0xf3, 0xdb, 0x77, 0x79, 0xb5, 0x84, 0x64, 0x34, 0x64, 0xaa, 0x80, 0x14, 0xba, + 0x66, 0x99, 0x4d, 0xe2, 0x55, 0x17, 0xf8, 0x39, 0x80, 0xe6, 0x6e, 0xe4, 0xf6, + 0x23, 0x14, 0xae, 0x6d, 0xbe, 0xf4, 0x52, 0xd5, 0xd3, 0x8b, 0x0a, 0x16, 0xf3, + 0x99, 0x1f, 0x36, 0xd8, 0xa8, 0xb3, 0x9d, 0xdc, 0x0d, 0x55, 0x95, 0xee, 0xd9, + 0x87, 0x62, 0x87, 0x8c, 0xdf, 0x3f, 0x4a, 0x2e, 0xdc, 0x5c, 0xda, 0x77, 0xd5, + 0xfe, 0x4f, 0xaf, 0x63, 0xa1, 0x5f, 0x56, 0x8a, 0x54, 0x0d, 0xa5, 0x7d, 0xd9, + 0xbe, 0xb6, 0xfb, 0x1a, 0x97, 0x7c, 0xcb, 0x91, 0xb4, 0xd7, 0x9c, 0xb3, 0x9b, + 0x28, 0x91, 0x1a, 0x29, 0xe7, 0xbf, 0x02, 0x8a, 0xc6, 0x10, 0x37, 0x96, 0xdf, + 0xb6, 0xb2, 0x09, 0x67, 0x23, 0x9a, 0xd3, 0x73, 0xc3, 0x8c, 0x53, 0xf6, 0xdf, + 0x18, 0x23, 0xd4, 0x95, 0x0a, 0x02, 0x83, 0xe9, 0x9b, 0x9c, 0x06, 0xab, 0x29, + 0x66, 0x66, 0x7c, 0x9d, 0xf6, 0x77, 0x71, 0x6b, 0x0c, 0xad, 0xed, 0x81, 0x8d, + 0xf9, 0xe4, 0x49, 0xc0, 0x72, 0xe2, 0x2f, 0x9d, 0x98, 0xbb, 0x0f, 0x9b, 0x03, + 0xbd, 0x5f, 0xd0, 0x13, 0xfc, 0xef, 0x3e, 0xd6, 0xa4, 0x9a, 0xeb, 0x98, 0x72, + 0x02, 0x54, 0x08, 0x7e, 0xf7, 0x28, 0xe3, 0x19, 0x47, 0xff, 0xe8, 0xf7, 0x66, + 0xe6, 0x3e, 0xe4, 0x6f, 0xf2, 0x08, 0x16, 0xd5, 0xfa, 0x8f, 0xf5, 0x5a, 0x26, + 0x39, 0x89, 0x61, 0x49, 0x0a, 0xb9, 0xae, 0x36, 0x6f, 0xc5, 0xa2, 0xd1, 0x99, + 0x6e, 0xd6, 0x93, 0xcc, 0xca, 0x82, 0x35, 0x6f, 0x60, 0x0a, 0xb0, 0x99, 0xf6, + 0xec, 0xa8, 0xbf, 0xe6, 0x45, 0x27, 0x0d, 0x3f, 0x95, 0xed, 0xba, 0x5b, 0x0d, + 0xe7, 0xa3, 0x28, 0x19, 0x23, 0x3b, 0xcc, 0x75, 0x4a, 0x5c, 0xe2, 0xe5, 0xea, + 0x07, 0x84, 0x2e, 0x5f, 0xf2, 0xce, 0xbe, 0x62, 0xad, 0x76, 0xe8, 0xef, 0xf8, + 0xd1, 0x5e, 0xa4, 0xc2, 0x4a, 0x5f, 0x20, 0x78, 0x68, 0x31, 0x9a, 0x5a, 0xf6, + 0xb0, 0x35, 0xbe, 0x3f, 0x44, 0xf4, 0x34, 0x09, 0x4f, 0x6e, 0x52, 0x5b, 0xe6, + 0x14, 0xda, 0xc9, 0x20, 0xa3, 0x30, 0xbd, 0xfb, 0x26, 0xd7, 0x5f, 0xe7, 0xb4, + 0xb3, 0x65, 0xd0, 0x94, 0x45, 0x92, 0x50, 0xaa, 0xa5, 0x54, 0x44, 0x89, 0xfb, + 0x1d, 0x99, 0x25, 0x81, 0x80, 0x0a, 0x77, 0xb8, 0x91, 0x21, 0x57, 0xfc, 0x97, + 0x13, 0xaa, 0xac, 0x25, 0xb4, 0xc2, 0x6e, 0xb0, 0x3f, 0x71, 0x66, 0x46, 0x61, + 0x9a, 0xf0, 0x24, 0x56, 0xae, 0x69, 0x59, 0x62, 0xfe, 0x5e, 0x93, 0x1a, 0x63, + 0xb5, 0xc7, 0x90, 0x52, 0xec, 0xd3, 0x33, 0xe1, 0x84, 0x12, 0xdb, 0x91, 0xe1, + 0x5f, 0x7c, 0xbc, 0x70, 0xb4, 0xcd, 0x7e, 0x8e, 0x3c, 0x95, 0x1f, 0x35, 0x85, + 0x72, 0xe3, 0x77, 0x67, 0xe7, 0xd5, 0x27, 0x04, 0xa6, 0x72, 0x1b, 0x30, 0xef, + 0xc4, 0x10, 0x17, 0xae, 0x4d, 0x23, 0x15, 0x58, 0xc5, 0xc8, 0x2c, 0xc7, 0xdd, + 0x7e, 0x33, 0x56, 0xc0, 0x9d, 0xc2, 0x49, 0x06, 0xf0, 0x43, 0x8d, 0xfc, 0xc3, + 0x00, 0x85, 0x6a, 0xc2, 0xce, 0xd8, 0xf7, 0x7f, 0xa8, 0x01, 0x57, 0x36, 0xc6, + 0x61, 0xe8, 0x02, 0x48, 0xae, 0xeb, 0x77, 0x48, 0x74, 0xaa, 0x79, 0xd2, 0x90, + 0xb8, 0xf5, 0x02, 0x7a, 0x0a, 0x50, 0x95, 0x37, 0xfc, 0x7c, 0x68, 0x9b, 0x7a, + 0xd8, 0x61, 0x16, 0xcf, 0xec, 0x26, 0x47, 0xcc, 0xaa, 0xe1, 0xc7, 0x4b, 0x41, + 0x6f, 0x3e, 0x6a, 0xe8, 0xf7, 0xcc, 0x60, 0xea, 0xaf, 0x7b, 0x1f, 0x30, 0x6e, + 0x06, 0x56, 0xa7, 0xd7, 0xc2, 0xa2, 0x7a, 0xe2, 0xf1, 0x40, 0x14, 0x8e, 0x7d, + 0x7b, 0xed, 0x48, 0xa0, 0xa1, 0x2c, 0x17, 0xa7, 0xfa, 0xfc, 0x3b, 0x2b, 0xd0, + 0x25, 0x87, 0x34, 0x6f, 0x26, 0xd0, 0xe6, 0x88, 0x2e, 0x05, 0xe0, 0x18, 0xa0, + 0xd5, 0x57, 0x2a, 0x67, 0x03, 0x9f, 0x8f, 0x69, 0xad, 0x9a, 0x91, 0x92, 0xb3, + 0x02, 0xf2, 0x6b, 0xdd, 0xa4, 0x65, 0xd9, 0x0b, 0x14, 0xac, 0x00, 0xfe, 0x3a, + 0xcf, 0xdc, 0xea, 0xf5, 0xbc, 0x4d, 0x75, 0x66, 0x19, 0x17, 0x09, 0x69, 0x65, + 0x42, 0xba, 0x16, 0x7c, 0x2d, 0xa1, 0x52, 0x5f, 0x73, 0x9e, 0x1b, 0x68, 0xcb, + 0x6d, 0x01, 0x44, 0xd1, 0xbe, 0x8f, 0x50, 0x93, 0x7a, 0x6e, 0xf7, 0x84, 0x48, + 0xc9, 0xb1, 0xc0, 0x08, 0x4a, 0x03, 0xd2, 0x49, 0x23, 0x06, 0x7a, 0xe4, 0x7f, + 0xd6, 0x42, 0x5e, 0xfb, 0x9c, 0x1d, 0x50, 0x0e, 0xe2, 0xd2, 0x04, 0xc3, 0x4e, + 0x1b, 0x96, 0x18, 0xc8, 0x59, 0xcc, 0x0a, 0x46, 0xa0, 0xca, 0xcd, 0x18, 0x80, + 0x38, 0x0c, 0xaa, 0xe7, 0x88, 0xe6, 0xff, 0x3d, 0x17, 0x01, 0x89, 0xec, 0x4a, + 0x9d, 0xa8, 0x8d, 0xea, 0x07, 0x5b, 0xa9, 0x96, 0xd3, 0xc3, 0x36, 0x64, 0x8e, + 0x86, 0x94, 0xd3, 0xa1, 0x9d, 0x3d, 0xca, 0x53, 0x1b, 0xeb, 0x50, 0xd4, 0x32, + 0x7c, 0x5c, 0x0c, 0x23, 0xcb, 0x7c, 0xfd, 0xb0, 0x8c, 0xa7, 0xcf, 0x2c, 0xac, + 0x6b, 0xc1, 0x39, 0xd0, 0x74, 0x14, 0x73, 0xd3, 0x76, 0x02, 0x9c, 0xb4, 0xab, + 0x6b, 0xf0, 0x54, 0x55, 0x7c, 0xe2, 0x94, 0xc7, 0x28, 0xa4, 0x68, 0x7d, 0x57, + 0xec, 0x89, 0x09, 0xff, 0x51, 0xa4, 0xd0, 0x2f, 0x9d, 0xcd, 0x11, 0x19, 0x3d, + 0x7d, 0x1c, 0x9f, 0xda, 0xe6, 0xa1, 0x73, 0x96, 0xa1, 0xbf, 0x57, 0xa9, 0x94, + 0x93, 0x4f, 0x5e, 0x7a, 0x59, 0xf0, 0x45, 0xde, 0xbe, 0xaf, 0xf6, 0x2e, 0xf3, + 0x26, 0xb9, 0x47, 0xf2, 0xa8, 0xb4, 0x95, 0x55, 0xe4, 0xd9, 0x9b, 0x3b, 0xf5, + 0xc8, 0x1f, 0xf9, 0xfe, 0x31, 0x4e, 0x04, 0x7a, 0xf1, 0x52, 0x50, 0x8f, 0x57, + 0x01, 0x5c, 0xa4, 0x02, 0xc6, 0x7d, 0x92, 0x5c, 0x99, 0xac, 0xea, 0x3e, 0xe8, + 0xcc, 0x4b, 0x00, 0x8c, 0x5c, 0xb4, 0x39, 0x66, 0xe7, 0x14, 0xef, 0x48, 0x0f, + 0xd0, 0x5e, 0x07, 0xc7, 0xb2, 0xdd, 0xa9, 0xaa, 0x39, 0x66, 0x11, 0x3e, 0xaa, + 0x29, 0x3d, 0x3f, 0x62, 0x2b, 0x30, 0x9d, 0x64, 0x80, 0x3c, 0xe1, 0xe6, 0x37, + 0x8b, 0x6a, 0xac, 0x4f, 0xab, 0x52, 0x7c, 0x43, 0xcd, 0x45, 0xed, 0x0a, 0x3c, + 0x1a, 0x4b, 0x9f, 0xb1, 0x8d, 0xcc, 0xcf, 0xcd, 0xb6, 0xac, 0x0c, 0x24, 0x21, + 0x63, 0x9c, 0xda, 0x00, 0x75, 0xa2, 0x0d, 0xc5, 0x11, 0x1b, 0x8d, 0x3d, 0x31, + 0x99, 0x49, 0x5b, 0xd9, 0x13, 0x3d, 0xba, 0xb9, 0x45, 0x41, 0x41, 0x0e, 0x4f, + 0xba, 0x92, 0xc7, 0xb6, 0x06, 0xa5, 0xcb, 0x12, 0x2f, 0x14, 0x0c, 0xf1, 0xa3, + 0x59, 0x6f, 0x27, 0x88, 0xf3, 0xc8, 0xb9, 0x26, 0x60, 0xf1, 0x4c, 0xb6, 0x5a, + 0xf5, 0xdd, 0x23, 0xdf, 0xdb, 0xac, 0x13, 0x71, 0xec, 0xf4, 0xb3, 0x37, 0x12, + 0xfe, 0xd2, 0x29, 0x2c, 0x44, 0xf7, 0x08, 0x34, 0xcf, 0x96, 0xc0, 0x5d, 0x58, + 0x82, 0x7e, 0x69, 0xbf, 0xc2, 0xe6, 0x96, 0xfa, 0x08, 0x74, 0x86, 0x9c, 0x02, + 0xf3, 0xdc, 0xa1, 0x1c, 0x3b, 0x90, 0xcb, 0x21, 0x4e, 0x68, 0xbc, 0x1c, 0xae, + 0x03, 0x9d, 0x7a, 0x14, 0x6c, 0xdc, 0x1d, 0x60, 0x9d, 0x7a, 0x6b, 0x3f, 0xd5, + 0xd4, 0x61, 0xb0, 0x95, 0x1c, 0x82, 0xcf, 0xb3, 0xe7, 0x63, 0xfa, 0xd2, 0xd1, + 0xbc, 0x76, 0x78, 0xcd, 0xf8, 0x27, 0x79, 0xf8, 0xfd, 0x5a, 0x1c, 0xe2, 0x2a, + 0x8d, 0x3c, 0x45, 0x47, 0xab, 0xd9, 0x59, 0x83, 0x8a, 0x46, 0xfb, 0x80, 0xaf, + 0xe0, 0x1f, 0x8e, 0xcc, 0x99, 0x31, 0x51, 0x3b, 0x19, 0x62, 0xec, 0x54, 0x08, + 0x56, 0xcb, 0x18, 0x93, 0x87, 0xcf, 0xbf, 0xcc, 0x0f, 0x7c, 0x68, 0x22, 0x3c, + 0xba, 0x47, 0xfb, 0x0c, 0x9b, 0x48, 0x6e, 0x4d, 0x99, 0x17, 0x19, 0x41, 0xf7, + 0x67, 0x5a, 0x8b, 0x46, 0x32, 0x8a, 0x3b, 0xc1, 0x09, 0xbf, 0x07, 0xc6, 0x6d, + 0x5e, 0xde, 0x77, 0x1c, 0xc4, 0xc7, 0x4c, 0xe8, 0x03, 0x33, 0x82, 0x91, 0x91, + 0xee, 0xdc, 0x49, 0x35, 0x08, 0xa6, 0x44, 0x53, 0x0a, 0x61, 0x44, 0xf2, 0x2d, + 0xcf, 0x97, 0x52, 0x5a, 0x4c, 0xdc, 0xa1, 0xad, 0x71, 0x07, 0x3b, 0x08, 0x0b, + 0x73, 0xea, 0x45, 0x49, 0xf5, 0x40, 0x1b, 0xff, 0x43, 0x18, 0x26, 0x8e, 0x6a, + 0xd6, 0x37, 0x36, 0x31, 0x57, 0xa1, 0x9a, 0x53, 0xf1, 0x23, 0xa0, 0xb0, 0xe1, + 0x6d, 0x0b, 0x77, 0xf0, 0x20, 0x28, 0xda, 0x46, 0x41, 0x00, 0xfd, 0xe7, 0x6d, + 0x83, 0xdd, 0x0b, 0xb2, 0x24, 0xf7, 0xb5, 0x7a, 0x00, 0xc0, 0x2f, 0x68, 0xae, + 0x64, 0x8f, 0xdc, 0x52, 0x99, 0x57, 0xa1, 0x04, 0x90, 0xdc, 0xe1, 0xfd, 0xdb, + 0xb0, 0x90, 0x4f, 0x0d, 0x51, 0x8b, 0xb3, 0x87, 0x54, 0x40, 0x19, 0x98, 0x3b, + 0x61, 0x69, 0x75, 0xa7, 0x8e, 0x74, 0xd8, 0x54, 0xfd, 0xdc, 0x49, 0xb2, 0x55, + 0x16, 0x7b, 0x55, 0xef, 0x4b, 0xee, 0x46, 0x56, 0x68, 0xb2, 0x0e, 0xa4, 0x11, + 0x8c, 0xa5, 0x69, 0xae, 0x48, 0x0e, 0x0f, 0x6e, 0x5e, 0x04, 0x3a, 0x35, 0x7b, + 0x36, 0xd3, 0xab, 0x36, 0xc8, 0x61, 0xf2, 0x27, 0x83, 0x01, 0xdc, 0xe5, 0x76, + 0x74, 0xd5, 0x07, 0x3b, 0x3a, 0x6f, 0x51, 0x03, 0xa0, 0x79, 0x3a, 0xf1, 0xb7, + 0xd4, 0x6f, 0x95, 0x7e, 0x22, 0xd8, 0xd2, 0x58, 0x3b, 0xf1, 0x81, 0x83, 0x6c, + 0x3b, 0xe9, 0x93, 0x0b, 0xac, 0x8f, 0xa4, 0x60, 0xe9, 0x68, 0xaa, 0x71, 0x09, + 0x87, 0x0b, 0xbe, 0xd1, 0x7d, 0xf5, 0xf8, 0x88, 0xc8, 0xca, 0x14, 0x67, 0xae, + 0x17, 0xdb, 0xbc, 0xde, 0x31, 0xc1, 0x10, 0x5c, 0xb5, 0xbd, 0xa8, 0x8a, 0xc6, + 0xc6, 0x27, 0x00, 0x2c, 0xe2, 0x1c, 0x02, 0x14, 0x0f, 0xfe, 0x81, 0xec, 0x58, + 0xbf, 0x1e, 0x6d, 0x1b, 0xb7, 0xaa, 0xad, 0xa4, 0x1f, 0xba, 0x0b, 0xb5, 0x88, + 0x77, 0x8a, 0x7f, 0x65, 0x20, 0x2a, 0xd8, 0x11, 0xea, 0x73, 0xd2, 0x6c, 0x74, + 0x55, 0x03, 0x95, 0xaf, 0x61, 0xe8, 0x9b, 0xc1, 0xac, 0xf3, 0x19, 0x78, 0x18, + 0xa3, 0xc4, 0xfc, 0xda, 0xf6, 0xb0, 0x54, 0xeb, 0xf3, 0xb2, 0xb6, 0x82, 0x00, + 0x4b, 0x5a, 0x4c, 0x03, 0x5f, 0x5f, 0x5a, 0x6c, 0xbd, 0x34, 0x25, 0x90, 0xe9, + 0x0c, 0x8c, 0x38, 0x8e, 0xa7, 0x95, 0x51, 0x22, 0xdb, 0xac, 0xa6, 0x7b, 0x30, + 0x39, 0x5a, 0x92, 0x8b, 0x57, 0xb8, 0x57, 0x51, 0x23, 0x20, 0x5a, 0xe1, 0x91, + 0x52, 0xe4, 0x1e, 0xb9, 0xc1, 0x37, 0xfa, 0x12, 0x8c, 0x3b, 0x0e, 0x0b, 0xe5, + 0x81, 0xb5, 0xa2, 0x9f, 0xde, 0x8a, 0x21, 0x7f, 0x40, 0x15, 0xd4, 0xf3, 0xc1, + 0xd7, 0x30, 0xea, 0x66, 0x26, 0xe2, 0x13, 0x4e, 0x39, 0x58, 0xe2, 0x96, 0x24, + 0xc5, 0x32, 0x19, 0xa6, 0x0c, 0xd0, 0xa8, 0xc4, 0xda, 0x36, 0x7e, 0x29, 0xa7, + 0x17, 0x79, 0xa7, 0x30, 0x32, 0x98, 0x5a, 0x3d, 0x1f, 0xd0, 0x3d, 0xd4, 0xd0, + 0x6e, 0x05, 0x25, 0xd0, 0x95, 0x79, 0xb9, 0x54, 0x87, 0x12, 0x9f, 0x19, 0xd7, + 0x5f, 0x35, 0x8b, 0x66, 0xba, 0x75, 0x19, 0x20, 0xe0, 0x13, 0x08, 0xa9, 0x4d, + 0xdf, 0x56, 0x57, 0xfc, 0x35, 0x62, 0x10, 0x09, 0xa5, 0x0c, 0x38, 0xbd, 0x03, + 0x87, 0x72, 0xc4, 0x14, 0x3d, 0x8b, 0x7a, 0xcf, 0xd7, 0x4e, 0x72, 0xc0, 0x4d, + 0x89, 0x24, 0x8d, 0xff, 0x20, 0xfe, 0x8d, 0xc5, 0xec, 0x21, 0x49, 0x05, 0x4e, + 0xa2, 0x41, 0x64, 0xe8, 0x5f, 0x67, 0x44, 0xad, 0x0c, 0xac, 0xf1, 0xa8, 0xb7, + 0x01, 0x26, 0xf4, 0x82, 0xc0, 0x92, 0xed, 0x9f, 0x61, 0x27, 0xd2, 0x05, 0x0d, + 0x12, 0xe8, 0x78, 0xa7, 0x96, 0x53, 0xa1, 0xe8, 0x4d, 0xae, 0xc3, 0xeb, 0xe6, + 0x2d, 0x5f, 0x6c, 0x4a, 0xbe, 0x5c, 0xe9, 0x0a, 0x7f, 0xe2, 0xe5, 0x2a, 0x8d, + 0x78, 0x46, 0xe8, 0xed, 0xf2, 0xf2, 0xbc, 0xe0, 0x5a, 0x03, 0x7c, 0x82, 0x6f, + 0x22, 0xca, 0xad, 0x12, 0x61, 0x46, 0x7d, 0xcf, 0xb7, 0xd6, 0xb6, 0x13, 0x3d, + 0xc2, 0x1e, 0x80, 0x96, 0xc7, 0xe9, 0xf8, 0xe9, 0xe1, 0x0c, 0x1e, 0x3f, 0xac, + 0x40, 0x58, 0xb6, 0x82, 0xc6, 0x8e, 0x54, 0xfa, 0xca, 0xe0, 0xf9, 0xc2, 0xdd, + 0x4d, 0x64, 0xd9, 0x04, 0x61, 0x52, 0xb4, 0x76, 0x23, 0x32, 0x93, 0x9f, 0x17, + 0xe6, 0xaa, 0xf7, 0xd8, 0xb9, 0xd3, 0x58, 0xe2, 0x21, 0x8d, 0x4e, 0x0d, 0x69, + 0xa4, 0xf1, 0x19, 0xe1, 0xc6, 0x4e, 0xec, 0x4c, 0x8b, 0x53, 0x28, 0x09, 0x70, + 0x71, 0x31, 0xf0, 0x1f, 0x55, 0xc7, 0xad, 0x04, 0xcf, 0xb6, 0x3f, 0x7c, 0x4a, + 0x3d, 0x0a, 0x2b, 0x0f, 0xfb, 0x0b, 0x05, 0xa6, 0xbe, 0x05, 0x5b, 0x8c, 0x94, + 0xca, 0x80, 0xbb, 0x0a, 0x1d, 0x13, 0xcd, 0x4c, 0xd6, 0x9a, 0xb9, 0x83, 0x04, + 0xae, 0x25, 0x15, 0xd5, 0xf7, 0x69, 0x9d, 0x4a, 0xbe, 0xe5, 0xc2, 0x0b, 0xe6, + 0x09, 0xd8, 0x73, 0x51, 0x10, 0x12, 0xf2, 0x34, 0xbd, 0x85, 0xa7, 0xef, 0xf5, + 0xfb, 0x63, 0x4c, 0xff, 0x26, 0x58, 0xba, 0x65, 0x16, 0x04, 0x85, 0x63, 0x09, + 0x5e, 0xce, 0xfb, 0x30, 0x15, 0xee, 0x3f, 0x03, 0xca, 0x52, 0xa1, 0x77, 0xf2, + 0x61, 0xec, 0xdc, 0x26, 0xbc, 0x08, 0x9d, 0x34, 0xc6, 0x40, 0x48, 0x46, 0xe9, + 0xc6, 0x47, 0xfc, 0xfe, 0x98, 0xcc, 0x6a, 0xcd, 0xbb, 0x46, 0x4f, 0x64, 0x27, + 0x8a, 0xd8, 0xce, 0x9d, 0x1a, 0xe0, 0xd4, 0x15, 0xbc, 0x0c, 0x05, 0x24, 0x5f, + 0xdd, 0xaf, 0x4e, 0xbc, 0x8d, 0xc7, 0x03, 0xa8, 0x5c, 0xb2, 0x70, 0xf7, 0x96, + 0xad, 0x2d, 0x93, 0x7e, 0x2a, 0xc0, 0xd5, 0xe0, 0xa3, 0x48, 0x21, 0x75, 0x80, + 0x00, 0xaa, 0x59, 0xc9, 0xd4, 0x65, 0x24, 0x85, 0x29, 0x4e, 0xe0, 0xab, 0x29, + 0x69, 0x6b, 0x21, 0x43, 0x0f, 0xa5, 0x4d, 0xcf, 0xbf, 0x2b, 0x9c, 0x49, 0xd1, + 0x42, 0x06, 0x42, 0x09, 0xee, 0xee, 0xd4, 0xd4, 0x71, 0xff, 0xc0, 0x17, 0xd4, + 0xe2, 0x0a, 0x79, 0x6b, 0x09, 0x27, 0x80, 0x4c, 0x06, 0x1b, 0x9f, 0x4a, 0x70, + 0x91, 0xfe, 0x01, 0x5a, 0xda, 0x68, 0xfd, 0x84, 0x42, 0xe0, 0x18, 0x25, 0xc8, + 0x8d, 0xfe, 0x55, 0xcf, 0x5d, 0xe3, 0x89, 0x36, 0xf7, 0xce, 0x25, 0x31, 0x1b, + 0x90, 0x2b, 0xa9, 0x7a, 0x3c, 0x12, 0xa9, 0x5c, 0xfa, 0x1c, 0x3a, 0x59, 0x1b, + 0x81, 0x8f, 0x60, 0x83, 0x27, 0x09, 0xd9, 0xe4, 0x83, 0x9e, 0x41, 0x0f, 0xb3, + 0x6b, 0x84, 0xf3, 0xac, 0x4f, 0x07, 0x0f, 0xc3, 0x5e, 0x16, 0x19, 0x78, 0x25, + 0x9e, 0x5b, 0x8e, 0xdc, 0x74, 0x4d, 0x90, 0x91, 0x9a, 0xa7, 0x70, 0xbb, 0x36, + 0x21, 0x51, 0x28, 0xe5, 0x82, 0xb5, 0x96, 0x41, 0xe2, 0x38, 0x52, 0xe9, 0x58, + 0xeb, 0x8f, 0xc3, 0xc0, 0xaa, 0x96, 0x15, 0x2b, 0xa4, 0xf7, 0x7f, 0x13, 0x8d, + 0x6a, 0x67, 0x12, 0xa3, 0xae, 0x32, 0x26, 0x01, 0x58, 0x83, 0xf8, 0x1d, 0xb2, + 0x3e, 0x58, 0x3c, 0x86, 0x9c, 0x4c, 0x71, 0x14, 0x3a, 0x6f, 0xff, 0xd6, 0x5e, + 0x8d, 0xfd, 0xc5, 0x0c, 0x99, 0xa2, 0xf1, 0xf3, 0x14, 0xcd, 0xcc, 0x71, 0x35, + 0x9e, 0x23, 0x5f, 0x1d, 0x7d, 0xc2, 0xb5, 0xf3, 0x8e, 0xf7, 0xb9, 0x70, 0x84, + 0x31, 0x63, 0xc0, 0x3f, 0x9d, 0xd4, 0x0a, 0x80, 0x15, 0xef, 0xdc, 0x87, 0x91, + 0x95, 0x6a, 0x3f, 0x3c, 0xed, 0xd9, 0xea, 0x64, 0xf8, 0xef, 0xa7, 0xa0, 0x81, + 0x5a, 0x70, 0x38, 0x1d, 0x71, 0x46, 0x78, 0x17, 0xbd, 0x04, 0xca, 0x52, 0x9a, + 0xed, 0xe0, 0x7f, 0xf6, 0x0d, 0x17, 0x6a, 0xed, 0x0f, 0x85, 0x5a, 0x2e, 0xae, + 0xa8, 0x9e, 0xae, 0xac, 0xa8, 0x93, 0x58, 0xc0, 0x81, 0x82, 0x6a, 0x08, 0x12, + 0xa5, 0xbc, 0xa2, 0x8b, 0xe1, 0x37, 0x3f, 0x08, 0x6d, 0xbd, 0xba, 0x7e, 0x43, + 0xe2, 0x03, 0x21, 0x2c, 0x9f, 0xed, 0x21, 0x47, 0x4b, 0xa1, 0x9a, 0x05, 0x5f, + 0xfc, 0xc1, 0x79, 0x41, 0x2e, 0x89, 0x3a, 0x74, 0x48, 0x32, 0x29, 0x8c, 0x5f, + 0xe2, 0x4c, 0xc6, 0xb1, 0x86, 0x67, 0xf4, 0x9b, 0x34, 0xdf, 0xb1, 0x23, 0x79, + 0x26, 0x74, 0x19, 0xa9, 0xcb, 0x94, 0x03, 0xd8, 0x16, 0x7d, 0x8d, 0x1e, 0x91, + 0xd2, 0x81, 0x1a, 0x04, 0x3b, 0x29, 0x24, 0x3b, 0x06, 0x9b, 0x37, 0x58, 0x78, + 0x47, 0xdc, 0x6f, 0xcd, 0xdb, 0x18, 0x31, 0xbd, 0x1c, 0xc2, 0x56, 0x05, 0x35, + 0xf9, 0xa8, 0xa5, 0xf2, 0x4b, 0x06, 0x00, 0x02, 0x1b, 0x20, 0x29, 0x0f, 0xeb, + 0xba, 0xf1, 0x27, 0x28, 0xfb, 0x75, 0x48, 0x88, 0xb2, 0xf3, 0x09, 0x4d, 0x20, + 0xf1, 0x18, 0x4e, 0x77, 0x82, 0x7d, 0xe3, 0xff, 0x8f, 0x3d, 0x73, 0x45, 0x1a, + 0xfd, 0x1e, 0x01, 0x24, 0x1f, 0x72, 0x3c, 0x08, 0x48, 0x23, 0x23, 0x0e, 0x00, + 0x3d, 0x3d, 0x21, 0xe5, 0x35, 0x01, 0xec, 0x04, 0x99, 0xb0, 0x83, 0xa7, 0xda, + 0xd6, 0x85, 0xc5, 0x71, 0x27, 0xf4, 0xde, 0x64, 0x73, 0x3a, 0x88, 0x0c, 0x2d, + 0xb2, 0x8f, 0xda, 0xab, 0xf1, 0xb5, 0x42, 0xd2, 0x05, 0xf6, 0x64, 0xa3, 0x51, + 0x35, 0x71, 0x27, 0x11, 0xdc, 0xcc, 0xd9, 0x31, 0xa5, 0x0b, 0x9c, 0x56, 0x61, + 0x88, 0x23, 0x60, 0xd4, 0xca, 0xc0, 0x04, 0x76, 0x81, 0xbc, 0x2e, 0x2b, 0x3b, + 0xf6, 0xc9, 0x97, 0x60, 0xd7, 0xcf, 0xb4, 0xfa, 0x21, 0x39, 0x43, 0x77, 0xa4, + 0x55, 0x1c, 0x76, 0xd1, 0xf7, 0x5a, 0xc0, 0x3c, 0x26, 0x20, 0x54, 0xdf, 0xfd, + 0x79, 0xa9, 0xde, 0xd0, 0x5e, 0x88, 0x89, 0x58, 0x19, 0x9e, 0xea, 0x45, 0x01, + 0xe2, 0x99, 0x0a, 0x53, 0xa5, 0xcd, 0x2a, 0x46, 0xa4, 0x01, 0x57, 0x65, 0x88, + 0xfd, 0x7d, 0x05, 0x8a, 0x26, 0xf2, 0x84, 0x38, 0xe5, 0x78, 0x2f, 0x45, 0xac, + 0x1d, 0x07, 0xf6, 0xf6, 0xf5, 0xed, 0x73, 0x74, 0x1d, 0x57, 0x85, 0x83, 0x7a, + 0x6b, 0x84, 0x4b, 0x47, 0x47, 0x75, 0x71, 0x8c, 0x29, 0xdd, 0x99, 0x08, 0x4e, + 0x9f, 0x88, 0xef, 0x15, 0x3a, 0x83, 0x29, 0xf5, 0x32, 0xa6, 0x90, 0x17, 0xdc, + 0x3a, 0x97, 0xed, 0x75, 0x43, 0x67, 0x72, 0x30, 0x98, 0xe5, 0x76, 0x58, 0x40, + 0xb0, 0x22, 0x89, 0x72, 0x44, 0x74, 0x5f, 0xbb, 0xbb, 0x30, 0xa7, 0xcb, 0x54, + 0xfa, 0x05, 0x11, 0x16, 0x6e, 0x95, 0x44, 0x12, 0x20, 0x00, 0x61, 0x0b, 0xd2, + 0xaa, 0xcb, 0xd8, 0x23, 0x25, 0xa5, 0x9b, 0x95, 0x15, 0x4e, 0xcd, 0x82, 0xc8, + 0x8d, 0x23, 0xab, 0xd1, 0xe2, 0x07, 0x70, 0xff, 0xb8, 0xaa, 0xbf, 0x83, 0xfc, + 0x07, 0x34, 0x96, 0x4c, 0xcd, 0x41, 0x1d, 0x1c, 0x93, 0x57, 0x14, 0xe2, 0x4a, + 0xab, 0x56, 0x6f, 0x4f, 0x08, 0x42, 0x40, 0x14, 0xc4, 0xec, 0xa9, 0x1b, 0x59, + 0x0f, 0x08, 0x2b, 0x47, 0x3f, 0x36, 0x1c, 0x87, 0x41, 0x5d, 0x37, 0xbd, 0x20, + 0xd7, 0x0f, 0xd0, 0xab, 0xe3, 0xeb, 0x19, 0xf8, 0xe9, 0x51, 0xb4, 0x98, 0x3a, + 0x96, 0x4f, 0x27, 0xdb, 0xf8, 0xfa, 0xf4, 0x6a, 0x16, 0xa1, 0xaa, 0x99, 0x3e, + 0x04, 0xf4, 0xdd, 0x6c, 0x4c, 0xe4, 0xf8, 0x57, 0x2a, 0x62, 0x88, 0x19, 0xea, + 0x51, 0xc2, 0x21, 0xb7, 0x99, 0x62, 0x9c, 0xd0, 0xad, 0x87, 0x5e, 0x68, 0xad, + 0xec, 0x75, 0xab, 0x18, 0x66, 0xe4, 0xc0, 0x15, 0x5a, 0x9c, 0x74, 0xa7, 0xa5, + 0x7c, 0x0f, 0x2b, 0x5a, 0xdd, 0x96, 0xeb, 0xf6, 0x7a, 0x86, 0x5c, 0xb0, 0x5d, + 0xe9, 0x91, 0x99, 0xad, 0x8f, 0xa4, 0x9f, 0x51, 0xff, 0xea, 0x05, 0x42, 0xf2, + 0xa7, 0xb2, 0xc0, 0x8c, 0x2d, 0x89, 0x59, 0xba, 0xca, 0x59, 0xfc, 0xb6, 0xae, + 0x39, 0x59, 0xf6, 0xb3, 0x94, 0xe8, 0xe4, 0xc6, 0x51, 0xe4, 0x69, 0x7d, 0x79, + 0x7b, 0xf5, 0xde, 0x52, 0xbc, 0xee, 0xb0, 0x23, 0x01, 0xc8, 0x96, 0x2a, 0xc1, + 0x3c, 0x0a, 0x21, 0x0e, 0xa8, 0xaf, 0x27, 0x6c, 0x66, 0x4a, 0x39, 0xe9, 0x51, + 0x88, 0xfc, 0x5f, 0x5e, 0x13, 0xb1, 0x78, 0x01, 0x8f, 0x77, 0xdc, 0x04, 0x51, + 0x76, 0x88, 0x3d, 0x33, 0x38, 0x67, 0x35, 0xae, 0xdc, 0x52, 0x87, 0xb6, 0xc2, + 0xcb, 0xbf, 0xfb, 0x97, 0xc5, 0x58, 0xd1, 0x83, 0x59, 0x69, 0x28, 0x2e, 0xfe, + 0xf7, 0xf9, 0x28, 0xdf, 0x76, 0xe2, 0x82, 0x1a, 0x41, 0x84, 0x13, 0xeb, 0x3c, + 0x87, 0xca, 0x04, 0x5f, 0x1b, 0xf0, 0xa9, 0x38, 0x2a, 0x05, 0xfb, 0xe6, 0x6c, + 0xaa, 0xf1, 0x04, 0xb1, 0xb3, 0xd9, 0x4e, 0xdb, 0xf6, 0xeb, 0xe3, 0x90, 0x0f, + 0xd1, 0x02, 0x16, 0xdb, 0x99, 0x91, 0xaf, 0xed, 0x18, 0x65, 0xd1, 0x72, 0x19, + 0x90, 0x52, 0x96, 0xec, 0xf1, 0x23, 0x08, 0x95, 0x26, 0x53, 0x3d, 0x3d, 0x6b, + 0x28, 0x8e, 0x4d, 0x9a, 0x4d, 0xff, 0x8e, 0xc2, 0x1c, 0x96, 0xf5, 0x38, 0x00, + 0x05, 0x78, 0xdb, 0xcf, 0xe0, 0xf5, 0xf8, 0x89, 0x7c, 0xf8, 0x60, 0xab, 0x0c, + 0xf2, 0xd4, 0x1e, 0x15, 0x0f, 0xc8, 0xed, 0x19, 0xa5, 0x22, 0x9e, 0xa7, 0x64, + 0xde, 0xb6, 0x10, 0x99, 0x5c, 0x0c, 0xc5, 0x75, 0xbe, 0x18, 0xf6, 0x03, 0x79, + 0x71, 0xb6, 0xc0, 0x6f, 0x10, 0x0c, 0x03, 0xe2, 0x1c, 0x19, 0x64, 0x99, 0x68, + 0xc2, 0x49, 0x8c, 0xde, 0x56, 0xf5, 0x00, 0x43, 0x4f, 0x28, 0x0d, 0x37, 0x00, + ], + txid: [ + 0x9d, 0x4d, 0x04, 0x6d, 0xd8, 0x56, 0x3b, 0x1e, 0x43, 0x7b, 0x96, 0x1c, 0x39, + 0x58, 0x86, 0xdc, 0xee, 0xa1, 0xce, 0x6a, 0xa9, 0x50, 0x1a, 0xb3, 0x2f, 0x63, + 0x68, 0xd5, 0x3c, 0x23, 0xd7, 0x08, + ], + auth_digest: [ + 0x4a, 0xbd, 0xb3, 0x9c, 0x9d, 0xd0, 0xca, 0xee, 0x40, 0x71, 0x18, 0xd4, 0xbc, + 0xa2, 0xec, 0x07, 0xce, 0x30, 0x9e, 0x61, 0x49, 0x18, 0xf8, 0xc4, 0xfb, 0x9d, + 0xeb, 0x5a, 0xfe, 0x1a, 0xbb, 0x08, + ], + amounts: vec![2095567810517394, 6498403494284, 1319576288184536], + script_pubkeys: vec![ + vec![0x00, 0x00, 0x63, 0x65, 0x65], + vec![0xac, 0x51, 0x51, 0x6a, 0x51, 0x53, 0x6a], + vec![0x51, 0xac, 0x52, 0x00, 0x52, 0x6a, 0x53], + ], + transparent_input: Some(1), + sighash_shielded: [ + 0x95, 0x22, 0x22, 0x51, 0x87, 0xd3, 0xeb, 0xcb, 0x74, 0x9b, 0xad, 0x07, 0xc4, + 0xf6, 0xd1, 0xf5, 0x16, 0xb1, 0x3e, 0x6e, 0xc7, 0x8d, 0x5d, 0x90, 0x8f, 0x3f, + 0xf7, 0xfc, 0x8e, 0xcc, 0xd0, 0x7c, + ], + sighash_all: Some([ + 0x69, 0x28, 0x18, 0xcd, 0xe5, 0xbc, 0x48, 0x86, 0x9c, 0xce, 0x66, 0xfd, 0xdc, + 0x95, 0x4e, 0x98, 0xd4, 0xd0, 0xc4, 0xf7, 0xc3, 0x7f, 0x1b, 0xd6, 0xb7, 0xbe, + 0x01, 0x4f, 0x3c, 0xa0, 0x97, 0xa2, + ]), + sighash_none: Some([ + 0x0d, 0xef, 0xe3, 0xdd, 0x16, 0xef, 0x79, 0xad, 0xdd, 0xa3, 0xf2, 0x2a, 0xd3, + 0x96, 0xd1, 0x41, 0xd2, 0x07, 0x19, 0xc3, 0x02, 0x81, 0x4b, 0x8a, 0x17, 0x27, + 0xec, 0x1c, 0x4f, 0xd9, 0x25, 0xaf, + ]), + sighash_single: None, + sighash_all_anyone: Some([ + 0x13, 0xac, 0x95, 0x0e, 0x2e, 0x9d, 0x8f, 0x99, 0xc7, 0xef, 0x6a, 0xab, 0x5f, + 0xe5, 0x6a, 0xe6, 0x29, 0x73, 0x2e, 0x15, 0x36, 0x1a, 0xac, 0x06, 0xbc, 0xe3, + 0x26, 0x41, 0x7e, 0x30, 0x78, 0xbc, + ]), + sighash_none_anyone: Some([ + 0x12, 0x00, 0x1f, 0x63, 0x84, 0x09, 0x62, 0xd8, 0x35, 0xbb, 0xab, 0x14, 0x64, + 0xbd, 0xd1, 0x94, 0xd3, 0x7c, 0x2f, 0x6c, 0xec, 0x95, 0x15, 0xb7, 0x7d, 0xae, + 0xd5, 0x79, 0x4b, 0x16, 0x56, 0x8f, + ]), + sighash_single_anyone: None, + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x3f, + 0xf8, 0x6f, 0x50, 0xec, 0xbf, 0xbe, 0x1b, 0x02, 0xe4, 0xad, 0x34, 0x96, 0x03, + 0x06, 0x6f, 0xc9, 0xc6, 0x61, 0xd6, 0x9f, 0x91, 0x1d, 0xfa, 0x72, 0x41, 0xc8, + 0xd5, 0x79, 0x2d, 0x43, 0xc4, 0x57, 0xd5, 0xde, 0x96, 0x52, 0x3a, 0x53, 0xd6, + 0x67, 0xec, 0x5c, 0x4e, 0xf9, 0x07, 0x52, 0x51, 0x6a, 0x63, 0x52, 0x6a, 0x00, + 0x96, 0xd7, 0x9b, 0xc5, 0x78, 0x33, 0xe9, 0x77, 0x17, 0x1c, 0x32, 0x4d, 0xce, + 0x2a, 0x1e, 0xa1, 0xe4, 0x30, 0x4f, 0x49, 0xe4, 0x3a, 0xe0, 0x65, 0xe3, 0xfb, + 0x19, 0x6f, 0x76, 0xd9, 0xb8, 0x79, 0xc7, 0x20, 0x08, 0x62, 0xea, 0xd1, 0x8d, + 0xea, 0x05, 0x65, 0x51, 0x52, 0x65, 0x53, 0x33, 0x86, 0xeb, 0x4c, 0x03, 0x3c, + 0xb3, 0xd8, 0x2c, 0xdf, 0xd4, 0x02, 0x00, 0x03, 0x53, 0x52, 0x52, 0xd2, 0xc5, + 0xd7, 0xc4, 0x74, 0xbb, 0x05, 0x00, 0x00, 0xee, 0x7e, 0xf4, 0x13, 0x04, 0x19, + 0x05, 0x00, 0x02, 0x53, 0x65, 0x00, 0x02, 0x91, 0xee, 0x85, 0x28, 0x7e, 0xf0, + 0x6d, 0x2e, 0x80, 0xec, 0x0b, 0xe4, 0x73, 0xfe, 0x5d, 0x64, 0xb7, 0x6d, 0xbb, + 0x8b, 0x5d, 0x05, 0x46, 0x72, 0x67, 0x4a, 0x79, 0x40, 0x11, 0x30, 0x3e, 0x28, + 0xb9, 0x0a, 0xde, 0x1d, 0x68, 0x27, 0x26, 0xf4, 0x20, 0x08, 0xb4, 0x6a, 0xd7, + 0xf8, 0xab, 0xdb, 0x18, 0x11, 0x7f, 0x72, 0x64, 0x13, 0x90, 0xf0, 0x86, 0xb6, + 0xe1, 0x49, 0x8b, 0xe6, 0x95, 0x48, 0x43, 0x33, 0xe8, 0xd2, 0x6e, 0x6a, 0x14, + 0xe5, 0x49, 0x37, 0xed, 0xd0, 0xde, 0x5f, 0x54, 0xb6, 0x72, 0x88, 0xbe, 0x47, + 0xbe, 0xdb, 0x59, 0x8f, 0xbf, 0xcf, 0x70, 0xb3, 0xe7, 0xb6, 0x33, 0xf3, 0xb7, + 0xe0, 0x39, 0xa3, 0x76, 0xf7, 0xac, 0xbb, 0xea, 0xdb, 0x34, 0xf9, 0x45, 0xbe, + 0xb9, 0xd7, 0xca, 0x0e, 0x4e, 0x3d, 0x5c, 0x5e, 0x4e, 0xb1, 0xd8, 0x52, 0x6e, + 0xbd, 0x13, 0xda, 0xcb, 0x1b, 0xa3, 0x57, 0x35, 0xc6, 0xd0, 0x4a, 0x45, 0x55, + 0xac, 0xf4, 0xbf, 0x11, 0x76, 0x26, 0x50, 0x0d, 0x77, 0xb3, 0x81, 0x89, 0xdd, + 0x48, 0x88, 0x04, 0x12, 0x25, 0xac, 0xbe, 0x38, 0x74, 0xa4, 0xc0, 0xf6, 0x07, + 0xfe, 0x67, 0x45, 0xf9, 0x35, 0x5b, 0x3f, 0xa1, 0x88, 0xf1, 0xd6, 0x5c, 0x09, + 0xf3, 0x89, 0xaf, 0x1b, 0x9d, 0x62, 0x32, 0xaa, 0x79, 0x44, 0x79, 0x19, 0xc5, + 0x50, 0xf6, 0xf3, 0x1f, 0xec, 0x35, 0x48, 0x1c, 0xb9, 0x22, 0xde, 0x2d, 0xb5, + 0xb4, 0xda, 0x2f, 0x81, 0x94, 0x86, 0x17, 0x02, 0x8e, 0x32, 0x17, 0x06, 0xa3, + 0xa7, 0x78, 0xc1, 0x93, 0x8c, 0x44, 0x3b, 0xb0, 0x0e, 0x5b, 0x0f, 0xf0, 0x6a, + 0xd8, 0xab, 0x9b, 0x1a, 0xb0, 0xc1, 0x14, 0x77, 0x67, 0x3f, 0x85, 0xdf, 0x95, + 0x61, 0xdb, 0xea, 0x45, 0xd5, 0xf9, 0x78, 0x1e, 0xbe, 0x31, 0x7a, 0x07, 0x10, + 0xae, 0x54, 0x61, 0xe3, 0x4f, 0xe6, 0xf1, 0xb1, 0xaa, 0x9b, 0x4e, 0x67, 0xb1, + 0x49, 0x10, 0x98, 0x48, 0x02, 0xc2, 0xa7, 0xe3, 0x81, 0x93, 0xbc, 0x7b, 0xdc, + 0x8b, 0xa3, 0xe4, 0xe3, 0xd1, 0xd9, 0x33, 0xbf, 0xb5, 0x80, 0xf5, 0xb3, 0xe8, + 0x7a, 0x2a, 0x06, 0x51, 0x70, 0x51, 0x41, 0x0f, 0xe1, 0xb4, 0xff, 0x1e, 0xa0, + 0xad, 0xe8, 0x24, 0xf3, 0x38, 0x51, 0x54, 0x56, 0xa5, 0x7c, 0x7a, 0x91, 0x6a, + 0x74, 0x38, 0x8e, 0xe8, 0xf1, 0x28, 0x1f, 0x9a, 0xde, 0x0a, 0xe2, 0xa2, 0x61, + 0x3a, 0x06, 0x12, 0xc4, 0x69, 0xdf, 0x79, 0x2b, 0x8d, 0xf4, 0xca, 0xe4, 0xfc, + 0x25, 0xc1, 0xca, 0xdb, 0xa9, 0x5a, 0x80, 0x7c, 0xe6, 0x1e, 0x5a, 0x53, 0x03, + 0xfa, 0xaf, 0x9e, 0x14, 0x65, 0x39, 0x96, 0xb5, 0xa8, 0xad, 0xc3, 0x4f, 0xd4, + 0x75, 0xef, 0x14, 0x99, 0x09, 0x4b, 0xab, 0xaf, 0x1f, 0x3f, 0x07, 0xda, 0x9a, + 0x39, 0x0b, 0x1d, 0x9f, 0xc9, 0xa0, 0x83, 0x27, 0x98, 0x7a, 0xdf, 0xe9, 0x56, + 0x48, 0x63, 0xfb, 0xdf, 0xa8, 0xf6, 0xb4, 0x6a, 0x88, 0x41, 0x58, 0x30, 0x99, + 0xaf, 0xb7, 0x87, 0x01, 0x18, 0xfa, 0xce, 0x76, 0x34, 0x7e, 0x40, 0xb6, 0xfd, + 0x8c, 0xd1, 0x55, 0x82, 0xae, 0x8e, 0x23, 0xbe, 0x9a, 0x02, 0x19, 0xbc, 0x3e, + 0x4e, 0x45, 0x46, 0xa3, 0x0d, 0x3b, 0xbb, 0xbd, 0x16, 0x86, 0x08, 0x68, 0x76, + 0xbe, 0x0e, 0x4c, 0x85, 0x9b, 0xe7, 0x1f, 0xb5, 0x8f, 0x4f, 0xab, 0x3d, 0x28, + 0xc0, 0xb4, 0xf7, 0xe7, 0x5a, 0xd1, 0xed, 0xb7, 0xf8, 0x89, 0x46, 0xfb, 0x40, + 0xcf, 0xa5, 0x78, 0x6a, 0x0f, 0xcb, 0xa1, 0x30, 0x3c, 0x83, 0x47, 0xec, 0xee, + 0x93, 0xd4, 0x6d, 0x14, 0x0b, 0xb5, 0xf6, 0x95, 0x31, 0xd6, 0x66, 0x54, 0x8b, + 0x10, 0x9c, 0xe7, 0x64, 0xbe, 0xad, 0x7c, 0x87, 0xbd, 0x4c, 0x87, 0x64, 0x94, + 0xde, 0x82, 0xdb, 0x6e, 0x50, 0x73, 0xa6, 0xc9, 0x4f, 0x7c, 0x09, 0x9a, 0x40, + 0xd7, 0xa3, 0x1c, 0x4a, 0x04, 0xb6, 0x9c, 0x9f, 0xcc, 0xf3, 0xc7, 0xdd, 0x56, + 0xf5, 0x54, 0x47, 0x76, 0xc5, 0x3b, 0x4d, 0xf7, 0x95, 0x39, 0x81, 0xd5, 0x5a, + 0x96, 0xa6, 0xdc, 0xff, 0x99, 0x04, 0xa9, 0x08, 0x42, 0xe5, 0xba, 0xfe, 0xc8, + 0x84, 0x0c, 0x2d, 0x25, 0x5b, 0xf5, 0xad, 0x61, 0xc4, 0x60, 0xf9, 0x8f, 0xeb, + 0x82, 0xa1, 0x0f, 0xa1, 0xc0, 0x99, 0xf6, 0x27, 0x76, 0x79, 0x82, 0x36, 0xc5, + 0xca, 0x7f, 0x1e, 0x46, 0xeb, 0xdb, 0x2b, 0x14, 0x4d, 0x87, 0x13, 0xe5, 0x6c, + 0x77, 0x2f, 0x2c, 0x3b, 0x86, 0x0e, 0xa5, 0xb0, 0x3a, 0x88, 0x54, 0xbc, 0x6e, + 0x65, 0x90, 0xd6, 0x3c, 0xc0, 0xea, 0x54, 0xf1, 0x0b, 0x73, 0xba, 0x24, 0x1b, + 0xf7, 0x4b, 0x63, 0x55, 0x51, 0xa2, 0xaa, 0xca, 0x96, 0x87, 0xac, 0x52, 0x69, + 0xfd, 0x36, 0x8b, 0x26, 0xd7, 0x0a, 0x73, 0x7f, 0x26, 0x76, 0x85, 0x99, 0x8a, + 0x3f, 0x7d, 0x26, 0x37, 0x91, 0x49, 0x09, 0xc7, 0x46, 0x49, 0x5d, 0x24, 0xc4, + 0x98, 0x63, 0x5e, 0xf9, 0x7a, 0xc6, 0x6a, 0x40, 0x08, 0x94, 0xc0, 0x9f, 0x73, + 0x48, 0x8e, 0xb7, 0xcf, 0x33, 0xf6, 0xda, 0xd1, 0x66, 0x6a, 0x05, 0xf9, 0x1a, + 0xd7, 0x75, 0x79, 0x65, 0xc2, 0x99, 0x36, 0xe7, 0xfa, 0x48, 0xd7, 0x7e, 0x89, + 0xee, 0x09, 0x62, 0xf5, 0x8c, 0x05, 0x1d, 0x11, 0xd0, 0x55, 0xfc, 0xe2, 0x04, + 0xa5, 0x62, 0xde, 0x68, 0x08, 0x8a, 0x1b, 0x26, 0x48, 0xb8, 0x17, 0x4c, 0xbc, + 0xfc, 0x8b, 0x5b, 0x5c, 0xd0, 0x77, 0x11, 0x5a, 0xfd, 0xe1, 0x84, 0x05, 0x05, + 0x4e, 0x5d, 0xa9, 0xa0, 0x43, 0x10, 0x34, 0x2c, 0x5d, 0xfc, 0x18, 0x60, 0x70, + 0xef, 0xe8, 0x0e, 0x2f, 0x4e, 0x1d, 0x9f, 0x77, 0xcd, 0x2c, 0xa7, 0xbb, 0x18, + 0xf0, 0x17, 0x94, 0xbb, 0x77, 0x9e, 0xb5, 0xaf, 0x6a, 0xb5, 0xb1, 0x33, 0x2b, + 0x62, 0x38, 0xc0, 0xf6, 0x65, 0xbe, 0x81, 0x33, 0xb7, 0xdc, 0x1d, 0x86, 0x04, + 0x4d, 0xb0, 0xf9, 0xdb, 0x40, 0xfb, 0x0e, 0x9f, 0x8b, 0xc2, 0xe4, 0xdb, 0x53, + 0x82, 0xa8, 0xb4, 0xf8, 0x15, 0xb4, 0xe8, 0x43, 0x66, 0xc6, 0x75, 0x04, 0xd3, + 0xf4, 0xd2, 0xfb, 0xef, 0x16, 0x65, 0x03, 0xaa, 0x0e, 0x1d, 0x14, 0x84, 0x57, + 0xc8, 0x6e, 0x8c, 0xd1, 0xc5, 0x4e, 0xa6, 0xa6, 0x0c, 0x90, 0xb2, 0xc3, 0x71, + 0x99, 0xba, 0x43, 0x64, 0xe8, 0x4b, 0xac, 0x37, 0x92, 0x98, 0xdf, 0x29, 0x32, + 0xe6, 0x9b, 0xb5, 0xd0, 0x45, 0x51, 0x6e, 0xfc, 0x33, 0xae, 0x6c, 0xc3, 0x94, + 0x7c, 0xeb, 0x09, 0xed, 0x37, 0x16, 0x67, 0x21, 0x2a, 0x83, 0x1b, 0x54, 0x85, + 0xea, 0xfc, 0xe8, 0x48, 0x81, 0x88, 0xea, 0x4e, 0x27, 0xd0, 0xcd, 0xf7, 0xdd, + 0xd3, 0x48, 0xab, 0xff, 0x77, 0x7f, 0x4a, 0x13, 0xbb, 0xc7, 0x16, 0xb6, 0xa5, + 0x94, 0x4e, 0xe7, 0x27, 0x96, 0x56, 0x90, 0xe2, 0x09, 0xb4, 0x9e, 0xb9, 0x62, + 0xc0, 0x39, 0x97, 0x5f, 0x93, 0x9e, 0xd5, 0xc6, 0xe4, 0xc4, 0x00, 0xd8, 0x87, + 0x75, 0x94, 0x33, 0xd3, 0xad, 0x71, 0x6d, 0xa0, 0xcb, 0x44, 0x61, 0x13, 0xc7, + 0x72, 0x7a, 0x64, 0xb5, 0x8c, 0x3f, 0x8a, 0x0f, 0x81, 0x18, 0x9f, 0x98, 0x00, + 0x52, 0x33, 0xa8, 0x13, 0x66, 0xae, 0xe7, 0x3c, 0xec, 0x85, 0x22, 0x8e, 0xbc, + 0xfd, 0x5e, 0xe3, 0xc3, 0xfb, 0x44, 0xdb, 0x76, 0xba, 0x24, 0x3f, 0x28, 0x42, + 0xb7, 0xb5, 0xfc, 0x74, 0x6a, 0xe5, 0x1b, 0x0b, 0xc4, 0xbd, 0x4f, 0xc9, 0xfd, + 0x83, 0x35, 0x65, 0xea, 0x85, 0x2b, 0x92, 0xb2, 0x24, 0xf6, 0x99, 0x03, 0x18, + 0xad, 0x8c, 0x7d, 0x94, 0x37, 0xe2, 0x0e, 0x2a, 0x1f, 0x20, 0xe8, 0x18, 0xf9, + 0x05, 0x7c, 0x5a, 0xba, 0xaa, 0x2e, 0x5c, 0x15, 0xb9, 0x49, 0x45, 0xcd, 0x42, + 0x4c, 0x28, 0xa5, 0xfa, 0x38, 0x5d, 0xad, 0xfe, 0x49, 0x07, 0xb2, 0x74, 0xd8, + 0x42, 0x70, 0x7d, 0xb3, 0x69, 0x7a, 0x5a, 0xe6, 0xc8, 0xf5, 0x42, 0xe5, 0xec, + 0xc0, 0x7f, 0xe4, 0x73, 0x50, 0xd1, 0x01, 0x46, 0x70, 0x21, 0x2e, 0xfe, 0x81, + 0xfb, 0x7c, 0x73, 0xe8, 0x45, 0x0d, 0xf8, 0x14, 0xef, 0x62, 0x32, 0xf7, 0x49, + 0x0f, 0x63, 0xcc, 0xf0, 0x74, 0x80, 0xf8, 0x84, 0xa6, 0x6e, 0xaf, 0xfc, 0x28, + 0xfe, 0xa4, 0x48, 0xd7, 0xb4, 0x01, 0xcd, 0xae, 0x10, 0xe7, 0xc0, 0xc7, 0xf9, + 0xa7, 0xb1, 0x53, 0x31, 0x96, 0x9f, 0xc8, 0xcb, 0x36, 0x39, 0x67, 0x73, 0xde, + 0x19, 0x19, 0x31, 0xc7, 0x50, 0xf6, 0xce, 0x5c, 0xaa, 0xf2, 0x97, 0x68, 0xeb, + 0xb2, 0x7d, 0xac, 0xc7, 0x38, 0x05, 0x6a, 0x81, 0x25, 0xb4, 0x77, 0x2b, 0xf8, + 0x7a, 0xe1, 0x0a, 0x8a, 0x30, 0x9b, 0x9b, 0xd6, 0x55, 0x04, 0x3c, 0xfc, 0x31, + 0x59, 0x49, 0x43, 0x68, 0xc5, 0xab, 0x8c, 0xad, 0xb7, 0xf6, 0x71, 0xe9, 0x62, + 0x6b, 0xd2, 0x63, 0xe3, 0x11, 0x81, 0xa6, 0x04, 0xb5, 0x06, 0xa0, 0x3b, 0x43, + 0x9a, 0x7f, 0xfe, 0x43, 0x55, 0x89, 0x24, 0x77, 0xe2, 0xbd, 0xf3, 0x38, 0xc6, + 0x2c, 0x39, 0x22, 0xf7, 0xd3, 0xc9, 0xa5, 0x6c, 0x71, 0x03, 0xd9, 0x11, 0x94, + 0x8a, 0x84, 0xb5, 0xae, 0x2d, 0xbb, 0x16, 0xa3, 0x76, 0x1a, 0xdd, 0x05, 0x3a, + 0x0f, 0x96, 0x7e, 0x6b, 0x5b, 0xc9, 0x42, 0x11, 0xb6, 0x54, 0x71, 0x53, 0x26, + 0x7c, 0x6e, 0xe1, 0xca, 0xd0, 0xd9, 0x74, 0xa7, 0x10, 0x88, 0x58, 0x37, 0x35, + 0xe4, 0xf6, 0x3d, 0x33, 0x15, 0x6d, 0xad, 0xd5, 0x4c, 0x2f, 0xaf, 0x89, 0x11, + 0x4a, 0x12, 0x7b, 0x97, 0xb9, 0x4c, 0xc2, 0xa2, 0x2e, 0xf3, 0x03, 0xf4, 0x59, + 0xd0, 0x4f, 0xc0, 0xb5, 0x3a, 0xce, 0x59, 0x18, 0xd4, 0x7f, 0xf3, 0x3a, 0x55, + 0x8b, 0xd7, 0x1a, 0x75, 0xf3, 0x55, 0xfb, 0xd0, 0x6b, 0xbc, 0xcf, 0x4e, 0x02, + 0xc3, 0xc0, 0xa4, 0xb6, 0x3d, 0x0c, 0xc9, 0x49, 0x80, 0x1d, 0x63, 0xa6, 0x4c, + 0xb2, 0xd3, 0x23, 0x73, 0xb2, 0xc7, 0xb2, 0x74, 0xab, 0x2d, 0xb4, 0x68, 0x21, + 0x42, 0xc8, 0xb2, 0x1d, 0x84, 0xc4, 0x81, 0xf5, 0xef, 0x21, 0xe4, 0xb5, 0xe3, + 0x60, 0x34, 0x51, 0xbf, 0x94, 0x77, 0x4d, 0x0e, 0xf4, 0x7f, 0x63, 0xfa, 0x6a, + 0xbb, 0x78, 0xd2, 0x1c, 0x19, 0x3c, 0xbe, 0x65, 0xb6, 0x95, 0xfe, 0x67, 0x42, + 0x3c, 0x1e, 0x2d, 0x31, 0x2e, 0x27, 0x76, 0xfa, 0x24, 0xec, 0xe8, 0x46, 0x83, + 0xe7, 0x48, 0x76, 0xc5, 0x5e, 0xa0, 0x36, 0x9e, 0x4e, 0xa0, 0xe8, 0x64, 0x94, + 0xe0, 0x0d, 0xde, 0x23, 0x6a, 0x16, 0x89, 0x73, 0x1f, 0x0a, 0x5d, 0x82, 0x03, + 0xaf, 0xde, 0x5c, 0x42, 0x36, 0x40, 0xb8, 0x1e, 0x4f, 0x63, 0x1c, 0x98, 0x1c, + 0x11, 0xa2, 0xe1, 0xd1, 0x84, 0xc6, 0x7c, 0x52, 0x8d, 0xf9, 0x2d, 0x53, 0xae, + 0xc4, 0x4a, 0x40, 0xa4, 0xea, 0x2a, 0x13, 0x1b, 0x47, 0x33, 0xcf, 0xe4, 0x5c, + 0x6b, 0x00, 0x12, 0xc3, 0xe9, 0xe2, 0x09, 0x75, 0xba, 0xae, 0xcb, 0x02, 0x32, + 0xdf, 0x88, 0x0b, 0xd7, 0xd1, 0xde, 0x13, 0xe1, 0x34, 0x94, 0x62, 0xec, 0x8d, + 0x5d, 0xf3, 0xe7, 0x80, 0xff, 0xa7, 0x2e, 0xba, 0x8a, 0x8d, 0xf7, 0xfc, 0xf3, + 0x98, 0xec, 0x23, 0x05, 0x13, 0xca, 0x9d, 0x61, 0x23, 0xf8, 0xb9, 0x1d, 0xe8, + 0x82, 0xc6, 0xa1, 0x9b, 0x05, 0x00, 0x3b, 0x52, 0x6e, 0x0b, 0x02, 0xc5, 0xca, + 0x17, 0x22, 0xba, 0xde, 0xee, 0x23, 0xd1, 0x45, 0xe8, 0xeb, 0x22, 0x13, 0xfc, + 0x4a, 0xf1, 0xe4, 0x50, 0xe4, 0xd5, 0x21, 0x7c, 0x66, 0x17, 0x00, 0x8c, 0x78, + 0xf4, 0xfb, 0x11, 0x12, 0xf4, 0x02, 0x8a, 0x70, 0x4f, 0xc5, 0xa9, 0x38, 0x2c, + 0x6b, 0x03, 0xe7, 0xd8, 0x08, 0x5e, 0x90, 0x6c, 0xf8, 0x4c, 0xa2, 0xc1, 0x20, + 0x7c, 0x87, 0xa2, 0xbc, 0xe2, 0x08, 0x0a, 0x98, 0x91, 0x66, 0x8d, 0x69, 0xb0, + 0x44, 0xbe, 0xce, 0xd6, 0xcd, 0xa3, 0x2c, 0x22, 0x9c, 0x91, 0x17, 0x91, 0x7a, + 0xa0, 0x7d, 0xdf, 0xfc, 0xd3, 0x77, 0x39, 0x5c, 0xba, 0x61, 0x6d, 0x63, 0xc0, + 0xb6, 0x9c, 0x01, 0xfc, 0xc4, 0x53, 0x91, 0xfd, 0x5b, 0x87, 0x63, 0xfb, 0x96, + 0xd7, 0xca, 0x33, 0x3a, 0x12, 0xde, 0x3c, 0xef, 0xa9, 0x1c, 0x6c, 0x98, 0xf9, + 0x47, 0x3b, 0x8e, 0x10, 0x4a, 0x71, 0x29, 0x3e, 0x46, 0x37, 0x47, 0x05, 0xba, + 0xf6, 0x5f, 0xa4, 0x13, 0x84, 0xba, 0x5c, 0x8e, 0x0c, 0x88, 0xa3, 0xeb, 0x07, + 0xe0, 0xbe, 0x34, 0xda, 0xdd, 0xfa, 0xbb, 0x7b, 0x65, 0x54, 0x3b, 0x5f, 0x39, + 0xcb, 0x20, 0x23, 0xd4, 0x67, 0x89, 0xeb, 0x7d, 0x98, 0x9a, 0xf7, 0x79, 0xe5, + 0xb8, 0xd2, 0x83, 0x85, 0xa8, 0x5b, 0x0d, 0xa2, 0xab, 0xe0, 0x7f, 0x0c, 0x2b, + 0xb4, 0x25, 0x5f, 0xd8, 0x17, 0x85, 0x60, 0xda, 0xf9, 0x75, 0x11, 0x19, 0x55, + 0xa2, 0xbc, 0xa3, 0x42, 0x3e, 0xee, 0xfc, 0x52, 0x7b, 0xe3, 0xa8, 0x54, 0x3e, + 0xb9, 0x0a, 0x5e, 0xc0, 0x2f, 0x35, 0xa7, 0xc6, 0x4b, 0x7d, 0xd5, 0x9a, 0x72, + 0xda, 0x00, 0x74, 0x63, 0x4e, 0x01, 0xd2, 0xab, 0xf3, 0x63, 0x7a, 0xdd, 0x77, + 0xc7, 0x35, 0x0f, 0x12, 0xb0, 0x11, 0xb2, 0x94, 0x16, 0x8e, 0xc7, 0x55, 0x76, + 0xe4, 0x7d, 0x16, 0x9e, 0x39, 0x38, 0xbf, 0x6a, 0xe2, 0xaa, 0x8f, 0xf7, 0xcf, + 0xba, 0x7c, 0xac, 0xb1, 0xf9, 0x2b, 0x6e, 0x4c, 0x24, 0x97, 0xbf, 0xfa, 0x9f, + 0x17, 0xca, 0xd2, 0x42, 0xfa, 0x9c, 0x31, 0x79, 0xc1, 0xa3, 0xaa, 0x81, 0xf7, + 0x36, 0x16, 0x49, 0x57, 0x2c, 0x71, 0x5c, 0x25, 0xa1, 0xf6, 0xcd, 0x5a, 0xce, + 0x82, 0xc0, 0x0a, 0xb2, 0x34, 0x2b, 0x9c, 0x3c, 0xb4, 0xff, 0xfd, 0xda, 0x16, + 0x0c, 0xa5, 0xab, 0x9e, 0x9b, 0xaf, 0x21, 0x39, 0xef, 0x9a, 0xfb, 0xe1, 0xb1, + 0xf3, 0x09, 0x46, 0x2a, 0xfc, 0xe4, 0x62, 0xa7, 0x9b, 0xb9, 0x69, 0x8e, 0x22, + 0xc9, 0x57, 0xc5, 0x90, 0xa7, 0x53, 0xa7, 0x6b, 0x87, 0xe0, 0x09, 0x12, 0x1e, + 0x06, 0xf6, 0xa1, 0xbf, 0x62, 0xa0, 0x8b, 0xf4, 0x35, 0xd9, 0x2e, 0x2f, 0xff, + 0xe8, 0x6e, 0x2a, 0x9c, 0xbb, 0xa9, 0x13, 0x3a, 0x68, 0xe4, 0xae, 0xbf, 0x33, + 0x7d, 0x85, 0xff, 0x6d, 0xcc, 0xe8, 0x80, 0x58, 0xd6, 0x5c, 0xd7, 0xde, 0x68, + 0x04, 0xd4, 0xaa, 0x07, 0xcc, 0x79, 0x39, 0xc7, 0x93, 0x20, 0x86, 0xfb, 0xc1, + 0x2e, 0x1a, 0x3b, 0x88, 0x12, 0x2b, 0xb6, 0x90, 0x8a, 0x88, 0x13, 0xc0, 0x21, + 0xde, 0x9f, 0xa9, 0xa4, 0x4e, 0x4c, 0x18, 0xdc, 0xb3, 0xd2, 0x1f, 0xaa, 0xbd, + 0xb4, 0x19, 0x31, 0xb2, 0xfd, 0x49, 0x76, 0x44, 0xdc, 0x3a, 0x15, 0x07, 0x04, + 0x20, 0xaf, 0x61, 0x5c, 0x04, 0x7b, 0xdc, 0xce, 0xc7, 0xb5, 0x03, 0x57, 0x3c, + 0x30, 0x7f, 0x3e, 0x2d, 0x3b, 0xbb, 0x64, 0x19, 0xc5, 0xa6, 0x23, 0xe1, 0x8a, + 0x64, 0x35, 0x16, 0xe9, 0x1d, 0x05, 0xac, 0xfe, 0xc1, 0x79, 0xf7, 0x67, 0x4c, + 0xec, 0x27, 0x21, 0xa1, 0x0f, 0xca, 0x69, 0x3d, 0x83, 0xcf, 0xe5, 0xb8, 0xcd, + 0xcc, 0x18, 0xf8, 0x1a, 0xd6, 0x17, 0xfa, 0x26, 0xf0, 0xdf, 0xb8, 0x36, 0xa5, + 0xa9, 0x06, 0xc6, 0xd8, 0xa1, 0x72, 0x67, 0xdc, 0x29, 0xc2, 0xa4, 0x86, 0xa3, + 0xd0, 0x45, 0x4c, 0x30, 0xe9, 0x3b, 0x5c, 0x54, 0x5d, 0x75, 0xb0, 0x86, 0x8d, + 0x6e, 0xa2, 0x7a, 0x37, 0x26, 0xd2, 0xe6, 0xd5, 0x5d, 0xcb, 0x90, 0xe2, 0x3f, + 0xf6, 0xb5, 0x08, 0x45, 0x9a, 0xa6, 0x99, 0xbf, 0xcb, 0xd5, 0x6f, 0x10, 0x99, + 0x77, 0x64, 0xd0, 0x87, 0x40, 0x89, 0x86, 0xe7, 0x3d, 0x6e, 0x28, 0x9b, 0xfa, + 0x3b, 0xce, 0x29, 0x26, 0x97, 0x93, 0xd2, 0x31, 0xe7, 0x8c, 0x66, 0x5f, 0xb6, + 0x1e, 0x30, 0x9c, 0x6b, 0x11, 0x5b, 0x9b, 0xca, 0x58, 0xa5, 0x1d, 0xb3, 0x04, + 0xc8, 0x74, 0xcd, 0xaf, 0x64, 0x34, 0x43, 0xbe, 0x0f, 0x88, 0x90, 0x32, 0xea, + 0x32, 0x5b, 0xf0, 0x71, 0x07, 0xfd, 0x41, 0xd6, 0x73, 0xee, 0xba, 0xe6, 0xfa, + 0x63, 0x7b, 0x70, 0xcc, 0x0e, 0xd3, 0xf0, 0x09, 0x58, 0xdf, 0xb8, 0xdc, 0xf0, + 0x0e, 0x85, 0xa1, 0xd0, 0xa6, 0xa8, 0x90, 0x81, 0x40, 0xc2, 0xf4, 0x34, 0xc2, + 0xe2, 0x60, 0xef, 0xb0, 0xbc, 0xa2, 0x00, 0x35, 0x04, 0xc9, 0x99, 0x93, 0xa9, + 0xe1, 0xc0, 0xff, 0x9c, 0xef, 0xe6, 0xa6, 0x65, 0xd7, 0x91, 0x42, 0x86, 0x90, + 0xe4, 0x7e, 0xf8, 0xc1, 0x31, 0xa8, 0xe9, 0xbf, 0xb4, 0xc3, 0x08, 0x02, 0x35, + 0x03, 0x2d, 0x73, 0x1b, 0x0d, 0x38, 0x41, 0x22, 0x5f, 0x1c, 0x11, 0xe2, 0xc2, + 0x8e, 0xe8, 0x4d, 0x35, 0xf9, 0x22, 0x61, 0x00, 0x56, 0x59, 0x72, 0xeb, 0x26, + 0x9d, 0x27, 0x8e, 0xf6, 0x49, 0x79, 0xbf, 0x65, 0x15, 0xed, 0x4a, 0x68, 0x40, + 0xb0, 0x88, 0x3a, 0x9e, 0x6e, 0xf6, 0x4a, 0x0e, 0xfc, 0xae, 0x1c, 0xf2, 0x1d, + 0xfe, 0x74, 0x85, 0x4e, 0x84, 0xc2, 0x74, 0x9f, 0xac, 0x03, 0x82, 0x52, 0x75, + 0xc9, 0xb6, 0x30, 0x21, 0x84, 0xc7, 0x2d, 0xf4, 0xc4, 0xbb, 0x28, 0x62, 0xe4, + 0xe8, 0xa7, 0xd9, 0xa4, 0xa2, 0x82, 0x86, 0x6f, 0x9a, 0x7b, 0x2c, 0xfc, 0x9a, + 0x56, 0x31, 0x3d, 0xa0, 0xc4, 0x7a, 0x34, 0xb7, 0xb9, 0xcd, 0xa3, 0xac, 0xe8, + 0x18, 0x5f, 0x07, 0xdf, 0x36, 0xe4, 0x48, 0xa7, 0x6a, 0xa4, 0x77, 0xf2, 0x24, + 0xd8, 0x7a, 0x07, 0x4f, 0x43, 0xaf, 0x5d, 0x5f, 0x79, 0xb3, 0xab, 0x11, 0x28, + 0xf0, 0x81, 0x91, 0x44, 0x7f, 0xa6, 0x46, 0xbf, 0xdd, 0xe5, 0xb5, 0x1e, 0x23, + 0x3c, 0xa6, 0x15, 0x5d, 0x10, 0x15, 0x85, 0xbc, 0x2c, 0x40, 0x15, 0x8a, 0xc2, + 0x10, 0x6e, 0x66, 0xa2, 0x6e, 0x46, 0x42, 0x33, 0x70, 0x63, 0x68, 0x76, 0xb4, + 0x34, 0xa7, 0x4f, 0x8c, 0xe8, 0x06, 0x00, 0x50, 0xb0, 0x82, 0xa7, 0x9b, 0x61, + 0xbb, 0x5d, 0x34, 0x4e, 0xb5, 0xa1, 0x15, 0x83, 0x26, 0xce, 0xd9, 0xa9, 0xd9, + 0xf5, 0x4f, 0xb2, 0xfe, 0x8f, 0x9f, 0x05, 0xcd, 0x11, 0x1e, 0xe4, 0x6c, 0x47, + 0x10, 0xf6, 0xf6, 0x3a, 0x62, 0x69, 0x45, 0x57, 0xef, 0x1b, 0x12, 0xc8, 0x80, + 0x06, 0xb6, 0x78, 0x72, 0x50, 0x5f, 0x4e, 0x88, 0x3b, 0x58, 0x59, 0x07, 0x92, + 0x9a, 0x2f, 0x3f, 0xdb, 0x0d, 0x8f, 0x79, 0x14, 0xc4, 0x2d, 0xde, 0x2d, 0x20, + 0x00, 0xf5, 0xae, 0x02, 0xd4, 0x18, 0x21, 0xc8, 0xe1, 0xee, 0x01, 0x38, 0xeb, + 0xcb, 0x72, 0x8d, 0x7c, 0x6c, 0x3c, 0x80, 0x02, 0x7e, 0x43, 0x75, 0x94, 0xc6, + 0x70, 0xfd, 0x6f, 0x39, 0x08, 0x22, 0x2e, 0xe7, 0xa1, 0xb9, 0x17, 0xf8, 0x27, + 0x1a, 0xbe, 0x66, 0x0e, 0x39, 0xe0, 0x51, 0xaa, 0xa6, 0xfc, 0xa1, 0x86, 0x22, + 0x76, 0xe2, 0xba, 0xa0, 0xfe, 0x0b, 0x16, 0x2a, 0xeb, 0xcf, 0xe3, 0xd9, 0x34, + 0x9c, 0x8d, 0x15, 0x4b, 0xb7, 0xee, 0x28, 0x21, 0x2c, 0x1b, 0xaa, 0x70, 0x5d, + 0x82, 0x07, 0x0d, 0x70, 0x32, 0xf2, 0x69, 0x5d, 0x17, 0x96, 0x80, 0x9f, 0xab, + 0x41, 0x24, 0x69, 0x26, 0xaf, 0x99, 0x2b, 0x6e, 0xee, 0x95, 0xa9, 0xa0, 0x6b, + 0xc4, 0x56, 0x2c, 0x5f, 0x2f, 0x1b, 0x19, 0x54, 0x95, 0x00, 0x37, 0x2e, 0x7a, + 0xd5, 0x79, 0xa6, 0xd6, 0xd7, 0x8b, 0x33, 0x15, 0x31, 0x30, 0xfb, 0x44, 0x8f, + 0xb7, 0x9e, 0x8a, 0x66, 0x9d, 0xb8, 0xa0, 0xf3, 0x5c, 0xdf, 0x9a, 0xe5, 0xd3, + 0x2d, 0x73, 0x2f, 0xc7, 0x94, 0x18, 0xe2, 0x3b, 0x45, 0x1d, 0xdc, 0x95, 0xa2, + 0x2a, 0xba, 0xbb, 0x05, 0x6e, 0xc6, 0xb5, 0xe8, 0xba, 0x4f, 0x52, 0x4d, 0xfa, + 0xfe, 0x87, 0x52, 0x62, 0xdd, 0x7b, 0xe4, 0x1c, 0xbb, 0xc6, 0x24, 0x20, 0xd4, + 0xad, 0x6d, 0xf5, 0xc9, 0xb7, 0x13, 0x60, 0x4f, 0x65, 0x60, 0x88, 0xa4, 0x48, + 0x5e, 0x93, 0xbe, 0x19, 0x07, 0xd2, 0x7a, 0xc6, 0xec, 0x3c, 0x57, 0x25, 0x9b, + 0xd6, 0x98, 0x1d, 0x42, 0xc1, 0xb7, 0x8a, 0x29, 0xad, 0x96, 0x85, 0xe6, 0x3c, + 0x49, 0x4d, 0x41, 0x29, 0x62, 0x3e, 0xa1, 0xa7, 0xff, 0xec, 0x85, 0xfa, 0x29, + 0x41, 0x10, 0x73, 0xed, 0xb2, 0x97, 0x8e, 0xf4, 0xe4, 0x69, 0xdd, 0xd5, 0xcd, + 0xa9, 0x86, 0x18, 0x99, 0x95, 0xf8, 0x8d, 0x6a, 0xb3, 0x66, 0xdb, 0x01, 0x90, + 0x01, 0xf5, 0xb2, 0x52, 0x88, 0xcf, 0x86, 0x0f, 0xd9, 0x98, 0xee, 0x57, 0x3c, + 0x8c, 0xc4, 0x8a, 0xa9, 0xef, 0xcf, 0x9b, 0x61, 0x7e, 0x04, 0x3c, 0x32, 0x9c, + 0xd1, 0xaa, 0x1a, 0x0e, 0xd3, 0xa4, 0x02, 0xfb, 0x96, 0xe3, 0x36, 0xc7, 0x19, + 0xe6, 0x25, 0x3c, 0xb6, 0x91, 0xaa, 0x0d, 0xb5, 0x27, 0x36, 0x62, 0x6e, 0xd1, + 0x97, 0x88, 0x75, 0x88, 0x8e, 0xc7, 0x6c, 0x84, 0x6b, 0xc2, 0x27, 0x27, 0x2a, + 0x58, 0x53, 0x17, 0xdf, 0xf0, 0xb1, 0x14, 0x8d, 0x92, 0xd6, 0xf5, 0xfb, 0x7d, + 0x95, 0x33, 0x67, 0x70, 0xa7, 0xd1, 0x6f, 0xac, 0x1a, 0xdd, 0x86, 0x07, 0x76, + 0xcb, 0x48, 0x02, 0x21, 0xf8, 0xfb, 0x33, 0xb6, 0x4c, 0xf6, 0xb9, 0xde, 0x90, + 0x07, 0x04, 0xa6, 0x0b, 0x2b, 0x9c, 0xe7, 0x9e, 0x3a, 0xe1, 0x4e, 0x5a, 0xb0, + 0xb4, 0xc7, 0x5a, 0x1b, 0x02, 0xc4, 0x97, 0x3c, 0x56, 0x4d, 0x74, 0x0e, 0x12, + 0x5c, 0x70, 0xc7, 0x8b, 0xa2, 0xbb, 0xe2, 0x8e, 0xeb, 0x57, 0x2b, 0xb1, 0x8e, + 0x3d, 0x3f, 0xc4, 0x83, 0x0f, 0x05, 0xc7, 0x14, 0x52, 0x3c, 0xa8, 0x19, 0x72, + 0x0a, 0xe2, 0x27, 0xfd, 0x1a, 0x0b, 0x20, 0x75, 0x29, 0x50, 0x20, 0xae, 0x84, + 0x69, 0xca, 0x01, 0x38, 0xf1, 0xf2, 0xce, 0x56, 0xc8, 0x11, 0x6f, 0x62, 0xad, + 0xf7, 0x70, 0x6b, 0xdb, 0x53, 0x88, 0x93, 0x77, 0x07, 0xa2, 0x90, 0x29, 0xb3, + 0x2d, 0x17, 0xc8, 0x1e, 0x2d, 0x8c, 0x0d, 0x21, 0x53, 0x1b, 0xca, 0xf7, 0x72, + 0x36, 0x03, 0x9b, 0xce, 0x9a, 0xca, 0xd1, 0x8b, 0x4a, 0xea, 0xe0, 0x3c, 0x0e, + 0xae, 0x22, 0x5d, 0x42, 0x04, 0xaa, 0x3f, 0x5e, 0x51, 0x6f, 0xc0, 0x07, 0xe6, + 0x1c, 0xfe, 0x3c, 0xd1, 0x16, 0xce, 0x00, 0x16, 0x92, 0x6c, 0x01, 0xa6, 0x97, + 0xc3, 0x68, 0xb5, 0x3f, 0x95, 0x85, 0xaf, 0x69, 0xfc, 0x14, 0x3d, 0xaa, 0xf6, + 0x1c, 0x5b, 0x72, 0x52, 0xf7, 0x3e, 0xc0, 0xa9, 0x46, 0x6a, 0x1b, 0x85, 0x76, + 0x4f, 0xb0, 0x83, 0x1b, 0x4a, 0x1a, 0x36, 0x89, 0x0e, 0x22, 0x4c, 0x01, 0xac, + 0xfc, 0xe4, 0x8e, 0xe3, 0xed, 0x93, 0x87, 0x73, 0x98, 0xe0, 0x72, 0x6d, 0x02, + 0x93, 0x6d, 0x0d, 0x03, 0x2e, 0x18, 0xe3, 0x28, 0x8b, 0x26, 0x70, 0xe1, 0x36, + 0x2c, 0x32, 0xd6, 0xe4, 0x73, 0x3b, 0x9d, 0xd2, 0xd5, 0xf2, 0x6e, 0x1f, 0xe3, + 0x06, 0xf7, 0x3c, 0x00, 0x7f, 0xdd, 0xca, 0xe9, 0xd9, 0xc0, 0xaa, 0xf1, 0x87, + 0xd7, 0x42, 0x8b, 0x1e, 0x9d, 0x47, 0x9c, 0x18, 0x23, 0x7b, 0x98, 0x28, 0xbc, + 0xa8, 0xb9, 0x8c, 0x9d, 0x9b, 0xec, 0x7d, 0x82, 0x70, 0xb5, 0xd8, 0xee, 0xc3, + 0xcc, 0x4f, 0x43, 0xfa, 0x01, 0x88, 0x52, 0x1b, 0xc6, 0x1b, 0x21, 0xdd, 0x04, + 0xe3, 0x7a, 0x83, 0xec, 0xe6, 0x8c, 0xa7, 0xa2, 0xfa, 0x6c, 0x8f, 0x9e, 0x34, + 0xa6, 0x29, 0x03, 0x35, 0xaa, 0x1f, 0xbd, 0x83, 0xd5, 0x4a, 0xaf, 0x44, 0x1e, + 0x31, 0x9e, 0xa4, 0x7a, 0x86, 0x2a, 0xd0, 0x29, 0x3c, 0xed, 0xf5, 0xdd, 0x9e, + 0xda, 0xde, 0xee, 0x33, 0xcb, 0x52, 0x2c, 0xd0, 0x11, 0x8b, 0xbd, 0x81, 0x1a, + 0xce, 0x9a, 0x23, 0xbd, 0xa3, 0x9a, 0xba, 0x72, 0xf1, 0x56, 0x6f, 0xc1, 0x68, + 0x84, 0x97, 0xd2, 0xa7, 0x92, 0x8c, 0x36, 0x70, 0x15, 0x25, 0x67, 0x8b, 0xc9, + 0x72, 0x14, 0xb3, 0x1b, 0x37, 0xba, 0xb4, 0x6b, 0x88, 0xf2, 0x7f, 0x04, 0x48, + 0xde, 0xcb, 0x31, 0x62, 0x2d, 0x0f, 0x0f, 0x87, 0xa8, 0x55, 0xba, 0x54, 0x00, + 0x03, 0x32, 0x03, 0x1f, 0x73, 0xab, 0xff, 0xd4, 0x65, 0x91, 0xda, 0x0b, 0x88, + 0x72, 0x35, 0x04, 0xed, 0xb2, 0x33, 0x72, 0x30, 0xda, 0xd2, 0xac, 0xc0, 0xd8, + 0xbb, 0x68, 0xbc, 0x83, 0x7a, 0x2f, 0xf9, 0x30, 0xbf, 0xf0, 0x6f, 0xde, 0x74, + 0xeb, 0x90, 0xaa, 0xe4, 0xf6, 0x0d, 0xbb, 0x6e, 0xb8, 0x27, 0xea, 0x99, 0x88, + 0x4a, 0xcd, 0x62, 0x85, 0xa9, 0x88, 0x92, 0x80, 0x2c, 0xf5, 0x9d, 0x5d, 0x60, + 0xd0, 0x16, 0x63, 0x38, 0x7b, 0x3e, 0xd2, 0x72, 0x3b, 0xd6, 0x48, 0x9e, 0x9c, + 0x2c, 0x10, 0x6d, 0x4a, 0xa2, 0xde, 0x23, 0xce, 0xd1, 0x6c, 0x72, 0x04, 0x29, + 0xc7, 0x75, 0x3a, 0x77, 0x38, 0xec, 0x7d, 0x9d, 0xb8, 0x62, 0x42, 0x29, 0xed, + 0xd2, 0x17, 0xb8, 0x0d, 0x74, 0x87, 0x5a, 0x14, 0xca, 0xe4, 0x86, 0x3f, 0x13, + 0x9e, 0x9c, 0x0b, 0x13, 0x1b, 0x2a, 0x4c, 0x28, 0x07, 0x1a, 0x38, 0xec, 0x61, + 0xf6, 0x68, 0x01, 0xaa, 0x59, 0x56, 0xfc, 0xb2, 0xa4, 0x6b, 0x95, 0x87, 0x66, + 0x5b, 0x75, 0x71, 0xaa, 0x03, 0x48, 0x1f, 0xd8, 0xd9, 0xd5, 0x69, 0x8f, 0x83, + 0x6f, 0xc8, 0x63, 0x5e, 0x69, 0xe3, 0xbd, 0xe4, 0x2f, 0x4a, 0xc0, 0x71, 0x32, + 0x8b, 0x54, 0x09, 0xf6, 0xe4, 0x2d, 0x79, 0x0a, 0xed, 0xd7, 0x3b, 0xc1, 0xa2, + 0x35, 0x47, 0x23, 0xb3, 0xb8, 0x19, 0xd0, 0x63, 0x7a, 0x6f, 0xa4, 0x66, 0x39, + 0x46, 0xa3, 0x0a, 0xc5, 0xaf, 0xdd, 0x30, 0xce, 0x83, 0x0f, 0x67, 0x91, 0xb4, + 0x57, 0x52, 0x70, 0xa1, 0x72, 0x0f, 0x91, 0x86, 0x6e, 0x2b, 0x86, 0xf4, 0x78, + 0x88, 0x94, 0xc8, 0xda, 0x62, 0xd8, 0xb9, 0x1f, 0xaf, 0x52, 0x0e, 0x3b, 0xed, + 0xbc, 0x12, 0x06, 0xa5, 0xa5, 0xe6, 0xef, 0xd3, 0xdf, 0xde, 0x08, 0x43, 0xc3, + 0xb0, 0x67, 0x57, 0x64, 0x3f, 0xc0, 0x06, 0x00, 0x88, 0x38, 0xca, 0x47, 0x30, + 0x87, 0xf8, 0x97, 0x79, 0x18, 0xcc, 0x1b, 0x81, 0xc9, 0xe6, 0x8e, 0x3b, 0x88, + 0x8f, 0xe6, 0xf7, 0xc6, 0x30, 0xf1, 0xbc, 0x7a, 0xe1, 0x88, 0xf5, 0x12, 0x84, + 0x20, 0x41, 0xca, 0xda, 0x1e, 0x05, 0xf8, 0x66, 0xd2, 0x56, 0x2d, 0xbe, 0x09, + 0xc4, 0xb4, 0x30, 0x68, 0xf7, 0x54, 0xda, 0xd3, 0x4d, 0xf0, 0xfc, 0xfc, 0x18, + 0x1f, 0x31, 0x80, 0x1a, 0x79, 0x92, 0xd2, 0xf1, 0x6b, 0xe0, 0x21, 0x1b, 0x4a, + 0x22, 0xf6, 0x2a, 0xab, 0x64, 0x70, 0x1b, 0xf4, 0xa4, 0xe6, 0xd6, 0x66, 0xfc, + 0x30, 0x4a, 0x5c, 0x79, 0xc6, 0x09, 0xac, 0xc4, 0x3b, 0x00, 0xb4, 0x86, 0x48, + 0x93, 0xd3, 0x7d, 0x50, 0x07, 0xf0, 0xc3, 0x29, 0xa4, 0x75, 0x50, 0x52, 0x57, + 0x75, 0x70, 0xdd, 0x38, 0xfa, 0xc0, 0x43, 0xcd, 0x91, 0xc1, 0x2e, 0xe3, 0x4e, + 0x9c, 0xfa, 0xe3, 0x92, 0xa7, 0x8b, 0xda, 0xbd, 0x4e, 0xe3, 0x1d, 0xc0, 0xde, + 0xb0, 0x2f, 0xe7, 0xb1, 0xd8, 0xb0, 0x17, 0x8a, 0xc9, 0x51, 0x31, 0x05, 0xfc, + 0xc7, 0xe3, 0x0b, 0xa8, 0xe0, 0x16, 0xaa, 0x36, 0xa6, 0xb5, 0xdf, 0x5e, 0x5a, + 0x19, 0x09, 0xf6, 0x3a, 0xba, 0x09, 0x5d, 0x98, 0x77, 0xa8, 0xf2, 0xdc, 0x53, + 0xf4, 0x6f, 0x6c, 0x9b, 0x07, 0xad, 0xdf, 0x14, 0x6f, 0x4f, 0xfa, 0x50, 0x1f, + 0x9d, 0xd3, 0xcf, 0xf9, 0x24, 0xe3, 0x01, 0x0f, 0xaf, 0x50, 0x4e, 0x2b, 0x8a, + 0xca, 0x73, 0x57, 0xac, 0xbf, 0xfe, 0xc7, 0x3a, 0xc3, 0x4c, 0x1a, 0x73, 0x16, + 0x0f, 0x82, 0x01, 0xc4, 0x9e, 0x7f, 0x8b, 0x55, 0x65, 0x9b, 0x5a, 0x29, 0x43, + 0x7d, 0xd3, 0xd1, 0x58, 0xc7, 0xd0, 0xd7, 0xb9, 0x6c, 0x9f, 0x20, 0x51, 0x49, + 0x7a, 0xcb, 0x80, 0xbb, 0x58, 0x77, 0x1f, 0xae, 0x06, 0xba, 0x86, 0x99, 0x33, + 0x83, 0xfc, 0x67, 0x73, 0xe7, 0x29, 0x6c, 0xa4, 0x30, 0x8c, 0x6a, 0x3a, 0x90, + 0xbb, 0x38, 0x38, 0xc4, 0x2a, 0xbf, 0x62, 0xdd, 0x2d, 0x84, 0xba, 0xbe, 0x33, + 0x86, 0xcf, 0x17, 0xe5, 0x75, 0x59, 0xb0, 0x36, 0x46, 0xf9, 0x64, 0xd9, 0x8a, + 0x2b, 0x6a, 0x0b, 0xe5, 0x87, 0x57, 0xff, 0x6e, 0x44, 0x6c, 0xff, 0x25, 0x51, + 0x07, 0x89, 0x71, 0x34, 0x4f, 0x2b, 0x12, 0xc4, 0x84, 0xdf, 0x0a, 0xcb, 0xc9, + 0xa2, 0x45, 0x48, 0x02, 0x2d, 0xf2, 0xe1, 0xe8, 0x88, 0xcb, 0x63, 0x42, 0x1c, + 0x31, 0x4a, 0x62, 0x2a, 0x9a, 0xef, 0x0b, 0xc0, 0x57, 0xcb, 0x11, 0x3c, 0x70, + 0x3a, 0xea, 0x39, 0x2e, 0x90, 0x7a, 0x26, 0x4f, 0x2f, 0xd9, 0xac, 0x3a, 0x9f, + 0x3a, 0x8a, 0xbb, 0xb1, 0xdc, 0x1b, 0xc4, 0x53, 0xab, 0xd5, 0x18, 0x1e, 0x54, + 0x57, 0xb8, 0xd3, 0x4e, 0xb7, 0xb1, 0x51, 0x3a, 0xb8, 0x1d, 0x3f, 0x0a, 0x3c, + 0x7f, 0x7f, 0xcf, 0x2f, 0xbb, 0x4e, 0x26, 0x32, 0x19, 0x93, 0xa5, 0x13, 0xad, + 0x3d, 0x7f, 0x4a, 0xfe, 0x6c, 0x1b, 0xbd, 0xc6, 0x57, 0x58, 0x50, 0x80, 0xbb, + 0x5a, 0x0f, 0x25, 0x97, 0x3d, 0x63, 0xeb, 0x20, 0xad, 0xa0, 0x16, 0x6b, 0xbd, + 0x8a, 0x39, 0xff, 0x93, 0x24, 0x6f, 0x27, 0x89, 0x73, 0x2a, 0xd0, 0x55, 0x87, + 0xf8, 0xdb, 0x7b, 0xc8, 0x7c, 0x24, 0x2c, 0xfd, 0x36, 0xce, 0x68, 0x5a, 0x4b, + 0x65, 0x69, 0x86, 0xc3, 0x9f, 0xd7, 0xfc, 0xb2, 0x3c, 0x91, 0x91, 0x3e, 0x46, + 0x11, 0x19, 0x1e, 0xdc, 0xc8, 0x8b, 0x78, 0xf1, 0x45, 0xea, 0x29, 0xd2, 0x71, + 0xb9, 0x40, 0xc6, 0x99, 0x41, 0xe4, 0xc3, 0xfd, 0x2d, 0x71, 0xf3, 0xb1, 0x90, + 0x69, 0x0e, 0xe1, 0x6f, 0x5d, 0x14, 0xac, 0x22, 0x24, 0xe6, 0xfc, 0x89, 0x59, + 0x76, 0x54, 0x52, 0x7d, 0xab, 0xe7, 0x2e, 0x75, 0xd2, 0xd2, 0xa1, 0x3a, 0x9f, + 0xba, 0xa6, 0x37, 0x8e, 0x8a, 0x26, 0x43, 0x21, 0x08, 0x7a, 0x19, 0x00, 0xef, + 0xe3, 0xca, 0xd1, 0x4a, 0x57, 0x96, 0x86, 0xaa, 0x36, 0x36, 0xbd, 0x37, 0x5b, + 0xd3, 0x13, 0x6b, 0xee, 0x0b, 0xda, 0xab, 0xcf, 0xac, 0x88, 0x1b, 0xc7, 0x01, + 0x81, 0x27, 0x21, 0xe6, 0xfb, 0x75, 0xaa, 0x07, 0x2d, 0x2d, 0x18, 0x7e, 0x62, + 0x25, 0x8d, 0x65, 0xa1, 0x92, 0x15, 0x7c, 0xdf, 0x2e, 0xc3, 0x21, 0x40, 0x7f, + 0x68, 0x2f, 0x5e, 0xec, 0x6a, 0x32, 0x97, 0xab, 0x20, 0xb7, 0x06, 0x1c, 0x62, + 0x24, 0x57, 0x16, 0xa4, 0x4f, 0x71, 0xfb, 0xfc, 0x34, 0xc7, 0x9b, 0x44, 0xe0, + 0x9e, 0x42, 0x12, 0xac, 0x26, 0x53, 0xf6, 0xc4, 0x03, 0x64, 0x3e, 0x1c, 0x5b, + 0x9a, 0xd1, 0x34, 0xd8, 0x9c, 0x68, 0x0b, 0x70, 0x72, 0x83, 0xaf, 0x54, 0x32, + 0x6f, 0xc4, 0xf8, 0x4d, 0x6a, 0x58, 0x29, 0xa0, 0xad, 0x48, 0x30, 0x80, 0x6c, + 0x05, 0x75, 0x84, 0x92, 0xcd, 0x6a, 0xc4, 0x6b, 0xa0, 0x1a, 0x2b, 0x37, 0x22, + 0xb5, 0xe4, 0xcd, 0xaf, 0xbb, 0x3f, 0x36, 0x78, 0x5f, 0x42, 0x4a, 0xf0, 0x44, + 0xda, 0xc5, 0xdb, 0x5f, 0x7d, 0xf8, 0x39, 0xeb, 0x63, 0xc0, 0xc1, 0x7d, 0x8b, + 0x0c, 0x79, 0xdb, 0x86, 0x30, 0x94, 0x20, 0x15, 0xbe, 0x13, 0xf7, 0x9a, 0xf6, + 0xf4, 0x3e, 0x5a, 0xb0, 0x77, 0x81, 0x14, 0x79, 0x8f, 0x44, 0x22, 0x58, 0xee, + 0xdc, 0x43, 0x6f, 0xcc, 0x38, 0x6b, 0x36, 0xb5, 0x7e, 0x19, 0x17, 0xd7, 0x20, + 0x17, 0x73, 0x66, 0xf4, 0x24, 0xb0, 0xa5, 0x4b, 0x0b, 0x60, 0xf4, 0xfb, 0x13, + 0x58, 0xc2, 0x0a, 0xa4, 0x1d, 0xc5, 0x02, 0xe1, 0xdd, 0x8a, 0x16, 0x33, 0xf3, + 0xd8, 0xe3, 0x27, 0x6b, 0x59, 0xe7, 0xd2, 0xc4, 0xe6, 0x24, 0xa6, 0xf5, 0x36, + 0x95, 0xbc, 0xaf, 0x24, 0x7e, 0x36, 0x48, 0x3f, 0x13, 0xb2, 0x04, 0x42, 0x22, + 0x37, 0xfc, 0x6a, 0xb3, 0xeb, 0xa0, 0x2f, 0xc4, 0x14, 0x2b, 0x42, 0x97, 0xeb, + 0xb5, 0x68, 0x3d, 0xb8, 0xd2, 0x43, 0x19, 0x70, 0x6a, 0xd2, 0x6a, 0xaf, 0xd8, + 0x1c, 0x53, 0xb7, 0x40, 0xf3, 0x45, 0x43, 0xa6, 0xb3, 0xe9, 0xf5, 0xbb, 0x7d, + 0x5c, 0x49, 0xe8, 0xc3, 0x7f, 0x61, 0x49, 0x21, 0x25, 0x4f, 0x32, 0x12, 0x39, + 0x4c, 0x79, 0x7d, 0x1c, 0xee, 0x78, 0x99, 0xb7, 0xb4, 0xb6, 0x5b, 0x59, 0xb7, + 0x34, 0x2f, 0x92, 0x53, 0x1c, 0x1d, 0x59, 0xe1, 0x79, 0x70, 0xb7, 0x31, 0x74, + 0x14, 0x43, 0x8c, 0xd8, 0x0b, 0xd0, 0xf9, 0xa6, 0x7c, 0x9b, 0x9e, 0x55, 0x2f, + 0x01, 0x3c, 0x11, 0x5a, 0x95, 0x4f, 0x35, 0xe0, 0x61, 0x6c, 0x68, 0xd4, 0x31, + 0x63, 0xd3, 0x34, 0xda, 0xc3, 0x82, 0x70, 0x33, 0xe5, 0xad, 0x84, 0x88, 0xbf, + 0xd9, 0xc4, 0xbb, 0xbe, 0x8f, 0x59, 0x35, 0xc6, 0xc5, 0xea, 0x04, 0xc3, 0xad, + 0x49, 0xc7, 0x47, 0xa9, 0xe7, 0x23, 0x1b, 0xcd, 0x7d, 0x16, 0x21, 0x5e, 0x6e, + 0x80, 0x73, 0x7d, 0x6b, 0x54, 0xfe, 0xc8, 0xb8, 0x84, 0x02, 0xf0, 0x47, 0x52, + 0x45, 0xe1, 0x74, 0xa7, 0x45, 0xb8, 0x31, 0xf8, 0xfe, 0x03, 0xa7, 0x6f, 0xb9, + 0xce, 0xca, 0x4d, 0x22, 0xb7, 0x83, 0xc3, 0x28, 0xc6, 0x91, 0x5c, 0x43, 0x40, + 0x50, 0x64, 0xae, 0x56, 0xbc, 0x89, 0xe6, 0x4d, 0x15, 0x78, 0xe4, 0xd3, 0xa3, + 0x4b, 0xb9, 0x55, 0x91, 0xea, 0xf1, 0xd3, 0xda, 0x02, 0xa4, 0x54, 0x9f, 0xa8, + 0x0d, 0xb0, 0xff, 0x7c, 0xb0, 0x39, 0x93, 0xb6, 0x8a, 0xe1, 0x5a, 0x30, 0xe8, + 0x79, 0x49, 0xaa, 0x08, 0x0e, 0x94, 0xab, 0xde, 0x68, 0x89, 0x8c, 0x33, 0x92, + 0xa2, 0x17, 0xd6, 0x49, 0x61, 0x6b, 0xbe, 0x73, 0x9b, 0x13, 0xd1, 0x4d, 0xf0, + 0x3f, 0xf2, 0x76, 0x71, 0x48, 0x9b, 0xe0, 0xb4, 0xbe, 0xba, 0xaf, 0xa7, 0xd1, + 0xe6, 0x39, 0xd5, 0xb3, 0xe9, 0x94, 0xff, 0xb6, 0xb7, 0xa2, 0x09, 0xf6, 0xad, + 0xfe, 0x8d, 0x1e, 0x5c, 0xcf, 0x01, 0x0c, 0x19, 0x16, 0x8a, 0xeb, 0x18, 0xaa, + 0x9d, 0x68, 0x7e, 0x24, 0xad, 0xc0, 0xb1, 0x13, 0x39, 0x07, 0xbd, 0x3a, 0xa0, + 0xe8, 0x22, 0x1e, 0xe0, 0x65, 0xa0, 0x69, 0xc7, 0x3c, 0xbc, 0xec, 0xe8, 0x2b, + 0x56, 0x9d, 0x65, 0x2c, 0xa3, 0x32, 0x9b, 0x8a, 0x7b, 0x99, 0x72, 0x10, 0x87, + 0x96, 0xb2, 0xcf, 0x4b, 0x3d, 0x10, 0xa9, 0xa7, 0xbb, 0x40, 0x3c, 0x65, 0xac, + 0xab, 0x43, 0xd1, 0x85, 0x36, 0xb1, 0x2b, 0x43, 0xbe, 0xfc, 0x0b, 0xe0, 0xa1, + 0xbd, 0x36, 0x97, 0x72, 0x33, 0x80, 0x38, 0xa9, 0xc0, 0x29, 0x5d, 0x3a, 0x78, + 0xb6, 0xf5, 0x5f, 0x30, 0xe0, 0x54, 0x3e, 0x9d, 0xee, 0x24, 0x0e, 0x50, 0x68, + 0x62, 0x9a, 0x85, 0xa2, 0x4c, 0x98, 0x36, 0x72, 0x95, 0xb1, 0xc2, 0x8b, 0x03, + 0xcb, 0xe3, 0x2a, 0x04, 0x53, 0xcf, 0xc6, 0xc3, 0x51, 0x25, 0x1c, 0x64, 0x28, + 0xc3, 0x76, 0x0f, 0x2b, 0xdc, 0x3a, 0x3a, 0x21, 0xc9, 0x92, 0xd0, 0xeb, 0xc8, + 0xcc, 0x8f, 0xa6, 0x30, 0x6d, 0x3e, 0x3a, 0x46, 0x21, 0x1c, 0xcc, 0x57, 0x0f, + 0xa9, 0xde, 0x86, 0x96, 0xe4, 0x4b, 0x2e, 0xbc, 0x13, 0xa1, 0xb8, 0x45, 0x57, + 0x17, 0xc9, 0x91, 0xa8, 0xeb, 0x18, 0x22, 0xff, 0x69, 0x1d, 0xc1, 0x04, 0x0d, + 0x2d, 0x39, 0xa0, 0x1e, 0xb4, 0x5e, 0xe8, 0xf7, 0xd0, 0x9b, 0x03, 0x8d, 0x83, + 0x83, 0xe1, 0x9b, 0xc3, 0x0e, 0x64, 0x03, 0x82, 0x8c, 0xdb, 0x65, 0x2a, 0x55, + 0x6b, 0x12, 0x04, 0x09, 0x31, 0x40, 0x2a, 0xa6, 0xac, 0x34, 0xfc, 0x19, 0xfd, + 0xc0, 0x6e, 0x2e, 0x77, 0x87, 0xf5, 0xb7, 0x7b, 0x04, 0x5f, 0xd0, 0x98, 0xc0, + 0x31, 0xbd, 0xbd, 0x46, 0x27, 0x76, 0x09, 0xd8, 0x42, 0xf4, 0x84, 0x24, 0xed, + 0xa3, 0x1e, 0x3c, 0xf2, 0xcd, 0xd6, 0x43, 0x85, 0xba, 0xd3, 0x11, 0x88, 0x58, + 0xd1, 0x42, 0xd9, 0x06, 0xea, 0xdb, 0x75, 0x90, 0xc9, 0x41, 0x36, 0xda, 0x6a, + 0x06, 0x35, 0x14, 0xd6, 0xa2, 0x5f, 0x7b, 0x37, 0xd7, 0x66, 0x4f, 0x9b, 0x97, + 0x09, 0x43, 0x3e, 0x6e, 0x70, 0x21, 0x18, 0xa4, 0xab, 0x9e, 0x7a, 0x7a, 0x3e, + 0x62, 0x59, 0x12, 0x99, 0x37, 0xd2, 0x9d, 0x0d, 0xb2, 0x60, 0x70, 0x52, 0x3e, + 0x8b, 0x06, 0x43, 0x13, 0x0a, 0xbe, 0xfe, 0x94, 0x3b, 0x40, 0x12, 0x98, 0xae, + 0x01, 0xa3, 0xab, 0x00, 0xab, 0xbc, 0x60, 0xd7, 0xdb, 0x93, 0x3c, 0x7f, 0x07, + 0xa8, 0xbf, 0x0f, 0x7c, 0xe1, 0x66, 0x0b, 0xcc, 0xb4, 0x5e, 0x04, 0x2b, 0x45, + 0x1b, 0x93, 0x50, 0x02, 0xce, 0xce, 0x27, 0xf3, 0x6a, 0xba, 0x56, 0x47, 0xac, + 0x28, 0xd8, 0x18, 0x6c, 0xdd, 0x1f, 0xb9, 0x5d, 0xc1, 0x35, 0xd4, 0x89, 0x92, + 0xf6, 0x8d, 0xa1, 0x2a, 0xd6, 0x1a, 0xc7, 0x56, 0x68, 0x0d, 0xd7, 0xf8, 0xd0, + 0x77, 0x4a, 0xbd, 0x6c, 0xfd, 0xa2, 0xf0, 0x32, 0xaf, 0x3b, 0xe1, 0x39, 0xa6, + 0x33, 0xd6, 0x73, 0x3c, 0x75, 0xd1, 0xab, 0xa8, 0x90, 0x18, 0xc8, 0x57, 0x2b, + 0x99, 0xcd, 0x30, 0xc5, 0x37, 0x06, 0x79, 0x41, 0xdf, 0x1c, 0x4b, 0xc1, 0xfd, + 0x57, 0x0f, 0x7b, 0x4d, 0xdc, 0x97, 0x51, 0x86, 0x23, 0xe3, 0xae, 0x4a, 0x87, + 0xbd, 0xb9, 0x66, 0xc9, 0x4d, 0x86, 0x1e, 0x80, 0xde, 0x88, 0xc2, 0x92, 0xae, + 0xe9, 0x38, 0x71, 0x94, 0xe2, 0x56, 0xc6, 0x70, 0x07, 0x52, 0x30, 0x1c, 0x73, + 0xfc, 0x95, 0x65, 0xa4, 0x04, 0x80, 0xd8, 0x12, 0x6e, 0x9d, 0x08, 0x58, 0x79, + 0xe2, 0x4b, 0x16, 0xe9, 0xc4, 0x85, 0xd8, 0xf0, 0xd6, 0x18, 0xca, 0x0d, 0xd1, + 0x21, 0xb5, 0x1a, 0x7c, 0xab, 0x23, 0x0c, 0x5b, 0x45, 0x67, 0x2b, 0xdb, 0x8e, + 0xa3, 0xa0, 0x40, 0xf7, 0xaa, 0xa0, 0x98, 0xba, 0x26, 0x02, 0x5d, 0x2e, 0xab, + 0x79, 0x48, 0x69, 0x3d, 0xd5, 0xf6, 0xd3, 0x09, 0x65, 0x01, 0xe9, 0xe0, 0x71, + 0x25, 0xd7, 0xeb, 0x29, 0x3b, 0x3a, 0xba, 0xd5, 0x7f, 0xd5, 0xf0, 0x11, 0x64, + 0x70, 0x2d, 0xae, 0x64, 0xbd, 0xba, 0x8c, 0x92, 0x4f, 0xb0, 0x79, 0x96, 0x79, + 0xd7, 0x7f, 0x98, 0xd3, 0x03, 0x91, 0x9f, 0xb4, 0xa7, 0xff, 0x26, 0xa9, 0x6f, + 0x13, 0x7a, 0x5e, 0x5c, 0xb9, 0x5b, 0xc4, 0xc6, 0xff, 0x99, 0x93, 0x52, 0x6b, + 0xda, 0x15, 0x03, 0x16, 0x8a, 0xb4, 0x8c, 0xbd, 0x45, 0x15, 0x39, 0x27, 0xd3, + 0x04, 0x30, 0x42, 0x3d, 0xbd, 0xf0, 0x66, 0x05, 0xf5, 0xb5, 0x4b, 0x80, 0x8f, + 0xeb, 0x22, 0xb2, 0x08, 0xb0, 0x64, 0x58, 0x18, 0x47, 0xb2, 0xf6, 0x4c, 0xa6, + 0x48, 0x37, 0x00, 0x72, 0x16, 0xde, 0x6e, 0xca, 0xff, 0xeb, 0x4b, 0x69, 0xe6, + 0x33, 0x47, 0xf8, 0x4a, 0xbc, 0xad, 0x8f, 0x2e, 0x75, 0x7d, 0x58, 0x61, 0xce, + 0x77, 0xee, 0x46, 0x51, 0x3d, 0xa7, 0x41, 0x68, 0x37, 0xdc, 0xb2, 0x3d, 0x33, + 0xea, 0x72, 0xaf, 0x23, 0xd0, 0xad, 0x8c, 0x93, 0x07, 0xd0, 0xb5, 0x85, 0x8d, + 0xa9, 0x5b, 0x77, 0xff, 0xf9, 0x02, 0x7b, 0x88, 0x59, 0xe1, 0x1d, 0xcb, 0xd5, + 0x98, 0x35, 0x0e, 0xee, 0x50, 0x93, 0x94, 0x81, 0x70, 0x8e, 0xa7, 0x08, 0xeb, + 0x9f, 0x66, 0x43, 0x88, 0xb9, 0xc6, 0x4d, 0x6a, 0xf0, 0xf9, 0x66, 0x90, 0x34, + 0x24, 0x00, 0x34, 0x8e, 0x92, 0x9e, 0x07, 0x46, 0x02, 0x53, 0xf3, 0x83, 0x90, + 0xf8, 0x7b, 0xd6, 0xc0, 0x53, 0x08, 0xc3, 0xbd, 0xe2, 0x52, 0x28, 0xe0, 0xfa, + 0x08, 0x80, 0xb0, 0x8e, 0xf3, 0x4a, 0x5a, 0x9c, 0xc0, 0xea, 0x0a, 0x67, 0xca, + 0x65, 0xb6, 0xff, 0xd0, 0x05, 0x57, 0x29, 0x09, 0xf1, 0xc4, 0x2d, 0xd7, 0x45, + 0xee, 0xee, 0x9d, 0xd6, 0xb4, 0x43, 0x9c, 0x9f, 0x3f, 0x98, 0xa1, 0x18, 0xfe, + 0x16, 0x69, 0x8e, 0x9c, 0xef, 0xf5, 0x58, 0xf1, 0x60, 0x66, 0x97, 0x5f, 0xe3, + 0x95, 0x83, 0xe9, 0xb5, 0x85, 0x3b, 0x13, 0x11, 0x39, 0x15, 0x80, 0x01, 0x9f, + 0xe5, 0x5d, 0x59, 0xd1, 0xc8, 0x28, 0xd3, 0xfe, 0xb6, 0xa3, 0xb9, 0xce, 0x92, + 0xd0, 0x89, 0xae, 0x4b, 0x40, 0x8e, 0x23, 0xd6, 0xa4, 0x37, 0xd4, 0x98, 0x9b, + 0x51, 0x9b, 0x7a, 0x9e, 0xb0, 0x8a, 0xe6, 0xd4, 0x48, 0xa7, 0xa1, 0x6e, 0x8a, + 0xed, 0x26, 0xa2, 0xec, 0xd0, 0xca, 0xd8, 0x08, 0x44, 0xfd, 0x06, 0x50, 0xd8, + 0xc4, 0xe4, 0xd2, 0xaf, 0x90, 0x65, 0x67, 0x48, 0xd8, 0x09, 0x9a, 0x0c, 0x75, + 0x6f, 0xc1, 0x07, 0x87, 0x7d, 0x45, 0x84, 0x40, 0xb9, 0x05, 0x00, 0xce, 0xd4, + 0x92, 0x99, 0xde, 0xc8, 0x4c, 0xce, 0xd4, 0xfd, 0xf0, 0xd8, 0x94, 0x83, 0x9a, + 0x6c, 0xfd, 0x5e, 0x4b, 0x7c, 0xb8, 0x35, 0xb8, 0x33, 0x08, 0x96, 0x4e, 0x3c, + 0x46, 0x87, 0x3f, 0x16, 0x33, 0x31, 0x7b, 0x91, 0xd2, 0x92, 0x36, 0xea, 0x90, + 0xe3, 0x65, 0xd1, 0x62, 0xcc, 0x05, 0x1c, 0x84, 0x6d, 0x24, 0x21, 0x76, 0xda, + 0xf6, 0xd2, 0x86, 0x18, 0xae, 0x31, 0xfb, 0xaa, 0xe9, 0x99, 0xa9, 0x3f, 0x17, + 0x5c, 0x69, 0x38, 0xe6, 0x31, 0xa0, 0x81, 0xf2, 0xc1, 0xf3, 0xfd, 0x78, 0x25, + 0x49, 0xd3, 0xf3, 0x24, 0x4f, 0xe0, 0x04, 0x0e, 0x25, 0x85, 0x72, 0x0d, 0x93, + 0x5f, 0x23, 0xc1, 0x0f, 0x2e, 0x01, 0xdc, 0xa8, 0xba, 0xed, 0xfd, 0xaa, 0x55, + 0xd2, 0x7a, 0x22, 0xeb, 0x52, 0x5d, 0xc6, 0xeb, 0xba, 0x06, 0xca, 0x2e, 0xa3, + 0xba, 0xfb, 0x95, 0x8c, 0x01, 0xd5, 0x35, 0x88, 0x06, 0xc2, 0xbc, 0x32, 0x62, + 0x2b, 0xc9, 0xf0, 0xec, 0x47, 0x9d, 0x99, 0xc1, 0xa3, 0xb1, 0x58, 0xb5, 0x14, + 0xd1, 0x62, 0x1d, 0x6a, 0x21, 0x8d, 0x2e, 0xcf, 0x81, 0x04, 0xb3, 0x14, 0x88, + 0x58, 0x5e, 0x41, 0x13, 0x28, 0x61, 0xb4, 0xbd, 0x4f, 0x28, 0xb3, 0xe2, 0xf4, + 0xb7, 0x62, 0x49, 0x2d, 0xd5, 0xf9, 0x1e, 0xd8, 0x82, 0x7b, 0x49, 0xd2, 0xde, + 0x8c, 0x09, 0x08, 0x43, 0x73, 0x0d, 0x24, 0x08, 0xa2, 0xa3, 0x04, 0xaa, 0x1e, + 0x2e, 0x13, 0x70, 0xa6, 0xbf, 0x6c, 0x2b, 0xc7, 0x3f, 0xf0, 0x0d, 0x89, 0x3b, + 0xc1, 0x28, 0xad, 0xdb, 0x76, 0xd1, 0xe1, 0xe5, 0x26, 0x84, 0x1e, 0xc0, 0x98, + 0xbc, 0x2f, 0x1f, 0xdb, 0x1b, 0x21, 0xff, 0xab, 0x41, 0xf9, 0x01, 0x50, 0xbf, + 0xe1, 0x9e, 0x39, 0x03, 0xfc, 0xee, 0xf5, 0x92, 0x90, 0x9f, 0x09, 0x80, 0xd6, + 0x89, 0xde, 0x7f, 0x8e, 0x6a, 0x5c, 0x62, 0xa7, 0x77, 0xd1, 0x75, 0x00, 0x2a, + 0x13, 0x7d, 0xe8, 0x5b, 0x88, 0x88, 0x92, 0x91, 0x98, 0x11, 0x7a, 0xa5, 0xd6, + 0x19, 0x5b, 0x0f, 0x68, 0xbb, 0xd6, 0x7c, 0x3c, 0x28, 0x63, 0x22, 0xc1, 0xf1, + 0xe6, 0x35, 0x58, 0x3c, 0x23, 0x9b, 0x61, 0x95, 0x49, 0x4d, 0x7f, 0xd4, 0x5f, + 0x7c, 0x55, 0xe3, 0x4a, 0x6c, 0xb7, 0x19, 0x4a, 0x3d, 0x63, 0x76, 0xe8, 0xa3, + 0xcd, 0xdc, 0xe4, 0xc1, 0xdf, 0x40, 0x18, 0x66, 0x90, 0x26, 0x6b, 0x16, 0xbc, + 0xd4, 0xc9, 0xfa, 0x68, 0xaf, 0x6e, 0x53, 0x65, 0xe9, 0x4e, 0xcb, 0xe7, 0x2b, + 0x00, 0x73, 0x67, 0x13, 0x71, 0xc6, 0xe2, 0xc6, 0x88, 0xad, 0xea, 0xd9, 0x9b, + 0x49, 0x4d, 0x02, 0x2f, 0x69, 0x29, 0xbd, 0xa6, 0x58, 0x2b, 0xdd, 0x2d, 0xb8, + 0x74, 0x17, 0xfe, 0x35, 0x23, 0x9e, 0x2b, 0x95, 0x52, 0x97, 0xe6, 0x9f, 0x00, + 0xfd, 0x29, 0x87, 0xf2, 0xda, 0x2b, 0x94, 0xb9, 0x95, 0xfe, 0xcb, 0xe6, 0x22, + 0xa7, 0x35, 0xef, 0x7f, 0x12, 0x07, 0xf6, 0x71, 0x62, 0x94, 0x89, 0x20, 0x2b, + 0x01, 0xaa, 0xc4, 0x92, 0xe1, 0x9b, 0xab, 0xc2, 0xb3, 0xc6, 0x8e, 0xc4, 0x8a, + 0xc4, 0xa9, 0xc8, 0x9e, 0xc6, 0xa8, 0xe1, 0x9b, 0x8a, 0xc4, 0xa9, 0xc7, 0x87, + 0xe2, 0xb1, 0xbb, 0xe2, 0xb1, 0xbc, 0xc4, 0xab, 0xe1, 0x9b, 0x8e, 0xe1, 0x9b, + 0x9d, 0xe1, 0x9a, 0xbf, 0xc8, 0xa3, 0xe1, 0x9b, 0xa4, 0xc7, 0xbf, 0xc3, 0x80, + 0x28, 0xe1, 0x9a, 0xb5, 0x6d, 0xc7, 0xbf, 0xc8, 0xa6, 0xe1, 0x9b, 0xb0, 0xc8, + 0x95, 0xc8, 0xb2, 0xc4, 0xad, 0xc4, 0xa7, 0xc3, 0x88, 0xc7, 0xb0, 0xc2, 0xb6, + 0xc6, 0xac, 0xc3, 0xac, 0x2e, 0xc7, 0x8d, 0xe1, 0x9a, 0xb9, 0xc3, 0x99, 0xc9, + 0x87, 0xe1, 0x9a, 0xa8, 0xc4, 0xb0, 0x4c, 0xc8, 0x9a, 0xc6, 0x9c, 0xc3, 0xa9, + 0x5d, 0xc5, 0x92, 0xc2, 0xb0, 0xc7, 0xaf, 0xc3, 0xa7, 0xc3, 0xb7, 0xc6, 0xb8, + 0xc7, 0xbc, 0xe1, 0x9a, 0xaf, 0xc3, 0xb1, 0xc5, 0x83, 0xc5, 0x83, 0xc6, 0xb8, + 0xc3, 0xba, 0xc5, 0xa1, 0xc3, 0x9c, 0xc8, 0xac, 0xc8, 0x93, 0xc2, 0xae, 0xc3, + 0xa7, 0x5d, 0xc5, 0x99, 0xc6, 0x88, 0xc4, 0x94, 0xc3, 0xbe, 0x37, 0xc6, 0xa8, + 0xc7, 0x8e, 0xe1, 0x9a, 0xb4, 0xe2, 0xb1, 0xbe, 0xc3, 0x92, 0xc3, 0xb9, 0xc3, + 0x88, 0xc3, 0x89, 0x03, 0xdd, 0x2f, 0xb4, 0xb8, 0xaf, 0xc4, 0x71, 0x25, 0xb2, + 0x46, 0x15, 0x9d, 0xd1, 0xed, 0xf5, 0xca, 0x9f, 0xee, 0x38, 0xc9, 0xbd, 0x89, + 0x46, 0x66, 0x3a, 0x10, 0x7c, 0x00, 0x84, 0xa3, 0x84, 0x7b, 0x27, 0xd2, 0x27, + 0x54, 0xab, 0x0e, 0x39, 0x6b, 0xba, 0xeb, 0xaf, 0xe8, 0x59, 0xc1, 0x31, 0xeb, + 0xc9, 0x3f, 0xf2, 0x95, 0x3b, 0x28, 0xf7, 0x22, 0x6b, 0x7a, 0x59, 0x13, 0xa4, + 0x67, 0xc9, 0x10, 0x4e, 0x17, 0xa5, 0x8a, 0xbf, 0x54, 0x29, 0x64, 0xed, 0x6f, + 0xb8, 0x7c, 0x77, 0xcf, 0x2e, 0x10, 0xe5, 0x31, 0x27, 0x74, 0x81, 0x2a, 0x30, + 0xdd, 0x5f, 0x5f, 0xe7, 0x4e, 0xff, 0x61, 0xe0, 0xcb, 0xab, 0x3c, 0xec, 0x75, + 0xd0, 0xae, 0xf9, 0x50, 0x83, 0x18, 0x94, 0x52, 0xdd, 0x3d, 0x9e, 0xdf, 0x44, + 0x87, 0x3c, 0x73, 0x4c, 0x8b, 0x24, 0xf2, 0x12, 0x96, 0xe4, 0xe9, 0xef, 0x11, + 0x7d, 0x7f, 0xb9, 0x77, 0xe3, 0xb0, 0xe6, 0x40, 0x6e, 0x63, 0x08, 0x59, 0x06, + 0x33, 0x1a, 0x93, 0x03, 0x3d, 0x1c, 0xb8, 0x36, 0x8b, 0xbf, 0x02, 0x69, 0x74, + 0xda, 0x89, 0x0a, 0x71, 0xc8, 0xf2, 0x5c, 0xd0, 0x89, 0x70, 0x5e, 0x43, 0x8d, + 0xb9, 0xc9, 0x81, 0xb5, 0x7a, 0x31, 0xca, 0xba, 0x64, 0xd9, 0x03, 0x86, 0xdf, + 0x3b, 0xb4, 0x05, 0x52, 0x31, 0xb3, 0x2d, 0x61, 0x32, 0xe1, 0x72, 0x99, 0x4a, + 0xd5, 0x28, 0x80, 0x34, 0xe1, 0x6d, 0x15, 0x95, 0x3b, 0x28, 0xf7, 0x22, 0x6b, + 0x7a, 0x59, 0x13, 0xa4, 0x67, 0xc9, 0x10, 0x4e, 0x17, 0xa5, 0x8a, 0xbf, 0x54, + 0x29, 0x64, 0xed, 0x6f, 0xb8, 0x7c, 0x77, 0xcf, 0x2e, 0x10, 0xe5, 0x31, 0x27, + 0xc3, 0xc2, 0xdd, 0x63, 0x12, 0x5e, 0x0f, 0xa5, 0x30, 0x86, 0x1a, 0x71, 0x0d, + 0xf8, 0xe4, 0x81, 0xf2, 0x71, 0x29, 0x20, 0xf8, 0x78, 0x7e, 0x0a, 0xed, 0xfe, + 0x61, 0x8a, 0xff, 0x50, 0xa3, 0x35, 0x62, 0x13, 0x88, 0x4d, 0x62, 0x62, 0xc1, + 0x1d, 0xeb, 0xf2, 0xba, 0x7e, 0x8a, 0xd6, 0x69, 0x2c, 0xb1, 0x70, 0x78, 0x33, + 0x14, 0x18, 0xda, 0x4b, 0xe0, 0x64, 0xff, 0x52, 0x70, 0x07, 0x39, 0x34, 0xf9, + 0x22, 0x1f, 0xd1, 0x8b, 0xa0, 0xac, 0x77, 0xc4, 0x03, 0x2b, 0x9c, 0xec, 0xc9, + 0x08, 0x14, 0xf8, 0x74, 0x8e, 0x74, 0xd3, 0x6a, 0x72, 0x2d, 0xf2, 0x3f, 0xf2, + 0x67, 0x19, 0x1b, 0x0f, 0xd2, 0xd7, 0x8c, 0x44, 0x3c, 0xe8, 0x16, 0x21, 0x14, + 0x1e, 0x1d, 0x34, 0x7c, 0x57, 0x1c, 0xe0, 0xb5, 0xd7, 0x21, 0x77, 0x95, 0x3b, + 0x28, 0xf7, 0x22, 0x6b, 0x7a, 0x59, 0x13, 0xa4, 0x67, 0xc9, 0x10, 0x4e, 0x17, + 0xa5, 0x8a, 0xbf, 0x54, 0x29, 0x64, 0xed, 0x6f, 0xb8, 0x7c, 0x77, 0xcf, 0x2e, + 0x10, 0xe5, 0x31, 0x27, 0xbd, 0xc5, 0x5e, 0x79, 0x9c, 0x01, 0xad, 0x86, 0x41, + 0x90, 0x4e, 0x3b, 0x1d, 0xd2, 0x9e, 0x1a, 0x96, 0x4c, 0x73, 0x7d, 0x3c, 0x15, + 0x5a, 0xfb, 0x30, 0x7b, 0x74, 0x8e, 0x41, 0x12, 0xb4, 0x0b, 0x77, 0xd5, 0xed, + 0x57, 0x00, 0xe6, 0x00, 0x2b, 0x18, 0xb0, 0xfe, 0xd2, 0xcf, 0xfd, 0xf6, 0x1f, + 0xd9, 0x93, 0x4b, 0x60, 0x73, 0x2f, 0x4d, 0x37, 0x81, 0x0a, 0x91, 0xac, 0xef, + 0x1e, 0x03, 0x8b, 0x01, 0x01, 0xca, 0xdd, 0xf0, 0xd9, 0x1b, 0xd3, 0xd7, 0x6c, + 0x19, 0x80, 0x1d, 0x81, 0x6e, 0xe0, 0x38, 0x97, 0xd0, 0x39, 0x34, 0x23, 0x96, + 0x0b, 0xe8, 0x4b, 0x5f, 0x68, 0x7f, 0x10, 0xda, 0x16, 0x20, 0x5f, 0x53, 0xd8, + 0xda, 0x60, 0xf1, 0x11, 0x92, 0x33, 0x4a, 0xae, 0xb8, 0x94, 0xa9, 0x0e, 0x0e, + 0x2e, 0xc5, 0x61, 0xd1, 0x1c, 0x75, 0x7d, 0x3c, 0x31, 0xad, 0x6d, 0xe1, 0xa9, + 0xbb, 0x2d, 0xc9, 0xd3, 0x51, 0x65, 0x47, 0xd2, 0x4b, 0xe6, 0x45, 0x6b, 0xc8, + 0x95, 0x75, 0x5c, 0xd7, 0x3d, 0x50, 0xd4, 0xdc, 0xa3, 0x16, 0x01, 0xa4, 0x6e, + 0xd2, 0xdf, 0xf3, 0x09, 0xbb, 0x7a, 0x37, 0xfa, 0xeb, + ], + txid: [ + 0x09, 0xbb, 0x1e, 0x43, 0x83, 0x0d, 0x69, 0xa2, 0xa2, 0xad, 0x87, 0x08, 0x3c, + 0xcb, 0x1a, 0xd6, 0x99, 0xab, 0x35, 0x06, 0xf1, 0x0d, 0xed, 0xa3, 0x11, 0xe2, + 0x00, 0xbd, 0xe2, 0x3d, 0xcf, 0x70, + ], + auth_digest: [ + 0x95, 0xf7, 0xc2, 0x3c, 0x3d, 0x3e, 0x5c, 0x76, 0x80, 0xc5, 0x75, 0xba, 0xc9, + 0xe9, 0xf6, 0xf5, 0xfb, 0xeb, 0x6e, 0x79, 0xc7, 0x45, 0x08, 0xae, 0xbe, 0xb2, + 0x32, 0xda, 0xa6, 0x48, 0x2e, 0xb2, + ], + amounts: vec![579546436167526, 887877936944436], + script_pubkeys: vec![ + vec![0x65, 0x51, 0x65, 0x63, 0x51, 0x63, 0x65, 0xac, 0x53], + vec![0x65, 0x6a, 0x6a, 0x6a], + ], + transparent_input: Some(0), + sighash_shielded: [ + 0xea, 0x5d, 0x93, 0xea, 0x37, 0x06, 0xef, 0x8b, 0xf9, 0x40, 0x87, 0x3b, 0x98, + 0x29, 0x34, 0x74, 0x5a, 0xdc, 0x32, 0x47, 0xad, 0x2b, 0x00, 0x0b, 0x23, 0xb7, + 0xc5, 0xcd, 0x36, 0xd5, 0x57, 0x43, + ], + sighash_all: Some([ + 0x8a, 0x5f, 0xcb, 0x0a, 0xa1, 0x91, 0x0d, 0x49, 0xda, 0x3b, 0x58, 0x9e, 0xb1, + 0x8f, 0x1f, 0x34, 0x1d, 0x68, 0x46, 0xe0, 0x24, 0x64, 0xdb, 0x17, 0xa4, 0x17, + 0x02, 0xb8, 0x75, 0x45, 0xc7, 0x9e, + ]), + sighash_none: Some([ + 0xf9, 0x9f, 0x21, 0xfc, 0xf4, 0x46, 0xad, 0x9b, 0x32, 0x25, 0x19, 0x82, 0xf2, + 0x68, 0xab, 0x73, 0xc8, 0xc0, 0x97, 0x43, 0x8b, 0x2c, 0xbb, 0x01, 0x92, 0x46, + 0x56, 0x9c, 0xa0, 0xcf, 0x59, 0xd6, + ]), + sighash_single: Some([ + 0x83, 0xcf, 0x4e, 0xa5, 0x65, 0x14, 0xd2, 0x83, 0x51, 0xa6, 0x67, 0x06, 0xaa, + 0xe7, 0x6a, 0xb8, 0xc4, 0x5d, 0x6e, 0x09, 0x2e, 0x88, 0xdf, 0x3f, 0x85, 0x42, + 0x0d, 0x58, 0xfb, 0x44, 0x97, 0x9b, + ]), + sighash_all_anyone: Some([ + 0xa1, 0x31, 0x7a, 0x3a, 0xc8, 0x5d, 0xa5, 0x45, 0x63, 0x52, 0xf9, 0xef, 0xa7, + 0x94, 0x32, 0x8b, 0x4b, 0x48, 0x5f, 0x5b, 0xbd, 0x34, 0xf0, 0x17, 0xde, 0xc6, + 0xb4, 0x4d, 0x3a, 0x6f, 0xe7, 0xbf, + ]), + sighash_none_anyone: Some([ + 0xc0, 0xba, 0x71, 0x5f, 0x98, 0x3a, 0xff, 0x1c, 0xde, 0x53, 0x70, 0xbf, 0x89, + 0x0f, 0x4f, 0x7a, 0x20, 0x67, 0xa3, 0x9f, 0xe3, 0x82, 0x0f, 0x43, 0xe4, 0x80, + 0x38, 0x08, 0xb8, 0x48, 0xae, 0x2e, + ]), + sighash_single_anyone: Some([ + 0xf9, 0x69, 0x1f, 0xba, 0x67, 0xe3, 0x31, 0x48, 0xd2, 0x01, 0x56, 0xc7, 0xc4, + 0x5d, 0xda, 0x7a, 0xdd, 0xee, 0xa9, 0xbb, 0x7c, 0x1b, 0x64, 0xd1, 0xcf, 0x4d, + 0xf0, 0x39, 0xc4, 0x96, 0xc9, 0x2d, + ]), + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0xf5, + 0x7f, 0x1d, 0xe3, 0x76, 0xb5, 0x18, 0x0e, 0x00, 0x02, 0x3f, 0x20, 0xe2, 0x4c, + 0xed, 0xdb, 0x03, 0x00, 0x03, 0x00, 0x00, 0x6a, 0x71, 0x6e, 0x8a, 0x7c, 0xd6, + 0x0a, 0x04, 0x00, 0x04, 0x00, 0x00, 0x53, 0x52, 0x00, 0x00, 0x00, 0x04, 0x0e, + 0xc3, 0x9a, 0xc8, 0xbb, 0xc9, 0x8b, 0xc5, 0xb1, 0xc3, 0xbd, 0xc3, 0xb0, 0xc5, + 0x90, 0x01, 0x20, 0x74, 0x0d, 0xe5, 0x97, 0x16, 0x42, 0xae, 0xa8, 0x2e, 0x70, + 0xd5, 0x93, 0xc2, 0xda, 0x81, 0xaf, 0xa6, 0x20, 0x9d, 0x1f, 0x81, 0x70, 0xf7, + 0x4b, 0x23, 0xeb, 0x4d, 0x0e, 0xc2, 0x6a, 0xd6, 0xbc, 0x9b, 0x13, 0xf3, 0xdc, + 0xde, 0xe5, 0x5d, 0x4b, 0xc2, 0xbc, 0xdd, 0xe1, 0xfd, 0xda, 0x5b, 0x47, 0x4d, + 0x5b, 0xf0, 0x21, 0x42, 0x05, 0xcb, 0x97, 0xd1, 0x2e, 0xdc, 0x58, 0x6e, 0x74, + 0xce, 0x17, 0xe9, 0x4e, 0xb6, 0xfa, 0x7c, 0xda, 0xe4, 0x22, 0xea, 0xb3, 0xd9, + 0x52, 0x5c, 0x0f, 0xf2, 0x25, 0xc6, 0x2d, 0x13, 0xf8, 0x40, 0xbd, 0x82, 0xac, + 0xa0, 0x1c, 0x83, 0x1c, 0x98, 0x3f, 0x19, 0x85, 0xee, 0x0a, 0xda, 0xe8, 0xdb, + 0x84, 0x47, 0xc0, 0xe5, 0x1c, 0x09, 0xdf, 0xe3, 0xde, 0xe3, 0x88, 0x0a, 0x17, + 0x13, 0xce, 0xb7, 0x45, 0xab, 0xfd, 0xd9, 0xf1, 0xc7, 0xea, 0xd7, 0x63, 0x08, + 0xcd, 0xee, 0xa2, 0x1c, 0x8b, 0x09, 0x57, 0x02, 0x7c, 0x5d, 0x00, 0xe5, 0x0a, + 0x43, 0x88, 0xc7, 0xaf, 0x2b, 0xd6, 0x01, 0xcc, 0xc4, 0x9c, 0xc5, 0x8f, 0xc7, + 0x90, 0x3d, 0xc4, 0x8d, 0xc4, 0xa7, 0xc7, 0x9b, 0xe1, 0x9a, 0xb6, 0x28, 0xc5, + 0x8a, 0xc6, 0xb2, 0xc3, 0xbc, 0x3e, 0xc5, 0xb3, 0x6e, 0xc6, 0xbd, 0x2b, 0xc2, + 0xb4, 0xc7, 0xb8, 0xc6, 0xaa, 0xc7, 0xb6, 0xc2, 0xa8, 0xc7, 0x97, 0xe2, 0xb1, + 0xa3, 0xe1, 0x9b, 0x88, 0xc5, 0xb8, 0xc5, 0x97, 0x67, 0xc8, 0x9d, 0xc7, 0xbf, + 0xc5, 0x8d, 0xe1, 0x9b, 0x85, 0xc6, 0x8e, 0xe1, 0x9a, 0xb8, 0x21, 0x51, 0xc4, + 0x86, 0xe1, 0x9b, 0xb0, 0xe1, 0x9b, 0xb0, 0xc8, 0xb2, 0xe1, 0x9b, 0xaf, 0xce, + 0x84, 0xc7, 0x8c, 0xc6, 0x86, 0xc5, 0xa7, 0xc7, 0x92, 0xc6, 0xad, 0xc8, 0xb0, + 0xc3, 0x91, 0xe2, 0xb1, 0xb5, 0xc8, 0x80, 0x6b, 0xc3, 0xb6, 0xc5, 0xb6, 0xc5, + 0xad, 0xc4, 0xb7, 0xc2, 0xaa, 0xc7, 0x9c, 0xc8, 0xa9, 0xe2, 0xb1, 0xa3, 0x7d, + 0xc7, 0xb1, 0x45, 0x33, 0xc7, 0xb2, 0x26, 0xe1, 0x9b, 0xa2, 0xe1, 0x9b, 0x84, + 0xe1, 0x9b, 0x92, 0xc7, 0x89, 0xc3, 0x87, 0xe1, 0x9a, 0xae, 0xcd, 0xb3, 0xc4, + 0xa8, 0xc2, 0xbe, 0xe1, 0x9a, 0xa0, 0xc8, 0x89, 0xc4, 0x95, 0xe2, 0xb1, 0xa7, + 0xc4, 0xae, 0xc4, 0xbd, 0xc3, 0x8c, 0xe1, 0x9a, 0xa1, 0x7e, 0xe1, 0x9b, 0xad, + 0xc8, 0xba, 0xc6, 0x98, 0xc9, 0x8f, 0xc5, 0xa5, 0xc4, 0xa4, 0xc9, 0x87, 0xc4, + 0x87, 0xe1, 0x9b, 0x8b, 0xc3, 0x97, 0xc3, 0xbd, 0xc3, 0xb5, 0xc6, 0xb8, 0xc6, + 0x8f, 0xc5, 0xaa, 0x5a, 0x02, 0x66, 0xb8, 0x72, 0x45, 0xf7, 0xb4, 0x2d, 0x6e, + 0x4b, 0x79, 0x6b, 0x64, 0xc9, 0x38, 0x51, 0x76, 0x5d, 0x42, 0x6c, 0xb8, 0x18, + 0x76, 0x63, 0xbc, 0x35, 0xdf, 0x3c, 0x04, 0xde, 0x21, 0xe6, 0x6c, 0x57, 0x9d, + 0xb6, 0x24, 0xea, 0x3a, 0x9b, 0x67, 0x08, 0x00, 0xbc, 0x87, 0xdf, 0x2c, 0x6c, + 0x86, 0xe6, 0x1c, 0xd1, 0x0d, 0xc4, 0x65, 0xda, 0x6f, 0x1c, 0x16, 0xb0, 0x11, + 0xdb, 0xe1, 0x15, 0x5e, 0xd0, 0x89, 0x11, 0xf3, 0x28, 0x76, 0x6c, 0xd4, 0x7f, + 0x21, 0x04, 0x00, 0xbc, 0x54, 0xaa, 0x5b, 0x98, 0xcd, 0x38, 0xb9, 0xbf, 0x21, + 0xc9, 0xa7, 0x8c, 0x59, 0x03, 0x8a, 0x98, 0xab, 0x64, 0xfd, 0x67, 0x10, 0x77, + 0xd4, 0x72, 0xc2, 0x09, 0xdd, 0x72, 0x9b, 0xd7, 0xf8, 0x48, 0x09, 0x45, 0xfb, + 0xa7, 0x52, 0x09, 0x8a, 0x94, 0xcc, 0xb2, 0x4c, 0xf3, 0xbc, 0x09, 0x2d, 0x42, + 0x36, 0x46, 0x11, 0xa2, 0x93, 0xaf, 0xf3, 0xc5, 0x79, 0x37, 0x2c, 0x12, 0xe1, + 0x50, 0x90, 0xaa, 0x27, 0x23, 0x20, 0x57, 0xf2, 0xed, 0xfa, 0x0e, 0x5c, 0x26, + 0xaa, 0x7b, 0x0a, 0x12, 0xdf, 0x89, 0x2f, 0x15, 0x01, 0xbe, 0x5f, 0x29, 0xaf, + 0x14, 0x74, 0x20, 0x39, 0x79, 0xa5, 0x75, 0xab, 0x9e, 0x0f, 0x5a, 0xf4, 0xb3, + 0x56, 0x39, 0xc1, 0x72, 0x92, 0x0b, 0x30, 0xf6, 0xdb, 0x01, 0x97, 0xed, 0x0b, + 0xd7, 0x85, 0x0c, 0xc2, 0xa0, 0x87, 0x2b, 0xf0, 0x0d, 0xc4, 0x65, 0xda, 0x6f, + 0x1c, 0x16, 0xb0, 0x11, 0xdb, 0xe1, 0x15, 0x5e, 0xd0, 0x89, 0x11, 0xf3, 0x28, + 0x76, 0x6c, 0xd4, 0x7f, 0x21, 0x04, 0x00, 0xbc, 0x54, 0xaa, 0x5b, 0x98, 0xcd, + 0x38, 0x0b, 0x7b, 0xc0, 0xac, 0x26, 0x4e, 0x2f, 0x97, 0x6a, 0xd3, 0x97, 0xf2, + 0x7f, 0x48, 0x37, 0x8f, 0x8a, 0x4e, 0xd9, 0x02, 0xc6, 0x6e, 0x49, 0x18, 0xfa, + 0xee, 0x8d, 0xc0, 0x06, 0x72, 0x46, 0x16, 0x0d, 0xb1, 0xf8, 0xcd, 0x07, 0xbf, + 0x90, 0xd7, 0x53, 0x7c, 0xc2, 0x7b, 0xbb, 0x8c, 0x9d, 0x5b, 0x29, 0x62, 0xc4, + 0x7e, 0xd1, 0x82, 0xa2, 0xfc, 0xe0, 0x5f, 0x8e, 0x03, 0xc4, 0xe2, 0x5e, 0x49, + 0x01, 0xfd, 0xd6, 0x01, 0x49, 0xc2, 0xa7, 0xc3, 0xb0, 0x67, 0xe1, 0x9b, 0xa1, + 0xc6, 0xa6, 0xc6, 0x95, 0xe1, 0x9a, 0xa8, 0xc7, 0xae, 0xc8, 0xa1, 0xc7, 0xbc, + 0xe1, 0x9a, 0xba, 0xc8, 0x86, 0xe2, 0xb1, 0xa9, 0xc6, 0x8e, 0xe1, 0x9a, 0xb3, + 0xe1, 0x9a, 0xa7, 0xc8, 0x88, 0xc3, 0x97, 0xc7, 0xac, 0xc7, 0x97, 0x64, 0xc7, + 0xae, 0xc5, 0xab, 0xc3, 0x9c, 0xc4, 0x8e, 0xc3, 0x97, 0xc6, 0x83, 0xc4, 0x9e, + 0xc9, 0x89, 0xc4, 0x9a, 0xc2, 0xaf, 0xc2, 0xaa, 0xc7, 0x92, 0xcd, 0xb1, 0x65, + 0xc5, 0x92, 0xe1, 0x9b, 0xa3, 0xc7, 0x83, 0x4c, 0x63, 0xc2, 0xa5, 0xc4, 0xa5, + 0x42, 0xc3, 0x9a, 0xc5, 0x85, 0xc5, 0x80, 0xc5, 0x9e, 0xc3, 0xa0, 0xc8, 0xb0, + 0xcd, 0xb6, 0x75, 0xc6, 0x96, 0xce, 0x84, 0xc5, 0x93, 0xe2, 0xb1, 0xb9, 0xe2, + 0xb1, 0xa8, 0xc7, 0xb0, 0x45, 0xc5, 0x8b, 0x7a, 0xc3, 0x84, 0xc6, 0x80, 0xc7, + 0x9b, 0xc5, 0x9c, 0xc3, 0xa3, 0xc8, 0xba, 0xcd, 0xbc, 0xcd, 0xbd, 0xc8, 0xa7, + 0xc4, 0x8a, 0xc5, 0xa2, 0xe2, 0xb1, 0xb7, 0xc4, 0x84, 0xcd, 0xbe, 0xc7, 0xa1, + 0xc4, 0xa3, 0xc5, 0x9d, 0xc7, 0xad, 0xc8, 0xb6, 0xc7, 0xb5, 0xc5, 0x8e, 0xe1, + 0x9a, 0xb6, 0x65, 0xe2, 0xb1, 0xb7, 0xc6, 0xaf, 0xc9, 0x8d, 0xe1, 0x9a, 0xbe, + 0xc7, 0x8b, 0x5c, 0x74, 0xc8, 0x8a, 0xc8, 0x83, 0xc3, 0x87, 0xc3, 0x83, 0xc6, + 0xba, 0xc8, 0xbf, 0xc4, 0x9b, 0x3e, 0xc7, 0x96, 0xc7, 0x8b, 0xc5, 0x81, 0xcd, + 0xb2, 0xc5, 0x8e, 0xc8, 0x8d, 0xc3, 0xa1, 0x5f, 0xc5, 0xa9, 0xc2, 0xbb, 0xe1, + 0x9a, 0xa6, 0xc9, 0x88, 0x5e, 0xc9, 0x85, 0xc8, 0x91, 0xe1, 0x9b, 0x8e, 0xc4, + 0x8f, 0xe1, 0x9b, 0xa4, 0xe1, 0x9a, 0xa8, 0xc6, 0xa5, 0x77, 0xc3, 0x85, 0xc7, + 0x97, 0xc3, 0xaf, 0xe1, 0x9a, 0xaf, 0x64, 0x6d, 0xc8, 0xa3, 0xc3, 0x92, 0xe2, + 0xb1, 0xbd, 0xc8, 0xb7, 0xe1, 0x9b, 0x86, 0xe2, 0xb1, 0xb9, 0xc6, 0xa1, 0xc3, + 0x82, 0xc7, 0x8b, 0xc7, 0x91, 0xc9, 0x86, 0xc5, 0x89, 0xe1, 0x9b, 0xae, 0xc8, + 0xb6, 0xc4, 0xbb, 0x57, 0xc3, 0xa6, 0xc2, 0xa3, 0xc5, 0xad, 0x2a, 0x6e, 0xc3, + 0x90, 0xc5, 0xa1, 0xc4, 0x87, 0xc2, 0xb7, 0xc5, 0xb1, 0xc4, 0x99, 0xc6, 0xbd, + 0xe1, 0x9b, 0x81, 0xe1, 0x9b, 0x8e, 0x28, 0xc8, 0xb6, 0xc2, 0xb5, 0xe1, 0x9a, + 0xa6, 0xc6, 0x83, 0xe1, 0x9a, 0xbe, 0xc6, 0xbf, 0x2f, 0xc3, 0x80, 0xe1, 0x9a, + 0xa2, 0xc7, 0xa2, 0xc5, 0xb1, 0xe1, 0x9b, 0x83, 0xe1, 0x9a, 0xa7, 0xc6, 0x85, + 0xc7, 0x93, 0xc5, 0x95, 0xc8, 0xaf, 0xc7, 0x97, 0x2e, 0xe2, 0xb1, 0xaf, 0xc8, + 0xbf, 0xe1, 0x9b, 0x81, 0xc3, 0xac, 0x4d, 0xc3, 0xa0, 0xc6, 0x97, 0xe1, 0x9b, + 0x92, 0xe1, 0x9b, 0x9f, 0xc4, 0x9d, 0xc8, 0x9b, 0xc6, 0xab, 0xc7, 0x92, 0xc6, + 0x95, 0xc5, 0xbf, 0x6b, 0xc7, 0xa0, 0x5a, 0xc3, 0x94, 0xc6, 0x96, 0xc4, 0x8e, + 0xc6, 0xac, 0xc6, 0xb9, 0xc3, 0xb1, 0xc8, 0xbd, 0xc8, 0x88, 0xc5, 0xb5, 0xc6, + 0x9f, 0xc3, 0x9b, 0xc7, 0xae, 0xc5, 0x9c, 0xc4, 0xb5, 0xc6, 0x9e, 0xc3, 0x99, + 0xc2, 0xa9, 0xc6, 0xba, 0xc8, 0x9f, 0xc7, 0x83, 0xc8, 0xbb, 0x34, 0xc3, 0xb5, + 0xc5, 0x8a, 0x3b, 0xc2, 0xaa, 0x7b, 0xc4, 0x8c, 0xc3, 0xbb, 0xc8, 0xb9, 0xc5, + 0xb5, 0xce, 0x87, 0xc2, 0xb8, 0xc3, 0x97, 0xe1, 0x9b, 0x84, 0xc8, 0x85, 0xc2, + 0xa8, 0xc2, 0xab, 0xc8, 0x9a, 0x5a, 0x03, 0x0b, 0x74, 0x8f, 0xe3, 0x57, 0xf4, + 0x05, 0x1a, 0x14, 0xfc, 0x53, 0x12, 0x4a, 0xb4, 0x04, 0xb8, 0xf0, 0x8d, 0x66, + 0x63, 0x3f, 0x29, 0xd8, 0x6c, 0x0a, 0x7b, 0xba, 0x1e, 0x0f, 0xa9, 0x0a, 0x39, + 0x18, 0x15, 0xe8, 0xdc, 0x5f, 0x54, 0x94, 0xcb, 0x9d, 0x6b, 0x2e, 0x5e, 0xc3, + 0x82, 0xe3, 0x59, 0x33, 0xe1, 0x7b, 0x79, 0x6f, 0x3a, 0x40, 0x1b, 0x0c, 0x4e, + 0x83, 0xcc, 0xe1, 0x95, 0x65, 0xc1, 0x9f, 0x0a, 0x3f, 0xff, 0x0e, 0x65, 0x62, + 0xfe, 0x25, 0x56, 0x16, 0x68, 0x9c, 0x17, 0x69, 0x05, 0x38, 0xaf, 0x23, 0x6d, + 0x84, 0x12, 0xca, 0xc8, 0x20, 0x86, 0xd6, 0x1b, 0x5d, 0x2c, 0x8c, 0xf0, 0xbb, + 0xeb, 0xac, 0x5b, 0x89, 0xbf, 0xe8, 0x2b, 0x58, 0x91, 0x76, 0x64, 0xba, 0xb9, + 0x1c, 0xe2, 0xec, 0xe2, 0x10, 0xb2, 0x7b, 0x60, 0x52, 0xd4, 0xbf, 0x99, 0x1a, + 0x33, 0xf4, 0x58, 0x1a, 0x63, 0x36, 0x25, 0x78, 0x79, 0x58, 0x89, 0x7f, 0xca, + 0x4b, 0x98, 0xb7, 0xe7, 0x27, 0x7c, 0x5e, 0x6a, 0x1d, 0x88, 0x59, 0xa1, 0x0d, + 0x64, 0x63, 0x79, 0xd0, 0x45, 0x31, 0x94, 0xb0, 0x15, 0x4c, 0xe0, 0xd8, 0x23, + 0xe1, 0x06, 0xaf, 0x2e, 0x86, 0xc9, 0xbe, 0x6a, 0xab, 0x39, 0x55, 0x9e, 0xdb, + 0xe3, 0x29, 0xae, 0x61, 0x52, 0xa5, 0x09, 0xbb, 0x5c, 0x81, 0x1f, 0x59, 0xe1, + 0x97, 0xae, 0x37, 0x9e, 0x62, 0x83, 0xa6, 0xaa, 0x8f, 0xc9, 0x79, 0x6f, 0x3a, + 0x40, 0x1b, 0x0c, 0x4e, 0x83, 0xcc, 0xe1, 0x95, 0x65, 0xc1, 0x9f, 0x0a, 0x3f, + 0xff, 0x0e, 0x65, 0x62, 0xfe, 0x25, 0x56, 0x16, 0x68, 0x9c, 0x17, 0x69, 0x05, + 0x38, 0xaf, 0x23, 0x91, 0xef, 0xc7, 0xd3, 0xb7, 0xef, 0x66, 0xb9, 0x2f, 0xe0, + 0x9d, 0x35, 0x16, 0x27, 0x0a, 0xe1, 0x9a, 0x99, 0x92, 0x16, 0xee, 0xae, 0x16, + 0x21, 0x44, 0xac, 0xea, 0x56, 0x0d, 0x17, 0x72, 0x05, 0xf2, 0x6c, 0x97, 0x03, + 0xb5, 0x4e, 0x80, 0xaf, 0x1a, 0x87, 0x94, 0xd6, 0xd3, 0xf1, 0xc5, 0xee, 0xad, + 0x22, 0x0b, 0x11, 0x9f, 0x06, 0xb2, 0x00, 0x98, 0x6c, 0x91, 0x21, 0x32, 0xcb, + 0x08, 0xa9, 0x17, 0xf2, 0x32, 0xe3, 0xf0, 0xb4, 0xa0, 0x25, 0xb5, 0x55, 0x56, + 0x05, 0x7f, 0xe4, 0x66, 0x7b, 0x92, 0x41, 0x35, 0xb1, 0x84, 0x8f, 0x9d, 0x41, + 0xeb, 0x55, 0xf9, 0x9d, 0x6f, 0xaa, 0x90, 0x3c, 0x95, 0x4c, 0x06, 0xec, 0xbe, + 0x22, 0x1f, 0xd4, 0x48, 0x43, 0x39, 0xf9, 0xd0, 0x77, 0x09, 0xa1, 0x68, 0xd0, + 0x10, 0x79, 0x6f, 0x3a, 0x40, 0x1b, 0x0c, 0x4e, 0x83, 0xcc, 0xe1, 0x95, 0x65, + 0xc1, 0x9f, 0x0a, 0x3f, 0xff, 0x0e, 0x65, 0x62, 0xfe, 0x25, 0x56, 0x16, 0x68, + 0x9c, 0x17, 0x69, 0x05, 0x38, 0xaf, 0x23, 0x12, 0xc2, 0xe4, 0xf3, 0x34, 0x30, + 0xf2, 0x99, 0x70, 0xc6, 0x0b, 0xe8, 0xc5, 0xe2, 0xc8, 0xcc, 0x8a, 0x86, 0xed, + 0xcd, 0x51, 0x2d, 0xa7, 0x0d, 0xd7, 0xbb, 0x40, 0xe2, 0x7b, 0x32, 0xdf, 0x3d, + 0x77, 0x6a, 0x4a, 0x7b, 0x00, 0xe3, 0xbd, 0x8f, 0x69, 0x7f, 0x1f, 0x4e, 0x5c, + 0x9f, 0xbe, 0xbe, 0xb4, 0x46, 0xb0, 0x25, 0xfd, 0x80, 0x65, 0xb1, 0x86, 0xae, + 0xdc, 0x75, 0xf5, 0x68, 0x87, 0x2c, 0x00, 0xfd, 0xfb, 0x01, 0xc6, 0x91, 0xc9, + 0x8e, 0xe1, 0x9b, 0xb0, 0x2b, 0xc5, 0x95, 0xc3, 0xa4, 0xc4, 0x92, 0xc5, 0x93, + 0x7b, 0xc4, 0x92, 0xe2, 0xb1, 0xa2, 0x5b, 0xe1, 0x9b, 0x96, 0xc4, 0x8c, 0xc9, + 0x8a, 0x3b, 0xe2, 0xb1, 0xb1, 0xc6, 0xbc, 0xc8, 0x9a, 0xc3, 0x8b, 0xc6, 0xab, + 0xc3, 0xb0, 0x48, 0xc6, 0xaa, 0xe1, 0x9b, 0xa3, 0x42, 0xc7, 0x93, 0xe1, 0x9b, + 0x8b, 0xc4, 0x88, 0xc3, 0x9e, 0xc6, 0x8f, 0xc8, 0x85, 0xc8, 0x8e, 0xc2, 0xa8, + 0x38, 0xc5, 0x85, 0xe1, 0x9b, 0xa0, 0xc3, 0x9d, 0xc3, 0xa5, 0xc5, 0x82, 0xe2, + 0xb1, 0xa2, 0xc6, 0xb1, 0xc5, 0xb7, 0xe1, 0x9b, 0x86, 0x34, 0xc5, 0x87, 0xc6, + 0xad, 0xc4, 0x9b, 0xc7, 0x98, 0x40, 0x69, 0xc2, 0xa8, 0xc5, 0x85, 0xc2, 0xa9, + 0xc5, 0xb4, 0xc3, 0x94, 0xc7, 0xaf, 0xc8, 0xaf, 0xc8, 0xbf, 0xe1, 0x9a, 0xb9, + 0xe1, 0x9b, 0x96, 0xc6, 0xb4, 0xc5, 0xb4, 0xc2, 0xa6, 0xc4, 0x97, 0xc5, 0xbc, + 0xcd, 0xb1, 0xc4, 0xa3, 0xc3, 0xaa, 0xe1, 0x9b, 0x83, 0xc8, 0x89, 0xc8, 0xad, + 0xe1, 0x9a, 0xa5, 0xc6, 0x8e, 0xc5, 0x90, 0xc2, 0xa6, 0xcd, 0xb3, 0xcd, 0xb3, + 0xc5, 0x8e, 0x3c, 0x46, 0xc4, 0x87, 0xc4, 0xa8, 0xc8, 0xa9, 0xc6, 0x93, 0xc9, + 0x8a, 0xc9, 0x8b, 0xc6, 0x80, 0xc4, 0xbf, 0xc5, 0x9a, 0xc3, 0x97, 0x59, 0xc9, + 0x85, 0xe2, 0xb1, 0xbc, 0xc8, 0xa4, 0xc4, 0xba, 0xc3, 0x89, 0xe1, 0x9b, 0x9d, + 0xc2, 0xa2, 0xc4, 0x9e, 0xcd, 0xb5, 0xc8, 0x89, 0xc5, 0xa3, 0xc8, 0xa4, 0xc7, + 0xb9, 0xc5, 0x8e, 0xc6, 0x85, 0xc7, 0x86, 0xe2, 0xb1, 0xb9, 0xc6, 0x8c, 0xcd, + 0xb3, 0xc8, 0xb7, 0xe1, 0x9a, 0xa9, 0xc8, 0xbe, 0x29, 0xc7, 0xa7, 0xc4, 0xa3, + 0xc8, 0x96, 0xc5, 0xbc, 0xe1, 0x9a, 0xbb, 0xc9, 0x87, 0xc5, 0xaf, 0x30, 0x56, + 0xc7, 0xb6, 0xc7, 0xb9, 0x64, 0xc6, 0x90, 0xc5, 0x84, 0xc6, 0xa3, 0xe1, 0x9b, + 0x9a, 0xc3, 0xa1, 0xc8, 0x8f, 0xe1, 0x9b, 0x82, 0xe1, 0x9a, 0xae, 0xc6, 0xa6, + 0xe1, 0x9b, 0x95, 0xc8, 0xae, 0x55, 0xc5, 0xad, 0xc7, 0x8c, 0xc2, 0xae, 0xe1, + 0x9a, 0xbb, 0xe2, 0xb1, 0xb9, 0xcd, 0xbd, 0xc5, 0xa8, 0xc6, 0x80, 0xe1, 0x9a, + 0xa9, 0xe2, 0xb1, 0xb4, 0xc6, 0x82, 0x39, 0xc5, 0x99, 0xc7, 0x88, 0xc6, 0x8e, + 0xc7, 0xa8, 0xc5, 0x88, 0xc6, 0xba, 0xe1, 0x9b, 0x83, 0xc2, 0xb1, 0xe1, 0x9a, + 0xb8, 0xc8, 0x92, 0xe1, 0x9b, 0xa2, 0xc8, 0xa6, 0x6f, 0xc5, 0x8a, 0xc9, 0x83, + 0xc3, 0xac, 0xc8, 0xb3, 0xe1, 0x9b, 0x83, 0xc8, 0x85, 0xc7, 0x9a, 0xc4, 0x81, + 0xc8, 0x91, 0xc9, 0x84, 0xc8, 0x93, 0xc3, 0x88, 0xe1, 0x9b, 0xab, 0xc3, 0x89, + 0x62, 0xe1, 0x9a, 0xbb, 0x72, 0xe2, 0xb1, 0xb9, 0xc8, 0x94, 0xc4, 0xb8, 0xc3, + 0x9b, 0xc3, 0xb3, 0xc4, 0x88, 0xc8, 0x96, 0x31, 0xc6, 0xb8, 0xc3, 0x98, 0x2e, + 0xc8, 0xb3, 0xc3, 0x95, 0xc3, 0x8a, 0xc3, 0xa4, 0x2c, 0xc8, 0xb1, 0xc9, 0x89, + 0x26, 0x3f, 0x5c, 0xc7, 0x81, 0xc7, 0x9e, 0xc2, 0xb4, 0xcd, 0xbb, 0xc5, 0x9d, + 0xc5, 0x92, 0xe1, 0x9a, 0xb2, 0xc6, 0x94, 0x35, 0xc5, 0x8d, 0xc6, 0xb9, 0xc5, + 0xa3, 0xc4, 0x86, 0xe1, 0x9b, 0x9e, 0xcd, 0xbe, 0xce, 0x84, 0xe2, 0xb1, 0xba, + 0xc8, 0x92, 0xc5, 0xb0, 0x64, 0x5f, 0xc5, 0xaa, 0xc7, 0x91, 0xe1, 0x9a, 0xb7, + 0xe1, 0x9b, 0x8f, 0xc5, 0xb2, 0xe1, 0x9b, 0x9d, 0x5a, 0xe1, 0x9a, 0xbd, 0xc5, + 0x8e, 0xc4, 0xb1, 0xc6, 0xa1, 0xc5, 0xa8, 0xc8, 0x80, 0xc6, 0x8e, 0xc5, 0xbf, + 0xc4, 0x99, 0xc6, 0x9a, 0xe1, 0x9b, 0x98, 0xc8, 0xbd, 0xce, 0x89, 0x68, 0xc5, + 0x94, 0xc4, 0xba, 0xe2, 0xb1, 0xad, 0xc8, 0x98, 0xc4, 0x9f, 0x02, 0x56, 0x8f, + 0xcd, 0xd6, 0x44, 0x90, 0x83, 0xe8, 0xb3, 0x96, 0xf6, 0x15, 0x4f, 0x08, 0x7a, + 0xe4, 0xdc, 0x52, 0x3d, 0xad, 0x13, 0x55, 0x72, 0x52, 0xfc, 0x29, 0x51, 0xf2, + 0xf7, 0xf2, 0xb4, 0x05, 0x5b, 0x47, 0xb1, 0x88, 0x60, 0x42, 0x36, 0xba, 0x7f, + 0x19, 0x0a, 0x24, 0x37, 0xdc, 0xf0, 0x5a, 0x63, 0x13, 0x45, 0xdb, 0xa1, 0x1e, + 0xd9, 0xec, 0x73, 0xa9, 0x93, 0xae, 0xc4, 0x01, 0xe7, 0xbc, 0x67, 0xb8, 0x1b, + 0x40, 0x33, 0x5f, 0x69, 0xed, 0x89, 0x36, 0x45, 0x6a, 0xb9, 0xe6, 0x33, 0xb6, + 0x02, 0x22, 0x8c, 0x19, 0x7a, 0x8f, 0x43, 0x30, 0xb2, 0x72, 0x27, 0xf0, 0xb7, + 0x71, 0xd0, 0xaf, 0x17, 0x5e, 0x9c, 0x3f, 0x6e, 0x1f, 0x68, 0x46, 0x2e, 0xe7, + 0xfe, 0x17, 0x97, 0xd9, 0x28, 0x40, 0x6f, 0x92, 0x38, 0xa3, 0xf3, 0xfd, 0x83, + 0x6a, 0x27, 0x56, 0xdd, 0x0a, 0x11, 0xe1, 0xab, 0x94, 0x9d, 0x5e, 0x30, 0x89, + 0x4f, 0x56, 0x29, 0x95, 0x25, 0xe6, 0x5d, 0x95, 0x0f, 0x2e, 0xb5, 0x0b, 0x3a, + 0x8e, 0xa7, 0x85, 0xd8, 0xfd, 0x06, 0xb3, 0x67, 0x65, 0xd6, 0xb4, 0x2e, 0xba, + 0x93, 0xff, 0x58, 0x0a, 0x1e, 0x39, 0x9f, 0xcf, 0xe4, 0xfc, 0x6a, 0x3a, 0x0c, + 0x19, 0x23, 0xce, 0xdf, 0x4e, 0x33, 0xc1, 0xa5, 0x75, 0x40, 0xa7, 0x89, 0x76, + 0xef, 0xa3, 0x7b, 0x46, 0x24, 0x09, 0xf9, 0xd9, 0x8d, 0xab, 0x1c, 0x86, 0x4c, + 0x00, 0xdb, 0xa1, 0x1e, 0xd9, 0xec, 0x73, 0xa9, 0x93, 0xae, 0xc4, 0x01, 0xe7, + 0xbc, 0x67, 0xb8, 0x1b, 0x40, 0x33, 0x5f, 0x69, 0xed, 0x89, 0x36, 0x45, 0x6a, + 0xb9, 0xe6, 0x33, 0xb6, 0x02, 0x22, 0x8c, 0x1d, 0x3c, 0x65, 0xa4, 0x28, 0x90, + 0x97, 0x5f, 0xa1, 0xed, 0xed, 0x70, 0x56, 0x20, 0xdf, 0xcd, 0x1d, 0x0c, 0xde, + 0xad, 0x2a, 0xbf, 0xa6, 0xdf, 0xe2, 0x6d, 0x79, 0xc9, 0x0c, 0x63, 0xff, 0x16, + 0xe5, 0x40, 0xb7, 0x61, 0x5d, 0x43, 0xa6, 0x26, 0x1d, 0x57, 0x73, 0x03, 0x06, + 0xb6, 0x63, 0x2c, 0x8e, 0xe6, 0x1b, 0xaa, 0x4a, 0xb4, 0xd3, 0x08, 0x4d, 0x65, + 0x9c, 0xab, 0xcf, 0xc4, 0x06, 0x4c, 0x01, 0x63, 0xfe, 0x65, 0x09, 0x0f, 0x33, + 0x14, 0x4a, 0x71, 0xbf, 0x84, 0x3a, 0xc3, 0xdd, 0x4c, 0x0b, 0x1f, 0x6c, 0x24, + 0xa4, 0x86, 0x49, 0x28, 0x1b, 0x2e, 0xd4, 0x0e, 0xe5, 0x22, 0x99, 0x6f, 0x38, + 0xd2, 0x3c, 0x68, 0x74, 0x99, 0xd3, 0xa4, 0x9a, 0x5b, 0xf5, 0x5c, 0x1e, 0xd9, + 0xb3, 0x41, 0x7f, 0x79, 0x5f, 0xd0, 0x34, 0xa7, 0x3f, 0x80, 0xff, 0x47, 0xbc, + 0x4e, 0x8d, 0xb8, 0xa8, 0x4e, 0x51, 0x65, 0x75, 0x1b, 0x38, 0x08, 0xfd, 0x6b, + 0x98, 0x20, 0x76, 0xfa, 0x7b, 0x7e, 0x43, 0x99, 0x32, 0x50, 0xc5, 0x45, 0xad, + 0xd6, 0xe0, 0x16, 0x62, 0x62, 0xe0, 0x04, 0x1f, 0x11, 0xa1, 0xbb, 0x3a, + ], + txid: [ + 0x2a, 0xf0, 0x14, 0x20, 0x07, 0x27, 0xfe, 0x9f, 0xba, 0x45, 0xe5, 0x33, 0xa6, + 0xf4, 0x86, 0x66, 0xb2, 0x16, 0x63, 0x3f, 0xd3, 0x22, 0x61, 0x7d, 0x46, 0xa2, + 0x9f, 0x30, 0xe7, 0xf4, 0x99, 0xff, + ], + auth_digest: [ + 0xf1, 0x67, 0x6e, 0xe9, 0x64, 0xa3, 0x15, 0x6d, 0xba, 0x98, 0x45, 0xbe, 0x63, + 0xab, 0xb9, 0xe8, 0xc9, 0x72, 0x14, 0xd4, 0x00, 0xc0, 0x51, 0x26, 0x7f, 0x8f, + 0xc7, 0xda, 0x2d, 0x34, 0x66, 0xea, + ], + amounts: vec![], + script_pubkeys: vec![], + transparent_input: None, + sighash_shielded: [ + 0x2a, 0xf0, 0x14, 0x20, 0x07, 0x27, 0xfe, 0x9f, 0xba, 0x45, 0xe5, 0x33, 0xa6, + 0xf4, 0x86, 0x66, 0xb2, 0x16, 0x63, 0x3f, 0xd3, 0x22, 0x61, 0x7d, 0x46, 0xa2, + 0x9f, 0x30, 0xe7, 0xf4, 0x99, 0xff, + ], + sighash_all: None, + sighash_none: None, + sighash_single: None, + sighash_all_anyone: None, + sighash_none_anyone: None, + sighash_single_anyone: None, + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x42, + 0x69, 0xb3, 0x03, 0x17, 0x7c, 0x80, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0x06, 0x04, 0x17, 0x7c, 0x80, 0x06, 0x00, 0xff, + 0xff, 0xff, 0xff, 0x03, 0x4e, 0x1b, 0x55, 0x8e, 0x33, 0x6e, 0x03, 0x00, 0x04, + 0xac, 0x51, 0x6a, 0x00, 0xe6, 0x99, 0x0e, 0xc6, 0xbe, 0xb1, 0x00, 0x00, 0x04, + 0x52, 0x63, 0x53, 0xac, 0xd7, 0x71, 0xa7, 0x4a, 0x0f, 0xcb, 0x06, 0x00, 0x05, + 0x51, 0x51, 0x65, 0x65, 0x00, 0x00, 0x00, 0x04, 0x5e, 0xc2, 0x52, 0x02, 0x43, + 0x5e, 0x52, 0x03, 0x57, 0xc0, 0xcb, 0xaf, 0xce, 0x90, 0x32, 0x45, 0x0e, 0x06, + 0x95, 0xe6, 0x21, 0xe7, 0xfb, 0xb4, 0x42, 0xc9, 0x71, 0x08, 0x2e, 0xde, 0x47, + 0x20, 0x2a, 0x3d, 0xb4, 0x59, 0x06, 0x4c, 0x01, 0x2b, 0xc0, 0x58, 0x07, 0x69, + 0x4b, 0x12, 0xd8, 0xfd, 0xae, 0x17, 0x84, 0x40, 0x1e, 0xfe, 0xc9, 0xf1, 0x25, + 0x6d, 0xaf, 0x71, 0x91, 0x59, 0xd8, 0x21, 0xb6, 0xc9, 0x5c, 0x54, 0x5f, 0xf3, + 0x23, 0xc3, 0xaa, 0xee, 0x3d, 0x9a, 0xde, 0x77, 0x76, 0xe1, 0xb8, 0xd5, 0x80, + 0xe3, 0x4a, 0xfc, 0xe7, 0xa3, 0x2b, 0xc4, 0x96, 0x37, 0xc2, 0x4b, 0x2e, 0x26, + 0x0f, 0x48, 0x78, 0x20, 0xdb, 0x45, 0x1c, 0xb8, 0xcf, 0x4f, 0x55, 0x7c, 0xf9, + 0xb0, 0xfa, 0x3d, 0x76, 0x7d, 0x9d, 0xe5, 0x7d, 0xea, 0xde, 0xad, 0xcb, 0x4a, + 0xf5, 0x19, 0x3e, 0x09, 0xc9, 0x3b, 0x65, 0xa3, 0xac, 0x7c, 0xe6, 0x3d, 0x17, + 0x98, 0x7c, 0x12, 0x93, 0xe1, 0x24, 0xe6, 0x26, 0xc3, 0x5b, 0xec, 0x81, 0xb1, + 0x6a, 0x04, 0xe8, 0xff, 0xe9, 0x48, 0x38, 0x8e, 0x7b, 0x43, 0xb0, 0x96, 0x3e, + 0x8b, 0x99, 0xea, 0xe0, 0x28, 0x4f, 0x8b, 0x01, 0x15, 0xb4, 0x23, 0x7a, 0x7c, + 0x5d, 0x81, 0x97, 0x0f, 0xe8, 0x7c, 0x6f, 0x84, 0xb6, 0x68, 0x6c, 0x46, 0x25, + 0xdb, 0xdd, 0x9d, 0x79, 0xd2, 0xc5, 0x55, 0xdd, 0x4f, 0xce, 0xed, 0x2c, 0x5e, + 0x5e, 0x89, 0x6f, 0x63, 0x1a, 0xe4, 0x59, 0x7e, 0x9c, 0xc0, 0xbe, 0xe7, 0xb3, + 0x02, 0x5f, 0x95, 0x56, 0x10, 0x6a, 0x84, 0x3a, 0x18, 0x22, 0x7f, 0x5a, 0xb9, + 0x61, 0x7d, 0x7b, 0xcb, 0x1a, 0xf5, 0x28, 0xfa, 0xa7, 0xa0, 0x52, 0xea, 0x4f, + 0x52, 0xca, 0x59, 0x45, 0x57, 0xfd, 0xad, 0x33, 0x05, 0x2b, 0xc8, 0x2b, 0x39, + 0xc6, 0xa6, 0x09, 0xa0, 0x70, 0x75, 0x3d, 0x78, 0x8b, 0x2c, 0x4a, 0x2c, 0xae, + 0xbb, 0xe7, 0x9f, 0xf0, 0x12, 0x07, 0x1c, 0x07, 0x08, 0x10, 0x94, 0xad, 0x60, + 0x59, 0xc2, 0x8f, 0x48, 0xe5, 0x56, 0xc4, 0xe8, 0xd8, 0xc5, 0x37, 0x8b, 0xc2, + 0x93, 0x07, 0x6b, 0xb4, 0x97, 0x07, 0x5f, 0x9c, 0xa0, 0xba, 0x13, 0x11, 0x55, + 0x0f, 0xa2, 0x17, 0x3d, 0x0e, 0xb1, 0xf0, 0xbd, 0xdd, 0xf3, 0xb3, 0xd5, 0xc2, + 0x43, 0xff, 0xea, 0xbe, 0xe8, 0x23, 0xcd, 0x63, 0xb4, 0x39, 0x39, 0xce, 0x95, + 0x46, 0xed, 0x4c, 0x41, 0xe6, 0x0c, 0xcc, 0x7e, 0x1c, 0x54, 0x3c, 0xb3, 0xe2, + 0xd3, 0x50, 0xe2, 0xe2, 0xe9, 0x74, 0x21, 0x5c, 0xf7, 0xaa, 0x96, 0x9b, 0x66, + 0x81, 0x14, 0xac, 0xdb, 0x29, 0xf4, 0xcd, 0xcf, 0xdc, 0xec, 0x2a, 0x8c, 0xe4, + 0xf5, 0x95, 0xf4, 0xff, 0x5f, 0x70, 0x7e, 0x7f, 0xa4, 0xde, 0xe8, 0xbf, 0x8f, + 0x39, 0x52, 0xae, 0x32, 0xe7, 0x7f, 0x34, 0xf8, 0xb3, 0xab, 0xaa, 0xe9, 0x69, + 0x28, 0xba, 0x4a, 0x6c, 0x0f, 0xbf, 0x5b, 0x29, 0x19, 0x2d, 0xae, 0x80, 0x0d, + 0xfa, 0x79, 0x57, 0x0c, 0xaf, 0x0b, 0xb8, 0x33, 0xbd, 0x37, 0xa3, 0xd4, 0xbe, + 0xaf, 0x09, 0x1f, 0x6b, 0x3e, 0x55, 0xaa, 0xe5, 0x25, 0xf4, 0x13, 0xac, 0x80, + 0x4c, 0x34, 0x7d, 0x54, 0x1d, 0x2c, 0x09, 0xec, 0x6e, 0x54, 0x03, 0x5d, 0xf1, + 0xd8, 0x30, 0x28, 0x4d, 0x9b, 0x46, 0xff, 0xd2, 0xb2, 0xeb, 0x04, 0x0b, 0x61, + 0x77, 0xd0, 0xa0, 0x9c, 0x16, 0x60, 0x34, 0xa9, 0x57, 0xb1, 0x8f, 0xf6, 0x2e, + 0x43, 0x4a, 0x3e, 0xc7, 0x32, 0x62, 0xe4, 0xb2, 0x3f, 0xec, 0x9d, 0x29, 0x0a, + 0x81, 0xc5, 0xb1, 0xf7, 0x3c, 0xb4, 0xcd, 0x1c, 0x47, 0x2b, 0x86, 0xe5, 0x34, + 0xab, 0x9e, 0x65, 0x53, 0x29, 0x5d, 0xb0, 0xcf, 0x34, 0xe1, 0x39, 0x2a, 0xad, + 0x5a, 0xbc, 0xf3, 0x98, 0x64, 0x16, 0xa7, 0x0a, 0x9d, 0xbe, 0x59, 0xbb, 0x95, + 0x8e, 0xbc, 0x71, 0x1c, 0x3a, 0xe0, 0x8c, 0xaf, 0x52, 0xec, 0xa9, 0xcb, 0x54, + 0xc4, 0x58, 0xbe, 0x7f, 0x5e, 0x62, 0x14, 0xec, 0xa0, 0xf0, 0xa3, 0x81, 0x52, + 0x62, 0x20, 0x01, 0x32, 0xe6, 0x14, 0x54, 0x37, 0xec, 0xd2, 0x1f, 0xc8, 0x03, + 0x6c, 0xb0, 0x0a, 0x49, 0x13, 0x84, 0xc3, 0x41, 0xd8, 0x72, 0xdc, 0xda, 0x31, + 0xb1, 0x42, 0x96, 0x73, 0xd9, 0xc4, 0xf5, 0x7b, 0x81, 0xa0, 0x23, 0x6d, 0xa5, + 0xec, 0x55, 0x02, 0xee, 0x29, 0x63, 0x15, 0x0a, 0x00, 0x26, 0xbd, 0x63, 0xef, + 0x67, 0x9e, 0x8c, 0x25, 0xb8, 0xec, 0xee, 0x06, 0x56, 0x4a, 0xf3, 0xb0, 0x2d, + 0xea, 0xb1, 0x06, 0x97, 0xa2, 0x4d, 0xe6, 0x7d, 0x4f, 0x65, 0x04, 0xae, 0x27, + 0x37, 0xb8, 0xe1, 0x73, 0x25, 0xc2, 0xff, 0x15, 0x0c, 0x62, 0xe3, 0x79, 0x83, + 0x44, 0xa1, 0xad, 0x3c, 0xbb, 0x75, 0xb7, 0xf2, 0xa1, 0x57, 0x38, 0xf6, 0x01, + 0xcf, 0x00, 0xf7, 0xe8, 0xbc, 0x08, 0xb6, 0x89, 0x56, 0x7e, 0x4c, 0x7c, 0x01, + 0x05, 0x8b, 0xee, 0xc2, 0x90, 0x3c, 0x5c, 0xa6, 0xb4, 0xc4, 0xa5, 0x71, 0xf4, + 0x60, 0xd6, 0x05, 0x87, 0x36, 0x29, 0x96, 0xc6, 0xe1, 0x25, 0x54, 0xe8, 0xe3, + 0x4e, 0x68, 0x3a, 0x27, 0xf8, 0xa5, 0xff, 0x97, 0x1d, 0x5a, 0x0d, 0xc2, 0xf3, + 0xef, 0xd3, 0x88, 0x99, 0x87, 0xc1, 0xcc, 0x39, 0xce, 0x5d, 0x4b, 0x6b, 0x54, + 0x4c, 0xe0, 0x4c, 0x71, 0xee, 0x4b, 0xfa, 0xe5, 0x04, 0x0d, 0x61, 0xf0, 0x57, + 0xe4, 0xf7, 0x70, 0x17, 0x28, 0xf1, 0x20, 0x04, 0xa7, 0xf7, 0xed, 0xeb, 0x3a, + 0xb2, 0x26, 0x09, 0xed, 0x33, 0xb0, 0xab, 0x5d, 0x69, 0xb1, 0x2d, 0x45, 0x76, + 0x57, 0x77, 0x14, 0xdf, 0xc6, 0xdd, 0xa7, 0x1f, 0xf6, 0x01, 0x7b, 0x55, 0xb3, + 0x35, 0x4d, 0x11, 0xe9, 0x21, 0x67, 0x92, 0xe5, 0x60, 0x9f, 0xc0, 0x67, 0x88, + 0xec, 0x66, 0x8e, 0xef, 0x64, 0x5e, 0x63, 0xb3, 0x7e, 0x2d, 0x0c, 0xd2, 0x63, + 0x04, 0x08, 0x00, 0xbc, 0x8a, 0xa2, 0x80, 0x15, 0x6a, 0x79, 0x4f, 0x62, 0xa5, + 0xf6, 0x93, 0xeb, 0xd9, 0x07, 0x4b, 0x5d, 0x35, 0x4a, 0x71, 0xc8, 0xe3, 0x36, + 0xde, 0x04, 0x08, 0xac, 0x70, 0x80, 0xa2, 0xae, 0xee, 0x36, 0x6c, 0x58, 0x14, + 0x6f, 0x32, 0xe3, 0x49, 0xa9, 0xbc, 0x65, 0x7e, 0xc9, 0xe5, 0x7a, 0x89, 0xa0, + 0x4c, 0xce, 0xa1, 0x33, 0x8a, 0xaa, 0x9d, 0x2a, 0x85, 0x67, 0x7b, 0xc7, 0x80, + 0x45, 0xaa, 0xc3, 0x0d, 0x83, 0x8e, 0xe5, 0x21, 0xb2, 0x92, 0x65, 0x8f, 0x91, + 0xb6, 0x09, 0x5a, 0x96, 0x49, 0x2a, 0x4b, 0x18, 0xaf, 0xb7, 0x72, 0xa3, 0x08, + 0xa0, 0x23, 0x3f, 0x92, 0x86, 0x13, 0x76, 0x75, 0x2c, 0xf0, 0x1c, 0x7b, 0x7d, + 0x2c, 0x34, 0x38, 0xab, 0xe6, 0xb8, 0xcd, 0x3b, 0xb4, 0x21, 0x8b, 0x4d, 0x7f, + 0x15, 0x76, 0x17, 0xbc, 0x91, 0x95, 0x50, 0xd1, 0x6f, 0xb5, 0x13, 0xbf, 0x97, + 0x4b, 0x45, 0x23, 0xf3, 0xcd, 0x1c, 0xaa, 0x5e, 0x0f, 0xd4, 0x15, 0x14, 0xdc, + 0x82, 0xf2, 0x72, 0xb8, 0xea, 0x62, 0x17, 0x70, 0x71, 0xb5, 0x43, 0x98, 0xce, + 0xcf, 0xd6, 0x86, 0xa0, 0xbc, 0x9a, 0xd3, 0x7f, 0x44, 0xb5, 0x38, 0x87, 0x75, + 0x87, 0x51, 0x66, 0x00, 0x6d, 0x25, 0xdf, 0x4b, 0x5e, 0xd1, 0xc4, 0x1f, 0x12, + 0x8d, 0x39, 0xb0, 0x53, 0x46, 0xa8, 0x6f, 0x0c, 0x9b, 0x65, 0xc6, 0x8d, 0x20, + 0x08, 0xd1, 0x31, 0xb3, 0xe9, 0x5b, 0xd0, 0xfb, 0x77, 0xd8, 0xb9, 0x76, 0xb1, + 0x57, 0x04, 0x88, 0xd0, 0xb9, 0x83, 0x8b, 0x88, 0xb6, 0xfd, 0x38, 0xc0, 0x39, + 0xe0, 0x8b, 0x6f, 0xd9, 0x5d, 0xab, 0xcf, 0xb2, 0x5f, 0x23, 0x8b, 0x26, 0x62, + 0x06, 0xb0, 0xa2, 0xf9, 0xa2, 0xee, 0xa1, 0xc0, 0x83, 0xfa, 0xc8, 0x08, 0xaa, + 0xfa, 0x03, 0x65, 0x66, 0xcc, 0xd2, 0x02, 0xbc, 0xfa, 0x41, 0x4e, 0x71, 0xc8, + 0xb4, 0x89, 0x33, 0xc8, 0xed, 0x45, 0x28, 0x7e, 0x1b, 0x43, 0x9b, 0x61, 0x06, + 0xa5, 0x50, 0x94, 0x73, 0xf5, 0x7b, 0x87, 0x88, 0xaf, 0x52, 0x7c, 0xf9, 0xa7, + 0xab, 0xa5, 0x93, 0xdc, 0x9f, 0x5e, 0x5a, 0xca, 0x1a, 0x64, 0x8e, 0xe4, 0x88, + 0xf3, 0x6d, 0xeb, 0x4a, 0x3f, 0xdb, 0x0f, 0xf6, 0xf5, 0xa3, 0x04, 0x4a, 0x63, + 0xe1, 0x7f, 0x70, 0xa4, 0x30, 0x38, 0x24, 0x60, 0x3a, 0xb5, 0x0e, 0x9b, 0xf7, + 0x5b, 0xae, 0xb5, 0x7b, 0xfd, 0xc8, 0x9b, 0xfd, 0xbc, 0x27, 0x27, 0x9d, 0x10, + 0x73, 0xbf, 0x7f, 0x95, 0x05, 0xfb, 0x31, 0x68, 0xd2, 0x06, 0xe2, 0xbf, 0x41, + 0x02, 0xbf, 0x15, 0x9c, 0xff, 0x61, 0xe6, 0xd6, 0x6c, 0x80, 0x37, 0x50, 0xda, + 0x25, 0x4c, 0xd6, 0xb8, 0x1a, 0xed, 0x42, 0x09, 0x97, 0x94, 0xb8, 0x4e, 0xce, + 0x90, 0x42, 0x18, 0xe6, 0xf6, 0x6e, 0xc6, 0x34, 0xe9, 0x2e, 0xef, 0xf4, 0x5f, + 0x52, 0xe0, 0x4b, 0x4b, 0x79, 0x5a, 0x15, 0x25, 0xaa, 0xf9, 0xc5, 0x1d, 0x62, + 0x60, 0xfb, 0xd6, 0x4e, 0x8d, 0x8a, 0xc2, 0x66, 0xdc, 0x6e, 0x7d, 0xf6, 0x15, + 0x3a, 0xd9, 0x73, 0x55, 0x83, 0x79, 0x28, 0x40, 0x4c, 0xd5, 0x81, 0xbc, 0x9c, + 0xf9, 0xdc, 0xd6, 0x67, 0x47, 0xdc, 0x97, 0x0a, 0x9f, 0x00, 0xde, 0xb4, 0x4b, + 0xd6, 0x34, 0xab, 0x04, 0x2e, 0x01, 0x04, 0xc1, 0xce, 0x74, 0x7f, 0x53, 0x75, + 0x1b, 0xc3, 0x3e, 0x38, 0x4c, 0x6b, 0x55, 0x76, 0x39, 0x9e, 0x16, 0xf8, 0xf0, + 0xcb, 0x08, 0xde, 0x35, 0x08, 0x37, 0x33, 0x95, 0x45, 0x87, 0xc1, 0xc2, 0x4d, + 0xf2, 0xae, 0x66, 0x30, 0xff, 0xfe, 0x99, 0x62, 0x15, 0xef, 0xe4, 0xd2, 0x62, + 0x6d, 0xeb, 0x20, 0x56, 0x6a, 0x8f, 0x5e, 0xad, 0x2f, 0x04, 0xdb, 0x5d, 0x08, + 0x77, 0x9c, 0x9c, 0x65, 0x9e, 0xa3, 0x43, 0xcd, 0x78, 0x46, 0x34, 0xc9, 0x9d, + 0x8c, 0x8b, 0xad, 0xa9, 0x3b, 0xe8, 0xe6, 0xda, 0x84, 0x15, 0x94, 0xba, 0xcf, + 0x7c, 0xb3, 0xe6, 0x92, 0xc7, 0x4b, 0x5f, 0xfe, 0x95, 0x78, 0x73, 0x11, 0x3a, + 0x1a, 0xb0, 0x64, 0x02, 0x6f, 0x6d, 0xee, 0x8b, 0x48, 0xa3, 0x84, 0xa1, 0x33, + 0x83, 0x18, 0x36, 0x07, 0x86, 0x50, 0x27, 0x84, 0xd1, 0x7d, 0x40, 0x0c, 0xe3, + 0xd7, 0x21, 0x78, 0x7e, 0xdc, 0x4c, 0x6b, 0x39, 0x35, 0x66, 0x25, 0x10, 0x77, + 0x10, 0x00, 0x68, 0x0d, 0x78, 0xbb, 0x49, 0xc5, 0x66, 0xef, 0x27, 0xdf, 0x61, + 0xc9, 0xfe, 0xb9, 0x2c, 0x08, 0x97, 0x59, 0x44, 0x87, 0x27, 0xa9, 0x34, 0xe3, + 0x57, 0x95, 0x3d, 0xe1, 0xe9, 0xe9, 0x0f, 0xd8, 0xdf, 0xfe, 0x40, 0xb8, 0x73, + 0xbc, 0xd5, 0xb9, 0x82, 0x08, 0xdf, 0x4b, 0x2c, 0xa2, 0x89, 0x7a, 0xf9, 0x0d, + 0x8c, 0x8a, 0x23, 0x62, 0x30, 0x02, 0xa9, 0xd8, 0xbc, 0x02, 0xe8, 0x06, 0x25, + 0x4f, 0x41, 0x0e, 0x3b, 0x02, 0x40, 0x9c, 0xbe, 0xbf, 0xce, 0x8a, 0xcf, 0x65, + 0xcf, 0x39, 0x42, 0x6b, 0x64, 0xa6, 0xba, 0x93, 0x74, 0xa1, 0x3d, 0x72, 0x59, + 0x62, 0x3f, 0x65, 0xe9, 0x3e, 0x10, 0xbf, 0x1f, 0x16, 0xba, 0x7a, 0xe0, 0x7d, + 0xa9, 0x20, 0x58, 0x1c, 0x70, 0x40, 0x9e, 0xdc, 0x7b, 0x9e, 0x21, 0x4e, 0x95, + 0x91, 0x92, 0x82, 0x4c, 0x1d, 0xa6, 0x5d, 0x33, 0x7b, 0x73, 0x75, 0xf5, 0x03, + 0x2f, 0xea, 0xd3, 0xb4, 0xf3, 0x28, 0x48, 0x11, 0x95, 0x0c, 0x7a, 0x90, 0xae, + 0xc9, 0x75, 0xd4, 0xe3, 0x62, 0x9f, 0x52, 0xd1, 0x9a, 0x16, 0x4e, 0x51, 0x16, + 0xef, 0x3a, 0xd0, 0x22, 0x44, 0x2d, 0x1e, 0xec, 0x76, 0xb8, 0x88, 0x73, 0x8b, + 0x53, 0xe5, 0x05, 0x58, 0xa7, 0x0f, 0x20, 0xc8, 0xac, 0xb5, 0x8d, 0xee, 0x63, + 0x27, 0x15, 0xe4, 0x78, 0xe2, 0xbc, 0x21, 0xbc, 0xfb, 0xe3, 0x15, 0x59, 0x96, + 0xca, 0xe7, 0xbd, 0x97, 0xf0, 0x2b, 0x51, 0x6d, 0x32, 0x00, 0xfb, 0x3c, 0x17, + 0x39, 0x7c, 0xc1, 0x2b, 0xb7, 0xa1, 0x9f, 0xd4, 0x36, 0xe6, 0x7a, 0xbc, 0xe6, + 0x6d, 0x30, 0xfe, 0xc0, 0x47, 0xfb, 0x27, 0x70, 0x82, 0x0e, 0x47, 0x6f, 0x3e, + 0x32, 0xbc, 0x48, 0x3b, 0xf5, 0x31, 0x64, 0xae, 0x49, 0x70, 0xf1, 0x1b, 0x9c, + 0xae, 0xe4, 0xed, 0x6c, 0xb8, 0xd2, 0xd7, 0x0f, 0x69, 0x13, 0xd8, 0xe0, 0x2a, + 0xf8, 0xfb, 0xb1, 0xe4, 0x09, 0xb4, 0xef, 0x08, 0x04, 0x48, 0xe5, 0x3b, 0xe6, + 0xe5, 0xe6, 0x05, 0x75, 0xdf, 0xde, 0x94, 0x28, 0xb0, 0x06, 0x96, 0x61, 0x1a, + 0x2f, 0x72, 0x33, 0x2a, 0xe2, 0x90, 0x23, 0xdd, 0x88, 0xae, 0x77, 0xf1, 0x5b, + 0x8a, 0xe2, 0xc2, 0x4b, 0x86, 0xcf, 0x3d, 0x57, 0x43, 0x9c, 0xaf, 0x17, 0xf2, + 0x8e, 0xda, 0x94, 0x93, 0x2e, 0xef, 0x28, 0x53, 0x4e, 0x98, 0xac, 0x94, 0xcb, + 0x9b, 0x5b, 0x12, 0x17, 0x1a, 0xad, 0x3e, 0x3c, 0xc9, 0x6d, 0x28, 0x93, 0xb4, + 0x33, 0xb5, 0x4b, 0xbc, 0x9e, 0x1a, 0x51, 0x42, 0xc2, 0xe9, 0xcf, 0xed, 0xe2, + 0x95, 0x17, 0x28, 0xd6, 0xc8, 0x62, 0x74, 0x9e, 0x86, 0xeb, 0xc5, 0x11, 0x7e, + 0x21, 0xf4, 0x23, 0xe1, 0x8d, 0x09, 0x76, 0xa1, 0xf5, 0x1d, 0x45, 0x47, 0x6d, + 0xa5, 0x60, 0xff, 0x23, 0x15, 0x42, 0xbb, 0x21, 0xf0, 0x1b, 0x17, 0xd6, 0x63, + 0x90, 0x12, 0xd1, 0xe8, 0x43, 0xdb, 0xda, 0xb5, 0x17, 0xde, 0x53, 0x42, 0x97, + 0xf3, 0x42, 0xb2, 0x86, 0x0d, 0x61, 0x6f, 0xe2, 0x24, 0x67, 0x3e, 0xfc, 0xd0, + 0x90, 0x79, 0x73, 0x52, 0xf9, 0x6d, 0x22, 0x46, 0xa2, 0xee, 0x0a, 0xf8, 0x0a, + 0x2a, 0x2d, 0x89, 0xa5, 0x85, 0x30, 0xd6, 0xe3, 0x6b, 0xd3, 0x3a, 0x00, 0xc1, + 0xb8, 0x93, 0xd6, 0xff, 0x8f, 0x90, 0x01, 0x83, 0x9a, 0x8a, 0xb7, 0x2f, 0x98, + 0x20, 0x10, 0x66, 0xe9, 0x4b, 0x7f, 0xed, 0x47, 0x01, 0x19, 0xfe, 0xfa, 0x48, + 0x48, 0x92, 0xe7, 0xc8, 0x23, 0x5a, 0x4c, 0x77, 0x21, 0x66, 0x5e, 0xd2, 0x19, + 0xa9, 0xd9, 0xda, 0x6d, 0xe6, 0xdd, 0x48, 0x26, 0x39, 0x15, 0x3a, 0x81, 0x69, + 0xa4, 0xab, 0x46, 0x4e, 0x39, 0x0b, 0x7f, 0x0a, 0x96, 0xd1, 0x4a, 0x73, 0xf7, + 0x69, 0x7f, 0x7e, 0xce, 0x3c, 0xd7, 0x81, 0xd3, 0x5d, 0xd2, 0x2a, 0xdd, 0xdd, + 0x2f, 0x5d, 0x34, 0x52, 0x04, 0xe4, 0xbb, 0x55, 0x7e, 0x88, 0x45, 0x3f, 0x18, + 0x8c, 0xac, 0xbe, 0x92, 0x29, 0x87, 0xbb, 0xe3, 0xb3, 0xd9, 0x76, 0x82, 0x61, + 0x35, 0xc1, 0x03, 0xb6, 0xca, 0x18, 0x2b, 0x63, 0xe9, 0xe6, 0x7f, 0x83, 0xdc, + 0x9f, 0x48, 0x93, 0x33, 0xd5, 0x2a, 0x7f, 0xd7, 0x68, 0x8a, 0x58, 0xd6, 0x62, + 0x0b, 0x67, 0xe9, 0xc7, 0xb0, 0x91, 0x6f, 0xef, 0x90, 0xf1, 0x5d, 0x8e, 0x4e, + 0xb8, 0x0c, 0xf5, 0x99, 0x68, 0x2f, 0x95, 0x4f, 0xf4, 0xe0, 0xb3, 0x71, 0x83, + 0x13, 0x0c, 0xa2, 0xee, 0xd0, 0x91, 0x3f, 0x46, 0xa4, 0xdb, 0x99, 0x2a, 0x1c, + 0x3b, 0xf3, 0x19, 0xdc, 0x86, 0x75, 0x94, 0x01, 0x01, 0x53, 0x7c, 0xff, 0xc4, + 0xa8, 0x2d, 0x59, 0x9b, 0xbe, 0xa0, 0xd4, 0x7e, 0x7a, 0xbf, 0xa9, 0x92, 0xb4, + 0x99, 0x8c, 0xb2, 0x50, 0x09, 0x55, 0xe6, 0x1c, 0x0d, 0x46, 0xb3, 0x21, 0x17, + 0xfb, 0xb9, 0x7f, 0x7a, 0x76, 0x32, 0xd8, 0x72, 0x4b, 0x5d, 0xff, 0x67, 0xf7, + 0x5e, 0x2d, 0x31, 0x74, 0x06, 0xa0, 0xce, 0xc2, 0x89, 0xed, 0x08, 0x3b, 0x7c, + 0x58, 0x19, 0x81, 0x8c, 0x50, 0x47, 0x93, 0xde, 0x53, 0xb6, 0xbf, 0xdb, 0x51, + 0x0e, 0x7c, 0xa7, 0x29, 0xba, 0x74, 0x3d, 0x10, 0xb3, 0xe9, 0x95, 0x7e, 0xfa, + 0x84, 0x20, 0x13, 0x39, 0x47, 0x7c, 0xf3, 0x5f, 0xbb, 0x6a, 0x27, 0x9b, 0xad, + 0x9e, 0x8f, 0x42, 0xb9, 0xb3, 0xfd, 0x6f, 0x3b, 0xc7, 0x70, 0x67, 0x1d, 0x9c, + 0x19, 0x12, 0x2f, 0xa3, 0x25, 0x6d, 0x09, 0x07, 0x36, 0xb6, 0xd6, 0x4e, 0xb9, + 0xcc, 0x03, 0x20, 0xf1, 0xea, 0xaa, 0x27, 0x1b, 0xa2, 0x86, 0x1e, 0xc4, 0xb3, + 0xf3, 0xf6, 0xc8, 0x40, 0xb6, 0x19, 0xff, 0x38, 0x8d, 0x81, 0xfc, 0x40, 0x44, + 0xa0, 0xd5, 0x31, 0xa4, 0xbb, 0x44, 0xc9, 0x3d, 0x09, 0x9d, 0xb0, 0x8a, 0x9b, + 0xc3, 0x46, 0xa0, 0xb6, 0x2f, 0x16, 0x8f, 0xfb, 0xdb, 0x73, 0x93, 0x66, 0xbb, + 0x53, 0x5d, 0xde, 0x66, 0xc2, 0xc1, 0x28, 0x7b, 0x3b, 0x27, 0x85, 0xae, 0xd6, + 0x4c, 0xc4, 0x0c, 0xbc, 0x7d, 0x33, 0xcb, 0xa4, 0xa9, 0xf3, 0xfc, 0xf5, 0xf8, + 0x31, 0x36, 0xa4, 0x39, 0x2d, 0x21, 0xa7, 0xf9, 0xeb, 0x1c, 0xe4, 0xb6, 0xe1, + 0x7e, 0x6f, 0x4a, 0x85, 0xa5, 0x79, 0x66, 0x9e, 0xfd, 0x0f, 0xb0, 0x98, 0x78, + 0xe0, 0x88, 0xe3, 0x22, 0xe9, 0x06, 0xe8, 0x0d, 0x27, 0xf8, 0xd0, 0xca, 0x7e, + 0x79, 0x15, 0xab, 0x40, 0x96, 0x59, 0xa6, 0xd8, 0x0f, 0xde, 0xd1, 0x0a, 0xff, + 0x9f, 0xb7, 0x73, 0x74, 0x9d, 0x79, 0x28, 0x57, 0xf6, 0x8c, 0x7e, 0x8c, 0xf5, + 0x18, 0x26, 0x0a, 0x61, 0x08, 0x6d, 0xe3, 0x2f, 0xff, 0x82, 0x39, 0xf4, 0x53, + 0x61, 0x7a, 0x19, 0xf6, 0xfe, 0xc2, 0x20, 0x67, 0x60, 0x65, 0xeb, 0xe2, 0x75, + 0x7e, 0xfc, 0xac, 0xcb, 0x77, 0xfc, 0x61, 0xe5, 0x9b, 0x97, 0x63, 0x7e, 0x92, + 0x0d, 0xee, 0x5e, 0x7e, 0x7a, 0x12, 0xe9, 0xd6, 0xd2, 0x28, 0xb2, 0x6b, 0x2f, + 0xa8, 0x36, 0xf4, 0x72, 0x83, 0x69, 0xad, 0xcd, 0xfc, 0xd0, 0x04, 0xdc, 0xf1, + 0x9e, 0x27, 0xc0, 0xc0, 0x84, 0x44, 0xd2, 0x9a, 0x12, 0x2b, 0x23, 0x09, 0xf7, + 0x16, 0x3c, 0x99, 0x0e, 0xb9, 0x26, 0x1f, 0xd4, 0x15, 0xc0, 0x45, 0x4a, 0x56, + 0xaa, 0x3e, 0xaf, 0x9c, 0x1f, 0x9b, 0xff, 0xf6, 0x04, 0x77, 0x6a, 0x4d, 0x25, + 0xe7, 0xd3, 0xcd, 0xc5, 0xc5, 0xf1, 0x9c, 0xd2, 0xa8, 0x79, 0x4a, 0x4f, 0x57, + 0x16, 0x7f, 0xbc, 0x7e, 0xaa, 0x06, 0x16, 0x4d, 0x51, 0xc4, 0x53, 0x06, 0x14, + 0xbc, 0xf5, 0x20, 0xb2, 0x63, 0x82, 0x0a, 0xa1, 0x7b, 0x20, 0xb4, 0x8c, 0xbf, + 0x59, 0xd8, 0xe3, 0x09, 0x32, 0x2e, 0xbe, 0x56, 0x6f, 0xbe, 0x46, 0xe0, 0xaa, + 0x29, 0x76, 0x6a, 0xdf, 0xdf, 0x01, 0x7a, 0x71, 0x05, 0x10, 0x3c, 0x7f, 0xca, + 0xb7, 0xb0, 0x76, 0x48, 0xc7, 0xc1, 0x16, 0x04, 0x84, 0xf7, 0x7a, 0x6c, 0x70, + 0xa5, 0x38, 0x1b, 0x82, 0x56, 0x40, 0xa1, 0xbe, 0x48, 0xe4, 0x15, 0xa1, 0xe6, + 0xa2, 0x7d, 0x78, 0x02, 0x2a, 0x8a, 0x2f, 0xf0, 0x70, 0xab, 0xf1, 0x23, 0x94, + 0xe3, 0xae, 0x5a, 0x8c, 0x23, 0xe3, 0x73, 0x3e, 0xa4, 0x7a, 0x44, 0xcb, 0x2c, + 0x96, 0x8b, 0xca, 0x24, 0x98, 0x37, 0xde, 0x1d, 0x39, 0xa5, 0xa1, 0xdc, 0xae, + 0x71, 0x0c, 0xe0, 0x43, 0x01, 0x69, 0xbd, 0x6e, 0x9f, 0x64, 0xab, 0xf1, 0xe6, + 0x4e, 0xc4, 0x9e, 0xd0, 0x80, 0x4e, 0xb6, 0x47, 0x74, 0x3a, 0xce, 0xa9, 0x29, + 0xed, 0x0f, 0x7c, 0x90, 0x15, 0xb0, 0xe8, 0x1e, 0x21, 0x29, 0xdb, 0x05, 0x0d, + 0x5e, 0x78, 0xe6, 0x82, 0xc8, 0x19, 0x93, 0xea, 0x87, 0x53, 0xc9, 0x91, 0xb0, + 0x2e, 0x61, 0x81, 0xe0, 0x53, 0x73, 0xfb, 0x0c, 0x57, 0x65, 0xe6, 0xad, 0x28, + 0xca, 0x57, 0x1b, 0x85, 0x65, 0x33, 0x11, 0x90, 0xd2, 0xa1, 0x0d, 0x86, 0xe6, + 0xd7, 0x23, 0xa7, 0x3c, 0x1a, 0x03, 0xcc, 0xca, 0x8e, 0xaa, 0xf4, 0xcf, 0xf1, + 0xe4, 0x20, 0x32, 0xfb, 0xbb, 0x38, 0x9d, 0x3f, 0x66, 0xd5, 0x75, 0x55, 0xef, + 0x3f, 0x3e, 0x9e, 0x49, 0xc2, 0xac, 0x4e, 0x85, 0xbb, 0x75, 0x1d, 0x62, 0x66, + 0xc9, 0x03, 0xa6, 0x76, 0x6e, 0xa3, 0xd8, 0x4f, 0x3a, 0x37, 0xd8, 0xc7, 0xb3, + 0x06, 0xad, 0x8a, 0xb7, 0x1a, 0xd4, 0xb5, 0x4f, 0xe6, 0x5e, 0x83, 0xe0, 0x4e, + 0x9f, 0xb1, 0x6c, 0xef, 0x57, 0x67, 0xda, 0xa8, 0xde, 0x6c, 0x16, 0xe7, 0x60, + 0xdd, 0xf1, 0x6f, 0x2b, 0xb6, 0xe9, 0x54, 0xd0, 0x16, 0x49, 0x55, 0x20, 0xd8, + 0xff, 0x3b, 0xea, 0xd1, 0x0d, 0xb9, 0xc9, 0x4a, 0xe0, 0x48, 0x27, 0x21, 0xe1, + 0x32, 0xa0, 0xb8, 0x03, 0x9f, 0xea, 0xb2, 0xdb, 0xe1, 0x4c, 0x91, 0x2f, 0x56, + 0x7c, 0x8b, 0xe5, 0x84, 0xac, 0x9f, 0x96, 0x51, 0x58, 0xc6, 0x56, 0x0b, 0xba, + 0xf4, 0x23, 0xbd, 0x28, 0xf8, 0xf9, 0x89, 0xe4, 0x55, 0x1f, 0xdd, 0xe9, 0x2d, + 0xb1, 0x67, 0x27, 0x42, 0x04, 0x41, 0x70, 0x06, 0x58, 0xb5, 0x0e, 0xbb, 0x5a, + 0x16, 0x13, 0x26, 0x7e, 0xac, 0x51, 0xc8, 0x0b, 0x19, 0xec, 0xb7, 0x86, 0xab, + 0x3b, 0xb9, 0x37, 0xf0, 0xd9, 0x8e, 0x08, 0xb9, 0xc9, 0xcd, 0x4d, 0xf1, 0x53, + 0x4e, 0xfe, 0xe3, 0x8a, 0x8f, 0x87, 0x8c, 0x9f, 0x3b, 0xdc, 0x7e, 0xfb, 0x2d, + 0x53, 0xff, 0x84, 0xfb, 0x83, 0xea, 0xe7, 0xc9, 0x9e, 0xff, 0xa6, 0x3c, 0x96, + 0x49, 0xa1, 0xf1, 0x70, 0xd2, 0x9a, 0xf0, 0x3a, 0x3b, 0x45, 0x58, 0x9f, 0xae, + 0x81, 0xeb, 0x0b, 0x5d, 0x8e, 0x0d, 0x38, 0x02, 0x1d, 0x3b, 0x5f, 0x07, 0xe8, + 0x8c, 0x99, 0x04, 0x37, 0x6d, 0x27, 0xf1, 0x3e, 0x44, 0x41, 0xd5, 0x38, 0x74, + 0x42, 0xc5, 0xea, 0x0a, 0xf5, 0xa2, 0x0a, 0x38, 0x32, 0xbc, 0x3b, 0x9c, 0x59, + 0xb8, 0x4b, 0xca, 0x39, 0xb5, 0x2c, 0xd6, 0xb1, 0xfa, 0x29, 0x32, 0xba, 0x9d, + 0x66, 0xc4, 0x12, 0xf5, 0xcd, 0x39, 0x35, 0x1e, 0x13, 0x33, 0xef, 0x85, 0xd0, + 0xee, 0xe5, 0x45, 0xa7, 0xe4, 0x06, 0xf6, 0xeb, 0x3b, 0xf8, 0x93, 0xf3, 0xed, + 0xac, 0x94, 0x64, 0x33, 0x92, 0xa2, 0x8b, 0x0e, 0x49, 0x0c, 0x51, 0xe4, 0xb7, + 0x16, 0x3c, 0x1c, 0xf7, 0x57, 0xd2, 0x24, 0x18, 0xdd, 0x63, 0x38, 0x1b, 0xa2, + 0xf2, 0x98, 0x28, 0x83, 0x6f, 0xe9, 0x78, 0xda, 0xb5, 0x20, 0x1b, 0x2d, 0xb0, + 0x8c, 0x3b, 0x38, 0x9b, 0xa4, 0xb6, 0xac, 0xf7, 0x78, 0xc2, 0xbf, 0x91, 0x02, + 0xbe, 0x0c, 0x3e, 0x12, 0xd7, 0x7a, 0xea, 0x6d, 0xf7, 0x53, 0x8e, 0x8c, 0xf3, + 0x62, 0xba, 0xaa, 0xad, 0x1d, 0xc5, 0x60, 0x42, 0xc6, 0xf2, 0x4c, 0xaf, 0x46, + 0xbe, 0xd6, 0x6a, 0xbf, 0x4c, 0x40, 0x2a, 0x74, 0x92, 0x4e, 0xcf, 0xd0, 0xa0, + 0x8d, 0xed, 0xee, 0xa0, 0xef, 0xce, 0xcd, 0x35, 0x2c, 0x27, 0x5f, 0x13, 0xed, + 0x20, 0x76, 0x03, 0x82, 0x2b, 0x1e, 0xf9, 0x97, 0xb7, 0xed, 0x42, 0xf4, 0xa5, + 0x76, 0xb9, 0xe4, 0xc0, 0x07, 0x38, 0x56, 0x3f, 0x82, 0xa7, 0x62, 0x85, 0x46, + 0x7d, 0xa2, 0x95, 0xc2, 0x3b, 0xa1, 0xc5, 0x87, 0xeb, 0xef, 0xaf, 0x13, 0xcd, + 0x4d, 0x50, 0xf2, 0x3c, 0xa5, 0x74, 0x3c, 0x22, 0x5c, 0x38, 0x6d, 0x46, 0xd4, + 0xac, 0x70, 0x83, 0x79, 0xef, 0x99, 0x96, 0x74, 0x4b, 0x39, 0x12, 0x04, 0x4b, + 0x35, 0x5f, 0x92, 0x7a, 0x67, 0xaf, 0x1e, 0xf2, 0x6a, 0x71, 0x7f, 0xb5, 0xa8, + 0x46, 0xac, 0x9d, 0xa1, 0x5e, 0xa3, 0xf1, 0x8f, 0x8c, 0x36, 0x18, 0x3f, 0x87, + 0x9b, 0xb9, 0xa3, 0xb2, 0x98, 0xff, 0xf9, 0xa4, 0x89, 0x64, 0x6e, 0x77, 0x8e, + 0x6d, 0x67, 0x01, 0xf9, 0xad, 0xac, 0x7a, 0xe8, 0x82, 0x09, 0xa8, 0x43, 0xba, + 0x8a, 0x55, 0xd1, 0x19, 0x2b, 0xbe, 0xef, 0x31, 0xd0, 0x71, 0x45, 0x37, 0xf7, + 0xa0, 0x35, 0xb0, 0x79, 0xc6, 0xad, 0xd4, 0xab, 0x50, 0x61, 0x2d, 0x35, 0x89, + 0x7a, 0x93, 0x3d, 0x49, 0xe8, 0xef, 0x08, 0x6c, 0xdf, 0x96, 0xc8, 0x0d, 0x28, + 0x56, 0xcc, 0xc7, 0xe4, 0x5f, 0xc4, 0xef, 0xd4, 0xbf, 0x1b, 0x98, 0xab, 0x28, + 0x89, 0x1b, 0x4a, 0xea, 0x7e, 0xf8, 0x4c, 0xf7, 0x36, 0x93, 0x5c, 0x46, 0x6b, + 0x24, 0x97, 0x4d, 0xf8, 0xf5, 0x35, 0x5b, 0x8b, 0xa3, 0x20, 0xac, 0x5f, 0xbc, + 0x47, 0x5a, 0xa2, 0xcf, 0x5a, 0xd3, 0x77, 0x80, 0xbd, 0x9f, 0x9d, 0x46, 0x42, + 0xcf, 0x6c, 0x2d, 0xc6, 0xb8, 0x2f, 0x91, 0x7d, 0x09, 0xc4, 0xf7, 0x28, 0x88, + 0xf9, 0x15, 0x53, 0x44, 0x7f, 0xc5, 0x70, 0x26, 0x6d, 0xaa, 0xfd, 0x4b, 0x96, + 0xcf, 0xe2, 0xa0, 0xb0, 0x67, 0x92, 0x46, 0x9a, 0x72, 0x7d, 0xbe, 0xd0, 0x55, + 0x91, 0xea, 0x60, 0x57, 0x32, 0x20, 0x5e, 0x26, 0x05, 0x97, 0x8a, 0x3a, 0x90, + 0x2c, 0x3c, 0xd6, 0x5f, 0x94, 0x83, 0x00, 0xf7, 0x37, 0x51, 0x88, 0x15, 0xf4, + 0x63, 0xd3, 0xc6, 0x1a, 0x18, 0x9b, 0xc3, 0xbc, 0x84, 0xb0, 0x22, 0xf6, 0x3d, + 0x65, 0x4f, 0x52, 0x0e, 0x3a, 0x7a, 0xd8, 0x8e, 0x5d, 0x8d, 0xa1, 0x50, 0x14, + 0xbe, 0x4b, 0xb9, 0x67, 0x99, 0x27, 0xdc, 0x7e, 0x0f, 0xba, 0xf0, 0x58, 0xd9, + 0x3f, 0x37, 0xc7, 0x2b, 0x28, 0x6b, 0x02, 0xb7, 0x5f, 0x3c, 0xdb, 0xfb, 0x85, + 0x0e, 0xed, 0x90, 0xcb, 0x23, 0x39, 0x24, 0x32, 0xeb, 0xc3, 0x6b, 0xd2, 0x47, + 0x54, 0x46, 0x9c, 0x03, 0x73, 0x1a, 0x7e, 0xbb, 0xed, 0x28, 0x57, 0x78, 0x49, + 0x81, 0xa0, 0x71, 0x67, 0x05, 0xd9, 0xcb, 0x47, 0xd9, 0x87, 0xf8, 0x3d, 0x34, + 0x21, 0xb1, 0x07, 0xd1, 0x55, 0xdb, 0xb6, 0x61, 0xed, 0x08, 0xf2, 0xfc, 0x2e, + 0x6b, 0x4a, 0x5b, 0x09, 0x77, 0x64, 0x51, 0xd8, 0x73, 0xb2, 0xfc, 0x63, 0x68, + 0x1c, 0xe3, 0x08, 0xc8, 0x08, 0xf5, 0x38, 0x8c, 0xb1, 0xaa, 0x55, 0x89, 0xa1, + 0x87, 0x73, 0xdb, 0x39, 0x07, 0xa0, 0x6b, 0xef, 0x62, 0xd1, 0x29, 0x60, 0xaa, + 0xe7, 0x2a, 0x2b, 0x89, 0x7e, 0x26, 0xb5, 0x75, 0xfd, 0x04, 0x02, 0x91, 0x08, + 0x24, 0x55, 0x52, 0xaf, 0x05, 0x00, 0x99, 0x5a, 0xde, 0x55, 0x61, 0xfe, 0xd4, + 0x5c, 0xf8, 0xd1, 0x14, 0xd4, 0xcf, 0x02, 0x42, 0x0c, 0x4b, 0x96, 0x2d, 0xc2, + 0x02, 0xf8, 0xa5, 0x07, 0xf3, 0xd8, 0xe8, 0xa3, 0x44, 0xfb, 0xa1, 0x0a, 0x52, + 0x7f, 0xf2, 0x22, 0x54, 0xf6, 0xc3, 0xac, 0x8f, 0x3c, 0xf9, 0x70, 0x0b, 0x1f, + 0xd2, 0xec, 0xbe, 0x9f, 0x4e, 0x91, 0xe4, 0x3a, 0x65, 0x4f, 0xff, 0x02, 0x7c, + 0xd9, 0x17, 0x4b, 0x63, 0x8e, 0x6e, 0xfe, 0xc4, 0xab, 0xfb, 0xa1, 0x87, 0xf8, + 0xf3, 0xdb, 0xa0, 0x45, 0x9d, 0xa6, 0xc3, 0xf8, 0x00, 0xcb, 0x6b, 0x61, 0x33, + 0xa8, 0xb4, 0xac, 0x1e, 0xf6, 0x58, 0xd1, 0x11, 0xc0, 0x3f, 0x07, 0x22, 0x08, + 0xdc, 0xc2, 0x07, 0xa2, 0x22, 0x3a, 0x70, 0x22, 0x92, 0x43, 0x2e, 0x83, 0x06, + 0xfc, 0x03, 0x04, 0x63, 0xa4, 0x1b, 0xca, 0xfc, 0x07, 0x39, 0x3f, 0xad, 0x54, + 0xe5, 0x05, 0x2b, 0x1f, 0x10, 0x4b, 0xe5, 0x56, 0x7b, 0x15, 0x8f, 0x84, 0xf9, + 0x1a, 0xcc, 0xed, 0x1c, 0xff, 0xc0, 0x65, 0x96, 0xb5, 0x33, 0x69, 0xbd, 0x2b, + 0x78, 0x8f, 0x15, 0x00, 0xfe, 0x5e, 0xe5, 0x6c, 0x0c, 0xe7, 0x04, 0xeb, 0xa2, + 0xc1, 0xa3, 0xa3, 0x29, 0x0d, 0xe6, 0xec, 0x68, 0xcc, 0xb5, 0xef, 0x7c, 0xd0, + 0x21, 0x2a, 0x3f, 0x66, 0x3d, 0x08, 0x61, 0x49, 0x4e, 0x09, 0x74, 0x29, 0xa8, + 0x60, 0x7b, 0xca, 0xd1, 0x62, 0x46, 0x11, 0xef, 0xa2, 0xd5, 0xc4, 0x09, 0xd1, + 0x9f, 0xf5, 0x0d, 0xeb, 0x6a, 0x74, 0xc1, 0x7d, 0x17, 0x39, 0xbc, 0x6e, 0x95, + 0x93, 0x0c, 0x8b, 0xd9, 0x23, 0xb3, 0xfa, 0x7a, 0xd3, 0xb0, 0x76, 0x94, 0x36, + 0x7b, 0x95, 0x2d, 0xbb, 0x71, 0x7f, 0x75, 0x18, 0x90, 0xc8, 0xac, 0x30, 0x36, + 0xda, 0x0d, 0xb1, 0xa0, 0x67, 0x85, 0x26, 0x2f, 0xa0, 0xfa, 0xe8, 0x7f, 0xd8, + 0x8a, 0x1e, 0xa8, 0x33, 0x01, 0x11, 0x63, 0x45, 0x54, 0x09, 0xe0, 0x43, 0xb8, + 0x40, 0xbe, 0xa3, 0xae, 0xa6, 0x33, 0x24, 0x08, 0x79, 0x7f, 0x1c, 0x25, 0x41, + 0x92, 0x32, 0xd6, 0x6f, 0x03, 0x5a, 0x8e, 0x81, 0x06, 0x08, 0xf8, 0x34, 0xed, + 0x2e, 0xaa, 0xd3, 0xcb, 0x68, 0x25, 0x0a, 0xa9, 0xb3, 0xab, 0x1a, 0x83, 0x45, + 0x32, 0xf1, 0x06, 0x50, 0xa3, 0x40, 0x0e, 0x5f, 0x58, 0x3a, 0x19, 0xb3, 0x82, + 0x57, 0x59, 0xea, 0x6c, 0x0f, 0x6f, 0xe1, 0xf2, 0x3d, 0xe5, 0x40, 0x43, 0x14, + 0x32, 0x18, 0xb6, 0x26, 0xc2, 0x04, 0x9a, 0xde, 0x8f, 0x4c, 0x1f, 0xc0, 0x58, + 0x08, 0x1b, 0x6a, 0xad, 0xdb, 0x65, 0x87, 0x77, 0x19, 0x83, 0xb7, 0x03, 0xdf, + 0x9c, 0xd4, 0x2e, 0x24, 0x96, 0x0e, 0x50, 0x8a, 0x04, 0x36, 0x11, 0x8d, 0x0a, + 0x02, 0x78, 0x6f, 0xd5, 0xe3, 0x74, 0x85, 0xe8, 0xc2, 0x8f, 0x0c, 0xfa, 0x56, + 0x3a, 0x8c, 0x48, 0xd9, 0xf0, 0x76, 0x54, 0x45, 0xa4, 0x48, 0xc9, 0x0b, 0xbf, + 0x98, 0x7b, 0xe1, 0xda, 0x54, 0x46, 0x3d, 0xf8, 0x73, 0x3b, 0x03, 0x06, 0x49, + 0x64, 0xa4, 0xb3, 0xaf, 0x19, 0x89, 0xaa, 0x36, 0x23, 0x41, 0xb9, 0xd8, 0x31, + 0x14, 0x1f, 0xf6, 0xe9, 0x93, 0x26, 0xa1, 0x55, 0x50, 0x7a, 0x0a, 0x1f, 0x4e, + 0x18, 0xb6, 0x95, 0xa4, 0xb2, 0x55, 0x66, 0x19, 0x0b, 0xb1, 0x4e, 0xfc, 0x33, + 0x3d, 0x3d, 0x64, 0x4e, 0x76, 0x9c, 0x9c, 0x15, 0x8c, 0x90, 0x8a, 0x66, 0x35, + 0x5b, 0x0c, 0x91, 0xed, 0x4d, 0x95, 0x0b, 0x99, 0xdd, 0xe9, 0x59, 0xca, 0xa2, + 0x89, 0x5a, 0x8f, 0x9a, 0x1c, 0x57, 0x63, 0x41, 0x33, 0x30, 0xdc, 0xd9, 0x36, + 0xfd, 0xe2, 0x50, 0x9e, 0x4c, 0x3a, 0x64, 0x1c, 0x19, 0x9b, 0x87, 0x76, 0x30, + 0x24, 0x78, 0xb3, 0x3c, 0x8d, 0x57, 0x47, 0x92, 0x41, 0x4c, 0x5f, 0xe5, 0xb7, + 0x4f, 0x21, 0x00, + ], + txid: [ + 0xd0, 0x61, 0x03, 0x80, 0x10, 0x28, 0x68, 0x8b, 0x84, 0x86, 0x21, 0x81, 0xdd, + 0xfa, 0x55, 0x4e, 0x8c, 0x6e, 0x23, 0xca, 0x88, 0x2f, 0xc0, 0xbd, 0xc5, 0x82, + 0x9d, 0x0a, 0xb9, 0xe6, 0xb8, 0xc1, + ], + auth_digest: [ + 0x73, 0x93, 0xc5, 0x4e, 0x08, 0x00, 0xea, 0x1e, 0x67, 0x32, 0x52, 0x9d, 0xec, + 0x07, 0xcd, 0x74, 0xd2, 0x87, 0x76, 0x9f, 0x77, 0x23, 0x08, 0xf2, 0xad, 0x7b, + 0x61, 0x4a, 0x7e, 0x05, 0xf5, 0x45, + ], + amounts: vec![], + script_pubkeys: vec![], + transparent_input: None, + sighash_shielded: [ + 0xd0, 0x61, 0x03, 0x80, 0x10, 0x28, 0x68, 0x8b, 0x84, 0x86, 0x21, 0x81, 0xdd, + 0xfa, 0x55, 0x4e, 0x8c, 0x6e, 0x23, 0xca, 0x88, 0x2f, 0xc0, 0xbd, 0xc5, 0x82, + 0x9d, 0x0a, 0xb9, 0xe6, 0xb8, 0xc1, + ], + sighash_all: None, + sighash_none: None, + sighash_single: None, + sighash_all_anyone: None, + sighash_none_anyone: None, + sighash_single_anyone: None, + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x4a, + 0x2b, 0xfc, 0x0c, 0x08, 0xb2, 0x37, 0x01, 0x02, 0x29, 0x59, 0xb5, 0xcb, 0x96, + 0x49, 0x97, 0x9e, 0x3c, 0xcf, 0x75, 0xa8, 0xda, 0xd0, 0x54, 0x60, 0x26, 0x1f, + 0xcd, 0xcb, 0x00, 0x7a, 0xeb, 0xc1, 0x5e, 0x11, 0x67, 0x5c, 0x2d, 0xb4, 0xa6, + 0xcb, 0x79, 0x38, 0xe1, 0xfe, 0x05, 0x63, 0xac, 0x6a, 0x65, 0x00, 0x75, 0x44, + 0x1e, 0x16, 0xc7, 0x07, 0xf0, 0x97, 0x14, 0x47, 0x4c, 0x96, 0x16, 0x0a, 0xa6, + 0x8e, 0xaa, 0x12, 0x31, 0x79, 0x06, 0x9c, 0xd2, 0x20, 0x44, 0x06, 0x26, 0xcd, + 0xfe, 0xed, 0x65, 0xf9, 0xfa, 0xbd, 0xaa, 0x6d, 0xb1, 0x76, 0x0d, 0xa5, 0x00, + 0x4c, 0xfd, 0x60, 0x03, 0x00, 0x01, 0x46, 0xa8, 0x32, 0x69, 0x19, 0xfa, 0x97, + 0x2c, 0xea, 0x13, 0xa4, 0x77, 0xac, 0x3a, 0x3b, 0x9d, 0x75, 0xc9, 0xe8, 0xb3, + 0x9b, 0x7d, 0x9f, 0x06, 0xf8, 0x23, 0xf6, 0x7f, 0x54, 0x22, 0x1e, 0x17, 0xa5, + 0xdb, 0x69, 0x39, 0x39, 0xfa, 0x89, 0x76, 0x6f, 0xf0, 0x98, 0xad, 0x4b, 0xc6, + 0x40, 0x37, 0xa3, 0x4a, 0x73, 0x12, 0x86, 0x05, 0x72, 0x3a, 0x24, 0x1f, 0x0e, + 0xb1, 0x54, 0x0f, 0x5f, 0x5b, 0xd1, 0x82, 0x9e, 0x40, 0x11, 0x9a, 0xa7, 0x89, + 0x7d, 0x89, 0x40, 0x4d, 0xc4, 0x96, 0x60, 0x46, 0x68, 0xf5, 0x59, 0xca, 0x67, + 0x43, 0x7d, 0x2b, 0xfb, 0xb7, 0xf5, 0x1f, 0x36, 0xe0, 0xa5, 0xb7, 0x02, 0x2c, + 0xb9, 0xa2, 0x66, 0xc6, 0xae, 0xc6, 0xe2, 0xef, 0xfb, 0xbe, 0x9f, 0xa3, 0x95, + 0x8e, 0x85, 0x62, 0x51, 0x22, 0x94, 0x63, 0xce, 0x34, 0xb3, 0xbc, 0xb8, 0xda, + 0xd5, 0x26, 0x4e, 0x9f, 0x53, 0xf8, 0x3c, 0x04, 0xb7, 0x3b, 0x98, 0xb2, 0x73, + 0x44, 0x8f, 0x27, 0xa0, 0x69, 0xe3, 0x95, 0x0c, 0xd9, 0x42, 0x72, 0x2e, 0x7c, + 0x32, 0x96, 0x33, 0xd5, 0x6d, 0x3f, 0x72, 0x2f, 0xe3, 0xe2, 0x57, 0x04, 0x17, + 0xed, 0x82, 0x05, 0xd9, 0xed, 0xf2, 0x02, 0x32, 0xb7, 0xeb, 0x2a, 0xa5, 0xf2, + 0x55, 0xce, 0xa3, 0x9d, 0x59, 0x7d, 0xf3, 0x19, 0x3d, 0x9d, 0x65, 0x85, 0x03, + 0xfd, 0x1c, 0x74, 0xcf, 0xf8, 0xc7, 0x70, 0x5c, 0x89, 0xc0, 0xbb, 0xcc, 0xda, + 0x9e, 0x66, 0x5e, 0x3b, 0x06, 0xba, 0x87, 0x9f, 0xdd, 0xf3, 0x5e, 0x0b, 0x2f, + 0x60, 0xc2, 0xa7, 0x0c, 0xb8, 0xeb, 0x9d, 0xe2, 0xf5, 0xd7, 0x38, 0xc0, 0x5e, + 0x34, 0xe5, 0x0f, 0x1f, 0x26, 0x19, 0x25, 0x8b, 0x89, 0xe5, 0x73, 0xda, 0x55, + 0x75, 0x46, 0x3d, 0x2e, 0x3b, 0xce, 0x39, 0xf7, 0x0e, 0xb4, 0x55, 0x26, 0xcd, + 0x99, 0xfa, 0xd9, 0x0f, 0x97, 0x92, 0xd0, 0xcd, 0x59, 0x3b, 0xa8, 0x6a, 0xa1, + 0xae, 0xa5, 0x03, 0xdd, 0xca, 0x5e, 0x3e, 0x57, 0x37, 0xe6, 0xfc, 0x7b, 0xab, + 0x27, 0x85, 0x12, 0x69, 0x20, 0xc4, 0x47, 0xd5, 0xe5, 0x6a, 0x75, 0xdb, 0xe8, + 0x9d, 0x68, 0x8b, 0xc0, 0xda, 0xa7, 0x9a, 0xa6, 0x2d, 0xe9, 0xea, 0x29, 0x55, + 0xf7, 0x1e, 0x1a, 0x61, 0x68, 0x2a, 0x61, 0x78, 0xf8, 0x0b, 0xca, 0xda, 0x3b, + 0x97, 0xae, 0xec, 0x77, 0xd9, 0xc8, 0x56, 0x3b, 0x06, 0x9e, 0xa0, 0x13, 0x2f, + 0x72, 0x3f, 0xbe, 0x75, 0x60, 0x2d, 0xd6, 0x29, 0xac, 0x48, 0x09, 0x93, 0xd3, + 0x71, 0x4f, 0xf0, 0x2c, 0x97, 0x0e, 0xbd, 0x83, 0xe6, 0xd6, 0xcb, 0xbe, 0x39, + 0x08, 0x6b, 0x03, 0x54, 0x20, 0xe0, 0xc2, 0x75, 0x62, 0x86, 0x58, 0xa3, 0xba, + 0x92, 0x30, 0x5c, 0xc0, 0x76, 0x98, 0xf1, 0x2e, 0xe1, 0xe4, 0x17, 0x13, 0x70, + 0xac, 0x39, 0xdf, 0x0e, 0x46, 0x6d, 0xc8, 0xec, 0xc3, 0x9d, 0xa5, 0xee, 0x47, + 0xb6, 0x82, 0x9d, 0xbb, 0xa9, 0x97, 0x0f, 0x03, 0x58, 0xed, 0x68, 0x26, 0x49, + 0x60, 0x5c, 0x7b, 0xfe, 0xe6, 0x93, 0x1a, 0x29, 0x5b, 0x14, 0xa3, 0x40, 0x76, + 0x00, 0x07, 0x4e, 0xdc, 0x79, 0xfa, 0x61, 0xe6, 0x80, 0x6f, 0x11, 0x08, 0xd3, + 0x34, 0xb4, 0xa5, 0x90, 0xf7, 0xa0, 0x26, 0xb0, 0xeb, 0x02, 0x80, 0x4d, 0x39, + 0x17, 0x46, 0x6e, 0x99, 0x91, 0x20, 0x64, 0x1c, 0xe0, 0x7e, 0xbc, 0xdc, 0x99, + 0x42, 0x60, 0x82, 0xe0, 0x77, 0x1f, 0x15, 0x9c, 0x82, 0x6a, 0x9b, 0xe6, 0xce, + 0xd7, 0x2d, 0x0e, 0x9c, 0xfa, 0x5b, 0x4b, 0x8a, 0x86, 0x40, 0xca, 0x34, 0x88, + 0xa1, 0xeb, 0x2b, 0x6e, 0x37, 0x4e, 0x8c, 0x2e, 0x00, 0x3c, 0xdf, 0xa2, 0x32, + 0x10, 0x37, 0x48, 0xb5, 0xc9, 0xdc, 0x11, 0xbb, 0x30, 0xf6, 0x46, 0xb9, 0x73, + 0xd7, 0x83, 0xf5, 0x99, 0x14, 0x17, 0x4e, 0x48, 0xbd, 0x6a, 0x84, 0xfa, 0xd8, + 0x9d, 0xbc, 0xa5, 0xc7, 0x6d, 0x0a, 0xb4, 0x14, 0x5a, 0xbd, 0x08, 0xe4, 0xd0, + 0xf2, 0xc7, 0x60, 0x25, 0xfc, 0x85, 0xfc, 0x11, 0x6c, 0xca, 0x8d, 0x30, 0x2c, + 0x8a, 0x3b, 0xeb, 0x26, 0x60, 0x3a, 0x1a, 0xf1, 0xb5, 0x93, 0x91, 0xea, 0xf4, + 0x71, 0x75, 0x9a, 0xdf, 0x19, 0x4c, 0x40, 0xc2, 0x09, 0x29, 0x8c, 0xc0, 0x51, + 0xfc, 0x79, 0x03, 0xfe, 0x40, 0x90, 0x2c, 0x35, 0x6f, 0x28, 0x27, 0x9f, 0x27, + 0x94, 0xbb, 0xb9, 0xe0, 0x0b, 0x1e, 0x22, 0x0e, 0x55, 0xb6, 0x76, 0xa1, 0x8a, + 0x9c, 0xad, 0xb8, 0x8b, 0x5b, 0x14, 0x8d, 0x38, 0xf3, 0x80, 0x90, 0xed, 0xc4, + 0xf2, 0x6f, 0x14, 0x90, 0xb6, 0xa1, 0x7c, 0xf9, 0x9f, 0x9a, 0x7c, 0x45, 0x8c, + 0x3b, 0x31, 0x82, 0x3f, 0xdf, 0x69, 0x57, 0x8c, 0x47, 0xdb, 0x5b, 0x3d, 0xda, + 0x86, 0xaa, 0xb1, 0xec, 0x9f, 0x58, 0xd9, 0x62, 0x26, 0xc6, 0xb9, 0x1d, 0xc0, + 0xf0, 0x3f, 0xe8, 0xd7, 0xdf, 0x23, 0x0f, 0x07, 0xb2, 0xfb, 0x94, 0x87, 0x76, + 0x60, 0x1e, 0x9c, 0x83, 0xf6, 0xc1, 0xcf, 0x87, 0x6f, 0xc8, 0xed, 0x44, 0xad, + 0xa0, 0xe1, 0x60, 0x8f, 0x48, 0x5c, 0x6d, 0x75, 0x67, 0x8b, 0x3c, 0x00, 0xe9, + 0x67, 0xd3, 0x4a, 0x9c, 0xf1, 0x02, 0x8c, 0x17, 0x05, 0xfa, 0x37, 0x67, 0xf4, + 0x6d, 0x4b, 0xab, 0x70, 0x28, 0xb0, 0x9b, 0x20, 0x38, 0xfc, 0x1b, 0x72, 0x7f, + 0x61, 0x9e, 0x61, 0xc4, 0xfc, 0x16, 0xbf, 0xfe, 0x65, 0x7e, 0x99, 0x12, 0x6a, + 0xc5, 0x18, 0x4f, 0xc8, 0x7f, 0x5e, 0x53, 0x01, 0x88, 0x64, 0x23, 0xb3, 0x56, + 0x87, 0x59, 0x09, 0xec, 0x92, 0xb3, 0x2d, 0x33, 0x08, 0x42, 0x53, 0xa1, 0xb9, + 0x7c, 0x5d, 0x2e, 0xd6, 0x6c, 0x7e, 0x22, 0xd1, 0x85, 0x58, 0xfe, 0x82, 0xb5, + 0xec, 0x88, 0xc6, 0x07, 0x05, 0x82, 0xfa, 0xcf, 0x75, 0x6d, 0x70, 0x32, 0x38, + 0xd9, 0xaf, 0x94, 0x19, 0x96, 0x6b, 0xe4, 0x62, 0xdf, 0xbd, 0x31, 0x5c, 0x5b, + 0xfa, 0xf0, 0x44, 0xaa, 0x69, 0x5a, 0x05, 0xe6, 0x9d, 0x3d, 0x41, 0xe7, 0x73, + 0x78, 0x75, 0x1d, 0x4e, 0x02, 0xc2, 0x66, 0xdf, 0xb5, 0xcb, 0x6a, 0x7c, 0x40, + 0x08, 0xf9, 0x44, 0x88, 0x83, 0x11, 0xe6, 0xde, 0x37, 0xdc, 0x7b, 0xdf, 0x65, + 0xd7, 0x0c, 0xab, 0x3e, 0x07, 0x8a, 0xb4, 0x4e, 0x23, 0x2b, 0x41, 0x1c, 0xaf, + 0xb2, 0x43, 0x6c, 0x29, 0x7e, 0x6c, 0x01, 0xff, 0x68, 0x56, 0x99, 0x61, 0x18, + 0x75, 0xc5, 0xc9, 0x1d, 0x6a, 0x63, 0xe0, 0x85, 0x29, 0x5c, 0x2d, 0x4b, 0xcd, + 0x75, 0x06, 0x65, 0x15, 0x39, 0x8f, 0x48, 0x6c, 0x26, 0x3e, 0x4b, 0xfb, 0xe2, + 0x6a, 0x41, 0x8e, 0xd1, 0xcd, 0xe6, 0x18, 0x4b, 0x89, 0x50, 0xfe, 0x7a, 0xac, + 0x7f, 0x20, 0xa4, 0x7b, 0xa1, 0xbf, 0xf9, 0x80, 0x4f, 0x53, 0xf6, 0x93, 0x23, + 0x2b, 0x3d, 0x5c, 0xc5, 0x84, 0x42, 0xb5, 0x11, 0xe6, 0x88, 0xf9, 0xee, 0x85, + 0x53, 0x76, 0x8a, 0x21, 0x16, 0xc6, 0xda, 0xde, 0x90, 0x70, 0x1a, 0xad, 0xb0, + 0x78, 0x4b, 0xac, 0x3f, 0xe9, 0x48, 0x80, 0x79, 0xe5, 0x56, 0x09, 0x27, 0x2c, + 0x63, 0xb5, 0x49, 0xb0, 0xc8, 0x5f, 0x11, 0x0c, 0xc9, 0xc9, 0x58, 0x68, 0x01, + 0x14, 0xb3, 0x11, 0x74, 0x80, 0xaf, 0x57, 0xcb, 0x15, 0x9e, 0xdf, 0xbe, 0x5c, + 0xb9, 0xc6, 0x2b, 0xce, 0x2c, 0xf2, 0xab, 0x29, 0xb6, 0x67, 0x11, 0xac, 0x7a, + 0xa5, 0x3a, 0x74, 0x9f, 0xfa, 0x83, 0x90, 0x7e, 0xcb, 0x69, 0x12, 0xaa, 0x56, + 0x96, 0x38, 0xde, 0xa1, 0x9e, 0x54, 0x41, 0x61, 0x1e, 0xfc, 0xa3, 0x20, 0x99, + 0x65, 0x3e, 0x8a, 0x5c, 0xa1, 0xfb, 0xbd, 0xba, 0xb1, 0xd6, 0x44, 0x71, 0xec, + 0x32, 0x0e, 0xc3, 0x8e, 0xa4, 0x88, 0x40, 0x0c, 0x9b, 0x1f, 0x4e, 0x8c, 0xb5, + 0x48, 0x0c, 0x0e, 0x92, 0x42, 0xb0, 0x86, 0xa8, 0x0e, 0xee, 0xd4, 0x90, 0xae, + 0x32, 0x00, 0x0c, 0x80, 0x09, 0xec, 0xb7, 0x1f, 0xfa, 0x39, 0xf4, 0xf3, 0xb5, + 0x74, 0x9c, 0xfd, 0x1b, 0xef, 0xe0, 0xd9, 0x66, 0x7a, 0xb3, 0x02, 0x20, 0xc2, + 0xdc, 0x04, 0x39, 0x36, 0x98, 0xb2, 0xcf, 0xa2, 0x04, 0x92, 0xf2, 0x50, 0xce, + 0x14, 0x32, 0x35, 0x81, 0x58, 0x70, 0x3d, 0xf7, 0xb1, 0x39, 0xd7, 0x45, 0xce, + 0x1f, 0xc3, 0x40, 0x78, 0x77, 0x01, 0xfb, 0x51, 0xdd, 0x5e, 0x48, 0xb8, 0x95, + 0x09, 0x41, 0x7d, 0x88, 0x89, 0x00, 0x80, 0x63, 0xf9, 0xba, 0x01, 0x5a, 0x07, + 0xd8, 0xd3, 0x9b, 0xbd, 0x00, 0x76, 0x2f, 0x59, 0x5a, 0xfa, 0xd8, 0xd8, 0x59, + 0xea, 0xab, 0xf0, 0xd8, 0x2d, 0x46, 0x33, 0xcf, 0x82, 0x98, 0xb0, 0x9b, 0xea, + 0x3f, 0x22, 0x28, 0x55, 0xa9, 0x2a, 0x08, 0x43, 0xf5, 0x2f, 0xa5, 0x8d, 0xb3, + 0xa1, 0x75, 0xc3, 0x0d, 0x2a, 0xbe, 0x64, 0x82, 0x64, 0x90, 0xcb, 0xe6, 0xca, + 0x14, 0x88, 0xfe, 0x3a, 0x01, 0x5a, 0x94, 0x6d, 0xc9, 0xc4, 0x5a, 0xc3, 0x09, + 0x25, 0x72, 0x7a, 0x13, 0xe0, 0x89, 0x78, 0xf7, 0x24, 0x03, 0x47, 0x20, 0x8a, + 0x4d, 0x25, 0x38, 0xc2, 0xd5, 0x61, 0x24, 0x37, 0x8c, 0x22, 0xc0, 0x4e, 0x23, + 0xdc, 0x28, 0xb1, 0x50, 0x19, 0xbe, 0x77, 0x6d, 0x70, 0xbf, 0xc1, 0xd2, 0x64, + 0x5b, 0x5e, 0x80, 0xd1, 0xfd, 0x84, 0x19, 0xdf, 0x72, 0x90, 0x43, 0x80, 0xe2, + 0xe1, 0xfc, 0x4d, 0xd1, 0xdf, 0x1b, 0xa3, 0xdf, 0xe4, 0x80, 0xcc, 0x84, 0x6d, + 0x51, 0x51, 0x4a, 0x06, 0x5e, 0xd7, 0x62, 0x78, 0x7a, 0xfd, 0x6e, 0xb9, 0x0b, + 0xdf, 0x8f, 0xbb, 0xad, 0x5e, 0xb3, 0xd2, 0x3f, 0xdc, 0x8c, 0x54, 0xcc, 0xa1, + 0x0f, 0xa1, 0xfe, 0x54, 0x64, 0x82, 0xf5, 0xe1, 0x42, 0x4b, 0xfd, 0xa8, 0x7a, + 0xa7, 0xfb, 0x78, 0x6e, 0x26, 0x0f, 0x26, 0x14, 0xbe, 0x08, 0x11, 0xee, 0x16, + 0xb8, 0xd2, 0x9d, 0xf9, 0xa0, 0xf3, 0x30, 0xe9, 0x70, 0x9f, 0x63, 0xc9, 0x50, + 0xfb, 0xd9, 0x03, 0xff, 0x7d, 0x5b, 0x0c, 0xa2, 0x9f, 0xd6, 0x3b, 0x0f, 0x97, + 0x51, 0x77, 0x69, 0x02, 0x5c, 0xc3, 0x6a, 0x52, 0xe0, 0xc1, 0x15, 0x93, 0x4a, + 0x3c, 0xa2, 0x58, 0xb8, 0xba, 0xb9, 0x00, 0x16, 0xa4, 0x01, 0xd5, 0xd8, 0xd7, + 0xc3, 0xb9, 0x44, 0x92, 0x5b, 0x35, 0xa9, 0x34, 0x9a, 0x1a, 0xc7, 0xd9, 0x85, + 0x21, 0x61, 0x0c, 0x2f, 0xad, 0x8b, 0x5c, 0x8b, 0x31, 0x9c, 0xd6, 0xe0, 0x5f, + 0x9b, 0xbe, 0xd3, 0x53, 0xf1, 0xd0, 0xc8, 0x65, 0xa9, 0x4a, 0xa4, 0x56, 0xdc, + 0xd1, 0x8a, 0x39, 0xe2, 0xf5, 0x85, 0xd9, 0xbe, 0xa8, 0x4e, 0xb5, 0xf0, 0xaf, + 0x8b, 0x45, 0x77, 0x94, 0x98, 0xc9, 0xae, 0x1f, 0x75, 0x5d, 0x9f, 0x90, 0xa2, + 0xc3, 0x27, 0x3e, 0x52, 0xaa, 0xd3, 0xca, 0x34, 0xb4, 0x43, 0x79, 0x1b, 0x02, + 0x99, 0x94, 0xb1, 0xee, 0x4c, 0x40, 0xfc, 0xa0, 0x05, 0x35, 0x2b, 0x8d, 0x6d, + 0x28, 0x69, 0x83, 0x17, 0x7d, 0x65, 0x5b, 0x6f, 0x34, 0xc4, 0x99, 0x32, 0x2b, + 0x65, 0xda, 0x6e, 0xb6, 0xb9, 0xe1, 0xf4, 0xd5, 0x90, 0x21, 0x25, 0xb6, 0x4c, + 0x93, 0xda, 0x74, 0xcc, 0x1a, 0x35, 0x60, 0x18, 0xb0, 0x09, 0x3b, 0xb5, 0xcc, + 0x82, 0x05, 0xb2, 0x69, 0x2f, 0x6d, 0x3e, 0x9c, 0x1c, 0xc8, 0x85, 0x41, 0xb4, + 0xd9, 0x83, 0x84, 0x54, 0x85, 0xb4, 0x50, 0xcd, 0x4b, 0x98, 0x2a, 0xba, 0x8d, + 0x2e, 0x91, 0xf4, 0x1f, 0x22, 0xee, 0xe7, 0xf3, 0x6d, 0x79, 0xcc, 0xa9, 0xc0, + 0xe0, 0x1b, 0x26, 0xc4, 0x65, 0x11, 0x18, 0xea, 0x77, 0x15, 0x14, 0xc7, 0x7e, + 0xd6, 0x0c, 0xd5, 0x24, 0x51, 0x94, 0x2d, 0xc8, 0x5b, 0x3f, 0xba, 0x44, 0x8b, + 0x2d, 0x63, 0x10, 0xf2, 0x77, 0x79, 0x42, 0x83, 0x2e, 0x21, 0xcf, 0x3d, 0x44, + 0x87, 0x4f, 0x8d, 0x04, 0xa8, 0x05, 0x26, 0xc6, 0x9f, 0xd3, 0xb5, 0x10, 0x49, + 0xe6, 0x92, 0xba, 0x45, 0xa7, 0x02, 0xee, 0x12, 0x51, 0x4a, 0xc2, 0xe1, 0x89, + 0x4f, 0x9b, 0x83, 0x66, 0x4e, 0x11, 0x98, 0x19, 0x7f, 0x03, 0x00, 0xce, 0xfe, + 0x52, 0xfd, 0xd1, 0xd2, 0xa9, 0x80, 0x35, 0x33, 0x28, 0x9f, 0x57, 0x63, 0xa6, + 0xda, 0x83, 0xf6, 0x84, 0x1d, 0xb2, 0x36, 0x4d, 0xe0, 0x55, 0x45, 0x3e, 0x2e, + 0xda, 0x74, 0xfe, 0x0e, 0x22, 0x8f, 0x05, 0xb6, 0xec, 0x57, 0x89, 0xc1, 0x3f, + 0xc2, 0x71, 0x95, 0x56, 0x15, 0x52, 0x63, 0x96, 0x6e, 0x81, 0xf5, 0x21, 0x51, + 0xe2, 0xf6, 0xe3, 0x68, 0x69, 0xd8, 0xa3, 0xc4, 0xc4, 0x96, 0xa5, 0x13, 0x63, + 0x2c, 0xaa, 0x8a, 0xbe, 0x1f, 0x27, 0x35, 0xeb, 0x60, 0xfc, 0x12, 0x85, 0x82, + 0x8e, 0xad, 0xdc, 0x54, 0x41, 0xa4, 0x02, 0xa3, 0xbf, 0x5b, 0xcd, 0x22, 0x7c, + 0xd8, 0x04, 0xe3, 0xc8, 0xca, 0x21, 0x24, 0x3c, 0xdf, 0xcd, 0x53, 0xd8, 0x66, + 0x05, 0xf3, 0xf8, 0xaf, 0x1a, 0x9c, 0xc5, 0x69, 0x33, 0x15, 0x53, 0x28, 0x28, + 0x01, 0x43, 0xfa, 0xdb, 0x3a, 0x1f, 0xc3, 0x3d, 0x76, 0x9f, 0x07, 0xff, 0xc0, + 0x1e, 0x35, 0x79, 0xe1, 0x18, 0x1f, 0x19, 0x15, 0xdb, 0x89, 0xd8, 0x2e, 0x50, + 0xbd, 0x74, 0x24, 0x08, 0x7c, 0x79, 0x7d, 0x9b, 0x7b, 0x3b, 0x7d, 0x2a, 0x53, + 0xb8, 0xff, 0xf9, 0xf2, 0xd9, 0x28, 0xab, 0x99, 0x6d, 0xce, 0x5e, 0xd2, 0x71, + 0x58, 0x98, 0xe4, 0x85, 0x8e, 0xec, 0x60, 0x78, 0xa9, 0x48, 0x8d, 0x2d, 0xa6, + 0xd1, 0x73, 0x05, 0xd0, 0xa3, 0x47, 0x18, 0x62, 0xa2, 0x22, 0x38, 0xb9, 0xbe, + 0xc2, 0x3e, 0xf2, 0xe2, 0x04, 0x1d, 0x50, 0x08, 0x73, 0x3e, 0x9e, 0xa5, 0x66, + 0x2c, 0x9f, 0xea, 0x0e, 0x4a, 0xfd, 0xf3, 0x27, 0x0c, 0x11, 0x32, 0x3b, 0xa4, + 0x8b, 0x3f, 0xaa, 0x1f, 0x73, 0xea, 0xb9, 0xb9, 0x66, 0x96, 0x30, 0xcf, 0x46, + 0xbb, 0x23, 0x27, 0xac, 0x4f, 0x2f, 0x47, 0x55, 0x6e, 0x75, 0x4a, 0x8f, 0x25, + 0x4b, 0x98, 0x21, 0xe2, 0xbc, 0xe6, 0x63, 0x8b, 0x72, 0xdb, 0xaf, 0xe8, 0x87, + 0x68, 0xd8, 0xb6, 0xaf, 0xb4, 0x40, 0xdf, 0xe8, 0xd2, 0x36, 0x27, 0xe7, 0x9f, + 0x4e, 0x4e, 0x15, 0xea, 0x7a, 0x0a, 0x6b, 0x5a, 0x4a, 0x8e, 0xb6, 0x4c, 0x0c, + 0x88, 0x4e, 0x26, 0x45, 0x95, 0xbe, 0xed, 0xf9, 0xd4, 0x9a, 0x79, 0x36, 0xbb, + 0x28, 0x7f, 0xe2, 0x8e, 0x1c, 0x29, 0x63, 0x5e, 0xae, 0xca, 0x74, 0x7d, 0x06, + 0x87, 0xcf, 0x46, 0x59, 0x02, 0xd2, 0x5f, 0x5e, 0x51, 0x58, 0x48, 0x1d, 0xaa, + 0xcd, 0xd3, 0x00, 0xb4, 0x77, 0x40, 0xbc, 0x0c, 0x62, 0x77, 0xb4, 0x47, 0xcc, + 0x26, 0x64, 0x04, 0x42, 0x43, 0xdd, 0x48, 0x11, 0x40, 0x4e, 0xcb, 0xd7, 0xc7, + 0xa6, 0x3c, 0x9f, 0xb7, 0xd9, 0x37, 0xbc, 0xd8, 0x12, 0xc2, 0x34, 0x59, 0x23, + 0xb5, 0x90, 0x26, 0x83, 0xbd, 0x2e, 0xd5, 0x4c, 0x01, 0xae, 0x04, 0x19, 0xa7, + 0xf5, 0x4e, 0x8a, 0x3a, 0x59, 0xc6, 0xa6, 0xda, 0xcf, 0x89, 0xc7, 0x37, 0x0e, + 0x79, 0xb5, 0x60, 0x13, 0x6a, 0x2b, 0x00, 0xdd, 0xb6, 0x07, 0x4d, 0x74, 0xff, + 0xc5, 0xc5, 0xdf, 0xd0, 0x6b, 0x6c, 0x51, 0x9a, 0xbe, 0xc3, 0x59, 0x6a, 0x47, + 0x61, 0x13, 0xbe, 0x41, 0x38, 0xee, 0xad, 0x5f, 0xfd, 0xe8, 0x6b, 0x1e, 0x32, + 0x40, 0x1f, 0xa3, 0x84, 0x62, 0x32, 0xd0, 0xb3, 0xc9, 0xbd, 0x56, 0x88, 0xb6, + 0x4a, 0x33, 0x09, 0x38, 0x16, 0x2a, 0x8b, 0x89, 0x29, 0xd7, 0x0c, 0x1b, 0x67, + 0x53, 0x62, 0xf4, 0xc2, 0xa9, 0xbb, 0x6b, 0x7f, 0x91, 0xeb, 0xd4, 0x7d, 0x26, + 0x3c, 0xf0, 0xa4, 0x05, 0xa2, 0x8b, 0xa7, 0x41, 0x56, 0x44, 0xd7, 0x56, 0xd0, + 0x93, 0x96, 0x97, 0xca, 0x98, 0x2b, 0x68, 0x7c, 0x9e, 0xd7, 0xe0, 0xb2, 0x32, + 0x77, 0x07, 0x3c, 0x19, 0x30, 0xa4, 0x73, 0xd1, 0x66, 0x8e, 0xf2, 0xe9, 0xae, + 0x96, 0x63, 0xcf, 0xf0, 0x58, 0x16, 0x62, 0x6c, 0xd3, 0xc5, 0xbf, 0x77, 0x16, + 0x53, 0xd7, 0x78, 0x51, 0x81, 0x35, 0x5c, 0x05, 0xae, 0xd2, 0x4a, 0x99, 0xc4, + 0xb6, 0x74, 0xd2, 0x4a, 0x0f, 0x08, 0xf4, 0xb0, 0xcf, 0xbe, 0x90, 0xf2, 0xfd, + 0xba, 0xb4, 0x24, 0x82, 0xe9, 0x8f, 0x13, 0xff, 0xfc, 0xd1, 0xad, 0x33, 0xf4, + 0xf4, 0xc0, 0x4d, 0xeb, 0xc8, 0x9f, 0x40, 0xb5, 0xdb, 0xf6, 0x45, 0x46, 0xc5, + 0x20, 0xdc, 0xa5, 0xd0, 0xec, 0xf3, 0xf6, 0x5d, 0x3a, 0x77, 0xd0, 0x12, 0x9f, + 0x60, 0x03, 0x71, 0x10, 0x8a, 0xac, 0x30, 0xa9, 0xec, 0xa8, 0xbe, 0xe5, 0x52, + 0x4f, 0xab, 0x67, 0x1f, 0xc0, 0x86, 0x58, 0x76, 0x2c, 0x87, 0x38, 0xab, 0xc9, + 0xfa, 0x76, 0x93, 0xe3, 0x9d, 0x39, 0xd7, 0x03, 0xd5, 0xcd, 0x94, 0x2b, 0x5a, + 0x55, 0xfe, 0xda, 0xfe, 0xcc, 0xae, 0xf7, 0x02, 0x17, 0x69, 0xe9, 0x2c, 0xc9, + 0xd3, 0xac, 0x7b, 0x4c, 0x23, 0xb3, 0x3f, 0xc2, 0x23, 0x21, 0x85, 0x4b, 0xa3, + 0x3f, 0x49, 0xee, 0xba, 0xdd, 0xca, 0x29, 0xb3, 0x56, 0x40, 0xe4, 0xf0, 0xc2, + 0xfd, 0x8c, 0x12, 0xb9, 0x84, 0x52, 0x97, 0xd8, 0x5d, 0xf8, 0xc8, 0xe1, 0x20, + 0x42, 0x78, 0x8a, 0xc7, 0xe1, 0x69, 0xee, 0x9e, 0x8c, 0xc8, 0xa1, 0x0b, 0xa5, + 0xb1, 0x92, 0xa1, 0x5a, 0xe1, 0xe2, 0x14, 0x95, 0xad, 0xd4, 0x8e, 0x2d, 0x02, + 0x22, 0x57, 0x52, 0x87, 0x65, 0x41, 0xb2, 0x63, 0xa2, 0x0c, 0xa7, 0x48, 0x8a, + 0x32, 0x52, 0xe3, 0xba, 0x42, 0x6a, 0x6e, 0x16, 0x0e, 0x05, 0xda, 0x46, 0xc0, + 0x95, 0xe9, 0x3f, 0xa9, 0x17, 0x00, 0x01, 0x70, 0x70, 0xde, 0x7d, 0xa2, 0xec, + 0x49, 0xf5, 0x20, 0x2a, 0xa1, 0x72, 0xac, 0xe8, 0xfc, 0xed, 0x44, 0x49, 0xa9, + 0x0b, 0x19, 0xc1, 0x20, 0x22, 0xd9, 0xd6, 0x8c, 0xd2, 0x2e, 0xeb, 0x7d, 0x10, + 0x17, 0x8f, 0x7b, 0x13, 0xf0, 0x14, 0x0b, 0x0c, 0x42, 0x1f, 0x1d, 0xcd, 0x3a, + 0x91, 0x11, 0x78, 0x9f, 0x52, 0xb2, 0x5e, 0x61, 0x6f, 0xb2, 0xa3, 0x57, 0xac, + 0xca, 0xde, 0x63, 0x57, 0xfa, 0x1a, 0xe6, 0xc8, 0x83, 0x2e, 0xd5, 0x94, 0x13, + 0x85, 0x51, 0x2c, 0x26, 0xd5, 0xa5, 0xae, 0x51, 0x40, 0x9e, 0x7f, 0x26, 0x04, + 0x53, 0x3c, 0x0f, 0xdf, 0xc8, 0x0e, 0xe2, 0xb7, 0x61, 0x45, 0x40, 0x0e, 0x36, + 0x9d, 0xfd, 0x8a, 0xa1, 0x80, 0x49, 0x7c, 0xf4, 0xc7, 0x90, 0xe8, 0xd9, 0xb7, + 0x32, 0x4c, 0x05, 0xc8, 0xb3, 0x66, 0x35, 0x4f, 0x90, 0x9b, 0xe7, 0x1e, 0x52, + 0xc0, 0x90, 0x80, 0xfb, 0x27, 0x71, 0xcc, 0xe1, 0x83, 0x03, 0x18, 0xa2, 0x47, + 0x68, 0xc7, 0x3a, 0x65, 0x91, 0x1f, 0xda, 0xda, 0x91, 0x58, 0x40, 0xd8, 0x79, + 0x65, 0xca, 0x14, 0xdd, 0x18, 0xc7, 0x4f, 0xab, 0xe3, 0x9b, 0xa3, 0x54, 0xc1, + 0x9e, 0x8d, 0x58, 0xff, 0x42, 0x74, 0xeb, 0xa8, 0xc6, 0x3f, 0x0f, 0xa1, 0x70, + 0xa6, 0x3c, 0xbf, 0xce, 0x2c, 0xf8, 0x7b, 0xdc, 0xdf, 0x32, 0xb7, 0xe1, 0x98, + 0x04, 0x54, 0x1c, 0x2c, 0x58, 0x97, 0x24, 0xef, 0xc6, 0x9b, 0xc4, 0x65, 0xd0, + 0x90, 0x8e, 0x09, 0xb8, 0x4d, 0x1f, 0x50, 0x41, 0x2b, 0xb0, 0x7f, 0x47, 0xfb, + 0x9f, 0x0d, 0x47, 0x29, 0x28, 0x16, 0x14, 0xca, 0xca, 0xb6, 0x14, 0xef, 0x65, + 0xce, 0xba, 0x13, 0x96, 0xb5, 0x24, 0x9d, 0x2c, 0x61, 0x70, 0x4f, 0xb6, 0xf3, + 0x48, 0x44, 0x71, 0x83, 0xf9, 0x88, 0x2a, 0x98, 0xae, 0x9c, 0x71, 0xa7, 0x66, + 0x33, 0xe0, 0x5b, 0x33, 0x3a, 0x1b, 0xce, 0xee, 0xc9, 0xbd, 0x44, 0xb8, 0x87, + 0x6f, 0xab, 0x6c, 0xd7, 0x2a, 0x5e, 0x33, 0x5c, 0x97, 0x7a, 0x8c, 0x56, 0xca, + 0x16, 0x7b, 0x1a, 0x19, 0x8e, 0x93, 0x1b, 0xf2, 0x85, 0xf6, 0x86, 0x81, 0xfc, + 0x5a, 0xca, 0x84, 0x66, 0x76, 0xe8, 0x9b, 0x17, 0xee, 0x76, 0x9a, 0x08, 0xf9, + 0xb4, 0x60, 0xfe, 0x4e, 0x48, 0x81, 0xf9, 0xb2, 0x0f, 0xed, 0xb3, 0x9d, 0x1f, + 0xc6, 0x66, 0x5d, 0x10, 0x6b, 0xaa, 0x5a, 0x93, 0x14, 0x0d, 0x1d, 0xda, 0xca, + 0xe4, 0xa7, 0x59, 0x0f, 0x5a, 0xb0, 0x78, 0x52, 0xc1, 0x81, 0x1f, 0x1a, 0x03, + 0x5c, 0x3f, 0x1a, 0x60, 0xb1, 0x54, 0x22, 0x6c, 0x9d, 0xb0, 0x8f, 0xfd, 0xd0, + 0xb6, 0xde, 0xee, 0x72, 0x2a, 0x90, 0x07, 0x6c, 0xa7, 0xc6, 0xd6, 0x04, 0xfe, + 0x83, 0x32, 0x86, 0x8e, 0x1d, 0x59, 0x32, 0x2f, 0x26, 0x2b, 0xbf, 0xbe, 0x95, + 0xcc, 0x5b, 0x9b, 0x1e, 0x20, 0x31, 0x0b, 0x76, 0x35, 0x0b, 0x4d, 0x60, 0x4c, + 0xd1, 0xa4, 0x58, 0x66, 0x1d, 0xc4, 0x74, 0xfe, 0x4c, 0x58, 0x79, 0x04, 0xc0, + 0x53, 0x47, 0x5e, 0x17, 0x61, 0xb8, 0x0a, 0x60, 0xcc, 0x48, 0xed, 0xd9, 0x54, + 0x34, 0xdf, 0x02, 0x3b, 0x94, 0xa5, 0x8a, 0x99, 0xd6, 0x25, 0x66, 0xe0, 0x0f, + 0x67, 0x77, 0x90, 0xdc, 0xa0, 0x76, 0xa4, 0xf1, 0x67, 0x47, 0x0c, 0x43, 0xa8, + 0x1e, 0x6c, 0x32, 0xf0, 0xd0, 0x0d, 0x23, 0x65, 0x6b, 0xa7, 0x48, 0x28, 0xb8, + 0xe4, 0xd4, 0x75, 0x38, 0xe5, 0x0c, 0x0e, 0xce, 0xe2, 0xcd, 0xfe, 0x0d, 0x59, + 0x43, 0xe2, 0x3e, 0x3f, 0x17, 0x33, 0x82, 0x9d, 0x3e, 0x1b, 0x80, 0x53, 0x93, + 0x30, 0xe0, 0x6c, 0x6a, 0xe3, 0xd0, 0xec, 0xe7, 0x38, 0xc0, 0xdd, 0x74, 0x2a, + 0xa5, 0x86, 0x0f, 0x43, 0xb5, 0x30, 0xf0, 0x3d, 0xc5, 0x5d, 0xeb, 0xf7, 0x20, + 0x12, 0x3f, 0x8f, 0xba, 0xf2, 0xe5, 0x68, 0x59, 0xa5, 0x34, 0x3d, 0x46, 0x12, + 0xee, 0x21, 0x46, 0x4d, 0xb2, 0x50, 0x1d, 0x4f, 0x35, 0x31, 0x47, 0xf3, 0xe1, + 0xa5, 0xab, 0xb8, 0x93, 0x85, 0x08, 0x16, 0xc8, 0x0a, 0xf2, 0x9d, 0x88, 0x92, + 0x48, 0xc9, 0x2a, 0x72, 0x9a, 0x0e, 0x2b, 0xe2, 0xb6, 0x6c, 0xc1, 0x3a, 0xc5, + 0xd9, 0x96, 0xb2, 0x50, 0x14, 0x66, 0x6d, 0xdc, 0x63, 0x8a, 0x1f, 0xd2, 0xa0, + 0xaf, 0xee, 0x93, 0xd9, 0x8e, 0x31, 0xdc, 0x1e, 0xa8, 0x58, 0xd7, 0x2b, 0x84, + 0xbb, 0xd3, 0x2f, 0xc0, 0xc6, 0x16, 0xe7, 0xd4, 0xab, 0xda, 0xf3, 0xc1, 0x8f, + 0xf9, 0x60, 0x13, 0x24, 0x5d, 0x83, 0xb3, 0xbd, 0xf9, 0x21, 0xf4, 0x03, 0xf1, + 0xae, 0xcf, 0xdd, 0xd8, 0x85, 0xfd, 0xcf, 0xc7, 0x33, 0x87, 0x0f, 0x76, 0x0c, + 0xb8, 0x7e, 0xd4, 0xfc, 0xd9, 0xcc, 0xa9, 0x33, 0x2e, 0x8e, 0x1c, 0x85, 0x62, + 0x3b, 0x20, 0x66, 0x09, 0xf8, 0x87, 0xeb, 0xdb, 0xcf, 0x9d, 0xa1, 0x0f, 0x38, + 0x14, 0x19, 0x7a, 0x9f, 0x82, 0x07, 0x05, 0xea, 0xa1, 0x28, 0x3a, 0xc7, 0x93, + 0x16, 0x83, 0x08, 0x3f, 0x22, 0xfc, 0x4d, 0xc7, 0xff, 0x68, 0x1a, 0xb8, 0x46, + 0x18, 0x6f, 0x22, 0xd5, 0x73, 0x08, 0x43, 0xde, 0x71, 0x00, 0xf0, 0x31, 0x17, + 0xa3, 0xbb, 0xa0, 0x64, 0xca, 0x3c, 0xea, 0x93, 0xf3, 0xab, 0xd3, 0x0b, 0xe6, + 0xdb, 0x09, 0x35, 0x52, 0x9d, 0xed, 0x0b, 0x50, 0xec, 0xef, 0x9f, 0x59, 0x6d, + 0xb0, 0x1a, 0x87, 0xa8, 0xda, 0xdb, 0x82, 0x7a, 0x1b, 0xe8, 0xb5, 0x79, 0x9b, + 0x33, 0xc9, 0x9a, 0x82, 0x2b, 0x73, 0xf7, 0xe6, 0x62, 0xed, 0x6f, 0x86, 0x03, + 0x45, 0xa2, 0x62, 0x83, 0xc1, 0xb4, 0x08, 0x0e, 0xcd, 0xf5, 0x79, 0xd7, 0x0e, + 0x7b, 0x0c, 0x0a, 0xb7, 0x1e, 0x11, 0x6e, 0xe2, 0xd9, 0xda, 0x27, 0x46, 0x1e, + 0x28, 0x12, 0x2a, 0x09, 0xca, 0x04, 0xde, 0x38, 0x76, 0x50, 0x2f, 0xd2, 0x4d, + 0xff, 0x92, 0x09, 0x55, 0x2f, 0x91, 0x13, 0x87, 0x70, 0x78, 0xa0, 0x94, 0xe0, + 0xe5, 0xf8, 0xce, 0xbb, 0x41, 0x54, 0xe0, 0x3a, 0x6b, 0x56, 0xf6, 0x04, 0xdf, + 0x98, 0x4b, 0xd2, 0x9e, 0xfd, 0x4f, 0x88, 0xc3, 0xf6, 0x29, 0xea, 0x2b, 0xba, + 0x91, 0x27, 0xea, 0x5a, 0x6c, 0xc5, 0xa3, 0x9d, 0x74, 0x1e, 0xdd, 0x71, 0x1a, + 0x24, 0x44, 0x7f, 0xe0, 0x6c, 0xf8, 0x45, 0x5a, 0x44, 0x06, 0x5e, 0x24, 0x52, + 0x76, 0x07, 0x0b, 0x3d, 0xae, 0x51, 0x8d, 0x20, 0x00, 0x00, 0xe0, 0x8d, 0x42, + 0xb5, 0x13, 0x48, 0x97, 0xb4, 0x36, 0xbf, 0xf3, 0xa1, 0xbc, 0xef, 0xc5, 0x3a, + 0xec, 0x30, 0xed, 0x89, 0x11, 0x0f, 0x90, 0x10, 0x97, 0x8d, 0xf7, 0x0c, 0xe4, + 0xac, 0x6f, 0x1d, 0x80, 0x25, 0x50, 0xcf, 0x20, 0xe4, 0x44, 0x36, 0x06, 0x3e, + 0x3a, 0x15, 0xb5, 0x1e, 0xcb, 0xaa, 0x4a, 0x59, 0xdf, 0x2f, 0xe0, 0x15, 0xcb, + 0x36, 0x37, 0xf3, 0x72, 0x83, 0x04, 0xec, 0x3a, 0x72, 0x4f, 0x31, 0x49, 0x27, + 0x5e, 0x7b, 0x63, 0x4b, 0xd8, 0x82, 0x78, 0xd9, 0x3f, 0xab, 0x6b, 0x94, 0x16, + 0x68, 0xd9, 0x13, 0xdb, 0xcd, 0x89, 0x21, 0x3f, 0x3b, 0xac, 0xfc, 0xfd, 0x20, + 0x02, 0xea, 0x86, 0x6f, 0x3f, 0x17, 0x07, 0x35, 0x12, 0x64, 0xb6, 0x67, 0x88, + 0xf4, 0xeb, 0x7f, 0x68, 0xc5, 0xa5, 0x36, 0xfa, 0x9c, 0x13, 0x0d, 0x8f, 0x6d, + 0xa1, 0xbb, 0x03, 0x1d, 0xf9, 0xe2, 0x20, 0xd8, 0xca, 0x8b, 0xab, 0x46, 0xdd, + 0xcf, 0x9c, 0x35, 0xfa, 0x63, 0x48, 0x09, 0xa7, 0x3d, 0xcd, 0x91, 0xb7, 0x9f, + 0x5b, 0xcb, 0x98, 0x7b, 0x20, 0x54, 0x4b, 0xb5, 0x2a, 0xaf, 0x0d, 0x9e, 0x3a, + 0xea, 0x91, 0x93, 0xbc, 0xb7, 0x26, 0xcf, 0x9c, 0xb4, 0xa5, 0xda, 0xe1, 0x27, + 0x96, 0x9c, 0x5a, 0xb7, 0xc4, 0x0f, 0x2f, 0xc6, 0x66, 0x56, 0xe5, 0x01, 0xf2, + 0x51, 0x8d, 0x01, 0x25, 0x9d, 0x57, 0x76, 0x3d, 0xf2, 0x22, 0x7b, 0xe5, 0x12, + 0x04, 0xe9, 0xde, 0xca, 0x8d, 0x9e, 0xb6, 0x26, 0x6f, 0x65, 0x9b, 0x33, 0x55, + 0xc8, 0x97, 0x7e, 0xae, 0x7e, 0x9e, 0xd5, 0x39, 0xd1, 0x79, 0x39, 0xf0, 0xc6, + 0x16, 0x01, 0x1f, 0x53, 0xcc, 0x6a, 0xac, 0xd0, 0xf4, 0x82, 0x0b, 0xfd, 0x51, + 0x43, 0x52, 0x57, 0x5c, 0xda, 0xdb, 0x61, 0x90, 0x6d, 0x4e, 0xf6, 0x8d, 0x54, + 0xf7, 0xf4, 0xfb, 0x1f, 0x0c, 0xb7, 0x88, 0x31, 0x10, 0x10, 0x37, 0x89, 0x29, + 0x42, 0x90, 0x7c, 0x3e, 0xf6, 0xda, 0x52, 0xce, 0x31, 0xb0, 0x90, 0x51, 0x10, + 0x5b, 0x6e, 0x0a, 0xaf, 0x20, 0x84, 0xf9, 0xe3, 0x2d, 0x1f, 0xa2, 0x7c, 0xad, + 0x0c, 0xdd, 0x25, 0x62, 0xfa, 0xae, 0x49, 0x43, 0x0d, 0xf6, 0xf9, 0x4d, 0x05, + 0x10, 0x0b, 0x2d, 0xdd, 0x36, 0xb1, 0x3c, 0x4d, 0xf9, 0xd4, 0x56, 0xf6, 0x48, + 0x0b, 0xb1, 0xaf, 0xa6, 0x20, 0x26, 0xea, 0x80, 0x97, 0x94, 0xd3, 0xb7, 0x4d, + 0x78, 0x01, 0x00, + ], + txid: [ + 0x1b, 0xc3, 0x35, 0x69, 0x8d, 0xf8, 0x76, 0x82, 0x88, 0xe8, 0xa2, 0x7f, 0x5f, + 0x6b, 0x6e, 0x4a, 0x91, 0x49, 0x85, 0x9e, 0xe5, 0x6c, 0x11, 0xd8, 0x5f, 0x6c, + 0xc0, 0x37, 0xd9, 0x5c, 0x48, 0x8c, + ], + auth_digest: [ + 0x97, 0xf5, 0x01, 0x0d, 0x1f, 0xd8, 0xf9, 0xad, 0x70, 0x65, 0xd5, 0x73, 0x06, + 0xf0, 0xaf, 0xa1, 0x14, 0xf9, 0x2b, 0xb4, 0xb7, 0xae, 0x42, 0x5a, 0x9e, 0xc9, + 0x28, 0x92, 0xce, 0xcc, 0x02, 0xa9, + ], + amounts: vec![476324011816735, 1087109908722977], + script_pubkeys: vec![vec![], vec![0xac]], + transparent_input: Some(0), + sighash_shielded: [ + 0x86, 0x33, 0xf3, 0x5e, 0xdf, 0xab, 0xdf, 0x26, 0x58, 0xea, 0xf0, 0xb4, 0x32, + 0xe0, 0x9d, 0x8a, 0x77, 0xb1, 0x05, 0x22, 0xcf, 0x00, 0x6a, 0xf8, 0x97, 0x0b, + 0x6b, 0x29, 0xc7, 0x1a, 0xfc, 0x5e, + ], + sighash_all: Some([ + 0x7f, 0xb7, 0x7f, 0xab, 0x76, 0x42, 0x74, 0x3f, 0xbc, 0x80, 0x7a, 0x8f, 0xaf, + 0x34, 0xc2, 0x7d, 0x8e, 0xe2, 0xa1, 0x73, 0xb0, 0x50, 0x33, 0xd9, 0x8c, 0x28, + 0xa9, 0xdf, 0xc4, 0x73, 0x83, 0x2f, + ]), + sighash_none: Some([ + 0xe1, 0x90, 0xb2, 0xd7, 0x47, 0x25, 0x1b, 0x58, 0x54, 0xd6, 0xf3, 0xb0, 0xa2, + 0x37, 0x01, 0xb9, 0xaf, 0x90, 0x0f, 0xe1, 0x12, 0xd0, 0xa2, 0x85, 0xb8, 0x77, + 0xb8, 0x5a, 0xae, 0x36, 0x07, 0x7a, + ]), + sighash_single: None, + sighash_all_anyone: Some([ + 0xc7, 0x56, 0x1f, 0xc8, 0x03, 0x7d, 0x3c, 0x53, 0x89, 0xcd, 0x7a, 0x61, 0x95, + 0xf0, 0x54, 0x46, 0x61, 0xd7, 0x37, 0xcc, 0x38, 0x2f, 0x64, 0xf7, 0x4b, 0x2a, + 0xfb, 0x5e, 0xea, 0x4b, 0x91, 0xbb, + ]), + sighash_none_anyone: Some([ + 0x8a, 0x0b, 0xe1, 0xf3, 0x1e, 0x6d, 0x86, 0xfa, 0x0c, 0x2e, 0x49, 0xbe, 0x57, + 0x50, 0x3c, 0x81, 0x46, 0x67, 0x4c, 0x12, 0x1a, 0x5c, 0xa2, 0xed, 0xac, 0xab, + 0xeb, 0xbc, 0x89, 0x1c, 0xc4, 0xda, + ]), + sighash_single_anyone: None, + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0xd9, + 0x86, 0xb6, 0x37, 0x7f, 0x33, 0x67, 0x1c, 0x02, 0xa7, 0x42, 0x5d, 0xb2, 0x88, + 0x86, 0xb1, 0xa2, 0x61, 0x36, 0x6d, 0xa8, 0xa1, 0x39, 0x86, 0x65, 0xbe, 0xed, + 0x3b, 0xe9, 0xbc, 0x2e, 0x05, 0x5e, 0x71, 0x1b, 0x7d, 0x36, 0xdd, 0xbd, 0xd3, + 0x65, 0xcc, 0xdc, 0xd7, 0xfc, 0x00, 0xfe, 0x71, 0x29, 0x66, 0x95, 0x08, 0xda, + 0xc0, 0xad, 0x2d, 0x55, 0xee, 0x7f, 0xc6, 0x0b, 0xce, 0x22, 0x88, 0x50, 0xba, + 0x7b, 0x94, 0x3a, 0x8d, 0x50, 0xff, 0xcb, 0x2a, 0x67, 0x06, 0x51, 0xd3, 0x15, + 0xd8, 0x71, 0x9c, 0x7b, 0x57, 0xf6, 0x37, 0x07, 0x65, 0x63, 0x52, 0x52, 0xac, + 0x65, 0x00, 0xa7, 0x69, 0x0c, 0x23, 0x03, 0xcc, 0x09, 0xe8, 0x62, 0x8a, 0x83, + 0x02, 0x00, 0x01, 0x52, 0x37, 0x6d, 0x47, 0xf4, 0x5b, 0x3d, 0x06, 0x00, 0x08, + 0x51, 0x00, 0x6a, 0xac, 0x53, 0x63, 0x00, 0x52, 0xe8, 0xe3, 0x17, 0x16, 0x5c, + 0x3a, 0x06, 0x00, 0x01, 0x6a, 0x00, 0x00, 0x03, 0xf1, 0x24, 0x90, 0xec, 0x57, + 0xfd, 0x12, 0xc0, 0x43, 0x73, 0xd8, 0xf9, 0x43, 0x19, 0x52, 0x13, 0x0e, 0x97, + 0x55, 0x7f, 0xae, 0x15, 0x3e, 0x01, 0x12, 0xfc, 0x0a, 0x05, 0x42, 0xa9, 0x5c, + 0x12, 0xb2, 0x66, 0x75, 0x97, 0x76, 0x79, 0xb0, 0x28, 0x24, 0x45, 0x70, 0x2b, + 0x2f, 0x02, 0x6b, 0x5f, 0x6c, 0x8f, 0x3b, 0x12, 0x82, 0x21, 0xa7, 0x90, 0xd9, + 0x2c, 0x89, 0x5b, 0x94, 0x27, 0x0f, 0x29, 0x92, 0xd3, 0x3e, 0x05, 0x29, 0xa4, + 0x82, 0x85, 0xe1, 0x93, 0xb0, 0xb5, 0x34, 0xc1, 0xa4, 0x0e, 0x01, 0x88, 0xbb, + 0xcc, 0x72, 0x0e, 0x23, 0xe7, 0x4c, 0xb2, 0xa2, 0xd1, 0x84, 0xcd, 0xe2, 0x1e, + 0xfb, 0x84, 0x8f, 0xa1, 0xdf, 0x6b, 0xb1, 0xdc, 0x43, 0x95, 0x40, 0xf6, 0x3c, + 0x9c, 0x7a, 0x9d, 0x5f, 0x88, 0x13, 0x40, 0x29, 0x62, 0x65, 0x1e, 0xe9, 0x84, + 0x39, 0x02, 0xb6, 0xc3, 0x98, 0x2d, 0x9e, 0xc2, 0x1c, 0x6f, 0x1f, 0x1d, 0x94, + 0x51, 0x15, 0xa9, 0xac, 0xe8, 0x3c, 0x0d, 0xb3, 0x60, 0xb3, 0xa1, 0x55, 0x28, + 0x06, 0xc8, 0x3a, 0x2c, 0x63, 0x94, 0x1d, 0x06, 0x05, 0xc9, 0x0d, 0xa1, 0x7f, + 0xc0, 0xc3, 0x5d, 0x1c, 0xe3, 0x63, 0xce, 0xf1, 0x13, 0x28, 0xf3, 0x87, 0xc4, + 0x01, 0xfe, 0xf2, 0x7a, 0x67, 0xa6, 0x29, 0x2f, 0x6f, 0x72, 0xb0, 0xa1, 0xd6, + 0xc3, 0x89, 0x16, 0x2d, 0x16, 0x2e, 0xf0, 0x50, 0xae, 0x5f, 0x3d, 0xdb, 0xb5, + 0x5c, 0xaa, 0xbc, 0xa9, 0xa1, 0xbe, 0x89, 0xb4, 0x63, 0x49, 0x4d, 0x74, 0x39, + 0xfb, 0x56, 0x47, 0xa9, 0x18, 0x12, 0x8b, 0x96, 0x25, 0xd3, 0x3e, 0xac, 0xa6, + 0x19, 0xd5, 0x2f, 0x03, 0x5f, 0xe6, 0x08, 0x9c, 0xe8, 0xd8, 0xb9, 0x0f, 0xe3, + 0x67, 0x0d, 0x8c, 0x5a, 0x2e, 0x3e, 0x05, 0x49, 0x69, 0xa3, 0xd9, 0x7e, 0x61, + 0xb5, 0xe6, 0x30, 0x67, 0x4f, 0xc7, 0x08, 0x57, 0xf1, 0xbb, 0xf1, 0x0f, 0xdc, + 0x40, 0x49, 0xef, 0xf5, 0x60, 0xeb, 0xa5, 0xf2, 0x2a, 0xcc, 0x8d, 0x77, 0xdb, + 0xee, 0x0b, 0x20, 0x55, 0x7f, 0xa4, 0xd0, 0x33, 0x31, 0x72, 0xcb, 0xb5, 0xcb, + 0xcc, 0x2b, 0x13, 0x5f, 0x2c, 0xcd, 0xe0, 0x14, 0xe6, 0x3e, 0xbe, 0x4e, 0xdf, + 0x92, 0x5e, 0x61, 0xba, 0x2a, 0x32, 0x0c, 0xd3, 0x99, 0x91, 0x5a, 0xdd, 0xfc, + 0xeb, 0x1a, 0xd0, 0x69, 0xa9, 0xfd, 0x5b, 0x62, 0x10, 0xa4, 0xb6, 0xe5, 0x04, + 0x52, 0xb1, 0xf9, 0x06, 0xdd, 0x16, 0xf0, 0x16, 0x68, 0xf0, 0xaf, 0x56, 0x6a, + 0x28, 0x7c, 0xce, 0xfc, 0xd8, 0x94, 0x73, 0x41, 0x85, 0x9a, 0xe7, 0xdc, 0x3a, + 0x06, 0xf6, 0xbf, 0x15, 0x74, 0xfe, 0xb9, 0x31, 0xf9, 0x27, 0xe2, 0xd5, 0x05, + 0xf6, 0x08, 0x59, 0x9e, 0x23, 0xb0, 0x5a, 0xf7, 0xc3, 0x23, 0x69, 0x83, 0x97, + 0xa8, 0x01, 0xdc, 0x7f, 0x78, 0x82, 0x5c, 0xc7, 0xeb, 0x9f, 0xcc, 0xe6, 0xc6, + 0xc4, 0xf8, 0xf6, 0x88, 0x39, 0xd3, 0x0a, 0xc5, 0x67, 0x14, 0x8e, 0x70, 0x84, + 0xdb, 0x2b, 0x37, 0x58, 0x30, 0xa0, 0x7b, 0x30, 0x5f, 0xed, 0xd6, 0x07, 0xa3, + 0x47, 0xfa, 0x65, 0xde, 0xf0, 0x1d, 0x4e, 0x1f, 0xd6, 0xc1, 0x6b, 0x4b, 0x47, + 0xf5, 0xb0, 0x1b, 0x43, 0x65, 0xb7, 0x72, 0x26, 0xe6, 0x0f, 0xdd, 0x40, 0xf2, + 0x2a, 0x39, 0x5a, 0xa2, 0x35, 0xf0, 0xdf, 0xda, 0x8f, 0xb4, 0xd3, 0xde, 0x65, + 0xb0, 0xcf, 0x4f, 0x4c, 0x22, 0x0b, 0x3b, 0x4a, 0x9e, 0x32, 0xbc, 0x0d, 0xb6, + 0x4f, 0x16, 0x2c, 0x07, 0xdf, 0x42, 0xa1, 0x01, 0x99, 0x03, 0xa6, 0x7c, 0xda, + 0x69, 0x3d, 0xde, 0xb5, 0xca, 0x39, 0xa0, 0xfe, 0x50, 0x08, 0x50, 0xec, 0x7c, + 0x06, 0xbe, 0xe7, 0x18, 0x66, 0xb3, 0x55, 0xcc, 0xbc, 0x07, 0x8c, 0xd4, 0xdc, + 0x03, 0x6f, 0xda, 0xa8, 0x1c, 0xb2, 0xde, 0x99, 0xcc, 0x88, 0xf6, 0x0a, 0x49, + 0x46, 0x42, 0x87, 0xf5, 0x9f, 0xc7, 0x14, 0x8b, 0x1a, 0xfb, 0x4a, 0x2f, 0x9b, + 0xb8, 0x97, 0x14, 0xe1, 0xeb, 0x8c, 0x03, 0x61, 0xe5, 0x99, 0x2a, 0x5b, 0x79, + 0xcd, 0xbb, 0x91, 0xd9, 0xbf, 0x29, 0xeb, 0x59, 0x8c, 0xbb, 0x4b, 0xda, 0x92, + 0x3d, 0x26, 0x7f, 0xea, 0xcb, 0x91, 0xce, 0x72, 0xd6, 0x1a, 0xb1, 0xea, 0x00, + 0xf5, 0x6a, 0xa6, 0x76, 0x6e, 0xab, 0xc4, 0x7d, 0xca, 0xa6, 0x9a, 0x02, 0x4b, + 0xbf, 0xf2, 0xf2, 0x96, 0x91, 0x7f, 0x17, 0xa3, 0xf8, 0xc9, 0x3e, 0x1b, 0xf2, + 0x9c, 0x3c, 0xfc, 0x99, 0x1a, 0x2b, 0xe8, 0xcf, 0xa7, 0x0e, 0x5d, 0xe3, 0xf2, + 0xdd, 0x52, 0xa7, 0x55, 0x01, 0x38, 0x68, 0x7a, 0xec, 0x28, 0x92, 0x6f, 0xa1, + 0x68, 0xb1, 0x81, 0xdb, 0x72, 0x82, 0xbd, 0x60, 0xda, 0xd3, 0x31, 0x0d, 0xfe, + 0x54, 0x2c, 0xeb, 0xe6, 0x94, 0x74, 0x00, 0x25, 0xc7, 0xec, 0x2a, 0x20, 0x43, + 0xfe, 0xbb, 0x77, 0x9f, 0x7f, 0x37, 0x89, 0xa5, 0xe2, 0x42, 0xdb, 0x48, 0x03, + 0xee, 0x36, 0x72, 0x52, 0xc4, 0x63, 0xc9, 0xa8, 0x8b, 0x41, 0x7b, 0x70, 0x86, + 0x6d, 0x9a, 0xfb, 0x7a, 0x08, 0x27, 0x68, 0x01, 0xf9, 0x22, 0x7c, 0x63, 0x81, + 0xf1, 0x5c, 0xc0, 0x94, 0xac, 0x7b, 0xd1, 0x54, 0xa4, 0xce, 0xf9, 0x0b, 0x48, + 0x47, 0xdc, 0x16, 0x8a, 0x01, 0xf1, 0xe3, 0x1e, 0xec, 0x74, 0xa7, 0xef, 0xce, + 0xba, 0x11, 0xf5, 0x07, 0x69, 0xf5, 0xd8, 0xf5, 0x4d, 0x36, 0x20, 0xc2, 0x3e, + 0xc8, 0x99, 0x3f, 0x7a, 0xef, 0x27, 0xc1, 0xd3, 0x51, 0x96, 0xb1, 0x02, 0xb3, + 0xcf, 0x3f, 0xed, 0x8b, 0xf8, 0x5d, 0x8a, 0x45, 0xf6, 0x96, 0x83, 0xec, 0xdd, + 0x1a, 0x23, 0x44, 0xef, 0xb8, 0x48, 0x07, 0xd9, 0x0f, 0x18, 0x35, 0xb4, 0xf2, + 0xf2, 0x4d, 0x8f, 0xf8, 0x12, 0x30, 0x47, 0xeb, 0x9f, 0x7d, 0x30, 0x62, 0x3e, + 0x14, 0x29, 0x0d, 0x56, 0x17, 0x96, 0x3b, 0x42, 0x21, 0x40, 0x4a, 0xe7, 0x61, + 0xc8, 0x6b, 0xec, 0x7a, 0x07, 0xbf, 0x81, 0xa0, 0xb9, 0xa7, 0xf7, 0xd0, 0x87, + 0xac, 0x26, 0xce, 0x3d, 0xfa, 0x9c, 0x93, 0xfe, 0xea, 0xeb, 0xd1, 0x0d, 0xc1, + 0x88, 0xc6, 0x27, 0xd4, 0xb9, 0x1d, 0x2a, 0x79, 0x01, 0xdc, 0x39, 0x4e, 0x52, + 0x39, 0x05, 0x0a, 0x17, 0xec, 0xd5, 0x33, 0x20, 0xa5, 0xd7, 0x72, 0x4c, 0xd4, + 0xf9, 0x82, 0x53, 0x3e, 0x07, 0x44, 0xb3, 0x28, 0x96, 0xe1, 0xb2, 0x30, 0xc9, + 0xc3, 0x22, 0xbf, 0xed, 0x2b, 0x86, 0x10, 0x56, 0x33, 0x25, 0xd0, 0x31, 0x49, + 0x48, 0xd0, 0xae, 0xf3, 0xd4, 0x1a, 0xd3, 0x0c, 0x87, 0xf9, 0xb0, 0xf6, 0xdc, + 0x37, 0x97, 0x3b, 0x9c, 0x06, 0x72, 0xf5, 0x44, 0x51, 0x7f, 0x90, 0xe4, 0x3b, + 0x1b, 0x81, 0x16, 0xda, 0xdc, 0x01, 0x6d, 0x19, 0x26, 0xc8, 0x48, 0x0d, 0x4e, + 0x23, 0x9c, 0x2d, 0x0c, 0x08, 0x84, 0xfa, 0x47, 0x8f, 0x4c, 0xed, 0x9d, 0x8f, + 0x17, 0xa6, 0xeb, 0x76, 0xe7, 0x8a, 0x00, 0xeb, 0x44, 0x73, 0x76, 0x9a, 0xd9, + 0x9d, 0xb0, 0x69, 0xdc, 0x94, 0x28, 0x33, 0xcb, 0xf0, 0xf6, 0xf3, 0xeb, 0xc7, + 0x8d, 0x78, 0x01, 0x6b, 0xdf, 0x48, 0xd4, 0xb5, 0x76, 0x1a, 0xe1, 0x7c, 0x60, + 0xd9, 0x22, 0x57, 0xea, 0x58, 0x69, 0x09, 0x45, 0x01, 0xbb, 0x67, 0x12, 0x28, + 0xcd, 0xaf, 0x27, 0xa2, 0x9b, 0x48, 0xda, 0x02, 0x9d, 0x2f, 0x85, 0x79, 0x1d, + 0x26, 0x3d, 0x14, 0x09, 0x9e, 0xf9, 0x38, 0x46, 0xd4, 0x11, 0x19, 0x3d, 0xc9, + 0x84, 0x6f, 0xa5, 0x50, 0x45, 0x99, 0x71, 0xc6, 0x67, 0x09, 0x16, 0xb0, 0x70, + 0x6b, 0x04, 0x4f, 0xc5, 0xc2, 0xbd, 0x93, 0xad, 0xe3, 0x96, 0x79, 0x57, 0xcd, + 0xb9, 0x41, 0x27, 0x4c, 0xc6, 0xbd, 0xb4, 0xe0, 0x36, 0xb7, 0x67, 0xb9, 0x50, + 0xc0, 0x9e, 0x46, 0x26, 0xa1, 0xd0, 0x05, 0xbc, 0xf4, 0x83, 0x6e, 0xf6, 0xa1, + 0xde, 0x48, 0x09, 0x5d, 0xcb, 0x46, 0x12, 0x78, 0xb1, 0x6c, 0x45, 0x68, 0x90, + 0xb2, 0x3d, 0x40, 0xbd, 0x36, 0x04, 0x10, 0xf0, 0x01, 0x0a, 0x55, 0xf5, 0x05, + 0xfe, 0x5e, 0x2d, 0xb2, 0x01, 0xc7, 0x52, 0xe9, 0xb5, 0xb1, 0x5b, 0xf8, 0xaa, + 0x9e, 0x82, 0xd6, 0x49, 0xab, 0x11, 0x73, 0xba, 0x2a, 0x51, 0x32, 0xe0, 0xcc, + 0x50, 0x51, 0xcc, 0xf7, 0x4c, 0x7a, 0x6a, 0x37, 0x07, 0xab, 0x59, 0x83, 0xf7, + 0xcc, 0x27, 0x5c, 0x99, 0x1a, 0xbe, 0x4d, 0x7c, 0xee, 0x5f, 0x28, 0x9e, 0xfe, + 0x72, 0x7e, 0xb3, 0xda, 0x86, 0xfa, 0x21, 0xa2, 0x8d, 0x6b, 0x8a, 0x2a, 0xff, + 0xd4, 0x2d, 0xb9, 0x8b, 0xb2, 0xa4, 0x6c, 0xd8, 0xa3, 0x29, 0x31, 0x2f, 0xa9, + 0x45, 0x39, 0xd9, 0xcb, 0x35, 0xdc, 0xb6, 0x04, 0x67, 0x8b, 0x63, 0x90, 0x64, + 0xd9, 0x20, 0x05, 0xdf, 0x2d, 0x10, 0x68, 0x1c, 0x64, 0xb9, 0xed, 0x8c, 0xe4, + 0x7d, 0x7e, 0xba, 0x0f, 0x2b, 0x50, 0x2b, 0x20, 0x6a, 0xd4, 0xb2, 0xe9, 0x2b, + 0xbe, 0x45, 0x86, 0xf6, 0xd7, 0x50, 0x9e, 0x57, 0xa6, 0x37, 0x7f, 0xea, 0xbe, + 0x38, 0xb3, 0xcc, 0x6c, 0x95, 0x5d, 0x5e, 0x7b, 0xdf, 0x7e, 0xb1, 0x32, 0xd8, + 0x6b, 0xc0, 0x7a, 0x30, 0x98, 0xb4, 0x13, 0xe4, 0x40, 0x5d, 0xaa, 0xa2, 0x55, + 0x29, 0x1d, 0x55, 0x2b, 0x2c, 0x80, 0x07, 0xbe, 0xd4, 0x1e, 0x22, 0xf1, 0xcf, + 0x79, 0x11, 0x82, 0x12, 0x00, 0x55, 0x5e, 0x9c, 0x4f, 0xfb, 0x09, 0xef, 0xc1, + 0x22, 0x38, 0x11, 0x75, 0x03, 0x1c, 0x38, 0x28, 0x0b, 0x53, 0x26, 0xeb, 0xbe, + 0xaf, 0x33, 0x4f, 0xdc, 0xf0, 0xdc, 0x44, 0x4e, 0x62, 0x9f, 0x93, 0x95, 0x51, + 0x54, 0x0b, 0xcb, 0xbb, 0xb1, 0xab, 0x9c, 0x23, 0x1a, 0x86, 0x6b, 0x32, 0x9e, + 0x85, 0x24, 0xab, 0x25, 0xf9, 0x3e, 0x5e, 0x33, 0x4a, 0x05, 0x27, 0x2a, 0x3f, + 0x82, 0x6f, 0x9d, 0x05, 0xa4, 0x50, 0x58, 0xdf, 0xcd, 0xf6, 0x88, 0x43, 0xa8, + 0xb9, 0x36, 0xa0, 0xcf, 0x5e, 0x6a, 0xa8, 0xae, 0x1b, 0x80, 0xf6, 0x01, 0x61, + 0xbf, 0x41, 0x4f, 0x28, 0x02, 0x11, 0x11, 0x09, 0x21, 0xa9, 0xc8, 0x5f, 0x51, + 0x04, 0xa0, 0x16, 0x8e, 0x8e, 0x72, 0xde, 0x4f, 0x8a, 0xa0, 0x41, 0x32, 0xeb, + 0x25, 0x88, 0x76, 0xf1, 0x9d, 0x7b, 0xe5, 0xf2, 0xdd, 0x2b, 0x0b, 0x30, 0x4b, + 0x92, 0x3b, 0x29, 0x52, 0xd9, 0x1f, 0xde, 0xe7, 0xe5, 0x52, 0x05, 0xdb, 0xb1, + 0x94, 0xeb, 0xba, 0x32, 0x2f, 0xdc, 0x67, 0xb2, 0x52, 0x2c, 0x92, 0x61, 0x21, + 0xc7, 0xfa, 0x1a, 0xf1, 0x7e, 0xd0, 0x6c, 0x47, 0x27, 0x8f, 0x96, 0x08, 0x92, + 0x96, 0x08, 0x7a, 0x70, 0x4b, 0x7d, 0x0f, 0x84, 0x7d, 0x51, 0xd6, 0xcc, 0x68, + 0xac, 0xc5, 0x22, 0x07, 0x74, 0x73, 0x41, 0xf6, 0xb9, 0x8c, 0xb1, 0xcd, 0x4f, + 0xaf, 0xcd, 0x2b, 0xb0, 0xd0, 0x5b, 0xc7, 0x9b, 0xb8, 0x0d, 0x7c, 0x4b, 0x8a, + 0x1a, 0x11, 0xbc, 0x0a, 0x3b, 0xde, 0xca, 0x45, 0x41, 0x86, 0x9b, 0x4d, 0xc9, + 0xd6, 0xb4, 0x8c, 0xd7, 0x86, 0x9b, 0xf7, 0x63, 0xb9, 0xdc, 0x42, 0x45, 0x27, + 0x3c, 0x70, 0x4b, 0x0d, 0x8d, 0xec, 0x4b, 0x85, 0xd1, 0x6d, 0xd4, 0x38, 0xce, + 0xd6, 0x22, 0x0f, 0xa6, 0x69, 0x26, 0x66, 0x3f, 0xcc, 0x22, 0x8f, 0xc6, 0xc4, + 0xd2, 0x7e, 0x17, 0xe3, 0x27, 0x83, 0x4b, 0x67, 0x57, 0x91, 0x4d, 0x1b, 0xcb, + 0xf3, 0x4b, 0x65, 0xd8, 0x58, 0xab, 0x8b, 0x5c, 0x12, 0x0c, 0xb0, 0x85, 0x05, + 0x22, 0xf5, 0x42, 0x89, 0x3f, 0xdd, 0xb1, 0x79, 0xe8, 0x7f, 0x83, 0x2d, 0xaa, + 0xa1, 0x52, 0xc8, 0x31, 0xf1, 0x35, 0x64, 0x00, 0x9c, 0x41, 0x81, 0x23, 0x53, + 0x3d, 0xe2, 0xc6, 0x79, 0x49, 0xe3, 0xaf, 0x2d, 0xcb, 0x60, 0xd6, 0xbd, 0xbd, + 0xda, 0xda, 0x63, 0xa3, 0x0b, 0x4b, 0x54, 0xcd, 0x1c, 0xe5, 0xa5, 0xa0, 0x0f, + 0x8e, 0x85, 0x57, 0xeb, 0xa9, 0x23, 0x4e, 0x81, 0x17, 0x8d, 0x0f, 0xca, 0xb5, + 0x61, 0x0f, 0xba, 0x96, 0x69, 0xcf, 0xeb, 0x1b, 0xd0, 0x8c, 0xd9, 0x65, 0x33, + 0x49, 0x8b, 0x27, 0x2c, 0x57, 0x79, 0xa9, 0xf9, 0x39, 0x69, 0x1d, 0xe1, 0xad, + 0x88, 0x1c, 0x80, 0x87, 0x8d, 0x6c, 0x29, 0x42, 0x15, 0x23, 0x0b, 0xbb, 0x61, + 0x90, 0x69, 0xb4, 0xdc, 0x17, 0xb3, 0xe5, 0x9d, 0xbd, 0x24, 0x2c, 0xd8, 0x8e, + 0xcc, 0x3b, 0xe3, 0xa2, 0x69, 0x6b, 0xf7, 0xf2, 0xd9, 0xe5, 0xb8, 0xc1, 0x52, + 0xcc, 0x0d, 0x99, 0xa0, 0xa5, 0xe9, 0xa3, 0x8b, 0x1b, 0x8e, 0xb1, 0xa0, 0x13, + 0xeb, 0x76, 0x51, 0x33, 0x37, 0xa7, 0xb0, 0xda, 0xdb, 0x4e, 0x81, 0x7b, 0x6f, + 0x49, 0x78, 0x02, 0xbd, 0x47, 0xe9, 0x3a, 0x82, 0x0c, 0x1c, 0xc3, 0x32, 0xcd, + 0xcc, 0xbd, 0xc8, 0x18, 0x8a, 0xd3, 0x33, 0xc9, 0x57, 0x23, 0xa2, 0xfa, 0x3f, + 0xf9, 0x89, 0x9b, 0x87, 0x8d, 0xfa, 0xaf, 0x2e, 0x4b, 0x9f, 0x77, 0x90, 0x5e, + 0xb8, 0xab, 0x7f, 0x3f, 0x86, 0xda, 0x8e, 0x7c, 0x03, 0x4f, 0x4b, 0x6d, 0x79, + 0x43, 0xce, 0xf1, 0x20, 0x30, 0xc4, 0x00, 0x99, 0xd8, 0x77, 0xca, 0xbe, 0x81, + 0xb0, 0x87, 0x50, 0xe3, 0xfb, 0xfe, 0x63, 0x12, 0x80, 0x34, 0x81, 0xc3, 0x7b, + 0xa5, 0x1a, 0x7d, 0x76, 0x68, 0x31, 0x75, 0xd3, 0x6b, 0x51, 0xf2, 0x9f, 0x9a, + 0x6b, 0xba, 0x33, 0x35, 0x91, 0xe1, 0x62, 0xda, 0xa6, 0xa3, 0x28, 0x6d, 0xcc, + 0x96, 0x64, 0x12, 0x7b, 0xc0, 0xa3, 0x01, 0xb4, 0x80, 0x04, 0xa9, 0xc5, 0x27, + 0x6b, 0xcf, 0x08, 0xe7, 0xfe, 0x4a, 0xe5, 0x2d, 0x76, 0xe4, 0x31, 0x48, 0x8a, + 0x5b, 0x9d, 0x43, 0x1f, 0xa1, 0x36, 0x34, 0x99, 0x1c, 0xbd, 0x4c, 0x23, 0x21, + 0xe4, 0x1d, 0x48, 0xc7, 0x38, 0xa9, 0xdd, 0xb3, 0xf7, 0x6f, 0x46, 0x1a, 0x53, + 0xbe, 0xc9, 0x59, 0xe0, 0x2f, 0xc8, 0x77, 0x1b, 0x67, 0xec, 0x86, 0xbf, 0x9c, + 0xcf, 0x25, 0x97, 0xeb, 0x34, 0xec, 0x3d, 0x29, 0x2e, 0x6b, 0x5d, 0x84, 0xeb, + 0xac, 0x4d, 0x92, 0xde, 0x52, 0xe1, 0xf8, 0xbf, 0x6b, 0xfd, 0xba, 0xda, 0x63, + 0x44, 0x09, 0xf2, 0x0e, 0xf2, 0xcc, 0x6e, 0x3c, 0x39, 0x0e, 0x43, 0x5f, 0x47, + 0xe3, 0x47, 0x23, 0x8d, 0xb4, 0x86, 0x90, 0x84, 0x04, 0x73, 0xb0, 0xa0, 0x83, + 0x1a, 0x5a, 0x8a, 0x58, 0xc4, 0xdc, 0xfc, 0x4e, 0xab, 0x7b, 0x41, 0x8c, 0xba, + 0x2a, 0x41, 0x4f, 0x95, 0x57, 0x71, 0x90, 0xff, 0x88, 0xd7, 0x27, 0xf7, 0x3e, + 0x2f, 0xff, 0x97, 0xaa, 0xbd, 0x11, 0x14, 0xb7, 0x64, 0xe3, 0xed, 0xbc, 0x18, + 0x3e, 0x60, 0x3a, 0xcf, 0xb7, 0xc0, 0x9b, 0xf1, 0x32, 0xbb, 0x01, 0xef, 0xc7, + 0x17, 0x8d, 0x4f, 0x9a, 0x2d, 0xba, 0xf4, 0x92, 0x4f, 0xd8, 0x0f, 0xbe, 0x0e, + 0x60, 0x4f, 0x60, 0x39, 0x08, 0x32, 0xeb, 0x98, 0x04, 0x79, 0xe0, 0x4e, 0x9c, + 0x9a, 0x2b, 0xb2, 0xfb, 0x36, 0x84, 0xd8, 0xf8, 0x06, 0x48, 0xd5, 0x80, 0x78, + 0x38, 0x54, 0x58, 0x4f, 0x62, 0xbe, 0x0c, 0xc9, 0x21, 0x88, 0x32, 0x38, 0x56, + 0x10, 0xd9, 0x62, 0x36, 0x5f, 0x50, 0x71, 0xfa, 0x3d, 0x36, 0x8f, 0xfb, 0x67, + 0x1b, 0xa2, 0xc2, 0xf9, 0xa0, 0xfc, 0x68, 0xd8, 0x07, 0x22, 0x19, 0xa7, 0x7b, + 0xef, 0x2d, 0x6b, 0x4a, 0x19, 0xf1, 0x6d, 0xd5, 0x30, 0x74, 0x22, 0x47, 0x46, + 0xbb, 0xa5, 0xf1, 0x72, 0x82, 0x20, 0xb1, 0x96, 0xe4, 0x0f, 0x93, 0x7c, 0x47, + 0x05, 0x42, 0x9d, 0x04, 0xaa, 0x3c, 0x50, 0x5c, 0x95, 0x60, 0x3e, 0x05, 0xff, + 0x55, 0x2e, 0xc1, 0x86, 0x42, 0xd5, 0x67, 0x05, 0x02, 0x67, 0xb9, 0xf9, 0x92, + 0x9c, 0x2e, 0x13, 0x80, 0x14, 0xb5, 0xef, 0x1b, 0xa7, 0x1d, 0x9a, 0x71, 0x86, + 0xe3, 0xd1, 0x3c, 0x8a, 0x8e, 0x40, 0x8c, 0x2a, 0x9d, 0x12, 0x01, 0xa7, 0xfe, + 0xbb, 0x83, 0x34, 0x51, 0x2b, 0x44, 0xb8, 0x2b, 0xb2, 0x01, 0x78, 0x9f, 0x63, + 0x58, 0x04, 0x89, 0x6e, 0x3e, 0xb2, 0x1b, 0x5b, 0xd8, 0xc4, 0x21, 0xf0, 0xb4, + 0xcf, 0xba, 0x04, 0xde, 0x92, 0x52, 0x8f, 0x04, 0xfb, 0x4b, 0x52, 0x6b, 0x73, + 0x7e, 0xe3, 0x2d, 0xa8, 0x63, 0xf5, 0x98, 0x45, 0x61, 0x31, 0x98, 0x3a, 0x01, + 0x35, 0x8f, 0xb0, 0x7d, 0xe6, 0x75, 0x21, 0x11, 0x58, 0x5a, 0x86, 0x25, 0x6c, + 0xe0, 0x34, 0xc0, 0xd8, 0x57, 0x5a, 0x42, 0x76, 0x13, 0x61, 0xb1, 0x18, 0x77, + 0x05, 0x0b, 0xc6, 0xaf, 0xc3, 0x16, 0x15, 0x64, 0xe9, 0x6f, 0xd8, 0xcf, 0x04, + 0x8f, 0xeb, 0xeb, 0x2a, 0x92, 0x20, 0x07, 0x1c, 0xff, 0x18, 0x2d, 0x6c, 0xa0, + 0x37, 0xce, 0x2c, 0x2d, 0xed, 0x91, 0x6b, 0xd7, 0xb8, 0x4d, 0xe2, 0x8a, 0xc0, + 0x17, 0x1d, 0x97, 0xfc, 0x24, 0x95, 0x6c, 0x26, 0x66, 0x69, 0xc1, 0x03, 0x6b, + 0x2b, 0x1a, 0x23, 0xda, 0xbc, 0xf3, 0x4e, 0x38, 0xf3, 0x51, 0x45, 0x12, 0xae, + 0x8a, 0x47, 0xb3, 0x53, 0xb4, 0x16, 0x69, 0x96, 0x75, 0xe4, 0xd3, 0x1a, 0x2f, + 0xe0, 0x34, 0x08, 0xe4, 0x24, 0xa7, 0x82, 0x9a, 0x06, 0xad, 0xe6, 0x36, 0x53, + 0x61, 0xd8, 0xa9, 0x61, 0x25, 0x7c, 0xbe, 0x25, 0xb0, 0xcd, 0xe3, 0x3e, 0x96, + 0x48, 0x77, 0xdf, 0x5e, 0x57, 0xc5, 0x3d, 0xb2, 0x83, 0x51, 0x77, 0x34, 0x3e, + 0x2d, 0x87, 0x6d, 0x51, 0x4c, 0x62, 0xfb, 0xb3, 0xb4, 0xa7, 0x08, 0xce, 0x62, + 0x62, 0x05, 0xcc, 0xf9, 0x2f, 0x24, 0x0d, 0x60, 0x2c, 0xdb, 0x5d, 0x68, 0x41, + 0xfd, 0x29, 0xda, 0x63, 0x08, 0xb6, 0xca, 0x40, 0x97, 0xd8, 0x52, 0x54, 0x10, + 0x46, 0x54, 0x52, 0x23, 0x9b, 0x04, 0x51, 0xa8, 0xdb, 0xed, 0xac, 0x1e, 0x41, + 0xed, 0xdd, 0x0f, 0x6b, 0xe0, 0xe3, 0xd8, 0x89, 0x69, 0x07, 0x03, 0xa3, 0x14, + 0x57, 0x07, 0xe0, 0xb3, 0xf5, 0xdb, 0x91, 0xb8, 0x19, 0x37, 0x56, 0xe0, 0xe3, + 0x47, 0xb6, 0x64, 0xa1, 0xcc, 0xcb, 0xd7, 0x86, 0x9a, 0x40, 0x22, 0xea, 0xdf, + 0x3f, 0x87, 0x3c, 0x10, 0xec, 0xab, 0x9a, 0x93, 0xf2, 0xca, 0xdc, 0xa7, 0xa3, + 0x33, 0xb8, 0x1b, 0xb6, 0x10, 0x4e, 0x82, 0xea, 0x14, 0xfe, 0x74, 0x1e, 0xb0, + 0x62, 0x08, 0x0d, 0xc8, 0x5a, 0xcb, 0xc8, 0xcc, 0x3a, 0x9b, 0xc8, 0x0c, 0x03, + 0xd9, 0x1f, 0xfb, 0x3c, 0x25, 0xf9, 0xe4, 0x2b, 0xc2, 0x5c, 0xf7, 0x7d, 0x73, + 0x90, 0xc3, 0xab, 0xaf, 0x26, 0x10, 0xf4, 0xec, 0xdb, 0x01, 0x9b, 0x15, 0x8d, + 0xa2, 0x15, 0x5b, 0xef, 0xec, 0xb9, 0xc2, 0x29, 0x6d, 0x03, 0xf8, 0x23, 0xea, + 0xac, 0x0c, 0x74, 0x0d, 0x2a, 0x44, 0x89, 0xb8, 0x28, 0x4c, 0x7e, 0x7b, 0x3a, + 0x72, 0x9a, 0xfb, 0x69, 0xbd, 0x5b, 0xfa, 0x5f, 0x62, 0xf9, 0xb5, 0x27, 0x37, + 0x97, 0xdd, 0x24, 0xa0, 0x18, 0x30, 0x7f, 0xc6, 0x20, 0xe6, 0x42, 0xaa, 0x27, + 0xe7, 0x50, 0x6e, 0x17, 0xb1, 0x98, 0xdc, 0xa4, 0x79, 0x0e, 0x8d, 0xe1, 0xbf, + 0xb6, 0x71, 0xd8, 0xdc, 0x75, 0x13, 0x91, 0x0e, 0x95, 0x43, 0x10, 0x72, 0x1b, + 0x4f, 0xb5, 0x37, 0x05, 0xcd, 0xf0, 0x6e, 0xa6, 0xbb, 0xdf, 0x00, 0x00, 0x0a, + 0xf5, 0xb7, 0x01, 0xa8, 0x77, 0xa1, 0x8d, 0xf9, 0xa5, 0x96, 0x4d, 0x19, 0x43, + 0x10, 0xc9, 0x63, 0xa8, 0x84, 0x14, 0x1e, 0xa0, 0x21, 0xcd, 0xd9, 0x5e, 0xfa, + 0x32, 0x63, 0xa5, 0x05, 0x38, 0x72, 0x29, 0xd1, 0x54, 0xec, 0xaa, 0x23, 0x5e, + 0x8f, 0xa1, 0x07, 0x95, 0xc9, 0xda, 0x27, 0x41, 0xcd, 0x98, 0x71, 0x90, 0x16, + 0xa9, 0x01, 0x17, 0xa7, 0x6f, 0x84, 0xf0, 0x0b, 0x5c, 0x3d, 0x4b, 0xce, 0xd7, + 0x9a, 0x73, 0xbf, 0xb3, 0xa1, 0xc7, 0x8a, 0xd1, 0xad, 0xea, 0x50, 0x78, 0xf2, + 0xf1, 0xb0, 0x0f, 0x81, 0x5b, 0xc7, 0xa3, 0x0e, 0xf8, 0x58, 0x40, 0x07, 0x77, + 0x32, 0xdc, 0xb1, 0xa6, 0x1e, 0x9f, 0x31, 0x76, 0x3d, 0x52, 0x2d, 0x04, 0xc4, + 0x90, 0x37, 0x1a, 0xea, 0xbc, 0xa9, 0x49, 0x9b, 0x05, 0x13, 0x17, 0x8d, 0x54, + 0x31, 0x14, 0x8a, 0x72, 0x80, 0x5d, 0x09, 0x32, 0x9e, 0xa5, 0xd9, 0x41, 0xf3, + 0x32, 0xd5, 0xc6, 0xd3, 0x2b, 0xa2, 0xef, 0x9f, 0x87, 0x23, 0xb6, 0xae, 0xa4, + 0x5f, 0x94, 0xb6, 0xb8, 0xe0, 0x9a, 0xc1, 0xe0, 0xbb, 0xc5, 0xa8, 0xc6, 0xd9, + 0xa0, 0x0a, 0x9d, 0x93, 0xf9, 0x90, 0x7e, 0x52, 0xed, 0xc4, 0xe9, 0xc3, 0x44, + 0x29, 0x26, 0x54, 0xda, 0xae, 0xcd, 0x89, 0xd5, 0x94, 0x3a, 0x07, 0x2a, 0xe1, + 0x4a, 0x36, 0x38, 0xff, 0x67, 0x7f, 0x7f, 0xea, 0x0a, 0x2b, 0x19, 0x1c, 0xe6, + 0x64, 0x71, 0x01, 0x0c, 0xf9, 0x8a, 0x3a, 0x2a, 0x5b, 0xe1, 0x6b, 0x86, 0x2d, + 0x29, 0x07, 0x59, 0xd4, 0xa8, 0x33, 0x45, 0xd0, 0x78, 0x07, 0xda, 0x25, 0x74, + 0x3f, 0x02, 0xdd, 0x89, 0x5a, 0x3e, 0xad, 0xc0, 0x45, 0x98, 0xda, 0x54, 0xd1, + 0x5d, 0xa8, 0x91, 0xb5, 0x71, 0x6d, 0xe9, 0x85, 0xee, 0xe6, 0xdd, 0xc5, 0xcc, + 0xc9, 0x6f, 0xef, 0x4c, 0x4c, 0x89, 0x07, 0xbb, 0xff, 0xe3, 0x2c, 0xb6, 0x12, + 0x92, 0x05, 0x3d, 0xb8, 0x6d, 0x36, 0x6b, 0x7e, 0x6b, 0x30, 0x13, 0xd1, 0x4b, + 0x20, 0xa5, 0x80, 0x57, 0xe5, 0x6a, 0xe3, 0x09, 0x02, 0x4d, 0x28, 0x15, 0xe0, + 0x43, 0xf4, 0x58, 0xa8, 0xf9, 0xe9, 0x77, 0x2e, 0xf7, 0x15, 0x7e, 0x16, 0x37, + 0xd6, 0x50, 0xa3, 0x8f, 0x97, 0x4a, 0x88, 0x18, 0xc2, 0x4a, 0xb3, 0x99, 0xe0, + 0x82, 0xa7, 0x79, 0xce, 0x73, 0xca, 0xb6, 0x73, 0xff, 0x5f, 0x49, 0x66, 0xc0, + 0x6b, 0x62, 0x2d, 0x23, 0xc8, 0x8d, 0xb2, 0xfd, 0x4b, 0x8f, 0xa5, 0x0b, 0x23, + 0x03, 0xff, 0x6a, 0x03, 0xf5, 0xe9, 0x23, 0x7c, 0xe4, 0x73, 0xff, 0x3c, 0x6e, + 0x5c, 0x52, 0x0f, 0xc1, 0x08, 0x8e, 0xc9, 0x04, 0xc4, 0xda, 0x47, 0xf7, 0x81, + 0xff, 0xac, 0x2e, 0xdb, 0x02, 0x7a, 0x2b, 0x78, 0x64, 0x19, 0x83, 0x89, 0x2f, + 0xfb, 0x5c, 0x1d, 0xbc, 0x52, 0x38, 0x36, 0x75, 0xca, 0x69, 0x8e, 0xaa, 0x22, + 0x08, 0x38, 0x5e, 0xfc, 0x43, 0xa0, 0x4e, 0x54, 0xe3, 0x8d, 0x87, 0x37, 0x62, + 0xa4, 0xf1, 0xca, 0x2f, 0x5e, 0x87, 0xad, 0x98, 0x9e, 0x97, 0x2d, 0xa3, 0x71, + 0x6f, 0x41, 0x91, 0xd0, 0x02, 0x41, 0x25, 0x03, 0xd3, 0x36, 0xff, 0xd5, 0x41, + 0x8f, 0xb1, 0x2d, 0x34, 0x1b, 0xc2, 0x98, 0x93, 0x37, 0xc5, 0x90, 0x3c, 0xe6, + 0xe6, 0x7d, 0x1b, 0x40, 0x3d, 0xad, 0xd4, 0xf5, 0x04, 0x71, 0xb4, 0x14, 0x9b, + 0xb3, 0xe5, 0xaa, 0x03, 0xd2, 0xf3, 0x2e, 0x97, 0x8f, 0xfc, 0x59, 0x64, 0xe0, + 0x18, 0x07, 0x78, 0xe3, 0x8f, 0xfd, 0x98, 0xb6, 0xc3, 0xab, 0xaa, 0xf7, 0xe2, + 0xea, 0x79, 0xe3, 0x32, 0x90, 0x57, 0x0e, 0xb4, 0x83, 0x26, 0xfa, 0x0e, 0xcb, + 0xf1, 0xcc, 0xe8, 0x66, 0x62, 0xe7, 0x47, 0x34, 0x44, 0x65, 0x9f, 0xc8, 0xcb, + 0xc9, 0xf3, 0x61, 0x7e, 0xe8, 0x19, 0x5f, 0xe1, 0xbc, 0xf5, 0xbb, 0x1b, 0x63, + 0x4c, 0xd4, 0x3f, 0x04, 0x6f, 0xe2, 0xb1, 0xb8, 0xc2, 0xb0, 0xc6, 0xb0, 0x64, + 0xc4, 0xb7, 0xe1, 0x9b, 0x98, 0xe1, 0x9a, 0xa4, 0xc3, 0xae, 0xcd, 0xbb, 0xc5, + 0x8f, 0xc5, 0x97, 0xc6, 0xae, 0xc3, 0x93, 0x31, 0xc3, 0xb2, 0xe1, 0x9b, 0xae, + 0xc4, 0xb5, 0xe2, 0xb1, 0xa1, 0xc9, 0x86, 0xe1, 0x9b, 0x80, 0xc4, 0xac, 0xe2, + 0xb1, 0xba, 0xc6, 0xb3, 0xc3, 0xab, 0x5a, 0xe1, 0x9b, 0x9c, 0xc2, 0xa8, 0xc3, + 0xa2, 0xc3, 0x8e, 0xc3, 0xa0, 0xc6, 0xb1, 0xc3, 0xb8, 0xc6, 0xa4, 0xc4, 0xb8, + 0xe1, 0x9b, 0xa9, 0x44, 0x54, 0xc7, 0x8e, 0x54, 0x7d, 0x29, 0xc9, 0x89, 0xc5, + 0xb6, 0xe1, 0x9a, 0xb1, 0xe1, 0x9b, 0x97, 0xc6, 0xa9, 0xe2, 0xb1, 0xaf, 0xc3, + 0xbd, 0xc8, 0x86, 0xc4, 0xb1, 0xe1, 0x9b, 0x80, 0xc8, 0xb2, 0x23, 0x5a, 0x00, + 0x00, 0xfd, 0x9e, 0x01, 0xc4, 0xa7, 0xe1, 0x9b, 0x81, 0xc4, 0xad, 0xc4, 0xa6, + 0xc8, 0xa4, 0xe1, 0x9a, 0xba, 0xe1, 0x9b, 0x9f, 0xc8, 0x98, 0xc3, 0x9c, 0x72, + 0xe1, 0x9b, 0x8c, 0xc3, 0x8b, 0xc5, 0xbf, 0xc7, 0xa8, 0xc6, 0x84, 0xc6, 0xb9, + 0xe1, 0x9b, 0x9b, 0xc7, 0xa2, 0xe1, 0x9a, 0xb8, 0xc4, 0x92, 0xe1, 0x9a, 0xbd, + 0xcd, 0xbd, 0x7d, 0xe1, 0x9a, 0xb9, 0xe1, 0x9b, 0x82, 0xe2, 0xb1, 0xaf, 0xce, + 0x85, 0xc8, 0x84, 0xc8, 0xbf, 0x71, 0xe1, 0x9b, 0xae, 0xe1, 0x9b, 0xa3, 0xc6, + 0xa3, 0xc5, 0x8a, 0xe1, 0x9b, 0x94, 0xc7, 0xab, 0xc4, 0xbf, 0xc7, 0x9e, 0xc6, + 0xa5, 0xc8, 0x95, 0xc5, 0x99, 0xc6, 0x9d, 0x67, 0xc4, 0x9a, 0x7d, 0xc5, 0xaa, + 0xc5, 0x9a, 0xc3, 0x91, 0xe2, 0xb1, 0xb2, 0xc5, 0xb7, 0xc7, 0x81, 0xc7, 0x83, + 0xc3, 0xab, 0x26, 0x7b, 0xc8, 0xb1, 0x38, 0xc2, 0xb3, 0xe1, 0x9b, 0x9e, 0xc7, + 0x96, 0xc5, 0x85, 0x78, 0xc5, 0xae, 0xc6, 0x84, 0xc2, 0xba, 0xc5, 0x93, 0xc2, + 0xae, 0xc3, 0x91, 0xe2, 0xb1, 0xa7, 0xc5, 0x88, 0xc5, 0x8c, 0xc5, 0xaf, 0xc3, + 0xbf, 0xc6, 0x82, 0xc2, 0xbd, 0xc8, 0xb2, 0xc7, 0x93, 0xc2, 0xa5, 0xcd, 0xb4, + 0xc6, 0xb7, 0xc5, 0x89, 0xc6, 0x93, 0x69, 0xc5, 0x9a, 0xc6, 0x93, 0xc4, 0x8f, + 0xe2, 0xb1, 0xac, 0xe1, 0x9a, 0xa3, 0xc5, 0x9e, 0xc3, 0x92, 0xe1, 0x9b, 0xa2, + 0xc9, 0x8c, 0xc8, 0xbd, 0xc4, 0xbb, 0xc4, 0x92, 0xc9, 0x85, 0xe1, 0x9b, 0x88, + 0xc9, 0x85, 0xc3, 0xab, 0x77, 0xc3, 0xae, 0xe1, 0x9a, 0xb3, 0xc4, 0xb1, 0x50, + 0xc8, 0x97, 0xc7, 0xb4, 0xc8, 0x8a, 0xc7, 0xba, 0xc3, 0x88, 0xc6, 0xbf, 0xc8, + 0xab, 0x3c, 0xc6, 0x9d, 0xc4, 0xa4, 0xc3, 0x8d, 0xce, 0x87, 0xc2, 0xa1, 0xc4, + 0xb4, 0x59, 0xc4, 0x9a, 0xc8, 0x93, 0xc5, 0xb4, 0xce, 0x89, 0xc6, 0xba, 0xc3, + 0x9e, 0xc6, 0x81, 0xc8, 0x84, 0xc6, 0x85, 0xe1, 0x9b, 0x98, 0xc7, 0xa7, 0xc6, + 0xbd, 0xc5, 0xb0, 0xe1, 0x9b, 0x9f, 0xe1, 0x9b, 0xac, 0xc2, 0xb5, 0xe1, 0x9b, + 0x95, 0xc4, 0x9a, 0xc4, 0xa2, 0xc5, 0xb8, 0xc7, 0x93, 0x44, 0x5d, 0xc3, 0xa4, + 0xc8, 0xbb, 0xc8, 0xa3, 0xe1, 0x9b, 0xa8, 0xc7, 0x95, 0xc6, 0x97, 0xc7, 0x94, + 0xc9, 0x85, 0xc8, 0xae, 0xc9, 0x8f, 0xc3, 0xa3, 0xc8, 0xa9, 0xce, 0x8c, 0xc6, + 0xa9, 0x4e, 0xcd, 0xb5, 0xc8, 0xbc, 0xe1, 0x9b, 0x84, 0x3e, 0xc8, 0xb4, 0xc5, + 0xbe, 0xc6, 0x96, 0x2f, 0x7c, 0xe1, 0x9b, 0x99, 0xc4, 0x94, 0xc7, 0x8d, 0x6c, + 0xc8, 0xb6, 0xc3, 0xad, 0xc7, 0x81, 0xc8, 0x97, 0xc7, 0xb3, 0xc6, 0x9d, 0xe1, + 0x9b, 0x97, 0x21, 0x49, 0xc5, 0x86, 0xc7, 0xa5, 0xc6, 0x9a, 0xc4, 0x83, 0x38, + 0xc6, 0x8d, 0xc5, 0x83, 0xc4, 0x97, 0xc4, 0x96, 0x73, 0xe1, 0x9b, 0x8b, 0xc4, + 0x97, 0xc6, 0xad, 0x2c, 0xc5, 0x84, 0x5d, 0x65, 0xe1, 0x9a, 0xba, 0xc9, 0x8e, + 0xe1, 0x9a, 0xa9, 0x76, 0xc7, 0x93, 0xe1, 0x9b, 0x83, 0xc7, 0x82, 0xc7, 0xba, + 0xc6, 0x88, 0x03, 0xc3, 0x12, 0x6c, 0x4a, 0xc0, 0xa5, 0xd9, 0x47, 0x41, 0x24, + 0xee, 0x17, 0x42, 0xa7, 0xb1, 0x37, 0x84, 0xc6, 0xd2, 0xbb, 0xc4, 0xee, 0x2e, + 0xf8, 0x94, 0x2d, 0xfd, 0x99, 0x91, 0xad, 0x85, 0xa0, 0x40, 0x97, 0x45, 0x0f, + 0xe4, 0xe7, 0x61, 0xb6, 0x94, 0xe6, 0x09, 0x7e, 0x66, 0x83, 0x8d, 0x1c, 0x42, + 0x9d, 0xec, 0x80, 0x4b, 0x8e, 0xf8, 0xa6, 0xf0, 0xd3, 0x12, 0xf6, 0xb8, 0xa0, + 0x2f, 0x2a, 0x2e, 0x26, 0xfb, 0x60, 0xb6, 0x3a, 0xd7, 0x0e, 0x1b, 0x25, 0x41, + 0x31, 0x4a, 0xa8, 0xad, 0x3e, 0x21, 0x51, 0x1b, 0x79, 0x9b, 0x8e, 0xc4, 0xc9, + 0x8b, 0x8d, 0x16, 0x83, 0x6c, 0x18, 0x22, 0xb2, 0x45, 0x62, 0x66, 0x46, 0x59, + 0x86, 0x85, 0x0d, 0x23, 0x31, 0xc7, 0x29, 0x34, 0xbd, 0xb6, 0x71, 0x54, 0xab, + 0x20, 0xad, 0x49, 0xbe, 0x0e, 0x52, 0xd8, 0xb0, 0x78, 0x41, 0x11, 0x7c, 0x0e, + 0xb7, 0x6a, 0x39, 0x54, 0x96, 0x39, 0xf7, 0xad, 0xe7, 0x6a, 0x90, 0x71, 0x0e, + 0x79, 0x83, 0x97, 0x8e, 0x9b, 0x23, 0x34, 0x5e, 0xce, 0x3b, 0xe2, 0x7a, 0xac, + 0x48, 0xc4, 0xe9, 0x08, 0x0b, 0xb5, 0xf9, 0x4f, 0x55, 0xe3, 0x71, 0xb7, 0xe0, + 0xe8, 0x8e, 0x14, 0xfc, 0x77, 0x5c, 0xac, 0x15, 0xec, 0x2a, 0x52, 0xab, 0xe9, + 0x39, 0x3e, 0xc3, 0x7a, 0x40, 0x35, 0x9a, 0x13, 0x07, 0x63, 0x91, 0x3f, 0xe2, + 0x66, 0x55, 0x03, 0xe7, 0x8b, 0x30, 0x80, 0x4b, 0x8e, 0xf8, 0xa6, 0xf0, 0xd3, + 0x12, 0xf6, 0xb8, 0xa0, 0x2f, 0x2a, 0x2e, 0x26, 0xfb, 0x60, 0xb6, 0x3a, 0xd7, + 0x0e, 0x1b, 0x25, 0x41, 0x31, 0x4a, 0xa8, 0xad, 0x3e, 0x21, 0x51, 0x1b, 0xc5, + 0x3c, 0xae, 0x18, 0x9e, 0xc9, 0xdb, 0x6f, 0x14, 0x53, 0xb3, 0xc6, 0xad, 0x4f, + 0x3b, 0x93, 0xdd, 0x10, 0x6a, 0x3a, 0x39, 0x0d, 0xb2, 0x7a, 0x1a, 0x75, 0x0e, + 0x7e, 0xd0, 0x89, 0x7e, 0x3b, 0x61, 0x98, 0x48, 0x4d, 0xcc, 0xdf, 0xa7, 0xa7, + 0xe1, 0xd8, 0xeb, 0x2f, 0x23, 0x66, 0x8d, 0x54, 0xe9, 0x8f, 0x9e, 0xd3, 0xae, + 0x90, 0xfe, 0x0c, 0x27, 0x5f, 0x17, 0x7e, 0xcf, 0x70, 0x1f, 0xd3, 0x8c, 0xfb, + 0x8b, 0x97, 0xae, 0x22, 0xd6, 0xb4, 0xa3, 0x6c, 0xfa, 0x52, 0xcc, 0x48, 0x4e, + 0x3c, 0xff, 0xb8, 0x97, 0x7a, 0x41, 0xaa, 0x82, 0x8e, 0xd1, 0x26, 0xa8, 0x01, + 0x04, 0x8b, 0x1e, 0xc4, 0xa1, 0x5c, 0xf2, 0x93, 0x5b, 0x2a, 0x6b, 0x60, 0x9f, + 0x5c, 0xa6, 0x71, 0x9c, 0x08, 0x6a, 0xc2, 0xf5, 0x8c, 0x1c, 0x80, 0x4b, 0x8e, + 0xf8, 0xa6, 0xf0, 0xd3, 0x12, 0xf6, 0xb8, 0xa0, 0x2f, 0x2a, 0x2e, 0x26, 0xfb, + 0x60, 0xb6, 0x3a, 0xd7, 0x0e, 0x1b, 0x25, 0x41, 0x31, 0x4a, 0xa8, 0xad, 0x3e, + 0x21, 0x51, 0x1b, 0xe8, 0x5c, 0xd3, 0x35, 0x66, 0xb0, 0x60, 0xe4, 0x48, 0xb4, + 0xa2, 0xa0, 0x52, 0xa8, 0xb7, 0x9e, 0x27, 0x57, 0x8d, 0xce, 0x6e, 0x09, 0x88, + 0x6e, 0xf0, 0x92, 0xef, 0x09, 0x67, 0x97, 0x47, 0x0b, 0xb5, 0x4b, 0x9a, 0xbb, + 0xa5, 0xae, 0x26, 0x79, 0x9b, 0x07, 0xcd, 0xc8, 0x8c, 0x80, 0x2e, 0x6a, 0xf5, + 0xcb, 0xfd, 0x41, 0x24, 0x29, 0x57, 0x00, 0xac, 0x12, 0xd9, 0x10, 0xa0, 0x2a, + 0x74, 0xc8, 0x01, 0xfd, 0xd3, 0x01, 0xc4, 0xbc, 0xe1, 0x9a, 0xb6, 0xc2, 0xa9, + 0xc6, 0x9e, 0xc4, 0xbf, 0xcd, 0xb6, 0xcd, 0xb4, 0x53, 0xc3, 0xa3, 0xe2, 0xb1, + 0xa9, 0xe2, 0xb1, 0xb5, 0xe2, 0xb1, 0xa7, 0xc5, 0xb3, 0xe1, 0x9b, 0x89, 0x64, + 0xe2, 0xb1, 0xbc, 0xc7, 0x83, 0xc6, 0x9f, 0xc2, 0xb2, 0xc2, 0xa4, 0xc8, 0x9f, + 0xc7, 0x9a, 0xc2, 0xb7, 0xe1, 0x9b, 0x9b, 0xe2, 0xb1, 0xb2, 0xc5, 0xba, 0xc7, + 0x80, 0xe2, 0xb1, 0xb0, 0xc8, 0x83, 0xcd, 0xb1, 0xc8, 0x9d, 0xc4, 0xb2, 0xc8, + 0xb0, 0xcd, 0xbe, 0xc4, 0xab, 0xc6, 0x9c, 0xe1, 0x9a, 0xb6, 0xc5, 0xbc, 0xc2, + 0xaa, 0x74, 0xc3, 0x8e, 0xe1, 0x9b, 0x83, 0xc5, 0x86, 0xc6, 0xa7, 0xc3, 0xb1, + 0xe2, 0xb1, 0xa9, 0xc4, 0x8b, 0xc8, 0xb0, 0xc6, 0xa5, 0x77, 0xe2, 0xb1, 0xb3, + 0xc3, 0x94, 0xc2, 0xab, 0xc5, 0xb8, 0xc6, 0x9b, 0x61, 0xc4, 0x9c, 0xc8, 0x82, + 0x77, 0xc5, 0x9c, 0xc6, 0xa2, 0x7c, 0xc4, 0xa5, 0xc4, 0xb7, 0xc4, 0x99, 0xc8, + 0x89, 0x79, 0xc3, 0x9b, 0xe1, 0x9a, 0xba, 0xc8, 0xaa, 0xc7, 0xae, 0xc6, 0xae, + 0xc6, 0xb7, 0xc2, 0xb5, 0xc6, 0xa8, 0xc7, 0xb7, 0xe1, 0x9a, 0xbd, 0x6f, 0xc3, + 0x8f, 0x23, 0xc5, 0x92, 0xc9, 0x88, 0xe1, 0x9a, 0xa0, 0x5c, 0xcd, 0xb1, 0xc8, + 0xb8, 0x49, 0x31, 0xc6, 0x8d, 0xc6, 0xb1, 0xc5, 0x99, 0x49, 0xc8, 0xa6, 0xc3, + 0x95, 0xc5, 0x94, 0xc5, 0x93, 0xc9, 0x8e, 0xe1, 0x9a, 0xa2, 0xc8, 0x90, 0xc8, + 0x87, 0xc5, 0x94, 0xc6, 0xa0, 0x46, 0xc2, 0xbd, 0xc3, 0xa3, 0xc9, 0x8d, 0xc5, + 0x9c, 0xc7, 0xa0, 0xc2, 0xbc, 0xc8, 0x86, 0xe2, 0xb1, 0xa3, 0x6a, 0xc8, 0x91, + 0xc7, 0xbd, 0xe2, 0xb1, 0xbb, 0xc7, 0xad, 0xc4, 0xa0, 0xc8, 0x9e, 0xe1, 0x9b, + 0xa0, 0xe2, 0xb1, 0xa0, 0xc3, 0xbd, 0xc3, 0xbd, 0xe1, 0x9b, 0x88, 0xc7, 0xa5, + 0xc2, 0xb7, 0x62, 0xc6, 0x9e, 0xc8, 0x88, 0xe1, 0x9b, 0xad, 0xe1, 0x9b, 0xa1, + 0xe1, 0x9b, 0xa1, 0xc8, 0x8b, 0xc7, 0xaf, 0xce, 0x8c, 0xc3, 0x81, 0xc6, 0x93, + 0xc6, 0x9e, 0xc6, 0xab, 0xc6, 0xb2, 0xc2, 0xb3, 0x4f, 0x7a, 0xc3, 0xb9, 0x34, + 0xc7, 0x8a, 0xe2, 0xb1, 0xa7, 0xc6, 0xaf, 0xc4, 0x87, 0xc3, 0x96, 0x53, 0xc5, + 0xbb, 0x21, 0xc8, 0xa4, 0xce, 0x8c, 0xc6, 0x97, 0xc8, 0x94, 0xc6, 0xae, 0xc5, + 0x8d, 0x65, 0xc3, 0x95, 0xc4, 0x91, 0xcd, 0xba, 0xc9, 0x86, 0xe1, 0x9b, 0xa6, + 0xc7, 0x8a, 0xc3, 0x8c, 0xc8, 0x86, 0xc8, 0x96, 0xe1, 0x9b, 0x84, 0x78, 0xc5, + 0xb6, 0xe2, 0xb1, 0xb1, 0xc5, 0xb6, 0xc8, 0x92, 0xc5, 0xb6, 0xc7, 0xab, 0xe1, + 0x9b, 0x92, 0x4c, 0xc6, 0x9b, 0xc4, 0x91, 0xcd, 0xbd, 0xc8, 0x85, 0xe1, 0x9b, + 0xa4, 0xc4, 0x93, 0x2e, 0x74, 0xc2, 0xb4, 0xc3, 0xbc, 0xc6, 0x90, 0xc4, 0x96, + 0xc9, 0x88, 0xc5, 0x8e, 0xce, 0x87, 0xe2, 0xb1, 0xbc, 0xc5, 0x8e, 0xc2, 0xa9, + 0xe1, 0x9b, 0x87, 0xc8, 0xb0, 0x7e, 0xc4, 0xbb, 0xc8, 0x86, 0xc8, 0xab, 0xc8, + 0x97, 0xc7, 0x86, 0x5a, 0xc4, 0x93, 0xc8, 0x94, 0xc7, 0x83, 0x52, 0xc7, 0xb4, + 0xc5, 0xab, 0xc2, 0xb8, 0xe2, 0xb1, 0xbb, 0x25, 0xc7, 0xb3, 0xc8, 0xa0, 0xc8, + 0xbf, 0xc8, 0xbd, 0xc2, 0xa5, 0xc4, 0x83, 0xe2, 0xb1, 0xb8, 0x26, 0xc2, 0xb0, + 0xc5, 0xa5, 0xc4, 0xb9, 0xe1, 0x9a, 0xac, 0xe1, 0x9b, 0xa8, 0x73, 0xc8, 0x8e, + 0xc4, 0xbc, 0xe1, 0x9b, 0x87, 0x01, 0x49, 0x48, 0x70, 0x04, 0x60, 0xc4, 0x2f, + 0x1f, 0x1c, 0xc8, 0xcf, 0x17, 0x96, 0xbd, 0x0c, 0x92, 0x23, 0x1e, 0xf2, 0xa3, + 0x83, 0xce, 0xc2, 0xb3, 0xde, 0xaa, 0x9c, 0x03, 0xa1, 0xbd, 0xb6, 0x9e, 0x60, + 0x0d, 0x45, 0xbb, 0xe2, 0x43, 0xb1, 0xae, 0xad, 0x96, 0x15, 0xdc, 0x00, 0xad, + 0x96, 0xc3, 0x82, 0xfe, 0xcf, 0xb8, 0x6a, 0x13, 0x98, 0x1e, 0x2a, 0xc5, 0x6a, + 0xe2, 0xf6, 0x50, 0x3b, 0x2e, 0x42, 0x25, 0x3f, 0x11, 0x21, 0x02, 0x7a, 0xd5, + 0xf5, 0xed, 0xdd, 0x1a, 0xdc, 0x44, 0xa2, 0x87, 0x5c, 0x39, 0x1f, 0x01, 0xcf, + 0x88, 0x87, 0xa3, 0xe2, 0x6e, 0x14, 0x40, 0x6f, 0xfe, 0xec, 0x4b, 0xfd, 0x7a, + 0x9f, 0xd8, 0x77, 0xce, 0x52, 0x03, 0xfe, 0x6b, 0x05, 0x8d, 0x23, 0x1e, 0xc7, + 0x1a, 0xf9, 0xca, 0x18, 0xed, 0x5c, 0x73, 0x55, 0x06, 0xd7, 0xba, 0x28, 0xee, + 0x68, 0xee, 0x66, 0x58, 0x7c, 0x99, 0x8c, 0x8f, 0xec, 0xa7, 0xae, 0x06, 0x8c, + 0x8e, 0xd0, 0x79, 0xe5, 0xa9, 0xa4, 0x36, 0x72, 0x8c, 0xce, 0x01, 0xfd, 0x0d, + 0x01, 0x58, 0xc5, 0x98, 0x7c, 0xc7, 0xa7, 0xc5, 0x96, 0xc2, 0xb4, 0x4a, 0xc7, + 0x8a, 0xe2, 0xb1, 0xbb, 0xe1, 0x9a, 0xb5, 0xc6, 0x9a, 0xc6, 0xa2, 0x58, 0xc3, + 0xa9, 0xc3, 0x90, 0xc6, 0x9f, 0xe1, 0x9a, 0xb4, 0xc6, 0x9b, 0xc5, 0x81, 0xc3, + 0xad, 0x23, 0xc8, 0x84, 0x7c, 0xe1, 0x9b, 0x99, 0xc7, 0x88, 0x6a, 0x29, 0xc6, + 0x89, 0xc8, 0x91, 0xc2, 0xae, 0x4f, 0xc2, 0xa3, 0xc3, 0x97, 0xc3, 0x87, 0x38, + 0xc5, 0xb0, 0xc7, 0xbe, 0xe1, 0x9b, 0x81, 0xc8, 0xae, 0xc5, 0x95, 0xc8, 0xa6, + 0x48, 0xc5, 0xbe, 0xc6, 0xa5, 0xe2, 0xb1, 0xac, 0xc8, 0xb4, 0xc4, 0x99, 0xe1, + 0x9b, 0xa5, 0xce, 0x8a, 0xe2, 0xb1, 0xb1, 0xe1, 0x9a, 0xb8, 0xc6, 0x88, 0x2f, + 0xc7, 0x9d, 0xe2, 0xb1, 0xa3, 0xc8, 0x82, 0xe2, 0xb1, 0xbd, 0xce, 0x89, 0xe1, + 0x9b, 0x98, 0xc8, 0xb7, 0xe2, 0xb1, 0xab, 0xc7, 0xb3, 0xc7, 0x85, 0xe2, 0xb1, + 0xa0, 0x43, 0xc3, 0xbf, 0x77, 0xc8, 0xb8, 0xc5, 0x92, 0xc3, 0xb4, 0xc6, 0x9c, + 0xc6, 0x9f, 0xe1, 0x9a, 0xad, 0xc7, 0x96, 0x6e, 0xc8, 0x99, 0xc7, 0x92, 0xe1, + 0x9b, 0x80, 0xc6, 0x9e, 0x33, 0xc4, 0x87, 0xe1, 0x9b, 0x8e, 0x7d, 0xcd, 0xba, + 0xc6, 0xba, 0x30, 0xc6, 0xae, 0xc4, 0xb0, 0xc7, 0xa5, 0xe2, 0xb1, 0xb6, 0xc9, + 0x87, 0x60, 0xce, 0x8a, 0xc5, 0xac, 0xc9, 0x80, 0xcd, 0xbc, 0xc4, 0xb4, 0xe1, + 0x9a, 0xa3, 0xc8, 0xb5, 0xc3, 0xbb, 0xc3, 0xa3, 0xe2, 0xb1, 0xbb, 0xc8, 0x8d, + 0xc7, 0x89, 0xc8, 0x9e, 0x50, 0x2d, 0xc3, 0x8f, 0xc8, 0x99, 0xc4, 0x8b, 0x38, + 0xc5, 0x8c, 0xc6, 0xae, 0xc5, 0x9c, 0xc8, 0x82, 0xce, 0x85, 0xc7, 0xb4, 0x21, + 0xc2, 0xb5, 0xe1, 0x9b, 0xae, 0x63, 0xe2, 0xb1, 0xa0, 0xc6, 0xb1, 0x7d, 0x77, + 0xc8, 0x81, 0x2b, 0xe2, 0xb1, 0xba, 0xc7, 0x88, 0x6e, 0xe1, 0x9a, 0xa5, 0xce, + 0x86, 0xc7, 0xa3, 0x40, 0xc6, 0x90, 0xc5, 0x92, 0xc8, 0xa9, 0x02, 0xe1, 0x6e, + 0x95, 0xe4, 0x52, 0xf5, 0x40, 0x49, 0xc5, 0x4e, 0xf3, 0x67, 0x7e, 0x6b, 0x14, + 0x3f, 0x63, 0xe8, 0x33, 0xc5, 0x23, 0xba, 0x00, 0x8d, 0x7a, 0x83, 0x98, 0xd4, + 0x1a, 0x33, 0x11, 0x25, 0xbb, 0xd8, 0x94, 0x23, 0x6f, 0x5b, 0x59, 0x19, 0x32, + 0x26, 0x95, 0xc1, 0x96, 0xed, 0x05, 0x2d, 0xff, 0x00, 0x83, 0x27, 0x90, 0x5b, + 0xe1, 0xfb, 0x05, 0x49, 0x98, 0x39, 0x0c, 0xa7, 0x19, 0xfd, 0x70, 0x1c, 0x4d, + 0x80, 0x97, 0x8d, 0xcf, 0x26, 0xe8, 0x4f, 0x0b, 0x1f, 0xc5, 0x77, 0x37, 0xe9, + 0x46, 0xd6, 0x27, 0x61, 0xfc, 0x59, 0xfd, 0x9c, 0x48, 0xd2, 0x62, 0xb9, 0x3a, + 0xee, 0x45, 0x65, 0x2c, 0x78, 0x78, 0x05, 0xdf, 0xac, 0xe8, 0x3d, 0x04, 0xe5, + 0x24, 0x40, 0x3a, 0x25, 0xa1, 0x66, 0xa1, 0xf4, 0x0e, 0xcc, 0x8f, 0xff, 0x84, + 0x4f, 0x09, 0xde, 0x67, 0x48, 0x04, 0x52, 0xa6, 0x78, 0x9d, 0x48, 0xb7, 0xbd, + 0xbd, 0x81, 0x1f, 0x0e, 0xda, 0xda, 0xa8, 0xee, 0x8e, 0xb9, 0x16, 0x17, 0x99, + 0x2e, 0xad, 0xf3, 0x91, 0xf4, 0xc0, 0x45, 0xb8, 0xe9, 0xc2, 0xdb, 0x16, 0x1a, + 0x26, 0xfe, 0xbb, 0x6a, 0x94, 0xea, 0xcc, 0xa3, 0x06, 0x0c, 0xf6, 0x78, 0xbb, + 0xf6, 0xcf, 0xef, 0x4a, 0x7c, 0xf3, 0x82, 0xab, 0x9a, 0xd8, 0x3d, 0xe0, 0x34, + 0xcf, 0x78, 0x82, 0x25, 0xe3, 0x18, 0x49, 0xcb, 0xf1, 0x47, 0xf9, 0x4a, 0x84, + 0xad, 0x27, 0x90, 0x5b, 0xe1, 0xfb, 0x05, 0x49, 0x98, 0x39, 0x0c, 0xa7, 0x19, + 0xfd, 0x70, 0x1c, 0x4d, 0x80, 0x97, 0x8d, 0xcf, 0x26, 0xe8, 0x4f, 0x0b, 0x1f, + 0xc5, 0x77, 0x37, 0xe9, 0x46, 0xd6, 0x27, 0x61, 0xff, 0x1d, 0x80, 0xfe, 0xee, + 0xa1, 0xb6, 0xd5, 0xa1, 0x63, 0xd0, 0xc9, 0x62, 0x43, 0x16, 0x36, 0xe1, 0xed, + 0x62, 0x19, 0x66, 0xfe, 0x28, 0x5b, 0xc9, 0x70, 0xa2, 0x66, 0xbb, 0x40, 0x0d, + 0x4d, 0x48, 0xd5, 0x5e, 0xf7, 0x17, 0x04, 0xf5, 0xb7, 0x98, 0x62, 0xbd, 0x80, + 0x6a, 0x6a, 0x33, 0xe1, 0x13, 0xb1, 0x88, 0x32, 0xb3, 0xd5, 0x9e, 0x3a, 0x69, + 0x84, 0xe1, 0x4f, 0xd5, 0x2a, 0xc9, 0x00, 0x7a, 0xba, 0xe5, 0x98, 0x42, 0xec, + 0x80, 0x0b, 0xda, 0xa2, 0x69, 0xf5, 0xd4, 0xfe, 0xb1, 0xec, 0xcb, 0xe0, 0xef, + 0xc8, 0x93, 0x6a, 0x3a, 0xc7, 0x28, 0xa0, 0xc9, 0x83, 0x78, 0x37, 0x2d, 0x76, + 0xac, 0x52, 0xa5, 0x2e, 0x8e, 0x5c, 0xac, 0x28, 0xaf, 0x37, 0x96, 0xec, 0xb6, + 0x68, 0x34, 0xa4, 0xbe, 0x9b, 0xfb, 0x92, 0xfe, 0x45, 0x64, 0x57, 0x8a, 0x19, + 0x07, 0xcd, 0xe3, 0xa2, 0xc2, 0xa7, 0xf2, 0xa9, 0x17, 0xfa, 0xd8, 0x59, 0x5b, + 0x88, 0x6e, 0x04, 0x0d, 0xa5, 0x68, 0xc2, 0x01, 0x8d, 0x02, 0x49, 0xa0, 0x64, + 0x15, 0x7d, 0xe8, 0x80, 0x92, 0x23, 0x80, 0xd6, 0xb7, 0x1f, 0xfd, 0xaa, + ], + txid: [ + 0x0c, 0xd4, 0x56, 0xee, 0x3d, 0x30, 0x02, 0xe1, 0x4c, 0x06, 0x47, 0x3e, 0x5a, + 0xea, 0x4c, 0x30, 0x00, 0xfe, 0x6d, 0xe4, 0xf2, 0x5d, 0x58, 0x0c, 0x99, 0xbd, + 0x5e, 0x3b, 0x53, 0x7d, 0xca, 0x2c, + ], + auth_digest: [ + 0xee, 0xb9, 0x7a, 0xe7, 0x5f, 0x60, 0x9e, 0xf5, 0x6a, 0x98, 0x6c, 0x7f, 0x4e, + 0xa5, 0x27, 0x9c, 0xce, 0x9c, 0x57, 0xe0, 0x1c, 0x63, 0x82, 0x90, 0x38, 0x3f, + 0xfe, 0x06, 0xf3, 0x5e, 0xd8, 0xc3, + ], + amounts: vec![2069242925164740, 994250683432957], + script_pubkeys: vec![ + vec![0x52, 0x52, 0x52, 0x6a], + vec![0x63, 0x6a, 0xac, 0x63, 0x52, 0xac, 0x6a, 0x65, 0x53], + ], + transparent_input: Some(0), + sighash_shielded: [ + 0x02, 0xfb, 0xc9, 0x55, 0xf5, 0xca, 0x66, 0x7c, 0x14, 0x09, 0x14, 0x91, 0x00, + 0x66, 0xa2, 0x47, 0xdd, 0x40, 0x43, 0xeb, 0x67, 0x63, 0x6c, 0xab, 0xfc, 0x5f, + 0x4d, 0xa4, 0xf4, 0x1b, 0xfa, 0x50, + ], + sighash_all: Some([ + 0x5f, 0x0b, 0xf4, 0xf0, 0x01, 0xde, 0xf7, 0x0c, 0xbd, 0x71, 0xd8, 0x4d, 0xad, + 0x9b, 0xd0, 0xc3, 0x98, 0x9c, 0x0b, 0x47, 0xfa, 0x08, 0x21, 0x59, 0x6e, 0xa2, + 0x5c, 0xc0, 0x39, 0x4f, 0xe7, 0xe5, + ]), + sighash_none: Some([ + 0x78, 0xdc, 0x28, 0xc9, 0x22, 0xa9, 0x11, 0x36, 0x78, 0xa1, 0xbe, 0x9c, 0x09, + 0xe5, 0x89, 0x16, 0x87, 0x14, 0xc2, 0x02, 0x6b, 0x47, 0xc2, 0x62, 0x42, 0xe3, + 0xbc, 0x9e, 0x11, 0x85, 0x8e, 0x1b, + ]), + sighash_single: Some([ + 0x5e, 0x39, 0xb8, 0x67, 0x18, 0x07, 0x67, 0x47, 0xa5, 0x48, 0x62, 0x56, 0x1a, + 0x2a, 0xd0, 0x07, 0xa9, 0xda, 0x41, 0x8f, 0xc0, 0x6d, 0x55, 0x78, 0xc4, 0x32, + 0xac, 0x91, 0x8f, 0xba, 0x30, 0x4f, + ]), + sighash_all_anyone: Some([ + 0xe1, 0x9b, 0x94, 0x17, 0xee, 0x17, 0xba, 0x57, 0x18, 0xb4, 0xf2, 0x1a, 0x72, + 0x80, 0xdd, 0x4a, 0xe5, 0x5b, 0x22, 0x0b, 0xee, 0x30, 0x90, 0xef, 0xce, 0x24, + 0xc3, 0x4a, 0x92, 0x44, 0x9b, 0x30, + ]), + sighash_none_anyone: Some([ + 0x70, 0x06, 0xa4, 0xe8, 0x43, 0x3c, 0x02, 0x66, 0x23, 0xf8, 0xdd, 0x26, 0x0a, + 0xfb, 0xf7, 0xf4, 0x5a, 0xf7, 0x30, 0x2c, 0x0b, 0x25, 0x2c, 0x21, 0xb1, 0x79, + 0x38, 0x49, 0x8e, 0xa8, 0xbd, 0xe4, + ]), + sighash_single_anyone: Some([ + 0xb9, 0x3f, 0xf6, 0xd6, 0x24, 0x9f, 0x75, 0x82, 0x5b, 0x16, 0x53, 0x6b, 0x13, + 0x0d, 0x06, 0xd0, 0x87, 0xb2, 0x96, 0xa0, 0x62, 0x06, 0xd1, 0xea, 0x23, 0x5a, + 0xbd, 0x2f, 0xae, 0x5c, 0x24, 0x78, + ]), + }, + TestVector { + tx: vec![ + 0x06, 0x00, 0x00, 0x80, 0xf8, 0x69, 0x4a, 0x12, 0x77, 0x77, 0x77, 0x77, 0x46, + 0x24, 0xa0, 0x79, 0x65, 0xc0, 0xfa, 0x0c, 0x00, 0x02, 0x57, 0xfa, 0xba, 0x21, + 0xfe, 0xa1, 0x00, 0x00, 0x03, 0x6a, 0x53, 0x51, 0xcf, 0x68, 0x94, 0x72, 0x1f, + 0xee, 0x00, 0x00, 0x05, 0x00, 0x51, 0xac, 0x53, 0x63, 0x00, 0x00, 0x02, 0xe6, + 0x5c, 0x16, 0x5d, 0x08, 0xab, 0x23, 0x4c, 0xdf, 0x24, 0x81, 0x50, 0xf9, 0xc8, + 0x6f, 0x60, 0xec, 0x73, 0xab, 0xdf, 0x75, 0xc5, 0x59, 0xf0, 0x67, 0x2b, 0xae, + 0x0a, 0x39, 0x09, 0x4a, 0x3c, 0xc5, 0x23, 0xd4, 0xc7, 0x46, 0xcb, 0x4c, 0x91, + 0x5d, 0x21, 0x57, 0xe8, 0x10, 0xbe, 0x58, 0x21, 0x83, 0x74, 0x53, 0xfe, 0xf2, + 0xef, 0xb7, 0x51, 0x37, 0xf3, 0xc2, 0xab, 0xbc, 0x35, 0x47, 0x1f, 0x69, 0xf5, + 0x08, 0x54, 0xfb, 0x68, 0x81, 0x0f, 0x94, 0xf7, 0x63, 0x63, 0x3e, 0xeb, 0x14, + 0x3f, 0x72, 0xa5, 0xef, 0xd6, 0xc2, 0xa4, 0x7e, 0x61, 0x54, 0xc4, 0xf0, 0xf1, + 0x20, 0xf3, 0x7f, 0x0e, 0x44, 0xdf, 0x8a, 0xc5, 0x84, 0x9b, 0x65, 0x5a, 0xcf, + 0x9f, 0xa7, 0xb2, 0xea, 0x84, 0x62, 0x1d, 0x8e, 0x4d, 0xd8, 0x57, 0x6d, 0xa7, + 0x5e, 0xd1, 0xb4, 0x8a, 0xcb, 0x91, 0x08, 0x03, 0x27, 0x3e, 0xee, 0x8e, 0xbb, + 0x63, 0x47, 0x8a, 0xd6, 0x9d, 0xb3, 0xd1, 0xb7, 0x74, 0xc1, 0x21, 0xb2, 0xcf, + 0x95, 0x8e, 0xdc, 0xcb, 0xc4, 0x66, 0x9d, 0x31, 0x11, 0xb4, 0xfd, 0xde, 0x38, + 0xb6, 0x2d, 0x27, 0xd3, 0x21, 0x6e, 0x7f, 0x0f, 0x42, 0xa9, 0xaa, 0xe0, 0x0f, + 0xc3, 0x79, 0x12, 0x20, 0xdb, 0xb1, 0x03, 0x15, 0x19, 0xbc, 0x1e, 0xcc, 0xf8, + 0x29, 0x8a, 0x22, 0xab, 0x20, 0x92, 0x71, 0x65, 0xaa, 0x95, 0xd5, 0x46, 0x88, + 0x83, 0x48, 0x17, 0x58, 0x3c, 0x64, 0x90, 0x28, 0x77, 0x34, 0xea, 0x30, 0x0c, + 0x38, 0x94, 0xf9, 0x9b, 0xaa, 0x29, 0xee, 0x97, 0x50, 0x9d, 0x1c, 0x10, 0x71, + 0xf2, 0x17, 0x42, 0xba, 0x67, 0x13, 0xed, 0xa0, 0x20, 0x38, 0x1e, 0x60, 0x98, + 0xb0, 0x5a, 0xde, 0x28, 0x09, 0x63, 0xb3, 0x98, 0xc0, 0x3b, 0xf4, 0xc4, 0xe1, + 0xf1, 0x9a, 0xd1, 0xad, 0xf1, 0xf0, 0xd6, 0x1f, 0xac, 0xbf, 0x99, 0x66, 0xbd, + 0xb0, 0x1f, 0xd1, 0x84, 0xb2, 0x00, 0xf8, 0x66, 0xc5, 0xd1, 0x2e, 0x3d, 0xc5, + 0x7e, 0xcf, 0x4f, 0xcd, 0x60, 0xc4, 0xa7, 0x56, 0x19, 0x1d, 0xcf, 0x50, 0xbb, + 0x0f, 0x97, 0x6f, 0x00, 0xe4, 0x36, 0x36, 0xa6, 0x83, 0x08, 0x69, 0x2f, 0x40, + 0x24, 0x4c, 0x39, 0x15, 0x34, 0x4b, 0x6f, 0x1f, 0x5e, 0xe7, 0x0e, 0x51, 0xe1, + 0x2b, 0x28, 0x53, 0x85, 0x53, 0x40, 0x3b, 0xe1, 0x49, 0x8e, 0x00, 0x75, 0xdb, + 0xda, 0x3e, 0x66, 0x6d, 0x9e, 0xbd, 0x18, 0xa1, 0x27, 0x21, 0xc9, 0x73, 0x49, + 0xac, 0x10, 0xe8, 0xfa, 0x2d, 0x6a, 0x59, 0xb2, 0x23, 0x56, 0xa7, 0x71, 0x96, + 0x18, 0xaa, 0xb5, 0xc7, 0x57, 0xf8, 0x82, 0x1e, 0xfc, 0x3e, 0x07, 0x1b, 0x75, + 0xf2, 0x15, 0xb2, 0x00, 0xb7, 0xd2, 0x99, 0x98, 0xed, 0x7a, 0xe0, 0x05, 0x7f, + 0xb2, 0x32, 0x9c, 0xa9, 0x13, 0x6d, 0xd2, 0xbc, 0x51, 0xa6, 0x59, 0x01, 0x71, + 0xdf, 0xca, 0x3b, 0xcb, 0x93, 0x6b, 0x11, 0xc6, 0x3c, 0x03, 0xbb, 0x7f, 0xce, + 0x30, 0xa0, 0x5f, 0x9b, 0x6f, 0x8f, 0xf3, 0x54, 0x06, 0x04, 0x50, 0xa3, 0x45, + 0x2d, 0xa1, 0x86, 0xe9, 0x3d, 0x6c, 0x32, 0xda, 0x62, 0x72, 0xb8, 0x9b, 0xc4, + 0xd6, 0xd5, 0xe8, 0x47, 0x8f, 0x29, 0x91, 0x01, 0x98, 0x97, 0x11, 0xa9, 0xd2, + 0x20, 0x97, 0xcd, 0xb7, 0x0c, 0x15, 0x0e, 0xd2, 0x6d, 0xf4, 0x7b, 0x0c, 0xdd, + 0xee, 0x52, 0x1b, 0x4f, 0x1e, 0x98, 0x96, 0xa1, 0xb6, 0x97, 0x86, 0x53, 0xa4, + 0xe3, 0x8b, 0x0d, 0x28, 0x52, 0x6e, 0x1e, 0x3a, 0x87, 0x43, 0x5a, 0xc4, 0xfd, + 0x30, 0x97, 0xaf, 0xe3, 0x21, 0xe7, 0x2d, 0x40, 0xc4, 0x70, 0xf3, 0xb5, 0x3f, + 0x5c, 0x35, 0x8d, 0x2e, 0x53, 0x69, 0x7c, 0xaf, 0x66, 0x9d, 0xea, 0xa1, 0x1d, + 0xe7, 0x7c, 0x98, 0x4a, 0x73, 0x0e, 0x5b, 0xf7, 0xb3, 0x8e, 0xf6, 0x58, 0x9a, + 0x5a, 0xa7, 0x55, 0x81, 0xbf, 0xd3, 0xc0, 0x07, 0x8a, 0x63, 0xa3, 0x92, 0x96, + 0x0e, 0xc3, 0xf2, 0xa0, 0x5c, 0x08, 0x1a, 0x48, 0x4e, 0xb4, 0xf4, 0x25, 0xb7, + 0x08, 0x36, 0x0f, 0x82, 0x85, 0x3c, 0xfd, 0x50, 0xa0, 0x27, 0xfa, 0x92, 0x51, + 0x76, 0x86, 0x96, 0xf3, 0x73, 0x5c, 0xd9, 0xed, 0xf7, 0x9e, 0xcd, 0x4b, 0xe0, + 0x8c, 0x57, 0x85, 0xc8, 0xae, 0xe7, 0x9a, 0x13, 0x23, 0x87, 0x09, 0x94, 0x2f, + 0x2c, 0xfd, 0x0f, 0x80, 0x7d, 0xaa, 0xb5, 0x0c, 0xc6, 0x13, 0x1b, 0xab, 0x91, + 0x25, 0x67, 0x36, 0x27, 0xf5, 0xe9, 0xa3, 0xd5, 0x3d, 0x99, 0xfa, 0x02, 0x5c, + 0x39, 0xfa, 0xb0, 0x9e, 0x2a, 0x21, 0x34, 0x6d, 0xc7, 0xf8, 0x60, 0xa6, 0x2d, + 0xd2, 0x10, 0x8e, 0x04, 0x41, 0x17, 0x8e, 0xf9, 0x76, 0x21, 0xae, 0xfc, 0xe8, + 0x97, 0x28, 0x10, 0xa4, 0xc7, 0xfc, 0x1b, 0x3c, 0x7e, 0xaa, 0x83, 0xd4, 0xa6, + 0x2b, 0xd7, 0x10, 0x98, 0x96, 0x11, 0xdd, 0x7e, 0x2f, 0x4b, 0xdf, 0x15, 0xd8, + 0x31, 0x00, 0x60, 0x11, 0xb4, 0x4e, 0xd9, 0x59, 0xdc, 0x61, 0xd8, 0xde, 0x52, + 0x74, 0x5e, 0x30, 0x67, 0x9c, 0xef, 0x04, 0x01, 0x3a, 0xc6, 0x15, 0x4e, 0xf0, + 0x64, 0x69, 0x82, 0x38, 0x74, 0x25, 0x21, 0x62, 0x26, 0x3f, 0x3a, 0x4b, 0xa5, + 0x65, 0x7b, 0x8d, 0x0e, 0xcf, 0x03, 0x86, 0x44, 0x1f, 0x87, 0x30, 0xd0, 0xf1, + 0x4e, 0x86, 0x8a, 0x32, 0x46, 0x37, 0xb0, 0xd3, 0x4a, 0x9d, 0x1d, 0xd6, 0xc3, + 0x9f, 0x28, 0xfd, 0x9a, 0xf3, 0x50, 0xdc, 0x23, 0x93, 0x79, 0x29, 0xe3, 0x79, + 0x70, 0xf8, 0x87, 0x37, 0x01, 0xd3, 0xfa, 0x47, 0x10, 0x10, 0xa7, 0x21, 0x40, + 0x68, 0xad, 0x1b, 0x89, 0x02, 0x52, 0x26, 0x1d, 0xd9, 0x0d, 0x89, 0xc5, 0xa6, + 0xf2, 0x90, 0x4b, 0xc6, 0x16, 0xb0, 0x27, 0xd7, 0xbe, 0xc8, 0x79, 0xb7, 0xa1, + 0x78, 0x25, 0x4f, 0xdc, 0xaa, 0x99, 0x1b, 0x42, 0x2b, 0x7a, 0x96, 0x93, 0xe7, + 0x64, 0xa1, 0x27, 0xb1, 0x72, 0xa0, 0xdc, 0xca, 0xc4, 0x4f, 0x15, 0x27, 0x08, + 0x6c, 0x48, 0x89, 0x85, 0xf9, 0x23, 0x5e, 0x28, 0x82, 0xb4, 0x78, 0x16, 0x44, + 0xeb, 0xa9, 0xed, 0x09, 0x61, 0xca, 0x7a, 0x68, 0x45, 0xb5, 0x73, 0x65, 0xd8, + 0x75, 0x4b, 0xdc, 0x79, 0x1f, 0x81, 0xc8, 0x09, 0xd0, 0x12, 0xbd, 0x32, 0x9b, + 0x6a, 0x44, 0xbd, 0x3d, 0xfa, 0x34, 0xbc, 0xe1, 0xa3, 0x7b, 0x70, 0x55, 0x34, + 0x8c, 0x37, 0xf6, 0x19, 0x80, 0x25, 0x50, 0xb5, 0x70, 0xc6, 0xa0, 0xf7, 0x87, + 0x74, 0x63, 0x98, 0x3a, 0x16, 0x3e, 0x18, 0xf2, 0x22, 0xa7, 0x8b, 0xb4, 0x80, + 0xdd, 0x76, 0x8f, 0xd7, 0x6b, 0xc6, 0x89, 0x6f, 0xe0, 0x2a, 0xa4, 0x82, 0xf7, + 0x6c, 0x72, 0x52, 0xe6, 0x65, 0x04, 0xe8, 0x80, 0xd2, 0x76, 0xbf, 0x7d, 0x55, + 0x7b, 0x39, 0x6a, 0xde, 0x3b, 0xf0, 0xad, 0xba, 0x84, 0xa2, 0x7f, 0x88, 0xbd, + 0xa8, 0xad, 0xbf, 0xc8, 0x9a, 0xc8, 0x6a, 0xd0, 0x01, 0x02, 0xee, 0x58, 0x45, + 0x68, 0x8d, 0x4f, 0x0f, 0x89, 0x2b, 0xe6, 0x79, 0x79, 0xb1, 0x81, 0x7b, 0xc4, + 0xd4, 0xef, 0x72, 0x80, 0x92, 0x4c, 0x67, 0x8f, 0xd5, 0x4f, 0xcb, 0xde, 0xa8, + 0xa2, 0xeb, 0x8f, 0x5d, 0x75, 0x53, 0x1c, 0x1b, 0x80, 0x1b, 0x72, 0x12, 0xc6, + 0xf1, 0x45, 0x09, 0x38, 0xb9, 0x26, 0x77, 0x1e, 0x1d, 0xcd, 0xd3, 0xa4, 0x78, + 0x2f, 0x9a, 0x75, 0xc0, 0xb9, 0xfc, 0x88, 0x95, 0x72, 0xc4, 0x0d, 0x53, 0x19, + 0x65, 0x17, 0x5a, 0x45, 0xb1, 0x88, 0x21, 0x8d, 0x1d, 0x87, 0x99, 0x50, 0xcf, + 0x78, 0x08, 0x49, 0x32, 0x6c, 0x3f, 0x28, 0xdd, 0x53, 0xd6, 0x81, 0x19, 0xd2, + 0x96, 0x95, 0x50, 0x12, 0xa2, 0x6f, 0x83, 0x3c, 0xdd, 0x29, 0xc6, 0xf4, 0xc7, + 0x16, 0xf1, 0xd3, 0x37, 0xd3, 0xf4, 0xd2, 0x1c, 0x7a, 0x63, 0xf8, 0x54, 0xc9, + 0xf4, 0xc1, 0xc4, 0xcc, 0xf1, 0x81, 0xad, 0x43, 0x16, 0xca, 0xb1, 0x36, 0x46, + 0x7c, 0x01, 0xd9, 0x6d, 0x36, 0xe2, 0x98, 0x1c, 0x86, 0xc4, 0x76, 0x56, 0x7d, + 0x83, 0x77, 0x6b, 0x73, 0x37, 0x35, 0xd5, 0x65, 0x8a, 0x48, 0xf9, 0x89, 0x7c, + 0xf1, 0xe5, 0x05, 0x2b, 0x37, 0xec, 0x1c, 0x88, 0x91, 0x47, 0x36, 0xd9, 0xf9, + 0x7c, 0x54, 0x99, 0xd7, 0x3d, 0x92, 0x3b, 0x45, 0x00, 0x69, 0x4f, 0xfa, 0x57, + 0x35, 0xc9, 0x3c, 0xdb, 0x87, 0xb3, 0x5d, 0x82, 0x95, 0x49, 0xb1, 0xc6, 0x38, + 0x3e, 0x95, 0xfd, 0x19, 0x02, 0xad, 0x29, 0x80, 0xf2, 0xa3, 0xa2, 0x48, 0x3a, + 0xce, 0x74, 0xb7, 0x64, 0x3d, 0x8e, 0xae, 0x8d, 0x07, 0x9a, 0xa0, 0x06, 0x75, + 0x41, 0x00, 0x6b, 0x94, 0xa6, 0xf9, 0x13, 0xdc, 0xff, 0x13, 0xd6, 0x7c, 0xd9, + 0xa8, 0xcf, 0xdf, 0x30, 0xb0, 0xc3, 0xd1, 0x5a, 0xaa, 0x47, 0x0b, 0x3f, 0x89, + 0x56, 0x10, 0x51, 0x42, 0xfa, 0x26, 0x11, 0xfe, 0xda, 0xa4, 0x3f, 0xac, 0xbb, + 0x3f, 0x05, 0x96, 0xf6, 0x78, 0x87, 0xcd, 0xee, 0x91, 0x42, 0xc5, 0x09, 0x0a, + 0x84, 0xe6, 0x25, 0x29, 0x31, 0xff, 0xcf, 0x61, 0xa5, 0x0a, 0x4b, 0x92, 0x85, + 0x30, 0x60, 0xe8, 0xb8, 0x7e, 0x10, 0xce, 0xa8, 0xce, 0x00, 0xe4, 0x66, 0x5e, + 0x5f, 0x93, 0x1f, 0x0e, 0x08, 0xdc, 0x52, 0x47, 0xbe, 0x1a, 0xed, 0xc7, 0x9e, + 0xbb, 0x7c, 0x20, 0x16, 0x2f, 0xca, 0x7b, 0xf9, 0x0e, 0x58, 0x83, 0x02, 0x5f, + 0xc9, 0x24, 0x36, 0x8d, 0x42, 0x45, 0x0b, 0x4f, 0xb7, 0xa7, 0xe1, 0x91, 0x0e, + 0xdd, 0x8d, 0x29, 0x5f, 0x03, 0xd4, 0xde, 0x03, 0xde, 0x60, 0x51, 0xd1, 0xfc, + 0xf2, 0x87, 0xf5, 0x4f, 0x38, 0x24, 0x41, 0xdd, 0xe0, 0x0c, 0xb6, 0x83, 0xa4, + 0x04, 0x8c, 0xe5, 0x4d, 0x42, 0x20, 0x90, 0x57, 0x24, 0xb3, 0x09, 0xc7, 0x99, + 0x92, 0x4b, 0x85, 0x4a, 0xfa, 0x37, 0x7b, 0x80, 0x1a, 0x03, 0x52, 0xfc, 0x44, + 0x50, 0xb3, 0x35, 0x27, 0x7a, 0xda, 0xd7, 0x61, 0xe4, 0x8a, 0x1d, 0x1d, 0xd3, + 0x78, 0x93, 0x6a, 0x49, 0x1e, 0x28, 0x6c, 0xaf, 0xc7, 0x00, 0xb4, 0x8e, 0xdf, + 0x15, 0xf1, 0xc2, 0xd6, 0xed, 0xf1, 0xa2, 0x4e, 0x0e, 0x51, 0xb3, 0x98, 0x55, + 0x64, 0xeb, 0xa9, 0x69, 0xcd, 0x6e, 0xe6, 0x59, 0xba, 0xae, 0xf7, 0x46, 0xe1, + 0x3a, 0xba, 0x64, 0xaf, 0xad, 0x58, 0xaf, 0x52, 0xf4, 0x28, 0x17, 0x36, 0x45, + 0x75, 0x7a, 0x40, 0x7e, 0x1f, 0xdf, 0xd9, 0x89, 0x38, 0x0c, 0x02, 0xbc, 0xc3, + 0xc3, 0x7f, 0x48, 0x90, 0xc0, 0x8e, 0xb9, 0x31, 0x62, 0xcf, 0x78, 0xbc, 0x3c, + 0x74, 0x53, 0xf3, 0xf9, 0x92, 0xa7, 0x94, 0x53, 0x4c, 0x07, 0xe3, 0x96, 0x8d, + 0x82, 0x70, 0xaa, 0x19, 0x1f, 0x67, 0x80, 0x0a, 0x0b, 0xb3, 0xe7, 0xbf, 0xa5, + 0x4b, 0x0f, 0x6f, 0xa5, 0x3e, 0xe8, 0xfb, 0x13, 0x69, 0x82, 0xce, 0x71, 0xf4, + 0x08, 0x64, 0xb5, 0x4d, 0x00, 0x45, 0x1a, 0xf3, 0xf5, 0x32, 0x74, 0x22, 0x42, + 0x16, 0x06, 0xea, 0x10, 0xc0, 0xd6, 0x12, 0x7c, 0x02, 0xf9, 0x1a, 0xd3, 0xae, + 0xb9, 0xff, 0xd6, 0x11, 0x12, 0x25, 0x14, 0x14, 0x48, 0xbe, 0x82, 0x40, 0xc4, + 0x29, 0x73, 0xac, 0x52, 0xd7, 0x1b, 0x01, 0x2f, 0xe8, 0xef, 0x41, 0xf0, 0x0e, + 0xc1, 0x96, 0xc7, 0x57, 0x89, 0x9e, 0xf8, 0xc0, 0x0e, 0xf8, 0xdf, 0x44, 0x5c, + 0x56, 0x54, 0x69, 0xd8, 0x4b, 0xd0, 0x2c, 0x7f, 0xc4, 0x1b, 0xfc, 0xdf, 0x98, + 0x95, 0x1f, 0x50, 0xe8, 0x3f, 0x19, 0xa0, 0x00, 0xa9, 0xe4, 0x53, 0xf6, 0x21, + 0x67, 0xe7, 0x35, 0x0f, 0x92, 0x36, 0x08, 0x31, 0xbd, 0x7c, 0x52, 0x22, 0xb6, + 0x70, 0x61, 0x6e, 0x4b, 0x6c, 0xa8, 0xa2, 0x35, 0x50, 0xca, 0xd8, 0xac, 0x0d, + 0xdb, 0x76, 0x45, 0xe2, 0xb9, 0x71, 0x3b, 0xe7, 0xe1, 0xd7, 0x68, 0xf8, 0x8e, + 0xeb, 0x74, 0xc5, 0xd3, 0x2d, 0x8a, 0x2f, 0x42, 0x7f, 0x72, 0x16, 0xc7, 0x67, + 0xa6, 0x6b, 0xa0, 0x1e, 0x64, 0x49, 0xae, 0x43, 0x5c, 0x24, 0xbe, 0x7b, 0x9d, + 0x28, 0x8a, 0xd7, 0x57, 0x12, 0xc9, 0x2a, 0xa5, 0x06, 0x18, 0xdf, 0xba, 0x18, + 0xe8, 0x4e, 0x88, 0xd4, 0x60, 0x68, 0xdf, 0x0b, 0x42, 0xaf, 0x89, 0x29, 0x25, + 0xc8, 0x67, 0xea, 0xf4, 0xc6, 0x39, 0x05, 0x6e, 0x99, 0x51, 0xd0, 0x09, 0xa9, + 0x39, 0xf7, 0x59, 0xa8, 0xa2, 0xc0, 0x49, 0xde, 0xf0, 0x97, 0x7f, 0x61, 0xea, + 0x11, 0x23, 0x14, 0x06, 0xcd, 0x10, 0x95, 0x6d, 0x16, 0x55, 0x78, 0xbb, 0x29, + 0xe4, 0x76, 0x96, 0x76, 0x9a, 0x58, 0x0e, 0x07, 0x01, 0xe8, 0x15, 0xaf, 0x3b, + 0x50, 0x4e, 0x13, 0x58, 0xd0, 0x37, 0xe5, 0x9f, 0x66, 0x65, 0x06, 0x9e, 0xc9, + 0x06, 0xe3, 0xe0, 0x34, 0xc6, 0xb1, 0x7f, 0x04, 0x00, 0x34, 0x0d, 0x27, 0x16, + 0x20, 0x1e, 0x07, 0x1e, 0x47, 0x1a, 0x85, 0x5e, 0x9c, 0xc3, 0x6d, 0x39, 0x49, + 0x97, 0x15, 0x74, 0xbf, 0x3a, 0x06, 0x0f, 0xc0, 0xd8, 0x82, 0xd0, 0xa9, 0x86, + 0x5c, 0x24, 0xfd, 0x00, 0x01, 0x94, 0x03, 0x17, 0x30, 0xcb, 0xe1, 0x88, 0xe6, + 0xfd, 0xaf, 0xcb, 0xba, 0xf7, 0x51, 0xbe, 0x87, 0xaf, 0x96, 0x5c, 0xd9, 0x8d, + 0x99, 0x31, 0x04, 0xca, 0x6e, 0xdd, 0x29, 0x28, 0x0c, 0xda, 0x86, 0x55, 0x67, + 0xbd, 0xd4, 0xb4, 0xba, 0x47, 0x37, 0xe6, 0x1c, 0x3f, 0x0a, 0xd8, 0x75, 0xa8, + 0xde, 0xe6, 0xe6, 0xcd, 0xff, 0x26, 0x81, 0x88, 0x08, 0xff, 0x9b, 0x2d, 0x55, + 0x87, 0x95, 0xd6, 0x5d, 0x2a, 0x95, 0xb4, 0x56, 0x56, 0x19, 0xf7, 0xb2, 0x41, + 0x62, 0xcc, 0x47, 0x59, 0x9a, 0x33, 0x13, 0x06, 0xe3, 0x65, 0x2f, 0xfb, 0xc3, + 0xb3, 0xfd, 0x06, 0xc1, 0x46, 0x0c, 0x80, 0x6f, 0x4e, 0x61, 0xbe, 0xc2, 0xa2, + 0xa7, 0xb6, 0xc7, 0x96, 0xf6, 0x5d, 0xcf, 0x36, 0xa4, 0xaf, 0xc6, 0xd8, 0x10, + 0x09, 0x35, 0x21, 0x0a, 0x86, 0x38, 0x9f, 0x24, 0x9e, 0x2f, 0x82, 0x32, 0x73, + 0x7b, 0x8b, 0x33, 0x6b, 0x5f, 0x55, 0x40, 0x0b, 0x06, 0x79, 0xba, 0x0c, 0x1e, + 0xf0, 0x20, 0xc9, 0x26, 0x85, 0xa4, 0x24, 0x91, 0x79, 0x95, 0xea, 0x63, 0xad, + 0x1d, 0x5e, 0x28, 0xdd, 0x63, 0x99, 0x83, 0x82, 0xc7, 0xb3, 0x9d, 0x26, 0xdb, + 0x80, 0xb4, 0x3e, 0x32, 0x4f, 0xaf, 0x5d, 0x63, 0x60, 0x4a, 0x84, 0xf2, 0x13, + 0x5c, 0xbf, 0xf5, 0x98, 0xeb, 0x50, 0xe1, 0xd3, 0xa4, 0xb9, 0x9c, 0xd6, 0x6c, + 0x7a, 0xfd, 0xe6, 0x7f, 0xac, 0x47, 0xf0, 0x35, 0x8e, 0xc7, 0x83, 0xbe, 0x35, + 0x95, 0x47, 0x96, 0xe5, 0x97, 0x3a, 0xcf, 0xf6, 0x31, 0x98, 0xa3, 0x55, 0x94, + 0x18, 0x7e, 0xf8, 0x17, 0x00, 0x0b, 0x08, 0x88, 0x1e, 0x70, 0xe0, 0xb2, 0xcd, + 0xe2, 0x31, 0x51, 0x79, 0xc0, 0x84, 0x15, 0x51, 0xe8, 0xbd, 0x92, 0x8e, 0xb6, + 0x24, 0x87, 0x6e, 0x86, 0xb0, 0xb3, 0x3a, 0xab, 0x0c, 0xde, 0x87, 0xeb, 0x8f, + 0xd4, 0x92, 0x5d, 0x8c, 0xf1, 0x8a, 0x75, 0x68, 0xf6, 0xa2, 0x69, 0xac, 0x50, + 0x0f, 0x4f, 0x6c, 0x56, 0xbd, 0x5e, 0xa2, 0x22, 0x60, 0x2c, 0xcb, 0x13, 0xec, + 0x07, 0x7d, 0x22, 0xc6, 0x8a, 0x59, 0xa6, 0x7d, 0x0e, 0xa3, 0xb4, 0x55, 0xee, + 0x4c, 0x4a, 0xb9, 0x32, 0x76, 0xd3, 0xd9, 0xaa, 0xf8, 0x7b, 0x7a, 0x0f, 0xfb, + 0xe0, 0x24, 0x26, 0x1e, 0x79, 0x8d, 0xad, 0x05, 0x8e, 0xc8, 0xde, 0x26, 0x3c, + 0xb6, 0x76, 0xd8, 0x1b, 0x7a, 0x60, 0x79, 0x97, 0x77, 0xa8, 0xcf, 0x06, 0xce, + 0x21, 0x6d, 0x9c, 0x24, 0xf0, 0xdb, 0xb7, 0x6b, 0xc6, 0x2c, 0xb0, 0xd7, 0x79, + 0xaa, 0x49, 0xe9, 0x20, 0xc7, 0x88, 0x76, 0xc7, 0xea, 0xe2, 0x13, 0xa6, 0x38, + 0xd0, 0x31, 0x16, 0x7a, 0x52, 0x86, 0x4e, 0x14, 0xb2, 0x77, 0x6f, 0x3c, 0x06, + 0x6c, 0x60, 0xbe, 0x9f, 0x28, 0x8c, 0xbb, 0xcc, 0x33, 0x62, 0xa2, 0x1b, 0x04, + 0xd5, 0x00, 0x57, 0x46, 0xfe, 0x5e, 0x61, 0x8f, 0x95, 0x34, 0x88, 0x7b, 0xaf, + 0x44, 0xe6, 0x21, 0xf8, 0x99, 0x8c, 0x04, 0x46, 0x26, 0x6f, 0x1a, 0xa2, 0xba, + 0x42, 0xc6, 0x09, 0x88, 0x61, 0x16, 0xa3, 0x60, 0xec, 0xad, 0xc3, 0x7b, 0x86, + 0x2c, 0xca, 0xc6, 0x35, 0xb4, 0x0a, 0x93, 0xa6, 0x2e, 0x04, 0x1e, 0xcc, 0x42, + 0x01, 0x11, 0x31, 0xde, 0x25, 0xbe, 0x5c, 0x16, 0x89, 0xd4, 0x0d, 0x65, 0xb5, + 0x52, 0xdd, 0x03, 0xc6, 0xd2, 0x71, 0x2d, 0x62, 0xd2, 0xc9, 0x25, 0x2c, 0x34, + 0xa9, 0x84, 0x47, 0x4f, 0x67, 0xc1, 0x0e, 0x9e, 0x43, 0x47, 0x60, 0xba, 0x7c, + 0xad, 0x2a, 0xc7, 0x2b, 0xb2, 0x63, 0x59, 0xea, 0x58, 0x73, 0xd1, 0x9c, 0xc1, + 0x1d, 0xa7, 0xff, 0x8e, 0xb9, 0x34, 0xf5, 0x22, 0xd7, 0x2f, 0x1d, 0xf4, 0xbf, + 0x69, 0x7f, 0x71, 0x76, 0xf4, 0x56, 0x28, 0x85, 0x3e, 0x54, 0x14, 0x1f, 0xa9, + 0xf9, 0x1a, 0x55, 0x55, 0x49, 0xec, 0x76, 0x98, 0x27, 0xf7, 0x8e, 0xf8, 0xc5, + 0x32, 0x79, 0x5f, 0x3c, 0xdd, 0x86, 0xab, 0xa0, 0x14, 0x71, 0xba, 0x89, 0xe8, + 0xf2, 0x0c, 0xde, 0xa6, 0x8e, 0xf4, 0x23, 0xe6, 0x9f, 0x5c, 0x5e, 0xa1, 0x5f, + 0xf4, 0xd8, 0xea, 0x86, 0x44, 0xf0, 0xcc, 0x2c, 0x9f, 0x41, 0x7f, 0xb7, 0x16, + 0xa5, 0x7f, 0xc7, 0xe0, 0x51, 0xf5, 0x20, 0x04, 0x9f, 0xab, 0x98, 0x68, 0xf5, + 0x21, 0x59, 0xe8, 0xfe, 0xa0, 0xcf, 0x5b, 0xe3, 0x2f, 0x0b, 0xab, 0xa2, 0xaf, + 0x67, 0x85, 0xcd, 0x54, 0xa5, 0x03, 0x98, 0xb0, 0x14, 0xa0, 0x7b, 0x78, 0x45, + 0x99, 0x7a, 0x1b, 0x04, 0x1b, 0xcd, 0xbe, 0xc4, 0x80, 0xc6, 0x85, 0xc2, 0xaa, + 0xc6, 0xb8, 0xc5, 0xb2, 0x35, 0xc5, 0xbd, 0xc6, 0x99, 0x3d, 0xe1, 0x9b, 0xa4, + 0xc8, 0xbf, 0xc9, 0x8e, 0x5a, 0x5a, 0x00, 0x01, 0xfd, 0x7e, 0x01, 0xc5, 0x8b, + 0xe2, 0xb1, 0xaa, 0xcd, 0xb4, 0xc3, 0xb9, 0xe1, 0x9a, 0xae, 0xe2, 0xb1, 0xa0, + 0xc3, 0x83, 0xe2, 0xb1, 0xb5, 0xc6, 0xa7, 0xe2, 0xb1, 0xb8, 0xc5, 0x99, 0xc8, + 0xa8, 0xe1, 0x9a, 0xb9, 0xc4, 0x9c, 0x6d, 0xe1, 0x9b, 0x9f, 0x23, 0xc3, 0x89, + 0xc8, 0xad, 0x51, 0xc4, 0xb0, 0xc8, 0x87, 0xc3, 0x96, 0x53, 0xc9, 0x8c, 0xc4, + 0x99, 0xc6, 0x86, 0xc5, 0xba, 0xe1, 0x9a, 0xb5, 0x51, 0xc7, 0xbf, 0xc3, 0xb5, + 0xe1, 0x9b, 0x81, 0xc4, 0x89, 0xc7, 0x8e, 0x5e, 0xc8, 0x9b, 0xe2, 0xb1, 0xae, + 0xc8, 0xbf, 0xc7, 0x84, 0xc5, 0xa2, 0xc7, 0xb4, 0xc4, 0x98, 0xc7, 0xaa, 0xe1, + 0x9b, 0xa1, 0xc4, 0x81, 0xc6, 0xbf, 0xc4, 0x8b, 0xc3, 0x85, 0xc3, 0x9b, 0x53, + 0xc2, 0xa3, 0xc5, 0xba, 0xc5, 0xbe, 0xc7, 0x86, 0xc5, 0xa3, 0xe1, 0x9a, 0xa5, + 0xe1, 0x9b, 0x9e, 0xc7, 0xb3, 0xc2, 0xb0, 0xc8, 0xb2, 0xc7, 0xb3, 0xc2, 0xb3, + 0xe1, 0x9a, 0xbd, 0xc4, 0x83, 0xc4, 0xa4, 0xc7, 0xaa, 0xc8, 0xa4, 0xc8, 0xb3, + 0xc4, 0x80, 0xc9, 0x87, 0xc9, 0x8d, 0x47, 0xc8, 0x96, 0xe1, 0x9b, 0x8c, 0xc6, + 0xb7, 0xe2, 0xb1, 0xaa, 0xc4, 0x8b, 0xc2, 0xaa, 0x44, 0xe2, 0xb1, 0xbb, 0xe1, + 0x9a, 0xab, 0xc3, 0x98, 0xe2, 0xb1, 0xaa, 0xc7, 0x85, 0xc6, 0xb9, 0xe2, 0xb1, + 0xad, 0xc5, 0x9e, 0xc5, 0xae, 0xc6, 0xa7, 0xc8, 0x87, 0xc4, 0xb8, 0x63, 0x2c, + 0x62, 0xc5, 0x8d, 0xc8, 0xa4, 0x50, 0x3a, 0xc6, 0xb3, 0x72, 0xe1, 0x9b, 0x8e, + 0xe1, 0x9a, 0xa4, 0xc5, 0x9a, 0xc8, 0xae, 0xc4, 0xa2, 0xc3, 0x88, 0xc6, 0x9d, + 0xc3, 0x93, 0xe1, 0x9a, 0xba, 0xc5, 0xb2, 0xc5, 0xb5, 0xc4, 0x95, 0xc2, 0xb8, + 0xc2, 0xae, 0xc6, 0x97, 0xc5, 0x94, 0xc7, 0x9e, 0xc2, 0xac, 0xc3, 0xb4, 0xe2, + 0xb1, 0xa9, 0xc8, 0x99, 0x5a, 0xc6, 0x82, 0x66, 0xe1, 0x9a, 0xb4, 0xc8, 0x87, + 0xe1, 0x9a, 0xb1, 0xc8, 0x82, 0xc3, 0xb7, 0xc3, 0x84, 0xc2, 0xb3, 0xc7, 0xbd, + 0xc8, 0x88, 0xc7, 0xbc, 0x79, 0xc7, 0x9b, 0x7a, 0xc5, 0x94, 0xc5, 0xb1, 0xc8, + 0xb7, 0xc3, 0x80, 0xc7, 0xbd, 0xc6, 0xa2, 0xc6, 0xa4, 0xc4, 0xad, 0xc7, 0x85, + 0xc9, 0x88, 0xc6, 0xbb, 0xe1, 0x9b, 0x99, 0xc6, 0xb9, 0xc9, 0x8c, 0xc7, 0xb6, + 0xc6, 0xb8, 0x7a, 0xc8, 0x82, 0xe2, 0xb1, 0xa9, 0xc3, 0x80, 0xe2, 0xb1, 0xb3, + 0xe1, 0x9b, 0x83, 0xe1, 0x9a, 0xaf, 0xc5, 0x9a, 0xe2, 0xb1, 0xa2, 0xc7, 0x8e, + 0x68, 0xe1, 0x9b, 0x8c, 0xc4, 0xaa, 0xc7, 0xb5, 0xc3, 0xa6, 0xc7, 0xb9, 0xc5, + 0x87, 0xc8, 0x92, 0xc7, 0x90, 0xc8, 0x98, 0xc5, 0xba, 0xc3, 0xb9, 0xc2, 0xac, + 0xc9, 0x89, 0xc3, 0x81, 0xc7, 0x95, 0xc4, 0xbc, 0xe2, 0xb1, 0xba, 0xe2, 0xb1, + 0xb6, 0xc7, 0x83, 0x02, 0xfd, 0xb5, 0x2f, 0x06, 0x23, 0x69, 0xde, 0x65, 0x89, + 0x00, 0xe6, 0xd7, 0xa3, 0xd6, 0xef, 0x40, 0x89, 0xb0, 0x24, 0xe2, 0xdf, 0x0e, + 0x02, 0xa3, 0xe8, 0x12, 0x27, 0x35, 0xac, 0xb6, 0x46, 0x2e, 0x98, 0x38, 0x89, + 0x7a, 0x84, 0x02, 0x5b, 0x7e, 0xb3, 0x2e, 0x0a, 0x35, 0xe0, 0x6a, 0x80, 0x1c, + 0x6e, 0x7c, 0x73, 0xfb, 0xce, 0x7d, 0x5d, 0x43, 0x37, 0x1c, 0xac, 0x7a, 0xc5, + 0x98, 0xdb, 0x0a, 0xce, 0xcb, 0x0e, 0x34, 0x66, 0xc3, 0xd1, 0x40, 0xcf, 0xca, + 0x1e, 0xd0, 0xdf, 0x1c, 0xdf, 0x40, 0x67, 0xd4, 0x2d, 0x29, 0x7d, 0xfe, 0x0b, + 0x32, 0xfc, 0xb8, 0x75, 0x33, 0x81, 0x71, 0xdd, 0x1e, 0xeb, 0xeb, 0x12, 0x3f, + 0xea, 0xfa, 0x32, 0xa5, 0xd8, 0xc7, 0xce, 0x58, 0x39, 0x0e, 0xa2, 0xdf, 0x26, + 0xc6, 0x08, 0x88, 0xda, 0xf3, 0x81, 0x6b, 0x7d, 0x02, 0x97, 0xa1, 0x7b, 0x5f, + 0x5d, 0x20, 0x8d, 0xe9, 0x22, 0xe7, 0x73, 0x97, 0x2b, 0x95, 0xe6, 0x96, 0x5e, + 0x58, 0xfb, 0xf6, 0x4f, 0xae, 0x06, 0xf0, 0xc3, 0xf3, 0x78, 0x6f, 0x3d, 0x52, + 0xb3, 0x1b, 0x50, 0x6b, 0x6e, 0xaf, 0xc4, 0x77, 0x07, 0x78, 0x8e, 0x5b, 0x83, + 0x6d, 0x8a, 0xb5, 0x99, 0x42, 0xc2, 0x4f, 0x84, 0xac, 0xbd, 0xf6, 0x7a, 0x58, + 0x72, 0x7f, 0x6f, 0x3d, 0xf3, 0xcf, 0x5e, 0x6c, 0xe3, 0xa4, 0x27, 0x29, 0x90, + 0x3e, 0x7c, 0x53, 0xd1, 0x15, 0x54, 0x5f, 0xfb, 0xce, 0x7d, 0x5d, 0x43, 0x37, + 0x1c, 0xac, 0x7a, 0xc5, 0x98, 0xdb, 0x0a, 0xce, 0xcb, 0x0e, 0x34, 0x66, 0xc3, + 0xd1, 0x40, 0xcf, 0xca, 0x1e, 0xd0, 0xdf, 0x1c, 0xdf, 0x40, 0x67, 0xd4, 0x2d, + 0xbc, 0x39, 0x9d, 0x19, 0x77, 0xb8, 0xf6, 0x58, 0x8c, 0x0e, 0x08, 0x72, 0x10, + 0xf0, 0x51, 0xcf, 0x6e, 0x36, 0xe1, 0x4e, 0x32, 0xaa, 0x23, 0xba, 0x6a, 0xe4, + 0x33, 0x1f, 0x22, 0x39, 0xe7, 0x05, 0xf6, 0x79, 0x54, 0x2f, 0xbd, 0x4e, 0xd2, + 0xbf, 0x31, 0x91, 0x24, 0x36, 0x81, 0xf8, 0x27, 0x89, 0x6b, 0x1b, 0xb1, 0xc4, + 0xb7, 0x8b, 0x34, 0xc4, 0x87, 0xa4, 0xed, 0xfa, 0x97, 0xd3, 0x6d, 0x62, 0x00, + 0xfd, 0x33, 0x01, 0xc7, 0xa3, 0xce, 0x87, 0x4a, 0xc7, 0xa5, 0xc6, 0xac, 0xc5, + 0xa8, 0xc5, 0x9d, 0xc2, 0xb2, 0xc4, 0x8c, 0xc9, 0x83, 0xcd, 0xbe, 0x72, 0xc5, + 0x88, 0xe2, 0xb1, 0xb8, 0xe1, 0x9b, 0x84, 0xc4, 0xa8, 0xc7, 0xae, 0xc6, 0x8d, + 0xc7, 0xa9, 0xe1, 0x9b, 0xa6, 0x2f, 0xc7, 0x88, 0xc6, 0x9f, 0xc5, 0xb9, 0x40, + 0xc5, 0x8f, 0x42, 0xc6, 0x98, 0xe1, 0x9b, 0x95, 0xcd, 0xbb, 0xe1, 0x9a, 0xb7, + 0xc4, 0x82, 0xc9, 0x8e, 0x6c, 0xc5, 0x97, 0xc5, 0x85, 0xc8, 0x82, 0xc7, 0xbd, + 0xcd, 0xbb, 0xce, 0x89, 0xc8, 0xa1, 0xc3, 0x88, 0xc7, 0x89, 0xe2, 0xb1, 0xab, + 0xc6, 0xbd, 0xe1, 0x9a, 0xa0, 0xc6, 0x90, 0x25, 0xc7, 0xb4, 0xe1, 0x9a, 0xb6, + 0xc8, 0xa8, 0xc4, 0xbf, 0x48, 0xc3, 0xa3, 0xc3, 0x99, 0xc8, 0xb2, 0xc5, 0xa2, + 0xc8, 0x9d, 0xc4, 0xbc, 0xc7, 0xa3, 0xc5, 0x9b, 0xc8, 0x9b, 0xc7, 0xbd, 0xc4, + 0x8a, 0xe1, 0x9a, 0xa2, 0xe2, 0xb1, 0xae, 0xc5, 0xa7, 0xc6, 0x8f, 0xc5, 0x90, + 0x2e, 0x55, 0xc8, 0xb0, 0xc4, 0xa6, 0xe1, 0x9a, 0xa4, 0xe1, 0x9a, 0xae, 0xe1, + 0x9b, 0xae, 0xc7, 0x8c, 0xc4, 0x8b, 0xc7, 0x9f, 0xc7, 0xb9, 0xc8, 0x90, 0xc5, + 0xa4, 0xc5, 0xbe, 0xc8, 0xb6, 0xe2, 0xb1, 0xa2, 0xc4, 0xa3, 0x40, 0xc6, 0x97, + 0x2d, 0xc6, 0x94, 0xc7, 0xb7, 0xc8, 0xad, 0xe1, 0x9a, 0xa7, 0x54, 0xc8, 0x9e, + 0xe1, 0x9b, 0x9b, 0xc2, 0xa2, 0xc5, 0xbd, 0xc4, 0xbf, 0xc7, 0x80, 0x7b, 0xc2, + 0xaa, 0x30, 0xc5, 0xb6, 0xc8, 0x89, 0xce, 0x84, 0xc3, 0xa1, 0xc5, 0xb8, 0x40, + 0xe1, 0x9a, 0xbb, 0x60, 0xc6, 0x87, 0xe1, 0x9b, 0x87, 0xcd, 0xb7, 0xc5, 0xa1, + 0xc3, 0x98, 0xc3, 0x83, 0xe1, 0x9b, 0xab, 0xc3, 0xad, 0xc3, 0x87, 0xc7, 0xb1, + 0xc7, 0xa1, 0xe1, 0x9b, 0x87, 0xe2, 0xb1, 0xbc, 0xe2, 0xb1, 0xa9, 0x76, 0xc6, + 0x86, 0x76, 0xc4, 0x8c, 0xc7, 0xb6, 0xc7, 0x8c, 0xc4, 0x94, 0xc2, 0xbb, 0x75, + 0xe1, 0x9b, 0x81, 0xc4, 0xba, 0xe1, 0x9a, 0xb1, 0xc6, 0x92, 0xc6, 0xa6, 0x45, + 0xc4, 0xb7, 0xc6, 0x83, 0xce, 0x88, 0xc3, 0xad, 0xcd, 0xb6, 0xc3, 0x97, 0x43, + 0xe2, 0xb1, 0xb9, 0xc8, 0xad, 0xc8, 0xb8, 0x63, 0xc7, 0x9d, 0x5a, 0x00, 0x01, + 0x8b, 0x4a, 0xc5, 0xaa, 0xc3, 0x99, 0xc8, 0x9f, 0xc7, 0x80, 0xc2, 0xa7, 0xc8, + 0x96, 0xe1, 0x9b, 0x9b, 0xc9, 0x84, 0xe1, 0x9b, 0xa5, 0x36, 0xe2, 0xb1, 0xa4, + 0xc8, 0x80, 0xe1, 0x9b, 0x84, 0xc7, 0x83, 0xcd, 0xb4, 0xe1, 0x9a, 0xa6, 0xc8, + 0x82, 0xc7, 0x99, 0xc3, 0xba, 0x5e, 0xc2, 0xb3, 0xc3, 0x85, 0xc7, 0x86, 0xc3, + 0xa3, 0xc2, 0xa7, 0xc3, 0xaa, 0xe2, 0xb1, 0xa2, 0xc9, 0x81, 0xc3, 0x89, 0xc7, + 0x92, 0xe1, 0x9b, 0x99, 0xc9, 0x8c, 0xc5, 0x9c, 0xe1, 0x9b, 0x82, 0xc4, 0x80, + 0xc7, 0x87, 0x64, 0x55, 0xe1, 0x9b, 0x87, 0x61, 0xc4, 0x85, 0x61, 0xc3, 0xaf, + 0xc5, 0xb5, 0xc5, 0x9f, 0x71, 0xe2, 0xb1, 0xac, 0xcd, 0xb3, 0xc2, 0xaf, 0xe1, + 0x9b, 0x8c, 0x61, 0xc2, 0xa5, 0xcd, 0xb2, 0xc8, 0x9a, 0xc6, 0x99, 0xc6, 0x98, + 0xe2, 0xb1, 0xb3, 0xc8, 0x87, 0xc3, 0xb0, 0xc3, 0x87, 0x75, 0xc6, 0x8d, 0x56, + 0xe1, 0x9b, 0x93, 0xc5, 0x98, 0xc6, 0xbe, 0xc4, 0x84, 0x5a, 0x03, 0x50, 0x55, + 0xe0, 0x23, 0x89, 0x37, 0xb6, 0x6e, 0x2e, 0x93, 0x95, 0xf6, 0xcd, 0xe9, 0x1b, + 0x60, 0x4b, 0x07, 0xea, 0xe9, 0x87, 0x17, 0x8a, 0x88, 0x7e, 0xf2, 0xdd, 0x4e, + 0x84, 0x2a, 0xc4, 0x1e, 0x7c, 0x68, 0x2b, 0xb7, 0xcb, 0x01, 0xa2, 0x21, 0xa4, + 0x4c, 0x24, 0x2a, 0x56, 0x07, 0x98, 0x05, 0xa5, 0xdd, 0x69, 0x3e, 0x8d, 0xdf, + 0x18, 0x0d, 0x3c, 0x8e, 0xb4, 0xba, 0x97, 0x7b, 0xc1, 0xb8, 0xbe, 0xb3, 0xdb, + 0x95, 0xf3, 0x82, 0xc3, 0xe4, 0x02, 0xfa, 0xf3, 0xb6, 0x7b, 0xf8, 0xd4, 0x04, + 0x4d, 0x9d, 0xb6, 0x18, 0x42, 0xa3, 0xaf, 0x93, 0x33, 0x16, 0x83, 0x0d, 0x53, + 0xa7, 0xcb, 0x88, 0xd2, 0xa9, 0x82, 0x3b, 0xcd, 0xfb, 0xec, 0x8f, 0x18, 0xc8, + 0x6a, 0xc3, 0xdf, 0x89, 0x42, 0x38, 0x00, 0x1b, 0x28, 0xfa, 0x31, 0x3f, 0x80, + 0xcf, 0xe7, 0x5f, 0x7c, 0xb5, 0xd9, 0x73, 0xcc, 0x77, 0xf3, 0x21, 0xf1, 0x95, + 0x2f, 0x30, 0x50, 0x18, 0xc0, 0xbf, 0x23, 0x8b, 0x80, 0xe3, 0x21, 0x19, 0x90, + 0x60, 0x66, 0x6f, 0x38, 0xbb, 0x3e, 0xdf, 0x2d, 0x84, 0x15, 0xd5, 0x5a, 0x3f, + 0x1c, 0x48, 0xad, 0xaf, 0xe8, 0x90, 0x1c, 0x96, 0xfc, 0x7a, 0xc0, 0xd3, 0xf7, + 0xf8, 0x37, 0x17, 0xab, 0x11, 0xce, 0xb5, 0x8f, 0xaf, 0xb4, 0xbb, 0x84, 0xc7, + 0xb2, 0x54, 0x37, 0x9c, 0x61, 0x2c, 0x87, 0x5a, 0xc1, 0x4a, 0x6c, 0xb3, 0x55, + 0xa3, 0x3e, 0x8d, 0xdf, 0x18, 0x0d, 0x3c, 0x8e, 0xb4, 0xba, 0x97, 0x7b, 0xc1, + 0xb8, 0xbe, 0xb3, 0xdb, 0x95, 0xf3, 0x82, 0xc3, 0xe4, 0x02, 0xfa, 0xf3, 0xb6, + 0x7b, 0xf8, 0xd4, 0x04, 0x4d, 0x9d, 0xb6, 0xd4, 0x32, 0x91, 0x45, 0x80, 0x3c, + 0x6b, 0xfb, 0x82, 0xe2, 0x9a, 0xb0, 0x29, 0x9f, 0x91, 0x7a, 0x74, 0x02, 0x81, + 0x57, 0x35, 0x87, 0x28, 0xdb, 0x49, 0x92, 0xe9, 0x04, 0x20, 0xd2, 0x33, 0x0d, + 0x69, 0xe9, 0x57, 0x52, 0x7f, 0x5e, 0xa7, 0x41, 0x17, 0x56, 0xea, 0x6d, 0xd8, + 0x1e, 0xdb, 0x0e, 0x0e, 0x6f, 0x1b, 0xd7, 0x68, 0x8f, 0x54, 0x93, 0x44, 0x10, + 0xbf, 0x30, 0x90, 0x22, 0x01, 0xe1, 0x86, 0xbd, 0x82, 0x9f, 0x32, 0x34, 0x17, + 0x41, 0x08, 0xdc, 0x2a, 0xff, 0xd5, 0x1b, 0xdd, 0x7b, 0x32, 0xc5, 0x37, 0x6f, + 0xeb, 0x3b, 0x3e, 0x15, 0x96, 0x3d, 0xf6, 0x74, 0x74, 0x4c, 0xda, 0x70, 0xff, + 0x9b, 0x17, 0x7c, 0x5d, 0x13, 0x01, 0x89, 0x1d, 0x85, 0x1f, 0xd5, 0xbb, 0xad, + 0x3b, 0xa1, 0xa3, 0xd6, 0xb0, 0x3e, 0x8d, 0xdf, 0x18, 0x0d, 0x3c, 0x8e, 0xb4, + 0xba, 0x97, 0x7b, 0xc1, 0xb8, 0xbe, 0xb3, 0xdb, 0x95, 0xf3, 0x82, 0xc3, 0xe4, + 0x02, 0xfa, 0xf3, 0xb6, 0x7b, 0xf8, 0xd4, 0x04, 0x4d, 0x9d, 0xb6, 0x79, 0xef, + 0x02, 0xa1, 0x63, 0xa4, 0xd5, 0x2f, 0xe8, 0xe2, 0x69, 0x1c, 0xd1, 0xce, 0x9f, + 0x84, 0xf7, 0x36, 0x9d, 0xa3, 0x64, 0x35, 0x79, 0x12, 0xc0, 0xa6, 0xfc, 0xe6, + 0x73, 0x77, 0xaf, 0x3b, 0xd7, 0x8f, 0x24, 0x15, 0xaa, 0x9d, 0x7e, 0x80, 0x54, + 0x1b, 0x11, 0xf7, 0x99, 0x35, 0x28, 0x5b, 0xfa, 0x5e, 0x79, 0x08, 0xea, 0x28, + 0x13, 0x4a, 0xf6, 0x12, 0x5d, 0x36, 0x84, 0xa8, 0x95, 0x3f, 0x01, 0x7f, 0x7e, + 0xc0, 0xd0, 0xb8, 0xf1, 0xde, 0xfd, 0xa8, 0x15, 0xf7, 0x81, 0x2d, 0xba, 0xfe, + 0x2e, 0xfa, 0xc7, 0xb7, 0x3c, 0xe6, 0xcf, 0x88, 0x6a, 0x5f, 0x15, 0xed, 0x8a, + 0x50, 0x78, 0x53, 0xed, 0x73, 0x1b, 0x81, 0x35, 0x92, 0x3e, 0x00, 0xae, 0xb6, + 0x74, 0xc0, 0x67, 0xc8, 0x2b, 0x14, 0x01, 0x38, 0x77, 0x8c, 0xa6, 0x91, 0x06, + 0xcf, 0xce, 0x4d, 0x18, 0xc5, 0x4d, 0x43, 0x52, 0x4c, 0xa6, 0x7e, 0x8c, 0x46, + 0x62, 0xb4, 0xa4, 0x01, 0xbb, 0x7f, 0xf2, 0x4c, 0xaa, 0xa8, 0x85, 0x1a, 0x70, + 0xe8, 0xd4, 0xa6, 0x37, 0xda, 0xa7, 0x5d, 0xdf, 0x21, 0x9a, 0xce, 0x46, 0x41, + 0x35, 0xbc, 0x18, + ], + txid: [ + 0xe6, 0xdc, 0x1a, 0xac, 0x7f, 0x20, 0x51, 0x71, 0xdc, 0xf3, 0xec, 0x07, 0x0a, + 0xb5, 0x72, 0xb7, 0x8b, 0x61, 0xcc, 0xac, 0x35, 0x80, 0x23, 0x9b, 0x99, 0xa0, + 0xea, 0x7e, 0x3d, 0x94, 0x75, 0x71, + ], + auth_digest: [ + 0x1b, 0x58, 0x9c, 0x77, 0x0a, 0x39, 0x8f, 0xf1, 0x88, 0x47, 0xcf, 0x9a, 0xf9, + 0x1d, 0x36, 0x78, 0x57, 0x03, 0xc9, 0xf3, 0x8a, 0xd5, 0x21, 0xa0, 0x33, 0x80, + 0x8d, 0x37, 0x09, 0xbe, 0x62, 0x88, + ], + amounts: vec![], + script_pubkeys: vec![], + transparent_input: None, + sighash_shielded: [ + 0xe6, 0xdc, 0x1a, 0xac, 0x7f, 0x20, 0x51, 0x71, 0xdc, 0xf3, 0xec, 0x07, 0x0a, + 0xb5, 0x72, 0xb7, 0x8b, 0x61, 0xcc, 0xac, 0x35, 0x80, 0x23, 0x9b, 0x99, 0xa0, + 0xea, 0x7e, 0x3d, 0x94, 0x75, 0x71, + ], + sighash_all: None, + sighash_none: None, + sighash_single: None, + sighash_all_anyone: None, + sighash_none_anyone: None, + sighash_single_anyone: None, + }, + ] + } +} diff --git a/zcash_primitives/src/transaction/txid.rs b/zcash_primitives/src/transaction/txid.rs index 84941271c9..a89537c1fd 100644 --- a/zcash_primitives/src/transaction/txid.rs +++ b/zcash_primitives/src/transaction/txid.rs @@ -5,7 +5,8 @@ use std::io::Write; use blake2b_simd::{Hash as Blake2bHash, Params, State}; use byteorder::{LittleEndian, WriteBytesExt}; use ff::PrimeField; -use orchard::bundle::{self as orchard}; +use orchard::bundle; +use orchard::orchard_flavor::OrchardVanilla; use crate::{ consensus::{BlockHeight, BranchId}, @@ -23,6 +24,12 @@ use super::{ Authorization, Authorized, TransactionDigest, TransparentDigests, TxDigests, TxId, TxVersion, }; +#[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] +use orchard::{ + issuance::{IssueBundle, Signed}, + orchard_flavor::OrchardZSA, +}; + #[cfg(zcash_unstable = "zfuture")] use super::{ components::tze::{self, TzeIn, TzeOut}, @@ -182,12 +189,15 @@ pub(crate) fn hash_sapling_outputs(shielded_outputs: &[OutputDescription]) for s_out in shielded_outputs { ch.write_all(s_out.cmu().to_bytes().as_ref()).unwrap(); ch.write_all(s_out.ephemeral_key().as_ref()).unwrap(); - ch.write_all(&s_out.enc_ciphertext()[..52]).unwrap(); + ch.write_all(&s_out.enc_ciphertext().as_ref()[..52]) + .unwrap(); - mh.write_all(&s_out.enc_ciphertext()[52..564]).unwrap(); + mh.write_all(&s_out.enc_ciphertext().as_ref()[52..564]) + .unwrap(); nh.write_all(&s_out.cv().to_bytes()).unwrap(); - nh.write_all(&s_out.enc_ciphertext()[564..]).unwrap(); + nh.write_all(&s_out.enc_ciphertext().as_ref()[564..]) + .unwrap(); nh.write_all(&s_out.out_ciphertext()[..]).unwrap(); } @@ -303,6 +313,8 @@ impl TransactionDigest for TxIdDigester { type TransparentDigest = Option>; type SaplingDigest = Option; type OrchardDigest = Option; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type IssueDigest = Option; #[cfg(zcash_unstable = "zfuture")] type TzeDigest = Option>; @@ -335,11 +347,24 @@ impl TransactionDigest for TxIdDigester { fn digest_orchard( &self, - orchard_bundle: Option<&orchard::Bundle>, + orchard_bundle: Option<&bundle::Bundle>, + ) -> Self::OrchardDigest { + orchard_bundle.map(|b| b.commitment().0) + } + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn digest_orchard_zsa( + &self, + orchard_bundle: Option<&bundle::Bundle>, ) -> Self::OrchardDigest { orchard_bundle.map(|b| b.commitment().0) } + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn digest_issue(&self, issue_bundle: Option<&IssueBundle>) -> Self::IssueDigest { + issue_bundle.map(|b| b.commitment().0) + } + #[cfg(zcash_unstable = "zfuture")] fn digest_tze(&self, tze_bundle: Option<&tze::Bundle>) -> Self::TzeDigest { tze_bundle.map(tze_digests) @@ -351,6 +376,9 @@ impl TransactionDigest for TxIdDigester { transparent_digests: Self::TransparentDigest, sapling_digest: Self::SaplingDigest, orchard_digest: Self::OrchardDigest, + #[rustfmt::skip] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_digest: Self::IssueDigest, #[cfg(zcash_unstable = "zfuture")] tze_digests: Self::TzeDigest, ) -> Self::Digest { TxDigests { @@ -358,12 +386,15 @@ impl TransactionDigest for TxIdDigester { transparent_digests, sapling_digest, orchard_digest, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_digest, #[cfg(zcash_unstable = "zfuture")] tze_digests, } } } +#[allow(clippy::too_many_arguments)] pub(crate) fn to_hash( _txversion: TxVersion, consensus_branch_id: BranchId, @@ -371,6 +402,9 @@ pub(crate) fn to_hash( transparent_digest: Blake2bHash, sapling_digest: Option, orchard_digest: Option, + #[rustfmt::skip] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_digest: Option, #[cfg(zcash_unstable = "zfuture")] tze_digests: Option<&TzeDigests>, ) -> Blake2bHash { let mut personal = [0; 16]; @@ -390,11 +424,21 @@ pub(crate) fn to_hash( .unwrap(); h.write_all( orchard_digest - .unwrap_or_else(orchard::commitments::hash_bundle_txid_empty) + .unwrap_or_else(bundle::commitments::hash_bundle_txid_empty) .as_bytes(), ) .unwrap(); + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + if _txversion.has_orchard_zsa() { + h.write_all( + issue_digest + .unwrap_or_else(bundle::commitments::hash_issue_bundle_txid_empty) + .as_bytes(), + ) + .unwrap(); + } + #[cfg(zcash_unstable = "zfuture")] if _txversion.has_tze() { h.write_all(hash_tze_txid_data(tze_digests).as_bytes()) @@ -416,6 +460,8 @@ pub fn to_txid( hash_transparent_txid_data(digests.transparent_digests.as_ref()), digests.sapling_digest, digests.orchard_digest, + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + digests.issue_digest, #[cfg(zcash_unstable = "zfuture")] digests.tze_digests.as_ref(), ); @@ -437,6 +483,9 @@ impl TransactionDigest for BlockTxCommitmentDigester { type SaplingDigest = Blake2bHash; type OrchardDigest = Blake2bHash; + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + type IssueDigest = Blake2bHash; + #[cfg(zcash_unstable = "zfuture")] type TzeDigest = Blake2bHash; @@ -492,9 +541,26 @@ impl TransactionDigest for BlockTxCommitmentDigester { fn digest_orchard( &self, - orchard_bundle: Option<&orchard::Bundle>, + orchard_bundle: Option<&bundle::Bundle>, + ) -> Self::OrchardDigest { + orchard_bundle.map_or_else(bundle::commitments::hash_bundle_auth_empty, |b| { + b.authorizing_commitment().0 + }) + } + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn digest_orchard_zsa( + &self, + orchard_bundle: Option<&bundle::Bundle>, ) -> Self::OrchardDigest { - orchard_bundle.map_or_else(orchard::commitments::hash_bundle_auth_empty, |b| { + orchard_bundle.map_or_else(bundle::commitments::hash_bundle_auth_empty, |b| { + b.authorizing_commitment().0 + }) + } + + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + fn digest_issue(&self, issue_bundle: Option<&IssueBundle>) -> Self::IssueDigest { + issue_bundle.map_or_else(bundle::commitments::hash_issue_bundle_auth_empty, |b| { b.authorizing_commitment().0 }) } @@ -516,6 +582,9 @@ impl TransactionDigest for BlockTxCommitmentDigester { transparent_digest: Self::TransparentDigest, sapling_digest: Self::SaplingDigest, orchard_digest: Self::OrchardDigest, + #[rustfmt::skip] + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + issue_digest: Self::IssueDigest, #[cfg(zcash_unstable = "zfuture")] tze_digest: Self::TzeDigest, ) -> Self::Digest { let digests = [transparent_digest, sapling_digest, orchard_digest]; @@ -531,6 +600,11 @@ impl TransactionDigest for BlockTxCommitmentDigester { h.write_all(digest.as_bytes()).unwrap(); } + #[cfg(zcash_unstable = "nu6" /* TODO nu7 */ )] + if TxVersion::suggested_for_branch(consensus_branch_id).has_orchard_zsa() { + h.write_all(issue_digest.as_bytes()).unwrap(); + } + #[cfg(zcash_unstable = "zfuture")] if TxVersion::suggested_for_branch(consensus_branch_id).has_tze() { h.write_all(tze_digest.as_bytes()).unwrap();