@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.
Files changed (213) hide show
  1. package/.turbo/turbo-build.log +303 -253
  2. package/.turbo/turbo-lint.log +66 -65
  3. package/.turbo/turbo-test.log +1312 -1282
  4. package/Cargo.lock +21 -8
  5. package/Cargo.toml +2 -0
  6. package/contracts/ERROR_SPEC.md +9 -2
  7. package/contracts/common-macros/src/contract_ttl.rs +18 -7
  8. package/contracts/common-macros/src/lib.rs +4 -4
  9. package/contracts/common-macros/src/tests/contract_ttl.rs +1 -1
  10. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_ttl__snapshot_generated_contractimpl_code.snap +2 -1
  11. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +7 -12
  12. package/contracts/common-macros/src/upgradeable.rs +15 -21
  13. package/contracts/message-libs/uln-302/src/events.rs +4 -0
  14. package/contracts/message-libs/uln-302/src/send_uln.rs +23 -7
  15. package/contracts/message-libs/uln-302/src/tests/send_uln302/send.rs +38 -64
  16. package/contracts/oapps/counter/Cargo.toml +1 -0
  17. package/contracts/oapps/counter/integration_tests/setup_uln.rs +1 -1
  18. package/contracts/oapps/oapp/src/oapp_receiver.rs +1 -1
  19. package/contracts/oapps/oapp/src/tests/test_oapp_core.rs +113 -65
  20. package/contracts/oapps/oapp/src/tests/test_oapp_options_type3.rs +111 -82
  21. package/contracts/oapps/oapp/src/tests/test_oapp_receiver.rs +293 -65
  22. package/contracts/oapps/oapp/src/tests/test_oapp_sender.rs +331 -56
  23. package/contracts/oapps/oft/Cargo.toml +10 -7
  24. package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_oft_fee.rs +3 -4
  25. package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_pausable.rs +2 -3
  26. package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_rate_limiter.rs +1 -1
  27. package/contracts/oapps/oft/integration-tests/mod.rs +1 -1
  28. package/contracts/oapps/oft/integration-tests/setup.rs +28 -127
  29. package/contracts/oapps/oft/integration-tests/utils.rs +254 -21
  30. package/contracts/oapps/oft/src/extensions/oft_fee.rs +23 -8
  31. package/contracts/oapps/oft/src/extensions/pausable.rs +19 -4
  32. package/contracts/oapps/oft/src/extensions/rate_limiter.rs +52 -28
  33. package/contracts/oapps/oft/src/lib.rs +10 -14
  34. package/contracts/oapps/oft/src/oft.rs +143 -193
  35. package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +9 -11
  36. package/contracts/oapps/oft/src/oft_types/mint_burn.rs +12 -14
  37. package/contracts/oapps/oft/src/oft_types/mod.rs +13 -0
  38. package/contracts/oapps/{oft-std → oft-core}/Cargo.toml +6 -4
  39. package/contracts/oapps/{oft-std → oft-core}/integration-tests/mod.rs +1 -1
  40. package/contracts/oapps/{oft-std → oft-core}/integration-tests/setup.rs +126 -29
  41. package/contracts/oapps/{oft → oft-core}/integration-tests/test_with_sml.rs +3 -3
  42. package/contracts/oapps/oft-core/integration-tests/utils.rs +201 -0
  43. package/contracts/oapps/oft-core/src/lib.rs +18 -0
  44. package/contracts/oapps/oft-core/src/oft_core.rs +479 -0
  45. package/contracts/oapps/{oft → oft-core}/src/tests/mod.rs +0 -2
  46. package/contracts/oapps/{oft → oft-core}/src/tests/test_lz_receive.rs +7 -7
  47. package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_msg_codec.rs +4 -4
  48. package/contracts/oapps/{oft → oft-core}/src/tests/test_resolve_address.rs +3 -3
  49. package/contracts/oapps/{oft → oft-core}/src/tests/test_utils.rs +46 -27
  50. package/contracts/oapps/{oft → oft-core}/src/utils.rs +1 -1
  51. package/contracts/upgrader/src/lib.rs +30 -57
  52. package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract1.wasm +0 -0
  53. package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract2.wasm +0 -0
  54. package/contracts/upgrader/src/tests/test_upgrader.rs +44 -35
  55. package/contracts/utils/src/buffer_reader.rs +1 -0
  56. package/contracts/utils/src/errors.rs +8 -2
  57. package/contracts/utils/src/ownable.rs +125 -3
  58. package/contracts/utils/src/tests/option_ext.rs +1 -1
  59. package/contracts/utils/src/tests/ownable.rs +445 -7
  60. package/contracts/utils/src/tests/ttl_configurable.rs +2 -2
  61. package/contracts/utils/src/tests/upgradeable.rs +372 -175
  62. package/contracts/utils/src/ttl_configurable.rs +3 -3
  63. package/contracts/utils/src/upgradeable.rs +48 -23
  64. package/contracts/workers/dvn/Cargo.toml +1 -0
  65. package/contracts/workers/dvn/src/auth.rs +12 -42
  66. package/contracts/workers/dvn/src/dvn.rs +16 -31
  67. package/contracts/workers/dvn/src/errors.rs +0 -1
  68. package/contracts/workers/dvn/src/interfaces/dvn.rs +35 -0
  69. package/contracts/workers/dvn/src/lib.rs +4 -3
  70. package/contracts/workers/dvn/src/tests/auth.rs +1 -1
  71. package/contracts/workers/dvn/src/tests/dvn.rs +19 -15
  72. package/contracts/workers/dvn/src/tests/multisig/set_threshold.rs +2 -4
  73. package/contracts/workers/dvn/src/tests/multisig/verify_signatures.rs +1 -3
  74. package/contracts/workers/dvn/src/tests/setup.rs +5 -9
  75. package/contracts/workers/dvn-fee-lib/Cargo.toml +1 -1
  76. package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +3 -5
  77. package/contracts/workers/dvn-fee-lib/src/tests/dvn_fee_lib.rs +2 -3
  78. package/contracts/workers/executor/Cargo.toml +1 -0
  79. package/contracts/workers/executor/src/executor.rs +15 -26
  80. package/contracts/workers/executor-fee-lib/Cargo.toml +2 -1
  81. package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +63 -5
  82. package/contracts/workers/executor-fee-lib/src/executor_option.rs +28 -1
  83. package/contracts/workers/executor-fee-lib/src/lib.rs +3 -0
  84. package/contracts/workers/executor-fee-lib/src/tests/executor_fee_lib.rs +701 -0
  85. package/contracts/workers/executor-fee-lib/src/tests/executor_option.rs +370 -0
  86. package/contracts/workers/executor-fee-lib/src/tests/mod.rs +4 -0
  87. package/contracts/workers/executor-fee-lib/src/tests/setup.rs +60 -0
  88. package/contracts/workers/executor-helper/src/lib.rs +3 -0
  89. package/contracts/workers/executor-helper/src/tests/executor_helper.rs +184 -0
  90. package/contracts/workers/executor-helper/src/tests/mod.rs +2 -0
  91. package/contracts/workers/executor-helper/src/tests/setup.rs +366 -0
  92. package/contracts/workers/fee-lib-interfaces/Cargo.toml +14 -0
  93. package/contracts/workers/{worker/src/interfaces/mod.rs → fee-lib-interfaces/src/lib.rs} +4 -3
  94. package/contracts/workers/price-feed/Cargo.toml +2 -1
  95. package/contracts/workers/price-feed/src/events.rs +1 -1
  96. package/contracts/workers/price-feed/src/lib.rs +3 -0
  97. package/contracts/workers/price-feed/src/price_feed.rs +6 -12
  98. package/contracts/workers/price-feed/src/storage.rs +1 -1
  99. package/contracts/workers/price-feed/src/tests/mod.rs +2 -0
  100. package/contracts/workers/price-feed/src/tests/price_feed.rs +869 -0
  101. package/contracts/workers/price-feed/src/tests/setup.rs +70 -0
  102. package/contracts/workers/price-feed/src/types.rs +1 -1
  103. package/contracts/workers/worker/src/errors.rs +0 -3
  104. package/contracts/workers/worker/src/lib.rs +0 -2
  105. package/contracts/workers/worker/src/storage.rs +32 -29
  106. package/contracts/workers/worker/src/tests/setup.rs +1 -7
  107. package/contracts/workers/worker/src/tests/worker.rs +50 -42
  108. package/contracts/workers/worker/src/worker.rs +49 -58
  109. package/package.json +4 -5
  110. package/sdk/.turbo/turbo-test.log +229 -217
  111. package/sdk/dist/generated/bml.d.ts +39 -1
  112. package/sdk/dist/generated/bml.js +33 -8
  113. package/sdk/dist/generated/counter.d.ts +131 -3
  114. package/sdk/dist/generated/counter.js +41 -10
  115. package/sdk/dist/generated/dvn.d.ts +431 -362
  116. package/sdk/dist/generated/dvn.js +80 -55
  117. package/sdk/dist/generated/dvn_fee_lib.d.ts +327 -251
  118. package/sdk/dist/generated/dvn_fee_lib.js +55 -57
  119. package/sdk/dist/generated/endpoint.d.ts +131 -3
  120. package/sdk/dist/generated/endpoint.js +41 -10
  121. package/sdk/dist/generated/executor.d.ts +503 -339
  122. package/sdk/dist/generated/executor.js +80 -48
  123. package/sdk/dist/generated/executor_fee_lib.d.ts +395 -319
  124. package/sdk/dist/generated/executor_fee_lib.js +54 -56
  125. package/sdk/dist/generated/executor_helper.d.ts +53 -187
  126. package/sdk/dist/generated/executor_helper.js +47 -29
  127. package/sdk/dist/generated/layerzero_view.d.ts +1271 -0
  128. package/sdk/dist/generated/layerzero_view.js +294 -0
  129. package/sdk/dist/generated/oft.d.ts +1851 -0
  130. package/sdk/dist/generated/oft.js +347 -0
  131. package/sdk/dist/generated/price_feed.d.ts +329 -253
  132. package/sdk/dist/generated/price_feed.js +55 -57
  133. package/sdk/dist/generated/sml.d.ts +131 -3
  134. package/sdk/dist/generated/sml.js +41 -10
  135. package/sdk/dist/generated/treasury.d.ts +131 -3
  136. package/sdk/dist/generated/treasury.js +41 -10
  137. package/sdk/dist/generated/uln302.d.ts +131 -3
  138. package/sdk/dist/generated/uln302.js +43 -12
  139. package/sdk/dist/generated/upgrader.d.ts +201 -15
  140. package/sdk/dist/generated/upgrader.js +99 -1
  141. package/sdk/dist/index.d.ts +2 -2
  142. package/sdk/dist/index.js +3 -3
  143. package/sdk/package.json +3 -2
  144. package/sdk/src/index.ts +3 -3
  145. package/sdk/test/oft-sml.test.ts +20 -20
  146. package/sdk/test/upgrader.test.ts +2 -3
  147. package/sdk/turbo.json +8 -0
  148. package/tools/ts-bindings-gen/Cargo.toml +2 -0
  149. package/tools/ts-bindings-gen/src/main.rs +53 -5
  150. package/turbo.json +0 -2
  151. package/contracts/oapps/oft/src/interfaces/mint_burn_token.rs +0 -23
  152. package/contracts/oapps/oft/src/interfaces/mod.rs +0 -3
  153. package/contracts/oapps/oft/src/oft_impl.rs +0 -201
  154. package/contracts/oapps/oft/src/tests/extensions/mod.rs +0 -11
  155. package/contracts/oapps/oft/src/tests/extensions/setup.rs +0 -917
  156. package/contracts/oapps/oft/src/tests/extensions/test_oft_fee.rs +0 -751
  157. package/contracts/oapps/oft/src/tests/extensions/test_pausable.rs +0 -434
  158. package/contracts/oapps/oft/src/tests/extensions/test_rate_limiter.rs +0 -1080
  159. package/contracts/oapps/oft-std/integration-tests/utils.rs +0 -427
  160. package/contracts/oapps/oft-std/src/lib.rs +0 -16
  161. package/contracts/oapps/oft-std/src/oft.rs +0 -174
  162. package/sdk/dist/generated/oft_std.d.ts +0 -1722
  163. package/sdk/dist/generated/oft_std.js +0 -316
  164. package/sdk/dist/wasm/blocked-message-lib.d.ts +0 -1
  165. package/sdk/dist/wasm/blocked-message-lib.js +0 -2
  166. package/sdk/dist/wasm/counter.d.ts +0 -1
  167. package/sdk/dist/wasm/counter.js +0 -2
  168. package/sdk/dist/wasm/dvn-fee-lib.d.ts +0 -1
  169. package/sdk/dist/wasm/dvn-fee-lib.js +0 -2
  170. package/sdk/dist/wasm/dvn.d.ts +0 -1
  171. package/sdk/dist/wasm/dvn.js +0 -2
  172. package/sdk/dist/wasm/endpoint-v2.d.ts +0 -1
  173. package/sdk/dist/wasm/endpoint-v2.js +0 -2
  174. package/sdk/dist/wasm/executor-fee-lib.d.ts +0 -1
  175. package/sdk/dist/wasm/executor-fee-lib.js +0 -2
  176. package/sdk/dist/wasm/executor-helper.d.ts +0 -1
  177. package/sdk/dist/wasm/executor-helper.js +0 -2
  178. package/sdk/dist/wasm/executor.d.ts +0 -1
  179. package/sdk/dist/wasm/executor.js +0 -2
  180. package/sdk/dist/wasm/layerzero-views.d.ts +0 -1
  181. package/sdk/dist/wasm/layerzero-views.js +0 -2
  182. package/sdk/dist/wasm/oft-std.d.ts +0 -1
  183. package/sdk/dist/wasm/oft-std.js +0 -2
  184. package/sdk/dist/wasm/price-feed.d.ts +0 -1
  185. package/sdk/dist/wasm/price-feed.js +0 -2
  186. package/sdk/dist/wasm/simple-message-lib.d.ts +0 -1
  187. package/sdk/dist/wasm/simple-message-lib.js +0 -2
  188. package/sdk/dist/wasm/treasury.d.ts +0 -1
  189. package/sdk/dist/wasm/treasury.js +0 -2
  190. package/sdk/dist/wasm/uln302.d.ts +0 -1
  191. package/sdk/dist/wasm/uln302.js +0 -2
  192. package/sdk/dist/wasm/upgrader.d.ts +0 -1
  193. package/sdk/dist/wasm/upgrader.js +0 -2
  194. package/sdk/dist/wasm.d.ts +0 -15
  195. package/sdk/dist/wasm.js +0 -15
  196. /package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/mod.rs +0 -0
  197. /package/contracts/oapps/{oft → oft-core}/src/codec/mod.rs +0 -0
  198. /package/contracts/oapps/{oft → oft-core}/src/codec/oft_compose_msg_codec.rs +0 -0
  199. /package/contracts/oapps/{oft → oft-core}/src/codec/oft_msg_codec.rs +0 -0
  200. /package/contracts/oapps/{oft → oft-core}/src/errors.rs +0 -0
  201. /package/contracts/oapps/{oft → oft-core}/src/events.rs +0 -0
  202. /package/contracts/oapps/{oft → oft-core}/src/storage.rs +0 -0
  203. /package/contracts/oapps/{oft → oft-core}/src/tests/test_decimals.rs +0 -0
  204. /package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_compose_msg_codec.rs +0 -0
  205. /package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_version.rs +0 -0
  206. /package/contracts/oapps/{oft → oft-core}/src/tests/test_quote_oft.rs +0 -0
  207. /package/contracts/oapps/{oft → oft-core}/src/tests/test_quote_send.rs +0 -0
  208. /package/contracts/oapps/{oft → oft-core}/src/tests/test_send.rs +0 -0
  209. /package/contracts/oapps/{oft → oft-core}/src/tests/test_token.rs +0 -0
  210. /package/contracts/oapps/{oft → oft-core}/src/types.rs +0 -0
  211. /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/dvn_fee_lib.rs +0 -0
  212. /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/executor_fee_lib.rs +0 -0
  213. /package/contracts/workers/{worker/src/interfaces → fee-lib-interfaces/src}/price_feed.rs +0 -0
@@ -4,7 +4,21 @@ import type { u32, u64, i128 } 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;
7
+ /**
8
+ * Embedded WASM bytecode (base64-encoded)
9
+ * Size: 13725 bytes (13.40 KB)
10
+ */
11
+ export declare const WASM_BASE64 = "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AAAAEU1lc3NhZ2VMaWJWZXJzaW9uAAAAAAAAAAAAAEBSZXR1cm5zIFNlbmRBbmRSZWNlaXZlIHRvIGluZGljYXRlIGl0IGNhbiBibG9jayBib3RoIGRpcmVjdGlvbnMuAAAAEG1lc3NhZ2VfbGliX3R5cGUAAAAAAAAAAQAAB9AAAAAOTWVzc2FnZUxpYlR5cGUAAAAAAAAAAAAjQWx3YXlzIHBhbmljcyAtIHF1b3RpbmcgaXMgYmxvY2tlZC4AAAAABXF1b3RlAAAAAAAAAwAAAAAAAAAGcGFja2V0AAAAAAfQAAAADk91dGJvdW5kUGFja2V0AAAAAAAAAAAAB29wdGlvbnMAAAAADgAAAAAAAAAKcGF5X2luX3pybwAAAAAAAQAAAAEAAAfQAAAADE1lc3NhZ2luZ0ZlZQAAAAAAAAAjQWx3YXlzIHBhbmljcyAtIHNlbmRpbmcgaXMgYmxvY2tlZC4AAAAABHNlbmQAAAADAAAAAAAAAAZwYWNrZXQAAAAAB9AAAAAOT3V0Ym91bmRQYWNrZXQAAAAAAAAAAAAHb3B0aW9ucwAAAAAOAAAAAAAAAApwYXlfaW5fenJvAAAAAAABAAAAAQAAB9AAAAANRmVlc0FuZFBhY2tldAAAAAAAAAQAAAAAAAAAAAAAAA1FbmRwb2ludEVycm9yAAAAAAAAGQAAAAAAAAARQWxyZWFkeVJlZ2lzdGVyZWQAAAAAAAABAAAAAAAAAA1Db21wb3NlRXhpc3RzAAAAAAAAAgAAAAAAAAAPQ29tcG9zZU5vdEZvdW5kAAAAAAMAAAAAAAAAHERlZmF1bHRSZWNlaXZlTGliVW5hdmFpbGFibGUAAAAEAAAAAAAAABlEZWZhdWx0U2VuZExpYlVuYXZhaWxhYmxlAAAAAAAABQAAAAAAAAAVSW5zdWZmaWNpZW50TmF0aXZlRmVlAAAAAAAABgAAAAAAAAASSW5zdWZmaWNpZW50WnJvRmVlAAAAAAAHAAAAAAAAABBJbnZhbGlkRmVlQW1vdW50AAAACAAAAAAAAAANSW52YWxpZEV4cGlyeQAAAAAAAAkAAAAAAAAADEludmFsaWRJbmRleAAAAAoAAAAAAAAADEludmFsaWROb25jZQAAAAsAAAAAAAAAEkludmFsaWRQYXlsb2FkSGFzaAAAAAAADAAAAAAAAAAV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AAAAIUVuY29kZWQgZXhlY3V0b3IgYW5kIERWTiBvcHRpb25zLgAAAAAAAAdvcHRpb25zAAAAAA4AAAA5V2hldGhlciB0byBwYXkgZmVlcyBpbiBaUk8gdG9rZW4gaW5zdGVhZCBvZiBuYXRpdmUgdG9rZW4uAAAAAAAACnBheV9pbl96cm8AAAAAAAEAAAA1UmVjZWl2ZXIgYWRkcmVzcyBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAAIcmVjZWl2ZXIAAAPuAAAAIAAAAAEAAABNU291cmNlIG1lc3NhZ2UgaW5mb3JtYXRpb24gaWRlbnRpZnlpbmcgd2hlcmUgYSBjcm9zcy1jaGFpbiBtZXNzYWdlIGNhbWUgZnJvbS4AAAAAAAAAAAAABk9yaWdpbgAAAAAAAwAAABdOb25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAAFbm9uY2UAAAAAAAAGAAAALlNlbmRlciBhZGRyZXNzIG9uIHRoZSBzb3VyY2UgY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAZzZW5kZXIAAAAAA+4AAAAgAAAAJlNvdXJjZSBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAAChGZWUgc3RydWN0dXJlIGZvciBjcm9zcy1jaGFpbiBtZXNzYWdpbmcuAAAAAAAAAAxNZXNzYWdpbmdGZWUAAAACAAAAH0ZlZSBwYWlkIGluIG5hdGl2ZSB0b2tlbiAoWExNKS4AAAAACm5hdGl2ZV9mZWUAAAAAAAsAAAAoRmVlIHBhaWQgaW4gWlJPIHRva2VuIChMYXllclplcm8gdG9rZW4pLgAAAAd6cm9fZmVlAAAAAAsAAAABAAAAQlJlY2VpcHQgcmV0dXJuZWQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHNlbmRpbmcgYSBjcm9zcy1jaGFpbiBtZXNzYWdlLgAAAAAAAAAAABBNZXNzYWdpbmdSZWNlaXB0AAAAAwAAAClUaGUgZmVlcyBjaGFyZ2VkIGZvciBzZW5kaW5nIHRoZSBtZXNzYWdlLgAAAAAAAANmZWUAAAAH0AAAAAxNZXNzYWdpbmdGZWUAAAArR2xvYmFsbHkgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBtZXNzYWdlLgAAAAAEZ3VpZAAAA+4AAAAgAAAAJFRoZSBvdXRib3VuZCBub25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAVub25jZQAAAAAAAAYAAAACAAAAOFR5cGUgb2YgbWVzc2FnZSBsaWJyYXJ5IGluZGljYXRpbmcgc3VwcG9ydGVkIG9wZXJhdGlvbnMuAAAAAAAAAA5NZXNzYWdlTGliVHlwZQAAAAAAAwAAAAAAAAAfU3VwcG9ydHMgb25seSBzZW5kaW5nIG1lc3NhZ2VzLgAAAAAEU2VuZAAAAAAAAAAhU3VwcG9ydHMgb25seSByZWNlaXZpbmcgbWVzc2FnZXMuAAAAAAAAB1JlY2VpdmUAAAAAAAAAAC1TdXBwb3J0cyBib3RoIHNlbmRpbmcgYW5kIHJlY2VpdmluZyBtZXNzYWdlcy4AAAAAAAAOU2VuZEFuZFJlY2VpdmUAAAAAAAEAAAC3VmVyc2lvbiBpbmZvcm1hdGlvbiBmb3IgYSBtZXNzYWdlIGxpYnJhcnkuCgpOb3RlOiBgbWlub3JgIGFuZCBgZW5kcG9pbnRfdmVyc2lvbmAgdXNlIGB1MzJgIGluc3RlYWQgb2YgYHU4YCBiZWNhdXNlIFN0ZWxsYXIgZG9lcyBub3QKc3VwcG9ydCBgdThgIHR5cGVzIGluIGNvbnRyYWN0IGludGVyZmFjZSBmdW5jdGlvbnMuAAAAAAAAAAARTWVzc2FnZUxpYlZlcnNpb24AAAAAAAADAAAAM0VuZHBvaW50IHZlcnNpb24gKHNob3VsZCBub3QgZXhjZWVkIHU4OjpNQVggPSAyNTUpLgAAAAAQZW5kcG9pbnRfdmVyc2lvbgAAAAQAAAAVTWFqb3IgdmVyc2lvbiBudW1iZXIuAAAAAAAABW1ham9yAAAAAAAABgAAADdNaW5vciB2ZXJzaW9uIG51bWJlciAoc2hvdWxkIG5vdCBleGNlZWQgdTg6Ok1BWCA9IDI1NSkuAAAAAAVtaW5vcgAAAAAAAAQAAAABAAAANlRpbWVvdXQgY29uZmlndXJhdGlvbiBmb3IgcmVjZWl2ZSBsaWJyYXJ5IHRyYW5zaXRpb25zLgAAAAAAAAAAAAdUaW1lb3V0AAAAAAIAAAAoVW5peCB0aW1lc3RhbXAgd2hlbiB0aGUgdGltZW91dCBleHBpcmVzLgAAAAZleHBpcnkAAAAAAAYAAAApVGhlIG5ldyBsaWJyYXJ5IGFkZHJlc3MgdG8gdHJhbnNpdGlvbiB0by4AAAAAAAADbGliAAAAABMAAAABAAAANVBhcmFtZXRlcnMgZm9yIHNldHRpbmcgbWVzc2FnZSBsaWJyYXJ5IGNvbmZpZ3VyYXRpb24uAAAAAAAAAAAAAA5TZXRDb25maWdQYXJhbQAAAAAAAwAAAB9YRFItZW5jb2RlZCBjb25maWd1cmF0aW9uIGRhdGEuAAAAAAZjb25maWcAAAAAAA4AAAAwVGhlIHR5cGUgb2YgY29uZmlndXJhdGlvbiAoZS5nLiwgZXhlY3V0b3IsIFVMTikuAAAAC2NvbmZpZ190eXBlAAAAAAQAAAAnVGhlIGVuZHBvaW50IElEIHRoaXMgY29uZmlnIGFwcGxpZXMgdG8uAAAAAANlaWQAAAAABAAAAAEAAAAxUmVzb2x2ZWQgbGlicmFyeSBpbmZvcm1hdGlvbiB3aXRoIGRlZmF1bHQgc3RhdHVzLgAAAAAAAAAAAAAPUmVzb2x2ZWRMaWJyYXJ5AAAAAAIAAABEV2hldGhlciB0aGlzIGlzIHRoZSBkZWZhdWx0IGxpYnJhcnkgKHRydWUpIG9yIE9BcHAtc3BlY2lmaWMgKGZhbHNlKS4AAAAKaXNfZGVmYXVsdAAAAAAAAQAAAB1UaGUgcmVzb2x2ZWQgbGlicmFyeSBhZGRyZXNzLgAAAAAAAANsaWIAAAAAEwAAAAEAAABIT3V0Ym91bmQgcGFja2V0IGNvbnRhaW5pbmcgYWxsIGluZm9ybWF0aW9uIGZvciBjcm9zcy1jaGFpbiB0cmFuc21pc3Npb24uAAAAAAAAAA5PdXRib3VuZFBhY2tldAAAAAAABwAAABhEZXN0aW5hdGlvbiBlbmRwb2ludCBJRC4AAAAHZHN0X2VpZAAAAAAEAAAALEdsb2JhbGx5IHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIG1lc3NhZ2UuAAAABGd1aWQAAAPuAAAAIAAAABRUaGUgbWVzc2FnZSBwYXlsb2FkLgAAAAdtZXNzYWdlAAAAAA4AAAAgT3V0Ym91bmQgbm9uY2UgZm9yIHRoaXMgcGF0aHdheS4AAAAFbm9uY2UAAAAAAAAGAAAAMVJlY2VpdmVyIGFkZHJlc3Mgb24gZGVzdGluYXRpb24gY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAAIcmVjZWl2ZXIAAAPuAAAAIAAAAB9TZW5kZXIgYWRkcmVzcyBvbiBzb3VyY2UgY2hhaW4uAAAAAAZzZW5kZXIAAAAAABMAAAATU291cmNlIGVuZHBvaW50IElELgAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAACtBIGZlZSByZWNpcGllbnQgd2l0aCB0aGUgYW1vdW50IHRvIGJlIHBhaWQuAAAAAAAAAAAMRmVlUmVjaXBpZW50AAAAAgAAABVBbW91bnQgb2YgZmVlIHRvIHBheS4AAAAAAAAGYW1vdW50AAAAAAALAAAAH1RoZSBhZGRyZXNzIHRvIHNlbmQgdGhlIGZlZSB0by4AAAAAAnRvAAAAAAATAAAAAQAAADxSZXN1bHQgb2Ygc2VuZCBvcGVyYXRpb24gY29udGFpbmluZyBmZWVzIGFuZCBlbmNvZGVkIHBhY2tldC4AAAAAAAAADUZlZXNBbmRQYWNrZXQAAAAAAAADAAAAKlRoZSBlbmNvZGVkIHBhY2tldCByZWFkeSBmb3IgdHJhbnNtaXNzaW9uLgAAAAAADmVuY29kZWRfcGFja2V0AAAAAAAOAAAAP0xpc3Qgb2YgbmF0aXZlIHRva2VuIGZlZSByZWNpcGllbnRzIChleGVjdXRvciwgRFZOcywgdHJlYXN1cnkpLgAAAAAVbmF0aXZlX2ZlZV9yZWNpcGllbnRzAAAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAALExpc3Qgb2YgWlJPIHRva2VuIGZlZSByZWNpcGllbnRzICh0cmVhc3VyeSkuAAAAEnpyb19mZWVfcmVjaXBpZW50cwAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAABAAAABxCdWZmZXJSZWFkZXJFcnJvcjogMTAwMC0xMDA5AAAAAAAAABFCdWZmZXJSZWFkZXJFcnJvcgAAAAAAAAIAAAAAAAAADUludmFsaWRMZW5ndGgAAAAAAAPoAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPpAAAABAAAABxCdWZmZXJXcml0ZXJFcnJvcjogMTAxMC0xMDE5AAAAAAAAABFCdWZmZXJXcml0ZXJFcnJvcgAAAAAAAAEAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA/IAAAAEAAAAH1R0bENvbmZpZ3VyYWJsZUVycm9yOiAxMDIwLTEwMjkAAAAAAAAAABRUdGxDb25maWd1cmFibGVFcnJvcgAAAAMAAAAAAAAAEEludmFsaWRUdGxDb25maWcAAAP8AAAAAAAAAA9UdGxDb25maWdGcm96ZW4AAAAD/QAAAAAAAAAWVHRsQ29uZmlnQWxyZWFkeUZyb3plbgAAAAAD/gAAAAQAAAAXT3duYWJsZUVycm9yOiAxMDMwLTEwMzkAAAAAAAAAAAxPd25hYmxlRXJyb3IAAAAGAAAAAAAAABNJbnZhbGlkUGVuZGluZ093bmVyAAAABAYAAAAAAAAACkludmFsaWRUdGwAAAAABAcAAAAAAAAAEU5vUGVuZGluZ1RyYW5zZmVyAAAAAAAECAAAAAAAAAAPT3duZXJBbHJlYWR5U2V0AAAABAkAAAAAAAAAC093bmVyTm90U2V0AAAABAoAAAAAAAAAElRyYW5zZmVySW5Qcm9ncmVzcwAAAAAECwAAAAQAAAAYQnl0ZXNFeHRFcnJvcjogMTA0MC0xMDQ5AAAAAAAAAA1CeXRlc0V4dEVycm9yAAAAAAAAAQAAAAAAAAAOTGVuZ3RoTWlzbWF0Y2gAAAAABBAAAAAEAAAAG1VwZ3JhZGVhYmxlRXJyb3I6IDEwNTAtMTA1OQAAAAAAAAAAEFVwZ3JhZGVhYmxlRXJyb3IAAAADAAAAAAAAABRJbnZhbGlkTWlncmF0aW9uRGF0YQAABBoAAAAAAAAAE01pZ3JhdGlvbk5vdEFsbG93ZWQAAAAEGwAAAAAAAAAOVXBncmFkZXNGcm96ZW4AAAAABBwAAAAEAAAAGE11bHRpc2lnRXJyb3I6IDEwNjAtMTA2OQAAAAAAAAANTXVsdGlzaWdFcnJvcgAAAAAAAAgAAAAAAAAAEkFscmVhZHlJbml0aWFsaXplZAAAAAAEJAAAAAAAAAANSW52YWxpZFNpZ25lcgAAAAAABCUAAAAAAAAADlNpZ25hdHVyZUVycm9yAAAAAAQmAAAAAAAAABNTaWduZXJBbHJlYWR5RXhpc3RzAAAABCcAAAAAAAAADlNpZ25lck5vdEZvdW5kAAAAAAQoAAAAAAAAAB1Ub3RhbFNpZ25lcnNMZXNzVGhhblRocmVzaG9sZAAAAAAABCkAAAAAAAAAD1Vuc29ydGVkU2lnbmVycwAAAAQqAAAAAAAAAA1aZXJvVGhyZXNob2xkAAAAAAAEKwAAAAUAAAAwRXZlbnQgZW1pdHRlZCB3aGVuIGEgc2lnbmVyIGlzIGFkZGVkIG9yIHJlbW92ZWQuAAAAAAAAAAlTaWduZXJTZXQAAAAAAAABAAAACnNpZ25lcl9zZXQAAAAAAAIAAAAAAAAABnNpZ25lcgAAAAAD7gAAABQAAAABAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAgAAAAUAAAA2RXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkIGlzIGNoYW5nZWQuAAAAAAAAAAAADFRocmVzaG9sZFNldAAAAAEAAAANdGhyZXNob2xkX3NldAAAAAAAAAEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA9NdWx0aXNpZ1N0b3JhZ2UAAAAAAgAAAAAAAAAAAAAAB1NpZ25lcnMAAAAAAAAAAAAAAAAJVGhyZXNob2xkAAAAAAAABQAAAFdFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkIChib3RoIHNpbmdsZS1zdGVwIGFuZCB0d28tc3RlcCBjb21wbGV0aW9uKS4AAAAAAAAAABRPd25lcnNoaXBUcmFuc2ZlcnJlZAAAAAEAAAAVb3duZXJzaGlwX3RyYW5zZmVycmVkAAAAAAAAAgAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAgAAAAUAAAA7RXZlbnQgZW1pdHRlZCB3aGVuIGEgMi1zdGVwIG93bmVyc2hpcCB0cmFuc2ZlciBpcyBwcm9wb3NlZC4AAAAAAAAAABVPd25lcnNoaXBUcmFuc2ZlcnJpbmcAAAAAAAABAAAAFm93bmVyc2hpcF90cmFuc2ZlcnJpbmcAAAAAAAMAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAAAAAADdHRsAAAAAAQAAAAAAAAAAgAAAAUAAAAqRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyByZW5vdW5jZWQuAAAAAAAAAAAAEk93bmVyc2hpcFJlbm91bmNlZAAAAAAAAQAAABNvd25lcnNoaXBfcmVub3VuY2VkAAAAAAEAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA5Pd25hYmxlU3RvcmFnZQAAAAAAAgAAAAAAAAAAAAAABU93bmVyAAAAAAAAAAAAAAAAAAAMUGVuZGluZ093bmVyAAAAAQAAAElUVEwgY29uZmlndXJhdGlvbjogdGhyZXNob2xkICh3aGVuIHRvIGV4dGVuZCkgYW5kIGV4dGVuZF90byAodGFyZ2V0IFRUTCkuAAAAAAAAAAAAAAlUdGxDb25maWcAAAAAAAACAAAAKFRhcmdldCBUVEwgYWZ0ZXIgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAJZXh0ZW5kX3RvAAAAAAAABAAAADNUVEwgdGhyZXNob2xkIHRoYXQgdHJpZ2dlcnMgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAACXRocmVzaG9sZAAAAAAAAAQAAAAFAAAAJ0V2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgc2V0LgAAAAAAAAAADVR0bENvbmZpZ3NTZXQAAAAAAAABAAAAD3R0bF9jb25maWdzX3NldAAAAAACAAAAAAAAAAhpbnN0YW5jZQAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAACnBlcnNpc3RlbnQAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAACAAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAAAAAAAAQVHRsQ29uZmlnc0Zyb3plbgAAAAEAAAASdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABBUdGxDb25maWdTdG9yYWdlAAAAAwAAAAAAAAAAAAAABkZyb3plbgAAAAAAAAAAAAAAAAAISW5zdGFuY2UAAAAAAAAAAAAAAApQZXJzaXN0ZW50AAAAAAACAAAAAAAAAAAAAAASVXBncmFkZWFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAlNaWdyYXRpbmcAAAAAHhFjb250cmFjdGVudm1ldGF2MAAAAAAAAAAXAAAAAABvDmNvbnRyYWN0bWV0YXYwAAAAAAAAAAVyc3ZlcgAAAAAAAAYxLjkwLjAAAAAAAAAAAAAIcnNzZGt2ZXIAAAAvMjMuNC4wIzY3M2Q2YzRmMjM2OGQyODJkMjVkYTI5YmRhNTVjMjFiOGJlNjljYTYA";
12
+ /**
13
+ * Pre-computed WASM hash (SHA-256)
14
+ * Use this when the WASM is already uploaded on-chain
15
+ */
16
+ export declare const WASM_HASH = "e70d55ab544100e9bff3ee387703a0d2abf0b916048ebd23295114bb50d7b602";
17
+ /**
18
+ * Get the WASM bytecode as a Buffer
19
+ * Use this to upload the WASM to the network
20
+ */
21
+ export declare function getWasmBuffer(): Buffer;
8
22
  export declare const EndpointError: {
9
23
  1: {
10
24
  message: string;
@@ -336,6 +350,18 @@ export declare const OwnableError: {
336
350
  1031: {
337
351
  message: string;
338
352
  };
353
+ 1032: {
354
+ message: string;
355
+ };
356
+ 1033: {
357
+ message: string;
358
+ };
359
+ 1034: {
360
+ message: string;
361
+ };
362
+ 1035: {
363
+ message: string;
364
+ };
339
365
  };
340
366
  /**
341
367
  * BytesExtError: 1040-1049
@@ -352,6 +378,12 @@ export declare const UpgradeableError: {
352
378
  1050: {
353
379
  message: string;
354
380
  };
381
+ 1051: {
382
+ message: string;
383
+ };
384
+ 1052: {
385
+ message: string;
386
+ };
355
387
  };
356
388
  /**
357
389
  * MultisigError: 1060-1069
@@ -392,6 +424,9 @@ export type MultisigStorage = {
392
424
  export type OwnableStorage = {
393
425
  tag: "Owner";
394
426
  values: void;
427
+ } | {
428
+ tag: "PendingOwner";
429
+ values: void;
395
430
  };
396
431
  /**
397
432
  * TTL configuration: threshold (when to extend) and extend_to (target TTL).
@@ -417,6 +452,9 @@ export type TtlConfigStorage = {
417
452
  values: void;
418
453
  };
419
454
  export type UpgradeableStorage = {
455
+ tag: "Frozen";
456
+ values: void;
457
+ } | {
420
458
  tag: "Migrating";
421
459
  values: void;
422
460
  };
@@ -1,7 +1,25 @@
1
+ import { Buffer } from "buffer";
1
2
  import { Client as ContractClient, Spec as ContractSpec, } from '@stellar/stellar-sdk/contract';
2
3
  export * from '@stellar/stellar-sdk';
3
4
  export * as contract from '@stellar/stellar-sdk/contract';
4
5
  export * as rpc from '@stellar/stellar-sdk/rpc';
6
+ /**
7
+ * Embedded WASM bytecode (base64-encoded)
8
+ * Size: 13725 bytes (13.40 KB)
9
+ */
10
+ export const WASM_BASE64 = "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AAAAEU1lc3NhZ2VMaWJWZXJzaW9uAAAAAAAAAAAAAEBSZXR1cm5zIFNlbmRBbmRSZWNlaXZlIHRvIGluZGljYXRlIGl0IGNhbiBibG9jayBib3RoIGRpcmVjdGlvbnMuAAAAEG1lc3NhZ2VfbGliX3R5cGUAAAAAAAAAAQAAB9AAAAAOTWVzc2FnZUxpYlR5cGUAAAAAAAAAAAAjQWx3YXlzIHBhbmljcyAtIHF1b3RpbmcgaXMgYmxvY2tlZC4AAAAABXF1b3RlAAAAAAAAAwAAAAAAAAAGcGFja2V0AAAAAAfQAAAADk91dGJvdW5kUGFja2V0AAAAAAAAAAAAB29wdGlvbnMAAAAADgAAAAAAAAAKcGF5X2luX3pybwAAAAAAAQAAAAEAAAfQAAAADE1lc3NhZ2luZ0ZlZQAAAAAAAAAjQWx3YXlzIHBhbmljcyAtIHNlbmRpbmcgaXMgYmxvY2tlZC4AAAAABHNlbmQAAAADAAAAAAAAAAZwYWNrZXQAAAAAB9AAAAAOT3V0Ym91bmRQYWNrZXQAAAAAAAAAAAAHb3B0aW9ucwAAAAAOAAAAAAAAAApwYXlfaW5fenJvAAAAAAABAAAAAQAAB9AAAAANRmVlc0FuZFBhY2tldAAAAAAAAAQAAAAAAAAAAAAAAA1FbmRwb2ludEVycm9yAAAAAAAAGQAAAAAAAAARQWxyZWFkeVJlZ2lzdGVyZWQAAAAAAAABAAAAAAAAAA1Db21wb3NlRXhpc3RzAAAAAAAAAgAAAAAAAAAPQ29tcG9zZU5vdEZvdW5kAAAAAAMAAAAAAAAAHERlZmF1bHRSZWNlaXZlTGliVW5hdmFpbGFibGUAAAAEAAAAAAAAABlEZWZhdWx0U2VuZExpYlVuYXZhaWxhYmxlAAAAAAAABQAAAAAAAAAVSW5zdWZmaWNpZW50TmF0aXZlRmVlAAAAAAAABgAAAAAAAAASSW5zdWZmaWNpZW50WnJvRmVlAAAAAAAHAAAAAAAAABBJbnZhbGlkRmVlQW1vdW50AAAACAAAAAAAAAANSW52YWxpZEV4cGlyeQAAAAAAAAkAAAAAAAAADEludmFsaWRJbmRleAAAAAoAAAAAAAAADEludmFsaWROb25jZQAAAAsAAAAAAAAAEkludmFsaWRQYXlsb2FkSGFzaAAAAAAADAAAAAAAAAAV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AAAAIUVuY29kZWQgZXhlY3V0b3IgYW5kIERWTiBvcHRpb25zLgAAAAAAAAdvcHRpb25zAAAAAA4AAAA5V2hldGhlciB0byBwYXkgZmVlcyBpbiBaUk8gdG9rZW4gaW5zdGVhZCBvZiBuYXRpdmUgdG9rZW4uAAAAAAAACnBheV9pbl96cm8AAAAAAAEAAAA1UmVjZWl2ZXIgYWRkcmVzcyBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAAIcmVjZWl2ZXIAAAPuAAAAIAAAAAEAAABNU291cmNlIG1lc3NhZ2UgaW5mb3JtYXRpb24gaWRlbnRpZnlpbmcgd2hlcmUgYSBjcm9zcy1jaGFpbiBtZXNzYWdlIGNhbWUgZnJvbS4AAAAAAAAAAAAABk9yaWdpbgAAAAAAAwAAABdOb25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAAFbm9uY2UAAAAAAAAGAAAALlNlbmRlciBhZGRyZXNzIG9uIHRoZSBzb3VyY2UgY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAZzZW5kZXIAAAAAA+4AAAAgAAAAJlNvdXJjZSBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAAChGZWUgc3RydWN0dXJlIGZvciBjcm9zcy1jaGFpbiBtZXNzYWdpbmcuAAAAAAAAAAxNZXNzYWdpbmdGZWUAAAACAAAAH0ZlZSBwYWlkIGluIG5hdGl2ZSB0b2tlbiAoWExNKS4AAAAACm5hdGl2ZV9mZWUAAAAAAAsAAAAoRmVlIHBhaWQgaW4gWlJPIHRva2VuIChMYXllclplcm8gdG9rZW4pLgAAAAd6cm9fZmVlAAAAAAsAAAABAAAAQlJlY2VpcHQgcmV0dXJuZWQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHNlbmRpbmcgYSBjcm9zcy1jaGFpbiBtZXNzYWdlLgAAAAAAAAAAABBNZXNzYWdpbmdSZWNlaXB0AAAAAwAAAClUaGUgZmVlcyBjaGFyZ2VkIGZvciBzZW5kaW5nIHRoZSBtZXNzYWdlLgAAAAAAAANmZWUAAAAH0AAAAAxNZXNzYWdpbmdGZWUAAAArR2xvYmFsbHkgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBtZXNzYWdlLgAAAAAEZ3VpZAAAA+4AAAAgAAAAJFRoZSBvdXRib3VuZCBub25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAVub25jZQAAAAAAAAYAAAACAAAAOFR5cGUgb2YgbWVzc2FnZSBsaWJyYXJ5IGluZGljYXRpbmcgc3VwcG9ydGVkIG9wZXJhdGlvbnMuAAAAAAAAAA5NZXNzYWdlTGliVHlwZQAAAAAAAwAAAAAAAAAfU3VwcG9ydHMgb25seSBzZW5kaW5nIG1lc3NhZ2VzLgAAAAAEU2VuZAAAAAAAAAAhU3VwcG9ydHMgb25seSByZWNlaXZpbmcgbWVzc2FnZXMuAAAAAAAAB1JlY2VpdmUAAAAAAAAAAC1TdXBwb3J0cyBib3RoIHNlbmRpbmcgYW5kIHJlY2VpdmluZyBtZXNzYWdlcy4AAAAAAAAOU2VuZEFuZFJlY2VpdmUAAAAAAAEAAAC3VmVyc2lvbiBpbmZvcm1hdGlvbiBmb3IgYSBtZXNzYWdlIGxpYnJhcnkuCgpOb3RlOiBgbWlub3JgIGFuZCBgZW5kcG9pbnRfdmVyc2lvbmAgdXNlIGB1MzJgIGluc3RlYWQgb2YgYHU4YCBiZWNhdXNlIFN0ZWxsYXIgZG9lcyBub3QKc3VwcG9ydCBgdThgIHR5cGVzIGluIGNvbnRyYWN0IGludGVyZmFjZSBmdW5jdGlvbnMuAAAAAAAAAAARTWVzc2FnZUxpYlZlcnNpb24AAAAAAAADAAAAM0VuZHBvaW50IHZlcnNpb24gKHNob3VsZCBub3QgZXhjZWVkIHU4OjpNQVggPSAyNTUpLgAAAAAQZW5kcG9pbnRfdmVyc2lvbgAAAAQAAAAVTWFqb3IgdmVyc2lvbiBudW1iZXIuAAAAAAAABW1ham9yAAAAAAAABgAAADdNaW5vciB2ZXJzaW9uIG51bWJlciAoc2hvdWxkIG5vdCBleGNlZWQgdTg6Ok1BWCA9IDI1NSkuAAAAAAVtaW5vcgAAAAAAAAQAAAABAAAANlRpbWVvdXQgY29uZmlndXJhdGlvbiBmb3IgcmVjZWl2ZSBsaWJyYXJ5IHRyYW5zaXRpb25zLgAAAAAAAAAAAAdUaW1lb3V0AAAAAAIAAAAoVW5peCB0aW1lc3RhbXAgd2hlbiB0aGUgdGltZW91dCBleHBpcmVzLgAAAAZleHBpcnkAAAAAAAYAAAApVGhlIG5ldyBsaWJyYXJ5IGFkZHJlc3MgdG8gdHJhbnNpdGlvbiB0by4AAAAAAAADbGliAAAAABMAAAABAAAANVBhcmFtZXRlcnMgZm9yIHNldHRpbmcgbWVzc2FnZSBsaWJyYXJ5IGNvbmZpZ3VyYXRpb24uAAAAAAAAAAAAAA5TZXRDb25maWdQYXJhbQAAAAAAAwAAAB9YRFItZW5jb2RlZCBjb25maWd1cmF0aW9uIGRhdGEuAAAAAAZjb25maWcAAAAAAA4AAAAwVGhlIHR5cGUgb2YgY29uZmlndXJhdGlvbiAoZS5nLiwgZXhlY3V0b3IsIFVMTikuAAAAC2NvbmZpZ190eXBlAAAAAAQAAAAnVGhlIGVuZHBvaW50IElEIHRoaXMgY29uZmlnIGFwcGxpZXMgdG8uAAAAAANlaWQAAAAABAAAAAEAAAAxUmVzb2x2ZWQgbGlicmFyeSBpbmZvcm1hdGlvbiB3aXRoIGRlZmF1bHQgc3RhdHVzLgAAAAAAAAAAAAAPUmVzb2x2ZWRMaWJyYXJ5AAAAAAIAAABEV2hldGhlciB0aGlzIGlzIHRoZSBkZWZhdWx0IGxpYnJhcnkgKHRydWUpIG9yIE9BcHAtc3BlY2lmaWMgKGZhbHNlKS4AAAAKaXNfZGVmYXVsdAAAAAAAAQAAAB1UaGUgcmVzb2x2ZWQgbGlicmFyeSBhZGRyZXNzLgAAAAAAAANsaWIAAAAAEwAAAAEAAABIT3V0Ym91bmQgcGFja2V0IGNvbnRhaW5pbmcgYWxsIGluZm9ybWF0aW9uIGZvciBjcm9zcy1jaGFpbiB0cmFuc21pc3Npb24uAAAAAAAAAA5PdXRib3VuZFBhY2tldAAAAAAABwAAABhEZXN0aW5hdGlvbiBlbmRwb2ludCBJRC4AAAAHZHN0X2VpZAAAAAAEAAAALEdsb2JhbGx5IHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIG1lc3NhZ2UuAAAABGd1aWQAAAPuAAAAIAAAABRUaGUgbWVzc2FnZSBwYXlsb2FkLgAAAAdtZXNzYWdlAAAAAA4AAAAgT3V0Ym91bmQgbm9uY2UgZm9yIHRoaXMgcGF0aHdheS4AAAAFbm9uY2UAAAAAAAAGAAAAMVJlY2VpdmVyIGFkZHJlc3Mgb24gZGVzdGluYXRpb24gY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAAIcmVjZWl2ZXIAAAPuAAAAIAAAAB9TZW5kZXIgYWRkcmVzcyBvbiBzb3VyY2UgY2hhaW4uAAAAAAZzZW5kZXIAAAAAABMAAAATU291cmNlIGVuZHBvaW50IElELgAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAACtBIGZlZSByZWNpcGllbnQgd2l0aCB0aGUgYW1vdW50IHRvIGJlIHBhaWQuAAAAAAAAAAAMRmVlUmVjaXBpZW50AAAAAgAAABVBbW91bnQgb2YgZmVlIHRvIHBheS4AAAAAAAAGYW1vdW50AAAAAAALAAAAH1RoZSBhZGRyZXNzIHRvIHNlbmQgdGhlIGZlZSB0by4AAAAAAnRvAAAAAAATAAAAAQAAADxSZXN1bHQgb2Ygc2VuZCBvcGVyYXRpb24gY29udGFpbmluZyBmZWVzIGFuZCBlbmNvZGVkIHBhY2tldC4AAAAAAAAADUZlZXNBbmRQYWNrZXQAAAAAAAADAAAAKlRoZSBlbmNvZGVkIHBhY2tldCByZWFkeSBmb3IgdHJhbnNtaXNzaW9uLgAAAAAADmVuY29kZWRfcGFja2V0AAAAAAAOAAAAP0xpc3Qgb2YgbmF0aXZlIHRva2VuIGZlZSByZWNpcGllbnRzIChleGVjdXRvciwgRFZOcywgdHJlYXN1cnkpLgAAAAAVbmF0aXZlX2ZlZV9yZWNpcGllbnRzAAAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAALExpc3Qgb2YgWlJPIHRva2VuIGZlZSByZWNpcGllbnRzICh0cmVhc3VyeSkuAAAAEnpyb19mZWVfcmVjaXBpZW50cwAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAABAAAABxCdWZmZXJSZWFkZXJFcnJvcjogMTAwMC0xMDA5AAAAAAAAABFCdWZmZXJSZWFkZXJFcnJvcgAAAAAAAAIAAAAAAAAADUludmFsaWRMZW5ndGgAAAAAAAPoAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPpAAAABAAAABxCdWZmZXJXcml0ZXJFcnJvcjogMTAxMC0xMDE5AAAAAAAAABFCdWZmZXJXcml0ZXJFcnJvcgAAAAAAAAEAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA/IAAAAEAAAAH1R0bENvbmZpZ3VyYWJsZUVycm9yOiAxMDIwLTEwMjkAAAAAAAAAABRUdGxDb25maWd1cmFibGVFcnJvcgAAAAMAAAAAAAAAEEludmFsaWRUdGxDb25maWcAAAP8AAAAAAAAAA9UdGxDb25maWdGcm96ZW4AAAAD/QAAAAAAAAAWVHRsQ29uZmlnQWxyZWFkeUZyb3plbgAAAAAD/gAAAAQAAAAXT3duYWJsZUVycm9yOiAxMDMwLTEwMzkAAAAAAAAAAAxPd25hYmxlRXJyb3IAAAAGAAAAAAAAABNJbnZhbGlkUGVuZGluZ093bmVyAAAABAYAAAAAAAAACkludmFsaWRUdGwAAAAABAcAAAAAAAAAEU5vUGVuZGluZ1RyYW5zZmVyAAAAAAAECAAAAAAAAAAPT3duZXJBbHJlYWR5U2V0AAAABAkAAAAAAAAAC093bmVyTm90U2V0AAAABAoAAAAAAAAAElRyYW5zZmVySW5Qcm9ncmVzcwAAAAAECwAAAAQAAAAYQnl0ZXNFeHRFcnJvcjogMTA0MC0xMDQ5AAAAAAAAAA1CeXRlc0V4dEVycm9yAAAAAAAAAQAAAAAAAAAOTGVuZ3RoTWlzbWF0Y2gAAAAABBAAAAAEAAAAG1VwZ3JhZGVhYmxlRXJyb3I6IDEwNTAtMTA1OQAAAAAAAAAAEFVwZ3JhZGVhYmxlRXJyb3IAAAADAAAAAAAAABRJbnZhbGlkTWlncmF0aW9uRGF0YQAABBoAAAAAAAAAE01pZ3JhdGlvbk5vdEFsbG93ZWQAAAAEGwAAAAAAAAAOVXBncmFkZXNGcm96ZW4AAAAABBwAAAAEAAAAGE11bHRpc2lnRXJyb3I6IDEwNjAtMTA2OQAAAAAAAAANTXVsdGlzaWdFcnJvcgAAAAAAAAgAAAAAAAAAEkFscmVhZHlJbml0aWFsaXplZAAAAAAEJAAAAAAAAAANSW52YWxpZFNpZ25lcgAAAAAABCUAAAAAAAAADlNpZ25hdHVyZUVycm9yAAAAAAQmAAAAAAAAABNTaWduZXJBbHJlYWR5RXhpc3RzAAAABCcAAAAAAAAADlNpZ25lck5vdEZvdW5kAAAAAAQoAAAAAAAAAB1Ub3RhbFNpZ25lcnNMZXNzVGhhblRocmVzaG9sZAAAAAAABCkAAAAAAAAAD1Vuc29ydGVkU2lnbmVycwAAAAQqAAAAAAAAAA1aZXJvVGhyZXNob2xkAAAAAAAEKwAAAAUAAAAwRXZlbnQgZW1pdHRlZCB3aGVuIGEgc2lnbmVyIGlzIGFkZGVkIG9yIHJlbW92ZWQuAAAAAAAAAAlTaWduZXJTZXQAAAAAAAABAAAACnNpZ25lcl9zZXQAAAAAAAIAAAAAAAAABnNpZ25lcgAAAAAD7gAAABQAAAABAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAgAAAAUAAAA2RXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkIGlzIGNoYW5nZWQuAAAAAAAAAAAADFRocmVzaG9sZFNldAAAAAEAAAANdGhyZXNob2xkX3NldAAAAAAAAAEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA9NdWx0aXNpZ1N0b3JhZ2UAAAAAAgAAAAAAAAAAAAAAB1NpZ25lcnMAAAAAAAAAAAAAAAAJVGhyZXNob2xkAAAAAAAABQAAAFdFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkIChib3RoIHNpbmdsZS1zdGVwIGFuZCB0d28tc3RlcCBjb21wbGV0aW9uKS4AAAAAAAAAABRPd25lcnNoaXBUcmFuc2ZlcnJlZAAAAAEAAAAVb3duZXJzaGlwX3RyYW5zZmVycmVkAAAAAAAAAgAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAgAAAAUAAAA7RXZlbnQgZW1pdHRlZCB3aGVuIGEgMi1zdGVwIG93bmVyc2hpcCB0cmFuc2ZlciBpcyBwcm9wb3NlZC4AAAAAAAAAABVPd25lcnNoaXBUcmFuc2ZlcnJpbmcAAAAAAAABAAAAFm93bmVyc2hpcF90cmFuc2ZlcnJpbmcAAAAAAAMAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAAAAAADdHRsAAAAAAQAAAAAAAAAAgAAAAUAAAAqRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyByZW5vdW5jZWQuAAAAAAAAAAAAEk93bmVyc2hpcFJlbm91bmNlZAAAAAAAAQAAABNvd25lcnNoaXBfcmVub3VuY2VkAAAAAAEAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA5Pd25hYmxlU3RvcmFnZQAAAAAAAgAAAAAAAAAAAAAABU93bmVyAAAAAAAAAAAAAAAAAAAMUGVuZGluZ093bmVyAAAAAQAAAElUVEwgY29uZmlndXJhdGlvbjogdGhyZXNob2xkICh3aGVuIHRvIGV4dGVuZCkgYW5kIGV4dGVuZF90byAodGFyZ2V0IFRUTCkuAAAAAAAAAAAAAAlUdGxDb25maWcAAAAAAAACAAAAKFRhcmdldCBUVEwgYWZ0ZXIgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAJZXh0ZW5kX3RvAAAAAAAABAAAADNUVEwgdGhyZXNob2xkIHRoYXQgdHJpZ2dlcnMgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAACXRocmVzaG9sZAAAAAAAAAQAAAAFAAAAJ0V2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgc2V0LgAAAAAAAAAADVR0bENvbmZpZ3NTZXQAAAAAAAABAAAAD3R0bF9jb25maWdzX3NldAAAAAACAAAAAAAAAAhpbnN0YW5jZQAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAACnBlcnNpc3RlbnQAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAACAAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAAAAAAAAQVHRsQ29uZmlnc0Zyb3plbgAAAAEAAAASdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABBUdGxDb25maWdTdG9yYWdlAAAAAwAAAAAAAAAAAAAABkZyb3plbgAAAAAAAAAAAAAAAAAISW5zdGFuY2UAAAAAAAAAAAAAAApQZXJzaXN0ZW50AAAAAAACAAAAAAAAAAAAAAASVXBncmFkZWFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAlNaWdyYXRpbmcAAAAAHhFjb250cmFjdGVudm1ldGF2MAAAAAAAAAAXAAAAAABvDmNvbnRyYWN0bWV0YXYwAAAAAAAAAAVyc3ZlcgAAAAAAAAYxLjkwLjAAAAAAAAAAAAAIcnNzZGt2ZXIAAAAvMjMuNC4wIzY3M2Q2YzRmMjM2OGQyODJkMjVkYTI5YmRhNTVjMjFiOGJlNjljYTYA";
11
+ /**
12
+ * Pre-computed WASM hash (SHA-256)
13
+ * Use this when the WASM is already uploaded on-chain
14
+ */
15
+ export const WASM_HASH = "e70d55ab544100e9bff3ee387703a0d2abf0b916048ebd23295114bb50d7b602";
16
+ /**
17
+ * Get the WASM bytecode as a Buffer
18
+ * Use this to upload the WASM to the network
19
+ */
20
+ export function getWasmBuffer() {
21
+ return Buffer.from(WASM_BASE64, 'base64');
22
+ }
5
23
  export const EndpointError = {
6
24
  1: { message: "AlreadyRegistered" },
7
25
  2: { message: "ComposeExists" },
@@ -54,8 +72,12 @@ export const TtlConfigurableError = {
54
72
  * OwnableError: 1030-1039
55
73
  */
56
74
  export const OwnableError = {
57
- 1030: { message: "OwnerAlreadySet" },
58
- 1031: { message: "OwnerNotSet" }
75
+ 1030: { message: "InvalidPendingOwner" },
76
+ 1031: { message: "InvalidTtl" },
77
+ 1032: { message: "NoPendingTransfer" },
78
+ 1033: { message: "OwnerAlreadySet" },
79
+ 1034: { message: "OwnerNotSet" },
80
+ 1035: { message: "TransferInProgress" }
59
81
  };
60
82
  /**
61
83
  * BytesExtError: 1040-1049
@@ -67,7 +89,9 @@ export const BytesExtError = {
67
89
  * UpgradeableError: 1050-1059
68
90
  */
69
91
  export const UpgradeableError = {
70
- 1050: { message: "MigrationNotAllowed" }
92
+ 1050: { message: "InvalidMigrationData" },
93
+ 1051: { message: "MigrationNotAllowed" },
94
+ 1052: { message: "UpgradesFrozen" }
71
95
  };
72
96
  /**
73
97
  * MultisigError: 1060-1069
@@ -132,21 +156,22 @@ export class Client extends ContractClient {
132
156
  "AAAABAAAABxCdWZmZXJSZWFkZXJFcnJvcjogMTAwMC0xMDA5AAAAAAAAABFCdWZmZXJSZWFkZXJFcnJvcgAAAAAAAAIAAAAAAAAADUludmFsaWRMZW5ndGgAAAAAAAPoAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPp",
133
157
  "AAAABAAAABxCdWZmZXJXcml0ZXJFcnJvcjogMTAxMC0xMDE5AAAAAAAAABFCdWZmZXJXcml0ZXJFcnJvcgAAAAAAAAEAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA/I=",
134
158
  "AAAABAAAAB9UdGxDb25maWd1cmFibGVFcnJvcjogMTAyMC0xMDI5AAAAAAAAAAAUVHRsQ29uZmlndXJhYmxlRXJyb3IAAAADAAAAAAAAABBJbnZhbGlkVHRsQ29uZmlnAAAD/AAAAAAAAAAPVHRsQ29uZmlnRnJvemVuAAAAA/0AAAAAAAAAFlR0bENvbmZpZ0FscmVhZHlGcm96ZW4AAAAAA/4=",
135
- "AAAABAAAABdPd25hYmxlRXJyb3I6IDEwMzAtMTAzOQAAAAAAAAAADE93bmFibGVFcnJvcgAAAAIAAAAAAAAAD093bmVyQWxyZWFkeVNldAAAAAQGAAAAAAAAAAtPd25lck5vdFNldAAAAAQH",
159
+ "AAAABAAAABdPd25hYmxlRXJyb3I6IDEwMzAtMTAzOQAAAAAAAAAADE93bmFibGVFcnJvcgAAAAYAAAAAAAAAE0ludmFsaWRQZW5kaW5nT3duZXIAAAAEBgAAAAAAAAAKSW52YWxpZFR0bAAAAAAEBwAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAQIAAAAAAAAAA9Pd25lckFscmVhZHlTZXQAAAAECQAAAAAAAAALT3duZXJOb3RTZXQAAAAECgAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAQL",
136
160
  "AAAABAAAABhCeXRlc0V4dEVycm9yOiAxMDQwLTEwNDkAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAEEA==",
137
- "AAAABAAAABtVcGdyYWRlYWJsZUVycm9yOiAxMDUwLTEwNTkAAAAAAAAAABBVcGdyYWRlYWJsZUVycm9yAAAAAQAAAAAAAAATTWlncmF0aW9uTm90QWxsb3dlZAAAAAQa",
161
+ "AAAABAAAABtVcGdyYWRlYWJsZUVycm9yOiAxMDUwLTEwNTkAAAAAAAAAABBVcGdyYWRlYWJsZUVycm9yAAAAAwAAAAAAAAAUSW52YWxpZE1pZ3JhdGlvbkRhdGEAAAQaAAAAAAAAABNNaWdyYXRpb25Ob3RBbGxvd2VkAAAABBsAAAAAAAAADlVwZ3JhZGVzRnJvemVuAAAAAAQc",
138
162
  "AAAABAAAABhNdWx0aXNpZ0Vycm9yOiAxMDYwLTEwNjkAAAAAAAAADU11bHRpc2lnRXJyb3IAAAAAAAAIAAAAAAAAABJBbHJlYWR5SW5pdGlhbGl6ZWQAAAAABCQAAAAAAAAADUludmFsaWRTaWduZXIAAAAAAAQlAAAAAAAAAA5TaWduYXR1cmVFcnJvcgAAAAAEJgAAAAAAAAATU2lnbmVyQWxyZWFkeUV4aXN0cwAAAAQnAAAAAAAAAA5TaWduZXJOb3RGb3VuZAAAAAAEKAAAAAAAAAAdVG90YWxTaWduZXJzTGVzc1RoYW5UaHJlc2hvbGQAAAAAAAQpAAAAAAAAAA9VbnNvcnRlZFNpZ25lcnMAAAAEKgAAAAAAAAANWmVyb1RocmVzaG9sZAAAAAAABCs=",
139
163
  "AAAABQAAADBFdmVudCBlbWl0dGVkIHdoZW4gYSBzaWduZXIgaXMgYWRkZWQgb3IgcmVtb3ZlZC4AAAAAAAAACVNpZ25lclNldAAAAAAAAAEAAAAKc2lnbmVyX3NldAAAAAAAAgAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAAC",
140
164
  "AAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHNpZ25hdHVyZSB0aHJlc2hvbGQgaXMgY2hhbmdlZC4AAAAAAAAAAAAMVGhyZXNob2xkU2V0AAAAAQAAAA10aHJlc2hvbGRfc2V0AAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAAC",
141
165
  "AAAAAgAAAAAAAAAAAAAAD011bHRpc2lnU3RvcmFnZQAAAAACAAAAAAAAAAAAAAAHU2lnbmVycwAAAAAAAAAAAAAAAAlUaHJlc2hvbGQAAAA=",
142
- "AAAABQAAACxFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkLgAAAAAAAAAUT3duZXJzaGlwVHJhbnNmZXJyZWQAAAABAAAAFW93bmVyc2hpcF90cmFuc2ZlcnJlZAAAAAAAAAIAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAI=",
166
+ "AAAABQAAAFdFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkIChib3RoIHNpbmdsZS1zdGVwIGFuZCB0d28tc3RlcCBjb21wbGV0aW9uKS4AAAAAAAAAABRPd25lcnNoaXBUcmFuc2ZlcnJlZAAAAAEAAAAVb3duZXJzaGlwX3RyYW5zZmVycmVkAAAAAAAAAgAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAg==",
167
+ "AAAABQAAADtFdmVudCBlbWl0dGVkIHdoZW4gYSAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyIGlzIHByb3Bvc2VkLgAAAAAAAAAAFU93bmVyc2hpcFRyYW5zZmVycmluZwAAAAAAAAEAAAAWb3duZXJzaGlwX3RyYW5zZmVycmluZwAAAAAAAwAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAAAN0dGwAAAAABAAAAAAAAAAC",
143
168
  "AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHJlbm91bmNlZC4AAAAAAAAAAAAST3duZXJzaGlwUmVub3VuY2VkAAAAAAABAAAAE293bmVyc2hpcF9yZW5vdW5jZWQAAAAAAQAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAC",
144
- "AAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAABAAAAAAAAAAAAAAAFT3duZXIAAAA=",
169
+ "AAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAFT3duZXIAAAAAAAAAAAAAAAAAAAxQZW5kaW5nT3duZXI=",
145
170
  "AAAAAQAAAElUVEwgY29uZmlndXJhdGlvbjogdGhyZXNob2xkICh3aGVuIHRvIGV4dGVuZCkgYW5kIGV4dGVuZF90byAodGFyZ2V0IFRUTCkuAAAAAAAAAAAAAAlUdGxDb25maWcAAAAAAAACAAAAKFRhcmdldCBUVEwgYWZ0ZXIgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAJZXh0ZW5kX3RvAAAAAAAABAAAADNUVEwgdGhyZXNob2xkIHRoYXQgdHJpZ2dlcnMgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAACXRocmVzaG9sZAAAAAAAAAQ=",
146
171
  "AAAABQAAACdFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIHNldC4AAAAAAAAAAA1UdGxDb25maWdzU2V0AAAAAAAAAQAAAA90dGxfY29uZmlnc19zZXQAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAg==",
147
172
  "AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAAAAAAAAQVHRsQ29uZmlnc0Zyb3plbgAAAAEAAAASdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAg==",
148
173
  "AAAAAgAAAAAAAAAAAAAAEFR0bENvbmZpZ1N0b3JhZ2UAAAADAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAhJbnN0YW5jZQAAAAAAAAAAAAAAClBlcnNpc3RlbnQAAA==",
149
- "AAAAAgAAAAAAAAAAAAAAElVwZ3JhZGVhYmxlU3RvcmFnZQAAAAAAAQAAAAAAAAAAAAAACU1pZ3JhdGluZwAAAA=="]), options);
174
+ "AAAAAgAAAAAAAAAAAAAAElVwZ3JhZGVhYmxlU3RvcmFnZQAAAAAAAgAAAAAAAAAAAAAABkZyb3plbgAAAAAAAAAAAAAAAAAJTWlncmF0aW5nAAAA"]), options);
150
175
  this.options = options;
151
176
  }
152
177
  fromJSON = {
@@ -4,7 +4,21 @@ import type { u32, u64, 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;
7
+ /**
8
+ * Embedded WASM bytecode (base64-encoded)
9
+ * Size: 40248 bytes (39.30 KB)
10
+ */
11
+ export declare const WASM_BASE64 = "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QiCGQgSEEICAgIAAGgviAwIBfwJ+I4CAgIAAQTBrIgEkgICAgAACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgAOBwABAgMEBQYACyABQQhqQYCAwIAAQQMQ1oCAgAAgASgCCA0IIAFBCGogASkDEBDXgICAAAwGCyABQSBqQYOAwIAAQRAQ1oCAgAAgASgCIA0HIAEgASkDKDcDCCABIAApAwg3AxggASAANQIEQiCGQgSENwMQIAFBIGogAUEIahDYgICAACABKQMoIQIgASkDICEDDAYLIAFBCGpBk4DAgABBDBDWgICAACABKAIIDQYgAUEIaiABKQMQENeAgIAADAQLIAFBCGpBn4DAgABBBRDWgICAACABKAIIDQUgAUEIaiABKQMQENeAgIAADAMLIAFBCGpBpIDAgABBDRDWgICAACABKAIIDQQgAUEIaiABKQMQENeAgIAADAILIAFBCGpBsYDAgABBDBDWgICAACABKAIIDQMgAUEIaiABKQMQIAA1AgRCIIZCBIQQ2YCAgAAMAQsgAUEIakG9gMCAAEENENaAgIAAIAEoAggNAiABQQhqIAEpAxAgADUCBEIghkIEhBDZgICAAAsgASkDECECIAEpAwghAwsgA1ANAQsACyABQTBqJICAgIAAIAILdAIBfwJ+I4CAgIAAQRBrIgIkgICAgABCACEDAkACQCABEKuAgIAAIgRCARCtgICAAEUNACACIARCARCBgICAABCugICAACACKAIAQQFGDQEgACACKQMINwMIQgEhAwsgACADNwMAIAJBEGokgICAgAAPCwALDwAgACABEKKAgIAAQgFRC10CAX8BfgJAAkAgAadB/wFxIgJBwABGDQACQCACQQZGDQBCASEDQoOQgICAASEBDAILIAFCCIghAUIAIQMMAQtCACEDIAEQlICAgAAhAQsgACADNwMAIAAgATcDCAsOACAAIAFCARCwgICAAAsbACAAEKuAgIAAIAEQsYCAgAAgAhCCgICAABoLQQEBfyOAgICAAEEQayIBJICAgIAAIAEgABCDgYCAAAJAIAEoAgBBAUcNAAALIAEpAwghACABQRBqJICAgIAAIAALdAIBfwJ+I4CAgIAAQRBrIgIkgICAgABCACEDAkACQCABEKuAgIAAIgRCAhCtgICAAEUNACACIARCAhCBgICAABCugICAACACKAIAQQFGDQEgACACKQMINwMIQgEhAwsgACADNwMAIAJBEGokgICAgAAPCwALDgAgACABQgIQsICAgAALnwUBAX8jgICAgABB8ABrIgokgICAgAAQtYCAgAAQtoCAgAAgBBC1gICAACAFIAYQpYCAgAACQAJAIAcgCIRCAFENACAKQcAAahC1gICAAEKO6PcfEIOAgIAAEISAgIAAELeAgIAAIAopA0AiBkICUQ0BAkAgBqdBAXFFDQAgCikDSCAEELWAgIAAIAcgCBClgICAAAwBC0KDgICAsPoBELiAgIAAAAsgCkHAAGogARC5gICAACAKKQNIIQQgCikDQBC6gICAABC1gICAACEGEIWAgIAAIQUgCiAHQgBSIAhCAFUgCFAbOgAkIAogAzcDGCAKIAI3AxAgCiAENwMIIAogATYCICAKQQhqELuAgIAAIQggCiAJNwM4IAogCDcDMCAKIAU3AyhBACEBA0ACQCABQRhHDQBBACEBAkADQCABQRhGDQEgCkHAAGogAWogCkEoaiABaikDADcDACABQQhqIQEMAAsLIAZCjtKzlQ4gCkHAAGpBAxCngICAABCEgICAACEIQQAhAQJAA0AgAUEYRg0BIApBKGogAWpCAjcDACABQQhqIQEMAAsLIAhC/wGDQswAUg0CIAhB7IHAgABBAyAKQShqQQMQvICAgAAgCkHAAGogCikDKBC9gICAACAKKAJAQQFxDQIgCikDaCEIIAopA2AhByAKKQNYIQQgCikDUCEGIApBwABqIAopAzAQvoCAgAAgCigCQA0CIAopA0ghBSAKQcAAaiAKKQM4EK6AgIAAIAooAkBBAUYNAiAKKQNIIQkgACAHNwMQIAAgBjcDACAAIAk3AyggACAFNwMgIAAgCDcDGCAAIAQ3AwggCkHwAGokgICAgAAPCyAKQcAAaiABakICNwMAIAFBCGohAQwACwsQv4CAgAAAC4cBAgF/AX4jgICAgABBEGsiACSAgICAACAAQQRqEMGAgIAAAkAgACgCBEEBRw0AIAAoAgggACgCDBDCgICAAAsCQAJAQQAgABDGgICAACIBQgIQrYCAgABFDQAgAUICEIGAgIAAIgFC/wGDQs0AUQ0BAAsQyICAgAAACyAAQRBqJICAgIAAIAELNgACQCAAQYSCwIAAQQwQhIGAgAAQg4CAgAAQhICAgAAiAEL/AYNCzQBRDQAQv4CAgAAACyAACzkAAkAgAUICUQ0AAkAgAUL/AYNCzQBRDQAgAEICNwMADwsgACABNwMIIABCATcDAA8LIABCADcDAAsLACAAEKSAgIAAGgvGAQIBfwF+I4CAgIAAQRBrIgIkgICAgAAgAhDBgICAAAJAIAIoAgBBAUcNACACKAIEIAIoAggQwoCAgAALAkACQAJAQQEgARDGgICAACIDQgEQrYCAgABFDQAgAiADQgEQgYCAgAAQvoCAgAAgAigCAEEBRw0BAAsgAEIANwMADAELIAIpAwghAyAAQgE3AwAgACADNwMIIAIQxICAgAAgAigCAEEBRw0AIAEgAigCBCACKAIIEMeAgIAACyACQRBqJICAgIAACx4AAkAgAKdBAXFFDQAPC0KDgICAkPoBELiAgIAAAAtzAgF/AX4jgICAgABBMGsiASSAgICAACABIAApAwA3AyggASAAMQAcNwMgIAEgACkDEDcDGCABIAApAwg3AxAgASAANQIYQiCGQgSENwMIQeyAwIAAQQUgAUEIakEFEPCAgIAAIQIgAUEwaiSAgICAACACCzEAAkAgAiAERg0AAAsgACABrUIghkIEhCADrUIghkIEhCACrUIghkIEhBCdgICAABoL7wECAn8DfiOAgICAAEEwayICJICAgIAAQQAhAwJAA0AgA0EQRg0BIAIgA2pCAjcDACADQQhqIQMMAAsLQgAhBEIBIQUCQCABQv8Bg0LMAFINACABQdSBwIAAQQIgAkECELyAgIAAIAJBEGogAikDABCCgYCAACACKAIQQQFGDQAgAikDKCEBIAIpAyAhBiACQRBqIAIpAwgQgoGAgAAgAigCEEEBRg0AIAIpAyAhBCAAIAIpAyg3AyggACAENwMgIAAgATcDGCAAIAY3AxBCACEFQgAhBAsgACAFNwMAIAAgBDcDCCACQTBqJICAgIAAC0IBAX5CASECAkAgAUL/AYNCyABSDQAgARCIgICAAEKAgICAcINCgICAgIAEUg0AIAAgATcDCEIAIQILIAAgAjcDAAsJABDKgICAAAALvQEEAX8BfgF/AX4jgICAgABBEGsiAiSAgICAACACQQRqEMGAgIAAAkAgAigCBEEBRw0AIAIoAgggAigCDBDCgICAAAsCQAJAIAAgARDDgICAACIDQgEQrYCAgAAiBEUNACADQgEQgYCAgAAiBUL/AYNCyABSDQEgAkEEahDEgICAACACKAIEQQFHDQAgACABIAIoAgggAigCDBDFgICAAAsQhoCAgAAhAyACQRBqJICAgIAAIAUgAyAEGw8LAAsMACAAQQEQrIGAgAALGwAgAK1CIIZCBIQgAa1CIIZCBIQQo4CAgAAaC4oBAgF/AX4jgICAgABBMGsiAiSAgICAACACQSBqQYCDwIAAQQ8Q1oCAgAACQAJAIAIoAiANACACIAIpAyg3AwggAiABrUIghkIEhDcDGCACIACtQiCGQgSENwMQIAJBIGogAkEIahDYgICAACACKAIgRQ0BCwALIAIpAyghAyACQTBqJICAgIAAIAMLDAAgAEECEKyBgIAACycAIAAgARDDgICAAEIBIAKtQiCGQgSEIAOtQiCGQgSEEICAgIAAGgubAQIBfwF+I4CAgIAAQRBrIgIkgICAgAACQAJAAkACQCAAQQFxRQ0AIAJBvYLAgABBBBDWgICAACACKAIADQIgAiACKQMIIAGtQiCGQgSEENmAgIAADAELIAJBtYLAgABBCBDWgICAACACKAIADQEgAiACKQMIENeAgIAACyACKQMIIQMgAikDAFANAQsACyACQRBqJICAgIAAIAMLJwBBASAAEMaAgIAAQgEgAa1CIIZCBIQgAq1CIIZCBIQQgICAgAAaCwkAEL+AgIAAAAscAAJAIABBf2pB/wFxQQRJDQAQyoCAgAAACyAACwMAAAuLAQICfwF+I4CAgIAAQRBrIgAkgICAgAAgAEEEahDBgICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQwoCAgAALQQAhAQJAQQAQzICAgAAiAkICEK2AgIAARQ0AQQEhAQJAAkAgAkICEIGAgIAAp0H/AXEOAgECAAsAC0EAIQELIABBEGokgICAgAAgAQvCAQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQAJAAkAgAEH/AXEOAwABAgALIAFBwoXAgABBBhDWgICAACABKAIADQMgASABKQMIENeAgIAADAILIAFByIXAgABBCBDWgICAACABKAIADQIgASABKQMIENeAgIAADAELIAFB0IXAgABBChDWgICAACABKAIADQEgASABKQMIENeAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILDwAQzoCAgAAQh4CAgAAaC2YCAX8BfiOAgICAAEEQayIAJICAgIAAIAAQwYCAgAACQCAAKAIAQQFHDQAgACgCBCAAKAIIEMKAgIAACyAAENCAgIAAIAApAwghASAAKQMAQYoIENGAgIAAIABBEGokgICAgAAgAQtKAgF/AX4jgICAgABBEGsiACSAgICAACAAENCAgIAAIAApAwghASAAKQMAQYoIENGAgIAAIAEQh4CAgAAaIABBEGokgICAgAAgAQtQAQF/I4CAgIAAQRBrIgEkgICAgAAgAUEEahDBgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQwoCAgAALIAAQ1YCAgAAgAUEQaiSAgICAAAspAAJAIACnQQFxRQ0ADwsgAUH6d2qtQiCGQoOAgIDggAF8ELiAgIAAAAtCAQF/I4CAgIAAQRBrIgAkgICAgAAgABDTgICAAAJAIAApAwBQDQBCg4CAgLCBARC4gICAAAALIABBEGokgICAgAALkwECAX8CfiOAgICAAEEQayIBJICAgIAAIAFBBGoQwYCAgAACQCABKAIEQQFHDQAgASgCCCABKAIMEMKAgIAAC0IAIQICQAJAQQEQ1ICAgAAiA0IAEK2AgIAARQ0AIANCABCBgICAACICQv8Bg0LNAFINASAAIAI3AwhCASECCyAAIAI3AwAgAUEQaiSAgICAAA8LAAuSAQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQCAAQQFxRQ0AIAFB1YTAgABBDBDWgICAACABKAIADQIgASABKQMIENeAgIAADAELIAFB0ITAgABBBRDWgICAACABKAIADQEgASABKQMIENeAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILTQECfkIAIQECQAJAQQAQ1ICAgAAiAkICEK2AgIAARQ0AIAJCAhCBgICAACIBQv8Bg0LNAFINASAAIAE3AwhCASEBCyAAIAE3AwAPCwALUQIBfwF+I4CAgIAAQRBrIgMkgICAgAAgAyABIAIQqYGAgABCASEEAkAgAygCAA0AIAAgAykDCDcDCEIAIQQLIAAgBDcDACADQRBqJICAgIAAC0QBAX8jgICAgABBEGsiAiSAgICAACACIAE3AwggAkEIakEBEKeAgIAAIQEgAEIANwMAIAAgATcDCCACQRBqJICAgIAAC10CAX8BfiOAgICAAEEgayICJICAgIAAIAIgASkDEDcDGCACIAEpAwg3AxAgAiABKQMANwMIIAJBCGpBAxCngICAACEDIABCADcDACAAIAM3AwggAkEgaiSAgICAAAtIAQF/I4CAgIAAQRBrIgMkgICAgAAgAyACNwMIIAMgATcDACADQQIQp4CAgAAhAiAAQgA3AwAgACACNwMIIANBEGokgICAgAALnwECAX8BfiOAgICAAEEQayICJICAgIAAEIaAgIAAIQMgAiAAOgALIAMgAxCIgICAAEKAgICAcINCBIQgAkELakEBENuAgIAAIQMgAiABQRh0IAFBgP4DcUEIdHIgAUEIdkGA/gNxIAFBGHZycjYCDCADIAMQiICAgABCgICAgHCDQgSEIAJBDGpBBBDbgICAACEDIAJBEGokgICAgAAgAwseACAAIAEgAq1CIIZCBIQgA61CIIZCBIQQmoCAgAALMQACQCAAEIiAgIAAQv////8PVg0AEN2AgIAAAAsgAEIEEImAgIAAQiCIpxDJgICAAAsJABDKgICAAAALqQMCAX8CfiOAgICAAEEgayICJICAgIAAQgwhAwJAIAFBBSABEIiAgIAAQiCIpxDfgICAACIBEIiAgIAAQoCAgIAQVA0AIAEQioCAgAAhAwsgAkEPaiADEIuAgIAAIgFCBEKEgICAgAIQjICAgAAQ4ICAgAACQAJAIAItAA9BAUYNACACKQAYIQMgAikAECEEIAJBD2ogAUKEgICAgAJChICAgIAEEIyAgIAAEOCAgIAAIAItAA9BAUYNACAEIAOEQgBSDQEgAikAECIBQjiGIAFCgP4Dg0IohoQgAUKAgPwHg0IYhiABQoCAgPgPg0IIhoSEIAFCCIhCgICA+A+DIAFCGIhCgID8B4OEIAFCKIhCgP4DgyABQjiIhISEIgNCf1cNASAAIAIpABgiAUI4hiABQoD+A4NCKIaEIAFCgID8B4NCGIYgAUKAgID4D4NCCIaEhCABQgiIQoCAgPgPgyABQhiIQoCA/AeDhCABQiiIQoD+A4MgAUI4iISEhDcDACAAIAM3AwggAkEgaiSAgICAAA8LEL+AgIAAAAtCg4CAgCAQuICAgAAACxwAIAAgAa1CIIZCBIQgAq1CIIZCBIQQjICAgAAL2QECA38BfiOAgICAAEEQayICJICAgIAAQQEhAwJAIAEQiICAgABCgICAgHCDQoCAgICAAlINACACQQhqQgA3AwAgAkIANwMAIABBAWohBEEAIQMCQANAIAEQiICAgABCgICAgBBUDQEgARCfgICAACEFIAFBARCOgYCAACEBAkAgA0EQRg0AIAIgA2ogBUIgiDwAACADQQFqIQMMAQsLQRAQqIGAgAAACyAEIAIpAwA3AAAgBEEIaiACQQhqKQMANwAAQQAhAwsgACADOgAAIAJBEGokgICAgAAL7wICAX8BfiOAgICAAEEwayICJICAgIAAEIaAgIAAIQMgAkGABjsBECADIAMQiICAgABCgICAgHCDQgSEIAJBEGpBAhDbgICAAEKEgICAEBCNgICAACEDIAJCgICAgIDgwIbAADcDCCACQgA3AwAgAiAAQjiGNwMYIAJCADcDEAJAAkAgACABhEIAUg0AIAJBgCI7AS4gAyADEIiAgIAAQoCAgIBwg0IEhCACQS5qQQIQ24CAgABChICAgBAQjYCAgAAhACAAIAAQiICAgABCgICAgHCDQgSEIAJBEBDbgICAACEADAELIAJBgMIAOwEuIAMgAxCIgICAAEKAgICAcINCBIQgAkEuakECENuAgIAAQoSAgIAQEI2AgIAAIQAgACAAEIiAgIAAQoCAgIBwg0IEhCACQRAQ24CAgAAhACAAIAAQiICAgABCgICAgHCDQgSEIAJBEGpBEBDbgICAACEACyACQTBqJICAgIAAIAALXgIBfwF+I4CAgIAAQRBrIgIkgICAgAAgAiAAEN6AgIAAAkAgASkDACACKQMAWiABKQMIIgAgAikDCCIDWSAAIANRGw0AQoOAgIAwELiAgIAAAAsgAkEQaiSAgICAAAuFAQIBfwF+I4CAgIAAQTBrIgIkgICAgAAgAiABNwMIIAIgADYCBCACQQE2AgAgAkEQaiACEKyAgIAAAkAgAikDECIBUA0AIAJBJGoQxICAgAAgAigCJEUNACACIAIoAiggAigCLBCqgICAAAsgAikDGCEDIAJBMGokgICAgAAgA0IAIAGnGwtpAQF/I4CAgIAAQSBrIgMkgICAgAAgAyABNwMIIAMgADYCBCADQQE2AgAgAyACEK+AgIAAIANBFGoQxICAgAACQCADKAIUQQFHDQAgAyAD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IAggByAEIAEgABC0gICAACAFQTBqJICAgIAAQgIPCwALEL+AgIAAAAuoAQIBfwJ+I4CAgIAAQTBrIgEkgICAgAAgAUEQahDBgICAAAJAIAEoAhBBAUcNACABKAIUIAEoAhgQwoCAgAALIAFBBjYCACABIAA2AgQgAUEQaiABEKyAgIAAAkAgASkDECICUA0AIAFBJGoQxICAgAAgASgCJEEBRw0AIAEgASgCKCABKAIsEKqAgIAACyABKQMYIQMgAUEwaiSAgICAACADQgAgAqcbC4sBAQJ/I4CAgIAAQRBrIgEkgICAgAACQEEBIACnQf8BcSICQQBHQQF0IAJBAUYbIgJBAkYNABDNgICAACABEMGAgIAAAkAgASgCAEEBRw0AIAEoAgQgASgCCBDCgICAAAsgAUECNgIAIAEQq4CAgAAgAq1CAhCCgICAABogAUEQaiSAgICAAEICDwsAC5UDBQF/AX4BfwF+AX8jgICAgABB0ABrIgMkgICAgAACQCAAQv8Bg0IEUg0AIANBKGogARC+gICAACADKAIoQQFGDQAgAykDMCEBIANBKGogAhCugICAACADKAIoQQFGDQAgAEIgiCECIAMpAzAhBBDNgICAACADQShqEMGAgIAAAkAgAygCKEEBRw0AIAMoAiwgAygCMBDCgICAAAsgAqchBRCFgICAACECELWAgIAAIQYgAyAEELGAgIAANwMgIAMgATcDGCADIABChICAgHCDNwMQIAMgAjcDCCADIAI3AwBBACEHAkADQAJAIAdBKEcNAEEAIQcCQANAIAdBKEYNASADQShqIAdqIAMgB2opAwA3AwAgB0EIaiEHDAALCyAGQo7qrpgOIANBKGpBBRCngICAABCogICAAAJAEOWAgIAARQ0AIAUgARDjgICAAEIBfCIAUA0DIAUgASAAEOSAgIAACyADQdAAaiSAgICAAEICDwsgA0EoaiAHakICNwMAIAdBCGohBwwACwsQv4CAgAAACwALDwAQ7oCAgACtQiCGQgSECw4AEPeAgIAAELGAgIAAC3MCAn8BfiOAgICAAEEgayIAJICAgIAAIABBEGoQwYCAgAACQCAAKAIQQQFHDQAgACgCFCAAKAIYEMKAgIAACyAAQQM2AgAgAEEQaiAAELKAgIAAIAAoAhAhASAAKQMYIQIgAEEgaiSAgICAACACQgAgARsLDgAQ+YCAgAAQsYCAgAALcwICfwF+I4CAgIAAQSBrIgAkgICAgAAgAEEQahDBgICAAAJAIAAoAhBBAUcNACAAKAIUIAAoAhgQwoCAgAALIABBBDYCACAAQRBqIAAQsoCAgAAgACgCECEBIAApAxghAiAAQSBqJICAgIAAIAJCACABGwsjAAJAIABC/wGDQgRRDQAACyAAQiCIpxD7gICAABCxgICAAAuoAQIBfwJ+I4CAgIAAQTBrIgEkgICAgAAgAUEQahDBgICAAAJAIAEoAhBBAUcNACABKAIUIAEoAhgQwoCAgAALIAFBBTYCACABIAA2AgQgAUEQaiABEKyAgIAAAkAgASkDECICUA0AIAFBJGoQxICAgAAgASgCJEEBRw0AIAEgASgCKCABKAIsEKqAgIAACyABKQMYIQMgAUEwaiSAgICAACADQgAgAqcbCyMAAkAgAEL/AYNCBFENAAALIABCIIinEPKAgIAAELGAgIAAC64BAgF/AX4jgICAgABBEGsiAiSAgICAAAJAAkAgAEL/AYNCBFINACACIAEQvoCAgAAgAigCAEEBRg0AIAIpAwghAyACEMGAgIAAAkAgAigCAEEBRw0AIAIoAgQgAigCCBDCgICAAAtCACEBAkAQ5YCAgABFDQAgAEIgiKcgAxDjgICAAEIBfCIBUA0CCyABELGAgIAAIQAgAkEQaiSAgICAACAADwsACxC/gICAAAALmwECAn8BfiOAgICAAEEgayIBJICAgIAAIAEgABD/gICAAAJAIAEoAgBBAUYNACABKAIYIQIgASkDCCEDIAEQwYCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEMKAgIAACyABIAIQuYCAgABCACEAAkAgASgCAEEBRw0AIAEpAwggAxCAgYCAAK0hAAsgAUEgaiSAgICAACAADwsAC+IBAgJ/An4jgICAgABBMGsiAiSAgICAAEEAIQMCQANAIANBGEYNASACQQhqIANqQgI3AwAgA0EIaiEDDAALC0IBIQQCQCABQv8Bg0LMAFINACABQaiBwIAAQQMgAkEIakEDELyAgIAAIAJBIGogAikDCBCugICAACACKAIgDQAgAikDKCEBIAJBIGogAikDEBC+gICAACACKAIgDQAgAikDGCIFQv8Bg0IEUg0AIAIpAyghBCAAIAE3AxAg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Qv8Bg0IEUg0AIAcgBkIgiKcgASkDGCIGQv8Bg0LIAFIiBRshByAIIAYgBRshCCAJIARCIIinIAUbIQkLIANC/////w9RDQMgBQ0DIAEgBzYCFCABIAk2AhAgASAINwMIIAFBCGoQi4GAgAAgCSAHEMOAgIAAIAhCARCCgICAABogAUEkahDEgICAAAJAIAEoAiRBAUcNACAJIAcgASgCKCABKAIsEMWAgIAACyADQgF8IQMMAAsLQY+DwIAAQRMQhIGAgAAQjIGAgAAhAyABIAA3AwggA0G4g8CAAEEBIAFBCGpBARDwgICAABCRgICAABogAUEwaiSAgICAAEICDwsACxC/gICAAAAL1gECAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkAgACkDACICEIiAgIAAQv////8fWA0AIAJBAEECEN+AgIAAIgIQiICAgABCgICAgHCDQoCAgIAgUg0BIAFBADsBDiACEIiAgIAAQoCAgIBwg0KAgICAIFINAiACIAFBDmpBAhCHgYCAACABLwEOQYAGRw0DIAFBEGokgICAgAAPC0KDgICAgP0AELiAgIAAAAtCg4CAgICCARC4gICAAAALEIiBgIAAAAtCg4CAgID6ARC4gICAAAALYwMBfwF+AX8jgICAgABBEGsiASSAgICAACABIAA3AwBCAiECQQEhAwJAA0AgA0UNASADQX9qIQMgACECDAALCyABIAI3AwggAUEIakEBEKeAgIAAIQAgAUEQaiSAgICAACAAC4ICAQN/I4CAgIAAQSBrIgMkgICAgAACQAJAIABC/wGDQgRSDQAgAUL/AYNCBFINACACQv8Bg0LIAFINACAAQiCIpyEEIAFCIIinIQUgAyACNwMIIANBFGoQwYCAgAACQCADKAIUQQFHDQAgAygCGCADKAIcEMKAgIAACwJAIAQgBRDAgICAACIAEIiAgIAAQoCAgIAQVA0AAkAgAhCIgICAAEKAgICAEFoNACAAIQIMAQsgAhCIgICAAEL/////H1gNAiADQQhqEIuBgIAAIAAgAkECEI6BgIAAEI6AgIAAIQILIANBIGokgICAgAAgAg8LAAtCg4CAgID6ARC4gICAAAALJQAgACABrUIghkIEhCAAEIiAgIAAQoCAgIBwg0IEhBCMgICAAAueAQIBfwF+I4CAgIAAQSBrIgAkgICAgAAgAEEQahDBgICAAAJAIAAoAhBBAUcNACAAKAIUIAAoAhgQwoCAgAALIABBEGoQkIGAgAACQAJAIAAoAhANACAAKQMYIQEgAEEQahCQgYCAACAAKAIQQQFHDQELAAsgACAAKQMYNwMIIAAgATcDACAAQQIQp4CAgAAhASAAQSBqJICAgIAAIAELDAAgAEIBEIOBgIAACwgAELWAgIAAC1EBAX8jgICAgABBEGsiASSAgICAAAJAIABC/wGDQgRRDQAACyABIABCIIinELmAgIAAIAEpAwAgASkDCBCTgYCAACEAIAFBEGokgICAgAAgAAsNACABQgIgAKdBAXEbC7oCBAF/AX4BfwF+I4CAgIAAQRBrIgIkgICAgAACQCAAQv8Bg0IEUg0AAkACQCABQgJSDQBCACEBDAELIAIgARC+gICAACACKAIAQQFGDQEgAikDCCEDQgEhAQsQzYCAgAAgAhDBgICAAAJAIAIoAgBBAUcNACACKAIEIAIoAggQwoCAgAALQQEgAEIgiKciBBDGgICAACEFAkACQCABUA0AIAUgA0IBEIKAgIAAGiACEMSAgIAAIAIoAgBBAUcNASAEIAIoAgQgAigCCBDHgICAAAwBCyAFQgEQkoCAgAAaC0KO8qq88Naq6wAQjIGAgAAhBSACIAEgAxCTgYCAADcDCCACIABChICAgHCDNwMAIAVByILAgABBAiACQQIQ8ICAgAAQkYCAgAAaIAJBEGokgICAgABCAg8LAAuHAQIBfwF+I4CAgIAAQRBrIgEkgICAgAAgASAAELeAgIAAAkAgASkDACIAQgJRDQAgASkDCCECEM2AgIAAIAEQwYCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEMKAgIAACxC1gICAABCFgICAACAAIAIQ7ICAgAAgAUEQaiSAgICAAEICDwsAC94EAQV/I4CAgIAAQdAAayICJICAgIAAIAJBKGogABCXgYCAAAJAIAIoAihBAkYNACACQQhqQQhqIAJBKGpBCGoiAygCADYCACACIAIpAig3AwggAkEoaiABEJeBgIAAIAIoAihBAkYNACACQRhqQQhqIAMoAgA2AgAgAiACKQIoNwMYIAJBKGoQwYCAgAACQCACKAIoQQFHDQAgAigCLCACKAIwEMKAgIAACxDNgICAAAJAAkACQBDLgICAAA0AEJiBgIAAIgNBgPuAAyADQYD7gANJGyEEIAIgAkEYajYCLCACIAJBCGo2AihBACEDA0AgA0EIRg0DAkAgAkEoaiADaigCACIFKAIAQQFxRQ0AIAUoAggiBiAESw0DIAUoAgQgBksNAwsgA0EEaiEDDAALC0KDgICA0P8AELiAgIAAAAtCg4CAgMD/ABC4gICAAAALAkACQCACKAIIQQFHDQAgAigCDCACKAIQEOmAgIAADAELQQEQzICAgABCAhCSgICAABoLAkACQCACKAIYQQFHDQAgAigCHCACKAIgEOqAgIAADAELQQIQzICAgABCAhCSgICAABoLIAJBKGpBCGogAkEIakEIaigCADYCACACQTxqIAJBGGpBCGooAgA2AgAgAiACKQMINwMoIAIgAikDGDcCNEH8hMCAAEEPEISBgIAAEIyBgIAAIQAgAkEoahCZgYCAACEBIAIgAkE0ahCZgYCAADcDSCACIAE3A0AgAEGghcCAAEECIAJBwABqQQIQ8ICAgAAQkYCAgAAaIAJB0ABqJICAgIAAQgIPCwALaAEBfyOAgICAAEEQayICJICAgIAAAkACQCABQgJRDQAgAkEEaiABEKqBgIAAAkAgAigCBEUNACAAQQI2AgAMAgsgACACKQIINwIEIABBATYCAAwBCyAAQQA2AgALIAJBEGokgICAgAALMwECfhCggICAACEAAkAQoYCAgABCIIgiASAAQiCIIgBUDQAgAacgAKdrDwsQv4CAgAAAC0MCAX8BfiOAgICAAEEQayIBJICAgIAAIAEgABCbgYCAAAJAIAEoAgBBAUcNAAALIAEpAwghAiABQRBqJICAgIAAIAILwgECAn8BfiOAgICAAEHAAGsiACSAgICAACAAQQhqEMGAgIAAAkAgACgCCEEBRw0AIAAoAgwgACgCEBDCgICAAAsgAEEIahDBgICAACAAQRRqIgEQxICAgAAgAEEwaiAAQQhqEJuBgIAAAkACQCAAKAIwDQAgACkDOCECIABBMGogARCbgYCAACAAKAIwQQFHDQELAAsgACAAKQM4NwMoIAAgAjcDICAAQSBqQQIQp4CAgAAhAiAAQcAAaiSAgICAACACCzAAAkAgASgCAEEBRw0AIAAgASgCBCABKAIIEKuBgIAADwsgAEIANwMAIABCAjcDCAuqAQEBfyOAgICAAEEgayIAJICAgIAAIABBDGoQwYCAgAACQCAAKAIMQQFHDQAgACgCECAAKAIUEMKAgIAACxDNgICAAAJAEMuAgIAARQ0AQoOAgIDg/wAQuICAgAAAC0EAEMyAgIAAQgFCAhCCgICAABpBsIXAgABBEhCEgYCAABCMgYCAAEEEQQAgAEEYakEAEPCAgIAAEJGAgIAAGiAAQSBqJICAgIAAQgILCQAQy4CAgACtCzEAAkAgAEL/AYNCBFINACABQv8Bg0IEUg0AIABCIIinIAFCIIinEMKAgIAAQgIPCwALPgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABDQgICAACAAKQMAIAApAwgQk4GAgAAhASAAQRBqJICAgIAAIAELPgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABDTgICAACAAKQMAIAApAwgQk4GAgAAhASAAQRBqJICAgIAAIAELfQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQCAAQv8Bg0LNAFINACABQQRqEMGAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBDCgICAAAsQz4CAgAAhAhDSgICAACAAEOuAgIAAIAIgABCigYCAACABQRBqJICAgIAAQgIPCwALYQIBfwF+I4CAgIAAQRBrIgIkgICAgABByYPAgABBFRCEgYCAABCMgYCAACEDIAIgADcDCCACIAE3AwAgA0Hwg8CAAEECIAJBAhDwgICAABCRgICAABogAkEQaiSAgICAAAvcAgIBfwJ+I4CAgIAAQSBrIgIkgICAgAACQAJAAkAgAEL/AYNCzQBSDQAgAUL/AYNCBFINACACQQhqEMGAgIAAAkAgAigCCEEBRw0AIAIoAgwgAigCEBDCgICAAAsQz4CAgAAhAwJAAkAgAUL/////D1YNACACQQhqENOAgIAAIAIpAxAhASACKQMIQYgIENGAgIAAIAEgABCAgYCAAEUNAxCkgYCAAAwBCxCYgYCAACABQiCIp0kNA0EBIABCABClgYCAAEEBENSAgIAAQgAgAUKEgICAcIMiASABEICAgIAAGkGAhMCAAEEWEISBgIAAEIyBgIAAIQQgAiABNwMYIAIgAzcDECACIAA3AwggBEGchMCAAEEDIAJBCGpBAxDwgICAABCRgICAABoLIAJBIGokgICAgABCAg8LAAtCg4CAgOCAARC4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dGVzIHRvIGBfX2x6X3JlY2VpdmVgIGZvciBhcHBsaWNhdGlvbiBsb2dpYy4KCiMgQXJndW1lbnRzCiogYGV4ZWN1dG9yYCAtIFRoZSBhZGRyZXNzIG9mIHRoZSBleGVjdXRvciBmb3IgdGhlIHJlY2VpdmVkIG1lc3NhZ2UKKiBgb3JpZ2luYCAtIFRoZSBvcmlnaW4gaW5mb3JtYXRpb24gY29udGFpbmluZyB0aGUgc291cmNlIGVuZHBvaW50IGFuZCBzZW5kZXIgYWRkcmVzczoKLSBgc3JjX2VpZGA6IFRoZSBzb3VyY2UgY2hhaW4gZW5kcG9pbnQgSUQKLSBgc2VuZGVyYDogVGhlIHNlbmRlciBhZGRyZXNzIG9uIHRoZSBzb3VyY2UgY2hhaW4KLSBgbm9uY2VgOiBUaGUgbm9uY2Ugb2YgdGhlIG1lc3NhZ2UKKiBgZ3VpZGAgLSBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSByZWNlaXZlZCBMYXllclplcm8gbWVzc2FnZQoqIGBtZXNzYWdlYCAtIFRoZSBwYXlsb2FkIG9mIHRoZSByZWNlaXZlZCBtZXNzYWdlCiogYGV4dHJhX2RhdGFgIC0gQWRkaXRpb25hbCBhcmJpdHJhcnkgZGF0YSBwcm92aWRlZCBieSB0aGUgY29ycmVzcG9uZGluZyBleGVjdXRvcgoqIGB2YWx1ZWAgLSBUaGUgbmF0aXZlIHRva2VuIHZhbHVlIHNlbnQgd2l0aCB0aGUgbWVzc2FnZQAAAAAKbHpfcmVjZWl2ZQAAAAAABgAAAAAAAAAIZXhlY3V0b3IAAAATAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAAAAAAABGd1aWQAAAPuAAAAIAAAAAAAAAAHbWVzc2FnZQAAAAAOAAAAAAAAAApleHRyYV9kYXRhAAAAAAAOAAAAAAAAAAV2YWx1ZQAAAAAAAAsAAAAAAAAAAAAAAexJbmRpY2F0ZXMgd2hldGhlciBhbiBhZGRyZXNzIGlzIGFuIGFwcHJvdmVkIGNvbXBvc2VNc2cgc2VuZGVyIHRvIHRoZSBFbmRwb2ludC4KCkFwcGxpY2F0aW9ucyBjYW4gb3B0aW9uYWxseSBjaG9vc2UgdG8gaW1wbGVtZW50IHNlcGFyYXRlIGNvbXBvc2VNc2cgc2VuZGVycyB0aGF0IGFyZSBOT1QgdGhlIGJyaWRnaW5nIGxheWVyLgpUaGUgZGVmYXVsdCBzZW5kZXIgSVMgdGhlIE9BcHBSZWNlaXZlciBpbXBsZW1lbnRlci4KCiMgQXJndW1lbnRzCiogYG9yaWdpbmAgLSBUaGUgb3JpZ2luIGluZm9ybWF0aW9uIGNvbnRhaW5pbmcgdGhlIHNvdXJjZSBlbmRwb2ludCBhbmQgc2VuZGVyIGFkZHJlc3MKKiBgbWVzc2FnZWAgLSBUaGUgbHpSZWNlaXZlIHBheWxvYWQKKiBgc2VuZGVyYCAtIFRoZSBzZW5kZXIgYWRkcmVzcyB0byBjaGVjawoKIyBSZXR1cm5zClRydWUgaWYgdGhlIHNlbmRlciBpcyBhIHZhbGlkIGNvbXBvc2VNc2cgc2VuZGVyLCBmYWxzZSBvdGhlcndpc2UAAAAVaXNfY29tcG9zZV9tc2dfc2VuZGVyAAAAAAAAAwAAAAAAAAAGb3JpZ2luAAAAAAfQAAAABk9yaWdpbgAAAAAAAAAAAAdtZXNzYWdlAAAAAA4AAAAAAAAABnNlbmRlcgAAAAAAEwAAAAEAAAABAAAAAAAAAAAAAAAKbHpfY29tcG9zZQAAAAAABwAAAAAAAAAIZXhlY3V0b3IAAAATAAAAAAAAAARmcm9tAAAAEwAAAAAAAAAEZ3VpZAAAA+4AAAAgAAAAAAAAAAVpbmRleAAAAAAAAAQAAAAAAAAAB21lc3NhZ2UAAAAADgAAAAAAAAAKZXh0cmFfZGF0YQAAAAAADgAAAAAAAAAFdmFsdWUAAAAAAAALAAAAAAAAAAAAAADZUmV0cmlldmVzIHRoZSBlbmZvcmNlZCBvcHRpb25zIGZvciBhIGdpdmVuIGVuZHBvaW50IGFuZCBtZXNzYWdlIHR5cGUuCgojIEFyZ3VtZW50cwoqIGBlaWRgIC0gVGhlIGVuZHBvaW50IElECiogYG1zZ190eXBlYCAtIFRoZSBPQXBwIG1lc3NhZ2UgdHlwZQoKIyBSZXR1cm5zClRoZSBlbmZvcmNlZCBvcHRpb25zIGZvciB0aGUgZ2l2ZW4gZW5kcG9pbnQgYW5kIG1lc3NhZ2UgdHlwZQAAAAAAABBlbmZvcmNlZF9vcHRpb25zAAAAAgAAAAAAAAADZWlkAAAAAAQAAAAAAAAACG1zZ190eXBlAAAABAAAAAEAAAAOAAAAAAAAAptTZXRzIHRoZSBlbmZvcmNlZCBvcHRpb25zIGZvciBzcGVjaWZpYyBlbmRwb2ludCBhbmQgbWVzc2FnZSB0eXBlIGNvbWJpbmF0aW9ucy4KCk9ubHkgdGhlIGBhdXRob3JpemVyYCBvZiB0aGUgT0FwcCBjYW4gY2FsbCB0aGlzIGZ1bmN0aW9uLgpQcm92aWRlcyBhIHdheSBmb3IgdGhlIE9BcHAgdG8gZW5mb3JjZSB0aGluZ3MgbGlrZSBwYXlpbmcgZm9yIFByZUNyaW1lLCBBTkQvT1IgbWluaW11bSBkc3QgbHpSZWNlaXZlIGdhcyBhbW91bnRzIGV0Yy4KVGhlc2UgZW5mb3JjZWQgb3B0aW9ucyBjYW4gdmFyeSBhcyB0aGUgcG90ZW50aWFsIG9wdGlvbnMvZXhlY3V0aW9uIG9uIHRoZSByZW1vdGUgbWF5IGRpZmZlciBhcyBwZXIgdGhlIG1zZ190eXBlLgplLmcuIEFtb3VudCBvZiBselJlY2VpdmUoKSBnYXMgbmVjZXNzYXJ5IHRvIGRlbGl2ZXIgYSBsekNvbXBvc2UoKSBtZXNzYWdlIGFkZHMgb3ZlcmhlYWQgeW91IGRvbid0IHdhbnQgdG8gcGF5CmlmIHlvdSBhcmUgb25seSBtYWtpbmcgYSBzdGFuZGFyZCBMYXllclplcm8gbWVzc2FnZSBpZS4gbHpSZWNlaXZlKCkgV0lUSE9VVCBzZW5kQ29tcG9zZSgpLgoKIyBBcmd1bWVudHMKKiBgb3B0aW9uc2AgLSBBIHZlY3RvciBvZiBFbmZvcmNlZE9wdGlvblBhcmFtIHN0cnVjdHVyZXMgc3BlY2lmeWluZyBlbmZvcmNlZCBvcHRpb25zAAAAABRzZXRfZW5mb3JjZWRfb3B0aW9ucwAAAAEAAAAAAAAAB29wdGlvbnMAAAAD6gAAB9AAAAATRW5mb3JjZWRPcHRpb25QYXJhbQAAAAAAAAAAAAAAAnpDb21iaW5lcyBvcHRpb25zIGZvciBhIGdpdmVuIGVuZHBvaW50IGFuZCBtZXNzYWdlIHR5cGUuCgpJZiB0aGVyZSBpcyBhbiBlbmZvcmNlZCBselJlY2VpdmUgb3B0aW9uOgotIHtnYXNfbGltaXQ6IDIwMGssIHZhbHVlOiAxIFhMTX0gQU5EIGEgY2FsbGVyIHN1cHBsaWVzIGEgbHpSZWNlaXZlIG9wdGlvbjoge2dhc19saW1pdDogMTAwaywgdmFsdWU6IDAuNSBYTE19Ci0gVGhlIHJlc3VsdGluZyBvcHRpb25zIHdpbGwgYmUge2dhc19saW1pdDogMzAwaywgdmFsdWU6IDEuNSBYTE19IHdoZW4gdGhlIG1lc3NhZ2UgaXMgZXhlY3V0ZWQgb24gdGhlIHJlbW90ZSBsel9yZWNlaXZlKCkgZnVuY3Rpb24uClRoZSBwcmVzZW5jZSBvZiBkdXBsaWNhdGVkIG9wdGlvbnMgaXMgaGFuZGxlZCBvZmYtY2hhaW4gaW4gdGhlIHZlcmlmaWVyL2V4ZWN1dG9yLgoKIyBBcmd1bWVudHMKKiBgZWlkYCAtIFRoZSBlbmRwb2ludCBJRAoqIGBtc2dfdHlwZWAgLSBUaGUgT0FwcCBtZXNzYWdlIHR5cGUKKiBgZXh0cmFfb3B0aW9uc2AgLSBBZGRpdGlvbmFsIG9wdGlvbnMgcGFzc2VkIGJ5IHRoZSBjYWxsZXIKCiMgUmV0dXJucwpUaGUgY29tYmluYXRpb24gb2YgY2FsbGVyIHNwZWNpZmllZCBvcHRpb25zIEFORCBlbmZvcmNlZCBvcHRpb25zAAAAAAAPY29tYmluZV9vcHRpb25zAAAAAAMAAAAAAAAAA2VpZAAAAAAEAAAAAAAAAAhtc2dfdHlwZQAAAAQAAAAAAAAADWV4dHJhX29wdGlvbnMAAAAAAAAOAAAAAQAAAA4AAAAAAAAArlJldHJpZXZlcyB0aGUgT0FwcCB2ZXJzaW9uIGluZm9ybWF0aW9uLgoKIyBSZXR1cm5zCkEgdHVwbGUgY29udGFpbmluZzoKLSBgc2VuZGVyX3ZlcnNpb25gOiBUaGUgdmVyc2lvbiBvZiB0aGUgT0FwcFNlbmRlcgotIGByZWNlaXZlcl92ZXJzaW9uYDogVGhlIHZlcnNpb24gb2YgdGhlIE9BcHBSZWNlaXZlcgAAAAAADG9hcHBfdmVyc2lvbgAAAAAAAAABAAAD7QAAAAIAAAAGAAAABgAAAAAAAABsUmV0cmlldmVzIHRoZSBMYXllclplcm8gZW5kcG9pbnQgYWRkcmVzcyBhc3NvY2lhdGVkIHdpdGggdGhlIE9BcHAuCgojIFJldHVybnMKVGhlIExheWVyWmVybyBlbmRwb2ludCBhZGRyZXNzAAAACGVuZHBvaW50AAAAAAAAAAEAAAATAAAAAAAAAMFSZXRyaWV2ZXMgdGhlIHBlZXIgKE9BcHApIGFzc29jaWF0ZWQgd2l0aCBhIGNvcnJlc3BvbmRpbmcgZW5kcG9pbnQuCgojIEFyZ3VtZW50cwoqIGBlaWRgIC0gVGhlIGVuZHBvaW50IElECgojIFJldHVybnMKVGhlIHBlZXIgYWRkcmVzcyAoT0FwcCBpbnN0YW5jZSkgYXNzb2NpYXRlZCB3aXRoIHRoZSBjb3JyZXNwb25kaW5nIGVuZHBvaW50AAAAAAAABHBlZXIAAAABAAAAAAAAAANlaWQAAAAABAAAAAEAAAPoAAAD7gAAACAAAAAAAAAA5VNldHMgb3IgcmVtb3ZlcyB0aGUgcGVlciBhZGRyZXNzIChPQXBwIGluc3RhbmNlKSBmb3IgYSBjb3JyZXNwb25kaW5nIGVuZHBvaW50LgoKIyBBcmd1bWVudHMKKiBgZWlkYCAtIFRoZSBlbmRwb2ludCBJRAoqIGBwZWVyYCAtIFRoZSBhZGRyZXNzIG9mIHRoZSBwZWVyIHRvIGJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBlbmRwb2ludCwgb3IgTm9uZSB0byByZW1vdmUgdGhlIHBlZXIAAAAAAAAIc2V0X3BlZXIAAAACAAAAAAAAAANlaWQAAAAABAAAAAAAAAAEcGVlcgAAA+gAAAPuAAAAIAAAAAAAAAAAAAAAjlNldHMgdGhlIGRlbGVnYXRlIGFkZHJlc3MgZm9yIHRoZSBPQXBwIENvcmUuCgojIEFyZ3VtZW50cwoqIGBkZWxlZ2F0ZWAgLSBUaGUgYWRkcmVzcyBvZiB0aGUgZGVsZWdhdGUgdG8gYmUgc2V0LCBvciBOb25lIHRvIHJlbW92ZSB0aGUgZGVsZWdhdGUAAAAAAAxzZXRfZGVsZWdhdGUAAAABAAAAAAAAAAhkZWxlZ2F0ZQAAA+gAAAATAAAAAAAAAAAAAAGPU2V0cyBUVEwgY29uZmlncyBmb3IgaW5zdGFuY2UgYW5kIHBlcnNpc3RlbnQgc3RvcmFnZS4KCi0gYE5vbmVgIHZhbHVlcyByZW1vdmUgdGhlIGNvcnJlc3BvbmRpbmcgY29uZmlnIChkaXNhYmxlcyBhdXRvLWV4dGVuc2lvbiBmb3IgdGhhdCB0eXBlKQotIFZhbGlkYXRlcyB0aGF0IGB0aHJlc2hvbGQgPD0gZXh0ZW5kX3RvIDw9IE1BWF9UVExgCgojIEFyZ3VtZW50cwotIGBpbnN0YW5jZWAgLSBUVEwgY29uZmlnIGZvciBpbnN0YW5jZSBzdG9yYWdlCi0gYHBlcnNpc3RlbnRgIC0gVFRMIGNvbmZpZyBmb3IgcGVyc2lzdGVudCBzdG9yYWdlCgojIFBhbmljcwotIGBUdGxDb25maWdGcm96ZW5gIGlmIGNvbmZpZ3MgYXJlIGZyb3plbgotIGBJbnZhbGlkVHRsQ29uZmlnYCBpZiB2YWxpZGF0aW9uIGZhaWxzAAAAAA9zZXRfdHRsX2NvbmZpZ3MAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAACnBlcnNpc3RlbnQAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAASFJldHVybnMgdGhlIGN1cnJlbnQgVFRMIGNvbmZpZ3MgYXMgKGluc3RhbmNlX2NvbmZpZywgcGVyc2lzdGVudF9jb25maWcpLgAAAAt0dGxfY29uZmlncwAAAAAAAAAAAQAAA+0AAAACAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAOFQZXJtYW5lbnRseSBmcmVlemVzIFRUTCBjb25maWdzLCBwcmV2ZW50aW5nIGFueSBmdXR1cmUgbW9kaWZpY2F0aW9ucy4KClRoaXMgaXMgaXJyZXZlcnNpYmxlIGFuZCBwcm92aWRlcyBpbW11dGFiaWxpdHkgZ3VhcmFudGVlcyB0byB1c2Vycy4KRW1pdHMgYFR0bENvbmZpZ3NGcm96ZW5gIGV2ZW50LgoKIyBQYW5pY3MKLSBgVHRsQ29uZmlnQWxyZWFkeUZyb3plbmAgaWYgYWxyZWFkeSBmcm96ZW4AAAAAAAASZnJlZXplX3R0bF9jb25maWdzAAAAAAAAAAAAAAAAAAAAAAAnUmV0dXJucyB3aGV0aGVyIFRUTCBjb25maWdzIGFyZSBmcm96ZW4uAAAAABVpc190dGxfY29uZmlnc19mcm96ZW4AAAAAAAAAAAAAAQAAAAEAAAAAAAAApUV4dGVuZHMgdGhlIGluc3RhbmNlIFRUTC4KCiMgQXJndW1lbnRzCgoqIGB0aHJlc2hvbGRgIC0gVGhlIHRocmVzaG9sZCB0byBleHRlbmQgdGhlIFRUTCAoaWYgY3VycmVudCBUVEwgaXMgYmVsb3cgdGhpcywgZXh0ZW5kKS4KKiBgZXh0ZW5kX3RvYCAtIFRoZSBUVEwgdG8gZXh0ZW5kIHRvLgAAAAAAABNleHRlbmRfaW5zdGFuY2VfdHRsAAAAAAIAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAACWV4dGVuZF90bwAAAAAAAAQAAAAAAAAAAAAAAD5SZXR1cm5zIHRoZSBjdXJyZW50IG93bmVyIGFkZHJlc3MsIG9yIE5vbmUgaWYgbm8gb3duZXIgaXMgc2V0LgAAAAAABW93bmVyAAAAAAAAAAAAAAEAAAPoAAAAEwAAAAAAAABZUmV0dXJucyB0aGUgcGVuZGluZyBvd25lciBhZGRyZXNzIGZvciAyLXN0ZXAgdHJhbnNmZXIsIG9yIE5vbmUgaWYgbm8gdHJhbnNmZXIgaXMgcGVuZGluZy4AAAAAAAANcGVuZGluZ19vd25lcgAAAAAAAAAAAAABAAAD6AAAABMAAAAAAAABK1RyYW5zZmVycyBvd25lcnNoaXAgaW1tZWRpYXRlbHkgdG8gYSBuZXcgYWRkcmVzcy4KClVzZSB3aXRoIGNhdXRpb24gLSBpZiB5b3UgdHJhbnNmZXIgdG8gYSB3cm9uZyBhZGRyZXNzLCBvd25lcnNoaXAgaXMgbG9zdCBmb3JldmVyLgpDb25zaWRlciB1c2luZyBgcHJvcG9zZV9vd25lcnNoaXBfdHJhbnNmZXJgIGluc3RlYWQuCgojIFBhbmljcwotIGBPd25lck5vdFNldGAgaWYgbm8gb3duZXIgaXMgY3VycmVudGx5IHNldAotIGBUcmFuc2ZlckluUHJvZ3Jlc3NgIGlmIGEgMi1zdGVwIHRyYW5zZmVyIGlzIGluIHByb2dyZXNzAAAAABJ0cmFuc2Zlcl9vd25lcnNoaXAAAAAAAAEAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAAlxQcm9wb3NlcyBhbiBvd25lcnNoaXAgdHJhbnNmZXIgdG8gYSBuZXcgYWRkcmVzcy4KClRoZSBuZXcgb3duZXIgbXVzdCBjYWxsIGBhY2NlcHRfb3duZXJzaGlwKClgIHdpdGhpbiBgdHRsYCBsZWRnZXJzCnRvIGNvbXBsZXRlIHRoZSB0cmFuc2Zlci4gVGhlIHBlbmRpbmcgdHJhbnNmZXIgd2lsbCBhdXRvbWF0aWNhbGx5IGV4cGlyZSBhZnRlci4KCiMgQXJndW1lbnRzCi0gYG5ld19vd25lcmAgLSBUaGUgcHJvcG9zZWQgbmV3IG93bmVyCi0gYHR0bGAgLSBOdW1iZXIgb2YgbGVkZ2VycyB0aGUgbmV3IG93bmVyIGhhcyB0byBhY2NlcHQuClVzZSBgMGAgdG8gY2FuY2VsIGEgcGVuZGluZyB0cmFuc2ZlciAobmV3X293bmVyIG11c3QgbWF0Y2ggcGVuZGluZykuCgojIFBhbmljcwotIGBPd25lck5vdFNldGAgaWYgbm8gb3duZXIgaXMgY3VycmVudGx5IHNldAotIGBOb1BlbmRpbmdUcmFuc2ZlcmAgd2hlbiBjYW5jZWxsaW5nIGFuZCBubyBwZW5kaW5nIHRyYW5zZmVyIGV4aXN0cwotIGBJbnZhbGlkVHRsYCBpZiB0dGwgZXhjZWVkcyBtYXggVFRMCi0gYEludmFsaWRQZW5kaW5nT3duZXJgIHdoZW4gY2FuY2VsbGluZyB3aXRoIHdyb25nIG5ld19vd25lciBhZGRyZXNzAAAAGnByb3Bvc2Vfb3duZXJzaGlwX3RyYW5zZmVyAAAAAAACAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAN0dGwAAAAABAAAAAAAAAAAAAAAuUFjY2VwdHMgYSBwZW5kaW5nIDItc3RlcCBvd25lcnNoaXAgdHJhbnNmZXIuCgpNdXN0IGJlIGNhbGxlZCBieSB0aGUgcGVuZGluZyBvd25lciBiZWZvcmUgdGhlIFRUTCBleHBpcmVzLgoKIyBQYW5pY3MKLSBgTm9QZW5kaW5nVHJhbnNmZXJgIGlmIHRoZXJlIGlzIG5vIHBlbmRpbmcgdHJhbnNmZXIgKG9yIGl0IGV4cGlyZWQpAAAAAAAAEGFjY2VwdF9vd25lcnNoaXAAAAAAAAAAAAAAAAAAAACkUGVybWFuZW50bHkgcmVub3VuY2VzIG93bmVyc2hpcC4KCiMgUGFuaWNzCi0gYE93bmVyTm90U2V0YCBpZiBubyBvd25lciBpcyBjdXJyZW50bHkgc2V0Ci0gYFRyYW5zZmVySW5Qcm9ncmVzc2AgaWYgYSAyLXN0ZXAgdHJhbnNmZXIgaXMgaW4gcHJvZ3Jlc3MgKGNhbmNlbCBpdCBmaXJzdCkAAAAScmVub3VuY2Vfb3duZXJzaGlwAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAA1FbmRwb2ludEVycm9yAAAAAAAAGQAAAAAAAAARQWxyZWFkeVJlZ2lzdGVyZWQAAAAAAAABAAAAAAAAAA1Db21wb3NlRXhpc3RzAAAAAAAAAgAAAAAAAAAPQ29tcG9zZU5vdEZvdW5kAAAAAAMAAAAAAAAAHERlZmF1bHRSZWNlaXZlTGliVW5hdmFpbGFibGUAAAAEAAAAAAAAABlEZWZhdWx0U2VuZExpYlVuYXZhaWxhYmxlAAAAAAAABQAAAAAAAAAVSW5zdWZmaWNpZW50TmF0aXZlRmVlAAAAAAAABgAAAAAAAAASSW5zdWZmaWNpZW50WnJvRmVlAAAAAAAHAAAAAAAAABBJbnZhbGlkRmVlQW1vdW50AAAACAAAAAAAAAANSW52YWxpZEV4cGlyeQAAAAAAAAkAAAAAAAAADEludmFsaWRJbmRleAAAAAoAAAAAAAAADEludmFsaWROb25jZQAAAAsAAAAAAAAAEkludmFsaWRQYXlsb2FkSGFzaAAAAAAADAAAAAAAAAAVSW52YWxpZFJlY2VpdmVMaWJyYXJ5AAAAAAAADQAAAAAAAAART25seU5vbkRlZmF1bHRMaWIAAAAAAAAOAAAAAAAAAA5Pbmx5UmVjZWl2ZUxpYgAAAAAADwAAAAAAAAART25seVJlZ2lzdGVyZWRMaWIAAAAAAAAQAAAAAAAAAAtPbmx5U2VuZExpYgAAAAARAAAAAAAAABRQYXRoTm90SW5pdGlhbGl6YWJsZQAAABIAAAAAAAAAEVBhdGhOb3RWZXJpZmlhYmxlAAAAAAAAEwAAAAAAAAATUGF5bG9hZEhh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AABNU291cmNlIG1lc3NhZ2UgaW5mb3JtYXRpb24gaWRlbnRpZnlpbmcgd2hlcmUgYSBjcm9zcy1jaGFpbiBtZXNzYWdlIGNhbWUgZnJvbS4AAAAAAAAAAAAABk9yaWdpbgAAAAAAAwAAABdOb25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAAFbm9uY2UAAAAAAAAGAAAALlNlbmRlciBhZGRyZXNzIG9uIHRoZSBzb3VyY2UgY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAZzZW5kZXIAAAAAA+4AAAAgAAAAJlNvdXJjZSBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAAChGZWUgc3RydWN0dXJlIGZvciBjcm9zcy1jaGFpbiBtZXNzYWdpbmcuAAAAAAAAAAxNZXNzYWdpbmdGZWUAAAACAAAAH0ZlZSBwYWlkIGluIG5hdGl2ZSB0b2tlbiAoWExNKS4AAAAACm5hdGl2ZV9mZWUAAAAAAAsAAAAoRmVlIHBhaWQgaW4gWlJPIHRva2VuIChMYXllclplcm8gdG9rZW4pLgAAAAd6cm9fZmVlAAAAAAsAAAABAAAAQlJlY2VpcHQgcmV0dXJuZWQgYWZ0ZXIgc3VjY2Vzc2Z1bGx5IHNlbmRpbmcgYSBjcm9zcy1jaGFpbiBtZXNzYWdlLgAAAAAAAAAAABBNZXNzYWdpbmdSZWNlaXB0AAAAAwAAAClUaGUgZmVlcyBjaGFyZ2VkIGZvciBzZW5kaW5nIHRoZSBtZXNzYWdlLgAAAAAAAANmZWUAAAAH0AAAAAxNZXNzYWdpbmdGZWUAAAArR2xvYmFsbHkgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBtZXNzYWdlLgAAAAAEZ3VpZAAAA+4AAAAgAAAAJFRoZSBvdXRib3VuZCBub25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAVub25jZQAAAAAAAAYAAAACAAAAOFR5cGUgb2YgbWVzc2FnZSBsaWJyYXJ5IGluZGljYXRpbmcgc3VwcG9ydGVkIG9wZXJhdGlvbnMuAAAAAAAAAA5NZXNzYWdlTGliVHlwZQAAAAAAAwAAAAAAAAAfU3VwcG9ydHMgb25seSBzZW5kaW5nIG1lc3NhZ2VzLgAAAAAEU2VuZAAAAAAAAAAhU3VwcG9ydHMgb25seSByZWNlaXZpbmcgbWVzc2FnZXMuAAAAAAAAB1JlY2VpdmUAAAAAAAAAAC1TdXBwb3J0cyBib3RoIHNlbmRpbmcgYW5kIHJlY2VpdmluZyBtZXNzYWdlcy4AAAAAAAAOU2VuZEFuZFJlY2VpdmUAAAAAAAEAAAC3VmVyc2lvbiBpbmZvcm1hdGlvbiBmb3IgYSBtZXNzYWdlIGxpYnJhcnkuCgpOb3RlOiBgbWlub3JgIGFuZCBgZW5kcG9pbnRfdmVyc2lvbmAgdXNlIGB1MzJgIGluc3RlYWQgb2YgYHU4YCBiZWNhdXNlIFN0ZWxsYXIgZG9lcyBub3QKc3VwcG9ydCBgdThgIHR5cGVzIGluIGNvbnRyYWN0IGludGVyZmFjZSBmdW5jdGlvbnMuAAAAAAAAAAARTWVzc2FnZUxpYlZlcnNpb24AAAAAAAADAAAAM0VuZHBvaW50IHZlcnNpb24gKHNob3VsZCBub3QgZXhjZWVkIHU4OjpNQVggPSAyNTUpLgAAAAAQZW5kcG9pbnRfdmVyc2lvbgAAAAQAAAAVTWFqb3IgdmVyc2lvbiBudW1iZXIuAAAAAAAABW1ham9yAAAAAAAABgAAADdNaW5vciB2ZXJzaW9uIG51bWJlciAoc2hvdWxkIG5vdCBleGNlZWQgdTg6Ok1BWCA9IDI1NSkuAAAAAAVtaW5vcgAAAAAAAAQAAAABAAAANlRpbWVvdXQgY29uZmlndXJhdGlvbiBmb3IgcmVjZWl2ZSBsaWJyYXJ5IHRyYW5zaXRpb25zLgAAAAAAAAAAAAdUaW1lb3V0AAAAAAIAAAAoVW5peCB0aW1lc3RhbXAgd2hlbiB0aGUgdGltZW91dCBleHBpcmVzLgAAAAZleHBpcnkAAAAAAAYAAAApVGhlIG5ldyBsaWJyYXJ5IGFkZHJlc3MgdG8gdHJhbnNpdGlvbiB0by4AAAAAAAADbGliAAAAABMAAAABAAAANVBhcmFtZXRlcnMgZm9yIHNldHRpbmcgbWVzc2FnZSBsaWJyYXJ5IGNvbmZpZ3VyYXRpb24uAAAAAAAAAAAAAA5TZXRDb25maWdQYXJhbQAAAAAAAwAAAB9YRFItZW5jb2RlZCBjb25maWd1cmF0aW9uIGRhdGEuAAAAAAZjb25maWcAAAAAAA4AAAAwVGhlIHR5cGUgb2YgY29uZmlndXJhdGlvbiAoZS5nLiwgZXhlY3V0b3IsIFVMTikuAAAAC2NvbmZpZ190eXBlAAAAAAQAAAAnVGhlIGVuZHBvaW50IElEIHRoaXMgY29uZmlnIGFwcGxpZXMgdG8uAAAAAANlaWQAAAAABAAAAAEAAAAxUmVzb2x2ZWQgbGlicmFyeSBpbmZvcm1hdGlvbiB3aXRoIGRlZmF1bHQgc3RhdHVzLgAAAAAAAAAAAAAPUmVzb2x2ZWRMaWJyYXJ5AAAAAAIAAABEV2hldGhlciB0aGlzIGlzIHRoZSBkZWZhdWx0IGxpYnJhcnkgKHRydWUpIG9yIE9BcHAtc3BlY2lmaWMgKGZhbHNlKS4AAAAKaXNfZGVmYXVsdAAAAAAAAQAAAB1UaGUgcmVzb2x2ZWQgbGlicmFyeSBhZGRyZXNzLgAAAAAAAANsaWIAAAAAEwAAAAEAAABIT3V0Ym91bmQgcGFja2V0IGNvbnRhaW5pbmcgYWxsIGluZm9ybWF0aW9uIGZvciBjcm9zcy1jaGFpbiB0cmFuc21pc3Npb24uAAAAAAAAAA5PdXRib3VuZFBhY2tldAAAAAAABwAAABhEZXN0aW5hdGlvbiBlbmRwb2ludCBJRC4AAAAHZHN0X2VpZAAAAAAEAAAALEdsb2JhbGx5IHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIG1lc3NhZ2UuAAAABGd1aWQAAAPuAAAAIAAAABRUaGUgbWVzc2FnZSBwYXlsb2FkLgAAAAdtZXNzYWdlAAAAAA4AAAAgT3V0Ym91bmQgbm9uY2UgZm9yIHRoaXMgcGF0aHdheS4AAAAFbm9uY2UAAAAAAAAGAAAAMVJlY2VpdmVyIGFkZHJlc3Mgb24gZGVzdGluYXRpb24gY2hhaW4gKDMyIGJ5dGVzKS4AAAAAAAAIcmVjZWl2ZXIAAAPuAAAAIAAAAB9TZW5kZXIgYWRkcmVzcyBvbiBzb3VyY2UgY2hhaW4uAAAAAAZzZW5kZXIAAAAAABMAAAATU291cmNlIGVuZHBvaW50IElELgAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAACtBIGZlZSByZWNpcGllbnQgd2l0aCB0aGUgYW1vdW50IHRvIGJlIHBhaWQuAAAAAAAAAAAMRmVlUmVjaXBpZW50AAAAAgAAABVBbW91bnQgb2YgZmVlIHRvIHBheS4AAAAAAAAGYW1vdW50AAAAAAALAAAAH1RoZSBhZGRyZXNzIHRvIHNlbmQgdGhlIGZlZSB0by4AAAAAAnRvAAAAAAATAAAAAQAAADxSZXN1bHQgb2Ygc2VuZCBvcGVyYXRpb24gY29udGFpbmluZyBmZWVzIGFuZCBlbmNvZGVkIHBhY2tldC4AAAAAAAAADUZlZXNBbmRQYWNrZXQAAAAAAAADAAAAKlRoZSBlbmNvZGVkIHBhY2tldCByZWFkeSBmb3IgdHJhbnNtaXNzaW9uLgAAAAAADmVuY29kZWRfcGFja2V0AAAAAAAOAAAAP0xpc3Qgb2YgbmF0aXZlIHRva2VuIGZlZSByZWNpcGllbnRzIChleGVjdXRvciwgRFZOcywgdHJlYXN1cnkpLgAAAAAVbmF0aXZlX2ZlZV9yZWNpcGllbnRzAAAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAALExpc3Qgb2YgWlJPIHRva2VuIGZlZSByZWNpcGllbnRzICh0cmVhc3VyeSkuAAAAEnpyb19mZWVfcmVjaXBpZW50cwAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAABAAAABRPQXBwRXJyb3I6IDIwMDAtMjA5OQAAAAAAAAAJT0FwcEVycm9yAAAAAAAABAAAAAAAAAAOSW52YWxpZE9wdGlvbnMAAAAAB9AAAAAAAAAABk5vUGVlcgAAAAAH0QAAAAAAAAAIT25seVBlZXIAAAfSAAAAAAAAABNacm9Ub2tlblVuYXZhaWxhYmxlAAAAB9MAAAACAAAAAAAAAAAAAAAPT0FwcENvcmVTdG9yYWdlAAAAAAIAAAAAAAAAAAAAAAhFbmRwb2ludAAAAAEAAAAAAAAABFBlZXIAAAABAAAABAAAAAUAAAAAAAAAAAAAAAdQZWVyU2V0AAAAAAEAAAAIcGVlcl9zZXQAAAACAAAAAAAAAANlaWQAAAAABAAAAAAAAAAAAAAABHBlZXIAAAPoAAAD7gAAACAAAAAAAAAAAgAAAAEAAAAAAAAAAAAAABNFbmZvcmNlZE9wdGlvblBhcmFtAAAAAAMAAAAAAAAAA2VpZAAAAAAEAAAAAAAAAAhtc2dfdHlwZQAAAAQAAAAAAAAAB29wdGlvbnMAAAAADgAAAAIAAAAAAAAAAAAAABdPQXBwT3B0aW9uc1R5cGUzU3RvcmFnZQAAAAABAAAAAQAAAAAAAAAPRW5mb3JjZWRPcHRpb25zAAAAAAIAAAAEAAAABAAAAAUAAAAAAAAAAAAAABFFbmZvcmNlZE9wdGlvblNldAAAAAAAAAEAAAATZW5mb3JjZWRfb3B0aW9uX3NldAAAAAABAAAAAAAAABZlbmZvcmNlZF9vcHRpb25fcGFyYW1zAAAAAAPqAAAH0AAAABNFbmZvcmNlZE9wdGlvblBhcmFtAAAAAAAAAAACAAAABAAAABxCdWZmZXJSZWFkZXJFcnJvcjogMTAwMC0xMDA5AAAAAAAAABFCdWZmZXJSZWFkZXJFcnJvcgAAAAAAAAIAAAAAAAAADUludmFsaWRMZW5ndGgAAAAAAAPoAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPpAAAABAAAABxCdWZmZXJXcml0ZXJFcnJvcjogMTAxMC0xMDE5AAAAAAAAABFCdWZmZXJXcml0ZXJFcnJvcgAAAAAAAAEAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA/IAAAAEAAAAH1R0bENvbmZpZ3VyYWJsZUVycm9yOiAxMDIwLTEwMjkAAAAAAAAAABRUdGxDb25maWd1cmFibGVFcnJvcgAAAAMAAAAAAAAAEEludmFsaWRUdGxDb25maWcAAAP8AAAAAAAAAA9UdGxDb25maWdGcm96ZW4AAAAD/QAAAAAAAAAWVHRsQ29uZmlnQWxyZWFkeUZyb3plbgAAAAAD/gAAAAQAAAAXT3duYWJsZUVycm9yOiAxMDMwLTEwMzkAAAAAAAAAAAxPd25hYmxlRXJyb3IAAAAGAAAAAAAAABNJbnZhbGlkUGVuZGluZ093bmVyAAAABAYAAAAAAAAACkludmFsaWRUdGwAAAAABAcAAAAAAAAAEU5vUGVuZGluZ1RyYW5zZmVyAAAAAAAECAAAAAAAAAAPT3duZXJBbHJlYWR5U2V0AAAABAkAAAAAAAAAC093bmVyTm90U2V0AAAABAoAAAAAAAAAElRyYW5zZmVySW5Qcm9ncmVzcwAAAAAECwAAAAQAAAAYQnl0ZXNFeHRFcnJvcjogMTA0MC0xMDQ5AAAAAAAAAA1CeXRlc0V4dEVycm9yAAAAAAAAAQAAAAAAAAAOTGVuZ3RoTWlzbWF0Y2gAAAAABBAAAAAEAAAAG1VwZ3JhZGVhYmxlRXJyb3I6IDEwNTAtMTA1OQAAAAAAAAAAEFVwZ3JhZGVhYmxlRXJyb3IAAAADAAAAAAAAABRJbnZhbGlkTWlncmF0aW9uRGF0YQAABBoAAAAAAAAAE01pZ3JhdGlvbk5vdEFsbG93ZWQAAAAEGwAAAAAAAAAOVXBncmFkZXNGcm96ZW4AAAAABBwAAAAEAAAAGE11bHRpc2lnRXJyb3I6IDEwNjAtMTA2OQAAAAAAAAANTXVsdGlzaWdFcnJvcgAAAAAAAAgAAAAAAAAAEkFscmVhZHlJbml0aWFsaXplZAAAAAAEJAAAAAAAAAANSW52YWxpZFNpZ25lcgAAAAAABCUAAAAAAAAADlNpZ25hdHVyZUVycm9yAAAAAAQmAAAAAAAAABNTaWduZXJBbHJlYWR5RXhpc3RzAAAABCcAAAAAAAAADlNpZ25lck5vdEZvdW5kAAAAAAQoAAAAAAAAAB1Ub3RhbFNpZ25lcnNMZXNzVGhhblRocmVzaG9sZAAAAAAABCkAAAAAAAAAD1Vuc29ydGVkU2lnbmVycwAAAAQqAAAAAAAAAA1aZXJvVGhyZXNob2xkAAAAAAAEKwAAAAUAAAAwRXZlbnQgZW1pdHRlZCB3aGVuIGEgc2lnbmVyIGlzIGFkZGVkIG9yIHJlbW92ZWQuAAAAAAAAAAlTaWduZXJTZXQAAAAAAAABAAAACnNpZ25lcl9zZXQAAAAAAAIAAAAAAAAABnNpZ25lcgAAAAAD7gAAABQAAAABAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAgAAAAUAAAA2RXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkIGlzIGNoYW5nZWQuAAAAAAAAAAAADFRocmVzaG9sZFNldAAAAAEAAAANdGhyZXNob2xkX3NldAAAAAAAAAEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA9NdWx0aXNpZ1N0b3JhZ2UAAAAAAgAAAAAAAAAAAAAAB1NpZ25lcnMAAAAAAAAAAAAAAAAJVGhyZXNob2xkAAAAAAAABQAAAFdFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkIChib3RoIHNpbmdsZS1zdGVwIGFuZCB0d28tc3RlcCBjb21wbGV0aW9uKS4AAAAAAAAAABRPd25lcnNoaXBUcmFuc2ZlcnJlZAAAAAEAAAAVb3duZXJzaGlwX3RyYW5zZmVycmVkAAAAAAAAAgAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAgAAAAUAAAA7RXZlbnQgZW1pdHRlZCB3aGVuIGEgMi1zdGVwIG93bmVyc2hpcCB0cmFuc2ZlciBpcyBwcm9wb3NlZC4AAAAAAAAAABVPd25lcnNoaXBUcmFuc2ZlcnJpbmcAAAAAAAABAAAAFm93bmVyc2hpcF90cmFuc2ZlcnJpbmcAAAAAAAMAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAAAAAADdHRsAAAAAAQAAAAAAAAAAgAAAAUAAAAqRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyByZW5vdW5jZWQuAAAAAAAAAAAAEk93bmVyc2hpcFJlbm91bmNlZAAAAAAAAQAAABNvd25lcnNoaXBfcmVub3VuY2VkAAAAAAEAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA5Pd25hYmxlU3RvcmFnZQAAAAAAAgAAAAAAAAAAAAAABU93bmVyAAAAAAAAAAAAAAAAAAAMUGVuZGluZ093bmVyAAAAAQAAAElUVEwgY29uZmlndXJhdGlvbjogdGhyZXNob2xkICh3aGVuIHRvIGV4dGVuZCkgYW5kIGV4dGVuZF90byAodGFyZ2V0IFRUTCkuAAAAAAAAAAAAAAlUdGxDb25maWcAAAAAAAACAAAAKFRhcmdldCBUVEwgYWZ0ZXIgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAJZXh0ZW5kX3RvAAAAAAAABAAAADNUVEwgdGhyZXNob2xkIHRoYXQgdHJpZ2dlcnMgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAACXRocmVzaG9sZAAAAAAAAAQAAAAFAAAAJ0V2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgc2V0LgAAAAAAAAAADVR0bENvbmZpZ3NTZXQAAAAAAAABAAAAD3R0bF9jb25maWdzX3NldAAAAAACAAAAAAAAAAhpbnN0YW5jZQAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAACnBlcnNpc3RlbnQAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAACAAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAAAAAAAAQVHRsQ29uZmlnc0Zyb3plbgAAAAEAAAASdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAABBUdGxDb25maWdTdG9yYWdlAAAAAwAAAAAAAAAAAAAABkZyb3plbgAAAAAAAAAAAAAAAAAISW5zdGFuY2UAAAAAAAAAAAAAAApQZXJzaXN0ZW50AAAAAAACAAAAAAAAAAAAAAASVXBncmFkZWFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAlNaWdyYXRpbmcAAAAAHhFjb250cmFjdGVudm1ldGF2MAAAAAAAAAAXAAAAAABvDmNvbnRyYWN0bWV0YXYwAAAAAAAAAAVyc3ZlcgAAAAAAAAYxLjkwLjAAAAAAAAAAAAAIcnNzZGt2ZXIAAAAvMjMuNC4wIzY3M2Q2YzRmMjM2OGQyODJkMjVkYTI5YmRhNTVjMjFiOGJlNjljYTYA";
12
+ /**
13
+ * Pre-computed WASM hash (SHA-256)
14
+ * Use this when the WASM is already uploaded on-chain
15
+ */
16
+ export declare const WASM_HASH = "4b2f912a1752b17f4f44def177a2ee391423e3462c1bdb97d6364e71ebe5f66c";
17
+ /**
18
+ * Get the WASM bytecode as a Buffer
19
+ * Use this to upload the WASM to the network
20
+ */
21
+ export declare function getWasmBuffer(): Buffer;
8
22
  export declare const CounterError: {
9
23
  1: {
10
24
  message: string;
@@ -405,6 +419,18 @@ export declare const OwnableError: {
405
419
  1031: {
406
420
  message: string;
407
421
  };
422
+ 1032: {
423
+ message: string;
424
+ };
425
+ 1033: {
426
+ message: string;
427
+ };
428
+ 1034: {
429
+ message: string;
430
+ };
431
+ 1035: {
432
+ message: string;
433
+ };
408
434
  };
409
435
  /**
410
436
  * BytesExtError: 1040-1049
@@ -421,6 +447,12 @@ export declare const UpgradeableError: {
421
447
  1050: {
422
448
  message: string;
423
449
  };
450
+ 1051: {
451
+ message: string;
452
+ };
453
+ 1052: {
454
+ message: string;
455
+ };
424
456
  };
425
457
  /**
426
458
  * MultisigError: 1060-1069
@@ -461,6 +493,9 @@ export type MultisigStorage = {
461
493
  export type OwnableStorage = {
462
494
  tag: "Owner";
463
495
  values: void;
496
+ } | {
497
+ tag: "PendingOwner";
498
+ values: void;
464
499
  };
465
500
  /**
466
501
  * TTL configuration: threshold (when to extend) and extend_to (target TTL).
@@ -486,6 +521,9 @@ export type TtlConfigStorage = {
486
521
  values: void;
487
522
  };
488
523
  export type UpgradeableStorage = {
524
+ tag: "Frozen";
525
+ values: void;
526
+ } | {
489
527
  tag: "Migrating";
490
528
  values: void;
491
529
  };
@@ -1170,9 +1208,34 @@ export interface Client {
1170
1208
  */
1171
1209
  simulate?: boolean;
1172
1210
  }) => Promise<AssembledTransaction<Option<string>>>;
1211
+ /**
1212
+ * 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.
1213
+ * Returns the pending owner address for 2-step transfer, or None if no transfer is pending.
1214
+ */
1215
+ pending_owner: (txnOptions?: {
1216
+ /**
1217
+ * The fee to pay for the transaction. Default: BASE_FEE
1218
+ */
1219
+ fee?: number;
1220
+ /**
1221
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1222
+ */
1223
+ timeoutInSeconds?: number;
1224
+ /**
1225
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1226
+ */
1227
+ simulate?: boolean;
1228
+ }) => Promise<AssembledTransaction<Option<string>>>;
1173
1229
  /**
1174
1230
  * 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.
1175
- * Transfers ownership to a new address. Requires current owner authorization.
1231
+ * Transfers ownership immediately to a new address.
1232
+ *
1233
+ * Use with caution - if you transfer to a wrong address, ownership is lost forever.
1234
+ * Consider using `propose_ownership_transfer` instead.
1235
+ *
1236
+ * # Panics
1237
+ * - `OwnerNotSet` if no owner is currently set
1238
+ * - `TransferInProgress` if a 2-step transfer is in progress
1176
1239
  */
1177
1240
  transfer_ownership: ({ new_owner }: {
1178
1241
  new_owner: string;
@@ -1190,9 +1253,71 @@ export interface Client {
1190
1253
  */
1191
1254
  simulate?: boolean;
1192
1255
  }) => Promise<AssembledTransaction<null>>;
1256
+ /**
1257
+ * 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.
1258
+ * Proposes an ownership transfer to a new address.
1259
+ *
1260
+ * The new owner must call `accept_ownership()` within `ttl` ledgers
1261
+ * to complete the transfer. The pending transfer will automatically expire after.
1262
+ *
1263
+ * # Arguments
1264
+ * - `new_owner` - The proposed new owner
1265
+ * - `ttl` - Number of ledgers the new owner has to accept.
1266
+ * Use `0` to cancel a pending transfer (new_owner must match pending).
1267
+ *
1268
+ * # Panics
1269
+ * - `OwnerNotSet` if no owner is currently set
1270
+ * - `NoPendingTransfer` when cancelling and no pending transfer exists
1271
+ * - `InvalidTtl` if ttl exceeds max TTL
1272
+ * - `InvalidPendingOwner` when cancelling with wrong new_owner address
1273
+ */
1274
+ propose_ownership_transfer: ({ new_owner, ttl }: {
1275
+ new_owner: string;
1276
+ ttl: u32;
1277
+ }, txnOptions?: {
1278
+ /**
1279
+ * The fee to pay for the transaction. Default: BASE_FEE
1280
+ */
1281
+ fee?: number;
1282
+ /**
1283
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1284
+ */
1285
+ timeoutInSeconds?: number;
1286
+ /**
1287
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1288
+ */
1289
+ simulate?: boolean;
1290
+ }) => Promise<AssembledTransaction<null>>;
1291
+ /**
1292
+ * 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.
1293
+ * Accepts a pending 2-step ownership transfer.
1294
+ *
1295
+ * Must be called by the pending owner before the TTL expires.
1296
+ *
1297
+ * # Panics
1298
+ * - `NoPendingTransfer` if there is no pending transfer (or it expired)
1299
+ */
1300
+ accept_ownership: (txnOptions?: {
1301
+ /**
1302
+ * The fee to pay for the transaction. Default: BASE_FEE
1303
+ */
1304
+ fee?: number;
1305
+ /**
1306
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1307
+ */
1308
+ timeoutInSeconds?: number;
1309
+ /**
1310
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1311
+ */
1312
+ simulate?: boolean;
1313
+ }) => Promise<AssembledTransaction<null>>;
1193
1314
  /**
1194
1315
  * 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.
1195
- * Permanently renounces ownership. Requires current owner authorization.
1316
+ * Permanently renounces ownership.
1317
+ *
1318
+ * # Panics
1319
+ * - `OwnerNotSet` if no owner is currently set
1320
+ * - `TransferInProgress` if a 2-step transfer is in progress (cancel it first)
1196
1321
  */
1197
1322
  renounce_ownership: (txnOptions?: {
1198
1323
  /**
@@ -1258,7 +1383,10 @@ export declare class Client extends ContractClient {
1258
1383
  is_ttl_configs_frozen: (json: string) => AssembledTransaction<boolean>;
1259
1384
  extend_instance_ttl: (json: string) => AssembledTransaction<null>;
1260
1385
  owner: (json: string) => AssembledTransaction<Option<string>>;
1386
+ pending_owner: (json: string) => AssembledTransaction<Option<string>>;
1261
1387
  transfer_ownership: (json: string) => AssembledTransaction<null>;
1388
+ propose_ownership_transfer: (json: string) => AssembledTransaction<null>;
1389
+ accept_ownership: (json: string) => AssembledTransaction<null>;
1262
1390
  renounce_ownership: (json: string) => AssembledTransaction<null>;
1263
1391
  };
1264
1392
  }