@layerzerolabs/protocol-stellar-v2 0.2.20 → 0.2.22
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 +783 -802
- package/.turbo/turbo-lint.log +320 -157
- package/.turbo/turbo-test.log +1414 -1457
- package/Cargo.lock +109 -108
- package/Cargo.toml +32 -18
- package/contracts/common-macros/Cargo.toml +7 -7
- package/contracts/common-macros/src/auth.rs +18 -37
- package/contracts/common-macros/src/contract_ttl.rs +2 -2
- package/contracts/common-macros/src/lib.rs +27 -10
- package/contracts/common-macros/src/lz_contract.rs +38 -7
- package/contracts/common-macros/src/storage.rs +251 -292
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_multisig_code.snap +6 -12
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_ownable_code.snap +12 -17
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_configurable__snapshot_generated_ttl_configurable_code.snap +2 -7
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +20 -9
- package/contracts/common-macros/src/tests/upgradeable.rs +26 -4
- package/contracts/common-macros/src/ttl_configurable.rs +2 -10
- package/contracts/common-macros/src/ttl_extendable.rs +2 -10
- package/contracts/common-macros/src/upgradeable.rs +56 -15
- package/contracts/common-macros/src/utils.rs +0 -9
- package/contracts/endpoint-v2/src/lib.rs +3 -2
- package/contracts/endpoint-v2/src/tests/endpoint_v2/clear.rs +2 -2
- package/contracts/endpoint-v2/src/tests/endpoint_v2/lz_receive_alert.rs +3 -3
- package/contracts/endpoint-v2/src/tests/endpoint_v2/send.rs +4 -4
- package/contracts/endpoint-v2/src/tests/endpoint_v2/set_delegate.rs +17 -5
- package/contracts/endpoint-v2/src/tests/endpoint_v2/set_zro.rs +4 -4
- package/contracts/endpoint-v2/src/tests/endpoint_v2/verify.rs +2 -2
- package/contracts/endpoint-v2/src/tests/message_lib_manager/register_library.rs +2 -2
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_lib_timeout.rs +6 -6
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_library.rs +67 -37
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_send_library.rs +5 -5
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library.rs +44 -54
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library_timeout.rs +7 -7
- package/contracts/endpoint-v2/src/tests/message_lib_manager/set_send_library.rs +8 -8
- package/contracts/endpoint-v2/src/tests/messaging_channel/burn.rs +3 -3
- package/contracts/endpoint-v2/src/tests/messaging_channel/nilify.rs +4 -4
- package/contracts/endpoint-v2/src/tests/messaging_channel/skip.rs +3 -3
- package/contracts/endpoint-v2/src/tests/messaging_composer/clear_compose.rs +2 -2
- package/contracts/endpoint-v2/src/tests/messaging_composer/lz_compose_alert.rs +3 -3
- package/contracts/endpoint-v2/src/tests/messaging_composer/send_compose.rs +2 -2
- package/contracts/layerzero-views/Cargo.toml +0 -1
- package/contracts/layerzero-views/src/layerzero_view.rs +1 -13
- package/contracts/macro-integration-tests/Cargo.toml +5 -15
- package/contracts/macro-integration-tests/tests/runtime/oapp/mod.rs +48 -0
- package/contracts/macro-integration-tests/tests/runtime/oapp/oapp_core.rs +170 -0
- package/contracts/macro-integration-tests/tests/runtime/oapp/options_type3.rs +154 -0
- package/contracts/macro-integration-tests/tests/runtime/oapp/receiver.rs +338 -0
- package/contracts/macro-integration-tests/tests/runtime/oapp/sender.rs +435 -0
- package/contracts/macro-integration-tests/tests/runtime.rs +1 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/custom_wrong_value.rs +8 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/custom_wrong_value.stderr +5 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_lz_receive_internal.rs +8 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_lz_receive_internal.stderr +71 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/non_struct_input.rs +10 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/non_struct_input.stderr +5 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/unknown_custom_option.rs +8 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/unknown_custom_option.stderr +5 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/wrong_key.rs +8 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/fail/wrong_key.stderr +5 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/pass/custom_all.rs +38 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/pass/custom_single_trait.rs +96 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/pass/minimal_contract.rs +64 -0
- package/contracts/macro-integration-tests/tests/ui/oapp/pass/struct_with_fields.rs +46 -0
- package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_env.stderr +8 -0
- package/contracts/macro-integration-tests/tests/ui/ownable/pass/namespacing_and_imports.rs +1 -1
- package/contracts/macro-integration-tests/tests/ui/ownable/pass/only_auth_env_param_variants.rs +1 -1
- package/contracts/macro-integration-tests/tests/ui_oapp.rs +11 -0
- package/contracts/message-libs/message-lib-common/Cargo.toml +0 -1
- package/contracts/message-libs/message-lib-common/src/errors.rs +1 -1
- package/contracts/message-libs/treasury/Cargo.toml +0 -2
- package/contracts/message-libs/treasury/src/tests/treasury_tests.rs +2 -2
- package/contracts/message-libs/uln-302/src/tests/receive_uln302/effective_receive_uln_config.rs +2 -2
- package/contracts/message-libs/uln-302/src/tests/receive_uln302/set_default_receive_uln_configs.rs +2 -2
- package/contracts/message-libs/uln-302/src/tests/receive_uln302/verify.rs +2 -2
- package/contracts/message-libs/uln-302/src/tests/send_uln302/effective_executor_config.rs +2 -2
- package/contracts/message-libs/uln-302/src/tests/send_uln302/effective_send_uln_config.rs +2 -2
- package/contracts/message-libs/uln-302/src/tests/send_uln302/send.rs +7 -27
- package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_executor_configs.rs +2 -2
- package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_send_uln_configs.rs +2 -2
- package/contracts/oapps/counter/Cargo.toml +4 -6
- package/contracts/oapps/counter/integration_tests/utils.rs +19 -12
- package/contracts/oapps/oapp/src/errors.rs +1 -1
- package/contracts/oapps/oapp/src/interfaces/mod.rs +3 -0
- package/contracts/oapps/oapp/src/interfaces/oapp_msg_inspector.rs +47 -0
- package/contracts/oapps/oapp/src/lib.rs +1 -0
- package/contracts/oapps/oapp/src/macro_tests/test_macros.rs +4 -4
- package/contracts/oapps/oapp/src/oapp_core.rs +5 -5
- package/contracts/oapps/oapp/src/oapp_options_type3.rs +12 -4
- package/contracts/oapps/oapp/src/oapp_receiver.rs +14 -9
- package/contracts/oapps/oapp/src/tests/mod.rs +4 -4
- package/contracts/oapps/oapp/src/tests/{test_oapp_core.rs → oapp_core.rs} +4 -4
- package/contracts/oapps/oapp/src/tests/{test_oapp_options_type3.rs → oapp_options_type3.rs} +3 -4
- package/contracts/oapps/oapp-macros/Cargo.toml +8 -4
- package/contracts/oapps/oapp-macros/src/generators.rs +9 -34
- package/contracts/oapps/oapp-macros/src/lib.rs +3 -0
- package/contracts/oapps/oapp-macros/src/tests/mod.rs +2 -0
- package/contracts/oapps/oapp-macros/src/tests/oapp.rs +88 -0
- package/contracts/oapps/oapp-macros/src/tests/parse_custom_impls.rs +86 -0
- package/contracts/oapps/oapp-macros/src/tests/snapshots/oapp_macros__tests__oapp__snapshot_generate_oapp.snap +103 -0
- package/contracts/oapps/oft/integration-tests/utils.rs +28 -8
- package/contracts/oapps/oft/src/extensions/oft_fee.rs +136 -74
- package/contracts/oapps/oft/src/extensions/pausable.rs +44 -10
- package/contracts/oapps/oft/src/extensions/rate_limiter.rs +170 -130
- package/contracts/oapps/oft/src/oft.rs +19 -12
- package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +1 -1
- package/contracts/oapps/oft/src/oft_types/mint_burn.rs +1 -1
- package/contracts/oapps/oft-core/Cargo.toml +1 -4
- package/contracts/oapps/oft-core/integration-tests/setup.rs +2 -2
- package/contracts/oapps/oft-core/integration-tests/utils.rs +21 -3
- package/contracts/oapps/oft-core/src/errors.rs +3 -2
- package/contracts/oapps/oft-core/src/events.rs +6 -0
- package/contracts/oapps/oft-core/src/lib.rs +1 -1
- package/contracts/oapps/oft-core/src/oft_core.rs +115 -60
- package/contracts/oapps/oft-core/src/storage.rs +7 -3
- package/contracts/oapps/oft-core/src/tests/mod.rs +1 -0
- package/contracts/oapps/oft-core/src/tests/test_decimals.rs +37 -2
- package/contracts/oapps/oft-core/src/tests/test_lz_receive.rs +2 -2
- package/contracts/oapps/oft-core/src/tests/test_msg_inspector.rs +323 -0
- package/contracts/oapps/oft-core/src/tests/test_send.rs +2 -2
- package/contracts/oapps/oft-core/src/tests/test_utils.rs +59 -14
- package/contracts/utils/Cargo.toml +0 -1
- package/contracts/utils/src/errors.rs +1 -1
- package/contracts/utils/src/multisig.rs +17 -8
- package/contracts/utils/src/ownable.rs +6 -6
- package/contracts/utils/src/testing_utils.rs +124 -54
- package/contracts/utils/src/tests/multisig.rs +12 -12
- package/contracts/utils/src/tests/ownable.rs +6 -6
- package/contracts/utils/src/tests/testing_utils.rs +50 -167
- package/contracts/utils/src/tests/ttl_configurable.rs +5 -5
- package/contracts/utils/src/tests/upgradeable.rs +1 -1
- package/contracts/utils/src/ttl_configurable.rs +10 -4
- package/contracts/utils/src/upgradeable.rs +5 -5
- package/contracts/workers/dvn/Cargo.toml +5 -6
- package/contracts/workers/dvn/src/dvn.rs +2 -12
- package/contracts/workers/dvn-fee-lib/Cargo.toml +1 -1
- package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +37 -19
- package/contracts/workers/dvn-fee-lib/src/lib.rs +12 -2
- package/contracts/workers/dvn-fee-lib/src/tests/dvn_fee_lib.rs +15 -13
- package/contracts/workers/executor/Cargo.toml +3 -0
- package/contracts/workers/executor/src/executor.rs +2 -12
- package/contracts/workers/executor/src/lib.rs +2 -2
- package/contracts/workers/executor/src/tests/auth.rs +394 -0
- package/contracts/workers/executor/src/tests/executor.rs +410 -0
- package/contracts/workers/executor/src/tests/mod.rs +3 -0
- package/contracts/workers/executor/src/tests/setup.rs +250 -0
- package/contracts/workers/executor-fee-lib/Cargo.toml +5 -0
- package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +1 -12
- package/contracts/workers/executor-fee-lib/src/lib.rs +8 -2
- package/contracts/workers/executor-helper/Cargo.toml +0 -1
- package/contracts/workers/price-feed/Cargo.toml +5 -0
- package/contracts/workers/price-feed/src/lib.rs +9 -4
- package/contracts/workers/price-feed/src/price_feed.rs +1 -11
- package/contracts/workers/worker/src/errors.rs +1 -1
- package/contracts/workers/worker/src/tests/setup.rs +1 -1
- package/contracts/workers/worker/src/tests/worker.rs +55 -41
- package/contracts/workers/worker/src/worker.rs +34 -25
- package/docs/error-spec.md +55 -0
- package/docs/layerzero-v2-on-stellar.md +447 -0
- package/docs/oapp-guide.md +212 -0
- package/docs/oft-guide.md +314 -0
- package/package.json +3 -3
- package/sdk/.turbo/turbo-test.log +260 -257
- package/sdk/dist/generated/bml.d.ts +3 -3
- package/sdk/dist/generated/bml.js +4 -4
- package/sdk/dist/generated/counter.d.ts +295 -295
- package/sdk/dist/generated/counter.js +43 -43
- package/sdk/dist/generated/dvn.d.ts +91 -91
- package/sdk/dist/generated/dvn.js +24 -24
- package/sdk/dist/generated/dvn_fee_lib.d.ts +92 -92
- package/sdk/dist/generated/dvn_fee_lib.js +25 -25
- package/sdk/dist/generated/endpoint.d.ts +99 -99
- package/sdk/dist/generated/endpoint.js +16 -16
- package/sdk/dist/generated/executor.d.ts +91 -91
- package/sdk/dist/generated/executor.js +24 -24
- package/sdk/dist/generated/executor_fee_lib.d.ts +92 -92
- package/sdk/dist/generated/executor_fee_lib.js +25 -25
- package/sdk/dist/generated/executor_helper.d.ts +3 -3
- package/sdk/dist/generated/executor_helper.js +4 -4
- package/sdk/dist/generated/layerzero_view.d.ts +186 -186
- package/sdk/dist/generated/layerzero_view.js +35 -35
- package/sdk/dist/generated/oft.d.ts +366 -352
- package/sdk/dist/generated/oft.js +74 -79
- package/sdk/dist/generated/price_feed.d.ts +198 -198
- package/sdk/dist/generated/price_feed.js +39 -39
- package/sdk/dist/generated/sml.d.ts +99 -99
- package/sdk/dist/generated/sml.js +16 -16
- package/sdk/dist/generated/treasury.d.ts +99 -99
- package/sdk/dist/generated/treasury.js +16 -16
- package/sdk/dist/generated/uln302.d.ts +99 -99
- package/sdk/dist/generated/uln302.js +16 -16
- package/sdk/dist/generated/upgrader.d.ts +3 -3
- package/sdk/dist/generated/upgrader.js +3 -3
- package/sdk/package.json +1 -1
- package/sdk/test/suites/localnet.ts +84 -20
- package/contracts/ERROR_SPEC.md +0 -51
- package/contracts/endpoint-v2/ARCHITECTURE.md +0 -233
- /package/contracts/oapps/oapp/src/tests/{test_oapp_receiver.rs → oapp_receiver.rs} +0 -0
- /package/contracts/oapps/oapp/src/tests/{test_oapp_sender.rs → oapp_sender.rs} +0 -0
|
@@ -6,14 +6,14 @@ export * as contract from '@stellar/stellar-sdk/contract';
|
|
|
6
6
|
export * as rpc from '@stellar/stellar-sdk/rpc';
|
|
7
7
|
/**
|
|
8
8
|
* Embedded WASM bytecode (base64-encoded)
|
|
9
|
-
* Size:
|
|
9
|
+
* Size: 27461 bytes (26.82 KB)
|
|
10
10
|
*/
|
|
11
|
-
export declare const WASM_BASE64 = "AGFzbQEAAAABfxZgAn5+AX5gAX4BfmADfn5+AX5gAAF+YAR+fn5+AX5gAAF/YAF/AGACf38AYAF/AX5gAn5+AX9gAABgAn5/AGABfgBgA39/fwBgAn9+AGACf38BfmAEf39/fwF+YAJ+fgBgA39+fgBgBn9+fn5+fwBgBH9+fn8AYAV/fn5+fgACfxUBbAExAAABYQEwAAEBZAFfAAIBbAFfAAIBeAExAAABbAEyAAABeAE3AAMBeAEwAAABbAE3AAQBaQE4AAEBaQE3AAEBYgFqAAABaQE2AAABbQE5AAIBdgFnAAABeAEzAAMBeAE4AAMBbAEwAAABbAE4AAABeAE1AAEBbQFhAAQDSkkFBgcICQoDAwYLCgYMCAYIDQ4EDgUFBgAPCgEHBwwBDwEQAQEAAgMDAwMADgUIAwcHAwMAAwMBEQAKEgMKAwoNDg0NExQVFRQVBQMBABEGIQR/AUGAgMAAC38AQcKBwAALfwBB3oPAAAt/AEHgg8AACweaAxkGbWVtb3J5AgAHZ2V0X2ZlZQAnDV9fY29uc3RydWN0b3IALxFzZXRfbmF0aXZlX2ZlZV9icAAzD3NldF9mZWVfZW5hYmxlZAA3D3NldF96cm9fZmVlX2xpYgA4DndpdGhkcmF3X3Rva2VuADoNbmF0aXZlX2ZlZV9icAA7C2ZlZV9lbmFibGVkADwLenJvX2ZlZV9saWIAPQphdXRob3JpemVyAD4Pc2V0X3R0bF9jb25maWdzAD8LdHRsX2NvbmZpZ3MAQxJmcmVlemVfdHRsX2NvbmZpZ3MARhVpc190dGxfY29uZmlnc19mcm96ZW4ARxNleHRlbmRfaW5zdGFuY2VfdHRsAEgFb3duZXIASQ1wZW5kaW5nX293bmVyAEoSdHJhbnNmZXJfb3duZXJzaGlwAEsacHJvcG9zZV9vd25lcnNoaXBfdHJhbnNmZXIATRBhY2NlcHRfb3duZXJzaGlwAFAScmVub3VuY2Vfb3duZXJzaGlwAFIBXwMBCl9fZGF0YV9lbmQDAgtfX2hlYXBfYmFzZQMDCtNJSYsBAgJ/AX4jgICAgABBEGsiACSAgICAACAAQQRqEJaAgIAAAkAgACgCBEEBRw0AIAAoAgggACgCDBCXgICAAAtBACEBAkBBABCYgICAACICQgIQmYCAgABFDQBBASEBAkACQCACQgIQgICAgACnQf8BcQ4CAQIACwALQQAhAQsgAEEQaiSAgICAACABCwwAIABBARDEgICAAAsbACAArUIghkIEhCABrUIghkIEhBCSgICAABoLwgECAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkACQAJAIABB/wFxDgMAAQIACyABQcaDwIAAQQYQpYCAgAAgASgCAA0DIAEgASkDCBCmgICAAAwCCyABQcyDwIAAQQgQpYCAgAAgASgCAA0CIAEgASkDCBCmgICAAAwBCyABQdSDwIAAQQoQpYCAgAAgASgCAA0BIAEgASkDCBCmgICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACCw8AIAAgARCRgICAAEIBUQsPABCbgICAABCBgICAABoLZgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABCWgICAAAJAIAAoAgBBAUcNACAAKAIEIAAoAggQl4CAgAALIAAQnYCAgAAgACkDCCEBIAApAwBBiggQnoCAgAAgAEEQaiSAgICAACABC0oCAX8BfiOAgICAAEEQayIAJICAgIAAIAAQnYCAgAAgACkDCCEBIAApAwBBiggQnoCAgAAgARCBgICAABogAEEQaiSAgICAACABC1ABAX8jgICAgABBEGsiASSAgICAACABQQRqEJaAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBCXgICAAAsgABCjgICAACABQRBqJICAgIAACykAAkAgAKdBAXFFDQAPCyABQfp3aq1CIIZCg4CAgOCAAXwQoYCAgAAAC0IBAX8jgICAgABBEGsiACSAgICAACAAEKCAgIAAAkAgACkDAFANAEKDgICAsIEBEKGAgIAAAAsgAEEQaiSAgICAAAuTAQIBfwJ+I4CAgIAAQRBrIgEkgICAgAAgAUEEahCWgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQl4CAgAALQgAhAgJAAkBBARCigICAACIDQgAQmYCAgABFDQAgA0IAEICAgIAAIgJC/wGDQs0AUg0BIAAgAjcDCEIBIQILIAAgAjcDACABQRBqJICAgIAADwsACwsAIAAQk4CAgAAaC5IBAgF/AX4jgICAgABBEGsiASSAgICAAAJAAkACQAJAIABBAXFFDQAgAUHZgsCAAEEMEKWAgIAAIAEoAgANAiABIAEpAwgQpoCAgAAMAQsgAUHUgsCAAEEFEKWAgIAAIAEoAgANASABIAEpAwgQpoCAgAALIAEpAwghAiABKQMAUA0BCwALIAFBEGokgICAgAAgAgtNAQJ+QgAhAQJAAkBBABCigICAACICQgIQmYCAgABFDQAgAkICEICAgIAAIgFC/wGDQs0AUg0BIAAgATcDCEIBIQELIAAgATcDAA8LAAvCAQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQAJAAkAgAEH/AXEOAwABAgALIAFBpIHAgABBCxClgICAACABKAIADQMgASABKQMIEKaAgIAADAILIAFBr4HAgABBChClgICAACABKAIADQIgASABKQMIEKaAgIAADAELIAFBuYHAgABBCRClgICAACABKAIADQEgASABKQMIEKaAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILUQIBfwF+I4CAgIAAQRBrIgMkgICAgAAgAyABIAIQ1ICAgABCASEEAkAgAygCAA0AIAAgAykDCDcDCEIAIQQLIAAgBDcDACADQRBqJICAgIAAC0QBAX8jgICAgABBEGsiAiSAgICAACACIAE3AwggAkEIakEBEK2AgIAAIQEgAEIANwMAIAAgATcDCCACQRBqJICAgIAAC94EAgJ/A34jgICAgABB8ABrIgQkgICAgAACQAJAIABC/wGDQs0AUg0AIAFC/wGDQgRSDQAgBEHQAGogAhCogICAACAEKAJQQQFGDQBBASADp0H/AXEiBUEAR0EBdCAFQQFGGyIFQQJGDQAgBCkDaCEGIAQpA2AhByAEQdAAahCWgICAAAJAIAQoAlBBAUcNACAEKAJUIAQoAlgQl4CAgAALAkAgBkJ/Vw0AQgAhA0IAIQIQqYCAgABFDQIgBEEANgIsIARBEGogByAGEKqAgIAArUIAIARBLGoQ2ICAgAACQCAEKAIsDQAgBCAEKQMQIAQpAxhCkM4AQgAQ24CAgAAgBCkDCCECIAQpAwAhAyAFQQFxRQ0DIARB0ABqEKuAgIAAAkAgBCgCUEUNACAEKQNYIQggByAGEKyAgIAAIQYgBCADIAIQrICAgAA3A0ggBCAGNwNAIAQgAUKEgICAcIM3AzggBCAANwMwQQAhBQJAA0ACQCAFQSBHDQBBACEFAkADQCAFQSBGDQEgBEHQAGogBWogBEEwaiAFaikDADcDACAFQQhqIQUMAAsLIARB0ABqIAhCjtTqtZDXsgEgBEHQAGpBBBCtgICAABCCgICAABCogICAACAEKAJQQQFGDQQgBCkDaCICQn9XDQIgBCkDYCEDDAcLIARB0ABqIAVqQgI3AwAgBUEIaiEFDAALC0KDgICAMBChgICAAAALQoOAgIDAABChgICAAAALEK6AgIAAAAtCg4CAgCAQoYCAgAAACwALIAMgAhCsgICAACECIARB8ABqJICAgIAAIAILfQIBfwF+AkACQAJAAkAgAadB/wFxIgJBxQBGDQAgAkELRw0CIAAgAUI/hzcDGCAAIAFCCIc3AxAMAQsgARCJgICAACEDIAEQioCAgAAhASAAIAM3AxggACABNwMQC0IAIQEMAQsgAEKDkICAgAE3AwhCASEBCyAAIAE3AwALiwECAn8BfiOAgICAAEEQayIAJICAgIAAIABBBGoQloCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMEJeAgIAAC0EAIQECQEEBEKSAgIAAIgJCAhCZgICAAEUNAEEBIQECQAJAIAJCAhCAgICAAKdB/wFxDgIBAgALAAtBACEBCyAAQRBqJICAgIAAIAELigECAn8BfiOAgICAAEEQayIAJICAgIAAIABBBGoQloCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMEJeAgIAAC0EAIQECQAJAQQAQpICAgAAiAkICEJmAgIAARQ0AIAJCAhCAgICAACICQv8Bg0IEUg0BIAJCIIinIQELIABBEGokgICAgAAgAQ8LAAuTAQIBfwJ+I4CAgIAAQRBrIgEkgICAgAAgAUEEahCWgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQl4CAgAALQgAhAgJAAkBBAhCkgICAACIDQgIQmYCAgABFDQAgA0ICEICAgIAAIgJC/wGDQs0AUg0BIAAgAjcDCEIBIQILIAAgAjcDACABQRBqJICAgIAADwsAC0UAAkAgAEKAgICAgICAwAB8Qv//////////AFYNACAAIACFIAEgAEI/h4WEQgBSDQAgAEIIhkILhA8LIAEgABCMgICAAAsaACAArUIghkIEhCABrUIghkIEhBCOgICAAAsJABDTgICAAAALXQACQAJAIABC/wGDQs0AUg0AQYDLHkGA0h8QsICAgABBgMseQYDSHxCxgICAAEEAEKKAgIAAQgIQmYCAgAANASAAELKAgIAAQgIPCwALQoOAgICQgQEQoYCAgAAACw4AQQEgACABENeAgIAACw4AQQIgACABENeAgIAACw4AQQAgAEICEM+AgIAAC9IBAgF/AX4jgICAgABBEGsiASSAgICAAAJAAkAgAEL/AYNCBFINABCagICAACABEJaAgIAAAkAgASgCAEEBRw0AIAEoAgQgASgCCBCXgICAAAsgAEKAgICAkOIJWg0BQQAQpICAgAAgAEKEgICA8P8PgyIAQgIQg4CAgAAaQYCAwIAAQREQtICAgAAQtYCAgAAhAiABIAA3AwAgAkGggMCAAEEBIAFBARC2gICAABCEgICAABogAUEQaiSAgICAAEICDwsAC0KDgICAEBChgICAAAALRQIBfwF+I4CAgIAAQRBrIgIkgICAgAAgAiAAIAEQ1ICAgAACQCACKAIAQQFHDQAACyACKQMIIQMgAkEQaiSAgICAACADC2MDAX8BfgF/I4CAgIAAQRBrIgEkgICAgAAgASAANwMAQgIhAkEBIQMCQANAIANFDQEgA0F/aiEDIAAhAgwACwsgASACNwMIIAFBCGpBARCtgICAACEAIAFBEGokgICAgAAgAAsuAAJAIAEgA0YNAAALIACtQiCGQgSEIAKtQiCGQgSEIAGtQiCGQgSEEI2AgIAAC8ABAgJ/AX4jgICAgABBEGsiASSAgICAAAJAQQEgAKdB/wFxIgJBAEdBAXQgAkEBRhsiAkECRg0AEJqAgIAAIAEQloCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEJeAgIAAC0EBEKSAgIAAIAKtIgBCAhCDgICAABpBqIDAgABBDxC0gICAABC1gICAACEDIAEgADcDACADQcSAwIAAQQEgAUEBELaAgIAAEISAgIAAGiABQRBqJICAgIAAQgIPCwAL4wECAX8CfiOAgICAAEEQayIBJICAgIAAAkACQCAAQgJRDQAgAEL/AYNCzQBSDQELEJqAgIAAIAEQloCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEJeAgIAAC0ECEKSAgIAAIQICQAJAIABCAlINACACQgIQhYCAgAAaQgAhAgwBCyACIABCAhCDgICAABpCASECC0HMgMCAAEEPELSAgIAAELWAgIAAIQMgASACIAAQuYCAgAA3AwAgA0HogMCAAEEBIAFBARC2gICAABCEgICAABogAUEQaiSAgICAAEICDwsACw0AIAFCAiAAp0EBcRsLiQMDAX8CfgF/I4CAgIAAQcAAayIDJICAgIAAAkAgAEL/AYNCzQBSDQAgAUL/AYNCzQBSDQAgAyACEKiAgIAAIAMoAgBBAUYNACADKQMYIQIgAykDECEEEJqAgIAAIAMQloCAgAACQCADKAIAQQFHDQAgAygCBCADKAIIEJeAgIAACxCGgICAACEFIAMgBCACEKyAgIAANwM4IAMgATcDMCADIAU3AyhBACEGAkADQAJAIAZBGEcNAEEAIQYCQANAIAZBGEYNASADIAZqIANBKGogBmopAwA3AwAgBkEIaiEGDAALCyAAQo7u6pW+tt7zACADQQMQrYCAgAAQgoCAgABC/wGDQgJSDQJB8IDAgABBDxC0gICAABC1gICAACEFIAQgAhCsgICAACECIAMgADcDECADIAE3AwggAyACNwMAIAVBjIHAgABBAyADQQMQtoCAgAAQhICAgAAaIANBwABqJICAgIAAQgIPCyADIAZqQgI3AwAgBkEIaiEGDAALCxCugICAAAALAAsPABCqgICAAK1CIIZCBIQLCQAQqYCAgACtCz4CAX8BfiOAgICAAEEQayIAJICAgIAAIAAQq4CAgAAgACkDACAAKQMIELmAgIAAIQEgAEEQaiSAgICAACABCwgAEJuAgIAAC94EAQV/I4CAgIAAQdAAayICJICAgIAAIAJBKGogABDAgICAAAJAIAIoAihBAkYNACACQQhqQQhqIAJBKGpBCGoiAygCADYCACACIAIpAig3AwggAkEoaiABEMCAgIAAIAIoAihBAkYNACACQRhqQQhqIAMoAgA2AgAgAiACKQIoNwMYIAJBKGoQloCAgAACQCACKAIoQQFHDQAgAigCLCACKAIwEJeAgIAACxCagICAAAJAAkACQBCVgICAAA0AEMGAgIAAIgNBgPuAAyADQYD7gANJGyEEIAIgAkEYajYCLCACIAJBCGo2AihBACEDA0AgA0EIRg0DAkAgAkEoaiADaigCACIFKAIAQQFxRQ0AIAUoAggiBiAESw0DIAUoAgQgBksNAwsgA0EEaiEDDAALC0KDgICA0P8AEKGAgIAAAAtCg4CAgMD/ABChgICAAAALAkACQCACKAIIQQFHDQAgAigCDCACKAIQELCAgIAADAELQQEQmICAgABCAhCFgICAABoLAkACQCACKAIYQQFHDQAgAigCHCACKAIgELGAgIAADAELQQIQmICAgABCAhCFgICAABoLIAJBKGpBCGogAkEIakEIaigCADYCACACQTxqIAJBGGpBCGooAgA2AgAgAiACKQMINwMoIAIgAikDGDcCNEGAg8CAAEEPELSAgIAAELWAgIAAIQAgAkEoahDCgICAACEBIAIgAkE0ahDCgICAADcDSCACIAE3A0AgAEGkg8CAAEECIAJBwABqQQIQtoCAgAAQhICAgAAaIAJB0ABqJICAgIAAQgIPCwALaAEBfyOAgICAAEEQayICJICAgIAAAkACQCABQgJRDQAgAkEEaiABENWAgIAAAkAgAigCBEUNACAAQQI2AgAMAgsgACACKQIINwIEIABBATYCAAwBCyAAQQA2AgALIAJBEGokgICAgAALMwECfhCPgICAACEAAkAQkICAgABCIIgiASAAQiCIIgBUDQAgAacgAKdrDwsQroCAgAAAC0MCAX8BfiOAgICAAEEQayIBJICAgIAAIAEgABDFgICAAAJAIAEoAgBBAUcNAAALIAEpAwghAiABQRBqJICAgIAAIAILxAECAn8BfiOAgICAAEHAAGsiACSAgICAACAAQQhqEJaAgIAAAkAgACgCCEEBRw0AIAAoAgwgACgCEBCXgICAAAsgAEEIahCWgICAACAAQRRqIgFBAhDEgICAACAAQTBqIABBCGoQxYCAgAACQAJAIAAoAjANACAAKQM4IQIgAEEwaiABEMWAgIAAIAAoAjBBAUcNAQsACyAAIAApAzg3AyggACACNwMgIABBIGpBAhCtgICAACECIABBwABqJICAgIAAIAILdwICfwF+I4CAgIAAQRBrIgIkgICAgABBACEDAkACQCABEJiAgIAAIgRCAhCZgICAAEUNACACQQRqIARCAhCAgICAABDVgICAAEEBIQMgAigCBEEBRg0BIAAgAikCCDcCBAsgACADNgIAIAJBEGokgICAgAAPCwALMAACQCABKAIAQQFHDQAgACABKAIEIAEoAggQ1oCAgAAPCyAAQgA3AwAgAEICNwMIC6oBAQF/I4CAgIAAQSBrIgAkgICAgAAgAEEMahCWgICAAAJAIAAoAgxBAUcNACAAKAIQIAAoAhQQl4CAgAALEJqAgIAAAkAQlYCAgABFDQBCg4CAgOD/ABChgICAAAALQQAQmICAgABCAUICEIOAgIAAGkG0g8CAAEESELSAgIAAELWAgIAAQQRBACAAQRhqQQAQtoCAgAAQhICAgAAaIABBIGokgICAgABCAgsJABCVgICAAK0LMQACQCAAQv8Bg0IEUg0AIAFC/wGDQgRSDQAgAEIgiKcgAUIgiKcQl4CAgABCAg8LAAs+AgF/AX4jgICAgABBEGsiACSAgICAACAAEJ2AgIAAIAApAwAgACkDCBC5gICAACEBIABBEGokgICAgAAgAQs+AgF/AX4jgICAgABBEGsiACSAgICAACAAEKCAgIAAIAApAwAgACkDCBC5gICAACEBIABBEGokgICAgAAgAQt9AgF/AX4jgICAgABBEGsiASSAgICAAAJAIABC/wGDQs0AUg0AIAFBBGoQloCAgAACQCABKAIEQQFHDQAgASgCCCABKAIMEJeAgIAACxCcgICAACECEJ+AgIAAIAAQsoCAgAAgAiAAEMyAgIAAIAFBEGokgICAgABCAg8LAAthAgF/AX4jgICAgABBEGsiAiSAgICAAEHLgcCAAEEVELSAgIAAELWAgIAAIQMgAiAANwMIIAIgATcDACADQfSBwIAAQQIgAkECELaAgIAAEISAgIAAGiACQRBqJICAgIAAC90CAgF/An4jgICAgABBIGsiAiSAgICAAAJAAkACQCAAQv8Bg0LNAFINACABQv8Bg0IEUg0AIAJBCGoQloCAgAACQCACKAIIQQFHDQAgAigCDCACKAIQEJeAgIAACxCcgICAACEDAkACQCABQv////8PVg0AIAJBCGoQoICAgAAgAikDECEBIAIpAwhBiAgQnoCAgAAgASAAEIeAgIAAUEUNAxDOgICAAAwBCxDBgICAACABQiCIp0kNA0EBIABCABDPgICAAEEBEKKAgIAAQgAgAUKEgICAcIMiASABEIiAgIAAGkGEgsCAAEEWELSAgIAAELWAgIAAIQQgAiABNwMYIAIgAzcDECACIAA3AwggBEGggsCAAEEDIAJBCGpBAxC2gICAABCEgICAABoLIAJBIGokgICAgABCAg8LAAtCg4CAgOCAARChgICAAAALQoOA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ZXRfZmVlAAAAAAQAAAAAAAAABnNlbmRlcgAAAAAAEwAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAABB0b3RhbF9uYXRpdmVfZmVlAAAACwAAAAAAAAAKcGF5X2luX3pybwAAAAAAAQAAAAEAAAALAAAAAAAAAAAAAAANX19jb25zdHJ1Y3RvcgAAAAAAAAEAAAAAAAAABW93bmVyAAAAAAAAEwAAAAAAAAAAAAAAjVNldHMgdGhlIG5hdGl2ZSBmZWUgcGVyY2VudGFnZSBpbiBiYXNpcyBwb2ludHMuCgojIEFyZ3VtZW50cwoqIGBuYXRpdmVfZmVlX2JwYCAtIEZlZSBwZXJjZW50YWdlIGluIGJhc2lzIHBvaW50cyAoMC0xMDAwMCwgd2hlcmUgMTAwMDAgPSAxMDAlKQAAAAAAABFzZXRfbmF0aXZlX2ZlZV9icAAAAAAAAAEAAAAAAAAADW5hdGl2ZV9mZWVfYnAAAAAAAAAEAAAAAAAAAAAAAABtRW5hYmxlcyBvciBkaXNhYmxlcyBmZWUgY29sbGVjdGlvbiBnbG9iYWxseS4KCiMgQXJndW1lbnRzCiogYGZlZV9lbmFibGVkYCAtIFdoZXRoZXIgZmVlIGNvbGxlY3Rpb24gaXMgZW5hYmxlZAAAAAAAAA9zZXRfZmVlX2VuYWJsZWQAAAAAAQAAAAAAAAALZmVlX2VuYWJsZWQAAAAAAQAAAAAAAAAAAAAAo1NldHMgb3IgcmVtb3ZlcyB0aGUgWlJPIGZlZSBsaWJyYXJ5IGZvciBjdXN0b20gWlJPIHRva2VuIGZlZSBjYWxjdWxhdGlvbnMuCgojIEFyZ3VtZW50cwoqIGB6cm9fZmVlX2xpYmAgLSBUaGUgWlJPIGZlZSBsaWJyYXJ5IGNvbnRyYWN0IGFkZHJlc3MsIG9yIGBOb25lYCB0byByZW1vdmUAAAAAD3NldF96cm9fZmVlX2xpYgAAAAABAAAAAAAAAAt6cm9fZmVlX2xpYgAAAAPoAAAAEwAAAAAAAAAAAAABN1dpdGhkcmF3cyBhbnkgdG9rZW4gKGluY2x1ZGluZyBuYXRpdmUgWExNKSBmcm9tIHRoZSBjb250cmFjdCB0byBhIHNwZWNpZmllZCBhZGRyZXNzLgoKT25seSB0aGUgY29udHJhY3Qgb3duZXIgY2FuIGV4ZWN1dGUgdGhpcyBtZXRob2QuCgojIEFyZ3VtZW50cwoqIGB0b2tlbmAgLSBUaGUgdG9rZW4gY29udHJhY3QgYWRkcmVzcyAoY2FuIGJlIG5hdGl2ZSBYTE0gb3IgYW55IG90aGVyIHRva2VuKQoqIGB0b2AgLSBUaGUgcmVjaXBpZW50IGFkZHJlc3MKKiBgYW1vdW50YCAtIFRoZSBhbW91bnQgdG8gd2l0aGRyYXcgKG11c3QgYmUgcG9zaXRpdmUpAAAAAA53aXRoZHJhd190b2tlbgAAAAAAAwAAAAAAAAAFdG9rZW4AAAAAAAATAAAAAAAAAAJ0bwAAAAAAEwAAAAAAAAAGYW1vdW50AAAAAAALAAAAAAAAAAAAAAAyUmV0dXJucyB0aGUgbmF0aXZlIGZlZSBwZXJjZW50YWdlIGluIGJhc2lzIHBvaW50cy4AAAAAAA1uYXRpdmVfZmVlX2JwAAAAAAAAAAAAAAEAAAAEAAAAAAAAACpSZXR1cm5zIHdoZXRoZXIgZmVlIGNvbGxlY3Rpb24gaXMgZW5hYmxlZC4AAAAAAAtmZWVfZW5hYmxlZAAAAAAAAAAAAQAAAAEAAAAAAAAAK1JldHVybnMgdGhlIFpSTyBmZWUgbGlicmFyeSBhZGRyZXNzIGlmIHNldC4AAAAAC3pyb19mZWVfbGliAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAAAAAAAphdXRob3JpemVyAAAAAAAAAAAAAQAAABMAAAACAAAAAAAAAAAAAAAPVHJlYXN1cnlTdG9yYWdlAAAAAAMAAAAAAAAAAAAAAAtOYXRpdmVGZWVCcAAAAAAAAAAAAAAAAApGZWVFbmFibGVkAAAAAAAAAAAAAAAAAAlacm9GZWVMaWIAAAAAAAAAAAABj1NldHMgVFRMIGNvbmZpZ3MgZm9yIGluc3RhbmNlIGFuZCBwZXJzaXN0ZW50IHN0b3JhZ2UuCgotIGBOb25lYCB2YWx1ZXMgcmVtb3ZlIHRoZSBjb3JyZXNwb25kaW5nIGNvbmZpZyAoZGlzYWJsZXMgYXV0by1leHRlbnNpb24gZm9yIHRoYXQgdHlwZSkKLSBWYWxpZGF0ZXMgdGhhdCBgdGhyZXNob2xkIDw9IGV4dGVuZF90byA8PSBNQVhfVFRMYAoKIyBBcmd1bWVudHMKLSBgaW5zdGFuY2VgIC0gVFRMIGNvbmZpZyBmb3IgaW5zdGFuY2Ugc3RvcmFnZQotIGBwZXJzaXN0ZW50YCAtIFRUTCBjb25maWcgZm9yIHBlcnNpc3RlbnQgc3RvcmFnZQoKIyBQYW5pY3MKLSBgVHRsQ29uZmlnRnJvemVuYCBpZiBjb25maWdzIGFyZSBmcm96ZW4KLSBgSW52YWxpZFR0bENvbmZpZ2AgaWYgdmFsaWRhdGlvbiBmYWlscwAAAAAPc2V0X3R0bF9jb25maWdzAAAAAAIAAAAAAAAACGluc3RhbmNlAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAEhSZXR1cm5zIHRoZSBjdXJyZW50IFRUTCBjb25maWdzIGFzIChpbnN0YW5jZV9jb25maWcsIHBlcnNpc3RlbnRfY29uZmlnKS4AAAALdHRsX2NvbmZpZ3MAAAAAAAAAAAEAAAPtAAAAAgAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAADhUGVybWFuZW50bHkgZnJlZXplcyBUVEwgY29uZmlncywgcHJldmVudGluZyBhbnkgZnV0dXJlIG1vZGlmaWNhdGlvbnMuCgpUaGlzIGlzIGlycmV2ZXJzaWJsZSBhbmQgcHJvdmlkZXMgaW1tdXRhYmlsaXR5IGd1YXJhbnRlZXMgdG8gdXNlcnMuCkVtaXRzIGBUdGxDb25maWdzRnJvemVuYCBldmVudC4KCiMgUGFuaWNzCi0gYFR0bENvbmZpZ0FscmVhZHlGcm96ZW5gIGlmIGFscmVhZHkgZnJvemVuAAAAAAAAEmZyZWV6ZV90dGxfY29uZmlncwAAAAAAAAAAAAAAAAAAAAAAJ1JldHVybnMgd2hldGhlciBUVEwgY29uZmlncyBhcmUgZnJvemVuLgAAAAAVaXNfdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAAEAAAABAAAAAAAAAKVFeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwgKGlmIGN1cnJlbnQgVFRMIGlzIGJlbG93IHRoaXMsIGV4dGVuZCkuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAAAATZXh0ZW5kX2luc3RhbmNlX3R0bAAAAAACAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAlleHRlbmRfdG8AAAAAAAAEAAAAAAAAAAAAAAA+UmV0dXJucyB0aGUgY3VycmVudCBvd25lciBhZGRyZXNzLCBvciBOb25lIGlmIG5vIG93bmVyIGlzIHNldC4AAAAAAAVvd25lcgAAAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAWVJldHVybnMgdGhlIHBlbmRpbmcgb3duZXIgYWRkcmVzcyBmb3IgMi1zdGVwIHRyYW5zZmVyLCBvciBOb25lIGlmIG5vIHRyYW5zZmVyIGlzIHBlbmRpbmcuAAAAAAAADXBlbmRpbmdfb3duZXIAAAAAAAAAAAAAAQAAA+gAAAATAAAAAAAAAStUcmFuc2ZlcnMgb3duZXJzaGlwIGltbWVkaWF0ZWx5IHRvIGEgbmV3IGFkZHJlc3MuCgpVc2Ugd2l0aCBjYXV0aW9uIC0gaWYgeW91IHRyYW5zZmVyIHRvIGEgd3JvbmcgYWRkcmVzcywgb3duZXJzaGlwIGlzIGxvc3QgZm9yZXZlci4KQ29uc2lkZXIgdXNpbmcgYHByb3Bvc2Vfb3duZXJzaGlwX3RyYW5zZmVyYCBpbnN0ZWFkLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgVHJhbnNmZXJJblByb2dyZXNzYCBpZiBhIDItc3RlcCB0cmFuc2ZlciBpcyBpbiBwcm9ncmVzcwAAAAASdHJhbnNmZXJfb3duZXJzaGlwAAAAAAABAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAAAAAJcUHJvcG9zZXMgYW4gb3duZXJzaGlwIHRyYW5zZmVyIHRvIGEgbmV3IGFkZHJlc3MuCgpUaGUgbmV3IG93bmVyIG11c3QgY2FsbCBgYWNjZXB0X293bmVyc2hpcCgpYCB3aXRoaW4gYHR0bGAgbGVkZ2Vycwp0byBjb21wbGV0ZSB0aGUgdHJhbnNmZXIuIFRoZSBwZW5kaW5nIHRyYW5zZmVyIHdpbGwgYXV0b21hdGljYWxseSBleHBpcmUgYWZ0ZXIuCgojIEFyZ3VtZW50cwotIGBuZXdfb3duZXJgIC0gVGhlIHByb3Bvc2VkIG5ldyBvd25lcgotIGB0dGxgIC0gTnVtYmVyIG9mIGxlZGdlcnMgdGhlIG5ldyBvd25lciBoYXMgdG8gYWNjZXB0LgpVc2UgYDBgIHRvIGNhbmNlbCBhIHBlbmRpbmcgdHJhbnNmZXIgKG5ld19vd25lciBtdXN0IG1hdGNoIHBlbmRpbmcpLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgTm9QZW5kaW5nVHJhbnNmZXJgIHdoZW4gY2FuY2VsbGluZyBhbmQgbm8gcGVuZGluZyB0cmFuc2ZlciBleGlzdHMKLSBgSW52YWxpZFR0bGAgaWYgdHRsIGV4Y2VlZHMgbWF4IFRUTAotIGBJbnZhbGlkUGVuZGluZ093bmVyYCB3aGVuIGNhbmNlbGxpbmcgd2l0aCB3cm9uZyBuZXdfb3duZXIgYWRkcmVzcwAAABpwcm9wb3NlX293bmVyc2hpcF90cmFuc2ZlcgAAAAAAAgAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAADdHRsAAAAAAQAAAAAAAAAAAAAALlBY2NlcHRzIGEgcGVuZGluZyAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyLgoKTXVzdCBiZSBjYWxsZWQgYnkgdGhlIHBlbmRpbmcgb3duZXIgYmVmb3JlIHRoZSBUVEwgZXhwaXJlcy4KCiMgUGFuaWNzCi0gYE5vUGVuZGluZ1RyYW5zZmVyYCBpZiB0aGVyZSBpcyBubyBwZW5kaW5nIHRyYW5zZmVyIChvciBpdCBleHBpcmVkKQAAAAAAABBhY2NlcHRfb3duZXJzaGlwAAAAAAAAAAAAAAAAAAAApFBlcm1hbmVudGx5IHJlbm91bmNlcyBvd25lcnNoaXAuCgojIFBhbmljcwotIGBPd25lck5vdFNldGAgaWYgbm8gb3duZXIgaXMgY3VycmVudGx5IHNldAotIGBUcmFuc2ZlckluUHJvZ3Jlc3NgIGlmIGEgMi1zdGVwIHRyYW5zZmVyIGlzIGluIHByb2dyZXNzIChjYW5jZWwgaXQgZmlyc3QpAAAAEnJlbm91bmNlX293bmVyc2hpcAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAANRW5kcG9pbnRFcnJvcgAAAAAAABkAAAAAAAAAEUFscmVhZHlSZWdpc3RlcmVkAAAAAAAAAQAAAAAAAAANQ29tcG9zZUV4aXN0cwAAAAAAAAIAAAAAAAAAD0NvbXBvc2VOb3RGb3VuZAAAAAADAAAAAAAAABxEZWZhdWx0UmVjZWl2ZUxpYlVuYXZhaWxhYmxlAAAABAAAAAAAAAAZRGVmYXVsdFNlbmRMaWJVbmF2YWlsYWJsZQAAAAAAAAUAAAAAAAAAFUluc3VmZmljaWVudE5hdGl2ZUZlZQAAAAAAAAYAAAAAAAAAEkluc3VmZmljaWVudFpyb0ZlZQAAAAAABwAAAAAAAAAQSW52YWxpZEZlZUFtb3VudAAAAAgAAAAAAAAADUludmFsaWRFeHBpcnkAAAAAAAAJAAAAAAAAAAxJbnZhbGlkSW5kZXgAAAAKAAAAAAAAAAxJbnZhbGlkTm9uY2UAAAALAAAAAAAAABJJbnZhbGlkUGF5bG9hZEhhc2gAAAAAAAwAAAAAAAAAFUludmFsaWRSZWNlaXZlTGlicmFyeQAAAAAAAA0AAAAAAAAAEU9ubHlOb25EZWZhdWx0TGliAAAAAAAADgAAAAAAAAAOT25seVJlY2VpdmVMaWIAAAAAAA8AAAAAAAAAEU9ubHlSZWdpc3RlcmVkTGliAAAAAAAAEAAAAAAAAAALT25seVNlbmRMaWIAAAAAEQAAAAAAAAAUUGF0aE5vdEluaXRpYWxpemFibGUAAAASAAAAAAAAABFQYXRoTm90VmVyaWZpYWJsZQAAAAAAABMAAAAAAAAAE1BheWxvYWRIYXNoTm90Rm91bmQAAAAAFAAAAAAAAAAJU2FtZVZhbHVlAAAAAAAAFQAAAAAAAAAMVW5hdXRob3JpemVkAAAAFgAAAAAAAAAOVW5zdXBwb3J0ZWRFaWQAAAAAABcAAAAAAAAAClplcm9acm9GZWUAAAAAABgAAAAAAAAADlpyb1VuYXZhaWxhYmxlAAAAAAAZAAAABQAAAAAAAAAAAAAAClBhY2tldFNlbnQAAAAAAAEAAAALcGFja2V0X3NlbnQAAAAAAwAAAAAAAAAOZW5jb2RlZF9wYWNrZXQAAAAAAA4AAAAAAAAAAAAAAAdvcHRpb25zAAAAAA4AAAAAAAAAAAAAAAxzZW5kX2xpYnJhcnkAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAOUGFja2V0VmVyaWZpZWQAAAAAAAEAAAAPcGFja2V0X3ZlcmlmaWVkAAAAAAMAAAAAAAAABm9yaWdpbgAAAAAH0AAAAAZPcmlnaW4AAAAAAAEAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAAAAAAADHBheWxvYWRfaGFzaAAAA+4AAAAgAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAPUGFja2V0RGVsaXZlcmVkAAAAAAEAAAAQcGFja2V0X2RlbGl2ZXJlZAAAAAIAAAAAAAAABm9yaWdpbgAAAAAH0AAAAAZPcmlnaW4AAAAAAAEAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAACAAAABQAAAAAAAAAAAAAADkx6UmVjZWl2ZUFsZXJ0AAAAAAABAAAAEGx6X3JlY2VpdmVfYWxlcnQAAAAJAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAAhleGVjdXRvcgAAABMAAAABAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAABAAAAAAAAAARndWlkAAAD7gAAACAAAAABAAAAAAAAAANnYXMAAAAACwAAAAAAAAAAAAAABXZhbHVlAAAAAAAACwAAAAAAAAAAAAAAB21lc3NhZ2UAAAAADgAAAAAAAAAAAAAACmV4dHJhX2RhdGEAAAAAAA4AAAAAAAAAAAAAAAZyZWFzb24AAAAAAA4AAAAAAAAAAgAAAAUAAAAAAAAAAAAAAAZacm9TZXQAAAAAAAEAAAAHenJvX3NldAAAAAABAAAAAAAAAAN6cm8AAAAAEwAAAAAAAAACAAAABQAAAAAAAAAAAAAAC0RlbGVnYXRlU2V0AAAAAAEAAAAMZGVsZWdhdGVfc2V0AAAAAgAAAAAAAAAEb2FwcAAAABMAAAABAAAAAAAAAAhkZWxlZ2F0ZQAAA+gAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAATSW5ib3VuZE5vbmNlU2tpcHBlZAAAAAABAAAAFWluYm91bmRfbm9uY2Vfc2tpcHBlZAAAAAAAAAQAAAAAAAAAB3NyY19laWQAAAAABAAAAAEAAAAAAAAABnNlbmRlcgAAAAAD7gAAACAAAAABAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAAVub25jZQAAAAAAAAYAAAABAAAAAgAAAAUAAAAAAAAAAAAAAA5QYWNrZXROaWxpZmllZAAAAAAAAQAAAA9wYWNrZXRfbmlsaWZpZWQAAAAABQAAAAAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAAAAAAAAGc2VuZGVyAAAAAAPuAAAAIAAAAAEAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAAAAAAABW5vbmNlAAAAAAAABgAAAAEAAAAAAAAADHBheWxvYWRfaGFzaAAAA+gAAAPuAAAAIAAAAAAAAAACAAAABQAAAAAAAAAAAAAAC1BhY2tldEJ1cm50AAAAAAEAAAAMcGFja2V0X2J1cm50AAAABQAAAAAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAAAAAAAAGc2VuZGVyAAAAAAPuAAAAIAAAAAEAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAAAAAAABW5vbmNlAAAAAAAABgAAAAEAAAAAAAAADHBheWxvYWRfaGFzaAAAA+4AAAAgAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAARTGlicmFyeVJlZ2lzdGVyZWQAAAAAAAABAAAAEmxpYnJhcnlfcmVnaXN0ZXJlZAAAAAAAAQAAAAAAAAAHbmV3X2xpYgAAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAVRGVmYXVsdFNlbmRMaWJyYXJ5U2V0AAAAAAAAAQAAABhkZWZhdWx0X3NlbmRfbGlicmFyeV9zZXQAAAACAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAABAAAAAAAAAAduZXdfbGliAAAAABMAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABhEZWZhdWx0UmVjZWl2ZUxpYnJhcnlTZXQAAAABAAAAG2RlZmF1bHRfcmVjZWl2ZV9saWJyYXJ5X3NldAAAAAACAAAAAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAAAAAAAduZXdfbGliAAAAABMAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABtEZWZhdWx0UmVjZWl2ZUxpYlRpbWVvdXRTZXQAAAAAAQAAAB9kZWZhdWx0X3JlY2VpdmVfbGliX3RpbWVvdXRfc2V0AAAAAAIAAAAAAAAAB3NyY19laWQAAAAABAAAAAEAAAAAAAAAB3RpbWVvdXQAAAAD6AAAB9AAAAAHVGltZW91dAAAAAAAAAAAAgAAAAUAAAAAAAAAAAAAAA5TZW5kTGlicmFyeVNldAAAAAAAAQAAABBzZW5kX2xpYnJhcnlfc2V0AAAAAwAAAAAAAAAGc2VuZGVyAAAAAAATAAAAAQAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAQAAAAAAAAAHbmV3X2xpYgAAAAPoAAAAEwAAAAAAAAACAAAABQAAAAAAAAAAAAAAEVJlY2VpdmVMaWJyYXJ5U2V0AAAAAAAAAQAAABNyZWNlaXZlX2xpYnJhcnlfc2V0AAAAAAMAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAAAAAAAB3NyY19laWQAAAAABAAAAAEAAAAAAAAAB25ld19saWIAAAAD6AAAABMAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABhSZWNlaXZlTGlicmFyeVRpbWVvdXRTZXQAAAABAAAAG3JlY2VpdmVfbGlicmFyeV90aW1lb3V0X3NldAAAAAADAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAANlaWQAAAAABAAAAAEAAAAAAAAAB3RpbWVvdXQAAAAD6AAAB9AAAAAHVGltZW91dAAAAAAAAAAAAgAAAAUAAAAAAAAAAAAAAAtDb21wb3NlU2VudAAAAAABAAAADGNvbXBvc2Vfc2VudAAAAAUAAAAAAAAABGZyb20AAAATAAAAAQAAAAAAAAACdG8AAAAAABMAAAABAAAAAAAAAARndWlkAAAD7gAAACAAAAABAAAAAAAAAAVpbmRleAAAAAAAAAQAAAABAAAAAAAAAAdtZXNzYWdlAAAAAA4AAAAAAAAAAgAAAAUAAAAAAAAAAAAAABBDb21wb3NlRGVsaXZlcmVkAAAAAQAAABFjb21wb3NlX2RlbGl2ZXJlZAAAAAAAAAQAAAAAAAAABGZyb20AAAATAAAAAQAAAAAAAAACdG8AAAAAABMAAAABAAAAAAAAAARndWlkAAAD7gAAACAAAAABAAAAAAAAAAVpbmRleAAAAAAAAAQAAAABAAAAAgAAAAUAAAAAAAAAAAAAAA5MekNvbXBvc2VBbGVydAAAAAAAAQAAABBsel9jb21wb3NlX2FsZXJ0AAAACgAAAAAAAAAEZnJvbQAAABMAAAABAAAAAAAAAAJ0bwAAAAAAEwAAAAEAAAAAAAAACGV4ZWN1dG9yAAAAEwAAAAEAAAAAAAAABGd1aWQAAAPuAAAAIAAAAAEAAAAAAAAABWluZGV4AAAAAAAABAAAAAEAAAAAAAAAA2dhcwAAAAALAAAAAAAAAAAAAAAFdmFsdWUAAAAAAAALAAAAAAAAAAAAAAAHbWVzc2FnZQAAAAAOAAAAAAAAAAAAAAAKZXh0cmFfZGF0YQAAAAAADgAAAAAAAAAAAAAABnJlYXNvbgAAAAAADgAAAAAAAAACAAAAAQAAAC1QYXJhbWV0ZXJzIGZvciBzZW5kaW5nIGEgY3Jvc3MtY2hhaW4gbWVzc2FnZS4AAAAAAAAAAAAAD01lc3NhZ2luZ1BhcmFtcwAAAAAFAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAABxUaGUgbWVzc2FnZSBwYXlsb2FkIHRvIHNlbmQuAAAAB21lc3NhZ2UAAAAADgAAACFFbmNvZGVkIGV4ZWN1dG9yIGFuZCBEVk4gb3B0aW9ucy4AAAAAAAAHb3B0aW9ucwAAAAAOAAAAOVdoZXRoZXIgdG8gcGF5IGZlZXMgaW4gWlJPIHRva2VuIGluc3RlYWQgb2YgbmF0aXZlIHRva2VuLgAAAAAAAApwYXlfaW5fenJvAAAAAAABAAAANVJlY2VpdmVyIGFkZHJlc3Mgb24gdGhlIGRlc3RpbmF0aW9uIGNoYWluICgzMiBieXRlcykuAAAAAAAACHJlY2VpdmVyAAAD7gAAACAAAAABAAAATVNvdXJjZSBtZXNzYWdlIGluZm9ybWF0aW9uIGlkZW50aWZ5aW5nIHdoZXJlIGEgY3Jvc3MtY2hhaW4gbWVzc2FnZSBjYW1lIGZyb20uAAAAAAAAAAAAAAZPcmlnaW4AAAAAAAMAAAAXTm9uY2UgZm9yIHRoaXMgcGF0aHdheS4AAAAABW5vbmNlAAAAAAAABgAAAC5TZW5kZXIgYWRkcmVzcyBvbiB0aGUgc291cmNlIGNoYWluICgzMiBieXRlcykuAAAAAAAGc2VuZGVyAAAAAAPuAAAAIAAAACZTb3VyY2UgZW5kcG9pbnQgSUQgKGNoYWluIGlkZW50aWZpZXIpLgAAAAAAB3NyY19laWQAAAAABAAAAAEAAAAoRmVlIHN0cnVjdHVyZSBmb3IgY3Jvc3MtY2hhaW4gbWVzc2FnaW5nLgAAAAAAAAAMTWVzc2FnaW5nRmVlAAAAAgAAAB9GZWUgcGFpZCBpbiBuYXRpdmUgdG9rZW4gKFhMTSkuAAAAAApuYXRpdmVfZmVlAAAAAAALAAAAKEZlZSBwYWlkIGluIFpSTyB0b2tlbiAoTGF5ZXJaZXJvIHRva2VuKS4AAAAHenJvX2ZlZQAAAAALAAAAAQAAAEJSZWNlaXB0IHJldHVybmVkIGFmdGVyIHN1Y2Nlc3NmdWxseSBzZW5kaW5nIGEgY3Jvc3MtY2hhaW4gbWVzc2FnZS4AAAAAAAAAAAAQTWVzc2FnaW5nUmVjZWlwdAAAAAMAAAApVGhlIGZlZXMgY2hhcmdlZCBmb3Igc2VuZGluZyB0aGUgbWVzc2FnZS4AAAAAAAADZmVlAAAAB9AAAAAMTWVzc2FnaW5nRmVlAAAAK0dsb2JhbGx5IHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgbWVzc2FnZS4AAAAABGd1aWQAAAPuAAAAIAAAACRUaGUgb3V0Ym91bmQgbm9uY2UgZm9yIHRoaXMgcGF0aHdheS4AAAAFbm9uY2UAAAAAAAAGAAAAAgAAADhUeXBlIG9mIG1lc3NhZ2UgbGlicmFyeSBpbmRpY2F0aW5nIHN1cHBvcnRlZCBvcGVyYXRpb25zLgAAAAAAAAAOTWVzc2FnZUxpYlR5cGUAAAAAAAMAAAAAAAAAH1N1cHBvcnRzIG9ubHkgc2VuZGluZyBtZXNzYWdlcy4AAAAABFNlbmQAAAAAAAAAIVN1cHBvcnRzIG9ubHkgcmVjZWl2aW5nIG1lc3NhZ2VzLgAAAAAAAAdSZWNlaXZlAAAAAAAAAAAtU3VwcG9ydHMgYm90aCBzZW5kaW5nIGFuZCByZWNlaXZpbmcgbWVzc2FnZXMuAAAAAAAADlNlbmRBbmRSZWNlaXZlAAAAAAABAAAAt1ZlcnNpb24gaW5mb3JtYXRpb24gZm9yIGEgbWVzc2FnZSBsaWJyYXJ5LgoKTm90ZTogYG1pbm9yYCBhbmQgYGVuZHBvaW50X3ZlcnNpb25gIHVzZSBgdTMyYCBpbnN0ZWFkIG9mIGB1OGAgYmVjYXVzZSBTdGVsbGFyIGRvZXMgbm90CnN1cHBvcnQgYHU4YCB0eXBlcyBpbiBjb250cmFjdCBpbnRlcmZhY2UgZnVuY3Rpb25zLgAAAAAAAAAAEU1lc3NhZ2VMaWJWZXJzaW9uAAAAAAAAAwAAADNFbmRwb2ludCB2ZXJzaW9uIChzaG91bGQgbm90IGV4Y2VlZCB1ODo6TUFYID0gMjU1KS4AAAAAEGVuZHBvaW50X3ZlcnNpb24AAAAEAAAAFU1ham9yIHZlcnNpb24gbnVtYmVyLgAAAAAAAAVtYWpvcgAAAAAAAAYAAAA3TWlub3IgdmVyc2lvbiBudW1iZXIgKHNob3VsZCBub3QgZXhjZWVkIHU4OjpNQVggPSAyNTUpLgAAAAAFbWlub3IAAAAAAAAEAAAAAQAAADZUaW1lb3V0IGNvbmZpZ3VyYXRpb24gZm9yIHJlY2VpdmUgbGlicmFyeSB0cmFuc2l0aW9ucy4AAAAAAAAAAAAHVGltZW91dAAAAAACAAAAKFVuaXggdGltZXN0YW1wIHdoZW4gdGhlIHRpbWVvdXQgZXhwaXJlcy4AAAAGZXhwaXJ5AAAAAAAGAAAAKVRoZSBuZXcgbGlicmFyeSBhZGRyZXNzIHRvIHRyYW5zaXRpb24gdG8uAAAAAAAAA2xpYgAAAAATAAAAAQAAADVQYXJhbWV0ZXJzIGZvciBzZXR0aW5nIG1lc3NhZ2UgbGlicmFyeSBjb25maWd1cmF0aW9uLgAAAAAAAAAAAAAOU2V0Q29uZmlnUGFyYW0AAAAAAAMAAAAfWERSLWVuY29kZWQgY29uZmlndXJhdGlvbiBkYXRhLgAAAAAGY29uZmlnAAAAAAAOAAAAMFRoZSB0eXBlIG9mIGNvbmZpZ3VyYXRpb24gKGUuZy4sIGV4ZWN1dG9yLCBVTE4pLgAAAAtjb25maWdfdHlwZQAAAAAEAAAAJ1RoZSBlbmRwb2ludCBJRCB0aGlzIGNvbmZpZyBhcHBsaWVzIHRvLgAAAAADZWlkAAAAAAQAAAABAAAAMVJlc29sdmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gd2l0aCBkZWZhdWx0IHN0YXR1cy4AAAAAAAAAAAAAD1Jlc29sdmVkTGlicmFyeQAAAAACAAAARFdoZXRoZXIgdGhpcyBpcyB0aGUgZGVmYXVsdCBsaWJyYXJ5ICh0cnVlKSBvciBPQXBwLXNwZWNpZmljIChmYWxzZSkuAAAACmlzX2RlZmF1bHQAAAAAAAEAAAAdVGhlIHJlc29sdmVkIGxpYnJhcnkgYWRkcmVzcy4AAAAAAAADbGliAAAAABMAAAABAAAASE91dGJvdW5kIHBhY2tldCBjb250YWluaW5nIGFsbCBpbmZvcm1hdGlvbiBmb3IgY3Jvc3MtY2hhaW4gdHJhbnNtaXNzaW9uLgAAAAAAAAAOT3V0Ym91bmRQYWNrZXQAAAAAAAcAAAAYRGVzdGluYXRpb24gZW5kcG9pbnQgSUQuAAAAB2RzdF9laWQAAAAABAAAACxHbG9iYWxseSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhpcyBtZXNzYWdlLgAAAARndWlkAAAD7gAAACAAAAAUVGhlIG1lc3NhZ2UgcGF5bG9hZC4AAAAHbWVzc2FnZQAAAAAOAAAAIE91dGJvdW5kIG5vbmNlIGZvciB0aGlzIHBhdGh3YXkuAAAABW5vbmNlAAAAAAAABgAAADFSZWNlaXZlciBhZGRyZXNzIG9uIGRlc3RpbmF0aW9uIGNoYWluICgzMiBieXRlcykuAAAAAAAACHJlY2VpdmVyAAAD7gAAACAAAAAfU2VuZGVyIGFkZHJlc3Mgb24gc291cmNlIGNoYWluLgAAAAAGc2VuZGVyAAAAAAATAAAAE1NvdXJjZSBlbmRwb2ludCBJRC4AAAAAB3NyY19laWQAAAAABAAAAAEAAAArQSBmZWUgcmVjaXBpZW50IHdpdGggdGhlIGFtb3VudCB0byBiZSBwYWlkLgAAAAAAAAAADEZlZVJlY2lwaWVudAAAAAIAAAAVQW1vdW50IG9mIGZlZSB0byBwYXkuAAAAAAAABmFtb3VudAAAAAAACwAAAB9UaGUgYWRkcmVzcyB0byBzZW5kIHRoZSBmZWUgdG8uAAAAAAJ0bwAAAAAAEwAAAAEAAAA8UmVzdWx0IG9mIHNlbmQgb3BlcmF0aW9uIGNvbnRhaW5pbmcgZmVlcyBhbmQgZW5jb2RlZCBwYWNrZXQuAAAAAAAAAA1GZWVzQW5kUGFja2V0AAAAAAAAAwAAACpUaGUgZW5jb2RlZCBwYWNrZXQgcmVhZHkgZm9yIHRyYW5zbWlzc2lvbi4AAAAAAA5lbmNvZGVkX3BhY2tldAAAAAAADgAAAD9MaXN0IG9mIG5hdGl2ZSB0b2tlbiBmZWUgcmVjaXBpZW50cyAoZXhlY3V0b3IsIERWTnMsIHRyZWFzdXJ5KS4AAAAAFW5hdGl2ZV9mZWVfcmVjaXBpZW50cwAAAAAAA+oAAAfQAAAADEZlZVJlY2lwaWVudAAAACxMaXN0IG9mIFpSTyB0b2tlbiBmZWUgcmVjaXBpZW50cyAodHJlYXN1cnkpLgAAABJ6cm9fZmVlX3JlY2lwaWVudHMAAAAAA+oAAAfQAAAADEZlZVJlY2lwaWVudAAAAAQAAAAdUGFja2V0Q29kZWNWMUVycm9yOiAxMTAwLTExMDkAAAAAAAAAAAAAElBhY2tldENvZGVjVjFFcnJvcgAAAAAAAgAAAAAAAAATSW52YWxpZFBhY2tldEhlYWRlcgAAAARMAAAAAAAAABRJbnZhbGlkUGFja2V0VmVyc2lvbgAABE0AAAAEAAAAHVdvcmtlck9wdGlvbnNFcnJvcjogMTExMC0xMTE5AAAAAAAAAAAAABJXb3JrZXJPcHRpb25zRXJyb3IAAAAAAAkAAAAAAAAAEkludmFsaWRCeXRlc0xlbmd0aAAAAAAEVgAAAAAAAAAZSW52YWxpZExlZ2FjeU9wdGlvbnNUeXBlMQAAAAAABFcAAAAAAAAAGUludmFsaWRMZWdhY3lPcHRpb25zVHlwZTIAAAAAAARYAAAAAAAAABFJbnZhbGlkT3B0aW9uVHlwZQAAAAAABFkAAAAAAAAADkludmFsaWRPcHRpb25zAAAAAARaAAAAAAAAAA9JbnZhbGlkV29ya2VySWQAAAAEWwAAAAAAAAAdTGVnYWN5T3B0aW9uc1R5cGUxR2FzT3ZlcmZsb3cAAAAAAARcAAAAAAAAACBMZWdhY3lPcHRpb25zVHlwZTJBbW91bnRPdmVyZmxvdwAABF0AAAAAAAAAHUxlZ2FjeU9wdGlvbnNUeXBlMkdhc092ZXJmbG93AAAAAAAEXgAAAAQAAAAcQnVmZmVyUmVhZGVyRXJyb3I6IDEwMDAtMTAwOQAAAAAAAAARQnVmZmVyUmVhZGVyRXJyb3IAAAAAAAACAAAAAAAAAA1JbnZhbGlkTGVuZ3RoAAAAAAAD6AAAAAAAAAAVSW52YWxpZEFkZHJlc3NQYXlsb2FkAAAAAAAD6QAAAAQAAAAcQnVmZmVyV3JpdGVyRXJyb3I6IDEwMTAtMTAxOQAAAAAAAAARQnVmZmVyV3JpdGVyRXJyb3IAAAAAAAABAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPyAAAABAAAAB9UdGxDb25maWd1cmFibGVFcnJvcjogMTAyMC0xMDI5AAAAAAAAAAAUVHRsQ29uZmlndXJhYmxlRXJyb3IAAAADAAAAAAAAABBJbnZhbGlkVHRsQ29uZmlnAAAD/AAAAAAAAAAPVHRsQ29uZmlnRnJvemVuAAAAA/0AAAAAAAAAFlR0bENvbmZpZ0FscmVhZHlGcm96ZW4AAAAAA/4AAAAEAAAAF093bmFibGVFcnJvcjogMTAzMC0xMDM5AAAAAAAAAAAMT3duYWJsZUVycm9yAAAABgAAAAAAAAATSW52YWxpZFBlbmRpbmdPd25lcgAAAAQGAAAAAAAAAApJbnZhbGlkVHRsAAAAAAQHAAAAAAAAABFOb1BlbmRpbmdUcmFuc2ZlcgAAAAAABAgAAAAAAAAAD093bmVyQWxyZWFkeVNldAAAAAQJAAAAAAAAAAtPd25lck5vdFNldAAAAAQKAAAAAAAAABJUcmFuc2ZlckluUHJvZ3Jlc3MAAAAABAsAAAAEAAAAGEJ5dGVzRXh0RXJyb3I6IDEwNDAtMTA0OQAAAAAAAAANQnl0ZXNFeHRFcnJvcgAAAAAAAAEAAAAAAAAADkxlbmd0aE1pc21hdGNoAAAAAAQQAAAABAAAABtVcGdyYWRlYWJsZUVycm9yOiAxMDUwLTEwNTkAAAAAAAAAABBVcGdyYWRlYWJsZUVycm9yAAAAAwAAAAAAAAAUSW52YWxpZE1pZ3JhdGlvbkRhdGEAAAQaAAAAAAAAABNNaWdyYXRpb25Ob3RBbGxvd2VkAAAABBsAAAAAAAAADlVwZ3JhZGVzRnJvemVuAAAAAAQcAAAABAAAABhNdWx0aXNpZ0Vycm9yOiAxMDYwLTEwNjkAAAAAAAAADU11bHRpc2lnRXJyb3IAAAAAAAAIAAAAAAAAABJBbHJlYWR5SW5pdGlhbGl6ZWQAAAAABCQAAAAAAAAADUludmFsaWRTaWduZXIAAAAAAAQlAAAAAAAAAA5TaWduYXR1cmVFcnJvcgAAAAAEJgAAAAAAAAATU2lnbmVyQWxyZWFkeUV4aXN0cwAAAAQnAAAAAAAAAA5TaWduZXJOb3RGb3VuZAAAAAAEKAAAAAAAAAAdVG90YWxTaWduZXJzTGVzc1RoYW5UaHJlc2hvbGQAAAAAAAQpAAAAAAAAAA9VbnNvcnRlZFNpZ25lcnMAAAAEKgAAAAAAAAANWmVyb1RocmVzaG9sZAAAAAAABCsAAAAFAAAAMEV2ZW50IGVtaXR0ZWQgd2hlbiBhIHNpZ25lciBpcyBhZGRlZCBvciByZW1vdmVkLgAAAAAAAAAJU2lnbmVyU2V0AAAAAAAAAQAAAApzaWduZXJfc2V0AAAAAAACAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAQAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAIAAAAFAAAANkV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgc2lnbmF0dXJlIHRocmVzaG9sZCBpcyBjaGFuZ2VkLgAAAAAAAAAAAAxUaHJlc2hvbGRTZXQAAAABAAAADXRocmVzaG9sZF9zZXQAAAAAAAABAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAPTXVsdGlzaWdTdG9yYWdlAAAAAAIAAAAAAAAAAAAAAAdTaWduZXJzAAAAAAAAAAAAAAAACVRocmVzaG9sZAAAAAAAAAUAAABXRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyB0cmFuc2ZlcnJlZCAoYm90aCBzaW5nbGUtc3RlcCBhbmQgdHdvLXN0ZXAgY29tcGxldGlvbikuAAAAAAAAAAAUT3duZXJzaGlwVHJhbnNmZXJyZWQAAAABAAAAFW93bmVyc2hpcF90cmFuc2ZlcnJlZAAAAAAAAAIAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAIAAAAFAAAAO0V2ZW50IGVtaXR0ZWQgd2hlbiBhIDItc3RlcCBvd25lcnNoaXAgdHJhbnNmZXIgaXMgcHJvcG9zZWQuAAAAAAAAAAAVT3duZXJzaGlwVHJhbnNmZXJyaW5nAAAAAAAAAQAAABZvd25lcnNoaXBfdHJhbnNmZXJyaW5nAAAAAAADAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAAAAAAAA3R0bAAAAAAEAAAAAAAAAAIAAAAFAAAAKkV2ZW50IGVtaXR0ZWQgd2hlbiBvd25lcnNoaXAgaXMgcmVub3VuY2VkLgAAAAAAAAAAABJPd25lcnNoaXBSZW5vdW5jZWQAAAAAAAEAAAATb3duZXJzaGlwX3Jlbm91bmNlZAAAAAABAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAOT3duYWJsZVN0b3JhZ2UAAAAAAAIAAAAAAAAAAAAAAAVPd25lcgAAAAAAAAAAAAAAAAAADFBlbmRpbmdPd25lcgAAAAEAAABJVFRMIGNvbmZpZ3VyYXRpb246IHRocmVzaG9sZCAod2hlbiB0byBleHRlbmQpIGFuZCBleHRlbmRfdG8gKHRhcmdldCBUVEwpLgAAAAAAAAAAAAAJVHRsQ29uZmlnAAAAAAAAAgAAAChUYXJnZXQgVFRMIGFmdGVyIGV4dGVuc2lvbiAoaW4gbGVkZ2VycykuAAAACWV4dGVuZF90bwAAAAAAAAQAAAAzVFRMIHRocmVzaG9sZCB0aGF0IHRyaWdnZXJzIGV4dGVuc2lvbiAoaW4gbGVkZ2VycykuAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAABQAAACdFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIHNldC4AAAAAAAAAAA1UdGxDb25maWdzU2V0AAAAAAAAAQAAAA90dGxfY29uZmlnc19zZXQAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAgAAAAUAAAAqRXZlbnQgZW1pdHRlZCB3aGVuIFRUTCBjb25maWdzIGFyZSBmcm96ZW4uAAAAAAAAAAAAEFR0bENvbmZpZ3NGcm96ZW4AAAABAAAAEnR0bF9jb25maWdzX2Zyb3plbgAAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQVHRsQ29uZmlnU3RvcmFnZQAAAAMAAAAAAAAAAAAAAAZGcm96ZW4AAAAAAAAAAAAAAAAACEluc3RhbmNlAAAAAAAAAAAAAAAKUGVyc2lzdGVudAAAAAAAAgAAAAAAAAAAAAAAElVwZ3JhZGVhYmxlU3RvcmFnZQAAAAAAAgAAAAAAAAAAAAAABkZyb3plbgAAAAAAAAAAAAAAAAAJTWlncmF0aW5nAAAAAB4RY29udHJhY3RlbnZtZXRhdjAAAAAAAAAAFwAAAAAAbw5jb250cmFjdG1ldGF2MAAAAAAAAAAFcnN2ZXIAAAAAAAAGMS45MC4wAAAAAAAAAAAACHJzc2RrdmVyAAAALzIzLjQuMCM2NzNkNmM0ZjIzNjhkMjgyZDI1ZGEyOWJkYTU1YzIxYjhiZTY5Y2E2AA==";
|
|
11
|
+
export declare const WASM_BASE64 = "AGFzbQEAAAABfxZgAn5+AX5gAX4BfmADfn5+AX5gAAF+YAR+fn5+AX5gAAF/YAF/AGACf38AYAF/AX5gAn5+AX9gAABgAn5/AGABfgBgA39/fwBgAn9+AGACf38BfmAEf39/fwF+YAJ+fgBgA39+fgBgBn9+fn5+fwBgBH9+fn8AYAV/fn5+fgACfxUBbAExAAABYQEwAAEBZAFfAAIBbAFfAAIBeAExAAABbAEyAAABeAE3AAMBeAEwAAABbAE3AAQBaQE4AAEBaQE3AAEBYgFqAAABaQE2AAABbQE5AAIBdgFnAAABeAEzAAMBeAE4AAMBbAEwAAABbAE4AAABeAE1AAEBbQFhAAQDSkkFBgcICQoDAwYLCgYMCAYIDQ4EDgUFBgAPCgEHBwwBDwEQAQEAAgMDAwMDAwERAAoFEgMKAwAADggDBwcDAwoNDg0NExQVFRQVBQMBABEGIQR/AUGAgMAAC38AQcKBwAALfwBB3oPAAAt/AEHgg8AACweaAxkGbWVtb3J5AgAHZ2V0X2ZlZQAnDV9fY29uc3RydWN0b3IALxFzZXRfbmF0aXZlX2ZlZV9icAAzD3NldF9mZWVfZW5hYmxlZAA3D3NldF96cm9fZmVlX2xpYgA4DndpdGhkcmF3X3Rva2VuADoNbmF0aXZlX2ZlZV9icAA7C2ZlZV9lbmFibGVkADwLenJvX2ZlZV9saWIAPQphdXRob3JpemVyAD4Fb3duZXIAPw1wZW5kaW5nX293bmVyAEASdHJhbnNmZXJfb3duZXJzaGlwAEEacHJvcG9zZV9vd25lcnNoaXBfdHJhbnNmZXIAQxBhY2NlcHRfb3duZXJzaGlwAEcScmVub3VuY2Vfb3duZXJzaGlwAEkTZXh0ZW5kX2luc3RhbmNlX3R0bABKD3NldF90dGxfY29uZmlncwBLC3R0bF9jb25maWdzAE4SZnJlZXplX3R0bF9jb25maWdzAFEVaXNfdHRsX2NvbmZpZ3NfZnJvemVuAFIBXwMBCl9fZGF0YV9lbmQDAgtfX2hlYXBfYmFzZQMDCtNJSYsBAgJ/AX4jgICAgABBEGsiACSAgICAACAAQQRqEJaAgIAAAkAgACgCBEEBRw0AIAAoAgggACgCDBCXgICAAAtBACEBAkBBABCYgICAACICQgIQmYCAgABFDQBBASEBAkACQCACQgIQgICAgACnQf8BcQ4CAQIACwALQQAhAQsgAEEQaiSAgICAACABCwwAIABBARDPgICAAAsbACAArUIghkIEhCABrUIghkIEhBCSgICAABoLwgECAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkACQAJAIABB/wFxDgMAAQIACyABQcaDwIAAQQYQpYCAgAAgASgCAA0DIAEgASkDCBCmgICAAAwCCyABQcyDwIAAQQgQpYCAgAAgASgCAA0CIAEgASkDCBCmgICAAAwBCyABQdSDwIAAQQoQpYCAgAAgASgCAA0BIAEgASkDCBCmgICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACCw8AIAAgARCRgICAAEIBUQsPABCbgICAABCBgICAABoLZgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABCWgICAAAJAIAAoAgBBAUcNACAAKAIEIAAoAggQl4CAgAALIAAQnYCAgAAgACkDCCEBIAApAwBBiggQnoCAgAAgAEEQaiSAgICAACABC0oCAX8BfiOAgICAAEEQayIAJICAgIAAIAAQnYCAgAAgACkDCCEBIAApAwBBiggQnoCAgAAgARCBgICAABogAEEQaiSAgICAACABC1ABAX8jgICAgABBEGsiASSAgICAACABQQRqEJaAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBCXgICAAAsgABCjgICAACABQRBqJICAgIAACykAAkAgAKdBAXFFDQAPCyABQfp3aq1CIIZCg4CAgOCAAXwQoYCAgAAAC0IBAX8jgICAgABBEGsiACSAgICAACAAEKCAgIAAAkAgACkDAFANAEKDgICAsIEBEKGAgIAAAAsgAEEQaiSAgICAAAuTAQIBfwJ+I4CAgIAAQRBrIgEkgICAgAAgAUEEahCWgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQl4CAgAALQgAhAgJAAkBBARCigICAACIDQgAQmYCAgABFDQAgA0IAEICAgIAAIgJC/wGDQs0AUg0BIAAgAjcDCEIBIQILIAAgAjcDACABQRBqJICAgIAADwsACwsAIAAQk4CAgAAaC5IBAgF/AX4jgICAgABBEGsiASSAgICAAAJAAkACQAJAIABBAXFFDQAgAUHZgsCAAEEMEKWAgIAAIAEoAgANAiABIAEpAwgQpoCAgAAMAQsgAUHUgsCAAEEFEKWAgIAAIAEoAgANASABIAEpAwgQpoCAgAALIAEpAwghAiABKQMAUA0BCwALIAFBEGokgICAgAAgAgtNAQJ+QgAhAQJAAkBBABCigICAACICQgIQmYCAgABFDQAgAkICEICAgIAAIgFC/wGDQs0AUg0BIAAgATcDCEIBIQELIAAgATcDAA8LAAvCAQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQAJAAkAgAEH/AXEOAwABAgALIAFBpIHAgABBCxClgICAACABKAIADQMgASABKQMIEKaAgIAADAILIAFBr4HAgABBChClgICAACABKAIADQIgASABKQMIEKaAgIAADAELIAFBuYHAgABBCRClgICAACABKAIADQEgASABKQMIEKaAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILUQIBfwF+I4CAgIAAQRBrIgMkgICAgAAgAyABIAIQ1ICAgABCASEEAkAgAygCAA0AIAAgAykDCDcDCEIAIQQLIAAgBDcDACADQRBqJICAgIAAC0QBAX8jgICAgABBEGsiAiSAgICAACACIAE3AwggAkEIakEBEK2AgIAAIQEgAEIANwMAIAAgATcDCCACQRBqJICAgIAAC94EAgJ/A34jgICAgABB8ABrIgQkgICAgAACQAJAIABC/wGDQs0AUg0AIAFC/wGDQgRSDQAgBEHQAGogAhCogICAACAEKAJQQQFGDQBBASADp0H/AXEiBUEAR0EBdCAFQQFGGyIFQQJGDQAgBCkDaCEGIAQpA2AhByAEQdAAahCWgICAAAJAIAQoAlBBAUcNACAEKAJUIAQoAlgQl4CAgAALAkAgBkJ/Vw0AQgAhA0IAIQIQqYCAgABFDQIgBEEANgIsIARBEGogByAGEKqAgIAArUIAIARBLGoQ2ICAgAACQCAEKAIsDQAgBCAEKQMQIAQpAxhCkM4AQgAQ24CAgAAgBCkDCCECIAQpAwAhAyAFQQFxRQ0DIARB0ABqEKuAgIAAAkAgBCgCUEUNACAEKQNYIQggByAGEKyAgIAAIQYgBCADIAIQrICAgAA3A0ggBCAGNwNAIAQgAUKEgICAcIM3AzggBCAANwMwQQAhBQJAA0ACQCAFQSBHDQBBACEFAkADQCAFQSBGDQEgBEHQAGogBWogBEEwaiAFaikDADcDACAFQQhqIQUMAAsLIARB0ABqIAhCjtTqtZDXsgEgBEHQAGpBBBCtgICAABCCgICAABCogICAACAEKAJQQQFGDQQgBCkDaCICQn9XDQIgBCkDYCEDDAcLIARB0ABqIAVqQgI3AwAgBUEIaiEFDAALC0KDgICAMBChgICAAAALQoOAgIDAABChgICAAAALEK6AgIAAAAtCg4CAgCAQoYCAgAAACwALIAMgAhCsgICAACECIARB8ABqJICAgIAAIAILfQIBfwF+AkACQAJAAkAgAadB/wFxIgJBxQBGDQAgAkELRw0CIAAgAUI/hzcDGCAAIAFCCIc3AxAMAQsgARCJgICAACEDIAEQioCAgAAhASAAIAM3AxggACABNwMQC0IAIQEMAQsgAEKDkICAgAE3AwhCASEBCyAAIAE3AwALiwECAn8BfiOAgICAAEEQayIAJICAgIAAIABBBGoQloCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMEJeAgIAAC0EAIQECQEEBEKSAgIAAIgJCAhCZgICAAEUNAEEBIQECQAJAIAJCAhCAgICAAKdB/wFxDgIBAgALAAtBACEBCyAAQRBqJICAgIAAIAELigECAn8BfiOAgICAAEEQayIAJICAgIAAIABBBGoQloCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMEJeAgIAAC0EAIQECQAJAQQAQpICAgAAiAkICEJmAgIAARQ0AIAJCAhCAgICAACICQv8Bg0IEUg0BIAJCIIinIQELIABBEGokgICAgAAgAQ8LAAuTAQIBfwJ+I4CAgIAAQRBrIgEkgICAgAAgAUEEahCWgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQl4CAgAALQgAhAgJAAkBBAhCkgICAACIDQgIQmYCAgABFDQAgA0ICEICAgIAAIgJC/wGDQs0AUg0BIAAgAjcDCEIBIQILIAAgAjcDACABQRBqJICAgIAADwsAC0UAAkAgAEKAgICAgICAwAB8Qv//////////AFYNACAAIACFIAEgAEI/h4WEQgBSDQAgAEIIhkILhA8LIAEgABCMgICAAAsaACAArUIghkIEhCABrUIghkIEhBCOgICAAAsJABDTgICAAAALXQACQAJAIABC/wGDQs0AUg0AQYDLHkGA0h8QsICAgABBgMseQYDSHxCxgICAAEEAEKKAgIAAQgIQmYCAgAANASAAELKAgIAAQgIPCwALQoOAgICQgQEQoYCAgAAACw4AQQEgACABENeAgIAACw4AQQIgACABENeAgIAACw4AQQAgAEICEMaAgIAAC9IBAgF/AX4jgICAgABBEGsiASSAgICAAAJAAkAgAEL/AYNCBFINABCagICAACABEJaAgIAAAkAgASgCAEEBRw0AIAEoAgQgASgCCBCXgICAAAsgAEKAgICAkOIJWg0BQQAQpICAgAAgAEKEgICA8P8PgyIAQgIQg4CAgAAaQYCAwIAAQREQtICAgAAQtYCAgAAhAiABIAA3AwAgAkGggMCAAEEBIAFBARC2gICAABCEgICAABogAUEQaiSAgICAAEICDwsAC0KDgICAEBChgICAAAALRQIBfwF+I4CAgIAAQRBrIgIkgICAgAAgAiAAIAEQ1ICAgAACQCACKAIAQQFHDQAACyACKQMIIQMgAkEQaiSAgICAACADC2MDAX8BfgF/I4CAgIAAQRBrIgEkgICAgAAgASAANwMAQgIhAkEBIQMCQANAIANFDQEgA0F/aiEDIAAhAgwACwsgASACNwMIIAFBCGpBARCtgICAACEAIAFBEGokgICAgAAgAAsuAAJAIAEgA0YNAAALIACtQiCGQgSEIAKtQiCGQgSEIAGtQiCGQgSEEI2AgIAAC8ABAgJ/AX4jgICAgABBEGsiASSAgICAAAJAQQEgAKdB/wFxIgJBAEdBAXQgAkEBRhsiAkECRg0AEJqAgIAAIAEQloCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEJeAgIAAC0EBEKSAgIAAIAKtIgBCAhCDgICAABpBqIDAgABBDxC0gICAABC1gICAACEDIAEgADcDACADQcSAwIAAQQEgAUEBELaAgIAAEISAgIAAGiABQRBqJICAgIAAQgIPCwAL4wECAX8CfiOAgICAAEEQayIBJICAgIAAAkACQCAAQgJRDQAgAEL/AYNCzQBSDQELEJqAgIAAIAEQloCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEJeAgIAAC0ECEKSAgIAAIQICQAJAIABCAlINACACQgIQhYCAgAAaQgAhAgwBCyACIABCAhCDgICAABpCASECC0HMgMCAAEEPELSAgIAAELWAgIAAIQMgASACIAAQuYCAgAA3AwAgA0HogMCAAEEBIAFBARC2gICAABCEgICAABogAUEQaiSAgICAAEICDwsACw0AIAFCAiAAp0EBcRsLiQMDAX8CfgF/I4CAgIAAQcAAayIDJICAgIAAAkAgAEL/AYNCzQBSDQAgAUL/AYNCzQBSDQAgAyACEKiAgIAAIAMoAgBBAUYNACADKQMYIQIgAykDECEEEJqAgIAAIAMQloCAgAACQCADKAIAQQFHDQAgAygCBCADKAIIEJeAgIAACxCGgICAACEFIAMgBCACEKyAgIAANwM4IAMgATcDMCADIAU3AyhBACEGAkADQAJAIAZBGEcNAEEAIQYCQANAIAZBGEYNASADIAZqIANBKGogBmopAwA3AwAgBkEIaiEGDAALCyAAQo7u6pW+tt7zACADQQMQrYCAgAAQgoCAgABC/wGDQgJSDQJB8IDAgABBDxC0gICAABC1gICAACEFIAQgAhCsgICAACECIAMgADcDECADIAE3AwggAyACNwMAIAVBjIHAgABBAyADQQMQtoCAgAAQhICAgAAaIANBwABqJICAgIAAQgIPCyADIAZqQgI3AwAgBkEIaiEGDAALCxCugICAAAALAAsPABCqgICAAK1CIIZCBIQLCQAQqYCAgACtCz4CAX8BfiOAgICAAEEQayIAJICAgIAAIAAQq4CAgAAgACkDACAAKQMIELmAgIAAIQEgAEEQaiSAgICAACABCwgAEJuAgIAACz4CAX8BfiOAgICAAEEQayIAJICAgIAAIAAQnYCAgAAgACkDACAAKQMIELmAgIAAIQEgAEEQaiSAgICAACABCz4CAX8BfiOAgICAAEEQayIAJICAgIAAIAAQoICAgAAgACkDACAAKQMIELmAgIAAIQEgAEEQaiSAgICAACABC30CAX8BfiOAgICAAEEQayIBJICAgIAAAkAgAEL/AYNCzQBSDQAgAUEEahCWgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQl4CAgAALEJyAgIAAIQIQn4CAgAAgABCygICAACACIAAQwoCAgAAgAUEQaiSAgICAAEICDwsAC2ECAX8BfiOAgICAAEEQayICJICAgIAAQcuBwIAAQRUQtICAgAAQtYCAgAAhAyACIAA3AwggAiABNwMAIANB9IHAgABBAiACQQIQtoCAgAAQhICAgAAaIAJBEGokgICAgAAL3QICAX8CfiOAgICAAEEgayICJICAgIAAAkACQAJAIABC/wGDQs0AUg0AIAFC/wGDQgRSDQAgAkEIahCWgICAAAJAIAIoAghBAUcNACACKAIMIAIoAhAQl4CAgAALEJyAgIAAIQMCQAJAIAFC/////w9WDQAgAkEIahCggICAACACKQMQIQEgAikDCEGICBCegICAACABIAAQh4CAgABQRQ0DEMSAgIAADAELEMWAgIAAIAFCIIinSQ0DQQEgAEIAEMaAgIAAQQEQooCAgABCACABQoSAgIBwgyIBIAEQiICAgAAaQYSCwIAAQRYQtICAgAAQtYCAgAAhBCACIAE3AxggAiADNwMQIAIgADcDCCAEQaCCwIAAQQMgAkEIakEDELaAgIAAEISAgIAAGgsgAkEgaiSAgICAAEICDwsAC0KDgICA4IABEKGAgIAAAAtCg4CAgPCAARChgICAAAALEwBBARCigICAAEIAEIWAgIAAGgszAQJ+EI+AgIAAIQACQBCQgICAAEIgiCIBIABCIIgiAFQNACABpyAAp2sPCxCugICAAAALFQAgABCigICAACABIAIQg4CAgAAaC6cBAgF/An4jgICAgABBEGsiACSAgICAACAAEJaAgIAAAkAgACgCAEEBRw0AIAAoAgQgACgCCBCXgICAAAsgABCggICAACAAKQMIIQEgACkDAEGICBCegICAACABEIGAgIAAGiAAEKOAgIAAAkAgACgCAA0AEMiAgIAAAAsgACkDCCECEMSAgIAAIAEQsoCAgAAgAiABEMKAgIAAIABBEGokgICAgABCAgsJABCugICAAAALoAECAX8CfiOAgICAAEEQayIAJICAgIAAIAAQloCAgAACQCAAKAIAQQFHDQAgACgCBCAAKAIIEJeAgIAACxCcgICAACEBEJ+AgIAAQQAQooCAgABCAhCFgICAABpBuILAgABBExC0gICAABC1gICAACECIAAgATcDACACQcyCwIAAQQEgAEEBELaAgIAAEISAgIAAGiAAQRBqJICAgIAAQgILMQACQCAAQv8Bg0IEUg0AIAFC/wGDQgRSDQAgAEIgiKcgAUIgiKcQl4CAgABCAg8LAAveBAEFfyOAgICAAEHQAGsiAiSAgICAACACQShqIAAQzICAgAACQCACKAIoQQJGDQAgAkEIakEIaiACQShqQQhqIgMoAgA2AgAgAiACKQIoNwMIIAJBKGogARDMgICAACACKAIoQQJGDQAgAkEYakEIaiADKAIANgIAIAIgAikCKDcDGCACQShqEJaAgIAAAkAgAigCKEEBRw0AIAIoAiwgAigCMBCXgICAAAsQmoCAgAACQAJAAkAQlYCAgAANABDFgICAACIDQYD7gAMgA0GA+4ADSRshBCACIAJBGGo2AiwgAiACQQhqNgIoQQAhAwNAIANBCEYNAwJAIAJBKGogA2ooAgAiBSgCAEEBcUUNACAFKAIIIgYgBEsNAyAFKAIEIAZLDQMLIANBBGohAwwACwtCg4CAgND/ABChgICAAAALQoOAgIDA/wAQoYCAgAAACwJAAkAgAigCCEEBRw0AIAIoAgwgAigCEBCwgICAAAwBC0EBEJiAgIAAQgIQhYCAgAAaCwJAAkAgAigCGEEBRw0AIAIoAhwgAigCIBCxgICAAAwBC0ECEJiAgIAAQgIQhYCAgAAaCyACQShqQQhqIAJBCGpBCGooAgA2AgAgAkE8aiACQRhqQQhqKAIANgIAIAIgAikDCDcDKCACIAIpAxg3AjRBgIPAgABBDxC0gICAABC1gICAACEAIAJBKGoQzYCAgAAhASACIAJBNGoQzYCAgAA3A0ggAiABNwNAIABBpIPAgABBAiACQcAAakECELaAgIAAEISAgIAAGiACQdAAaiSAgICAAEICDwsAC2gBAX8jgICAgABBEGsiAiSAgICAAAJAAkAgAUICUQ0AIAJBBGogARDVgICAAAJAIAIoAgRFDQAgAEECNgIADAILIAAgAikCCDcCBCAAQQE2AgAMAQsgAEEANgIACyACQRBqJICAgIAAC0MCAX8BfiOAgICAAEEQayIBJICAgIAAIAEgABDQgICAAAJAIAEoAgBBAUcNAAALIAEpAwghAiABQRBqJICAgIAAIAILxAECAn8BfiOAgICAAEHAAGsiACSAgICAACAAQQhqEJaAgIAAAkAgACgCCEEBRw0AIAAoAgwgACgCEBCXgICAAAsgAEEIahCWgICAACAAQRRqIgFBAhDPgICAACAAQTBqIABBCGoQ0ICAgAACQAJAIAAoAjANACAAKQM4IQIgAEEwaiABENCAgIAAIAAoAjBBAUcNAQsACyAAIAApAzg3AyggACACNwMgIABBIGpBAhCtgICAACECIABBwABqJICAgIAAIAILdwICfwF+I4CAgIAAQRBrIgIkgICAgABBACEDAkACQCABEJiAgIAAIgRCAhCZgICAAEUNACACQQRqIARCAhCAgICAABDVgICAAEEBIQMgAigCBEEBRg0BIAAgAikCCDcCBAsgACADNgIAIAJBEGokgICAgAAPCwALMAACQCABKAIAQQFHDQAgACABKAIEIAEoAggQ1oCAgAAPCyAAQgA3AwAgAEICNwMIC6oBAQF/I4CAgIAAQSBrIgAkgICAgAAgAEEMahCWgICAAAJAIAAoAgxBAUcNACAAKAIQIAAoAhQQl4CAgAALEJqAgIAAAkAQlYCAgABFDQBCg4CAgOD/ABChgICAAAALQQAQmICAgABCAUICEIOAgIAAGkG0g8CAAEESELSAgIAAELWAgIAAQQRBACAAQRhqQQAQtoCAgAAQhICAgAAaIABBIGokgICAgABCAgsJABCVgICAAK0LAwAAC9sBAgF+BH8CQAJAIAJBCUsNAEIAIQMgAiEEIAEhBQNAAkAgBA0AIANCCIZCDoQhAwwDC0EBIQYCQCAFLQAAIgdB3wBGDQACQCAHQVBqQf8BcUEKSQ0AAkAgB0G/f2pB/wFxQRpJDQAgB0Gff2pB/wFxQRlLDQQgB0FFaiEGDAILIAdBS2ohBgwBCyAHQVJqIQYLIANCBoYgBq1C/wGDhCEDIARBf2ohBCAFQQFqIQUMAAsLIAGtQiCGQgSEIAKtQiCGQgSEEIuAgIAAIQMLIABCADcDACAAIAM3AwgLvgECAn8BfiOAgICAAEEQayICJICAgIAAQQAhAwJAA0AgA0EQRg0BIAIgA2pCAjcDACADQQhqIQMMAAsLQQEhAwJAIAFC/wGDQswAUg0AIAFB8ILAgACtQiCGQgSEIAKtQiCGQgSEQoSAgIAgEJSAgIAAGiACKQMAIgFC/wGDQgRSDQAgAikDCCIEQv8Bg0IEUg0AIAAgAUIgiKc2AgggACAEQiCIPgIEQQAhAwsgACADNgIAIAJBEGokgICAgAALYAIBfwF+I4CAgIAAQRBrIgMkgICAgAAgAyABrUIghkIEhDcDCCADIAKtQiCGQgSENwMAQfCCwIAAQQIgA0ECELaAgIAAIQQgAEIANwMAIAAgBDcDCCADQRBqJICAgIAAC1YCAX8BfiOAgICAAEEQayIDJICAgIAAIAAQmICAgAAhBCADIAEgAhDWgICAAAJAIAMoAgBBAUcNAAALIAQgAykDCEICEIOAgIAAGiADQRBqJICAgIAAC9UDAwF/An4CfyOAgICAAEHgAGsiBiSAgICAAEIAIQdCACEIQQAhCQJAIAEgAoRQDQAgAyAEhFANAEIAIAN9IAMgBEIAUyIJGyEHQgAgAX0gASACQgBTIgobIQhCACAEIANCAFKtfH0gBCAJGyEDIAQgAoUhBAJAAkBCACACIAFCAFKtfH0gAiAKGyICUA0AAkAgA1ANACAGQdAAaiAHIAMgCCACEN2AgIAAQQEhCSAGKQNYIQEgBikDUCECDAILIAZBwABqIAcgAyAIQgAQ3YCAgAAgBkEwaiAHIAMgAkIAEN2AgIAAIAYpA0giAiAGKQMwfCIBIAJUIAYpAzhCAFJyIQkgBikDQCECDAELAkAgA1ANACAGQSBqIAdCACAIIAIQ3YCAgAAgBkEQaiADQgAgCCACEN2AgIAAIAYpAygiAiAGKQMQfCIBIAJUIAYpAxhCAFJyIQkgBikDICECDAELIAYgByADIAggAhDdgICAAEEAIQkgBikDCCEBIAYpAwAhAgtCACACfSACIARCAFMiChshCEIAIAEgAkIAUq18fSABIAobIgcgBIVCAFkNAEEBIQkLIAAgCDcDACAFIAk2AgAgACAHNwMIIAZB4ABqJICAgIAAC1cBAX4CQAJAIANBwABxDQAgA0UNASACIANBP3GtIgSGIAFBACADa0E/ca2IhCECIAEgBIYhAQwBCyABIANBP3GthiECQgAhAQsgACABNwMAIAAgAjcDCAvRCAQBfwF+A38EfiOAgICAAEGwAWsiBSSAgICAAEIAIQYCQAJAAkACQAJAIAR5IAN5QsAAfCAEQgBSG6ciByACeSABeULAAHwgAkIAUhunIghNDQAgCEE/Sw0BIAdB3wBLDQIgByAIa0EgSQ0DIAVBoAFqIAMgBEHgACAHayIJENyAgIAAIAU1AqABQgF8IQpCACELQgAhBgJAAkACQAJAA0AgBUGQAWogASACQcAAIAhrIggQ3ICAgAAgBSkDkAEhDAJAIAggCU8NACAFQdAAaiADIAQgCBDcgICAAAJAAkAgBSkDUCIKUEUNAAwBCyAMIAqAIQwLIAVBwABqIAMgBCAMQgAQ3YCAgAACQCABIAUpA0AiDVQiCCACIAUpA0giClQgAiAKURsNACACIAp9IAitfSECIAEgDX0hASAGIAsgDHwiDCALVK18IQYMCwsgAiAEfCABIAN8IgQgAVStfCAKfSAEIA1UrX0hAiAEIA19IQEgBiAMIAt8Qn98IgwgC1StfCEGDAoLIAVBgAFqIAwgCoAiDEIAIAggCWsiCBDZgICAACAFQfAAaiADIAQgDEIAEN2AgIAAIAVB4ABqIAUpA3AgBSkDeCAIENmAgIAAIAUpA4gBIAZ8IAUpA4ABIgYgC3wiCyAGVK18IQYgByACIAUpA2h9IAEgBSkDYCIMVK19IgJ5IAEgDH0iAXlCwAB8IAJCAFIbpyIITQ0BIAhBP00NAAsgA1BFDQEMAgsgASADVCIIIAIgBFQgAiAEURtFDQIgCyEMDAcLIAEgA4AhAgsgASADgiEBIAYgCyACfCIMIAtUrXwhBkIAIQIMBQsgAiAEfSAIrX0hAiABIAN9IQEgBiALQgF8IgxQrXwhBgwECyACIARCACABIANaIAIgBFogAiAEURsiCBt9IAEgA0IAIAgbIgRUrX0hAiABIAR9IQEgCK0hDAwDCyABIAEgA4AiDCADfn0hAUIAIQZCACECDAILIAIgAiADQv////8PgyIEgCIGIAN+fUIghiABQiCIIgyEIASAIgJCIIYgDCACIAN+fUIghiABQv////8Pg4QiASAEgCIDhCEMIAEgAyAEfn0hASACQiCIIAaEIQZCACECDAELIAVBMGogAyAEQcAAIAhrIggQ3ICAgAAgBUEgaiABIAIgCBDcgICAAEIAIQYgBUEQaiADQgAgBSkDICAFKQMwgCIMQgAQ3YCAgAAgBSAEQgAgDEIAEN2AgIAAIAUpAxAhCgJAAkAgBSkDCCAFKQMYIg0gBSkDAHwiCyANVK18QgBSDQAgASAKVCIIIAIgC1QgAiALURtFDQELIAQgAnwgAyABfCIBIANUrXwgC30gASAKVK19IQIgDEJ/fCEMIAEgCn0hAQwBCyACIAt9IAitfSECIAEgCn0hAUIAIQYLIAAgATcDECAAIAw3AwAgACACNwMYIAAgBjcDCCAFQbABaiSAgICAAAuhAQECfyOAgICAAEEgayIFJICAgIAAIAVCACABfSABIAJCAFMiBhtCACACIAFCAFKtfH0gAiAGG0IAIAN9IAMgBEIAUyIGG0IAIAQgA0IAUq18fSAEIAYbENqAgIAAIAUpAwghAyAAQgAgBSkDACIBfSABIAQgAoVCAFMiBhs3AwAgAEIAIAMgAUIAUq18fSADIAYbNwMIIAVBIGokgICAgAALVwEBfgJAAkAgA0HAAHENACADRQ0BIAJBACADa0E/ca2GIAEgA0E/ca0iBIiEIQEgAiAEiCECDAELIAIgA0E/ca2IIQFCACECCyAAIAE3AwAgACACNwMIC24BBn4gACADQv////8PgyIFIAFC/////w+DIgZ+IgcgA0IgiCIIIAZ+IgYgBSABQiCIIgl+fCIFQiCGfCIKNwMAIAAgCCAJfiAFIAZUrUIghiAFQiCIhHwgCiAHVK18IAQgAX4gAyACfnx8NwMICwvoAwEAQYCAwAAL3gNuYXRpdmVfZmVlX2JwX3NldG5hdGl2ZV9mZWVfYnAAABEAEAANAAAAZmVlX2VuYWJsZWRfc2V0ZmVlX2VuYWJsZWQAADcAEAALAAAAenJvX2ZlZV9saWJfc2V0enJvX2ZlZV9saWIAAFsAEAALAAAAdG9rZW5fd2l0aGRyYXduYW1vdW50dG90b2tlbn8AEAAGAAAAhQAQAAIAAACHABAABQAAAE5hdGl2ZUZlZUJwRmVlRW5hYmxlZFpyb0ZlZUxpYnRocmVzaG9sZG93bmVyc2hpcF90cmFuc2ZlcnJlZG5ld19vd25lcm9sZF9vd25lcgAA4AAQAAkAAADpABAACQAAAG93bmVyc2hpcF90cmFuc2ZlcnJpbmd0dGwAAADgABAACQAAAOkAEAAJAAAAGgEQAAMAAABvd25lcnNoaXBfcmVub3VuY2VkAOkAEAAJAAAAT3duZXJQZW5kaW5nT3duZXJleHRlbmRfdG8AAGUBEAAJAAAAwgAQAAkAAAB0dGxfY29uZmlnc19zZXRpbnN0YW5jZXBlcnNpc3RlbnQAAACPARAACAAAAJcBEAAKAAAAdHRsX2NvbmZpZ3NfZnJvemVuRnJvemVuSW5zdGFuY2VQZXJzaXN0ZW50AP+AAQ5jb250cmFjdHNwZWN2MAAAAAQAAAAAAAAAAAAAAA1UcmVhc3VyeUVycm9yAAAAAAAABAAAAAAAAAASSW52YWxpZE5hdGl2ZUZlZUJwAAAAAAABAAAAAAAAABVJbnZhbGlkVG90YWxOYXRpdmVGZWUAAAAAAAACAAAAAAAAAA1JbnZhbGlkWnJvRmVlAAAAAAAAAwAAAAAAAAAPWnJvRmVlTGliTm90U2V0AAAAAAQAAAAFAAAANEVtaXR0ZWQgd2hlbiB0aGUgbmF0aXZlIGZlZSBiYXNpcyBwb2ludHMgaXMgdXBkYXRlZC4AAAAAAAAADk5hdGl2ZUZlZUJwU2V0AAAAAAABAAAAEW5hdGl2ZV9mZWVfYnBfc2V0AAAAAAAAAQAAAAAAAAANbmF0aXZlX2ZlZV9icAAAAAAAAAQAAAAAAAAAAgAAAAUAAAAzRW1pdHRlZCB3aGVuIGZlZSBjb2xsZWN0aW9uIGlzIGVuYWJsZWQgb3IgZGlzYWJsZWQuAAAAAAAAAAANRmVlRW5hYmxlZFNldAAAAAAAAAEAAAAPZmVlX2VuYWJsZWRfc2V0AAAAAAEAAAAAAAAAC2ZlZV9lbmFibGVkAAAAAAEAAAAAAAAAAgAAAAUAAAAzRW1pdHRlZCB3aGVuIHRoZSBaUk8gZmVlIGxpYnJhcnkgaXMgc2V0IG9yIHJlbW92ZWQuAAAAAAAAAAAMWnJvRmVlTGliU2V0AAAAAQAAAA96cm9fZmVlX2xpYl9zZXQAAAAAAQAAAAAAAAALenJvX2ZlZV9saWIAAAAD6AAAABMAAAAAAAAAAgAAAAUAAABLRW1pdHRlZCB3aGVuIGEgdG9rZW4gKGluY2x1ZGluZyBuYXRpdmUgWExNKSBpcyB3aXRoZHJhd24gZnJvbSB0aGUgY29udHJhY3QuAAAAAAAAAAAOVG9rZW5XaXRoZHJhd24AAAAAAAEAAAAPdG9rZW5fd2l0aGRyYXduAAAAAAMAAAAAAAAABXRva2VuAAAAAAAAEwAAAAAAAAAAAAAAAnRvAAAAAAATAAAAAAAAAAAAAAAGYW1vdW50AAAAAAALAAAAAAAAAAIAAAAAAAAAjUdldCB0aGUgdHJlYXN1cnkgZmVlIGZvciBhIGNyb3NzLWNoYWluIG1lc3NhZ2UuCgpSZXR1cm5zIDAgaWYgZmVlIGNvbGxlY3Rpb24gaXMgZGlzYWJsZWQuIEZvciBaUk8gcGF5bWVudHMsIGRlbGVnYXRlcyB0byB0aGUgWlJPIGZlZSBsaWJyYXJ5LgAAAAAAAAdnZXRfZmVlAAAAAAQAAAAAAAAABnNlbmRlcgAAAAAAEwAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAABB0b3RhbF9uYXRpdmVfZmVlAAAACwAAAAAAAAAKcGF5X2luX3pybwAAAAAAAQAAAAEAAAALAAAAAAAAAAAAAAANX19jb25zdHJ1Y3RvcgAAAAAAAAEAAAAAAAAABW93bmVyAAAAAAAAEwAAAAAAAAAAAAAAjVNldHMgdGhlIG5hdGl2ZSBmZWUgcGVyY2VudGFnZSBpbiBiYXNpcyBwb2ludHMuCgojIEFyZ3VtZW50cwoqIGBuYXRpdmVfZmVlX2JwYCAtIEZlZSBwZXJjZW50YWdlIGluIGJhc2lzIHBvaW50cyAoMC0xMDAwMCwgd2hlcmUgMTAwMDAgPSAxMDAlKQAAAAAAABFzZXRfbmF0aXZlX2ZlZV9icAAAAAAAAAEAAAAAAAAADW5hdGl2ZV9mZWVfYnAAAAAAAAAEAAAAAAAAAAAAAABtRW5hYmxlcyBvciBkaXNhYmxlcyBmZWUgY29sbGVjdGlvbiBnbG9iYWxseS4KCiMgQXJndW1lbnRzCiogYGZlZV9lbmFibGVkYCAtIFdoZXRoZXIgZmVlIGNvbGxlY3Rpb24gaXMgZW5hYmxlZAAAAAAAAA9zZXRfZmVlX2VuYWJsZWQAAAAAAQAAAAAAAAALZmVlX2VuYWJsZWQAAAAAAQAAAAAAAAAAAAAAo1NldHMgb3IgcmVtb3ZlcyB0aGUgWlJPIGZlZSBsaWJyYXJ5IGZvciBjdXN0b20gWlJPIHRva2VuIGZlZSBjYWxjdWxhdGlvbnMuCgojIEFyZ3VtZW50cwoqIGB6cm9fZmVlX2xpYmAgLSBUaGUgWlJPIGZlZSBsaWJyYXJ5IGNvbnRyYWN0IGFkZHJlc3MsIG9yIGBOb25lYCB0byByZW1vdmUAAAAAD3NldF96cm9fZmVlX2xpYgAAAAABAAAAAAAAAAt6cm9fZmVlX2xpYgAAAAPoAAAAEwAAAAAAAAAAAAABN1dpdGhkcmF3cyBhbnkgdG9rZW4gKGluY2x1ZGluZyBuYXRpdmUgWExNKSBmcm9tIHRoZSBjb250cmFjdCB0byBhIHNwZWNpZmllZCBhZGRyZXNzLgoKT25seSB0aGUgY29udHJhY3Qgb3duZXIgY2FuIGV4ZWN1dGUgdGhpcyBtZXRob2QuCgojIEFyZ3VtZW50cwoqIGB0b2tlbmAgLSBUaGUgdG9rZW4gY29udHJhY3QgYWRkcmVzcyAoY2FuIGJlIG5hdGl2ZSBYTE0gb3IgYW55IG90aGVyIHRva2VuKQoqIGB0b2AgLSBUaGUgcmVjaXBpZW50IGFkZHJlc3MKKiBgYW1vdW50YCAtIFRoZSBhbW91bnQgdG8gd2l0aGRyYXcgKG11c3QgYmUgcG9zaXRpdmUpAAAAAA53aXRoZHJhd190b2tlbgAAAAAAAwAAAAAAAAAFdG9rZW4AAAAAAAATAAAAAAAAAAJ0bwAAAAAAEwAAAAAAAAAGYW1vdW50AAAAAAALAAAAAAAAAAAAAAAyUmV0dXJucyB0aGUgbmF0aXZlIGZlZSBwZXJjZW50YWdlIGluIGJhc2lzIHBvaW50cy4AAAAAAA1uYXRpdmVfZmVlX2JwAAAAAAAAAAAAAAEAAAAEAAAAAAAAACpSZXR1cm5zIHdoZXRoZXIgZmVlIGNvbGxlY3Rpb24gaXMgZW5hYmxlZC4AAAAAAAtmZWVfZW5hYmxlZAAAAAAAAAAAAQAAAAEAAAAAAAAAK1JldHVybnMgdGhlIFpSTyBmZWUgbGlicmFyeSBhZGRyZXNzIGlmIHNldC4AAAAAC3pyb19mZWVfbGliAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAAAAAAAphdXRob3JpemVyAAAAAAAAAAAAAQAAABMAAAAAAAAAPlJldHVybnMgdGhlIGN1cnJlbnQgb3duZXIgYWRkcmVzcywgb3IgTm9uZSBpZiBubyBvd25lciBpcyBzZXQuAAAAAAAFb3duZXIAAAAAAAAAAAAAAQAAA+gAAAATAAAAAAAAAFlSZXR1cm5zIHRoZSBwZW5kaW5nIG93bmVyIGFkZHJlc3MgZm9yIDItc3RlcCB0cmFuc2Zlciwgb3IgTm9uZSBpZiBubyB0cmFuc2ZlciBpcyBwZW5kaW5nLgAAAAAAAA1wZW5kaW5nX293bmVyAAAAAAAAAAAAAAEAAAPoAAAAEwAAAAAAAAErVHJhbnNmZXJzIG93bmVyc2hpcCBpbW1lZGlhdGVseSB0byBhIG5ldyBhZGRyZXNzLgoKVXNlIHdpdGggY2F1dGlvbiAtIGlmIHlvdSB0cmFuc2ZlciB0byBhIHdyb25nIGFkZHJlc3MsIG93bmVyc2hpcCBpcyBsb3N0IGZvcmV2ZXIuCkNvbnNpZGVyIHVzaW5nIGBwcm9wb3NlX293bmVyc2hpcF90cmFuc2ZlcmAgaW5zdGVhZC4KCiMgUGFuaWNzCi0gYE93bmVyTm90U2V0YCBpZiBubyBvd25lciBpcyBjdXJyZW50bHkgc2V0Ci0gYFRyYW5zZmVySW5Qcm9ncmVzc2AgaWYgYSAyLXN0ZXAgdHJhbnNmZXIgaXMgaW4gcHJvZ3Jlc3MAAAAAEnRyYW5zZmVyX293bmVyc2hpcAAAAAAAAQAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAAAAAACXFByb3Bvc2VzIGFuIG93bmVyc2hpcCB0cmFuc2ZlciB0byBhIG5ldyBhZGRyZXNzLgoKVGhlIG5ldyBvd25lciBtdXN0IGNhbGwgYGFjY2VwdF9vd25lcnNoaXAoKWAgd2l0aGluIGB0dGxgIGxlZGdlcnMKdG8gY29tcGxldGUgdGhlIHRyYW5zZmVyLiBUaGUgcGVuZGluZyB0cmFuc2ZlciB3aWxsIGF1dG9tYXRpY2FsbHkgZXhwaXJlIGFmdGVyLgoKIyBBcmd1bWVudHMKLSBgbmV3X293bmVyYCAtIFRoZSBwcm9wb3NlZCBuZXcgb3duZXIKLSBgdHRsYCAtIE51bWJlciBvZiBsZWRnZXJzIHRoZSBuZXcgb3duZXIgaGFzIHRvIGFjY2VwdC4KVXNlIGAwYCB0byBjYW5jZWwgYSBwZW5kaW5nIHRyYW5zZmVyIChuZXdfb3duZXIgbXVzdCBtYXRjaCBwZW5kaW5nKS4KCiMgUGFuaWNzCi0gYE93bmVyTm90U2V0YCBpZiBubyBvd25lciBpcyBjdXJyZW50bHkgc2V0Ci0gYE5vUGVuZGluZ1RyYW5zZmVyYCB3aGVuIGNhbmNlbGxpbmcgYW5kIG5vIHBlbmRpbmcgdHJhbnNmZXIgZXhpc3RzCi0gYEludmFsaWRUdGxgIGlmIHR0bCBleGNlZWRzIG1heCBUVEwKLSBgSW52YWxpZFBlbmRpbmdPd25lcmAgd2hlbiBjYW5jZWxsaW5nIHdpdGggd3JvbmcgbmV3X293bmVyIGFkZHJlc3MAAAAacHJvcG9zZV9vd25lcnNoaXBfdHJhbnNmZXIAAAAAAAIAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAA3R0bAAAAAAEAAAAAAAAAAAAAAC5QWNjZXB0cyBhIHBlbmRpbmcgMi1zdGVwIG93bmVyc2hpcCB0cmFuc2Zlci4KCk11c3QgYmUgY2FsbGVkIGJ5IHRoZSBwZW5kaW5nIG93bmVyIGJlZm9yZSB0aGUgVFRMIGV4cGlyZXMuCgojIFBhbmljcwotIGBOb1BlbmRpbmdUcmFuc2ZlcmAgaWYgdGhlcmUgaXMgbm8gcGVuZGluZyB0cmFuc2ZlciAob3IgaXQgZXhwaXJlZCkAAAAAAAAQYWNjZXB0X293bmVyc2hpcAAAAAAAAAAAAAAAAAAAAKRQZXJtYW5lbnRseSByZW5vdW5jZXMgb3duZXJzaGlwLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgVHJhbnNmZXJJblByb2dyZXNzYCBpZiBhIDItc3RlcCB0cmFuc2ZlciBpcyBpbiBwcm9ncmVzcyAoY2FuY2VsIGl0IGZpcnN0KQAAABJyZW5vdW5jZV9vd25lcnNoaXAAAAAAAAAAAAAAAAAAAAAAAKVFeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwgKGlmIGN1cnJlbnQgVFRMIGlzIGJlbG93IHRoaXMsIGV4dGVuZCkuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAAAATZXh0ZW5kX2luc3RhbmNlX3R0bAAAAAACAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAlleHRlbmRfdG8AAAAAAAAEAAAAAAAAAAAAAAGPU2V0cyBUVEwgY29uZmlncyBmb3IgaW5zdGFuY2UgYW5kIHBlcnNpc3RlbnQgc3RvcmFnZS4KCi0gYE5vbmVgIHZhbHVlcyByZW1vdmUgdGhlIGNvcnJlc3BvbmRpbmcgY29uZmlnIChkaXNhYmxlcyBhdXRvLWV4dGVuc2lvbiBmb3IgdGhhdCB0eXBlKQotIFZhbGlkYXRlcyB0aGF0IGB0aHJlc2hvbGQgPD0gZXh0ZW5kX3RvIDw9IE1BWF9UVExgCgojIEFyZ3VtZW50cwotIGBpbnN0YW5jZWAgLSBUVEwgY29uZmlnIGZvciBpbnN0YW5jZSBzdG9yYWdlCi0gYHBlcnNpc3RlbnRgIC0gVFRMIGNvbmZpZyBmb3IgcGVyc2lzdGVudCBzdG9yYWdlCgojIFBhbmljcwotIGBUdGxDb25maWdGcm96ZW5gIGlmIGNvbmZpZ3MgYXJlIGZyb3plbgotIGBJbnZhbGlkVHRsQ29uZmlnYCBpZiB2YWxpZGF0aW9uIGZhaWxzAAAAAA9zZXRfdHRsX2NvbmZpZ3MAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAACnBlcnNpc3RlbnQAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAASFJldHVybnMgdGhlIGN1cnJlbnQgVFRMIGNvbmZpZ3MgYXMgKGluc3RhbmNlX2NvbmZpZywgcGVyc2lzdGVudF9jb25maWcpLgAAAAt0dGxfY29uZmlncwAAAAAAAAAAAQAAA+0AAAACAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAOFQZXJtYW5lbnRseSBmcmVlemVzIFRUTCBjb25maWdzLCBwcmV2ZW50aW5nIGFueSBmdXR1cmUgbW9kaWZpY2F0aW9ucy4KClRoaXMgaXMgaXJyZXZlcnNpYmxlIGFuZCBwcm92aWRlcyBpbW11dGFiaWxpdHkgZ3VhcmFudGVlcyB0byB1c2Vycy4KRW1pdHMgYFR0bENvbmZpZ3NGcm96ZW5gIGV2ZW50LgoKIyBQYW5pY3MKLSBgVHRsQ29uZmlnQWxyZWFkeUZyb3plbmAgaWYgYWxyZWFkeSBmcm96ZW4AAAAAAAASZnJlZXplX3R0bF9jb25maWdzAAAAAAAAAAAAAAAAAAAAAAAnUmV0dXJucyB3aGV0aGVyIFRUTCBjb25maWdzIGFyZSBmcm96ZW4uAAAAABVpc190dGxfY29uZmlnc19mcm96ZW4AAAAAAAAAAAAAAQAAAAEAAAACAAAAAAAAAAAA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AAAAAAAADgAAAAAAAAAOT25seVJlY2VpdmVMaWIAAAAAAA8AAAAAAAAAEU9ubHlSZWdpc3RlcmVkTGliAAAAAAAAEAAAAAAAAAALT25seVNlbmRMaWIAAAAAEQAAAAAAAAAUUGF0aE5vdEluaXRpYWxpemFibGUAAAASAAAAAAAAABFQYXRoTm90VmVyaWZpYWJsZQAAAAAAABMAAAAAAAAAE1BheWxvYWRIYXNoTm90Rm91bmQAAAAAFAAAAAAAAAAJU2FtZVZhbHVlAAAAAAAAFQAAAAAAAAAMVW5hdXRob3JpemVkAAAAFgAAAAAAAAAOVW5zdXBwb3J0ZWRFaWQAAAAAABcAAAAAAAAAClplcm9acm9GZWUAAAAAABgAAAAAAAAADlpyb1VuYXZhaWxhYmxlAAAAAAAZAAAAAQAAAC1QYXJhbWV0ZXJzIGZvciBzZW5kaW5nIGEgY3Jvc3MtY2hhaW4gbWVzc2FnZS4AAAAAAAAAAAAAD01lc3NhZ2luZ1BhcmFtcwAAAAAFAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAABxUaGUgbWVzc2FnZSBwYXlsb2FkIHRvIHNlbmQuAAAAB21lc3NhZ2UAAAAADgAAACFFbmNvZGVkIGV4ZWN1dG9yIGFuZCBEVk4gb3B0aW9ucy4AAAAAAAAHb3B0aW9ucwAAAAAOAAAAOVdoZXRoZXIgdG8gcGF5IGZlZXMgaW4gWlJPIHRva2VuIGluc3RlYWQgb2YgbmF0aXZlIHRva2VuLgAAAAAAAApwYXlfaW5fenJvAAAAAAABAAAANVJlY2VpdmVyIGFkZHJlc3Mgb24gdGhlIGRlc3RpbmF0aW9uIGNoYWluICgzMiBieXRlcykuAAAAAAAACHJlY2VpdmVyAAAD7gAAACAAAAABAAAATVNvdXJjZSBtZXNzYWdlIGluZm9ybWF0aW9uIGlkZW50aWZ5aW5nIHdoZXJlIGEgY3Jvc3MtY2hhaW4gbWVzc2FnZSBjYW1lIGZyb20uAAAAAAAAAAAAAAZPcmlnaW4AAAAAAAMAAAAXTm9uY2UgZm9yIHRoaXMgcGF0aHdheS4AAAAABW5vbmNlAAAAAAAABgAAAC5TZW5kZXIgYWRkcmVzcyBvbiB0aGUgc291cmNlIGNoYWluICgzMiBieXRlcykuAAAAAAAGc2VuZGVyAAAAAAPuAAAAIAAAACZTb3VyY2UgZW5kcG9pbnQgSUQgKGNoYWluIGlkZW50aWZpZXIpLgAAAAAAB3NyY19laWQAAAAABAAAAAEAAAAoRmVlIHN0cnVjdHVyZSBmb3IgY3Jvc3MtY2hhaW4gbWVzc2FnaW5nLgAAAAAAAAAMTWVzc2FnaW5nRmVlAAAAAgAAAB9GZWUgcGFpZCBpbiBuYXRpdmUgdG9rZW4gKFhMTSkuAAAAAApuYXRpdmVfZmVlAAAAAAALAAAAKEZlZSBwYWlkIGluIFpSTyB0b2tlbiAoTGF5ZXJaZXJvIHRva2VuKS4AAAAHenJvX2ZlZQAAAAALAAAAAQAAAEJSZWNlaXB0IHJldHVybmVkIGFmdGVyIHN1Y2Nlc3NmdWxseSBzZW5kaW5nIGEgY3Jvc3MtY2hhaW4gbWVzc2FnZS4AAAAAAAAAAAAQTWVzc2FnaW5nUmVjZWlwdAAAAAMAAAApVGhlIGZlZXMgY2hhcmdlZCBmb3Igc2VuZGluZyB0aGUgbWVzc2FnZS4AAAAAAAADZmVlAAAAB9AAAAAMTWVzc2FnaW5nRmVlAAAAK0dsb2JhbGx5IHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgbWVzc2FnZS4AAAAABGd1aWQAAAPuAAAAIAAAACRUaGUgb3V0Ym91bmQgbm9uY2UgZm9yIHRoaXMgcGF0aHdheS4AAAAFbm9uY2UAAAAAAAAGAAAAAgAAADhUeXBlIG9mIG1lc3NhZ2UgbGlicmFyeSBpbmRpY2F0aW5nIHN1cHBvcnRlZCBvcGVyYXRpb25zLgAAAAAAAAAOTWVzc2FnZUxpYlR5cGUAAAAAAAMAAAAAAAAAH1N1cHBvcnRzIG9ubHkgc2VuZGluZyBtZXNzYWdlcy4AAAAABFNlbmQAAAAAAAAAIVN1cHBvcnRzIG9ubHkgcmVjZWl2aW5nIG1lc3NhZ2VzLgAAAAAAAAdSZWNlaXZlAAAAAAAAAAAtU3VwcG9ydHMgYm90aCBzZW5kaW5nIGFuZCByZWNlaXZpbmcgbWVzc2FnZXMuAAAAAAAADlNlbmRBbmRSZWNlaXZlAAAAAAABAAAAt1ZlcnNpb24gaW5mb3JtYXRpb24gZm9yIGEgbWVzc2FnZSBsaWJyYXJ5LgoKTm90ZTogYG1pbm9yYCBhbmQgYGVuZHBvaW50X3ZlcnNpb25gIHVzZSBgdTMyYCBpbnN0ZWFkIG9mIGB1OGAgYmVjYXVzZSBTdGVsbGFyIGRvZXMgbm90CnN1cHBvcnQgYHU4YCB0eXBlcyBpbiBjb250cmFjdCBpbnRlcmZhY2UgZnVuY3Rpb25zLgAAAAAAAAAAEU1lc3NhZ2VMaWJWZXJzaW9uAAAAAAAAAwAAADNFbmRwb2ludCB2ZXJzaW9uIChzaG91bGQgbm90IGV4Y2VlZCB1ODo6TUFYID0gMjU1KS4AAAAAEGVuZHBvaW50X3ZlcnNpb24AAAAEAAAAFU1ham9yIHZlcnNpb24gbnVtYmVyLgAAAAAAAAVtYWpvcgAAAAAAAAYAAAA3TWlub3IgdmVyc2lvbiBudW1iZXIgKHNob3VsZCBub3QgZXhjZWVkIHU4OjpNQVggPSAyNTUpLgAAAAAFbWlub3IAAAAAAAAEAAAAAQAAADZUaW1lb3V0IGNvbmZpZ3VyYXRpb24gZm9yIHJlY2VpdmUgbGlicmFyeSB0cmFuc2l0aW9ucy4AAAAAAAAAAAAHVGltZW91dAAAAAACAAAAKFVuaXggdGltZXN0YW1wIHdoZW4gdGhlIHRpbWVvdXQgZXhwaXJlcy4AAAAGZXhwaXJ5AAAAAAAGAAAAKVRoZSBuZXcgbGlicmFyeSBhZGRyZXNzIHRvIHRyYW5zaXRpb24gdG8uAAAAAAAAA2xpYgAAAAATAAAAAQAAADVQYXJhbWV0ZXJzIGZvciBzZXR0aW5nIG1lc3NhZ2UgbGlicmFyeSBjb25maWd1cmF0aW9uLgAAAAAAAAAAAAAOU2V0Q29uZmlnUGFyYW0AAAAAAAMAAAAfWERSLWVuY29kZWQgY29uZmlndXJhdGlvbiBkYXRhLgAAAAAGY29uZmlnAAAAAAAOAAAAMFRoZSB0eXBlIG9mIGNvbmZpZ3VyYXRpb24gKGUuZy4sIGV4ZWN1dG9yLCBVTE4pLgAAAAtjb25maWdfdHlwZQAAAAAEAAAAJ1RoZSBlbmRwb2ludCBJRCB0aGlzIGNvbmZpZyBhcHBsaWVzIHRvLgAAAAADZWlkAAAAAAQAAAABAAAAMVJlc29sdmVkIGxpYnJhcnkgaW5mb3JtYXRpb24gd2l0aCBkZWZhdWx0IHN0YXR1cy4AAAAAAAAAAAAAD1Jlc29sdmVkTGlicmFyeQAAAAACAAAARFdoZXRoZXIgdGhpcyBpcyB0aGUgZGVmYXVsdCBsaWJyYXJ5ICh0cnVlKSBvciBPQXBwLXNwZWNpZmljIChmYWxzZSkuAAAACmlzX2RlZmF1bHQAAAAAAAEAAAAdVGhlIHJlc29sdmVkIGxpYnJhcnkgYWRkcmVzcy4AAAAAAAADbGliAAAAABMAAAABAAAASE91dGJvdW5kIHBhY2tldCBjb250YWluaW5nIGFsbCBpbmZvcm1hdGlvbiBmb3IgY3Jvc3MtY2hhaW4gdHJhbnNtaXNzaW9uLgAAAAAAAAAOT3V0Ym91bmRQYWNrZXQAAAAAAAcAAAAYRGVzdGluYXRpb24gZW5kcG9pbnQgSUQuAAAAB2RzdF9laWQAAAAABAAAACxHbG9iYWxseSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhpcyBtZXNzYWdlLgAAAARndWlkAAAD7gAAACAAAAAUVGhlIG1lc3NhZ2UgcGF5bG9hZC4AAAAHbWVzc2FnZQAAAAAOAAAAIE91dGJvdW5kIG5vbmNlIGZvciB0aGlzIHBhdGh3YXkuAAAABW5vbmNlAAAAAAAABgAAADFSZWNlaXZlciBhZGRyZXNzIG9uIGRlc3RpbmF0aW9uIGNoYWluICgzMiBieXRlcykuAAAAAAAACHJlY2VpdmVyAAAD7gAAACAAAAAfU2VuZGVyIGFkZHJlc3Mgb24gc291cmNlIGNoYWluLgAAAAAGc2VuZGVyAAAAAAATAAAAE1NvdXJjZSBlbmRwb2ludCBJRC4AAAAAB3NyY19laWQAAAAABAAAAAEAAAArQSBmZWUgcmVjaXBpZW50IHdpdGggdGhlIGFtb3VudCB0byBiZSBwYWlkLgAAAAAAAAAADEZlZVJlY2lwaWVudAAAAAIAAAAVQW1vdW50IG9mIGZlZSB0byBwYXkuAAAAAAAABmFtb3VudAAAAAAACwAAAB9UaGUgYWRkcmVzcyB0byBzZW5kIHRoZSBmZWUgdG8uAAAAAAJ0bwAAAAAAEwAAAAEAAAA8UmVzdWx0IG9mIHNlbmQgb3BlcmF0aW9uIGNvbnRhaW5pbmcgZmVlcyBhbmQgZW5jb2RlZCBwYWNrZXQuAAAAAAAAAA1GZWVzQW5kUGFja2V0AAAAAAAAAwAAACpUaGUgZW5jb2RlZCBwYWNrZXQgcmVhZHkgZm9yIHRyYW5zbWlzc2lvbi4AAAAAAA5lbmNvZGVkX3BhY2tldAAAAAAADgAAAD9MaXN0IG9mIG5hdGl2ZSB0b2tlbiBmZWUgcmVjaXBpZW50cyAoZXhlY3V0b3IsIERWTnMsIHRyZWFzdXJ5KS4AAAAAFW5hdGl2ZV9mZWVfcmVjaXBpZW50cwAAAAAAA+oAAAfQAAAADEZlZVJlY2lwaWVudAAAACxMaXN0IG9mIFpSTyB0b2tlbiBmZWUgcmVjaXBpZW50cyAodHJlYXN1cnkpLgAAABJ6cm9fZmVlX3JlY2lwaWVudHMAAAAAA+oAAAfQAAAADEZlZVJlY2lwaWVudAAAAAQAAAAdUGFja2V0Q29kZWNWMUVycm9yOiAxMTAwLTExMDkAAAAAAAAAAAAAElBhY2tldENvZGVjVjFFcnJvcgAAAAAAAgAAAAAAAAATSW52YWxpZFBhY2tldEhlYWRlcgAAAARMAAAAAAAAABRJbnZhbGlkUGFja2V0VmVyc2lvbgAABE0AAAAEAAAAHVdvcmtlck9wdGlvbnNFcnJvcjogMTExMC0xMTE5AAAAAAAAAAAAABJXb3JrZXJPcHRpb25zRXJyb3IAAAAAAAkAAAAAAAAAEkludmFsaWRCeXRlc0xlbmd0aAAAAAAEVgAAAAAAAAAZSW52YWxpZExlZ2FjeU9wdGlvbnNUeXBlMQAAAAAABFcAAAAAAAAAGUludmFsaWRMZWdhY3lPcHRpb25zVHlwZTIAAAAAAARYAAAAAAAAABFJbnZhbGlkT3B0aW9uVHlwZQAAAAAABFkAAAAAAAAADkludmFsaWRPcHRpb25zAAAAAARaAAAAAAAAAA9JbnZhbGlkV29ya2VySWQAAAAEWwAAAAAAAAAdTGVnYWN5T3B0aW9uc1R5cGUxR2FzT3ZlcmZsb3cAAAAAAARcAAAAAAAAACBMZWdhY3lPcHRpb25zVHlwZTJBbW91bnRPdmVyZmxvdwAABF0AAAAAAAAAHUxlZ2FjeU9wdGlvbnNUeXBlMkdhc092ZXJmbG93AAAAAAAEXgAAAAQAAAAcQnVmZmVyUmVhZGVyRXJyb3I6IDEwMDAtMTAwOQAAAAAAAAARQnVmZmVyUmVhZGVyRXJyb3IAAAAAAAACAAAAAAAAAA1JbnZhbGlkTGVuZ3RoAAAAAAAD6AAAAAAAAAAVSW52YWxpZEFkZHJlc3NQYXlsb2FkAAAAAAAD6QAAAAQAAAAcQnVmZmVyV3JpdGVyRXJyb3I6IDEwMTAtMTAxOQAAAAAAAAARQnVmZmVyV3JpdGVyRXJyb3IAAAAAAAABAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPyAAAABAAAAB9UdGxDb25maWd1cmFibGVFcnJvcjogMTAyMC0xMDI5AAAAAAAAAAAUVHRsQ29uZmlndXJhYmxlRXJyb3IAAAADAAAAAAAAABBJbnZhbGlkVHRsQ29uZmlnAAAD/AAAAAAAAAAPVHRsQ29uZmlnRnJvemVuAAAAA/0AAAAAAAAAFlR0bENvbmZpZ0FscmVhZHlGcm96ZW4AAAAAA/4AAAAEAAAAF093bmFibGVFcnJvcjogMTAzMC0xMDM5AAAAAAAAAAAMT3duYWJsZUVycm9yAAAABgAAAAAAAAATSW52YWxpZFBlbmRpbmdPd25lcgAAAAQGAAAAAAAAAApJbnZhbGlkVHRsAAAAAAQHAAAAAAAAABFOb1BlbmRpbmdUcmFuc2ZlcgAAAAAABAgAAAAAAAAAD093bmVyQWxyZWFkeVNldAAAAAQJAAAAAAAAAAtPd25lck5vdFNldAAAAAQKAAAAAAAAABJUcmFuc2ZlckluUHJvZ3Jlc3MAAAAABAsAAAAEAAAAGEJ5dGVzRXh0RXJyb3I6IDEwNDAtMTA0OQAAAAAAAAANQnl0ZXNFeHRFcnJvcgAAAAAAAAEAAAAAAAAADkxlbmd0aE1pc21hdGNoAAAAAAQQAAAABAAAABtVcGdyYWRlYWJsZUVycm9yOiAxMDUwLTEwNTkAAAAAAAAAABBVcGdyYWRlYWJsZUVycm9yAAAAAwAAAAAAAAAUSW52YWxpZE1pZ3JhdGlvbkRhdGEAAAQaAAAAAAAAABNNaWdyYXRpb25Ob3RBbGxvd2VkAAAABBsAAAAAAAAADlVwZ3JhZGVzRnJvemVuAAAAAAQcAAAABAAAABhNdWx0aXNpZ0Vycm9yOiAxMDYwLTEwNjkAAAAAAAAADU11bHRpc2lnRXJyb3IAAAAAAAAIAAAAAAAAABJBbHJlYWR5SW5pdGlhbGl6ZWQAAAAABCQAAAAAAAAADUludmFsaWRTaWduZXIAAAAAAAQlAAAAAAAAAA5TaWduYXR1cmVFcnJvcgAAAAAEJgAAAAAAAAATU2lnbmVyQWxyZWFkeUV4aXN0cwAAAAQnAAAAAAAAAA5TaWduZXJOb3RGb3VuZAAAAAAEKAAAAAAAAAAdVG90YWxTaWduZXJzTGVzc1RoYW5UaHJlc2hvbGQAAAAAAAQpAAAAAAAAAA9VbnNvcnRlZFNpZ25lcnMAAAAEKgAAAAAAAAANWmVyb1RocmVzaG9sZAAAAAAABCsAAAAFAAAAMEV2ZW50IGVtaXR0ZWQgd2hlbiBhIHNpZ25lciBpcyBhZGRlZCBvciByZW1vdmVkLgAAAAAAAAAJU2lnbmVyU2V0AAAAAAAAAQAAAApzaWduZXJfc2V0AAAAAAACAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAQAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAIAAAAFAAAANkV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgc2lnbmF0dXJlIHRocmVzaG9sZCBpcyBjaGFuZ2VkLgAAAAAAAAAAAAxUaHJlc2hvbGRTZXQAAAABAAAADXRocmVzaG9sZF9zZXQAAAAAAAABAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAPTXVsdGlzaWdTdG9yYWdlAAAAAAIAAAAAAAAAAAAAAAdTaWduZXJzAAAAAAAAAAAAAAAACVRocmVzaG9sZAAAAAAAAAUAAABXRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyB0cmFuc2ZlcnJlZCAoYm90aCBzaW5nbGUtc3RlcCBhbmQgdHdvLXN0ZXAgY29tcGxldGlvbikuAAAAAAAAAAAUT3duZXJzaGlwVHJhbnNmZXJyZWQAAAABAAAAFW93bmVyc2hpcF90cmFuc2ZlcnJlZAAAAAAAAAIAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAIAAAAFAAAAO0V2ZW50IGVtaXR0ZWQgd2hlbiBhIDItc3RlcCBvd25lcnNoaXAgdHJhbnNmZXIgaXMgcHJvcG9zZWQuAAAAAAAAAAAVT3duZXJzaGlwVHJhbnNmZXJyaW5nAAAAAAAAAQAAABZvd25lcnNoaXBfdHJhbnNmZXJyaW5nAAAAAAADAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAAAAAAAA3R0bAAAAAAEAAAAAAAAAAIAAAAFAAAAKkV2ZW50IGVtaXR0ZWQgd2hlbiBvd25lcnNoaXAgaXMgcmVub3VuY2VkLgAAAAAAAAAAABJPd25lcnNoaXBSZW5vdW5jZWQAAAAAAAEAAAATb3duZXJzaGlwX3Jlbm91bmNlZAAAAAABAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAOT3duYWJsZVN0b3JhZ2UAAAAAAAIAAAAAAAAAAAAAAAVPd25lcgAAAAAAAAAAAAAAAAAADFBlbmRpbmdPd25lcgAAAAEAAABJVFRMIGNvbmZpZ3VyYXRpb246IHRocmVzaG9sZCAod2hlbiB0byBleHRlbmQpIGFuZCBleHRlbmRfdG8gKHRhcmdldCBUVEwpLgAAAAAAAAAAAAAJVHRsQ29uZmlnAAAAAAAAAgAAAChUYXJnZXQgVFRMIGFmdGVyIGV4dGVuc2lvbiAoaW4gbGVkZ2VycykuAAAACWV4dGVuZF90bwAAAAAAAAQAAAAzVFRMIHRocmVzaG9sZCB0aGF0IHRyaWdnZXJzIGV4dGVuc2lvbiAoaW4gbGVkZ2VycykuAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAABQAAACdFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIHNldC4AAAAAAAAAAA1UdGxDb25maWdzU2V0AAAAAAAAAQAAAA90dGxfY29uZmlnc19zZXQAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAgAAAAUAAAAqRXZlbnQgZW1pdHRlZCB3aGVuIFRUTCBjb25maWdzIGFyZSBmcm96ZW4uAAAAAAAAAAAAEFR0bENvbmZpZ3NGcm96ZW4AAAABAAAAEnR0bF9jb25maWdzX2Zyb3plbgAAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAQVHRsQ29uZmlnU3RvcmFnZQAAAAMAAAAAAAAAAAAAAAZGcm96ZW4AAAAAAAAAAAAAAAAACEluc3RhbmNlAAAAAAAAAAAAAAAKUGVyc2lzdGVudAAAAAAAAgAAAAAAAAAAAAAAElVwZ3JhZGVhYmxlU3RvcmFnZQAAAAAAAgAAAAAAAAAAAAAABkZyb3plbgAAAAAAAAAAAAAAAAAJTWlncmF0aW5nAAAAAB4RY29udHJhY3RlbnZtZXRhdjAAAAAAAAAAGQAAAAAAbw5jb250cmFjdG1ldGF2MAAAAAAAAAAFcnN2ZXIAAAAAAAAGMS45MC4wAAAAAAAAAAAACHJzc2RrdmVyAAAALzI1LjAuMSM5NDE0NDgwNzllY2NmOTU2MjdkMmZmZWExM2JhMjY4ZTMwNWE5MDc3AABTDmNvbnRyYWN0bWV0YXYwAAAAAAAAAAZjbGl2ZXIAAAAAAC8yNS4wLjAjYTY0OTI1ZTkzOTFjM2QzYjNlZjhlNTNkYzYwYzIzZGI5ZTZhODJlNAA=";
|
|
12
12
|
/**
|
|
13
13
|
* Pre-computed WASM hash (SHA-256)
|
|
14
14
|
* Use this when the WASM is already uploaded on-chain
|
|
15
15
|
*/
|
|
16
|
-
export declare const WASM_HASH = "
|
|
16
|
+
export declare const WASM_HASH = "1e88f3e179cb6dbabb6332b6b4279b5b04c3d10f361e12f084a3db2ec1872553";
|
|
17
17
|
/**
|
|
18
18
|
* Get the WASM bytecode as a Buffer
|
|
19
19
|
* Use this to upload the WASM to the network
|
|
@@ -721,24 +721,10 @@ export interface Client {
|
|
|
721
721
|
simulate?: boolean;
|
|
722
722
|
}) => Promise<AssembledTransaction<string>>;
|
|
723
723
|
/**
|
|
724
|
-
* Construct and simulate a
|
|
725
|
-
*
|
|
726
|
-
*
|
|
727
|
-
* - `None` values remove the corresponding config (disables auto-extension for that type)
|
|
728
|
-
* - Validates that `threshold <= extend_to <= MAX_TTL`
|
|
729
|
-
*
|
|
730
|
-
* # Arguments
|
|
731
|
-
* - `instance` - TTL config for instance storage
|
|
732
|
-
* - `persistent` - TTL config for persistent storage
|
|
733
|
-
*
|
|
734
|
-
* # Panics
|
|
735
|
-
* - `TtlConfigFrozen` if configs are frozen
|
|
736
|
-
* - `InvalidTtlConfig` if validation fails
|
|
724
|
+
* Construct and simulate a owner transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
725
|
+
* Returns the current owner address, or None if no owner is set.
|
|
737
726
|
*/
|
|
738
|
-
|
|
739
|
-
instance: Option<TtlConfig>;
|
|
740
|
-
persistent: Option<TtlConfig>;
|
|
741
|
-
}, txnOptions?: {
|
|
727
|
+
owner: (txnOptions?: {
|
|
742
728
|
/**
|
|
743
729
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
744
730
|
*/
|
|
@@ -751,12 +737,12 @@ export interface Client {
|
|
|
751
737
|
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
752
738
|
*/
|
|
753
739
|
simulate?: boolean;
|
|
754
|
-
}) => Promise<AssembledTransaction<
|
|
740
|
+
}) => Promise<AssembledTransaction<Option<string>>>;
|
|
755
741
|
/**
|
|
756
|
-
* Construct and simulate a
|
|
757
|
-
* Returns the
|
|
742
|
+
* Construct and simulate a pending_owner transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
743
|
+
* Returns the pending owner address for 2-step transfer, or None if no transfer is pending.
|
|
758
744
|
*/
|
|
759
|
-
|
|
745
|
+
pending_owner: (txnOptions?: {
|
|
760
746
|
/**
|
|
761
747
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
762
748
|
*/
|
|
@@ -769,18 +755,21 @@ export interface Client {
|
|
|
769
755
|
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
770
756
|
*/
|
|
771
757
|
simulate?: boolean;
|
|
772
|
-
}) => Promise<AssembledTransaction<
|
|
758
|
+
}) => Promise<AssembledTransaction<Option<string>>>;
|
|
773
759
|
/**
|
|
774
|
-
* Construct and simulate a
|
|
775
|
-
*
|
|
760
|
+
* Construct and simulate a transfer_ownership transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
761
|
+
* Transfers ownership immediately to a new address.
|
|
776
762
|
*
|
|
777
|
-
*
|
|
778
|
-
*
|
|
763
|
+
* Use with caution - if you transfer to a wrong address, ownership is lost forever.
|
|
764
|
+
* Consider using `propose_ownership_transfer` instead.
|
|
779
765
|
*
|
|
780
766
|
* # Panics
|
|
781
|
-
* - `
|
|
767
|
+
* - `OwnerNotSet` if no owner is currently set
|
|
768
|
+
* - `TransferInProgress` if a 2-step transfer is in progress
|
|
782
769
|
*/
|
|
783
|
-
|
|
770
|
+
transfer_ownership: ({ new_owner }: {
|
|
771
|
+
new_owner: string;
|
|
772
|
+
}, txnOptions?: {
|
|
784
773
|
/**
|
|
785
774
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
786
775
|
*/
|
|
@@ -795,10 +784,27 @@ export interface Client {
|
|
|
795
784
|
simulate?: boolean;
|
|
796
785
|
}) => Promise<AssembledTransaction<null>>;
|
|
797
786
|
/**
|
|
798
|
-
* Construct and simulate a
|
|
799
|
-
*
|
|
787
|
+
* Construct and simulate a propose_ownership_transfer transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
788
|
+
* Proposes an ownership transfer to a new address.
|
|
789
|
+
*
|
|
790
|
+
* The new owner must call `accept_ownership()` within `ttl` ledgers
|
|
791
|
+
* to complete the transfer. The pending transfer will automatically expire after.
|
|
792
|
+
*
|
|
793
|
+
* # Arguments
|
|
794
|
+
* - `new_owner` - The proposed new owner
|
|
795
|
+
* - `ttl` - Number of ledgers the new owner has to accept.
|
|
796
|
+
* Use `0` to cancel a pending transfer (new_owner must match pending).
|
|
797
|
+
*
|
|
798
|
+
* # Panics
|
|
799
|
+
* - `OwnerNotSet` if no owner is currently set
|
|
800
|
+
* - `NoPendingTransfer` when cancelling and no pending transfer exists
|
|
801
|
+
* - `InvalidTtl` if ttl exceeds max TTL
|
|
802
|
+
* - `InvalidPendingOwner` when cancelling with wrong new_owner address
|
|
800
803
|
*/
|
|
801
|
-
|
|
804
|
+
propose_ownership_transfer: ({ new_owner, ttl }: {
|
|
805
|
+
new_owner: string;
|
|
806
|
+
ttl: u32;
|
|
807
|
+
}, txnOptions?: {
|
|
802
808
|
/**
|
|
803
809
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
804
810
|
*/
|
|
@@ -811,20 +817,17 @@ export interface Client {
|
|
|
811
817
|
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
812
818
|
*/
|
|
813
819
|
simulate?: boolean;
|
|
814
|
-
}) => Promise<AssembledTransaction<
|
|
820
|
+
}) => Promise<AssembledTransaction<null>>;
|
|
815
821
|
/**
|
|
816
|
-
* Construct and simulate a
|
|
817
|
-
*
|
|
822
|
+
* Construct and simulate a accept_ownership transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
823
|
+
* Accepts a pending 2-step ownership transfer.
|
|
818
824
|
*
|
|
819
|
-
*
|
|
825
|
+
* Must be called by the pending owner before the TTL expires.
|
|
820
826
|
*
|
|
821
|
-
*
|
|
822
|
-
*
|
|
827
|
+
* # Panics
|
|
828
|
+
* - `NoPendingTransfer` if there is no pending transfer (or it expired)
|
|
823
829
|
*/
|
|
824
|
-
|
|
825
|
-
threshold: u32;
|
|
826
|
-
extend_to: u32;
|
|
827
|
-
}, txnOptions?: {
|
|
830
|
+
accept_ownership: (txnOptions?: {
|
|
828
831
|
/**
|
|
829
832
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
830
833
|
*/
|
|
@@ -839,10 +842,14 @@ export interface Client {
|
|
|
839
842
|
simulate?: boolean;
|
|
840
843
|
}) => Promise<AssembledTransaction<null>>;
|
|
841
844
|
/**
|
|
842
|
-
* Construct and simulate a
|
|
843
|
-
*
|
|
845
|
+
* Construct and simulate a renounce_ownership transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
846
|
+
* Permanently renounces ownership.
|
|
847
|
+
*
|
|
848
|
+
* # Panics
|
|
849
|
+
* - `OwnerNotSet` if no owner is currently set
|
|
850
|
+
* - `TransferInProgress` if a 2-step transfer is in progress (cancel it first)
|
|
844
851
|
*/
|
|
845
|
-
|
|
852
|
+
renounce_ownership: (txnOptions?: {
|
|
846
853
|
/**
|
|
847
854
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
848
855
|
*/
|
|
@@ -855,12 +862,20 @@ export interface Client {
|
|
|
855
862
|
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
856
863
|
*/
|
|
857
864
|
simulate?: boolean;
|
|
858
|
-
}) => Promise<AssembledTransaction<
|
|
865
|
+
}) => Promise<AssembledTransaction<null>>;
|
|
859
866
|
/**
|
|
860
|
-
* Construct and simulate a
|
|
861
|
-
*
|
|
867
|
+
* Construct and simulate a extend_instance_ttl transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
868
|
+
* Extends the instance TTL.
|
|
869
|
+
*
|
|
870
|
+
* # Arguments
|
|
871
|
+
*
|
|
872
|
+
* * `threshold` - The threshold to extend the TTL (if current TTL is below this, extend).
|
|
873
|
+
* * `extend_to` - The TTL to extend to.
|
|
862
874
|
*/
|
|
863
|
-
|
|
875
|
+
extend_instance_ttl: ({ threshold, extend_to }: {
|
|
876
|
+
threshold: u32;
|
|
877
|
+
extend_to: u32;
|
|
878
|
+
}, txnOptions?: {
|
|
864
879
|
/**
|
|
865
880
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
866
881
|
*/
|
|
@@ -873,20 +888,25 @@ export interface Client {
|
|
|
873
888
|
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
874
889
|
*/
|
|
875
890
|
simulate?: boolean;
|
|
876
|
-
}) => Promise<AssembledTransaction<
|
|
891
|
+
}) => Promise<AssembledTransaction<null>>;
|
|
877
892
|
/**
|
|
878
|
-
* Construct and simulate a
|
|
879
|
-
*
|
|
893
|
+
* Construct and simulate a set_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
894
|
+
* Sets TTL configs for instance and persistent storage.
|
|
880
895
|
*
|
|
881
|
-
*
|
|
882
|
-
*
|
|
896
|
+
* - `None` values remove the corresponding config (disables auto-extension for that type)
|
|
897
|
+
* - Validates that `threshold <= extend_to <= MAX_TTL`
|
|
898
|
+
*
|
|
899
|
+
* # Arguments
|
|
900
|
+
* - `instance` - TTL config for instance storage
|
|
901
|
+
* - `persistent` - TTL config for persistent storage
|
|
883
902
|
*
|
|
884
903
|
* # Panics
|
|
885
|
-
* - `
|
|
886
|
-
* - `
|
|
904
|
+
* - `TtlConfigFrozen` if configs are frozen
|
|
905
|
+
* - `InvalidTtlConfig` if validation fails
|
|
887
906
|
*/
|
|
888
|
-
|
|
889
|
-
|
|
907
|
+
set_ttl_configs: ({ instance, persistent }: {
|
|
908
|
+
instance: Option<TtlConfig>;
|
|
909
|
+
persistent: Option<TtlConfig>;
|
|
890
910
|
}, txnOptions?: {
|
|
891
911
|
/**
|
|
892
912
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
@@ -902,27 +922,10 @@ export interface Client {
|
|
|
902
922
|
simulate?: boolean;
|
|
903
923
|
}) => Promise<AssembledTransaction<null>>;
|
|
904
924
|
/**
|
|
905
|
-
* Construct and simulate a
|
|
906
|
-
*
|
|
907
|
-
*
|
|
908
|
-
* The new owner must call `accept_ownership()` within `ttl` ledgers
|
|
909
|
-
* to complete the transfer. The pending transfer will automatically expire after.
|
|
910
|
-
*
|
|
911
|
-
* # Arguments
|
|
912
|
-
* - `new_owner` - The proposed new owner
|
|
913
|
-
* - `ttl` - Number of ledgers the new owner has to accept.
|
|
914
|
-
* Use `0` to cancel a pending transfer (new_owner must match pending).
|
|
915
|
-
*
|
|
916
|
-
* # Panics
|
|
917
|
-
* - `OwnerNotSet` if no owner is currently set
|
|
918
|
-
* - `NoPendingTransfer` when cancelling and no pending transfer exists
|
|
919
|
-
* - `InvalidTtl` if ttl exceeds max TTL
|
|
920
|
-
* - `InvalidPendingOwner` when cancelling with wrong new_owner address
|
|
925
|
+
* Construct and simulate a ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
926
|
+
* Returns the current TTL configs as (instance_config, persistent_config).
|
|
921
927
|
*/
|
|
922
|
-
|
|
923
|
-
new_owner: string;
|
|
924
|
-
ttl: u32;
|
|
925
|
-
}, txnOptions?: {
|
|
928
|
+
ttl_configs: (txnOptions?: {
|
|
926
929
|
/**
|
|
927
930
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
928
931
|
*/
|
|
@@ -935,17 +938,18 @@ export interface Client {
|
|
|
935
938
|
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
936
939
|
*/
|
|
937
940
|
simulate?: boolean;
|
|
938
|
-
}) => Promise<AssembledTransaction<
|
|
941
|
+
}) => Promise<AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>>;
|
|
939
942
|
/**
|
|
940
|
-
* Construct and simulate a
|
|
941
|
-
*
|
|
943
|
+
* Construct and simulate a freeze_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
944
|
+
* Permanently freezes TTL configs, preventing any future modifications.
|
|
942
945
|
*
|
|
943
|
-
*
|
|
946
|
+
* This is irreversible and provides immutability guarantees to users.
|
|
947
|
+
* Emits `TtlConfigsFrozen` event.
|
|
944
948
|
*
|
|
945
949
|
* # Panics
|
|
946
|
-
* - `
|
|
950
|
+
* - `TtlConfigAlreadyFrozen` if already frozen
|
|
947
951
|
*/
|
|
948
|
-
|
|
952
|
+
freeze_ttl_configs: (txnOptions?: {
|
|
949
953
|
/**
|
|
950
954
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
951
955
|
*/
|
|
@@ -960,14 +964,10 @@ export interface Client {
|
|
|
960
964
|
simulate?: boolean;
|
|
961
965
|
}) => Promise<AssembledTransaction<null>>;
|
|
962
966
|
/**
|
|
963
|
-
* Construct and simulate a
|
|
964
|
-
*
|
|
965
|
-
*
|
|
966
|
-
* # Panics
|
|
967
|
-
* - `OwnerNotSet` if no owner is currently set
|
|
968
|
-
* - `TransferInProgress` if a 2-step transfer is in progress (cancel it first)
|
|
967
|
+
* Construct and simulate a is_ttl_configs_frozen transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
|
|
968
|
+
* Returns whether TTL configs are frozen.
|
|
969
969
|
*/
|
|
970
|
-
|
|
970
|
+
is_ttl_configs_frozen: (txnOptions?: {
|
|
971
971
|
/**
|
|
972
972
|
* The fee to pay for the transaction. Default: BASE_FEE
|
|
973
973
|
*/
|
|
@@ -980,7 +980,7 @@ export interface Client {
|
|
|
980
980
|
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
981
981
|
*/
|
|
982
982
|
simulate?: boolean;
|
|
983
|
-
}) => Promise<AssembledTransaction<
|
|
983
|
+
}) => Promise<AssembledTransaction<boolean>>;
|
|
984
984
|
}
|
|
985
985
|
export declare class Client extends ContractClient {
|
|
986
986
|
readonly options: ContractClientOptions;
|
|
@@ -1009,16 +1009,16 @@ export declare class Client extends ContractClient {
|
|
|
1009
1009
|
fee_enabled: (json: string) => AssembledTransaction<boolean>;
|
|
1010
1010
|
zro_fee_lib: (json: string) => AssembledTransaction<Option<string>>;
|
|
1011
1011
|
authorizer: (json: string) => AssembledTransaction<string>;
|
|
1012
|
-
set_ttl_configs: (json: string) => AssembledTransaction<null>;
|
|
1013
|
-
ttl_configs: (json: string) => AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>;
|
|
1014
|
-
freeze_ttl_configs: (json: string) => AssembledTransaction<null>;
|
|
1015
|
-
is_ttl_configs_frozen: (json: string) => AssembledTransaction<boolean>;
|
|
1016
|
-
extend_instance_ttl: (json: string) => AssembledTransaction<null>;
|
|
1017
1012
|
owner: (json: string) => AssembledTransaction<Option<string>>;
|
|
1018
1013
|
pending_owner: (json: string) => AssembledTransaction<Option<string>>;
|
|
1019
1014
|
transfer_ownership: (json: string) => AssembledTransaction<null>;
|
|
1020
1015
|
propose_ownership_transfer: (json: string) => AssembledTransaction<null>;
|
|
1021
1016
|
accept_ownership: (json: string) => AssembledTransaction<null>;
|
|
1022
1017
|
renounce_ownership: (json: string) => AssembledTransaction<null>;
|
|
1018
|
+
extend_instance_ttl: (json: string) => AssembledTransaction<null>;
|
|
1019
|
+
set_ttl_configs: (json: string) => AssembledTransaction<null>;
|
|
1020
|
+
ttl_configs: (json: string) => AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>;
|
|
1021
|
+
freeze_ttl_configs: (json: string) => AssembledTransaction<null>;
|
|
1022
|
+
is_ttl_configs_frozen: (json: string) => AssembledTransaction<boolean>;
|
|
1023
1023
|
};
|
|
1024
1024
|
}
|