diff --git a/README.md b/README.md index e3acc524..d82b2511 100644 --- a/README.md +++ b/README.md @@ -197,7 +197,22 @@ full reference. result. Identity fields are sent once to the provider and never stored. 4. **Proof expiry.** `ProofRegistry` uses persistent storage with an explicit `expiry` (checked against ledger time) plus TTL extension. -5. **Contract upgradeability.** `ProofRegistry` supports an admin-controlled upgrade path using Soroban's native `update_current_contract_wasm` capability. The administrative key is initialized at deployment time and can be subsequently transferred to a multisig wallet or DAO. +5. **Rent and archival.** Soroban persistent entries carry their own TTL, + separate from `expiry` — an entry whose TTL reaches zero is archived + (evicted from live state) regardless of whether the credential it caches + is still valid. `submit_proof` / `submit_proofs_batch` extend a proof's + TTL to cover at least its `expiry` (converted from a ledger timestamp to a + ledger count, capped at the network's max allowed entry TTL — currently + ~1 year on mainnet), so a long-lived credential doesn't outlive its + storage. Because that cap can be shorter than a credential's remaining + lifetime, `bump_claim(holder, credential_type)` is exposed as a + permissionless entry point — no `require_auth` — that anyone (the holder, + a relying protocol, or unrelated rent-keeper automation) can call to top + up a still-valid claim's TTL without resubmitting a proof. See the + "Rent and archival" doc comment at the top of + [`contracts/proof_registry/src/lib.rs`](contracts/proof_registry/src/lib.rs) + for the full model. +6. **Contract upgradeability.** `ProofRegistry` supports an admin-controlled upgrade path using Soroban's native `update_current_contract_wasm` capability. The administrative key is initialized at deployment time and can be subsequently transferred to a multisig wallet or DAO. --- diff --git a/contracts/proof_registry/src/lib.rs b/contracts/proof_registry/src/lib.rs index c5e148a7..cbf3a4f5 100644 --- a/contracts/proof_registry/src/lib.rs +++ b/contracts/proof_registry/src/lib.rs @@ -13,15 +13,66 @@ //! `submit_proofs_batch` accepts up to 5 `ProofSubmission` entries and verifies //! and stores all of them atomically: if any single proof fails the entire call //! reverts, saving the holder from multiple wallet confirmations and fee payments. +//! +//! ## Rent and archival +//! +//! Soroban persistent storage isn't free forever: every entry has a TTL +//! (time-to-live), expressed as a number of ledgers, not a wall-clock +//! duration. Once an entry's TTL reaches zero it is "archived" — evicted from +//! the live ledger state — and any read of it fails until someone pays to +//! restore it. A `ProofRecord` that gets archived while its credential is +//! still logically valid would make `is_verified` / `check_claim` behave as +//! if the holder had never proved anything, even though nothing about the +//! proof itself changed. +//! +//! `expiry` (the field on `ProofRecord`) and TTL are two independent clocks: +//! `expiry` is a ledger *timestamp* (seconds) the contract compares against +//! `env.ledger().timestamp()` to decide whether a claim is still valid; +//! TTL is a ledger *count* the network uses to decide whether the entry is +//! still resident at all. A record can be logically valid (`expiry` in the +//! future) yet physically gone (TTL hit zero) — that's the failure mode this +//! module guards against: +//! +//! - `submit_proof` / `submit_proofs_batch` extend the entry's TTL to cover +//! at least `expiry` (translated from seconds to ledgers via +//! `ttl_for_expiry`), not just a fixed default — a long-lived credential +//! (e.g. a 1-year expiry) gets a TTL long enough to actually survive to +//! its own expiry, bounded by the network's max allowed entry TTL +//! (`env.storage().max_ttl()`; currently ~1 year on Stellar mainnet, so a +//! sufficiently long-lived credential's proof entry may still need +//! periodic top-ups — see `bump_claim` below). +//! - `bump_claim` is a permissionless entry point — no `require_auth`, since +//! topping up rent benefits the holder and costs the caller only gas, not +//! the holder's assets or authority — that anyone (the holder, the +//! protocol relying on the claim, or unrelated rent-keeper automation) can +//! call to refresh a still-valid claim's TTL without resubmitting a proof. +//! This matters because the ledger-per-second conversion `ttl_for_expiry` +//! uses is an approximation (`SECONDS_PER_LEDGER`), and because the +//! network's max entry TTL can itself be shorter than a credential's +//! remaining lifetime, requiring a later top-up as the ledger advances. +//! - `extend_ttl`'s `threshold` parameter (`PROOF_BUMP_THRESHOLD`) means both +//! paths are no-ops once the entry already has enough TTL headroom — so +//! calling `bump_claim` speculatively, or resubmitting a proof early, never +//! wastes a network write. use soroban_sdk::{ contract, contractclient, contracterror, contractimpl, contracttype, panic_with_error, symbol_short, Address, Bytes, BytesN, Env, Symbol, Vec, }; -// Persistent-entry lifetime management (~5s ledgers). -const DAY_IN_LEDGERS: u32 = 17280; +// Persistent-entry lifetime management. Ledgers close roughly every 5 +// seconds on Stellar — used only to translate a credential's `expiry` (a +// wall-clock ledger *timestamp*, seconds) into the ledger *count* delta +// `extend_ttl` expects. This is an approximation, not a network guarantee; +// `bump_claim` exists so a claim's TTL can be topped up later if the +// estimate runs short before the credential itself expires. +const SECONDS_PER_LEDGER: u64 = 5; +const DAY_IN_LEDGERS: u32 = (86_400 / SECONDS_PER_LEDGER) as u32; const PROOF_BUMP_THRESHOLD: u32 = DAY_IN_LEDGERS; +// Floor TTL applied on every submission, independent of `expiry` — keeps a +// short-lived claim's entry (and, on `revoke`, its revocation tombstone) +// resident for a reasonable minimum window even when the credential itself +// expires sooner than that. const PROOF_TTL: u32 = 90 * DAY_IN_LEDGERS; /// Maximum number of submissions accepted by `submit_proofs_batch`. @@ -118,6 +169,9 @@ pub enum Error { /// Two or more submissions in the batch share the same `credential_type`; /// only the last write would survive, so the batch is rejected outright. DuplicateCredentialType = 9, + /// `bump_claim` was called for a claim that exists but is no longer + /// valid (revoked or expired) — there is nothing worth keeping alive. + ClaimNotValid = 10, } #[contract] @@ -219,9 +273,11 @@ impl ProofRegistry { issuer: Some(issuer_id), }; env.storage().persistent().set(&key, &record); - env.storage() - .persistent() - .extend_ttl(&key, PROOF_BUMP_THRESHOLD, PROOF_TTL); + env.storage().persistent().extend_ttl( + &key, + PROOF_BUMP_THRESHOLD, + Self::ttl_for_expiry(&env, expiry), + ); // Emit an event matching the event emission shape in the batch-proof path. env.events().publish( @@ -299,9 +355,11 @@ impl ProofRegistry { issuer: Some(sub.issuer_id.clone()), }; env.storage().persistent().set(&key, &record); - env.storage() - .persistent() - .extend_ttl(&key, PROOF_BUMP_THRESHOLD, PROOF_TTL); + env.storage().persistent().extend_ttl( + &key, + PROOF_BUMP_THRESHOLD, + Self::ttl_for_expiry(&env, sub.expiry), + ); // Emit one event per credential, matching the shape callers already // expect from the single-proof path. @@ -432,6 +490,38 @@ impl ProofRegistry { ); } + /// Top up the TTL of a still-valid claim so its `ProofRecord` doesn't get + /// archived while the credential it caches remains valid. Permissionless + /// by design — no `require_auth` — since extending storage rent costs + /// only the caller's transaction fee and cannot affect the holder's + /// claim in any other way; anyone (the holder, a relying protocol, or + /// unrelated rent-keeper automation) can call this to keep a claim alive. + /// See the module-level "Rent and archival" doc for why this is needed + /// even though `submit_proof` already extends the TTL on write. + /// + /// Panics with `ProofNotFound` if there's no claim for `(holder, + /// credential_type)`, or `ClaimNotValid` if one exists but is revoked or + /// past its `expiry` — bumping rent for a claim nothing should be + /// trusting anymore would just waste the caller's fee. + pub fn bump_claim(env: Env, holder: Address, credential_type: Symbol) { + let key = DataKey::Proof(holder, credential_type); + let record: ProofRecord = env + .storage() + .persistent() + .get(&key) + .unwrap_or_else(|| panic_with_error!(&env, Error::ProofNotFound)); + + if record.revoked || record.expiry <= env.ledger().timestamp() { + panic_with_error!(&env, Error::ClaimNotValid); + } + + env.storage().persistent().extend_ttl( + &key, + PROOF_BUMP_THRESHOLD, + Self::ttl_for_expiry(&env, record.expiry), + ); + } + pub fn verifier_address(env: Env) -> Address { Self::verifier(&env) } @@ -486,6 +576,23 @@ impl ProofRegistry { true } + /// Ledger-count TTL that covers `expiry` (a ledger timestamp, seconds), + /// with a day of headroom so the entry doesn't archive right at the + /// moment the credential itself expires, floored at `PROOF_TTL` (so a + /// short-lived credential's entry still gets a reasonable minimum + /// residency) and capped at the network's max allowed entry TTL — see + /// the module-level "Rent and archival" doc. + fn ttl_for_expiry(env: &Env, expiry: u64) -> u32 { + let now = env.ledger().timestamp(); + let seconds_remaining = expiry.saturating_sub(now); + let ledgers_remaining = seconds_remaining / SECONDS_PER_LEDGER; + let desired = ledgers_remaining + .saturating_add(DAY_IN_LEDGERS as u64) + .max(PROOF_TTL as u64); + let max_ttl = env.storage().max_ttl() as u64; + desired.min(max_ttl) as u32 + } + fn verifier(env: &Env) -> Address { env.storage() .instance() diff --git a/contracts/proof_registry/src/test.rs b/contracts/proof_registry/src/test.rs index 0387a446..322c7098 100644 --- a/contracts/proof_registry/src/test.rs +++ b/contracts/proof_registry/src/test.rs @@ -7,8 +7,10 @@ use credential_verifier::{CredentialVerifier, CredentialVerifierClient}; use issuer_registry::{IssuerRegistry, IssuerRegistryClient}; use soroban_sdk::{ symbol_short, - testutils::{Address as _, Events as _, Ledger as _, MockAuth, MockAuthInvoke}, - vec, Address, BytesN, Bytes, Env, IntoVal, + testutils::{ + storage::Persistent as _, Address as _, Events as _, Ledger as _, MockAuth, MockAuthInvoke, + }, + vec, Address, Bytes, BytesN, Env, IntoVal, }; // Real UltraHonk artifacts (kyc_proof circuit, Noir beta.9 + bb 0.87.0), so @@ -947,3 +949,180 @@ fn legacy_record_missing_issuer_key_fails_to_read() { let result = h.registry.try_is_verified(&holder, &symbol_short!("kyc"), &None); assert!(result.is_err()); } + +// --------------------------------------------------------------------------- +// TTL / rent management +// --------------------------------------------------------------------------- + +const SECONDS_PER_DAY: u64 = 24 * 60 * 60; + +fn proof_ttl(env: &Env, registry_id: &Address, holder: &Address) -> u32 { + let key = DataKey::Proof(holder.clone(), symbol_short!("kyc")); + env.as_contract(registry_id, || env.storage().persistent().get_ttl(&key)) +} + +#[test] +fn submit_proof_extends_ttl_to_cover_long_expiry() { + let env = Env::default(); + env.mock_all_auths(); + let h = deploy(&env); + let holder = Address::generate(&env); + + let now = env.ledger().timestamp(); + // Well beyond the 90-day floor, but comfortably under the network's max + // entry TTL (~1 year) so nothing gets clamped in this assertion. + let expiry = now + 200 * SECONDS_PER_DAY; + + submit(&env, &h, &holder, expiry); + + let ttl = proof_ttl(&env, &h.registry_id, &holder); + let expected = env.as_contract(&h.registry_id, || { + ProofRegistry::ttl_for_expiry(&env, expiry) + }); + + assert_eq!( + ttl, expected, + "TTL after submit_proof should exactly match ttl_for_expiry" + ); + assert!( + ttl > PROOF_TTL, + "a 200-day credential should get a TTL beyond the 90-day floor (got {ttl}, floor is {PROOF_TTL})" + ); + // Roughly covers the credential's remaining lifetime (within a day of + // rounding from the seconds->ledgers conversion). + let min_expected_ledgers = ((expiry - now) / SECONDS_PER_LEDGER) as u32; + assert!(ttl >= min_expected_ledgers); +} + +#[test] +fn submit_proof_floors_ttl_at_90_days_for_short_expiry() { + let env = Env::default(); + env.mock_all_auths(); + let h = deploy(&env); + let holder = Address::generate(&env); + + let now = env.ledger().timestamp(); + let expiry = now + 1000; // seconds — far under the 90-day floor + + submit(&env, &h, &holder, expiry); + + let ttl = proof_ttl(&env, &h.registry_id, &holder); + assert_eq!(ttl, PROOF_TTL); +} + +#[test] +fn submit_proof_caps_ttl_at_network_max() { + let env = Env::default(); + env.mock_all_auths(); + let h = deploy(&env); + let holder = Address::generate(&env); + + let now = env.ledger().timestamp(); + // Absurdly far out — well beyond anything the network will actually let + // an entry live for. + let expiry = now + 10_000 * SECONDS_PER_DAY; + + submit(&env, &h, &holder, expiry); + + let ttl = proof_ttl(&env, &h.registry_id, &holder); + let max_ttl = env.as_contract(&h.registry_id, || env.storage().max_ttl()); + assert_eq!( + ttl, max_ttl, + "TTL should be capped at the network's max entry TTL" + ); +} + +#[test] +fn bump_claim_extends_ttl_for_valid_claim() { + let env = Env::default(); + env.mock_all_auths(); + let h = deploy(&env); + let holder = Address::generate(&env); + + let now = env.ledger().timestamp(); + let expiry = now + 200 * SECONDS_PER_DAY; + submit(&env, &h, &holder, expiry); + + let ttl_after_submit = proof_ttl(&env, &h.registry_id, &holder); + + // Advance the ledger *sequence* (not the timestamp — the claim is still + // valid) so the entry's remaining TTL drops just under the bump + // threshold, simulating rent nearly running out. + env.ledger() + .with_mut(|li| li.sequence_number += ttl_after_submit - 100); + assert!(proof_ttl(&env, &h.registry_id, &holder) < PROOF_BUMP_THRESHOLD); + + h.registry.bump_claim(&holder, &symbol_short!("kyc")); + + let ttl_after_bump = proof_ttl(&env, &h.registry_id, &holder); + let expected = env.as_contract(&h.registry_id, || { + ProofRegistry::ttl_for_expiry(&env, expiry) + }); + assert_eq!(ttl_after_bump, expected); + assert!( + ttl_after_bump > 1000, + "TTL should have grown back up from the near-expiry value" + ); +} + +#[test] +fn bump_claim_is_noop_when_ttl_already_high() { + // extend_ttl only applies below `threshold` — calling bump_claim right + // after submit_proof (when TTL is already high) must not panic and must + // leave the TTL unchanged. + let env = Env::default(); + env.mock_all_auths(); + let h = deploy(&env); + let holder = Address::generate(&env); + + submit( + &env, + &h, + &holder, + env.ledger().timestamp() + 200 * SECONDS_PER_DAY, + ); + let ttl_before = proof_ttl(&env, &h.registry_id, &holder); + + h.registry.bump_claim(&holder, &symbol_short!("kyc")); + + assert_eq!(proof_ttl(&env, &h.registry_id, &holder), ttl_before); +} + +#[test] +fn bump_claim_panics_for_unknown_claim() { + let env = Env::default(); + env.mock_all_auths(); + let h = deploy(&env); + let stranger = Address::generate(&env); + + let res = h.registry.try_bump_claim(&stranger, &symbol_short!("kyc")); + assert!(res.is_err()); +} + +#[test] +fn bump_claim_panics_for_expired_claim() { + let env = Env::default(); + env.mock_all_auths(); + let h = deploy(&env); + let holder = Address::generate(&env); + + submit(&env, &h, &holder, 1000); + env.ledger().with_mut(|li| li.timestamp = 2000); // past expiry + + let res = h.registry.try_bump_claim(&holder, &symbol_short!("kyc")); + assert!(res.is_err()); +} + +#[test] +fn bump_claim_panics_for_revoked_claim() { + let env = Env::default(); + env.mock_all_auths(); + let h = deploy(&env); + let holder = Address::generate(&env); + + submit(&env, &h, &holder, 1_000_000_000); // valid for a very long time + h.registry.revoke(&h.issuer, &holder, &symbol_short!("kyc")); + + let res = h.registry.try_bump_claim(&holder, &symbol_short!("kyc")); + assert!(res.is_err()); +} diff --git a/contracts/proof_registry/test_snapshots/test/admin_transfer_works.1.json b/contracts/proof_registry/test_snapshots/test/admin_transfer_works.1.json index 8311319c..f4eb21ef 100644 --- a/contracts/proof_registry/test_snapshots/test/admin_transfer_works.1.json +++ b/contracts/proof_registry/test_snapshots/test/admin_transfer_works.1.json @@ -92,7 +92,7 @@ "function_name": "upgrade", "args": [ { - "bytes": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b" + "bytes": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9" } ] } @@ -378,7 +378,7 @@ "val": { "contract_instance": { "executable": { - "wasm": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b" + "wasm": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9" }, "storage": [ { @@ -479,21 +479,21 @@ "ext": "v0", "cost_inputs": { "ext": "v0", - "n_instructions": 9310, - "n_functions": 207, + "n_instructions": 9461, + "n_functions": 213, "n_globals": 4, - "n_table_entries": 9, + "n_table_entries": 8, "n_types": 43, "n_data_segments": 1, "n_elem_segments": 1, - "n_imports": 27, - "n_exports": 16, - "n_data_segment_bytes": 1783 + "n_imports": 29, + "n_exports": 17, + "n_data_segment_bytes": 1712 } } }, - "hash": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b", - "code": "0061736d0100000001a8022b60037f7f7f017f60027f7f017f60017e017e60027e7e017e60037e7e7e017e6000017e60047e7e7e7e017e60037f7f7f0060047f7f7f7e017e60027f7e0060027f7f017e60047f7f7f7f0060057f7f7e7f7f0060047f7f7f7e0060067e7e7e7e7e7e017f60057f7e7e7e7e0060027e7e0060067e7e7e7e7e7e0060017f017e60047f7f7f7f017f60037e7e7e0060017f0060027f7f0060017e0060027e7f017e60067e7e7e7e7e7e017e60057f7f7f7f7f0060047f7f7f7e017f60017f017f60037f7f7f017e60037f7e7e017e60037f7e7e017f60000060027f7e017e60047f7e7e7e017e60057f7e7e7e7e017e60057f7e7e7f7f0060057f7f7f7f7f017e60067f7e7f7f7f7f017e60017e017f60027e7e017f60067f7f7f7f7f7f017f60057f7f7f7f7f017f02a3011b0169013000020162016500030169015f0002016101300002017801310003017801350002016c01320003016c01310003016c01300003016c015f0004017601640003017801340005016c01370006016d01390004017601670003016201310006016d01610006016201330003016c013600020162016a00030164015f000401780130000301760131000301760133000201620136000301620138000201620134000503d101cf010707070809070a07090b0c070a07070d0a0d070707000a0e010f1011120112130b0a0a140a1505101616070505140a0a17170a0707070518040202060a040a0319040503050707070701040506040504030219030205150707071a07071b0712151c1d0912151e1f0707070707070a0a0a012001211e1e211e221e2321221e211e2112070707071d2425261d01211e21211e211e1e1e221e122321221e1e211e21121d2425261d1d021c07090916160527271601002801011209271301000001002907070101072a0100151a0000000405017001090905030100110621047f01418080c0000b7f00419a88c0000b7f0041f78dc0000b7f0041808ec0000b07dd0110066d656d6f727902000d5f5f636f6e7374727563746f7200650561646d696e00660b636865636b5f636c61696d00670b69735f76657269666965640068176973737565725f72656769737472795f616464726573730069067265766f6b65006a0c7265766f6b655f70726f6f66006b097365745f61646d696e006c0c7375626d69745f70726f6f66006d137375626d69745f70726f6f66735f6261746368006e0775706772616465006f1076657269666965725f616464726573730070015f03010a5f5f646174615f656e6403020b5f5f686561705f6261736503030915010041010b0864a701d101df01ce01e001d701da010a8dab01cf017702017f017e23808080800041106b22032480808080000240024020022903004202510d00200320012002109c808080002003290308210402402003280200450d0020004202370300200020043703080c020b20002004370308200042013703000c010b200042003703000b200341106a2480808080000b6401027e02400240024020022903002203a741ff0171220241c000460d0020024106470d0142002104200310c38180800021030c020b4200210420012003108f8180800021030c010b4201210410ca8180800021030b20002004370300200020033703080b4602017f017e23808080800041106b220324808080800020032001200210f380808000200329030821042000200329030037030020002004370308200341106a2480808080000b810101017f23808080800041206b220424808080800020042000200129030020022903002003109881808000370308200441106a2000200441086a108881808000024020042802104101470d0041e087c08000412b200441106a41d087c08000418484c0800010e681808000000b20042903182103200441206a24808080800020030b4d01017f23808080800041106b2202248080808000200220013703082000200241106a2001109a8180800010cb8180800036020c2000410036020820002001370300200241106a2480808080000be10102037f017e23808080800041306b220324808080800020032001200210a18080800037030820034202370310200341186a200341106a200341106a41086a200341086a200341086a41086a10f5808080004100200328022c2202200328022822046b2205200520024b1b21022003280218200441037422056a2104200328022020056a2105024003402002450d01200420052001108b81808000370300200441086a2104200541086a21052002417f6a21020c000b0b2001200341106a410110a28180800021062000420037030020002006370308200341306a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110f980808000024020022802004101470d00000b20022903082103200241106a24808080800020030b9b0203017f017e027f23808080800041c0006b22032480808080002001200210a180808000210420032001200241086a10a18080800037031020032004370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10f5808080004100200328023c2202200328023822056b2206200620024b1b21022003280228200541037422066a2105200328023020066a2106024003402002450d01200520062001108b81808000370300200541086a2105200641086a21062002417f6a21020c000b0b2001200341186a410210a28180800021042000420037030020002004370308200341c0006a2480808080000b3b01017f23808080800041106b2202248080808000200220013703082000200241086a10fa808080001097818080001a200241106a2480808080000b12002000200142012002200310a5808080000b270020002000200110a7808080002002200310d381808000200410d3818080001096818080001a0b8a0102017f017e23808080800041c0006b220324808080800002400240024020012001200210a780808000220442011082818080000d00200042023703000c010b2003200120044201108181808000370300200341086a2001200310a88080800020032903084202510d012000200341086a413810e9818080001a0b200341c0006a2480808080000f0b000bc20302017f027e23808080800041306b2202248080808000024002400240024002400240024020012802000e0400010203000b2002200041ac86c0800010838180800020022802000d05200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c030b2002200041bc86c0800010838180800020022802000d04200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c020b2002200041d486c0800010838180800020022802000d03200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c010b200241206a200041e486c0800010838180800020022802200d0220022002290328370318200241186a10fa808080002103200241206a200141086a200010a08180800020022802200d0220022903282104200241206a200141106a200010a08180800020022802200d02200220022903283703102002200437030820022003370300200241206a2000200210e18080800020022903282104200229032021030c010b20022903082104200229030021030b200350450d00200241306a24808080800020040f0b000b9d0302027f067e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b024002402002290300220542ff018342cc00520d002001200541bc84c080004105200341086a410510a5818080001a200341306a2001200341086a109c80808000024020032802304101470d00200042023703000c020b20032903382105200341306a2001200341106a10af808080000240200329033022064202520d00200042023703000c020b024041014102410020032d001822041b20044101461b22044102470d00200042023703000c020b20032903382107200341306a2001200341206a109b808080000240200329033022084202520d00200042023703000c020b20032903382109200341306a2001200341286a109c80808000024020032802304101470d00200042023703000c020b2003290338210a200020043a0030200020053703282000200a370320200020073703182000200637031020002009370308200020083703000c010b200042023703000b200341c0006a2480808080000b1000200020012002420110aa808080000b210020002000200110a7808080002000200210ab8080800020031094818080001a0b4502017f017e23808080800041106b220224808080800020022000200110ce80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b210020002000200110a7808080002002200010898180800020031094818080001a0b900102017f017e23808080800041206b220324808080800002400240024020012001200210a780808000220442021082818080000d00200042003703000c010b2003200120044202108181808000370308200341106a2001200341086a10868180800020032802104101460d012003290318210420004201370300200020043703080b200341206a2480808080000f0b000b1000200020012002420210ac808080000b6a01017f23808080800041106b22032480808080000240024020022903004202510d0020032001200210868180800002402003280200450d00200042023703000c020b20002003290308370308200042013703000c010b200042003703000b200341106a2480808080000bb20203027f017e017f23808080800041c0006b22032480808080002003200041086a220441e484c08000410f10fd8080800037030020012004108981808000210520032004200210a18080800037031020032005370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10f5808080004100200328023c2202200328023822016b2206200620024b1b21022003280228200141037422066a2101200328023020066a2106024003402002450d01200120062004108b81808000370300200141086a2101200641086a21062002417f6a21020c000b0b2004200020032004200341186a410210a28180800010f8808080002102200341c0006a24808080800020020bfb0102047f017e23808080800041306b22022480808080002002200041086a220341f384c08000411110fd8080800037030020022001200310898180800037030820024202370310200241186a200241106a200241106a41086a200241086a200241086a41086a10f5808080004100200228022c2201200228022822046b2205200520014b1b21012002280218200441037422056a2104200228022020056a2105024003402001450d01200420052003108b81808000370300200441086a2104200541086a21052001417f6a21010c000b0b2003200020022003200241106a410110a281808000109e808080002106200241306a24808080800020060be00101027f23808080800041a0016b220624808080800020062005370308200620043703002006419f016a10fb80808000200620013703582006200037035020064203370348200641106a2006419f016a200641c8006a10a68080800041002107024020062903104202510d00200641e0006a200641106a413810e9818080001a4100210720062d0090010d002006290388012006419f016a10ff80808000580d002006200641f0006a10b380808000450d00410121072002a7410171450d002006290368420020062802601b20035a21070b200641a0016a24808080800020070b4d02017f017e41012102024020002802004101470d00410021022001280200450d00200141086a200041106a2202108981808000210320022000290308200310958180800042025221020b20020bf40101027f23808080800041a0016b220524808080800020052004370308200520033703002005419f016a10fb80808000200520023703582005200137035020054203370348200541106a2005419f016a200541c8006a10a6808080000240024020052903104202510d00200541e0006a200541106a413810e9818080001a410021062005290388012104024020052d0090010d0020042005419f016a10ff80808000580d002005200541f0006a10b38080800021060b200020063a00082000200437031020002005290380013703000c010b2000420037031020004200370300200041003a00080b200541a0016a2480808080000b7001017f23808080800041306b220224808080800020022000370308200241086a1080818080002002412f6a10fb808080002002200137032020022000370318200242033703102002412f6a2002412f6a200241106a10a78080800042011093818080001a200241306a2480808080000baf0401017f23808080800041b0016b2206248080808000200620013703082006200037030020062002370310200620033703182006200437032020061080818080002006200641af016a10b780808000370328024002400240200641286a200641086a200641106a10b080808000450d002006200641286a200641086a10b180808000370330200641206a200641306a10b880808000450d012006200641af016a10b980808000370338200641386a200641106a200641186a200641206a10ba80808000450d02200620023703502006200037034820064203370340200641af016a10ff80808000210020064190016a200641af016a200641106a200641206a10bb80808000200620053703800120062000370378200641003a008801200620013703702006420137036820062006290398013703602006200629039001370358200641af016a10fb80808000200641af016a200641c0006a200641d8006a10a980808000200641af016a10fb80808000200641af016a200641c0006a418087014180f6de0010a480808000200620053703a0012006428ed2aaf7eabdabf700370398012006428ed6b4fadd0637039001200641af016a200641af016a20064190016a10bc80808000200641af016a200641a0016a10bd808080001091818080001a200641b0016a2480808080000f0b200641af016a4283808080c0001092818080001a000b200641af016a4283808080d0001092818080001a000b200641af016a4283808080201092818080001a000b5f02017f017e23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a41b885c0800010ad80808000024020012802080d00200010c080808000000b20012903102102200141206a24808080800020020be30102047f017e2380808080004180016b220224808080800041002103200241c0006a410041c00010e7818080001a200110fc80808000200110fa808080004204200241c0006a41c00010a3818080002002200241c0006a41c00010e9818080002104200041086a210520002903002106413f2102024003402003220141c000460d01200220052006109c8180800010cb818080004f0d0120052006200210d381808000109b8180800010cb818080002100200241206a2102200141016a2103200420016a2d0000200041ff0171460d000b0b20044180016a2480808080002001413f4b0b5f02017f017e23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a41a085c0800010ad80808000024020012802080d00200010c080808000000b20012903102102200141206a24808080800020020bc30202027f027e23808080800041d0006b22042480808080002004200041086a2205419886c08000410c10fd808080003703002005200110a18080800021062005200210cd80808000210720042005200310cd808080003703182004200737031020042006370308410021030240034020034118460d01200441206a20036a4202370300200341086a21030c000b0b200441386a200441206a200441206a41186a200441086a200441086a41186a10f5808080004100200428024c2203200428024822026b2201200120034b1b21032004280238200241037422016a2102200428024020016a2101024003402003450d01200220012005108b81808000370300200241086a2102200141086a21012003417f6a21030c000b0b2005200020042005200441206a410310a28180800010f8808080002103200441d0006a24808080800020030bb60102017f017e23808080800041106b22042480808080000240024002400240200241d085c08000108e818080000d00200241d885c08000108e818080000d01200241e085c08000108e818080000d012004200141e885c08000410d10fd80808000370308420021052002200441086a108e818080000d010c030b200341c20010bf8080800021050c010b200341c10010bf8080800021050b20002005370308420121050b20002005370300200441106a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110a280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b2202248080808000200220002001109d80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b950101017f23808080800041206b22032480808080002003200137030820032000370300200320023703102003411f6a10fb808080002003411f6a418885c08000200310ae808080002003411f6a10fb808080002003411f6a41a085c08000200341086a10ae808080002003411f6a10fb808080002003411f6a41b885c08000200341106a10ae80808000200341206a2480808080000bff0103037f017e017f23808080800041106b220224808080800020024200370308200041086a21032001410574411872210420002903002105410021000240034020004108460d01410021010240200420006a220620032005109c8180800010cb818080004f0d0020032005200610d381808000109b8180800010cb8180800021010b200241086a20006a20013a0000200041016a21000c000b0b20022903082105200241106a248080808000200542388620054280fe0383422886842005428080fc0783421886200542808080f80f834208868484200542088842808080f80f832005421888428080fc07838420054228884280fe038320054238888484840b120020004283808080101092818080001a000b3102017f017e23808080800041106b22002480808080002000410f6a10b9808080002101200041106a24808080800020010bcf0a03067f027e027f23808080800041f0016b22022480808080002002200137031820022000370310200241106a108081808000024002400240200241206a22032001109a8180800010cb818080002204450d00200441054b0d01200241a8016a210541002106410121070c020b200241d8016a428380808080011092818080001a000b200241d8016a4283808080f0001092818080001a000b034002400240024002400240024002400240024020062004470d00200241d8016a10b7808080002108200241d8016a10b98080800021092002200837034820022009370350200241d8016a10ff808080002108200241d8006a2001109f80808000200241e8006a41086a2104200241e8006a41186a2106200241206a41086a210a200241a0016a41086a21050340200241a0016a200241d8006a10c3808080000240024020022903a00122014202510d002001a74101710d04200241e8006a2005412810e9818080001a2002200241d8016a109d818080002201370320200241a0016a2002290378109f808080000340200241086a200241a0016a10c480808000200228020822034102460d0220034101710d062002200228020c220341187420034180fe03714108747220034108764180fe0371200341187672723602d8012002200a2001200241d8016a200241d8016a410410a68180800010908180800022013703200c000b0b200241f0016a2480808080000f0b2002200137039001200241c8006a2006200241e8006a10b080808000450d042002200241c8006a200610b1808080003703980120024190016a20024198016a10b880808000450d05200241d0006a200241e8006a200420024190016a10ba80808000450d062002200229036837033020022000370328200242033703202002290388012101200241d8016a200241d8016a200241e8006a20024190016a10bb80808000200220013703c801200220083703c001200241003a00d001200242013703b001200220022903e0013703a801200220022903d8013703a00120022002290380013703b801200241d8016a10fb80808000200241d8016a200241206a200241a0016a10a980808000200241d8016a10fb80808000200241d8016a200241206a418087014180f6de0010a480808000200220013703e8012002428ed2aaf7eabdabf7003703e0012002428ed6b4fadd063703d801200241d8016a200241d8016a200241d8016a10bc80808000200241d8016a200241e8016a10bd808080001091818080001a0c000b0b200641016a210b2007210a03402004200a460d0802400240200620032001109a8180800010cb818080004f0d00200220032001200610d381808000109981808000370368200241a0016a2003200241e8006a10c58080800020022802a0014101470d010c090b41f885c0800010e581808000000b200241206a2005412810e9818080001a200a20032001109a8180800010cb818080004f0d06200220032001200a10d381808000109981808000370368200241a0016a2003200241e8006a10c58080800020022802a0014101460d07200241e8006a2005412810e9818080001a200a41016a210a200241206a200241e8006a108e81808000450d000b200241d8016a428380808090011092818080001a000b41e087c08000412b200241d8016a41d087c0800041c087c0800010e681808000000b41e087c08000412b200241d8016a41d087c0800041c087c0800010e681808000000b200241d8016a4283808080c0001092818080001a000b200241d8016a4283808080d0001092818080001a000b200241d8016a4283808080201092818080001a000b418886c0800010e581808000000b000b200741016a2107200b21060c000b0b7601037f23808080800041106b22022480808080000240024020012802082203200128020c490d00200042023703000c010b2002200141086a22042001290300200310d38180800010998180800037030820002004200241086a10c5808080002001200341016a3602080b200241106a2480808080000b6602017f017e0240024020012802082202200128020c490d00410221010c010b200141086a2001290300200210d38180800010998180800021032001200241016a360208200342ff018342045221012003422088a721020b20002002360204200020013602000bbc0202027f057e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b4201210502402002290300220642ff018342cc00520d0020012006419887c080004105200341086a410510a5818080001a200341306a200341086a2001109f8180800020032802300d0020032903382106200341306a2001200341106a109c8080800020032802300d0020032903382107200341306a200341186a200110a18180800020032802300d0020032903382108200341306a2001200341206a10848180800020032802300d002003290328220942ff018342cb00520d00200329033821052000200737032820002008370320200020093703182000200537031020002006370308420021050b20002005370300200341c0006a2480808080000b3102017f017e23808080800041106b22002480808080002000410f6a10b7808080002101200041106a24808080800020010b6202017f017e23808080800041206b22002480808080002000411f6a10fb80808000200041086a2000411f6a418885c0800010ad80808000024020002802080d002000411f6a10c080808000000b20002903102101200041206a24808080800020010b9b0301017f23808080800041b0016b2203248080808000200320023703082003200037030020031080818080002003200341af016a10b78080800037031002400240200341106a2003200341086a10b080808000450d00200320023703282003200137032020034203370318200341af016a10fb80808000200341e8006a200341af016a200341186a10a68080800020032903684202510d01200341306a200341e8006a413810e9818080001a200341013a0060200341af016a10fb80808000200341af016a200341186a200341306a10a980808000200341af016a10fb80808000200341af016a200341186a418087014180f6de0010a4808080002003200341af016a10ff80808000370380012003200037037820032002370370200320013703682003428ed2aa98bdd7de013703a001200341af016a200341af016a200341a0016a10c980808000200341af016a200341e8006a10ca808080001091818080001a200341b0016a2480808080000f0b200341af016a4283808080c0001092818080001a000b200341af016a4283808080e0001092818080001a000b4502017f017e23808080800041106b220224808080800020022000200110a080808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b220224808080800020022000200110e380808000024020022802004101470d00000b20022903082103200241106a24808080800020030b840101017f23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a418885c0800010ad80808000024020012802080d002001411f6a10c080808000000b20012001290310370308200141086a1080818080002001411f6a10fb808080002001411f6a200010a380808000200141206a2480808080000b910101017f23808080800041206b2201248080808000200120003703002001411f6a10fb80808000200141086a2001411f6a418885c0800010ad80808000024020012802080d002001411f6a10c080808000000b20012001290310370308200141086a1080818080002001411f6a10fb808080002001411f6a418885c08000200110ae80808000200141206a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110f980808000024020022802004101470d00000b20022903082103200241106a24808080800020030b8c0202017f057e23808080800041306b2203248080808000200341086a2001200241286a109d8080800042012104024020032802080d0020032903102105200341086a2001200241106a10cf8080800020032802080d0020032903102106200341086a2001200241306a10f28080800020032802080d0020032903102107200341086a2001200210d08080800020032802080d0020032903102108200341086a2001200241206a109d8080800020032802080d0020032003290310370328200320083703202003200737031820032006370310200320053703082000200141bc84c080004105200341086a410510a481808000370308420021040b20002004370300200341306a2480808080000b2d00024020022802004101470d002000200241086a200110a0818080000f0b20004200370300200042023703080b2d00024020022802004101470d0020002001200241086a109d808080000f0b20004200370300200042023703080b3702017f017e23808080800041106b220024808080800010c7808080002000410f6a10d2808080002101200041106a24808080800020010b3801017f23808080800041106b220224808080800020022000370308200241086a20011089818080002100200241106a24808080800020000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108681808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a10868180800020032802184101460d0020032903202100200341186a2003412f6a200341106a10858180800020032802184101460d0020012000200329032010c880808000200341306a24808080800042020f0b000b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108781808000024020012802084101470d00000b200129031010cb80808000200141206a24808080800042020b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108681808000024020012802084101470d00000b200129031010cc80808000200141206a24808080800042020bf10102017f027e23808080800041306b2204248080808000200420013703082004200037030020042002370310200441186a2004412f6a2004108681808000024020042802184101460d0020042903202101200441186a2004412f6a200441086a10858180800020042802184101460d0020042903202100200441186a2004412f6a200441106a109b80808000200429031822024202510d00200429032021050240024020034202520d00420021060c010b200342ff018342cb00520d01420121060b20012000200220052006200310b2808080002004412f6a10d7808080002103200441306a24808080800020030f0b000b3a02017f017e23808080800041106b2202248080808000200220003a000f2002410f6a2001108a818080002103200241106a24808080800020030bc80102017f017e23808080800041306b22032480808080002003200137030820032000370300200341106a2003412f6a2003108681808000024020032802104101460d0020032903182101200341106a2003412f6a200341086a10858180800020032802104101460d00200329031821000240024020024202520d00420021040c010b200242ff018342cb00520d01420121040b200341106a200120002004200210b4808080002003412f6a200341106a10d9808080002102200341306a24808080800020020f0b000b4502017f017e23808080800041106b220224808080800020022000200110e280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108681808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a10858180800020022802184101460d002001200229032010b580808000200241306a24808080800042020f0b000bcb0201017f23808080800041d0006b2206248080808000200620013703102006200037030820062002370318200620033703202006200437032820062005370330200641386a200641cf006a200641086a108681808000024020062802384101460d0020062903402101200641386a200641cf006a200641106a10868180800020062802384101460d0020062903402100200641386a200641cf006a200641186a10858180800020062802384101460d0020062903402102200641386a200641cf006a200641206a10848180800020062802384101460d0020062903402103200641386a200641cf006a200641286a10848180800020062802384101460d0020062903402104200641386a200641cf006a200641306a109c8080800020062802384101460d0020012000200220032004200629034010b680808000200641d0006a24808080800042020f0b000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108681808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a10868180800020032802184101460d0020032903202100200341186a2003412f6a200341106a10868180800020032802184101460d0020012000200329032010be80808000200341306a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c1808080002000410f6a10d2808080002101200041106a24808080800020010b6301017f23808080800041206b220224808080800020022000370300200241086a2002411f6a2002108681808000024020022802084101460d00200142ff018342cb00520d002002290310200110c280808000200241206a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c6808080002000410f6a10d2808080002101200041106a24808080800020010b7302017f027e23808080800041106b2203248080808000200320022001109e818080000240024020032802000d00200320032903083703004200210420012003410110a28180800021050c010b4201210410ca8180800021050b2000200437030020002005370308200341106a2480808080000bc70102017f027e23808080800041206b2203248080808000200341086a20022001109e818080000240024020032802080d0020032903102104200341086a200241086a2001109e8180800020032802080d0020032903102105200341086a200241106a2001109e8180800020032802080d00200320032903103703182003200537031020032004370308420021042001200341086a410310a28180800021050c010b4201210410ca8180800021050b2000200437030020002005370308200341206a2480808080000bdc0102017f047e23808080800041206b2203248080808000200341086a2001200241086a10f2808080000240024020032802084101470d004201210410ca8180800021050c010b20032903102106200341086a20012002109d80808000200329031021054201210420032802080d00200341086a2001200241106a109d808080002003290310210702402003280208450d00200721050c010b200320073703182003200537031020032006370308420021042001200341086a410310a28180800021050b2000200437030020002005370308200341206a2480808080000be70102017f057e23808080800041206b220324808080800020032002200110a0818080000240024020032802000d00200329030821042003200241086a200110a08180800020032802000d00200329030821052003200241106a200110a08180800020032802000d002003290308210620032001200241186a109d80808000200329030821074201210820032802000d01200320073703182003200637031020032005370308200320043703004200210820012003410410a28180800021070c010b4201210810ca8180800021070b2000200837030020002007370308200341206a2480808080000b12002001418b88c08000410f10e4818080000b1400108d8180800020002001200210dc808080000b0e00108d8180800010d1808080000b1600108d81808000200020012002200310d6808080000b1400108d8180800020002001200210d8808080000b0e00108d8180800010df808080000b1400108d8180800020002001200210d3808080000b1200108d818080002000200110da808080000b1000108d81808000200010d5808080000b1a00108d8180800020002001200220032004200510db808080000b1200108d818080002000200110de808080000b1000108d81808000200010d4808080000b0e00108d8180800010dd808080000b0300000b130020004200370300200020023100003703080b6102017f017e23808080800041106b220324808080800020032002290300220410d4818080000240024020032802000d00200329030821040c010b2001200410aa8180800021040b2000420037030020002004370308200341106a2480808080000b9a0102017f027e23808080800041206b220324808080800020032002290300220410c6818080000240024020032802004101470d00200341106a200410c781808000024020032802100d00420021042001200329031810a88180800021050c020b4201210410ca8180800021050c010b42002104200329030810c38180800021050b2000200437030020002005370308200341206a2480808080000b4400200041003602102000200436020c2000200336020820002002360204200020013602002000200420036b4103762204200220016b410376220320042003491b3602140b3901017f23808080800041106b22032480808080002003200229020037020820002001200341086a10f780808000200341106a2480808080000b6d02027f017e23808080800041106b22032480808080002003200228020022042002280204220210c5818080000240024020032802004101470d0020012004200210c28180800021050c010b200329030821050b2000420037030020002005370308200341106a2480808080000b7101027f23808080800041106b220424808080800041012105024002400240200020012903002002290300200310b681808000a741ff01710e020102000b41cc88c08000412b2004410f6a41bc88c08000419c88c0800010e681808000000b410021050b200441106a24808080800020050b130020004200370300200020022903003703080b070020002903000b02000b0700200041086a0b5902017f017e23808080800041206b22032480808080002003200236020c20032001360208200341106a2000200341086a10f680808000024020032802104101470d00000b20032903182104200341206a24808080800020040b5a02017f017e23808080800041106b220224808080800020022001370308420121030240200241106a200110bb8180800010cb818080004120470d0020002001370308420021030b20002003370300200241106a2480808080000b7e02017f017e23808080800041206b22012480808080002001200010b381808000370308200141106a2000200141086a10f48080800020012903182102024020012802104101470d002001200237031041cc88c08000412b200141106a41f888c0800041ac88c0800010e681808000000b200141206a24808080800020020b1300200041086a200029030010ab818080001a0b0e0020002001200210af818080000b140020002001200210b08180800010cc818080000b5102017f017e23808080800041106b220324808080800020032001200210f68080800042012104024020032802000d0020002003290308370308420021040b20002004370300200341106a2480808080000b2e01027e4201210302402002290300220442ff018342c800520d0020002004370308420021030b200020033703000b2d01027e4201210302402002290300220410d581808000450d0020002004370308420021030b200020033703000b2e01027e4201210302402002290300220442ff018342cd00520d0020002004370308420021030b200020033703000b2a01017e02402002290300220342ff018342c800510d00200042013703000f0b2000200310fe808080000b7b02017f027e23808080800041106b2203248080808000024002402002290300220442ff018342c800510d00200042013703000c010b20032004370308420121050240200341106a200410bb8180800010cb8180800041c000470d0020002004370308420021050b200020053703000b200341106a2480808080000b070020002903000b070020003100000b070020002903000b8d0102017f027e23808080800041206b2202248080808000200129030021030240024002402000290300220442ff0183420e520d00200342ff0183420e510d010b2002411f6a2004200310b781808000220342005520034200536b21010c010b2002200437030820022003370310200241086a200241106a10d28180800021010b200241206a24808080800020010b02000b110020002001108c8180800041ff0171450b0c002000200110a8818080000b0e0020002001200210a9818080000b0e0020002001200210ac818080000b0c002000200110ad818080000b0e0020002001200210ae818080000b1000200020012002200310b1818080000b0e0020002001200210b2818080000b12002000200120022003200410b4818080000b0c002000200110b5818080000b1000200020012002200310b6818080000b0e0020002001200210b8818080000b0c002000200110b9818080000b0e0020002001200210ba818080000b0c002000200110bb818080000b0a00200010bc818080000b130020004200370300200020012903003703080b0e002000200120011085818080000b130020004200370300200020012903003703080b2e01027e4201210302402001290300220442ff018342cd00520d0020002004370308420021030b200020033703000b0e0020002001200210bd818080000b12002000200120022003200410be818080000b12002000200120022003200410bf818080000b140020002001200220032004200510c0818080000b0e0020002001200210c1818080000b12002001418889c08000410f10e4818080000b0a0020011080808080000b0c00200120021081808080000b0a0020011082808080000b0a0020011083808080000b0c00200120021084808080000b0a0020011085808080000b0c00200120021086808080000b0c00200120021087808080000b0c00200120021088808080000b0e002001200220031089808080000b0c0020012002108a808080000b0800108b808080000b10002001200220032004108c808080000b0a0020011092808080000b0e002001200220031094808080000b0c00200120021095808080000b0c00200120021096808080000b0a0020011097808080000b0c00200120021098808080000b0a0020011099808080000b0800109a808080000b1a002001ad4220864204842002ad422086420484108e808080000b1f00200120022003ad4220864204842004ad422086420484108f808080001a0b2e00024020022004460d00000b2001ad4220864204842003ad4220864204842002ad422086420484108d808080000b3000024020032005460d00000b20012002ad4220864204842004ad4220864204842003ad4220864204841090808080000b1a002001ad4220864204842002ad4220864204841091808080000b1a002001ad4220864204842002ad4220864204841093808080000b070020004208880b960102017e027f2000290300210103400240200150450d00418080c4000f0b024002402001423088a7413f7122024101470d0041df0021020c010b0240024002402002417f6a410b4f0d00412e21030c010b0240200241746a411a4f0d00413521030c010b200241254d0d01413b21030b200220036a21020c010b2000200142068622013703000c010b0b2000200142068637030020020bb50102017f017e23808080800041106b220324808080800002400240200241094b0d00420021040340024020020d002000410036020020002004420886420e843703080c030b200341086a20012d000010cd81808000024020032d00084103460d0020002003290308370204200041013602000c030b200141016a21012002417f6a2102200442068620033100098421040c000b0b20002002360208200041003a0004200041013602000b200341106a2480808080000b2801017e420121020240200142ff01834206520d0020002001370308420021020b200020023703000b2901017e420121020240200142ff018342c000520d0020002001370308420021020b200020023703000b26002000200128020041027422012802d48ac08000360204200020012802fc8ac080003602000b26002000200128020041027422012802a48bc08000360204200020012802cc8bc080003602000b0900428390808080010b08002000422088a70b070020004201510b820101017f410121020240200141ff017141df00460d0002400240200141506a41ff0171410a490d00200141bf7f6a41ff0171411a490d0102402001419f7f6a41ff0171411a490d00200020013a0001200041013a00000f0b200141456a21020c020b200141526a21020c010b2001414b6a21020b200041033a0000200020023a00010b140020002802002000280204200110d8818080000b1600200028020020002802042001200210d6818080000b950101037f23808080800041106b22022480808080002002200142088837030820022000370300024002400340200210c4818080002103200241086a10c48180800021042003418080c400460d0102402004418080c400470d00410121030c030b20032004460d000b200320044b20032004496b21030c010b417f41002004418080c400471b21030b200241106a24808080800020030be50403017f017e027f23808080800041e0006b2202248080808000200220002903002203a72200410876220436023020022003422088a7220536023402400240024002402000418014490d0020034280808080a001540d01200241848080800036025c20024184808080003602542002200241346a3602582002200241306a360250200141d183c08000200241d0006a10cf8180800021000c030b200220043602382000418002490d01024020034280808080a001540d00200241206a200241386a10c98180800020022002290320370248200241848080800036025c20024185808080003602542002200241346a3602582002200241c8006a360250200141c183c08000200241d0006a10cf8180800021000c030b2002200536023c200241186a200241386a10c98180800020022002290318370240200241106a2002413c6a10c88180800020022002290310370248200241858080800036025c20024185808080003602542002200241c8006a3602582002200241c0006a360250200141e283c08000200241d0006a10cf8180800021000c020b20022005360240200241286a200241c0006a10c88180800020022002290328370248200241858080800036025c20024184808080003602542002200241c8006a3602582002200241306a360250200141f183c08000200241d0006a10cf8180800021000c010b200241086a200241386a10c98180800020022002290308370248200241848080800036025c20024185808080003602542002200241346a3602582002200241c8006a360250200141c183c08000200241d0006a10cf8180800021000b200241e0006a24808080800020000b15002000290300420888200129030010d0818080000b0b002000ad4220864204840b3201017e420121020240200142ffffffffffffffff00560d0020002001420886420684370308420021020b200020023703000b1701017f2000a741ff01712201410e46200141ca0046720be50401087f23808080800041106b220424808080800002400240024020034101710d0020022d000022050d01410021050c020b200020022003410176200128020c1180808080000021050c010b200128020c2106410021070340200241016a210802400240024002400240024002402005411874411875417f4a0d00200541ff01712209418001460d01200941c001460d0241a080808006210a02402005410171450d00200241056a21082002280001210a0b4100210920054102710d0320082102410021080c040b024020002008200541ff017122052006118080808000000d00200820056a21020c060b410121050c070b02402000200241036a220520022f000122022006118080808000000d00200520026a21020c050b410121050c060b2004200136020420042000360200200442a080808006370208200320074103746a22052802002004200528020411818080800000450d02410121050c050b200841026a210220082f000021080b0240024020054104710d002002210b0c010b200241026a210b20022f000021090b0240024020054108710d00200b21020c010b200b41026a2102200b2f000021070b02402005411071450d002003200841ffff03714103746a2f010421080b02402005412071450d002003200941ffff03714103746a2f010421090b200420093b010e200420083b010c2004200a36020820042001360204200420003602000240200320074103746a22052802002004200528020411818080800000450d00410121050c040b200741016a21070c010b200741016a2107200821020b20022d000022050d000b410021050b200441106a24808080800020050b180020002802002001200028020428020c118180808000000b0e0020022000200110d9818080000ba30501077f024002402000280208220341808080c00171450d00024002402003418080808001710d00024020024110490d002001200210e38180800021040c020b024020020d0041002104410021020c020b2002410371210502400240200241044f0d0041002106410021040c010b2002410c712107410021064100210403402004200120066a22082c000041bf7f4a6a200841016a2c000041bf7f4a6a200841026a2c000041bf7f4a6a200841036a2c000041bf7f4a6a21042007200641046a2206470d000b0b2005450d01200120066a21080340200420082c000041bf7f4a6a2104200841016a21082005417f6a22050d000c020b0b02400240024020002f010e22070d00410021020c010b200120026a21054100210220012108200721060340200822042005460d020240024020042c00002208417f4c0d00200441016a21080c010b0240200841604f0d00200441026a21080c010b0240200841704f0d00200441036a21080c010b200441046a21080b200820046b20026a21022006417f6a22060d000b0b410021060b200720066b21040b200420002f010c22084f0d00200820046b210941002104410021070240024002402003411d764103710e0402000102020b200921070c010b200941feff037141017621070b200341ffffff00712105200028020421062000280200210002400340200441ffff0371200741ffff03714f0d0141012108200441016a210420002005200628021011818080800000450d000c030b0b41012108200020012002200628020c118080808000000d0141002104200920076b41ffff037121020340200441ffff037122072002492108200720024f0d02200441016a210420002005200628021011818080800000450d000c020b0b200028020020012002200028020428020c1180808080000021080b20080b140020012000280200200028020410d9818080000bc20401097f20002103200221040240200041e807490d002001417c6a21054100210620002107024002400340200720074190ce006e22034190ce006c6b220841ffff037141e4006e210902400240200220066a2204417c6a20024f0d00200520026a220a2009410174220b2d00f48bc080003a00002004417d6a2002490d012004417d6a200241bc8dc0800010de81808000000b2004417c6a200241bc8dc0800010de81808000000b200a41016a200b41f58bc080006a2d00003a000002402004417e6a20024f0d00200a41026a2008200941e4006c6b41017441feff077122092d00f48bc080003a00002004417f6a20024f0d02200a41036a200941f58bc080006a2d00003a00002005417c6a21052006417c6a2106200741fface2044b2104200321072004450d030c010b0b2004417e6a200241bc8dc0800010de81808000000b2004417f6a200241bc8dc0800010de81808000000b200220066a21040b02400240200341094b0d002003210a200421070c010b200341ffff037141e4006e210a024002402004417e6a220720024f0d00200120076a2003200a41e4006c6b41ffff037141017422062d00f48bc080003a00002004417f6a220420024f0d01200120046a200641f58bc080006a2d00003a00000c020b2007200241bc8dc0800010de81808000000b2004200241bc8dc0800010de81808000000b0240024002402000450d00200a450d010b2007417f6a220720024f0d01200120076a200a4101742d00f58bc080003a00000b20070f0b2007200241bc8dc0800010de81808000000b990602087f017e0240024020010d00200541016a210620002802082107412d21080c010b412b418080c4002000280208220741808080017122011b2108200141157620056a21060b0240024020074180808004710d00410021020c010b0240024020034110490d002002200310e38180800021010c010b024020030d00410021010c010b2003410371210902400240200341044f0d004100210a410021010c010b2003410c71210b4100210a41002101034020012002200a6a220c2c000041bf7f4a6a200c41016a2c000041bf7f4a6a200c41026a2c000041bf7f4a6a200c41036a2c000041bf7f4a6a2101200b200a41046a220a470d000b0b2009450d002002200a6a210c03402001200c2c000041bf7f4a6a2101200c41016a210c2009417f6a22090d000b0b200120066a21060b02400240200620002f010c220b4f0d0002400240024020074180808008710d00200b20066b210d410021014100210b0240024002402007411d764103710e0402000100020b200d210b0c010b200d41feff0371410176210b0b200741ffffff00712106200028020421092000280200210a0340200141ffff0371200b41ffff03714f0d024101210c200141016a2101200a2006200928021011818080800000450d000c050b0b20002000290208220ea741808080ff797141b080808002723602084101210c2000280200220a2000280204220920082002200310e2818080000d0341002101200b20066b41ffff037121020340200141ffff037120024f0d024101210c200141016a2101200a4130200928021011818080800000450d000c040b0b4101210c200a200920082002200310e2818080000d02200a20042005200928020c118080808000000d0241002101200d200b6b41ffff037121000340200141ffff03712202200049210c200220004f0d03200141016a2101200a2006200928021011818080800000450d000c030b0b4101210c200a20042005200928020c118080808000000d012000200e37020841000f0b4101210c200028020022012000280204220a20082002200310e2818080000d00200120042005200a28020c11808080800000210c0b200c0b4701017f23808080800041206b2203248080808000200320013602102003200036020c200341013b011c2003200236021820032003410c6a360214200341146a10f180808000000b5f02017f017e23808080800041206b22032480808080002003200136020c200320003602082003418680808000ad4220862204200341086aad84370318200320042003410c6aad84370310418080c08000200341106a200210dd81808000000b6401027f23808080800041106b2202248080808000200120002802002200417f73411f7641014100200241066a20002000411f7522037320036b200241066a410a10db8180800022006a410a20006b10dc818080002100200241106a24808080800020000b5101017f23808080800041106b22022480808080002001410141014100200241066a2000280200200241066a410a10db8180800022006a410a20006b10dc818080002100200241106a24808080800020000b150020002001410174410172200210dd81808000000b410002402002418080c400460d0020002002200128021011818080800000450d0041010f0b024020030d0041000f0b200020032004200128020c118080808000000bf10601087f024002402001200041036a417c71220220006b2203490d00200120036b22044104490d00200441037121054100210641002101024020022000460d0041002107410021010240200020026b2208417c4b0d00410021074100210103402001200020076a22022c000041bf7f4a6a200241016a2c000041bf7f4a6a200241026a2c000041bf7f4a6a200241036a2c000041bf7f4a6a2101200741046a22070d000b0b200020076a21020340200120022c000041bf7f4a6a2101200241016a2102200841016a22080d000b0b200020036a210802402005450d002008200441fcffffff07716a22022c000041bf7f4a210620054101460d00200620022c000141bf7f4a6a210620054102460d00200620022c000241bf7f4a6a21060b20044102762103200620016a21070340200821062003450d02200341c001200341c001491b22044103712105024002402004410274220941f0077122080d00410021020c010b410021022006210103402001410c6a2802002200417f73410776200041067672418182840871200141086a2802002200417f73410776200041067672418182840871200141046a2802002200417f7341077620004106767241818284087120012802002200417f7341077620004106767241818284087120026a6a6a6a2102200141106a2101200841706a22080d000b0b200320046b2103200620096a2108200241087641ff81fc0771200241ff81fc07716a418180046c41107620076a21072005450d000b2006200441fc01714102746a22022802002201417f734107762001410676724181828408712101024020054101460d0020022802042208417f7341077620084106767241818284087120016a210120054102460d0020022802082202417f7341077620024106767241818284087120016a21010b200141087641ff811c71200141ff81fc07716a418180046c41107620076a21070c010b024020010d0041000f0b2001410371210802400240200141044f0d0041002102410021070c010b2001417c712103410021024100210703402007200020026a22012c000041bf7f4a6a200141016a2c000041bf7f4a6a200141026a2c000041bf7f4a6a200141036a2c000041bf7f4a6a21072003200241046a2202470d000b0b2008450d00200020026a21010340200720012c000041bf7f4a6a2107200141016a21012008417f6a22080d000b0b20070b1a00200028020020012002200028020428020c118080808000000b130041cc8dc08000412b200010e181808000000b6e01017f23808080800041206b220524808080800020052001360204200520003602002005200336020c200520023602082005418780808000ad422086200541086aad843703182005418880808000ad4220862005ad8437031041b780c08000200541106a200410dd81808000000baa0301057f02400240200241104f0d00200021030c010b024020002000410020006b41037122046a22054f0d002004417f6a21062000210302402004450d0020042107200021030340200320013a0000200341016a21032007417f6a22070d000b0b20064107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032005470d000b0b024020052005200220046b2202417c716a22034f0d00200141ff017141818284086c2107034020052007360200200541046a22052003490d000b0b200241037121020b02402003200320026a22074f0d002002417f6a2104024020024107712205450d000340200320013a0000200341016a21032005417f6a22050d000b0b20044107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032007470d000b0b20000bba07010c7f23808080800041106b210302400240200241104f0d00200021040c010b024020002000410020006b41037122056a22064f0d002005417f6a2107200021042001210802402005450d002005210920002104200121080340200420082d00003a0000200841016a2108200441016a21042009417f6a22090d000b0b20074107490d000340200420082d00003a0000200441016a200841016a2d00003a0000200441026a200841026a2d00003a0000200441036a200841036a2d00003a0000200441046a200841046a2d00003a0000200441056a200841056a2d00003a0000200441066a200841066a2d00003a0000200441076a200841076a2d00003a0000200841086a2108200441086a22042006470d000b0b2006200220056b2209417c7122076a210402400240200120056a22084103712201450d00410021022003410036020c2003410c6a20017221050240410420016b220a410171450d00200520082d00003a0000410121020b0240200a410271450d00200520026a200820026a2f01003b01000b200820016b21022001410374210b200328020c210502400240200641046a2004490d002006210c0c010b4100200b6b411871210d034020062005200b76200241046a22022802002205200d7472360200200641086a210a200641046a220c2106200a2004490d000b0b41002106200341003a0008200341003a00060240024020014101470d00200341086a210d410021014100210a4100210e0c010b200241056a2d0000210a2003200241046a2d000022013a0008200a410874210a4102210e200341066a210d0b02402008410171450d00200d200241046a200e6a2d00003a000020032d0006411074210620032d000821010b200c200a200672200141ff0171724100200b6b411871742005200b76723602000c010b200620044f0d0020082101034020062001280200360200200141046a2101200641046a22062004490d000b0b20094103712102200820076a21010b02402004200420026a22064f0d002002417f6a2109024020024107712208450d000340200420012d00003a0000200141016a2101200441016a21042008417f6a22080d000b0b20094107490d000340200420012d00003a0000200441016a200141016a2d00003a0000200441026a200141026a2d00003a0000200441036a200141036a2d00003a0000200441046a200141046a2d00003a0000200441056a200141056a2d00003a0000200441066a200141066a2d00003a0000200441076a200141076a2d00003a0000200141086a2101200441086a22042006470d000b0b20000b0e0020002001200210e8818080000b0b810e0100418080c0000bf70d20696e646578206f7574206f6620626f756e64733a20746865206c656e20697320c012206275742074686520696e64657820697320c000c0023a20c0002f55736572732f4d757269746164686f722f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f656e762e7273002f55736572732f4d757269746164686f722f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f6c65646765722e7273002f55736572732f4d757269746164686f722f2e7275737475702f746f6f6c636861696e732f737461626c652d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f6f70732f66756e6374696f6e2e7273006c6962726172792f636f72652f7372632f666d742f6e756d2e727300636f6e7472616374732f70726f6f665f72656769737472792f7372632f6c69622e727300064572726f7228c0032c2023c0012900074572726f722823c0032c2023c0012900064572726f7228c0022c20c0012900074572726f722823c0022c20c00129000000003d00100064000000aa0100000e0000006578706972796973737565727265766f6b65647468726573686f6c6476657269666965645f61740014021000060000001a0210000600000020021000070000002702100009000000300210000b00000069735f76616c69645f6973737565726765745f6973737565725f7075626b6579000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000e2a6b02000000000eaa4ca3b30b00000e783aeb2b00000061636372656469746174696f6e0000009d0110002300000002010000270000009d01100023000000030100002b0000007665726966795f70726f6f6641646d696e00000024031000050000005665726966696572340310000800000049737375657252656769737472790000440310000e00000050726f6f660000005c0310000500000063726564656e7469616c5f747970656973737565725f696470726f6f667075626c69635f696e7075747300006c0310000f00000014021000060000007b031000090000008403100005000000890310000d0000000a01100076000000fa000000050000000000000000000000010000000100000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565436f6e76657273696f6e4572726f7200003d00100064000000aa0100000e000000a2001000670000005b0000000e0000000000000000000000010000000200000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c75650000000000080000000800000003000000436f6e76657273696f6e4572726f724172697468446f6d61696e496e646578426f756e6473496e76616c6964496e7075744d697373696e6756616c75654578697374696e6756616c756545786365656465644c696d6974496e76616c6964416374696f6e496e7465726e616c4572726f72556e657870656374656454797065556e657870656374656453697a65436f6e74726163745761736d566d436f6e7465787453746f726167654f626a65637443727970746f4576656e747342756467657456616c75654175746800000b0000000b0000000c0000000c0000000d0000000d0000000d0000000d0000000e0000000e00000097041000a2041000ad041000b9041000c5041000d2041000df041000ec041000f90410000705100008000000060000000700000007000000060000000600000006000000060000000500000004000000150510001d051000230510002a05100031051000370510003d05100043051000490510004e0510003030303130323033303430353036303730383039313031313132313331343135313631373138313932303231323232333234323532363237323832393330333133323333333433353336333733383339343034313432343334343435343634373438343935303531353235333534353535363537353835393630363136323633363436353636363736383639373037313732373337343735373637373738373938303831383238333834383538363837383838393930393139323933393439353936393739383939810110001b000000570200000500000063616c6c656420604f7074696f6e3a3a756e77726170282960206f6e206120604e6f6e65602076616c756500fb270e636f6e7472616374737065637630000000040000000000000000000000054572726f7200000000000009000000000000000e4e6f74496e697469616c697a65640000000000010000000000000012566572696669636174696f6e4661696c6564000000000002000000000000000d4e6f74417574686f72697a65640000000000000300000000000000104973737565724e6f74547275737465640000000400000055546865207075626c6963206b6579207468652070726f6f6620776173206d61646520616761696e737420646f6573206e6f74206d617463682074686520726567697374657265640a6973737565722773206b65792e000000000000114973737565724b65794d69736d6174636800000000000005000000000000000d50726f6f664e6f74466f756e64000000000000060000003a54686520626174636820636f6e7461696e73206d6f7265207468616e20604d41585f42415443485f53495a4560207375626d697373696f6e732e00000000000d4261746368546f6f4c61726765000000000000070000002f546865206261746368206d75737420636f6e7461696e206174206c65617374206f6e65207375626d697373696f6e2e000000000a4261746368456d7074790000000000080000008c54776f206f72206d6f7265207375626d697373696f6e7320696e20746865206261746368207368617265207468652073616d65206063726564656e7469616c5f74797065603b0a6f6e6c7920746865206c61737420777269746520776f756c6420737572766976652c20736f207468652062617463682069732072656a6563746564206f757472696768742e000000174475706c696361746543726564656e7469616c54797065000000000900000002000000000000000000000007446174614b6579000000000400000000000000000000000541646d696e000000000000000000000000000008566572696669657200000000000000000000000e49737375657252656769737472790000000000010000003843616368656420766572696669636174696f6e2c206b657965642062792028686f6c6465722c2063726564656e7469616c5f74797065292e0000000550726f6f660000000000000200000013000000110000000100000000000000000000000b50726f6f665265636f726400000000050000000000000006657870697279000000000006000003a2546865206973737565722074686174207369676e6564207468652063726564656e7469616c20746869732070726f6f662077617320766572696669656420616761696e73742e0a4c65747320612070726f746f636f6c2072657374726963742077686963682069737375657273206974207472757374732070657220636c61696d2074797065207669610a60747275737465645f6973737565727360206f6e206069735f766572696669656460202f2060636865636b5f636c61696d602e0a0a604f7074696f6e6020736f2060697373756572602063616e206265206578706c696369746c7920616273656e742077697468696e20616e0a616c72656164792d63757272656e742d7368617065207265636f72642028652e672e206f6e65207772697474656e206279206120667574757265206d6967726174696f6e0a746861742063616e2774207265636f76657220746865206f726967696e616c206973737565722920e2809420606973737565725f69735f7472757374656460207468656e0a6661696c7320636c6f73656420616e642072656a6563747320697420756e64657220616e206163746976652060747275737465645f69737375657273602066696c7465722c0a73696e63652074686572652773206e6f2069737375657220746f20636865636b20616761696e73742028612066696c7465726c6573732063616c6c65722069730a756e61666665637465642065697468657220776179292e205468697320646f6573204e4f542c20627920697473656c662c206d616b652061207265636f72640a7772697474656e206265666f72652074686973206669656c642065786973746564207265616461626c653a20536f726f62616e277320737472756374206465636f64696e670a7265717569726573207468652073746f726564206d6170277320656e74727920636f756e7420746f2065786163746c79206d61746368207468652063757272656e740a7374727563742773206669656c6420636f756e742c20736f2074686f7365207265636f726473207374696c6c206661696c20746f20646573657269616c697a6520287365650a606c65676163795f7265636f72645f6d697373696e675f6973737565725f6b65795f6661696c735f746f5f726561646020696e20746573742e7273292e2041207265616c0a6d6967726174696f6e206973207265717569726564206265666f72652072656465706c6f79696e67206f766572206578697374696e672073746f7265642070726f6f66732e0000000000066973737565720000000003e80000001300000049536574206279207468652072656769737465726564206973737565722076696120607265766f6b65602e204578706972792064617461206973206b65707420666f722061756469742e000000000000077265766f6b65640000000001000000be466f7220706172616d65746572697365642063726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292c20746865207468726573686f6c640a76616c756520746861742077617320636f6d6d697474656420746f20696e207468652070726f6f662773207075626c696320696e707574732e204e6f6e6520666f722074797065730a77697468206e6f206e756d65726963207468726573686f6c6420286b79632c206a7572697364696374696f6e292e0000000000097468726573686f6c64000000000003e800000006000000000000000b76657269666965645f6174000000000600000000000000000000000561646d696e0000000000000000000001000000130000000000000082496e76616c6964617465206120686f6c6465722773206361636865642070726f6f662e204f6e6c792074686520726567697374657265642069737375657220666f720a6063726564656e7469616c5f7479706560206d61792063616c6c20746869732028652e672e207768656e204b594320737461747573206368616e676573292e0000000000067265766f6b6500000000000300000000000000066973737565720000000000130000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f74797065000000001100000000000000000000000000000007757067726164650000000001000000000000000d6e65775f7761736d5f68617368000000000003ee00000020000000000000000100000099412073696e676c652070726f6f66207375626d697373696f6e20696e7369646520612062617463682e204d6972726f72732074686520696e646976696475616c20706172616d65746572730a6f6620607375626d69745f70726f6f6660206275742067726f7570656420696e746f20612073747275637420736f20746865792063616e2062652070617373656420617320612060566563602e000000000000000000000f50726f6f665375626d697373696f6e0000000005000000000000000f63726564656e7469616c5f747970650000000011000000000000000665787069727900000000000600000000000000096973737565725f696400000000000013000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e70757473000000000003ea000000040000000000000000000000097365745f61646d696e0000000000000100000000000000096e65775f61646d696e000000000000130000000000000000000001bb4c696b65206069735f7665726966696564602062757420616c736f20656e666f726365732061206d696e696d756d207468726573686f6c6420666f7220706172616d65746572697365640a63726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292e20412070726f6f66207375626d697474656420776974682061207468726573686f6c640a6f66203230305f3030302073617469736669657320606d696e5f7468726573686f6c64203d2035305f3030306020626563617573652069742070726f766573207374726963746c790a6d6f72652e20466f7220606b79636020616e6420606a7572697364696374696f6e602c207061737320606d696e5f7468726573686f6c64203d204e6f6e65602e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465640ae2809420736565206069735f7665726966696564602e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565722028756e6368616e6765640a6265686176696f7572292e000000000b636865636b5f636c61696d00000000040000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000d6d696e5f7468726573686f6c64000000000003e800000006000000000000000f747275737465645f6973737565727300000003e8000003ea00000013000000010000000100000000000001e652657475726e7320602869735f63757272656e746c795f76616c69642c2076657269666965645f61742c2065787069727929602e206069735f63757272656e746c795f76616c6964600a6163636f756e747320666f722065787069727920616761696e7374207468652063757272656e74206c65646765722074696d652e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465643a0a7468652073746f7265642070726f6f66277320697373756572206d75737420626520696e20746865206c6973742c206f7220746869732072657475726e730a602866616c73652c2076657269666965645f61742c206578706972792960206576656e206966207468652070726f6f66206973206f74686572776973652076616c696420e280940a74696d657374616d707320617265207374696c6c2072657475726e656420666f722061756469742c206d61746368696e6720746865206578697374696e670a7265766f6b65642f65787069726564206265686176696f75722e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565720a28756e6368616e676564206265686176696f7572292e00000000000b69735f766572696669656400000000030000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000f747275737465645f6973737565727300000003e8000003ea0000001300000001000003ed0000000300000001000000060000000600000000000000425265766f6b652061206361636865642070726f6f662e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207265766f636174696f6e2e00000000000c7265766f6b655f70726f6f66000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000000cd56657269667920612070726f6f6620616e642c2069662076616c69642c20636163686520697420666f722060686f6c6465726020756e74696c2060657870697279600a286c65646765722074696d657374616d702c207365636f6e6473292e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207375626d697373696f6e2e0a606973737565725f696460206d757374206265207265676973746572656420616e64207472757374656420666f72206063726564656e7469616c5f74797065602e0000000000000c7375626d69745f70726f6f66000000060000000000000006686f6c64657200000000001300000000000000096973737565725f696400000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e707574730000000000000e000000000000000665787069727900000000000600000000000000000000004e6061646d696e602c206076657269666965726020616e6420606973737565725f7265676973747279602061726520746865206465706c6f79656420636f6e7472616374206164647265737365732e00000000000d5f5f636f6e7374727563746f7200000000000003000000000000000561646d696e000000000000130000000000000008766572696669657200000013000000000000000f6973737565725f726567697374727900000000130000000000000000000000000000001076657269666965725f6164647265737300000000000000010000001300000000000000764f6e65206576656e7420697320656d697474656420706572207375636365737366756c6c792076657269666965642063726564656e7469616c2c206d61746368696e670a746865206576656e7420656d697373696f6e20736861706520696e207468652073696e676c652d70726f6f6620706174682e0000000000137375626d69745f70726f6f66735f626174636800000000020000000000000006686f6c646572000000000013000000000000000b7375626d697373696f6e7300000003ea000007d00000000f50726f6f665375626d697373696f6e00000000000000000000000000000000176973737565725f72656769737472795f6164647265737300000000000000000100000013001e11636f6e7472616374656e766d6574617630000000000000001a00000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e39332e3100000000000000000008727373646b7665720000002f32362e312e30233137356161343133303666333833303537613863646663383462363864393331363634666333346500" + "hash": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9", + "code": "0061736d0100000001a8022b60027f7f017f60037f7f7f017f60017e017e60027e7e017e60037e7e7e017e6000017e60047e7e7e7e017e60037f7f7f0060047f7f7f7e017e60027f7e0060027f7f017e60047f7f7f7f0060057f7f7e7f7f0060047f7f7f7e0060027e7e0060017e017f60067e7e7e7e7e7e017f60057f7e7e7e7e0060067e7e7e7e7e7e0060017f017e60047f7f7f7f017f60037e7e7e0060017f0060027f7f0060017e0060027e7f017e60067e7e7e7e7e7e017e60057f7f7f7f7f0060047f7f7f7e017f60017f017f60037f7f7f017e60037f7e7e017e60037f7e7e017f60000060027f7e017e60047f7e7e7e017e60057f7e7e7e7e017e60057f7e7e7f7f0060057f7f7f7f7f017e60067f7e7f7f7f7f017e60027e7e017f60067f7f7f7f7f7f017f60057f7f7f7f7f017f02af011d0169013000020162016500030169015f0002016101300002017801310003017801350002016c01320003016c01310003016c01300003016c015f0004017601640003017801330005017801340005016c01370006017801380005016d01390004017601670003016201310006016d01610006016201330003016c013600020162016a00030164015f000401780130000301760131000301760133000201620136000301620138000201620134000503d701d5010707070809070a07090b0c070a07070d0a0d070707010a0e0f1000110e12130013140b0a0a150a16050e1717070505150a0a18180a070707051904020203060a040a031a0405030507070707000405030604050403021a030205160707071b07071c0713161d1e091d1d13161f201d0707070707070a0a0a002100221f1f221f231f2422231f221f2213070707071e2526271e00221f22221f221f1f1f231f1313241322231f1f221f22131e2526271e1e021d0709091717050f0f17000028000013090f2900010100170001072a0001161b0101010405017001080805030100110621047f01418080c0000b7f0041da86c0000b7f0041b08dc0000b7f0041b08dc0000b07ea0111066d656d6f727902000d5f5f636f6e7374727563746f72006a0561646d696e006b0a62756d705f636c61696d006c0b636865636b5f636c61696d006d0b69735f7665726966696564006e176973737565725f72656769737472795f61646472657373006f067265766f6b6500700c7265766f6b655f70726f6f660071097365745f61646d696e00720c7375626d69745f70726f6f660073137375626d69745f70726f6f66735f62617463680074077570677261646500751076657269666965725f616464726573730076015f03010a5f5f646174615f656e6403020b5f5f686561705f6261736503030913010041010b0769b001dc01e701d901e201e5010ac6ae01d5016401027e02400240024020022903002203a741ff0171220241c000460d0020024106470d0142002104200310ce8180800021030c020b420021042001200310988180800021030c010b4201210410d58180800021030b20002004370300200020033703080b7702017f017e23808080800041106b22032480808080000240024020022903004202510d00200320012002109d808080002003290308210402402003280200450d0020004202370300200020043703080c020b20002004370308200042013703000c010b200042003703000b200341106a2480808080000b4602017f017e23808080800041106b220324808080800020032001200210f980808000200329030821042000200329030037030020002004370308200341106a2480808080000b810101017f23808080800041206b22042480808080002004200020012903002002290300200310a181808000370308200441106a2000200441086a109181808000024020042802104101470d0041a086c08000412b200441106a419086c0800041c882c0800010ee81808000000b20042903182103200441206a24808080800020030b4d01017f23808080800041106b2202248080808000200220013703082000200241106a200110a38180800010d68180800036020c2000410036020820002001370300200241106a2480808080000be10102037f017e23808080800041306b220324808080800020032001200210a38080800037030820034202370310200341186a200341106a200341106a41086a200341086a200341086a41086a10fb808080004100200328022c2202200328022822046b2205200520024b1b21022003280218200441037422056a2104200328022020056a2105024003402002450d01200420052001109381808000370300200441086a2104200541086a21052002417f6a21020c000b0b2001200341106a410110ab8180800021062000420037030020002006370308200341306a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110ff80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b9b0203017f017e027f23808080800041c0006b22032480808080002001200210a380808000210420032001200241086a10a38080800037031020032004370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10fb808080004100200328023c2202200328023822056b2206200620024b1b21022003280228200541037422066a2105200328023020066a2106024003402002450d01200520062001109381808000370300200541086a2105200641086a21062002417f6a21020c000b0b2001200341186a410210ab8180800021042000420037030020002004370308200341c0006a2480808080000b3b01017f23808080800041106b2202248080808000200220013703082000200241086a10808180800010a0818080001a200241106a2480808080000b12002000200142012002200310a7808080000b270020002000200110a9808080002002200310de81808000200410de81808000109f818080001a0b8a0102017f017e23808080800041c0006b220324808080800002400240024020012001200210a98080800022044201108a818080000d00200042023703000c010b2003200120044201108981808000370300200341086a2001200310aa8080800020032903084202510d012000200341086a413810f1818080001a0b200341c0006a2480808080000f0b000bc20302017f027e23808080800041306b2202248080808000024002400240024002400240024020012802000e0400010203000b2002200041ec84c08000108c8180800020022802000d05200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c030b2002200041fc84c08000108c8180800020022802000d04200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c020b20022000419485c08000108c8180800020022802000d03200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c010b200241206a200041a485c08000108c8180800020022802200d0220022002290328370318200241186a1080818080002103200241206a200141086a200010a98180800020022802200d0220022903282104200241206a200141106a200010a98180800020022802200d02200220022903283703102002200437030820022003370300200241206a2000200210e68080800020022903282104200229032021030c010b20022903082104200229030021030b200350450d00200241306a24808080800020040f0b000b9d0302027f067e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b024002402002290300220542ff018342cc00520d0020012005418083c080004105200341086a410510ae818080001a200341306a2001200341086a109d80808000024020032802304101470d00200042023703000c020b20032903382105200341306a2001200341106a10b1808080000240200329033022064202520d00200042023703000c020b024041014102410020032d001822041b20044101461b22044102470d00200042023703000c020b20032903382107200341306a2001200341206a109e808080000240200329033022084202520d00200042023703000c020b20032903382109200341306a2001200341286a109d80808000024020032802304101470d00200042023703000c020b2003290338210a200020043a0030200020053703282000200a370320200020073703182000200637031020002009370308200020083703000c010b200042023703000b200341c0006a2480808080000b1000200020012002420110ac808080000b210020002000200110a9808080002000200210ad808080002003109d818080001a0b4502017f017e23808080800041106b220224808080800020022000200110d280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b210020002000200110a980808000200220001092818080002003109d818080001a0b900102017f017e23808080800041206b220324808080800002400240024020012001200210a98080800022044202108a818080000d00200042003703000c010b2003200120044202108981808000370308200341106a2001200341086a108f8180800020032802104101460d012003290318210420004201370300200020043703080b200341206a2480808080000f0b000b1000200020012002420210ae808080000b6a01017f23808080800041106b22032480808080000240024020022903004202510d00200320012002108f8180800002402003280200450d00200042023703000c020b20002003290308370308200042013703000c010b200042003703000b200341106a2480808080000bb20203027f017e017f23808080800041c0006b22032480808080002003200041086a220441a883c08000410f10838180800037030020012004109281808000210520032004200210a38080800037031020032005370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10fb808080004100200328023c2202200328023822016b2206200620024b1b21022003280228200141037422066a2101200328023020066a2106024003402002450d01200120062004109381808000370300200141086a2101200641086a21062002417f6a21020c000b0b2004200020032004200341186a410210ab8180800010fe808080002102200341c0006a24808080800020020bfb0102047f017e23808080800041306b22022480808080002002200041086a220341b783c08000411110838180800037030020022001200310928180800037030820024202370310200241186a200241106a200241106a41086a200241086a200241086a41086a10fb808080004100200228022c2201200228022822046b2205200520014b1b21012002280218200441037422056a2104200228022020056a2105024003402001450d01200420052003109381808000370300200441086a2104200541086a21052001417f6a21010c000b0b2003200020022003200241106a410110ab8180800010a0808080002106200241306a24808080800020060bdd0101017f23808080800041e0006b2202248080808000200220013703182002200037031020024203370308200241df006a108181808000200241206a200241df006a200241086a10a8808080000240024020022903204202510d0020022d00504101710d0120022903482201200241df006a108781808000580d01200241df006a108181808000200241df006a200241086a41808701200110b58080800010a680808000200241e0006a2480808080000f0b200241df006a4283808080e000109b818080001a000b200241df006a4283808080a001109b818080001a000b7504017f017e017f017e23808080800041106b22012480808080002001410f6a10878180800021022001410f6a108b818080002103200141106a2480808080002003ad22044200200020027d220220022000561b42058022004280efdd0020004280efdd00561b428087017c220020042000541ba70be00101027f23808080800041a0016b220624808080800020062005370308200620043703002006419f016a108181808000200620013703582006200037035020064203370348200641106a2006419f016a200641c8006a10a88080800041002107024020062903104202510d00200641e0006a200641106a413810f1818080001a4100210720062d0090010d002006290388012006419f016a108781808000580d002006200641f0006a10b780808000450d00410121072002a7410171450d002006290368420020062802601b20035a21070b200641a0016a24808080800020070b4d02017f017e41012102024020002802004101470d00410021022001280200450d00200141086a200041106a22021092818080002103200220002903082003109e8180800042025221020b20020bf40101027f23808080800041a0016b220524808080800020052004370308200520033703002005419f016a108181808000200520023703582005200137035020054203370348200541106a2005419f016a200541c8006a10a8808080000240024020052903104202510d00200541e0006a200541106a413810f1818080001a410021062005290388012104024020052d0090010d0020042005419f016a108781808000580d002005200541f0006a10b78080800021060b200020063a00082000200437031020002005290380013703000c010b2000420037031020004200370300200041003a00080b200541a0016a2480808080000b7001017f23808080800041306b220224808080800020022000370308200241086a1088818080002002412f6a1081818080002002200137032020022000370318200242033703102002412f6a2002412f6a200241106a10a9808080004201109c818080001a200241306a2480808080000bb20401017f23808080800041b0016b2206248080808000200620013703082006200037030020062002370310200620033703182006200437032020061088818080002006200641af016a10bb80808000370328024002400240200641286a200641086a200641106a10b280808000450d002006200641286a200641086a10b380808000370330200641206a200641306a10bc80808000450d012006200641af016a10bd80808000370338200641386a200641106a200641186a200641206a10be80808000450d02200620023703502006200037034820064203370340200641af016a108781808000210020064190016a200641af016a200641106a200641206a10bf80808000200620053703800120062000370378200641003a008801200620013703702006420137036820062006290398013703602006200629039001370358200641af016a108181808000200641af016a200641c0006a200641d8006a10ab80808000200641af016a108181808000200641af016a200641c0006a41808701200510b58080800010a680808000200620053703a0012006428ed2aaf7eabdabf700370398012006428ed6b4fadd0637039001200641af016a200641af016a20064190016a10c080808000200641af016a200641a0016a10c180808000109a818080001a200641b0016a2480808080000f0b200641af016a4283808080c000109b818080001a000b200641af016a4283808080d000109b818080001a000b200641af016a428380808020109b818080001a000b5f02017f017e23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41f883c0800010af80808000024020012802080d00200010c480808000000b20012903102102200141206a24808080800020020be30102047f017e2380808080004180016b220224808080800041002103200241c0006a410041c00010ef818080001a200110828180800020011080818080004204200241c0006a41c00010ac818080002002200241c0006a41c00010f1818080002104200041086a210520002903002106413f2102024003402003220141c000460d0120022005200610a58180800010d6818080004f0d0120052006200210de8180800010a48180800010d6818080002100200241206a2102200141016a2103200420016a2d0000200041ff0171460d000b0b20044180016a2480808080002001413f4b0b5f02017f017e23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41e083c0800010af80808000024020012802080d00200010c480808000000b20012903102102200141206a24808080800020020bc30202027f027e23808080800041d0006b22042480808080002004200041086a220541d884c08000410c1083818080003703002005200110a38080800021062005200210d180808000210720042005200310d1808080003703182004200737031020042006370308410021030240034020034118460d01200441206a20036a4202370300200341086a21030c000b0b200441386a200441206a200441206a41186a200441086a200441086a41186a10fb808080004100200428024c2203200428024822026b2201200120034b1b21032004280238200241037422016a2102200428024020016a2101024003402003450d01200220012005109381808000370300200241086a2102200141086a21012003417f6a21030c000b0b2005200020042005200441206a410310ab8180800010fe808080002103200441d0006a24808080800020030bb60102017f017e23808080800041106b220424808080800002400240024002402002419084c080001097818080000d002002419884c080001097818080000d01200241a084c080001097818080000d012004200141a884c08000410d108381808000370308420021052002200441086a1097818080000d010c030b200341c20010c38080800021050c010b200341c10010c38080800021050b20002005370308420121050b20002005370300200441106a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110a480808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b2202248080808000200220002001109f80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b950101017f23808080800041206b22032480808080002003200137030820032000370300200320023703102003411f6a1081818080002003411f6a41c883c08000200310b0808080002003411f6a1081818080002003411f6a41e083c08000200341086a10b0808080002003411f6a1081818080002003411f6a41f883c08000200341106a10b080808000200341206a2480808080000bff0103037f017e017f23808080800041106b220224808080800020024200370308200041086a21032001410574411872210420002903002105410021000240034020004108460d01410021010240200420006a22062003200510a58180800010d6818080004f0d0020032005200610de8180800010a48180800010d68180800021010b200241086a20006a20013a0000200041016a21000c000b0b20022903082105200241106a248080808000200542388620054280fe0383422886842005428080fc0783421886200542808080f80f834208868484200542088842808080f80f832005421888428080fc07838420054228884280fe038320054238888484840b12002000428380808010109b818080001a000b3102017f017e23808080800041106b22002480808080002000410f6a10bd808080002101200041106a24808080800020010bd20a03067f027e027f23808080800041f0016b22022480808080002002200137031820022000370310200241106a1088818080000240200241206a2203200110a38180800010d6818080002204450d0002400240200441054b0d00200241a8016a210541002106410121070c010b200241d8016a4283808080f000109b818080001a000b034002400240024002400240024002400240024020062004470d00200241d8016a10bb808080002108200241d8016a10bd8080800021092002200837034820022009370350200241d8016a1087818080002108200241d8006a200110a180808000200241e8006a41086a2104200241e8006a41186a2106200241206a41086a210a200241a0016a41086a21050340200241a0016a200241d8006a10c7808080000240024020022903a00122014202510d002001a74101710d04200241e8006a2005412810f1818080001a2002200241d8016a10a6818080002201370320200241a0016a200229037810a1808080000340200241086a200241a0016a10c880808000200228020822034102460d0220034101710d062002200228020c220341187420034180fe03714108747220034108764180fe0371200341187672723602d8012002200a2001200241d8016a200241d8016a410410af8180800010998180800022013703200c000b0b200241f0016a2480808080000f0b2002200137039001200241c8006a2006200241e8006a10b280808000450d042002200241c8006a200610b3808080003703980120024190016a20024198016a10bc80808000450d05200241d0006a200241e8006a200420024190016a10be80808000450d062002200229036837033020022000370328200242033703202002290388012101200241d8016a200241d8016a200241e8006a20024190016a10bf80808000200220013703c801200220083703c001200241003a00d001200242013703b001200220022903e0013703a801200220022903d8013703a00120022002290380013703b801200241d8016a108181808000200241d8016a200241206a200241a0016a10ab80808000200241d8016a108181808000200241d8016a200241206a41808701200110b58080800010a680808000200220013703e8012002428ed2aaf7eabdabf7003703e0012002428ed6b4fadd063703d801200241d8016a200241d8016a200241d8016a10c080808000200241d8016a200241e8016a10c180808000109a818080001a0c000b0b200641016a210b2007210a03402004200a460d080240024020062003200110a38180800010d6818080004f0d00200220032001200610de8180800010a281808000370368200241a0016a2003200241e8006a10c98080800020022802a0014101470d010c090b41b884c0800010ed81808000000b200241206a2005412810f1818080001a200a2003200110a38180800010d6818080004f0d06200220032001200a10de8180800010a281808000370368200241a0016a2003200241e8006a10c98080800020022802a0014101460d07200241e8006a2005412810f1818080001a200a41016a210a200241206a200241e8006a109781808000450d000b200241d8016a42838080809001109b818080001a000b41a086c08000412b200241d8016a419086c08000418086c0800010ee81808000000b41a086c08000412b200241d8016a419086c08000418086c0800010ee81808000000b200241d8016a4283808080c000109b818080001a000b200241d8016a4283808080d000109b818080001a000b200241d8016a428380808020109b818080001a000b41c884c0800010ed81808000000b000b200741016a2107200b21060c000b0b200241d8016a42838080808001109b818080001a000b7601037f23808080800041106b22022480808080000240024020012802082203200128020c490d00200042023703000c010b2002200141086a22042001290300200310de8180800010a28180800037030820002004200241086a10c9808080002001200341016a3602080b200241106a2480808080000b6602017f017e0240024020012802082202200128020c490d00410221010c010b200141086a2001290300200210de8180800010a28180800021032001200241016a360208200342ff018342045221012003422088a721020b20002002360204200020013602000bbc0202027f057e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b4201210502402002290300220642ff018342cc00520d002001200641d885c080004105200341086a410510ae818080001a200341306a200341086a200110a78180800020032802300d0020032903382106200341306a2001200341106a109d8080800020032802300d0020032903382107200341306a200341186a200110a88180800020032802300d0020032903382108200341306a2001200341206a108d8180800020032802300d002003290328220942ff018342cb00520d00200329033821052000200737032820002008370320200020093703182000200537031020002006370308420021050b20002005370300200341c0006a2480808080000b3102017f017e23808080800041106b22002480808080002000410f6a10bb808080002101200041106a24808080800020010b6202017f017e23808080800041206b22002480808080002000411f6a108181808000200041086a2000411f6a41c883c0800010af80808000024020002802080d002000411f6a10c480808000000b20002903102101200041206a24808080800020010b9b0301017f23808080800041b0016b2203248080808000200320023703082003200037030020031088818080002003200341af016a10bb8080800037031002400240200341106a2003200341086a10b280808000450d00200320023703282003200137032020034203370318200341af016a108181808000200341e8006a200341af016a200341186a10a88080800020032903684202510d01200341306a200341e8006a413810f1818080001a200341013a0060200341af016a108181808000200341af016a200341186a200341306a10ab80808000200341af016a108181808000200341af016a200341186a418087014180f6de0010a6808080002003200341af016a108781808000370380012003200037037820032002370370200320013703682003428ed2aa98bdd7de013703a001200341af016a200341af016a200341a0016a10cd80808000200341af016a200341e8006a10ce80808000109a818080001a200341b0016a2480808080000f0b200341af016a4283808080c000109b818080001a000b200341af016a4283808080e000109b818080001a000b4502017f017e23808080800041106b220224808080800020022000200110a280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b220224808080800020022000200110e880808000024020022802004101470d00000b20022903082103200241106a24808080800020030b840101017f23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41c883c0800010af80808000024020012802080d002001411f6a10c480808000000b20012001290310370308200141086a1088818080002001411f6a1081818080002001411f6a200010a580808000200141206a2480808080000b910101017f23808080800041206b2201248080808000200120003703002001411f6a108181808000200141086a2001411f6a41c883c0800010af80808000024020012802080d002001411f6a10c480808000000b20012001290310370308200141086a1088818080002001411f6a1081818080002001411f6a41c883c08000200110b080808000200141206a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110ff80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b8c0202017f057e23808080800041306b2203248080808000200341086a2001200241286a109f8080800042012104024020032802080d0020032903102105200341086a2001200241106a10d38080800020032802080d0020032903102106200341086a2001200241306a10f88080800020032802080d0020032903102107200341086a2001200210d48080800020032802080d0020032903102108200341086a2001200241206a109f8080800020032802080d00200320032903103703282003200837032020032007370318200320063703102003200537030820002001418083c080004105200341086a410510ad81808000370308420021040b20002004370300200341306a2480808080000b2d00024020022802004101470d002000200241086a200110a9818080000f0b20004200370300200042023703080b2d00024020022802004101470d0020002001200241086a109f808080000f0b20004200370300200042023703080b3702017f017e23808080800041106b220024808080800010cb808080002000410f6a10d6808080002101200041106a24808080800020010b3801017f23808080800041106b220224808080800020022000370308200241086a20011092818080002100200241106a24808080800020000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108f81808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a108f8180800020032802184101460d0020032903202100200341186a2003412f6a200341106a108e8180800020032802184101460d0020012000200329032010cc80808000200341306a24808080800042020f0b000b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001109081808000024020012802084101470d00000b200129031010cf80808000200141206a24808080800042020b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108f81808000024020012802084101470d00000b200129031010d080808000200141206a24808080800042020b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108f81808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a108e8180800020022802184101460d002001200229032010b480808000200241306a24808080800042020f0b000bf10102017f027e23808080800041306b2204248080808000200420013703082004200037030020042002370310200441186a2004412f6a2004108f81808000024020042802184101460d0020042903202101200441186a2004412f6a200441086a108e8180800020042802184101460d0020042903202100200441186a2004412f6a200441106a109e80808000200429031822024202510d00200429032021050240024020034202520d00420021060c010b200342ff018342cb00520d01420121060b20012000200220052006200310b6808080002004412f6a10dc808080002103200441306a24808080800020030f0b000b3a02017f017e23808080800041106b2202248080808000200220003a000f2002410f6a20011094818080002103200241106a24808080800020030bc80102017f017e23808080800041306b22032480808080002003200137030820032000370300200341106a2003412f6a2003108f81808000024020032802104101460d0020032903182101200341106a2003412f6a200341086a108e8180800020032802104101460d00200329031821000240024020024202520d00420021040c010b200242ff018342cb00520d01420121040b200341106a200120002004200210b8808080002003412f6a200341106a10de808080002102200341306a24808080800020020f0b000b4502017f017e23808080800041106b220224808080800020022000200110e780808000024020022802004101470d00000b20022903082103200241106a24808080800020030b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108f81808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a108e8180800020022802184101460d002001200229032010b980808000200241306a24808080800042020f0b000bcb0201017f23808080800041d0006b2206248080808000200620013703102006200037030820062002370318200620033703202006200437032820062005370330200641386a200641cf006a200641086a108f81808000024020062802384101460d0020062903402101200641386a200641cf006a200641106a108f8180800020062802384101460d0020062903402100200641386a200641cf006a200641186a108e8180800020062802384101460d0020062903402102200641386a200641cf006a200641206a108d8180800020062802384101460d0020062903402103200641386a200641cf006a200641286a108d8180800020062802384101460d0020062903402104200641386a200641cf006a200641306a109d8080800020062802384101460d0020012000200220032004200629034010ba80808000200641d0006a24808080800042020f0b000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108f81808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a108f8180800020032802184101460d0020032903202100200341186a2003412f6a200341106a108f8180800020032802184101460d0020012000200329032010c280808000200341306a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c5808080002000410f6a10d6808080002101200041106a24808080800020010b6301017f23808080800041206b220224808080800020022000370300200241086a2002411f6a2002108f81808000024020022802084101460d00200142ff018342cb00520d002002290310200110c680808000200241206a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010ca808080002000410f6a10d6808080002101200041106a24808080800020010b7302017f027e23808080800041106b220324808080800020032002200110aa818080000240024020032802000d00200320032903083703004200210420012003410110ab8180800021050c010b4201210410d58180800021050b2000200437030020002005370308200341106a2480808080000bc70102017f027e23808080800041206b2203248080808000200341086a2002200110aa818080000240024020032802080d0020032903102104200341086a200241086a200110aa8180800020032802080d0020032903102105200341086a200241106a200110aa8180800020032802080d00200320032903103703182003200537031020032004370308420021042001200341086a410310ab8180800021050c010b4201210410d58180800021050b2000200437030020002005370308200341206a2480808080000bdc0102017f047e23808080800041206b2203248080808000200341086a2001200241086a10f8808080000240024020032802084101470d004201210410d58180800021050c010b20032903102106200341086a20012002109f80808000200329031021054201210420032802080d00200341086a2001200241106a109f808080002003290310210702402003280208450d00200721050c010b200320073703182003200537031020032006370308420021042001200341086a410310ab8180800021050b2000200437030020002005370308200341206a2480808080000be70102017f057e23808080800041206b220324808080800020032002200110a9818080000240024020032802000d00200329030821042003200241086a200110a98180800020032802000d00200329030821052003200241106a200110a98180800020032802000d002003290308210620032001200241186a109f80808000200329030821074201210820032802000d01200320073703182003200637031020032005370308200320043703004200210820012003410410ab8180800021070c010b4201210810d58180800021070b2000200837030020002007370308200341206a2480808080000b1200200141cb86c08000410f10ec818080000b140010968180800020002001200210e1808080000b0e0010968180800010d5808080000b12001096818080002000200110da808080000b1600109681808000200020012002200310db808080000b140010968180800020002001200210dd808080000b0e0010968180800010e4808080000b140010968180800020002001200210d7808080000b12001096818080002000200110df808080000b1000109681808000200010d9808080000b1a0010968180800020002001200220032004200510e0808080000b12001096818080002000200110e3808080000b1000109681808000200010d8808080000b0e0010968180800010e2808080000b0300000b130020004200370300200020023100003703080b6102017f017e23808080800041106b220324808080800020032002290300220410df818080000240024020032802000d00200329030821040c010b2001200410b38180800021040b2000420037030020002004370308200341106a2480808080000b9a0102017f027e23808080800041206b220324808080800020032002290300220410d1818080000240024020032802004101470d00200341106a200410d281808000024020032802100d00420021042001200329031810b18180800021050c020b4201210410d58180800021050c010b42002104200329030810ce8180800021050b2000200437030020002005370308200341206a2480808080000b4400200041003602102000200436020c2000200336020820002002360204200020013602002000200420036b4103762204200220016b410376220320042003491b3602140b3901017f23808080800041106b22032480808080002003200229020037020820002001200341086a10fd80808000200341106a2480808080000b6d02027f017e23808080800041106b22032480808080002003200228020022042002280204220210d0818080000240024020032802004101470d0020012004200210cd8180800021050c010b200329030821050b2000420037030020002005370308200341106a2480808080000b7101027f23808080800041106b220424808080800041012105024002400240200020012903002002290300200310c181808000a741ff01710e020102000b41fc86c08000412b2004410f6a41a887c0800041dc86c0800010ee81808000000b410021050b200441106a24808080800020050b130020004200370300200020022903003703080b070020002903000b02000b0700200041086a0b5902017f017e23808080800041206b22032480808080002003200236020c20032001360208200341106a2000200341086a10fc80808000024020032802104101470d00000b20032903182104200341206a24808080800020040b5a02017f017e23808080800041106b220224808080800020022001370308420121030240200241106a200110c68180800010d6818080004120470d0020002001370308420021030b20002003370300200241106a2480808080000b1000200010bf8180800010d6818080000b1000200010bc8180800010d6818080000b7e02017f017e23808080800041206b22012480808080002001200010bd81808000370308200141106a2000200141086a10fa8080800020012903182102024020012802104101470d002001200237031041fc86c08000412b200141106a41b887c0800041ec86c0800010ee81808000000b200141206a24808080800020020b1300200041086a200029030010b4818080001a0b0e0020002001200210b8818080000b140020002001200210b98180800010d7818080000b4901037f23808080800041106b22012480808080002001410f6a10868180800021022001410f6a1085818080002103200141106a2480808080004100200320026b2201200120034b1b0b5102017f017e23808080800041106b220324808080800020032001200210fc8080800042012104024020032802000d0020002003290308370308420021040b20002004370300200341106a2480808080000b2e01027e4201210302402002290300220442ff018342c800520d0020002004370308420021030b200020033703000b2d01027e4201210302402002290300220410e081808000450d0020002004370308420021030b200020033703000b2e01027e4201210302402002290300220442ff018342cd00520d0020002004370308420021030b200020033703000b2a01017e02402002290300220342ff018342c800510d00200042013703000f0b200020031084818080000b7b02017f027e23808080800041106b2203248080808000024002402002290300220442ff018342c800510d00200042013703000c010b20032004370308420121050240200341106a200410c68180800010d68180800041c000470d0020002004370308420021050b200020053703000b200341106a2480808080000b070020002903000b070020002903000b070020003100000b8d0102017f027e23808080800041206b2202248080808000200129030021030240024002402000290300220442ff0183420e520d00200342ff0183420e510d010b2002411f6a2004200310c281808000220342005520034200536b21010c010b2002200437030820022003370310200241086a200241106a10dd8180800021010b200241206a24808080800020010b02000b11002000200110958180800041ff0171450b0c002000200110b1818080000b0e0020002001200210b2818080000b0e0020002001200210b5818080000b0c002000200110b6818080000b0e0020002001200210b7818080000b1000200020012002200310ba818080000b0e0020002001200210bb818080000b12002000200120022003200410be818080000b0c002000200110c0818080000b1000200020012002200310c1818080000b0e0020002001200210c3818080000b0c002000200110c4818080000b0e0020002001200210c5818080000b0c002000200110c6818080000b0a00200010c7818080000b0e00200020012001108e818080000b2e01027e4201210302402001290300220442ff018342cd00520d0020002004370308420021030b200020033703000b130020004200370300200020012903003703080b130020004200370300200020012903003703080b0e0020002001200210c8818080000b12002000200120022003200410c9818080000b12002000200120022003200410ca818080000b140020002001200220032004200510cb818080000b0e0020002001200210cc818080000b1200200141c887c08000410f10ec818080000b0a0020011080808080000b0c00200120021081808080000b0a0020011082808080000b0a0020011083808080000b0c00200120021084808080000b0a0020011085808080000b0c00200120021086808080000b0c00200120021087808080000b0c00200120021088808080000b0e002001200220031089808080000b0c0020012002108a808080000b0800108b808080000b0800108c808080000b10002001200220032004108d808080000b0800108e808080000b0a0020011094808080000b0e002001200220031096808080000b0c00200120021097808080000b0c00200120021098808080000b0a0020011099808080000b0c0020012002109a808080000b0a002001109b808080000b0800109c808080000b1a002001ad4220864204842002ad4220864204841090808080000b1f00200120022003ad4220864204842004ad4220864204841091808080001a0b2e00024020022004460d00000b2001ad4220864204842003ad4220864204842002ad422086420484108f808080000b3000024020032005460d00000b20012002ad4220864204842004ad4220864204842003ad4220864204841092808080000b1a002001ad4220864204842002ad4220864204841093808080000b1a002001ad4220864204842002ad4220864204841095808080000b070020004208880b960102017e027f2000290300210103400240200150450d00418080c4000f0b024002402001423088a7413f7122024101470d0041df0021020c010b0240024002402002417f6a410b4f0d00412e21030c010b0240200241746a411a4f0d00413521030c010b200241254d0d01413b21030b200220036a21020c010b2000200142068622013703000c010b0b2000200142068637030020020bb50102017f017e23808080800041106b220324808080800002400240200241094b0d00420021040340024020020d002000410036020020002004420886420e843703080c030b200341086a20012d000010d881808000024020032d00084103460d0020002003290308370204200041013602000c030b200141016a21012002417f6a2102200442068620033100098421040c000b0b20002002360208200041003a0004200041013602000b200341106a2480808080000b2801017e420121020240200142ff01834206520d0020002001370308420021020b200020023703000b2901017e420121020240200142ff018342c000520d0020002001370308420021020b200020023703000b26002000200128020041027422012802888ac08000360204200020012802b08ac080003602000b26002000200128020041027422012802d88ac08000360204200020012802808bc080003602000b0900428390808080010b08002000422088a70b070020004201510b820101017f410121020240200141ff017141df00460d0002400240200141506a41ff0171410a490d00200141bf7f6a41ff0171411a490d0102402001419f7f6a41ff0171411a490d00200020013a0001200041013a00000f0b200141456a21020c020b200141526a21020c010b2001414b6a21020b200041033a0000200020023a00010b140020002802002000280204200110e3818080000b7101027f23808080800041206b22022480808080002000280200210320002802042100200241086a41106a200141106a290200370300200241086a41086a200141086a2902003703002002200129020037030820032000200241086a10e8818080002101200241206a24808080800020010b950101037f23808080800041106b22022480808080002002200142088837030820022000370300024002400340200210cf818080002103200241086a10cf8180800021042003418080c400460d0102402004418080c400470d00410121030c030b20032004460d000b200320044b20032004496b21030c010b417f41002004418080c400471b21030b200241106a24808080800020030bf60503017f017e027f23808080800041f0006b2202248080808000200220002903002203a72200410876220436022820022003422088a7220536022c02400240024002402000418014490d0020034280808080a001540d012002410336024c200241f089c0800036024820024202370254200241848080800036026c20024184808080003602642002200241e0006a36025020022002412c6a3602682002200241286a3602602001200241c8006a10da8180800021000c030b200220043602302000418002490d01024020034280808080a001540d00200241186a200241306a10d481808000200220022903183702402002410336024c200241b889c0800036024820024202370254200241848080800036026c20024185808080003602642002200241e0006a36025020022002412c6a3602682002200241c0006a3602602001200241c8006a10da8180800021000c030b20022005360234200241106a200241306a10d48180800020022002290310370238200241086a200241346a10d381808000200220022903083702402002410336024c2002419c89c0800036024820024202370254200241858080800036026c20024185808080003602642002200241e0006a3602502002200241c0006a3602682002200241386a3602602001200241c8006a10da8180800021000c020b20022005360238200241206a200241386a10d381808000200220022903203702402002410336024c200241d889c0800036024820024202370254200241858080800036026c20024184808080003602642002200241e0006a3602502002200241c0006a3602682002200241286a3602602001200241c8006a10da8180800021000c010b2002200241306a10d481808000200220022903003702402002410336024c200241b889c0800036024820024202370254200241848080800036026c20024185808080003602642002200241e0006a36025020022002412c6a3602682002200241c0006a3602602001200241c8006a10da8180800021000b200241f0006a24808080800020000b15002000290300420888200129030010db818080000b0b002000ad4220864204840b3201017e420121020240200142ffffffffffffffff00560d0020002001420886420684370308420021020b200020023703000b1701017f2000a741ff01712201410e46200141ca0046720b990602087f017e0240024020010d00200541016a210620002802082107412d21080c010b412b418080c4002000280208220741808080017122011b2108200141157620056a21060b0240024020074180808004710d00410021020c010b0240024020034110490d002002200310eb8180800021010c010b024020030d00410021010c010b2003410371210902400240200341044f0d00410021014100210a0c010b2003410c71210b410021014100210a034020012002200a6a220c2c000041bf7f4a6a200c41016a2c000041bf7f4a6a200c41026a2c000041bf7f4a6a200c41036a2c000041bf7f4a6a2101200b200a41046a220a470d000b0b2009450d002002200a6a210c03402001200c2c000041bf7f4a6a2101200c41016a210c2009417f6a22090d000b0b200120066a21060b02400240200620002f010c220b4f0d0002400240024020074180808008710d00200b20066b210d410021014100210b0240024002402007411d764103710e0402000100020b200d210b0c010b200d41feff0371410176210b0b200741ffffff00712106200028020421092000280200210a0340200141ffff0371200b41ffff03714f0d024101210c200141016a2101200a2006200928021011808080800000450d000c050b0b20002000290208220ea741808080ff797141b080808002723602084101210c2000280200220a2000280204220920082002200310ea818080000d0341002101200b20066b41ffff037121020340200141ffff037120024f0d024101210c200141016a2101200a4130200928021011808080800000450d000c040b0b4101210c200a200920082002200310ea818080000d02200a20042005200928020c118180808000000d0241002101200d200b6b41ffff037121000340200141ffff03712202200049210c200220004f0d03200141016a2101200a2006200928021011808080800000450d000c030b0b4101210c200a20042005200928020c118180808000000d012000200e37020841000f0b4101210c200028020022012000280204220a20082002200310ea818080000d00200120042005200a28020c11818080800000210c0b200c0b180020002802002001200028020428020c118080808000000b0e0020022000200110e4818080000ba20501077f024002402000280208220341808080c00171450d0002400240024002400240200341808080800171450d0020002f010e22040d01410021020c020b024020024110490d002001200210eb8180800021050c040b024020020d0041002102410021050c040b2002410371210602400240200241044f0d0041002105410021070c010b2002410c712104410021054100210703402005200120076a22082c000041bf7f4a6a200841016a2c000041bf7f4a6a200841026a2c000041bf7f4a6a200841036a2c000041bf7f4a6a21052004200741046a2207470d000b0b2006450d03200120076a21080340200520082c000041bf7f4a6a2105200841016a21082006417f6a22060d000c040b0b200120026a21064100210220012108200421070340200822052006460d020240024020052c00002208417f4c0d00200541016a21080c010b0240200841604f0d00200541026a21080c010b0240200841704f0d00200541036a21080c010b200541046a21080b200820056b20026a21022007417f6a22070d000b0b410021070b200420076b21050b200520002f010c22084f0d00200820056b210941002105410021040240024002402003411d764103710e0402000102020b200921040c010b200941feff037141017621040b200341ffffff00712106200028020421072000280200210002400340200541ffff0371200441ffff03714f0d0141012108200541016a2105200020062007280210118080808000000d030c000b0b41012108200020012002200728020c118180808000000d0141002105200920046b41ffff037121020340200541ffff037122042002492108200420024f0d02200541016a2105200020062007280210118080808000000d020c000b0b200028020020012002200028020428020c1181808080000021080b20080b140020012000280200200028020410e4818080000b3601017f23808080800041106b2202248080808000200241013b010c2002200136020820022000360204200241046a10f780808000000bd90201077f23808080800041106b2202248080808000410a210302400240200028020022042004411f7522007320006b220041e8074f0d00200021050c010b410a21030340200241066a20036a2206417c6a200020004190ce006e22054190ce006c6b220741ffff037141e4006e22084101742f00a88bc080003b00002006417e6a2007200841e4006c6b41ffff03714101742f00a88bc080003b00002003417c6a2103200041fface2044b21062005210020060d000b0b02400240200541094b0d00200521000c010b200241066a2003417e6a22036a2005200541ffff037141e4006e220041e4006c6b41ffff03714101742f00a88bc080003b00000b024002402004450d002000450d010b200241066a2003417f6a22036a20004101742d00a98bc080003a00000b20012004417f73411f7641014100200241066a20036a410a20036b10e1818080002100200241106a24808080800020000bf70401087f23808080800041106b22032480808080002003200136020420032000360200200342a08080800e3702080240024002400240024020022802102204450d00200228021422010d010c020b200228020c2200450d0120022802082201200041037422006a2105200041786a41037641016a21062002280200210003400240200041046a2802002207450d00200328020020002802002007200328020428020c11818080800000450d00410121010c050b024020012802002003200141046a28020011808080800000450d00410121010c050b200041086a2100200141086a22012005460d030c000b0b200141186c21082001417f6a41ffffffff017141016a210620022802082109200228020021004100210703400240200041046a2802002201450d00200328020020002802002001200328020428020c11818080800000450d00410121010c040b410021054100210a024002400240200420076a220141086a2f01000e03000102000b2001410a6a2f0100210a0c010b20092001410c6a2802004103746a2f0104210a0b02400240024020012f01000e03000102000b200141026a2f010021050c010b2009200141046a2802004103746a2f010421050b200320053b010e2003200a3b010c2003200141146a28020036020802402009200141106a2802004103746a22012802002003200128020411808080800000450d00410121010c040b200041086a21002008200741186a2207460d020c000b0b410021060b0240200620022802044f0d002003280200200228020020064103746a22012802002001280204200328020428020c11818080800000450d00410121010c010b410021010b200341106a24808080800020010b4d01017f23808080800041206b22032480808080002003410036021020034101360204200342043702082003200136021c200320003602182003200341186a3602002003200210e681808000000b410002402002418080c400460d0020002002200128021011808080800000450d0041010f0b024020030d0041000f0b200020032004200128020c118180808000000bf00601087f024002402001200041036a417c71220220006b2203490d00200120036b22044104490d00200441037121054100210641002101024020022000460d0041002101410021070240200020026b2208417c4b0d00410021014100210703402001200020076a22022c000041bf7f4a6a200241016a2c000041bf7f4a6a200241026a2c000041bf7f4a6a200241036a2c000041bf7f4a6a2101200741046a22070d000b0b200020076a21020340200120022c000041bf7f4a6a2101200241016a2102200841016a22080d000b0b200020036a210802402005450d0020082004417c716a22022c000041bf7f4a210620054101460d00200620022c000141bf7f4a6a210620054102460d00200620022c000241bf7f4a6a21060b20044102762103200620016a21070340200821042003450d02200341c001200341c001491b22064103712105024002402006410274220941f0077122010d00410021020c010b200420016a2100410021022004210103402001410c6a2802002208417f73410776200841067672418182840871200141086a2802002208417f73410776200841067672418182840871200141046a2802002208417f7341077620084106767241818284087120012802002208417f7341077620084106767241818284087120026a6a6a6a2102200141106a22012000470d000b0b200320066b2103200420096a2108200241087641ff81fc0771200241ff81fc07716a418180046c41107620076a21072005450d000b2004200641fc01714102746a22022802002201417f734107762001410676724181828408712101024020054101460d0020022802042208417f7341077620084106767241818284087120016a210120054102460d0020022802082202417f7341077620024106767241818284087120016a21010b200141087641ff811c71200141ff81fc07716a418180046c41107620076a21070c010b024020010d0041000f0b2001410371210802400240200141044f0d0041002107410021020c010b2001417c712103410021074100210203402007200020026a22012c000041bf7f4a6a200141016a2c000041bf7f4a6a200141026a2c000041bf7f4a6a200141036a2c000041bf7f4a6a21072003200241046a2202470d000b0b2008450d00200020026a21010340200720012c000041bf7f4a6a2107200141016a21012008417f6a22080d000b0b20070b1a00200028020020012002200028020428020c118180808000000b130041f28cc08000412b200010e981808000000b8f0101017f23808080800041c0006b22052480808080002005200136020c2005200036020820052003360214200520023602102005410236021c200541a08dc08000360218200542023702242005418680808000ad422086200541106aad843703382005418780808000ad422086200541086aad843703302005200541306a360220200541186a200410e681808000000baa0301057f02400240200241104f0d00200021030c010b024020002000410020006b41037122046a22054f0d002004417f6a21062000210302402004450d0020042107200021030340200320013a0000200341016a21032007417f6a22070d000b0b20064107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032005470d000b0b024020052005200220046b2202417c716a22034f0d00200141ff017141818284086c2107034020052007360200200541046a22052003490d000b0b200241037121020b02402003200320026a22074f0d002002417f6a2104024020024107712205450d000340200320013a0000200341016a21032005417f6a22050d000b0b20044107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032007470d000b0b20000bb907010c7f23808080800041106b210302400240200241104f0d00200021040c010b024020002000410020006b41037122056a22064f0d002005417f6a2107200021042001210802402005450d002005210920002104200121080340200420082d00003a0000200841016a2108200441016a21042009417f6a22090d000b0b20074107490d000340200420082d00003a0000200441016a200841016a2d00003a0000200441026a200841026a2d00003a0000200441036a200841036a2d00003a0000200441046a200841046a2d00003a0000200441056a200841056a2d00003a0000200441066a200841066a2d00003a0000200441076a200841076a2d00003a0000200841086a2108200441086a22042006470d000b0b2006200220056b2209417c7122076a210402400240200120056a220841037122010d00200620044f0d0120082101034020062001280200360200200141046a2101200641046a22062004490d000c020b0b410021022003410036020c2003410c6a20017221050240410420016b220a410171450d00200520082d00003a0000410121020b0240200a410271450d00200520026a200820026a2f01003b01000b200820016b21022001410374210b200328020c210502400240200641046a2004490d002006210c0c010b4100200b6b411871210d034020062005200b76200241046a22022802002205200d7472360200200641086a210a200641046a220c2106200a2004490d000b0b41002106200341003a0008200341003a00060240024020014101470d00200341086a210d410021014100210a4100210e0c010b200241056a2d0000210a2003200241046a2d000022013a0008200a410874210a4102210e200341066a210d0b02402008410171450d00200d200241046a200e6a2d00003a000020032d0006411074210620032d000821010b200c200a200672200141ff0171724100200b6b411871742005200b76723602000b20094103712102200820076a21010b02402004200420026a22064f0d002002417f6a2109024020024107712208450d000340200420012d00003a0000200141016a2101200441016a21042008417f6a22080d000b0b20094107490d000340200420012d00003a0000200441016a200141016a2d00003a0000200441026a200141026a2d00003a0000200441036a200141036a2d00003a0000200441046a200141046a2d00003a0000200441056a200141056a2d00003a0000200441066a200141066a2d00003a0000200441076a200141076a2d00003a0000200141086a2101200441086a22042006470d000b0b20000b0e0020002001200210f0818080000b0bba0d0100418080c0000bb00d2f55736572732f696e686f757365636f6465732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f656e762e7273002f55736572732f696e686f757365636f6465732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f6c65646765722e7273002f72757374632f663832393765333531613430633134333961343637626262623638373930383830343766353062332f6c6962726172792f636f72652f7372632f6f70732f66756e6374696f6e2e727300636f6e7472616374732f70726f6f665f72656769737472792f7372632f6c69622e72730000000000100066000000aa0100000e0000006578706972796973737565727265766f6b65647468726573686f6c6476657269666965645f61740058011000060000005e0110000600000064011000070000006b01100009000000740110000b00000069735f76616c69645f6973737565726765745f6973737565725f7075626b65790000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000e2a6b02000000000eaa4ca3b30b00000e783aeb2b00000061636372656469746174696f6e00000022011000230000003a0100002700000022011000230000003b0100002b0000007665726966795f70726f6f6641646d696e00000064021000050000005665726966696572740210000800000049737375657252656769737472790000840210000e00000050726f6f660000009c0210000500000063726564656e7469616c5f747970656973737565725f696470726f6f667075626c69635f696e707574730000ac0210000f0000005801100006000000bb02100009000000c402100005000000c90210000d000000d100100050000000fa000000050000000000000000000000010000000100000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565436f6e76657273696f6e4572726f7200000000100066000000aa0100000e00000067001000690000005b0000000e00000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565000000000000000000010000000200000000000000080000000800000003000000436f6e76657273696f6e4572726f724172697468446f6d61696e496e646578426f756e6473496e76616c6964496e7075744d697373696e6756616c75654578697374696e6756616c756545786365656465644c696d6974496e76616c6964416374696f6e496e7465726e616c4572726f72556e657870656374656454797065556e657870656374656453697a65436f6e74726163745761736d566d436f6e7465787453746f726167654f626a65637443727970746f4576656e747342756467657456616c756541757468294572726f72282c20009304100006000000990410000200000092041000010000002c2023009304100006000000b40410000300000092041000010000004572726f72282300d00410000700000099041000020000009204100001000000d004100007000000b40410000300000092041000010000000b0000000b0000000c0000000c0000000d0000000d0000000d0000000d0000000e0000000e000000d7031000e2031000ed031000f903100005041000120410001f0410002c041000390410004704100008000000060000000700000007000000060000000600000006000000060000000500000004000000550410005d041000630410006a04100071041000770410007d04100083041000890410008e04100030303031303230333034303530363037303830393130313131323133313431353136313731383139323032313232323332343235323632373238323933303331333233333334333533363337333833393430343134323433343434353436343734383439353035313532353335343535353635373538353936303631363236333634363536363637363836393730373137323733373437353736373737383739383038313832383338343835383638373838383939303931393239333934393539363937393839393a2063616c6c656420604f7074696f6e3a3a756e77726170282960206f6e206120604e6f6e65602076616c756500000001000000000000007006100002000000008b300e636f6e7472616374737065637630000000040000000000000000000000054572726f720000000000000a000000000000000e4e6f74496e697469616c697a65640000000000010000000000000012566572696669636174696f6e4661696c6564000000000002000000000000000d4e6f74417574686f72697a65640000000000000300000000000000104973737565724e6f74547275737465640000000400000055546865207075626c6963206b6579207468652070726f6f6620776173206d61646520616761696e737420646f6573206e6f74206d617463682074686520726567697374657265640a6973737565722773206b65792e000000000000114973737565724b65794d69736d6174636800000000000005000000000000000d50726f6f664e6f74466f756e64000000000000060000003a54686520626174636820636f6e7461696e73206d6f7265207468616e20604d41585f42415443485f53495a4560207375626d697373696f6e732e00000000000d4261746368546f6f4c61726765000000000000070000002f546865206261746368206d75737420636f6e7461696e206174206c65617374206f6e65207375626d697373696f6e2e000000000a4261746368456d7074790000000000080000008c54776f206f72206d6f7265207375626d697373696f6e7320696e20746865206261746368207368617265207468652073616d65206063726564656e7469616c5f74797065603b0a6f6e6c7920746865206c61737420777269746520776f756c6420737572766976652c20736f207468652062617463682069732072656a6563746564206f757472696768742e000000174475706c696361746543726564656e7469616c547970650000000009000000856062756d705f636c61696d60207761732063616c6c656420666f72206120636c61696d20746861742065786973747320627574206973206e6f206c6f6e6765720a76616c696420287265766f6b6564206f7220657870697265642920e28094207468657265206973206e6f7468696e6720776f727468206b656570696e6720616c6976652e0000000000000d436c61696d4e6f7456616c69640000000000000a00000002000000000000000000000007446174614b6579000000000400000000000000000000000541646d696e000000000000000000000000000008566572696669657200000000000000000000000e49737375657252656769737472790000000000010000003843616368656420766572696669636174696f6e2c206b657965642062792028686f6c6465722c2063726564656e7469616c5f74797065292e0000000550726f6f660000000000000200000013000000110000000100000000000000000000000b50726f6f665265636f726400000000050000000000000006657870697279000000000006000003a2546865206973737565722074686174207369676e6564207468652063726564656e7469616c20746869732070726f6f662077617320766572696669656420616761696e73742e0a4c65747320612070726f746f636f6c2072657374726963742077686963682069737375657273206974207472757374732070657220636c61696d2074797065207669610a60747275737465645f6973737565727360206f6e206069735f766572696669656460202f2060636865636b5f636c61696d602e0a0a604f7074696f6e6020736f2060697373756572602063616e206265206578706c696369746c7920616273656e742077697468696e20616e0a616c72656164792d63757272656e742d7368617065207265636f72642028652e672e206f6e65207772697474656e206279206120667574757265206d6967726174696f6e0a746861742063616e2774207265636f76657220746865206f726967696e616c206973737565722920e2809420606973737565725f69735f7472757374656460207468656e0a6661696c7320636c6f73656420616e642072656a6563747320697420756e64657220616e206163746976652060747275737465645f69737375657273602066696c7465722c0a73696e63652074686572652773206e6f2069737375657220746f20636865636b20616761696e73742028612066696c7465726c6573732063616c6c65722069730a756e61666665637465642065697468657220776179292e205468697320646f6573204e4f542c20627920697473656c662c206d616b652061207265636f72640a7772697474656e206265666f72652074686973206669656c642065786973746564207265616461626c653a20536f726f62616e277320737472756374206465636f64696e670a7265717569726573207468652073746f726564206d6170277320656e74727920636f756e7420746f2065786163746c79206d61746368207468652063757272656e740a7374727563742773206669656c6420636f756e742c20736f2074686f7365207265636f726473207374696c6c206661696c20746f20646573657269616c697a6520287365650a606c65676163795f7265636f72645f6d697373696e675f6973737565725f6b65795f6661696c735f746f5f726561646020696e20746573742e7273292e2041207265616c0a6d6967726174696f6e206973207265717569726564206265666f72652072656465706c6f79696e67206f766572206578697374696e672073746f7265642070726f6f66732e0000000000066973737565720000000003e80000001300000049536574206279207468652072656769737465726564206973737565722076696120607265766f6b65602e204578706972792064617461206973206b65707420666f722061756469742e000000000000077265766f6b65640000000001000000be466f7220706172616d65746572697365642063726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292c20746865207468726573686f6c640a76616c756520746861742077617320636f6d6d697474656420746f20696e207468652070726f6f662773207075626c696320696e707574732e204e6f6e6520666f722074797065730a77697468206e6f206e756d65726963207468726573686f6c6420286b79632c206a7572697364696374696f6e292e0000000000097468726573686f6c64000000000003e800000006000000000000000b76657269666965645f6174000000000600000000000000000000000561646d696e0000000000000000000001000000130000000000000082496e76616c6964617465206120686f6c6465722773206361636865642070726f6f662e204f6e6c792074686520726567697374657265642069737375657220666f720a6063726564656e7469616c5f7479706560206d61792063616c6c20746869732028652e672e207768656e204b594320737461747573206368616e676573292e0000000000067265766f6b6500000000000300000000000000066973737565720000000000130000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f74797065000000001100000000000000000000000000000007757067726164650000000001000000000000000d6e65775f7761736d5f68617368000000000003ee00000020000000000000000100000099412073696e676c652070726f6f66207375626d697373696f6e20696e7369646520612062617463682e204d6972726f72732074686520696e646976696475616c20706172616d65746572730a6f6620607375626d69745f70726f6f6660206275742067726f7570656420696e746f20612073747275637420736f20746865792063616e2062652070617373656420617320612060566563602e000000000000000000000f50726f6f665375626d697373696f6e0000000005000000000000000f63726564656e7469616c5f747970650000000011000000000000000665787069727900000000000600000000000000096973737565725f696400000000000013000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e70757473000000000003ea000000040000000000000000000000097365745f61646d696e0000000000000100000000000000096e65775f61646d696e00000000000013000000000000000000000319546f70207570207468652054544c206f662061207374696c6c2d76616c696420636c61696d20736f20697473206050726f6f665265636f72646020646f65736e2774206765740a6172636869766564207768696c65207468652063726564656e7469616c206974206361636865732072656d61696e732076616c69642e205065726d697373696f6e6c6573730a62792064657369676e20e28094206e6f2060726571756972655f617574686020e280942073696e636520657874656e64696e672073746f726167652072656e7420636f7374730a6f6e6c79207468652063616c6c65722773207472616e73616374696f6e2066656520616e642063616e6e6f74206166666563742074686520686f6c64657227730a636c61696d20696e20616e79206f74686572207761793b20616e796f6e65202874686520686f6c6465722c20612072656c79696e672070726f746f636f6c2c206f720a756e72656c617465642072656e742d6b6565706572206175746f6d6174696f6e292063616e2063616c6c207468697320746f206b656570206120636c61696d20616c6976652e0a53656520746865206d6f64756c652d6c6576656c202252656e7420616e6420617263686976616c2220646f6320666f72207768792074686973206973206e65656465640a6576656e2074686f75676820607375626d69745f70726f6f666020616c726561647920657874656e6473207468652054544c206f6e2077726974652e0a0a50616e6963732077697468206050726f6f664e6f74466f756e64602069662074686572652773206e6f20636c61696d20666f72206028686f6c6465722c0a63726564656e7469616c5f7479706529602c206f722060436c61696d4e6f7456616c696460206966206f6e652065786973747320627574206973207265766f6b6564206f720a706173742069747320606578706972796020e280942062756d70696e672072656e7420666f72206120636c61696d206e6f7468696e672073686f756c642062650a7472757374696e6720616e796d6f726520776f756c64206a757374207761737465207468652063616c6c65722773206665652e0000000000000a62756d705f636c61696d0000000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000001bb4c696b65206069735f7665726966696564602062757420616c736f20656e666f726365732061206d696e696d756d207468726573686f6c6420666f7220706172616d65746572697365640a63726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292e20412070726f6f66207375626d697474656420776974682061207468726573686f6c640a6f66203230305f3030302073617469736669657320606d696e5f7468726573686f6c64203d2035305f3030306020626563617573652069742070726f766573207374726963746c790a6d6f72652e20466f7220606b79636020616e6420606a7572697364696374696f6e602c207061737320606d696e5f7468726573686f6c64203d204e6f6e65602e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465640ae2809420736565206069735f7665726966696564602e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565722028756e6368616e6765640a6265686176696f7572292e000000000b636865636b5f636c61696d00000000040000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000d6d696e5f7468726573686f6c64000000000003e800000006000000000000000f747275737465645f6973737565727300000003e8000003ea00000013000000010000000100000000000001e652657475726e7320602869735f63757272656e746c795f76616c69642c2076657269666965645f61742c2065787069727929602e206069735f63757272656e746c795f76616c6964600a6163636f756e747320666f722065787069727920616761696e7374207468652063757272656e74206c65646765722074696d652e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465643a0a7468652073746f7265642070726f6f66277320697373756572206d75737420626520696e20746865206c6973742c206f7220746869732072657475726e730a602866616c73652c2076657269666965645f61742c206578706972792960206576656e206966207468652070726f6f66206973206f74686572776973652076616c696420e280940a74696d657374616d707320617265207374696c6c2072657475726e656420666f722061756469742c206d61746368696e6720746865206578697374696e670a7265766f6b65642f65787069726564206265686176696f75722e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565720a28756e6368616e676564206265686176696f7572292e00000000000b69735f766572696669656400000000030000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000f747275737465645f6973737565727300000003e8000003ea0000001300000001000003ed0000000300000001000000060000000600000000000000425265766f6b652061206361636865642070726f6f662e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207265766f636174696f6e2e00000000000c7265766f6b655f70726f6f66000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000000cd56657269667920612070726f6f6620616e642c2069662076616c69642c20636163686520697420666f722060686f6c6465726020756e74696c2060657870697279600a286c65646765722074696d657374616d702c207365636f6e6473292e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207375626d697373696f6e2e0a606973737565725f696460206d757374206265207265676973746572656420616e64207472757374656420666f72206063726564656e7469616c5f74797065602e0000000000000c7375626d69745f70726f6f66000000060000000000000006686f6c64657200000000001300000000000000096973737565725f696400000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e707574730000000000000e000000000000000665787069727900000000000600000000000000000000004e6061646d696e602c206076657269666965726020616e6420606973737565725f7265676973747279602061726520746865206465706c6f79656420636f6e7472616374206164647265737365732e00000000000d5f5f636f6e7374727563746f7200000000000003000000000000000561646d696e000000000000130000000000000008766572696669657200000013000000000000000f6973737565725f726567697374727900000000130000000000000000000000000000001076657269666965725f6164647265737300000000000000010000001300000000000000764f6e65206576656e7420697320656d697474656420706572207375636365737366756c6c792076657269666965642063726564656e7469616c2c206d61746368696e670a746865206576656e7420656d697373696f6e20736861706520696e207468652073696e676c652d70726f6f6620706174682e0000000000137375626d69745f70726f6f66735f626174636800000000020000000000000006686f6c646572000000000013000000000000000b7375626d697373696f6e7300000003ea000007d00000000f50726f6f665375626d697373696f6e00000000000000000000000000000000176973737565725f72656769737472795f6164647265737300000000000000000100000013001e11636f6e7472616374656e766d6574617630000000000000001a00000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e39312e3000000000000000000008727373646b7665720000002f32362e312e30233137356161343133303666333833303537613863646663383462363864393331363634666333346500" } }, "ext": "v0" @@ -544,7 +544,7 @@ "symbol": "Wasm" }, { - "bytes": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b" + "bytes": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9" } ] } diff --git a/contracts/proof_registry/test_snapshots/test/bump_claim_extends_ttl_for_valid_claim.1.json b/contracts/proof_registry/test_snapshots/test/bump_claim_extends_ttl_for_valid_claim.1.json new file mode 100644 index 00000000..d6183f41 --- /dev/null +++ b/contracts/proof_registry/test_snapshots/test/bump_claim_extends_ttl_for_valid_claim.1.json @@ -0,0 +1,489 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "function_name": "register_issuer", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + }, + { + "vec": [ + { + "symbol": "kyc" + } + ] + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "function_name": "set_vk", + "args": [ + { + "symbol": "kyc" + }, + { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "submit_proof", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "symbol": "kyc" + }, + { + "bytes": "0000000000000000000000000000000000000000000000042ab5d6d1986846cf00000000000000000000000000000000000000000000000b75c020998797da780000000000000000000000000000000000000000000000005a107acb64952eca000000000000000000000000000000000000000000000000000031e97a575e9d00000000000000000000000000000000000000000000000b5666547acf8bd5a400000000000000000000000000000000000000000000000c410db10a01750aeb00000000000000000000000000000000000000000000000d722669117f9758a4000000000000000000000000000000000000000000000000000178cbf4206471000000000000000000000000000000000000000000000000e91b8a11e7842c38000000000000000000000000000000000000000000000007fd51009034b3357f000000000000000000000000000000000000000000000009889939f81e9c74020000000000000000000000000000000000000000000000000000f94656a2ca48000000000000000000000000000000000000000000000006fb128b46c1ddb67f0000000000000000000000000000000000000000000000093fe27776f50224bd000000000000000000000000000000000000000000000004a0c80c0da527a0810000000000000000000000000000000000000000000000000001b52c2020d746000000000000000000000000000000c668d4d6ac42790ed217e8bf008e70917700000000000000000000000000000000000867ff44121bdb2c8e957bf07a6f4e0000000000000000000000000000003bd32ac024985233df1feb7caf4e31a07b0000000000000000000000000000000000224974cd8a468bfce1a301d4338a9b00000000000000000000000000000075c162ea8274d64c735bb04aef8dbc8e0100000000000000000000000000000000002fc1f2ab715b4caf9474e08cdc207400000000000000000000000000000016ffb4cba0d2c022b8ac46f0e5225dce98000000000000000000000000000000000012ca347a59d9dea7d7fa0260b9181e00000000000000000000000000000025bb805f2a91ef2e802c2527572e7bb552000000000000000000000000000000000029bd9f22b39e8ef3b48df31cc811100000000000000000000000000000005ac7f8200290a7baad69e6a7e54fb385a900000000000000000000000000000000002d6aaafe1493f87f84892ab8763860000000000000000000000000000000cd77eecaa6bc7b38f7e3f4824d9c17192f00000000000000000000000000000000002aff4f8031db91518e3f6fb8cdc7560000000000000000000000000000009453a52cb6195aa2d66974f12791799b6b00000000000000000000000000000000002e524075a2bd0f1247ec1a196d4ebd00000000000000000000000000000022eb41ae79de0ddc2de85642c5bccf9e60000000000000000000000000000000000017fa5a9cfe617a9e1aaae3c01b0c19000000000000000000000000000000a81528671c531979d80aa169ba4ace202000000000000000000000000000000000002d5773db7711ee91a11bf99ca8b061000000000000000000000000000000fec39c1268598f3ad2421a49db7057936200000000000000000000000000000000002baacce67605b7df8eb53626c6e4d6000000000000000000000000000000b807ebcaf35c4bde0f2d1944ed7b4d3d9800000000000000000000000000000000001d54c17cd71d41dfaf7d4b9895613c000000000000000000000000000000f638fa13b162f29f87a972e060b16fdeea00000000000000000000000000000000000e8a45e73b184c62ec7688e4caf4b0000000000000000000000000000000efa9475f3d30256656a8313ebcf7115dc60000000000000000000000000000000000138e2b8e91fdcb10b9bef13e4cb619000000000000000000000000000000391727546150acd67f0d8feee7e265d87600000000000000000000000000000000002c99bd77dd8c0a1dd716cb42da2842000000000000000000000000000000c12a81ea5f4370007f7deab5d3a65bc2f70000000000000000000000000000000000181f7f9a361c20e1baff19924677691a251e01ac227137ffa82e49d6c9fd563e5a3187879449d8ccf5c85a613b6b35163f3071350f2ef1b8a8176caab75b06e9d9b6c0f22526b876ec2d398ec494cc0432ef0692755e657d225a64f4ec01db35482440852ddbae2861cb5ac3117c5511f0c48d9d9e66a5a75b4601255b1fb2285d3537299a7449cc7a4f446d36d91f1c20efdf80a1f180ac6562edcbc0eeee260128c237b289b9cdc22a118d4003010ac0a2b42e40c8290ec54b3578393d59a1e0c190886c48d0b4466d49ff4942470a3743ee3364f9705b42be011782a5aa8cdd7411c81d02314a611f27b67aab121d976295472d793eb3d9c3f2dc042ba84d1279e3e5dfb4ef0871bdf702681c030edd9d623cc7dbbf28829d1e9841418d6b95f00367a472657939205fbb9884bb127168f4fc60af7509e4386ea76d7c5ffcaa1fd7f40e43ba91e587db229225f125e3574ebb2db3f45265a09f31cc380747e23924777ddd10bafc5b2359d6e8891529dedcc60f4d5be7e2d2d9023d968a119c74c2ae189bb22055a77db2fa811c2c92ff06bd6cbbcda7a62d3139d53b1693c0c3b2c2d711142b4cbd8995f2a9de11d36f4b272adee4b9517c181a13e2bb405b00823d4b0a95420691ea8afd7bb924b86afd41c5e392dda8f7195f3ae8ce5f6b47df6e288a37f5cd34b0febb29f119c82df9fdfd87abd4222500bcef0685e0e9323e25a33adeb760f5ebdb04227f00607a108240f0ce211e93593895df259d7b956465d2654e2ffaa4ec412840980b4a3942c91703b60cf97a7f6a1289820aa8d72778a5ba3702ecaf84c7c20ac023c3bb5b66680dd56519a73c2341a9fcc8a6ff1ded82531f630b05538a6fae010d64fdc8d77b9cf3f33fcbb98dbcfc427ac27a18ad715985f2bdfec4e9c5ab1906e52d4f7c7a88dfcd599bf6a908afb31a29d1d045898689c8e8a6925a5821db238c93cc7fc74642eb8805fa9f23ee4a8394ed487d043dd35cba21b385465f391452c2917cf5c145ddfd925cc6b23f21dced22b3e196b3cca1667e38706254210a766773ccbb9eb60fe4b3f2a3f37dbb3e0e7e62987fcabdcdd34837ac2b47d710e77b556d514313831972a9f33ca4031f52da0e4535eac69d705bbe107f648b2c1653ac16f6048dc45e3c8add66f518a4b76b25ab23c842920c2d7b56f8b7922670098dff7440a788c12c6f6f6a5a1510ac74837e0d6b07081f2c22cf514652119a5c3ccf36213a88af1743ef5512912c7d3edc138b61db10b5f1e06592ec7b2c1a19a022b1e4741567a03a61c2acf8daacc89070ec00b97747a953fc0f964e14cd6cf2661d5ffa22d168cdb69d4d041ec52e68a4948b879d4f1b634e602df30a077a3fd0927983018dca75f4a753864035452a845b48b1f48066612794b9f12c98d207b443ac6abe62e9294eeee24887c1c8d24af4b1976e0850998d84fdfa26df16707b90ce81b88a181a7ba88d8cf481ec01b00ab6d90b706941304a486405a2ede7c50d20e609f5372397831d160f68e0b22c481ca2d92398b9247f5fc81efb620ae48d328ce0ada1b2a226dd739c994eab0e1a441d24e2daab56b5b1df116c07061e8599ed7172b12b686c1cd3836561485e3e64545d9114934fb7e6f90ff7b0d245e9e405a5a2b54e6f58b62a48017fef3d653c978bda7d35308ce2712a9773344d9a53823e9aedf866d345db50f7e4a1bf5744317c2f5635622a056b036a1f7881390ae3f1a459bd61b89ea02520c86333fb8661412b28699fddce2b29d1af4ccc032ce978d17b1b4e219a122c19a9bc7fac4e1bc7f58e183a1f55481ca3ce8f4c8957cf0a2c8deb6d3828dc9db4836c352126879c499f55b585cd7e2444955ac7886c5dc4892b2e42d177cb6d18ea0d2f3e63afdc238e3fab0083da12979ba75596539d9f68caaea43aa10621430f263cb28ddd078b8da4aa20f97b06a907f7c80b0eed57d684314d9f542dafb9140ea558f932c3e0df5ec532a1ee2f5add1cd1e06edb76574259c31ca89e1cfe871d828733ecc8f49caf7d0c501316f90390556174431f3ff9d8ce756d0018f3a1138df1847e72836eea362d20731cf7200baff850fb42fa1e2131d71c565f94f87ef63f70c7fc7404ba0db8774f15430a505785086392c5604befef5fd7d0c7ce2eaa8750d0293c35fc0caa76e72f30738a716296319f4c4d5e5f06387fa89dad1f84ffce3f5db5b898f3433f6d19f7312b747255e22e45b536854321ec5f5a5ec7c96d163ea65f0ae20af789ca2c9c9f126483b371102fd6e4e8ec3dedc31bd1f96f217b36248c614bffc8f3022ee1836381e8ac389e497defb603380e346bc9d9eb46c607f61be93ecc9802902074d8b921def6d50def4f31cf546f1849bfe48ab0e2240eda00009ce092b4530304f1ba93569cdc939a268864e58757ffc7dc94ea947c81343cf020edc820a42c5023544f9bcb7b8e8bd439606621abb3082e39eb9d7a8c9b67cedc580b14ff2dfba58fa7fee1ff9843f1ea68af8a54be1178e23df2886384a553206ea8cce7273613f7534fece7edf43500e7103ddb660e01737d4354eb0c607159f1a84d75067c31594f6b3861bdcb5b4fe23a1daf66e2a75ee704d0485d688e414498658603b40afd73979d9aee48f7a9e75a9e060806742c022000a448ea3124cf7b518400e9d050eca8744082e23511db385f2b0f7ab4103bca409fe76cd917d27986ad2bd70338549a774f9fe47d0f1580d68e16ae027fecded4589f636f454fc9938026d59cbd34af46ec688c16bb42047d522e4bfef0bcaea67fea0a4b2f45abceb4077cf654c76cf415848eeb0e5fc0dcb8da5b0cfe65c8234afc79962c47115bee292604868b26adac64ad5af67997d0aa41bfd154498157c94369109865428a510f9bc124bc164303c822ff84b81c21dbfcc1987ee5effc24d99dc14be67866b0180e97312624479bb3526e63eda76d4b2df49c58018769c13f7f305ebc6c6b2903b6422d7fdefc96caf50b02ea272850846e44225a26b651e5ab09ca7dbd0d6221eebf0e7deb6816f83d1d5398ec6b03dcb6a113be156855d96083541658485f2ac9deb94fd588233084f20e5d10e787a53ef8d5fce9c4c0a4c07b6dfd6ca8ce1e33b2ed6129406b19ca2e26657fdf555ddebcecc3a43ad8d1804bb8c1eef28b09745fd2b97f06b3d45af2e3e8f2966a19c3b4de7de996f2c69ce7a923a610e925cb3fd18cc78efea1fe3f6c29f8cab901f78c33febfbcbfd2d4a0295e6f7803004a17bce8af6da36fe52ddf723a96d5b24ab9f8d1dfa7aeafce5811e6b7e82007144311c41d42207554ba94e2e4cae4bc8d944f317929ace53ed9cd040b092821724594f55ab3c74397d2d775ab85f08b879d0da9330a1132a1910bca9de3e71826a0b96b0a9470dbc0c3fefe3c797f33ada63ab17d21316676de0ec7617dbb24576776f4abc1286acf7ef57ce136c7dae83050dbf801c405680ba16ce919312833bf1046e517e3ecb47bd93ade7558eba45faee153e2d3fbcce7ba73493d4f0908bfcd6e145901d382c8076d597521c29684749ab5cbf86722af11c9ac45700fb0a7776a559a38f8b79b98e721a44cf34ec397cf25e37f4d69d24a0381b4ab0264f3b2574d5256a562f2e7d4473f98eaf405cc7748b78db8263aec85e0adce0325a7dc66e47df8f7f96f7bc726ed5ef1ed6ed835070ff5c4fa4e7e6baf60c025434b092aa40904fe8d8e457c630cca3754ab8d728a09031936c3edf6972ddf1b3cc1ed955ab2d37db4ac96699b83e88a2bf1e4f874f17fa0d1167f1c84e1300be1951ac183e4c81993c4341f415170ce8229ce54d51e7f53b41873637d213424b2d71e573942625a6e0f8b938c3120b1faa0f29902522e3d361a6c41a912952da85f74e4e9a7e48b8955ab3809827ab2c018094341689e50e84027e1b13b610508084409dae1d12c82c738d2b5c5b48dc4a035c1d69c1315c2bfcfb925859b05760c252778372a8befa84a1b8a2a068ba7f29619962e7840a790c38370517d227e3dfa0c3dba92c62c8e276a71f40976a3fb9cce730bc5d0ab548485c758270a6c696530c8b60e16f520f4d6164222a20b3cebc57c9942421525b88cedefa40be42370d2b9b6c47ccd91c10ea1c46d2b26f9c6e44492f129c1c5326fb27ccc1de11e12035ce0acd560aeaf1203c87f650ab05005558b379ce178f333deaa1c3018d8193a5dbf672b2f50169f1eb6a1097e6d506f84b2efb472f5860c0d598921d4e761aa9b9967fb62e2cef3bd4b5bd2a703fc279a0936ecf5aa064b8620490e2c8f6d9643bf5e01e326923798a6d7a2a40f0567e8f5b4e9ca489627e402c200366756e777fe7f694ea2799942fb51bbd79b2126535ab16343ee64ec0b60cf0f236dd45d70510e83f9f8967af83fe7c4c822adaf600e7d0b9f5229c42430a2069fa10fc4fc083b586c1e90837d8fc5cdf2a3d7364402e6dd2ba6dec497701c0e0d3d7fd4fd27dfa4b691071073f1ee48617a5f3e6b98aace78b7883fa65f0924b8fc2e95e6a46760aadeb80e8beb0921fa6d7db7b3a40f219ff540a076214b1e1e21e203ce766ac5c3c70871e926c42f5276e2346298a59605d3da04c588372cb6a141640ec881defba390f4f56a64aa08c7b7c49ce693b72cda6a28dcc6c80d009d5f21ad56d1e003200487d9e984767e18dc3d46db91806630c6659d42660e1f6462d0a9fd2c7e456dfd281cbcee7eae84e42e74e1908d8764a0fd848b7912995904b97b4d9d435a128d68495d92f41d88b835c9321e99fb7337daedbcf10ba51a3df184f4dd900c7ec01431a3cc8aaa24109a99a5bbdca39d90fb5b8a1927264e6d3ddf61db6b8fe85d3a67679214219459b84cbc240f3ea393e0dff6a30b7a2b9b396b887849f258eacb812af59af2096a7d294d2823a29610c4d065d621aea41bb5123e4d747df45644cf617faf6832908d14f48248fd48e231dd7ff21ff46341060e0f1b06b5b373929b1f5b05111a326b522ac6f40e87085f17bab10d51d9f8057dd8b9f961db0cddb22e337b42357a0a78ac47ce551484bee2f8842fe332a0ae767b72fe4a96d296f3275425734625da717302512a86aed471df6d27d6618b65235d2dfee2e13906b6e2889272bb2fb1fe004bfeda8ad7bc585457056f533089bb30e8dacb959feb8545ac9b0f2af7fd85d54c1ef31641319da4a615eaacd6bbce09e3330bfbe6998594a5d428d11933acc446f2ed4d85ee82323b0315d511e2ba34303a632a0d454a89291bf18e8fb83b038e6af073fc080daf5a08faa205816d943a4b043ca5d64c8d3761543bf17226a25b4e92dcaeaa9d883320f263427023909059405a2eb5f7124535095480ebaf7939d6a2ac7dd75e481e2fe64b64ca5644a73be47ee45433f31da5e8bd33eeca235b52a20b328f8ee2d5005133bb7fe254f6a8c02a0302c392e66054acc900ede95817e538512b9837700c1da2b3d2ea617946f2e9b61b00ef73e0827a3893e3ddf460590f106ac0e4e219d099c27c1770e42eeae1c2dcb9db56774264d435739d957807fde6c77c60962c37ac9ab095449ebc0e4ae51ffd8003d7b81d18c6ed880bf0c51b8d26f2ffca1252530ca0ff9bf0c7d12d4ee10448b3e7ec97709bf64d0ea5fb1124d7de425611585f80829ea47dc5095dfd38d01ffc8aef4ccaad02fc463684a19d7f416c7e044e3104dc47241f73a8f43ab922cf2df406f2adb3bbc23a2073560e7660cfad173a40fcc3ffeb36052ea3917c7e27d43e474aa8a37a3dfea87026eb5881d7550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002687d678007548664308a56028ea8040809f099b56f4d494f9b825eb107ac4aa17be69023dca6ce6fa11f2efceb1cb0136391d87864f6891ecc4c2e1083ad5ff21a2422b1f67bcf81b75eb7b9b39bf6da97953330a50ffa88724ae6ff2d1e5da1b5b410c852cb9eb3625c9ae93a39594def83a159b7b286af9d849c4d1c6834a26ab7e7c666e2d2ad653c71f9d8da32fed2460470dbbcf812303f3b4e9614b0b2df84c7fa62bb94e31c8d1f4a7c005f89a4a5ae87c58eb6f79dcdf75f11d10940992870caef41275bc532c272dd7b019fa195281e9068c7cbeff1f7b3994928c001cafcfabd33712ece2285d73cd92057e88bc0d27cad24a43e08150a7a554e40f8c9caeb5dc7ada91603569873a0e3891b5bf90edf5c9ae5006aa632e48d71025049e757a22d70fbbe2f7ed3497c3fd356f3074b04cf91f22d7839eb32323490a101494eba0872e9beb3fa5eb84510e736da3fc20c83756c0c42a4f4a28e1de1e200a31aca3d2d9d59f0423daeab2bd1b7ffa61d47e863f59ac2ec4720e5889149892f23423ebd8774f74913e760789eb2ae91d576fe56f140d96b6386af73c0858fbaad55c63417b72320ac56f3fffa9d10735f72ee0d5a6aaface8db9f608199661ca9a06aa67558118f45b12a7f766b0fea15f6900855bc29d93adfc2e582e6abdfb2ae7078d52de4128ba9b4add73ae83746930de87e65fa6b69a56720b0a2b31ac8c194025b49043078bb98f22f2563a6436c75119573b63d5369b3f2a1e16e9a99453521568e326a5590f8e5fb064e33dfd6688975f405ef7b203941e2cae65dbc09772a0d882f6b8a1cf1c48dbdda31d8ef33823ebf83c28dbe61e941ad38250e1a1e0ff32b1195809c59d1df79debe97ad19504d5c1128d0d0368471ac748974e33057e30e57771870db768ba53db52c0247eb4808887420e5d251e1e75f3c14d1957dfca4b9d7c8a0574166a264e0d8fb745d39d4632b91714bbf41589714a5052f6dc7f1a852ee11d5b4b4cdc13569e9b72d6f02492793480c8ad100fb373c93812b644ec1b4593fda1f518d94a06f27213a63955a044d130abf71221a2ab927f227f4b60251098a7422d5e6c2419f312de0391d66d0ff28a662803bc1106dd0fb29d88dd70ba192f66f38b578e6c072497c0a36e017215dbe1cd0c4a16d200a1521061b3498799b0a326d07f0c227d879c1fc4378d4db91aa63a2bd2a8214d5f475306f0eedd9754ff8e531e21a2b66dfd173adfe2b36062ca2317059a4c010bfbbe8bec945c7f442ee1bb63a91c7ca9af6151dcbfdb55d93e5c29570fb5b55d74fa78280f3420708ed9bc04734dd05404bade19e02ea8641abe1bfc1658859d940e41f22504c998c182578b57ae0659ab5ec3bcd8568953c48309d4d5b236c9a8372ce5d2e3c77bd764d14e364a270b569835f4c43854886f1c02a11a00768fb688bfb5e20e9d16446db4808e53fbdbb496cc91f4a69341330e290845386ae097cff4c55f06259f359c74c02b84c21a6b91d3cf828a16b374131567743ce58013ac35106640a16294712fa8e964d3bfcfeced0f8c65cd3b8e100af00d16a89069d42cee1155327102d711417716281a5927ce6c067908dcd73d1060f952b088839c0a4b79c27c5aac4b3dccec05a24d3f095bd57e2265aecf1f0e0539d13efc4364e914463a68c48e0a7155cda8f48653bec651a334f14e826f2c8e3f8b901423bdaf7c60ac79a99f975bf0104f2da2ee7fae06d393f7d42df0297e9c6bd70382da06e3c3ad81d6da82603dcd60974138e2a6ca552d1e0d71dd0000000000000000000000000000003d570ce256c23b2ad24b2d1a6215c62b63000000000000000000000000000000000000e1828c6c687a505897c01b7acab30000000000000000000000000000004052eaf295668d87719c907b1831328aa1000000000000000000000000000000000014d32b62cee88718b756135b686d86000000000000000000000000000000448aedf93c2e0c117564e7518486928367000000000000000000000000000000000007f3029dfc03a3ad53daea491839140000000000000000000000000000000cc0ec2dab0d1a2e2933219e34cf5d215200000000000000000000000000000000002c6d8fdd9d1328e4feea86d5aae6a6000000000000000000000000000000f1d9603adad50b54e8168c20d21c57e8f5000000000000000000000000000000000009a1666e5d2c94df44420fddfc1d9300000000000000000000000000000016304112dc77e7370494489ae6fad7494a00000000000000000000000000000000001e0cd43ecbe68cbfa151375f674027000000000000000000000000000000ff117245eccde53514c7a4bd521a50e4a500000000000000000000000000000000002c7de78973c85d98f4371e01baedce00000000000000000000000000000025441f9158e4740c49200f84c0c3a7117900000000000000000000000000000000001d9664efe5c5403f750b713d8f3e1e000000000000000000000000000000e5e8bc089af9f7b200d566947a115be30000000000000000000000000000000000002b812d3f40180596f47ae9a044b907000000000000000000000000000000f8e8d56705de9e07d985df07b92030101700000000000000000000000000000000002aeae3bb018acfa6c5f61a8c2303110000000000000000000000000000000084c88331aba8860ead64dd9600e984dc00000000000000000000000000000000001efab6e9214d5bc576af794baab94200000000000000000000000000000059e5e4f8fff452f1f939979d57da5fec8a000000000000000000000000000000000013b4dc2f2d9fd511c64b885c124ecc0000000000000000000000000000000be3036bdbcbc6f4ffbefd36862db6ee7f000000000000000000000000000000000011ac4ff7b6f86fec9f35f4cefbe14e00000000000000000000000000000047ff5abfc2f607bde31992ac49944e69af00000000000000000000000000000000002e26e5253123ed2efdb5e72344675c0000000000000000000000000000008af36cd13e8c5cedc34652756bcb97e2d20000000000000000000000000000000000022fbc23b46c99982d0fdd7bf0a463000000000000000000000000000000a88b35c7c5b8496121795580b2cf303a3900000000000000000000000000000000000e62098150848c9c50d1d108879d2d00000000000000000000000000000084a1de51a145e76f80fadfb0a2d710938e0000000000000000000000000000000000023e87673f67a08bd9b18e3e4ad6f100000000000000000000000000000064b0978992c818a7ae3c7554826eddd11b0000000000000000000000000000000000156a1d4e8a8c46151b416edc357a1a0000000000000000000000000000005e142a638512103b5cf5ecfba828a2e05f000000000000000000000000000000000012579dfd8b8bf5d0a000e1e622d9c40000000000000000000000000000007f0e2ddf4530acb880d1b58d950672cb620000000000000000000000000000000000272b0b2cb24861e21c4346c0e271be000000000000000000000000000000ead0e5aab30bb29da5006fc9f4f3507ffb00000000000000000000000000000000000f7777c25e5526a096cfbf20bf4c9200000000000000000000000000000035f7a1078c6be0790a1318e656f8507fc500000000000000000000000000000000002d9ef31aa24a79433950724d43a5eb000000000000000000000000000000180c8e6b90c05a03fb36b7a1af1176bf1600000000000000000000000000000000001d87bc20a98bb0733b468b966b4ddd000000000000000000000000000000ca6942231c037cfefa8299117e724845ef00000000000000000000000000000000000336b6e3c2bf8df9028f7eff9ff30e000000000000000000000000000000780c64a3698dec2a3ce40608afcacb8b5a00000000000000000000000000000000000ea784714d3b7ca565dade4653c91d000000000000000000000000000000efefc3d4ef3867739236468150d7b5fe150000000000000000000000000000000000190d6182bea8d1c0874b3117bf02cd0000000000000000000000000000009a14adf2fae32810ba5b81a98ef2849ffb00000000000000000000000000000000000a95da0274e9a34a9d9c042876765d0000000000000000000000000000000f12d78757fa6157f21a6d1ae6bf206f11000000000000000000000000000000000005d03a527d303c76bce884e7ce64410000000000000000000000000000006e9ed3efac28e499e8451c34b34ee48b4f00000000000000000000000000000000002439021c7451ae7acb37ae246f766d00000000000000000000000000000015974d942818b3d1d97f8ad792623f0eec00000000000000000000000000000000002e67cbf940ca7e3c3b149f226f9f110000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002ea6205cddd4777da8b2d1612569eaa982d0a7e7ef3bcca312cbfc1ccecfdaa3053d7c10026ba41fb05faa66267a6732ca5bf2bb4f518f8e52822faa3492774210c6653865535e5f20143de24bced638b3036efe46103ffb73046c4ec3b12f37221ff68a9c79f63b9c685bed1270f345bfe8383e1d5d1680d31dd9652e59f3211f9b4c114812ef5035ed5ac9582949a9cb86780830ae0b0a30dd50bf003b32410b67986e7ed2931a19e77805c54c21d9a406cd812997112cce29ac62b274d6011c4b6c9e85c4cb19168c59cd34525c95a64fab895498ff69b69fa1bbf620c1e42953d78f8e8327560d00e9394ab8656f3e9b2cf770e576a8ae4ff89c317005fd205d8ed9756b6439882bbe822cb75ff19c1da57ca9327ded38311886da40cc94204baf682ed630e2c6c2eb98ce9f8574e8cadc803ff13d6f1f2313023ca5cd962827487dbd9b2aa016d63e863208106469e968be488246fec017578c5970526206ef8ed8618002b88c5934131316249e8fe16e365ffd164f04df2b15fcd1be69285fdf72faf66601c51558ef89fc9f867a1639dd4b481d74058225b5d34780c714bf0265c7696a22a794e56b9f24a1ff9c25fcbb0f29ae98802212c333cfa4620c81d6b68b9c5d7e9fb658c3ed9c4743ba9dc2945bb26d393713ed870fe5a4180923343536fbba55e9b6e111e57b9694ab3fc987987a2d4dfcccd30a7b24650500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000067d2fa2d8f0fd6a6e0fae652aee76ca54b00000000000000000000000000000000002cbe4fb5b147145ddf14ec9c5e02a200000000000000000000000000000042b86775f92a77263b45801644a4d425b30000000000000000000000000000000000189693d9dbc7d87edc97386ec7a259000000000000000000000000000000f1f79ec21b2d4fc04b2ce39ccb0515da9300000000000000000000000000000000001967c6a54631183e1baacf37bbcd82000000000000000000000000000000a4ca2e1a19bba9e981be9019f9c0e24ede0000000000000000000000000000000000248753f92cb50ceca5ca8a9532a6b7" + }, + { + "bytes": "289538cac0e6b6b0e600b7d321883060ab0046854d95a0d1a501c11bc5d2499a000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000e9000000000000000000000000000000000000000000000000000000000000008b0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000c2000000000000000000000000000000000000000000000000000000000000005b00000000000000000000000000000000000000000000000000000000000000a6000000000000000000000000000000000000000000000000000000000000003e0000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000004f00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005900000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000005a00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000770000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000000000000000000000000000003b00000000000000000000000000000000000000000000000000000000000000c40000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000fb000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000c4000000000000000000000000000000000000000000000000000000000000005800000000000000000000000000000000000000000000000000000000000000670000000000000000000000000000000000000000000000000000000000000075000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000bc000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000017000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a80000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000007d00000000000000000000000000000000000000000000000000000000000000d5000000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000aa0000000000000000000000000000000000000000000000000000000000000037000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000065" + }, + { + "u64": "17280000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [], + [], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 3473180, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": { + "vec": [ + { + "symbol": "Issuer" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "credential_types" + }, + "val": { + "vec": [ + { + "symbol": "kyc" + } + ] + } + }, + { + "key": { + "symbol": "pubkey" + }, + "val": { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 2073600 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerList" + } + ] + }, + "val": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "vec": [ + { + "symbol": "Vk" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + } + }, + "ext": "v0" + }, + "live_until": 3110400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "vec": [ + { + "symbol": "Proof" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "expiry" + }, + "val": { + "u64": "17280000" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "threshold" + }, + "val": "void" + }, + { + "key": { + "symbol": "verified_at" + }, + "val": { + "u64": "0" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 6946460 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerRegistry" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Verifier" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 3477275 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/contracts/proof_registry/test_snapshots/test/bump_claim_is_noop_when_ttl_already_high.1.json b/contracts/proof_registry/test_snapshots/test/bump_claim_is_noop_when_ttl_already_high.1.json new file mode 100644 index 00000000..9f445f13 --- /dev/null +++ b/contracts/proof_registry/test_snapshots/test/bump_claim_is_noop_when_ttl_already_high.1.json @@ -0,0 +1,487 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "function_name": "register_issuer", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + }, + { + "vec": [ + { + "symbol": "kyc" + } + ] + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "function_name": "set_vk", + "args": [ + { + "symbol": "kyc" + }, + { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "submit_proof", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "symbol": "kyc" + }, + { + "bytes": "0000000000000000000000000000000000000000000000042ab5d6d1986846cf00000000000000000000000000000000000000000000000b75c020998797da780000000000000000000000000000000000000000000000005a107acb64952eca000000000000000000000000000000000000000000000000000031e97a575e9d00000000000000000000000000000000000000000000000b5666547acf8bd5a400000000000000000000000000000000000000000000000c410db10a01750aeb00000000000000000000000000000000000000000000000d722669117f9758a4000000000000000000000000000000000000000000000000000178cbf4206471000000000000000000000000000000000000000000000000e91b8a11e7842c38000000000000000000000000000000000000000000000007fd51009034b3357f000000000000000000000000000000000000000000000009889939f81e9c74020000000000000000000000000000000000000000000000000000f94656a2ca48000000000000000000000000000000000000000000000006fb128b46c1ddb67f0000000000000000000000000000000000000000000000093fe27776f50224bd000000000000000000000000000000000000000000000004a0c80c0da527a0810000000000000000000000000000000000000000000000000001b52c2020d746000000000000000000000000000000c668d4d6ac42790ed217e8bf008e70917700000000000000000000000000000000000867ff44121bdb2c8e957bf07a6f4e0000000000000000000000000000003bd32ac024985233df1feb7caf4e31a07b0000000000000000000000000000000000224974cd8a468bfce1a301d4338a9b00000000000000000000000000000075c162ea8274d64c735bb04aef8dbc8e0100000000000000000000000000000000002fc1f2ab715b4caf9474e08cdc207400000000000000000000000000000016ffb4cba0d2c022b8ac46f0e5225dce98000000000000000000000000000000000012ca347a59d9dea7d7fa0260b9181e00000000000000000000000000000025bb805f2a91ef2e802c2527572e7bb552000000000000000000000000000000000029bd9f22b39e8ef3b48df31cc811100000000000000000000000000000005ac7f8200290a7baad69e6a7e54fb385a900000000000000000000000000000000002d6aaafe1493f87f84892ab8763860000000000000000000000000000000cd77eecaa6bc7b38f7e3f4824d9c17192f00000000000000000000000000000000002aff4f8031db91518e3f6fb8cdc7560000000000000000000000000000009453a52cb6195aa2d66974f12791799b6b00000000000000000000000000000000002e524075a2bd0f1247ec1a196d4ebd00000000000000000000000000000022eb41ae79de0ddc2de85642c5bccf9e60000000000000000000000000000000000017fa5a9cfe617a9e1aaae3c01b0c19000000000000000000000000000000a81528671c531979d80aa169ba4ace202000000000000000000000000000000000002d5773db7711ee91a11bf99ca8b061000000000000000000000000000000fec39c1268598f3ad2421a49db7057936200000000000000000000000000000000002baacce67605b7df8eb53626c6e4d6000000000000000000000000000000b807ebcaf35c4bde0f2d1944ed7b4d3d9800000000000000000000000000000000001d54c17cd71d41dfaf7d4b9895613c000000000000000000000000000000f638fa13b162f29f87a972e060b16fdeea00000000000000000000000000000000000e8a45e73b184c62ec7688e4caf4b0000000000000000000000000000000efa9475f3d30256656a8313ebcf7115dc60000000000000000000000000000000000138e2b8e91fdcb10b9bef13e4cb619000000000000000000000000000000391727546150acd67f0d8feee7e265d87600000000000000000000000000000000002c99bd77dd8c0a1dd716cb42da2842000000000000000000000000000000c12a81ea5f4370007f7deab5d3a65bc2f70000000000000000000000000000000000181f7f9a361c20e1baff19924677691a251e01ac227137ffa82e49d6c9fd563e5a3187879449d8ccf5c85a613b6b35163f3071350f2ef1b8a8176caab75b06e9d9b6c0f22526b876ec2d398ec494cc0432ef0692755e657d225a64f4ec01db35482440852ddbae2861cb5ac3117c5511f0c48d9d9e66a5a75b4601255b1fb2285d3537299a7449cc7a4f446d36d91f1c20efdf80a1f180ac6562edcbc0eeee260128c237b289b9cdc22a118d4003010ac0a2b42e40c8290ec54b3578393d59a1e0c190886c48d0b4466d49ff4942470a3743ee3364f9705b42be011782a5aa8cdd7411c81d02314a611f27b67aab121d976295472d793eb3d9c3f2dc042ba84d1279e3e5dfb4ef0871bdf702681c030edd9d623cc7dbbf28829d1e9841418d6b95f00367a472657939205fbb9884bb127168f4fc60af7509e4386ea76d7c5ffcaa1fd7f40e43ba91e587db229225f125e3574ebb2db3f45265a09f31cc380747e23924777ddd10bafc5b2359d6e8891529dedcc60f4d5be7e2d2d9023d968a119c74c2ae189bb22055a77db2fa811c2c92ff06bd6cbbcda7a62d3139d53b1693c0c3b2c2d711142b4cbd8995f2a9de11d36f4b272adee4b9517c181a13e2bb405b00823d4b0a95420691ea8afd7bb924b86afd41c5e392dda8f7195f3ae8ce5f6b47df6e288a37f5cd34b0febb29f119c82df9fdfd87abd4222500bcef0685e0e9323e25a33adeb760f5ebdb04227f00607a108240f0ce211e93593895df259d7b956465d2654e2ffaa4ec412840980b4a3942c91703b60cf97a7f6a1289820aa8d72778a5ba3702ecaf84c7c20ac023c3bb5b66680dd56519a73c2341a9fcc8a6ff1ded82531f630b05538a6fae010d64fdc8d77b9cf3f33fcbb98dbcfc427ac27a18ad715985f2bdfec4e9c5ab1906e52d4f7c7a88dfcd599bf6a908afb31a29d1d045898689c8e8a6925a5821db238c93cc7fc74642eb8805fa9f23ee4a8394ed487d043dd35cba21b385465f391452c2917cf5c145ddfd925cc6b23f21dced22b3e196b3cca1667e38706254210a766773ccbb9eb60fe4b3f2a3f37dbb3e0e7e62987fcabdcdd34837ac2b47d710e77b556d514313831972a9f33ca4031f52da0e4535eac69d705bbe107f648b2c1653ac16f6048dc45e3c8add66f518a4b76b25ab23c842920c2d7b56f8b7922670098dff7440a788c12c6f6f6a5a1510ac74837e0d6b07081f2c22cf514652119a5c3ccf36213a88af1743ef5512912c7d3edc138b61db10b5f1e06592ec7b2c1a19a022b1e4741567a03a61c2acf8daacc89070ec00b97747a953fc0f964e14cd6cf2661d5ffa22d168cdb69d4d041ec52e68a4948b879d4f1b634e602df30a077a3fd0927983018dca75f4a753864035452a845b48b1f48066612794b9f12c98d207b443ac6abe62e9294eeee24887c1c8d24af4b1976e0850998d84fdfa26df16707b90ce81b88a181a7ba88d8cf481ec01b00ab6d90b706941304a486405a2ede7c50d20e609f5372397831d160f68e0b22c481ca2d92398b9247f5fc81efb620ae48d328ce0ada1b2a226dd739c994eab0e1a441d24e2daab56b5b1df116c07061e8599ed7172b12b686c1cd3836561485e3e64545d9114934fb7e6f90ff7b0d245e9e405a5a2b54e6f58b62a48017fef3d653c978bda7d35308ce2712a9773344d9a53823e9aedf866d345db50f7e4a1bf5744317c2f5635622a056b036a1f7881390ae3f1a459bd61b89ea02520c86333fb8661412b28699fddce2b29d1af4ccc032ce978d17b1b4e219a122c19a9bc7fac4e1bc7f58e183a1f55481ca3ce8f4c8957cf0a2c8deb6d3828dc9db4836c352126879c499f55b585cd7e2444955ac7886c5dc4892b2e42d177cb6d18ea0d2f3e63afdc238e3fab0083da12979ba75596539d9f68caaea43aa10621430f263cb28ddd078b8da4aa20f97b06a907f7c80b0eed57d684314d9f542dafb9140ea558f932c3e0df5ec532a1ee2f5add1cd1e06edb76574259c31ca89e1cfe871d828733ecc8f49caf7d0c501316f90390556174431f3ff9d8ce756d0018f3a1138df1847e72836eea362d20731cf7200baff850fb42fa1e2131d71c565f94f87ef63f70c7fc7404ba0db8774f15430a505785086392c5604befef5fd7d0c7ce2eaa8750d0293c35fc0caa76e72f30738a716296319f4c4d5e5f06387fa89dad1f84ffce3f5db5b898f3433f6d19f7312b747255e22e45b536854321ec5f5a5ec7c96d163ea65f0ae20af789ca2c9c9f126483b371102fd6e4e8ec3dedc31bd1f96f217b36248c614bffc8f3022ee1836381e8ac389e497defb603380e346bc9d9eb46c607f61be93ecc9802902074d8b921def6d50def4f31cf546f1849bfe48ab0e2240eda00009ce092b4530304f1ba93569cdc939a268864e58757ffc7dc94ea947c81343cf020edc820a42c5023544f9bcb7b8e8bd439606621abb3082e39eb9d7a8c9b67cedc580b14ff2dfba58fa7fee1ff9843f1ea68af8a54be1178e23df2886384a553206ea8cce7273613f7534fece7edf43500e7103ddb660e01737d4354eb0c607159f1a84d75067c31594f6b3861bdcb5b4fe23a1daf66e2a75ee704d0485d688e414498658603b40afd73979d9aee48f7a9e75a9e060806742c022000a448ea3124cf7b518400e9d050eca8744082e23511db385f2b0f7ab4103bca409fe76cd917d27986ad2bd70338549a774f9fe47d0f1580d68e16ae027fecded4589f636f454fc9938026d59cbd34af46ec688c16bb42047d522e4bfef0bcaea67fea0a4b2f45abceb4077cf654c76cf415848eeb0e5fc0dcb8da5b0cfe65c8234afc79962c47115bee292604868b26adac64ad5af67997d0aa41bfd154498157c94369109865428a510f9bc124bc164303c822ff84b81c21dbfcc1987ee5effc24d99dc14be67866b0180e97312624479bb3526e63eda76d4b2df49c58018769c13f7f305ebc6c6b2903b6422d7fdefc96caf50b02ea272850846e44225a26b651e5ab09ca7dbd0d6221eebf0e7deb6816f83d1d5398ec6b03dcb6a113be156855d96083541658485f2ac9deb94fd588233084f20e5d10e787a53ef8d5fce9c4c0a4c07b6dfd6ca8ce1e33b2ed6129406b19ca2e26657fdf555ddebcecc3a43ad8d1804bb8c1eef28b09745fd2b97f06b3d45af2e3e8f2966a19c3b4de7de996f2c69ce7a923a610e925cb3fd18cc78efea1fe3f6c29f8cab901f78c33febfbcbfd2d4a0295e6f7803004a17bce8af6da36fe52ddf723a96d5b24ab9f8d1dfa7aeafce5811e6b7e82007144311c41d42207554ba94e2e4cae4bc8d944f317929ace53ed9cd040b092821724594f55ab3c74397d2d775ab85f08b879d0da9330a1132a1910bca9de3e71826a0b96b0a9470dbc0c3fefe3c797f33ada63ab17d21316676de0ec7617dbb24576776f4abc1286acf7ef57ce136c7dae83050dbf801c405680ba16ce919312833bf1046e517e3ecb47bd93ade7558eba45faee153e2d3fbcce7ba73493d4f0908bfcd6e145901d382c8076d597521c29684749ab5cbf86722af11c9ac45700fb0a7776a559a38f8b79b98e721a44cf34ec397cf25e37f4d69d24a0381b4ab0264f3b2574d5256a562f2e7d4473f98eaf405cc7748b78db8263aec85e0adce0325a7dc66e47df8f7f96f7bc726ed5ef1ed6ed835070ff5c4fa4e7e6baf60c025434b092aa40904fe8d8e457c630cca3754ab8d728a09031936c3edf6972ddf1b3cc1ed955ab2d37db4ac96699b83e88a2bf1e4f874f17fa0d1167f1c84e1300be1951ac183e4c81993c4341f415170ce8229ce54d51e7f53b41873637d213424b2d71e573942625a6e0f8b938c3120b1faa0f29902522e3d361a6c41a912952da85f74e4e9a7e48b8955ab3809827ab2c018094341689e50e84027e1b13b610508084409dae1d12c82c738d2b5c5b48dc4a035c1d69c1315c2bfcfb925859b05760c252778372a8befa84a1b8a2a068ba7f29619962e7840a790c38370517d227e3dfa0c3dba92c62c8e276a71f40976a3fb9cce730bc5d0ab548485c758270a6c696530c8b60e16f520f4d6164222a20b3cebc57c9942421525b88cedefa40be42370d2b9b6c47ccd91c10ea1c46d2b26f9c6e44492f129c1c5326fb27ccc1de11e12035ce0acd560aeaf1203c87f650ab05005558b379ce178f333deaa1c3018d8193a5dbf672b2f50169f1eb6a1097e6d506f84b2efb472f5860c0d598921d4e761aa9b9967fb62e2cef3bd4b5bd2a703fc279a0936ecf5aa064b8620490e2c8f6d9643bf5e01e326923798a6d7a2a40f0567e8f5b4e9ca489627e402c200366756e777fe7f694ea2799942fb51bbd79b2126535ab16343ee64ec0b60cf0f236dd45d70510e83f9f8967af83fe7c4c822adaf600e7d0b9f5229c42430a2069fa10fc4fc083b586c1e90837d8fc5cdf2a3d7364402e6dd2ba6dec497701c0e0d3d7fd4fd27dfa4b691071073f1ee48617a5f3e6b98aace78b7883fa65f0924b8fc2e95e6a46760aadeb80e8beb0921fa6d7db7b3a40f219ff540a076214b1e1e21e203ce766ac5c3c70871e926c42f5276e2346298a59605d3da04c588372cb6a141640ec881defba390f4f56a64aa08c7b7c49ce693b72cda6a28dcc6c80d009d5f21ad56d1e003200487d9e984767e18dc3d46db91806630c6659d42660e1f6462d0a9fd2c7e456dfd281cbcee7eae84e42e74e1908d8764a0fd848b7912995904b97b4d9d435a128d68495d92f41d88b835c9321e99fb7337daedbcf10ba51a3df184f4dd900c7ec01431a3cc8aaa24109a99a5bbdca39d90fb5b8a1927264e6d3ddf61db6b8fe85d3a67679214219459b84cbc240f3ea393e0dff6a30b7a2b9b396b887849f258eacb812af59af2096a7d294d2823a29610c4d065d621aea41bb5123e4d747df45644cf617faf6832908d14f48248fd48e231dd7ff21ff46341060e0f1b06b5b373929b1f5b05111a326b522ac6f40e87085f17bab10d51d9f8057dd8b9f961db0cddb22e337b42357a0a78ac47ce551484bee2f8842fe332a0ae767b72fe4a96d296f3275425734625da717302512a86aed471df6d27d6618b65235d2dfee2e13906b6e2889272bb2fb1fe004bfeda8ad7bc585457056f533089bb30e8dacb959feb8545ac9b0f2af7fd85d54c1ef31641319da4a615eaacd6bbce09e3330bfbe6998594a5d428d11933acc446f2ed4d85ee82323b0315d511e2ba34303a632a0d454a89291bf18e8fb83b038e6af073fc080daf5a08faa205816d943a4b043ca5d64c8d3761543bf17226a25b4e92dcaeaa9d883320f263427023909059405a2eb5f7124535095480ebaf7939d6a2ac7dd75e481e2fe64b64ca5644a73be47ee45433f31da5e8bd33eeca235b52a20b328f8ee2d5005133bb7fe254f6a8c02a0302c392e66054acc900ede95817e538512b9837700c1da2b3d2ea617946f2e9b61b00ef73e0827a3893e3ddf460590f106ac0e4e219d099c27c1770e42eeae1c2dcb9db56774264d435739d957807fde6c77c60962c37ac9ab095449ebc0e4ae51ffd8003d7b81d18c6ed880bf0c51b8d26f2ffca1252530ca0ff9bf0c7d12d4ee10448b3e7ec97709bf64d0ea5fb1124d7de425611585f80829ea47dc5095dfd38d01ffc8aef4ccaad02fc463684a19d7f416c7e044e3104dc47241f73a8f43ab922cf2df406f2adb3bbc23a2073560e7660cfad173a40fcc3ffeb36052ea3917c7e27d43e474aa8a37a3dfea87026eb5881d7550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002687d678007548664308a56028ea8040809f099b56f4d494f9b825eb107ac4aa17be69023dca6ce6fa11f2efceb1cb0136391d87864f6891ecc4c2e1083ad5ff21a2422b1f67bcf81b75eb7b9b39bf6da97953330a50ffa88724ae6ff2d1e5da1b5b410c852cb9eb3625c9ae93a39594def83a159b7b286af9d849c4d1c6834a26ab7e7c666e2d2ad653c71f9d8da32fed2460470dbbcf812303f3b4e9614b0b2df84c7fa62bb94e31c8d1f4a7c005f89a4a5ae87c58eb6f79dcdf75f11d10940992870caef41275bc532c272dd7b019fa195281e9068c7cbeff1f7b3994928c001cafcfabd33712ece2285d73cd92057e88bc0d27cad24a43e08150a7a554e40f8c9caeb5dc7ada91603569873a0e3891b5bf90edf5c9ae5006aa632e48d71025049e757a22d70fbbe2f7ed3497c3fd356f3074b04cf91f22d7839eb32323490a101494eba0872e9beb3fa5eb84510e736da3fc20c83756c0c42a4f4a28e1de1e200a31aca3d2d9d59f0423daeab2bd1b7ffa61d47e863f59ac2ec4720e5889149892f23423ebd8774f74913e760789eb2ae91d576fe56f140d96b6386af73c0858fbaad55c63417b72320ac56f3fffa9d10735f72ee0d5a6aaface8db9f608199661ca9a06aa67558118f45b12a7f766b0fea15f6900855bc29d93adfc2e582e6abdfb2ae7078d52de4128ba9b4add73ae83746930de87e65fa6b69a56720b0a2b31ac8c194025b49043078bb98f22f2563a6436c75119573b63d5369b3f2a1e16e9a99453521568e326a5590f8e5fb064e33dfd6688975f405ef7b203941e2cae65dbc09772a0d882f6b8a1cf1c48dbdda31d8ef33823ebf83c28dbe61e941ad38250e1a1e0ff32b1195809c59d1df79debe97ad19504d5c1128d0d0368471ac748974e33057e30e57771870db768ba53db52c0247eb4808887420e5d251e1e75f3c14d1957dfca4b9d7c8a0574166a264e0d8fb745d39d4632b91714bbf41589714a5052f6dc7f1a852ee11d5b4b4cdc13569e9b72d6f02492793480c8ad100fb373c93812b644ec1b4593fda1f518d94a06f27213a63955a044d130abf71221a2ab927f227f4b60251098a7422d5e6c2419f312de0391d66d0ff28a662803bc1106dd0fb29d88dd70ba192f66f38b578e6c072497c0a36e017215dbe1cd0c4a16d200a1521061b3498799b0a326d07f0c227d879c1fc4378d4db91aa63a2bd2a8214d5f475306f0eedd9754ff8e531e21a2b66dfd173adfe2b36062ca2317059a4c010bfbbe8bec945c7f442ee1bb63a91c7ca9af6151dcbfdb55d93e5c29570fb5b55d74fa78280f3420708ed9bc04734dd05404bade19e02ea8641abe1bfc1658859d940e41f22504c998c182578b57ae0659ab5ec3bcd8568953c48309d4d5b236c9a8372ce5d2e3c77bd764d14e364a270b569835f4c43854886f1c02a11a00768fb688bfb5e20e9d16446db4808e53fbdbb496cc91f4a69341330e290845386ae097cff4c55f06259f359c74c02b84c21a6b91d3cf828a16b374131567743ce58013ac35106640a16294712fa8e964d3bfcfeced0f8c65cd3b8e100af00d16a89069d42cee1155327102d711417716281a5927ce6c067908dcd73d1060f952b088839c0a4b79c27c5aac4b3dccec05a24d3f095bd57e2265aecf1f0e0539d13efc4364e914463a68c48e0a7155cda8f48653bec651a334f14e826f2c8e3f8b901423bdaf7c60ac79a99f975bf0104f2da2ee7fae06d393f7d42df0297e9c6bd70382da06e3c3ad81d6da82603dcd60974138e2a6ca552d1e0d71dd0000000000000000000000000000003d570ce256c23b2ad24b2d1a6215c62b63000000000000000000000000000000000000e1828c6c687a505897c01b7acab30000000000000000000000000000004052eaf295668d87719c907b1831328aa1000000000000000000000000000000000014d32b62cee88718b756135b686d86000000000000000000000000000000448aedf93c2e0c117564e7518486928367000000000000000000000000000000000007f3029dfc03a3ad53daea491839140000000000000000000000000000000cc0ec2dab0d1a2e2933219e34cf5d215200000000000000000000000000000000002c6d8fdd9d1328e4feea86d5aae6a6000000000000000000000000000000f1d9603adad50b54e8168c20d21c57e8f5000000000000000000000000000000000009a1666e5d2c94df44420fddfc1d9300000000000000000000000000000016304112dc77e7370494489ae6fad7494a00000000000000000000000000000000001e0cd43ecbe68cbfa151375f674027000000000000000000000000000000ff117245eccde53514c7a4bd521a50e4a500000000000000000000000000000000002c7de78973c85d98f4371e01baedce00000000000000000000000000000025441f9158e4740c49200f84c0c3a7117900000000000000000000000000000000001d9664efe5c5403f750b713d8f3e1e000000000000000000000000000000e5e8bc089af9f7b200d566947a115be30000000000000000000000000000000000002b812d3f40180596f47ae9a044b907000000000000000000000000000000f8e8d56705de9e07d985df07b92030101700000000000000000000000000000000002aeae3bb018acfa6c5f61a8c2303110000000000000000000000000000000084c88331aba8860ead64dd9600e984dc00000000000000000000000000000000001efab6e9214d5bc576af794baab94200000000000000000000000000000059e5e4f8fff452f1f939979d57da5fec8a000000000000000000000000000000000013b4dc2f2d9fd511c64b885c124ecc0000000000000000000000000000000be3036bdbcbc6f4ffbefd36862db6ee7f000000000000000000000000000000000011ac4ff7b6f86fec9f35f4cefbe14e00000000000000000000000000000047ff5abfc2f607bde31992ac49944e69af00000000000000000000000000000000002e26e5253123ed2efdb5e72344675c0000000000000000000000000000008af36cd13e8c5cedc34652756bcb97e2d20000000000000000000000000000000000022fbc23b46c99982d0fdd7bf0a463000000000000000000000000000000a88b35c7c5b8496121795580b2cf303a3900000000000000000000000000000000000e62098150848c9c50d1d108879d2d00000000000000000000000000000084a1de51a145e76f80fadfb0a2d710938e0000000000000000000000000000000000023e87673f67a08bd9b18e3e4ad6f100000000000000000000000000000064b0978992c818a7ae3c7554826eddd11b0000000000000000000000000000000000156a1d4e8a8c46151b416edc357a1a0000000000000000000000000000005e142a638512103b5cf5ecfba828a2e05f000000000000000000000000000000000012579dfd8b8bf5d0a000e1e622d9c40000000000000000000000000000007f0e2ddf4530acb880d1b58d950672cb620000000000000000000000000000000000272b0b2cb24861e21c4346c0e271be000000000000000000000000000000ead0e5aab30bb29da5006fc9f4f3507ffb00000000000000000000000000000000000f7777c25e5526a096cfbf20bf4c9200000000000000000000000000000035f7a1078c6be0790a1318e656f8507fc500000000000000000000000000000000002d9ef31aa24a79433950724d43a5eb000000000000000000000000000000180c8e6b90c05a03fb36b7a1af1176bf1600000000000000000000000000000000001d87bc20a98bb0733b468b966b4ddd000000000000000000000000000000ca6942231c037cfefa8299117e724845ef00000000000000000000000000000000000336b6e3c2bf8df9028f7eff9ff30e000000000000000000000000000000780c64a3698dec2a3ce40608afcacb8b5a00000000000000000000000000000000000ea784714d3b7ca565dade4653c91d000000000000000000000000000000efefc3d4ef3867739236468150d7b5fe150000000000000000000000000000000000190d6182bea8d1c0874b3117bf02cd0000000000000000000000000000009a14adf2fae32810ba5b81a98ef2849ffb00000000000000000000000000000000000a95da0274e9a34a9d9c042876765d0000000000000000000000000000000f12d78757fa6157f21a6d1ae6bf206f11000000000000000000000000000000000005d03a527d303c76bce884e7ce64410000000000000000000000000000006e9ed3efac28e499e8451c34b34ee48b4f00000000000000000000000000000000002439021c7451ae7acb37ae246f766d00000000000000000000000000000015974d942818b3d1d97f8ad792623f0eec00000000000000000000000000000000002e67cbf940ca7e3c3b149f226f9f110000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002ea6205cddd4777da8b2d1612569eaa982d0a7e7ef3bcca312cbfc1ccecfdaa3053d7c10026ba41fb05faa66267a6732ca5bf2bb4f518f8e52822faa3492774210c6653865535e5f20143de24bced638b3036efe46103ffb73046c4ec3b12f37221ff68a9c79f63b9c685bed1270f345bfe8383e1d5d1680d31dd9652e59f3211f9b4c114812ef5035ed5ac9582949a9cb86780830ae0b0a30dd50bf003b32410b67986e7ed2931a19e77805c54c21d9a406cd812997112cce29ac62b274d6011c4b6c9e85c4cb19168c59cd34525c95a64fab895498ff69b69fa1bbf620c1e42953d78f8e8327560d00e9394ab8656f3e9b2cf770e576a8ae4ff89c317005fd205d8ed9756b6439882bbe822cb75ff19c1da57ca9327ded38311886da40cc94204baf682ed630e2c6c2eb98ce9f8574e8cadc803ff13d6f1f2313023ca5cd962827487dbd9b2aa016d63e863208106469e968be488246fec017578c5970526206ef8ed8618002b88c5934131316249e8fe16e365ffd164f04df2b15fcd1be69285fdf72faf66601c51558ef89fc9f867a1639dd4b481d74058225b5d34780c714bf0265c7696a22a794e56b9f24a1ff9c25fcbb0f29ae98802212c333cfa4620c81d6b68b9c5d7e9fb658c3ed9c4743ba9dc2945bb26d393713ed870fe5a4180923343536fbba55e9b6e111e57b9694ab3fc987987a2d4dfcccd30a7b24650500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000067d2fa2d8f0fd6a6e0fae652aee76ca54b00000000000000000000000000000000002cbe4fb5b147145ddf14ec9c5e02a200000000000000000000000000000042b86775f92a77263b45801644a4d425b30000000000000000000000000000000000189693d9dbc7d87edc97386ec7a259000000000000000000000000000000f1f79ec21b2d4fc04b2ce39ccb0515da9300000000000000000000000000000000001967c6a54631183e1baacf37bbcd82000000000000000000000000000000a4ca2e1a19bba9e981be9019f9c0e24ede0000000000000000000000000000000000248753f92cb50ceca5ca8a9532a6b7" + }, + { + "bytes": "289538cac0e6b6b0e600b7d321883060ab0046854d95a0d1a501c11bc5d2499a000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000e9000000000000000000000000000000000000000000000000000000000000008b0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000c2000000000000000000000000000000000000000000000000000000000000005b00000000000000000000000000000000000000000000000000000000000000a6000000000000000000000000000000000000000000000000000000000000003e0000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000004f00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005900000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000005a00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000770000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000000000000000000000000000003b00000000000000000000000000000000000000000000000000000000000000c40000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000fb000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000c4000000000000000000000000000000000000000000000000000000000000005800000000000000000000000000000000000000000000000000000000000000670000000000000000000000000000000000000000000000000000000000000075000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000bc000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000017000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a80000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000007d00000000000000000000000000000000000000000000000000000000000000d5000000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000aa0000000000000000000000000000000000000000000000000000000000000037000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000065" + }, + { + "u64": "17280000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": { + "vec": [ + { + "symbol": "Issuer" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "credential_types" + }, + "val": { + "vec": [ + { + "symbol": "kyc" + } + ] + } + }, + { + "key": { + "symbol": "pubkey" + }, + "val": { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 2073600 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerList" + } + ] + }, + "val": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "vec": [ + { + "symbol": "Vk" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + } + }, + "ext": "v0" + }, + "live_until": 3110400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "vec": [ + { + "symbol": "Proof" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "expiry" + }, + "val": { + "u64": "17280000" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "threshold" + }, + "val": "void" + }, + { + "key": { + "symbol": "verified_at" + }, + "val": { + "u64": "0" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 3473280 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerRegistry" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Verifier" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_expired_claim.1.json b/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_expired_claim.1.json new file mode 100644 index 00000000..b8b0a814 --- /dev/null +++ b/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_expired_claim.1.json @@ -0,0 +1,485 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "function_name": "register_issuer", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + }, + { + "vec": [ + { + "symbol": "kyc" + } + ] + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "function_name": "set_vk", + "args": [ + { + "symbol": "kyc" + }, + { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "submit_proof", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "symbol": "kyc" + }, + { + "bytes": "0000000000000000000000000000000000000000000000042ab5d6d1986846cf00000000000000000000000000000000000000000000000b75c020998797da780000000000000000000000000000000000000000000000005a107acb64952eca000000000000000000000000000000000000000000000000000031e97a575e9d00000000000000000000000000000000000000000000000b5666547acf8bd5a400000000000000000000000000000000000000000000000c410db10a01750aeb00000000000000000000000000000000000000000000000d722669117f9758a4000000000000000000000000000000000000000000000000000178cbf4206471000000000000000000000000000000000000000000000000e91b8a11e7842c38000000000000000000000000000000000000000000000007fd51009034b3357f000000000000000000000000000000000000000000000009889939f81e9c74020000000000000000000000000000000000000000000000000000f94656a2ca48000000000000000000000000000000000000000000000006fb128b46c1ddb67f0000000000000000000000000000000000000000000000093fe27776f50224bd000000000000000000000000000000000000000000000004a0c80c0da527a0810000000000000000000000000000000000000000000000000001b52c2020d746000000000000000000000000000000c668d4d6ac42790ed217e8bf008e70917700000000000000000000000000000000000867ff44121bdb2c8e957bf07a6f4e0000000000000000000000000000003bd32ac024985233df1feb7caf4e31a07b0000000000000000000000000000000000224974cd8a468bfce1a301d4338a9b00000000000000000000000000000075c162ea8274d64c735bb04aef8dbc8e0100000000000000000000000000000000002fc1f2ab715b4caf9474e08cdc207400000000000000000000000000000016ffb4cba0d2c022b8ac46f0e5225dce98000000000000000000000000000000000012ca347a59d9dea7d7fa0260b9181e00000000000000000000000000000025bb805f2a91ef2e802c2527572e7bb552000000000000000000000000000000000029bd9f22b39e8ef3b48df31cc811100000000000000000000000000000005ac7f8200290a7baad69e6a7e54fb385a900000000000000000000000000000000002d6aaafe1493f87f84892ab8763860000000000000000000000000000000cd77eecaa6bc7b38f7e3f4824d9c17192f00000000000000000000000000000000002aff4f8031db91518e3f6fb8cdc7560000000000000000000000000000009453a52cb6195aa2d66974f12791799b6b00000000000000000000000000000000002e524075a2bd0f1247ec1a196d4ebd00000000000000000000000000000022eb41ae79de0ddc2de85642c5bccf9e60000000000000000000000000000000000017fa5a9cfe617a9e1aaae3c01b0c19000000000000000000000000000000a81528671c531979d80aa169ba4ace202000000000000000000000000000000000002d5773db7711ee91a11bf99ca8b061000000000000000000000000000000fec39c1268598f3ad2421a49db7057936200000000000000000000000000000000002baacce67605b7df8eb53626c6e4d6000000000000000000000000000000b807ebcaf35c4bde0f2d1944ed7b4d3d9800000000000000000000000000000000001d54c17cd71d41dfaf7d4b9895613c000000000000000000000000000000f638fa13b162f29f87a972e060b16fdeea00000000000000000000000000000000000e8a45e73b184c62ec7688e4caf4b0000000000000000000000000000000efa9475f3d30256656a8313ebcf7115dc60000000000000000000000000000000000138e2b8e91fdcb10b9bef13e4cb619000000000000000000000000000000391727546150acd67f0d8feee7e265d87600000000000000000000000000000000002c99bd77dd8c0a1dd716cb42da2842000000000000000000000000000000c12a81ea5f4370007f7deab5d3a65bc2f70000000000000000000000000000000000181f7f9a361c20e1baff19924677691a251e01ac227137ffa82e49d6c9fd563e5a3187879449d8ccf5c85a613b6b35163f3071350f2ef1b8a8176caab75b06e9d9b6c0f22526b876ec2d398ec494cc0432ef0692755e657d225a64f4ec01db35482440852ddbae2861cb5ac3117c5511f0c48d9d9e66a5a75b4601255b1fb2285d3537299a7449cc7a4f446d36d91f1c20efdf80a1f180ac6562edcbc0eeee260128c237b289b9cdc22a118d4003010ac0a2b42e40c8290ec54b3578393d59a1e0c190886c48d0b4466d49ff4942470a3743ee3364f9705b42be011782a5aa8cdd7411c81d02314a611f27b67aab121d976295472d793eb3d9c3f2dc042ba84d1279e3e5dfb4ef0871bdf702681c030edd9d623cc7dbbf28829d1e9841418d6b95f00367a472657939205fbb9884bb127168f4fc60af7509e4386ea76d7c5ffcaa1fd7f40e43ba91e587db229225f125e3574ebb2db3f45265a09f31cc380747e23924777ddd10bafc5b2359d6e8891529dedcc60f4d5be7e2d2d9023d968a119c74c2ae189bb22055a77db2fa811c2c92ff06bd6cbbcda7a62d3139d53b1693c0c3b2c2d711142b4cbd8995f2a9de11d36f4b272adee4b9517c181a13e2bb405b00823d4b0a95420691ea8afd7bb924b86afd41c5e392dda8f7195f3ae8ce5f6b47df6e288a37f5cd34b0febb29f119c82df9fdfd87abd4222500bcef0685e0e9323e25a33adeb760f5ebdb04227f00607a108240f0ce211e93593895df259d7b956465d2654e2ffaa4ec412840980b4a3942c91703b60cf97a7f6a1289820aa8d72778a5ba3702ecaf84c7c20ac023c3bb5b66680dd56519a73c2341a9fcc8a6ff1ded82531f630b05538a6fae010d64fdc8d77b9cf3f33fcbb98dbcfc427ac27a18ad715985f2bdfec4e9c5ab1906e52d4f7c7a88dfcd599bf6a908afb31a29d1d045898689c8e8a6925a5821db238c93cc7fc74642eb8805fa9f23ee4a8394ed487d043dd35cba21b385465f391452c2917cf5c145ddfd925cc6b23f21dced22b3e196b3cca1667e38706254210a766773ccbb9eb60fe4b3f2a3f37dbb3e0e7e62987fcabdcdd34837ac2b47d710e77b556d514313831972a9f33ca4031f52da0e4535eac69d705bbe107f648b2c1653ac16f6048dc45e3c8add66f518a4b76b25ab23c842920c2d7b56f8b7922670098dff7440a788c12c6f6f6a5a1510ac74837e0d6b07081f2c22cf514652119a5c3ccf36213a88af1743ef5512912c7d3edc138b61db10b5f1e06592ec7b2c1a19a022b1e4741567a03a61c2acf8daacc89070ec00b97747a953fc0f964e14cd6cf2661d5ffa22d168cdb69d4d041ec52e68a4948b879d4f1b634e602df30a077a3fd0927983018dca75f4a753864035452a845b48b1f48066612794b9f12c98d207b443ac6abe62e9294eeee24887c1c8d24af4b1976e0850998d84fdfa26df16707b90ce81b88a181a7ba88d8cf481ec01b00ab6d90b706941304a486405a2ede7c50d20e609f5372397831d160f68e0b22c481ca2d92398b9247f5fc81efb620ae48d328ce0ada1b2a226dd739c994eab0e1a441d24e2daab56b5b1df116c07061e8599ed7172b12b686c1cd3836561485e3e64545d9114934fb7e6f90ff7b0d245e9e405a5a2b54e6f58b62a48017fef3d653c978bda7d35308ce2712a9773344d9a53823e9aedf866d345db50f7e4a1bf5744317c2f5635622a056b036a1f7881390ae3f1a459bd61b89ea02520c86333fb8661412b28699fddce2b29d1af4ccc032ce978d17b1b4e219a122c19a9bc7fac4e1bc7f58e183a1f55481ca3ce8f4c8957cf0a2c8deb6d3828dc9db4836c352126879c499f55b585cd7e2444955ac7886c5dc4892b2e42d177cb6d18ea0d2f3e63afdc238e3fab0083da12979ba75596539d9f68caaea43aa10621430f263cb28ddd078b8da4aa20f97b06a907f7c80b0eed57d684314d9f542dafb9140ea558f932c3e0df5ec532a1ee2f5add1cd1e06edb76574259c31ca89e1cfe871d828733ecc8f49caf7d0c501316f90390556174431f3ff9d8ce756d0018f3a1138df1847e72836eea362d20731cf7200baff850fb42fa1e2131d71c565f94f87ef63f70c7fc7404ba0db8774f15430a505785086392c5604befef5fd7d0c7ce2eaa8750d0293c35fc0caa76e72f30738a716296319f4c4d5e5f06387fa89dad1f84ffce3f5db5b898f3433f6d19f7312b747255e22e45b536854321ec5f5a5ec7c96d163ea65f0ae20af789ca2c9c9f126483b371102fd6e4e8ec3dedc31bd1f96f217b36248c614bffc8f3022ee1836381e8ac389e497defb603380e346bc9d9eb46c607f61be93ecc9802902074d8b921def6d50def4f31cf546f1849bfe48ab0e2240eda00009ce092b4530304f1ba93569cdc939a268864e58757ffc7dc94ea947c81343cf020edc820a42c5023544f9bcb7b8e8bd439606621abb3082e39eb9d7a8c9b67cedc580b14ff2dfba58fa7fee1ff9843f1ea68af8a54be1178e23df2886384a553206ea8cce7273613f7534fece7edf43500e7103ddb660e01737d4354eb0c607159f1a84d75067c31594f6b3861bdcb5b4fe23a1daf66e2a75ee704d0485d688e414498658603b40afd73979d9aee48f7a9e75a9e060806742c022000a448ea3124cf7b518400e9d050eca8744082e23511db385f2b0f7ab4103bca409fe76cd917d27986ad2bd70338549a774f9fe47d0f1580d68e16ae027fecded4589f636f454fc9938026d59cbd34af46ec688c16bb42047d522e4bfef0bcaea67fea0a4b2f45abceb4077cf654c76cf415848eeb0e5fc0dcb8da5b0cfe65c8234afc79962c47115bee292604868b26adac64ad5af67997d0aa41bfd154498157c94369109865428a510f9bc124bc164303c822ff84b81c21dbfcc1987ee5effc24d99dc14be67866b0180e97312624479bb3526e63eda76d4b2df49c58018769c13f7f305ebc6c6b2903b6422d7fdefc96caf50b02ea272850846e44225a26b651e5ab09ca7dbd0d6221eebf0e7deb6816f83d1d5398ec6b03dcb6a113be156855d96083541658485f2ac9deb94fd588233084f20e5d10e787a53ef8d5fce9c4c0a4c07b6dfd6ca8ce1e33b2ed6129406b19ca2e26657fdf555ddebcecc3a43ad8d1804bb8c1eef28b09745fd2b97f06b3d45af2e3e8f2966a19c3b4de7de996f2c69ce7a923a610e925cb3fd18cc78efea1fe3f6c29f8cab901f78c33febfbcbfd2d4a0295e6f7803004a17bce8af6da36fe52ddf723a96d5b24ab9f8d1dfa7aeafce5811e6b7e82007144311c41d42207554ba94e2e4cae4bc8d944f317929ace53ed9cd040b092821724594f55ab3c74397d2d775ab85f08b879d0da9330a1132a1910bca9de3e71826a0b96b0a9470dbc0c3fefe3c797f33ada63ab17d21316676de0ec7617dbb24576776f4abc1286acf7ef57ce136c7dae83050dbf801c405680ba16ce919312833bf1046e517e3ecb47bd93ade7558eba45faee153e2d3fbcce7ba73493d4f0908bfcd6e145901d382c8076d597521c29684749ab5cbf86722af11c9ac45700fb0a7776a559a38f8b79b98e721a44cf34ec397cf25e37f4d69d24a0381b4ab0264f3b2574d5256a562f2e7d4473f98eaf405cc7748b78db8263aec85e0adce0325a7dc66e47df8f7f96f7bc726ed5ef1ed6ed835070ff5c4fa4e7e6baf60c025434b092aa40904fe8d8e457c630cca3754ab8d728a09031936c3edf6972ddf1b3cc1ed955ab2d37db4ac96699b83e88a2bf1e4f874f17fa0d1167f1c84e1300be1951ac183e4c81993c4341f415170ce8229ce54d51e7f53b41873637d213424b2d71e573942625a6e0f8b938c3120b1faa0f29902522e3d361a6c41a912952da85f74e4e9a7e48b8955ab3809827ab2c018094341689e50e84027e1b13b610508084409dae1d12c82c738d2b5c5b48dc4a035c1d69c1315c2bfcfb925859b05760c252778372a8befa84a1b8a2a068ba7f29619962e7840a790c38370517d227e3dfa0c3dba92c62c8e276a71f40976a3fb9cce730bc5d0ab548485c758270a6c696530c8b60e16f520f4d6164222a20b3cebc57c9942421525b88cedefa40be42370d2b9b6c47ccd91c10ea1c46d2b26f9c6e44492f129c1c5326fb27ccc1de11e12035ce0acd560aeaf1203c87f650ab05005558b379ce178f333deaa1c3018d8193a5dbf672b2f50169f1eb6a1097e6d506f84b2efb472f5860c0d598921d4e761aa9b9967fb62e2cef3bd4b5bd2a703fc279a0936ecf5aa064b8620490e2c8f6d9643bf5e01e326923798a6d7a2a40f0567e8f5b4e9ca489627e402c200366756e777fe7f694ea2799942fb51bbd79b2126535ab16343ee64ec0b60cf0f236dd45d70510e83f9f8967af83fe7c4c822adaf600e7d0b9f5229c42430a2069fa10fc4fc083b586c1e90837d8fc5cdf2a3d7364402e6dd2ba6dec497701c0e0d3d7fd4fd27dfa4b691071073f1ee48617a5f3e6b98aace78b7883fa65f0924b8fc2e95e6a46760aadeb80e8beb0921fa6d7db7b3a40f219ff540a076214b1e1e21e203ce766ac5c3c70871e926c42f5276e2346298a59605d3da04c588372cb6a141640ec881defba390f4f56a64aa08c7b7c49ce693b72cda6a28dcc6c80d009d5f21ad56d1e003200487d9e984767e18dc3d46db91806630c6659d42660e1f6462d0a9fd2c7e456dfd281cbcee7eae84e42e74e1908d8764a0fd848b7912995904b97b4d9d435a128d68495d92f41d88b835c9321e99fb7337daedbcf10ba51a3df184f4dd900c7ec01431a3cc8aaa24109a99a5bbdca39d90fb5b8a1927264e6d3ddf61db6b8fe85d3a67679214219459b84cbc240f3ea393e0dff6a30b7a2b9b396b887849f258eacb812af59af2096a7d294d2823a29610c4d065d621aea41bb5123e4d747df45644cf617faf6832908d14f48248fd48e231dd7ff21ff46341060e0f1b06b5b373929b1f5b05111a326b522ac6f40e87085f17bab10d51d9f8057dd8b9f961db0cddb22e337b42357a0a78ac47ce551484bee2f8842fe332a0ae767b72fe4a96d296f3275425734625da717302512a86aed471df6d27d6618b65235d2dfee2e13906b6e2889272bb2fb1fe004bfeda8ad7bc585457056f533089bb30e8dacb959feb8545ac9b0f2af7fd85d54c1ef31641319da4a615eaacd6bbce09e3330bfbe6998594a5d428d11933acc446f2ed4d85ee82323b0315d511e2ba34303a632a0d454a89291bf18e8fb83b038e6af073fc080daf5a08faa205816d943a4b043ca5d64c8d3761543bf17226a25b4e92dcaeaa9d883320f263427023909059405a2eb5f7124535095480ebaf7939d6a2ac7dd75e481e2fe64b64ca5644a73be47ee45433f31da5e8bd33eeca235b52a20b328f8ee2d5005133bb7fe254f6a8c02a0302c392e66054acc900ede95817e538512b9837700c1da2b3d2ea617946f2e9b61b00ef73e0827a3893e3ddf460590f106ac0e4e219d099c27c1770e42eeae1c2dcb9db56774264d435739d957807fde6c77c60962c37ac9ab095449ebc0e4ae51ffd8003d7b81d18c6ed880bf0c51b8d26f2ffca1252530ca0ff9bf0c7d12d4ee10448b3e7ec97709bf64d0ea5fb1124d7de425611585f80829ea47dc5095dfd38d01ffc8aef4ccaad02fc463684a19d7f416c7e044e3104dc47241f73a8f43ab922cf2df406f2adb3bbc23a2073560e7660cfad173a40fcc3ffeb36052ea3917c7e27d43e474aa8a37a3dfea87026eb5881d7550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002687d678007548664308a56028ea8040809f099b56f4d494f9b825eb107ac4aa17be69023dca6ce6fa11f2efceb1cb0136391d87864f6891ecc4c2e1083ad5ff21a2422b1f67bcf81b75eb7b9b39bf6da97953330a50ffa88724ae6ff2d1e5da1b5b410c852cb9eb3625c9ae93a39594def83a159b7b286af9d849c4d1c6834a26ab7e7c666e2d2ad653c71f9d8da32fed2460470dbbcf812303f3b4e9614b0b2df84c7fa62bb94e31c8d1f4a7c005f89a4a5ae87c58eb6f79dcdf75f11d10940992870caef41275bc532c272dd7b019fa195281e9068c7cbeff1f7b3994928c001cafcfabd33712ece2285d73cd92057e88bc0d27cad24a43e08150a7a554e40f8c9caeb5dc7ada91603569873a0e3891b5bf90edf5c9ae5006aa632e48d71025049e757a22d70fbbe2f7ed3497c3fd356f3074b04cf91f22d7839eb32323490a101494eba0872e9beb3fa5eb84510e736da3fc20c83756c0c42a4f4a28e1de1e200a31aca3d2d9d59f0423daeab2bd1b7ffa61d47e863f59ac2ec4720e5889149892f23423ebd8774f74913e760789eb2ae91d576fe56f140d96b6386af73c0858fbaad55c63417b72320ac56f3fffa9d10735f72ee0d5a6aaface8db9f608199661ca9a06aa67558118f45b12a7f766b0fea15f6900855bc29d93adfc2e582e6abdfb2ae7078d52de4128ba9b4add73ae83746930de87e65fa6b69a56720b0a2b31ac8c194025b49043078bb98f22f2563a6436c75119573b63d5369b3f2a1e16e9a99453521568e326a5590f8e5fb064e33dfd6688975f405ef7b203941e2cae65dbc09772a0d882f6b8a1cf1c48dbdda31d8ef33823ebf83c28dbe61e941ad38250e1a1e0ff32b1195809c59d1df79debe97ad19504d5c1128d0d0368471ac748974e33057e30e57771870db768ba53db52c0247eb4808887420e5d251e1e75f3c14d1957dfca4b9d7c8a0574166a264e0d8fb745d39d4632b91714bbf41589714a5052f6dc7f1a852ee11d5b4b4cdc13569e9b72d6f02492793480c8ad100fb373c93812b644ec1b4593fda1f518d94a06f27213a63955a044d130abf71221a2ab927f227f4b60251098a7422d5e6c2419f312de0391d66d0ff28a662803bc1106dd0fb29d88dd70ba192f66f38b578e6c072497c0a36e017215dbe1cd0c4a16d200a1521061b3498799b0a326d07f0c227d879c1fc4378d4db91aa63a2bd2a8214d5f475306f0eedd9754ff8e531e21a2b66dfd173adfe2b36062ca2317059a4c010bfbbe8bec945c7f442ee1bb63a91c7ca9af6151dcbfdb55d93e5c29570fb5b55d74fa78280f3420708ed9bc04734dd05404bade19e02ea8641abe1bfc1658859d940e41f22504c998c182578b57ae0659ab5ec3bcd8568953c48309d4d5b236c9a8372ce5d2e3c77bd764d14e364a270b569835f4c43854886f1c02a11a00768fb688bfb5e20e9d16446db4808e53fbdbb496cc91f4a69341330e290845386ae097cff4c55f06259f359c74c02b84c21a6b91d3cf828a16b374131567743ce58013ac35106640a16294712fa8e964d3bfcfeced0f8c65cd3b8e100af00d16a89069d42cee1155327102d711417716281a5927ce6c067908dcd73d1060f952b088839c0a4b79c27c5aac4b3dccec05a24d3f095bd57e2265aecf1f0e0539d13efc4364e914463a68c48e0a7155cda8f48653bec651a334f14e826f2c8e3f8b901423bdaf7c60ac79a99f975bf0104f2da2ee7fae06d393f7d42df0297e9c6bd70382da06e3c3ad81d6da82603dcd60974138e2a6ca552d1e0d71dd0000000000000000000000000000003d570ce256c23b2ad24b2d1a6215c62b63000000000000000000000000000000000000e1828c6c687a505897c01b7acab30000000000000000000000000000004052eaf295668d87719c907b1831328aa1000000000000000000000000000000000014d32b62cee88718b756135b686d86000000000000000000000000000000448aedf93c2e0c117564e7518486928367000000000000000000000000000000000007f3029dfc03a3ad53daea491839140000000000000000000000000000000cc0ec2dab0d1a2e2933219e34cf5d215200000000000000000000000000000000002c6d8fdd9d1328e4feea86d5aae6a6000000000000000000000000000000f1d9603adad50b54e8168c20d21c57e8f5000000000000000000000000000000000009a1666e5d2c94df44420fddfc1d9300000000000000000000000000000016304112dc77e7370494489ae6fad7494a00000000000000000000000000000000001e0cd43ecbe68cbfa151375f674027000000000000000000000000000000ff117245eccde53514c7a4bd521a50e4a500000000000000000000000000000000002c7de78973c85d98f4371e01baedce00000000000000000000000000000025441f9158e4740c49200f84c0c3a7117900000000000000000000000000000000001d9664efe5c5403f750b713d8f3e1e000000000000000000000000000000e5e8bc089af9f7b200d566947a115be30000000000000000000000000000000000002b812d3f40180596f47ae9a044b907000000000000000000000000000000f8e8d56705de9e07d985df07b92030101700000000000000000000000000000000002aeae3bb018acfa6c5f61a8c2303110000000000000000000000000000000084c88331aba8860ead64dd9600e984dc00000000000000000000000000000000001efab6e9214d5bc576af794baab94200000000000000000000000000000059e5e4f8fff452f1f939979d57da5fec8a000000000000000000000000000000000013b4dc2f2d9fd511c64b885c124ecc0000000000000000000000000000000be3036bdbcbc6f4ffbefd36862db6ee7f000000000000000000000000000000000011ac4ff7b6f86fec9f35f4cefbe14e00000000000000000000000000000047ff5abfc2f607bde31992ac49944e69af00000000000000000000000000000000002e26e5253123ed2efdb5e72344675c0000000000000000000000000000008af36cd13e8c5cedc34652756bcb97e2d20000000000000000000000000000000000022fbc23b46c99982d0fdd7bf0a463000000000000000000000000000000a88b35c7c5b8496121795580b2cf303a3900000000000000000000000000000000000e62098150848c9c50d1d108879d2d00000000000000000000000000000084a1de51a145e76f80fadfb0a2d710938e0000000000000000000000000000000000023e87673f67a08bd9b18e3e4ad6f100000000000000000000000000000064b0978992c818a7ae3c7554826eddd11b0000000000000000000000000000000000156a1d4e8a8c46151b416edc357a1a0000000000000000000000000000005e142a638512103b5cf5ecfba828a2e05f000000000000000000000000000000000012579dfd8b8bf5d0a000e1e622d9c40000000000000000000000000000007f0e2ddf4530acb880d1b58d950672cb620000000000000000000000000000000000272b0b2cb24861e21c4346c0e271be000000000000000000000000000000ead0e5aab30bb29da5006fc9f4f3507ffb00000000000000000000000000000000000f7777c25e5526a096cfbf20bf4c9200000000000000000000000000000035f7a1078c6be0790a1318e656f8507fc500000000000000000000000000000000002d9ef31aa24a79433950724d43a5eb000000000000000000000000000000180c8e6b90c05a03fb36b7a1af1176bf1600000000000000000000000000000000001d87bc20a98bb0733b468b966b4ddd000000000000000000000000000000ca6942231c037cfefa8299117e724845ef00000000000000000000000000000000000336b6e3c2bf8df9028f7eff9ff30e000000000000000000000000000000780c64a3698dec2a3ce40608afcacb8b5a00000000000000000000000000000000000ea784714d3b7ca565dade4653c91d000000000000000000000000000000efefc3d4ef3867739236468150d7b5fe150000000000000000000000000000000000190d6182bea8d1c0874b3117bf02cd0000000000000000000000000000009a14adf2fae32810ba5b81a98ef2849ffb00000000000000000000000000000000000a95da0274e9a34a9d9c042876765d0000000000000000000000000000000f12d78757fa6157f21a6d1ae6bf206f11000000000000000000000000000000000005d03a527d303c76bce884e7ce64410000000000000000000000000000006e9ed3efac28e499e8451c34b34ee48b4f00000000000000000000000000000000002439021c7451ae7acb37ae246f766d00000000000000000000000000000015974d942818b3d1d97f8ad792623f0eec00000000000000000000000000000000002e67cbf940ca7e3c3b149f226f9f110000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002ea6205cddd4777da8b2d1612569eaa982d0a7e7ef3bcca312cbfc1ccecfdaa3053d7c10026ba41fb05faa66267a6732ca5bf2bb4f518f8e52822faa3492774210c6653865535e5f20143de24bced638b3036efe46103ffb73046c4ec3b12f37221ff68a9c79f63b9c685bed1270f345bfe8383e1d5d1680d31dd9652e59f3211f9b4c114812ef5035ed5ac9582949a9cb86780830ae0b0a30dd50bf003b32410b67986e7ed2931a19e77805c54c21d9a406cd812997112cce29ac62b274d6011c4b6c9e85c4cb19168c59cd34525c95a64fab895498ff69b69fa1bbf620c1e42953d78f8e8327560d00e9394ab8656f3e9b2cf770e576a8ae4ff89c317005fd205d8ed9756b6439882bbe822cb75ff19c1da57ca9327ded38311886da40cc94204baf682ed630e2c6c2eb98ce9f8574e8cadc803ff13d6f1f2313023ca5cd962827487dbd9b2aa016d63e863208106469e968be488246fec017578c5970526206ef8ed8618002b88c5934131316249e8fe16e365ffd164f04df2b15fcd1be69285fdf72faf66601c51558ef89fc9f867a1639dd4b481d74058225b5d34780c714bf0265c7696a22a794e56b9f24a1ff9c25fcbb0f29ae98802212c333cfa4620c81d6b68b9c5d7e9fb658c3ed9c4743ba9dc2945bb26d393713ed870fe5a4180923343536fbba55e9b6e111e57b9694ab3fc987987a2d4dfcccd30a7b24650500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000067d2fa2d8f0fd6a6e0fae652aee76ca54b00000000000000000000000000000000002cbe4fb5b147145ddf14ec9c5e02a200000000000000000000000000000042b86775f92a77263b45801644a4d425b30000000000000000000000000000000000189693d9dbc7d87edc97386ec7a259000000000000000000000000000000f1f79ec21b2d4fc04b2ce39ccb0515da9300000000000000000000000000000000001967c6a54631183e1baacf37bbcd82000000000000000000000000000000a4ca2e1a19bba9e981be9019f9c0e24ede0000000000000000000000000000000000248753f92cb50ceca5ca8a9532a6b7" + }, + { + "bytes": "289538cac0e6b6b0e600b7d321883060ab0046854d95a0d1a501c11bc5d2499a000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000e9000000000000000000000000000000000000000000000000000000000000008b0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000c2000000000000000000000000000000000000000000000000000000000000005b00000000000000000000000000000000000000000000000000000000000000a6000000000000000000000000000000000000000000000000000000000000003e0000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000004f00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005900000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000005a00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000770000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000000000000000000000000000003b00000000000000000000000000000000000000000000000000000000000000c40000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000fb000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000c4000000000000000000000000000000000000000000000000000000000000005800000000000000000000000000000000000000000000000000000000000000670000000000000000000000000000000000000000000000000000000000000075000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000bc000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000017000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a80000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000007d00000000000000000000000000000000000000000000000000000000000000d5000000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000aa0000000000000000000000000000000000000000000000000000000000000037000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000065" + }, + { + "u64": "1000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 2000, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": { + "vec": [ + { + "symbol": "Issuer" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "credential_types" + }, + "val": { + "vec": [ + { + "symbol": "kyc" + } + ] + } + }, + { + "key": { + "symbol": "pubkey" + }, + "val": { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 2073600 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerList" + } + ] + }, + "val": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "vec": [ + { + "symbol": "Vk" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + } + }, + "ext": "v0" + }, + "live_until": 3110400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "vec": [ + { + "symbol": "Proof" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "expiry" + }, + "val": { + "u64": "1000" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "threshold" + }, + "val": "void" + }, + { + "key": { + "symbol": "verified_at" + }, + "val": { + "u64": "0" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 1555200 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerRegistry" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Verifier" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_revoked_claim.1.json b/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_revoked_claim.1.json new file mode 100644 index 00000000..5e556502 --- /dev/null +++ b/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_revoked_claim.1.json @@ -0,0 +1,530 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "function_name": "register_issuer", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + }, + { + "vec": [ + { + "symbol": "kyc" + } + ] + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "function_name": "set_vk", + "args": [ + { + "symbol": "kyc" + }, + { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "submit_proof", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "symbol": "kyc" + }, + { + "bytes": "0000000000000000000000000000000000000000000000042ab5d6d1986846cf00000000000000000000000000000000000000000000000b75c020998797da780000000000000000000000000000000000000000000000005a107acb64952eca000000000000000000000000000000000000000000000000000031e97a575e9d00000000000000000000000000000000000000000000000b5666547acf8bd5a400000000000000000000000000000000000000000000000c410db10a01750aeb00000000000000000000000000000000000000000000000d722669117f9758a4000000000000000000000000000000000000000000000000000178cbf4206471000000000000000000000000000000000000000000000000e91b8a11e7842c38000000000000000000000000000000000000000000000007fd51009034b3357f000000000000000000000000000000000000000000000009889939f81e9c74020000000000000000000000000000000000000000000000000000f94656a2ca48000000000000000000000000000000000000000000000006fb128b46c1ddb67f0000000000000000000000000000000000000000000000093fe27776f50224bd000000000000000000000000000000000000000000000004a0c80c0da527a0810000000000000000000000000000000000000000000000000001b52c2020d746000000000000000000000000000000c668d4d6ac42790ed217e8bf008e70917700000000000000000000000000000000000867ff44121bdb2c8e957bf07a6f4e0000000000000000000000000000003bd32ac024985233df1feb7caf4e31a07b0000000000000000000000000000000000224974cd8a468bfce1a301d4338a9b00000000000000000000000000000075c162ea8274d64c735bb04aef8dbc8e0100000000000000000000000000000000002fc1f2ab715b4caf9474e08cdc207400000000000000000000000000000016ffb4cba0d2c022b8ac46f0e5225dce98000000000000000000000000000000000012ca347a59d9dea7d7fa0260b9181e00000000000000000000000000000025bb805f2a91ef2e802c2527572e7bb552000000000000000000000000000000000029bd9f22b39e8ef3b48df31cc811100000000000000000000000000000005ac7f8200290a7baad69e6a7e54fb385a900000000000000000000000000000000002d6aaafe1493f87f84892ab8763860000000000000000000000000000000cd77eecaa6bc7b38f7e3f4824d9c17192f00000000000000000000000000000000002aff4f8031db91518e3f6fb8cdc7560000000000000000000000000000009453a52cb6195aa2d66974f12791799b6b00000000000000000000000000000000002e524075a2bd0f1247ec1a196d4ebd00000000000000000000000000000022eb41ae79de0ddc2de85642c5bccf9e60000000000000000000000000000000000017fa5a9cfe617a9e1aaae3c01b0c19000000000000000000000000000000a81528671c531979d80aa169ba4ace202000000000000000000000000000000000002d5773db7711ee91a11bf99ca8b061000000000000000000000000000000fec39c1268598f3ad2421a49db7057936200000000000000000000000000000000002baacce67605b7df8eb53626c6e4d6000000000000000000000000000000b807ebcaf35c4bde0f2d1944ed7b4d3d9800000000000000000000000000000000001d54c17cd71d41dfaf7d4b9895613c000000000000000000000000000000f638fa13b162f29f87a972e060b16fdeea00000000000000000000000000000000000e8a45e73b184c62ec7688e4caf4b0000000000000000000000000000000efa9475f3d30256656a8313ebcf7115dc60000000000000000000000000000000000138e2b8e91fdcb10b9bef13e4cb619000000000000000000000000000000391727546150acd67f0d8feee7e265d87600000000000000000000000000000000002c99bd77dd8c0a1dd716cb42da2842000000000000000000000000000000c12a81ea5f4370007f7deab5d3a65bc2f70000000000000000000000000000000000181f7f9a361c20e1baff19924677691a251e01ac227137ffa82e49d6c9fd563e5a3187879449d8ccf5c85a613b6b35163f3071350f2ef1b8a8176caab75b06e9d9b6c0f22526b876ec2d398ec494cc0432ef0692755e657d225a64f4ec01db35482440852ddbae2861cb5ac3117c5511f0c48d9d9e66a5a75b4601255b1fb2285d3537299a7449cc7a4f446d36d91f1c20efdf80a1f180ac6562edcbc0eeee260128c237b289b9cdc22a118d4003010ac0a2b42e40c8290ec54b3578393d59a1e0c190886c48d0b4466d49ff4942470a3743ee3364f9705b42be011782a5aa8cdd7411c81d02314a611f27b67aab121d976295472d793eb3d9c3f2dc042ba84d1279e3e5dfb4ef0871bdf702681c030edd9d623cc7dbbf28829d1e9841418d6b95f00367a472657939205fbb9884bb127168f4fc60af7509e4386ea76d7c5ffcaa1fd7f40e43ba91e587db229225f125e3574ebb2db3f45265a09f31cc380747e23924777ddd10bafc5b2359d6e8891529dedcc60f4d5be7e2d2d9023d968a119c74c2ae189bb22055a77db2fa811c2c92ff06bd6cbbcda7a62d3139d53b1693c0c3b2c2d711142b4cbd8995f2a9de11d36f4b272adee4b9517c181a13e2bb405b00823d4b0a95420691ea8afd7bb924b86afd41c5e392dda8f7195f3ae8ce5f6b47df6e288a37f5cd34b0febb29f119c82df9fdfd87abd4222500bcef0685e0e9323e25a33adeb760f5ebdb04227f00607a108240f0ce211e93593895df259d7b956465d2654e2ffaa4ec412840980b4a3942c91703b60cf97a7f6a1289820aa8d72778a5ba3702ecaf84c7c20ac023c3bb5b66680dd56519a73c2341a9fcc8a6ff1ded82531f630b05538a6fae010d64fdc8d77b9cf3f33fcbb98dbcfc427ac27a18ad715985f2bdfec4e9c5ab1906e52d4f7c7a88dfcd599bf6a908afb31a29d1d045898689c8e8a6925a5821db238c93cc7fc74642eb8805fa9f23ee4a8394ed487d043dd35cba21b385465f391452c2917cf5c145ddfd925cc6b23f21dced22b3e196b3cca1667e38706254210a766773ccbb9eb60fe4b3f2a3f37dbb3e0e7e62987fcabdcdd34837ac2b47d710e77b556d514313831972a9f33ca4031f52da0e4535eac69d705bbe107f648b2c1653ac16f6048dc45e3c8add66f518a4b76b25ab23c842920c2d7b56f8b7922670098dff7440a788c12c6f6f6a5a1510ac74837e0d6b07081f2c22cf514652119a5c3ccf36213a88af1743ef5512912c7d3edc138b61db10b5f1e06592ec7b2c1a19a022b1e4741567a03a61c2acf8daacc89070ec00b97747a953fc0f964e14cd6cf2661d5ffa22d168cdb69d4d041ec52e68a4948b879d4f1b634e602df30a077a3fd0927983018dca75f4a753864035452a845b48b1f48066612794b9f12c98d207b443ac6abe62e9294eeee24887c1c8d24af4b1976e0850998d84fdfa26df16707b90ce81b88a181a7ba88d8cf481ec01b00ab6d90b706941304a486405a2ede7c50d20e609f5372397831d160f68e0b22c481ca2d92398b9247f5fc81efb620ae48d328ce0ada1b2a226dd739c994eab0e1a441d24e2daab56b5b1df116c07061e8599ed7172b12b686c1cd3836561485e3e64545d9114934fb7e6f90ff7b0d245e9e405a5a2b54e6f58b62a48017fef3d653c978bda7d35308ce2712a9773344d9a53823e9aedf866d345db50f7e4a1bf5744317c2f5635622a056b036a1f7881390ae3f1a459bd61b89ea02520c86333fb8661412b28699fddce2b29d1af4ccc032ce978d17b1b4e219a122c19a9bc7fac4e1bc7f58e183a1f55481ca3ce8f4c8957cf0a2c8deb6d3828dc9db4836c352126879c499f55b585cd7e2444955ac7886c5dc4892b2e42d177cb6d18ea0d2f3e63afdc238e3fab0083da12979ba75596539d9f68caaea43aa10621430f263cb28ddd078b8da4aa20f97b06a907f7c80b0eed57d684314d9f542dafb9140ea558f932c3e0df5ec532a1ee2f5add1cd1e06edb76574259c31ca89e1cfe871d828733ecc8f49caf7d0c501316f90390556174431f3ff9d8ce756d0018f3a1138df1847e72836eea362d20731cf7200baff850fb42fa1e2131d71c565f94f87ef63f70c7fc7404ba0db8774f15430a505785086392c5604befef5fd7d0c7ce2eaa8750d0293c35fc0caa76e72f30738a716296319f4c4d5e5f06387fa89dad1f84ffce3f5db5b898f3433f6d19f7312b747255e22e45b536854321ec5f5a5ec7c96d163ea65f0ae20af789ca2c9c9f126483b371102fd6e4e8ec3dedc31bd1f96f217b36248c614bffc8f3022ee1836381e8ac389e497defb603380e346bc9d9eb46c607f61be93ecc9802902074d8b921def6d50def4f31cf546f1849bfe48ab0e2240eda00009ce092b4530304f1ba93569cdc939a268864e58757ffc7dc94ea947c81343cf020edc820a42c5023544f9bcb7b8e8bd439606621abb3082e39eb9d7a8c9b67cedc580b14ff2dfba58fa7fee1ff9843f1ea68af8a54be1178e23df2886384a553206ea8cce7273613f7534fece7edf43500e7103ddb660e01737d4354eb0c607159f1a84d75067c31594f6b3861bdcb5b4fe23a1daf66e2a75ee704d0485d688e414498658603b40afd73979d9aee48f7a9e75a9e060806742c022000a448ea3124cf7b518400e9d050eca8744082e23511db385f2b0f7ab4103bca409fe76cd917d27986ad2bd70338549a774f9fe47d0f1580d68e16ae027fecded4589f636f454fc9938026d59cbd34af46ec688c16bb42047d522e4bfef0bcaea67fea0a4b2f45abceb4077cf654c76cf415848eeb0e5fc0dcb8da5b0cfe65c8234afc79962c47115bee292604868b26adac64ad5af67997d0aa41bfd154498157c94369109865428a510f9bc124bc164303c822ff84b81c21dbfcc1987ee5effc24d99dc14be67866b0180e97312624479bb3526e63eda76d4b2df49c58018769c13f7f305ebc6c6b2903b6422d7fdefc96caf50b02ea272850846e44225a26b651e5ab09ca7dbd0d6221eebf0e7deb6816f83d1d5398ec6b03dcb6a113be156855d96083541658485f2ac9deb94fd588233084f20e5d10e787a53ef8d5fce9c4c0a4c07b6dfd6ca8ce1e33b2ed6129406b19ca2e26657fdf555ddebcecc3a43ad8d1804bb8c1eef28b09745fd2b97f06b3d45af2e3e8f2966a19c3b4de7de996f2c69ce7a923a610e925cb3fd18cc78efea1fe3f6c29f8cab901f78c33febfbcbfd2d4a0295e6f7803004a17bce8af6da36fe52ddf723a96d5b24ab9f8d1dfa7aeafce5811e6b7e82007144311c41d42207554ba94e2e4cae4bc8d944f317929ace53ed9cd040b092821724594f55ab3c74397d2d775ab85f08b879d0da9330a1132a1910bca9de3e71826a0b96b0a9470dbc0c3fefe3c797f33ada63ab17d21316676de0ec7617dbb24576776f4abc1286acf7ef57ce136c7dae83050dbf801c405680ba16ce919312833bf1046e517e3ecb47bd93ade7558eba45faee153e2d3fbcce7ba73493d4f0908bfcd6e145901d382c8076d597521c29684749ab5cbf86722af11c9ac45700fb0a7776a559a38f8b79b98e721a44cf34ec397cf25e37f4d69d24a0381b4ab0264f3b2574d5256a562f2e7d4473f98eaf405cc7748b78db8263aec85e0adce0325a7dc66e47df8f7f96f7bc726ed5ef1ed6ed835070ff5c4fa4e7e6baf60c025434b092aa40904fe8d8e457c630cca3754ab8d728a09031936c3edf6972ddf1b3cc1ed955ab2d37db4ac96699b83e88a2bf1e4f874f17fa0d1167f1c84e1300be1951ac183e4c81993c4341f415170ce8229ce54d51e7f53b41873637d213424b2d71e573942625a6e0f8b938c3120b1faa0f29902522e3d361a6c41a912952da85f74e4e9a7e48b8955ab3809827ab2c018094341689e50e84027e1b13b610508084409dae1d12c82c738d2b5c5b48dc4a035c1d69c1315c2bfcfb925859b05760c252778372a8befa84a1b8a2a068ba7f29619962e7840a790c38370517d227e3dfa0c3dba92c62c8e276a71f40976a3fb9cce730bc5d0ab548485c758270a6c696530c8b60e16f520f4d6164222a20b3cebc57c9942421525b88cedefa40be42370d2b9b6c47ccd91c10ea1c46d2b26f9c6e44492f129c1c5326fb27ccc1de11e12035ce0acd560aeaf1203c87f650ab05005558b379ce178f333deaa1c3018d8193a5dbf672b2f50169f1eb6a1097e6d506f84b2efb472f5860c0d598921d4e761aa9b9967fb62e2cef3bd4b5bd2a703fc279a0936ecf5aa064b8620490e2c8f6d9643bf5e01e326923798a6d7a2a40f0567e8f5b4e9ca489627e402c200366756e777fe7f694ea2799942fb51bbd79b2126535ab16343ee64ec0b60cf0f236dd45d70510e83f9f8967af83fe7c4c822adaf600e7d0b9f5229c42430a2069fa10fc4fc083b586c1e90837d8fc5cdf2a3d7364402e6dd2ba6dec497701c0e0d3d7fd4fd27dfa4b691071073f1ee48617a5f3e6b98aace78b7883fa65f0924b8fc2e95e6a46760aadeb80e8beb0921fa6d7db7b3a40f219ff540a076214b1e1e21e203ce766ac5c3c70871e926c42f5276e2346298a59605d3da04c588372cb6a141640ec881defba390f4f56a64aa08c7b7c49ce693b72cda6a28dcc6c80d009d5f21ad56d1e003200487d9e984767e18dc3d46db91806630c6659d42660e1f6462d0a9fd2c7e456dfd281cbcee7eae84e42e74e1908d8764a0fd848b7912995904b97b4d9d435a128d68495d92f41d88b835c9321e99fb7337daedbcf10ba51a3df184f4dd900c7ec01431a3cc8aaa24109a99a5bbdca39d90fb5b8a1927264e6d3ddf61db6b8fe85d3a67679214219459b84cbc240f3ea393e0dff6a30b7a2b9b396b887849f258eacb812af59af2096a7d294d2823a29610c4d065d621aea41bb5123e4d747df45644cf617faf6832908d14f48248fd48e231dd7ff21ff46341060e0f1b06b5b373929b1f5b05111a326b522ac6f40e87085f17bab10d51d9f8057dd8b9f961db0cddb22e337b42357a0a78ac47ce551484bee2f8842fe332a0ae767b72fe4a96d296f3275425734625da717302512a86aed471df6d27d6618b65235d2dfee2e13906b6e2889272bb2fb1fe004bfeda8ad7bc585457056f533089bb30e8dacb959feb8545ac9b0f2af7fd85d54c1ef31641319da4a615eaacd6bbce09e3330bfbe6998594a5d428d11933acc446f2ed4d85ee82323b0315d511e2ba34303a632a0d454a89291bf18e8fb83b038e6af073fc080daf5a08faa205816d943a4b043ca5d64c8d3761543bf17226a25b4e92dcaeaa9d883320f263427023909059405a2eb5f7124535095480ebaf7939d6a2ac7dd75e481e2fe64b64ca5644a73be47ee45433f31da5e8bd33eeca235b52a20b328f8ee2d5005133bb7fe254f6a8c02a0302c392e66054acc900ede95817e538512b9837700c1da2b3d2ea617946f2e9b61b00ef73e0827a3893e3ddf460590f106ac0e4e219d099c27c1770e42eeae1c2dcb9db56774264d435739d957807fde6c77c60962c37ac9ab095449ebc0e4ae51ffd8003d7b81d18c6ed880bf0c51b8d26f2ffca1252530ca0ff9bf0c7d12d4ee10448b3e7ec97709bf64d0ea5fb1124d7de425611585f80829ea47dc5095dfd38d01ffc8aef4ccaad02fc463684a19d7f416c7e044e3104dc47241f73a8f43ab922cf2df406f2adb3bbc23a2073560e7660cfad173a40fcc3ffeb36052ea3917c7e27d43e474aa8a37a3dfea87026eb5881d7550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002687d678007548664308a56028ea8040809f099b56f4d494f9b825eb107ac4aa17be69023dca6ce6fa11f2efceb1cb0136391d87864f6891ecc4c2e1083ad5ff21a2422b1f67bcf81b75eb7b9b39bf6da97953330a50ffa88724ae6ff2d1e5da1b5b410c852cb9eb3625c9ae93a39594def83a159b7b286af9d849c4d1c6834a26ab7e7c666e2d2ad653c71f9d8da32fed2460470dbbcf812303f3b4e9614b0b2df84c7fa62bb94e31c8d1f4a7c005f89a4a5ae87c58eb6f79dcdf75f11d10940992870caef41275bc532c272dd7b019fa195281e9068c7cbeff1f7b3994928c001cafcfabd33712ece2285d73cd92057e88bc0d27cad24a43e08150a7a554e40f8c9caeb5dc7ada91603569873a0e3891b5bf90edf5c9ae5006aa632e48d71025049e757a22d70fbbe2f7ed3497c3fd356f3074b04cf91f22d7839eb32323490a101494eba0872e9beb3fa5eb84510e736da3fc20c83756c0c42a4f4a28e1de1e200a31aca3d2d9d59f0423daeab2bd1b7ffa61d47e863f59ac2ec4720e5889149892f23423ebd8774f74913e760789eb2ae91d576fe56f140d96b6386af73c0858fbaad55c63417b72320ac56f3fffa9d10735f72ee0d5a6aaface8db9f608199661ca9a06aa67558118f45b12a7f766b0fea15f6900855bc29d93adfc2e582e6abdfb2ae7078d52de4128ba9b4add73ae83746930de87e65fa6b69a56720b0a2b31ac8c194025b49043078bb98f22f2563a6436c75119573b63d5369b3f2a1e16e9a99453521568e326a5590f8e5fb064e33dfd6688975f405ef7b203941e2cae65dbc09772a0d882f6b8a1cf1c48dbdda31d8ef33823ebf83c28dbe61e941ad38250e1a1e0ff32b1195809c59d1df79debe97ad19504d5c1128d0d0368471ac748974e33057e30e57771870db768ba53db52c0247eb4808887420e5d251e1e75f3c14d1957dfca4b9d7c8a0574166a264e0d8fb745d39d4632b91714bbf41589714a5052f6dc7f1a852ee11d5b4b4cdc13569e9b72d6f02492793480c8ad100fb373c93812b644ec1b4593fda1f518d94a06f27213a63955a044d130abf71221a2ab927f227f4b60251098a7422d5e6c2419f312de0391d66d0ff28a662803bc1106dd0fb29d88dd70ba192f66f38b578e6c072497c0a36e017215dbe1cd0c4a16d200a1521061b3498799b0a326d07f0c227d879c1fc4378d4db91aa63a2bd2a8214d5f475306f0eedd9754ff8e531e21a2b66dfd173adfe2b36062ca2317059a4c010bfbbe8bec945c7f442ee1bb63a91c7ca9af6151dcbfdb55d93e5c29570fb5b55d74fa78280f3420708ed9bc04734dd05404bade19e02ea8641abe1bfc1658859d940e41f22504c998c182578b57ae0659ab5ec3bcd8568953c48309d4d5b236c9a8372ce5d2e3c77bd764d14e364a270b569835f4c43854886f1c02a11a00768fb688bfb5e20e9d16446db4808e53fbdbb496cc91f4a69341330e290845386ae097cff4c55f06259f359c74c02b84c21a6b91d3cf828a16b374131567743ce58013ac35106640a16294712fa8e964d3bfcfeced0f8c65cd3b8e100af00d16a89069d42cee1155327102d711417716281a5927ce6c067908dcd73d1060f952b088839c0a4b79c27c5aac4b3dccec05a24d3f095bd57e2265aecf1f0e0539d13efc4364e914463a68c48e0a7155cda8f48653bec651a334f14e826f2c8e3f8b901423bdaf7c60ac79a99f975bf0104f2da2ee7fae06d393f7d42df0297e9c6bd70382da06e3c3ad81d6da82603dcd60974138e2a6ca552d1e0d71dd0000000000000000000000000000003d570ce256c23b2ad24b2d1a6215c62b63000000000000000000000000000000000000e1828c6c687a505897c01b7acab30000000000000000000000000000004052eaf295668d87719c907b1831328aa1000000000000000000000000000000000014d32b62cee88718b756135b686d86000000000000000000000000000000448aedf93c2e0c117564e7518486928367000000000000000000000000000000000007f3029dfc03a3ad53daea491839140000000000000000000000000000000cc0ec2dab0d1a2e2933219e34cf5d215200000000000000000000000000000000002c6d8fdd9d1328e4feea86d5aae6a6000000000000000000000000000000f1d9603adad50b54e8168c20d21c57e8f5000000000000000000000000000000000009a1666e5d2c94df44420fddfc1d9300000000000000000000000000000016304112dc77e7370494489ae6fad7494a00000000000000000000000000000000001e0cd43ecbe68cbfa151375f674027000000000000000000000000000000ff117245eccde53514c7a4bd521a50e4a500000000000000000000000000000000002c7de78973c85d98f4371e01baedce00000000000000000000000000000025441f9158e4740c49200f84c0c3a7117900000000000000000000000000000000001d9664efe5c5403f750b713d8f3e1e000000000000000000000000000000e5e8bc089af9f7b200d566947a115be30000000000000000000000000000000000002b812d3f40180596f47ae9a044b907000000000000000000000000000000f8e8d56705de9e07d985df07b92030101700000000000000000000000000000000002aeae3bb018acfa6c5f61a8c2303110000000000000000000000000000000084c88331aba8860ead64dd9600e984dc00000000000000000000000000000000001efab6e9214d5bc576af794baab94200000000000000000000000000000059e5e4f8fff452f1f939979d57da5fec8a000000000000000000000000000000000013b4dc2f2d9fd511c64b885c124ecc0000000000000000000000000000000be3036bdbcbc6f4ffbefd36862db6ee7f000000000000000000000000000000000011ac4ff7b6f86fec9f35f4cefbe14e00000000000000000000000000000047ff5abfc2f607bde31992ac49944e69af00000000000000000000000000000000002e26e5253123ed2efdb5e72344675c0000000000000000000000000000008af36cd13e8c5cedc34652756bcb97e2d20000000000000000000000000000000000022fbc23b46c99982d0fdd7bf0a463000000000000000000000000000000a88b35c7c5b8496121795580b2cf303a3900000000000000000000000000000000000e62098150848c9c50d1d108879d2d00000000000000000000000000000084a1de51a145e76f80fadfb0a2d710938e0000000000000000000000000000000000023e87673f67a08bd9b18e3e4ad6f100000000000000000000000000000064b0978992c818a7ae3c7554826eddd11b0000000000000000000000000000000000156a1d4e8a8c46151b416edc357a1a0000000000000000000000000000005e142a638512103b5cf5ecfba828a2e05f000000000000000000000000000000000012579dfd8b8bf5d0a000e1e622d9c40000000000000000000000000000007f0e2ddf4530acb880d1b58d950672cb620000000000000000000000000000000000272b0b2cb24861e21c4346c0e271be000000000000000000000000000000ead0e5aab30bb29da5006fc9f4f3507ffb00000000000000000000000000000000000f7777c25e5526a096cfbf20bf4c9200000000000000000000000000000035f7a1078c6be0790a1318e656f8507fc500000000000000000000000000000000002d9ef31aa24a79433950724d43a5eb000000000000000000000000000000180c8e6b90c05a03fb36b7a1af1176bf1600000000000000000000000000000000001d87bc20a98bb0733b468b966b4ddd000000000000000000000000000000ca6942231c037cfefa8299117e724845ef00000000000000000000000000000000000336b6e3c2bf8df9028f7eff9ff30e000000000000000000000000000000780c64a3698dec2a3ce40608afcacb8b5a00000000000000000000000000000000000ea784714d3b7ca565dade4653c91d000000000000000000000000000000efefc3d4ef3867739236468150d7b5fe150000000000000000000000000000000000190d6182bea8d1c0874b3117bf02cd0000000000000000000000000000009a14adf2fae32810ba5b81a98ef2849ffb00000000000000000000000000000000000a95da0274e9a34a9d9c042876765d0000000000000000000000000000000f12d78757fa6157f21a6d1ae6bf206f11000000000000000000000000000000000005d03a527d303c76bce884e7ce64410000000000000000000000000000006e9ed3efac28e499e8451c34b34ee48b4f00000000000000000000000000000000002439021c7451ae7acb37ae246f766d00000000000000000000000000000015974d942818b3d1d97f8ad792623f0eec00000000000000000000000000000000002e67cbf940ca7e3c3b149f226f9f110000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002ea6205cddd4777da8b2d1612569eaa982d0a7e7ef3bcca312cbfc1ccecfdaa3053d7c10026ba41fb05faa66267a6732ca5bf2bb4f518f8e52822faa3492774210c6653865535e5f20143de24bced638b3036efe46103ffb73046c4ec3b12f37221ff68a9c79f63b9c685bed1270f345bfe8383e1d5d1680d31dd9652e59f3211f9b4c114812ef5035ed5ac9582949a9cb86780830ae0b0a30dd50bf003b32410b67986e7ed2931a19e77805c54c21d9a406cd812997112cce29ac62b274d6011c4b6c9e85c4cb19168c59cd34525c95a64fab895498ff69b69fa1bbf620c1e42953d78f8e8327560d00e9394ab8656f3e9b2cf770e576a8ae4ff89c317005fd205d8ed9756b6439882bbe822cb75ff19c1da57ca9327ded38311886da40cc94204baf682ed630e2c6c2eb98ce9f8574e8cadc803ff13d6f1f2313023ca5cd962827487dbd9b2aa016d63e863208106469e968be488246fec017578c5970526206ef8ed8618002b88c5934131316249e8fe16e365ffd164f04df2b15fcd1be69285fdf72faf66601c51558ef89fc9f867a1639dd4b481d74058225b5d34780c714bf0265c7696a22a794e56b9f24a1ff9c25fcbb0f29ae98802212c333cfa4620c81d6b68b9c5d7e9fb658c3ed9c4743ba9dc2945bb26d393713ed870fe5a4180923343536fbba55e9b6e111e57b9694ab3fc987987a2d4dfcccd30a7b24650500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000067d2fa2d8f0fd6a6e0fae652aee76ca54b00000000000000000000000000000000002cbe4fb5b147145ddf14ec9c5e02a200000000000000000000000000000042b86775f92a77263b45801644a4d425b30000000000000000000000000000000000189693d9dbc7d87edc97386ec7a259000000000000000000000000000000f1f79ec21b2d4fc04b2ce39ccb0515da9300000000000000000000000000000000001967c6a54631183e1baacf37bbcd82000000000000000000000000000000a4ca2e1a19bba9e981be9019f9c0e24ede0000000000000000000000000000000000248753f92cb50ceca5ca8a9532a6b7" + }, + { + "bytes": "289538cac0e6b6b0e600b7d321883060ab0046854d95a0d1a501c11bc5d2499a000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000e9000000000000000000000000000000000000000000000000000000000000008b0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000c2000000000000000000000000000000000000000000000000000000000000005b00000000000000000000000000000000000000000000000000000000000000a6000000000000000000000000000000000000000000000000000000000000003e0000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000004f00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005900000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000005a00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000770000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000000000000000000000000000003b00000000000000000000000000000000000000000000000000000000000000c40000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000fb000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000c4000000000000000000000000000000000000000000000000000000000000005800000000000000000000000000000000000000000000000000000000000000670000000000000000000000000000000000000000000000000000000000000075000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000bc000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000017000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a80000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000007d00000000000000000000000000000000000000000000000000000000000000d5000000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000aa0000000000000000000000000000000000000000000000000000000000000037000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000065" + }, + { + "u64": "1000000000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "revoke", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "symbol": "kyc" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": { + "vec": [ + { + "symbol": "Issuer" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "credential_types" + }, + "val": { + "vec": [ + { + "symbol": "kyc" + } + ] + } + }, + { + "key": { + "symbol": "pubkey" + }, + "val": { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 2073600 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerList" + } + ] + }, + "val": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M", + "key": { + "ledger_key_nonce": { + "nonce": "4837995959683129791" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "vec": [ + { + "symbol": "Vk" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + } + }, + "ext": "v0" + }, + "live_until": 3110400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "vec": [ + { + "symbol": "Proof" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "expiry" + }, + "val": { + "u64": "1000000000" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": true + } + }, + { + "key": { + "symbol": "threshold" + }, + "val": "void" + }, + { + "key": { + "symbol": "verified_at" + }, + "val": { + "u64": "0" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerRegistry" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Verifier" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_unknown_claim.1.json b/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_unknown_claim.1.json new file mode 100644 index 00000000..6d030ff9 --- /dev/null +++ b/contracts/proof_registry/test_snapshots/test/bump_claim_panics_for_unknown_claim.1.json @@ -0,0 +1,362 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "function_name": "register_issuer", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + }, + { + "vec": [ + { + "symbol": "kyc" + } + ] + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "function_name": "set_vk", + "args": [ + { + "symbol": "kyc" + }, + { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": { + "vec": [ + { + "symbol": "Issuer" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "credential_types" + }, + "val": { + "vec": [ + { + "symbol": "kyc" + } + ] + } + }, + { + "key": { + "symbol": "pubkey" + }, + "val": { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 2073600 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerList" + } + ] + }, + "val": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "vec": [ + { + "symbol": "Vk" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + } + }, + "ext": "v0" + }, + "live_until": 3110400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerRegistry" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Verifier" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/contracts/proof_registry/test_snapshots/test/submit_proof_caps_ttl_at_network_max.1.json b/contracts/proof_registry/test_snapshots/test/submit_proof_caps_ttl_at_network_max.1.json new file mode 100644 index 00000000..ea789e53 --- /dev/null +++ b/contracts/proof_registry/test_snapshots/test/submit_proof_caps_ttl_at_network_max.1.json @@ -0,0 +1,486 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "function_name": "register_issuer", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + }, + { + "vec": [ + { + "symbol": "kyc" + } + ] + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "function_name": "set_vk", + "args": [ + { + "symbol": "kyc" + }, + { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "submit_proof", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "symbol": "kyc" + }, + { + "bytes": "0000000000000000000000000000000000000000000000042ab5d6d1986846cf00000000000000000000000000000000000000000000000b75c020998797da780000000000000000000000000000000000000000000000005a107acb64952eca000000000000000000000000000000000000000000000000000031e97a575e9d00000000000000000000000000000000000000000000000b5666547acf8bd5a400000000000000000000000000000000000000000000000c410db10a01750aeb00000000000000000000000000000000000000000000000d722669117f9758a4000000000000000000000000000000000000000000000000000178cbf4206471000000000000000000000000000000000000000000000000e91b8a11e7842c38000000000000000000000000000000000000000000000007fd51009034b3357f000000000000000000000000000000000000000000000009889939f81e9c74020000000000000000000000000000000000000000000000000000f94656a2ca48000000000000000000000000000000000000000000000006fb128b46c1ddb67f0000000000000000000000000000000000000000000000093fe27776f50224bd000000000000000000000000000000000000000000000004a0c80c0da527a0810000000000000000000000000000000000000000000000000001b52c2020d746000000000000000000000000000000c668d4d6ac42790ed217e8bf008e70917700000000000000000000000000000000000867ff44121bdb2c8e957bf07a6f4e0000000000000000000000000000003bd32ac024985233df1feb7caf4e31a07b0000000000000000000000000000000000224974cd8a468bfce1a301d4338a9b00000000000000000000000000000075c162ea8274d64c735bb04aef8dbc8e0100000000000000000000000000000000002fc1f2ab715b4caf9474e08cdc207400000000000000000000000000000016ffb4cba0d2c022b8ac46f0e5225dce98000000000000000000000000000000000012ca347a59d9dea7d7fa0260b9181e00000000000000000000000000000025bb805f2a91ef2e802c2527572e7bb552000000000000000000000000000000000029bd9f22b39e8ef3b48df31cc811100000000000000000000000000000005ac7f8200290a7baad69e6a7e54fb385a900000000000000000000000000000000002d6aaafe1493f87f84892ab8763860000000000000000000000000000000cd77eecaa6bc7b38f7e3f4824d9c17192f00000000000000000000000000000000002aff4f8031db91518e3f6fb8cdc7560000000000000000000000000000009453a52cb6195aa2d66974f12791799b6b00000000000000000000000000000000002e524075a2bd0f1247ec1a196d4ebd00000000000000000000000000000022eb41ae79de0ddc2de85642c5bccf9e60000000000000000000000000000000000017fa5a9cfe617a9e1aaae3c01b0c19000000000000000000000000000000a81528671c531979d80aa169ba4ace202000000000000000000000000000000000002d5773db7711ee91a11bf99ca8b061000000000000000000000000000000fec39c1268598f3ad2421a49db7057936200000000000000000000000000000000002baacce67605b7df8eb53626c6e4d6000000000000000000000000000000b807ebcaf35c4bde0f2d1944ed7b4d3d9800000000000000000000000000000000001d54c17cd71d41dfaf7d4b9895613c000000000000000000000000000000f638fa13b162f29f87a972e060b16fdeea00000000000000000000000000000000000e8a45e73b184c62ec7688e4caf4b0000000000000000000000000000000efa9475f3d30256656a8313ebcf7115dc60000000000000000000000000000000000138e2b8e91fdcb10b9bef13e4cb619000000000000000000000000000000391727546150acd67f0d8feee7e265d87600000000000000000000000000000000002c99bd77dd8c0a1dd716cb42da2842000000000000000000000000000000c12a81ea5f4370007f7deab5d3a65bc2f70000000000000000000000000000000000181f7f9a361c20e1baff19924677691a251e01ac227137ffa82e49d6c9fd563e5a3187879449d8ccf5c85a613b6b35163f3071350f2ef1b8a8176caab75b06e9d9b6c0f22526b876ec2d398ec494cc0432ef0692755e657d225a64f4ec01db35482440852ddbae2861cb5ac3117c5511f0c48d9d9e66a5a75b4601255b1fb2285d3537299a7449cc7a4f446d36d91f1c20efdf80a1f180ac6562edcbc0eeee260128c237b289b9cdc22a118d4003010ac0a2b42e40c8290ec54b3578393d59a1e0c190886c48d0b4466d49ff4942470a3743ee3364f9705b42be011782a5aa8cdd7411c81d02314a611f27b67aab121d976295472d793eb3d9c3f2dc042ba84d1279e3e5dfb4ef0871bdf702681c030edd9d623cc7dbbf28829d1e9841418d6b95f00367a472657939205fbb9884bb127168f4fc60af7509e4386ea76d7c5ffcaa1fd7f40e43ba91e587db229225f125e3574ebb2db3f45265a09f31cc380747e23924777ddd10bafc5b2359d6e8891529dedcc60f4d5be7e2d2d9023d968a119c74c2ae189bb22055a77db2fa811c2c92ff06bd6cbbcda7a62d3139d53b1693c0c3b2c2d711142b4cbd8995f2a9de11d36f4b272adee4b9517c181a13e2bb405b00823d4b0a95420691ea8afd7bb924b86afd41c5e392dda8f7195f3ae8ce5f6b47df6e288a37f5cd34b0febb29f119c82df9fdfd87abd4222500bcef0685e0e9323e25a33adeb760f5ebdb04227f00607a108240f0ce211e93593895df259d7b956465d2654e2ffaa4ec412840980b4a3942c91703b60cf97a7f6a1289820aa8d72778a5ba3702ecaf84c7c20ac023c3bb5b66680dd56519a73c2341a9fcc8a6ff1ded82531f630b05538a6fae010d64fdc8d77b9cf3f33fcbb98dbcfc427ac27a18ad715985f2bdfec4e9c5ab1906e52d4f7c7a88dfcd599bf6a908afb31a29d1d045898689c8e8a6925a5821db238c93cc7fc74642eb8805fa9f23ee4a8394ed487d043dd35cba21b385465f391452c2917cf5c145ddfd925cc6b23f21dced22b3e196b3cca1667e38706254210a766773ccbb9eb60fe4b3f2a3f37dbb3e0e7e62987fcabdcdd34837ac2b47d710e77b556d514313831972a9f33ca4031f52da0e4535eac69d705bbe107f648b2c1653ac16f6048dc45e3c8add66f518a4b76b25ab23c842920c2d7b56f8b7922670098dff7440a788c12c6f6f6a5a1510ac74837e0d6b07081f2c22cf514652119a5c3ccf36213a88af1743ef5512912c7d3edc138b61db10b5f1e06592ec7b2c1a19a022b1e4741567a03a61c2acf8daacc89070ec00b97747a953fc0f964e14cd6cf2661d5ffa22d168cdb69d4d041ec52e68a4948b879d4f1b634e602df30a077a3fd0927983018dca75f4a753864035452a845b48b1f48066612794b9f12c98d207b443ac6abe62e9294eeee24887c1c8d24af4b1976e0850998d84fdfa26df16707b90ce81b88a181a7ba88d8cf481ec01b00ab6d90b706941304a486405a2ede7c50d20e609f5372397831d160f68e0b22c481ca2d92398b9247f5fc81efb620ae48d328ce0ada1b2a226dd739c994eab0e1a441d24e2daab56b5b1df116c07061e8599ed7172b12b686c1cd3836561485e3e64545d9114934fb7e6f90ff7b0d245e9e405a5a2b54e6f58b62a48017fef3d653c978bda7d35308ce2712a9773344d9a53823e9aedf866d345db50f7e4a1bf5744317c2f5635622a056b036a1f7881390ae3f1a459bd61b89ea02520c86333fb8661412b28699fddce2b29d1af4ccc032ce978d17b1b4e219a122c19a9bc7fac4e1bc7f58e183a1f55481ca3ce8f4c8957cf0a2c8deb6d3828dc9db4836c352126879c499f55b585cd7e2444955ac7886c5dc4892b2e42d177cb6d18ea0d2f3e63afdc238e3fab0083da12979ba75596539d9f68caaea43aa10621430f263cb28ddd078b8da4aa20f97b06a907f7c80b0eed57d684314d9f542dafb9140ea558f932c3e0df5ec532a1ee2f5add1cd1e06edb76574259c31ca89e1cfe871d828733ecc8f49caf7d0c501316f90390556174431f3ff9d8ce756d0018f3a1138df1847e72836eea362d20731cf7200baff850fb42fa1e2131d71c565f94f87ef63f70c7fc7404ba0db8774f15430a505785086392c5604befef5fd7d0c7ce2eaa8750d0293c35fc0caa76e72f30738a716296319f4c4d5e5f06387fa89dad1f84ffce3f5db5b898f3433f6d19f7312b747255e22e45b536854321ec5f5a5ec7c96d163ea65f0ae20af789ca2c9c9f126483b371102fd6e4e8ec3dedc31bd1f96f217b36248c614bffc8f3022ee1836381e8ac389e497defb603380e346bc9d9eb46c607f61be93ecc9802902074d8b921def6d50def4f31cf546f1849bfe48ab0e2240eda00009ce092b4530304f1ba93569cdc939a268864e58757ffc7dc94ea947c81343cf020edc820a42c5023544f9bcb7b8e8bd439606621abb3082e39eb9d7a8c9b67cedc580b14ff2dfba58fa7fee1ff9843f1ea68af8a54be1178e23df2886384a553206ea8cce7273613f7534fece7edf43500e7103ddb660e01737d4354eb0c607159f1a84d75067c31594f6b3861bdcb5b4fe23a1daf66e2a75ee704d0485d688e414498658603b40afd73979d9aee48f7a9e75a9e060806742c022000a448ea3124cf7b518400e9d050eca8744082e23511db385f2b0f7ab4103bca409fe76cd917d27986ad2bd70338549a774f9fe47d0f1580d68e16ae027fecded4589f636f454fc9938026d59cbd34af46ec688c16bb42047d522e4bfef0bcaea67fea0a4b2f45abceb4077cf654c76cf415848eeb0e5fc0dcb8da5b0cfe65c8234afc79962c47115bee292604868b26adac64ad5af67997d0aa41bfd154498157c94369109865428a510f9bc124bc164303c822ff84b81c21dbfcc1987ee5effc24d99dc14be67866b0180e97312624479bb3526e63eda76d4b2df49c58018769c13f7f305ebc6c6b2903b6422d7fdefc96caf50b02ea272850846e44225a26b651e5ab09ca7dbd0d6221eebf0e7deb6816f83d1d5398ec6b03dcb6a113be156855d96083541658485f2ac9deb94fd588233084f20e5d10e787a53ef8d5fce9c4c0a4c07b6dfd6ca8ce1e33b2ed6129406b19ca2e26657fdf555ddebcecc3a43ad8d1804bb8c1eef28b09745fd2b97f06b3d45af2e3e8f2966a19c3b4de7de996f2c69ce7a923a610e925cb3fd18cc78efea1fe3f6c29f8cab901f78c33febfbcbfd2d4a0295e6f7803004a17bce8af6da36fe52ddf723a96d5b24ab9f8d1dfa7aeafce5811e6b7e82007144311c41d42207554ba94e2e4cae4bc8d944f317929ace53ed9cd040b092821724594f55ab3c74397d2d775ab85f08b879d0da9330a1132a1910bca9de3e71826a0b96b0a9470dbc0c3fefe3c797f33ada63ab17d21316676de0ec7617dbb24576776f4abc1286acf7ef57ce136c7dae83050dbf801c405680ba16ce919312833bf1046e517e3ecb47bd93ade7558eba45faee153e2d3fbcce7ba73493d4f0908bfcd6e145901d382c8076d597521c29684749ab5cbf86722af11c9ac45700fb0a7776a559a38f8b79b98e721a44cf34ec397cf25e37f4d69d24a0381b4ab0264f3b2574d5256a562f2e7d4473f98eaf405cc7748b78db8263aec85e0adce0325a7dc66e47df8f7f96f7bc726ed5ef1ed6ed835070ff5c4fa4e7e6baf60c025434b092aa40904fe8d8e457c630cca3754ab8d728a09031936c3edf6972ddf1b3cc1ed955ab2d37db4ac96699b83e88a2bf1e4f874f17fa0d1167f1c84e1300be1951ac183e4c81993c4341f415170ce8229ce54d51e7f53b41873637d213424b2d71e573942625a6e0f8b938c3120b1faa0f29902522e3d361a6c41a912952da85f74e4e9a7e48b8955ab3809827ab2c018094341689e50e84027e1b13b610508084409dae1d12c82c738d2b5c5b48dc4a035c1d69c1315c2bfcfb925859b05760c252778372a8befa84a1b8a2a068ba7f29619962e7840a790c38370517d227e3dfa0c3dba92c62c8e276a71f40976a3fb9cce730bc5d0ab548485c758270a6c696530c8b60e16f520f4d6164222a20b3cebc57c9942421525b88cedefa40be42370d2b9b6c47ccd91c10ea1c46d2b26f9c6e44492f129c1c5326fb27ccc1de11e12035ce0acd560aeaf1203c87f650ab05005558b379ce178f333deaa1c3018d8193a5dbf672b2f50169f1eb6a1097e6d506f84b2efb472f5860c0d598921d4e761aa9b9967fb62e2cef3bd4b5bd2a703fc279a0936ecf5aa064b8620490e2c8f6d9643bf5e01e326923798a6d7a2a40f0567e8f5b4e9ca489627e402c200366756e777fe7f694ea2799942fb51bbd79b2126535ab16343ee64ec0b60cf0f236dd45d70510e83f9f8967af83fe7c4c822adaf600e7d0b9f5229c42430a2069fa10fc4fc083b586c1e90837d8fc5cdf2a3d7364402e6dd2ba6dec497701c0e0d3d7fd4fd27dfa4b691071073f1ee48617a5f3e6b98aace78b7883fa65f0924b8fc2e95e6a46760aadeb80e8beb0921fa6d7db7b3a40f219ff540a076214b1e1e21e203ce766ac5c3c70871e926c42f5276e2346298a59605d3da04c588372cb6a141640ec881defba390f4f56a64aa08c7b7c49ce693b72cda6a28dcc6c80d009d5f21ad56d1e003200487d9e984767e18dc3d46db91806630c6659d42660e1f6462d0a9fd2c7e456dfd281cbcee7eae84e42e74e1908d8764a0fd848b7912995904b97b4d9d435a128d68495d92f41d88b835c9321e99fb7337daedbcf10ba51a3df184f4dd900c7ec01431a3cc8aaa24109a99a5bbdca39d90fb5b8a1927264e6d3ddf61db6b8fe85d3a67679214219459b84cbc240f3ea393e0dff6a30b7a2b9b396b887849f258eacb812af59af2096a7d294d2823a29610c4d065d621aea41bb5123e4d747df45644cf617faf6832908d14f48248fd48e231dd7ff21ff46341060e0f1b06b5b373929b1f5b05111a326b522ac6f40e87085f17bab10d51d9f8057dd8b9f961db0cddb22e337b42357a0a78ac47ce551484bee2f8842fe332a0ae767b72fe4a96d296f3275425734625da717302512a86aed471df6d27d6618b65235d2dfee2e13906b6e2889272bb2fb1fe004bfeda8ad7bc585457056f533089bb30e8dacb959feb8545ac9b0f2af7fd85d54c1ef31641319da4a615eaacd6bbce09e3330bfbe6998594a5d428d11933acc446f2ed4d85ee82323b0315d511e2ba34303a632a0d454a89291bf18e8fb83b038e6af073fc080daf5a08faa205816d943a4b043ca5d64c8d3761543bf17226a25b4e92dcaeaa9d883320f263427023909059405a2eb5f7124535095480ebaf7939d6a2ac7dd75e481e2fe64b64ca5644a73be47ee45433f31da5e8bd33eeca235b52a20b328f8ee2d5005133bb7fe254f6a8c02a0302c392e66054acc900ede95817e538512b9837700c1da2b3d2ea617946f2e9b61b00ef73e0827a3893e3ddf460590f106ac0e4e219d099c27c1770e42eeae1c2dcb9db56774264d435739d957807fde6c77c60962c37ac9ab095449ebc0e4ae51ffd8003d7b81d18c6ed880bf0c51b8d26f2ffca1252530ca0ff9bf0c7d12d4ee10448b3e7ec97709bf64d0ea5fb1124d7de425611585f80829ea47dc5095dfd38d01ffc8aef4ccaad02fc463684a19d7f416c7e044e3104dc47241f73a8f43ab922cf2df406f2adb3bbc23a2073560e7660cfad173a40fcc3ffeb36052ea3917c7e27d43e474aa8a37a3dfea87026eb5881d7550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002687d678007548664308a56028ea8040809f099b56f4d494f9b825eb107ac4aa17be69023dca6ce6fa11f2efceb1cb0136391d87864f6891ecc4c2e1083ad5ff21a2422b1f67bcf81b75eb7b9b39bf6da97953330a50ffa88724ae6ff2d1e5da1b5b410c852cb9eb3625c9ae93a39594def83a159b7b286af9d849c4d1c6834a26ab7e7c666e2d2ad653c71f9d8da32fed2460470dbbcf812303f3b4e9614b0b2df84c7fa62bb94e31c8d1f4a7c005f89a4a5ae87c58eb6f79dcdf75f11d10940992870caef41275bc532c272dd7b019fa195281e9068c7cbeff1f7b3994928c001cafcfabd33712ece2285d73cd92057e88bc0d27cad24a43e08150a7a554e40f8c9caeb5dc7ada91603569873a0e3891b5bf90edf5c9ae5006aa632e48d71025049e757a22d70fbbe2f7ed3497c3fd356f3074b04cf91f22d7839eb32323490a101494eba0872e9beb3fa5eb84510e736da3fc20c83756c0c42a4f4a28e1de1e200a31aca3d2d9d59f0423daeab2bd1b7ffa61d47e863f59ac2ec4720e5889149892f23423ebd8774f74913e760789eb2ae91d576fe56f140d96b6386af73c0858fbaad55c63417b72320ac56f3fffa9d10735f72ee0d5a6aaface8db9f608199661ca9a06aa67558118f45b12a7f766b0fea15f6900855bc29d93adfc2e582e6abdfb2ae7078d52de4128ba9b4add73ae83746930de87e65fa6b69a56720b0a2b31ac8c194025b49043078bb98f22f2563a6436c75119573b63d5369b3f2a1e16e9a99453521568e326a5590f8e5fb064e33dfd6688975f405ef7b203941e2cae65dbc09772a0d882f6b8a1cf1c48dbdda31d8ef33823ebf83c28dbe61e941ad38250e1a1e0ff32b1195809c59d1df79debe97ad19504d5c1128d0d0368471ac748974e33057e30e57771870db768ba53db52c0247eb4808887420e5d251e1e75f3c14d1957dfca4b9d7c8a0574166a264e0d8fb745d39d4632b91714bbf41589714a5052f6dc7f1a852ee11d5b4b4cdc13569e9b72d6f02492793480c8ad100fb373c93812b644ec1b4593fda1f518d94a06f27213a63955a044d130abf71221a2ab927f227f4b60251098a7422d5e6c2419f312de0391d66d0ff28a662803bc1106dd0fb29d88dd70ba192f66f38b578e6c072497c0a36e017215dbe1cd0c4a16d200a1521061b3498799b0a326d07f0c227d879c1fc4378d4db91aa63a2bd2a8214d5f475306f0eedd9754ff8e531e21a2b66dfd173adfe2b36062ca2317059a4c010bfbbe8bec945c7f442ee1bb63a91c7ca9af6151dcbfdb55d93e5c29570fb5b55d74fa78280f3420708ed9bc04734dd05404bade19e02ea8641abe1bfc1658859d940e41f22504c998c182578b57ae0659ab5ec3bcd8568953c48309d4d5b236c9a8372ce5d2e3c77bd764d14e364a270b569835f4c43854886f1c02a11a00768fb688bfb5e20e9d16446db4808e53fbdbb496cc91f4a69341330e290845386ae097cff4c55f06259f359c74c02b84c21a6b91d3cf828a16b374131567743ce58013ac35106640a16294712fa8e964d3bfcfeced0f8c65cd3b8e100af00d16a89069d42cee1155327102d711417716281a5927ce6c067908dcd73d1060f952b088839c0a4b79c27c5aac4b3dccec05a24d3f095bd57e2265aecf1f0e0539d13efc4364e914463a68c48e0a7155cda8f48653bec651a334f14e826f2c8e3f8b901423bdaf7c60ac79a99f975bf0104f2da2ee7fae06d393f7d42df0297e9c6bd70382da06e3c3ad81d6da82603dcd60974138e2a6ca552d1e0d71dd0000000000000000000000000000003d570ce256c23b2ad24b2d1a6215c62b63000000000000000000000000000000000000e1828c6c687a505897c01b7acab30000000000000000000000000000004052eaf295668d87719c907b1831328aa1000000000000000000000000000000000014d32b62cee88718b756135b686d86000000000000000000000000000000448aedf93c2e0c117564e7518486928367000000000000000000000000000000000007f3029dfc03a3ad53daea491839140000000000000000000000000000000cc0ec2dab0d1a2e2933219e34cf5d215200000000000000000000000000000000002c6d8fdd9d1328e4feea86d5aae6a6000000000000000000000000000000f1d9603adad50b54e8168c20d21c57e8f5000000000000000000000000000000000009a1666e5d2c94df44420fddfc1d9300000000000000000000000000000016304112dc77e7370494489ae6fad7494a00000000000000000000000000000000001e0cd43ecbe68cbfa151375f674027000000000000000000000000000000ff117245eccde53514c7a4bd521a50e4a500000000000000000000000000000000002c7de78973c85d98f4371e01baedce00000000000000000000000000000025441f9158e4740c49200f84c0c3a7117900000000000000000000000000000000001d9664efe5c5403f750b713d8f3e1e000000000000000000000000000000e5e8bc089af9f7b200d566947a115be30000000000000000000000000000000000002b812d3f40180596f47ae9a044b907000000000000000000000000000000f8e8d56705de9e07d985df07b92030101700000000000000000000000000000000002aeae3bb018acfa6c5f61a8c2303110000000000000000000000000000000084c88331aba8860ead64dd9600e984dc00000000000000000000000000000000001efab6e9214d5bc576af794baab94200000000000000000000000000000059e5e4f8fff452f1f939979d57da5fec8a000000000000000000000000000000000013b4dc2f2d9fd511c64b885c124ecc0000000000000000000000000000000be3036bdbcbc6f4ffbefd36862db6ee7f000000000000000000000000000000000011ac4ff7b6f86fec9f35f4cefbe14e00000000000000000000000000000047ff5abfc2f607bde31992ac49944e69af00000000000000000000000000000000002e26e5253123ed2efdb5e72344675c0000000000000000000000000000008af36cd13e8c5cedc34652756bcb97e2d20000000000000000000000000000000000022fbc23b46c99982d0fdd7bf0a463000000000000000000000000000000a88b35c7c5b8496121795580b2cf303a3900000000000000000000000000000000000e62098150848c9c50d1d108879d2d00000000000000000000000000000084a1de51a145e76f80fadfb0a2d710938e0000000000000000000000000000000000023e87673f67a08bd9b18e3e4ad6f100000000000000000000000000000064b0978992c818a7ae3c7554826eddd11b0000000000000000000000000000000000156a1d4e8a8c46151b416edc357a1a0000000000000000000000000000005e142a638512103b5cf5ecfba828a2e05f000000000000000000000000000000000012579dfd8b8bf5d0a000e1e622d9c40000000000000000000000000000007f0e2ddf4530acb880d1b58d950672cb620000000000000000000000000000000000272b0b2cb24861e21c4346c0e271be000000000000000000000000000000ead0e5aab30bb29da5006fc9f4f3507ffb00000000000000000000000000000000000f7777c25e5526a096cfbf20bf4c9200000000000000000000000000000035f7a1078c6be0790a1318e656f8507fc500000000000000000000000000000000002d9ef31aa24a79433950724d43a5eb000000000000000000000000000000180c8e6b90c05a03fb36b7a1af1176bf1600000000000000000000000000000000001d87bc20a98bb0733b468b966b4ddd000000000000000000000000000000ca6942231c037cfefa8299117e724845ef00000000000000000000000000000000000336b6e3c2bf8df9028f7eff9ff30e000000000000000000000000000000780c64a3698dec2a3ce40608afcacb8b5a00000000000000000000000000000000000ea784714d3b7ca565dade4653c91d000000000000000000000000000000efefc3d4ef3867739236468150d7b5fe150000000000000000000000000000000000190d6182bea8d1c0874b3117bf02cd0000000000000000000000000000009a14adf2fae32810ba5b81a98ef2849ffb00000000000000000000000000000000000a95da0274e9a34a9d9c042876765d0000000000000000000000000000000f12d78757fa6157f21a6d1ae6bf206f11000000000000000000000000000000000005d03a527d303c76bce884e7ce64410000000000000000000000000000006e9ed3efac28e499e8451c34b34ee48b4f00000000000000000000000000000000002439021c7451ae7acb37ae246f766d00000000000000000000000000000015974d942818b3d1d97f8ad792623f0eec00000000000000000000000000000000002e67cbf940ca7e3c3b149f226f9f110000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002ea6205cddd4777da8b2d1612569eaa982d0a7e7ef3bcca312cbfc1ccecfdaa3053d7c10026ba41fb05faa66267a6732ca5bf2bb4f518f8e52822faa3492774210c6653865535e5f20143de24bced638b3036efe46103ffb73046c4ec3b12f37221ff68a9c79f63b9c685bed1270f345bfe8383e1d5d1680d31dd9652e59f3211f9b4c114812ef5035ed5ac9582949a9cb86780830ae0b0a30dd50bf003b32410b67986e7ed2931a19e77805c54c21d9a406cd812997112cce29ac62b274d6011c4b6c9e85c4cb19168c59cd34525c95a64fab895498ff69b69fa1bbf620c1e42953d78f8e8327560d00e9394ab8656f3e9b2cf770e576a8ae4ff89c317005fd205d8ed9756b6439882bbe822cb75ff19c1da57ca9327ded38311886da40cc94204baf682ed630e2c6c2eb98ce9f8574e8cadc803ff13d6f1f2313023ca5cd962827487dbd9b2aa016d63e863208106469e968be488246fec017578c5970526206ef8ed8618002b88c5934131316249e8fe16e365ffd164f04df2b15fcd1be69285fdf72faf66601c51558ef89fc9f867a1639dd4b481d74058225b5d34780c714bf0265c7696a22a794e56b9f24a1ff9c25fcbb0f29ae98802212c333cfa4620c81d6b68b9c5d7e9fb658c3ed9c4743ba9dc2945bb26d393713ed870fe5a4180923343536fbba55e9b6e111e57b9694ab3fc987987a2d4dfcccd30a7b24650500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000067d2fa2d8f0fd6a6e0fae652aee76ca54b00000000000000000000000000000000002cbe4fb5b147145ddf14ec9c5e02a200000000000000000000000000000042b86775f92a77263b45801644a4d425b30000000000000000000000000000000000189693d9dbc7d87edc97386ec7a259000000000000000000000000000000f1f79ec21b2d4fc04b2ce39ccb0515da9300000000000000000000000000000000001967c6a54631183e1baacf37bbcd82000000000000000000000000000000a4ca2e1a19bba9e981be9019f9c0e24ede0000000000000000000000000000000000248753f92cb50ceca5ca8a9532a6b7" + }, + { + "bytes": "289538cac0e6b6b0e600b7d321883060ab0046854d95a0d1a501c11bc5d2499a000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000e9000000000000000000000000000000000000000000000000000000000000008b0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000c2000000000000000000000000000000000000000000000000000000000000005b00000000000000000000000000000000000000000000000000000000000000a6000000000000000000000000000000000000000000000000000000000000003e0000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000004f00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005900000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000005a00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000770000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000000000000000000000000000003b00000000000000000000000000000000000000000000000000000000000000c40000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000fb000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000c4000000000000000000000000000000000000000000000000000000000000005800000000000000000000000000000000000000000000000000000000000000670000000000000000000000000000000000000000000000000000000000000075000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000bc000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000017000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a80000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000007d00000000000000000000000000000000000000000000000000000000000000d5000000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000aa0000000000000000000000000000000000000000000000000000000000000037000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000065" + }, + { + "u64": "864000000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": { + "vec": [ + { + "symbol": "Issuer" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "credential_types" + }, + "val": { + "vec": [ + { + "symbol": "kyc" + } + ] + } + }, + { + "key": { + "symbol": "pubkey" + }, + "val": { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 2073600 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerList" + } + ] + }, + "val": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "vec": [ + { + "symbol": "Vk" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + } + }, + "ext": "v0" + }, + "live_until": 3110400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "vec": [ + { + "symbol": "Proof" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "expiry" + }, + "val": { + "u64": "864000000" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "threshold" + }, + "val": "void" + }, + { + "key": { + "symbol": "verified_at" + }, + "val": { + "u64": "0" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerRegistry" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Verifier" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/contracts/proof_registry/test_snapshots/test/submit_proof_extends_ttl_to_cover_long_expiry.1.json b/contracts/proof_registry/test_snapshots/test/submit_proof_extends_ttl_to_cover_long_expiry.1.json new file mode 100644 index 00000000..d48e2153 --- /dev/null +++ b/contracts/proof_registry/test_snapshots/test/submit_proof_extends_ttl_to_cover_long_expiry.1.json @@ -0,0 +1,486 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "function_name": "register_issuer", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + }, + { + "vec": [ + { + "symbol": "kyc" + } + ] + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "function_name": "set_vk", + "args": [ + { + "symbol": "kyc" + }, + { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "submit_proof", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "symbol": "kyc" + }, + { + "bytes": "0000000000000000000000000000000000000000000000042ab5d6d1986846cf00000000000000000000000000000000000000000000000b75c020998797da780000000000000000000000000000000000000000000000005a107acb64952eca000000000000000000000000000000000000000000000000000031e97a575e9d00000000000000000000000000000000000000000000000b5666547acf8bd5a400000000000000000000000000000000000000000000000c410db10a01750aeb00000000000000000000000000000000000000000000000d722669117f9758a4000000000000000000000000000000000000000000000000000178cbf4206471000000000000000000000000000000000000000000000000e91b8a11e7842c38000000000000000000000000000000000000000000000007fd51009034b3357f000000000000000000000000000000000000000000000009889939f81e9c74020000000000000000000000000000000000000000000000000000f94656a2ca48000000000000000000000000000000000000000000000006fb128b46c1ddb67f0000000000000000000000000000000000000000000000093fe27776f50224bd000000000000000000000000000000000000000000000004a0c80c0da527a0810000000000000000000000000000000000000000000000000001b52c2020d746000000000000000000000000000000c668d4d6ac42790ed217e8bf008e70917700000000000000000000000000000000000867ff44121bdb2c8e957bf07a6f4e0000000000000000000000000000003bd32ac024985233df1feb7caf4e31a07b0000000000000000000000000000000000224974cd8a468bfce1a301d4338a9b00000000000000000000000000000075c162ea8274d64c735bb04aef8dbc8e0100000000000000000000000000000000002fc1f2ab715b4caf9474e08cdc207400000000000000000000000000000016ffb4cba0d2c022b8ac46f0e5225dce98000000000000000000000000000000000012ca347a59d9dea7d7fa0260b9181e00000000000000000000000000000025bb805f2a91ef2e802c2527572e7bb552000000000000000000000000000000000029bd9f22b39e8ef3b48df31cc811100000000000000000000000000000005ac7f8200290a7baad69e6a7e54fb385a900000000000000000000000000000000002d6aaafe1493f87f84892ab8763860000000000000000000000000000000cd77eecaa6bc7b38f7e3f4824d9c17192f00000000000000000000000000000000002aff4f8031db91518e3f6fb8cdc7560000000000000000000000000000009453a52cb6195aa2d66974f12791799b6b00000000000000000000000000000000002e524075a2bd0f1247ec1a196d4ebd00000000000000000000000000000022eb41ae79de0ddc2de85642c5bccf9e60000000000000000000000000000000000017fa5a9cfe617a9e1aaae3c01b0c19000000000000000000000000000000a81528671c531979d80aa169ba4ace202000000000000000000000000000000000002d5773db7711ee91a11bf99ca8b061000000000000000000000000000000fec39c1268598f3ad2421a49db7057936200000000000000000000000000000000002baacce67605b7df8eb53626c6e4d6000000000000000000000000000000b807ebcaf35c4bde0f2d1944ed7b4d3d9800000000000000000000000000000000001d54c17cd71d41dfaf7d4b9895613c000000000000000000000000000000f638fa13b162f29f87a972e060b16fdeea00000000000000000000000000000000000e8a45e73b184c62ec7688e4caf4b0000000000000000000000000000000efa9475f3d30256656a8313ebcf7115dc60000000000000000000000000000000000138e2b8e91fdcb10b9bef13e4cb619000000000000000000000000000000391727546150acd67f0d8feee7e265d87600000000000000000000000000000000002c99bd77dd8c0a1dd716cb42da2842000000000000000000000000000000c12a81ea5f4370007f7deab5d3a65bc2f70000000000000000000000000000000000181f7f9a361c20e1baff19924677691a251e01ac227137ffa82e49d6c9fd563e5a3187879449d8ccf5c85a613b6b35163f3071350f2ef1b8a8176caab75b06e9d9b6c0f22526b876ec2d398ec494cc0432ef0692755e657d225a64f4ec01db35482440852ddbae2861cb5ac3117c5511f0c48d9d9e66a5a75b4601255b1fb2285d3537299a7449cc7a4f446d36d91f1c20efdf80a1f180ac6562edcbc0eeee260128c237b289b9cdc22a118d4003010ac0a2b42e40c8290ec54b3578393d59a1e0c190886c48d0b4466d49ff4942470a3743ee3364f9705b42be011782a5aa8cdd7411c81d02314a611f27b67aab121d976295472d793eb3d9c3f2dc042ba84d1279e3e5dfb4ef0871bdf702681c030edd9d623cc7dbbf28829d1e9841418d6b95f00367a472657939205fbb9884bb127168f4fc60af7509e4386ea76d7c5ffcaa1fd7f40e43ba91e587db229225f125e3574ebb2db3f45265a09f31cc380747e23924777ddd10bafc5b2359d6e8891529dedcc60f4d5be7e2d2d9023d968a119c74c2ae189bb22055a77db2fa811c2c92ff06bd6cbbcda7a62d3139d53b1693c0c3b2c2d711142b4cbd8995f2a9de11d36f4b272adee4b9517c181a13e2bb405b00823d4b0a95420691ea8afd7bb924b86afd41c5e392dda8f7195f3ae8ce5f6b47df6e288a37f5cd34b0febb29f119c82df9fdfd87abd4222500bcef0685e0e9323e25a33adeb760f5ebdb04227f00607a108240f0ce211e93593895df259d7b956465d2654e2ffaa4ec412840980b4a3942c91703b60cf97a7f6a1289820aa8d72778a5ba3702ecaf84c7c20ac023c3bb5b66680dd56519a73c2341a9fcc8a6ff1ded82531f630b05538a6fae010d64fdc8d77b9cf3f33fcbb98dbcfc427ac27a18ad715985f2bdfec4e9c5ab1906e52d4f7c7a88dfcd599bf6a908afb31a29d1d045898689c8e8a6925a5821db238c93cc7fc74642eb8805fa9f23ee4a8394ed487d043dd35cba21b385465f391452c2917cf5c145ddfd925cc6b23f21dced22b3e196b3cca1667e38706254210a766773ccbb9eb60fe4b3f2a3f37dbb3e0e7e62987fcabdcdd34837ac2b47d710e77b556d514313831972a9f33ca4031f52da0e4535eac69d705bbe107f648b2c1653ac16f6048dc45e3c8add66f518a4b76b25ab23c842920c2d7b56f8b7922670098dff7440a788c12c6f6f6a5a1510ac74837e0d6b07081f2c22cf514652119a5c3ccf36213a88af1743ef5512912c7d3edc138b61db10b5f1e06592ec7b2c1a19a022b1e4741567a03a61c2acf8daacc89070ec00b97747a953fc0f964e14cd6cf2661d5ffa22d168cdb69d4d041ec52e68a4948b879d4f1b634e602df30a077a3fd0927983018dca75f4a753864035452a845b48b1f48066612794b9f12c98d207b443ac6abe62e9294eeee24887c1c8d24af4b1976e0850998d84fdfa26df16707b90ce81b88a181a7ba88d8cf481ec01b00ab6d90b706941304a486405a2ede7c50d20e609f5372397831d160f68e0b22c481ca2d92398b9247f5fc81efb620ae48d328ce0ada1b2a226dd739c994eab0e1a441d24e2daab56b5b1df116c07061e8599ed7172b12b686c1cd3836561485e3e64545d9114934fb7e6f90ff7b0d245e9e405a5a2b54e6f58b62a48017fef3d653c978bda7d35308ce2712a9773344d9a53823e9aedf866d345db50f7e4a1bf5744317c2f5635622a056b036a1f7881390ae3f1a459bd61b89ea02520c86333fb8661412b28699fddce2b29d1af4ccc032ce978d17b1b4e219a122c19a9bc7fac4e1bc7f58e183a1f55481ca3ce8f4c8957cf0a2c8deb6d3828dc9db4836c352126879c499f55b585cd7e2444955ac7886c5dc4892b2e42d177cb6d18ea0d2f3e63afdc238e3fab0083da12979ba75596539d9f68caaea43aa10621430f263cb28ddd078b8da4aa20f97b06a907f7c80b0eed57d684314d9f542dafb9140ea558f932c3e0df5ec532a1ee2f5add1cd1e06edb76574259c31ca89e1cfe871d828733ecc8f49caf7d0c501316f90390556174431f3ff9d8ce756d0018f3a1138df1847e72836eea362d20731cf7200baff850fb42fa1e2131d71c565f94f87ef63f70c7fc7404ba0db8774f15430a505785086392c5604befef5fd7d0c7ce2eaa8750d0293c35fc0caa76e72f30738a716296319f4c4d5e5f06387fa89dad1f84ffce3f5db5b898f3433f6d19f7312b747255e22e45b536854321ec5f5a5ec7c96d163ea65f0ae20af789ca2c9c9f126483b371102fd6e4e8ec3dedc31bd1f96f217b36248c614bffc8f3022ee1836381e8ac389e497defb603380e346bc9d9eb46c607f61be93ecc9802902074d8b921def6d50def4f31cf546f1849bfe48ab0e2240eda00009ce092b4530304f1ba93569cdc939a268864e58757ffc7dc94ea947c81343cf020edc820a42c5023544f9bcb7b8e8bd439606621abb3082e39eb9d7a8c9b67cedc580b14ff2dfba58fa7fee1ff9843f1ea68af8a54be1178e23df2886384a553206ea8cce7273613f7534fece7edf43500e7103ddb660e01737d4354eb0c607159f1a84d75067c31594f6b3861bdcb5b4fe23a1daf66e2a75ee704d0485d688e414498658603b40afd73979d9aee48f7a9e75a9e060806742c022000a448ea3124cf7b518400e9d050eca8744082e23511db385f2b0f7ab4103bca409fe76cd917d27986ad2bd70338549a774f9fe47d0f1580d68e16ae027fecded4589f636f454fc9938026d59cbd34af46ec688c16bb42047d522e4bfef0bcaea67fea0a4b2f45abceb4077cf654c76cf415848eeb0e5fc0dcb8da5b0cfe65c8234afc79962c47115bee292604868b26adac64ad5af67997d0aa41bfd154498157c94369109865428a510f9bc124bc164303c822ff84b81c21dbfcc1987ee5effc24d99dc14be67866b0180e97312624479bb3526e63eda76d4b2df49c58018769c13f7f305ebc6c6b2903b6422d7fdefc96caf50b02ea272850846e44225a26b651e5ab09ca7dbd0d6221eebf0e7deb6816f83d1d5398ec6b03dcb6a113be156855d96083541658485f2ac9deb94fd588233084f20e5d10e787a53ef8d5fce9c4c0a4c07b6dfd6ca8ce1e33b2ed6129406b19ca2e26657fdf555ddebcecc3a43ad8d1804bb8c1eef28b09745fd2b97f06b3d45af2e3e8f2966a19c3b4de7de996f2c69ce7a923a610e925cb3fd18cc78efea1fe3f6c29f8cab901f78c33febfbcbfd2d4a0295e6f7803004a17bce8af6da36fe52ddf723a96d5b24ab9f8d1dfa7aeafce5811e6b7e82007144311c41d42207554ba94e2e4cae4bc8d944f317929ace53ed9cd040b092821724594f55ab3c74397d2d775ab85f08b879d0da9330a1132a1910bca9de3e71826a0b96b0a9470dbc0c3fefe3c797f33ada63ab17d21316676de0ec7617dbb24576776f4abc1286acf7ef57ce136c7dae83050dbf801c405680ba16ce919312833bf1046e517e3ecb47bd93ade7558eba45faee153e2d3fbcce7ba73493d4f0908bfcd6e145901d382c8076d597521c29684749ab5cbf86722af11c9ac45700fb0a7776a559a38f8b79b98e721a44cf34ec397cf25e37f4d69d24a0381b4ab0264f3b2574d5256a562f2e7d4473f98eaf405cc7748b78db8263aec85e0adce0325a7dc66e47df8f7f96f7bc726ed5ef1ed6ed835070ff5c4fa4e7e6baf60c025434b092aa40904fe8d8e457c630cca3754ab8d728a09031936c3edf6972ddf1b3cc1ed955ab2d37db4ac96699b83e88a2bf1e4f874f17fa0d1167f1c84e1300be1951ac183e4c81993c4341f415170ce8229ce54d51e7f53b41873637d213424b2d71e573942625a6e0f8b938c3120b1faa0f29902522e3d361a6c41a912952da85f74e4e9a7e48b8955ab3809827ab2c018094341689e50e84027e1b13b610508084409dae1d12c82c738d2b5c5b48dc4a035c1d69c1315c2bfcfb925859b05760c252778372a8befa84a1b8a2a068ba7f29619962e7840a790c38370517d227e3dfa0c3dba92c62c8e276a71f40976a3fb9cce730bc5d0ab548485c758270a6c696530c8b60e16f520f4d6164222a20b3cebc57c9942421525b88cedefa40be42370d2b9b6c47ccd91c10ea1c46d2b26f9c6e44492f129c1c5326fb27ccc1de11e12035ce0acd560aeaf1203c87f650ab05005558b379ce178f333deaa1c3018d8193a5dbf672b2f50169f1eb6a1097e6d506f84b2efb472f5860c0d598921d4e761aa9b9967fb62e2cef3bd4b5bd2a703fc279a0936ecf5aa064b8620490e2c8f6d9643bf5e01e326923798a6d7a2a40f0567e8f5b4e9ca489627e402c200366756e777fe7f694ea2799942fb51bbd79b2126535ab16343ee64ec0b60cf0f236dd45d70510e83f9f8967af83fe7c4c822adaf600e7d0b9f5229c42430a2069fa10fc4fc083b586c1e90837d8fc5cdf2a3d7364402e6dd2ba6dec497701c0e0d3d7fd4fd27dfa4b691071073f1ee48617a5f3e6b98aace78b7883fa65f0924b8fc2e95e6a46760aadeb80e8beb0921fa6d7db7b3a40f219ff540a076214b1e1e21e203ce766ac5c3c70871e926c42f5276e2346298a59605d3da04c588372cb6a141640ec881defba390f4f56a64aa08c7b7c49ce693b72cda6a28dcc6c80d009d5f21ad56d1e003200487d9e984767e18dc3d46db91806630c6659d42660e1f6462d0a9fd2c7e456dfd281cbcee7eae84e42e74e1908d8764a0fd848b7912995904b97b4d9d435a128d68495d92f41d88b835c9321e99fb7337daedbcf10ba51a3df184f4dd900c7ec01431a3cc8aaa24109a99a5bbdca39d90fb5b8a1927264e6d3ddf61db6b8fe85d3a67679214219459b84cbc240f3ea393e0dff6a30b7a2b9b396b887849f258eacb812af59af2096a7d294d2823a29610c4d065d621aea41bb5123e4d747df45644cf617faf6832908d14f48248fd48e231dd7ff21ff46341060e0f1b06b5b373929b1f5b05111a326b522ac6f40e87085f17bab10d51d9f8057dd8b9f961db0cddb22e337b42357a0a78ac47ce551484bee2f8842fe332a0ae767b72fe4a96d296f3275425734625da717302512a86aed471df6d27d6618b65235d2dfee2e13906b6e2889272bb2fb1fe004bfeda8ad7bc585457056f533089bb30e8dacb959feb8545ac9b0f2af7fd85d54c1ef31641319da4a615eaacd6bbce09e3330bfbe6998594a5d428d11933acc446f2ed4d85ee82323b0315d511e2ba34303a632a0d454a89291bf18e8fb83b038e6af073fc080daf5a08faa205816d943a4b043ca5d64c8d3761543bf17226a25b4e92dcaeaa9d883320f263427023909059405a2eb5f7124535095480ebaf7939d6a2ac7dd75e481e2fe64b64ca5644a73be47ee45433f31da5e8bd33eeca235b52a20b328f8ee2d5005133bb7fe254f6a8c02a0302c392e66054acc900ede95817e538512b9837700c1da2b3d2ea617946f2e9b61b00ef73e0827a3893e3ddf460590f106ac0e4e219d099c27c1770e42eeae1c2dcb9db56774264d435739d957807fde6c77c60962c37ac9ab095449ebc0e4ae51ffd8003d7b81d18c6ed880bf0c51b8d26f2ffca1252530ca0ff9bf0c7d12d4ee10448b3e7ec97709bf64d0ea5fb1124d7de425611585f80829ea47dc5095dfd38d01ffc8aef4ccaad02fc463684a19d7f416c7e044e3104dc47241f73a8f43ab922cf2df406f2adb3bbc23a2073560e7660cfad173a40fcc3ffeb36052ea3917c7e27d43e474aa8a37a3dfea87026eb5881d7550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002687d678007548664308a56028ea8040809f099b56f4d494f9b825eb107ac4aa17be69023dca6ce6fa11f2efceb1cb0136391d87864f6891ecc4c2e1083ad5ff21a2422b1f67bcf81b75eb7b9b39bf6da97953330a50ffa88724ae6ff2d1e5da1b5b410c852cb9eb3625c9ae93a39594def83a159b7b286af9d849c4d1c6834a26ab7e7c666e2d2ad653c71f9d8da32fed2460470dbbcf812303f3b4e9614b0b2df84c7fa62bb94e31c8d1f4a7c005f89a4a5ae87c58eb6f79dcdf75f11d10940992870caef41275bc532c272dd7b019fa195281e9068c7cbeff1f7b3994928c001cafcfabd33712ece2285d73cd92057e88bc0d27cad24a43e08150a7a554e40f8c9caeb5dc7ada91603569873a0e3891b5bf90edf5c9ae5006aa632e48d71025049e757a22d70fbbe2f7ed3497c3fd356f3074b04cf91f22d7839eb32323490a101494eba0872e9beb3fa5eb84510e736da3fc20c83756c0c42a4f4a28e1de1e200a31aca3d2d9d59f0423daeab2bd1b7ffa61d47e863f59ac2ec4720e5889149892f23423ebd8774f74913e760789eb2ae91d576fe56f140d96b6386af73c0858fbaad55c63417b72320ac56f3fffa9d10735f72ee0d5a6aaface8db9f608199661ca9a06aa67558118f45b12a7f766b0fea15f6900855bc29d93adfc2e582e6abdfb2ae7078d52de4128ba9b4add73ae83746930de87e65fa6b69a56720b0a2b31ac8c194025b49043078bb98f22f2563a6436c75119573b63d5369b3f2a1e16e9a99453521568e326a5590f8e5fb064e33dfd6688975f405ef7b203941e2cae65dbc09772a0d882f6b8a1cf1c48dbdda31d8ef33823ebf83c28dbe61e941ad38250e1a1e0ff32b1195809c59d1df79debe97ad19504d5c1128d0d0368471ac748974e33057e30e57771870db768ba53db52c0247eb4808887420e5d251e1e75f3c14d1957dfca4b9d7c8a0574166a264e0d8fb745d39d4632b91714bbf41589714a5052f6dc7f1a852ee11d5b4b4cdc13569e9b72d6f02492793480c8ad100fb373c93812b644ec1b4593fda1f518d94a06f27213a63955a044d130abf71221a2ab927f227f4b60251098a7422d5e6c2419f312de0391d66d0ff28a662803bc1106dd0fb29d88dd70ba192f66f38b578e6c072497c0a36e017215dbe1cd0c4a16d200a1521061b3498799b0a326d07f0c227d879c1fc4378d4db91aa63a2bd2a8214d5f475306f0eedd9754ff8e531e21a2b66dfd173adfe2b36062ca2317059a4c010bfbbe8bec945c7f442ee1bb63a91c7ca9af6151dcbfdb55d93e5c29570fb5b55d74fa78280f3420708ed9bc04734dd05404bade19e02ea8641abe1bfc1658859d940e41f22504c998c182578b57ae0659ab5ec3bcd8568953c48309d4d5b236c9a8372ce5d2e3c77bd764d14e364a270b569835f4c43854886f1c02a11a00768fb688bfb5e20e9d16446db4808e53fbdbb496cc91f4a69341330e290845386ae097cff4c55f06259f359c74c02b84c21a6b91d3cf828a16b374131567743ce58013ac35106640a16294712fa8e964d3bfcfeced0f8c65cd3b8e100af00d16a89069d42cee1155327102d711417716281a5927ce6c067908dcd73d1060f952b088839c0a4b79c27c5aac4b3dccec05a24d3f095bd57e2265aecf1f0e0539d13efc4364e914463a68c48e0a7155cda8f48653bec651a334f14e826f2c8e3f8b901423bdaf7c60ac79a99f975bf0104f2da2ee7fae06d393f7d42df0297e9c6bd70382da06e3c3ad81d6da82603dcd60974138e2a6ca552d1e0d71dd0000000000000000000000000000003d570ce256c23b2ad24b2d1a6215c62b63000000000000000000000000000000000000e1828c6c687a505897c01b7acab30000000000000000000000000000004052eaf295668d87719c907b1831328aa1000000000000000000000000000000000014d32b62cee88718b756135b686d86000000000000000000000000000000448aedf93c2e0c117564e7518486928367000000000000000000000000000000000007f3029dfc03a3ad53daea491839140000000000000000000000000000000cc0ec2dab0d1a2e2933219e34cf5d215200000000000000000000000000000000002c6d8fdd9d1328e4feea86d5aae6a6000000000000000000000000000000f1d9603adad50b54e8168c20d21c57e8f5000000000000000000000000000000000009a1666e5d2c94df44420fddfc1d9300000000000000000000000000000016304112dc77e7370494489ae6fad7494a00000000000000000000000000000000001e0cd43ecbe68cbfa151375f674027000000000000000000000000000000ff117245eccde53514c7a4bd521a50e4a500000000000000000000000000000000002c7de78973c85d98f4371e01baedce00000000000000000000000000000025441f9158e4740c49200f84c0c3a7117900000000000000000000000000000000001d9664efe5c5403f750b713d8f3e1e000000000000000000000000000000e5e8bc089af9f7b200d566947a115be30000000000000000000000000000000000002b812d3f40180596f47ae9a044b907000000000000000000000000000000f8e8d56705de9e07d985df07b92030101700000000000000000000000000000000002aeae3bb018acfa6c5f61a8c2303110000000000000000000000000000000084c88331aba8860ead64dd9600e984dc00000000000000000000000000000000001efab6e9214d5bc576af794baab94200000000000000000000000000000059e5e4f8fff452f1f939979d57da5fec8a000000000000000000000000000000000013b4dc2f2d9fd511c64b885c124ecc0000000000000000000000000000000be3036bdbcbc6f4ffbefd36862db6ee7f000000000000000000000000000000000011ac4ff7b6f86fec9f35f4cefbe14e00000000000000000000000000000047ff5abfc2f607bde31992ac49944e69af00000000000000000000000000000000002e26e5253123ed2efdb5e72344675c0000000000000000000000000000008af36cd13e8c5cedc34652756bcb97e2d20000000000000000000000000000000000022fbc23b46c99982d0fdd7bf0a463000000000000000000000000000000a88b35c7c5b8496121795580b2cf303a3900000000000000000000000000000000000e62098150848c9c50d1d108879d2d00000000000000000000000000000084a1de51a145e76f80fadfb0a2d710938e0000000000000000000000000000000000023e87673f67a08bd9b18e3e4ad6f100000000000000000000000000000064b0978992c818a7ae3c7554826eddd11b0000000000000000000000000000000000156a1d4e8a8c46151b416edc357a1a0000000000000000000000000000005e142a638512103b5cf5ecfba828a2e05f000000000000000000000000000000000012579dfd8b8bf5d0a000e1e622d9c40000000000000000000000000000007f0e2ddf4530acb880d1b58d950672cb620000000000000000000000000000000000272b0b2cb24861e21c4346c0e271be000000000000000000000000000000ead0e5aab30bb29da5006fc9f4f3507ffb00000000000000000000000000000000000f7777c25e5526a096cfbf20bf4c9200000000000000000000000000000035f7a1078c6be0790a1318e656f8507fc500000000000000000000000000000000002d9ef31aa24a79433950724d43a5eb000000000000000000000000000000180c8e6b90c05a03fb36b7a1af1176bf1600000000000000000000000000000000001d87bc20a98bb0733b468b966b4ddd000000000000000000000000000000ca6942231c037cfefa8299117e724845ef00000000000000000000000000000000000336b6e3c2bf8df9028f7eff9ff30e000000000000000000000000000000780c64a3698dec2a3ce40608afcacb8b5a00000000000000000000000000000000000ea784714d3b7ca565dade4653c91d000000000000000000000000000000efefc3d4ef3867739236468150d7b5fe150000000000000000000000000000000000190d6182bea8d1c0874b3117bf02cd0000000000000000000000000000009a14adf2fae32810ba5b81a98ef2849ffb00000000000000000000000000000000000a95da0274e9a34a9d9c042876765d0000000000000000000000000000000f12d78757fa6157f21a6d1ae6bf206f11000000000000000000000000000000000005d03a527d303c76bce884e7ce64410000000000000000000000000000006e9ed3efac28e499e8451c34b34ee48b4f00000000000000000000000000000000002439021c7451ae7acb37ae246f766d00000000000000000000000000000015974d942818b3d1d97f8ad792623f0eec00000000000000000000000000000000002e67cbf940ca7e3c3b149f226f9f110000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002ea6205cddd4777da8b2d1612569eaa982d0a7e7ef3bcca312cbfc1ccecfdaa3053d7c10026ba41fb05faa66267a6732ca5bf2bb4f518f8e52822faa3492774210c6653865535e5f20143de24bced638b3036efe46103ffb73046c4ec3b12f37221ff68a9c79f63b9c685bed1270f345bfe8383e1d5d1680d31dd9652e59f3211f9b4c114812ef5035ed5ac9582949a9cb86780830ae0b0a30dd50bf003b32410b67986e7ed2931a19e77805c54c21d9a406cd812997112cce29ac62b274d6011c4b6c9e85c4cb19168c59cd34525c95a64fab895498ff69b69fa1bbf620c1e42953d78f8e8327560d00e9394ab8656f3e9b2cf770e576a8ae4ff89c317005fd205d8ed9756b6439882bbe822cb75ff19c1da57ca9327ded38311886da40cc94204baf682ed630e2c6c2eb98ce9f8574e8cadc803ff13d6f1f2313023ca5cd962827487dbd9b2aa016d63e863208106469e968be488246fec017578c5970526206ef8ed8618002b88c5934131316249e8fe16e365ffd164f04df2b15fcd1be69285fdf72faf66601c51558ef89fc9f867a1639dd4b481d74058225b5d34780c714bf0265c7696a22a794e56b9f24a1ff9c25fcbb0f29ae98802212c333cfa4620c81d6b68b9c5d7e9fb658c3ed9c4743ba9dc2945bb26d393713ed870fe5a4180923343536fbba55e9b6e111e57b9694ab3fc987987a2d4dfcccd30a7b24650500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000067d2fa2d8f0fd6a6e0fae652aee76ca54b00000000000000000000000000000000002cbe4fb5b147145ddf14ec9c5e02a200000000000000000000000000000042b86775f92a77263b45801644a4d425b30000000000000000000000000000000000189693d9dbc7d87edc97386ec7a259000000000000000000000000000000f1f79ec21b2d4fc04b2ce39ccb0515da9300000000000000000000000000000000001967c6a54631183e1baacf37bbcd82000000000000000000000000000000a4ca2e1a19bba9e981be9019f9c0e24ede0000000000000000000000000000000000248753f92cb50ceca5ca8a9532a6b7" + }, + { + "bytes": "289538cac0e6b6b0e600b7d321883060ab0046854d95a0d1a501c11bc5d2499a000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000e9000000000000000000000000000000000000000000000000000000000000008b0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000c2000000000000000000000000000000000000000000000000000000000000005b00000000000000000000000000000000000000000000000000000000000000a6000000000000000000000000000000000000000000000000000000000000003e0000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000004f00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005900000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000005a00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000770000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000000000000000000000000000003b00000000000000000000000000000000000000000000000000000000000000c40000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000fb000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000c4000000000000000000000000000000000000000000000000000000000000005800000000000000000000000000000000000000000000000000000000000000670000000000000000000000000000000000000000000000000000000000000075000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000bc000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000017000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a80000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000007d00000000000000000000000000000000000000000000000000000000000000d5000000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000aa0000000000000000000000000000000000000000000000000000000000000037000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000065" + }, + { + "u64": "17280000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": { + "vec": [ + { + "symbol": "Issuer" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "credential_types" + }, + "val": { + "vec": [ + { + "symbol": "kyc" + } + ] + } + }, + { + "key": { + "symbol": "pubkey" + }, + "val": { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 2073600 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerList" + } + ] + }, + "val": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "vec": [ + { + "symbol": "Vk" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + } + }, + "ext": "v0" + }, + "live_until": 3110400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "vec": [ + { + "symbol": "Proof" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "expiry" + }, + "val": { + "u64": "17280000" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "threshold" + }, + "val": "void" + }, + { + "key": { + "symbol": "verified_at" + }, + "val": { + "u64": "0" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 3473280 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerRegistry" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Verifier" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/contracts/proof_registry/test_snapshots/test/submit_proof_floors_ttl_at_90_days_for_short_expiry.1.json b/contracts/proof_registry/test_snapshots/test/submit_proof_floors_ttl_at_90_days_for_short_expiry.1.json new file mode 100644 index 00000000..03f22564 --- /dev/null +++ b/contracts/proof_registry/test_snapshots/test/submit_proof_floors_ttl_at_90_days_for_short_expiry.1.json @@ -0,0 +1,485 @@ +{ + "generators": { + "address": 6, + "nonce": 0, + "mux_id": 0 + }, + "auth": [ + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "function_name": "register_issuer", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + }, + { + "vec": [ + { + "symbol": "kyc" + } + ] + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "function_name": "set_vk", + "args": [ + { + "symbol": "kyc" + }, + { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [], + [ + [ + "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + { + "function": { + "contract_fn": { + "contract_address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "function_name": "submit_proof", + "args": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + }, + { + "symbol": "kyc" + }, + { + "bytes": "0000000000000000000000000000000000000000000000042ab5d6d1986846cf00000000000000000000000000000000000000000000000b75c020998797da780000000000000000000000000000000000000000000000005a107acb64952eca000000000000000000000000000000000000000000000000000031e97a575e9d00000000000000000000000000000000000000000000000b5666547acf8bd5a400000000000000000000000000000000000000000000000c410db10a01750aeb00000000000000000000000000000000000000000000000d722669117f9758a4000000000000000000000000000000000000000000000000000178cbf4206471000000000000000000000000000000000000000000000000e91b8a11e7842c38000000000000000000000000000000000000000000000007fd51009034b3357f000000000000000000000000000000000000000000000009889939f81e9c74020000000000000000000000000000000000000000000000000000f94656a2ca48000000000000000000000000000000000000000000000006fb128b46c1ddb67f0000000000000000000000000000000000000000000000093fe27776f50224bd000000000000000000000000000000000000000000000004a0c80c0da527a0810000000000000000000000000000000000000000000000000001b52c2020d746000000000000000000000000000000c668d4d6ac42790ed217e8bf008e70917700000000000000000000000000000000000867ff44121bdb2c8e957bf07a6f4e0000000000000000000000000000003bd32ac024985233df1feb7caf4e31a07b0000000000000000000000000000000000224974cd8a468bfce1a301d4338a9b00000000000000000000000000000075c162ea8274d64c735bb04aef8dbc8e0100000000000000000000000000000000002fc1f2ab715b4caf9474e08cdc207400000000000000000000000000000016ffb4cba0d2c022b8ac46f0e5225dce98000000000000000000000000000000000012ca347a59d9dea7d7fa0260b9181e00000000000000000000000000000025bb805f2a91ef2e802c2527572e7bb552000000000000000000000000000000000029bd9f22b39e8ef3b48df31cc811100000000000000000000000000000005ac7f8200290a7baad69e6a7e54fb385a900000000000000000000000000000000002d6aaafe1493f87f84892ab8763860000000000000000000000000000000cd77eecaa6bc7b38f7e3f4824d9c17192f00000000000000000000000000000000002aff4f8031db91518e3f6fb8cdc7560000000000000000000000000000009453a52cb6195aa2d66974f12791799b6b00000000000000000000000000000000002e524075a2bd0f1247ec1a196d4ebd00000000000000000000000000000022eb41ae79de0ddc2de85642c5bccf9e60000000000000000000000000000000000017fa5a9cfe617a9e1aaae3c01b0c19000000000000000000000000000000a81528671c531979d80aa169ba4ace202000000000000000000000000000000000002d5773db7711ee91a11bf99ca8b061000000000000000000000000000000fec39c1268598f3ad2421a49db7057936200000000000000000000000000000000002baacce67605b7df8eb53626c6e4d6000000000000000000000000000000b807ebcaf35c4bde0f2d1944ed7b4d3d9800000000000000000000000000000000001d54c17cd71d41dfaf7d4b9895613c000000000000000000000000000000f638fa13b162f29f87a972e060b16fdeea00000000000000000000000000000000000e8a45e73b184c62ec7688e4caf4b0000000000000000000000000000000efa9475f3d30256656a8313ebcf7115dc60000000000000000000000000000000000138e2b8e91fdcb10b9bef13e4cb619000000000000000000000000000000391727546150acd67f0d8feee7e265d87600000000000000000000000000000000002c99bd77dd8c0a1dd716cb42da2842000000000000000000000000000000c12a81ea5f4370007f7deab5d3a65bc2f70000000000000000000000000000000000181f7f9a361c20e1baff19924677691a251e01ac227137ffa82e49d6c9fd563e5a3187879449d8ccf5c85a613b6b35163f3071350f2ef1b8a8176caab75b06e9d9b6c0f22526b876ec2d398ec494cc0432ef0692755e657d225a64f4ec01db35482440852ddbae2861cb5ac3117c5511f0c48d9d9e66a5a75b4601255b1fb2285d3537299a7449cc7a4f446d36d91f1c20efdf80a1f180ac6562edcbc0eeee260128c237b289b9cdc22a118d4003010ac0a2b42e40c8290ec54b3578393d59a1e0c190886c48d0b4466d49ff4942470a3743ee3364f9705b42be011782a5aa8cdd7411c81d02314a611f27b67aab121d976295472d793eb3d9c3f2dc042ba84d1279e3e5dfb4ef0871bdf702681c030edd9d623cc7dbbf28829d1e9841418d6b95f00367a472657939205fbb9884bb127168f4fc60af7509e4386ea76d7c5ffcaa1fd7f40e43ba91e587db229225f125e3574ebb2db3f45265a09f31cc380747e23924777ddd10bafc5b2359d6e8891529dedcc60f4d5be7e2d2d9023d968a119c74c2ae189bb22055a77db2fa811c2c92ff06bd6cbbcda7a62d3139d53b1693c0c3b2c2d711142b4cbd8995f2a9de11d36f4b272adee4b9517c181a13e2bb405b00823d4b0a95420691ea8afd7bb924b86afd41c5e392dda8f7195f3ae8ce5f6b47df6e288a37f5cd34b0febb29f119c82df9fdfd87abd4222500bcef0685e0e9323e25a33adeb760f5ebdb04227f00607a108240f0ce211e93593895df259d7b956465d2654e2ffaa4ec412840980b4a3942c91703b60cf97a7f6a1289820aa8d72778a5ba3702ecaf84c7c20ac023c3bb5b66680dd56519a73c2341a9fcc8a6ff1ded82531f630b05538a6fae010d64fdc8d77b9cf3f33fcbb98dbcfc427ac27a18ad715985f2bdfec4e9c5ab1906e52d4f7c7a88dfcd599bf6a908afb31a29d1d045898689c8e8a6925a5821db238c93cc7fc74642eb8805fa9f23ee4a8394ed487d043dd35cba21b385465f391452c2917cf5c145ddfd925cc6b23f21dced22b3e196b3cca1667e38706254210a766773ccbb9eb60fe4b3f2a3f37dbb3e0e7e62987fcabdcdd34837ac2b47d710e77b556d514313831972a9f33ca4031f52da0e4535eac69d705bbe107f648b2c1653ac16f6048dc45e3c8add66f518a4b76b25ab23c842920c2d7b56f8b7922670098dff7440a788c12c6f6f6a5a1510ac74837e0d6b07081f2c22cf514652119a5c3ccf36213a88af1743ef5512912c7d3edc138b61db10b5f1e06592ec7b2c1a19a022b1e4741567a03a61c2acf8daacc89070ec00b97747a953fc0f964e14cd6cf2661d5ffa22d168cdb69d4d041ec52e68a4948b879d4f1b634e602df30a077a3fd0927983018dca75f4a753864035452a845b48b1f48066612794b9f12c98d207b443ac6abe62e9294eeee24887c1c8d24af4b1976e0850998d84fdfa26df16707b90ce81b88a181a7ba88d8cf481ec01b00ab6d90b706941304a486405a2ede7c50d20e609f5372397831d160f68e0b22c481ca2d92398b9247f5fc81efb620ae48d328ce0ada1b2a226dd739c994eab0e1a441d24e2daab56b5b1df116c07061e8599ed7172b12b686c1cd3836561485e3e64545d9114934fb7e6f90ff7b0d245e9e405a5a2b54e6f58b62a48017fef3d653c978bda7d35308ce2712a9773344d9a53823e9aedf866d345db50f7e4a1bf5744317c2f5635622a056b036a1f7881390ae3f1a459bd61b89ea02520c86333fb8661412b28699fddce2b29d1af4ccc032ce978d17b1b4e219a122c19a9bc7fac4e1bc7f58e183a1f55481ca3ce8f4c8957cf0a2c8deb6d3828dc9db4836c352126879c499f55b585cd7e2444955ac7886c5dc4892b2e42d177cb6d18ea0d2f3e63afdc238e3fab0083da12979ba75596539d9f68caaea43aa10621430f263cb28ddd078b8da4aa20f97b06a907f7c80b0eed57d684314d9f542dafb9140ea558f932c3e0df5ec532a1ee2f5add1cd1e06edb76574259c31ca89e1cfe871d828733ecc8f49caf7d0c501316f90390556174431f3ff9d8ce756d0018f3a1138df1847e72836eea362d20731cf7200baff850fb42fa1e2131d71c565f94f87ef63f70c7fc7404ba0db8774f15430a505785086392c5604befef5fd7d0c7ce2eaa8750d0293c35fc0caa76e72f30738a716296319f4c4d5e5f06387fa89dad1f84ffce3f5db5b898f3433f6d19f7312b747255e22e45b536854321ec5f5a5ec7c96d163ea65f0ae20af789ca2c9c9f126483b371102fd6e4e8ec3dedc31bd1f96f217b36248c614bffc8f3022ee1836381e8ac389e497defb603380e346bc9d9eb46c607f61be93ecc9802902074d8b921def6d50def4f31cf546f1849bfe48ab0e2240eda00009ce092b4530304f1ba93569cdc939a268864e58757ffc7dc94ea947c81343cf020edc820a42c5023544f9bcb7b8e8bd439606621abb3082e39eb9d7a8c9b67cedc580b14ff2dfba58fa7fee1ff9843f1ea68af8a54be1178e23df2886384a553206ea8cce7273613f7534fece7edf43500e7103ddb660e01737d4354eb0c607159f1a84d75067c31594f6b3861bdcb5b4fe23a1daf66e2a75ee704d0485d688e414498658603b40afd73979d9aee48f7a9e75a9e060806742c022000a448ea3124cf7b518400e9d050eca8744082e23511db385f2b0f7ab4103bca409fe76cd917d27986ad2bd70338549a774f9fe47d0f1580d68e16ae027fecded4589f636f454fc9938026d59cbd34af46ec688c16bb42047d522e4bfef0bcaea67fea0a4b2f45abceb4077cf654c76cf415848eeb0e5fc0dcb8da5b0cfe65c8234afc79962c47115bee292604868b26adac64ad5af67997d0aa41bfd154498157c94369109865428a510f9bc124bc164303c822ff84b81c21dbfcc1987ee5effc24d99dc14be67866b0180e97312624479bb3526e63eda76d4b2df49c58018769c13f7f305ebc6c6b2903b6422d7fdefc96caf50b02ea272850846e44225a26b651e5ab09ca7dbd0d6221eebf0e7deb6816f83d1d5398ec6b03dcb6a113be156855d96083541658485f2ac9deb94fd588233084f20e5d10e787a53ef8d5fce9c4c0a4c07b6dfd6ca8ce1e33b2ed6129406b19ca2e26657fdf555ddebcecc3a43ad8d1804bb8c1eef28b09745fd2b97f06b3d45af2e3e8f2966a19c3b4de7de996f2c69ce7a923a610e925cb3fd18cc78efea1fe3f6c29f8cab901f78c33febfbcbfd2d4a0295e6f7803004a17bce8af6da36fe52ddf723a96d5b24ab9f8d1dfa7aeafce5811e6b7e82007144311c41d42207554ba94e2e4cae4bc8d944f317929ace53ed9cd040b092821724594f55ab3c74397d2d775ab85f08b879d0da9330a1132a1910bca9de3e71826a0b96b0a9470dbc0c3fefe3c797f33ada63ab17d21316676de0ec7617dbb24576776f4abc1286acf7ef57ce136c7dae83050dbf801c405680ba16ce919312833bf1046e517e3ecb47bd93ade7558eba45faee153e2d3fbcce7ba73493d4f0908bfcd6e145901d382c8076d597521c29684749ab5cbf86722af11c9ac45700fb0a7776a559a38f8b79b98e721a44cf34ec397cf25e37f4d69d24a0381b4ab0264f3b2574d5256a562f2e7d4473f98eaf405cc7748b78db8263aec85e0adce0325a7dc66e47df8f7f96f7bc726ed5ef1ed6ed835070ff5c4fa4e7e6baf60c025434b092aa40904fe8d8e457c630cca3754ab8d728a09031936c3edf6972ddf1b3cc1ed955ab2d37db4ac96699b83e88a2bf1e4f874f17fa0d1167f1c84e1300be1951ac183e4c81993c4341f415170ce8229ce54d51e7f53b41873637d213424b2d71e573942625a6e0f8b938c3120b1faa0f29902522e3d361a6c41a912952da85f74e4e9a7e48b8955ab3809827ab2c018094341689e50e84027e1b13b610508084409dae1d12c82c738d2b5c5b48dc4a035c1d69c1315c2bfcfb925859b05760c252778372a8befa84a1b8a2a068ba7f29619962e7840a790c38370517d227e3dfa0c3dba92c62c8e276a71f40976a3fb9cce730bc5d0ab548485c758270a6c696530c8b60e16f520f4d6164222a20b3cebc57c9942421525b88cedefa40be42370d2b9b6c47ccd91c10ea1c46d2b26f9c6e44492f129c1c5326fb27ccc1de11e12035ce0acd560aeaf1203c87f650ab05005558b379ce178f333deaa1c3018d8193a5dbf672b2f50169f1eb6a1097e6d506f84b2efb472f5860c0d598921d4e761aa9b9967fb62e2cef3bd4b5bd2a703fc279a0936ecf5aa064b8620490e2c8f6d9643bf5e01e326923798a6d7a2a40f0567e8f5b4e9ca489627e402c200366756e777fe7f694ea2799942fb51bbd79b2126535ab16343ee64ec0b60cf0f236dd45d70510e83f9f8967af83fe7c4c822adaf600e7d0b9f5229c42430a2069fa10fc4fc083b586c1e90837d8fc5cdf2a3d7364402e6dd2ba6dec497701c0e0d3d7fd4fd27dfa4b691071073f1ee48617a5f3e6b98aace78b7883fa65f0924b8fc2e95e6a46760aadeb80e8beb0921fa6d7db7b3a40f219ff540a076214b1e1e21e203ce766ac5c3c70871e926c42f5276e2346298a59605d3da04c588372cb6a141640ec881defba390f4f56a64aa08c7b7c49ce693b72cda6a28dcc6c80d009d5f21ad56d1e003200487d9e984767e18dc3d46db91806630c6659d42660e1f6462d0a9fd2c7e456dfd281cbcee7eae84e42e74e1908d8764a0fd848b7912995904b97b4d9d435a128d68495d92f41d88b835c9321e99fb7337daedbcf10ba51a3df184f4dd900c7ec01431a3cc8aaa24109a99a5bbdca39d90fb5b8a1927264e6d3ddf61db6b8fe85d3a67679214219459b84cbc240f3ea393e0dff6a30b7a2b9b396b887849f258eacb812af59af2096a7d294d2823a29610c4d065d621aea41bb5123e4d747df45644cf617faf6832908d14f48248fd48e231dd7ff21ff46341060e0f1b06b5b373929b1f5b05111a326b522ac6f40e87085f17bab10d51d9f8057dd8b9f961db0cddb22e337b42357a0a78ac47ce551484bee2f8842fe332a0ae767b72fe4a96d296f3275425734625da717302512a86aed471df6d27d6618b65235d2dfee2e13906b6e2889272bb2fb1fe004bfeda8ad7bc585457056f533089bb30e8dacb959feb8545ac9b0f2af7fd85d54c1ef31641319da4a615eaacd6bbce09e3330bfbe6998594a5d428d11933acc446f2ed4d85ee82323b0315d511e2ba34303a632a0d454a89291bf18e8fb83b038e6af073fc080daf5a08faa205816d943a4b043ca5d64c8d3761543bf17226a25b4e92dcaeaa9d883320f263427023909059405a2eb5f7124535095480ebaf7939d6a2ac7dd75e481e2fe64b64ca5644a73be47ee45433f31da5e8bd33eeca235b52a20b328f8ee2d5005133bb7fe254f6a8c02a0302c392e66054acc900ede95817e538512b9837700c1da2b3d2ea617946f2e9b61b00ef73e0827a3893e3ddf460590f106ac0e4e219d099c27c1770e42eeae1c2dcb9db56774264d435739d957807fde6c77c60962c37ac9ab095449ebc0e4ae51ffd8003d7b81d18c6ed880bf0c51b8d26f2ffca1252530ca0ff9bf0c7d12d4ee10448b3e7ec97709bf64d0ea5fb1124d7de425611585f80829ea47dc5095dfd38d01ffc8aef4ccaad02fc463684a19d7f416c7e044e3104dc47241f73a8f43ab922cf2df406f2adb3bbc23a2073560e7660cfad173a40fcc3ffeb36052ea3917c7e27d43e474aa8a37a3dfea87026eb5881d7550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002687d678007548664308a56028ea8040809f099b56f4d494f9b825eb107ac4aa17be69023dca6ce6fa11f2efceb1cb0136391d87864f6891ecc4c2e1083ad5ff21a2422b1f67bcf81b75eb7b9b39bf6da97953330a50ffa88724ae6ff2d1e5da1b5b410c852cb9eb3625c9ae93a39594def83a159b7b286af9d849c4d1c6834a26ab7e7c666e2d2ad653c71f9d8da32fed2460470dbbcf812303f3b4e9614b0b2df84c7fa62bb94e31c8d1f4a7c005f89a4a5ae87c58eb6f79dcdf75f11d10940992870caef41275bc532c272dd7b019fa195281e9068c7cbeff1f7b3994928c001cafcfabd33712ece2285d73cd92057e88bc0d27cad24a43e08150a7a554e40f8c9caeb5dc7ada91603569873a0e3891b5bf90edf5c9ae5006aa632e48d71025049e757a22d70fbbe2f7ed3497c3fd356f3074b04cf91f22d7839eb32323490a101494eba0872e9beb3fa5eb84510e736da3fc20c83756c0c42a4f4a28e1de1e200a31aca3d2d9d59f0423daeab2bd1b7ffa61d47e863f59ac2ec4720e5889149892f23423ebd8774f74913e760789eb2ae91d576fe56f140d96b6386af73c0858fbaad55c63417b72320ac56f3fffa9d10735f72ee0d5a6aaface8db9f608199661ca9a06aa67558118f45b12a7f766b0fea15f6900855bc29d93adfc2e582e6abdfb2ae7078d52de4128ba9b4add73ae83746930de87e65fa6b69a56720b0a2b31ac8c194025b49043078bb98f22f2563a6436c75119573b63d5369b3f2a1e16e9a99453521568e326a5590f8e5fb064e33dfd6688975f405ef7b203941e2cae65dbc09772a0d882f6b8a1cf1c48dbdda31d8ef33823ebf83c28dbe61e941ad38250e1a1e0ff32b1195809c59d1df79debe97ad19504d5c1128d0d0368471ac748974e33057e30e57771870db768ba53db52c0247eb4808887420e5d251e1e75f3c14d1957dfca4b9d7c8a0574166a264e0d8fb745d39d4632b91714bbf41589714a5052f6dc7f1a852ee11d5b4b4cdc13569e9b72d6f02492793480c8ad100fb373c93812b644ec1b4593fda1f518d94a06f27213a63955a044d130abf71221a2ab927f227f4b60251098a7422d5e6c2419f312de0391d66d0ff28a662803bc1106dd0fb29d88dd70ba192f66f38b578e6c072497c0a36e017215dbe1cd0c4a16d200a1521061b3498799b0a326d07f0c227d879c1fc4378d4db91aa63a2bd2a8214d5f475306f0eedd9754ff8e531e21a2b66dfd173adfe2b36062ca2317059a4c010bfbbe8bec945c7f442ee1bb63a91c7ca9af6151dcbfdb55d93e5c29570fb5b55d74fa78280f3420708ed9bc04734dd05404bade19e02ea8641abe1bfc1658859d940e41f22504c998c182578b57ae0659ab5ec3bcd8568953c48309d4d5b236c9a8372ce5d2e3c77bd764d14e364a270b569835f4c43854886f1c02a11a00768fb688bfb5e20e9d16446db4808e53fbdbb496cc91f4a69341330e290845386ae097cff4c55f06259f359c74c02b84c21a6b91d3cf828a16b374131567743ce58013ac35106640a16294712fa8e964d3bfcfeced0f8c65cd3b8e100af00d16a89069d42cee1155327102d711417716281a5927ce6c067908dcd73d1060f952b088839c0a4b79c27c5aac4b3dccec05a24d3f095bd57e2265aecf1f0e0539d13efc4364e914463a68c48e0a7155cda8f48653bec651a334f14e826f2c8e3f8b901423bdaf7c60ac79a99f975bf0104f2da2ee7fae06d393f7d42df0297e9c6bd70382da06e3c3ad81d6da82603dcd60974138e2a6ca552d1e0d71dd0000000000000000000000000000003d570ce256c23b2ad24b2d1a6215c62b63000000000000000000000000000000000000e1828c6c687a505897c01b7acab30000000000000000000000000000004052eaf295668d87719c907b1831328aa1000000000000000000000000000000000014d32b62cee88718b756135b686d86000000000000000000000000000000448aedf93c2e0c117564e7518486928367000000000000000000000000000000000007f3029dfc03a3ad53daea491839140000000000000000000000000000000cc0ec2dab0d1a2e2933219e34cf5d215200000000000000000000000000000000002c6d8fdd9d1328e4feea86d5aae6a6000000000000000000000000000000f1d9603adad50b54e8168c20d21c57e8f5000000000000000000000000000000000009a1666e5d2c94df44420fddfc1d9300000000000000000000000000000016304112dc77e7370494489ae6fad7494a00000000000000000000000000000000001e0cd43ecbe68cbfa151375f674027000000000000000000000000000000ff117245eccde53514c7a4bd521a50e4a500000000000000000000000000000000002c7de78973c85d98f4371e01baedce00000000000000000000000000000025441f9158e4740c49200f84c0c3a7117900000000000000000000000000000000001d9664efe5c5403f750b713d8f3e1e000000000000000000000000000000e5e8bc089af9f7b200d566947a115be30000000000000000000000000000000000002b812d3f40180596f47ae9a044b907000000000000000000000000000000f8e8d56705de9e07d985df07b92030101700000000000000000000000000000000002aeae3bb018acfa6c5f61a8c2303110000000000000000000000000000000084c88331aba8860ead64dd9600e984dc00000000000000000000000000000000001efab6e9214d5bc576af794baab94200000000000000000000000000000059e5e4f8fff452f1f939979d57da5fec8a000000000000000000000000000000000013b4dc2f2d9fd511c64b885c124ecc0000000000000000000000000000000be3036bdbcbc6f4ffbefd36862db6ee7f000000000000000000000000000000000011ac4ff7b6f86fec9f35f4cefbe14e00000000000000000000000000000047ff5abfc2f607bde31992ac49944e69af00000000000000000000000000000000002e26e5253123ed2efdb5e72344675c0000000000000000000000000000008af36cd13e8c5cedc34652756bcb97e2d20000000000000000000000000000000000022fbc23b46c99982d0fdd7bf0a463000000000000000000000000000000a88b35c7c5b8496121795580b2cf303a3900000000000000000000000000000000000e62098150848c9c50d1d108879d2d00000000000000000000000000000084a1de51a145e76f80fadfb0a2d710938e0000000000000000000000000000000000023e87673f67a08bd9b18e3e4ad6f100000000000000000000000000000064b0978992c818a7ae3c7554826eddd11b0000000000000000000000000000000000156a1d4e8a8c46151b416edc357a1a0000000000000000000000000000005e142a638512103b5cf5ecfba828a2e05f000000000000000000000000000000000012579dfd8b8bf5d0a000e1e622d9c40000000000000000000000000000007f0e2ddf4530acb880d1b58d950672cb620000000000000000000000000000000000272b0b2cb24861e21c4346c0e271be000000000000000000000000000000ead0e5aab30bb29da5006fc9f4f3507ffb00000000000000000000000000000000000f7777c25e5526a096cfbf20bf4c9200000000000000000000000000000035f7a1078c6be0790a1318e656f8507fc500000000000000000000000000000000002d9ef31aa24a79433950724d43a5eb000000000000000000000000000000180c8e6b90c05a03fb36b7a1af1176bf1600000000000000000000000000000000001d87bc20a98bb0733b468b966b4ddd000000000000000000000000000000ca6942231c037cfefa8299117e724845ef00000000000000000000000000000000000336b6e3c2bf8df9028f7eff9ff30e000000000000000000000000000000780c64a3698dec2a3ce40608afcacb8b5a00000000000000000000000000000000000ea784714d3b7ca565dade4653c91d000000000000000000000000000000efefc3d4ef3867739236468150d7b5fe150000000000000000000000000000000000190d6182bea8d1c0874b3117bf02cd0000000000000000000000000000009a14adf2fae32810ba5b81a98ef2849ffb00000000000000000000000000000000000a95da0274e9a34a9d9c042876765d0000000000000000000000000000000f12d78757fa6157f21a6d1ae6bf206f11000000000000000000000000000000000005d03a527d303c76bce884e7ce64410000000000000000000000000000006e9ed3efac28e499e8451c34b34ee48b4f00000000000000000000000000000000002439021c7451ae7acb37ae246f766d00000000000000000000000000000015974d942818b3d1d97f8ad792623f0eec00000000000000000000000000000000002e67cbf940ca7e3c3b149f226f9f110000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002ea6205cddd4777da8b2d1612569eaa982d0a7e7ef3bcca312cbfc1ccecfdaa3053d7c10026ba41fb05faa66267a6732ca5bf2bb4f518f8e52822faa3492774210c6653865535e5f20143de24bced638b3036efe46103ffb73046c4ec3b12f37221ff68a9c79f63b9c685bed1270f345bfe8383e1d5d1680d31dd9652e59f3211f9b4c114812ef5035ed5ac9582949a9cb86780830ae0b0a30dd50bf003b32410b67986e7ed2931a19e77805c54c21d9a406cd812997112cce29ac62b274d6011c4b6c9e85c4cb19168c59cd34525c95a64fab895498ff69b69fa1bbf620c1e42953d78f8e8327560d00e9394ab8656f3e9b2cf770e576a8ae4ff89c317005fd205d8ed9756b6439882bbe822cb75ff19c1da57ca9327ded38311886da40cc94204baf682ed630e2c6c2eb98ce9f8574e8cadc803ff13d6f1f2313023ca5cd962827487dbd9b2aa016d63e863208106469e968be488246fec017578c5970526206ef8ed8618002b88c5934131316249e8fe16e365ffd164f04df2b15fcd1be69285fdf72faf66601c51558ef89fc9f867a1639dd4b481d74058225b5d34780c714bf0265c7696a22a794e56b9f24a1ff9c25fcbb0f29ae98802212c333cfa4620c81d6b68b9c5d7e9fb658c3ed9c4743ba9dc2945bb26d393713ed870fe5a4180923343536fbba55e9b6e111e57b9694ab3fc987987a2d4dfcccd30a7b24650500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000067d2fa2d8f0fd6a6e0fae652aee76ca54b00000000000000000000000000000000002cbe4fb5b147145ddf14ec9c5e02a200000000000000000000000000000042b86775f92a77263b45801644a4d425b30000000000000000000000000000000000189693d9dbc7d87edc97386ec7a259000000000000000000000000000000f1f79ec21b2d4fc04b2ce39ccb0515da9300000000000000000000000000000000001967c6a54631183e1baacf37bbcd82000000000000000000000000000000a4ca2e1a19bba9e981be9019f9c0e24ede0000000000000000000000000000000000248753f92cb50ceca5ca8a9532a6b7" + }, + { + "bytes": "289538cac0e6b6b0e600b7d321883060ab0046854d95a0d1a501c11bc5d2499a000000000000000000000000000000000000000000000000000000000000003e000000000000000000000000000000000000000000000000000000000000004800000000000000000000000000000000000000000000000000000000000000e9000000000000000000000000000000000000000000000000000000000000008b0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000c2000000000000000000000000000000000000000000000000000000000000005b00000000000000000000000000000000000000000000000000000000000000a6000000000000000000000000000000000000000000000000000000000000003e0000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000000000000000000000002b000000000000000000000000000000000000000000000000000000000000004f00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000009c000000000000000000000000000000000000000000000000000000000000005b000000000000000000000000000000000000000000000000000000000000005900000000000000000000000000000000000000000000000000000000000000a500000000000000000000000000000000000000000000000000000000000000280000000000000000000000000000000000000000000000000000000000000053000000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000005a00000000000000000000000000000000000000000000000000000000000000e8000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000e400000000000000000000000000000000000000000000000000000000000000770000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000000000000000000000000000000003b00000000000000000000000000000000000000000000000000000000000000c40000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000fb000000000000000000000000000000000000000000000000000000000000000700000000000000000000000000000000000000000000000000000000000000d900000000000000000000000000000000000000000000000000000000000000c4000000000000000000000000000000000000000000000000000000000000005800000000000000000000000000000000000000000000000000000000000000670000000000000000000000000000000000000000000000000000000000000075000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000a800000000000000000000000000000000000000000000000000000000000000f900000000000000000000000000000000000000000000000000000000000000ea00000000000000000000000000000000000000000000000000000000000000c300000000000000000000000000000000000000000000000000000000000000bc000000000000000000000000000000000000000000000000000000000000002f0000000000000000000000000000000000000000000000000000000000000017000000000000000000000000000000000000000000000000000000000000000d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a80000000000000000000000000000000000000000000000000000000000000058000000000000000000000000000000000000000000000000000000000000007d00000000000000000000000000000000000000000000000000000000000000d5000000000000000000000000000000000000000000000000000000000000003800000000000000000000000000000000000000000000000000000000000000be00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000090000000000000000000000000000000000000000000000000000000000000007800000000000000000000000000000000000000000000000000000000000000d300000000000000000000000000000000000000000000000000000000000000f400000000000000000000000000000000000000000000000000000000000000aa0000000000000000000000000000000000000000000000000000000000000037000000000000000000000000000000000000000000000000000000000000006100000000000000000000000000000000000000000000000000000000000000e30000000000000000000000000000000000000000000000000000000000000065" + }, + { + "u64": "1000" + } + ] + } + }, + "sub_invocations": [] + } + ] + ], + [] + ], + "ledger": { + "protocol_version": 26, + "sequence_number": 0, + "timestamp": 0, + "network_id": "0000000000000000000000000000000000000000000000000000000000000000", + "base_reserve": 0, + "min_persistent_entry_ttl": 4096, + "min_temp_entry_ttl": 16, + "max_entry_ttl": 6312000, + "ledger_entries": [ + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "801925984706572462" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", + "key": { + "ledger_key_nonce": { + "nonce": "5541220902715666415" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": { + "vec": [ + { + "symbol": "Issuer" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "credential_types" + }, + "val": { + "vec": [ + { + "symbol": "kyc" + } + ] + } + }, + { + "key": { + "symbol": "pubkey" + }, + "val": { + "bytes": "3e48e98b0178c25ba63e442b4fe89c5b59a528537d5ae808e477113bc44820fb07d9c45867751ca8f9eac3bc2f170d00a8587dd538be209078d3f4aa3761e365" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 2073600 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerList" + } + ] + }, + "val": { + "vec": [ + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + ] + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": { + "vec": [ + { + "symbol": "Vk" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "bytes": "00000000000100000000000000000010000000000000005100000000000000010b6f2ea45fa53e4af53e49b7993a4d9c9b8de0e684d0cf698bb31768176e07c00d5288879ae3c15cd92de87a3f476479d56d4ca00878c504980ce4481f696da01a3d1b58e1043e0b1ef95642ac19cdb7fc95486c3cfaa0f0bcce5991bb05f3a021fadf9eafa7587d87fb43b2c77119aa3b8181d890400539772bec09c2be13a32743d5fd6ce6f698f47986945cb5bcc79032210c24472c69a0a0875efa1d53d80c4118cd280c23b8a3856096ac44655b6a519fd8fc8033ef019d8c3f4ae2468f126a9725857fddfa29cffe072b2bfff91bbf29dcd17db2a35101c3c64e1bd5a12bb96b4a30c8dc57862644eeab2d60bd78a29764b98faafb3b68dd3ac024e70819b11b101e1b5a629dc937fcb27b9ac357401d75bb58e2484870e226fdedc2430d1c9ef2418667e4ef15cf099664950b84bd1dc5c3bc3842564a38fcad60e5d728fb364b7437ed52450417de94bf358fe9c5fd738dcad479cdfb8dffb8ef89c810a783cfa53ef2e089eea24d70586aea3a2e395e94bd77b8acb1544118c4ea072a6e8f0f70d9470f5b31764e051187297bec96aaa8b532f424e8e7701c6921921ea2d53bd4b510855e80bbaf9ad291aaec2e19488dd88b39678f3e07999f433f01d2c05f8af1dd059d2a264ac7c72471b8765edb9b05e9bdd7741b171354b54b04738287bf1b2f10e7a2b1bf30399469af0e752a365b2fc718ebfef7045cbcf41223f54ae3596847cd7f2f155dbf3034b3e5470107d2c5385b1756548014a2e7076bb2e84ea4045206df91396a07678c935995c07dc31bf63f257deb2d3285142c08b4dddfb16ecec77951fd720cd4f617c8e48d3178e6fb3bfe9380b2df9ed61e8722eafa93d4253fefd09cc23976efdae4bee772e0971b16dcd8b0baf3c0a204f8add76a9fe26dd9be130b9afb6cbe67d2425efe0c8274455a3f54641907241ba42decc4ecff3980c178ed08fef6e01839baa9a25e563ddd44bac34c48edd920538d643dfc69ff2e3c2f001e2574fab9cb0c53f54cc46deccaf11c3fecacc01fe6eda5f5b01c1eee6d00af4fc15e050eeeab919e9f115d498ae0fde9bcbd841e7c720c7a31ed2717626f38235f2f3d959a9ef81e3aebc3449bfdb5d603722a18831786f16ecffb27bee87c32661f063f88d64c1ed04b5999b0f3a2097d469b1682b4c843040bd7555257c24fd72688c4517daec014c40425bf955cf283dd8b07813d483a350b9e50bfbf83de45d2d0e50df6bd2a7246244f589cb7781a2d6900a4cc2959ee59ecc6884f5157f1daa7dd81be557c15bd6e8f04a47b27fe35760242116518c7b90825ab6c1305d371e772d7cd238652797655f8200b9a69873e108dc450356a808a281f691dd3170cc93a55c2bace48329af20651cd68cd930404421e9971b145228acc2e37fa38de852b4fe89e29729759ab9e830dc07ddae00cd3f4222bb74627c9a656b8abe194d08c0f2fd79c6f03f5e19a2d79b4644b0f08f9673e8a1ba6e0b4fe089b0fa424d625618179d59d4297223b82bb79ae6c96113cfec405079926d2615be478ae59839c233d9bdfbac69374251919a69e34cf1629412ae0fa78676902806f3895da456781892cbd25a53da020f5d4f2fd3c3a1522fc9c63db62c2412ff2404cc5705b6561ffac0963c5b4750658301be3a43816aa37bdff82e99944365007e471eeeb6f0fb31966d92faf8da80fb9a82e2c2029de771bcc156844ca0769b4488b88c66dc291fa5549b4b927d802e119452c412f615b4ecf16a253608341f45e873aa07bebeea3126cfb7256fa7b1088ae417e0b04f7162d4bf8fe711bfc49f4899a834b28402fe146e52248203ca30ef07fb80678a657a9ec8a75df004b4a982c0e809b5e6a1ac13edcdf9a55bef3d28832942d5facdd84204a2490d364ba011adb9d732ae69579046a3d284764dad9c8d2a5043c1bc983cf5421cb8b45e285a82792046e1518c22bdbf9be74592003e040ee0c7df9b51c0b136098497adf9900785b5a0854b66133e85d68e5755f9ad8f9aa0d9d4ad727fd4697edfeadbcc0321ba8441de119f9d796d5d33f46c49bd8ecdb2061bf11f5eb14bb2f171331d8a407fc04329ee7b9e6561f4d6d2e9248247b8b0888953c7777311449f109d3978f294c8b804e0160c0ef1b3299ce489f8305152f66db922b70d712afef867b6b89590eccdd9b744c0aecb184aa3c079feb206014598a774c06176ffd089f1d611386fbea25dd8c242dcc44a1a8972af35a8049000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000021ba639465a6d48e6e0c52a2238707839d5ef81c6f74ffadf755e5e65982fdeae052a267b31819f913049d1ec0c992a96db526e4a570450a59f14b9db9ce4ba35" + } + } + }, + "ext": "v0" + }, + "live_until": 3110400 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": { + "vec": [ + { + "symbol": "Proof" + }, + { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4" + }, + { + "symbol": "kyc" + } + ] + }, + "durability": "persistent", + "val": { + "map": [ + { + "key": { + "symbol": "expiry" + }, + "val": { + "u64": "1000" + } + }, + { + "key": { + "symbol": "issuer" + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHK3M" + } + }, + { + "key": { + "symbol": "revoked" + }, + "val": { + "bool": false + } + }, + { + "key": { + "symbol": "threshold" + }, + "val": "void" + }, + { + "key": { + "symbol": "verified_at" + }, + "val": { + "u64": "0" + } + } + ] + } + } + }, + "ext": "v0" + }, + "live_until": 1555200 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK3IM", + "key": "ledger_key_contract_instance", + "durability": "persistent", + "val": { + "contract_instance": { + "executable": { + "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" + }, + "storage": [ + { + "key": { + "vec": [ + { + "symbol": "Admin" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM" + } + }, + { + "key": { + "vec": [ + { + "symbol": "IssuerRegistry" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFCT4" + } + }, + { + "key": { + "vec": [ + { + "symbol": "Verifier" + } + ] + }, + "val": { + "address": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAITA4" + } + } + ] + } + } + } + }, + "ext": "v0" + }, + "live_until": 4095 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_data": { + "ext": "v0", + "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDR4", + "key": { + "ledger_key_nonce": { + "nonce": "1033654523790656264" + } + }, + "durability": "temporary", + "val": "void" + } + }, + "ext": "v0" + }, + "live_until": 6311999 + }, + { + "entry": { + "last_modified_ledger_seq": 0, + "data": { + "contract_code": { + "ext": "v0", + "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "code": "" + } + }, + "ext": "v0" + }, + "live_until": 4095 + } + ] + }, + "events": [] +} \ No newline at end of file diff --git a/contracts/proof_registry/test_snapshots/test/upgrade_by_admin_succeeds.1.json b/contracts/proof_registry/test_snapshots/test/upgrade_by_admin_succeeds.1.json index c4c9f978..13a3d178 100644 --- a/contracts/proof_registry/test_snapshots/test/upgrade_by_admin_succeeds.1.json +++ b/contracts/proof_registry/test_snapshots/test/upgrade_by_admin_succeeds.1.json @@ -69,7 +69,7 @@ "function_name": "upgrade", "args": [ { - "bytes": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b" + "bytes": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9" } ] } @@ -332,7 +332,7 @@ "val": { "contract_instance": { "executable": { - "wasm": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b" + "wasm": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9" }, "storage": [ { @@ -390,21 +390,21 @@ "ext": "v0", "cost_inputs": { "ext": "v0", - "n_instructions": 9310, - "n_functions": 207, + "n_instructions": 9461, + "n_functions": 213, "n_globals": 4, - "n_table_entries": 9, + "n_table_entries": 8, "n_types": 43, "n_data_segments": 1, "n_elem_segments": 1, - "n_imports": 27, - "n_exports": 16, - "n_data_segment_bytes": 1783 + "n_imports": 29, + "n_exports": 17, + "n_data_segment_bytes": 1712 } } }, - "hash": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b", - "code": "0061736d0100000001a8022b60037f7f7f017f60027f7f017f60017e017e60027e7e017e60037e7e7e017e6000017e60047e7e7e7e017e60037f7f7f0060047f7f7f7e017e60027f7e0060027f7f017e60047f7f7f7f0060057f7f7e7f7f0060047f7f7f7e0060067e7e7e7e7e7e017f60057f7e7e7e7e0060027e7e0060067e7e7e7e7e7e0060017f017e60047f7f7f7f017f60037e7e7e0060017f0060027f7f0060017e0060027e7f017e60067e7e7e7e7e7e017e60057f7f7f7f7f0060047f7f7f7e017f60017f017f60037f7f7f017e60037f7e7e017e60037f7e7e017f60000060027f7e017e60047f7e7e7e017e60057f7e7e7e7e017e60057f7e7e7f7f0060057f7f7f7f7f017e60067f7e7f7f7f7f017e60017e017f60027e7e017f60067f7f7f7f7f7f017f60057f7f7f7f7f017f02a3011b0169013000020162016500030169015f0002016101300002017801310003017801350002016c01320003016c01310003016c01300003016c015f0004017601640003017801340005016c01370006016d01390004017601670003016201310006016d01610006016201330003016c013600020162016a00030164015f000401780130000301760131000301760133000201620136000301620138000201620134000503d101cf010707070809070a07090b0c070a07070d0a0d070707000a0e010f1011120112130b0a0a140a1505101616070505140a0a17170a0707070518040202060a040a0319040503050707070701040506040504030219030205150707071a07071b0712151c1d0912151e1f0707070707070a0a0a012001211e1e211e221e2321221e211e2112070707071d2425261d01211e21211e211e1e1e221e122321221e1e211e21121d2425261d1d021c07090916160527271601002801011209271301000001002907070101072a0100151a0000000405017001090905030100110621047f01418080c0000b7f00419a88c0000b7f0041f78dc0000b7f0041808ec0000b07dd0110066d656d6f727902000d5f5f636f6e7374727563746f7200650561646d696e00660b636865636b5f636c61696d00670b69735f76657269666965640068176973737565725f72656769737472795f616464726573730069067265766f6b65006a0c7265766f6b655f70726f6f66006b097365745f61646d696e006c0c7375626d69745f70726f6f66006d137375626d69745f70726f6f66735f6261746368006e0775706772616465006f1076657269666965725f616464726573730070015f03010a5f5f646174615f656e6403020b5f5f686561705f6261736503030915010041010b0864a701d101df01ce01e001d701da010a8dab01cf017702017f017e23808080800041106b22032480808080000240024020022903004202510d00200320012002109c808080002003290308210402402003280200450d0020004202370300200020043703080c020b20002004370308200042013703000c010b200042003703000b200341106a2480808080000b6401027e02400240024020022903002203a741ff0171220241c000460d0020024106470d0142002104200310c38180800021030c020b4200210420012003108f8180800021030c010b4201210410ca8180800021030b20002004370300200020033703080b4602017f017e23808080800041106b220324808080800020032001200210f380808000200329030821042000200329030037030020002004370308200341106a2480808080000b810101017f23808080800041206b220424808080800020042000200129030020022903002003109881808000370308200441106a2000200441086a108881808000024020042802104101470d0041e087c08000412b200441106a41d087c08000418484c0800010e681808000000b20042903182103200441206a24808080800020030b4d01017f23808080800041106b2202248080808000200220013703082000200241106a2001109a8180800010cb8180800036020c2000410036020820002001370300200241106a2480808080000be10102037f017e23808080800041306b220324808080800020032001200210a18080800037030820034202370310200341186a200341106a200341106a41086a200341086a200341086a41086a10f5808080004100200328022c2202200328022822046b2205200520024b1b21022003280218200441037422056a2104200328022020056a2105024003402002450d01200420052001108b81808000370300200441086a2104200541086a21052002417f6a21020c000b0b2001200341106a410110a28180800021062000420037030020002006370308200341306a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110f980808000024020022802004101470d00000b20022903082103200241106a24808080800020030b9b0203017f017e027f23808080800041c0006b22032480808080002001200210a180808000210420032001200241086a10a18080800037031020032004370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10f5808080004100200328023c2202200328023822056b2206200620024b1b21022003280228200541037422066a2105200328023020066a2106024003402002450d01200520062001108b81808000370300200541086a2105200641086a21062002417f6a21020c000b0b2001200341186a410210a28180800021042000420037030020002004370308200341c0006a2480808080000b3b01017f23808080800041106b2202248080808000200220013703082000200241086a10fa808080001097818080001a200241106a2480808080000b12002000200142012002200310a5808080000b270020002000200110a7808080002002200310d381808000200410d3818080001096818080001a0b8a0102017f017e23808080800041c0006b220324808080800002400240024020012001200210a780808000220442011082818080000d00200042023703000c010b2003200120044201108181808000370300200341086a2001200310a88080800020032903084202510d012000200341086a413810e9818080001a0b200341c0006a2480808080000f0b000bc20302017f027e23808080800041306b2202248080808000024002400240024002400240024020012802000e0400010203000b2002200041ac86c0800010838180800020022802000d05200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c030b2002200041bc86c0800010838180800020022802000d04200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c020b2002200041d486c0800010838180800020022802000d03200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c010b200241206a200041e486c0800010838180800020022802200d0220022002290328370318200241186a10fa808080002103200241206a200141086a200010a08180800020022802200d0220022903282104200241206a200141106a200010a08180800020022802200d02200220022903283703102002200437030820022003370300200241206a2000200210e18080800020022903282104200229032021030c010b20022903082104200229030021030b200350450d00200241306a24808080800020040f0b000b9d0302027f067e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b024002402002290300220542ff018342cc00520d002001200541bc84c080004105200341086a410510a5818080001a200341306a2001200341086a109c80808000024020032802304101470d00200042023703000c020b20032903382105200341306a2001200341106a10af808080000240200329033022064202520d00200042023703000c020b024041014102410020032d001822041b20044101461b22044102470d00200042023703000c020b20032903382107200341306a2001200341206a109b808080000240200329033022084202520d00200042023703000c020b20032903382109200341306a2001200341286a109c80808000024020032802304101470d00200042023703000c020b2003290338210a200020043a0030200020053703282000200a370320200020073703182000200637031020002009370308200020083703000c010b200042023703000b200341c0006a2480808080000b1000200020012002420110aa808080000b210020002000200110a7808080002000200210ab8080800020031094818080001a0b4502017f017e23808080800041106b220224808080800020022000200110ce80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b210020002000200110a7808080002002200010898180800020031094818080001a0b900102017f017e23808080800041206b220324808080800002400240024020012001200210a780808000220442021082818080000d00200042003703000c010b2003200120044202108181808000370308200341106a2001200341086a10868180800020032802104101460d012003290318210420004201370300200020043703080b200341206a2480808080000f0b000b1000200020012002420210ac808080000b6a01017f23808080800041106b22032480808080000240024020022903004202510d0020032001200210868180800002402003280200450d00200042023703000c020b20002003290308370308200042013703000c010b200042003703000b200341106a2480808080000bb20203027f017e017f23808080800041c0006b22032480808080002003200041086a220441e484c08000410f10fd8080800037030020012004108981808000210520032004200210a18080800037031020032005370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10f5808080004100200328023c2202200328023822016b2206200620024b1b21022003280228200141037422066a2101200328023020066a2106024003402002450d01200120062004108b81808000370300200141086a2101200641086a21062002417f6a21020c000b0b2004200020032004200341186a410210a28180800010f8808080002102200341c0006a24808080800020020bfb0102047f017e23808080800041306b22022480808080002002200041086a220341f384c08000411110fd8080800037030020022001200310898180800037030820024202370310200241186a200241106a200241106a41086a200241086a200241086a41086a10f5808080004100200228022c2201200228022822046b2205200520014b1b21012002280218200441037422056a2104200228022020056a2105024003402001450d01200420052003108b81808000370300200441086a2104200541086a21052001417f6a21010c000b0b2003200020022003200241106a410110a281808000109e808080002106200241306a24808080800020060be00101027f23808080800041a0016b220624808080800020062005370308200620043703002006419f016a10fb80808000200620013703582006200037035020064203370348200641106a2006419f016a200641c8006a10a68080800041002107024020062903104202510d00200641e0006a200641106a413810e9818080001a4100210720062d0090010d002006290388012006419f016a10ff80808000580d002006200641f0006a10b380808000450d00410121072002a7410171450d002006290368420020062802601b20035a21070b200641a0016a24808080800020070b4d02017f017e41012102024020002802004101470d00410021022001280200450d00200141086a200041106a2202108981808000210320022000290308200310958180800042025221020b20020bf40101027f23808080800041a0016b220524808080800020052004370308200520033703002005419f016a10fb80808000200520023703582005200137035020054203370348200541106a2005419f016a200541c8006a10a6808080000240024020052903104202510d00200541e0006a200541106a413810e9818080001a410021062005290388012104024020052d0090010d0020042005419f016a10ff80808000580d002005200541f0006a10b38080800021060b200020063a00082000200437031020002005290380013703000c010b2000420037031020004200370300200041003a00080b200541a0016a2480808080000b7001017f23808080800041306b220224808080800020022000370308200241086a1080818080002002412f6a10fb808080002002200137032020022000370318200242033703102002412f6a2002412f6a200241106a10a78080800042011093818080001a200241306a2480808080000baf0401017f23808080800041b0016b2206248080808000200620013703082006200037030020062002370310200620033703182006200437032020061080818080002006200641af016a10b780808000370328024002400240200641286a200641086a200641106a10b080808000450d002006200641286a200641086a10b180808000370330200641206a200641306a10b880808000450d012006200641af016a10b980808000370338200641386a200641106a200641186a200641206a10ba80808000450d02200620023703502006200037034820064203370340200641af016a10ff80808000210020064190016a200641af016a200641106a200641206a10bb80808000200620053703800120062000370378200641003a008801200620013703702006420137036820062006290398013703602006200629039001370358200641af016a10fb80808000200641af016a200641c0006a200641d8006a10a980808000200641af016a10fb80808000200641af016a200641c0006a418087014180f6de0010a480808000200620053703a0012006428ed2aaf7eabdabf700370398012006428ed6b4fadd0637039001200641af016a200641af016a20064190016a10bc80808000200641af016a200641a0016a10bd808080001091818080001a200641b0016a2480808080000f0b200641af016a4283808080c0001092818080001a000b200641af016a4283808080d0001092818080001a000b200641af016a4283808080201092818080001a000b5f02017f017e23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a41b885c0800010ad80808000024020012802080d00200010c080808000000b20012903102102200141206a24808080800020020be30102047f017e2380808080004180016b220224808080800041002103200241c0006a410041c00010e7818080001a200110fc80808000200110fa808080004204200241c0006a41c00010a3818080002002200241c0006a41c00010e9818080002104200041086a210520002903002106413f2102024003402003220141c000460d01200220052006109c8180800010cb818080004f0d0120052006200210d381808000109b8180800010cb818080002100200241206a2102200141016a2103200420016a2d0000200041ff0171460d000b0b20044180016a2480808080002001413f4b0b5f02017f017e23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a41a085c0800010ad80808000024020012802080d00200010c080808000000b20012903102102200141206a24808080800020020bc30202027f027e23808080800041d0006b22042480808080002004200041086a2205419886c08000410c10fd808080003703002005200110a18080800021062005200210cd80808000210720042005200310cd808080003703182004200737031020042006370308410021030240034020034118460d01200441206a20036a4202370300200341086a21030c000b0b200441386a200441206a200441206a41186a200441086a200441086a41186a10f5808080004100200428024c2203200428024822026b2201200120034b1b21032004280238200241037422016a2102200428024020016a2101024003402003450d01200220012005108b81808000370300200241086a2102200141086a21012003417f6a21030c000b0b2005200020042005200441206a410310a28180800010f8808080002103200441d0006a24808080800020030bb60102017f017e23808080800041106b22042480808080000240024002400240200241d085c08000108e818080000d00200241d885c08000108e818080000d01200241e085c08000108e818080000d012004200141e885c08000410d10fd80808000370308420021052002200441086a108e818080000d010c030b200341c20010bf8080800021050c010b200341c10010bf8080800021050b20002005370308420121050b20002005370300200441106a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110a280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b2202248080808000200220002001109d80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b950101017f23808080800041206b22032480808080002003200137030820032000370300200320023703102003411f6a10fb808080002003411f6a418885c08000200310ae808080002003411f6a10fb808080002003411f6a41a085c08000200341086a10ae808080002003411f6a10fb808080002003411f6a41b885c08000200341106a10ae80808000200341206a2480808080000bff0103037f017e017f23808080800041106b220224808080800020024200370308200041086a21032001410574411872210420002903002105410021000240034020004108460d01410021010240200420006a220620032005109c8180800010cb818080004f0d0020032005200610d381808000109b8180800010cb8180800021010b200241086a20006a20013a0000200041016a21000c000b0b20022903082105200241106a248080808000200542388620054280fe0383422886842005428080fc0783421886200542808080f80f834208868484200542088842808080f80f832005421888428080fc07838420054228884280fe038320054238888484840b120020004283808080101092818080001a000b3102017f017e23808080800041106b22002480808080002000410f6a10b9808080002101200041106a24808080800020010bcf0a03067f027e027f23808080800041f0016b22022480808080002002200137031820022000370310200241106a108081808000024002400240200241206a22032001109a8180800010cb818080002204450d00200441054b0d01200241a8016a210541002106410121070c020b200241d8016a428380808080011092818080001a000b200241d8016a4283808080f0001092818080001a000b034002400240024002400240024002400240024020062004470d00200241d8016a10b7808080002108200241d8016a10b98080800021092002200837034820022009370350200241d8016a10ff808080002108200241d8006a2001109f80808000200241e8006a41086a2104200241e8006a41186a2106200241206a41086a210a200241a0016a41086a21050340200241a0016a200241d8006a10c3808080000240024020022903a00122014202510d002001a74101710d04200241e8006a2005412810e9818080001a2002200241d8016a109d818080002201370320200241a0016a2002290378109f808080000340200241086a200241a0016a10c480808000200228020822034102460d0220034101710d062002200228020c220341187420034180fe03714108747220034108764180fe0371200341187672723602d8012002200a2001200241d8016a200241d8016a410410a68180800010908180800022013703200c000b0b200241f0016a2480808080000f0b2002200137039001200241c8006a2006200241e8006a10b080808000450d042002200241c8006a200610b1808080003703980120024190016a20024198016a10b880808000450d05200241d0006a200241e8006a200420024190016a10ba80808000450d062002200229036837033020022000370328200242033703202002290388012101200241d8016a200241d8016a200241e8006a20024190016a10bb80808000200220013703c801200220083703c001200241003a00d001200242013703b001200220022903e0013703a801200220022903d8013703a00120022002290380013703b801200241d8016a10fb80808000200241d8016a200241206a200241a0016a10a980808000200241d8016a10fb80808000200241d8016a200241206a418087014180f6de0010a480808000200220013703e8012002428ed2aaf7eabdabf7003703e0012002428ed6b4fadd063703d801200241d8016a200241d8016a200241d8016a10bc80808000200241d8016a200241e8016a10bd808080001091818080001a0c000b0b200641016a210b2007210a03402004200a460d0802400240200620032001109a8180800010cb818080004f0d00200220032001200610d381808000109981808000370368200241a0016a2003200241e8006a10c58080800020022802a0014101470d010c090b41f885c0800010e581808000000b200241206a2005412810e9818080001a200a20032001109a8180800010cb818080004f0d06200220032001200a10d381808000109981808000370368200241a0016a2003200241e8006a10c58080800020022802a0014101460d07200241e8006a2005412810e9818080001a200a41016a210a200241206a200241e8006a108e81808000450d000b200241d8016a428380808090011092818080001a000b41e087c08000412b200241d8016a41d087c0800041c087c0800010e681808000000b41e087c08000412b200241d8016a41d087c0800041c087c0800010e681808000000b200241d8016a4283808080c0001092818080001a000b200241d8016a4283808080d0001092818080001a000b200241d8016a4283808080201092818080001a000b418886c0800010e581808000000b000b200741016a2107200b21060c000b0b7601037f23808080800041106b22022480808080000240024020012802082203200128020c490d00200042023703000c010b2002200141086a22042001290300200310d38180800010998180800037030820002004200241086a10c5808080002001200341016a3602080b200241106a2480808080000b6602017f017e0240024020012802082202200128020c490d00410221010c010b200141086a2001290300200210d38180800010998180800021032001200241016a360208200342ff018342045221012003422088a721020b20002002360204200020013602000bbc0202027f057e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b4201210502402002290300220642ff018342cc00520d0020012006419887c080004105200341086a410510a5818080001a200341306a200341086a2001109f8180800020032802300d0020032903382106200341306a2001200341106a109c8080800020032802300d0020032903382107200341306a200341186a200110a18180800020032802300d0020032903382108200341306a2001200341206a10848180800020032802300d002003290328220942ff018342cb00520d00200329033821052000200737032820002008370320200020093703182000200537031020002006370308420021050b20002005370300200341c0006a2480808080000b3102017f017e23808080800041106b22002480808080002000410f6a10b7808080002101200041106a24808080800020010b6202017f017e23808080800041206b22002480808080002000411f6a10fb80808000200041086a2000411f6a418885c0800010ad80808000024020002802080d002000411f6a10c080808000000b20002903102101200041206a24808080800020010b9b0301017f23808080800041b0016b2203248080808000200320023703082003200037030020031080818080002003200341af016a10b78080800037031002400240200341106a2003200341086a10b080808000450d00200320023703282003200137032020034203370318200341af016a10fb80808000200341e8006a200341af016a200341186a10a68080800020032903684202510d01200341306a200341e8006a413810e9818080001a200341013a0060200341af016a10fb80808000200341af016a200341186a200341306a10a980808000200341af016a10fb80808000200341af016a200341186a418087014180f6de0010a4808080002003200341af016a10ff80808000370380012003200037037820032002370370200320013703682003428ed2aa98bdd7de013703a001200341af016a200341af016a200341a0016a10c980808000200341af016a200341e8006a10ca808080001091818080001a200341b0016a2480808080000f0b200341af016a4283808080c0001092818080001a000b200341af016a4283808080e0001092818080001a000b4502017f017e23808080800041106b220224808080800020022000200110a080808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b220224808080800020022000200110e380808000024020022802004101470d00000b20022903082103200241106a24808080800020030b840101017f23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a418885c0800010ad80808000024020012802080d002001411f6a10c080808000000b20012001290310370308200141086a1080818080002001411f6a10fb808080002001411f6a200010a380808000200141206a2480808080000b910101017f23808080800041206b2201248080808000200120003703002001411f6a10fb80808000200141086a2001411f6a418885c0800010ad80808000024020012802080d002001411f6a10c080808000000b20012001290310370308200141086a1080818080002001411f6a10fb808080002001411f6a418885c08000200110ae80808000200141206a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110f980808000024020022802004101470d00000b20022903082103200241106a24808080800020030b8c0202017f057e23808080800041306b2203248080808000200341086a2001200241286a109d8080800042012104024020032802080d0020032903102105200341086a2001200241106a10cf8080800020032802080d0020032903102106200341086a2001200241306a10f28080800020032802080d0020032903102107200341086a2001200210d08080800020032802080d0020032903102108200341086a2001200241206a109d8080800020032802080d0020032003290310370328200320083703202003200737031820032006370310200320053703082000200141bc84c080004105200341086a410510a481808000370308420021040b20002004370300200341306a2480808080000b2d00024020022802004101470d002000200241086a200110a0818080000f0b20004200370300200042023703080b2d00024020022802004101470d0020002001200241086a109d808080000f0b20004200370300200042023703080b3702017f017e23808080800041106b220024808080800010c7808080002000410f6a10d2808080002101200041106a24808080800020010b3801017f23808080800041106b220224808080800020022000370308200241086a20011089818080002100200241106a24808080800020000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108681808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a10868180800020032802184101460d0020032903202100200341186a2003412f6a200341106a10858180800020032802184101460d0020012000200329032010c880808000200341306a24808080800042020f0b000b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108781808000024020012802084101470d00000b200129031010cb80808000200141206a24808080800042020b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108681808000024020012802084101470d00000b200129031010cc80808000200141206a24808080800042020bf10102017f027e23808080800041306b2204248080808000200420013703082004200037030020042002370310200441186a2004412f6a2004108681808000024020042802184101460d0020042903202101200441186a2004412f6a200441086a10858180800020042802184101460d0020042903202100200441186a2004412f6a200441106a109b80808000200429031822024202510d00200429032021050240024020034202520d00420021060c010b200342ff018342cb00520d01420121060b20012000200220052006200310b2808080002004412f6a10d7808080002103200441306a24808080800020030f0b000b3a02017f017e23808080800041106b2202248080808000200220003a000f2002410f6a2001108a818080002103200241106a24808080800020030bc80102017f017e23808080800041306b22032480808080002003200137030820032000370300200341106a2003412f6a2003108681808000024020032802104101460d0020032903182101200341106a2003412f6a200341086a10858180800020032802104101460d00200329031821000240024020024202520d00420021040c010b200242ff018342cb00520d01420121040b200341106a200120002004200210b4808080002003412f6a200341106a10d9808080002102200341306a24808080800020020f0b000b4502017f017e23808080800041106b220224808080800020022000200110e280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108681808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a10858180800020022802184101460d002001200229032010b580808000200241306a24808080800042020f0b000bcb0201017f23808080800041d0006b2206248080808000200620013703102006200037030820062002370318200620033703202006200437032820062005370330200641386a200641cf006a200641086a108681808000024020062802384101460d0020062903402101200641386a200641cf006a200641106a10868180800020062802384101460d0020062903402100200641386a200641cf006a200641186a10858180800020062802384101460d0020062903402102200641386a200641cf006a200641206a10848180800020062802384101460d0020062903402103200641386a200641cf006a200641286a10848180800020062802384101460d0020062903402104200641386a200641cf006a200641306a109c8080800020062802384101460d0020012000200220032004200629034010b680808000200641d0006a24808080800042020f0b000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108681808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a10868180800020032802184101460d0020032903202100200341186a2003412f6a200341106a10868180800020032802184101460d0020012000200329032010be80808000200341306a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c1808080002000410f6a10d2808080002101200041106a24808080800020010b6301017f23808080800041206b220224808080800020022000370300200241086a2002411f6a2002108681808000024020022802084101460d00200142ff018342cb00520d002002290310200110c280808000200241206a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c6808080002000410f6a10d2808080002101200041106a24808080800020010b7302017f027e23808080800041106b2203248080808000200320022001109e818080000240024020032802000d00200320032903083703004200210420012003410110a28180800021050c010b4201210410ca8180800021050b2000200437030020002005370308200341106a2480808080000bc70102017f027e23808080800041206b2203248080808000200341086a20022001109e818080000240024020032802080d0020032903102104200341086a200241086a2001109e8180800020032802080d0020032903102105200341086a200241106a2001109e8180800020032802080d00200320032903103703182003200537031020032004370308420021042001200341086a410310a28180800021050c010b4201210410ca8180800021050b2000200437030020002005370308200341206a2480808080000bdc0102017f047e23808080800041206b2203248080808000200341086a2001200241086a10f2808080000240024020032802084101470d004201210410ca8180800021050c010b20032903102106200341086a20012002109d80808000200329031021054201210420032802080d00200341086a2001200241106a109d808080002003290310210702402003280208450d00200721050c010b200320073703182003200537031020032006370308420021042001200341086a410310a28180800021050b2000200437030020002005370308200341206a2480808080000be70102017f057e23808080800041206b220324808080800020032002200110a0818080000240024020032802000d00200329030821042003200241086a200110a08180800020032802000d00200329030821052003200241106a200110a08180800020032802000d002003290308210620032001200241186a109d80808000200329030821074201210820032802000d01200320073703182003200637031020032005370308200320043703004200210820012003410410a28180800021070c010b4201210810ca8180800021070b2000200837030020002007370308200341206a2480808080000b12002001418b88c08000410f10e4818080000b1400108d8180800020002001200210dc808080000b0e00108d8180800010d1808080000b1600108d81808000200020012002200310d6808080000b1400108d8180800020002001200210d8808080000b0e00108d8180800010df808080000b1400108d8180800020002001200210d3808080000b1200108d818080002000200110da808080000b1000108d81808000200010d5808080000b1a00108d8180800020002001200220032004200510db808080000b1200108d818080002000200110de808080000b1000108d81808000200010d4808080000b0e00108d8180800010dd808080000b0300000b130020004200370300200020023100003703080b6102017f017e23808080800041106b220324808080800020032002290300220410d4818080000240024020032802000d00200329030821040c010b2001200410aa8180800021040b2000420037030020002004370308200341106a2480808080000b9a0102017f027e23808080800041206b220324808080800020032002290300220410c6818080000240024020032802004101470d00200341106a200410c781808000024020032802100d00420021042001200329031810a88180800021050c020b4201210410ca8180800021050c010b42002104200329030810c38180800021050b2000200437030020002005370308200341206a2480808080000b4400200041003602102000200436020c2000200336020820002002360204200020013602002000200420036b4103762204200220016b410376220320042003491b3602140b3901017f23808080800041106b22032480808080002003200229020037020820002001200341086a10f780808000200341106a2480808080000b6d02027f017e23808080800041106b22032480808080002003200228020022042002280204220210c5818080000240024020032802004101470d0020012004200210c28180800021050c010b200329030821050b2000420037030020002005370308200341106a2480808080000b7101027f23808080800041106b220424808080800041012105024002400240200020012903002002290300200310b681808000a741ff01710e020102000b41cc88c08000412b2004410f6a41bc88c08000419c88c0800010e681808000000b410021050b200441106a24808080800020050b130020004200370300200020022903003703080b070020002903000b02000b0700200041086a0b5902017f017e23808080800041206b22032480808080002003200236020c20032001360208200341106a2000200341086a10f680808000024020032802104101470d00000b20032903182104200341206a24808080800020040b5a02017f017e23808080800041106b220224808080800020022001370308420121030240200241106a200110bb8180800010cb818080004120470d0020002001370308420021030b20002003370300200241106a2480808080000b7e02017f017e23808080800041206b22012480808080002001200010b381808000370308200141106a2000200141086a10f48080800020012903182102024020012802104101470d002001200237031041cc88c08000412b200141106a41f888c0800041ac88c0800010e681808000000b200141206a24808080800020020b1300200041086a200029030010ab818080001a0b0e0020002001200210af818080000b140020002001200210b08180800010cc818080000b5102017f017e23808080800041106b220324808080800020032001200210f68080800042012104024020032802000d0020002003290308370308420021040b20002004370300200341106a2480808080000b2e01027e4201210302402002290300220442ff018342c800520d0020002004370308420021030b200020033703000b2d01027e4201210302402002290300220410d581808000450d0020002004370308420021030b200020033703000b2e01027e4201210302402002290300220442ff018342cd00520d0020002004370308420021030b200020033703000b2a01017e02402002290300220342ff018342c800510d00200042013703000f0b2000200310fe808080000b7b02017f027e23808080800041106b2203248080808000024002402002290300220442ff018342c800510d00200042013703000c010b20032004370308420121050240200341106a200410bb8180800010cb8180800041c000470d0020002004370308420021050b200020053703000b200341106a2480808080000b070020002903000b070020003100000b070020002903000b8d0102017f027e23808080800041206b2202248080808000200129030021030240024002402000290300220442ff0183420e520d00200342ff0183420e510d010b2002411f6a2004200310b781808000220342005520034200536b21010c010b2002200437030820022003370310200241086a200241106a10d28180800021010b200241206a24808080800020010b02000b110020002001108c8180800041ff0171450b0c002000200110a8818080000b0e0020002001200210a9818080000b0e0020002001200210ac818080000b0c002000200110ad818080000b0e0020002001200210ae818080000b1000200020012002200310b1818080000b0e0020002001200210b2818080000b12002000200120022003200410b4818080000b0c002000200110b5818080000b1000200020012002200310b6818080000b0e0020002001200210b8818080000b0c002000200110b9818080000b0e0020002001200210ba818080000b0c002000200110bb818080000b0a00200010bc818080000b130020004200370300200020012903003703080b0e002000200120011085818080000b130020004200370300200020012903003703080b2e01027e4201210302402001290300220442ff018342cd00520d0020002004370308420021030b200020033703000b0e0020002001200210bd818080000b12002000200120022003200410be818080000b12002000200120022003200410bf818080000b140020002001200220032004200510c0818080000b0e0020002001200210c1818080000b12002001418889c08000410f10e4818080000b0a0020011080808080000b0c00200120021081808080000b0a0020011082808080000b0a0020011083808080000b0c00200120021084808080000b0a0020011085808080000b0c00200120021086808080000b0c00200120021087808080000b0c00200120021088808080000b0e002001200220031089808080000b0c0020012002108a808080000b0800108b808080000b10002001200220032004108c808080000b0a0020011092808080000b0e002001200220031094808080000b0c00200120021095808080000b0c00200120021096808080000b0a0020011097808080000b0c00200120021098808080000b0a0020011099808080000b0800109a808080000b1a002001ad4220864204842002ad422086420484108e808080000b1f00200120022003ad4220864204842004ad422086420484108f808080001a0b2e00024020022004460d00000b2001ad4220864204842003ad4220864204842002ad422086420484108d808080000b3000024020032005460d00000b20012002ad4220864204842004ad4220864204842003ad4220864204841090808080000b1a002001ad4220864204842002ad4220864204841091808080000b1a002001ad4220864204842002ad4220864204841093808080000b070020004208880b960102017e027f2000290300210103400240200150450d00418080c4000f0b024002402001423088a7413f7122024101470d0041df0021020c010b0240024002402002417f6a410b4f0d00412e21030c010b0240200241746a411a4f0d00413521030c010b200241254d0d01413b21030b200220036a21020c010b2000200142068622013703000c010b0b2000200142068637030020020bb50102017f017e23808080800041106b220324808080800002400240200241094b0d00420021040340024020020d002000410036020020002004420886420e843703080c030b200341086a20012d000010cd81808000024020032d00084103460d0020002003290308370204200041013602000c030b200141016a21012002417f6a2102200442068620033100098421040c000b0b20002002360208200041003a0004200041013602000b200341106a2480808080000b2801017e420121020240200142ff01834206520d0020002001370308420021020b200020023703000b2901017e420121020240200142ff018342c000520d0020002001370308420021020b200020023703000b26002000200128020041027422012802d48ac08000360204200020012802fc8ac080003602000b26002000200128020041027422012802a48bc08000360204200020012802cc8bc080003602000b0900428390808080010b08002000422088a70b070020004201510b820101017f410121020240200141ff017141df00460d0002400240200141506a41ff0171410a490d00200141bf7f6a41ff0171411a490d0102402001419f7f6a41ff0171411a490d00200020013a0001200041013a00000f0b200141456a21020c020b200141526a21020c010b2001414b6a21020b200041033a0000200020023a00010b140020002802002000280204200110d8818080000b1600200028020020002802042001200210d6818080000b950101037f23808080800041106b22022480808080002002200142088837030820022000370300024002400340200210c4818080002103200241086a10c48180800021042003418080c400460d0102402004418080c400470d00410121030c030b20032004460d000b200320044b20032004496b21030c010b417f41002004418080c400471b21030b200241106a24808080800020030be50403017f017e027f23808080800041e0006b2202248080808000200220002903002203a72200410876220436023020022003422088a7220536023402400240024002402000418014490d0020034280808080a001540d01200241848080800036025c20024184808080003602542002200241346a3602582002200241306a360250200141d183c08000200241d0006a10cf8180800021000c030b200220043602382000418002490d01024020034280808080a001540d00200241206a200241386a10c98180800020022002290320370248200241848080800036025c20024185808080003602542002200241346a3602582002200241c8006a360250200141c183c08000200241d0006a10cf8180800021000c030b2002200536023c200241186a200241386a10c98180800020022002290318370240200241106a2002413c6a10c88180800020022002290310370248200241858080800036025c20024185808080003602542002200241c8006a3602582002200241c0006a360250200141e283c08000200241d0006a10cf8180800021000c020b20022005360240200241286a200241c0006a10c88180800020022002290328370248200241858080800036025c20024184808080003602542002200241c8006a3602582002200241306a360250200141f183c08000200241d0006a10cf8180800021000c010b200241086a200241386a10c98180800020022002290308370248200241848080800036025c20024185808080003602542002200241346a3602582002200241c8006a360250200141c183c08000200241d0006a10cf8180800021000b200241e0006a24808080800020000b15002000290300420888200129030010d0818080000b0b002000ad4220864204840b3201017e420121020240200142ffffffffffffffff00560d0020002001420886420684370308420021020b200020023703000b1701017f2000a741ff01712201410e46200141ca0046720be50401087f23808080800041106b220424808080800002400240024020034101710d0020022d000022050d01410021050c020b200020022003410176200128020c1180808080000021050c010b200128020c2106410021070340200241016a210802400240024002400240024002402005411874411875417f4a0d00200541ff01712209418001460d01200941c001460d0241a080808006210a02402005410171450d00200241056a21082002280001210a0b4100210920054102710d0320082102410021080c040b024020002008200541ff017122052006118080808000000d00200820056a21020c060b410121050c070b02402000200241036a220520022f000122022006118080808000000d00200520026a21020c050b410121050c060b2004200136020420042000360200200442a080808006370208200320074103746a22052802002004200528020411818080800000450d02410121050c050b200841026a210220082f000021080b0240024020054104710d002002210b0c010b200241026a210b20022f000021090b0240024020054108710d00200b21020c010b200b41026a2102200b2f000021070b02402005411071450d002003200841ffff03714103746a2f010421080b02402005412071450d002003200941ffff03714103746a2f010421090b200420093b010e200420083b010c2004200a36020820042001360204200420003602000240200320074103746a22052802002004200528020411818080800000450d00410121050c040b200741016a21070c010b200741016a2107200821020b20022d000022050d000b410021050b200441106a24808080800020050b180020002802002001200028020428020c118180808000000b0e0020022000200110d9818080000ba30501077f024002402000280208220341808080c00171450d00024002402003418080808001710d00024020024110490d002001200210e38180800021040c020b024020020d0041002104410021020c020b2002410371210502400240200241044f0d0041002106410021040c010b2002410c712107410021064100210403402004200120066a22082c000041bf7f4a6a200841016a2c000041bf7f4a6a200841026a2c000041bf7f4a6a200841036a2c000041bf7f4a6a21042007200641046a2206470d000b0b2005450d01200120066a21080340200420082c000041bf7f4a6a2104200841016a21082005417f6a22050d000c020b0b02400240024020002f010e22070d00410021020c010b200120026a21054100210220012108200721060340200822042005460d020240024020042c00002208417f4c0d00200441016a21080c010b0240200841604f0d00200441026a21080c010b0240200841704f0d00200441036a21080c010b200441046a21080b200820046b20026a21022006417f6a22060d000b0b410021060b200720066b21040b200420002f010c22084f0d00200820046b210941002104410021070240024002402003411d764103710e0402000102020b200921070c010b200941feff037141017621070b200341ffffff00712105200028020421062000280200210002400340200441ffff0371200741ffff03714f0d0141012108200441016a210420002005200628021011818080800000450d000c030b0b41012108200020012002200628020c118080808000000d0141002104200920076b41ffff037121020340200441ffff037122072002492108200720024f0d02200441016a210420002005200628021011818080800000450d000c020b0b200028020020012002200028020428020c1180808080000021080b20080b140020012000280200200028020410d9818080000bc20401097f20002103200221040240200041e807490d002001417c6a21054100210620002107024002400340200720074190ce006e22034190ce006c6b220841ffff037141e4006e210902400240200220066a2204417c6a20024f0d00200520026a220a2009410174220b2d00f48bc080003a00002004417d6a2002490d012004417d6a200241bc8dc0800010de81808000000b2004417c6a200241bc8dc0800010de81808000000b200a41016a200b41f58bc080006a2d00003a000002402004417e6a20024f0d00200a41026a2008200941e4006c6b41017441feff077122092d00f48bc080003a00002004417f6a20024f0d02200a41036a200941f58bc080006a2d00003a00002005417c6a21052006417c6a2106200741fface2044b2104200321072004450d030c010b0b2004417e6a200241bc8dc0800010de81808000000b2004417f6a200241bc8dc0800010de81808000000b200220066a21040b02400240200341094b0d002003210a200421070c010b200341ffff037141e4006e210a024002402004417e6a220720024f0d00200120076a2003200a41e4006c6b41ffff037141017422062d00f48bc080003a00002004417f6a220420024f0d01200120046a200641f58bc080006a2d00003a00000c020b2007200241bc8dc0800010de81808000000b2004200241bc8dc0800010de81808000000b0240024002402000450d00200a450d010b2007417f6a220720024f0d01200120076a200a4101742d00f58bc080003a00000b20070f0b2007200241bc8dc0800010de81808000000b990602087f017e0240024020010d00200541016a210620002802082107412d21080c010b412b418080c4002000280208220741808080017122011b2108200141157620056a21060b0240024020074180808004710d00410021020c010b0240024020034110490d002002200310e38180800021010c010b024020030d00410021010c010b2003410371210902400240200341044f0d004100210a410021010c010b2003410c71210b4100210a41002101034020012002200a6a220c2c000041bf7f4a6a200c41016a2c000041bf7f4a6a200c41026a2c000041bf7f4a6a200c41036a2c000041bf7f4a6a2101200b200a41046a220a470d000b0b2009450d002002200a6a210c03402001200c2c000041bf7f4a6a2101200c41016a210c2009417f6a22090d000b0b200120066a21060b02400240200620002f010c220b4f0d0002400240024020074180808008710d00200b20066b210d410021014100210b0240024002402007411d764103710e0402000100020b200d210b0c010b200d41feff0371410176210b0b200741ffffff00712106200028020421092000280200210a0340200141ffff0371200b41ffff03714f0d024101210c200141016a2101200a2006200928021011818080800000450d000c050b0b20002000290208220ea741808080ff797141b080808002723602084101210c2000280200220a2000280204220920082002200310e2818080000d0341002101200b20066b41ffff037121020340200141ffff037120024f0d024101210c200141016a2101200a4130200928021011818080800000450d000c040b0b4101210c200a200920082002200310e2818080000d02200a20042005200928020c118080808000000d0241002101200d200b6b41ffff037121000340200141ffff03712202200049210c200220004f0d03200141016a2101200a2006200928021011818080800000450d000c030b0b4101210c200a20042005200928020c118080808000000d012000200e37020841000f0b4101210c200028020022012000280204220a20082002200310e2818080000d00200120042005200a28020c11808080800000210c0b200c0b4701017f23808080800041206b2203248080808000200320013602102003200036020c200341013b011c2003200236021820032003410c6a360214200341146a10f180808000000b5f02017f017e23808080800041206b22032480808080002003200136020c200320003602082003418680808000ad4220862204200341086aad84370318200320042003410c6aad84370310418080c08000200341106a200210dd81808000000b6401027f23808080800041106b2202248080808000200120002802002200417f73411f7641014100200241066a20002000411f7522037320036b200241066a410a10db8180800022006a410a20006b10dc818080002100200241106a24808080800020000b5101017f23808080800041106b22022480808080002001410141014100200241066a2000280200200241066a410a10db8180800022006a410a20006b10dc818080002100200241106a24808080800020000b150020002001410174410172200210dd81808000000b410002402002418080c400460d0020002002200128021011818080800000450d0041010f0b024020030d0041000f0b200020032004200128020c118080808000000bf10601087f024002402001200041036a417c71220220006b2203490d00200120036b22044104490d00200441037121054100210641002101024020022000460d0041002107410021010240200020026b2208417c4b0d00410021074100210103402001200020076a22022c000041bf7f4a6a200241016a2c000041bf7f4a6a200241026a2c000041bf7f4a6a200241036a2c000041bf7f4a6a2101200741046a22070d000b0b200020076a21020340200120022c000041bf7f4a6a2101200241016a2102200841016a22080d000b0b200020036a210802402005450d002008200441fcffffff07716a22022c000041bf7f4a210620054101460d00200620022c000141bf7f4a6a210620054102460d00200620022c000241bf7f4a6a21060b20044102762103200620016a21070340200821062003450d02200341c001200341c001491b22044103712105024002402004410274220941f0077122080d00410021020c010b410021022006210103402001410c6a2802002200417f73410776200041067672418182840871200141086a2802002200417f73410776200041067672418182840871200141046a2802002200417f7341077620004106767241818284087120012802002200417f7341077620004106767241818284087120026a6a6a6a2102200141106a2101200841706a22080d000b0b200320046b2103200620096a2108200241087641ff81fc0771200241ff81fc07716a418180046c41107620076a21072005450d000b2006200441fc01714102746a22022802002201417f734107762001410676724181828408712101024020054101460d0020022802042208417f7341077620084106767241818284087120016a210120054102460d0020022802082202417f7341077620024106767241818284087120016a21010b200141087641ff811c71200141ff81fc07716a418180046c41107620076a21070c010b024020010d0041000f0b2001410371210802400240200141044f0d0041002102410021070c010b2001417c712103410021024100210703402007200020026a22012c000041bf7f4a6a200141016a2c000041bf7f4a6a200141026a2c000041bf7f4a6a200141036a2c000041bf7f4a6a21072003200241046a2202470d000b0b2008450d00200020026a21010340200720012c000041bf7f4a6a2107200141016a21012008417f6a22080d000b0b20070b1a00200028020020012002200028020428020c118080808000000b130041cc8dc08000412b200010e181808000000b6e01017f23808080800041206b220524808080800020052001360204200520003602002005200336020c200520023602082005418780808000ad422086200541086aad843703182005418880808000ad4220862005ad8437031041b780c08000200541106a200410dd81808000000baa0301057f02400240200241104f0d00200021030c010b024020002000410020006b41037122046a22054f0d002004417f6a21062000210302402004450d0020042107200021030340200320013a0000200341016a21032007417f6a22070d000b0b20064107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032005470d000b0b024020052005200220046b2202417c716a22034f0d00200141ff017141818284086c2107034020052007360200200541046a22052003490d000b0b200241037121020b02402003200320026a22074f0d002002417f6a2104024020024107712205450d000340200320013a0000200341016a21032005417f6a22050d000b0b20044107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032007470d000b0b20000bba07010c7f23808080800041106b210302400240200241104f0d00200021040c010b024020002000410020006b41037122056a22064f0d002005417f6a2107200021042001210802402005450d002005210920002104200121080340200420082d00003a0000200841016a2108200441016a21042009417f6a22090d000b0b20074107490d000340200420082d00003a0000200441016a200841016a2d00003a0000200441026a200841026a2d00003a0000200441036a200841036a2d00003a0000200441046a200841046a2d00003a0000200441056a200841056a2d00003a0000200441066a200841066a2d00003a0000200441076a200841076a2d00003a0000200841086a2108200441086a22042006470d000b0b2006200220056b2209417c7122076a210402400240200120056a22084103712201450d00410021022003410036020c2003410c6a20017221050240410420016b220a410171450d00200520082d00003a0000410121020b0240200a410271450d00200520026a200820026a2f01003b01000b200820016b21022001410374210b200328020c210502400240200641046a2004490d002006210c0c010b4100200b6b411871210d034020062005200b76200241046a22022802002205200d7472360200200641086a210a200641046a220c2106200a2004490d000b0b41002106200341003a0008200341003a00060240024020014101470d00200341086a210d410021014100210a4100210e0c010b200241056a2d0000210a2003200241046a2d000022013a0008200a410874210a4102210e200341066a210d0b02402008410171450d00200d200241046a200e6a2d00003a000020032d0006411074210620032d000821010b200c200a200672200141ff0171724100200b6b411871742005200b76723602000c010b200620044f0d0020082101034020062001280200360200200141046a2101200641046a22062004490d000b0b20094103712102200820076a21010b02402004200420026a22064f0d002002417f6a2109024020024107712208450d000340200420012d00003a0000200141016a2101200441016a21042008417f6a22080d000b0b20094107490d000340200420012d00003a0000200441016a200141016a2d00003a0000200441026a200141026a2d00003a0000200441036a200141036a2d00003a0000200441046a200141046a2d00003a0000200441056a200141056a2d00003a0000200441066a200141066a2d00003a0000200441076a200141076a2d00003a0000200141086a2101200441086a22042006470d000b0b20000b0e0020002001200210e8818080000b0b810e0100418080c0000bf70d20696e646578206f7574206f6620626f756e64733a20746865206c656e20697320c012206275742074686520696e64657820697320c000c0023a20c0002f55736572732f4d757269746164686f722f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f656e762e7273002f55736572732f4d757269746164686f722f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f6c65646765722e7273002f55736572732f4d757269746164686f722f2e7275737475702f746f6f6c636861696e732f737461626c652d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f6f70732f66756e6374696f6e2e7273006c6962726172792f636f72652f7372632f666d742f6e756d2e727300636f6e7472616374732f70726f6f665f72656769737472792f7372632f6c69622e727300064572726f7228c0032c2023c0012900074572726f722823c0032c2023c0012900064572726f7228c0022c20c0012900074572726f722823c0022c20c00129000000003d00100064000000aa0100000e0000006578706972796973737565727265766f6b65647468726573686f6c6476657269666965645f61740014021000060000001a0210000600000020021000070000002702100009000000300210000b00000069735f76616c69645f6973737565726765745f6973737565725f7075626b6579000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000e2a6b02000000000eaa4ca3b30b00000e783aeb2b00000061636372656469746174696f6e0000009d0110002300000002010000270000009d01100023000000030100002b0000007665726966795f70726f6f6641646d696e00000024031000050000005665726966696572340310000800000049737375657252656769737472790000440310000e00000050726f6f660000005c0310000500000063726564656e7469616c5f747970656973737565725f696470726f6f667075626c69635f696e7075747300006c0310000f00000014021000060000007b031000090000008403100005000000890310000d0000000a01100076000000fa000000050000000000000000000000010000000100000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565436f6e76657273696f6e4572726f7200003d00100064000000aa0100000e000000a2001000670000005b0000000e0000000000000000000000010000000200000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c75650000000000080000000800000003000000436f6e76657273696f6e4572726f724172697468446f6d61696e496e646578426f756e6473496e76616c6964496e7075744d697373696e6756616c75654578697374696e6756616c756545786365656465644c696d6974496e76616c6964416374696f6e496e7465726e616c4572726f72556e657870656374656454797065556e657870656374656453697a65436f6e74726163745761736d566d436f6e7465787453746f726167654f626a65637443727970746f4576656e747342756467657456616c75654175746800000b0000000b0000000c0000000c0000000d0000000d0000000d0000000d0000000e0000000e00000097041000a2041000ad041000b9041000c5041000d2041000df041000ec041000f90410000705100008000000060000000700000007000000060000000600000006000000060000000500000004000000150510001d051000230510002a05100031051000370510003d05100043051000490510004e0510003030303130323033303430353036303730383039313031313132313331343135313631373138313932303231323232333234323532363237323832393330333133323333333433353336333733383339343034313432343334343435343634373438343935303531353235333534353535363537353835393630363136323633363436353636363736383639373037313732373337343735373637373738373938303831383238333834383538363837383838393930393139323933393439353936393739383939810110001b000000570200000500000063616c6c656420604f7074696f6e3a3a756e77726170282960206f6e206120604e6f6e65602076616c756500fb270e636f6e7472616374737065637630000000040000000000000000000000054572726f7200000000000009000000000000000e4e6f74496e697469616c697a65640000000000010000000000000012566572696669636174696f6e4661696c6564000000000002000000000000000d4e6f74417574686f72697a65640000000000000300000000000000104973737565724e6f74547275737465640000000400000055546865207075626c6963206b6579207468652070726f6f6620776173206d61646520616761696e737420646f6573206e6f74206d617463682074686520726567697374657265640a6973737565722773206b65792e000000000000114973737565724b65794d69736d6174636800000000000005000000000000000d50726f6f664e6f74466f756e64000000000000060000003a54686520626174636820636f6e7461696e73206d6f7265207468616e20604d41585f42415443485f53495a4560207375626d697373696f6e732e00000000000d4261746368546f6f4c61726765000000000000070000002f546865206261746368206d75737420636f6e7461696e206174206c65617374206f6e65207375626d697373696f6e2e000000000a4261746368456d7074790000000000080000008c54776f206f72206d6f7265207375626d697373696f6e7320696e20746865206261746368207368617265207468652073616d65206063726564656e7469616c5f74797065603b0a6f6e6c7920746865206c61737420777269746520776f756c6420737572766976652c20736f207468652062617463682069732072656a6563746564206f757472696768742e000000174475706c696361746543726564656e7469616c54797065000000000900000002000000000000000000000007446174614b6579000000000400000000000000000000000541646d696e000000000000000000000000000008566572696669657200000000000000000000000e49737375657252656769737472790000000000010000003843616368656420766572696669636174696f6e2c206b657965642062792028686f6c6465722c2063726564656e7469616c5f74797065292e0000000550726f6f660000000000000200000013000000110000000100000000000000000000000b50726f6f665265636f726400000000050000000000000006657870697279000000000006000003a2546865206973737565722074686174207369676e6564207468652063726564656e7469616c20746869732070726f6f662077617320766572696669656420616761696e73742e0a4c65747320612070726f746f636f6c2072657374726963742077686963682069737375657273206974207472757374732070657220636c61696d2074797065207669610a60747275737465645f6973737565727360206f6e206069735f766572696669656460202f2060636865636b5f636c61696d602e0a0a604f7074696f6e6020736f2060697373756572602063616e206265206578706c696369746c7920616273656e742077697468696e20616e0a616c72656164792d63757272656e742d7368617065207265636f72642028652e672e206f6e65207772697474656e206279206120667574757265206d6967726174696f6e0a746861742063616e2774207265636f76657220746865206f726967696e616c206973737565722920e2809420606973737565725f69735f7472757374656460207468656e0a6661696c7320636c6f73656420616e642072656a6563747320697420756e64657220616e206163746976652060747275737465645f69737375657273602066696c7465722c0a73696e63652074686572652773206e6f2069737375657220746f20636865636b20616761696e73742028612066696c7465726c6573732063616c6c65722069730a756e61666665637465642065697468657220776179292e205468697320646f6573204e4f542c20627920697473656c662c206d616b652061207265636f72640a7772697474656e206265666f72652074686973206669656c642065786973746564207265616461626c653a20536f726f62616e277320737472756374206465636f64696e670a7265717569726573207468652073746f726564206d6170277320656e74727920636f756e7420746f2065786163746c79206d61746368207468652063757272656e740a7374727563742773206669656c6420636f756e742c20736f2074686f7365207265636f726473207374696c6c206661696c20746f20646573657269616c697a6520287365650a606c65676163795f7265636f72645f6d697373696e675f6973737565725f6b65795f6661696c735f746f5f726561646020696e20746573742e7273292e2041207265616c0a6d6967726174696f6e206973207265717569726564206265666f72652072656465706c6f79696e67206f766572206578697374696e672073746f7265642070726f6f66732e0000000000066973737565720000000003e80000001300000049536574206279207468652072656769737465726564206973737565722076696120607265766f6b65602e204578706972792064617461206973206b65707420666f722061756469742e000000000000077265766f6b65640000000001000000be466f7220706172616d65746572697365642063726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292c20746865207468726573686f6c640a76616c756520746861742077617320636f6d6d697474656420746f20696e207468652070726f6f662773207075626c696320696e707574732e204e6f6e6520666f722074797065730a77697468206e6f206e756d65726963207468726573686f6c6420286b79632c206a7572697364696374696f6e292e0000000000097468726573686f6c64000000000003e800000006000000000000000b76657269666965645f6174000000000600000000000000000000000561646d696e0000000000000000000001000000130000000000000082496e76616c6964617465206120686f6c6465722773206361636865642070726f6f662e204f6e6c792074686520726567697374657265642069737375657220666f720a6063726564656e7469616c5f7479706560206d61792063616c6c20746869732028652e672e207768656e204b594320737461747573206368616e676573292e0000000000067265766f6b6500000000000300000000000000066973737565720000000000130000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f74797065000000001100000000000000000000000000000007757067726164650000000001000000000000000d6e65775f7761736d5f68617368000000000003ee00000020000000000000000100000099412073696e676c652070726f6f66207375626d697373696f6e20696e7369646520612062617463682e204d6972726f72732074686520696e646976696475616c20706172616d65746572730a6f6620607375626d69745f70726f6f6660206275742067726f7570656420696e746f20612073747275637420736f20746865792063616e2062652070617373656420617320612060566563602e000000000000000000000f50726f6f665375626d697373696f6e0000000005000000000000000f63726564656e7469616c5f747970650000000011000000000000000665787069727900000000000600000000000000096973737565725f696400000000000013000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e70757473000000000003ea000000040000000000000000000000097365745f61646d696e0000000000000100000000000000096e65775f61646d696e000000000000130000000000000000000001bb4c696b65206069735f7665726966696564602062757420616c736f20656e666f726365732061206d696e696d756d207468726573686f6c6420666f7220706172616d65746572697365640a63726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292e20412070726f6f66207375626d697474656420776974682061207468726573686f6c640a6f66203230305f3030302073617469736669657320606d696e5f7468726573686f6c64203d2035305f3030306020626563617573652069742070726f766573207374726963746c790a6d6f72652e20466f7220606b79636020616e6420606a7572697364696374696f6e602c207061737320606d696e5f7468726573686f6c64203d204e6f6e65602e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465640ae2809420736565206069735f7665726966696564602e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565722028756e6368616e6765640a6265686176696f7572292e000000000b636865636b5f636c61696d00000000040000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000d6d696e5f7468726573686f6c64000000000003e800000006000000000000000f747275737465645f6973737565727300000003e8000003ea00000013000000010000000100000000000001e652657475726e7320602869735f63757272656e746c795f76616c69642c2076657269666965645f61742c2065787069727929602e206069735f63757272656e746c795f76616c6964600a6163636f756e747320666f722065787069727920616761696e7374207468652063757272656e74206c65646765722074696d652e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465643a0a7468652073746f7265642070726f6f66277320697373756572206d75737420626520696e20746865206c6973742c206f7220746869732072657475726e730a602866616c73652c2076657269666965645f61742c206578706972792960206576656e206966207468652070726f6f66206973206f74686572776973652076616c696420e280940a74696d657374616d707320617265207374696c6c2072657475726e656420666f722061756469742c206d61746368696e6720746865206578697374696e670a7265766f6b65642f65787069726564206265686176696f75722e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565720a28756e6368616e676564206265686176696f7572292e00000000000b69735f766572696669656400000000030000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000f747275737465645f6973737565727300000003e8000003ea0000001300000001000003ed0000000300000001000000060000000600000000000000425265766f6b652061206361636865642070726f6f662e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207265766f636174696f6e2e00000000000c7265766f6b655f70726f6f66000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000000cd56657269667920612070726f6f6620616e642c2069662076616c69642c20636163686520697420666f722060686f6c6465726020756e74696c2060657870697279600a286c65646765722074696d657374616d702c207365636f6e6473292e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207375626d697373696f6e2e0a606973737565725f696460206d757374206265207265676973746572656420616e64207472757374656420666f72206063726564656e7469616c5f74797065602e0000000000000c7375626d69745f70726f6f66000000060000000000000006686f6c64657200000000001300000000000000096973737565725f696400000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e707574730000000000000e000000000000000665787069727900000000000600000000000000000000004e6061646d696e602c206076657269666965726020616e6420606973737565725f7265676973747279602061726520746865206465706c6f79656420636f6e7472616374206164647265737365732e00000000000d5f5f636f6e7374727563746f7200000000000003000000000000000561646d696e000000000000130000000000000008766572696669657200000013000000000000000f6973737565725f726567697374727900000000130000000000000000000000000000001076657269666965725f6164647265737300000000000000010000001300000000000000764f6e65206576656e7420697320656d697474656420706572207375636365737366756c6c792076657269666965642063726564656e7469616c2c206d61746368696e670a746865206576656e7420656d697373696f6e20736861706520696e207468652073696e676c652d70726f6f6620706174682e0000000000137375626d69745f70726f6f66735f626174636800000000020000000000000006686f6c646572000000000013000000000000000b7375626d697373696f6e7300000003ea000007d00000000f50726f6f665375626d697373696f6e00000000000000000000000000000000176973737565725f72656769737472795f6164647265737300000000000000000100000013001e11636f6e7472616374656e766d6574617630000000000000001a00000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e39332e3100000000000000000008727373646b7665720000002f32362e312e30233137356161343133303666333833303537613863646663383462363864393331363634666333346500" + "hash": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9", + "code": "0061736d0100000001a8022b60027f7f017f60037f7f7f017f60017e017e60027e7e017e60037e7e7e017e6000017e60047e7e7e7e017e60037f7f7f0060047f7f7f7e017e60027f7e0060027f7f017e60047f7f7f7f0060057f7f7e7f7f0060047f7f7f7e0060027e7e0060017e017f60067e7e7e7e7e7e017f60057f7e7e7e7e0060067e7e7e7e7e7e0060017f017e60047f7f7f7f017f60037e7e7e0060017f0060027f7f0060017e0060027e7f017e60067e7e7e7e7e7e017e60057f7f7f7f7f0060047f7f7f7e017f60017f017f60037f7f7f017e60037f7e7e017e60037f7e7e017f60000060027f7e017e60047f7e7e7e017e60057f7e7e7e7e017e60057f7e7e7f7f0060057f7f7f7f7f017e60067f7e7f7f7f7f017e60027e7e017f60067f7f7f7f7f7f017f60057f7f7f7f7f017f02af011d0169013000020162016500030169015f0002016101300002017801310003017801350002016c01320003016c01310003016c01300003016c015f0004017601640003017801330005017801340005016c01370006017801380005016d01390004017601670003016201310006016d01610006016201330003016c013600020162016a00030164015f000401780130000301760131000301760133000201620136000301620138000201620134000503d701d5010707070809070a07090b0c070a07070d0a0d070707010a0e0f1000110e12130013140b0a0a150a16050e1717070505150a0a18180a070707051904020203060a040a031a0405030507070707000405030604050403021a030205160707071b07071c0713161d1e091d1d13161f201d0707070707070a0a0a002100221f1f221f231f2422231f221f2213070707071e2526271e00221f22221f221f1f1f231f1313241322231f1f221f22131e2526271e1e021d0709091717050f0f17000028000013090f2900010100170001072a0001161b0101010405017001080805030100110621047f01418080c0000b7f0041da86c0000b7f0041b08dc0000b7f0041b08dc0000b07ea0111066d656d6f727902000d5f5f636f6e7374727563746f72006a0561646d696e006b0a62756d705f636c61696d006c0b636865636b5f636c61696d006d0b69735f7665726966696564006e176973737565725f72656769737472795f61646472657373006f067265766f6b6500700c7265766f6b655f70726f6f660071097365745f61646d696e00720c7375626d69745f70726f6f660073137375626d69745f70726f6f66735f62617463680074077570677261646500751076657269666965725f616464726573730076015f03010a5f5f646174615f656e6403020b5f5f686561705f6261736503030913010041010b0769b001dc01e701d901e201e5010ac6ae01d5016401027e02400240024020022903002203a741ff0171220241c000460d0020024106470d0142002104200310ce8180800021030c020b420021042001200310988180800021030c010b4201210410d58180800021030b20002004370300200020033703080b7702017f017e23808080800041106b22032480808080000240024020022903004202510d00200320012002109d808080002003290308210402402003280200450d0020004202370300200020043703080c020b20002004370308200042013703000c010b200042003703000b200341106a2480808080000b4602017f017e23808080800041106b220324808080800020032001200210f980808000200329030821042000200329030037030020002004370308200341106a2480808080000b810101017f23808080800041206b22042480808080002004200020012903002002290300200310a181808000370308200441106a2000200441086a109181808000024020042802104101470d0041a086c08000412b200441106a419086c0800041c882c0800010ee81808000000b20042903182103200441206a24808080800020030b4d01017f23808080800041106b2202248080808000200220013703082000200241106a200110a38180800010d68180800036020c2000410036020820002001370300200241106a2480808080000be10102037f017e23808080800041306b220324808080800020032001200210a38080800037030820034202370310200341186a200341106a200341106a41086a200341086a200341086a41086a10fb808080004100200328022c2202200328022822046b2205200520024b1b21022003280218200441037422056a2104200328022020056a2105024003402002450d01200420052001109381808000370300200441086a2104200541086a21052002417f6a21020c000b0b2001200341106a410110ab8180800021062000420037030020002006370308200341306a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110ff80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b9b0203017f017e027f23808080800041c0006b22032480808080002001200210a380808000210420032001200241086a10a38080800037031020032004370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10fb808080004100200328023c2202200328023822056b2206200620024b1b21022003280228200541037422066a2105200328023020066a2106024003402002450d01200520062001109381808000370300200541086a2105200641086a21062002417f6a21020c000b0b2001200341186a410210ab8180800021042000420037030020002004370308200341c0006a2480808080000b3b01017f23808080800041106b2202248080808000200220013703082000200241086a10808180800010a0818080001a200241106a2480808080000b12002000200142012002200310a7808080000b270020002000200110a9808080002002200310de81808000200410de81808000109f818080001a0b8a0102017f017e23808080800041c0006b220324808080800002400240024020012001200210a98080800022044201108a818080000d00200042023703000c010b2003200120044201108981808000370300200341086a2001200310aa8080800020032903084202510d012000200341086a413810f1818080001a0b200341c0006a2480808080000f0b000bc20302017f027e23808080800041306b2202248080808000024002400240024002400240024020012802000e0400010203000b2002200041ec84c08000108c8180800020022802000d05200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c030b2002200041fc84c08000108c8180800020022802000d04200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c020b20022000419485c08000108c8180800020022802000d03200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c010b200241206a200041a485c08000108c8180800020022802200d0220022002290328370318200241186a1080818080002103200241206a200141086a200010a98180800020022802200d0220022903282104200241206a200141106a200010a98180800020022802200d02200220022903283703102002200437030820022003370300200241206a2000200210e68080800020022903282104200229032021030c010b20022903082104200229030021030b200350450d00200241306a24808080800020040f0b000b9d0302027f067e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b024002402002290300220542ff018342cc00520d0020012005418083c080004105200341086a410510ae818080001a200341306a2001200341086a109d80808000024020032802304101470d00200042023703000c020b20032903382105200341306a2001200341106a10b1808080000240200329033022064202520d00200042023703000c020b024041014102410020032d001822041b20044101461b22044102470d00200042023703000c020b20032903382107200341306a2001200341206a109e808080000240200329033022084202520d00200042023703000c020b20032903382109200341306a2001200341286a109d80808000024020032802304101470d00200042023703000c020b2003290338210a200020043a0030200020053703282000200a370320200020073703182000200637031020002009370308200020083703000c010b200042023703000b200341c0006a2480808080000b1000200020012002420110ac808080000b210020002000200110a9808080002000200210ad808080002003109d818080001a0b4502017f017e23808080800041106b220224808080800020022000200110d280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b210020002000200110a980808000200220001092818080002003109d818080001a0b900102017f017e23808080800041206b220324808080800002400240024020012001200210a98080800022044202108a818080000d00200042003703000c010b2003200120044202108981808000370308200341106a2001200341086a108f8180800020032802104101460d012003290318210420004201370300200020043703080b200341206a2480808080000f0b000b1000200020012002420210ae808080000b6a01017f23808080800041106b22032480808080000240024020022903004202510d00200320012002108f8180800002402003280200450d00200042023703000c020b20002003290308370308200042013703000c010b200042003703000b200341106a2480808080000bb20203027f017e017f23808080800041c0006b22032480808080002003200041086a220441a883c08000410f10838180800037030020012004109281808000210520032004200210a38080800037031020032005370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10fb808080004100200328023c2202200328023822016b2206200620024b1b21022003280228200141037422066a2101200328023020066a2106024003402002450d01200120062004109381808000370300200141086a2101200641086a21062002417f6a21020c000b0b2004200020032004200341186a410210ab8180800010fe808080002102200341c0006a24808080800020020bfb0102047f017e23808080800041306b22022480808080002002200041086a220341b783c08000411110838180800037030020022001200310928180800037030820024202370310200241186a200241106a200241106a41086a200241086a200241086a41086a10fb808080004100200228022c2201200228022822046b2205200520014b1b21012002280218200441037422056a2104200228022020056a2105024003402001450d01200420052003109381808000370300200441086a2104200541086a21052001417f6a21010c000b0b2003200020022003200241106a410110ab8180800010a0808080002106200241306a24808080800020060bdd0101017f23808080800041e0006b2202248080808000200220013703182002200037031020024203370308200241df006a108181808000200241206a200241df006a200241086a10a8808080000240024020022903204202510d0020022d00504101710d0120022903482201200241df006a108781808000580d01200241df006a108181808000200241df006a200241086a41808701200110b58080800010a680808000200241e0006a2480808080000f0b200241df006a4283808080e000109b818080001a000b200241df006a4283808080a001109b818080001a000b7504017f017e017f017e23808080800041106b22012480808080002001410f6a10878180800021022001410f6a108b818080002103200141106a2480808080002003ad22044200200020027d220220022000561b42058022004280efdd0020004280efdd00561b428087017c220020042000541ba70be00101027f23808080800041a0016b220624808080800020062005370308200620043703002006419f016a108181808000200620013703582006200037035020064203370348200641106a2006419f016a200641c8006a10a88080800041002107024020062903104202510d00200641e0006a200641106a413810f1818080001a4100210720062d0090010d002006290388012006419f016a108781808000580d002006200641f0006a10b780808000450d00410121072002a7410171450d002006290368420020062802601b20035a21070b200641a0016a24808080800020070b4d02017f017e41012102024020002802004101470d00410021022001280200450d00200141086a200041106a22021092818080002103200220002903082003109e8180800042025221020b20020bf40101027f23808080800041a0016b220524808080800020052004370308200520033703002005419f016a108181808000200520023703582005200137035020054203370348200541106a2005419f016a200541c8006a10a8808080000240024020052903104202510d00200541e0006a200541106a413810f1818080001a410021062005290388012104024020052d0090010d0020042005419f016a108781808000580d002005200541f0006a10b78080800021060b200020063a00082000200437031020002005290380013703000c010b2000420037031020004200370300200041003a00080b200541a0016a2480808080000b7001017f23808080800041306b220224808080800020022000370308200241086a1088818080002002412f6a1081818080002002200137032020022000370318200242033703102002412f6a2002412f6a200241106a10a9808080004201109c818080001a200241306a2480808080000bb20401017f23808080800041b0016b2206248080808000200620013703082006200037030020062002370310200620033703182006200437032020061088818080002006200641af016a10bb80808000370328024002400240200641286a200641086a200641106a10b280808000450d002006200641286a200641086a10b380808000370330200641206a200641306a10bc80808000450d012006200641af016a10bd80808000370338200641386a200641106a200641186a200641206a10be80808000450d02200620023703502006200037034820064203370340200641af016a108781808000210020064190016a200641af016a200641106a200641206a10bf80808000200620053703800120062000370378200641003a008801200620013703702006420137036820062006290398013703602006200629039001370358200641af016a108181808000200641af016a200641c0006a200641d8006a10ab80808000200641af016a108181808000200641af016a200641c0006a41808701200510b58080800010a680808000200620053703a0012006428ed2aaf7eabdabf700370398012006428ed6b4fadd0637039001200641af016a200641af016a20064190016a10c080808000200641af016a200641a0016a10c180808000109a818080001a200641b0016a2480808080000f0b200641af016a4283808080c000109b818080001a000b200641af016a4283808080d000109b818080001a000b200641af016a428380808020109b818080001a000b5f02017f017e23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41f883c0800010af80808000024020012802080d00200010c480808000000b20012903102102200141206a24808080800020020be30102047f017e2380808080004180016b220224808080800041002103200241c0006a410041c00010ef818080001a200110828180800020011080818080004204200241c0006a41c00010ac818080002002200241c0006a41c00010f1818080002104200041086a210520002903002106413f2102024003402003220141c000460d0120022005200610a58180800010d6818080004f0d0120052006200210de8180800010a48180800010d6818080002100200241206a2102200141016a2103200420016a2d0000200041ff0171460d000b0b20044180016a2480808080002001413f4b0b5f02017f017e23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41e083c0800010af80808000024020012802080d00200010c480808000000b20012903102102200141206a24808080800020020bc30202027f027e23808080800041d0006b22042480808080002004200041086a220541d884c08000410c1083818080003703002005200110a38080800021062005200210d180808000210720042005200310d1808080003703182004200737031020042006370308410021030240034020034118460d01200441206a20036a4202370300200341086a21030c000b0b200441386a200441206a200441206a41186a200441086a200441086a41186a10fb808080004100200428024c2203200428024822026b2201200120034b1b21032004280238200241037422016a2102200428024020016a2101024003402003450d01200220012005109381808000370300200241086a2102200141086a21012003417f6a21030c000b0b2005200020042005200441206a410310ab8180800010fe808080002103200441d0006a24808080800020030bb60102017f017e23808080800041106b220424808080800002400240024002402002419084c080001097818080000d002002419884c080001097818080000d01200241a084c080001097818080000d012004200141a884c08000410d108381808000370308420021052002200441086a1097818080000d010c030b200341c20010c38080800021050c010b200341c10010c38080800021050b20002005370308420121050b20002005370300200441106a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110a480808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b2202248080808000200220002001109f80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b950101017f23808080800041206b22032480808080002003200137030820032000370300200320023703102003411f6a1081818080002003411f6a41c883c08000200310b0808080002003411f6a1081818080002003411f6a41e083c08000200341086a10b0808080002003411f6a1081818080002003411f6a41f883c08000200341106a10b080808000200341206a2480808080000bff0103037f017e017f23808080800041106b220224808080800020024200370308200041086a21032001410574411872210420002903002105410021000240034020004108460d01410021010240200420006a22062003200510a58180800010d6818080004f0d0020032005200610de8180800010a48180800010d68180800021010b200241086a20006a20013a0000200041016a21000c000b0b20022903082105200241106a248080808000200542388620054280fe0383422886842005428080fc0783421886200542808080f80f834208868484200542088842808080f80f832005421888428080fc07838420054228884280fe038320054238888484840b12002000428380808010109b818080001a000b3102017f017e23808080800041106b22002480808080002000410f6a10bd808080002101200041106a24808080800020010bd20a03067f027e027f23808080800041f0016b22022480808080002002200137031820022000370310200241106a1088818080000240200241206a2203200110a38180800010d6818080002204450d0002400240200441054b0d00200241a8016a210541002106410121070c010b200241d8016a4283808080f000109b818080001a000b034002400240024002400240024002400240024020062004470d00200241d8016a10bb808080002108200241d8016a10bd8080800021092002200837034820022009370350200241d8016a1087818080002108200241d8006a200110a180808000200241e8006a41086a2104200241e8006a41186a2106200241206a41086a210a200241a0016a41086a21050340200241a0016a200241d8006a10c7808080000240024020022903a00122014202510d002001a74101710d04200241e8006a2005412810f1818080001a2002200241d8016a10a6818080002201370320200241a0016a200229037810a1808080000340200241086a200241a0016a10c880808000200228020822034102460d0220034101710d062002200228020c220341187420034180fe03714108747220034108764180fe0371200341187672723602d8012002200a2001200241d8016a200241d8016a410410af8180800010998180800022013703200c000b0b200241f0016a2480808080000f0b2002200137039001200241c8006a2006200241e8006a10b280808000450d042002200241c8006a200610b3808080003703980120024190016a20024198016a10bc80808000450d05200241d0006a200241e8006a200420024190016a10be80808000450d062002200229036837033020022000370328200242033703202002290388012101200241d8016a200241d8016a200241e8006a20024190016a10bf80808000200220013703c801200220083703c001200241003a00d001200242013703b001200220022903e0013703a801200220022903d8013703a00120022002290380013703b801200241d8016a108181808000200241d8016a200241206a200241a0016a10ab80808000200241d8016a108181808000200241d8016a200241206a41808701200110b58080800010a680808000200220013703e8012002428ed2aaf7eabdabf7003703e0012002428ed6b4fadd063703d801200241d8016a200241d8016a200241d8016a10c080808000200241d8016a200241e8016a10c180808000109a818080001a0c000b0b200641016a210b2007210a03402004200a460d080240024020062003200110a38180800010d6818080004f0d00200220032001200610de8180800010a281808000370368200241a0016a2003200241e8006a10c98080800020022802a0014101470d010c090b41b884c0800010ed81808000000b200241206a2005412810f1818080001a200a2003200110a38180800010d6818080004f0d06200220032001200a10de8180800010a281808000370368200241a0016a2003200241e8006a10c98080800020022802a0014101460d07200241e8006a2005412810f1818080001a200a41016a210a200241206a200241e8006a109781808000450d000b200241d8016a42838080809001109b818080001a000b41a086c08000412b200241d8016a419086c08000418086c0800010ee81808000000b41a086c08000412b200241d8016a419086c08000418086c0800010ee81808000000b200241d8016a4283808080c000109b818080001a000b200241d8016a4283808080d000109b818080001a000b200241d8016a428380808020109b818080001a000b41c884c0800010ed81808000000b000b200741016a2107200b21060c000b0b200241d8016a42838080808001109b818080001a000b7601037f23808080800041106b22022480808080000240024020012802082203200128020c490d00200042023703000c010b2002200141086a22042001290300200310de8180800010a28180800037030820002004200241086a10c9808080002001200341016a3602080b200241106a2480808080000b6602017f017e0240024020012802082202200128020c490d00410221010c010b200141086a2001290300200210de8180800010a28180800021032001200241016a360208200342ff018342045221012003422088a721020b20002002360204200020013602000bbc0202027f057e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b4201210502402002290300220642ff018342cc00520d002001200641d885c080004105200341086a410510ae818080001a200341306a200341086a200110a78180800020032802300d0020032903382106200341306a2001200341106a109d8080800020032802300d0020032903382107200341306a200341186a200110a88180800020032802300d0020032903382108200341306a2001200341206a108d8180800020032802300d002003290328220942ff018342cb00520d00200329033821052000200737032820002008370320200020093703182000200537031020002006370308420021050b20002005370300200341c0006a2480808080000b3102017f017e23808080800041106b22002480808080002000410f6a10bb808080002101200041106a24808080800020010b6202017f017e23808080800041206b22002480808080002000411f6a108181808000200041086a2000411f6a41c883c0800010af80808000024020002802080d002000411f6a10c480808000000b20002903102101200041206a24808080800020010b9b0301017f23808080800041b0016b2203248080808000200320023703082003200037030020031088818080002003200341af016a10bb8080800037031002400240200341106a2003200341086a10b280808000450d00200320023703282003200137032020034203370318200341af016a108181808000200341e8006a200341af016a200341186a10a88080800020032903684202510d01200341306a200341e8006a413810f1818080001a200341013a0060200341af016a108181808000200341af016a200341186a200341306a10ab80808000200341af016a108181808000200341af016a200341186a418087014180f6de0010a6808080002003200341af016a108781808000370380012003200037037820032002370370200320013703682003428ed2aa98bdd7de013703a001200341af016a200341af016a200341a0016a10cd80808000200341af016a200341e8006a10ce80808000109a818080001a200341b0016a2480808080000f0b200341af016a4283808080c000109b818080001a000b200341af016a4283808080e000109b818080001a000b4502017f017e23808080800041106b220224808080800020022000200110a280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b220224808080800020022000200110e880808000024020022802004101470d00000b20022903082103200241106a24808080800020030b840101017f23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41c883c0800010af80808000024020012802080d002001411f6a10c480808000000b20012001290310370308200141086a1088818080002001411f6a1081818080002001411f6a200010a580808000200141206a2480808080000b910101017f23808080800041206b2201248080808000200120003703002001411f6a108181808000200141086a2001411f6a41c883c0800010af80808000024020012802080d002001411f6a10c480808000000b20012001290310370308200141086a1088818080002001411f6a1081818080002001411f6a41c883c08000200110b080808000200141206a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110ff80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b8c0202017f057e23808080800041306b2203248080808000200341086a2001200241286a109f8080800042012104024020032802080d0020032903102105200341086a2001200241106a10d38080800020032802080d0020032903102106200341086a2001200241306a10f88080800020032802080d0020032903102107200341086a2001200210d48080800020032802080d0020032903102108200341086a2001200241206a109f8080800020032802080d00200320032903103703282003200837032020032007370318200320063703102003200537030820002001418083c080004105200341086a410510ad81808000370308420021040b20002004370300200341306a2480808080000b2d00024020022802004101470d002000200241086a200110a9818080000f0b20004200370300200042023703080b2d00024020022802004101470d0020002001200241086a109f808080000f0b20004200370300200042023703080b3702017f017e23808080800041106b220024808080800010cb808080002000410f6a10d6808080002101200041106a24808080800020010b3801017f23808080800041106b220224808080800020022000370308200241086a20011092818080002100200241106a24808080800020000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108f81808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a108f8180800020032802184101460d0020032903202100200341186a2003412f6a200341106a108e8180800020032802184101460d0020012000200329032010cc80808000200341306a24808080800042020f0b000b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001109081808000024020012802084101470d00000b200129031010cf80808000200141206a24808080800042020b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108f81808000024020012802084101470d00000b200129031010d080808000200141206a24808080800042020b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108f81808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a108e8180800020022802184101460d002001200229032010b480808000200241306a24808080800042020f0b000bf10102017f027e23808080800041306b2204248080808000200420013703082004200037030020042002370310200441186a2004412f6a2004108f81808000024020042802184101460d0020042903202101200441186a2004412f6a200441086a108e8180800020042802184101460d0020042903202100200441186a2004412f6a200441106a109e80808000200429031822024202510d00200429032021050240024020034202520d00420021060c010b200342ff018342cb00520d01420121060b20012000200220052006200310b6808080002004412f6a10dc808080002103200441306a24808080800020030f0b000b3a02017f017e23808080800041106b2202248080808000200220003a000f2002410f6a20011094818080002103200241106a24808080800020030bc80102017f017e23808080800041306b22032480808080002003200137030820032000370300200341106a2003412f6a2003108f81808000024020032802104101460d0020032903182101200341106a2003412f6a200341086a108e8180800020032802104101460d00200329031821000240024020024202520d00420021040c010b200242ff018342cb00520d01420121040b200341106a200120002004200210b8808080002003412f6a200341106a10de808080002102200341306a24808080800020020f0b000b4502017f017e23808080800041106b220224808080800020022000200110e780808000024020022802004101470d00000b20022903082103200241106a24808080800020030b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108f81808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a108e8180800020022802184101460d002001200229032010b980808000200241306a24808080800042020f0b000bcb0201017f23808080800041d0006b2206248080808000200620013703102006200037030820062002370318200620033703202006200437032820062005370330200641386a200641cf006a200641086a108f81808000024020062802384101460d0020062903402101200641386a200641cf006a200641106a108f8180800020062802384101460d0020062903402100200641386a200641cf006a200641186a108e8180800020062802384101460d0020062903402102200641386a200641cf006a200641206a108d8180800020062802384101460d0020062903402103200641386a200641cf006a200641286a108d8180800020062802384101460d0020062903402104200641386a200641cf006a200641306a109d8080800020062802384101460d0020012000200220032004200629034010ba80808000200641d0006a24808080800042020f0b000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108f81808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a108f8180800020032802184101460d0020032903202100200341186a2003412f6a200341106a108f8180800020032802184101460d0020012000200329032010c280808000200341306a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c5808080002000410f6a10d6808080002101200041106a24808080800020010b6301017f23808080800041206b220224808080800020022000370300200241086a2002411f6a2002108f81808000024020022802084101460d00200142ff018342cb00520d002002290310200110c680808000200241206a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010ca808080002000410f6a10d6808080002101200041106a24808080800020010b7302017f027e23808080800041106b220324808080800020032002200110aa818080000240024020032802000d00200320032903083703004200210420012003410110ab8180800021050c010b4201210410d58180800021050b2000200437030020002005370308200341106a2480808080000bc70102017f027e23808080800041206b2203248080808000200341086a2002200110aa818080000240024020032802080d0020032903102104200341086a200241086a200110aa8180800020032802080d0020032903102105200341086a200241106a200110aa8180800020032802080d00200320032903103703182003200537031020032004370308420021042001200341086a410310ab8180800021050c010b4201210410d58180800021050b2000200437030020002005370308200341206a2480808080000bdc0102017f047e23808080800041206b2203248080808000200341086a2001200241086a10f8808080000240024020032802084101470d004201210410d58180800021050c010b20032903102106200341086a20012002109f80808000200329031021054201210420032802080d00200341086a2001200241106a109f808080002003290310210702402003280208450d00200721050c010b200320073703182003200537031020032006370308420021042001200341086a410310ab8180800021050b2000200437030020002005370308200341206a2480808080000be70102017f057e23808080800041206b220324808080800020032002200110a9818080000240024020032802000d00200329030821042003200241086a200110a98180800020032802000d00200329030821052003200241106a200110a98180800020032802000d002003290308210620032001200241186a109f80808000200329030821074201210820032802000d01200320073703182003200637031020032005370308200320043703004200210820012003410410ab8180800021070c010b4201210810d58180800021070b2000200837030020002007370308200341206a2480808080000b1200200141cb86c08000410f10ec818080000b140010968180800020002001200210e1808080000b0e0010968180800010d5808080000b12001096818080002000200110da808080000b1600109681808000200020012002200310db808080000b140010968180800020002001200210dd808080000b0e0010968180800010e4808080000b140010968180800020002001200210d7808080000b12001096818080002000200110df808080000b1000109681808000200010d9808080000b1a0010968180800020002001200220032004200510e0808080000b12001096818080002000200110e3808080000b1000109681808000200010d8808080000b0e0010968180800010e2808080000b0300000b130020004200370300200020023100003703080b6102017f017e23808080800041106b220324808080800020032002290300220410df818080000240024020032802000d00200329030821040c010b2001200410b38180800021040b2000420037030020002004370308200341106a2480808080000b9a0102017f027e23808080800041206b220324808080800020032002290300220410d1818080000240024020032802004101470d00200341106a200410d281808000024020032802100d00420021042001200329031810b18180800021050c020b4201210410d58180800021050c010b42002104200329030810ce8180800021050b2000200437030020002005370308200341206a2480808080000b4400200041003602102000200436020c2000200336020820002002360204200020013602002000200420036b4103762204200220016b410376220320042003491b3602140b3901017f23808080800041106b22032480808080002003200229020037020820002001200341086a10fd80808000200341106a2480808080000b6d02027f017e23808080800041106b22032480808080002003200228020022042002280204220210d0818080000240024020032802004101470d0020012004200210cd8180800021050c010b200329030821050b2000420037030020002005370308200341106a2480808080000b7101027f23808080800041106b220424808080800041012105024002400240200020012903002002290300200310c181808000a741ff01710e020102000b41fc86c08000412b2004410f6a41a887c0800041dc86c0800010ee81808000000b410021050b200441106a24808080800020050b130020004200370300200020022903003703080b070020002903000b02000b0700200041086a0b5902017f017e23808080800041206b22032480808080002003200236020c20032001360208200341106a2000200341086a10fc80808000024020032802104101470d00000b20032903182104200341206a24808080800020040b5a02017f017e23808080800041106b220224808080800020022001370308420121030240200241106a200110c68180800010d6818080004120470d0020002001370308420021030b20002003370300200241106a2480808080000b1000200010bf8180800010d6818080000b1000200010bc8180800010d6818080000b7e02017f017e23808080800041206b22012480808080002001200010bd81808000370308200141106a2000200141086a10fa8080800020012903182102024020012802104101470d002001200237031041fc86c08000412b200141106a41b887c0800041ec86c0800010ee81808000000b200141206a24808080800020020b1300200041086a200029030010b4818080001a0b0e0020002001200210b8818080000b140020002001200210b98180800010d7818080000b4901037f23808080800041106b22012480808080002001410f6a10868180800021022001410f6a1085818080002103200141106a2480808080004100200320026b2201200120034b1b0b5102017f017e23808080800041106b220324808080800020032001200210fc8080800042012104024020032802000d0020002003290308370308420021040b20002004370300200341106a2480808080000b2e01027e4201210302402002290300220442ff018342c800520d0020002004370308420021030b200020033703000b2d01027e4201210302402002290300220410e081808000450d0020002004370308420021030b200020033703000b2e01027e4201210302402002290300220442ff018342cd00520d0020002004370308420021030b200020033703000b2a01017e02402002290300220342ff018342c800510d00200042013703000f0b200020031084818080000b7b02017f027e23808080800041106b2203248080808000024002402002290300220442ff018342c800510d00200042013703000c010b20032004370308420121050240200341106a200410c68180800010d68180800041c000470d0020002004370308420021050b200020053703000b200341106a2480808080000b070020002903000b070020002903000b070020003100000b8d0102017f027e23808080800041206b2202248080808000200129030021030240024002402000290300220442ff0183420e520d00200342ff0183420e510d010b2002411f6a2004200310c281808000220342005520034200536b21010c010b2002200437030820022003370310200241086a200241106a10dd8180800021010b200241206a24808080800020010b02000b11002000200110958180800041ff0171450b0c002000200110b1818080000b0e0020002001200210b2818080000b0e0020002001200210b5818080000b0c002000200110b6818080000b0e0020002001200210b7818080000b1000200020012002200310ba818080000b0e0020002001200210bb818080000b12002000200120022003200410be818080000b0c002000200110c0818080000b1000200020012002200310c1818080000b0e0020002001200210c3818080000b0c002000200110c4818080000b0e0020002001200210c5818080000b0c002000200110c6818080000b0a00200010c7818080000b0e00200020012001108e818080000b2e01027e4201210302402001290300220442ff018342cd00520d0020002004370308420021030b200020033703000b130020004200370300200020012903003703080b130020004200370300200020012903003703080b0e0020002001200210c8818080000b12002000200120022003200410c9818080000b12002000200120022003200410ca818080000b140020002001200220032004200510cb818080000b0e0020002001200210cc818080000b1200200141c887c08000410f10ec818080000b0a0020011080808080000b0c00200120021081808080000b0a0020011082808080000b0a0020011083808080000b0c00200120021084808080000b0a0020011085808080000b0c00200120021086808080000b0c00200120021087808080000b0c00200120021088808080000b0e002001200220031089808080000b0c0020012002108a808080000b0800108b808080000b0800108c808080000b10002001200220032004108d808080000b0800108e808080000b0a0020011094808080000b0e002001200220031096808080000b0c00200120021097808080000b0c00200120021098808080000b0a0020011099808080000b0c0020012002109a808080000b0a002001109b808080000b0800109c808080000b1a002001ad4220864204842002ad4220864204841090808080000b1f00200120022003ad4220864204842004ad4220864204841091808080001a0b2e00024020022004460d00000b2001ad4220864204842003ad4220864204842002ad422086420484108f808080000b3000024020032005460d00000b20012002ad4220864204842004ad4220864204842003ad4220864204841092808080000b1a002001ad4220864204842002ad4220864204841093808080000b1a002001ad4220864204842002ad4220864204841095808080000b070020004208880b960102017e027f2000290300210103400240200150450d00418080c4000f0b024002402001423088a7413f7122024101470d0041df0021020c010b0240024002402002417f6a410b4f0d00412e21030c010b0240200241746a411a4f0d00413521030c010b200241254d0d01413b21030b200220036a21020c010b2000200142068622013703000c010b0b2000200142068637030020020bb50102017f017e23808080800041106b220324808080800002400240200241094b0d00420021040340024020020d002000410036020020002004420886420e843703080c030b200341086a20012d000010d881808000024020032d00084103460d0020002003290308370204200041013602000c030b200141016a21012002417f6a2102200442068620033100098421040c000b0b20002002360208200041003a0004200041013602000b200341106a2480808080000b2801017e420121020240200142ff01834206520d0020002001370308420021020b200020023703000b2901017e420121020240200142ff018342c000520d0020002001370308420021020b200020023703000b26002000200128020041027422012802888ac08000360204200020012802b08ac080003602000b26002000200128020041027422012802d88ac08000360204200020012802808bc080003602000b0900428390808080010b08002000422088a70b070020004201510b820101017f410121020240200141ff017141df00460d0002400240200141506a41ff0171410a490d00200141bf7f6a41ff0171411a490d0102402001419f7f6a41ff0171411a490d00200020013a0001200041013a00000f0b200141456a21020c020b200141526a21020c010b2001414b6a21020b200041033a0000200020023a00010b140020002802002000280204200110e3818080000b7101027f23808080800041206b22022480808080002000280200210320002802042100200241086a41106a200141106a290200370300200241086a41086a200141086a2902003703002002200129020037030820032000200241086a10e8818080002101200241206a24808080800020010b950101037f23808080800041106b22022480808080002002200142088837030820022000370300024002400340200210cf818080002103200241086a10cf8180800021042003418080c400460d0102402004418080c400470d00410121030c030b20032004460d000b200320044b20032004496b21030c010b417f41002004418080c400471b21030b200241106a24808080800020030bf60503017f017e027f23808080800041f0006b2202248080808000200220002903002203a72200410876220436022820022003422088a7220536022c02400240024002402000418014490d0020034280808080a001540d012002410336024c200241f089c0800036024820024202370254200241848080800036026c20024184808080003602642002200241e0006a36025020022002412c6a3602682002200241286a3602602001200241c8006a10da8180800021000c030b200220043602302000418002490d01024020034280808080a001540d00200241186a200241306a10d481808000200220022903183702402002410336024c200241b889c0800036024820024202370254200241848080800036026c20024185808080003602642002200241e0006a36025020022002412c6a3602682002200241c0006a3602602001200241c8006a10da8180800021000c030b20022005360234200241106a200241306a10d48180800020022002290310370238200241086a200241346a10d381808000200220022903083702402002410336024c2002419c89c0800036024820024202370254200241858080800036026c20024185808080003602642002200241e0006a3602502002200241c0006a3602682002200241386a3602602001200241c8006a10da8180800021000c020b20022005360238200241206a200241386a10d381808000200220022903203702402002410336024c200241d889c0800036024820024202370254200241858080800036026c20024184808080003602642002200241e0006a3602502002200241c0006a3602682002200241286a3602602001200241c8006a10da8180800021000c010b2002200241306a10d481808000200220022903003702402002410336024c200241b889c0800036024820024202370254200241848080800036026c20024185808080003602642002200241e0006a36025020022002412c6a3602682002200241c0006a3602602001200241c8006a10da8180800021000b200241f0006a24808080800020000b15002000290300420888200129030010db818080000b0b002000ad4220864204840b3201017e420121020240200142ffffffffffffffff00560d0020002001420886420684370308420021020b200020023703000b1701017f2000a741ff01712201410e46200141ca0046720b990602087f017e0240024020010d00200541016a210620002802082107412d21080c010b412b418080c4002000280208220741808080017122011b2108200141157620056a21060b0240024020074180808004710d00410021020c010b0240024020034110490d002002200310eb8180800021010c010b024020030d00410021010c010b2003410371210902400240200341044f0d00410021014100210a0c010b2003410c71210b410021014100210a034020012002200a6a220c2c000041bf7f4a6a200c41016a2c000041bf7f4a6a200c41026a2c000041bf7f4a6a200c41036a2c000041bf7f4a6a2101200b200a41046a220a470d000b0b2009450d002002200a6a210c03402001200c2c000041bf7f4a6a2101200c41016a210c2009417f6a22090d000b0b200120066a21060b02400240200620002f010c220b4f0d0002400240024020074180808008710d00200b20066b210d410021014100210b0240024002402007411d764103710e0402000100020b200d210b0c010b200d41feff0371410176210b0b200741ffffff00712106200028020421092000280200210a0340200141ffff0371200b41ffff03714f0d024101210c200141016a2101200a2006200928021011808080800000450d000c050b0b20002000290208220ea741808080ff797141b080808002723602084101210c2000280200220a2000280204220920082002200310ea818080000d0341002101200b20066b41ffff037121020340200141ffff037120024f0d024101210c200141016a2101200a4130200928021011808080800000450d000c040b0b4101210c200a200920082002200310ea818080000d02200a20042005200928020c118180808000000d0241002101200d200b6b41ffff037121000340200141ffff03712202200049210c200220004f0d03200141016a2101200a2006200928021011808080800000450d000c030b0b4101210c200a20042005200928020c118180808000000d012000200e37020841000f0b4101210c200028020022012000280204220a20082002200310ea818080000d00200120042005200a28020c11818080800000210c0b200c0b180020002802002001200028020428020c118080808000000b0e0020022000200110e4818080000ba20501077f024002402000280208220341808080c00171450d0002400240024002400240200341808080800171450d0020002f010e22040d01410021020c020b024020024110490d002001200210eb8180800021050c040b024020020d0041002102410021050c040b2002410371210602400240200241044f0d0041002105410021070c010b2002410c712104410021054100210703402005200120076a22082c000041bf7f4a6a200841016a2c000041bf7f4a6a200841026a2c000041bf7f4a6a200841036a2c000041bf7f4a6a21052004200741046a2207470d000b0b2006450d03200120076a21080340200520082c000041bf7f4a6a2105200841016a21082006417f6a22060d000c040b0b200120026a21064100210220012108200421070340200822052006460d020240024020052c00002208417f4c0d00200541016a21080c010b0240200841604f0d00200541026a21080c010b0240200841704f0d00200541036a21080c010b200541046a21080b200820056b20026a21022007417f6a22070d000b0b410021070b200420076b21050b200520002f010c22084f0d00200820056b210941002105410021040240024002402003411d764103710e0402000102020b200921040c010b200941feff037141017621040b200341ffffff00712106200028020421072000280200210002400340200541ffff0371200441ffff03714f0d0141012108200541016a2105200020062007280210118080808000000d030c000b0b41012108200020012002200728020c118180808000000d0141002105200920046b41ffff037121020340200541ffff037122042002492108200420024f0d02200541016a2105200020062007280210118080808000000d020c000b0b200028020020012002200028020428020c1181808080000021080b20080b140020012000280200200028020410e4818080000b3601017f23808080800041106b2202248080808000200241013b010c2002200136020820022000360204200241046a10f780808000000bd90201077f23808080800041106b2202248080808000410a210302400240200028020022042004411f7522007320006b220041e8074f0d00200021050c010b410a21030340200241066a20036a2206417c6a200020004190ce006e22054190ce006c6b220741ffff037141e4006e22084101742f00a88bc080003b00002006417e6a2007200841e4006c6b41ffff03714101742f00a88bc080003b00002003417c6a2103200041fface2044b21062005210020060d000b0b02400240200541094b0d00200521000c010b200241066a2003417e6a22036a2005200541ffff037141e4006e220041e4006c6b41ffff03714101742f00a88bc080003b00000b024002402004450d002000450d010b200241066a2003417f6a22036a20004101742d00a98bc080003a00000b20012004417f73411f7641014100200241066a20036a410a20036b10e1818080002100200241106a24808080800020000bf70401087f23808080800041106b22032480808080002003200136020420032000360200200342a08080800e3702080240024002400240024020022802102204450d00200228021422010d010c020b200228020c2200450d0120022802082201200041037422006a2105200041786a41037641016a21062002280200210003400240200041046a2802002207450d00200328020020002802002007200328020428020c11818080800000450d00410121010c050b024020012802002003200141046a28020011808080800000450d00410121010c050b200041086a2100200141086a22012005460d030c000b0b200141186c21082001417f6a41ffffffff017141016a210620022802082109200228020021004100210703400240200041046a2802002201450d00200328020020002802002001200328020428020c11818080800000450d00410121010c040b410021054100210a024002400240200420076a220141086a2f01000e03000102000b2001410a6a2f0100210a0c010b20092001410c6a2802004103746a2f0104210a0b02400240024020012f01000e03000102000b200141026a2f010021050c010b2009200141046a2802004103746a2f010421050b200320053b010e2003200a3b010c2003200141146a28020036020802402009200141106a2802004103746a22012802002003200128020411808080800000450d00410121010c040b200041086a21002008200741186a2207460d020c000b0b410021060b0240200620022802044f0d002003280200200228020020064103746a22012802002001280204200328020428020c11818080800000450d00410121010c010b410021010b200341106a24808080800020010b4d01017f23808080800041206b22032480808080002003410036021020034101360204200342043702082003200136021c200320003602182003200341186a3602002003200210e681808000000b410002402002418080c400460d0020002002200128021011808080800000450d0041010f0b024020030d0041000f0b200020032004200128020c118180808000000bf00601087f024002402001200041036a417c71220220006b2203490d00200120036b22044104490d00200441037121054100210641002101024020022000460d0041002101410021070240200020026b2208417c4b0d00410021014100210703402001200020076a22022c000041bf7f4a6a200241016a2c000041bf7f4a6a200241026a2c000041bf7f4a6a200241036a2c000041bf7f4a6a2101200741046a22070d000b0b200020076a21020340200120022c000041bf7f4a6a2101200241016a2102200841016a22080d000b0b200020036a210802402005450d0020082004417c716a22022c000041bf7f4a210620054101460d00200620022c000141bf7f4a6a210620054102460d00200620022c000241bf7f4a6a21060b20044102762103200620016a21070340200821042003450d02200341c001200341c001491b22064103712105024002402006410274220941f0077122010d00410021020c010b200420016a2100410021022004210103402001410c6a2802002208417f73410776200841067672418182840871200141086a2802002208417f73410776200841067672418182840871200141046a2802002208417f7341077620084106767241818284087120012802002208417f7341077620084106767241818284087120026a6a6a6a2102200141106a22012000470d000b0b200320066b2103200420096a2108200241087641ff81fc0771200241ff81fc07716a418180046c41107620076a21072005450d000b2004200641fc01714102746a22022802002201417f734107762001410676724181828408712101024020054101460d0020022802042208417f7341077620084106767241818284087120016a210120054102460d0020022802082202417f7341077620024106767241818284087120016a21010b200141087641ff811c71200141ff81fc07716a418180046c41107620076a21070c010b024020010d0041000f0b2001410371210802400240200141044f0d0041002107410021020c010b2001417c712103410021074100210203402007200020026a22012c000041bf7f4a6a200141016a2c000041bf7f4a6a200141026a2c000041bf7f4a6a200141036a2c000041bf7f4a6a21072003200241046a2202470d000b0b2008450d00200020026a21010340200720012c000041bf7f4a6a2107200141016a21012008417f6a22080d000b0b20070b1a00200028020020012002200028020428020c118180808000000b130041f28cc08000412b200010e981808000000b8f0101017f23808080800041c0006b22052480808080002005200136020c2005200036020820052003360214200520023602102005410236021c200541a08dc08000360218200542023702242005418680808000ad422086200541106aad843703382005418780808000ad422086200541086aad843703302005200541306a360220200541186a200410e681808000000baa0301057f02400240200241104f0d00200021030c010b024020002000410020006b41037122046a22054f0d002004417f6a21062000210302402004450d0020042107200021030340200320013a0000200341016a21032007417f6a22070d000b0b20064107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032005470d000b0b024020052005200220046b2202417c716a22034f0d00200141ff017141818284086c2107034020052007360200200541046a22052003490d000b0b200241037121020b02402003200320026a22074f0d002002417f6a2104024020024107712205450d000340200320013a0000200341016a21032005417f6a22050d000b0b20044107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032007470d000b0b20000bb907010c7f23808080800041106b210302400240200241104f0d00200021040c010b024020002000410020006b41037122056a22064f0d002005417f6a2107200021042001210802402005450d002005210920002104200121080340200420082d00003a0000200841016a2108200441016a21042009417f6a22090d000b0b20074107490d000340200420082d00003a0000200441016a200841016a2d00003a0000200441026a200841026a2d00003a0000200441036a200841036a2d00003a0000200441046a200841046a2d00003a0000200441056a200841056a2d00003a0000200441066a200841066a2d00003a0000200441076a200841076a2d00003a0000200841086a2108200441086a22042006470d000b0b2006200220056b2209417c7122076a210402400240200120056a220841037122010d00200620044f0d0120082101034020062001280200360200200141046a2101200641046a22062004490d000c020b0b410021022003410036020c2003410c6a20017221050240410420016b220a410171450d00200520082d00003a0000410121020b0240200a410271450d00200520026a200820026a2f01003b01000b200820016b21022001410374210b200328020c210502400240200641046a2004490d002006210c0c010b4100200b6b411871210d034020062005200b76200241046a22022802002205200d7472360200200641086a210a200641046a220c2106200a2004490d000b0b41002106200341003a0008200341003a00060240024020014101470d00200341086a210d410021014100210a4100210e0c010b200241056a2d0000210a2003200241046a2d000022013a0008200a410874210a4102210e200341066a210d0b02402008410171450d00200d200241046a200e6a2d00003a000020032d0006411074210620032d000821010b200c200a200672200141ff0171724100200b6b411871742005200b76723602000b20094103712102200820076a21010b02402004200420026a22064f0d002002417f6a2109024020024107712208450d000340200420012d00003a0000200141016a2101200441016a21042008417f6a22080d000b0b20094107490d000340200420012d00003a0000200441016a200141016a2d00003a0000200441026a200141026a2d00003a0000200441036a200141036a2d00003a0000200441046a200141046a2d00003a0000200441056a200141056a2d00003a0000200441066a200141066a2d00003a0000200441076a200141076a2d00003a0000200141086a2101200441086a22042006470d000b0b20000b0e0020002001200210f0818080000b0bba0d0100418080c0000bb00d2f55736572732f696e686f757365636f6465732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f656e762e7273002f55736572732f696e686f757365636f6465732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f6c65646765722e7273002f72757374632f663832393765333531613430633134333961343637626262623638373930383830343766353062332f6c6962726172792f636f72652f7372632f6f70732f66756e6374696f6e2e727300636f6e7472616374732f70726f6f665f72656769737472792f7372632f6c69622e72730000000000100066000000aa0100000e0000006578706972796973737565727265766f6b65647468726573686f6c6476657269666965645f61740058011000060000005e0110000600000064011000070000006b01100009000000740110000b00000069735f76616c69645f6973737565726765745f6973737565725f7075626b65790000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000e2a6b02000000000eaa4ca3b30b00000e783aeb2b00000061636372656469746174696f6e00000022011000230000003a0100002700000022011000230000003b0100002b0000007665726966795f70726f6f6641646d696e00000064021000050000005665726966696572740210000800000049737375657252656769737472790000840210000e00000050726f6f660000009c0210000500000063726564656e7469616c5f747970656973737565725f696470726f6f667075626c69635f696e707574730000ac0210000f0000005801100006000000bb02100009000000c402100005000000c90210000d000000d100100050000000fa000000050000000000000000000000010000000100000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565436f6e76657273696f6e4572726f7200000000100066000000aa0100000e00000067001000690000005b0000000e00000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565000000000000000000010000000200000000000000080000000800000003000000436f6e76657273696f6e4572726f724172697468446f6d61696e496e646578426f756e6473496e76616c6964496e7075744d697373696e6756616c75654578697374696e6756616c756545786365656465644c696d6974496e76616c6964416374696f6e496e7465726e616c4572726f72556e657870656374656454797065556e657870656374656453697a65436f6e74726163745761736d566d436f6e7465787453746f726167654f626a65637443727970746f4576656e747342756467657456616c756541757468294572726f72282c20009304100006000000990410000200000092041000010000002c2023009304100006000000b40410000300000092041000010000004572726f72282300d00410000700000099041000020000009204100001000000d004100007000000b40410000300000092041000010000000b0000000b0000000c0000000c0000000d0000000d0000000d0000000d0000000e0000000e000000d7031000e2031000ed031000f903100005041000120410001f0410002c041000390410004704100008000000060000000700000007000000060000000600000006000000060000000500000004000000550410005d041000630410006a04100071041000770410007d04100083041000890410008e04100030303031303230333034303530363037303830393130313131323133313431353136313731383139323032313232323332343235323632373238323933303331333233333334333533363337333833393430343134323433343434353436343734383439353035313532353335343535353635373538353936303631363236333634363536363637363836393730373137323733373437353736373737383739383038313832383338343835383638373838383939303931393239333934393539363937393839393a2063616c6c656420604f7074696f6e3a3a756e77726170282960206f6e206120604e6f6e65602076616c756500000001000000000000007006100002000000008b300e636f6e7472616374737065637630000000040000000000000000000000054572726f720000000000000a000000000000000e4e6f74496e697469616c697a65640000000000010000000000000012566572696669636174696f6e4661696c6564000000000002000000000000000d4e6f74417574686f72697a65640000000000000300000000000000104973737565724e6f74547275737465640000000400000055546865207075626c6963206b6579207468652070726f6f6620776173206d61646520616761696e737420646f6573206e6f74206d617463682074686520726567697374657265640a6973737565722773206b65792e000000000000114973737565724b65794d69736d6174636800000000000005000000000000000d50726f6f664e6f74466f756e64000000000000060000003a54686520626174636820636f6e7461696e73206d6f7265207468616e20604d41585f42415443485f53495a4560207375626d697373696f6e732e00000000000d4261746368546f6f4c61726765000000000000070000002f546865206261746368206d75737420636f6e7461696e206174206c65617374206f6e65207375626d697373696f6e2e000000000a4261746368456d7074790000000000080000008c54776f206f72206d6f7265207375626d697373696f6e7320696e20746865206261746368207368617265207468652073616d65206063726564656e7469616c5f74797065603b0a6f6e6c7920746865206c61737420777269746520776f756c6420737572766976652c20736f207468652062617463682069732072656a6563746564206f757472696768742e000000174475706c696361746543726564656e7469616c547970650000000009000000856062756d705f636c61696d60207761732063616c6c656420666f72206120636c61696d20746861742065786973747320627574206973206e6f206c6f6e6765720a76616c696420287265766f6b6564206f7220657870697265642920e28094207468657265206973206e6f7468696e6720776f727468206b656570696e6720616c6976652e0000000000000d436c61696d4e6f7456616c69640000000000000a00000002000000000000000000000007446174614b6579000000000400000000000000000000000541646d696e000000000000000000000000000008566572696669657200000000000000000000000e49737375657252656769737472790000000000010000003843616368656420766572696669636174696f6e2c206b657965642062792028686f6c6465722c2063726564656e7469616c5f74797065292e0000000550726f6f660000000000000200000013000000110000000100000000000000000000000b50726f6f665265636f726400000000050000000000000006657870697279000000000006000003a2546865206973737565722074686174207369676e6564207468652063726564656e7469616c20746869732070726f6f662077617320766572696669656420616761696e73742e0a4c65747320612070726f746f636f6c2072657374726963742077686963682069737375657273206974207472757374732070657220636c61696d2074797065207669610a60747275737465645f6973737565727360206f6e206069735f766572696669656460202f2060636865636b5f636c61696d602e0a0a604f7074696f6e6020736f2060697373756572602063616e206265206578706c696369746c7920616273656e742077697468696e20616e0a616c72656164792d63757272656e742d7368617065207265636f72642028652e672e206f6e65207772697474656e206279206120667574757265206d6967726174696f6e0a746861742063616e2774207265636f76657220746865206f726967696e616c206973737565722920e2809420606973737565725f69735f7472757374656460207468656e0a6661696c7320636c6f73656420616e642072656a6563747320697420756e64657220616e206163746976652060747275737465645f69737375657273602066696c7465722c0a73696e63652074686572652773206e6f2069737375657220746f20636865636b20616761696e73742028612066696c7465726c6573732063616c6c65722069730a756e61666665637465642065697468657220776179292e205468697320646f6573204e4f542c20627920697473656c662c206d616b652061207265636f72640a7772697474656e206265666f72652074686973206669656c642065786973746564207265616461626c653a20536f726f62616e277320737472756374206465636f64696e670a7265717569726573207468652073746f726564206d6170277320656e74727920636f756e7420746f2065786163746c79206d61746368207468652063757272656e740a7374727563742773206669656c6420636f756e742c20736f2074686f7365207265636f726473207374696c6c206661696c20746f20646573657269616c697a6520287365650a606c65676163795f7265636f72645f6d697373696e675f6973737565725f6b65795f6661696c735f746f5f726561646020696e20746573742e7273292e2041207265616c0a6d6967726174696f6e206973207265717569726564206265666f72652072656465706c6f79696e67206f766572206578697374696e672073746f7265642070726f6f66732e0000000000066973737565720000000003e80000001300000049536574206279207468652072656769737465726564206973737565722076696120607265766f6b65602e204578706972792064617461206973206b65707420666f722061756469742e000000000000077265766f6b65640000000001000000be466f7220706172616d65746572697365642063726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292c20746865207468726573686f6c640a76616c756520746861742077617320636f6d6d697474656420746f20696e207468652070726f6f662773207075626c696320696e707574732e204e6f6e6520666f722074797065730a77697468206e6f206e756d65726963207468726573686f6c6420286b79632c206a7572697364696374696f6e292e0000000000097468726573686f6c64000000000003e800000006000000000000000b76657269666965645f6174000000000600000000000000000000000561646d696e0000000000000000000001000000130000000000000082496e76616c6964617465206120686f6c6465722773206361636865642070726f6f662e204f6e6c792074686520726567697374657265642069737375657220666f720a6063726564656e7469616c5f7479706560206d61792063616c6c20746869732028652e672e207768656e204b594320737461747573206368616e676573292e0000000000067265766f6b6500000000000300000000000000066973737565720000000000130000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f74797065000000001100000000000000000000000000000007757067726164650000000001000000000000000d6e65775f7761736d5f68617368000000000003ee00000020000000000000000100000099412073696e676c652070726f6f66207375626d697373696f6e20696e7369646520612062617463682e204d6972726f72732074686520696e646976696475616c20706172616d65746572730a6f6620607375626d69745f70726f6f6660206275742067726f7570656420696e746f20612073747275637420736f20746865792063616e2062652070617373656420617320612060566563602e000000000000000000000f50726f6f665375626d697373696f6e0000000005000000000000000f63726564656e7469616c5f747970650000000011000000000000000665787069727900000000000600000000000000096973737565725f696400000000000013000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e70757473000000000003ea000000040000000000000000000000097365745f61646d696e0000000000000100000000000000096e65775f61646d696e00000000000013000000000000000000000319546f70207570207468652054544c206f662061207374696c6c2d76616c696420636c61696d20736f20697473206050726f6f665265636f72646020646f65736e2774206765740a6172636869766564207768696c65207468652063726564656e7469616c206974206361636865732072656d61696e732076616c69642e205065726d697373696f6e6c6573730a62792064657369676e20e28094206e6f2060726571756972655f617574686020e280942073696e636520657874656e64696e672073746f726167652072656e7420636f7374730a6f6e6c79207468652063616c6c65722773207472616e73616374696f6e2066656520616e642063616e6e6f74206166666563742074686520686f6c64657227730a636c61696d20696e20616e79206f74686572207761793b20616e796f6e65202874686520686f6c6465722c20612072656c79696e672070726f746f636f6c2c206f720a756e72656c617465642072656e742d6b6565706572206175746f6d6174696f6e292063616e2063616c6c207468697320746f206b656570206120636c61696d20616c6976652e0a53656520746865206d6f64756c652d6c6576656c202252656e7420616e6420617263686976616c2220646f6320666f72207768792074686973206973206e65656465640a6576656e2074686f75676820607375626d69745f70726f6f666020616c726561647920657874656e6473207468652054544c206f6e2077726974652e0a0a50616e6963732077697468206050726f6f664e6f74466f756e64602069662074686572652773206e6f20636c61696d20666f72206028686f6c6465722c0a63726564656e7469616c5f7479706529602c206f722060436c61696d4e6f7456616c696460206966206f6e652065786973747320627574206973207265766f6b6564206f720a706173742069747320606578706972796020e280942062756d70696e672072656e7420666f72206120636c61696d206e6f7468696e672073686f756c642062650a7472757374696e6720616e796d6f726520776f756c64206a757374207761737465207468652063616c6c65722773206665652e0000000000000a62756d705f636c61696d0000000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000001bb4c696b65206069735f7665726966696564602062757420616c736f20656e666f726365732061206d696e696d756d207468726573686f6c6420666f7220706172616d65746572697365640a63726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292e20412070726f6f66207375626d697474656420776974682061207468726573686f6c640a6f66203230305f3030302073617469736669657320606d696e5f7468726573686f6c64203d2035305f3030306020626563617573652069742070726f766573207374726963746c790a6d6f72652e20466f7220606b79636020616e6420606a7572697364696374696f6e602c207061737320606d696e5f7468726573686f6c64203d204e6f6e65602e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465640ae2809420736565206069735f7665726966696564602e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565722028756e6368616e6765640a6265686176696f7572292e000000000b636865636b5f636c61696d00000000040000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000d6d696e5f7468726573686f6c64000000000003e800000006000000000000000f747275737465645f6973737565727300000003e8000003ea00000013000000010000000100000000000001e652657475726e7320602869735f63757272656e746c795f76616c69642c2076657269666965645f61742c2065787069727929602e206069735f63757272656e746c795f76616c6964600a6163636f756e747320666f722065787069727920616761696e7374207468652063757272656e74206c65646765722074696d652e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465643a0a7468652073746f7265642070726f6f66277320697373756572206d75737420626520696e20746865206c6973742c206f7220746869732072657475726e730a602866616c73652c2076657269666965645f61742c206578706972792960206576656e206966207468652070726f6f66206973206f74686572776973652076616c696420e280940a74696d657374616d707320617265207374696c6c2072657475726e656420666f722061756469742c206d61746368696e6720746865206578697374696e670a7265766f6b65642f65787069726564206265686176696f75722e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565720a28756e6368616e676564206265686176696f7572292e00000000000b69735f766572696669656400000000030000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000f747275737465645f6973737565727300000003e8000003ea0000001300000001000003ed0000000300000001000000060000000600000000000000425265766f6b652061206361636865642070726f6f662e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207265766f636174696f6e2e00000000000c7265766f6b655f70726f6f66000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000000cd56657269667920612070726f6f6620616e642c2069662076616c69642c20636163686520697420666f722060686f6c6465726020756e74696c2060657870697279600a286c65646765722074696d657374616d702c207365636f6e6473292e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207375626d697373696f6e2e0a606973737565725f696460206d757374206265207265676973746572656420616e64207472757374656420666f72206063726564656e7469616c5f74797065602e0000000000000c7375626d69745f70726f6f66000000060000000000000006686f6c64657200000000001300000000000000096973737565725f696400000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e707574730000000000000e000000000000000665787069727900000000000600000000000000000000004e6061646d696e602c206076657269666965726020616e6420606973737565725f7265676973747279602061726520746865206465706c6f79656420636f6e7472616374206164647265737365732e00000000000d5f5f636f6e7374727563746f7200000000000003000000000000000561646d696e000000000000130000000000000008766572696669657200000013000000000000000f6973737565725f726567697374727900000000130000000000000000000000000000001076657269666965725f6164647265737300000000000000010000001300000000000000764f6e65206576656e7420697320656d697474656420706572207375636365737366756c6c792076657269666965642063726564656e7469616c2c206d61746368696e670a746865206576656e7420656d697373696f6e20736861706520696e207468652073696e676c652d70726f6f6620706174682e0000000000137375626d69745f70726f6f66735f626174636800000000020000000000000006686f6c646572000000000013000000000000000b7375626d697373696f6e7300000003ea000007d00000000f50726f6f665375626d697373696f6e00000000000000000000000000000000176973737565725f72656769737472795f6164647265737300000000000000000100000013001e11636f6e7472616374656e766d6574617630000000000000001a00000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e39312e3000000000000000000008727373646b7665720000002f32362e312e30233137356161343133303666333833303537613863646663383462363864393331363634666333346500" } }, "ext": "v0" @@ -455,7 +455,7 @@ "symbol": "Wasm" }, { - "bytes": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b" + "bytes": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9" } ] } diff --git a/contracts/proof_registry/test_snapshots/test/upgrade_by_non_admin_panics.1.json b/contracts/proof_registry/test_snapshots/test/upgrade_by_non_admin_panics.1.json index bcd4e537..d0fdd110 100644 --- a/contracts/proof_registry/test_snapshots/test/upgrade_by_non_admin_panics.1.json +++ b/contracts/proof_registry/test_snapshots/test/upgrade_by_non_admin_panics.1.json @@ -352,21 +352,21 @@ "ext": "v0", "cost_inputs": { "ext": "v0", - "n_instructions": 9310, - "n_functions": 207, + "n_instructions": 9461, + "n_functions": 213, "n_globals": 4, - "n_table_entries": 9, + "n_table_entries": 8, "n_types": 43, "n_data_segments": 1, "n_elem_segments": 1, - "n_imports": 27, - "n_exports": 16, - "n_data_segment_bytes": 1783 + "n_imports": 29, + "n_exports": 17, + "n_data_segment_bytes": 1712 } } }, - "hash": "9c04346e279542481a6fe4c72cc4ed2ad74303d6f26f50453a8235153df0127b", - "code": "0061736d0100000001a8022b60037f7f7f017f60027f7f017f60017e017e60027e7e017e60037e7e7e017e6000017e60047e7e7e7e017e60037f7f7f0060047f7f7f7e017e60027f7e0060027f7f017e60047f7f7f7f0060057f7f7e7f7f0060047f7f7f7e0060067e7e7e7e7e7e017f60057f7e7e7e7e0060027e7e0060067e7e7e7e7e7e0060017f017e60047f7f7f7f017f60037e7e7e0060017f0060027f7f0060017e0060027e7f017e60067e7e7e7e7e7e017e60057f7f7f7f7f0060047f7f7f7e017f60017f017f60037f7f7f017e60037f7e7e017e60037f7e7e017f60000060027f7e017e60047f7e7e7e017e60057f7e7e7e7e017e60057f7e7e7f7f0060057f7f7f7f7f017e60067f7e7f7f7f7f017e60017e017f60027e7e017f60067f7f7f7f7f7f017f60057f7f7f7f7f017f02a3011b0169013000020162016500030169015f0002016101300002017801310003017801350002016c01320003016c01310003016c01300003016c015f0004017601640003017801340005016c01370006016d01390004017601670003016201310006016d01610006016201330003016c013600020162016a00030164015f000401780130000301760131000301760133000201620136000301620138000201620134000503d101cf010707070809070a07090b0c070a07070d0a0d070707000a0e010f1011120112130b0a0a140a1505101616070505140a0a17170a0707070518040202060a040a0319040503050707070701040506040504030219030205150707071a07071b0712151c1d0912151e1f0707070707070a0a0a012001211e1e211e221e2321221e211e2112070707071d2425261d01211e21211e211e1e1e221e122321221e1e211e21121d2425261d1d021c07090916160527271601002801011209271301000001002907070101072a0100151a0000000405017001090905030100110621047f01418080c0000b7f00419a88c0000b7f0041f78dc0000b7f0041808ec0000b07dd0110066d656d6f727902000d5f5f636f6e7374727563746f7200650561646d696e00660b636865636b5f636c61696d00670b69735f76657269666965640068176973737565725f72656769737472795f616464726573730069067265766f6b65006a0c7265766f6b655f70726f6f66006b097365745f61646d696e006c0c7375626d69745f70726f6f66006d137375626d69745f70726f6f66735f6261746368006e0775706772616465006f1076657269666965725f616464726573730070015f03010a5f5f646174615f656e6403020b5f5f686561705f6261736503030915010041010b0864a701d101df01ce01e001d701da010a8dab01cf017702017f017e23808080800041106b22032480808080000240024020022903004202510d00200320012002109c808080002003290308210402402003280200450d0020004202370300200020043703080c020b20002004370308200042013703000c010b200042003703000b200341106a2480808080000b6401027e02400240024020022903002203a741ff0171220241c000460d0020024106470d0142002104200310c38180800021030c020b4200210420012003108f8180800021030c010b4201210410ca8180800021030b20002004370300200020033703080b4602017f017e23808080800041106b220324808080800020032001200210f380808000200329030821042000200329030037030020002004370308200341106a2480808080000b810101017f23808080800041206b220424808080800020042000200129030020022903002003109881808000370308200441106a2000200441086a108881808000024020042802104101470d0041e087c08000412b200441106a41d087c08000418484c0800010e681808000000b20042903182103200441206a24808080800020030b4d01017f23808080800041106b2202248080808000200220013703082000200241106a2001109a8180800010cb8180800036020c2000410036020820002001370300200241106a2480808080000be10102037f017e23808080800041306b220324808080800020032001200210a18080800037030820034202370310200341186a200341106a200341106a41086a200341086a200341086a41086a10f5808080004100200328022c2202200328022822046b2205200520024b1b21022003280218200441037422056a2104200328022020056a2105024003402002450d01200420052001108b81808000370300200441086a2104200541086a21052002417f6a21020c000b0b2001200341106a410110a28180800021062000420037030020002006370308200341306a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110f980808000024020022802004101470d00000b20022903082103200241106a24808080800020030b9b0203017f017e027f23808080800041c0006b22032480808080002001200210a180808000210420032001200241086a10a18080800037031020032004370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10f5808080004100200328023c2202200328023822056b2206200620024b1b21022003280228200541037422066a2105200328023020066a2106024003402002450d01200520062001108b81808000370300200541086a2105200641086a21062002417f6a21020c000b0b2001200341186a410210a28180800021042000420037030020002004370308200341c0006a2480808080000b3b01017f23808080800041106b2202248080808000200220013703082000200241086a10fa808080001097818080001a200241106a2480808080000b12002000200142012002200310a5808080000b270020002000200110a7808080002002200310d381808000200410d3818080001096818080001a0b8a0102017f017e23808080800041c0006b220324808080800002400240024020012001200210a780808000220442011082818080000d00200042023703000c010b2003200120044201108181808000370300200341086a2001200310a88080800020032903084202510d012000200341086a413810e9818080001a0b200341c0006a2480808080000f0b000bc20302017f027e23808080800041306b2202248080808000024002400240024002400240024020012802000e0400010203000b2002200041ac86c0800010838180800020022802000d05200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c030b2002200041bc86c0800010838180800020022802000d04200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c020b2002200041d486c0800010838180800020022802000d03200220022903083703202002200241206a10fa8080800037031820022000200241186a10e0808080000c010b200241206a200041e486c0800010838180800020022802200d0220022002290328370318200241186a10fa808080002103200241206a200141086a200010a08180800020022802200d0220022903282104200241206a200141106a200010a08180800020022802200d02200220022903283703102002200437030820022003370300200241206a2000200210e18080800020022903282104200229032021030c010b20022903082104200229030021030b200350450d00200241306a24808080800020040f0b000b9d0302027f067e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b024002402002290300220542ff018342cc00520d002001200541bc84c080004105200341086a410510a5818080001a200341306a2001200341086a109c80808000024020032802304101470d00200042023703000c020b20032903382105200341306a2001200341106a10af808080000240200329033022064202520d00200042023703000c020b024041014102410020032d001822041b20044101461b22044102470d00200042023703000c020b20032903382107200341306a2001200341206a109b808080000240200329033022084202520d00200042023703000c020b20032903382109200341306a2001200341286a109c80808000024020032802304101470d00200042023703000c020b2003290338210a200020043a0030200020053703282000200a370320200020073703182000200637031020002009370308200020083703000c010b200042023703000b200341c0006a2480808080000b1000200020012002420110aa808080000b210020002000200110a7808080002000200210ab8080800020031094818080001a0b4502017f017e23808080800041106b220224808080800020022000200110ce80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b210020002000200110a7808080002002200010898180800020031094818080001a0b900102017f017e23808080800041206b220324808080800002400240024020012001200210a780808000220442021082818080000d00200042003703000c010b2003200120044202108181808000370308200341106a2001200341086a10868180800020032802104101460d012003290318210420004201370300200020043703080b200341206a2480808080000f0b000b1000200020012002420210ac808080000b6a01017f23808080800041106b22032480808080000240024020022903004202510d0020032001200210868180800002402003280200450d00200042023703000c020b20002003290308370308200042013703000c010b200042003703000b200341106a2480808080000bb20203027f017e017f23808080800041c0006b22032480808080002003200041086a220441e484c08000410f10fd8080800037030020012004108981808000210520032004200210a18080800037031020032005370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10f5808080004100200328023c2202200328023822016b2206200620024b1b21022003280228200141037422066a2101200328023020066a2106024003402002450d01200120062004108b81808000370300200141086a2101200641086a21062002417f6a21020c000b0b2004200020032004200341186a410210a28180800010f8808080002102200341c0006a24808080800020020bfb0102047f017e23808080800041306b22022480808080002002200041086a220341f384c08000411110fd8080800037030020022001200310898180800037030820024202370310200241186a200241106a200241106a41086a200241086a200241086a41086a10f5808080004100200228022c2201200228022822046b2205200520014b1b21012002280218200441037422056a2104200228022020056a2105024003402001450d01200420052003108b81808000370300200441086a2104200541086a21052001417f6a21010c000b0b2003200020022003200241106a410110a281808000109e808080002106200241306a24808080800020060be00101027f23808080800041a0016b220624808080800020062005370308200620043703002006419f016a10fb80808000200620013703582006200037035020064203370348200641106a2006419f016a200641c8006a10a68080800041002107024020062903104202510d00200641e0006a200641106a413810e9818080001a4100210720062d0090010d002006290388012006419f016a10ff80808000580d002006200641f0006a10b380808000450d00410121072002a7410171450d002006290368420020062802601b20035a21070b200641a0016a24808080800020070b4d02017f017e41012102024020002802004101470d00410021022001280200450d00200141086a200041106a2202108981808000210320022000290308200310958180800042025221020b20020bf40101027f23808080800041a0016b220524808080800020052004370308200520033703002005419f016a10fb80808000200520023703582005200137035020054203370348200541106a2005419f016a200541c8006a10a6808080000240024020052903104202510d00200541e0006a200541106a413810e9818080001a410021062005290388012104024020052d0090010d0020042005419f016a10ff80808000580d002005200541f0006a10b38080800021060b200020063a00082000200437031020002005290380013703000c010b2000420037031020004200370300200041003a00080b200541a0016a2480808080000b7001017f23808080800041306b220224808080800020022000370308200241086a1080818080002002412f6a10fb808080002002200137032020022000370318200242033703102002412f6a2002412f6a200241106a10a78080800042011093818080001a200241306a2480808080000baf0401017f23808080800041b0016b2206248080808000200620013703082006200037030020062002370310200620033703182006200437032020061080818080002006200641af016a10b780808000370328024002400240200641286a200641086a200641106a10b080808000450d002006200641286a200641086a10b180808000370330200641206a200641306a10b880808000450d012006200641af016a10b980808000370338200641386a200641106a200641186a200641206a10ba80808000450d02200620023703502006200037034820064203370340200641af016a10ff80808000210020064190016a200641af016a200641106a200641206a10bb80808000200620053703800120062000370378200641003a008801200620013703702006420137036820062006290398013703602006200629039001370358200641af016a10fb80808000200641af016a200641c0006a200641d8006a10a980808000200641af016a10fb80808000200641af016a200641c0006a418087014180f6de0010a480808000200620053703a0012006428ed2aaf7eabdabf700370398012006428ed6b4fadd0637039001200641af016a200641af016a20064190016a10bc80808000200641af016a200641a0016a10bd808080001091818080001a200641b0016a2480808080000f0b200641af016a4283808080c0001092818080001a000b200641af016a4283808080d0001092818080001a000b200641af016a4283808080201092818080001a000b5f02017f017e23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a41b885c0800010ad80808000024020012802080d00200010c080808000000b20012903102102200141206a24808080800020020be30102047f017e2380808080004180016b220224808080800041002103200241c0006a410041c00010e7818080001a200110fc80808000200110fa808080004204200241c0006a41c00010a3818080002002200241c0006a41c00010e9818080002104200041086a210520002903002106413f2102024003402003220141c000460d01200220052006109c8180800010cb818080004f0d0120052006200210d381808000109b8180800010cb818080002100200241206a2102200141016a2103200420016a2d0000200041ff0171460d000b0b20044180016a2480808080002001413f4b0b5f02017f017e23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a41a085c0800010ad80808000024020012802080d00200010c080808000000b20012903102102200141206a24808080800020020bc30202027f027e23808080800041d0006b22042480808080002004200041086a2205419886c08000410c10fd808080003703002005200110a18080800021062005200210cd80808000210720042005200310cd808080003703182004200737031020042006370308410021030240034020034118460d01200441206a20036a4202370300200341086a21030c000b0b200441386a200441206a200441206a41186a200441086a200441086a41186a10f5808080004100200428024c2203200428024822026b2201200120034b1b21032004280238200241037422016a2102200428024020016a2101024003402003450d01200220012005108b81808000370300200241086a2102200141086a21012003417f6a21030c000b0b2005200020042005200441206a410310a28180800010f8808080002103200441d0006a24808080800020030bb60102017f017e23808080800041106b22042480808080000240024002400240200241d085c08000108e818080000d00200241d885c08000108e818080000d01200241e085c08000108e818080000d012004200141e885c08000410d10fd80808000370308420021052002200441086a108e818080000d010c030b200341c20010bf8080800021050c010b200341c10010bf8080800021050b20002005370308420121050b20002005370300200441106a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110a280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b2202248080808000200220002001109d80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b950101017f23808080800041206b22032480808080002003200137030820032000370300200320023703102003411f6a10fb808080002003411f6a418885c08000200310ae808080002003411f6a10fb808080002003411f6a41a085c08000200341086a10ae808080002003411f6a10fb808080002003411f6a41b885c08000200341106a10ae80808000200341206a2480808080000bff0103037f017e017f23808080800041106b220224808080800020024200370308200041086a21032001410574411872210420002903002105410021000240034020004108460d01410021010240200420006a220620032005109c8180800010cb818080004f0d0020032005200610d381808000109b8180800010cb8180800021010b200241086a20006a20013a0000200041016a21000c000b0b20022903082105200241106a248080808000200542388620054280fe0383422886842005428080fc0783421886200542808080f80f834208868484200542088842808080f80f832005421888428080fc07838420054228884280fe038320054238888484840b120020004283808080101092818080001a000b3102017f017e23808080800041106b22002480808080002000410f6a10b9808080002101200041106a24808080800020010bcf0a03067f027e027f23808080800041f0016b22022480808080002002200137031820022000370310200241106a108081808000024002400240200241206a22032001109a8180800010cb818080002204450d00200441054b0d01200241a8016a210541002106410121070c020b200241d8016a428380808080011092818080001a000b200241d8016a4283808080f0001092818080001a000b034002400240024002400240024002400240024020062004470d00200241d8016a10b7808080002108200241d8016a10b98080800021092002200837034820022009370350200241d8016a10ff808080002108200241d8006a2001109f80808000200241e8006a41086a2104200241e8006a41186a2106200241206a41086a210a200241a0016a41086a21050340200241a0016a200241d8006a10c3808080000240024020022903a00122014202510d002001a74101710d04200241e8006a2005412810e9818080001a2002200241d8016a109d818080002201370320200241a0016a2002290378109f808080000340200241086a200241a0016a10c480808000200228020822034102460d0220034101710d062002200228020c220341187420034180fe03714108747220034108764180fe0371200341187672723602d8012002200a2001200241d8016a200241d8016a410410a68180800010908180800022013703200c000b0b200241f0016a2480808080000f0b2002200137039001200241c8006a2006200241e8006a10b080808000450d042002200241c8006a200610b1808080003703980120024190016a20024198016a10b880808000450d05200241d0006a200241e8006a200420024190016a10ba80808000450d062002200229036837033020022000370328200242033703202002290388012101200241d8016a200241d8016a200241e8006a20024190016a10bb80808000200220013703c801200220083703c001200241003a00d001200242013703b001200220022903e0013703a801200220022903d8013703a00120022002290380013703b801200241d8016a10fb80808000200241d8016a200241206a200241a0016a10a980808000200241d8016a10fb80808000200241d8016a200241206a418087014180f6de0010a480808000200220013703e8012002428ed2aaf7eabdabf7003703e0012002428ed6b4fadd063703d801200241d8016a200241d8016a200241d8016a10bc80808000200241d8016a200241e8016a10bd808080001091818080001a0c000b0b200641016a210b2007210a03402004200a460d0802400240200620032001109a8180800010cb818080004f0d00200220032001200610d381808000109981808000370368200241a0016a2003200241e8006a10c58080800020022802a0014101470d010c090b41f885c0800010e581808000000b200241206a2005412810e9818080001a200a20032001109a8180800010cb818080004f0d06200220032001200a10d381808000109981808000370368200241a0016a2003200241e8006a10c58080800020022802a0014101460d07200241e8006a2005412810e9818080001a200a41016a210a200241206a200241e8006a108e81808000450d000b200241d8016a428380808090011092818080001a000b41e087c08000412b200241d8016a41d087c0800041c087c0800010e681808000000b41e087c08000412b200241d8016a41d087c0800041c087c0800010e681808000000b200241d8016a4283808080c0001092818080001a000b200241d8016a4283808080d0001092818080001a000b200241d8016a4283808080201092818080001a000b418886c0800010e581808000000b000b200741016a2107200b21060c000b0b7601037f23808080800041106b22022480808080000240024020012802082203200128020c490d00200042023703000c010b2002200141086a22042001290300200310d38180800010998180800037030820002004200241086a10c5808080002001200341016a3602080b200241106a2480808080000b6602017f017e0240024020012802082202200128020c490d00410221010c010b200141086a2001290300200210d38180800010998180800021032001200241016a360208200342ff018342045221012003422088a721020b20002002360204200020013602000bbc0202027f057e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b4201210502402002290300220642ff018342cc00520d0020012006419887c080004105200341086a410510a5818080001a200341306a200341086a2001109f8180800020032802300d0020032903382106200341306a2001200341106a109c8080800020032802300d0020032903382107200341306a200341186a200110a18180800020032802300d0020032903382108200341306a2001200341206a10848180800020032802300d002003290328220942ff018342cb00520d00200329033821052000200737032820002008370320200020093703182000200537031020002006370308420021050b20002005370300200341c0006a2480808080000b3102017f017e23808080800041106b22002480808080002000410f6a10b7808080002101200041106a24808080800020010b6202017f017e23808080800041206b22002480808080002000411f6a10fb80808000200041086a2000411f6a418885c0800010ad80808000024020002802080d002000411f6a10c080808000000b20002903102101200041206a24808080800020010b9b0301017f23808080800041b0016b2203248080808000200320023703082003200037030020031080818080002003200341af016a10b78080800037031002400240200341106a2003200341086a10b080808000450d00200320023703282003200137032020034203370318200341af016a10fb80808000200341e8006a200341af016a200341186a10a68080800020032903684202510d01200341306a200341e8006a413810e9818080001a200341013a0060200341af016a10fb80808000200341af016a200341186a200341306a10a980808000200341af016a10fb80808000200341af016a200341186a418087014180f6de0010a4808080002003200341af016a10ff80808000370380012003200037037820032002370370200320013703682003428ed2aa98bdd7de013703a001200341af016a200341af016a200341a0016a10c980808000200341af016a200341e8006a10ca808080001091818080001a200341b0016a2480808080000f0b200341af016a4283808080c0001092818080001a000b200341af016a4283808080e0001092818080001a000b4502017f017e23808080800041106b220224808080800020022000200110a080808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b220224808080800020022000200110e380808000024020022802004101470d00000b20022903082103200241106a24808080800020030b840101017f23808080800041206b22012480808080002001411f6a10fb80808000200141086a2001411f6a418885c0800010ad80808000024020012802080d002001411f6a10c080808000000b20012001290310370308200141086a1080818080002001411f6a10fb808080002001411f6a200010a380808000200141206a2480808080000b910101017f23808080800041206b2201248080808000200120003703002001411f6a10fb80808000200141086a2001411f6a418885c0800010ad80808000024020012802080d002001411f6a10c080808000000b20012001290310370308200141086a1080818080002001411f6a10fb808080002001411f6a418885c08000200110ae80808000200141206a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110f980808000024020022802004101470d00000b20022903082103200241106a24808080800020030b8c0202017f057e23808080800041306b2203248080808000200341086a2001200241286a109d8080800042012104024020032802080d0020032903102105200341086a2001200241106a10cf8080800020032802080d0020032903102106200341086a2001200241306a10f28080800020032802080d0020032903102107200341086a2001200210d08080800020032802080d0020032903102108200341086a2001200241206a109d8080800020032802080d0020032003290310370328200320083703202003200737031820032006370310200320053703082000200141bc84c080004105200341086a410510a481808000370308420021040b20002004370300200341306a2480808080000b2d00024020022802004101470d002000200241086a200110a0818080000f0b20004200370300200042023703080b2d00024020022802004101470d0020002001200241086a109d808080000f0b20004200370300200042023703080b3702017f017e23808080800041106b220024808080800010c7808080002000410f6a10d2808080002101200041106a24808080800020010b3801017f23808080800041106b220224808080800020022000370308200241086a20011089818080002100200241106a24808080800020000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108681808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a10868180800020032802184101460d0020032903202100200341186a2003412f6a200341106a10858180800020032802184101460d0020012000200329032010c880808000200341306a24808080800042020f0b000b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108781808000024020012802084101470d00000b200129031010cb80808000200141206a24808080800042020b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108681808000024020012802084101470d00000b200129031010cc80808000200141206a24808080800042020bf10102017f027e23808080800041306b2204248080808000200420013703082004200037030020042002370310200441186a2004412f6a2004108681808000024020042802184101460d0020042903202101200441186a2004412f6a200441086a10858180800020042802184101460d0020042903202100200441186a2004412f6a200441106a109b80808000200429031822024202510d00200429032021050240024020034202520d00420021060c010b200342ff018342cb00520d01420121060b20012000200220052006200310b2808080002004412f6a10d7808080002103200441306a24808080800020030f0b000b3a02017f017e23808080800041106b2202248080808000200220003a000f2002410f6a2001108a818080002103200241106a24808080800020030bc80102017f017e23808080800041306b22032480808080002003200137030820032000370300200341106a2003412f6a2003108681808000024020032802104101460d0020032903182101200341106a2003412f6a200341086a10858180800020032802104101460d00200329031821000240024020024202520d00420021040c010b200242ff018342cb00520d01420121040b200341106a200120002004200210b4808080002003412f6a200341106a10d9808080002102200341306a24808080800020020f0b000b4502017f017e23808080800041106b220224808080800020022000200110e280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108681808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a10858180800020022802184101460d002001200229032010b580808000200241306a24808080800042020f0b000bcb0201017f23808080800041d0006b2206248080808000200620013703102006200037030820062002370318200620033703202006200437032820062005370330200641386a200641cf006a200641086a108681808000024020062802384101460d0020062903402101200641386a200641cf006a200641106a10868180800020062802384101460d0020062903402100200641386a200641cf006a200641186a10858180800020062802384101460d0020062903402102200641386a200641cf006a200641206a10848180800020062802384101460d0020062903402103200641386a200641cf006a200641286a10848180800020062802384101460d0020062903402104200641386a200641cf006a200641306a109c8080800020062802384101460d0020012000200220032004200629034010b680808000200641d0006a24808080800042020f0b000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108681808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a10868180800020032802184101460d0020032903202100200341186a2003412f6a200341106a10868180800020032802184101460d0020012000200329032010be80808000200341306a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c1808080002000410f6a10d2808080002101200041106a24808080800020010b6301017f23808080800041206b220224808080800020022000370300200241086a2002411f6a2002108681808000024020022802084101460d00200142ff018342cb00520d002002290310200110c280808000200241206a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c6808080002000410f6a10d2808080002101200041106a24808080800020010b7302017f027e23808080800041106b2203248080808000200320022001109e818080000240024020032802000d00200320032903083703004200210420012003410110a28180800021050c010b4201210410ca8180800021050b2000200437030020002005370308200341106a2480808080000bc70102017f027e23808080800041206b2203248080808000200341086a20022001109e818080000240024020032802080d0020032903102104200341086a200241086a2001109e8180800020032802080d0020032903102105200341086a200241106a2001109e8180800020032802080d00200320032903103703182003200537031020032004370308420021042001200341086a410310a28180800021050c010b4201210410ca8180800021050b2000200437030020002005370308200341206a2480808080000bdc0102017f047e23808080800041206b2203248080808000200341086a2001200241086a10f2808080000240024020032802084101470d004201210410ca8180800021050c010b20032903102106200341086a20012002109d80808000200329031021054201210420032802080d00200341086a2001200241106a109d808080002003290310210702402003280208450d00200721050c010b200320073703182003200537031020032006370308420021042001200341086a410310a28180800021050b2000200437030020002005370308200341206a2480808080000be70102017f057e23808080800041206b220324808080800020032002200110a0818080000240024020032802000d00200329030821042003200241086a200110a08180800020032802000d00200329030821052003200241106a200110a08180800020032802000d002003290308210620032001200241186a109d80808000200329030821074201210820032802000d01200320073703182003200637031020032005370308200320043703004200210820012003410410a28180800021070c010b4201210810ca8180800021070b2000200837030020002007370308200341206a2480808080000b12002001418b88c08000410f10e4818080000b1400108d8180800020002001200210dc808080000b0e00108d8180800010d1808080000b1600108d81808000200020012002200310d6808080000b1400108d8180800020002001200210d8808080000b0e00108d8180800010df808080000b1400108d8180800020002001200210d3808080000b1200108d818080002000200110da808080000b1000108d81808000200010d5808080000b1a00108d8180800020002001200220032004200510db808080000b1200108d818080002000200110de808080000b1000108d81808000200010d4808080000b0e00108d8180800010dd808080000b0300000b130020004200370300200020023100003703080b6102017f017e23808080800041106b220324808080800020032002290300220410d4818080000240024020032802000d00200329030821040c010b2001200410aa8180800021040b2000420037030020002004370308200341106a2480808080000b9a0102017f027e23808080800041206b220324808080800020032002290300220410c6818080000240024020032802004101470d00200341106a200410c781808000024020032802100d00420021042001200329031810a88180800021050c020b4201210410ca8180800021050c010b42002104200329030810c38180800021050b2000200437030020002005370308200341206a2480808080000b4400200041003602102000200436020c2000200336020820002002360204200020013602002000200420036b4103762204200220016b410376220320042003491b3602140b3901017f23808080800041106b22032480808080002003200229020037020820002001200341086a10f780808000200341106a2480808080000b6d02027f017e23808080800041106b22032480808080002003200228020022042002280204220210c5818080000240024020032802004101470d0020012004200210c28180800021050c010b200329030821050b2000420037030020002005370308200341106a2480808080000b7101027f23808080800041106b220424808080800041012105024002400240200020012903002002290300200310b681808000a741ff01710e020102000b41cc88c08000412b2004410f6a41bc88c08000419c88c0800010e681808000000b410021050b200441106a24808080800020050b130020004200370300200020022903003703080b070020002903000b02000b0700200041086a0b5902017f017e23808080800041206b22032480808080002003200236020c20032001360208200341106a2000200341086a10f680808000024020032802104101470d00000b20032903182104200341206a24808080800020040b5a02017f017e23808080800041106b220224808080800020022001370308420121030240200241106a200110bb8180800010cb818080004120470d0020002001370308420021030b20002003370300200241106a2480808080000b7e02017f017e23808080800041206b22012480808080002001200010b381808000370308200141106a2000200141086a10f48080800020012903182102024020012802104101470d002001200237031041cc88c08000412b200141106a41f888c0800041ac88c0800010e681808000000b200141206a24808080800020020b1300200041086a200029030010ab818080001a0b0e0020002001200210af818080000b140020002001200210b08180800010cc818080000b5102017f017e23808080800041106b220324808080800020032001200210f68080800042012104024020032802000d0020002003290308370308420021040b20002004370300200341106a2480808080000b2e01027e4201210302402002290300220442ff018342c800520d0020002004370308420021030b200020033703000b2d01027e4201210302402002290300220410d581808000450d0020002004370308420021030b200020033703000b2e01027e4201210302402002290300220442ff018342cd00520d0020002004370308420021030b200020033703000b2a01017e02402002290300220342ff018342c800510d00200042013703000f0b2000200310fe808080000b7b02017f027e23808080800041106b2203248080808000024002402002290300220442ff018342c800510d00200042013703000c010b20032004370308420121050240200341106a200410bb8180800010cb8180800041c000470d0020002004370308420021050b200020053703000b200341106a2480808080000b070020002903000b070020003100000b070020002903000b8d0102017f027e23808080800041206b2202248080808000200129030021030240024002402000290300220442ff0183420e520d00200342ff0183420e510d010b2002411f6a2004200310b781808000220342005520034200536b21010c010b2002200437030820022003370310200241086a200241106a10d28180800021010b200241206a24808080800020010b02000b110020002001108c8180800041ff0171450b0c002000200110a8818080000b0e0020002001200210a9818080000b0e0020002001200210ac818080000b0c002000200110ad818080000b0e0020002001200210ae818080000b1000200020012002200310b1818080000b0e0020002001200210b2818080000b12002000200120022003200410b4818080000b0c002000200110b5818080000b1000200020012002200310b6818080000b0e0020002001200210b8818080000b0c002000200110b9818080000b0e0020002001200210ba818080000b0c002000200110bb818080000b0a00200010bc818080000b130020004200370300200020012903003703080b0e002000200120011085818080000b130020004200370300200020012903003703080b2e01027e4201210302402001290300220442ff018342cd00520d0020002004370308420021030b200020033703000b0e0020002001200210bd818080000b12002000200120022003200410be818080000b12002000200120022003200410bf818080000b140020002001200220032004200510c0818080000b0e0020002001200210c1818080000b12002001418889c08000410f10e4818080000b0a0020011080808080000b0c00200120021081808080000b0a0020011082808080000b0a0020011083808080000b0c00200120021084808080000b0a0020011085808080000b0c00200120021086808080000b0c00200120021087808080000b0c00200120021088808080000b0e002001200220031089808080000b0c0020012002108a808080000b0800108b808080000b10002001200220032004108c808080000b0a0020011092808080000b0e002001200220031094808080000b0c00200120021095808080000b0c00200120021096808080000b0a0020011097808080000b0c00200120021098808080000b0a0020011099808080000b0800109a808080000b1a002001ad4220864204842002ad422086420484108e808080000b1f00200120022003ad4220864204842004ad422086420484108f808080001a0b2e00024020022004460d00000b2001ad4220864204842003ad4220864204842002ad422086420484108d808080000b3000024020032005460d00000b20012002ad4220864204842004ad4220864204842003ad4220864204841090808080000b1a002001ad4220864204842002ad4220864204841091808080000b1a002001ad4220864204842002ad4220864204841093808080000b070020004208880b960102017e027f2000290300210103400240200150450d00418080c4000f0b024002402001423088a7413f7122024101470d0041df0021020c010b0240024002402002417f6a410b4f0d00412e21030c010b0240200241746a411a4f0d00413521030c010b200241254d0d01413b21030b200220036a21020c010b2000200142068622013703000c010b0b2000200142068637030020020bb50102017f017e23808080800041106b220324808080800002400240200241094b0d00420021040340024020020d002000410036020020002004420886420e843703080c030b200341086a20012d000010cd81808000024020032d00084103460d0020002003290308370204200041013602000c030b200141016a21012002417f6a2102200442068620033100098421040c000b0b20002002360208200041003a0004200041013602000b200341106a2480808080000b2801017e420121020240200142ff01834206520d0020002001370308420021020b200020023703000b2901017e420121020240200142ff018342c000520d0020002001370308420021020b200020023703000b26002000200128020041027422012802d48ac08000360204200020012802fc8ac080003602000b26002000200128020041027422012802a48bc08000360204200020012802cc8bc080003602000b0900428390808080010b08002000422088a70b070020004201510b820101017f410121020240200141ff017141df00460d0002400240200141506a41ff0171410a490d00200141bf7f6a41ff0171411a490d0102402001419f7f6a41ff0171411a490d00200020013a0001200041013a00000f0b200141456a21020c020b200141526a21020c010b2001414b6a21020b200041033a0000200020023a00010b140020002802002000280204200110d8818080000b1600200028020020002802042001200210d6818080000b950101037f23808080800041106b22022480808080002002200142088837030820022000370300024002400340200210c4818080002103200241086a10c48180800021042003418080c400460d0102402004418080c400470d00410121030c030b20032004460d000b200320044b20032004496b21030c010b417f41002004418080c400471b21030b200241106a24808080800020030be50403017f017e027f23808080800041e0006b2202248080808000200220002903002203a72200410876220436023020022003422088a7220536023402400240024002402000418014490d0020034280808080a001540d01200241848080800036025c20024184808080003602542002200241346a3602582002200241306a360250200141d183c08000200241d0006a10cf8180800021000c030b200220043602382000418002490d01024020034280808080a001540d00200241206a200241386a10c98180800020022002290320370248200241848080800036025c20024185808080003602542002200241346a3602582002200241c8006a360250200141c183c08000200241d0006a10cf8180800021000c030b2002200536023c200241186a200241386a10c98180800020022002290318370240200241106a2002413c6a10c88180800020022002290310370248200241858080800036025c20024185808080003602542002200241c8006a3602582002200241c0006a360250200141e283c08000200241d0006a10cf8180800021000c020b20022005360240200241286a200241c0006a10c88180800020022002290328370248200241858080800036025c20024184808080003602542002200241c8006a3602582002200241306a360250200141f183c08000200241d0006a10cf8180800021000c010b200241086a200241386a10c98180800020022002290308370248200241848080800036025c20024185808080003602542002200241346a3602582002200241c8006a360250200141c183c08000200241d0006a10cf8180800021000b200241e0006a24808080800020000b15002000290300420888200129030010d0818080000b0b002000ad4220864204840b3201017e420121020240200142ffffffffffffffff00560d0020002001420886420684370308420021020b200020023703000b1701017f2000a741ff01712201410e46200141ca0046720be50401087f23808080800041106b220424808080800002400240024020034101710d0020022d000022050d01410021050c020b200020022003410176200128020c1180808080000021050c010b200128020c2106410021070340200241016a210802400240024002400240024002402005411874411875417f4a0d00200541ff01712209418001460d01200941c001460d0241a080808006210a02402005410171450d00200241056a21082002280001210a0b4100210920054102710d0320082102410021080c040b024020002008200541ff017122052006118080808000000d00200820056a21020c060b410121050c070b02402000200241036a220520022f000122022006118080808000000d00200520026a21020c050b410121050c060b2004200136020420042000360200200442a080808006370208200320074103746a22052802002004200528020411818080800000450d02410121050c050b200841026a210220082f000021080b0240024020054104710d002002210b0c010b200241026a210b20022f000021090b0240024020054108710d00200b21020c010b200b41026a2102200b2f000021070b02402005411071450d002003200841ffff03714103746a2f010421080b02402005412071450d002003200941ffff03714103746a2f010421090b200420093b010e200420083b010c2004200a36020820042001360204200420003602000240200320074103746a22052802002004200528020411818080800000450d00410121050c040b200741016a21070c010b200741016a2107200821020b20022d000022050d000b410021050b200441106a24808080800020050b180020002802002001200028020428020c118180808000000b0e0020022000200110d9818080000ba30501077f024002402000280208220341808080c00171450d00024002402003418080808001710d00024020024110490d002001200210e38180800021040c020b024020020d0041002104410021020c020b2002410371210502400240200241044f0d0041002106410021040c010b2002410c712107410021064100210403402004200120066a22082c000041bf7f4a6a200841016a2c000041bf7f4a6a200841026a2c000041bf7f4a6a200841036a2c000041bf7f4a6a21042007200641046a2206470d000b0b2005450d01200120066a21080340200420082c000041bf7f4a6a2104200841016a21082005417f6a22050d000c020b0b02400240024020002f010e22070d00410021020c010b200120026a21054100210220012108200721060340200822042005460d020240024020042c00002208417f4c0d00200441016a21080c010b0240200841604f0d00200441026a21080c010b0240200841704f0d00200441036a21080c010b200441046a21080b200820046b20026a21022006417f6a22060d000b0b410021060b200720066b21040b200420002f010c22084f0d00200820046b210941002104410021070240024002402003411d764103710e0402000102020b200921070c010b200941feff037141017621070b200341ffffff00712105200028020421062000280200210002400340200441ffff0371200741ffff03714f0d0141012108200441016a210420002005200628021011818080800000450d000c030b0b41012108200020012002200628020c118080808000000d0141002104200920076b41ffff037121020340200441ffff037122072002492108200720024f0d02200441016a210420002005200628021011818080800000450d000c020b0b200028020020012002200028020428020c1180808080000021080b20080b140020012000280200200028020410d9818080000bc20401097f20002103200221040240200041e807490d002001417c6a21054100210620002107024002400340200720074190ce006e22034190ce006c6b220841ffff037141e4006e210902400240200220066a2204417c6a20024f0d00200520026a220a2009410174220b2d00f48bc080003a00002004417d6a2002490d012004417d6a200241bc8dc0800010de81808000000b2004417c6a200241bc8dc0800010de81808000000b200a41016a200b41f58bc080006a2d00003a000002402004417e6a20024f0d00200a41026a2008200941e4006c6b41017441feff077122092d00f48bc080003a00002004417f6a20024f0d02200a41036a200941f58bc080006a2d00003a00002005417c6a21052006417c6a2106200741fface2044b2104200321072004450d030c010b0b2004417e6a200241bc8dc0800010de81808000000b2004417f6a200241bc8dc0800010de81808000000b200220066a21040b02400240200341094b0d002003210a200421070c010b200341ffff037141e4006e210a024002402004417e6a220720024f0d00200120076a2003200a41e4006c6b41ffff037141017422062d00f48bc080003a00002004417f6a220420024f0d01200120046a200641f58bc080006a2d00003a00000c020b2007200241bc8dc0800010de81808000000b2004200241bc8dc0800010de81808000000b0240024002402000450d00200a450d010b2007417f6a220720024f0d01200120076a200a4101742d00f58bc080003a00000b20070f0b2007200241bc8dc0800010de81808000000b990602087f017e0240024020010d00200541016a210620002802082107412d21080c010b412b418080c4002000280208220741808080017122011b2108200141157620056a21060b0240024020074180808004710d00410021020c010b0240024020034110490d002002200310e38180800021010c010b024020030d00410021010c010b2003410371210902400240200341044f0d004100210a410021010c010b2003410c71210b4100210a41002101034020012002200a6a220c2c000041bf7f4a6a200c41016a2c000041bf7f4a6a200c41026a2c000041bf7f4a6a200c41036a2c000041bf7f4a6a2101200b200a41046a220a470d000b0b2009450d002002200a6a210c03402001200c2c000041bf7f4a6a2101200c41016a210c2009417f6a22090d000b0b200120066a21060b02400240200620002f010c220b4f0d0002400240024020074180808008710d00200b20066b210d410021014100210b0240024002402007411d764103710e0402000100020b200d210b0c010b200d41feff0371410176210b0b200741ffffff00712106200028020421092000280200210a0340200141ffff0371200b41ffff03714f0d024101210c200141016a2101200a2006200928021011818080800000450d000c050b0b20002000290208220ea741808080ff797141b080808002723602084101210c2000280200220a2000280204220920082002200310e2818080000d0341002101200b20066b41ffff037121020340200141ffff037120024f0d024101210c200141016a2101200a4130200928021011818080800000450d000c040b0b4101210c200a200920082002200310e2818080000d02200a20042005200928020c118080808000000d0241002101200d200b6b41ffff037121000340200141ffff03712202200049210c200220004f0d03200141016a2101200a2006200928021011818080800000450d000c030b0b4101210c200a20042005200928020c118080808000000d012000200e37020841000f0b4101210c200028020022012000280204220a20082002200310e2818080000d00200120042005200a28020c11808080800000210c0b200c0b4701017f23808080800041206b2203248080808000200320013602102003200036020c200341013b011c2003200236021820032003410c6a360214200341146a10f180808000000b5f02017f017e23808080800041206b22032480808080002003200136020c200320003602082003418680808000ad4220862204200341086aad84370318200320042003410c6aad84370310418080c08000200341106a200210dd81808000000b6401027f23808080800041106b2202248080808000200120002802002200417f73411f7641014100200241066a20002000411f7522037320036b200241066a410a10db8180800022006a410a20006b10dc818080002100200241106a24808080800020000b5101017f23808080800041106b22022480808080002001410141014100200241066a2000280200200241066a410a10db8180800022006a410a20006b10dc818080002100200241106a24808080800020000b150020002001410174410172200210dd81808000000b410002402002418080c400460d0020002002200128021011818080800000450d0041010f0b024020030d0041000f0b200020032004200128020c118080808000000bf10601087f024002402001200041036a417c71220220006b2203490d00200120036b22044104490d00200441037121054100210641002101024020022000460d0041002107410021010240200020026b2208417c4b0d00410021074100210103402001200020076a22022c000041bf7f4a6a200241016a2c000041bf7f4a6a200241026a2c000041bf7f4a6a200241036a2c000041bf7f4a6a2101200741046a22070d000b0b200020076a21020340200120022c000041bf7f4a6a2101200241016a2102200841016a22080d000b0b200020036a210802402005450d002008200441fcffffff07716a22022c000041bf7f4a210620054101460d00200620022c000141bf7f4a6a210620054102460d00200620022c000241bf7f4a6a21060b20044102762103200620016a21070340200821062003450d02200341c001200341c001491b22044103712105024002402004410274220941f0077122080d00410021020c010b410021022006210103402001410c6a2802002200417f73410776200041067672418182840871200141086a2802002200417f73410776200041067672418182840871200141046a2802002200417f7341077620004106767241818284087120012802002200417f7341077620004106767241818284087120026a6a6a6a2102200141106a2101200841706a22080d000b0b200320046b2103200620096a2108200241087641ff81fc0771200241ff81fc07716a418180046c41107620076a21072005450d000b2006200441fc01714102746a22022802002201417f734107762001410676724181828408712101024020054101460d0020022802042208417f7341077620084106767241818284087120016a210120054102460d0020022802082202417f7341077620024106767241818284087120016a21010b200141087641ff811c71200141ff81fc07716a418180046c41107620076a21070c010b024020010d0041000f0b2001410371210802400240200141044f0d0041002102410021070c010b2001417c712103410021024100210703402007200020026a22012c000041bf7f4a6a200141016a2c000041bf7f4a6a200141026a2c000041bf7f4a6a200141036a2c000041bf7f4a6a21072003200241046a2202470d000b0b2008450d00200020026a21010340200720012c000041bf7f4a6a2107200141016a21012008417f6a22080d000b0b20070b1a00200028020020012002200028020428020c118080808000000b130041cc8dc08000412b200010e181808000000b6e01017f23808080800041206b220524808080800020052001360204200520003602002005200336020c200520023602082005418780808000ad422086200541086aad843703182005418880808000ad4220862005ad8437031041b780c08000200541106a200410dd81808000000baa0301057f02400240200241104f0d00200021030c010b024020002000410020006b41037122046a22054f0d002004417f6a21062000210302402004450d0020042107200021030340200320013a0000200341016a21032007417f6a22070d000b0b20064107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032005470d000b0b024020052005200220046b2202417c716a22034f0d00200141ff017141818284086c2107034020052007360200200541046a22052003490d000b0b200241037121020b02402003200320026a22074f0d002002417f6a2104024020024107712205450d000340200320013a0000200341016a21032005417f6a22050d000b0b20044107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032007470d000b0b20000bba07010c7f23808080800041106b210302400240200241104f0d00200021040c010b024020002000410020006b41037122056a22064f0d002005417f6a2107200021042001210802402005450d002005210920002104200121080340200420082d00003a0000200841016a2108200441016a21042009417f6a22090d000b0b20074107490d000340200420082d00003a0000200441016a200841016a2d00003a0000200441026a200841026a2d00003a0000200441036a200841036a2d00003a0000200441046a200841046a2d00003a0000200441056a200841056a2d00003a0000200441066a200841066a2d00003a0000200441076a200841076a2d00003a0000200841086a2108200441086a22042006470d000b0b2006200220056b2209417c7122076a210402400240200120056a22084103712201450d00410021022003410036020c2003410c6a20017221050240410420016b220a410171450d00200520082d00003a0000410121020b0240200a410271450d00200520026a200820026a2f01003b01000b200820016b21022001410374210b200328020c210502400240200641046a2004490d002006210c0c010b4100200b6b411871210d034020062005200b76200241046a22022802002205200d7472360200200641086a210a200641046a220c2106200a2004490d000b0b41002106200341003a0008200341003a00060240024020014101470d00200341086a210d410021014100210a4100210e0c010b200241056a2d0000210a2003200241046a2d000022013a0008200a410874210a4102210e200341066a210d0b02402008410171450d00200d200241046a200e6a2d00003a000020032d0006411074210620032d000821010b200c200a200672200141ff0171724100200b6b411871742005200b76723602000c010b200620044f0d0020082101034020062001280200360200200141046a2101200641046a22062004490d000b0b20094103712102200820076a21010b02402004200420026a22064f0d002002417f6a2109024020024107712208450d000340200420012d00003a0000200141016a2101200441016a21042008417f6a22080d000b0b20094107490d000340200420012d00003a0000200441016a200141016a2d00003a0000200441026a200141026a2d00003a0000200441036a200141036a2d00003a0000200441046a200141046a2d00003a0000200441056a200141056a2d00003a0000200441066a200141066a2d00003a0000200441076a200141076a2d00003a0000200141086a2101200441086a22042006470d000b0b20000b0e0020002001200210e8818080000b0b810e0100418080c0000bf70d20696e646578206f7574206f6620626f756e64733a20746865206c656e20697320c012206275742074686520696e64657820697320c000c0023a20c0002f55736572732f4d757269746164686f722f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f656e762e7273002f55736572732f4d757269746164686f722f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f6c65646765722e7273002f55736572732f4d757269746164686f722f2e7275737475702f746f6f6c636861696e732f737461626c652d616172636836342d6170706c652d64617277696e2f6c69622f727573746c69622f7372632f727573742f6c6962726172792f636f72652f7372632f6f70732f66756e6374696f6e2e7273006c6962726172792f636f72652f7372632f666d742f6e756d2e727300636f6e7472616374732f70726f6f665f72656769737472792f7372632f6c69622e727300064572726f7228c0032c2023c0012900074572726f722823c0032c2023c0012900064572726f7228c0022c20c0012900074572726f722823c0022c20c00129000000003d00100064000000aa0100000e0000006578706972796973737565727265766f6b65647468726573686f6c6476657269666965645f61740014021000060000001a0210000600000020021000070000002702100009000000300210000b00000069735f76616c69645f6973737565726765745f6973737565725f7075626b6579000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000e2a6b02000000000eaa4ca3b30b00000e783aeb2b00000061636372656469746174696f6e0000009d0110002300000002010000270000009d01100023000000030100002b0000007665726966795f70726f6f6641646d696e00000024031000050000005665726966696572340310000800000049737375657252656769737472790000440310000e00000050726f6f660000005c0310000500000063726564656e7469616c5f747970656973737565725f696470726f6f667075626c69635f696e7075747300006c0310000f00000014021000060000007b031000090000008403100005000000890310000d0000000a01100076000000fa000000050000000000000000000000010000000100000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565436f6e76657273696f6e4572726f7200003d00100064000000aa0100000e000000a2001000670000005b0000000e0000000000000000000000010000000200000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c75650000000000080000000800000003000000436f6e76657273696f6e4572726f724172697468446f6d61696e496e646578426f756e6473496e76616c6964496e7075744d697373696e6756616c75654578697374696e6756616c756545786365656465644c696d6974496e76616c6964416374696f6e496e7465726e616c4572726f72556e657870656374656454797065556e657870656374656453697a65436f6e74726163745761736d566d436f6e7465787453746f726167654f626a65637443727970746f4576656e747342756467657456616c75654175746800000b0000000b0000000c0000000c0000000d0000000d0000000d0000000d0000000e0000000e00000097041000a2041000ad041000b9041000c5041000d2041000df041000ec041000f90410000705100008000000060000000700000007000000060000000600000006000000060000000500000004000000150510001d051000230510002a05100031051000370510003d05100043051000490510004e0510003030303130323033303430353036303730383039313031313132313331343135313631373138313932303231323232333234323532363237323832393330333133323333333433353336333733383339343034313432343334343435343634373438343935303531353235333534353535363537353835393630363136323633363436353636363736383639373037313732373337343735373637373738373938303831383238333834383538363837383838393930393139323933393439353936393739383939810110001b000000570200000500000063616c6c656420604f7074696f6e3a3a756e77726170282960206f6e206120604e6f6e65602076616c756500fb270e636f6e7472616374737065637630000000040000000000000000000000054572726f7200000000000009000000000000000e4e6f74496e697469616c697a65640000000000010000000000000012566572696669636174696f6e4661696c6564000000000002000000000000000d4e6f74417574686f72697a65640000000000000300000000000000104973737565724e6f74547275737465640000000400000055546865207075626c6963206b6579207468652070726f6f6620776173206d61646520616761696e737420646f6573206e6f74206d617463682074686520726567697374657265640a6973737565722773206b65792e000000000000114973737565724b65794d69736d6174636800000000000005000000000000000d50726f6f664e6f74466f756e64000000000000060000003a54686520626174636820636f6e7461696e73206d6f7265207468616e20604d41585f42415443485f53495a4560207375626d697373696f6e732e00000000000d4261746368546f6f4c61726765000000000000070000002f546865206261746368206d75737420636f6e7461696e206174206c65617374206f6e65207375626d697373696f6e2e000000000a4261746368456d7074790000000000080000008c54776f206f72206d6f7265207375626d697373696f6e7320696e20746865206261746368207368617265207468652073616d65206063726564656e7469616c5f74797065603b0a6f6e6c7920746865206c61737420777269746520776f756c6420737572766976652c20736f207468652062617463682069732072656a6563746564206f757472696768742e000000174475706c696361746543726564656e7469616c54797065000000000900000002000000000000000000000007446174614b6579000000000400000000000000000000000541646d696e000000000000000000000000000008566572696669657200000000000000000000000e49737375657252656769737472790000000000010000003843616368656420766572696669636174696f6e2c206b657965642062792028686f6c6465722c2063726564656e7469616c5f74797065292e0000000550726f6f660000000000000200000013000000110000000100000000000000000000000b50726f6f665265636f726400000000050000000000000006657870697279000000000006000003a2546865206973737565722074686174207369676e6564207468652063726564656e7469616c20746869732070726f6f662077617320766572696669656420616761696e73742e0a4c65747320612070726f746f636f6c2072657374726963742077686963682069737375657273206974207472757374732070657220636c61696d2074797065207669610a60747275737465645f6973737565727360206f6e206069735f766572696669656460202f2060636865636b5f636c61696d602e0a0a604f7074696f6e6020736f2060697373756572602063616e206265206578706c696369746c7920616273656e742077697468696e20616e0a616c72656164792d63757272656e742d7368617065207265636f72642028652e672e206f6e65207772697474656e206279206120667574757265206d6967726174696f6e0a746861742063616e2774207265636f76657220746865206f726967696e616c206973737565722920e2809420606973737565725f69735f7472757374656460207468656e0a6661696c7320636c6f73656420616e642072656a6563747320697420756e64657220616e206163746976652060747275737465645f69737375657273602066696c7465722c0a73696e63652074686572652773206e6f2069737375657220746f20636865636b20616761696e73742028612066696c7465726c6573732063616c6c65722069730a756e61666665637465642065697468657220776179292e205468697320646f6573204e4f542c20627920697473656c662c206d616b652061207265636f72640a7772697474656e206265666f72652074686973206669656c642065786973746564207265616461626c653a20536f726f62616e277320737472756374206465636f64696e670a7265717569726573207468652073746f726564206d6170277320656e74727920636f756e7420746f2065786163746c79206d61746368207468652063757272656e740a7374727563742773206669656c6420636f756e742c20736f2074686f7365207265636f726473207374696c6c206661696c20746f20646573657269616c697a6520287365650a606c65676163795f7265636f72645f6d697373696e675f6973737565725f6b65795f6661696c735f746f5f726561646020696e20746573742e7273292e2041207265616c0a6d6967726174696f6e206973207265717569726564206265666f72652072656465706c6f79696e67206f766572206578697374696e672073746f7265642070726f6f66732e0000000000066973737565720000000003e80000001300000049536574206279207468652072656769737465726564206973737565722076696120607265766f6b65602e204578706972792064617461206973206b65707420666f722061756469742e000000000000077265766f6b65640000000001000000be466f7220706172616d65746572697365642063726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292c20746865207468726573686f6c640a76616c756520746861742077617320636f6d6d697474656420746f20696e207468652070726f6f662773207075626c696320696e707574732e204e6f6e6520666f722074797065730a77697468206e6f206e756d65726963207468726573686f6c6420286b79632c206a7572697364696374696f6e292e0000000000097468726573686f6c64000000000003e800000006000000000000000b76657269666965645f6174000000000600000000000000000000000561646d696e0000000000000000000001000000130000000000000082496e76616c6964617465206120686f6c6465722773206361636865642070726f6f662e204f6e6c792074686520726567697374657265642069737375657220666f720a6063726564656e7469616c5f7479706560206d61792063616c6c20746869732028652e672e207768656e204b594320737461747573206368616e676573292e0000000000067265766f6b6500000000000300000000000000066973737565720000000000130000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f74797065000000001100000000000000000000000000000007757067726164650000000001000000000000000d6e65775f7761736d5f68617368000000000003ee00000020000000000000000100000099412073696e676c652070726f6f66207375626d697373696f6e20696e7369646520612062617463682e204d6972726f72732074686520696e646976696475616c20706172616d65746572730a6f6620607375626d69745f70726f6f6660206275742067726f7570656420696e746f20612073747275637420736f20746865792063616e2062652070617373656420617320612060566563602e000000000000000000000f50726f6f665375626d697373696f6e0000000005000000000000000f63726564656e7469616c5f747970650000000011000000000000000665787069727900000000000600000000000000096973737565725f696400000000000013000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e70757473000000000003ea000000040000000000000000000000097365745f61646d696e0000000000000100000000000000096e65775f61646d696e000000000000130000000000000000000001bb4c696b65206069735f7665726966696564602062757420616c736f20656e666f726365732061206d696e696d756d207468726573686f6c6420666f7220706172616d65746572697365640a63726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292e20412070726f6f66207375626d697474656420776974682061207468726573686f6c640a6f66203230305f3030302073617469736669657320606d696e5f7468726573686f6c64203d2035305f3030306020626563617573652069742070726f766573207374726963746c790a6d6f72652e20466f7220606b79636020616e6420606a7572697364696374696f6e602c207061737320606d696e5f7468726573686f6c64203d204e6f6e65602e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465640ae2809420736565206069735f7665726966696564602e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565722028756e6368616e6765640a6265686176696f7572292e000000000b636865636b5f636c61696d00000000040000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000d6d696e5f7468726573686f6c64000000000003e800000006000000000000000f747275737465645f6973737565727300000003e8000003ea00000013000000010000000100000000000001e652657475726e7320602869735f63757272656e746c795f76616c69642c2076657269666965645f61742c2065787069727929602e206069735f63757272656e746c795f76616c6964600a6163636f756e747320666f722065787069727920616761696e7374207468652063757272656e74206c65646765722074696d652e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465643a0a7468652073746f7265642070726f6f66277320697373756572206d75737420626520696e20746865206c6973742c206f7220746869732072657475726e730a602866616c73652c2076657269666965645f61742c206578706972792960206576656e206966207468652070726f6f66206973206f74686572776973652076616c696420e280940a74696d657374616d707320617265207374696c6c2072657475726e656420666f722061756469742c206d61746368696e6720746865206578697374696e670a7265766f6b65642f65787069726564206265686176696f75722e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565720a28756e6368616e676564206265686176696f7572292e00000000000b69735f766572696669656400000000030000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000f747275737465645f6973737565727300000003e8000003ea0000001300000001000003ed0000000300000001000000060000000600000000000000425265766f6b652061206361636865642070726f6f662e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207265766f636174696f6e2e00000000000c7265766f6b655f70726f6f66000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000000cd56657269667920612070726f6f6620616e642c2069662076616c69642c20636163686520697420666f722060686f6c6465726020756e74696c2060657870697279600a286c65646765722074696d657374616d702c207365636f6e6473292e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207375626d697373696f6e2e0a606973737565725f696460206d757374206265207265676973746572656420616e64207472757374656420666f72206063726564656e7469616c5f74797065602e0000000000000c7375626d69745f70726f6f66000000060000000000000006686f6c64657200000000001300000000000000096973737565725f696400000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e707574730000000000000e000000000000000665787069727900000000000600000000000000000000004e6061646d696e602c206076657269666965726020616e6420606973737565725f7265676973747279602061726520746865206465706c6f79656420636f6e7472616374206164647265737365732e00000000000d5f5f636f6e7374727563746f7200000000000003000000000000000561646d696e000000000000130000000000000008766572696669657200000013000000000000000f6973737565725f726567697374727900000000130000000000000000000000000000001076657269666965725f6164647265737300000000000000010000001300000000000000764f6e65206576656e7420697320656d697474656420706572207375636365737366756c6c792076657269666965642063726564656e7469616c2c206d61746368696e670a746865206576656e7420656d697373696f6e20736861706520696e207468652073696e676c652d70726f6f6620706174682e0000000000137375626d69745f70726f6f66735f626174636800000000020000000000000006686f6c646572000000000013000000000000000b7375626d697373696f6e7300000003ea000007d00000000f50726f6f665375626d697373696f6e00000000000000000000000000000000176973737565725f72656769737472795f6164647265737300000000000000000100000013001e11636f6e7472616374656e766d6574617630000000000000001a00000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e39332e3100000000000000000008727373646b7665720000002f32362e312e30233137356161343133303666333833303537613863646663383462363864393331363634666333346500" + "hash": "e0bcabdcb59b079be61e6cd9bc0784a9ace00f3366ad515af5ad98db200d13d9", + "code": "0061736d0100000001a8022b60027f7f017f60037f7f7f017f60017e017e60027e7e017e60037e7e7e017e6000017e60047e7e7e7e017e60037f7f7f0060047f7f7f7e017e60027f7e0060027f7f017e60047f7f7f7f0060057f7f7e7f7f0060047f7f7f7e0060027e7e0060017e017f60067e7e7e7e7e7e017f60057f7e7e7e7e0060067e7e7e7e7e7e0060017f017e60047f7f7f7f017f60037e7e7e0060017f0060027f7f0060017e0060027e7f017e60067e7e7e7e7e7e017e60057f7f7f7f7f0060047f7f7f7e017f60017f017f60037f7f7f017e60037f7e7e017e60037f7e7e017f60000060027f7e017e60047f7e7e7e017e60057f7e7e7e7e017e60057f7e7e7f7f0060057f7f7f7f7f017e60067f7e7f7f7f7f017e60027e7e017f60067f7f7f7f7f7f017f60057f7f7f7f7f017f02af011d0169013000020162016500030169015f0002016101300002017801310003017801350002016c01320003016c01310003016c01300003016c015f0004017601640003017801330005017801340005016c01370006017801380005016d01390004017601670003016201310006016d01610006016201330003016c013600020162016a00030164015f000401780130000301760131000301760133000201620136000301620138000201620134000503d701d5010707070809070a07090b0c070a07070d0a0d070707010a0e0f1000110e12130013140b0a0a150a16050e1717070505150a0a18180a070707051904020203060a040a031a0405030507070707000405030604050403021a030205160707071b07071c0713161d1e091d1d13161f201d0707070707070a0a0a002100221f1f221f231f2422231f221f2213070707071e2526271e00221f22221f221f1f1f231f1313241322231f1f221f22131e2526271e1e021d0709091717050f0f17000028000013090f2900010100170001072a0001161b0101010405017001080805030100110621047f01418080c0000b7f0041da86c0000b7f0041b08dc0000b7f0041b08dc0000b07ea0111066d656d6f727902000d5f5f636f6e7374727563746f72006a0561646d696e006b0a62756d705f636c61696d006c0b636865636b5f636c61696d006d0b69735f7665726966696564006e176973737565725f72656769737472795f61646472657373006f067265766f6b6500700c7265766f6b655f70726f6f660071097365745f61646d696e00720c7375626d69745f70726f6f660073137375626d69745f70726f6f66735f62617463680074077570677261646500751076657269666965725f616464726573730076015f03010a5f5f646174615f656e6403020b5f5f686561705f6261736503030913010041010b0769b001dc01e701d901e201e5010ac6ae01d5016401027e02400240024020022903002203a741ff0171220241c000460d0020024106470d0142002104200310ce8180800021030c020b420021042001200310988180800021030c010b4201210410d58180800021030b20002004370300200020033703080b7702017f017e23808080800041106b22032480808080000240024020022903004202510d00200320012002109d808080002003290308210402402003280200450d0020004202370300200020043703080c020b20002004370308200042013703000c010b200042003703000b200341106a2480808080000b4602017f017e23808080800041106b220324808080800020032001200210f980808000200329030821042000200329030037030020002004370308200341106a2480808080000b810101017f23808080800041206b22042480808080002004200020012903002002290300200310a181808000370308200441106a2000200441086a109181808000024020042802104101470d0041a086c08000412b200441106a419086c0800041c882c0800010ee81808000000b20042903182103200441206a24808080800020030b4d01017f23808080800041106b2202248080808000200220013703082000200241106a200110a38180800010d68180800036020c2000410036020820002001370300200241106a2480808080000be10102037f017e23808080800041306b220324808080800020032001200210a38080800037030820034202370310200341186a200341106a200341106a41086a200341086a200341086a41086a10fb808080004100200328022c2202200328022822046b2205200520024b1b21022003280218200441037422056a2104200328022020056a2105024003402002450d01200420052001109381808000370300200441086a2104200541086a21052002417f6a21020c000b0b2001200341106a410110ab8180800021062000420037030020002006370308200341306a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110ff80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b9b0203017f017e027f23808080800041c0006b22032480808080002001200210a380808000210420032001200241086a10a38080800037031020032004370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10fb808080004100200328023c2202200328023822056b2206200620024b1b21022003280228200541037422066a2105200328023020066a2106024003402002450d01200520062001109381808000370300200541086a2105200641086a21062002417f6a21020c000b0b2001200341186a410210ab8180800021042000420037030020002004370308200341c0006a2480808080000b3b01017f23808080800041106b2202248080808000200220013703082000200241086a10808180800010a0818080001a200241106a2480808080000b12002000200142012002200310a7808080000b270020002000200110a9808080002002200310de81808000200410de81808000109f818080001a0b8a0102017f017e23808080800041c0006b220324808080800002400240024020012001200210a98080800022044201108a818080000d00200042023703000c010b2003200120044201108981808000370300200341086a2001200310aa8080800020032903084202510d012000200341086a413810f1818080001a0b200341c0006a2480808080000f0b000bc20302017f027e23808080800041306b2202248080808000024002400240024002400240024020012802000e0400010203000b2002200041ec84c08000108c8180800020022802000d05200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c030b2002200041fc84c08000108c8180800020022802000d04200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c020b20022000419485c08000108c8180800020022802000d03200220022903083703202002200241206a10808180800037031820022000200241186a10e5808080000c010b200241206a200041a485c08000108c8180800020022802200d0220022002290328370318200241186a1080818080002103200241206a200141086a200010a98180800020022802200d0220022903282104200241206a200141106a200010a98180800020022802200d02200220022903283703102002200437030820022003370300200241206a2000200210e68080800020022903282104200229032021030c010b20022903082104200229030021030b200350450d00200241306a24808080800020040f0b000b9d0302027f067e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b024002402002290300220542ff018342cc00520d0020012005418083c080004105200341086a410510ae818080001a200341306a2001200341086a109d80808000024020032802304101470d00200042023703000c020b20032903382105200341306a2001200341106a10b1808080000240200329033022064202520d00200042023703000c020b024041014102410020032d001822041b20044101461b22044102470d00200042023703000c020b20032903382107200341306a2001200341206a109e808080000240200329033022084202520d00200042023703000c020b20032903382109200341306a2001200341286a109d80808000024020032802304101470d00200042023703000c020b2003290338210a200020043a0030200020053703282000200a370320200020073703182000200637031020002009370308200020083703000c010b200042023703000b200341c0006a2480808080000b1000200020012002420110ac808080000b210020002000200110a9808080002000200210ad808080002003109d818080001a0b4502017f017e23808080800041106b220224808080800020022000200110d280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b210020002000200110a980808000200220001092818080002003109d818080001a0b900102017f017e23808080800041206b220324808080800002400240024020012001200210a98080800022044202108a818080000d00200042003703000c010b2003200120044202108981808000370308200341106a2001200341086a108f8180800020032802104101460d012003290318210420004201370300200020043703080b200341206a2480808080000f0b000b1000200020012002420210ae808080000b6a01017f23808080800041106b22032480808080000240024020022903004202510d00200320012002108f8180800002402003280200450d00200042023703000c020b20002003290308370308200042013703000c010b200042003703000b200341106a2480808080000bb20203027f017e017f23808080800041c0006b22032480808080002003200041086a220441a883c08000410f10838180800037030020012004109281808000210520032004200210a38080800037031020032005370308410021020240034020024110460d01200341186a20026a4202370300200241086a21020c000b0b200341286a200341186a200341186a41106a200341086a200341086a41106a10fb808080004100200328023c2202200328023822016b2206200620024b1b21022003280228200141037422066a2101200328023020066a2106024003402002450d01200120062004109381808000370300200141086a2101200641086a21062002417f6a21020c000b0b2004200020032004200341186a410210ab8180800010fe808080002102200341c0006a24808080800020020bfb0102047f017e23808080800041306b22022480808080002002200041086a220341b783c08000411110838180800037030020022001200310928180800037030820024202370310200241186a200241106a200241106a41086a200241086a200241086a41086a10fb808080004100200228022c2201200228022822046b2205200520014b1b21012002280218200441037422056a2104200228022020056a2105024003402001450d01200420052003109381808000370300200441086a2104200541086a21052001417f6a21010c000b0b2003200020022003200241106a410110ab8180800010a0808080002106200241306a24808080800020060bdd0101017f23808080800041e0006b2202248080808000200220013703182002200037031020024203370308200241df006a108181808000200241206a200241df006a200241086a10a8808080000240024020022903204202510d0020022d00504101710d0120022903482201200241df006a108781808000580d01200241df006a108181808000200241df006a200241086a41808701200110b58080800010a680808000200241e0006a2480808080000f0b200241df006a4283808080e000109b818080001a000b200241df006a4283808080a001109b818080001a000b7504017f017e017f017e23808080800041106b22012480808080002001410f6a10878180800021022001410f6a108b818080002103200141106a2480808080002003ad22044200200020027d220220022000561b42058022004280efdd0020004280efdd00561b428087017c220020042000541ba70be00101027f23808080800041a0016b220624808080800020062005370308200620043703002006419f016a108181808000200620013703582006200037035020064203370348200641106a2006419f016a200641c8006a10a88080800041002107024020062903104202510d00200641e0006a200641106a413810f1818080001a4100210720062d0090010d002006290388012006419f016a108781808000580d002006200641f0006a10b780808000450d00410121072002a7410171450d002006290368420020062802601b20035a21070b200641a0016a24808080800020070b4d02017f017e41012102024020002802004101470d00410021022001280200450d00200141086a200041106a22021092818080002103200220002903082003109e8180800042025221020b20020bf40101027f23808080800041a0016b220524808080800020052004370308200520033703002005419f016a108181808000200520023703582005200137035020054203370348200541106a2005419f016a200541c8006a10a8808080000240024020052903104202510d00200541e0006a200541106a413810f1818080001a410021062005290388012104024020052d0090010d0020042005419f016a108781808000580d002005200541f0006a10b78080800021060b200020063a00082000200437031020002005290380013703000c010b2000420037031020004200370300200041003a00080b200541a0016a2480808080000b7001017f23808080800041306b220224808080800020022000370308200241086a1088818080002002412f6a1081818080002002200137032020022000370318200242033703102002412f6a2002412f6a200241106a10a9808080004201109c818080001a200241306a2480808080000bb20401017f23808080800041b0016b2206248080808000200620013703082006200037030020062002370310200620033703182006200437032020061088818080002006200641af016a10bb80808000370328024002400240200641286a200641086a200641106a10b280808000450d002006200641286a200641086a10b380808000370330200641206a200641306a10bc80808000450d012006200641af016a10bd80808000370338200641386a200641106a200641186a200641206a10be80808000450d02200620023703502006200037034820064203370340200641af016a108781808000210020064190016a200641af016a200641106a200641206a10bf80808000200620053703800120062000370378200641003a008801200620013703702006420137036820062006290398013703602006200629039001370358200641af016a108181808000200641af016a200641c0006a200641d8006a10ab80808000200641af016a108181808000200641af016a200641c0006a41808701200510b58080800010a680808000200620053703a0012006428ed2aaf7eabdabf700370398012006428ed6b4fadd0637039001200641af016a200641af016a20064190016a10c080808000200641af016a200641a0016a10c180808000109a818080001a200641b0016a2480808080000f0b200641af016a4283808080c000109b818080001a000b200641af016a4283808080d000109b818080001a000b200641af016a428380808020109b818080001a000b5f02017f017e23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41f883c0800010af80808000024020012802080d00200010c480808000000b20012903102102200141206a24808080800020020be30102047f017e2380808080004180016b220224808080800041002103200241c0006a410041c00010ef818080001a200110828180800020011080818080004204200241c0006a41c00010ac818080002002200241c0006a41c00010f1818080002104200041086a210520002903002106413f2102024003402003220141c000460d0120022005200610a58180800010d6818080004f0d0120052006200210de8180800010a48180800010d6818080002100200241206a2102200141016a2103200420016a2d0000200041ff0171460d000b0b20044180016a2480808080002001413f4b0b5f02017f017e23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41e083c0800010af80808000024020012802080d00200010c480808000000b20012903102102200141206a24808080800020020bc30202027f027e23808080800041d0006b22042480808080002004200041086a220541d884c08000410c1083818080003703002005200110a38080800021062005200210d180808000210720042005200310d1808080003703182004200737031020042006370308410021030240034020034118460d01200441206a20036a4202370300200341086a21030c000b0b200441386a200441206a200441206a41186a200441086a200441086a41186a10fb808080004100200428024c2203200428024822026b2201200120034b1b21032004280238200241037422016a2102200428024020016a2101024003402003450d01200220012005109381808000370300200241086a2102200141086a21012003417f6a21030c000b0b2005200020042005200441206a410310ab8180800010fe808080002103200441d0006a24808080800020030bb60102017f017e23808080800041106b220424808080800002400240024002402002419084c080001097818080000d002002419884c080001097818080000d01200241a084c080001097818080000d012004200141a884c08000410d108381808000370308420021052002200441086a1097818080000d010c030b200341c20010c38080800021050c010b200341c10010c38080800021050b20002005370308420121050b20002005370300200441106a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110a480808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b2202248080808000200220002001109f80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b950101017f23808080800041206b22032480808080002003200137030820032000370300200320023703102003411f6a1081818080002003411f6a41c883c08000200310b0808080002003411f6a1081818080002003411f6a41e083c08000200341086a10b0808080002003411f6a1081818080002003411f6a41f883c08000200341106a10b080808000200341206a2480808080000bff0103037f017e017f23808080800041106b220224808080800020024200370308200041086a21032001410574411872210420002903002105410021000240034020004108460d01410021010240200420006a22062003200510a58180800010d6818080004f0d0020032005200610de8180800010a48180800010d68180800021010b200241086a20006a20013a0000200041016a21000c000b0b20022903082105200241106a248080808000200542388620054280fe0383422886842005428080fc0783421886200542808080f80f834208868484200542088842808080f80f832005421888428080fc07838420054228884280fe038320054238888484840b12002000428380808010109b818080001a000b3102017f017e23808080800041106b22002480808080002000410f6a10bd808080002101200041106a24808080800020010bd20a03067f027e027f23808080800041f0016b22022480808080002002200137031820022000370310200241106a1088818080000240200241206a2203200110a38180800010d6818080002204450d0002400240200441054b0d00200241a8016a210541002106410121070c010b200241d8016a4283808080f000109b818080001a000b034002400240024002400240024002400240024020062004470d00200241d8016a10bb808080002108200241d8016a10bd8080800021092002200837034820022009370350200241d8016a1087818080002108200241d8006a200110a180808000200241e8006a41086a2104200241e8006a41186a2106200241206a41086a210a200241a0016a41086a21050340200241a0016a200241d8006a10c7808080000240024020022903a00122014202510d002001a74101710d04200241e8006a2005412810f1818080001a2002200241d8016a10a6818080002201370320200241a0016a200229037810a1808080000340200241086a200241a0016a10c880808000200228020822034102460d0220034101710d062002200228020c220341187420034180fe03714108747220034108764180fe0371200341187672723602d8012002200a2001200241d8016a200241d8016a410410af8180800010998180800022013703200c000b0b200241f0016a2480808080000f0b2002200137039001200241c8006a2006200241e8006a10b280808000450d042002200241c8006a200610b3808080003703980120024190016a20024198016a10bc80808000450d05200241d0006a200241e8006a200420024190016a10be80808000450d062002200229036837033020022000370328200242033703202002290388012101200241d8016a200241d8016a200241e8006a20024190016a10bf80808000200220013703c801200220083703c001200241003a00d001200242013703b001200220022903e0013703a801200220022903d8013703a00120022002290380013703b801200241d8016a108181808000200241d8016a200241206a200241a0016a10ab80808000200241d8016a108181808000200241d8016a200241206a41808701200110b58080800010a680808000200220013703e8012002428ed2aaf7eabdabf7003703e0012002428ed6b4fadd063703d801200241d8016a200241d8016a200241d8016a10c080808000200241d8016a200241e8016a10c180808000109a818080001a0c000b0b200641016a210b2007210a03402004200a460d080240024020062003200110a38180800010d6818080004f0d00200220032001200610de8180800010a281808000370368200241a0016a2003200241e8006a10c98080800020022802a0014101470d010c090b41b884c0800010ed81808000000b200241206a2005412810f1818080001a200a2003200110a38180800010d6818080004f0d06200220032001200a10de8180800010a281808000370368200241a0016a2003200241e8006a10c98080800020022802a0014101460d07200241e8006a2005412810f1818080001a200a41016a210a200241206a200241e8006a109781808000450d000b200241d8016a42838080809001109b818080001a000b41a086c08000412b200241d8016a419086c08000418086c0800010ee81808000000b41a086c08000412b200241d8016a419086c08000418086c0800010ee81808000000b200241d8016a4283808080c000109b818080001a000b200241d8016a4283808080d000109b818080001a000b200241d8016a428380808020109b818080001a000b41c884c0800010ed81808000000b000b200741016a2107200b21060c000b0b200241d8016a42838080808001109b818080001a000b7601037f23808080800041106b22022480808080000240024020012802082203200128020c490d00200042023703000c010b2002200141086a22042001290300200310de8180800010a28180800037030820002004200241086a10c9808080002001200341016a3602080b200241106a2480808080000b6602017f017e0240024020012802082202200128020c490d00410221010c010b200141086a2001290300200210de8180800010a28180800021032001200241016a360208200342ff018342045221012003422088a721020b20002002360204200020013602000bbc0202027f057e23808080800041c0006b2203248080808000410021040240034020044128460d01200341086a20046a4202370300200441086a21040c000b0b4201210502402002290300220642ff018342cc00520d002001200641d885c080004105200341086a410510ae818080001a200341306a200341086a200110a78180800020032802300d0020032903382106200341306a2001200341106a109d8080800020032802300d0020032903382107200341306a200341186a200110a88180800020032802300d0020032903382108200341306a2001200341206a108d8180800020032802300d002003290328220942ff018342cb00520d00200329033821052000200737032820002008370320200020093703182000200537031020002006370308420021050b20002005370300200341c0006a2480808080000b3102017f017e23808080800041106b22002480808080002000410f6a10bb808080002101200041106a24808080800020010b6202017f017e23808080800041206b22002480808080002000411f6a108181808000200041086a2000411f6a41c883c0800010af80808000024020002802080d002000411f6a10c480808000000b20002903102101200041206a24808080800020010b9b0301017f23808080800041b0016b2203248080808000200320023703082003200037030020031088818080002003200341af016a10bb8080800037031002400240200341106a2003200341086a10b280808000450d00200320023703282003200137032020034203370318200341af016a108181808000200341e8006a200341af016a200341186a10a88080800020032903684202510d01200341306a200341e8006a413810f1818080001a200341013a0060200341af016a108181808000200341af016a200341186a200341306a10ab80808000200341af016a108181808000200341af016a200341186a418087014180f6de0010a6808080002003200341af016a108781808000370380012003200037037820032002370370200320013703682003428ed2aa98bdd7de013703a001200341af016a200341af016a200341a0016a10cd80808000200341af016a200341e8006a10ce80808000109a818080001a200341b0016a2480808080000f0b200341af016a4283808080c000109b818080001a000b200341af016a4283808080e000109b818080001a000b4502017f017e23808080800041106b220224808080800020022000200110a280808000024020022802004101470d00000b20022903082103200241106a24808080800020030b4502017f017e23808080800041106b220224808080800020022000200110e880808000024020022802004101470d00000b20022903082103200241106a24808080800020030b840101017f23808080800041206b22012480808080002001411f6a108181808000200141086a2001411f6a41c883c0800010af80808000024020012802080d002001411f6a10c480808000000b20012001290310370308200141086a1088818080002001411f6a1081818080002001411f6a200010a580808000200141206a2480808080000b910101017f23808080800041206b2201248080808000200120003703002001411f6a108181808000200141086a2001411f6a41c883c0800010af80808000024020012802080d002001411f6a10c480808000000b20012001290310370308200141086a1088818080002001411f6a1081818080002001411f6a41c883c08000200110b080808000200141206a2480808080000b4502017f017e23808080800041106b220224808080800020022000200110ff80808000024020022802004101470d00000b20022903082103200241106a24808080800020030b8c0202017f057e23808080800041306b2203248080808000200341086a2001200241286a109f8080800042012104024020032802080d0020032903102105200341086a2001200241106a10d38080800020032802080d0020032903102106200341086a2001200241306a10f88080800020032802080d0020032903102107200341086a2001200210d48080800020032802080d0020032903102108200341086a2001200241206a109f8080800020032802080d00200320032903103703282003200837032020032007370318200320063703102003200537030820002001418083c080004105200341086a410510ad81808000370308420021040b20002004370300200341306a2480808080000b2d00024020022802004101470d002000200241086a200110a9818080000f0b20004200370300200042023703080b2d00024020022802004101470d0020002001200241086a109f808080000f0b20004200370300200042023703080b3702017f017e23808080800041106b220024808080800010cb808080002000410f6a10d6808080002101200041106a24808080800020010b3801017f23808080800041106b220224808080800020022000370308200241086a20011092818080002100200241106a24808080800020000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108f81808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a108f8180800020032802184101460d0020032903202100200341186a2003412f6a200341106a108e8180800020032802184101460d0020012000200329032010cc80808000200341306a24808080800042020f0b000b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001109081808000024020012802084101470d00000b200129031010cf80808000200141206a24808080800042020b5401017f23808080800041206b220124808080800020012000370300200141086a2001411f6a2001108f81808000024020012802084101470d00000b200129031010d080808000200141206a24808080800042020b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108f81808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a108e8180800020022802184101460d002001200229032010b480808000200241306a24808080800042020f0b000bf10102017f027e23808080800041306b2204248080808000200420013703082004200037030020042002370310200441186a2004412f6a2004108f81808000024020042802184101460d0020042903202101200441186a2004412f6a200441086a108e8180800020042802184101460d0020042903202100200441186a2004412f6a200441106a109e80808000200429031822024202510d00200429032021050240024020034202520d00420021060c010b200342ff018342cb00520d01420121060b20012000200220052006200310b6808080002004412f6a10dc808080002103200441306a24808080800020030f0b000b3a02017f017e23808080800041106b2202248080808000200220003a000f2002410f6a20011094818080002103200241106a24808080800020030bc80102017f017e23808080800041306b22032480808080002003200137030820032000370300200341106a2003412f6a2003108f81808000024020032802104101460d0020032903182101200341106a2003412f6a200341086a108e8180800020032802104101460d00200329031821000240024020024202520d00420021040c010b200242ff018342cb00520d01420121040b200341106a200120002004200210b8808080002003412f6a200341106a10de808080002102200341306a24808080800020020f0b000b4502017f017e23808080800041106b220224808080800020022000200110e780808000024020022802004101470d00000b20022903082103200241106a24808080800020030b870101017f23808080800041306b22022480808080002002200137031020022000370308200241186a2002412f6a200241086a108f81808000024020022802184101460d0020022903202101200241186a2002412f6a200241106a108e8180800020022802184101460d002001200229032010b980808000200241306a24808080800042020f0b000bcb0201017f23808080800041d0006b2206248080808000200620013703102006200037030820062002370318200620033703202006200437032820062005370330200641386a200641cf006a200641086a108f81808000024020062802384101460d0020062903402101200641386a200641cf006a200641106a108f8180800020062802384101460d0020062903402100200641386a200641cf006a200641186a108e8180800020062802384101460d0020062903402102200641386a200641cf006a200641206a108d8180800020062802384101460d0020062903402103200641386a200641cf006a200641286a108d8180800020062802384101460d0020062903402104200641386a200641cf006a200641306a109d8080800020062802384101460d0020012000200220032004200629034010ba80808000200641d0006a24808080800042020f0b000bb30101017f23808080800041306b2203248080808000200320013703082003200037030020032002370310200341186a2003412f6a2003108f81808000024020032802184101460d0020032903202101200341186a2003412f6a200341086a108f8180800020032802184101460d0020032903202100200341186a2003412f6a200341106a108f8180800020032802184101460d0020012000200329032010c280808000200341306a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010c5808080002000410f6a10d6808080002101200041106a24808080800020010b6301017f23808080800041206b220224808080800020022000370300200241086a2002411f6a2002108f81808000024020022802084101460d00200142ff018342cb00520d002002290310200110c680808000200241206a24808080800042020f0b000b3702017f017e23808080800041106b220024808080800010ca808080002000410f6a10d6808080002101200041106a24808080800020010b7302017f027e23808080800041106b220324808080800020032002200110aa818080000240024020032802000d00200320032903083703004200210420012003410110ab8180800021050c010b4201210410d58180800021050b2000200437030020002005370308200341106a2480808080000bc70102017f027e23808080800041206b2203248080808000200341086a2002200110aa818080000240024020032802080d0020032903102104200341086a200241086a200110aa8180800020032802080d0020032903102105200341086a200241106a200110aa8180800020032802080d00200320032903103703182003200537031020032004370308420021042001200341086a410310ab8180800021050c010b4201210410d58180800021050b2000200437030020002005370308200341206a2480808080000bdc0102017f047e23808080800041206b2203248080808000200341086a2001200241086a10f8808080000240024020032802084101470d004201210410d58180800021050c010b20032903102106200341086a20012002109f80808000200329031021054201210420032802080d00200341086a2001200241106a109f808080002003290310210702402003280208450d00200721050c010b200320073703182003200537031020032006370308420021042001200341086a410310ab8180800021050b2000200437030020002005370308200341206a2480808080000be70102017f057e23808080800041206b220324808080800020032002200110a9818080000240024020032802000d00200329030821042003200241086a200110a98180800020032802000d00200329030821052003200241106a200110a98180800020032802000d002003290308210620032001200241186a109f80808000200329030821074201210820032802000d01200320073703182003200637031020032005370308200320043703004200210820012003410410ab8180800021070c010b4201210810d58180800021070b2000200837030020002007370308200341206a2480808080000b1200200141cb86c08000410f10ec818080000b140010968180800020002001200210e1808080000b0e0010968180800010d5808080000b12001096818080002000200110da808080000b1600109681808000200020012002200310db808080000b140010968180800020002001200210dd808080000b0e0010968180800010e4808080000b140010968180800020002001200210d7808080000b12001096818080002000200110df808080000b1000109681808000200010d9808080000b1a0010968180800020002001200220032004200510e0808080000b12001096818080002000200110e3808080000b1000109681808000200010d8808080000b0e0010968180800010e2808080000b0300000b130020004200370300200020023100003703080b6102017f017e23808080800041106b220324808080800020032002290300220410df818080000240024020032802000d00200329030821040c010b2001200410b38180800021040b2000420037030020002004370308200341106a2480808080000b9a0102017f027e23808080800041206b220324808080800020032002290300220410d1818080000240024020032802004101470d00200341106a200410d281808000024020032802100d00420021042001200329031810b18180800021050c020b4201210410d58180800021050c010b42002104200329030810ce8180800021050b2000200437030020002005370308200341206a2480808080000b4400200041003602102000200436020c2000200336020820002002360204200020013602002000200420036b4103762204200220016b410376220320042003491b3602140b3901017f23808080800041106b22032480808080002003200229020037020820002001200341086a10fd80808000200341106a2480808080000b6d02027f017e23808080800041106b22032480808080002003200228020022042002280204220210d0818080000240024020032802004101470d0020012004200210cd8180800021050c010b200329030821050b2000420037030020002005370308200341106a2480808080000b7101027f23808080800041106b220424808080800041012105024002400240200020012903002002290300200310c181808000a741ff01710e020102000b41fc86c08000412b2004410f6a41a887c0800041dc86c0800010ee81808000000b410021050b200441106a24808080800020050b130020004200370300200020022903003703080b070020002903000b02000b0700200041086a0b5902017f017e23808080800041206b22032480808080002003200236020c20032001360208200341106a2000200341086a10fc80808000024020032802104101470d00000b20032903182104200341206a24808080800020040b5a02017f017e23808080800041106b220224808080800020022001370308420121030240200241106a200110c68180800010d6818080004120470d0020002001370308420021030b20002003370300200241106a2480808080000b1000200010bf8180800010d6818080000b1000200010bc8180800010d6818080000b7e02017f017e23808080800041206b22012480808080002001200010bd81808000370308200141106a2000200141086a10fa8080800020012903182102024020012802104101470d002001200237031041fc86c08000412b200141106a41b887c0800041ec86c0800010ee81808000000b200141206a24808080800020020b1300200041086a200029030010b4818080001a0b0e0020002001200210b8818080000b140020002001200210b98180800010d7818080000b4901037f23808080800041106b22012480808080002001410f6a10868180800021022001410f6a1085818080002103200141106a2480808080004100200320026b2201200120034b1b0b5102017f017e23808080800041106b220324808080800020032001200210fc8080800042012104024020032802000d0020002003290308370308420021040b20002004370300200341106a2480808080000b2e01027e4201210302402002290300220442ff018342c800520d0020002004370308420021030b200020033703000b2d01027e4201210302402002290300220410e081808000450d0020002004370308420021030b200020033703000b2e01027e4201210302402002290300220442ff018342cd00520d0020002004370308420021030b200020033703000b2a01017e02402002290300220342ff018342c800510d00200042013703000f0b200020031084818080000b7b02017f027e23808080800041106b2203248080808000024002402002290300220442ff018342c800510d00200042013703000c010b20032004370308420121050240200341106a200410c68180800010d68180800041c000470d0020002004370308420021050b200020053703000b200341106a2480808080000b070020002903000b070020002903000b070020003100000b8d0102017f027e23808080800041206b2202248080808000200129030021030240024002402000290300220442ff0183420e520d00200342ff0183420e510d010b2002411f6a2004200310c281808000220342005520034200536b21010c010b2002200437030820022003370310200241086a200241106a10dd8180800021010b200241206a24808080800020010b02000b11002000200110958180800041ff0171450b0c002000200110b1818080000b0e0020002001200210b2818080000b0e0020002001200210b5818080000b0c002000200110b6818080000b0e0020002001200210b7818080000b1000200020012002200310ba818080000b0e0020002001200210bb818080000b12002000200120022003200410be818080000b0c002000200110c0818080000b1000200020012002200310c1818080000b0e0020002001200210c3818080000b0c002000200110c4818080000b0e0020002001200210c5818080000b0c002000200110c6818080000b0a00200010c7818080000b0e00200020012001108e818080000b2e01027e4201210302402001290300220442ff018342cd00520d0020002004370308420021030b200020033703000b130020004200370300200020012903003703080b130020004200370300200020012903003703080b0e0020002001200210c8818080000b12002000200120022003200410c9818080000b12002000200120022003200410ca818080000b140020002001200220032004200510cb818080000b0e0020002001200210cc818080000b1200200141c887c08000410f10ec818080000b0a0020011080808080000b0c00200120021081808080000b0a0020011082808080000b0a0020011083808080000b0c00200120021084808080000b0a0020011085808080000b0c00200120021086808080000b0c00200120021087808080000b0c00200120021088808080000b0e002001200220031089808080000b0c0020012002108a808080000b0800108b808080000b0800108c808080000b10002001200220032004108d808080000b0800108e808080000b0a0020011094808080000b0e002001200220031096808080000b0c00200120021097808080000b0c00200120021098808080000b0a0020011099808080000b0c0020012002109a808080000b0a002001109b808080000b0800109c808080000b1a002001ad4220864204842002ad4220864204841090808080000b1f00200120022003ad4220864204842004ad4220864204841091808080001a0b2e00024020022004460d00000b2001ad4220864204842003ad4220864204842002ad422086420484108f808080000b3000024020032005460d00000b20012002ad4220864204842004ad4220864204842003ad4220864204841092808080000b1a002001ad4220864204842002ad4220864204841093808080000b1a002001ad4220864204842002ad4220864204841095808080000b070020004208880b960102017e027f2000290300210103400240200150450d00418080c4000f0b024002402001423088a7413f7122024101470d0041df0021020c010b0240024002402002417f6a410b4f0d00412e21030c010b0240200241746a411a4f0d00413521030c010b200241254d0d01413b21030b200220036a21020c010b2000200142068622013703000c010b0b2000200142068637030020020bb50102017f017e23808080800041106b220324808080800002400240200241094b0d00420021040340024020020d002000410036020020002004420886420e843703080c030b200341086a20012d000010d881808000024020032d00084103460d0020002003290308370204200041013602000c030b200141016a21012002417f6a2102200442068620033100098421040c000b0b20002002360208200041003a0004200041013602000b200341106a2480808080000b2801017e420121020240200142ff01834206520d0020002001370308420021020b200020023703000b2901017e420121020240200142ff018342c000520d0020002001370308420021020b200020023703000b26002000200128020041027422012802888ac08000360204200020012802b08ac080003602000b26002000200128020041027422012802d88ac08000360204200020012802808bc080003602000b0900428390808080010b08002000422088a70b070020004201510b820101017f410121020240200141ff017141df00460d0002400240200141506a41ff0171410a490d00200141bf7f6a41ff0171411a490d0102402001419f7f6a41ff0171411a490d00200020013a0001200041013a00000f0b200141456a21020c020b200141526a21020c010b2001414b6a21020b200041033a0000200020023a00010b140020002802002000280204200110e3818080000b7101027f23808080800041206b22022480808080002000280200210320002802042100200241086a41106a200141106a290200370300200241086a41086a200141086a2902003703002002200129020037030820032000200241086a10e8818080002101200241206a24808080800020010b950101037f23808080800041106b22022480808080002002200142088837030820022000370300024002400340200210cf818080002103200241086a10cf8180800021042003418080c400460d0102402004418080c400470d00410121030c030b20032004460d000b200320044b20032004496b21030c010b417f41002004418080c400471b21030b200241106a24808080800020030bf60503017f017e027f23808080800041f0006b2202248080808000200220002903002203a72200410876220436022820022003422088a7220536022c02400240024002402000418014490d0020034280808080a001540d012002410336024c200241f089c0800036024820024202370254200241848080800036026c20024184808080003602642002200241e0006a36025020022002412c6a3602682002200241286a3602602001200241c8006a10da8180800021000c030b200220043602302000418002490d01024020034280808080a001540d00200241186a200241306a10d481808000200220022903183702402002410336024c200241b889c0800036024820024202370254200241848080800036026c20024185808080003602642002200241e0006a36025020022002412c6a3602682002200241c0006a3602602001200241c8006a10da8180800021000c030b20022005360234200241106a200241306a10d48180800020022002290310370238200241086a200241346a10d381808000200220022903083702402002410336024c2002419c89c0800036024820024202370254200241858080800036026c20024185808080003602642002200241e0006a3602502002200241c0006a3602682002200241386a3602602001200241c8006a10da8180800021000c020b20022005360238200241206a200241386a10d381808000200220022903203702402002410336024c200241d889c0800036024820024202370254200241858080800036026c20024184808080003602642002200241e0006a3602502002200241c0006a3602682002200241286a3602602001200241c8006a10da8180800021000c010b2002200241306a10d481808000200220022903003702402002410336024c200241b889c0800036024820024202370254200241848080800036026c20024185808080003602642002200241e0006a36025020022002412c6a3602682002200241c0006a3602602001200241c8006a10da8180800021000b200241f0006a24808080800020000b15002000290300420888200129030010db818080000b0b002000ad4220864204840b3201017e420121020240200142ffffffffffffffff00560d0020002001420886420684370308420021020b200020023703000b1701017f2000a741ff01712201410e46200141ca0046720b990602087f017e0240024020010d00200541016a210620002802082107412d21080c010b412b418080c4002000280208220741808080017122011b2108200141157620056a21060b0240024020074180808004710d00410021020c010b0240024020034110490d002002200310eb8180800021010c010b024020030d00410021010c010b2003410371210902400240200341044f0d00410021014100210a0c010b2003410c71210b410021014100210a034020012002200a6a220c2c000041bf7f4a6a200c41016a2c000041bf7f4a6a200c41026a2c000041bf7f4a6a200c41036a2c000041bf7f4a6a2101200b200a41046a220a470d000b0b2009450d002002200a6a210c03402001200c2c000041bf7f4a6a2101200c41016a210c2009417f6a22090d000b0b200120066a21060b02400240200620002f010c220b4f0d0002400240024020074180808008710d00200b20066b210d410021014100210b0240024002402007411d764103710e0402000100020b200d210b0c010b200d41feff0371410176210b0b200741ffffff00712106200028020421092000280200210a0340200141ffff0371200b41ffff03714f0d024101210c200141016a2101200a2006200928021011808080800000450d000c050b0b20002000290208220ea741808080ff797141b080808002723602084101210c2000280200220a2000280204220920082002200310ea818080000d0341002101200b20066b41ffff037121020340200141ffff037120024f0d024101210c200141016a2101200a4130200928021011808080800000450d000c040b0b4101210c200a200920082002200310ea818080000d02200a20042005200928020c118180808000000d0241002101200d200b6b41ffff037121000340200141ffff03712202200049210c200220004f0d03200141016a2101200a2006200928021011808080800000450d000c030b0b4101210c200a20042005200928020c118180808000000d012000200e37020841000f0b4101210c200028020022012000280204220a20082002200310ea818080000d00200120042005200a28020c11818080800000210c0b200c0b180020002802002001200028020428020c118080808000000b0e0020022000200110e4818080000ba20501077f024002402000280208220341808080c00171450d0002400240024002400240200341808080800171450d0020002f010e22040d01410021020c020b024020024110490d002001200210eb8180800021050c040b024020020d0041002102410021050c040b2002410371210602400240200241044f0d0041002105410021070c010b2002410c712104410021054100210703402005200120076a22082c000041bf7f4a6a200841016a2c000041bf7f4a6a200841026a2c000041bf7f4a6a200841036a2c000041bf7f4a6a21052004200741046a2207470d000b0b2006450d03200120076a21080340200520082c000041bf7f4a6a2105200841016a21082006417f6a22060d000c040b0b200120026a21064100210220012108200421070340200822052006460d020240024020052c00002208417f4c0d00200541016a21080c010b0240200841604f0d00200541026a21080c010b0240200841704f0d00200541036a21080c010b200541046a21080b200820056b20026a21022007417f6a22070d000b0b410021070b200420076b21050b200520002f010c22084f0d00200820056b210941002105410021040240024002402003411d764103710e0402000102020b200921040c010b200941feff037141017621040b200341ffffff00712106200028020421072000280200210002400340200541ffff0371200441ffff03714f0d0141012108200541016a2105200020062007280210118080808000000d030c000b0b41012108200020012002200728020c118180808000000d0141002105200920046b41ffff037121020340200541ffff037122042002492108200420024f0d02200541016a2105200020062007280210118080808000000d020c000b0b200028020020012002200028020428020c1181808080000021080b20080b140020012000280200200028020410e4818080000b3601017f23808080800041106b2202248080808000200241013b010c2002200136020820022000360204200241046a10f780808000000bd90201077f23808080800041106b2202248080808000410a210302400240200028020022042004411f7522007320006b220041e8074f0d00200021050c010b410a21030340200241066a20036a2206417c6a200020004190ce006e22054190ce006c6b220741ffff037141e4006e22084101742f00a88bc080003b00002006417e6a2007200841e4006c6b41ffff03714101742f00a88bc080003b00002003417c6a2103200041fface2044b21062005210020060d000b0b02400240200541094b0d00200521000c010b200241066a2003417e6a22036a2005200541ffff037141e4006e220041e4006c6b41ffff03714101742f00a88bc080003b00000b024002402004450d002000450d010b200241066a2003417f6a22036a20004101742d00a98bc080003a00000b20012004417f73411f7641014100200241066a20036a410a20036b10e1818080002100200241106a24808080800020000bf70401087f23808080800041106b22032480808080002003200136020420032000360200200342a08080800e3702080240024002400240024020022802102204450d00200228021422010d010c020b200228020c2200450d0120022802082201200041037422006a2105200041786a41037641016a21062002280200210003400240200041046a2802002207450d00200328020020002802002007200328020428020c11818080800000450d00410121010c050b024020012802002003200141046a28020011808080800000450d00410121010c050b200041086a2100200141086a22012005460d030c000b0b200141186c21082001417f6a41ffffffff017141016a210620022802082109200228020021004100210703400240200041046a2802002201450d00200328020020002802002001200328020428020c11818080800000450d00410121010c040b410021054100210a024002400240200420076a220141086a2f01000e03000102000b2001410a6a2f0100210a0c010b20092001410c6a2802004103746a2f0104210a0b02400240024020012f01000e03000102000b200141026a2f010021050c010b2009200141046a2802004103746a2f010421050b200320053b010e2003200a3b010c2003200141146a28020036020802402009200141106a2802004103746a22012802002003200128020411808080800000450d00410121010c040b200041086a21002008200741186a2207460d020c000b0b410021060b0240200620022802044f0d002003280200200228020020064103746a22012802002001280204200328020428020c11818080800000450d00410121010c010b410021010b200341106a24808080800020010b4d01017f23808080800041206b22032480808080002003410036021020034101360204200342043702082003200136021c200320003602182003200341186a3602002003200210e681808000000b410002402002418080c400460d0020002002200128021011808080800000450d0041010f0b024020030d0041000f0b200020032004200128020c118180808000000bf00601087f024002402001200041036a417c71220220006b2203490d00200120036b22044104490d00200441037121054100210641002101024020022000460d0041002101410021070240200020026b2208417c4b0d00410021014100210703402001200020076a22022c000041bf7f4a6a200241016a2c000041bf7f4a6a200241026a2c000041bf7f4a6a200241036a2c000041bf7f4a6a2101200741046a22070d000b0b200020076a21020340200120022c000041bf7f4a6a2101200241016a2102200841016a22080d000b0b200020036a210802402005450d0020082004417c716a22022c000041bf7f4a210620054101460d00200620022c000141bf7f4a6a210620054102460d00200620022c000241bf7f4a6a21060b20044102762103200620016a21070340200821042003450d02200341c001200341c001491b22064103712105024002402006410274220941f0077122010d00410021020c010b200420016a2100410021022004210103402001410c6a2802002208417f73410776200841067672418182840871200141086a2802002208417f73410776200841067672418182840871200141046a2802002208417f7341077620084106767241818284087120012802002208417f7341077620084106767241818284087120026a6a6a6a2102200141106a22012000470d000b0b200320066b2103200420096a2108200241087641ff81fc0771200241ff81fc07716a418180046c41107620076a21072005450d000b2004200641fc01714102746a22022802002201417f734107762001410676724181828408712101024020054101460d0020022802042208417f7341077620084106767241818284087120016a210120054102460d0020022802082202417f7341077620024106767241818284087120016a21010b200141087641ff811c71200141ff81fc07716a418180046c41107620076a21070c010b024020010d0041000f0b2001410371210802400240200141044f0d0041002107410021020c010b2001417c712103410021074100210203402007200020026a22012c000041bf7f4a6a200141016a2c000041bf7f4a6a200141026a2c000041bf7f4a6a200141036a2c000041bf7f4a6a21072003200241046a2202470d000b0b2008450d00200020026a21010340200720012c000041bf7f4a6a2107200141016a21012008417f6a22080d000b0b20070b1a00200028020020012002200028020428020c118180808000000b130041f28cc08000412b200010e981808000000b8f0101017f23808080800041c0006b22052480808080002005200136020c2005200036020820052003360214200520023602102005410236021c200541a08dc08000360218200542023702242005418680808000ad422086200541106aad843703382005418780808000ad422086200541086aad843703302005200541306a360220200541186a200410e681808000000baa0301057f02400240200241104f0d00200021030c010b024020002000410020006b41037122046a22054f0d002004417f6a21062000210302402004450d0020042107200021030340200320013a0000200341016a21032007417f6a22070d000b0b20064107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032005470d000b0b024020052005200220046b2202417c716a22034f0d00200141ff017141818284086c2107034020052007360200200541046a22052003490d000b0b200241037121020b02402003200320026a22074f0d002002417f6a2104024020024107712205450d000340200320013a0000200341016a21032005417f6a22050d000b0b20044107490d000340200320013a0000200341076a20013a0000200341066a20013a0000200341056a20013a0000200341046a20013a0000200341036a20013a0000200341026a20013a0000200341016a20013a0000200341086a22032007470d000b0b20000bb907010c7f23808080800041106b210302400240200241104f0d00200021040c010b024020002000410020006b41037122056a22064f0d002005417f6a2107200021042001210802402005450d002005210920002104200121080340200420082d00003a0000200841016a2108200441016a21042009417f6a22090d000b0b20074107490d000340200420082d00003a0000200441016a200841016a2d00003a0000200441026a200841026a2d00003a0000200441036a200841036a2d00003a0000200441046a200841046a2d00003a0000200441056a200841056a2d00003a0000200441066a200841066a2d00003a0000200441076a200841076a2d00003a0000200841086a2108200441086a22042006470d000b0b2006200220056b2209417c7122076a210402400240200120056a220841037122010d00200620044f0d0120082101034020062001280200360200200141046a2101200641046a22062004490d000c020b0b410021022003410036020c2003410c6a20017221050240410420016b220a410171450d00200520082d00003a0000410121020b0240200a410271450d00200520026a200820026a2f01003b01000b200820016b21022001410374210b200328020c210502400240200641046a2004490d002006210c0c010b4100200b6b411871210d034020062005200b76200241046a22022802002205200d7472360200200641086a210a200641046a220c2106200a2004490d000b0b41002106200341003a0008200341003a00060240024020014101470d00200341086a210d410021014100210a4100210e0c010b200241056a2d0000210a2003200241046a2d000022013a0008200a410874210a4102210e200341066a210d0b02402008410171450d00200d200241046a200e6a2d00003a000020032d0006411074210620032d000821010b200c200a200672200141ff0171724100200b6b411871742005200b76723602000b20094103712102200820076a21010b02402004200420026a22064f0d002002417f6a2109024020024107712208450d000340200420012d00003a0000200141016a2101200441016a21042008417f6a22080d000b0b20094107490d000340200420012d00003a0000200441016a200141016a2d00003a0000200441026a200141026a2d00003a0000200441036a200141036a2d00003a0000200441046a200141046a2d00003a0000200441056a200141056a2d00003a0000200441066a200141066a2d00003a0000200441076a200141076a2d00003a0000200141086a2101200441086a22042006470d000b0b20000b0e0020002001200210f0818080000b0bba0d0100418080c0000bb00d2f55736572732f696e686f757365636f6465732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f656e762e7273002f55736572732f696e686f757365636f6465732f2e636172676f2f72656769737472792f7372632f696e6465782e6372617465732e696f2d313934396366386336623562353537662f736f726f62616e2d73646b2d32362e312e302f7372632f6c65646765722e7273002f72757374632f663832393765333531613430633134333961343637626262623638373930383830343766353062332f6c6962726172792f636f72652f7372632f6f70732f66756e6374696f6e2e727300636f6e7472616374732f70726f6f665f72656769737472792f7372632f6c69622e72730000000000100066000000aa0100000e0000006578706972796973737565727265766f6b65647468726573686f6c6476657269666965645f61740058011000060000005e0110000600000064011000070000006b01100009000000740110000b00000069735f76616c69645f6973737565726765745f6973737565725f7075626b65790000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000e2a6b02000000000eaa4ca3b30b00000e783aeb2b00000061636372656469746174696f6e00000022011000230000003a0100002700000022011000230000003b0100002b0000007665726966795f70726f6f6641646d696e00000064021000050000005665726966696572740210000800000049737375657252656769737472790000840210000e00000050726f6f660000009c0210000500000063726564656e7469616c5f747970656973737565725f696470726f6f667075626c69635f696e707574730000ac0210000f0000005801100006000000bb02100009000000c402100005000000c90210000d000000d100100050000000fa000000050000000000000000000000010000000100000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565436f6e76657273696f6e4572726f7200000000100066000000aa0100000e00000067001000690000005b0000000e00000063616c6c65642060526573756c743a3a756e77726170282960206f6e20616e2060457272602076616c7565000000000000000000010000000200000000000000080000000800000003000000436f6e76657273696f6e4572726f724172697468446f6d61696e496e646578426f756e6473496e76616c6964496e7075744d697373696e6756616c75654578697374696e6756616c756545786365656465644c696d6974496e76616c6964416374696f6e496e7465726e616c4572726f72556e657870656374656454797065556e657870656374656453697a65436f6e74726163745761736d566d436f6e7465787453746f726167654f626a65637443727970746f4576656e747342756467657456616c756541757468294572726f72282c20009304100006000000990410000200000092041000010000002c2023009304100006000000b40410000300000092041000010000004572726f72282300d00410000700000099041000020000009204100001000000d004100007000000b40410000300000092041000010000000b0000000b0000000c0000000c0000000d0000000d0000000d0000000d0000000e0000000e000000d7031000e2031000ed031000f903100005041000120410001f0410002c041000390410004704100008000000060000000700000007000000060000000600000006000000060000000500000004000000550410005d041000630410006a04100071041000770410007d04100083041000890410008e04100030303031303230333034303530363037303830393130313131323133313431353136313731383139323032313232323332343235323632373238323933303331333233333334333533363337333833393430343134323433343434353436343734383439353035313532353335343535353635373538353936303631363236333634363536363637363836393730373137323733373437353736373737383739383038313832383338343835383638373838383939303931393239333934393539363937393839393a2063616c6c656420604f7074696f6e3a3a756e77726170282960206f6e206120604e6f6e65602076616c756500000001000000000000007006100002000000008b300e636f6e7472616374737065637630000000040000000000000000000000054572726f720000000000000a000000000000000e4e6f74496e697469616c697a65640000000000010000000000000012566572696669636174696f6e4661696c6564000000000002000000000000000d4e6f74417574686f72697a65640000000000000300000000000000104973737565724e6f74547275737465640000000400000055546865207075626c6963206b6579207468652070726f6f6620776173206d61646520616761696e737420646f6573206e6f74206d617463682074686520726567697374657265640a6973737565722773206b65792e000000000000114973737565724b65794d69736d6174636800000000000005000000000000000d50726f6f664e6f74466f756e64000000000000060000003a54686520626174636820636f6e7461696e73206d6f7265207468616e20604d41585f42415443485f53495a4560207375626d697373696f6e732e00000000000d4261746368546f6f4c61726765000000000000070000002f546865206261746368206d75737420636f6e7461696e206174206c65617374206f6e65207375626d697373696f6e2e000000000a4261746368456d7074790000000000080000008c54776f206f72206d6f7265207375626d697373696f6e7320696e20746865206261746368207368617265207468652073616d65206063726564656e7469616c5f74797065603b0a6f6e6c7920746865206c61737420777269746520776f756c6420737572766976652c20736f207468652062617463682069732072656a6563746564206f757472696768742e000000174475706c696361746543726564656e7469616c547970650000000009000000856062756d705f636c61696d60207761732063616c6c656420666f72206120636c61696d20746861742065786973747320627574206973206e6f206c6f6e6765720a76616c696420287265766f6b6564206f7220657870697265642920e28094207468657265206973206e6f7468696e6720776f727468206b656570696e6720616c6976652e0000000000000d436c61696d4e6f7456616c69640000000000000a00000002000000000000000000000007446174614b6579000000000400000000000000000000000541646d696e000000000000000000000000000008566572696669657200000000000000000000000e49737375657252656769737472790000000000010000003843616368656420766572696669636174696f6e2c206b657965642062792028686f6c6465722c2063726564656e7469616c5f74797065292e0000000550726f6f660000000000000200000013000000110000000100000000000000000000000b50726f6f665265636f726400000000050000000000000006657870697279000000000006000003a2546865206973737565722074686174207369676e6564207468652063726564656e7469616c20746869732070726f6f662077617320766572696669656420616761696e73742e0a4c65747320612070726f746f636f6c2072657374726963742077686963682069737375657273206974207472757374732070657220636c61696d2074797065207669610a60747275737465645f6973737565727360206f6e206069735f766572696669656460202f2060636865636b5f636c61696d602e0a0a604f7074696f6e6020736f2060697373756572602063616e206265206578706c696369746c7920616273656e742077697468696e20616e0a616c72656164792d63757272656e742d7368617065207265636f72642028652e672e206f6e65207772697474656e206279206120667574757265206d6967726174696f6e0a746861742063616e2774207265636f76657220746865206f726967696e616c206973737565722920e2809420606973737565725f69735f7472757374656460207468656e0a6661696c7320636c6f73656420616e642072656a6563747320697420756e64657220616e206163746976652060747275737465645f69737375657273602066696c7465722c0a73696e63652074686572652773206e6f2069737375657220746f20636865636b20616761696e73742028612066696c7465726c6573732063616c6c65722069730a756e61666665637465642065697468657220776179292e205468697320646f6573204e4f542c20627920697473656c662c206d616b652061207265636f72640a7772697474656e206265666f72652074686973206669656c642065786973746564207265616461626c653a20536f726f62616e277320737472756374206465636f64696e670a7265717569726573207468652073746f726564206d6170277320656e74727920636f756e7420746f2065786163746c79206d61746368207468652063757272656e740a7374727563742773206669656c6420636f756e742c20736f2074686f7365207265636f726473207374696c6c206661696c20746f20646573657269616c697a6520287365650a606c65676163795f7265636f72645f6d697373696e675f6973737565725f6b65795f6661696c735f746f5f726561646020696e20746573742e7273292e2041207265616c0a6d6967726174696f6e206973207265717569726564206265666f72652072656465706c6f79696e67206f766572206578697374696e672073746f7265642070726f6f66732e0000000000066973737565720000000003e80000001300000049536574206279207468652072656769737465726564206973737565722076696120607265766f6b65602e204578706972792064617461206973206b65707420666f722061756469742e000000000000077265766f6b65640000000001000000be466f7220706172616d65746572697365642063726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292c20746865207468726573686f6c640a76616c756520746861742077617320636f6d6d697474656420746f20696e207468652070726f6f662773207075626c696320696e707574732e204e6f6e6520666f722074797065730a77697468206e6f206e756d65726963207468726573686f6c6420286b79632c206a7572697364696374696f6e292e0000000000097468726573686f6c64000000000003e800000006000000000000000b76657269666965645f6174000000000600000000000000000000000561646d696e0000000000000000000001000000130000000000000082496e76616c6964617465206120686f6c6465722773206361636865642070726f6f662e204f6e6c792074686520726567697374657265642069737375657220666f720a6063726564656e7469616c5f7479706560206d61792063616c6c20746869732028652e672e207768656e204b594320737461747573206368616e676573292e0000000000067265766f6b6500000000000300000000000000066973737565720000000000130000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f74797065000000001100000000000000000000000000000007757067726164650000000001000000000000000d6e65775f7761736d5f68617368000000000003ee00000020000000000000000100000099412073696e676c652070726f6f66207375626d697373696f6e20696e7369646520612062617463682e204d6972726f72732074686520696e646976696475616c20706172616d65746572730a6f6620607375626d69745f70726f6f6660206275742067726f7570656420696e746f20612073747275637420736f20746865792063616e2062652070617373656420617320612060566563602e000000000000000000000f50726f6f665375626d697373696f6e0000000005000000000000000f63726564656e7469616c5f747970650000000011000000000000000665787069727900000000000600000000000000096973737565725f696400000000000013000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e70757473000000000003ea000000040000000000000000000000097365745f61646d696e0000000000000100000000000000096e65775f61646d696e00000000000013000000000000000000000319546f70207570207468652054544c206f662061207374696c6c2d76616c696420636c61696d20736f20697473206050726f6f665265636f72646020646f65736e2774206765740a6172636869766564207768696c65207468652063726564656e7469616c206974206361636865732072656d61696e732076616c69642e205065726d697373696f6e6c6573730a62792064657369676e20e28094206e6f2060726571756972655f617574686020e280942073696e636520657874656e64696e672073746f726167652072656e7420636f7374730a6f6e6c79207468652063616c6c65722773207472616e73616374696f6e2066656520616e642063616e6e6f74206166666563742074686520686f6c64657227730a636c61696d20696e20616e79206f74686572207761793b20616e796f6e65202874686520686f6c6465722c20612072656c79696e672070726f746f636f6c2c206f720a756e72656c617465642072656e742d6b6565706572206175746f6d6174696f6e292063616e2063616c6c207468697320746f206b656570206120636c61696d20616c6976652e0a53656520746865206d6f64756c652d6c6576656c202252656e7420616e6420617263686976616c2220646f6320666f72207768792074686973206973206e65656465640a6576656e2074686f75676820607375626d69745f70726f6f666020616c726561647920657874656e6473207468652054544c206f6e2077726974652e0a0a50616e6963732077697468206050726f6f664e6f74466f756e64602069662074686572652773206e6f20636c61696d20666f72206028686f6c6465722c0a63726564656e7469616c5f7479706529602c206f722060436c61696d4e6f7456616c696460206966206f6e652065786973747320627574206973207265766f6b6564206f720a706173742069747320606578706972796020e280942062756d70696e672072656e7420666f72206120636c61696d206e6f7468696e672073686f756c642062650a7472757374696e6720616e796d6f726520776f756c64206a757374207761737465207468652063616c6c65722773206665652e0000000000000a62756d705f636c61696d0000000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000001bb4c696b65206069735f7665726966696564602062757420616c736f20656e666f726365732061206d696e696d756d207468726573686f6c6420666f7220706172616d65746572697365640a63726564656e7469616c20747970657320286167652c20696e636f6d652c2066756e6473292e20412070726f6f66207375626d697474656420776974682061207468726573686f6c640a6f66203230305f3030302073617469736669657320606d696e5f7468726573686f6c64203d2035305f3030306020626563617573652069742070726f766573207374726963746c790a6d6f72652e20466f7220606b79636020616e6420606a7572697364696374696f6e602c207061737320606d696e5f7468726573686f6c64203d204e6f6e65602e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465640ae2809420736565206069735f7665726966696564602e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565722028756e6368616e6765640a6265686176696f7572292e000000000b636865636b5f636c61696d00000000040000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000d6d696e5f7468726573686f6c64000000000003e800000006000000000000000f747275737465645f6973737565727300000003e8000003ea00000013000000010000000100000000000001e652657475726e7320602869735f63757272656e746c795f76616c69642c2076657269666965645f61742c2065787069727929602e206069735f63757272656e746c795f76616c6964600a6163636f756e747320666f722065787069727920616761696e7374207468652063757272656e74206c65646765722074696d652e0a0a60747275737465645f69737375657273602c2069662060536f6d65602c207265737472696374732077686963682069737375657227732070726f6f662069732061636365707465643a0a7468652073746f7265642070726f6f66277320697373756572206d75737420626520696e20746865206c6973742c206f7220746869732072657475726e730a602866616c73652c2076657269666965645f61742c206578706972792960206576656e206966207468652070726f6f66206973206f74686572776973652076616c696420e280940a74696d657374616d707320617265207374696c6c2072657475726e656420666f722061756469742c206d61746368696e6720746865206578697374696e670a7265766f6b65642f65787069726564206265686176696f75722e20604e6f6e6560206163636570747320616e792072656769737465726564206973737565720a28756e6368616e676564206265686176696f7572292e00000000000b69735f766572696669656400000000030000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000f747275737465645f6973737565727300000003e8000003ea0000001300000001000003ed0000000300000001000000060000000600000000000000425265766f6b652061206361636865642070726f6f662e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207265766f636174696f6e2e00000000000c7265766f6b655f70726f6f66000000020000000000000006686f6c646572000000000013000000000000000f63726564656e7469616c5f7479706500000000110000000000000000000000cd56657269667920612070726f6f6620616e642c2069662076616c69642c20636163686520697420666f722060686f6c6465726020756e74696c2060657870697279600a286c65646765722074696d657374616d702c207365636f6e6473292e2054686520686f6c64657220617574686f72697a6573207468656972206f776e207375626d697373696f6e2e0a606973737565725f696460206d757374206265207265676973746572656420616e64207472757374656420666f72206063726564656e7469616c5f74797065602e0000000000000c7375626d69745f70726f6f66000000060000000000000006686f6c64657200000000001300000000000000096973737565725f696400000000000013000000000000000f63726564656e7469616c5f747970650000000011000000000000000570726f6f660000000000000e000000000000000d7075626c69635f696e707574730000000000000e000000000000000665787069727900000000000600000000000000000000004e6061646d696e602c206076657269666965726020616e6420606973737565725f7265676973747279602061726520746865206465706c6f79656420636f6e7472616374206164647265737365732e00000000000d5f5f636f6e7374727563746f7200000000000003000000000000000561646d696e000000000000130000000000000008766572696669657200000013000000000000000f6973737565725f726567697374727900000000130000000000000000000000000000001076657269666965725f6164647265737300000000000000010000001300000000000000764f6e65206576656e7420697320656d697474656420706572207375636365737366756c6c792076657269666965642063726564656e7469616c2c206d61746368696e670a746865206576656e7420656d697373696f6e20736861706520696e207468652073696e676c652d70726f6f6620706174682e0000000000137375626d69745f70726f6f66735f626174636800000000020000000000000006686f6c646572000000000013000000000000000b7375626d697373696f6e7300000003ea000007d00000000f50726f6f665375626d697373696f6e00000000000000000000000000000000176973737565725f72656769737472795f6164647265737300000000000000000100000013001e11636f6e7472616374656e766d6574617630000000000000001a00000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e39312e3000000000000000000008727373646b7665720000002f32362e312e30233137356161343133303666333833303537613863646663383462363864393331363634666333346500" } }, "ext": "v0" diff --git a/frontend/.env.example b/frontend/.env.example index cb45c528..bc5d2fcf 100644 --- a/frontend/.env.example +++ b/frontend/.env.example @@ -25,9 +25,14 @@ NEXT_PUBLIC_GATED_POOL_ID= # Persona KYC (optional — unset = demo mode, identity verification skipped) # Create templates at https://app.withpersona.com → Inquiries → Templates # Government ID flow — issues kyc, age, and jurisdiction credentials. -# If PERSONA_API_KEY is set, PERSONA_KYC_TEMPLATE_ID must also be set. +# If PERSONA_API_KEY is set, PERSONA_KYC_TEMPLATE_ID and PERSONA_WEBHOOK_SECRET +# must also be set — Persona delivers the verification result asynchronously +# to POST /api/persona/webhook, signed with this secret. Configure the +# webhook URL and copy its signing secret from +# https://app.withpersona.com → Webhooks. PERSONA_API_KEY= PERSONA_KYC_TEMPLATE_ID= +PERSONA_WEBHOOK_SECRET= # Plaid balance attestation (optional — unset = mock mode, balance always passes) # Get credentials at https://dashboard.plaid.com — use sandbox for testing. diff --git a/frontend/app/api/issue/route.ts b/frontend/app/api/issue/route.ts index f29fc91d..4daf8e7b 100644 --- a/frontend/app/api/issue/route.ts +++ b/frontend/app/api/issue/route.ts @@ -4,6 +4,7 @@ import { sha256 } from "@noble/hashes/sha2.js"; import { IssuerClient, CREDENTIAL_TYPES, type CredentialType, type ClaimParams } from "@stellarcred/issuer"; import { fetchIssuerPubkey } from "@/lib/issuer-registry"; import { logger, stripSensitiveFields } from "../../../lib/logger"; +import { createPersonaInquiry, type PersonaReference } from "@/lib/persona"; // Server-side only — never shipped to the browser. // Set ISSUER_PRIVATE_KEY in .env.local to the 64-char hex secp256k1 private @@ -30,108 +31,16 @@ function localIssuerPubkeyBytes(): Buffer { } // --------------------------------------------------------------------------- -// Persona identity verification relay +// Persona identity verification // --------------------------------------------------------------------------- -// Two templates are supported: -// PERSONA_KYC_TEMPLATE_ID — government ID flow; issues kyc + age + jurisdiction -// PERSONA_AGE_TEMPLATE_ID — selfie age estimation; issues age credential only -// -// If PERSONA_API_KEY is not set → demo fallback (always passes). -// If PERSONA_API_KEY is set but the relevant template ID is missing → loud error. +// If PERSONA_API_KEY is not set → demo fallback (always passes, synchronous). +// If PERSONA_API_KEY is set → the holder is redirected to Persona's hosted +// flow; completion is delivered asynchronously via the webhook at +// app/api/persona/webhook, which signs and caches the credential for the +// holder's browser to pick up by polling app/api/persona/result. See +// lib/persona.ts for the shared Persona API / webhook helpers. // --------------------------------------------------------------------------- -const PERSONA_BASE = "https://withpersona.com/api/v1"; -const PERSONA_VERSION = "2023-01-05"; - -function personaHeaders() { - return { - Authorization: `Bearer ${process.env.PERSONA_API_KEY}`, - "Content-Type": "application/json", - "Persona-Version": PERSONA_VERSION, - }; -} - -async function createPersonaInquiry( - templateId: string, - redirectUri: string, -): Promise<{ url: string; id: string }> { - const res = await fetch(`${PERSONA_BASE}/inquiries`, { - method: "POST", - headers: personaHeaders(), - body: JSON.stringify({ - data: { - attributes: { - "inquiry-template-id": templateId, - "redirect-uri": redirectUri, - }, - }, - }), - }); - const json = await res.json(); - if (!res.ok) throw new Error(`Persona: failed to create inquiry — ${JSON.stringify(json)}`); - const id: string = json.data.id; - // Persona hosted flow URL - const url = `https://withpersona.com/verify?inquiry-id=${id}`; - return { url, id }; -} - -async function retrievePersonaInquiry(inquiryId: string): Promise<{ - status: string; - fields: Record; -}> { - const res = await fetch(`${PERSONA_BASE}/inquiries/${inquiryId}`, { - headers: personaHeaders(), - }); - const json = await res.json(); - if (!res.ok) throw new Error(`Persona: failed to retrieve inquiry — ${JSON.stringify(json)}`); - return { - status: json.data.attributes.status as string, - fields: (json.data.attributes.fields ?? {}) as Record, - }; -} - -// Minimal ISO 3166-1 alpha-2 → numeric map for countries we care about. -// Persona returns alpha-2 codes; our jurisdiction circuit uses numeric. -const ALPHA2_TO_NUMERIC: Record = { - NG: "566", US: "840", DE: "276", IN: "356", IR: "364", - GB: "826", FR: "250", CA: "124", AU: "036", BR: "076", - CN: "156", JP: "392", KR: "410", ZA: "710", GH: "288", - KE: "404", EG: "818", MX: "484", AR: "032", SG: "702", -}; - -function alpha2ToNumeric(code: string): string { - return ALPHA2_TO_NUMERIC[code.toUpperCase()] ?? "0"; -} - -// Called after user returns from Persona KYC (gov ID) inquiry. -// Returns DOB and country so we can issue age + jurisdiction credentials. -async function resolvePersonaKYC(inquiryId: string): Promise<{ - ok: boolean; - dob?: string; - countryNumeric?: string; - error?: string; -}> { - const { status, fields } = await retrievePersonaInquiry(inquiryId); - if (status !== "approved") { - return { ok: false, error: `Persona KYC inquiry status: ${status}` }; - } - const dob = - String(fields["birthdate"]?.value ?? fields["birth-date"]?.value ?? "").trim() || undefined; - const alpha2 = - String( - fields["selected-country-code"]?.value ?? - fields["country-code"]?.value ?? - fields["address-country-code"]?.value ?? - "", - ).trim() || undefined; - return { - ok: true, - dob, - countryNumeric: alpha2 ? alpha2ToNumeric(alpha2) : undefined, - }; -} - - // Plaid balance attestation relay. Returns the verified balance from the user's // bank — this becomes the credential value, not what the user typed. // Mock mode: no PLAID_ACCESS_TOKEN set → returns a mock balance of $50,000. @@ -220,8 +129,6 @@ export async function POST(req: NextRequest) { attributes?: Record; attribute?: string; claimParams?: ClaimParams; - // Set by the frontend after the user returns from Persona's hosted flow. - persona_inquiry_id?: string; returnUrl?: string; }; @@ -237,7 +144,6 @@ export async function POST(req: NextRequest) { issuerName = "StellarCred Authority", expiry = "90 days", claimParams, - persona_inquiry_id: personaInquiryId, returnUrl, } = body; issuerId = reqIssuerId; @@ -310,24 +216,22 @@ export async function POST(req: NextRequest) { // --------------------------------------------------------------------------- // Identity verification via Persona // --------------------------------------------------------------------------- - // needsKyc = any of kyc / jurisdiction, OR age when KYC template is available - // needsAgeOnly = age-only request when only the selfie age template is available - // - // Decision tree: - // PERSONA_API_KEY not set → demo fallback (always passes) - // PERSONA_API_KEY set, KYC types requested: - // PERSONA_KYC_TEMPLATE_ID not set → 500 (misconfiguration) - // no inquiry_id yet → 202 + Persona URL (redirect) - // inquiry_id present → verify + extract DOB/country - // PERSONA_API_KEY set, age-only requested: - // PERSONA_AGE_TEMPLATE_ID not set → 500 (misconfiguration) - // no inquiry_id yet → 202 + Persona URL (redirect) - // inquiry_id present → verify + extract min_age - // --------------------------------------------------------------------------- // Gate the kyc credential on Persona identity verification (gov ID flow). // Age and jurisdiction are standalone — user-provided values, no external verification. - // If PERSONA_API_KEY is not set → demo fallback, verification skipped. - // If PERSONA_API_KEY is set but PERSONA_KYC_TEMPLATE_ID is missing → 500. + // + // PERSONA_API_KEY not set → demo fallback, verification skipped, issue inline. + // PERSONA_API_KEY set: + // PERSONA_KYC_TEMPLATE_ID not set → 500 (misconfiguration). + // PERSONA_WEBHOOK_SECRET not set → 500 (misconfiguration — completion has + // nowhere to be delivered). + // otherwise → create a Persona inquiry and redirect. + // Persona verifies asynchronously and + // POSTs the result to + // app/api/persona/webhook, which signs + // and caches the credential for the + // holder to pick up via + // app/api/persona/result. + // --------------------------------------------------------------------------- const needsIdentity = credentialTypes.includes("kyc"); if (needsIdentity) { if (!process.env.PERSONA_API_KEY) { @@ -347,46 +251,41 @@ export async function POST(req: NextRequest) { { status: 500 }, )); } - const baseUrl = process.env.NEXT_PUBLIC_STELLARCRED_BASE_URL ?? req.nextUrl.origin; - if (!personaInquiryId) { - // First request — create a Persona inquiry and ask the frontend to redirect. - logger.info(stripSensitiveFields({ - event: "provider_call", - credentialType: "kyc", - issuerId, - walletAddress, - outcome: "inquiry_created", - requestId, - })); - const redirectUrl = returnUrl - ? `${baseUrl}/verify?return_url=${encodeURIComponent(returnUrl)}` - : `${baseUrl}/verify`; - const { url, id } = await createPersonaInquiry(templateId, redirectUrl); - return sendResponse(NextResponse.json({ needsPersona: true, personaUrl: url, inquiryId: id }, { status: 202 })); - } - // Second request — user returned from Persona, verify the completed inquiry. - const kyc = await resolvePersonaKYC(personaInquiryId); - if (!kyc.ok) { - logger.info(stripSensitiveFields({ - event: "provider_call", - credentialType: "kyc", - issuerId, - walletAddress, - outcome: "verification_failed", - requestId, - })); - return sendResponse(NextResponse.json({ error: kyc.error ?? "Identity verification failed" }, { status: 403 })); + if (!process.env.PERSONA_WEBHOOK_SECRET) { + return sendResponse(NextResponse.json( + { + error: + "PERSONA_WEBHOOK_SECRET is required when PERSONA_API_KEY is set — Persona delivers the KYC result via webhook.", + }, + { status: 500 }, + )); } + const baseUrl = process.env.NEXT_PUBLIC_STELLARCRED_BASE_URL ?? req.nextUrl.origin; logger.info(stripSensitiveFields({ event: "provider_call", credentialType: "kyc", issuerId, walletAddress, - outcome: "verified", + outcome: "inquiry_created", requestId, })); - if (kyc.dob) attributes.date_of_birth = kyc.dob; - if (kyc.countryNumeric) attributes.country_code = kyc.countryNumeric; + const redirectUrl = returnUrl + ? `${baseUrl}/verify?return_url=${encodeURIComponent(returnUrl)}` + : `${baseUrl}/verify`; + // Everything the webhook needs to finish issuance once Persona approves + // — carried via Persona's reference-id and echoed back on the webhook + // payload, since that callback arrives on a separate request entirely. + const reference: PersonaReference = { + holder, + issuerId, + issuerName, + expiry, + credentialTypes: Array.from(new Set(credentialTypes)), + attributes, + claimParams, + }; + const { url, id } = await createPersonaInquiry(templateId, redirectUrl, reference); + return sendResponse(NextResponse.json({ needsPersona: true, personaUrl: url, inquiryId: id }, { status: 202 })); } } diff --git a/frontend/app/api/persona/result/route.ts b/frontend/app/api/persona/result/route.ts new file mode 100644 index 00000000..ae7391e1 --- /dev/null +++ b/frontend/app/api/persona/result/route.ts @@ -0,0 +1,21 @@ +import { NextRequest, NextResponse } from "next/server"; +import { getPersonaResult } from "@/lib/persona-cache"; + +export const dynamic = "force-dynamic"; + +// Polled by /verify after the holder returns from Persona's hosted flow. +// The actual issuance happens out-of-band in app/api/persona/webhook once +// Persona's async decisioning completes — this just checks whether that has +// landed in the result cache yet. +export async function GET(req: NextRequest) { + const inquiryId = req.nextUrl.searchParams.get("inquiry_id"); + if (!inquiryId) { + return NextResponse.json({ error: "inquiry_id is required" }, { status: 400 }); + } + + const credentials = getPersonaResult(inquiryId); + if (!credentials) { + return NextResponse.json({ ready: false }, { status: 202 }); + } + return NextResponse.json({ ready: true, credentials }); +} diff --git a/frontend/app/api/persona/webhook/route.ts b/frontend/app/api/persona/webhook/route.ts new file mode 100644 index 00000000..706194fb --- /dev/null +++ b/frontend/app/api/persona/webhook/route.ts @@ -0,0 +1,147 @@ +import { NextRequest, NextResponse } from "next/server"; +import { randomBytes } from "crypto"; +import { sha256 } from "@noble/hashes/sha2.js"; +import { IssuerClient, type CredentialType } from "@stellarcred/issuer"; +import { fetchIssuerPubkey } from "@/lib/issuer-registry"; +import { logger, stripSensitiveFields } from "@/lib/logger"; +import { storePersonaResult } from "@/lib/persona-cache"; +import { + verifyPersonaWebhookSignature, + parsePersonaWebhookEvent, + extractKycAttributes, +} from "@/lib/persona"; + +export const dynamic = "force-dynamic"; + +// Same fallback key as app/api/issue/route.ts — must sign with the same key +// so credentials issued here verify against the same registered issuer +// pubkey as the synchronous (mock) path. +const DEMO_SK_HEX = + process.env.ISSUER_PRIVATE_KEY || + Buffer.from(sha256(new TextEncoder().encode("stellarcred-demo-issuer"))).toString("hex"); + +const issuer = new IssuerClient({ privateKey: DEMO_SK_HEX }); +const SIM_ACCOUNT = + process.env.NEXT_PUBLIC_ISSUER_ADDRESS ?? + "GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWHF"; + +function localIssuerPubkeyBytes(): Buffer { + const { x, y } = issuer.publicKey(); + return Buffer.from([...x, ...y]); +} + +const COMPLETION_EVENTS = new Set(["inquiry.completed", "inquiry.approved"]); + +// Credential types Persona's KYC template can actually supply attributes +// for. "funds" is gated on a live Plaid balance, not anything in this +// payload — skip it rather than issue it unverified if it's ever requested +// alongside kyc. +const PERSONA_ISSUABLE_TYPES = new Set(["kyc", "age", "jurisdiction", "income", "accreditation"]); + +export async function POST(req: NextRequest) { + const requestId = randomBytes(16).toString("hex"); + // Signature verification needs the exact bytes Persona signed — read the + // raw body text, never req.json() (which would require re-serializing). + const rawBody = await req.text(); + + const secret = process.env.PERSONA_WEBHOOK_SECRET; + if (!secret) { + logger.error(stripSensitiveFields({ event: "webhook_misconfigured", requestId })); + return NextResponse.json({ error: "Webhook not configured" }, { status: 501 }); + } + + const signatureHeader = req.headers.get("persona-signature"); + if (!verifyPersonaWebhookSignature(rawBody, signatureHeader, secret)) { + logger.warn(stripSensitiveFields({ event: "webhook_signature_invalid", requestId })); + return NextResponse.json({ error: "Invalid signature" }, { status: 401 }); + } + + const parsed = parsePersonaWebhookEvent(rawBody); + if (!parsed) { + return NextResponse.json({ error: "Malformed payload" }, { status: 400 }); + } + const { eventName, inquiryId, status, fields, reference } = parsed; + + logger.info(stripSensitiveFields({ + event: "webhook_received", + inquiryId, + outcome: eventName, + requestId, + })); + + // Ack anything we don't act on (other event types, non-approved statuses, + // or an inquiry we didn't create the reference for) so Persona doesn't + // keep retrying delivery. + if (!COMPLETION_EVENTS.has(eventName) || status !== "approved" || !reference) { + return NextResponse.json({ received: true }); + } + + if (process.env.NEXT_PUBLIC_ISSUER_REGISTRY_ID) { + const registered = await fetchIssuerPubkey(reference.issuerId, SIM_ACCOUNT); + const localKey = localIssuerPubkeyBytes(); + if (!registered || !Buffer.from(registered).equals(localKey)) { + logger.error(stripSensitiveFields({ + event: "webhook_issuer_mismatch", + inquiryId, + issuerId: reference.issuerId, + requestId, + })); + return NextResponse.json({ received: true }); + } + } + + // Only the derived numeric attributes cross this boundary — raw Persona + // fields (name, government ID number, address, selfie, ...) are discarded + // the instant extractKycAttributes returns and are never logged or stored. + const { dob, countryNumeric } = extractKycAttributes(fields); + const attributes: Record = { ...reference.attributes }; + if (dob) attributes.date_of_birth = dob; + if (countryNumeric) attributes.country_code = countryNumeric; + + const issuableTypes = Array.from(new Set(reference.credentialTypes)).filter((t) => + PERSONA_ISSUABLE_TYPES.has(t), + ); + + try { + const credentials = []; + for (const type of issuableTypes) { + logger.info(stripSensitiveFields({ + event: "signing_started", + credentialType: type, + issuerId: reference.issuerId, + walletAddress: reference.holder, + requestId, + })); + const credential = await issuer.issue({ + type: type as CredentialType, + holder: reference.holder, + issuerId: reference.issuerId, + issuerName: reference.issuerName, + expiry: reference.expiry, + attribute: attributes, + claimParams: reference.claimParams, + }); + credentials.push(credential); + } + storePersonaResult(inquiryId, credentials); + logger.info(stripSensitiveFields({ + event: "webhook_issued", + inquiryId, + issuerId: reference.issuerId, + walletAddress: reference.holder, + outcome: "success", + requestId, + })); + } catch (e) { + logger.error(stripSensitiveFields({ + event: "webhook_issue_failed", + inquiryId, + issuerId: reference.issuerId, + walletAddress: reference.holder, + error: (e as Error).message, + requestId, + })); + } + + return NextResponse.json({ received: true }); +} diff --git a/frontend/app/verify/page.tsx b/frontend/app/verify/page.tsx index 25130a26..8e521a00 100644 --- a/frontend/app/verify/page.tsx +++ b/frontend/app/verify/page.tsx @@ -127,45 +127,72 @@ function VerifyInner() { .catch(() => {}); }, [fundsSelected]); - // When Persona redirects back to /verify?inquiry-id=XXX, resume the pending - // issue request that was stored in sessionStorage before the redirect. + // When Persona redirects back to /verify?inquiry-id=XXX, the actual + // decisioning happens asynchronously — Persona POSTs the result to our + // webhook (app/api/persona/webhook) once it completes, which signs the + // credential and caches it keyed by inquiry id. Poll for it here rather + // than assuming it's ready the instant the browser comes back. useEffect(() => { if (!personaInquiryId || !address) return; - const raw = sessionStorage.getItem("sc_persona_pending"); - if (!raw) return; - sessionStorage.removeItem("sc_persona_pending"); - let pending: Record; - try { pending = JSON.parse(raw); } catch { return; } setBusy(true); setError(""); - fetch("/api/issue", { - method: "POST", - headers: { "Content-Type": "application/json" }, - body: JSON.stringify({ ...pending, persona_inquiry_id: personaInquiryId }), - }) - .then(async (res) => { - if (!res.ok) { - const d = await res.json().catch(() => null) as { error?: string } | null; - throw new Error(d?.error ?? "Issuing failed after identity verification"); - } - return res.json() as Promise<{ credentials: import("@/lib/credential").Credential[] }>; - }) - .then(({ credentials }) => { - credentials.forEach((c) => saveCredential(c)); - justIssuedClaims.current = credentials.map((c) => c.type).filter((t) => VALID_CLAIMS.includes(t as CredentialType)); - setDone(true); - toast.success( - credentials.length > 1 ? "Credentials issued successfully" : "Credential issued successfully", + let cancelled = false; + let attempts = 0; + const MAX_ATTEMPTS = 40; // ~2 minutes at 3s intervals + const POLL_MS = 3000; + + async function poll() { + attempts += 1; + try { + const res = await fetch( + `/api/persona/result?inquiry_id=${encodeURIComponent(personaInquiryId!)}`, ); - setTimeout(redirectAfterIssue, 1500); - }) - .catch((e) => { - const message = (e as Error).message; - setError(message); - toast.error(`Credential issuance failed: ${message}`); - }) - .finally(() => setBusy(false)); + const data = (await res.json()) as { + ready: boolean; + credentials?: Credential[]; + error?: string; + }; + if (!res.ok && res.status !== 202) { + throw new Error(data.error ?? "Verification lookup failed"); + } + if (data.ready && data.credentials) { + data.credentials.forEach((c) => saveCredential(c)); + justIssuedClaims.current = data.credentials + .map((c) => c.type) + .filter((t) => VALID_CLAIMS.includes(t as CredentialType)); + setDone(true); + setBusy(false); + toast.success( + data.credentials.length > 1 + ? "Credentials issued successfully" + : "Credential issued successfully", + ); + setTimeout(redirectAfterIssue, 1500); + return; + } + } catch (e) { + if (!cancelled) { + const message = (e as Error).message; + setError(message); + toast.error(`Credential issuance failed: ${message}`); + setBusy(false); + } + return; + } + if (cancelled) return; + if (attempts >= MAX_ATTEMPTS) { + setError("Verification is taking longer than expected. Please check back shortly."); + setBusy(false); + return; + } + setTimeout(poll, POLL_MS); + } + + poll(); + return () => { + cancelled = true; + }; // eslint-disable-next-line react-hooks/exhaustive-deps }, [personaInquiryId, address]); @@ -238,9 +265,10 @@ function VerifyInner() { }), }); // 202 means Persona identity verification is required — redirect user. + // Persona carries our reference-id (holder/issuerId/attributes) through + // to the webhook on completion, so nothing needs to be stashed here. if (res.status === 202) { const { personaUrl } = (await res.json()) as { personaUrl: string }; - sessionStorage.setItem("sc_persona_pending", JSON.stringify(payload)); window.location.href = personaUrl; return; // don't clear busy — page is navigating away } diff --git a/frontend/lib/logger.ts b/frontend/lib/logger.ts index 33ed76de..209aa37b 100644 --- a/frontend/lib/logger.ts +++ b/frontend/lib/logger.ts @@ -15,6 +15,7 @@ const SAFE_FIELDS = [ "outcome", "durationMs", "requestId", + "inquiryId", "level", "time", "pid", diff --git a/frontend/lib/persona-cache.ts b/frontend/lib/persona-cache.ts new file mode 100644 index 00000000..6f826807 --- /dev/null +++ b/frontend/lib/persona-cache.ts @@ -0,0 +1,38 @@ +// Short-lived, in-memory store for credentials issued by the Persona +// webhook, keyed by Persona inquiry id so the holder's browser can poll and +// pick them up once ready (see app/api/persona/result). Entries hold exactly +// what a Credential contains — commitment, signature, and the derived +// circuit value needed to prove it later — never the raw identity fields +// Persona returned (name, government ID number, address, ...), which never +// reach this module in the first place. +// +// In-memory only: cleared on process restart, not shared across instances. +// Fine for this app's single-instance deployment target; a multi-instance +// deployment would need a shared store (e.g. Redis) with the same TTL. +import type { Credential } from "@stellarcred/issuer"; + +const TTL_MS = 15 * 60 * 1000; + +interface Entry { + credentials: Credential[]; + expiresAt: number; +} + +const cache = new Map(); + +function sweep(): void { + const now = Date.now(); + for (const [key, entry] of cache) { + if (entry.expiresAt <= now) cache.delete(key); + } +} + +export function storePersonaResult(inquiryId: string, credentials: Credential[]): void { + sweep(); + cache.set(inquiryId, { credentials, expiresAt: Date.now() + TTL_MS }); +} + +export function getPersonaResult(inquiryId: string): Credential[] | null { + sweep(); + return cache.get(inquiryId)?.credentials ?? null; +} diff --git a/frontend/lib/persona.ts b/frontend/lib/persona.ts new file mode 100644 index 00000000..2b6006bc --- /dev/null +++ b/frontend/lib/persona.ts @@ -0,0 +1,187 @@ +// Server-side Persona (KYC provider) integration shared between the +// synchronous demo path (app/api/issue) and the asynchronous production path +// (app/api/persona/webhook + app/api/persona/result). Everything here reads +// PERSONA_API_KEY / PERSONA_WEBHOOK_SECRET, which must stay server-only — +// never import this from a client component. +import { createHmac, timingSafeEqual } from "crypto"; +import type { ClaimParams } from "@stellarcred/issuer"; + +const PERSONA_BASE = "https://withpersona.com/api/v1"; +const PERSONA_VERSION = "2023-01-05"; + +function personaHeaders() { + return { + Authorization: `Bearer ${process.env.PERSONA_API_KEY}`, + "Content-Type": "application/json", + "Persona-Version": PERSONA_VERSION, + }; +} + +// Everything the webhook needs to finish issuing a credential once Persona +// approves the inquiry. Round-tripped through Persona as the inquiry's +// reference-id and echoed back on the webhook payload — we don't keep our +// own record of pending requests, since the callback may land on a +// different server instance than the one that created the inquiry. +export interface PersonaReference { + holder: string; + issuerId: string; + issuerName: string; + expiry: string; + credentialTypes: string[]; + attributes: Record; + claimParams?: ClaimParams; +} + +export async function createPersonaInquiry( + templateId: string, + redirectUri: string, + reference: PersonaReference, +): Promise<{ url: string; id: string }> { + const res = await fetch(`${PERSONA_BASE}/inquiries`, { + method: "POST", + headers: personaHeaders(), + body: JSON.stringify({ + data: { + attributes: { + "inquiry-template-id": templateId, + "redirect-uri": redirectUri, + "reference-id": JSON.stringify(reference), + }, + }, + }), + }); + const json = await res.json(); + if (!res.ok) throw new Error(`Persona: failed to create inquiry — ${JSON.stringify(json)}`); + const id: string = json.data.id; + // Persona hosted flow URL + const url = `https://withpersona.com/verify?inquiry-id=${id}`; + return { url, id }; +} + +// Minimal ISO 3166-1 alpha-2 → numeric map for countries we care about. +// Persona returns alpha-2 codes; our jurisdiction circuit uses numeric. +const ALPHA2_TO_NUMERIC: Record = { + NG: "566", US: "840", DE: "276", IN: "356", IR: "364", + GB: "826", FR: "250", CA: "124", AU: "036", BR: "076", + CN: "156", JP: "392", KR: "410", ZA: "710", GH: "288", + KE: "404", EG: "818", MX: "484", AR: "032", SG: "702", +}; + +function alpha2ToNumeric(code: string): string { + return ALPHA2_TO_NUMERIC[code.toUpperCase()] ?? "0"; +} + +// Pulls only the two fields StellarCred's circuits need — birthdate (for the +// age claim) and country (for jurisdiction) — out of a Persona inquiry's +// `fields`. Everything else Persona returns (name, government ID number, +// selfie, address, ...) is ignored here and never touches the rest of the app. +export function extractKycAttributes( + fields: Record, +): { dob?: string; countryNumeric?: string } { + const dob = + String(fields["birthdate"]?.value ?? fields["birth-date"]?.value ?? "").trim() || undefined; + const alpha2 = + String( + fields["selected-country-code"]?.value ?? + fields["country-code"]?.value ?? + fields["address-country-code"]?.value ?? + "", + ).trim() || undefined; + return { dob, countryNumeric: alpha2 ? alpha2ToNumeric(alpha2) : undefined }; +} + +// --------------------------------------------------------------------------- +// Webhook signature verification +// --------------------------------------------------------------------------- +// Persona signs webhooks with a `Persona-Signature` header shaped like +// `t=,v1=[,v1=...]`. The signed message is +// `${t}.${rawBody}`, HMAC-SHA256 with the webhook secret, hex-encoded. +// Multiple v1 values appear during secret rotation — any match is accepted. +// Callers must pass the raw request body text, not a JSON.parse/stringify +// round trip, since re-serialization is not guaranteed byte-identical. +export function verifyPersonaWebhookSignature( + rawBody: string, + signatureHeader: string | null, + secret: string, +): boolean { + if (!signatureHeader) return false; + + let timestamp: string | undefined; + const signatures: string[] = []; + for (const part of signatureHeader.split(",")) { + const eq = part.indexOf("="); + if (eq === -1) continue; + const key = part.slice(0, eq).trim(); + const value = part.slice(eq + 1).trim(); + if (key === "t" && !timestamp) timestamp = value; + else if (key === "v1") signatures.push(value); + } + if (!timestamp || signatures.length === 0) return false; + + const expectedHex = createHmac("sha256", secret) + .update(`${timestamp}.${rawBody}`) + .digest("hex"); + const expected = Buffer.from(expectedHex, "hex"); + + return signatures.some((sig) => { + if (!/^[0-9a-f]+$/i.test(sig)) return false; + const actual = Buffer.from(sig, "hex"); + return actual.length === expected.length && timingSafeEqual(actual, expected); + }); +} + +export interface PersonaWebhookEvent { + eventName: string; + inquiryId: string; + status: string; + fields: Record; + reference: PersonaReference | null; +} + +function isPersonaReference(value: unknown): value is PersonaReference { + if (!value || typeof value !== "object") return false; + const v = value as Record; + return ( + typeof v.holder === "string" && + typeof v.issuerId === "string" && + typeof v.issuerName === "string" && + Array.isArray(v.credentialTypes) + ); +} + +// Parses a Persona webhook body (JSON:API event envelope wrapping an inquiry +// resource under data.attributes.payload.data). Returns null if the payload +// isn't a recognizable inquiry event. +export function parsePersonaWebhookEvent(rawBody: string): PersonaWebhookEvent | null { + let json: unknown; + try { + json = JSON.parse(rawBody); + } catch { + return null; + } + const data = (json as { data?: unknown })?.data as Record | undefined; + const attrs = data?.attributes as Record | undefined; + const eventName = attrs?.name; + const inquiry = (attrs?.payload as { data?: Record } | undefined)?.data; + if (typeof eventName !== "string" || !inquiry || inquiry.type !== "inquiry") return null; + + const inquiryAttrs = (inquiry.attributes ?? {}) as Record; + let reference: PersonaReference | null = null; + const refRaw = inquiryAttrs["reference-id"]; + if (typeof refRaw === "string") { + try { + const parsedRef = JSON.parse(refRaw); + if (isPersonaReference(parsedRef)) reference = parsedRef; + } catch { + reference = null; + } + } + + return { + eventName, + inquiryId: String(inquiry.id ?? ""), + status: String(inquiryAttrs.status ?? ""), + fields: (inquiryAttrs.fields ?? {}) as Record, + reference, + }; +}