@layerzerolabs/protocol-stellar-v2 0.2.18 → 0.2.20
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 +303 -253
- package/.turbo/turbo-lint.log +66 -65
- package/.turbo/turbo-test.log +1312 -1282
- package/Cargo.lock +21 -8
- package/Cargo.toml +2 -0
- package/contracts/ERROR_SPEC.md +9 -2
- package/contracts/common-macros/src/contract_ttl.rs +18 -7
- package/contracts/common-macros/src/lib.rs +4 -4
- package/contracts/common-macros/src/tests/contract_ttl.rs +1 -1
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_ttl__snapshot_generated_contractimpl_code.snap +2 -1
- package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +7 -12
- package/contracts/common-macros/src/upgradeable.rs +15 -21
- package/contracts/message-libs/uln-302/src/events.rs +4 -0
- package/contracts/message-libs/uln-302/src/send_uln.rs +23 -7
- package/contracts/message-libs/uln-302/src/tests/send_uln302/send.rs +38 -64
- package/contracts/oapps/counter/Cargo.toml +1 -0
- package/contracts/oapps/counter/integration_tests/setup_uln.rs +1 -1
- package/contracts/oapps/oapp/src/oapp_receiver.rs +1 -1
- package/contracts/oapps/oapp/src/tests/test_oapp_core.rs +113 -65
- package/contracts/oapps/oapp/src/tests/test_oapp_options_type3.rs +111 -82
- package/contracts/oapps/oapp/src/tests/test_oapp_receiver.rs +293 -65
- package/contracts/oapps/oapp/src/tests/test_oapp_sender.rs +331 -56
- package/contracts/oapps/oft/Cargo.toml +10 -7
- package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_oft_fee.rs +3 -4
- package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_pausable.rs +2 -3
- package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_rate_limiter.rs +1 -1
- package/contracts/oapps/oft/integration-tests/mod.rs +1 -1
- package/contracts/oapps/oft/integration-tests/setup.rs +28 -127
- package/contracts/oapps/oft/integration-tests/utils.rs +254 -21
- package/contracts/oapps/oft/src/extensions/oft_fee.rs +23 -8
- package/contracts/oapps/oft/src/extensions/pausable.rs +19 -4
- package/contracts/oapps/oft/src/extensions/rate_limiter.rs +52 -28
- package/contracts/oapps/oft/src/lib.rs +10 -14
- package/contracts/oapps/oft/src/oft.rs +143 -193
- package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +9 -11
- package/contracts/oapps/oft/src/oft_types/mint_burn.rs +12 -14
- package/contracts/oapps/oft/src/oft_types/mod.rs +13 -0
- package/contracts/oapps/{oft-std → oft-core}/Cargo.toml +6 -4
- package/contracts/oapps/{oft-std → oft-core}/integration-tests/mod.rs +1 -1
- package/contracts/oapps/{oft-std → oft-core}/integration-tests/setup.rs +126 -29
- package/contracts/oapps/{oft → oft-core}/integration-tests/test_with_sml.rs +3 -3
- package/contracts/oapps/oft-core/integration-tests/utils.rs +201 -0
- package/contracts/oapps/oft-core/src/lib.rs +18 -0
- package/contracts/oapps/oft-core/src/oft_core.rs +479 -0
- package/contracts/oapps/{oft → oft-core}/src/tests/mod.rs +0 -2
- package/contracts/oapps/{oft → oft-core}/src/tests/test_lz_receive.rs +7 -7
- package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_msg_codec.rs +4 -4
- package/contracts/oapps/{oft → oft-core}/src/tests/test_resolve_address.rs +3 -3
- package/contracts/oapps/{oft → oft-core}/src/tests/test_utils.rs +46 -27
- package/contracts/oapps/{oft → oft-core}/src/utils.rs +1 -1
- package/contracts/upgrader/src/lib.rs +30 -57
- package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract1.wasm +0 -0
- package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract2.wasm +0 -0
- package/contracts/upgrader/src/tests/test_upgrader.rs +44 -35
- package/contracts/utils/src/buffer_reader.rs +1 -0
- package/contracts/utils/src/errors.rs +8 -2
- package/contracts/utils/src/ownable.rs +125 -3
- package/contracts/utils/src/tests/option_ext.rs +1 -1
- package/contracts/utils/src/tests/ownable.rs +445 -7
- package/contracts/utils/src/tests/ttl_configurable.rs +2 -2
- package/contracts/utils/src/tests/upgradeable.rs +372 -175
- package/contracts/utils/src/ttl_configurable.rs +3 -3
- package/contracts/utils/src/upgradeable.rs +48 -23
- package/contracts/workers/dvn/Cargo.toml +1 -0
- package/contracts/workers/dvn/src/auth.rs +12 -42
- package/contracts/workers/dvn/src/dvn.rs +16 -31
- package/contracts/workers/dvn/src/errors.rs +0 -1
- package/contracts/workers/dvn/src/interfaces/dvn.rs +35 -0
- package/contracts/workers/dvn/src/lib.rs +4 -3
- package/contracts/workers/dvn/src/tests/auth.rs +1 -1
- package/contracts/workers/dvn/src/tests/dvn.rs +19 -15
- package/contracts/workers/dvn/src/tests/multisig/set_threshold.rs +2 -4
- package/contracts/workers/dvn/src/tests/multisig/verify_signatures.rs +1 -3
- package/contracts/workers/dvn/src/tests/setup.rs +5 -9
- package/contracts/workers/dvn-fee-lib/Cargo.toml +1 -1
- package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +3 -5
- package/contracts/workers/dvn-fee-lib/src/tests/dvn_fee_lib.rs +2 -3
- package/contracts/workers/executor/Cargo.toml +1 -0
- package/contracts/workers/executor/src/executor.rs +15 -26
- package/contracts/workers/executor-fee-lib/Cargo.toml +2 -1
- package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +63 -5
- package/contracts/workers/executor-fee-lib/src/executor_option.rs +28 -1
- package/contracts/workers/executor-fee-lib/src/lib.rs +3 -0
- package/contracts/workers/executor-fee-lib/src/tests/executor_fee_lib.rs +701 -0
- package/contracts/workers/executor-fee-lib/src/tests/executor_option.rs +370 -0
- package/contracts/workers/executor-fee-lib/src/tests/mod.rs +4 -0
- package/contracts/workers/executor-fee-lib/src/tests/setup.rs +60 -0
- package/contracts/workers/executor-helper/src/lib.rs +3 -0
- package/contracts/workers/executor-helper/src/tests/executor_helper.rs +184 -0
- package/contracts/workers/executor-helper/src/tests/mod.rs +2 -0
- package/contracts/workers/executor-helper/src/tests/setup.rs +366 -0
- package/contracts/workers/fee-lib-interfaces/Cargo.toml +14 -0
- package/contracts/workers/{worker/src/interfaces/mod.rs → fee-lib-interfaces/src/lib.rs} +4 -3
- package/contracts/workers/price-feed/Cargo.toml +2 -1
- package/contracts/workers/price-feed/src/events.rs +1 -1
- package/contracts/workers/price-feed/src/lib.rs +3 -0
- package/contracts/workers/price-feed/src/price_feed.rs +6 -12
- package/contracts/workers/price-feed/src/storage.rs +1 -1
- package/contracts/workers/price-feed/src/tests/mod.rs +2 -0
- package/contracts/workers/price-feed/src/tests/price_feed.rs +869 -0
- package/contracts/workers/price-feed/src/tests/setup.rs +70 -0
- package/contracts/workers/price-feed/src/types.rs +1 -1
- package/contracts/workers/worker/src/errors.rs +0 -3
- package/contracts/workers/worker/src/lib.rs +0 -2
- package/contracts/workers/worker/src/storage.rs +32 -29
- package/contracts/workers/worker/src/tests/setup.rs +1 -7
- package/contracts/workers/worker/src/tests/worker.rs +50 -42
- package/contracts/workers/worker/src/worker.rs +49 -58
- package/package.json +4 -5
- package/sdk/.turbo/turbo-test.log +229 -217
- package/sdk/dist/generated/bml.d.ts +39 -1
- package/sdk/dist/generated/bml.js +33 -8
- package/sdk/dist/generated/counter.d.ts +131 -3
- package/sdk/dist/generated/counter.js +41 -10
- package/sdk/dist/generated/dvn.d.ts +431 -362
- package/sdk/dist/generated/dvn.js +80 -55
- package/sdk/dist/generated/dvn_fee_lib.d.ts +327 -251
- package/sdk/dist/generated/dvn_fee_lib.js +55 -57
- package/sdk/dist/generated/endpoint.d.ts +131 -3
- package/sdk/dist/generated/endpoint.js +41 -10
- package/sdk/dist/generated/executor.d.ts +503 -339
- package/sdk/dist/generated/executor.js +80 -48
- package/sdk/dist/generated/executor_fee_lib.d.ts +395 -319
- package/sdk/dist/generated/executor_fee_lib.js +54 -56
- package/sdk/dist/generated/executor_helper.d.ts +53 -187
- package/sdk/dist/generated/executor_helper.js +47 -29
- package/sdk/dist/generated/layerzero_view.d.ts +1271 -0
- package/sdk/dist/generated/layerzero_view.js +294 -0
- package/sdk/dist/generated/oft.d.ts +1851 -0
- package/sdk/dist/generated/oft.js +347 -0
- package/sdk/dist/generated/price_feed.d.ts +329 -253
- package/sdk/dist/generated/price_feed.js +55 -57
- package/sdk/dist/generated/sml.d.ts +131 -3
- package/sdk/dist/generated/sml.js +41 -10
- package/sdk/dist/generated/treasury.d.ts +131 -3
- package/sdk/dist/generated/treasury.js +41 -10
- package/sdk/dist/generated/uln302.d.ts +131 -3
- package/sdk/dist/generated/uln302.js +43 -12
- package/sdk/dist/generated/upgrader.d.ts +201 -15
- package/sdk/dist/generated/upgrader.js +99 -1
- package/sdk/dist/index.d.ts +2 -2
- package/sdk/dist/index.js +3 -3
- package/sdk/package.json +3 -2
- package/sdk/src/index.ts +3 -3
- package/sdk/test/oft-sml.test.ts +20 -20
- package/sdk/test/upgrader.test.ts +2 -3
- package/sdk/turbo.json +8 -0
- package/tools/ts-bindings-gen/Cargo.toml +2 -0
- package/tools/ts-bindings-gen/src/main.rs +53 -5
- package/turbo.json +0 -2
- package/contracts/oapps/oft/src/interfaces/mint_burn_token.rs +0 -23
- package/contracts/oapps/oft/src/interfaces/mod.rs +0 -3
- package/contracts/oapps/oft/src/oft_impl.rs +0 -201
- package/contracts/oapps/oft/src/tests/extensions/mod.rs +0 -11
- package/contracts/oapps/oft/src/tests/extensions/setup.rs +0 -917
- package/contracts/oapps/oft/src/tests/extensions/test_oft_fee.rs +0 -751
- package/contracts/oapps/oft/src/tests/extensions/test_pausable.rs +0 -434
- package/contracts/oapps/oft/src/tests/extensions/test_rate_limiter.rs +0 -1080
- package/contracts/oapps/oft-std/integration-tests/utils.rs +0 -427
- package/contracts/oapps/oft-std/src/lib.rs +0 -16
- package/contracts/oapps/oft-std/src/oft.rs +0 -174
- package/sdk/dist/generated/oft_std.d.ts +0 -1722
- package/sdk/dist/generated/oft_std.js +0 -316
- package/sdk/dist/wasm/blocked-message-lib.d.ts +0 -1
- package/sdk/dist/wasm/blocked-message-lib.js +0 -2
- package/sdk/dist/wasm/counter.d.ts +0 -1
- package/sdk/dist/wasm/counter.js +0 -2
- package/sdk/dist/wasm/dvn-fee-lib.d.ts +0 -1
- package/sdk/dist/wasm/dvn-fee-lib.js +0 -2
- package/sdk/dist/wasm/dvn.d.ts +0 -1
- package/sdk/dist/wasm/dvn.js +0 -2
- package/sdk/dist/wasm/endpoint-v2.d.ts +0 -1
- package/sdk/dist/wasm/endpoint-v2.js +0 -2
- package/sdk/dist/wasm/executor-fee-lib.d.ts +0 -1
- package/sdk/dist/wasm/executor-fee-lib.js +0 -2
- package/sdk/dist/wasm/executor-helper.d.ts +0 -1
- package/sdk/dist/wasm/executor-helper.js +0 -2
- package/sdk/dist/wasm/executor.d.ts +0 -1
- package/sdk/dist/wasm/executor.js +0 -2
- package/sdk/dist/wasm/layerzero-views.d.ts +0 -1
- package/sdk/dist/wasm/layerzero-views.js +0 -2
- package/sdk/dist/wasm/oft-std.d.ts +0 -1
- package/sdk/dist/wasm/oft-std.js +0 -2
- package/sdk/dist/wasm/price-feed.d.ts +0 -1
- package/sdk/dist/wasm/price-feed.js +0 -2
- package/sdk/dist/wasm/simple-message-lib.d.ts +0 -1
- package/sdk/dist/wasm/simple-message-lib.js +0 -2
- package/sdk/dist/wasm/treasury.d.ts +0 -1
- package/sdk/dist/wasm/treasury.js +0 -2
- package/sdk/dist/wasm/uln302.d.ts +0 -1
- package/sdk/dist/wasm/uln302.js +0 -2
- package/sdk/dist/wasm/upgrader.d.ts +0 -1
- package/sdk/dist/wasm/upgrader.js +0 -2
- package/sdk/dist/wasm.d.ts +0 -15
- package/sdk/dist/wasm.js +0 -15
- /package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/mod.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/codec/mod.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/codec/oft_compose_msg_codec.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/codec/oft_msg_codec.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/errors.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/events.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/storage.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_decimals.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_compose_msg_codec.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_version.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_quote_oft.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_quote_send.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_send.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/tests/test_token.rs +0 -0
- /package/contracts/oapps/{oft → oft-core}/src/types.rs +0 -0
- /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/dvn_fee_lib.rs +0 -0
- /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/executor_fee_lib.rs +0 -0
- /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/price_feed.rs +0 -0
|
@@ -4,207 +4,32 @@ import type { u32, u64, u128, i128, Option } from '@stellar/stellar-sdk/contract
|
|
|
4
4
|
export * from '@stellar/stellar-sdk';
|
|
5
5
|
export * as contract from '@stellar/stellar-sdk/contract';
|
|
6
6
|
export * as rpc from '@stellar/stellar-sdk/rpc';
|
|
7
|
-
export type MigrationData = void;
|
|
8
|
-
export declare const DvnFeeLibError: {
|
|
9
|
-
1: {
|
|
10
|
-
message: string;
|
|
11
|
-
};
|
|
12
|
-
2: {
|
|
13
|
-
message: string;
|
|
14
|
-
};
|
|
15
|
-
3: {
|
|
16
|
-
message: string;
|
|
17
|
-
};
|
|
18
|
-
4: {
|
|
19
|
-
message: string;
|
|
20
|
-
};
|
|
21
|
-
};
|
|
22
|
-
/**
|
|
23
|
-
* BufferReaderError: 1000-1009
|
|
24
|
-
*/
|
|
25
|
-
export declare const BufferReaderError: {
|
|
26
|
-
1000: {
|
|
27
|
-
message: string;
|
|
28
|
-
};
|
|
29
|
-
1001: {
|
|
30
|
-
message: string;
|
|
31
|
-
};
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* BufferWriterError: 1010-1019
|
|
35
|
-
*/
|
|
36
|
-
export declare const BufferWriterError: {
|
|
37
|
-
1010: {
|
|
38
|
-
message: string;
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
|
-
/**
|
|
42
|
-
* TtlConfigurableError: 1020-1029
|
|
43
|
-
*/
|
|
44
|
-
export declare const TtlConfigurableError: {
|
|
45
|
-
1020: {
|
|
46
|
-
message: string;
|
|
47
|
-
};
|
|
48
|
-
1021: {
|
|
49
|
-
message: string;
|
|
50
|
-
};
|
|
51
|
-
1022: {
|
|
52
|
-
message: string;
|
|
53
|
-
};
|
|
54
|
-
};
|
|
55
7
|
/**
|
|
56
|
-
*
|
|
8
|
+
* Embedded WASM bytecode (base64-encoded)
|
|
9
|
+
* Size: 22203 bytes (21.68 KB)
|
|
57
10
|
*/
|
|
58
|
-
export declare const OwnableError: {
|
|
59
|
-
1030: {
|
|
60
|
-
message: string;
|
|
61
|
-
};
|
|
62
|
-
1031: {
|
|
63
|
-
message: string;
|
|
64
|
-
};
|
|
65
|
-
};
|
|
11
|
+
export declare const WASM_BASE64 = "AGFzbQEAAAABjAEYYAJ+fgF+YAF+AX5gAAF+YAN+fn4BfmAEfn5+fgF+YAABf2ABfwBgAn9/AGABfwF/YAF/AX5gAn5+AX9gAABgAn5/AGABfgBgBX5/f39/AGACf34AYAJ/fwF+YAR/f39/AX5gAn5+AGADf35+AGADf39/AGAGf35+fn5/AGAEf35+fwBgBX9+fn5+AAKpARwBbAExAAABYQEwAAEBaQEwAAEBYgE4AAEBeAE3AAIBaQEzAAABZAFfAAMBaQE4AAEBaQE3AAEBaQE2AAABbAEyAAABeAExAAABbAFfAAMBeAEwAAABbAE3AAQBbAE2AAEBYgEwAAEBaQE1AAEBaQE0AAEBYgFqAAABbQE5AAMBbQFhAAQBdgFnAAABeAEzAAIBeAE4AAIBbAEwAAABbAE4AAABeAE1AAEDSUgFBgcIBQkKCwICBgwLBg0JBgACAQcHDQAODxAQCwAPBQEJEQIHBwICAAICARIACxMCCwIBBgECBwILFBQPFA8JFBUWFxcWFxcFAwEAEQYhBH8BQYCAwAALfwBBq4LAAAt/AEHPhMAAC38AQdCEwAALB84CFgZtZW1vcnkCAAphdXRob3JpemVyAC4NX19jb25zdHJ1Y3RvcgAvB2dldF9mZWUAMw9zZXRfdHRsX2NvbmZpZ3MAOQt0dGxfY29uZmlncwA/EmZyZWV6ZV90dGxfY29uZmlncwBCFWlzX3R0bF9jb25maWdzX2Zyb3plbgBDE2V4dGVuZF9pbnN0YW5jZV90dGwARAVvd25lcgBFDXBlbmRpbmdfb3duZXIARhJ0cmFuc2Zlcl9vd25lcnNoaXAARxpwcm9wb3NlX293bmVyc2hpcF90cmFuc2ZlcgBJEGFjY2VwdF9vd25lcnNoaXAATBJyZW5vdW5jZV9vd25lcnNoaXAATgd1cGdyYWRlAE8HbWlncmF0ZQBRBmZyZWV6ZQBSCWlzX2Zyb3plbgBUAV8DAQpfX2RhdGFfZW5kAwILX19oZWFwX2Jhc2UDAwqRSUhYAQJ/I4CAgIAAQRBrIgAkgICAgAAgAEEEahCdgICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQnoCAgAALQQAQn4CAgAAhASAAQRBqJICAgIAAIAFB/QFxCwwAIABBARDAgICAAAsbACAArUIghkIEhCABrUIghkIEhBCagICAABoLRwIBfwF+QQIhAQJAIAAQ24CAgAAiAkICEKKAgIAARQ0AQQEhAQJAAkAgAkICEICAgIAAp0H/AXEOAgECAAsAC0EAIQELIAELiwECAn8BfiOAgICAAEEQayIAJICAgIAAIABBBGoQnYCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMEJ6AgIAAC0EAIQECQEEAEKGAgIAAIgJCAhCigICAAEUNAEEBIQECQAJAIAJCAhCAgICAAKdB/wFxDgIBAgALAAtBACEBCyAAQRBqJICAgIAAIAELwgECAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkACQAJAIABB/wFxDgMAAQIACyABQa6EwIAAQQYQ14CAgAAgASgCAA0DIAEgASkDCBDagICAAAwCCyABQbSEwIAAQQgQ14CAgAAgASgCAA0CIAEgASkDCBDagICAAAwBCyABQbyEwIAAQQoQ14CAgAAgASgCAA0BIAEgASkDCBDagICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACCw8AIAAgARCZgICAAEIBUQsPABCkgICAABCBgICAABoLZgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABCdgICAAAJAIAAoAgBBAUcNACAAKAIEIAAoAggQnoCAgAALIAAQpoCAgAAgACkDCCEBIAApAwBBiggQp4CAgAAgAEEQaiSAgICAACABC0oCAX8BfiOAgICAAEEQayIAJICAgIAAIAAQpoCAgAAgACkDCCEBIAApAwBBiggQp4CAgAAgARCBgICAABogAEEQaiSAgICAACABC1ABAX8jgICAgABBEGsiASSAgICAACABQQRqEJ2AgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBCegICAAAsgABCsgICAACABQRBqJICAgIAACykAAkAgAKdBAXFFDQAPCyABQfp3aq1CIIZCg4CAgOCAAXwQqoCAgAAAC0IBAX8jgICAgABBEGsiACSAgICAACAAEKmAgIAAAkAgACkDAFANAEKDgICAsIEBEKqAgIAAAAsgAEEQaiSAgICAAAuTAQIBfwJ+I4CAgIAAQRBrIgEkgICAgAAgAUEEahCdgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQnoCAgAALQgAhAgJAAkBBARCrgICAACIDQgAQooCAgABFDQAgA0IAEICAgIAAIgJC/wGDQs0AUg0BIAAgAjcDCEIBIQILIAAgAjcDACABQRBqJICAgIAADwsACwsAIAAQm4CAgAAaC5IBAgF/AX4jgICAgABBEGsiASSAgICAAAJAAkACQAJAIABBAXFFDQAgAUHBg8CAAEEMENeAgIAAIAEoAgANAiABIAEpAwgQ2oCAgAAMAQsgAUG8g8CAAEEFENeAgIAAIAEoAgANASABIAEpAwgQ2oCAgAALIAEpAwghAiABKQMAUA0BCwALIAFBEGokgICAgAAgAgtNAQJ+QgAhAQJAAkBBABCrgICAACICQgIQooCAgABFDQAgAkICEICAgIAAIgFC/wGDQs0AUg0BIAAgATcDCEIBIQELIAAgATcDAA8LAAsNACABQgIgAKdBAXEbCwgAEKSAgIAAC10AAkACQCAAQv8Bg0LNAFINAEGAyx5BgNIfELCAgIAAQYDLHkGA0h8QsYCAgABBABCrgICAAEICEKKAgIAADQEgABCygICAAEICDwsAC0KDgICAkIEBEKqAgIAAAAsOAEEBIAAgARDcgICAAAsOAEECIAAgARDcgICAAAsOAEEAIABCAhDLgICAAAuzCwQCfwh+AX8BfiOAgICAAEHQAWsiAiSAgICAAAJAIABC/wGDQs0AUg0AQQAhAwJAA0AgA0HQAEYNASACQeAAaiADakICNwMAIANBCGohAwwACwsgAUL/AYNCzABSDQAgAUHogMCAAEEKIAJB4ABqQQoQtICAgAACQCACKQNgIgGnQf8BcSIDQQZGDQAgA0HAAEcNASABEIKAgIAAGgsgAikDaCIEQv8Bg0IEUg0AIAIpA3AiBUL/AYNCBFINACACQbABaiACKQN4ELWAgIAAIAIoArABQQFGDQAgAikDyAEhBiACKQPAASEHIAJBsAFqIAIpA4ABELWAgIAAIAIoArABQQFGDQAgAikDiAEiCEL/AYNCBFINACACKQOQASIJQv8Bg0LIAFINACACKQOYASIKQv8Bg0LNAFINACACKQOgASILQv8Bg0IEUg0AIAIxAKgBQs0AUg0AIAIpA8gBIQEgAikDwAEhACACQeAAahCdgICAAAJAIAIoAmBBAUcNACACKAJkIAIoAmgQnoCAgAALAkAgACABhEIAUQ0AAkAgCRCDgICAAEKAgICAEFoNAAJAIAtCIIinrULBAH4iCUIgiKcNAAJAIAmnIgNBH3FFDQAgA0FgcSIMQSBqIgMgDEkNAQsgA0GkBGoiDCADSQ0AIAxBIGoiAyAMSQ0AIAVChICAgHCDIQkgA61CIIZCBIQhBRCEgICAACELQZiCwIAAQRMQtoCAgAAhDQJAAkAgAEL//////////wBWIAFCAFIgAVAbDQAgAEIIhkIKhCEBDAELIAEgABCFgICAACEBCyACIAE3A8gBIAIgBTcDwAEgAiAJNwO4ASACIAs3A7ABQQAhAwJAAkADQAJAIANBIEcNAEEAIQMCQANAIANBIEYNASACQeAAaiADaiACQbABaiADaikDADcDACADQQhqIQMMAAsLIAogDSACQeAAakEEELeAgIAAEIaAgIAAIQFBACEDAkADQCADQSBGDQEgAkGwAWogA2pCAjcDACADQQhqIQMMAAsLIAFC/wGDQswAUg0EIAFB+IHAgABBBCACQbABakEEELSAgIAAIAJB4ABqIAIpA7ABELWAgIAAIAIoAmBBAUYNBCACKQN4IQUgAikDcCELIAJB4ABqIAIpA7gBELWAgIAAIAIoAmANBCACQeAAaiACKQPAARC1gICAACACKAJgDQQCQAJAIAIpA8gBIgGnQf8BcSIDQcUARg0AIANBC0cNBiABQj+HIQAgAUIIhyEJDAELIAEQh4CAgAAhACABEIiAgIAAIQkLIABCf1cNAiACQQA2AlwgAkHAAGogCSAAIAQgCCAIQoCAgIAQVBtCIIhCACACQdwAahDdgICAACACKAJcDQQgAkEwaiACKQNAIAIpA0hCkM4AQgAQ4ICAgAAgAikDOCEIIAIpAzAhAQJAIAcgBoRQDQAgCyAFhFANACACQRBqIAZCAEKAreIEQgAQ44CAgAAgAkEgaiAHQgBCgK3iBEIAEOOAgIAAIAIpAxhCAFIgAikDKCIGIAIpAxB8IgcgBlRyQQFGDQUgAiACKQMgIAcgCyAFEOKAgIAAIAIpAwgiBkJ/Vw0EIAAgBoVCf4UgACAAIAZ8IAkgAikDAHwiBiAJVK18IgmFg0IAUw0FIAggCSABIAZWIAggCVUgCCAJURsiAxshCCABIAYgAxshAQsCQAJAIAFCgICAgICAgMAAfEL//////////wBWDQAgASABhSAIIAFCP4eFhEIAUg0AIAFCCIZCC4QhAQwBCyAIIAEQiYCAgAAhAQsgAkHQAWokgICAgAAgAQ8LIAJB4ABqIANqQgI3AwAgA0EIaiEDDAALC0KDgICAMBCqgICAAAALQoOAgIDAABCqgICAAAALELiAgIAAAAtCg4CAgCAQqoCAgAAAC0KDgICAEBCqgICAAAALAAsxAAJAIAIgBEYNAAALIAAgAa1CIIZCBIQgA61CIIZCBIQgAq1CIIZCBIQQlYCAgAAaC3sCAX8BfgJAAkACQCABp0H/AXEiAkHEAEYNACACQQpHDQFCACEDIABCADcDGCAAIAFCCIg3AxAMAgsgARCRgICAACEDIAEQkoCAgAAhASAAIAM3AxggACABNwMQQgAhAwwBCyAAQoOQgICAATcDCEIBIQMLIAAgAzcDAAtFAgF/AX4jgICAgABBEGsiAiSAgICAACACIAAgARDWgICAAAJAIAIoAgBBAUcNAAALIAIpAwghAyACQRBqJICAgIAAIAMLGgAgAK1CIIZCBIQgAa1CIIZCBIQQloCAgAALCQAQ1YCAgAAAC94EAQV/I4CAgIAAQdAAayICJICAgIAAIAJBKGogABC6gICAAAJAIAIoAihBAkYNACACQQhqQQhqIAJBKGpBCGoiAygCADYCACACIAIpAig3AwggAkEoaiABELqAgIAAIAIoAihBAkYNACACQRhqQQhqIAMoAgA2AgAgAiACKQIoNwMYIAJBKGoQnYCAgAACQCACKAIoQQFHDQAgAigCLCACKAIwEJ6AgIAACxCjgICAAAJAAkACQBCggICAAA0AELuAgIAAIgNBgPuAAyADQYD7gANJGyEEIAIgAkEYajYCLCACIAJBCGo2AihBACEDA0AgA0EIRg0DAkAgAkEoaiADaigCACIFKAIAQQFxRQ0AIAUoAggiBiAESw0DIAUoAgQgBksNAwsgA0EEaiEDDAALC0KDgICA0P8AEKqAgIAAAAtCg4CAgMD/ABCqgICAAAALAkACQCACKAIIQQFHDQAgAigCDCACKAIQELCAgIAADAELQQEQoYCAgABCAhCKgICAABoLAkACQCACKAIYQQFHDQAgAigCHCACKAIgELGAgIAADAELQQIQoYCAgABCAhCKgICAABoLIAJBKGpBCGogAkEIakEIaigCADYCACACQTxqIAJBGGpBCGooAgA2AgAgAiACKQMINwMoIAIgAikDGDcCNEHog8CAAEEPELaAgIAAELyAgIAAIQAgAkEoahC9gICAACEBIAIgAkE0ahC9gICAADcDSCACIAE3A0AgAEGMhMCAAEECIAJBwABqQQIQvoCAgAAQi4CAgAAaIAJB0ABqJICAgIAAQgIPCwALaAEBfyOAgICAAEEQayICJICAgIAAAkACQCABQgJRDQAgAkEEaiABENiAgIAAAkAgAigCBEUNACAAQQI2AgAMAgsgACACKQIINwIEIABBATYCAAwBCyAAQQA2AgALIAJBEGokgICAgAALMwECfhCXgICAACEAAkAQmICAgABCIIgiASAAQiCIIgBUDQAgAacgAKdrDwsQuICAgAAAC2MDAX8BfgF/I4CAgIAAQRBrIgEkgICAgAAgASAANwMAQgIhAkEBIQMCQANAIANFDQEgA0F/aiEDIAAhAgwACwsgASACNwMIIAFBCGpBARC3gICAACEAIAFBEGokgICAgAAgAAtDAgF/AX4jgICAgABBEGsiASSAgICAACABIAAQwYCAgAACQCABKAIAQQFHDQAACyABKQMIIQIgAUEQaiSAgICAACACCy4AAkAgASADRg0AAAsgAK1CIIZCBIQgAq1CIIZCBIQgAa1CIIZCBIQQlICAgAALxAECAn8BfiOAgICAAEHAAGsiACSAgICAACAAQQhqEJ2AgIAAAkAgACgCCEEBRw0AIAAoAgwgACgCEBCegICAAAsgAEEIahCdgICAACAAQRRqIgFBAhDAgICAACAAQTBqIABBCGoQwYCAgAACQAJAIAAoAjANACAAKQM4IQIgAEEwaiABEMGAgIAAIAAoAjBBAUcNAQsACyAAIAApAzg3AyggACACNwMgIABBIGpBAhC3gICAACECIABBwABqJICAgIAAIAILdwICfwF+I4CAgIAAQRBrIgIkgICAgABBACEDAkACQCABEKGAgIAAIgRCAhCigICAAEUNACACQQRqIARCAhCAgICAABDYgICAAEEBIQMgAigCBEEBRg0BIAAgAikCCDcCBAsgACADNgIAIAJBEGokgICAgAAPCwALMAACQCABKAIAQQFHDQAgACABKAIEIAEoAggQ2YCAgAAPCyAAQgA3AwAgAEICNwMIC6oBAQF/I4CAgIAAQSBrIgAkgICAgAAgAEEMahCdgICAAAJAIAAoAgxBAUcNACAAKAIQIAAoAhQQnoCAgAALEKOAgIAAAkAQoICAgABFDQBCg4CAgOD/ABCqgICAAAALQQAQoYCAgABCAUICEIyAgIAAGkGchMCAAEESELaAgIAAELyAgIAAQQRBACAAQRhqQQAQvoCAgAAQi4CAgAAaIABBIGokgICAgABCAgsJABCggICAAK0LMQACQCAAQv8Bg0IEUg0AIAFC/wGDQgRSDQAgAEIgiKcgAUIgiKcQnoCAgABCAg8LAAs+AgF/AX4jgICAgABBEGsiACSAgICAACAAEKaAgIAAIAApAwAgACkDCBCtgICAACEBIABBEGokgICAgAAgAQs+AgF/AX4jgICAgABBEGsiACSAgICAACAAEKmAgIAAIAApAwAgACkDCBCtgICAACEBIABBEGokgICAgAAgAQt9AgF/AX4jgICAgABBEGsiASSAgICAAAJAIABC/wGDQs0AUg0AIAFBBGoQnYCAgAACQCABKAIEQQFHDQAgASgCCCABKAIMEJ6AgIAACxClgICAACECEKiAgIAAIAAQsoCAgAAgAiAAEMiAgIAAIAFBEGokgICAgABCAg8LAAthAgF/AX4jgICAgABBEGsiAiSAgICAAEG0gsCAAEEVELaAgIAAELyAgIAAIQMgAiAANwMIIAIgATcDACADQdyCwIAAQQIgAkECEL6AgIAAEIuAgIAAGiACQRBqJICAgIAAC90CAgF/An4jgICAgABBIGsiAiSAgICAAAJAAkACQCAAQv8Bg0LNAFINACABQv8Bg0IEUg0AIAJBCGoQnYCAgAACQCACKAIIQQFHDQAgAigCDCACKAIQEJ6AgIAACxClgICAACEDAkACQCABQv////8PVg0AIAJBCGoQqYCAgAAgAikDECEBIAIpAwhBiAgQp4CAgAAgASAAEI2AgIAAUEUNAxDKgICAAAwBCxC7gICAACABQiCIp0kNA0EBIABCABDLgICAAEEBEKuAgIAAQgAgAUKEgICAcIMiASABEI6AgIAAGkHsgsCAAEEWELaAgIAAELyAgIAAIQQgAiABNwMYIAIgAzcDECACIAA3AwggBEGIg8CAAEEDIAJBCGpBAxC+gICAABCLgICAABoLIAJBIGokgICAgABCAg8LAAtCg4CAgOCAARCqgICAAAALQoOAgIDwgAEQqoCAgAAACxMAQQEQq4CAgABCABCKgICAABoLFQAgABCrgICAACABIAIQjICAgAAaC6cBAgF/An4jgICAgABBEGsiACSAgICAACAAEJ2AgIAAAkAgACgCAEEBRw0AIAAoAgQgACgCCBCegICAAAsgABCpgICAACAAKQMIIQEgACkDAEGICBCngICAACABEIGAgIAAGiAAEKyAgIAAAkAgACgCAA0AEM2AgIAAAAsgACkDCCECEMqAgIAAIAEQsoCAgAAgAiABEMiAgIAAIABBEGokgICAgABCAgsJABC4gICAAAALoAECAX8CfiOAgICAAEEQayIAJICAgIAAIAAQnYCAgAACQCAAKAIAQQFHDQAgACgCBCAAKAIIEJ6AgIAACxClgICAACEBEKiAgIAAQQAQq4CAgABCAhCKgICAABpBoIPAgABBExC2gICAABC8gICAACECIAAgATcDACACQbSDwIAAQQEgAEEBEL6AgIAAEIuAgIAAGiAAQRBqJICAgIAAQgILpQEBAX8jgICAgABBEGsiASSAgICAAAJAAkAgAEL/AYNCyABSDQAgABCDgICAAEKAgICAcINCgICAgIAEUg0AIAFBBGoQnYCAgAACQCABKAIEQQFHDQAgASgCCCABKAIMEJ6AgIAACxCjgICAABCcgICAAA0BQQEQ0ICAgAAgABCPgICAABogAUEQaiSAgICAAEICDwsAC0KDgICAwIMBEKqAgIAAAAsMAEEBIAAQ04CAgAALrQEBAX8jgICAgABBEGsiASSAgICAAAJAAkACQCAAQv8Bg0LIAFINACABQQRqEJ2AgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBCegICAAAsQo4CAgABBARCfgICAAEH9AXFFDQEgABCQgICAAEL/AYNCAlINAkEAENCAgIAAIAFBEGokgICAgABCAg8LAAtCg4CAgLCDARCqgICAAAALQoOAgICggwEQqoCAgAAAC1oBAX8jgICAgABBEGsiACSAgICAACAAQQRqEJ2AgIAAAkAgACgCBEEBRw0AIAAoAgggACgCDBCegICAAAsQo4CAgABBAEEBENOAgIAAIABBEGokgICAgABCAgsaACAAENuAgIAAIAGtQv8Bg0ICEIyAgIAAGgsJABCcgICAAK0LAwAAC9sBAgF+BH8CQAJAIAJBCUsNAEIAIQMgAiEEIAEhBQNAAkAgBA0AIANC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ZXIAAAAAAAAGMS45MC4wAAAAAAAAAAAACHJzc2RrdmVyAAAALzIzLjQuMCM2NzNkNmM0ZjIzNjhkMjgyZDI1ZGEyOWJkYTU1YzIxYjhiZTY5Y2E2AACTWA5jb250cmFjdHNwZWN2MAAAAAAAAAAAAAAACmF1dGhvcml6ZXIAAAAAAAAAAAABAAAAEwAAAAAAAAAAAAAADV9fY29uc3RydWN0b3IAAAAAAAABAAAAAAAAAAVvd25lcgAAAAAAABMAAAAAAAAAAAAAAAAAAAAHZ2V0X2ZlZQAAAAACAAAAAAAAAANkdm4AAAAAEwAAAAAAAAAGcGFyYW1zAAAAAAfQAAAADER2bkZlZVBhcmFtcwAAAAEAAAALAAAABAAAAAAAAAAAAAAADkR2bkZlZUxpYkVycm9yAAAAAAAEAAAAAAAAAA9FaWROb3RTdXBwb3J0ZWQAAAAAAQAAAAAAAAARSW52YWxpZERWTk9wdGlvbnMAAAAAAAACAAAAAAAAAApJbnZhbGlkRmVlAAAAAAADAAAAAAAAAAhPdmVyZmxvdwAAAAQAAAAAAAABj1NldHMgVFRMIGNvbmZpZ3MgZm9yIGluc3RhbmNlIGFuZCBwZXJzaXN0ZW50IHN0b3JhZ2UuCgotIGBOb25lYCB2YWx1ZXMgcmVtb3ZlIHRoZSBjb3JyZXNwb25kaW5nIGNvbmZpZyAoZGlzYWJsZXMgYXV0by1leHRlbnNpb24gZm9yIHRoYXQgdHlwZSkKLSBWYWxpZGF0ZXMgdGhhdCBgdGhyZXNob2xkIDw9IGV4dGVuZF90byA8PSBNQVhfVFRMYAoKIyBBcmd1bWVudHMKLSBgaW5zdGFuY2VgIC0gVFRMIGNvbmZpZyBmb3IgaW5zdGFuY2Ugc3RvcmFnZQotIGBwZXJzaXN0ZW50YCAtIFRUTCBjb25maWcgZm9yIHBlcnNpc3RlbnQgc3RvcmFnZQoKIyBQYW5pY3MKLSBgVHRsQ29uZmlnRnJvemVuYCBpZiBjb25maWdzIGFyZSBmcm96ZW4KLSBgSW52YWxpZFR0bENvbmZpZ2AgaWYgdmFsaWRhdGlvbiBmYWlscwAAAAAPc2V0X3R0bF9jb25maWdzAAAAAAIAAAAAAAAACGluc3RhbmNlAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAEhSZXR1cm5zIHRoZSBjdXJyZW50IFRUTCBjb25maWdzIGFzIChpbnN0YW5jZV9jb25maWcsIHBlcnNpc3RlbnRfY29uZmlnKS4AAAALdHRsX2NvbmZpZ3MAAAAAAAAAAAEAAAPtAAAAAgAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAADhUGVybWFuZW50bHkgZnJlZXplcyBUVEwgY29uZmlncywgcHJldmVudGluZyBhbnkgZnV0dXJlIG1vZGlmaWNhdGlvbnMuCgpUaGlzIGlzIGlycmV2ZXJzaWJsZSBhbmQgcHJvdmlkZXMgaW1tdXRhYmlsaXR5IGd1YXJhbnRlZXMgdG8gdXNlcnMuCkVtaXRzIGBUdGxDb25maWdzRnJvemVuYCBldmVudC4KCiMgUGFuaWNzCi0gYFR0bENvbmZpZ0FscmVhZHlGcm96ZW5gIGlmIGFscmVhZHkgZnJvemVuAAAAAAAAEmZyZWV6ZV90dGxfY29uZmlncwAAAAAAAAAAAAAAAAAAAAAAJ1JldHVybnMgd2hldGhlciBUVEwgY29uZmlncyBhcmUgZnJvemVuLgAAAAAVaXNfdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAAEAAAABAAAAAAAAAKVFeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwgKGlmIGN1cnJlbnQgVFRMIGlzIGJlbG93IHRoaXMsIGV4dGVuZCkuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAAAATZXh0ZW5kX2luc3RhbmNlX3R0bAAAAAACAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAlleHRlbmRfdG8AAAAAAAAEAAAAAAAAAAAAAAA+UmV0dXJucyB0aGUgY3VycmVudCBvd25lciBhZGRyZXNzLCBvciBOb25lIGlmIG5vIG93bmVyIGlzIHNldC4AAAAAAAVvd25lcgAAAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAWVJldHVybnMgdGhlIHBlbmRpbmcgb3duZXIgYWRkcmVzcyBmb3IgMi1zdGVwIHRyYW5zZmVyLCBvciBOb25lIGlmIG5vIHRyYW5zZmVyIGlzIHBlbmRpbmcuAAAAAAAADXBlbmRpbmdfb3duZXIAAAAAAAAAAAAAAQAAA+gAAAATAAAAAAAAAStUcmFuc2ZlcnMgb3duZXJzaGlwIGltbWVkaWF0ZWx5IHRvIGEgbmV3IGFkZHJlc3MuCgpVc2Ugd2l0aCBjYXV0aW9uIC0gaWYgeW91IHRyYW5zZmVyIHRvIGEgd3JvbmcgYWRkcmVzcywgb3duZXJzaGlwIGlzIGxvc3QgZm9yZXZlci4KQ29uc2lkZXIgdXNpbmcgYHByb3Bvc2Vfb3duZXJzaGlwX3RyYW5zZmVyYCBpbnN0ZWFkLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgVHJhbnNmZXJJblByb2dyZXNzYCBpZiBhIDItc3RlcCB0cmFuc2ZlciBpcyBpbiBwcm9ncmVzcwAAAAASdHJhbnNmZXJfb3duZXJzaGlwAAAAAAABAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAAAAAJcUHJvcG9zZXMgYW4gb3duZXJzaGlwIHRyYW5zZmVyIHRvIGEgbmV3IGFkZHJlc3MuCgpUaGUgbmV3IG93bmVyIG11c3QgY2FsbCBgYWNjZXB0X293bmVyc2hpcCgpYCB3aXRoaW4gYHR0bGAgbGVkZ2Vycwp0byBjb21wbGV0ZSB0aGUgdHJhbnNmZXIuIFRoZSBwZW5kaW5nIHRyYW5zZmVyIHdpbGwgYXV0b21hdGljYWxseSBleHBpcmUgYWZ0ZXIuCgojIEFyZ3VtZW50cwotIGBuZXdfb3duZXJgIC0gVGhlIHByb3Bvc2VkIG5ldyBvd25lcgotIGB0dGxgIC0gTnVtYmVyIG9mIGxlZGdlcnMgdGhlIG5ldyBvd25lciBoYXMgdG8gYWNjZXB0LgpVc2UgYDBgIHRvIGNhbmNlbCBhIHBlbmRpbmcgdHJhbnNmZXIgKG5ld19vd25lciBtdXN0IG1hdGNoIHBlbmRpbmcpLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgTm9QZW5kaW5nVHJhbnNmZXJgIHdoZW4gY2FuY2VsbGluZyBhbmQgbm8gcGVuZGluZyB0cmFuc2ZlciBleGlzdHMKLSBgSW52YWxpZFR0bGAgaWYgdHRsIGV4Y2VlZHMgbWF4IFRUTAotIGBJbnZhbGlkUGVuZGluZ093bmVyYCB3aGVuIGNhbmNlbGxpbmcgd2l0aCB3cm9uZyBuZXdfb3duZXIgYWRkcmVzcwAAABpwcm9wb3NlX293bmVyc2hpcF90cmFuc2ZlcgAAAAAAAgAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAADdHRsAAAAAAQAAAAAAAAAAAAAALlBY2NlcHRzIGEgcGVuZGluZyAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyLgoKTXVzdCBiZSBjYWxsZWQgYnkgdGhlIHBlbmRpbmcgb3duZXIgYmVmb3JlIHRoZSBUVEwgZXhwaXJlcy4KCiMgUGFuaWNzCi0gYE5vUGVuZGluZ1RyYW5zZmVyYCBpZiB0aGVyZSBpcyBubyBwZW5kaW5nIHRyYW5zZmVyIChvciBpdCBleHBpcmVkKQAAAAAAABBhY2NlcHRfb3duZXJzaGlwAAAAAAAAAAAAAAAAAAAApFBlcm1hbmVudGx5IHJlbm91bmNlcyBvd25lcnNoaXAuCgojIFBhbmljcwotIGBPd25lck5vdFNldGAgaWYgbm8gb3duZXIgaXMgY3VycmVudGx5IHNldAotIGBUcmFuc2ZlckluUHJvZ3Jlc3NgIGlmIGEgMi1zdGVwIHRyYW5zZmVyIGlzIGluIHByb2dyZXNzIChjYW5jZWwgaXQgZmlyc3QpAAAAEnJlbm91bmNlX293bmVyc2hpcAAAAAAAAAAAAAAAAAAAAAAAlVRoZSB0eXBlIG9mIGRhdGEgcmVxdWlyZWQgZm9yIG1pZ3JhdGlvbi4KVXBncmFkZXMgdGhlIGNvbnRyYWN0IHRvIG5ldyBXQVNNIGJ5dGVjb2RlLgpTZXRzIGEgbWlncmF0aW9uIGZsYWcgdGhhdCBtdXN0IGJlIGNsZWFyZWQgYnkgY2FsbGluZyBgbWlncmF0ZWAuAAAAAAAAB3VwZ3JhZGUAAAAAAQAAAAAAAAANbmV3X3dhc21faGFzaAAAAAAAA+4AAAAgAAAAAAAAAAAAAAB2UnVucyBtaWdyYXRpb24gbG9naWMgYWZ0ZXIgYW4gdXBncmFkZS4KQ2FuIG9ubHkgYmUgY2FsbGVkIHdoZW4gdGhlIG1pZ3JhdGlvbiBmbGFnIGlzIHNldCBieSBhIHByZXZpb3VzIGB1cGdyYWRlYCBjYWxsLgAAAAAAB21pZ3JhdGUAAAAAAQAAAAAAAAAObWlncmF0aW9uX2RhdGEAAAAAAA4AAAAAAAAAAAAAAF5QZXJtYW5lbnRseSBmcmVlemVzIHRoZSBjb250cmFjdCwgcHJldmVudGluZyBhbnkgZnV0dXJlIHVwZ3JhZGVzLgpUaGlzIGFjdGlvbiBpcyBpcnJldmVyc2libGUuAAAAAAAGZnJlZXplAAAAAAAAAAAAAAAAAAAAAAA7UmV0dXJucyB3aGV0aGVyIHRoZSBjb250cmFjdCBpcyBmcm96ZW4gKHVwZ3JhZGVzIGRpc2FibGVkKS4AAAAACWlzX2Zyb3plbgAAAAAAAAAAAAABAAAAAQAAAAEAAADhUGFyYW1ldGVycyBmb3IgRFZOIGZlZSBjYWxjdWxhdGlvbi4KCkNvbnRhaW5zIGFsbCBpbnB1dHMgbmVlZGVkIGJ5IHRoZSBmZWUgbGlicmFyeSB0byBjYWxjdWxhdGUgdmVyaWZpY2F0aW9uIGZlZXMKZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2VzLiBJbmNsdWRlcyBtZXNzYWdlIHBhcmFtZXRlcnMsIGNvbW1vbiBjb25maWd1cmF0aW9uLAphbmQgZGVzdGluYXRpb24tc3BlY2lmaWMgc2V0dGluZ3MuAAAAAAAAAAAAAAxEdm5GZWVQYXJhbXMAAAAKAAAAJ051bWJlciBvZiBibG9jayBjb25maXJtYXRpb25zIHJlcXVpcmVkLgAAAAANY29uZmlybWF0aW9ucwAAAAAAAAYAAABMRGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKHVzZWQgaWYgbm8gZHN0LXNwZWNpZmljIG11bHRpcGxpZXIpLgAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAACNNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KRGVzdGluYXRpb24tU3BlY2lmaWMgQ29uZmlndXJhdGlvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpHYXMgZXN0aW1hdGUgZm9yIHZlcmlmaWNhdGlvbiBvbiBkZXN0aW5hdGlvbiBjaGFpbi4AAAADZ2FzAAAAAAoAAABGRGVzdGluYXRpb24tc3BlY2lmaWMgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgwID0gdXNlIGRlZmF1bHQpLgAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAAC0RWTiBvcHRpb25zAAAAAAdvcHRpb25zAAAAAA4AAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ29tbW9uIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzIGZvciBnYXMgcHJpY2UgYW5kIGV4Y2hhbmdlIHJhdGUgZGF0YS4AAAAKcHJpY2VfZmVlZAAAAAAAEwAAACdOdW1iZXIgb2YgcmVxdWlyZWQgc2lnbmF0dXJlcyAocXVvcnVtKS4AAAAABnF1b3J1bQAAAAAABAAAAOU9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpNZXNzYWdlIFBhcmFtZXRlcnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KVGhlIE9BcHAgc2VuZGVyIGFkZHJlc3MuAAAAAAAABnNlbmRlcgAAAAAAEwAAAAEAAADjUGFyYW1ldGVycyBmb3IgZXhlY3V0b3IgZmVlIGNhbGN1bGF0aW9uLgoKQ29udGFpbnMgYWxsIGlucHV0cyBuZWVkZWQgYnkgdGhlIGZlZSBsaWJyYXJ5IHRvIGNhbGN1bGF0ZSBleGVjdXRpb24gZmVlcwpmb3IgY3Jvc3MtY2hhaW4gbWVzc2FnZXMuIEluY2x1ZGVzIG1lc3NhZ2UgcGFyYW1ldGVycywgY29tbW9uIGNvbmZpZ3VyYXRpb24sCmFuZCBkZXN0aW5hdGlvbi1zcGVjaWZpYyBzZXR0aW5ncy4AAAAAAAAAAAlGZWVQYXJhbXMAAAAAAAALAAAAJlNpemUgb2YgdGhlIG1lc3NhZ2UgY2FsbGRhdGEgaW4gYnl0ZXMuAAAAAAANY2FsbGRhdGFfc2l6ZQAAAAAAAAQAAABMRGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKHVzZWQgaWYgbm8gZHN0LXNwZWNpZmljIG11bHRpcGxpZXIpLgAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAACNNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAA2QmFzZSBnYXMgZm9yIGVhY2ggbHpDb21wb3NlIGNhbGwgb24gZGVzdGluYXRpb24gY2hhaW4uAAAAAAATbHpfY29tcG9zZV9iYXNlX2dhcwAAAAAGAAABEz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkRlc3RpbmF0aW9uLVNwZWNpZmljIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQmFzZSBnYXMgZm9yIGx6UmVjZWl2ZSBleGVjdXRpb24gb24gZGVzdGluYXRpb24gY2hhaW4uAAAAABNsel9yZWNlaXZlX2Jhc2VfZ2FzAAAAAAYAAABGRGVzdGluYXRpb24tc3BlY2lmaWMgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgwID0gdXNlIGRlZmF1bHQpLgAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAALE1heGltdW0gbmF0aXZlIHRva2VuIHZhbHVlIHRoYXQgY2FuIGJlIHNlbnQuAAAACm5hdGl2ZV9jYXAAAAAAAAoAAABGRW5jb2RlZCBleGVjdXRvciBvcHRpb25zIChselJlY2VpdmUgZ2FzLCBsekNvbXBvc2UsIG5hdGl2ZURyb3AsIGV0Yy4pLgAAAAAAB29wdGlvbnMAAAAADgAAARA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpDb21tb24gQ29uZmlndXJhdGlvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpQcmljZSBmZWVkIGNvbnRyYWN0IGFkZHJlc3MgZm9yIGdhcyBwcmljZSBhbmQgZXhjaGFuZ2UgcmF0ZSBkYXRhLgAAAApwcmljZV9mZWVkAAAAAAATAAAA5T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ck1lc3NhZ2UgUGFyYW1ldGVycwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpUaGUgT0FwcCBzZW5kZXIgYWRkcmVzcy4AAAAAAAAGc2VuZGVyAAAAAAATAAAAAQAAAIRHYXMgcHJpY2UgaW5mb3JtYXRpb24gZm9yIGEgZGVzdGluYXRpb24gZW5kcG9pbnQuCgpDb250YWlucyB0aGUgZXhjaGFuZ2UgcmF0ZSBhbmQgZ2FzIGNvc3RzIG5lZWRlZCBmb3IgY3Jvc3MtY2hhaW4gZmVlIGNhbGN1bGF0aW9ucy4AAAAAAAAABVByaWNlAAAAAAAAAwAAADdHYXMgY29zdCBwZXIgYnl0ZSBvZiBjYWxsZGF0YSBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAAAAxnYXNfcGVyX2J5dGUAAAAEAAAAQkdhcyBwcmljZSBpbiB0aGUgc21hbGxlc3QgdW5pdCAod2VpIGZvciBFVk0sIHN0cm9vcHMgZm9yIFN0ZWxsYXIpLgAAAAAAEWdhc19wcmljZV9pbl91bml0AAAAAAAABgAAAKlQcmljZSByYXRpbyA9IChyZW1vdGUgbmF0aXZlIHRva2VuIHByaWNlIC8gbG9jYWwgbmF0aXZlIHRva2VuIHByaWNlKSAqIFBSSUNFX1JBVElPX0RFTk9NSU5BVE9SLgpVc2VkIHRvIGNvbnZlcnQgZGVzdGluYXRpb24gY2hhaW4gZ2FzIGNvc3RzIHRvIHNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4uAAAAAAAAC3ByaWNlX3JhdGlvAAAAAAoAAAABAAAAgEZlZSBlc3RpbWF0aW9uIHJlc3VsdCB3aXRoIGRldGFpbGVkIGJyZWFrZG93bi4KCkNvbnRhaW5zIHRoZSBjYWxjdWxhdGVkIGZlZSBhbmQgYWxsIGludGVybWVkaWF0ZSB2YWx1ZXMgdXNlZCBpbiB0aGUgY2FsY3VsYXRpb24uAAAAAAAAAAtGZWVFc3RpbWF0ZQAAAAAEAAAAMFNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4gcHJpY2UgaW4gVVNEIChzY2FsZWQpLgAAABBuYXRpdmVfcHJpY2VfdXNkAAAACgAAACVQcmljZSByYXRpbyB1c2VkIGZvciB0aGUgY2FsY3VsYXRpb24uAAAAAAAAC3ByaWNlX3JhdGlvAAAAAAoAAAAyRGVub21pbmF0b3IgZm9yIHRoZSBwcmljZSByYXRpbyAodHlwaWNhbGx5IDEwXjIwKS4AAAAAABdwcmljZV9yYXRpb19kZW5vbWluYXRvcgAAAAAKAAAAMVRvdGFsIGdhcyBmZWUgaW4gc291cmNlIGNoYWluIG5hdGl2ZSB0b2tlbiB1bml0cy4AAAAAAAANdG90YWxfZ2FzX2ZlZQAAAAAAAAsAAAAEAAAAHEJ1ZmZlclJlYWRlckVycm9yOiAxMDAwLTEwMDkAAAAAAAAAEUJ1ZmZlclJlYWRlckVycm9yAAAAAAAAAgAAAAAAAAANSW52YWxpZExlbmd0aAAAAAAAA+gAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA+kAAAAEAAAAHEJ1ZmZlcldyaXRlckVycm9yOiAxMDEwLTEwMTkAAAAAAAAAEUJ1ZmZlcldyaXRlckVycm9yAAAAAAAAAQAAAAAAAAAVSW52YWxpZEFkZHJlc3NQYXlsb2FkAAAAAAAD8gAAAAQAAAAfVHRsQ29uZmlndXJhYmxlRXJyb3I6IDEwMjAtMTAyOQAAAAAAAAAAFFR0bENvbmZpZ3VyYWJsZUVycm9yAAAAAwAAAAAAAAAQSW52YWxpZFR0bENvbmZpZwAAA/wAAAAAAAAAD1R0bENvbmZpZ0Zyb3plbgAAAAP9AAAAAAAAABZUdGxDb25maWdBbHJlYWR5RnJvemVuAAAAAAP+AAAABAAAABdPd25hYmxlRXJyb3I6IDEwMzAtMTAzOQAAAAAAAAAADE93bmFibGVFcnJvcgAAAAYAAAAAAAAAE0ludmFsaWRQZW5kaW5nT3duZXIAAAAEBgAAAAAAAAAKSW52YWxpZFR0bAAAAAAEBwAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAQIAAAAAAAAAA9Pd25lckFscmVhZHlTZXQAAAAECQAAAAAAAAALT3duZXJOb3RTZXQAAAAECgAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAQLAAAABAAAABhCeXRlc0V4dEVycm9yOiAxMDQwLTEwNDkAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAEEAAAAAQAAAAbVXBncmFkZWFibGVFcnJvcjogMTA1MC0xMDU5AAAAAAAAAAAQVXBncmFkZWFibGVFcnJvcgAAAAMAAAAAAAAAFEludmFsaWRNaWdyYXRpb25EYXRhAAAEGgAAAAAAAAATTWlncmF0aW9uTm90QWxsb3dlZAAAAAQbAAAAAAAAAA5VcGdyYWRlc0Zyb3plbgAAAAAEHAAAAAQAAAAYTXVsdGlzaWdFcnJvcjogMTA2MC0xMDY5AAAAAAAAAA1NdWx0aXNpZ0Vycm9yAAAAAAAACAAAAAAAAAASQWxyZWFkeUluaXRpYWxpemVkAAAAAAQkAAAAAAAAAA1JbnZhbGlkU2lnbmVyAAAAAAAEJQAAAAAAAAAOU2lnbmF0dXJlRXJyb3IAAAAABCYAAAAAAAAAE1NpZ25lckFscmVhZHlFeGlzdHMAAAAEJwAAAAAAAAAOU2lnbmVyTm90Rm91bmQAAAAABCgAAAAAAAAAHVRvdGFsU2lnbmVyc0xlc3NUaGFuVGhyZXNob2xkAAAAAAAEKQAAAAAAAAAPVW5zb3J0ZWRTaWduZXJzAAAABCoAAAAAAAAADVplcm9UaHJlc2hvbGQAAAAAAAQrAAAABQAAADBFdmVudCBlbWl0dGVkIHdoZW4gYSBzaWduZXIgaXMgYWRkZWQgb3IgcmVtb3ZlZC4AAAAAAAAACVNpZ25lclNldAAAAAAAAAEAAAAKc2lnbmVyX3NldAAAAAAAAgAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAACAAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHNpZ25hdHVyZSB0aHJlc2hvbGQgaXMgY2hhbmdlZC4AAAAAAAAAAAAMVGhyZXNob2xkU2V0AAAAAQAAAA10aHJlc2hvbGRfc2V0AAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAD011bHRpc2lnU3RvcmFnZQAAAAACAAAAAAAAAAAAAAAHU2lnbmVycwAAAAAAAAAAAAAAAAlUaHJlc2hvbGQAAAAAAAAFAAAAV0V2ZW50IGVtaXR0ZWQgd2hlbiBvd25lcnNoaXAgaXMgdHJhbnNmZXJyZWQgKGJvdGggc2luZ2xlLXN0ZXAgYW5kIHR3by1zdGVwIGNvbXBsZXRpb24pLgAAAAAAAAAAFE93bmVyc2hpcFRyYW5zZmVycmVkAAAAAQAAABVvd25lcnNoaXBfdHJhbnNmZXJyZWQAAAAAAAACAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAACAAAABQAAADtFdmVudCBlbWl0dGVkIHdoZW4gYSAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyIGlzIHByb3Bvc2VkLgAAAAAAAAAAFU93bmVyc2hpcFRyYW5zZmVycmluZwAAAAAAAAEAAAAWb3duZXJzaGlwX3RyYW5zZmVycmluZwAAAAAAAwAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAAAN0dGwAAAAABAAAAAAAAAACAAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHJlbm91bmNlZC4AAAAAAAAAAAAST3duZXJzaGlwUmVub3VuY2VkAAAAAAABAAAAE293bmVyc2hpcF9yZW5vdW5jZWQAAAAAAQAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAACAAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAFT3duZXIAAAAAAAAAAAAAAAAAAAxQZW5kaW5nT3duZXIAAAABAAAASVRUTCBjb25maWd1cmF0aW9uOiB0aHJlc2hvbGQgKHdoZW4gdG8gZXh0ZW5kKSBhbmQgZXh0ZW5kX3RvICh0YXJnZXQgVFRMKS4AAAAAAAAAAAAACVR0bENvbmZpZwAAAAAAAAIAAAAoVGFyZ2V0IFRUTCBhZnRlciBleHRlbnNpb24gKGluIGxlZGdlcnMpLgAAAAlleHRlbmRfdG8AAAAAAAAEAAAAM1RUTCB0aHJlc2hvbGQgdGhhdCB0cmlnZ2VycyBleHRlbnNpb24gKGluIGxlZGdlcnMpLgAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAUAAAAnRXZlbnQgZW1pdHRlZCB3aGVuIFRUTCBjb25maWdzIGFyZSBzZXQuAAAAAAAAAAANVHRsQ29uZmlnc1NldAAAAAAAAAEAAAAPdHRsX2NvbmZpZ3Nfc2V0AAAAAAIAAAAAAAAACGluc3RhbmNlAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAAAAAAKcGVyc2lzdGVudAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAIAAAAFAAAAKkV2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgZnJvemVuLgAAAAAAAAAAABBUdGxDb25maWdzRnJvemVuAAAAAQAAABJ0dGxfY29uZmlnc19mcm96ZW4AAAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEFR0bENvbmZpZ1N0b3JhZ2UAAAADAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAhJbnN0YW5jZQAAAAAAAAAAAAAAClBlcnNpc3RlbnQAAAAAAAIAAAAAAAAAAAAAABJVcGdyYWRlYWJsZVN0b3JhZ2UAAAAAAAIAAAAAAAAAAAAAAAZGcm96ZW4AAAAAAAAAAAAAAAAACU1pZ3JhdGluZwAAAAAeEWNvbnRyYWN0ZW52bWV0YXYwAAAAAAAAABcAAAAA";
|
|
66
12
|
/**
|
|
67
|
-
*
|
|
13
|
+
* Pre-computed WASM hash (SHA-256)
|
|
14
|
+
* Use this when the WASM is already uploaded on-chain
|
|
68
15
|
*/
|
|
69
|
-
export declare const
|
|
70
|
-
1040: {
|
|
71
|
-
message: string;
|
|
72
|
-
};
|
|
73
|
-
};
|
|
74
|
-
/**
|
|
75
|
-
* UpgradeableError: 1050-1059
|
|
76
|
-
*/
|
|
77
|
-
export declare const UpgradeableError: {
|
|
78
|
-
1050: {
|
|
79
|
-
message: string;
|
|
80
|
-
};
|
|
81
|
-
};
|
|
82
|
-
/**
|
|
83
|
-
* MultisigError: 1060-1069
|
|
84
|
-
*/
|
|
85
|
-
export declare const MultisigError: {
|
|
86
|
-
1060: {
|
|
87
|
-
message: string;
|
|
88
|
-
};
|
|
89
|
-
1061: {
|
|
90
|
-
message: string;
|
|
91
|
-
};
|
|
92
|
-
1062: {
|
|
93
|
-
message: string;
|
|
94
|
-
};
|
|
95
|
-
1063: {
|
|
96
|
-
message: string;
|
|
97
|
-
};
|
|
98
|
-
1064: {
|
|
99
|
-
message: string;
|
|
100
|
-
};
|
|
101
|
-
1065: {
|
|
102
|
-
message: string;
|
|
103
|
-
};
|
|
104
|
-
1066: {
|
|
105
|
-
message: string;
|
|
106
|
-
};
|
|
107
|
-
1067: {
|
|
108
|
-
message: string;
|
|
109
|
-
};
|
|
110
|
-
};
|
|
111
|
-
export type MultisigStorage = {
|
|
112
|
-
tag: "Signers";
|
|
113
|
-
values: void;
|
|
114
|
-
} | {
|
|
115
|
-
tag: "Threshold";
|
|
116
|
-
values: void;
|
|
117
|
-
};
|
|
118
|
-
export type OwnableStorage = {
|
|
119
|
-
tag: "Owner";
|
|
120
|
-
values: void;
|
|
121
|
-
};
|
|
122
|
-
/**
|
|
123
|
-
* TTL configuration: threshold (when to extend) and extend_to (target TTL).
|
|
124
|
-
*/
|
|
125
|
-
export interface TtlConfig {
|
|
126
|
-
/**
|
|
127
|
-
* Target TTL after extension (in ledgers).
|
|
128
|
-
*/
|
|
129
|
-
extend_to: u32;
|
|
130
|
-
/**
|
|
131
|
-
* TTL threshold that triggers extension (in ledgers).
|
|
132
|
-
*/
|
|
133
|
-
threshold: u32;
|
|
134
|
-
}
|
|
135
|
-
export type TtlConfigStorage = {
|
|
136
|
-
tag: "Frozen";
|
|
137
|
-
values: void;
|
|
138
|
-
} | {
|
|
139
|
-
tag: "Instance";
|
|
140
|
-
values: void;
|
|
141
|
-
} | {
|
|
142
|
-
tag: "Persistent";
|
|
143
|
-
values: void;
|
|
144
|
-
};
|
|
145
|
-
export type UpgradeableStorage = {
|
|
146
|
-
tag: "Migrating";
|
|
147
|
-
values: void;
|
|
148
|
-
};
|
|
16
|
+
export declare const WASM_HASH = "c0fc2b3021df87431d9ec8748c0ef774e0e831ec7da10948ebcad3022aaa7e3a";
|
|
149
17
|
/**
|
|
150
|
-
*
|
|
18
|
+
* Get the WASM bytecode as a Buffer
|
|
19
|
+
* Use this to upload the WASM to the network
|
|
151
20
|
*/
|
|
152
|
-
export declare
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
};
|
|
156
|
-
1201: {
|
|
157
|
-
message: string;
|
|
158
|
-
};
|
|
159
|
-
1202: {
|
|
160
|
-
message: string;
|
|
161
|
-
};
|
|
162
|
-
1203: {
|
|
163
|
-
message: string;
|
|
164
|
-
};
|
|
165
|
-
1204: {
|
|
166
|
-
message: string;
|
|
167
|
-
};
|
|
168
|
-
1205: {
|
|
169
|
-
message: string;
|
|
170
|
-
};
|
|
171
|
-
1206: {
|
|
172
|
-
message: string;
|
|
173
|
-
};
|
|
174
|
-
1207: {
|
|
175
|
-
message: string;
|
|
176
|
-
};
|
|
177
|
-
1208: {
|
|
178
|
-
message: string;
|
|
179
|
-
};
|
|
180
|
-
1209: {
|
|
181
|
-
message: string;
|
|
182
|
-
};
|
|
183
|
-
1210: {
|
|
184
|
-
message: string;
|
|
185
|
-
};
|
|
186
|
-
1211: {
|
|
187
|
-
message: string;
|
|
188
|
-
};
|
|
189
|
-
1212: {
|
|
190
|
-
message: string;
|
|
191
|
-
};
|
|
192
|
-
1213: {
|
|
193
|
-
message: string;
|
|
194
|
-
};
|
|
195
|
-
1214: {
|
|
196
|
-
message: string;
|
|
197
|
-
};
|
|
198
|
-
1215: {
|
|
21
|
+
export declare function getWasmBuffer(): Buffer;
|
|
22
|
+
export declare const DvnFeeLibError: {
|
|
23
|
+
1: {
|
|
199
24
|
message: string;
|
|
200
25
|
};
|
|
201
|
-
|
|
26
|
+
2: {
|
|
202
27
|
message: string;
|
|
203
28
|
};
|
|
204
|
-
|
|
29
|
+
3: {
|
|
205
30
|
message: string;
|
|
206
31
|
};
|
|
207
|
-
|
|
32
|
+
4: {
|
|
208
33
|
message: string;
|
|
209
34
|
};
|
|
210
35
|
};
|
|
@@ -371,79 +196,158 @@ export interface FeeEstimate {
|
|
|
371
196
|
*/
|
|
372
197
|
total_gas_fee: i128;
|
|
373
198
|
}
|
|
374
|
-
|
|
375
|
-
|
|
199
|
+
/**
|
|
200
|
+
* BufferReaderError: 1000-1009
|
|
201
|
+
*/
|
|
202
|
+
export declare const BufferReaderError: {
|
|
203
|
+
1000: {
|
|
204
|
+
message: string;
|
|
205
|
+
};
|
|
206
|
+
1001: {
|
|
207
|
+
message: string;
|
|
208
|
+
};
|
|
209
|
+
};
|
|
210
|
+
/**
|
|
211
|
+
* BufferWriterError: 1010-1019
|
|
212
|
+
*/
|
|
213
|
+
export declare const BufferWriterError: {
|
|
214
|
+
1010: {
|
|
215
|
+
message: string;
|
|
216
|
+
};
|
|
217
|
+
};
|
|
218
|
+
/**
|
|
219
|
+
* TtlConfigurableError: 1020-1029
|
|
220
|
+
*/
|
|
221
|
+
export declare const TtlConfigurableError: {
|
|
222
|
+
1020: {
|
|
223
|
+
message: string;
|
|
224
|
+
};
|
|
225
|
+
1021: {
|
|
226
|
+
message: string;
|
|
227
|
+
};
|
|
228
|
+
1022: {
|
|
229
|
+
message: string;
|
|
230
|
+
};
|
|
231
|
+
};
|
|
232
|
+
/**
|
|
233
|
+
* OwnableError: 1030-1039
|
|
234
|
+
*/
|
|
235
|
+
export declare const OwnableError: {
|
|
236
|
+
1030: {
|
|
237
|
+
message: string;
|
|
238
|
+
};
|
|
239
|
+
1031: {
|
|
240
|
+
message: string;
|
|
241
|
+
};
|
|
242
|
+
1032: {
|
|
243
|
+
message: string;
|
|
244
|
+
};
|
|
245
|
+
1033: {
|
|
246
|
+
message: string;
|
|
247
|
+
};
|
|
248
|
+
1034: {
|
|
249
|
+
message: string;
|
|
250
|
+
};
|
|
251
|
+
1035: {
|
|
252
|
+
message: string;
|
|
253
|
+
};
|
|
254
|
+
};
|
|
255
|
+
/**
|
|
256
|
+
* BytesExtError: 1040-1049
|
|
257
|
+
*/
|
|
258
|
+
export declare const BytesExtError: {
|
|
259
|
+
1040: {
|
|
260
|
+
message: string;
|
|
261
|
+
};
|
|
262
|
+
};
|
|
263
|
+
/**
|
|
264
|
+
* UpgradeableError: 1050-1059
|
|
265
|
+
*/
|
|
266
|
+
export declare const UpgradeableError: {
|
|
267
|
+
1050: {
|
|
268
|
+
message: string;
|
|
269
|
+
};
|
|
270
|
+
1051: {
|
|
271
|
+
message: string;
|
|
272
|
+
};
|
|
273
|
+
1052: {
|
|
274
|
+
message: string;
|
|
275
|
+
};
|
|
276
|
+
};
|
|
277
|
+
/**
|
|
278
|
+
* MultisigError: 1060-1069
|
|
279
|
+
*/
|
|
280
|
+
export declare const MultisigError: {
|
|
281
|
+
1060: {
|
|
282
|
+
message: string;
|
|
283
|
+
};
|
|
284
|
+
1061: {
|
|
285
|
+
message: string;
|
|
286
|
+
};
|
|
287
|
+
1062: {
|
|
288
|
+
message: string;
|
|
289
|
+
};
|
|
290
|
+
1063: {
|
|
291
|
+
message: string;
|
|
292
|
+
};
|
|
293
|
+
1064: {
|
|
294
|
+
message: string;
|
|
295
|
+
};
|
|
296
|
+
1065: {
|
|
297
|
+
message: string;
|
|
298
|
+
};
|
|
299
|
+
1066: {
|
|
300
|
+
message: string;
|
|
301
|
+
};
|
|
302
|
+
1067: {
|
|
303
|
+
message: string;
|
|
304
|
+
};
|
|
305
|
+
};
|
|
306
|
+
export type MultisigStorage = {
|
|
307
|
+
tag: "Signers";
|
|
376
308
|
values: void;
|
|
377
309
|
} | {
|
|
378
|
-
tag: "
|
|
310
|
+
tag: "Threshold";
|
|
379
311
|
values: void;
|
|
380
|
-
}
|
|
381
|
-
|
|
312
|
+
};
|
|
313
|
+
export type OwnableStorage = {
|
|
314
|
+
tag: "Owner";
|
|
382
315
|
values: void;
|
|
383
316
|
} | {
|
|
384
|
-
tag: "
|
|
317
|
+
tag: "PendingOwner";
|
|
385
318
|
values: void;
|
|
386
|
-
}
|
|
387
|
-
|
|
319
|
+
};
|
|
320
|
+
/**
|
|
321
|
+
* TTL configuration: threshold (when to extend) and extend_to (target TTL).
|
|
322
|
+
*/
|
|
323
|
+
export interface TtlConfig {
|
|
324
|
+
/**
|
|
325
|
+
* Target TTL after extension (in ledgers).
|
|
326
|
+
*/
|
|
327
|
+
extend_to: u32;
|
|
328
|
+
/**
|
|
329
|
+
* TTL threshold that triggers extension (in ledgers).
|
|
330
|
+
*/
|
|
331
|
+
threshold: u32;
|
|
332
|
+
}
|
|
333
|
+
export type TtlConfigStorage = {
|
|
334
|
+
tag: "Frozen";
|
|
388
335
|
values: void;
|
|
389
336
|
} | {
|
|
390
|
-
tag: "
|
|
391
|
-
values: readonly [u32];
|
|
392
|
-
} | {
|
|
393
|
-
tag: "MessageLibs";
|
|
337
|
+
tag: "Instance";
|
|
394
338
|
values: void;
|
|
395
339
|
} | {
|
|
396
|
-
tag: "
|
|
397
|
-
values:
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
} | {
|
|
402
|
-
tag: "AllowlistSize";
|
|
340
|
+
tag: "Persistent";
|
|
341
|
+
values: void;
|
|
342
|
+
};
|
|
343
|
+
export type UpgradeableStorage = {
|
|
344
|
+
tag: "Frozen";
|
|
403
345
|
values: void;
|
|
404
346
|
} | {
|
|
405
|
-
tag: "
|
|
347
|
+
tag: "Migrating";
|
|
406
348
|
values: void;
|
|
407
349
|
};
|
|
408
350
|
export interface Client {
|
|
409
|
-
/**
|
|
410
|
-
* Construct and simulate a upgrade 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.
|
|
411
|
-
*/
|
|
412
|
-
upgrade: ({ new_wasm_hash }: {
|
|
413
|
-
new_wasm_hash: Buffer;
|
|
414
|
-
}, txnOptions?: {
|
|
415
|
-
/**
|
|
416
|
-
* The fee to pay for the transaction. Default: BASE_FEE
|
|
417
|
-
*/
|
|
418
|
-
fee?: number;
|
|
419
|
-
/**
|
|
420
|
-
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
421
|
-
*/
|
|
422
|
-
timeoutInSeconds?: number;
|
|
423
|
-
/**
|
|
424
|
-
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
425
|
-
*/
|
|
426
|
-
simulate?: boolean;
|
|
427
|
-
}) => Promise<AssembledTransaction<null>>;
|
|
428
|
-
/**
|
|
429
|
-
* Construct and simulate a migrate 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.
|
|
430
|
-
*/
|
|
431
|
-
migrate: ({ migration_data }: {
|
|
432
|
-
migration_data: MigrationData;
|
|
433
|
-
}, txnOptions?: {
|
|
434
|
-
/**
|
|
435
|
-
* The fee to pay for the transaction. Default: BASE_FEE
|
|
436
|
-
*/
|
|
437
|
-
fee?: number;
|
|
438
|
-
/**
|
|
439
|
-
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
440
|
-
*/
|
|
441
|
-
timeoutInSeconds?: number;
|
|
442
|
-
/**
|
|
443
|
-
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
444
|
-
*/
|
|
445
|
-
simulate?: boolean;
|
|
446
|
-
}) => Promise<AssembledTransaction<null>>;
|
|
447
351
|
/**
|
|
448
352
|
* Construct and simulate a authorizer 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.
|
|
449
353
|
*/
|
|
@@ -617,9 +521,34 @@ export interface Client {
|
|
|
617
521
|
*/
|
|
618
522
|
simulate?: boolean;
|
|
619
523
|
}) => Promise<AssembledTransaction<Option<string>>>;
|
|
524
|
+
/**
|
|
525
|
+
* 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.
|
|
526
|
+
* Returns the pending owner address for 2-step transfer, or None if no transfer is pending.
|
|
527
|
+
*/
|
|
528
|
+
pending_owner: (txnOptions?: {
|
|
529
|
+
/**
|
|
530
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
531
|
+
*/
|
|
532
|
+
fee?: number;
|
|
533
|
+
/**
|
|
534
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
535
|
+
*/
|
|
536
|
+
timeoutInSeconds?: number;
|
|
537
|
+
/**
|
|
538
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
539
|
+
*/
|
|
540
|
+
simulate?: boolean;
|
|
541
|
+
}) => Promise<AssembledTransaction<Option<string>>>;
|
|
620
542
|
/**
|
|
621
543
|
* 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.
|
|
622
|
-
* Transfers ownership to a new address.
|
|
544
|
+
* Transfers ownership immediately to a new address.
|
|
545
|
+
*
|
|
546
|
+
* Use with caution - if you transfer to a wrong address, ownership is lost forever.
|
|
547
|
+
* Consider using `propose_ownership_transfer` instead.
|
|
548
|
+
*
|
|
549
|
+
* # Panics
|
|
550
|
+
* - `OwnerNotSet` if no owner is currently set
|
|
551
|
+
* - `TransferInProgress` if a 2-step transfer is in progress
|
|
623
552
|
*/
|
|
624
553
|
transfer_ownership: ({ new_owner }: {
|
|
625
554
|
new_owner: string;
|
|
@@ -637,9 +566,71 @@ export interface Client {
|
|
|
637
566
|
*/
|
|
638
567
|
simulate?: boolean;
|
|
639
568
|
}) => Promise<AssembledTransaction<null>>;
|
|
569
|
+
/**
|
|
570
|
+
* 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.
|
|
571
|
+
* Proposes an ownership transfer to a new address.
|
|
572
|
+
*
|
|
573
|
+
* The new owner must call `accept_ownership()` within `ttl` ledgers
|
|
574
|
+
* to complete the transfer. The pending transfer will automatically expire after.
|
|
575
|
+
*
|
|
576
|
+
* # Arguments
|
|
577
|
+
* - `new_owner` - The proposed new owner
|
|
578
|
+
* - `ttl` - Number of ledgers the new owner has to accept.
|
|
579
|
+
* Use `0` to cancel a pending transfer (new_owner must match pending).
|
|
580
|
+
*
|
|
581
|
+
* # Panics
|
|
582
|
+
* - `OwnerNotSet` if no owner is currently set
|
|
583
|
+
* - `NoPendingTransfer` when cancelling and no pending transfer exists
|
|
584
|
+
* - `InvalidTtl` if ttl exceeds max TTL
|
|
585
|
+
* - `InvalidPendingOwner` when cancelling with wrong new_owner address
|
|
586
|
+
*/
|
|
587
|
+
propose_ownership_transfer: ({ new_owner, ttl }: {
|
|
588
|
+
new_owner: string;
|
|
589
|
+
ttl: u32;
|
|
590
|
+
}, txnOptions?: {
|
|
591
|
+
/**
|
|
592
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
593
|
+
*/
|
|
594
|
+
fee?: number;
|
|
595
|
+
/**
|
|
596
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
597
|
+
*/
|
|
598
|
+
timeoutInSeconds?: number;
|
|
599
|
+
/**
|
|
600
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
601
|
+
*/
|
|
602
|
+
simulate?: boolean;
|
|
603
|
+
}) => Promise<AssembledTransaction<null>>;
|
|
604
|
+
/**
|
|
605
|
+
* 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.
|
|
606
|
+
* Accepts a pending 2-step ownership transfer.
|
|
607
|
+
*
|
|
608
|
+
* Must be called by the pending owner before the TTL expires.
|
|
609
|
+
*
|
|
610
|
+
* # Panics
|
|
611
|
+
* - `NoPendingTransfer` if there is no pending transfer (or it expired)
|
|
612
|
+
*/
|
|
613
|
+
accept_ownership: (txnOptions?: {
|
|
614
|
+
/**
|
|
615
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
616
|
+
*/
|
|
617
|
+
fee?: number;
|
|
618
|
+
/**
|
|
619
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
620
|
+
*/
|
|
621
|
+
timeoutInSeconds?: number;
|
|
622
|
+
/**
|
|
623
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
624
|
+
*/
|
|
625
|
+
simulate?: boolean;
|
|
626
|
+
}) => Promise<AssembledTransaction<null>>;
|
|
640
627
|
/**
|
|
641
628
|
* 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.
|
|
642
|
-
* Permanently renounces ownership.
|
|
629
|
+
* Permanently renounces ownership.
|
|
630
|
+
*
|
|
631
|
+
* # Panics
|
|
632
|
+
* - `OwnerNotSet` if no owner is currently set
|
|
633
|
+
* - `TransferInProgress` if a 2-step transfer is in progress (cancel it first)
|
|
643
634
|
*/
|
|
644
635
|
renounce_ownership: (txnOptions?: {
|
|
645
636
|
/**
|
|
@@ -655,6 +646,86 @@ export interface Client {
|
|
|
655
646
|
*/
|
|
656
647
|
simulate?: boolean;
|
|
657
648
|
}) => Promise<AssembledTransaction<null>>;
|
|
649
|
+
/**
|
|
650
|
+
* Construct and simulate a upgrade 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.
|
|
651
|
+
* The type of data required for migration.
|
|
652
|
+
* Upgrades the contract to new WASM bytecode.
|
|
653
|
+
* Sets a migration flag that must be cleared by calling `migrate`.
|
|
654
|
+
*/
|
|
655
|
+
upgrade: ({ new_wasm_hash }: {
|
|
656
|
+
new_wasm_hash: Buffer;
|
|
657
|
+
}, txnOptions?: {
|
|
658
|
+
/**
|
|
659
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
660
|
+
*/
|
|
661
|
+
fee?: number;
|
|
662
|
+
/**
|
|
663
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
664
|
+
*/
|
|
665
|
+
timeoutInSeconds?: number;
|
|
666
|
+
/**
|
|
667
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
668
|
+
*/
|
|
669
|
+
simulate?: boolean;
|
|
670
|
+
}) => Promise<AssembledTransaction<null>>;
|
|
671
|
+
/**
|
|
672
|
+
* Construct and simulate a migrate 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.
|
|
673
|
+
* Runs migration logic after an upgrade.
|
|
674
|
+
* Can only be called when the migration flag is set by a previous `upgrade` call.
|
|
675
|
+
*/
|
|
676
|
+
migrate: ({ migration_data }: {
|
|
677
|
+
migration_data: Buffer;
|
|
678
|
+
}, txnOptions?: {
|
|
679
|
+
/**
|
|
680
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
681
|
+
*/
|
|
682
|
+
fee?: number;
|
|
683
|
+
/**
|
|
684
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
685
|
+
*/
|
|
686
|
+
timeoutInSeconds?: number;
|
|
687
|
+
/**
|
|
688
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
689
|
+
*/
|
|
690
|
+
simulate?: boolean;
|
|
691
|
+
}) => Promise<AssembledTransaction<null>>;
|
|
692
|
+
/**
|
|
693
|
+
* Construct and simulate a freeze 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.
|
|
694
|
+
* Permanently freezes the contract, preventing any future upgrades.
|
|
695
|
+
* This action is irreversible.
|
|
696
|
+
*/
|
|
697
|
+
freeze: (txnOptions?: {
|
|
698
|
+
/**
|
|
699
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
700
|
+
*/
|
|
701
|
+
fee?: number;
|
|
702
|
+
/**
|
|
703
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
704
|
+
*/
|
|
705
|
+
timeoutInSeconds?: number;
|
|
706
|
+
/**
|
|
707
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
708
|
+
*/
|
|
709
|
+
simulate?: boolean;
|
|
710
|
+
}) => Promise<AssembledTransaction<null>>;
|
|
711
|
+
/**
|
|
712
|
+
* Construct and simulate a is_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.
|
|
713
|
+
* Returns whether the contract is frozen (upgrades disabled).
|
|
714
|
+
*/
|
|
715
|
+
is_frozen: (txnOptions?: {
|
|
716
|
+
/**
|
|
717
|
+
* The fee to pay for the transaction. Default: BASE_FEE
|
|
718
|
+
*/
|
|
719
|
+
fee?: number;
|
|
720
|
+
/**
|
|
721
|
+
* The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
|
|
722
|
+
*/
|
|
723
|
+
timeoutInSeconds?: number;
|
|
724
|
+
/**
|
|
725
|
+
* Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
|
|
726
|
+
*/
|
|
727
|
+
simulate?: boolean;
|
|
728
|
+
}) => Promise<AssembledTransaction<boolean>>;
|
|
658
729
|
}
|
|
659
730
|
export declare class Client extends ContractClient {
|
|
660
731
|
readonly options: ContractClientOptions;
|
|
@@ -674,8 +745,6 @@ export declare class Client extends ContractClient {
|
|
|
674
745
|
}): Promise<AssembledTransaction<T>>;
|
|
675
746
|
constructor(options: ContractClientOptions);
|
|
676
747
|
readonly fromJSON: {
|
|
677
|
-
upgrade: (json: string) => AssembledTransaction<null>;
|
|
678
|
-
migrate: (json: string) => AssembledTransaction<null>;
|
|
679
748
|
authorizer: (json: string) => AssembledTransaction<string>;
|
|
680
749
|
get_fee: (json: string) => AssembledTransaction<bigint>;
|
|
681
750
|
set_ttl_configs: (json: string) => AssembledTransaction<null>;
|
|
@@ -684,7 +753,14 @@ export declare class Client extends ContractClient {
|
|
|
684
753
|
is_ttl_configs_frozen: (json: string) => AssembledTransaction<boolean>;
|
|
685
754
|
extend_instance_ttl: (json: string) => AssembledTransaction<null>;
|
|
686
755
|
owner: (json: string) => AssembledTransaction<Option<string>>;
|
|
756
|
+
pending_owner: (json: string) => AssembledTransaction<Option<string>>;
|
|
687
757
|
transfer_ownership: (json: string) => AssembledTransaction<null>;
|
|
758
|
+
propose_ownership_transfer: (json: string) => AssembledTransaction<null>;
|
|
759
|
+
accept_ownership: (json: string) => AssembledTransaction<null>;
|
|
688
760
|
renounce_ownership: (json: string) => AssembledTransaction<null>;
|
|
761
|
+
upgrade: (json: string) => AssembledTransaction<null>;
|
|
762
|
+
migrate: (json: string) => AssembledTransaction<null>;
|
|
763
|
+
freeze: (json: string) => AssembledTransaction<null>;
|
|
764
|
+
is_frozen: (json: string) => AssembledTransaction<boolean>;
|
|
689
765
|
};
|
|
690
766
|
}
|