@layerzerolabs/protocol-stellar-v2 0.2.15 → 0.2.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +365 -297
- package/.turbo/turbo-lint.log +142 -110
- package/.turbo/turbo-test.log +1273 -1222
- package/Cargo.lock +20 -5
- package/Cargo.toml +4 -1
- package/contracts/ERROR_SPEC.md +44 -0
- package/contracts/common-macros/src/auth.rs +113 -0
- package/contracts/common-macros/src/contract_ttl.rs +84 -0
- package/contracts/common-macros/src/lib.rs +181 -30
- package/contracts/common-macros/src/lz_contract.rs +83 -0
- package/contracts/common-macros/src/tests/{ownable.rs → auth.rs} +48 -15
- package/contracts/common-macros/src/tests/contract_ttl.rs +662 -0
- package/contracts/common-macros/src/tests/mod.rs +2 -2
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_multisig_code.snap +20 -0
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_ownable_code.snap +24 -0
- package/contracts/common-macros/src/tests/snapshots/{common_macros__tests__ownable__snapshot_only_owner_preserves_function_signature.snap → common_macros__tests__auth__snapshot_only_auth_preserves_function_signature.snap} +4 -4
- package/contracts/common-macros/src/tests/snapshots/{common_macros__tests__contract_impl__snapshot_generated_contract_impl_code.snap → common_macros__tests__contract_ttl__snapshot_generated_contractimpl_code.snap} +3 -3
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_ttl__snapshot_generated_contracttrait_code.snap +69 -0
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_configurable__snapshot_generated_ttl_configurable_code.snap +7 -21
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +2 -2
- package/contracts/common-macros/src/ttl_configurable.rs +19 -34
- package/contracts/common-macros/src/ttl_extendable.rs +36 -0
- package/contracts/common-macros/src/upgradeable.rs +5 -5
- package/contracts/common-macros/src/utils.rs +9 -0
- package/contracts/endpoint-v2/src/constants.rs +4 -4
- package/contracts/endpoint-v2/src/endpoint_v2.rs +38 -40
- package/contracts/endpoint-v2/src/errors.rs +4 -3
- package/contracts/endpoint-v2/src/events.rs +1 -1
- package/contracts/endpoint-v2/src/message_lib_manager.rs +18 -5
- package/contracts/endpoint-v2/src/messaging_channel.rs +11 -1
- package/contracts/endpoint-v2/src/messaging_composer.rs +11 -1
- package/contracts/endpoint-v2/src/storage.rs +1 -1
- package/contracts/endpoint-v2/src/tests/endpoint_v2/pay_messaging_fees.rs +3 -3
- package/contracts/endpoint-v2/src/tests/endpoint_v2/quote.rs +1 -1
- package/contracts/endpoint-v2/src/tests/endpoint_v2/require_oapp_auth.rs +2 -2
- package/contracts/endpoint-v2/src/tests/endpoint_v2/send.rs +3 -3
- package/contracts/endpoint-v2/src/tests/endpoint_v2/set_zro.rs +4 -4
- package/contracts/endpoint-v2/src/tests/message_lib_manager/require_receive_lib_for_eid.rs +3 -3
- package/contracts/endpoint-v2/src/tests/message_lib_manager/require_registered.rs +1 -1
- package/contracts/endpoint-v2/src/tests/message_lib_manager/require_send_lib_for_eid.rs +3 -3
- package/contracts/endpoint-v2/src/tests/message_lib_manager/require_supported_eid.rs +1 -1
- package/contracts/endpoint-v2/src/tests/messaging_channel/clear_payload.rs +4 -4
- package/contracts/endpoint-v2/src/tests/messaging_channel/inbound.rs +1 -1
- package/contracts/layerzero-views/src/layerzero_view.rs +3 -6
- package/contracts/macro-integration-tests/tests/runtime/ownable/mod.rs +2 -2
- package/contracts/macro-integration-tests/tests/runtime/ownable/{only_owner_guard.rs → only_auth_guard.rs} +1 -1
- package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/configuration.rs +1 -1
- package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/freeze.rs +1 -1
- package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/mod.rs +0 -1
- package/contracts/macro-integration-tests/tests/ui/ownable/fail/{only_owner_missing_env.rs → only_auth_missing_env.rs} +3 -3
- package/contracts/macro-integration-tests/tests/ui/ownable/fail/{only_owner_missing_env.stderr → only_auth_missing_env.stderr} +4 -4
- package/contracts/macro-integration-tests/tests/ui/ownable/pass/namespacing_and_imports.rs +2 -3
- package/contracts/macro-integration-tests/tests/ui/ownable/pass/{only_owner_env_param_variants.rs → only_auth_env_param_variants.rs} +9 -9
- package/contracts/macro-integration-tests/tests/ui/ttl_configurable/pass/minimal_contract.rs +6 -6
- package/contracts/message-libs/message-lib-common/src/errors.rs +7 -2
- package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/decode_packet_header.rs +3 -3
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_lz_receive_option.rs +1 -2
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_native_drop_option.rs +1 -2
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/convert_legacy_options.rs +9 -9
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/extract_type_3_options.rs +1 -1
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/left_pad_to_bytes32.rs +1 -1
- package/contracts/message-libs/message-lib-common/src/tests/worker_options/split_worker_options.rs +2 -2
- package/contracts/message-libs/simple-message-lib/src/simple_message_lib.rs +7 -9
- package/contracts/message-libs/treasury/src/errors.rs +2 -2
- package/contracts/message-libs/treasury/src/events.rs +1 -1
- package/contracts/message-libs/treasury/src/interfaces/zro_fee_lib.rs +2 -2
- package/contracts/message-libs/treasury/src/storage.rs +1 -1
- package/contracts/message-libs/treasury/src/tests/treasury_tests.rs +1 -1
- package/contracts/message-libs/treasury/src/treasury.rs +14 -16
- package/contracts/message-libs/uln-302/src/receive_uln.rs +13 -2
- package/contracts/message-libs/uln-302/src/send_uln.rs +24 -4
- package/contracts/message-libs/uln-302/src/uln302.rs +6 -24
- package/contracts/oapps/counter/Cargo.toml +14 -1
- package/contracts/oapps/counter/integration_tests/mod.rs +4 -1
- package/contracts/oapps/counter/integration_tests/{setup.rs → setup_sml.rs} +48 -80
- package/contracts/oapps/counter/integration_tests/setup_uln.rs +997 -0
- package/contracts/oapps/counter/integration_tests/signing.rs +62 -0
- package/contracts/oapps/counter/integration_tests/test_with_sml.rs +24 -55
- package/contracts/oapps/counter/integration_tests/test_with_uln.rs +314 -0
- package/contracts/oapps/counter/integration_tests/utils.rs +196 -53
- package/contracts/oapps/counter/src/counter.rs +67 -43
- package/contracts/oapps/counter/src/tests/mod.rs +0 -13
- package/contracts/oapps/counter/src/tests/test_counter.rs +5 -7
- package/contracts/oapps/oapp/src/errors.rs +5 -1
- package/contracts/oapps/oapp/src/macro_tests/test_macros.rs +93 -78
- package/contracts/oapps/oapp/src/oapp_core.rs +36 -21
- package/contracts/oapps/oapp/src/oapp_options_type3.rs +48 -12
- package/contracts/oapps/oapp/src/oapp_receiver.rs +106 -41
- package/contracts/oapps/oapp/src/oapp_sender.rs +26 -34
- package/contracts/oapps/oapp/src/tests/test_oapp_core.rs +9 -8
- package/contracts/oapps/oapp/src/tests/test_oapp_options_type3.rs +25 -17
- package/contracts/oapps/oapp/src/tests/test_oapp_receiver.rs +7 -7
- package/contracts/oapps/oapp/src/tests/test_oapp_sender.rs +14 -15
- package/contracts/oapps/oapp-macros/src/generators.rs +128 -0
- package/contracts/oapps/oapp-macros/src/lib.rs +113 -56
- package/contracts/oapps/oft/Cargo.toml +10 -7
- package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_oft_fee.rs +3 -4
- package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_pausable.rs +2 -3
- package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_rate_limiter.rs +1 -1
- package/contracts/oapps/oft/integration-tests/mod.rs +1 -1
- package/contracts/oapps/oft/integration-tests/setup.rs +29 -110
- package/contracts/oapps/oft/integration-tests/utils.rs +254 -21
- package/contracts/oapps/oft/src/extensions/oft_fee.rs +13 -14
- package/contracts/oapps/oft/src/extensions/pausable.rs +4 -4
- package/contracts/oapps/oft/src/extensions/rate_limiter.rs +5 -5
- package/contracts/oapps/oft/src/lib.rs +11 -13
- package/contracts/oapps/oft/src/oft.rs +147 -225
- package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +9 -13
- package/contracts/oapps/oft/src/oft_types/mint_burn.rs +31 -14
- package/contracts/oapps/oft/src/oft_types/mod.rs +13 -0
- package/contracts/oapps/{oft-std → oft-core}/Cargo.toml +6 -4
- package/contracts/oapps/{oft-std → oft-core}/integration-tests/mod.rs +1 -1
- package/contracts/oapps/{oft-std → oft-core}/integration-tests/setup.rs +129 -30
- package/contracts/oapps/{oft → oft-core}/integration-tests/test_with_sml.rs +3 -3
- package/contracts/oapps/oft-core/integration-tests/utils.rs +201 -0
- package/contracts/oapps/oft-core/src/errors.rs +13 -0
- package/contracts/oapps/oft-core/src/lib.rs +18 -0
- package/contracts/oapps/oft-core/src/oft_core.rs +439 -0
- package/contracts/oapps/{oft → oft-core}/src/storage.rs +2 -0
- package/contracts/oapps/{oft → oft-core}/src/tests/mod.rs +0 -2
- package/contracts/oapps/{oft → oft-core}/src/tests/test_decimals.rs +2 -2
- package/contracts/oapps/{oft → oft-core}/src/tests/test_lz_receive.rs +7 -7
- package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_msg_codec.rs +4 -5
- package/contracts/oapps/{oft → oft-core}/src/tests/test_resolve_address.rs +3 -3
- package/contracts/oapps/{oft → oft-core}/src/tests/test_utils.rs +78 -37
- package/contracts/oapps/oft-core/src/types.rs +58 -0
- package/contracts/oapps/{oft → oft-core}/src/utils.rs +1 -1
- package/contracts/upgrader/src/lib.rs +4 -4
- package/contracts/utils/src/auth.rs +44 -0
- package/contracts/utils/src/errors.rs +31 -5
- package/contracts/utils/src/lib.rs +3 -0
- package/contracts/utils/src/multisig.rs +211 -0
- package/contracts/utils/src/ownable.rs +137 -13
- package/contracts/utils/src/tests/buffer_reader.rs +6 -6
- package/contracts/utils/src/tests/buffer_writer.rs +6 -6
- package/contracts/utils/src/tests/bytes_ext.rs +2 -4
- package/contracts/utils/src/tests/mod.rs +1 -0
- package/contracts/utils/src/tests/multisig.rs +731 -0
- package/contracts/utils/src/tests/option_ext.rs +2 -5
- package/contracts/utils/src/tests/ownable.rs +456 -7
- package/contracts/utils/src/tests/ttl_configurable.rs +27 -16
- package/contracts/utils/src/tests/upgradeable.rs +4 -2
- package/contracts/utils/src/ttl_configurable.rs +23 -8
- package/contracts/utils/src/ttl_extendable.rs +27 -0
- package/contracts/utils/src/upgradeable.rs +2 -0
- package/contracts/workers/dvn/Cargo.toml +1 -1
- package/contracts/workers/dvn/src/auth.rs +7 -7
- package/contracts/workers/dvn/src/dvn.rs +10 -38
- package/contracts/workers/dvn/src/errors.rs +0 -7
- package/contracts/workers/dvn/src/events.rs +1 -14
- package/contracts/workers/dvn/src/interfaces/dvn.rs +2 -2
- package/contracts/workers/dvn/src/interfaces/mod.rs +0 -2
- package/contracts/workers/dvn/src/storage.rs +3 -13
- package/contracts/workers/dvn/src/tests/auth.rs +4 -4
- package/contracts/workers/dvn/src/tests/dvn.rs +1 -2
- package/contracts/workers/dvn/src/tests/multisig/set_signer.rs +7 -8
- package/contracts/workers/dvn/src/tests/multisig/set_threshold.rs +11 -8
- package/contracts/workers/dvn/src/tests/multisig/verify_signatures.rs +11 -12
- package/contracts/workers/dvn/src/tests/setup.rs +5 -5
- package/contracts/workers/dvn-fee-lib/Cargo.toml +1 -1
- package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +3 -6
- package/contracts/workers/executor/src/auth.rs +80 -16
- package/contracts/workers/executor/src/executor.rs +5 -31
- package/contracts/workers/executor/src/storage.rs +2 -9
- package/contracts/workers/executor-fee-lib/Cargo.toml +1 -1
- package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +3 -6
- package/contracts/workers/executor-helper/Cargo.toml +1 -1
- package/contracts/workers/executor-helper/src/executor_helper.rs +53 -73
- package/contracts/workers/price-feed/Cargo.toml +1 -1
- package/contracts/workers/price-feed/src/price_feed.rs +7 -10
- package/contracts/workers/worker/src/errors.rs +4 -0
- package/contracts/workers/worker/src/tests/worker.rs +7 -6
- package/contracts/workers/worker/src/worker.rs +20 -16
- package/package.json +7 -5
- package/sdk/.turbo/turbo-build.log +1 -0
- package/sdk/.turbo/turbo-test.log +1019 -0
- package/sdk/dist/generated/bml.d.ts +95 -8
- package/sdk/dist/generated/bml.js +95 -36
- package/sdk/dist/generated/counter.d.ts +289 -44
- package/sdk/dist/generated/counter.js +119 -49
- package/sdk/dist/generated/dvn.d.ts +312 -229
- package/sdk/dist/generated/dvn.js +144 -83
- package/sdk/dist/generated/dvn_fee_lib.d.ts +258 -63
- package/sdk/dist/generated/dvn_fee_lib.js +95 -26
- package/sdk/dist/generated/endpoint.d.ts +219 -24
- package/sdk/dist/generated/endpoint.js +108 -41
- package/sdk/dist/generated/executor.d.ts +239 -87
- package/sdk/dist/generated/executor.js +135 -63
- package/sdk/dist/generated/executor_fee_lib.d.ts +278 -74
- package/sdk/dist/generated/executor_fee_lib.js +135 -59
- package/sdk/dist/generated/executor_helper.d.ts +163 -21
- package/sdk/dist/generated/executor_helper.js +124 -52
- package/sdk/dist/generated/oft.d.ts +1842 -0
- package/sdk/dist/generated/oft.js +345 -0
- package/sdk/dist/generated/price_feed.d.ts +258 -63
- package/sdk/dist/generated/price_feed.js +95 -26
- package/sdk/dist/generated/sml.d.ts +235 -34
- package/sdk/dist/generated/sml.js +126 -53
- package/sdk/dist/generated/treasury.d.ts +1016 -0
- package/sdk/dist/generated/treasury.js +248 -0
- package/sdk/dist/generated/uln302.d.ts +235 -34
- package/sdk/dist/generated/uln302.js +126 -53
- package/sdk/dist/generated/upgrader.d.ts +17 -2
- package/sdk/dist/generated/upgrader.js +19 -1
- package/sdk/dist/index.d.ts +2 -1
- package/sdk/dist/index.js +2 -1
- package/sdk/package.json +6 -3
- package/sdk/src/index.ts +2 -1
- package/sdk/test/counter-sml.test.ts +376 -0
- package/sdk/test/counter-uln.test.ts +493 -0
- package/sdk/test/{oft.test.ts → oft-sml.test.ts} +196 -321
- package/sdk/test/suites/constants.ts +22 -2
- package/sdk/test/suites/globalSetup.ts +450 -0
- package/sdk/test/suites/localnet.ts +23 -6
- package/sdk/test/upgrader.test.ts +7 -16
- package/sdk/test/utils.ts +558 -85
- package/sdk/turbo.json +8 -0
- package/sdk/vitest.config.ts +21 -0
- package/tools/ts-bindings-gen/Cargo.toml +2 -0
- package/tools/ts-bindings-gen/src/main.rs +52 -4
- package/contracts/common-macros/src/contract_impl.rs +0 -52
- package/contracts/common-macros/src/ownable.rs +0 -41
- package/contracts/common-macros/src/tests/contract_impl.rs +0 -386
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ownable__snapshot_generated_ownable_code.snap +0 -12
- package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/extend_instance_ttl.rs +0 -50
- package/contracts/oapps/oapp-macros/src/oapp_core.rs +0 -41
- package/contracts/oapps/oapp-macros/src/oapp_full.rs +0 -21
- package/contracts/oapps/oapp-macros/src/oapp_options_type3.rs +0 -31
- package/contracts/oapps/oapp-macros/src/oapp_receiver.rs +0 -48
- package/contracts/oapps/oapp-macros/src/oapp_sender.rs +0 -21
- package/contracts/oapps/oapp-macros/src/util.rs +0 -107
- package/contracts/oapps/oft/src/constants.rs +0 -5
- package/contracts/oapps/oft/src/default_oft_impl.rs +0 -152
- package/contracts/oapps/oft/src/errors.rs +0 -8
- package/contracts/oapps/oft/src/interfaces/mint_burn_token.rs +0 -23
- package/contracts/oapps/oft/src/interfaces/mod.rs +0 -3
- package/contracts/oapps/oft/src/tests/extensions/mod.rs +0 -11
- package/contracts/oapps/oft/src/tests/extensions/setup.rs +0 -903
- package/contracts/oapps/oft/src/tests/extensions/test_oft_fee.rs +0 -749
- package/contracts/oapps/oft/src/tests/extensions/test_pausable.rs +0 -432
- package/contracts/oapps/oft/src/tests/extensions/test_rate_limiter.rs +0 -1078
- package/contracts/oapps/oft/src/types.rs +0 -38
- package/contracts/oapps/oft-std/integration-tests/utils.rs +0 -427
- package/contracts/oapps/oft-std/src/lib.rs +0 -16
- package/contracts/oapps/oft-std/src/oft.rs +0 -156
- package/contracts/workers/dvn/src/interfaces/multisig.rs +0 -56
- package/contracts/workers/dvn/src/multisig.rs +0 -157
- package/sdk/dist/generated/oft_std.d.ts +0 -1544
- package/sdk/dist/generated/oft_std.js +0 -271
- package/sdk/test/index.test.ts +0 -375
- /package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/mod.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/codec/mod.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/codec/oft_compose_msg_codec.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/codec/oft_msg_codec.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/events.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_compose_msg_codec.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_version.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_quote_oft.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_quote_send.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_send.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_token.rs +0 -0
- /package/sdk/test/suites/{testUpgradeable.ts → dummyContractClient.ts} +0 -0
|
@@ -1,7 +1,25 @@
|
|
|
1
|
+
import { Buffer } from "buffer";
|
|
1
2
|
import { Client as ContractClient, Spec as ContractSpec, } from '@stellar/stellar-sdk/contract';
|
|
2
3
|
export * from '@stellar/stellar-sdk';
|
|
3
4
|
export * as contract from '@stellar/stellar-sdk/contract';
|
|
4
5
|
export * as rpc from '@stellar/stellar-sdk/rpc';
|
|
6
|
+
/**
|
|
7
|
+
* Embedded WASM bytecode (base64-encoded)
|
|
8
|
+
* Size: 27792 bytes (27.14 KB)
|
|
9
|
+
*/
|
|
10
|
+
export const WASM_BASE64 = "AGFzbQEAAAABgQEUYAABfmABfgF+YAN+fn4BfmACfn4BfmAEfn5+fgF+YAJ/fgBgBX5/f39/AGAEfn5+fgBgAn9/AX5gA35+fgBgA35/fgBgAX8AYAJ/fwBgAX8BfmAGfn5+fn5+AX5gBn5+f39+fgBgB35+fn5+fn4BfmAAAGADf39/AGADf39/AX8CWw8BdgFfAAABaQFfAAEBbQE5AAIBaQEwAAEBYgFqAAMBYgE4AAEBaQE2AAMBZAFfAAIBbQFhAAQBdgFnAAMBbAE4AAMBbAEwAAMBbAExAAMBaQE4AAEBaQE3AAEDHh0FBgUFBQUHAQgCAwgJAgoCCwwNAgIODxARERITEwQFAXABAQEFAwEAEQYhBH8BQYCAwAALfwBBrYLAAAt/AEHYgsAAC38AQeCCwAALB4sBCgZtZW1vcnkCAAdleGVjdXRlABwQbHpfcmVjZWl2ZV9hbGVydAAeB2NvbXBvc2UAIhBsel9jb21wb3NlX2FsZXJ0ACMLbmF0aXZlX2Ryb3AAJBduYXRpdmVfZHJvcF9hbmRfZXhlY3V0ZQAmAV8DAQpfX2RhdGFfZW5kAwILX19oZWFwX2Jhc2UDAwqCLx2ZAwICfwl+I4CAgIAAQeAAayICJICAgIAAQQAhAwJAA0AgA0HAAEYNASACIANqQgI3AwAgA0EIaiEDDAALC0IAIQRCASEFAkAgAUL/AYNCzABSDQAgAUH4gMCAAEEIIAJBCBCQgICAACACKQMAIgFC/wGDQsgAUg0AIAIpAwgiBkL/AYNCzQBSDQAgAkHAAGogAikDEBCRgICAACACKAJAQQFGDQAgAikDWCEHIAIpA1AhCCACQcAAaiACKQMYEJKAgIAAIAIoAkANACACKQMgIglC/wGDQgRSDQAgAikDKCIKQv8Bg0LIAFINACACKQMwIgtC/wGDQs0AUg0AIAIpA0ghDCACQcAAaiACKQM4EJGAgIAAIAIoAkBBAUYNACACKQNQIQQgAikDWCEFIAAgBzcDKCAAIAg3AyAgACAFNwMYIAAgBDcDECAAIAlCIIinNgJYIAAgATcDUCAAIAo3A0ggACAMNwNAIAAgCzcDOCAAIAY3AzBCACEFQgAhBAsgACAFNwMAIAAgBDcDCCACQeAAaiSAgICAAAsxAAJAIAIgBEYNAAALIAAgAa1CIIZCBIQgA61CIIZCBIQgAq1CIIZCBIQQiICAgAAaC34CAX8BfgJAAkACQCABp0H/AXEiAkHFAEYNACACQQtHDQEgACABQj+HNwMYIAAgAUIIhzcDEEIAIQEMAgsgARCNgICAACEDIAEQjoCAgAAhASAAIAM3AxggACABNwMQQgAhAQwBCyAAQoOQgICAATcDCEIBIQELIAAgATcDAAtCAQF+QgEhAgJAIAFC/wGDQsgAUg0AIAEQhYCAgABCgICAgHCDQoCAgICABFINACAAIAE3AwhCACECCyAAIAI3AwAL4QMCAn8HfiOAgICAAEHwAGsiAiSAgICAAEEAIQMCQANAIANBOEYNASACIANqQgI3AwAgA0EIaiEDDAALC0IAIQRCASEFAkAgAUL/AYNCzABSDQAgAUG0gMCAAEEHIAJBBxCQgICAACACKQMAIgFC/wGDQsgAUg0AIAJB0ABqIAIpAwgQkYCAgAAgAigCUEEBRg0AIAIpA2ghBiACKQNgIQcgAkHQAGogAikDEBCSgICAACACKAJQDQAgAikDGCIIQv8Bg0LIAFINACACKQNYIQkgAkHQAGogAikDIBCUgICAACACKAJQQQFGDQAgAkE4akEQaiACQegAaikDADcDACACQcAAaiACQdAAakEQaikDADcDACACIAIpA1g3AzggAikDKCIKQv8Bg0LNAFINACACQdAAaiACKQMwEJGAgIAAIAIoAlBBAUYNACACKQNgIQQgAikDaCEFIAAgBjcDKCAAIAc3AyAgACAFNwMYIAAgBDcDECAAIAIpAzg3AzggACABNwNgIAAgCDcDWCAAIAk3A1AgACAKNwMwIABByABqIAJByABqKQMANwMAIABBwABqIAJBwABqKQMANwMAQgAhBUIAIQQLIAAgBTcDACAAIAQ3AwggAkHwAGokgICAgAAL+AECAn8CfiOAgICAAEEwayICJICAgIAAQQAhAwJAA0AgA0EYRg0BIAJBCGogA2pCAjcDACADQQhqIQMMAAsLQgEhBAJAIAFC/wGDQswAUg0AIAFB9IHAgABBAyACQQhqQQMQkICAgAACQAJAIAIpAwgiAadB/wFxIgNBwABGDQAgA0EGRw0CIAFCCIghAQwBCyABEIOAgIAAIQELIAJBIGogAikDEBCSgICAACACKAIgDQAgAikDGCIFQv8Bg0IEUg0AIAIpAyghBCAAIAE3AxAgACAENwMIIAAgBUIgiD4CGEIAIQQLIAAgBDcDACACQTBqJICAgIAAC9kBAwF/AX4BfyOAgICAAEEwayIEJICAgIAAIAEQloCAgABBjILAgABBDBCXgICAABCAgICAABCYgICAACEFIAQgAiADEJmAgIAANwMQIAQgATcDCCAEIAA3AwBBACEGA0ACQCAGQRhHDQBBACEGAkADQCAGQRhGDQEgBEEYaiAGaiAEIAZqKQMANwMAIAZBCGohBgwACwsgBUKO7uqVvrbe8wAgBEEYakEDEJqAgIAAEJuAgIAAIARBMGokgICAgAAPCyAEQRhqIAZqQgI3AwAgBkEIaiEGDAALCxoAIABCjvKzl93OztUAEICAgIAAEJiAgIAAC0UCAX8BfiOAgICAAEEQayICJICAgIAAIAIgACABEKmAgIAAAkAgAigCAEEBRw0AAAsgAikDCCEDIAJBEGokgICAgAAgAwsmAAJAIAAgASACEIeAgIAAIgJC/wGDQs0AUQ0AEKiAgIAAAAsgAgtFAAJAIABCgICAgICAgMAAfEL//////////wBWDQAgACAAhSABIABCP4eFhEIAUg0AIABCCIZCC4QPCyABIAAQhoCAgAALGgAgAK1CIIZCBIQgAa1CIIZCBIQQiYCAgAALIQACQCAAIAEgAhCHgICAAEL/AYNCAlENABCogICAAAALC3gBAX8jgICAgABB0AFrIgMkgICAgAACQCAAQv8Bg0LNAFINACADQeAAaiABEJOAgIAAIAMoAmBBAXENACADIANB8ABqQeAAEKuAgIAAIQMgAkL/AYNCzQBSDQAgACADIAIQnYCAgAAgA0HQAWokgICAgABCAg8LAAvIAgIBfwd+I4CAgIAAQeAAayIDJICAgIAAIANBMGoQn4CAgAACQCADKAIwQQFHDQAgAygCNCADKAI4EKCAgIAACwJAIAEpAwAiBCABKQMIIgWEQgBRDQAgAiAAIAQgBRCVgICAAAsgASkDICECIAEpA0AhBiABKQNIIQcgASkDUCEIQZiCwIAAQQoQl4CAgAAhCSABQShqEKGAgIAAIQogAyAEIAUQmYCAgAA3AyggAyAINwMgIAMgBzcDGCADIAY3AxAgAyAKNwMIIAMgADcDAEEAIQEDQAJAIAFBMEcNAEEAIQECQANAIAFBMEYNASADQTBqIAFqIAMgAWopAwA3AwAgAUEIaiEBDAALCyACIAkgA0EwakEGEJqAgIAAEJuAgIAAIANB4ABqJICAgIAADwsgA0EwaiABakICNwMAIAFBCGohAQwACwvKAwICfwp+I4CAgIAAQaACayIDJICAgIAAAkAgAEL/AYNCzQBSDQAgA0HgAGogARCTgICAACADKAJgQQFxDQAgAyADQfAAakHgABCrgICAACEEIAJC/wGDQsgAUg0AIARB4ABqEJ+AgIAAAkAgBCgCYEEBRw0AIAQoAmQgBCgCaBCggICAAAsgABCWgICAACEBIAQpAyAhBSAEKQNAIQYgBCkDSCEHIAQpA1AhCCAEKQMIIQkgBCkDACEKIAQpAxghCyAEKQMQIQxBuIHAgABBEBCXgICAACENIARBKGoQoYCAgAAhDiAMIAsQmYCAgAAhCyAKIAkQmYCAgAAhCSAEIAI3A5gCIAQgCDcDkAIgBCAHNwOIAiAEIAk3A4ACIAQgCzcD+AEgBCAGNwPwASAEIAU3A+gBIAQgDjcD4AEgBCAANwPYAUEAIQMDQAJAIANByABHDQBBACEDAkADQCADQcgARg0BIARB4ABqIANqIARB2AFqIANqKQMANwMAIANBCGohAwwACwsgASANIARB4ABqQQkQmoCAgAAQm4CAgAAgBEGgAmokgICAgABCAg8LIARB4ABqIANqQgI3AwAgA0EIaiEDDAALCwAL+wECAn8CfiOAgICAAEEQayIBJICAgIAAIAFB0ILAgABBCBCpgICAAAJAIAEoAgBBAUYNACABIAEpAwg3AwBBACECAkAgAUEBEJqAgIAAIgNCAhCLgICAAEIBUg0AIANCAhCMgICAACEDQQAhAgJAA0AgAkEQRg0BIAEgAmpCAjcDACACQQhqIQIMAAsLIANC/wGDQswAUg0BIANBwILAgABBAiABQQIQkICAgAAgASkDACIDQv8Bg0IEUg0BIAEpAwgiBEL/AYNCBFINASAAIANCIIinNgIIIAAgBEIgiD4CBEEBIQILIAAgAjYCACABQRBqJICAgIAADwsACxsAIACtQiCGQgSEIAGtQiCGQgSEEIqAgIAAGgucAQIBfwF+I4CAgIAAQSBrIgEkgICAgAACQAJAIAApAwgiAkL//////////wBWDQAgAkIIhkIGhCECDAELIAIQgYCAgAAhAgsgASACNwMIIAEgACkDADcDECABIAA1AhBCIIZCBIQ3AxhB9IHAgACtQiCGQgSEIAFBCGqtQiCGQgSEQoSAgIAwEIKAgIAAIQIgAUEgaiSAgICAACACC4gDAwF/B34BfyOAgICAAEGgAWsiAySAgICAAAJAIABC/wGDQs0AUg0AIAMgARCPgICAACADKAIAQQFxDQAgAkL/AYNCzQBSDQAgAykDGCEBIAMpAxAhBCADNQJYIQUgAykDUCEGIAMpA0ghByADKQNAIQggAykDOCEJIAMpAzAhCiADEJ+AgIAAAkAgAygCAEEBRw0AIAMoAgQgAygCCBCggICAAAsCQCAEIAGEUA0AIAIgACAEIAEQlYCAgAALQdiBwIAAQQoQl4CAgAAhAiADIAQgARCZgICAADcDmAEgAyAGNwOQASADIAc3A4gBIAMgBUIghkIEhDcDgAEgAyAINwN4IAMgCjcDcCADIAA3A2hBACELA0ACQCALQThHDQBBACELAkADQCALQThGDQEgAyALaiADQegAaiALaikDADcDACALQQhqIQsMAAsLIAkgAiADQQcQmoCAgAAQm4CAgAAgA0GgAWokgICAgABCAg8LIAMgC2pCAjcDACALQQhqIQsMAAsLAAuwAwMBfwt+AX8jgICAgABBsAFrIgMkgICAgAACQCAAQv8Bg0LNAFINACADIAEQj4CAgAAgAygCAEEBcQ0AIAJC/wGDQsgAUg0AIAMpAyghASADKQMgIQQgAykDGCEFIAMpAxAhBiADNQJYIQcgAykDUCEIIAMpA0ghCSADKQNAIQogAykDOCELIAMpAzAhDCADEJ+AgIAAAkAgAygCAEEBRw0AIAMoAgQgAygCCBCggICAAAsgABCWgICAACENQciBwIAAQRAQl4CAgAAhDiAEIAEQmYCAgAAhASAGIAUQmYCAgAAhBCADIAI3A6gBIAMgCDcDoAEgAyAJNwOYASADIAQ3A5ABIAMgATcDiAEgAyAHQiCGQgSENwOAASADIAo3A3ggAyALNwNwIAMgDDcDaCADIAA3A2BBACEPA0ACQCAPQdAARw0AQQAhDwJAA0AgD0HQAEYNASADIA9qIANB4ABqIA9qKQMANwMAIA9BCGohDwwACwsgDSAOIANBChCagICAABCbgICAACADQbABaiSAgICAAEICDwsgAyAPakICNwMAIA9B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AAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAGb3JpZ2luAAAAAAfQAAAABk9yaWdpbgAAAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAAAAAAABG9hcHAAAAATAAAAAAAAAAZwYXJhbXMAAAAAA+oAAAfQAAAAEE5hdGl2ZURyb3BQYXJhbXMAAAAAAAAAAAAAADBFeGVjdXRlcyBgbmF0aXZlX2Ryb3BgIGZvbGxvd2VkIGJ5IGBsel9yZWNlaXZlYC4AAAAXbmF0aXZlX2Ryb3BfYW5kX2V4ZWN1dGUAAAAABwAAAAAAAAAIZXhlY3V0b3IAAAATAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAABm9yaWdpbgAAAAAH0AAAAAZPcmlnaW4AAAAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAARvYXBwAAAAEwAAAAAAAAASbmF0aXZlX2Ryb3BfcGFyYW1zAAAAAAPqAAAH0AAAABBOYXRpdmVEcm9wUGFyYW1zAAAAAAAAAA5leGVjdXRlX3BhcmFtcwAAAAAH0AAAAA9FeGVjdXRpb25QYXJhbXMAAAAAAAAAAAQAAAAAAAAAAAAAAA1FbmRwb2ludEVycm9yAAAAAAAAGQAAAAAAAAARQWxyZWFkeVJlZ2lzdGVyZWQAAAAAAAABAAAAAAAAAA1Db21wb3NlRXhpc3RzAAAAAAAAAgAAAAAAAAAPQ29tcG9zZU5vdEZvdW5kAAAAAAMAAAAAAAAAHERlZmF1bHRSZWNlaXZlTGliVW5hdmFpbGFibGUAAAAEAAAAAAAAABlEZWZhdWx0U2VuZExpYlVuYXZhaWxhYmxlAAAAAAAABQAAAAAAAAAVSW5zdWZmaWNpZW50TmF0aXZlRmVlAAAAAAAABgAAAAAAAAASSW5zdWZmaWNpZW50WnJvRmVlAAAAAAAHAAAAAAAAABBJbnZhbGlkRmVlQW1vdW50AAAACAAAAAAAAAANSW52YWxpZEV4cGlyeQAAAAAAAAkAAAAAAAAADEludmFsaWRJbmRleAAAAAoAAAAAAAAADEludmFsaWROb25jZQAAAAsAAAAAAAAAEkludmFsaWRQYXlsb2FkSGFzaAAAAAAADAAAAAAAAAAVSW52YWxpZFJlY2VpdmVMaWJyYXJ5AAAAAAAADQAAAAAAAAART25seU5vbkRl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cHRpb25zAAAAAA4AAAA5V2hldGhlciB0byBwYXkgZmVlcyBpbiBaUk8gdG9rZW4gaW5zdGVhZCBvZiBuYXRpdmUgdG9rZW4uAAAAAAAACnBheV9pbl96cm8AAAAAAAEAAAA1UmVjZWl2ZXIgYWRkcmVzcyBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAAIcmVjZWl2ZXIAAAPuAAAAIAAAAAEAAABNU291cmNlIG1lc3NhZ2UgaW5mb3JtYXRpb24gaWRlbnRpZnlpbmcgd2hlcmUgYSBjcm9zcy1jaGFpbiBtZXNzYWdlIGNhbWUgZnJvbS4AAAAAAAAAAAAABk9yaWdpbgAAAAAAAwAAABdOb25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAAFbm9uY2UAAAAAAAAGAAAALlNlbmRlciBhZGRyZXNzIG9uIHRoZSBzb3VyY2UgY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAZzZW5kZXIAAAAAA+4AAAAgAAAAJlNvdXJjZSBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAAChGZWUgc3RydWN0dXJlIGZvciBjcm9zcy1jaGFpbiBtZXNzYWdpbmcuAAAAAAAAAAxNZXNzYWdpbmdGZWUAAAACAAAAH0ZlZSBwYWlkIGluIG5hdGl2ZSB0b2tlbiAoWExNKS4AAAAACm5hdGl2ZV9mZWUAAAAAAAsAAAAoRmVlIHBhaWQgaW4gWlJPIHRva2VuIChMYXllclplcm8gdG9rZW4pLgAAAAd6cm9fZmVlAAAAAAsAAAABAAAAQlJlY2VpcHQgcmV0dXJuZWQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHNlbmRpbmcgYSBjcm9zcy1jaGFpbiBtZXNzYWdlLgAAAAAAAAAAABBNZXNzYWdpbmdSZWNlaXB0AAAAAwAAAClUaGUgZmVlcyBjaGFyZ2VkIGZvciBzZW5kaW5nIHRoZSBtZXNzYWdlLgAAAAAAAANmZWUAAAAH0AAAAAxNZXNzYWdpbmdGZWUAAAArR2xvYmFsbHkgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBtZXNzYWdlLgAAAAAEZ3VpZAAAA+4AAAAgAAAAJFRoZSBvdXRib3VuZCBub25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAVub25jZQAAAAAAAAYAAAACAAAAOFR5cGUgb2YgbWVzc2FnZSBsaWJyYXJ5IGluZGljYXRpbmcgc3VwcG9ydGVkIG9wZXJhdGlvbnMuAAAAAAAAAA5NZXNzYWdlTGliVHlwZQAAAAAAAwAAAAAAAAAfU3VwcG9ydHMgb25seSBzZW5kaW5nIG1lc3NhZ2VzLgAAAAAEU2VuZAAAAAAAAAAhU3VwcG9ydHMgb25seSByZWNlaXZpbmcgbWVzc2FnZXMuAAAAAAAAB1JlY2VpdmUAAAAAAAAAAC1TdXBwb3J0cyBib3RoIHNlbmRpbmcgYW5kIHJlY2VpdmluZyBtZXNzYWdlcy4AAAAAAAAOU2VuZEFuZFJlY2VpdmUAAAAAAAEAAAC3VmVyc2lvbiBpbmZvcm1hdGlvbiBmb3IgYSBtZXNzYWdlIGxpYnJhcnkuCgpOb3RlOiBgbWlub3JgIGFuZCBgZW5kcG9pbnRfdmVyc2lvbmAgdXNlIGB1MzJgIGluc3RlYWQgb2YgYHU4YCBiZWNhdXNlIFN0ZWxsYXIgZG9lcyBub3QKc3VwcG9ydCBgdThgIHR5cGVzIGluIGNvbnRyYWN0IGludGVyZmFjZSBmdW5jdGlvbnMuAAAAAAAAAAARTWVzc2FnZUxpYlZlcnNpb24AAAAAAAADAAAAM0VuZHBvaW50IHZlcnNpb24gKHNob3VsZCBub3QgZXhjZWVkIHU4OjpNQVggPSAyNTUpLgAAAAAQZW5kcG9pbnRfdmVyc2lvbgAAAAQAAAAVTWFqb3IgdmVyc2lvbiBudW1iZXIuAAAAAAAABW1ham9yAAAAAAAABgAAADdNaW5vciB2ZXJzaW9uIG51bWJlciAoc2hvdWxkIG5vdCBleGNlZWQgdTg6Ok1BWCA9IDI1NSkuAAAAAAVtaW5vcgAAAAAAAAQAAAABAAAANlRpbWVvdXQgY29uZmlndXJhdGlvbiBmb3IgcmVjZWl2ZSBsaWJyYXJ5IHRyYW5zaXRpb25zLgAAAAAAAAAAAAdUaW1lb3V0AAAAAAIAAAAoVW5peCB0aW1lc3RhbXAgd2hlbiB0aGUgdGltZW91dCBleHBpcmVzLgAAAAZleHBpcnkAAAAAAAYAAAApVGhlIG5ldyBsaWJyYXJ5IGFkZHJlc3MgdG8gdHJhbnNpdGlvbiB0by4AAAAAAAADbGliAAAAABMAAAABAAAANVBhcmFtZXRlcnMgZm9yIHNldHRpbmcgbWVzc2FnZSBsaWJyYXJ5IGNvbmZpZ3VyYXRpb24uAAAAAAAAAAAAAA5TZXRDb25maWdQYXJhbQAAAAAAAwAAAB9YRFItZW5jb2RlZCBjb25maWd1cmF0aW9uIGRhdGEuAAAAAAZjb25maWcAAAAAAA4AAAAwVGhlIHR5cGUgb2YgY29uZmlndXJhdGlvbiAoZS5nLiwgZXhlY3V0b3IsIFVMTikuAAAAC2NvbmZpZ190eXBlAAAAAAQAAAAnVGhlIGVuZHBvaW50IElEIHRoaXMgY29uZmlnIGFwcGxpZXMgdG8uAAAAAANlaWQAAAAABAAAAAEAAAAxUmVzb2x2ZWQgbGlicmFyeSBpbmZvcm1hdGlvbiB3aXRoIGRlZmF1bHQgc3RhdHVzLgAAAAAAAAAAAAAPUmVzb2x2ZWRMaWJyYXJ5AAAAAAIAAABEV2hldGhlciB0aGlzIGlzIHRoZSBkZWZhdWx0IGxpYnJhcnkgKHRydWUpIG9yIE9BcHAtc3BlY2lmaWMgKGZhbHNlKS4AAAAKaXNfZGVmYXVsdAAAAAAAAQAAAB1UaGUgcmVzb2x2ZWQgbGlicmFyeSBhZGRyZXNzLgAAAAAAAANsaWIAAAAAEwAAAAEAAABIT3V0Ym91bmQgcGFja2V0IGNvbnRhaW5pbmcgYWxsIGluZm9ybWF0aW9uIGZvciBjcm9zcy1jaGFpbiB0cmFuc21pc3Npb24uAAAAAAAAAA5PdXRib3VuZFBhY2tldAAAAAAABwAAABhEZXN0aW5hdGlvbiBlbmRwb2ludCBJRC4AAAAHZHN0X2VpZAAAAAAEAAAALEdsb2JhbGx5IHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIG1lc3NhZ2UuAAAABGd1aWQAAAPuAAAAIAAAABRUaGUgbWVzc2FnZSBwYXlsb2FkLgAAAAdtZXNzYWdlAAAAAA4AAAAgT3V0Ym91bmQgbm9uY2UgZm9yIHRoaXMgcGF0aHdheS4AAAAFbm9uY2UAAAAAAAAGAAAAMVJlY2VpdmVyIGFkZHJlc3Mgb24gZGVzdGluYXRpb24gY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAAIcmVjZWl2ZXIAAAPuAAAAIAAAAB9TZW5kZXIgYWRkcmVzcyBvbiBzb3VyY2UgY2hhaW4uAAAAAAZzZW5kZXIAAAAAABMAAAATU291cmNlIGVuZHBvaW50IElELgAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAACtBIGZlZSByZWNpcGllbnQgd2l0aCB0aGUgYW1vdW50IHRvIGJlIHBhaWQuAAAAAAAAAAAMRmVlUmVjaXBpZW50AAAAAgAAABVBbW91bnQgb2YgZmVlIHRvIHBheS4AAAAAAAAGYW1vdW50AAAAAAALAAAAH1RoZSBhZGRyZXNzIHRvIHNlbmQgdGhlIGZlZSB0by4AAAAAAnRvAAAAAAATAAAAAQAAADxSZXN1bHQgb2Ygc2VuZCBvcGVyYXRpb24gY29udGFpbmluZyBmZWVzIGFuZCBlbmNvZGVkIHBhY2tldC4AAAAAAAAADUZlZXNBbmRQYWNrZXQAAAAAAAADAAAAKlRoZSBlbmNvZGVkIHBhY2tldCByZWFkeSBmb3IgdHJhbnNtaXNzaW9uLgAAAAAADmVuY29kZWRfcGFja2V0AAAAAAAOAAAAP0xpc3Qgb2YgbmF0aXZlIHRva2VuIGZlZSByZWNpcGllbnRzIChleGVjdXRvciwgRFZOcywgdHJlYXN1cnkpLgAAAAAVbmF0aXZlX2ZlZV9yZWNpcGllbnRzAAAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAALExpc3Qgb2YgWlJPIHRva2VuIGZlZSByZWNpcGllbnRzICh0cmVhc3VyeSkuAAAAEnpyb19mZWVfcmVjaXBpZW50cwAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAABAAAAAAAAAAAAAAADUV4ZWN1dG9yRXJyb3IAAAAAAAADAAAAAAAAAA9FaWROb3RTdXBwb3J0ZWQAAAAAAQAAAAAAAAAMVW5hdXRob3JpemVkAAAAAgAAAAAAAAATVW5hdXRob3JpemVkQ29udGV4dAAAAAADAAAABQAAAAAAAAAAAAAADERzdENvbmZpZ1NldAAAAAEAAAAOZHN0X2NvbmZpZ19zZXQAAAAAAAEAAAAAAAAABnBhcmFtcwAAAAAD6gAAB9AAAAARU2V0RHN0Q29uZmlnUGFyYW0AAAAAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABFOYXRpdmVEcm9wQXBwbGllZAAAAAAAAAEAAAATbmF0aXZlX2Ryb3BfYXBwbGllZAAAAAAFAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAAAAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAAAAAAAAAAAAARvYXBwAAAAEwAAAAAAAAAAAAAAEm5hdGl2ZV9kcm9wX3BhcmFtcwAAAAAD6gAAB9AAAAAQTmF0aXZlRHJvcFBhcmFtcwAAAAAAAAAAAAAAB3N1Y2Nlc3MAAAAD6gAAAAEAAAAAAAAAAgAAAAEAAADbRGVzdGluYXRpb24gY2hhaW4gY29uZmlndXJhdGlvbiBmb3IgZXhlY3V0b3IgZmVlIGNhbGN1bGF0aW9uLgoKQ29udGFpbnMgZ2FzIGNvc3RzIGFuZCBmZWUgcGFyYW1ldGVycyBzcGVjaWZpYyB0byBlYWNoIGRlc3RpbmF0aW9uIGNoYWluLgpUaGVzZSBwYXJhbWV0ZXJzIGFyZSB1c2VkIGJ5IHRoZSBmZWUgbGlicmFyeSB0byBjYWxjdWxhdGUgYWNjdXJhdGUgZXhlY3V0aW9uIGZlZXMuAAAAAAAAAAAJRHN0Q29uZmlnAAAAAAAABQAAADtNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpIHRvIGVuc3VyZSBwcm9maXRhYmlsaXR5LgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAA6QmFzZSBnYXMgY29zdCBwZXIgbHpDb21wb3NlIGNhbGwgb24gdGhlIGRlc3RpbmF0aW9uIGNoYWluLgAAAAAAE2x6X2NvbXBvc2VfYmFzZV9nYXMAAAAABgAAAD9CYXNlIGdhcyBjb3N0IGZvciBselJlY2VpdmUgZXhlY3V0aW9uIG9uIHRoZSBkZXN0aW5hdGlvbiBjaGFpbi4AAAAAE2x6X3JlY2VpdmVfYmFzZV9nYXMAAAAABgAAAFFGZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgZm9yIHRoaXMgZGVzdGluYXRpb24gKDAgPSB1c2UgZGVmYXVsdCBtdWx0aXBsaWVyKS4AAAAAAAAObXVsdGlwbGllcl9icHMAAAAAAAQAAABGTWF4aW11bSBuYXRpdmUgdG9rZW4gdmFsdWUgdGhhdCBjYW4gYmUgdHJhbnNmZXJyZWQgdG8gdGhlIGRlc3RpbmF0aW9uLgAAAAAACm5hdGl2ZV9jYXAAAAAAAAoAAAABAAAAfFBhcmFtZXRlcnMgZm9yIHNldHRpbmcgZGVzdGluYXRpb24gY29uZmlndXJhdGlvbi4KClVzZWQgd2hlbiBjb25maWd1cmluZyBleGVjdXRvciBzZXR0aW5ncyBmb3IgYSBzcGVjaWZpYyBkZXN0aW5hdGlvbiBjaGFpbi4AAAAAAAAAEVNldERzdENvbmZpZ1BhcmFtAAAAAAAAAgAAAChDb25maWd1cmF0aW9uIGZvciB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAACmRzdF9jb25maWcAAAAAB9AAAAAJRHN0Q29uZmlnAAAAAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAAAEAAABoUGFyYW1ldGVycyBmb3IgYSBuYXRpdmUgdG9rZW4gZHJvcC4KClVzZWQgdG8gc3BlY2lmeSBuYXRpdmUgdG9rZW4gdHJhbnNmZXJzIGFzIHBhcnQgb2YgZXhlY3V0b3Igb3B0aW9ucy4AAAAAAAAAEE5hdGl2ZURyb3BQYXJhbXMAAAACAAAAJEFtb3VudCBvZiBuYXRpdmUgdG9rZW5zIHRvIHRyYW5zZmVyLgAAAAZhbW91bnQAAAAAAAsAAAAvUmVjZWl2ZXIgYWRkcmVzcyBmb3IgdGhlIG5hdGl2ZSB0b2tlbiB0cmFuc2Zlci4AAAAACHJlY2VpdmVyAAAAEwAAAAQAAAAdUGFja2V0Q29kZWNWMUVycm9yOiAxMTAwLTExMDkAAAAAAAAAAAAAElBhY2tldENvZGVjVjFFcnJvcgAAAAAAAgAAAAAAAAATSW52YWxpZFBhY2tldEhlYWRlcgAAAARMAAAAAAAAABRJbnZhbGlkUGFja2V0VmVyc2lvbgAABE0AAAAEAAAAHVdvcmtlck9wdGlvbnNFcnJvcjogMTExMC0xMTE5AAAAAAAAAAAAABJXb3JrZXJPcHRpb25zRXJyb3IAAAAAAAkAAAAAAAAAEkludmFsaWRCeXRlc0xlbmd0aAAAAAAEVgAAAAAAAAAZSW52YWxpZExlZ2FjeU9wdGlvbnNUeXBlMQAAAAAABFcAAAAAAAAAGUludmFsaWRMZWdhY3lPcHRpb25zVHlwZTIAAAAAAARYAAAAAAAAABFJbnZhbGlkT3B0aW9uVHlwZQAAAAAABFkAAAAAAAAADkludmFsaWRPcHRpb25zAAAAAARaAAAAAAAAAA9JbnZhbGlkV29ya2VySWQAAAAEWwAAAAAAAAAdTGVnYWN5T3B0aW9uc1R5cGUxR2FzT3ZlcmZsb3cAAAAAAARcAAAAAAAAACBMZWdhY3lPcHRpb25zVHlwZTJBbW91bnRPdmVyZmxvdwAABF0AAAAAAAAAHUxlZ2FjeU9wdGlvbnNUeXBlMkdhc092ZXJmbG93AAAAAAAEXgAAAAQAAAAcQnVmZmVyUmVhZGVyRXJyb3I6IDEwMDAtMTAwOQAAAAAAAAARQnVmZmVyUmVhZGVyRXJyb3IAAAAAAAACAAAAAAAAAA1JbnZhbGlkTGVuZ3RoAAAAAAAD6AAAAAAAAAAVSW52YWxpZEFkZHJlc3NQYXlsb2FkAAAAAAAD6QAAAAQAAAAcQnVmZmVyV3JpdGVyRXJyb3I6IDEwMTAtMTAxOQAAAAAAAAARQnVmZmVyV3JpdGVyRXJyb3IAAAAAAAABAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPyAAAABAAAAB9UdGxDb25maWd1cmFibGVFcnJvcjogMTAyMC0xMDI5AAAAAAAAAAAUVHRsQ29uZmlndXJhYmxlRXJyb3IAAAADAAAAAAAAABBJbnZhbGlkVHRsQ29uZmlnAAAD/AAAAAAAAAAPVHRsQ29uZmlnRnJvemVuAAAAA/0AAAAAAAAAFlR0bENvbmZpZ0FscmVhZHlGcm96ZW4AAAAAA/4AAAAEAAAAF093bmFibGVFcnJvcjogMTAzMC0xMDM5AAAAAAAAAAAMT3duYWJsZUVycm9yAAAABgAAAAAAAAATSW52YWxpZFBlbmRpbmdPd25lcgAAAAQGAAAAAAAAAApJbnZhbGlkVHRsAAAAAAQHAAAAAAAAABFOb1BlbmRpbmdUcmFuc2ZlcgAAAAAABAgAAAAAAAAAD093bmVyQWxyZWFkeVNldAAAAAQJAAAAAAAAAAtPd25lck5vdFNldAAAAAQKAAAAAAAAABJUcmFuc2ZlckluUHJvZ3Jlc3MAAAAABAsAAAAEAAAAGEJ5dGVzRXh0RXJyb3I6IDEwNDAtMTA0OQAAAAAAAAANQnl0ZXNFeHRFcnJvcgAAAAAAAAEAAAAAAAAADkxlbmd0aE1pc21hdGNoAAAAAAQQAAAABAAAABtVcGdyYWRlYWJsZUVycm9yOiAxMDUwLTEwNTkAAAAAAAAAABBVcGdyYWRlYWJsZUVycm9yAAAAAQAAAAAAAAATTWlncmF0aW9uTm90QWxsb3dlZAAAAAQaAAAABAAAABhNdWx0aXNpZ0Vycm9yOiAxMDYwLTEwNjkAAAAAAAAADU11bHRpc2lnRXJyb3IAAAAAAAAIAAAAAAAAABJBbHJlYWR5SW5pdGlhbGl6ZWQAAAAABCQAAAAAAAAADUludmFsaWRTaWduZXIAAAAAAAQlAAAAAAAAAA5TaWduYXR1cmVFcnJvcgAAAAAEJgAAAAAAAAATU2lnbmVyQWxyZWFkeUV4aXN0cwAAAAQnAAAAAAAAAA5TaWduZXJOb3RGb3VuZAAAAAAEKAAAAAAAAAAdVG90YWxTaWduZXJzTGVzc1RoYW5UaHJlc2hvbGQAAAAAAAQpAAAAAAAAAA9VbnNvcnRlZFNpZ25lcnMAAAAEKgAAAAAAAAANWmVyb1RocmVzaG9sZAAAAAAABCsAAAAFAAAAMEV2ZW50IGVtaXR0ZWQgd2hlbiBhIHNpZ25lciBpcyBhZGRlZCBvciByZW1vdmVkLgAAAAAAAAAJU2lnbmVyU2V0AAAAAAAAAQAAAApzaWduZXJfc2V0AAAAAAACAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAQAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAIAAAAFAAAANkV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgc2lnbmF0dXJlIHRocmVzaG9sZCBpcyBjaGFuZ2VkLgAAAAAAAAAAAAxUaHJlc2hvbGRTZXQAAAABAAAADXRocmVzaG9sZF9zZXQAAAAAAAABAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAPTXVsdGlzaWdTdG9yYWdlAAAAAAIAAAAAAAAAAAAAAAdTaWduZXJzAAAAAAAAAAAAAAAACVRocmVzaG9sZAAAAAAAAAUAAABXRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyB0cmFuc2ZlcnJlZCAoYm90aCBzaW5nbGUtc3RlcCBhbmQgdHdvLXN0ZXAgY29tcGxldGlvbikuAAAAAAAAAAAUT3duZXJzaGlwVHJhbnNmZXJyZWQAAAABAAAAFW93bmVyc2hpcF90cmFuc2ZlcnJlZAAAAAAAAAIAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAIAAAAFAAAAO0V2ZW50IGVtaXR0ZWQgd2hlbiBhIDItc3RlcCBvd25lcnNoaXAgdHJhbnNmZXIgaXMgcHJvcG9zZWQuAAAAAAAAAAAVT3duZXJzaGlwVHJhbnNmZXJyaW5nAAAAAAAAAQAAABZvd25lcnNoaXBfdHJhbnNmZXJyaW5nAAAAAAADAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAAAAAAAA3R0bAAAAAAEAAAAAAAAAAIAAAAFAAAAKkV2ZW50IGVtaXR0ZWQgd2hlbiBvd25lcnNoaXAgaXMgcmVub3VuY2VkLgAAAAAAAAAAABJPd25lcnNoaXBSZW5vdW5jZWQAAAAAAAEAAAATb3duZXJzaGlwX3Jlbm91bmNlZAAAAAABAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAOT3duYWJsZVN0b3JhZ2UAAAAAAAIAAAAAAAAAAAAAAAVPd25lcgAAAAAAAAAAAAAAAAAADFBlbmRpbmdPd25lcgAAAAEAAABJVFRMIGNvbmZpZ3VyYXRpb246IHRocmVzaG9sZCAod2hlbiB0byBleHRlbmQpIGFuZCBleHRlbmRfdG8gKHRhcmdldCBUVEwpLgAAAAAAAAAAAAAJVHRsQ29uZmlnAAAAAAAAAgAAAChUYXJnZXQgVFRMIGFmdGVyIGV4dGVuc2lvbiAoaW4gbGVkZ2VycykuAAAACWV4dGVuZF90bwAAAAAAAAQAAAAzVFRMIHRocmVzaG9sZCB0aGF0IHRyaWdnZXJzIGV4dGVuc2lvbiAoaW4gbGVkZ2VycykuAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAABQAAACdFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIHNldC4AAAAAAAAAAA1UdGxDb25maWdzU2V0AAAAAAAAAQAAAA90dGxfY29uZmlnc19zZXQAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAgAAAAUAAAAqRXZlbnQgZW1pdHRlZCB3aGVuIFRUTCBjb25maWdzIGFyZSBmcm96ZW4uAAAAAAAAAAAAEFR0bENvbmZpZ3NGcm96ZW4AAAABAAAAEnR0bF9jb25maWdzX2Zyb3plbgAAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQVHRsQ29uZmlnU3RvcmFnZQAAAAMAAAAAAAAAAAAAAAZGcm96ZW4AAAAAAAAAAAAAAAAACEluc3RhbmNlAAAAAAAAAAAAAAAKUGVyc2lzdGVudAAAAAAAAgAAAAAAAAAAAAAAElVwZ3JhZGVhYmxlU3RvcmFnZQAAAAAAAQAAAAAAAAAAAAAACU1pZ3JhdGluZwAAAAAAAAQAAAAWV29ya2VyRXJyb3I6IDEyMDAtMTI5OQAAAAAAAAAAAAtXb3JrZXJFcnJvcgAAAAATAAAAAAAAABJBZG1pbkFscmVhZHlFeGlzdHMAAAAABLAAAAAAAAAADUFkbWluTm90Rm91bmQAAAAAAASxAAAAAAAAABJBbHJlYWR5T25BbGxvd2xpc3QAAAAABLIAAAAAAAAAEUFscmVhZHlPbkRlbnlsaXN0AAAAAAAEswAAAAAAAAAbQXR0ZW1wdGluZ1RvUmVtb3ZlT25seUFkbWluAAAABLQAAAAAAAAAFERlcG9zaXRBZGRyZXNzTm90U2V0AAAEtQAAAAAAAAAaTWVzc2FnZUxpYkFscmVhZHlTdXBwb3J0ZWQAAAAABLYAAAAAAAAAFk1lc3NhZ2VMaWJOb3RTdXBwb3J0ZWQAAAAABLcAAAAAAAAAEE5vQWRtaW5zUHJvdmlkZWQAAAS4AAAAAAAAAApOb3RBbGxvd2VkAAAAAAS5AAAAAAAAAA5Ob3RPbkFsbG93bGlzdAAAAAAEugAAAAAAAAANTm90T25EZW55bGlzdAAAAAAABLsAAAAAAAAAFFBhdXNlU3RhdHVzVW5jaGFuZ2VkAAAEvAAAAAAAAAAPUHJpY2VGZWVkTm90U2V0AAAABL0AAAAAAAAADFJlSW5pdGlhbGl6ZQAABL4AAAAAAAAADFVuYXV0aG9yaXplZAAABL8AAAAAAAAAFVVuc3VwcG9ydGVkTWVzc2FnZUxpYgAAAAAABMAAAAAAAAAAEldvcmtlckZlZUxpYk5vdFNldAAAAAAEwQAAAAAAAAAOV29ya2VySXNQYXVzZWQAAAAABMIAAAAFAAAAAAAAAAAAAAAIU2V0QWRtaW4AAAABAAAACXNldF9hZG1pbgAAAAAAAAIAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAACAAAABQAAAAAAAAAAAAAAFlNldFN1cHBvcnRlZE1lc3NhZ2VMaWIAAAAAAAEAAAAZc2V0X3N1cHBvcnRlZF9tZXNzYWdlX2xpYgAAAAAAAAIAAAAAAAAAC21lc3NhZ2VfbGliAAAAABMAAAAAAAAAAAAAAAlzdXBwb3J0ZWQAAAAAAAABAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAMU2V0QWxsb3dsaXN0AAAAAQAAAA1zZXRfYWxsb3dsaXN0AAAAAAAAAgAAAAAAAAAEb2FwcAAAABMAAAAAAAAAAAAAAAdhbGxvd2VkAAAAAAEAAAAAAAAAAgAAAAUAAAAAAAAAAAAAAAtTZXREZW55bGlzdAAAAAABAAAADHNldF9kZW55bGlzdAAAAAIAAAAAAAAABG9hcHAAAAATAAAAAAAAAAAAAAAGZGVuaWVkAAAAAAABAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAGUGF1c2VkAAAAAAABAAAABnBhdXNlZAAAAAAAAQAAAAAAAAAGcGF1c2VyAAAAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAIVW5wYXVzZWQAAAABAAAACHVucGF1c2VkAAAAAQAAAAAAAAAIdW5wYXVzZXIAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAXU2V0RGVmYXVsdE11bHRpcGxpZXJCcHMAAAAAAQAAABpzZXRfZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAAAQAAAAAAAAAObXVsdGlwbGllcl9icHMAAAAAAAQAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABFTZXREZXBvc2l0QWRkcmVzcwAAAAAAAAEAAAATc2V0X2RlcG9zaXRfYWRkcmVzcwAAAAABAAAAAAAAAA9kZXBvc2l0X2FkZHJlc3MAAAAAEwAAAAAAAAACAAAABQAAAAAAAAAAAAAADFNldFByaWNlRmVlZAAAAAEAAAAOc2V0X3ByaWNlX2ZlZWQAAAAAAAEAAAAAAAAACnByaWNlX2ZlZWQAAAAAABMAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABdTZXRTdXBwb3J0ZWRPcHRpb25UeXBlcwAAAAABAAAAGnNldF9zdXBwb3J0ZWRfb3B0aW9uX3R5cGVzAAAAAAACAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAAAAAAAAAAAAAxvcHRpb25fdHlwZXMAAAAOAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAPU2V0V29ya2VyRmVlTGliAAAAAAEAAAASc2V0X3dvcmtlcl9mZWVfbGliAAAAAAABAAAAAAAAAAdmZWVfbGliAAAAABMAAAAAAAAAAgAAAAEAAADhUGFyYW1ldGVycyBmb3IgRFZOIGZlZSBjYWxjdWxhdGlvbi4KCkNvbnRhaW5zIGFsbCBpbnB1dHMgbmVlZGVkIGJ5IHRoZSBmZWUgbGlicmFyeSB0byBjYWxjdWxhdGUgdmVyaWZpY2F0aW9uIGZlZXMKZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2VzLiBJbmNsdWRlcyBtZXNzYWdlIHBhcmFtZXRlcnMsIGNvbW1vbiBjb25maWd1cmF0aW9uLAphbmQgZGVzdGluYXRpb24tc3BlY2lmaWMgc2V0dGluZ3MuAAAAAAAAAAAAAAxEdm5GZWVQYXJhbXMAAAAKAAAAJ051bWJlciBvZiBibG9jayBjb25maXJtYXRpb25zIHJlcXVpcmVkLgAAAAANY29uZmlybWF0aW9ucwAAAAAAAAYAAABMRGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKHVzZWQgaWYgbm8gZHN0LXNwZWNpZmljIG11bHRpcGxpZXIpLgAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAACNNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KRGVzdGluYXRpb24tU3BlY2lmaWMgQ29uZmlndXJhdGlvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpHYXMgZXN0aW1hdGUgZm9yIHZlcmlmaWNhdGlvbiBvbiBkZXN0aW5hdGlvbiBjaGFpbi4AAAADZ2FzAAAAAAoAAABGRGVzdGluYXRpb24tc3BlY2lmaWMgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgwID0gdXNlIGRlZmF1bHQpLgAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAAC0RWTiBvcHRpb25zAAAAAAdvcHRpb25zAAAAAA4AAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ29tbW9uIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzIGZvciBnYXMgcHJpY2UgYW5kIGV4Y2hhbmdlIHJhdGUgZGF0YS4AAAAKcHJpY2VfZmVlZAAAAAAAEwAAACdOdW1iZXIgb2YgcmVxdWlyZWQgc2lnbmF0dXJlcyAocXVvcnVtKS4AAAAABnF1b3J1bQAAAAAABAAAAOU9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpNZXNzYWdlIFBhcmFtZXRlcnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KVGhlIE9BcHAgc2VuZGVyIGFkZHJlc3MuAAAAAAAABnNlbmRlcgAAAAAAEwAAAAEAAADjUGFyYW1ldGVycyBmb3IgZXhlY3V0b3IgZmVlIGNhbGN1bGF0aW9uLgoKQ29udGFpbnMgYWxsIGlucHV0cyBuZWVkZWQgYnkgdGhlIGZlZSBsaWJyYXJ5IHRvIGNhbGN1bGF0ZSBleGVjdXRpb24gZmVlcwpmb3IgY3Jvc3MtY2hhaW4gbWVzc2FnZXMuIEluY2x1ZGVzIG1lc3NhZ2UgcGFyYW1ldGVycywgY29tbW9uIGNvbmZpZ3VyYXRpb24sCmFuZCBkZXN0aW5hdGlvbi1zcGVjaWZpYyBzZXR0aW5ncy4AAAAAAAAAAAlGZWVQYXJhbXMAAAAAAAALAAAAJlNpemUgb2YgdGhlIG1lc3NhZ2UgY2FsbGRhdGEgaW4gYnl0ZXMuAAAAAAANY2FsbGRhdGFfc2l6ZQAAAAAAAAQAAABMRGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKHVzZWQgaWYgbm8gZHN0LXNwZWNpZmljIG11bHRpcGxpZXIpLgAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAACNNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAA2QmFzZSBnYXMgZm9yIGVhY2ggbHpDb21wb3NlIGNhbGwgb24gZGVzdGluYXRpb24gY2hhaW4uAAAAAAATbHpfY29tcG9zZV9iYXNlX2dhcwAAAAAGAAABEz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkRlc3RpbmF0aW9uLVNwZWNpZmljIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQmFzZSBnYXMgZm9yIGx6UmVjZWl2ZSBleGVjdXRpb24gb24gZGVzdGluYXRpb24gY2hhaW4uAAAAABNsel9yZWNlaXZlX2Jhc2VfZ2FzAAAAAAYAAABGRGVzdGluYXRpb24tc3BlY2lmaWMgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgwID0gdXNlIGRlZmF1bHQpLgAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAALE1heGltdW0gbmF0aXZlIHRva2VuIHZhbHVlIHRoYXQgY2FuIGJlIHNlbnQuAAAACm5hdGl2ZV9jYXAAAAAAAAoAAABGRW5jb2RlZCBleGVjdXRvciBvcHRpb25zIChselJlY2VpdmUgZ2FzLCBsekNvbXBvc2UsIG5hdGl2ZURyb3AsIGV0Yy4pLgAAAAAAB29wdGlvbnMAAAAADgAAARA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpDb21tb24gQ29uZmlndXJhdGlvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpQcmljZSBmZWVkIGNvbnRyYWN0IGFkZHJlc3MgZm9yIGdhcyBwcmljZSBhbmQgZXhjaGFuZ2UgcmF0ZSBkYXRhLgAAAApwcmljZV9mZWVkAAAAAAATAAAA5T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ck1lc3NhZ2UgUGFyYW1ldGVycwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpUaGUgT0FwcCBzZW5kZXIgYWRkcmVzcy4AAAAAAAAGc2VuZGVyAAAAAAATAAAAAQAAAIRHYXMgcHJpY2UgaW5mb3JtYXRpb24gZm9yIGEgZGVzdGluYXRpb24gZW5kcG9pbnQuCgpDb250YWlucyB0aGUgZXhjaGFuZ2UgcmF0ZSBhbmQgZ2FzIGNvc3RzIG5lZWRlZCBmb3IgY3Jvc3MtY2hhaW4gZmVlIGNhbGN1bGF0aW9ucy4AAAAAAAAABVByaWNlAAAAAAAAAwAAADdHYXMgY29zdCBwZXIgYnl0ZSBvZiBjYWxsZGF0YSBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAAAAxnYXNfcGVyX2J5dGUAAAAEAAAAQkdhcyBwcmljZSBpbiB0aGUgc21hbGxlc3QgdW5pdCAod2VpIGZvciBFVk0sIHN0cm9vcHMgZm9yIFN0ZWxsYXIpLgAAAAAAEWdhc19wcmljZV9pbl91bml0AAAAAAAABgAAAKlQcmljZSByYXRpbyA9IChyZW1vdGUgbmF0aXZlIHRva2VuIHByaWNlIC8gbG9jYWwgbmF0aXZlIHRva2VuIHByaWNlKSAqIFBSSUNFX1JBVElPX0RFTk9NSU5BVE9SLgpVc2VkIHRvIGNvbnZlcnQgZGVzdGluYXRpb24gY2hhaW4gZ2FzIGNvc3RzIHRvIHNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4uAAAAAAAAC3ByaWNlX3JhdGlvAAAAAAoAAAABAAAAgEZlZSBlc3RpbWF0aW9uIHJlc3VsdCB3aXRoIGRldGFpbGVkIGJyZWFrZG93bi4KCkNvbnRhaW5zIHRoZSBjYWxjdWxhdGVkIGZlZSBhbmQgYWxsIGludGVybWVkaWF0ZSB2YWx1ZXMgdXNlZCBpbiB0aGUgY2FsY3VsYXRpb24uAAAAAAAAAAtGZWVFc3RpbWF0ZQAAAAAEAAAAMFNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4gcHJpY2UgaW4gVVNEIChzY2FsZWQpLgAAABBuYXRpdmVfcHJpY2VfdXNkAAAACgAAACVQcmljZSByYXRpbyB1c2VkIGZvciB0aGUgY2FsY3VsYXRpb24uAAAAAAAAC3ByaWNlX3JhdGlvAAAAAAoAAAAyRGVub21pbmF0b3IgZm9yIHRoZSBwcmljZSByYXRpbyAodHlwaWNhbGx5IDEwXjIwKS4AAAAAABdwcmljZV9yYXRpb19kZW5vbWluYXRvcgAAAAAKAAAAMVRvdGFsIGdhcyBmZWUgaW4gc291cmNlIGNoYWluIG5hdGl2ZSB0b2tlbiB1bml0cy4AAAAAAAANdG90YWxfZ2FzX2ZlZQAAAAAAAAsAAAACAAAAAAAAAAAAAAANV29ya2VyU3RvcmFnZQAAAAAAAAsAAAAAAAAAAAAAAAZQYXVzZWQAAAAAAAAAAAAAAAAADkRlcG9zaXRBZGRyZXNzAAAAAAAAAAAAAAAAAAlQcmljZUZlZWQAAAAAAAAAAAAAAAAAAAxXb3JrZXJGZWVMaWIAAAAAAAAAAAAAABREZWZhdWx0TXVsdGlwbGllckJwcwAAAAEAAAAAAAAAFFN1cHBvcnRlZE9wdGlvblR5cGVzAAAAAQAAAAQAAAAAAAAAAAAAAAtNZXNzYWdlTGlicwAAAAABAAAAAAAAAAlBbGxvd2xpc3QAAAAAAAABAAAAEwAAAAEAAAAAAAAACERlbnlsaXN0AAAAAQAAABMAAAAAAAAAAAAAAA1BbGxvd2xpc3RTaXplAAAAAAAAAAAAAAAAAAAGQWRtaW5zAAAAHhFjb250cmFjdGVudm1ldGF2MAAAAAAAAAAXAAAAAABvDmNvbnRyYWN0bWV0YXYwAAAAAAAAAAVyc3ZlcgAAAAAAAAYxLjkwLjAAAAAAAAAAAAAIcnNzZGt2ZXIAAAAvMjMuNC4wIzY3M2Q2YzRmMjM2OGQyODJkMjVkYTI5YmRhNTVjMjFiOGJlNjljYTYA";
|
|
11
|
+
/**
|
|
12
|
+
* Pre-computed WASM hash (SHA-256)
|
|
13
|
+
* Use this when the WASM is already uploaded on-chain
|
|
14
|
+
*/
|
|
15
|
+
export const WASM_HASH = "5103971ef8c9ef09d1add5a8471f46323505ab6a40f02656f2b3f6012a7ccf9e";
|
|
16
|
+
/**
|
|
17
|
+
* Get the WASM bytecode as a Buffer
|
|
18
|
+
* Use this to upload the WASM to the network
|
|
19
|
+
*/
|
|
20
|
+
export function getWasmBuffer() {
|
|
21
|
+
return Buffer.from(WASM_BASE64, 'base64');
|
|
22
|
+
}
|
|
5
23
|
export const EndpointError = {
|
|
6
24
|
1: { message: "AlreadyRegistered" },
|
|
7
25
|
2: { message: "ComposeExists" },
|
|
@@ -9,67 +27,112 @@ export const EndpointError = {
|
|
|
9
27
|
4: { message: "DefaultReceiveLibUnavailable" },
|
|
10
28
|
5: { message: "DefaultSendLibUnavailable" },
|
|
11
29
|
6: { message: "InsufficientNativeFee" },
|
|
12
|
-
7: { message: "
|
|
13
|
-
8: { message: "
|
|
14
|
-
9: { message: "
|
|
15
|
-
10: { message: "
|
|
16
|
-
11: { message: "
|
|
17
|
-
12: { message: "
|
|
18
|
-
13: { message: "
|
|
19
|
-
14: { message: "
|
|
20
|
-
15: { message: "
|
|
21
|
-
16: { message: "
|
|
22
|
-
17: { message: "
|
|
23
|
-
18: { message: "
|
|
24
|
-
19: { message: "
|
|
25
|
-
20: { message: "
|
|
26
|
-
21: { message: "
|
|
27
|
-
22: { message: "
|
|
28
|
-
23: { message: "
|
|
29
|
-
24: { message: "
|
|
30
|
+
7: { message: "InsufficientZroFee" },
|
|
31
|
+
8: { message: "InvalidFeeAmount" },
|
|
32
|
+
9: { message: "InvalidExpiry" },
|
|
33
|
+
10: { message: "InvalidIndex" },
|
|
34
|
+
11: { message: "InvalidNonce" },
|
|
35
|
+
12: { message: "InvalidPayloadHash" },
|
|
36
|
+
13: { message: "InvalidReceiveLibrary" },
|
|
37
|
+
14: { message: "OnlyNonDefaultLib" },
|
|
38
|
+
15: { message: "OnlyReceiveLib" },
|
|
39
|
+
16: { message: "OnlyRegisteredLib" },
|
|
40
|
+
17: { message: "OnlySendLib" },
|
|
41
|
+
18: { message: "PathNotInitializable" },
|
|
42
|
+
19: { message: "PathNotVerifiable" },
|
|
43
|
+
20: { message: "PayloadHashNotFound" },
|
|
44
|
+
21: { message: "SameValue" },
|
|
45
|
+
22: { message: "Unauthorized" },
|
|
46
|
+
23: { message: "UnsupportedEid" },
|
|
47
|
+
24: { message: "ZeroZroFee" },
|
|
48
|
+
25: { message: "ZroUnavailable" }
|
|
30
49
|
};
|
|
31
50
|
export const ExecutorError = {
|
|
32
51
|
1: { message: "EidNotSupported" },
|
|
33
52
|
2: { message: "Unauthorized" },
|
|
34
53
|
3: { message: "UnauthorizedContext" }
|
|
35
54
|
};
|
|
55
|
+
/**
|
|
56
|
+
* PacketCodecV1Error: 1100-1109
|
|
57
|
+
*/
|
|
36
58
|
export const PacketCodecV1Error = {
|
|
37
|
-
|
|
38
|
-
|
|
59
|
+
1100: { message: "InvalidPacketHeader" },
|
|
60
|
+
1101: { message: "InvalidPacketVersion" }
|
|
39
61
|
};
|
|
62
|
+
/**
|
|
63
|
+
* WorkerOptionsError: 1110-1119
|
|
64
|
+
*/
|
|
40
65
|
export const WorkerOptionsError = {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
66
|
+
1110: { message: "InvalidBytesLength" },
|
|
67
|
+
1111: { message: "InvalidLegacyOptionsType1" },
|
|
68
|
+
1112: { message: "InvalidLegacyOptionsType2" },
|
|
69
|
+
1113: { message: "InvalidOptionType" },
|
|
70
|
+
1114: { message: "InvalidOptions" },
|
|
71
|
+
1115: { message: "InvalidWorkerId" },
|
|
72
|
+
1116: { message: "LegacyOptionsType1GasOverflow" },
|
|
73
|
+
1117: { message: "LegacyOptionsType2AmountOverflow" },
|
|
74
|
+
1118: { message: "LegacyOptionsType2GasOverflow" }
|
|
50
75
|
};
|
|
76
|
+
/**
|
|
77
|
+
* BufferReaderError: 1000-1009
|
|
78
|
+
*/
|
|
51
79
|
export const BufferReaderError = {
|
|
52
80
|
1000: { message: "InvalidLength" },
|
|
53
81
|
1001: { message: "InvalidAddressPayload" }
|
|
54
82
|
};
|
|
83
|
+
/**
|
|
84
|
+
* BufferWriterError: 1010-1019
|
|
85
|
+
*/
|
|
55
86
|
export const BufferWriterError = {
|
|
56
|
-
|
|
87
|
+
1010: { message: "InvalidAddressPayload" }
|
|
57
88
|
};
|
|
89
|
+
/**
|
|
90
|
+
* TtlConfigurableError: 1020-1029
|
|
91
|
+
*/
|
|
58
92
|
export const TtlConfigurableError = {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
93
|
+
1020: { message: "InvalidTtlConfig" },
|
|
94
|
+
1021: { message: "TtlConfigFrozen" },
|
|
95
|
+
1022: { message: "TtlConfigAlreadyFrozen" }
|
|
62
96
|
};
|
|
97
|
+
/**
|
|
98
|
+
* OwnableError: 1030-1039
|
|
99
|
+
*/
|
|
63
100
|
export const OwnableError = {
|
|
64
|
-
|
|
65
|
-
|
|
101
|
+
1030: { message: "InvalidPendingOwner" },
|
|
102
|
+
1031: { message: "InvalidTtl" },
|
|
103
|
+
1032: { message: "NoPendingTransfer" },
|
|
104
|
+
1033: { message: "OwnerAlreadySet" },
|
|
105
|
+
1034: { message: "OwnerNotSet" },
|
|
106
|
+
1035: { message: "TransferInProgress" }
|
|
66
107
|
};
|
|
108
|
+
/**
|
|
109
|
+
* BytesExtError: 1040-1049
|
|
110
|
+
*/
|
|
67
111
|
export const BytesExtError = {
|
|
68
|
-
|
|
112
|
+
1040: { message: "LengthMismatch" }
|
|
69
113
|
};
|
|
114
|
+
/**
|
|
115
|
+
* UpgradeableError: 1050-1059
|
|
116
|
+
*/
|
|
70
117
|
export const UpgradeableError = {
|
|
71
|
-
|
|
118
|
+
1050: { message: "MigrationNotAllowed" }
|
|
119
|
+
};
|
|
120
|
+
/**
|
|
121
|
+
* MultisigError: 1060-1069
|
|
122
|
+
*/
|
|
123
|
+
export const MultisigError = {
|
|
124
|
+
1060: { message: "AlreadyInitialized" },
|
|
125
|
+
1061: { message: "InvalidSigner" },
|
|
126
|
+
1062: { message: "SignatureError" },
|
|
127
|
+
1063: { message: "SignerAlreadyExists" },
|
|
128
|
+
1064: { message: "SignerNotFound" },
|
|
129
|
+
1065: { message: "TotalSignersLessThanThreshold" },
|
|
130
|
+
1066: { message: "UnsortedSigners" },
|
|
131
|
+
1067: { message: "ZeroThreshold" }
|
|
72
132
|
};
|
|
133
|
+
/**
|
|
134
|
+
* WorkerError: 1200-1299
|
|
135
|
+
*/
|
|
73
136
|
export const WorkerError = {
|
|
74
137
|
1200: { message: "AdminAlreadyExists" },
|
|
75
138
|
1201: { message: "AdminNotFound" },
|
|
@@ -101,16 +164,18 @@ export class Client extends ContractClient {
|
|
|
101
164
|
constructor(options) {
|
|
102
165
|
super(new ContractSpec(["AAAAAQAAACZQYXJhbWV0ZXJzIGZvciBgbHpfcmVjZWl2ZWAgZXhlY3V0aW9uLgAAAAAAAAAAAA9FeGVjdXRpb25QYXJhbXMAAAAABwAAAAAAAAAKZXh0cmFfZGF0YQAAAAAADgAAAAAAAAAJZ2FzX2xpbWl0AAAAAAAACwAAAAAAAAAEZ3VpZAAAA+4AAAAgAAAAAAAAAAdtZXNzYWdlAAAAAA4AAAAAAAAABm9yaWdpbgAAAAAH0AAAAAZPcmlnaW4AAAAAAAAAAAAIcmVjZWl2ZXIAAAATAAAAAAAAAAV2YWx1ZQAAAAAAAAs=",
|
|
103
166
|
"AAAAAQAAACZQYXJhbWV0ZXJzIGZvciBgbHpfY29tcG9zZWAgZXhlY3V0aW9uLgAAAAAAAAAAAA1Db21wb3NlUGFyYW1zAAAAAAAACAAAAAAAAAAKZXh0cmFfZGF0YQAAAAAADgAAAAAAAAAEZnJvbQAAABMAAAAAAAAACWdhc19saW1pdAAAAAAAAAsAAAAAAAAABGd1aWQAAAPuAAAAIAAAAAAAAAAFaW5kZXgAAAAAAAAEAAAAAAAAAAdtZXNzYWdlAAAAAA4AAAAAAAAAAnRvAAAAAAATAAAAAAAAAAV2YWx1ZQAAAAAAAAs=",
|
|
104
|
-
"
|
|
105
|
-
"
|
|
167
|
+
"AAAAAAAAAChFeGVjdXRlcyBgbHpfcmVjZWl2ZWAgb24gdGhlIHRhcmdldCBPQXBwAAAAB2V4ZWN1dGUAAAAAAwAAAAAAAAAIZXhlY3V0b3IAAAATAAAAAAAAAAZwYXJhbXMAAAAAB9AAAAAPRXhlY3V0aW9uUGFyYW1zAAAAAAAAAAALdmFsdWVfcGF5ZXIAAAAAEwAAAAA=",
|
|
168
|
+
"AAAAAAAAAEFSZWNvcmRzIGEgZmFpbGVkIGBsel9yZWNlaXZlYCBleGVjdXRpb24gZm9yIG9mZi1jaGFpbiBwcm9jZXNzaW5nLgAAAAAAABBsel9yZWNlaXZlX2FsZXJ0AAAAAwAAAAAAAAAIZXhlY3V0b3IAAAATAAAAAAAAAAZwYXJhbXMAAAAAB9AAAAAPRXhlY3V0aW9uUGFyYW1zAAAAAAAAAAAGcmVhc29uAAAAAAAOAAAAAA==",
|
|
169
|
+
"AAAAAAAAACxFeGVjdXRlcyBgbHpfY29tcG9zZWAgb24gdGhlIHRhcmdldCBjb21wb3NlcgAAAAdjb21wb3NlAAAAAAMAAAAAAAAACGV4ZWN1dG9yAAAAEwAAAAAAAAAGcGFyYW1zAAAAAAfQAAAADUNvbXBvc2VQYXJhbXMAAAAAAAAAAAAAC3ZhbHVlX3BheWVyAAAAABMAAAAA",
|
|
170
|
+
"AAAAAAAAAEFSZWNvcmRzIGEgZmFpbGVkIGBsel9jb21wb3NlYCBleGVjdXRpb24gZm9yIG9mZi1jaGFpbiBwcm9jZXNzaW5nLgAAAAAAABBsel9jb21wb3NlX2FsZXJ0AAAAAwAAAAAAAAAIZXhlY3V0b3IAAAATAAAAAAAAAAZwYXJhbXMAAAAAB9AAAAANQ29tcG9zZVBhcmFtcwAAAAAAAAAAAAAGcmVhc29uAAAAAAAOAAAAAA==",
|
|
106
171
|
"AAAAAAAAADFEZWxlZ2F0ZXMgYG5hdGl2ZV9kcm9wYCB0byB0aGUgZXhlY3V0b3IgY29udHJhY3QuAAAAAAAAC25hdGl2ZV9kcm9wAAAAAAYAAAAAAAAACGV4ZWN1dG9yAAAAEwAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAAAAAAAB2RzdF9laWQAAAAABAAAAAAAAAAEb2FwcAAAABMAAAAAAAAABnBhcmFtcwAAAAAD6gAAB9AAAAAQTmF0aXZlRHJvcFBhcmFtcwAAAAA=",
|
|
107
172
|
"AAAAAAAAADBFeGVjdXRlcyBgbmF0aXZlX2Ryb3BgIGZvbGxvd2VkIGJ5IGBsel9yZWNlaXZlYC4AAAAXbmF0aXZlX2Ryb3BfYW5kX2V4ZWN1dGUAAAAABwAAAAAAAAAIZXhlY3V0b3IAAAATAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAABm9yaWdpbgAAAAAH0AAAAAZPcmlnaW4AAAAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAARvYXBwAAAAEwAAAAAAAAASbmF0aXZlX2Ryb3BfcGFyYW1zAAAAAAPqAAAH0AAAABBOYXRpdmVEcm9wUGFyYW1zAAAAAAAAAA5leGVjdXRlX3BhcmFtcwAAAAAH0AAAAA9FeGVjdXRpb25QYXJhbXMAAAAAAA==",
|
|
108
|
-
"
|
|
173
|
+
"AAAABAAAAAAAAAAAAAAADUVuZHBvaW50RXJyb3IAAAAAAAAZAAAAAAAAABFBbHJlYWR5UmVnaXN0ZXJlZAAAAAAAAAEAAAAAAAAADUNvbXBvc2VFeGlzdHMAAAAAAAACAAAAAAAAAA9Db21wb3NlTm90Rm91bmQAAAAAAwAAAAAAAAAcRGVmYXVsdFJlY2VpdmVMaWJVbmF2YWlsYWJsZQAAAAQAAAAAAAAAGURlZmF1bHRTZW5kTGliVW5hdmFpbGFibGUAAAAAAAAFAAAAAAAAABVJbnN1ZmZpY2llbnROYXRpdmVGZWUAAAAAAAAGAAAAAAAAABJJbnN1ZmZpY2llbnRacm9GZWUAAAAAAAcAAAAAAAAAEEludmFsaWRGZWVBbW91bnQAAAAIAAAAAAAAAA1JbnZhbGlkRXhwaXJ5AAAAAAAACQAAAAAAAAAMSW52YWxpZEluZGV4AAAACgAAAAAAAAAMSW52YWxpZE5vbmNlAAAACwAAAAAAAAASSW52YWxpZFBheWxvYWRIYXNoAAAAAAAMAAAAAAAAABVJbnZhbGlkUmVjZWl2ZUxpYnJhcnkAAAAAAAANAAAAAAAAABFPbmx5Tm9uRGVmYXVsdExpYgAAAAAAAA4AAAAAAAAADk9ubHlSZWNlaXZlTGliAAAAAAAPAAAAAAAAABFPbmx5UmVnaXN0ZXJlZExpYgAAAAAAABAAAAAAAAAAC09ubHlTZW5kTGliAAAAABEAAAAAAAAAFFBhdGhOb3RJbml0aWFsaXphYmxlAAAAEgAAAAAAAAARUGF0aE5vdFZlcmlmaWFibGUAAAAAAAATAAAAAAAAABNQYXlsb2FkSGFzaE5vdEZvdW5kAAAAABQAAAAAAAAACVNhbWVWYWx1ZQAAAAAAABUAAAAAAAAADFVuYXV0aG9yaXplZAAAABYAAAAAAAAADlVuc3VwcG9ydGVkRWlkAAAAAAAXAAAAAAAAAApaZXJvWnJvRmVlAAAAAAAYAAAAAAAAAA5acm9VbmF2YWlsYWJsZQAAAAAAGQ==",
|
|
109
174
|
"AAAABQAAAAAAAAAAAAAAClBhY2tldFNlbnQAAAAAAAEAAAALcGFja2V0X3NlbnQAAAAAAwAAAAAAAAAOZW5jb2RlZF9wYWNrZXQAAAAAAA4AAAAAAAAAAAAAAAdvcHRpb25zAAAAAA4AAAAAAAAAAAAAAAxzZW5kX2xpYnJhcnkAAAATAAAAAAAAAAI=",
|
|
110
175
|
"AAAABQAAAAAAAAAAAAAADlBhY2tldFZlcmlmaWVkAAAAAAABAAAAD3BhY2tldF92ZXJpZmllZAAAAAADAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAABAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAAxwYXlsb2FkX2hhc2gAAAPuAAAAIAAAAAAAAAAC",
|
|
111
176
|
"AAAABQAAAAAAAAAAAAAAD1BhY2tldERlbGl2ZXJlZAAAAAABAAAAEHBhY2tldF9kZWxpdmVyZWQAAAACAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAABAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAg==",
|
|
112
177
|
"AAAABQAAAAAAAAAAAAAADkx6UmVjZWl2ZUFsZXJ0AAAAAAABAAAAEGx6X3JlY2VpdmVfYWxlcnQAAAAJAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAAhleGVjdXRvcgAAABMAAAABAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAABAAAAAAAAAARndWlkAAAD7gAAACAAAAABAAAAAAAAAANnYXMAAAAACwAAAAAAAAAAAAAABXZhbHVlAAAAAAAACwAAAAAAAAAAAAAAB21lc3NhZ2UAAAAADgAAAAAAAAAAAAAACmV4dHJhX2RhdGEAAAAAAA4AAAAAAAAAAAAAAAZyZWFzb24AAAAAAA4AAAAAAAAAAg==",
|
|
113
|
-
"
|
|
178
|
+
"AAAABQAAAAAAAAAAAAAABlpyb1NldAAAAAAAAQAAAAd6cm9fc2V0AAAAAAEAAAAAAAAAA3pybwAAAAATAAAAAAAAAAI=",
|
|
114
179
|
"AAAABQAAAAAAAAAAAAAAC0RlbGVnYXRlU2V0AAAAAAEAAAAMZGVsZWdhdGVfc2V0AAAAAgAAAAAAAAAEb2FwcAAAABMAAAABAAAAAAAAAAhkZWxlZ2F0ZQAAA+gAAAATAAAAAAAAAAI=",
|
|
115
180
|
"AAAABQAAAAAAAAAAAAAAE0luYm91bmROb25jZVNraXBwZWQAAAAAAQAAABVpbmJvdW5kX25vbmNlX3NraXBwZWQAAAAAAAAEAAAAAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAAAAAAAZzZW5kZXIAAAAAA+4AAAAgAAAAAQAAAAAAAAAIcmVjZWl2ZXIAAAATAAAAAQAAAAAAAAAFbm9uY2UAAAAAAAAGAAAAAQAAAAI=",
|
|
116
181
|
"AAAABQAAAAAAAAAAAAAADlBhY2tldE5pbGlmaWVkAAAAAAABAAAAD3BhY2tldF9uaWxpZmllZAAAAAAFAAAAAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAAAAAAAZzZW5kZXIAAAAAA+4AAAAgAAAAAQAAAAAAAAAIcmVjZWl2ZXIAAAATAAAAAQAAAAAAAAAFbm9uY2UAAAAAAAAGAAAAAQAAAAAAAAAMcGF5bG9hZF9oYXNoAAAD6AAAA+4AAAAgAAAAAAAAAAI=",
|
|
@@ -143,23 +208,28 @@ export class Client extends ContractClient {
|
|
|
143
208
|
"AAAAAQAAANtEZXN0aW5hdGlvbiBjaGFpbiBjb25maWd1cmF0aW9uIGZvciBleGVjdXRvciBmZWUgY2FsY3VsYXRpb24uCgpDb250YWlucyBnYXMgY29zdHMgYW5kIGZlZSBwYXJhbWV0ZXJzIHNwZWNpZmljIHRvIGVhY2ggZGVzdGluYXRpb24gY2hhaW4uClRoZXNlIHBhcmFtZXRlcnMgYXJlIHVzZWQgYnkgdGhlIGZlZSBsaWJyYXJ5IHRvIGNhbGN1bGF0ZSBhY2N1cmF0ZSBleGVjdXRpb24gZmVlcy4AAAAAAAAAAAlEc3RDb25maWcAAAAAAAAFAAAAO01pbmltdW0gZmVlIG1hcmdpbiBpbiBVU0QgKHNjYWxlZCkgdG8gZW5zdXJlIHByb2ZpdGFiaWxpdHkuAAAAABBmbG9vcl9tYXJnaW5fdXNkAAAACgAAADpCYXNlIGdhcyBjb3N0IHBlciBsekNvbXBvc2UgY2FsbCBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAAAAATbHpfY29tcG9zZV9iYXNlX2dhcwAAAAAGAAAAP0Jhc2UgZ2FzIGNvc3QgZm9yIGx6UmVjZWl2ZSBleGVjdXRpb24gb24gdGhlIGRlc3RpbmF0aW9uIGNoYWluLgAAAAATbHpfcmVjZWl2ZV9iYXNlX2dhcwAAAAAGAAAAUUZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cyBmb3IgdGhpcyBkZXN0aW5hdGlvbiAoMCA9IHVzZSBkZWZhdWx0IG11bHRpcGxpZXIpLgAAAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAAEZNYXhpbXVtIG5hdGl2ZSB0b2tlbiB2YWx1ZSB0aGF0IGNhbiBiZSB0cmFuc2ZlcnJlZCB0byB0aGUgZGVzdGluYXRpb24uAAAAAAAKbmF0aXZlX2NhcAAAAAAACg==",
|
|
144
209
|
"AAAAAQAAAHxQYXJhbWV0ZXJzIGZvciBzZXR0aW5nIGRlc3RpbmF0aW9uIGNvbmZpZ3VyYXRpb24uCgpVc2VkIHdoZW4gY29uZmlndXJpbmcgZXhlY3V0b3Igc2V0dGluZ3MgZm9yIGEgc3BlY2lmaWMgZGVzdGluYXRpb24gY2hhaW4uAAAAAAAAABFTZXREc3RDb25maWdQYXJhbQAAAAAAAAIAAAAoQ29uZmlndXJhdGlvbiBmb3IgdGhlIGRlc3RpbmF0aW9uIGNoYWluLgAAAApkc3RfY29uZmlnAAAAAAfQAAAACURzdENvbmZpZwAAAAAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQ=",
|
|
145
210
|
"AAAAAQAAAGhQYXJhbWV0ZXJzIGZvciBhIG5hdGl2ZSB0b2tlbiBkcm9wLgoKVXNlZCB0byBzcGVjaWZ5IG5hdGl2ZSB0b2tlbiB0cmFuc2ZlcnMgYXMgcGFydCBvZiBleGVjdXRvciBvcHRpb25zLgAAAAAAAAAQTmF0aXZlRHJvcFBhcmFtcwAAAAIAAAAkQW1vdW50IG9mIG5hdGl2ZSB0b2tlbnMgdG8gdHJhbnNmZXIuAAAABmFtb3VudAAAAAAACwAAAC9SZWNlaXZlciBhZGRyZXNzIGZvciB0aGUgbmF0aXZlIHRva2VuIHRyYW5zZmVyLgAAAAAIcmVjZWl2ZXIAAAAT",
|
|
146
|
-
"
|
|
147
|
-
"
|
|
148
|
-
"
|
|
149
|
-
"
|
|
150
|
-
"
|
|
151
|
-
"
|
|
152
|
-
"
|
|
153
|
-
"
|
|
154
|
-
"
|
|
211
|
+
"AAAABAAAAB1QYWNrZXRDb2RlY1YxRXJyb3I6IDExMDAtMTEwOQAAAAAAAAAAAAASUGFja2V0Q29kZWNWMUVycm9yAAAAAAACAAAAAAAAABNJbnZhbGlkUGFja2V0SGVhZGVyAAAABEwAAAAAAAAAFEludmFsaWRQYWNrZXRWZXJzaW9uAAAETQ==",
|
|
212
|
+
"AAAABAAAAB1Xb3JrZXJPcHRpb25zRXJyb3I6IDExMTAtMTExOQAAAAAAAAAAAAASV29ya2VyT3B0aW9uc0Vycm9yAAAAAAAJAAAAAAAAABJJbnZhbGlkQnl0ZXNMZW5ndGgAAAAABFYAAAAAAAAAGUludmFsaWRMZWdhY3lPcHRpb25zVHlwZTEAAAAAAARXAAAAAAAAABlJbnZhbGlkTGVnYWN5T3B0aW9uc1R5cGUyAAAAAAAEWAAAAAAAAAARSW52YWxpZE9wdGlvblR5cGUAAAAAAARZAAAAAAAAAA5JbnZhbGlkT3B0aW9ucwAAAAAEWgAAAAAAAAAPSW52YWxpZFdvcmtlcklkAAAABFsAAAAAAAAAHUxlZ2FjeU9wdGlvbnNUeXBlMUdhc092ZXJmbG93AAAAAAAEXAAAAAAAAAAgTGVnYWN5T3B0aW9uc1R5cGUyQW1vdW50T3ZlcmZsb3cAAARdAAAAAAAAAB1MZWdhY3lPcHRpb25zVHlwZTJHYXNPdmVyZmxvdwAAAAAABF4=",
|
|
213
|
+
"AAAABAAAABxCdWZmZXJSZWFkZXJFcnJvcjogMTAwMC0xMDA5AAAAAAAAABFCdWZmZXJSZWFkZXJFcnJvcgAAAAAAAAIAAAAAAAAADUludmFsaWRMZW5ndGgAAAAAAAPoAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPp",
|
|
214
|
+
"AAAABAAAABxCdWZmZXJXcml0ZXJFcnJvcjogMTAxMC0xMDE5AAAAAAAAABFCdWZmZXJXcml0ZXJFcnJvcgAAAAAAAAEAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA/I=",
|
|
215
|
+
"AAAABAAAAB9UdGxDb25maWd1cmFibGVFcnJvcjogMTAyMC0xMDI5AAAAAAAAAAAUVHRsQ29uZmlndXJhYmxlRXJyb3IAAAADAAAAAAAAABBJbnZhbGlkVHRsQ29uZmlnAAAD/AAAAAAAAAAPVHRsQ29uZmlnRnJvemVuAAAAA/0AAAAAAAAAFlR0bENvbmZpZ0FscmVhZHlGcm96ZW4AAAAAA/4=",
|
|
216
|
+
"AAAABAAAABdPd25hYmxlRXJyb3I6IDEwMzAtMTAzOQAAAAAAAAAADE93bmFibGVFcnJvcgAAAAYAAAAAAAAAE0ludmFsaWRQZW5kaW5nT3duZXIAAAAEBgAAAAAAAAAKSW52YWxpZFR0bAAAAAAEBwAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAQIAAAAAAAAAA9Pd25lckFscmVhZHlTZXQAAAAECQAAAAAAAAALT3duZXJOb3RTZXQAAAAECgAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAQL",
|
|
217
|
+
"AAAABAAAABhCeXRlc0V4dEVycm9yOiAxMDQwLTEwNDkAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAEEA==",
|
|
218
|
+
"AAAABAAAABtVcGdyYWRlYWJsZUVycm9yOiAxMDUwLTEwNTkAAAAAAAAAABBVcGdyYWRlYWJsZUVycm9yAAAAAQAAAAAAAAATTWlncmF0aW9uTm90QWxsb3dlZAAAAAQa",
|
|
219
|
+
"AAAABAAAABhNdWx0aXNpZ0Vycm9yOiAxMDYwLTEwNjkAAAAAAAAADU11bHRpc2lnRXJyb3IAAAAAAAAIAAAAAAAAABJBbHJlYWR5SW5pdGlhbGl6ZWQAAAAABCQAAAAAAAAADUludmFsaWRTaWduZXIAAAAAAAQlAAAAAAAAAA5TaWduYXR1cmVFcnJvcgAAAAAEJgAAAAAAAAATU2lnbmVyQWxyZWFkeUV4aXN0cwAAAAQnAAAAAAAAAA5TaWduZXJOb3RGb3VuZAAAAAAEKAAAAAAAAAAdVG90YWxTaWduZXJzTGVzc1RoYW5UaHJlc2hvbGQAAAAAAAQpAAAAAAAAAA9VbnNvcnRlZFNpZ25lcnMAAAAEKgAAAAAAAAANWmVyb1RocmVzaG9sZAAAAAAABCs=",
|
|
220
|
+
"AAAABQAAADBFdmVudCBlbWl0dGVkIHdoZW4gYSBzaWduZXIgaXMgYWRkZWQgb3IgcmVtb3ZlZC4AAAAAAAAACVNpZ25lclNldAAAAAAAAAEAAAAKc2lnbmVyX3NldAAAAAAAAgAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAAC",
|
|
221
|
+
"AAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHNpZ25hdHVyZSB0aHJlc2hvbGQgaXMgY2hhbmdlZC4AAAAAAAAAAAAMVGhyZXNob2xkU2V0AAAAAQAAAA10aHJlc2hvbGRfc2V0AAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAAC",
|
|
222
|
+
"AAAAAgAAAAAAAAAAAAAAD011bHRpc2lnU3RvcmFnZQAAAAACAAAAAAAAAAAAAAAHU2lnbmVycwAAAAAAAAAAAAAAAAlUaHJlc2hvbGQAAAA=",
|
|
223
|
+
"AAAABQAAAFdFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkIChib3RoIHNpbmdsZS1zdGVwIGFuZCB0d28tc3RlcCBjb21wbGV0aW9uKS4AAAAAAAAAABRPd25lcnNoaXBUcmFuc2ZlcnJlZAAAAAEAAAAVb3duZXJzaGlwX3RyYW5zZmVycmVkAAAAAAAAAgAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAg==",
|
|
224
|
+
"AAAABQAAADtFdmVudCBlbWl0dGVkIHdoZW4gYSAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyIGlzIHByb3Bvc2VkLgAAAAAAAAAAFU93bmVyc2hpcFRyYW5zZmVycmluZwAAAAAAAAEAAAAWb3duZXJzaGlwX3RyYW5zZmVycmluZwAAAAAAAwAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAAAN0dGwAAAAABAAAAAAAAAAC",
|
|
155
225
|
"AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHJlbm91bmNlZC4AAAAAAAAAAAAST3duZXJzaGlwUmVub3VuY2VkAAAAAAABAAAAE293bmVyc2hpcF9yZW5vdW5jZWQAAAAAAQAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAC",
|
|
156
|
-
"
|
|
226
|
+
"AAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAFT3duZXIAAAAAAAAAAAAAAAAAAAxQZW5kaW5nT3duZXI=",
|
|
157
227
|
"AAAAAQAAAElUVEwgY29uZmlndXJhdGlvbjogdGhyZXNob2xkICh3aGVuIHRvIGV4dGVuZCkgYW5kIGV4dGVuZF90byAodGFyZ2V0IFRUTCkuAAAAAAAAAAAAAAlUdGxDb25maWcAAAAAAAACAAAAKFRhcmdldCBUVEwgYWZ0ZXIgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAJZXh0ZW5kX3RvAAAAAAAABAAAADNUVEwgdGhyZXNob2xkIHRoYXQgdHJpZ2dlcnMgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAACXRocmVzaG9sZAAAAAAAAAQ=",
|
|
158
228
|
"AAAABQAAACdFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIHNldC4AAAAAAAAAAA1UdGxDb25maWdzU2V0AAAAAAAAAQAAAA90dGxfY29uZmlnc19zZXQAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAg==",
|
|
159
229
|
"AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAAAAAAAAQVHRsQ29uZmlnc0Zyb3plbgAAAAEAAAASdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAg==",
|
|
160
230
|
"AAAAAgAAAAAAAAAAAAAAEFR0bENvbmZpZ1N0b3JhZ2UAAAADAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAhJbnN0YW5jZQAAAAAAAAAAAAAAClBlcnNpc3RlbnQAAA==",
|
|
161
231
|
"AAAAAgAAAAAAAAAAAAAAElVwZ3JhZGVhYmxlU3RvcmFnZQAAAAAAAQAAAAAAAAAAAAAACU1pZ3JhdGluZwAAAA==",
|
|
162
|
-
"
|
|
232
|
+
"AAAABAAAABZXb3JrZXJFcnJvcjogMTIwMC0xMjk5AAAAAAAAAAAAC1dvcmtlckVycm9yAAAAABMAAAAAAAAAEkFkbWluQWxyZWFkeUV4aXN0cwAAAAAEsAAAAAAAAAANQWRtaW5Ob3RGb3VuZAAAAAAABLEAAAAAAAAAEkFscmVhZHlPbkFsbG93bGlzdAAAAAAEsgAAAAAAAAARQWxyZWFkeU9uRGVueWxpc3QAAAAAAASzAAAAAAAAABtBdHRlbXB0aW5nVG9SZW1vdmVPbmx5QWRtaW4AAAAEtAAAAAAAAAAURGVwb3NpdEFkZHJlc3NOb3RTZXQAAAS1AAAAAAAAABpNZXNzYWdlTGliQWxyZWFkeVN1cHBvcnRlZAAAAAAEtgAAAAAAAAAWTWVzc2FnZUxpYk5vdFN1cHBvcnRlZAAAAAAEtwAAAAAAAAAQTm9BZG1pbnNQcm92aWRlZAAABLgAAAAAAAAACk5vdEFsbG93ZWQAAAAABLkAAAAAAAAADk5vdE9uQWxsb3dsaXN0AAAAAAS6AAAAAAAAAA1Ob3RPbkRlbnlsaXN0AAAAAAAEuwAAAAAAAAAUUGF1c2VTdGF0dXNVbmNoYW5nZWQAAAS8AAAAAAAAAA9QcmljZUZlZWROb3RTZXQAAAAEvQAAAAAAAAAMUmVJbml0aWFsaXplAAAEvgAAAAAAAAAMVW5hdXRob3JpemVkAAAEvwAAAAAAAAAVVW5zdXBwb3J0ZWRNZXNzYWdlTGliAAAAAAAEwAAAAAAAAAASV29ya2VyRmVlTGliTm90U2V0AAAAAATBAAAAAAAAAA5Xb3JrZXJJc1BhdXNlZAAAAAAEwg==",
|
|
163
233
|
"AAAABQAAAAAAAAAAAAAACFNldEFkbWluAAAAAQAAAAlzZXRfYWRtaW4AAAAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAg==",
|
|
164
234
|
"AAAABQAAAAAAAAAAAAAAFlNldFN1cHBvcnRlZE1lc3NhZ2VMaWIAAAAAAAEAAAAZc2V0X3N1cHBvcnRlZF9tZXNzYWdlX2xpYgAAAAAAAAIAAAAAAAAAC21lc3NhZ2VfbGliAAAAABMAAAAAAAAAAAAAAAlzdXBwb3J0ZWQAAAAAAAABAAAAAAAAAAI=",
|
|
165
235
|
"AAAABQAAAAAAAAAAAAAADFNldEFsbG93bGlzdAAAAAEAAAANc2V0X2FsbG93bGlzdAAAAAAAAAIAAAAAAAAABG9hcHAAAAATAAAAAAAAAAAAAAAHYWxsb3dlZAAAAAABAAAAAAAAAAI=",
|
|
@@ -180,7 +250,9 @@ export class Client extends ContractClient {
|
|
|
180
250
|
}
|
|
181
251
|
fromJSON = {
|
|
182
252
|
execute: (this.txFromJSON),
|
|
253
|
+
lz_receive_alert: (this.txFromJSON),
|
|
183
254
|
compose: (this.txFromJSON),
|
|
255
|
+
lz_compose_alert: (this.txFromJSON),
|
|
184
256
|
native_drop: (this.txFromJSON),
|
|
185
257
|
native_drop_and_execute: (this.txFromJSON)
|
|
186
258
|
};
|