@layerzerolabs/protocol-stellar-v2 0.2.15 → 0.2.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/.turbo/turbo-build.log +365 -297
  2. package/.turbo/turbo-lint.log +142 -110
  3. package/.turbo/turbo-test.log +1273 -1222
  4. package/Cargo.lock +20 -5
  5. package/Cargo.toml +4 -1
  6. package/contracts/ERROR_SPEC.md +44 -0
  7. package/contracts/common-macros/src/auth.rs +113 -0
  8. package/contracts/common-macros/src/contract_ttl.rs +84 -0
  9. package/contracts/common-macros/src/lib.rs +181 -30
  10. package/contracts/common-macros/src/lz_contract.rs +83 -0
  11. package/contracts/common-macros/src/tests/{ownable.rs → auth.rs} +48 -15
  12. package/contracts/common-macros/src/tests/contract_ttl.rs +662 -0
  13. package/contracts/common-macros/src/tests/mod.rs +2 -2
  14. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_multisig_code.snap +20 -0
  15. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_ownable_code.snap +24 -0
  16. package/contracts/common-macros/src/tests/snapshots/{common_macros__tests__ownable__snapshot_only_owner_preserves_function_signature.snap → common_macros__tests__auth__snapshot_only_auth_preserves_function_signature.snap} +4 -4
  17. package/contracts/common-macros/src/tests/snapshots/{common_macros__tests__contract_impl__snapshot_generated_contract_impl_code.snap → common_macros__tests__contract_ttl__snapshot_generated_contractimpl_code.snap} +3 -3
  18. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_ttl__snapshot_generated_contracttrait_code.snap +69 -0
  19. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_configurable__snapshot_generated_ttl_configurable_code.snap +7 -21
  20. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +2 -2
  21. package/contracts/common-macros/src/ttl_configurable.rs +19 -34
  22. package/contracts/common-macros/src/ttl_extendable.rs +36 -0
  23. package/contracts/common-macros/src/upgradeable.rs +5 -5
  24. package/contracts/common-macros/src/utils.rs +9 -0
  25. package/contracts/endpoint-v2/src/constants.rs +4 -4
  26. package/contracts/endpoint-v2/src/endpoint_v2.rs +38 -40
  27. package/contracts/endpoint-v2/src/errors.rs +4 -3
  28. package/contracts/endpoint-v2/src/events.rs +1 -1
  29. package/contracts/endpoint-v2/src/message_lib_manager.rs +18 -5
  30. package/contracts/endpoint-v2/src/messaging_channel.rs +11 -1
  31. package/contracts/endpoint-v2/src/messaging_composer.rs +11 -1
  32. package/contracts/endpoint-v2/src/storage.rs +1 -1
  33. package/contracts/endpoint-v2/src/tests/endpoint_v2/pay_messaging_fees.rs +3 -3
  34. package/contracts/endpoint-v2/src/tests/endpoint_v2/quote.rs +1 -1
  35. package/contracts/endpoint-v2/src/tests/endpoint_v2/require_oapp_auth.rs +2 -2
  36. package/contracts/endpoint-v2/src/tests/endpoint_v2/send.rs +3 -3
  37. package/contracts/endpoint-v2/src/tests/endpoint_v2/set_zro.rs +4 -4
  38. package/contracts/endpoint-v2/src/tests/message_lib_manager/require_receive_lib_for_eid.rs +3 -3
  39. package/contracts/endpoint-v2/src/tests/message_lib_manager/require_registered.rs +1 -1
  40. package/contracts/endpoint-v2/src/tests/message_lib_manager/require_send_lib_for_eid.rs +3 -3
  41. package/contracts/endpoint-v2/src/tests/message_lib_manager/require_supported_eid.rs +1 -1
  42. package/contracts/endpoint-v2/src/tests/messaging_channel/clear_payload.rs +4 -4
  43. package/contracts/endpoint-v2/src/tests/messaging_channel/inbound.rs +1 -1
  44. package/contracts/layerzero-views/src/layerzero_view.rs +3 -6
  45. package/contracts/macro-integration-tests/tests/runtime/ownable/mod.rs +2 -2
  46. package/contracts/macro-integration-tests/tests/runtime/ownable/{only_owner_guard.rs → only_auth_guard.rs} +1 -1
  47. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/configuration.rs +1 -1
  48. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/freeze.rs +1 -1
  49. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/mod.rs +0 -1
  50. package/contracts/macro-integration-tests/tests/ui/ownable/fail/{only_owner_missing_env.rs → only_auth_missing_env.rs} +3 -3
  51. package/contracts/macro-integration-tests/tests/ui/ownable/fail/{only_owner_missing_env.stderr → only_auth_missing_env.stderr} +4 -4
  52. package/contracts/macro-integration-tests/tests/ui/ownable/pass/namespacing_and_imports.rs +2 -3
  53. package/contracts/macro-integration-tests/tests/ui/ownable/pass/{only_owner_env_param_variants.rs → only_auth_env_param_variants.rs} +9 -9
  54. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/pass/minimal_contract.rs +6 -6
  55. package/contracts/message-libs/message-lib-common/src/errors.rs +7 -2
  56. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/decode_packet_header.rs +3 -3
  57. package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_lz_receive_option.rs +1 -2
  58. package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_native_drop_option.rs +1 -2
  59. package/contracts/message-libs/message-lib-common/src/tests/worker_options/convert_legacy_options.rs +9 -9
  60. package/contracts/message-libs/message-lib-common/src/tests/worker_options/extract_type_3_options.rs +1 -1
  61. package/contracts/message-libs/message-lib-common/src/tests/worker_options/left_pad_to_bytes32.rs +1 -1
  62. package/contracts/message-libs/message-lib-common/src/tests/worker_options/split_worker_options.rs +2 -2
  63. package/contracts/message-libs/simple-message-lib/src/simple_message_lib.rs +7 -9
  64. package/contracts/message-libs/treasury/src/errors.rs +2 -2
  65. package/contracts/message-libs/treasury/src/events.rs +1 -1
  66. package/contracts/message-libs/treasury/src/interfaces/zro_fee_lib.rs +2 -2
  67. package/contracts/message-libs/treasury/src/storage.rs +1 -1
  68. package/contracts/message-libs/treasury/src/tests/treasury_tests.rs +1 -1
  69. package/contracts/message-libs/treasury/src/treasury.rs +14 -16
  70. package/contracts/message-libs/uln-302/src/receive_uln.rs +13 -2
  71. package/contracts/message-libs/uln-302/src/send_uln.rs +24 -4
  72. package/contracts/message-libs/uln-302/src/uln302.rs +6 -24
  73. package/contracts/oapps/counter/Cargo.toml +14 -1
  74. package/contracts/oapps/counter/integration_tests/mod.rs +4 -1
  75. package/contracts/oapps/counter/integration_tests/{setup.rs → setup_sml.rs} +48 -80
  76. package/contracts/oapps/counter/integration_tests/setup_uln.rs +997 -0
  77. package/contracts/oapps/counter/integration_tests/signing.rs +62 -0
  78. package/contracts/oapps/counter/integration_tests/test_with_sml.rs +24 -55
  79. package/contracts/oapps/counter/integration_tests/test_with_uln.rs +314 -0
  80. package/contracts/oapps/counter/integration_tests/utils.rs +196 -53
  81. package/contracts/oapps/counter/src/counter.rs +67 -43
  82. package/contracts/oapps/counter/src/tests/mod.rs +0 -13
  83. package/contracts/oapps/counter/src/tests/test_counter.rs +5 -7
  84. package/contracts/oapps/oapp/src/errors.rs +5 -1
  85. package/contracts/oapps/oapp/src/macro_tests/test_macros.rs +93 -78
  86. package/contracts/oapps/oapp/src/oapp_core.rs +36 -21
  87. package/contracts/oapps/oapp/src/oapp_options_type3.rs +48 -12
  88. package/contracts/oapps/oapp/src/oapp_receiver.rs +106 -41
  89. package/contracts/oapps/oapp/src/oapp_sender.rs +26 -34
  90. package/contracts/oapps/oapp/src/tests/test_oapp_core.rs +9 -8
  91. package/contracts/oapps/oapp/src/tests/test_oapp_options_type3.rs +25 -17
  92. package/contracts/oapps/oapp/src/tests/test_oapp_receiver.rs +7 -7
  93. package/contracts/oapps/oapp/src/tests/test_oapp_sender.rs +14 -15
  94. package/contracts/oapps/oapp-macros/src/generators.rs +128 -0
  95. package/contracts/oapps/oapp-macros/src/lib.rs +113 -56
  96. package/contracts/oapps/oft/Cargo.toml +10 -7
  97. package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_oft_fee.rs +3 -4
  98. package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_pausable.rs +2 -3
  99. package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/test_rate_limiter.rs +1 -1
  100. package/contracts/oapps/oft/integration-tests/mod.rs +1 -1
  101. package/contracts/oapps/oft/integration-tests/setup.rs +29 -110
  102. package/contracts/oapps/oft/integration-tests/utils.rs +254 -21
  103. package/contracts/oapps/oft/src/extensions/oft_fee.rs +13 -14
  104. package/contracts/oapps/oft/src/extensions/pausable.rs +4 -4
  105. package/contracts/oapps/oft/src/extensions/rate_limiter.rs +5 -5
  106. package/contracts/oapps/oft/src/lib.rs +11 -13
  107. package/contracts/oapps/oft/src/oft.rs +147 -225
  108. package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +9 -13
  109. package/contracts/oapps/oft/src/oft_types/mint_burn.rs +31 -14
  110. package/contracts/oapps/oft/src/oft_types/mod.rs +13 -0
  111. package/contracts/oapps/{oft-std → oft-core}/Cargo.toml +6 -4
  112. package/contracts/oapps/{oft-std → oft-core}/integration-tests/mod.rs +1 -1
  113. package/contracts/oapps/{oft-std → oft-core}/integration-tests/setup.rs +129 -30
  114. package/contracts/oapps/{oft → oft-core}/integration-tests/test_with_sml.rs +3 -3
  115. package/contracts/oapps/oft-core/integration-tests/utils.rs +201 -0
  116. package/contracts/oapps/oft-core/src/errors.rs +13 -0
  117. package/contracts/oapps/oft-core/src/lib.rs +18 -0
  118. package/contracts/oapps/oft-core/src/oft_core.rs +439 -0
  119. package/contracts/oapps/{oft → oft-core}/src/storage.rs +2 -0
  120. package/contracts/oapps/{oft → oft-core}/src/tests/mod.rs +0 -2
  121. package/contracts/oapps/{oft → oft-core}/src/tests/test_decimals.rs +2 -2
  122. package/contracts/oapps/{oft → oft-core}/src/tests/test_lz_receive.rs +7 -7
  123. package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_msg_codec.rs +4 -5
  124. package/contracts/oapps/{oft → oft-core}/src/tests/test_resolve_address.rs +3 -3
  125. package/contracts/oapps/{oft → oft-core}/src/tests/test_utils.rs +78 -37
  126. package/contracts/oapps/oft-core/src/types.rs +58 -0
  127. package/contracts/oapps/{oft → oft-core}/src/utils.rs +1 -1
  128. package/contracts/upgrader/src/lib.rs +4 -4
  129. package/contracts/utils/src/auth.rs +44 -0
  130. package/contracts/utils/src/errors.rs +31 -5
  131. package/contracts/utils/src/lib.rs +3 -0
  132. package/contracts/utils/src/multisig.rs +211 -0
  133. package/contracts/utils/src/ownable.rs +137 -13
  134. package/contracts/utils/src/tests/buffer_reader.rs +6 -6
  135. package/contracts/utils/src/tests/buffer_writer.rs +6 -6
  136. package/contracts/utils/src/tests/bytes_ext.rs +2 -4
  137. package/contracts/utils/src/tests/mod.rs +1 -0
  138. package/contracts/utils/src/tests/multisig.rs +731 -0
  139. package/contracts/utils/src/tests/option_ext.rs +2 -5
  140. package/contracts/utils/src/tests/ownable.rs +456 -7
  141. package/contracts/utils/src/tests/ttl_configurable.rs +27 -16
  142. package/contracts/utils/src/tests/upgradeable.rs +4 -2
  143. package/contracts/utils/src/ttl_configurable.rs +23 -8
  144. package/contracts/utils/src/ttl_extendable.rs +27 -0
  145. package/contracts/utils/src/upgradeable.rs +2 -0
  146. package/contracts/workers/dvn/Cargo.toml +1 -1
  147. package/contracts/workers/dvn/src/auth.rs +7 -7
  148. package/contracts/workers/dvn/src/dvn.rs +10 -38
  149. package/contracts/workers/dvn/src/errors.rs +0 -7
  150. package/contracts/workers/dvn/src/events.rs +1 -14
  151. package/contracts/workers/dvn/src/interfaces/dvn.rs +2 -2
  152. package/contracts/workers/dvn/src/interfaces/mod.rs +0 -2
  153. package/contracts/workers/dvn/src/storage.rs +3 -13
  154. package/contracts/workers/dvn/src/tests/auth.rs +4 -4
  155. package/contracts/workers/dvn/src/tests/dvn.rs +1 -2
  156. package/contracts/workers/dvn/src/tests/multisig/set_signer.rs +7 -8
  157. package/contracts/workers/dvn/src/tests/multisig/set_threshold.rs +11 -8
  158. package/contracts/workers/dvn/src/tests/multisig/verify_signatures.rs +11 -12
  159. package/contracts/workers/dvn/src/tests/setup.rs +5 -5
  160. package/contracts/workers/dvn-fee-lib/Cargo.toml +1 -1
  161. package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +3 -6
  162. package/contracts/workers/executor/src/auth.rs +80 -16
  163. package/contracts/workers/executor/src/executor.rs +5 -31
  164. package/contracts/workers/executor/src/storage.rs +2 -9
  165. package/contracts/workers/executor-fee-lib/Cargo.toml +1 -1
  166. package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +3 -6
  167. package/contracts/workers/executor-helper/Cargo.toml +1 -1
  168. package/contracts/workers/executor-helper/src/executor_helper.rs +53 -73
  169. package/contracts/workers/price-feed/Cargo.toml +1 -1
  170. package/contracts/workers/price-feed/src/price_feed.rs +7 -10
  171. package/contracts/workers/worker/src/errors.rs +4 -0
  172. package/contracts/workers/worker/src/tests/worker.rs +7 -6
  173. package/contracts/workers/worker/src/worker.rs +20 -16
  174. package/package.json +7 -5
  175. package/sdk/.turbo/turbo-build.log +1 -0
  176. package/sdk/.turbo/turbo-test.log +1019 -0
  177. package/sdk/dist/generated/bml.d.ts +95 -8
  178. package/sdk/dist/generated/bml.js +95 -36
  179. package/sdk/dist/generated/counter.d.ts +289 -44
  180. package/sdk/dist/generated/counter.js +119 -49
  181. package/sdk/dist/generated/dvn.d.ts +312 -229
  182. package/sdk/dist/generated/dvn.js +144 -83
  183. package/sdk/dist/generated/dvn_fee_lib.d.ts +258 -63
  184. package/sdk/dist/generated/dvn_fee_lib.js +95 -26
  185. package/sdk/dist/generated/endpoint.d.ts +219 -24
  186. package/sdk/dist/generated/endpoint.js +108 -41
  187. package/sdk/dist/generated/executor.d.ts +239 -87
  188. package/sdk/dist/generated/executor.js +135 -63
  189. package/sdk/dist/generated/executor_fee_lib.d.ts +278 -74
  190. package/sdk/dist/generated/executor_fee_lib.js +135 -59
  191. package/sdk/dist/generated/executor_helper.d.ts +163 -21
  192. package/sdk/dist/generated/executor_helper.js +124 -52
  193. package/sdk/dist/generated/oft.d.ts +1842 -0
  194. package/sdk/dist/generated/oft.js +345 -0
  195. package/sdk/dist/generated/price_feed.d.ts +258 -63
  196. package/sdk/dist/generated/price_feed.js +95 -26
  197. package/sdk/dist/generated/sml.d.ts +235 -34
  198. package/sdk/dist/generated/sml.js +126 -53
  199. package/sdk/dist/generated/treasury.d.ts +1016 -0
  200. package/sdk/dist/generated/treasury.js +248 -0
  201. package/sdk/dist/generated/uln302.d.ts +235 -34
  202. package/sdk/dist/generated/uln302.js +126 -53
  203. package/sdk/dist/generated/upgrader.d.ts +17 -2
  204. package/sdk/dist/generated/upgrader.js +19 -1
  205. package/sdk/dist/index.d.ts +2 -1
  206. package/sdk/dist/index.js +2 -1
  207. package/sdk/package.json +6 -3
  208. package/sdk/src/index.ts +2 -1
  209. package/sdk/test/counter-sml.test.ts +376 -0
  210. package/sdk/test/counter-uln.test.ts +493 -0
  211. package/sdk/test/{oft.test.ts → oft-sml.test.ts} +196 -321
  212. package/sdk/test/suites/constants.ts +22 -2
  213. package/sdk/test/suites/globalSetup.ts +450 -0
  214. package/sdk/test/suites/localnet.ts +23 -6
  215. package/sdk/test/upgrader.test.ts +7 -16
  216. package/sdk/test/utils.ts +558 -85
  217. package/sdk/turbo.json +8 -0
  218. package/sdk/vitest.config.ts +21 -0
  219. package/tools/ts-bindings-gen/Cargo.toml +2 -0
  220. package/tools/ts-bindings-gen/src/main.rs +52 -4
  221. package/contracts/common-macros/src/contract_impl.rs +0 -52
  222. package/contracts/common-macros/src/ownable.rs +0 -41
  223. package/contracts/common-macros/src/tests/contract_impl.rs +0 -386
  224. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ownable__snapshot_generated_ownable_code.snap +0 -12
  225. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/extend_instance_ttl.rs +0 -50
  226. package/contracts/oapps/oapp-macros/src/oapp_core.rs +0 -41
  227. package/contracts/oapps/oapp-macros/src/oapp_full.rs +0 -21
  228. package/contracts/oapps/oapp-macros/src/oapp_options_type3.rs +0 -31
  229. package/contracts/oapps/oapp-macros/src/oapp_receiver.rs +0 -48
  230. package/contracts/oapps/oapp-macros/src/oapp_sender.rs +0 -21
  231. package/contracts/oapps/oapp-macros/src/util.rs +0 -107
  232. package/contracts/oapps/oft/src/constants.rs +0 -5
  233. package/contracts/oapps/oft/src/default_oft_impl.rs +0 -152
  234. package/contracts/oapps/oft/src/errors.rs +0 -8
  235. package/contracts/oapps/oft/src/interfaces/mint_burn_token.rs +0 -23
  236. package/contracts/oapps/oft/src/interfaces/mod.rs +0 -3
  237. package/contracts/oapps/oft/src/tests/extensions/mod.rs +0 -11
  238. package/contracts/oapps/oft/src/tests/extensions/setup.rs +0 -903
  239. package/contracts/oapps/oft/src/tests/extensions/test_oft_fee.rs +0 -749
  240. package/contracts/oapps/oft/src/tests/extensions/test_pausable.rs +0 -432
  241. package/contracts/oapps/oft/src/tests/extensions/test_rate_limiter.rs +0 -1078
  242. package/contracts/oapps/oft/src/types.rs +0 -38
  243. package/contracts/oapps/oft-std/integration-tests/utils.rs +0 -427
  244. package/contracts/oapps/oft-std/src/lib.rs +0 -16
  245. package/contracts/oapps/oft-std/src/oft.rs +0 -156
  246. package/contracts/workers/dvn/src/interfaces/multisig.rs +0 -56
  247. package/contracts/workers/dvn/src/multisig.rs +0 -157
  248. package/sdk/dist/generated/oft_std.d.ts +0 -1544
  249. package/sdk/dist/generated/oft_std.js +0 -271
  250. package/sdk/test/index.test.ts +0 -375
  251. /package/contracts/oapps/{oft-std → oft}/integration-tests/extensions/mod.rs +0 -0
  252. /package/contracts/oapps/{oft → oft-core}/src/codec/mod.rs +0 -0
  253. /package/contracts/oapps/{oft → oft-core}/src/codec/oft_compose_msg_codec.rs +0 -0
  254. /package/contracts/oapps/{oft → oft-core}/src/codec/oft_msg_codec.rs +0 -0
  255. /package/contracts/oapps/{oft → oft-core}/src/events.rs +0 -0
  256. /package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_compose_msg_codec.rs +0 -0
  257. /package/contracts/oapps/{oft → oft-core}/src/tests/test_oft_version.rs +0 -0
  258. /package/contracts/oapps/{oft → oft-core}/src/tests/test_quote_oft.rs +0 -0
  259. /package/contracts/oapps/{oft → oft-core}/src/tests/test_quote_send.rs +0 -0
  260. /package/contracts/oapps/{oft → oft-core}/src/tests/test_send.rs +0 -0
  261. /package/contracts/oapps/{oft → oft-core}/src/tests/test_token.rs +0 -0
  262. /package/sdk/test/suites/{testUpgradeable.ts → dummyContractClient.ts} +0 -0
@@ -1,22 +1,33 @@
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: 56667 bytes (55.34 KB)
9
+ */
10
+ export const WASM_BASE64 = "AGFzbQEAAAABzgEhYAJ+fgF+YAF+AX5gA35+fgF+YAABfmAEfn5+fgF+YAN/f38AYAF/AX5gA35+fgBgA39+fgBgAABgAAF/YAF/AGACf38AYAJ+fgF/YAJ+fgBgA35+fwBgAn9+AGABfgBgAn5/AGAEf39/fwF+YAF+AX9gAn9/AX5gAX8Bf2AFfn9/f38AYAN+f38BfmACf38Bf2ADf35+AX5gA39/fgBgB35+fn5+fn4BfmAFf35/fn4AYAR+fn9/AX5gCX5+fn5+fn5+fgF+YAN/f38BfwKhAjABbAExAAABYQEwAAEBdgEzAAEBdgExAAABYgE4AAEBYgE2AAABYgFmAAIBYwEyAAIBYwExAAEBdgFkAAABdgEyAAABdgE2AAABeAExAAABdgFfAAMBeAE0AAMBaQEwAAEBdgE4AAEBeAE3AAMBeAEwAAABYgFlAAABYgEwAAEBYwEwAAIBbAFfAAIBbAEyAAABaQFfAAEBZAFfAAIBaQE4AAEBaQE3AAEBYgE0AAMBYgFfAAEBbAE2AAEBeAEzAAMBeAE4AAMBYgEzAAABbQFhAAQBdgFnAAABYgFtAAIBaQE2AAABYgFqAAABYgEyAAQBbQE5AAIBbAEwAAABbAE4AAABeAE1AAEBbAE3AAQBaQEzAAABaQE1AAEBaQE0AAEDogGgAQUGBwgJCgsMBg0DAw4KDwMQDQwNEQkKBRAIEgMQEAsFARMRFBIDFQMMEgwKDBQWAwMUChQKBhQMEBcQDAgCEBAMGBkKEBAQFhUaARsAAAsLAAALABECABEAEREBAwMBAwEBAQMDAwMBAxwdCBwMFQABAwIeHwwMBgwRCwIAAQsBAwMAEAYDDAMDAAAQERIBAwMBAwACCQUQEAUMBQwQICAEBQFwAQEBBQMBABEGIQR/AUGAgMAAC38AQcyCwAALfwBB+IrAAAt/AEGAi8AACweNBzUGbWVtb3J5AgAMX19jaGVja19hdXRoAG0Kc2V0X3BhdXNlZAB6GXNldF9zdXBwb3J0ZWRfbWVzc2FnZV9saWIAfA1zZXRfYWxsb3dsaXN0AH0Mc2V0X2RlbnlsaXN0AIABGnNldF9kZWZhdWx0X211bHRpcGxpZXJfYnBzAIEBE3NldF9kZXBvc2l0X2FkZHJlc3MAgwEac2V0X3N1cHBvcnRlZF9vcHRpb25fdHlwZXMAhQESc2V0X3dvcmtlcl9mZWVfbGliAIYBDnNldF9wcmljZV9mZWVkAIgBCGlzX2FkbWluAIsBBmFkbWlucwCMAQZwYXVzZWQAjQEYaXNfc3VwcG9ydGVkX21lc3NhZ2VfbGliAI4BDG1lc3NhZ2VfbGlicwCPAQ9pc19vbl9hbGxvd2xpc3QAkAEOaXNfb25fZGVueWxpc3QAkQEHaGFzX2FjbACSAQ5hbGxvd2xpc3Rfc2l6ZQCTARZkZWZhdWx0X211bHRpcGxpZXJfYnBzAJQBD2RlcG9zaXRfYWRkcmVzcwCVAQpwcmljZV9mZWVkAJYBGmdldF9zdXBwb3J0ZWRfb3B0aW9uX3R5cGVzAJcBDndvcmtlcl9mZWVfbGliAJgBB2dldF9mZWUAmQEKYXNzaWduX2pvYgCcAQ5zZXRfZHN0X2NvbmZpZwCfAQpkc3RfY29uZmlnAKABA3ZpZAChAQ5oYXNoX2NhbGxfZGF0YQCiAQ1fX2NvbnN0cnVjdG9yAKQBCXNldF9hZG1pbgCrARNxdW9ydW1fY2hhbmdlX2FkbWluAKwBB3VwZ3JhZGUArQEHbWlncmF0ZQCvAQphdXRob3JpemVyALEBD3NldF90dGxfY29uZmlncwCyAQt0dGxfY29uZmlncwC1ARJmcmVlemVfdHRsX2NvbmZpZ3MAtwEVaXNfdHRsX2NvbmZpZ3NfZnJvemVuALgBE2V4dGVuZF9pbnN0YW5jZV90dGwAuQEKc2V0X3NpZ25lcgC6AQ1zZXRfdGhyZXNob2xkAL4BC2dldF9zaWduZXJzAL8BDXRvdGFsX3NpZ25lcnMAwAEJaXNfc2lnbmVyAMEBCXRocmVzaG9sZADCARF2ZXJpZnlfc2lnbmF0dXJlcwDDARN2ZXJpZnlfbl9zaWduYXR1cmVzAMQBAV8DAQpfX2RhdGFfZW5kAwILX19oZWFwX2Jhc2UDAwqsswGgASIAIAAQsYCAgAAgAa1CIIZCBIQgAq1CIIZCBIQQsoCAgAAL0QECAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkACQAJAIAAoAgAOAwABAgALIAFBmILAgABBAxDHgICAACABKAIADQMgASABKQMIEMiAgIAADAILIAFBm4LAgABBCRDHgICAACABKAIADQIgASABKQMIIAA1AgRCIIZCBIQQyYCAgAAMAQsgAUGkgsCAAEEIEMeAgIAAIAEoAgANASABIAEpAwggACkDCBDJgICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACCxEAIABCASABIAIQrICAgAAaCzcBAX5CACEDAkACQCABQgJRDQAgAadBAXENASAAIAI3AwhCASEDCyAAIAM3AwAPCxC0gICAAAALCQAQxYGAgAAAC4sBAgJ/AX4jgICAgABBEGsiACSAgICAACAAQQRqELaAgIAAAkAgACgCBEEBRw0AIAAoAgggACgCDBC3gICAAAtBACEBAkBBABC4gICAACICQgIQuYCAgABFDQBBASEBAkACQCACQgIQgICAgACnQf8BcQ4CAQIACwALQQAhAQsgAEEQaiSAgICAACABCwwAIABBARDKgYCAAAsbACAArUIghkIEhCABrUIghkIEhBCqgICAABoLwgECAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkACQAJAIABB/wFxDgMAAQIACyABQZKFwIAAQQYQx4CAgAAgASgCAA0DIAEgASkDCBDIgICAAAwCCyABQZiFwIAAQQgQx4CAgAAgASgCAA0CIAEgASkDCBDIgICAAAwBCyABQaCFwIAAQQoQx4CAgAAgASgCAA0BIAEgASkDCBDIgICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACCw8AIAAgARCpgICAAEIBUQsVAQF+ELuAgIAAIgAQgYCAgAAaIAALVAIBfwF+I4CAgIAAQRBrIgAkgICAgAAgAEEEahC2gICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQt4CAgAALEJGAgIAAIQEgAEEQaiSAgICAACABC1gBAX8jgICAgABBEGsiAiSAgICAACACQQRqELaAgIAAAkAgAigCBEEBRw0AIAIoAgggAigCDBC3gICAAAsgACABEL2AgIAAEL6AgIAAIAJBEGokgICAgAALRgIBfwF+QQAhAAJAAkBBARCngYCAACIBQgIQuYCAgABFDQAgAUICEICAgIAAIgFC/wGDQgRSDQEgAUIgiKchAAsgAA8LAAuSBQQBfwV+An8BfiOAgICAAEEwayIDJICAgIAAIANBIGoQtoCAgAACQCADKAIgQQFHDQAgAygCJCADKAIoELeAgIAACwJAAkACQAJAAkACQCACRQ0AIAIgARCCgICAAEIgiKdLDQEQv4CAgAAhBCABEIKAgIAAQiCIIQVCACEGQQAhAgJAA0AgBiAFUQ0FAkAgASAGQiCGQgSEEIOAgIAAIgdC/wGDQsgAUg0AIAcQhICAgAAhCCAGQv////8PUQ0CIAhCgICAgHCDQoCAgICQCFINAiAHEISAgIAAQv////+PCFgNBSAHQoSAgICACBCFgICAACEIIAdCBEKEgICAgAgQhoCAgAAiBxCEgICAAEKAgICAcINCgICAgIAIUg0CIANBIGogACAHIAhCIIinIglBZWoiCiAJIApB/wFxQQRJG61C/wGDQiCGQgSEEIeAgIAAQoSAgIAQQoSAgICQCBCGgICAABCIgICAAEKEgICAwAFChICAgIAEEIaAgIAAEMCAgIAAIAMoAiBBAUYNAiADKQMoIQcCQCACQQFxRQ0AIAcgCxDBgICAAEEYdEEYdUEATA0ICyAEEIKAgIAAIQggA0EANgIIIAMgBDcDACADIAhCIIg+AgwDQCADQSBqIAMQwoCAgAAgA0EQaiADKQMgIAMpAygQs4CAgAAgAygCEEEBRw0JIAMpAxggBxDDgICAAEUNAAsgBkIBfCEGQQEhAiAHIQsMAQsLIAZC/////w9SGgsQtICAgAAAC0KDgICAsIUBEMSAgIAAAAtCg4CAgOCEARDEgICAAAALEMWAgIAAAAsgA0EwaiSAgICAAA8LQoOAgICghQEQxICAgAAAC0KDgICAgIUBEMSAgIAAAAuNAQQBfwF+AX8BfiOAgICAAEEQayIAJICAgIAAAkACQEEAEKeBgIAAIgFCARC5gICAACICRQ0AIAFCARCAgICAACIDQv8Bg0LLAFINASAAQQRqEM6AgIAAIAAoAgRFDQAgACgCCCAAKAIMEKiBgIAACxCNgICAACEBIABBEGokgICAgAAgAyABIAIbDwsACzYBAX5CASECAkAgARCEgICAAEKAgICAcINCgICAgMACUg0AIAAgATcDCEIAIQILIAAgAjcDAAsXACAAIAEQkoCAgAAiAUIAVSABQgBTawuRAQICfwF+I4CAgIAAQRBrIgIkgICAgAACQAJAIAEoAggiAyABKAIMSQ0AIABCAjcDAAwBCyACIAEpAwAgA61CIIZCBIQQg4CAgAAQu4GAgAACQCADQQFqIgNFDQAgAikDACEEIAAgAikDCDcDCCAAIAQ3AwAgASADNgIIDAELELSAgIAAAAsgAkEQaiSAgICAAAsRACAAIAEQwYCAgABB/wFxRQsLACAAEKuAgIAAGgsJABC0gICAAAALUgECfyOAgICAAEEQayIAJICAgIAAIABBBGoQtoCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMELeAgIAACxC9gICAACEBIABBEGokgICAgAAgAQtRAgF/AX4jgICAgABBEGsiAySAgICAACADIAEgAhDGgYCAAEIBIQQCQCADKAIADQAgACADKQMINwMIQgAhBAsgACAENwMAIANBEGokgICAgAALRAEBfyOAgICAAEEQayICJICAgIAAIAIgATcDCCACQQhqQQEQnoGAgAAhASAAQgA3AwAgACABNwMIIAJBEGokgICAgAALSAEBfyOAgICAAEEQayIDJICAgIAAIAMgAjcDCCADIAE3AwAgA0ECEJ6BgIAAIQIgAEIANwMAIAAgAjcDCCADQRBqJICAgIAAC/YCAwF/AX4BfyOAgICAAEEwayICJICAgIAAEMuAgIAAIQMCQAJAAkACQAJAAkAgAQ0AIAMQgoCAgABC/////x9YDQEgAkEIaiADIAAQiYCAgAAQzICAgAAgAigCCCIEQQJGDQIgBEEBcUUNAyACKAIMIgQgAxCCgICAAEIgiKdPDQUgAyAErUIghkIEhBCKgICAACEDDAULIAMgABCJgICAAEICUQ0DQoOAgICAlgEQxICAgAAAC0KDgICAwJYBEMSAgIAAAAsQtICAgAAAC0KDgICAkJYBEMSAgIAAAAsgAyAAEIuAgIAAIQMLIAJBCjYCICACQSBqIAMQzYCAgAAgAkEUahDOgICAAAJAIAIoAhRBAUcNACACQSBqIAIoAhggAigCHBDPgICAAAtCjuauueqM5NU4ENCAgIAAIQMgAiAANwMoIAIgAa03AyAgA0HAhcCAAEECIAJBIGpBAhDRgICAABCMgICAABogAkEwaiSAgICAAAusAQIBfwN+I4CAgIAAQTBrIgAkgICAgAAgAEEQahC2gICAAAJAIAAoAhBBAUcNACAAKAIUIAAoAhgQt4CAgAALIABBCjYCECAAIABBEGoQ2oCAgAACQCAAKQMAIgFQDQAgAEEkahDOgICAACAAKAIkQQFHDQAgAEEQaiAAKAIoIAAoAiwQz4CAgAALIAApAwghAhCNgICAACEDIABBMGokgICAgAAgAiADIAGnGws9AQJ/AkACQCABQgJSDQBBACECDAELQQFBAiABQv8Bg0IEURshAiABQiCIpyEDCyAAIAM2AgQgACACNgIACxUAIAAQ5YCAgAAgAUIBEJaAgIAAGgsMACAAQQIQyoGAgAALIgAgABDlgICAACABrUIghkIEhCACrUIghkIEhBCygICAAAtjAwF/AX4BfyOAgICAAEEQayIBJICAgIAAIAEgADcDAEICIQJBASEDAkADQCADRQ0BIANBf2ohAyAAIQIMAAsLIAEgAjcDCCABQQhqQQEQnoGAgAAhACABQRBqJICAgIAAIAALLgACQCABIANGDQAACyAArUIghkIEhCACrUIghkIEhCABrUIghkIEhBCogICAAAsnACAAEIGAgIAAGgJAIAAQ04CAgAANAEKDgICA8JcBEMSAgIAAAAsLXQEBfyOAgICAAEEQayIBJICAgIAAIAFBBGoQtoCAgAACQCABKAIEQQFHDQAgASgCCCABKAIMELeAgIAACxDLgICAACAAEImAgIAAIQAgAUEQaiSAgICAACAAQgJSC9ECAwF/An4BfyOAgICAAEEwayICJICAgIAAENWAgIAAIgMgABCJgICAACEEAkACQAJAAkACQCABDQAgAkEIaiAEEMyAgIAAIAIoAggiBUECRg0BIAVBAXFFDQIgAigCDCIFIAMQgoCAgABCIIinTw0EIAMgBa1CIIZCBIQQioCAgAAhAwwECyAEQgJRDQJCg4CAgOCWARDEgICAAAALELSAgIAAAAtCg4CAgPCWARDEgICAAAALIAMgABCLgICAACEDCyACQQY2AiAgAkEgaiADEM2AgIAAIAJBFGoQzoCAgAACQCACKAIUQQFHDQAgAkEgaiACKAIYIAIoAhwQz4CAgAALQdCFwIAAQRkQ1oCAgAAQ0ICAgAAhAyACIAGtNwMoIAIgADcDICADQYCGwIAAQQIgAkEgakECENGAgIAAEIyAgIAAGiACQTBqJICAgIAAC6wBAgF/A34jgICAgABBMGsiACSAgICAACAAQRBqELaAgIAAAkAgACgCEEEBRw0AIAAoAhQgACgCGBC3gICAAAsgAEEGNgIQIAAgAEEQahDagICAAAJAIAApAwAiAVANACAAQSRqEM6AgIAAIAAoAiRBAUcNACAAQRBqIAAoAiggACgCLBDPgICAAAsgACkDCCECEI2AgIAAIQMgAEEwaiSAgICAACACIAMgAacbC0UCAX8BfiOAgICAAEEQayICJICAgIAAIAIgACABEMaBgIAAAkAgAigCAEEBRw0AAAsgAikDCCEDIAJBEGokgICAgAAgAwt1AgF/AX4jgICAgABBIGsiACSAgICAACAAQRBqELaAgIAAAkAgACgCEEEBRw0AIAAoAhQgACgCGBC3gICAAAsgAEECNgIQIAAgAEEQahDYgICAACAAKQMIIQEgACkDAEG9CRDZgICAACAAQSBqJICAgIAAIAELTQECfkIAIQICQAJAIAEQ5YCAgAAiA0ICELmAgIAARQ0AIANCAhCAgICAACICQv8Bg0LNAFINASAAIAI3AwhCASECCyAAIAI3AwAPCwALKQACQCAAp0EBcUUNAA8LIAFB0HZqrUIghkKDgICAgJYBfBDEgICAAAALTQECfkIAIQICQAJAIAEQ5YCAgAAiA0IBELmAgIAARQ0AIANCARCAgICAACICQv8Bg0LLAFINASAAIAI3AwhCASECCyAAIAI3AwAPCwALdwEDfyOAgICAAEEgayIAJICAgIAAIABBEGoQtoCAgAACQCAAKAIQQQFHDQAgACgCFCAAKAIYELeAgIAACyAAQQk2AhAgAEEIaiAAQRBqENyAgIAAIAAoAgghASAAKAIMIQIgAEEgaiSAgICAACACQQAgAUEBcRsLWgIBfgF/AkACQAJAIAEQ5YCAgAAiAkICELmAgIAADQBBACEBDAELIAJCAhCAgICAACICQv8Bg0IEUg0BIAJCIIinIQNBASEBCyAAIAM2AgQgACABNgIADwsAC4wBAQJ/I4CAgIAAQSBrIgEkgICAgAAgARC2gICAAAJAIAEoAgBBAUcNACABKAIEIAEoAggQt4CAgAALIAFBCDYCACABIAA3AwgCQCABEN6AgIAAIgJFDQAgAUEUahDOgICAACABKAIUQQFHDQAgASABKAIYIAEoAhwQz4CAgAALIAFBIGokgICAgAAgAgsSACAAEOWAgIAAQgEQuYCAgAALdQIBfwF+I4CAgIAAQSBrIgAkgICAgAAgAEEQahC2gICAAAJAIAAoAhBBAUcNACAAKAIUIAAoAhgQt4CAgAALIABBAzYCECAAIABBEGoQ2ICAgAAgACkDCCEBIAApAwBBwQkQ2YCAgAAgAEEgaiSAgICAACABC3UCAX8BfiOAgICAAEEgayIAJICAgIAAIABBEGoQtoCAgAACQCAAKAIQQQFHDQAgACgCFCAAKAIYELeAgIAACyAAQQE2AhAgACAAQRBqENiAgIAAIAApAwghASAAKQMAQbUJENmAgIAAIABBIGokgICAgAAgAQuMAQECfyOAgICAAEEgayIBJICAgIAAIAEQtoCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIELeAgIAACyABQQc2AgAgASAANwMIAkAgARDegICAACICRQ0AIAFBFGoQzoCAgAAgASgCFEEBRw0AIAEgASgCGCABKAIcEM+AgIAACyABQSBqJICAgIAAIAILdwEDfyOAgICAAEEgayIAJICAgIAAIABBEGoQtoCAgAACQCAAKAIQQQFHDQAgACgCFCAAKAIYELeAgIAACyAAQQQ2AhAgAEEIaiAAQRBqENyAgIAAIAAoAgghASAAKAIMIQIgAEEgaiSAgICAACACQQAgAUEBcRsLXQEBfyOAgICAAEEQayIBJICAgIAAIAFBBGoQtoCAgAACQCABKAIEQQFHDQAgASgCCCABKAIMELeAgIAACxDVgICAACAAEImAgIAAIQAgAUEQaiSAgICAACAAQgJSC48BAgJ/AX4jgICAgABBEGsiACSAgICAACAAELaAgIAAAkAgACgCAEEBRw0AIAAoAgQgACgCCBC3gICAAAtBACEBIABBADYCAAJAIAAQ5YCAgAAiAkICELmAgIAARQ0AQQEhAQJAAkAgAkICEICAgIAAp0H/AXEOAgECAAsAC0EAIQELIABBEGokgICAgAAgAQumBAIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgAOCwABAgMEBQYHCAkKAAsgAUH4icCAAEEGEMeAgIAAIAEoAgANCyABIAEpAwgQyICAgAAMCgsgAUH+icCAAEEOEMeAgIAAIAEoAgANCiABIAEpAwgQyICAgAAMCQsgAUGMisCAAEEJEMeAgIAAIAEoAgANCSABIAEpAwgQyICAgAAMCAsgAUGVisCAAEEMEMeAgIAAIAEoAgANCCABIAEpAwgQyICA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yABSDQAgARCEgICAAEKAgICAcINCgICAgIAEUg0AIAAgATcDCEIAIQILIAAgAjcDAAtdAgF/AX4CQAJAIAGnQf8BcSICQcAARg0AAkAgAkEGRg0AQgEhA0KDkICAgAEhAQwCCyABQgiIIQFCACEDDAELQgAhAyABEI+AgIAAIQELIAAgAzcDACAAIAE3AwgLSgIBfgF/QgIhAgJAIAEoAggiAyABKAIMTw0AIAAgASkDACADrUIghkIEhBCDgICAADcDCCABIANBAWo2AghCACECCyAAIAI3AwALHAAgACABrUIghkIEhCACrUIghkIEhBCkgICAAAsZAAJAIAEgAEkNACABIABrDwsQtICAgAAAC4wBAgF/AX4jgICAgABBEGsiACSAgICAACAAELaAgIAAAkAgACgCAEEBRw0AIAAoAgQgACgCCBC3gICAAAsgAEEANgIAAkACQCAAELGAgIAAIgFCAhC5gICAAEUNACABQgIQgICAgAAiAUL/AYNCBFENAQALEMWAgIAAAAsgAEEQaiSAgICAACABQiCIpwvTAQICfwN+I4CAgIAAQSBrIgIkgICAgABBACEDAkADQCADQRhGDQEgAkEIaiADakICNwMAIANBCGohAwwACwtCASEEAkAgAUL/AYNCzABSDQAgAUHwgsCAAEEDIAJBCGpBAxDpgICAACACKQMIIgFC/wGDQssAUg0AIAIpAxAiBUL/AYNCzQBSDQACQCACKQMYIganQf8BcSIDQcoARg0AIANBDkcNAQsgACABNwMYIAAgBjcDECAAIAU3AwhCACEECyAAIAQ3AwAgAkEgaiSAgICAAAu+AQICfwF+I4CAgIAAQSBrIgIkgICAgABBACEDAkADQCADQRBGDQEgAiADakICNwMAIANBCGohAwwACwtCASEEAkAgAUL/AYNCzABSDQAgAUGYg8CAAEECIAJBAhDpgICAACACQRBqIAIpAwAQx4GAgAAgAigCEA0AIAIpAxghASACQRBqIAIpAwgQ7oCAgAAgAigCEA0AIAAgAikDGDcDECAAIAE3AwhCACEECyAAIAQ3AwAgAkEgaiSAgICAAAvgAQICfwJ+I4CAgIAAQTBrIgIkgICAgABBACEDAkADQCADQRhGDQEgAkEIaiADakICNwMAIANBCGohAwwACwtCASEEAkAgAUL/AYNCzABSDQAgAUG4g8CAAEEDIAJBCGpBAxDpgICAACACKQMIIgFC/wGDQssAUg0AIAJBIGogAikDEBDHgYCAACACKAIgDQAgAikDKCEFIAJBIGogAikDGBDugICAACACKAIgDQAgAikDKCEEIAAgATcDGCAAIAQ3AxAgACAFNwMIQgAhBAsgACAENwMAIAJBMGokgICAgAALlgECAX4CfyAAKQMAIQEDQAJAIAFQRQ0AQYCAxAAPCwJAAkAgAUIwiKdBP3EiAkEBRw0AQd8AIQIMAQsCQAJAAkAgAkF/akELTw0AQS4hAwwBCwJAIAJBdGpBGk8NAEE1IQMMAQsgAkElTQ0BQTshAwsgAiADaiECDAELIAAgAUIGhiIBNwMADAELCyAAIAFCBoY3AwAgAgsaACAArUIghkIEhCABrUIghkIEhBChgICAAAujAgIBfwF+I4CAgIAAQRBrIgMkgICAgAAgAxC2gICAAAJAIAMoAgBBAUcNACADKAIEIAMoAggQt4CAgAALEJyAgIAAIQQgAyAAQRh0IABBgP4DcUEIdHIgAEEIdkGA/gNxIABBGHZycjYCACAEIAQQhICAgABCgICAgHCDQgSEIANBBBCjgYCAACEEIAMgAUI4hiABQoD+A4NCKIaEIAFCgID8B4NCGIYgAUKAgID4D4NCCIaEhCABQgiIQoCAgPgPgyABQhiIQoCA/AeDhCABQiiIQoD+A4MgAUI4iISEhDcDACAEIAQQhICAgABCgICAgHCDQgSEIANBCBCjgYCAACACEJ2AgIAAEJOAgIAAEIiAgIAAIQEgA0EQaiSAgICAACABC50CAgJ/AX4jgICAgABBEGsiASSAgICAAAJAAkBBASAAp0H/AXEiAkEAR0EBdCACQQFGGyICQQJGDQAgARC2gICAAAJAIAEoAgBBAUcNACABKAIEIAEoAggQt4CAgAALELqAgIAAIQAQ5ICAgAAgAnNBAXFFDQEgAUEANgIAIAEgAkICEPuAgIAAAkACQCACQQFxDQBCjtKq3O6sz/UAENCAgIAAIQMgASAANwMAIANB9IbAgABBASABQQEQ0YCAgAAQjICAgAAaDAELQo7SqtzurAMQ0ICAgAAhAyABIAA3AwAgA0HkhsCAAEEBIAFBARDRgICAABCMgICAABoLIAFBEGokgICAgABCAg8LAAtCg4CAgMCXARDEgICAAAALGgAgABDlgICAACABrUL/AYMgAhCWgICAABoLjQEBAn8jgICAgABBEGsiAiSAgICAAAJAIABC/wGDQs0AUg0AQQEgAadB/wFxIgNBAEdBAXQgA0EBRhsiA0ECRg0AIAJBBGoQtoCAgAACQCACKAIEQQFHDQAgAigCCCACKAIMELeAgIAACxC6gICAABogACADQQFxENSAgIAAIAJBEGokgICAgABCAg8LAAujAwEDfyOAgICAAEEgayICJICAgIAAAkACQAJAAkAgAEL/AYNCzQBSDQBBASABp0H/AXEiA0EAR0EBdCADQQFGGyIDQQJGDQAgAkEQahC2gICAAAJAIAIoAhBBAUcNACACKAIUIAIoAhgQt4CAgAALELqAgIAAGiAAEOGAgIAAIQQCQAJAIANBAXENACAERQ0DIAJBBzYCECACIAA3AxggAkEQahDlgICAAEIBEJeAgIAAGhDbgICAACIERQ0FIARBf2ohBAwBCyAEDQMgAkEHNgIQIAIgADcDGCACQRBqEP6AgIAAIAJBBGoQzoCAgAACQCACKAIEQQFHDQAgAkEQaiACKAIIIAIoAgwQz4CAgAALENuAgIAAQQFqIgRFDQQLIAQQ/4CAgABBkIbAgABBDRDWgICAABDQgICAACEBIAIgADcDGCACIAOtNwMQIAFBqIbAgABBAiACQRBqQQIQ0YCAgAAQjICAgAAaIAJBIGokgICAgABCAg8LAAtCg4CAgKCXARDEgICAAAALQoOAgICglgEQxICAgAAACxC0gICAAAALDgAgAEEBQgEQ+4CAgAALMQEBfyOAgICAAEEQayIBJICAgIAAIAFBCTYCACABIAAQzIGAgAAgAUEQaiSAgICAAAvuAgEDfyOAgICAAEEgayICJICAgIAAAkACQAJAIABC/wGDQs0AUg0AQQEgAadB/wFxIgNBAEdBAXQgA0EBRhsiA0ECRg0AIAJBEGoQtoCAgAACQCACKAIQQQFHDQAgAigCFCACKAIYELeAgIAACxC6gICAABogABDdgICAACEEAkACQCADQQFxDQAgBEUNAyACQQg2AhAgAiAANwMYIAJBEGoQ5YCAgABCARCXgICAABoMAQsgBA0DIAJBCDYCECACIAA3AxggAkEQahD+gICAACACQQRqEM6AgIAAIAIoAgRBAUcNACACQRBqIAIoAgggAigCDBDPgICAAAtBuIbAgABBDBDWgICAABDQgICAACEBIAIgADcDGCACIAOtNwMQIAFBzIbAgABBAiACQRBqQQIQ0YCAgAAQjICAgAAaIAJBIGokgICAgABCAg8LAAtCg4CAgLCXARDEgICAAAALQoOAgICwlgEQxICAgAAAC3oBAX8jgICAgABBEGsiAiSAgICAAAJAIABC/wGDQs0AUg0AIAFC/wGDQgRSDQAgAkEEahC2gICAAAJAIAIoAgRBAUcNACACKAIIIAIoAgwQt4CAgAALIAAQ0oCAgAAgAUIgiKcQgoGAgAAgAkEQaiSAgICAAEICDwsAC3ICAX8BfiOAgICAAEEQayIBJICAgIAAIAFBBDYCACABIAAQzIGAgABB/IbAgABBGhDWgICAABDQgICAACECIAEgAK1CIIZCBIQ3AwAgAkGkh8CAAEEBIAFBARDRgICAABCMgICAABogAUEQaiSAgICAAAusAQEBfyOAgICAAEEQayICJICAgIAAAkAgAEL/AYNCzQBSDQAgAUL/AYNCzQBSDQAgAhC2gICAAAJAIAIoAgBBAUcNACACKAIEIAIoAggQt4CAgAALIAAQ0oCAgAAgARCEgYCAAEGsh8CAAEETENaAgIAAENCAgIAAIQAgAiABNwMAIABB0IfAgABBASACQQEQ0YCAgAAQjICAgAAaIAJBEGokgICAgABCAg8LAAsxAQF/I4CAgIAAQRBrIgEkgICAgAAgAUEBNgIAIAEgABDNgYCAACABQRBqJICAgIAAC5cCAQF/I4CAgIAAQSBrIgMkgICAgAACQCAAQv8Bg0LNAFINACABQv8Bg0IEUg0AIAJC/wGDQsgAUg0AIANBEGoQtoCAgAACQCADKAIQQQFHDQAgAygCFCADKAIYELeAgIAACyAAENKAgIAAIANBBTYCECADIAFCIIg+AhQgA0EQahDlgICAACACQgEQloCAgAAaIANBBGoQzoCAgAACQCADKAIEQQFHDQAgA0EQaiADKAIIIAMoAgwQz4CAgAALQfiHwIAAQRoQ1oCAgAAQ0ICAgAAhACADIAI3AxggAyABQoSAgIBwgzcDECAAQaiIwIAAQQIgA0EQakECENGAgIAAEIyAgIAAGiADQSBqJICAgIAAQgIPCwALrAEBAX8jgICAgABBEGsiAiSAgICAAAJAIABC/wGDQs0AUg0AIAFC/wGDQs0AUg0AIAIQtoCAgAACQCACKAIAQQFHDQAgAigCBCACKAIIELeAgIAACyAAENKAgIAAIAEQh4GAgABBuIjAgABBEhDWgICAABDQgICAACEAIAIgATcDACAAQdSIwIAAQQEgAkEBENGAgIAAEIyAgIAAGiACQRBqJICAgIAAQgIPCwALMQEBfyOAgICAAEEQayIBJICAgIAAIAFBAzYCACABIAAQzYGAgAAgAUEQaiSAgICAAAt/AQF/I4CAgIAAQRBrIgIkgICAgAACQCAAQv8Bg0LNAFINACABQv8Bg0LNAFINACACQQRqELaAgIAAAkAgAigCBEEBRw0AIAIoAgggAigCDBC3gICAAAsgABDSgICAACABEImBgIAAIAEQioGAgAAgAkEQaiSAgICAAEICDwsACzEBAX8jgICAgABBEGsiASSAgICAACABQQI2AgAgASAAEM2BgIAAIAFBEGokgICAgAALXQIBfwF+I4CAgIAAQRBrIgEkgICAgABB2IfAgABBDhDWgICAABDQgICAACECIAEgADcDCCACQfCHwIAAQQEgAUEIakEBENGAgIAAEIyAgIAAGiABQRBqJICAgIAACxsAAkAgAEL/AYNCzQBRDQAACyAAENOAgIAArQsIABDLgICAAAsJABDkgICAAK0LGwACQCAAQv8Bg0LNAFENAAALIAAQ44CAgACtCwgAENWAgIAACxsAAkAgAEL/AYNCzQBRDQAACyAAEOGAgIAArQsbAAJAIABC/wGDQs0AUQ0AAAsgABDdgICAAK0LGwACQCAAQv8Bg0LNAFENAAALIAAQ5oCAgACtCw8AENuAgIAArUIghkIEhAsPABDigICAAK1CIIZCBIQLCAAQ4ICAgAALCAAQ14CAgAALyAECAn8BfiOAgICAAEEgayIBJICAgIAAAkAgAEL/AYNCBFINACAAQiCIpyECIAEQtoCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIELeAgIAACyABQQU2AgAgASACNgIEQgIhAAJAIAEQ5YCAgAAiA0IBELmAgIAARQ0AIANCARCAgICAACIAQv8Bg0LIAFINASABQRRqEM6AgIAAIAEoAhRBAUcNACABIAEoAhggASgCHBDPgICAAAsgAUEgaiSAgICAACAADwsACwgAEN+AgIAAC80BAQF/I4CAgIAAQSBrIgckgICAgAACQCAAQv8Bg0LNAFINACABQv8Bg0LNAFINACACQv8Bg0IEUg0AIANC/wGDQsgAUg0AIAdBEGogBBDugICAACAHKAIQQQFGDQAgB0EQaiAFEO+AgIAAIAcoAhBBAUYNACAGQv8Bg0LIAFINACAHIAEgAkIgiKcgBykDGCAGEJqBgIAAIAdBEGogBykDACAHKQMIEJuBgIAAIAcoAhBBAUYNACAHKQMYIQEgB0EgaiSAgICAACABDwsAC6YFBAF/Bn4CfwJ+I4CAgIAAQeAAayIFJICAgIAAIAUQtoCAgAACQCAFKAIAQQFHDQAgBSgCBCAFKAIIELeAgIAACwJAEOSAgIAADQACQCABEOaAgIAARQ0AIAUgAhCdgYCAAAJAAkAgBSgCAEEBcUUNACAFKQMoIQYgBSkDICEHIAUpAxghCCAFKQMQIQkgBTUCMCEKENeAgIAAIQsQ4oCAgAAhDBDGgICAACENEN+AgIAAIQ4QkYCAgAAhDwJAAkAgA0L//////////wBWDQAgA0IIhkIGhCEDDAELIAMQmICAgAAhAwsgBUHQAGogByAGEOyAgIAAIAUoAlANASAFKQNYIQYgBUHQAGogCSAIEOyAgIAAIAUoAlBBAUYNASAFKQNYIQcgBSABNwNIIAUgCzcDOCAFIAQ3AzAgBSAHNwMgIAUgBjcDGCAFIAKtQiCGQgSENwMQIAUgDK1CIIZCBIQ3AwggBSADNwMAIAUgCkIghkIEhDcDKCAFIA2tQiCGQgSENwNAIAVBqInAgABBCiAFQQoQ0YCAgAA3A1ggBSAPNwNQQQAhAgNAAkAgAkEQRw0AQQAhAgJAA0AgAkEQRg0BIAUgAmogBUHQAGogAmopAwA3AwAgAkEIaiECDAALCwJAAkAgDkKO1Oq1kNeyASAFQQIQnoGAgAAQmYCAgAAiA6dB/wFxIgJBxQBGDQACQCACQQtHDQAgA0I/hyEBIANCCIchAwwCCxC0gICAAAALIAMQmoCAgAAhASADEJuAgIAAIQMLIAAgAzcDACAAIAE3AwggBUHgAGokgICAgAAPCyAFIAJqQgI3AwAgAkEIaiECDAALC0KDgICAIBDEgICAAAsAC0KDgICAkJcBEMSAgIAAAAtCg4CAgKCYARDEgICAAAALWwACQAJAIAFCgICAgICAgMAAfEL//////////wBWDQAgASABhSACIAFCP4eFhEIAUg0AIAFCCIZCC4QhAQwBCyACIAEQpYCAgAAhAQsgAEIANwMAIAAgATcDCAvHAgEBfyOAgICAAEHAAGsiBySAgICAAAJAAkACQCAAQv8Bg0LNAFINACABQv8Bg0LNAFINACACQv8Bg0IEUg0AIANC/wGDQsgAUg0AIAcgBBDugICAACAHKAIAQQFGDQAgByAFEO+AgIAAIAcoAgBBAUYNACAGQv8Bg0LIAFINACAHKQMIIQMgBxC2gICAAAJAIAcoAgBBAUcNACAHKAIEIAcoAggQt4CAgAALIAAQgYCAgAAaIAAQ44CAgABFDQEgByABIAJCIIinIAMgBhCagYCAABDggICAACEAIAdBMGogBykDACAHKQMIEJuBgIAAIAcoAjBBAUcNAgsAC0KDgICAgJgBEMSAgIAAAAsgBykDOCEBIAcgADcDKCAHIAE3AyBBtILAgABBAiAHQSBqQQIQ0YCAgAAhACAHQcAAaiSAgICAACAAC/QBAgF/AX4jgICAgABB0ABrIgIkgICAgAAgAkEQahC2gICAAAJAIAIoAhBBAUcNACACKAIUIAIoAhgQt4CAgAALIAJBATYCACACIAE2AgQCQAJAAkAgAhCxgICAACIDQgEQuYCAgABFDQAgAkEQaiADQgEQgICAgAAQ6ICAgAAgAigCEEEBcUUNAQALIABCADcDCCAAQgA3AwAMAQsgAEEQaiACQRBqQRBqQTAQz4GAgAAaIABCADcDCCAAQgE3AwAgAkEQahDOgICAACACKAIQQQFHDQAgAiACKAIUIAIoAhgQsICAgAALIAJB0ABqJICAgIAACxoAIACtQiCGQgSEIAGtQiCGQgSEEKOAgIAAC/YEBQF/AX4BfwF+An8jgICAgABB4AFrIgIkgICAgAACQAJAIABC/wGDQs0AUg0AIAFC/wGDQssAUg0AIAJB8ABqELaAgIAAAkAgAigCcEEBRw0AIAIoAnQgAigCeBC3gICAAAsgABDSgICAACABEIKAgIAAQiCIIQMgAkHwAGpBEGohBEIAIQACQANAIAAgA1ENASABIABCIIZCBIQQg4CAgAAhBUEAIQYCQANAIAZBEEYNASACQeAAaiAGakICNwMAIAZBCGohBgwACwsCQAJAIAVC/wGDQswAUg0A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CyACIAAQi4CAgAAQvIGAgAAgAEEBEL2BgIAAIAFBMGokgICAgAALuAECAX8CfiOAgICAAEEQayIBJICAgIAAAkACQCAARQ0AIAAQv4CAgAAQgoCAgABCIIinSw0BQQEQp4GAgAAgAK1CIIZCBIQiAkICEJaAgIAAGkGAhMCAAEENENaAgIAAENCAgIAAIQMgASACNwMIIANBmITAgABBASABQQhqQQEQ0YCAgAAQjICAgAAaIAFBEGokgICAgAAPC0KDgICAsIUBEMSAgIAAAAtCg4CAgJCFARDEgICAAAALmgEBAn8jgICAgABBEGsiAySAgICAAAJAIABC/wGDQs0AUg0AIAFC/wGDQs0AUg0AQQEgAqdB/wFxIgRBAEdBAXQgBEEBRhsiBEECRg0AIANBBGoQtoCAgAACQCADKAIEQQFHDQAgAygCCCADKAIMELeAgIAACyAAENKAgIAAIAEgBEEBcRDKgICAACADQRBqJICAgIAAQgIPCwALjQEBAn8jgICAgABBEGsiAiSAgICAAAJAIABC/wGDQs0AUg0AQQEgAadB/wFxIgNBAEdBAXQgA0EBRhsiA0ECRg0AIAJBBGoQtoCAgAACQCACKAIEQQFHDQAgAigCCCACKAIMELeAgIAACxC6gICAABogACADQQFxEMqAgIAAIAJBEGokgICAgABCAg8LAAt/AQF/I4CAgIAAQRBrIgEkgICAgAAgASAAEO6AgIAAAkAgASgCAEEBRg0AIAEpAwghABC6gICAABogARC2gICAAAJAIAEoAgBBAUcNACABKAIEIAEoAggQt4CAgAALQQEQroGAgAAgABCegICAABogAUEQaiSAgICAAEICDwsACxgAELCBgIAAIACtQv8Bg0ICEJaAgIAAGgulAQEBfyOAgICAAEEQayIBJICAgIAAAkAgAEL/AYNCAlINABC6gICAABogAUEEahC2gICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQt4CAgAALAkACQBCwgYCAACIAQgIQuYCAgABFDQAgAEICEICAgIAAp0H/AXEOAgABAgtCg4CAgKCDARDEgICAAAALQQAQroGAgAAgAUEQaiSAgICAAEICDwsAC2ACAX8BfiOAgICAAEEQayIAJICAgIAAIABBqoXAgABBCRDHgICAAAJAAkAgACgCAA0AIAAgACkDCBDIgICAACAAKAIAQQFHDQELAAsgACkDCCEBIABBEGokgICAgAAgAQsIABC7gICAAAuHBQEFfyOAgICAAEHQAGsiAiSAgICAACACQShqIAAQs4GAgAACQAJAIAIoAihBAkYNACACQQhqQQhqIAJBKGpBCGoiAygCADYCACACIAIpAig3AwggAkEoaiABELOBgIAAIAIoAihBAkYNACACQRhqQQhqIAMoAgA2AgAgAiACKQIoNwMYIAJBKGoQtoCAgAACQCACKAIoQQFHDQAgAigCLCACKAIwELeAgIAACxC6gICAABoCQAJAAkAQtYCAgAANABCfgICAACEAEKCAgIAAQiCIIgEgAEIgiCIAVA0EIAGnIACnayIDQYD7gAMgA0GA+4ADSRshBCACIAJBGGo2AiwgAiACQQhqNgIoQQAhAwNAIANBCEYNAwJAIAJBKGogA2ooAgAiBSgCAEEBcUUNACAFKAIIIgYgBEsNAyAFKAIEIAZLDQMLIANBBGohAwwACwtCg4CAgND/ABDEgICAAAALQoOAgIDA/wAQxICAgAAACwJAAkAgAigCCEEBRw0AIAIoAgwgAigCEBClgYCAAAwBC0EBELiAgIAAQgIQl4CAgAAaCwJAAkAgAigCGEEBRw0AIAIoAhwgAigCIBCmgYCAAAwBC0ECELiAgIAAQgIQl4CAgAAaCyACQShqQQhqIAJBCGpBCGooAgA2AgAgAkE8aiACQRhqQQhqKAIANgIAIAIgAikDCDcDKCACIAIpAxg3AjRBzITAgABBDxDWgICAABDQgICAACEAIAJBKGoQtIGAgAAhASACIAJBNGoQtIGAgAA3A0ggAiABNwNAIABB8ITAgABBAiACQcAAakECENGAgIAAEIyAgIAAGiACQdAAaiSAgICAAEICDwsACxC0gICAAAALaAEBfyOAgICAAEEQayICJICAgIAAAkACQCABQgJRDQAgAkEEaiABEMiBgIAAAkAgAigCBEUNACAAQQI2AgAMAgsgACACKQIINwIEIABBATYCAAwBCyAAQQA2AgALIAJBEGokgICAgAALQwIBfwF+I4CAgIAAQRBrIgEkgICAgAAgASAAELaBgIAAAkAgASgCAEEBRw0AAAsgASkDCCECIAFBEGokgICAgAAgAgvCAQICfwF+I4CAgIAAQcAAayIAJICAgIAAIABBCGoQtoCAgAACQCAAKAIIQQFHDQAgACgCDCAAKAIQELeAgIAACyAAQQhqELaAgIAAIABBFGoiARDOgICAACAAQTBqIABBCGoQtoGAgAACQAJAIAAoAjANACAAKQM4IQIgAEEwaiABELaBgIAAIAAoAjBBAUcNAQsACyAAIAApAzg3AyggACACNwMgIABBIGpBAhCegYCAACECIABBwABqJICAgIAAIAILMAACQCABKAIAQQFHDQAgACABKAIEIAEoAggQyYGAgAAPCyAAQgA3AwAgAEICNwMIC6sBAQF/I4CAgIAAQSBrIgAkgICAgAAgAEEMahC2gICAAAJAIAAoAgxBAUcNACAAKAIQIAAoAhQQt4CAgAALELqAgIAAGgJAELWAgIAARQ0AQoOAgIDg/wAQxICAgAAAC0EAELiAgIAAQgFCAhCWgICAABpBgIXAgABBEhDWgICAABDQgICAAEEEQQAgAEEYakEAENGAgIAAEIyAgIAAGiAAQSBqJICAgIAAQgILCQAQtYCAgACtCzEAAkAgAEL/AYNCBFINACABQv8Bg0IEUg0AIABCIIinIAFCIIinELeAgIAAQgIPCwAL3AICAn8BfiOAgICAAEEgayICJICAgIAAIAJBEGogABC7gYCAAAJAAkACQAJAIAIoAhBBAUYNAEEBIAGnQf8BcSIDQQBHQQF0IANBAUYbIgNBAkYNACACKQMYIQAgAkEQahC2gICAAAJAIAIoAhBBAUcNACACKAIUIAIoAhgQt4CAgAALELqAgIAAGgJAAkAgA0EBcQ0AIAJBCGoQv4CAgAAiASAAEImAgIAAEMyAgIAAIAIoAggiA0ECRg0DIANFDQQCQCACKAIMIgMgARCCgICAAEIgiKdPDQAgASADrUIghkIEhBCKgICAACEBCyABEIKAgIAAIQQQvYCAgAAgBEIgiKdLDQUgARC8gYCAACAAQQAQvYGAgAAMAQsgABCpgYCAAAsgAkEgaiSAgICAAEICDwsACxC0gICAAAALQoOAgICAhQEQxICAgAAAC0KDgICAkIUBEMSAgIAAAAsjAAJAIAFC/wGDQsgAUQ0AIABCATcDAA8LIAAgARDAgICAAAtbAQF/I4CAgIAAQRBrIgEkgICAgABBABCngYCAACAAQgEQloCAgAAaIAFBBGoQzoCAgAACQCABKAIEQQFHDQAgASgCCCABKAIMEKiBgIAACyABQRBqJICAgIAAC9ABAwF/AX4BfyOAgICAAEEgayICJICAgIAAQeyDwIAAQQoQ1oCAgAAhAyACIAA3AwggAiADNwMAQQAhBANAAkAgBEEQRw0AQQAhBAJAA0AgBEEQRg0BIAJBEGogBGogAiAEaikDADcDACAEQQhqIQQMAAsLIAJBEGpBAhCegYCAACEAIAIgAa1C/wGDNwMQIABB+IPAgABBASACQRBqQQEQ0YCAgAAQjICAgAAaIAJBIGokgICAgAAPCyACQRBqIARqQgI3AwAgBEEIaiEEDAALC20BAX8jgICAgABBEGsiASSAgICAAAJAIABC/wGDQgRSDQAgAUEEahC2gICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQt4CAgAALELqAgIAAGiAAQiCIpxCqgYCAACABQRBqJICAgIAAQgIPCwALVAIBfwF+I4CAgIAAQRBrIgAkgICAgAAgAEEEahC2gICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQt4CAgAALEL+AgIAAIQEgAEEQaiSAgICAACABC2QCAX8BfiOAgICAAEEQayIAJICAgIAAIABBBGoQtoCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMELeAgIAACxC/gICAABCCgICAACEBIABBEGokgICAgAAgAUKAgICAcINCBIQL3AECAX8CfiOAgICAAEEwayIBJICAgIAAIAFBIGogABC7gYCAAAJAIAEoAiBBAUYNACABKQMoIQIgAUEgahC2gICAAAJAIAEoAiBBAUcNACABKAIkIAEoAigQt4CAgAALEL+AgIAAIgAQgoCAgAAhAyABQQA2AgggASAANwMAIAEgA0IgiD4CDAJAA0AgAUEgaiABEMKAgIAAIAFBEGogASkDICABKQMoELOAgIAAIAEpAxAiAKdBAUcNASABKQMYIAIQw4CAgABFDQALCyABQTBqJICAgIAAIAAPCwALDwAQxoCAgACtQiCGQgSEC1QBAX8jgICAgABBEGsiAiSAgICAACACIAAQ7oCAgAACQCACKAIAQQFGDQAgAUL/AYNCywBSDQAgAikDCCABELyAgIAAIAJBEGokgICAgABCAg8LAAtlAQF/I4CAgIAAQRBrIgMkgICAgAAgAyAAEO6AgIAAAkAgAygCAEEBRg0AIAFC/wGDQssAUg0AIAJC/wGDQgRSDQAgAykDCCABIAJCIIinEL6AgIAAIANBEGokgICAgABCAg8LAAsDAAAL2wECAX4EfwJAAkAgAkEJSw0AQgAhAyACIQQgASEFA0ACQCAEDQAgA0IIhkIOhCEDDAMLQQEhBgJAIAUtAAAiB0HfAEYNAAJAIAdBUGpB/wFxQQpJDQACQCAHQb9/akH/AXFBGkkNACAHQZ9/akH/AXFBGUsNBCAHQUVqIQYMAgsgB0FLaiEGDAELIAdBUmohBgsgA0IGhiAGrUL/AYOEIQMgBEF/aiEEIAVBAWohBQwACwsgAa1CIIZCBIQgAq1CIIZCBIQQpoCAgAAhAwsgAEIANwMAIAAgAzcDCAuzAgMBfwF+AX8jgICAgABBIGsiAiSAgICAAAJAAkAgAUL/AYNCywBRDQAgAEIBNwMADAELIAEQgoCAgAAhAyACQQA2AgggAiABNwMAIAIgA0IgiD4CDCACQRBqIAIQ8ICAgAACQCACKQMQIgFCAlENACABp0EBcQ0AAkAgAikDGCIBp0H/AXEiBEHKAEYNACAEQQ5HDQELAkAgAUHQg8CAAEEBEPGAgIAAQv////8PVg0AIAIoAgggAigCDBDygICAAEEBSw0AIAJBEGogAhDwgICAACACKQMQIgFCAlENACABp0EBcQ0AIAJBEGogAikDGBDugICAACACKAIQDQAgAikDGCEBIABCADcDACAAIAE3AwgMAgsgAEIBNwMADAELIABCATcDAAsgAkEgaiSAgICAAAutAQICfwF+I4CAgIAAQRBrIgIkgICAgABBACEDAkADQCADQRBGDQEgAiADakICNwMAIANBCGohAwwACwtBASEDAkAgAUL/AYNCzABSDQAgAUG8hMCAAEECIAJBAhDpgICAACACKQMAIgFC/wGDQgRSDQAgAikDCCIEQv8Bg0IEUg0AIAAgAUIgiKc2AgggACAEQiCIPgIEQQAhAwsgACADNgIAIAJBEGokgICAgAALYAIBfwF+I4CAgIAAQRBrIgMkgICAgAAgAyABrUIghkIEhDcDCCADIAKtQiCGQgSENwMAQbyEwIAAQQIgA0ECENGAgIAAIQQgAEIANwMAIAAgBDcDCCADQRBqJICAgIAAC3cCAn8BfiOAgICAAEEQayICJICAgIAAQQAhAwJAAkAgARC4gICAACIEQgIQuYCAgABFDQAgAkEEaiAEQgIQgICAgAAQyIGAgABBASEDIAIoAgRBAUYNASAAIAIpAgg3AgQLIAAgAzYCACACQRBqJICAgIAADwsAC1YCAX8BfiOAgICAAEEQayIDJICAgIAAIAAQuICAgAAhBCADIAEgAhDJgYCAAAJAIAMoAgBBAUcNAAALIAQgAykDCEICEJaAgIAAGiADQRBqJICAgIAACxwAIAAQ5YCAgAAgAa1CIIZCBIRCAhCWgICAABoLFQAgABDlgICAACABQgIQloCAgAAaC7kHAQx/I4CAgIAAQRBrIQMCQAJAIAJBEE8NACAAIQQMAQsCQCAAIABBACAAa0EDcSIFaiIGTw0AIAVBf2ohByAAIQQgASEIAkAgBUUNACAFIQkgACEEIAEhCANAIAQgCC0AADoAACAIQQFqIQggBEEBaiEEIAlBf2oiCQ0ACwsgB0EHSQ0AA0AgBCAILQAAOgAAIARBAWogCEEBai0AADoAACAEQQJqIAhBAmotAAA6AAAgBEEDaiAIQQNqLQAAOgAAIARBBGogCEEEai0AADoAACAEQQVqIAhBBWotAAA6AAAgBEEGaiAIQQZqLQAAOgAAIARBB2ogCEEHai0AADoAACAIQQhqIQggBEEIaiIEIAZHDQALCyAGIAIgBWsiCUF8cSIHaiEEAkACQCABIAVqIghBA3EiAQ0AIAYgBE8NASAIIQEDQCAGIAEoAgA2AgAgAUEEaiEBIAZBBGoiBiAESQ0ADAILC0EAIQIgA0EANgIMIANBDGogAXIhBQJAQQQgAWsiCkEBcUUNACAFIAgtAAA6AABBASECCwJAIApBAnFFDQAgBSACaiAIIAJqLwEAOwEACyAIIAFrIQIgAUEDdCELIAMoAgwhBQJAAkAgBkEEaiAESQ0AIAYhDAwBC0EAIAtrQRhxIQ0DQCAGIAUgC3YgAkEEaiICKAIAIgUgDXRyNgIAIAZBCGohCiAGQQRqIgwhBiAKIARJDQALC0EAIQYgA0EAOgAIIANBADoABgJAAkAgAUEBRw0AIANBCGohDUEAIQFBACEKQQAhDgwBCyACQQVqLQAAIQogAyACQQRqLQAAIgE6AAggCkEIdCEKQQIhDiADQQZqIQ0LAkAgCEEBcUUNACANIAJBBGogDmotAAA6AAAgAy0ABkEQdCEGIAMtAAghAQsgDCAKIAZyIAFB/wFxckEAIAtrQRhxdCAFIAt2cjYCAAsgCUEDcSECIAggB2ohAQsCQCAEIAQgAmoiBk8NACACQX9qIQkCQCACQQdxIghFDQADQCAEIAEtAAA6AAAgAUEBaiEBIARBAWohBCAIQX9qIggNAAsLIAlBB0kNAANAIAQgAS0AADoAACAEQQFqIAFBAWotAAA6AAAgBEECaiABQQJqLQAAOgAAIARBA2ogAUEDai0AADoAACAEQQRqIAFBBGotAAA6AAAgBEEFaiABQQVqLQAAOgAAIARBBmogAUEGai0AADoAACAEQQdqIAFBB2otAAA6AAAgAUEIaiEBIARBCGoiBCAGRw0ACwsgAAsOACAAIAEgAhDOgYCAAAsLggsBAEGAgMAAC/gKQ3JlYXRlQ29udHJhY3RIb3N0Rm5DcmVhdGVDb250cmFjdFdpdGhDdG9ySG9zdEZuRAEQAAgAAAAAABAAFAAAABQAEAAcAAAAc2V0X2RzdF9jb25maWdwYXJhbXNWABAABgAAAH8EEAAQAAAAjwQQAAMAAACWAxAADgAAAGNvbmZpZwAAfAAQAAYAAAASBBAABwAAAGZ1bmNcARAABAAAAJQAEAAEAAAAMgEQAAIAAABxdW9ydW1fY2hhbmdlX2FkbWluZXhwaXJhdGlvbnNpZ25hdHVyZXN2aWQAAMMAEAAKAAAAnwQQAAYAAADNABAACgAAANcAEAADAAAATm9uZUFkbWluAAAA/AAQAAQAAAAAARAABQAAAFZpZERzdENvbmZpZ1VzZWRIYXNoYW1vdW50dG8sARAABgAAADIBEAACAAAAQ29udHJhY3QAAAASAAAAAAAAAABXYXNtYXJnc2NvbnRyYWN0Zm5fbmFtZQBcARAABAAAAGABEAAIAAAAaAEQAAcAAABleGVjdXRhYmxlc2FsdAAAiAEQAAoAAACSARAABAAAAGNvbnN0cnVjdG9yX2FyZ3OoARAAEAAAAIgBEAAKAAAAkgEQAAQAAABYARAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc2lnbmVyX3NldAAAswIQAAYAAAB0aHJlc2hvbGRfc2V0dGhyZXNob2xkAAANAhAACQAAAFNpZ25lcnNUaHJlc2hvbGRleHRlbmRfdG8AAAAwAhAACQAAAA0CEAAJAAAAdHRsX2NvbmZpZ3Nfc2V0aW5zdGFuY2VwZXJzaXN0ZW50AAAAWwIQAAgAAABjAhAACgAAAHR0bF9jb25maWdzX2Zyb3plbkZyb3plbkluc3RhbmNlUGVyc2lzdGVudE1pZ3JhdGluZ2FjdGl2ZWFkbWluAACzAhAABgAAALkCEAAFAAAAc2V0X3N1cHBvcnRlZF9tZXNzYWdlX2xpYm1lc3NhZ2VfbGlic3VwcG9ydGVkAAAA6QIQAAsAAAD0AhAACQAAAHNldF9hbGxvd2xpc3RhbGxvd2Vkb2FwcB0DEAAHAAAAJAMQAAQAAABzZXRfZGVueWxpc3RkZW5pZWQAAEQDEAAGAAAAJAMQAAQAAABwYXVzZXIAAFwDEAAGAAAAdW5wYXVzZXJsAxAACAAAAHNldF9kZWZhdWx0X211bHRpcGxpZXJfYnBzbXVsdGlwbGllcl9icHOWAxAADgAAAHNldF9kZXBvc2l0X2FkZHJlc3NkZXBvc2l0X2FkZHJlc3MAAL8DEAAPAAAAc2V0X3ByaWNlX2ZlZWRwcmljZV9mZWVk5gMQAAoAAABzZXRfc3VwcG9ydGVkX29wdGlvbl90eXBlc2RzdF9laWRvcHRpb25fdHlwZXMAAAASBBAABwAAABkEEAAMAAAAc2V0X3dvcmtlcl9mZWVfbGliZmVlX2xpYgAAAEoEEAAHAAAAY29uZmlybWF0aW9uc2RlZmF1bHRfbXVsdGlwbGllcl9icHNmbG9vcl9tYXJnaW5fdXNkZ2Fzb3B0aW9uc3F1b3J1bXNlbmRlcgAAAFwEEAANAAAAaQQQABYAAAASBBAABwAAAH8EEAAQAAAAjwQQAAMAAACWAxAADgAAAJIEEAAHAAAA5gMQAAoAAACZBBAABgAAAJ8EEAAGAAAAUGF1c2VkRGVwb3NpdEFkZHJlc3NQcmljZUZlZWRXb3JrZXJGZWVMaWJEZWZhdWx0TXVsdGlwbGllckJwc1N1cHBvcnRlZE9wdGlvblR5cGVzTWVzc2FnZUxpYnNBbGxvd2xpc3REZW55bGlzdEFsbG93bGlzdFNpemVBZG1pbnMAk+4BDmNvbnRyYWN0c3BlY3YwAAAABAAAAAAAAAAAAAAACER2bkVycm9yAAAABwAAAAAAAAAPQXV0aERhdGFFeHBpcmVkAAAAAAEAAAAAAAAAD0VpZE5vdFN1cHBvcnRlZAAAAAACAAAAAAAAAA9IYXNoQWxyZWFkeVVzZWQAAAAAAwAAAAAAAAARSW52YWxpZEludm9jYXRpb24AAAAAAAAEAAAAAAAAAApJbnZhbGlkVmlkAAAAAAAFAAAAAAAAABFOb25Db250cmFjdEludm9rZQAAAAAAAAYAAAAAAAAACU9ubHlBZG1pbgAAAAAAAAcAAAAFAAAAAAAAAAAAAAAMU2V0RHN0Q29uZmlnAAAAAQAAAA5zZXRfZHN0X2NvbmZpZwAAAAAAAQAAAAAAAAAGcGFyYW1zAAAAAAPqAAAH0AAAAA5Ec3RDb25maWdQYXJhbQAAAAAAAAAAAAIAAAABAAAAckNvbmZpZ3VyYXRpb24gZm9yIGEgZGVzdGluYXRpb24gY2hhaW4uCgpDb250YWlucyBmZWUgY2FsY3VsYXRpb24gcGFyYW1ldGVycyBzcGVjaWZpYyB0byBlYWNoIGRlc3RpbmF0aW9uIGVuZHBvaW50LgAAAAAAAAAAAAlEc3RDb25maWcAAAAAAAADAAAAO01pbmltdW0gZmVlIG1hcmdpbiBpbiBVU0QgKHNjYWxlZCBieSBuYXRpdmUgZGVjaW1hbHMgcmF0ZSkuAAAAABBmbG9vcl9tYXJnaW5fdXNkAAAACgAAAC5HYXMgZm9yIHZlcmlmaWNhdGlvbiBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAAAAADZ2FzAAAAAAoAAABnRmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgxMDAwMCA9IDEwMCUpLgpJZiAwLCB0aGUgZGVmYXVsdCBtdWx0aXBsaWVyIGZyb20gd29ya2VyIGNvbmZpZyBpcyB1c2VkLgAAAAAObXVsdGlwbGllcl9icHMAAAAAAAQAAAABAAAANlBhcmFtZXRlciBmb3Igc2V0dGluZyBkZXN0aW5hdGlvbiBjaGFpbiBjb25maWd1cmF0aW9uLgAAAAAAAAAAAA5Ec3RDb25maWdQYXJhbQAAAAAAAgAAACdUaGUgY29uZmlndXJhdGlvbiBmb3IgdGhpcyBkZXN0aW5hdGlvbi4AAAAABmNvbmZpZwAAAAAH0AAAAAlEc3RDb25maWcAAAAAAAAcVGhlIGRlc3RpbmF0aW9uIGVuZHBvaW50IElELgAAAAdkc3RfZWlkAAAAAAQAAAABAAAAiVJlcHJlc2VudHMgYSBzaW5nbGUgY29udHJhY3QgaW52b2NhdGlvbiBmb3IgbXVsdGlzaWcgYXV0aG9yaXphdGlvbi4KClVzZWQgaW4gYGhhc2hfY2FsbF9kYXRhYCB0byBjb21wdXRlIHRoZSBoYXNoIHRoYXQgc2lnbmVycyBzaWduIG92ZXIuAAAAAAAAAAAAAARDYWxsAAAAAwAAABNGdW5jdGlvbiBhcmd1bWVudHMuAAAAAARhcmdzAAAD6gAAAAAAAAAYRnVuY3Rpb24gbmFtZSB0byBpbnZva2UuAAAABGZ1bmMAAAARAAAAGFRhcmdldCBjb250cmFjdCBhZGRyZXNzLgAAAAJ0bwAAAAAAEwAAAAAAAAA0VmFsaWRhdGVzIGF1dGhvcml6YXRpb24gZm9yIERWTiBjb250cmFjdCBvcGVyYXRpb25zLgAAAAxfX2NoZWNrX2F1dGgAAAADAAAAAAAAABFzaWduYXR1cmVfcGF5bG9hZAAAAAAAA+4AAAAgAAAAAAAAAAlhdXRoX2RhdGEAAAAAAAfQAAAAE1RyYW5zYWN0aW9uQXV0aERhdGEAAAAAAAAAAA1hdXRoX2NvbnRleHRzAAAAAAAD6gAAB9AAAAAHQ29udGV4dAAAAAABAAAD6QAAA+0AAAAAAAAAAwAAAAEAAADHQXV0aGVudGljYXRpb24gZGF0YSBmb3IgRFZOIGNvbnRyYWN0IHRyYW5zYWN0aW9ucy4KClRoaXMgc3RydWN0IGlzIHVzZWQgd2l0aCBTb3JvYmFuJ3MgY3VzdG9tIGFjY291bnQgaW50ZXJmYWNlIHRvIGF1dGhvcml6ZQp0cmFuc2FjdGlvbnMgdGhyb3VnaCBhIGNvbWJpbmF0aW9uIG9mIGFkbWluIHNpZ25hdHVyZSBhbmQgbXVsdGlzaWcgcXVvcnVtLgAAAAAAAAAAE1RyYW5zYWN0aW9uQXV0aERhdGEAAAAABAAAAERFeHBpcmF0aW9uIHRpbWVzdGFtcCAobGVkZ2VyIHRpbWUpIGFmdGVyIHdoaWNoIHRoaXMgYXV0aCBpcyBpbnZhbGlkLgAAAApleHBpcmF0aW9uAAAAAAAGAAAAPUVudGl0eSBzdWJtaXR0aW5nIHRoZSB0cmFuc2FjdGlvbiAoYWRtaW4sIG9yIHBlcm1pc3Npb25sZXNzKS4AAAAAAAAGc2VuZGVyAAAAAAfQAAAABlNlbmRlcgAAAAAAPFNpZ25hdHVyZXMgZnJvbSBtdWx0aXNpZyBzaWduZXJzIChzZWNwMjU2azEsIDY1IGJ5dGVzIGVhY2gpLgAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAyVmVyaWZpZXIgSUQgLSBtdXN0IG1hdGNoIHRoZSBEVk4ncyBjb25maWd1cmVkIFZJRC4AAAAAAAN2aWQAAAAABAAAAAIAAAAAAAAAAAAAAAZTZW5kZXIAAAAAAAIAAAAAAAAALk5vIGV4cGxpY2l0IHNlbmRlciAocGVybWlzc2lvbmxlc3MgZXhlY3V0aW9uKS4AAAAAAAROb25lAAAAAQAAAI9BIHJlZ2lzdGVyZWQgYWRtaW4gKGVkMjU1MTkpIHN1Ym1pdHRpbmcgdGhlIHRyYW5zYWN0aW9uLgpUaGUgdHVwbGUgaXMgYChwdWJsaWNfa2V5LCBzaWduYXR1cmUpYCB3aGVyZSB0aGUgc2lnbmF0dXJlIGNvdmVycyB0aGUgU29yb2JhbiBwYXlsb2FkLgAAAAAFQWRtaW4AAAAAAAACAAAD7gAAACAAAAPuAAAAQAAAAAAAAADkU2V0cyB0aGUgcGF1c2VkIHN0YXRlIG9mIHRoZSB3b3JrZXIuCgpXaGVuIHBhdXNlZCwgdGhlIHdvcmtlciB3aWxsIHJlamVjdCBuZXcgam9iIGFzc2lnbm1lbnRzIChlLmcuLCBhc3NpZ25fam9iLCBnZXRfZmVlKS4KRXhpc3Rpbmcgam9icyBpbiBwcm9ncmVzcyBhcmUgbm90IGFmZmVjdGVkLgoKIyBBcmd1bWVudHMKKiBgcGF1c2VkYCAtIGB0cnVlYCB0byBwYXVzZSwgYGZhbHNlYCB0byB1bnBhdXNlAAAACnNldF9wYXVzZWQAAAAAAAEAAAAAAAAABnBhdXNlZAAAAAAAAQAAAAAAAAAAAAABN1NldHMgd2hldGhlciBhIG1lc3NhZ2UgbGlicmFyeSBpcyBzdXBwb3J0ZWQgYnkgdGhpcyB3b3JrZXIuCgpNZXNzYWdlIGxpYnJhcmllcyAoZS5nLiwgVUxOMzAyKSBjYWxsIHdvcmtlcnMgdG8gYXNzaWduIGpvYnMuIE9ubHkgc3VwcG9ydGVkCmxpYnJhcmllcyBjYW4gaW50ZXJhY3Qgd2l0aCB0aGlzIHdvcmtlci4KCiMgQXJndW1lbnRzCiogYG1lc3NhZ2VfbGliYCAtIFRoZSBtZXNzYWdlIGxpYnJhcnkgY29udHJhY3QgYWRkcmVzcwoqIGBzdXBwb3J0ZWRgIC0gYHRydWVgIHRvIGFkZCBzdXBwb3J0LCBgZmFsc2VgIHRvIHJlbW92ZSBzdXBwb3J0AAAAABlzZXRfc3VwcG9ydGVkX21lc3NhZ2VfbGliAAAAAAAAAgAAAAAAAAALbWVzc2FnZV9saWIAAAAAEwAAAAAAAAAJc3VwcG9ydGVkAAAAAAAAAQAAAAAAAAAAAAABWFNldHMgYWxsb3dsaXN0IHN0YXR1cyBmb3IgYW4gT0FwcCBhZGRyZXNzLgoKV2hlbiB0aGUgYWxsb3dsaXN0IGlzIGVtcHR5LCBhbGwgT0FwcHMgYXJlIGFsbG93ZWQgKHVubGVzcyBvbiBkZW55bGlzdCkuCldoZW4gdGhlIGFsbG93bGlzdCBpcyBub3QgZW1wdHksIG9ubHkgYWxsb3dsaXN0ZWQgT0FwcHMgYXJlIGFsbG93ZWQuCkRlbnlsaXN0IGFsd2F5cyB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgYWxsb3dsaXN0LgoKIyBBcmd1bWVudHMKKiBgb2FwcGAgLSBUaGUgT0FwcCBjb250cmFjdCBhZGRyZXNzCiogYGFsbG93ZWRgIC0gYHRydWVgIHRvIGFkZCB0byBhbGxvd2xpc3QsIGBmYWxzZWAgdG8gcmVtb3ZlAAAADXNldF9hbGxvd2xpc3QAAAAAAAACAAAAAAAAAARvYXBwAAAAEwAAAAAAAAAHYWxsb3dlZAAAAAABAAAAAAAAAAAAAAEJU2V0cyBkZW55bGlzdCBzdGF0dXMgZm9yIGFuIE9BcHAgYWRkcmVzcy4KCkRlbnlsaXN0ZWQgT0FwcHMgYXJlIGJsb2NrZWQgZnJvbSB1c2luZyB0aGlzIHdvcmtlciwgZXZlbiBpZiB0aGV5J3JlIG9uCnRoZSBhbGxvd2xpc3QgKGRlbnlsaXN0IHRha2VzIHByZWNlZGVuY2UpLgoKIyBBcmd1bWVudHMKKiBgb2FwcGAgLSBUaGUgT0FwcCBjb250cmFjdCBhZGRyZXNzCiogYGRlbmllZGAgLSBgdHJ1ZWAgdG8gYWRkIHRvIGRlbnlsaXN0LCBgZmFsc2VgIHRvIHJlbW92ZQAAAAAAAAxzZXRfZGVueWxpc3QAAAACAAAAAAAAAARvYXBwAAAAEwAAAAAAAAAGZGVuaWVkAAAAAAABAAAAAAAAAAAAAAE7U2V0cyB0aGUgZGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMuCgpUaGUgbXVsdGlwbGllciBpcyBhcHBsaWVkIHRvIGJhc2UgZmVlcyBkdXJpbmcgZmVlIGNhbGN1bGF0aW9uLiBVc2VkIHdoZW4Kbm8gZGVzdGluYXRpb24tc3BlY2lmaWMgbXVsdGlwbGllciBpcyBjb25maWd1cmVkLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gQWRtaW4gYWRkcmVzcyAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYG11bHRpcGxpZXJfYnBzYCAtIE11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgxMDAwMCA9IDF4LCAxMjAwMCA9IDEuMngpAAAAABpzZXRfZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAAAgAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAAAAAAAAAAAAA8VNldHMgdGhlIGRlcG9zaXQgYWRkcmVzcyB3aGVyZSB3b3JrZXIgZmVlcyBhcmUgY29sbGVjdGVkLgoKV2hlbiBqb2JzIGFyZSBhc3NpZ25lZCwgZmVlcyBhcmUgZGlyZWN0ZWQgdG8gdGhpcyBhZGRyZXNzLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gQWRtaW4gYWRkcmVzcyAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYGRlcG9zaXRfYWRkcmVzc2AgLSBBZGRyZXNzIHRvIHJlY2VpdmUgY29sbGVjdGVkIGZlZXMAAAAAAAATc2V0X2RlcG9zaXRfYWRkcmVzcwAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAAD2RlcG9zaXRfYWRkcmVzcwAAAAATAAAAAAAAAAAAAADrU2V0cyBzdXBwb3J0ZWQgZXhlY3V0b3Igb3B0aW9uIHR5cGVzIGZvciBhIGRlc3RpbmF0aW9uIGVuZHBvaW50LgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gQWRtaW4gYWRkcmVzcyAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYGVpZGAgLSBEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikKKiBgb3B0aW9uX3R5cGVzYCAtIEVuY29kZWQgc3VwcG9ydGVkIG9wdGlvbiB0eXBlcwAAAAAac2V0X3N1cHBvcnRlZF9vcHRpb25fdHlwZXMAAAAAAAMAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAADZWlkAAAAAAQAAAAAAAAADG9wdGlvbl90eXBlcwAAAA4AAAAAAAAAAAAAARJTZXRzIHRoZSB3b3JrZXIgZmVlIGxpYnJhcnkgY29udHJhY3QgYWRkcmVzcy4KClRoZSBmZWUgbGlicmFyeSBjYWxjdWxhdGVzIGZlZXMgYmFzZWQgb24gZXhlY3V0b3Igb3B0aW9ucyBhbmQgcHJpY2UgZmVlZCBkYXRhLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gQWRtaW4gYWRkcmVzcyAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYHdvcmtlcl9mZWVfbGliYCAtIEZlZSBsaWJyYXJ5IGNvbnRyYWN0IGFkZHJlc3MgaW1wbGVtZW50aW5nIGBJRXhlY3V0b3JGZWVMaWJgAAAAAAASc2V0X3dvcmtlcl9mZWVfbGliAAAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAADndvcmtlcl9mZWVfbGliAAAAAAATAAAAAAAAAAAAAAESU2V0cyB0aGUgcHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzLgoKVGhlIHByaWNlIGZlZWQgcHJvdmlkZXMgZ2FzIHByaWNlcyBhbmQgZXhjaGFuZ2UgcmF0ZXMgZm9yIGNyb3NzLWNoYWluCmZlZSBjYWxjdWxhdGlvbnMuCgojIEFyZ3VtZW50cwoqIGBhZG1pbmAgLSBBZG1pbiBhZGRyZXNzIChtdXN0IHByb3ZpZGUgYXV0aG9yaXphdGlvbikKKiBgcHJpY2VfZmVlZGAgLSBQcmljZSBmZWVkIGNvbnRyYWN0IGFkZHJlc3MgaW1wbGVtZW50aW5nIGBJTGF5ZXJaZXJvUHJpY2VGZWVkYAAAAAAADnNldF9wcmljZV9mZWVkAAAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAACnByaWNlX2ZlZWQAAAAAABMAAAAAAAAAAAAAAFVSZXR1cm5zIHdoZXRoZXIgYW4gYWRkcmVzcyBpcyBhbiBhZG1pbi4KCiMgQXJndW1lbnRzCiogYGFkbWluYCAtIFRoZSBhZGRyZXNzIHRvIGNoZWNrAAAAAAAACGlzX2FkbWluAAAAAQAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAQAAAAEAAAAAAAAAHFJldHVybnMgYWxsIGFkbWluIGFkZHJlc3Nlcy4AAAAGYWRtaW5zAAAAAAAAAAAAAQAAA+oAAAATAAAAAAAAACVSZXR1cm5zIHdoZXRoZXIgdGhlIHdvcmtlciBpcyBwYXVzZWQuAAAAAAAABnBhdXNlZAAAAAAAAAAAAAEAAAABAAAAAAAAAG9SZXR1cm5zIHdoZXRoZXIgYSBtZXNzYWdlIGxpYnJhcnkgaXMgc3VwcG9ydGVkLgoKIyBBcmd1bWVudHMKKiBgbWVzc2FnZV9saWJgIC0gTWVzc2FnZSBsaWJyYXJ5IGNvbnRyYWN0IGFkZHJlc3MAAAAAGGlzX3N1cHBvcnRlZF9tZXNzYWdlX2xpYgAAAAEAAAAAAAAAC21lc3NhZ2VfbGliAAAAABMAAAABAAAAAQAAAAAAAABzUmV0dXJucyBhbGwgc3VwcG9ydGVkIG1lc3NhZ2UgbGlicmFyeSBhZGRyZXNzZXMuCgojIFJldHVybnMKVmVjdG9yIG9mIHN1cHBvcnRlZCBtZXNzYWdlIGxpYnJhcnkgY29udHJhY3QgYWRkcmVzc2VzLgAAAAAMbWVzc2FnZV9saWJzAAAAAAAAAAEAAAPqAAAAEwAAAAAAAABaUmV0dXJucyB3aGV0aGVyIGFuIE9BcHAgaXMgb24gdGhlIGFsbG93bGlzdC4KCiMgQXJndW1lbnRzCiogYG9hcHBgIC0gT0FwcCBjb250cmFjdCBhZGRyZXNzAAAAAAAPaXNfb25fYWxsb3dsaXN0AAAAAAEAAAAAAAAABG9hcHAAAAATAAAAAQAAAAEAAAAAAAAAWVJldHVybnMgd2hldGhlciBhbiBPQXBwIGlzIG9uIHRoZSBkZW55bGlzdC4KCiMgQXJndW1lbnRzCiogYG9hcHBgIC0gT0FwcCBjb250cmFjdCBhZGRyZXNzAAAAAAAADmlzX29uX2RlbnlsaXN0AAAAAAABAAAAAAAAAARvYXBwAAAAEwAAAAEAAAABAAAAAAAAAPtSZXR1cm5zIHdoZXRoZXIgYW4gT0FwcCBoYXMgYWNjZXNzIGNvbnRyb2wgbGlzdCAoQUNMKSBwZXJtaXNzaW9uLgoKQUNMIGV2YWx1YXRpb24gb3JkZXI6CjEuIElmIG9uIGRlbnlsaXN0IOKGkiBkZW5pZWQKMi4gSWYgYWxsb3dsaXN0IGlzIGVtcHR5IE9SIG9uIGFsbG93bGlzdCDihpIgYWxsb3dlZAozLiBPdGhlcndpc2Ug4oaSIGRlbmllZAoKIyBBcmd1bWVudHMKKiBgc2VuZGVyYCAtIE9BcHAgY29udHJhY3QgYWRkcmVzcyB0byBjaGVjawAAAAAHaGFzX2FjbAAAAAABAAAAAAAAAAZzZW5kZXIAAAAAABMAAAABAAAAAQAAAAAAAAAxUmV0dXJucyB0aGUgbnVtYmVyIG9mIGFkZHJlc3NlcyBvbiB0aGUgYWxsb3dsaXN0LgAAAAAAAA5hbGxvd2xpc3Rfc2l6ZQAAAAAAAAAAAAEAAAAEAAAAAAAAADNSZXR1cm5zIHRoZSBkZWZhdWx0IGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cy4AAAAAFmRlZmF1bHRfbXVsdGlwbGllcl9icHMAAAAAAAAAAAABAAAABAAAAAAAAAA1UmV0dXJucyB0aGUgZGVwb3NpdCBhZGRyZXNzIHdoZXJlIGZlZXMgYXJlIGNvbGxlY3RlZC4AAAAAAAAPZGVwb3NpdF9hZGRyZXNzAAAAAAAAAAABAAAAEwAAAAAAAAAoUmV0dXJucyB0aGUgcHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzLgAAAApwcmljZV9mZWVkAAAAAAAAAAAAAQAAABMAAAAAAAAAfFJldHVybnMgc3VwcG9ydGVkIG9wdGlvbiB0eXBlcyBmb3IgYSBkZXN0aW5hdGlvbiBlbmRwb2ludC4KCiMgQXJndW1lbnRzCiogYGVpZGAgLSBEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikAAAAaZ2V0X3N1cHBvcnRlZF9vcHRpb25fdHlwZXMAAAAAAAEAAAAAAAAAA2VpZAAAAAAEAAAAAQAAA+gAAAAOAAAAAAAAADBSZXR1cm5zIHRoZSB3b3JrZXIgZmVlIGxpYnJhcnkgY29udHJhY3QgYWRkcmVzcy4AAAAOd29ya2VyX2ZlZV9saWIAAAAAAAAAAAABAAAAEwAAAAAAAAB4Q2FsY3VsYXRlcyB0aGUgdmVyaWZpY2F0aW9uIGZlZSBmb3IgYSBjcm9zcy1jaGFpbiBtZXNzYWdlLgoKQ2FsbGVkIGJ5IHRoZSBzZW5kIGxpYnJhcnkgdG8gcXVvdGUgRFZOIGZlZXMgYmVmb3JlIHNlbmRpbmcuAAAAB2dldF9mZWUAAAAABwAAAAAAAAAIc2VuZF9saWIAAAATAAAAAAAAAAZzZW5kZXIAAAAAABMAAAAAAAAAB2RzdF9laWQAAAAABAAAAAAAAAANcGFja2V0X2hlYWRlcgAAAAAAAA4AAAAAAAAADHBheWxvYWRfaGFzaAAAA+4AAAAgAAAAAAAAAA1jb25maXJtYXRpb25zAAAAAAAABgAAAAAAAAAHb3B0aW9ucwAAAAAOAAAAAQAAAAsAAAAAAAAAuEFzc2lnbnMgYSB2ZXJpZmljYXRpb24gam9iIHRvIHRoaXMgRFZOIGFuZCByZXR1cm5zIGZlZSBwYXltZW50IGluZm8uCgpDYWxsZWQgYnkgdGhlIHNlbmQgbGlicmFyeSB3aGVuIGEgbWVzc2FnZSBpcyBzZW50LiBUaGUgRFZOIHdpbGwgbGF0ZXIKdmVyaWZ5IHRoZSBtZXNzYWdlIG9uIHRoZSBkZXN0aW5hdGlvbiBjaGFpbi4AAAAKYXNzaWduX2pvYgAAAAAABwAAAAAAAAAIc2VuZF9saWIAAAATAAAAAAAAAAZzZW5kZXIAAAAAABMAAAAAAAAAB2RzdF9laWQAAAAABAAAAAAAAAANcGFja2V0X2hlYWRlcgAAAAAAAA4AAAAAAAAADHBheWxvYWRfaGFzaAAAA+4AAAAgAAAAAAAAAA1jb25maXJtYXRpb25zAAAAAAAABgAAAAAAAAAHb3B0aW9ucwAAAAAOAAAAAQAAB9AAAAAMRmVlUmVjaXBpZW50AAAAAAAAAERTZXRzIGRlc3RpbmF0aW9uIGNoYWluIGNvbmZpZ3VyYXRpb25zLiBSZXF1aXJlcyBhZG1pbiBhdXRob3JpemF0aW9uLgAAAA5zZXRfZHN0X2NvbmZpZwAAAAAAAgAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAAZwYXJhbXMAAAAAA+oAAAfQAAAADkRzdENvbmZpZ1BhcmFtAAAAAAAAAAAAAAAAAEFSZXR1cm5zIHRoZSBkZXN0aW5hdGlvbiBjb25maWd1cmF0aW9uIGZvciBhIHNwZWNpZmljIGVuZHBvaW50IElELgAAAAAAAApkc3RfY29uZmlnAAAAAAABAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAABAAAD6AAAB9AAAAAJRHN0Q29uZmlnAAAAAAAAAAAAACVSZXR1cm5zIHRoZSBWZXJpZmllciBJRCBmb3IgdGhpcyBEVk4uAAAAAAAAA3ZpZAAAAAAAAAAAAQAAAAQAAAAAAAAAd0NvbXB1dGVzIHRoZSBoYXNoIG9mIGNhbGwgZGF0YSBmb3IgbXVsdGlzaWcgc2lnbmluZy4KCk9mZi1jaGFpbiBzaWduZXJzIHVzZSB0aGlzIHRvIGNvbXB1dGUgdGhlIGhhc2ggdGhleSBuZWVkIHRvIHNpZ24uAAAAAA5oYXNoX2NhbGxfZGF0YQAAAAAAAwAAAAAAAAADdmlkAAAAAAQAAAAAAAAACmV4cGlyYXRpb24AAAAAAAYAAAAAAAAABWNhbGxzAAAAAAAD6gAAB9AAAAAEQ2FsbAAAAAEAAAPuAAAAIAAAAAAAAAJkSW5pdGlhbGl6ZXMgdGhlIERWTiBjb250cmFjdC4KCiMgQXJndW1lbnRzCiogYHZpZGAgLSBWZXJpZmllciBJRCwgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgRFZOCiogYHNpZ25lcnNgIC0gSW5pdGlhbCBtdWx0aXNpZyBzaWduZXJzICgyMC1ieXRlIEV0aGVyZXVtIGFkZHJlc3NlcykKKiBgdGhyZXNob2xkYCAtIE1pbmltdW0gc2lnbmF0dXJlcyByZXF1aXJlZCBmb3IgbXVsdGlzaWcgb3BlcmF0aW9ucwoqIGBhZG1pbnNgIC0gSW5pdGlhbCBhZG1pbiBhZGRyZXNzZXMgZm9yIG9wZXJhdGlvbmFsIGZ1bmN0aW9ucwoqIGBzdXBwb3J0ZWRfbXNnbGlic2AgLSBNZXNzYWdlIGxpYnJhcmllcyB0aGlzIERWTiBzdXBwb3J0cyAoZS5nLiwgVUxOMzAyKQoqIGBwcmljZV9mZWVkYCAtIFByaWNlIGZlZWQgY29udHJhY3QgZm9yIGZlZSBjYWxjdWxhdGlvbnMKKiBgZGVmYXVsdF9tdWx0aXBsaWVyX2Jwc2AgLSBEZWZhdWx0IGZlZSBtdWx0aXBsaWVyICgxMDAwMCA9IDF4KQoqIGB3b3JrZXJfZmVlX2xpYmAgLSBGZWUgbGlicmFyeSBjb250cmFjdCBmb3IgY29tcHV0aW5nIERWTiBmZWVzCiogYGRlcG9zaXRfYWRkcmVzc2AgLSBBZGRyZXNzIHRvIHJlY2VpdmUgZmVlIHBheW1lbnRzAAAADV9fY29uc3RydWN0b3IAAAAAAAAJAAAAAAAAAAN2aWQAAAAABAAAAAAAAAAHc2lnbmVycwAAAAPqAAAD7gAAABQAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAABmFkbWlucwAAAAAD6gAAABMAAAAAAAAAEXN1cHBvcnRlZF9tc2dsaWJzAAAAAAAD6gAAABMAAAAAAAAACnByaWNlX2ZlZWQAAAAAABMAAAAAAAAAFmRlZmF1bHRfbXVsdGlwbGllcl9icHMAAAAAAAQAAAAAAAAADndvcmtlcl9mZWVfbGliAAAAAAATAAAAAAAAAA9kZXBvc2l0X2FkZHJlc3MAAAAAEwAAAAAAAAAAAAABalNldHMgYWRtaW4gc3RhdHVzIGZvciBhbiBhZGRyZXNzLiBDYW4gYmUgY2FsbGVkIGJ5IGFuIGV4aXN0aW5nIGFkbWluLgoKVGhpcyBhbGxvd3MgZXhpc3RpbmcgYWRtaW5zIHRvIGFkZCBvciByZW1vdmUgb3RoZXIgYWRtaW5zIHdpdGhvdXQgZ29pbmcgdGhyb3VnaAp0aGUgb3duZXIvbXVsdGlzaWcgcGF0aC4KCiMgQXJndW1lbnRzCiogYGNhbGxlcmAgLSBUaGUgYWRtaW4gY2FsbGluZyB0aGlzIGZ1bmN0aW9uIChtdXN0IHByb3ZpZGUgYXV0aG9yaXphdGlvbikKKiBgYWRtaW5gIC0gVGhlIGFkZHJlc3MgdG8gc2V0IGFkbWluIHN0YXR1cyBmb3IKKiBgYWN0aXZlYCAtIGB0cnVlYCB0byBhZGQgYWRtaW4sIGBmYWxzZWAgdG8gcmVtb3ZlAAAAAAAJc2V0X2FkbWluAAAAAAAAAwAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAAAAAABfEFsbG93cyB0aGUgcXVvcnVtIHRvIGFkZC9yZW1vdmUgYWRtaW5zIHdpdGhvdXQgcmVxdWlyaW5nIGFuIGFkbWluIHNpZ25hdHVyZS4KClRoaXMgZnVuY3Rpb24gYnlwYXNzZXMgdGhlIG5vcm1hbCBhZG1pbiB2ZXJpZmljYXRpb24gaW4gYF9fY2hlY2tfYXV0aGAsCnJlcXVpcmluZyBvbmx5IG11bHRpc2lnIHF1b3J1bSBzaWduYXR1cmVzLiBNdXN0IGJlIGNhbGxlZCBhcyBhIHNpbmdsZQpvcGVyYXRpb24gKGNhbm5vdCBiZSBidW5kbGVkIHdpdGggb3RoZXIgY2FsbHMpLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gVGhlIGFkZHJlc3MgdG8gc2V0IGFkbWluIHN0YXR1cyBmb3IKKiBgYWN0aXZlYCAtIGB0cnVlYCB0byBhZGQgYWRtaW4sIGBmYWxzZWAgdG8gcmVtb3ZlAAAAE3F1b3J1bV9jaGFuZ2VfYWRtaW4AAAAAAgAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAAAAAAAAAAAHdXBncmFkZQAAAAABAAAAAAAAAA1uZXdfd2FzbV9oYXNoAAAAAAAD7gAAACAAAAAAAAAAAAAAAAAAAAAHbWlncmF0ZQAAAAABAAAAAAAAAA5taWdyYXRpb25fZGF0YQAAAAAH0AAAAA1NaWdyYXRpb25EYXRhAAAAAAAAAAAAAAAAAAAAAAAACmF1dGhvcml6ZXIAAAAAAAAAAAABAAAAEwAAAAIAAAAAAAAAAAAAAApEdm5TdG9yYWdlAAAAAAADAAAAAAAAAAAAAAADVmlkAAAAAAEAAAAAAAAACURzdENvbmZpZwAAAAAAAAEAAAAEAAAAAQAAAAAAAAAIVXNlZEhhc2gAAAABAAAD7gAAACAAAAAAAAABj1NldHMgVFRMIGNvbmZpZ3MgZm9yIGluc3RhbmNlIGFuZCBwZXJzaXN0ZW50IHN0b3JhZ2UuCgotIGBOb25lYCB2YWx1ZXMgcmVtb3ZlIHRoZSBjb3JyZXNwb25kaW5nIGNvbmZpZyAoZGlzYWJsZXMgYXV0by1leHRlbnNpb24gZm9yIHRoYXQgdHlwZSkKLSBWYWxpZGF0ZXMgdGhhdCBgdGhyZXNob2xkIDw9IGV4dGVuZF90byA8PSBNQVhfVFRMYAoKIyBBcmd1bWVudHMKLSBgaW5zdGFuY2VgIC0gVFRMIGNvbmZpZyBmb3IgaW5zdGFuY2Ugc3RvcmFnZQotIGBwZXJzaXN0ZW50YCAtIFRUTCBjb25maWcgZm9yIHBlcnNpc3RlbnQgc3RvcmFnZQoKIyBQYW5pY3MKLSBgVHRsQ29uZmlnRnJvemVuYCBpZiBjb25maWdzIGFyZSBmcm96ZW4KLSBgSW52YWxpZFR0bENvbmZpZ2AgaWYgdmFsaWRhdGlvbiBmYWlscwAAAAAPc2V0X3R0bF9jb25maWdzAAAAAAIAAAAAAAAACGluc3RhbmNlAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAEhSZXR1cm5zIHRoZSBjdXJyZW50IFRUTCBjb25maWdzIGFzIChpbnN0YW5jZV9jb25maWcsIHBlcnNpc3RlbnRfY29uZmlnKS4AAAALdHRsX2NvbmZpZ3MAAAAAAAAAAAEAAAPtAAAAAgAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAADhUGVybWFuZW50bHkgZnJlZXplcyBUVEwgY29uZmlncywgcHJldmVudGluZyBhbnkgZnV0dXJlIG1vZGlmaWNhdGlvbnMuCgpUaGlzIGlzIGlycmV2ZXJzaWJsZSBhbmQgcHJvdmlkZXMgaW1tdXRhYmlsaXR5IGd1YXJhbnRlZXMgdG8gdXNlcnMuCkVtaXRzIGBUdGxDb25maWdzRnJvemVuYCBldmVudC4KCiMgUGFuaWNzCi0gYFR0bENvbmZpZ0FscmVhZHlGcm96ZW5gIGlmIGFscmVhZHkgZnJvemVuAAAAAAAAEmZyZWV6ZV90dGxfY29uZmlncwAAAAAAAAAAAAAAAAAAAAAAJ1JldHVybnMgd2hldGhlciBUVEwgY29uZmlncyBhcmUgZnJvemVuLgAAAAAVaXNfdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAAEAAAABAAAAAAAAAKVFeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwgKGlmIGN1cnJlbnQgVFRMIGlzIGJlbG93IHRoaXMsIGV4dGVuZCkuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAAAATZXh0ZW5kX2luc3RhbmNlX3R0bAAAAAACAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAlleHRlbmRfdG8AAAAAAAAEAAAAAAAAAAAAAABJQWRkcyBvciByZW1vdmVzIGEgc2lnbmVyIGZyb20gdGhlIG11bHRpc2lnLiBSZXF1aXJlcyBvd25lciBhdXRob3JpemF0aW9uLgAAAAAAAApzZXRfc2lnbmVyAAAAAAACAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAAAAAERTZXRzIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkIChxdW9ydW0pLiBSZXF1aXJlcyBvd25lciBhdXRob3JpemF0aW9uLgAAAA1zZXRfdGhyZXNob2xkAAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAAAAAAAH1JldHVybnMgYWxsIHJlZ2lzdGVyZWQgc2lnbmVycy4AAAAAC2dldF9zaWduZXJzAAAAAAAAAAABAAAD6gAAA+4AAAAUAAAAAAAAAC9SZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgcmVnaXN0ZXJlZCBzaWduZXJzLgAAAAANdG90YWxfc2lnbmVycwAAAAAAAAAAAAABAAAABAAAAAAAAAAsQ2hlY2tzIGlmIGFuIGFkZHJlc3MgaXMgYSByZWdpc3RlcmVkIHNpZ25lci4AAAAJaXNfc2lnbmVyAAAAAAAAAQAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAABAAAAAAAAADFSZXR1cm5zIHRoZSBjdXJyZW50IHNpZ25hdHVyZSB0aHJlc2hvbGQgKHF1b3J1bSkuAAAAAAAACXRocmVzaG9sZAAAAAAAAAAAAAABAAAABAAAAAAAAAA1VmVyaWZpZXMgc2lnbmF0dXJlcyBhZ2FpbnN0IHRoZSBjb25maWd1cmVkIHRocmVzaG9sZC4AAAAAAAARdmVyaWZ5X3NpZ25hdHVyZXMAAAAAAAACAAAAAAAAAAZkaWdlc3QAAAAAA+4AAAAgAAAAAAAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAAAAAAAAAAAC9WZXJpZmllcyBzaWduYXR1cmVzIGFnYWluc3QgYSBjdXN0b20gdGhyZXNob2xkLgAAAAATdmVyaWZ5X25fc2lnbmF0dXJlcwAAAAADAAAAAAAAAAZkaWdlc3QAAAAAA+4AAAAgAAAAAAAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAADUVuZHBvaW50RXJyb3IAAAAAAAAZAAAAAAAAABFBbHJlYWR5UmVnaXN0ZXJlZAAAAAAAAAEAAAAAAAAADUNvbXBvc2VFeGlzdHMAAAAAAAACAAAAAAAAAA9Db21wb3NlTm90Rm91bmQAAAAAAwAAAAAAAAAcRGVmYXVsdFJlY2VpdmVMaWJVbmF2YWlsYWJsZQAAAAQAAAAAAAAAGURlZmF1bHRTZW5kTGliVW5hdmFpbGFibGUAAAAAAAAFAAAAAAAAABVJbnN1ZmZpY2llbnROYXRpdmVGZWUAAAAAAAAGAAAAAAAAABJJbnN1ZmZpY2llbnRacm9GZWUAAAAAAAcAAAAAAAAAEEludmFsaWRGZWVBbW91bnQAAAAIAAAAAAAAAA1JbnZhbGlkRXhwaXJ5AAAAAAAACQAAAAAAAAAMSW52YWxpZEluZGV4AAAACgAAAAAAAAAMSW52YWxpZE5vbmNlAAAACwAAAAAAAAASSW52YWxpZFBheWxvYWRIYXNoAAAAAAAMAAAAAAAAABVJbnZhbGlkUmVjZWl2ZUxpYnJh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ciBhbmQgRFZOIG9wdGlvbnMuAAAAAAAAB29wdGlvbnMAAAAADgAAADlXaGV0aGVyIHRvIHBheSBmZWVzIGluIFpSTyB0b2tlbiBpbnN0ZWFkIG9mIG5hdGl2ZSB0b2tlbi4AAAAAAAAKcGF5X2luX3pybwAAAAAAAQAAADVSZWNlaXZlciBhZGRyZXNzIG9uIHRoZSBkZXN0aW5hdGlvbiBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAAAAhyZWNlaXZlcgAAA+4AAAAgAAAAAQAAAE1Tb3VyY2UgbWVzc2FnZSBpbmZvcm1hdGlvbiBpZGVudGlmeWluZyB3aGVyZSBhIGNyb3NzLWNoYWluIG1lc3NhZ2UgY2FtZSBmcm9tLgAAAAAAAAAAAAAGT3JpZ2luAAAAAAADAAAAF05vbmNlIGZvciB0aGlzIHBhdGh3YXkuAAAAAAVub25jZQAAAAAAAAYAAAAuU2VuZGVyIGFkZHJlc3Mgb24gdGhlIHNvdXJjZSBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAABnNlbmRlcgAAAAAD7gAAACAAAAAmU291cmNlIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAKEZlZSBzdHJ1Y3R1cmUgZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2luZy4AAAAAAAAADE1lc3NhZ2luZ0ZlZQAAAAIAAAAfRmVlIHBhaWQgaW4gbmF0aXZlIHRva2VuIChYTE0pLgAAAAAKbmF0aXZlX2ZlZQAAAAAACwAAAChGZWUgcGFpZCBpbiBaUk8gdG9rZW4gKExheWVyWmVybyB0b2tlbikuAAAAB3pyb19mZWUAAAAACwAAAAEAAABCUmVjZWlwdCByZXR1cm5lZCBhZnRlciBzdWNjZXNzZnVsbHkgc2VuZGluZyBhIGNyb3NzLWNoYWluIG1lc3NhZ2UuAAAAAAAAAAAAEE1lc3NhZ2luZ1JlY2VpcHQAAAADAAAAKVRoZSBmZWVzIGNoYXJnZWQgZm9yIHNlbmRpbmcgdGhlIG1lc3NhZ2UuAAAAAAAAA2ZlZQAAAAfQAAAADE1lc3NhZ2luZ0ZlZQAAACtHbG9iYWxseSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIG1lc3NhZ2UuAAAAAARndWlkAAAD7gAAACAAAAAkVGhlIG91dGJvdW5kIG5vbmNlIGZvciB0aGlzIHBhdGh3YXkuAAAABW5vbmNlAAAAAAAABgAAAAIAAAA4VHlwZSBvZiBtZXNzYWdlIGxpYnJhcnkgaW5kaWNhdGluZyBzdXBwb3J0ZWQgb3BlcmF0aW9ucy4AAAAAAAAADk1lc3NhZ2VMaWJUeXBlAAAAAAADAAAAAAAAAB9TdXBwb3J0cyBvbmx5IHNlbmRpbmcgbWVzc2FnZXMuAAAAAARTZW5kAAAAAAAAACFTdXBwb3J0cyBvbmx5IHJlY2VpdmluZyBtZXNzYWdlcy4AAAAAAAAHUmVjZWl2ZQAAAAAAAAAALVN1cHBvcnRzIGJvdGggc2VuZGluZyBhbmQgcmVjZWl2aW5nIG1lc3NhZ2VzLgAAAAAAAA5TZW5kQW5kUmVjZWl2ZQAAAAAAAQAAALdWZXJzaW9uIGluZm9ybWF0aW9uIGZvciBhIG1lc3NhZ2UgbGlicmFyeS4KCk5vdGU6IGBtaW5vcmAgYW5kIGBlbmRwb2ludF92ZXJzaW9uYCB1c2UgYHUzMmAgaW5zdGVhZCBvZiBgdThgIGJlY2F1c2UgU3RlbGxhciBkb2VzIG5vdApzdXBwb3J0IGB1OGAgdHlwZXMgaW4gY29udHJhY3QgaW50ZXJmYWNlIGZ1bmN0aW9ucy4AAAAAAAAAABFNZXNzYWdlTGliVmVyc2lvbgAAAAAAAAMAAAAzRW5kcG9pbnQgdmVyc2lvbiAoc2hvdWxkIG5vdCBleGNlZWQgdTg6Ok1BWCA9IDI1NSkuAAAAABBlbmRwb2ludF92ZXJzaW9uAAAABAAAABVNYWpvciB2ZXJzaW9uIG51bWJlci4AAAAAAAAFbWFqb3IAAAAAAAAGAAAAN01pbm9yIHZlcnNpb24gbnVtYmVyIChzaG91bGQgbm90IGV4Y2VlZCB1ODo6TUFYID0gMjU1KS4AAAAABW1pbm9yAAAAAAAABAAAAAEAAAA2VGltZW91dCBjb25maWd1cmF0aW9uIGZvciByZWNlaXZlIGxpYnJhcnkgdHJhbnNpdGlvbnMuAAAAAAAAAAAAB1RpbWVvdXQAAAAAAgAAAChVbml4IHRpbWVzdGFtcCB3aGVuIHRoZSB0aW1lb3V0IGV4cGlyZXMuAAAABmV4cGlyeQAAAAAABgAAAClUaGUgbmV3IGxpYnJhcnkgYWRkcmVzcyB0byB0cmFuc2l0aW9uIHRvLgAAAAAAAANsaWIAAAAAEwAAAAEAAAA1UGFyYW1ldGVycyBmb3Igc2V0dGluZyBtZXNzYWdlIGxpYnJhcnkgY29uZmlndXJhdGlvbi4AAAAAAAAAAAAADlNldENvbmZpZ1BhcmFtAAAAAAADAAAAH1hEUi1lbmNvZGVkIGNvbmZpZ3VyYXRpb24gZGF0YS4AAAAABmNvbmZpZwAAAAAADgAAADBUaGUgdHlwZSBvZiBjb25maWd1cmF0aW9uIChlLmcuLCBleGVjdXRvciwgVUxOKS4AAAALY29uZmlnX3R5cGUAAAAABAAAACdUaGUgZW5kcG9pbnQgSUQgdGhpcyBjb25maWcgYXBwbGllcyB0by4AAAAAA2VpZAAAAAAEAAAAAQAAADFSZXNvbHZlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIHdpdGggZGVmYXVsdCBzdGF0dXMuAAAAAAAAAAAAAA9SZXNvbHZlZExpYnJhcnkAAAAAAgAAAERXaGV0aGVyIHRoaXMgaXMgdGhlIGRlZmF1bHQgbGlicmFyeSAodHJ1ZSkgb3IgT0FwcC1zcGVjaWZpYyAoZmFsc2UpLgAAAAppc19kZWZhdWx0AAAAAAABAAAAHVRoZSByZXNvbHZlZCBsaWJyYXJ5IGFkZHJlc3MuAAAAAAAAA2xpYgAAAAATAAAAAQAAAEhPdXRib3VuZCBwYWNrZXQgY29udGFpbmluZyBhbGwgaW5mb3JtYXRpb24gZm9yIGNyb3NzLWNoYWluIHRyYW5zbWlzc2lvbi4AAAAAAAAADk91dGJvdW5kUGFja2V0AAAAAAAHAAAAGERlc3RpbmF0aW9uIGVuZHBvaW50IElELgAAAAdkc3RfZWlkAAAAAAQAAAAsR2xvYmFsbHkgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgbWVzc2FnZS4AAAAEZ3VpZAAAA+4AAAAgAAAAFFRoZSBtZXNzYWdlIHBheWxvYWQuAAAAB21lc3NhZ2UAAAAADgAAACBPdXRib3VuZCBub25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAVub25jZQAAAAAAAAYAAAAxUmVjZWl2ZXIgYWRkcmVzcyBvbiBkZXN0aW5hdGlvbiBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAAAAhyZWNlaXZlcgAAA+4AAAAgAAAAH1NlbmRlciBhZGRyZXNzIG9uIHNvdXJjZSBjaGFpbi4AAAAABnNlbmRlcgAAAAAAEwAAABNTb3VyY2UgZW5kcG9pbnQgSUQuAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAK0EgZmVlIHJlY2lwaWVudCB3aXRoIHRoZSBhbW91bnQgdG8gYmUgcGFpZC4AAAAAAAAAAAxGZWVSZWNpcGllbnQAAAACAAAAFUFtb3VudCBvZiBmZWUgdG8gcGF5LgAAAAAAAAZhbW91bnQAAAAAAAsAAAAfVGhlIGFkZHJlc3MgdG8gc2VuZCB0aGUgZmVlIHRvLgAAAAACdG8AAAAAABMAAAABAAAAPFJlc3VsdCBvZiBzZW5kIG9wZXJhdGlvbiBjb250YWluaW5nIGZlZXMgYW5kIGVuY29kZWQgcGFja2V0LgAAAAAAAAANRmVlc0FuZFBhY2tldAAAAAAAAAMAAAAqVGhlIGVuY29kZWQgcGFja2V0IHJlYWR5IGZvciB0cmFuc21pc3Npb24uAAAAAAAOZW5jb2RlZF9wYWNrZXQAAAAAAA4AAAA/TGlzdCBvZiBuYXRpdmUgdG9rZW4gZmVlIHJlY2lwaWVudHMgKGV4ZWN1dG9yLCBEVk5zLCB0cmVhc3VyeSkuAAAAABVuYXRpdmVfZmVlX3JlY2lwaWVudHMAAAAAAAPqAAAH0AAAAAxGZWVSZWNpcGllbnQAAAAsTGlzdCBvZiBaUk8gdG9rZW4gZmVlIHJlY2lwaWVudHMgKHRyZWFzdXJ5KS4AAAASenJvX2ZlZV9yZWNpcGllbnRzAAAAAAPqAAAH0AAAAAxGZWVSZWNpcGllbnQAAAAEAAAAHVBhY2tldENvZGVjVjFFcnJvcjogMTEwMC0xMTA5AAAAAAAAAAAAABJQYWNrZXRDb2RlY1YxRXJyb3IAAAAAAAIAAAAAAAAAE0ludmFsaWRQYWNrZXRIZWFkZXIAAAAETAAAAAAAAAAUSW52YWxpZFBhY2tldFZlcnNpb24AAARNAAAABAAAAB1Xb3JrZXJPcHRpb25zRXJyb3I6IDExMTAtMTExOQAAAAAAAAAAAAASV29ya2VyT3B0aW9uc0Vycm9yAAAAAAAJAAAAAAAAABJJbnZhbGlkQnl0ZXNMZW5ndGgAAAAABFYAAAAAAAAAGUludmFsaWRMZWdhY3lPcHRpb25zVHlwZTEAAAAAAARXAAAAAAAAABlJbnZhbGlkTGVnYWN5T3B0aW9uc1R5cGUyAAAAAAAEWAAAAAAAAAARSW52YWxpZE9wdGlvblR5cGUAAAAAAARZAAAAAAAAAA5JbnZhbGlkT3B0aW9ucwAAAAAEWgAAAAAAAAAPSW52YWxpZFdvcmtlcklkAAAABFsAAAAAAAAAHUxlZ2FjeU9wdGlvbnNUeXBlMUdhc092ZXJmbG93AAAAAAAEXAAAAAAAAAAgTGVnYWN5T3B0aW9uc1R5cGUyQW1vdW50T3ZlcmZsb3cAAARdAAAAAAAAAB1MZWdhY3lPcHRpb25zVHlwZTJHYXNPdmVyZmxvdwAAAAAABF4AAAAEAAAAHEJ1ZmZlclJlYWRlckVycm9yOiAxMDAwLTEwMDkAAAAAAAAAEUJ1ZmZlclJlYWRlckVycm9yAAAAAAAAAgAAAAAAAAANSW52YWxpZExlbmd0aAAAAAAAA+gAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA+kAAAAEAAAAHEJ1ZmZlcldyaXRlckVycm9yOiAxMDEwLTEwMTkAAAAAAAAAEUJ1ZmZlcldyaXRlckVycm9yAAAAAAAAAQAAAAAAAAAVSW52YWxpZEFkZHJlc3NQYXlsb2FkAAAAAAAD8gAAAAQAAAAfVHRsQ29uZmlndXJhYmxlRXJyb3I6IDEwMjAtMTAyOQAAAAAAAAAAFFR0bENvbmZpZ3VyYWJsZUVycm9yAAAAAwAAAAAAAAAQSW52YWxpZFR0bENvbmZpZwAAA/wAAAAAAAAAD1R0bENvbmZpZ0Zyb3plbgAAAAP9AAAAAAAAABZUdGxDb25maWdBbHJlYWR5RnJvemVuAAAAAAP+AAAABAAAABdPd25hYmxlRXJyb3I6IDEwMzAtMTAzOQAAAAAAAAAADE93bmFibGVFcnJvcgAAAAYAAAAAAAAAE0ludmFsaWRQZW5kaW5nT3duZXIAAAAEBgAAAAAAAAAKSW52YWxpZFR0bAAAAAAEBwAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAQIAAAAAAAAAA9Pd25lckFscmVhZHlTZXQAAAAECQAAAAAAAAALT3duZXJOb3RTZXQAAAAECgAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAQLAAAABAAAABhCeXRlc0V4dEVycm9yOiAxMDQwLTEwNDkAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAEEAAAAAQAAAAbVXBncmFkZWFibGVFcnJvcjogMTA1MC0xMDU5AAAAAAAAAAAQVXBncmFkZWFibGVFcnJvcgAAAAEAAAAAAAAAE01pZ3JhdGlvbk5vdEFsbG93ZWQAAAAEGgAAAAQAAAAYTXVsdGlzaWdFcnJvcjogMTA2MC0xMDY5AAAAAAAAAA1NdWx0aXNpZ0Vycm9yAAAAAAAACAAAAAAAAAASQWxyZWFkeUluaXRpYWxpemVkAAAAAAQkAAAAAAAAAA1JbnZhbGlkU2lnbmVyAAAAAAAEJQAAAAAAAAAOU2lnbmF0dXJlRXJyb3IAAAAABCYAAAAAAAAAE1NpZ25lckFscmVhZHlFeGlzdHMAAAAEJwAAAAAAAAAOU2lnbmVyTm90Rm91bmQAAAAABCgAAAAAAAAAHVRvdGFsU2lnbmVyc0xlc3NUaGFuVGhyZXNob2xkAAAAAAAEKQAAAAAAAAAPVW5zb3J0ZWRTaWduZXJzAAAABCoAAAAAAAAADVplcm9UaHJlc2hvbGQAAAAAAAQrAAAABQAAADBFdmVudCBlbWl0dGVkIHdoZW4gYSBzaWduZXIgaXMgYWRkZWQgb3IgcmVtb3ZlZC4AAAAAAAAACVNpZ25lclNldAAAAAAAAAEAAAAKc2lnbmVyX3NldAAAAAAAAgAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAACAAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHNpZ25hdHVyZSB0aHJlc2hvbGQgaXMgY2hhbmdlZC4AAAAAAAAAAAAMVGhyZXNob2xkU2V0AAAAAQAAAA10aHJlc2hvbGRfc2V0AAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAD011bHRpc2lnU3RvcmFnZQAAAAACAAAAAAAAAAAAAAAHU2lnbmVycwAAAAAAAAAAAAAAAAlUaHJlc2hvbGQAAAAAAAAFAAAAV0V2ZW50IGVtaXR0ZWQgd2hlbiBvd25lcnNoaXAgaXMgdHJhbnNmZXJyZWQgKGJvdGggc2luZ2xlLXN0ZXAgYW5kIHR3by1zdGVwIGNvbXBsZXRpb24pLgAAAAAAAAAAFE93bmVyc2hpcFRyYW5zZmVycmVkAAAAAQAAABVvd25lcnNoaXBfdHJhbnNmZXJyZWQAAAAAAAACAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAACAAAABQAAADtFdmVudCBlbWl0dGVkIHdoZW4gYSAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyIGlzIHByb3Bvc2VkLgAAAAAAAAAAFU93bmVyc2hpcFRyYW5zZmVycmluZwAAAAAAAAEAAAAWb3duZXJzaGlwX3RyYW5zZmVycmluZwAAAAAAAwAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAAAN0dGwAAAAABAAAAAAAAAACAAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHJlbm91bmNlZC4AAAAAAAAAAAAST3duZXJzaGlwUmVub3VuY2VkAAAAAAABAAAAE293bmVyc2hpcF9yZW5vdW5jZWQAAAAAAQAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAACAAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAFT3duZXIAAAAAAAAAAAAAAAAAAAxQZW5kaW5nT3duZXIAAAABAAAASVRUTCBjb25maWd1cmF0aW9uOiB0aHJlc2hvbGQgKHdoZW4gdG8gZXh0ZW5kKSBhbmQgZXh0ZW5kX3RvICh0YXJnZXQgVFRMKS4AAAAAAAAAAAAACVR0bENvbmZpZwAAAAAAAAIAAAAoVGFyZ2V0IFRUTCBhZnRlciBleHRlbnNpb24gKGluIGxlZGdlcnMpLgAAAAlleHRlbmRfdG8AAAAAAAAEAAAAM1RUTCB0aHJlc2hvbGQgdGhhdCB0cmlnZ2VycyBleHRlbnNpb24gKGluIGxlZGdlcnMpLgAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAUAAAAnRXZlbnQgZW1pdHRlZCB3aGVuIFRUTCBjb25maWdzIGFyZSBzZXQuAAAAAAAAAAANVHRsQ29uZmlnc1NldAAAAAAAAAEAAAAPdHRsX2NvbmZpZ3Nfc2V0AAAAAAIAAAAAAAAACGluc3RhbmNlAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAAAAAAKcGVyc2lzdGVudAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAIAAAAFAAAAKkV2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgZnJvemVuLgAAAAAAAAAAABBUdGxDb25maWdzRnJvemVuAAAAAQAAABJ0dGxfY29uZmlnc19mcm96ZW4AAAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEFR0bENvbmZpZ1N0b3JhZ2UAAAADAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAhJbnN0YW5jZQAAAAAAAAAAAAAAClBlcnNpc3RlbnQAAAAAAAIAAAAAAAAAAAAAABJVcGdyYWRlYWJsZVN0b3JhZ2UAAAAAAAEAAAAAAAAAAAAAAAlNaWdyYXRpbmcAAAAAAAAEAAAAFldvcmtlckVycm9yOiAxMjAwLTEyOTkAAAAAAAAAAAALV29ya2VyRXJyb3IAAAAAEwAAAAAAAAASQWRtaW5BbHJlYWR5RXhpc3RzAAAAAASwAAAAAAAAAA1BZG1pbk5vdEZvdW5kAAAAAAAEsQAAAAAAAAASQWxyZWFkeU9uQWxsb3dsaXN0AAAAAASyAAAAAAAAABFBbHJlYWR5T25EZW55bGlzdAAAAAAABLMAAAAAAAAAG0F0dGVtcHRpbmdUb1JlbW92ZU9ubHlBZG1pbgAAAAS0AAAAAAAAABREZXBvc2l0QWRkcmVzc05vdFNldAAABLUAAAAAAAAAGk1lc3NhZ2VMaWJBbHJlYWR5U3VwcG9ydGVkAAAAAAS2AAAAAAAAABZNZXNzYWdlTGliTm90U3VwcG9ydGVkAAAAAAS3AAAAAAAAABBOb0FkbWluc1Byb3ZpZGVkAAAEuAAAAAAAAAAKTm90QWxsb3dlZAAAAAAEuQAAAAAAAAAOTm90T25BbGxvd2xpc3QAAAAABLoAAAAAAAAADU5vdE9uRGVueWxpc3QAAAAAAAS7AAAAAAAAABRQYXVzZVN0YXR1c1VuY2hhbmdlZAAABLwAAAAAAAAAD1ByaWNlRmVlZE5vdFNldAAAAAS9AAAAAAAAAAxSZUluaXRpYWxpemUAAAS+AAAAAAAAAAxVbmF1dGhvcml6ZWQAAAS/AAAAAAAAABVVbnN1cHBvcnRlZE1lc3NhZ2VMaWIAAAAAAATAAAAAAAAAABJXb3JrZXJGZWVMaWJOb3RTZXQAAAAABMEAAAAAAAAADldvcmtlcklzUGF1c2VkAAAAAATCAAAABQAAAAAAAAAAAAAACFNldEFkbWluAAAAAQAAAAlzZXRfYWRtaW4AAAAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABZTZXRTdXBwb3J0ZWRNZXNzYWdlTGliAAAAAAABAAAAGXNldF9zdXBwb3J0ZWRfbWVzc2FnZV9saWIAAAAAAAACAAAAAAAAAAttZXNzYWdlX2xpYgAAAAATAAAAAAAAAAAAAAAJc3VwcG9ydGVkAAAAAAAAAQAAAAAAAAACAAAABQAAAAAAAAAAAAAADFNldEFsbG93bGlzdAAAAAEAAAANc2V0X2FsbG93bGlzdAAAAAAAAAIAAAAAAAAABG9hcHAAAAATAAAAAAAAAAAAAAAHYWxsb3dlZAAAAAABAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAALU2V0RGVueWxpc3QAAAAAAQAAAAxzZXRfZGVueWxpc3QAAAACAAAAAAAAAARvYXBwAAAAEwAAAAAAAAAAAAAABmRlbmllZAAAAAAAAQAAAAAAAAACAAAABQAAAAAAAAAAAAAABlBhdXNlZAAAAAAAAQAAAAZwYXVzZWQAAAAAAAEAAAAAAAAABnBhdXNlcgAAAAAAEwAAAAAAAAACAAAABQAAAAAAAAAAAAAACFVucGF1c2VkAAAAAQAAAAh1bnBhdXNlZAAAAAEAAAAAAAAACHVucGF1c2VyAAAAEwAAAAAAAAACAAAABQAAAAAAAAAAAAAAF1NldERlZmF1bHRNdWx0aXBsaWVyQnBzAAAAAAEAAAAac2V0X2RlZmF1bHRfbXVsdGlwbGllcl9icHMAAAAAAAEAAAAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAARU2V0RGVwb3NpdEFkZHJlc3MAAAAAAAABAAAAE3NldF9kZXBvc2l0X2FkZHJlc3MAAAAAAQAAAAAAAAAPZGVwb3NpdF9hZGRyZXNzAAAAABMAAAAAAAAAAgAAAAUAAAAAAAAAAAAAAAxTZXRQcmljZUZlZWQAAAABAAAADnNldF9wcmljZV9mZWVkAAAAAAABAAAAAAAAAApwcmljZV9mZWVkAAAAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAXU2V0U3VwcG9ydGVkT3B0aW9uVHlwZXMAAAAAAQAAABpzZXRfc3VwcG9ydGVkX29wdGlvbl90eXBlcwAAAAAAAgAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAAAAAAAMb3B0aW9uX3R5cGVzAAAADgAAAAAAAAACAAAABQAAAAAAAAAAAAAAD1NldFdvcmtlckZlZUxpYgAAAAABAAAAEnNldF93b3JrZXJfZmVlX2xpYgAAAAAAAQAAAAAAAAAHZmVlX2xpYgAAAAATAAAAAAAAAAIAAAABAAAA4VBhcmFtZXRlcnMgZm9yIERWTiBmZWUgY2FsY3VsYXRpb24uCgpDb250YWlucyBhbGwgaW5wdXRzIG5lZWRlZCBieSB0aGUgZmVlIGxpYnJhcnkgdG8gY2FsY3VsYXRlIHZlcmlmaWNhdGlvbiBmZWVzCmZvciBjcm9zcy1jaGFpbiBtZXNzYWdlcy4gSW5jbHVkZXMgbWVzc2FnZSBwYXJhbWV0ZXJzLCBjb21tb24gY29uZmlndXJhdGlvbiwKYW5kIGRlc3RpbmF0aW9uLXNwZWNpZmljIHNldHRpbmdzLgAAAAAAAAAAAAAMRHZuRmVlUGFyYW1zAAAACgAAACdOdW1iZXIgb2YgYmxvY2sgY29uZmlybWF0aW9ucyByZXF1aXJlZC4AAAAADWNvbmZpcm1hdGlvbnMAAAAAAAAGAAAATERlZmF1bHQgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICh1c2VkIGlmIG5vIGRzdC1zcGVjaWZpYyBtdWx0aXBsaWVyKS4AAAAWZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAABAAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQAAAAjTWluaW11bSBmZWUgbWFyZ2luIGluIFVTRCAoc2NhbGVkKS4AAAAAEGZsb29yX21hcmdpbl91c2QAAAAKAAABED09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkRlc3RpbmF0aW9uLVNwZWNpZmljIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KR2FzIGVzdGltYXRlIGZvciB2ZXJpZmljYXRpb24gb24gZGVzdGluYXRpb24gY2hhaW4uAAAAA2dhcwAAAAAKAAAARkRlc3RpbmF0aW9uLXNwZWNpZmljIGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cyAoMCA9IHVzZSBkZWZhdWx0KS4AAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAAAtEVk4gb3B0aW9ucwAAAAAHb3B0aW9ucwAAAAAOAAABED09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNvbW1vbiBDb25maWd1cmF0aW9uCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClByaWNlIGZlZWQgY29udHJhY3QgYWRkcmVzcyBmb3IgZ2FzIHByaWNlIGFuZCBleGNoYW5nZSByYXRlIGRhdGEuAAAACnByaWNlX2ZlZWQAAAAAABMAAAAnTnVtYmVyIG9mIHJlcXVpcmVkIHNpZ25hdHVyZXMgKHF1b3J1bSkuAAAAAAZxdW9ydW0AAAAAAAQAAADlPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KTWVzc2FnZSBQYXJhbWV0ZXJzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClRoZSBPQXBwIHNlbmRlciBhZGRyZXNzLgAAAAAAAAZzZW5kZXIAAAAAABMAAAABAAAA41BhcmFtZXRlcnMgZm9yIGV4ZWN1dG9yIGZlZSBjYWxjdWxhdGlvbi4KCkNvbnRhaW5zIGFsbCBpbnB1dHMgbmVlZGVkIGJ5IHRoZSBmZWUgbGlicmFyeSB0byBjYWxjdWxhdGUgZXhlY3V0aW9uIGZlZXMKZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2VzLiBJbmNsdWRlcyBtZXNzYWdlIHBhcmFtZXRlcnMsIGNvbW1vbiBjb25maWd1cmF0aW9uLAphbmQgZGVzdGluYXRpb24tc3BlY2lmaWMgc2V0dGluZ3MuAAAAAAAAAAAJRmVlUGFyYW1zAAAAAAAACwAAACZTaXplIG9mIHRoZSBtZXNzYWdlIGNhbGxkYXRhIGluIGJ5dGVzLgAAAAAADWNhbGxkYXRhX3NpemUAAAAAAAAEAAAATERlZmF1bHQgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICh1c2VkIGlmIG5vIGRzdC1zcGVjaWZpYyBtdWx0aXBsaWVyKS4AAAAWZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAABAAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQAAAAjTWluaW11bSBmZWUgbWFyZ2luIGluIFVTRCAoc2NhbGVkKS4AAAAAEGZsb29yX21hcmdpbl91c2QAAAAKAAAANkJhc2UgZ2FzIGZvciBlYWNoIGx6Q29tcG9zZSBjYWxsIG9uIGRlc3RpbmF0aW9uIGNoYWluLgAAAAAAE2x6X2NvbXBvc2VfYmFzZV9nYXMAAAAABgAAARM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpEZXN0aW5hdGlvbi1TcGVjaWZpYyBDb25maWd1cmF0aW9uCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkJhc2UgZ2FzIGZvciBselJlY2VpdmUgZXhlY3V0aW9uIG9uIGRlc3RpbmF0aW9uIGNoYWluLgAAAAATbHpfcmVjZWl2ZV9iYXNlX2dhcwAAAAAGAAAARkRlc3RpbmF0aW9uLXNwZWNpZmljIGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cyAoMCA9IHVzZSBkZWZhdWx0KS4AAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAACxNYXhpbXVtIG5hdGl2ZSB0b2tlbiB2YWx1ZSB0aGF0IGNhbiBiZSBzZW50LgAAAApuYXRpdmVfY2FwAAAAAAAKAAAARkVuY29kZWQgZXhlY3V0b3Igb3B0aW9ucyAobHpSZWNlaXZlIGdhcywgbHpDb21wb3NlLCBuYXRpdmVEcm9wLCBldGMuKS4AAAAAAAdvcHRpb25zAAAAAA4AAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ29tbW9uIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzIGZvciBnYXMgcHJpY2UgYW5kIGV4Y2hhbmdlIHJhdGUgZGF0YS4AAAAKcHJpY2VfZmVlZAAAAAAAEwAAAOU9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpNZXNzYWdlIFBhcmFtZXRlcnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KVGhlIE9BcHAgc2VuZGVyIGFkZHJlc3MuAAAAAAAABnNlbmRlcgAAAAAAEwAAAAEAAACER2FzIHByaWNlIGluZm9ybWF0aW9uIGZvciBhIGRlc3RpbmF0aW9uIGVuZHBvaW50LgoKQ29udGFpbnMgdGhlIGV4Y2hhbmdlIHJhdGUgYW5kIGdhcyBjb3N0cyBuZWVkZWQgZm9yIGNyb3NzLWNoYWluIGZlZSBjYWxjdWxhdGlvbnMuAAAAAAAAAAVQcmljZQAAAAAAAAMAAAA3R2FzIGNvc3QgcGVyIGJ5dGUgb2YgY2FsbGRhdGEgb24gdGhlIGRlc3RpbmF0aW9uIGNoYWluLgAAAAAMZ2FzX3Blcl9ieXRlAAAABAAAAEJHYXMgcHJpY2UgaW4gdGhlIHNtYWxsZXN0IHVuaXQgKHdlaSBmb3IgRVZNLCBzdHJvb3BzIGZvciBTdGVsbGFyKS4AAAAAABFnYXNfcHJpY2VfaW5fdW5pdAAAAAAAAAYAAACpUHJpY2UgcmF0aW8gPSAocmVtb3RlIG5hdGl2ZSB0b2tlbiBwcmljZSAvIGxvY2FsIG5hdGl2ZSB0b2tlbiBwcmljZSkgKiBQUklDRV9SQVRJT19ERU5PTUlOQVRPUi4KVXNlZCB0byBjb252ZXJ0IGRlc3RpbmF0aW9uIGNoYWluIGdhcyBjb3N0cyB0byBzb3VyY2UgY2hhaW4gbmF0aXZlIHRva2VuLgAAAAAAAAtwcmljZV9yYXRpbwAAAAAKAAAAAQAAAIBGZWUgZXN0aW1hdGlvbiByZXN1bHQgd2l0aCBkZXRhaWxlZCBicmVha2Rvd24uCgpDb250YWlucyB0aGUgY2FsY3VsYXRlZCBmZWUgYW5kIGFsbCBpbnRlcm1lZGlhdGUgdmFsdWVzIHVzZWQgaW4gdGhlIGNhbGN1bGF0aW9uLgAAAAAAAAALRmVlRXN0aW1hdGUAAAAABAAAADBTb3VyY2UgY2hhaW4gbmF0aXZlIHRva2VuIHByaWNlIGluIFVTRCAoc2NhbGVkKS4AAAAQbmF0aXZlX3ByaWNlX3VzZAAAAAoAAAAlUHJpY2UgcmF0aW8gdXNlZCBmb3IgdGhlIGNhbGN1bGF0aW9uLgAAAAAAAAtwcmljZV9yYXRpbwAAAAAKAAAAMkRlbm9taW5hdG9yIGZvciB0aGUgcHJpY2UgcmF0aW8gKHR5cGljYWxseSAxMF4yMCkuAAAAAAAXcHJpY2VfcmF0aW9fZGVub21pbmF0b3IAAAAACgAAADFUb3RhbCBnYXMgZmVlIGluIHNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4gdW5pdHMuAAAAAAAADXRvdGFsX2dhc19mZWUAAAAAAAALAAAAAgAAAAAAAAAAAAAADVdvcmtlclN0b3JhZ2UAAAAAAAALAAAAAAAAAAAAAAAGUGF1c2VkAAAAAAAAAAAAAAAAAA5EZXBvc2l0QWRkcmVzcwAAAAAAAAAAAAAAAAAJUHJpY2VGZWVkAAAAAAAAAAAAAAAAAAAMV29ya2VyRmVlTGliAAAAAAAAAAAAAAAURGVmYXVsdE11bHRpcGxpZXJCcHMAAAABAAAAAAAAABRTdXBwb3J0ZWRPcHRpb25UeXBlcwAAAAEAAAAEAAAAAAAAAAAAAAALTWVzc2FnZUxpYnMAAAAAAQAAAAAAAAAJQWxsb3dsaXN0AAAAAAAAAQAAABMAAAABAAAAAAAAAAhEZW55bGlzdAAAAAEAAAATAAAAAAAAAAAAAAANQWxsb3dsaXN0U2l6ZQAAAAAAAAAAAAAAAAAABkFkbWlucwAAAIsBDmNvbnRyYWN0bWV0YXYwAAAAAAAAAAZiaW52ZXIAAAAAAAUwLjAuMQAAAAAAAAAAAAAFcnN2ZXIAAAAAAAAGMS45MC4wAAAAAAAAAAAACHJzc2RrdmVyAAAALzIzLjQuMCM2NzNkNmM0ZjIzNjhkMjgyZDI1ZGEyOWJkYTU1YzIxYjhiZTY5Y2E2AAAeEWNvbnRyYWN0ZW52bWV0YXYwAAAAAAAAABcAAAAA";
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 = "5c52cac1c298d768f8af85192d911b1f33f3885278ff4ae8f05b251c068d02a2";
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 DvnError = {
6
24
  1: { message: "AuthDataExpired" },
7
25
  2: { message: "EidNotSupported" },
8
26
  3: { message: "HashAlreadyUsed" },
9
27
  4: { message: "InvalidInvocation" },
10
- 5: { message: "InvalidSigner" },
11
- 6: { message: "InvalidVid" },
12
- 7: { message: "NonContractInvoke" },
13
- 8: { message: "OnlyAdmin" },
14
- 9: { message: "SignatureError" },
15
- 10: { message: "SignerAlreadyExists" },
16
- 11: { message: "SignerNotFound" },
17
- 12: { message: "TotalSignersLessThanThreshold" },
18
- 13: { message: "UnsortedSigners" },
19
- 14: { message: "ZeroThreshold" }
28
+ 5: { message: "InvalidVid" },
29
+ 6: { message: "NonContractInvoke" },
30
+ 7: { message: "OnlyAdmin" }
20
31
  };
21
32
  export const EndpointError = {
22
33
  1: { message: "AlreadyRegistered" },
@@ -25,62 +36,107 @@ export const EndpointError = {
25
36
  4: { message: "DefaultReceiveLibUnavailable" },
26
37
  5: { message: "DefaultSendLibUnavailable" },
27
38
  6: { message: "InsufficientNativeFee" },
28
- 7: { message: "InsufficientZROFee" },
29
- 8: { message: "InvalidExpiry" },
30
- 9: { message: "InvalidIndex" },
31
- 10: { message: "InvalidNonce" },
32
- 11: { message: "InvalidPayloadHash" },
33
- 12: { message: "InvalidReceiveLibrary" },
34
- 13: { message: "OnlyNonDefaultLib" },
35
- 14: { message: "OnlyReceiveLib" },
36
- 15: { message: "OnlyRegisteredLib" },
37
- 16: { message: "OnlySendLib" },
38
- 17: { message: "PathNotInitializable" },
39
- 18: { message: "PathNotVerifiable" },
40
- 19: { message: "PayloadHashNotFound" },
41
- 20: { message: "SameValue" },
42
- 21: { message: "Unauthorized" },
43
- 22: { message: "UnsupportedEid" },
44
- 23: { message: "ZeroZROFee" },
45
- 24: { message: "ZROUnavailable" }
39
+ 7: { message: "InsufficientZroFee" },
40
+ 8: { message: "InvalidFeeAmount" },
41
+ 9: { message: "InvalidExpiry" },
42
+ 10: { message: "InvalidIndex" },
43
+ 11: { message: "InvalidNonce" },
44
+ 12: { message: "InvalidPayloadHash" },
45
+ 13: { message: "InvalidReceiveLibrary" },
46
+ 14: { message: "OnlyNonDefaultLib" },
47
+ 15: { message: "OnlyReceiveLib" },
48
+ 16: { message: "OnlyRegisteredLib" },
49
+ 17: { message: "OnlySendLib" },
50
+ 18: { message: "PathNotInitializable" },
51
+ 19: { message: "PathNotVerifiable" },
52
+ 20: { message: "PayloadHashNotFound" },
53
+ 21: { message: "SameValue" },
54
+ 22: { message: "Unauthorized" },
55
+ 23: { message: "UnsupportedEid" },
56
+ 24: { message: "ZeroZroFee" },
57
+ 25: { message: "ZroUnavailable" }
46
58
  };
59
+ /**
60
+ * PacketCodecV1Error: 1100-1109
61
+ */
47
62
  export const PacketCodecV1Error = {
48
- 1001: { message: "InvalidPacketHeader" },
49
- 1002: { message: "InvalidPacketVersion" }
63
+ 1100: { message: "InvalidPacketHeader" },
64
+ 1101: { message: "InvalidPacketVersion" }
50
65
  };
66
+ /**
67
+ * WorkerOptionsError: 1110-1119
68
+ */
51
69
  export const WorkerOptionsError = {
52
- 1101: { message: "InvalidBytesLength" },
53
- 1102: { message: "InvalidLegacyOptionsType1" },
54
- 1103: { message: "InvalidLegacyOptionsType2" },
55
- 1104: { message: "InvalidOptionType" },
56
- 1105: { message: "InvalidOptions" },
57
- 1106: { message: "InvalidWorkerId" },
58
- 1107: { message: "LegacyOptionsType1GasOverflow" },
59
- 1108: { message: "LegacyOptionsType2AmountOverflow" },
60
- 1109: { message: "LegacyOptionsType2GasOverflow" }
70
+ 1110: { message: "InvalidBytesLength" },
71
+ 1111: { message: "InvalidLegacyOptionsType1" },
72
+ 1112: { message: "InvalidLegacyOptionsType2" },
73
+ 1113: { message: "InvalidOptionType" },
74
+ 1114: { message: "InvalidOptions" },
75
+ 1115: { message: "InvalidWorkerId" },
76
+ 1116: { message: "LegacyOptionsType1GasOverflow" },
77
+ 1117: { message: "LegacyOptionsType2AmountOverflow" },
78
+ 1118: { message: "LegacyOptionsType2GasOverflow" }
61
79
  };
80
+ /**
81
+ * BufferReaderError: 1000-1009
82
+ */
62
83
  export const BufferReaderError = {
63
84
  1000: { message: "InvalidLength" },
64
85
  1001: { message: "InvalidAddressPayload" }
65
86
  };
87
+ /**
88
+ * BufferWriterError: 1010-1019
89
+ */
66
90
  export const BufferWriterError = {
67
- 1100: { message: "InvalidAddressPayload" }
91
+ 1010: { message: "InvalidAddressPayload" }
68
92
  };
93
+ /**
94
+ * TtlConfigurableError: 1020-1029
95
+ */
69
96
  export const TtlConfigurableError = {
70
- 1200: { message: "InvalidTtlConfig" },
71
- 1201: { message: "TtlConfigFrozen" },
72
- 1202: { message: "TtlConfigAlreadyFrozen" }
97
+ 1020: { message: "InvalidTtlConfig" },
98
+ 1021: { message: "TtlConfigFrozen" },
99
+ 1022: { message: "TtlConfigAlreadyFrozen" }
73
100
  };
101
+ /**
102
+ * OwnableError: 1030-1039
103
+ */
74
104
  export const OwnableError = {
75
- 1300: { message: "OwnerAlreadySet" },
76
- 1301: { message: "OwnerNotSet" }
105
+ 1030: { message: "InvalidPendingOwner" },
106
+ 1031: { message: "InvalidTtl" },
107
+ 1032: { message: "NoPendingTransfer" },
108
+ 1033: { message: "OwnerAlreadySet" },
109
+ 1034: { message: "OwnerNotSet" },
110
+ 1035: { message: "TransferInProgress" }
77
111
  };
112
+ /**
113
+ * BytesExtError: 1040-1049
114
+ */
78
115
  export const BytesExtError = {
79
- 1400: { message: "LengthMismatch" }
116
+ 1040: { message: "LengthMismatch" }
80
117
  };
118
+ /**
119
+ * UpgradeableError: 1050-1059
120
+ */
81
121
  export const UpgradeableError = {
82
- 1500: { message: "MigrationNotAllowed" }
122
+ 1050: { message: "MigrationNotAllowed" }
123
+ };
124
+ /**
125
+ * MultisigError: 1060-1069
126
+ */
127
+ export const MultisigError = {
128
+ 1060: { message: "AlreadyInitialized" },
129
+ 1061: { message: "InvalidSigner" },
130
+ 1062: { message: "SignatureError" },
131
+ 1063: { message: "SignerAlreadyExists" },
132
+ 1064: { message: "SignerNotFound" },
133
+ 1065: { message: "TotalSignersLessThanThreshold" },
134
+ 1066: { message: "UnsortedSigners" },
135
+ 1067: { message: "ZeroThreshold" }
83
136
  };
137
+ /**
138
+ * WorkerError: 1200-1299
139
+ */
84
140
  export const WorkerError = {
85
141
  1200: { message: "AdminAlreadyExists" },
86
142
  1201: { message: "AdminNotFound" },
@@ -112,21 +168,11 @@ export class Client extends ContractClient {
112
168
  return ContractClient.deploy({ vid, signers, threshold, admins, supported_msglibs, price_feed, default_multiplier_bps, worker_fee_lib, deposit_address }, options);
113
169
  }
114
170
  constructor(options) {
115
- super(new ContractSpec(["AAAABAAAAAAAAAAAAAAACER2bkVycm9yAAAADgAAAAAAAAAPQXV0aERhdGFFeHBpcmVkAAAAAAEAAAAAAAAAD0VpZE5vdFN1cHBvcnRlZAAAAAACAAAAAAAAAA9IYXNoQWxyZWFkeVVzZWQAAAAAAwAAAAAAAAARSW52YWxpZEludm9jYXRpb24AAAAAAAAEAAAAAAAAAA1JbnZhbGlkU2lnbmVyAAAAAAAABQAAAAAAAAAKSW52YWxpZFZpZAAAAAAABgAAAAAAAAARTm9uQ29udHJhY3RJbnZva2UAAAAAAAAHAAAAAAAAAAlPbmx5QWRtaW4AAAAAAAAIAAAAAAAAAA5TaWduYXR1cmVFcnJvcgAAAAAACQAAAAAAAAATU2lnbmVyQWxyZWFkeUV4aXN0cwAAAAAKAAAAAAAAAA5TaWduZXJOb3RGb3VuZAAAAAAACwAAAAAAAAAdVG90YWxTaWduZXJzTGVzc1RoYW5UaHJlc2hvbGQAAAAAAAAMAAAAAAAAAA9VbnNvcnRlZFNpZ25lcnMAAAAADQAAAAAAAAANWmVyb1RocmVzaG9sZAAAAAAAAA4=",
116
- "AAAABQAAAAAAAAAAAAAACVNpZ25lclNldAAAAAAAAAEAAAAKc2lnbmVyX3NldAAAAAAAAgAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAAAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAAC",
117
- "AAAABQAAAAAAAAAAAAAADFRocmVzaG9sZFNldAAAAAEAAAANdGhyZXNob2xkX3NldAAAAAAAAAEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAAAg==",
171
+ super(new ContractSpec(["AAAABAAAAAAAAAAAAAAACER2bkVycm9yAAAABwAAAAAAAAAPQXV0aERhdGFFeHBpcmVkAAAAAAEAAAAAAAAAD0VpZE5vdFN1cHBvcnRlZAAAAAACAAAAAAAAAA9IYXNoQWxyZWFkeVVzZWQAAAAAAwAAAAAAAAARSW52YWxpZEludm9jYXRpb24AAAAAAAAEAAAAAAAAAApJbnZhbGlkVmlkAAAAAAAFAAAAAAAAABFOb25Db250cmFjdEludm9rZQAAAAAAAAYAAAAAAAAACU9ubHlBZG1pbgAAAAAAAAc=",
118
172
  "AAAABQAAAAAAAAAAAAAADFNldERzdENvbmZpZwAAAAEAAAAOc2V0X2RzdF9jb25maWcAAAAAAAEAAAAAAAAABnBhcmFtcwAAAAAD6gAAB9AAAAAORHN0Q29uZmlnUGFyYW0AAAAAAAAAAAAC",
119
173
  "AAAAAQAAAHJDb25maWd1cmF0aW9uIGZvciBhIGRlc3RpbmF0aW9uIGNoYWluLgoKQ29udGFpbnMgZmVlIGNhbGN1bGF0aW9uIHBhcmFtZXRlcnMgc3BlY2lmaWMgdG8gZWFjaCBkZXN0aW5hdGlvbiBlbmRwb2ludC4AAAAAAAAAAAAJRHN0Q29uZmlnAAAAAAAAAwAAADtNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQgYnkgbmF0aXZlIGRlY2ltYWxzIHJhdGUpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAAuR2FzIGZvciB2ZXJpZmljYXRpb24gb24gdGhlIGRlc3RpbmF0aW9uIGNoYWluLgAAAAAAA2dhcwAAAAAKAAAAZ0ZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cyAoMTAwMDAgPSAxMDAlKS4KSWYgMCwgdGhlIGRlZmF1bHQgbXVsdGlwbGllciBmcm9tIHdvcmtlciBjb25maWcgaXMgdXNlZC4AAAAADm11bHRpcGxpZXJfYnBzAAAAAAAE",
120
174
  "AAAAAQAAADZQYXJhbWV0ZXIgZm9yIHNldHRpbmcgZGVzdGluYXRpb24gY2hhaW4gY29uZmlndXJhdGlvbi4AAAAAAAAAAAAORHN0Q29uZmlnUGFyYW0AAAAAAAIAAAAnVGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoaXMgZGVzdGluYXRpb24uAAAAAAZjb25maWcAAAAAB9AAAAAJRHN0Q29uZmlnAAAAAAAAHFRoZSBkZXN0aW5hdGlvbiBlbmRwb2ludCBJRC4AAAAHZHN0X2VpZAAAAAAE",
121
175
  "AAAAAQAAAIlSZXByZXNlbnRzIGEgc2luZ2xlIGNvbnRyYWN0IGludm9jYXRpb24gZm9yIG11bHRpc2lnIGF1dGhvcml6YXRpb24uCgpVc2VkIGluIGBoYXNoX2NhbGxfZGF0YWAgdG8gY29tcHV0ZSB0aGUgaGFzaCB0aGF0IHNpZ25lcnMgc2lnbiBvdmVyLgAAAAAAAAAAAAAEQ2FsbAAAAAMAAAATRnVuY3Rpb24gYXJndW1lbnRzLgAAAAAEYXJncwAAA+oAAAAAAAAAGEZ1bmN0aW9uIG5hbWUgdG8gaW52b2tlLgAAAARmdW5jAAAAEQAAABhUYXJnZXQgY29udHJhY3QgYWRkcmVzcy4AAAACdG8AAAAAABM=",
122
- "AAAAAAAAADVBZGRzIG9yIHJlbW92ZXMgYSBzaWduZXIuIFJlcXVpcmVzIG11bHRpc2lnIGFwcHJvdmFsLgAAAAAAAApzZXRfc2lnbmVyAAAAAAACAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAA",
123
- "AAAAAAAAADxVcGRhdGVzIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkLiBSZXF1aXJlcyBtdWx0aXNpZyBhcHByb3ZhbC4AAAANc2V0X3RocmVzaG9sZAAAAAAAAAEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAA",
124
- "AAAAAAAAACtSZXR1cm5zIHRoZSBsaXN0IG9mIGFsbCByZWdpc3RlcmVkIHNpZ25lcnMuAAAAAAtnZXRfc2lnbmVycwAAAAAAAAAAAQAAA+oAAAPuAAAAFA==",
125
- "AAAAAAAAAC9SZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgcmVnaXN0ZXJlZCBzaWduZXJzLgAAAAANdG90YWxfc2lnbmVycwAAAAAAAAAAAAABAAAABA==",
126
- "AAAAAAAAACxDaGVja3MgaWYgYW4gYWRkcmVzcyBpcyBhIHJlZ2lzdGVyZWQgc2lnbmVyLgAAAAlpc19zaWduZXIAAAAAAAABAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAQAAAAE=",
127
- "AAAAAAAAAChSZXR1cm5zIHRoZSBjdXJyZW50IHNpZ25hdHVyZSB0aHJlc2hvbGQuAAAACXRocmVzaG9sZAAAAAAAAAAAAAABAAAABA==",
128
- "AAAAAAAAADJWZXJpZmllcyBzaWduYXR1cmVzIGFnYWluc3QgdGhlIGN1cnJlbnQgdGhyZXNob2xkLgAAAAAAEXZlcmlmeV9zaWduYXR1cmVzAAAAAAAAAgAAAAAAAAAEaGFzaAAAA+4AAAAgAAAAAAAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAA",
129
- "AAAAAAAAALJWZXJpZmllcyB0aGF0IGF0IGxlYXN0IGB0aHJlc2hvbGRgIHZhbGlkIHNpZ25hdHVyZXMgZXhpc3QgZm9yIHRoZSBnaXZlbiBoYXNoLgoKU2lnbmF0dXJlcyBtdXN0IGJlOgotIEZyb20gcmVnaXN0ZXJlZCBzaWduZXJzCi0gU29ydGVkIGJ5IHNpZ25lciBhZGRyZXNzIChhc2NlbmRpbmcsIG5vIGR1cGxpY2F0ZXMpAAAAAAATdmVyaWZ5X25fc2lnbmF0dXJlcwAAAAADAAAAAAAAAARoYXNoAAAD7gAAACAAAAAAAAAACnNpZ25hdHVyZXMAAAAAA+oAAAPuAAAAQQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAA=",
130
176
  "AAAAAAAAADRWYWxpZGF0ZXMgYXV0aG9yaXphdGlvbiBmb3IgRFZOIGNvbnRyYWN0IG9wZXJhdGlvbnMuAAAADF9fY2hlY2tfYXV0aAAAAAMAAAAAAAAAEXNpZ25hdHVyZV9wYXlsb2FkAAAAAAAD7gAAACAAAAAAAAAACWF1dGhfZGF0YQAAAAAAB9AAAAATVHJhbnNhY3Rpb25BdXRoRGF0YQAAAAAAAAAADWF1dGhfY29udGV4dHMAAAAAAAPqAAAH0AAAAAdDb250ZXh0AAAAAAEAAAPpAAAD7QAAAAAAAAAD",
131
177
  "AAAAAQAAAMdBdXRoZW50aWNhdGlvbiBkYXRhIGZvciBEVk4gY29udHJhY3QgdHJhbnNhY3Rpb25zLgoKVGhpcyBzdHJ1Y3QgaXMgdXNlZCB3aXRoIFNvcm9iYW4ncyBjdXN0b20gYWNjb3VudCBpbnRlcmZhY2UgdG8gYXV0aG9yaXplCnRyYW5zYWN0aW9ucyB0aHJvdWdoIGEgY29tYmluYXRpb24gb2YgYWRtaW4gc2lnbmF0dXJlIGFuZCBtdWx0aXNpZyBxdW9ydW0uAAAAAAAAAAATVHJhbnNhY3Rpb25BdXRoRGF0YQAAAAAEAAAAREV4cGlyYXRpb24gdGltZXN0YW1wIChsZWRnZXIgdGltZSkgYWZ0ZXIgd2hpY2ggdGhpcyBhdXRoIGlzIGludmFsaWQuAAAACmV4cGlyYXRpb24AAAAAAAYAAAA9RW50aXR5IHN1Ym1pdHRpbmcgdGhlIHRyYW5zYWN0aW9uIChhZG1pbiwgb3IgcGVybWlzc2lvbmxlc3MpLgAAAAAAAAZzZW5kZXIAAAAAB9AAAAAGU2VuZGVyAAAAAAA8U2lnbmF0dXJlcyBmcm9tIG11bHRpc2lnIHNpZ25lcnMgKHNlY3AyNTZrMSwgNjUgYnl0ZXMgZWFjaCkuAAAACnNpZ25hdHVyZXMAAAAAA+oAAAPuAAAAQQAAADJWZXJpZmllciBJRCAtIG11c3QgbWF0Y2ggdGhlIERWTidzIGNvbmZpZ3VyZWQgVklELgAAAAAAA3ZpZAAAAAAE",
132
178
  "AAAAAgAAAAAAAAAAAAAABlNlbmRlcgAAAAAAAgAAAAAAAAAuTm8gZXhwbGljaXQgc2VuZGVyIChwZXJtaXNzaW9ubGVzcyBleGVjdXRpb24pLgAAAAAABE5vbmUAAAABAAAAj0EgcmVnaXN0ZXJlZCBhZG1pbiAoZWQyNTUxOSkgc3VibWl0dGluZyB0aGUgdHJhbnNhY3Rpb24uClRoZSB0dXBsZSBpcyBgKHB1YmxpY19rZXksIHNpZ25hdHVyZSlgIHdoZXJlIHRoZSBzaWduYXR1cmUgY292ZXJzIHRoZSBTb3JvYmFuIHBheWxvYWQuAAAAAAVBZG1pbgAAAAAAAAIAAAPuAAAAIAAAA+4AAABA",
@@ -164,18 +210,27 @@ export class Client extends ContractClient {
164
210
  "AAAAAAAAAXxBbGxvd3MgdGhlIHF1b3J1bSB0byBhZGQvcmVtb3ZlIGFkbWlucyB3aXRob3V0IHJlcXVpcmluZyBhbiBhZG1pbiBzaWduYXR1cmUuCgpUaGlzIGZ1bmN0aW9uIGJ5cGFzc2VzIHRoZSBub3JtYWwgYWRtaW4gdmVyaWZpY2F0aW9uIGluIGBfX2NoZWNrX2F1dGhgLApyZXF1aXJpbmcgb25seSBtdWx0aXNpZyBxdW9ydW0gc2lnbmF0dXJlcy4gTXVzdCBiZSBjYWxsZWQgYXMgYSBzaW5nbGUKb3BlcmF0aW9uIChjYW5ub3QgYmUgYnVuZGxlZCB3aXRoIG90aGVyIGNhbGxzKS4KCiMgQXJndW1lbnRzCiogYGFkbWluYCAtIFRoZSBhZGRyZXNzIHRvIHNldCBhZG1pbiBzdGF0dXMgZm9yCiogYGFjdGl2ZWAgLSBgdHJ1ZWAgdG8gYWRkIGFkbWluLCBgZmFsc2VgIHRvIHJlbW92ZQAAABNxdW9ydW1fY2hhbmdlX2FkbWluAAAAAAIAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAA==",
165
211
  "AAAAAAAAAAAAAAAHdXBncmFkZQAAAAABAAAAAAAAAA1uZXdfd2FzbV9oYXNoAAAAAAAD7gAAACAAAAAA",
166
212
  "AAAAAAAAAAAAAAAHbWlncmF0ZQAAAAABAAAAAAAAAA5taWdyYXRpb25fZGF0YQAAAAAH0AAAAA1NaWdyYXRpb25EYXRhAAAAAAAAAA==",
167
- "AAAAAAAAAH5FeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAABNleHRlbmRfaW5zdGFuY2VfdHRsAAAAAAIAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAACWV4dGVuZF90bwAAAAAAAAQAAAAA",
168
- "AAAAAgAAAAAAAAAAAAAACkR2blN0b3JhZ2UAAAAAAAUAAAAAAAAAAAAAAAdTaWduZXJzAAAAAAAAAAAAAAAACVRocmVzaG9sZAAAAAAAAAAAAAAAAAAAA1ZpZAAAAAABAAAAAAAAAAlEc3RDb25maWcAAAAAAAABAAAABAAAAAEAAAAAAAAACFVzZWRIYXNoAAAAAQAAA+4AAAAg",
213
+ "AAAAAAAAAAAAAAAKYXV0aG9yaXplcgAAAAAAAAAAAAEAAAAT",
214
+ "AAAAAgAAAAAAAAAAAAAACkR2blN0b3JhZ2UAAAAAAAMAAAAAAAAAAAAAAANWaWQAAAAAAQAAAAAAAAAJRHN0Q29uZmlnAAAAAAAAAQAAAAQAAAABAAAAAAAAAAhVc2VkSGFzaAAAAAEAAAPuAAAAIA==",
169
215
  "AAAAAAAAAY9TZXRzIFRUTCBjb25maWdzIGZvciBpbnN0YW5jZSBhbmQgcGVyc2lzdGVudCBzdG9yYWdlLgoKLSBgTm9uZWAgdmFsdWVzIHJlbW92ZSB0aGUgY29ycmVzcG9uZGluZyBjb25maWcgKGRpc2FibGVzIGF1dG8tZXh0ZW5zaW9uIGZvciB0aGF0IHR5cGUpCi0gVmFsaWRhdGVzIHRoYXQgYHRocmVzaG9sZCA8PSBleHRlbmRfdG8gPD0gTUFYX1RUTGAKCiMgQXJndW1lbnRzCi0gYGluc3RhbmNlYCAtIFRUTCBjb25maWcgZm9yIGluc3RhbmNlIHN0b3JhZ2UKLSBgcGVyc2lzdGVudGAgLSBUVEwgY29uZmlnIGZvciBwZXJzaXN0ZW50IHN0b3JhZ2UKCiMgUGFuaWNzCi0gYFR0bENvbmZpZ0Zyb3plbmAgaWYgY29uZmlncyBhcmUgZnJvemVuCi0gYEludmFsaWRUdGxDb25maWdgIGlmIHZhbGlkYXRpb24gZmFpbHMAAAAAD3NldF90dGxfY29uZmlncwAAAAACAAAAAAAAAAhpbnN0YW5jZQAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAKcGVyc2lzdGVudAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAA==",
170
216
  "AAAAAAAAAEhSZXR1cm5zIHRoZSBjdXJyZW50IFRUTCBjb25maWdzIGFzIChpbnN0YW5jZV9jb25maWcsIHBlcnNpc3RlbnRfY29uZmlnKS4AAAALdHRsX2NvbmZpZ3MAAAAAAAAAAAEAAAPtAAAAAgAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAA==",
171
217
  "AAAAAAAAAOFQZXJtYW5lbnRseSBmcmVlemVzIFRUTCBjb25maWdzLCBwcmV2ZW50aW5nIGFueSBmdXR1cmUgbW9kaWZpY2F0aW9ucy4KClRoaXMgaXMgaXJyZXZlcnNpYmxlIGFuZCBwcm92aWRlcyBpbW11dGFiaWxpdHkgZ3VhcmFudGVlcyB0byB1c2Vycy4KRW1pdHMgYFR0bENvbmZpZ3NGcm96ZW5gIGV2ZW50LgoKIyBQYW5pY3MKLSBgVHRsQ29uZmlnQWxyZWFkeUZyb3plbmAgaWYgYWxyZWFkeSBmcm96ZW4AAAAAAAASZnJlZXplX3R0bF9jb25maWdzAAAAAAAAAAAAAA==",
172
218
  "AAAAAAAAACdSZXR1cm5zIHdoZXRoZXIgVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAFWlzX3R0bF9jb25maWdzX2Zyb3plbgAAAAAAAAAAAAABAAAAAQ==",
173
- "AAAABAAAAAAAAAAAAAAADUVuZHBvaW50RXJyb3IAAAAAAAAYAAAAAAAAABFBbHJlYWR5UmVnaXN0ZXJlZAAAAAAAAAEAAAAAAAAADUNvbXBvc2VFeGlzdHMAAAAAAAACAAAAAAAAAA9Db21wb3NlTm90Rm91bmQAAAAAAwAAAAAAAAAcRGVmYXVsdFJlY2VpdmVMaWJVbmF2YWlsYWJsZQAAAAQAAAAAAAAAGURlZmF1bHRTZW5kTGliVW5hdmFpbGFibGUAAAAAAAAFAAAAAAAAABVJbnN1ZmZpY2llbnROYXRpdmVGZWUAAAAAAAAGAAAAAAAAABJJbnN1ZmZpY2llbnRaUk9GZWUAAAAAAAcAAAAAAAAADUludmFsaWRFeHBpcnkAAAAAAAAIAAAAAAAAAAxJbnZhbGlkSW5kZXgAAAAJAAAAAAAAAAxJbnZhbGlkTm9uY2UAAAAKAAAAAAAAABJJbnZhbGlkUGF5bG9hZEhhc2gAAAAAAAsAAAAAAAAAFUludmFsaWRSZWNlaXZlTGlicmFyeQAAAAAAAAwAAAAAAAAAEU9ubHlOb25EZWZhdWx0TGliAAAAAAAADQAAAAAAAAAOT25seVJlY2VpdmVMaWIAAAAAAA4AAAAAAAAAEU9ubHlSZWdpc3RlcmVkTGliAAAAAAAADwAAAAAAAAALT25seVNlbmRMaWIAAAAAEAAAAAAAAAAUUGF0aE5vdEluaXRpYWxpemFibGUAAAARAAAAAAAAABFQYXRoTm90VmVyaWZpYWJsZQAAAAAAABIAAAAAAAAAE1BheWxvYWRIYXNoTm90Rm91bmQAAAAAEwAAAAAAAAAJU2FtZVZhbHVlAAAAAAAAFAAAAAAAAAAMVW5hdXRob3JpemVkAAAAFQAAAAAAAAAOVW5zdXBwb3J0ZWRFaWQAAAAAABYAAAAAAAAAClplcm9aUk9GZWUAAAAAABcAAAAAAAAADlpST1VuYXZhaWxhYmxlAAAAAAAY",
219
+ "AAAAAAAAAKVFeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwgKGlmIGN1cnJlbnQgVFRMIGlzIGJlbG93IHRoaXMsIGV4dGVuZCkuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAAAATZXh0ZW5kX2luc3RhbmNlX3R0bAAAAAACAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAlleHRlbmRfdG8AAAAAAAAEAAAAAA==",
220
+ "AAAAAAAAAElBZGRzIG9yIHJlbW92ZXMgYSBzaWduZXIgZnJvbSB0aGUgbXVsdGlzaWcuIFJlcXVpcmVzIG93bmVyIGF1dGhvcml6YXRpb24uAAAAAAAACnNldF9zaWduZXIAAAAAAAIAAAAAAAAABnNpZ25lcgAAAAAD7gAAABQAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAA=",
221
+ "AAAAAAAAAERTZXRzIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkIChxdW9ydW0pLiBSZXF1aXJlcyBvd25lciBhdXRob3JpemF0aW9uLgAAAA1zZXRfdGhyZXNob2xkAAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAA=",
222
+ "AAAAAAAAAB9SZXR1cm5zIGFsbCByZWdpc3RlcmVkIHNpZ25lcnMuAAAAAAtnZXRfc2lnbmVycwAAAAAAAAAAAQAAA+oAAAPuAAAAFA==",
223
+ "AAAAAAAAAC9SZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgcmVnaXN0ZXJlZCBzaWduZXJzLgAAAAANdG90YWxfc2lnbmVycwAAAAAAAAAAAAABAAAABA==",
224
+ "AAAAAAAAACxDaGVja3MgaWYgYW4gYWRkcmVzcyBpcyBhIHJlZ2lzdGVyZWQgc2lnbmVyLgAAAAlpc19zaWduZXIAAAAAAAABAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAQAAAAE=",
225
+ "AAAAAAAAADFSZXR1cm5zIHRoZSBjdXJyZW50IHNpZ25hdHVyZSB0aHJlc2hvbGQgKHF1b3J1bSkuAAAAAAAACXRocmVzaG9sZAAAAAAAAAAAAAABAAAABA==",
226
+ "AAAAAAAAADVWZXJpZmllcyBzaWduYXR1cmVzIGFnYWluc3QgdGhlIGNvbmZpZ3VyZWQgdGhyZXNob2xkLgAAAAAAABF2ZXJpZnlfc2lnbmF0dXJlcwAAAAAAAAIAAAAAAAAABmRpZ2VzdAAAAAAD7gAAACAAAAAAAAAACnNpZ25hdHVyZXMAAAAAA+oAAAPuAAAAQQAAAAA=",
227
+ "AAAAAAAAAC9WZXJpZmllcyBzaWduYXR1cmVzIGFnYWluc3QgYSBjdXN0b20gdGhyZXNob2xkLgAAAAATdmVyaWZ5X25fc2lnbmF0dXJlcwAAAAADAAAAAAAAAAZkaWdlc3QAAAAAA+4AAAAgAAAAAAAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAA",
228
+ "AAAABAAAAAAAAAAAAAAADUVuZHBvaW50RXJyb3IAAAAAAAAZAAAAAAAAABFBbHJlYWR5UmVnaXN0ZXJlZAAAAAAAAAEAAAAAAAAADUNvbXBvc2VFeGlzdHMAAAAAAAACAAAAAAAAAA9Db21wb3NlTm90Rm91bmQAAAAAAwAAAAAAAAAcRGVmYXVsdFJlY2VpdmVMaWJVbmF2YWlsYWJsZQAAAAQAAAAAAAAAGURlZmF1bHRTZW5kTGliVW5hdmFpbGFibGUAAAAAAAAFAAAAAAAAABVJbnN1ZmZpY2llbnROYXRpdmVGZWUAAAAAAAAGAAAAAAAAABJJbnN1ZmZpY2llbnRacm9GZWUAAAAAAAcAAAAAAAAAEEludmFsaWRGZWVBbW91bnQAAAAIAAAAAAAAAA1JbnZhbGlkRXhwaXJ5AAAAAAAACQAAAAAAAAAMSW52YWxpZEluZGV4AAAACgAAAAAAAAAMSW52YWxpZE5vbmNlAAAACwAAAAAAAAASSW52YWxpZFBheWxvYWRIYXNoAAAAAAAMAAAAAAAAABVJbnZhbGlkUmVjZWl2ZUxpYnJhcnkAAAAAAAANAAAAAAAAABFPbmx5Tm9uRGVmYXVsdExpYgAAAAAAAA4AAAAAAAAADk9ubHlSZWNlaXZlTGliAAAAAAAPAAAAAAAAABFPbmx5UmVnaXN0ZXJlZExpYgAAAAAAABAAAAAAAAAAC09ubHlTZW5kTGliAAAAABEAAAAAAAAAFFBhdGhOb3RJbml0aWFsaXphYmxlAAAAEgAAAAAAAAARUGF0aE5vdFZlcmlmaWFibGUAAAAAAAATAAAAAAAAABNQYXlsb2FkSGFzaE5vdEZvdW5kAAAAABQAAAAAAAAACVNhbWVWYWx1ZQAAAAAAABUAAAAAAAAADFVuYXV0aG9yaXplZAAAABYAAAAAAAAADlVuc3VwcG9ydGVkRWlkAAAAAAAXAAAAAAAAAApaZXJvWnJvRmVlAAAAAAAYAAAAAAAAAA5acm9VbmF2YWlsYWJsZQAAAAAAGQ==",
174
229
  "AAAABQAAAAAAAAAAAAAAClBhY2tldFNlbnQAAAAAAAEAAAALcGFja2V0X3NlbnQAAAAAAwAAAAAAAAAOZW5jb2RlZF9wYWNrZXQAAAAAAA4AAAAAAAAAAAAAAAdvcHRpb25zAAAAAA4AAAAAAAAAAAAAAAxzZW5kX2xpYnJhcnkAAAATAAAAAAAAAAI=",
175
230
  "AAAABQAAAAAAAAAAAAAADlBhY2tldFZlcmlmaWVkAAAAAAABAAAAD3BhY2tldF92ZXJpZmllZAAAAAADAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAABAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAAxwYXlsb2FkX2hhc2gAAAPuAAAAIAAAAAAAAAAC",
176
231
  "AAAABQAAAAAAAAAAAAAAD1BhY2tldERlbGl2ZXJlZAAAAAABAAAAEHBhY2tldF9kZWxpdmVyZWQAAAACAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAABAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAg==",
177
232
  "AAAABQAAAAAAAAAAAAAADkx6UmVjZWl2ZUFsZXJ0AAAAAAABAAAAEGx6X3JlY2VpdmVfYWxlcnQAAAAJAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAAhleGVjdXRvcgAAABMAAAABAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAABAAAAAAAAAARndWlkAAAD7gAAACAAAAABAAAAAAAAAANnYXMAAAAACwAAAAAAAAAAAAAABXZhbHVlAAAAAAAACwAAAAAAAAAAAAAAB21lc3NhZ2UAAAAADgAAAAAAAAAAAAAACmV4dHJhX2RhdGEAAAAAAA4AAAAAAAAAAAAAAAZyZWFzb24AAAAAAA4AAAAAAAAAAg==",
178
- "AAAABQAAAAAAAAAAAAAABlpST1NldAAAAAAAAQAAAAd6cm9fc2V0AAAAAAEAAAAAAAAAA3pybwAAAAATAAAAAAAAAAI=",
233
+ "AAAABQAAAAAAAAAAAAAABlpyb1NldAAAAAAAAQAAAAd6cm9fc2V0AAAAAAEAAAAAAAAAA3pybwAAAAATAAAAAAAAAAI=",
179
234
  "AAAABQAAAAAAAAAAAAAAC0RlbGVnYXRlU2V0AAAAAAEAAAAMZGVsZWdhdGVfc2V0AAAAAgAAAAAAAAAEb2FwcAAAABMAAAABAAAAAAAAAAhkZWxlZ2F0ZQAAA+gAAAATAAAAAAAAAAI=",
180
235
  "AAAABQAAAAAAAAAAAAAAE0luYm91bmROb25jZVNraXBwZWQAAAAAAQAAABVpbmJvdW5kX25vbmNlX3NraXBwZWQAAAAAAAAEAAAAAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAAAAAAAZzZW5kZXIAAAAAA+4AAAAgAAAAAQAAAAAAAAAIcmVjZWl2ZXIAAAATAAAAAQAAAAAAAAAFbm9uY2UAAAAAAAAGAAAAAQAAAAI=",
181
236
  "AAAABQAAAAAAAAAAAAAADlBhY2tldE5pbGlmaWVkAAAAAAABAAAAD3BhY2tldF9uaWxpZmllZAAAAAAFAAAAAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAAAAAAAZzZW5kZXIAAAAAA+4AAAAgAAAAAQAAAAAAAAAIcmVjZWl2ZXIAAAATAAAAAQAAAAAAAAAFbm9uY2UAAAAAAAAGAAAAAQAAAAAAAAAMcGF5bG9hZF9oYXNoAAAD6AAAA+4AAAAgAAAAAAAAAAI=",
@@ -202,23 +257,28 @@ export class Client extends ContractClient {
202
257
  "AAAAAQAAAEhPdXRib3VuZCBwYWNrZXQgY29udGFpbmluZyBhbGwgaW5mb3JtYXRpb24gZm9yIGNyb3NzLWNoYWluIHRyYW5zbWlzc2lvbi4AAAAAAAAADk91dGJvdW5kUGFja2V0AAAAAAAHAAAAGERlc3RpbmF0aW9uIGVuZHBvaW50IElELgAAAAdkc3RfZWlkAAAAAAQAAAAsR2xvYmFsbHkgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgbWVzc2FnZS4AAAAEZ3VpZAAAA+4AAAAgAAAAFFRoZSBtZXNzYWdlIHBheWxvYWQuAAAAB21lc3NhZ2UAAAAADgAAACBPdXRib3VuZCBub25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAVub25jZQAAAAAAAAYAAAAxUmVjZWl2ZXIgYWRkcmVzcyBvbiBkZXN0aW5hdGlvbiBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAAAAhyZWNlaXZlcgAAA+4AAAAgAAAAH1NlbmRlciBhZGRyZXNzIG9uIHNvdXJjZSBjaGFpbi4AAAAABnNlbmRlcgAAAAAAEwAAABNTb3VyY2UgZW5kcG9pbnQgSUQuAAAAAAdzcmNfZWlkAAAAAAQ=",
203
258
  "AAAAAQAAACtBIGZlZSByZWNpcGllbnQgd2l0aCB0aGUgYW1vdW50IHRvIGJlIHBhaWQuAAAAAAAAAAAMRmVlUmVjaXBpZW50AAAAAgAAABVBbW91bnQgb2YgZmVlIHRvIHBheS4AAAAAAAAGYW1vdW50AAAAAAALAAAAH1RoZSBhZGRyZXNzIHRvIHNlbmQgdGhlIGZlZSB0by4AAAAAAnRvAAAAAAAT",
204
259
  "AAAAAQAAADxSZXN1bHQgb2Ygc2VuZCBvcGVyYXRpb24gY29udGFpbmluZyBmZWVzIGFuZCBlbmNvZGVkIHBhY2tldC4AAAAAAAAADUZlZXNBbmRQYWNrZXQAAAAAAAADAAAAKlRoZSBlbmNvZGVkIHBhY2tldCByZWFkeSBmb3IgdHJhbnNtaXNzaW9uLgAAAAAADmVuY29kZWRfcGFja2V0AAAAAAAOAAAAP0xpc3Qgb2YgbmF0aXZlIHRva2VuIGZlZSByZWNpcGllbnRzIChleGVjdXRvciwgRFZOcywgdHJlYXN1cnkpLgAAAAAVbmF0aXZlX2ZlZV9yZWNpcGllbnRzAAAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50AAAALExpc3Qgb2YgWlJPIHRva2VuIGZlZSByZWNpcGllbnRzICh0cmVhc3VyeSkuAAAAEnpyb19mZWVfcmVjaXBpZW50cwAAAAAD6gAAB9AAAAAMRmVlUmVjaXBpZW50",
205
- "AAAABAAAAAAAAAAAAAAAElBhY2tldENvZGVjVjFFcnJvcgAAAAAAAgAAAAAAAAATSW52YWxpZFBhY2tldEhlYWRlcgAAAAPpAAAAAAAAABRJbnZhbGlkUGFja2V0VmVyc2lvbgAAA+o=",
206
- "AAAABAAAAAAAAAAAAAAAEldvcmtlck9wdGlvbnNFcnJvcgAAAAAACQAAAAAAAAASSW52YWxpZEJ5dGVzTGVuZ3RoAAAAAARNAAAAAAAAABlJbnZhbGlkTGVnYWN5T3B0aW9uc1R5cGUxAAAAAAAETgAAAAAAAAAZSW52YWxpZExlZ2FjeU9wdGlvbnNUeXBlMgAAAAAABE8AAAAAAAAAEUludmFsaWRPcHRpb25UeXBlAAAAAAAEUAAAAAAAAAAOSW52YWxpZE9wdGlvbnMAAAAABFEAAAAAAAAAD0ludmFsaWRXb3JrZXJJZAAAAARSAAAAAAAAAB1MZWdhY3lPcHRpb25zVHlwZTFHYXNPdmVyZmxvdwAAAAAABFMAAAAAAAAAIExlZ2FjeU9wdGlvbnNUeXBlMkFtb3VudE92ZXJmbG93AAAEVAAAAAAAAAAdTGVnYWN5T3B0aW9uc1R5cGUyR2FzT3ZlcmZsb3cAAAAAAARV",
207
- "AAAABAAAAAAAAAAAAAAAEUJ1ZmZlclJlYWRlckVycm9yAAAAAAAAAgAAAAAAAAANSW52YWxpZExlbmd0aAAAAAAAA+gAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA+k=",
208
- "AAAABAAAAAAAAAAAAAAAEUJ1ZmZlcldyaXRlckVycm9yAAAAAAAAAQAAAAAAAAAVSW52YWxpZEFkZHJlc3NQYXlsb2FkAAAAAAAETA==",
209
- "AAAABAAAAAAAAAAAAAAAFFR0bENvbmZpZ3VyYWJsZUVycm9yAAAAAwAAAAAAAAAQSW52YWxpZFR0bENvbmZpZwAABLAAAAAAAAAAD1R0bENvbmZpZ0Zyb3plbgAAAASxAAAAAAAAABZUdGxDb25maWdBbHJlYWR5RnJvemVuAAAAAASy",
210
- "AAAABAAAAAAAAAAAAAAADE93bmFibGVFcnJvcgAAAAIAAAAAAAAAD093bmVyQWxyZWFkeVNldAAAAAUUAAAAAAAAAAtPd25lck5vdFNldAAAAAUV",
211
- "AAAABAAAAAAAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAFeA==",
212
- "AAAABAAAAAAAAAAAAAAAEFVwZ3JhZGVhYmxlRXJyb3IAAAABAAAAAAAAABNNaWdyYXRpb25Ob3RBbGxvd2VkAAAABdw=",
213
- "AAAABQAAACxFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkLgAAAAAAAAAUT3duZXJzaGlwVHJhbnNmZXJyZWQAAAABAAAAFW93bmVyc2hpcF90cmFuc2ZlcnJlZAAAAAAAAAIAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAI=",
260
+ "AAAABAAAAB1QYWNrZXRDb2RlY1YxRXJyb3I6IDExMDAtMTEwOQAAAAAAAAAAAAASUGFja2V0Q29kZWNWMUVycm9yAAAAAAACAAAAAAAAABNJbnZhbGlkUGFja2V0SGVhZGVyAAAABEwAAAAAAAAAFEludmFsaWRQYWNrZXRWZXJzaW9uAAAETQ==",
261
+ "AAAABAAAAB1Xb3JrZXJPcHRpb25zRXJyb3I6IDExMTAtMTExOQAAAAAAAAAAAAASV29ya2VyT3B0aW9uc0Vycm9yAAAAAAAJAAAAAAAAABJJbnZhbGlkQnl0ZXNMZW5ndGgAAAAABFYAAAAAAAAAGUludmFsaWRMZWdhY3lPcHRpb25zVHlwZTEAAAAAAARXAAAAAAAAABlJbnZhbGlkTGVnYWN5T3B0aW9uc1R5cGUyAAAAAAAEWAAAAAAAAAARSW52YWxpZE9wdGlvblR5cGUAAAAAAARZAAAAAAAAAA5JbnZhbGlkT3B0aW9ucwAAAAAEWgAAAAAAAAAPSW52YWxpZFdvcmtlcklkAAAABFsAAAAAAAAAHUxlZ2FjeU9wdGlvbnNUeXBlMUdhc092ZXJmbG93AAAAAAAEXAAAAAAAAAAgTGVnYWN5T3B0aW9uc1R5cGUyQW1vdW50T3ZlcmZsb3cAAARdAAAAAAAAAB1MZWdhY3lPcHRpb25zVHlwZTJHYXNPdmVyZmxvdwAAAAAABF4=",
262
+ "AAAABAAAABxCdWZmZXJSZWFkZXJFcnJvcjogMTAwMC0xMDA5AAAAAAAAABFCdWZmZXJSZWFkZXJFcnJvcgAAAAAAAAIAAAAAAAAADUludmFsaWRMZW5ndGgAAAAAAAPoAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPp",
263
+ "AAAABAAAABxCdWZmZXJXcml0ZXJFcnJvcjogMTAxMC0xMDE5AAAAAAAAABFCdWZmZXJXcml0ZXJFcnJvcgAAAAAAAAEAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA/I=",
264
+ "AAAABAAAAB9UdGxDb25maWd1cmFibGVFcnJvcjogMTAyMC0xMDI5AAAAAAAAAAAUVHRsQ29uZmlndXJhYmxlRXJyb3IAAAADAAAAAAAAABBJbnZhbGlkVHRsQ29uZmlnAAAD/AAAAAAAAAAPVHRsQ29uZmlnRnJvemVuAAAAA/0AAAAAAAAAFlR0bENvbmZpZ0FscmVhZHlGcm96ZW4AAAAAA/4=",
265
+ "AAAABAAAABdPd25hYmxlRXJyb3I6IDEwMzAtMTAzOQAAAAAAAAAADE93bmFibGVFcnJvcgAAAAYAAAAAAAAAE0ludmFsaWRQZW5kaW5nT3duZXIAAAAEBgAAAAAAAAAKSW52YWxpZFR0bAAAAAAEBwAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAQIAAAAAAAAAA9Pd25lckFscmVhZHlTZXQAAAAECQAAAAAAAAALT3duZXJOb3RTZXQAAAAECgAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAQL",
266
+ "AAAABAAAABhCeXRlc0V4dEVycm9yOiAxMDQwLTEwNDkAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAEEA==",
267
+ "AAAABAAAABtVcGdyYWRlYWJsZUVycm9yOiAxMDUwLTEwNTkAAAAAAAAAABBVcGdyYWRlYWJsZUVycm9yAAAAAQAAAAAAAAATTWlncmF0aW9uTm90QWxsb3dlZAAAAAQa",
268
+ "AAAABAAAABhNdWx0aXNpZ0Vycm9yOiAxMDYwLTEwNjkAAAAAAAAADU11bHRpc2lnRXJyb3IAAAAAAAAIAAAAAAAAABJBbHJlYWR5SW5pdGlhbGl6ZWQAAAAABCQAAAAAAAAADUludmFsaWRTaWduZXIAAAAAAAQlAAAAAAAAAA5TaWduYXR1cmVFcnJvcgAAAAAEJgAAAAAAAAATU2lnbmVyQWxyZWFkeUV4aXN0cwAAAAQnAAAAAAAAAA5TaWduZXJOb3RGb3VuZAAAAAAEKAAAAAAAAAAdVG90YWxTaWduZXJzTGVzc1RoYW5UaHJlc2hvbGQAAAAAAAQpAAAAAAAAAA9VbnNvcnRlZFNpZ25lcnMAAAAEKgAAAAAAAAANWmVyb1RocmVzaG9sZAAAAAAABCs=",
269
+ "AAAABQAAADBFdmVudCBlbWl0dGVkIHdoZW4gYSBzaWduZXIgaXMgYWRkZWQgb3IgcmVtb3ZlZC4AAAAAAAAACVNpZ25lclNldAAAAAAAAAEAAAAKc2lnbmVyX3NldAAAAAAAAgAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAAC",
270
+ "AAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHNpZ25hdHVyZSB0aHJlc2hvbGQgaXMgY2hhbmdlZC4AAAAAAAAAAAAMVGhyZXNob2xkU2V0AAAAAQAAAA10aHJlc2hvbGRfc2V0AAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAAC",
271
+ "AAAAAgAAAAAAAAAAAAAAD011bHRpc2lnU3RvcmFnZQAAAAACAAAAAAAAAAAAAAAHU2lnbmVycwAAAAAAAAAAAAAAAAlUaHJlc2hvbGQAAAA=",
272
+ "AAAABQAAAFdFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkIChib3RoIHNpbmdsZS1zdGVwIGFuZCB0d28tc3RlcCBjb21wbGV0aW9uKS4AAAAAAAAAABRPd25lcnNoaXBUcmFuc2ZlcnJlZAAAAAEAAAAVb3duZXJzaGlwX3RyYW5zZmVycmVkAAAAAAAAAgAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAg==",
273
+ "AAAABQAAADtFdmVudCBlbWl0dGVkIHdoZW4gYSAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyIGlzIHByb3Bvc2VkLgAAAAAAAAAAFU93bmVyc2hpcFRyYW5zZmVycmluZwAAAAAAAAEAAAAWb3duZXJzaGlwX3RyYW5zZmVycmluZwAAAAAAAwAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAAAN0dGwAAAAABAAAAAAAAAAC",
214
274
  "AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHJlbm91bmNlZC4AAAAAAAAAAAAST3duZXJzaGlwUmVub3VuY2VkAAAAAAABAAAAE293bmVyc2hpcF9yZW5vdW5jZWQAAAAAAQAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAC",
215
- "AAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAABAAAAAAAAAAAAAAAFT3duZXIAAAA=",
275
+ "AAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAFT3duZXIAAAAAAAAAAAAAAAAAAAxQZW5kaW5nT3duZXI=",
216
276
  "AAAAAQAAAElUVEwgY29uZmlndXJhdGlvbjogdGhyZXNob2xkICh3aGVuIHRvIGV4dGVuZCkgYW5kIGV4dGVuZF90byAodGFyZ2V0IFRUTCkuAAAAAAAAAAAAAAlUdGxDb25maWcAAAAAAAACAAAAKFRhcmdldCBUVEwgYWZ0ZXIgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAJZXh0ZW5kX3RvAAAAAAAABAAAADNUVEwgdGhyZXNob2xkIHRoYXQgdHJpZ2dlcnMgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAACXRocmVzaG9sZAAAAAAAAAQ=",
217
277
  "AAAABQAAACdFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIHNldC4AAAAAAAAAAA1UdGxDb25maWdzU2V0AAAAAAAAAQAAAA90dGxfY29uZmlnc19zZXQAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAg==",
218
278
  "AAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAAAAAAAAQVHRsQ29uZmlnc0Zyb3plbgAAAAEAAAASdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAg==",
219
279
  "AAAAAgAAAAAAAAAAAAAAEFR0bENvbmZpZ1N0b3JhZ2UAAAADAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAhJbnN0YW5jZQAAAAAAAAAAAAAAClBlcnNpc3RlbnQAAA==",
220
280
  "AAAAAgAAAAAAAAAAAAAAElVwZ3JhZGVhYmxlU3RvcmFnZQAAAAAAAQAAAAAAAAAAAAAACU1pZ3JhdGluZwAAAA==",
221
- "AAAABAAAAAAAAAAAAAAAC1dvcmtlckVycm9yAAAAABMAAAAAAAAAEkFkbWluQWxyZWFkeUV4aXN0cwAAAAAEsAAAAAAAAAANQWRtaW5Ob3RGb3VuZAAAAAAABLEAAAAAAAAAEkFscmVhZHlPbkFsbG93bGlzdAAAAAAEsgAAAAAAAAARQWxyZWFkeU9uRGVueWxpc3QAAAAAAASzAAAAAAAAABtBdHRlbXB0aW5nVG9SZW1vdmVPbmx5QWRtaW4AAAAEtAAAAAAAAAAURGVwb3NpdEFkZHJlc3NOb3RTZXQAAAS1AAAAAAAAABpNZXNzYWdlTGliQWxyZWFkeVN1cHBvcnRlZAAAAAAEtgAAAAAAAAAWTWVzc2FnZUxpYk5vdFN1cHBvcnRlZAAAAAAEtwAAAAAAAAAQTm9BZG1pbnNQcm92aWRlZAAABLgAAAAAAAAACk5vdEFsbG93ZWQAAAAABLkAAAAAAAAADk5vdE9uQWxsb3dsaXN0AAAAAAS6AAAAAAAAAA1Ob3RPbkRlbnlsaXN0AAAAAAAEuwAAAAAAAAAUUGF1c2VTdGF0dXNVbmNoYW5nZWQAAAS8AAAAAAAAAA9QcmljZUZlZWROb3RTZXQAAAAEvQAAAAAAAAAMUmVJbml0aWFsaXplAAAEvgAAAAAAAAAMVW5hdXRob3JpemVkAAAEvwAAAAAAAAAVVW5zdXBwb3J0ZWRNZXNzYWdlTGliAAAAAAAEwAAAAAAAAAASV29ya2VyRmVlTGliTm90U2V0AAAAAATBAAAAAAAAAA5Xb3JrZXJJc1BhdXNlZAAAAAAEwg==",
281
+ "AAAABAAAABZXb3JrZXJFcnJvcjogMTIwMC0xMjk5AAAAAAAAAAAAC1dvcmtlckVycm9yAAAAABMAAAAAAAAAEkFkbWluQWxyZWFkeUV4aXN0cwAAAAAEsAAAAAAAAAANQWRtaW5Ob3RGb3VuZAAAAAAABLEAAAAAAAAAEkFscmVhZHlPbkFsbG93bGlzdAAAAAAEsgAAAAAAAAARQWxyZWFkeU9uRGVueWxpc3QAAAAAAASzAAAAAAAAABtBdHRlbXB0aW5nVG9SZW1vdmVPbmx5QWRtaW4AAAAEtAAAAAAAAAAURGVwb3NpdEFkZHJlc3NOb3RTZXQAAAS1AAAAAAAAABpNZXNzYWdlTGliQWxyZWFkeVN1cHBvcnRlZAAAAAAEtgAAAAAAAAAWTWVzc2FnZUxpYk5vdFN1cHBvcnRlZAAAAAAEtwAAAAAAAAAQTm9BZG1pbnNQcm92aWRlZAAABLgAAAAAAAAACk5vdEFsbG93ZWQAAAAABLkAAAAAAAAADk5vdE9uQWxsb3dsaXN0AAAAAAS6AAAAAAAAAA1Ob3RPbkRlbnlsaXN0AAAAAAAEuwAAAAAAAAAUUGF1c2VTdGF0dXNVbmNoYW5nZWQAAAS8AAAAAAAAAA9QcmljZUZlZWROb3RTZXQAAAAEvQAAAAAAAAAMUmVJbml0aWFsaXplAAAEvgAAAAAAAAAMVW5hdXRob3JpemVkAAAEvwAAAAAAAAAVVW5zdXBwb3J0ZWRNZXNzYWdlTGliAAAAAAAEwAAAAAAAAAASV29ya2VyRmVlTGliTm90U2V0AAAAAATBAAAAAAAAAA5Xb3JrZXJJc1BhdXNlZAAAAAAEwg==",
222
282
  "AAAABQAAAAAAAAAAAAAACFNldEFkbWluAAAAAQAAAAlzZXRfYWRtaW4AAAAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAg==",
223
283
  "AAAABQAAAAAAAAAAAAAAFlNldFN1cHBvcnRlZE1lc3NhZ2VMaWIAAAAAAAEAAAAZc2V0X3N1cHBvcnRlZF9tZXNzYWdlX2xpYgAAAAAAAAIAAAAAAAAAC21lc3NhZ2VfbGliAAAAABMAAAAAAAAAAAAAAAlzdXBwb3J0ZWQAAAAAAAABAAAAAAAAAAI=",
224
284
  "AAAABQAAAAAAAAAAAAAADFNldEFsbG93bGlzdAAAAAEAAAANc2V0X2FsbG93bGlzdAAAAAAAAAIAAAAAAAAABG9hcHAAAAATAAAAAAAAAAAAAAAHYWxsb3dlZAAAAAABAAAAAAAAAAI=",
@@ -238,14 +298,6 @@ export class Client extends ContractClient {
238
298
  this.options = options;
239
299
  }
240
300
  fromJSON = {
241
- set_signer: (this.txFromJSON),
242
- set_threshold: (this.txFromJSON),
243
- get_signers: (this.txFromJSON),
244
- total_signers: (this.txFromJSON),
245
- is_signer: (this.txFromJSON),
246
- threshold: (this.txFromJSON),
247
- verify_signatures: (this.txFromJSON),
248
- verify_n_signatures: (this.txFromJSON),
249
301
  set_paused: (this.txFromJSON),
250
302
  set_supported_message_lib: (this.txFromJSON),
251
303
  set_allowlist: (this.txFromJSON),
@@ -279,10 +331,19 @@ export class Client extends ContractClient {
279
331
  quorum_change_admin: (this.txFromJSON),
280
332
  upgrade: (this.txFromJSON),
281
333
  migrate: (this.txFromJSON),
282
- extend_instance_ttl: (this.txFromJSON),
334
+ authorizer: (this.txFromJSON),
283
335
  set_ttl_configs: (this.txFromJSON),
284
336
  ttl_configs: (this.txFromJSON),
285
337
  freeze_ttl_configs: (this.txFromJSON),
286
- is_ttl_configs_frozen: (this.txFromJSON)
338
+ is_ttl_configs_frozen: (this.txFromJSON),
339
+ extend_instance_ttl: (this.txFromJSON),
340
+ set_signer: (this.txFromJSON),
341
+ set_threshold: (this.txFromJSON),
342
+ get_signers: (this.txFromJSON),
343
+ total_signers: (this.txFromJSON),
344
+ is_signer: (this.txFromJSON),
345
+ threshold: (this.txFromJSON),
346
+ verify_signatures: (this.txFromJSON),
347
+ verify_n_signatures: (this.txFromJSON)
287
348
  };
288
349
  }